:root{--bg:#f7f7f5;--surface:#fff;--ink:#1d2433;--muted:#6b7280;--line:#e5e7eb;--brand:#1f3864;--accent:#2f6fde;--ok:#1f7a4d;--warn:#b4540a;--warn-bg:#fff4e8;--radius:12px;color:var(--ink);background:var(--bg);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--bg:#111418;--surface:#1a1f26;--ink:#e8eaed;--muted:#9aa3af;--line:#2a313b;--brand:#9db7e8;--accent:#6b9cf0;--ok:#5cc28c;--warn:#f0a25b;--warn-bg:#2b2016}}*{box-sizing:border-box}body{background:var(--bg);margin:0}button,select{font:inherit;color:inherit}.muted{color:var(--muted)}.link{color:var(--accent);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0}.brand{letter-spacing:-.02em;color:var(--brand);margin:0;font-weight:700}.brand span{margin-left:2px;font-weight:400}.brand.small{font-size:18px}.signin{max-width:520px;margin:12vh auto;padding:0 16px}.signin h1{font-size:36px}.people{gap:10px;margin-top:24px;display:grid}.person{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;gap:2px;padding:14px 16px;display:grid}.person span{color:var(--muted);font-size:14px}.person:hover{border-color:var(--accent)}.topbar{background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:16px;padding:12px 24px;display:flex}.topbar select{border:1px solid var(--line);background:var(--surface);border-radius:8px;min-width:0;max-width:55%;margin-left:auto;padding:6px 10px}.topbar .company{color:var(--muted);margin-left:auto}.admin{grid-template-columns:200px 1fr;min-height:calc(100vh - 53px);display:grid}.sidebar{border-right:1px solid var(--line);align-content:start;gap:2px;padding:20px 12px;display:grid}.sidebar a{color:var(--muted);cursor:pointer;border-radius:8px;padding:8px 12px}.sidebar a.active{background:var(--surface);color:var(--ink);box-shadow:0 0 0 1px var(--line);font-weight:600}.content{max-width:1100px;padding:28px 40px 64px}.page-head{align-items:baseline;gap:16px;display:flex}.page-head h1{margin:0 0 8px;font-size:28px}section{margin-top:32px}h2{align-items:center;gap:8px;margin:0 0 4px;font-size:16px;display:flex}h2.attention{color:var(--warn)}.count{background:var(--line);color:var(--ink);border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600}section>.muted{margin:0 0 12px;font-size:14px}.task-row{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:90px 1.6fr 1fr 1fr 110px;align-items:center;gap:16px;margin-top:8px;padding:14px 18px;display:grid}.task-row .when{font-variant-numeric:tabular-nums;font-weight:600;display:grid}.task-row .when span{color:var(--warn);font-size:12px;font-weight:500}.task-row .what{gap:2px;display:grid}.task-row .what .muted,.task-row .who{font-size:14px}.evidence{flex-wrap:wrap;gap:6px;display:flex}.tag{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:12px}.tag.ok{color:var(--ok);border-color:currentColor}.tag.warn{color:var(--warn);background:var(--warn-bg);border-color:currentColor}.status{justify-self:end;font-size:13px;font-weight:600}.s-completed{color:var(--ok)}.s-in_progress{color:var(--accent)}.s-reported{color:var(--warn)}.s-planned{color:var(--muted)}.onsite{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.chip{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:10px 14px;display:grid}.chip span{color:var(--muted);font-size:13px}.shell.worker .topbar{padding:12px 16px}.worker-main{max-width:480px;margin:0 auto;padding:16px 16px 48px}.worker-main h1{margin:20px 0 12px;font-size:26px}.clock{border-radius:var(--radius);background:var(--brand);color:#fff;cursor:pointer;border:0;width:100%;padding:18px;font-size:20px;font-weight:700}.card{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;gap:4px;width:100%;margin-bottom:10px;padding:16px;display:grid;position:relative}.card.outstanding{border-color:var(--warn);background:var(--warn-bg)}.card-when{color:var(--muted);font-size:14px;font-weight:600}.card.outstanding .card-when{color:var(--warn)}.card-title{font-size:19px;font-weight:700}.card-where{color:var(--muted);font-size:15px}.card .status{position:absolute;top:16px;right:16px}.back{margin-top:8px;font-size:16px}.where{color:var(--muted);margin-top:-4px;font-size:16px}.big-actions{grid-template-columns:1fr 1fr;gap:10px;margin:16px 0;display:grid}.big{border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;place-items:center;padding:22px 8px;font-size:17px;font-weight:600;text-decoration:none;display:grid}.instructions{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-top:16px;padding:14px 16px}.instructions h2{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:14px}.instructions p,.instructions li{font-size:17px;line-height:1.45}.instructions ul{margin:6px 0 0;padding-left:20px}.complete{border-radius:var(--radius);background:var(--ok);color:#fff;cursor:pointer;border:0;width:100%;margin-top:20px;padding:18px;font-size:18px;font-weight:700}.complete:disabled{background:var(--line);color:var(--muted);cursor:not-allowed}@media (width<=760px){.admin{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line);padding:8px;display:flex;overflow-x:auto}.content{padding:20px 16px}.task-row{grid-template-columns:60px 1fr}.task-row .who,.task-row .evidence{grid-column:2}.task-row .status{grid-column:2;justify-self:start}}.stack{gap:14px;margin-top:24px;display:grid}.stack label{gap:6px;font-size:14px;font-weight:600;display:grid}input,select{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:12px 14px;font-size:16px}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:1px}input[readonly]{color:var(--muted)}.primary{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:12px 18px;font-weight:700}.primary:disabled{opacity:.6;cursor:wait}.big-button{padding:16px;font-size:18px}.error{color:var(--warn);background:var(--warn-bg);border-radius:8px;margin:0;padding:10px 12px}.lead{font-size:18px;line-height:1.45}.small{margin:0;font-size:14px}.invite{grid-template-columns:1.2fr 1.4fr 160px auto;gap:10px;margin-top:12px;display:grid}.linkbox{background:var(--surface);border:1px solid var(--ok);border-radius:var(--radius);gap:8px;margin-top:14px;padding:14px 16px;display:grid}.linkbox code{word-break:break-all;font-size:13px}.linkbox .link{justify-self:start}.person-row{grid-template-columns:2fr 1fr 110px}.sidebar a.soon{opacity:.45;cursor:default}@media (width<=760px){.invite{grid-template-columns:1fr}}.clock-panel{gap:8px;display:grid}.clock-placeholder{height:64px}.clock.out{background:var(--surface);color:var(--brand);border:2px solid var(--brand)}.clock:disabled{opacity:.7;cursor:wait}.clock-status{color:var(--ok);margin:0;font-weight:600}.clock-note{color:var(--muted);margin:0;font-size:15px}.status.inline{justify-self:start;margin:0 0 4px;display:inline-block}.thumbs{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin:8px 0;display:grid}.thumbs img{aspect-ratio:1;object-fit:cover;border:1px solid var(--line);background:var(--line);border-radius:10px;width:100%}.thumbs figure{gap:4px;margin:0;display:grid}.thumbs figcaption{color:var(--muted);font-size:12px}.big:disabled{opacity:.6}.secondary-big{border-radius:var(--radius);border:2px solid var(--brand);background:var(--surface);width:100%;color:var(--brand);cursor:pointer;margin-top:20px;padding:16px;font-size:18px;font-weight:700}.done-banner{border-radius:var(--radius);background:var(--surface);border:2px solid var(--ok);color:var(--ok);text-align:center;margin-top:20px;padding:16px;font-size:18px;font-weight:700}.muted-banner{border-color:var(--line);color:var(--muted)}.task-row.clickable{cursor:pointer}.task-row.clickable:hover{border-color:var(--accent)}.panel-backdrop{z-index:10;background:#00000059;justify-content:flex-end;display:flex;position:fixed;inset:0}.panel{background:var(--bg);width:min(560px,100%);height:100%;padding:24px 28px 48px;overflow-y:auto;box-shadow:-8px 0 24px #0003}.panel .close{float:right}.panel-title{margin:8px 0 4px;font-size:22px}.panel h3{margin:28px 0 8px;font-size:15px}.plain{gap:6px;margin:0;padding:0;list-style:none;display:grid}.timeline{border-left:2px solid var(--line);margin:0;padding:0;list-style:none}.timeline li{gap:2px;padding:6px 0 6px 14px;font-size:14px;display:grid;position:relative}.timeline li:before{content:"";background:var(--accent);border-radius:50%;width:10px;height:10px;position:absolute;top:12px;left:-6px}.t-when{color:var(--muted);font-size:12px}
