:root{--ground: #e7ebf0;--surface: #fff;--surface-2: #f3f6f9;--surface-3: #eaeef3;--ink: #17202e;--ink-2: #56626f;--ink-3: #8b96a3;--line: #e2e7ed;--line-strong: #cfd6de;--accent: #e5720d;--accent-ink: #fff;--accent-soft: #fcecdc;--ok: #1a8f52;--ok-soft: #e0f2e7;--warn: #b57400;--warn-soft: #fbeecd;--crit: #cc3b2a;--crit-soft: #fbe3df;--shadow: 0 1px 2px rgba(20,30,45,.05), 0 6px 20px rgba(20,30,45,.07)}@media (prefers-color-scheme: dark){:root{--ground: #0b111c;--surface: #161e2c;--surface-2: #1c2636;--surface-3: #232f41;--ink: #e9eff6;--ink-2: #a4b1c1;--ink-3: #6d7b8d;--line: #29323f;--line-strong: #37424f;--accent: #ff9233;--accent-ink: #1a1206;--accent-soft: #37260f;--ok: #38c47d;--ok-soft: #14301f;--warn: #e6a52a;--warn-soft: #34290d;--crit: #f0654f;--crit-soft: #391a16;--shadow: 0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.4)}}*{box-sizing:border-box}body{margin:0;background:var(--ground);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,Roboto,sans-serif;line-height:1.45;-webkit-font-smoothing:antialiased}.num{font-variant-numeric:tabular-nums}.muted{color:var(--ink-3)}.strong{font-weight:650}button{font:inherit;cursor:pointer}code{background:var(--surface-3);padding:1px 6px;border-radius:6px;color:var(--ink-2);font-size:.92em}.center{min-height:100vh;display:grid;place-items:center;padding:24px}.logincard{width:100%;max-width:360px;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:28px;display:flex;flex-direction:column;gap:10px}.logincard h1{margin:6px 0 0;font-size:20px;letter-spacing:-.02em}.logincard p{margin:0;font-size:13.5px}.logincard label,.editcard label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:650;color:var(--ink-2);text-transform:uppercase;letter-spacing:.04em;margin-top:8px}input,select,textarea{font:inherit;color:var(--ink);background:var(--surface-2);border:1px solid var(--line-strong);border-radius:10px;padding:10px 12px;text-transform:none;letter-spacing:normal;font-weight:400}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:0;border-color:transparent}.logo{width:36px;height:36px;border-radius:9px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-weight:800;font-size:18px;flex:none}.logo.big{width:46px;height:46px;font-size:22px}.app{display:grid;grid-template-columns:236px 1fr;min-height:100vh;--appbar-h: 52px;--tap: 44px}.app.tablet{grid-template-columns:64px 1fr}.app.phone{grid-template-columns:1fr}.nav{background:var(--surface);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:16px 12px;gap:4px;position:sticky;top:0;height:100vh;overflow-y:auto}.brand{display:flex;align-items:center;gap:10px;padding:6px 8px 16px;min-width:0}.brand .bt{font-weight:750;font-size:15px;white-space:nowrap}.brand .bs{font-size:11px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.brand.small{padding:0;gap:8px}.brand.small .logo{width:30px;height:30px;font-size:15px;border-radius:8px}.brand.small .bt{font-size:14px}.brand.small .bs{max-width:200px}.navitem{display:flex;align-items:center;gap:10px;text-align:left;width:100%;border:none;background:transparent;color:var(--ink-2);font-size:14px;font-weight:550;padding:9px 12px;border-radius:10px;white-space:nowrap}.navitem:hover{background:var(--surface-3);color:var(--ink)}.navitem.active{background:var(--accent-soft);color:var(--accent);font-weight:650}.nav.rail{padding:14px 8px;align-items:center}.nav.rail .brand{padding:4px 0 14px}.nav.rail .brandtext{display:none}.nav.rail .navitem{justify-content:center;width:44px;height:44px;padding:0}.nav.rail .navitem span{display:none}.avatar{width:32px;height:32px;border-radius:50%;background:var(--surface-3);display:grid;place-items:center;font-weight:700;font-size:13px;color:var(--ink-2);flex:none}.linkbtn{border:none;background:transparent;color:var(--accent);font-size:12px;font-weight:600}.main{min-width:0}.appbar{position:sticky;top:0;z-index:20;height:var(--appbar-h);display:flex;align-items:center;gap:12px;padding:0 16px;padding-top:env(safe-area-inset-top);box-sizing:content-box;background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.appbar-title{font-size:14px;font-weight:700;color:var(--ink-2)}.backbtn{display:inline-flex;align-items:center;gap:2px;border:none;background:transparent;color:var(--accent);font-weight:650;font-size:15px;padding:6px 4px 6px 0;margin-left:-6px;min-height:var(--tap)}.usermenu{position:relative}.avatarbtn{display:inline-flex;align-items:center;gap:8px;border:1px solid transparent;background:transparent;border-radius:999px;padding:3px 6px 3px 3px;color:var(--ink-2);font-size:13.5px;font-weight:600;min-height:var(--tap)}.avatarbtn:hover{background:var(--surface-3)}.menu{position:absolute;right:0;top:calc(100% + 6px);min-width:260px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:8px;z-index:30;display:flex;flex-direction:column;gap:2px}.menuuser{display:flex;align-items:center;gap:10px;padding:8px 10px 12px;border-bottom:1px solid var(--line);margin-bottom:4px;min-width:0}.menuuser .nu{font-size:14px;font-weight:650}.menuuser .nr{font-size:12px;color:var(--ink-3)}.menuitem{display:flex;align-items:center;gap:10px;width:100%;border:none;background:transparent;color:var(--ink);font-size:14px;font-weight:550;padding:10px;border-radius:10px;text-decoration:none;text-align:left;min-height:var(--tap)}.menuitem:hover{background:var(--surface-3)}.pad{padding:24px 26px 60px;max-width:1120px}.topbar{display:flex;align-items:center;gap:14px;margin-bottom:18px}.topbar h1{margin:0;font-size:20px;font-weight:750;letter-spacing:-.02em}.topbar .sub{font-size:12.5px;color:var(--ink-2)}.toolbar-actions{margin-left:auto;display:flex;gap:10px}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px;box-shadow:var(--shadow)}.kpi .k{font-size:12px;color:var(--ink-2);font-weight:600}.kpi .v{font-size:30px;font-weight:780;letter-spacing:-.03em;margin-top:8px}.kpi .d{font-size:12px;margin-top:3px;color:var(--ink-3)}.kpi .d.ok{color:var(--ok)}.kpi .d.crit{color:var(--crit)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);overflow:hidden;margin-bottom:16px}.panel-h{padding:14px 16px;border-bottom:1px solid var(--line)}.panel-h h2{margin:0;font-size:14.5px;font-weight:700}.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13.5px}thead th{text-align:left;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);font-weight:700;padding:10px 16px;border-bottom:1px solid var(--line);white-space:nowrap}tbody td{padding:11px 16px;border-bottom:1px solid var(--line)}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--surface-2)}.pill{display:inline-flex;align-items:center;font-size:12px;font-weight:650;padding:3px 9px;border-radius:999px}.pill.ok{background:var(--ok-soft);color:var(--ok)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.crit{background:var(--crit-soft);color:var(--crit)}.pill.neutral{background:var(--surface-3);color:var(--ink-2)}.toggle{width:38px;height:22px;border-radius:999px;background:var(--ok);position:relative;border:none}.toggle:after{content:"";position:absolute;width:16px;height:16px;border-radius:50%;background:#fff;top:3px;right:3px;transition:.15s}.toggle.off{background:var(--line-strong)}.toggle.off:after{right:19px}.btn{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:650;border-radius:11px;padding:9px 14px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink)}.btn:hover{background:var(--surface-3)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.primary:hover{filter:brightness(1.05)}.btn:disabled{opacity:.6;cursor:default}.editcard{background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:16px;margin-bottom:16px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.row-end{display:flex;justify-content:flex-end;margin-top:12px}.alert{background:var(--crit-soft);color:var(--crit);border:1px solid color-mix(in srgb,var(--crit) 25%,transparent);border-radius:11px;padding:10px 12px;font-size:13px;font-weight:550;margin:6px 0}.hint{font-size:12.5px;color:var(--ink-3);margin-top:14px}.toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%);background:var(--ink);color:var(--surface);font-size:13px;font-weight:600;padding:11px 16px;border-radius:12px;box-shadow:0 12px 34px #0000004d}.split{display:grid;grid-template-columns:1fr 380px;gap:16px;align-items:start}.detail{position:sticky;top:16px}tbody tr.sel{background:var(--accent-soft)}.detail-h{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.detail-nr{font-size:12px;color:var(--ink-3);font-weight:700}.sech{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:16px 0 8px}.crewline{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;padding:6px 0;border-bottom:1px solid var(--line)}.crewline:last-child{border-bottom:none}.btnrow{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}.calhead{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:14px}.calmonth{font-size:16px;font-weight:700;min-width:180px;text-align:center}.calgrid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.calwd{margin-bottom:6px}.calwdcell{text-align:center;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);padding:4px 0}.calcell{min-height:66px;border:1px solid var(--line);border-radius:10px;padding:6px;background:var(--surface-2);display:flex;flex-direction:column;gap:4px}.calcell.empty{border:none;background:transparent}.calcell.has{background:var(--surface)}.calcell.today{outline:2px solid var(--accent);outline-offset:-2px}.calcell.missing{background:color-mix(in srgb,var(--crit) 6%,var(--surface-2))}.calnum{font-size:12px;font-weight:700;color:var(--ink-2);font-variant-numeric:tabular-nums}.calbadge{align-self:flex-start;font-size:11px;font-weight:700;padding:2px 7px;border-radius:7px;font-variant-numeric:tabular-nums}.calbadge.ok{background:var(--ok-soft);color:var(--ok)}.calbadge.warn{background:var(--warn-soft);color:var(--warn)}.calmiss{font-size:10.5px;color:var(--crit);font-weight:600}.callegend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:14px;font-size:12px;color:var(--ink-2)}.callegend span{display:inline-flex;align-items:center;gap:6px}.callegend .dot{width:9px;height:9px;border-radius:50%;display:inline-block}.callegend .dot.miss{background:var(--crit)}@media (max-width: 640px){.calcell{min-height:52px}.calbadge{font-size:10px}}.logopreview{width:64px;height:64px;border-radius:14px;flex:none;overflow:hidden;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-size:28px;font-weight:800}.logopreview img{width:100%;height:100%;object-fit:contain;background:#fff}.switchrow{display:flex;align-items:center;justify-content:space-between;gap:16px}input:disabled{opacity:.6;cursor:not-allowed}.toggle:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 900px){.split{grid-template-columns:1fr}.detail{position:static}}@media (max-width: 820px){.kpis{grid-template-columns:repeat(2,1fr)}.grid4{grid-template-columns:1fr 1fr}}a.navitem,a.brand{text-decoration:none;color:inherit}.crumbs{font-size:12px;color:var(--ink-3);margin-bottom:2px}.crumbs a{color:var(--ink-2);text-decoration:none}.crumbs a:hover{color:var(--accent)}.pad.wide{max-width:1280px}.topbar h1 .pill{vertical-align:middle;margin-left:8px;font-size:11px}tr.rowlink{cursor:pointer}.filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:14px}.filters select,.filters input{padding:8px 10px;font-size:13px}.filters .searchform{flex:1;min-width:180px}.filters .searchform input{width:100%}.filters .check{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-2)}.panel-f{padding:12px 16px;border-top:1px solid var(--line);display:flex;justify-content:center}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:16px}.cardtitle{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin-bottom:10px}.kv{display:grid;grid-template-columns:130px 1fr;gap:10px;font-size:13.5px;padding:5px 0;border-bottom:1px solid var(--line)}.kv:last-child{border-bottom:none}.kv span{color:var(--ink-3)}.kv b{font-weight:600}.wx{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.tile{background:var(--surface-2);border-radius:10px;padding:10px 8px;text-align:center}.tile .tv{font-size:15px;font-weight:700;font-variant-numeric:tabular-nums}.tile .tl{font-size:11px;color:var(--ink-3);margin-top:2px}.sec{background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);margin-bottom:14px;overflow:hidden}.sechead{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line)}.sechead h2{margin:0;font-size:13px;font-weight:750;letter-spacing:.05em;text-transform:uppercase;color:var(--accent);display:flex;align-items:center;gap:8px}.sechead .count{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:1px 8px;font-size:11px}.sumline{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}.secbody{padding:14px 16px}.secbody table.inner{margin:-14px -16px;width:calc(100% + 32px)}.textblock{margin:0;white-space:pre-wrap;font-size:14px;line-height:1.55}.list{margin:0;padding-left:18px;font-size:13.5px}.list li{padding:3px 0}.item{padding:10px 0;border-bottom:1px solid var(--line)}.item:last-child{border-bottom:none;padding-bottom:0}.item:first-child{padding-top:0}.itemhead{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px}.itemmeta{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12.5px;color:var(--ink-2);margin-top:4px}.pill.tiny{font-size:10px;padding:1px 6px;margin-left:6px}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.photo-grid.small{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));margin-top:8px}.photo-grid figure{margin:0;background:var(--surface-2);border-radius:10px;overflow:hidden;border:1px solid var(--line)}.photo-grid img,.photo-grid .imgph{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block;background:var(--surface-3)}.photo-grid figcaption{font-size:12px;padding:6px 8px}.imgph.failed{display:grid;place-items:center;font-size:11px;color:var(--ink-3)}@media (max-width: 900px){.detail-grid{grid-template-columns:1fr}.wx{grid-template-columns:repeat(3,1fr)}.kv{grid-template-columns:110px 1fr}}.calcell.rowlink{cursor:pointer}.calcell.rowlink:hover{border-color:var(--accent)}.edithead{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px;position:sticky;top:0;z-index:5;background:var(--ground);padding:8px 0 10px}.edithead h1{margin:0;font-size:20px;font-weight:750;letter-spacing:-.02em}.editfoot{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-top:8px}.savestate{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:650;padding:7px 10px;border-radius:999px;background:var(--surface);border:1px solid var(--line);white-space:nowrap}.savestate i{width:8px;height:8px;border-radius:50%;background:var(--ink-3)}.savestate.ok i{background:var(--ok)}.savestate.warn i{background:var(--warn)}.savestate.crit i{background:var(--crit)}.sechead .secactions{display:flex;align-items:center;gap:10px}.sechint{font-size:11px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--ink-3);margin-left:6px}.fgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px 12px}.fgrid.six{grid-template-columns:repeat(6,1fr)}.f{display:flex;flex-direction:column;gap:4px;min-width:0}.fl{font-size:11px;font-weight:650;color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em}.fv{font-size:14px;padding:9px 0}.f input,.f select,.f textarea{width:100%;padding:8px 10px;font-size:13.5px}textarea.big{font-size:15px;line-height:1.5}.editor textarea{width:100%;resize:vertical}.daterow{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.daterow input[type=date]{flex:1;min-width:150px}.btn.sm{padding:7px 10px;font-size:12.5px}.rowcard{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);margin-bottom:10px}.rowbody{flex:1;min-width:0}.rowside{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex:none}.rowside .mh{font-weight:750;font-variant-numeric:tabular-nums;color:var(--accent);font-size:15px;padding:4px 0}.iconbtn{width:30px;height:30px;border-radius:8px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2);font-size:14px;display:grid;place-items:center}.iconbtn:hover{background:var(--surface-3)}.iconbtn.danger:hover{color:var(--crit);border-color:var(--crit)}.addbtn{width:100%;justify-content:center;border-style:dashed;background:transparent}.stepper{display:flex;align-items:stretch;border:1px solid var(--line-strong);border-radius:10px;overflow:hidden;background:var(--surface-2)}.stepper button{width:36px;border:none;background:var(--surface-3);font-size:18px;font-weight:700;color:var(--ink-2)}.stepper input{flex:1;min-width:0;width:100%;border:none;border-radius:0;text-align:center;padding:8px 2px;font-weight:700;-moz-appearance:textfield}.stepper input::-webkit-outer-spin-button,.stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.firmapick{display:flex;flex-direction:column;gap:6px}.tabs{display:flex;gap:6px;margin-bottom:12px;border-bottom:1px solid var(--line)}.tab{border:none;background:transparent;padding:8px 12px;font-size:13.5px;font-weight:650;color:var(--ink-2);border-bottom:2px solid transparent;margin-bottom:-1px;display:inline-flex;align-items:center;gap:6px}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.tab .count{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:0 7px;font-size:11px}.texttools{margin-top:8px}.chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.chipspacer{flex:1}.chip{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2);font-size:12.5px;padding:5px 10px;border-radius:999px}.chip:hover{background:var(--accent-soft);color:var(--accent);border-color:transparent}.chip.tool{background:var(--surface-3);font-weight:650}.chip.rec{background:var(--crit-soft);color:var(--crit)}.check{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ink);text-transform:none;letter-spacing:0;font-weight:500}.check input[type=checkbox]{width:16px;height:16px}.check select{margin-left:6px}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a101c8c;display:grid;place-items:center;z-index:50;padding:16px}.modalbox{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 60px #00000059;width:100%;max-width:640px;max-height:92vh;display:flex;flex-direction:column;padding:18px;overflow:auto}.modalhead{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.modalhead h2{margin:0;font-size:16px}.modalfoot{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.modalbox textarea{width:100%}.pickbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.pickbar input{flex:1 1 220px;min-width:0}.pickbar select{flex:0 1 auto;min-width:0;max-width:100%}.picklist{overflow:auto;max-height:52vh;border:1px solid var(--line);border-radius:10px}.pickgroup{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);padding:8px 12px 4px;background:var(--surface-2)}.pickitem{display:flex;gap:12px;align-items:center;width:100%;text-align:left;border:none;background:transparent;padding:9px 12px;border-bottom:1px solid var(--line);color:var(--ink)}.pickitem:hover{background:var(--accent-soft)}.pickimg{width:44px;height:44px;border-radius:8px;background:var(--surface-3);display:grid;place-items:center;font-weight:800;color:var(--ink-3);overflow:hidden;flex:none}.pickimg img{width:100%;height:100%;object-fit:contain;background:#fff}.pickimg .imgph{width:100%;height:100%}.picktext{display:flex;flex-direction:column;font-size:13.5px}.picktext span{font-size:12px}.noticebox{background:var(--warn-soft);color:var(--warn);border-radius:10px;padding:10px 12px;font-size:13px;margin-bottom:12px}.optgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;margin-bottom:8px}.sigpad{border:1px dashed var(--line-strong);border-radius:12px;background:#fff;overflow:hidden}.sigpad canvas{display:block;touch-action:none;cursor:crosshair}.sigfoot{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;background:var(--surface-2);font-size:12px}.sigimg{height:48px;width:auto;display:block;background:#fff;border-radius:6px;margin-bottom:4px}.timeline li{font-size:13px}@media (max-width: 900px){.fgrid,.fgrid.six{grid-template-columns:repeat(2,1fr)}.optgrid{grid-template-columns:1fr}.edithead{position:static}}@media (max-width: 560px){.fgrid,.fgrid.six{grid-template-columns:1fr}}.editcard label.check,.modalbox label.check{flex-direction:row;align-items:center;text-transform:none;letter-spacing:0;font-weight:500;font-size:13.5px;color:var(--ink)}.dropzone{border:2px dashed var(--line-strong);border-radius:12px;padding:18px;text-align:center;font-size:13.5px;color:var(--ink-2);cursor:pointer;background:var(--surface-2);margin-bottom:12px}.dropzone.drag,.dropzone:hover{border-color:var(--accent);background:var(--accent-soft)}.joblist{list-style:none;margin:0 0 10px;padding:0;font-size:12.5px}.joblist li.fertig{color:var(--ok)}.joblist li.fehler{color:var(--crit)}.joblist li.lädt{color:var(--ink-2)}.fotocards{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:12px}.fotocard{display:flex;gap:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);padding:10px}.fotoimg{width:130px;flex:none;position:relative;cursor:pointer;border-radius:8px;overflow:hidden;background:var(--surface-3)}.fotoimg img,.fotoimg .imgph{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block}.annobadge{position:absolute;top:6px;left:6px;font-size:10px}.fotofields{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.fotometa{font-size:11.5px}.fotoactions{display:flex;gap:6px;align-items:center;margin-top:auto}.spacer{flex:1}.modal.anno{padding:8px}.annobox{background:var(--surface);border-radius:14px;width:100%;max-width:1400px;height:calc(100vh - 16px);display:flex;flex-direction:column;overflow:hidden}.annotools{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:10px 12px;border-bottom:1px solid var(--line)}.annotools .tb{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2);border-radius:9px;padding:6px 9px;font-size:13px;display:inline-flex;align-items:center;gap:5px}.annotools .tb span{font-size:11.5px}.annotools .tb.active{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.annotools .tb:disabled{opacity:.45}.annotools .sep{width:1px;height:24px;background:var(--line);margin:0 4px}.swatch{width:26px;height:26px;border-radius:50%;border:2px solid var(--line-strong)}.swatch.active{border-color:var(--ink);box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--accent)}.strokelbl{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-2)}.strokelbl input{width:90px}.annocanvas{flex:1;display:grid;place-items:center;background:#0d1119;overflow:hidden;min-height:0}.annocanvas canvas{max-width:100%;max-height:100%;touch-action:none;box-shadow:0 10px 40px #00000080}.annohint{padding:8px 12px;font-size:12px;border-top:1px solid var(--line)}.lbbox{background:var(--surface);border-radius:14px;width:100%;max-width:1300px;max-height:calc(100vh - 32px);display:flex;flex-direction:column;overflow:hidden}.lbhead{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--line);font-size:13.5px;flex-wrap:wrap}.lbimg{flex:1;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;background:#0d1119;min-height:300px}.lbimg img{max-width:100%;max-height:calc(100vh - 120px);object-fit:contain;margin:0 auto;display:block}.lbnav{height:100%;border:none;background:transparent;color:#fff;font-size:34px}.lbnav:disabled{opacity:.2}tr.overdue td{background:color-mix(in srgb,var(--crit) 5%,transparent)}.defthumb{width:56px;height:42px;object-fit:cover;border-radius:6px;display:block}.imgbtn{border:0;padding:0;background:none;cursor:zoom-in;display:block}.prodbig{width:100%;max-height:62vh;object-fit:contain;background:#fff;border-radius:8px;display:block}.prodthumb{width:48px;height:48px;object-fit:contain;background:#fff;border-radius:6px;display:block;border:1px solid var(--line)}.calcell.holiday{background:color-mix(in srgb,var(--accent) 7%,var(--surface-2))}.calft{font-size:10px;color:var(--accent);font-weight:600;line-height:1.2}.callegend .dot.ft{background:var(--accent)}.weekgrid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.weekcol{border:1px solid var(--line);border-radius:10px;background:var(--surface-2);padding:8px;min-height:140px;display:flex;flex-direction:column;gap:6px}.weekcol.today{outline:2px solid var(--accent);outline-offset:-2px}.weekcol.missing{background:color-mix(in srgb,var(--crit) 6%,var(--surface-2))}.weekhead{font-size:12px;font-weight:700;color:var(--ink-2)}.weekitem{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-size:12.5px}.weekitem .muted{font-size:11.5px}@media (max-width: 900px){.weekgrid{grid-template-columns:repeat(2,1fr)}.split[style]{grid-template-columns:1fr!important}}@media (max-width: 640px){.topbar,.edithead{flex-wrap:wrap}.toolbar-actions{flex-wrap:wrap;margin-left:0;width:100%}.edithead .toolbar-actions>*{flex:0 0 auto}}.app.phone .pad{padding:14px 16px calc(28px + var(--bottom-inset, 0px));max-width:none}.app.phone .topbar{margin-bottom:14px}.app.phone input:not([type=checkbox]):not([type=radio]):not([type=range]),.app.phone select,.app.phone textarea{font-size:16px;min-height:var(--tap)}.app.phone .btn{min-height:var(--tap);font-size:14.5px}.app.phone .btn.sm{min-height:38px;font-size:13px}.app.phone .iconbtn{width:40px;height:40px}.app.phone .tab{min-height:var(--tap)}.app.phone .filters select,.app.phone .filters input{padding:9px 10px}.app.phone .kpis{gap:10px}.app.phone .kpi{padding:12px 14px}.app.phone .kpi .v{font-size:26px}.app.phone .panel{border-radius:12px}.app.phone .split{grid-template-columns:1fr!important}.app.phone .tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap}.app.phone .tabs::-webkit-scrollbar{display:none}.app.phone .tabs .tab{white-space:nowrap;flex:none}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:30;height:calc(56px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(5,1fr);align-items:stretch;background:color-mix(in srgb,var(--surface) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line)}.tabitem{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:none;background:transparent;color:var(--ink-3);font-size:10.5px;font-weight:650;text-decoration:none;padding:0;min-height:56px}.tabitem.active{color:var(--accent)}.tabplus{display:grid;place-items:center;align-self:center;justify-self:center;width:50px;height:50px;border-radius:50%;background:var(--accent);color:var(--accent-ink);box-shadow:0 6px 18px color-mix(in srgb,var(--accent) 45%,transparent);transform:translateY(-10px);text-decoration:none}.tabplus:active{transform:translateY(-9px) scale(.97)}.sheetwrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#0a101c80;display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-height:88vh;background:var(--surface);border-radius:18px 18px 0 0;box-shadow:0 -10px 40px #0000004d;display:flex;flex-direction:column;padding:6px 16px calc(14px + env(safe-area-inset-bottom));animation:sheetin .18s ease-out}.sheetgrip{width:40px;height:4px;border-radius:2px;background:var(--line-strong);margin:4px auto 10px}.sheethead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.sheethead h2{margin:0;font-size:16px}.sheetbody{overflow:auto;min-height:0;-webkit-overflow-scrolling:touch}.sheetfoot{display:flex;gap:10px;justify-content:flex-end;padding-top:12px}@keyframes sheetin{0%{transform:translateY(24px);opacity:.6}to{transform:none;opacity:1}}.app.desktop .sheetwrap,.app.tablet .sheetwrap{align-items:center;padding:16px}.app.desktop .sheet,.app.tablet .sheet{max-width:560px;border-radius:16px;max-height:90vh;padding:16px 18px 18px}.app.desktop .sheet.wide,.app.tablet .sheet.wide{max-width:860px}.app.desktop .sheetgrip,.app.tablet .sheetgrip{display:none}.sheetnav{display:flex;flex-direction:column;gap:2px}.sheetitem{display:flex;align-items:center;gap:12px;padding:12px 10px;border-radius:12px;color:var(--ink);text-decoration:none;font-size:15px;font-weight:550;min-height:48px}.sheetitem.active{background:var(--accent-soft);color:var(--accent)}.sheetnav .menuitem{font-size:15px;min-height:48px}.stickybar{position:fixed;left:0;right:0;bottom:var(--bottom-inset, 0px);z-index:25;display:flex;align-items:center;gap:10px;padding:10px 16px;background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line)}.stickybar .btn{flex:1;justify-content:center}.stickybar .savestate{flex:none}.app.phone .has-stickybar .pad{padding-bottom:calc(96px + var(--bottom-inset, 0px))}.cards{display:flex;flex-direction:column;gap:10px}.cardrow{display:flex;gap:12px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px;box-shadow:var(--shadow)}.cardrow.rowlink{cursor:pointer}.cardrow.rowlink:active{background:var(--surface-2)}.cardrow .cthumb{flex:none}.cardrow .cthumb img,.cardrow .cthumb .imgph{width:56px;height:56px;border-radius:8px;object-fit:cover;display:block;background:var(--surface-3)}.cardrow .cbody{flex:1;min-width:0}.cardrow .ct{font-size:15px;font-weight:650;line-height:1.3;overflow-wrap:anywhere}.cardrow .cs{font-size:13px;color:var(--ink-2);margin-top:2px}.cardrow .cm{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12.5px;color:var(--ink-2);margin-top:6px}.cardrow .cr{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:6px}.panel>.cards{padding:10px}.panel>.cards .cardrow{box-shadow:none}.cardrow.overdue{background:color-mix(in srgb,var(--crit) 5%,var(--surface))}.cardrow.muted{opacity:.65}.sec.collapsible .sechead.clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.sec.collapsible .sechead{min-height:52px}.sec .secactions .chev{color:var(--ink-3);transition:transform .15s;flex:none}.sec .secactions .chev.up{transform:rotate(180deg)}.sec.closed .sechead{border-bottom:none}.secsummary{padding:0 16px 12px;font-size:13px;color:var(--ink-2);cursor:pointer}.secbody[hidden]{display:none}.emptystate{text-align:center;padding:28px 16px;color:var(--ink-3);font-size:13.5px}.emptystate .ei{color:var(--ink-3);margin-bottom:8px;display:grid;place-items:center}.emptystate .ea{margin-top:12px}.skeleton{display:flex;flex-direction:column;gap:10px;padding:12px 16px}.skrow{height:18px;border-radius:6px;background:linear-gradient(90deg,var(--surface-3) 25%,var(--surface-2) 50%,var(--surface-3) 75%);background-size:200% 100%;animation:shimmer 1.2s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.chip.ok{background:var(--ok-soft);color:var(--ok);border-color:transparent}.chip.warn{background:var(--warn-soft);color:var(--warn);border-color:transparent}.chip.crit{background:var(--crit-soft);color:var(--crit);border-color:transparent}.chip.active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}@media (max-width: 640px){.grid4{grid-template-columns:1fr}.grid4>*,.fgrid>*,.fgrid.six>*{grid-column:auto!important}.wx{grid-template-columns:repeat(2,1fr)}}.app.phone .desk-only{display:none!important}.app.phone .pad.has-stickybar{padding-bottom:calc(96px + var(--bottom-inset, 0px))}.app.phone .crumbs{display:none}.app.phone .cardrow .cr .toggle{margin-top:4px}.jumpbar{display:flex;gap:6px;overflow-x:auto;margin:0 -16px;padding:2px 16px 10px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.jumpbar::-webkit-scrollbar{display:none}.jumpbar .chip{flex:none;white-space:nowrap;min-height:36px}.fotobtns{display:flex;gap:10px;margin-bottom:12px}.fotobtns .btn{flex:1;justify-content:center}.app.phone .fotocards{grid-template-columns:1fr}.app.phone .fotocard{flex-direction:column}.app.phone .fotoimg{width:100%}.app.phone .edithead{position:static;padding:0}.app.phone .modal{align-items:flex-end;padding:0;display:flex;justify-content:center}.app.phone .modalbox{border-radius:18px 18px 0 0;max-height:92vh;padding:14px 16px calc(14px + env(safe-area-inset-bottom));animation:sheetin .18s ease-out}.app.phone .picklist{max-height:60vh}.app.phone .pickitem{min-height:56px}.pwabanner{display:flex;align-items:center;gap:10px;padding:10px 16px;font-size:13.5px;font-weight:550;border-bottom:1px solid var(--line)}.pwabanner.offline{background:var(--warn-soft);color:var(--warn)}.pwabanner.update,.pwabanner.install{background:var(--accent-soft);color:var(--ink)}.pwabanner .btn{margin-left:auto}.pwabanner .iconbtn{flex:none}.pwabanner .btn+.iconbtn{margin-left:0}.pwabanner:not(:has(.btn)) .iconbtn{margin-left:auto}.calfilter{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;margin-bottom:12px}.calfilter-h{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);margin:6px 0 4px;width:100%}.app.desktop .calfilter .calfilter-h,.app.tablet .calfilter .calfilter-h{width:auto;margin:0 2px 0 0}.chip .dot,.callegend .dot,.tagprojhead .dot,.wxname .dot,.caldots .dot,.agwx .dot{width:9px;height:9px;border-radius:50%;display:inline-block;margin-right:5px;flex:none}.chip.active .dot{outline:2px solid #fff}.calsplit{display:grid;grid-template-columns:1fr;gap:16px;align-items:start}.calsplit.mit-panel{grid-template-columns:1fr 340px}.calpanel{padding:14px 16px}.calhead{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap;margin-bottom:12px}.calmonth{font-size:16px;font-weight:700;min-width:0;text-align:center;padding:0 4px}.calmonthpick{padding:6px 8px;font-size:13px}.calstats{margin-left:auto;display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12.5px;color:var(--ink-2)}.calstats .crit{color:var(--crit);font-weight:650}.calstats.busy{opacity:.5}.calgrid8{display:grid;grid-template-columns:34px repeat(7,minmax(0,1fr));gap:5px;margin-bottom:5px}.calwdcell.kw{color:var(--ink-3)}.kwcell{display:grid;place-items:center;font-size:11px;font-weight:700;color:var(--ink-3);background:var(--surface-2);border-radius:8px}.calcell{min-height:84px;cursor:pointer}.calcell.other{opacity:.45}.calcell.we{background:color-mix(in srgb,var(--surface-3) 60%,var(--surface-2))}.calcell.sel{box-shadow:0 0 0 2px var(--accent) inset}.calcelltop{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.calcelltop .wxchip{margin-left:auto}.calbadge.proj{border:1px solid transparent;cursor:pointer;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calbadge.proj[draggable=true]{cursor:grab}.calflag{display:inline-flex;align-items:center;gap:2px;font-size:10.5px;font-weight:700;color:var(--warn)}.calflag.crit{color:var(--crit)}.caldots{display:flex;flex-wrap:wrap;gap:3px;align-items:center;font-size:10px;color:var(--ink-3)}.caldots .dot{margin:0;width:8px;height:8px}.callegend .dot.ok{background:var(--ok)}.callegend .dot.warn{background:var(--warn)}.callegend svg{vertical-align:-1px}.weekgrid{align-items:start}.weekhead.rowlink{cursor:pointer}.weekhead.rowlink:hover{color:var(--accent)}.weekcol.holiday{background:color-mix(in srgb,var(--accent) 7%,var(--surface-2))}.weekwx{display:flex;align-items:center;gap:4px;font-size:12px}.weekitem.frist{display:flex;align-items:center;gap:6px;color:var(--warn);font-weight:600}.weekitem.frist.crit{color:var(--crit)}.wxchip{display:inline-flex;align-items:center;gap:4px;font-size:12.5px;color:var(--ink-2);white-space:nowrap}.wxchip.klein{font-size:10.5px;gap:2px}.wxchip .wxt{font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}.wxchip .wxr{font-size:11px;color:#2b7de9;font-weight:650}.wxchip .wxwarn{color:var(--crit)}.agenda{display:flex;flex-direction:column;gap:8px}.agday{border:1px solid var(--line);border-radius:12px;background:var(--surface-2);padding:10px 12px}.agday.today{outline:2px solid var(--accent);outline-offset:-2px}.agday.we.leer{opacity:.6;padding:6px 12px}.aghead{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;font-size:13.5px}.agdate{white-space:nowrap}.agwx{display:inline-flex;align-items:center;gap:2px}.agitems{display:flex;flex-direction:column;gap:6px;margin-top:8px}.agitem{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--line-strong);border-radius:8px;padding:8px 10px;font-size:13.5px}.agitem .muted{font-size:12px}.agitem.frist{display:flex;align-items:center;gap:6px;color:var(--warn);border-left-color:var(--warn);font-weight:600}.agitem.frist.crit{color:var(--crit);border-left-color:var(--crit)}.agitem.miss{display:flex;align-items:center;justify-content:space-between;gap:10px;border-left-color:var(--crit);color:var(--crit);font-weight:600}.agitem.warnw{border-left-color:var(--crit);color:var(--crit);font-size:12.5px;display:flex;flex-wrap:wrap;gap:4px 12px}.calside{position:sticky;top:calc(var(--appbar-h, 52px) + 12px);background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:14px 16px;max-height:calc(100vh - var(--appbar-h, 52px) - 24px);overflow:auto}.tagdetail{display:flex;flex-direction:column;gap:10px}.tagproj{border-top:1px solid var(--line);padding-top:10px}.tagproj:first-of-type{border-top:none;padding-top:0}.tagprojhead{display:flex;align-items:center;gap:6px;margin-bottom:6px;flex-wrap:wrap}.tagprojhead .wxchip{margin-left:auto}.tagproj .agitem{margin-bottom:6px}.wxtable{display:flex;flex-direction:column}.wxrow{display:grid;grid-template-columns:220px 1fr;gap:12px;align-items:center;padding:10px 16px;border-bottom:1px solid var(--line)}.wxrow:last-child{border-bottom:none}.wxname{font-size:13.5px;font-weight:600}.wxname a{color:inherit;text-decoration:none}.wxname a:hover{color:var(--accent)}.wxwarnline{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.wxdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.wxday{text-align:center;background:var(--surface-2);border-radius:8px;padding:6px 2px;display:flex;flex-direction:column;align-items:center;gap:2px}.wxday.today{outline:2px solid var(--accent);outline-offset:-2px}.wxday .wxd{font-size:11px;font-weight:700;color:var(--ink-3)}.wxday .wxchip{font-size:12px}.app.phone .wxrow{grid-template-columns:1fr;gap:6px;padding:10px 12px}.app.phone .wxdays{gap:2px}.app.phone .wxday .wxchip{font-size:11px}.app.phone .wxday .wxchip .wxr{display:none}.app.phone .calgrid8{grid-template-columns:22px repeat(7,minmax(0,1fr));gap:3px}.app.phone .calcell{min-height:58px;padding:4px;border-radius:8px}.app.phone .calcell .calft{display:none}.app.phone .calcell.holiday .calnum:after{content:" •";color:var(--accent)}.app.phone .calmonth{font-size:15px;flex:1}.app.phone .calstats{width:100%;margin-left:0;font-size:12px}.app.phone .calfilter{display:none}.app.phone .calsplit{display:block}.app.phone .calmiss{font-size:10px}.searchfield{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line-strong);background:var(--surface-2);color:var(--ink-3);border-radius:10px;padding:6px 10px;font-size:13px;min-width:220px}.searchfield:hover{border-color:var(--accent);color:var(--ink-2)}.searchfield kbd{margin-left:auto;font:inherit;font-size:11px;border:1px solid var(--line-strong);border-radius:5px;padding:0 5px;color:var(--ink-3)}.searchbtn{border:none;background:transparent}.searchtitle{display:inline-flex;align-items:center;gap:6px}.searchinput{width:100%;font-size:16px;padding:12px 14px;margin-bottom:8px}.searchlist{max-height:56vh;overflow:auto;border:1px solid var(--line);border-radius:10px}.pickitem.sel{background:var(--accent-soft)}.fotoday .panel-h.fotodayhead{display:flex;align-items:center;gap:10px}.fotodayhead h2{flex:1;min-width:0}.checkbtn{border:none;background:transparent;color:var(--ink-2);display:grid;place-items:center;padding:4px;cursor:pointer;border-radius:8px}.checkbtn:hover{color:var(--accent)}.fotogrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;padding:12px 16px 16px}.fotocell{margin:0;position:relative;background:var(--surface-2);border:2px solid var(--line);border-radius:12px;overflow:hidden}.fotocell.sel{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.fotocell .checkbtn.over{position:absolute;top:6px;left:6px;z-index:2;background:#ffffffd9;color:var(--ink)}.fotocell.sel .checkbtn.over{color:var(--accent)}.fotocellimg{cursor:zoom-in}.fotocellimg img,.fotocellimg .imgph{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block;background:var(--surface-3)}.fotocell figcaption{padding:6px 8px 8px;display:flex;flex-direction:column;gap:3px}.app.phone .fotogrid{grid-template-columns:repeat(2,1fr);gap:8px;padding:10px}.translate{display:inline-flex;align-items:center;gap:6px}.translate select{padding:4px 8px;font-size:12.5px;min-height:30px}.app.phone .translate select{min-height:36px}.translatebox{margin-top:8px;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:10px;padding:10px 12px;background:var(--surface-2)}.translatehead{display:flex;align-items:center;gap:10px;font-size:12.5px;margin-bottom:6px;flex-wrap:wrap}.fristchips{margin-top:4px}.fristchips .chip.klein{font-size:11.5px;padding:3px 8px;min-height:0}.siegelbox{display:flex;flex-direction:column;gap:8px;font-size:13.5px}.siegelbox .hash{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;word-break:break-all;color:var(--ink-2)}.siegelbox .row{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center}.changes{margin:0 0 12px;padding:0;list-style:none;font-size:12.5px}.changes li{padding:5px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:130px 1fr;gap:10px}.changes li:last-child{border-bottom:none}.changes .alt{color:var(--crit);text-decoration:line-through}.changes .neu{color:var(--ok)}.app.phone .changes li{grid-template-columns:1fr;gap:2px}.tabs.sub{align-items:center}.progress{position:relative;height:16px;background:var(--surface-3);border-radius:999px;overflow:hidden;min-width:90px;font-size:11px}.progress i{position:absolute;top:0;bottom:0;left:0;background:var(--ok);border-radius:999px}.progress span{position:relative;display:block;text-align:center;line-height:16px;font-weight:650;color:var(--ink);font-variant-numeric:tabular-nums;text-shadow:0 0 3px var(--surface),0 0 3px var(--surface),0 0 1px var(--surface)}.progress i{opacity:.55}.progress.klein{height:12px;min-width:70px}.progress.klein span{line-height:12px;font-size:10px}.kpis.rb{grid-template-columns:repeat(4,1fr)}@media (max-width: 900px){.kpis.rb{grid-template-columns:repeat(2,1fr)}}.schrittliste{padding:10px 16px;display:flex;flex-direction:column;gap:6px}.schrittzeile{display:grid;grid-template-columns:1fr 180px 90px;gap:12px;align-items:center;font-size:13px}.schrittzeile .sn{display:inline-flex;align-items:center;gap:6px}.app.phone .schrittzeile{grid-template-columns:1fr 100px 60px;gap:8px}.raummatrix th,.raummatrix td{text-align:center;padding:6px 4px;font-size:12.5px;white-space:nowrap}.raummatrix th.fix,.raummatrix td.fix{text-align:left;position:sticky;left:0;background:var(--surface);z-index:1;min-width:150px;white-space:normal}.raummatrix td.zelle{cursor:pointer;font-weight:650;min-width:40px;border:2px solid var(--surface);border-radius:6px}.raummatrix td.zelle:hover{outline:2px solid var(--accent)}.st-offen{background:var(--surface-3);color:var(--ink-3)}.st-arbeit{background:var(--warn-soft);color:var(--warn)}.st-fertig{background:var(--ok-soft);color:var(--ok)}.st-abgenommen{background:var(--ok);color:#fff}.st-gesperrt{background:var(--crit-soft);color:var(--crit)}.legende{font-size:11.5px;color:var(--ink-2);display:inline-flex;gap:4px;align-items:center;flex-wrap:wrap}.legende i{display:inline-block;width:14px;height:14px;border-radius:4px;margin-left:8px}tr.hl td{background:color-mix(in srgb,var(--accent) 6%,transparent)}.regiepos td input,.regiepos td select{width:100%;padding:6px 8px;font-size:13px;min-width:70px}.regiepos td{padding:4px;vertical-align:middle}.sigbox{border:1px dashed var(--line-strong);border-radius:10px;padding:8px;background:var(--surface-2)}.pill.tiny a,a.pill{text-decoration:none}.fotoselbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:10px 0 8px;font-size:13px}.btn.danger{color:var(--crit);border-color:color-mix(in srgb,var(--crit) 40%,transparent)}.btn.danger:hover{background:var(--crit-soft)}.fotocard.selmode .fotoimg{cursor:pointer}.fotocard.sel{outline:3px solid var(--accent);outline-offset:1px}.fotocheck{position:absolute;top:8px;left:8px;z-index:2;background:var(--surface);border-radius:8px;padding:4px 6px;box-shadow:var(--shadow);display:flex}.fotocheck input{width:22px;height:22px;margin:0;accent-color:var(--accent)}.fotocard.selmode .annobadge{left:auto;right:6px}.fotoactions{flex-wrap:wrap}.fotocard .fotoimg{cursor:zoom-in}.lbfoot{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 14px;border-top:1px solid var(--line);font-size:13.5px}.lbbox.withfoot .lbimg img{max-height:calc(100vh - 190px)}.app.phone .lbbox{border-radius:18px 18px 0 0;max-height:calc(100vh - 8px)}.app.phone .lbimg{grid-template-columns:36px 1fr 36px;min-height:200px}.app.phone .lbimg img{max-height:58vh}.app.phone .lbfoot{padding-bottom:calc(10px + env(safe-area-inset-bottom))}.app.phone .lbfoot .btn{min-height:40px}.lbactions{align-items:center;flex-wrap:wrap;gap:8px}.app.phone .pwarow{flex-direction:column;align-items:stretch}.app.phone .pwarow .btn{justify-content:center}
