/* Calm Quest Byte presentation, October 2026.
   One shared, screen-only layer. Existing actions, states, themes, game boards,
   reporting and entitlement checks remain owned by their original modules.
   Approved Reports/Record Keeping surfaces are deliberately excluded. */
@font-face{font-family:QBPublic;src:url('fonts/public-sans-var.woff2') format('woff2');font-weight:100 900;font-display:swap}
@media screen {
body.qb-calm{--qb-calm-paper:#fcfaf4;--qb-calm-ground:#f5f2e9;--qb-calm-ink:#293e35;--qb-calm-muted:#626e65;--qb-calm-line:#dedfd3;--qb-calm-green:#365b46;--qb-calm-sage:#e8eee3;--qb-calm-plum:#685874;--qb-calm-lilac:#efebf2}
body.qb-calm:not(.qc-embed):not(:has(:is(#screen-teacher,#screen-recordkeeping).active)){font-family:QBPublic,system-ui,sans-serif}
body.qb-calm:not([class*="th_"]):not(:has(:is(#screen-teacher,#screen-recordkeeping).active)){background:var(--qb-calm-ground);color:var(--qb-calm-ink)}
body.qb-calm:not([class*="th_"]):not(:has(#kv-theme-scene)):not(:has(:is(#screen-teacher,#screen-recordkeeping).active)){background-color:var(--qb-calm-ground)!important}
body.qb-calm:not(:has(:is(#screen-teacher,#screen-recordkeeping).active)) .app{padding-inline:clamp(12px,2.5vw,38px)!important}
body.qb-calm:not(:has(:is(#screen-teacher,#screen-recordkeeping).active)) .topbar{background:var(--qb-calm-paper);border:1px solid var(--qb-calm-line);border-radius:12px;box-shadow:0 2px 8px #293e3508;gap:8px}
body.qb-calm:not(:has(:is(#screen-teacher,#screen-recordkeeping).active)) .topbar .home-btn{color:var(--qb-calm-green);background:var(--qb-calm-sage);border:1px solid #d5ddcf;border-radius:8px;box-shadow:none;font-size:14px}
body.qb-calm:not(:has(:is(#screen-teacher,#screen-recordkeeping).active)) .topbar .stat-chip{border:1px solid var(--qb-calm-line);border-radius:8px;background:var(--qb-calm-paper);color:var(--qb-calm-muted);box-shadow:none;font-size:12px}
body.qb-calm:not(:has(:is(#screen-teacher,#screen-recordkeeping).active)) #wl-tabbar{background:var(--qb-calm-paper);border-color:var(--qb-calm-line);box-shadow:0 -2px 14px #293e350a}
body.qb-calm:not(:has(:is(#screen-teacher,#screen-recordkeeping).active)) #wl-tabbar :is(.wl-tab,.wl-navgroup){font-family:inherit}
body.qb-calm:not(:has(:is(#screen-teacher,#screen-recordkeeping).active)) #wl-tabbar :is(.wl-tab.active,.wl-navgroup.active){color:var(--qb-calm-green);background:var(--qb-calm-sage);box-shadow:none}

/* Destination headers: the illustration accompanies the title, rather than
   becoming a second framed panel. Keep library/report image exclusions. */
body.qb-calm :is(.qb-destination:not(:where(#screen-teacher,#screen-recordkeeping,#screen-custom)),.qb-tool-page){--qb-dest-line:var(--qb-calm-line);--qb-dest-soft:var(--qb-calm-sage);--qb-dest-accent:var(--qb-calm-green);--qb-dest-deep:var(--qb-calm-ink);background:var(--qb-calm-ground);padding-top:22px!important;color:var(--qb-calm-ink)}
body.qb-calm :is(.qb-destination:not(:where(#screen-teacher,#screen-recordkeeping,#screen-custom)),.qb-tool-page)>.qb-destination-hero{min-height:150px;grid-template-columns:minmax(0,1fr) 180px;align-items:center;border:1px solid var(--qb-calm-line);border-radius:14px;background:var(--qb-calm-sage);color:var(--qb-calm-ink);box-shadow:none;margin-bottom:23px;overflow:visible}
body.qb-calm :is(#screen-library,#screen-literature,#screen-admin,#screen-settings,#screen-screentime,#screen-notices)>.qb-destination-hero{background:var(--qb-calm-paper);}
body.qb-calm #screen-writing>.qb-destination-hero{display:grid;padding:0;min-height:150px;margin:0 0 23px;border:1px solid #e0dbe3;border-radius:14px;background:var(--qb-calm-lilac);border-color:#e0dbe3;--qb-dest-deep:#4c4056;--qb-dest-accent:var(--qb-calm-plum)}
body.qb-calm #screen-todo>.qb-destination-hero{background:#f4ede2}
body.qb-calm #screen-revision>.qb-destination-hero{background:#efedf3}
body.qb-calm #screen-practice-tests>.qb-destination-hero{background:#f3eee1}
body.qb-calm :is(.qb-destination:not(:where(#screen-teacher,#screen-recordkeeping,#screen-custom)),.qb-tool-page) .qb-destination-copy{padding:26px 30px}
body.qb-calm :is(.qb-destination:not(:where(#screen-teacher,#screen-recordkeeping,#screen-custom)),.qb-tool-page) .qb-destination-copy>span{margin-bottom:10px;color:var(--qb-calm-muted);font-size:12px;font-weight:600;letter-spacing:0;text-transform:none}
body.qb-calm :is(.qb-destination:not(:where(#screen-teacher,#screen-recordkeeping,#screen-custom)),.qb-tool-page) .qb-destination-copy h1{color:var(--qb-dest-deep);font-family:Georgia,serif;font-size:clamp(30px,3vw,40px);font-weight:400;line-height:1.16;letter-spacing:-.025em;text-shadow:none;overflow-wrap:anywhere}
body.qb-calm :is(.qb-destination:not(:where(#screen-teacher,#screen-recordkeeping,#screen-custom)),.qb-tool-page) .qb-destination-copy p{max-width:700px;margin-top:11px;color:var(--qb-calm-muted);font-size:15px;font-weight:400;line-height:1.6}
body.qb-calm :is(.qb-destination:not(:where(#screen-teacher,#screen-recordkeeping,#screen-custom)),.qb-tool-page) .qb-destination-art{margin:15px 22px 15px 0;border:0;border-radius:24px;background:transparent;box-shadow:none}
body.qb-calm :is(.qb-destination:not(:where(#screen-teacher,#screen-recordkeeping,#screen-custom)),.qb-tool-page) .qb-destination-art img{height:112px;width:100%;padding:0;object-fit:contain;mix-blend-mode:multiply;border-radius:20px}
body.qb-calm :is(#screen-library,#screen-literature)>.qb-destination-hero:not(:has(.qb-destination-art)){grid-template-columns:minmax(0,1fr)}
body.qb-calm :is(#screen-writing,#screen-dictionary,#screen-revision,#screen-practice-tests,#screen-records,#screen-settings,#screen-admin,#screen-themes) :is(.ww-card,.ww-empty,.dict-search-card,.wl-card,.wl-subcard,.wl-page,.theme-unit,.qb-tests-intro){background:var(--qb-calm-paper)!important;border-color:var(--qb-calm-line)!important;box-shadow:none!important;border-radius:12px!important}
body.qb-calm :is(#screen-writing,#screen-dictionary,#screen-revision,#screen-practice-tests,#screen-settings,#screen-admin) :is(.ww-btn,.wl-btn,.dict-tab){border-radius:8px;box-shadow:none;font-family:inherit}
body.qb-calm #screen-writing .qb-destination-copy{padding:26px 30px}
body.qb-calm #screen-writing .qb-destination-art{display:block}
body.qb-calm #screen-writing .ww-head{justify-content:space-between}
body.qb-calm #screen-writing .ww-head-actions{gap:8px}
body.qb-calm #screen-writing .ww-btn{background:var(--qb-calm-plum);border-color:var(--qb-calm-plum);color:#fff;box-shadow:none}
body.qb-calm #screen-writing .ww-btn.alt{background:var(--qb-calm-paper);color:var(--qb-calm-plum);border-color:#d7cadb}
body.qb-calm #screen-writing .ww-collection-filters :is(input,select){background:var(--qb-calm-paper);color:var(--qb-calm-ink);border:1px solid var(--qb-calm-line);border-radius:8px;min-height:44px}
body.qb-calm #screen-writing .ww-collection-filters label{color:var(--qb-calm-muted);font-size:13px;font-weight:400}
body.qb-calm #screen-practice-tests .qb-tests-layout>div>button{background:var(--qb-calm-paper)!important;border-color:var(--qb-calm-line)!important;border-radius:11px!important;box-shadow:none!important}
body.qb-calm #screen-themes .theme-unit-head{background:var(--qb-calm-sage);border-bottom:1px solid var(--qb-calm-line)}
body.qb-calm #screen-themes .theme-lesson{background:var(--qb-calm-paper);border-color:var(--qb-calm-line);box-shadow:none}
body.qb-calm #screen-custom{--qb-cw-ground:var(--qb-calm-ground);--qb-cw-paper:var(--qb-calm-paper)}

/* Home keeps every real row, learner identity, live count and level selector. */
body.qb-calm #screen-home:not(.qb-subject-mode)>.hero{display:grid;grid-template-columns:1fr 1fr;align-content:center;align-items:center;min-height:285px;padding:34px;margin:18px 0 22px;border:1px solid #d9dfcf;border-radius:17px;background:var(--qb-calm-sage);box-shadow:none;overflow:hidden;text-align:left}
body.qb-calm #screen-home:not(.qb-subject-mode)>.hero::before{inset:0 0 0 51%;z-index:-1;background:url('anam/images/wordlab-home.jpg') center/cover no-repeat}
body.qb-calm #screen-home:not(.qb-subject-mode)>.hero h1{grid-column:1;margin:0 25px 0 0;color:var(--qb-calm-ink);font:400 clamp(34px,3.8vw,48px)/1.12 Georgia,serif;letter-spacing:-.03em;text-shadow:none}
body.qb-calm #screen-home:not(.qb-subject-mode)>.hero h1::after,body.qb-calm #screen-home:not(.qb-subject-mode)>.hero .sub::after{content:none}
body.qb-calm #screen-home:not(.qb-subject-mode)>.hero .sub{grid-column:1;font-size:17px;font-weight:400;color:#58724f;text-shadow:none;margin:10px 25px 0 0}
body.qb-calm #screen-home:not(.qb-subject-mode)>.hero .hero-news{grid-column:1;align-self:start;max-width:470px;margin:15px 25px 0 0;padding:0;color:var(--qb-calm-muted);background:transparent;border:0;border-radius:0;box-shadow:none;font-size:14px;font-weight:400;text-align:left}
body.qb-calm #screen-home:not(.qb-subject-mode) #home-stats{position:static;grid-column:1;width:auto;max-width:470px;transform:none;margin:17px 25px 0 0;padding:8px 0 0;border:0;border-top:1px solid #d1dac9;border-radius:0;background:transparent;box-shadow:none;justify-content:flex-start}
body.qb-calm #screen-home #home-stats .wl-stat{padding:0 12px 0 0;margin-right:10px;flex:0 1 auto;border-color:#d1dac9}
body.qb-calm #screen-home #home-stats .wl-stat-num{color:var(--qb-calm-green);font-size:15px}
body.qb-calm #screen-home #home-stats .wl-stat-lbl{color:var(--qb-calm-muted);font-size:10px}
body.qb-calm #screen-home .home-progress-panel .player-row{border:1px solid var(--qb-calm-line);border-radius:12px;background:var(--qb-calm-paper);box-shadow:none;grid-template-columns:66px minmax(0,1fr)}
body.qb-calm #screen-home .home-progress-panel .avatar-big{width:58px;height:58px;border:1px solid #cbd6c3;background:var(--qb-calm-sage);box-shadow:none}
body.qb-calm #screen-home .home-level-panel{background:var(--qb-calm-paper);border-color:var(--qb-calm-line);box-shadow:none}
body.qb-calm #screen-home :is(.home-role-pill,.home-aurars-pill){box-shadow:none}
body.qb-calm #screen-home .home-role-pill{background:var(--qb-calm-sage);color:var(--qb-calm-green)}
body.qb-calm #screen-home .home-section-heading h2{font:400 26px/1.25 Georgia,serif;color:var(--qb-calm-ink);letter-spacing:-.02em}
body.qb-calm #screen-home :is(.home-revision-card,.wl-home-diary-widget,.qb-daily-home){border:1px solid var(--qb-calm-line);border-radius:12px;background:var(--qb-calm-paper);box-shadow:none;color:var(--qb-calm-ink)}
body.qb-calm #screen-home #continue-row .go-btn{border:1px solid var(--qb-calm-green);background:var(--qb-calm-green);border-radius:10px;box-shadow:none}
body.qb-calm #screen-home :is(.home-revision-card,.wl-home-diary-widget) button{background:var(--qb-calm-sage);color:var(--qb-calm-green);border:1px solid #cbd6c3;border-radius:8px;box-shadow:none}
body.qb-calm #screen-home .qb-daily-kicker{color:var(--qb-calm-muted);letter-spacing:.025em}
body.qb-calm #screen-home #subject-grid:not(.qb-subject-hub-grid){grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
body.qb-calm #screen-home #subject-grid:not(.qb-subject-hub-grid)>.subject-btn{min-height:135px;border:1px solid var(--qb-calm-line);border-radius:12px;background-color:var(--qb-calm-paper)!important;background-image:none!important;color:var(--qb-calm-ink)!important;box-shadow:none;text-shadow:none}
body.qb-calm #screen-home #subject-grid:not(.qb-subject-hub-grid)>.subject-btn :is(.home-card-title,.home-card-copy){color:var(--qb-calm-ink)!important;text-shadow:none}
body.qb-calm #screen-home #subject-grid:not(.qb-subject-hub-grid)>.subject-btn .count-pill{color:var(--qb-calm-muted);background:var(--qb-calm-sage);border:0;box-shadow:none}
body.qb-calm #screen-home #subject-grid:not(.qb-subject-hub-grid)>.subject-btn .big-icon{width:68px;height:68px;border-radius:12px;box-shadow:none}
body.qb-calm #screen-home :is(#tools-row,#extras-row)>.subject-btn{border:1px solid var(--qb-calm-line);border-radius:12px;box-shadow:none}

body.qb-calm #screen-themes>.qb-destination-hero{background:var(--qb-calm-sage);border:1px solid var(--qb-calm-line);box-shadow:none}
body.qb-calm #screen-themes .qb-destination-art{background:transparent;border:0;box-shadow:none}
body.qb-calm #screen-themes .qb-destination-copy h1{font-family:Georgia,serif;font-weight:400;color:var(--qb-calm-ink)}
body.qb-calm #screen-themes .qb-destination-copy :is(p,span){color:var(--qb-calm-muted)}
body.qb-calm #screen-category .cat-header{background:var(--qb-calm-sage);border:1px solid var(--qb-calm-line);border-radius:14px;box-shadow:none}
body.qb-calm #screen-category .cat-header h2{font:400 clamp(28px,3vw,38px)/1.2 Georgia,serif;color:var(--qb-calm-ink)}
body.qb-calm #screen-category .cat-sub{color:var(--qb-calm-muted)}
body.qb-calm #screen-lesson #lesson-title .qb-lesson-name{font:400 clamp(26px,2.8vw,38px)/1.2 Georgia,serif;color:var(--qb-calm-ink);text-shadow:none}
body.qb-calm .qb-map-hero h1{font-size:clamp(30px,3vw,40px);font-weight:400;line-height:1.2}
body.qb-calm .qb-map-hero::after{display:none}
body.qb-calm .qb-map-back{background:var(--qb-calm-paper);color:var(--qb-calm-green);border-color:#cbd6c3;border-radius:8px;font-weight:600}
body.qb-calm #screen-arcade .arc-head{background:var(--qb-calm-sage);color:var(--qb-calm-ink);border:1px solid var(--qb-calm-line);border-radius:14px;box-shadow:none}
body.qb-calm #screen-arcade .arc-head::before,body.qb-calm #screen-arcade .arc-head::after{display:none}
body.qb-calm #screen-arcade .arc-head h1{font:400 clamp(30px,3vw,40px)/1.2 Georgia,serif;color:var(--qb-calm-ink);text-shadow:none}
body.qb-calm #screen-arcade .arc-head .arc-kicker{background:transparent;border:0;color:var(--qb-calm-muted);font-weight:500;letter-spacing:0;text-transform:none}
body.qb-calm #screen-arcade .arc-head p{color:var(--qb-calm-muted);font-weight:400}

/* Shared subject hubs, progression maps and lesson chrome. Activity-specific
   diagrams, answer colours, draggable objects and controls keep their styles. */
body.qb-calm .qb-subject-rail{background:var(--qb-calm-paper);border-bottom:1px solid var(--qb-calm-line)}
body.qb-calm .qb-subject-rail-head{color:var(--qb-calm-muted);font-weight:500;letter-spacing:0;text-transform:none}
body.qb-calm .qb-rail-subject{background:var(--qb-calm-paper);color:var(--qb-calm-ink);border-color:var(--qb-calm-line);box-shadow:none}
body.qb-calm .qb-rail-subject[aria-current="page"],body.qb-calm .qb-rail-subject:hover{background:var(--qb-calm-sage);color:var(--qb-calm-green);border-color:#b9c6ae;box-shadow:none}
body.qb-calm .qb-rail-subject strong{font-weight:600}
body.qb-calm .qb-subject-shelf-trigger{background:var(--qb-calm-paper);border-color:var(--qb-calm-line);box-shadow:none}
body.qb-calm .qb-subject-hero{background:var(--qb-calm-sage);border:1px solid #d9dfcf;border-radius:14px;box-shadow:none;min-height:0;grid-template-columns:minmax(0,1.5fr) minmax(160px,.5fr)}
body.qb-calm .qb-subject-hero-copy{color:var(--qb-calm-ink)}
body.qb-calm .qb-subject-hero h1{color:var(--qb-calm-ink);font-size:clamp(30px,3.3vw,42px);font-weight:400;line-height:1.15;text-shadow:none}
body.qb-calm .qb-subject-hero-copy>p{color:var(--qb-calm-muted);font-size:15px;font-weight:400;line-height:1.6}
body.qb-calm :is(.qb-subject-kicker,.qb-subject-progress-copy,.qb-subject-progress-count){color:var(--qb-calm-green)}
body.qb-calm .qb-subject-kicker{font-weight:600;letter-spacing:0;text-transform:none}
body.qb-calm .qb-subject-back{background:var(--qb-calm-paper);border-color:#cbd6c3;color:var(--qb-calm-green);border-radius:8px;font-weight:600}
body.qb-calm .qb-subject-art{border:0;border-radius:12px;background:transparent;box-shadow:none;width:min(260px,100%)}
body.qb-calm .qb-subject-art img{border-radius:12px}
body.qb-calm :is(.qb-subject-level,.qb-subject-mission,.qb-subject-area,.qb-subject-rail,.qb-map-zone){border-color:var(--qb-calm-line);box-shadow:none}
body.qb-calm .qb-map-hero{background:var(--qb-calm-sage);color:var(--qb-calm-ink);border:1px solid var(--qb-calm-line);box-shadow:none}
body.qb-calm .qb-map-hero :is(h1,h2,p,.qb-map-kicker){color:var(--qb-calm-ink);text-shadow:none}
body.qb-calm #screen-lesson.qb-lesson-redesign{border:1px solid var(--qb-calm-line);border-radius:14px;background:var(--qb-calm-ground);box-shadow:none}
body.qb-calm #screen-lesson.qb-lesson-redesign::before{display:none}
body.qb-calm #screen-lesson.qb-lesson-redesign .lesson-shell{border:1px solid var(--qb-calm-line);border-radius:12px;background:var(--qb-calm-paper);box-shadow:none}
body.qb-calm #screen-lesson.qb-lesson-redesign :is(.lesson-title,.qb-lesson-title){font-family:Georgia,serif;font-weight:400;text-shadow:none}

/* Reading hub, studio directory and the common tool header. Do not recolour
   game/canvas surfaces or force a single design onto specialised editors. */
body.qb-calm .qb-reading-hub{background:var(--qb-calm-ground)}
body.qb-calm .qb-reading-hub__hero{background:var(--qb-calm-sage);border:1px solid var(--qb-calm-line);border-radius:14px;color:var(--qb-calm-ink);box-shadow:none;padding:34px}
body.qb-calm .qb-reading-hub__hero::after{display:none}
body.qb-calm .qb-reading-hub__hero-copy :is(h1,p,span){color:var(--qb-calm-ink)}
body.qb-calm .qb-reading-hub__hero-copy h1{font-size:clamp(30px,3.3vw,42px);font-weight:400;line-height:1.15}
body.qb-calm .qb-reading-hub__back{background:var(--qb-calm-paper);color:var(--qb-calm-green);border:1px solid #cbd6c3;border-radius:8px}
body.qb-calm .qb-reading-hub__paper{transform:none;box-shadow:none;min-height:130px;padding:24px;border:1px solid #d9ccb2}
body.qb-calm .qb-reading-hub__paper::before{margin-bottom:10px}
body.qb-calm :is(.curio-tool-head,.wlcl-head){--wlcl-rr-ink:var(--qb-calm-ink);--wlcl-rr-ink-soft:var(--qb-calm-muted);--wlcl-rr-tile:var(--qb-calm-paper);--wlcl-rr-tile-hover:var(--qb-calm-sage);--wlcl-rr-edge:#cbd6c3;--wlcl-rr-edge-hover:var(--qb-calm-green);--wlcl-rr-rule:var(--qb-calm-line);--wlcl-rr-shadow:none;background:var(--qb-calm-sage)!important;border-bottom:1px solid var(--qb-calm-line);box-shadow:none;backdrop-filter:none}
body.qb-calm :is(.curio-tool-title,.wlcl-head) :is(h1,h2){color:var(--qb-calm-ink)!important;font-family:Georgia,serif;font-weight:400;text-shadow:none;line-height:1.15}
body.qb-calm :is(.curio-tool-title,.wlcl-title) :is(p,span,small){color:var(--qb-calm-muted)}
body.qb-calm .wlcl-head .wlcl-title strong{color:var(--qb-calm-ink);font-family:Georgia,serif;font-weight:400;line-height:1.2}
body.qb-calm .curio-tool-return{color:var(--qb-calm-green);background:var(--qb-calm-paper);border:1px solid #cbd6c3;border-radius:9px;box-shadow:none}
body.qb-calm .curio-tool-return :is(small,strong){color:var(--qb-calm-green)}
body.qb-calm .curio-tool-return:hover{background:var(--qb-calm-paper);border-color:var(--qb-calm-green)}
body.qb-calm .wlcl-head .wlcl-close{background:var(--qb-calm-paper);color:var(--qb-calm-green);border-color:#cbd6c3;box-shadow:none}
body.qb-calm .curio-room-hero.curio-all-hero{background:var(--qb-calm-sage);border-bottom:1px solid var(--qb-calm-line)}
body.qb-calm .curio-room-hero.curio-all-hero :is(h1,.curio-room-kicker,.curio-room-summary){color:var(--qb-calm-ink);text-shadow:none}
body.qb-calm .curio-room-board .curio-board-head{background:var(--qb-calm-sage);border-radius:10px;padding:12px;color:var(--qb-calm-ink)}
body.qb-calm .curio-room-board .curio-board-title h1{color:var(--qb-calm-ink);font-family:Georgia,serif;font-weight:400;line-height:1.15}
body.qb-calm .curio-room-board .curio-board-title p{color:var(--qb-calm-muted)}

/* Creative Learning Lab browsing: keep the room map, search and real artwork. */
body.qb-calm .studios-hub.qbh-two-panel{--qbh-gold:#916523;--qbh-rule:#dedfd3;--qbh-soft:#eef2e8;background:var(--qb-calm-paper);border:1px solid var(--qb-calm-line);border-radius:14px;box-shadow:none;font-size:16px;color:var(--qb-calm-ink)}
body.qb-calm .qbh-side{background:var(--qb-calm-sage);border-right:1px solid var(--qb-calm-line)}
body.qb-calm :is(.qbh-side-head,.qbh-main-head) h1{color:var(--qb-calm-ink);font-weight:400;line-height:1.2;letter-spacing:-.025em}
body.qb-calm .qbh-main-head h1{font-size:clamp(30px,3vw,40px)}
body.qb-calm .qbh-side-head h1{font-size:27px}
body.qb-calm :is(.qbh-kicker,.qbh-nav-label){color:var(--qb-calm-muted);font-weight:500;letter-spacing:0;text-transform:none}
body.qb-calm .qbh-main-head{border-color:var(--qb-calm-line)}
body.qb-calm :is(.qbh-main-head p,.qbh-foot,.qbh-door small,.qbh-empty p){color:var(--qb-calm-muted);font-weight:400}
body.qb-calm .qbh-search input{background:var(--qb-calm-paper);color:var(--qb-calm-ink);border:1px solid #b9c6ae;border-radius:8px;font-weight:400;font-size:15px}
body.qb-calm .qbh-search input::placeholder{color:var(--qb-calm-muted)}
body.qb-calm .qbh-nav-item{color:var(--qb-calm-ink);border-radius:8px;font-weight:500}
body.qb-calm .qbh-nav-item small{color:var(--qb-calm-muted);background:var(--qb-calm-paper)}
body.qb-calm .qbh-nav-item.on,body.qb-calm .qbh-nav-item:hover{background:var(--qb-calm-paper);color:var(--qb-calm-green);border-color:#cbd6c3;box-shadow:none}
body.qb-calm :is(.qbh-side-close,.qbh-browse-button,.qbh-teacher-toggle,.qbh-teacher-plan,.qbh-teacher-board){background:var(--qb-calm-paper);color:var(--qb-calm-green);border-color:#cbd6c3;font-weight:600;border-radius:8px}
body.qb-calm .qbh-quick-pick{background:var(--qb-calm-sage);color:var(--qb-calm-green);border:1px solid #cbd6c3;border-radius:9px;box-shadow:none}
body.qb-calm .qbh-quick-pick>span{font-weight:600}
body.qb-calm .qbh-tile{border-color:var(--qb-calm-line);background:var(--qb-calm-paper);box-shadow:none}
body.qb-calm .qbh-tile:hover{box-shadow:0 4px 12px #293e3510;transform:translateY(-2px);border-color:#b9c6ae}
body.qb-calm .qbh-door{background:var(--qb-calm-sage);color:var(--qb-calm-ink);border-color:var(--qb-calm-line)}
body.qb-calm .qbh-empty{background:var(--qb-calm-sage);border-color:var(--qb-calm-line);color:var(--qb-calm-ink)}
body.qb-calm .qbh-empty strong{color:var(--qb-calm-ink)}
body.qb-calm .qbh-teacher-strip{background:var(--qb-calm-sage);color:var(--qb-calm-ink);border-color:var(--qb-calm-line)}
body.qb-calm :is(.qbh-teacher-kicker,.qbh-teacher-strip p){color:var(--qb-calm-muted)}

/* Direct directories and art collections use their existing compact controls. */
body.qb-calm .qb-tool-page{background:var(--qb-calm-ground);color:var(--qb-calm-ink)}
body.qb-calm .qb-tool-back{background:var(--qb-calm-paper);color:var(--qb-calm-green);border-color:#cbd6c3;border-radius:8px;box-shadow:none}
body.qb-calm :is(.wd-head,.zarc-wrap,.zd-wrap)>h1{color:var(--qb-calm-ink);font:400 clamp(28px,3vw,38px)/1.2 Georgia,serif;letter-spacing:-.025em}
body.qb-calm .scihub-hero{background:var(--qb-calm-sage);border-bottom:1px solid var(--qb-calm-line)}
body.qb-calm .scihub-title :is(h1,p),body.qb-calm .scihub-kicker{color:var(--qb-calm-ink)}
body.qb-calm .scihub-title h1{font-weight:400;font-size:clamp(28px,3vw,38px);line-height:1.2}
body.qb-calm .scihub-back{background:var(--qb-calm-paper);color:var(--qb-calm-green);border-color:#cbd6c3;box-shadow:none}
body.qb-calm .scihub-tool-head{background:var(--qb-calm-sage);color:var(--qb-calm-ink)}
body.qb-calm .scihub-tool-head .scihub-case{color:var(--qb-calm-muted)}

/* Standalone test and curriculum pages reuse this cached presentation layer.
   Embedded duplicate heroes stay hidden; question/marking colours are untouched. */
body.qb-calm :is(.placement-hero,.practice-tests-root .practice-hero){background:var(--qb-calm-sage);border:1px solid var(--qb-calm-line);border-radius:14px;box-shadow:none}
body.qb-calm :is(.placement-hero,.practice-tests-root .practice-hero) h1{color:var(--qb-calm-ink);font:400 clamp(28px,3vw,38px)/1.2 Georgia,serif}
body.qb-calm :is(.placement-hero,.practice-tests-root .practice-hero) :is(.eyebrow,.hero-copy){color:var(--qb-calm-muted);font-weight:400}
body.qb-calm .qc-wrap{--ink:var(--qb-calm-ink);--soft:var(--qb-calm-muted);--line:var(--qb-calm-line);--brand:var(--qb-calm-green);--wash:var(--qb-calm-ground);--card:var(--qb-calm-paper);--chip:var(--qb-calm-sage)}
body.qb-calm:not(.qc-embed) .qc-wrap>header h1{font:400 32px/1.2 Georgia,serif;color:var(--qb-calm-ink)}
body.qb-calm .qc-controls{background:var(--qb-calm-ground)}

/* Public entry and account forms use the same warm paper; payment controls,
   identity providers and credential handlers are unchanged. */
body.qb-calm #screen-login{background:var(--qb-calm-ground)}
body.qb-calm .wl-lp-proof{background:var(--qb-calm-paper);border-color:var(--qb-calm-line);box-shadow:none}
body.qb-calm .wl-lp-proof-i b{color:var(--qb-calm-green)}
body.qb-calm :is(.wl-lp-proof-i span,.wl-lp-shots-sub){color:var(--qb-calm-muted)}
body.qb-calm .wl-landing{color:var(--qb-calm-ink);font-family:QBPublic,system-ui,sans-serif}
body.qb-calm .wl-lp-hero{grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);padding:34px;gap:32px;background:var(--qb-calm-sage);border:1px solid var(--qb-calm-line);border-radius:17px;box-shadow:none}
body.qb-calm .wl-lp-hero h1{color:var(--qb-calm-ink);font:400 clamp(32px,4vw,54px)/1.15 Georgia,serif;letter-spacing:-.025em;text-shadow:none}
body.qb-calm .wl-lp-tag{color:var(--qb-calm-muted);font-size:16px;font-weight:400;line-height:1.65}
body.qb-calm .wl-lp-badge{background:transparent;color:var(--qb-calm-muted);border:0;font-size:12px;font-weight:500}
body.qb-calm .wl-lp-btn{border-radius:9px;box-shadow:none;font-family:inherit;font-weight:600}
body.qb-calm .wl-lp-btn.primary{background:var(--qb-calm-green);color:#fff}
body.qb-calm .wl-lp-btn.ghost{background:var(--qb-calm-paper);color:var(--qb-calm-green);border:1px solid #cbd6c3}
body.qb-calm .wl-lp-hero-tx{margin:0;text-align:left}
body.qb-calm .wl-lp-cta{justify-content:flex-start}
body.qb-calm .wl-lp-hero-img{order:0}
body.qb-calm .wl-lp-hero-img img{height:260px;object-fit:cover;border-radius:12px;box-shadow:none}
body.qb-calm :is(.wl-lp-h2,.wl-lp-shots-h,.wl-lp-intro h2,.wl-lp-closing h2,.wl-lp-row-tx h3){font-family:Georgia,serif;font-weight:400;color:var(--qb-calm-ink)}
body.qb-calm .wl-auth-card{border:1px solid var(--qb-calm-line);border-radius:14px;background:var(--qb-calm-paper);box-shadow:0 6px 22px #293e350b}
body.qb-calm .wl-auth-card h2{font-family:Georgia,serif;font-weight:400;color:var(--qb-calm-ink)}
body.qb-calm .wl-auth-tabs .wl-auth-tab{border-width:1px;border-radius:8px;background:var(--qb-calm-paper);color:var(--qb-calm-muted);box-shadow:none}
body.qb-calm .wl-auth-tabs .wl-auth-tab.active{background:var(--qb-calm-sage);border-color:var(--qb-calm-green);color:var(--qb-calm-green)}
body.qb-calm .wl-auth-card .wl-input{border:1px solid #b9c6ae;border-radius:8px;background:#fffdf8;color:var(--qb-calm-ink)}
body.qb-calm :is(.qb-destination-copy,.hero,.qb-subject-hero-copy,.wl-auth-card) :focus-visible{outline:3px solid #916523;outline-offset:3px}

@media(max-width:1000px){body.qb-calm #screen-home #subject-grid:not(.qb-subject-hub-grid){grid-template-columns:repeat(3,minmax(0,1fr))}body.qb-calm #screen-home:not(.qb-subject-mode)>.hero{padding:25px}}
@media(max-width:700px){
body.qb-calm #screen-writing>.qb-destination-hero{grid-template-columns:minmax(0,1fr) 76px;min-height:0;margin-bottom:18px;border-radius:12px}
body.qb-calm #screen-writing .qb-destination-copy{padding:20px 17px}
body.qb-calm:not(:has(:is(#screen-teacher,#screen-recordkeeping).active)) .app{padding-inline:10px!important}
body.qb-calm:not(:has(:is(#screen-teacher,#screen-recordkeeping).active)) #wl-tabbar{display:flex!important;flex-wrap:nowrap!important;justify-content:flex-start!important;align-items:center;gap:4px;padding:5px 8px;overflow-x:auto;overflow-y:hidden;min-height:76px;scrollbar-width:thin;scrollbar-color:#cbd6c3 transparent}
body.qb-calm:not(:has(:is(#screen-teacher,#screen-recordkeeping).active)) #wl-tabbar :is(.wl-tab,.wl-navgroup){flex:0 0 68px;min-width:68px;width:68px;max-width:68px;min-height:60px;white-space:normal;word-break:normal;overflow-wrap:normal}
/* Communication and reading support remain immediately available while other links scroll. */
body.qb-calm:not(:has(:is(#screen-teacher,#screen-recordkeeping).active)) #wl-tabbar :is(#mv-launch,#tts-launcher){position:sticky;right:0;z-index:2;background:var(--qb-calm-paper);box-shadow:-5px 0 8px var(--qb-calm-paper)}
body.qb-calm:not(:has(:is(#screen-teacher,#screen-recordkeeping).active)) #wl-tabbar #mv-launch{right:72px}

body.qb-calm :is(.qb-destination:not(:where(#screen-teacher,#screen-recordkeeping,#screen-custom)),.qb-tool-page)>.qb-destination-hero{grid-template-columns:minmax(0,1fr) 76px;min-height:0;margin-bottom:18px;border-radius:12px}
body.qb-calm :is(.qb-destination:not(:where(#screen-teacher,#screen-recordkeeping,#screen-custom)),.qb-tool-page) .qb-destination-copy{padding:20px 17px}
body.qb-calm :is(.qb-destination:not(:where(#screen-teacher,#screen-recordkeeping,#screen-custom)),.qb-tool-page) .qb-destination-copy h1{font-size:30px}
body.qb-calm :is(.qb-destination:not(:where(#screen-teacher,#screen-recordkeeping,#screen-custom)),.qb-tool-page) .qb-destination-copy p{font-size:14px;line-height:1.55}
body.qb-calm :is(.qb-destination:not(:where(#screen-teacher,#screen-recordkeeping,#screen-custom)),.qb-tool-page) .qb-destination-art{margin:12px 10px 12px 0;align-self:start}
body.qb-calm :is(.qb-destination:not(:where(#screen-teacher,#screen-recordkeeping,#screen-custom)),.qb-tool-page) .qb-destination-art img{height:65px}
body.qb-calm #screen-home:not(.qb-subject-mode)>.hero{display:block;min-height:0;padding:24px 21px 170px;margin-bottom:20px}
body.qb-calm #screen-home:not(.qb-subject-mode)>.hero::before{inset:auto 0 0;height:150px;background-position:center}
body.qb-calm #screen-home:not(.qb-subject-mode)>.hero h1{font-size:38px;margin-right:0}
body.qb-calm #screen-home:not(.qb-subject-mode)>.hero :is(.sub,.hero-news){margin-right:0}
body.qb-calm #screen-home:not(.qb-subject-mode)>.hero .hero-news{display:block;font-size:14px}
body.qb-calm #screen-home:not(.qb-subject-mode) #home-stats{margin-right:0;gap:4px}
body.qb-calm #screen-home #home-stats .wl-stat{padding-right:7px;margin-right:3px}
body.qb-calm #screen-home #subject-grid:not(.qb-subject-hub-grid){grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
body.qb-calm #screen-home #subject-grid:not(.qb-subject-hub-grid)>.subject-btn{min-height:130px;padding:13px 9px}
body.qb-calm #screen-home .home-section-heading h2{font-size:24px}
body.qb-calm .qb-subject-hero{grid-template-columns:minmax(0,1fr);padding:18px}
body.qb-calm .qb-subject-hero h1{font-size:34px}
body.qb-calm .qb-subject-art{width:min(220px,100%);justify-self:start}
body.qb-calm .qb-reading-hub__hero{padding:26px 20px;grid-template-columns:minmax(0,1fr)}
body.qb-calm .qb-reading-hub__hero-copy h1{font-size:34px}
body.qb-calm .wl-lp-hero{grid-template-columns:minmax(0,1fr);padding:24px 20px;gap:20px}
body.qb-calm .wl-lp-hero-img img{height:180px}
body.qb-calm .wl-lp-hero h1{font-size:34px}
body.qb-calm .wl-lp-tag{font-size:15px}
}
@media(prefers-reduced-motion:reduce){body.qb-calm :is(.qb-destination-hero,.hero,.qb-subject-hero,.wl-lp-hero){animation:none;transition:none}}
}
