:root{--text:#475569;--text-h:#1f2937;--muted:#64748b;--bg:#f4efe6;--border:#5c483029;--panel-bg:#fffcf5e6;--input-bg:#ffffffdb;--accent:#b4232e;--accent-soft:#f5d7cf;--indigo:#29435c;--tatami:#d9c8a9;--shadow:#3f322224 0 18px 46px -28px;--color-primary:#b4232e;--color-primary-soft:#b4232e1a;--color-secondary:#29435c;--color-secondary-soft:#29435c1a;--color-success:#0f766e;--color-success-soft:#0f766e1a;--color-warning:#b7791f;--color-warning-soft:#b7791f1f;--color-error:#9f1d2a;--color-error-soft:#9f1d2a1a;--color-neutral:#475569;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--motion-fast:.16s ease;--motion-medium:.26s ease;color:var(--text);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#b4232e0e 25%,#0000 25%) 0 0/26px 26px,linear-gradient(225deg,#29435c0b 25%,#0000 25%) 0 0/26px 26px,radial-gradient(circle at 12% -8%,#b4232e29,#0000 28rem),radial-gradient(circle at 90% 2%,#8f70402e,#0000 28rem),linear-gradient(#fffaf1 0%,#f4efe6 56%,#ebe1d1 100%);font:16px/1.5 Inter,ui-sans-serif,system-ui,Segoe UI,sans-serif}#root{box-sizing:border-box;width:min(1400px,100%);min-height:100vh;margin:0 auto}body{min-width:320px;min-height:100vh;margin:0}h1,h2{color:var(--text-h);margin:0}h1{font-size:clamp(2rem,4vw,3.3rem);line-height:1.1}h2{font-size:1.2rem}p{margin:0}strong{color:var(--text-h)}span,p{overflow-wrap:anywhere}.app-shell{line-height:var(--learning-line-spacing,1.5);gap:18px;padding:24px;display:grid}.app-shell.accessibility-large-text{font-size:112%}.app-shell.accessibility-dyslexia{letter-spacing:.01em;font-family:Verdana,Arial,sans-serif}.app-shell.accessibility-high-contrast{--text:#050505;--muted:#1f2933;color:#050505;background:#fff}.app-shell.accessibility-high-contrast .panel,.app-shell.accessibility-high-contrast .record-card,.app-shell.accessibility-high-contrast .guided-journey-card,.app-shell.accessibility-high-contrast .login-panel{background:#fff;border-color:#050505}.app-shell.accessibility-focus .stats-grid,.app-shell.accessibility-focus .portal-grid{display:none}.app-shell.accessibility-focus .tabs{gap:8px}.academy-gallery-page{gap:18px;font-weight:400;display:grid}.fight-page{gap:18px;display:grid}.fight-page :where(h2,h3,strong,label,button){font-weight:520}.fight-mode-choice{grid-template-columns:repeat(2,minmax(180px,1fr));gap:10px;margin-bottom:14px;display:grid}.live-fight-active-panel{background:linear-gradient(135deg,#f0fdfac7,#fffcf5db);border:1px solid #0f766e33;border-radius:8px;gap:10px;margin-bottom:16px;padding:14px;display:grid}.live-fight-active-header,.live-fight-active-card,.live-fight-active-card>div:last-child{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.live-fight-active-header,.live-fight-active-card{justify-content:space-between}.live-fight-active-header div,.live-fight-active-card>div:first-child{gap:2px;display:grid}.live-fight-active-header span,.live-fight-active-card span{color:#0f766e;text-transform:uppercase;font-size:.78rem}.live-fight-active-header strong,.live-fight-active-card strong{color:#1f2937}.live-fight-active-list{gap:8px;display:grid}.live-fight-active-card{background:#ffffffb8;border:1px solid #78716c2e;border-radius:8px;padding:12px}.live-fight-active-running{border-color:#be123c57;box-shadow:inset 4px 0 #be123cc7}.live-fight-active-paused{box-shadow:inset 4px 0 #f59e0bb3}.live-fight-active-finished{opacity:.82}.live-fight-active-card button,.live-fight-active-header button{border-radius:8px;min-height:42px}.fight-mode-choice button{color:#27415e;background:linear-gradient(135deg,#fffcf5f0,#ffffffbd);border-color:#78716c38;min-height:54px}.fight-mode-choice button.active{color:#172033;background:linear-gradient(135deg,#be123c1f,#fffcf5eb);border-color:#be123c57;box-shadow:inset 4px 0 #be123cd6}.fight-setup-grid{grid-template-columns:minmax(240px,1fr) minmax(240px,1fr) minmax(220px,.7fr);align-items:start;gap:14px;display:grid}.fight-picker,.fight-quick-panel{background:#fffcf5ad;border:1px solid #78716c33;border-radius:8px;gap:12px;min-height:100%;padding:14px;display:grid}.fight-picker-white{box-shadow:inset 4px 0 #94a3b866}.fight-picker-blue{box-shadow:inset 4px 0 #2563eb8c}.fight-student-options,.fight-recent-list,.fight-history{gap:8px;display:grid}.fight-student-options button,.fight-recent-list button{text-align:left;border-radius:8px;justify-content:flex-start;align-items:center;gap:10px;min-height:64px;padding:8px 10px;display:flex}.fight-student-options button.active{background:linear-gradient(135deg,#be123c1f,#14b8a614);border-color:#be123c6b}.fight-student-options img{object-fit:cover;background:#ffffffe6;border-radius:999px;flex:none;width:42px;height:42px;box-shadow:0 10px 24px -16px #0f172a1f}.fight-student-options span,.fight-athlete-profile div{gap:2px;display:grid}.fight-student-options small,.fight-athlete-profile small,.fight-athlete-profile span,.fight-event small{color:#64748b}.fight-quick-actions{grid-template-columns:1fr;gap:10px;display:grid}.fight-quick-actions button:last-child{color:#fff;background:linear-gradient(135deg,#be123c,#9f1239)}.fight-queue-panel{gap:14px;display:grid}.fight-queue-builder{background:radial-gradient(circle at 8% 12%,#be123c12,#0000 28%),linear-gradient(135deg,#fffcf5c7,#ffffff9e);border:1px solid #78716c2e;border-radius:8px;gap:14px;padding:14px;display:grid}.fight-queue-builder-header,.fight-queue-selectors{grid-template-columns:repeat(3,minmax(180px,1fr));align-items:end;gap:12px;display:grid}.fight-queue-selectors button{color:#fff;background:linear-gradient(135deg,#be123c,#9f1239);min-height:54px}.fight-queue-start-line{background:#f0fdfa7a;border:1px solid #14b8a638;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.fight-queue-start-line div{gap:3px;display:grid}.fight-queue-start-line span,.fight-queue-title span{color:#64748b}.fight-queue-start-line button{color:#fff;background:linear-gradient(135deg,#0f766e,#115e59)}.fight-queue-toolbar{grid-template-columns:minmax(220px,1fr) repeat(2,minmax(110px,.2fr)) auto;align-items:end;gap:12px;display:grid}.fight-queue-title{background:#fffcf5b8;border:1px solid #78716c33;border-radius:8px;align-content:center;gap:4px;min-height:58px;padding:10px 12px;display:grid}.fight-queue-title strong{color:#172033;font-size:1.05rem}.fight-queue-summary{background:#fffcf5b8;border:1px solid #78716c33;border-radius:8px;align-content:center;gap:2px;min-height:58px;padding:10px 12px;display:grid}.fight-queue-summary strong{color:#be123c;font-size:1.45rem;line-height:1}.fight-queue-summary span,.fight-queue-order span,.fight-queue-athletes small,.fight-queue-empty span{color:#64748b}.fight-queue-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.fight-queue-actions button:first-child{color:#fff;background:linear-gradient(135deg,#be123c,#9f1239)}.fight-queue-current{background:linear-gradient(135deg,#fffbebeb,#fffcf5c2),radial-gradient(circle at 6%,#facc1538,#0000 28%);border:1px solid #facc156b;border-radius:8px;gap:4px;padding:12px 14px;display:grid;box-shadow:inset 4px 0 #facc15b8}.fight-queue-current span{color:#be123c;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}.fight-queue-current strong{color:#172033;font-size:clamp(1rem,2vw,1.28rem)}.fight-queue-current small{color:#64748b}.fight-queue-list{gap:10px;display:grid}.fight-queue-item{background:#fffcf5b8;border:1px solid #78716c33;border-radius:8px;grid-template-columns:minmax(82px,.14fr) minmax(240px,1fr) auto;align-items:center;gap:12px;padding:10px;display:grid}.fight-queue-current,.fight-queue-item{animation:.22s both soft-rise}.fight-queue-current,.fight-queue-item.fight-queue-current{border-color:#facc1575}.fight-queue-item.fight-queue-current{box-shadow:inset 4px 0 #facc15b8}.fight-queue-item.fight-queue-done{background:#f0fdfa94;border-color:#14b8a647}.fight-queue-item.fight-queue-skipped{opacity:.68}.fight-queue-order{gap:2px;display:grid}.fight-queue-order strong{color:#be123c;font-size:1.35rem;line-height:1}.fight-queue-athletes{gap:3px;min-width:0;display:grid}.fight-queue-athletes strong{color:#172033;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fight-queue-athletes span{color:#475569}.fight-queue-item-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.fight-queue-item-actions button{min-height:38px;padding-inline:12px}.fight-queue-empty{text-align:center;background:#fffcf58f;border:1px dashed #64748b59;border-radius:8px;gap:4px;padding:18px;display:grid}@keyframes soft-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.fight-scoreboard{color:#f8fafc;background:#0f172a;border:1px solid #0f172a2e;border-radius:8px;gap:16px;padding:18px;display:grid;position:relative;overflow:hidden;box-shadow:0 26px 90px -50px #0f172a40}.fight-scoreboard-fullscreen{z-index:1000;background:radial-gradient(circle at 8% 12%,#2563eb3d,#0000 24%),radial-gradient(circle at 92% 82%,#be123c2e,#0000 28%),#050816;border:0;border-radius:0;align-content:stretch;gap:12px;padding:clamp(12px,2vw,28px);position:fixed;inset:0}.fight-scoreboard-mode-button{z-index:5;color:#172033;background:#ffffffe6;border-color:#ffffff4d;min-height:42px;padding-inline:14px;position:absolute;top:14px;right:14px}.fight-scoreboard-fullscreen .fight-scoreboard-mode-button{border-radius:999px;top:18px;right:18px;box-shadow:0 16px 42px -26px #00000047}.official-scoreboard-card{color:#111827;background:#fff;border:6px solid #0a57c8;border-radius:16px;gap:clamp(8px,1.2vw,14px);width:min(1040px,100%);margin-inline:auto;padding:clamp(12px,1.8vw,24px);display:grid;box-shadow:0 30px 110px -56px #00000057}.fight-scoreboard-fullscreen .official-scoreboard-card{grid-template-rows:auto auto minmax(0,1fr) auto;width:min(1500px,100vw - 180px);height:calc(100vh - 56px);min-height:0}.official-scoreboard-header,.official-scoreboard-footer,.fight-control-bar,.fight-score-actions,.official-control-group{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.official-scoreboard-header{color:#005bac;text-transform:uppercase;letter-spacing:.03em;justify-content:space-between}.official-scoreboard-header div{justify-items:center;gap:2px;display:grid}.official-scoreboard-header strong{color:#69d44f;text-shadow:1px 2px #005bac;font-size:clamp(1.8rem,3.4vw,3.1rem);line-height:.94}.official-scoreboard-header small{color:#005bac;font-size:clamp(.82rem,1.5vw,1rem)}.official-score-legend{color:#111827;text-align:center;border:1px solid #111827;grid-template-columns:repeat(3,1fr);justify-self:end;width:clamp(140px,19vw,250px);font-size:clamp(.58rem,1vw,.78rem);display:grid}.official-score-legend span{padding:4px 2px}.official-scoreboard-rows{border:2px solid #111827;gap:0;display:grid}.fight-scoreboard-fullscreen .official-scoreboard-rows{grid-template-rows:repeat(2,minmax(0,1fr));min-height:0}.official-fighter-row{border-bottom:2px solid #111827;grid-template-columns:minmax(120px,.8fr) minmax(220px,2fr) minmax(150px,.9fr) minmax(70px,.42fr);align-items:center;min-height:clamp(88px,13vh,146px);transition:box-shadow .18s,transform .18s;display:grid;position:relative;overflow:hidden}.fight-scoreboard-fullscreen .official-fighter-row{grid-template-columns:minmax(110px,.62fr) minmax(260px,2.7fr) minmax(240px,.95fr) minmax(70px,.34fr);min-height:0}.official-fighter-row:last-child{border-bottom:0}.official-fighter-white{color:#111827;background:#fff}.official-fighter-blue{color:#fff;background:#045cc8}.official-fighter-row.winner{box-shadow:inset 0 0 0 5px #facc15eb}.official-fighter-row.osaekomi-active{box-shadow:inset 0 0 0 5px #facc15bf,inset 0 -10px 24px #facc151a}.official-fighter-side,.official-fighter-name,.official-penalties{gap:3px;padding:clamp(8px,1.4vw,16px);display:grid}.official-fighter-side span{color:inherit;opacity:.72;text-transform:uppercase;font-size:clamp(.66rem,1.2vw,.86rem)}.official-fighter-side strong{border:1px solid;width:fit-content;padding:3px 8px;font-size:clamp(1.2rem,2.4vw,2.2rem);line-height:1}.official-fighter-name{border-left:2px solid #11182742;min-width:0;position:relative;overflow:hidden}.official-fighter-name>strong,.official-fighter-name>span{z-index:2;position:relative}.official-fighter-blue .official-fighter-name{border-left-color:#ffffff42}.official-fighter-name strong{text-overflow:ellipsis;white-space:nowrap;font-size:clamp(1.45rem,3vw,3.4rem);line-height:1;overflow:hidden}.fight-scoreboard-fullscreen .official-fighter-name strong{font-size:clamp(2rem,4vw,4.8rem)}.official-fighter-name span{color:inherit;opacity:.78;font-size:clamp(.8rem,1.5vw,1.08rem)}.official-fighter-name.osaekomi-name-active{background:linear-gradient(90deg,#facc1514,#0000 70%)}.official-score-digits{text-align:center;border-left:2px solid #11182759;grid-template-columns:repeat(3,1fr);align-items:center;height:100%;display:grid}.official-fighter-blue .official-score-digits{border-left-color:#ffffff4d}.official-score-digits strong{border-right:1px solid #1118272e;place-items:center;height:100%;font-size:clamp(2.6rem,6.4vw,6.2rem);line-height:1;display:grid}.official-score-digits strong:last-child{border-right:0}.official-fighter-blue .official-score-digits strong{border-right-color:#ffffff2e}.official-penalties{justify-items:center}.official-penalties span,.official-penalties em{background:#ffffff38;border:1px solid #11182773;width:clamp(20px,2.8vw,34px);height:clamp(24px,3.4vw,42px);display:block}.official-penalties span.active{background:#facc15}.official-penalties em{color:#111827;background:#f97316;place-items:center;font-style:normal;font-weight:700;display:grid}.official-osaekomi-name-progress{z-index:1;background:linear-gradient(90deg,#0000 calc(50% - 1px),#11182775 calc(50% - 1px) calc(50% + 1px),#0000 calc(50% + 1px)),repeating-linear-gradient(135deg,#0000 0 20px,#facc151a 20px 34px,#0000 34px 54px);position:absolute;inset:0;overflow:hidden}.official-fighter-blue .official-osaekomi-name-progress{background:linear-gradient(90deg,#0000 calc(50% - 1px),#ffffffb8 calc(50% - 1px) calc(50% + 1px),#0000 calc(50% + 1px)),repeating-linear-gradient(135deg,#0000 0 20px,#ffffff1f 20px 34px,#0000 34px 54px)}.official-osaekomi-name-progress span{width:var(--osaekomi-progress,0%);background:linear-gradient(90deg,#be123cb8,#f59e0bd1 42%,#facc15c7),repeating-linear-gradient(135deg,#ffffff2e 0 10px,#0000 10px 24px);height:100%;transition:width .98s linear;display:block;box-shadow:0 0 26px #facc157a}.official-fighter-blue .official-osaekomi-name-progress span{background:linear-gradient(90deg,#fde0478f,#facc15b8,#fef3c7ad),repeating-linear-gradient(135deg,#ffffff1f 0 10px,#0000 10px 24px)}.official-osaekomi-name-progress small{z-index:3;color:#0f172ad1;text-transform:uppercase;background:#fffcf5d6;border-radius:999px;padding:4px 8px;font-size:clamp(.58rem,1vw,.76rem);line-height:1;position:absolute;bottom:clamp(6px,.8vw,10px);right:clamp(8px,1vw,14px)}.official-fighter-blue .official-osaekomi-name-progress small{color:#ffffffe6;background:#0307127a}.official-scoreboard-footer{color:#fff;background:#111827;border:2px solid #111827;grid-template-columns:minmax(180px,1fr) minmax(320px,.85fr) minmax(180px,1fr);align-items:stretch;gap:0;display:grid;overflow:hidden}.official-scoreboard-footer>div{text-align:center;border-right:1px solid #ffffff29;place-items:center;gap:2px;min-height:clamp(86px,12vh,138px);padding:10px;display:grid}.fight-scoreboard-fullscreen .official-scoreboard-footer>div{min-height:clamp(112px,15vh,160px)}.official-scoreboard-footer>div:last-child{border-right:0}.official-scoreboard-footer strong{font-size:clamp(1.2rem,2.2vw,2.6rem);line-height:1}.official-scoreboard-footer span{color:#cbd5e1;font-size:clamp(.82rem,1.4vw,1rem)}.official-clock{background:#030712}.official-clock strong{color:#a3ff70;font-variant-numeric:tabular-nums;letter-spacing:0;font-size:clamp(3rem,5.8vw,6.2rem);line-height:.9}.official-clock.paused strong{color:#f87171}.official-clock.golden strong{color:#facc15}.official-clock.osaekomi{background:radial-gradient(circle,#facc1529,#0000 62%),#030712;box-shadow:inset 0 0 0 2px #facc1552}.official-clock.osaekomi strong{color:#facc15;text-shadow:0 0 22px #facc156b}.official-clock.osaekomi span{color:#fde68a}.fight-finish-animation{z-index:8;pointer-events:none;background:radial-gradient(circle at 50% 48%,#facc156b,#0000 24%),radial-gradient(circle at 28% 22%,#ffffff75,#0000 16%),radial-gradient(circle at 74% 76%,#60a5fa47,#0000 18%),radial-gradient(circle,#0f172a0d,#05081694 64%);place-items:center;animation:5.6s forwards fight-finish-fade;display:grid;position:absolute;inset:0}.fight-finish-animation:before,.fight-finish-animation:after{content:"";background:conic-gradient(from 0deg, transparent 0 8deg, #facc15f2 9deg 11deg, transparent 12deg 25deg, #ffffffd6 26deg 28deg, transparent 29deg 43deg, #be123c7a 44deg 45deg, transparent 46deg 60deg);filter:blur(.2px);opacity:.62;border-radius:999px;width:min(72vw,900px);height:min(72vw,900px);animation:5.6s cubic-bezier(.2,.9,.3,1) forwards ippon-spark-spin;position:absolute}.fight-finish-animation:after{opacity:.42;width:min(54vw,680px);height:min(54vw,680px);animation-direction:reverse}.fight-finish-animation>div{z-index:1;color:#111827;text-align:center;background:linear-gradient(135deg,#fffcf5fa,#fff8def2),radial-gradient(circle at 50% 0,#facc1557,#0000 42%);border:1px solid #facc1594;border-radius:8px;justify-items:center;gap:8px;padding:clamp(24px,4vw,46px) clamp(32px,6vw,78px);animation:5.6s forwards ippon-card-pop;display:grid;position:relative;overflow:hidden;box-shadow:0 0 0 10px #facc1547,0 44px 120px -50px #0f172a57}.fight-finish-animation>div:before{content:"";z-index:-1;background:conic-gradient(from 90deg,#0000,#facc158c,#0000,#ffffffb3,#0000);animation:5.6s linear forwards ippon-halo-turn;position:absolute;inset:-34%}.fight-finish-animation>div:after{content:"";background:linear-gradient(110deg,#0000 0 36%,#ffffffb8 47%,#0000 58% 100%);animation:5.6s forwards ippon-light-sweep;position:absolute;inset:0;transform:translate(-120%)}.fight-finish-animation span{color:#be123c;letter-spacing:.14em;text-transform:uppercase;font-size:clamp(.82rem,1.4vw,1rem)}.fight-finish-animation strong{color:#d97706;text-shadow:0 2px #ffffffe6,0 0 28px #facc158f,0 16px 30px #7f1d1d38;font-size:clamp(4rem,13vw,13rem);line-height:.86;position:relative}.fight-finish-animation small{color:#475569;font-size:clamp(1rem,2vw,1.35rem)}@keyframes fight-finish-fade{0%{opacity:0}9%{opacity:1}86%{opacity:1}to{opacity:0}}@keyframes ippon-card-pop{0%{opacity:0;transform:scale(.72)translateY(22px)rotate(-1deg)}10%{opacity:1;transform:scale(1.06)translateY(0)rotate(0)}18%{transform:scale(1)}72%{opacity:1;transform:scale(1)}84%{opacity:1;transform:scale(1.03)}to{opacity:0;transform:scale(.96)}}@keyframes ippon-spark-spin{0%{opacity:0;transform:scale(.2)rotate(0)}16%{opacity:.76}70%{opacity:.42}to{opacity:0;transform:scale(1.2)rotate(220deg)}}@keyframes ippon-halo-turn{0%{opacity:0;transform:rotate(0)scale(.86)}16%{opacity:.72}to{opacity:0;transform:rotate(210deg)scale(1.05)}}@keyframes ippon-light-sweep{0%,18%{opacity:0;transform:translate(-120%)}34%{opacity:.68}52%,to{opacity:0;transform:translate(120%)}}.fight-control-bar{justify-content:center}.sensei-fight-control-panel{gap:14px;display:grid}.live-fight-session-card{background:linear-gradient(135deg,#f0fdfae6,#fffbebb3);border:1px solid #0f766e38;border-radius:8px;gap:8px;padding:14px;display:grid}.live-fight-session-card span{color:#0f766e;text-transform:uppercase;font-size:.8rem}.live-fight-session-card strong{color:#1f2937;font-size:1rem}.live-fight-session-card div{flex-wrap:wrap;gap:8px;display:flex}.live-fight-page{color:#1f2937;background:radial-gradient(circle at 20% 18%,#be123c2e,#0000 30%),linear-gradient(135deg,#081a3f,#130211 58%,#050814);min-height:100vh;padding:clamp(10px,2vw,24px)}.live-fight-display-page{box-sizing:border-box;place-items:center;width:100vw;height:100vh;min-height:100vh;padding:8px;display:grid;overflow:hidden}.live-fight-display-page .fight-scoreboard-fullscreen{box-sizing:border-box;border-radius:18px;align-content:stretch;width:min(1600px,100vw - 20px);height:min(900px,100vh - 20px);padding:clamp(8px,1vw,14px);position:relative;inset:auto;overflow:hidden}.live-fight-display-page .fight-scoreboard-fullscreen .official-scoreboard-card{box-sizing:border-box;width:100%;min-width:0;height:100%;overflow:hidden}.live-fight-display-page .fight-scoreboard-fullscreen .official-scoreboard-rows,.live-fight-display-page .fight-scoreboard-fullscreen .official-scoreboard-footer{box-sizing:border-box;width:100%;min-width:0}.live-fight-display-page .fight-scoreboard-fullscreen .official-fighter-row{grid-template-columns:minmax(100px,.58fr) minmax(220px,2.35fr) minmax(190px,.82fr) minmax(54px,.24fr)}.live-fight-display-page .fight-scoreboard-fullscreen .official-fighter-name strong{font-size:clamp(1.8rem,3.2vw,4rem)}.live-fight-display-page .fight-scoreboard-fullscreen .official-score-digits strong{font-size:clamp(3.2rem,5.4vw,5.9rem)}.live-fight-control-page{background:linear-gradient(135deg,#be123c0b 25%,#0000 25%) 0 0/34px 34px,linear-gradient(225deg,#0f172a09 25%,#0000 25%) 0 0/34px 34px,linear-gradient(135deg,#fffcf5fa,#f5f8f4f5),#fffaf0}.live-fight-control-shell,.live-fight-loading{width:min(1120px,100%);margin-inline:auto}.live-fight-loading{color:#fff;text-align:center;place-items:center;gap:8px;min-height:calc(100vh - 48px);display:grid}.live-fight-loading strong{font-size:clamp(1.6rem,4vw,3rem)}.live-fight-control-shell{gap:14px;display:grid}.live-fight-control-header{background:#ffffffd6;border:1px solid #94a3b83d;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.live-fight-control-header div{gap:2px;display:grid}.live-fight-control-header span{color:#0f766e;text-transform:uppercase;font-size:.82rem}.live-fight-control-header strong{font-size:clamp(1.3rem,3vw,2rem)}.live-fight-scoreboard{padding:0;position:relative}.live-fight-scoreboard .official-scoreboard-card{width:100%}.live-fight-scoreboard-compact .official-scoreboard-card{border-width:4px;padding:10px}.live-fight-scoreboard-compact .official-fighter-row{grid-template-columns:minmax(82px,.55fr) minmax(150px,2fr) minmax(110px,.8fr) minmax(46px,.3fr);min-height:92px}.live-fight-scoreboard-compact .official-scoreboard-header strong{font-size:1.8rem}.live-fight-scoreboard-compact .official-fighter-name strong{font-size:clamp(1.25rem,5vw,2.2rem)}.live-fight-scoreboard-compact .official-score-digits strong{font-size:clamp(2rem,8vw,3.6rem)}.live-fight-control-actions,.live-fight-control-grid{gap:10px;display:grid}.live-fight-control-actions{grid-template-columns:repeat(4,minmax(0,1fr))}.live-fight-control-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.live-fight-control-actions button,.live-fight-control-group button,.live-fight-control-header button{border-radius:8px;min-height:52px;font-size:1rem}.live-fight-control-group{background:#ffffffdb;border:1px solid #94a3b84d;border-radius:8px;gap:9px;padding:12px;display:grid}.live-fight-control-group strong{font-size:1.1rem}.live-fight-control-white{box-shadow:inset 4px 0 #e5e7eb}.live-fight-control-blue{box-shadow:inset 4px 0 #0b63ce}.live-fight-history{background:#fffc;border:1px solid #94a3b83d;border-radius:8px;gap:8px;padding:14px;display:grid}@media (width<=760px){.live-fight-page{padding:8px}.live-fight-control-header,.live-fight-control-actions,.live-fight-control-grid{grid-template-columns:1fr}.live-fight-control-header{display:grid}.live-fight-scoreboard-compact .official-scoreboard-card{border-width:3px}.live-fight-scoreboard-compact .official-scoreboard-footer{grid-template-columns:1fr}.live-fight-scoreboard-compact .official-fighter-row{grid-template-columns:78px minmax(0,1fr) 112px 34px}.live-fight-scoreboard-compact .official-fighter-side,.live-fight-scoreboard-compact .official-fighter-name,.live-fight-scoreboard-compact .official-penalties{padding:8px}}.fight-control-bar button{min-width:132px;min-height:48px}.fight-control-bar button:first-child{color:#fff;background:linear-gradient(135deg,#be123c,#9f1239)}.fight-score-actions{justify-content:center}.official-control-group{background:#fffcf5b8;border:1px solid #78716c33;border-radius:8px;flex:380px;justify-content:center;padding:10px}.official-control-group span{color:#334155;min-width:54px}.official-control-group button{flex:94px;min-height:42px}.osaekomi-control{background:linear-gradient(135deg,#fffbebf0,#fffcf5d1),radial-gradient(circle at 10%,#facc1533,#0000 34%);border:1px solid #facc1561;border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:14px;padding:12px;display:grid;box-shadow:0 18px 50px -34px #78716c24}.osaekomi-control div{gap:3px;display:grid}.osaekomi-control span{color:#be123c;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}.osaekomi-control strong{color:#172033;font-size:clamp(1rem,2vw,1.28rem)}.osaekomi-control small{color:#64748b}.osaekomi-control button{color:#fff;background:linear-gradient(135deg,#f97316,#be123c);min-width:150px;min-height:50px}.official-control-blue{border-color:#2563eb47;box-shadow:inset 4px 0 #2563eb85}.official-control-white{border-color:#94a3b852;box-shadow:inset 4px 0 #94a3b87a}.fight-athlete-empty{color:#64748b;border:1px dashed #64748b80;border-radius:8px;place-items:center;min-height:140px;display:grid}.fight-event{background:#fffcf5b3;border:1px solid #78716c2e;border-radius:8px;grid-template-columns:minmax(80px,.4fr) 1fr auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.fight-event-white{border-left:4px solid #94a3b8}.fight-event-blue{border-left:4px solid #2563eb}.fight-event-system{border-left:4px solid #be123c}@media (width<=980px){.fight-setup-grid,.fight-queue-builder-header,.fight-queue-selectors{grid-template-columns:1fr}.fight-queue-toolbar{grid-template-columns:1fr 1fr}.fight-queue-toolbar label,.fight-queue-actions{grid-column:1/-1}.fight-queue-actions{justify-content:stretch}.fight-queue-actions button{flex:160px}.fight-queue-item{grid-template-columns:minmax(64px,.18fr) 1fr}.fight-queue-item-actions{grid-column:1/-1;justify-content:stretch}.fight-queue-item-actions button{flex:120px}.fight-scoreboard{padding:14px}.official-fighter-row{grid-template-columns:minmax(76px,.6fr) minmax(150px,1.5fr) minmax(116px,.85fr) minmax(48px,.34fr)}.official-scoreboard-footer{grid-template-columns:1fr}.official-scoreboard-footer>div{border-bottom:1px solid #ffffff29;border-right:0;min-height:66px}.official-scoreboard-footer>div:last-child{border-bottom:0}.fight-scoreboard-fullscreen .official-scoreboard-card{width:calc(100vw - 28px);height:calc(100vh - 28px)}.fight-scoreboard-fullscreen .official-fighter-row{grid-template-columns:minmax(72px,.54fr) minmax(150px,1.7fr) minmax(128px,.86fr) minmax(44px,.3fr)}.fight-scoreboard-fullscreen .official-scoreboard-footer{grid-template-columns:minmax(96px,1fr) minmax(170px,1fr) minmax(96px,1fr)}.fight-scoreboard-fullscreen .official-scoreboard-footer>div{border-bottom:0;border-right:1px solid #ffffff29;min-height:78px}.fight-scoreboard-fullscreen .official-scoreboard-footer>div:last-child{border-right:0}.live-fight-display-page .fight-scoreboard-fullscreen .official-scoreboard-card{box-sizing:border-box;width:100%;height:100%}.live-fight-display-page .fight-scoreboard-fullscreen .official-fighter-row{grid-template-columns:minmax(78px,.5fr) minmax(150px,1.55fr) minmax(126px,.72fr) minmax(38px,.22fr)}}@media (width<=640px){.fight-page{gap:12px}.fight-page .panel{overflow:hidden}.fight-mode-choice{grid-template-columns:1fr;gap:8px}.fight-picker,.fight-quick-panel,.fight-queue-builder,.fight-scoreboard{border-radius:8px}.fight-setup-grid{gap:10px}.fight-picker,.fight-quick-panel{align-content:start;gap:10px;min-height:0;padding:12px}.fight-picker .section-title h2{font-size:1.05rem}.fight-picker .section-title span,.fight-page .form-hint{font-size:.9rem;line-height:1.25}.fight-picker input,.fight-quick-panel input{min-height:46px;font-size:1rem}.fight-student-options{overscroll-behavior:contain;max-height:330px;padding-right:2px;overflow-y:auto}.fight-student-options button,.fight-recent-list button{min-height:62px;padding:8px}.fight-student-options img{width:38px;height:38px}.fight-student-options span{min-width:0}.fight-student-options strong{text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;line-height:1.15;overflow:hidden}.fight-student-options small{font-size:.76rem;line-height:1.15}.fight-quick-actions{gap:8px}.fight-quick-actions button{min-height:48px;padding:10px 12px;font-size:.95rem}.fight-quick-actions button:last-child{min-height:54px}.live-fight-active-panel{gap:8px;margin-bottom:12px;padding:12px}.live-fight-active-header,.live-fight-active-card{align-items:stretch}.live-fight-active-header button,.live-fight-active-card button{min-height:42px;padding:9px 10px;font-size:.9rem}.live-fight-active-card>div:last-child{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.live-fight-active-card strong,.live-fight-session-card strong{font-size:.98rem;line-height:1.2}.live-fight-active-card small,.live-fight-session-card span{overflow-wrap:anywhere}.live-fight-session-card{gap:12px;padding:12px}.live-fight-session-card div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.live-fight-session-card button{min-height:48px;padding:10px;font-size:.9rem}.official-scoreboard-card{border-width:4px;padding:10px}.fight-scoreboard-mode-button{min-height:38px;font-size:.82rem;top:10px;right:10px}.official-score-legend{width:100%}.official-fighter-row{grid-template-columns:1fr;min-height:auto}.official-fighter-name,.official-score-digits{border-top:1px solid #1118272e;border-left:0}.official-fighter-blue .official-fighter-name,.official-fighter-blue .official-score-digits{border-top-color:#ffffff38}.official-fighter-name strong{white-space:normal}.official-score-digits strong{min-height:72px}.fight-scoreboard-fullscreen .official-scoreboard-card{gap:7px;width:calc(100vw - 18px);height:calc(100vh - 18px)}.fight-scoreboard-fullscreen .official-fighter-row{grid-template-columns:minmax(54px,.44fr) minmax(110px,1.2fr) minmax(106px,.92fr) minmax(34px,.26fr);min-height:0}.fight-scoreboard-fullscreen .official-fighter-name,.fight-scoreboard-fullscreen .official-score-digits{border-top:0}.fight-scoreboard-fullscreen .official-fighter-name{border-left:1px solid #11182738}.fight-scoreboard-fullscreen .official-fighter-blue .official-fighter-name{border-left-color:#ffffff38}.fight-scoreboard-fullscreen .official-score-digits{border-left:1px solid #1118273d}.fight-scoreboard-fullscreen .official-fighter-blue .official-score-digits{border-left-color:#ffffff3d}.fight-scoreboard-fullscreen .official-fighter-name strong{white-space:nowrap;font-size:clamp(1rem,5.6vw,2rem)}.fight-scoreboard-fullscreen .official-score-digits strong{min-height:0;font-size:clamp(2rem,9vw,4rem)}.fight-scoreboard-fullscreen .official-clock strong{font-size:clamp(2.7rem,12vw,5.4rem)}.fight-scoreboard-fullscreen .official-scoreboard-footer>div{min-height:72px;padding:6px}.live-fight-display-page .fight-scoreboard-fullscreen .official-scoreboard-card{box-sizing:border-box;width:100%;height:100%}.live-fight-display-page .fight-scoreboard-fullscreen .official-fighter-row{grid-template-columns:minmax(48px,.38fr) minmax(96px,1fr) minmax(88px,.78fr) minmax(28px,.2fr)}.fight-control-bar button,.official-control-group button{flex:100%;min-width:0}.fight-event{grid-template-columns:1fr;gap:3px}.fight-queue-toolbar,.fight-queue-item{grid-template-columns:1fr}.fight-queue-toolbar label,.fight-queue-actions,.fight-queue-item-actions{grid-column:auto}.fight-queue-athletes strong{white-space:normal}}.academy-gallery-page :where(label,button,strong,b,h2,h3,.panel-title){font-weight:500}.gallery-hero{isolation:isolate;background:#fffcf5e6;border:1px solid #78716c38;border-radius:8px;grid-template-columns:minmax(360px,.88fr) minmax(430px,1.08fr) auto;align-items:center;gap:24px;min-height:420px;padding:30px;display:grid;position:relative;overflow:hidden;box-shadow:0 30px 90px -55px #47556929}.gallery-hero:before{content:"";z-index:-1;background:linear-gradient(90deg,#fffcf5d1 0%,#fffcf5b8 34%,#fffcf561 66%,#fffcf5a8 100%),radial-gradient(circle at 18% 20%,#be123c17,#0000 27%),radial-gradient(circle at 82% 72%,#0f766e1f,#0000 40%);position:absolute;inset:0}.gallery-hero:after{content:"";z-index:-2;filter:blur(.35px)saturate(.98);opacity:.5;background:url(/brand/gallery-hero-uchi-mata-gym.png) 0 54%/cover no-repeat;animation:26s ease-in-out infinite alternate gallerySoftBackdrop;position:absolute;inset:0;transform:scale(1.015)}.gallery-hero-media{background:#ffffffa3;border:1px solid #78716c33;border-radius:8px;height:310px;overflow:hidden;box-shadow:0 24px 70px -46px #1e293b2e}.gallery-hero-media img,.gallery-album-card img,.gallery-media-card img{object-fit:cover;width:100%;height:100%;display:block}.gallery-hero-copy{max-width:640px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;grid-column:1;gap:14px;padding:12px 18px 12px 4px;display:grid}.gallery-hero-copy>span,.gallery-album-card span,.gallery-album-header span,.gallery-media-card span{color:#be123c;letter-spacing:.06em;text-transform:uppercase;font-size:.78rem;font-weight:500}.gallery-hero-copy h2{color:#1f2937;max-width:620px;margin:0;font-size:clamp(2.05rem,3.15vw,3.35rem);font-weight:520;line-height:1.04}.gallery-hero-copy p{color:#52637a;max-width:680px;margin:0;font-size:1rem}.gallery-hero-search{gap:8px;max-width:620px;margin-top:8px;display:grid}.gallery-hero-search span{color:#52637a;font-size:.9rem;font-weight:460}.gallery-hero-search input{color:#243b53;background:linear-gradient(#fffffff2,#fffcf5d1);border:1px solid #78716c3d;border-radius:999px;min-height:58px;padding:0 22px;font-size:1rem;font-weight:420;box-shadow:0 20px 50px -34px #4755691f}.gallery-hero-actions,.gallery-media-actions,.gallery-toggle-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.gallery-hero-actions button{border-radius:999px;min-height:46px;padding-inline:18px}.gallery-hero-mosaic{min-height:330px;box-shadow:none;background:0 0;border-radius:8px;grid-column:2;align-self:stretch;position:relative;overflow:visible}.gallery-hero-mosaic:before,.gallery-hero-mosaic:after{content:"";-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);pointer-events:none;background:#fffcf51a;border:1px solid #ffffff57;border-radius:8px;position:absolute;inset:7% 8%}.gallery-hero-mosaic:after{background:#fffcf538;width:34%;height:28%;inset:auto 14% 8% auto}.gallery-hero-mosaic button{cursor:pointer;background:#fff3;border:5px solid #ffffffbd;border-radius:8px;width:48%;height:44%;padding:0;transition:box-shadow .18s,filter .18s;animation:18s ease-in-out infinite alternate galleryPhotoDrift;position:absolute;overflow:hidden;box-shadow:0 24px 70px -34px #0f172a3d}.gallery-hero-mosaic button:hover,.gallery-hero-mosaic button:focus-visible{filter:saturate(1.08);box-shadow:0 28px 82px -34px #0f172a4d}.gallery-hero-mosaic button:focus-visible{outline-offset:4px;outline:3px solid #be123c52}.gallery-hero-mosaic button.active{animation:.56s both galleryPhotoClick}.gallery-hero-mosaic button img{object-fit:cover;width:100%;height:100%;display:block}.gallery-hero-mosaic button:first-child{z-index:3;width:58%;height:52%;top:9%;left:6%}.gallery-hero-mosaic button:first-child img{object-position:center 58%}.gallery-hero-mosaic button:nth-child(2){z-index:4;width:46%;height:48%;animation-delay:-5s;top:15%;right:5%}.gallery-hero-mosaic button:nth-child(2) img{object-position:center}.gallery-hero-mosaic button:nth-child(3){z-index:2;width:42%;height:36%;animation-delay:-9s;bottom:5%;left:22%}.gallery-hero-mosaic button:nth-child(4){z-index:1;opacity:.88;width:38%;height:34%;animation-delay:-13s;bottom:2%;right:10%}.gallery-hero-mosaic button:nth-child(5){z-index:1;opacity:.8;width:30%;height:32%;animation-delay:-16s;bottom:17%;left:3%}.gallery-hero-mosaic button:nth-child(6){z-index:0;opacity:.72;width:28%;height:30%;animation-delay:-18s;bottom:22%;right:1%}.gallery-hero-stats{grid-column:3;gap:10px;min-width:154px;display:grid}.gallery-hero-stats span{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#52637a;background:#ffffffc2;border:1px solid #78716c33;border-radius:8px;gap:2px;padding:14px;display:grid}.gallery-hero-stats strong{color:#21364d;font-size:1.45rem;font-weight:520}.gallery-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.gallery-admin-card{background:#ffffffad;border:1px solid #78716c2e;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px;display:grid}.gallery-admin-card h2,.gallery-admin-card button,.gallery-admin-card .gallery-toggle-row{grid-column:1/-1}.gallery-admin-card label:has(textarea){grid-column:1/-1}.gallery-admin-card h2{margin:0;font-size:1.22rem;font-weight:500}.gallery-admin-card label{font-weight:470}.gallery-admin-card label.span-2{grid-column:1/-1}.gallery-album-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:16px;display:grid}.gallery-album-card{gap:10px;display:grid}.gallery-album-card>button:first-child{text-align:left;background:#ffffffb8;border:1px solid #78716c33;border-radius:8px;gap:10px;padding:10px;transition:transform .18s,border-color .18s,box-shadow .18s;display:grid}.gallery-album-card.active>button:first-child,.gallery-album-card>button:first-child:hover{border-color:#be123c5c;transform:translateY(-2px);box-shadow:0 24px 58px -38px #be123c24}.gallery-album-card img{border-radius:6px;height:190px}.gallery-album-card h2,.gallery-media-card h3,.gallery-album-header h2{color:#202938;margin:0;font-weight:500}.gallery-album-card p,.gallery-album-card small,.gallery-album-card em,.gallery-media-card p{color:#58687e;margin:0}.gallery-album-card em{font-style:normal}.gallery-album-detail{gap:18px;display:grid}.gallery-album-header{border-bottom:1px solid #78716c2e;justify-content:space-between;align-items:end;gap:16px;padding-bottom:16px;display:flex}.gallery-album-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.gallery-album-header p{color:#52637a;max-width:760px;margin:8px 0 0}.gallery-album-header strong{white-space:nowrap;color:#0f766e;background:#f0fdfab8;border:1px solid #0d948838;border-radius:999px;padding:10px 14px;font-weight:540}.gallery-media-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;display:grid}.gallery-media-card{background:#ffffffbd;border:1px solid #78716c33;border-radius:8px;overflow:hidden}.gallery-media-card>button,.gallery-media-card video{background:#111827;border:0;width:100%;height:220px}.gallery-media-card>button{cursor:zoom-in;padding:0;display:block}.gallery-media-card video{object-fit:cover;display:block}.gallery-media-card>div{gap:8px;padding:12px;display:grid}.gallery-media-actions a,.gallery-media-actions button{color:#243b53;background:#ffffffc2;border:1px solid #78716c33;border-radius:8px;min-height:38px;padding:9px 12px;text-decoration:none}.gallery-lightbox{z-index:70;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0b1220db;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:24px;display:grid;position:fixed;inset:0}.gallery-lightbox figure{justify-items:center;gap:14px;margin:0;display:grid}.gallery-lightbox img,.gallery-lightbox video{object-fit:contain;border-radius:8px;max-width:min(100%,1200px);max-height:76vh;box-shadow:0 28px 80px -30px #0000006b}.gallery-lightbox figcaption{color:#f8fafc;text-align:center;background:#ffffff1a;border:1px solid #ffffff24;border-radius:8px;gap:4px;max-width:760px;padding:12px 16px;display:grid}.gallery-lightbox figcaption span,.gallery-lightbox figcaption small{color:#cbd5e1}.gallery-lightbox-close,.gallery-lightbox-nav{color:#fff;background:#ffffff1f;border:1px solid #ffffff2e;border-radius:999px;padding:12px 16px}.gallery-lightbox-close{position:static}.gallery-lightbox-tools{z-index:2;align-items:center;gap:10px;display:flex;position:absolute;top:18px;right:18px}@keyframes galleryPhotoDrift{0%{transform:translate(-6px,4px)scale(1.01)}50%{transform:translate(8px,-8px)scale(1.035)}to{transform:translate(14px,5px)scale(1.055)}}@keyframes galleryPhotoClick{0%{transform:translate(0,0)scale(1)}42%{transform:translate(10px,-8px)scale(1.035)rotate(.35deg)}to{transform:translate(2px,-2px)scale(1.012)}}@keyframes gallerySoftBackdrop{0%{transform:scale(1.04)translate(-1%)}to{transform:scale(1.1)translate(1.5%,-1%)}}.app-shell.accessibility-reduce-motion *,.app-shell.accessibility-reduce-motion :before,.app-shell.accessibility-reduce-motion :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.app-shell.accessibility-keyboard :focus-visible,.app-shell :focus-visible{outline-offset:3px;outline:3px solid #b4232e}.topbar{background:linear-gradient(135deg,#9f12392e,#0000 38%),linear-gradient(225deg,#0f766e29,#0000 42%),#0e1015eb;border:1px solid #e2e8f01c;border-radius:8px;grid-template-columns:82px minmax(0,1fr) auto;align-items:center;gap:22px;padding:16px;display:grid;box-shadow:0 22px 70px -38px #00000052}.topbar h1{margin:0;line-height:1}.topbar h1+span{color:#cbd5e1;margin-top:8px;font-weight:700;display:inline-block}.brand-mark{color:#fff;border:1px solid #ffffff2e;border-radius:8px;place-items:center;width:68px;height:68px;font-size:1.8rem;font-weight:900;display:grid;box-shadow:0 16px 34px -18px #9f12395c}.brand-logo{object-fit:contain;background:#ffffff14;border:1px solid #ffffff2e;border-radius:8px;width:68px;height:68px;padding:6px}.lotus-mark{position:relative;overflow:hidden}.lotus-mark span,.lotus-mark:before,.lotus-mark:after{content:"";transform-origin:50% 100%;border:2px solid #ffffffe6;border-radius:18px 18px 4px 4px;width:18px;height:30px;position:absolute}.lotus-mark span{background:#ffffff1a;bottom:14px;left:50%;transform:translate(-50%)}.lotus-mark:before{bottom:13px;left:16px;transform:rotate(-38deg)}.lotus-mark:after{bottom:13px;right:16px;transform:rotate(38deg)}.eyebrow{color:#f9a8d4;text-transform:uppercase;margin:0 0 4px;font-size:.78rem;font-weight:800}.status-pill,.profile-box{color:#cbd5e1;background:#ffffff0e;border:1px solid #e2e8f01f;border-radius:8px;padding:10px 12px;font-size:.92rem}.profile-box{gap:4px;min-width:220px;display:grid}.profile-box strong{color:#f8fafc}.profile-box button{margin-top:6px}.profile-box .profile-secondary-action{color:var(--color-secondary,#29435c);background:#fffcf5b3}.tabs{background:#0a0c10b8;border:1px solid #e2e8f01a;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;padding:8px;display:grid}.tabs button,.segmented button,button{color:#e2e8f0;cursor:pointer;font:inherit;background:#ffffff0e;border:1px solid #e2e8f01f;border-radius:8px;min-height:42px;padding:10px 12px;font-weight:800;transition:background .16s,border-color .16s,color .16s,transform .16s}.tabs button.active,.segmented button.active,button:hover{color:#111318;background:#f8fafc;border-color:#f8fafc;transform:translateY(-1px)}.stats-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;display:grid}.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.portal-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.student-experience{background:linear-gradient(135deg, color-mix(in srgb, var(--belt-primary) 30%, transparent), transparent 44%), linear-gradient(225deg, color-mix(in srgb, var(--belt-secondary) 22%, transparent), transparent 48%), #111318;border:1px solid #e2e8f024;border-radius:8px;grid-template-columns:170px minmax(0,1fr);align-items:center;gap:18px;padding:18px;display:grid}.experience-copy{gap:10px;display:grid}.experience-copy>span{color:var(--belt-secondary);text-transform:uppercase;font-weight:900}.experience-copy h2,.experience-copy p{margin:0}.achievement-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.achievement-badge{border:1px solid color-mix(in srgb, var(--belt-secondary) 35%, #e2e8f01f);background:#ffffff0e;border-radius:8px;gap:4px;padding:10px;display:grid}.achievement-badge strong{color:#f8fafc}.achievement-badge span{color:#cbd5e1}.access-experience{grid-template-columns:170px minmax(0,1fr)}.user-avatar{border:1px solid color-mix(in srgb, var(--belt-secondary) 45%, #e2e8f024);background:radial-gradient(circle at 35% 28%, color-mix(in srgb, var(--belt-secondary) 36%, transparent), transparent 38%), linear-gradient(145deg, color-mix(in srgb, var(--belt-primary) 78%, #111318), #111318);border-radius:999px;align-content:center;justify-items:center;gap:8px;width:138px;height:138px;display:grid;box-shadow:0 18px 38px -22px #00000047}.user-avatar strong{color:#f8fafc;font-size:2.45rem;line-height:1}.user-avatar span{color:#cbd5e1;text-align:center;text-transform:uppercase;max-width:108px;font-size:.74rem;font-weight:800}.student-avatar{color:#f8fafc;justify-items:center;gap:8px;font-weight:900;display:grid}.student-avatar.compact{transform-origin:top;margin-bottom:-18px;transform:scale(.84)}.avatar-figure{width:148px;height:246px;position:relative;overflow:hidden}.avatar-aura{background:color-mix(in srgb, var(--avatar-belt-color) 24%, transparent);filter:blur(8px);opacity:.72;border-radius:999px;width:86px;height:18px;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.avatar-figure img{z-index:1;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 18px #00000047);transform-origin:50% 92%;width:100%;height:100%;animation:6.4s ease-in-out infinite avatarBreath;position:relative}.avatar-motion-ready .avatar-figure img{animation:5.4s ease-in-out infinite avatarBreath,3.4s ease-in-out infinite avatarReady}.avatar-motion-celebrate .avatar-figure img{animation:5.4s ease-in-out infinite avatarBreath,1.7s ease-in-out infinite avatarCelebrate}.avatar-motion-sparkles{z-index:2;pointer-events:none;position:absolute;inset:0}.avatar-motion-sparkles i{background:var(--avatar-belt-color);width:9px;height:9px;box-shadow:0 0 14px color-mix(in srgb, var(--avatar-belt-color) 48%, transparent);opacity:0;border-radius:50%;animation:2.6s ease-in-out infinite avatarSparkle;position:absolute}.avatar-motion-sparkles i:first-child{top:26%;left:18%}.avatar-motion-sparkles i:nth-child(2){animation-delay:.55s;top:15%;right:16%}.avatar-motion-sparkles i:nth-child(3){animation-delay:1.05s;top:46%;right:10%}.student-belt-label{color:var(--avatar-belt-color);text-shadow:0 1px 2px #1118276b, 0 0 1px var(--avatar-belt-border);font-weight:900}.reward-toast{z-index:80;border:1px solid color-mix(in srgb, var(--belt-primary) 24%, #b6862c42);background:radial-gradient(circle at 14% 20%, color-mix(in srgb, var(--belt-secondary) 15%, transparent), transparent 48%), linear-gradient(135deg, #fffcf5fa, #fff7e8f5);color:#223044;border-radius:18px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;width:min(390px,100vw - 32px);padding:14px 16px;animation:.42s both rewardToastIn,2.2s ease-in-out .42s infinite rewardToastGlow;display:grid;position:fixed;top:22px;right:22px;box-shadow:0 22px 54px #422f2029,inset 0 1px #ffffffb8}.reward-orb{border:1px solid color-mix(in srgb, var(--belt-primary) 34%, #b6862c47);background:radial-gradient(circle at 34% 28%, #ffffffd1, transparent 35%), linear-gradient(145deg, color-mix(in srgb, var(--belt-primary) 72%, #c9912f), color-mix(in srgb, var(--belt-secondary) 58%, #fff6df));width:58px;height:58px;box-shadow:0 12px 30px color-mix(in srgb, var(--belt-primary) 18%, transparent);border-radius:50%;place-items:center;display:grid}.reward-orb span{color:#fffaf1;letter-spacing:.02em;text-shadow:0 1px 2px #48331947;font-size:.86rem;font-weight:900}.reward-toast-copy{gap:3px;min-width:0;display:grid}.reward-toast-copy small{color:var(--belt-primary);text-transform:uppercase;font-size:.76rem;font-weight:800}.reward-toast-copy strong{color:#1f2937;font-size:1.02rem;font-weight:800}.reward-toast-copy>span{color:#5b6879;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.reward-toast-meta{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.reward-toast-meta b,.reward-toast-meta em{color:#b9232d;background:#b9232d1a;border-radius:999px;width:fit-content;padding:5px 9px;font-size:.78rem;font-style:normal;font-weight:800}.reward-toast-meta em{color:#7c5d1e;background:#b6862c24}.trail-celebration-overlay{z-index:120;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:radial-gradient(circle at 18% 18%,#b4232e29,#0000 28%),radial-gradient(circle at 78% 24%,#b58a422e,#0000 30%),#201a1457;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.trail-celebration-card{z-index:2;text-align:center;background:radial-gradient(circle at 50% 0,#ffeec36b,#0000 36%),linear-gradient(#fffcf5fa,#fff7e8f7);border:1px solid #b58a4252;border-radius:18px;justify-items:center;gap:12px;width:min(460px,100%);padding:30px;animation:.52s cubic-bezier(.2,.9,.28,1.22) both celebrationCardIn;display:grid;position:relative;box-shadow:0 28px 70px -28px #251b1238}.trail-celebration-card small{color:#b9232d;text-transform:uppercase;font-size:.82rem;font-weight:780}.trail-celebration-card h2{color:#1f2937;margin:0;font-size:clamp(1.65rem,4vw,2.35rem);font-weight:720}.trail-celebration-card p{color:#53657a;max-width:34ch}.trail-celebration-card strong{color:#0f766e;background:#0f766e14;border:1px solid #0f766e3d;border-radius:999px;padding:8px 12px}.trail-celebration-card button{width:min(260px,100%)}.trail-celebration-medal{width:118px;height:154px;animation:.96s both medalPop}.celebration-effects{pointer-events:none;position:absolute;inset:0;overflow:hidden}.celebration-effects span{--fall-x:calc((var(--confetti-index) * 47px) % 100vw);top:-22px;left:var(--fall-x);background:hsl(calc(var(--confetti-index) * 34), 62%, 58%);width:10px;height:18px;animation:confettiFall 2.7s ease-in calc(var(--confetti-index) * 70ms) infinite;border-radius:3px;position:absolute}.celebration-effects i{opacity:0;border:2px solid #b58a426b;border-radius:999px;width:150px;height:150px;animation:1.8s ease-out infinite fireworkPulse;position:absolute}.celebration-effects i:first-of-type{top:18%;left:18%}.celebration-effects i:last-of-type{border-color:#b4232e57;animation-delay:.52s;bottom:18%;right:16%}@keyframes rewardToastIn{0%{opacity:0;transform:translateY(-14px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes rewardToastGlow{0%,to{box-shadow:0 22px 54px #422f2029,inset 0 1px #ffffffb8}50%{box-shadow:0 24px 58px color-mix(in srgb, var(--belt-primary) 14%, #422f2029), inset 0 1px 0 #ffffffb8}}@keyframes celebrationCardIn{0%{opacity:0;transform:translateY(20px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes medalPop{0%{transform:scale(.72)rotate(-8deg)}58%{transform:scale(1.12)rotate(3deg)}to{transform:scale(1)rotate(0)}}@keyframes confettiFall{0%{opacity:0;transform:translateY(-20px)rotate(0)}12%{opacity:1}to{opacity:0;transform:translate(28px,105vh)rotate(420deg)}}@keyframes fireworkPulse{0%{opacity:.72;transform:scale(.16)}to{opacity:0;transform:scale(1.25)}}@keyframes avatarBreath{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-1.5px)scale(1.006)}}@keyframes avatarReady{0%,to{filter:drop-shadow(0 18px 18px #00000047)}50%{filter:drop-shadow(0 20px 18px #0000003d) drop-shadow(0 0 12px color-mix(in srgb, var(--avatar-belt-color) 20%, transparent))}}@keyframes avatarCelebrate{0%,to{transform:translateY(0)rotate(0)scale(1)}35%{transform:translateY(-7px)rotate(-1.2deg)scale(1.018)}70%{transform:translateY(-2px)rotate(1.1deg)scale(1.01)}}@keyframes avatarSparkle{0%,to{opacity:0;transform:translateY(10px)scale(.5)}45%{opacity:.72;transform:translateY(-4px)scale(1)}}.content-grid{gap:18px;display:grid}.student-grid,.library-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.panel,.stat-card,.student-card,.record-card,.empty-state,.login-panel{background:linear-gradient(#ffffff13,#ffffff09),#111318;border:1px solid #e2e8f01c;border-radius:8px;box-shadow:0 22px 70px -42px #00000052}.panel{gap:14px;padding:16px;display:grid}.stat-card{gap:4px;min-height:88px;padding:14px;display:grid;position:relative;overflow:hidden}.stat-card:before{content:"";background:linear-gradient(90deg,#be123c,#0f766e,#d97706);height:3px;position:absolute;inset:0 0 auto}.stat-card strong{color:#fda4af;font-size:1.75rem}.student-card,.record-card{gap:10px;padding:14px;display:grid}.library-section{gap:12px;display:grid}.library-switch{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.library-switch button{text-align:left;background:#ffffff0b;border-color:#e2e8f024;justify-items:start;gap:4px;min-height:72px;display:grid}.library-switch button.active{background:#0f766e2e;border-color:#5eead49e}.library-switch strong{color:#f8fafc}.library-switch span{color:#cbd5e1;font-size:.9rem}.section-title{border-top:1px solid #e2e8f01a;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;display:flex}.section-title h2{margin:0;font-size:1.05rem}.section-title span{color:#cbd5e1;font-size:.9rem}.audio-card{border-left:3px solid #5eead4b8}.audio-grid .student-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.dojo-library-page{gap:18px;display:grid}.dojo-library-hero{background:linear-gradient(90deg,#fffcf5f7 0%,#fffcf5e6 42%,#fffcf58f 100%),linear-gradient(#fffcf529,#3f32222e),url(/brand/library-dojo-hero.png) 50%/cover no-repeat;border:1px solid #5c48302e;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;min-height:260px;padding:28px;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 80px -48px #3f32221f}.dojo-library-hero:before,.dojo-library-hero:after{content:"";pointer-events:none;position:absolute}.dojo-library-hero:before{background:linear-gradient(90deg,#29435c0f 1px,#0000 1px) 0 0/44px 44px,linear-gradient(0deg,#29435c0a 1px,#0000 1px) 0 0/44px 44px;inset:0}.dojo-library-hero:after{background:linear-gradient(90deg,#0000,#b4232e1f),radial-gradient(circle at 70% 18%,#fffcf575,#0000 28%);width:34%;min-width:320px;top:0;bottom:0;right:0}.dojo-moon{display:none}.dojo-library-copy,.dojo-library-stats{z-index:1;position:relative}.dojo-library-copy{gap:10px;max-width:720px;display:grid}.dojo-library-copy>span,.dojo-room-card>span,.dojo-study-content>span,.dojo-trail-card>span{color:#b4232e;text-transform:uppercase;font-size:.78rem;font-weight:900}.dojo-library-copy h2{color:var(--text-h);margin:0;font-size:clamp(2rem,4vw,3.4rem);line-height:1}.dojo-library-copy p{max-width:620px;color:var(--muted);font-size:1.05rem}.dojo-library-stats{grid-template-columns:repeat(3,minmax(96px,1fr));gap:10px;display:grid}.dojo-library-stats span{background:#ffffff94;border:1px solid #5c483029;border-radius:8px;gap:4px;padding:12px;display:grid}.dojo-library-stats strong{color:#29435c;font-size:1.55rem}.dojo-library-search{background:linear-gradient(135deg,#b58a421f,#0000 46%),#fffcf5c2}.dojo-room-grid{grid-template-columns:repeat(auto-fit,minmax(178px,1fr));gap:12px;display:grid}.dojo-room-card{min-height:152px;color:var(--text);text-align:left;background:linear-gradient(135deg,#29435c14,#0000 50%),#fffcf5d1;border:1px solid #5c48302e;border-left:4px solid #29435c4d;border-radius:8px;justify-items:start;gap:7px;padding:14px;display:grid}.dojo-room-card.active,.dojo-room-card:hover{color:var(--text);background:linear-gradient(135deg,#b4232e21,#0000 48%),#fffcf5f2;border-color:#b4232e61 #b4232e61 #b4232e61 #b4232e}.dojo-room-card strong{color:var(--text-h);font-size:1.1rem}.dojo-room-card small{color:var(--muted);font-size:.9rem;line-height:1.35}.dojo-room-card em{color:#29435c;align-self:end;font-style:normal;font-weight:900}.dojo-material-card{background:linear-gradient(135deg,#b58a4214,#0000 52%),#fffcf5db;border-left:4px solid #b58a4275}.dojo-material-card.studied{background:linear-gradient(135deg,#0f766e1a,#0000 52%),#fffcf5eb;border-left-color:#0f766e9e}.dojo-material-card>span:first-child{color:#29435c;font-size:.88rem;font-weight:800}.study-status{color:#0f766e;background:#0f766e1a;border:1px solid #0f766e42;border-radius:999px;justify-self:start;padding:5px 10px;font-size:.86rem;font-weight:900}.immersive-library-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;display:grid}.immersive-library-card{background:linear-gradient(#fffcf5eb,#fffcf5fa);border:1px solid #5c48302e;border-radius:8px;gap:14px;min-height:420px;display:grid;position:relative;overflow:hidden;box-shadow:0 20px 70px -46px #3f32221f}.immersive-library-card img{object-fit:cover;filter:saturate(.92)contrast(1.03);width:100%;height:190px}.immersive-library-card>div{gap:8px;padding:0 16px;display:grid}.immersive-library-card span,.immersive-library-card small{color:var(--muted);font-weight:800}.immersive-library-card h2{color:var(--text-h);margin:0;font-size:1.65rem}.immersive-library-card p{color:var(--muted)}.immersive-library-card button{align-self:end;margin:0 16px 16px}.immersive-library-card.completed{border-left:4px solid #0f766e9e}.immersive-library-card .study-status{margin-left:16px}.immersive-overlay{z-index:50;background:radial-gradient(circle at 18% 20%,#b4232e2e,#0000 28%),linear-gradient(135deg,#1d222af0,#12181ffa);padding:18px;display:grid;position:fixed;inset:0}.immersive-shell{background:#101820;border:1px solid #fffcf52e;border-radius:12px;grid-template-rows:auto minmax(0,1fr);min-height:0;display:grid;overflow:hidden;box-shadow:0 30px 90px -24px #00000075}.immersive-topbar{color:#fffaf1;background:#101820d1;border-bottom:1px solid #fffcf51f;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;display:flex}.immersive-topbar div{gap:3px;display:grid}.immersive-topbar-actions{align-items:center;gap:8px;display:flex}.immersive-topbar span{color:#f5b7c8;text-transform:uppercase;font-size:.75rem;font-weight:900}.immersive-topbar button{color:#fffaf1;background:#fffcf514;border-color:#fffcf547;width:auto;min-height:40px}.immersive-topbar .immersive-sound-button{border-color:#b58a4261}.immersive-topbar .immersive-sound-button.active{color:#fffaf1;background:radial-gradient(circle at 18% 18%,#f5b7c838,#0000 52%),#b58a422e;border-color:#f5b7c88a;box-shadow:0 14px 32px -22px #b58a4229}.immersive-chapter{color:#fffaf1;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);min-height:0;animation:.36s both immersiveFade;display:grid;position:relative;overflow:hidden}.immersive-progress{z-index:3;background:#fffcf51f;height:4px;position:absolute;top:0;left:0;right:0}.immersive-progress span{background:linear-gradient(90deg,#f5b7c8,#d9b66f,#8dd3c7);height:100%;transition:width .28s;display:block}.immersive-visual{background:#111827;position:relative;overflow:hidden}.immersive-visual img{width:calc(100% * var(--learning-image-scale,1));height:calc(100% * var(--learning-image-scale,1));object-fit:cover;opacity:.58;min-height:100%;animation:12s ease-in-out infinite alternate immersiveDrift;transform:scale(1.08)}.immersive-visual:after{content:"";background:linear-gradient(90deg,#0000,#101820c2),radial-gradient(circle at 35% 34%,#fffcf526,#0000 26%);position:absolute;inset:0}.immersive-visual>span{z-index:2;aspect-ratio:1;border:20px solid #fffcf529;border-right-color:#b4232e80;border-radius:999px;width:min(34vw,360px);animation:5.8s ease-in-out infinite immersiveFloat;position:absolute;top:18%;left:12%;transform:rotate(-18deg)}.immersive-copy{background:linear-gradient(135deg,#fffcf50e,#0000 42%),#101820;align-content:center;gap:16px;max-width:680px;padding:clamp(28px,5vw,70px);display:grid}.immersive-copy>span{color:#f5b7c8;text-transform:uppercase;font-size:.84rem;font-weight:900}.immersive-copy h2{color:#fffaf1;margin:0;font-size:clamp(2.4rem,5vw,5.4rem);line-height:.95}.immersive-copy p{color:#dbe7ea;font-size:clamp(1.08rem,1.7vw,1.42rem);line-height:1.55}.immersive-copy small,.immersive-reward span{color:#aebdc5;font-size:1rem;line-height:1.5}.immersive-reward{background:linear-gradient(135deg,#d9b66f1f,#0000 54%),#fffcf50b;border:1px solid #d9b66f52;border-radius:8px;gap:5px;padding:14px;display:grid}.immersive-reward strong{color:#ffe9a8}.immersive-actions{grid-template-columns:repeat(2,minmax(0,180px));gap:10px;margin-top:10px;display:grid}.immersive-actions button{color:#fffaf1;background:#fffcf514;border-color:#fffcf53d;min-height:48px}.immersive-actions button:last-child{background:linear-gradient(135deg,#b4232ec7,#d9b66fa8);border-color:#d9b66f6b}@keyframes immersiveFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes immersiveDrift{0%{transform:scale(1.08)translate(-1%,-1%)}to{transform:scale(1.14)translate(1%,1%)}}@keyframes immersiveFloat{0%,to{transform:rotate(-18deg)translateY(0)}50%{transform:rotate(-12deg)translateY(18px)}}@media (prefers-reduced-motion:reduce){.immersive-chapter,.immersive-visual img,.immersive-visual>span{animation:none}}button:disabled{cursor:not-allowed;opacity:.62}.dojo-study-panel{background:linear-gradient(90deg,#5c483014 1px,#0000 1px) 0 0/28px 28px,linear-gradient(#ffffffd6,#fffcf5e6);border:1px solid #5c483029;border-radius:8px;grid-template-columns:120px minmax(0,1fr);align-items:stretch;gap:18px;padding:16px;display:grid}.dojo-study-mark{background:radial-gradient(circle at 50% 38%,#b4232e29,#0000 34%),#fffcf5eb;border:1px solid #b4232e33;border-radius:8px;place-items:center;display:grid}.dojo-study-mark span{color:#b4232e;font-weight:900}.dojo-study-content,.dojo-study-tags,.dojo-trail-card,.dojo-trail-items{gap:10px;display:grid}.dojo-study-content h2{margin:0}.dojo-study-tags{grid-template-columns:repeat(auto-fit,minmax(92px,max-content))}.dojo-study-tags span{background:#29435c14;border:1px solid #29435c2e;border-radius:999px;padding:5px 10px;font-size:.86rem;font-weight:800}.dojo-current-trail{background:linear-gradient(135deg,#29435c14,#0000 52%),#fffcf5d1;border:1px solid #5c483024;border-radius:8px;gap:14px;padding:14px;display:grid}.dojo-current-trail.completed{background:linear-gradient(135deg,#0f766e1a,#0000 52%),#fffcf5e6;border-color:#0f766e47}.dojo-current-trail-head,.dojo-current-trail-item{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.dojo-current-trail-head span{color:#b4232e;text-transform:uppercase;font-size:.78rem;font-weight:900}.dojo-current-trail-head h2{color:var(--text-h);margin:0;font-size:1.8rem}.dojo-current-trail-head strong{color:#29435c;background:#29435c14;border:1px solid #29435c2e;border-radius:999px;padding:8px 12px}.dojo-current-trail.completed .dojo-current-trail-head strong{color:#0f766e;background:#0f766e1a;border-color:#0f766e42}.dojo-current-trail-list{gap:10px;display:grid}.dojo-current-trail-item{background:#fffcf5b8;border:1px solid #5c483024;border-left:4px solid #b58a4273;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;padding:10px}.dojo-current-trail-item.done{background:#0f766e0f;border-left-color:#0f766e94}.dojo-current-trail-item>span{color:#b58a42;font-weight:900}.dojo-current-trail-item.done>span{color:#0f766e}.dojo-current-trail-item small{color:var(--muted)}.dojo-trail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.dojo-trail-card{border-left:4px solid #29435c6b;align-content:start}.dojo-trail-items button{text-align:left;justify-content:start;min-height:40px}.announcements-layout{grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);align-items:start}.announcement-form{gap:14px}.announcement-form textarea{resize:vertical;min-height:150px}.announcement-channels{background:linear-gradient(135deg,#b58a421c,#0000 48%),#fffcf5b8;border:1px solid #b58a4233;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;padding:10px;display:grid}.announcement-channel{min-height:86px;color:var(--text);background:#ffffffb8;border:1px solid #5c483024;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:12px;display:grid}.announcement-channel:has(input:checked){background:linear-gradient(135deg,#29435c1f,#0000 58%),#ffffffdb;border-color:#29435c52;box-shadow:inset 4px 0 #29435c}.announcement-channel input{width:16px;height:16px}.announcement-channel span{gap:3px;display:grid}.announcement-channel small{color:var(--muted);font-size:.82rem;line-height:1.35}.announcement-card{border-left:4px solid #b4232e9e;gap:12px;padding:16px}.announcement-card h2{font-size:1.18rem}.announcement-badges{flex-wrap:wrap;gap:6px;display:flex}.announcement-badges span{color:#29435c;text-transform:uppercase;background:#29435c14;border:1px solid #29435c2e;border-radius:999px;padding:4px 8px;font-size:.78rem;font-weight:800}.announcement-meta{color:var(--muted);border-top:1px solid #5c48301f;padding-top:10px;font-size:.9rem}.student-card{border-top:3px solid #0f766ec7}.student-head{justify-content:space-between;gap:12px;display:flex}.student-head strong{color:#5eead4;background:#0f766e26;border:1px solid #14b8a638;border-radius:8px;align-self:start;padding:8px 10px}.student-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:4px;display:grid}.danger-button:hover{color:#fff;background:#be123c;border-color:#be123c}.detail-grid,.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.report-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.report-table{gap:8px;display:grid}.report-row{background:#ffffff0b;border:1px solid #e2e8f01a;border-radius:8px;grid-template-columns:1.35fr 1fr 1fr .9fr .75fr;align-items:center;gap:10px;padding:10px;display:grid}.report-row span:first-child{gap:3px;display:grid}.report-row small{color:#94a3b8}.report-head{color:#f8fafc;background:#ffffff13;font-weight:800}.detail-grid span,.feature-grid span,.medical-box,.insight,.toolbar,.attendance-row,.progress-row{background:#ffffff0b;border:1px solid #e2e8f01a;border-radius:8px}.detail-grid span,.feature-grid span{padding:8px 10px}.medical-box{background:#d977061c;border-color:#fbbf2438;gap:5px;padding:10px;display:grid}.medical-box.locked{background:#ffffff0a;border-color:#e2e8f01c}.insight-list,.list-stack,.attendance-list,.evaluation-form,.academy-form,.library-form,.criteria-grid{gap:10px;display:grid}.academy-form{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}.academy-card img,.academy-color{object-fit:contain;border:1px solid #e2e8f024;border-radius:8px;width:58px;height:58px;padding:6px}.academy-color{padding:0}.library-form{background:#ffffff0b;border:1px solid #e2e8f01a;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;padding:12px}.library-form label:nth-last-child(2){grid-column:1/-1}.library-form button{min-height:43px}.insight{gap:4px;padding:10px;display:grid}.insight.success{background:#0f766e24;border-color:#5eead438}.progress-row{gap:8px;padding:10px;display:grid}.progress-row>div:first-child{justify-content:space-between;gap:12px;display:flex}.bar{background:#e2e8f01a;border-radius:999px;height:9px;overflow:hidden}.bar span{border-radius:inherit;background:linear-gradient(90deg,#be123c,#0f766e);height:100%;display:block}.toolbar{grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:12px;padding:12px;display:grid}label{color:#f8fafc;gap:6px;font-weight:700;display:grid}input,select,textarea{box-sizing:border-box;color:#f8fafc;width:100%;font:inherit;background:#05070ab8;border:1px solid #e2e8f024;border-radius:8px;outline:none;padding:10px 12px}.attendance-row{grid-template-columns:minmax(180px,1fr) minmax(0,460px);align-items:center;gap:12px;padding:10px;display:grid}.attendance-toolbar{grid-template-columns:minmax(220px,320px) minmax(0,1fr) minmax(260px,auto);align-items:center}.attendance-toolbar span{color:#29435c;background:#29435c14;border:1px solid #29435c29;border-radius:999px;justify-self:end;padding:8px 12px;font-weight:800}.attendance-list{gap:10px}.attendance-quick-actions,.guardian-checkin-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.attendance-quick-actions button,.guardian-checkin-actions button{min-height:44px}.attendance-row{border-left:4px solid #29435c3d;min-height:82px}.attendance-student{gap:4px;display:grid}.attendance-student span{color:var(--muted);font-size:.9rem}.attendance-student small,.guardian-checkin-card small,.guardian-checkin-card span,.guardian-checkin-toolbar span{color:var(--muted)}.attendance-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.attendance-actions button{min-height:46px}.attendance-actions button.active{color:#fffaf1}.attendance-actions .attendance-presente.active{background:#0f766e;border-color:#0f766e}.attendance-actions .attendance-ausente.active{background:#b4232e;border-color:#b4232e}.attendance-actions .attendance-justificado.active{background:#b58a42;border-color:#b58a42}.guardian-checkin-toolbar{grid-template-columns:minmax(220px,320px) minmax(0,1fr);align-items:end;gap:12px;margin-bottom:14px;display:grid}.guardian-checkin-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.guardian-checkin-card{background:linear-gradient(135deg,#b58a4214,#0000 52%),#fffcf5d1;border:1px solid #5c483024;border-left:4px solid #b58a4280;border-radius:8px;gap:12px;padding:14px;display:grid}.guardian-checkin-card.checked{background:linear-gradient(135deg,#0f766e17,#0000 52%),#fffcf5db;border-left-color:#0f766ea6}.guardian-checkin-card>div:first-child{gap:4px;display:grid}.guardian-checkin-card.checked .guardian-checkin-actions button:first-child{color:#0f766e;background:#0f766e14;border-color:#0f766e47}.segmented{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.criteria-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.criteria-grid label{background:#ffffff0a;border:1px solid #e2e8f01a;border-radius:8px;padding:10px}.evaluations-layout{grid-template-columns:minmax(360px,.95fr) minmax(0,1.05fr);align-items:start}.evaluation-entry-form{gap:14px}.evolution-note-form{gap:12px}.evolution-note-form textarea{resize:vertical;min-height:118px}.evolution-note-form>span{color:#29435c;background:#29435c12;border:1px solid #29435c24;border-radius:8px;padding:9px 10px;font-size:.92rem}.criterion-card{background:linear-gradient(135deg,#b58a420a,#0000 54%),#fffcf5bd;border:1px solid #5c48301a;border-radius:10px;gap:10px;padding:12px 14px}.criterion-card legend{justify-content:space-between;align-items:flex-start;gap:12px;width:100%;padding:0;display:flex}.criterion-card small{color:var(--muted);white-space:nowrap;font-size:.85rem;font-weight:500}.star-rating{background:#fffcf5d1;border:1px solid #b58a422e;border-radius:999px;align-items:center;gap:0;width:max-content;padding:4px 8px;display:flex}.star-rating button{width:32px;height:32px;min-height:32px;box-shadow:none;color:#5c48303d;background:0 0;border:0;border-radius:999px;padding:0;font-size:1.4rem;line-height:1;transform:none}.star-rating button.selected{color:#b58a42;text-shadow:0 2px 10px #b58a422e;background:0 0;border:0}.star-rating button:hover{color:#b58a42;background:#b58a421a;border-color:#0000;transform:translateY(-1px)scale(1.06)}.evaluation-card{border-left:4px solid #b58a42b8;gap:12px;padding:16px}.evaluation-card-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.evaluation-card-head>span{color:#b4232e;background:#b4232e14;border:1px solid #b4232e33;border-radius:999px;padding:5px 10px;font-weight:900}.evaluation-meta{color:var(--muted);border-top:1px solid #5c48301f;padding-top:10px;font-size:.9rem}.reports-page{gap:18px}.report-stats .stat-card strong{font-size:1.55rem}.export-actions button{background:linear-gradient(135deg,#29435c1a,#0000 58%),#ffffffc7;min-height:52px}.athlete-report-row{border-left:4px solid #29435c3d}.athlete-report-row:hover{background:linear-gradient(135deg,#29435c0f,#0000 52%),#fffcf5db;border-color:#29435c61}.risk-badge{background:#5c483012;border:1px solid #5c483029;border-radius:999px;justify-self:start;padding:6px 10px}.risk-badge.risk-warning{background:#b58a421f;border-color:#b58a4252}.risk-badge.risk-success{background:#0f766e1a;border-color:#0f766e47}.risk-regular{color:#29435c}.event-card{border-top:4px solid #0f766e}.events-layout{grid-template-columns:minmax(320px,.86fr) minmax(0,1.14fr);align-items:start;gap:18px;display:grid}.event-form{gap:14px}.event-form textarea{resize:vertical;min-height:140px}.events-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.event-card{border-top:0;border-left:4px solid #0f766e9e;gap:12px;padding:16px}.event-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.event-card-head>span{color:#0f766e;text-transform:uppercase;background:#0f766e14;border:1px solid #0f766e33;border-radius:999px;padding:4px 8px;font-size:.78rem;font-weight:900}.event-card-head>strong{color:#29435c;font-size:.95rem}.event-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.event-meta-grid span{background:#fffcf5b8;border:1px solid #5c48301f;border-radius:8px;gap:3px;padding:9px 10px;display:grid}.event-map-link{color:#29435c;background:#29435c14;border:1px solid #29435c2e;border-radius:8px;place-items:center;min-height:42px;padding:8px 12px;font-weight:800;text-decoration:none;display:inline-grid}.empty-state{place-items:center;gap:8px;min-height:260px;padding:24px;display:grid}.auth-shell{place-items:center;min-height:100vh;padding-block:34px}.auth-japan-shell{background:radial-gradient(circle at 12% 18%,#b4232e29,#0000 22rem),radial-gradient(circle at 84% 12%,#29435c24,#0000 24rem),linear-gradient(135deg,#8f704014 25%,#0000 25%) 0 0/34px 34px}.auth-layout{grid-template-columns:minmax(260px,.82fr) minmax(340px,1fr);align-items:stretch;gap:18px;width:min(1040px,100%);display:grid}.login-layout{grid-template-columns:minmax(380px,.94fr) minmax(380px,1.06fr);gap:22px;width:min(1160px,100%)}.enrollment-layout{grid-template-columns:minmax(220px,.38fr) minmax(620px,1.62fr);width:min(1260px,100%)}.auth-visual{border:1px solid var(--border);min-height:520px;box-shadow:var(--shadow);background:linear-gradient(#fffcf594,#fffcf5e6),linear-gradient(135deg,#b4232e29,#0000 44%),linear-gradient(225deg,#29435c24,#0000 42%),#fffaf1;border-radius:8px;align-content:end;gap:14px;padding:28px;display:grid;position:relative;overflow:hidden}.enrollment-layout .auth-visual{align-content:start;gap:12px;min-height:auto;padding:22px}.login-layout .auth-visual{background:linear-gradient(90deg,#fffcf5fa,#fffcf5e6),radial-gradient(circle at 18% 22%,#b4232e29,#0000 18rem),radial-gradient(circle at 78% 70%,#29435c1f,#0000 20rem),#fffaf1;align-content:end;min-height:560px;padding:34px}.auth-visual:before,.auth-visual:after{content:"";pointer-events:none;position:absolute}.auth-visual:before{border:1px solid #5c48301a;border-radius:8px;inset:18px}.auth-visual:after{opacity:.32;background:linear-gradient(90deg,#29435c1a 1px,#0000 1px) 0 0/22px 22px,linear-gradient(0deg,#29435c1a 1px,#0000 1px) 0 0/22px 22px;width:118px;height:210px;top:38px;right:28px}.auth-visual h1,.auth-visual p{z-index:2;max-width:420px;position:relative}.auth-visual h1{color:#1f2937;font-size:clamp(2.1rem,4.5vw,4rem)}.login-layout .auth-visual h1{font-size:clamp(2.25rem,3.4vw,3rem);line-height:1.04}.enrollment-layout .auth-visual h1{font-size:clamp(1.95rem,3vw,2.8rem);line-height:1.05}.auth-visual>p:not(.eyebrow){color:#475569;font-size:1.05rem}.enso-mark{border:18px solid #b4232e1f;border-color:#b4232e1f #b4232e06 #29435c17 #b4232e1f;border-radius:999px;width:170px;height:170px;position:absolute;top:58px;left:34px;transform:rotate(-24deg)}.enrollment-layout .enso-mark{border-width:13px;width:112px;height:112px;top:20px;left:auto;right:20px}.login-layout .enso-mark{display:none}.login-layout .auth-visual:before{background:0 0;inset:22px}.login-layout .auth-visual:after{filter:blur(22px);background:#b4232e0d;border-radius:999px;width:42%;height:38%;top:auto;bottom:26px;right:28px}.auth-lotus-logo{z-index:1;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 18px 22px #3f32221f);place-self:start center;width:min(300px,64%);margin:2px 0 42px;position:relative}.login-layout .auth-lotus-logo{z-index:0;opacity:.96;filter:drop-shadow(0 24px 40px #29435c1f);justify-self:center;width:min(360px,68%);margin:0;position:absolute;top:38px;left:50%;transform:translate(-50%)}.login-layout .auth-visual>.eyebrow{margin-top:18px}.auth-lotus-mark{z-index:1;background:linear-gradient(145deg,#29435c1f,#fffcf5c7),#ffffff9e;border:1px solid #5c483024;border-radius:8px;place-items:center;width:92px;height:92px;margin-bottom:84px;display:grid;position:relative;box-shadow:0 16px 34px -22px #3f32221f}.auth-lotus-mark span,.auth-lotus-mark:before,.auth-lotus-mark:after{border-color:#29435cc7}.auth-lotus-mark span{background:#b4232e14}.auth-logo{z-index:1;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 16px 22px #3f32221f);justify-self:center;width:min(190px,72%);margin:8px 0 18px;position:relative}.auth-visual-grid{z-index:2;grid-template-columns:1fr;gap:8px;margin-top:8px;display:grid;position:relative}.auth-visual-grid span{color:#29435c;text-align:center;background:#ffffff8f;border:1px solid #5c483024;border-radius:999px;padding:8px 10px;font-weight:900}.login-layout .auth-visual-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.login-layout .auth-visual-grid span{background:#ffffff80;place-items:center;min-height:44px;font-weight:560;display:grid}.login-panel{gap:18px;width:min(520px,100%);padding:22px;display:grid}.login-card,.public-enrollment{background:linear-gradient(180deg, #ffffffd1, #fffcf5f0), var(--panel-bg);align-content:start}.login-layout .login-card{background:linear-gradient(#ffffffeb,#fffcf5f5),radial-gradient(circle at 92% 12%,#b4232e14,#0000 16rem);align-content:center;gap:24px;width:100%;min-height:560px;padding:34px}.login-heading{gap:6px;display:grid}.login-heading h2{font-size:1.65rem}.login-layout .login-heading{gap:8px}.login-layout .login-heading h2{color:#1f2937;font-size:clamp(1.85rem,2.5vw,2.35rem);line-height:1.08}.login-layout .login-heading span{color:#52637a}.login-layout .evaluation-form{gap:14px}.login-layout .evaluation-form label{color:#1f2937;gap:8px;font-weight:520}.login-layout .evaluation-form input{color:#1f2937;background:#ffffffd6;border-color:#5c48302e;border-radius:8px;min-height:56px;font-size:1rem;font-weight:440}.login-layout .evaluation-form button[type=submit]{color:#fff;background:linear-gradient(135deg,#be123c,#8f1d2c);border-color:#b4232e47;border-radius:8px;min-height:56px;box-shadow:0 20px 45px -28px #be123c33}.login-panel.public-enrollment{width:100%;max-height:none;padding:26px;overflow:visible}.public-brand{border-bottom:1px solid var(--border);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding-bottom:14px;display:grid}.public-brand .brand-logo{background:#ffffff9e;border-color:#5c483029;width:88px;height:88px}.public-brand h2{font-size:1.55rem}.payment-box{background:linear-gradient(135deg,#b4232e14,#0000 42%),#fffcf5d1;border-color:#b4232e2e}.public-enrollment .student-form{align-items:start}.public-access-box{gap:10px;display:grid}.demo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.student-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.structured-student-form{grid-template-columns:1fr;gap:14px}.form-section{background:linear-gradient(135deg,#29435c0b,#0000 52%),#fffcf5ad;border:1px solid #5c483024;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:14px;display:grid}.form-section legend{color:#29435c;padding:0 8px;font-weight:900}.sensitive-section{background:linear-gradient(135deg,#b58a421f,#0000 50%),#fffcf5c2;border-color:#b58a4242}.student-form.medical-section{background:#d977061a;border:1px solid #fbbf2438;border-radius:8px;grid-column:1/-1;grid-template-columns:repeat(5,minmax(0,1fr));padding:10px}.span-2{grid-column:1/-1}.form-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.toggle-row{background:#ffffff0b;border:1px solid #e2e8f01a;border-radius:8px;align-items:center;gap:8px;padding:10px;display:flex}.toggle-row input{width:auto}.enrollment-admin-page{gap:18px}.enrollment-link-box{border-left:4px solid #29435c70}.enrollment-link-box strong{overflow-wrap:anywhere}.enrollment-settings-form textarea{resize:vertical;min-height:120px}.enrollment-filters{grid-template-columns:repeat(5,minmax(0,1fr))}.enrollment-request-card{border-left:4px solid #29435c47;gap:12px;padding:16px}.enrollment-request-card.status-pending{border-left-color:#b58a42c7}.enrollment-request-card.status-approved{border-left-color:#0f766eb8}.enrollment-request-card.status-rejected{border-left-color:#b4232eb8}.enrollment-request-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.enrollment-request-head span{color:#29435c;text-transform:uppercase;background:#29435c14;border:1px solid #29435c2e;border-radius:999px;padding:4px 9px;font-size:.78rem;font-weight:900}.enrollment-request-grid,.student-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.enrollment-request-grid span,.student-summary-grid span{background:#fffcf5b8;border:1px solid #5c48301f;border-radius:8px;gap:3px;padding:9px 10px;display:grid}.enrollment-meta{color:var(--muted);border-top:1px solid #5c48301f;padding-top:10px;font-size:.9rem}.students-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.student-profile-card{border-left:4px solid #29435c4d;gap:12px}.student-title{gap:4px;display:grid}.student-status{white-space:nowrap}.student-status.active{color:#0f766e;background:#0f766e1a;border-color:#0f766e3d}.student-status.inactive{color:#9f1d2a;background:#b4232e14;border-color:#b4232e3d}.student-medical-box{border-left:4px solid #b58a4285}.student-timeline-preview,.access-control-box{background:linear-gradient(135deg,#29435c0e,#0000 52%),#fffcf5bd;border:1px solid #5c48301f;border-radius:8px;gap:6px;padding:10px;display:grid}.student-timeline-preview span,.access-control-box span{color:var(--muted);font-size:.9rem}.access-control-box{border-left:4px solid #29435c5c}.student-management-actions{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.timeline-list{gap:10px;display:grid}.timeline-item{background:linear-gradient(135deg,#29435c0d,#0000 48%),#fffcf5c7;border:1px solid #5c48301f;border-left:4px solid #29435c5c;border-radius:8px;gap:5px;padding:12px 14px;display:grid;position:relative}.timeline-item>span{color:var(--muted);font-size:.86rem;font-weight:800}.timeline-item>p{color:var(--text)}.timeline-evaluation{border-left-color:#b4232e9e}.timeline-attendance{border-left-color:#0f766e8f}.timeline-graduation{border-left-color:#b58a42b8}.timeline-event{border-left-color:#29435c9e}.timeline-note{border-left-color:#7c2d1294}.gamification-page{gap:18px;display:grid}.gamification-hero{background:linear-gradient(135deg, color-mix(in srgb, var(--belt-primary) 13%, transparent), transparent 46%), linear-gradient(225deg, #b58a4224, transparent 48%), #fffcf5e0}.gamification-progress-card{background:#ffffff9e;border:1px solid #5c483024;border-radius:8px;gap:10px;padding:12px;display:grid}.guided-journey-card{box-shadow:var(--shadow-soft);background:linear-gradient(135deg,#b4232e14,#0000 38%),linear-gradient(225deg,#0f766e14,#0000 42%),#fffcf5eb;border:1px solid #b58a4247;border-radius:8px;gap:18px;padding:22px;display:grid}.guided-journey-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:16px;display:grid}.guided-journey-head span,.journey-admin-card>.section-title span{color:#b4232e;text-transform:uppercase;font-size:.82rem;font-weight:900}.guided-journey-head h2{margin-top:4px;font-size:clamp(1.55rem,2.4vw,2.2rem)}.guided-journey-head p{max-width:760px;color:var(--muted)}.guided-journey-head>strong{color:#b4232e;background:#fff;border:1px solid #b4232e38;border-radius:50%;place-items:center;width:82px;height:82px;font-size:1.55rem;display:grid}.guided-journey-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.guided-journey-stats span{color:var(--muted);background:#ffffffad;border:1px solid #5c483024;border-radius:8px;padding:12px}.guided-journey-stats strong{color:var(--text);font-size:1.28rem;display:block}.guided-journey-progress{height:12px}.journey-map{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:12px;display:grid;position:relative}.journey-map-panel{background:linear-gradient(135deg,#29435c0b,#0000 52%),#fffcf5c7;border:1px solid #5c483024;border-radius:12px;gap:12px;padding:12px;display:grid}.journey-map-panel summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;list-style:none;display:grid}.journey-map-panel summary::-webkit-details-marker{display:none}.journey-map-panel summary:after{content:"+";color:#29435c;background:#ffffff94;border:1px solid #29435c29;border-radius:999px;place-items:center;width:34px;height:34px;font-weight:560;display:grid}.journey-map-panel[open] summary:after{content:"-"}.journey-map-panel summary span{color:var(--text-h);font-weight:590}.journey-map-panel summary small{color:var(--muted)}.journey-map button{background:#ffffffc7;border-style:solid;justify-items:center;gap:8px;min-height:112px;display:grid}.journey-map button span{border-radius:50%;place-items:center;width:42px;height:42px;font-weight:900;display:grid}.journey-map button small{color:var(--muted);text-align:center;font-size:.78rem;font-weight:800;line-height:1.25}.journey-map button.done{border-color:#0f766e57}.journey-map button.done span{color:#fff;background:#0f766e}.journey-map button.available{border-color:#b58a4270;box-shadow:0 10px 26px #b58a422e}.journey-map button.available span{color:#fff;background:#b58a42}.journey-map button.locked{opacity:.58}.journey-map button.locked span{color:var(--muted);background:#5c48301f}.journey-rpg-map{background:radial-gradient(circle at 12% 24%, color-mix(in srgb, var(--belt-primary) 14%, transparent), transparent 10rem), radial-gradient(circle at 82% 74%, color-mix(in srgb, var(--belt-secondary) 14%, transparent), transparent 12rem), linear-gradient(90deg, #d9c8a914 1px, transparent 1px) 0 0 / 42px 42px, linear-gradient(0deg, #d9c8a912 1px, transparent 1px) 0 0 / 42px 42px, #fffcf5c2;scrollbar-color:#29435c47 transparent;border:0;border-radius:14px;min-height:300px;padding:22px 18px;display:block;position:relative;overflow:auto hidden}.journey-rpg-map:before{display:none}.journey-checkpoint-track{min-width:max(860px, calc(var(--journey-steps,6) * 176px + 180px));height:250px;position:relative}.journey-map-path{pointer-events:none;height:74px;position:absolute;top:132px;left:56px;right:92px}.journey-map-path:before,.journey-map-path span{content:"";background:radial-gradient(circle at 24px,#0000 0 8px,#29435c33 9px 10px,#0000 11px),linear-gradient(90deg,#29435c29,#b58a422e);border-radius:999px;width:100%;height:8px;position:absolute;top:32px;left:0;transform:skewY(-4deg)}.journey-map-path span{width:var(--journey-progress);background:linear-gradient(90deg, var(--belt-primary), var(--belt-secondary));box-shadow:color-mix(in srgb, var(--belt-primary) 22%, transparent) 0 8px 22px -12px;transition:width .42s}.journey-checkpoint{left:calc(24px + var(--node-index) * 176px);top:calc(88px + var(--node-lane) * 48px);z-index:2;width:auto;min-height:0;box-shadow:none;text-align:left;background:0 0;border:0;grid-template-columns:auto minmax(128px,168px);align-items:center;gap:10px;margin:0;display:grid;position:absolute}.journey-checkpoint:before{display:none}.checkpoint-orb{width:52px;height:52px;color:var(--muted);background:#fffcf5f5;border:2px solid #5c483024;border-radius:999px;place-items:center;font-weight:650;display:grid;box-shadow:0 16px 34px -22px #3f32222e}.journey-rpg-map .checkpoint-orb{width:52px;height:52px;color:var(--muted);background:#fffcf5f5;border-radius:999px;font-weight:650}.journey-checkpoint.locked .checkpoint-orb:before{content:"";border:2px solid #5c48303d;border-top-left-radius:8px;border-top-right-radius:8px;width:14px;height:14px;box-shadow:inset 0 -6px #5c48301f}.journey-checkpoint.done .checkpoint-orb{color:#fffaf1;background:#0f766e;border-color:#0f766e57}.journey-checkpoint.available .checkpoint-orb{border-color:color-mix(in srgb, var(--belt-primary) 45%, transparent);background:var(--belt-primary);color:#fffaf1;animation:1.8s ease-in-out infinite checkpointUnlock}.journey-checkpoint.special .checkpoint-orb{border-color:#b58a4261}.checkpoint-card{background:#fffcf5db;border:1px solid #5c48301f;border-radius:10px;gap:2px;min-width:0;padding:9px 10px;display:grid;box-shadow:0 16px 34px -28px #3f32221f}.journey-rpg-map .checkpoint-card{place-items:initial;width:auto;height:auto;color:inherit;font-weight:inherit;background:#fffcf5db;border-radius:10px;display:grid}.journey-rpg-map .checkpoint-card small{color:var(--belt-primary);text-transform:uppercase;text-align:left;font-size:.72rem;font-weight:650;line-height:1.2}.journey-rpg-map .checkpoint-card strong{color:var(--text-h);font-size:.92rem;font-weight:590;line-height:1.2}.journey-rpg-map .checkpoint-card em{color:var(--muted);font-size:.76rem;font-style:normal}.journey-checkpoint.locked .checkpoint-card{opacity:.56}.journey-checkpoint.available .checkpoint-card{border-color:color-mix(in srgb, var(--belt-primary) 24%, #5c48301f)}.journey-checkpoint.done .checkpoint-card{border-color:#0f766e3d}.journey-rpg-finish{z-index:1;color:var(--muted);justify-self:center;justify-items:center;gap:8px;margin-top:4px;display:grid;position:relative}.journey-rpg-finish span{background:radial-gradient(circle at 50% 42%,#b58a423d,#0000 34%),#fffcf5f2;border:1px solid #b58a424d;border-radius:50%;place-items:center;width:58px;height:58px;font-size:1.55rem;display:grid}.journey-rpg-finish span:before{content:"T"}.journey-checkpoint-finish{left:calc(64px + var(--journey-steps,6) * 176px);z-index:2;margin:0;position:absolute;top:74px}@keyframes checkpointUnlock{0%,to{box-shadow:0 0 #b4232e1f}50%{box-shadow:color-mix(in srgb, var(--belt-primary) 22%, transparent) 0 0 0 10px}}.journey-rpg-finish span:before{content:"T";color:#b58a42;font-weight:620}.journey-rpg-finish small{font-size:.86rem;font-weight:560}.journey-rpg-finish.done span{background:#0f766e1a;border-color:#0f766e57}.journey-rpg-map{background:radial-gradient(circle at 16% 18%,#ffb7c533,#0000 9rem),radial-gradient(circle at 80% 70%,#85ab8b29,#0000 13rem),linear-gradient(90deg,#d9c8a914 1px,#0000 1px) 0 0/46px 46px,linear-gradient(0deg,#d9c8a90f 1px,#0000 1px) 0 0/46px 46px,linear-gradient(#fffcf5f0,#f9f2e5d6);border-radius:18px;min-height:390px;padding:24px 20px}.journey-rpg-map.journey-theme-gray{background:radial-gradient(circle at 18% 18%,#94a3b82e,#0000 10rem),radial-gradient(circle at 84% 74%,#29435c1f,#0000 13rem),linear-gradient(90deg,#94a3b814 1px,#0000 1px) 0 0/46px 46px,linear-gradient(0deg,#94a3b80f 1px,#0000 1px) 0 0/46px 46px,linear-gradient(#fffcf5f0,#f2f4f7db)}.journey-rpg-map.journey-theme-sunrise{background:radial-gradient(circle at 18% 18%,#fbbf2433,#0000 10rem),radial-gradient(circle at 78% 68%,#ea580c24,#0000 13rem),linear-gradient(90deg,#d9c8a914 1px,#0000 1px) 0 0/46px 46px,linear-gradient(0deg,#d9c8a90f 1px,#0000 1px) 0 0/46px 46px,linear-gradient(#fffcf5f0,#fff7ede0)}.journey-rpg-map.journey-theme-lake,.journey-rpg-map.journey-theme-garden,.journey-rpg-map.journey-theme-dojo{background:radial-gradient(circle at 18% 18%, color-mix(in srgb, var(--belt-primary) 14%, transparent), transparent 10rem), radial-gradient(circle at 82% 72%, color-mix(in srgb, var(--belt-secondary) 16%, transparent), transparent 13rem), linear-gradient(90deg, #d9c8a914 1px, transparent 1px) 0 0 / 46px 46px, linear-gradient(0deg, #d9c8a90f 1px, transparent 1px) 0 0 / 46px 46px, linear-gradient(180deg, #fffcf5f0, #f4f8f3db)}.journey-rpg-map .journey-checkpoint-track,.journey-rpg-map .journey-map-scenery{min-width:max(1120px, calc(var(--journey-steps,6) * 172px + 260px));height:330px}.journey-map-scenery{pointer-events:none;position:absolute;inset:0}.scene-mark{color:#29435c6b;background:#fffcf5b3;border:1px solid #5c48301f;border-radius:18px;place-items:center;width:62px;height:62px;font-size:2rem;display:grid;position:absolute;box-shadow:0 18px 42px -28px #3f32221f}.scene-torii{top:28px;left:38px}.scene-sakura{bottom:28px;left:28%}.scene-mountain{top:38px;right:18%}.scene-dojo{bottom:34px;right:42px}.journey-rpg-map .journey-map-path{height:auto;inset:38px 76px 46px 56px}.journey-rpg-map .journey-map-path:before{display:none}.journey-map-path svg{width:100%;height:100%;position:absolute;inset:0}.journey-road-shadow,.journey-road-base,.journey-road-progress{fill:none;stroke-linecap:round;stroke-linejoin:round}.journey-road-shadow{stroke:#3f32221a;stroke-width:22px;transform:translateY(9px)}.journey-road-base{stroke:#9a896d38;stroke-width:16px;stroke-dasharray:2 28}.journey-road-progress{stroke:color-mix(in srgb, var(--belt-primary) 70%, #b58a42);stroke-width:12px;stroke-dasharray:1200;stroke-dashoffset:calc(1200 - (1200 * var(--journey-progress-value,0) / 100));filter:drop-shadow(0 8px 14px color-mix(in srgb, var(--belt-primary) 22%, transparent));transition:stroke-dashoffset .62s}.journey-rpg-map .journey-checkpoint{left:var(--node-x);top:var(--node-y);text-align:center;grid-template-columns:1fr;justify-items:center;gap:8px;width:150px;transform:translate(-50%)}.journey-rpg-map .checkpoint-orb{color:#29435c;background:radial-gradient(circle at 34% 24%,#ffffffdb,#0000 32%),linear-gradient(145deg,#fffcf5f5,#ede1cdf0);border:3px solid #fffcf5f5;width:64px;height:64px;font-size:1.55rem;box-shadow:0 18px 36px -22px #3f322238,inset 0 -8px 18px #5c48301f}.journey-rpg-map .checkpoint-orb span{width:auto;height:auto;color:inherit;font-weight:inherit;background:0 0;border-radius:0;place-items:center;display:grid}.journey-rpg-map .journey-checkpoint.locked .checkpoint-orb:before{display:none}.journey-rpg-map .journey-checkpoint.done .checkpoint-orb{color:#fffaf1;background:radial-gradient(circle at 34% 24%,#ffffff59,#0000 32%),#0f766e;border-color:#fffcf5fa}.journey-rpg-map .journey-checkpoint.available .checkpoint-orb{background:radial-gradient(circle at 34% 24%, #ffffff61, transparent 32%), var(--belt-primary);color:#fffaf1;border-color:#fffcf5fa}.journey-rpg-map .journey-checkpoint.current .checkpoint-orb{box-shadow:color-mix(in srgb, var(--belt-primary) 42%, transparent) 0 0 0 10px, color-mix(in srgb, var(--belt-primary) 20%, transparent) 0 18px 42px -18px;animation:1.7s ease-in-out infinite journeyCurrentPulse}.journey-position-pin{z-index:5;border:1px solid color-mix(in srgb, var(--belt-primary) 32%, #5c483029);width:max-content;max-width:132px;color:var(--belt-primary);background:#fffcf5f5;border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:760;position:absolute;top:-31px;left:50%;transform:translate(-50%);box-shadow:0 14px 30px -22px #3f322229}.journey-position-pin:after{content:"";border-right:1px solid color-mix(in srgb, var(--belt-primary) 28%, #5c483029);border-bottom:1px solid color-mix(in srgb, var(--belt-primary) 28%, #5c483029);background:#fffcf5f5;width:10px;height:10px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)rotate(45deg)}.journey-rpg-map .checkpoint-card{background:#fffcf5e6;border:1px solid #5c48301f;border-radius:14px;width:100%;padding:9px 10px;box-shadow:0 18px 40px -28px #3f322224}.journey-rpg-map .checkpoint-card small{text-align:center;font-size:.68rem;font-weight:520}.journey-rpg-map .checkpoint-card strong{font-size:.86rem;font-weight:540}.journey-rpg-map .checkpoint-card em{font-size:.72rem}.journey-rpg-map .journey-checkpoint.locked .checkpoint-card{opacity:.62}.journey-rpg-map .journey-checkpoint.locked .checkpoint-orb{color:#29435c6b;filter:grayscale(.25);background:radial-gradient(circle at 34% 24%,#ffffff9e,#0000 32%),linear-gradient(145deg,#fffcf5d1,#e2d9c7c7);border-color:#fffcf5d1}.journey-rpg-map .journey-checkpoint.available .checkpoint-card{border-color:color-mix(in srgb, var(--belt-primary) 32%, #5c48301f);box-shadow:color-mix(in srgb, var(--belt-primary) 18%, transparent) 0 20px 42px -28px}.journey-rpg-map .journey-checkpoint.current .checkpoint-card{border-color:color-mix(in srgb, var(--belt-primary) 44%, #5c48301f);background:radial-gradient(circle at 14% 18%, color-mix(in srgb, var(--belt-primary) 11%, transparent), transparent 42%), #fffcf5f5}.journey-rpg-map .journey-checkpoint-finish{top:46px;left:94%;transform:translate(-50%)}.journey-rpg-map .journey-rpg-finish span{color:#b58a42;border:2px solid #b58a424d;width:70px;height:70px;font-size:1.8rem}.journey-rpg-map .journey-rpg-finish span:before{content:none}@keyframes journeyCurrentPulse{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-3px)scale(1.06)}}.gamification-settings-form{background:linear-gradient(135deg,#29435c0b,#0000 52%),#fffcf5b8;border:1px solid #5c483024;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end;gap:10px;padding:12px;display:grid}.gamification-config-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.gamification-config-section,.config-card-list,.config-rule-card{gap:12px;display:grid}.config-card-list{max-height:620px;padding-right:4px;overflow:auto}.config-rule-card{border-left:4px solid #29435c75;align-content:start}.config-inline-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:8px;display:grid}.journey-editor-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.journey-form,.journey-list,.journey-admin-card,.journey-step-list{gap:12px;display:grid}.journey-form{background:#fffcf5b8;border:1px solid #5c483024;border-radius:8px;align-content:start;padding:14px}.journey-admin-preview{background:#fffcf5b8;border:1px solid #5c483024;border-radius:12px;gap:12px;padding:14px;display:grid}.journey-admin-map{background:radial-gradient(circle at 14% 20%,#ffb7c52e,#0000 8rem),radial-gradient(circle at 80% 76%,#85ab8b24,#0000 10rem),linear-gradient(90deg,#d9c8a914 1px,#0000 1px) 0 0/42px 42px,linear-gradient(0deg,#d9c8a90f 1px,#0000 1px) 0 0/42px 42px,#fffcf5e6;border:1px solid #5c48301a;border-radius:14px;min-height:220px;position:relative;overflow:auto hidden}.journey-admin-map svg{width:calc(100% - 88px);min-width:860px;height:calc(100% - 40px);position:absolute;inset:20px 44px}.journey-admin-map path{fill:none;stroke:#9a896d47;stroke-width:14px;stroke-linecap:round;stroke-dasharray:2 28}.journey-admin-node{left:var(--node-x);top:var(--node-y);z-index:1;text-align:center;justify-items:center;gap:6px;width:116px;display:grid;position:absolute;transform:translate(-50%,-12px)}.journey-admin-node span{background:var(--belt-primary);color:#fffaf1;border:2px solid #fffcf5f2;border-radius:999px;place-items:center;width:44px;height:44px;display:grid;box-shadow:0 14px 28px -20px #3f32222e}.journey-admin-node strong{width:100%;color:var(--text-h);background:#fffcf5e6;border:1px solid #5c48301f;border-radius:10px;padding:7px;font-size:.78rem;font-weight:540;line-height:1.2}.journey-admin-node.draft span{background:#b58a42}.journey-admin-node.draft strong{border-color:#b58a4257;box-shadow:0 18px 38px -26px #b58a4229}.danger-outline-button{color:#9f1239;background:#b4232e0f;border-color:#b4232e47}.danger-outline-button:hover{color:#9f1239;background:#b4232e1a;border-color:#b4232e6b}.form-hint{color:var(--muted);font-weight:500}.learning-profile-section{background:linear-gradient(135deg,#0f766e12,#0000 48%),#fffcf5c7;border-color:#0f766e33}.library-accessibility-panel{background:linear-gradient(135deg,#29435c0b,#0000 48%),#ffffff80;border-color:#29435c29;grid-column:1/-1;grid-template-columns:1fr;align-items:stretch;display:grid}.library-accessibility-panel summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;list-style:none;display:grid}.library-accessibility-panel summary::-webkit-details-marker{display:none}.library-accessibility-panel summary:after{content:"+";width:30px;height:30px;color:var(--color-secondary);border:1px solid #29435c29;border-radius:999px;place-items:center;font-weight:650;display:grid}.library-accessibility-panel summary span,.library-accessibility-panel summary small{grid-column:1;min-width:0}.library-accessibility-panel summary:after{grid-area:1/2/span 2}.library-accessibility-panel[open] summary:after{content:"-"}.library-accessibility-panel summary span{color:var(--text-h);white-space:normal;font-weight:650}.library-accessibility-panel summary small{color:var(--muted);font-size:.86rem;line-height:1.35}.library-accessibility-fields{background:#ffffff7a;border:1px solid #29435c29;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:12px;padding:12px;display:grid}.library-accessibility-fields label,.library-accessibility-fields input,.library-accessibility-fields textarea{min-width:0}.library-accessibility-fields .span-3{grid-column:1/-1}.learning-profile-editor,.learning-format-grid,.learning-access-grid,.learning-slider-grid{gap:10px;display:grid}.learning-format-grid,.learning-access-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.learning-slider-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.learning-slider-grid label{gap:6px;display:grid}.learning-slider-grid span{color:var(--muted);font-size:.88rem;font-weight:800}.learning-profile-summary{background:linear-gradient(135deg,#0f766e12,#0000 46%),#fffcf5e6;border:1px solid #0f766e2e;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.learning-profile-summary span,.learning-profile-summary p{color:var(--muted);font-weight:800}.learning-profile-summary strong{color:var(--text);font-size:1.15rem;display:block}.learning-profile-summary>div:last-child,.accessibility-resource-strip,.immersive-mode-switch{flex-wrap:wrap;gap:8px;display:flex}.learning-profile-summary>div:last-child span,.accessibility-resource-strip span,.immersive-mode-switch span,.immersive-mode-switch button{color:var(--muted);background:#ffffffad;border:1px solid #29435c29;border-radius:999px;padding:6px 10px;font-size:.82rem;font-weight:900}.immersive-mode-switch button{color:#29435c;min-height:auto}.accessibility-details{background:#ffffff8f;border:1px solid #5c483024;border-radius:8px;padding:10px}.accessibility-details summary{cursor:pointer;font-weight:900}.journey-list{margin-top:16px}.journey-admin-card{border-left:4px solid #b58a42a3}.journey-admin-card.inactive{opacity:.68}.journey-admin-step{background:#ffffff94;border:1px solid #5c48301f;border-radius:8px;gap:4px;padding:10px;display:grid}.journey-admin-step span,.journey-admin-step small{color:var(--muted)}.quiz-layout{grid-template-columns:minmax(360px,.92fr) minmax(0,1.08fr);align-items:start}.quiz-form,.quiz-question-list,.quiz-card-list,.quiz-result-card,.quiz-result-list{gap:12px;display:grid}.quiz-editor-card,.quiz-card{border-left:4px solid #29435c70;gap:12px;display:grid}.quiz-card-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.quiz-card-head span,.quiz-card small,.quiz-result-card>div:first-child span{color:var(--muted)}.quiz-card-head strong{color:#0f766e;background:#0f766e17;border:1px solid #0f766e3d;border-radius:999px;padding:5px 10px}.quiz-option-list{gap:8px;display:grid}.quiz-option-editor,.quiz-answer-option{background:#fffcf5b8;border:1px solid #5c483024;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:8px 10px;display:grid}.quiz-option-editor input[type=radio],.quiz-answer-option input[type=radio]{width:auto}.quiz-question{background:linear-gradient(135deg,#b58a4214,#0000 50%),#fffcf5b8;border:1px solid #5c483024;border-radius:8px;gap:8px;margin:0;padding:12px;display:grid}.quiz-question legend{color:var(--text-h);padding:0 6px;font-weight:900}.quiz-result-card>div:first-child{justify-content:space-between;gap:12px;display:flex}.quiz-result-row{background:#fffcf5c7;border:1px solid #5c483024;border-left:4px solid #b4232e8c;border-radius:8px;gap:5px;padding:12px;display:grid}.quiz-result-row.correct{border-left-color:#0f766e99}.quiz-result-row span{color:var(--muted)}.gamification-progress-card>div:first-child{justify-content:space-between;gap:12px;display:flex}.gamification-progress-card span,.mission-card span,.medal-card small,.compact-profile-card span{color:var(--muted)}.mission-list,.medal-grid{gap:12px;display:grid}.mission-card,.medal-card{background:linear-gradient(135deg,#29435c0b,#0000 52%),#fffcf5c7;border:1px solid #5c483024;border-radius:8px;gap:8px;padding:12px;display:grid}.mission-card.completed{background:linear-gradient(135deg,#0f766e17,#0000 52%),#fffcf5d6;border-color:#0f766e42}.mission-card>div:first-child{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.medal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.medal-card{min-height:156px}.medal-card>span{background:url(/brand/judo-medal-realistic.svg) 50%/contain no-repeat;width:54px;height:72px;box-shadow:0 12px 24px -18px #5c483029}.medal-card.locked{opacity:.62}.medal-card.locked>span{filter:grayscale();opacity:.54}.student-gamification-grid{grid-template-columns:minmax(0,1fr)}.trail-medal-summary{gap:12px;display:grid}.trail-medal-card{background:radial-gradient(circle at 12% 20%,#b58a421f,#0000 24%),linear-gradient(135deg,#fffcf5f0,#ffffffbd);border:1px solid #5c483024;border-radius:12px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;padding:16px;display:grid}.trail-medal-card.unlocked{border-color:#0f766e52;box-shadow:0 16px 34px -24px #0f766e1f}.trail-medal-card>div{gap:7px;display:grid}.trail-medal-card small,.trail-medal-card em{color:var(--muted);font-style:normal}.trail-medal-card strong{color:var(--text);font-size:1.12rem}.trail-medal-card p{color:var(--muted)}.trail-medal-icon,.trail-celebration-medal{background:url(/brand/judo-medal-realistic.svg) 50%/contain no-repeat;width:82px;height:108px;box-shadow:0 16px 30px -20px #5c48302e}.trail-medal-card.locked .trail-medal-icon{filter:grayscale();opacity:.62}.medal-album-toggle{justify-self:start;min-width:220px}.medal-grid-expanded{margin-top:12px}.compact-profile-card{gap:10px}.student-picker{max-width:420px}.app-shell{min-height:100vh;color:var(--text);isolation:isolate;position:relative}.app-shell:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(135deg,#b4232e0b 25%,#0000 25%) 0 0/28px 28px,linear-gradient(225deg,#29435c09 25%,#0000 25%) 0 0/28px 28px,linear-gradient(90deg,#d9c8a91f 1px,#0000 1px) 0 0/64px 64px,linear-gradient(0deg,#d9c8a91a 1px,#0000 1px) 0 0/64px 64px,linear-gradient(#fffaf1b8,#f4efe6d6);position:fixed;inset:0}.app-shell.view-biblioteca:before{background:linear-gradient(135deg,#29435c0e 25%,#0000 25%) 0 0/32px 32px,linear-gradient(225deg,#8f70400b 25%,#0000 25%) 0 0/32px 32px,linear-gradient(90deg,#d9c8a91a 1px,#0000 1px) 0 0/58px 58px,linear-gradient(#fffaf1bd,#f4efe6e0)}.app-shell.view-presenca:before,.app-shell.view-avaliacoes:before{background:linear-gradient(90deg,#8f70401a 1px,#0000 1px) 0 0/42px 42px,linear-gradient(0deg,#8f704017 1px,#0000 1px) 0 0/42px 42px,linear-gradient(135deg,#0f766e0b 25%,#0000 25%) 0 0/30px 30px,linear-gradient(#fffaf1bd,#f4efe6e0)}.app-shell.view-eventos:before,.app-shell.view-comunicados:before{background:linear-gradient(135deg,#b4232e0e 25%,#0000 25%) 0 0/30px 30px,linear-gradient(225deg,#d977060b 25%,#0000 25%) 0 0/30px 30px,linear-gradient(90deg,#d9c8a91a 1px,#0000 1px) 0 0/60px 60px,linear-gradient(#fffaf1b8,#f4efe6db)}.topbar,.tabs,.panel,.stat-card,.student-card,.record-card,.empty-state,.login-panel,.student-experience{border-color:var(--border);background:linear-gradient(180deg, #ffffffc2, #fffcf5e6), var(--panel-bg);box-shadow:var(--shadow)}.topbar{background:linear-gradient(135deg,#b4232e14,#0000 40%),linear-gradient(225deg,#29435c14,#0000 44%),#fffcf5eb;padding:18px 20px;position:relative;overflow:hidden}.topbar:after{content:"";pointer-events:none;border:16px solid #b4232e0e;border-color:#b4232e0e #29435c0a #8f70400a #b4232e0e;border-radius:999px;width:170px;height:170px;position:absolute;top:-44px;right:280px;transform:rotate(-24deg)}.topbar>*{z-index:1;position:relative}.topbar h1{letter-spacing:0;font-size:2.6rem}.topbar h1,.profile-box strong,.experience-copy h2,.panel>h2,.record-card h2,.student-card h2,.achievement-badge strong,.library-switch strong,.report-head,strong{color:var(--text-h)}.topbar h1+span,.profile-box,.achievement-badge span,.library-switch span,.section-title span,.report-row small,.student-avatar,span,p{color:var(--text)}.student-avatar .student-belt-label{color:var(--avatar-belt-color)}.brand-logo,.brand-mark,.status-pill,.profile-box,.achievement-badge,.detail-grid span,.feature-grid span,.insight,.toolbar,.attendance-row,.progress-row,.report-row,.criteria-grid label,.toggle-row,.library-form,.library-switch button,.medical-box.locked{border-color:var(--border);background:#fffcf5b8}.tabs{background:#fffcf5d1;gap:10px;padding:10px}.tabs button,.segmented button,button{color:#29435c;background:#ffffffb8;border-color:#5c48302e;box-shadow:0 10px 26px -20px #3f322214}.tabs button.active,.segmented button.active,button:hover{color:#fffaf1;background:#b4232e;border-color:#b4232e}.stat-card:before{background:linear-gradient(90deg,#b4232e,#29435c,#b58a42);height:4px}.stat-card strong{color:#b4232e}.panel,.stat-card,.student-card,.record-card,.empty-state,.student-experience{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.panel{padding:18px}.panel>h2{border-bottom:1px solid #5c48301f;padding-bottom:10px}.stat-card{min-height:96px;padding:16px}.student-card,.record-card{background:linear-gradient(180deg, #ffffffd1, #fffcf5eb), var(--panel-bg)}.student-head strong{color:#29435c;background:#29435c14;border-color:#29435c2e}.danger-button{color:#9f1d2a;background:#b4232e14;border-color:#b4232e3d}.bar{background:#29435c1f}.bar span{background:linear-gradient(90deg,#b4232e,#29435c)}label{color:var(--text-h)}input,select,textarea{background:var(--input-bg);color:var(--text-h);border-color:#5c48302e}input:focus,select:focus,textarea:focus{border-color:#b4232e6b;box-shadow:0 0 0 4px #b4232e1a}input::placeholder,textarea::placeholder{color:#94a3b8}.medical-box{background:#b58a421f;border-color:#b58a423d}.insight.warning{background:#b58a4224;border-color:#b58a4247}.insight.success,.library-switch button.active{background:#29435c17;border-color:#29435c3d}.library-switch button{min-height:86px}.library-switch button.active{box-shadow:inset 4px 0 #29435c}.risk-warning{color:#a16207}.risk-success{color:#0f766e}.gamification-stats .stat-card,.dojo-acervo-grid .record-card,.quiz-card,.mission-card,.medal-card{background:linear-gradient(135deg,#29435c0b,#0000 46%),#fffcf5e0}.gamification-grid .panel,.quiz-layout .panel{align-content:start}.medal-card.locked,.mission-card:not(.completed){border-color:#5c483024}.medal-card.unlocked,.mission-card.completed{background:linear-gradient(135deg,#0f766e14,#0000 50%),#fffcf5e6;border-color:#0f766e47}.dojo-current-trail-item.done,.journey-admin-step{background:linear-gradient(135deg,#0f766e0f,#0000 52%),#ffffff9e}.dojo-current-trail-item:not(.done){border-color:#b58a4233}.dojo-study-panel{background:linear-gradient(135deg,#b4232e0f,#0000 46%),#fffcf5e0}.premium-typography,.app-shell{font-weight:450}.app-shell h1{font-weight:720}.app-shell h2,.app-shell strong,.app-shell button,.app-shell label,.app-shell .tabs button,.app-shell .product-nav button strong,.app-shell .stat-card strong,.app-shell .panel>h2,.app-shell .record-card h2,.app-shell .dojo-library-copy h2,.app-shell .guided-journey-head h2,.app-shell .eyebrow,.app-shell .experience-copy>span,.app-shell .guided-journey-head span,.app-shell .dojo-library-copy>span,.app-shell .dojo-room-card>span,.app-shell .dojo-study-content>span,.app-shell .dojo-trail-card>span,.app-shell .nav-group>span,.app-shell .stat-card-head,.app-shell .study-status,.app-shell .risk-badge{font-weight:650}.app-shell .product-nav button small,.app-shell .journey-map button small,.app-shell .learning-profile-summary span,.app-shell .learning-profile-summary p,.app-shell .learning-slider-grid span,.app-shell .form-hint{font-weight:520}.app-shell .student-belt-label,.app-shell .user-avatar strong,.app-shell .journey-map button span,.app-shell .guided-journey-head>strong{font-weight:700}.product-nav{align-items:stretch;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(270px,1fr))}.nav-group{align-content:start;gap:var(--space-2);border-radius:var(--radius-md);padding:var(--space-2);background:#fffcf58a;border:1px solid #5c48301f;display:grid}.nav-group>span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:900}.nav-group>div{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(164px,1fr));display:grid}.product-nav button{align-items:center;gap:0 var(--space-2);text-align:left;grid-template-columns:34px minmax(0,1fr);grid-template-areas:"icon label""icon hint";min-height:66px;display:grid}.product-nav button i,.stat-card-head i{background:var(--color-secondary-soft);width:30px;height:30px;color:var(--color-secondary);border-radius:999px;place-items:center;font-size:.72rem;font-style:normal;font-weight:900;display:grid}.product-nav button i{grid-area:icon}.product-nav button strong{color:inherit;white-space:normal;overflow-wrap:anywhere;grid-area:label;line-height:1.15}.product-nav button small{color:var(--muted);grid-area:hint;font-size:.76rem;font-weight:700;line-height:1.15}.product-nav button.active i,.product-nav button:hover i{color:#fffaf1;background:#fffaf12e}.product-nav button.active small,.product-nav button:hover small{color:#fffaf1d1}.guardian-tour-overlay{z-index:80;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:radial-gradient(circle at 18% 20%,#b4232e2e,#0000 28%),radial-gradient(circle at 82% 72%,#0f766e24,#0000 26%),#201c1861;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.guardian-tour-card{background:linear-gradient(135deg, #fffffff0, #fffcf5f5), var(--panel-bg);width:min(560px,100%);color:var(--text);border:1px solid #5c483029;border-radius:18px;padding:clamp(24px,5vw,38px);position:relative;box-shadow:0 30px 90px -36px #2619133d}.guardian-tour-card>span{color:var(--color-primary);text-transform:uppercase;margin-bottom:10px;font-size:.82rem;font-weight:680;display:inline-flex}.guardian-tour-card h2{color:var(--text-h);margin:0 0 12px;font-size:clamp(1.75rem,4vw,2.4rem);line-height:1.04}.guardian-tour-card p{max-width:46ch;color:var(--text);margin:0;font-size:1.04rem;line-height:1.5}.guardian-tour-close{width:auto;min-height:38px;padding:0 14px;position:absolute;top:16px;right:16px}.guardian-tour-progress{gap:8px;margin:24px 0;display:flex}.guardian-tour-progress button{background:#5c48301f;border:0;border-radius:999px;width:100%;height:8px;min-height:8px;padding:0}.guardian-tour-progress button.done,.guardian-tour-progress button.active{background:linear-gradient(90deg,#b4232e,#29435c)}.guardian-tour-actions{justify-content:space-between;align-items:center;gap:14px;display:flex}.guardian-tour-actions>div{gap:10px;display:flex}.guardian-tour-actions button{width:auto;min-width:118px;min-height:46px;padding:0 18px}.guardian-tour-actions .ghost-button{color:var(--color-secondary);background:#fffcf5b8}.panel,.stat-card,.student-card,.record-card,.dojo-room-card,.dojo-material-card,.immersive-library-card,.achievement-badge,.guided-journey-card{transition:transform var(--motion-fast), box-shadow var(--motion-fast), border-color var(--motion-fast), background var(--motion-fast)}.panel:hover,.stat-card:hover,.record-card:hover,.dojo-room-card:hover,.dojo-material-card:hover,.immersive-library-card:hover,.achievement-badge:hover{border-color:#b4232e3d;transform:translateY(-2px);box-shadow:0 26px 70px -42px #3f32222e}.stat-card{align-content:start;gap:var(--space-2)}.stat-card-head{align-items:center;gap:var(--space-2);color:var(--muted);font-weight:900;display:flex}.stat-card strong{line-height:1}.stat-card em{color:var(--color-secondary);font-style:normal;font-weight:900}.stat-card p{color:var(--muted);font-size:.9rem;line-height:1.35}.student-experience{grid-template-columns:minmax(140px,190px) minmax(0,1fr);min-height:250px;position:relative;overflow:hidden}.student-experience:after{content:"";border:18px solid color-mix(in srgb, var(--belt-secondary) 16%, transparent);border-left-color:color-mix(in srgb, var(--belt-primary) 18%, transparent);pointer-events:none;border-radius:999px;width:220px;height:220px;position:absolute;bottom:-70px;right:-46px}.student-experience>*{z-index:1;position:relative}.experience-copy>span,.guided-journey-head span{letter-spacing:0}.experience-copy h2{font-size:clamp(1.5rem,3vw,2.5rem)}.achievement-badge{background:linear-gradient(135deg, color-mix(in srgb, var(--belt-secondary) 10%, transparent), transparent 54%), #fffcf5c7}.guided-journey-card{background:linear-gradient(135deg,#b4232e1a,#0000 45%),linear-gradient(225deg,#0f766e1c,#0000 46%),#fffcf5f0;border-color:#b4232e33}.guided-journey-card>button{background:var(--color-primary);border-color:var(--color-primary);color:#fffaf1;justify-self:start;min-width:min(320px,100%);min-height:54px}.journey-map button{position:relative}.journey-map button.available{animation:1.8s ease-in-out infinite softPulse}.journey-map button.done span:after{content:"";border-radius:inherit;border:2px solid #0f766e2e;position:absolute;inset:-5px}@keyframes softPulse{0%,to{box-shadow:0 0 #b4232e14}50%{box-shadow:0 0 0 8px #b4232e29}}.app-shell .nav-group>span,.app-shell .product-nav button i,.app-shell .product-nav button small,.app-shell .stat-card-head,.app-shell .stat-card-head i,.app-shell .stat-card em,.app-shell .dojo-library-stats strong,.app-shell .dojo-room-card em,.app-shell .dojo-current-trail-head strong,.app-shell .dojo-current-trail-item>span,.app-shell .immersive-mode-switch span,.app-shell .accessibility-resource-strip span{font-weight:600}.app-shell .student-avatar .student-belt-label,.app-shell .journey-map button span,.app-shell .guided-journey-head>strong{font-weight:680}.app-shell.view-biblioteca .dojo-library-copy h2{font-weight:620}.app-shell.view-biblioteca .dojo-library-copy>span,.app-shell.view-biblioteca .dojo-room-card>span,.app-shell.view-biblioteca .dojo-study-content>span,.app-shell.view-biblioteca .dojo-trail-card>span,.app-shell.view-biblioteca .dojo-current-trail-head span,.app-shell.view-biblioteca .immersive-library-card span,.app-shell.view-biblioteca .immersive-library-card small,.app-shell.view-biblioteca .dojo-material-card>span:first-child,.app-shell.view-biblioteca .study-status,.app-shell.view-biblioteca .dojo-study-mark span,.app-shell.view-biblioteca .dojo-study-tags span{font-weight:560}.app-shell.view-biblioteca .dojo-room-card strong,.app-shell.view-biblioteca .dojo-material-card strong,.app-shell.view-biblioteca .dojo-study-content strong,.app-shell.view-biblioteca .dojo-current-trail-item strong,.app-shell.view-biblioteca .dojo-trail-card strong,.app-shell.view-biblioteca .immersive-library-card h2,.app-shell.view-biblioteca .dojo-current-trail-head h2,.app-shell.view-biblioteca .dojo-study-content h2,.app-shell.view-biblioteca .record-card h2{font-weight:600}.app-shell.view-biblioteca .dojo-library-stats strong,.app-shell.view-biblioteca .dojo-room-card em,.app-shell.view-biblioteca .dojo-current-trail-head strong,.app-shell.view-biblioteca .dojo-current-trail-item>span{font-weight:580}.app-shell.view-biblioteca .library-form label,.app-shell.view-biblioteca .library-accessibility-panel summary span,.app-shell.view-biblioteca .library-accessibility-fields label,.app-shell.view-biblioteca .dojo-trail-items button,.app-shell.view-biblioteca .dojo-current-trail-item button{font-weight:560}.app-shell.view-professores,.app-shell.view-presenca,.app-shell.view-relatorios,.app-shell.view-gamificacao,.app-shell.view-comunicados,.app-shell.view-eventos,.app-shell.view-avaliacoes,.app-shell.view-alunos,.app-shell.view-matriculas,.app-shell.view-cadastro,.app-shell.view-academias{font-weight:440}.app-shell.view-professores h2,.app-shell.view-presenca h2,.app-shell.view-relatorios h2,.app-shell.view-gamificacao h2,.app-shell.view-comunicados h2,.app-shell.view-eventos h2,.app-shell.view-avaliacoes h2,.app-shell.view-alunos h2,.app-shell.view-matriculas h2,.app-shell.view-cadastro h2,.app-shell.view-academias h2,.app-shell.view-professores .panel>h2,.app-shell.view-presenca .panel>h2,.app-shell.view-lutas .panel>h2,.app-shell.view-relatorios .panel>h2,.app-shell.view-gamificacao .panel>h2,.app-shell.view-comunicados .panel>h2,.app-shell.view-eventos .panel>h2,.app-shell.view-avaliacoes .panel>h2,.app-shell.view-alunos .panel>h2,.app-shell.view-matriculas .panel>h2,.app-shell.view-cadastro .panel>h2,.app-shell.view-academias .panel>h2,.app-shell.view-professores .record-card h2,.app-shell.view-presenca .record-card h2,.app-shell.view-lutas .record-card h2,.app-shell.view-relatorios .record-card h2,.app-shell.view-gamificacao .record-card h2,.app-shell.view-comunicados .record-card h2,.app-shell.view-eventos .record-card h2,.app-shell.view-avaliacoes .record-card h2,.app-shell.view-alunos .record-card h2,.app-shell.view-matriculas .record-card h2,.app-shell.view-cadastro .record-card h2,.app-shell.view-academias .record-card h2{font-weight:610}.app-shell.view-professores strong,.app-shell.view-presenca strong,.app-shell.view-relatorios strong,.app-shell.view-gamificacao strong,.app-shell.view-comunicados strong,.app-shell.view-eventos strong,.app-shell.view-avaliacoes strong,.app-shell.view-alunos strong,.app-shell.view-matriculas strong,.app-shell.view-cadastro strong,.app-shell.view-academias strong,.app-shell.view-professores button,.app-shell.view-presenca button,.app-shell.view-lutas button,.app-shell.view-relatorios button,.app-shell.view-gamificacao button,.app-shell.view-comunicados button,.app-shell.view-eventos button,.app-shell.view-avaliacoes button,.app-shell.view-alunos button,.app-shell.view-matriculas button,.app-shell.view-cadastro button,.app-shell.view-academias button,.app-shell.view-professores label,.app-shell.view-presenca label,.app-shell.view-relatorios label,.app-shell.view-gamificacao label,.app-shell.view-comunicados label,.app-shell.view-eventos label,.app-shell.view-avaliacoes label,.app-shell.view-alunos label,.app-shell.view-matriculas label,.app-shell.view-cadastro label,.app-shell.view-academias label,.app-shell.view-presenca .attendance-toolbar span,.app-shell.view-presenca .attendance-student strong,.app-shell.view-presenca .guardian-checkin-card strong,.app-shell.view-relatorios .report-head,.app-shell.view-relatorios .risk-badge,.app-shell.view-relatorios .report-stats .stat-card strong,.app-shell.view-avaliacoes .criterion-card small,.app-shell.view-avaliacoes .evaluation-card-head>span,.app-shell.view-gamificacao .guided-journey-head span,.app-shell.view-gamificacao .journey-admin-card>.section-title span,.app-shell.view-gamificacao .journey-map button span,.app-shell.view-gamificacao .journey-map button small,.app-shell.view-gamificacao .quiz-question legend,.app-shell.view-gamificacao .quiz-card-head strong,.app-shell.view-gamificacao .learning-profile-summary span,.app-shell.view-gamificacao .learning-profile-summary p,.app-shell.view-gamificacao .accessibility-resource-strip span,.app-shell.view-gamificacao .immersive-mode-switch span,.app-shell.view-comunicados .announcement-badges span,.app-shell.view-comunicados .announcement-channel strong,.app-shell.view-eventos .event-card-head>span,.app-shell.view-eventos .event-card-head>strong,.app-shell.view-eventos .event-map-link,.app-shell.view-eventos .event-meta-grid strong,.app-shell.view-professores .student-head strong,.app-shell.view-alunos .student-head strong,.app-shell.view-matriculas .enrollment-request-grid strong,.app-shell.view-cadastro .form-section legend,.app-shell.view-academias .academy-card strong{font-weight:560}.app-shell.view-gamificacao .guided-journey-head>strong,.app-shell.view-gamificacao .guided-journey-stats strong,.app-shell.view-gamificacao .stat-card strong,.app-shell.view-relatorios .stat-card strong{font-weight:620}.app-shell.view-comunicados .announcement-meta,.app-shell.view-eventos .event-meta-grid span,.app-shell.view-avaliacoes .evaluation-meta,.app-shell.view-relatorios .report-row small,.app-shell.view-presenca .attendance-student span,.app-shell.view-presenca .attendance-student small,.app-shell.view-gamificacao .quiz-card small,.app-shell.view-gamificacao .journey-admin-step span,.app-shell.view-gamificacao .journey-admin-step small{font-weight:430}.app-shell.view-dashboard,.app-shell.view-dashboard strong,.app-shell.view-dashboard button,.app-shell.view-dashboard label,.app-shell.view-cadastro .student-form,.app-shell.view-cadastro .student-form strong,.app-shell.view-cadastro .student-form button,.app-shell.view-cadastro .student-form label,.app-shell.view-eventos .event-card,.app-shell.view-eventos .event-card strong,.app-shell.view-eventos .event-card button,.app-shell.view-eventos .event-form label,.app-shell.view-eventos .event-form button{font-weight:520}.app-shell.view-dashboard h2,.app-shell.view-dashboard .experience-copy h2,.app-shell.view-dashboard .panel>h2,.app-shell.view-dashboard .record-card h2,.app-shell.view-dashboard .stat-card strong,.app-shell.view-dashboard .achievement-badge strong,.app-shell.view-cadastro .form-section legend,.app-shell.view-cadastro .panel>h2,.app-shell.view-cadastro h2,.app-shell.view-eventos .panel>h2,.app-shell.view-eventos .event-card h2{font-weight:590}.app-shell.view-dashboard .topbar h1{font-weight:620}.app-shell.view-dashboard .experience-copy>span,.app-shell.view-dashboard .achievement-badge span,.app-shell.view-dashboard .stat-card-head,.app-shell.view-dashboard .stat-card-head i,.app-shell.view-dashboard .stat-card em,.app-shell.view-dashboard .guided-journey-head span,.app-shell.view-dashboard .guided-journey-stats strong,.app-shell.view-dashboard .learning-profile-summary strong,.app-shell.view-cadastro .form-section legend,.app-shell.view-cadastro .toggle-row span,.app-shell.view-cadastro .learning-profile-summary strong,.app-shell.view-eventos .event-card-head>span,.app-shell.view-eventos .event-card-head>strong,.app-shell.view-eventos .event-meta-grid strong,.app-shell.view-eventos .event-map-link{font-weight:560}.app-shell.view-dashboard .stat-card p,.app-shell.view-dashboard .guided-journey-head p,.app-shell.view-dashboard .guided-journey-stats span,.app-shell.view-dashboard .learning-profile-summary span,.app-shell.view-dashboard .learning-profile-summary p,.app-shell.view-cadastro .form-hint,.app-shell.view-cadastro .learning-slider-grid span,.app-shell.view-eventos .event-meta-grid span,.app-shell.view-eventos .event-card p{font-weight:430}@media (width<=1180px){.gallery-hero{grid-template-columns:1fr}.gallery-hero-mosaic{grid-column:1;min-height:250px}.gallery-hero-mosaic button:nth-child(n){height:58%}.gallery-hero-stats{grid-column:1;grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-admin-grid{grid-template-columns:1fr}.stats-grid,.dashboard-grid,.student-grid,.medal-grid,.gamification-settings-form,.gamification-config-grid,.journey-editor-layout,.guided-journey-stats,.learning-profile-summary,.learning-slider-grid,.library-accessibility-fields,.quiz-layout,.dojo-room-grid,.dojo-trail-grid,.library-grid,.tabs,.product-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.app-shell,.app-shell *{box-sizing:border-box;max-width:100%}.gallery-hero{min-height:auto;padding:16px}.gallery-hero-media{height:220px}.gallery-hero-copy h2{font-size:2rem}.gallery-hero-search input{border-radius:8px}.gallery-hero-mosaic{min-height:210px}.gallery-hero-mosaic:before,.gallery-hero-mosaic:after{display:none}.gallery-hero-mosaic button{border-width:4px}.gallery-hero-mosaic button:first-child{width:62%;height:58%;top:8%;left:0}.gallery-hero-mosaic button:nth-child(2){width:48%;height:54%;top:22%;right:0}.gallery-hero-mosaic button:nth-child(3),.gallery-hero-mosaic button:nth-child(4),.gallery-hero-mosaic button:nth-child(5),.gallery-hero-mosaic button:nth-child(6){display:none}.gallery-hero-stats,.gallery-admin-card{grid-template-columns:1fr}.gallery-album-header{flex-direction:column;align-items:stretch}.gallery-lightbox{grid-template-columns:1fr;padding:14px}.gallery-lightbox-tools{order:-1;grid-template-columns:1fr 1fr;display:grid;position:static}.gallery-lightbox-nav{width:100%}.reward-toast{border-radius:14px;width:auto;padding:12px;top:12px;left:12px;right:12px}.reward-orb{width:48px;height:48px}.reward-toast-copy>span{white-space:normal}.app-shell{padding:14px;overflow-x:hidden}.topbar,.auth-layout,.enrollment-layout,.dojo-library-hero,.dojo-library-stats,.dojo-room-grid,.dojo-study-panel,.immersive-chapter,.immersive-actions,.dojo-current-trail-head,.dojo-current-trail-item,.dojo-trail-grid,.stats-grid,.dashboard-grid,.student-grid,.student-experience,.access-experience,.library-grid,.detail-grid,.feature-grid,.toolbar,.library-switch,.library-form,.academy-form,.attendance-quick-actions,.attendance-row,.attendance-toolbar,.guardian-checkin-actions,.guardian-checkin-grid,.guardian-checkin-toolbar,.events-layout,.events-grid,.event-meta-grid,.medal-grid,.gamification-settings-form,.gamification-config-grid,.journey-editor-layout,.guided-journey-head,.guided-journey-stats,.learning-profile-summary,.learning-slider-grid,.library-accessibility-fields,.quiz-layout,.config-inline-grid,.quiz-result-card>div:first-child,.mission-card>div:first-child,.gamification-progress-card>div:first-child,.report-actions,.report-row,.enrollment-filters,.enrollment-request-grid,.student-summary-grid,.form-actions,.form-section,.student-form,.student-form.medical-section,.criteria-grid{grid-template-columns:1fr}label,input,select,textarea,button{min-width:0}label{overflow-wrap:normal;word-break:normal}.library-form{gap:12px;padding:12px}.library-form label,.library-form .form-section,.library-form button{grid-column:1/-1}.library-form input,.library-form select,.library-form textarea{min-height:48px;font-size:1rem}.library-accessibility-panel{padding:12px}.library-accessibility-panel summary{gap:4px 10px}.library-accessibility-panel summary span{font-size:1rem;line-height:1.15}.library-accessibility-panel summary small{font-size:.9rem}.library-accessibility-fields{grid-template-columns:1fr;padding:10px}.tabs,.product-nav,.nav-group>div{grid-template-columns:1fr}.product-nav button{grid-template-columns:36px minmax(0,1fr);min-height:62px}.guardian-tour-overlay{align-items:end;padding:14px}.guardian-tour-card{border-radius:16px;padding:24px 18px 18px}.guardian-tour-close{min-height:34px;padding:0 10px;font-size:.86rem;top:12px;right:12px}.guardian-tour-actions,.guardian-tour-actions>div{grid-template-columns:1fr;width:100%;display:grid}.guardian-tour-actions button{width:100%}.topbar{padding:16px}.topbar:after{display:none}.guided-journey-card{padding:16px}.guided-journey-head>strong{width:68px;height:68px;font-size:1.22rem}.journey-map{grid-template-columns:repeat(2,minmax(0,1fr))}.journey-rpg-map{padding:18px 12px;display:block}.journey-rpg-map:before{display:none}.journey-checkpoint-track{min-width:max(720px, calc(var(--journey-steps,6) * 150px + 160px));height:240px}.journey-checkpoint{left:calc(16px + var(--node-index) * 150px);grid-template-columns:auto minmax(112px,148px);justify-self:auto;width:auto;margin:0}.journey-rpg-map .checkpoint-orb{width:48px;height:48px}.journey-checkpoint-finish{left:calc(54px + var(--journey-steps,6) * 150px)}.journey-rpg-map{min-height:374px}.journey-rpg-map .journey-checkpoint-track,.journey-rpg-map .journey-map-scenery{min-width:max(980px, calc(var(--journey-steps,6) * 150px + 230px));height:320px}.journey-rpg-map .journey-map-path{inset:42px 64px 46px 44px}.journey-rpg-map .journey-checkpoint{left:var(--node-x);top:var(--node-y);grid-template-columns:1fr;width:132px;transform:translate(-50%)}.journey-rpg-map .checkpoint-orb{width:58px;height:58px;font-size:1.36rem}.journey-rpg-map .checkpoint-card{padding:8px}.journey-rpg-map .checkpoint-card strong{font-size:.8rem}.journey-rpg-map .journey-checkpoint-finish{top:46px;left:94%}.topbar h1{font-size:2rem}.status-pill,.profile-box{box-sizing:border-box;width:100%;min-width:0}.attendance-toolbar span{text-align:center;justify-self:stretch}.attendance-actions{grid-template-columns:1fr}.immersive-overlay{padding:8px}.immersive-shell{border-radius:8px}.immersive-topbar{flex-direction:column;align-items:start}.immersive-topbar-actions{grid-template-columns:1fr;width:100%;display:grid}.immersive-topbar button{width:100%}.immersive-chapter{overflow-y:auto}.immersive-visual{min-height:260px}.immersive-visual:after{background:linear-gradient(#0000,#101820db),radial-gradient(circle at 35% 34%,#fffcf524,#0000 26%)}.immersive-copy{padding:24px}.report-head{display:none}.athlete-report-row{gap:8px}.risk-badge{text-align:center;justify-self:stretch}.demo-grid,.student-actions,.segmented{grid-template-columns:1fr}.auth-visual{min-height:280px;padding:22px}.auth-shell{place-items:start center;width:100%;min-height:100dvh;padding:12px}.auth-layout,.login-layout{gap:12px;width:100%}.auth-layout>*,.login-layout>*{min-width:0}.login-layout .auth-visual{align-content:start;gap:12px;min-height:auto;padding:26px 24px 28px}.login-layout .auth-visual:before{inset:18px}.enso-mark{border-width:13px;width:118px;height:118px;top:28px}.login-layout .enso-mark{border-width:10px;width:92px;height:92px;top:34px;left:34px}.login-layout .auth-visual h1{margin-top:2px;font-size:2.15rem;line-height:1.02}.login-layout .auth-visual>p:not(.eyebrow){padding-right:4px;font-size:.95rem;line-height:1.35}.auth-lotus-logo{width:150px;margin-bottom:24px}.login-layout .auth-lotus-logo{z-index:1;opacity:.96;width:min(220px,70%);margin:0 auto 18px;position:relative;top:auto;left:auto;transform:none}.login-panel,.login-layout .login-card{gap:16px;width:100%;min-height:auto;padding:20px 16px}.login-layout .login-heading h2{font-size:1.8rem}.login-layout .evaluation-form input,.login-layout .evaluation-form button[type=submit]{min-height:50px}.login-panel.public-enrollment{max-height:none}.auth-visual-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.auth-visual-grid span{min-height:42px;padding:8px 6px;font-size:.9rem}}
