:root{--ink:var(--sb-ink);--muted:var(--sb-muted);--navy:var(--sb-navy);--blue:var(--sb-blue);--bg:var(--sb-bg);--line:var(--sb-line);--card:#fff;--red:var(--sb-red);--green:#08744c}
*{box-sizing:border-box}body{margin:0;background:var(--bg);display:flex;min-height:100vh;font-size:14px}
aside{position:fixed;inset:0 auto 0 0;width:248px;background:linear-gradient(165deg,var(--navy),var(--sb-navy-deep));color:#fff;display:flex;flex-direction:column;z-index:5}.logo{padding:23px 22px 18px}.logo img{display:block;height:auto}.logo-full{width:190px;min-width:150px;margin-bottom:20px}.logo-emblem{display:none!important}.logo div{border-left:3px solid var(--sb-mint);padding-left:11px}.logo span{display:block;color:#b9cad4;font-size:9px;letter-spacing:.15em;text-transform:uppercase;font-weight:800}.logo strong{font-size:17px;display:block;margin-top:2px}.logo+.brand-accent{height:4px}.logo~nav{padding:15px 10px;display:grid;gap:5px}.nav{border:0;background:transparent;color:#b9cad9;text-align:left;padding:12px;border-radius:9px;font:inherit;font-weight:700;cursor:pointer;border-left:3px solid transparent}.nav.active,.nav:hover{background:#ffffff12;color:#fff;border-left-color:var(--sb-blue)}.nav span{margin-left:8px}.shell-state{margin:auto 16px 18px;padding:12px 4px;border-top:1px solid #ffffff1f;color:#b7c7d1;font-size:11px;display:flex;align-items:center;gap:8px}.shell-state i{width:8px;height:8px;border-radius:50%;background:var(--sb-gold);box-shadow:0 0 0 3px rgba(244,183,64,.12)}.shell-state i.ok{background:var(--sb-mint);box-shadow:0 0 0 3px rgba(29,237,157,.12)}
.layout{margin-left:248px;width:calc(100% - 248px)}header{height:82px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:4;box-shadow:0 5px 22px rgba(7,58,89,.035)}header h1{font-size:21px;margin:0;color:var(--navy)}header p{margin:3px 0;color:var(--muted);font-size:12px}.pill{padding:7px 11px;background:#eef2f4;border-radius:999px;color:var(--muted);font-weight:700;font-size:12px}.pill::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#9aabb5;margin-right:7px}.pill.connected{background:#e6fbf3;color:var(--green)}.pill.connected::before{background:var(--sb-mint)}
main{padding:28px 30px 250px;max-width:1450px}.page{display:none}.page.active{display:block}.card{background:#fff;border:1px solid var(--line);border-radius:var(--sb-radius);box-shadow:var(--sb-shadow)}.hero{max-width:620px;text-align:center;padding:44px;margin:20px auto 16px;position:relative;overflow:hidden}.hero::after{content:"";position:absolute;right:-55px;bottom:-70px;width:220px;height:220px;background:url('/shared/assets/sharkbyte-emblem-dark.svg') center/contain no-repeat;opacity:.035;pointer-events:none}.hero>*{position:relative;z-index:1}.hero h2{font-size:24px;color:var(--navy)}.hero p{color:var(--muted);line-height:1.6}.ms-logo{width:58px;height:58px;margin:auto;display:grid;place-items:center;background:linear-gradient(135deg,var(--sb-purple),var(--blue));color:#fff;font-size:28px;font-weight:900;border-radius:14px;box-shadow:0 8px 20px rgba(65,148,244,.2)}.requirements{max-width:620px;margin:auto;padding:20px 28px;border-top:4px solid var(--sb-gold)}.requirements h3{color:var(--navy)}.requirements li{margin:9px}.heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:20px}.heading h2{margin:0;font-size:25px;color:var(--navy)}.heading p{margin:5px 0 0;color:var(--muted)}
button,.file-button{font:inherit;font-weight:750;border-radius:9px;padding:9px 14px;border:1px solid transparent;cursor:pointer}.primary{background:var(--sb-purple);color:#fff;box-shadow:0 5px 14px rgba(110,30,237,.16)}.primary:hover{background:var(--sb-purple-hover)}.secondary,.file-button{background:#fff;border-color:#b9cbd5;color:var(--navy)}.secondary:hover,.file-button:hover{background:#f3f8fa;border-color:var(--blue)}.danger{background:#fff0ee;border-color:#efc0bb;color:var(--red)}button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}input,select,textarea{font:inherit;color:var(--ink);padding:9px 11px;border:1px solid #bfd0da;border-radius:8px;background:#fff;width:100%}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--blue);box-shadow:var(--sb-focus)}textarea{resize:vertical}.file-button input{display:none}
.tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:15px}.tab{background:transparent;border:0;border-bottom:3px solid transparent;border-radius:0;color:var(--muted)}.tab.active{color:var(--sb-purple);border-color:var(--sb-purple)}.tab-page{display:none}.tab-page.active{display:block}.toolbar{display:flex;gap:10px;padding:12px;margin-bottom:12px}.toolbar input{flex:1}.table-wrap{overflow:auto;max-height:55vh}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:11px 14px;border-bottom:1px solid var(--line);text-align:left}.data-table th{background:#eef4f7;color:var(--navy);position:sticky;top:0}.data-table input[type=checkbox]{width:18px;accent-color:var(--sb-purple)}.range-text{color:var(--muted);font-size:12px}.prefix-info{display:flex;gap:15px;align-items:flex-start;padding:18px 20px;margin-bottom:15px;background:#f3f8ff;border-color:#c9dff5;border-left:4px solid var(--sb-blue)}.prefix-info-icon{flex:0 0 28px;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--sb-blue);color:#fff;font-weight:900}.prefix-info h3{margin:1px 0 6px;color:var(--navy);font-size:16px}.prefix-info p{margin:0;color:var(--muted);line-height:1.55}.prefix-info .prefix-example{margin-top:7px;color:var(--navy)}.split{display:grid;grid-template-columns:1fr 1fr;gap:15px}.list{padding:10px;max-height:57vh;overflow:auto}.list-item{padding:10px;border-bottom:1px solid var(--line)}.editor{padding:20px;display:grid;gap:10px}.editor>span{color:var(--muted);font-size:11px}.chips{display:flex;flex-wrap:wrap;gap:7px;min-height:45px}.chip{background:#eaf4ff;border-radius:999px;padding:7px 8px 7px 12px}.chip button{padding:0 4px;border:0;background:transparent;color:var(--muted)}.inline{display:flex;gap:8px}
.setup-builder{margin-top:22px;padding:22px}.setup-builder-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.setup-builder h3{margin:3px 0 5px;color:var(--navy);font-size:20px}.setup-builder p{margin:0;color:var(--muted)}.setup-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--sb-purple);font-weight:800}.setup-prefix{display:grid;place-items:center;min-width:72px;max-width:300px;min-height:60px;padding:10px 14px;border-radius:12px;background:#eaf4ff;border-left:4px solid var(--sb-blue);color:var(--navy);font-size:17px;font-weight:900;text-align:center}.setup-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:20px 0}.setup-fields-single{grid-template-columns:minmax(280px,1fr)}.setup-at-head,.setup-export{display:flex;align-items:center;justify-content:space-between;gap:15px}.setup-at-head>div{display:flex;gap:7px}.setup-at-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:12px 0 18px;max-height:260px;overflow:auto;padding:12px;background:#f7fafb;border:1px solid var(--line);border-radius:10px}.setup-at-list label{display:flex;align-items:center;gap:8px;padding:9px;background:#fff;border-radius:8px;font-weight:600}.setup-at-list input{width:17px;accent-color:var(--sb-purple)}.setup-at-list label small{display:inline-block;margin-left:6px;color:var(--sb-purple);font-weight:800}.setup-at-list .empty{grid-column:1/-1;padding:25px}.setup-export{padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}
.summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:15px}.summary .card{padding:17px;border-top:4px solid var(--blue)}.summary .card:nth-child(2){border-top-color:var(--sb-purple)}.summary .card:nth-child(3){border-top-color:var(--sb-gold)}.summary .card:nth-child(4){border-top-color:var(--sb-mint)}.summary strong{display:block;font-size:25px;color:var(--navy)}.summary span{font-size:11px;color:var(--muted)}.card-title{display:flex;align-items:center;justify-content:space-between;padding:17px;border-bottom:1px solid var(--line)}.card-title h3{margin:0;color:var(--navy)}.check{display:flex;gap:7px;align-items:center}.check input{width:17px}.selection{padding:12px;display:grid;grid-template-columns:repeat(2,1fr);gap:5px}.selection label{padding:9px;border-radius:7px;display:flex;align-items:center;gap:8px}.selection label:hover{background:#f3f7f9}.selection input{width:17px;accent-color:var(--sb-purple)}.options{padding:18px;margin-top:15px}.option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.option-grid label{font-weight:700;font-size:12px;display:grid;gap:6px}.run-actions{display:flex;justify-content:flex-end;gap:10px;margin:18px 0}.large{padding:12px 20px}.empty{text-align:center;padding:50px;color:var(--muted)}#results{padding:5px 18px 18px}.result-row{display:grid;grid-template-columns:1fr 1fr 1.2fr;padding:9px 0;border-bottom:1px solid var(--line)}.muted{color:var(--muted)}.session-info{display:grid;gap:6px;margin:16px 0;padding:12px;border:1px solid var(--line);border-radius:8px;background:#f7fbfd;text-align:left}.session-info strong{color:var(--navy)}.session-info span{font-size:12px;color:var(--muted)}
.console{position:fixed;bottom:0;right:0;left:248px;height:205px;background:#061f30;color:#c7d6e4;z-index:6;box-shadow:0 -5px 25px #0002;border-top:4px solid var(--sb-blue)}.console-head{height:33px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff14;padding:0 14px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.console-head button{padding:4px 8px;background:transparent;color:#9db0c1;border:0}.console #log{height:168px;overflow:auto;padding:10px 14px;font:12px/1.6 ui-monospace,SFMono-Regular,monospace}.log-line .time{color:#6f8a9d}.log-line.success{color:var(--sb-mint)}.log-line.error{color:#ff8c82}.log-line.warn{color:var(--sb-gold)}dialog{border:0;border-radius:14px;padding:25px;max-width:460px;box-shadow:0 25px 80px #0005}dialog::backdrop{background:#073a5977}.dialog-actions{display:flex;justify-content:flex-end;gap:8px}#toast{position:fixed;right:20px;top:94px;background:var(--navy);color:#fff;padding:11px 15px;border-left:4px solid var(--sb-mint);border-radius:8px;opacity:0;transform:translateY(-8px);transition:.2s;z-index:20}#toast.show{opacity:1;transform:none}
.app-version{display:block!important;color:#9fb5c2!important;font-size:9px!important;letter-spacing:.08em!important;text-transform:none!important;margin:-16px 0 15px 1px}
@media(max-width:900px){aside{width:76px}.logo{padding:18px 14px}.logo-full{display:none!important}.logo-emblem{display:block!important;width:48px;margin:0 auto}.logo div,.nav span,.shell-state span{display:none}.app-version{font-size:7px!important;text-align:center;margin:5px 0 12px}.layout{margin-left:76px;width:calc(100% - 76px)}.console{left:76px}.split,.option-grid,.summary,.setup-fields,.setup-at-list{grid-template-columns:1fr}.selection{grid-template-columns:1fr}main{padding-left:16px;padding-right:16px}}

.device-panel{margin-top:18px;padding:16px;border:1px solid #bfdbfe;border-radius:14px;background:#eff6ff;text-align:left;color:#0b3350}.device-panel strong{display:block;margin-bottom:6px}.device-panel p{margin:0 0 12px;color:#4b6380}.device-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.link-button{display:inline-flex;align-items:center;text-decoration:none}.device-panel pre{margin:12px 0 0;padding:12px;border-radius:10px;background:#0b2239;color:#e6f4ff;white-space:pre-wrap;font-size:13px;line-height:1.45}

.device-code-card{display:grid;grid-template-columns:1fr auto;gap:8px 12px;align-items:center;margin:12px 0;padding:12px;border-radius:12px;background:white;border:1px solid #bfdbfe}.device-code-card span{grid-column:1 / -1;color:#4b6380;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.device-code-card strong{font-size:28px;letter-spacing:.12em;color:#0b3350}.device-code-card button{justify-self:end}

/* Modern SHARKBYTE Admin refresh */
body{background:radial-gradient(circle at 78% 0%,rgba(65,148,244,.16),transparent 34%),linear-gradient(180deg,#f7fbff 0%,#edf4f8 52%,#eaf1f5 100%);color:#082f49}
aside{background:linear-gradient(155deg,#04334f 0%,#06283d 48%,#031827 100%);box-shadow:12px 0 40px rgba(3,24,39,.18)}
aside::after{content:"";position:absolute;inset:auto -70px 80px auto;width:170px;height:260px;background:url('/shared/assets/sharkbyte-emblem-light.svg') center/contain no-repeat;opacity:.035;transform:rotate(-8deg);pointer-events:none}.logo{padding-top:28px}.logo-full{filter:drop-shadow(0 8px 18px rgba(0,0,0,.16))}.logo div{border-left-color:#1ded9d}.brand-accent{background:linear-gradient(90deg,#7a2cff 0 24%,#f4b740 24% 49%,#4194f4 49% 75%,#1ded9d 75% 100%)}.nav{border-radius:14px;padding:13px 14px;transition:background .18s,transform .18s,color .18s}.nav.active{background:linear-gradient(90deg,rgba(65,148,244,.22),rgba(29,237,157,.08));box-shadow:inset 3px 0 0 #4194f4}.nav:not(:disabled):hover{transform:translateX(2px);background:rgba(255,255,255,.1)}header{height:88px;background:rgba(255,255,255,.82);backdrop-filter:blur(14px);box-shadow:0 10px 35px rgba(7,58,89,.08)}header h1{font-size:24px;letter-spacing:-.03em}.pill{box-shadow:inset 0 0 0 1px rgba(8,47,73,.06)}main{padding-top:34px}.card{border-color:rgba(8,47,73,.12);box-shadow:0 20px 55px rgba(7,58,89,.10);border-radius:22px}.hero{max-width:660px;padding:48px 48px 42px;margin-top:10px}.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(29,237,157,.08),transparent 42%,rgba(65,148,244,.1));pointer-events:none}.hero::after{right:-30px;bottom:-55px;width:255px;height:255px;opacity:.045}.hero h2{font-size:28px;letter-spacing:-.035em;margin-bottom:10px}.ms-logo{width:64px;height:64px;border-radius:18px;background:linear-gradient(135deg,#7a2cff,#4194f4 65%,#1ded9d);box-shadow:0 16px 32px rgba(65,148,244,.28)}button,.file-button{border-radius:12px;font-weight:850;transition:transform .16s,box-shadow .16s,background .16s}.primary{background:linear-gradient(135deg,#7a2cff,#6b22f2);box-shadow:0 13px 25px rgba(122,44,255,.22)}.primary:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 17px 32px rgba(122,44,255,.28)}.secondary,.file-button{background:rgba(255,255,255,.84);border-color:rgba(7,58,89,.22)}.device-panel{border:1px solid rgba(65,148,244,.32);background:linear-gradient(180deg,#eff7ff,#e8f3ff);border-radius:18px;box-shadow:inset 0 1px 0 rgba(255,255,255,.75)}.device-code-card{grid-template-columns:1fr auto;background:linear-gradient(135deg,#fff,#f7fbff);border-color:rgba(65,148,244,.34);box-shadow:0 12px 25px rgba(65,148,244,.12)}.device-code-card strong{font-size:34px;color:#04334f}.device-panel pre{background:linear-gradient(135deg,#061f30,#092b43);border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);color:#dff7ff}.requirements{border-top:0;position:relative;overflow:hidden}.requirements::before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:linear-gradient(90deg,#7a2cff,#f4b740,#4194f4,#1ded9d)}.session-info{border-radius:14px;background:linear-gradient(180deg,#f8fcff,#f3f9fc)}.console{background:linear-gradient(180deg,#06283d,#031827);border-top:4px solid #4194f4;box-shadow:0 -12px 40px rgba(3,24,39,.25)}.console-head{background:rgba(255,255,255,.02)}#toast{border-radius:14px;box-shadow:0 18px 45px rgba(3,24,39,.25)}
.toolbar-note{display:inline-flex;align-items:center;white-space:nowrap;color:var(--muted);font-size:12px;font-weight:800;padding:0 8px}

.list-item-with-action{display:flex;align-items:center;justify-content:space-between;gap:12px}.list-item-with-action span{display:grid;gap:3px}.list-item-with-action small{color:var(--muted);font-size:11px}.small{padding:7px 10px;font-size:12px}.vm-inline{grid-template-columns:1fr 1.2fr auto}.muted{color:var(--muted)}
@media(max-width:900px){.vm-inline{grid-template-columns:1fr}}

.vm-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) auto minmax(220px,.8fr) auto;align-items:center}.vm-choice{display:flex;align-items:flex-start;gap:12px;cursor:pointer}.vm-choice input{width:18px;height:18px;margin-top:3px;accent-color:var(--sb-purple)}.vm-choice span{display:grid;gap:3px}.vm-choice small{color:var(--muted);font-size:11px}@media(max-width:1100px){.vm-toolbar{grid-template-columns:1fr}.vm-toolbar button,.vm-toolbar input{width:100%}}

/* ITS-Zug-Instanz */
.logo-full,.brand-logo{filter:none!important;background:#fff;border-radius:6px;padding:8px;object-fit:contain;}
.logo-full{width:142px!important;}
.brand-logo{width:190px!important;}
