/* DIVINA BRUXA 4.0 · MACROETAPA 7/14 · ESCOLA + PORTAL DA BIBLIOTECA V555
   Hierarquia antes do ornamento. Somente transform e opacity podem transicionar. */

#school .school-rebirth-journey{display:none!important}
#schoolApp{--sl-gold:#f2d58f;--sl-ink:#fff8ff;--sl-muted:rgba(234,222,239,.7);--sl-line:rgba(242,213,143,.16)}
#school .school-dashboard{position:relative;display:grid!important;grid-template-columns:minmax(0,1fr) 180px;gap:18px;align-items:center;overflow:hidden;padding:clamp(18px,3vw,30px);border-radius:32px;background:radial-gradient(circle at 88% 28%,rgba(171,87,234,.16),transparent 27%),linear-gradient(145deg,rgba(24,10,38,.92),rgba(7,3,13,.96));contain:layout paint}
#school .school-dashboard:before{filter:none!important;opacity:.55}
#school .school-progress-orbit{display:none!important}
#school .school-path-copy{max-width:720px}
#school .school-path-metrics{display:flex;gap:8px;flex-wrap:wrap}
#school .school-access-truth{display:grid;gap:3px;margin:12px 0;padding:11px 13px;border:1px solid var(--sl-line);border-radius:16px;background:rgba(255,255,255,.025)}
#school .school-access-truth b{color:var(--sl-gold);font:800 9px/1.1 system-ui;letter-spacing:.12em}
#school .school-access-truth span{color:var(--sl-muted);font:500 12px/1.45 system-ui}
#school .school-v555-orb-zone{display:grid;justify-items:center;gap:9px;text-align:center}
#school .school-v555-orb-host{position:relative;width:132px;aspect-ratio:1;border-radius:50%;contain:layout paint}
#school .school-v555-orb-host .supreme-orb-shell{width:100%!important;height:100%!important;max-width:none!important}
#school .school-v555-orb-zone p{display:grid!important;gap:3px;margin:0!important;max-width:170px}
#school .school-v555-orb-zone b{color:var(--sl-gold);font:700 11px/1.3 system-ui}
#school .school-v555-orb-zone span{color:var(--sl-muted);font:500 10px/1.4 system-ui}

#school .school-v555-compass{margin:14px 0 18px;padding:clamp(15px,2.4vw,22px);border:1px solid var(--sl-line);border-radius:28px;background:linear-gradient(145deg,rgba(21,9,34,.9),rgba(8,4,15,.92));box-shadow:0 18px 55px rgba(0,0,0,.22)}
#school .school-v555-compass>header{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:12px}
#school .school-v555-compass h3{margin:4px 0 0;color:var(--sl-ink);font:500 clamp(21px,3.4vw,32px)/1.04 Georgia,serif}
#school .school-v555-compass>header>span{color:var(--sl-gold);font:600 13px/1 Georgia,serif;white-space:nowrap}
#school .school-v555-stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
#school .school-v555-stages button{display:grid;grid-template-columns:36px minmax(0,1fr);gap:9px;min-height:126px;padding:13px;text-align:left;border:1px solid var(--sl-line);border-radius:22px;background:rgba(255,255,255,.025);color:var(--sl-ink);cursor:pointer;transition:transform .18s ease,opacity .18s ease}
#school .school-v555-stages button:active{transform:scale(.985)}
#school .school-v555-stages button>span{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(242,213,143,.28);border-radius:50%;color:var(--sl-gold);font:700 10px system-ui}
#school .school-v555-stages button>div{display:grid;align-content:start;gap:4px;min-width:0}
#school .school-v555-stages small{color:var(--sl-gold);font:800 7px system-ui;letter-spacing:.12em}
#school .school-v555-stages b{font:500 20px/1.05 Georgia,serif}
#school .school-v555-stages em{min-height:30px;color:var(--sl-muted);font:500 10px/1.4 system-ui;font-style:normal}
#school .school-v555-stages i{height:4px;margin-top:5px;overflow:hidden;border-radius:9px;background:rgba(255,255,255,.07)}
#school .school-v555-stages u{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#e9c878,#bd71dc);text-decoration:none}
#school .school-v555-stages strong{color:var(--sl-muted);font:700 9px system-ui}
#school .school-v555-compass>p{margin:11px 2px 0;color:var(--sl-muted);font:500 11px/1.5 system-ui}
#school .school-v555-plan{margin-top:11px;border:1px solid var(--sl-line);border-radius:18px;background:rgba(255,255,255,.018);overflow:hidden}
#school .school-v555-plan summary{display:flex;justify-content:space-between;gap:12px;min-height:44px;align-items:center;padding:0 13px;color:var(--sl-gold);font:700 11px system-ui;cursor:pointer}
#school .school-v555-plan summary span{font-size:7px;letter-spacing:.12em}
#school .school-v555-plan ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:0;padding:0 12px 12px;list-style:none}
#school .school-v555-plan li{padding:10px;border:1px solid rgba(242,213,143,.1);border-radius:14px;background:rgba(8,4,14,.45)}
#school .school-v555-plan li b,#school .school-v555-plan li span{display:block}
#school .school-v555-plan li b{color:var(--sl-ink);font:600 10px/1.35 system-ui}
#school .school-v555-plan li span,#school .school-v555-plan>p{margin:4px 0 0;color:var(--sl-muted);font:500 9px/1.45 system-ui}
#school .school-v555-plan>p{padding:0 13px 13px}

