:root{color-scheme:light;--bg: #f6f7f9;--panel: #ffffff;--ink: #1d2430;--muted: #697386;--line: #dce2ea;--brand: #714b67;--brand-2: #2f6f73;--accent: #cc8a3f;--danger: #c83e4d;--warn: #b96b00;--ok: #217a52;--shadow: 0 12px 34px rgba(29, 36, 48, .09);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}button,input,textarea,select{font:inherit}button{cursor:pointer}.login-shell{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(#1d2430a3,#1d2430b3),url(https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1600&q=80) center/cover}.login-panel{width:min(420px,100%);background:#fffffff5;padding:28px;border-radius:8px;box-shadow:var(--shadow)}.brand-mark{width:56px;height:56px;display:grid;place-items:center;border-radius:8px;background:var(--brand);color:#fff}h1,h2,h3,p{margin:0}.login-panel h1{margin:16px 0 24px;font-size:28px}label{display:grid;gap:7px;margin-bottom:15px;color:var(--muted);font-size:13px;font-weight:700}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:7px;padding:11px 12px;background:#fff;color:var(--ink)}textarea{resize:vertical}input:focus,textarea:focus,select:focus{outline:2px solid rgba(47,111,115,.22);border-color:var(--brand-2)}.primary,.ghost,.icon-button{border:0;border-radius:7px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.primary{background:var(--brand);color:#fff;padding:0 15px;font-weight:800}.ghost{background:#fff;color:var(--ink);border:1px solid var(--line);padding:0 12px}.icon-button{width:40px;height:40px;background:#fff;color:var(--ink);border:1px solid var(--line);text-decoration:none;flex:0 0 40px}.icon-button.done{color:var(--ok)}.primary:disabled{opacity:.65;cursor:wait}.icon-text{white-space:nowrap}.app-shell{width:min(1480px,100%);margin:0 auto;padding:18px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 0 18px}.eyebrow{color:var(--brand-2);font-size:12px;text-transform:uppercase;font-weight:900;letter-spacing:.06em}.topbar h1{font-size:clamp(20px,3vw,30px);line-height:1.08;margin-top:3px}.toolbar{display:grid;grid-template-columns:auto minmax(260px,1fr) auto;gap:12px;align-items:center;margin-bottom:16px}.segmented{display:grid;grid-template-columns:1fr 1fr;background:#e9edf2;border:1px solid var(--line);border-radius:8px;padding:3px}.segmented button{border:0;background:transparent;border-radius:6px;height:34px;padding:0 16px;font-weight:800;color:var(--muted)}.segmented .active{background:#fff;color:var(--brand);box-shadow:0 1px 4px #00000014}.date-control{display:grid;grid-template-columns:40px minmax(160px,220px) 40px;gap:8px;justify-content:center}.toolbar-actions{display:flex;gap:8px;justify-content:flex-end}.layout{display:grid;grid-template-columns:minmax(360px,1.15fr) minmax(300px,.85fr) minmax(300px,.85fr);gap:14px;align-items:start}.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;min-height:180px;box-shadow:0 1px 2px #0000000a;overflow:hidden}.panel-head{height:52px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.panel-head h2{font-size:16px}.panel-head span{color:var(--muted);font-weight:800;font-size:13px}.day-group{padding:8px}.day-title{padding:8px 6px;color:var(--brand-2);font-size:13px;text-transform:capitalize}.event-card,.work-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;padding:12px;border:1px solid #e7ebf0;border-radius:8px;margin:8px;background:#fff}.event-card{grid-template-columns:92px minmax(0,1fr);margin:8px 0}.time-rail{min-height:58px;border-right:2px solid rgba(113,75,103,.25);color:var(--brand);display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:900}.card-main{min-width:0}.card-main h3{font-size:14px;line-height:1.25;margin-bottom:4px;overflow-wrap:anywhere}.card-main p{color:var(--muted);font-size:12px;line-height:1.35;overflow-wrap:anywhere}.row-actions,.meta-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px}.row-actions a{color:var(--brand-2);display:inline-flex;gap:4px;align-items:center;font-weight:800;font-size:12px;text-decoration:none}.pill{border:1px solid var(--line);border-radius:999px;padding:2px 7px;font-size:11px;color:var(--muted);background:#f8fafc}.danger{color:var(--danger)}.warn{color:var(--warn)}.pill.danger{border-color:#c83e4d40;background:#c83e4d14}.stack{padding:2px 0 8px}.empty,.loading{padding:22px;color:var(--muted);text-align:center}.alert{display:flex;align-items:center;gap:8px;color:#8d1e2b;background:#fff0f2;border:1px solid #ffd0d7;padding:10px 12px;border-radius:7px;font-size:13px;font-weight:700}.alert.wide{margin-bottom:14px}.metrics-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0 24px}.metric{min-height:82px;background:#fff;border:1px solid var(--line);border-radius:8px;display:flex;gap:12px;align-items:center;padding:14px;color:var(--brand-2)}.metric strong{display:block;font-size:28px;color:var(--ink);line-height:1}.metric span{display:block;color:var(--muted);font-size:12px;font-weight:800;margin-top:5px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182880;display:grid;place-items:center;padding:16px;z-index:20}.modal{width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;background:#fff;border-radius:8px;padding:18px;box-shadow:var(--shadow)}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.modal h2{font-size:20px}.form-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:10px}.form-grid.two{grid-template-columns:1fr 1fr}@media(max-width:1050px){.layout{grid-template-columns:1fr 1fr}.calendar-panel{grid-column:1 / -1}.metrics-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.app-shell{padding:12px}.topbar{align-items:flex-start}.topbar .ghost{width:40px;padding:0;font-size:0}.toolbar{grid-template-columns:1fr}.date-control{grid-template-columns:40px 1fr 40px}.toolbar-actions{display:grid;grid-template-columns:1fr 1fr}.layout,.metrics-row{grid-template-columns:1fr}.event-card{grid-template-columns:76px minmax(0,1fr)}.work-item{grid-template-columns:40px minmax(0,1fr) 40px}.form-grid{grid-template-columns:1fr;gap:0}.form-grid.two{grid-template-columns:1fr}.login-panel{padding:22px}}
