
/* ===== index.php ===== */
:root{--bg:#020202;--panel:#060606;--red:#ff1717;--red2:#b40000;--red3:#4a0000;--text:#ffb1a6;--muted:#83514b;--green:#67ff1c;--yellow:#fff428;--orange:#ff8d23;--blue:#295bff;--line:rgba(255,35,35,.28);--glow:0 0 16px rgba(255,22,22,.65),0 0 42px rgba(255,0,0,.18);--accent:var(--red)}body.mode-karr{--red:#ffe100;--red2:#c79c00;--red3:#5b4600;--text:#ffe8a8;--muted:#9b7c3c;--line:rgba(255,225,0,.32);--glow:0 0 16px rgba(255,225,0,.72),0 0 44px rgba(255,183,0,.24);--accent:var(--red);background:radial-gradient(circle at 50% 18%,rgba(120,92,0,.32),transparent 42%),linear-gradient(180deg,#030303,#000 70%)}body.mode-karr:after{background:repeating-linear-gradient(0deg,rgba(255,221,0,.035),rgba(255,221,0,.035) 1px,transparent 1px,transparent 4px)}body.mode-karr .login{background:linear-gradient(180deg,rgba(28,22,0,.88),rgba(0,0,0,.93))}body.mode-karr .login-logo{filter:drop-shadow(0 0 6px #ffe100) drop-shadow(0 0 18px #ffcc00) drop-shadow(0 0 34px rgba(255,210,0,.78))}*{box-sizing:border-box}html,body{height:100%;margin:0;background:#000;color:var(--text);font-family:Eurostile,Orbitron,Arial,sans-serif;overflow:hidden}body{background:radial-gradient(circle at 50% 18%,rgba(85,0,0,.30),transparent 42%),linear-gradient(180deg,#030303,#000 70%)}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:42px 42px;opacity:.28}body:after{content:"";position:fixed;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,0,0,.035),rgba(255,0,0,.035) 1px,transparent 1px,transparent 4px);mix-blend-mode:screen;opacity:.22}.login-wrap{height:100%;display:grid;place-items:center;padding:30px}.login{width:min(620px,92vw);padding:42px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(20,0,0,.92),rgba(0,0,0,.96));box-shadow:var(--glow);clip-path:polygon(0 8%,6% 0,94% 0,100% 8%,100% 92%,94% 100%,6% 100%,0 92%)}.login-logo{display:block;width:min(430px,82vw);height:auto;margin:0 auto 22px;object-fit:contain;filter:drop-shadow(0 0 6px #ff0000) drop-shadow(0 0 18px #ff0000) drop-shadow(0 0 34px rgba(255,0,0,.75));animation:logoPulse 3.2s ease-in-out infinite}.login p{color:var(--muted);letter-spacing:3px;text-align:center}@keyframes logoPulse{0%,100%{opacity:.82;filter:drop-shadow(0 0 5px #ff0000) drop-shadow(0 0 15px #ff0000) drop-shadow(0 0 25px rgba(255,0,0,.55))}50%{opacity:1;filter:drop-shadow(0 0 10px #ff0000) drop-shadow(0 0 28px #ff0000) drop-shadow(0 0 48px rgba(255,0,0,.9))}}.login input{width:100%;padding:18px 20px;margin:24px 0 18px;background:#050000;border:1px solid var(--line);color:#fff;font-size:20px;outline:none}.login button,.main-btn{cursor:pointer;border:1px solid rgba(255,35,35,.8);background:linear-gradient(180deg,#260000,#090000);color:#ffd2cc;padding:16px 26px;text-transform:uppercase;letter-spacing:3px;font-weight:800;box-shadow:inset 0 0 18px rgba(255,0,0,.22),0 0 18px rgba(255,0,0,.24)}.err{color:#ff3434;font-weight:800;letter-spacing:2px}.login-footer{margin-top:28px;padding-top:22px;border-top:1px solid rgba(255,0,0,.22);text-align:center;color:#777;font-size:12px;line-height:1.65;letter-spacing:.7px}.login-footer-logo{width:220px;max-width:82%;height:auto;display:block;margin:0 auto 14px;opacity:.86;filter:drop-shadow(0 0 8px rgba(255,0,0,.38))}.login-footer-copy{color:#9a8a86;margin-bottom:8px}.login-footer-links{margin:8px 0 10px;color:#555}.login-footer-links a{color:#888;text-decoration:none;transition:.25s}.login-footer-links a:hover{color:var(--red);text-shadow:0 0 10px rgba(255,0,0,.7)}.login-footer-disclaimer{color:#626262;font-size:11px;max-width:820px;margin:0 auto;line-height:1.55}


/* ===== dashboard.php ===== */
@font-face{font-family:'Ruben';src:url('./Ruben.ttf') format('truetype');font-weight:normal;font-style:normal;font-display:swap;}
:root{
  --bg:#020202; --panel:#060606; --red:#ff1717; --red2:#b40000; --red3:#4a0000;
  --text:#ffb1a6; --muted:#83514b; --green:#67ff1c; --yellow:#fff428; --orange:#ff8d23; --blue:#295bff;
  --line:rgba(255,35,35,.28); --glow:0 0 16px rgba(255,22,22,.65),0 0 42px rgba(255,0,0,.18); --accent:var(--red);
}

body.mode-karr{
  --red:#ffe100; --red2:#c79c00; --red3:#5b4600;
  --text:#ffe8a8; --muted:#9b7c3c; --line:rgba(255,225,0,.32);
  --glow:0 0 16px rgba(255,225,0,.72),0 0 44px rgba(255,183,0,.24);
  background:radial-gradient(circle at 50% 18%,rgba(120,92,0,.32),transparent 42%),linear-gradient(180deg,#030303,#000 70%);
}
body.mode-karr:after{background:repeating-linear-gradient(0deg,rgba(255,221,0,.035),rgba(255,221,0,.035) 1px,transparent 1px,transparent 4px)}
body.mode-karr .login,body.mode-karr .panel{background:linear-gradient(180deg,rgba(28,22,0,.88),rgba(0,0,0,.93))}
body.mode-karr .brand-logo,body.mode-karr .login-logo{filter:drop-shadow(0 0 6px #ffe100) drop-shadow(0 0 18px #ffcc00) drop-shadow(0 0 34px rgba(255,210,0,.78))}
body.mode-karr .login-users-title{color:#ffe100;text-shadow:0 0 12px rgba(255,210,0,.65)}body.mode-karr .login-user-row{border-color:rgba(255,225,0,.25)}body.mode-karr .session-top{border-left-color:rgba(255,225,0,.38)}
body.mode-karr .car-svg{filter:drop-shadow(0 0 10px rgba(255,225,0,.82)) hue-rotate(58deg) saturate(1.6)}
body.mode-karr .fill{background:linear-gradient(90deg,var(--red2),#fff04a)}
body.mode-karr .status-row,body.mode-karr .footer-link,body.mode-karr .impressum-link,body.mode-karr .logout-link{color:#ffe100}
body.mode-karr .seg{border-color:rgba(255,225,0,.22)}
body.mode-karr .voicebox.idle .seg{background:linear-gradient(180deg,#3b3200,#141000 58%,#030300);border-color:rgba(255,225,0,.34);box-shadow:inset 0 0 10px rgba(0,0,0,.88),0 0 8px rgba(255,225,0,.22)}
body.mode-karr .voicebox.speaking .seg.low{background:linear-gradient(180deg,#8c7300,#3a3000);box-shadow:0 0 9px rgba(255,225,0,.35),inset 0 0 8px rgba(0,0,0,.45)}
body.mode-karr .voicebox.speaking .seg.mid{background:linear-gradient(180deg,#d9b700,#806900);box-shadow:0 0 13px rgba(255,225,0,.62),0 0 26px rgba(255,183,0,.28)}
body.mode-karr .voicebox.speaking .seg.on{background:linear-gradient(180deg,#fff5a0,#ffe100 48%,#a88700);box-shadow:0 0 18px rgba(255,235,80,.98),0 0 40px rgba(255,210,0,.56)}
body.mode-karr .voicebox.speaking .seg.hot{background:linear-gradient(180deg,#ffffff,#fff6a0 22%,#ffe100 55%,#a88700);box-shadow:0 0 22px rgba(255,245,150,1),0 0 58px rgba(255,225,0,.86),0 0 110px rgba(255,190,0,.52)}
body.mode-karr .voicebox{gap:76px}
body.mode-karr .vcol.side .seg{width:50px}
body.mode-karr .vcol.center-col .seg{width:58px}
body.mode-karr .voicebox.speaking .vcol.side .seg.hot{transform:scaleX(1.10)}
body.mode-karr .voice-panel h2::after{content:' / KARR MATRIX';opacity:.65;margin-left:10px}
body.mode-karr .kitt-scanner i.hot{background:#fff3a0;box-shadow:0 0 10px #fff,0 0 22px #ffe100,0 0 50px rgba(255,210,0,.9)}
body.mode-karr .kitt-scanner i.near{background:#ffe100;box-shadow:0 0 16px rgba(255,225,0,.86),0 0 34px rgba(255,190,0,.48)}
body.mode-karr .kitt-scanner i.warm{background:#d6ad00;box-shadow:0 0 12px rgba(255,225,0,.45)}
body.mode-karr .kitt-scanner i.dim{background:#8c7100;opacity:.62}
body.mode-karr .kitt-scanner i.ghost{background:#463900;opacity:.38}

*{box-sizing:border-box} html,body{height:100%;margin:0;background:#000;color:var(--text);font-family:Eurostile,Orbitron,Arial,sans-serif;overflow:hidden}
body{background:radial-gradient(circle at 50% 18%,rgba(85,0,0,.30),transparent 42%),linear-gradient(180deg,#030303,#000 70%)}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:42px 42px;opacity:.28}
body:after{content:"";position:fixed;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,0,0,.035),rgba(255,0,0,.035) 1px,transparent 1px,transparent 4px);mix-blend-mode:screen;opacity:.22}
.login-wrap{height:100%;display:grid;place-items:center;padding:30px}.login{width:min(620px,92vw);padding:42px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(20,0,0,.92),rgba(0,0,0,.96));box-shadow:var(--glow);clip-path:polygon(0 8%,6% 0,94% 0,100% 8%,100% 92%,94% 100%,6% 100%,0 92%)}
.login-logo{display:block;width:min(430px,82vw);height:auto;margin:0 auto 22px;object-fit:contain;filter:drop-shadow(0 0 6px #ff0000) drop-shadow(0 0 18px #ff0000) drop-shadow(0 0 34px rgba(255,0,0,.75));animation:logoPulse 3.2s ease-in-out infinite}.login p{color:var(--muted);letter-spacing:3px;text-align:center}@keyframes logoPulse{0%,100%{opacity:.82;filter:drop-shadow(0 0 5px #ff0000) drop-shadow(0 0 15px #ff0000) drop-shadow(0 0 25px rgba(255,0,0,.55))}50%{opacity:1;filter:drop-shadow(0 0 10px #ff0000) drop-shadow(0 0 28px #ff0000) drop-shadow(0 0 48px rgba(255,0,0,.9))}}.login input{width:100%;padding:18px 20px;margin:24px 0 18px;background:#050000;border:1px solid var(--line);color:#fff;font-size:20px;outline:none}.login button,.main-btn{cursor:pointer;border:1px solid rgba(255,35,35,.8);background:linear-gradient(180deg,#260000,#090000);color:#ffd2cc;padding:16px 26px;text-transform:uppercase;letter-spacing:3px;font-weight:800;box-shadow:inset 0 0 18px rgba(255,0,0,.22),0 0 18px rgba(255,0,0,.24)}.err{color:#ff3434;font-weight:800;letter-spacing:2px}.login-users{margin-top:26px;border-top:1px solid rgba(255,0,0,.32);padding-top:18px}.login-users-title{font-size:12px;color:#ff4040;letter-spacing:4px;font-weight:900;text-transform:uppercase;margin-bottom:12px;text-align:left;text-shadow:0 0 12px rgba(255,0,0,.65)}.login-user-row{display:grid;grid-template-columns:1.2fr .8fr;gap:12px;align-items:center;padding:10px 12px;margin:8px 0;border:1px solid rgba(255,0,0,.20);background:rgba(0,0,0,.32);font-family:Consolas,monospace;letter-spacing:1.5px;color:#d8aaa4}.login-user-name{text-transform:uppercase;color:#fff}.login-user-time{text-align:right;font-weight:900;color:var(--green);text-shadow:0 0 10px rgba(112,255,35,.55)}.login-user-time.expired{color:#ff3030;text-shadow:0 0 12px rgba(255,0,0,.75)}.login-user-time.warning{color:#ffcf30;text-shadow:0 0 12px rgba(255,207,48,.75)}.login-user-time.unlimited{color:#7cff23}.clock{min-width:340px}.session-top{display:inline-flex;align-items:center;gap:8px;margin-left:14px;padding-left:14px;border-left:1px solid rgba(255,0,0,.35);color:#ffd2cc;letter-spacing:2px}.session-top b{color:#fff}.session-top .timer{color:var(--green);font-weight:900;text-shadow:0 0 12px rgba(112,255,35,.65)}.session-top .timer.warning{color:#ffcf30;text-shadow:0 0 12px rgba(255,207,48,.75)}.session-top .timer.expired{color:#ff3030;text-shadow:0 0 12px rgba(255,0,0,.75)}
.login-note{margin-top:24px;padding:13px 14px;border:1px solid rgba(255,0,0,.22);background:rgba(0,0,0,.32);color:var(--muted);letter-spacing:2px;text-align:center;font-size:13px}
.login-footer{margin-top:28px;padding-top:22px;border-top:1px solid rgba(255,0,0,.22);text-align:center;color:#777;font-size:12px;line-height:1.65;letter-spacing:.7px}.login-footer-logo{width:220px;max-width:82%;height:auto;display:block;margin:0 auto 14px;opacity:.86;filter:drop-shadow(0 0 8px rgba(255,0,0,.38))}.login-footer-copy{color:#9a8a86;margin-bottom:8px}.login-footer-links{margin:8px 0 10px;color:#555}.login-footer-links a{color:#888;text-decoration:none;transition:.25s}.login-footer-links a:hover{color:var(--red);text-shadow:0 0 10px rgba(255,0,0,.7)}.login-footer-disclaimer{color:#626262;font-size:11px;max-width:820px;margin:0 auto;line-height:1.55}
.top-status{display:flex;flex-direction:column;align-items:flex-end;gap:7px}.clock{min-width:0}.session-badge{display:inline-grid;grid-template-columns:auto auto;gap:6px 12px;align-items:center;padding:7px 12px;border:1px solid rgba(255,0,0,.28);background:linear-gradient(180deg,rgba(32,0,0,.55),rgba(0,0,0,.55));box-shadow:inset 0 0 12px rgba(255,0,0,.08);font-family:Consolas,monospace;letter-spacing:2px;font-size:13px;color:#c79088}.session-badge b{color:#fff}.session-badge .timer{color:var(--green);font-size:15px;font-weight:900;text-shadow:0 0 12px rgba(112,255,35,.65)}.session-badge .timer.warning{color:#ffcf30;text-shadow:0 0 12px rgba(255,207,48,.75)}.session-badge .timer.expired{color:#ff3030;text-shadow:0 0 12px rgba(255,0,0,.75)}.mode-karr .session-badge{border-color:rgba(255,225,0,.32);background:linear-gradient(180deg,rgba(40,31,0,.55),rgba(0,0,0,.55))}.admin-page{height:100vh;width:100vw;padding:24px;background:radial-gradient(circle at 50% 10%,rgba(85,0,0,.28),transparent 42%),#000;overflow:auto}.admin-shell{max-width:1180px;margin:0 auto}.admin-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:22px}.admin-head img{height:58px;filter:drop-shadow(0 0 12px #f00)}.admin-head h1{margin:0;color:var(--red);letter-spacing:5px;font-size:24px}.admin-grid{display:grid;grid-template-columns:380px 1fr;gap:22px}.admin-card{border:1px solid var(--line);background:linear-gradient(180deg,rgba(16,0,0,.86),rgba(0,0,0,.94));padding:22px;box-shadow:inset 0 0 24px rgba(255,0,0,.08)}.admin-card h2{margin:0 0 18px;color:var(--red);letter-spacing:4px;font-size:18px}.admin-card input{width:100%;padding:13px 14px;margin:9px 0;background:#050000;border:1px solid var(--line);color:#fff;outline:none}.admin-row{display:grid;grid-template-columns:1.2fr .8fr .7fr auto auto;gap:10px;align-items:center;padding:12px;border:1px solid rgba(255,0,0,.18);margin-bottom:9px;background:rgba(0,0,0,.38)}.admin-row .name{color:#fff;font-weight:900;letter-spacing:2px}.admin-row .meta{color:var(--muted);font-size:12px}.admin-row .time{color:var(--green);font-weight:900}.admin-actions{display:flex;gap:8px}.admin-mini-btn{cursor:pointer;border:1px solid rgba(255,35,35,.55);background:#090000;color:#ffd2cc;padding:8px 10px;letter-spacing:1px;font-weight:800}.admin-top-link{color:var(--red);text-decoration:none;letter-spacing:3px;margin-left:20px}.admin-check{display:flex;align-items:center;gap:10px;color:#d8aaa4;margin:12px 0}.admin-check input{width:auto;margin:0}
.admin-user-list{display:grid;gap:14px}.admin-user-card{border:1px solid rgba(255,0,0,.20);background:rgba(0,0,0,.38);padding:14px}.admin-user-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:12px}.admin-user-head .name{color:#fff;font-weight:900;letter-spacing:2px}.admin-user-head .meta{color:var(--muted);font-size:12px;margin-top:4px}.admin-user-head .time{color:var(--green);font-weight:900;letter-spacing:2px}.admin-edit-grid{display:grid;grid-template-columns:1.2fr .8fr auto;gap:10px;align-items:center}.admin-pass-grid{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;margin-top:10px}.admin-inline-check{display:flex;align-items:center;gap:8px;color:#d8aaa4;font-size:12px;letter-spacing:1px;white-space:nowrap}.admin-inline-check input{width:auto;margin:0}.admin-user-card input{margin:0}.admin-user-card form{margin:0}.admin-danger{border-color:rgba(255,35,35,.70);color:#ff7770}.admin-reset{color:#7cff23;border-color:rgba(124,255,35,.55)}
.footer-admin-link{color:var(--red);text-decoration:none}.dashboard{height:100vh;width:100vw;display:grid;grid-template-rows:84px minmax(0,1fr) 58px;gap:14px;padding:12px 16px 10px;min-width:1180px}
.topbar{position:relative;border-bottom:1px solid var(--line);display:grid;grid-template-columns:320px 1fr 300px;align-items:center}.brand{display:flex;align-items:center;min-width:0}.brand-logo{height:58px;max-width:300px;width:auto;object-fit:contain;filter:drop-shadow(0 0 5px #ff0000) drop-shadow(0 0 15px #ff0000) drop-shadow(0 0 30px rgba(255,0,0,.75));animation:logoPulse 3.2s ease-in-out infinite}.nav{display:flex;justify-content:center;gap:68px;font-size:14px;letter-spacing:4px;color:#9b6a64}.nav b{color:#e8aaa3}.clock{text-align:right;color:var(--red);font-size:22px;letter-spacing:3px}.online{font-size:17px;margin-left:12px}.online:before{content:"";display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--red);box-shadow:var(--glow);margin-right:10px}.top-scanner{position:absolute;left:34%;right:34%;bottom:-22px;height:24px;border:1px solid rgba(255,0,0,.18);overflow:hidden;background:#120000;clip-path:polygon(4% 0,96% 0,100% 50%,96% 100%,4% 100%,0 50%)}.top-scanner span{display:block;width:28%;height:100%;background:linear-gradient(90deg,transparent,var(--red),#fff,var(--red),transparent);filter:blur(1px);animation:scan 2.15s linear infinite}@keyframes scan{0%{transform:translateX(-110%)}100%{transform:translateX(390%)}}
.layout{min-height:0;display:grid;grid-template-columns:31% minmax(460px,38%) 31%;gap:20px}.col{min-height:0;display:grid;gap:16px}.left{grid-template-rows:42% 58%}.right{grid-template-rows:28% 18% 28% 22%}.center{grid-template-rows:minmax(0,1fr) 238px}.panel{position:relative;min-height:0;border:1px solid var(--line);background:linear-gradient(180deg,rgba(11,0,0,.88),rgba(0,0,0,.92));box-shadow:inset 0 0 30px rgba(255,0,0,.07);padding:22px;clip-path:polygon(0 7%,4% 0,96% 0,100% 7%,100% 93%,96% 100%,4% 100%,0 93%)}.panel h2{margin:0 0 18px;color:var(--red);font-size:19px;letter-spacing:3px;text-transform:uppercase;text-shadow:0 0 12px rgba(255,0,0,.7)}
.status-row{display:grid;grid-template-columns:40px 64px 1fr 58px;align-items:center;gap:14px;margin:16px 0;color:#ff3b3b}.ico{width:32px;height:32px;border:1px solid rgba(255,30,30,.32);border-radius:7px;display:grid;place-items:center;color:var(--red)}.bar{height:6px;background:#280000;overflow:hidden}.fill{height:100%;background:linear-gradient(90deg,var(--red2),#ff3434);box-shadow:var(--glow)}
.vehicle-img{height:calc(100% - 82px);min-height:160px;border:1px solid rgba(255,20,20,.14);background:radial-gradient(circle at center,rgba(255,0,0,.14),transparent 62%);display:grid;place-items:center;overflow:hidden}.car-svg{width:94%;height:88%;filter:drop-shadow(0 0 10px rgba(255,0,0,.75))}.tags{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.tag{border:1px solid rgba(255,35,35,.32);padding:12px 6px;text-align:center;color:#ffb5a9;font-weight:800;letter-spacing:1px}.tag span{display:block;color:var(--green);margin-top:8px}
.voice-panel{display:grid;grid-template-rows:auto 1fr auto;place-items:center;padding:24px;overflow:hidden}.voice-panel:before{content:"";position:absolute;inset:55px;background:linear-gradient(rgba(255,0,0,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,0,0,.10) 1px,transparent 1px);background-size:38px 38px;mask-image:radial-gradient(circle,black 45%,transparent 72%);opacity:.55}.voicebox{position:relative;z-index:2;height:min(58vh,620px);width:min(44vw,560px);display:flex;align-items:center;justify-content:center;gap:64px;perspective:700px}.vcol{display:flex;flex-direction:column-reverse;gap:8px}.seg{width:54px;height:18px;border-radius:3px;background:linear-gradient(180deg,#230000,#0b0000 58%,#020000);border:1px solid rgba(255,0,0,.18);box-shadow:inset 0 0 10px rgba(0,0,0,.92),0 0 5px rgba(255,0,0,.10);opacity:.34;filter:brightness(.64);transition:opacity .075s linear,filter .075s linear,background .075s linear,box-shadow .075s linear,transform .075s linear}.vcol.center-col .seg{width:62px}.voicebox.idle .seg{opacity:.58;filter:brightness(.82);background:linear-gradient(180deg,#360000,#120000 58%,#030000);border-color:rgba(255,0,0,.32);box-shadow:inset 0 0 10px rgba(0,0,0,.88),0 0 8px rgba(255,0,0,.20);transform:none}.voicebox.speaking .seg.low{opacity:.70;filter:brightness(1.05);background:linear-gradient(180deg,#780000,#320000);box-shadow:0 0 9px rgba(255,0,0,.32),inset 0 0 8px rgba(0,0,0,.45)}.voicebox.speaking .seg.mid{opacity:.90;filter:brightness(1.45);background:linear-gradient(180deg,#d60000,#740000);box-shadow:0 0 13px rgba(255,0,0,.58),0 0 26px rgba(255,0,0,.24)}.voicebox.speaking .seg.on{opacity:1;filter:brightness(2.05);background:linear-gradient(180deg,#ff7a7a,#ff1010 48%,#a00000);box-shadow:0 0 18px rgba(255,45,45,.95),0 0 40px rgba(255,0,0,.52)}.voicebox.speaking .seg.hot{opacity:1;filter:brightness(2.75);background:linear-gradient(180deg,#ffffff,#ff8f8f 22%,#ff1111 55%,#a00000);box-shadow:0 0 22px rgba(255,120,120,1),0 0 58px rgba(255,0,0,.82),0 0 110px rgba(255,0,0,.48);transform:scaleY(1.12)}
.kitt-title{position:relative;z-index:2;color:var(--red);font-size:70px;font-weight:900;letter-spacing:13px;text-shadow:var(--glow);margin-top:-20px}.state{position:relative;z-index:2;color:var(--green);letter-spacing:4px;font-size:20px;margin-bottom:4px}.terminal{font-family:Consolas,monospace}.terminal h3{margin:0 0 10px;color:var(--red);letter-spacing:3px}.terminal{display:flex;flex-direction:column;justify-content:space-between;overflow:visible}.last-line{font-size:22px;line-height:1.32;color:#ffd0c8;min-height:58px;max-height:88px;overflow:hidden}.cursor{display:inline-block;width:10px;height:24px;background:#ffcac4;vertical-align:-4px;animation:blink .8s steps(1) infinite}@keyframes blink{50%{opacity:0}}
.log{font-family:Consolas,monospace;font-size:16px;line-height:1.65;color:#d98a80;overflow:hidden}.log div:before{content:attr(data-time) " » ";color:#c44}.voice-input{display:grid;align-content:center}.dotline{position:relative;height:44px;margin-top:16px;overflow:hidden}.dotline:before{content:"";position:absolute;left:0;right:0;top:50%;height:3px;background:repeating-linear-gradient(90deg,var(--red) 0 3px,transparent 3px 12px);box-shadow:var(--glow)}.dotline:after{content:"";position:absolute;left:0;right:0;top:0;bottom:0;background:repeating-linear-gradient(90deg,transparent 0 10px,rgba(255,22,22,.95) 10px 13px,transparent 13px 24px);clip-path:polygon(0 50%,4% 35%,8% 62%,12% 28%,16% 70%,20% 42%,24% 57%,28% 22%,32% 76%,36% 48%,40% 60%,44% 35%,48% 67%,52% 25%,56% 73%,60% 44%,64% 58%,68% 30%,72% 70%,76% 50%,80% 38%,84% 64%,88% 30%,92% 72%,96% 43%,100% 50%);opacity:.22;animation:inputWave 1.4s linear infinite}.voice-input.active .dotline:after,.voice-input.listening .dotline:after{opacity:1;animation-duration:.55s;filter:drop-shadow(0 0 10px rgba(255,0,0,.75))}.voice-input.active,.voice-input.listening{box-shadow:inset 0 0 35px rgba(255,0,0,.10)}@keyframes inputWave{0%{transform:translateX(-24px)}100%{transform:translateX(24px)}}.actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.actions button{background:#090000;border:1px solid rgba(255,30,30,.35);color:#ffc0b5;padding:15px 8px;letter-spacing:2px;font-weight:800}.mode{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mode button,.mode a{padding:16px;border:1px solid rgba(255,30,30,.45);background:#070000;color:#b98b84;letter-spacing:3px;font-weight:900;text-align:center;text-decoration:none;display:block}.mode .active{color:#ffdfd8;border-color:var(--red);box-shadow:var(--glow)}
.bottom{position:relative;border-top:1px solid var(--line);display:flex;align-items:center;color:#8d5e58;letter-spacing:4px;padding:0 28px;box-sizing:border-box;overflow:hidden;gap:24px}.voice-control{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:var(--green);font-size:18px;text-align:center;text-shadow:0 0 12px rgba(100,255,0,.5);white-space:nowrap;pointer-events:none}.footer-nav{display:flex;align-items:center;white-space:nowrap}.footer-left{justify-content:flex-start;gap:70px;min-width:420px;overflow:hidden}.footer-right{margin-left:auto;justify-content:flex-end;gap:54px;text-align:right;padding-right:12px;min-width:560px}.footer-link,.impressum-link,.logout-link{color:#ff3030;text-decoration:none;font-size:12px;letter-spacing:3px;text-shadow:0 0 10px rgba(255,0,0,.45);transition:.25s;text-transform:uppercase}.footer-link:hover,.impressum-link:hover,.logout-link:hover{color:#fff;text-shadow:0 0 10px #ff0000,0 0 22px #ff0000}.logout-link{font-weight:900}.sr-debug{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.redwave{color:var(--red);font-family:Consolas,monospace}.hidden-widget{position:absolute;left:-10000px;top:-10000px;width:1px;height:1px;opacity:0;pointer-events:none}.system-panel{position:relative;width:auto;min-height:0;padding:18px 18px 16px;z-index:1;border:1px solid rgba(255,0,0,.34);background:linear-gradient(180deg,rgba(24,0,0,.74),rgba(0,0,0,.86));box-shadow:inset 0 0 22px rgba(255,0,0,.10),0 0 20px rgba(255,0,0,.12);clip-path:polygon(0 12%,8% 0,92% 0,100% 12%,100% 88%,92% 100%,8% 100%,0 88%);backdrop-filter:blur(8px);overflow:hidden}.system-panel:before{content:"";position:absolute;left:18px;right:18px;top:49px;height:1px;background:linear-gradient(90deg,transparent,#ff2020,transparent);opacity:.65}.system-title{color:#ff4040;font-size:13px;letter-spacing:4px;font-weight:900;margin-bottom:18px;text-shadow:0 0 12px rgba(255,0,0,.7);text-transform:uppercase}.system-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:4px 0 12px}.system-item{display:flex;align-items:center;justify-content:center;gap:7px;min-height:34px;border:1px solid rgba(255,0,0,.20);background:rgba(0,0,0,.28);color:#d7aaa3;font-size:10px;letter-spacing:1.5px;text-transform:uppercase}.status-dot{width:7px;height:7px;border-radius:50%;background:#ff2020;box-shadow:0 0 8px #ff0000,0 0 18px rgba(255,0,0,.8);animation:dotPulse 1.8s ease-in-out infinite}.system-message{min-height:34px;margin:10px 0 12px;padding:9px 10px;border:1px solid rgba(255,0,0,.22);background:rgba(0,0,0,.42);font-family:Consolas,monospace;color:#b87972;font-size:11px;line-height:1.3;letter-spacing:1px;overflow:hidden}.logout-btn{display:block;width:100%;padding:12px 8px;text-align:center;border:1px solid rgba(255,48,48,.78);background:linear-gradient(180deg,#240000,#080000);color:#ff7770;text-decoration:none;font-size:12px;font-weight:900;letter-spacing:4px;transition:.22s;box-shadow:inset 0 0 16px rgba(255,0,0,.16);box-sizing:border-box}.logout-btn:hover{background:#ff2020;color:#fff;box-shadow:0 0 12px #ff0000,0 0 28px rgba(255,0,0,.7)}@keyframes dotPulse{0%,100%{opacity:.55;filter:brightness(.9)}50%{opacity:1;filter:brightness(1.8)}}.main-btn{width:100%;margin-top:16px;min-height:54px;flex-shrink:0}.muted{color:#7c514c}.large-only{display:block}

/* KITT-style top scanner: discrete red segments with a real left-right-left sweep */
.top-scanner.kitt-scanner{left:32%;right:32%;bottom:-23px;height:26px;padding:4px 18px;display:grid;grid-template-columns:repeat(16,1fr);gap:5px;background:linear-gradient(180deg,#160000,#050000);border:1px solid rgba(255,0,0,.24);box-shadow:inset 0 0 18px rgba(255,0,0,.20),0 0 28px rgba(255,0,0,.12);clip-path:polygon(7% 0,93% 0,100% 50%,93% 100%,7% 100%,0 50%)}
.top-scanner.kitt-scanner span{display:none}
.top-scanner.kitt-scanner i{display:block;height:100%;border-radius:2px;background:#140000;box-shadow:inset 0 0 8px rgba(0,0,0,.9);filter:brightness(.42);opacity:.55;transition:background .055s linear, box-shadow .055s linear, filter .055s linear, opacity .055s linear}
.top-scanner.kitt-scanner i.hot{background:linear-gradient(180deg,#ff7777,#ff1b1b 48%,#9d0000);box-shadow:0 0 10px rgba(255,70,70,1),0 0 24px rgba(255,0,0,.95),0 0 58px rgba(255,0,0,.42);filter:brightness(2.45);opacity:1}
.top-scanner.kitt-scanner i.near{background:linear-gradient(180deg,#ff3a3a,#e80000 52%,#6d0000);box-shadow:0 0 9px rgba(255,0,0,.85),0 0 30px rgba(255,0,0,.38);filter:brightness(1.85);opacity:.95}
.top-scanner.kitt-scanner i.warm{background:#b80000;box-shadow:0 0 8px rgba(255,0,0,.62),0 0 18px rgba(255,0,0,.25);filter:brightness(1.35);opacity:.84}
.top-scanner.kitt-scanner i.dim{background:#690000;box-shadow:0 0 7px rgba(255,0,0,.34);filter:brightness(.98);opacity:.72}
.top-scanner.kitt-scanner i.ghost{background:#350000;box-shadow:0 0 4px rgba(255,0,0,.20);filter:brightness(.78);opacity:.62}
.vehicle-img.real-panel{position:absolute;inset:18px;border:0;background:#020000;display:grid;place-items:center;overflow:hidden;padding:0;box-shadow:inset 0 0 40px rgba(255,0,0,.10),0 0 18px rgba(255,0,0,.08)}
.vehicle-img.real-panel img{width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 0 10px rgba(255,0,0,.35));opacity:.96}
.vehicle{overflow:hidden;padding:0}.vehicle .tags{display:none}


.session-info{margin-left:18px;color:#ffe2dc;font-size:11px;letter-spacing:2px;opacity:.9}.mode-karr .session-info{color:#fff3a0}#sessionCountdown{color:var(--green);font-weight:900;text-shadow:0 0 12px rgba(100,255,25,.75)}

@media(max-width:1350px){.dashboard{min-width:1000px}.nav{gap:38px}.kitt-title{font-size:52px}.voicebox{gap:42px}.seg{width:42px;height:15px}.vcol.center-col .seg{width:50px}.status-row{grid-template-columns:34px 54px 1fr 48px;gap:10px}.panel{padding:16px}.last-line{font-size:19px}}

/* ==================================================
   Compact Dashboard Layout Fix
   Für kleinere Displays / Edge-App-Modus / EliteBook
   ================================================== */
@media (max-width:1700px){
  html,body{overflow:hidden;}
  .dashboard{
    min-width:0;
    grid-template-rows:78px minmax(0,1fr) 54px;
    gap:10px;
    padding:10px 12px 8px;
  }
  .topbar{
    grid-template-columns:300px 1fr 230px;
  }
  .brand-logo{
    height:54px;
    max-width:285px;
  }
  .nav{
    gap:44px;
    font-size:13px;
    letter-spacing:4px;
  }
  .top-status{
    gap:5px;
  }
  .clock{
    font-size:19px;
  }
  .nav{
    display:flex;
    gap:18px;
    align-items:center;
}

.nav a{
    font-family:'Ruben', sans-serif;
    font-weight:700; /* Fett */
    font-size:14px;

    color:#b8a7a2;
    text-decoration:none;

    letter-spacing:2px;
    text-transform:uppercase;

    transition:all .25s ease;
}
.nav a:hover{
    color:var(--accent);

    text-shadow:
        0 0 6px var(--accent),
        0 0 12px var(--accent);
}

.nav a:hover{
    color:var(--red);

    text-shadow:
        0 0 6px rgba(255,0,0,.7),
        0 0 12px rgba(255,0,0,.4);
}
  .session-badge{
    padding:6px 10px;
    font-size:11px;
    gap:5px 9px;
    letter-spacing:1.6px;
  }
  .session-badge .timer{
    font-size:13px;
  }
  .top-scanner.kitt-scanner{
    left:32%;
    right:32%;
    height:22px;
    bottom:-19px;
    gap:4px;
  }
  .layout{
    grid-template-columns:28% minmax(390px,44%) 28%;
    gap:14px;
    min-width:0;
  }
  .panel{
    padding:15px;
  }
  .panel h2{
    font-size:18px;
    margin-bottom:14px;
  }
  .left{
    grid-template-rows:39% 61%;
  }
  .right{
    grid-template-rows:25% 17% 27% 31%;
  }
  .center{
    grid-template-rows:minmax(0,1fr) 224px;
  }
  .status-row{
    grid-template-columns:32px 58px 1fr 52px;
    gap:10px;
    margin:13px 0;
    font-size:14px;
  }
  .ico{
    width:28px;
    height:28px;
  }
  .vehicle-img.real-panel{
    inset:14px;
  }
  .voicebox{
    width:min(34vw,430px);
    height:min(52vh,460px);
    gap:42px;
  }
  .seg{
    width:42px;
    height:14px;
  }
  .vcol.center-col .seg{
    width:50px;
  }
  .kitt-title{
    font-size:48px;
    letter-spacing:10px;
  }
  .state{
    font-size:16px;
  }
  .last-line{
    font-size:19px;
    min-height:52px;
    max-height:78px;
  }
  .main-btn{
    min-height:50px;
    padding:13px 20px;
  }
  .actions{
    gap:10px;
  }
  .actions button{
    padding:13px 6px;
    font-size:12px;
  }
  .mode button,.mode a{
    padding:14px 8px;
  }
  .bottom{
    padding:0 20px;
    gap:16px;
  }
  .footer-left,
  .footer-right{
    min-width:0;
  }
  .footer-left{
    gap:48px;
  }
  .footer-right{
    gap:38px;
    padding-right:0;
  }
  .voice-control{
    display:none;
  }
}

@media (max-width:1450px){
  .dashboard{
    grid-template-rows:72px minmax(0,1fr) 50px;
    gap:8px;
    padding:8px 10px 6px;
  }
  .topbar{
    grid-template-columns:250px 1fr 210px;
  }
  .brand-logo{
    height:46px;
    max-width:240px;
  }
  .nav{
    gap:28px;
    font-size:12px;
    letter-spacing:3px;
  }
  .clock{
    font-size:17px;
  }
  .layout{
    grid-template-columns:30% minmax(360px,40%) 30%;
    gap:10px;
  }
  .panel{
    padding:13px;
  }
  .voicebox{
    width:min(34vw,370px);
    height:min(48vh,380px);
    gap:34px;
  }
  .seg{
    width:36px;
    height:12px;
  }
  .vcol.center-col .seg{
    width:44px;
  }
  .kitt-title{
    font-size:42px;
    letter-spacing:8px;
  }
  .last-line{
    font-size:17px;
  }
  .footer-left{
    gap:36px;
  }
  .footer-right{
    gap:28px;
  }
  .footer-link,.impressum-link,.logout-link,.footer-admin-link{
    font-size:11px;
    letter-spacing:2.4px;
  }
}

@media (max-height:900px){
  .dashboard{
    grid-template-rows:72px minmax(0,1fr) 50px;
    gap:8px;
  }
  .topbar{
    min-height:0;
  }
  .panel{
    padding:13px;
  }
  .panel h2{
    font-size:17px;
    margin-bottom:12px;
  }
  .center{
    grid-template-rows:minmax(0,1fr) 206px;
  }
  .voicebox{
    height:min(46vh,360px);
  }
  .kitt-title{
    font-size:42px;
    margin-top:-12px;
  }
  .state{
    font-size:15px;
  }
  .terminal h3{
    margin-bottom:8px;
  }
  .last-line{
    min-height:46px;
    max-height:70px;
  }
  .main-btn{
    min-height:46px;
    margin-top:10px;
  }
  .status-row{
    margin:10px 0;
  }
}

@media (max-height:780px){
  .right{
    grid-template-rows:22% 16% 25% 37%;
  }
  .left{
    grid-template-rows:36% 64%;
  }
  .voicebox{
    height:min(42vh,310px);
  }
  .vcol{
    gap:6px;
  }
  .seg{
    height:10px;
  }
  .kitt-title{
    font-size:36px;
  }
}


/* Footer Compact Fix v28 */
@media (max-width:1700px){
  .bottom{
    display:grid;
    grid-template-columns:auto 1fr;
    align-items:center;
    padding:0 22px;
    gap:18px;
  }
  .voice-control{
    display:none !important;
  }
  .footer-left{
    min-width:0;
    justify-content:flex-start;
    gap:42px;
    overflow:hidden;
  }
  .footer-right{
    min-width:0;
    margin-left:0;
    justify-content:flex-end;
    justify-self:end;
    gap:34px;
    padding-right:0;
  }
}

@media (max-width:1550px){
  .bottom{
    padding:0 18px;
  }
  .footer-left{
    gap:34px;
  }
  .footer-right{
    gap:26px;
  }
  .footer-left span,
  .footer-right span,
  .footer-admin-link,
  .impressum-link,
  .logout-link{
    font-size:11px;
    letter-spacing:2.4px;
  }
  .footer-right span:nth-of-type(1),
  .footer-right span:nth-of-type(2){
    display:none;
  }
}

@media (max-width:1350px){
  .bottom{
    grid-template-columns:1fr auto;
    padding:0 14px;
  }
  .footer-left{
    gap:24px;
  }
  .footer-left span:nth-child(n+3){
    display:none;
  }
  .footer-right{
    gap:20px;
  }
}

@media (max-height:820px){
  .bottom{
    height:46px;
    padding-top:0;
    padding-bottom:0;
  }
  .footer-left span,
  .footer-admin-link,
  .impressum-link,
  .logout-link{
    font-size:10px;
    letter-spacing:2.2px;
  }
}


/* ===== admin.php ===== */
@font-face{font-family:'Ruben';src:url('./Ruben.ttf') format('truetype');font-weight:normal;font-style:normal;font-display:swap;}
:root{
  --bg:#020202; --panel:#060606; --red:#ff1717; --red2:#b40000; --red3:#4a0000;
  --text:#ffb1a6; --muted:#83514b; --green:#67ff1c; --yellow:#fff428; --orange:#ff8d23; --blue:#295bff;
  --line:rgba(255,35,35,.28); --glow:0 0 16px rgba(255,22,22,.65),0 0 42px rgba(255,0,0,.18); --accent:var(--red);
}

body.mode-karr{
  --red:#ffe100; --red2:#c79c00; --red3:#5b4600;
  --text:#ffe8a8; --muted:#9b7c3c; --line:rgba(255,225,0,.32);
  --glow:0 0 16px rgba(255,225,0,.72),0 0 44px rgba(255,183,0,.24);
  background:radial-gradient(circle at 50% 18%,rgba(120,92,0,.32),transparent 42%),linear-gradient(180deg,#030303,#000 70%);
}
body.mode-karr:after{background:repeating-linear-gradient(0deg,rgba(255,221,0,.035),rgba(255,221,0,.035) 1px,transparent 1px,transparent 4px)}
body.mode-karr .login,body.mode-karr .panel{background:linear-gradient(180deg,rgba(28,22,0,.88),rgba(0,0,0,.93))}
body.mode-karr .brand-logo,body.mode-karr .login-logo{filter:drop-shadow(0 0 6px #ffe100) drop-shadow(0 0 18px #ffcc00) drop-shadow(0 0 34px rgba(255,210,0,.78))}
body.mode-karr .login-users-title{color:#ffe100;text-shadow:0 0 12px rgba(255,210,0,.65)}body.mode-karr .login-user-row{border-color:rgba(255,225,0,.25)}body.mode-karr .session-top{border-left-color:rgba(255,225,0,.38)}
body.mode-karr .car-svg{filter:drop-shadow(0 0 10px rgba(255,225,0,.82)) hue-rotate(58deg) saturate(1.6)}
body.mode-karr .fill{background:linear-gradient(90deg,var(--red2),#fff04a)}
body.mode-karr .status-row,body.mode-karr .footer-link,body.mode-karr .impressum-link,body.mode-karr .logout-link{color:#ffe100}
body.mode-karr .seg{border-color:rgba(255,225,0,.22)}
body.mode-karr .voicebox.idle .seg{background:linear-gradient(180deg,#3b3200,#141000 58%,#030300);border-color:rgba(255,225,0,.34);box-shadow:inset 0 0 10px rgba(0,0,0,.88),0 0 8px rgba(255,225,0,.22)}
body.mode-karr .voicebox.speaking .seg.low{background:linear-gradient(180deg,#8c7300,#3a3000);box-shadow:0 0 9px rgba(255,225,0,.35),inset 0 0 8px rgba(0,0,0,.45)}
body.mode-karr .voicebox.speaking .seg.mid{background:linear-gradient(180deg,#d9b700,#806900);box-shadow:0 0 13px rgba(255,225,0,.62),0 0 26px rgba(255,183,0,.28)}
body.mode-karr .voicebox.speaking .seg.on{background:linear-gradient(180deg,#fff5a0,#ffe100 48%,#a88700);box-shadow:0 0 18px rgba(255,235,80,.98),0 0 40px rgba(255,210,0,.56)}
body.mode-karr .voicebox.speaking .seg.hot{background:linear-gradient(180deg,#ffffff,#fff6a0 22%,#ffe100 55%,#a88700);box-shadow:0 0 22px rgba(255,245,150,1),0 0 58px rgba(255,225,0,.86),0 0 110px rgba(255,190,0,.52)}
body.mode-karr .voicebox{gap:76px}
body.mode-karr .vcol.side .seg{width:50px}
body.mode-karr .vcol.center-col .seg{width:58px}
body.mode-karr .voicebox.speaking .vcol.side .seg.hot{transform:scaleX(1.10)}
body.mode-karr .voice-panel h2::after{content:' / KARR MATRIX';opacity:.65;margin-left:10px}
body.mode-karr .kitt-scanner i.hot{background:#fff3a0;box-shadow:0 0 10px #fff,0 0 22px #ffe100,0 0 50px rgba(255,210,0,.9)}
body.mode-karr .kitt-scanner i.near{background:#ffe100;box-shadow:0 0 16px rgba(255,225,0,.86),0 0 34px rgba(255,190,0,.48)}
body.mode-karr .kitt-scanner i.warm{background:#d6ad00;box-shadow:0 0 12px rgba(255,225,0,.45)}
body.mode-karr .kitt-scanner i.dim{background:#8c7100;opacity:.62}
body.mode-karr .kitt-scanner i.ghost{background:#463900;opacity:.38}

*{box-sizing:border-box} html,body{height:100%;margin:0;background:#000;color:var(--text);font-family:Eurostile,Orbitron,Arial,sans-serif;overflow:hidden}
body{background:radial-gradient(circle at 50% 18%,rgba(85,0,0,.30),transparent 42%),linear-gradient(180deg,#030303,#000 70%)}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:42px 42px;opacity:.28}
body:after{content:"";position:fixed;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,0,0,.035),rgba(255,0,0,.035) 1px,transparent 1px,transparent 4px);mix-blend-mode:screen;opacity:.22}
.login-wrap{height:100%;display:grid;place-items:center;padding:30px}.login{width:min(620px,92vw);padding:42px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(20,0,0,.92),rgba(0,0,0,.96));box-shadow:var(--glow);clip-path:polygon(0 8%,6% 0,94% 0,100% 8%,100% 92%,94% 100%,6% 100%,0 92%)}
.login-logo{display:block;width:min(430px,82vw);height:auto;margin:0 auto 22px;object-fit:contain;filter:drop-shadow(0 0 6px #ff0000) drop-shadow(0 0 18px #ff0000) drop-shadow(0 0 34px rgba(255,0,0,.75));animation:logoPulse 3.2s ease-in-out infinite}.login p{color:var(--muted);letter-spacing:3px;text-align:center}@keyframes logoPulse{0%,100%{opacity:.82;filter:drop-shadow(0 0 5px #ff0000) drop-shadow(0 0 15px #ff0000) drop-shadow(0 0 25px rgba(255,0,0,.55))}50%{opacity:1;filter:drop-shadow(0 0 10px #ff0000) drop-shadow(0 0 28px #ff0000) drop-shadow(0 0 48px rgba(255,0,0,.9))}}.login input{width:100%;padding:18px 20px;margin:24px 0 18px;background:#050000;border:1px solid var(--line);color:#fff;font-size:20px;outline:none}.login button,.main-btn{cursor:pointer;border:1px solid rgba(255,35,35,.8);background:linear-gradient(180deg,#260000,#090000);color:#ffd2cc;padding:16px 26px;text-transform:uppercase;letter-spacing:3px;font-weight:800;box-shadow:inset 0 0 18px rgba(255,0,0,.22),0 0 18px rgba(255,0,0,.24)}.err{color:#ff3434;font-weight:800;letter-spacing:2px}.login-users{margin-top:26px;border-top:1px solid rgba(255,0,0,.32);padding-top:18px}.login-users-title{font-size:12px;color:#ff4040;letter-spacing:4px;font-weight:900;text-transform:uppercase;margin-bottom:12px;text-align:left;text-shadow:0 0 12px rgba(255,0,0,.65)}.login-user-row{display:grid;grid-template-columns:1.2fr .8fr;gap:12px;align-items:center;padding:10px 12px;margin:8px 0;border:1px solid rgba(255,0,0,.20);background:rgba(0,0,0,.32);font-family:Consolas,monospace;letter-spacing:1.5px;color:#d8aaa4}.login-user-name{text-transform:uppercase;color:#fff}.login-user-time{text-align:right;font-weight:900;color:var(--green);text-shadow:0 0 10px rgba(112,255,35,.55)}.login-user-time.expired{color:#ff3030;text-shadow:0 0 12px rgba(255,0,0,.75)}.login-user-time.warning{color:#ffcf30;text-shadow:0 0 12px rgba(255,207,48,.75)}.login-user-time.unlimited{color:#7cff23}.clock{min-width:340px}.session-top{display:inline-flex;align-items:center;gap:8px;margin-left:14px;padding-left:14px;border-left:1px solid rgba(255,0,0,.35);color:#ffd2cc;letter-spacing:2px}.session-top b{color:#fff}.session-top .timer{color:var(--green);font-weight:900;text-shadow:0 0 12px rgba(112,255,35,.65)}.session-top .timer.warning{color:#ffcf30;text-shadow:0 0 12px rgba(255,207,48,.75)}.session-top .timer.expired{color:#ff3030;text-shadow:0 0 12px rgba(255,0,0,.75)}
.login-note{margin-top:24px;padding:13px 14px;border:1px solid rgba(255,0,0,.22);background:rgba(0,0,0,.32);color:var(--muted);letter-spacing:2px;text-align:center;font-size:13px}
.login-footer{margin-top:28px;padding-top:22px;border-top:1px solid rgba(255,0,0,.22);text-align:center;color:#777;font-size:12px;line-height:1.65;letter-spacing:.7px}.login-footer-logo{width:220px;max-width:82%;height:auto;display:block;margin:0 auto 14px;opacity:.86;filter:drop-shadow(0 0 8px rgba(255,0,0,.38))}.login-footer-copy{color:#9a8a86;margin-bottom:8px}.login-footer-links{margin:8px 0 10px;color:#555}.login-footer-links a{color:#888;text-decoration:none;transition:.25s}.login-footer-links a:hover{color:var(--red);text-shadow:0 0 10px rgba(255,0,0,.7)}.login-footer-disclaimer{color:#626262;font-size:11px;max-width:820px;margin:0 auto;line-height:1.55}
.top-status{display:flex;flex-direction:column;align-items:flex-end;gap:7px}.clock{min-width:0}.session-badge{display:inline-grid;grid-template-columns:auto auto;gap:6px 12px;align-items:center;padding:7px 12px;border:1px solid rgba(255,0,0,.28);background:linear-gradient(180deg,rgba(32,0,0,.55),rgba(0,0,0,.55));box-shadow:inset 0 0 12px rgba(255,0,0,.08);font-family:Consolas,monospace;letter-spacing:2px;font-size:13px;color:#c79088}.session-badge b{color:#fff}.session-badge .timer{color:var(--green);font-size:15px;font-weight:900;text-shadow:0 0 12px rgba(112,255,35,.65)}.session-badge .timer.warning{color:#ffcf30;text-shadow:0 0 12px rgba(255,207,48,.75)}.session-badge .timer.expired{color:#ff3030;text-shadow:0 0 12px rgba(255,0,0,.75)}.mode-karr .session-badge{border-color:rgba(255,225,0,.32);background:linear-gradient(180deg,rgba(40,31,0,.55),rgba(0,0,0,.55))}.admin-page{height:100vh;width:100vw;padding:24px;background:radial-gradient(circle at 50% 10%,rgba(85,0,0,.28),transparent 42%),#000;overflow:auto}.admin-shell{max-width:1180px;margin:0 auto}.admin-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:22px}.admin-head img{height:58px;filter:drop-shadow(0 0 12px #f00)}.admin-head h1{margin:0;color:var(--red);letter-spacing:5px;font-size:24px}.admin-grid{display:grid;grid-template-columns:380px 1fr;gap:22px}.admin-card{border:1px solid var(--line);background:linear-gradient(180deg,rgba(16,0,0,.86),rgba(0,0,0,.94));padding:22px;box-shadow:inset 0 0 24px rgba(255,0,0,.08)}.admin-card h2{margin:0 0 18px;color:var(--red);letter-spacing:4px;font-size:18px}.admin-card input{width:100%;padding:13px 14px;margin:9px 0;background:#050000;border:1px solid var(--line);color:#fff;outline:none}.admin-row{display:grid;grid-template-columns:1.2fr .8fr .7fr auto auto;gap:10px;align-items:center;padding:12px;border:1px solid rgba(255,0,0,.18);margin-bottom:9px;background:rgba(0,0,0,.38)}.admin-row .name{color:#fff;font-weight:900;letter-spacing:2px}.admin-row .meta{color:var(--muted);font-size:12px}.admin-row .time{color:var(--green);font-weight:900}.admin-actions{display:flex;gap:8px}.admin-mini-btn{cursor:pointer;border:1px solid rgba(255,35,35,.55);background:#090000;color:#ffd2cc;padding:8px 10px;letter-spacing:1px;font-weight:800}.admin-top-link{color:var(--red);text-decoration:none;letter-spacing:3px;margin-left:20px}.admin-check{display:flex;align-items:center;gap:10px;color:#d8aaa4;margin:12px 0}.admin-check input{width:auto;margin:0}
.admin-user-list{display:grid;gap:14px}.admin-user-card{border:1px solid rgba(255,0,0,.20);background:rgba(0,0,0,.38);padding:14px}.admin-user-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:12px}.admin-user-head .name{color:#fff;font-weight:900;letter-spacing:2px}.admin-user-head .meta{color:var(--muted);font-size:12px;margin-top:4px}.admin-user-head .time{color:var(--green);font-weight:900;letter-spacing:2px}.admin-edit-grid{display:grid;grid-template-columns:1.2fr .8fr auto;gap:10px;align-items:center}.admin-pass-grid{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;margin-top:10px}.admin-inline-check{display:flex;align-items:center;gap:8px;color:#d8aaa4;font-size:12px;letter-spacing:1px;white-space:nowrap}.admin-inline-check input{width:auto;margin:0}.admin-user-card input{margin:0}.admin-user-card form{margin:0}.admin-danger{border-color:rgba(255,35,35,.70);color:#ff7770}.admin-reset{color:#7cff23;border-color:rgba(124,255,35,.55)}
.footer-admin-link{color:var(--red);text-decoration:none}.dashboard{height:100vh;width:100vw;display:grid;grid-template-rows:84px minmax(0,1fr) 58px;gap:14px;padding:12px 16px 10px;min-width:1180px}
.topbar{position:relative;border-bottom:1px solid var(--line);display:grid;grid-template-columns:320px 1fr 300px;align-items:center}.brand{display:flex;align-items:center;min-width:0}.brand-logo{height:58px;max-width:300px;width:auto;object-fit:contain;filter:drop-shadow(0 0 5px #ff0000) drop-shadow(0 0 15px #ff0000) drop-shadow(0 0 30px rgba(255,0,0,.75));animation:logoPulse 3.2s ease-in-out infinite}.nav{display:flex;justify-content:center;gap:68px;font-size:14px;letter-spacing:4px;color:#9b6a64}.nav b{color:#e8aaa3}.clock{text-align:right;color:var(--red);font-size:22px;letter-spacing:3px}.online{font-size:17px;margin-left:12px}.online:before{content:"";display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--red);box-shadow:var(--glow);margin-right:10px}.top-scanner{position:absolute;left:34%;right:34%;bottom:-22px;height:24px;border:1px solid rgba(255,0,0,.18);overflow:hidden;background:#120000;clip-path:polygon(4% 0,96% 0,100% 50%,96% 100%,4% 100%,0 50%)}.top-scanner span{display:block;width:28%;height:100%;background:linear-gradient(90deg,transparent,var(--red),#fff,var(--red),transparent);filter:blur(1px);animation:scan 2.15s linear infinite}@keyframes scan{0%{transform:translateX(-110%)}100%{transform:translateX(390%)}}
.layout{min-height:0;display:grid;grid-template-columns:31% minmax(460px,38%) 31%;gap:20px}.col{min-height:0;display:grid;gap:16px}.left{grid-template-rows:42% 58%}.right{grid-template-rows:28% 18% 28% 22%}.center{grid-template-rows:minmax(0,1fr) 238px}.panel{position:relative;min-height:0;border:1px solid var(--line);background:linear-gradient(180deg,rgba(11,0,0,.88),rgba(0,0,0,.92));box-shadow:inset 0 0 30px rgba(255,0,0,.07);padding:22px;clip-path:polygon(0 7%,4% 0,96% 0,100% 7%,100% 93%,96% 100%,4% 100%,0 93%)}.panel h2{margin:0 0 18px;color:var(--red);font-size:19px;letter-spacing:3px;text-transform:uppercase;text-shadow:0 0 12px rgba(255,0,0,.7)}
.status-row{display:grid;grid-template-columns:40px 64px 1fr 58px;align-items:center;gap:14px;margin:16px 0;color:#ff3b3b}.ico{width:32px;height:32px;border:1px solid rgba(255,30,30,.32);border-radius:7px;display:grid;place-items:center;color:var(--red)}.bar{height:6px;background:#280000;overflow:hidden}.fill{height:100%;background:linear-gradient(90deg,var(--red2),#ff3434);box-shadow:var(--glow)}
.vehicle-img{height:calc(100% - 82px);min-height:160px;border:1px solid rgba(255,20,20,.14);background:radial-gradient(circle at center,rgba(255,0,0,.14),transparent 62%);display:grid;place-items:center;overflow:hidden}.car-svg{width:94%;height:88%;filter:drop-shadow(0 0 10px rgba(255,0,0,.75))}.tags{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.tag{border:1px solid rgba(255,35,35,.32);padding:12px 6px;text-align:center;color:#ffb5a9;font-weight:800;letter-spacing:1px}.tag span{display:block;color:var(--green);margin-top:8px}
.voice-panel{display:grid;grid-template-rows:auto 1fr auto;place-items:center;padding:24px;overflow:hidden}.voice-panel:before{content:"";position:absolute;inset:55px;background:linear-gradient(rgba(255,0,0,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,0,0,.10) 1px,transparent 1px);background-size:38px 38px;mask-image:radial-gradient(circle,black 45%,transparent 72%);opacity:.55}.voicebox{position:relative;z-index:2;height:min(58vh,620px);width:min(44vw,560px);display:flex;align-items:center;justify-content:center;gap:64px;perspective:700px}.vcol{display:flex;flex-direction:column-reverse;gap:8px}.seg{width:54px;height:18px;border-radius:3px;background:linear-gradient(180deg,#230000,#0b0000 58%,#020000);border:1px solid rgba(255,0,0,.18);box-shadow:inset 0 0 10px rgba(0,0,0,.92),0 0 5px rgba(255,0,0,.10);opacity:.34;filter:brightness(.64);transition:opacity .075s linear,filter .075s linear,background .075s linear,box-shadow .075s linear,transform .075s linear}.vcol.center-col .seg{width:62px}.voicebox.idle .seg{opacity:.58;filter:brightness(.82);background:linear-gradient(180deg,#360000,#120000 58%,#030000);border-color:rgba(255,0,0,.32);box-shadow:inset 0 0 10px rgba(0,0,0,.88),0 0 8px rgba(255,0,0,.20);transform:none}.voicebox.speaking .seg.low{opacity:.70;filter:brightness(1.05);background:linear-gradient(180deg,#780000,#320000);box-shadow:0 0 9px rgba(255,0,0,.32),inset 0 0 8px rgba(0,0,0,.45)}.voicebox.speaking .seg.mid{opacity:.90;filter:brightness(1.45);background:linear-gradient(180deg,#d60000,#740000);box-shadow:0 0 13px rgba(255,0,0,.58),0 0 26px rgba(255,0,0,.24)}.voicebox.speaking .seg.on{opacity:1;filter:brightness(2.05);background:linear-gradient(180deg,#ff7a7a,#ff1010 48%,#a00000);box-shadow:0 0 18px rgba(255,45,45,.95),0 0 40px rgba(255,0,0,.52)}.voicebox.speaking .seg.hot{opacity:1;filter:brightness(2.75);background:linear-gradient(180deg,#ffffff,#ff8f8f 22%,#ff1111 55%,#a00000);box-shadow:0 0 22px rgba(255,120,120,1),0 0 58px rgba(255,0,0,.82),0 0 110px rgba(255,0,0,.48);transform:scaleY(1.12)}
.kitt-title{position:relative;z-index:2;color:var(--red);font-size:70px;font-weight:900;letter-spacing:13px;text-shadow:var(--glow);margin-top:-20px}.state{position:relative;z-index:2;color:var(--green);letter-spacing:4px;font-size:20px;margin-bottom:4px}.terminal{font-family:Consolas,monospace}.terminal h3{margin:0 0 10px;color:var(--red);letter-spacing:3px}.terminal{display:flex;flex-direction:column;justify-content:space-between;overflow:visible}.last-line{font-size:22px;line-height:1.32;color:#ffd0c8;min-height:58px;max-height:88px;overflow:hidden}.cursor{display:inline-block;width:10px;height:24px;background:#ffcac4;vertical-align:-4px;animation:blink .8s steps(1) infinite}@keyframes blink{50%{opacity:0}}
.log{font-family:Consolas,monospace;font-size:16px;line-height:1.65;color:#d98a80;overflow:hidden}.log div:before{content:attr(data-time) " » ";color:#c44}.voice-input{display:grid;align-content:center}.dotline{position:relative;height:44px;margin-top:16px;overflow:hidden}.dotline:before{content:"";position:absolute;left:0;right:0;top:50%;height:3px;background:repeating-linear-gradient(90deg,var(--red) 0 3px,transparent 3px 12px);box-shadow:var(--glow)}.dotline:after{content:"";position:absolute;left:0;right:0;top:0;bottom:0;background:repeating-linear-gradient(90deg,transparent 0 10px,rgba(255,22,22,.95) 10px 13px,transparent 13px 24px);clip-path:polygon(0 50%,4% 35%,8% 62%,12% 28%,16% 70%,20% 42%,24% 57%,28% 22%,32% 76%,36% 48%,40% 60%,44% 35%,48% 67%,52% 25%,56% 73%,60% 44%,64% 58%,68% 30%,72% 70%,76% 50%,80% 38%,84% 64%,88% 30%,92% 72%,96% 43%,100% 50%);opacity:.22;animation:inputWave 1.4s linear infinite}.voice-input.active .dotline:after,.voice-input.listening .dotline:after{opacity:1;animation-duration:.55s;filter:drop-shadow(0 0 10px rgba(255,0,0,.75))}.voice-input.active,.voice-input.listening{box-shadow:inset 0 0 35px rgba(255,0,0,.10)}@keyframes inputWave{0%{transform:translateX(-24px)}100%{transform:translateX(24px)}}.actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.actions button{background:#090000;border:1px solid rgba(255,30,30,.35);color:#ffc0b5;padding:15px 8px;letter-spacing:2px;font-weight:800}.mode{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mode button,.mode a{padding:16px;border:1px solid rgba(255,30,30,.45);background:#070000;color:#b98b84;letter-spacing:3px;font-weight:900;text-align:center;text-decoration:none;display:block}.mode .active{color:#ffdfd8;border-color:var(--red);box-shadow:var(--glow)}
.bottom{position:relative;border-top:1px solid var(--line);display:flex;align-items:center;color:#8d5e58;letter-spacing:4px;padding:0 28px;box-sizing:border-box;overflow:hidden;gap:24px}.voice-control{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:var(--green);font-size:18px;text-align:center;text-shadow:0 0 12px rgba(100,255,0,.5);white-space:nowrap;pointer-events:none}.footer-nav{display:flex;align-items:center;white-space:nowrap}.footer-left{justify-content:flex-start;gap:70px;min-width:420px;overflow:hidden}.footer-right{margin-left:auto;justify-content:flex-end;gap:54px;text-align:right;padding-right:12px;min-width:560px}.footer-link,.impressum-link,.logout-link{color:#ff3030;text-decoration:none;font-size:12px;letter-spacing:3px;text-shadow:0 0 10px rgba(255,0,0,.45);transition:.25s;text-transform:uppercase}.footer-link:hover,.impressum-link:hover,.logout-link:hover{color:#fff;text-shadow:0 0 10px #ff0000,0 0 22px #ff0000}.logout-link{font-weight:900}.sr-debug{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.redwave{color:var(--red);font-family:Consolas,monospace}.hidden-widget{position:absolute;left:-10000px;top:-10000px;width:1px;height:1px;opacity:0;pointer-events:none}.system-panel{position:relative;width:auto;min-height:0;padding:18px 18px 16px;z-index:1;border:1px solid rgba(255,0,0,.34);background:linear-gradient(180deg,rgba(24,0,0,.74),rgba(0,0,0,.86));box-shadow:inset 0 0 22px rgba(255,0,0,.10),0 0 20px rgba(255,0,0,.12);clip-path:polygon(0 12%,8% 0,92% 0,100% 12%,100% 88%,92% 100%,8% 100%,0 88%);backdrop-filter:blur(8px);overflow:hidden}.system-panel:before{content:"";position:absolute;left:18px;right:18px;top:49px;height:1px;background:linear-gradient(90deg,transparent,#ff2020,transparent);opacity:.65}.system-title{color:#ff4040;font-size:13px;letter-spacing:4px;font-weight:900;margin-bottom:18px;text-shadow:0 0 12px rgba(255,0,0,.7);text-transform:uppercase}.system-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:4px 0 12px}.system-item{display:flex;align-items:center;justify-content:center;gap:7px;min-height:34px;border:1px solid rgba(255,0,0,.20);background:rgba(0,0,0,.28);color:#d7aaa3;font-size:10px;letter-spacing:1.5px;text-transform:uppercase}.status-dot{width:7px;height:7px;border-radius:50%;background:#ff2020;box-shadow:0 0 8px #ff0000,0 0 18px rgba(255,0,0,.8);animation:dotPulse 1.8s ease-in-out infinite}.system-message{min-height:34px;margin:10px 0 12px;padding:9px 10px;border:1px solid rgba(255,0,0,.22);background:rgba(0,0,0,.42);font-family:Consolas,monospace;color:#b87972;font-size:11px;line-height:1.3;letter-spacing:1px;overflow:hidden}.logout-btn{display:block;width:100%;padding:12px 8px;text-align:center;border:1px solid rgba(255,48,48,.78);background:linear-gradient(180deg,#240000,#080000);color:#ff7770;text-decoration:none;font-size:12px;font-weight:900;letter-spacing:4px;transition:.22s;box-shadow:inset 0 0 16px rgba(255,0,0,.16);box-sizing:border-box}.logout-btn:hover{background:#ff2020;color:#fff;box-shadow:0 0 12px #ff0000,0 0 28px rgba(255,0,0,.7)}@keyframes dotPulse{0%,100%{opacity:.55;filter:brightness(.9)}50%{opacity:1;filter:brightness(1.8)}}.main-btn{width:100%;margin-top:16px;min-height:54px;flex-shrink:0}.muted{color:#7c514c}.large-only{display:block}

/* KITT-style top scanner: discrete red segments with a real left-right-left sweep */
.top-scanner.kitt-scanner{left:32%;right:32%;bottom:-23px;height:26px;padding:4px 18px;display:grid;grid-template-columns:repeat(16,1fr);gap:5px;background:linear-gradient(180deg,#160000,#050000);border:1px solid rgba(255,0,0,.24);box-shadow:inset 0 0 18px rgba(255,0,0,.20),0 0 28px rgba(255,0,0,.12);clip-path:polygon(7% 0,93% 0,100% 50%,93% 100%,7% 100%,0 50%)}
.top-scanner.kitt-scanner span{display:none}
.top-scanner.kitt-scanner i{display:block;height:100%;border-radius:2px;background:#140000;box-shadow:inset 0 0 8px rgba(0,0,0,.9);filter:brightness(.42);opacity:.55;transition:background .055s linear, box-shadow .055s linear, filter .055s linear, opacity .055s linear}
.top-scanner.kitt-scanner i.hot{background:linear-gradient(180deg,#ff7777,#ff1b1b 48%,#9d0000);box-shadow:0 0 10px rgba(255,70,70,1),0 0 24px rgba(255,0,0,.95),0 0 58px rgba(255,0,0,.42);filter:brightness(2.45);opacity:1}
.top-scanner.kitt-scanner i.near{background:linear-gradient(180deg,#ff3a3a,#e80000 52%,#6d0000);box-shadow:0 0 9px rgba(255,0,0,.85),0 0 30px rgba(255,0,0,.38);filter:brightness(1.85);opacity:.95}
.top-scanner.kitt-scanner i.warm{background:#b80000;box-shadow:0 0 8px rgba(255,0,0,.62),0 0 18px rgba(255,0,0,.25);filter:brightness(1.35);opacity:.84}
.top-scanner.kitt-scanner i.dim{background:#690000;box-shadow:0 0 7px rgba(255,0,0,.34);filter:brightness(.98);opacity:.72}
.top-scanner.kitt-scanner i.ghost{background:#350000;box-shadow:0 0 4px rgba(255,0,0,.20);filter:brightness(.78);opacity:.62}
.vehicle-img.real-panel{position:absolute;inset:18px;border:0;background:#020000;display:grid;place-items:center;overflow:hidden;padding:0;box-shadow:inset 0 0 40px rgba(255,0,0,.10),0 0 18px rgba(255,0,0,.08)}
.vehicle-img.real-panel img{width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 0 10px rgba(255,0,0,.35));opacity:.96}
.vehicle{overflow:hidden;padding:0}.vehicle .tags{display:none}


.session-info{margin-left:18px;color:#ffe2dc;font-size:11px;letter-spacing:2px;opacity:.9}.mode-karr .session-info{color:#fff3a0}#sessionCountdown{color:var(--green);font-weight:900;text-shadow:0 0 12px rgba(100,255,25,.75)}

@media(max-width:1350px){.dashboard{min-width:1000px}.nav{gap:38px}.kitt-title{font-size:52px}.voicebox{gap:42px}.seg{width:42px;height:15px}.vcol.center-col .seg{width:50px}.status-row{grid-template-columns:34px 54px 1fr 48px;gap:10px}.panel{padding:16px}.last-line{font-size:19px}}

/* ==================================================
   Compact Dashboard Layout Fix
   Für kleinere Displays / Edge-App-Modus / EliteBook
   ================================================== */
@media (max-width:1700px){
  html,body{overflow:hidden;}
  .dashboard{
    min-width:0;
    grid-template-rows:78px minmax(0,1fr) 54px;
    gap:10px;
    padding:10px 12px 8px;
  }
  .topbar{
    grid-template-columns:300px 1fr 230px;
  }
  .brand-logo{
    height:54px;
    max-width:285px;
  }
  .nav{
    gap:44px;
    font-size:13px;
    letter-spacing:4px;
  }
  .top-status{
    gap:5px;
  }
  .clock{
    font-size:19px;
  }
  .nav{
    display:flex;
    gap:18px;
    align-items:center;
}

.nav a{
    font-family:'Ruben', sans-serif;
    font-weight:700; /* Fett */
    font-size:14px;

    color:#b8a7a2;
    text-decoration:none;

    letter-spacing:2px;
    text-transform:uppercase;

    transition:all .25s ease;
}
.nav a:hover{
    color:var(--accent);

    text-shadow:
        0 0 6px var(--accent),
        0 0 12px var(--accent);
}

.nav a:hover{
    color:var(--red);

    text-shadow:
        0 0 6px rgba(255,0,0,.7),
        0 0 12px rgba(255,0,0,.4);
}
  .session-badge{
    padding:6px 10px;
    font-size:11px;
    gap:5px 9px;
    letter-spacing:1.6px;
  }
  .session-badge .timer{
    font-size:13px;
  }
  .top-scanner.kitt-scanner{
    left:32%;
    right:32%;
    height:22px;
    bottom:-19px;
    gap:4px;
  }
  .layout{
    grid-template-columns:28% minmax(390px,44%) 28%;
    gap:14px;
    min-width:0;
  }
  .panel{
    padding:15px;
  }
  .panel h2{
    font-size:18px;
    margin-bottom:14px;
  }
  .left{
    grid-template-rows:39% 61%;
  }
  .right{
    grid-template-rows:25% 17% 27% 31%;
  }
  .center{
    grid-template-rows:minmax(0,1fr) 224px;
  }
  .status-row{
    grid-template-columns:32px 58px 1fr 52px;
    gap:10px;
    margin:13px 0;
    font-size:14px;
  }
  .ico{
    width:28px;
    height:28px;
  }
  .vehicle-img.real-panel{
    inset:14px;
  }
  .voicebox{
    width:min(34vw,430px);
    height:min(52vh,460px);
    gap:42px;
  }
  .seg{
    width:42px;
    height:14px;
  }
  .vcol.center-col .seg{
    width:50px;
  }
  .kitt-title{
    font-size:48px;
    letter-spacing:10px;
  }
  .state{
    font-size:16px;
  }
  .last-line{
    font-size:19px;
    min-height:52px;
    max-height:78px;
  }
  .main-btn{
    min-height:50px;
    padding:13px 20px;
  }
  .actions{
    gap:10px;
  }
  .actions button{
    padding:13px 6px;
    font-size:12px;
  }
  .mode button,.mode a{
    padding:14px 8px;
  }
  .bottom{
    padding:0 20px;
    gap:16px;
  }
  .footer-left,
  .footer-right{
    min-width:0;
  }
  .footer-left{
    gap:48px;
  }
  .footer-right{
    gap:38px;
    padding-right:0;
  }
  .voice-control{
    display:none;
  }
}

@media (max-width:1450px){
  .dashboard{
    grid-template-rows:72px minmax(0,1fr) 50px;
    gap:8px;
    padding:8px 10px 6px;
  }
  .topbar{
    grid-template-columns:250px 1fr 210px;
  }
  .brand-logo{
    height:46px;
    max-width:240px;
  }
  .nav{
    gap:28px;
    font-size:12px;
    letter-spacing:3px;
  }
  .clock{
    font-size:17px;
  }
  .layout{
    grid-template-columns:30% minmax(360px,40%) 30%;
    gap:10px;
  }
  .panel{
    padding:13px;
  }
  .voicebox{
    width:min(34vw,370px);
    height:min(48vh,380px);
    gap:34px;
  }
  .seg{
    width:36px;
    height:12px;
  }
  .vcol.center-col .seg{
    width:44px;
  }
  .kitt-title{
    font-size:42px;
    letter-spacing:8px;
  }
  .last-line{
    font-size:17px;
  }
  .footer-left{
    gap:36px;
  }
  .footer-right{
    gap:28px;
  }
  .footer-link,.impressum-link,.logout-link,.footer-admin-link{
    font-size:11px;
    letter-spacing:2.4px;
  }
}

@media (max-height:900px){
  .dashboard{
    grid-template-rows:72px minmax(0,1fr) 50px;
    gap:8px;
  }
  .topbar{
    min-height:0;
  }
  .panel{
    padding:13px;
  }
  .panel h2{
    font-size:17px;
    margin-bottom:12px;
  }
  .center{
    grid-template-rows:minmax(0,1fr) 206px;
  }
  .voicebox{
    height:min(46vh,360px);
  }
  .kitt-title{
    font-size:42px;
    margin-top:-12px;
  }
  .state{
    font-size:15px;
  }
  .terminal h3{
    margin-bottom:8px;
  }
  .last-line{
    min-height:46px;
    max-height:70px;
  }
  .main-btn{
    min-height:46px;
    margin-top:10px;
  }
  .status-row{
    margin:10px 0;
  }
}

@media (max-height:780px){
  .right{
    grid-template-rows:22% 16% 25% 37%;
  }
  .left{
    grid-template-rows:36% 64%;
  }
  .voicebox{
    height:min(42vh,310px);
  }
  .vcol{
    gap:6px;
  }
  .seg{
    height:10px;
  }
  .kitt-title{
    font-size:36px;
  }
}


/* Footer Compact Fix v28 */
@media (max-width:1700px){
  .bottom{
    display:grid;
    grid-template-columns:auto 1fr;
    align-items:center;
    padding:0 22px;
    gap:18px;
  }
  .voice-control{
    display:none !important;
  }
  .footer-left{
    min-width:0;
    justify-content:flex-start;
    gap:42px;
    overflow:hidden;
  }
  .footer-right{
    min-width:0;
    margin-left:0;
    justify-content:flex-end;
    justify-self:end;
    gap:34px;
    padding-right:0;
  }
}

@media (max-width:1550px){
  .bottom{
    padding:0 18px;
  }
  .footer-left{
    gap:34px;
  }
  .footer-right{
    gap:26px;
  }
  .footer-left span,
  .footer-right span,
  .footer-admin-link,
  .impressum-link,
  .logout-link{
    font-size:11px;
    letter-spacing:2.4px;
  }
  .footer-right span:nth-of-type(1),
  .footer-right span:nth-of-type(2){
    display:none;
  }
}

@media (max-width:1350px){
  .bottom{
    grid-template-columns:1fr auto;
    padding:0 14px;
  }
  .footer-left{
    gap:24px;
  }
  .footer-left span:nth-child(n+3){
    display:none;
  }
  .footer-right{
    gap:20px;
  }
}

@media (max-height:820px){
  .bottom{
    height:46px;
    padding-top:0;
    padding-bottom:0;
  }
  .footer-left span,
  .footer-admin-link,
  .impressum-link,
  .logout-link{
    font-size:10px;
    letter-spacing:2.2px;
  }
}


/* ==================================================
   v37 Fixes: external CSS, Ruben font, clean nav
   ================================================== */
@font-face{
  font-family:'Ruben';
  src:url('../fonts/Ruben.ttf') format('truetype');
  font-weight:normal;
  font-style:normal;
  font-display:swap;
}

.nav{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:34px;
  color:var(--muted);
}

.nav a{
  font-family:'Ruben', Eurostile, Orbitron, Arial, sans-serif;
  font-size:22px;
  font-weight:normal;
  line-height:1;
  color:#d8c4be;
  text-decoration:none;
  letter-spacing:4px;
  text-transform:uppercase;
  transition:color .25s ease,text-shadow .25s ease,filter .25s ease;
}

.nav a:visited{
  color:#d8c4be;
}

.nav a:hover,
.nav a:focus{
  color:var(--red);
  text-shadow:0 0 8px var(--red),0 0 18px var(--red),0 0 30px rgba(255,0,0,.35);
  outline:none;
}

.nav a.logout,
.nav a.logout:visited{
  color:#ff3030;
  text-shadow:0 0 10px rgba(255,0,0,.40);
}

.nav a.logout:hover,
.nav a.logout:focus{
  color:#ffffff;
  text-shadow:0 0 8px var(--red),0 0 22px var(--red),0 0 40px rgba(255,0,0,.70);
}

body.mode-karr .nav a,
body.mode-karr .nav a:visited{
  color:#fff1a8;
}

body.mode-karr .nav a:hover,
body.mode-karr .nav a:focus{
  color:var(--red);
  text-shadow:0 0 8px var(--red),0 0 18px var(--red),0 0 34px rgba(255,225,0,.45);
}

body.mode-karr .nav a.logout,
body.mode-karr .nav a.logout:visited{
  color:#ff4949;
}

body.mode-karr .nav a.logout:hover,
body.mode-karr .nav a.logout:focus{
  color:#ffffff;
  text-shadow:0 0 8px #ff3030,0 0 22px #ff3030,0 0 40px rgba(255,48,48,.70);
}

.last-line{
  overflow:auto;
  padding-right:8px;
  scrollbar-width:thin;
  scrollbar-color:var(--red) rgba(0,0,0,.25);
}
.last-line::-webkit-scrollbar{width:7px}
.last-line::-webkit-scrollbar-track{background:rgba(0,0,0,.25)}
.last-line::-webkit-scrollbar-thumb{background:var(--red);box-shadow:0 0 10px var(--red)}

@media (max-width:1700px){
  .nav{gap:28px;}
  .nav a{font-size:20px;letter-spacing:3.5px;}
}

@media (max-width:1450px){
  .nav{gap:22px;}
  .nav a{font-size:18px;letter-spacing:3px;}
}

@media (max-width:900px){
  .nav{gap:18px;flex-wrap:wrap;}
  .nav a{font-size:17px;letter-spacing:2.6px;}
}

/* ==================================================
   Admin v41: Statistik, Agent-Verwaltung, Nutzungszeit
   ================================================== */
.admin-shell-wide{max-width:1480px}.admin-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 20px}.admin-stat-card{border:1px solid var(--line);background:linear-gradient(180deg,rgba(16,0,0,.78),rgba(0,0,0,.92));padding:16px 18px;box-shadow:inset 0 0 24px rgba(255,0,0,.08)}.admin-stat-card span{display:block;color:var(--muted);font-size:11px;letter-spacing:3px;margin-bottom:8px;text-transform:uppercase}.admin-stat-card b{display:block;color:var(--red);font-size:24px;letter-spacing:2px;text-shadow:var(--glow)}.admin-grid-v41{grid-template-columns:360px 1fr;align-items:start}.admin-create-card{position:sticky;top:18px}.admin-field-title{margin:18px 0 6px;color:var(--red);font-size:12px;letter-spacing:3px;text-transform:uppercase;text-shadow:0 0 10px rgba(255,0,0,.45)}.admin-users-card{min-width:0}.admin-user-list-v41{gap:18px}.admin-user-card-v41{padding:16px;border-color:rgba(255,0,0,.28)}.admin-user-card-v41 .admin-user-head{padding-bottom:12px;border-bottom:1px solid rgba(255,0,0,.16)}.admin-user-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:12px 0 14px}.admin-user-stats div{border:1px solid rgba(255,0,0,.16);background:rgba(0,0,0,.30);padding:10px}.admin-user-stats span{display:block;color:var(--muted);font-size:10px;letter-spacing:2px;text-transform:uppercase;margin-bottom:5px}.admin-user-stats b{display:block;color:#fff;font-size:12px;letter-spacing:1.3px}.admin-edit-grid-v41{display:grid;grid-template-columns:1fr 150px 86px;gap:10px;align-items:center}.admin-edit-grid-v41 .admin-agent-input{grid-column:span 1}.admin-edit-grid-v41 button{grid-column:3}.admin-pass-grid-v41{display:grid;grid-template-columns:minmax(260px,1fr) 1.6fr;gap:10px;margin-top:12px}.admin-pass-form{display:grid;grid-template-columns:1fr auto;gap:10px;margin:0}.admin-time-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.admin-time-actions form{margin:0}.admin-add{color:#ffd36d;border-color:rgba(255,211,109,.55)}body.mode-karr .admin-stat-card,body.mode-karr .admin-user-card-v41,body.mode-karr .admin-user-stats div{border-color:rgba(255,225,0,.22)}body.mode-karr .admin-stat-card b,body.mode-karr .admin-field-title{color:var(--red)}
@media(max-width:1250px){.admin-grid-v41{grid-template-columns:1fr}.admin-create-card{position:relative;top:auto}.admin-user-stats{grid-template-columns:repeat(2,1fr)}.admin-edit-grid-v41{grid-template-columns:1fr}.admin-edit-grid-v41 button{grid-column:auto}.admin-pass-grid-v41{grid-template-columns:1fr}.admin-time-actions{justify-content:flex-start}.admin-stats-grid{grid-template-columns:1fr}}

/* ==================================================
   v42 Administration Console Refresh
   Full-width KITT/KARR admin interface
   ================================================== */
.admin-console-body{
  overflow:auto;
}
.admin-console-page{
  min-height:100vh;
  width:100vw;
  padding:18px;
  background:
    radial-gradient(circle at 50% 8%, rgba(110,0,0,.26), transparent 38%),
    linear-gradient(180deg, #030000, #000 72%);
  overflow:auto;
}
.admin-console-shell{
  width:100%;
  max-width:none;
  margin:0;
}
.admin-console-header{
  min-height:82px;
  display:grid;
  grid-template-columns:minmax(280px, 1fr) auto;
  gap:22px;
  align-items:center;
  padding:12px 18px 18px;
  border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,rgba(20,0,0,.50),rgba(0,0,0,.30));
  clip-path:polygon(0 0,100% 0,100% 80%,98% 100%,2% 100%,0 80%);
}
.admin-console-brand{
  display:flex;
  align-items:center;
  gap:24px;
  min-width:0;
}
.admin-console-brand img{
  height:58px;
  width:auto;
  max-width:280px;
  object-fit:contain;
  filter:drop-shadow(0 0 8px var(--red)) drop-shadow(0 0 22px rgba(255,0,0,.50));
}
.admin-console-kicker{
  color:var(--muted);
  font-size:12px;
  letter-spacing:5px;
  text-transform:uppercase;
  margin-bottom:6px;
}
.admin-console-header h1{
  margin:0;
  color:var(--red);
  font-size:clamp(22px, 1.9vw, 36px);
  letter-spacing:7px;
  text-shadow:var(--glow);
  text-transform:uppercase;
}
.admin-console-nav{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:28px;
  white-space:nowrap;
}
.admin-console-nav a{
  font-family:'Ruben', Eurostile, Orbitron, Arial, sans-serif;
  color:#d8c4be;
  text-decoration:none;
  letter-spacing:4px;
  font-size:18px;
  text-transform:uppercase;
  transition:.25s;
}
.admin-console-nav a:hover{
  color:var(--red);
  text-shadow:0 0 10px var(--red), 0 0 24px var(--red);
}
.admin-console-nav a.danger{
  color:#ff3030;
  text-shadow:0 0 10px rgba(255,0,0,.45);
}
.admin-overview-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(160px, 1fr));
  gap:16px;
  margin:18px 0;
}
.admin-overview-card,
.admin-ki-panel,
.admin-user-console-card{
  position:relative;
  border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(18,0,0,.78),rgba(0,0,0,.94));
  box-shadow:inset 0 0 30px rgba(255,0,0,.08), 0 0 20px rgba(255,0,0,.06);
}
.admin-overview-card{
  min-height:104px;
  padding:20px 22px;
  clip-path:polygon(0 12%,4% 0,96% 0,100% 12%,100% 88%,96% 100%,4% 100%,0 88%);
}
.admin-overview-card span{
  display:block;
  color:var(--muted);
  font-size:12px;
  letter-spacing:4px;
  text-transform:uppercase;
  margin-bottom:12px;
}
.admin-overview-card b{
  display:block;
  color:var(--red);
  font-size:clamp(28px, 2.6vw, 52px);
  letter-spacing:3px;
  text-shadow:var(--glow);
  line-height:1;
}
.admin-main-grid{
  display:grid;
  grid-template-columns:minmax(360px, 430px) minmax(0, 1fr);
  gap:18px;
  align-items:start;
}
.admin-side-stack{
  display:grid;
  gap:18px;
  position:sticky;
  top:18px;
}
.admin-ki-panel{
  padding:22px;
  clip-path:polygon(0 7%,5% 0,95% 0,100% 7%,100% 93%,95% 100%,5% 100%,0 93%);
}
.admin-ki-panel h2,
.admin-users-headline h2{
  margin:0 0 20px;
  color:var(--red);
  font-size:18px;
  letter-spacing:5px;
  text-transform:uppercase;
  text-shadow:var(--glow);
}
.admin-ki-panel label,
.admin-user-edit-v42 label{
  display:block;
  margin:10px 0 6px;
  color:var(--muted);
  font-size:11px;
  letter-spacing:3px;
  text-transform:uppercase;
}
.admin-ki-panel input,
.admin-user-console-card input{
  width:100%;
  min-height:42px;
  padding:11px 13px;
  background:#050000;
  border:1px solid rgba(255,0,0,.28);
  color:#fff;
  outline:none;
  box-shadow:inset 0 0 14px rgba(255,0,0,.07);
}
.admin-section-title{
  margin:20px 0 10px;
  padding-top:14px;
  border-top:1px solid rgba(255,0,0,.16);
  color:var(--red);
  font-size:12px;
  letter-spacing:4px;
  text-transform:uppercase;
  text-shadow:0 0 10px rgba(255,0,0,.55);
}
.admin-check-large{
  margin:18px 0!important;
}
.admin-main-action{
  margin-top:6px;
}
.admin-default-agents-panel code{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#fff;
  font-family:Consolas,monospace;
  font-size:12px;
}
.admin-agent-default-row{
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  gap:12px;
  padding:11px 0;
  border-bottom:1px solid rgba(255,0,0,.13);
}
.admin-agent-default-row span{
  color:var(--red);
  font-weight:900;
  letter-spacing:3px;
}
.admin-default-agents-panel p{
  color:var(--muted);
  font-size:12px;
  line-height:1.5;
  letter-spacing:1px;
}
.admin-users-console{
  min-width:0;
}
.admin-users-headline{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:20px;
  padding:18px 22px;
  border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(22,0,0,.58),rgba(0,0,0,.80));
  margin-bottom:18px;
  clip-path:polygon(0 0,100% 0,100% 76%,98% 100%,2% 100%,0 76%);
}
.admin-users-headline h2{
  margin:0;
}
.admin-users-headline span{
  color:var(--muted);
  letter-spacing:4px;
  font-size:12px;
  text-transform:uppercase;
}
.admin-user-cards-v42{
  display:grid;
  gap:18px;
}
.admin-user-console-card{
  padding:22px;
  clip-path:polygon(0 5%,3% 0,97% 0,100% 5%,100% 95%,97% 100%,3% 100%,0 95%);
}
.admin-user-console-card.is-expired{
  border-color:rgba(255,60,60,.55);
}
.admin-user-console-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:20px;
  padding-bottom:16px;
  border-bottom:1px solid rgba(255,0,0,.18);
}
.admin-user-console-top h3{
  margin:0 0 8px;
  color:#fff;
  font-size:24px;
  letter-spacing:2px;
}
.admin-user-badges{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.admin-user-badges span{
  display:inline-flex;
  border:1px solid rgba(255,0,0,.24);
  background:rgba(255,0,0,.06);
  color:var(--muted);
  font-size:10px;
  letter-spacing:2px;
  padding:5px 8px;
  text-transform:uppercase;
}
.admin-user-badges span.danger{
  color:#ff5555;
  border-color:rgba(255,60,60,.60);
}
.admin-user-remaining{
  color:var(--green);
  font-size:28px;
  font-weight:900;
  letter-spacing:2px;
  text-shadow:0 0 14px rgba(112,255,35,.65);
  white-space:nowrap;
}
.admin-user-remaining.expired{
  color:#ff4040;
  text-shadow:0 0 14px rgba(255,0,0,.75);
}
.admin-user-metrics-v42{
  display:grid;
  grid-template-columns:repeat(5, minmax(120px, 1fr));
  gap:10px;
  margin:16px 0;
}
.admin-user-metrics-v42 div{
  min-height:70px;
  padding:12px;
  border:1px solid rgba(255,0,0,.16);
  background:rgba(0,0,0,.32);
}
.admin-user-metrics-v42 span{
  display:block;
  color:var(--muted);
  font-size:10px;
  letter-spacing:2px;
  text-transform:uppercase;
  margin-bottom:8px;
}
.admin-user-metrics-v42 b{
  color:#fff;
  font-size:14px;
  letter-spacing:1.5px;
}
.admin-user-edit-v42{
  display:grid;
  grid-template-columns:minmax(260px,.85fr) minmax(360px,1.2fr) auto;
  gap:14px;
  align-items:end;
  margin:0;
}
.admin-edit-block{
  min-width:0;
}
.admin-edit-block .admin-section-title{
  margin-top:0;
}
.admin-admin-toggle{
  margin:12px 0 0!important;
  color:#d8aaa4!important;
}
.admin-admin-toggle input{
  width:auto!important;
  min-height:auto!important;
  margin-right:8px!important;
}
.admin-edit-submit{
  display:flex;
  align-items:end;
}
.admin-save{
  min-height:42px;
  color:#fff;
  border-color:rgba(255,50,50,.85);
  background:linear-gradient(180deg,#370000,#120000);
}
.admin-user-actions-v42{
  display:grid;
  grid-template-columns:minmax(280px, .8fr) minmax(420px, 1.2fr);
  gap:14px;
  align-items:center;
  margin-top:16px;
  padding-top:16px;
  border-top:1px solid rgba(255,0,0,.16);
}
.admin-password-form-v42{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  margin:0;
}
.admin-password{
  color:#ffb36d;
  border-color:rgba(255,141,35,.68);
}
.admin-time-actions-v42{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:9px;
}
.admin-time-actions-v42 form{
  margin:0;
}
.admin-add{
  color:#ffe66d;
  border-color:rgba(255,230,109,.58);
}
.admin-reset{
  color:#7cff23;
  border-color:rgba(124,255,35,.62);
}
.admin-danger{
  color:#ff7770;
  border-color:rgba(255,50,50,.75);
  background:linear-gradient(180deg,#260000,#070000);
}
body.mode-karr .admin-console-page{
  background:radial-gradient(circle at 50% 8%, rgba(120,92,0,.28), transparent 38%), linear-gradient(180deg,#030303,#000 72%);
}
body.mode-karr .admin-console-brand img{
  filter:drop-shadow(0 0 8px #ffe100) drop-shadow(0 0 24px rgba(255,210,0,.54));
}
body.mode-karr .admin-overview-card,
body.mode-karr .admin-ki-panel,
body.mode-karr .admin-user-console-card,
body.mode-karr .admin-users-headline,
body.mode-karr .admin-user-metrics-v42 div{
  border-color:rgba(255,225,0,.24);
}
@media(max-width:1500px){
  .admin-main-grid{grid-template-columns:360px minmax(0,1fr)}
  .admin-user-metrics-v42{grid-template-columns:repeat(3, minmax(120px, 1fr));}
  .admin-user-edit-v42{grid-template-columns:1fr 1fr;}
  .admin-edit-submit{grid-column:1 / -1;justify-content:flex-end;}
  .admin-user-actions-v42{grid-template-columns:1fr;}
  .admin-time-actions-v42{justify-content:flex-start;}
}
@media(max-width:1100px){
  .admin-console-page{padding:12px;}
  .admin-console-header{grid-template-columns:1fr;}
  .admin-console-nav{justify-content:flex-start;}
  .admin-overview-grid{grid-template-columns:repeat(2,1fr);}
  .admin-main-grid{grid-template-columns:1fr;}
  .admin-side-stack{position:relative;top:auto;}
  .admin-user-edit-v42{grid-template-columns:1fr;}
  .admin-user-metrics-v42{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:650px){
  .admin-console-brand{display:grid;gap:12px;}
  .admin-console-brand img{max-width:250px;height:auto;}
  .admin-console-header h1{font-size:22px;letter-spacing:4px;}
  .admin-console-nav{gap:18px;flex-wrap:wrap;}
  .admin-console-nav a{font-size:15px;letter-spacing:3px;}
  .admin-overview-grid{grid-template-columns:1fr;}
  .admin-user-console-top{display:grid;}
  .admin-user-metrics-v42{grid-template-columns:1fr;}
  .admin-password-form-v42{grid-template-columns:1fr;}
  .admin-time-actions-v42{display:grid;grid-template-columns:repeat(2,1fr);}
}

/* v44 Subscription / License Management */
.admin-create-panel select,
.admin-user-console-card select,
.admin-subscription-panel select,
.admin-subscription-panel input{
    width:100%;
    padding:13px 14px;
    margin:9px 0;
    background:#050000;
    border:1px solid var(--line);
    color:#fff;
    outline:none;
    font-family:Consolas,monospace;
    letter-spacing:1px;
}
.admin-create-panel select:focus,
.admin-user-console-card select:focus,
.admin-subscription-panel input:focus{
    border-color:var(--red);
    box-shadow:0 0 16px color-mix(in srgb, var(--red) 35%, transparent);
}
.admin-subscription-panel{
    display:block;
}
.admin-plan-row{
    display:grid;
    grid-template-columns:92px 1fr 130px;
    gap:10px;
    align-items:center;
    margin:10px 0;
    padding:10px;
    border:1px solid rgba(255,0,0,.18);
    background:rgba(0,0,0,.28);
}
.admin-plan-row label{
    margin:0;
    color:var(--red);
    font-weight:900;
    letter-spacing:2px;
}
.admin-plan-row input{
    margin:0;
}
.admin-user-badges span:nth-child(n){
    white-space:nowrap;
}
.admin-user-console-card .admin-edit-block select{
    margin-top:6px;
}
@media(max-width:900px){
    .admin-plan-row{grid-template-columns:1fr;}
}

/* ==================================================
   v45 Dashboard License Status
   ================================================== */
.license-top{
  margin-top:2px;
}
.license-panel{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:10px;
  overflow:hidden;
}
.license-plan-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:8px 10px;
  border:1px solid rgba(255,0,0,.18);
  background:rgba(0,0,0,.28);
  font-family:Consolas,monospace;
  letter-spacing:2px;
}
.license-plan-row span,
.license-grid span{
  color:var(--muted);
  font-size:10px;
  text-transform:uppercase;
}
.license-plan-row strong{
  color:#fff;
  font-size:14px;
  text-transform:uppercase;
  text-shadow:0 0 10px var(--accent);
}
.license-meter{
  height:8px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,0,0,.22);
  overflow:hidden;
  box-shadow:inset 0 0 12px rgba(0,0,0,.7);
}
.license-meter-fill{
  height:100%;
  min-width:2px;
  background:linear-gradient(90deg,var(--red3),var(--red),#fff);
  box-shadow:0 0 12px var(--accent),0 0 28px color-mix(in srgb, var(--accent) 45%, transparent);
  transition:width .35s ease;
}
.license-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.license-grid div{
  min-height:48px;
  padding:8px 10px;
  border:1px solid rgba(255,0,0,.16);
  background:rgba(0,0,0,.24);
  font-family:Consolas,monospace;
  overflow:hidden;
}
.license-grid strong{
  display:block;
  margin-top:5px;
  color:#ffd8d2;
  font-size:13px;
  letter-spacing:1px;
  white-space:nowrap;
  text-shadow:0 0 8px rgba(255,0,0,.32);
}
body.mode-karr .license-plan-row,
body.mode-karr .license-meter,
body.mode-karr .license-grid div{
  border-color:rgba(255,225,0,.24);
}
body.mode-karr .license-meter-fill{
  background:linear-gradient(90deg,var(--red3),var(--red),#fff4a0);
}

@media (min-width:901px){
  .right{
    grid-template-rows:23% 14% 24% 20% 19%;
  }
}
@media (max-width:1700px) and (min-width:901px){
  .right{
    grid-template-rows:22% 14% 25% 19% 20%;
  }
  .license-grid strong{font-size:12px;}
  .license-grid div{min-height:42px;padding:7px 8px;}
}
@media (max-width:1450px) and (min-width:901px){
  .right{
    grid-template-rows:21% 13% 26% 19% 21%;
  }
  .license-plan-row{padding:7px 8px;}
  .license-grid{gap:6px;}
  .license-grid div{min-height:38px;padding:6px 7px;}
  .license-grid strong{font-size:11px;}
}
@media (max-width:900px){
  .right .license-panel{
    display:block;
    margin-bottom:12px;
  }
  .license-grid strong{font-size:12px;}
  .license-top{display:none!important;}
}

/* ==================================================
   v46 Dashboard Design Fix
   - menu no longer clipped by scanner
   - license panel readable
   - mode status text removed in PHP
   ================================================== */
.topbar{
  min-height:96px;
  align-items:start;
  padding-top:10px;
  overflow:visible;
}
.brand,.nav,.top-status{position:relative;z-index:3;}
.nav{
  padding-top:15px;
  align-self:start;
}
.nav a{
  line-height:1.25;
  text-shadow:0 0 8px rgba(255,0,0,.42);
}
.top-scanner.kitt-scanner{
  z-index:1;
  bottom:-12px;
  left:34%;
  right:34%;
}
.dashboard{
  grid-template-rows:100px minmax(0,1fr) 58px;
}
.license-top{display:none!important;}
.license-panel{
  gap:12px;
  padding:18px;
}
.license-panel h2{
  margin-bottom:8px;
}
.license-plan-row{
  min-height:52px;
  padding:12px 14px;
  border-color:rgba(255,0,0,.28);
}
.license-plan-row span,
.license-grid span{
  font-size:11px;
  letter-spacing:2px;
}
.license-plan-row strong{
  font-size:18px;
  letter-spacing:2px;
  color:#fff;
  text-shadow:0 0 12px var(--accent),0 0 22px color-mix(in srgb, var(--accent) 45%, transparent);
}
.license-meter{
  height:10px;
}
.license-grid{
  gap:10px;
}
.license-grid div{
  min-height:58px;
  padding:10px 12px;
}
.license-grid strong{
  font-size:15px;
  line-height:1.25;
  white-space:normal;
  overflow-wrap:anywhere;
}
@media (min-width:901px){
  .right{
    grid-template-rows:22% 14% 28% 17% 19%;
  }
}
@media (max-width:1700px) and (min-width:901px){
  .dashboard{
    grid-template-rows:92px minmax(0,1fr) 54px;
  }
  .topbar{
    min-height:88px;
    padding-top:8px;
  }
  .nav{
    padding-top:13px;
  }
  .top-scanner.kitt-scanner{
    bottom:-10px;
  }
  .right{
    grid-template-rows:21% 13% 30% 16% 20%;
  }
  .license-plan-row strong{font-size:16px;}
  .license-grid strong{font-size:13px;}
  .license-grid div{min-height:50px;padding:9px 10px;}
}
@media (max-width:1450px) and (min-width:901px){
  .dashboard{
    grid-template-rows:86px minmax(0,1fr) 50px;
  }
  .topbar{
    min-height:82px;
    grid-template-columns:250px 1fr 230px;
  }
  .brand-logo{
    height:44px;
  }
  .nav{
    padding-top:11px;
    gap:24px;
  }
  .nav a{
    font-size:18px;
    letter-spacing:3px;
  }
  .top-scanner.kitt-scanner{
    bottom:-9px;
    left:33%;
    right:33%;
  }
  .right{
    grid-template-rows:20% 12% 32% 16% 20%;
  }
  .license-panel{padding:14px;gap:9px;}
  .license-plan-row{min-height:46px;padding:9px 10px;}
  .license-plan-row span,.license-grid span{font-size:10px;letter-spacing:1.6px;}
  .license-plan-row strong{font-size:15px;}
  .license-grid{gap:7px;}
  .license-grid div{min-height:45px;padding:7px 8px;}
  .license-grid strong{font-size:12px;}
}
@media (max-height:820px) and (min-width:901px){
  .license-panel{gap:7px;}
  .license-grid div{min-height:40px;}
  .license-grid strong{font-size:11px;}
}


/* ==================================================
   v47 Dashboard/Footer/Mobile Fix
   ================================================== */

/* Top menu reduced to WEBSEITE + LOGOUT */
.nav{
  gap:42px;
  z-index:4;
}
.nav a.logout,
.nav a.logout:visited{
  color:#ff3030;
  text-shadow:0 0 10px rgba(255,0,0,.62);
}
.nav a.logout:hover,
.nav a.logout:focus{
  color:#fff;
  text-shadow:0 0 10px #ff0000,0 0 24px #ff0000,0 0 42px rgba(255,0,0,.65);
}
body.mode-karr .nav a.logout,
body.mode-karr .nav a.logout:visited{
  color:#ff3030;
  text-shadow:0 0 10px rgba(255,0,0,.62);
}

/* Footer: only centered copyright + right admin/impressum */
.bottom{
  display:grid !important;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:18px;
  padding:0 28px;
  overflow:hidden;
}
.footer-left{display:block!important;min-width:0!important;opacity:0;pointer-events:none;}
.footer-copy-dashboard{
  justify-self:center;
  text-align:center;
  color:#8d5e58;
  font-family:Consolas,monospace;
  font-size:11px;
  letter-spacing:1.5px;
  white-space:nowrap;
  text-shadow:0 0 8px rgba(255,0,0,.22);
}
.footer-right{
  justify-self:end!important;
  width:auto!important;
  min-width:0!important;
  margin-left:0!important;
  padding-right:0!important;
  gap:32px!important;
}
.logout-link{display:none!important;}
.footer-admin-link,.impressum-link{
  color:var(--accent)!important;
  text-decoration:none;
}

/* License panel readability */
.license-panel{
  overflow:visible;
}
.license-plan-row strong{
  font-size:20px;
  line-height:1.15;
}
.license-grid strong{
  font-size:14px;
  line-height:1.25;
}

@media (max-width:1700px) and (min-width:901px){
  .nav{gap:34px;}
  .footer-copy-dashboard{font-size:10px;letter-spacing:1.2px;}
  .footer-right{gap:26px!important;}
}

@media (max-width:1450px) and (min-width:901px){
  .nav{gap:28px;}
  .topbar{grid-template-columns:245px 1fr 230px;}
  .footer-copy-dashboard{font-size:9px;letter-spacing:.9px;}
  .footer-right{gap:22px!important;}
}

/* Mobile dashboard restored */
@media (max-width:900px){
  html,body{
    height:auto;
    min-height:100%;
    overflow-x:hidden!important;
    overflow-y:auto!important;
  }
  .dashboard{
    min-width:0!important;
    width:100%;
    height:auto;
    min-height:100vh;
    display:block!important;
    padding:10px 10px 14px;
  }
  .topbar{
    display:grid!important;
    grid-template-columns:1fr!important;
    min-height:0!important;
    padding:0 0 14px!important;
    margin-bottom:12px;
    gap:11px;
    border-bottom:1px solid var(--line);
  }
  .brand{justify-content:center;}
  .brand-logo{
    height:62px!important;
    max-width:92vw!important;
  }
  .nav{
    order:2;
    justify-content:center;
    gap:28px;
    padding-top:0!important;
    flex-wrap:wrap;
  }
  .nav a{
    font-size:18px!important;
    letter-spacing:2.6px!important;
  }
  .top-status{
    order:3;
    align-items:center!important;
    justify-content:center;
  }
  .clock{
    text-align:center;
    font-size:17px!important;
  }
  .session-badge{
    grid-template-columns:auto auto auto auto;
    font-size:10px;
    gap:6px 8px;
    max-width:100%;
  }
  .top-scanner.kitt-scanner{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    order:4;
    width:min(420px,92vw)!important;
    height:24px!important;
    margin:0 auto;
  }
  .layout{
    display:flex!important;
    flex-direction:column;
    gap:12px;
    min-width:0!important;
  }
  .left{display:none!important;}
  .center{
    display:flex!important;
    flex-direction:column;
    gap:12px;
  }
  .right{
    display:flex!important;
    flex-direction:column;
    gap:12px;
  }
  .right .panel{display:none!important;}
  .right .license-panel,
  .right .panel:last-child{
    display:flex!important;
  }
  .panel{
    clip-path:none!important;
    border-radius:14px;
    padding:16px!important;
  }
  .panel h2{
    font-size:15px!important;
    letter-spacing:2.5px;
    margin-bottom:12px!important;
  }
  .voice-panel{
    min-height:430px;
    padding:16px 10px 18px!important;
  }
  .voice-panel:before{
    inset:28px!important;
    background-size:26px 26px!important;
    opacity:.34!important;
  }
  .voicebox{
    width:min(82vw,360px)!important;
    height:330px!important;
    gap:30px!important;
  }
  body.mode-karr .voicebox{gap:36px!important;}
  .vcol{gap:6px!important;}
  .seg{
    width:34px!important;
    height:11px!important;
  }
  .vcol.center-col .seg{width:42px!important;}
  body.mode-karr .vcol.side .seg{width:36px!important;}
  body.mode-karr .vcol.center-col .seg{width:42px!important;}
  .kitt-title{
    font-size:38px!important;
    letter-spacing:7px!important;
    margin-top:-8px!important;
  }
  .state{
    font-size:14px!important;
    letter-spacing:3px!important;
  }
  .terminal{
    min-height:235px;
    display:flex!important;
    flex-direction:column;
  }
  .terminal h3{
    font-size:13px;
    letter-spacing:2px;
  }
  .last-line{
    flex:1;
    min-height:92px!important;
    max-height:170px!important;
    overflow-y:auto!important;
    font-size:17px!important;
    line-height:1.42;
    padding:10px 8px;
    border:1px solid rgba(255,0,0,.16);
    background:rgba(0,0,0,.28);
  }
  .main-btn{
    min-height:58px!important;
    margin-top:12px!important;
    font-size:14px;
    letter-spacing:2px;
  }
  .license-panel{
    gap:10px!important;
    margin:0!important;
  }
  .license-plan-row{
    min-height:48px!important;
    padding:10px 12px!important;
  }
  .license-plan-row strong{
    font-size:17px!important;
  }
  .license-grid{
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
  }
  .license-grid div{
    min-height:52px!important;
    padding:9px 10px!important;
  }
  .license-grid strong{
    font-size:13px!important;
  }
  .mode{gap:10px!important;}
  .mode a{
    padding:15px 8px!important;
    letter-spacing:2px!important;
  }
  .bottom{
    margin-top:12px;
    height:auto!important;
    min-height:64px;
    display:grid!important;
    grid-template-columns:1fr!important;
    justify-items:center;
    padding:12px 8px!important;
    gap:8px;
  }
  .footer-left{display:none!important;}
  .footer-copy-dashboard{
    white-space:normal;
    max-width:92vw;
    line-height:1.45;
    font-size:10px;
    letter-spacing:.8px;
    order:2;
  }
  .footer-right{
    justify-self:center!important;
    justify-content:center!important;
    gap:24px!important;
    order:1;
  }
  .footer-admin-link,.impressum-link{
    font-size:12px!important;
    letter-spacing:2.2px!important;
  }
}

@media (max-width:420px){
  .nav{gap:22px;}
  .nav a{font-size:16px!important;letter-spacing:2px!important;}
  .voicebox{width:320px!important;height:310px!important;gap:24px!important;}
  body.mode-karr .voicebox{gap:30px!important;}
  .seg{width:30px!important;height:10px!important;}
  .vcol.center-col .seg{width:38px!important;}
  .kitt-title{font-size:32px!important;letter-spacing:6px!important;}
  .session-badge{grid-template-columns:auto auto;font-size:10px;}
  .license-grid{grid-template-columns:1fr!important;}
}


/* ==================================================
   v48 Mobile Touch Fix
   Größere Touch-Flächen + keine unsichtbaren Overlays
   ================================================== */
a,
button,
.main-btn,
.mode a,
.actions button,
.footer-admin-link,
.impressum-link,
.nav a{
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
}

.top-scanner,
.top-scanner *,
.voice-panel:before,
.voice-control,
body:before,
body:after{
  pointer-events:none!important;
}

.main-btn,
.mode a,
.actions button,
.nav a,
.footer-admin-link,
.impressum-link{
  position:relative;
  z-index:10;
}

@media (max-width:900px){
  .nav{
    gap:26px!important;
    padding:6px 0 2px!important;
  }
  .nav a{
    min-height:48px!important;
    min-width:112px!important;
    padding:13px 14px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border:1px solid rgba(255,35,35,.22);
    background:rgba(0,0,0,.24);
    box-shadow:inset 0 0 14px rgba(255,0,0,.08);
  }
  body.mode-karr .nav a{
    border-color:rgba(255,225,0,.25);
    box-shadow:inset 0 0 14px rgba(255,225,0,.08);
  }

  .main-btn{
    min-height:72px!important;
    padding:18px 18px!important;
    font-size:16px!important;
    letter-spacing:2.4px!important;
    width:100%!important;
  }

  .mode{
    gap:14px!important;
  }
  .mode a{
    min-height:72px!important;
    padding:18px 12px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:17px!important;
    letter-spacing:2.6px!important;
  }

  .actions{
    gap:14px!important;
  }
  .actions button{
    min-height:68px!important;
    padding:18px 10px!important;
    font-size:14px!important;
    letter-spacing:1.8px!important;
  }

  .footer-right{
    gap:18px!important;
  }
  .footer-admin-link,
  .impressum-link{
    min-height:46px!important;
    padding:12px 14px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border:1px solid rgba(255,35,35,.20);
    background:rgba(0,0,0,.22);
  }

  .panel,
  .terminal,
  .right .panel:last-child{
    overflow:visible!important;
  }

  .voice-panel{
    isolation:isolate;
  }
}

@media (max-width:420px){
  .nav{
    gap:12px!important;
  }
  .nav a{
    min-width:96px!important;
    min-height:46px!important;
    padding:12px 10px!important;
  }
  .main-btn{
    min-height:70px!important;
    font-size:15px!important;
  }
  .mode a{
    min-height:68px!important;
    font-size:16px!important;
  }
}

/* ==================================================
   v49 Admin horizontal overflow fix
   - verhindert seitlichen Scrollbalken im Adminbereich
   - flexible Grids statt harter Mindestbreiten
   ================================================== */
.admin-console-body,
.admin-console-body html{
  overflow-x:hidden!important;
}
.admin-console-page{
  width:100%!important;
  max-width:100vw!important;
  overflow-x:hidden!important;
  box-sizing:border-box!important;
}
.admin-console-shell,
.admin-console-header,
.admin-overview-grid,
.admin-main-grid,
.admin-users-console,
.admin-user-cards-v42,
.admin-user-console-card,
.admin-ki-panel,
.admin-overview-card{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.admin-main-grid{
  grid-template-columns:minmax(320px,420px) minmax(0,1fr)!important;
}
.admin-user-console-top,
.admin-users-headline{
  min-width:0!important;
}
.admin-user-edit-v42{
  grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) auto!important;
  min-width:0!important;
}
.admin-edit-block,
.admin-edit-block input,
.admin-user-console-card input,
.admin-user-console-card select{
  min-width:0!important;
  max-width:100%!important;
}
.admin-user-actions-v42{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  min-width:0!important;
}
.admin-password-form-v42{
  grid-template-columns:minmax(0,1fr) auto!important;
  min-width:0!important;
}
.admin-time-actions-v42{
  min-width:0!important;
  justify-content:flex-end;
  flex-wrap:wrap!important;
}
.admin-mini-btn,
.admin-time-actions-v42 button,
.admin-password-form-v42 button,
.admin-edit-submit button{
  max-width:100%;
  white-space:nowrap;
}
@media(max-width:1500px){
  .admin-main-grid{grid-template-columns:1fr!important;}
  .admin-side-stack{position:relative!important;top:auto!important;}
  .admin-user-edit-v42{grid-template-columns:1fr 1fr!important;}
  .admin-edit-submit{grid-column:1 / -1!important;justify-content:flex-start!important;}
  .admin-user-actions-v42{grid-template-columns:1fr!important;}
  .admin-time-actions-v42{justify-content:flex-start!important;}
}
@media(max-width:900px){
  .admin-console-page{padding:10px!important;}
  .admin-user-edit-v42{grid-template-columns:1fr!important;}
  .admin-password-form-v42{grid-template-columns:1fr!important;}
  .admin-time-actions-v42{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .admin-time-actions-v42 button{width:100%;}
}


/* v50 Voice Link controls + Admin settings */
.voice-control-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  align-items:center;
  width:100%;
  margin-top:12px;
}
.voice-control-buttons .main-btn{margin-top:0;}
.stop-btn{
  border-color:rgba(255,180,0,.75)!important;
  color:#ffd66b!important;
  background:linear-gradient(180deg,#2a1600,#090400)!important;
  box-shadow:inset 0 0 18px rgba(255,180,0,.16),0 0 18px rgba(255,180,0,.12)!important;
}
.stop-btn:not(:disabled):hover{
  color:#fff!important;
  border-color:#ffcc33!important;
  box-shadow:0 0 12px rgba(255,200,50,.7),0 0 28px rgba(255,180,0,.35)!important;
}
.main-btn:disabled,
.admin-mini-btn:disabled{
  opacity:.45;
  cursor:not-allowed;
  filter:saturate(.65);
}
.admin-edit-block select,
.admin-create-panel select{
  width:100%;
  min-width:0;
  padding:12px 13px;
  margin:0 0 10px;
  background:#050000;
  border:1px solid var(--line);
  color:#fff;
  outline:none;
  text-transform:uppercase;
  letter-spacing:1px;
}
.admin-edit-block input[name="login_token"],
.admin-create-panel input[name="new_login_token"]{
  font-family:Consolas,monospace;
  color:#ffe3d9;
}
@media(max-width:900px){
  .voice-control-buttons{
    grid-template-columns:1fr;
    gap:10px;
  }
  .voice-control-buttons .main-btn{
    min-height:64px;
  }
}


/* v51 Admin overlap fix + safer mobile/control layout */
.admin-user-edit-v42{
  align-items:start!important;
}
.admin-edit-block.identity,
.admin-edit-block.agents{
  overflow:visible!important;
}
.admin-edit-block.identity .admin-inline-check,
.admin-create-panel .admin-check,
.admin-check-large{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  min-height:34px!important;
  margin:12px 0 10px!important;
  white-space:normal!important;
  overflow:visible!important;
  line-height:1.35!important;
}
.admin-edit-block.identity .admin-inline-check input,
.admin-create-panel .admin-check input,
.admin-check-large input{
  flex:0 0 auto!important;
  width:18px!important;
  height:18px!important;
  min-height:18px!important;
  margin:0!important;
}
.admin-edit-block.identity select,
.admin-edit-block.identity input,
.admin-edit-block.agents input{
  position:relative!important;
  z-index:1!important;
}
.admin-edit-block.agents{
  position:relative!important;
  z-index:2!important;
}
@media(max-width:1500px){
  .admin-user-edit-v42{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  }
  .admin-edit-submit{
    grid-column:1 / -1!important;
    justify-content:flex-end!important;
  }
}
@media(max-width:1050px){
  .admin-user-edit-v42{
    grid-template-columns:1fr!important;
  }
  .admin-edit-submit{
    justify-content:stretch!important;
  }
  .admin-save{width:100%!important;}
}


/* ==================================================
   v52 Mode Select Fix + Auto-start hint
   ================================================== */
.mode-panel{
  overflow:visible!important;
}
.mode{
  position:relative;
  z-index:30;
  pointer-events:auto!important;
}
.mode a,
.mode a:visited{
  position:relative!important;
  z-index:40!important;
  pointer-events:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:58px;
  width:100%;
  user-select:none;
}
.mode a:hover,
.mode a:focus{
  transform:none!important;
}
.mode-default-note{
  margin-top:10px;
  color:var(--muted);
  font-size:11px;
  line-height:1.35;
  letter-spacing:1.4px;
  text-transform:uppercase;
}
body.mode-karr .mode-default-note{
  color:#9b7c3c;
}
@media(max-width:900px){
  .mode-panel{
    padding-bottom:18px!important;
  }
  .mode a{
    min-height:76px!important;
    padding:20px 14px!important;
    font-size:18px!important;
  }
  .mode-default-note{
    text-align:center;
    font-size:11px;
    letter-spacing:1.1px;
  }
}


/* Firmware / build info v54 */
.footer-version{
    color:#666;
    font-size:11px;
    letter-spacing:2px;
    white-space:nowrap;
    opacity:.75;
    margin-left:14px;
    transition:.25s;
    text-transform:uppercase;
}
.footer-version:hover{
    color:#aaa;
    opacity:1;
}
@media(max-width:900px){
    .footer-version{
        width:100%;
        text-align:center;
        margin-left:0;
        font-size:10px;
        letter-spacing:1.6px;
    }
}


/* Quick Sound Links v0.55 */
.quick-sound-actions{
    grid-template-columns:repeat(3, minmax(0,1fr));
}
.quick-sound-actions button{
    min-width:0;
}
@media(max-width:900px){
    .quick-sound-actions{
        grid-template-columns:1fr;
    }
    .quick-sound-actions button{
        min-height:64px;
    }
}


/* Quick Actions Redesign v0.56 */
.quick-sound-actions{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}
.quick-sound-actions .action-btn{
    width:100%;
    min-height:58px;
    cursor:pointer;
    pointer-events:auto;
    touch-action:manipulation;
    -webkit-tap-highlight-color:transparent;
    border:1px solid rgba(255,35,35,.50);
    background:linear-gradient(180deg,rgba(28,0,0,.95),rgba(7,0,0,.96));
    color:#ffbfb3;
    text-decoration:none;
    text-align:center;
    letter-spacing:2.4px;
    text-transform:uppercase;
    font-weight:900;
    font-size:12px;
    line-height:1.1;
    box-shadow:inset 0 0 18px rgba(255,0,0,.12),0 0 10px rgba(255,0,0,.08);
    transition:color .22s ease,border-color .22s ease,box-shadow .22s ease,transform .08s ease,background .22s ease;
}
.quick-sound-actions .action-btn:hover{
    color:#fff;
    border-color:var(--red);
    background:linear-gradient(180deg,rgba(46,0,0,.98),rgba(10,0,0,.98));
    box-shadow:0 0 14px rgba(255,0,0,.55),inset 0 0 22px rgba(255,0,0,.18);
}
.quick-sound-actions .action-btn:active{
    transform:scale(.985);
}
.quick-sound-actions .action-btn.stop{
    color:#ff8880;
    border-color:rgba(255,64,64,.78);
    background:linear-gradient(180deg,rgba(34,0,0,.98),rgba(6,0,0,.98));
}
.quick-sound-actions .action-btn.stop:hover{
    color:#fff;
    border-color:#ff3030;
    box-shadow:0 0 16px rgba(255,0,0,.70),inset 0 0 24px rgba(255,0,0,.22);
}
body.mode-karr .quick-sound-actions .action-btn{
    border-color:rgba(255,225,0,.45);
    background:linear-gradient(180deg,rgba(36,28,0,.95),rgba(6,5,0,.96));
    color:#fff0ad;
    box-shadow:inset 0 0 18px rgba(255,225,0,.10),0 0 10px rgba(255,225,0,.08);
}
body.mode-karr .quick-sound-actions .action-btn:hover{
    color:#fff;
    border-color:var(--red);
    box-shadow:0 0 14px rgba(255,225,0,.55),inset 0 0 22px rgba(255,225,0,.18);
}
body.mode-karr .quick-sound-actions .action-btn.stop{
    color:#ff8880;
    border-color:rgba(255,64,64,.78);
    background:linear-gradient(180deg,rgba(34,0,0,.98),rgba(6,0,0,.98));
}
@media(max-width:900px){
    .quick-sound-actions{
        grid-template-columns:1fr;
        gap:12px;
    }
    .quick-sound-actions .action-btn{
        min-height:68px;
        font-size:15px;
        letter-spacing:2.2px;
    }
}


/* v0.57 final polish: modular Quicklinks + footer disclaimer */
.mode-default-note{display:none!important;}
.footer-admin-link{text-transform:none!important;}
.footer-copy-dashboard{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    max-width:min(920px,56vw);
    text-align:center;
    line-height:1.35;
    white-space:normal!important;
    pointer-events:none;
}
.footer-disclaimer-dashboard{
    display:block;
    margin-top:3px;
    color:#686868;
    font-size:10px;
    letter-spacing:.7px;
    line-height:1.25;
}
.quick-sound-actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px!important;
    height:auto!important;
    align-content:stretch;
}
.quick-sound-actions .action-btn{
    width:100%!important;
    min-width:0!important;
    min-height:54px!important;
    height:auto!important;
    padding:13px 10px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    line-height:1.15!important;
    white-space:normal!important;
    overflow:visible!important;
    text-align:center!important;
}
.right .panel:has(.quick-sound-actions){
    overflow:visible!important;
    min-height:auto!important;
}
@supports not selector(:has(*)){
    .quick-sound-actions{overflow:visible!important;}
}
@media(max-width:1700px){
    .quick-sound-actions{gap:10px!important;}
    .quick-sound-actions .action-btn{min-height:50px!important;padding:11px 8px!important;font-size:12px!important;letter-spacing:1.8px!important;}
    .footer-copy-dashboard{max-width:52vw;font-size:10px;}
    .footer-disclaimer-dashboard{font-size:9px;}
}
@media(max-width:1450px){
    .quick-sound-actions{grid-template-columns:1fr!important;gap:8px!important;}
    .quick-sound-actions .action-btn{min-height:44px!important;padding:9px 8px!important;font-size:11px!important;letter-spacing:1.5px!important;}
    .footer-copy-dashboard{display:none!important;}
}
@media(max-width:900px){
    .quick-sound-actions{grid-template-columns:1fr 1fr!important;gap:12px!important;}
    .quick-sound-actions .action-btn{min-height:66px!important;font-size:14px!important;letter-spacing:2px!important;padding:16px 10px!important;}
    .footer-copy-dashboard{
        position:static!important;
        transform:none!important;
        max-width:100%!important;
        width:100%!important;
        display:block!important;
        order:1;
        margin-bottom:10px;
        font-size:10px!important;
    }
    .footer-disclaimer-dashboard{font-size:9px!important;line-height:1.35;}
    .footer-right{order:2;}
    .bottom{flex-direction:column!important;gap:8px!important;}
}
@media(max-width:420px){
    .quick-sound-actions{grid-template-columns:1fr!important;}
}

/* ==================================================
   v58 Responsive Layout Fix
   - KITT title no longer clipped
   - Footer links right aligned / copyright centered
   - Quick Links fully visible on desktop + mobile
   ================================================== */
.dashboard{
    grid-template-rows:84px minmax(0,1fr) 72px!important;
    min-height:100vh!important;
}
.layout{
    min-height:0!important;
    overflow:hidden!important;
}
.center{
    grid-template-rows:minmax(0,1fr) minmax(245px,270px)!important;
    min-height:0!important;
}
.voice-panel{
    grid-template-rows:auto minmax(0,1fr) auto auto!important;
    padding:18px 22px 14px!important;
    overflow:hidden!important;
}
.voicebox{
    height:min(48vh,500px)!important;
    max-height:calc(100% - 120px)!important;
    width:min(40vw,540px)!important;
}
.kitt-title{
    margin:6px 0 0!important;
    font-size:clamp(42px,4vw,64px)!important;
    line-height:.95!important;
    letter-spacing:clamp(8px,.8vw,13px)!important;
}
.state{
    margin:2px 0 0!important;
    line-height:1.1!important;
}
.terminal{
    min-height:0!important;
    overflow:hidden!important;
}
.voice-control-buttons{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:12px!important;
    width:100%!important;
    margin-top:12px!important;
}
.voice-control-buttons .main-btn{
    margin:0!important;
    min-height:54px!important;
    width:100%!important;
}
.right{
    display:grid!important;
    grid-template-rows:minmax(130px,1.05fr) minmax(92px,.68fr) minmax(155px,1.05fr) minmax(152px,.9fr) minmax(118px,.72fr)!important;
    gap:12px!important;
    min-height:0!important;
    overflow:hidden!important;
}
.right .panel{
    min-height:0!important;
    overflow:hidden!important;
}
.right .panel:has(.quick-sound-actions){
    min-height:152px!important;
    overflow:visible!important;
}
.quick-sound-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    height:auto!important;
    overflow:visible!important;
    align-content:start!important;
}
.quick-sound-actions .action-btn{
    min-height:48px!important;
    height:auto!important;
    width:100%!important;
    padding:12px 10px!important;
    line-height:1.15!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    white-space:normal!important;
}
.mode-panel{
    min-height:118px!important;
}
.mode-panel .mode a{
    min-height:54px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
}
.bottom{
    height:72px!important;
    min-height:72px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    padding:8px 22px!important;
    gap:18px!important;
    overflow:hidden!important;
}
.footer-copy-dashboard{
    position:absolute!important;
    left:50%!important;
    bottom:7px!important;
    transform:translateX(-50%)!important;
    width:min(900px,62vw)!important;
    max-width:62vw!important;
    margin:0!important;
    text-align:center!important;
    font-size:10px!important;
    line-height:1.45!important;
    letter-spacing:1.1px!important;
    pointer-events:none!important;
    z-index:1!important;
}
.footer-right{
    grid-column:2!important;
    justify-self:end!important;
    align-self:center!important;
    margin-left:auto!important;
    width:auto!important;
    min-width:0!important;
    justify-content:flex-end!important;
    gap:26px!important;
    padding-right:0!important;
    z-index:2!important;
}
.footer-admin-link,
.impressum-link,
.footer-version{
    white-space:nowrap!important;
}

@media(max-width:1700px){
    .dashboard{grid-template-rows:78px minmax(0,1fr) 68px!important;}
    .center{grid-template-rows:minmax(0,1fr) minmax(230px,255px)!important;}
    .voicebox{height:min(44vh,430px)!important;}
    .kitt-title{font-size:clamp(38px,3.8vw,58px)!important;}
    .right{grid-template-rows:minmax(120px,1fr) minmax(86px,.62fr) minmax(145px,.98fr) minmax(142px,.86fr) minmax(112px,.68fr)!important;gap:10px!important;}
    .quick-sound-actions .action-btn{min-height:44px!important;padding:10px 8px!important;font-size:12px!important;letter-spacing:1.8px!important;}
    .footer-copy-dashboard{font-size:9.5px!important;max-width:56vw!important;width:56vw!important;}
    .footer-right{gap:22px!important;}
}

@media(max-width:1450px){
    .dashboard{grid-template-rows:72px minmax(0,1fr) 64px!important;}
    .center{grid-template-rows:minmax(0,1fr) minmax(215px,240px)!important;}
    .voicebox{height:min(40vh,360px)!important;}
    .kitt-title{font-size:clamp(34px,3.4vw,48px)!important;letter-spacing:7px!important;}
    .right{grid-template-rows:minmax(112px,1fr) minmax(82px,.6fr) minmax(132px,.95fr) minmax(130px,.82fr) minmax(104px,.66fr)!important;}
    .panel h2{font-size:16px!important;margin-bottom:10px!important;}
    .quick-sound-actions{gap:8px!important;}
    .quick-sound-actions .action-btn{min-height:40px!important;font-size:11px!important;letter-spacing:1.5px!important;padding:8px 7px!important;}
    .footer-copy-dashboard{display:none!important;}
    .footer-right{gap:18px!important;}
}

@media(max-height:850px) and (min-width:901px){
    .dashboard{grid-template-rows:70px minmax(0,1fr) 54px!important;gap:8px!important;}
    .center{grid-template-rows:minmax(0,1fr) minmax(198px,220px)!important;}
    .voicebox{height:min(36vh,310px)!important;}
    .kitt-title{font-size:clamp(30px,3.1vw,42px)!important;margin-top:2px!important;}
    .voice-control-buttons .main-btn{min-height:44px!important;font-size:11px!important;letter-spacing:1.8px!important;}
    .right{grid-template-rows:minmax(98px,1fr) minmax(74px,.55fr) minmax(118px,.9fr) minmax(118px,.78fr) minmax(96px,.62fr)!important;gap:8px!important;}
    .quick-sound-actions .action-btn{min-height:36px!important;font-size:10px!important;letter-spacing:1.3px!important;padding:7px 6px!important;}
    .mode-panel .mode a{min-height:42px!important;font-size:12px!important;}
    .bottom{height:54px!important;min-height:54px!important;padding:6px 18px!important;}
    .footer-copy-dashboard{display:none!important;}
}

@media(max-width:900px){
    html,body{overflow-x:hidden!important;overflow-y:auto!important;height:auto!important;}
    .dashboard{
        display:block!important;
        height:auto!important;
        min-height:100vh!important;
        padding:10px 10px 14px!important;
        overflow:visible!important;
    }
    .layout{display:flex!important;flex-direction:column!important;gap:12px!important;overflow:visible!important;}
    .center{display:flex!important;flex-direction:column!important;gap:12px!important;}
    .voice-panel{min-height:430px!important;padding:16px 10px 18px!important;}
    .voicebox{width:min(82vw,360px)!important;height:330px!important;max-height:none!important;}
    .kitt-title{font-size:38px!important;letter-spacing:7px!important;margin-top:-8px!important;}
    .terminal{min-height:260px!important;overflow:visible!important;}
    .voice-control-buttons{grid-template-columns:1fr!important;gap:10px!important;}
    .voice-control-buttons .main-btn{min-height:62px!important;font-size:14px!important;}
    .right{display:flex!important;flex-direction:column!important;gap:12px!important;overflow:visible!important;}
    .right .panel{display:none!important;overflow:visible!important;}
    .right .license-panel,
    .right .panel:has(.quick-sound-actions),
    .right .mode-panel{display:block!important;min-height:0!important;}
    .right .panel:has(.quick-sound-actions){min-height:0!important;}
    .quick-sound-actions{grid-template-columns:1fr 1fr!important;gap:12px!important;}
    .quick-sound-actions .action-btn{min-height:66px!important;font-size:14px!important;letter-spacing:2px!important;padding:16px 10px!important;}
    .mode-panel .mode a{min-height:66px!important;font-size:16px!important;}
    .bottom{
        height:auto!important;
        min-height:0!important;
        display:flex!important;
        flex-direction:column!important;
        justify-content:center!important;
        align-items:center!important;
        gap:8px!important;
        padding:12px 8px!important;
        overflow:visible!important;
    }
    .footer-copy-dashboard{
        position:static!important;
        transform:none!important;
        width:100%!important;
        max-width:100%!important;
        display:block!important;
        order:2!important;
        font-size:9px!important;
        line-height:1.35!important;
        letter-spacing:.8px!important;
        pointer-events:auto!important;
    }
    .footer-right{
        order:1!important;
        width:100%!important;
        justify-content:center!important;
        gap:20px!important;
        flex-wrap:wrap!important;
    }
}

@media(max-width:420px){
    .quick-sound-actions{grid-template-columns:1fr!important;}
    .quick-sound-actions .action-btn{min-height:58px!important;}
    .voicebox{width:320px!important;height:310px!important;}
    .kitt-title{font-size:32px!important;letter-spacing:6px!important;}
}


/* ==================================================
   v59 License Status Clipping Fix
   - License panel gets guaranteed height on desktop
   - 2x2 license grid no longer clipped
   - Right column remains modular for smaller screens
   ================================================== */
.license-panel{
    min-height:190px!important;
    overflow:visible!important;
    display:flex!important;
    flex-direction:column!important;
    gap:12px!important;
    padding:18px!important;
}
.license-plan-row{
    min-height:52px!important;
    flex:0 0 auto!important;
    display:flex!important;
    align-items:center!important;
}
.license-grid{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    flex:1 1 auto!important;
    min-height:116px!important;
}
.license-grid div{
    min-height:54px!important;
    padding:11px 12px!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
}
.license-grid span{
    flex:0 0 auto!important;
}
.license-grid strong{
    display:block!important;
    line-height:1.25!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
}
.right{
    grid-template-rows:minmax(125px,.92fr) minmax(84px,.58fr) minmax(190px,1.25fr) minmax(150px,.85fr) minmax(112px,.62fr)!important;
}
@media(max-width:1700px){
    .right{grid-template-rows:minmax(112px,.88fr) minmax(78px,.55fr) minmax(188px,1.28fr) minmax(138px,.78fr) minmax(104px,.58fr)!important;}
    .license-panel{min-height:188px!important;padding:16px!important;gap:10px!important;}
    .license-grid{min-height:108px!important;gap:9px!important;}
    .license-grid div{min-height:50px!important;padding:9px 10px!important;}
}
@media(max-width:1450px){
    .right{grid-template-rows:minmax(104px,.82fr) minmax(72px,.52fr) minmax(176px,1.28fr) minmax(124px,.72fr) minmax(98px,.56fr)!important;}
    .license-panel{min-height:176px!important;padding:14px!important;gap:8px!important;}
    .license-plan-row{min-height:44px!important;}
    .license-grid{min-height:100px!important;gap:8px!important;}
    .license-grid div{min-height:46px!important;padding:8px 9px!important;}
    .license-grid strong{font-size:12px!important;}
}
@media(max-height:850px) and (min-width:901px){
    .right{grid-template-rows:minmax(90px,.78fr) minmax(64px,.48fr) minmax(158px,1.25fr) minmax(108px,.66fr) minmax(88px,.52fr)!important;}
    .license-panel{min-height:158px!important;padding:12px!important;gap:7px!important;}
    .license-plan-row{min-height:38px!important;padding:7px 9px!important;}
    .license-plan-row strong{font-size:14px!important;}
    .license-grid{min-height:88px!important;gap:6px!important;}
    .license-grid div{min-height:41px!important;padding:6px 8px!important;}
    .license-grid span{font-size:9px!important;letter-spacing:1.2px!important;}
    .license-grid strong{font-size:11px!important;line-height:1.18!important;}
}
@media(max-width:900px){
    .license-panel{
        min-height:auto!important;
        padding:16px!important;
        gap:12px!important;
        overflow:visible!important;
    }
    .license-plan-row{min-height:58px!important;}
    .license-grid{
        grid-template-columns:1fr 1fr!important;
        min-height:auto!important;
        gap:10px!important;
    }
    .license-grid div{
        min-height:58px!important;
        padding:11px 12px!important;
    }
}
@media(max-width:420px){
    .license-grid{grid-template-columns:1fr!important;}
    .license-grid div{min-height:54px!important;}
}

/* v62 Quick Links: 6 Buttons + Volume Slider */
.quick-links-panel{
    overflow:visible!important;
    padding-bottom:16px!important;
}
.quick-sound-actions{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px!important;
    overflow:visible!important;
}
.quick-sound-actions .action-btn{
    min-height:46px!important;
    width:100%!important;
    padding:10px 8px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    box-sizing:border-box!important;
    font-size:12px!important;
    letter-spacing:1.8px!important;
    line-height:1.1!important;
    white-space:nowrap!important;
}
.quick-sound-actions .action-btn.active-demo{
    border-color:var(--green)!important;
    color:var(--green)!important;
    box-shadow:0 0 14px rgba(103,255,28,.45), inset 0 0 18px rgba(103,255,28,.10)!important;
}
.sound-volume-control{
    margin-top:12px;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) 52px;
    gap:12px;
    align-items:center;
    color:#d8aaa4;
    font-family:Consolas,monospace;
    font-size:12px;
    letter-spacing:2px;
    text-transform:uppercase;
}
.sound-volume-control label{
    color:var(--red);
    text-shadow:0 0 8px rgba(255,0,0,.55);
}
.sound-volume-control span{
    color:#ffd0c8;
    text-align:right;
    font-weight:900;
}
.sound-volume-control input[type="range"]{
    width:100%;
    accent-color:var(--red);
    cursor:pointer;
}
body.mode-karr .sound-volume-control input[type="range"]{
    accent-color:var(--red);
}
@media(max-width:1700px){
    .quick-sound-actions{gap:8px!important;}
    .quick-sound-actions .action-btn{min-height:42px!important;font-size:11px!important;letter-spacing:1.5px!important;padding:9px 6px!important;}
    .sound-volume-control{margin-top:10px;gap:10px;font-size:11px;}
}
@media(max-width:1450px){
    .quick-sound-actions .action-btn{min-height:38px!important;font-size:10px!important;letter-spacing:1.2px!important;padding:8px 5px!important;}
    .sound-volume-control{grid-template-columns:auto minmax(0,1fr) 46px;font-size:10px;letter-spacing:1.4px;}
}
@media(max-width:900px){
    .quick-links-panel{display:block!important;}
    .quick-sound-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;}
    .quick-sound-actions .action-btn{min-height:62px!important;font-size:13px!important;letter-spacing:1.8px!important;padding:14px 8px!important;white-space:normal!important;}
    .sound-volume-control{grid-template-columns:1fr 64px;gap:10px;margin-top:14px;font-size:12px;}
    .sound-volume-control label{grid-column:1 / -1;}
    .sound-volume-control input[type="range"]{min-height:36px;}
}
@media(max-width:420px){
    .quick-sound-actions{grid-template-columns:1fr!important;}
    .quick-sound-actions .action-btn{min-height:56px!important;}
}


/* v63 Quick Links fixed 3x2 desktop layout */
.quick-links-panel{
    overflow:visible!important;
}
.quick-sound-actions.quick-grid,
.quick-sound-actions{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-auto-flow:row!important;
    gap:10px!important;
    width:100%!important;
    overflow:visible!important;
}
.quick-sound-actions.quick-grid .action-btn,
.quick-sound-actions .action-btn{
    width:100%!important;
    min-width:0!important;
    min-height:48px!important;
    padding:10px 8px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    box-sizing:border-box!important;
    white-space:nowrap!important;
}
@media(max-width:1450px){
    .quick-sound-actions.quick-grid,
    .quick-sound-actions{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
        gap:8px!important;
    }
    .quick-sound-actions.quick-grid .action-btn,
    .quick-sound-actions .action-btn{
        min-height:44px!important;
        font-size:10px!important;
        letter-spacing:1.1px!important;
        padding:8px 5px!important;
    }
}
@media(max-width:900px){
    .quick-sound-actions.quick-grid,
    .quick-sound-actions{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:12px!important;
    }
    .quick-sound-actions.quick-grid .action-btn,
    .quick-sound-actions .action-btn{
        min-height:62px!important;
        font-size:13px!important;
        letter-spacing:1.8px!important;
        padding:14px 8px!important;
        white-space:normal!important;
    }
}
@media(max-width:420px){
    .quick-sound-actions.quick-grid,
    .quick-sound-actions{
        grid-template-columns:1fr!important;
    }
}

/* v64 Quick Links Fix: Desktop fest 3x2, erst mobil umbrechen */
.quick-links-panel{
    overflow:visible!important;
    min-height:0!important;
    padding-bottom:16px!important;
}
.quick-links-panel .quick-sound-actions,
.quick-links-panel .quick-sound-actions.quick-grid{
    display:grid!important;
    grid-template-columns:repeat(3, minmax(0, 1fr))!important;
    grid-auto-flow:row!important;
    grid-auto-rows:minmax(46px, auto)!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
}
.quick-links-panel .quick-sound-actions .action-btn,
.quick-links-panel .quick-sound-actions.quick-grid .action-btn{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:46px!important;
    padding:10px 6px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
.sound-volume-control{
    margin-top:12px!important;
}
@media(max-width:1450px) and (min-width:701px){
    .quick-links-panel .quick-sound-actions,
    .quick-links-panel .quick-sound-actions.quick-grid{
        grid-template-columns:repeat(3, minmax(0, 1fr))!important;
        gap:8px!important;
    }
    .quick-links-panel .quick-sound-actions .action-btn,
    .quick-links-panel .quick-sound-actions.quick-grid .action-btn{
        min-height:42px!important;
        font-size:10px!important;
        letter-spacing:1px!important;
        padding:8px 4px!important;
    }
}
@media(max-width:700px){
    .quick-links-panel .quick-sound-actions,
    .quick-links-panel .quick-sound-actions.quick-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr))!important;
        gap:12px!important;
    }
    .quick-links-panel .quick-sound-actions .action-btn,
    .quick-links-panel .quick-sound-actions.quick-grid .action-btn{
        min-height:62px!important;
        font-size:13px!important;
        letter-spacing:1.6px!important;
        padding:14px 8px!important;
        white-space:normal!important;
        overflow:visible!important;
        text-overflow:clip!important;
    }
}
@media(max-width:420px){
    .quick-links-panel .quick-sound-actions,
    .quick-links-panel .quick-sound-actions.quick-grid{
        grid-template-columns:1fr!important;
    }
}


/* v67 QUICK LINKS FINAL GRID FIX
   Eigene Klasse, damit alte .actions/.quick-sound-actions Regeln nichts mehr überschreiben. */
.quick-links-panel{
    overflow:visible!important;
    min-height:auto!important;
}
.quick-sound-grid-v67{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-template-rows:repeat(2,minmax(46px,auto))!important;
    gap:10px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    overflow:visible!important;
}
.quick-sound-grid-v67 .action-btn{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:46px!important;
    height:auto!important;
    padding:10px 6px!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
@media(max-width:1450px) and (min-width:701px){
    .quick-sound-grid-v67{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
        grid-template-rows:repeat(2,minmax(42px,auto))!important;
        gap:8px!important;
    }
    .quick-sound-grid-v67 .action-btn{
        min-height:42px!important;
        font-size:10px!important;
        letter-spacing:1px!important;
        padding:8px 4px!important;
    }
}
@media(max-width:700px){
    .quick-sound-grid-v67{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:12px!important;
    }
    .quick-sound-grid-v67 .action-btn{
        min-height:62px!important;
        font-size:13px!important;
        letter-spacing:1.6px!important;
        padding:14px 8px!important;
        white-space:normal!important;
        overflow:visible!important;
        text-overflow:clip!important;
    }
}
@media(max-width:420px){
    .quick-sound-grid-v67{grid-template-columns:1fr!important;}
}

/* v68 Quick Links: 3x2 Grid im vorhandenen KITT-Button-Design */
.quick-links-panel .quick-sound-grid-v67{
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows:repeat(2, minmax(48px, auto)) !important;
    grid-auto-flow:row !important;
    gap:10px !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    overflow:visible !important;
}
.quick-links-panel .quick-sound-grid-v67 .action-btn{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    min-height:48px !important;
    height:auto !important;
    padding:10px 8px !important;
    box-sizing:border-box !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    cursor:pointer !important;
    border:1px solid rgba(255,35,35,.58) !important;
    background:linear-gradient(180deg,rgba(35,0,0,.72),rgba(7,0,0,.94)) !important;
    color:#ffd0c8 !important;

    font-family:Eurostile,Orbitron,Arial,sans-serif !important;
    font-weight:900 !important;
    font-size:12px !important;
    letter-spacing:2.2px !important;
    text-transform:uppercase !important;
    text-align:center !important;
    text-decoration:none !important;
    line-height:1.1 !important;

    box-shadow:inset 0 0 18px rgba(255,0,0,.13),0 0 10px rgba(255,0,0,.12) !important;
    transition:color .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease,transform .08s ease !important;
    appearance:none !important;
    -webkit-appearance:none !important;
    -webkit-tap-highlight-color:transparent !important;
    touch-action:manipulation !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
}
.quick-links-panel .quick-sound-grid-v67 .action-btn:hover{
    color:#fff !important;
    border-color:var(--accent) !important;
    box-shadow:0 0 14px color-mix(in srgb,var(--accent) 72%,transparent),inset 0 0 22px rgba(255,0,0,.18) !important;
}
.quick-links-panel .quick-sound-grid-v67 .action-btn:active{
    transform:scale(.985) !important;
}
.quick-links-panel .quick-sound-grid-v67 .action-btn.stop{
    color:#ffaaa4 !important;
    border-color:rgba(255,64,64,.82) !important;
}
.quick-links-panel .quick-sound-grid-v67 .action-btn.stop:hover{
    color:#fff !important;
    background:linear-gradient(180deg,rgba(75,0,0,.86),rgba(12,0,0,.96)) !important;
    box-shadow:0 0 14px rgba(255,0,0,.75),inset 0 0 22px rgba(255,0,0,.22) !important;
}
body.mode-karr .quick-links-panel .quick-sound-grid-v67 .action-btn{
    border-color:rgba(255,225,0,.52) !important;
    background:linear-gradient(180deg,rgba(42,34,0,.72),rgba(7,6,0,.94)) !important;
    color:#fff1a6 !important;
    box-shadow:inset 0 0 18px rgba(255,225,0,.11),0 0 10px rgba(255,225,0,.10) !important;
}
body.mode-karr .quick-links-panel .quick-sound-grid-v67 .action-btn:hover{
    border-color:var(--accent) !important;
    color:#fff !important;
    box-shadow:0 0 14px rgba(255,225,0,.62),inset 0 0 22px rgba(255,225,0,.16) !important;
}
body.mode-karr .quick-links-panel .quick-sound-grid-v67 .action-btn.stop{
    border-color:rgba(255,64,64,.82) !important;
    color:#ffaaa4 !important;
}
@media(max-width:1450px) and (min-width:701px){
    .quick-links-panel .quick-sound-grid-v67{
        grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
        grid-template-rows:repeat(2, minmax(42px, auto)) !important;
        gap:8px !important;
    }
    .quick-links-panel .quick-sound-grid-v67 .action-btn{
        min-height:42px !important;
        font-size:10px !important;
        letter-spacing:1.35px !important;
        padding:8px 5px !important;
    }
}
@media(max-width:700px){
    .quick-links-panel .quick-sound-grid-v67{
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
        grid-template-rows:auto !important;
        gap:12px !important;
    }
    .quick-links-panel .quick-sound-grid-v67 .action-btn{
        min-height:62px !important;
        font-size:13px !important;
        letter-spacing:1.8px !important;
        padding:14px 8px !important;
        white-space:normal !important;
        overflow:visible !important;
        text-overflow:clip !important;
    }
}
@media(max-width:420px){
    .quick-links-panel .quick-sound-grid-v67{
        grid-template-columns:1fr !important;
    }
}


/* v70 Mobile Quick Links Visibility Fix
   Mobile hatte die rechten Panels pauschal ausgeblendet. Dadurch waren die Sound-Buttons nicht sichtbar.
   Quick Links werden mobil jetzt explizit wieder eingeblendet. */
@media (max-width:900px){
    .right{
        display:flex!important;
        flex-direction:column!important;
        gap:12px!important;
        overflow:visible!important;
    }
    .right .panel{
        display:none!important;
    }
    .right .license-panel,
    .right .quick-links-panel,
    .right .mode-panel{
        display:block!important;
        visibility:visible!important;
        opacity:1!important;
        width:100%!important;
        min-height:0!important;
        height:auto!important;
        overflow:visible!important;
    }
    .right .license-panel{order:1!important;}
    .right .quick-links-panel{order:2!important;}
    .right .mode-panel{order:3!important;}

    .quick-links-panel .quick-sound-grid-v67{
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        grid-template-rows:auto!important;
        gap:12px!important;
        width:100%!important;
        max-width:100%!important;
        overflow:visible!important;
    }
    .quick-links-panel .quick-sound-grid-v67 .action-btn{
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        width:100%!important;
        min-width:0!important;
        min-height:62px!important;
        padding:14px 8px!important;
        font-size:13px!important;
        letter-spacing:1.6px!important;
        line-height:1.2!important;
        white-space:normal!important;
        overflow:visible!important;
        text-overflow:clip!important;
        touch-action:manipulation!important;
    }
    .sound-volume-control{
        display:grid!important;
        grid-template-columns:auto 1fr auto!important;
        align-items:center!important;
        gap:10px!important;
        width:100%!important;
        margin-top:14px!important;
    }
    .sound-volume-control input[type="range"]{
        width:100%!important;
        min-width:0!important;
    }
}

@media (max-width:420px){
    .quick-links-panel .quick-sound-grid-v67{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:10px!important;
    }
    .quick-links-panel .quick-sound-grid-v67 .action-btn{
        min-height:58px!important;
        font-size:11px!important;
        letter-spacing:1.2px!important;
        padding:12px 6px!important;
    }
}


/* v71 Mobile / small window quick links visibility hard fix
   Alte mobile Regeln haben .right .panel pauschal ausgeblendet und nur alte :has(.quick-sound-actions)
   Regeln wieder eingeblendet. Die aktuellen Soundbuttons liegen in .quick-links-panel/.quick-sound-grid-v67.
   Dieser Block steht ganz am Ende und gewinnt bewusst gegen ältere Regeln. */
@media (max-width: 1100px){
    .right{
        display:flex !important;
        flex-direction:column !important;
        gap:12px !important;
        overflow:visible !important;
    }

    .right .panel{
        overflow:visible !important;
    }

    .right .quick-links-panel{
        display:block !important;
        visibility:visible !important;
        opacity:1 !important;
        width:100% !important;
        height:auto !important;
        min-height:0 !important;
        overflow:visible !important;
    }

    .right .quick-links-panel .quick-sound-grid-v67{
        display:grid !important;
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
        grid-auto-flow:row !important;
        gap:12px !important;
        width:100% !important;
        max-width:100% !important;
        overflow:visible !important;
    }

    .right .quick-links-panel .quick-sound-grid-v67 .action-btn{
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        width:100% !important;
        min-width:0 !important;
        min-height:62px !important;
        padding:14px 8px !important;
        box-sizing:border-box !important;
        white-space:normal !important;
        overflow:visible !important;
        touch-action:manipulation !important;
    }

    .right .quick-links-panel .sound-volume-control{
        display:grid !important;
        grid-template-columns:auto 1fr auto !important;
        align-items:center !important;
        gap:10px !important;
        width:100% !important;
        margin-top:14px !important;
    }
}

@media (max-width: 900px){
    .right .panel{
        display:none !important;
    }

    .right .license-panel,
    .right .quick-links-panel,
    .right .mode-panel{
        display:block !important;
        visibility:visible !important;
        opacity:1 !important;
        width:100% !important;
        height:auto !important;
        min-height:0 !important;
        overflow:visible !important;
    }

    .right .license-panel{order:1 !important;}
    .right .quick-links-panel{order:2 !important;}
    .right .mode-panel{order:3 !important;}
}

@media (max-width: 420px){
    .right .quick-links-panel .quick-sound-grid-v67{
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
        gap:10px !important;
    }

    .right .quick-links-panel .quick-sound-grid-v67 .action-btn{
        min-height:58px !important;
        font-size:11px !important;
        letter-spacing:1.2px !important;
        padding:12px 6px !important;
    }
}


/* v72 SMALL SCREEN / MOBILE QUICK LINKS HARD FIX
   Grund: alte Mobile-Regeln haben rechte Panels ausgeblendet oder unterhalb der sichtbaren Höhe abgeschnitten.
   Ab 1100px wird das rechte Dashboard als sauberer vertikaler Bereich gerendert und scrollbar. */
@media (max-width:1100px){
    html, body{
        height:auto !important;
        min-height:100% !important;
        overflow-x:hidden !important;
        overflow-y:auto !important;
    }

    .dashboard{
        height:auto !important;
        min-height:100vh !important;
        overflow:visible !important;
    }

    .layout{
        display:flex !important;
        flex-direction:column !important;
        gap:12px !important;
        height:auto !important;
        min-height:0 !important;
        overflow:visible !important;
    }

    .right{
        display:flex !important;
        flex-direction:column !important;
        gap:12px !important;
        width:100% !important;
        height:auto !important;
        min-height:0 !important;
        overflow:visible !important;
    }

    .right .panel{
        display:none !important;
        height:auto !important;
        min-height:0 !important;
        overflow:visible !important;
    }

    .right .license-panel,
    .right .quick-links-panel,
    .right .mode-panel{
        display:block !important;
        visibility:visible !important;
        opacity:1 !important;
        width:100% !important;
        height:auto !important;
        min-height:0 !important;
        overflow:visible !important;
        position:relative !important;
        transform:none !important;
        clip-path:none !important;
        border-radius:14px !important;
    }

    .right .license-panel{order:1 !important;}
    .right .quick-links-panel{order:2 !important;}
    .right .mode-panel{order:3 !important;}

    .quick-links-panel .quick-sound-grid-v67{
        display:grid !important;
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
        grid-auto-flow:row !important;
        gap:12px !important;
        width:100% !important;
        max-width:100% !important;
        height:auto !important;
        overflow:visible !important;
    }

    .quick-links-panel .quick-sound-grid-v67 .action-btn{
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        width:100% !important;
        min-width:0 !important;
        min-height:62px !important;
        height:auto !important;
        padding:14px 8px !important;
        box-sizing:border-box !important;
        font-size:13px !important;
        letter-spacing:1.6px !important;
        line-height:1.2 !important;
        white-space:normal !important;
        overflow:visible !important;
        text-overflow:clip !important;
        touch-action:manipulation !important;
    }

    .sound-volume-control{
        display:grid !important;
        grid-template-columns:auto minmax(0,1fr) auto !important;
        align-items:center !important;
        gap:10px !important;
        width:100% !important;
        margin-top:14px !important;
        visibility:visible !important;
        opacity:1 !important;
    }

    .sound-volume-control input[type="range"]{
        display:block !important;
        width:100% !important;
        min-width:0 !important;
    }
}

@media (max-width:420px){
    .quick-links-panel .quick-sound-grid-v67{
        grid-template-columns:1fr !important;
        gap:10px !important;
    }

    .quick-links-panel .quick-sound-grid-v67 .action-btn{
        min-height:58px !important;
        font-size:12px !important;
        letter-spacing:1.2px !important;
        padding:12px 6px !important;
    }

    .sound-volume-control{
        grid-template-columns:1fr 58px !important;
    }
    .sound-volume-control label{
        grid-column:1 / -1 !important;
    }
}

/* v73 Neural Profile Admin UI */
.admin-neural-tabs{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-top:10px;
}
.admin-neural-profile-block{
  border:1px solid rgba(255,35,35,.22);
  background:rgba(0,0,0,.28);
  padding:14px;
  min-width:0;
}
.admin-neural-profile-block h3{
  margin:0 0 12px;
  color:var(--red);
  letter-spacing:3px;
  font-size:14px;
  text-shadow:0 0 10px rgba(255,0,0,.45);
}
.admin-neural-profile-block textarea{
  width:100%;
  resize:vertical;
  min-height:48px;
  padding:12px 14px;
  margin:9px 0;
  background:#050000;
  border:1px solid var(--line);
  color:#fff;
  outline:none;
  font-family:Consolas,monospace;
  line-height:1.35;
}
.admin-neural-mini-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
  align-items:end;
}
.admin-edit-block.neural{
  grid-column:1 / -1;
}
.admin-create-panel .admin-neural-tabs{
  grid-template-columns:1fr;
}
.admin-create-panel .admin-neural-mini-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
@media(max-width:1500px){
  .admin-neural-tabs{grid-template-columns:1fr;}
  .admin-neural-mini-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:900px){
  .admin-neural-mini-grid{grid-template-columns:1fr 1fr;}
  .admin-neural-profile-block{padding:12px;}
}
@media(max-width:520px){
  .admin-neural-mini-grid{grid-template-columns:1fr;}
}

/* ==================================================
   v74 Admin/Profile Settings Navigation Refresh
   ================================================== */
.admin-console-v74 .admin-console-shell{
    max-width:none;
    width:100%;
    padding-left:clamp(14px,2vw,32px);
    padding-right:clamp(14px,2vw,32px);
}
.admin-save-banner{
    margin:0 0 18px;
    padding:14px 18px;
    border:1px solid rgba(103,255,28,.35);
    background:rgba(25,80,0,.18);
    color:var(--green);
    letter-spacing:2px;
    text-transform:uppercase;
    box-shadow:0 0 18px rgba(103,255,28,.12);
}
.admin-page-title-row{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin-bottom:18px;
    border-bottom:1px solid var(--line);
    padding-bottom:14px;
}
.admin-page-title-row span{
    display:block;
    color:var(--muted);
    letter-spacing:4px;
    font-size:12px;
    text-transform:uppercase;
    margin-bottom:6px;
}
.admin-page-title-row h2{
    margin:0;
    color:var(--red);
    letter-spacing:4px;
    font-size:24px;
    text-transform:uppercase;
    text-shadow:0 0 14px color-mix(in srgb, var(--red) 60%, transparent);
}
.admin-page-title-row p{
    margin:4px 0 0;
    max-width:680px;
    color:#9a7770;
    line-height:1.45;
    letter-spacing:1px;
    text-align:right;
}
.admin-main-link-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:0 18px;
    border:1px solid rgba(255,35,35,.45);
    background:linear-gradient(180deg,#160000,#070000);
    color:#ffbfb3;
    text-decoration:none;
    letter-spacing:2px;
    text-transform:uppercase;
    font-weight:800;
    white-space:nowrap;
    box-shadow:inset 0 0 16px rgba(255,0,0,.10);
    transition:.25s;
}
.admin-main-link-button:hover{
    color:#fff;
    border-color:var(--red);
    box-shadow:0 0 14px color-mix(in srgb, var(--red) 60%, transparent), inset 0 0 20px rgba(255,0,0,.15);
}
.admin-own-profile-panel,
.admin-users-overview-panel,
.admin-wizard-panel,
.admin-user-detail-panel,
.admin-subscription-panel-v74{
    margin-bottom:22px;
}
.admin-own-profile-grid{
    display:grid;
    grid-template-columns:minmax(280px,360px) minmax(0,1fr);
    gap:18px;
    align-items:start;
}
.admin-neural-tabs-own{
    margin:0;
}
.admin-users-headline-v74{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:18px;
}
.admin-users-headline-v74 h2{
    margin:0 0 4px;
    color:var(--red);
    letter-spacing:4px;
    text-transform:uppercase;
}
.admin-users-headline-v74 span{
    color:var(--muted);
    letter-spacing:3px;
    font-size:12px;
}
.admin-user-list-v74{
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
}
.admin-user-row-card{
    display:grid;
    grid-template-columns:minmax(260px,1.1fr) minmax(420px,1.4fr) auto;
    gap:16px;
    align-items:center;
    padding:16px;
    border:1px solid rgba(255,0,0,.22);
    background:linear-gradient(180deg,rgba(18,0,0,.60),rgba(0,0,0,.72));
    box-shadow:inset 0 0 22px rgba(255,0,0,.06);
}
.admin-user-row-card.is-expired{
    border-color:rgba(255,45,45,.55);
}
.admin-user-row-main h3{
    margin:0 0 9px;
    color:#fff;
    letter-spacing:3px;
    text-transform:uppercase;
}
.admin-user-row-stats{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
}
.admin-user-row-stats div{
    min-width:0;
    padding:10px;
    border:1px solid rgba(255,0,0,.16);
    background:rgba(0,0,0,.28);
}
.admin-user-row-stats span{
    display:block;
    color:var(--muted);
    font-size:10px;
    letter-spacing:2px;
    text-transform:uppercase;
    margin-bottom:5px;
}
.admin-user-row-stats b{
    color:#ffe2dc;
    font-size:13px;
    letter-spacing:1px;
}
.admin-config-link{
    text-align:center;
    white-space:nowrap;
    text-decoration:none;
}
.admin-plan-grid-v74{
    display:grid;
    grid-template-columns:repeat(4,minmax(180px,1fr));
    gap:12px;
}
.admin-wizard-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(240px,1fr));
    gap:18px;
    align-items:start;
    margin-bottom:18px;
}
.admin-user-edit-v74 .admin-wizard-grid{
    grid-template-columns:minmax(260px,1fr) minmax(260px,1fr) minmax(260px,1fr);
}
.admin-user-metrics-detail{
    margin-bottom:18px;
}
.admin-user-tools-v74{
    margin-top:18px;
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
    border-top:1px solid var(--line);
    padding-top:16px;
}
.admin-user-tools-v74 form{
    display:flex;
    gap:8px;
    align-items:center;
    flex-wrap:wrap;
    margin:0;
}
.admin-pass-form-v74 input{
    min-width:220px;
}
.compact-neural-block textarea{
    resize:vertical;
}
.admin-console-v74 .admin-check-large{
    margin-top:12px;
}
@media(max-width:1500px){
    .admin-user-row-card{
        grid-template-columns:1fr;
    }
    .admin-user-row-stats{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
    .admin-plan-grid-v74{
        grid-template-columns:repeat(2,minmax(180px,1fr));
    }
}
@media(max-width:1100px){
    .admin-own-profile-grid,
    .admin-wizard-grid,
    .admin-user-edit-v74 .admin-wizard-grid{
        grid-template-columns:1fr;
    }
    .admin-neural-tabs,
    .admin-neural-tabs-own{
        grid-template-columns:1fr;
    }
    .admin-page-title-row{
        flex-direction:column;
    }
    .admin-page-title-row p{
        text-align:left;
    }
}
@media(max-width:760px){
    .admin-console-header,
    .admin-users-headline-v74{
        flex-direction:column;
        align-items:stretch;
    }
    .admin-console-nav{
        justify-content:center;
    }
    .admin-user-row-stats,
    .admin-overview-grid-v74,
    .admin-plan-grid-v74{
        grid-template-columns:1fr;
    }
    .admin-main-link-button{
        width:100%;
    }
    .admin-user-tools-v74 form,
    .admin-pass-form-v74 input{
        width:100%;
    }
    .admin-user-tools-v74 .admin-mini-btn{
        flex:1 1 130px;
    }
}


/* ==================================================
   v75 Admin / Settings polish
   Stumpfere, sauberere Panels ohne spitze abgeschnittene Ecken
   ================================================== */
.admin-console-header,
.admin-overview-card,
.admin-ki-panel,
.admin-user-console-card,
.admin-users-headline{
    clip-path:none !important;
    border-radius:0 !important;
}

.admin-console-header{
    padding:18px 22px !important;
    min-height:86px;
    overflow:visible;
}

.admin-ki-panel,
.admin-user-console-card,
.admin-overview-card{
    overflow:visible;
}

.admin-ki-panel{
    padding:26px 24px !important;
}

.admin-ki-panel h2,
.admin-users-headline h2,
.admin-console-header h1{
    line-height:1.25;
    overflow:visible;
}

.admin-console-page{
    overflow-x:hidden;
}

.admin-main-grid,
.admin-overview-grid,
.admin-user-cards-v42,
.admin-side-stack{
    min-width:0;
}

@media(max-width:900px){
    .admin-console-header{
        grid-template-columns:1fr !important;
        gap:14px !important;
    }
    .admin-console-nav{
        justify-content:flex-start !important;
        flex-wrap:wrap;
    }
}

/* ==================================================
   v76 Admin / Settings Layout Clean-Up
   Rechteckiger, stumpfer Adminbereich ohne schräge Anschnitte
   ================================================== */
.admin-console-v76 .admin-console-shell,
.admin-console-v76.admin-console-shell,
.admin-console-shell{
    width:100%;
    max-width:none;
    min-width:0;
}

.admin-console-page,
.admin-console-body{
    overflow-x:hidden !important;
}

.admin-console-header,
.admin-ki-panel,
.admin-overview-card,
.admin-user-console-card,
.admin-user-row-card,
.admin-main-link-button,
.admin-mini-btn,
.admin-plan-row,
.admin-edit-block{
    clip-path:none !important;
    border-radius:0 !important;
}

.admin-console-header{
    min-height:88px;
    padding:18px 24px !important;
    overflow:visible !important;
}

.admin-ki-panel{
    padding:26px 28px !important;
    overflow:visible !important;
}

.admin-page-title-row{
    display:block !important;
    margin-bottom:22px !important;
    padding-bottom:18px !important;
    border-bottom:1px solid var(--line);
    overflow:visible !important;
}

.admin-page-title-row > div{
    min-width:0;
}

.admin-page-title-row span{
    transform:none !important;
    margin-left:0 !important;
    padding-left:0 !important;
}

.admin-page-title-row h2{
    margin:0 0 10px !important;
    line-height:1.25 !important;
    overflow:visible !important;
}

.admin-page-title-row p{
    display:block;
    width:100%;
    max-width:none !important;
    margin:8px 0 0 !important;
    text-align:left !important;
    color:#9a7770;
    line-height:1.55;
    letter-spacing:1px;
    overflow:visible !important;
}

.admin-own-profile-grid{
    grid-template-columns:minmax(320px,390px) minmax(0,1fr) !important;
    gap:24px !important;
    align-items:start;
}

.admin-neural-tabs,
.admin-neural-tabs-own{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(320px,1fr)) !important;
    gap:18px !important;
    min-width:0;
}

.admin-neural-profile-block,
.compact-neural-block,
.admin-edit-block{
    min-width:0;
    overflow:visible !important;
}

.admin-neural-profile-block h3,
.compact-neural-block h3{
    margin-top:0 !important;
}

.admin-neural-profile-block input,
.admin-neural-profile-block textarea,
.admin-neural-profile-block select,
.admin-edit-block input,
.admin-edit-block textarea,
.admin-edit-block select{
    max-width:100%;
    min-width:0;
}

.admin-user-edit-v74 .admin-wizard-grid,
.admin-wizard-grid{
    grid-template-columns:repeat(3,minmax(280px,1fr)) !important;
    gap:20px !important;
}

.admin-user-detail-panel .admin-page-title-row,
.admin-wizard-panel .admin-page-title-row{
    display:flex !important;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
}

.admin-user-detail-panel .admin-page-title-row p,
.admin-wizard-panel .admin-page-title-row p{
    width:auto;
}

@media(max-width:1300px){
    .admin-own-profile-grid,
    .admin-wizard-grid,
    .admin-user-edit-v74 .admin-wizard-grid{
        grid-template-columns:1fr !important;
    }
    .admin-neural-tabs,
    .admin-neural-tabs-own{
        grid-template-columns:1fr !important;
    }
}

@media(max-width:760px){
    .admin-console-page{padding:10px !important;}
    .admin-console-header{padding:16px !important;}
    .admin-ki-panel{padding:18px 16px !important;}
    .admin-page-title-row h2{font-size:20px !important;letter-spacing:3px !important;}
    .admin-page-title-row span{font-size:11px !important;letter-spacing:3px !important;}
    .admin-user-detail-panel .admin-page-title-row,
    .admin-wizard-panel .admin-page-title-row{
        display:block !important;
    }
    .admin-main-link-button{margin-top:12px;}
}

/* ==================================================
   v98 Responsive Matrix
   Modular dashboard/admin layout for small desktop, tablet, and mobile.
   ================================================== */
html,
body{
    min-width:0 !important;
    min-height:100%;
    overflow:auto !important;
}

body:has(.dashboard),
body.admin-console-body{
    overflow:auto !important;
}

.login-wrap{
    min-height:100dvh !important;
    height:auto !important;
}

.dashboard{
    width:100% !important;
    max-width:100vw !important;
    min-width:0 !important;
    min-height:100dvh !important;
    height:auto !important;
    grid-template-rows:auto minmax(0,1fr) auto !important;
    overflow:visible !important;
}

.topbar,
.layout,
.bottom,
.col,
.panel,
.admin-console-page,
.admin-console-shell,
.admin-console-header,
.admin-main-grid,
.admin-overview-grid,
.admin-own-profile-grid,
.admin-wizard-grid,
.admin-user-row-card,
.admin-user-row-stats,
.admin-neural-tabs,
.admin-neural-tabs-own{
    min-width:0 !important;
}

.topbar{
    grid-template-columns:minmax(180px,300px) minmax(180px,1fr) minmax(210px,300px) !important;
    gap:clamp(10px,1.2vw,22px) !important;
    min-height:72px !important;
    padding-bottom:10px !important;
}

.brand-logo{
    width:100% !important;
    max-width:300px !important;
}

.nav{
    min-width:0 !important;
    flex-wrap:wrap !important;
    gap:clamp(12px,2vw,34px) !important;
}

.nav a{
    white-space:nowrap !important;
}

.top-status{
    min-width:0 !important;
}

.clock,
.session-badge{
    max-width:100% !important;
}

.session-badge{
    overflow:hidden !important;
}

.session-badge b,
.session-badge .timer{
    min-width:0 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
}

.top-scanner.kitt-scanner{
    left:34% !important;
    right:34% !important;
    min-width:220px !important;
    transform:translateX(-50%) !important;
    margin-left:16% !important;
}

.layout{
    grid-template-columns:minmax(260px,0.9fr) minmax(380px,1.18fr) minmax(260px,0.9fr) !important;
    gap:clamp(10px,1.2vw,20px) !important;
    align-items:stretch !important;
}

.col{
    grid-template-rows:none !important;
    grid-auto-rows:minmax(0,auto) !important;
}

.left,
.right,
.center{
    grid-template-rows:none !important;
}

.panel{
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
}

.voice-panel{
    min-height:clamp(360px,58vh,680px) !important;
}

.voicebox{
    width:min(100%,520px) !important;
    height:clamp(230px,42vh,520px) !important;
    gap:clamp(24px,3.4vw,64px) !important;
}

.seg{
    width:clamp(30px,3.1vw,54px) !important;
    height:clamp(10px,1.05vw,18px) !important;
}

.vcol.center-col .seg{
    width:clamp(36px,3.6vw,62px) !important;
}

.kitt-title{
    max-width:100% !important;
    font-size:clamp(34px,4.3vw,70px) !important;
    letter-spacing:clamp(5px,0.8vw,13px) !important;
    text-align:center !important;
    overflow-wrap:anywhere !important;
}

.terminal{
    min-height:210px !important;
}

.last-line{
    max-height:none !important;
}

.voice-control-buttons{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
    width:100% !important;
}

.voice-control-buttons .main-btn,
.main-btn,
.action-btn,
.admin-mini-btn,
.admin-main-link-button{
    min-width:0 !important;
    max-width:100% !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    line-height:1.2 !important;
}

.quick-links-panel{
    overflow:visible !important;
}

.quick-links-panel .quick-sound-grid-v67{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    grid-auto-rows:minmax(46px,auto) !important;
}

.quick-links-panel .quick-sound-grid-v67 .action-btn{
    overflow:visible !important;
    text-overflow:clip !important;
}

.license-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}

.license-grid strong{
    overflow-wrap:anywhere !important;
}

.bottom{
    min-height:58px !important;
    height:auto !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    padding:10px clamp(12px,2vw,28px) !important;
    overflow:visible !important;
}

.footer-copy-dashboard{
    min-width:0 !important;
    max-width:none !important;
    width:auto !important;
    overflow:visible !important;
}

.footer-right{
    flex-wrap:wrap !important;
    row-gap:8px !important;
}

.admin-console-page{
    width:100% !important;
    max-width:100vw !important;
}

.admin-console-header{
    grid-template-columns:minmax(240px,1fr) auto !important;
}

.admin-console-brand,
.admin-console-nav{
    min-width:0 !important;
}

.admin-console-nav{
    flex-wrap:wrap !important;
    row-gap:10px !important;
}

.admin-overview-grid,
.admin-overview-grid-v74{
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr)) !important;
}

.admin-main-grid{
    grid-template-columns:minmax(300px,420px) minmax(0,1fr) !important;
}

.admin-own-profile-grid,
.admin-wizard-grid,
.admin-user-edit-v74 .admin-wizard-grid{
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr)) !important;
}

.admin-neural-tabs,
.admin-neural-tabs-own{
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr)) !important;
}

.admin-user-row-card{
    grid-template-columns:minmax(220px,1fr) minmax(320px,1.4fr) auto !important;
}

.admin-user-row-stats{
    grid-template-columns:repeat(auto-fit,minmax(120px,1fr)) !important;
}

.admin-plan-grid-v74{
    grid-template-columns:repeat(auto-fit,minmax(170px,1fr)) !important;
}

@media (max-width:1180px){
    body:has(.dashboard){
        overflow:auto !important;
    }

    .dashboard{
        display:grid !important;
        grid-template-rows:auto auto auto !important;
        gap:14px !important;
        padding:12px !important;
    }

    .topbar{
        grid-template-columns:minmax(180px,1fr) auto !important;
        align-items:center !important;
    }

    .brand{
        grid-column:1;
    }

    .nav{
        grid-column:1 / -1;
        grid-row:2;
        justify-content:flex-start !important;
        padding-top:8px;
    }

    .top-status{
        grid-column:2;
        grid-row:1;
        align-items:flex-end !important;
    }

    .top-scanner.kitt-scanner{
        position:relative !important;
        grid-column:1 / -1 !important;
        grid-row:3 !important;
        left:auto !important;
        right:auto !important;
        bottom:auto !important;
        transform:none !important;
        margin:8px auto 0 !important;
        width:min(520px,100%) !important;
        min-width:0 !important;
    }

    .layout{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        grid-auto-flow:row !important;
        align-items:start !important;
    }

    .center{
        grid-column:1 / -1 !important;
        order:1 !important;
    }

    .left{
        order:2 !important;
    }

    .right{
        order:3 !important;
    }

    .col{
        gap:14px !important;
    }

    .voice-panel{
        min-height:430px !important;
    }

    .vehicle{
        min-height:280px !important;
    }

    .vehicle-img.real-panel{
        position:relative !important;
        inset:auto !important;
        min-height:240px !important;
    }

    .log,
    .voice-input{
        min-height:170px !important;
    }

    .right .panel{
        display:block !important;
    }

    .bottom{
        display:grid !important;
        grid-template-columns:1fr !important;
        text-align:center !important;
    }

    .footer-right{
        justify-content:center !important;
        justify-self:center !important;
        margin:0 !important;
    }
}

@media (max-width:760px){
    .dashboard{
        padding:10px !important;
        gap:12px !important;
    }

    .topbar{
        grid-template-columns:1fr !important;
        gap:10px !important;
    }

    .brand,
    .nav,
    .top-status,
    .top-scanner.kitt-scanner{
        grid-column:1 !important;
        grid-row:auto !important;
        justify-self:stretch !important;
    }

    .brand{
        justify-content:center !important;
    }

    .brand-logo{
        max-width:min(320px,86vw) !important;
        height:auto !important;
    }

    .nav{
        justify-content:center !important;
    }

    .nav a{
        font-size:16px !important;
        letter-spacing:2.4px !important;
    }

    .top-status{
        align-items:stretch !important;
    }

    .clock{
        text-align:center !important;
    }

    .session-badge{
        width:100% !important;
        grid-template-columns:auto minmax(0,1fr) !important;
    }

    .layout{
        grid-template-columns:1fr !important;
    }

    .center,
    .left,
    .right{
        grid-column:auto !important;
    }

    .panel{
        clip-path:none !important;
        border-radius:0 !important;
        padding:16px !important;
    }

    .voice-panel{
        min-height:390px !important;
    }

    .voicebox{
        height:260px !important;
    }

    .terminal{
        min-height:240px !important;
    }

    .voice-control-buttons{
        grid-template-columns:1fr !important;
    }

    .quick-links-panel .quick-sound-grid-v67{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    .quick-links-panel .quick-sound-grid-v67 .action-btn,
    .mode a,
    .main-btn{
        min-height:56px !important;
    }

    .sound-volume-control{
        grid-template-columns:1fr 60px !important;
    }

    .sound-volume-control label{
        grid-column:1 / -1 !important;
    }

    .footer-copy-dashboard{
        font-size:10px !important;
        letter-spacing:1px !important;
    }

    .admin-console-header{
        grid-template-columns:1fr !important;
    }

    .admin-console-brand{
        flex-direction:column !important;
        align-items:flex-start !important;
        gap:12px !important;
    }

    .admin-console-brand img{
        max-width:100% !important;
        height:auto !important;
    }

    .admin-console-nav{
        justify-content:flex-start !important;
    }

    .admin-main-grid,
    .admin-own-profile-grid,
    .admin-wizard-grid,
    .admin-user-edit-v74 .admin-wizard-grid,
    .admin-user-row-card,
    .admin-neural-tabs,
    .admin-neural-tabs-own{
        grid-template-columns:1fr !important;
    }

    .admin-page-title-row,
    .admin-user-detail-panel .admin-page-title-row,
    .admin-wizard-panel .admin-page-title-row{
        display:block !important;
    }
}

@media (max-width:430px){
    .dashboard{
        padding:8px !important;
    }

    .panel{
        padding:14px 12px !important;
    }

    .panel h2{
        font-size:16px !important;
        letter-spacing:2px !important;
    }

    .status-row{
        grid-template-columns:30px 48px minmax(0,1fr) 44px !important;
        gap:8px !important;
        font-size:12px !important;
    }

    .kitt-title{
        font-size:30px !important;
        letter-spacing:4px !important;
    }

    .voicebox{
        gap:18px !important;
    }

    .quick-links-panel .quick-sound-grid-v67,
    .license-grid,
    .mode{
        grid-template-columns:1fr !important;
    }

    .admin-console-page{
        padding:8px !important;
    }

    .admin-ki-panel{
        padding:16px 12px !important;
    }
}
/* ==================================================
   v98.1 Desktop height fit
   Keep the full dashboard inside one viewport on desktop.
   ================================================== */
@media (min-width:1181px){
    html,
    body{
        overflow:hidden !important;
    }

    body.admin-console-body{
        overflow:auto !important;
    }

    .dashboard{
        height:100vh !important;
        height:100dvh !important;
        min-height:0 !important;
        grid-template-rows:76px minmax(0,1fr) minmax(46px,auto) !important;
        gap:10px !important;
        overflow:hidden !important;
    }

    .layout,
    .col{
        min-height:0 !important;
        overflow:hidden !important;
    }

    .left{
        grid-template-rows:minmax(0,1fr) minmax(190px,.58fr) !important;
    }

    .center{
        grid-template-rows:minmax(0,1fr) minmax(170px,.34fr) !important;
    }

    .right{
        grid-template-rows:minmax(135px,1fr) minmax(104px,.58fr) minmax(145px,.82fr) minmax(142px,.78fr) minmax(92px,.5fr) !important;
        gap:10px !important;
    }

    .panel{
        min-height:0 !important;
    }

    .voice-panel{
        min-height:0 !important;
    }

    .voicebox{
        height:min(38vh,430px) !important;
    }

    .terminal{
        min-height:0 !important;
    }

    .last-line{
        max-height:86px !important;
    }

    .log{
        font-size:13px !important;
        line-height:1.45 !important;
    }

    .license-panel,
    .quick-links-panel,
    .mode-panel{
        padding-top:16px !important;
        padding-bottom:14px !important;
    }

    .quick-links-panel .quick-sound-grid-v67{
        grid-auto-rows:minmax(38px,auto) !important;
        gap:8px !important;
    }

    .quick-links-panel .quick-sound-grid-v67 .action-btn,
    .mode a{
        min-height:38px !important;
        padding:8px 6px !important;
        font-size:11px !important;
        letter-spacing:1.8px !important;
    }

    .sound-volume-control{
        margin-top:8px !important;
    }

    .bottom{
        min-height:46px !important;
        padding-top:6px !important;
        padding-bottom:6px !important;
    }
}
/* ==================================================
   v98.2 Right rail balance
   Give Mode Select enough room while keeping desktop scroll-free.
   ================================================== */
@media (min-width:1181px){
    .right{
        grid-template-rows:minmax(104px,.8fr) minmax(84px,.46fr) minmax(130px,.82fr) minmax(132px,.74fr) minmax(118px,.64fr) !important;
        gap:10px !important;
    }

    .right .panel{
        padding:14px 16px !important;
    }

    .right .panel h2{
        margin-bottom:10px !important;
        font-size:17px !important;
        line-height:1.1 !important;
    }

    .log{
        font-size:12px !important;
        line-height:1.34 !important;
    }

    .voice-input .dotline{
        height:32px !important;
        margin-top:8px !important;
    }

    .license-plan-row{
        min-height:38px !important;
        padding:8px 10px !important;
    }

    .license-grid{
        gap:7px !important;
    }

    .license-grid div{
        min-height:38px !important;
        padding:6px 8px !important;
    }

    .license-grid span{
        font-size:9px !important;
        letter-spacing:1.2px !important;
    }

    .license-grid strong{
        font-size:11px !important;
    }

    .quick-links-panel .quick-sound-grid-v67{
        grid-auto-rows:minmax(36px,auto) !important;
        gap:8px !important;
    }

    .quick-links-panel .quick-sound-grid-v67 .action-btn{
        min-height:36px !important;
        padding:7px 6px !important;
        font-size:10px !important;
        letter-spacing:1.7px !important;
    }

    .sound-volume-control{
        margin-top:7px !important;
        gap:8px !important;
    }

    .mode-panel{
        overflow:visible !important;
    }

    .mode{
        gap:10px !important;
    }

    .mode a{
        min-height:44px !important;
        padding:11px 8px !important;
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
    }
}
/* ==================================================
   v98.2 Compact desktop window
   Browser-window friendly layout for wide but short viewports.
   ================================================== */
@media (min-width:1181px) and (max-height:860px){
    .dashboard{
        grid-template-rows:66px minmax(0,1fr) minmax(38px,auto) !important;
        gap:8px !important;
        padding:8px 10px 6px !important;
    }

    .topbar{
        min-height:62px !important;
        padding-bottom:6px !important;
    }

    .brand-logo{
        max-height:50px !important;
    }

    .clock{
        font-size:18px !important;
    }

    .session-badge{
        padding:5px 10px !important;
        font-size:11px !important;
    }

    .top-scanner.kitt-scanner{
        height:20px !important;
        bottom:-16px !important;
    }

    .layout{
        gap:10px !important;
    }

    .left{
        grid-template-rows:minmax(0,1fr) minmax(170px,.52fr) !important;
    }

    .center{
        grid-template-rows:minmax(0,1fr) minmax(142px,.28fr) !important;
    }

    .right{
        grid-template-rows:minmax(92px,.72fr) minmax(76px,.42fr) minmax(116px,.72fr) minmax(122px,.68fr) minmax(108px,.58fr) !important;
        gap:8px !important;
    }

    .panel{
        padding:12px 14px !important;
    }

    .panel h2{
        margin-bottom:8px !important;
    }

    .voicebox{
        height:min(34vh,340px) !important;
    }

    .kitt-title{
        font-size:clamp(34px,3.6vw,56px) !important;
        margin-top:-10px !important;
    }

    .state{
        font-size:15px !important;
    }

    .last-line{
        font-size:16px !important;
        max-height:60px !important;
    }

    .voice-control-buttons .main-btn{
        min-height:40px !important;
        padding:8px 8px !important;
        font-size:11px !important;
    }

    .bottom{
        min-height:38px !important;
        padding-top:4px !important;
        padding-bottom:4px !important;
    }
}
