.academy-hero{position:relative;background:var(--night);border-bottom:1px solid var(--line);overflow:hidden}.academy-hero-art{position:absolute;inset:0;opacity:.32}.academy-hero-art img{object-fit:cover}.academy-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,16,23,.95),rgba(12,16,23,.7) 55%,rgba(12,16,23,.35))}.academy-hero-inner{position:relative;z-index:1;padding-block:var(--s8) var(--s7)}.academy-hero h1{font-size:var(--fs-display);line-height:var(--lh-tight);letter-spacing:var(--track-display);max-width:14ch}.academy-hero .lede{margin-top:var(--s4)}.resume{--frame-fill:#191c24;display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:var(--s4);gap:var(--s4);padding:var(--s4) var(--s5);margin-bottom:var(--s6);color:var(--text);text-decoration:none}.resume svg:first-child{color:var(--gold-bright)}.resume small{display:block;color:var(--text-3);font-size:var(--fs-xs)}.resume:hover{--frame-line:var(--gold);color:var(--text)}.module-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:var(--s4);gap:var(--s4)}.module-card{display:grid;grid-template-rows:auto 1fr;height:100%;text-decoration:none;color:var(--text);background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:0 0 var(--radius) var(--radius);overflow:hidden}.module-card:focus-within,.module-card:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));border-top-color:var(--accent);color:var(--text)}.module-card{grid-template-rows:auto auto 1fr}.module-art-link{display:block}.module-body{text-decoration:none}.module-body,.module-body:hover{color:var(--text)}.spec-toggle{display:flex;gap:4px;padding:var(--s2) var(--s4) 0;flex-wrap:wrap}.spec-toggle button{flex:1 1;min-height:34px;padding:4px 10px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-2);color:var(--text-2);font-size:var(--fs-xs);font-weight:700;white-space:nowrap}.spec-toggle button:hover:not(:disabled){color:var(--text);border-color:color-mix(in srgb,var(--accent) 60%,var(--line-strong))}.spec-toggle button[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 22%,var(--surface-2));border-color:var(--accent);color:var(--text)}.spec-toggle button:disabled{opacity:.5;cursor:not-allowed}.spec-toggle small{font-weight:600;color:var(--text-3)}.module-art{aspect-ratio:2/1}.module-body{padding:var(--s4) var(--s5) var(--s5);display:grid;grid-gap:var(--s2);gap:var(--s2);align-content:start}.module-title{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s3)}.module-title h3{font-size:var(--fs-l)}.module-title h3 span{display:block;font-size:var(--fs-s);color:var(--accent);font-weight:650}.module-mastery{display:flex;justify-content:space-between;align-items:baseline;font-weight:700}.module-body .text-link,.module-mastery{margin-top:var(--s2)}.soon-grid{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.soon-grid li{display:grid;grid-template-columns:200px 1fr;grid-gap:var(--s4);gap:var(--s4);padding:var(--s3) 0;border-bottom:1px solid var(--line);align-items:center}.soon-class{font-weight:700;display:inline-flex;gap:8px;align-items:center}.soon-class span{color:var(--accent)}.soon-specs{display:flex;gap:var(--s2);flex-wrap:wrap}.soon-spec{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px dashed var(--line-strong);border-radius:var(--radius);color:var(--text-3);font-size:var(--fs-s)}.soon-spec small{font-size:var(--fs-xs);color:var(--text-3);opacity:.8}@media (max-width:640px){.soon-grid li{grid-template-columns:1fr;gap:var(--s2)}}.ach-grid{list-style:none;padding:0;margin:0;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:var(--s3)}.ach,.ach-grid{display:grid;gap:var(--s3)}.ach{grid-template-columns:40px 1fr;grid-gap:var(--s3);align-items:center;padding:var(--s3) var(--s4);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text-3)}.ach strong{display:block;color:var(--text-2);font-size:var(--fs-s)}.ach small{font-size:var(--fs-xs)}.ach-glyph{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line-strong);transform:rotate(45deg) scale(.8)}.ach-glyph,.ach-glyph *{font-size:1rem}.ach.is-on{border-color:var(--gold-dim);color:var(--text-2)}.ach.is-on .ach-glyph,.ach.is-on strong{color:var(--gold-bright)}.ach.is-on .ach-glyph{border-color:var(--gold);background:rgba(198,161,91,.14)}.trainer-wrap{max-width:920px;padding-block:var(--s5) var(--s8)}.trainer-head .back-link{margin-bottom:var(--s3)}.trainer-title{display:flex;align-items:center;gap:var(--s3);flex-wrap:wrap}.trainer-title h1{font-size:var(--fs-2xl);letter-spacing:-.02em}.trainer-glyph{width:44px;height:44px;display:grid;place-items:center;font-size:1.3rem;color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,var(--night));border:1px solid color-mix(in srgb,var(--accent) 55%,transparent);border-radius:var(--radius)}.trainer-head>.fine{margin-top:6px}.lesson-path{margin:var(--s5) 0 var(--s4);overflow-x:auto;scrollbar-width:thin}.lesson-path ol{list-style:none;margin:0;padding:2px 2px 6px;display:flex;gap:6px}.step{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px 0 6px;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface);color:var(--text-2);font-size:var(--fs-s);font-weight:600;white-space:nowrap;text-decoration:none}.step:hover{color:var(--text);border-color:var(--gold-dim)}.step-num{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--surface-3);font-size:var(--fs-xs);font-weight:700;flex-shrink:0}.step[data-done] .step-num{background:rgba(140,194,143,.18);color:var(--great)}.step[aria-current=step]{border-color:var(--gold);color:var(--text);background:#1d1f27}.step[aria-current=step] .step-num{background:var(--gold);color:var(--gold-ink)}.step.is-locked,.step.is-soon{opacity:.6}.step.is-soon{border-style:dashed;cursor:default}.preview-note{font-size:var(--fs-s);color:#c9b8ef;margin-bottom:var(--s3)}.stage{--frame-fill:#121822;--c:14px;padding:var(--s5) var(--s6) var(--s5);display:grid;grid-gap:var(--s4);gap:var(--s4)}.stage-top{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s4)}.stage-kicker{font-size:var(--fs-xs);color:var(--text-3);font-weight:600}.stage-top h2{font-size:var(--fs-xl)}.stage-target{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:#2a1a1a;border:1px solid #5a2f2f;color:#f0b4aa;font-weight:600;white-space:nowrap}.goals,.stage-target{font-size:var(--fs-s)}.goals{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 16px;color:var(--text-2)}.goals li{display:inline-flex;align-items:center;gap:6px}.goals li svg{color:var(--text-3)}.goals li.is-done{color:var(--text)}.goals li.is-done svg{color:var(--great)}.stage-progress{display:grid;grid-template-columns:1fr auto;grid-gap:var(--s3);gap:var(--s3);align-items:center}.stage-progress .meter{height:4px}.event-banner{padding:10px 14px;border:1px solid var(--gold-dim);background:rgba(198,161,91,.1);color:var(--gold-bright);border-radius:var(--radius);font-weight:650;font-size:var(--fs-s);animation:event-in .3s var(--ease)}@keyframes event-in{0%{opacity:0;transform:translateY(-4px)}}.res{display:grid;grid-template-columns:150px 1fr 64px;grid-gap:var(--s3);gap:var(--s3);align-items:center;font-size:var(--fs-s)}.res-name{color:var(--text-2)}.res-val{text-align:right}.res-pips{display:flex;gap:4px}.res-pips i{flex:1 1;height:14px;background:var(--surface-3);transform:skewX(-18deg);transition:background var(--dur) var(--ease)}.res-pips i.on{background:var(--res)}.res-bar{display:block;height:14px;background:var(--surface-3);overflow:hidden}.res-bar span{display:block;height:100%;background:var(--res);transition:width .25s var(--ease)}.auras{display:flex;flex-wrap:wrap;gap:var(--s2)}.aura{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--radius-s);font-size:var(--fs-s);font-weight:650;background:var(--surface-3);border:1px solid var(--line-strong)}.aura-proc{border-color:var(--gold);background:rgba(198,161,91,.14);color:var(--gold-bright);animation:proc-in .4s var(--ease)}@keyframes proc-in{0%{box-shadow:0 0 0 4px rgba(224,193,130,.45)}}.bar{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));grid-gap:var(--s3);gap:var(--s3);padding-top:var(--s4);border-top:1px solid var(--line)}.bar,.key{display:grid}.key{justify-items:center;grid-gap:6px;gap:6px;padding:0;border:0;background:transparent;color:var(--text);text-align:center}.key-icon{position:relative;width:100%;max-width:80px;aspect-ratio:1;display:grid;place-items:center;font-size:1.8rem;background:color-mix(in srgb,var(--hue,#888) 30%,#0d121a);border:1px solid color-mix(in srgb,var(--hue,#888) 55%,#000);border-radius:var(--radius);overflow:hidden;transition:transform 90ms var(--ease),box-shadow var(--dur) var(--ease)}.key:not(:disabled):hover .key-icon{box-shadow:0 0 0 2px var(--line-strong)}.key:not(:disabled):active .key-icon{transform:scale(.95)}.key:focus-visible{outline:none}.key:focus-visible .key-icon{box-shadow:var(--focus)}.key.is-suggested .key-icon{box-shadow:0 0 0 3px var(--gold-bright),0 0 22px -4px var(--gold)}.key.is-suggested .key-name{color:var(--gold-bright)}.key:disabled{cursor:not-allowed}.key:disabled .key-icon>span{filter:grayscale(.85) brightness(.5)}.key:disabled .key-name{color:var(--text-3)}.key.is-cooling .key-icon:after{content:"";position:absolute;inset:0;background:conic-gradient(rgba(5,8,12,.72) calc(var(--cd) * 1turn),rgba(5,8,12,.35) 0)}.cd-num{font-size:1.3rem}.cd-num,.charges{position:absolute;z-index:1;color:#fff;text-shadow:0 1px 2px #000}.charges{right:5px;bottom:3px;font-style:normal;font-size:var(--fs-xs);font-weight:800}.key kbd{position:absolute;z-index:1;top:3px;left:6px;font-family:var(--font);font-size:11px;font-weight:700;color:rgba(255,255,255,.7)}.key-name{font-size:var(--fs-xs);font-weight:650;line-height:1.25}.coach{padding:var(--s3) var(--s4);border-radius:var(--radius);background:var(--surface);border-left:4px solid var(--line-strong);min-height:52px;font-size:var(--fs-s);color:var(--text-2)}.coach strong{color:var(--text)}.coach-great{border-left-color:var(--great)}.coach-great strong{color:var(--great)}.coach-good{border-left-color:var(--good)}.coach-good strong{color:var(--good)}.coach-learn{border-left-color:var(--learn)}.coach-learn strong{color:var(--learn)}.coach-note{color:var(--text-3)}.stage-foot{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap}.stage-foot .switch{margin-right:auto}.switch{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:var(--fs-s);color:var(--text-2);cursor:pointer}.switch input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:36px;height:20px;border-radius:999px;background:var(--surface-3);border:1px solid var(--line-strong);position:relative;cursor:pointer;transition:background var(--dur) var(--ease)}.switch input:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--text-2);transition:transform var(--dur) var(--ease)}.switch input:checked{background:var(--gold);border-color:var(--gold)}.switch input:checked:after{transform:translateX(16px);background:var(--gold-ink)}.switch input:focus-visible{outline:2px solid var(--gold-bright);outline-offset:2px}.switch.is-disabled{cursor:default;color:var(--text-3)}.done{display:grid;grid-gap:var(--s4);gap:var(--s4);padding-top:var(--s4);border-top:1px solid var(--line)}.done-score{display:flex;align-items:center;gap:var(--s4)}.done-score strong{font-size:3.2rem;line-height:1;font-weight:800;color:var(--gold-bright)}.done-score b{display:block;font-size:var(--fs-l);color:var(--text)}.done ul,.done-score span{color:var(--text-2)}.done ul{margin:0;padding-left:1.2em;display:grid;grid-gap:4px;gap:4px}.done-actions{display:flex;gap:var(--s3);flex-wrap:wrap}.recap{display:grid;grid-gap:var(--s3);gap:var(--s3);padding:var(--s4);background:var(--surface-2);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:var(--radius)}.recap-loading{gap:var(--s2);color:var(--text-3);font-size:var(--fs-s)}.recap-label,.recap-loading{display:flex;align-items:center}.recap-label{gap:6px;margin:0;font-size:var(--fs-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-bright)}.recap dl{display:grid;grid-gap:var(--s2);gap:var(--s2);margin:0}.recap dl>div{display:grid;grid-template-columns:7.5rem 1fr;grid-gap:var(--s3);gap:var(--s3)}.recap dt{color:var(--text-3);font-size:var(--fs-s)}.recap dd{margin:0;color:var(--text)}.recap .fine{margin:0}@media (max-width:560px){.recap dl>div{grid-template-columns:1fr;gap:2px}}.recap-progress{display:flex;align-items:center;gap:var(--s2);margin:0;color:var(--great);font-weight:600;font-size:var(--fs-s)}.recap-sub{margin:0 0 var(--s1);color:var(--text-3);font-size:var(--fs-s)}.recap-moments ol{padding-left:1.2em;display:grid;grid-gap:6px;color:var(--text-2)}.recap-locked,.recap-moments ol{margin:0;gap:6px;font-size:var(--fs-s)}.recap-locked{display:flex;align-items:center;flex-wrap:wrap;color:var(--text-3)}.recap-drill{justify-self:start}.coach-chat{display:grid;grid-gap:var(--s3);gap:var(--s3);margin-top:var(--s5)}.coach-chat>summary{display:flex;align-items:center;gap:var(--s2);cursor:pointer;font-weight:700;color:var(--text)}.coach-chat[open]>summary{margin-bottom:var(--s3)}.coach-chat>.fine,.coach-chat>p,.coach-turns{margin:0 0 var(--s3)}.coach-turns{list-style:none;padding:0;display:grid;grid-gap:var(--s4);gap:var(--s4)}.coach-q{justify-self:end;margin:0 0 var(--s2) auto;max-width:80%;width:-moz-fit-content;width:fit-content;padding:var(--s2) var(--s3);background:var(--surface-3);color:var(--text)}.coach-a,.coach-q{border-radius:var(--radius)}.coach-a{padding:var(--s3);border-left:3px solid var(--gold);background:var(--surface-2);color:var(--text-2)}.coach-a p{margin:0 0 var(--s2);white-space:pre-line}.coach-a p:last-child{margin-bottom:0}.coach-suggest{display:flex;flex-wrap:wrap;gap:var(--s2);margin-bottom:var(--s3)}.coach-suggest .chip{cursor:pointer}.coach-form{display:grid;grid-template-columns:1fr auto;grid-gap:var(--s2);gap:var(--s2)}@media (max-width:560px){.coach-form{grid-template-columns:1fr}}.feedback{display:grid;grid-gap:var(--s3);gap:var(--s3);padding:var(--s4) var(--s5);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.feedback h3{display:flex;align-items:center;gap:8px;font-size:var(--fs-base)}.feedback h3 svg{color:var(--gold-bright)}.feedback-ratings,.feedback-tags{display:flex;flex-wrap:wrap;gap:var(--s2)}.tag-toggle{min-height:34px;padding:0 12px;border-radius:var(--radius);border:1px dashed var(--line-strong);background:transparent;color:var(--text-2);font-size:var(--fs-xs);font-weight:600}.tag-toggle:hover{color:var(--text)}.tag-toggle[aria-pressed=true]{border-style:solid;border-color:var(--gold-dim);color:var(--gold-bright);background:rgba(198,161,91,.1)}.feedback textarea{width:100%;resize:vertical;min-height:80px;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--radius);padding:10px 12px;line-height:1.5}.feedback textarea:focus{outline:none;border-color:var(--gold-dim)}.feedback-foot{display:flex;justify-content:space-between;align-items:center;gap:var(--s3);flex-wrap:wrap}.feedback-error{color:var(--danger);font-size:var(--fs-s)}.feedback-sent{grid-template-columns:auto 1fr auto;align-items:center;border-color:#4a7a52}.feedback-sent>svg{color:var(--great)}.feedback-sent p{color:var(--text-2);font-size:var(--fs-s)}.hp-field{position:absolute;left:-10000px;width:1px;height:1px;opacity:0}.trainer-save{margin-top:var(--s3)}.about{margin-top:var(--s6);border-top:1px solid var(--line);padding-top:var(--s4)}.about summary{cursor:pointer;font-weight:700;min-height:32px;color:var(--text-2)}.about summary:hover{color:var(--text)}.about-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--s5);gap:var(--s5);margin-top:var(--s3)}.about h3{font-size:var(--fs-s);margin:var(--s3) 0 var(--s2);color:var(--gold-bright)}.about ol,.about ul{margin:0;padding-left:1.2em;color:var(--text-2);font-size:var(--fs-s);display:grid;grid-gap:4px;gap:4px}.about strong{color:var(--text)}.module-feedback{margin-top:var(--s5)}@media (max-width:720px){.stage{padding:var(--s4);--c:10px}.stage-top{flex-direction:column;gap:var(--s2)}.res{grid-template-columns:1fr auto}.res-bar,.res-pips{grid-column:1/-1;grid-row:2}.bar{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s2)}.key-icon{font-size:1.5rem}.key kbd{display:none}.about-grid{grid-template-columns:1fr}.feedback{padding:var(--s4)}}.academy-hero-inner{padding-block:var(--s7) var(--s6)}.academy-hero h1{font-size:clamp(2.2rem,5vw,3.6rem);max-width:16ch}.soon summary{cursor:pointer;font-weight:700;font-size:var(--fs-m);min-height:32px}.ach-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--s2)}.ach{padding:var(--s2) var(--s3);grid-template-columns:32px 1fr}.ach-glyph{width:32px;height:32px}.ach small{display:block;line-height:1.35}.module-feedback{border-top:1px solid var(--line);padding-top:var(--s4)}.module-feedback summary{cursor:pointer;font-weight:700;min-height:32px;color:var(--gold-bright)}.module-feedback[open] summary{margin-bottom:var(--s3)}.about+.module-feedback{margin-top:var(--s4)}.lesson-path{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent)}.trainer.is-editing-bars .trainer-wrap{max-width:1200px}.bars-area{display:grid;grid-gap:var(--s5);gap:var(--s5);padding-top:var(--s4);border-top:1px solid var(--line)}.bars-area.is-editing{grid-template-columns:minmax(0,1fr) 280px;align-items:start}.bars-main{display:grid;grid-gap:var(--s3);gap:var(--s3);min-width:0}.bars-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3)}.bars-toolbar .fine{margin-left:auto}.btn-sm{padding:6px 12px;font-size:var(--fs-xs);gap:6px}.link-button{padding:0;border:0;background:none;color:var(--gold-bright);font:inherit;text-decoration:underline;cursor:pointer}.bars-help,.bars-status{margin:0}.bars-status:empty{display:none}.stepper{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--text-2)}.stepper-label{margin-right:2px}.stepper output{min-width:2ch;text-align:center;font-weight:700;color:var(--text)}.stepper-btn{display:grid;place-items:center;width:24px;height:24px;padding:0;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);color:var(--text)}.stepper-btn:disabled{opacity:.4}.bars{display:grid;grid-gap:var(--s2);gap:var(--s2);padding:var(--s2);border:1px solid var(--line);border-radius:var(--radius);background:rgba(5,8,12,.45)}.bar-row{display:grid;grid-template-columns:repeat(var(--per-row,8),minmax(0,1fr));grid-gap:4px;gap:4px}.slot{position:relative;min-width:0}.slot .slot-icon{position:relative;display:grid;place-items:center;width:100%;max-width:none;aspect-ratio:1;font-size:clamp(1rem,2.4vw,1.6rem);border-radius:4px}.slot.is-empty .slot-icon{background:rgba(255,255,255,.025);border:1px dashed var(--line)}.slot.is-empty kbd,.slot.key kbd{position:absolute;z-index:1;top:2px;right:4px;left:auto;font-family:var(--font);font-size:10px;font-weight:700;color:rgba(255,255,255,.75);text-shadow:0 1px 2px #000}.slot.is-empty kbd{color:var(--text-3)}.slot.key{gap:3px}.slot .key-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.slot.is-edit .slot-icon{padding:0;color:var(--text);background:color-mix(in srgb,var(--hue,#888) 30%,#0d121a);border:1px solid color-mix(in srgb,var(--hue,#888) 55%,#000);cursor:-webkit-grab;cursor:grab}.slot.is-edit.is-empty .slot-icon{background:rgba(255,255,255,.025);border:1px dashed var(--line-strong);cursor:default}.slot.is-edit.is-target .slot-icon{border-color:var(--gold);cursor:copy}.slot-key{position:absolute;z-index:1;top:2px;right:2px;min-width:18px;padding:1px 4px;border:1px solid var(--line-strong);border-radius:3px;background:rgba(5,8,12,.85);color:var(--text);font-size:10px;font-weight:700;line-height:1.3}.slot-key.is-capturing,.slot-key:hover{border-color:var(--gold-bright);color:var(--gold-bright)}.slot-clear{position:absolute;z-index:1;bottom:2px;right:2px;display:grid;place-items:center;width:16px;height:16px;padding:0;border:0;border-radius:3px;background:rgba(5,8,12,.8);color:var(--text-2);opacity:0}.slot-clear:focus-visible,.slot.is-edit:hover .slot-clear{opacity:1}.spell-bank{padding:var(--s4);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.spell-bank h3{margin:0;font-size:var(--fs-m,1rem)}.spell-bank>.fine{margin:2px 0 var(--s3)}.spell-bank ul{list-style:none;margin:0;padding:0;display:grid;grid-gap:4px;gap:4px;max-height:460px;overflow-y:auto}.bank-spell{display:grid;grid-template-columns:36px 1fr;align-items:center;grid-gap:var(--s3);gap:var(--s3);width:100%;padding:4px;border:1px solid transparent;border-radius:var(--radius);background:transparent;color:var(--text);text-align:left;cursor:-webkit-grab;cursor:grab}.bank-spell:hover{background:var(--surface-2)}.bank-spell[aria-pressed=true]{border-color:var(--gold);background:var(--surface-2)}.bank-icon{display:grid;place-items:center;width:36px;height:36px;font-size:1.2rem;border-radius:4px;background:color-mix(in srgb,var(--hue,#888) 30%,#0d121a);border:1px solid color-mix(in srgb,var(--hue,#888) 55%,#000)}.bank-copy{display:grid;min-width:0}.bank-copy strong{font-size:var(--fs-s)}.bank-copy span{font-size:11px;color:var(--text-3)}.bank-spell.is-missing{border-color:#c4553f;background:rgba(196,85,63,.12);animation:missing-pulse 1.6s var(--ease) infinite}.bank-spell.is-missing .bank-copy span{color:#ec8a74;font-weight:700}@keyframes missing-pulse{50%{box-shadow:0 0 0 3px rgba(196,85,63,.25)}}.bars-status.is-blocking{padding:var(--s2) var(--s3);border-left:3px solid #c4553f;border-radius:var(--radius);background:rgba(196,85,63,.1);color:var(--text)}@media (max-width:900px){.bars-area.is-editing{grid-template-columns:1fr}}@media (max-width:720px){.bar-row{grid-template-columns:repeat(min(var(--per-row,8),6),minmax(0,1fr))}.bars-toolbar .fine,.slot .key-name{display:none}}@font-face{font-family:Noto Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/noto-sans-cyrillic-ext-wght-normal.ced7f40b.woff2) format("woff2-variations");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Noto Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/noto-sans-cyrillic-wght-normal.56471747.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Noto Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/noto-sans-devanagari-wght-normal.90412b4c.woff2) format("woff2-variations");unicode-range:u+0900-097f,u+1cd0-1cf9,u+200c-200d,u+20a8,u+20b9,u+20f0,u+25cc,u+a830-a839,u+a8e0-a8ff,u+11b00-11b09}@font-face{font-family:Noto Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/noto-sans-greek-ext-wght-normal.6a0bbd3e.woff2) format("woff2-variations");unicode-range:u+1f??}@font-face{font-family:Noto Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/noto-sans-greek-wght-normal.dc06dc3b.woff2) format("woff2-variations");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Noto Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/noto-sans-vietnamese-wght-normal.d0a8e686.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Noto Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/noto-sans-latin-ext-wght-normal.15bcee04.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Noto Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/noto-sans-latin-wght-normal.20625185.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}