@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap');
:root{--black:#090a0b;--panel:#111315;--surface:#17191c;--line:rgba(255,255,255,.08);--text:#f7f8f8;--muted:#8a8f98;--lime:#c7ff36;--green:#18a875;--amber:#d4962a;--red:#e15b64;--page:#f4f5f5;--ink:#17191c}*{box-sizing:border-box}html{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-feature-settings:"cv01","ss03"}body{margin:0;background:var(--page);color:var(--ink)}button,input{font:inherit}.app-shell{display:grid;grid-template-columns:236px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:var(--black);color:var(--text);padding:24px 16px;display:flex;flex-direction:column}.brand{display:block;padding:5px 12px 27px;border-bottom:1px solid var(--line)}.brand img{width:160px;height:82px;object-fit:contain;display:block}.sidebar nav{display:grid;gap:7px;margin-top:24px}.nav-item{display:flex;align-items:center;gap:12px;color:#cfd3d6;text-decoration:none;padding:11px 12px;border-radius:9px;font-size:14px;font-weight:500}.nav-item span{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:#202328;color:#969ca2;font-size:11px}.nav-item:hover,.nav-item.active{background:#22262a;color:white}.nav-item.active span{background:var(--lime);color:#090a0b}.sidebar-footer{margin-top:auto;border-top:1px solid var(--line);padding:18px 8px 0;display:flex;align-items:center;gap:10px}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--lime);color:#090a0b;font-size:11px;font-weight:700}.sidebar-footer strong,.sidebar-footer small{display:block;font-size:12px}.sidebar-footer small{color:var(--muted);margin-top:3px}.logout{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:18px}.main-content{padding:38px 44px 64px;min-width:0}.mobile-header,.mobile-nav{display:none}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}.page-head h1{font-size:32px;letter-spacing:-.7px;margin:5px 0 5px}.page-head p{margin:0;color:#697178;font-size:14px}.eyebrow{color:#767e85;font-size:10px;font-weight:600;letter-spacing:.08em}.month-filter{display:flex;align-items:end;gap:8px}.month-filter label{font-size:11px;font-weight:600;color:#667078}.month-filter input,.month-filter button{height:38px;border:1px solid #dce0e2;border-radius:8px;background:white;padding:0 12px}.month-filter button{background:var(--black);color:white;cursor:pointer}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:17px}.metric-card{position:relative;background:white;border:1px solid #e1e4e5;border-radius:12px;padding:18px}.metric-card small{font-size:10px;font-weight:600;color:#747c82;margin-left:13px}.metric-card strong{display:block;font-size:24px;letter-spacing:-.5px;margin:18px 0 6px}.metric-card p{font-size:11px;color:#788087;margin:0}.metric-card.featured{background:var(--black);color:white;border-color:var(--black)}.metric-card.featured p{color:#afb5b9}.signal{position:absolute;width:7px;height:7px;border-radius:50%;top:22px}.green{background:var(--green)}.amber{background:var(--amber)}.red{background:var(--red)}.lime{background:var(--lime)}.content-grid{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(260px,.8fr);gap:17px}.panel{background:white;border:1px solid #e0e3e4;border-radius:13px;overflow:hidden}.panel-head{padding:20px 21px 14px;display:flex;align-items:center;justify-content:space-between}.panel h2{font-size:17px;letter-spacing:-.25px;margin:6px 0 0}.count-pill{min-width:32px;height:24px;display:grid;place-items:center;background:#eef1f1;border-radius:12px;font-size:11px;font-weight:600}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:650px}th{text-align:left;background:#f3f5f5;color:#7a8288;font-size:10px;letter-spacing:.03em;padding:11px 15px}td{padding:15px;border-top:1px solid #eceeee;color:#5f676d;font-size:13px}td strong,td a{color:#17191c;font-weight:600;text-decoration:none}td small{display:block;color:#92999e;margin-top:4px}.status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:600}.status.closed,.status.paid{background:#e4f7ef;color:#13865e}.status.to-pay{background:#fce8e9;color:#bd3f49}.status.pending{background:#fff1d8;color:#a86a0d}.status.large{font-size:12px;padding:8px 13px}.insight,.profit-card{background:var(--black);color:white;padding:24px}.insight .eyebrow,.profit-card .eyebrow{color:var(--lime)}.insight p,.profit-card p{color:#aeb4b8;font-size:12px}.result-number{font-size:30px;font-weight:600;letter-spacing:-1px;margin:24px 0 2px}.mini-row{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:13px 0;color:#b8bec2;font-size:12px}.mini-row strong{color:white}.mini-row .danger{color:#ff7d86}.empty-state{text-align:center;padding:58px 24px;color:#747d83}.empty-state span{font-size:28px}.empty-state h3{color:#262b2f;margin-bottom:5px}.empty-state p{max-width:450px;margin:0 auto;font-size:13px}.back-link{color:#687078;text-decoration:none;font-size:12px;display:inline-block;margin-bottom:11px}.job-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,.7fr);gap:17px;margin-bottom:17px}.detail-list{margin:0;padding:0 21px 18px}.detail-list div{display:grid;grid-template-columns:160px 1fr;padding:17px 0;border-top:1px solid #eceeee}.detail-list dt{font-size:10px;font-weight:600;color:#7e868c;text-transform:uppercase}.detail-list dd{margin:0;font-size:14px;font-weight:500}.costs-panel{margin-top:0}.login-page{min-height:100vh;background:radial-gradient(circle at 75% 20%,#273034 0,transparent 30%),var(--black);display:grid;place-items:center;padding:24px;color:white}.login-card{width:min(430px,100%);background:rgba(255,255,255,.035);border:1px solid var(--line);border-radius:20px;padding:34px;box-shadow:0 30px 80px rgba(0,0,0,.35)}.login-logo{width:210px;height:110px;object-fit:contain;display:block;margin-bottom:24px}.login-card .eyebrow{color:var(--lime)}.login-card h1{font-size:32px;letter-spacing:-.8px;margin:10px 0}.login-card>p{color:#aab1b5;line-height:1.6}.login-form{display:grid;gap:10px;margin-top:25px}.login-form label{font-size:12px;color:#cdd2d5}.login-form input{height:46px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:white;border-radius:8px;padding:0 13px;outline:none}.login-form input:focus{border-color:var(--lime)}.primary-button{height:46px;border:0;border-radius:8px;background:var(--lime);color:#090a0b;font-weight:600;cursor:pointer;margin-top:5px}.form-error{background:rgba(225,91,100,.12);border:1px solid rgba(225,91,100,.3);color:#ff9ca3;padding:10px;border-radius:7px;font-size:12px}.security-note{display:block;text-align:center;color:#737b80;margin-top:22px}.full{padding-top:20vh}.full a{color:#17191c}.head-actions{display:flex;align-items:end;gap:10px}.primary-link{display:inline-flex;align-items:center;justify-content:center;height:38px;padding:0 15px;border-radius:8px;background:var(--black);color:white;text-decoration:none;font-size:12px;font-weight:600}.agenda-list{padding:0 18px 18px}.agenda-item{display:grid;grid-template-columns:62px minmax(180px,1fr) 120px 110px 72px;align-items:center;gap:16px;padding:13px;border-top:1px solid #eceeee;text-decoration:none;color:#5f676d}.agenda-item:hover{background:#fafbfb}.date-tile{width:52px;height:52px;border-radius:10px;background:var(--black);color:white;display:grid;place-content:center;text-align:center}.date-tile strong{font-size:18px}.date-tile span{font-size:9px;color:#aeb4b8}.agenda-main strong,.agenda-main span{display:block}.agenda-main strong{color:#17191c;font-size:13px}.agenda-main span{font-size:11px;margin-top:5px;color:#7a8288}.agenda-time,.agenda-value{font-size:12px}.agenda-value{font-weight:600;color:#17191c}.operation-form{padding:4px 25px 24px}.form-section{display:grid;grid-template-columns:200px 1fr;gap:35px;padding:27px 0;border-bottom:1px solid #eceeee}.section-copy h2{font-size:18px;margin:6px 0}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.form-grid label,.inline-form label{display:grid;gap:7px;color:#687078;font-size:11px;font-weight:600}.form-grid input,.form-grid select,.inline-form input,.inline-form select{width:100%;height:42px;border:1px solid #dce0e2;border-radius:8px;background:#fafbfb;padding:0 12px;color:#17191c}.span-2{grid-column:span 2}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:18px;padding-top:23px}.form-actions a{color:#687078;text-decoration:none;font-size:12px}.form-actions .primary-button,.inline-form .primary-button{width:auto;padding:0 19px;margin:0}.group-stack{display:grid;gap:17px}.job-group-head{display:flex;justify-content:space-between;gap:24px;padding:20px 22px;background:var(--black);color:white;text-decoration:none}.job-group-head h2{color:white}.job-group-head h2 small{color:#aeb4b8;font-weight:400}.job-group-head p{color:#8e969b;font-size:11px}.job-total{text-align:right}.job-total span,.job-total strong{display:block}.job-total span{color:#8e969b;font-size:10px}.job-total strong{font-size:20px;margin-top:8px}.job-summary{display:flex;justify-content:flex-end;gap:45px;padding:15px 22px;background:#f7f8f8;border-top:1px solid #eceeee}.job-summary span,.job-summary strong{display:block}.job-summary span{font-size:10px;color:#7d858b}.job-summary strong{font-size:17px;margin-top:5px}.job-summary .profit{color:var(--green)}.add-cost-panel{margin-top:17px}.inline-form{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr 1fr auto;align-items:end;gap:10px;padding:0 20px 22px}.status-form{display:flex;gap:6px;align-items:center}.status-form select,.status-form button{height:30px;border:1px solid #dce0e2;border-radius:7px;background:white;padding:0 8px;font-size:11px}.status-form button{background:var(--black);color:white;cursor:pointer}
@media(max-width:1100px){.inline-form{grid-template-columns:repeat(3,1fr)}.inline-form .primary-button{height:42px}}
@media(max-width:1000px){.metric-grid{grid-template-columns:repeat(2,1fr)}.content-grid,.job-layout{grid-template-columns:1fr}}@media(max-width:720px){.app-shell{display:block}.sidebar{display:none}.main-content{padding:18px 16px 52px}.mobile-header{display:flex;background:var(--black);margin:-18px -16px 24px;padding:8px 16px;align-items:center;justify-content:space-between}.mobile-header img{width:115px;height:58px;object-fit:contain}.mobile-header span{color:white;font-size:12px}.mobile-nav{display:flex;gap:6px;overflow-x:auto;margin:-12px 0 22px;padding-bottom:3px}.mobile-nav a{flex:0 0 auto;white-space:nowrap;text-decoration:none;color:#687078;background:white;border:1px solid #dfe2e4;border-radius:999px;padding:8px 11px;font-size:11px;font-weight:600}.mobile-nav a.active{background:var(--black);border-color:var(--black);color:white}.dashboard-table{min-width:0;table-layout:fixed}.dashboard-table th:nth-child(3),.dashboard-table td:nth-child(3),.dashboard-table th:nth-child(4),.dashboard-table td:nth-child(4),.dashboard-table th:nth-child(5),.dashboard-table td:nth-child(5){display:none}.dashboard-table th:first-child,.dashboard-table td:first-child{width:92px}.dashboard-table th:last-child,.dashboard-table td:last-child{width:72px}.dashboard-table th,.dashboard-table td{padding:12px 9px}.page-head{align-items:flex-start;flex-direction:column}.page-head h1{font-size:27px}.month-filter{width:100%}.month-filter input{flex:1}.metric-grid{grid-template-columns:1fr}.metric-card strong{font-size:22px}.detail-list div{grid-template-columns:1fr;gap:6px}.login-card{padding:25px}.login-logo{width:175px}.result-number{font-size:27px}}
