:root{--tws-blau:#0b3d66;--tws-blau-dunkel:#072a47;--tws-akzent:#ffb400;--gruen:#1c8a45;--rot:#c0392b;--bg:#f2f4f7;--karte:#fff;--text:#1a2330;--text-schwach:#5b6675;--rand:#dde3ea;font-synthesis:none}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent;margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:inherit}button{font-family:inherit}.app-shell{background:var(--bg);flex-direction:column;max-width:480px;min-height:100dvh;margin:0 auto;display:flex}.app-shell.breit{max-width:1100px}.topbar{background:var(--tws-blau);color:#fff;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.topbar .marke{letter-spacing:.5px;font-size:1.1rem;font-weight:800}.topbar .nutzer{opacity:.9;align-items:center;gap:10px;font-size:.8rem;display:flex}.topbar button.link{color:#fff;cursor:pointer;background:0 0;border:none;padding:4px;font-size:.8rem;text-decoration:underline}.inhalt{flex-direction:column;flex:1;gap:16px;padding:20px 16px 40px;display:flex}.titel-gross{text-align:center;color:var(--tws-blau-dunkel);letter-spacing:1px;margin:8px 0 4px;font-size:1.6rem;font-weight:800}.btn{cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;gap:10px;width:100%;padding:20px;font-size:1.15rem;font-weight:700;transition:transform 50ms,opacity .15s;display:flex}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-scan{background:var(--tws-akzent);color:var(--tws-blau-dunkel);border-radius:20px;padding:32px;font-size:1.5rem;box-shadow:0 6px 18px #0b3d6640}.btn-primaer{background:var(--tws-blau);color:#fff}.btn-erfolg{background:var(--gruen);color:#fff}.btn-gefahr{background:var(--rot);color:#fff}.btn-sekundaer{color:var(--tws-blau);border:2px solid var(--tws-blau);background:#fff}.btn-klein{border-radius:10px;padding:12px;font-size:.95rem}.grid-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.karte{background:var(--karte);border:1px solid var(--rand);border-radius:16px;flex-direction:column;gap:10px;padding:18px;display:flex}.karte h2{color:var(--tws-blau-dunkel);margin:0;font-size:1.2rem}.zeile{color:var(--text-schwach);justify-content:space-between;font-size:.95rem;display:flex}.zeile b{color:var(--text)}.feld{flex-direction:column;gap:6px;display:flex}.feld label{color:var(--text-schwach);font-size:.85rem;font-weight:600}.feld input,.feld select,.feld textarea{border:1.5px solid var(--rand);color:var(--text);background:#fff;border-radius:10px;padding:14px;font-size:1.05rem}.feld input:focus,.feld select:focus,.feld textarea:focus{outline:2px solid var(--tws-blau)}.fehler{color:var(--rot);background:#fdecea;border:1px solid #f5c2bc;border-radius:10px;padding:12px 14px;font-size:.95rem}.erfolg{color:var(--gruen);background:#e9f7ef;border:1px solid #b9e6c9;border-radius:10px;padding:12px 14px;font-size:.95rem}.hinweis{color:var(--text-schwach);background:#eef3f9;border-radius:10px;padding:12px 14px;font-size:.9rem}.tag{border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:700;display:inline-block}.tag-vollstaendig{color:var(--gruen);background:#e9f7ef}.tag-unvollstaendig{color:#a86a00;background:#fff4e0}.erkennungsstatus{border-radius:10px;padding:10px 12px;font-weight:750}.erkennungsstatus-hoch{color:var(--gruen);background:#e9f7ef}.erkennungsstatus-mittel{color:#8a5a00;background:#fff4e0}.erkennungsstatus-niedrig{color:var(--rot);background:#fdecea}.karte h3{color:var(--text);margin:0;font-size:1.45rem}.video-scan{aspect-ratio:4/3;object-fit:cover;background:#000;border-radius:14px;width:100%}table.tabelle{border-collapse:collapse;width:100%;font-size:.9rem}table.tabelle th,table.tabelle td{text-align:left;border-bottom:1px solid var(--rand);padding:8px 10px}table.tabelle th{color:var(--text-schwach);text-transform:uppercase;font-size:.8rem;font-weight:700}.katalog-filter-zeile{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.katalog-filter select{border:1px solid var(--rand);background:#fff;border-radius:9px;min-width:0;padding:10px}.katalog-check{color:var(--text-schwach);align-items:center;gap:8px;font-size:.9rem;display:flex}.katalog-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.produktkarte{border:1px solid var(--rand);background:#fff;border-radius:16px;flex-direction:column;gap:7px;padding:14px;text-decoration:none;display:flex}.produktkarte h2{color:var(--tws-blau-dunkel);margin:0;font-size:1.1rem}.produktkarte small{color:var(--text-schwach)}.produktmarke{color:var(--tws-blau);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:800}.produktbild{aspect-ratio:4/3;color:var(--text-schwach);background:#f6f8fa;border-radius:12px;justify-content:center;align-items:center;font-size:.8rem;display:flex;overflow:hidden}.produktbild img{object-fit:contain;width:100%;height:100%}.produktbild-gross{max-height:320px}.pagination{justify-content:center;align-items:center;gap:12px;display:flex}.pagination button{padding:9px 12px}.produktdetail h3{margin:10px 0 0}@media (max-width:600px){.katalog-filter-zeile,.katalog-grid{grid-template-columns:1fr}.produktkarte{grid-template-columns:100px 1fr;display:grid}.produktkarte .produktbild{grid-row:1/6}.produktkarte>:not(.produktbild){grid-column:2}.app-shell.breit{max-width:480px}}.nav-desktop{border-bottom:1px solid var(--rand);background:#fff;flex-wrap:wrap;gap:6px;padding:10px 16px;display:flex}.nav-desktop a{color:var(--text-schwach);border-radius:8px;padding:8px 12px;font-size:.85rem;font-weight:600;text-decoration:none}.nav-desktop a.aktiv,.nav-desktop a:hover{background:var(--tws-blau);color:#fff}.rc-version{color:var(--text-schwach);text-align:right;background:#eef3f9;padding:6px 16px;font-size:.78rem;font-weight:700}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.kpi{border:1px solid var(--rand);background:#fff;border-radius:14px;padding:16px}.kpi .wert{color:var(--tws-blau-dunkel);font-size:1.6rem;font-weight:800}.kpi .label{color:var(--text-schwach);font-size:.8rem}.bildvorschlag{gap:.45rem;margin:1rem 0;display:grid}.bildvorschlag img{object-fit:contain;background:#fff;border-radius:12px;width:100%;max-height:260px}.bildauswahl{border:1px solid var(--rand);border-radius:12px;gap:.65rem;margin:1rem 0;padding:1rem;display:grid}.bildauswahl label{align-items:center;gap:.65rem;display:flex}.release-stand{text-align:center;color:var(--text-schwach);margin-top:.5rem;font-size:.72rem;display:block}.artikel-speichern{width:200px;max-width:100%}.ebay-bild{object-fit:contain;background:#fff;width:72px;height:54px}.ebay-tabelle-wrap{overflow-x:auto}.ebay-tabelle-wrap select,.ebay-tabelle-wrap input{max-width:120px;padding:8px}.admin-suche,.suche-layout{width:100%;min-width:0}.suche-layout,.suche-ergebnisse{flex-direction:column;gap:16px;display:flex}.suche-ergebnisse a{color:inherit}.scan-feld-zeile{align-items:stretch;gap:8px;display:flex}.scan-feld-zeile input{flex:1;min-width:0}.scanner-dialog-hintergrund{z-index:1000;background:#041221b8;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.scanner-dialog{width:min(620px,100%);max-height:calc(100dvh - 32px);overflow:auto}.scanner-dialog-kopf{justify-content:space-between;align-items:center;gap:12px;display:flex}.scanner-dialog-kopf h2{margin:0}.seriennummer-liste{flex-direction:column;gap:8px;display:flex}.seriennummer-zeile{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.seriennummer-zeile input{min-width:0}@media (max-width:600px){.artikel-formular-grid{grid-template-columns:minmax(0,1fr)}.artikel-formular-grid,.artikel-formular-grid .feld,.artikel-formular-grid input,.artikel-formular-grid select,.artikel-formular-grid textarea{width:100%;min-width:0;max-width:100%}.artikel-speichern{width:100%}.scan-feld-zeile{grid-template-columns:minmax(0,1fr);display:grid}.scan-feld-zeile .btn{width:100%;min-height:48px}}