#school .school-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}
#school .school-search{margin:0}
#school .school-module-count{padding:0 4px 12px;color:var(--sl-muted);font:700 9px/1.4 system-ui;letter-spacing:.05em}
#school .school-workspace{display:grid!important;grid-template-columns:minmax(238px,286px) minmax(0,1fr)!important;gap:14px!important;align-items:start}
#school .school-modules{position:sticky;top:76px;display:grid!important;grid-template-columns:1fr!important;gap:12px!important;max-height:calc(100dvh - 92px);overflow:auto;padding:10px!important;border:1px solid var(--sl-line);border-radius:25px;background:rgba(8,4,14,.78);overscroll-behavior:contain;scrollbar-width:thin}
#school .school-stage{display:grid;gap:6px}
#school .school-stage>header{display:grid;grid-template-columns:30px 1fr;gap:7px;align-items:center;padding:7px 5px}
#school .school-stage>header>span{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--sl-line);border-radius:50%;color:var(--sl-gold);font:700 8px system-ui}
#school .school-stage>header b,#school .school-stage>header small{display:block}
#school .school-stage>header b{color:var(--sl-ink);font:500 14px Georgia,serif}
#school .school-stage>header small{margin-top:2px;color:var(--sl-muted);font:600 8px/1.25 system-ui}
#school .school-modules button{position:relative;display:grid!important;grid-template-columns:27px minmax(0,1fr);gap:8px;min-height:64px;padding:9px!important;border-radius:17px!important;background:rgba(255,255,255,.025)!important;transition:transform .16s ease,opacity .16s ease}
#school .school-modules button:active{transform:scale(.985)}
#school .school-module-sigil{grid-row:1/4;display:grid!important;place-items:center;width:27px;height:27px;border:1px solid var(--sl-line);border-radius:50%}
#school .school-module-copy{min-width:0}
#school .school-module-copy strong{font-size:13px!important}
#school .school-module-copy span,#school .school-module-copy small{font-size:8px!important;line-height:1.35}
#school .school-module-access{grid-column:2;color:var(--sl-gold)!important;font:800 7px system-ui!important;letter-spacing:.08em!important}
#school .school-lessons{min-width:0;margin-top:0!important;padding:clamp(13px,2vw,20px);border:1px solid var(--sl-line);border-radius:25px;background:rgba(8,4,14,.62)}
#school .school-lessons-head{display:flex;justify-content:space-between;gap:12px;align-items:end;margin:0 0 12px}
#school .school-lesson{content-visibility:auto;contain-intrinsic-size:360px;overflow:hidden;border-radius:22px!important;background:linear-gradient(145deg,rgba(25,12,39,.78),rgba(8,4,14,.92))!important}
#school .school-card-art{position:relative;align-self:start;min-width:0;aspect-ratio:2/3;overflow:hidden;border-radius:16px;background:#0a0511}
#school .school-card-atlas,#cardLibraryApp .lb302__card-atlas{display:block;width:100%;height:100%;min-height:100%;background-image:var(--db-tarot-atlas-image);background-size:var(--atlas-size);background-position:var(--atlas-position);background-repeat:no-repeat}
#school .school-lesson-gate{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;margin-top:12px;padding:12px;border:1px solid rgba(242,213,143,.18);border-radius:18px;background:rgba(100,49,130,.12)}
#school .school-lesson-gate i{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--sl-line);border-radius:50%;color:var(--sl-gold)}
#school .school-lesson-gate b,#school .school-lesson-gate small{display:block}
#school .school-lesson-gate small{margin-top:3px;color:var(--sl-muted)}
#school .school-lesson-gate button{min-height:44px;padding:0 13px;border:1px solid rgba(242,213,143,.3);border-radius:999px;background:rgba(105,51,139,.28);color:var(--sl-gold);font-weight:750}

