:root{
  --black:#070707;--ink:#111111;--tile:#171717;--tile2:#202020;--tile3:#2A2A2A;--line:#3A3A3A;--line2:#4A4A4A;
  --white:#F4F4F4;--soft:#CFCFCF;--muted:#8C8C8C;--radius:4px;--shadow:0 18px 70px rgba(0,0,0,.35);
}
html[data-surface="studio"]{
  --black:#f6f6f4;--ink:#ffffff;--tile:#ffffff;--tile2:#ececea;--tile3:#dededb;--line:#bdbdb8;--line2:#111111;
  --white:#111111;--soft:#202020;--muted:#555555;--shadow:0 18px 52px rgba(17,17,17,.12);
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:var(--black);color:var(--white)}
body{background:linear-gradient(135deg,#050505 0%,#111 38%,#1b1b1b 64%,#060606 100%)}a{color:var(--white);text-decoration:underline;text-underline-offset:3px}button,input,textarea,select{font:inherit}button{cursor:pointer}
html[data-surface="studio"] body{background:#f7f7f7;color:#111}
.platform-nav{display:none}
.topnav>a{border:0;border-left:1px solid transparent;border-right:1px solid transparent;background:transparent;color:var(--soft);padding:14px 18px;text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.08em;white-space:nowrap;text-decoration:none;transition:background .16s ease,color .16s ease,border .16s ease,transform .16s ease}
.topnav>a:hover,.topnav>a.active{background:var(--tile2);color:var(--white);border-color:var(--line)}
.platform-nav a{min-height:38px;display:grid;place-items:center;padding:0 18px;border-right:1px solid #2a2a2a;color:#f4f4f4;text-decoration:none;text-transform:uppercase;font-size:11px;font-weight:950;letter-spacing:.09em}
.platform-nav a:first-child{border-left:1px solid #2a2a2a}
.platform-nav a:hover,.platform-nav a.active{background:#f4f4f4;color:#050505}
html[data-surface="studio"] .platform-nav{background:#fff;color:#111;border-bottom-color:#111}
html[data-surface="studio"] .platform-nav a{color:#111;border-color:#111}
html[data-surface="studio"] .platform-nav a:hover,html[data-surface="studio"] .platform-nav a.active{background:#111;color:#fff}
.header{position:sticky;top:0;z-index:80;min-height:72px;border-bottom:1px solid var(--line);background:rgba(8,8,8,.92);backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:space-between;gap:22px;padding:0 30px}.brand{display:flex;align-items:center;gap:12px;min-width:230px;font-weight:800;letter-spacing:-.035em;white-space:nowrap;text-transform:uppercase;text-decoration:none;color:var(--white)}.logo{width:42px;height:42px;border:1px solid var(--line2);background:#f4f1ea;color:var(--black);display:grid;place-items:center;font-weight:900;line-height:1;overflow:hidden}
html[data-surface="studio"] .header{background:rgba(255,255,255,.94);border-bottom-color:#111}
html[data-surface="studio"] .logo{background:#111;color:#fff;border-color:#111}
html[data-surface="studio"] .logo img{filter:grayscale(1) contrast(1.15)}
.logo img{width:100%;height:100%;object-fit:cover;display:block}.brand-title{display:flex;flex-direction:column;line-height:.95}.brand-title strong{font-size:13px;letter-spacing:.08em}.brand-title span{font-size:10px;color:var(--muted);letter-spacing:.12em;margin-top:4px}.hero-logo{display:grid;place-items:center;border:1px solid var(--line);background:#f4f1ea;padding:18px;min-height:320px}.hero-logo img{width:min(100%,420px);height:auto;display:block;filter:grayscale(1)}.topnav{display:flex;align-items:center;justify-content:center;gap:0;flex:1}.topnav button{border:0;border-left:1px solid transparent;border-right:1px solid transparent;background:transparent;color:var(--soft);padding:14px 18px;text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.08em;white-space:nowrap;transition:background .16s ease,color .16s ease,border .16s ease,transform .16s ease}.topnav button:hover,.topnav .active{background:var(--tile2);color:var(--white);border-color:var(--line)}.actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;min-width:230px}.hamb{display:none;width:42px;height:42px;border:1px solid var(--line2);background:var(--tile);color:var(--white);place-items:center;font-size:22px;border-radius:var(--radius)}
html[data-surface="studio"] .topnav button:hover,html[data-surface="studio"] .topnav .active{background:#111;color:#fff;border-color:#111}
html[data-surface="studio"] .topnav>a:hover,html[data-surface="studio"] .topnav>a.active{background:#111;color:#fff;border-color:#111}
html[data-surface="studio"] .topnav button:not(.active),html[data-surface="studio"] .topnav>a:not(.active),html[data-surface="studio"] .menu-grid button,html[data-surface="studio"] .btn.secondary,html[data-surface="studio"] .btn.ghost{border-color:#a8a8a3;color:#1a1a1a;background:#fff}
html[data-surface="studio"] .sideitem:not(.active),html[data-surface="studio"] .lesson-row:not(.active),html[data-surface="studio"] .card:not(:hover){border-color:#bdbdb8}
html[data-surface="studio"] .hero{background:#fff;color:#111}
html[data-surface="studio"] .hero:before{opacity:.35}
html[data-surface="studio"] .card,html[data-surface="studio"] .panel,html[data-surface="studio"] .login-card,html[data-surface="studio"] .admin-shell .panel{background:#fff;color:#111}
html[data-surface="studio"] .card:hover{background:#f6f6f6;border-color:#111}
html[data-surface="studio"] .input,html[data-surface="studio"] .textarea,html[data-surface="studio"] .select{background:#fff;color:#111}
html[data-surface="studio"] .btn:hover{background:#000;border-color:#000;color:#fff}
html[data-surface="studio"] .btn.secondary:hover,html[data-surface="studio"] .btn.ghost:hover{background:#111;color:#fff;border-color:#111}
.menu-overlay{position:fixed;inset:0;z-index:140;background:rgba(5,5,5,.86);backdrop-filter:blur(16px);display:none;overflow-y:auto;-webkit-overflow-scrolling:touch}.menu-overlay.open{display:block}.menu-panel{margin:84px auto 24px;max-width:760px;max-height:calc(100dvh - 108px);overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--line);background:var(--tile);box-shadow:var(--shadow);padding:22px;border-radius:var(--radius)}.menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.menu-grid button{border:1px solid var(--line);background:var(--ink);color:var(--white);padding:18px;text-align:left;border-radius:var(--radius);transition:transform .15s ease,background .15s ease,border .15s ease}.menu-grid button:hover{transform:translateY(-1px);background:var(--tile2);border-color:var(--white)}.menu-grid small{display:block;color:var(--muted);margin-top:5px}
.profile-chip{border:1px solid var(--line2);border-radius:var(--radius);background:rgba(0,0,0,.25);color:var(--white);display:grid;gap:2px;align-content:center;text-align:left;padding:8px 12px;min-height:42px;max-width:260px}.profile-chip span{display:block;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:900;letter-spacing:.02em}.profile-chip small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:900}.profile-chip:hover,.profile-chip.active{background:var(--tile2);border-color:var(--white)}
.btn{border:1px solid var(--white);border-radius:var(--radius);background:var(--white);color:var(--black);font-weight:900;padding:12px 16px;text-transform:uppercase;font-size:12px;letter-spacing:.07em;transition:transform .14s ease,background .14s ease,color .14s ease,border .14s ease}.btn:hover{transform:translateY(-1px);background:#d8d8d8;border-color:#d8d8d8}.btn:active{transform:translateY(1px)}.btn.secondary{background:var(--tile);color:var(--white);border:1px solid var(--line2)}.btn.secondary:hover{background:var(--tile2);border-color:var(--white)}.btn.ghost{background:transparent;color:var(--soft);border:1px solid var(--line)}.btn.danger{background:var(--black);color:var(--white);border:1px solid var(--line2)}
.page{max-width:1320px;margin:0 auto;padding:28px}.hero{position:relative;overflow:hidden;border:1px solid var(--line);background:linear-gradient(135deg,#0b0b0b,#202020 48%,#0f0f0f);box-shadow:var(--shadow);padding:48px;min-height:420px;display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:center;border-radius:var(--radius)}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(180deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:42px 42px;opacity:.55;pointer-events:none}.hero-copy,.graphic{position:relative;z-index:1}.badge{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--line2);background:rgba(0,0,0,.25);color:var(--soft);padding:8px 12px;font-size:12px;text-transform:uppercase;font-weight:800;letter-spacing:.08em;border-radius:var(--radius)}.dot{width:8px;height:8px;background:var(--white);display:inline-block}h1{font-size:clamp(42px,6vw,82px);line-height:.9;letter-spacing:-.075em;margin:18px 0;font-weight:900}h2{font-size:30px;letter-spacing:-.045em;margin:0 0 14px;font-weight:900}h3{margin:0 0 8px;font-size:18px;font-weight:900}p{color:var(--soft);line-height:1.65}.hero p{font-size:18px;max-width:690px}.graphic{display:grid;grid-template-columns:1fr 1fr;gap:10px}.graphic-card{border:1px solid var(--line);background:rgba(12,12,12,.78);padding:18px;min-height:130px;border-radius:var(--radius);transition:transform .15s ease,border .15s ease,background .15s ease}.graphic-card:hover{transform:translateY(-2px);border-color:var(--white);background:#111}.graphic-card.wide{grid-column:1/-1}.progress{height:8px;background:var(--tile3);overflow:hidden;margin-top:14px}.progress span{display:block;height:100%;background:var(--white)}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{border:1px solid var(--line);background:rgba(18,18,18,.90);padding:20px;box-shadow:0 18px 60px rgba(0,0,0,.12);border-radius:var(--radius);transition:transform .15s ease,border .15s ease,background .15s ease}.card:hover{border-color:var(--white);background:#151515;transform:translateY(-1px)}.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.stack{display:grid;gap:10px}.input,.textarea,.select{width:100%;border:1px solid var(--line2);background:#0b0b0b;color:var(--white);border-radius:var(--radius);padding:13px 14px;outline:0}.textarea{min-height:110px;resize:vertical}.input:focus,.textarea:focus,.select:focus{border-color:var(--white);box-shadow:0 0 0 2px rgba(255,255,255,.18)}.label{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:900;margin-bottom:6px}.form-row{display:grid;gap:6px}.notice,.success,.error{padding:13px 14px;border-radius:var(--radius);margin-top:12px;border:1px solid var(--line2);background:#101010;color:var(--soft)}.success{border-color:var(--white);color:var(--white)}.error{border-color:#767676;color:#e8e8e8}
.login-wrap{min-height:calc(100vh - 150px);display:grid;place-items:center;padding:30px 0}.login-card{width:min(520px,100%);border:1px solid var(--line);background:#0c0c0c;padding:34px;border-radius:var(--radius);box-shadow:var(--shadow)}.login-card h1{font-size:44px;margin:0 0 12px}.login-brand{display:flex;align-items:center;gap:12px;margin-bottom:28px;text-transform:uppercase;font-weight:900;letter-spacing:.06em}.login-logo-full{display:grid;place-items:center;background:#f4f1ea;border:1px solid var(--line);margin:-10px 0 24px;padding:14px}.login-logo-full img{width:min(100%,260px);height:auto;display:block;filter:grayscale(1)}.login-meta{display:grid;gap:10px;margin-top:20px;color:var(--muted);font-size:13px}
.admin-shell{display:grid;grid-template-columns:250px minmax(0,1fr) 300px;gap:10px;align-items:start}.panel{border:1px solid var(--line);background:rgba(18,18,18,.92);border-radius:var(--radius);padding:16px}.sticky{position:sticky;top:92px}.sideitem{display:block;width:100%;text-align:left;border:1px solid transparent;background:transparent;color:var(--soft);padding:11px 12px;border-radius:var(--radius);transition:background .15s ease,border .15s ease,color .15s ease}.sideitem:hover,.sideitem.active{background:var(--tile2);border-color:var(--line2);color:var(--white)}.lesson-title{font-size:44px;line-height:1;letter-spacing:-.06em;font-weight:1000;outline:0;border-radius:var(--radius);padding:8px}.editable{outline:0;border-radius:var(--radius);padding:8px;margin:-8px}.lesson-title:focus,.editable:focus,[contenteditable=true]:focus{box-shadow:0 0 0 2px rgba(255,255,255,.22);background:#0b0b0b}
.block{border:1px solid var(--line);background:rgba(20,20,20,.88);border-radius:var(--radius);margin:10px 0;overflow:hidden}.block-head{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border-bottom:1px solid var(--line)}.block-type{font-weight:900;display:flex;gap:9px;align-items:center;text-transform:uppercase;letter-spacing:.05em;font-size:12px}.block-body{padding:16px}.block-actions{display:flex;gap:8px}.icon-btn{width:36px;height:36px;border:1px solid var(--line2);border-radius:var(--radius);background:#0b0b0b;color:var(--soft)}.icon-btn:hover{color:var(--white);border-color:var(--white)}.add-block{border:1px dashed var(--line2);background:#0d0d0d;border-radius:var(--radius);padding:18px;margin:14px 0}.palette{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.palette button{border:1px solid var(--line);background:#111;color:var(--white);border-radius:var(--radius);padding:14px;text-align:left;text-transform:uppercase;font-size:12px;font-weight:900;letter-spacing:.06em;transition:transform .15s ease,border .15s ease}.palette button:hover{transform:translateY(-1px);border-color:var(--white)}.palette small{display:block;color:var(--muted);line-height:1.35;margin-top:6px;text-transform:none;letter-spacing:0;font-weight:500}.status{display:inline-flex;padding:6px 9px;border-radius:var(--radius);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;border:1px solid var(--line2);color:var(--soft)}.status.published{border-color:var(--white);color:var(--white)}.status.draft{color:var(--muted)}
.asset,.notation-render{border:1px solid var(--line);background:#0b0b0b;border-radius:var(--radius);padding:12px;margin-top:10px}.asset img{max-width:100%;border-radius:var(--radius);border:1px solid var(--line);margin-top:10px}.asset iframe,.musescore-frame{width:100%;height:520px;border:1px solid var(--line);background:white;border-radius:var(--radius);margin-top:10px}.video-preview{width:100%;border-radius:var(--radius);border:1px solid var(--line);background:black;margin-top:10px}.osmd-target{background:#fff;color:#000;overflow:auto;padding:12px;margin-top:10px;min-height:160px}.footer{max-width:1320px;margin:20px auto 0;padding:22px 28px;color:var(--muted);display:flex;justify-content:space-between;gap:14px;border-top:1px solid var(--line);font-size:13px}.mobile-bottom{display:none}
@media(max-width:620px){.profile-chip{max-width:185px}.profile-chip span{max-width:150px}.actions>.btn.ghost{display:none}.menu-panel{margin:70px 10px 18px;max-height:calc(100dvh - 88px);padding:16px}}
@media(max-width:1060px){.topnav{display:none}.hamb{display:grid}.brand,.actions{min-width:0}.header{padding:10px 14px}.actions .badge{display:none}}@media(max-width:940px){.page{padding:14px}.hero{grid-template-columns:1fr;padding:24px;min-height:auto}.grid,.grid.two,.admin-shell,.palette,.menu-grid,.graphic{grid-template-columns:1fr}.footer{display:grid;grid-template-columns:1fr}.sticky{position:static}.lesson-title{font-size:34px}.login-card{padding:22px}.login-card h1{font-size:34px}.mobile-bottom{display:flex;position:sticky;bottom:0;z-index:30;gap:8px;background:rgba(8,8,8,.94);backdrop-filter:blur(18px);border-top:1px solid var(--line);padding:10px}.mobile-bottom .btn{flex:1}.asset iframe,.musescore-frame{height:420px}}

/* v6.4 admin cleanup */
.admin-section{margin-top:18px}
.lesson-list{display:grid;gap:8px}
.lesson-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid var(--line);background:#101010;padding:12px;border-radius:var(--radius);transition:transform .15s ease,border .15s ease,background .15s ease}
.lesson-row:hover{border-color:var(--white);background:#151515;transform:translateY(-1px)}
.lesson-row.dragging{opacity:.55;border-style:dashed}
.drag-handle{width:34px;height:34px;border:1px solid var(--line2);display:grid;place-items:center;color:var(--muted);background:#0b0b0b;user-select:none;cursor:grab}
.drag-handle:active{cursor:grabbing}
.lesson-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.lesson-meta{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.06em}
.compact-btn{padding:9px 11px;font-size:11px}
.mini-stat{display:grid;gap:4px}
.mini-stat strong{font-size:34px;line-height:1}
.musescore-help{color:var(--muted);font-size:13px;margin-top:8px}
@media(max-width:940px){
  .lesson-row{grid-template-columns:1fr}
  .drag-handle{display:none}
  .lesson-actions{justify-content:flex-start}
}


/* v6.5 course-first admin structure */
.course-tile{min-height:190px;display:grid;align-content:space-between;gap:16px}
.course-title-edit{outline:0}
.course-title-edit:focus{box-shadow:0 0 0 2px rgba(255,255,255,.22);background:#0b0b0b}
.breadcrumb{display:flex;gap:8px;align-items:center;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:900;margin-bottom:12px}
.breadcrumb button{border:0;background:transparent;color:var(--soft);text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:900;padding:0;text-decoration:underline;text-underline-offset:3px}
.course-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start}
.notation-url-row{display:grid;gap:8px;margin-bottom:14px}
.external-score-link{display:inline-flex;align-items:center;gap:8px;margin-top:10px}
@media(max-width:940px){.course-header{grid-template-columns:1fr}}


/* v6.6 course/lesson fix */
.course-actions{display:flex;gap:8px;flex-wrap:wrap}
.inline-warning{border:1px solid var(--line2);background:#0b0b0b;color:var(--soft);padding:12px;margin-top:12px;border-radius:var(--radius)}


/* v6.8 student lesson + gamification */
.lesson-page{max-width:1120px;margin:0 auto;display:grid;gap:16px}
.lesson-hero{border:1px solid var(--line);background:linear-gradient(135deg,#0b0b0b,#1a1a1a 54%,#080808);padding:34px;border-radius:var(--radius);box-shadow:var(--shadow);position:relative;overflow:hidden}
.lesson-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(180deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:38px 38px;opacity:.6;pointer-events:none}
.lesson-hero > *{position:relative;z-index:1}
.lesson-meta-row{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.lesson-progress-shell{margin-top:20px;border:1px solid var(--line);background:#090909;padding:14px;border-radius:var(--radius)}
.lesson-progress-head{display:flex;justify-content:space-between;gap:12px;color:var(--soft);font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;margin-bottom:8px}
.lesson-progress-track{height:10px;background:#2a2a2a;overflow:hidden}
.lesson-progress-fill{height:100%;background:var(--white);transition:width .25s ease}
.lesson-body{border:1px solid var(--line);background:rgba(13,13,13,.94);border-radius:var(--radius);padding:0;overflow:hidden}
.lesson-section{padding:28px;border-bottom:1px solid var(--line)}
.lesson-section:last-child{border-bottom:0}
.lesson-section h2{font-size:26px;margin-bottom:12px}
.lesson-article{font-size:17px;line-height:1.8;color:var(--soft);max-width:860px}
.lesson-video{width:100%;max-height:70vh;background:#000;border:1px solid var(--line);border-radius:var(--radius)}
.checklist{display:grid;gap:8px;margin-top:12px}
.check-item{display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;align-items:start;border:1px solid var(--line);background:#0b0b0b;padding:12px;border-radius:var(--radius);transition:border .15s ease,background .15s ease}
.check-item:hover{border-color:var(--white);background:#101010}
.check-item input{width:20px;height:20px;margin:1px 0 0}
.check-item span{color:var(--soft);line-height:1.5}
.check-item.done span{text-decoration:line-through;color:var(--muted)}
.timeline{display:grid;gap:8px;margin-top:12px}
.timeline-item{display:grid;grid-template-columns:120px minmax(0,1fr);gap:14px;border-left:2px solid var(--line2);padding:10px 0 10px 14px}
.timeline-time{font-weight:900;color:var(--white);letter-spacing:.04em}
.timeline-content strong{display:block;margin-bottom:4px}
.reward-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.reward-tile{border:1px solid var(--line);background:#0b0b0b;border-radius:var(--radius);padding:16px}
.reward-tile strong{display:block;font-size:26px;margin-top:4px}
.complete-panel{border:1px solid var(--white);background:#101010;padding:20px;border-radius:var(--radius);display:grid;gap:12px}
.badge-preview{border:1px solid var(--line2);background:#0b0b0b;padding:14px;border-radius:var(--radius)}
.badge-mark{display:inline-grid;place-items:center;width:46px;height:46px;border:1px solid var(--white);background:var(--white);color:var(--black);font-weight:900;margin-bottom:10px}
.lesson-toast{position:fixed;right:22px;bottom:22px;z-index:200;max-width:360px;border:1px solid var(--white);background:#0a0a0a;color:var(--white);box-shadow:var(--shadow);padding:16px;border-radius:var(--radius)}
.user-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}
@media(max-width:940px){
  .lesson-hero{padding:22px}
  .lesson-section{padding:18px}
  .timeline-item{grid-template-columns:1fr}
  .reward-grid,.user-stats{grid-template-columns:1fr}
}


/* v6.9 course access + pathways */
.pathway-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:12px;align-items:stretch}
.pathway-panel{border:1px solid var(--line);background:#101010;border-radius:var(--radius);padding:20px}
.current-work{display:grid;gap:10px}
.course-detail-hero{border:1px solid var(--line);background:linear-gradient(135deg,#0b0b0b,#1d1d1d 55%,#080808);padding:34px;border-radius:var(--radius);box-shadow:var(--shadow)}
.course-lessons{display:grid;gap:8px;margin-top:16px}
.public-lesson-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid var(--line);background:#101010;padding:14px;border-radius:var(--radius);transition:border .15s ease,background .15s ease,transform .15s ease}
.public-lesson-row:hover{border-color:var(--white);background:#151515;transform:translateY(-1px)}
.public-lesson-row.locked{opacity:.72;border-color:#2e2e2e}
.access-pill{display:inline-flex;padding:5px 8px;border:1px solid var(--line2);color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;margin-left:6px}
.access-pill.free{border-color:var(--white);color:var(--white)}
.course-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.lock-panel{max-width:760px;margin:0 auto;border:1px solid var(--line);background:#101010;padding:28px;border-radius:var(--radius);box-shadow:var(--shadow)}
.course-progress-mini{height:8px;background:#2a2a2a;overflow:hidden;margin-top:10px}
.course-progress-mini span{display:block;height:100%;background:var(--white)}
@media(max-width:940px){
  .pathway-layout{grid-template-columns:1fr}
  .public-lesson-row{grid-template-columns:1fr}
}

/* v7.1.3 auth cleanup */
.auth-switch{display:flex;gap:10px;flex-wrap:wrap;margin:-6px 0 22px}
.auth-switch .btn{flex:1}
.auth-switch-single .btn{flex:0 0 auto}
.login-meta a{color:var(--white)}

/* v7.6 MusicXML + MIDI timing foundation */
.upload-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0}.asset-tool-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:12px 0 8px}.asset-tool-head span{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.06em}.notation-render,.midi-render{margin-top:12px;border:1px solid var(--line);border-radius:18px;padding:14px;background:rgba(255,255,255,.03)}.osmd-target{overflow:auto;background:#f7f3ea;color:#111;border-radius:14px;margin-top:12px;padding:14px}.score-fallback{display:grid;gap:10px}.score-measure{display:grid;grid-template-columns:48px 1fr;gap:10px;align-items:start;border:1px solid rgba(0,0,0,.16);background:#fff;color:#151515;border-radius:12px;padding:10px}.measure-num{font-weight:900;color:#777}.score-notes{display:flex;flex-wrap:wrap;gap:8px}.score-note{min-width:54px;display:grid;place-items:center;border-radius:10px;border:1px solid #ddd;background:#fafafa;padding:8px;font-weight:800}.score-note small{display:block;font-size:10px;color:#777;font-weight:500}.score-note.rest{opacity:.62}.midi-summary{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.midi-summary span,.lesson-step{border:1px solid var(--line);border-radius:999px;padding:6px 10px;color:var(--muted);font-size:12px}.midi-table{max-height:360px;overflow:auto;border:1px solid var(--line);border-radius:14px}.midi-table table{width:100%;border-collapse:collapse;font-size:13px}.midi-table th,.midi-table td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left}.lesson-nav{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 14px}.lesson-page>.lesson-nav:last-child,.lesson-body>.lesson-nav{margin-top:18px}.lesson-step{margin-left:auto}.lesson-toast{position:fixed;right:18px;bottom:18px;z-index:2000;max-width:360px;border:1px solid var(--line);border-radius:18px;background:#111;color:var(--white);padding:16px;box-shadow:var(--shadow)}
@media(max-width:760px){.upload-grid{grid-template-columns:1fr}.lesson-step{margin-left:0}.lesson-nav .btn{flex:1}}


/* v7.7 DrumHero-style student practice */
.practice-lab{border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.035);padding:18px;margin:16px 0;box-shadow:var(--shadow)}
.practice-head{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:start}.practice-head h3{margin:.4rem 0}.practice-head p{color:var(--muted);max-width:760px}.practice-actions,.practice-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.practice-panel{display:grid;gap:14px}.practice-status{color:var(--muted);font-size:13px}.practice-status.good{color:#9de2b2}.practice-status.warn{color:#ffd38a}.practice-status.bad{color:#ff9a9a}.practice-stats,.practice-summary{display:flex;flex-wrap:wrap;gap:10px}.practice-stats span,.practice-summary span,.map-chip{border:1px solid var(--line);border-radius:999px;padding:7px 11px;background:rgba(255,255,255,.04);font-size:13px}.practice-stage-wrap{border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015));overflow:hidden}.practice-stage{position:relative;height:390px;display:grid;grid-template-columns:repeat(7,1fr);background:repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0,rgba(255,255,255,.04) 1px,transparent 1px,transparent calc(100% / 7));}.practice-hitline{position:absolute;left:0;right:0;top:310px;height:3px;background:rgba(255,255,255,.78);box-shadow:0 0 24px rgba(255,255,255,.35);z-index:3}.practice-hitline:after{content:"HIT LINE";position:absolute;right:10px;top:8px;color:var(--muted);font-size:11px;letter-spacing:.12em}.practice-lane-labels{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(7,1fr);z-index:2;background:rgba(0,0,0,.42);border-top:1px solid var(--line)}.practice-lane-labels span{padding:10px 4px;text-align:center;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.practice-note{position:absolute;top:0;height:54px;border:1px solid rgba(255,255,255,.22);border-radius:14px;display:grid;place-items:center;text-align:center;background:#f4f1ea;color:#090909;box-shadow:0 12px 30px rgba(0,0,0,.32);will-change:transform,opacity;z-index:4}.practice-note strong{font-size:13px}.practice-note small{font-size:10px;opacity:.72}.practice-note.hit{background:#d7ffd8;color:#0b2a12}.practice-note.missed{background:#3a1010;color:#ffd3d3;border-color:#7d2d2d;opacity:.5}.practice-mapper{border:1px solid var(--line);border-radius:18px;padding:14px;background:rgba(255,255,255,.025)}.mapper-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.mapper-head span{color:var(--muted);font-size:12px}.map-buttons,.map-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.map-chip.empty{color:var(--muted)}.practice-score{border:1px solid var(--line);border-radius:18px;padding:14px;background:rgba(255,255,255,.03)}.practice-result{min-height:20px}.practice-summary{border:1px solid var(--line);border-radius:18px;padding:14px;background:rgba(255,255,255,.04)}
@media(max-width:860px){.practice-head{grid-template-columns:1fr}.practice-actions .btn,.practice-toolbar .btn{flex:1}.practice-stage{height:340px}.practice-hitline{top:265px}.practice-note{height:48px}.practice-lane-labels span{font-size:10px;padding:8px 2px}}


/* v7.8 traditional notation + synced cursor */
.score-sync-panel{display:block;margin:16px 0 18px;background:rgba(255,255,255,.045)}
.score-head{margin-top:0}.score-sync-wrap{position:relative;overflow:auto;background:#f7f3ea;border-radius:16px;border:1px solid rgba(0,0,0,.16);max-height:520px;scroll-behavior:smooth}.score-sync-canvas{position:relative;min-width:920px;padding:10px}.score-sync-content{margin:0;min-height:180px;background:#fff;border:1px solid rgba(0,0,0,.10);border-radius:12px;padding:12px}.score-cursor-line{position:absolute;top:8px;bottom:8px;left:12px;width:3px;background:#e01919;box-shadow:0 0 0 1px rgba(255,255,255,.7),0 0 18px rgba(224,25,25,.42);z-index:20;pointer-events:none;transition:transform .06s linear}.score-cursor-line span{position:absolute;top:0;left:50%;transform:translate(-50%,-105%);width:12px;height:12px;border-radius:999px;background:#e01919;box-shadow:0 4px 14px rgba(0,0,0,.28)}.score-sync-note{color:var(--muted);font-size:13px;margin:8px 2px 0}.practice-score-fallback{margin-top:12px}.practice-panel{margin-top:12px}.practice-head{margin-bottom:8px}
@media(max-width:860px){.score-sync-wrap{max-height:430px}.score-sync-canvas{min-width:760px;padding:8px}.score-sync-content{padding:8px}.score-cursor-line{left:8px}}


/* v7.8.1 protected own MusicXML renderer */
.score-own{background:#fff;color:#121212;border-radius:12px;min-width:820px;padding:10px 12px}.score-own-title{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:0 0 8px;color:#111}.score-own-title span,.score-own-legend{color:#666;font-size:12px}.score-own-svg{display:block;background:#fff;border:1px solid rgba(0,0,0,.10);border-radius:10px}.own-staff-line{stroke:#1d1d1d;stroke-width:1}.own-bar{stroke:#111;stroke-width:1.4}.own-measure-num{font-size:11px;fill:#777;font-weight:700}.own-notehead{fill:#111;stroke:#111;stroke-width:1}.own-note-x,.own-stem{stroke:#111;stroke-width:2;stroke-linecap:round}.own-rest text{font-size:24px;fill:#111}.own-note-caption{font-size:10px;fill:#555;font-weight:700}.score-own-legend{display:flex;justify-content:space-between;gap:10px;margin-top:8px}.score-sync-content .score-own{min-height:180px}

/* v7.9 official MuseScore SVG rendering */
.score-svg-stack{display:grid;gap:18px;min-width:900px;background:#fff;color:#111;padding:14px;border-radius:14px}
.score-svg-page{background:#fff;border:1px solid #e2e2e2;border-radius:10px;overflow:hidden;box-shadow:0 4px 18px rgba(0,0,0,.08)}
.score-svg-page svg{display:block;width:100%;height:auto;background:#fff;color:#111}

.score-svg-stack,.score-img-stack{display:grid;gap:14px}.score-svg-page,.score-img-page,.score-pdf-page{background:#fff;border-radius:10px;overflow:hidden;border:1px solid rgba(0,0,0,.10)}.score-svg-page svg{display:block;width:100%;height:auto}.score-img-page img{display:block;width:100%;height:auto}.score-pdf-page iframe{display:block;width:100%;height:560px;border:0;background:#fff}

/* v7.11: MuseScore MPOS/SPOS mapped cursor */
.score-cursor-line.mapped{bottom:auto;min-height:46px;border-radius:999px;background:#e01919;box-shadow:0 0 0 1px rgba(255,255,255,.8),0 0 24px rgba(224,25,25,.55)}
.score-cursor-line.mapped:before{content:"";position:absolute;left:-18px;right:-18px;top:0;bottom:0;background:linear-gradient(90deg,rgba(224,25,25,.10),rgba(224,25,25,.02));pointer-events:none}


/* v7.12 score trainer controls */
.trainer-toolbar{align-items:center;gap:10px}.trainer-toolbar .practice-status{flex:1;min-width:220px}.tempo-control{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:6px 10px;background:rgba(255,255,255,.04);font-size:13px;color:var(--muted)}.tempo-control input{width:130px}.tempo-control strong{color:var(--white);min-width:44px}.trainer-position{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:10px 0 12px;color:var(--muted);font-size:13px}.trainer-position strong{color:var(--white)}.trainer-hint{font-size:12px;color:var(--muted)}.score-sync-wrap.can-seek{cursor:crosshair;scroll-behavior:auto!important}.score-cursor-line{display:block!important;left:0!important;z-index:999!important;opacity:1!important}.score-cursor-line.mapped{bottom:auto!important;min-height:46px}@media(max-width:860px){.tempo-control{width:100%;justify-content:space-between}.tempo-control input{flex:1}.trainer-toolbar .btn{flex:1}.trainer-toolbar .practice-status{width:100%;flex:auto}}

/* v7.13 score trainer loop + real-time score feedback */
.trainer-head{align-items:center;margin-bottom:12px}.trainer-title h3{margin:.25rem 0 0}.trainer-console{border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));padding:14px;display:grid;gap:12px;margin:12px 0}.trainer-main-controls,.trainer-readout,.trainer-loop-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.trainer-readout,.trainer-loop-controls{padding-top:2px}.trainer-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:7px 11px;background:rgba(255,255,255,.04);font-size:13px;color:var(--muted)}.trainer-chip strong{color:var(--white)}.loop-chip.on{border-color:#9de2b2;color:#d7ffd8;background:rgba(58,180,94,.12)}#app .btn.active{border-color:#9de2b2;color:#d7ffd8}.trainer-console .practice-status{border-top:1px solid var(--line);padding-top:10px;min-height:18px}.score-current-measure{position:absolute;display:none;border:2px solid rgba(255,204,72,.78);background:rgba(255,204,72,.14);border-radius:10px;z-index:18;pointer-events:none;box-shadow:0 0 20px rgba(255,204,72,.22)}.score-feedback-dot{position:absolute;z-index:1000;width:20px;height:20px;border-radius:999px;display:grid;place-items:center;font-size:12px;font-weight:900;border:1px solid rgba(0,0,0,.35);box-shadow:0 4px 14px rgba(0,0,0,.25);pointer-events:none}.score-feedback-dot.perfect,.score-feedback-dot.good{background:#d7ffd8;color:#07230f}.score-feedback-dot.ok{background:#fff7cb;color:#3a2b00}.score-feedback-dot.early,.score-feedback-dot.late{background:#ffe0aa;color:#3a2100}.score-feedback-dot.miss{background:#ffb3b3;color:#3a0808}.score-sync-wrap.can-seek{cursor:ew-resize;scroll-behavior:auto!important}.score-sync-wrap.can-seek.dragging{cursor:grabbing}.score-cursor-line{pointer-events:auto!important;cursor:ew-resize}.score-cursor-line:after{content:"";position:absolute;left:-12px;right:-12px;top:0;bottom:0}.practice-head p{display:none}
@media(max-width:860px){.trainer-main-controls .btn{flex:1}.trainer-console{padding:12px}.trainer-chip{flex:1;justify-content:center}.trainer-loop-controls .btn{flex:1}}


/* v7.14 trainer polish: visible loop controls, full-measure highlight, quieter feedback */
.score-head-pro{display:grid!important;grid-template-columns:1fr auto;gap:12px;align-items:center}
.score-head-title{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}
.score-head-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.trainer-chip.mini{font-size:12px;padding:6px 9px}
.score-current-measure{position:absolute;border:2px solid rgba(255,183,26,.82);background:rgba(255,183,26,.10);border-radius:10px;box-shadow:0 0 0 9999px rgba(255,183,26,.015) inset,0 0 18px rgba(255,183,26,.20);z-index:8;pointer-events:none;display:none}
.score-cursor-line{z-index:30!important}
.score-feedback-dot{position:absolute;width:17px;height:17px;border-radius:999px;display:grid;place-items:center;font-size:11px;font-weight:900;line-height:1;z-index:40;pointer-events:none;box-shadow:0 4px 12px rgba(0,0,0,.20);opacity:.88;transform:translate(-50%,-50%)}
.score-feedback-dot.miss{background:rgba(255,95,95,.78);color:#111;border:1px solid rgba(120,0,0,.35)}
.score-feedback-dot.early,.score-feedback-dot.late{background:rgba(255,206,112,.86);color:#111;border:1px solid rgba(120,80,0,.35)}
.score-feedback-dot.good,.score-feedback-dot.ok{background:rgba(147,225,166,.86);color:#102414;border:1px solid rgba(0,90,30,.28)}
.score-feedback-dot.perfect{background:rgba(120,245,158,.95);color:#06230f;border:1px solid rgba(0,105,30,.32)}
.score-feedback-dot.stray{background:rgba(255,60,60,.92);color:#fff;border:1px solid rgba(90,0,0,.55);width:19px;height:19px;font-size:12px}
.loop-chip.on{border-color:rgba(255,210,100,.75)!important;background:rgba(255,210,100,.12)!important;color:#ffe3a2!important}
.practice-status.bad{color:#ff9a9a!important}
@media(max-width:860px){.score-head-pro{grid-template-columns:1fr}.score-head-tools{justify-content:flex-start}.score-head-tools .btn{padding:7px 9px}}


/* v7.15 active four-measure focus mode */
.score-sync-wrap.score-focus-mode{max-height:430px;scroll-behavior:auto!important;overflow:auto;background:#f4f1ea}
.score-focus-window{position:absolute;display:none;border:2px solid rgba(80,180,255,.58);background:rgba(80,180,255,.055);border-radius:14px;z-index:7;pointer-events:none;box-shadow:0 0 22px rgba(80,180,255,.18)}
.score-focus-mode .score-current-measure{border-color:rgba(255,185,28,.95);background:rgba(255,185,28,.16);z-index:9}
.score-focus-mode .score-cursor-line{z-index:42!important}
.score-head-tools #scoreFocusLabel,.score-head-tools .active{border-color:rgba(120,220,255,.65)!important;color:#dff7ff!important;background:rgba(80,180,255,.10)!important}
.score-sync-note{line-height:1.45}
@media(min-width:900px){.score-focus-mode .score-svg-stack{min-width:1250px}.score-focus-mode .score-img-stack{min-width:1250px}}


/* v7.16 two-measure trainer focus + DAW transport polish */
.daw-transport{gap:10px!important}
.transport-btn{width:56px;min-width:56px;height:48px;display:inline-grid;place-items:center;font-size:20px;line-height:1;padding:0!important}
.transport-btn.active{box-shadow:0 0 0 1px rgba(255,255,255,.35) inset}
.daw-tempo{height:48px;padding:0 16px!important;min-width:260px}
.daw-tempo input{width:160px!important}
.score-sync-wrap.score-focus-mode{max-height:360px!important;overflow:auto;background:#f4f1ea;scroll-behavior:auto!important}
.score-focus-window,.score-current-measure{display:none!important}
.score-sync-panel{overflow:hidden}
.score-sync-wrap{overscroll-behavior:contain}
.score-feedback-dot{width:13px!important;height:13px!important;font-size:9px!important;opacity:.72!important;box-shadow:0 2px 7px rgba(0,0,0,.18)!important}
.score-feedback-dot.miss{background:rgba(255,88,88,.54)!important;color:#2b0000!important}
.score-feedback-dot.stray{width:15px!important;height:15px!important;font-size:10px!important;background:rgba(255,50,50,.78)!important}
.score-sync-note{font-size:12px!important;color:#999!important}
.trainer-console{position:sticky;top:0;z-index:50}
@media(max-width:860px){.transport-btn{flex:0 0 54px}.daw-tempo{min-width:100%;}.daw-tempo input{flex:1;width:auto!important}}


/* v7.17 trainer stabilization: row focus, cleaner DAW panel, no broken score dots */
.trainer-console-v717{position:sticky;top:0;z-index:60;border-radius:18px;padding:12px 14px;background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.03));box-shadow:0 16px 45px rgba(0,0,0,.20)}
.trainer-daw-bar,.trainer-loop-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.trainer-daw-bar{padding-bottom:8px;border-bottom:1px solid var(--line)}
.trainer-loop-row{padding-top:8px}
.transport-btn{width:64px!important;min-width:64px!important;height:54px!important;border-radius:8px!important;display:grid!important;grid-template-rows:1fr auto;gap:1px;place-items:center;padding:4px!important;font-size:20px!important}
.transport-btn span{line-height:1;font-size:20px}.transport-btn small{font-size:9px;line-height:1;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:900}.transport-btn.active small{color:#d7ffd8}
.daw-tempo{height:44px!important;min-width:280px!important;border-radius:999px!important}.daw-tempo span{color:var(--muted);font-size:12px}.daw-tempo strong{font-size:13px}
.now-chip{border-color:rgba(120,220,255,.42)!important;background:rgba(80,180,255,.08)!important}
.score-row-focus{max-height:520px!important;overflow:auto!important;scroll-behavior:auto!important;background:#f4f1ea!important;overscroll-behavior:contain!important}
.score-row-focus .score-svg-stack{min-width:1180px!important;padding:12px!important}
.score-row-focus .score-sync-content{padding:8px!important}
.score-current-measure,.score-focus-window{display:none!important}
.score-feedback-dot{display:none!important}
.score-cursor-line.mapped{width:4px!important;border-radius:999px;background:#e01919!important;box-shadow:0 0 0 1px rgba(255,255,255,.9),0 0 18px rgba(224,25,25,.50)!important}
.score-cursor-line.mapped:before{left:-9px!important;right:-9px!important;background:linear-gradient(90deg,rgba(224,25,25,.10),rgba(224,25,25,.015))!important}
.score-sync-note{font-size:12px!important;color:#9b9b9b!important;margin-top:8px!important}.score-head-tools .btn{padding:7px 10px!important}.trainer-console .practice-status{font-size:13px!important}
.practice-stage-wrap{margin-top:10px}.practice-stats{margin-top:10px}
@media(max-width:860px){.transport-btn{width:58px!important;min-width:58px!important}.daw-tempo{min-width:100%!important}.trainer-daw-bar .trainer-chip{flex:1}.score-row-focus{max-height:430px!important}}

/* v7.18 trainer notation engine: own two-measure drum notation */
.trainer-notation-panel{border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.025));padding:14px;margin:14px 0 16px;overflow:hidden}
.trainer-notation-loading{color:var(--muted);padding:18px}.trainer-notation-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:0 0 10px}.trainer-notation-head strong{font-size:15px}.trainer-notation-head span{color:var(--muted);font-size:13px}.trainer-notation-scroll{overflow-x:auto;background:#f6f1e7;border:1px solid rgba(0,0,0,.16);border-radius:16px;padding:10px}.trainer-notation-svg{display:block;min-width:900px;background:#fff;border-radius:12px;border:1px solid rgba(0,0,0,.10);box-shadow:0 8px 30px rgba(0,0,0,.10)}.trainer-notation-note{color:var(--muted);font-size:12px;margin-top:9px}.tn-staff{stroke:#161616;stroke-width:1}.tn-bar{stroke:#090909;stroke-width:1.8}.tn-measure-hitbox{fill:rgba(255,255,255,.001)}.tn-beat-grid{stroke:rgba(0,0,0,.12);stroke-width:1}.tn-beat-grid.major{stroke:rgba(0,0,0,.32)}.tn-measure-num{font-size:12px;fill:#333;font-weight:800}.tn-lane-label{font-size:10px;fill:#777;font-weight:900;letter-spacing:.08em}.tn-beat-label,.tn-sub-label{font-size:11px;fill:#777;font-weight:700}.tn-sub-label{fill:#aaa}.trainer-note line,.trainer-note .tn-stem{stroke:#111;stroke-width:2;stroke-linecap:round}.trainer-note ellipse{fill:#111;stroke:#111;stroke-width:1}.trainer-note.ghost ellipse{fill:#fff;stroke:#111;stroke-width:1.4}.trainer-note.accent ellipse{stroke-width:2.4}.tn-paren{font-size:24px;fill:#111;font-weight:700}.tn-accent{font-size:24px;fill:#111;font-weight:900;transform:rotate(90deg);transform-box:fill-box;transform-origin:center}.tn-dyn{font-size:10px;fill:#666;font-style:italic}.tn-note-label{font-size:9px;fill:#555;font-weight:800}.tn-cursor{stroke:#e01919;stroke-width:4;stroke-linecap:round;filter:drop-shadow(0 0 10px rgba(224,25,25,.45));pointer-events:none}.tn-active-measure{fill:rgba(255,191,48,.13);stroke:rgba(255,160,0,.82);stroke-width:2;rx:12;pointer-events:none}.trainer-note.hit ellipse,.trainer-note.hit line{stroke:#0a7c2f!important;fill:#d7ffd8}.trainer-note.perfect ellipse,.trainer-note.good ellipse{fill:#d7ffd8;stroke:#0a7c2f}.trainer-note.early ellipse,.trainer-note.late ellipse,.trainer-note.ok ellipse{fill:#ffe8ad;stroke:#9a6100}.trainer-note.miss ellipse,.trainer-note.miss line{fill:#ffc1c1;stroke:#9b1111!important}.tn-stray-flash circle{fill:#ff4a4a;stroke:#8c0000;stroke-width:2;opacity:.9}.tn-stray-flash text{fill:#fff;font-size:16px;font-weight:900}.original-score-details{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.025);padding:10px 12px;margin:14px 0}.original-score-details summary{cursor:pointer;color:var(--muted);font-weight:800}.original-score-details[open] summary{margin-bottom:12px;color:var(--white)}.trainer-console-v718{position:sticky;top:8px;z-index:50;background:rgba(14,14,14,.94);backdrop-filter:blur(16px)}
@media(max-width:860px){.trainer-notation-svg{min-width:760px}.trainer-notation-panel{padding:10px}.trainer-notation-head{display:grid;gap:4px}.trainer-console-v718{position:static}}

/* v7.19 trainer notation precision polish */
.trainer-notation-panel{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.025))}
.trainer-notation-scroll{overflow-x:hidden;background:#f4efe4;padding:12px}
.trainer-notation-svg{width:100%;min-width:0!important;height:auto;background:#fffaf1}
.tn-measure-bg{fill:#fffaf1}.tn-staff{stroke:#171717;stroke-width:1.15}.tn-bar{stroke:#050505;stroke-width:2}.tn-beat-grid{stroke:rgba(0,0,0,.13);stroke-width:1}.tn-beat-grid.major{stroke:rgba(0,0,0,.34)}
.tn-lane-label{font-size:10px;fill:#555;font-weight:900;letter-spacing:.1em}.tn-measure-num{font-size:12px;fill:#222;font-weight:900}.tn-beat-label,.tn-sub-label{font-size:11px;fill:#6b6b6b;font-weight:800}.tn-sub-label{fill:#aaa}
.trainer-note .tn-stem,.trainer-note .tn-x{stroke:#111;stroke-width:2.1;stroke-linecap:round}.trainer-note ellipse{fill:#111;stroke:#111;stroke-width:1.2}.trainer-note.ghost ellipse{fill:#fff6f6;stroke:#111;stroke-width:1.4}.trainer-note.accent ellipse,.trainer-note.accent .tn-x{stroke-width:3}.trainer-note.grace{opacity:.78;transform-box:fill-box;transform-origin:center;transform:scale(.82)}
.tn-paren{font-size:24px;fill:#111;font-weight:800}.tn-accent{font-size:25px;fill:#111;font-weight:900;transform:rotate(90deg);transform-box:fill-box;transform-origin:center}.tn-hihat-art{font-size:17px;fill:#111;font-weight:900}.tn-stick{font-size:12px;fill:#111;font-weight:900}.tn-dyn{font-size:10px;fill:#555;font-style:italic;font-weight:700}.tn-note-label{font-size:9px;fill:#565656;font-weight:900}
.tn-cursor{stroke:#e01919;stroke-width:4;stroke-linecap:round;filter:drop-shadow(0 0 10px rgba(224,25,25,.48));pointer-events:none}.tn-active-measure{fill:rgba(255,191,48,.11);stroke:rgba(255,160,0,.8);stroke-width:2;rx:10;pointer-events:none}
.trainer-note.hit ellipse,.trainer-note.hit .tn-x{stroke:#0a7c2f!important}.trainer-note.perfect ellipse,.trainer-note.good ellipse{fill:#d7ffd8;stroke:#0a7c2f}.trainer-note.perfect .tn-x,.trainer-note.good .tn-x{stroke:#0a7c2f!important}.trainer-note.early ellipse,.trainer-note.late ellipse,.trainer-note.ok ellipse{fill:#ffe8ad;stroke:#9a6100}.trainer-note.early .tn-x,.trainer-note.late .tn-x,.trainer-note.ok .tn-x{stroke:#9a6100!important}.trainer-note.miss ellipse,.trainer-note.miss .tn-x{fill:#ffc1c1;stroke:#9b1111!important}.tn-feedback{font-size:12px;font-weight:900;paint-order:stroke;stroke:#fff;stroke-width:3}.tn-feedback.perfect,.tn-feedback.good{fill:#0a7c2f}.tn-feedback.early,.tn-feedback.late,.tn-feedback.ok{fill:#9a6100}.tn-feedback.miss{fill:#9b1111}.tn-stray-flash circle{fill:#ff4a4a;stroke:#8c0000;stroke-width:2;opacity:.88}.tn-stray-flash text{fill:#fff;font-size:16px;font-weight:900}
@media(max-width:860px){.trainer-notation-scroll{overflow-x:auto}.trainer-notation-svg{min-width:760px!important}}

/* v7.20 trainer staff calibration */
.trainer-notation-scroll{overflow:hidden!important}
.trainer-notation-svg{width:100%!important;max-width:100%;min-width:0!important;background:#fffaf1!important}
.tn-measure-bg{fill:rgba(255,246,214,.45)}
.trainer-note .tn-stem{stroke-width:2.1}
.trainer-note.trainer-lane-kick .tn-stem{stroke-width:2.3}
.tn-active-measure{fill:rgba(255,191,48,.09)!important;stroke:rgba(255,160,0,.75)!important}
.tn-cursor{stroke-width:4.5!important}

/* v7.21.1 safe rhythm notation additions */
.tn-flag,.tn-beam{stroke:#111;stroke-width:4;stroke-linecap:butt;fill:none}
.tn-beam{stroke-width:5}
.tn-dot{fill:#111;stroke:none}
.tn-rest{font-size:28px;fill:#111;font-weight:900}
.trainer-rest{pointer-events:none}
.tn-tie{stroke:#111;stroke-width:1.4;fill:none;opacity:.8}
.trainer-note[data-event-index=""]{pointer-events:none}

/* v7.22 drum notation beam/staff polish */
.tn-beam{stroke-width:6!important;stroke-linecap:butt!important}
.tn-beam.secondary{stroke-width:4.5!important}
.trainer-note .tn-stem{stroke-linecap:butt!important}
.tn-note-label{font-size:8px!important;opacity:.75}
.tn-dyn{font-size:10px!important}
.trainer-notation-note{opacity:.85}


/* v7.24 trainer map debug + percussion staff calibration */
.trainer-debug-panel{margin-top:10px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.035);color:var(--white);padding:10px}
.trainer-debug-panel summary{cursor:pointer;font-weight:900;display:flex;gap:10px;align-items:center;justify-content:space-between}
.trainer-debug-panel summary span{font-weight:600;color:var(--muted);font-size:12px}
.trainer-debug-panel p{color:var(--muted);font-size:12px;margin:8px 0 0}
.trainer-debug-warning{margin-top:8px;padding:8px 10px;border:1px solid rgba(255,180,0,.35);border-radius:10px;background:rgba(255,180,0,.10);color:#ffd27a;font-size:12px;font-weight:700}
.trainer-debug-scroll{max-height:260px;overflow:auto;margin-top:10px;border:1px solid var(--line);border-radius:10px;background:#090909}
.trainer-debug-scroll table{width:100%;border-collapse:collapse;font-size:11px;white-space:nowrap}
.trainer-debug-scroll th,.trainer-debug-scroll td{padding:6px 8px;border-bottom:1px solid rgba(255,255,255,.08);text-align:left}
.trainer-debug-scroll th{position:sticky;top:0;background:#171717;z-index:1}
.trainer-note.ghost ellipse{fill:none;stroke-width:2.5}


/* v7.26 trainer notation readability pass */
.trainer-notation-scroll{background:#efe6d5!important;border-color:rgba(0,0,0,.18)!important;border-radius:18px!important;padding:16px!important;overflow:hidden!important}
.trainer-notation-svg{background:#fff9ed!important;border-radius:14px!important;box-shadow:0 12px 34px rgba(0,0,0,.14)!important}
.tn-page-bg{fill:#fff9ed}
.tn-measure-bg{fill:rgba(255,245,215,.55)!important}
.tn-staff{stroke:#1b1a17!important;stroke-width:1.25!important;shape-rendering:crispEdges}
.tn-bar{stroke:#111!important;stroke-width:2.4!important;shape-rendering:crispEdges}
.tn-beat-grid{stroke:rgba(0,0,0,.115)!important;stroke-width:1!important;shape-rendering:crispEdges}
.tn-beat-grid.major{stroke:rgba(0,0,0,.28)!important}
.tn-measure-num{font-size:13px!important;fill:#141414!important;font-weight:900!important;paint-order:stroke;stroke:#fff9ed;stroke-width:3px;stroke-linejoin:round}
.tn-lane-label{font-size:11px!important;fill:#555!important;font-weight:900!important;letter-spacing:.08em!important;text-anchor:end}
.tn-beat-label,.tn-sub-label{font-size:12px!important;font-weight:900!important;fill:#646464!important}.tn-sub-label{fill:#9b9b9b!important}
.trainer-note ellipse{fill:#111!important;stroke:#111!important;stroke-width:1.15!important}.trainer-note.ghost ellipse{fill:#fff9ed!important;stroke:#111!important;stroke-width:2!important}
.trainer-note .tn-x{stroke:#111!important;stroke-width:2.55!important;stroke-linecap:round!important}
.trainer-note .tn-stem{stroke:#111!important;stroke-width:2.25!important;stroke-linecap:butt!important}
.trainer-note.trainer-lane-kick .tn-stem{stroke-width:2.45!important}
.tn-flag{stroke:#111!important;stroke-width:3.1!important;stroke-linecap:round!important;fill:none!important}.tn-flag.secondary{stroke-width:2.7!important}
.tn-beam{stroke:#111!important;stroke-width:6.4!important;stroke-linecap:butt!important}.tn-beam.secondary{stroke-width:4.6!important}
.tn-dot{fill:#111!important;stroke:none!important}.tn-paren{font-size:25px!important;fill:#111!important;font-weight:800!important}.tn-accent{font-size:24px!important;fill:#111!important;font-weight:900!important;transform:rotate(90deg);transform-box:fill-box;transform-origin:center}
.tn-hihat-art{font-size:17px!important;fill:#111!important;font-weight:900!important}.tn-stick{font-size:12px!important;fill:#111!important;font-weight:900!important;paint-order:stroke;stroke:#fff9ed;stroke-width:3px;stroke-linejoin:round}.tn-dyn{font-size:12px!important;fill:#3f3f3f!important;font-style:italic!important;font-weight:800!important;paint-order:stroke;stroke:#fff9ed;stroke-width:3px;stroke-linejoin:round}.tn-note-label{font-size:9px!important;fill:#6c6c6c!important;font-weight:900!important;opacity:.75!important}
.tn-rest-block,.tn-rest-dot{fill:#111!important}.tn-rest-path{stroke:#111!important;stroke-width:4!important;stroke-linecap:round!important;stroke-linejoin:round!important;fill:none!important}.trainer-rest{opacity:.96;pointer-events:none}
.tn-tie{stroke:#111!important;stroke-width:1.6!important;fill:none!important;opacity:.75!important}.tn-active-measure{fill:rgba(255,186,40,.10)!important;stroke:rgba(255,157,0,.82)!important;stroke-width:2.1!important;rx:12!important}.tn-cursor{stroke:#df1f1f!important;stroke-width:4.6!important;stroke-linecap:round!important;filter:drop-shadow(0 0 9px rgba(223,31,31,.42))!important}
.trainer-note.hit ellipse,.trainer-note.hit .tn-x{stroke:#0a7c2f!important}.trainer-note.hit ellipse{fill:#d7ffd8!important}.trainer-note.perfect ellipse,.trainer-note.good ellipse{fill:#d7ffd8!important;stroke:#0a7c2f!important}.trainer-note.perfect .tn-x,.trainer-note.good .tn-x{stroke:#0a7c2f!important}.trainer-note.early ellipse,.trainer-note.late ellipse,.trainer-note.ok ellipse{fill:#ffe8ad!important;stroke:#9a6100!important}.trainer-note.early .tn-x,.trainer-note.late .tn-x,.trainer-note.ok .tn-x{stroke:#9a6100!important}.trainer-note.miss ellipse{fill:#ffc1c1!important;stroke:#9b1111!important}.trainer-note.miss .tn-x{stroke:#9b1111!important}
@media(max-width:860px){.trainer-notation-scroll{overflow-x:auto!important;padding:12px!important}.trainer-notation-svg{min-width:880px!important}}

/* v7.27 dense notation cleanup: lighter beams, one-stem chords, less intrusive feedback */
.tn-beam{stroke-width:4.2px!important;stroke-linecap:butt!important;opacity:.88!important}
.tn-beam.secondary{stroke-width:3px!important;opacity:.82!important}
.trainer-note .tn-stem{stroke-width:1.85px!important;stroke-linecap:butt!important;opacity:.96!important}
.trainer-note.trainer-lane-kick .tn-stem{stroke-width:2.05px!important}
.tn-flag{stroke-width:2.45px!important;opacity:.9!important}.tn-flag.secondary{stroke-width:2.1px!important}
.tn-tie{stroke-width:1.35px!important;opacity:.48!important}
.tn-feedback{font-size:10px!important;font-weight:900!important;paint-order:stroke!important;stroke:#fff9ed!important;stroke-width:3px!important;pointer-events:none!important}
.trainer-note.hit ellipse,.trainer-note.hit .tn-x{opacity:.95!important}
.trainer-note.miss ellipse{fill:#ffd4d4!important;stroke:#a01919!important}.trainer-note.miss .tn-x{stroke:#a01919!important}
.tn-stray-flash{opacity:.72!important}.tn-stray-flash circle{r:11px!important}

/* v7.29 traditional beam tuning: keep real beamed notation, reduce ink and collisions */
.trainer-notation-scroll{overflow-x:auto!important;overflow-y:hidden!important;background:#efe6d5!important;border-color:rgba(0,0,0,.18)!important;border-radius:18px!important;padding:16px!important}
.trainer-notation-svg{background:#fff9ed!important;border-radius:14px!important;box-shadow:0 12px 34px rgba(0,0,0,.14)!important;max-width:none!important}
.tn-staff{stroke:#171717!important;stroke-width:1.15!important;shape-rendering:crispEdges}
.tn-bar{stroke:#111!important;stroke-width:2.05!important;shape-rendering:crispEdges}
.tn-beat-grid{stroke:rgba(0,0,0,.10)!important;stroke-width:.9!important;shape-rendering:crispEdges}
.tn-beat-grid.major{stroke:rgba(0,0,0,.24)!important}
.trainer-note ellipse{fill:#111!important;stroke:#111!important;stroke-width:1.05!important}.trainer-note.ghost ellipse{fill:#fff9ed!important;stroke:#111!important;stroke-width:1.75!important}
.trainer-note .tn-x{stroke:#111!important;stroke-width:2.15!important;stroke-linecap:round!important}
.trainer-note .tn-stem{stroke:#111!important;stroke-width:1.65px!important;stroke-linecap:butt!important;opacity:.95!important}
.trainer-note.trainer-lane-kick .tn-stem{stroke-width:1.8px!important}
.tn-flag{stroke:#111!important;stroke-width:2.25px!important;stroke-linecap:round!important;fill:none!important;opacity:.82!important}.tn-flag.secondary{stroke-width:1.95px!important}
.tn-beam{stroke:#111!important;stroke-width:3.7px!important;stroke-linecap:butt!important;opacity:.78!important;fill:none!important}
.tn-beam.secondary{stroke-width:2.55px!important;opacity:.72!important}.tn-beam.hook{opacity:.68!important}
.tn-dot{fill:#111!important;stroke:none!important}.tn-paren{font-size:23px!important;fill:#111!important;font-weight:800!important}
.tn-accent{font-size:22px!important;fill:#111!important;font-weight:900!important;transform:rotate(90deg);transform-box:fill-box;transform-origin:center;paint-order:stroke;stroke:#fff9ed;stroke-width:2px;stroke-linejoin:round}
.tn-hihat-art{font-size:15px!important;fill:#111!important;font-weight:900!important;paint-order:stroke;stroke:#fff9ed;stroke-width:2px;stroke-linejoin:round}
.tn-stick{font-size:11px!important;fill:#111!important;font-weight:900!important;paint-order:stroke;stroke:#fff9ed;stroke-width:3px;stroke-linejoin:round}.tn-dyn{font-size:12px!important;fill:#3f3f3f!important;font-style:italic!important;font-weight:800!important;paint-order:stroke;stroke:#fff9ed;stroke-width:3px;stroke-linejoin:round}
.tn-rest-block,.tn-rest-dot{fill:#111!important}.tn-rest-path{stroke:#111!important;stroke-width:3.5px!important;stroke-linecap:round!important;stroke-linejoin:round!important;fill:none!important}.trainer-rest{opacity:.94;pointer-events:none}
.tn-tie{stroke:#111!important;stroke-width:1.25px!important;fill:none!important;opacity:.40!important}.tn-active-measure{fill:rgba(255,186,40,.08)!important;stroke:rgba(255,157,0,.78)!important;stroke-width:2px!important;rx:12!important}.tn-cursor{stroke:#df1f1f!important;stroke-width:4.4px!important;stroke-linecap:round!important;filter:drop-shadow(0 0 8px rgba(223,31,31,.40))!important}
@media(max-width:860px){.trainer-notation-svg{min-width:980px!important}.trainer-notation-scroll{padding:12px!important}}

/* v7.34 admin recorder preview + persistence */
.admin-recorder{margin-top:14px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025);padding:10px 12px}
.admin-recorder summary{cursor:pointer;font-weight:900;color:var(--white);display:flex;align-items:center;gap:8px}
.admin-recorder[open] summary{margin-bottom:10px}
.rec-grid{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;margin-top:12px}
.rec-grid .label{display:grid;gap:6px;color:var(--muted);font-size:12px}
.rec-preview{max-height:210px;overflow:auto;border:1px solid var(--line);border-radius:14px;background:rgba(0,0,0,.16);padding:10px;margin-top:10px}
.rec-preview table{width:100%;border-collapse:collapse;font-size:12px}
.rec-preview th,.rec-preview td{border-bottom:1px solid rgba(255,255,255,.08);padding:5px 6px;text-align:left}
.tn-shared-stem{stroke:#111!important;stroke-width:1.9px!important;stroke-linecap:butt!important;opacity:.98!important;fill:none!important}
.tn-shared-stem.joined-kick{stroke-width:2.05px!important}
@media(max-width:860px){.rec-grid{grid-template-columns:1fr 1fr}}

/* v7.34 admin recorder preview */
.admin-recorder .badge.good{background:rgba(34,197,94,.16);border-color:rgba(34,197,94,.45);color:#bbf7d0}
.admin-recorder .badge.warn{background:rgba(245,158,11,.16);border-color:rgba(245,158,11,.45);color:#fde68a}
.rec-notation-preview{max-height:none;overflow:visible;background:rgba(0,0,0,.10)}
.rec-preview-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px;color:var(--white)}
.rec-preview-head span{color:var(--muted);font-size:12px}
.rec-trainer-notation .trainer-notation-panel,.rec-trainer-notation{margin:0}
.rec-trainer-notation .trainer-notation-scroll{max-height:340px;overflow-x:auto!important;overflow-y:hidden!important;padding:10px!important}
.rec-trainer-notation .trainer-notation-svg{min-width:900px!important;width:900px!important;max-width:none!important}
.rec-trainer-notation .trainer-notation-head{margin-top:0}
.rec-event-details{margin-top:10px;border-top:1px solid rgba(255,255,255,.08);padding-top:8px;color:var(--muted)}
.rec-event-details summary{cursor:pointer;font-weight:800;color:var(--muted)}
/* v7.35 recorder rhythm + sound controls */
.rec-check{margin:10px 0 4px!important;background:rgba(255,255,255,.03)!important;border-color:rgba(255,255,255,.08)!important}
.rec-sound-panel{border:1px solid var(--line);border-radius:14px;background:rgba(0,0,0,.16);padding:9px 10px;margin:10px 0;color:var(--muted)}
.rec-sound-panel summary{cursor:pointer;font-weight:900;color:var(--white)}
.admin-rec-mapper{margin-top:10px;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:10px;background:rgba(255,255,255,.025)}
.rec-sample-grid{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:10px;margin-top:10px}
.rec-sample-grid .label{display:grid;gap:6px;color:var(--muted);font-size:12px}
.rec-sample-grid input[type=file]{font-size:11px;color:var(--muted)}
.trainer-rest[data-source="trainer-recording-rest"],.trainer-rest{opacity:.82}
@media(max-width:860px){.rec-sample-grid{grid-template-columns:1fr 1fr}}

/* v7.36 student click + sound bank controls */
.practice-sound-panel{border:1px solid rgba(255,255,255,.10);border-radius:14px;background:rgba(0,0,0,.14);padding:9px 10px;margin:10px 0;color:var(--muted)}
.practice-sound-panel summary{cursor:pointer;font-weight:900;color:var(--white);display:flex;align-items:center;gap:8px;justify-content:space-between}
.sound-toggle-grid{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:8px;margin:10px 0}
.sound-toggle-grid .check-item{margin:0!important;background:rgba(255,255,255,.035)!important;border-color:rgba(255,255,255,.08)!important}
.sound-volume{display:grid;gap:6px;margin:8px 0 10px;color:var(--muted);font-size:12px}
.student-sample-grid{grid-template-columns:repeat(3,minmax(150px,1fr))}
.sample-cell{border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.025);padding:9px;display:grid;gap:7px;color:var(--muted);font-size:12px}
.sample-cell strong{color:var(--white)}
.sample-cell input[type=file]{font-size:11px;color:var(--muted);max-width:100%}
@media(max-width:860px){.sound-toggle-grid,.student-sample-grid{grid-template-columns:1fr}}

/* v7.37 module auto-sampling + student count-in */
.module-audio-box{border:1px solid var(--line);border-radius:14px;padding:10px;margin:10px 0;background:rgba(255,255,255,.035);display:grid;gap:8px}
.module-audio-box .label{margin:0}.module-audio-box .select{width:100%}.compact-rec-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:end}.sample-cell .row{margin-top:6px;flex-wrap:wrap}.sample-cell input[type=file]{max-width:100%}

/* v7.38 clean trainer UI: view tabs + course settings */
.trainer-view-tabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 12px;padding:10px;border:1px solid rgba(148,163,184,.28);border-radius:16px;background:rgba(15,23,42,.04)}
.view-tab{border:1px solid rgba(148,163,184,.42);background:#fff;color:var(--text);border-radius:999px;padding:8px 14px;font-weight:800;cursor:pointer}
.view-tab.active{background:var(--brand,#111827);color:#fff;border-color:var(--brand,#111827)}
.view-tab.settings{margin-left:auto;background:rgba(255,255,255,.72)}
.practice-settings-panel{margin:12px 0;padding:14px;border:1px solid rgba(148,163,184,.34);border-radius:18px;background:rgba(248,250,252,.94);box-shadow:0 10px 30px rgba(15,23,42,.08)}
.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.settings-card{border:1px solid rgba(148,163,184,.30);border-radius:16px;background:#fff;padding:14px}
.settings-card h4{margin:0 0 10px;font-size:1rem}
.practice-lab[data-view="notation"] .practice-panel{display:none}
.practice-lab[data-view="hero"] .trainer-notation-panel{display:none}
.practice-lab[data-view="hero"] .practice-panel{display:block}
.practice-mapper{margin-top:10px}
@media (max-width:860px){.settings-grid{grid-template-columns:1fr}.view-tab.settings{margin-left:0}.trainer-view-tabs{align-items:stretch}.trainer-view-tabs .trainer-chip{width:100%;text-align:center}}

/* v7.39 clean course UI + arcade dynamics */
.slim-trainer-head{margin-bottom:6px!important}.slim-trainer-head .trainer-title h3{font-size:1.05rem;margin:0}.slim-trainer-head .badge{opacity:.75}
.trainer-console-v739{position:sticky;top:8px;z-index:60;border-radius:18px;padding:10px 12px;background:rgba(13,15,20,.94);backdrop-filter:blur(18px);box-shadow:0 14px 38px rgba(0,0,0,.24);display:grid;gap:8px}
.trainer-topbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.trainer-view-switch{display:inline-flex;gap:4px;padding:4px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10)}
.view-tab{border:0;background:transparent;color:rgba(255,255,255,.68);border-radius:999px;padding:8px 14px;font-weight:900;cursor:pointer;letter-spacing:.01em}.view-tab.active{background:linear-gradient(135deg,#f4efe5,#c9b98f);color:#151515;box-shadow:0 8px 24px rgba(0,0,0,.22)}
.settings-gear{margin-left:auto;width:38px;height:38px;border-radius:999px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.06);color:#fff;font-size:18px;cursor:pointer}.settings-gear:hover{background:rgba(255,255,255,.12)}
.course-chip{max-width:360px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.view-choice-hint{font-size:12px;color:#dbcfae;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.needs-view-choice{box-shadow:inset 0 0 0 1px rgba(219,207,174,.16);border-radius:16px;padding:4px}
.trainer-mini-transport{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.trainer-mini-transport .primary{background:#f4efe5;color:#121212;border-color:#f4efe5}.compact-tempo{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px}.compact-tempo input{width:132px}.minimal-status{font-size:12px!important;border-top:1px solid rgba(255,255,255,.08)!important;padding-top:7px!important;min-height:16px!important}.debug-map-btn{opacity:.55}.debug-map-btn:hover{opacity:1}
.practice-settings-panel{position:fixed;right:18px;top:18px;bottom:18px;width:min(760px,calc(100vw - 36px));overflow:auto;z-index:500;border:1px solid rgba(255,255,255,.14);border-radius:22px;background:rgba(17,19,24,.98);box-shadow:0 30px 90px rgba(0,0,0,.55);padding:18px;color:#f6f1e7}.practice-settings-panel[hidden]{display:none!important}
.settings-drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px}.settings-drawer-head strong{font-size:1.1rem}.settings-drawer-head span{display:block;color:var(--muted);font-size:12px;margin-top:3px}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.settings-card{border:1px solid rgba(255,255,255,.10);border-radius:18px;background:rgba(255,255,255,.045);padding:14px;color:#f6f1e7}.settings-card h4{margin:0 0 10px;color:#fff}.settings-card .input,.settings-card .select{background:rgba(0,0,0,.24);color:#fff;border-color:rgba(255,255,255,.14)}.settings-card .check-item{background:rgba(255,255,255,.04)!important;border-color:rgba(255,255,255,.10)!important}.settings-open:before{content:"";position:fixed;inset:0;background:rgba(0,0,0,.42);z-index:490;backdrop-filter:blur(3px)}
.practice-lab[data-view="notation"] .practice-panel{display:none!important}.practice-lab[data-view="hero"] .trainer-notation-panel{display:none!important}.practice-lab[data-view="hero"] .practice-panel{display:grid!important}.practice-lab[data-view="hero"] .practice-stage-wrap{border-color:rgba(219,207,174,.25);background:radial-gradient(circle at 50% 10%,rgba(219,207,174,.16),rgba(0,0,0,.08) 44%,rgba(0,0,0,.22)),linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015))}.practice-lab[data-view="hero"] .practice-stage{background:linear-gradient(90deg,rgba(255,255,255,.035),transparent 8%,transparent 92%,rgba(255,255,255,.035)),repeating-linear-gradient(90deg,rgba(219,207,174,.11) 0,rgba(219,207,174,.11) 1px,transparent 1px,transparent calc(100% / 7))}.practice-lab[data-view="hero"] .practice-hitline{height:4px;background:#f4efe5;box-shadow:0 0 28px rgba(244,239,229,.55)}
.practice-note{overflow:hidden;isolation:isolate}.practice-note .note-velocity{position:absolute;left:0;right:0;bottom:0;z-index:-1;opacity:.28;background:linear-gradient(180deg,transparent,#111)}.practice-note.dyn-p{transform:scale(.88);opacity:.82;border-style:dashed}.practice-note.dyn-mf{border-width:2px}.practice-note.dyn-f{height:62px;border-width:2px;box-shadow:0 14px 38px rgba(244,239,229,.25),0 0 0 1px rgba(255,255,255,.18)}.practice-note.accent{border-color:#fff;box-shadow:0 0 0 3px rgba(244,239,229,.38),0 14px 38px rgba(0,0,0,.34)}.practice-note.accent:before{content:"›";position:absolute;top:-14px;right:8px;font-size:30px;transform:rotate(90deg);font-weight:900;color:#111}.practice-note.hit{box-shadow:0 0 0 3px rgba(157,226,178,.45),0 12px 30px rgba(0,0,0,.32)}
.lesson-start-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:16px 0 4px}.lesson-start-btn{font-size:1rem;padding:12px 18px}.lesson-start-note{color:var(--muted);font-size:13px}
@media(max-width:860px){.trainer-console-v739{position:static}.settings-grid{grid-template-columns:1fr}.practice-settings-panel{inset:10px;width:auto}.course-chip{width:100%;max-width:none}.trainer-mini-transport .compact-tempo{width:100%}.compact-tempo input{flex:1}.settings-gear{margin-left:0}}

/* v7.40 clean course start settings + MIDI cleanup */
.course-player-settings{margin-top:16px;background:linear-gradient(135deg,rgba(18,18,18,.96),rgba(31,31,31,.9));border-color:rgba(244,244,244,.18)}
.course-player-settings.needs-choice{border-color:#f4f1ea;box-shadow:0 0 0 1px rgba(244,241,234,.22),0 18px 60px rgba(0,0,0,.25)}
.course-settings-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start;margin-bottom:16px}.course-settings-head h2{margin:8px 0 4px}.course-settings-head p{margin:0;color:var(--muted)}
.course-settings-summary{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.course-settings-summary span{border:1px solid var(--line2);background:#0b0b0b;color:var(--soft);border-radius:999px;padding:8px 10px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}
.course-view-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0 14px}.course-mode-card{border:1px solid var(--line2);background:#0b0b0b;color:var(--white);border-radius:12px;padding:18px;text-align:left;display:grid;gap:6px;transition:transform .15s ease,border .15s ease,background .15s ease}.course-mode-card:hover{transform:translateY(-1px);border-color:var(--white);background:#171717}.course-mode-card.active{background:#f4f1ea;color:#070707;border-color:#f4f1ea;box-shadow:0 16px 36px rgba(0,0,0,.35)}.course-mode-card strong{font-size:20px;letter-spacing:-.02em}.course-mode-card span{font-size:13px;line-height:1.45;color:inherit;opacity:.75}
.course-settings-details{border:1px solid var(--line);background:rgba(0,0,0,.18);border-radius:12px;padding:12px}.course-settings-details summary{cursor:pointer;font-weight:900;text-transform:uppercase;letter-spacing:.06em;font-size:12px;color:var(--soft)}.course-settings-details[open] summary{margin-bottom:12px}.course-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.course-settings-grid .check-item{margin:0;background:#101010;border:1px solid var(--line);border-radius:10px}.course-settings-grid .label{display:grid;gap:6px}.course-settings-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.course-mapper{margin-top:12px;background:#0c0c0c}
.clean-trainer-topbar{margin-bottom:10px;align-items:center;padding:0;background:transparent}.clean-view-switch{background:#0b0b0b;border:1px solid var(--line2);border-radius:999px;padding:3px}.clean-view-switch .view-tab{color:var(--soft);background:transparent;border-radius:999px;border:0;padding:8px 14px;box-shadow:none}.clean-view-switch .view-tab.active{background:#f4f1ea;color:#070707;box-shadow:none}.subtle-chip{opacity:.72;background:transparent!important;border-color:var(--line)!important}.settings-gear,.practice-settings-panel{display:none!important}.settings-open:before{display:none!important;content:none!important}.trainer-console-v739{border-color:rgba(244,244,244,.12)}
.practice-lane-labels{grid-template-columns:repeat(6,1fr)}.practice-stage{grid-template-columns:repeat(6,1fr);background:repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0,rgba(255,255,255,.04) 1px,transparent 1px,transparent calc(100% / 6))}.practice-lane-other{display:none}.practice-note.lane-other{display:none!important}
@media(max-width:860px){.course-settings-head{grid-template-columns:1fr}.course-settings-summary{justify-content:flex-start}.course-view-choice,.course-settings-grid{grid-template-columns:1fr}.course-mode-card{padding:14px}.clean-trainer-topbar .course-chip{width:100%;max-width:none}}

/* v7.41 course start polish + drum notation fixes */
.course-start-settings{margin:18px 0 16px!important;padding:18px!important;background:linear-gradient(135deg,rgba(13,13,13,.98),rgba(33,31,27,.94))!important;border-color:rgba(219,207,174,.28)!important}
.course-start-settings .badge{background:rgba(219,207,174,.12);border-color:rgba(219,207,174,.34);color:#f4efe5}
.course-view-choice-clean .course-mode-card{border-radius:18px!important;padding:20px!important;min-height:116px!important;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018))!important;border-color:rgba(244,239,229,.14)!important}
.course-view-choice-clean .course-mode-card.active{background:linear-gradient(135deg,#f4efe5,#d3c290)!important;color:#111!important;border-color:#f4efe5!important;box-shadow:0 18px 45px rgba(0,0,0,.34)!important}
.course-view-choice-clean .course-mode-card.arcade-card:not(.active){background:radial-gradient(circle at 70% 0,rgba(255,221,122,.16),transparent 38%),linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018))!important}
.course-quick-settings{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0 14px}
.course-quick-settings .check-item,.course-quick-settings .compact-select{margin:0!important;border:1px solid rgba(244,239,229,.12)!important;border-radius:12px!important;background:rgba(0,0,0,.18)!important;padding:10px!important;color:#f4efe5!important}
.course-quick-settings .compact-select{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.course-quick-settings .select{min-width:110px;background:#0c0c0c;color:#f4efe5;border-color:rgba(244,239,229,.18)}
.trainer-note.ghost ellipse{fill:#111!important;stroke:#111!important;stroke-width:1.05px!important}
.trainer-note.ghost .tn-x{stroke:#111!important}.trainer-note.ghost .tn-paren{opacity:.9!important}
.tn-accent-mark{stroke:#111!important;stroke-width:2.25px!important;fill:none!important;stroke-linecap:round!important;stroke-linejoin:round!important;paint-order:stroke;filter:drop-shadow(0 0 0 #fff9ed)}
.trainer-complete-card{min-height:310px;border-radius:18px;background:#fff9ed;display:grid;place-items:center;align-content:center;gap:8px;color:#111;border:1px solid rgba(0,0,0,.12);box-shadow:0 14px 44px rgba(0,0,0,.14)}
.trainer-complete-card .trainer-complete-mark{width:120px;height:120px;border-radius:999px;display:grid;place-items:center;font-size:78px;font-weight:1000;line-height:1;color:#fff;box-shadow:0 16px 38px rgba(0,0,0,.24)}
.trainer-complete-card.pass .trainer-complete-mark{background:linear-gradient(135deg,#13a538,#75df83)}
.trainer-complete-card.fail .trainer-complete-mark{background:linear-gradient(135deg,#9b1111,#ff5959)}
.trainer-complete-card strong{font-size:28px;letter-spacing:-.03em}.trainer-complete-card span{font-size:16px;font-weight:900;color:#555}
.practice-lab[data-view="hero"] .practice-stage-wrap{border-radius:24px!important;border-color:rgba(244,239,229,.28)!important;background:radial-gradient(circle at 50% 0,rgba(255,235,160,.20),transparent 38%),linear-gradient(180deg,#151515,#050505)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),0 22px 55px rgba(0,0,0,.45)!important}
.practice-lab[data-view="hero"] .practice-stage{height:430px;background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.015) 42%,rgba(0,0,0,.24)),repeating-linear-gradient(90deg,rgba(244,239,229,.16) 0,rgba(244,239,229,.16) 2px,transparent 2px,transparent calc(100% / 6))!important;perspective:900px}
.practice-lab[data-view="hero"] .practice-hitline{top:330px!important;height:7px!important;background:linear-gradient(90deg,transparent,#f4efe5,transparent)!important;box-shadow:0 0 32px rgba(244,239,229,.8),0 0 0 1px rgba(255,255,255,.25)!important}.practice-lab[data-view="hero"] .practice-hitline:after{content:"HIT";color:#f4efe5;top:12px;font-weight:1000;text-shadow:0 0 14px rgba(244,239,229,.8)}
.practice-lab[data-view="hero"] .practice-lane-labels{background:linear-gradient(180deg,rgba(0,0,0,.65),rgba(0,0,0,.92))!important;border-top-color:rgba(244,239,229,.24)!important}.practice-lab[data-view="hero"] .practice-lane-labels span{font-weight:1000;color:#f4efe5;text-shadow:0 0 12px rgba(244,239,229,.38)}
.practice-lab[data-view="hero"] .practice-note{border-radius:999px!important;height:46px!important;min-width:46px!important;background:radial-gradient(circle at 30% 25%,#fff,#f4efe5 28%,#c9b98f 68%,#62562d)!important;color:#111!important;border:2px solid rgba(255,255,255,.86)!important;box-shadow:0 13px 26px rgba(0,0,0,.48),0 0 26px rgba(244,239,229,.23)!important;display:grid;grid-template-rows:1fr auto;align-content:center}.practice-lab[data-view="hero"] .practice-note strong{font-size:11px!important;line-height:1}.practice-lab[data-view="hero"] .practice-note small{font-size:9px!important;font-weight:1000;opacity:.9}.practice-lab[data-view="hero"] .practice-note .note-velocity{display:none!important}
.practice-lab[data-view="hero"] .practice-note.dyn-p{transform:scale(.82)!important;opacity:.86!important;background:radial-gradient(circle at 30% 25%,#fff,#e7f0ff 30%,#8fb0dd 72%,#334866)!important}.practice-lab[data-view="hero"] .practice-note.dyn-mf{transform:scale(1)!important}.practice-lab[data-view="hero"] .practice-note.dyn-f{transform:scale(1.12)!important;background:radial-gradient(circle at 30% 25%,#fff8cc,#ffd957 35%,#cb8b17 76%,#5b2d05)!important;box-shadow:0 14px 34px rgba(0,0,0,.5),0 0 32px rgba(255,210,74,.45)!important}.practice-lab[data-view="hero"] .practice-note.accent{box-shadow:0 0 0 4px rgba(255,255,255,.42),0 0 34px rgba(255,245,180,.65),0 13px 28px rgba(0,0,0,.5)!important}.practice-lab[data-view="hero"] .practice-note.accent:before{content:">"!important;top:-22px!important;right:auto!important;left:50%!important;transform:translateX(-50%)!important;color:#f4efe5!important;text-shadow:0 0 10px rgba(244,239,229,.9);font-size:24px!important}
.practice-lab[data-view="hero"] .practice-note.hit{background:radial-gradient(circle at 30% 25%,#fff,#b9ffc9 34%,#16a34a 78%,#064e1f)!important;color:#04140a!important}.practice-lab[data-view="hero"] .practice-note.missed{background:radial-gradient(circle at 30% 25%,#ffd2d2,#b91c1c 78%,#450a0a)!important;color:#fff!important;opacity:.62!important}
@media(max-width:860px){.course-quick-settings{grid-template-columns:1fr}.practice-lab[data-view="hero"] .practice-stage{height:360px}.practice-lab[data-view="hero"] .practice-hitline{top:275px!important}}

/* v7.42 course settings polish + notation dynamics */
.course-start-settings{position:relative!important;margin:18px 0 16px!important;border-radius:20px!important}
.course-start-settings:before{content:"⚙";position:absolute;right:22px;top:18px;width:42px;height:42px;border-radius:999px;display:grid;place-items:center;border:1px solid rgba(244,239,229,.28);background:rgba(244,239,229,.08);color:#f4efe5;font-size:22px;box-shadow:0 14px 38px rgba(0,0,0,.22)}
.course-settings-head{padding-right:72px!important}.course-settings-summary span{white-space:nowrap}
.trainer-note.ghost ellipse{fill:#111!important;stroke:#111!important;opacity:.58!important}.trainer-note.ghost .tn-x{opacity:.58!important}.tn-paren{opacity:.9!important}.trainer-note.accent ellipse,.trainer-note.accent .tn-x{stroke-width:2.8px!important}.tn-accent-mark{stroke:#111!important;stroke-width:2.4px!important;fill:none!important;stroke-linecap:round!important;stroke-linejoin:round!important;filter:none!important}
.practice-note.accent:before{content:">"!important;position:absolute!important;top:-20px!important;right:auto!important;left:50%!important;transform:translateX(-50%)!important;font-size:25px!important;font-weight:1000!important;color:#111!important}.practice-note.dyn-p{opacity:.78!important}.practice-note.dyn-f{transform:scale(1.08)!important}.practice-note.accent{transform:scale(1.12)!important}
.practice-lab[data-view="hero"] .practice-stage-wrap{border-color:rgba(244,239,229,.24)!important;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015))!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 20px 70px rgba(0,0,0,.26)!important}.practice-lab[data-view="hero"] .practice-stage{height:430px!important;background:radial-gradient(ellipse at 50% 110%,rgba(244,239,229,.22),transparent 42%),linear-gradient(180deg,#080808 0%,#151515 48%,#090909 100%)!important;perspective:700px!important}.practice-lab[data-view="hero"] .practice-stage:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0,rgba(244,239,229,.10) 1px,transparent 2px),linear-gradient(180deg,rgba(244,239,229,.10),transparent 28%,rgba(255,255,255,.06));background-size:calc(100% / 6) 100%,100% 100%;opacity:.72;pointer-events:none}.practice-lab[data-view="hero"] .practice-hitline{top:342px!important;height:5px!important;background:#f4efe5!important;box-shadow:0 0 26px rgba(244,239,229,.64)!important}.practice-lab[data-view="hero"] .practice-hitline:before{content:"";position:absolute;left:0;right:0;top:-18px;height:42px;background:linear-gradient(90deg,rgba(244,239,229,.06),rgba(244,239,229,.18),rgba(244,239,229,.06));filter:blur(10px)}.practice-lab[data-view="hero"] .practice-lane-labels{background:rgba(0,0,0,.70)!important;border-top:1px solid rgba(244,239,229,.26)!important}.practice-lab[data-view="hero"] .practice-note{transition:box-shadow .08s linear,transform .08s linear!important}.practice-lab[data-view="hero"] .practice-note small{letter-spacing:.05em!important}.practice-lab[data-view="hero"] .practice-note.accent:before{content:">"!important;top:-24px!important;color:#fff8cf!important;text-shadow:0 0 12px rgba(255,248,207,.9)!important;transform:translateX(-50%)!important}

/* v7.43 settings collapse + strict dynamics polish */
.course-player-settings.is-collapsed{padding:16px 18px!important;background:linear-gradient(135deg,rgba(18,18,18,.94),rgba(26,26,26,.86))!important;border-color:rgba(244,244,244,.14)!important;box-shadow:none!important}.course-settings-compact{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center}.course-settings-compact h2{margin:6px 0 3px;font-size:22px}.course-settings-compact p{margin:0;color:var(--muted);max-width:720px}.course-settings-toggle{white-space:nowrap}.course-settings-body{margin-top:16px;border-top:1px solid var(--line);padding-top:16px}.course-player-settings.is-collapsed .course-settings-body{display:none}.course-player-settings.is-open{box-shadow:0 18px 60px rgba(0,0,0,.24)}.course-player-settings.needs-choice.is-collapsed{border-color:rgba(244,244,244,.24);box-shadow:none}.course-settings-summary{align-items:center}.tn-accent-mark{font-family:Arial,Helvetica,sans-serif!important;font-size:19px!important;font-weight:900!important;fill:#111!important;stroke:none!important;transform:none!important;paint-order:normal!important}.trainer-note.trainer-lane-kick.accent ellipse,.trainer-note.trainer-lane-kick.accent .tn-x{stroke-width:1.05px!important}.practice-note.lane-kick.accent:before{display:none!important}.practice-note.lane-kick.accent{transform:none!important;box-shadow:0 12px 30px rgba(0,0,0,.32)!important}.practice-note.dyn-p{opacity:.72!important;filter:saturate(.82)}.practice-note.dyn-f{transform:scale(1.13)!important}.practice-note.accent:not(.lane-kick){transform:scale(1.15)!important}@media(max-width:860px){.course-settings-compact{grid-template-columns:1fr}.course-settings-summary{justify-content:flex-start}.course-settings-toggle{width:100%}}

/* v7.44 Studio Wizard MVP */
.studio-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,520px);gap:22px;align-items:start;background:radial-gradient(circle at 90% 0,rgba(255,255,255,.08),transparent 36%),linear-gradient(135deg,rgba(255,255,255,.045),rgba(255,255,255,.018))}
.studio-hero h1{margin:.35rem 0;font-size:clamp(36px,6vw,72px)}
.studio-flow-mini{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.studio-flow-mini div{border:1px solid var(--line);border-radius:16px;background:rgba(0,0,0,.18);padding:12px;display:grid;gap:4px}
.studio-flow-mini strong{width:32px;height:32px;border-radius:999px;display:grid;place-items:center;background:#f4f1ea;color:#090909;font-weight:1000}.studio-flow-mini span{font-weight:1000;color:#fff}.studio-flow-mini small{color:var(--muted);line-height:1.35}
.studio-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:16px;margin-top:16px}.studio-panel h2{margin-top:0}.studio-device-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px}.studio-midi-list{min-height:42px;border:1px solid var(--line);border-radius:12px;background:rgba(0,0,0,.18);padding:8px;display:flex;gap:6px;flex-wrap:wrap;align-items:center;color:var(--muted)}
.studio-stage{position:relative;min-height:340px;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:linear-gradient(180deg,#0e0e0e,#050505);overflow:hidden;display:grid;place-items:center}.studio-stage video{width:100%;height:100%;min-height:340px;object-fit:cover;background:#050505}.studio-overlay{position:absolute;left:16px;right:16px;bottom:16px;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:rgba(0,0,0,.62);backdrop-filter:blur(10px);padding:12px 14px;display:flex;justify-content:space-between;gap:12px;align-items:center}.studio-overlay strong{font-size:22px;color:#f4f1ea}.studio-overlay span{color:#d7d0c4;font-size:13px;text-align:right}.studio-transport{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.studio-hotkeys{display:flex;gap:8px;flex-wrap:wrap;align-items:center;color:var(--muted);font-size:13px;margin:10px 0}.studio-hotkeys kbd{border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.08);color:#fff;padding:3px 7px;font-weight:900}.studio-review-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:16px;align-items:start}.studio-review-video{width:100%;max-height:360px;border-radius:18px;border:1px solid var(--line);background:#050505}.badge.good{background:rgba(34,197,94,.16);border-color:rgba(34,197,94,.45);color:#bbf7d0}.badge.warn{background:rgba(245,158,11,.16);border-color:rgba(245,158,11,.45);color:#fde68a}.btn[disabled]{opacity:.45;pointer-events:none}
@media(max-width:980px){.studio-hero,.studio-grid,.studio-review-grid{grid-template-columns:1fr}.studio-device-grid,.studio-flow-mini{grid-template-columns:1fr}.studio-stage,.studio-stage video{min-height:260px}}

/* v7.45 Studio Builder polish */
.studio-builder-hero{border-color:rgba(244,239,229,.18)!important;box-shadow:0 22px 70px rgba(0,0,0,.24)}
.studio-builder-grid{align-items:start}.studio-upload-box{border:1px dashed rgba(244,239,229,.24);border-radius:18px;background:rgba(244,239,229,.045);padding:12px;margin-bottom:12px}.studio-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.studio-checks .check-item{margin:0!important;border-radius:14px;background:rgba(255,255,255,.04)!important;border-color:rgba(255,255,255,.10)!important}.studio-section-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.studio-builder-grid .studio-panel{min-height:0}.studio-builder-grid .rec-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-builder-grid .studio-review-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
@media(max-width:980px){.studio-checks,.studio-builder-grid .rec-grid,.studio-builder-grid .studio-review-grid{grid-template-columns:1fr}}

/* v7.46 Studio Block Builder */
.studio-auto-note{border:1px solid rgba(244,239,229,.16);border-radius:14px;background:rgba(244,239,229,.055);padding:12px;display:grid;gap:4px;color:#f4f1ea}
.studio-auto-note span{color:var(--muted);font-size:13px;line-height:1.35}
.studio-timeline-editor{border:1px solid rgba(244,239,229,.15);border-radius:18px;background:rgba(0,0,0,.20);padding:14px;margin-bottom:12px}
.studio-timeline-track{position:relative;height:34px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;border:1px solid rgba(255,255,255,.08)}
.studio-timeline-active{position:absolute;top:0;bottom:0;background:linear-gradient(90deg,rgba(244,241,234,.70),rgba(244,241,234,.95));box-shadow:0 0 18px rgba(244,241,234,.20)}
.studio-timeline-muted{position:absolute;top:0;bottom:0;background:rgba(0,0,0,.36)}
.studio-trim-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.studio-trim-controls label{display:grid;gap:6px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}
.studio-trim-range{width:100%;accent-color:#f4f1ea}
.lesson-flow-block{scroll-margin-top:90px}
.lesson-continue-prompt{margin:24px auto;max-width:720px;border:1px solid rgba(34,197,94,.35);background:linear-gradient(135deg,rgba(34,197,94,.16),rgba(255,255,255,.04))}
.palette button:first-child{border-color:rgba(244,241,234,.28);background:linear-gradient(135deg,rgba(244,241,234,.15),rgba(255,255,255,.04))}
@media(max-width:760px){.studio-trim-controls{grid-template-columns:1fr}}

/* v7.47 Studio Lesson Blocks */
.video-editor-asset{background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.26))}
.video-block-trim{border:1px solid rgba(244,239,229,.15);border-radius:18px;background:rgba(0,0,0,.22);padding:14px;margin-top:12px}
.trim-handle{position:absolute;top:-5px;width:4px;height:44px;border-radius:999px;background:#f4f1ea;box-shadow:0 0 0 4px rgba(244,241,234,.14),0 0 18px rgba(244,241,234,.3);transform:translateX(-50%)}
.trim-start:after,.trim-end:after{position:absolute;top:46px;transform:translateX(-42%);font-size:10px;font-weight:1000;letter-spacing:.08em;color:var(--muted);text-transform:uppercase}
.trim-start:after{content:"start"}.trim-end:after{content:"konec"}
.lesson-video-wrap{position:relative;overflow:hidden;background:#000;--video-fade-opacity:1}.lesson-video-wrap .video-preview{display:block}.lesson-video-overlay{position:absolute;left:18px;top:18px;z-index:2;border:1px solid rgba(255,255,255,.18);background:rgba(0,0,0,.62);backdrop-filter:blur(9px);border-radius:16px;padding:10px 12px;display:grid;gap:3px;max-width:min(360px,calc(100% - 36px));pointer-events:none}.lesson-video-overlay strong{font-size:15px;color:#fff}.lesson-video-overlay span{font-size:12px;color:#d9d1c4;font-weight:800;letter-spacing:.04em}.studio-overlay{display:grid!important;grid-template-columns:auto 1fr;align-items:center}.studio-overlay span{text-align:right}.studio-overlay em{grid-column:1 / -1;color:#f4f1ea;font-style:normal;font-size:12px;letter-spacing:.06em;text-transform:uppercase;opacity:.92}.studio-transport .btn:first-child{box-shadow:0 0 0 1px rgba(244,241,234,.16),0 18px 46px rgba(0,0,0,.22)}
@media(max-width:760px){.lesson-video-overlay{left:10px;right:10px;top:10px;max-width:none}.studio-overlay{grid-template-columns:1fr}.studio-overlay span{text-align:left}.video-block-trim .studio-trim-controls{grid-template-columns:1fr}}
/* v7.48 continuous studio exercise dialog */
.studio-modal{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.55);backdrop-filter:blur(8px);display:grid;place-items:center;padding:24px}
.studio-modal-card{width:min(760px,96vw);box-shadow:0 30px 90px rgba(0,0,0,.42);border-color:rgba(244,239,229,.24)!important}
.studio-overlay em{color:#f3d08a;font-style:normal;font-weight:800;font-size:13px;white-space:nowrap}
.studio-stage .studio-overlay{align-items:flex-end}.studio-stage .studio-overlay strong{min-width:110px}.studio-stage .studio-overlay span{flex:1}

/* v7.50 Studio upload/process visibility */
.studio-save-state{border:1px solid var(--line);border-radius:16px;padding:12px 14px;margin:12px 0;background:rgba(255,255,255,.75);display:grid;gap:5px}
.studio-save-state strong{font-size:.98rem;color:var(--ink)}
.studio-save-state span{font-size:.88rem;color:var(--muted)}
.studio-save-state.ready{border-color:rgba(30,143,83,.35);background:rgba(30,143,83,.08)}
.studio-save-state.busy,.studio-save-state.live{border-color:rgba(245,158,11,.38);background:rgba(245,158,11,.1)}
.studio-save-state.error{border-color:rgba(220,38,38,.35);background:rgba(220,38,38,.08)}
.studio-upload-progress{height:10px;border-radius:999px;background:rgba(15,23,42,.1);overflow:hidden;margin:4px 0}
.studio-upload-progress i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,rgba(22,163,74,.85),rgba(34,197,94,.95));transition:width .18s ease}

/* v7.51 Studio Quantize + Flow Finish Fix */
.lesson-finish-card{min-height:260px;border-radius:24px;display:grid;place-items:center;align-content:center;gap:10px;text-align:center;background:radial-gradient(circle at 50% 0,rgba(255,255,255,.12),transparent 42%),linear-gradient(135deg,rgba(20,20,20,.94),rgba(8,8,8,.96));border:1px solid rgba(244,239,229,.18);box-shadow:0 24px 80px rgba(0,0,0,.28);padding:28px;color:#f4efe5}.lesson-finish-card .trainer-complete-mark{width:116px;height:116px;border-radius:999px;display:grid;place-items:center;font-size:74px;font-weight:1000;line-height:1;color:#06130a;box-shadow:0 16px 44px rgba(0,0,0,.32)}.lesson-finish-card.pass .trainer-complete-mark{background:linear-gradient(135deg,#86efac,#16a34a)}.lesson-finish-card.fail .trainer-complete-mark{background:linear-gradient(135deg,#fecaca,#dc2626);color:#fff}.lesson-finish-card.pending .trainer-complete-mark{background:linear-gradient(135deg,#fde68a,#f59e0b);color:#111}.lesson-finish-card strong{font-size:clamp(25px,4vw,42px);letter-spacing:-.035em}.lesson-finish-card span{font-size:18px;font-weight:900;color:#d9d1c4}.lesson-badge-award{border:1px solid rgba(244,239,229,.22);background:rgba(244,239,229,.09);border-radius:999px;padding:9px 14px;font-weight:1000;color:#fff3c4}.studio-modal-card .rec-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-stage.is-exercise-recording{outline:2px solid rgba(34,197,94,.42);box-shadow:0 0 0 6px rgba(34,197,94,.08)}.studio-overlay strong{letter-spacing:.04em}.tn-cursor{stroke-width:3.2px!important;filter:drop-shadow(0 0 5px rgba(220,38,38,.34))}.tn-beat-grid{opacity:.42}.tn-beat-grid.major{opacity:.62}.trainer-notation-note{font-size:12px;line-height:1.35;color:var(--muted)}@media(max-width:760px){.studio-modal-card .rec-grid{grid-template-columns:1fr}.lesson-finish-card{min-height:220px}}

/* v7.52 arcade hit-zone + finish flow polish */
.practice-stage{overflow:hidden}
.practice-hit-zones{position:absolute;left:0;right:0;top:282px;height:76px;display:grid;grid-template-columns:repeat(6,1fr);gap:8px;padding:0 10px;z-index:2;pointer-events:none}
.practice-hit-zone{align-self:center;height:58px;border-radius:18px;border:1px solid rgba(244,239,229,.24);background:rgba(244,239,229,.055);display:grid;place-items:center;color:rgba(244,239,229,.56);font-size:11px;font-weight:1000;letter-spacing:.08em;text-transform:uppercase;box-shadow:inset 0 0 0 1px rgba(255,255,255,.035);transition:transform .11s ease,background .11s ease,border-color .11s ease,box-shadow .11s ease,color .11s ease}
.practice-hit-zone b{font-size:10px;opacity:.82}.practice-hit-zone.active{transform:scale(1.08);background:rgba(157,226,178,.24);border-color:rgba(157,226,178,.9);color:#dfffe8;box-shadow:0 0 30px rgba(157,226,178,.44),inset 0 0 0 1px rgba(255,255,255,.22)}.practice-hit-zone.bad{transform:scale(.98);background:rgba(255,120,120,.22);border-color:rgba(255,120,120,.8);color:#ffd6d6;box-shadow:0 0 26px rgba(255,80,80,.35)}
.practice-note{transform-origin:center center;transition:opacity .08s linear,box-shadow .08s linear,filter .08s linear!important}.practice-note.is-close{filter:saturate(1.18) brightness(1.08);box-shadow:0 16px 44px rgba(244,239,229,.34),0 0 0 2px rgba(244,239,229,.22)}
.practice-lab[data-view="hero"] .practice-hit-zones{top:303px;height:92px;gap:10px;padding:0 14px;z-index:3}.practice-lab[data-view="hero"] .practice-hit-zone{height:76px;border-radius:999px;background:radial-gradient(circle at 50% 38%,rgba(244,239,229,.16),rgba(244,239,229,.035) 64%,rgba(0,0,0,.2));border-color:rgba(244,239,229,.28);box-shadow:inset 0 0 18px rgba(244,239,229,.055),0 0 0 1px rgba(255,255,255,.03);color:#f4efe5}.practice-lab[data-view="hero"] .practice-hit-zone:after{content:"";position:absolute;width:42px;height:42px;border-radius:999px;border:1px solid rgba(244,239,229,.22);box-shadow:0 0 22px rgba(244,239,229,.13)}.practice-lab[data-view="hero"] .practice-hit-zone.active{background:radial-gradient(circle at 50% 40%,rgba(157,226,178,.72),rgba(46,160,80,.30) 58%,rgba(0,0,0,.18));box-shadow:0 0 36px rgba(157,226,178,.58),inset 0 0 18px rgba(255,255,255,.15)}.practice-lab[data-view="hero"] .practice-hit-zone.bad{background:radial-gradient(circle at 50% 40%,rgba(255,120,120,.70),rgba(168,30,30,.32) 60%,rgba(0,0,0,.18));box-shadow:0 0 34px rgba(255,85,85,.45)}.practice-lab[data-view="hero"] .practice-note{z-index:6}.practice-lab[data-view="hero"] .practice-note.is-close{box-shadow:0 0 0 3px rgba(244,239,229,.34),0 0 42px rgba(244,239,229,.50),0 16px 34px rgba(0,0,0,.50)!important}
.trainer-notation-note strong{color:#f4efe5}
@media(max-width:860px){.practice-hit-zones{top:238px;height:64px}.practice-hit-zone{height:48px;border-radius:14px}.practice-lab[data-view="hero"] .practice-hit-zones{top:236px;height:76px}.practice-lab[data-view="hero"] .practice-hit-zone{height:58px}}
.practice-hit-zone{position:relative}

/* v7.53 Studio preflight + arcade drop polish */
.studio-stage{isolation:isolate}
.studio-stage video,.lesson-video-asset .video-preview{transition:filter .18s ease,opacity .04s linear}.lesson-video-wrap .video-preview{opacity:var(--video-fade-opacity,1)}
.lesson-video-fade-mask{position:absolute;inset:0;background:#000;opacity:calc(1 - var(--video-fade-opacity,1));transition:opacity .04s linear;pointer-events:none;z-index:4}.lesson-video-wrap .lesson-video-overlay{z-index:3}
.studio-look-auto video,.studio-look-auto .video-preview{filter:contrast(1.06) saturate(1.08) brightness(1.04)}
.studio-look-warm video,.studio-look-warm .video-preview{filter:contrast(1.04) saturate(1.12) brightness(1.03) sepia(.055)}
.studio-look-neutral video,.studio-look-neutral .video-preview{filter:contrast(1.02) saturate(1.02) brightness(1.01)}
.studio-countdown{position:absolute;inset:0;z-index:6;display:grid;place-items:center;align-content:center;gap:8px;background:radial-gradient(circle at 50% 45%,rgba(0,0,0,.10),rgba(0,0,0,.62));backdrop-filter:blur(2px);pointer-events:none;text-align:center;color:#fff}
.studio-countdown strong{font-size:clamp(74px,15vw,170px);font-weight:1000;line-height:.86;letter-spacing:-.08em;text-shadow:0 22px 70px rgba(0,0,0,.55),0 0 36px rgba(244,239,229,.32);animation:studioCountPop .62s cubic-bezier(.2,.9,.2,1)}
.studio-countdown span{font-size:13px;letter-spacing:.18em;text-transform:uppercase;font-weight:1000;color:#f4efe5;background:rgba(0,0,0,.48);border:1px solid rgba(244,239,229,.18);border-radius:999px;padding:8px 12px}
@keyframes studioCountPop{0%{transform:scale(.72);opacity:0}38%{transform:scale(1.06);opacity:1}100%{transform:scale(1);opacity:1}}
.studio-stage.is-preroll{outline:2px solid rgba(244,239,229,.48);box-shadow:0 0 0 7px rgba(244,239,229,.08),0 24px 80px rgba(0,0,0,.35)}
.studio-panel .check-item{align-self:end;min-height:50px}
.lesson-video-asset:has(video[data-auto-fade]:not([data-auto-fade="0"])) .lesson-video-wrap:before,.lesson-video-asset:has(video[data-auto-fade]:not([data-auto-fade="0"])) .lesson-video-wrap:after{content:"";position:absolute;left:0;right:0;height:14px;z-index:1;pointer-events:none}.lesson-video-asset .lesson-video-wrap:before{top:0;background:linear-gradient(180deg,rgba(0,0,0,.34),transparent)}.lesson-video-asset .lesson-video-wrap:after{bottom:0;background:linear-gradient(0deg,rgba(0,0,0,.34),transparent)}
.practice-lab[data-view="hero"] .practice-stage{height:500px!important;background:radial-gradient(ellipse at 50% 112%,rgba(244,239,229,.24),transparent 42%),linear-gradient(180deg,#070707 0%,#151515 50%,#080808 100%)!important;overflow:hidden!important}
.practice-lab[data-view="hero"] .practice-stage:before{opacity:.82!important;background-size:calc(100% / 6) 100%,100% 100%!important;transform:perspective(660px) rotateX(9deg);transform-origin:50% 100%}
.practice-lab[data-view="hero"] .practice-hitline{top:392px!important;height:6px!important;border-radius:999px;background:#f4efe5!important;box-shadow:0 0 30px rgba(244,239,229,.72),0 0 0 1px rgba(255,255,255,.18)!important}
.practice-lab[data-view="hero"] .practice-hit-zones{top:350px!important;height:112px!important;padding:0 15px!important}
.practice-lab[data-view="hero"] .practice-hit-zone{height:88px!important;transform:translateZ(0);transition:transform .12s ease,box-shadow .12s ease,background .12s ease!important}
.practice-lab[data-view="hero"] .practice-hit-zone.active{transform:scale(1.08);}
.practice-lab[data-view="hero"] .practice-note{border-radius:20px!important;min-height:66px!important;will-change:transform,opacity;box-shadow:0 18px 42px rgba(0,0,0,.46),inset 0 1px 0 rgba(255,255,255,.18)!important;background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.05)),var(--card)!important}
.practice-lab[data-view="hero"] .practice-note:after{content:"";position:absolute;inset:-10px;border-radius:24px;border:1px solid rgba(244,239,229,calc(.05 + var(--approach,0)*.32));box-shadow:0 0 calc(10px + var(--approach,0)*28px) rgba(244,239,229,calc(.08 + var(--approach,0)*.32));opacity:calc(.28 + var(--approach,0)*.72);pointer-events:none}
.practice-lab[data-view="hero"] .practice-note.is-close{filter:saturate(1.25) brightness(1.14)!important;box-shadow:0 0 0 3px rgba(244,239,229,.38),0 0 48px rgba(244,239,229,.58),0 18px 44px rgba(0,0,0,.54)!important}
.practice-lab[data-view="hero"] .practice-note.dyn-p{opacity:.78!important;transform-origin:center center!important}.practice-lab[data-view="hero"] .practice-note.dyn-f strong{font-size:18px}.practice-lab[data-view="hero"] .practice-note.accent:not(.lane-kick):before{content: ">"!important;top:-26px!important;color:#fff6bf!important;text-shadow:0 0 15px rgba(255,246,191,.95)!important}

/* v7.55 Studio Profiles + Whiteboard */
.lesson-flow-rail{position:relative;margin-top:13px;display:grid;grid-template-columns:repeat(auto-fit,minmax(24px,1fr));gap:7px}
.lesson-flow-rail:before{content:"";position:absolute;left:10px;right:10px;top:50%;height:3px;border-radius:999px;background:rgba(244,239,229,.14);transform:translateY(-50%)}
.lesson-flow-rail:after{content:"";position:absolute;left:10px;top:50%;height:3px;width:var(--lesson-flow-pct,0%);max-width:calc(100% - 20px);border-radius:999px;background:linear-gradient(90deg,#86efac,#f4efe5);transform:translateY(-50%);transition:width .38s cubic-bezier(.2,.8,.2,1)}
.lesson-flow-rail span{position:relative;z-index:1;display:grid;place-items:center}.lesson-flow-rail i{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;border:1px solid rgba(244,239,229,.22);background:#101010;color:#f4efe5;font-style:normal;font-size:12px;font-weight:1000;box-shadow:0 8px 20px rgba(0,0,0,.28)}
.lesson-block-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px}.lesson-block-head h2{margin:.16rem 0 0}.lesson-block-step{font-size:12px;font-weight:1000;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.lesson-block-check{width:42px;height:42px;border-radius:999px;border:1px solid rgba(244,239,229,.22);display:grid;place-items:center;color:transparent;background:rgba(244,239,229,.04);flex:0 0 auto;transition:all .22s ease}.lesson-block-check span{font-size:24px;font-weight:1000;line-height:1}
.lesson-flow-block{position:relative;transition:transform .28s ease,border-color .28s ease,background .28s ease}.lesson-flow-block.is-complete{border-color:rgba(134,239,172,.38);background:linear-gradient(180deg,rgba(34,197,94,.08),rgba(255,255,255,.025))}.lesson-flow-block.is-complete .lesson-block-check{background:linear-gradient(135deg,#86efac,#16a34a);color:#06130a;border-color:rgba(134,239,172,.75);box-shadow:0 0 32px rgba(34,197,94,.25)}.lesson-flow-block.just-completed{animation:lessonCheckSlide .72s cubic-bezier(.2,.9,.2,1)}
@keyframes lessonCheckSlide{0%{transform:translateY(0)}35%{transform:translateY(8px);box-shadow:0 0 0 rgba(34,197,94,0)}100%{transform:translateY(0)}}
.studio-stage{min-height:380px;background:#050505;display:grid;place-items:center;overflow:hidden;border-radius:24px;border:1px solid rgba(244,239,229,.16)}.studio-stage video{width:100%;height:100%;min-height:380px;object-fit:cover;background:#080808}.studio-stage:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:24px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),inset 0 -90px 120px rgba(0,0,0,.28)}
.studio-rec-hud{position:absolute;left:18px;top:18px;z-index:5;display:flex;align-items:center;gap:9px;padding:9px 12px;border-radius:999px;background:rgba(0,0,0,.64);border:1px solid rgba(244,239,229,.18);color:#fff;box-shadow:0 10px 30px rgba(0,0,0,.32);backdrop-filter:blur(8px)}.studio-rec-hud strong{font-size:12px;letter-spacing:.12em;text-transform:uppercase}.studio-rec-hud small{font-weight:900;color:#d9d1c4}.rec-dot{width:10px;height:10px;border-radius:999px;background:#7d7d7d;box-shadow:0 0 0 0 rgba(255,255,255,0)}.studio-stage.is-recording .rec-dot{background:#ef4444;animation:recPulse 1.05s infinite;box-shadow:0 0 18px rgba(239,68,68,.75)}
@keyframes recPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.72);opacity:.55}}
.studio-stage.is-recording{outline:2px solid rgba(239,68,68,.32);box-shadow:0 0 0 6px rgba(239,68,68,.07),0 24px 80px rgba(0,0,0,.35)}.studio-stage.is-exercise-recording .studio-rec-hud{border-color:rgba(134,239,172,.5);box-shadow:0 0 34px rgba(34,197,94,.2)}
.practice-lab[data-view="hero"] .practice-stage{height:540px!important;background:radial-gradient(ellipse at 50% 110%,rgba(244,239,229,.22),transparent 46%),linear-gradient(180deg,#050505 0%,#101010 55%,#070707 100%)!important;overflow:hidden!important}.practice-lab[data-view="hero"] .practice-stage:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 20%,transparent 68%,rgba(244,239,229,.08));opacity:.7}.practice-lab[data-view="hero"] .practice-hitline{top:420px!important}.practice-lab[data-view="hero"] .practice-hit-zones{top:374px!important}.practice-lab[data-view="hero"] .practice-note{transition:opacity .06s linear,filter .06s linear!important;transform-origin:center center!important}.practice-lab[data-view="hero"] .practice-note strong{font-size:12px!important}.practice-lab[data-view="hero"] .practice-note small{font-size:9px!important}.practice-lab[data-view="hero"] .practice-note.is-close{animation:arcadeReadyPulse .34s ease-out infinite alternate}@keyframes arcadeReadyPulse{from{filter:saturate(1.1) brightness(1.04)}to{filter:saturate(1.38) brightness(1.18)}}
@media(max-width:860px){.studio-stage,.studio-stage video{min-height:300px}.lesson-block-head{align-items:center}.practice-lab[data-view="hero"] .practice-stage{height:410px!important}.practice-lab[data-view="hero"] .practice-hitline{top:318px!important}.practice-lab[data-view="hero"] .practice-hit-zones{top:278px!important}}

/* v7.55 Studio Profiles + Whiteboard */
.studio-profile-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 8px}.studio-profile-switch button{border:1px solid var(--line);background:#101010;color:var(--white);border-radius:16px;padding:12px;text-align:left;font-weight:1000;text-transform:uppercase;letter-spacing:.05em}.studio-profile-switch button small{display:block;margin-top:5px;color:var(--muted);font-weight:700;text-transform:none;letter-spacing:0}.studio-profile-switch button.active{border-color:rgba(134,239,172,.5);background:linear-gradient(135deg,rgba(34,197,94,.14),rgba(255,255,255,.04));box-shadow:0 0 0 4px rgba(34,197,94,.06)}.studio-profile-hint{color:#d9d1c4;font-size:13px;line-height:1.45;margin:4px 0 12px}.studio-whiteboard-layer{position:absolute;inset:0;z-index:4;pointer-events:none}.studio-stage.whiteboard-on .studio-whiteboard-layer{pointer-events:auto}.studio-whiteboard-layer canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:crosshair;background:rgba(5,5,5,.08)}.studio-whiteboard-toolbar{position:absolute;right:16px;top:16px;z-index:8;display:flex;align-items:center;gap:6px;flex-wrap:wrap;max-width:min(92%,560px);padding:8px 10px;border:1px solid rgba(244,239,229,.2);border-radius:999px;background:rgba(0,0,0,.64);backdrop-filter:blur(10px);color:#fff;box-shadow:0 12px 34px rgba(0,0,0,.32)}.studio-whiteboard-toolbar strong{font-size:12px;letter-spacing:.1em;text-transform:uppercase}.studio-whiteboard-toolbar button{border:1px solid rgba(244,239,229,.2);background:rgba(255,255,255,.08);color:#fff;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:900;cursor:pointer}.studio-whiteboard-toolbar button:hover{border-color:#f4efe5}.whiteboard-editor-block{display:grid;gap:12px}.whiteboard-preview,.lesson-whiteboard-image{border:1px solid var(--line);border-radius:18px;background:#050505;overflow:hidden}.whiteboard-preview img,.lesson-whiteboard-image img{display:block;width:100%;height:auto;max-height:560px;object-fit:contain;background:#070707}.whiteboard-placeholder{border:1px dashed var(--line2);border-radius:18px;background:rgba(255,255,255,.035);color:var(--muted);padding:18px}.lesson-whiteboard-block{display:grid;gap:12px}.lesson-whiteboard-block p{color:#d9d1c4;margin:0}.lesson-flow-block[data-flow-type="whiteboard"]{background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(0,0,0,.18))}
@media(max-width:780px){.studio-profile-switch{grid-template-columns:1fr}.studio-whiteboard-toolbar{left:12px;right:12px;top:auto;bottom:12px;border-radius:18px}.studio-whiteboard-toolbar button{font-size:11px;padding:5px 7px}}

/* v7.56 Studio Whiteboard Capture + Cursor Fix */
.studio-whiteboard-fab{position:absolute;left:16px;top:16px;z-index:11;border:1px solid rgba(244,239,229,.24);background:rgba(0,0,0,.68);backdrop-filter:blur(12px);color:#f4efe5;border-radius:999px;padding:9px 13px;font-weight:1000;letter-spacing:.03em;box-shadow:0 12px 34px rgba(0,0,0,.34);cursor:pointer}
.studio-whiteboard-fab:hover{border-color:#f4efe5;background:rgba(244,239,229,.12)}
.studio-whiteboard-fab.active{background:linear-gradient(135deg,rgba(244,239,229,.96),rgba(201,185,143,.95));color:#111;border-color:rgba(255,255,255,.5)}
.studio-stage.whiteboard-on:after{content:'TABULE SE NAHRÁVÁ DO VIDEA';position:absolute;left:16px;bottom:16px;z-index:10;background:rgba(0,0,0,.68);color:#f4efe5;border:1px solid rgba(244,239,229,.22);border-radius:999px;padding:7px 11px;font-size:11px;font-weight:1000;letter-spacing:.08em;box-shadow:0 10px 28px rgba(0,0,0,.3)}
.studio-stage.whiteboard-on .studio-whiteboard-layer canvas{background:rgba(0,0,0,.03)}
.studio-stage.whiteboard-on .studio-rec-hud{right:16px;left:auto}
.studio-whiteboard-toolbar{top:60px!important;right:16px!important;border-radius:18px!important}
.trainer-notation-note{font-weight:700}

/* v7.58 AI text assistant */
.ai-assist-panel{margin-top:14px;border:1px solid rgba(148,163,184,.28);background:linear-gradient(180deg,rgba(15,23,42,.04),rgba(15,23,42,.02));border-radius:18px;padding:14px;box-shadow:0 12px 32px rgba(15,23,42,.06)}
.ai-assist-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.ai-assist-head strong{display:block}.ai-assist-head span:not(.badge){display:block;color:var(--muted);font-size:.86rem;margin-top:2px}.ai-assist-controls{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:10px;align-items:end}.ai-assist-controls .label{margin:0}.ai-run-btn{white-space:nowrap}.ai-assist-result{margin-top:12px;border-radius:14px;background:rgba(255,255,255,.62);border:1px solid rgba(148,163,184,.24);padding:12px;min-height:42px}.ai-assist-result.muted{color:var(--muted)}.ai-preview-text{min-height:150px}.ai-transcript-box{min-height:220px}.quiz-json{min-height:190px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.88rem}.quiz-preview-list{display:grid;gap:10px;margin-top:10px}.quiz-preview-item,.lesson-quiz-question{border:1px solid rgba(148,163,184,.24);border-radius:16px;padding:12px;background:rgba(255,255,255,.74)}.quiz-preview-item ol{margin:8px 0 0 22px}.quiz-preview-item li.is-answer{font-weight:800;color:var(--good,#15803d)}.lesson-quiz-block{display:grid;gap:14px}.lesson-quiz-options{display:grid;gap:8px;margin-top:10px}.quiz-option{text-align:left;border:1px solid rgba(148,163,184,.35);background:white;border-radius:14px;padding:10px 12px;cursor:pointer;transition:.15s transform,.15s border,.15s background}.quiz-option:hover{transform:translateY(-1px);border-color:rgba(59,130,246,.7)}.quiz-option.correct{background:rgba(34,197,94,.14);border-color:rgba(34,197,94,.75);font-weight:800}.quiz-option.wrong{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.75);font-weight:800}.quiz-explain{color:var(--muted);margin:10px 0 0}@media(max-width:980px){.ai-assist-controls{grid-template-columns:1fr}.ai-run-btn{width:100%}}

/* v7.59 AI lesson builder */
.ai-source-note{display:flex;flex-direction:column;gap:3px;margin:0 0 10px;border:1px solid rgba(59,130,246,.22);background:linear-gradient(135deg,rgba(59,130,246,.10),rgba(34,197,94,.06));border-radius:16px;padding:12px;color:var(--soft)}
.ai-source-note span{color:var(--muted);font-size:.92rem}.ai-lesson-builder-panel{border-color:rgba(59,130,246,.28);background:linear-gradient(180deg,rgba(59,130,246,.08),rgba(255,255,255,.62))}.ai-builder-callout{border-radius:14px;padding:10px 12px;background:rgba(15,23,42,.06);color:var(--soft);margin-bottom:12px}.ai-generated-blocks{display:grid;gap:10px;margin-top:12px}.ai-generated-block{border:1px solid rgba(148,163,184,.26);background:rgba(255,255,255,.76);border-radius:16px;padding:12px;display:grid;gap:5px}.ai-generated-block strong{font-size:1rem}.ai-generated-block p{margin:0;color:var(--muted);font-size:.92rem}.ai-lesson-preview>strong{font-size:1.05rem}.lesson-article h3,.lesson-article h4,.lesson-article h5{color:var(--ink);line-height:1.25;margin:1.1em 0 .35em}.lesson-article h3{font-size:1.45rem}.lesson-article h4{font-size:1.2rem}.lesson-article h5{font-size:1.05rem}.lesson-article p{margin:.55em 0}.lesson-article ul{margin:.65em 0 .9em 1.35em;color:var(--soft)}.lesson-code{background:#0f172a;color:#e5e7eb;border-radius:16px;padding:14px;overflow:auto;font-size:.92rem;line-height:1.55;box-shadow:inset 0 0 0 1px rgba(255,255,255,.07)}

/* v7.60 – lesson creator source form */
.lesson-builder-source{border:1px solid var(--line);border-radius:18px;padding:14px;background:rgba(255,255,255,.72);box-shadow:0 10px 28px rgba(15,23,42,.04);display:grid;gap:12px}
.lesson-builder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.compact-textarea{min-height:88px}
.lesson-builder-teaching{min-height:260px;font-size:15px;line-height:1.55}
.lesson-builder-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;border-top:1px dashed var(--line);padding-top:10px}
.lesson-builder-tools .bad{color:#b91c1c;font-weight:700}
.ai-lesson-builder-panel .ai-assist-head strong{font-size:1.05rem}
.ai-builder-callout{background:linear-gradient(135deg,rgba(59,130,246,.08),rgba(34,197,94,.08));border:1px solid rgba(37,99,235,.12);border-radius:14px;padding:10px 12px;color:var(--text)}
@media(max-width:760px){.lesson-builder-grid{grid-template-columns:1fr}.lesson-builder-teaching{min-height:220px}}


/* v7.62 lesson builder polish + media transcript */
.lesson-assets-box{border:1px dashed rgba(59,130,246,.28);border-radius:18px;padding:14px;background:rgba(59,130,246,.045);display:grid;gap:10px}
.lesson-asset-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-top:8px}
.lesson-asset-card{position:relative;border:1px solid rgba(148,163,184,.28);background:rgba(255,255,255,.78);border-radius:16px;padding:10px;display:grid;gap:8px;box-shadow:0 10px 24px rgba(15,23,42,.05)}
.lesson-asset-card img,.lesson-image-block img,.quiz-image img{width:100%;max-height:280px;object-fit:contain;border-radius:13px;border:1px solid rgba(148,163,184,.22);background:#fff}
.lesson-asset-card strong{font-size:.9rem;line-height:1.25;word-break:break-word}.lesson-asset-ref{position:absolute;top:8px;left:8px;border-radius:999px;background:#111827;color:white;font-weight:900;font-size:.76rem;padding:4px 8px;box-shadow:0 8px 18px rgba(0,0,0,.18)}
.asset-note{min-height:72px;font-size:.86rem}.lesson-image-block{display:grid;gap:14px}.lesson-image-block figure{margin:0;border:1px solid rgba(148,163,184,.24);border-radius:20px;background:rgba(255,255,255,.78);padding:14px}.lesson-image-block figcaption{margin-top:9px;color:var(--muted);font-size:.94rem}.quiz-image{margin:10px 0}.quiz-image img{max-height:220px}
.lesson-builder-transcribe{border:1px dashed rgba(37,99,235,.22);border-radius:16px;padding:12px;background:linear-gradient(180deg,rgba(59,130,246,.05),rgba(255,255,255,.78));display:grid;gap:8px}
.ai-builder-callout.soft{background:rgba(15,23,42,.045);border-color:rgba(148,163,184,.22);margin-bottom:0}
.file-btn{position:relative;overflow:hidden;cursor:pointer}
.file-btn input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}
.ai-generated-block .lesson-article{margin-top:6px;padding:10px 12px;border-radius:14px;background:rgba(248,250,252,.9);border:1px solid rgba(148,163,184,.18)}
.ai-generated-block .lesson-article h3,.ai-generated-block .lesson-article h4{margin-top:.45em}

/* v7.63 block flow + narration polish */
.block-flow-settings{margin:0 0 12px;padding:10px 12px;border:1px solid rgba(255,255,255,.10);border-radius:14px;background:rgba(20,24,31,.45)}
.block-flow-settings summary{cursor:pointer;font-weight:700;color:var(--text)}
.text-narration-box,.lesson-narration-player{margin-top:12px;padding:12px;border-radius:16px;border:1px solid rgba(255,255,255,.10);background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.025))}
.text-narration-box .lesson-builder-tools{margin-top:8px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.narration-list{display:grid;gap:8px;margin-top:10px}.narration-list audio{width:100%;margin-top:6px}.lesson-narration-player{display:flex;justify-content:space-between;gap:14px;align-items:center;margin:16px 0}.lesson-narration-player div{display:flex;flex-direction:column;gap:3px}.lesson-narration-player span{color:var(--muted);font-size:.9rem}.lesson-narration-player audio{min-width:260px;max-width:100%}.lesson-narration-player.is-muted{opacity:.62}.lesson-manual-continue{display:flex;justify-content:flex-end;margin-top:16px}.lesson-flow-block.is-complete .lesson-manual-continue{opacity:.55}
@media(max-width:720px){.lesson-narration-player{align-items:stretch;flex-direction:column}.lesson-narration-player audio{width:100%;min-width:0}.lesson-manual-continue{justify-content:stretch}.lesson-manual-continue .btn{width:100%}}

/* v7.64 Chapters / Course Outline */
.chapter-admin-list{display:grid;gap:14px;margin-top:12px}
.chapter-admin-group{border:1px solid rgba(244,239,229,.12);border-radius:18px;background:rgba(255,255,255,.025);padding:12px;display:grid;gap:10px}
.chapter-admin-head,.course-chapter-head{display:flex;align-items:center;gap:12px}.chapter-admin-head h3,.course-chapter-head h3{margin:0}.chapter-admin-head p,.course-chapter-head p{margin:3px 0 0;color:var(--muted);font-size:.9rem}.chapter-index,.course-chapter-head span{display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:linear-gradient(135deg,rgba(244,239,229,.16),rgba(255,255,255,.04));border:1px solid rgba(244,239,229,.18);font-weight:1000}.lesson-row-outline{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}.lesson-row-outline label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.compact-input{min-height:32px;padding:7px 9px;border-radius:10px;font-size:.86rem}.order-input{width:78px}.course-chapter-outline{display:grid;gap:14px;margin-top:12px}.course-chapter-card{border:1px solid rgba(244,239,229,.12);border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.018));padding:14px}.course-chapter-card .course-lessons{margin-top:12px}.lesson-course-outline{margin:16px 0;padding:16px;border:1px solid rgba(244,239,229,.12);border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.02))}.mini-chapter{margin-top:12px}.mini-chapter h3{margin:0 0 8px;font-size:1rem}.mini-chapter>div{display:flex;flex-wrap:wrap;gap:8px}.mini-lesson{border:1px solid rgba(244,239,229,.14);background:#101010;color:var(--white);border-radius:999px;padding:8px 12px;cursor:pointer;font-weight:850}.mini-lesson span{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:999px;margin-right:7px;background:rgba(244,239,229,.1);font-size:.76rem}.mini-lesson.active{border-color:rgba(134,239,172,.65);background:linear-gradient(135deg,rgba(34,197,94,.18),rgba(255,255,255,.05));box-shadow:0 0 0 4px rgba(34,197,94,.06)}
@media(max-width:760px){.chapter-admin-head,.course-chapter-head{align-items:flex-start}.lesson-row-outline{display:grid}.mini-chapter>div{display:grid}.mini-lesson{text-align:left;border-radius:14px}}

/* v7.65 lesson builder wizard */
.palette .lesson-builder-entry{grid-column:span 2;border-color:var(--white);background:linear-gradient(135deg,#1f1f1f,#0b0b0b)}
.lesson-builder-mode-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:4px 0 2px}
.lesson-builder-tab{border:1px solid var(--line2);background:#0b0b0b;color:var(--soft);border-radius:var(--radius);padding:12px 10px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.lesson-builder-tab.active{background:var(--white);border-color:var(--white);color:var(--black)}
.lesson-builder-mode-help{border:1px solid var(--line);background:#0e0e0e;border-radius:var(--radius);padding:12px;display:grid;gap:3px}
.lesson-builder-mode-help strong{color:var(--white);text-transform:uppercase;font-size:12px;letter-spacing:.08em}
.lesson-builder-mode-help span{color:var(--soft);font-size:14px;line-height:1.5}
.ai-builder-callout.soft{background:#101010;border:1px solid var(--line);color:var(--soft)}
.lesson-builder-main-run{min-height:44px}
.source-mode-video .lesson-builder-teaching,.source-mode-speech .lesson-builder-teaching{min-height:300px}
@media(max-width:760px){.palette .lesson-builder-entry{grid-column:auto}.lesson-builder-mode-tabs{grid-template-columns:1fr}}

/* v7.67 ZIP homework verification */
.lesson-zip-reference,.homework-zip-editor,.homework-zip-submit{border-color:rgba(34,197,94,.32);background:linear-gradient(135deg,rgba(34,197,94,.07),rgba(255,255,255,.025))}
.zip-manifest-card{border:1px solid rgba(148,163,184,.24);border-radius:16px;background:rgba(255,255,255,.045);padding:12px;display:grid;gap:6px;margin-top:8px}
.zip-manifest-card strong{word-break:break-word}.zip-manifest-card span{color:var(--muted);font-size:.9rem}.zip-manifest-card ul{margin:6px 0 0;padding-left:18px;max-height:220px;overflow:auto}.zip-manifest-card li{margin:3px 0}.zip-manifest-card code{font-size:.84rem}.homework-zip-editor{margin-top:12px;padding:12px;border-radius:16px;border:1px solid rgba(34,197,94,.24)}.homework-zip-submit{margin-top:14px;padding:14px;border-radius:18px;border:1px solid rgba(34,197,94,.28);display:grid;gap:10px}.homework-zip-submit.is-done{border-color:rgba(134,239,172,.6);box-shadow:0 0 0 4px rgba(34,197,94,.06)}.zip-submit-status{color:var(--muted);font-size:.94rem}.zip-submit-status .error{margin-top:4px}

/* v7.67 ZIP homework checklist tree */
.zip-tree{border:1px solid rgba(148,163,184,.18);border-radius:14px;background:rgba(2,6,23,.18);max-height:320px;overflow:auto;padding:6px;display:grid;gap:2px}
.zip-tree-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:start;gap:6px;padding:5px 7px;border-radius:10px;font-size:.9rem}
.zip-tree-row code{font-size:.86rem;white-space:normal;word-break:break-word;background:transparent;padding:0;color:var(--white)}
.zip-tree-row em{font-style:normal;font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.zip-tree-row small{grid-column:2/4;color:var(--muted);font-size:.78rem;line-height:1.35;word-break:break-word}
.zip-tree-row.zip-dir{opacity:.78}.zip-tree-row.zip-dir code{color:var(--soft);font-weight:700}.zip-tree-row.zip-ok{background:rgba(34,197,94,.08)}.zip-tree-row.zip-missing{background:rgba(239,68,68,.1)}.zip-tree-row.zip-changed{background:rgba(245,158,11,.11)}.zip-tree-row.zip-extra{background:rgba(59,130,246,.1)}
.zip-status{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:900;color:var(--muted);text-align:center}.zip-ok .zip-status,.zip-result-summary .zip-ok{color:#86efac}.zip-missing .zip-status,.zip-result-summary .zip-missing{color:#fca5a5}.zip-changed .zip-status,.zip-result-summary .zip-changed{color:#fcd34d}.zip-extra .zip-status,.zip-result-summary .zip-extra{color:#93c5fd}
.zip-tree-more{padding:8px 10px;color:var(--muted);font-size:.86rem}.zip-comparison-card{border:1px solid rgba(148,163,184,.22);border-radius:16px;padding:12px;background:rgba(255,255,255,.04);display:grid;gap:8px;color:var(--soft)}.zip-comparison-card>strong{color:var(--white)}.zip-comparison-card.is-ok{border-color:rgba(34,197,94,.34);background:rgba(34,197,94,.06)}.zip-comparison-card.is-error{border-color:rgba(245,158,11,.35);background:rgba(245,158,11,.06)}
.zip-result-summary{display:flex;flex-wrap:wrap;gap:7px}.zip-result-summary span{border:1px solid rgba(148,163,184,.22);border-radius:999px;padding:4px 8px;background:rgba(255,255,255,.04);font-size:.82rem;font-weight:800}

/* v7.68: lesson builder progress, ZIP gating and hierarchical course outline */
.ai-progress-card{border:1px solid rgba(244,239,229,.14);border-radius:18px;padding:14px;background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.02));display:grid;gap:10px}
.ai-progress-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--soft)}
.ai-progress-head strong{color:var(--white)}
.ai-progress-track{height:10px;border-radius:999px;background:rgba(244,239,229,.09);overflow:hidden;border:1px solid rgba(244,239,229,.08)}
.ai-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,rgba(134,239,172,.65),rgba(96,165,250,.75));transition:width .45s ease}
.ai-progress-card ol{margin:0;padding-left:20px;color:var(--muted);display:grid;gap:4px;font-size:.9rem}
.ai-progress-card li.done{color:var(--soft);font-weight:800}
.subchapter-admin-group{border:1px solid rgba(244,239,229,.09);border-radius:16px;background:rgba(0,0,0,.12);padding:10px;display:grid;gap:8px}
.subchapter-admin-head{display:flex;align-items:center;gap:10px;color:var(--soft)}
.subchapter-admin-head span{display:inline-grid;place-items:center;min-width:42px;height:28px;border-radius:999px;background:rgba(244,239,229,.08);font-weight:950}
.subchapter-admin-head small{color:var(--muted)}
.course-structure-editor{display:grid;gap:14px}.outline-admin-chapter{border:1px solid rgba(244,239,229,.12);border-radius:18px;padding:12px;background:rgba(255,255,255,.025);display:grid;gap:10px}.outline-admin-row{display:grid;grid-template-columns:auto minmax(220px,1fr) auto auto;gap:8px;align-items:end}.outline-admin-row label{display:grid;gap:5px;color:var(--muted);font-size:.78rem;text-transform:uppercase;font-weight:900;letter-spacing:.06em}.outline-admin-row.sub{grid-template-columns:52px minmax(200px,1fr) auto auto}.outline-admin-subchapter{margin-left:22px;border-left:2px solid rgba(244,239,229,.1);padding-left:12px;display:grid;gap:7px}.outline-admin-lessons{display:flex;flex-wrap:wrap;gap:6px}.outline-admin-lessons span{border:1px solid rgba(244,239,229,.1);border-radius:999px;padding:5px 9px;background:rgba(0,0,0,.16);color:var(--muted);font-size:.82rem}.course-subchapter{margin-top:12px;padding-left:12px;border-left:2px solid rgba(244,239,229,.12)}.course-subchapter h4,.mini-subchapter h4{margin:8px 0;color:var(--soft);font-size:.94rem}.mini-subchapter{margin-top:8px}.mini-subchapter>div{display:flex;flex-wrap:wrap;gap:8px}.btn[disabled],button[disabled]{opacity:.48;cursor:not-allowed;filter:grayscale(.35)}
@media(max-width:760px){.outline-admin-row,.outline-admin-row.sub{grid-template-columns:1fr}.outline-admin-subchapter{margin-left:0}.mini-subchapter>div{display:grid}.course-subchapter{padding-left:8px}}
.mini-chapter>.mini-subchapter{display:block}

/* v7.71 student homework readability fix */
.lesson-article h3,.lesson-article h4,.lesson-article h5{color:var(--white)}
.lesson-article strong{color:var(--white)}
.lesson-article code{color:var(--white);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:6px;padding:1px 5px}
.lesson-article ol{margin:.65em 0 .9em 1.35em;color:var(--soft)}
.homework-zip-submit .asset-tool-head strong,.zip-manifest-card strong{color:var(--white)}

/* v7.78 recursive course outline editor */
.course-structure-editor .row{align-items:flex-start}.outline-tree-root{display:grid;gap:12px;margin-top:12px}.outline-tree-wrap{display:grid;gap:6px;margin-left:calc(var(--depth,0) * 22px)}.outline-tree-node{border:1px solid rgba(244,239,229,.14);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));padding:10px;display:grid;gap:8px}.outline-tree-node.dragging{opacity:.55;border-style:dashed}.outline-node-head{display:grid;grid-template-columns:auto auto minmax(220px,1fr) auto auto auto auto auto;gap:8px;align-items:end}.outline-node-head label{display:grid;gap:5px}.outline-node-head small{color:var(--muted);font-size:.72rem;text-transform:uppercase;font-weight:950;letter-spacing:.06em}.outline-node-index{display:inline-grid;place-items:center;min-width:34px;height:34px;border-radius:999px;background:rgba(244,239,229,.1);border:1px solid rgba(244,239,229,.15);font-weight:1000}.outline-node-hint{font-size:.84rem;color:var(--muted)}.outline-node-hint code{color:var(--soft);background:rgba(0,0,0,.24);border:1px solid rgba(244,239,229,.1);border-radius:8px;padding:2px 6px}.outline-plus{border:1px solid rgba(134,239,172,.42);background:linear-gradient(135deg,rgba(34,197,94,.16),rgba(255,255,255,.04));color:#dcffe5;border-radius:999px;padding:8px 11px;font-weight:950;cursor:pointer;white-space:nowrap}.outline-plus:hover{border-color:rgba(134,239,172,.72);box-shadow:0 0 0 4px rgba(34,197,94,.08)}.outline-dropzone{border:1px dashed rgba(244,239,229,.22);border-radius:14px;color:var(--muted);background:rgba(255,255,255,.025);padding:7px 10px;font-size:.82rem;font-weight:900;text-align:center;transition:.15s ease}.outline-dropzone.inside{background:rgba(34,197,94,.06);border-color:rgba(134,239,172,.28);color:#d7ffd8}.outline-dropzone.active{background:rgba(255,204,72,.18);border-color:rgba(255,204,72,.75);color:#fff2ba;transform:scale(1.01)}.outline-lesson-stack{display:grid;gap:6px}.outline-lesson-item{display:grid;grid-template-columns:auto minmax(180px,1fr) auto auto;gap:8px;align-items:center;border:1px solid rgba(244,239,229,.12);border-radius:14px;background:rgba(0,0,0,.16);padding:8px;cursor:grab}.outline-lesson-item.dragging{opacity:.55}.outline-lesson-item span{display:grid;place-items:center;width:26px;height:26px;border-radius:999px;background:rgba(244,239,229,.09);font-weight:950}.outline-lesson-item small{color:var(--muted)}.outline-tree-children{display:grid;gap:8px}.outline-path-input{min-width:280px}.course-chapter-outline.tree{display:grid;gap:12px}.course-outline-node{border:1px solid rgba(244,239,229,.12);border-radius:18px;background:rgba(255,255,255,.025);padding:12px;margin-top:10px}.course-outline-node.depth-0{background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018))}.course-outline-node-head{display:flex;align-items:center;gap:10px}.course-outline-node-head span{display:grid;place-items:center;width:32px;height:32px;border-radius:999px;background:rgba(244,239,229,.1);font-weight:1000}.course-outline-node-head h3{margin:0}.course-outline-node-head p{margin:2px 0 0;color:var(--muted);font-size:.86rem}.course-outline-children{border-left:2px solid rgba(244,239,229,.1);margin-left:16px;padding-left:10px}.mini-outline-node{margin-top:10px;border-left:2px solid rgba(244,239,229,.1);padding-left:10px}.mini-outline-node.depth-0{border-left:0;padding-left:0}.mini-outline-node h3{margin:0 0 7px;font-size:.95rem;color:var(--soft)}.mini-outline-node>div{display:flex;flex-wrap:wrap;gap:8px}
@media(max-width:900px){.outline-node-head{grid-template-columns:auto auto 1fr}.outline-node-head .btn,.outline-node-head .outline-plus{grid-column:auto}.outline-tree-wrap{margin-left:calc(var(--depth,0) * 10px)}.outline-lesson-item{grid-template-columns:auto 1fr}.outline-lesson-item .btn{grid-column:1/-1}.outline-path-input{min-width:0;width:100%}}

/* v7.79 – cleaned outline editor */
.course-structure-editor.clean{display:grid;gap:16px}
.outline-clean-top{align-items:flex-start;border-bottom:1px solid rgba(244,239,229,.1);padding-bottom:12px}
.outline-clean-root{display:grid;gap:14px;margin-top:4px}
.outline-clean-node{display:grid;gap:6px;margin-left:calc(var(--depth,0) * 24px)}
.outline-clean-card{border:1px solid rgba(244,239,229,.13);border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));padding:12px;display:grid;gap:10px}
.outline-clean-node.depth-0>.outline-clean-card{border-color:rgba(255,204,72,.18);background:linear-gradient(180deg,rgba(255,204,72,.07),rgba(255,255,255,.018))}
.outline-clean-card.dragging{opacity:.55;border-style:dashed}.outline-clean-head{display:grid;grid-template-columns:auto auto minmax(240px,1fr) auto;gap:10px;align-items:end}.outline-title-field,.outline-number-field{display:grid;gap:5px}.outline-number-field{width:88px}.outline-title-field small,.outline-number-field small{color:var(--muted);font-size:.72rem;text-transform:uppercase;font-weight:950;letter-spacing:.06em}.outline-clean-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.outline-plus.main{font-size:.95rem;padding:10px 14px}.outline-plus.lesson{border-color:rgba(96,165,250,.42);background:linear-gradient(135deg,rgba(59,130,246,.16),rgba(255,255,255,.04));color:#e2efff}.outline-clean-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:var(--muted);font-size:.84rem}.outline-clean-meta code{color:var(--soft);background:rgba(0,0,0,.24);border:1px solid rgba(244,239,229,.1);border-radius:999px;padding:3px 8px}.outline-clean-meta span{border:1px solid rgba(244,239,229,.1);background:rgba(255,255,255,.035);border-radius:999px;padding:3px 8px}.outline-clean-drop{border:1px dashed rgba(244,239,229,.2);border-radius:14px;color:var(--muted);background:rgba(255,255,255,.02);padding:8px 10px;font-size:.82rem;font-weight:900;text-align:center;transition:.15s ease}.outline-clean-drop.inside{background:rgba(34,197,94,.06);border-color:rgba(134,239,172,.32);color:#d7ffd8}.outline-clean-drop.before,.outline-clean-drop.after{opacity:.72}.outline-clean-drop.active{background:rgba(255,204,72,.2);border-color:rgba(255,204,72,.78);color:#fff2ba;transform:scale(1.01);opacity:1}.outline-clean-children{display:grid;gap:10px;border-left:2px solid rgba(244,239,229,.1);padding-left:12px;margin-left:10px}.outline-empty-note{border:1px dashed rgba(244,239,229,.14);border-radius:14px;color:var(--muted);padding:10px;background:rgba(0,0,0,.12)}.outline-empty-state{border:1px dashed rgba(244,239,229,.16);border-radius:20px;background:rgba(255,255,255,.025);padding:18px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}.outline-empty-state h3{width:100%;margin:0}.outline-empty-state p{width:100%;margin:0;color:var(--muted)}
@media(max-width:900px){.outline-clean-head{grid-template-columns:auto auto 1fr}.outline-clean-actions{grid-column:1/-1;justify-content:flex-start}.outline-clean-node{margin-left:calc(var(--depth,0) * 10px)}.outline-number-field{width:76px}}
.lesson-quick-list{padding:0;overflow:hidden}.lesson-quick-list summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px}.lesson-quick-list summary::-webkit-details-marker{display:none}.lesson-quick-list[open]{padding-bottom:14px}.lesson-quick-list[open] .chapter-admin-list{padding:0 14px 14px}.lesson-quick-list summary:after{content:'rozbalit';color:var(--muted);font-size:.8rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.lesson-quick-list[open] summary:after{content:'skrýt'}

/* v7.80: simple outline editor */
.course-structure-editor.simple{display:grid;gap:14px}
.outline-simple-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;border-bottom:1px solid rgba(244,239,229,.1);padding-bottom:12px}
.outline-simple-top h2{margin:0 0 4px}.outline-simple-top p{margin:0;color:var(--muted);max-width:760px}
.outline-simple-root{display:grid;gap:6px}
.outline-simple-node{display:grid;gap:4px}
.outline-simple-row{margin-left:calc(var(--depth,0) * 26px);display:grid;grid-template-columns:auto minmax(220px,1fr) auto;gap:8px;align-items:center;border:1px solid rgba(244,239,229,.12);border-radius:14px;background:rgba(255,255,255,.025);padding:8px 10px}
.outline-simple-row.node.depth-0{background:linear-gradient(180deg,rgba(255,204,72,.07),rgba(255,255,255,.02));border-color:rgba(255,204,72,.2)}
.outline-simple-row.lesson{grid-template-columns:auto minmax(220px,1fr) auto;background:rgba(0,0,0,.14);border-style:dashed}
.outline-simple-index,.outline-simple-icon{display:grid;place-items:center;min-width:32px;height:32px;border-radius:999px;background:rgba(244,239,229,.09);border:1px solid rgba(244,239,229,.1);font-weight:1000;color:var(--soft)}
.outline-simple-input{font-weight:900;background:rgba(0,0,0,.12)}
.outline-simple-title{display:grid;gap:2px}.outline-simple-title small{color:var(--muted);font-size:.78rem}
.outline-simple-actions{display:flex;gap:6px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.outline-simple-actions .compact-btn{padding:7px 9px}.outline-simple-actions .outline-plus{padding:7px 10px}
.outline-simple-children{display:grid;gap:4px}.course-structure-editor.simple .outline-empty-state{margin-top:4px}
@media(max-width:900px){.outline-simple-top{display:grid}.outline-simple-row{grid-template-columns:auto 1fr;margin-left:calc(var(--depth,0) * 12px)}.outline-simple-actions{grid-column:1/-1;justify-content:flex-start}.outline-simple-row.lesson{grid-template-columns:auto 1fr}.outline-simple-input{min-width:0}}
/* v7.81 – cleaner universal quick outline tree */
.course-structure-editor.simple .outline-simple-root{gap:8px}
.course-structure-editor.simple .outline-simple-row{border-radius:12px;padding:8px 10px}
.course-structure-editor.simple .outline-simple-row.node{background:rgba(255,255,255,.035)}
.course-structure-editor.simple .outline-simple-row.node.depth-0{background:linear-gradient(180deg,rgba(255,204,72,.09),rgba(255,255,255,.025))}
.course-structure-editor.simple .outline-simple-row.lesson{background:rgba(0,0,0,.18);border-style:solid;border-color:rgba(244,239,229,.1)}
.outline-move-select{min-width:150px;max-width:230px;padding:7px 9px;font-size:.82rem}
.outline-simple-title strong{font-weight:900;color:var(--soft)}
.outline-simple-title small{line-height:1.25}
@media(max-width:900px){.outline-move-select{width:100%;max-width:none}.course-structure-editor.simple .outline-simple-actions{align-items:stretch}.course-structure-editor.simple .outline-simple-actions button{width:auto}}

/* v7.84 – cleaner quiz editor + outline numbering */
.quiz-editor-ui{display:grid;gap:14px}.quiz-editor-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.quiz-question-editor-list{display:grid;gap:12px}.quiz-question-editor{border:1px solid rgba(148,163,184,.28);background:rgba(255,255,255,.72);border-radius:18px;padding:14px;display:grid;gap:10px}.quiz-question-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.quiz-question-text{min-height:70px}.quiz-explanation-text{min-height:62px}.quiz-options-edit-list{display:grid;gap:8px}.quiz-option-edit{display:grid;grid-template-columns:auto minmax(160px,1fr) auto;gap:8px;align-items:center;border:1px solid rgba(148,163,184,.22);background:rgba(255,255,255,.68);border-radius:14px;padding:8px}.quiz-option-edit.is-correct{border-color:rgba(34,197,94,.56);background:rgba(34,197,94,.09)}.quiz-answer-radio{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:900;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.quiz-answer-radio input{accent-color:var(--good,#16a34a)}.quiz-json-details{border:1px dashed rgba(148,163,184,.32);border-radius:14px;padding:10px;background:rgba(255,255,255,.48)}.quiz-json-details summary{cursor:pointer;font-weight:900;color:var(--muted)}.public-lesson-titleline{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.outline-lesson-number{display:inline-grid;place-items:center;min-width:34px;height:26px;border-radius:999px;background:rgba(244,239,229,.1);border:1px solid rgba(244,239,229,.14);color:var(--soft);font-size:.82rem;font-weight:1000;padding:0 8px}.mini-outline-number{display:inline-grid;place-items:center;min-width:30px;height:24px;border-radius:999px;background:rgba(244,239,229,.1);border:1px solid rgba(244,239,229,.12);color:var(--soft);font-size:.78rem;font-weight:1000;margin-right:8px;padding:0 7px}.mini-lesson span{min-width:30px;width:auto;padding:0 6px}.outline-simple-row.lesson .outline-simple-icon{min-width:42px;width:auto;padding:0 8px;font-size:.8rem}
@media(max-width:720px){.quiz-question-head{display:grid}.quiz-option-edit{grid-template-columns:1fr}.quiz-answer-radio{justify-content:flex-start}.quiz-editor-toolbar{display:grid}.public-lesson-titleline{align-items:flex-start}}

/* v7.86 homework/manual assignment polish */
.rich-editor-shell{border:1px solid rgba(244,244,244,.14);background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));border-radius:var(--radius);padding:14px;display:grid;gap:12px;margin-bottom:12px}
.rich-editor-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.rich-editor-head strong{display:block;font-size:1rem}.rich-editor-head span{display:block;color:var(--muted);font-size:.88rem;margin-top:3px;line-height:1.4}
.rich-editor-tools{display:flex;flex-wrap:wrap;gap:8px}.rich-editor-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start}.rich-editor-input{min-height:260px;border:1px solid var(--line2);background:#0b0b0b;color:var(--white);padding:14px;border-radius:var(--radius);white-space:pre-wrap;line-height:1.55}.rich-editor-input:empty:before{content:attr(data-placeholder);color:var(--muted)}
.rich-editor-preview{min-height:260px;border:1px solid rgba(244,244,244,.13);background:rgba(0,0,0,.18);border-radius:var(--radius);padding:16px;overflow:auto}.homework-rich-editor{border-color:rgba(244,244,244,.22)}
.lesson-article{line-height:1.72}.lesson-article h3,.lesson-article h4,.lesson-article h5,.lesson-article .lesson-task-heading{color:var(--white);letter-spacing:-.015em}.lesson-article .lesson-task-heading{display:flex;align-items:center;gap:8px;margin-top:1.05em;margin-bottom:.4em;font-size:1.08rem;text-transform:none}.lesson-article .lesson-task-heading:before{content:"";width:8px;height:8px;border:1px solid var(--white);background:var(--white);display:inline-block}.lesson-article p{color:var(--soft)}.lesson-article ul,.lesson-article ol{padding-left:1.25rem;color:var(--soft)}.lesson-article li{margin:.38em 0;padding-left:.15rem}.lesson-article li::marker{color:var(--white);font-weight:900}.lesson-article li.task-li{list-style:none;position:relative}.lesson-article li.task-li:before{content:"✓";position:absolute;left:-1.25rem;color:var(--white);font-weight:1000}.lesson-article code{color:var(--white);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:6px;padding:1px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.lesson-code{background:#050505;color:#f4f4f4;border:1px solid rgba(255,255,255,.18);border-radius:var(--radius);padding:15px 16px;overflow:auto;font-size:.94rem;line-height:1.58;box-shadow:inset 0 0 0 1px rgba(255,255,255,.045)}.lesson-code code{background:transparent;border:0;padding:0;color:inherit}.lesson-code.auto-code{border-left:4px solid var(--white)}
@media(max-width:940px){.rich-editor-grid{grid-template-columns:1fr}.rich-editor-input,.rich-editor-preview{min-height:190px}}

/* v7.87 – AI-polished homework layout */
.homework-polish-status{min-height:18px;color:var(--muted);font-size:.9rem;line-height:1.4}
.homework-polish-status.bad{color:#fecaca}
.lesson-article.homework-article{display:grid;gap:12px}
.homework-section-card{border:1px solid rgba(244,239,229,.14);background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));border-radius:18px;padding:14px 16px;box-shadow:0 10px 28px rgba(0,0,0,.12)}
.homework-section-card .lesson-task-heading{margin-top:0!important;padding-bottom:8px;border-bottom:1px solid rgba(244,239,229,.12)}
.homework-section-card p:last-child,.homework-section-card ul:last-child,.homework-section-card ol:last-child,.homework-section-card pre:last-child{margin-bottom:0}
.homework-section-card ul,.homework-section-card ol{margin-top:8px;margin-bottom:8px}
.homework-section-card .lesson-code{margin-top:10px;margin-bottom:10px}
.rich-editor-preview.homework-article{gap:10px}
.rich-editor-tools .btn.secondary{box-shadow:0 10px 24px rgba(255,204,72,.12)}

/* v7.88 – herní kvízy */
.game-quiz-editor{display:grid;gap:14px}.game-quiz-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border:1px solid rgba(148,163,184,.24);background:rgba(255,255,255,.66);border-radius:18px;padding:14px}.game-quiz-head strong{display:block}.game-quiz-head span:not(.badge){display:block;color:var(--muted);font-size:.9rem;margin-top:3px}.game-quiz-controls{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:10px;align-items:end}.game-quiz-source{min-height:130px}.game-editor-section{border:1px solid rgba(148,163,184,.24);background:rgba(255,255,255,.62);border-radius:18px;padding:14px;display:grid;gap:10px}.game-crossword-edit{display:grid;gap:8px}.game-crossword-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(120px,.45fr) auto;gap:8px;align-items:center}.risk-edit-category{border:1px solid rgba(148,163,184,.22);background:rgba(255,255,255,.65);border-radius:16px;padding:12px;display:grid;gap:8px}.risk-edit-item{display:grid;grid-template-columns:90px minmax(180px,1fr) minmax(150px,.8fr) auto;gap:8px;align-items:center}.game-quiz{border:1px solid rgba(148,163,184,.24);border-radius:22px;padding:16px;background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(248,250,252,.78));display:grid;gap:14px}.game-title{display:flex;align-items:center;gap:10px;font-size:1.05rem}.game-title span{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:rgba(15,23,42,.08)}.millionaire-question{border:1px solid rgba(148,163,184,.24);border-radius:18px;padding:14px;background:rgba(255,255,255,.72);display:grid;gap:10px}.millionaire-level{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:999px;background:rgba(245,158,11,.16);color:#92400e;font-weight:1000}.millionaire-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.crossword-list{display:grid;gap:10px}.crossword-clue{display:grid;grid-template-columns:minmax(180px,1fr) minmax(150px,.45fr);gap:10px;align-items:center;border:1px solid rgba(148,163,184,.22);background:rgba(255,255,255,.7);border-radius:14px;padding:10px}.crossword-clue input.correct{border-color:rgba(34,197,94,.7);background:rgba(34,197,94,.1);font-weight:900}.risk-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.risk-category{display:grid;gap:8px}.risk-category>strong{text-align:center;border-radius:14px;background:rgba(15,23,42,.08);padding:9px}.risk-card{min-height:84px;border:1px solid rgba(59,130,246,.28);border-radius:16px;background:rgba(59,130,246,.08);padding:10px;text-align:left;cursor:pointer;display:grid;gap:6px}.risk-card span{font-weight:1000;color:#1d4ed8}.risk-card em{font-style:normal;font-size:.9rem}.risk-card b{display:block;color:var(--good,#15803d)}.risk-card.revealed{background:rgba(34,197,94,.1);border-color:rgba(34,197,94,.45)}@media(max-width:720px){.game-quiz-controls,.game-crossword-row,.risk-edit-item,.crossword-clue{grid-template-columns:1fr}.millionaire-options{grid-template-columns:1fr}}

/* v7.89 – quiz code formatting helpers */
.quiz-format-tools{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:4px 0 6px}.quiz-format-tools .mini-btn{padding:5px 8px;font-size:.76rem;border-radius:999px}.quiz-option-input-wrap{display:grid;gap:4px}.quiz-option-edit{grid-template-columns:auto minmax(160px,1fr) auto}.quiz-rich-text{display:inline-block;max-width:100%;vertical-align:middle}.quiz-rich-text p{margin:0}.quiz-rich-text pre.lesson-code{margin:6px 0;white-space:pre-wrap}.quiz-rich-single code,.quiz-option code,.quiz-preview-item code,.lesson-quiz-question code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;background:rgba(15,23,42,.08);border:1px solid rgba(148,163,184,.28);border-radius:7px;padding:1px 5px;color:#0f172a;font-weight:800}.lesson-quiz-question-title,.quiz-preview-question{display:flex;gap:8px;align-items:flex-start}.lesson-quiz-question-title .quiz-rich-text,.quiz-preview-question .quiz-rich-text{display:block}.quiz-explain-preview{margin-top:8px;color:var(--muted)}.quiz-explain pre.lesson-code,.quiz-explain-preview pre.lesson-code{margin-top:8px}.quiz-option .quiz-rich-text{display:inline}.quiz-option span{pointer-events:none}

/* v7.90 – závěrečný test z kapitoly */
.finaltest-editor{display:grid;gap:14px}
.finaltest-admin-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border:1px solid rgba(148,163,184,.24);background:rgba(255,255,255,.66);border-radius:18px;padding:14px}
.finaltest-admin-head strong{display:block;font-size:1.05rem}.finaltest-admin-head span:not(.badge){display:block;color:var(--muted);font-size:.9rem;margin-top:3px;line-height:1.45}
.finaltest-settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;align-items:end;border:1px solid rgba(148,163,184,.22);background:rgba(255,255,255,.58);border-radius:18px;padding:14px}
.finaltest-grades{border:1px dashed rgba(148,163,184,.34);border-radius:16px;padding:12px;background:rgba(255,255,255,.5)}
.finaltest-grades summary{cursor:pointer;font-weight:900;color:var(--muted);margin-bottom:8px}.finaltest-grade-list{display:grid;gap:8px;margin:8px 0}
.finaltest-grade-row{display:grid;grid-template-columns:minmax(80px,.35fr) 110px auto auto;gap:8px;align-items:center}.finaltest-grade-row span{color:var(--muted);font-weight:800;font-size:.86rem}
.finaltest-import-tools{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.outline-simple-row.node .btn.secondary.compact-btn{white-space:nowrap}
.finaltest-student{border:1px solid rgba(148,163,184,.26);background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(248,250,252,.82));border-radius:24px;padding:18px;display:grid;gap:14px;color:#0f172a}
.finaltest-hero{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-bottom:1px solid rgba(15,23,42,.09);padding-bottom:12px}.finaltest-hero strong{display:block;font-size:1.12rem}.finaltest-hero span{display:block;color:#475569;font-weight:700;margin-top:4px;font-size:.92rem}
.finaltest-timer{display:inline-grid;place-items:center;min-width:86px;height:38px;border-radius:999px;background:#0f172a;color:white;font-weight:1000;letter-spacing:.03em;padding:0 12px}.finaltest-grade-scale{display:flex;flex-wrap:wrap;gap:6px}.finaltest-grade-scale span{border:1px solid rgba(15,23,42,.1);background:rgba(15,23,42,.05);border-radius:999px;padding:5px 9px;font-size:.78rem;font-weight:900;color:#334155}
.finaltest-questions{display:grid;gap:12px}.finaltest-question{border:1px solid rgba(148,163,184,.32);background:rgba(255,255,255,.78);border-radius:18px;padding:14px;display:grid;gap:10px}.finaltest-question.is-correct{border-color:rgba(34,197,94,.58);background:rgba(34,197,94,.08)}.finaltest-question.is-wrong{border-color:rgba(239,68,68,.58);background:rgba(239,68,68,.07)}
.finaltest-options{display:grid;gap:8px}.finaltest-option{display:flex;gap:9px;align-items:flex-start;border:1px solid rgba(148,163,184,.28);background:rgba(255,255,255,.78);border-radius:14px;padding:10px 12px;cursor:pointer}.finaltest-option input{margin-top:3px}.finaltest-option.correct{border-color:rgba(34,197,94,.65);background:rgba(34,197,94,.12);font-weight:900}.finaltest-option.wrong{border-color:rgba(239,68,68,.65);background:rgba(239,68,68,.12);font-weight:900}.finaltest-source{color:#64748b;font-weight:800}.finaltest-submit{justify-self:start}.finaltest-result{min-height:10px}.finaltest-score{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border:1px solid rgba(15,23,42,.1);background:rgba(15,23,42,.05);border-radius:16px;padding:12px 14px}.finaltest-score strong{font-size:1.4rem}.finaltest-score span{font-weight:900;color:#334155}
@media(max-width:760px){.finaltest-admin-head,.finaltest-hero{display:grid}.finaltest-grade-row{grid-template-columns:1fr 100px}.finaltest-grade-row span{grid-column:1/-1}.finaltest-settings-grid{grid-template-columns:1fr}}

/* v7.92 – jednotný minimalistický vizuál testů */
.lesson-quiz-block,
.game-quiz,
.finaltest-student{
  --quiz-bg:#ffffff;
  --quiz-ink:#0f172a;
  --quiz-muted:#64748b;
  --quiz-line:#d7dde6;
  --quiz-line-strong:#0f172a;
  --quiz-soft:#f8fafc;
  color:var(--quiz-ink);
}
.lesson-quiz-block{display:grid;gap:12px}
.quiz-preview-item,
.lesson-quiz-question,
.millionaire-question,
.finaltest-question{
  border:1px solid var(--quiz-line,#d7dde6)!important;
  border-radius:8px!important;
  background:var(--quiz-bg,#ffffff)!important;
  color:var(--quiz-ink,#0f172a)!important;
  box-shadow:none!important;
  padding:14px!important;
}
.lesson-quiz-question-title,
.quiz-preview-question,
.finaltest-question .lesson-quiz-question-title,
.millionaire-question .lesson-quiz-question-title{
  color:var(--quiz-ink,#0f172a)!important;
  font-weight:900;
}
.quiz-preview-item,
.quiz-preview-item p,
.lesson-quiz-question p,
.millionaire-question p,
.finaltest-question p,
.quiz-rich-text,
.quiz-rich-text p{
  color:var(--quiz-ink,#0f172a)!important;
}
.lesson-quiz-options,
.millionaire-options,
.finaltest-options{display:grid;gap:8px;margin-top:10px}
.quiz-option,
.finaltest-option{
  border:1px solid var(--quiz-line,#d7dde6)!important;
  border-radius:6px!important;
  background:#fff!important;
  color:var(--quiz-ink,#0f172a)!important;
  box-shadow:none!important;
  transition:border-color .12s ease,transform .12s ease,background .12s ease!important;
}
.quiz-option:hover:not(:disabled),
.finaltest-option:hover{border-color:var(--quiz-line-strong,#0f172a)!important;transform:translateY(-1px)}
.quiz-option:disabled{opacity:1!important;color:var(--quiz-ink,#0f172a)!important;cursor:default!important;filter:none!important}
.quiz-option.correct,
.finaltest-option.correct{
  background:#fff!important;
  border-color:#16a34a!important;
  box-shadow:inset 4px 0 0 #16a34a!important;
  font-weight:900;
}
.quiz-option.wrong,
.finaltest-option.wrong{
  background:#fff!important;
  border-color:#dc2626!important;
  box-shadow:inset 4px 0 0 #dc2626!important;
  font-weight:900;
}
.quiz-explain,
.quiz-explain-preview,
.finaltest-source{
  color:var(--quiz-muted,#64748b)!important;
}
.quiz-preview-item ol{margin:10px 0 0 24px;color:var(--quiz-ink,#0f172a)}
.quiz-preview-item li{padding:3px 0}.quiz-preview-item li.is-answer{color:#15803d!important;font-weight:900}

.finaltest-student,
.game-quiz{
  border:1px solid var(--quiz-line,#d7dde6)!important;
  border-radius:8px!important;
  background:#fff!important;
  box-shadow:none!important;
  padding:16px!important;
}
.finaltest-hero{border-bottom:1px solid var(--quiz-line,#d7dde6)!important}.finaltest-hero strong{color:var(--quiz-ink,#0f172a)!important}.finaltest-hero span{color:var(--quiz-muted,#64748b)!important}
.finaltest-timer{border-radius:6px!important;background:#0f172a!important;color:#fff!important;box-shadow:none!important}
.finaltest-grade-scale span{border-radius:4px!important;background:#fff!important;border:1px solid var(--quiz-line,#d7dde6)!important;color:#334155!important}
.finaltest-question.is-correct,
.finaltest-question.is-wrong{
  background:#fff!important;
  box-shadow:none!important;
}
.finaltest-question.is-correct{border-color:#16a34a!important;box-shadow:inset 4px 0 0 #16a34a!important}
.finaltest-question.is-wrong{border-color:#dc2626!important;box-shadow:inset 4px 0 0 #dc2626!important}
.finaltest-score{border-radius:8px!important;background:#fff!important;border:1px solid var(--quiz-line,#d7dde6)!important;color:var(--quiz-ink,#0f172a)!important}

.game-title{color:var(--quiz-ink,#0f172a)!important}.game-title span{border-radius:6px!important;background:#f8fafc!important;border:1px solid var(--quiz-line,#d7dde6)!important;color:var(--quiz-ink,#0f172a)!important}
.millionaire-level{border-radius:6px!important;background:#fff!important;color:#0f172a!important;border:1px solid var(--quiz-line,#d7dde6)!important}
.crossword-clue,
.risk-category>strong,
.risk-card{
  border:1px solid var(--quiz-line,#d7dde6)!important;
  border-radius:6px!important;
  background:#fff!important;
  color:var(--quiz-ink,#0f172a)!important;
  box-shadow:none!important;
}
.risk-card span{color:#0f172a!important}.risk-card.revealed{background:#fff!important;border-color:#16a34a!important;box-shadow:inset 4px 0 0 #16a34a!important}.risk-card b{color:#15803d!important}
.crossword-clue input.correct{background:#fff!important;border-color:#16a34a!important;box-shadow:inset 4px 0 0 #16a34a!important;color:#0f172a!important}

.quiz-rich-single code,
.quiz-option code,
.quiz-preview-item code,
.lesson-quiz-question code,
.finaltest-question code,
.millionaire-question code{
  border-radius:4px!important;
  background:#f1f5f9!important;
  border:1px solid #d7dde6!important;
  color:#0f172a!important;
}
.quiz-rich-text pre.lesson-code,
.quiz-explain pre.lesson-code,
.quiz-explain-preview pre.lesson-code,
.finaltest-question pre.lesson-code,
.millionaire-question pre.lesson-code{
  border-radius:6px!important;
  border:1px solid #111827!important;
  background:#050505!important;
  color:#f8fafc!important;
}

/* v7.93 automatic pricing / XP */
.auto-course-summary{border:1px solid var(--line);background:#fff}
.auto-course-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}
.auto-course-panel.compact{grid-template-columns:1fr;margin:12px 0 0}
.auto-course-panel>div,.auto-lesson-panel,.auto-readonly-box{border:1px solid var(--line);background:#fbfaf8;padding:12px;border-radius:8px}
.auto-course-panel strong{display:block;font-size:1.35rem;margin:4px 0;color:var(--text)}
.auto-course-panel small,.auto-lesson-panel small,.auto-readonly-box small{display:block;color:var(--muted);line-height:1.35}
.auto-lesson-panel{display:grid;gap:10px;margin-bottom:6px}
.auto-lesson-panel .badge.paid{background:#f8efe2;color:#7a4208;border-color:#ead2ae}
.auto-readonly-box strong{display:block;margin-bottom:4px}.auto-readonly-box span{display:block;font-weight:700;margin-bottom:4px}
@media(max-width:900px){.auto-course-panel{grid-template-columns:1fr}}

/* v8.05: categorized top navigation */
.nav-group{position:relative;display:flex;align-items:center}.nav-group>button:after{content:" ▾";color:var(--muted);font-size:10px}.nav-group.active>button{background:var(--tile2);color:var(--white);border-color:var(--line)}.nav-drop{position:absolute;top:100%;left:0;min-width:190px;border:1px solid var(--line);background:rgba(12,12,12,.98);box-shadow:var(--shadow);display:none;padding:6px;z-index:120}.nav-group:hover .nav-drop,.nav-group:focus-within .nav-drop{display:grid;gap:4px}.topnav .nav-drop button,.topnav .nav-drop a{display:block;width:100%;text-align:left;border:1px solid transparent;padding:11px 12px;background:transparent;color:var(--soft);text-decoration:none;text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.08em}.topnav .nav-drop button:hover,.topnav .nav-drop button.active,.topnav .nav-drop a:hover,.topnav .nav-drop a.active{background:var(--tile2);border-color:var(--line);color:var(--white)}.menu-section{margin-top:14px}.menu-section h3{font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0 0 8px}
.nav-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;margin-left:6px;border-radius:999px;background:var(--white);color:var(--black);font-size:11px;font-weight:1000}.notification-card.unread{border-color:rgba(244,239,229,.34);background:linear-gradient(135deg,rgba(244,239,229,.08),rgba(255,255,255,.02))}.notification-card.read{opacity:.82}.notification-card .row{align-items:flex-start}

/* v8.09 profile dropdown: stejná logika jako ostatní horní kategorie */
.actions .account-nav{position:relative;display:flex;align-items:center}
.actions .account-nav .profile-chip{min-width:190px}
.actions .account-nav>.profile-chip:after{content:""}
.actions .account-nav .profile-drop{right:0;left:auto;min-width:230px}
.actions .account-nav .profile-drop button{display:block;width:100%;text-align:left;border:1px solid transparent;padding:11px 12px;background:transparent;color:var(--soft);border-radius:var(--radius);text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.08em}
.actions .account-nav .profile-drop button small{display:block;margin-top:4px;color:var(--muted);font-size:10px;line-height:1.35;text-transform:none;letter-spacing:.02em;font-weight:800}
.actions .account-nav .profile-drop button:hover,.actions .account-nav .profile-drop button.active{background:var(--tile2);border-color:var(--line);color:var(--white)}
@media(max-width:1060px){.actions .account-nav{display:none}}

/* v8.26 shared profile panels for level, currency and social outside Zapařeno. */
.platform-profile-modal{position:fixed;inset:0;z-index:160;display:grid;place-items:center;padding:24px}.platform-profile-modal__backdrop{position:absolute;inset:0;border:0;background:rgba(0,0,0,.74);backdrop-filter:blur(16px)}.platform-profile-card{position:relative;z-index:1;width:min(1180px,100%);border:1px solid var(--line);background:rgba(12,12,12,.98);color:var(--white);box-shadow:var(--shadow);border-radius:var(--radius);overflow:hidden}.platform-profile-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px;border-bottom:1px solid var(--line)}.platform-profile-head p,.platform-profile-head h2{margin:0}.platform-profile-head p{color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.platform-profile-head h2{margin-top:4px;font-size:24px}.platform-profile-head small{display:block;margin-top:4px;color:var(--muted)}.platform-profile-head button{width:40px;height:40px;border:1px solid var(--line2);background:transparent;color:var(--white);font-size:22px;border-radius:var(--radius)}.platform-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:18px}.platform-profile-grid article{min-height:140px;padding:14px;border:1px solid var(--line);background:#111;border-radius:var(--radius)}.platform-profile-grid span,.platform-profile-grid small{display:block;color:var(--muted)}.platform-profile-grid span{font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.platform-profile-grid strong{display:block;margin-top:8px;font-size:18px}.platform-profile-grid small{margin-top:8px;line-height:1.45}.platform-profile-grid .btn{margin-top:4px;padding:9px 12px}.platform-profile-embed{display:block;width:100%;height:min(78dvh,760px);border:0;background:#050505}
.platform-profile-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:12px 18px 0}.platform-profile-tabs button{min-height:40px;border:1px solid transparent;background:transparent;color:var(--soft);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius)}.platform-profile-tabs button:hover,.platform-profile-tabs button.is-active{border-color:var(--line);background:var(--tile2);color:var(--white)}
.retro-modal-grid{display:grid;gap:12px;padding:18px}.retro-modal-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.retro-modal-card{border:1px solid var(--line);background:#111;padding:16px;border-radius:var(--radius)}.wallet-drawer-title strong,.wallet-drawer-title small,.settings-list dt,.settings-list dd{display:block}.wallet-drawer-title small,.settings-list dt,.muted-text{color:var(--muted)}.wallet-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.wallet-card{border:1px solid var(--line);background:var(--white);color:var(--black);padding:14px;min-height:118px;border-radius:var(--radius)}.wallet-card--dark{background:#070707;color:var(--white)}.wallet-card span,.wallet-card small{display:block;color:#777;font-weight:850}.wallet-card strong{display:block;margin-top:8px;font-size:28px;letter-spacing:-.04em}.level-card--horizontal{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;align-items:center}.level-ring{width:112px;aspect-ratio:1;display:grid;place-items:center;border:1px solid var(--line);background:conic-gradient(var(--white) calc(var(--ring-progress,0) * 1%),var(--tile2) 0);color:var(--black);border-radius:999px}.level-ring span,.level-ring strong{grid-area:1/1}.level-ring span{align-self:start;margin-top:28px;color:#555;font-size:10px;font-weight:950;letter-spacing:.18em}.level-ring strong{align-self:end;margin-bottom:25px;font-size:36px}.level-card__title,.level-card__meta{margin:0 0 8px}.level-card__meta,.reward-pass-trigger__hint{color:var(--muted)}.mini-progress{height:8px;background:var(--tile2);overflow:hidden}.mini-progress span{display:block;height:100%;background:var(--white)}.profile-avatar-large{width:72px;height:72px;display:grid;place-items:center;border:1px solid var(--white);margin-bottom:12px;font-size:28px;font-weight:950}
@media(max-width:720px){.platform-profile-grid{grid-template-columns:1fr}.platform-profile-modal{padding:14px}}
.platform-profile-modal{display:block;padding:0;background:transparent}.platform-profile-embed{position:absolute;inset:0;width:100%;height:100dvh;border:0;background:transparent}.platform-profile-embed--preload{position:fixed!important;inset:auto!important;left:-9999px!important;top:0!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}

/* v8.10 account profile hardening */
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:var(--radius);margin-top:12px}.table-wrap table{width:100%;border-collapse:collapse;font-size:13px}.table-wrap th,.table-wrap td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.table-wrap th{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.table-wrap tr:last-child td{border-bottom:0}


/* v8.24.2 diagnostic patch */
.boot-loading,.boot-diagnostic-panel{max-width:820px;margin:42px auto}
.boot-diagnostic-panel pre,.diag-row pre{white-space:pre-wrap;overflow:auto;max-height:360px;background:#080808;border:1px solid var(--line);border-radius:var(--radius);padding:12px;color:var(--soft)}
.diag-row{border:1px solid var(--line);background:rgba(18,18,18,.92);border-radius:var(--radius);padding:14px;margin:10px 0;display:grid;grid-template-columns:minmax(160px,1fr) 86px;gap:10px;align-items:start}
.diag-row span{justify-self:end;border:1px solid var(--line2);border-radius:var(--radius);padding:5px 8px;text-transform:uppercase;font-size:11px;font-weight:900;letter-spacing:.08em}
.diag-row.ok span{border-color:#6a8f6a;color:#dff7df}.diag-row.warn span{border-color:#b89b55;color:#ffe6a8}.diag-row.bad span{border-color:#9c5b5b;color:#ffd4d4}
.diag-row pre{grid-column:1/-1;margin:0}


/* v8.24.7 school typeahead */
.school-typeahead{display:grid;gap:8px;margin-top:10px}
.school-suggestion{width:100%;text-align:left;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--soft);border-radius:var(--radius);padding:12px;display:grid;gap:5px;cursor:pointer}
.school-suggestion:hover,.school-suggestion:focus{background:rgba(244,239,229,.10);border-color:var(--line2);outline:none}
.school-suggestion strong{display:block;color:var(--white);font-size:15px}
.school-suggestion span{display:block;color:var(--muted);font-size:13px}
.school-suggestion em{display:flex;flex-wrap:wrap;gap:6px;font-style:normal;margin-top:2px}
.school-suggestion-empty{border:1px dashed var(--line);border-radius:var(--radius);padding:12px;color:var(--muted);background:rgba(255,255,255,.03)}
@media(max-width:720px){.school-suggestion{padding:11px}.school-suggestion em{gap:4px}}

/* v8.25 unified platform palette */
html[data-surface="studio"]{
  --black:#070707;--ink:#111111;--tile:#171717;--tile2:#202020;--tile3:#2A2A2A;--line:#3A3A3A;--line2:#4A4A4A;
  --white:#F4F4F4;--soft:#CFCFCF;--muted:#8C8C8C;--shadow:0 18px 70px rgba(0,0,0,.35);
}
html[data-surface="studio"] body{background:linear-gradient(135deg,#050505 0%,#111 38%,#1b1b1b 64%,#060606 100%);color:var(--white)}
html[data-surface="studio"] .header{background:rgba(8,8,8,.92);border-bottom-color:var(--line)}
html[data-surface="studio"] .logo{background:#f4f1ea;color:var(--black);border-color:var(--line2)}
html[data-surface="studio"] .logo img{filter:none}
html[data-surface="studio"] .topnav button:not(.active),html[data-surface="studio"] .topnav>a:not(.active),html[data-surface="studio"] .menu-grid button,html[data-surface="studio"] .btn.secondary,html[data-surface="studio"] .btn.ghost{border-color:var(--line2);color:var(--soft);background:transparent}
html[data-surface="studio"] .topnav button:hover,html[data-surface="studio"] .topnav .active,html[data-surface="studio"] .topnav>a:hover,html[data-surface="studio"] .topnav>a.active{background:var(--tile2);color:var(--white);border-color:var(--line)}
html[data-surface="studio"] .hero{background:linear-gradient(135deg,#0b0b0b,#202020 48%,#0f0f0f);color:var(--white)}
html[data-surface="studio"] .card,html[data-surface="studio"] .panel,html[data-surface="studio"] .login-card,html[data-surface="studio"] .admin-shell .panel{background:rgba(18,18,18,.90);color:var(--white)}
html[data-surface="studio"] .card:hover{background:#151515;border-color:var(--white)}
html[data-surface="studio"] .input,html[data-surface="studio"] .textarea,html[data-surface="studio"] .select{background:#0b0b0b;color:var(--white)}
html[data-surface="studio"] .sideitem:not(.active),html[data-surface="studio"] .lesson-row:not(.active),html[data-surface="studio"] .card:not(:hover){border-color:var(--line)}
html[data-surface="studio"] .btn:hover,html[data-surface="studio"] .btn.secondary:hover,html[data-surface="studio"] .btn.ghost:hover{background:var(--tile2);border-color:var(--white);color:var(--white)}

/* v8.27 student social course avatars — strict black/white platform palette. */
.course-social-strip{margin-top:16px;padding-top:14px;border-top:1px solid #d9d9d9;display:flex;align-items:center;justify-content:space-between;gap:14px}
.course-social-strip--detail{margin-top:20px;padding:16px;border:1px solid #d9d9d9;border-radius:14px;background:#fff;color:#111}
.course-social-strip__people{display:flex;align-items:center;gap:12px;min-width:0}
.course-social-strip__people>div:last-child{display:grid;gap:2px;min-width:0}
.course-social-strip__people strong{font-size:.9rem;line-height:1.15;color:#111}
.course-social-strip__people small{color:#666;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.course-social-avatars{display:flex;align-items:center;min-width:44px}
.course-social-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;margin-left:-8px;border:2px solid #fff;background:#111;color:#fff;font-size:.72rem;font-weight:900;letter-spacing:.02em;box-shadow:none}
.course-social-avatar:first-child{margin-left:0}
.course-social-avatar img{width:100%;height:100%;display:block;object-fit:cover;border-radius:inherit}
.course-social-avatar.is-owner{background:#fff;color:#111;border-color:#111}
.course-social-avatar--more{background:#e9e9e9;color:#111;border-color:#111}
.course-social-open{flex:0 0 auto}
html[data-surface="studio"] .course-social-strip{border-top-color:#3a3a3a}
html[data-surface="studio"] .course-social-strip--detail{border-color:#3a3a3a;background:#0b0b0b;color:#f4f4f4}
html[data-surface="studio"] .course-social-strip__people strong{color:#f4f4f4}
html[data-surface="studio"] .course-social-strip__people small{color:#8c8c8c}
html[data-surface="studio"] .course-social-avatar{border-color:#f4f4f4;background:#111;color:#f4f4f4}
html[data-surface="studio"] .course-social-avatar.is-owner{background:#f4f4f4;color:#070707;border-color:#070707}
@media(max-width:680px){.course-social-strip{align-items:flex-start;flex-direction:column}.course-social-open{width:100%}.course-social-strip__people small{white-space:normal}}

/* v8.28.2 — Social Hub attention badge */
.profile-social-entry { position: relative; }
.profile-social-badge {
  position: absolute; top: 7px; right: 8px; min-width: 21px; height: 21px; padding: 0 6px;
  display: inline-grid; place-items: center; border: 2px solid var(--black); border-radius: 999px;
  background: var(--white); color: var(--black); font-size: 10px; font-weight: 1000; line-height: 1;
}

/* v8.29.0 Bakaláři teacher sync + study plans — monochrome only */
.check-row{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--border,#d7d7d7);border-radius:10px;background:var(--surface,#fff)}
.check-row input{margin-top:3px}
.check-row span{display:flex;flex-direction:column;gap:2px;min-width:0}
.check-row small{color:var(--muted,#666);overflow-wrap:anywhere}

/* v8.32.0 Bakaláři school autocomplete — monochrome, keyboard-friendly picker */
.bakalari-school-picker{position:relative}
.bakalari-school-suggestions{position:absolute;z-index:40;left:0;right:0;top:calc(100% + 6px);max-height:340px;overflow:auto;border:1px solid #111;border-radius:12px;background:#fff;box-shadow:0 14px 34px rgba(0,0,0,.16)}
.bakalari-school-option{width:100%;display:grid;gap:3px;text-align:left;padding:12px 14px;border:0;border-bottom:1px solid #ddd;background:#fff;color:#111;cursor:pointer;font:inherit}
.bakalari-school-option:last-child{border-bottom:0}
.bakalari-school-option:hover,.bakalari-school-option:focus{background:#111;color:#fff;outline:0}
.bakalari-school-option strong{font-size:.92rem;line-height:1.25}
.bakalari-school-option span{font-size:.78rem;color:#666;overflow-wrap:anywhere}
.bakalari-school-option:hover span,.bakalari-school-option:focus span{color:#ddd}
.bakalari-school-loading,.bakalari-school-empty{padding:14px;color:#555;font-size:.86rem}
html[data-surface="studio"] .bakalari-school-suggestions{background:#0b0b0b;border-color:#f4f4f4}
html[data-surface="studio"] .bakalari-school-option{background:#0b0b0b;color:#f4f4f4;border-bottom-color:#333}
html[data-surface="studio"] .bakalari-school-option:hover,html[data-surface="studio"] .bakalari-school-option:focus{background:#f4f4f4;color:#070707}
html[data-surface="studio"] .bakalari-school-option span{color:#999}
html[data-surface="studio"] .bakalari-school-option:hover span,html[data-surface="studio"] .bakalari-school-option:focus span{color:#333}
@media(max-width:680px){.bakalari-school-suggestions{position:static;margin-top:6px;max-height:280px}}

/* v8.33.0 Bakaláři teacher-role verification + polished school picker */
.bakalari-school-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.bakalari-school-selected-fields{margin-top:10px}
.bakalari-school-selected-fields .input[readonly]{background:#f5f5f5;color:#111;border-style:solid;cursor:default}
.bakalari-school-suggestion-title{position:sticky;top:0;z-index:1;padding:8px 12px;border-bottom:1px solid #ddd;background:#f4f4f4;color:#555;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.bakalari-school-option.is-active{background:#111;color:#fff;outline:0}
.bakalari-school-option.is-active span{color:#ddd}
html[data-surface="studio"] .bakalari-school-selected-fields .input[readonly]{background:#141414;color:#f4f4f4;border-color:#3b3b3b}
html[data-surface="studio"] .bakalari-school-suggestion-title{background:#171717;color:#aaa;border-bottom-color:#333}
html[data-surface="studio"] .bakalari-school-option.is-active{background:#f4f4f4;color:#070707}
html[data-surface="studio"] .bakalari-school-option.is-active span{color:#333}
@media(max-width:680px){.bakalari-school-search-row{grid-template-columns:1fr}.bakalari-school-search-row .btn{width:100%}}
.bakalari-school-option{grid-template-columns:minmax(0,1fr) minmax(180px,.7fr);align-items:center;column-gap:14px}
.bakalari-school-option-main{display:flex!important;flex-direction:column;gap:3px;min-width:0;color:inherit!important}
.bakalari-school-option-main small{font-size:.76rem;color:#666;white-space:normal}
.bakalari-school-option-url{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.74rem!important;text-align:right;overflow-wrap:anywhere;color:#555!important}
.bakalari-school-option:hover .bakalari-school-option-main small,.bakalari-school-option:focus .bakalari-school-option-main small,.bakalari-school-option.is-active .bakalari-school-option-main small,.bakalari-school-option:hover .bakalari-school-option-url,.bakalari-school-option:focus .bakalari-school-option-url,.bakalari-school-option.is-active .bakalari-school-option-url{color:#ddd!important}
.bakalari-school-selected-confirmation{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:center}
.bakalari-school-selected-confirmation strong{grid-column:1}
.bakalari-school-selected-confirmation span{grid-column:2;grid-row:1;color:inherit}
.bakalari-school-selected-confirmation code{grid-column:1/-1;background:transparent;padding:0;color:inherit;overflow-wrap:anywhere}
html[data-surface="studio"] .bakalari-school-option-main small,html[data-surface="studio"] .bakalari-school-option-url{color:#999!important}
html[data-surface="studio"] .bakalari-school-option:hover .bakalari-school-option-main small,html[data-surface="studio"] .bakalari-school-option:focus .bakalari-school-option-main small,html[data-surface="studio"] .bakalari-school-option.is-active .bakalari-school-option-main small,html[data-surface="studio"] .bakalari-school-option:hover .bakalari-school-option-url,html[data-surface="studio"] .bakalari-school-option:focus .bakalari-school-option-url,html[data-surface="studio"] .bakalari-school-option.is-active .bakalari-school-option-url{color:#333!important}
@media(max-width:680px){.bakalari-school-option{grid-template-columns:1fr}.bakalari-school-option-url{text-align:left}.bakalari-school-selected-confirmation{grid-template-columns:1fr}.bakalari-school-selected-confirmation span{grid-column:1;grid-row:auto}}


/* v8.36 teacher license capacity */
.teacher-license-overview{overflow:hidden}
.teacher-license-wallet{min-width:210px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);display:grid;gap:3px;text-align:right;background:rgba(127,127,127,.06)}
.teacher-license-wallet small{color:var(--muted)}
.teacher-license-wallet strong{font-size:1.05rem}
.teacher-license-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}
.teacher-license-option{height:100%;margin:0}
.teacher-license-quote{display:grid;grid-template-columns:1fr auto;align-items:end;gap:3px 14px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(127,127,127,.06)}
.teacher-license-quote strong{font-size:1.2rem;text-align:right}
.teacher-license-quote small{grid-column:2;text-align:right;color:var(--muted)}
@media(max-width:820px){.teacher-license-options{grid-template-columns:1fr}.teacher-license-wallet{width:100%;text-align:left}.teacher-license-overview>.row{align-items:stretch;flex-direction:column}}

/* v8.37 classroom multi-course management */
.teacher-class-list{display:grid;gap:16px;margin-top:18px}
.teacher-class-summary{display:grid;gap:16px}
.teacher-class-summary__head{align-items:flex-start}
.teacher-class-summary__head h2{margin:.35rem 0 .25rem}
.teacher-class-summary__stats{margin-top:0}
.teacher-course-tags{display:flex;flex-wrap:wrap;gap:8px}
.teacher-course-tag{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border:1px solid var(--line);border-radius:999px;background:rgba(127,127,127,.06);font-size:.82rem;font-weight:800}
.teacher-course-tag.is-primary{border-color:var(--black);background:var(--black);color:var(--white)}
.teacher-class-courses{display:grid;gap:14px;margin-top:16px}
.teacher-course-assignment{display:grid;gap:14px}
.teacher-course-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.teacher-course-assignment__footer{justify-content:flex-start}
.teacher-course-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.teacher-class-people{align-items:start}
html[data-surface="studio"] .teacher-course-tag{border-color:#3b3b3b;background:#111;color:#f4f4f4}
html[data-surface="studio"] .teacher-course-tag.is-primary{border-color:#f4f4f4;background:#f4f4f4;color:#070707}
@media(max-width:820px){.teacher-course-checks{grid-template-columns:1fr}.teacher-course-actions{justify-content:flex-start}.teacher-class-summary__head{align-items:stretch;flex-direction:column}.teacher-class-summary__head .btn{width:100%}.teacher-course-assignment>.row{align-items:flex-start;flex-direction:column}}

/* v8.40 teacher sub-navigation + classroom deletion */
.teacher-subnav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 22px;padding:8px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(127,127,127,.05)}
.teacher-subnav__item{display:flex;min-width:0;min-height:62px;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;padding:10px 12px;border:1px solid transparent;border-radius:calc(var(--radius) - 3px);background:transparent;color:var(--soft);text-align:left;cursor:pointer;font:inherit}
.teacher-subnav__item strong{color:inherit;font-size:.9rem}
.teacher-subnav__item small{color:var(--muted);font-size:.72rem;line-height:1.3}
.teacher-subnav__item:hover,.teacher-subnav__item.is-active{border-color:var(--line2);background:var(--tile);color:var(--white)}
.teacher-subnav__item:hover small,.teacher-subnav__item.is-active small{color:var(--soft)}
.teacher-section-heading{align-items:flex-start;margin-bottom:18px}
.teacher-capacity-strip{margin-bottom:18px}
.teacher-overview-list{display:grid;gap:16px;margin-top:18px}
.teacher-overview-card{display:grid;gap:16px}
.teacher-danger-zone{display:flex;align-items:center;justify-content:space-between;gap:24px;border-style:dashed;margin-top:18px}
.teacher-danger-zone h2{margin:.45rem 0 .35rem}
.teacher-danger-zone p{max-width:760px;margin:0;color:var(--muted)}
@media(max-width:820px){.teacher-subnav{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-danger-zone{align-items:stretch;flex-direction:column}.teacher-danger-zone .btn{width:100%}}
@media(max-width:520px){.teacher-subnav{grid-template-columns:1fr}.teacher-subnav__item{min-height:54px}.teacher-section-heading{align-items:stretch;flex-direction:column}}

/* v8.42 – původní tmavý vzhled, volitelný světlý režim a kontrastní veřejné profily */
.course-author{width:max-content;max-width:100%;display:inline-flex;align-items:center;gap:10px;margin:12px 0;border:0;background:transparent;color:var(--white);padding:0;text-align:left;text-transform:none;letter-spacing:0}
.course-author:hover .course-author__avatar{transform:translateY(-1px);box-shadow:0 0 0 2px var(--white)}
.course-author__avatar{width:42px;height:42px;flex:0 0 42px;border:1px solid var(--line2);border-radius:999px;background:var(--white);color:var(--black);display:grid;place-items:center;overflow:hidden;font-size:13px;font-weight:950;transition:transform .15s ease,box-shadow .15s ease}
.course-author__avatar img{width:100%;height:100%;object-fit:cover;display:block}
.course-author__text{display:grid;gap:1px;min-width:0}
.course-author__text small{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}
.course-author__text strong{font-size:14px;color:var(--white);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.course-author--detail{margin:16px 0}.course-author--detail .course-author__avatar{width:52px;height:52px;flex-basis:52px;font-size:16px}
.verified-teacher-badge{display:inline-flex;align-items:center;gap:6px;width:max-content;border:1px solid var(--white);background:var(--white);color:var(--black);padding:7px 10px;border-radius:999px;font-size:11px;font-weight:950;letter-spacing:.04em;text-transform:uppercase}
.verified-teacher-badge--large{padding:9px 13px;font-size:12px}
.creator-profile-hero{display:flex;align-items:flex-start;gap:24px;padding:28px;border:1px solid var(--line);background:var(--tile);color:var(--white);margin-bottom:14px;border-radius:var(--radius)}
.creator-profile-hero h1{font-size:clamp(38px,6vw,72px);margin:8px 0 14px;color:var(--white)}
.creator-profile-avatar{width:112px;height:112px;flex:0 0 112px;border:2px solid var(--line2);border-radius:999px;background:var(--white);color:var(--black);display:grid;place-items:center;overflow:hidden;font-size:34px;font-weight:950}
.creator-profile-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.creator-profile-intro{min-width:0;flex:1}.creator-profile-intro>.label{color:var(--muted)}
.creator-profile-bio{margin-top:18px;max-width:820px}.creator-profile-bio h2{margin-bottom:6px;font-size:18px}.creator-profile-bio p,.creator-profile-empty{margin:0;color:var(--soft);white-space:normal}
.creator-profile-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 24px}
.creator-profile-stats article,.creator-course-stats span{border:1px solid var(--line);background:var(--tile);color:var(--white);padding:16px;border-radius:var(--radius)}
.creator-profile-stats strong,.creator-profile-stats span,.creator-course-stats strong,.creator-course-stats small{display:block}
.creator-profile-stats strong{font-size:28px;letter-spacing:-.04em}.creator-profile-stats span{margin-top:4px;padding:0;border:0;background:transparent;color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}
.creator-course-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:14px}
.creator-course-stats span{padding:10px}.creator-course-stats strong{font-size:20px}.creator-course-stats small{margin-top:3px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.05em}
.form-row--wide{grid-column:1/-1}

/* Světlý režim je výhradně uživatelská předvolba; bez data-theme zůstává původní tmavá paleta. */
html[data-surface="courses"][data-theme="light"]{
  --black:#f6f6f4;--ink:#ffffff;--tile:#ffffff;--tile2:#efefec;--tile3:#dfdfdb;
  --line:#c9c9c4;--line2:#111111;--white:#111111;--soft:#2b2b2b;--muted:#666666;
  --shadow:0 18px 52px rgba(17,17,17,.10);
}
html[data-surface="courses"][data-theme="light"] body{background:#f6f6f4;color:#111}
html[data-surface="courses"][data-theme="light"] a{color:#111}
html[data-surface="courses"][data-theme="light"] .header{background:rgba(255,255,255,.95);border-bottom-color:#111}
html[data-surface="courses"][data-theme="light"] .logo{background:#111;color:#fff;border-color:#111}
html[data-surface="courses"][data-theme="light"] .topnav button:hover,
html[data-surface="courses"][data-theme="light"] .topnav .active,
html[data-surface="courses"][data-theme="light"] .topnav>a:hover,
html[data-surface="courses"][data-theme="light"] .topnav>a.active{background:#111;color:#fff;border-color:#111}
html[data-surface="courses"][data-theme="light"] .card,
html[data-surface="courses"][data-theme="light"] .panel,
html[data-surface="courses"][data-theme="light"] .login-card,
html[data-surface="courses"][data-theme="light"] .menu-panel,
html[data-surface="courses"][data-theme="light"] .block,
html[data-surface="courses"][data-theme="light"] .add-block,
html[data-surface="courses"][data-theme="light"] .asset,
html[data-surface="courses"][data-theme="light"] .notation-render,
html[data-surface="courses"][data-theme="light"] .teacher-course-assignment,
html[data-surface="courses"][data-theme="light"] .creator-profile-hero,
html[data-surface="courses"][data-theme="light"] .creator-profile-stats article,
html[data-surface="courses"][data-theme="light"] .creator-course-stats span{background:#fff;color:#111;border-color:#c9c9c4}
html[data-surface="courses"][data-theme="light"] .card:hover{background:#fafafa;border-color:#111}
html[data-surface="courses"][data-theme="light"] .input,
html[data-surface="courses"][data-theme="light"] .textarea,
html[data-surface="courses"][data-theme="light"] .select,
html[data-surface="courses"][data-theme="light"] select{background:#fff;color:#111;border-color:#888}
html[data-surface="courses"][data-theme="light"] .input::placeholder,
html[data-surface="courses"][data-theme="light"] .textarea::placeholder{color:#777}
html[data-surface="courses"][data-theme="light"] .btn{background:#111;color:#fff;border-color:#111}
html[data-surface="courses"][data-theme="light"] .btn:hover{background:#333;color:#fff;border-color:#333}
html[data-surface="courses"][data-theme="light"] .btn.secondary,
html[data-surface="courses"][data-theme="light"] .btn.ghost{background:#fff;color:#111;border-color:#111}
html[data-surface="courses"][data-theme="light"] .btn.secondary:hover,
html[data-surface="courses"][data-theme="light"] .btn.ghost:hover{background:#111;color:#fff;border-color:#111}
html[data-surface="courses"][data-theme="light"] .badge,
html[data-surface="courses"][data-theme="light"] .status{background:#fff;color:#111;border-color:#777}
html[data-surface="courses"][data-theme="light"] .notice,
html[data-surface="courses"][data-theme="light"] .success,
html[data-surface="courses"][data-theme="light"] .error{background:#fff;color:#222;border-color:#888}
html[data-surface="courses"][data-theme="light"] .course-progress-mini,
html[data-surface="courses"][data-theme="light"] .progress{background:#ddd}
html[data-surface="courses"][data-theme="light"] .course-progress-mini span,
html[data-surface="courses"][data-theme="light"] .progress span{background:#111}
html[data-surface="courses"][data-theme="light"] .profile-chip{background:#fff;color:#111;border-color:#111}
html[data-surface="courses"][data-theme="light"] .profile-chip:hover,
html[data-surface="courses"][data-theme="light"] .profile-chip.active{background:#111;color:#fff}
html[data-surface="courses"][data-theme="light"] .menu-grid button{background:#fff;color:#111;border-color:#999}
html[data-surface="courses"][data-theme="light"] .menu-grid button:hover{background:#111;color:#fff;border-color:#111}
html[data-surface="courses"][data-theme="light"] .course-author__avatar,
html[data-surface="courses"][data-theme="light"] .creator-profile-avatar,
html[data-surface="courses"][data-theme="light"] .verified-teacher-badge{background:#111;color:#fff;border-color:#111}
html[data-surface="courses"][data-theme="light"] .course-author__text strong,
html[data-surface="courses"][data-theme="light"] .creator-profile-hero h1{color:#111}

@media(max-width:860px){.creator-profile-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.creator-profile-hero{align-items:flex-start;gap:16px;padding:20px;flex-direction:column}.creator-profile-avatar{width:78px;height:78px;flex-basis:78px;font-size:24px}.course-author{width:100%;flex-wrap:wrap}.verified-teacher-badge{white-space:nowrap}.creator-course-stats{grid-template-columns:1fr}.form-row--wide{grid-column:auto}}

/* Creator profile modal and shared profile editor */
html.creator-profile-modal-open{overflow:hidden}
.creator-profile-modal-shell{position:fixed;inset:0;z-index:2500;display:grid;place-items:center;padding:24px}
.creator-profile-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(0,0,0,.78);cursor:default}
.creator-profile-modal-card{position:relative;z-index:1;width:min(920px,100%);max-height:min(88vh,900px);overflow:auto;border:1px solid var(--line2);border-radius:var(--radius);background:var(--tile);color:var(--white);padding:26px;box-shadow:0 28px 90px rgba(0,0,0,.58)}
.creator-profile-modal-close{position:absolute;right:14px;top:14px;width:40px;height:40px;border:1px solid var(--line2);border-radius:999px;background:var(--black);color:var(--white);font-size:24px;line-height:1;cursor:pointer}
.creator-profile-modal-header{display:flex;align-items:center;gap:18px;padding-right:48px}
.creator-profile-modal-header h2{margin:3px 0 10px;font-size:clamp(28px,5vw,48px);color:var(--white)}
.creator-profile-avatar--modal{width:84px;height:84px;flex-basis:84px;font-size:26px}
.creator-profile-modal-bio{margin:24px 0 18px;padding:18px;border:1px solid var(--line);background:var(--panel);border-radius:var(--radius)}
.creator-profile-modal-bio h3,.creator-profile-modal-courses h3{margin:0 0 8px;color:var(--white)}
.creator-profile-modal-bio p{margin:0;color:var(--soft);line-height:1.65}
.creator-profile-stats--modal{margin-bottom:22px}
.creator-profile-modal-courses{display:grid;gap:10px}
.creator-profile-modal-course{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;width:100%;text-align:left;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);color:var(--white);cursor:pointer}
.creator-profile-modal-course:hover{border-color:var(--line2);transform:translateY(-1px)}
.creator-profile-modal-course span:first-child{display:grid;gap:4px;min-width:0}
.creator-profile-modal-course strong{color:var(--white)}
.creator-profile-modal-course small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.creator-profile-modal-course-stats{color:var(--soft);font-size:12px;white-space:nowrap}
.creator-profile-modal-course-stats b{color:var(--white)}
.creator-profile-modal-loading{min-height:220px;display:grid;place-content:center;text-align:center}
.profile-avatar-editor{display:grid;grid-template-columns:84px minmax(0,1fr);gap:14px;align-items:start}
.profile-avatar-editor__preview{width:84px;height:84px;border:1px solid var(--line2);border-radius:999px;background:var(--white);color:var(--black);display:grid;place-items:center;overflow:hidden;font-weight:950;font-size:24px}
.profile-avatar-editor__preview img{width:100%;height:100%;object-fit:cover;display:block}
.creator-reward-summary{border-color:var(--line2)}
html[data-surface="courses"][data-theme="light"] .creator-profile-modal-card{background:#fff;color:#111;border-color:#222;box-shadow:0 28px 90px rgba(0,0,0,.28)}
html[data-surface="courses"][data-theme="light"] .creator-profile-modal-close{background:#111;color:#fff;border-color:#111}
html[data-surface="courses"][data-theme="light"] .creator-profile-modal-header h2,
html[data-surface="courses"][data-theme="light"] .creator-profile-modal-bio h3,
html[data-surface="courses"][data-theme="light"] .creator-profile-modal-courses h3,
html[data-surface="courses"][data-theme="light"] .creator-profile-modal-course,
html[data-surface="courses"][data-theme="light"] .creator-profile-modal-course strong,
html[data-surface="courses"][data-theme="light"] .creator-profile-modal-course-stats b{color:#111}
html[data-surface="courses"][data-theme="light"] .creator-profile-modal-bio,
html[data-surface="courses"][data-theme="light"] .creator-profile-modal-course{background:#f4f4f4;border-color:#c8c8c8}
html[data-surface="courses"][data-theme="light"] .creator-profile-modal-bio p,
html[data-surface="courses"][data-theme="light"] .creator-profile-modal-course-stats{color:#444}
@media(max-width:680px){.creator-profile-modal-shell{padding:10px}.creator-profile-modal-card{padding:20px 16px}.creator-profile-modal-header{align-items:flex-start;flex-direction:column}.creator-profile-modal-course{grid-template-columns:1fr}.creator-profile-modal-course-stats{white-space:normal}.profile-avatar-editor{grid-template-columns:1fr}.profile-avatar-editor__preview{width:72px;height:72px}}


/* v8.44.0 — mobilní app shell a profil autora bez kontrastních/stavových ztrát. */
.platform-mobile-nav{display:none}
.creator-profile-modal-courses h3 small{color:var(--muted);font-size:11px;font-weight:800;margin-left:6px}
@media(max-width:900px){
  body{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}
  .header{position:sticky;top:0;min-height:58px;padding:8px 12px;gap:8px}
  .brand-title span{display:none}.brand{gap:8px}.logo{width:38px;height:38px}
  .actions{gap:6px}.actions .profile-chip{max-width:138px;min-width:0;padding:7px 9px}.actions .profile-chip small{display:none}
  .page{padding:12px}.page h1{overflow-wrap:anywhere}.grid,.grid.two{gap:12px}
  .creator-profile-hero{grid-template-columns:1fr!important;padding:18px!important}.creator-profile-avatar{width:88px!important;height:88px!important}
  .creator-profile-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.creator-profile-stats article{min-height:92px;padding:14px!important}
  .creator-profile-modal-shell{padding:8px!important;align-items:end!important}.creator-profile-modal-card{width:100%!important;max-height:calc(100dvh - 16px)!important;border-radius:14px 14px 0 0!important}
  .creator-profile-modal-header{padding-right:42px!important}.creator-profile-modal-course{grid-template-columns:1fr!important;gap:10px!important;text-align:left!important}.creator-profile-modal-course-stats{white-space:normal!important}
  .footer{padding:18px 14px 12px;margin-bottom:0}
  .platform-mobile-nav{position:fixed;left:0;right:0;bottom:0;z-index:260;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));min-height:64px;padding:6px max(6px,env(safe-area-inset-left)) calc(6px + env(safe-area-inset-bottom,0px)) max(6px,env(safe-area-inset-right));border-top:1px solid var(--line);background:rgba(7,7,7,.97);backdrop-filter:blur(18px);box-shadow:0 -12px 30px rgba(0,0,0,.3)}
  .platform-mobile-nav a{min-width:0;display:grid;justify-items:center;align-content:center;gap:3px;padding:5px 2px;border:1px solid transparent;color:var(--muted);text-decoration:none;font-size:10px;letter-spacing:.02em}
  .platform-mobile-nav a span{font-size:18px;line-height:1}.platform-mobile-nav a strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:10px;white-space:nowrap}
  .platform-mobile-nav a.is-active{border-color:var(--line2);background:var(--tile2);color:var(--white)}
  html[data-theme="light"] .platform-mobile-nav{background:rgba(248,248,246,.98);border-color:#c9c9c5;box-shadow:0 -12px 30px rgba(0,0,0,.12)}
  html[data-theme="light"] .platform-mobile-nav a{color:#545454}html[data-theme="light"] .platform-mobile-nav a.is-active{border-color:#111;background:#111;color:#fff}
}


/* Release 72: unified mobile hamburger, collapsed profile section and support tickets. */
.menu-grid .menu-platform-link{display:block;border:1px solid var(--line);background:var(--ink);color:var(--white);padding:18px;text-align:left;border-radius:var(--radius);text-decoration:none;font-weight:850;letter-spacing:.02em;transition:transform .15s ease,background .15s ease,border .15s ease}
.menu-grid .menu-platform-link:hover{transform:translateY(-1px);background:var(--tile2);border-color:var(--white)}
.menu-grid .menu-platform-link small{display:block;color:var(--muted);margin-top:5px;font-weight:500}
.menu-section-toggle{width:100%;display:grid;grid-template-columns:1fr auto;gap:2px 12px;align-items:center;border:1px solid var(--line);background:var(--ink);color:var(--white);padding:15px 16px;text-align:left;border-radius:var(--radius);font:inherit;cursor:pointer}
.menu-section-toggle span{font-size:13px;text-transform:uppercase;letter-spacing:.12em;font-weight:900}.menu-section-toggle small{grid-column:1;color:var(--muted)}.menu-section-toggle b{grid-column:2;grid-row:1/3;font-size:20px;transition:transform .18s ease}.menu-section-toggle[aria-expanded="true"] b{transform:rotate(180deg)}
.menu-section-body{margin-top:8px}.menu-section-body[hidden]{display:none!important}
.support-shell{display:grid;gap:18px}.support-layout{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);gap:18px;align-items:start}.support-form{position:sticky;top:88px}.support-count{border:1px solid var(--line);border-radius:999px;padding:8px 12px;color:var(--muted)}.support-ticket-card{border:1px solid var(--line);background:var(--tile);border-radius:var(--radius);padding:18px;display:grid;gap:11px}.support-ticket-card h3{margin:8px 0 0}.support-ticket-meta{display:flex;gap:7px;flex-wrap:wrap}.support-ticket-meta span{border:1px solid var(--line);border-radius:999px;padding:5px 9px;color:var(--muted);font-size:12px}.support-messages{display:grid;gap:7px;margin-top:10px}.support-messages p{margin:0;border-left:3px solid var(--line);padding:8px 10px;background:rgba(255,255,255,.025)}.support-reply{display:grid;grid-template-columns:1fr auto;gap:8px}.support-ticket-card .status.open{border-color:#888}.support-ticket-card .status.in_progress{border-color:#d0a23c}.support-ticket-card .status.waiting_user{border-color:#d88634}.support-ticket-card .status.resolved{border-color:#4c9b68}.support-ticket-card .status.closed{opacity:.65}
html[data-surface="courses"][data-theme="light"] .menu-grid .menu-platform-link,html[data-surface="courses"][data-theme="light"] .menu-section-toggle{background:#fff;color:#111;border-color:#999}
@media(max-width:900px){.support-layout{grid-template-columns:1fr}.support-form{position:static}.support-reply{grid-template-columns:1fr}.menu-grid--platform{grid-template-columns:repeat(2,minmax(0,1fr))!important}.menu-panel{padding-bottom:calc(86px + env(safe-area-inset-bottom,0px))}}


/* v8.46 / Release 73 — one mobile shell, modal profile actions, no duplicate domain tiles. */
.platform-profile-modal{z-index:4000!important;isolation:isolate!important}.menu-overlay{z-index:3200!important}
@media(max-width:900px){
  body{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))!important}
  .header{position:sticky!important;top:0!important;min-height:58px!important;padding:8px 12px!important;gap:8px!important}.brand-title span{display:none!important}.brand{gap:8px!important}.logo{width:38px!important;height:38px!important}.topnav{display:none!important}
  .actions{gap:6px!important}.actions .profile-chip{max-width:138px!important;min-width:0!important;padding:7px 9px!important}.actions .profile-chip small{display:none!important}
  .page{padding:12px!important;overflow-x:hidden!important}.footer{padding:18px 14px 12px!important}
  .platform-mobile-nav{position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:1100!important;display:grid!important;visibility:visible!important;opacity:1!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;min-height:64px!important;padding:6px max(6px,env(safe-area-inset-left)) calc(6px + env(safe-area-inset-bottom,0px)) max(6px,env(safe-area-inset-right))!important;border-top:1px solid var(--line)!important;background:rgba(7,7,7,.97)!important;backdrop-filter:blur(18px)!important;box-shadow:0 -12px 30px rgba(0,0,0,.3)!important}
  .platform-mobile-nav a{min-width:0!important;display:grid!important;justify-items:center!important;align-content:center!important;gap:3px!important;padding:5px 2px!important;border:1px solid transparent!important;color:var(--muted)!important;text-decoration:none!important}.platform-mobile-nav a span{font-size:18px!important;line-height:1!important}.platform-mobile-nav a strong{font-size:10px!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.platform-mobile-nav a.is-active{border-color:var(--line2)!important;background:var(--tile2)!important;color:var(--white)!important}
  .menu-section--platform{display:none!important}
  .menu-panel{width:100%!important;max-width:none!important;height:calc(100dvh - 72px - env(safe-area-inset-bottom,0px))!important;max-height:none!important;margin:0!important;border-radius:0!important;padding:14px!important;padding-top:max(14px,env(safe-area-inset-top,0px))!important;overflow:auto!important}
  .menu-grid{grid-template-columns:1fr!important}.menu-section-toggle{border-radius:10px!important}
  .platform-profile-modal{z-index:5000!important;padding:0!important;display:block!important;background:#050505!important}.platform-profile-embed{position:absolute!important;inset:0!important;width:100%!important;height:100dvh!important}
  html[data-theme="light"] .platform-mobile-nav{background:rgba(248,248,246,.98)!important;border-color:#c9c9c5!important}
}
html.platform-profile-open,html.menu-open{overflow:hidden!important}
html.platform-profile-open .platform-mobile-nav{visibility:hidden!important;pointer-events:none!important}

/* Release 74 — one mobile header/menu contract across the platform. */
.brand-product{display:none}
@media(max-width:900px){
  .header{display:grid!important;grid-template-columns:minmax(0,1fr) 44px!important;min-height:58px!important;height:58px!important;padding:7px 12px!important;background:rgba(8,8,8,.97)!important;border-bottom:1px solid #3a3a3a!important;box-shadow:none!important}
  .brand{grid-column:1;min-width:0!important;gap:9px!important;text-transform:none!important}.logo{width:38px!important;height:38px!important;border-radius:0!important}.brand-title{line-height:1.05!important}.brand-title strong{font-size:14px!important;letter-spacing:.02em!important;text-transform:none!important}.brand-title .brand-subtitle{display:none!important}.brand-product{display:block!important;margin-top:3px;color:#9b9b9b;font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:none}
  .actions{grid-column:2;display:grid!important;min-width:44px!important;width:44px!important}.actions>*:not(.hamb){display:none!important}.hamb{display:grid!important;place-items:center;width:42px!important;height:42px!important;border:1px solid #484848!important;border-radius:10px!important;background:#111!important;color:#f4f4f4!important}
  .menu-panel>.row{position:sticky;top:0;z-index:3;margin:-14px -14px 10px;padding:12px 14px;border-bottom:1px solid #343434;background:#111}.menu-section--profile-first{margin-top:0!important}.menu-section--profile-first .menu-section-toggle{background:#181818!important}
  .menu-section--platform{display:none!important}
}
@media(max-width:900px){.header .brand-title{display:flex!important;flex-direction:column!important;min-width:0!important}.header .brand-title strong{text-transform:uppercase!important;font-weight:900!important}}
.dual-course-purchase{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.dual-course-purchase .btn{flex:1 1 180px}

/* Release 84.2 — unified avatar and readable light mode. */
.profile-chip{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:9px;text-align:left}
.profile-chip__avatar{position:relative;display:grid;place-items:center;width:34px;height:34px;border:1px solid currentColor;border-radius:50%;overflow:hidden;background:var(--tile2,#1b1b1b);font-weight:900;font-size:12px;line-height:1}
.profile-chip__avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:inherit}
.profile-chip__fallback{display:grid!important;place-items:center;width:100%;height:100%;font-size:11px!important;line-height:1!important}
.profile-chip__copy{display:grid;min-width:0;gap:2px}.profile-chip__copy>span,.profile-chip__copy>small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

html[data-surface="courses"][data-theme="light"]{
  color-scheme:light;
  --black:#f3f5f7;--ink:#ffffff;--tile:#ffffff;--tile2:#edf1f5;--tile3:#e1e7ed;
  --line:#c2cad3;--line2:#7c8794;--white:#101820;--soft:#243241;--muted:#4f6072;
  --accent:#111827;--danger:#9f1239;--success:#166534;
}
html[data-surface="courses"][data-theme="light"] body{background:#f3f5f7;color:#101820}
html[data-surface="courses"][data-theme="light"] :where(p,li,dd,td,.muted,.small,.help,.course-author__text small,.profile-chip small,.menu-section-toggle small,.menu-grid small,.creator-profile-empty){color:#405166}
html[data-surface="courses"][data-theme="light"] :where(h1,h2,h3,h4,strong,dt,th,label,.label,.brand-title,.brand-subtitle){color:#101820}
html[data-surface="courses"][data-theme="light"] :where(.header,.card,.panel,.login-card,.menu-panel,.block,.add-block,.asset,.notation-render,.teacher-course-assignment,.creator-profile-hero,.creator-profile-stats article,.creator-course-stats span,.graphic-card,.hero,.course-tile,.support-ticket-card,.profile-drop,.nav-drop){background:#fff;color:#101820;border-color:#bcc6d1}
html[data-surface="courses"][data-theme="light"] :where(.card:hover,.course-tile:hover,.graphic-card:hover){background:#f8fafc;border-color:#596777}
html[data-surface="courses"][data-theme="light"] :where(.input,.textarea,.select,input,textarea,select){background:#fff;color:#101820;border-color:#7b8794}
html[data-surface="courses"][data-theme="light"] :where(.input,.textarea,input,textarea)::placeholder{color:#657487;opacity:1}
html[data-surface="courses"][data-theme="light"] :where(.topnav button,.topnav>a,.nav-group>button){color:#182433}
html[data-surface="courses"][data-theme="light"] .profile-chip{background:#fff;color:#101820;border-color:#596777}
html[data-surface="courses"][data-theme="light"] .profile-chip__avatar{background:#e6ebf0;color:#101820;border-color:#596777}
html[data-surface="courses"][data-theme="light"] .profile-chip:hover .profile-chip__copy>span,
html[data-surface="courses"][data-theme="light"] .profile-chip.active .profile-chip__copy>span{color:#fff}
html[data-surface="courses"][data-theme="light"] .profile-chip:hover small,
html[data-surface="courses"][data-theme="light"] .profile-chip.active small{color:#dbe4ee}
html[data-surface="courses"][data-theme="light"] :where(.badge,.status,.notice,.success,.error){background:#f8fafc;color:#182433;border-color:#8a96a3}
html[data-surface="courses"][data-theme="light"] .error{color:#881337;border-color:#be123c;background:#fff1f2}
html[data-surface="courses"][data-theme="light"] .success{color:#14532d;border-color:#16a34a;background:#f0fdf4}
html[data-surface="courses"][data-theme="light"] :where(.course-progress-mini,.progress){background:#d6dde5}
html[data-surface="courses"][data-theme="light"] :where(.course-progress-mini span,.progress span){background:#17202b}
html[data-surface="courses"][data-theme="light"] .footer{color:#405166;border-color:#bcc6d1}
html[data-surface="courses"][data-theme="light"] .platform-profile-modal-backdrop{background:rgba(15,23,42,.45)}

/* Release 84.2.1: avatar image runtime fallback. */
.avatar-runtime-fallback{position:relative;display:grid;place-items:center;width:100%;height:100%;border-radius:inherit;overflow:hidden;background:inherit;color:inherit;font:inherit}
.avatar-runtime-fallback>[data-avatar-runtime-fallback]{display:grid;place-items:center;width:100%;height:100%}
.avatar-runtime-fallback>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;background:inherit}

/* Release 84.3: badge lifecycle, gallery, acquisition modal and sharing. */
.badge-definition-editor{display:grid;gap:14px}
.badge-definition-editor.compact{padding:14px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--panel) 92%,var(--accent) 8%)}
.badge-toggle,.badge-public-switch{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.author-badge-preview{display:grid;grid-template-columns:78px minmax(0,1fr);gap:15px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--panel) 90%,var(--accent) 10%),var(--panel));box-shadow:0 14px 32px rgba(0,0,0,.12)}
.author-badge-preview.draft{border-style:dashed;opacity:.86}.author-badge-preview.archived{filter:grayscale(.75);opacity:.68}
.author-badge-art,.badge-gallery-art,.badge-earned-art{display:grid;place-items:center;overflow:hidden;border-radius:50%;background:linear-gradient(145deg,#fff3bd,#d8aa27);color:#17120b;border:3px solid rgba(255,255,255,.65);box-shadow:0 8px 22px rgba(0,0,0,.24);font-size:34px;font-weight:800;aspect-ratio:1}
.author-badge-art img,.badge-gallery-art img,.badge-earned-art img{width:100%;height:100%;object-fit:cover}
.author-badge-preview strong{display:block;font-size:1.08rem;margin:4px 0}.author-badge-preview p{margin:0 0 6px}.badge-status{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.badge-earned-overlay{position:fixed;z-index:10020;inset:0;display:grid;place-items:center;padding:20px;background:rgba(4,8,15,.78);backdrop-filter:blur(10px)}
.badge-earned-modal{position:relative;width:min(520px,100%);max-height:calc(100vh - 40px);overflow:auto;text-align:center;padding:30px;border:1px solid color-mix(in srgb,var(--line) 65%,#f2c84b 35%);border-radius:24px;background:var(--panel);box-shadow:0 30px 90px rgba(0,0,0,.52)}
.badge-modal-close{position:absolute;top:12px;right:12px;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--panel);color:var(--text);font-size:24px;cursor:pointer}
.badge-earned-art{width:132px;margin:18px auto;font-size:58px}.badge-earned-modal h2{font-size:clamp(1.8rem,6vw,2.8rem);margin:8px 0}.badge-earned-reward{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:18px 0}.badge-earned-reward strong{padding:10px 14px;border:1px solid var(--line);border-radius:999px}.badge-verification-note{font-size:.9rem;color:var(--muted)}.badge-earned-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:20px}
.badge-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin:18px 0}.badge-gallery-section{margin-top:28px}.badge-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.badge-gallery-card{display:grid;gap:14px}.badge-gallery-card.is-pinned{outline:2px solid color-mix(in srgb,var(--accent) 70%,#f2c84b 30%)}.badge-gallery-top{display:grid;grid-template-columns:88px minmax(0,1fr);gap:15px;align-items:center}.badge-gallery-art{font-size:38px}.badge-gallery-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.compact-select{width:auto;min-width:150px;padding-block:8px}.badge-public-switch{padding:8px 10px;border:1px solid var(--line);border-radius:10px}
@media(max-width:760px){.badge-summary-grid,.badge-gallery-grid{grid-template-columns:1fr 1fr}.author-badge-preview,.badge-gallery-top{grid-template-columns:64px minmax(0,1fr)}.badge-earned-modal{padding:24px 16px}.badge-earned-actions>*{width:100%}}
@media(max-width:480px){.badge-summary-grid,.badge-gallery-grid{grid-template-columns:1fr}.badge-gallery-actions>*{width:100%}.compact-select{width:100%}}

/* Release 84.4: skutečné cesty Level/XP/Odznaky a platební připravenost. */
.progress-navigation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0 24px}
.progress-nav-card{display:grid;gap:6px;text-align:left;padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--panel);color:var(--text);cursor:pointer;box-shadow:0 12px 30px rgba(0,0,0,.1);transition:transform .18s ease,border-color .18s ease}
.progress-nav-card:hover,.progress-nav-card:focus-visible{transform:translateY(-2px);border-color:var(--accent)}
.progress-nav-card strong{font-size:clamp(1.8rem,4vw,2.8rem)}.progress-nav-card small{color:var(--muted)}
.level-hero{display:grid;grid-template-columns:minmax(120px,.6fr) minmax(260px,2fr) minmax(130px,.7fr);gap:22px;align-items:center;margin:18px 0}
.level-hero>div:first-child,.level-hero>div:last-child{display:grid;gap:5px;text-align:center}.level-hero>div:first-child strong,.level-hero>div:last-child strong{font-size:clamp(2.4rem,7vw,4.8rem)}
.level-progress-copy .progress{height:14px;margin-top:12px}.level-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:18px}
.level-roadmap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}
.level-roadmap-item{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:14px;opacity:.55}
.level-roadmap-item>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--bg);font-weight:800}.level-roadmap-item div{display:grid}.level-roadmap-item small{color:var(--muted)}
.level-roadmap-item.is-reached{opacity:1}.level-roadmap-item.is-current{outline:2px solid var(--accent);background:color-mix(in srgb,var(--panel) 90%,var(--accent) 10%)}
.profile-badge-showcase{margin-top:18px}.profile-badge-showcase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.profile-badge-showcase-item{display:grid;grid-template-columns:52px minmax(0,1fr);gap:3px 12px;align-items:center;text-align:left;padding:13px;border:1px solid var(--line);border-radius:15px;background:var(--bg);color:var(--text);cursor:pointer}.profile-badge-showcase-item>span{grid-row:1/3;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:linear-gradient(145deg,#fff3bd,#d8aa27);color:#17120b;font-size:24px}.profile-badge-showcase-item small{color:var(--muted)}
.payment-readiness-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.payment-readiness-card{display:grid;align-content:start;gap:8px}.payment-readiness-card.is-unavailable{opacity:.72;border-style:dashed}.payment-readiness-card small{color:var(--muted)}
.dual-course-purchase button:disabled,.subscription-plan-card button:disabled{cursor:not-allowed;opacity:.55}
@media(max-width:900px){.level-roadmap,.payment-readiness-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.level-hero{grid-template-columns:1fr 2fr}.level-hero>div:last-child{grid-column:1/-1}}
@media(max-width:700px){.progress-navigation,.profile-badge-showcase-grid,.level-summary-grid{grid-template-columns:1fr}.level-hero{grid-template-columns:1fr}.level-hero>div:last-child{grid-column:auto}.level-roadmap,.payment-readiness-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.level-roadmap,.payment-readiness-grid{grid-template-columns:1fr}}

/* Release 85.3 — profily společného studia. */
.course-social-strip__people--button{appearance:none;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:12px;padding:4px;margin:-4px;transition:background .16s ease,transform .16s ease}.course-social-strip__people--button:hover,.course-social-strip__people--button:focus-visible{background:var(--tile2);transform:translateY(-1px);outline:1px solid var(--line2)}
.course-study-members-open{overflow:hidden}.course-study-members-modal{position:fixed;inset:0;z-index:2600;display:grid;place-items:center;padding:20px}.course-study-members-backdrop{position:absolute;inset:0;border:0;background:rgba(0,0,0,.78);backdrop-filter:blur(12px)}.course-study-members-card{position:relative;z-index:1;width:min(620px,100%);max-height:min(760px,92vh);display:grid;grid-template-rows:auto 1fr auto;overflow:hidden;border:1px solid var(--line2);border-top:5px solid var(--white);background:var(--ink);box-shadow:0 30px 100px #000}.course-study-members-card>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid var(--line)}.course-study-members-card h2{margin:3px 0 0}.course-study-members-card header small{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:800}.course-study-members-close{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line2);background:transparent;color:var(--white);font-size:24px}.course-study-members-list{display:grid;align-content:start;gap:8px;padding:14px;overflow:auto}.course-study-member{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:12px;border:1px solid var(--line);background:var(--tile);color:var(--white);text-align:left}.course-study-member:not(:disabled){cursor:pointer}.course-study-member:not(:disabled):hover{border-color:var(--white);background:var(--tile2)}.course-study-member:disabled{opacity:.62;cursor:not-allowed}.course-study-member__avatar{position:relative;display:grid;place-items:center;width:52px;height:52px;border:1px solid var(--line2);border-radius:50%;overflow:hidden;background:var(--tile2)}.course-study-member__avatar img{width:100%;height:100%;object-fit:cover}.course-study-member>span:nth-child(2){display:grid;gap:4px;min-width:0}.course-study-member strong,.course-study-member small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-study-member small{color:var(--muted)}.course-study-member>b{font-size:22px}.course-study-members-card>footer{padding:14px 20px;border-top:1px solid var(--line);display:flex;justify-content:flex-end}
@media(max-width:640px){.course-study-members-modal{padding:0;align-items:end}.course-study-members-card{width:100%;max-height:88dvh;border-radius:18px 18px 0 0;border-bottom:0}.course-study-member{grid-template-columns:46px minmax(0,1fr) auto}.course-study-member__avatar{width:46px;height:46px}}


/* Release 85.3.8 — regression-safe modal layering.
   Keeps the 85.3.6 layout and only guarantees that course/public profile close controls sit above the shared shell. */
.creator-profile-modal-shell,
.course-study-members-modal {
  z-index: 2147483600 !important;
}
.creator-profile-modal-close,
.course-study-members-close {
  z-index: 20 !important;
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  cursor: pointer !important;
}
@media(max-width:900px) {
  .creator-profile-modal-close {
    position: sticky !important;
    top: 8px !important;
    display: grid !important;
    place-items: center !important;
    margin: 0 0 -48px auto !important;
    background: var(--black) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,.35) !important;
  }
  .creator-profile-modal-header {
    padding-right: 56px !important;
  }
}

/* Release 85.4 — restore desktop profile sections as real modals, not fullscreen pages. */
@media(min-width:901px){
  .platform-profile-modal{
    position:fixed!important;
    inset:0!important;
    z-index:5000!important;
    display:grid!important;
    place-items:center!important;
    padding:26px!important;
    background:transparent!important;
    isolation:isolate!important;
  }
  .platform-profile-card--embed{
    position:relative!important;
    z-index:1!important;
    width:min(1120px,calc(100vw - 52px))!important;
    height:min(82dvh,780px)!important;
    overflow:hidden!important;
    border:1px solid var(--line2)!important;
    border-radius:18px!important;
    background:var(--panel,#050505)!important;
    box-shadow:0 30px 100px rgba(0,0,0,.62)!important;
  }
  .platform-profile-card--embed .platform-profile-embed{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    border:0!important;
    background:transparent!important;
  }
  .platform-profile-modal-close{
    position:absolute!important;
    top:12px!important;
    right:12px!important;
    z-index:2!important;
    display:grid!important;
    place-items:center!important;
    width:42px!important;
    height:42px!important;
    border:1px solid var(--line2)!important;
    border-radius:999px!important;
    background:var(--black,#050505)!important;
    color:var(--white,#fff)!important;
    font-size:24px!important;
    cursor:pointer!important;
  }
}

/* --------------------------------------------------------------------------
   v8.61 / release 85.4.0 — stabilized public Kurzy design
   Visual language is derived from the exported Informatika course package:
   monochrome editorial hero, square bordered cards and readable course grids.
   The scope is intentionally limited to public learning routes so Studio,
   teacher administration and lesson-player logic keep their proven layout.
   -------------------------------------------------------------------------- */
.page.page-layout-learning{
  max-width:none;
  width:100%;
  margin:0;
  padding:0;
  min-height:calc(100vh - 120px);
  background:#e9e9e6;
  color:#111;
}
.page-layout-learning .learning-shell{max-width:1440px;margin:0 auto;padding:28px clamp(18px,4vw,58px) 82px}
.page-layout-learning .learning-eyebrow{display:block;color:#b9b9b4;font-size:10px;font-weight:950;letter-spacing:.15em;text-transform:uppercase}
.page-layout-learning .learning-eyebrow--dark{color:#666}
.page-layout-learning .learning-hero,
.page-layout-learning .learning-course-hero{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);
  gap:28px;
  min-height:410px;
  padding:clamp(34px,5vw,66px);
  border:1px solid #333;
  border-radius:0;
  background:linear-gradient(135deg,#080808,#242424);
  color:#f5f5f2;
  box-shadow:none;
}
.page-layout-learning .learning-hero:before,
.page-layout-learning .learning-course-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(180deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:42px 42px;pointer-events:none}
.page-layout-learning .learning-hero>* ,
.page-layout-learning .learning-course-hero>*{position:relative;z-index:1}
.page-layout-learning .learning-hero--compact{min-height:315px;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr)}
.page-layout-learning .learning-hero h1,
.page-layout-learning .learning-course-hero h1{max-width:950px;margin:18px 0 20px;font-size:clamp(50px,7.8vw,100px);line-height:.88;letter-spacing:-.075em;color:#fff}
.page-layout-learning .learning-hero--compact h1{font-size:clamp(48px,6vw,78px)}
.page-layout-learning .learning-hero p,
.page-layout-learning .learning-course-hero p{max-width:780px;margin:0;color:#c9c9c4;font-size:17px;line-height:1.65}
.page-layout-learning .learning-actions,
.page-layout-learning .learning-course-hero__actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
.page-layout-learning .btn{border-radius:0;background:#111;color:#fff;border-color:#111;box-shadow:none}
.page-layout-learning .btn:hover{background:#2a2a2a;border-color:#2a2a2a;color:#fff}
.page-layout-learning .btn.secondary{background:#fff;color:#111;border-color:#aaa}
.page-layout-learning .btn.secondary:hover{background:#eee;border-color:#111;color:#111}
.page-layout-learning .learning-hero .btn,
.page-layout-learning .learning-course-hero .btn,
.page-layout-learning .learning-progress-banner .btn{background:#f5f5f2;color:#070707;border-color:#f5f5f2}
.page-layout-learning .learning-hero .btn:hover,
.page-layout-learning .learning-course-hero .btn:hover,
.page-layout-learning .learning-progress-banner .btn:hover{background:#d8d8d4;border-color:#d8d8d4;color:#070707}
.page-layout-learning .learning-hero .btn.secondary,
.page-layout-learning .learning-course-hero .btn.secondary,
.page-layout-learning .learning-progress-banner .btn.secondary{background:transparent;color:#f5f5f2;border-color:#666}
.page-layout-learning .learning-hero .btn.secondary:hover,
.page-layout-learning .learning-course-hero .btn.secondary:hover,
.page-layout-learning .learning-progress-banner .btn.secondary:hover{background:#202020;border-color:#f5f5f2;color:#fff}
.page-layout-learning .learning-dark-button{align-self:end}
.page-layout-learning .learning-hero__stats,
.page-layout-learning .learning-course-hero__stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-content:end}
.page-layout-learning .learning-hero__stats>div,
.page-layout-learning .learning-course-hero__stats>div{min-height:112px;padding:18px;border:1px solid #454545;background:rgba(7,7,7,.72)}
.page-layout-learning .learning-hero__stats span,
.page-layout-learning .learning-course-hero__stats span{display:block;color:#858580;font-size:9px;font-weight:950;letter-spacing:.11em;text-transform:uppercase}
.page-layout-learning .learning-hero__stats strong,
.page-layout-learning .learning-course-hero__stats strong{display:block;margin-top:10px;color:#fff;font-size:clamp(24px,3vw,36px);line-height:1}
.page-layout-learning .learning-section,
.page-layout-learning .learning-catalog,
.page-layout-learning .learning-outline-panel{margin-top:22px;padding:30px;border:1px solid #c7c7c2;background:#f7f7f5}
.page-layout-learning .learning-section__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}
.page-layout-learning .learning-section__head h2{margin:6px 0 4px;color:#111;font-size:clamp(30px,4vw,48px);line-height:.95;letter-spacing:-.055em}
.page-layout-learning .learning-section__head p{max-width:700px;margin:0;color:#5e5e5a}
.page-layout-learning .learning-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border:1px solid #c7c7c2;background:#c7c7c2}
.page-layout-learning .learning-course-card{position:relative;display:flex;flex-direction:column;min-width:0;min-height:360px;padding:22px;background:#fff;color:#111;cursor:pointer;transition:background .16s ease,transform .16s ease}
.page-layout-learning .learning-course-card:hover,
.page-layout-learning .learning-course-card:focus-visible{z-index:1;background:#efefec;outline:2px solid #111;outline-offset:-2px;transform:translateY(-1px)}
.page-layout-learning .learning-course-card[hidden]{display:none}
.page-layout-learning .learning-course-card__top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.page-layout-learning .learning-course-index{display:grid;place-items:center;width:44px;height:44px;border:1px solid #aaa;background:#fff;font-size:12px;font-weight:950}
.page-layout-learning .learning-course-status{font-size:9px;font-weight:950;letter-spacing:.1em;text-transform:uppercase;color:#666}
.page-layout-learning .learning-course-card__body{margin:26px 0 18px}
.page-layout-learning .learning-course-card__body small{display:block;color:#777;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.page-layout-learning .learning-course-card h2{margin:8px 0 10px;color:#111;font-size:clamp(22px,2.2vw,31px);line-height:1.02;letter-spacing:-.045em}
.page-layout-learning .learning-course-card p{margin:0;color:#555;font-size:13px;line-height:1.6}
.page-layout-learning .learning-course-card__meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:14px;border-top:1px solid #d4d4cf}
.page-layout-learning .learning-course-card__meta span{padding:5px 7px;border:1px solid #bbb;color:#555;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.045em}
.page-layout-learning .learning-course-card__actions{display:flex;gap:8px;margin-top:14px}
.page-layout-learning .learning-course-card__actions .btn{width:100%;min-height:44px}
.page-layout-learning .learning-course-progress{display:grid;grid-template-columns:1fr auto;gap:8px;margin:0 0 14px;color:#555;font-size:11px}
.page-layout-learning .learning-course-progress>div{grid-column:1/-1;height:4px;background:#ddd}
.page-layout-learning .learning-course-progress i{display:block;height:100%;background:#111}
.page-layout-learning .learning-course-progress b,
.page-layout-learning .learning-course-progress strong{color:#111}
.page-layout-learning .learning-my-section{background:#f2f2ef}
.page-layout-learning .learning-my-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.page-layout-learning .learning-my-course{display:flex;flex-direction:column;min-height:270px;padding:20px;border:1px solid #c2c2bc;background:#fff;color:#111;box-shadow:0 18px 45px rgba(0,0,0,.06)}
.page-layout-learning .learning-my-course.is-open{border-color:#111;background:linear-gradient(180deg,#fff,#f4f4f0)}
.page-layout-learning .learning-my-course.is-locked{background:linear-gradient(180deg,#fff,#ededeb)}
.page-layout-learning .learning-my-course__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.page-layout-learning .learning-my-course__head span{padding:6px 8px;border:1px solid #bbb;background:#f8f8f6;color:#555;font-size:9px;font-weight:950;letter-spacing:.1em;text-transform:uppercase}
.page-layout-learning .learning-my-course__head strong{font-size:24px;line-height:1;color:#111}
.page-layout-learning .learning-my-course h3{margin:0 0 10px;color:#111;font-size:clamp(24px,2.6vw,38px);line-height:.95;letter-spacing:-.055em}
.page-layout-learning .learning-my-course p{margin:0 0 14px;color:#555;font-size:13px;line-height:1.55}
.page-layout-learning .learning-my-course .learning-course-progress{margin-top:auto}
.page-layout-learning .learning-my-course__facts{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.page-layout-learning .learning-my-course__facts span{padding:5px 7px;border:1px solid #c9c9c4;color:#555;font-size:9px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}
.page-layout-learning .learning-my-course__actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:14px}
.page-layout-learning .learning-my-course__actions .btn{width:100%;min-height:42px}
.page-layout-learning .learning-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,320px) auto auto;gap:10px;align-items:end;margin-bottom:14px}
.page-layout-learning .learning-toolbar label{display:grid;gap:6px}
.page-layout-learning .learning-toolbar label>span{color:#666;font-size:9px;font-weight:950;letter-spacing:.1em;text-transform:uppercase}
.page-layout-learning .learning-toolbar input,
.page-layout-learning .learning-toolbar select{width:100%;min-height:48px;padding:0 14px;border:1px solid #aaa;border-radius:0;background:#fff;color:#111;font:inherit;outline:none}
.page-layout-learning .learning-toolbar input:focus,
.page-layout-learning .learning-toolbar select:focus{border-color:#111;box-shadow:0 0 0 1px #111}
.page-layout-learning .learning-toolbar__count{min-width:86px;min-height:48px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:6px;padding:0 12px;border:1px solid #aaa;background:#fff}
.page-layout-learning .learning-toolbar__count strong{font-size:22px}
.page-layout-learning .learning-toolbar__count span{color:#666;font-size:9px;text-transform:uppercase;font-weight:900}
.page-layout-learning .learning-toolbar__studio{min-height:48px}
.page-layout-learning .learning-empty{grid-column:1/-1;padding:48px;border:1px solid #c7c7c2;background:#fff;color:#666;text-align:center}
.page-layout-learning .learning-progress-banner{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:22px;padding:32px;border:1px solid #333;background:#111;color:#fff}
.page-layout-learning .learning-progress-banner h2{margin:6px 0;color:#fff;font-size:34px}
.page-layout-learning .learning-progress-banner p{margin:0;color:#aaa}
.page-layout-learning .learning-achievements{margin-top:22px;padding:30px;background:#111;color:#fff;border:1px solid #333}
.page-layout-learning .learning-achievements .learning-section__head h2{color:#fff}
.page-layout-learning .learning-achievements .learning-section__head{border-bottom:1px solid #444;padding-bottom:20px}
.page-layout-learning .learning-badge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#444}
.page-layout-learning .learning-badge-grid>article{display:grid;grid-template-columns:56px minmax(0,1fr);gap:16px;padding:20px;background:#171717}
.page-layout-learning .learning-badge-grid>article>span{display:grid;place-items:center;width:56px;height:56px;border:1px solid #555;background:#f5f5f2;color:#111;font-size:25px}
.page-layout-learning .learning-badge-grid small{color:#888;text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:900}
.page-layout-learning .learning-badge-grid h3{margin:5px 0;color:#fff}
.page-layout-learning .learning-badge-grid p{margin:0;color:#aaa;font-size:12px}
.page-layout-learning .learning-course-hero .course-author{color:#fff}
.page-layout-learning .learning-course-hero .course-author__text strong{color:#fff}
.page-layout-learning .learning-course-progress-panel{margin-top:14px;padding:22px;border:1px solid #c7c7c2;background:#fff;color:#111}
.page-layout-learning .learning-course-progress-panel>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:12px;text-transform:uppercase;letter-spacing:.07em}
.page-layout-learning .learning-course-progress-panel>div:first-child strong{font-size:24px}
.page-layout-learning .learning-course-progress-track{height:5px;margin-top:12px;background:#ddd}
.page-layout-learning .learning-course-progress-track i{display:block;height:100%;background:#111}
.page-layout-learning .learning-course-facts{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}
.page-layout-learning .learning-course-facts span{padding:6px 8px;border:1px solid #bbb;color:#555;font-size:10px;font-weight:850;text-transform:uppercase}
.page-layout-learning .learning-course-progress-panel .course-social-strip--detail{margin-top:18px;border-radius:0;border-color:#bbb;background:#f4f4f2}
.page-layout-learning .learning-overview-note{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;padding:16px 18px;border:1px solid #c7c7c2;border-left:5px solid #111;background:#fff;color:#111}
.page-layout-learning .learning-overview-note strong{font-size:18px}.page-layout-learning .learning-overview-note p{margin:0;color:#666}
.page-layout-learning .learning-overview-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.72fr) minmax(300px,.72fr);gap:14px;margin-top:20px}
.page-layout-learning .learning-overview-grid>.card,.page-layout-learning .learning-overview-grid>.learning-course-progress-panel,.page-layout-learning .learning-overview-wallet{margin-top:0;min-height:310px}
.page-layout-learning .learning-overview-main-card{background:linear-gradient(180deg,#fff,#f3f3ef)}
.page-layout-learning .learning-overview-main-card h2,.page-layout-learning .learning-overview-next-card h2{margin:16px 0 10px;color:#111;font-size:clamp(30px,3vw,46px);line-height:.96;letter-spacing:-.055em}
.page-layout-learning .learning-overview-next-card{padding:24px;border:1px solid #c7c7c2;background:#fff;color:#111}
.page-layout-learning .learning-overview-next-card p{color:#666;line-height:1.55}
.page-layout-learning .learning-overview-wallet{padding:22px;border:1px solid #c7c7c2;background:#111;color:#f5f5f2}
.page-layout-learning .learning-overview-wallet h2{margin:14px 0;color:#fff;font-size:clamp(30px,3.5vw,54px);line-height:.9;letter-spacing:-.06em}
.page-layout-learning .learning-overview-wallet__chips{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 16px}
.page-layout-learning .learning-overview-wallet__chips span{padding:7px 9px;border:1px solid #444;background:#181818;color:#d8d8d4;font-size:10px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
.page-layout-learning .learning-weekly-pass-mini{display:grid;gap:8px}
.page-layout-learning .learning-weekly-pass-mini article{display:grid;grid-template-columns:46px 56px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid #333;background:#080808}
.page-layout-learning .learning-weekly-pass-mini span{display:grid;place-items:center;width:46px;height:46px;background:#f5f5f2;color:#111;font-size:11px;font-weight:950;letter-spacing:.1em}
.page-layout-learning .learning-weekly-pass-mini strong{color:#fff;font-size:32px;line-height:.9}
.page-layout-learning .learning-weekly-pass-mini small{display:block;color:#f5f5f2;font-weight:900}.page-layout-learning .learning-weekly-pass-mini em{display:block;margin-top:3px;color:#9a9a96;font-size:11px;font-style:normal}
.page-layout-learning .learning-weekly-pass-mini i{grid-column:3/5;height:5px;background:#222;border:1px solid #333}.page-layout-learning .learning-weekly-pass-mini i b{display:block;height:100%;background:#d8c079}
.page-layout-learning .learning-weekly-pass-mini button{min-height:34px;padding:0 10px;border:1px solid #555;background:transparent;color:#f5f5f2;font-size:11px;font-weight:900;text-transform:uppercase}
.page-layout-learning .learning-overview-queue{background:#fff}
.page-layout-learning .learning-next-list{display:grid;gap:1px;border:1px solid #c7c7c2;background:#c7c7c2}
.page-layout-learning .learning-next-row{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:14px;align-items:center;width:100%;padding:16px;border:0;background:#fff;color:#111;text-align:left;cursor:pointer}
.page-layout-learning .learning-next-row:hover,.page-layout-learning .learning-next-row:focus-visible{outline:2px solid #111;outline-offset:-2px;background:#efefec}
.page-layout-learning .learning-next-row>span{display:grid;place-items:center;width:42px;height:42px;background:#111;color:#fff;font-weight:950}
.page-layout-learning .learning-next-row strong{font-size:18px}.page-layout-learning .learning-next-row small{color:#666}.page-layout-learning .learning-next-row.is-locked{opacity:.68}
.page-layout-learning .learning-empty--compact{padding:24px;text-align:left}
.page-layout-learning .learning-suggestion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border:1px solid #c7c7c2;background:#c7c7c2}
.page-layout-learning .learning-suggestion-card{display:grid;align-content:start;gap:12px;min-height:230px;padding:22px;background:#fff;color:#111}
.page-layout-learning .learning-suggestion-card small{color:#777;font-size:10px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.page-layout-learning .learning-suggestion-card h3{margin:0;color:#111;font-size:27px;line-height:1;letter-spacing:-.045em}.page-layout-learning .learning-suggestion-card p{margin:0;color:#666;line-height:1.5}.page-layout-learning .learning-suggestion-card>div{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto}.page-layout-learning .learning-suggestion-card span{color:#555;font-size:11px;font-weight:900;text-transform:uppercase}
.page-layout-learning .learning-course-detail>.course-player-settings{border-radius:0;box-shadow:none}
.page-layout-learning .learning-outline-panel{padding:30px}
.page-layout-learning .learning-outline-panel .course-chapter-outline.tree{gap:14px}
.page-layout-learning .learning-outline-panel .course-outline-node{margin:0;padding:0;border:1px solid #bdbdb8;border-radius:0;background:#fff;color:#111}
.page-layout-learning .learning-outline-panel .course-outline-node.depth-0{background:#fff}
.page-layout-learning .learning-outline-panel .course-outline-node-head{gap:14px;padding:18px 20px;border-bottom:1px solid #d0d0cb}
.page-layout-learning .learning-outline-panel .course-outline-node-head>span{width:42px;height:42px;border-radius:0;border:1px solid #111;background:#111;color:#fff}
.page-layout-learning .learning-outline-panel .course-outline-node-head h3{color:#111;font-size:23px}
.page-layout-learning .learning-outline-panel .course-outline-node-head p{color:#777}
.page-layout-learning .learning-outline-panel .course-lessons{gap:1px;margin:0;background:#d0d0cb}
.page-layout-learning .learning-outline-panel .public-lesson-row{margin:0;padding:16px 18px;border:0;border-radius:0;background:#fff;color:#111;box-shadow:none}
.page-layout-learning .learning-outline-panel .public-lesson-row:hover{background:#f0f0ed;transform:none}
.page-layout-learning .learning-outline-panel .public-lesson-row.locked{opacity:.62;background:#f4f4f2}
.page-layout-learning .learning-outline-panel .public-lesson-titleline strong{color:#111}
.page-layout-learning .learning-outline-panel .outline-lesson-number{border-radius:0;background:#111;color:#fff}
.page-layout-learning .learning-outline-panel .access-pill{border-radius:0;border-color:#aaa;background:#fff;color:#555}
.page-layout-learning .learning-outline-panel .access-pill.free{border-color:#111;background:#111;color:#fff}
.page-layout-learning .learning-outline-panel .public-lesson-row p{color:#666}
.page-layout-learning .learning-outline-panel .lesson-meta{color:#777}
.page-layout-learning .learning-outline-panel .course-outline-children{margin:0;padding:14px;border-left:12px solid #e3e3df;background:#f2f2ef}
.page-layout-learning .learning-outline-panel .course-outline-children>.course-outline-node{margin-top:10px}
.page-layout-learning .learning-outline-panel .course-outline-children>.course-outline-node:first-child{margin-top:0}
.page-layout-learning .learning-outline-panel .finaltest-end{border-top:3px solid #111}
.page-layout-learning .notice{border-radius:0}
.page-layout-learning .footer{border-radius:0}

@media(max-width:1080px){
  .page-layout-learning .learning-overview-grid{grid-template-columns:1fr 1fr}
  .page-layout-learning .learning-overview-wallet{grid-column:1/-1}
  .page-layout-learning .learning-suggestion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-layout-learning .learning-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-layout-learning .learning-my-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-layout-learning .learning-toolbar{grid-template-columns:minmax(0,1fr) minmax(200px,280px) auto}
  .page-layout-learning .learning-toolbar__studio{grid-column:1/-1}
}
@media(max-width:900px){
  .page-layout-learning .learning-shell{padding:18px 16px 88px}
  .page-layout-learning .learning-hero,
  .page-layout-learning .learning-course-hero,
  .page-layout-learning .learning-hero--compact{grid-template-columns:1fr;min-height:auto;padding:34px 26px}
  .page-layout-learning .learning-hero__stats,
  .page-layout-learning .learning-course-hero__stats{grid-template-columns:repeat(4,minmax(0,1fr))}
  .page-layout-learning .learning-hero__stats>div,
  .page-layout-learning .learning-course-hero__stats>div{min-height:92px;padding:13px}
  .page-layout-learning .learning-section__head{align-items:flex-start;flex-direction:column}
  .page-layout-learning .learning-progress-banner{align-items:flex-start;flex-direction:column}
  .page-layout-learning .learning-overview-grid{grid-template-columns:1fr}
  .page-layout-learning .learning-overview-grid>.card,.page-layout-learning .learning-overview-grid>.learning-course-progress-panel,.page-layout-learning .learning-overview-wallet{min-height:0}
}
@media(max-width:680px){
  .page-layout-learning .learning-shell{padding:12px 10px 88px}
  .page-layout-learning .learning-hero,
  .page-layout-learning .learning-course-hero,
  .page-layout-learning .learning-hero--compact{padding:28px 20px}
  .page-layout-learning .learning-hero h1,
  .page-layout-learning .learning-course-hero h1,
  .page-layout-learning .learning-hero--compact h1{font-size:clamp(43px,13vw,64px);line-height:.9}
  .page-layout-learning .learning-hero p,
  .page-layout-learning .learning-course-hero p{font-size:15px}
  .page-layout-learning .learning-hero__stats,
  .page-layout-learning .learning-course-hero__stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-layout-learning .learning-section,
  .page-layout-learning .learning-catalog,
  .page-layout-learning .learning-outline-panel,
  .page-layout-learning .learning-achievements{padding:18px 12px}
  .page-layout-learning .learning-course-grid{grid-template-columns:1fr}
  .page-layout-learning .learning-my-grid{grid-template-columns:1fr}
  .page-layout-learning .learning-my-course{min-height:0;padding:17px}
  .page-layout-learning .learning-suggestion-grid{grid-template-columns:1fr}
  .page-layout-learning .learning-overview-note{display:grid}
  .page-layout-learning .learning-next-row{grid-template-columns:44px minmax(0,1fr);gap:10px}
  .page-layout-learning .learning-next-row small{grid-column:2}
  .page-layout-learning .learning-weekly-pass-mini article{grid-template-columns:42px 46px minmax(0,1fr)}
  .page-layout-learning .learning-weekly-pass-mini button{grid-column:1/-1}
  .page-layout-learning .learning-weekly-pass-mini i{grid-column:2/4}
  .page-layout-learning .learning-course-card{min-height:330px;padding:19px}
  .page-layout-learning .learning-toolbar{grid-template-columns:1fr}
  .page-layout-learning .learning-toolbar__count{grid-template-columns:auto auto;justify-content:start}
  .page-layout-learning .learning-actions,
  .page-layout-learning .learning-course-hero__actions{display:grid;grid-template-columns:1fr}
  .page-layout-learning .learning-actions .btn,
  .page-layout-learning .learning-course-hero__actions .btn{width:100%;min-height:50px}
  .page-layout-learning .learning-badge-grid{grid-template-columns:1fr}
  .page-layout-learning .learning-course-progress-panel{padding:16px 13px}
  .page-layout-learning .learning-outline-panel .course-outline-node-head{align-items:flex-start;padding:15px 13px}
  .page-layout-learning .learning-outline-panel .course-outline-node-head>span{width:36px;height:36px;min-width:36px}
  .page-layout-learning .learning-outline-panel .public-lesson-row{grid-template-columns:1fr;padding:15px 13px}
  .page-layout-learning .learning-outline-panel .public-lesson-row .btn{width:100%;min-height:46px}
  .page-layout-learning .learning-outline-panel .course-outline-children{padding:8px;border-left-width:5px}
  .page-layout-learning .learning-course-progress-panel .course-social-strip--detail{display:grid;align-items:stretch}
  .page-layout-learning .learning-course-progress-panel .course-social-open{width:100%}
}

/* Release 85.5.0 — privacy-enhanced YouTube video pipeline. */
.course-youtube-player{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border:1px solid var(--line);background:#000}
.course-youtube-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000}
.course-youtube-error{display:grid;gap:10px;place-items:start;padding:22px;border:1px solid var(--line);border-left:5px solid #b75b5b;background:#171010;color:var(--text)}
.course-youtube-error.is-processing{border-left-color:#b89b56;background:#18160f}
.course-youtube-error strong{font-size:18px}.course-youtube-error p{margin:0;color:var(--muted)}
.course-youtube-direct{margin-top:4px}
@media(max-width:760px){.course-youtube-error{padding:16px}.course-youtube-player{width:calc(100% + 0px)}}

/*
 * Targeted course presentation refresh.
 * Mirrors the supplied course package while retaining the live platform
 * controls, progress persistence, quizzes, homework and access rules.
 */
.page-layout-learning .learning-course-detail{max-width:1500px;margin:0 auto}
.page-layout-learning .learning-outline-panel{background:#ececea}
.page-layout-learning .learning-outline-panel .course-outline-node{overflow:hidden}
.page-layout-learning .learning-outline-panel .course-lessons{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  margin:0;
  background:#cfcfca;
}
.page-layout-learning .learning-outline-panel .public-lesson-row{
  display:flex;
  min-height:245px;
  flex-direction:column;
  align-items:stretch;
  justify-content:space-between;
  gap:22px;
  padding:22px;
}
.page-layout-learning .learning-outline-panel .public-lesson-row>div:first-child{display:grid;gap:10px}
.page-layout-learning .learning-outline-panel .public-lesson-titleline{align-items:flex-start}
.page-layout-learning .learning-outline-panel .public-lesson-titleline strong{
  flex:1 1 180px;
  font-size:18px;
  line-height:1.18;
}
.page-layout-learning .learning-outline-panel .public-lesson-row p{margin:0;line-height:1.55}
.page-layout-learning .learning-outline-panel .public-lesson-row>div:last-child,
.page-layout-learning .learning-outline-panel .public-lesson-row .btn{width:100%}
.page-layout-learning .learning-outline-panel .course-outline-children{
  grid-column:1/-1;
  border-left:0;
  border-top:1px solid #cfcfca;
}

/* Lesson layout from the supplied student course: fixed dark rail + paper. */
.page-kurzy:has(.lesson-page){
  width:min(1500px,100%);
  max-width:none;
  padding:0;
  background:#fff;
  color:#111;
}
.lesson-page{
  max-width:none;
  margin:0;
  grid-template-columns:245px minmax(0,1fr);
  gap:0;
  background:#fff;
  color:#111;
}
.lesson-page>.lesson-nav:first-child{
  grid-column:1/-1;
  min-height:68px;
  margin:0;
  padding:12px 28px;
  border-bottom:1px solid #d7d7d7;
  background:#111;
  color:#fff;
}
.lesson-page>.lesson-nav:first-child .btn{border-color:#555;background:#1b1b1b;color:#fff}
.lesson-page>.lesson-nav:first-child .btn:hover{border-color:#fff;background:#fff;color:#111}
.lesson-page>.lesson-nav:first-child .lesson-step{border-color:#555;color:#bbb}
.lesson-page>.lesson-hero{
  grid-column:2;
  grid-row:2;
  min-height:420px;
  padding:64px max(36px,6vw);
  border:0;
  border-bottom:1px solid #d7d7d7;
  border-radius:0;
  background:#fff;
  color:#111;
  box-shadow:none;
}
.lesson-page>.lesson-hero:before{display:none}
.lesson-page>.lesson-hero h1{
  max-width:980px;
  margin:16px 0 20px;
  color:#111;
  font-size:clamp(40px,5.2vw,72px);
  line-height:1.02;
  letter-spacing:-.045em;
}
.lesson-page>.lesson-hero p{max-width:780px;color:#444;font-size:18px}
.lesson-page>.lesson-hero .badge{border-color:#bbb;background:#fff;color:#333}
.lesson-page>.lesson-hero .lesson-start-row{margin-top:28px}
.lesson-page>.lesson-hero .lesson-start-btn{background:#111;color:#fff;border-color:#111}
.lesson-page>.lesson-hero .lesson-start-btn:hover{background:#333;border-color:#333}
.lesson-page>.lesson-hero .btn.ghost{border-color:#888;background:#fff;color:#111}
.lesson-page>.lesson-hero .lesson-start-note{color:#666}
.lesson-page>.lesson-hero .lesson-progress-shell{
  border-color:#bbb;
  border-radius:0;
  background:#f4f4f2;
}
.lesson-page>.lesson-hero .lesson-progress-head{color:#555}
.lesson-page>.lesson-hero .lesson-progress-track{background:#ddd}
.lesson-page>.lesson-hero .lesson-progress-fill{background:#111}
.lesson-page>.lesson-hero .lesson-flow-rail span{border-color:#bbb;background:#fff;color:#111}
.lesson-page>.lesson-course-outline{
  position:sticky;
  top:72px;
  grid-column:1;
  grid-row:2 / span 2;
  align-self:start;
  height:calc(100vh - 72px);
  margin:0;
  padding:27px 22px 86px;
  overflow:auto;
  border:0;
  border-radius:0;
  background:#181818;
  color:#fff;
}
.lesson-page>.lesson-course-outline>.row{display:block}
.lesson-page>.lesson-course-outline .label{color:#aaa;letter-spacing:.12em}
.lesson-page>.lesson-course-outline h2{margin:8px 0 18px;color:#fff;font-size:22px;line-height:1.12}
.lesson-page>.lesson-course-outline>.row>.badge{
  margin-bottom:8px;
  padding:0;
  border:0;
  background:transparent;
  color:#aaa;
}
.lesson-page>.lesson-course-outline .mini-outline-node{
  margin:0;
  padding:0;
  border:0;
}
.lesson-page>.lesson-course-outline .mini-outline-node h3{
  margin:18px 0 6px;
  color:#fff;
  font-size:12px;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.lesson-page>.lesson-course-outline .mini-outline-number{
  min-width:28px;
  height:22px;
  margin-right:7px;
  border-color:#555;
  border-radius:0;
  background:#111;
  color:#fff;
}
.lesson-page>.lesson-course-outline .mini-outline-node>div{display:grid;gap:0}
.lesson-page>.lesson-section-sidebar{display:flex;flex-direction:column}
.lesson-sidebar-back{
  width:100%;
  margin:0 0 24px;
  padding:11px 10px;
  border:1px solid #555;
  background:#111;
  color:#fff;
  font:inherit;
  font-size:11px;
  font-weight:900;
  letter-spacing:.06em;
  text-align:left;
  text-transform:uppercase;
}
.lesson-sidebar-back:hover{border-color:#fff;background:#fff;color:#111}
.lesson-sidebar-number{margin-bottom:20px;color:#aaa;font-size:11px;letter-spacing:.12em}
.lesson-sidebar-number b{margin-left:5px;color:#fff;font-size:28px}
.lesson-section-nav{display:grid;margin-top:2px}
.lesson-page>.lesson-section-sidebar .lesson-section-nav .mini-lesson{display:flex;align-items:center}
.lesson-sidebar-progress{margin-top:auto;padding-top:22px;color:#aaa;font-size:11px}
.lesson-sidebar-progress>div{height:5px;margin:8px 0;background:#333}
.lesson-sidebar-progress i{display:block;height:100%;background:#fff;transition:width .25s ease}
.lesson-sidebar-progress b{color:#fff}
.lesson-page>.lesson-course-outline .mini-lesson{
  width:100%;
  padding:9px 0;
  border:0;
  border-bottom:1px solid #2d2d2d;
  border-radius:0;
  background:transparent;
  color:#bbb;
  text-align:left;
  font-size:12px;
  line-height:1.35;
}
.lesson-page>.lesson-course-outline .mini-lesson:hover,
.lesson-page>.lesson-course-outline .mini-lesson.active{
  padding-left:6px;
  background:transparent;
  color:#fff;
  box-shadow:none;
}
.lesson-page>.lesson-course-outline .mini-lesson span{
  min-width:24px;
  height:20px;
  margin-right:6px;
  border:0;
  border-radius:0;
  background:#333;
  color:#fff;
}
.lesson-page>.lesson-body{
  grid-column:2;
  grid-row:3;
  counter-reset:lesson-section;
  border:0;
  border-radius:0;
  background:#fff;
  color:#111;
}
.lesson-page>.lesson-body>.lesson-section{
  counter-increment:lesson-section;
  padding:54px max(36px,6vw);
  border-bottom:1px solid #d7d7d7;
  background:#fff;
  color:#111;
}
.lesson-page .lesson-block-head{align-items:flex-start;margin-bottom:28px}
.lesson-page .lesson-block-head>div:first-child{display:grid;grid-template-columns:46px minmax(0,1fr);column-gap:18px}
.lesson-page .lesson-block-step{
  grid-row:1 / span 2;
  display:grid;
  width:46px;
  height:46px;
  place-items:center;
  overflow:hidden;
  background:#111;
  color:#fff;
  font-size:0;
}
.lesson-page .lesson-block-step:before{content:counter(lesson-section,decimal-leading-zero);font-size:12px}
.lesson-page .lesson-block-head h2{
  margin:0;
  color:#111;
  font-size:clamp(27px,3vw,42px);
  line-height:1.1;
}
.lesson-page .lesson-block-check{border-color:#aaa;background:#fff;color:#111}
.lesson-page .lesson-article{
  max-width:900px;
  color:#222;
  font-family:Georgia,"Times New Roman",serif;
  font-size:18px;
  line-height:1.72;
}
.lesson-page .lesson-flow-block[data-flow-type="text"] .lesson-article>p:first-of-type::first-letter{
  float:left;
  margin:9px 8px 0 0;
  font-size:50px;
  font-weight:700;
  line-height:.8;
}
.lesson-page .lesson-goal-block{background:#f1f1ed!important}
.lesson-goal-card{max-width:900px;padding:26px 28px;border-left:7px solid #111;background:#fff}
.lesson-goal-card>span{display:block;margin-bottom:8px;color:#666;font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.lesson-goal-card .lesson-article{font-family:inherit;font-size:20px;font-weight:650}
.lesson-task-block .lesson-article{padding:24px 28px;border:1px solid #d4d4d0;background:#f7f7f5}
.lesson-downloads{display:grid;max-width:900px;gap:10px;margin-top:22px}
.lesson-download{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:14px;padding:16px;border:1px solid #cfcfca;background:#fff;color:#111;text-decoration:none}
.lesson-download:hover{border-color:#111;transform:translateY(-1px)}
.lesson-download>span{display:grid;width:48px;height:48px;place-items:center;background:#111;color:#fff;font-size:24px}
.lesson-download>div{display:grid;gap:2px}.lesson-download small{color:#666}
.lesson-download-empty{padding:18px;border:1px dashed #aaa;color:#666;background:#f7f7f5}
.lesson-page>.lesson-resources-panel{
  background:#f7f7f2;
  border-bottom:1px solid #d7d2c8;
}
.lesson-resources-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:18px;
  max-width:1180px;
}
.lesson-resources-head h2{margin:6px 0 4px;color:#111}
.lesson-resources-head p{max-width:760px;margin:0}
.lesson-downloads--resources{
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  max-width:1180px;
}
.lesson-downloads--resources .lesson-download{
  min-height:86px;
  box-shadow:0 12px 34px rgba(0,0,0,.06);
}
.lesson-page .lesson-section p,
.lesson-page .lesson-section .musescore-help{color:#555}
.lesson-page .lesson-section .check-item,
.lesson-page .lesson-section .reward-tile,
.lesson-page .lesson-section .complete-panel,
.lesson-page .lesson-section .homework-section-card{
  border-color:#d7d7d7;
  border-radius:0;
  background:#f7f7f5;
  color:#111;
  box-shadow:none;
}
.lesson-page .lesson-section .check-item span{color:#222}
.lesson-page .lesson-section .complete-panel{border-color:#111;background:#111;color:#fff}
.lesson-page .lesson-section .complete-panel h2{color:#fff}
.lesson-page .lesson-section .complete-panel p{color:#ccc}
.lesson-page .lesson-section .complete-panel .btn{background:#fff;color:#111;border-color:#fff}
.lesson-page .lesson-body>.lesson-nav{
  margin:0;
  padding:34px max(36px,6vw);
  background:#fff;
}

@media(max-width:1100px){
  .page-layout-learning .learning-outline-panel .course-lessons{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:920px){
  .page-kurzy:has(.lesson-page){padding:0}
  .lesson-page{display:block}
  .lesson-page>.lesson-course-outline{display:none}
  .lesson-page>.lesson-nav:first-child{padding:10px 14px}
  .lesson-page>.lesson-hero{min-height:0;padding:38px 24px}
  .lesson-resources-head{grid-template-columns:1fr}
  .lesson-resources-head .btn{width:100%}
  .lesson-page>.lesson-body>.lesson-section{padding:36px 24px}
}
@media(max-width:680px){
  .page-layout-learning .learning-outline-panel .course-lessons{grid-template-columns:1fr}
  .page-layout-learning .learning-outline-panel .public-lesson-row{min-height:0}
  .lesson-page>.lesson-hero{padding:30px 18px}
  .lesson-page>.lesson-body>.lesson-section{padding:30px 18px}
}

/* Staging parity: Home / Studio / Zapařeno */
.page-layout-platform-home{--courses:#f4f4f4;--studio:#f4f4f4;--zapareno:#f4f4f4;max-width:1180px;padding:16px 0 34px}
.page-layout-platform-home .updates{margin:0 0 20px;border:1px solid var(--line);background:#171717;color:#f4f4f4;box-shadow:var(--shadow)}
.page-layout-platform-home .updates-head{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:54px;padding:12px 14px;border-bottom:1px solid #3a3a3a}
.page-layout-platform-home .section-kicker{margin:0;color:#b9bec8;font-size:12px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.page-layout-platform-home .updates-controls{display:flex;gap:6px}
.page-layout-platform-home .carousel-btn{display:grid;width:38px;height:38px;place-items:center;border:1px solid #f4f4f4;background:#171717;color:#f4f4f4;font-size:28px;font-weight:850;line-height:1}
.page-layout-platform-home .carousel-btn:hover{background:#f4f4f4;color:#111}
.page-layout-platform-home .updates-carousel{position:relative;min-height:250px;overflow:hidden}
.page-layout-platform-home .update-card{display:none;grid-template-columns:minmax(180px,.72fr) minmax(0,1fr);min-height:250px}
.page-layout-platform-home .update-card.is-active{display:grid}
.page-layout-platform-home .update-media{min-height:250px;background:#111}
.page-layout-platform-home .update-media--text{display:grid;place-items:center;color:#fff;font-size:clamp(44px,8vw,92px);font-weight:950}
.page-layout-platform-home .update-copy{display:grid;align-content:center;gap:12px;padding:clamp(20px,4vw,42px)}
.page-layout-platform-home .update-copy span{color:#b9bec8;font-size:12px;font-weight:900;text-transform:uppercase}
.page-layout-platform-home .update-copy h2{margin:0;color:#f4f4f4;font-size:clamp(28px,4vw,52px)}
.page-layout-platform-home .update-copy p{max-width:660px;margin:0;color:#b9bec8;font-size:17px;line-height:1.6}
.page-layout-platform-home .workspace{display:grid;gap:18px}
.page-layout-platform-home .project-detail{display:none;min-height:460px;align-content:space-between;gap:36px;padding:clamp(22px,4vw,42px);border:1px solid #3a3a3a;border-top:5px solid #f4f4f4;background:#171717;color:#f4f4f4;box-shadow:var(--shadow)}
.page-layout-platform-home .project-detail.is-active{display:grid}
.page-layout-platform-home .project-detail h2{max-width:860px;margin:0 0 14px;color:#f4f4f4;font-size:clamp(42px,6vw,82px);line-height:.9;letter-spacing:-.075em}
.page-layout-platform-home .project-detail p{max-width:760px;color:#b9bec8}
.page-layout-platform-home .platform-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.page-layout-platform-home .platform-tile{--accent:#111;display:grid;min-height:220px;align-content:end;padding:22px;border:1px solid color-mix(in srgb,var(--accent) 32%,#d8d8d8);border-top:5px solid var(--accent);background:color-mix(in srgb,var(--accent) 8%,white);color:#111;text-decoration:none}
.page-layout-platform-home .platform-tile.theme-courses{--accent:#111;background:#121212;color:#fff}
.page-layout-platform-home .platform-tile.theme-studio{--accent:#111;background:#f7f7f5}
.page-layout-platform-home .platform-tile.theme-zapareno{--accent:#f4f4f4;border-color:#3a3a3a;border-top-color:#f4f4f4;background:#0b0b0b;color:#f4f4f4}
.page-layout-platform-home .platform-tile span{color:#777;font-size:12px;font-weight:900;text-transform:uppercase}
.page-layout-platform-home .platform-tile.theme-courses span,.page-layout-platform-home .platform-tile.theme-courses small,.page-layout-platform-home .platform-tile.theme-zapareno span,.page-layout-platform-home .platform-tile.theme-zapareno small{color:#bdbdbd}
.page-layout-platform-home .platform-tile strong{margin-top:8px;font-size:clamp(28px,4vw,42px);line-height:1}
.page-layout-platform-home .platform-tile small{display:block;max-width:260px;margin-top:14px;color:#666;font-size:14px;line-height:1.45}
.page-layout-platform-home .feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.page-layout-platform-home .feature-grid div{min-height:150px;padding:18px;border:1px solid #343434;background:#181818}
.page-layout-platform-home .feature-grid strong,.page-layout-platform-home .feature-grid span{display:block}
.page-layout-platform-home .feature-grid span{margin-top:8px;color:#b9bec8;font-size:12px;font-weight:900;text-transform:uppercase}
.page-layout-platform-home .action-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.page-layout-platform-home .primary-link,.page-layout-platform-home .secondary-link{display:inline-grid;min-height:42px;align-content:center;padding:0 15px;border:1px solid #f4f4f4;color:#f4f4f4;text-decoration:none;font-size:11px;font-weight:900;text-transform:uppercase}
.page-layout-platform-home .primary-link{background:#f4f4f4;color:#111}
.page-layout-platform-home .account-modal{display:none}
.site-footer,.studio-site-footer{display:flex;justify-content:space-between;gap:16px;padding:34px 7vw;border-top:1px solid #3a3a3a;background:#070707;color:#666;font-size:11px;text-transform:uppercase}

.page-layout-studio-landing{max-width:none;padding:0;background:#070707;color:#f4f4f4}
.page-layout-studio-landing p{color:#8c8c8c}
.page-layout-studio-landing .studio-landing-hero{min-height:820px;padding:7vw 7vw 8vw;background:radial-gradient(circle at 78% 35%,#363636 0,transparent 30%)}
.page-layout-studio-landing .studio-eyebrow{color:#777;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.page-layout-studio-landing .studio-landing-hero h1{max-width:1250px;margin:30px 0;color:#f4f4f4;font-size:clamp(62px,9vw,138px);line-height:.86;letter-spacing:-.075em}
.page-layout-studio-landing .studio-landing-hero p{max-width:760px;font-size:20px;line-height:1.65}
.page-layout-studio-landing .download-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:1180px;margin-top:42px}
.page-layout-studio-landing .download-card{position:relative;display:grid;min-height:190px;align-content:end;padding:24px;border:1px solid #3a3a3a;background:#111;color:#f4f4f4;text-decoration:none}
.page-layout-studio-landing .download-card>span{position:absolute;top:20px;left:20px;color:#777;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.page-layout-studio-landing .download-card strong{font-size:24px;letter-spacing:-.03em}
.page-layout-studio-landing .download-card small{margin-top:8px;color:#8c8c8c;font-size:11px}
.page-layout-studio-landing .download-card em{margin-top:22px;color:#777;font-size:9px;font-style:normal;text-transform:uppercase}
.page-layout-studio-landing .download-card.is-available{border-color:#f4f4f4;background:#f4f4f4;color:#070707}
.page-layout-studio-landing .download-card.is-available small,.page-layout-studio-landing .download-card.is-available em,.page-layout-studio-landing .download-card.is-available>span{color:#555}
.page-layout-studio-landing .download-card.is-unavailable{cursor:not-allowed;opacity:.5}
.page-layout-studio-landing .macos-gatekeeper-help{max-width:920px;margin-top:20px;padding:18px;border:1px solid #3a3a3a;background:#111;color:#f4f4f4}
.page-layout-studio-landing .macos-gatekeeper-help div{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:10px}
.page-layout-studio-landing .macos-gatekeeper-help code{padding:8px 10px;background:#070707;color:#d7d7d7}
.page-layout-studio-landing .macos-gatekeeper-help button{min-height:34px;border:1px solid #3a3a3a;background:#171717;color:#f4f4f4;text-transform:uppercase;font-size:10px;font-weight:900}
.page-layout-studio-landing .hero-secondary-actions{display:flex;align-items:center;gap:18px;margin-top:20px;flex-wrap:wrap}
.page-layout-studio-landing .secondary-link{display:inline-flex;min-height:42px;align-items:center;padding:0 15px;border:1px solid #3a3a3a;background:#111;color:#f4f4f4;font-size:10px;font-weight:850;text-decoration:none;text-transform:uppercase}
.page-layout-studio-landing .secondary-link:hover{border-color:#f4f4f4;background:#171717}
.page-layout-studio-landing .hero-secondary-actions span{color:#777;font-size:10px}
.page-layout-studio-landing .tutorial{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.5fr);gap:55px;padding:7vw;border-top:1px solid #3a3a3a;background:#090909}
.page-layout-studio-landing .tutorial>header{position:sticky;top:145px;align-self:start}
.page-layout-studio-landing .tutorial>header h2{max-width:650px;margin:16px 0 20px;color:#f4f4f4;font-size:clamp(42px,5vw,76px);line-height:.95;letter-spacing:-.055em}
.page-layout-studio-landing .tutorial-steps{display:grid;border:1px solid #3a3a3a}
.page-layout-studio-landing .tutorial-steps article{display:grid;grid-template-columns:60px minmax(0,1fr);column-gap:18px;padding:28px;border-bottom:1px solid #3a3a3a;background:#111}
.page-layout-studio-landing .tutorial-steps article:last-child{border-bottom:0}
.page-layout-studio-landing .tutorial-steps i,.page-layout-studio-landing .modules i{color:#666;font-style:normal;font-weight:900}
.page-layout-studio-landing .tutorial-steps h3{margin:0 0 10px;color:#f4f4f4;font-size:24px}
.page-layout-studio-landing .data-flow{display:grid;grid-template-columns:1fr 1fr;padding:7vw;border-top:1px solid #3a3a3a}
.page-layout-studio-landing .data-flow>div{min-height:440px;padding:34px;border:1px solid #3a3a3a;background:#111}
.page-layout-studio-landing .data-flow>div+div{border-left:0}
.page-layout-studio-landing .data-flow h2{max-width:620px;margin:14px 0 35px;color:#f4f4f4;font-size:52px;letter-spacing:-.045em}
.page-layout-studio-landing .data-flow pre{overflow:auto;margin:0;padding:22px;border:1px solid #3a3a3a;background:#070707;color:#d7d7d7;font-size:13px;line-height:1.65}
.page-layout-studio-landing .flow-list{display:grid;align-content:stretch;padding:0!important}
.page-layout-studio-landing .flow-list article{display:grid;align-content:center;padding:28px;border-bottom:1px solid #3a3a3a}
.page-layout-studio-landing .flow-list article:last-child{border-bottom:0}
.page-layout-studio-landing .flow-list strong{font-size:22px}
.page-layout-studio-landing .modules{display:grid;grid-template-columns:repeat(3,1fr);padding:6vw 7vw;border-top:1px solid #3a3a3a}
.page-layout-studio-landing .modules article{min-height:300px;padding:28px;border:1px solid #3a3a3a;border-right:0;background:#111}
.page-layout-studio-landing .modules article:last-child{border-right:1px solid #3a3a3a}
.page-layout-studio-landing .modules h2{margin-top:90px;color:#f4f4f4;font-size:34px}
.page-layout-studio-landing .module-preview{opacity:.78}
.page-layout-studio-landing .module-status{display:inline-flex;min-height:25px;align-items:center;margin:0 0 12px;padding:0 9px;border:1px solid #3a3a3a;background:#171717;color:#8c8c8c;font-size:9px;font-weight:950;letter-spacing:.09em;text-transform:uppercase}

.zapareno-coming-soon{min-height:100vh;padding-top:74px;background:#070707;color:#f5f5f2;font-family:Inter,system-ui,sans-serif}
.zapareno-coming-soon>section{display:flex;min-height:calc(100vh - 74px);max-width:1180px;margin:auto;padding:72px 40px;flex-direction:column;justify-content:center}
.zapareno-coming-soon__mark{display:grid;width:84px;height:84px;place-items:center;border:1px solid #f5f5f2;background:#f5f5f2;color:#070707;font-size:44px;font-weight:950}
.zapareno-coming-soon__kicker{margin:28px 0 0;color:#bdbdbd;font-size:12px;font-weight:950;letter-spacing:.16em;text-transform:uppercase}
.zapareno-coming-soon h1{max-width:900px;margin:22px 0;color:#f5f5f2;font-size:clamp(58px,10vw,132px);line-height:.86;letter-spacing:-.075em}
.zapareno-coming-soon__line{width:min(520px,100%);height:1px;margin:10px 0 24px;background:#3a3a3a}
.zapareno-coming-soon__lead{max-width:640px;color:#bdbdbd;font-size:19px}
.zapareno-coming-soon nav{display:flex;gap:10px;flex-wrap:wrap;margin-top:34px}
.zapareno-coming-soon nav a{display:grid;min-height:48px;align-content:center;padding:0 18px;border:1px solid #f5f5f2;color:#f5f5f2;text-decoration:none;font-size:11px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.zapareno-coming-soon nav a:hover{background:#f5f5f2;color:#070707}
.zapareno-coming-soon small{margin-top:42px;color:#777;font-weight:950;letter-spacing:.16em}

@media(max-width:1000px){
  .page-layout-platform-home .platform-grid,.page-layout-studio-landing .download-grid,.page-layout-studio-landing .tutorial,.page-layout-studio-landing .data-flow,.page-layout-studio-landing .modules{grid-template-columns:1fr}
  .page-layout-studio-landing .tutorial>header{position:static}
  .page-layout-studio-landing .data-flow>div+div{border-left:1px solid #3a3a3a;border-top:0}
}
@media(max-width:680px){
  .page-layout-platform-home .update-card{grid-template-columns:1fr}
  .page-layout-platform-home .update-media{min-height:150px}
  .page-layout-platform-home .project-detail{min-height:0}
  .page-layout-studio-landing .studio-landing-hero{min-height:auto;padding:72px 16px 48px}
  .page-layout-studio-landing .studio-landing-hero h1{font-size:clamp(48px,16vw,76px)}
  .zapareno-coming-soon>section{padding:52px 22px}
}

.page-layout-profile-modal-lite{max-width:none;min-height:100dvh;padding:0;background:#050505;color:#f4f4f4}
.platform-profile-card--embed{display:grid!important;grid-template-rows:130px 76px minmax(0,1fr)!important;border-radius:0!important;background:#080808!important}
.platform-profile-shell-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:28px 26px 24px;border-bottom:1px solid #303030;background:#080808}
.platform-profile-shell-head p{margin:0 0 10px;color:#d8e9ff;font-size:13px;font-weight:950;letter-spacing:.16em;text-transform:uppercase}
.platform-profile-shell-head h2{margin:0;color:#f5f5f2;font-size:clamp(38px,5vw,62px);line-height:.88;letter-spacing:-.07em}
.platform-profile-modal-close{position:static!important;width:76px!important;height:76px!important;min-width:76px!important;border:0!important;border-radius:0!important;background:#f5f5f2!important;color:#050505!important;font-size:58px!important;font-weight:950!important;line-height:1!important}
.platform-profile-tabs--staging{display:grid!important;grid-template-columns:repeat(8,minmax(0,1fr))!important;gap:0!important;padding:0!important;border-bottom:1px solid #303030;background:#080808}
.platform-profile-tabs--staging button{display:grid!important;align-content:center!important;justify-items:start!important;min-height:76px!important;padding:0 14px!important;border:0!important;border-right:1px solid #303030!important;border-radius:0!important;background:#0b0b0b!important;color:#f5f5f2!important;text-align:left!important}
.platform-profile-tabs--staging button.is-active{background:#f5f5f2!important;color:#080808!important}
.platform-profile-tabs--staging strong{font-size:13px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.platform-profile-tabs--staging small{margin-top:5px;color:inherit;opacity:.72;font-size:11px;font-weight:500;text-transform:none;letter-spacing:0}
.platform-profile-card--embed .platform-profile-embed{position:relative!important;inset:auto!important;grid-row:3!important;width:100%!important;height:100%!important;min-height:0!important}
.is-profile-embed body{background:#050505}
.is-profile-embed .page{max-width:none;min-height:100dvh;padding:22px;background:radial-gradient(circle at 12% 0,rgba(255,255,255,.08),transparent 26%),#050505;color:#f4f4f4}
.is-profile-embed .page>.row:first-child,.profile-modal-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:0 0 16px;padding:0 0 16px;border-bottom:1px solid #303030}
.is-profile-embed .page>.row:first-child h1,.profile-modal-section-head h1{margin:0;color:#f5f5f2;font-size:clamp(34px,5vw,62px);line-height:.9;letter-spacing:-.055em}
.is-profile-embed .page>.row:first-child p,.profile-modal-section-head p{max-width:720px;color:#a9a9a9}
.is-profile-embed .card,.is-profile-embed .notice,.is-profile-embed .success,.is-profile-embed .error{border-color:#303030;background:rgba(14,14,14,.94);box-shadow:none}
.is-profile-embed .card:hover{transform:none;background:#121212}
.is-profile-embed .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.is-profile-embed .grid.three,.is-profile-embed .payment-readiness-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.is-profile-embed .table-wrap{max-height:340px;overflow:auto;border:1px solid #242424}
.is-profile-embed .table-wrap table{margin:0}
.is-profile-embed section+section,.is-profile-embed .card+section,.is-profile-embed section+.card{margin-top:12px}
.is-profile-embed .level-hero{grid-template-columns:150px minmax(0,1fr) 150px;margin:0 0 10px;padding:16px}
.is-profile-embed .level-hero>div:first-child strong,.is-profile-embed .level-hero>div:last-child strong{font-size:clamp(42px,7vw,72px);line-height:.9}
.is-profile-embed .level-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.is-profile-embed .level-roadmap{grid-template-columns:repeat(5,minmax(0,1fr));max-height:330px;overflow:auto;padding-right:4px}
.is-profile-embed .level-roadmap-item{border-color:#303030;background:#101010;border-radius:0;opacity:.62}
.is-profile-embed .level-roadmap-item.is-current{outline:1px solid #f5f5f2;background:#f5f5f2;color:#070707}
.is-profile-embed .badge-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.is-profile-embed .badge-gallery-section{margin-top:14px}
.is-profile-embed .badge-gallery-section>.row{margin-bottom:8px}
.is-profile-embed .badge-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.is-profile-embed .badge-gallery-card{gap:10px;padding:14px}
.is-profile-embed .badge-gallery-top{grid-template-columns:66px minmax(0,1fr);gap:12px}
.is-profile-embed .badge-gallery-art{font-size:30px;border-width:2px}
.is-profile-embed .badge-gallery-top h2{margin:4px 0;font-size:18px}
.is-profile-embed .badge-gallery-top p{font-size:13px}
.is-profile-embed .badge-gallery-actions{gap:6px}
.is-profile-embed .badge-gallery-actions .btn,.is-profile-embed .badge-gallery-actions .compact-select,.is-profile-embed .badge-public-switch{min-height:34px;padding:7px 9px;font-size:11px}
.is-profile-embed .lesson-meta{gap:6px;font-size:11px}
.is-profile-embed .lesson-meta span{padding:5px 7px}
.profile-staging-head{margin:0 0 16px;padding:0 0 16px;border-bottom:1px solid #303030}
.profile-staging-head h1{margin:10px 0 8px;color:#f5f5f2;font-size:clamp(42px,7vw,78px);line-height:.86;letter-spacing:-.07em}
.profile-staging-head p{max-width:760px;color:#a9a9a9}
.is-profile-embed .profile-staging-head,.is-profile-embed .profile-modal-section-head{display:none}
.profile-staging-grid{align-items:stretch}
.profile-staging-panel,.profile-staging-stat{border:1px solid #303030;background:rgba(14,14,14,.94);color:#f5f5f2;padding:18px}
.profile-staging-panel h2{margin:0 0 12px;color:#f5f5f2}
.profile-staging-stat{display:grid;align-content:start;gap:10px;min-height:210px}
.profile-staging-stat small{color:#8f8f8f;font-size:11px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.profile-staging-stat strong{font-size:clamp(42px,7vw,76px);line-height:.88;letter-spacing:-.07em}
.profile-staging-stat p{color:#a9a9a9}
.profile-staging-stat--wide{min-height:0}
.profile-staging-stat--wide strong{font-size:clamp(34px,5vw,62px)}
.profile-staging-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}
.profile-staging-meta span{display:inline-flex;min-height:28px;align-items:center;border:1px solid #383838;background:#101010;padding:4px 9px;color:#f5f5f2;font-size:10px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.profile-social-staging{display:grid;grid-template-columns:96px minmax(0,1fr);gap:18px;align-items:center}
.profile-social-staging .profile-avatar-large{margin:0;width:84px;height:84px}
.profile-social-links{justify-content:flex-start;margin:10px 0 14px}
.profile-social-links a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.studijniky-slider-form{gap:14px;margin-top:4px}
.studijniky-slider-output{display:flex;align-items:end;justify-content:space-between;gap:12px}
.studijniky-slider-output span,.studijniky-slider-output strong{display:block;color:#f5f5f2}
.studijniky-slider-output b{font-size:26px;letter-spacing:-.04em}
.studijniky-range{width:100%;accent-color:#f5f5f2}
.studijniky-slider-scale{display:flex;justify-content:space-between;color:#8f8f8f;font-size:11px;font-weight:900}
.profile-payment-mode-banner{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:14px;align-items:stretch;margin:12px 0 16px;padding:18px;border:1px solid #343434;background:radial-gradient(circle at 12% 0,rgba(255,255,255,.08),transparent 34%),linear-gradient(135deg,#111,#070707 58%,#15120a);box-shadow:0 22px 80px rgba(0,0,0,.24)}
.profile-payment-mode-banner small{display:block;color:#f1d784;font-size:11px;font-weight:950;letter-spacing:.16em;text-transform:uppercase}
.profile-payment-mode-banner strong{display:block;margin-top:4px;color:#f5f5f2;font-size:clamp(26px,3.2vw,44px);line-height:.92;letter-spacing:-.055em}
.profile-payment-mode-banner p{max-width:760px;margin:8px 0 0;color:#bdbdbd}
.profile-payment-mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.profile-payment-mode-grid span{display:grid;align-content:center;gap:4px;min-height:76px;padding:12px;border:1px solid #353535;background:#070707}
.profile-payment-mode-grid b{color:#f5f5f2;font-size:13px;text-transform:uppercase;letter-spacing:.08em}
.profile-payment-mode-grid em{color:#f1d784;font-size:12px;font-style:normal;font-weight:850}
.profile-subscription-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0}
.profile-subscription-card{display:grid;align-content:start;gap:10px;min-height:230px;border:1px solid #303030;background:#0b0b0b;color:#f5f5f2;padding:18px}
.profile-subscription-card small{color:#8f8f8f;font-size:11px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.profile-subscription-card strong{font-size:clamp(30px,4vw,52px);line-height:.9;letter-spacing:-.06em}
.profile-subscription-card p{color:#a9a9a9}
.profile-subscription-card.is-active{background:#f5f5f2;color:#050505}
.profile-subscription-card.is-active small,.profile-subscription-card.is-active p{color:#555}
.profile-subscription-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}
.profile-premium-card .btn{align-self:end}
.profile-badge-pass-grid{display:grid;gap:10px}
.profile-badge-pass{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;align-items:center;border:1px solid #303030;background:#0b0b0b;padding:14px}
.profile-badge-pass>span{width:64px;height:64px;display:grid;place-items:center;border-radius:24px;background:#f5f5f2;color:#050505;font-size:30px;font-weight:950}
.profile-badge-pass small{color:#8f8f8f;font-size:10px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.profile-badge-pass strong{display:block;color:#f5f5f2;font-size:22px;letter-spacing:-.04em}
.profile-badge-pass p{margin:4px 0 0;color:#a9a9a9}
.rewardpass-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.page-layout-profile-modal-lite .rewardpass-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.rewardpass-frame{border:1px solid #303030;background:#0b0b0b;padding:22px;min-height:320px;display:grid;place-items:center}
.rewardpass-card{width:100%;min-height:210px;border-radius:42px;background:#f5f5f2;color:#050505;display:grid;grid-template-columns:minmax(90px,1fr) minmax(0,1.15fr);align-items:center;gap:24px;padding:36px;box-shadow:0 24px 54px rgba(0,0,0,.34)}
.rewardpass-card small,.rewardpass-link{font-size:13px;font-weight:950;letter-spacing:.14em;text-transform:uppercase}
.rewardpass-card strong{display:block;margin-top:12px;font-size:48px;line-height:.9;letter-spacing:-.06em}
.rewardpass-card h2{margin:0 0 10px;color:#050505;font-size:26px;line-height:1;letter-spacing:-.04em}
.rewardpass-card p{margin:0 0 20px;color:#5c5c5c;font-size:16px;line-height:1.25}
.rewardpass-link{padding:0;border:0;background:transparent;color:#555;text-align:left;line-height:1.18}
.rewardpass-link:hover{text-decoration:underline}
.rewardpass-frame.has-spins{border-color:#b9903d;box-shadow:0 0 0 1px rgba(185,144,61,.28),0 24px 80px rgba(185,144,61,.12)}
.rewardpass-frame.has-spins .rewardpass-card{background:linear-gradient(145deg,#fff8dd,#f5f5f2 60%,#e5c66f)}
.rewardpass-weekly-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px;border:1px solid #303030;background:linear-gradient(135deg,rgba(216,192,121,.08),rgba(255,255,255,.02)),#0a0a0a;padding:16px;color:#f5f5f2}
.rewardpass-weekly-head small{display:block;color:#d8c079;font-size:11px;font-weight:950;letter-spacing:.14em;text-transform:uppercase}
.rewardpass-weekly-head strong{display:block;margin:4px 0;color:#f5f5f2;font-size:clamp(22px,3vw,34px);line-height:1;letter-spacing:-.04em}
.rewardpass-weekly-head p{margin:0;color:#a9a9a9}
.rewardpass-weekly-head>span{border:1px solid rgba(216,192,121,.45);background:rgba(216,192,121,.1);padding:10px 12px;color:#f5f5f2;font-size:12px;font-weight:950;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.rewardpass-detail-modal{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:18px}
.rewardpass-detail-backdrop{position:absolute;inset:0;border:0;background:rgba(0,0,0,.72)}
.rewardpass-detail-card{position:relative;z-index:1;width:min(720px,100%);border:1px solid #303030;background:#080808;color:#f5f5f2;padding:22px;box-shadow:0 28px 90px rgba(0,0,0,.6)}
.rewardpass-detail-close{position:absolute;right:12px;top:12px;width:54px;height:54px;border:0;background:#f5f5f2;color:#050505;font-size:38px;font-weight:950}
.rewardpass-detail-hero{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:18px;align-items:stretch;margin-bottom:16px;padding-right:58px}
.rewardpass-detail-hero small{color:#d8e9ff;font-size:12px;font-weight:950;letter-spacing:.14em}
.rewardpass-detail-hero h2{margin:10px 0;color:#f5f5f2;font-size:clamp(34px,6vw,64px);line-height:.88;letter-spacing:-.07em}
.rewardpass-detail-hero p{color:#a9a9a9}
.rewardpass-detail-token{display:grid;place-items:center;border-radius:34px;background:#f5f5f2;color:#050505;padding:18px}
.rewardpass-detail-token span{font-size:13px;font-weight:950;letter-spacing:.14em}
.rewardpass-detail-token strong{font-size:64px;line-height:.9;letter-spacing:-.07em}
.rewardpass-detail-list{display:grid;gap:8px;margin:14px 0}
.rewardpass-detail-list p{margin:0;border:1px solid #303030;background:#0d0d0d;padding:12px;color:#f5f5f2}
.reward-spin-modal{position:fixed;inset:0;z-index:45;display:grid;place-items:center;padding:18px}
.reward-spin-backdrop{position:absolute;inset:0;border:0;background:rgba(0,0,0,.78)}
.reward-spin-card{position:relative;z-index:1;width:min(760px,100%);border:1px solid #3b3220;background:radial-gradient(circle at 50% 0,rgba(216,192,121,.18),transparent 34%),#080808;color:#f5f5f2;padding:22px;box-shadow:0 30px 100px rgba(0,0,0,.68)}
.reward-spin-head small{color:#d8c079;font-size:12px;font-weight:950;letter-spacing:.14em;text-transform:uppercase}
.reward-spin-head h2{margin:8px 0;color:#f5f5f2;font-size:clamp(42px,7vw,76px);line-height:.85;letter-spacing:-.075em}
.reward-spin-head p{color:#a9a9a9}
.reward-spin-wheel{position:relative;margin:18px 0;border:1px solid #302918;background:#0c0a06;padding:18px;overflow:hidden}
.reward-spin-pointer{position:absolute;left:50%;top:8px;z-index:2;width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-top:18px solid #e8c96c;transform:translateX(-50%)}
.reward-spin-track{display:grid;grid-template-columns:repeat(6,minmax(92px,1fr));gap:8px;transform:translateX(-20px);transition:transform .7s cubic-bezier(.18,.8,.22,1)}
.reward-spin-modal.is-revealed .reward-spin-track{transform:translateX(0)}
.reward-spin-segment{min-height:96px;border:1px solid #2f2a1b;background:#111;display:grid;place-items:center;text-align:center;padding:10px;opacity:.58;transform:scale(.96);transition:opacity .5s,transform .5s,border-color .5s}
.reward-spin-segment span{font-size:30px;color:#d8c079}.reward-spin-segment strong{font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.reward-spin-segment.is-winning{opacity:1;transform:scale(1.03);border-color:#e8c96c;background:linear-gradient(145deg,#33250d,#14100a);box-shadow:0 0 36px rgba(232,201,108,.22)}
.reward-spin-result{display:grid;grid-template-columns:78px minmax(0,1fr);gap:14px;align-items:center;margin:12px 0 16px;border:1px solid #302918;background:#0d0b08;padding:14px}
.reward-spin-result>span{width:78px;height:78px;display:grid;place-items:center;border:1px solid rgba(232,201,108,.55);background:#151007;color:#e8c96c;font-size:36px}
.reward-spin-result small{color:#d8c079;font-size:11px;font-weight:950;letter-spacing:.14em;text-transform:uppercase}
.reward-spin-result strong{display:block;color:#f5f5f2;font-size:28px;letter-spacing:-.04em}
.reward-spin-result p{margin:4px 0 0;color:#a9a9a9}
.reward-spin-history{display:grid;grid-template-columns:minmax(220px,320px) minmax(0,1fr);gap:14px;margin-top:16px;border:1px solid #303030;background:#0a0a0a;padding:16px;color:#f5f5f2}
.reward-spin-history small{display:block;color:#d8c079;font-size:11px;font-weight:950;letter-spacing:.14em;text-transform:uppercase}
.reward-spin-history strong{display:block;margin:4px 0;color:#f5f5f2;font-size:20px;letter-spacing:-.035em}
.reward-spin-history p{margin:0;color:#a9a9a9;line-height:1.45}
.reward-spin-history-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.reward-spin-history-list article{display:grid;grid-template-columns:44px minmax(0,1fr);gap:10px;align-items:center;border:1px solid #2b2b2b;background:#101010;padding:10px}
.reward-spin-history-list article>span{display:grid;place-items:center;width:44px;height:44px;border:1px solid rgba(216,192,121,.45);background:#151007;color:#e8c96c;font-size:22px}
.reward-spin-history-list article strong{font-size:14px;margin:0;letter-spacing:0}
.reward-spin-history-list article small{color:#8f8f8f;font-size:10px;letter-spacing:.08em}
.profile-staging-row{grid-template-columns:minmax(0,1fr) auto}
.reward-wallet-panel{display:grid;gap:16px}
.reward-ticket-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.reward-ticket-card{position:relative;overflow:hidden;border:1px solid #343434;background:linear-gradient(145deg,#111,#080808);padding:14px;min-height:190px;display:grid;grid-template-rows:auto 1fr auto auto;gap:10px;color:#f5f5f2;box-shadow:0 18px 40px rgba(0,0,0,.22)}
.reward-ticket-card:before{content:"";position:absolute;inset:-30% auto auto -20%;width:160px;height:160px;border-radius:50%;background:rgba(255,255,255,.07);filter:blur(2px)}
.reward-ticket-card small{position:relative;color:#c9b16a;font-size:11px;font-weight:950;letter-spacing:.14em;text-transform:uppercase}
.reward-ticket-card strong{position:relative;display:block;margin:4px 0;font-size:clamp(34px,5vw,54px);line-height:.9;letter-spacing:-.06em}
.reward-ticket-card p{position:relative;margin:0;color:#b9b2a5;font-size:13px;line-height:1.35}
.reward-ticket-token{position:relative;width:52px;height:52px;border:1px solid rgba(226,194,104,.55);background:linear-gradient(145deg,#3a2811,#0d0b08);display:grid;place-items:center;color:#f4d47b;font-size:25px;box-shadow:inset 0 0 0 2px rgba(255,255,255,.035)}
.reward-ticket-meta{position:relative;display:flex;gap:6px;flex-wrap:wrap}
.reward-ticket-meta span{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);padding:4px 7px;color:#d7d0c2;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.reward-ticket-game .reward-ticket-token{color:#f0b35a}.reward-ticket-learn .reward-ticket-token{color:#9fd2ff}.reward-ticket-build .reward-ticket-token{color:#c8f09f}
.reward-ticket-inventory{display:grid;gap:9px}
.reward-ticket-inventory-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid #303030;background:#0d0d0d;padding:10px}
.reward-ticket-mini{width:44px;height:44px;border:1px solid #3d3d3d;background:#141414;display:grid;place-items:center;color:#f4d47b;font-size:21px}
.reward-ticket-inventory-row strong{color:#f5f5f2}.reward-ticket-inventory-row p{margin:2px 0 0;color:#a9a9a9}
.daily-reward-panel{border-color:rgba(216,192,121,.34);background:radial-gradient(circle at 16% 0,rgba(216,192,121,.14),transparent 32%),#0a0a0a}
.daily-reward-claim{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid #3b3220;background:linear-gradient(135deg,rgba(216,192,121,.12),rgba(255,255,255,.025));padding:14px;margin:8px 0 14px}
.daily-reward-claim small{display:block;color:#d8c079;font-size:11px;font-weight:950;letter-spacing:.14em;text-transform:uppercase}
.daily-reward-claim strong{display:block;margin:4px 0;color:#f5f5f2;font-size:clamp(28px,4vw,48px);line-height:.95;letter-spacing:-.055em}
.daily-reward-claim p{margin:0;color:#b9b2a5}
.daily-reward-row .status-pill{justify-self:end}
@media(max-width:900px){.reward-ticket-grid{grid-template-columns:1fr}.reward-ticket-inventory-row{grid-template-columns:40px minmax(0,1fr)}.reward-ticket-inventory-row .btn{grid-column:1/-1}.daily-reward-claim{grid-template-columns:1fr}.daily-reward-claim .btn{width:100%}}
.profile-commerce-detail{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:18px 0 12px;padding-top:16px;border-top:1px solid #303030}
.status-pill{display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border:1px solid #383838;background:#101010;color:#f5f5f2;font-size:10px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.is-profile-embed .profile-commerce-detail h1{margin:0;font-size:30px;letter-spacing:-.04em}
@media(max-width:900px){.profile-payment-mode-banner{grid-template-columns:1fr}.profile-subscription-grid,.rewardpass-grid{grid-template-columns:1fr}.profile-badge-pass{grid-template-columns:52px minmax(0,1fr)}.profile-badge-pass>span{width:52px;height:52px;border-radius:18px}.rewardpass-weekly-head{display:grid}.rewardpass-weekly-head>span{white-space:normal}.reward-spin-track{grid-template-columns:repeat(2,minmax(0,1fr))}.reward-spin-result{grid-template-columns:58px minmax(0,1fr)}.reward-spin-result>span{width:58px;height:58px}.reward-spin-history,.reward-spin-history-list{grid-template-columns:1fr}}
@media(max-width:560px){.profile-payment-mode-grid{grid-template-columns:1fr}.profile-payment-mode-grid span{min-height:58px}.profile-payment-mode-banner{padding:14px}}
.is-profile-embed .profile-commerce-detail p{color:#a9a9a9}
.social-hub-modal{min-height:100dvh;padding:24px;background:radial-gradient(circle at 15% 5%,rgba(255,255,255,.08),transparent 28%),linear-gradient(135deg,#070707,#111 55%,#050505)}
.social-hub-shell{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:14px;min-height:calc(100dvh - 48px);max-width:1180px;margin:0 auto}
.social-hub-pass,.social-hub-main{border:1px solid #343434;background:rgba(13,13,13,.94);box-shadow:0 24px 90px rgba(0,0,0,.28)}
.social-hub-pass{padding:22px;display:flex;flex-direction:column;justify-content:space-between;gap:20px}
.social-hub-pass h2,.social-hub-head h1{margin:0;color:#f5f5f2;letter-spacing:-.045em}
.social-hub-pass p,.social-hub-head p,.social-hub-row p,.social-hub-empty p{color:#a9a9a9}
.social-hub-pass .profile-avatar-large{width:94px;height:94px;margin:22px 0 8px;background:#f5f5f2;color:#070707;border-color:#f5f5f2;overflow:hidden}
.social-hub-pass .profile-avatar-large img{width:100%;height:100%;object-fit:cover}
.social-hub-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.social-hub-stats article{border:1px solid #2f2f2f;background:#090909;padding:12px}
.social-hub-stats strong,.social-hub-stats span{display:block}
.social-hub-stats strong{font-size:28px;letter-spacing:-.06em}
.social-hub-stats span{color:#858585;font-size:10px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.social-hub-main{padding:18px;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:14px}
.social-hub-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;border-bottom:1px solid #303030;padding-bottom:16px}
.social-hub-head h1{font-size:clamp(34px,5vw,66px);line-height:.9}
.social-hub-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.social-hub-tab{display:flex;min-height:54px;align-items:center;justify-content:space-between;gap:8px;border:1px solid #343434;background:#101010;color:#f5f5f2;padding:0 14px;font-size:11px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.social-hub-tab b{display:grid;min-width:24px;height:24px;place-items:center;background:#202020;color:#aaa;font-size:11px}
.social-hub-tab.is-active{background:#f5f5f2;color:#070707;border-color:#f5f5f2}
.social-hub-tab.is-active b{background:#070707;color:#f5f5f2}
.social-hub-panels{min-height:0;overflow:auto;border:1px solid #2f2f2f;background:#090909;padding:10px}
.social-hub-panel[hidden]{display:none!important}
.social-hub-panel{display:grid;gap:10px}
.social-hub-row{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #2f2f2f;background:#121212;padding:14px}
.social-hub-row.is-unread{border-color:#f5f5f2}
.social-hub-row h3{margin:3px 0 5px;color:#f5f5f2}
.social-hub-person{display:flex;align-items:center;gap:12px}
.social-hub-person .avatar-runtime-fallback{width:44px;height:44px;display:grid;place-items:center;border:1px solid #f5f5f2;background:#f5f5f2;color:#070707;font-weight:950;overflow:hidden}
.social-hub-person img{width:100%;height:100%;object-fit:cover}
.social-hub-person strong,.social-hub-person small{display:block}
.social-hub-person small{color:#8a8a8a}
.social-hub-empty{border:1px dashed #3a3a3a;background:#0d0d0d;padding:22px}
.social-hub-empty strong{display:block;color:#f5f5f2;font-size:20px}
.page-layout-zapareno{max-width:1240px}
.zapareno-hero{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:20px;align-items:stretch;margin-bottom:26px;border:1px solid #303030;border-top:5px solid #f5f5f2;background:radial-gradient(circle at 10% 0,rgba(255,255,255,.12),transparent 32%),#090909;color:#f5f5f2;padding:34px}
.zapareno-hero h1{margin:8px 0 14px;font-size:clamp(48px,7vw,92px);line-height:.88;letter-spacing:-.07em}
.zapareno-hero p{max-width:780px;color:#aaa;font-size:17px;line-height:1.6}
.zapareno-hero aside{display:grid;align-content:center;gap:8px;border:1px solid #303030;background:#f5f5f2;color:#050505;padding:22px}
.zapareno-hero aside strong{font-size:58px;line-height:.9;letter-spacing:-.07em}
.zapareno-hero aside span{font-size:11px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.zapareno-eyebrow,.zapareno-card-kicker{color:#d8e9ff;font-size:11px;font-weight:950;letter-spacing:.14em;text-transform:uppercase}
.zapareno-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.zapareno-section{margin-top:22px}
.zapareno-section h2{margin:5px 0 0;font-size:32px;letter-spacing:-.04em}
.zapareno-game-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}
.zapareno-game-card,.zapareno-empty{display:grid;align-content:space-between;gap:18px;min-height:270px;border:1px solid #303030;background:#101010;color:#f5f5f2;padding:20px}
.zapareno-game-card h2,.zapareno-empty strong{display:block;margin:8px 0 10px;font-size:26px;line-height:1;letter-spacing:-.04em}
.zapareno-game-card p,.zapareno-empty p{color:#aaa;line-height:1.55}
.zapareno-card-cover{position:relative;overflow:hidden;height:150px;margin:-20px -20px 0;border-bottom:1px solid #303030;background:#070707}
.zapareno-card-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 35%,rgba(0,0,0,.62))}
.zapareno-card-cover img{display:block;width:100%;height:100%;object-fit:cover}
.zapareno-card-cover.is-fallback{display:grid;place-items:center;background:radial-gradient(circle at 50% 35%,rgba(245,245,242,.16),transparent 46%),#070707}
.zapareno-card-cover.is-fallback span{font-size:58px;font-weight:950;letter-spacing:-.08em;color:#f5f5f2}
.zapareno-card-meta{display:flex;flex-wrap:wrap;gap:8px}
.zapareno-card-meta span,.zapareno-project-row>span{display:inline-flex;align-items:center;min-height:28px;border:1px solid #3a3a3a;background:#070707;color:#f5f5f2;padding:4px 8px;font-size:10px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.zapareno-unlock-meter{display:grid;gap:8px;border:1px solid #2f2f2f;background:linear-gradient(135deg,rgba(216,192,121,.1),rgba(255,255,255,.025));padding:12px;color:#f5f5f2}
.zapareno-unlock-meter>div{display:flex;align-items:center;justify-content:space-between;gap:12px}
.zapareno-unlock-meter span,.zapareno-unlock-meter small{color:#9f9f9f;font-size:10px;font-weight:950;letter-spacing:.1em;text-transform:uppercase}
.zapareno-unlock-meter strong{font-size:24px;line-height:1;letter-spacing:-.05em}

/* Release 91.8 — stabilní profilový modal na stagingu.
   Profil už je inline panel, ne iframe. Scroll smí vznikat jen v obsahu,
   jinak se v desktop modalu rozbije bílý systémový scrollbar přes menu/tabs. */
.platform-profile-modal{
  overflow:hidden!important;
  overscroll-behavior:contain!important;
}
.platform-profile-card--embed{
  min-height:0!important;
  max-height:min(88dvh,820px)!important;
  grid-template-rows:minmax(112px,auto) minmax(64px,auto) minmax(0,1fr)!important;
  overflow:hidden!important;
}
.platform-profile-card--embed .platform-profile-embed,
.platform-profile-embed--inline{
  min-height:0!important;
  height:100%!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-width:thin!important;
  scrollbar-color:#5f5f5f #090909!important;
}
.platform-profile-card--embed .platform-profile-embed::-webkit-scrollbar,
.platform-profile-embed--inline::-webkit-scrollbar,
.platform-profile-card--embed .table-wrap::-webkit-scrollbar,
.platform-profile-card--embed .level-roadmap::-webkit-scrollbar,
.platform-profile-card--embed .social-hub-panels::-webkit-scrollbar{
  width:10px;
  height:10px;
}
.platform-profile-card--embed .platform-profile-embed::-webkit-scrollbar-track,
.platform-profile-embed--inline::-webkit-scrollbar-track,
.platform-profile-card--embed .table-wrap::-webkit-scrollbar-track,
.platform-profile-card--embed .level-roadmap::-webkit-scrollbar-track,
.platform-profile-card--embed .social-hub-panels::-webkit-scrollbar-track{
  background:#090909;
}
.platform-profile-card--embed .platform-profile-embed::-webkit-scrollbar-thumb,
.platform-profile-embed--inline::-webkit-scrollbar-thumb,
.platform-profile-card--embed .table-wrap::-webkit-scrollbar-thumb,
.platform-profile-card--embed .level-roadmap::-webkit-scrollbar-thumb,
.platform-profile-card--embed .social-hub-panels::-webkit-scrollbar-thumb{
  background:#5f5f5f;
  border:2px solid #090909;
  border-radius:999px;
}
.platform-profile-card--embed .platform-profile-embed::-webkit-scrollbar-thumb:hover,
.platform-profile-embed--inline::-webkit-scrollbar-thumb:hover{
  background:#858585;
}
.platform-profile-embed--inline>.page{
  min-height:0!important;
  max-width:none!important;
}
.platform-profile-tabs--staging{
  min-height:0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  overscroll-behavior-x:contain!important;
  scrollbar-width:thin!important;
  scrollbar-color:#555 #080808!important;
}
.platform-profile-tabs--staging::-webkit-scrollbar{height:8px}
.platform-profile-tabs--staging::-webkit-scrollbar-track{background:#080808}
.platform-profile-tabs--staging::-webkit-scrollbar-thumb{background:#555;border-radius:999px}
@media(max-width:900px){
  .platform-profile-card--embed{
    width:100vw!important;
    height:100dvh!important;
    max-height:100dvh!important;
    border-radius:0!important;
    grid-template-rows:minmax(94px,auto) minmax(62px,auto) minmax(0,1fr)!important;
  }
  .platform-profile-shell-head{
    padding:18px 14px 16px!important;
  }
  .platform-profile-shell-head h2{
    font-size:clamp(34px,11vw,54px)!important;
  }
  .platform-profile-modal-close{
    width:58px!important;
    height:58px!important;
    min-width:58px!important;
    font-size:42px!important;
  }
  .platform-profile-tabs--staging{
    display:flex!important;
  }
  .platform-profile-tabs--staging button{
    flex:0 0 min(42vw,190px)!important;
  }
}
.zapareno-unlock-meter i{display:block;height:8px;overflow:hidden;border:1px solid #373737;background:#050505}
.zapareno-unlock-meter b{display:block;height:100%;background:linear-gradient(90deg,#d8c079,#f5f5f2)}
.zapareno-tournament-card{background:radial-gradient(circle at 15% 0,rgba(216,192,121,.16),transparent 38%),#0f0c08;border-color:#3d3320}
.zapareno-empty{grid-column:1/-1;min-height:220px;align-content:center}
.zapareno-project-list,.zapareno-flow{display:grid;gap:9px;margin-top:14px}
.zapareno-project-row{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #303030;background:#0b0b0b;padding:13px}
.zapareno-project-row strong,.zapareno-project-row small{display:block}
.zapareno-project-row small{margin-top:4px;color:#8f8f8f}
.zapareno-project-row a{color:#f5f5f2;text-decoration:underline;text-underline-offset:3px}
.zapareno-flow article{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center;border:1px solid #303030;background:#0b0b0b;padding:12px}
.zapareno-flow i{display:grid;place-items:center;width:44px;height:44px;background:#f5f5f2;color:#050505;font-style:normal;font-weight:950}
.zapareno-flow p{margin:0;color:#d0d0d0}
.zapareno-game-detail{display:grid;gap:18px}
.zapareno-game-detail>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;border:1px solid #303030;border-top:5px solid #f5f5f2;background:#090909;padding:26px}
.zapareno-game-detail h1{margin:8px 0 10px;font-size:clamp(44px,7vw,84px);line-height:.88;letter-spacing:-.07em}
.zapareno-game-detail p{max-width:760px;color:#aaa;line-height:1.6}
.zapareno-preview-shell{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:14px}
.zapareno-preview-stage{position:relative;min-height:540px;overflow:hidden;border:1px solid #303030;background:radial-gradient(circle at 50% 40%,#292929,#111 55%,#070707)}
.zapareno-preview-grid{position:absolute;inset:44% -28% -30%;transform:perspective(520px) rotateX(62deg);background-image:linear-gradient(#ffffff1f 1px,transparent 1px),linear-gradient(90deg,#ffffff1f 1px,transparent 1px);background-size:38px 38px}
.zapareno-preview-node{position:absolute;z-index:3;display:grid;gap:4px;place-items:center;min-width:76px;min-height:58px;transform:translate(-50%,-50%) scale(var(--scale)) rotate(var(--rotation));border:1px solid rgba(255,255,255,.26);background:rgba(10,10,10,.82);color:#f5f5f2;font-size:11px;font-weight:850;box-shadow:0 14px 34px rgba(0,0,0,.32)}
.zapareno-preview-node span{display:grid;width:25px;height:25px;place-items:center;border:1px solid rgba(255,255,255,.28);background:#f5f5f2;color:#080808}
.zapareno-preview-node small{max-width:92px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#bbb}
.zapareno-preview-node--player span{background:#d8ff6a}.zapareno-preview-node--ui span{background:#79e0ff}.zapareno-preview-node--camera span{background:#fff}.zapareno-preview-node--sprite span{background:#ff9c66}.zapareno-preview-node--light span{background:#fff1a8}
.zapareno-preview-badge{position:absolute;left:18px;bottom:18px;z-index:4;display:grid;gap:5px;max-width:390px;border:1px solid #303030;border-top:4px solid #f5f5f2;background:rgba(8,8,8,.9);padding:14px}
.zapareno-preview-badge strong{color:#f5f5f2}.zapareno-preview-badge span{color:#aaa;font-size:12px}
.zapareno-preview-empty{position:absolute;inset:0;display:grid;place-items:center;color:#aaa}
.zapareno-preview-inspector,.zapareno-manifest-panel,.zapareno-sandbox-panel{border:1px solid #303030;background:#101010;color:#f5f5f2;padding:18px}
.zapareno-preview-inspector h2{margin:8px 0 18px;font-size:34px;letter-spacing:-.05em}
.zapareno-preview-inspector dl{display:grid;gap:9px;margin:0}
.zapareno-preview-inspector div{border:1px solid #303030;background:#080808;padding:11px}
.zapareno-preview-inspector dt{color:#8f8f8f;font-size:10px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.zapareno-preview-inspector dd{margin:5px 0 0;word-break:break-word}
.zapareno-manifest-panel pre{max-height:430px;overflow:auto;margin:14px 0 0;border:1px solid #303030;background:#050505;color:#d7f7d7;padding:14px;font:12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}
.zapareno-sandbox-host{min-height:420px;margin-top:14px;border:1px solid #303030;background:#050505;display:grid;place-items:center;color:#aaa;overflow:hidden}
.zapareno-sandbox-host p{max-width:620px;margin:0;padding:22px;text-align:center;color:#aaa;line-height:1.6}
.zapareno-sandbox-host iframe{width:100%;height:520px;border:0;background:#050505}
.zapareno-hero--player h1{max-width:760px}
.zapareno-game-card--player{min-height:310px;border-top:4px solid #f5f5f2}
.zapareno-game-card.is-disabled{opacity:.72;border-top-color:#555}
.zapareno-game-card--player .zapareno-play-button{justify-self:start}
.zapareno-play-button{font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.zapareno-game-detail--player{gap:20px}
.zapareno-play-card{position:relative;display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px;align-items:stretch;border:1px solid #303030;background:#090909;color:#f5f5f2;padding:18px}
.zapareno-play-card--legacy{grid-template-columns:360px minmax(0,1fr)}
.zapareno-play-intro{display:grid;align-content:center;gap:12px;border:1px solid #303030;background:#101010;padding:20px}
.zapareno-play-intro h2{margin:0;font-size:34px;letter-spacing:-.05em}
.zapareno-play-intro p{margin:0;color:#aaa;line-height:1.55}
.zapareno-legacy-window-card{display:grid;align-content:center;gap:12px;min-height:360px;border:1px solid #303030;background:radial-gradient(circle at 50% 35%,rgba(255,255,255,.10),transparent 38%),#050505;padding:28px;color:#f5f5f2}
.zapareno-legacy-window-card strong{font-size:42px;line-height:.95;letter-spacing:-.06em}
.zapareno-legacy-window-card span{display:inline-flex;width:max-content;max-width:100%;overflow:hidden;text-overflow:ellipsis;border:1px solid #3a3a3a;background:#111;padding:8px 10px;color:#d8e9ff;font:12px/1.3 ui-monospace,SFMono-Regular,Consolas,monospace}
.zapareno-legacy-window-card p{margin:0;max-width:620px;color:#aaa}
.zapareno-sandbox-host--player{min-height:560px;margin-top:0;background:#050505}
.zapareno-sandbox-host--player iframe{height:560px}
.zapareno-play-card>[data-zapareno-sandbox-status]{position:absolute;right:28px;bottom:28px}
@media(max-width:900px){
  .zapareno-hero,.zapareno-section.grid.two,.zapareno-preview-shell{grid-template-columns:1fr}
  .zapareno-play-card{grid-template-columns:1fr}
  .zapareno-game-detail>header{display:grid}
  .zapareno-preview-stage{min-height:420px}
  .zapareno-game-grid{grid-template-columns:1fr}
  .social-hub-modal{padding:12px}
  .social-hub-shell{grid-template-columns:1fr;min-height:calc(100dvh - 24px)}
  .social-hub-tabs{grid-template-columns:1fr 1fr}
  .social-hub-head{display:grid}
  .is-profile-embed .level-hero,.is-profile-embed .level-summary-grid,.is-profile-embed .badge-summary-grid{grid-template-columns:1fr 1fr}
  .is-profile-embed .level-roadmap{grid-template-columns:repeat(3,minmax(0,1fr))}
  .is-profile-embed .badge-gallery-grid{grid-template-columns:1fr}
}

/* v8.63 local-first polish: anonymous entry, Zapařeno tabs/buy, modern rewardpass cards */
.anonymous-entry-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;margin:0 0 18px;padding:18px 20px;border:1px solid #3a3a3a;border-left:5px solid #f5f5f2;background:linear-gradient(135deg,rgba(245,245,242,.08),rgba(245,245,242,.02)),#0b0b0b;color:#f5f5f2}
.anonymous-entry-panel small{display:block;color:#d8c079;font-size:11px;font-weight:950;letter-spacing:.14em;text-transform:uppercase}.anonymous-entry-panel strong{display:block;margin:3px 0 6px;font-size:clamp(24px,3vw,38px);line-height:1;letter-spacing:-.05em}.anonymous-entry-panel p{margin:0;color:#b9bec8;line-height:1.5}.anonymous-entry-panel.is-active{border-left-color:#86efac;background:linear-gradient(135deg,rgba(134,239,172,.12),rgba(245,245,242,.02)),#0b0b0b}.anonymous-mode-modal{position:fixed;inset:0;z-index:5200;display:grid;place-items:center;padding:20px}.anonymous-mode-backdrop{position:absolute;inset:0;border:0;background:rgba(0,0,0,.78);backdrop-filter:blur(14px)}.anonymous-mode-card{position:relative;z-index:1;width:min(680px,100%);border:1px solid #3a3a3a;border-top:5px solid #f5f5f2;background:#080808;color:#f5f5f2;padding:28px;box-shadow:0 34px 110px rgba(0,0,0,.62)}.anonymous-mode-card small{color:#d8c079;font-weight:950;letter-spacing:.14em}.anonymous-mode-card h2{margin:10px 0;font-size:clamp(38px,7vw,72px);line-height:.88;letter-spacing:-.07em}.anonymous-mode-card p{color:#c8c8c8;font-size:17px;line-height:1.55}.anonymous-mode-close{position:absolute;right:14px;top:14px;width:48px;height:48px;border:0;background:#f5f5f2;color:#050505;font-size:34px;font-weight:950}.anonymous-mode-rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:18px 0}.anonymous-mode-rules span{border:1px solid #303030;background:#101010;padding:10px;color:#e8e2d6;font-size:13px;font-weight:800}
.zapareno-card-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.zapareno-card-actions .btn{min-height:44px}.zapareno-buy-button{border-color:#d8c079!important;color:#f5f5f2!important;background:rgba(216,192,121,.08)!important}.zapareno-buy-button:hover:not(:disabled){background:#d8c079!important;color:#080808!important}.zapareno-buy-button:disabled{opacity:.62}
.rewardpass-frame--modern{display:block;min-height:0;padding:0;background:linear-gradient(180deg,#0e0e0e,#070707);border-color:#2e2e2e}.rewardpass-card--modern{min-height:198px;border-radius:0;background:radial-gradient(circle at 85% 0,rgba(216,192,121,.14),transparent 32%),linear-gradient(135deg,#111,#070707);color:#f5f5f2;display:grid;grid-template-columns:88px minmax(0,1fr);gap:0;padding:0;box-shadow:none}.rewardpass-card--modern header{display:grid;align-content:center;justify-items:center;gap:8px;border-right:1px solid #303030;background:#f5f5f2;color:#050505}.rewardpass-card--modern header span{font-size:10px;font-weight:950;letter-spacing:.16em}.rewardpass-card--modern header strong{font-size:46px;line-height:.85;letter-spacing:-.08em}.rewardpass-card-main{display:grid;align-content:center;padding:20px}.rewardpass-card-main small{color:#d8c079;font-size:10px;font-weight:950;letter-spacing:.14em;text-transform:uppercase}.rewardpass-card--modern h2{margin:8px 0 6px;color:#f5f5f2;font-size:clamp(24px,3vw,34px);line-height:.98;letter-spacing:-.04em}.rewardpass-card--modern p{margin:0 0 12px;color:#c4c7ce;line-height:1.35}.rewardpass-progress{height:8px;overflow:hidden;border:1px solid #343434;background:#050505}.rewardpass-progress i{display:block;height:100%;background:linear-gradient(90deg,#d8c079,#f5f5f2)}.rewardpass-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.rewardpass-card--modern .rewardpass-link{display:inline-grid;min-height:34px;align-content:center;padding:0 10px;border:1px solid #555;background:rgba(255,255,255,.02);color:#f5f5f2;font-size:12px;line-height:1.1}.rewardpass-frame--modern.has-spins{border-color:#d8c079;box-shadow:0 0 0 1px rgba(216,192,121,.24),0 18px 54px rgba(216,192,121,.08)}
.rewardpass-frame--modern.has-spins .rewardpass-card--modern{background:radial-gradient(circle at 85% 0,rgba(216,192,121,.18),transparent 32%),linear-gradient(135deg,#12100a,#070707);color:#f5f5f2;animation:rewardpassReadyPulse 2.8s ease-in-out infinite}
.rewardpass-frame--modern.has-spins .rewardpass-card--modern h2,.rewardpass-frame--modern.has-spins .rewardpass-card--modern p{color:inherit}
.rewardpass-frame--modern.has-spins .rewardpass-card--modern header{background:linear-gradient(180deg,#fffaf0,#ded1a8);color:#050505}
@keyframes rewardpassReadyPulse{0%,100%{box-shadow:inset 0 0 0 0 rgba(216,192,121,.08)}50%{box-shadow:inset 0 0 0 2px rgba(216,192,121,.16)}}
@media(max-width:760px){.anonymous-entry-panel{grid-template-columns:1fr}.anonymous-mode-rules{grid-template-columns:1fr}.rewardpass-card--modern{grid-template-columns:86px minmax(0,1fr)}.rewardpass-card--modern header strong{font-size:44px}.rewardpass-card-main{padding:20px}.zapareno-card-actions{display:grid}.zapareno-card-actions .btn{width:100%}}

/* v8.64 platform feedback: unified reward/success/error toasts */
.platform-toast{right:22px;bottom:22px;z-index:6200;display:grid;grid-template-columns:42px minmax(0,1fr) 34px;gap:12px;align-items:start;width:min(420px,calc(100vw - 28px));max-width:none;border:1px solid #3a3a3a;border-left-width:5px;background:linear-gradient(135deg,rgba(245,245,242,.08),rgba(255,255,255,.02)),#080808;color:#f5f5f2;padding:14px;box-shadow:0 22px 80px rgba(0,0,0,.55);opacity:0;transform:translateY(14px) scale(.985);transition:opacity .22s ease,transform .22s ease,border-color .22s ease}
.platform-toast.is-visible{opacity:1;transform:translateY(0) scale(1)}
.platform-toast__icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid #555;background:#f5f5f2;color:#050505;font-weight:950;font-size:20px;line-height:1}
.platform-toast__body{min-width:0}.platform-toast__body strong{display:block;margin:0 0 4px;font-size:16px;line-height:1.15;letter-spacing:-.02em}.platform-toast__body p{margin:0;color:#c4c7ce;line-height:1.35}.platform-toast__close{width:34px;height:34px;border:1px solid #363636;background:transparent;color:#f5f5f2;font:900 24px/1 system-ui;cursor:pointer}.platform-toast__close:hover{background:#f5f5f2;color:#050505}
.lesson-toast--reward{border-left-color:#d8c079;box-shadow:0 22px 86px rgba(216,192,121,.14),0 22px 80px rgba(0,0,0,.55)}.lesson-toast--reward .platform-toast__icon{background:linear-gradient(145deg,#fff8d8,#d8c079);border-color:#d8c079;color:#1e1505}
.lesson-toast--success{border-left-color:#86efac}.lesson-toast--success .platform-toast__icon{background:#dcfce7;border-color:#86efac;color:#052e16}
.lesson-toast--error{border-left-color:#fca5a5}.lesson-toast--error .platform-toast__icon{background:#fee2e2;border-color:#fca5a5;color:#450a0a}
.lesson-toast--warning{border-left-color:#fbbf24}.lesson-toast--warning .platform-toast__icon{background:#fef3c7;border-color:#fbbf24;color:#451a03}
@media(max-width:640px){.platform-toast{left:14px;right:14px;bottom:calc(82px + env(safe-area-inset-bottom,0px));width:auto}}
@media(prefers-reduced-motion:reduce){.platform-toast{transition:none;transform:none}.platform-toast.is-visible{transform:none}}

/* v8.69h platform liveliness: stacked notification center */
.platform-toast-stack{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:6200;
  display:grid;
  gap:10px;
  width:min(420px,calc(100vw - 28px));
  pointer-events:none;
}
.platform-toast-stack .platform-toast{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  width:100%!important;
  pointer-events:auto;
}
.platform-toast.is-leaving{
  opacity:0!important;
  transform:translateY(10px) scale(.985)!important;
}
.platform-toast--reward{
  background:radial-gradient(circle at 10% 0,rgba(216,192,121,.24),transparent 34%),linear-gradient(135deg,rgba(245,245,242,.08),rgba(255,255,255,.02)),#080808;
}
.platform-toast--success{
  background:radial-gradient(circle at 10% 0,rgba(134,239,172,.18),transparent 34%),linear-gradient(135deg,rgba(245,245,242,.08),rgba(255,255,255,.02)),#080808;
}
@media(max-width:640px){
  .platform-toast-stack{
    left:14px;
    right:14px;
    bottom:calc(82px + env(safe-area-inset-bottom,0px));
    width:auto;
  }
}
@media(prefers-reduced-motion:reduce){
  .platform-toast.is-leaving{transform:none!important}
}

/* v8.69i platform home: living news/activity feed */
.news-feed-panel{
  position:relative;
  overflow:hidden;
  border:1px solid #303030;
  background:
    radial-gradient(circle at 12% 0,rgba(216,192,121,.11),transparent 30%),
    linear-gradient(135deg,rgba(255,255,255,.045),rgba(255,255,255,.012)),
    #0b0b0b;
  box-shadow:0 24px 70px rgba(0,0,0,.32);
}
.news-feed-panel:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(216,192,121,.16),transparent 24%,transparent 76%,rgba(255,255,255,.04));
  opacity:.55;
}
.news-feed-panel .news-head{
  position:relative;
  z-index:1;
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
  padding:22px;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.news-feed-panel .news-head h2{
  margin:4px 0 6px;
  font-size:clamp(30px,4.5vw,56px);
  line-height:.92;
  letter-spacing:-.065em;
}
.news-feed-panel .news-head p{
  max-width:720px;
  margin:0;
  color:#b9bec8;
  line-height:1.5;
}
.news-list--activity{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  padding:14px;
}
.news-item--activity{
  position:relative;
  display:grid;
  gap:8px;
  min-height:154px;
  padding:16px 16px 14px;
  border:1px solid rgba(255,255,255,.13);
  background:rgba(255,255,255,.035);
  color:#f5f5f2;
  text-decoration:none;
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
.news-item--activity:hover{
  transform:translateY(-2px);
  border-color:rgba(216,192,121,.7);
  background:rgba(216,192,121,.08);
}
.news-item--activity.is-latest{
  border-color:rgba(216,192,121,.58);
  box-shadow:inset 4px 0 0 #d8c079;
}
.news-item--activity .news-kind{
  display:flex;
  align-items:center;
  gap:8px;
  color:#d8c079;
  font-size:11px;
  font-weight:950;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.news-item--activity .news-kind i{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border:1px solid rgba(216,192,121,.65);
  border-radius:999px;
  background:rgba(216,192,121,.14);
  color:#fff2b8;
  font-style:normal;
  letter-spacing:0;
}
.news-item--activity strong{
  font-size:clamp(18px,2vw,26px);
  line-height:1.05;
}
.news-item--activity p{
  margin:0;
  color:#c4c7ce;
  line-height:1.45;
}
.news-item--activity small{
  align-self:end;
  color:#8f96a3;
  font-size:12px;
}
.news-empty--action{
  position:relative;
  z-index:1;
  display:grid;
  justify-items:start;
  gap:10px;
  margin:14px;
  padding:22px;
  border:1px dashed rgba(216,192,121,.45);
  background:rgba(216,192,121,.055);
}
.news-empty--action>span{
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  border:1px solid rgba(216,192,121,.7);
  border-radius:999px;
  background:linear-gradient(145deg,#fff8d8,#d8c079);
  color:#1e1505;
  font-size:28px;
  font-weight:950;
}
@media(max-width:760px){
  .news-feed-panel .news-head{
    display:grid;
    padding:16px;
  }
  .news-list--activity{
    grid-template-columns:1fr;
  }
  .news-item--activity{
    min-height:0;
  }
}
@media(prefers-reduced-motion:reduce){
  .news-item--activity{transition:none}
  .news-item--activity:hover{transform:none}
}

/* v8.65 rewardpass detail redesign */
.rewardpass-detail-modal--v865{z-index:6250;align-items:start;padding:clamp(14px,4vh,42px) 18px;overflow:auto}
.rewardpass-detail-modal--v865 .rewardpass-detail-backdrop{background:rgba(0,0,0,.76);backdrop-filter:blur(10px)}
.rewardpass-detail-card--v865{width:min(980px,100%);max-height:none;border:1px solid #4b3f24;background:radial-gradient(circle at 88% 0,rgba(216,192,121,.22),transparent 30%),radial-gradient(circle at 4% 20%,rgba(216,233,255,.08),transparent 24%),linear-gradient(145deg,#10100d,#050505);padding:0;box-shadow:0 34px 120px rgba(0,0,0,.72),inset 0 0 0 1px rgba(255,255,255,.025);overflow:hidden}
.rewardpass-detail-head{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #2f2a1d;background:linear-gradient(90deg,rgba(216,192,121,.10),rgba(255,255,255,.02));padding:16px 18px}
.rewardpass-detail-head small{display:block;color:#d8c079;font-size:11px;font-weight:950;letter-spacing:.16em;text-transform:uppercase}.rewardpass-detail-head strong{display:block;margin-top:3px;color:#f5f5f2;font-size:22px;line-height:1;letter-spacing:-.035em}
.rewardpass-detail-card--v865 .rewardpass-detail-close{position:static;width:46px;height:46px;display:grid;place-items:center;border:1px solid #4b432f;background:#f5f5f2;color:#050505;font-size:32px;line-height:1;cursor:pointer}
.rewardpass-detail-hero--v865{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;align-items:stretch;margin:0;padding:22px 20px 16px}
.rewardpass-detail-hero--v865 .rewardpass-detail-token{border-radius:30px;border:1px solid rgba(216,192,121,.58);background:linear-gradient(145deg,#fffaf0,#d8c079 62%,#9d7320);box-shadow:0 18px 40px rgba(216,192,121,.16),inset 0 1px 0 rgba(255,255,255,.62);min-height:150px}.rewardpass-detail-hero--v865 .rewardpass-detail-token span{font-size:12px;color:#30230a}.rewardpass-detail-hero--v865 .rewardpass-detail-token strong{font-size:66px}
.rewardpass-detail-copy{display:grid;align-content:center;min-width:0}.rewardpass-detail-copy h2{margin:0 0 8px;color:#f5f5f2;font-size:clamp(28px,5vw,54px);line-height:.92;letter-spacing:-.065em}.rewardpass-detail-copy p{margin:0 0 14px;max-width:660px;color:#b9b9b4;line-height:1.45}
.rewardpass-detail-progress{height:10px;margin:0 0 10px;border-color:#332f24;background:#050505}.rewardpass-detail-chips{display:flex;flex-wrap:wrap;gap:8px}.rewardpass-detail-chips span{border:1px solid #3c3728;background:rgba(216,192,121,.08);padding:7px 9px;color:#e8ddbd;font-size:12px;font-weight:900}.rewardpass-detail-spin{margin-top:14px;width:max-content;background:linear-gradient(180deg,#f4d47b,#b98524)!important;color:#120c03!important;border-color:#f4d47b!important}
.rewardpass-detail-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 20px 16px}.rewardpass-detail-stats article{border:1px solid #332d1f;background:linear-gradient(135deg,rgba(216,192,121,.08),rgba(255,255,255,.015));padding:12px 14px}.rewardpass-detail-stats small{display:block;color:#d8c079;font-size:10px;font-weight:950;letter-spacing:.14em;text-transform:uppercase}.rewardpass-detail-stats strong{display:block;margin-top:5px;color:#f5f5f2;font-size:clamp(16px,2.3vw,24px);line-height:1.05;letter-spacing:-.035em}
.rewardpass-detail-list--v865{position:relative;display:grid;gap:10px;margin:0;padding:0 20px 20px;max-height:min(46vh,430px);overflow:auto;scrollbar-color:#d8c079 #090909}
.rewardpass-detail-list--v865:before{content:"";position:absolute;left:42px;top:6px;bottom:26px;width:1px;background:linear-gradient(#d8c079,rgba(216,192,121,.08));opacity:.42}
.rewardpass-detail-milestone{position:relative;display:grid;grid-template-columns:92px minmax(0,1fr);gap:16px;align-items:center;border:1px solid #2f2f2f;background:linear-gradient(135deg,rgba(255,255,255,.025),rgba(255,255,255,.005)),#0d0d0d;padding:12px 14px;color:#f5f5f2;transition:transform .16s ease,border-color .16s ease,background .16s ease}.rewardpass-detail-milestone:hover{transform:translateY(-1px);border-color:#5b4b28}.rewardpass-detail-milestone>span{position:relative;z-index:1;display:grid;grid-template-rows:34px auto;justify-items:center;gap:5px;color:#aaa}.rewardpass-detail-milestone>span b{display:grid;place-items:center;width:34px;height:34px;border:1px solid #444;background:#151515;color:#aaa;font-size:13px;font-weight:950}.rewardpass-detail-milestone>span em{font-style:normal;font-size:10px;font-weight:950;letter-spacing:.11em;text-transform:uppercase;text-align:center}.rewardpass-detail-milestone strong{display:block;color:#f5f5f2;font-size:17px;line-height:1.2;letter-spacing:-.015em}.rewardpass-detail-milestone small{display:block;margin-top:5px;color:#a8a8a3}.rewardpass-detail-milestone.is-ready{border-color:rgba(216,192,121,.68);background:linear-gradient(90deg,rgba(216,192,121,.15),rgba(255,255,255,.025)),#0d0d0d;box-shadow:0 14px 44px rgba(216,192,121,.08)}.rewardpass-detail-milestone.is-ready>span b{background:#d8c079;color:#120c03;border-color:#d8c079;box-shadow:0 0 22px rgba(216,192,121,.18)}.rewardpass-detail-milestone.is-done{opacity:.78}.rewardpass-detail-milestone.is-done>span b{background:#f5f5f2;color:#050505}.rewardpass-detail-milestone.is-locked>span b{background:#0a0a0a;color:#6b6b66}
@media(max-width:720px){.rewardpass-detail-hero--v865{grid-template-columns:1fr}.rewardpass-detail-hero--v865 .rewardpass-detail-token{min-height:112px}.rewardpass-detail-stats{grid-template-columns:1fr}.rewardpass-detail-list--v865{max-height:none}.rewardpass-detail-list--v865:before{display:none}.rewardpass-detail-milestone{grid-template-columns:1fr}.rewardpass-detail-milestone>span{grid-template-columns:34px minmax(0,1fr);grid-template-rows:1fr;justify-items:start;align-items:center}.rewardpass-detail-spin{width:100%}}

/* v8.66 reward attention banner */
.rewardpass-spin-alert{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;margin:0 0 16px;border:1px solid rgba(216,192,121,.58);border-left:6px solid #d8c079;background:radial-gradient(circle at 92% 0,rgba(216,192,121,.20),transparent 30%),linear-gradient(135deg,rgba(216,192,121,.12),rgba(255,255,255,.025)),#0a0a0a;color:#f5f5f2;padding:18px;box-shadow:0 18px 64px rgba(216,192,121,.08)}
.rewardpass-spin-alert small{display:block;color:#d8c079;font-size:11px;font-weight:950;letter-spacing:.16em;text-transform:uppercase}.rewardpass-spin-alert strong{display:block;margin:4px 0;color:#f5f5f2;font-size:clamp(24px,3.5vw,42px);line-height:.96;letter-spacing:-.055em}.rewardpass-spin-alert p{margin:0;max-width:720px;color:#c8c1ad;line-height:1.45}
.rewardpass-spin-alert__button{white-space:nowrap;background:linear-gradient(180deg,#fff0b8,#d8a540)!important;color:#130d03!important;border-color:#f4d47b!important;box-shadow:0 10px 28px rgba(216,192,121,.14)}
@media(max-width:760px){.rewardpass-spin-alert{grid-template-columns:1fr}.rewardpass-spin-alert__button{width:100%}}

/* v8.67 platform profile modal stabilization: inline modal must not inherit legacy fullscreen iframe layout */
body.platform-profile-open{overflow:hidden!important}
.platform-profile-modal{
  position:fixed!important;
  inset:0!important;
  z-index:7000!important;
  display:grid!important;
  place-items:center!important;
  padding:max(18px,env(safe-area-inset-top,18px)) max(18px,env(safe-area-inset-right,18px)) max(18px,env(safe-area-inset-bottom,18px)) max(18px,env(safe-area-inset-left,18px))!important;
  background:rgba(0,0,0,.72)!important;
  isolation:isolate!important;
}
.platform-profile-modal__backdrop{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  border:0!important;
  background:rgba(0,0,0,.66)!important;
  backdrop-filter:blur(14px)!important;
  cursor:pointer!important;
}
.platform-profile-card.platform-profile-card--embed{
  position:relative!important;
  z-index:1!important;
  width:min(1320px,calc(100vw - 36px))!important;
  max-height:calc(100dvh - 36px)!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:0!important;
  background:#050505!important;
  color:#f5f5f2!important;
  box-shadow:0 30px 100px rgba(0,0,0,.72)!important;
}
.platform-profile-shell-head{
  position:relative!important;
  z-index:2!important;
  flex:0 0 auto!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:18px!important;
  padding:28px 30px!important;
  border-bottom:1px solid rgba(255,255,255,.16)!important;
  background:linear-gradient(180deg,#060606,#0b0b0b)!important;
}
.platform-profile-shell-head p{
  margin:0 0 8px!important;
  color:#93c5fd!important;
  font-size:12px!important;
  font-weight:950!important;
  letter-spacing:.22em!important;
  text-transform:uppercase!important;
}
.platform-profile-shell-head h2{
  margin:0!important;
  color:#fff!important;
  font-size:clamp(36px,6vw,76px)!important;
  line-height:.92!important;
  letter-spacing:-.06em!important;
}
.platform-profile-modal-close{
  position:relative!important;
  z-index:4!important;
  flex:0 0 auto!important;
  width:64px!important;
  height:64px!important;
  min-width:64px!important;
  display:grid!important;
  place-items:center!important;
  border:0!important;
  border-radius:0!important;
  background:#f5f5f2!important;
  color:#050505!important;
  font:1000 44px/1 system-ui,-apple-system,Segoe UI,sans-serif!important;
  cursor:pointer!important;
  pointer-events:auto!important;
}
.platform-profile-modal-close:hover{filter:brightness(.92);transform:translateY(-1px)}
.platform-profile-tabs.platform-profile-tabs--staging{
  position:relative!important;
  z-index:2!important;
  flex:0 0 auto!important;
  display:grid!important;
  grid-template-columns:repeat(8,minmax(138px,1fr))!important;
  gap:0!important;
  padding:0!important;
  border-bottom:1px solid rgba(255,255,255,.16)!important;
  background:#080808!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  overscroll-behavior-x:contain!important;
  scrollbar-width:thin!important;
  scrollbar-color:#666 #080808!important;
}
.platform-profile-tabs--staging button{
  min-height:74px!important;
  border:0!important;
  border-right:1px solid rgba(255,255,255,.14)!important;
  border-radius:0!important;
  padding:14px 16px!important;
  text-align:left!important;
  background:#080808!important;
  color:#f5f5f2!important;
  cursor:pointer!important;
}
.platform-profile-tabs--staging button strong{display:block;font-size:14px;letter-spacing:.08em;text-transform:uppercase}
.platform-profile-tabs--staging button small{display:block;margin-top:5px;color:#aaa!important;text-transform:none;letter-spacing:0;font-size:12px;line-height:1.2}
.platform-profile-tabs--staging button.is-active{background:#f5f5f2!important;color:#050505!important}
.platform-profile-tabs--staging button.is-active small{color:#555!important}
.platform-profile-embed.platform-profile-embed--inline{
  position:relative!important;
  inset:auto!important;
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  flex:1 1 auto!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  border:0!important;
  background:#050505!important;
}
.platform-profile-embed--inline :where(.page,main.page){
  min-height:auto!important;
  height:auto!important;
  max-width:none!important;
  overflow:visible!important;
  padding:24px!important;
}
.platform-profile-embed--inline :where(.modal,.profile-modal-lite,.social-hub-modal,.social-hub-shell){
  max-width:100%!important;
}
@media(max-width:900px){
  .platform-profile-modal{
    padding:0!important;
    place-items:stretch!important;
    background:#050505!important;
  }
  .platform-profile-card.platform-profile-card--embed{
    width:100vw!important;
    height:100dvh!important;
    max-height:100dvh!important;
    border-left:0!important;
    border-right:0!important;
  }
  .platform-profile-shell-head{
    padding:18px 14px!important;
    align-items:center!important;
  }
  .platform-profile-shell-head p{font-size:10px!important}
  .platform-profile-shell-head h2{font-size:clamp(34px,12vw,56px)!important}
  .platform-profile-modal-close{
    width:54px!important;
    height:54px!important;
    min-width:54px!important;
    font-size:38px!important;
  }
  .platform-profile-tabs.platform-profile-tabs--staging{
    display:flex!important;
    grid-template-columns:none!important;
  }
  .platform-profile-tabs--staging button{
    flex:0 0 min(42vw,174px)!important;
    min-height:64px!important;
    padding:12px!important;
  }
  .platform-profile-embed--inline :where(.page,main.page){
    padding:14px!important;
    padding-bottom:calc(28px + env(safe-area-inset-bottom,0px))!important;
  }
}
@media(max-width:520px){
  .platform-profile-shell-head{gap:10px!important}
  .platform-profile-tabs--staging button{flex-basis:136px!important}
  .platform-profile-modal-close{width:50px!important;height:50px!important;min-width:50px!important}
  .platform-profile-embed--inline :where(.rewardpass-grid,.wallet-grid,.retro-modal-grid--two,.grid.two,.grid.three){
    grid-template-columns:1fr!important;
  }
}

/* v8.68 first-run onboarding: server-owned guide, trial reward, access education */
.onboarding-hero{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.16);
  background:
    radial-gradient(circle at 18% 20%,rgba(214,174,86,.24),transparent 34%),
    linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.015)),
    #090909;
  padding:clamp(28px,5vw,64px);
  box-shadow:0 28px 80px rgba(0,0,0,.42);
}
.onboarding-hero:after{
  content:"";
  position:absolute;
  inset:auto -12% -45% 44%;
  height:260px;
  background:radial-gradient(circle,rgba(214,174,86,.18),transparent 60%);
  pointer-events:none;
}
.onboarding-hero h1{
  margin:8px 0 14px;
  max-width:920px;
  font-size:clamp(44px,8vw,96px);
  line-height:.9;
}
.onboarding-hero p{
  max-width:860px;
  color:#cfcfcf;
  font-size:clamp(17px,2vw,22px);
}
.onboarding-hero-game{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:24px;
  align-items:center;
}
.onboarding-actions,.onboarding-step-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:18px;
}
.onboarding-progress-orb{
  width:154px;
  height:154px;
  border-radius:34px;
  display:grid;
  place-items:center;
  align-content:center;
  background:linear-gradient(145deg,#f2df9a,#b17a20 55%,#1b1005);
  color:#080808;
  border:1px solid rgba(255,236,160,.8);
  box-shadow:0 18px 46px rgba(0,0,0,.45), inset 0 2px 0 rgba(255,255,255,.55);
}
.onboarding-progress-orb strong{
  font-size:44px;
  line-height:1;
}
.onboarding-progress-orb span{
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:12px;
}
.onboarding-role-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:18px 0;
}
.onboarding-choice{
  text-align:left;
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  background:#0d0d0d;
  padding:18px;
  cursor:pointer;
  transition:transform .16s ease,border-color .16s ease,background .16s ease;
}
.onboarding-choice:hover,.onboarding-choice.active{
  transform:translateY(-2px);
  border-color:#f0ca68;
  background:linear-gradient(135deg,rgba(240,202,104,.2),rgba(255,255,255,.035));
}
.onboarding-choice strong{
  display:block;
  font-size:22px;
  margin-bottom:6px;
}
.onboarding-choice span{
  color:#bdbdbd;
}
.onboarding-reward-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  border:1px solid rgba(240,202,104,.5);
  background:linear-gradient(135deg,rgba(240,202,104,.18),rgba(255,255,255,.03));
  padding:22px;
  margin-bottom:18px;
}
.onboarding-reward-panel h2{
  margin:4px 0 8px;
  font-size:clamp(28px,4vw,48px);
}
.onboarding-step-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.onboarding-step-card{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:16px;
  border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.015));
  padding:18px;
  min-height:176px;
}
.onboarding-step-card.current{
  border-color:rgba(240,202,104,.82);
  box-shadow:0 0 0 1px rgba(240,202,104,.18),0 18px 48px rgba(0,0,0,.3);
}
.onboarding-step-card.done{
  background:linear-gradient(135deg,rgba(94,196,120,.16),rgba(255,255,255,.02));
}
.onboarding-step-index{
  width:54px;
  height:54px;
  border-radius:18px;
  display:grid;
  place-items:center;
  background:#f1f1f1;
  color:#060606;
  font-size:24px;
  font-weight:1000;
  box-shadow:0 10px 30px rgba(0,0,0,.35);
}
.onboarding-step-card h3{
  margin:4px 0 8px;
  font-size:26px;
}
.onboarding-step-card p{
  color:#c8c8c8;
  margin-bottom:0;
}
@media(max-width:860px){
  .onboarding-hero-game,.onboarding-reward-panel{grid-template-columns:1fr}
  .onboarding-progress-orb{width:120px;height:120px}
  .onboarding-role-grid,.onboarding-step-grid{grid-template-columns:1fr}
}

/* v8.69 platform visual polish: rewardpass + tombola */
.rewardpass-frame--modern{
  position:relative;
  overflow:hidden;
  min-height:260px;
  background:
    radial-gradient(circle at 80% 10%,rgba(224,190,104,.14),transparent 34%),
    linear-gradient(145deg,rgba(255,255,255,.045),rgba(0,0,0,.35));
  border:1px solid rgba(255,255,255,.13);
  box-shadow:0 22px 70px rgba(0,0,0,.42);
}
.rewardpass-aura{
  position:absolute;
  inset:-45%;
  opacity:.28;
  background:conic-gradient(from 0deg,transparent,rgba(224,190,104,.42),transparent,rgba(255,255,255,.18),transparent);
  filter:blur(22px);
  transform:rotate(0deg);
  pointer-events:none;
}
.rewardpass-frame--modern.has-spins .rewardpass-aura{
  animation:rewardAura 8s linear infinite;
  opacity:.48;
}
.rewardpass-card--modern{
  position:relative;
  z-index:1;
  min-height:220px;
  display:grid;
  grid-template-columns:116px minmax(0,1fr);
  align-items:center;
  gap:28px;
  background:transparent;
}
.rewardpass-card-token{
  width:112px;
  height:112px;
  display:grid;
  place-items:center;
  align-content:center;
  background:#f2f1ec;
  color:#050505;
  border-radius:0 34px 34px 0;
  box-shadow:0 14px 36px rgba(0,0,0,.42),inset 0 0 0 1px rgba(0,0,0,.12);
}
.rewardpass-card-token small{
  font-size:14px;
  font-weight:1000;
  letter-spacing:.16em;
}
.rewardpass-card-token strong{
  font-size:58px;
  line-height:.9;
  font-weight:1000;
}
.rewardpass-kicker{
  color:#e7ca77;
  text-transform:uppercase;
  letter-spacing:.17em;
  font-size:12px;
  font-weight:1000;
}
.rewardpass-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:18px;
}
.rewardpass-link--spin{
  position:relative;
  background:#f3f1e7!important;
  color:#070707!important;
  border-color:#f3f1e7!important;
  box-shadow:0 0 0 1px rgba(224,190,104,.22),0 14px 36px rgba(224,190,104,.18);
}
.rewardpass-spin-chip{
  display:inline-grid;
  place-items:center;
  min-width:24px;
  height:24px;
  margin-right:8px;
  border-radius:999px;
  background:#111;
  color:#f4d878;
}
.rewardpass-frame--modern.has-spins .rewardpass-link--spin{
  animation:rewardSpinPulse 2.8s ease-in-out infinite;
}
.reward-spin-modal--celebration{
  perspective:1200px;
}
.reward-spin-modal--celebration .reward-spin-card--celebration{
  position:relative;
  overflow:hidden;
  width:min(760px,calc(100vw - 30px));
  min-height:560px;
  border:1px solid rgba(224,190,104,.62);
  background:
    radial-gradient(circle at 50% 12%,rgba(245,220,139,.24),transparent 28%),
    linear-gradient(160deg,#060606 0%,#111 45%,#221907 100%);
  box-shadow:0 34px 120px rgba(0,0,0,.72),0 0 0 1px rgba(255,255,255,.06) inset;
  transform:translateY(18px) rotateX(4deg) scale(.96);
  opacity:0;
  transition:transform .52s cubic-bezier(.2,.9,.2,1),opacity .38s ease;
}
.reward-spin-modal--celebration.is-revealed .reward-spin-card--celebration{
  opacity:1;
  transform:translateY(0) rotateX(0deg) scale(1);
}
.reward-spin-modal--celebration .reward-spin-card--celebration:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:0;
  background:
    radial-gradient(circle at 18% 22%,#ffe48a 0 3px,transparent 4px),
    radial-gradient(circle at 72% 18%,#fff3bd 0 2px,transparent 3px),
    radial-gradient(circle at 86% 48%,#e7ca77 0 3px,transparent 4px),
    radial-gradient(circle at 24% 70%,#fff3bd 0 2px,transparent 3px),
    radial-gradient(circle at 58% 82%,#e7ca77 0 3px,transparent 4px);
  transform:translateY(14px) scale(.96);
}
.reward-spin-modal--celebration.is-awarded .reward-spin-card--celebration:after{
  animation:rewardConfetti .9s ease-out both;
}
.reward-spin-spotlight{
  position:absolute;
  inset:-35% -15% auto;
  height:420px;
  background:radial-gradient(circle,rgba(255,240,170,.32),rgba(224,190,104,.14) 34%,transparent 65%);
  filter:blur(18px);
  pointer-events:none;
}
.reward-spin-head{
  position:relative;
  z-index:1;
  text-align:center;
  padding:22px 56px 4px;
}
.reward-spin-head small{
  color:#e7ca77;
  letter-spacing:.17em;
  text-transform:uppercase;
  font-weight:1000;
}
.reward-spin-head h2{
  margin:8px 0 6px;
  font-size:clamp(38px,7vw,72px);
  line-height:.9;
}
.reward-spin-head p{
  max-width:540px;
  margin:0 auto;
  color:#cfcfcf;
}
.reward-spin-steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  max-width:520px;
  margin:18px auto 0;
  padding:0;
  list-style:none;
}
.reward-spin-steps li{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:38px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  background:rgba(255,255,255,.04);
  color:#9f9f9f;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.08em;
  text-transform:uppercase;
  transition:background .24s ease,color .24s ease,border-color .24s ease,transform .24s ease;
}
.reward-spin-steps span{
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:inherit;
}
.reward-spin-modal--celebration.is-revealed .reward-spin-steps .step-spinning,
.reward-spin-modal--celebration.is-server-selected .reward-spin-steps .step-selected,
.reward-spin-modal--celebration.is-awarded .reward-spin-steps .step-credited{
  color:#090704;
  border-color:#f6d985;
  background:linear-gradient(180deg,#fff3bd,#d69b2d);
  transform:translateY(-2px);
  box-shadow:0 10px 28px rgba(224,190,104,.2);
}
.reward-spin-modal--celebration.is-server-selected .reward-spin-steps .step-spinning,
.reward-spin-modal--celebration.is-awarded .reward-spin-steps .step-spinning,
.reward-spin-modal--celebration.is-awarded .reward-spin-steps .step-selected{
  color:#e7ca77;
  border-color:rgba(224,190,104,.38);
  background:rgba(224,190,104,.1);
  transform:none;
}
.reward-spin-stage{
  position:relative;
  z-index:1;
  min-height:310px;
  display:grid;
  place-items:center;
  margin:10px 0 0;
}
.reward-spin-orbit{
  position:absolute;
  width:min(390px,72vw);
  height:min(390px,72vw);
  border-radius:999px;
  border:1px dashed rgba(224,190,104,.32);
  animation:rewardOrbit 2.4s cubic-bezier(.22,.72,.22,1) infinite;
}
.reward-spin-orbit span{
  position:absolute;
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:#f4f0dd;
  color:#111;
  font-size:28px;
  box-shadow:0 16px 44px rgba(0,0,0,.36);
}
.reward-spin-orbit span:nth-child(1){left:50%;top:-29px;transform:translateX(-50%)}
.reward-spin-orbit span:nth-child(2){right:-29px;top:50%;transform:translateY(-50%)}
.reward-spin-orbit span:nth-child(3){left:50%;bottom:-29px;transform:translateX(-50%)}
.reward-spin-orbit span:nth-child(4){left:-29px;top:50%;transform:translateY(-50%)}
.reward-spin-prize-card{
  position:relative;
  width:min(330px,70vw);
  min-height:250px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:8px;
  padding:30px;
  text-align:center;
  border-radius:36px;
  background:linear-gradient(145deg,#fffdf0,#dbc67f);
  color:#050505;
  box-shadow:0 26px 90px rgba(0,0,0,.52),0 0 0 1px rgba(0,0,0,.14) inset;
  transform:scale(.82);
  transition:transform .5s cubic-bezier(.2,1.25,.28,1);
}
.reward-spin-modal--celebration.is-awarded .reward-spin-prize-card{
  transform:scale(1);
  animation:rewardPrizePop .8s ease both;
}
.reward-spin-prize-icon{
  font-size:54px;
}
.reward-spin-prize-card small{
  text-transform:uppercase;
  letter-spacing:.18em;
  font-weight:1000;
  color:#6b5420;
}
.reward-spin-prize-card strong{
  font-size:34px;
  line-height:1;
}
.reward-spin-prize-card p{
  margin:0;
  color:#4c4022;
}
.reward-spin-footer{
  position:relative;
  z-index:1;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:16px 26px 24px;
  color:#d7d7d7;
}
.reward-spin-close{
  z-index:2;
}
@keyframes rewardAura{
  to{transform:rotate(360deg)}
}
@keyframes rewardSpinPulse{
  0%,100%{box-shadow:0 0 0 1px rgba(224,190,104,.22),0 14px 36px rgba(224,190,104,.14)}
  50%{box-shadow:0 0 0 1px rgba(224,190,104,.5),0 18px 58px rgba(224,190,104,.3)}
}
@keyframes rewardOrbit{
  0%{transform:rotate(0deg) scale(.96);opacity:.45}
  58%{transform:rotate(300deg) scale(1);opacity:.9}
  100%{transform:rotate(360deg) scale(.96);opacity:.45}
}
@keyframes rewardPrizePop{
  0%{filter:brightness(1)}
  38%{filter:brightness(1.34)}
  100%{filter:brightness(1)}
}
@keyframes rewardConfetti{
  0%{opacity:0;transform:translateY(14px) scale(.96)}
  24%{opacity:1}
  100%{opacity:0;transform:translateY(-36px) scale(1.04)}
}
@media(max-width:760px){
  .rewardpass-card--modern{grid-template-columns:84px minmax(0,1fr);gap:16px;min-height:190px}
  .rewardpass-card-token{width:82px;height:96px;border-radius:0 26px 26px 0}
  .rewardpass-card-token strong{font-size:44px}
  .reward-spin-modal--celebration .reward-spin-card--celebration{min-height:auto}
  .reward-spin-head{padding:18px 48px 0}
  .reward-spin-stage{min-height:260px}
  .reward-spin-footer{flex-direction:column;align-items:stretch}
}
@media(prefers-reduced-motion:reduce){
  .rewardpass-frame--modern.has-spins .rewardpass-aura,
  .rewardpass-frame--modern.has-spins .rewardpass-link--spin,
  .reward-spin-orbit,
  .reward-spin-modal--celebration.is-awarded .reward-spin-card--celebration:after,
  .reward-spin-modal--celebration.is-awarded .reward-spin-prize-card{
    animation:none!important;
  }
  .reward-spin-card--celebration,
  .reward-spin-prize-card{
    transition:none!important;
  }
}

/* v8.69b platform visual polish: wallet, tickets and profile-modal scroll safety */
.platform-profile-card--embed{
  height:min(92dvh,920px)!important;
  max-height:min(92dvh,920px)!important;
}
.platform-profile-embed--inline{
  overflow:auto!important;
  min-height:0!important;
  scrollbar-gutter:stable!important;
}
.platform-profile-embed--inline :where(.page,.profile-modal-lite){
  padding-bottom:40px!important;
}
.profile-staging-panel.reward-wallet-panel{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 85% 10%,rgba(232,198,101,.13),transparent 30%),
    linear-gradient(145deg,rgba(255,255,255,.045),rgba(0,0,0,.28)),
    #0a0a0a;
}
.profile-staging-panel.reward-wallet-panel:before{
  content:"";
  position:absolute;
  inset:auto -8% -42% auto;
  width:260px;
  height:260px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(232,198,101,.18),transparent 68%);
  pointer-events:none;
}
.wallet-slider-card{
  background:
    radial-gradient(circle at 75% 0,rgba(216,192,121,.16),transparent 32%),
    linear-gradient(145deg,#121212,#060606)!important;
}
.wallet-slider-card strong{
  text-shadow:0 0 28px rgba(216,192,121,.18);
}
.studijniky-slider-form{
  border-top:1px solid rgba(255,255,255,.12);
  padding-top:14px;
}
.studijniky-range{
  height:8px;
}
.reward-ticket-grid{
  grid-template-columns:repeat(3,minmax(190px,1fr));
}
.reward-ticket-card{
  isolation:isolate;
  border-color:rgba(224,190,104,.34)!important;
  border-radius:22px!important;
  background:
    linear-gradient(90deg,transparent 0 10px,rgba(255,255,255,.04) 10px 11px,transparent 11px),
    radial-gradient(circle at 18% 16%,rgba(255,255,255,.12),transparent 18%),
    linear-gradient(155deg,#1a1208,#080807 58%,#121212)!important;
  box-shadow:0 20px 62px rgba(0,0,0,.42),inset 0 0 0 1px rgba(255,255,255,.035)!important;
  transform:translateY(0);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.reward-ticket-card:after{
  content:"";
  position:absolute;
  top:18px;
  bottom:18px;
  left:72px;
  border-left:1px dashed rgba(224,190,104,.36);
  pointer-events:none;
  opacity:.75;
}
.reward-ticket-card:hover{
  transform:translateY(-4px);
  border-color:rgba(224,190,104,.7)!important;
  box-shadow:0 26px 78px rgba(0,0,0,.54),0 0 34px rgba(224,190,104,.12)!important;
}
.reward-ticket-token,
.reward-ticket-mini{
  border-radius:999px!important;
  background:
    radial-gradient(circle at 35% 28%,#fff3bd,#d6a84c 45%,#5c3810)!important;
  color:#140c02!important;
  border-color:#f6d985!important;
  text-shadow:0 1px 0 rgba(255,255,255,.4);
  box-shadow:inset 0 2px 8px rgba(255,255,255,.34),0 10px 24px rgba(0,0,0,.32)!important;
}
.reward-ticket-game .reward-ticket-token:before,
.reward-ticket-learn .reward-ticket-token:before,
.reward-ticket-build .reward-ticket-token:before{
  content:"";
  position:absolute;
  inset:8px;
  border-radius:999px;
  border:1px solid rgba(40,20,0,.32);
}
.reward-ticket-card .btn{
  position:relative;
  z-index:2;
}
.reward-ticket-inventory{
  position:relative;
  z-index:1;
}
.reward-ticket-inventory-row{
  border-radius:16px;
  background:
    linear-gradient(90deg,rgba(224,190,104,.09),transparent 46%),
    #0b0b0b!important;
  border-color:rgba(255,255,255,.12)!important;
}
.daily-reward-panel .daily-reward-claim{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(224,190,104,.42);
  border-radius:22px;
  background:
    radial-gradient(circle at 20% 18%,rgba(255,255,255,.15),transparent 20%),
    linear-gradient(135deg,#1d1508,#090909 70%);
  box-shadow:0 18px 55px rgba(0,0,0,.42);
}
.daily-reward-panel .daily-reward-claim:before{
  content:"";
  position:absolute;
  inset:-40% auto auto -12%;
  width:180px;
  height:180px;
  border-radius:50%;
  background:rgba(224,190,104,.16);
  filter:blur(2px);
}
.daily-reward-panel .daily-reward-claim strong{
  color:#f6dd8a;
  text-shadow:0 0 26px rgba(224,190,104,.18);
}
.daily-reward-panel .daily-reward-claim .btn:not(:disabled){
  background:linear-gradient(180deg,#fff1b8,#d79c2e)!important;
  color:#120c03!important;
  border-color:#f7d77d!important;
}
@media(max-width:980px){
  .platform-profile-card--embed{
    height:100dvh!important;
    max-height:100dvh!important;
  }
  .reward-ticket-grid{
    grid-template-columns:1fr!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .reward-ticket-card{
    transition:none!important;
  }
  .reward-ticket-card:hover{
    transform:none!important;
  }
}

/* v8.69c platform visual polish: first-run onboarding as a guided quest */
.onboarding-hero{
  isolation:isolate;
  border-color:rgba(224,190,104,.36)!important;
  border-radius:28px!important;
  background:
    radial-gradient(circle at 15% 12%,rgba(246,216,139,.24),transparent 28%),
    radial-gradient(circle at 90% 18%,rgba(255,255,255,.08),transparent 24%),
    linear-gradient(135deg,rgba(224,190,104,.13),rgba(255,255,255,.025) 42%,rgba(0,0,0,.78)),
    #070707!important;
  box-shadow:0 28px 95px rgba(0,0,0,.62),inset 0 1px 0 rgba(255,255,255,.09)!important;
}
.onboarding-hero:before{
  content:"";
  position:absolute;
  inset:14px;
  border:1px solid rgba(224,190,104,.22);
  border-radius:22px;
  pointer-events:none;
  z-index:-1;
}
.onboarding-hero:after{
  inset:auto -10% -38% 48%!important;
  height:320px!important;
  background:
    radial-gradient(circle,rgba(224,190,104,.22),transparent 58%),
    conic-gradient(from 32deg,rgba(224,190,104,.16),transparent,rgba(255,255,255,.08),transparent)!important;
  opacity:.9;
}
.onboarding-hero .badge{
  border-color:rgba(224,190,104,.5);
  color:#f6dc94;
  background:rgba(224,190,104,.08);
}
.onboarding-hero h1{
  letter-spacing:-.075em;
  text-shadow:0 18px 70px rgba(0,0,0,.82);
}
.onboarding-progress-orb{
  position:relative;
  border-radius:999px!important;
  background:
    radial-gradient(circle at 34% 28%,#fff7d7 0 10%,#f0ca68 30%,#9a6317 66%,#251302 100%)!important;
  box-shadow:0 22px 54px rgba(0,0,0,.58),0 0 60px rgba(224,190,104,.16),inset 0 3px 0 rgba(255,255,255,.6)!important;
}
.onboarding-progress-orb:before{
  content:"";
  position:absolute;
  inset:12px;
  border:1px solid rgba(255,255,255,.42);
  border-radius:inherit;
}
.onboarding-progress-orb strong,
.onboarding-progress-orb span{
  position:relative;
  z-index:1;
}
.onboarding-role-grid{
  align-items:stretch;
}
.onboarding-choice{
  position:relative;
  overflow:hidden;
  border-radius:20px;
  border-color:rgba(255,255,255,.12)!important;
  background:
    linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.018)),
    #090909!important;
  box-shadow:0 16px 44px rgba(0,0,0,.26);
}
.onboarding-choice:after{
  content:"";
  position:absolute;
  inset:auto 12px 12px auto;
  width:42px;
  height:42px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(224,190,104,.24),transparent 67%);
  opacity:0;
  transform:scale(.7);
  transition:opacity .18s ease,transform .18s ease;
}
.onboarding-choice:hover:after,
.onboarding-choice.active:after{
  opacity:1;
  transform:scale(1);
}
.onboarding-choice.active{
  border-color:rgba(224,190,104,.7)!important;
  background:
    radial-gradient(circle at 88% 20%,rgba(224,190,104,.22),transparent 25%),
    linear-gradient(135deg,rgba(224,190,104,.2),rgba(255,255,255,.035)),
    #0b0b0b!important;
}
.onboarding-reward-panel{
  position:relative;
  overflow:hidden;
  border-radius:24px;
  border-color:rgba(224,190,104,.64)!important;
  background:
    radial-gradient(circle at 90% 18%,rgba(224,190,104,.3),transparent 24%),
    linear-gradient(135deg,rgba(224,190,104,.19),rgba(255,255,255,.035) 42%,rgba(0,0,0,.55)),
    #0a0a0a!important;
  box-shadow:0 22px 70px rgba(0,0,0,.44),inset 0 1px 0 rgba(255,255,255,.11);
}
.onboarding-reward-panel:before{
  content:"✦";
  position:absolute;
  right:34px;
  top:20px;
  color:rgba(255,231,151,.7);
  font-size:68px;
  line-height:1;
  filter:drop-shadow(0 0 24px rgba(224,190,104,.35));
}
.onboarding-reward-panel h2{
  text-shadow:0 12px 42px rgba(224,190,104,.18);
}
.onboarding-step-grid{
  counter-reset:onboarding-step;
}
.onboarding-step-card{
  position:relative;
  overflow:hidden;
  border-radius:22px;
  border-color:rgba(255,255,255,.12)!important;
  background:
    linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.018)),
    #080808!important;
}
.onboarding-step-card:after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:3px;
  background:linear-gradient(90deg,rgba(224,190,104,.0),rgba(224,190,104,.72),rgba(224,190,104,.0));
  opacity:.16;
}
.onboarding-step-card.current{
  background:
    radial-gradient(circle at 92% 18%,rgba(224,190,104,.2),transparent 24%),
    linear-gradient(135deg,rgba(224,190,104,.14),rgba(255,255,255,.025)),
    #090909!important;
}
.onboarding-step-card.done{
  border-color:rgba(110,222,142,.34)!important;
  background:
    radial-gradient(circle at 92% 18%,rgba(110,222,142,.18),transparent 24%),
    linear-gradient(135deg,rgba(110,222,142,.12),rgba(255,255,255,.02)),
    #070807!important;
}
.onboarding-step-index{
  border-radius:999px!important;
  background:
    radial-gradient(circle at 30% 25%,#fff 0 8%,#f4e7b6 35%,#c09138 72%,#24180a)!important;
  color:#070707!important;
  border:1px solid rgba(255,236,178,.72);
}
.onboarding-step-card.done .onboarding-step-index{
  background:
    radial-gradient(circle at 30% 25%,#f2fff4 0 10%,#9beaab 44%,#246b33 82%)!important;
}
.onboarding-step-actions .btn.compact-btn{
  min-height:38px;
}
@media(max-width:860px){
  .onboarding-hero{
    padding:24px!important;
    border-radius:22px!important;
  }
  .onboarding-hero:before{
    inset:10px;
  }
  .onboarding-progress-orb{
    justify-self:start;
  }
  .onboarding-reward-panel:before{
    right:18px;
    top:12px;
    font-size:44px;
  }
}

/* v8.69d platform visual polish: onboarding completion reward modal */
.onboarding-reward-celebration{
  position:fixed;
  inset:0;
  z-index:6200;
  display:grid;
  place-items:center;
  padding:22px;
  background:rgba(0,0,0,.78);
  backdrop-filter:blur(16px);
  opacity:0;
  transition:opacity .22s ease;
}
.onboarding-reward-celebration.is-visible{
  opacity:1;
}
.onboarding-reward-celebration-card{
  position:relative;
  isolation:isolate;
  width:min(760px,100%);
  max-height:min(92dvh,860px);
  overflow:auto;
  border:1px solid rgba(224,190,104,.62);
  border-radius:30px;
  background:
    radial-gradient(circle at 50% -10%,rgba(255,241,180,.3),transparent 32%),
    radial-gradient(circle at 88% 18%,rgba(224,190,104,.22),transparent 26%),
    linear-gradient(145deg,#111,#070707 58%,#020202);
  color:#f8f8f4;
  padding:clamp(26px,5vw,52px);
  text-align:center;
  box-shadow:0 38px 120px rgba(0,0,0,.75),0 0 90px rgba(224,190,104,.18),inset 0 1px 0 rgba(255,255,255,.12);
}
.onboarding-reward-celebration-card:before{
  content:"";
  position:absolute;
  inset:14px;
  border:1px solid rgba(224,190,104,.24);
  border-radius:22px;
  pointer-events:none;
}
.onboarding-reward-close{
  position:absolute;
  z-index:3;
  top:18px;
  right:18px;
  width:48px;
  height:48px;
  border:1px solid rgba(224,190,104,.38);
  border-radius:16px;
  background:#f5f2e8;
  color:#070707;
  font-size:34px;
  font-weight:1000;
  line-height:1;
  cursor:pointer;
}
.onboarding-reward-celebration-card h2{
  margin:12px auto 10px;
  max-width:620px;
  font-size:clamp(42px,7vw,74px);
  line-height:.9;
  letter-spacing:-.075em;
  text-shadow:0 18px 70px rgba(0,0,0,.75),0 0 42px rgba(224,190,104,.12);
}
.onboarding-reward-celebration-card p{
  max-width:620px;
  margin:0 auto 22px;
  color:#d4d4d0;
  font-size:18px;
  line-height:1.55;
}
.onboarding-reward-orbit{
  position:relative;
  width:144px;
  height:144px;
  margin:0 auto 8px;
  border-radius:999px;
  background:
    radial-gradient(circle at 35% 25%,#fff9d6 0 9%,#f2cf73 34%,#8f5a13 72%,#140a02);
  box-shadow:0 24px 70px rgba(0,0,0,.58),0 0 80px rgba(224,190,104,.25),inset 0 3px 0 rgba(255,255,255,.55);
}
.onboarding-reward-orbit:before{
  content:"B";
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:#080808;
  font-size:64px;
  font-weight:1000;
}
.onboarding-reward-orbit i{
  position:absolute;
  left:50%;
  top:50%;
  width:18px;
  height:18px;
  margin:-9px;
  border-radius:999px;
  background:#fff4bd;
  box-shadow:0 0 24px rgba(255,235,160,.75);
  animation:onboardingRewardOrbit 3.8s linear infinite;
}
.onboarding-reward-orbit i:nth-child(2){
  animation-delay:-1.25s;
}
.onboarding-reward-orbit i:nth-child(3){
  animation-delay:-2.5s;
}
.onboarding-reward-primary{
  width:min(360px,100%);
  margin:18px auto 22px;
  padding:18px;
  border:1px solid rgba(255,237,166,.46);
  border-radius:24px;
  background:linear-gradient(135deg,rgba(255,238,168,.22),rgba(255,255,255,.04));
}
.onboarding-reward-primary strong,
.onboarding-reward-primary span{
  display:block;
}
.onboarding-reward-primary strong{
  font-size:clamp(52px,9vw,88px);
  line-height:.9;
  letter-spacing:-.06em;
}
.onboarding-reward-primary span{
  margin-top:8px;
  color:#f5d982;
  font-size:13px;
  font-weight:1000;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.onboarding-reward-loot{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-top:16px;
}
.onboarding-reward-loot>div{
  display:grid;
  gap:10px;
  align-content:start;
  padding:14px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:20px;
  background:rgba(255,255,255,.035);
  text-align:left;
}
.onboarding-reward-loot small{
  color:#f5d982;
  font-weight:1000;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.onboarding-reward-loot article{
  display:grid;
  grid-template-columns:44px minmax(0,1fr);
  gap:10px;
  align-items:center;
  min-height:56px;
  padding:10px;
  border:1px solid rgba(224,190,104,.22);
  border-radius:16px;
  background:rgba(0,0,0,.24);
}
.onboarding-reward-loot article span{
  grid-row:span 2;
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:radial-gradient(circle at 35% 25%,#fff,#efd47f 45%,#805111);
  color:#080808;
  font-weight:1000;
}
.onboarding-reward-loot article strong{
  display:block;
  font-size:16px;
}
.onboarding-reward-loot article small{
  color:#bdbdbd;
  font-size:11px;
  letter-spacing:.06em;
}
.onboarding-reward-actions{
  display:flex;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
  margin-top:24px;
}
@keyframes onboardingRewardOrbit{
  from{transform:rotate(0deg) translateX(86px) rotate(0deg)}
  to{transform:rotate(360deg) translateX(86px) rotate(-360deg)}
}
@media(max-width:720px){
  .onboarding-reward-celebration{
    padding:10px;
  }
  .onboarding-reward-celebration-card{
    border-radius:22px;
    padding:24px 16px;
  }
  .onboarding-reward-orbit{
    width:108px;
    height:108px;
  }
  .onboarding-reward-orbit:before{
    font-size:48px;
  }
  .onboarding-reward-loot{
    grid-template-columns:1fr;
  }
  .onboarding-reward-actions .btn{
    width:100%;
  }
  @keyframes onboardingRewardOrbit{
    from{transform:rotate(0deg) translateX(64px) rotate(0deg)}
    to{transform:rotate(360deg) translateX(64px) rotate(-360deg)}
  }
}
@media(prefers-reduced-motion:reduce){
  .onboarding-reward-celebration,
  .onboarding-reward-orbit i{
    transition:none!important;
    animation:none!important;
  }
}

/* v8.69f platform profile modal: final scroll/accessibility safety layer */
html.platform-profile-open,
body.platform-profile-open{
  overflow:hidden!important;
  height:100%!important;
}
.platform-profile-modal{
  position:fixed!important;
  inset:0!important;
  z-index:5000!important;
  display:grid!important;
  place-items:center!important;
  padding:clamp(10px,2vw,24px)!important;
  background:transparent!important;
  isolation:isolate!important;
}
.platform-profile-modal__backdrop{
  position:absolute!important;
  inset:0!important;
  background:rgba(0,0,0,.78)!important;
  backdrop-filter:blur(14px)!important;
}
.platform-profile-card.platform-profile-card--embed{
  position:relative!important;
  z-index:1!important;
  display:grid!important;
  grid-template-rows:auto auto minmax(0,1fr)!important;
  width:min(1560px,calc(100vw - clamp(20px,4vw,48px)))!important;
  height:min(900px,calc(100dvh - clamp(20px,4vw,48px)))!important;
  max-height:calc(100dvh - clamp(20px,4vw,48px))!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.20)!important;
  border-radius:0!important;
  background:#050505!important;
  color:#f5f5f2!important;
  box-shadow:0 34px 120px rgba(0,0,0,.76)!important;
}
.platform-profile-shell-head{
  position:sticky!important;
  top:0!important;
  z-index:3!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  min-height:auto!important;
  padding:clamp(16px,2.4vw,30px)!important;
  border-bottom:1px solid rgba(255,255,255,.16)!important;
  background:linear-gradient(180deg,#070707,#050505)!important;
}
.platform-profile-shell-head h2{
  max-width:min(980px,78vw)!important;
  overflow-wrap:anywhere!important;
}
.platform-profile-modal-close{
  position:relative!important;
  z-index:5!important;
  flex:0 0 auto!important;
  width:clamp(52px,5.4vw,76px)!important;
  height:clamp(52px,5.4vw,76px)!important;
  min-width:clamp(52px,5.4vw,76px)!important;
  display:grid!important;
  place-items:center!important;
  outline-offset:4px!important;
}
.platform-profile-tabs.platform-profile-tabs--staging{
  position:relative!important;
  z-index:3!important;
  display:flex!important;
  grid-template-columns:none!important;
  flex-wrap:nowrap!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  min-height:0!important;
  background:#080808!important;
  scrollbar-gutter:stable!important;
  -webkit-overflow-scrolling:touch!important;
}
.platform-profile-tabs--staging button{
  flex:1 0 148px!important;
  min-width:148px!important;
}
.platform-profile-embed.platform-profile-embed--inline{
  position:relative!important;
  inset:auto!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
  -webkit-overflow-scrolling:touch!important;
  background:#050505!important;
}
.platform-profile-embed--inline :where(.page,main.page){
  width:100%!important;
  max-width:none!important;
  min-height:auto!important;
  overflow:visible!important;
  padding:clamp(14px,2vw,28px)!important;
  padding-bottom:calc(clamp(28px,4vw,56px) + env(safe-area-inset-bottom,0px))!important;
  background:#050505!important;
}
.platform-profile-embed--inline :where(.profile-modal-lite,.social-hub-modal,.social-hub-shell){
  min-height:auto!important;
  max-width:100%!important;
  overflow:visible!important;
}
.platform-profile-embed--inline :where(.table-wrap){
  max-width:100%!important;
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
@media(max-width:760px){
  .platform-profile-modal{
    padding:0!important;
    place-items:stretch!important;
  }
  .platform-profile-card.platform-profile-card--embed{
    width:100vw!important;
    height:100dvh!important;
    max-height:100dvh!important;
    border-left:0!important;
    border-right:0!important;
  }
  .platform-profile-shell-head{
    padding:14px!important;
  }
  .platform-profile-shell-head p{
    font-size:10px!important;
    letter-spacing:.14em!important;
  }
  .platform-profile-shell-head h2{
    max-width:calc(100vw - 92px)!important;
    font-size:clamp(30px,10vw,52px)!important;
  }
  .platform-profile-tabs--staging button{
    flex:0 0 min(44vw,160px)!important;
    min-width:min(44vw,160px)!important;
    min-height:62px!important;
    padding:10px 12px!important;
  }
  .platform-profile-tabs--staging button strong{
    font-size:12px!important;
  }
  .platform-profile-tabs--staging button small{
    font-size:10px!important;
  }
}
@media(max-width:520px){
  .platform-profile-shell-head{
    gap:10px!important;
  }
  .platform-profile-modal-close{
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    font-size:34px!important;
  }
  .platform-profile-embed--inline :where(.grid,.grid.two,.grid.three,.rewardpass-grid,.wallet-grid,.profile-subscription-grid,.payment-readiness-grid,.retro-modal-grid--two){
    grid-template-columns:1fr!important;
  }
}

/* v8.69g platform rewards: compact user-facing win feed */
.reward-spin-history.reward-spin-history--feed{
  grid-template-columns:minmax(220px,300px) minmax(0,1fr)!important;
  align-items:stretch!important;
  border-color:rgba(224,190,104,.26)!important;
  border-radius:24px!important;
  background:
    radial-gradient(circle at 12% 0,rgba(224,190,104,.16),transparent 26%),
    linear-gradient(135deg,rgba(255,255,255,.045),rgba(0,0,0,.24)),
    #090909!important;
  padding:18px!important;
  box-shadow:0 20px 70px rgba(0,0,0,.34)!important;
}
.reward-spin-history--feed>div:first-child{
  display:grid!important;
  align-content:center!important;
  min-height:136px!important;
  padding:18px!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:20px!important;
  background:rgba(0,0,0,.20)!important;
}
.reward-spin-history--feed>div:first-child small{
  color:#f4d882!important;
}
.reward-spin-history--feed>div:first-child strong{
  font-size:clamp(25px,3vw,40px)!important;
  line-height:.95!important;
  letter-spacing:-.055em!important;
}
.reward-spin-history--feed .reward-spin-history-list{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
}
.reward-spin-history-item{
  grid-template-columns:48px minmax(0,1fr)!important;
  min-height:82px!important;
  padding:12px!important;
  border-color:rgba(224,190,104,.20)!important;
  border-radius:18px!important;
  background:
    linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.012)),
    #0d0d0d!important;
}
.reward-spin-history-item>span{
  width:48px!important;
  height:48px!important;
  border-radius:999px!important;
  background:radial-gradient(circle at 35% 25%,#fff7c8,#d6a84c 48%,#5c3810)!important;
  color:#120b02!important;
  font-weight:1000!important;
  box-shadow:inset 0 2px 8px rgba(255,255,255,.32),0 10px 24px rgba(0,0,0,.30)!important;
}
.reward-spin-history-item strong{
  display:block!important;
  color:#f5f5f2!important;
  font-size:14px!important;
  line-height:1.15!important;
}
.reward-spin-history-item small{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin-top:5px!important;
  color:#aaa!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
.reward-spin-history-item small b,
.reward-spin-history-item small i{
  display:inline-flex!important;
  align-items:center!important;
  min-height:22px!important;
  padding:3px 7px!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.045)!important;
  color:#d8d8d8!important;
  font-style:normal!important;
  font-size:10px!important;
  font-weight:850!important;
}
@media(max-width:1100px){
  .reward-spin-history--feed .reward-spin-history-list{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:760px){
  .reward-spin-history.reward-spin-history--feed,
  .reward-spin-history--feed .reward-spin-history-list{
    grid-template-columns:1fr!important;
  }
  .reward-spin-history--feed>div:first-child{
    min-height:auto!important;
  }
}

/* v8.69j platform visual polish: consistent CTA, focus and subtle action feedback */
html[data-surface]:not([data-surface="sarvatky"]) :where(
  .btn,
  .rewardpass-link,
  .zapareno-buy-button,
  .daily-reward-claim .btn,
  .onboarding-actions .btn,
  .onboarding-step-actions .btn,
  .course-card-actions .btn,
  .learning-course-card__actions .btn,
  .learning-next-row,
  .platform-profile-head button
){
  transition:
    transform .16s ease,
    box-shadow .16s ease,
    border-color .16s ease,
    background .16s ease,
    color .16s ease,
    opacity .16s ease;
}
html[data-surface]:not([data-surface="sarvatky"]) :where(
  .btn,
  .rewardpass-link,
  .zapareno-buy-button,
  .daily-reward-claim .btn,
  .onboarding-actions .btn,
  .onboarding-step-actions .btn,
  .course-card-actions .btn,
  .learning-course-card__actions .btn,
  .platform-profile-head button
):focus-visible{
  outline:2px solid #e7ca77!important;
  outline-offset:3px!important;
  box-shadow:0 0 0 5px rgba(231,202,119,.16)!important;
}
html[data-surface]:not([data-surface="sarvatky"]) :where(
  .btn:not(:disabled):not([aria-disabled="true"]),
  .rewardpass-link:not(:disabled):not([aria-disabled="true"]),
  .zapareno-buy-button:not(:disabled):not([aria-disabled="true"])
):hover{
  transform:translateY(-1px);
}
html[data-surface]:not([data-surface="sarvatky"]) :where(
  .btn:not(:disabled):not([aria-disabled="true"]),
  .rewardpass-link:not(:disabled):not([aria-disabled="true"]),
  .zapareno-buy-button:not(:disabled):not([aria-disabled="true"])
):active{
  transform:translateY(1px) scale(.995);
}
html[data-surface]:not([data-surface="sarvatky"]) :where(
  .btn:disabled,
  .btn[aria-disabled="true"],
  .rewardpass-link:disabled,
  .rewardpass-link[aria-disabled="true"],
  .zapareno-buy-button:disabled,
  .zapareno-buy-button[aria-disabled="true"]
){
  cursor:not-allowed!important;
  filter:saturate(.72);
  opacity:.54!important;
}
html[data-surface]:not([data-surface="sarvatky"]) :where(
  .rewardpass-link--spin,
  .daily-reward-claim .btn:not(:disabled),
  .onboarding-reward-panel .btn:not(:disabled),
  .zapareno-buy-button:not(:disabled),
  .learning-progress-banner .btn:not(:disabled),
  .lesson-page .complete-panel .btn:not(:disabled)
){
  position:relative;
  isolation:isolate;
  box-shadow:0 0 0 1px rgba(231,202,119,.22),0 16px 42px rgba(231,202,119,.10);
}
html[data-surface]:not([data-surface="sarvatky"]) :where(
  .rewardpass-link--spin,
  .daily-reward-claim .btn:not(:disabled),
  .onboarding-reward-panel .btn:not(:disabled),
  .zapareno-buy-button:not(:disabled),
  .learning-progress-banner .btn:not(:disabled),
  .lesson-page .complete-panel .btn:not(:disabled)
)::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(110deg,transparent 0 30%,rgba(255,255,255,.18) 45%,transparent 62% 100%);
  opacity:0;
  transform:translateX(-35%);
}
html[data-surface]:not([data-surface="sarvatky"]) :where(
  .rewardpass-link--spin,
  .daily-reward-claim .btn:not(:disabled),
  .onboarding-reward-panel .btn:not(:disabled),
  .zapareno-buy-button:not(:disabled),
  .learning-progress-banner .btn:not(:disabled),
  .lesson-page .complete-panel .btn:not(:disabled)
):hover::after{
  opacity:1;
  transform:translateX(35%);
  transition:opacity .18s ease,transform .46s ease;
}
@media(prefers-reduced-motion:reduce){
  html[data-surface]:not([data-surface="sarvatky"]) :where(
    .btn,
    .rewardpass-link,
    .zapareno-buy-button,
    .daily-reward-claim .btn,
    .onboarding-actions .btn,
    .onboarding-step-actions .btn,
    .course-card-actions .btn,
    .learning-course-card__actions .btn,
    .learning-next-row,
    .platform-profile-head button
  ){
    transition:none!important;
    transform:none!important;
  }
  html[data-surface]:not([data-surface="sarvatky"]) :where(
    .rewardpass-link--spin,
    .daily-reward-claim .btn,
    .onboarding-reward-panel .btn,
    .zapareno-buy-button,
    .learning-progress-banner .btn,
    .lesson-page .complete-panel .btn
  )::after{
    display:none!important;
  }
}

/* v8.69k platform modal scroll hardening: staging-safe final override */
html.platform-profile-open,
body.platform-profile-open{
  overflow:hidden!important;
  width:100%!important;
  height:100%!important;
}
.platform-profile-modal{
  position:fixed!important;
  inset:0!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  padding:clamp(8px,2vw,24px)!important;
}
.platform-profile-card.platform-profile-card--embed{
  display:grid!important;
  grid-template-rows:auto auto minmax(0,1fr)!important;
  width:min(1560px,calc(100vw - clamp(16px,4vw,48px)))!important;
  height:min(92dvh,calc(100dvh - clamp(16px,4vw,48px)))!important;
  max-height:calc(100dvh - clamp(16px,4vw,48px))!important;
  min-height:0!important;
  overflow:hidden!important;
}
.platform-profile-embed.platform-profile-embed--inline{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow-x:hidden!important;
  overflow-y:scroll!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-gutter:stable both-edges!important;
}
.platform-profile-embed--inline :where(.page,main.page,.page-layout-profile-modal-lite){
  min-height:auto!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
.rewardpass-detail-modal{
  position:fixed!important;
  inset:0!important;
  z-index:6250!important;
  display:grid!important;
  place-items:center!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  padding:clamp(10px,3vh,28px)!important;
  -webkit-overflow-scrolling:touch!important;
}
.rewardpass-detail-card,
.rewardpass-detail-card--v865{
  width:min(980px,calc(100vw - 24px))!important;
  max-height:calc(100dvh - clamp(20px,6vh,56px))!important;
  min-height:0!important;
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
.rewardpass-detail-card--v865{
  display:flex!important;
  flex-direction:column!important;
}
.rewardpass-detail-card--v865 .rewardpass-detail-head,
.rewardpass-detail-card--v865 .rewardpass-detail-hero,
.rewardpass-detail-card--v865 .rewardpass-detail-stats{
  flex:0 0 auto!important;
}
.rewardpass-detail-list,
.rewardpass-detail-list--v865{
  min-height:0!important;
  max-height:none!important;
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
.rewardpass-detail-card--v865 .rewardpass-detail-list--v865{
  flex:1 1 auto!important;
}
@media(max-width:760px){
  .platform-profile-modal{
    padding:0!important;
    place-items:stretch!important;
  }
  .platform-profile-card.platform-profile-card--embed{
    width:100vw!important;
    height:100dvh!important;
    max-height:100dvh!important;
  }
  .rewardpass-detail-modal{
    place-items:stretch!important;
    padding:0!important;
  }
  .rewardpass-detail-card,
  .rewardpass-detail-card--v865{
    width:100vw!important;
    max-height:100dvh!important;
    border-left:0!important;
    border-right:0!important;
  }
}
