/* Resource surfaces share the approved homepage palette. Selectors are opt-in. */
@font-face{font-family:'BW Resource Sans';src:url('/fonts/space-grotesk-latin-wght-normal-06408904.woff2') format('woff2');font-weight:300 700;font-display:swap}
@font-face{font-family:'BW Resource Serif';src:url('/fonts/newsreader-latin-wght-normal-62981321.woff2') format('woff2');font-weight:200 800;font-display:swap}
@font-face{font-family:'BW Resource Serif';src:url('/fonts/newsreader-latin-wght-italic-48bc8861.woff2') format('woff2');font-style:italic;font-weight:200 800;font-display:swap}
body[data-bw-resource]{--bwr-ink:#191923;--bwr-muted:#656571;--bwr-paper:#f5f4f0;--bwr-white:#fffefa;--bwr-night:#10111b;--bwr-lilac:#c6b2f5;--bwr-purple:#7354a6;--bwr-line:#deddda;--bwr-sans:'BW Resource Sans',system-ui,sans-serif;--bwr-serif:'BW Resource Serif',Georgia,serif;background:var(--bwr-paper);color:var(--bwr-ink);font-family:var(--bwr-sans);color-scheme:light}
body[data-bw-resource]::before{content:none!important}
body[data-bw-resource] main{font-family:var(--bwr-sans);min-width:0}
body[data-bw-resource] main :is(button,input,select){font-family:var(--bwr-sans)}
body[data-bw-resource] main :is(a,button,input,select,summary):focus-visible{outline:3px solid #9670d2!important;outline-offset:4px!important}
body[data-bw-resource] main :is(h1,h2,h3,h4){text-transform:none;letter-spacing:-.035em;text-wrap:balance}
body[data-bw-resource] [hidden]{display:none!important}
body[data-bw-resource='start']{--bw-sans:var(--bwr-sans);--bw-serif:var(--bwr-serif);--acq-bg:var(--bwr-paper);--acq-card:var(--bwr-white);--acq-text:var(--bwr-ink);--acq-muted:var(--bwr-muted);--acq-rule:var(--bwr-line);--acq-rule-strong:#c9bdd9;--acq-foil-warm:var(--bwr-purple);--acq-foil-light:var(--bwr-purple);--acq-foil:var(--bwr-lilac);--bw-surface:var(--bwr-white);--bw-ink:var(--bwr-ink);--bw-ink2:var(--bwr-ink);--bw-ink3:var(--bwr-muted);--bw-ink4:var(--bwr-muted)}
body[data-bw-resource='start'] .acq-shell{max-width:1240px}
body[data-bw-resource='start'] .editorial-hero--start{--acq-text:#f5f3ed;--acq-muted:#b8b3c5;--acq-foil-warm:var(--bwr-lilac);--acq-foil-light:var(--bwr-lilac);width:100%;max-width:none;margin:0;background:var(--bwr-night);padding:72px max(24px,calc((100% - 1200px)/2));gap:56px;border:0;border-radius:0;box-shadow:none}
body[data-bw-resource='start'] .editorial-hero-copy h1{font:500 clamp(2.6rem,5.2vw,4.5rem)/1.07 var(--bwr-sans);color:#f5f3ed;max-width:15ch;margin-bottom:26px;text-transform:none;letter-spacing:-.05em}
body[data-bw-resource='start'] .editorial-hero-copy h1 strong{font:400 1.04em/1.04 var(--bwr-serif);font-style:italic;color:var(--bwr-lilac)}
body[data-bw-resource='start'] .editorial-kicker{font:600 .7rem/1.5 var(--bwr-sans);color:var(--bwr-lilac);letter-spacing:.13em}
body[data-bw-resource='start'] .editorial-lede{font:400 1rem/1.8 var(--bwr-sans);color:#b8b3c5;max-width:46ch}
body[data-bw-resource='start'] .editorial-proof{font-family:var(--bwr-sans);color:#c2bbd0;gap:18px}
body[data-bw-resource='start'] .editorial-art--hero{max-width:380px;filter:none;box-shadow:none;align-self:center;height:auto}
body[data-bw-resource='start'] .editorial-art--hero img{height:auto}
body[data-bw-resource='start'] .editorial-art--hero::after{display:none}
body[data-bw-resource='start'] .editorial-art figcaption{position:static;padding:12px 16px;background:#241b37;color:#f5f3ed;font:500 .85rem/1.5 var(--bwr-sans)}
body[data-bw-resource='start'] :is(.bw-btn-primary,.acq-btn.is-foil){background:var(--bwr-lilac);border-color:var(--bwr-lilac);color:#211b31;box-shadow:none;text-transform:none;font:600 .875rem/1.4 var(--bwr-sans);border-radius:7px;min-height:48px}
body[data-bw-resource='start'] .start-section{padding-top:64px;padding-bottom:32px}
body[data-bw-resource='start'] :is(.editorial-section-heading h2,.bw-h2){font-family:var(--bwr-sans);font-weight:500;line-height:1.16;color:var(--bwr-ink);text-transform:none}
body[data-bw-resource='start'] .editorial-section-heading h2{font-size:clamp(2rem,3.5vw,2.9rem)}
body[data-bw-resource='start'] :is(.start-session.bw-card,.start-resource.bw-card){background:var(--bwr-white);border:1px solid var(--bwr-line);border-radius:14px;box-shadow:none}
body[data-bw-resource='start'] .start-session.bw-card{background:#eee9f5;border-color:#ddd1ed}
body[data-bw-resource='start'] .start-exam-links a{background:var(--bwr-white);border-radius:8px}
body[data-bw-resource='start'] .start-footer{margin-top:32px}
/* Subject navigation: keep the interactive hex map and every existing route. */
body[data-bw-resource='subjects']{--subjects-line:var(--bwr-line);--subjects-purple:var(--bwr-purple)}
body[data-bw-resource='subjects'] .subjects-hero{background:var(--bwr-night);padding:68px max(24px,calc((100% - 1200px)/2)) 50px}
body[data-bw-resource='subjects'] .subjects-hero::before{content:none}
body[data-bw-resource='subjects'] .subjects-hero-inner{width:100%;max-width:1200px;text-align:left}
body[data-bw-resource='subjects'] .subjects-hero h1{font:500 clamp(2.7rem,5.4vw,4.7rem)/1.07 var(--bwr-sans);letter-spacing:-.05em;text-transform:none}
body[data-bw-resource='subjects'] .subjects-hero h1 em{font-family:var(--bwr-serif);color:var(--bwr-lilac)}
body[data-bw-resource='subjects'] .subjects-kicker{color:var(--bwr-lilac);font:600 .7rem/1.5 var(--bwr-sans);letter-spacing:.13em}
body[data-bw-resource='subjects'] .subjects-lede{margin:24px 0 0;max-width:650px;font:400 1rem/1.75 var(--bwr-sans);color:#b8b3c5;text-wrap:pretty}
body[data-bw-resource='subjects'] :is(.subjects-stats,.subjects-jumps){justify-content:flex-start}
body[data-bw-resource='subjects'] .subjects-stats span{background:#1a1b29;border-color:#3a3548;color:#c4bdce;font-family:var(--bwr-sans);border-radius:6px;line-height:1.4}
body[data-bw-resource='subjects'] .subjects-search-shell{margin:28px 0 0;filter:none}
body[data-bw-resource='subjects'] #subject-search{height:58px;border-radius:8px;background:var(--bwr-white);color:var(--bwr-ink);border-color:#d9d1e4;box-shadow:none;font:400 16px/1.5 var(--bwr-sans)}
body[data-bw-resource='subjects'] .subjects-search-shell kbd{background:#f1eef6;color:#6f687d;border-color:#dad4e3}
body[data-bw-resource='subjects'] .subject-search-results{background:var(--bwr-white);border-color:#d9d1e4;box-shadow:0 18px 38px #0002;border-radius:8px}
body[data-bw-resource='subjects'] .subject-search-results a{color:var(--bwr-ink);border-color:var(--bwr-line);font-family:var(--bwr-sans)}
body[data-bw-resource='subjects'] .subject-search-results a:is(:hover,[aria-selected='true']){background:#eee9f5;color:var(--bwr-ink)}
body[data-bw-resource='subjects'] .subject-result-subject{color:var(--bwr-muted)}
body[data-bw-resource='subjects'] .subjects-jumps a{display:inline-flex;align-items:center;min-height:44px;color:#c2bacf;font:500 .8rem/1.4 var(--bwr-sans)}
body[data-bw-resource='subjects'] .subjects-section-head>p{color:var(--bwr-purple);font-family:var(--bwr-sans)}
body[data-bw-resource='subjects'] .subjects-section-head h2{font:500 clamp(1.9rem,3.5vw,2.8rem)/1.14 var(--bwr-sans);color:var(--bwr-ink);text-transform:none;letter-spacing:-.04em}
body[data-bw-resource='subjects'] .subjects-section-head>span{color:var(--bwr-muted);font:400 .95rem/1.7 var(--bwr-sans)}
body[data-bw-resource='subjects'] .hex-section{padding-top:58px}
body[data-bw-resource='subjects'] .hex-grid{filter:none}
body[data-bw-resource='subjects'] .hex{background:color-mix(in srgb,var(--c) 7%,#fffefa)!important;box-shadow:inset 0 0 0 1px #ddd5e8!important}
body[data-bw-resource='subjects'] .hex:hover,body[data-bw-resource='subjects'] .hex:focus-within{transform:translateY(-3px)!important;filter:drop-shadow(0 8px 9px #40314d18)!important}
body[data-bw-resource='subjects'] .hex-arcana .hex-arcana-name{color:var(--bwr-ink)!important;font-family:var(--bwr-sans)!important;letter-spacing:.035em!important}
body[data-bw-resource='subjects'] .hex-count{background:#fffefadb;color:var(--bwr-muted);border-color:#d9d2e2}
body[data-bw-resource='subjects'] .hex-arcana .hex-arcana-glyph{filter:none}
body[data-bw-resource='subjects'] .hex-clue{background:var(--bwr-white)!important;border-color:var(--bwr-line)!important;box-shadow:none!important;border-radius:12px!important}
body[data-bw-resource='subjects'] .hex-clue-label{color:var(--bwr-purple)!important;font-family:var(--bwr-sans)!important}
body[data-bw-resource='subjects'] .hex-clue-text{color:var(--bwr-ink)!important;font-family:var(--bwr-sans)!important}
body[data-bw-resource='subjects'] :is(.hex-clue-dx,.hex-clue-hint){color:var(--bwr-muted)!important}
body[data-bw-resource='subjects'] .hex-clue-cta{color:var(--bwr-purple);min-height:44px;display:inline-flex;align-items:center}
body[data-bw-resource='subjects'] .hub-tile{background:var(--bwr-white)!important;border:1px solid var(--bwr-line)!important;border-radius:12px!important;box-shadow:none!important}
body[data-bw-resource='subjects'] .hub-tile-title{font:500 1rem/1.3 var(--bwr-sans)!important;color:var(--bwr-ink)!important;letter-spacing:-.025em!important;text-transform:none}
body[data-bw-resource='subjects'] .hub-tile-eyebrow{font-family:var(--bwr-sans);color:var(--bwr-purple);letter-spacing:.08em}
body[data-bw-resource='subjects'] .hub-tile-sub{color:var(--bwr-muted)!important;font-family:var(--bwr-sans)}
body[data-bw-resource='subjects'] .hub-tile-glyph{filter:none}
body[data-bw-resource='subjects'] .bw-library-top h2{font:500 clamp(2rem,3.7vw,3rem)/1.15 var(--bwr-sans)!important;color:var(--bwr-ink)!important;letter-spacing:-.04em!important;text-transform:none}
body[data-bw-resource='subjects'] .bw-library-top .sub{font-family:var(--bwr-sans);color:var(--bwr-muted)!important}
body[data-bw-resource='subjects'] .bw-library-actions a{color:var(--bwr-purple)!important;min-height:44px;display:inline-flex;align-items:center;font-family:var(--bwr-sans)!important}
body[data-bw-resource='subjects'] .library-search input{background:var(--bwr-white);color:var(--bwr-ink);font-size:16px;border-radius:8px}
body[data-bw-resource='subjects'] .lib-chip{min-height:44px;padding:10px 14px;background:var(--bwr-white);color:var(--bwr-muted);font-size:.78rem}
body[data-bw-resource='subjects'] .lib-chip.is-active{background:var(--bwr-lilac);color:#211b31;border-color:var(--bwr-lilac)}
body[data-bw-resource='subjects'] .library-status{color:var(--bwr-muted);font-size:.8rem;line-height:1.5;min-height:24px}
body[data-bw-resource='subjects'] .lib-group{background:var(--bwr-white);border-color:var(--bwr-line);border-radius:12px}
body[data-bw-resource='subjects'] .lib-subj{color:var(--bwr-ink)!important;font:500 .95rem/1.4 var(--bwr-sans)!important;letter-spacing:-.01em!important;text-transform:none!important;min-height:56px}
body[data-bw-resource='subjects'] .lib-subj:hover{background:#eee9f5}
body[data-bw-resource='subjects'] .lib-n{color:var(--bwr-muted)!important;font-family:var(--bwr-sans)}
body[data-bw-resource='subjects'] .lib-link{color:var(--bwr-muted)!important;font:400 .875rem/1.6 var(--bwr-sans)!important;min-height:44px;border-bottom-color:#eae6ef!important}
body[data-bw-resource='subjects'] .lib-link:hover{color:var(--bwr-purple)!important;background:#f5f1fb}
body[data-bw-resource='subjects'] .lib-subj::after{color:var(--bwr-purple)}
/* Complete Library has a readable no-script directory and progressive filters. */
body[data-bw-resource='library'] .top{max-width:none;padding:20px max(24px,calc((100% - 1200px)/2));background:var(--bwr-night);border-bottom:1px solid #ffffff14;min-height:80px}
body[data-bw-resource='library'] .top .brand{font:600 1rem/1.3 var(--bwr-sans);text-transform:none;letter-spacing:-.03em;color:#fffefa}
body[data-bw-resource='library'] .top .nav a{font:500 .8rem/1.5 var(--bwr-sans);color:#c5bbd3;min-height:44px;display:inline-flex;align-items:center;text-transform:none}
body[data-bw-resource='library'] .stamp{max-width:none;padding:22px max(24px,calc((100% - 1200px)/2)) 0;background:var(--bwr-night);color:#b8b3c5;font:400 .75rem/1.6 var(--bwr-sans);letter-spacing:.03em;text-transform:none}
body[data-bw-resource='library'] .bw-library{max-width:none;width:100%;margin:0;padding:0 0 72px;font-family:var(--bwr-sans)}
body[data-bw-resource='library'] .bw-library-top{background:var(--bwr-night);color:var(--bwr-white);padding:34px max(24px,calc((100% - 1200px)/2)) 54px;margin:0 0 44px;border:0;gap:28px}
body[data-bw-resource='library'] .bw-library-top h1{font:500 clamp(2.8rem,5.4vw,4.7rem)/1.08 var(--bwr-sans);letter-spacing:-.055em;margin:0 0 22px;color:#f5f3ed}
body[data-bw-resource='library'] .bw-library-top h1 em{font-family:var(--bwr-serif);font-weight:400;color:var(--bwr-lilac)}
body[data-bw-resource='library'] .bw-library-top .sub{font:400 .95rem/1.8 var(--bwr-sans);color:#b8b3c5;max-width:55ch;margin:0}
body[data-bw-resource='library'] .bw-library-actions a{display:inline-flex;align-items:center;min-height:48px;padding:12px 18px;border-radius:7px;border:1px solid #665b78;color:#e2d6f5;font:500 .875rem/1.4 var(--bwr-sans);text-transform:none;letter-spacing:0}
body[data-bw-resource='library'] :is(.lib-group,.bwr-library-controls){width:min(1200px,calc(100% - 48px));margin:0 auto 24px}
body[data-bw-resource='library'] .lib-group{padding:26px 28px;background:var(--bwr-white);border:1px solid var(--bwr-line);border-radius:14px}
body[data-bw-resource='library'] .lib-subj{color:var(--bwr-ink);font:500 1.3rem/1.4 var(--bwr-sans);letter-spacing:-.03em;text-transform:none;border-bottom:1px solid var(--bwr-line);padding-bottom:16px;margin:0 0 12px}
body[data-bw-resource='library'] .lib-n{font:400 .875rem/1.4 var(--bwr-sans);color:var(--bwr-muted);padding:3px 8px;border-radius:5px;background:#eeebf1}
body[data-bw-resource='library'] .lib-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:3px 26px}
body[data-bw-resource='library'] .lib-link{font:400 .875rem/1.6 var(--bwr-sans);color:var(--bwr-muted);padding:10px 0;min-height:44px;text-decoration:none;border-bottom:1px solid #eeeae7;overflow-wrap:anywhere}
body[data-bw-resource='library'] .lib-link:hover{color:var(--bwr-purple);border-color:#c6b2f5;background:#f7f3fc}
body[data-bw-resource='library'] .bwr-library-fields{display:grid;grid-template-columns:1.5fr 1fr auto;gap:18px;align-items:end}
body[data-bw-resource='library'] .bwr-library-fields label{display:block;margin-bottom:8px;font:500 .8rem/1.5 var(--bwr-sans);color:var(--bwr-muted)}
body[data-bw-resource='library'] .bwr-library-fields :is(input,select,button){box-sizing:border-box;min-width:0;min-height:50px;width:100%;padding:12px 14px;border:1px solid #cfc6dc;background:var(--bwr-white);color:var(--bwr-ink);border-radius:8px;font:400 16px/1.5 var(--bwr-sans)}
body[data-bw-resource='library'] .bwr-library-fields button{width:auto;background:#eae2f4;border-color:#d6c8e7;font-size:.875rem;cursor:pointer}
body[data-bw-resource='library'] #bw-library-status{font:400 .8rem/1.6 var(--bwr-sans);color:var(--bwr-muted);min-height:24px;margin:16px 0 0}
body[data-bw-resource='library'] #bw-library-empty{padding:32px;border:1px solid var(--bwr-line);border-radius:12px;background:var(--bwr-white);color:var(--bwr-muted)}
@media(max-width:900px){body[data-bw-resource='library'] .lib-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-bw-resource='library'] .bwr-library-fields{grid-template-columns:1fr 1fr}body[data-bw-resource='library'] #bw-library-reset{justify-self:start}}
@media(max-width:680px){body[data-bw-resource='start'] .editorial-hero--start{padding:44px 20px 38px;gap:28px}body[data-bw-resource='start'] .editorial-art--hero{max-width:240px}body[data-bw-resource='start'] .editorial-hero-copy h1{font-size:clamp(2.5rem,9.5vw,3.5rem)}body[data-bw-resource='start'] .start-section{padding-top:44px}body[data-bw-resource='subjects'] .subjects-hero{padding:42px 20px 34px}body[data-bw-resource='subjects'] .subjects-hero h1{font-size:clamp(2.55rem,10.5vw,3.7rem)}body[data-bw-resource='subjects'] .subjects-jumps{gap:4px}body[data-bw-resource='subjects'] .subjects-jumps a{padding:8px;font-size:.75rem}body[data-bw-resource='library'] .bw-library-top{padding:28px 20px 36px;margin-bottom:28px}body[data-bw-resource='library'] :is(.lib-group,.bwr-library-controls){width:calc(100% - 36px)}body[data-bw-resource='library'] .lib-group{padding:20px}body[data-bw-resource='library'] .lib-grid{grid-template-columns:1fr}body[data-bw-resource='library'] .bwr-library-fields{grid-template-columns:1fr}body[data-bw-resource='library'] .top{padding-inline:20px}body[data-bw-resource='library'] .stamp{padding-inline:20px}}
@media(prefers-reduced-motion:reduce){body[data-bw-resource] main,body[data-bw-resource] main *{scroll-behavior:auto!important;animation:none!important;transition:none!important}body[data-bw-resource='subjects'] .hex:hover,body[data-bw-resource='subjects'] .hex:focus-within{transform:none!important}}
@media print{body[data-bw-resource] main{color:#000;background:#fff}body[data-bw-resource='library'] .bwr-library-controls{display:none}body[data-bw-resource='library'] .lib-group{break-inside:avoid}body[data-bw-resource='library'] .lib-link{color:#000}}
/* Legacy header CSS forces a body background with !important. Contain that rule to these opted-in pages. */
body[data-bw-resource]{background-color:var(--bwr-paper)!important}
body[data-bw-resource='start']{--acq-sans:var(--bwr-sans);--acq-serif:var(--bwr-serif);--editorial-bg:var(--bwr-paper);--editorial-surface:var(--bwr-white);--editorial-raised:#eeebf3;--editorial-text:var(--bwr-ink);--editorial-reading:var(--bwr-ink);--editorial-muted:var(--bwr-muted);--editorial-subtle:var(--bwr-muted);--editorial-blue:var(--bwr-purple);--editorial-blue-strong:var(--bwr-purple);--editorial-rule:var(--bwr-line);--editorial-rule-blue:#d6c7eb;--editorial-radius:12px}
body[data-bw-resource='start'] .editorial-hero--start{--editorial-text:#f5f3ed;--editorial-muted:#b8b3c5;--editorial-blue:var(--bwr-lilac);--editorial-rule:#ffffff18}
body[data-bw-resource='start'] .editorial-section-heading>p{color:var(--bwr-muted);font:400 .95rem/1.75 var(--bwr-sans)}
body[data-bw-resource='start'] .editorial-section-heading div>p{color:var(--bwr-purple);font:600 .75rem/1.5 var(--bwr-sans);letter-spacing:.07em}
body[data-bw-resource='start'] .editorial-art--hero{border-radius:14px;overflow:hidden;border-color:#51465f}
body[data-bw-resource='start'] .editorial-hero--start .editorial-secondary{color:#ede6f7!important;border-bottom-color:#71677d;font-family:var(--bwr-sans)}
@media(max-width:680px){body[data-bw-resource='start'] .editorial-proof{flex-direction:row;flex-wrap:wrap;gap:10px 16px}body[data-bw-resource='start'] .editorial-art--hero{display:none}}
@media(max-width:640px){body[data-bw-resource='subjects'] .hex-arcana .hex-inner{padding:6px!important;gap:4px!important}body[data-bw-resource='subjects'] .hex-arcana .hex-arcana-name{font-size:.58rem!important;letter-spacing:0!important}}
