.home{max-width:72rem;margin:0 auto}.home-hero{position:relative;overflow:hidden;border-radius:var(--radius);padding:1.75rem 1.9rem;color:#fff;background:radial-gradient(120% 140% at 0% 0%,#ff5a5f,#e3191f,#9f1239);box-shadow:var(--shadow-card);animation:home-in .5s ease both}.home-hero.tod-morning{background:radial-gradient(120% 140% at 0% 0%,#ff8a4c,#e3191f 45%,#8c1d2a)}.home-hero.tod-evening{background:radial-gradient(120% 140% at 0% 0%,#6d28d9,#9f1239 55%,#1e1b4b)}.home-hero.tod-night{background:radial-gradient(120% 140% at 0% 0%,#334155,#1e1b4b 55%,#0f172a)}.home-glow{position:absolute;right:2.5rem;top:-2rem;width:12rem;height:12rem;border-radius:50%;pointer-events:none;background:radial-gradient(circle,#ffe6a0d9,#ffc87800 70%);animation:home-glow 6s ease-in-out infinite}.home-hero.tod-evening .home-glow,.home-hero.tod-night .home-glow{background:radial-gradient(circle,#c8d2ff8c,#c8d2ff00 70%)}.home-tools{position:absolute;top:1.25rem;right:1.5rem;z-index:1;display:flex;gap:.6rem}.home-tools:empty{display:none}@media(max-width:720px){.home-tools{position:relative;top:auto;right:auto;margin-bottom:.9rem}}.home-hero h1{position:relative;margin:0;font-size:2.1rem;font-weight:300;letter-spacing:-.01em;color:#fff}.home-hero h1 b{font-weight:600}.home-sub{position:relative;margin:.4rem 0 0;font-size:.95rem;color:#ffffffe6}.home-bar{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:1.1rem}.home-stats{position:relative;display:flex;flex-wrap:wrap;gap:.6rem;margin-top:0}.home-search{margin-left:auto;width:min(18rem,100%)}.home-search input{color:#fff;background:#ffffff29;border:1px solid rgb(255 255 255 / .35);border-radius:999px;color-scheme:dark}.home-search input::placeholder{color:#ffffffc7}.home-search input:focus{border-color:#fff;background:#ffffff3d}.home-search input::-webkit-search-cancel-button{filter:invert(1)}.home-stats div{background:#ffffff29;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:var(--radius-sm);padding:.5rem .9rem;font-size:.75rem;min-width:7rem}.home-stats b{display:block;font-size:1.25rem;font-weight:600;font-variant-numeric:tabular-nums}.home-group{margin-top:1.4rem}.home-group h3{display:flex;align-items:center;gap:.5rem;margin:0 0 .5rem;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}.home-group h3 i{font-style:normal;letter-spacing:0;background:var(--prog-queue);color:var(--prog-queue-text);border-radius:999px;padding:1px 7px}.home-more{margin-top:.2rem}.home-item{display:flex;align-items:center;gap:.9rem;background:var(--surface);border-radius:var(--radius-sm);padding:.75rem 1rem;margin-bottom:.5rem;box-shadow:0 1px 2px #1018280f;border-left:4px solid var(--c);color:var(--text);text-decoration:none;transition:transform .15s,box-shadow .15s;animation:home-in .45s ease both;animation-delay:calc(.1s + var(--i, 0) * .05s)}.home-item:hover,.home-item:focus-visible{transform:translate(3px);box-shadow:0 4px 14px #1018281a;text-decoration:none}.home-item.is-miss{border-left-color:var(--prog-nc)}.home-step{width:2.4rem;height:2.4rem;flex:none;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--c);background:color-mix(in srgb,var(--c) 12%,#fff)}.home-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.home-txt b{font-size:.9rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-txt span{font-size:.8rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-tag{font-size:.68rem;font-weight:600;line-height:1;padding:4px 7px;border-radius:999px;white-space:nowrap;flex:none}.home-tag.t-next{background:#eef2ff;color:#3730a3}.home-tag.t-work{background:#e0ecff;color:#1d4ed8}.home-tag.t-miss{background:#fde8e8;color:#b42318}.home-tag.t-stale{background:var(--prog-stale);color:var(--prog-stale-text)}.home-tag.t-team{background:var(--prog-done-hand);color:var(--prog-done-hand-text)}.home-pn{font-size:.75rem;color:var(--muted);font-variant-numeric:tabular-nums;width:6.5rem;flex:none}.home-when{font-size:.75rem;color:var(--muted);width:7rem;text-align:right;flex:none}.home-btn{flex:none;font-size:.8rem;font-weight:600;border-radius:8px;padding:.45rem .8rem;white-space:nowrap;background:var(--accent);color:var(--accent-text)}.home-btn.ghost{background:var(--surface);color:var(--text);border:1px solid var(--line)}.home-empty{margin-top:1.2rem;display:flex;align-items:center;gap:.8rem;padding:.9rem 1.1rem;border-radius:var(--radius-sm);background:var(--prog-done-hand);color:var(--prog-done-hand-text);font-size:.9rem;animation:home-in .45s ease both .1s}@keyframes home-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes home-glow{50%{transform:scale(1.08);opacity:.8}}@media(prefers-reduced-motion:reduce){.home-hero,.home-item,.home-empty,.home-glow{animation:none}}@media(max-width:900px){.home-pn,.home-when{display:none}.home-hit .home-pn{display:inline;width:auto}.home-search{width:100%;margin-left:0}.home-hero h1{font-size:1.7rem}}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(/assets/inter-latin-300-BVlfKGgI.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/inter-latin-400-C38fXH4l.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/inter-latin-600-LgqL8muc.woff2) format("woff2")}:root{--brand-red: #ed1c24;--brand-dark-red: #ac373c;--brand-deep-red: #9a2f33;--brand-light-red: #f4efef;--accent: #e3191f;--accent-text: #ffffff;--accent-strong: #ac373c;--accent-soft: #f4efef;--bg: #f4efef;--surface: #ffffff;--surface-2: #f8f5f5;--text: #000000;--muted: #555555;--line: #dddddd;--input-border: #949494;--ok: #1d4b40;--ok-bg: #ddeee5;--warn: #7a5200;--warn-bg: #fbf3dc;--err: #b8401f;--err-bg: #fbece7;--info: #1f4e79;--info-bg: #e8eef5;--chart-actual: #6b7684;--chart-measure: #1d7a46;--chart-plan: #0b5cad;--chart-limit: #b42318;--chart-door: #8a5a00;--chart-door-bg: #fff4d6;--marker-mast: #0b5cad;--marker-site: #b42318;--prog-done-app: #3ecf8e;--prog-done-app-text: #05432c;--prog-done-hand: #dcf7ea;--prog-done-hand-text: #0b6b47;--prog-active: #2563eb;--prog-next: #7d8fa3;--prog-stale: #fff6db;--prog-stale-text: #8a5700;--prog-planning: #fde68a;--prog-planning-text: #6b4a00;--prog-planned: #bfdbfe;--prog-planned-text: #1e3a8a;--prog-missing: #e3191f;--prog-missing-text: #ffffff;--prog-na: #bfb5b5;--prog-empty: #f3f4f6;--prog-queue: #e8ebef;--prog-queue-text: #475569;--prog-nc: #b42318;--prog-row-hover: #fbf8f8;--prog-phase-auftrag: #6b7684;--prog-phase-planung: #6b46c1;--prog-phase-feld: #0b5cad;--prog-phase-technik: #1d7a46;--prog-phase-bericht: #ac373c;--prog-phase-statik: #7a5200;--step-open: #f5a623;--step-open-text: #3b2300;--radius-sm: 10px;--radius: 16px;--radius-lg: 24px;--shadow-card: 0 2px 14px rgb(0 0 0 / .06);--shadow-pop: 0 12px 32px rgb(0 0 0 / .16);--shadow-modal: 0 24px 60px rgb(0 0 0 / .25);--topbar-h: 4rem;color-scheme:light;font-family:Inter,system-ui,Segoe UI,Roboto,sans-serif;font-weight:400;line-height:1.45;color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0;background:var(--bg);-webkit-font-smoothing:antialiased}h1{font-size:2rem;font-weight:300;line-height:1.2;letter-spacing:-.01em;margin:0 0 .5rem}h2{font-size:1.15rem;font-weight:600;margin:0 0 .9rem;display:flex;align-items:center;gap:.5rem}h3,b,strong,th{font-weight:600}a{color:var(--accent)}a:hover{color:var(--accent-strong)}.muted{color:var(--muted)}.small{font-size:.85rem}.error{color:var(--err)}.error:not(li):not(summary):before,.banner.error:before,.save-error:before,.save-conflict:before{content:"⚠︎";margin-right:.35em;font-weight:600}.warn-text{color:var(--warn)}.nowrap{white-space:nowrap}.num{text-align:right}.center{max-width:32rem;margin:20vh auto;padding:0 16px;text-align:center}button{font:inherit;font-weight:400;border:1px solid var(--accent);border-radius:999px;padding:.45rem 1.1rem;background:var(--accent);color:var(--accent-text);cursor:pointer;line-height:1.3;transition:background-color .15s,color .15s,border-color .15s}button:hover:not(:disabled){background:var(--surface);color:var(--accent);border-color:var(--accent)}button:disabled{opacity:.5;cursor:not-allowed}button:not(.ghost,.link,.reset,.statik-badge,.photo-thumb,.sf-pill):disabled{opacity:1;background:#e4e4e4;border-color:#e4e4e4;color:#6b6b6b}button.ghost{background:var(--surface);color:var(--text);border:1px solid var(--input-border)}button.ghost:hover:not(:disabled){background:var(--surface);color:var(--accent);border-color:var(--accent)}button.ghost.active,button.ghost[aria-pressed=true]{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}button.small{padding:.2rem .7rem;font-size:.85rem}button.link{background:none;color:var(--text);border:0;padding:.35rem .5rem;width:100%;text-align:left;border-radius:8px;font-weight:400}button.link:hover:not(:disabled),button.link:focus-visible{background:var(--surface-2);color:var(--text)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--brand-red);outline-offset:2px}input,select,textarea{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--input-border);border-radius:var(--radius-sm);padding:.45rem .7rem;width:100%}input:focus,select:focus,textarea:focus{border-color:var(--brand-red)}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--accent)}fieldset{border:0;padding:0;margin:0;min-width:0}fieldset:disabled input,fieldset:disabled select,fieldset:disabled textarea{background:var(--surface-2)}details>summary{cursor:pointer}.shell{min-height:100vh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:1.5rem;padding:0 1.5rem;min-height:var(--topbar-h);background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:1000}.brand{display:flex;align-items:center;gap:.9rem;white-space:nowrap;text-decoration:none;color:var(--text)}.brand img{height:2.6rem;width:auto;display:block}.topbar nav{display:flex;gap:1.5rem;flex:1;align-self:stretch}.topbar nav a{display:flex;align-items:center;color:var(--text);text-decoration:none;border-bottom:2px solid transparent;border-top:2px solid transparent}.topbar nav a:hover{color:var(--accent)}.topbar nav a.active{color:var(--accent);border-bottom-color:var(--brand-red)}select.lang{width:auto;font-size:.85rem;padding:.25rem .5rem;border-radius:999px}.user{display:flex;flex-direction:column;align-items:flex-end;font-size:.9rem}.user .roles{color:var(--muted);font-size:.75rem}.user{min-width:0;white-space:nowrap}.user,.user .roles{overflow:hidden;text-overflow:ellipsis;max-width:16rem}button.icon-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;background:none;border:0;border-radius:50%;color:var(--text)}button.icon-btn:hover:not(:disabled){background:var(--surface-2);color:var(--accent)}main{padding:2rem 1.5rem;max-width:96rem;width:100%;margin:0 auto}main>section,.card{background:var(--surface);border:0;border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow-card)}main>section .card,.card .card{box-shadow:none;border:1px solid var(--line)}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.page-head.sticky{position:sticky;top:var(--topbar-h);background:var(--bg);z-index:900;padding:.5rem 0}.page.narrow{max-width:52rem}.head-actions{display:flex;align-items:center;gap:.75rem}.tool-card{display:inline-flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line, #e2e8f0);border-radius:14px;padding:8px 14px 8px 10px;color:#111;text-decoration:none;transition:border-color .15s}.tool-card img{height:30px;width:auto;flex:0 0 auto}.tool-card-title{display:block;font-weight:500;font-size:13.5px;line-height:1.2}.tool-card-info{display:block;font-weight:300;font-size:11.5px;color:#4b5563}.sfv-card:hover,.sfv-card:focus-visible{border-color:#d7002c;outline:none}.tool-card.compact{padding:5px 12px 5px 8px;border-radius:10px;white-space:nowrap}.tool-card.compact img{height:22px}.back{color:var(--muted);text-decoration:none;font-size:.9rem}.back:hover{color:var(--accent)}.actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.filters{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.filters input{max-width:26rem}.filters select{width:auto}.empty{padding:2.5rem 0;text-align:center;color:var(--muted)}table.list{width:100%;border-collapse:separate;border-spacing:0;background:var(--surface);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-card)}table.list th,table.list td{padding:.65rem .9rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}table.list th{font-size:.8rem;color:var(--muted);font-weight:600;background:var(--surface-2)}table.list tr:last-child td{border-bottom:0}table.list tbody tr:hover td{background:var(--surface-2)}table.list td a{font-weight:600;text-decoration:none}.card table.list,main>section table.list{box-shadow:none;border:1px solid var(--line)}.lock{color:var(--warn);font-size:.8rem}.badge{display:inline-block;padding:.15rem .6rem;border-radius:999px;font-size:.78rem;font-weight:600;white-space:nowrap;background:var(--surface-2);color:var(--muted);border:1px solid var(--line)}.badge[class*=status-],.badge[class*=sev-],.badge[class*=marker-],.badge[class*=ai-chip-]{border-color:transparent}.badge.warn{background:var(--warn-bg);color:var(--warn);border-color:transparent}.status-avor_fertig{background:var(--info-bg);color:var(--info)}.status-in_bearbeitung,.status-zurueckgegeben{background:var(--warn-bg);color:var(--warn)}.status-freigegeben,.status-bericht,.status-abgeschlossen{background:var(--ok-bg);color:var(--ok)}.status-storniert{background:var(--surface-2);color:var(--muted);text-decoration:line-through}.banner{padding:.75rem 1rem;border-radius:var(--radius-sm);margin:0 0 1rem;border-left:4px solid transparent}.banner.warn{background:var(--warn-bg);color:var(--warn);border-left-color:var(--warn)}.banner.info{background:var(--info-bg);border-left-color:var(--info)}.banner.ok{background:var(--ok-bg);color:var(--ok);border-left-color:var(--ok)}.banner.error{background:var(--err-bg);color:var(--err);border-left-color:var(--err)}.save-state{font-size:.85rem;color:var(--muted)}.save-conflict,.save-error{color:var(--err);font-weight:600}.save-saved{color:var(--ok)}.form{display:flex;flex-direction:column;gap:1rem}.fields{display:flex;flex-wrap:wrap;align-items:flex-start;gap:1rem 1.1rem}.fields>.field{flex:0 1 var(--fw, 14rem);max-width:100%;min-width:min-content}.fields>.field>.field-label{white-space:nowrap}.fields>.wide{flex-basis:100%}.form>.actions{margin-top:.25rem}.w-2xs{--fw: 6rem}.w-xs{--fw: 8rem}.w-sm{--fw: 10rem}.w-md{--fw: 12rem}.w-lg{--fw: 14rem}.w-xl{--fw: 18rem}.w-2xl{--fw: 24rem}.w-3xl{--fw: 30rem}.w-4xl{--fw: 40rem}.w-full{--fw: 100%}.search-field{max-width:40rem}@media(max-width:640px){.fields>.field{flex-basis:100%;min-width:0}.fields>.field>.field-label{white-space:normal}.search-field{max-width:none}}.field{display:flex;flex-direction:column;gap:.3rem}.field-label{font-size:.82rem;font-weight:600;color:var(--text)}.field .req{color:var(--err)}.field-hint{font-size:.78rem;color:var(--muted)}.field.missing input,.field.missing select{border-color:var(--err);background:var(--err-bg)}.checks{display:flex;flex-wrap:wrap;gap:.4rem 1.25rem}.check{display:flex;align-items:center;gap:.4rem;font-weight:400;color:var(--text)}.picker{position:relative}.zefix-suggest{margin-top:.25rem}.zefix-note{margin:.15rem 0 .2rem}.zefix-list{position:static;max-height:14rem;overflow-y:auto}.picker-list{position:absolute;z-index:1100;left:0;right:0;top:calc(100% + 4px);margin:0;padding:.3rem;list-style:none;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-pop);max-height:18rem;overflow:auto}.picker-list li.muted{padding:.4rem .5rem}.picked{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.45rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.address-search{margin-bottom:.9rem}.dot{display:inline-block;width:.6rem;height:.6rem;border-radius:50%;background:var(--line);flex:none}.dot.ok{background:var(--ok)}.dot.open{background:var(--warn)}.dot.none{background:transparent}.missing-list{margin-top:1rem;padding:.8rem .9rem;background:var(--warn-bg);border-radius:var(--radius-sm);font-size:.82rem;color:var(--warn)}.missing-list ul{margin:.4rem 0 0;padding-left:1.1rem}.sections{display:flex;flex-direction:column;gap:1.25rem}.sections>.card{scroll-margin-top:calc(var(--topbar-h) + 5.75rem)}.log{list-style:none;padding:0;margin:0;font-size:.88rem}.log li{padding:.4rem 0;border-bottom:1px solid var(--line)}.log time{color:var(--muted)}.field-log{margin-top:.2rem}.field-log summary{cursor:pointer;color:var(--muted);font-size:.85rem}.field-changes{list-style:none;margin:.25rem 0 0;padding:0 0 0 .9rem}.log .field-changes li{padding:.1rem 0;border-bottom:0}.field-changes .fc-field{color:var(--muted)}.field-changes .fc-old{text-decoration:line-through;color:var(--muted)}.fc-auto{margin-left:.4rem}.permit-log{list-style:none;margin:0;padding:0}.doc-actions,.pin-tools{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-bottom:.75rem}.docs{list-style:none;margin:0;padding:0}.docs>li{padding:.55rem 0;border-bottom:1px solid var(--line)}.doc-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.15rem 0}.doc-finish{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-top:.9rem}button.finish-check,button.finish-check:hover:not(:disabled){display:inline-flex;align-items:center;gap:.4rem;background:var(--prog-done-app);color:var(--prog-done-app-text);border-color:transparent;font-weight:600}button.finish-check:hover:not(:disabled){filter:brightness(.95)}.doc-finished{display:inline-flex;align-items:center;gap:.4rem;margin:.9rem 0 0;padding:.3rem .8rem;border-radius:999px;background:var(--ok-bg);color:var(--ok);font-weight:600;font-size:.9rem}.badge.type-place{background:var(--ok-bg);color:var(--ok);border-color:transparent;font-size:.68rem;padding:.05rem .45rem}.docs details{margin:.25rem 0 0 1rem}.tabs{display:flex;gap:1.25rem;margin-top:.5rem;flex-wrap:wrap}.tabs a{color:var(--muted);text-decoration:none;padding:.3rem 0;border-bottom:2px solid transparent;font-weight:600;font-size:.92rem}.tabs a:hover{color:var(--accent)}.tabs a.active{color:var(--text);border-color:var(--brand-red)}.dropzone{border:2px dashed var(--input-border);border-radius:var(--radius);padding:1.5rem;text-align:center;background:var(--surface-2)}.dropzone.over{border-color:var(--brand-red);background:var(--accent-soft)}.dropzone.disabled{opacity:.6}.dropzone p{margin:0 0 .6rem}.questions{list-style:none;margin:0;padding:0}.question{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.q-actions{display:flex;gap:.4rem;flex-wrap:wrap}table.list.compact th,table.list.compact td{padding:.35rem .55rem;font-size:.88rem}.grid-scroll{overflow:auto;max-height:70vh;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}table.bfile{border-collapse:separate;border-spacing:0;font-size:.82rem;min-width:100%}table.bfile th,table.bfile td{border-bottom:1px solid var(--line);border-right:1px solid var(--line);padding:.3rem .45rem;white-space:nowrap}table.bfile th{position:sticky;top:0;background:var(--surface-2);z-index:2;font-weight:600;color:var(--muted);white-space:normal;vertical-align:bottom;max-width:9rem}table.bfile th:first-child,table.bfile td:first-child{position:sticky;left:0;background:var(--surface);z-index:1}table.bfile th:first-child{z-index:3;background:var(--surface-2)}table.bfile td.calc{color:var(--muted)}table.bfile td.ov{background:var(--warn-bg)}table.bfile td.editable{cursor:text}table.bfile td.center-cell{text-align:center}table.bfile td input,table.bfile td select{padding:.15rem .35rem;font-size:.82rem;min-width:5rem;border-radius:6px}table.bfile td input[type=checkbox]{min-width:0}table.bfile tr.no-measurement td{font-style:italic}table.bfile td:nth-child(n){max-width:22rem;overflow:hidden;text-overflow:ellipsis}table.bfile td{position:relative}.comment-editor{position:absolute;z-index:20;top:100%;left:0;width:26rem;white-space:normal;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.7rem;box-shadow:var(--shadow-pop);display:flex;flex-direction:column;gap:.5rem;cursor:default}.chips{display:flex;flex-wrap:wrap;gap:.3rem}.chip{display:inline-flex;align-items:center;gap:.25rem;background:var(--accent-soft);color:var(--text);border-radius:999px;padding:.1rem .55rem;font-size:.78rem}.chip.auto{background:var(--surface-2);color:var(--muted);border:1px solid var(--line)}.chip button{background:none;color:var(--muted);border:0;padding:0 .15rem}table.bfile td:has(.comment-editor){overflow:visible}button.reset{background:none;color:var(--warn);border:0;padding:0 .2rem;margin-left:.2rem;font-size:.85rem}.map{height:30rem;border-radius:var(--radius);border:1px solid var(--line);margin:.75rem 0;z-index:0}.map.small{height:18rem}.map-pin{display:flex;align-items:center;justify-content:center}.map-pin span{display:flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 4px;border-radius:13px;background:var(--marker-mast);color:#fff;font:600 12px/1 Inter,system-ui,sans-serif;border:2px solid #fff;box-shadow:0 1px 4px #00000080}.map-pin.site span{background:var(--marker-site)}.mast-pin{position:relative}.mast-pin svg{display:block;filter:drop-shadow(1px 2px 2px rgb(0 0 0 / .4))}.mast-pin .mast-nr{position:absolute;bottom:calc(100% + 1px);left:50%;transform:translate(-50%);white-space:nowrap;background:#ffffffd9;border:1px solid #666;border-radius:3px;padding:0 3px;font:700 11px/1.35 system-ui,sans-serif;color:#111}.pin-popup{display:flex;gap:.35rem;align-items:center}.pin-popup input{width:6rem}.leaflet-container{font:inherit}.leaflet-control-attribution a{color:var(--accent-strong)}.leaflet-bar a,.leaflet-bar a:hover{color:var(--text)}@media(max-width:1280px){.topbar{gap:1rem}.topbar nav{gap:1.1rem}}.detail-single{display:block}.form-compact{--fgap: .5rem}.form-compact .form{gap:.55rem}.form-compact .fields{gap:.45rem .8rem}.form-compact .field{gap:.15rem}.form-compact .field-label{font-size:.76rem}.form-compact .field-hint{font-size:.72rem}.form-compact input,.form-compact select,.form-compact textarea{padding:.3rem .55rem;font-size:.92rem}.form-compact.sections{gap:.75rem}.form-compact.sections>.card,.form-compact .card{padding:.9rem 1.15rem 1rem}.form-compact h2{font-size:1rem;margin:0 0 .55rem}.form-compact .map{height:24rem;margin:.5rem 0}.form-compact .map.small{height:15rem}.form-compact .checks{gap:.25rem 1rem}.form-compact .persons{margin:0}.form-compact .doc-actions,.form-compact .pin-tools{margin-bottom:.4rem}details.section>summary{list-style:none;cursor:pointer}details.section>summary::-webkit-details-marker{display:none}details.section>summary h2{margin:0}details.section[open]>summary h2{margin-bottom:.55rem}.sec-chevron{display:inline-block;width:.5rem;height:.5rem;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(-45deg);margin:0 .25rem 0 .1rem;transition:transform .15s}details.section[open]>summary .sec-chevron{transform:rotate(45deg);margin-bottom:.2rem}.sec-badge{font-size:.72rem;font-weight:600;border-radius:999px;padding:.1rem .55rem;margin-left:.25rem}.sec-badge.done{background:var(--prog-done-app);color:var(--prog-done-app-text)}.sec-badge.open{background:var(--step-open);color:var(--step-open-text)}details.section:not([open])>summary h2{opacity:.85}.checks input.notice-text{width:min(28rem,100%)}.map-marker{display:flex;align-items:center;gap:4px;width:auto!important;height:auto!important}.map-marker .mk{width:26px;height:26px;border-radius:50%;border:2px solid #fff;box-shadow:0 1px 4px #0006;display:grid;place-items:center;flex:none}.map-marker .mk-label{background:#ffffffeb;color:#1d1f22;font:600 .72rem/1.2 Inter,system-ui,sans-serif;padding:.1rem .4rem;border-radius:4px;white-space:nowrap;box-shadow:0 1px 3px #0000004d}button.layer-toggle{padding:.3rem .4rem;display:inline-flex}.map-tools{display:flex;flex-direction:column;gap:3px;background:var(--surface);border:2px solid rgb(0 0 0 / .2);border-radius:8px;padding:3px}.map-tools button.tool,.map-tools button.tool:hover:not(:disabled){width:30px;height:30px;padding:0;border:0;border-radius:6px;background:var(--surface);color:var(--text);display:grid;place-items:center;cursor:pointer}.map-tools button.tool svg{width:18px;height:18px}.map-tools button.tool:hover:not(:disabled){background:var(--surface-2);color:var(--accent)}.map-tools button.tool[aria-pressed=true]{background:var(--accent);color:var(--accent-text)}.map-tools button.tool-site[aria-pressed=true]{background:var(--marker-site)}.map-tools button.tool-parking[aria-pressed=true]{background:#1a5fb4}.map-tools button.tool-meeting_point[aria-pressed=true]{background:#e5a50a;color:#1d1f22}.map-tools button.tool-entrance[aria-pressed=true]{background:#26a269}.map-tools .tool-sep{height:1px;background:var(--line);margin:2px 3px}.map-tools button.tool{position:relative}.map-tools button.tool[data-tip]:hover:after,.map-tools button.tool[data-tip]:focus-visible:after{content:attr(data-tip);position:absolute;right:calc(100% + 10px);top:50%;transform:translateY(-50%);width:max-content;max-width:260px;padding:5px 9px;border-radius:6px;background:#1d1f22;color:#fff;font-size:12px;font-weight:400;line-height:1.35;text-align:left;white-space:normal;pointer-events:none;z-index:1000}.permit{display:flex;flex-direction:column;gap:.6rem}.permit-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.permit-status{border-radius:var(--radius-sm);padding:.6rem .85rem;font-size:.9rem;background:var(--surface-2)}.permit-status.ok{background:var(--ok-bg);color:var(--ok)}.permit-status.warn{background:var(--warn-bg);color:var(--warn)}.permit-status.err{background:var(--err-bg);color:var(--err)}.permit-status .muted{color:inherit;opacity:.8}.restrictions{list-style:none;margin:.55rem 0 0;padding:0;display:flex;flex-direction:column;gap:.35rem;color:var(--text)}.restrictions li{background:var(--surface);border-radius:var(--radius-sm);padding:.5rem .75rem;display:flex;flex-direction:column;gap:.15rem}.restrictions .r-head{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .6rem}.restrictions .zone{font-weight:600}.restrictions .lead-badge{font-size:.74rem;font-weight:600;border-radius:999px;padding:.08rem .55rem;background:var(--surface-2);color:var(--muted);border:1px solid var(--line)}.restrictions .lead-badge.max{background:var(--step-open);color:var(--step-open-text);border-color:transparent}.restrictions .r-text{line-height:1.35}.restrictions .r-auth a{color:var(--accent)}.permit-status.warn .restrictions li{border-left:3px solid var(--step-open)}.permit-cta.wide{flex-basis:100%}.permit .row-cta .check{display:inline-flex;align-items:center;gap:.4rem}.permit input.computed{background:var(--surface-2);color:var(--muted)}.permit input.computed.tight{border-color:var(--warn);color:var(--warn);background:var(--warn-bg)}.permit input.computed.overdue{border-color:var(--err);color:var(--err);background:var(--err-bg)}.deadline-note{justify-content:flex-end}.deadline-note.tight strong{color:var(--warn)}.deadline-note.overdue strong{color:var(--err)}.permit .row-cta{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}a.button-link{display:inline-block;border:1px solid var(--accent);border-radius:999px;padding:.35rem 1rem;background:var(--accent);color:var(--accent-text);text-decoration:none;font-size:.9rem;white-space:nowrap}a.button-link:hover{background:var(--surface);color:var(--accent)}button.link.small{font-size:.82rem}.steps-wrap{margin:0 0 .9rem}.steps{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:3px}.step{display:inline-block;padding:.38rem 1rem .38rem 1.35rem;font-size:.8rem;font-weight:600;text-decoration:none;background:var(--prog-empty);color:var(--muted);line-height:1.2;white-space:nowrap;clip-path:polygon(0 0,calc(100% - 11px) 0,100% 50%,calc(100% - 11px) 100%,0 100%,11px 50%)}.steps li:first-child .step{padding-left:1rem;border-radius:999px 0 0 999px;clip-path:polygon(0 0,calc(100% - 11px) 0,100% 50%,calc(100% - 11px) 100%,0 100%)}.steps li:last-child .step{padding-right:1rem;border-radius:0 999px 999px 0;clip-path:polygon(0 0,100% 0,100% 100%,0 100%,11px 50%)}.step:hover{filter:brightness(.95);color:inherit}.step.done{background:var(--prog-done-app);color:var(--prog-done-app-text)}.step.open{background:var(--step-open);color:var(--step-open-text)}.step.opt{background:var(--prog-empty);color:var(--muted)}.flow-wrap{display:flex;align-items:center;flex-wrap:wrap;gap:.3rem .7rem}.flow-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);cursor:help}.flow-glyph{display:inline-block;margin-right:.35rem;font-weight:700}.steps.flow .step.active{background:var(--prog-active);color:#fff}.steps.flow .step.next{background:var(--info-bg);color:var(--info)}.steps.flow .step.warn{background:var(--step-open);color:var(--step-open-text)}.steps.flow .step.open{background:var(--prog-empty);color:var(--muted);font-weight:500}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.steps-wrap .missing-list{margin-top:.5rem;padding:.5rem .8rem}.steps-wrap .missing-list summary{font-weight:600;cursor:pointer}button.layer-toggle,button.layer-toggle:hover:not(:disabled){background:var(--surface);color:var(--text);border:2px solid rgb(0 0 0 / .2);border-radius:6px;padding:.25rem .6rem;font-size:.8rem;font-weight:600;box-shadow:none;cursor:pointer}button.layer-toggle:hover:not(:disabled){color:var(--accent)}.map-note span{display:inline-block;max-width:14rem;padding:.15rem .5rem;border-radius:6px;background:#fff6db;color:#3b2300;border:1px solid #e0b64d;font:600 .72rem/1.3 Inter,system-ui,sans-serif;white-space:normal;box-shadow:0 1px 4px #00000040}.note-popup{flex-direction:column;align-items:stretch}.note-popup textarea{width:100%;min-width:12rem}.note-popup div{display:flex;gap:.35rem}.doc-buttons{display:inline-flex;gap:.35rem;align-items:center;flex:none}button.icon{padding:.2rem .45rem;display:inline-flex;align-items:center}@media(max-width:900px){.topbar{flex-wrap:wrap;gap:.6rem 1rem;padding:.5rem 1rem}.topbar nav{order:5;flex-basis:100%;min-height:2.4rem;flex-wrap:wrap;column-gap:1.1rem}.user{display:none}main{padding:1.25rem 1rem}h1{font-size:1.6rem}}.statik-badge{display:inline-flex;align-items:center;gap:.3rem;border-radius:999px;padding:.08rem .5rem;font-size:.78rem;font-weight:600;white-space:nowrap;background:var(--surface-2);color:var(--muted);border:1px solid transparent}.statik-badge:disabled{opacity:1;cursor:default}button.statik-badge:hover:not(:disabled){border-color:currentColor}.sb-ok,button.sb-ok:hover:not(:disabled){background:var(--ok-bg);color:var(--ok)}.sb-bad,button.sb-bad:hover:not(:disabled){background:var(--err-bg);color:var(--err)}.sb-busy,button.sb-busy:hover:not(:disabled){background:var(--surface-2);color:var(--muted)}.sb-blocked,button.sb-blocked:hover:not(:disabled){background:var(--warn-bg);color:var(--warn)}.sb-err,button.sb-err:hover:not(:disabled){background:var(--surface);color:var(--err);border-color:var(--err)}.sb-na,button.sb-na:hover:not(:disabled){background:var(--surface-2);color:var(--muted);border-color:var(--line);border-style:dashed}.sb-none,button.sb-none:hover:not(:disabled){background:transparent;color:var(--muted)}.sb-ist{font-size:.6rem;margin-left:.1rem}.spinner{display:inline-block;width:.7rem;height:.7rem;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .9s linear infinite}.spinner.idle{animation:none;border-style:dotted}@keyframes spin{to{transform:rotate(360deg)}}.upload-status{display:flex;flex-direction:column;gap:.35rem;padding:.7rem .9rem;margin:.5rem 0;border-radius:var(--radius-sm);background:var(--info-bg);color:var(--text)}.upload-status.stalled{background:var(--warn-bg)}.upload-head{display:flex;align-items:center;gap:.5rem}.upload-head .spinner{color:var(--info)}.upload-head .muted{margin-left:auto;font-variant-numeric:tabular-nums}.upload-bar{height:8px;border-radius:999px;background:var(--surface);overflow:hidden}.upload-bar span{display:block;height:100%;background:var(--prog-done-app);transition:width .3s}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:3s}button{transition:none}}table.bfile td.statik-td{text-align:center}.statik-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding:.6rem .9rem;margin-bottom:.9rem;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm)}.statik-counts{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.statik-count{border-radius:999px;padding:.08rem .5rem;font-size:.78rem;font-weight:600}.statik-queue{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;color:var(--muted)}.statik-queue.q-queued,.statik-queue.q-running{color:var(--info);font-weight:600}.statik-actions{margin-left:auto;display:flex;gap:.4rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#0006;display:flex;align-items:center;justify-content:center;padding:2vh 2vw}.modal{background:var(--surface);color:var(--text);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal);display:flex;flex-direction:column;width:min(78rem,100%);height:min(52rem,96vh);outline:none;overflow:hidden}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid var(--line)}.modal-head h2{margin:0 0 .3rem;font-size:1.35rem;font-weight:300}.modal-foot{display:flex;align-items:center;gap:.5rem;padding:.8rem 1.5rem;border-top:1px solid var(--line);background:var(--brand-light-red)}table.list tr.clickable{cursor:pointer}table.list tr.clickable:focus-visible td{background:var(--surface-2);outline:none}table.customers th:first-child,table.customers td:first-child{width:7.5rem;white-space:nowrap}table.customers th.tog,table.customers td.tog{width:2rem;padding-right:0}table.customers td.tog button,table.customers td.num button.icon{width:1.7rem;height:1.7rem;padding:0;display:inline-grid;place-items:center;font-weight:600}table.customers tr.expand td{background:var(--surface-2);padding:.6rem .75rem .9rem 2.5rem;cursor:default}table.customers tr.expand .card{padding:1rem 1.15rem}.badge.type-partner{background:var(--ok-bg);color:var(--ok);border-color:transparent}.badge.type-register{background:var(--info-bg);color:var(--info);border-color:transparent;font-size:.68rem;padding:.05rem .45rem}.modal.customer-dialog{width:min(64rem,100%);height:auto;max-height:96vh}.customer-dialog .modal-head{align-items:center}.customer-dialog .modal-head h2{margin:0;display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}.customer-dialog .modal-head h2 .badge{flex:0 0 auto}.customer-dialog button.icon{width:2rem;height:2rem;padding:0;display:grid;place-items:center}.customer-dialog-body{padding:0;overflow:auto;display:grid;grid-template-columns:1fr 1fr}.customer-dialog .cd-col{padding:1rem 1.5rem 1.2rem;display:flex;flex-direction:column;gap:.9rem;min-width:0}.customer-dialog .cd-side{border-left:1px solid var(--line);background:var(--surface-2)}.customer-dialog-sec{display:flex;flex-direction:column;gap:.55rem}.customer-dialog-sec h3{margin:0;font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;display:flex;align-items:center;gap:.6rem}.customer-dialog-sec h3:after{content:"";flex:1;height:1px;background:var(--line)}.customer-dialog .field-label{font-size:.78rem}.customer-dialog input,.customer-dialog select{padding:.32rem .6rem}.customer-dialog .cd-row{display:grid;gap:.45rem .7rem}.customer-dialog .cd-row>.field{min-width:0}.customer-dialog .cd-firma{grid-template-columns:1fr 8rem}.customer-dialog .cd-addr2{grid-template-columns:1fr 10rem}.customer-dialog .cd-street{grid-template-columns:1fr 5.5rem}.customer-dialog .cd-zipcity{grid-template-columns:5.5rem 1fr}.customer-dialog .cd-contact{grid-template-columns:1fr 1fr 9rem}.customer-dialog .cd-partner{display:grid;grid-template-columns:auto 8.5rem 1fr;gap:.8rem;align-items:center}.customer-dialog .cd-pct{position:relative;display:block}.customer-dialog .cd-pct:after{content:"%";position:absolute;right:.6rem;top:50%;transform:translateY(-50%);color:var(--muted);font-size:.9rem;pointer-events:none}.customer-dialog .cd-pct input{padding-right:1.5rem}.customer-dialog .cd-error{grid-column:1 / -1;margin:0 1.5rem 1rem}.customer-dialog .modal-foot{justify-content:flex-end}.customer-logo{display:grid;grid-template-columns:auto 1fr;gap:.4rem .9rem;align-items:center;font-size:.85rem}.customer-logo .logo-pv{width:9rem;height:3.6rem;border:1px solid var(--line);border-radius:8px;background:#fff;display:grid;place-items:center;grid-row:span 2;padding:.3rem;overflow:hidden}.customer-logo .logo-pv img{max-width:100%;max-height:100%;object-fit:contain}.customer-logo .logo-file{display:flex;gap:.5rem;align-items:center;min-width:0}.customer-logo .logo-name{flex:1;border:1px solid var(--input-border);border-radius:8px;padding:.3rem .6rem;color:var(--muted);background:#fff;font-size:.88rem;height:2.05rem;display:flex;align-items:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.customer-logo .logo-acts{display:flex;gap:.5rem;align-items:center;color:var(--muted);font-size:.78rem;flex-wrap:wrap}.customer-logo .logo-msg{grid-column:1 / -1;margin:0}@media(max-width:52rem){.customer-dialog-body{grid-template-columns:1fr}.customer-dialog .cd-side{border-left:0;border-top:1px solid var(--line)}.customer-dialog .cd-partner{grid-template-columns:auto 8.5rem}.customer-dialog .cd-partner .muted{grid-column:1 / -1}}.ist-tags{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.ist-msg{flex:1;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.ist-body{flex:1;min-height:0;display:grid;grid-template-columns:20rem 1fr}.ist-side{overflow:auto;padding:.9rem 1rem;border-right:1px solid var(--line);background:var(--surface-2)}.ist-side h3{font-size:.8rem;margin:.2rem 0 .4rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.ist-side ul{list-style:none;margin:0 0 1rem;padding:0}.open-items button.link,.val-list button.link{display:flex;gap:.45rem;align-items:flex-start;font-size:.86rem}.open-items .detail{display:block}.open-items .mark{flex:none;width:1rem;text-align:center}.open-items li.todo .mark{color:var(--warn)}.open-items li.done .mark{color:var(--ok)}.open-items li.done>button>span:last-child{color:var(--muted)}.open-items li.soft .mark{color:var(--muted)}.val-list li.error{color:var(--err)}.val-list li.warning{color:var(--warn)}.val-list button.link,.val-list button.link:hover:not(:disabled){color:inherit;display:block}.diff-list{padding-left:.2rem!important}.ist-main{display:flex;flex-direction:column;min-height:0}.ist-tabs{display:flex;gap:.2rem;padding:.5rem 1rem 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.ist-tabs button,.ist-tabs button:hover:not(:disabled){background:none;color:var(--muted);border:0;border-bottom:2px solid transparent;border-radius:0;padding:.45rem .8rem;font-weight:600;display:inline-flex;gap:.35rem;align-items:center}.ist-tabs button:hover:not(:disabled){color:var(--accent)}.ist-tabs button.active{color:var(--text);border-bottom-color:var(--brand-red)}.tab-count{background:var(--warn-bg);color:var(--warn);border-radius:999px;padding:0 .4rem;font-size:.72rem}.tab-err{background:var(--err-bg);color:var(--err);border-radius:999px;padding:0 .4rem;font-size:.72rem}.ist-panel{overflow:auto;padding:1rem 1.25rem;flex:1}table.ist-form{border-collapse:collapse;width:100%;font-size:.88rem;margin-bottom:.8rem}table.ist-form th,table.ist-form td{padding:.35rem .5rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}table.ist-form thead th{font-size:.78rem;color:var(--muted);background:var(--surface-2)}table.ist-form tbody th{font-weight:400;width:16rem}table.ist-form td.mastap{color:var(--muted);width:12rem}table.ist-form tr.ov td.corr{background:var(--warn-bg)}table.ist-form tr.has-err th{color:var(--err)}table.ist-form tr.sec th{background:none;color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;padding-top:.8rem}table.ist-form select{width:auto;min-width:10rem}table.ist-form.masses td{padding:.2rem .25rem}table.ist-form.masses input{padding:.2rem .35rem}.ov-table{background:var(--warn-bg);border-radius:var(--radius-sm)}.num-field{display:inline-flex;align-items:center;gap:.3rem}.num-field input{width:7rem;padding:.25rem .45rem}.num-field input.bad{border-color:var(--err);background:var(--err-bg)}.num-field .unit{color:var(--muted);font-size:.8rem}.ist-sub{font-size:.9rem;margin:1rem 0 .4rem}.ladder{padding:.4rem .5rem;display:flex;flex-direction:column;gap:.5rem}.ladder-fields{display:flex;flex-wrap:wrap;gap:.6rem}.ladder-fields .field{width:auto}.gps-tools,.photos-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:.4rem 0}.gps-legend{display:flex;flex-wrap:wrap;gap:.9rem;margin:-.3rem 0 .5rem;color:var(--muted)}.gps-dot{display:inline-block;width:.75rem;height:.75rem;border-radius:50%;vertical-align:-1px;border:1px solid #fff;background:#0b5cad}.gps-dot.src-avor_map,.gps-mast.src-avor_map span{background:#6d3fc0}.gps-dot.src-external_import,.gps-mast.src-external_import span{background:#0f7c86}.gps-dot.src-map,.gps-mast.src-map span{background:#1d7a46}.gps-mast.src-none span{background:#6b7684}.gps-dot.src-pin{background:#9aa3ad}.gps-avor span{display:flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 3px;border-radius:9px;background:#9aa3add9;color:#fff;font:600 10px/1 Inter,system-ui,sans-serif;border:1px solid #fff}.map.placing,.map.placing .leaflet-grab{cursor:crosshair}.banner button.active,.photos-filter button.active{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.banner button{margin:.15rem .2rem 0 0}.afile-candidates{list-style:none;padding-left:0;display:grid;gap:.35rem}.afile-candidates>li{display:flex;flex-wrap:wrap;align-items:center;gap:.2rem .4rem}.afile-candidates>li>span{flex:1 1 16rem;min-width:0}.afile-candidates>li>:is(form,div,table){flex-basis:100%}.gps-modal{height:auto;max-height:96vh}.gps-preview-body{overflow:auto;flex:1;min-height:0;padding:.7rem 1.5rem}.gps-preview-body select{max-width:22rem}.gps-bucket.unique{background:var(--ok-bg);color:var(--ok)}.gps-bucket.guessed{background:var(--warn-bg);color:var(--warn)}.gps-bucket.unmatched{background:var(--err-bg);color:var(--err)}.photos-filter{display:inline-flex;gap:.25rem}.photo-group h3{font-size:.95rem;margin:1rem 0 .5rem}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr));gap:.8rem}.photo-card{margin:0;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden;display:flex;flex-direction:column}.photo-card.st-open{border-color:var(--warn)}.photo-card.st-provisional{border-color:var(--info);border-style:dashed}.photo-card.conflict{border-color:var(--err)}.photo-thumb,.photo-thumb:hover:not(:disabled){display:flex;align-items:center;justify-content:center;height:9rem;padding:0;border:0;border-radius:0;background:var(--surface-2)}.photo-thumb>span{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.photo-thumb img{width:100%;height:100%;object-fit:cover;display:block}.photo-card figcaption{display:flex;flex-direction:column;gap:.2rem;padding:.5rem .6rem;min-width:0}.photo-name,.photo-orig{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.photo-src.src-filename,.photo-src.src-gps{background:var(--ok-bg);color:var(--ok)}.photo-src.src-manual{background:var(--info-bg);color:var(--info)}.photo-edit{display:flex;gap:.3rem;margin-top:.2rem}.photo-edit select{flex:1;min-width:0}.photo-suffix{width:3.6rem}.photo-actions{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.2rem}.photo-viewer{height:auto;max-height:96vh}.photo-viewer-body{flex:1;min-height:0;overflow:auto;display:flex;align-items:center;justify-content:center;padding:.6rem;background:var(--surface-2)}.photo-viewer-body img{max-width:100%;max-height:80vh;object-fit:contain}.badge.sev-error{background:var(--err-bg);color:var(--err)}.badge.sev-warning{background:var(--warn-bg);color:var(--warn)}.badge.marker-add{background:var(--ok-bg);color:var(--ok);margin-right:.2rem}.badge.marker-remove{background:var(--err-bg);color:var(--err);margin-right:.2rem}.badge.marker-keep{margin-right:.2rem}.handover{margin-top:1rem}.handover h3{margin:0 0 .3rem;font-size:1rem}.findings table{margin:.4rem 0}button.danger{background:var(--err);border-color:var(--err);color:#fff}button.danger:hover:not(:disabled){background:var(--surface);color:var(--err);border-color:var(--err)}.handbuch-nav{display:flex;align-items:stretch;gap:.35rem}.topbar nav a.handbuch-work{position:relative;align-self:center;padding:.35rem;border:0;border-radius:50%;color:var(--muted)}.topbar nav a.handbuch-work:hover{background:var(--surface-2);color:var(--accent)}.handbuch-count{position:absolute;top:-.25rem;right:-.35rem;min-width:1.05rem;height:1.05rem;padding:0 .25rem;border-radius:999px;background:var(--brand-red);color:#fff;font-size:.68rem;font-weight:600;line-height:1.05rem;text-align:center;box-shadow:0 0 0 2px var(--surface)}.handbuch-count--inline{position:static;display:inline-block;margin-left:.35rem;vertical-align:.1em;box-shadow:none}.qc-steps td:first-child{white-space:nowrap;font-weight:600;width:9rem}.qc-steps td:nth-child(2){width:6rem}.qc-state{display:inline-block;padding:.05rem .55rem;border-radius:999px;font-size:.78rem;font-weight:600;background:var(--line);color:var(--muted)}.qc-state.qc-done{background:var(--prog-done-hand);color:var(--prog-done-hand-text)}.qc-state.qc-open{background:var(--info-bg);color:var(--prog-active)}.qc-state.qc-stale{background:var(--prog-stale);color:var(--prog-stale-text)}.qc-state.qc-returned{background:var(--err-bg);color:var(--err)}.ai-review{display:flex;flex-direction:column;gap:.6rem}.ai-review .banner{margin:0}.ai-group>summary{cursor:pointer;padding:.3rem 0}.ai-group.ai-muss>summary strong{color:var(--err)}.ai-group.ai-empfohlen>summary strong{color:var(--warn)}.ai-findings{list-style:none;margin:.25rem 0 .5rem;padding:0;display:flex;flex-direction:column;gap:.5rem}.ai-finding{border-left:3px solid var(--line);padding:.35rem 0 .35rem .7rem;display:flex;flex-direction:column;gap:.2rem}.ai-muss .ai-finding.ai-offen{border-left-color:var(--err)}.ai-empfohlen .ai-finding.ai-offen{border-left-color:var(--warn)}.ai-finding:not(.ai-offen){opacity:.8}.ai-quote{font-style:italic;overflow-wrap:anywhere}.ai-proposals{list-style:none;margin:0;padding:0}.ai-decided{color:var(--muted)}.ai-reopened{background:var(--warn-bg);color:var(--warn);margin-left:.4rem}.ai-actions{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.ai-form{display:flex;flex-direction:column;gap:.4rem;max-width:42rem}.ai-done{color:var(--ok);font-weight:600}.avor-overview{display:flex;flex-direction:column;gap:.9rem}.ov-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.ov-head h2{margin:0;font-size:1.1rem}.ov-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.ov-card{display:flex;flex-direction:column;gap:.25rem;margin:0}.ov-card h3{margin:0 0 .35rem;font-size:.98rem}.ov-card h4{margin:.6rem 0 .2rem;font-size:.88rem}.ov-wide{grid-column:1 / -1}.ov-row{display:grid;grid-template-columns:11rem minmax(0,1fr);gap:.6rem;padding:.18rem 0;border-bottom:1px solid var(--surface-2);font-size:.92rem}.ov-row>span:last-child{overflow-wrap:anywhere}.ov-plan{border:0;margin:0;padding:0;min-width:0;display:flex;flex-direction:column;gap:.1rem}.ov-plan .ov-row{align-items:center}.ov-plan .ov-row input,.ov-plan .ov-row select{max-width:16rem;padding-block:.2rem}.ov-checks{display:flex;flex-direction:column;gap:.15rem;padding:.35rem 0;border-bottom:1px solid var(--surface-2)}.ov-checks label{display:inline-flex;align-items:center;gap:.4rem;cursor:pointer}.ov-addr{margin:0 0 .3rem}.ov-location{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:1rem;align-items:start}.ov-map .map{height:26rem;margin:0}.avor-overview .feld-nav{display:flex;gap:.5rem;margin:.5rem 0 .2rem}.avor-overview .feld-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;flex:1;min-height:40px;padding:.4rem .9rem;border-radius:999px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);font-weight:600;text-decoration:none}.avor-overview .feld-btn:hover{border-color:var(--accent);color:var(--accent)}@media(max-width:900px){.ov-grid,.ov-location{grid-template-columns:minmax(0,1fr)}.ov-row{grid-template-columns:8.5rem minmax(0,1fr)}}
