:root{--ink:#172923;--muted:#687771;--paper:#f4f3ed;--card:#fff;--green:#245f4a;--green2:#dcebe3;--gold:#e4a84b;--line:#dde2dd;--danger:#a3463f}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}header{height:72px;display:flex;align-items:center;padding:0 3vw;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none}.brand span{display:grid;place-items:center;width:36px;height:36px;background:var(--green);color:white;border-radius:9px;font-family:Georgia,serif}.brand strong{font-family:Georgia,serif;font-size:19px}nav{display:flex;gap:8px;margin:auto}nav button{border:0;background:transparent;color:var(--muted);padding:10px 14px;border-radius:8px}nav button.active{background:var(--green2);color:var(--green);font-weight:700}.primary,.secondary{border-radius:8px;padding:10px 16px;font-weight:700}.primary{border:1px solid var(--green);background:var(--green);color:#fff}.secondary{border:1px solid var(--line);background:#fff;color:var(--ink)}main{max-width:1440px;margin:auto;padding:40px 3vw 64px}.view{display:none}.view.active{display:block}.hero,.page-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}.hero{padding:34px;background:var(--ink);color:white;border-radius:18px;align-items:center}.hero h1,.page-head h1{margin:3px 0;font:40px/1.1 Georgia,serif}.hero p:last-child{margin:8px 0 0;color:#c8d3ce}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:800;color:#74a58f;margin:0}.metrics{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-bottom:14px}.metrics article{background:#fff;border:1px solid var(--line);padding:20px;border-radius:12px;display:grid;gap:7px}.metrics span{color:var(--muted);font-size:13px}.metrics strong{font:28px Georgia,serif}.reporting-note{color:var(--muted);font-size:13px;margin:0 0 24px}.dashboard-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.dashboard-grid .panel:last-child{grid-column:1/-1}.panel,.table-wrap{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px}.panel-head h2{font:26px Georgia,serif;margin:4px 0 18px}.attention{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;background:transparent;border:0;border-top:1px solid var(--line);padding:15px 2px}.attention span:first-child{display:grid}.attention small{color:var(--danger)}.stage-row{display:grid;grid-template-columns:125px 1fr 24px;align-items:center;gap:10px;margin:11px 0;font-size:13px}.stage-row div{height:7px;background:#edf0ed;border-radius:9px;overflow:hidden}.stage-row i{display:block;height:100%;background:var(--green)}.board{display:flex;gap:14px;overflow-x:auto;padding-bottom:20px}.column{min-width:260px;width:260px;background:#e9ebe7;border-radius:12px;padding:12px;min-height:450px}.column-head{display:flex;align-items:center;justify-content:space-between;padding:5px 5px 12px}.column-head h3{font-size:14px;margin:0}.column-head span{background:#fff;border-radius:20px;padding:2px 8px;color:var(--muted)}.card{background:#fff;border:1px solid var(--line);padding:15px;border-radius:9px;margin-bottom:9px;box-shadow:0 2px 5px #1729230b}.card>span{display:block;color:var(--muted);font-size:13px;margin:5px 0 16px}.card footer{display:flex;justify-content:space-between;color:var(--muted);font-size:11px}.column-empty{text-align:center;color:#87948f;border:1px dashed #c5ccc7;padding:25px 8px;border-radius:8px}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.toolbar input{width:min(380px,70%);padding:12px;border:1px solid var(--line);border-radius:9px}.table-wrap{padding:0;overflow:hidden}table{width:100%;border-collapse:collapse}th{text-align:left;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em;padding:14px 20px;background:#fafbf9}td{padding:17px 20px;border-top:1px solid var(--line)}td:first-child{display:grid}td small{color:var(--muted)}tr[data-customer]:hover{background:#fafbf9;cursor:pointer}.pill{background:var(--green2);color:var(--green);font-size:12px;padding:5px 9px;border-radius:20px}.late{color:var(--danger);font-weight:700}.empty{display:grid;text-align:center;color:var(--muted);padding:40px}.empty strong{color:var(--ink)}dialog{border:0;border-radius:16px;padding:0;width:min(680px,calc(100% - 30px));box-shadow:0 24px 70px #101d1866}dialog::backdrop{background:#17292399}dialog form{padding:27px}.modal-head{display:flex;justify-content:space-between;align-items:start}.modal-head h2{font:30px Georgia,serif;margin:3px 0 16px}.icon{border:0;background:transparent;font-size:28px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid label{display:grid;gap:6px;font-size:13px;font-weight:700}.form-grid .wide{grid-column:1/-1}input,select,textarea{border:1px solid #cdd4cf;border-radius:8px;padding:11px;background:white;color:var(--ink)}textarea{width:100%;resize:vertical}.note{display:grid;background:#f5f6f2;padding:10px 13px;border-radius:8px;margin:7px 0}.note small{color:var(--muted)}dialog footer{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.dropzone{display:grid;place-items:center;border:2px dashed #b9c6bf;border-radius:12px;padding:32px;color:var(--green);font-weight:700}.dropzone input{margin-top:12px;max-width:100%}#import-message{color:var(--danger);margin-top:10px}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);background:var(--ink);color:#fff;padding:12px 20px;border-radius:8px;opacity:0;pointer-events:none;transition:.2s}#toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:800px){header{padding:0 16px}.brand strong{display:none}nav{order:3;position:fixed;bottom:0;left:0;right:0;background:white;border-top:1px solid var(--line);justify-content:space-around;padding:7px;z-index:10}header>.primary{margin-left:auto}main{padding:25px 16px 90px}.hero{padding:25px}.hero h1,.page-head h1{font-size:32px}.metrics{grid-template-columns:repeat(2,1fr)}.metrics article:last-child{grid-column:1/-1}.dashboard-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.table-wrap{overflow-x:auto}table{min-width:650px}}
