:root{--s-primary:var(--navy,#1b3a6b);--s-accent:#b8892b;--s-accent-ink:#785810;--studio-shadow:var(--sh1)}
html,body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px;line-height:1.5}
#teacherTagGroups p{font-size:12px;line-height:1.5;color:var(--mute)}
body{min-height:100vh}button,input,select{font:inherit;color:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--s-accent);outline-offset:3px}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1{font-size:25px;font-family:var(--head);font-weight:600}h2{font-size:18px}h3{font-size:14px}p{color:var(--mute);font-size:14px;line-height:1.6}a{text-decoration:none;color:inherit}.muted{color:var(--mute)}.kick{font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--mute)}
.chrome{min-height:72px;background:linear-gradient(180deg,var(--s-primary),var(--navy-deep,#0d1f3c));color:#fff;display:flex;align-items:center;padding:12px 24px;gap:14px;border-bottom:2px solid var(--s-accent)}.crest{height:43px;width:auto;max-width:82px;object-fit:contain}.crest-fallback{border:1px solid var(--s-accent);border-radius:5px;padding:8px;font-family:var(--head);font-weight:600}.org{min-width:0}.org b{font-weight:700;font-size:17px;display:block;line-height:1.3}.org small{display:block;font-size:11px;opacity:.8}.chrome nav{display:flex;gap:3px;margin-left:24px}.chrome nav button,.chrome nav a{color:#fff;font-weight:500;padding:9px 12px;border-radius:8px;background:transparent;font-size:12px;white-space:nowrap}.chrome nav .on{background:rgba(255,255,255,.12);box-shadow:inset 0 -2px 0 var(--s-accent)}.who{margin-left:auto;font-size:12px;max-width:180px;overflow-wrap:anywhere}.who small{display:block;opacity:.75;font-size:10px}.bar{background:var(--card);border-bottom:1px solid var(--line);padding:14px 24px;display:flex;align-items:center;gap:18px}.steps{display:flex;align-items:center;gap:12px;color:var(--faint);font-size:12px;white-space:nowrap}.step{display:flex;gap:7px;align-items:center}.step i{font-style:normal;width:23px;height:23px;border:1px solid var(--line2);border-radius:50%;display:grid;place-items:center;font-size:11px}.step.on{font-weight:600;color:var(--ink)}.step.on i{color:#fff;background:var(--s-primary);border-color:var(--s-primary)}.step.done i{background:var(--ok-bg);color:var(--ok-ink);border-color:#1f7a4d}#backToPick{margin-left:auto}.search{margin-left:auto;flex:1;max-width:450px}.inp{width:100%;border:1px solid var(--line2);border-radius:8px;padding:10px 12px;background:var(--card);min-width:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line2);border-radius:8px;padding:9px 13px;background:var(--card);font-weight:600;font-size:12px;white-space:nowrap}.btn:hover:not(:disabled){border-color:var(--s-primary)}.btn.primary{background:var(--s-primary);border-color:var(--s-primary);color:#fff}.btn.accent{border-color:var(--s-accent);background:var(--s-accent);color:var(--text)}.btn.ghost{border-color:transparent;background:transparent;color:var(--mute)}.btn.sm{padding:5px 9px;font-size:11px}.btn.wide{width:100%;padding:14px 10px}.text-button{font-size:11px;color:var(--mute);text-decoration:underline;background:none}.gate{max-width:480px;padding:32px;margin:14vh auto;background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--studio-shadow)}.gate h1{margin-bottom:12px}.gate .btn{margin-top:20px}.powered{font-size:10px;color:var(--mute);text-align:center;padding:12px}
.pick-grid{display:grid;grid-template-columns:235px minmax(0,1fr) 300px;min-height:calc(100vh - 145px)}.filters{background:var(--card);border-right:1px solid var(--line);padding:22px 18px;display:flex;flex-direction:column;gap:23px}.fg h2{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin-bottom:9px}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{padding:5px 10px;border:1px solid var(--line2);border-radius:22px;font-size:11px;font-weight:600;background:var(--card)}.chip[aria-pressed=true]{background:var(--s-primary);border-color:var(--s-primary);color:#fff}.check{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:12px}.check input{accent-color:var(--sca);width:15px;height:15px;flex:none}.check .count{margin-left:auto;color:var(--faint);font-size:11px}.check.sub{padding-left:16px;color:var(--mute)}.filters-foot{margin-top:auto;border-top:1px solid var(--line);padding-top:16px}.filters-foot .btn{width:100%}.results{padding:19px 22px;min-width:0}.result-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.seg{display:flex;gap:2px;background:var(--paper-soft);border:1px solid var(--line2);border-radius:10px;padding:3px}.seg button{padding:8px 11px;font-size:11px;font-weight:600;border-radius:7px;white-space:nowrap;color:var(--mute)}.seg button[aria-pressed=true]{color:var(--ink);background:var(--card);box-shadow:0 1px 4px #0d1f3c20}.seg .count{font-size:10px;color:var(--faint);margin-left:5px}.result-count{font-size:11px;color:var(--mute);margin:10px 0}.qcard{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;margin-bottom:11px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 15px;box-shadow:var(--studio-shadow)}.qcard.in{border-color:var(--s-primary);box-shadow:0 0 0 1px var(--s-primary)}.meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:11px;color:var(--mute)}.meta strong{color:var(--ink)}.pill{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:20px;padding:2px 8px;background:var(--paper-soft);color:var(--mute);font-size:10px;font-weight:600}.pill.photon{background:var(--warn-bg);color:var(--warn-ink);border-color:#f5d389}.pill.school{background:var(--tint);color:var(--sca);border-color:var(--line)}.stem{font-family:var(--head);font-size:15px;font-weight:400;line-height:1.65;grid-column:1;max-height:105px;overflow:hidden;color:var(--text);overflow-wrap:anywhere}.stem .katex{font-size:1em}.tags{display:flex;flex-wrap:wrap;gap:5px;grid-column:1}.actions{grid-column:2;grid-row:1/span 3;display:flex;flex-direction:column;gap:7px}.actions .btn{min-width:76px}.empty{padding:25px 16px;border:1px dashed var(--line2);border-radius:10px;color:var(--mute);text-align:center;font-size:12px}.more{display:block;margin:20px auto}
.tray{border-left:1px solid var(--line);background:var(--card);display:flex;flex-direction:column;padding-top:20px}.tray-head{padding:0 16px 15px;display:flex;align-items:center;justify-content:space-between}.tray-list{padding:0 14px;flex:1;max-height:55vh;overflow:auto}.tray-item{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:9px;padding:10px;margin-bottom:8px;background:var(--card);min-width:0}.number{width:22px;height:23px;display:grid;place-items:center;border-radius:5px;background:var(--s-primary);color:#fff;font-size:11px;font-weight:700;flex:none}.tray-title{flex:1;min-width:0}.tray-title b{font-size:11px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:3px}.tray-title small{font-size:10px;color:var(--mute)}.icon-button{font-size:16px;color:var(--mute);padding:2px 5px;background:transparent}.totals{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:14px;border-top:1px solid var(--line);margin-top:14px}.totals div{background:var(--paper-soft);padding:9px 2px;border-radius:9px;text-align:center}.totals b{font-weight:700;font-size:21px;display:block}.totals span{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}.tray-go{padding:0 14px 18px}.mix{font-size:11px;color:var(--mute);text-align:center;margin:8px 0 14px}.privacy{font-size:10px;line-height:1.6;color:var(--mute);margin-top:10px}
.arrange-grid{display:grid;grid-template-columns:360px minmax(0,1fr);gap:20px;padding:22px 24px;max-width:1600px;margin:auto}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--studio-shadow);padding:17px;margin-bottom:14px}.card h2{font-size:13px;margin-bottom:14px}.order-row{cursor:grab}.order-row.dragging{opacity:.4}.order-row .order-controls{display:flex;flex-direction:column}.order-controls button{font-size:10px;padding:1px 4px;line-height:1.4}.field{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:600;margin-bottom:12px}.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.layouts{display:grid;grid-template-columns:1fr 1fr;gap:7px}.layout{padding:10px;text-align:left;border:1px solid var(--line2);border-radius:9px;font-size:10px;color:var(--mute);background:var(--card)}.layout b{display:block;font-size:11px;color:var(--ink);margin-bottom:4px}.layout[aria-pressed=true]{background:var(--s-primary);color:#ffffffc9;border-color:var(--s-primary)}.layout[aria-pressed=true] b{color:#fff}.options{margin-top:12px}.options .check{justify-content:space-between}.preview-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:14px}.preview-heading h2{margin:0}.docs{display:grid;grid-template-columns:1fr 1fr;gap:16px}.doc{min-width:0}.doc-label{font-size:11px;display:flex;gap:6px;align-items:center;justify-content:space-between;margin-bottom:9px}.preview-scroll{background:#eae8e4;border:1px solid var(--line);border-radius:5px;height:510px;overflow:auto;padding:8px}.preview-canvas{position:relative;width:100%}.preview-canvas>.pw-doc{width:822px;transform-origin:top left;position:absolute;top:0;left:0;box-shadow:0 2px 7px #0d1f3c12}.preview-canvas .pw-page{margin:0 0 15px!important}.downloads{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:12px}.downloads .btn{flex:1;padding:13px 10px}.save-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.save-row .check{font-size:11px}.save-row .powered{margin-left:auto;padding:0}.pdf-hint{font-size:11px;margin:8px 0 15px}.library{max-width:1050px;margin:30px auto;padding:0 24px}.library-head{display:flex;justify-content:space-between;gap:15px;margin-bottom:22px}.saved-card{display:flex;align-items:center;justify-content:space-between;gap:18px}.saved-card h2{margin:0 0 6px}.saved-card p{font-size:12px}.saved-actions{display:flex;gap:8px}.notice{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;border-radius:9px;padding:12px 18px;font-size:12px;z-index:100;max-width:90vw;box-shadow:var(--shadow-md)}.notice.error{background:#8b2525}.loading{color:var(--mute);font-size:12px;padding:15px}dialog{border:1px solid var(--line);border-radius:14px;width:min(820px,94vw);max-height:90vh;padding:24px;color:var(--ink);background:var(--card);box-shadow:var(--shadow-lg)}dialog::backdrop{background:#0d1f3c70}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.modal-body{font-family:Georgia,serif;font-size:16px;line-height:1.8;overflow-wrap:anywhere}.modal-body h3{font-family:Inter,sans-serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin:18px 0 10px}.modal-foot{display:flex;justify-content:flex-end;margin-top:20px}.marks-badge{float:right;font-size:12px}.ltx-list{padding-left:1.5em;list-style:lower-alpha}.latex-table{border-collapse:collapse}.latex-table td{padding:4px 9px;border:1px solid var(--line)}.katex-display{overflow-x:auto;overflow-y:hidden}.stage{position:absolute;left:-20000px;width:690px;visibility:hidden}
@media(min-width:1200px){.pick-grid{height:calc(100vh - 145px);min-height:580px}.filters,.results{overflow-y:auto}.tray-list{max-height:none}}
@media(max-width:1250px){.chrome nav{margin-left:5px}.chrome nav button,.chrome nav a{padding:8px;font-size:11px}.who{display:none}.pick-grid{grid-template-columns:210px minmax(0,1fr) 265px}.results{padding:16px}.steps{gap:7px;font-size:11px}.bar{padding:12px 18px;gap:12px}.arrange-grid{grid-template-columns:320px minmax(0,1fr);padding:18px;gap:16px}.docs{grid-template-columns:1fr}.preview-scroll{height:410px}}
@media(max-width:950px){.chrome{flex-wrap:wrap;gap:10px;padding:12px 18px}.chrome nav{order:3;width:100%;margin:0;overflow-x:auto}.bar{flex-wrap:wrap}.steps{width:100%;justify-content:center}.search{margin:0;max-width:none}.pick-grid{grid-template-columns:190px minmax(0,1fr)}.tray{grid-column:1/-1;border-left:0;border-top:1px solid var(--line)}.tray-list{max-height:240px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.tray-item{margin:0 0 8px}.tray-go{max-width:600px;width:100%;align-self:center}.totals{margin-top:5px}.arrange-grid{grid-template-columns:290px minmax(0,1fr)}.downloads{flex-direction:column}.org b{font-size:16px}}
@media(max-width:680px){.pick-grid{display:flex;flex-direction:column}.filters{border-right:0;border-bottom:1px solid var(--line);padding:15px;gap:16px}.filters .fg:not(:first-child){display:none}.filters.expanded .fg{display:block}.filters-foot{margin-top:0;padding-top:12px}.filters-foot .privacy{display:none}.filter-toggle{display:inline-flex!important}.results{padding:15px}.seg{width:100%;justify-content:space-between}.seg button{font-size:10px;padding:8px 6px}.qcard{padding:12px;gap:7px 8px}.stem{font-size:14px}.actions .btn{min-width:61px;padding:7px}.tray-list{display:block}.arrange-grid{display:block;padding:15px}.docs{grid-template-columns:1fr}.preview-scroll{height:460px}.steps{font-size:9px;gap:5px}.step{gap:4px}.step i{width:19px;height:19px;font-size:10px}.bar .btn{font-size:10px;padding:9px}.org b{font-size:14px}.org small{font-size:10px}.crest{height:36px}.chrome nav{gap:0}.chrome nav button,.chrome nav a{font-size:10px;padding:8px}.library{margin:20px auto;padding:0 15px}.library-head,.saved-card{align-items:flex-start;flex-direction:column}.gate{margin:12vh 18px}.save-row{align-items:flex-start;flex-direction:column}.save-row .powered{margin:0}.result-head{gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Arrange & design: school defaults, per-paper copies and privacy. */
.arrange-grid{grid-template-columns:440px minmax(0,1fr)}.paper-design .sub,.card .sub{font-size:12px;margin:-5px 0 14px}.design-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:16px}.design-card{padding:6px 5px;border:1.5px solid var(--line);border-radius:9px;background:var(--tint2);min-width:0}.design-card[aria-pressed=true]{border-color:var(--s-primary);background:var(--tint);box-shadow:0 0 0 3px #1f3a6818}.design-card strong{font-size:11px;display:block;margin-top:6px}.design-card small{display:block;min-height:15px;font-size:9px;color:var(--mute);font-style:italic}.design-thumb{height:112px;background:var(--card);box-shadow:0 1px 5px #101a3028;display:block;margin:0 auto;max-width:79px;padding:7px 5px;color:var(--sca);text-align:left;position:relative}.design-thumb i{display:block;border-top:3px solid currentColor;border-bottom:1px solid var(--s-accent);height:9px}.design-thumb b{display:block;margin-top:7px;width:80%;height:6px;background:currentColor;opacity:.7}.design-thumb em{display:block;margin-top:12px;height:12px;border-left:3px solid var(--s-accent);background:repeating-linear-gradient(to bottom,var(--line2) 0,var(--line2) 1px,transparent 1px,transparent 4px);opacity:.7}.design-thumb:after{content:'';position:absolute;bottom:6px;left:5px;right:5px;border-bottom:1px solid var(--line2)}.design-thumb.modern i{height:24px;background:var(--s-primary);border-bottom:3px solid var(--s-accent)}.design-thumb.modern em{border-left-width:5px}.design-thumb.minimal,.design-thumb.exam{color:var(--text)}.design-thumb.minimal i,.design-thumb.exam i{border-width:1px;border-color:#333}.design-thumb.minimal em,.design-thumb.exam em{border-left:0}.design-thumb.exam{border-right:8px solid var(--tint)}.answer-options{border:0;padding:0;margin:0 0 12px;min-width:0}.answer-options legend{font-size:11px;font-weight:600;margin-bottom:8px}.answer-options .seg{margin-bottom:10px;justify-content:space-between}.answer-options .seg button{padding:7px 6px;font-size:10px}.answer-options .row2{gap:8px}.paper-design .field{margin-bottom:8px}.paper-design .inp{font-size:11px;padding:9px}.question-answer{font-size:10px;width:127px;padding:6px;flex:none}.order-row{gap:6px;padding:8px}.order-row .tray-title b{font-size:11px}.toggle-row{justify-content:space-between;padding:0 0 12px;gap:12px}.toggle-row span{flex:1}.toggle-row b{font-size:12px}.toggle-row small{display:block;font-size:11px;color:var(--mute);margin-top:3px}.toggle-row input{width:32px;height:20px}.cover-picker{display:flex;gap:8px;margin:0 0 10px}.cover-picker select{font-size:11px}.cover-summary{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:8px;background:var(--paper-soft);border-radius:9px;padding:10px;margin-bottom:14px;overflow-wrap:anywhere}.cover-summary small{display:block;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}.cover-summary b{font-size:11px}.support-banner{padding:12px 24px;background:var(--warn-bg);border-bottom:1px solid #e5cb8f;color:var(--warn-ink);font-size:12px}.promise-link{display:block;text-decoration:underline;text-underline-offset:3px}.privacy-dialog{max-width:680px;padding:28px;margin:auto}.privacy-dialog h1{margin:10px 0 16px}.privacy-dialog ol{list-style:decimal;padding-left:22px;font-size:13px}.privacy-dialog li{padding:0 0 13px 4px}.privacy-dialog p{font-size:11px;margin-top:10px}.privacy-dialog a{text-decoration:underline}.privacy-dialog #privacyError{color:var(--danger)}.cover-drawer{margin:0 0 0 auto;height:100dvh;max-height:100dvh;width:min(1100px,96vw);border-radius:14px 0 0 14px;padding:22px}.cover-drawer .modal-head p{font-size:12px;margin-top:5px}.cover-drawer-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.drawer-preview{min-width:0}.drawer-preview h3{font-size:12px;margin-bottom:12px}.drawer-preview .preview-scroll{height:75vh}.cover-drawer textarea{font:inherit;max-width:100%}
@media(min-width:1251px){.docs{gap:12px}.doc-label{flex-wrap:wrap}.doc-label .muted{font-size:10px}}
@media(max-width:1250px) and (min-width:951px){.arrange-grid{grid-template-columns:410px minmax(0,1fr)}}
@media(max-width:950px) and (min-width:681px){.arrange-grid{grid-template-columns:minmax(340px,1fr) minmax(0,1fr)}}
@media(max-width:680px){.cover-drawer-grid{display:block}.cover-drawer{width:100vw;border-radius:0;padding:18px}.drawer-preview{margin-top:20px}.design-thumb{height:105px}.cover-summary{grid-template-columns:1.5fr 1fr}.order-row{flex-wrap:wrap}.order-row .tray-title{min-width:80px}.question-answer{width:118px}.order-controls{margin-left:auto}.support-banner{padding:12px 15px}.answer-options .seg button{font-size:10px;padding:8px 5px}.privacy-dialog{padding:22px}}
.design-thumb.live-thumb{padding:0;overflow:hidden;pointer-events:none;max-width:79px;width:100%}.design-thumb.live-thumb:after{display:none}.design-thumb.live-thumb>.pw-doc{position:absolute;top:0;left:0;width:794px;transform-origin:top left;text-align:left}.design-thumb.live-thumb.exam{border-right:0}.cover-drawer.has-component-preview .cover-drawer-grid{display:block}.cover-drawer.has-component-preview .drawer-preview{display:none}.cover-drawer .pce-grid{grid-template-columns:minmax(280px,1fr) minmax(250px,1fr)}
@media(max-width:680px){.cover-drawer .pce-grid{grid-template-columns:1fr}}
.toggle-row input[role=switch]{appearance:none;position:relative;width:34px;height:20px;border:1px solid var(--line2);border-radius:20px;background:#c8ced8;cursor:pointer;transition:background .15s}.toggle-row input[role=switch]:after{content:'';position:absolute;left:2px;top:2px;width:14px;height:14px;border-radius:50%;background:var(--card);box-shadow:0 1px 3px #0002;transition:transform .15s}.toggle-row input[role=switch]:checked{background:var(--s-primary);border-color:var(--s-primary)}.toggle-row input[role=switch]:checked:after{transform:translateX(14px)}

/* The global reset clears the native dialog margin; centre the promise. */
.privacy-dialog ol{list-style:none;padding-left:0}
.privacy-dialog li{border-bottom:1px solid var(--line);padding:12px 4px 12px 38px;position:relative}
.privacy-dialog li:before{content:'✓';position:absolute;left:0;top:12px;display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:var(--tint);color:var(--sca);font-weight:700}
.privacy-dialog>p:first-of-type{background:var(--paper-soft);padding:12px;border-radius:8px}

.skip-link{position:fixed;top:8px;left:8px;z-index:10000;padding:12px;background:var(--card);border:2px solid var(--s-primary);transform:translateY(-150%)}.skip-link:focus{transform:none}.mobile-arrange{display:none}.skeleton{color:var(--mute);background:linear-gradient(100deg,var(--tint),var(--line),var(--tint));min-height:65px;border-radius:5px}.downloads{flex-wrap:wrap}#recentQuestionsDialog{width:min(640px,90vw)}
@media(max-width:1099px){.mobile-arrange{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:100;align-items:center;justify-content:space-between;gap:8px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--card);border-top:2px solid var(--s-accent);box-shadow:0 -4px 20px #13213d18}.pick-grid{display:flex;flex-direction:column;padding-bottom:80px}.filters{border-right:0;border-bottom:1px solid var(--line);padding:15px}.filters .fg:not(:first-of-type){display:none}.filters.expanded .fg{display:block}.filters-foot{margin:0;padding-top:8px}.filter-toggle{display:inline-flex!important}.filters-foot .privacy{display:none}.chrome{flex-wrap:wrap}.chrome nav{order:3;width:100%;overflow-x:auto;padding-right:30px;box-shadow:inset -12px 0 10px -12px white}.results{min-width:0}.tray-list{max-height:240px}.mobile-arrange span{font-size:12px;font-weight:600}}

/* Phase 2b subject chrome and shared taxonomy rail. Results precede the rail in
   DOM/tab order; explicit grid placement keeps the approved visual order. */
.chrome{position:relative;z-index:12;gap:12px}.chrome nav{margin-left:auto}.chrome nav button,.chrome nav a{padding:9px 8px;font-size:11px}.org b{font-size:15px}.who{min-width:85px}.subject-control{position:relative;flex:none}.subject-pill{display:inline-flex;align-items:center;gap:8px;color:#fff;background:#ffffff18;border:1px solid #ffffff48;border-radius:99px;padding:7px 11px;font-size:12px;font-weight:600;white-space:nowrap}.subject-pill:before,.subject-dot{content:'';display:block;width:8px;height:8px;background:var(--s-accent);border-radius:50%;flex:none}.subject-menu{position:absolute;top:calc(100% + 12px);left:0;width:340px;max-width:calc(100vw - 32px);max-height:75vh;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:8px;box-shadow:0 16px 40px #0d1f3c47;background:var(--card);color:var(--ink);z-index:50}.subject-menu h2{font:700 10px/1.5 Inter,sans-serif;text-transform:uppercase;letter-spacing:.12em;color:var(--mute);padding:8px 10px 4px}.subject-option{display:flex;align-items:center;gap:10px;padding:10px;width:100%;text-align:left;background:var(--card);border:0;border-radius:8px}.subject-option:hover:not(.locked),.subject-option[aria-current]{background:var(--tint)}.subject-option b{display:block;font-size:13px}.subject-option small{display:block;font-size:11px;color:var(--mute);margin-top:2px}.subject-option.locked{color:var(--faint)}.subject-option.locked small{color:var(--faint)}.subject-menu p{font-size:11px;line-height:1.5;padding:10px;border-top:1px solid var(--line);margin-top:6px}.subject-menu>a{font-size:11px;padding:8px}.current-subject{font-size:10px;color:var(--sca);margin-left:auto;background:var(--tint);border-radius:12px;padding:3px 7px}.course-scope{font-size:12px;border:1px solid #1f3a6826;background:var(--tint);border-radius:18px;padding:6px 12px;margin-left:auto;max-width:530px}.bar{flex-wrap:wrap;gap:12px}.bar .steps{margin:0;padding:0}.pick-grid{grid-template-columns:250px minmax(0,1fr) 300px;height:calc(100vh - 160px)}.results{grid-column:2;grid-row:1}.filters{grid-column:1;grid-row:1;padding:20px 16px}.tray{grid-column:3;grid-row:1}.filters #filterPanel{display:flex;flex-direction:column;gap:21px;min-height:100%}.source-segment{width:100%;box-sizing:border-box}.source-segment button{flex:1;padding:8px 5px;min-width:0}.source-segment .count{margin-left:2px}.fg h2{font-size:11px;text-transform:none;letter-spacing:0;color:var(--ink)}.topic-hint{font-size:10px;color:var(--mute);line-height:1.5;margin-top:10px}.topic-hint button{font-size:10px;color:var(--sca);padding:3px 0}.topic-heading{display:flex;align-items:center;border-top:1px solid var(--line)}.topic-heading .check{flex:1;min-width:0;font-weight:600}.topic-expand{width:20px;flex:none;background:none;border:0;padding:8px 2px;color:var(--mute);font-size:12px}.topic-spacer{width:20px;flex:none}.topic-child{padding-left:30px}.topic-child>span:not(.count){flex:1;min-width:0}.check .count{padding-left:4px;flex:none}.topic-empty{font-size:12px;padding:12px 0}#topicSearch{font-size:11px;padding:9px;margin-bottom:9px}.chips small{font-size:9px;opacity:.85;margin-left:2px}.active-filters{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:4px 0 10px}.active-filters .chip{background:var(--s-primary);border-color:var(--s-primary);color:white;font-size:10px;padding:3px 9px}.active-filters .text-button{font-size:11px;padding:5px}.result-head .search{margin:0;max-width:none}.result-head select{max-width:155px}.tray-course{font-size:11px;color:var(--mute);padding:0 16px 12px}.tray-scope-note{font-size:11px;line-height:1.5;background:var(--tint);border:1px solid #dce3ee;border-radius:8px;padding:10px;margin:0 14px 12px}.filter-toggle{display:none}#filterToggle{margin:12px 16px}.filter-toggle:focus-visible{outline-offset:2px}
@media(min-width:1100px) and (max-width:1399px){.chrome{flex-wrap:wrap}.chrome nav{order:3;width:100%;justify-content:center}.who{margin-left:auto}.pick-grid{height:calc(100vh - 200px)}.course-scope{max-width:450px}}
@media(max-width:1099px){.chrome{padding:12px 16px}.chrome nav{justify-content:flex-start}.subject-control{margin-left:auto}.subject-menu{left:auto;right:0}.org{max-width:calc(100% - 70px)}.bar{padding:12px 16px}.course-scope{width:100%;max-width:none;margin:0;border-radius:8px;font-size:11px}.bar .steps{width:100%;justify-content:center}.pick-grid{display:flex;flex-direction:column;height:auto;min-height:0}.results{order:2}.filters{order:1;padding:0;border:0;overflow:visible}.tray{order:3}.filters #filterPanel{display:none}.filters.expanded #filterPanel{display:flex;gap:20px;padding:16px;max-height:65vh;overflow:auto;border-bottom:1px solid var(--line);background:var(--card)}.filters .fg,.filters .fg:not(:first-of-type),.filters .fg:not(:first-child){display:block}.filters-foot{margin-top:0}.filter-toggle{display:inline-flex}.results .result-head{flex-wrap:nowrap}.tray-scope-note{max-width:580px}.filter-toggle[hidden]{display:none!important}}
@media(max-width:480px){.subject-control{margin-left:0}.subject-pill{font-size:11px;padding:6px 10px}.subject-menu{position:fixed;top:130px;left:16px;right:16px;width:auto;max-width:none}.org b{font-size:14px}.chrome nav{margin:0}.result-head .search{flex:1;min-width:0}.result-head select{max-width:125px}.result-head .inp{padding:8px;font-size:10px}.qcard .meta{font-size:10px}.topic-child{padding-left:30px}}
/* Keep card actions on the footer line so author controls do not stretch the
   stem or turn short topic chips into tall grid cells. */
.qcard{align-items:start}.qcard .meta,.qcard .stem{grid-column:1/-1}.qcard .stem{margin:3px 0}.qcard .tags{grid-row:3;align-self:center}.qcard .tags .pill{align-self:center}.qcard .actions{grid-column:2;grid-row:3;flex-direction:row;flex-wrap:wrap;justify-content:flex-end;max-width:340px}.qcard .actions .btn{min-width:0;padding:7px 9px}
@media(max-width:680px){.qcard .tags{grid-column:1/-1}.qcard .actions{grid-column:1/-1;grid-row:4;max-width:none}.qcard .actions .btn{padding:7px 11px}}

/* Small try-it packs retain the normal Photon bank source/filter. */
.pill.sample{background:var(--warn-bg);color:var(--warn-ink);border:1px solid var(--warn-line)}
.sample-pack-hint{margin:0 0 14px;padding:10px 12px;border:1px solid var(--warn-line);border-radius:8px;background:var(--warn-bg);color:var(--warn-ink);font-size:12px;line-height:1.5}

/* Phase 3: school-safe type metadata and the variant drawer entry points. */
.school-type-badge{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;max-width:100%;text-align:left;padding:4px 9px;border:1px solid var(--ok-line);border-radius:16px;background:var(--ok-bg);color:var(--ok-ink);font:600 11px/1.5 Inter,sans-serif;cursor:pointer}
.type-kicker{font:700 9px/1.5 Inter,sans-serif;letter-spacing:.09em;text-transform:uppercase;color:var(--ok-ink)}
.type-title{overflow-wrap:anywhere}.type-sessions{display:inline-flex;gap:2px;align-items:flex-end;height:12px;flex:none}.type-session{display:flex;flex-direction:column;align-items:center;gap:5px}.type-session i{display:block;height:11px;width:3px;border-radius:1px;background:var(--ok-line)}.type-session i.appeared{background:#2f7a64}
.qcard .meta>[data-type-badge]{max-width:100%;min-width:0}.qcard .actions{max-width:100%;grid-column:1/-1;grid-row:4}.qcard .tags{grid-column:1/-1}.type-make-another{border-color:var(--line2);color:var(--sca);font-weight:600}.type-unavailable{font:11px/1.5 Inter,sans-serif;color:var(--mute)}
.school-type-popover{position:fixed;margin:0;width:min(520px,calc(100vw - 24px));max-height:calc(100dvh - 24px);box-sizing:border-box;padding:22px;border:1px solid var(--ok-line);border-radius:14px;box-shadow:0 18px 48px #0d1f3c38;overflow-y:auto;font:13px/1.6 Inter,sans-serif;overflow-wrap:anywhere}
.school-type-popover::backdrop{background:#0d1f3c12}.type-popover-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.type-popover-head .type-kicker{font-size:10px}.school-type-popover h2{font:600 23px/1.25 var(--head);margin:7px 0 12px}.type-essence{font-size:13px;line-height:1.6;color:var(--dim)}.type-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:16px 0 10px}.type-tiles>div{background:var(--ok-bg);border-radius:9px;padding:10px;min-width:0}.type-tiles b{display:block;font-size:17px;line-height:1.4;color:var(--ok-ink)}.type-tiles span{font-size:10px;line-height:1.5;color:var(--mute)}
.type-sessions.labelled{display:flex;height:auto;gap:5px;align-items:flex-end;overflow-x:auto;padding:0 0 5px}.labelled .type-session{flex:1;min-width:23px}.labelled .type-session i{width:100%;height:23px;border-radius:3px}.labelled .type-session i.absent{height:8px;margin-top:15px}.type-session small{font-size:9px;color:var(--mute)}
.school-type-popover h3{font:700 12px/1.5 Inter,sans-serif;margin:15px 0 8px}.type-shape{list-style:decimal;padding-left:22px}.type-shape li{position:relative;padding:3px 38px 3px 0}.type-shape .optional{color:var(--mute)}.type-marks{position:absolute;right:0;top:4px;border:1px solid var(--line);border-radius:12px;padding:0 7px;background:var(--tint2);font-size:11px;color:var(--ink)}.type-traps{list-style:disc;padding-left:20px}.type-traps li{padding:3px 0;color:var(--warn-ink)}.type-popover-foot{border-top:1px solid var(--line);padding-top:12px;margin-top:16px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;justify-content:space-between}.type-popover-foot>span:first-child{font-size:10px;color:var(--mute);flex:1;min-width:140px}.type-popover-foot .btn{font-size:11px;padding:8px}.type-disclaimer{font-size:10px;line-height:1.6;color:var(--mute);margin:12px 0 0}.preview-type-badge{margin-top:14px}.modal-foot{gap:10px;flex-wrap:wrap}.school-type-badge:focus-visible,.type-make-another:focus-visible,.type-close:focus-visible{outline:3px solid var(--s-accent);outline-offset:3px}
@media(max-width:680px){.qcard .actions{grid-row:4}.school-type-popover{padding:16px}.school-type-popover h2{font-size:21px}.type-tiles{gap:5px}.type-tiles>div{padding:8px}.type-tiles b{font-size:15px}.type-tiles span{font-size:9px}.school-type-badge{gap:4px;font-size:10px}.type-kicker{font-size:8px}.type-popover-foot{align-items:flex-start}.type-popover-variant{width:100%}}
/* U1 school adoption polish. */
dialog{margin:auto;overflow:auto;max-height:calc(100dvh - 32px)}.modal-head{position:sticky;top:-24px;background:var(--card);z-index:3;padding-top:24px}.modal-foot{position:sticky;bottom:-24px;background:var(--card);z-index:3;padding:14px 0}.powered,.editor-footer,.credit{color:var(--mute)}.qcard{grid-template-columns:minmax(0,1fr);position:relative}.qcard .meta,.qcard .stem,.qcard .tags,.qcard .actions,.qcard [data-teacher-tags],.qcard .show-question{grid-column:1/-1;grid-row:auto}.qcard .stem{max-height:none;position:relative;padding:0;overflow:hidden}.qcard:not(.expanded) .stem>div{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:6;overflow:hidden}.qcard.clipped:not(.expanded) .stem:after{content:'';position:absolute;bottom:0;left:0;right:0;height:24px;background:linear-gradient(transparent,var(--card));pointer-events:none}.qcard .show-question{justify-self:start;font-size:11px;color:var(--sca);padding:4px 0}.qcard .question-thumb{height:auto;max-height:120px;max-width:100%;object-fit:contain;object-position:left;grid-column:1/-1;width:auto}.qcard .actions{display:flex;justify-content:flex-start;gap:7px}.qcard .actions .primary{order:0}.qcard .missing-meta{color:var(--warn-ink);text-decoration:underline;font-size:10px}.qcard .tags{align-items:center}.qcard [data-teacher-tags]{margin:0}.action-menu{position:relative;display:inline-block;font-size:12px}.action-menu summary{list-style:none;cursor:pointer;min-width:36px;min-height:34px;display:grid;place-items:center;border:1px solid var(--line2);border-radius:7px;background:var(--card)}.action-menu[open]>button,.action-menu[open]>div{position:relative;display:block;z-index:4;background:var(--card)}.action-menu [data-action=delete]{color:var(--danger)}.tray{min-height:0;max-height:calc(100dvh - 230px);position:sticky;top:0}.tray-list{flex:1;min-height:0;max-height:none;overflow:auto}.tray-go,.tray .totals{flex:none}.tray-title .katex{font-size:1em}.tray-title b{font-weight:500}.tray-scope-note{padding:7px;margin-bottom:7px;font-size:10px}#clearTray{color:var(--ink);text-decoration:none}.modal-body .ms-step{display:flex;justify-content:space-between;gap:16px}.ms-step .ms-code{width:48px;flex:none;text-align:right}.question-answer{width:150px}.pdf-building:before{content:'';width:12px;height:12px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:pdf-spin 1s linear infinite}.library-search{display:flex;gap:12px;align-items:end;margin:18px 0;flex-wrap:wrap}.library-search label{font-size:12px}.saved-card small{display:block;color:var(--mute)}.saved-actions{align-items:start}.downloads .primary{flex:1}#recentQuestions{margin:0 0 12px}#recentQuestionsList>p{padding:12px 0;border-bottom:1px solid var(--line)}#recentQuestionsList .katex{font-size:1em}@keyframes pdf-spin{to{transform:rotate(360deg)}}
@media(min-width:1100px){.preview-col{position:sticky;top:16px;max-height:calc(100dvh - 32px);overflow:auto;align-self:start}.preview-col .preview-scroll{height:330px}.pick-grid{height:auto;min-height:calc(100dvh - 230px)}.tray{height:calc(100dvh - 230px)}.filters{align-self:start}.qcard:has(.question-thumb) .stem{padding-right:130px}.qcard .question-thumb{position:absolute;right:16px;top:62px;max-width:120px}.qcard.expanded .stem{padding-right:0}.qcard.expanded .question-thumb{position:static}}
@media(max-width:1099px){.tray{position:static;max-height:none;height:auto}.tray-list{max-height:240px}.preview-col{max-height:none}.qcard .actions .btn{min-height:38px}.qcard .question-thumb{max-height:120px}.order-row .question-answer{width:150px}.library-search{align-items:stretch;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.pdf-building:before{animation:none}}
.source-segment button{white-space:normal;font-size:10px}.qcard .tags [data-teacher-tags]{display:inline-flex;flex-wrap:wrap;align-items:center}.qcard .tags [data-teacher-tags] .btn{padding:2px 7px;min-height:26px;font-size:10px}.qcard .tags{order:0}
.modal-body .ms-code{float:right;min-width:48px;text-align:right;font:600 12px/1.6 Inter,sans-serif;margin-left:16px}

/* Keep KaTeX accessibility spans inside the clipped selected-question title. */
.tray-title b{position:relative}

/* Photon-owned demo entry uses the Studio's existing U1 controls. */
.admin-landing{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:22px auto 12px;max-width:560px}
.admin-landing[hidden]{display:none}.admin-landing [role=status]{flex-basis:100%;font-size:13px}
@media(max-width:480px){.admin-landing .btn{width:100%}}
