:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#172033;background:#eef2f7;--navy:#10233f;--navy-2:#162f52;--blue:#246bda;--blue-2:#185abd;--surface:#fff;--surface-2:#f7f9fc;--line:#dfe5ee;--muted:#66758a;--green:#07875d;--red:#c43b4d;--amber:#b36b00;--radius:12px;--shadow:0 4px 14px rgba(30,52,77,.08),0 1px 2px rgba(30,52,77,.05) }*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,#f5f7fa 0,#edf1f6);min-height:100vh;font-size:14px;line-height:1.45}button,input,select,textarea{font:inherit}button{border:1px solid transparent;border-radius:8px;padding:9px 14px;background:var(--blue);color:#fff;font-weight:700;cursor:pointer;transition:.16s ease;box-shadow:0 1px 2px #1430501f}button:hover{background:var(--blue-2);transform:translateY(-1px)}button:active{transform:none}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(36,107,218,.2);outline-offset:1px}input,select,textarea{border:1px solid #cfd8e5;border-radius:8px;padding:9px 11px;background:#fff;color:#18263a;transition:.15s ease}input:hover,select:hover,textarea:hover{border-color:#aab8ca}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #246bda1a}label{color:#405169}.center{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 15%,#274f80 0,transparent 34%),linear-gradient(135deg,#0d1e35,#173e6e)}.auth-card{width:min(460px,100%);background:#fffffffa;padding:30px;border-radius:18px;box-shadow:0 28px 70px #040f1f4d}.auth-card h1{font-size:27px;margin:14px 0 6px}.auth-card label{display:block;font-weight:700;margin:14px 0 6px}.auth-card input{width:100%}.auth-card button{width:100%;margin-top:18px}.badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#e8f0fd;color:#1c5db8;font-weight:800;font-size:11px;letter-spacing:.04em;text-transform:uppercase}.check{display:flex!important;align-items:center;gap:8px}.check input{width:auto!important}.app{min-height:100vh;display:grid;grid-template-columns:258px minmax(0,1fr)}aside{background:linear-gradient(180deg,var(--navy),#0b1a2f);color:#fff;padding:18px 12px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh;border-right:1px solid rgba(255,255,255,.05);box-shadow:8px 0 30px #0a1c3214;z-index:10}.brand{display:flex;align-items:center;gap:11px;margin:2px 8px 22px;padding:8px 4px}.brandMark{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(145deg,#3f83e7,#1e5fbd);font-size:20px;font-weight:900;box-shadow:0 7px 16px #00000038}.brandText{font-size:20px;font-weight:850;letter-spacing:-.02em}.brand small{display:block;color:#8fb1dc;font-size:10px;font-weight:700;letter-spacing:.05em;margin-top:1px}.nav{display:flex;align-items:center;gap:11px;width:100%;background:transparent;text-align:left;color:#becce0;border:0;box-shadow:none;padding:10px 12px;font-weight:650}.nav:hover{background:#ffffff13;color:#fff;transform:none}.nav.active{background:#fff;color:#173b68;box-shadow:0 5px 18px #0000002b}.navIcon{width:25px;height:25px;border-radius:7px;display:grid;place-items:center;background:#ffffff14;font-size:14px}.nav.active .navIcon{background:#e9f1fc;color:#1d64c5}.asideBottom{margin-top:auto;padding:14px 10px 6px;border-top:1px solid rgba(255,255,255,.1);display:grid;gap:2px}.asideBottom span{font-weight:750}.asideBottom small{color:#91a7c4}.asideBottom button{margin-top:10px;background:#ffffff14;border-color:#ffffff1a;box-shadow:none}.asideBottom button:hover{background:#ffffff24}.content{padding:28px 34px 48px;max-width:1580px;width:100%}header{margin-bottom:19px;padding-bottom:15px;border-bottom:1px solid #dce3ec}header h1{font-size:28px;line-height:1.2;letter-spacing:-.025em;margin:0 0 5px;color:#17283d}header p,.muted{color:var(--muted)}.headerRow{display:flex;justify-content:space-between;gap:20px;align-items:flex-end}.periodbar{display:flex;gap:8px;align-items:center;padding:6px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 1px 3px #1930480a}.periodbar input{width:100px}.error,.notice{position:fixed;right:24px;top:20px;z-index:100;max-width:430px;padding:13px 16px;border-radius:10px;box-shadow:0 12px 35px #14233733;animation:toastIn .22s ease}.error{background:#fff0f2;color:#9f2638;border:1px solid #f4c2ca}.notice{background:#ecfbf5;color:#086b4b;border:1px solid #bdebd9}@keyframes toastIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}.kpis.three{grid-template-columns:repeat(3,minmax(0,1fr))}.kpis.four{grid-template-columns:repeat(4,minmax(0,1fr))}.kpis article{position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:17px 18px;box-shadow:var(--shadow)}.kpis article:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#82a9df}.kpis article:nth-child(2):before{background:#70b39b}.kpis article:nth-child(3):before{background:#a997d1}.kpis article:nth-child(4):before{background:#d5a86f}.kpis small{display:block;color:var(--muted);font-size:12px;font-weight:700;margin-bottom:7px}.kpis strong{font-size:25px;letter-spacing:-.03em;color:#17283d}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:19px;box-shadow:var(--shadow);margin-bottom:15px}.card h2{font-size:18px;letter-spacing:-.015em;margin:0 0 15px;color:#1d2f45}.card h3{font-size:14px;color:#405169;margin:18px 0 8px}.twoCols{display:grid;grid-template-columns:1fr 1fr;gap:15px}.threeCols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.financeRow{display:grid;grid-template-columns:24px 1.5fr 1fr 125px 38px;gap:7px;margin-bottom:7px;align-items:center;padding:5px;border-radius:8px}.financeRow:hover{background:#f6f8fb}.financeRow input{width:100%}.financeAdd{display:grid;grid-template-columns:1.5fr 1fr 130px auto auto;gap:8px;padding-top:13px;border-top:1px solid var(--line)}.actions,.editorActions,.formActions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.secondary{background:#fff;color:#36516f;border-color:#cbd6e3;box-shadow:none}.secondary:hover{background:#f3f6fa;color:#1e3a59}.danger{background:#fff1f3;color:#b42f42;border-color:#f2ccd3;box-shadow:none}.danger:hover{background:#ffe6ea;color:#9f2034}.small{padding:6px 9px;font-size:12px}.good{color:var(--green)!important}.bad{color:var(--red)!important}.listRow,.row,.recordSummary,.detailHeader,.inlineEditor{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:11px 0;border-bottom:1px solid #edf1f5}.listRow:last-child,.recordSummary:last-child{border-bottom:0}.listRow small,.recordSummary small,.inlineEditor small{display:block;color:var(--muted);margin-top:3px}.inlineForm,.userForm{display:flex;gap:8px;flex-wrap:wrap}.table{display:grid;border:1px solid var(--line);border-radius:10px;overflow:hidden}.tr{display:grid;grid-template-columns:1.1fr 1.6fr 1fr 1fr;gap:12px;padding:11px 13px;border-bottom:1px solid #e8edf3;align-items:center;background:#fff}.tr:last-child{border-bottom:0}.tr:hover:not(.head){background:#f8fafc}.tr.head{font-size:11px;text-transform:uppercase;letter-spacing:.045em;font-weight:800;color:#617187;background:#f1f4f8}.table.annual .tr{grid-template-columns:1.2fr repeat(3,1fr)}.table.audit .tr{grid-template-columns:1.1fr 1.2fr 1.2fr 2fr}.roadmap{display:grid;gap:5px}.roadmap div{display:flex;gap:10px;align-items:center;padding:8px;border-radius:8px}.roadmap div:hover{background:#f7f9fc}.roadmap b{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:#e4f5ee;color:var(--green)}.mfa{display:grid;grid-template-columns:210px 1fr;gap:18px}.mfa img{max-width:100%;border:1px solid var(--line);border-radius:10px}.mfa code{display:block;word-break:break-all;background:#eef2f7;padding:10px;border-radius:8px}.bars{height:230px;display:flex;align-items:flex-end;gap:8px;padding:15px 0;border-bottom:1px solid var(--line);background:linear-gradient(to top,rgba(220,228,238,.6) 1px,transparent 1px);background-size:100% 45px}.barMonth{flex:1;min-width:44px;text-align:center}.barArea{height:190px;display:flex;align-items:flex-end;justify-content:center;gap:4px}.bar{display:block;width:13px;border-radius:4px 4px 0 0}.bar.income{background:linear-gradient(#4589e8,#246bda)}.bar.expense{background:linear-gradient(#e46a78,#c43b4d)}.dragHandle{cursor:grab;font-size:18px;color:#8795a8;-webkit-user-select:none;user-select:none;padding:0 3px}.financeRow[draggable=true]{transition:opacity .15s,background .15s}.financeRow.dragging{opacity:.45;background:#e9f1fc}.stackForm{display:grid;gap:10px}.stackForm label{display:grid;gap:5px;font-weight:700}.stackForm textarea{min-height:90px;resize:vertical}.invoiceTable{overflow:auto;border:1px solid var(--line);border-radius:10px}.invoiceHead,.invoiceRow{display:grid;grid-template-columns:110px minmax(150px,1.4fr) 110px 120px 120px 130px minmax(220px,1fr);gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid #e7ecf2;min-width:1050px}.invoiceHead{font-size:11px;text-transform:uppercase;letter-spacing:.04em;font-weight:800;color:#617187;background:#f1f4f8}.invoiceRow:hover{background:#f8fafc}.invoiceActions{display:flex;gap:6px;flex-wrap:wrap}.propertyCard h2{margin-bottom:3px}.propertyCard p{margin:0;color:var(--muted)}.propertyKpis,.propertyFacts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:16px 0}.propertyKpis div,.propertyFacts div{background:#f6f8fb;border:1px solid #e2e8f0;border-radius:9px;padding:12px}.propertyKpis small,.propertyFacts small{display:block;color:var(--muted);font-size:11px;font-weight:700;margin-bottom:5px}.labeledGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:15px}.labeledGrid label{display:grid;gap:5px;font-weight:700;font-size:13px}.labeledGrid input,.labeledGrid select,.labeledGrid textarea{width:100%;font-weight:400}.labeledGrid textarea{min-height:100px}.wide{grid-column:1/-1}.detailColumns{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:17px}.detailColumns>section{border:1px solid var(--line);border-radius:10px;padding:15px;background:#fbfcfe}.subRecord{border-bottom:1px solid #e9eef4;padding:6px 0}.inlineCreate,.createPanel,.deletePanel{margin-top:13px;border:1px solid var(--line);border-radius:9px;padding:12px;background:#fafbfd}.inlineCreate summary,.createPanel summary,.deletePanel summary{cursor:pointer;font-weight:800;color:#324c69}.deletePanel{border-color:#efcbd1;background:#fff9fa}.notesBox{background:#fff9e8;border:1px solid #f1dfa9;border-radius:9px;padding:13px}.notesBox p{margin:5px 0 0}.propertyDetail{scroll-margin-top:20px}.detailHeader{padding-top:2px}.detailHeader h2{margin-bottom:3px}.switch{display:flex;align-items:center;gap:8px}.switch input{accent-color:var(--blue)}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}@media(max-width:1100px){.threeCols{grid-template-columns:1fr}.propertyKpis,.propertyFacts{grid-template-columns:1fr 1fr}}@media(max-width:1000px){.twoCols{grid-template-columns:1fr}.kpis{grid-template-columns:repeat(2,1fr)}.financeAdd{grid-template-columns:1fr 1fr}.headerRow{align-items:flex-start;flex-direction:column}.detailColumns{grid-template-columns:1fr}}@media(max-width:760px){.app{grid-template-columns:1fr}aside{position:static;height:auto;padding:12px}.brand{margin-bottom:7px}.nav{display:inline-flex;width:auto}.content{padding:18px}.kpis,.kpis.three,.kpis.four{grid-template-columns:1fr}.financeRow{grid-template-columns:24px 1fr}.tr,.table.annual .tr,.table.audit .tr{grid-template-columns:1fr}.periodbar{flex-wrap:wrap}.labeledGrid{grid-template-columns:1fr}.wide{grid-column:auto}.propertyKpis,.propertyFacts{grid-template-columns:1fr}.error,.notice{left:18px;right:18px;top:12px}}