#cardLibraryApp .lb302__sanctuary{background:radial-gradient(circle at 50% 42%,rgba(157,77,226,.19),transparent 25%),radial-gradient(circle at 20% 80%,rgba(226,93,192,.07),transparent 36%),linear-gradient(180deg,rgba(16,7,28,.78),rgba(4,2,9,.94));contain:layout paint}
#cardLibraryApp .lb302__sanctuary:before{filter:none!important;opacity:.7}
#cardLibraryApp .lb302__orb{filter:none!important;cursor:pointer}
#cardLibraryApp .lb302__orb-host{position:absolute;inset:0;border-radius:50%;contain:layout paint}
#cardLibraryApp .lb302__orb-host .supreme-orb-shell{width:100%!important;height:100%!important;max-width:none!important}
#cardLibraryApp .lb302__path{border-radius:50%;backdrop-filter:none!important;background:radial-gradient(circle at 34% 28%,rgba(132,60,176,.24),rgba(13,6,23,.9) 68%);transition:transform .18s ease,opacity .18s ease}
#cardLibraryApp .lb302__orb.lb332-touch{filter:none!important}
#cardLibraryApp .lb332-compass{backdrop-filter:none!important;background:#0a0512}
#cardLibraryApp .lb302__card{content-visibility:auto;contain-intrinsic-size:250px;transition:transform .18s ease,opacity .18s ease}
#cardLibraryApp .lb302__card-atlas{aspect-ratio:2/3}
#cardLibraryApp .lb302__favorite,#cardLibraryApp .lb302__reader,#cardLibraryApp .lb302__reader::backdrop{backdrop-filter:none!important}
#cardLibraryApp .lb302__source{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:13px;padding:12px 14px;border:1px solid rgba(240,215,154,.12);border-radius:17px;background:rgba(255,255,255,.02)}
#cardLibraryApp .lb302__source b{color:var(--lb-gold);font:700 10px system-ui}
#cardLibraryApp .lb302__source span{flex:1 1 360px;color:var(--lb-muted);font:500 10px/1.5 system-ui}
#cardLibraryApp .lb302__source a{min-height:44px;display:inline-flex;align-items:center;color:var(--lb-gold);font:700 10px system-ui}

@media(max-width:760px){
  #school .school-dashboard{grid-template-columns:minmax(0,1fr) 118px;border-radius:25px}
  #school .school-v555-orb-host{width:104px}
  #school .school-v555-stages{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:3px}
  #school .school-v555-stages button{flex:0 0 min(82vw,270px);scroll-snap-align:start}
  #school .school-v555-plan ol{grid-template-columns:repeat(2,minmax(0,1fr))}
  #school .school-controls{grid-template-columns:1fr}#school .school-module-count{text-align:left}
  #school .school-workspace{display:block!important}
  #school .school-modules{position:static;display:flex!important;max-height:none;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;margin-bottom:12px}
  #school .school-stage{flex:0 0 min(84vw,300px);scroll-snap-align:start}
  #school .school-lessons{padding:12px}
  #school .school-lesson-gate{grid-template-columns:auto 1fr}#school .school-lesson-gate button{grid-column:1/-1;width:100%}
}

@media(max-width:520px){
  #school .school-dashboard{grid-template-columns:1fr;padding:17px}
  #school .school-v555-orb-zone{grid-template-columns:82px 1fr;text-align:left;justify-items:start}
  #school .school-v555-orb-host{width:78px}
  #school .school-v555-orb-zone p{max-width:none}
  #school .school-v555-compass>header{align-items:start}#school .school-v555-compass>header>span{font-size:10px}
  #school .school-v555-plan ol{grid-template-columns:1fr}
  #school .card-lesson{grid-template-columns:78px minmax(0,1fr)}
  #cardLibraryApp .lb302__sanctuary{min-height:470px;padding:16px 0 88px}
  #cardLibraryApp .lb302__orb{top:37%;width:132px}
  #cardLibraryApp .lb302__whit{top:57%;width:82%}
  #cardLibraryApp .lb302__paths{inset:auto 10px 12px;display:flex;gap:7px;overflow-x:auto;padding:2px;pointer-events:auto;scroll-snap-type:x mandatory}
  #cardLibraryApp .lb302__path{position:static!important;transform:none!important;flex:0 0 82px;min-height:62px;scroll-snap-align:start}
  #cardLibraryApp .lb302__hint{bottom:82px}
  #cardLibraryApp .lb302__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(prefers-reduced-motion:reduce){
  #schoolApp *,#cardLibraryApp *{scroll-behavior:auto!important;animation:none!important;transition:none!important}
}
