:root{--ink:#17221d;--muted:#6f7772;--line:#e6e9e5;--paper:#f4f5f1;--card:#fff;--green:#315f49;--soft:#e6eee8;--red:#a64b45}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,-apple-system,sans-serif}button,input{font:inherit}main{display:grid;grid-template-columns:230px 1fr;min-height:100vh}aside{background:#17221d;color:#fff;padding:28px 20px;display:flex;flex-direction:column;position:-webkit-sticky;position:sticky;top:0;height:100vh}.brand{display:flex;gap:12px;align-items:center;margin-bottom:42px}.mark{width:38px;height:38px;border:1px solid #ffffff55;display:grid;place-items:center;font-family:Georgia,serif;font-weight:700}.brand span,.brand strong{display:block}.brand span{font-size:11px;color:#aeb8b2;margin-top:2px;text-transform:uppercase;letter-spacing:.08em}nav{display:grid;grid-gap:8px;gap:8px}nav button{border:0;background:transparent;color:#abb6b0;text-align:left;padding:11px 12px;border-radius:8px;cursor:pointer}nav button.active,nav button:hover{background:#ffffff12;color:#fff}.asideFoot{margin-top:auto;border-top:1px solid #ffffff18;padding-top:18px}.asideFoot span,.asideFoot strong{display:block}.asideFoot span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#93a099}.asideFoot strong{font-size:12px;margin-top:4px}.content{padding:34px 42px 60px;min-width:0}header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px}h1,h2{font-family:Georgia,serif;font-weight:500}h1{font-size:38px;margin:4px 0 0}h2{font-size:24px;margin:2px 0 0}h3{font-size:11px;letter-spacing:.12em;margin:28px 0 10px}.eyebrow,h3{text-transform:uppercase}.eyebrow{font-size:10px;letter-spacing:.16em;color:var(--muted);margin:0}.badge{background:var(--soft);color:var(--green);padding:8px 10px;border-radius:99px;font-size:11px;font-weight:700}.kpis{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;margin-bottom:14px}.kpi,.panel{background:var(--card);border:1px solid var(--line);border-radius:14px}.kpi{padding:20px}.kpi small,.kpi span{display:block;color:var(--muted);font-size:11px}.kpi strong{display:block;font-family:Georgia,serif;font-size:28px;font-weight:500;margin:8px 0 4px}.grid2{display:grid;grid-template-columns:1.55fr 1fr;grid-gap:14px;gap:14px}.panel{padding:22px}.panelHead{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.link{border:0;background:none;color:var(--green);cursor:pointer;font-weight:700;font-size:11px}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.08em;padding:9px 8px}td,th{border-bottom:1px solid var(--line)}td{padding:12px 8px}tr:last-child td{border-bottom:0}.projects tbody tr{cursor:pointer}.projects tbody tr:hover{background:#fafbf8}.projects td:first-child span,.projects td:first-child strong{display:block}.projects td:first-child span{color:var(--muted);margin-top:3px;font-size:10px}.status{font-size:9px;padding:5px 7px;border-radius:99px;background:#eee}.status.sold{background:#e0eee5;color:#315f49}.status.likely{background:#f6eddc;color:#8b6a2f}.status.maybe{background:#ececef;color:#64646e}.cashMini{display:grid;grid-gap:15px;gap:15px}.cashMini div{display:grid;grid-template-columns:70px 1fr 50px;align-items:center}.cashMini span{color:var(--muted);font-size:11px}.cashMini strong{text-align:right;font-family:Georgia,serif;font-size:20px}.cashMini i{height:4px;background:var(--green);border-radius:9px;margin-left:10px}.cashMini i.danger{background:var(--red)}.projectLayout{display:grid;grid-template-columns:1.25fr .95fr;grid-gap:14px;gap:14px;align-items:start}.detail{position:-webkit-sticky;position:sticky;top:22px}.empty{min-height:300px;display:grid;place-items:center;text-align:center;color:var(--muted)}.projectMeta{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 18px}.projectMeta span{background:#f2f4f1;padding:7px 9px;border-radius:7px;font-size:10px}.miniKpis{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.miniKpis div{padding:12px;background:#f7f8f5;border-radius:9px}.miniKpis span,.miniKpis strong{display:block}.miniKpis span{font-size:9px;color:var(--muted)}.miniKpis strong{margin-top:5px}.budgetSection{border-top:1px solid var(--line)}.budgetRow,.sectionTitle{display:grid;grid-template-columns:1fr auto auto;grid-gap:18px;gap:18px;padding:10px 0;align-items:center}.sectionTitle{font-size:9px;font-weight:800;letter-spacing:.08em;color:var(--muted)}.sectionTitle span{grid-column:3;color:var(--ink)}.budgetEmpty,.budgetRow{font-size:10px}.budgetEmpty{color:#9aa09c;padding:10px 0}.billing{display:grid;grid-gap:7px;gap:7px}.billing>div{display:grid;grid-template-columns:1fr auto 80px;grid-gap:12px;gap:12px;background:#f7f8f5;padding:10px;border-radius:8px;font-size:10px}.billing em{text-align:right;color:var(--muted);font-style:normal}.cashInputs{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;margin-bottom:14px}.cashInputs label{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.cashInputs input{display:block;width:100%;margin-top:6px;border:1px solid var(--line);border-radius:8px;padding:11px;background:#fafbf8;color:var(--ink);font-size:16px}.positive{color:var(--green)}.negative{color:#8b5a54}.dangerText{color:var(--red)}.ruleNote{font-size:10px;color:var(--muted);max-width:900px;line-height:1.5}.workCards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px}.workCard{border:1px solid var(--line);border-radius:12px;padding:16px}.workCard>div{display:flex;justify-content:space-between;margin-bottom:14px}.workCard>div strong{font-family:Georgia,serif;font-size:22px}.workCard p{padding:10px 0;border-top:1px solid var(--line);margin:0}.workCard p b,.workCard p span{display:block}.workCard p b{font-size:10px}.workCard p span{font-size:9px;color:var(--muted);margin-top:3px}@media(max-width:1000px){main{grid-template-columns:1fr}aside{height:auto;position:relative;flex-direction:row;align-items:center;gap:20px}.brand{margin:0}.asideFoot{display:none}nav{display:flex;margin-left:auto}.content{padding:24px}.kpis{grid-template-columns:repeat(2,1fr)}.grid2,.projectLayout{grid-template-columns:1fr}.detail{position:relative}.cashInputs,.workCards{grid-template-columns:1fr}}.dangerBtn,.primaryBtn,.rowDelete,.tinyBtn{border:0;border-radius:8px;cursor:pointer}.primaryBtn{background:var(--green);color:#fff}.dangerBtn,.primaryBtn{padding:9px 12px;font-size:11px;font-weight:700}.dangerBtn{background:#f6e8e6;color:var(--red)}.tinyBtn{background:#edf2ee;color:var(--green);padding:5px 8px;font-size:9px;font-weight:700}.rowDelete{background:transparent;color:var(--red);font-size:18px;padding:0 4px}.detailTop{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.detailActions{display:flex;gap:8px}.editGrid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:10px;gap:10px;margin:18px 0}.editGrid label{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.billing.editor input,.budgetEditRow input,.budgetEditRow select,.editGrid input,.editGrid select{width:100%;border:1px solid var(--line);background:#fbfcfa;border-radius:7px;padding:8px;color:var(--ink);font-size:10px;margin-top:4px}.budgetSection.editor{padding-bottom:8px}.sectionTitle button{grid-column:2;justify-self:end}.budgetEditRow,.budgetHead{display:grid;grid-template-columns:1.5fr .45fr .65fr .7fr .7fr 1fr .8fr 24px;grid-gap:6px;gap:6px;align-items:center}.budgetHead{padding:8px 0 2px;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.07em}.budgetEditRow{padding:5px 0}.billingHeader{display:flex;justify-content:space-between;align-items:center}.billing.editor>div{grid-template-columns:1.2fr .5fr 1fr}.billing.editor input{margin:0}.projectLayout{grid-template-columns:.8fr 1.4fr}.detail{max-height:calc(100vh - 44px);overflow:auto}@media(max-width:1000px){.editGrid{grid-template-columns:1fr}.budgetHead{display:none}.budgetEditRow{grid-template-columns:1fr 1fr}.budgetEditRow .rowDelete{justify-self:end}}.projectLayout.projectOpen{display:block}.projectLayout.projectOpen .projectListPanel{display:none}.projectLayout.projectOpen .detail{position:relative;top:auto;max-height:none;overflow:visible;width:100%;padding:30px}.backToProjects{border:0;background:transparent;color:var(--green);font-size:11px;font-weight:700;padding:0;margin:0 0 18px;cursor:pointer}.projectLayout.projectOpen .editGrid{grid-template-columns:repeat(4,minmax(140px,1fr))}.projectLayout.projectOpen .budgetEditRow,.projectLayout.projectOpen .budgetHead{grid-template-columns:minmax(180px,1.5fr) 70px 90px 100px 100px minmax(120px,1fr) 110px 28px}.projectLayout.projectOpen .miniKpis{max-width:760px}@media(max-width:1200px){.projectLayout.projectOpen .editGrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:800px){.projectLayout.projectOpen .editGrid{grid-template-columns:1fr}.projectLayout.projectOpen .budgetEditRow{grid-template-columns:1fr 1fr}}.projectFull,.projectListFull{width:100%}.projectFull.detail{position:relative;top:auto;max-height:none;overflow:visible}.budgetTitleRow{display:flex;align-items:end;justify-content:space-between;gap:20px}.budgetTitleRow span{font-size:9px;color:var(--muted);margin-bottom:8px}.budgetEditRow{min-height:38px}.budgetEditRow input,.budgetEditRow select{margin:0;padding:7px 8px;min-width:0}.projectFull .budgetSection.editor{overflow-x:auto}.projectFull .budgetEditRow,.projectFull .budgetHead{min-width:920px}.projectFull .budgetHead{position:-webkit-sticky;position:sticky;top:0;background:#fff;z-index:2}.projectFull .budgetEditRow{border-top:1px solid var(--line)}.projectFull .budgetEditRow:first-of-type{border-top:0}.mobileLineSummary{display:none}@media(max-width:700px){.content{padding:16px}header{margin-bottom:18px}h1{font-size:30px}.panel{border-radius:12px}.panel,.projectFull{padding:14px}.detailTop{display:block}.detailActions{margin-top:12px}.editGrid{gap:8px}.editGrid,.miniKpis{grid-template-columns:1fr 1fr}.budgetTitleRow{align-items:flex-start}.budgetTitleRow span,.projectFull .budgetHead{display:none}.projectFull .budgetSection.editor{overflow:visible}.projectFull .budgetEditRow{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 62px 72px 32px;grid-gap:6px;gap:6px;padding:8px 0;align-items:center}.projectFull .budgetEditRow input:first-child{grid-column:1/3;font-weight:600}.projectFull .budgetEditRow input:nth-child(2){grid-column:3}.projectFull .budgetEditRow select:nth-child(3){grid-column:4}.projectFull .budgetEditRow input:nth-child(4){grid-column:1}.projectFull .budgetEditRow input:nth-child(5){grid-column:2}.projectFull .budgetEditRow input:nth-child(6){grid-column:3}.projectFull .budgetEditRow select:nth-child(7){grid-column:1/4}.projectFull .budgetEditRow .rowDelete{grid-column:4;grid-row:2}.billing.editor>div{grid-template-columns:1fr 70px 120px}.cashInputs{grid-template-columns:1fr}}@media(max-width:480px){.editGrid,.miniKpis{grid-template-columns:1fr}nav{gap:2px}nav button{padding:8px 9px;font-size:11px}.projectFull .budgetEditRow{grid-template-columns:minmax(0,1fr) 58px 30px}.projectFull .budgetEditRow input:first-child{grid-column:1/3}.projectFull .budgetEditRow input:nth-child(2){grid-column:3}.projectFull .budgetEditRow select:nth-child(3){grid-column:1}.projectFull .budgetEditRow input:nth-child(4){grid-column:2}.projectFull .budgetEditRow input:nth-child(5){grid-column:3}.projectFull .budgetEditRow input:nth-child(6),.projectFull .budgetEditRow select:nth-child(7){grid-column:1/3}.projectFull .budgetEditRow .rowDelete{grid-column:3;grid-row:3}}.headerActions{display:flex;align-items:center;gap:10px}.settingsWrap{position:relative}.menuBtn{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:8px;padding:7px 10px;cursor:pointer}.settingsMenu{position:absolute;right:0;top:42px;background:var(--card);border:1px solid var(--line);border-radius:10px;box-shadow:0 14px 40px #0002;padding:8px;min-width:180px;z-index:20}.settingsMenu button,.settingsMenu label{display:flex;width:100%;justify-content:space-between;align-items:center;border:0;background:transparent;color:var(--ink);padding:9px 10px;border-radius:7px;font-size:11px;cursor:pointer}.settingsMenu button:hover{background:var(--paper)}.adminOverlay{position:fixed;inset:0;background:#0006;z-index:50;display:grid;place-items:center;padding:20px}.adminPanel{background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:14px;width:min(1100px,96vw);max-height:90vh;overflow:auto;padding:22px}.adminHead{display:flex;justify-content:space-between;align-items:flex-start}.adminToolbar{display:flex;justify-content:flex-end;margin:12px 0}.adminTable{display:grid;grid-gap:4px;gap:4px}.adminRow{display:grid;grid-template-columns:1.2fr .8fr 1fr .8fr .8fr .8fr;grid-gap:6px;gap:6px}.adminRow.rate{grid-template-columns:1.4fr .8fr .8fr .8fr .8fr}.adminRow.head{font-size:9px;text-transform:uppercase;color:var(--muted);letter-spacing:.06em}.adminRow input,.adminRow select{width:100%;border:1px solid var(--line);background:#fbfcfa;border-radius:6px;padding:7px;color:var(--ink);font-size:10px}.dark{--ink:#e7ece8;--muted:#9ba6a0;--line:#334039;--paper:#111713;--card:#18211c;--green:#7fb392;--soft:#22352a;--red:#e0827c}.dark aside{background:#0c110e}.dark .adminRow input,.dark .adminRow select,.dark .budgetEditRow input,.dark .budgetEditRow select,.dark .cashInputs input,.dark .editGrid input,.dark .editGrid select{background:#101713;color:var(--ink)}.adminRow.crew{grid-template-columns:1.1fr .7fr 1fr .85fr .65fr .7fr .75fr .75fr .75fr .75fr}.adminRow input.readonly{background:var(--paper);color:var(--muted);font-weight:700}@media(max-width:900px){.adminTable.crewTable{overflow-x:auto}.adminRow.crew{min-width:980px}}.mobileLabel{display:none}.projectFull .budgetEditRow,.projectFull .budgetHead{grid-template-columns:minmax(180px,1.5fr) 70px 85px 95px 95px 100px minmax(120px,1fr) 28px}.budgetField{min-width:0}.budgetField input,.budgetField select{width:100%}.totalField{display:flex;align-items:center;min-height:34px}.totalField strong{font-size:11px}.adminRow.internalGear{grid-template-columns:1.4fr 1fr 1fr}@media(max-width:700px){.projectFull .budgetEditRow{display:block;min-width:0;border-top:1px solid var(--line);padding:10px 0}.projectFull .budgetEditRow .budgetField{display:grid;grid-template-columns:82px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:center;min-height:34px}.projectFull .budgetEditRow .mobileLabel{display:block;color:var(--muted);font-size:10px;font-weight:700}.projectFull .budgetEditRow .unitField{display:none}.projectFull .budgetEditRow .roleField{grid-template-columns:82px minmax(0,1fr);padding-bottom:4px}.projectFull .budgetEditRow .roleField select{font-weight:700;font-size:12px}.projectFull .budgetEditRow .totalField{display:grid;grid-template-columns:82px minmax(0,1fr)}.projectFull .budgetEditRow .totalField strong{font-size:13px;font-family:Georgia,serif}.projectFull .budgetEditRow .rowDelete{display:block;margin-left:auto;margin-top:4px}.projectFull .miniKpis{grid-template-columns:1fr 1fr}}.projectEconomics{grid-template-columns:repeat(3,1fr)}@media(max-width:700px){.projectFull .projectEconomics{grid-template-columns:1fr 1fr}}.cashMonthRow{cursor:pointer}.cashMonthRow:hover{background:var(--paper)}.cashDetailRow td{padding:0!important}.cashDetail{padding:14px 18px 18px;background:var(--paper)}.cashDetail h3{margin:0 0 8px}.cashEvent{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-top:1px solid var(--line)}.cashEvent div{display:flex;flex-direction:column;gap:2px}.cashEvent small,.cashEvent span{color:var(--muted);font-size:10px}.cashEvent b{white-space:nowrap}.cashEvent.operating{margin-top:4px}@media(max-width:700px){.cashEvent{gap:8px}.cashDetail{padding:12px}.cashEvent small{line-height:1.4}}.windowBar{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin:-8px 0 14px}.windowBar span{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.windowBar select{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:8px;padding:7px 10px;font-size:10px}@media(max-width:700px){.windowBar{justify-content:flex-start;margin-top:-4px}}.authShell{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--bg)}.authCard{width:min(420px,100%);background:var(--card);border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:0 18px 50px rgba(0,0,0,.08)}.authCard h1{margin:8px 0 10px}.authCard p{color:var(--muted);line-height:1.5}.authCard input{width:100%;box-sizing:border-box;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:10px;padding:12px;margin:12px 0}.authBtn{width:100%;justify-content:center}.authMark{margin-bottom:18px}.authSent{padding:12px;border-radius:10px;background:var(--paper);font-weight:700}