:root{--bg:#01001c;--card:#10112b;--text:#fff;--muted:#a9acc7;--accent:#ff5c00;--ok:#30d158;--line:#2a2d4a}*{box-sizing:border-box}html{height:100%;background:var(--bg);overflow-x:hidden}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px;line-height:1.35;min-height:100%;overflow-x:hidden}button,input,textarea,select{font:inherit}button{border:0;border-radius:12px;padding:10px 12px;background:var(--accent);color:white;font-weight:600}button:active{transform:scale(.98)}label{display:grid;gap:5px;color:var(--muted);font-weight:500}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:12px;padding:10px;background:#070820;color:var(--text)}textarea{resize:vertical}.hidden{display:none!important}.screen{padding:12px 14px;max-width:760px;margin:0 auto}.card{margin:clamp(18px,5dvh,52px) auto 0;background:rgba(16,17,43,.92);border:1px solid var(--line);border-radius:22px;padding:18px;width:min(92vw,420px);box-shadow:0 16px 50px #0007}.card h1,.topbar h1{margin:0 0 2px;font-size:1.25rem}.muted{color:var(--muted);margin:0}.brand{display:flex;align-items:center;gap:10px}.appLogo{width:38px;height:38px;border-radius:10px;flex:0 0 auto}.appLogo.large{display:block;width:72px;height:72px;border-radius:19px;margin:0 auto 12px}.topbar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:calc(8px + env(safe-area-inset-top,0px)) 14px 8px;background:var(--bg);border-bottom:1px solid var(--line)}.ghost{background:#1a1d3d;color:var(--text)}.danger{background:#8b1e1e;color:#fff}form{display:grid;gap:11px}.filters{display:flex;gap:7px;padding:9px 14px;max-width:760px;margin:0 auto}.filter{flex:1;background:#171936;color:var(--muted);padding:8px 10px}.filter.active{background:var(--accent);color:white}.departmentFilter{max-width:760px;margin:0 auto 8px;padding:0 14px;color:var(--muted)}.departmentFilter summary{cursor:pointer;background:#171936;border:1px solid var(--line);border-radius:12px;padding:8px 11px;color:var(--text);font-weight:600}.checkGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:8px 0}.checkGrid label{display:flex;align-items:center;gap:7px;background:#10112b;border:1px solid var(--line);border-radius:10px;padding:8px;color:var(--text);font-weight:400}.checkGrid input{width:auto}.status{max-width:760px;margin:0 auto;padding:0 14px 7px;color:var(--muted);font-size:.86rem}.list{display:grid;gap:10px;padding:0 14px calc(84px + env(safe-area-inset-bottom,0px));max-width:760px;margin:0 auto}.taskGroup{background:rgba(16,17,43,.74);border:1px solid var(--line);border-radius:16px;overflow:hidden}.taskGroup>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;list-style:none;cursor:pointer;padding:10px 11px;color:#fff;font-weight:650}.taskGroup>summary::-webkit-details-marker{display:none}.taskGroup>summary::before{content:'▾';color:var(--accent);transition:transform .15s}.taskGroup:not([open])>summary::before{transform:rotate(-90deg)}.taskGroup>summary span{margin-right:auto}.taskGroup>summary strong{background:var(--accent);border-radius:999px;min-width:24px;padding:1px 7px;text-align:center}.groupTasks{display:grid;gap:8px;padding:0 8px 8px}.task{background:rgba(16,17,43,.96);border:1px solid var(--line);border-radius:14px;padding:10px;display:grid;gap:8px}.task.done{opacity:.72}.taskHead{display:flex;gap:9px;align-items:flex-start}.check{width:24px;height:24px;accent-color:var(--ok);margin-top:1px;flex:0 0 auto}.task h3{margin:0;font-size:1rem;font-weight:600}.meta{display:flex;flex-wrap:wrap;gap:6px;color:var(--muted);font-size:.8rem}.pill{display:inline-flex;align-items:center;border:1px solid var(--line);background:#171936;border-radius:999px;padding:1px 7px;color:#fff}.desc{white-space:pre-wrap;color:#e9e9f5;margin:0;font-size:.92rem}.photos{display:flex;gap:7px;overflow-x:auto}.photos.collapsed{display:none}.photos img{height:66px;width:66px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}.actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.actions:has(.viewPhotos):has(.quickDone):has(.addPhoto){grid-template-columns:1fr 1fr 1fr}.actions:not(:has(.viewPhotos)){grid-template-columns:1fr 1fr}.small{font-size:.76rem;padding:7px 6px;white-space:nowrap;min-width:0}.fab{position:fixed;right:16px;bottom:calc(14px + env(safe-area-inset-bottom,0px));width:54px;height:54px;border-radius:50%;font-size:29px;box-shadow:0 10px 28px #000a}.empty{text-align:center;color:var(--muted);padding:28px 16px}.detailScreen{min-height:100dvh;background:var(--bg)}.detailTopbar{align-items:flex-start}.detailTopbar>div{min-width:0}.detailTopbar .ghost{flex:0 0 auto}.detailCard{max-width:760px;margin:14px auto;padding:14px;background:rgba(16,17,43,.96);border:1px solid var(--line);border-radius:16px;display:grid;gap:12px}.detailPhotos{display:grid;gap:8px}.detailPhotos h2{margin:0;font-size:1rem}.detailPhotoGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.photoThumb{padding:0;overflow:hidden;background:#171936;border:1px solid var(--line);border-radius:12px;color:var(--text);display:grid}.photoThumb img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.photoThumb span{font-size:.72rem;padding:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detailActions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.photoScreen{min-height:100dvh;background:var(--bg)}.viewerPhotos{display:grid;gap:14px;max-width:760px;margin:0 auto;padding:14px 14px calc(24px + env(safe-area-inset-bottom,0px))}.viewerPhotos figure{margin:0;background:rgba(16,17,43,.96);border:1px solid var(--line);border-radius:16px;overflow:hidden}.viewerPhotos img{display:block;width:100%;height:auto;background:#070820}.viewerPhotos figcaption{padding:9px 11px;color:var(--muted);font-size:.86rem}.photoInputs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.photoField{display:grid;gap:8px;color:var(--muted);font-weight:500}.photoButton{display:flex!important;align-items:center;justify-content:center;gap:7px;background:#171936;border:1px solid var(--line);border-radius:12px;padding:11px 10px;color:var(--text);font-weight:600;cursor:pointer;text-align:center}.photoButton input{position:absolute;inline-size:1px;block-size:1px;opacity:0;pointer-events:none}.photoButton:active{transform:scale(.98)}dialog{border:1px solid var(--line);border-radius:22px;background:var(--card);color:var(--text);width:min(94vw,520px);max-height:calc(100dvh - 24px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow:auto;padding:0}.annotateDialog{width:min(96vw,900px);max-height:calc(100dvh - 10px)}.annotateWrap{display:grid;gap:10px;padding:12px}.annotateHeader h2{margin:0;font-size:1.15rem}.annotateHeader p{margin:2px 0 0}.annotateWrap canvas{width:100%;max-height:62dvh;object-fit:contain;background:#050515;border:1px solid var(--line);border-radius:14px;touch-action:none}.annotateTools{display:grid;grid-template-columns:1fr 1fr;gap:8px}dialog::backdrop{background:#000a}.dialogForm{padding:15px}.dialogForm h2{margin:.1rem 0;font-size:1.15rem}.dialogActions{display:flex;gap:8px;justify-content:flex-end}@media(display-mode:standalone){body{min-height:100dvh}.card{margin-top:clamp(12px,3dvh,34px)}.screen{padding-top:10px}.topbar{padding-top:max(8px,env(safe-area-inset-top,0px))}.list{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}.fab{bottom:calc(12px + env(safe-area-inset-bottom,0px))}}@media(max-height:700px){body{font-size:13px}.appLogo.large{width:62px;height:62px;margin-bottom:8px}.card{margin-top:12px;padding:15px}form{gap:9px}.filters{padding-top:7px;padding-bottom:7px}.task{padding:9px;gap:7px}.list{gap:7px}}@media(min-width:720px){.task{padding:14px}.fab{right:calc((100vw - 760px)/2 + 16px)}.checkGrid{grid-template-columns:repeat(5,minmax(0,1fr))}}