/* Klangheld · App-Rahmen */
:root{
  --ink:#163454;--ink2:#17395d;--mute:#5b7794;--mute2:#7d8fa1;
  --line:#dce6f0;--soft:#f3f7fc;--soft2:#eaf1f8;
  --blue:#2865b0;--brand:#2464ad;--navy1:#17395d;--navy2:#102a47;
  --navText:#c4d6ea;--navCap:#8caac9;
  --gold:#e5b842;--ok:#1f9d55;--okBg:#e6f6ec;--rec:#f32641;
  --bg:#f1f5fa;--card:#fff;
  --headH:60px;--navW:248px;--pultW:42vw;--pultH:46vh;--tabH:0px;
  --font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{height:100%;margin:0;overflow:hidden}
body{display:grid;grid-template-rows:calc(var(--headH) + env(safe-area-inset-top)) minmax(0,1fr) auto;height:100dvh;font:14px/1.5 var(--font);color:var(--ink);background:var(--bg);font-synthesis:none;-webkit-text-size-adjust:100%}
button,input,select{font:inherit;color:inherit}
button{cursor:pointer}
a{color:var(--blue)}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Kopfleiste */
.ah{position:relative;z-index:40;display:flex;align-items:center;gap:12px;padding:env(safe-area-inset-top) max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left));background:#fff;border-bottom:1px solid var(--line)}
.ahMenu{display:none;width:42px;height:42px;border-radius:12px;border:1px solid var(--line);background:var(--soft);color:var(--ink2);align-items:center;justify-content:center;flex:none}
.ahMenu svg{width:22px;height:22px}
.ahLogo{display:flex;align-items:center;gap:10px;width:calc(var(--navW) - 28px);flex:none;color:var(--ink);text-decoration:none;font-size:21px;font-weight:800;letter-spacing:-.7px}
.ahLogo svg{width:32px;height:32px;border-radius:10px;flex:none;stroke:none}
.ahCrumb{display:flex;flex-direction:column;min-width:0;line-height:1.2;margin-right:auto}
.ahCrumb small{font-size:11px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--mute2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ahCrumb b{font-size:17px;letter-spacing:-.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ahTools{display:flex;align-items:center;gap:8px;flex:none}
.ahBtn{display:inline-flex;align-items:center;gap:7px;height:42px;padding:0 13px;border-radius:12px;border:1px solid var(--line);background:var(--soft);color:var(--ink2);font-weight:650;font-size:13.5px;white-space:nowrap}
.ahBtn svg{width:19px;height:19px}
.ahBtn:hover{background:#e8f0f9}
.ahBtn[aria-pressed="true"]{background:var(--blue);border-color:var(--blue);color:#fff}
#metroBtn[aria-pressed="true"] svg path:last-child{animation:tick .5s ease-in-out infinite alternate;transform-origin:12px 15px}
@keyframes tick{from{transform:rotate(-28deg)}to{transform:rotate(28deg)}}
.ahChip{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 12px;border-radius:20px;border:1px solid #f7c7cf;background:#fde8ec;color:#a3243a;font-size:12.5px;font-weight:700;white-space:nowrap}
.ahChip i{width:8px;height:8px;border-radius:50%;background:var(--rec);animation:pulse 1.2s ease-in-out infinite}
@keyframes pulse{50%{opacity:.35}}

/* Gerüst */
.layout{display:grid;grid-template-columns:var(--navW) minmax(0,1fr) auto;min-height:0;position:relative}
.nav{display:flex;flex-direction:column;min-height:0;background:linear-gradient(170deg,var(--navy1),var(--navy2));color:var(--navText);z-index:30}
.navScroll{flex:1;overflow-y:auto;padding:14px 12px 10px;scrollbar-width:thin;scrollbar-color:#3b5f86 transparent}
.navCap{display:flex;align-items:center;gap:6px;margin:16px 10px 6px;font-size:10.5px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:var(--navCap)}
.navCap:first-child{margin-top:4px}
.navCap svg{width:11px;height:11px;stroke-width:2.4}
.navItem{display:flex;align-items:center;gap:11px;width:100%;min-height:40px;padding:7px 10px;border:0;border-radius:11px;background:none;color:var(--navText);font-size:14px;font-weight:550;text-align:left}
.navItem svg{width:19px;height:19px;flex:none;opacity:.9}
.navItem span{flex:1;min-width:0}
.navItem:hover{background:rgba(255,255,255,.07);color:#fff}
.navItem[aria-current="page"]{background:rgba(111,170,240,.22);color:#fff;box-shadow:inset 3px 0 0 #8fc3ff}
.navItem .chev{flex:none;width:16px;height:16px;transition:transform .18s;opacity:.7}
.navItem[aria-expanded="true"] .chev{transform:rotate(90deg)}
.navSub{margin:2px 0 6px 30px;padding-left:10px;border-left:1px solid rgba(255,255,255,.12)}
.navSub .navItem{min-height:34px;font-size:13px;padding:5px 10px;color:#a9c2dc}
.navSub .navItem[aria-current="page"]{color:#fff}
.navFoot{padding:8px 12px calc(10px + env(safe-area-inset-bottom));border-top:1px solid rgba(255,255,255,.1)}
.navLegal{display:flex;flex-wrap:wrap;gap:4px 14px;padding:8px 10px 2px;font-size:12px}
.navLegal a{color:#9fbbd8;text-decoration:none}
.navLegal a:hover{color:#fff;text-decoration:underline}
.navLegal span{margin-left:auto;color:#6f8fb1}
.scrim{position:fixed;inset:0;z-index:25;background:rgba(10,25,42,.42)}

.stage{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;overflow:hidden}
.stageBody{position:relative;grid-row:2;min-height:0}
.areaBar{grid-row:1;position:relative;z-index:6;overflow:hidden;min-width:0;background:#fff;border-bottom:1px solid var(--line);padding:8px 14px 0}
.areaTabs{position:relative;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:8px}
.areaTabs::-webkit-scrollbar,.areaChips::-webkit-scrollbar{display:none}
.areaTabs button{display:inline-flex;align-items:center;gap:8px;flex:none;height:40px;padding:0 14px;border-radius:12px;border:1px solid var(--line);background:var(--soft);color:var(--ink2);font-weight:650;font-size:14px;white-space:nowrap}
.areaTabs button svg{width:18px;height:18px}
.areaTabs button:hover{background:#e8f0f9}
.areaTabs button[aria-selected="true"]{background:var(--blue);border-color:var(--blue);color:#fff}
.areaChips{position:relative;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;margin:0 -14px;padding:0 14px 8px;border-top:1px solid #eef3f8;padding-top:8px}
.areaChips button{flex:none;height:32px;padding:0 12px;border-radius:20px;border:1px solid transparent;background:none;color:var(--mute);font-weight:600;font-size:13px;white-space:nowrap}
.areaChips button:hover{background:var(--soft);color:var(--ink2)}
.areaChips button[aria-current="true"]{background:#e3eefb;border-color:#c9daee;color:var(--blue)}
.view{position:absolute;inset:0;z-index:3;overflow-y:auto;-webkit-overflow-scrolling:touch;background:radial-gradient(ellipse at 85% 0,#e1ecfa,transparent 55%) no-repeat,var(--bg)}
.viewIn{max-width:1160px;margin:0 auto;padding:28px 34px 40px}
.frames{position:absolute;inset:0}
.frames iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:var(--bg)}
.loading{position:absolute;inset:0;z-index:4;display:flex;align-items:center;justify-content:center;gap:10px;background:var(--bg);color:var(--mute);font-weight:600;z-index:2}
.loading span{width:18px;height:18px;border-radius:50%;border:3px solid #c9daee;border-top-color:var(--blue);animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* Inhalte der eigenen Ansichten */
.eyebrow{margin:0 0 4px;font-size:11.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--mute)}
h1{margin:0 0 18px;font-size:32px;line-height:1.1;letter-spacing:-1px;color:var(--ink2)}
h2{margin:0 0 4px;font-size:18px;letter-spacing:-.3px;color:var(--ink2)}
.lead{margin:-8px 0 20px;max-width:46em;color:var(--mute);font-size:15px}
.quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:22px}
.qk{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:14px;align-items:center;padding:16px;border-radius:18px;border:1px solid var(--line);background:#fff;text-align:left;box-shadow:0 4px 18px rgba(27,64,98,.05);transition:transform .15s,box-shadow .15s,border-color .15s}
.qk:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(27,64,98,.1);border-color:#c9daee}
.qkIc{grid-row:span 2;width:48px;height:48px;border-radius:14px;display:grid;place-items:center;color:#fff}
.qkIc svg{width:24px;height:24px;stroke-width:2}
.qk b{font-size:15.5px;letter-spacing:-.2px}
.qk small{font-size:12.5px;color:var(--mute)}
.b1{background:linear-gradient(135deg,#2f74c4,#1b4f8f)}.b2{background:linear-gradient(135deg,#3a8fd6,#2464ad)}.b3{background:linear-gradient(135deg,#5a6fd6,#3447a6)}
.b4{background:linear-gradient(135deg,#f0475f,#c42640)}.b5{background:linear-gradient(135deg,#27a36a,#167a4c)}.b6{background:linear-gradient(135deg,#e5a52f,#c27a12)}
.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.cards.one{grid-template-columns:minmax(0,760px)}
.card{padding:20px 22px;border-radius:20px;border:1px solid var(--line);background:#fff;box-shadow:0 4px 18px rgba(27,64,98,.04)}
.card p{margin:0 0 12px;color:var(--mute)}
.cardHead{margin-bottom:12px}
.tips ul{margin:8px 0 0;padding-left:18px;color:#3d5a78}
.tips li{margin-bottom:7px}
.row{display:flex;gap:8px;margin-top:10px}
.row.wrap{flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:0 16px;border-radius:12px;border:1px solid var(--blue);background:var(--blue);color:#fff;font-weight:700;text-decoration:none;font-size:14px}
.btn:hover{background:#2259a0}
.btn.quiet{background:#fff;color:var(--blue);border-color:var(--line)}
.btn.quiet:hover{background:var(--soft)}
.btn.small{min-height:34px;padding:0 11px;font-size:13px;border-radius:10px}
.btn:disabled{opacity:.55;cursor:default}
.note{font-size:12.5px!important;color:var(--mute2)!important;margin:10px 0 0!important}
.recent{display:flex;flex-direction:column;gap:6px}
.recent button{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:12px;border:1px solid #e6eef7;background:var(--soft);text-align:left;font-weight:600}
.recent button small{margin-left:auto;font-weight:500;color:var(--mute2)}
.recent .empty{color:var(--mute2);font-size:13px}
.privacyLine{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:22px 0 0;font-size:12.5px;color:var(--mute)}
.dot{width:8px;height:8px;border-radius:50%;background:var(--ok)}
.seg{display:flex;flex-wrap:wrap;gap:6px}
.seg button{min-height:40px;padding:0 14px;border-radius:11px;border:1px solid var(--line);background:var(--soft);font-weight:650}
.seg button[aria-pressed="true"]{background:var(--blue);border-color:var(--blue);color:#fff}
.switch{display:flex;align-items:flex-start;gap:10px;margin:8px 0;font-weight:550;cursor:pointer}
.switch input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--blue);flex:none}
.platforms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}
.platforms div{padding:10px 12px;border-radius:12px;background:var(--soft);border:1px solid #e6eef7;font-size:13px}
.platforms b{display:block;color:var(--ink2)}
.platforms span{color:var(--mute)}

/* Bibliothek */
.libTools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:14px}
.libTools input{flex:1;min-width:200px;min-height:42px;padding:0 14px;border-radius:12px;border:1px solid var(--line);background:#fff;font-size:15px}
.libGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px}
.piece{display:flex;flex-direction:column;border-radius:18px;border:1px solid var(--line);background:#fff;overflow:hidden;box-shadow:0 4px 16px rgba(27,64,98,.04)}
.piece .thumb{aspect-ratio:3/4;max-height:260px;background:#f7f9fc center top/cover no-repeat;border-bottom:1px solid #edf2f8;cursor:pointer}
.piece .pBody{padding:12px 14px 14px;display:flex;flex-direction:column;gap:4px;flex:1}
.piece b{font-size:15px;letter-spacing:-.2px;line-height:1.25}
.piece small{color:var(--mute2);font-size:12px}
.piece .pAct{display:flex;gap:6px;margin-top:auto;padding-top:10px}
.piece .pAct .btn{flex:1}
.piece.current{border-color:var(--blue);box-shadow:0 0 0 2px rgba(40,101,176,.25)}
.unlock{max-width:460px}
.unlock label{display:block;margin:6px 0 6px;font-weight:650;font-size:13px;color:#315a86}
.unlock input{width:100%;min-height:46px;padding:0 14px;border-radius:12px;border:1px solid #d6e4f3;background:#f7faff;font-size:16px}
.err{color:#a3243a;font-weight:600;font-size:13px;min-height:1.4em;margin:8px 0 0}
.startLib{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;min-height:40px}
.startLib .mini{flex:none;width:110px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;text-align:left;padding:0}
.startLib .mini span{display:block;height:130px;background:#f7f9fc center top/cover no-repeat}
.startLib .mini b{display:block;padding:6px 8px;font-size:12px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.startLib .empty{color:var(--mute2);font-size:13px}

/* Notenpult */
.pult{position:relative;display:flex;flex-direction:column;width:var(--pultW);min-width:300px;max-width:72vw;min-height:0;background:#fbfcfe;border-left:1px solid var(--line);z-index:5}
.pultGrip{position:absolute;left:-6px;top:0;bottom:0;width:12px;cursor:col-resize;z-index:3;touch-action:none}
.pultGrip::after{content:"";position:absolute;left:4px;top:50%;width:4px;height:44px;margin-top:-22px;border-radius:3px;background:#c7d6e8}
.pultBar{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#fff;border-bottom:1px solid var(--line);flex-wrap:wrap}
.pultBar select{flex:1;min-width:120px;height:38px;padding:0 10px;border-radius:10px;border:1px solid var(--line);background:var(--soft);font-weight:600}
.pultBar button{height:38px;min-width:38px;padding:0 10px;border-radius:10px;border:1px solid var(--line);background:var(--soft);font-weight:700;color:var(--ink2)}
.pultBar button:hover{background:#e8f0f9}
.pultNav,.pultTools{display:flex;align-items:center;gap:4px}
.pultNav span{min-width:54px;text-align:center;font-weight:700;font-size:13px;color:var(--mute)}
.pultNav button{font-size:20px;line-height:1}
.pultBody{position:relative;flex:1;overflow:auto;padding:12px;background:#eef2f7;outline:0;overscroll-behavior:contain}
.pultBody img{display:block;margin:0 auto 12px;background:#fff;box-shadow:0 2px 10px rgba(20,40,70,.12);max-width:none;user-select:none;-webkit-user-drag:none}
.pultBody.fitWidth img{width:100%}
.pultMsg{max-width:380px;margin:30px auto;padding:20px;border-radius:16px;background:#fff;border:1px solid var(--line);text-align:center;color:var(--mute)}
.pultMsg h3{margin:0 0 6px;color:var(--ink2);font-size:16px}
.pultMsg .btn{margin-top:10px}
.pultMsg input{width:100%;min-height:44px;margin-top:8px;padding:0 12px;border-radius:11px;border:1px solid #d6e4f3;background:#f7faff;font-size:16px}
.layout.pultMax .pult{width:100%!important;max-width:none}
.layout.pultMax .stage{display:none}
.layout.pultMax .pultGrip{display:none}
.flash{animation:flash .35s}
@keyframes flash{from{box-shadow:inset 0 0 0 3px var(--gold)}}

/* Hinweis unten */
.toast{position:fixed;left:50%;bottom:calc(18px + var(--tabH) + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:60;display:flex;flex-wrap:wrap;align-items:center;gap:10px;max-width:calc(100% - 28px);padding:11px 14px;border-radius:15px;background:var(--navy2);color:#fff;box-shadow:0 14px 40px rgba(0,0,0,.28);font-size:14px}
.toast button{min-height:36px;padding:0 13px;border-radius:10px;border:0;font-weight:700;background:var(--gold);color:#1d2c3d}
.toast button.later{background:transparent;color:#c8dbef}

/* Ton einpegeln */
.pegRow{display:grid;grid-template-columns:110px minmax(0,1fr) 64px;align-items:center;gap:12px;margin:12px 0 6px;font-weight:650;color:#315a86}
.pegRow input{width:100%;accent-color:var(--blue)}
.pegRow b{text-align:right;font-variant-numeric:tabular-nums;color:var(--ink2)}
.pegTips{margin:14px 0 0;padding-left:18px;color:#3d5a78;font-size:13px}
.pegTips li{margin-bottom:5px}
.meter{position:relative;height:26px;border-radius:9px;overflow:hidden;background:#eef3f8;border:1px solid #dce6f0;margin-top:8px}
.mZones{position:absolute;inset:0;display:flex;opacity:.35}
.mZones i{display:block;height:100%}
.zLow{width:50%;background:#c8d5e3}.zOk{width:40%;background:#7fd3a0}.zHot{width:5%;background:#f2c46b}.zClip{width:5%;background:#f08a99}
.mBar{position:absolute;left:0;top:0;bottom:0;width:0;background:#1f9d55;transition:width .05s linear}
.mBar[data-z=low]{background:#8aa4bf}.mBar[data-z=hot]{background:#e5a52f}.mBar[data-z=clip]{background:#e0263f}
.mPeak{position:absolute;top:0;bottom:0;width:3px;margin-left:-1px;background:#17395d;left:0}
.mScale{position:relative;height:16px;font-size:11px;color:var(--mute2);margin-top:3px}
.mScale span{position:absolute;top:0;transform:translateX(-50%);white-space:nowrap}
.mScale span:first-child{transform:none}.mScale span:last-child{transform:translateX(-100%)}
.pegState{min-height:2.8em;margin:8px 0 0!important;font-weight:650;color:var(--ink2)!important}
@media (max-width:640px){.pegRow{grid-template-columns:90px minmax(0,1fr) 56px;gap:8px}}

/* Face ID / Fingerabdruck */
.bioBtn{width:100%;margin-top:8px}
.bioBtn svg,.appLock .btn svg{width:20px;height:20px}
.subCap{margin:14px 0 6px!important;font-size:11.5px!important;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--mute2)!important}
.bioList{display:flex;flex-direction:column;gap:6px}
.bioRow{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:12px;background:var(--soft);border:1px solid #e6eef7}
.bioRow div{flex:1;min-width:0}.bioRow b{display:block;font-size:13.5px}.bioRow small{color:var(--mute);font-size:12px}
.bioRow .dot{flex:none;width:10px;height:10px;border-radius:50%;background:#c4d2e1}.bioRow .dot.on{background:var(--ok)}
.bioLp{margin-top:12px}.bioLp label{display:block;font-weight:650;font-size:13px;color:#315a86;margin-bottom:2px}
.bioLp input{flex:1;min-width:0;min-height:42px;padding:0 12px;border-radius:12px;border:1px solid #d6e4f3;background:#f7faff;font-size:15px}
.appLock{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:radial-gradient(ellipse at 50% 0,#244f7c,#0f2440 70%)}
.alCard{width:min(380px,100%);padding:30px 26px;border-radius:24px;background:#fff;text-align:center;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.alCard>svg{width:64px;height:64px;border-radius:18px;margin:0 auto 12px;display:block;stroke:none}
.alCard h2{font-size:22px;margin-bottom:6px}.alCard p{color:var(--mute);margin:0 0 16px}
.alCard .btn{width:100%;min-height:48px;font-size:15px}
.alCard .note{margin-top:14px!important}

/* Schnellleiste unten (Handy, Tablet hochkant) */
.tabbar{display:none}

/* Tablet hochkant und Handy */
@media (max-width:1024px) and (orientation:portrait),(max-width:860px){
  :root{--headH:56px;--tabH:62px}
  .ahMenu{display:inline-flex}
  .ahLogo{width:auto}
  .ahLogo span{display:none}
  .layout{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}
  .nav{position:fixed;top:calc(var(--headH) + env(safe-area-inset-top));bottom:calc(var(--tabH) + env(safe-area-inset-bottom));left:0;width:min(320px,86vw);transform:translateX(-105%);transition:transform .24s cubic-bezier(.2,.7,.2,1);box-shadow:12px 0 40px rgba(0,0,0,.25)}
  .scrim{top:calc(var(--headH) + env(safe-area-inset-top));bottom:calc(var(--tabH) + env(safe-area-inset-bottom))}
  .nav.open{transform:none}
  .stage{grid-row:2}
  .pult{grid-row:1;width:auto!important;max-width:none;min-width:0;height:var(--pultH);border-left:0;border-bottom:1px solid var(--line)}
  .pultGrip{left:0;right:0;top:auto;bottom:-6px;width:auto;height:12px;cursor:row-resize}
  .pultGrip::after{left:50%;top:4px;width:44px;height:4px;margin:0 0 0 -22px}
  .layout.pultMax .pult{height:100%!important}
  .tabbar{display:grid;grid-template-columns:repeat(5,1fr);height:calc(var(--tabH) + env(safe-area-inset-bottom));padding:0 max(4px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(4px,env(safe-area-inset-left));background:#fff;border-top:1px solid var(--line);z-index:35}
  .tabbar button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:0;background:none;color:var(--mute);font-size:11px;font-weight:650}
  .tabbar button svg{width:23px;height:23px}
  .tabbar button[aria-current="page"]{color:var(--blue)}
  .viewIn{padding:20px 16px 32px}
  .areaBar{padding:6px 10px 0}
  .areaTabs button{height:38px;padding:0 12px;font-size:13.5px}
  .areaChips{margin:0 -10px;padding:6px 10px}
  h1{font-size:26px}
  .quick{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cards{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  .ahBtn span{display:none}
  .ahBtn{padding:0 10px}
  .ahCrumb small{display:none}
  .ahCrumb b{font-size:15.5px}
  .micChip span{display:none}
  .micChip{padding:0 10px}
  .quick{grid-template-columns:minmax(0,1fr)}
  .qk{padding:13px 14px}
  .qkIc{width:42px;height:42px}
  .platforms{grid-template-columns:minmax(0,1fr)}
  .pultTools #pultZoomOut,.pultTools #pultZoomIn{display:none}
  .libGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
}
/* Handy quer */
@media (orientation:landscape) and (max-height:520px){
  :root{--headH:48px;--tabH:0px}
  .tabbar{display:none}
  .layout{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:minmax(0,1fr)}
  .stage{grid-row:1}
  .pult{grid-row:1;height:auto;width:var(--pultW)!important;min-width:260px;border-left:1px solid var(--line);border-bottom:0}
  .pultGrip{left:-6px;right:auto;top:0;bottom:0;width:12px;height:auto;cursor:col-resize}
  .pultGrip::after{left:4px;top:50%;width:4px;height:44px;margin:-22px 0 0}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
@media print{.ah,.nav,.tabbar,.pult{display:none!important}}

/* ---------- Übersicht kompakt (alles möglichst auf einer Seite) ---------- */
#v-start .viewIn{padding-top:20px;padding-bottom:20px}
#v-start h1{font-size:28px;margin-bottom:14px}
#v-start .quick{gap:10px;margin-bottom:14px}
#v-start .qk{padding:11px 14px;border-radius:15px;column-gap:12px}
#v-start .qkIc{width:40px;height:40px;border-radius:12px}
#v-start .qkIc svg{width:21px;height:21px}
#v-start .qk b{font-size:14.5px}
#v-start .qk small{font-size:12px;line-height:1.35}
.startCards{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) minmax(0,1fr);gap:12px}
.startCards .card{padding:16px 18px;border-radius:17px}
.startCards h2{font-size:16px;margin-bottom:6px}
.cardSub{font-size:12.5px;margin:0 0 10px!important}
.startCards .row{margin-top:10px}
.startLib{gap:8px;min-height:0}
.startLib .mini{width:78px;border-radius:10px}
.startLib .mini span{height:92px}
.startLib .mini b{font-size:11.5px;padding:5px 6px}
.recent{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.recent button{display:flex;align-items:center;gap:7px;min-height:34px;padding:5px 9px;border-radius:10px;font-size:12.5px;font-weight:650;line-height:1.2;text-align:left;min-width:0}
.recent button svg{width:16px;height:16px;flex:none;color:var(--blue)}
.recent button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.recent button small{display:none}
.recent .empty{grid-column:1/-1;margin:0}
.tips ul{margin:4px 0 0;padding-left:16px;font-size:12.5px;line-height:1.45}
.tips li{margin-bottom:5px}
.installStrip{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px;padding:8px 8px 8px 14px;border-radius:14px;background:#fff;border:1px solid var(--line);font-size:13px;color:var(--mute)}
.installStrip span{flex:1;min-width:180px}
.isClose{width:32px;height:32px;border:0;border-radius:9px;background:none;color:var(--mute2);font-size:20px;line-height:1}
.isClose:hover{background:var(--soft)}
#v-start .privacyLine{margin-top:12px}
@media (max-width:1180px){.startCards{grid-template-columns:repeat(2,minmax(0,1fr))}.startCards .tips{grid-column:1/-1}.tips ul{columns:2;column-gap:24px}}
@media (max-width:1024px) and (orientation:portrait),(max-width:860px){#v-start .viewIn{padding-top:14px}}
@media (max-width:640px){
  #v-start h1{font-size:22px;margin-bottom:10px}
  #v-start .eyebrow{display:none}
  #v-start .quick{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}
  #v-start .qk{grid-template-columns:auto 1fr;grid-template-rows:auto;padding:9px 10px;column-gap:9px}
  #v-start .qkIc{grid-row:auto;width:34px;height:34px;border-radius:10px}
  #v-start .qkIc svg{width:18px;height:18px}
  #v-start .qk b{font-size:13px;line-height:1.2}
  #v-start .qk small{display:none}
  .startCards{grid-template-columns:minmax(0,1fr);gap:10px}
  .startCards .card{padding:13px 14px}
  .cardSub,.tips{display:none}
  .startLib .mini{width:64px}.startLib .mini span{height:76px}
  .installStrip{font-size:12px}
}
.startCards{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) minmax(0,.95fr)}
@media (max-width:1180px){.startCards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){
  #v-start .viewIn{padding-top:12px;padding-bottom:12px}
  #v-start h1{font-size:20px;margin-bottom:8px}
  #v-start .quick{gap:6px;margin-bottom:8px}
  #v-start .qk{padding:7px 9px;border-radius:13px}
  #v-start .qkIc{width:32px;height:32px}
  .startCards{grid-template-columns:minmax(0,1fr);gap:8px}
  .startCards .card{padding:11px 12px;border-radius:15px}
  .startCards h2{font-size:15px;margin-bottom:6px}
  .pultCard{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}
  .pultCard h2{margin:0;flex:1}
  .pultCard .row{margin-top:0}
  .pultCard .startLib{order:3;flex-basis:100%}
  .pultCard .startLib:has(.empty){display:none}
  .recent{gap:5px}
  .recent button{min-height:30px;padding:4px 8px;font-size:12px}
  .installStrip{margin-top:8px;padding:5px 5px 5px 10px}
  .installStrip [data-go]{display:none}
  #v-start .privacyLine{margin-top:8px;font-size:11.5px}
}
@media (max-width:640px){#v-start .viewIn{padding-top:10px;padding-bottom:2px}#v-start h1{margin-bottom:7px}#v-start .privacyLine{margin-top:6px}}
#v-start .privacyLine{display:block}
#v-start .privacyLine .dot{display:inline-block;margin-right:6px;vertical-align:1px}
