:root{color-scheme:dark;--bg:#080e1b;--panel:#121d32;--line:#273753;--text:#f4f7ff;--muted:#9badc9;--blue:#478cff;--yellow:#ffdf3e}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 20% 0,#182b55 0,transparent 42%),var(--bg);font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text)}.wrap{max-width:1460px;margin:auto;padding:28px}.top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.brand{font-weight:900;font-size:21px;letter-spacing:.06em}.brand span{color:var(--yellow)}.eyebrow{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.16em}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:26px;background:linear-gradient(110deg,#152a5d,#102347 60%,#111c32);border:1px solid #31559a;border-radius:20px;overflow:hidden;padding:24px}.hero img{width:100%;height:245px;object-fit:cover;border-radius:12px}.hero h1{font-size:clamp(30px,4vw,52px);line-height:1.06;margin:12px 0}.hero p{color:#c5d4f0;line-height:1.6}.pill{display:inline-block;background:#264d98;color:#d5e5ff;padding:7px 12px;border-radius:99px;font-size:12px;font-weight:700}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0}.metric,.panel{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:20px}.metric small{color:var(--muted)}.metric strong{display:block;font-size:31px;margin-top:9px}.metric strong em{font-size:16px;color:var(--muted);font-style:normal}.filters{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin:24px 0}.filters label{font-size:12px;color:var(--muted);display:grid;gap:7px}.filters select,.filters input,.edit input{background:#0a1426;border:1px solid #33486a;color:#fff;border-radius:9px;padding:11px;min-width:150px}.filters input{min-width:250px}.btn{border:0;background:var(--yellow);color:#10182b;font-weight:800;padding:12px 16px;border-radius:9px;cursor:pointer}.btn.secondary{background:#243753;color:#e6efff}.cols{display:grid;grid-template-columns:1fr 1fr;gap:16px}.panel h2{font-size:18px;margin:0 0 18px}.barrow{display:grid;grid-template-columns:90px 1fr 60px;align-items:center;gap:12px;margin:12px 0;font-size:13px}.track{background:#263650;height:12px;border-radius:12px;overflow:hidden}.fill{height:100%;background:linear-gradient(90deg,#2c6bfa,#72c9ff);border-radius:12px}.legend{display:flex;flex-wrap:wrap;gap:9px}.legend span{border:1px solid #345076;padding:7px 10px;border-radius:20px;font-size:12px;color:#d7e4ff}.section{margin-top:20px}.scroll{overflow:auto}table{border-collapse:collapse;width:100%;min-width:950px;font-size:13px}th{text-align:left;color:#9badc9;font-size:11px;letter-spacing:.07em;text-transform:uppercase;background:#17243b}th,td{padding:14px 12px;border-bottom:1px solid #293a56}td strong{display:block;color:#fff;font-size:13px}td small{color:var(--muted)}tbody tr:hover{background:#1b2c49}.tag{background:#243a5b;color:#bcd5ff;border-radius:7px;padding:5px 8px;white-space:nowrap}.hours{font-weight:800;color:var(--yellow)}.timeline{min-width:760px}.timehead,.timerow{display:grid;grid-template-columns:220px repeat(7,1fr);gap:5px;align-items:center}.timehead{color:var(--muted);font-size:12px;margin-bottom:10px}.timerow{padding:8px 0;border-top:1px solid #263753;font-size:12px}.tlabel{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tcell{background:#0b172b;height:15px;border-radius:4px}.active{background:#468dff}.note{color:var(--muted);font-size:12px;line-height:1.7}.foot{margin:25px 0;color:#8092b0;font-size:12px}.edit{display:grid;grid-template-columns:1fr 1fr;gap:10px}.edit label{display:grid;gap:6px;color:var(--muted);font-size:12px}.edit input{width:100%;min-width:0}.modal{position:fixed;inset:0;background:#020814dd;display:none;align-items:center;justify-content:center;padding:16px;z-index:3}.modal.show{display:flex}.dialog{background:#15233b;border:1px solid #46618d;padding:24px;border-radius:18px;width:min(550px,100%)}.dialog h3{margin-top:0}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}@media(max-width:900px){.hero,.cols{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,1fr)}.wrap{padding:14px}.hero img{height:190px}}@media(max-width:500px){.metrics{grid-template-columns:1fr 1fr}.metric strong{font-size:24px}.filters label,.filters input,.filters select{width:100%;min-width:0}}.barrow{grid-template-columns:minmax(90px,180px) 1fr 60px}.filters input[type=date]{min-width:150px}.hero img{object-fit:contain;background:#0b172b}.btn:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #72c9ff;outline-offset:3px}@media print{body{background:#fff;color:#162138}.top,.hero,.metric,.panel{background:#fff;color:#162138;border-color:#bbb}.hero p,.note,.foot,td small{color:#444}.filters{display:none}.wrap{padding:0}.cols{grid-template-columns:1fr 1fr}.scroll{overflow:visible}table{min-width:0;font-size:10px}th,td{padding:8px 4px;color:#162138}td strong,.hours{color:#162138}.section{break-inside:auto}tr{break-inside:avoid}.timeline{min-width:0}.timerow,.timehead{grid-template-columns:180px repeat(7,1fr)}.track,.tcell,.fill,.active{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.brand small{font-size:12px;color:#95add3}.hero h1 span{color:var(--yellow)}.admin-link{background:transparent;border:0;color:#d5e5ff;cursor:pointer;padding:9px}.demo-note{color:#9badc9;font-size:12px}.metrics.compact{grid-template-columns:repeat(2,minmax(0,1fr));max-width:520px}.sectionhead{display:flex;justify-content:space-between;align-items:center;gap:12px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.admin-row{display:flex;align-items:center;gap:9px;border-bottom:1px solid var(--line);padding:7px 0}.admin-row span{margin-right:auto}.admin-row button{border:0;background:#243753;color:#e6efff;border-radius:6px;padding:7px;cursor:pointer}.edit{margin-top:15px}.edit h2,.edit .actions{grid-column:1/-1}.edit .btn{width:max-content}.inline-form{display:flex;gap:9px;flex-wrap:wrap}.inline-form input,.admin input[type=file]{background:#0a1426;border:1px solid #33486a;color:#fff;border-radius:9px;padding:10px}.admin input[type=file]{display:block;margin:15px 0}.download{display:inline-block;text-decoration:none;margin:6px 0}.preview{border:1px solid var(--line);border-radius:10px;padding:15px;margin-top:15px}.preview table{min-width:740px}.error{color:#ffb2ac}.admin .note{line-height:1.5}.modal{display:flex}.dialog{display:grid}.dialog label{grid-column:1/-1}.legend{margin-top:10px}td small{display:block;margin-top:4px}.barrow b{text-align:right}.filters label{min-width:140px}@media(max-width:900px){.admin-grid{grid-template-columns:1fr}}@media print{.admin,.admin-link,.demo-note,.preview{display:none!important}.metrics.compact{max-width:none}}.admin-modal{z-index:10;overflow:hidden;background:#020814d1}.admin-dialog{width:min(1050px,100%);max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 24px 80px #0009}.admin-dialog .sectionhead{position:sticky;top:-20px;z-index:1;background:var(--panel);padding:4px 0 14px;border-bottom:1px solid var(--line)}@media(max-width:600px){.admin-modal{padding:8px}.admin-dialog{max-height:calc(100dvh - 16px);padding:16px}.admin-dialog .sectionhead{top:-16px;align-items:flex-start;flex-wrap:wrap}}@media print{.admin-modal{display:none!important}}.project-image-field{grid-column:1/-1}.project-image-field small{color:var(--muted)}.project-image-preview,.hero-image-placeholder{display:grid;place-items:center;overflow:hidden;border:1px dashed #58719c;border-radius:10px;background:#0b172b;color:var(--muted);text-align:center}.project-image-preview{height:150px}.project-image-preview img{width:100%;height:100%;object-fit:contain}.hero-image-placeholder{min-height:245px;font-size:18px}.admin .project-image-field input[type=file]{width:100%;margin:4px 0}.btn:disabled{opacity:.55;cursor:not-allowed}@media(max-width:900px){.hero-image-placeholder{min-height:190px}}
