/* Respect the HTML hidden attribute even for styled flex/grid elements.
   Without this, the search spinner and result navigation remain visible after
   JS marks them hidden; the animated loading bar misleadingly runs forever. */
[hidden] { display: none !important; }


:root{
  --ink:#2a2430;--muted:#756c79;--paper:#fbf7ef;--paper-2:#fffdf8;--violet:#3d2c4d;
  --violet-2:#655072;--lilac:#eee6f1;--gold:#c59b52;--gold-2:#8e682d;--line:#ded4ca;
  --green:#2f6c55;--green-soft:#e8f2eb;--amber:#8a5d29;--amber-soft:#fbf0df;--danger:#8b4945;
  --shadow:0 24px 70px rgba(57,42,61,.10);--shadow-soft:0 10px 30px rgba(57,42,61,.06);
  font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--paper)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:
radial-gradient(circle at 82% 9%,rgba(136,105,153,.08),transparent 27%),
linear-gradient(#fbf7ef,#f8f3eb 70%,#f5efe7)}
button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}
a{color:inherit}.skip{position:absolute;left:16px;top:-80px;background:white;padding:10px 14px;z-index:99}.skip:focus{top:12px}
:focus-visible{outline:3px solid #b48943;outline-offset:3px}
.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 max(5%,calc((100vw - 1240px)/2));background:rgba(255,253,248,.88);backdrop-filter:blur(12px);border-bottom:1px solid rgba(222,212,202,.7);position:sticky;top:0;z-index:30}
.brand{text-decoration:none;font-family:Georgia,"Times New Roman",serif;color:var(--violet);font-size:20px;letter-spacing:.04em}
.brand span{color:var(--gold-2)}.top-actions{display:flex;align-items:center;gap:10px}.locale{display:flex;padding:3px;background:#efe8f0;border-radius:999px}
.locale button{border:0;background:transparent;color:#66586c;border-radius:999px;padding:7px 10px;font-size:13px;font-weight:800}.locale button[aria-pressed=true]{background:var(--violet);color:white}
.ghost-link{border:0;background:none;color:#5f5366;font-weight:700;padding:8px 4px}
.hero{min-height:610px;display:grid;place-items:center;position:relative;overflow:hidden;background:
radial-gradient(circle at 71% 32%,rgba(196,156,86,.18),transparent 18%),
radial-gradient(circle at 69% 35%,#554363 0,#382b47 36%,#241d2e 78%);color:#fffaf0;padding:70px 5%}
.hero:before,.hero:after{content:"";position:absolute;border:1px solid rgba(217,184,121,.16);border-radius:50%;pointer-events:none}
.hero:before{width:650px;height:650px;right:-80px;top:-130px}.hero:after{width:430px;height:430px;right:35px;top:-20px}
.hero-inner{width:min(1180px,100%);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(310px,.85fr);gap:54px;align-items:center;position:relative;z-index:1}
.eyebrow{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:#e7c681;font-weight:800;margin-bottom:22px}
.hero h1{font:500 clamp(44px,6vw,76px)/1.02 Georgia,"Times New Roman",serif;letter-spacing:-.045em;margin:0;max-width:760px}
.hero h1 em{font-weight:400;color:#edcf92}.hero-copy{max-width:640px;font-size:19px;line-height:1.8;color:#e8deeb;margin:24px 0 0}
.hero-actions{display:flex;align-items:center;gap:14px;margin-top:34px;flex-wrap:wrap}.hero-note{font-size:13px;color:#cfc1d2}
.primary,.secondary,.text-action{min-height:46px;border-radius:999px;font-weight:800;border:1px solid transparent;padding:12px 20px;transition:transform .16s,box-shadow .16s,background .16s}
.primary{background:#f1d59d;color:#2f2438;box-shadow:0 8px 24px rgba(0,0,0,.15)}.primary:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.2)}
.secondary{background:white;color:var(--violet);border-color:#d9ceda}.secondary:hover{background:#faf5fb}.text-action{background:transparent;color:var(--violet);padding-inline:10px}
.hero-oracle{display:grid;place-items:center;min-height:390px;position:relative}.hero-oracle .ring{width:310px;height:310px;border:1px solid rgba(228,198,143,.45);border-radius:50%;display:grid;place-items:center;position:relative;box-shadow:0 0 80px rgba(210,174,111,.08),inset 0 0 0 24px rgba(255,255,255,.02)}
.hero-oracle .ring:before,.hero-oracle .ring:after{content:"";position:absolute;border:1px dashed rgba(228,198,143,.27);border-radius:50%}.hero-oracle .ring:before{inset:28px}.hero-oracle .ring:after{inset:67px}
.hero-oracle .star{font:80px Georgia,serif;color:#dfbd79;text-shadow:0 0 35px rgba(221,185,113,.25)}.hero-oracle small{position:absolute;bottom:19px;font:12px Georgia,serif;letter-spacing:.18em;color:#dbcba9}
.journey{max-width:1240px;margin:auto;padding:84px 5% 72px}.journey-head{text-align:center;max-width:760px;margin:0 auto 36px}
.kicker{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-2);font-weight:800}.journey-head h2,.results-head h2{font:500 clamp(34px,4vw,52px)/1.08 Georgia,serif;letter-spacing:-.035em;margin:10px 0 13px}.journey-head p{color:var(--muted);font-size:17px;line-height:1.7;margin:0}
.stage-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,.65fr);gap:26px;align-items:stretch}
.stage{min-height:600px;background:rgba(255,253,248,.95);border:1px solid #e2d8ce;border-radius:28px;box-shadow:var(--shadow);padding:42px;display:flex;flex-direction:column;position:relative;overflow:hidden}
.stage:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 95% 5%,rgba(150,118,163,.08),transparent 28%);pointer-events:none}
.scene{position:relative;z-index:1;display:flex;flex-direction:column;min-height:510px}.scene-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.scene-mark{font-size:12px;letter-spacing:.19em;color:#907498;font-weight:800;text-transform:uppercase}.scene-back{border:0;background:none;color:#75677a;font-weight:700;padding:7px 0}
.scene h3{font:500 clamp(35px,4vw,50px)/1.08 Georgia,serif;letter-spacing:-.035em;margin:5px 0 12px;max-width:720px}.scene-copy{max-width:680px;color:#6e6471;line-height:1.7;font-size:16px;margin:0 0 28px}
.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.choice{border:1px solid #ddd2d7;background:#fffdf9;border-radius:18px;text-align:left;padding:20px;min-height:145px;position:relative;transition:transform .18s,border-color .18s,box-shadow .18s,background .18s}
.choice:hover{transform:translateY(-2px);border-color:#b9a4bf;box-shadow:var(--shadow-soft)}.choice[aria-pressed=true]{background:linear-gradient(145deg,#f2eaf4,#fffaf0);border-color:#8f7098;box-shadow:inset 0 0 0 1px rgba(143,112,152,.17),var(--shadow-soft)}
.choice-symbol{font:34px Georgia,serif;color:#a37e42;display:block;margin-bottom:12px}.choice strong{display:block;font:500 22px/1.15 Georgia,serif;color:#3a2b43}.choice span:last-child{display:block;color:#786e7b;font-size:14px;line-height:1.5;margin-top:8px}
.choice-check{position:absolute;top:14px;right:16px;color:#806187;font-weight:900;opacity:0}.choice[aria-pressed=true] .choice-check{opacity:1}
.scene-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:auto;padding-top:28px}.leave-fate{border:0;background:none;color:#887a8c;text-decoration:underline;text-underline-offset:3px}
.narrator{margin-top:20px;border-top:1px solid #eadfd6;padding-top:17px;color:#6a596f;font:italic 16px/1.65 Georgia,serif;min-height:46px}
.reward{display:inline-flex;align-items:center;gap:8px;background:#f9f0de;border:1px solid #e7d1a8;color:#745525;border-radius:999px;padding:7px 11px;font-size:13px;font-weight:800;margin-top:14px;animation:rewardIn .35s ease both}
@keyframes rewardIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.compass-panel{border:1px solid #ded2dc;border-radius:28px;background:linear-gradient(155deg,#f4edf5,#fffaf1);padding:27px;box-shadow:var(--shadow-soft);position:relative;overflow:hidden;min-height:600px}
.compass-panel h3{font:500 28px/1.1 Georgia,serif;margin:8px 0}.compass-panel p{font-size:14px;line-height:1.6;color:#786a7d;margin:0}
.compass-wrap{height:310px;display:grid;place-items:center;position:relative}.compass{width:235px;height:235px;border:1px solid #cbb9ce;border-radius:50%;position:relative;display:grid;place-items:center;background:rgba(255,255,255,.42);transition:box-shadow .4s}
.compass:before{content:"";position:absolute;inset:25px;border:1px dashed #d1bdc9;border-radius:50%}.compass:after{content:"✦";font:52px Georgia,serif;color:#c1a372;filter:grayscale(.35);transition:transform .35s,color .35s,text-shadow .35s}
.compass.ready:after{transform:rotate(45deg) scale(1.08);color:#b17c31;text-shadow:0 0 24px rgba(185,139,72,.24)}.compass.ready{box-shadow:0 0 50px rgba(176,133,67,.13)}
.node{position:absolute;width:70px;height:70px;border-radius:50%;display:grid;place-items:center;text-align:center;background:#f8f3f7;border:1px solid #d8cadb;color:#98879d;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;transition:.28s}.node.active{background:#4a3655;border-color:#4a3655;color:#f4dca9;box-shadow:0 8px 25px rgba(63,44,72,.18)}
.node-world{top:-18px;left:50%;transform:translateX(-50%)}.node-story{right:-27px;top:50%;transform:translateY(-50%)}.node-voice{bottom:-18px;left:50%;transform:translateX(-50%)}.node-ward{left:-27px;top:50%;transform:translateY(-50%)}
.compass-traits{display:grid;gap:8px;margin-top:9px}.trait{padding:11px 12px;border-radius:12px;background:rgba(255,255,255,.55);border:1px solid #e2d8df;font-size:13px;color:#67586c}.trait strong{color:#4c3657}
.progress-dots{display:flex;gap:7px;justify-content:center;margin-top:20px}.progress-dots span{width:7px;height:7px;border-radius:50%;background:#d3c6d6}.progress-dots span.on{background:#8d6997;transform:scale(1.2)}
.boundary-list{display:grid;gap:15px}.boundary{padding:18px;border:1px solid #e1d6ce;border-radius:17px;background:#fff}.boundary-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:12px}.boundary-head strong{font-size:16px}.boundary-head span{font-size:12px;color:#8a7d88}.segments{display:flex;gap:7px;flex-wrap:wrap}.segment{border:1px solid #ddd3d8;background:#fffaf7;border-radius:999px;padding:9px 12px;font-size:13px;color:#665d68}.segment[aria-pressed=true]{background:#4e3958;color:white;border-color:#4e3958}
.reveal-scene{text-align:center;justify-content:center;align-items:center}.reveal-scene .big-compass{width:170px;height:170px;border:1px solid #cdb8c8;border-radius:50%;display:grid;place-items:center;font:64px Georgia,serif;color:#bd8c41;margin-bottom:24px;box-shadow:0 0 60px rgba(187,140,65,.14);animation:revealPulse 1.3s ease both}
@keyframes revealPulse{0%{transform:scale(.7) rotate(-25deg);opacity:0}60%{transform:scale(1.06) rotate(8deg);opacity:1}100%{transform:scale(1) rotate(0)}}
.reveal-scene h3{max-width:620px}.compass-summary{max-width:630px;font:18px/1.75 Georgia,serif;color:#685a6c;margin:0 auto 26px}
.unlock{padding:12px 15px;border:1px solid #e0c994;background:#fff6df;border-radius:14px;color:#755623;font-size:14px;font-weight:800;margin:0 0 24px}
.results{max-width:1080px;margin:auto;padding:36px 5% 95px}.results[hidden]{display:none}.results-head{text-align:center;max-width:720px;margin:0 auto 28px}.results-head p{color:var(--muted);line-height:1.7}
.search-ritual{height:74px;display:grid;place-items:center;color:#69556e;font:italic 16px Georgia,serif}.search-line{height:2px;width:min(420px,80vw);background:#e7ded3;overflow:hidden;border-radius:8px;margin-top:12px}.search-line i{display:block;height:100%;width:36%;background:linear-gradient(90deg,transparent,#b28743,transparent);animation:seek 1.2s linear infinite}@keyframes seek{from{transform:translateX(-120%)}to{transform:translateX(330%)}}
.book-reveal{background:#fffdf9;border:1px solid #dfd4ca;border-radius:26px;box-shadow:var(--shadow);padding:30px;display:grid;grid-template-columns:180px minmax(0,1fr);gap:30px;min-height:330px;animation:bookIn .42s ease both}@keyframes bookIn{from{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:none}}
.cover{width:180px;height:255px;background:linear-gradient(145deg,#4e3d5a,#211b2c);border-radius:5px 14px 14px 5px;overflow:hidden;display:grid;place-items:center;color:#e0c58d;font:54px Georgia,serif;box-shadow:inset 7px 0 rgba(0,0,0,.15),0 18px 36px rgba(38,28,43,.17)}.cover img{width:100%;height:100%;object-fit:cover}
.match-seal{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;background:var(--green-soft);color:var(--green)}.match-seal.partial{background:var(--amber-soft);color:var(--amber)}.match-seal.verify{background:#eee9ef;color:#64576a}
.book-copy h3{font:500 clamp(31px,4vw,46px)/1.05 Georgia,serif;letter-spacing:-.035em;margin:12px 0 6px}.book-copy h3 a{text-decoration:none}.book-copy h3 a:hover{text-decoration:underline}.byline{color:#837782;font-size:14px}.match-summary{font:18px/1.65 Georgia,serif;color:#5e5063;margin:18px 0}
.reason-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:16px 0}.reason{border-top:2px solid #d2b376;padding:10px 4px 0;font-size:14px;line-height:1.45;color:#5f5561}
.caution{display:flex;gap:9px;align-items:flex-start;background:#fbf3e5;border-radius:12px;padding:11px 13px;color:#795b30;font-size:14px;line-height:1.5;margin-top:16px}.caution b{font-size:16px}
.book-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.book-actions a{text-decoration:none}
details.ledger{margin-top:20px;border-top:1px solid #e7ddd5;padding-top:14px}details.ledger summary{cursor:pointer;color:#66586a;font-weight:800;font-size:14px}.ledger-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;padding-top:14px;color:#746975;font-size:13px;line-height:1.55}.ledger-grid strong{color:#4e4252}
.smart-refine{margin:18px auto 0;max-width:760px;padding:16px 18px;border:1px solid #e1d5c8;border-radius:16px;background:#fffaf1;box-shadow:var(--shadow-soft)}.smart-refine[hidden]{display:none}.smart-refine strong{display:block;font:500 19px/1.3 Georgia,serif;color:#4a3b4e}.smart-refine p{margin:5px 0 12px;color:#766a75;font-size:14px;line-height:1.5}.smart-refine .chips{gap:8px}.result-nav{display:flex;justify-content:center;gap:12px;align-items:center;margin-top:22px;flex-wrap:wrap}.result-position{font-size:13px;color:#887c88}
.notice{text-align:center;color:#7b6d7f;font-size:14px;line-height:1.6;margin:16px auto;max-width:720px}
.deep-match{max-width:1540px;margin:0 auto;padding:24px 3.5% 88px}
.deep-match[hidden]{display:none}
.deep-shell{display:block;max-width:1100px;margin:0 auto}
.deep-question-pane{min-width:0}
.deep-head{max-width:780px;margin:0 0 22px;text-align:left}
.deep-head h1{font:500 clamp(34px,4vw,50px)/1.08 Georgia,serif;letter-spacing:-.035em;margin:10px 0 12px}
.deep-head p{color:var(--muted);font-size:16px;line-height:1.7;margin:0}
.deep-layout{display:block}
.deep-nav{display:flex;gap:8px;position:static;overflow-x:auto;padding:2px 2px 12px;margin-bottom:12px;scrollbar-width:thin}
.deep-nav button{min-width:max-content;border:1px solid #ded4dc;background:#fffdf9;border-radius:999px;padding:10px 12px;text-align:left;color:#67596b;font-weight:800;font-size:12px}
.deep-nav button[aria-current=true]{background:#4b3655;color:#fff3d7;border-color:#4b3655}
.deep-card{background:#fffdf9;border:1px solid #e0d5cb;border-radius:24px;box-shadow:var(--shadow);padding:30px}
.deep-card h3{font:500 34px/1.1 Georgia,serif;margin:0 0 8px}
.deep-intro{color:#786c79;line-height:1.65;margin:0 0 20px}
.deep-question{padding:21px 0;border-top:1px solid #eee5de}
.deep-question:first-child{border-top:0}
.deep-question h4{font:700 16px/1.4 Inter,Arial,sans-serif;margin:0 0 5px;color:#443849}
.deep-question p{font-size:13px;color:#847884;line-height:1.55;margin:0 0 12px}
.deep-radio{display:flex;gap:8px;flex-wrap:wrap}
.deep-radio button,.deep-chip{border:1px solid #ddd2d8;background:#fff;border-radius:999px;padding:9px 12px;color:#665a68;font-size:13px}
.deep-radio button[aria-pressed=true],.deep-chip[aria-pressed=true]{background:#4b3655;border-color:#4b3655;color:#fff}
.deep-text{width:100%;min-height:96px;border:1px solid #ddd2d8;border-radius:14px;padding:12px;background:#fff;color:inherit;resize:vertical}
.deep-actions{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;border-top:1px solid #eee5de;padding-top:20px;margin-top:16px}
.deep-count{font-size:12px;color:#8a7d8a;margin-left:auto}
@media(max-width:980px){.deep-head{margin-top:8px}.deep-card{padding:24px 20px}}
@media(max-width:620px){.deep-match{padding-inline:15px}.deep-card{padding:21px 16px}}

dialog{width:min(880px,calc(100vw - 28px));max-height:88vh;border:1px solid #d9ccd7;border-radius:24px;padding:0;box-shadow:0 35px 90px rgba(34,25,40,.25);background:#fffdf9;color:var(--ink)}dialog::backdrop{background:rgba(36,27,43,.45);backdrop-filter:blur(4px)}
.desk{padding:28px}.desk-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:1px solid #e6ddd5;padding-bottom:18px;margin-bottom:18px}.desk-head h2{font:500 34px Georgia,serif;margin:4px 0}.desk-head p{color:var(--muted);font-size:14px;line-height:1.6;margin:0;max-width:620px}.close{border:0;background:#f0e9ef;width:38px;height:38px;border-radius:50%;font-size:20px}
.desk-section{padding:17px 0;border-bottom:1px solid #eee5de}.desk-section:last-child{border-bottom:0}.desk-section h3{font:500 21px Georgia,serif;margin:0 0 5px}.desk-section p{font-size:13px;color:#827682;line-height:1.5;margin:0 0 11px}.chips{display:flex;flex-wrap:wrap;gap:7px}.chip{border:1px solid #ddd2d8;background:white;border-radius:999px;padding:8px 11px;color:#665a68;font-size:13px}.chip[aria-pressed=true]{background:#4b3655;border-color:#4b3655;color:white}.desk-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:21px}
@media(max-width:900px){.hero-inner,.stage-grid{grid-template-columns:1fr}.hero-oracle{display:none}.compass-panel{min-height:0}.stage{min-height:0}.scene{min-height:520px}.book-reveal{grid-template-columns:140px 1fr}.cover{width:140px;height:205px}.reason-list{grid-template-columns:1fr}}
@media(max-width:620px){.topbar{height:64px;padding-inline:15px}.brand{font-size:16px}.ghost-link{display:none}.hero{min-height:540px;padding:55px 20px}.hero h1{font-size:45px}.hero-copy{font-size:16px}.journey{padding:54px 15px}.stage{padding:24px 18px;border-radius:20px}.scene{min-height:540px}.choice-grid{grid-template-columns:1fr}.choice{min-height:115px}.compass-panel{border-radius:20px}.book-reveal{grid-template-columns:1fr;padding:20px}.cover{width:125px;height:180px;margin:auto}.book-copy{text-align:center}.reason-list,.caution,.ledger-grid{text-align:left}.book-actions{justify-content:center}.ledger-grid{grid-template-columns:1fr}.results{padding-inline:15px}.desk{padding:21px 16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* === Book Finder visual pass: light fantasy storybook === */
:root{
  --bf-ink:#352a34;--bf-muted:#756a72;--bf-plum:#563d5f;--bf-plum-deep:#3f2d49;
  --bf-lilac:#eee5ee;--bf-cream:#fffaf0;--bf-paper:#f7f0e4;--bf-paper-2:#fbf6ed;
  --bf-gold:#b88b43;--bf-gold-soft:#dcc79f;--bf-line:#ded2c2;
  --bf-shadow:0 22px 60px rgba(82,60,72,.11)
}
html{background:#f3ecdf}
body{
  color:var(--bf-ink);
  background:
    radial-gradient(circle at 12% 8%,rgba(184,139,67,.08),transparent 28%),
    radial-gradient(circle at 88% 23%,rgba(111,78,119,.07),transparent 24%),
    linear-gradient(180deg,#fbf7ef 0,#f5eee4 54%,#efe5d8 100%)
}
.topbar{
  height:64px;padding-inline:max(4%,calc((100vw - 1440px)/2));
  background:rgba(255,250,240,.94);border-bottom:1px solid rgba(184,139,67,.20);
  box-shadow:0 4px 18px rgba(66,48,56,.04)
}
.brand{font-family:Cinzel,Georgia,serif;font-size:16px;letter-spacing:.08em;color:var(--bf-plum-deep)}
.brand span{font-family:"Cormorant Garamond",Georgia,serif;font-size:18px;letter-spacing:.02em;color:#8c6a37}
.locale{background:#efe7dc;border:1px solid #e4d8c8}
.locale button{font-size:12px;color:#756573}
.locale button[aria-pressed=true]{background:var(--bf-plum-deep);color:#fff8ea;box-shadow:0 4px 12px rgba(63,45,73,.17)}

.deep-match{max-width:1500px;padding:18px 3.5% 96px}
.deep-shell{display:block;max-width:1100px;margin:0 auto}
.deep-question-pane{min-width:0;padding-top:2px}
.deep-head{max-width:840px;margin:0 0 18px;padding:2px 2px 0}
.deep-head .kicker{font-family:Cinzel,serif;color:#987033;font-size:10px;letter-spacing:.19em}
.deep-head h2{
  font-family:"Cormorant Garamond",Georgia,serif;color:#47354d;font-size:clamp(38px,4vw,55px);
  line-height:.98;letter-spacing:-.02em;margin:7px 0 9px
}
.deep-head p{color:#776b73;font-size:15px;line-height:1.55;max-width:720px}
.deep-nav{
  position:relative;display:grid;grid-template-columns:repeat(7,minmax(42px,1fr));gap:7px;
  overflow:visible;padding:0;margin:0 0 14px
}
.deep-nav button{
  min-width:0;min-height:52px;padding:8px 5px;overflow:hidden;border:1px solid #d9cdbc;border-radius:11px;
  background:rgba(255,250,240,.74);color:#897780;font-family:Cinzel,serif;font-size:9px;line-height:1.25;
  text-align:center;box-shadow:none
}
.deep-nav button:hover{background:#fffaf1;border-color:#cdbb9f;color:#624c65}
.deep-nav button[aria-current=true]{
  background:linear-gradient(180deg,#65506d,#503c59);border-color:#4a344e;color:#fff3dc;
  box-shadow:0 7px 18px rgba(75,52,78,.16);transform:translateY(-1px)
}

.deep-card{
  position:relative;overflow:hidden;padding:30px 34px 25px;border:1px solid #d9ccba;border-radius:25px;
  background:linear-gradient(rgba(255,251,243,.94),rgba(255,249,238,.94));
  box-shadow:var(--bf-shadow)
}
.deep-card:before{
  content:"";position:absolute;left:34px;right:34px;top:0;height:3px;
  background:linear-gradient(90deg,transparent,#c09a5f 20%,#c09a5f 80%,transparent)
}
.deep-card h3{
  font-family:"Cormorant Garamond",Georgia,serif;color:#49374f;font-size:35px;line-height:1;margin-bottom:7px
}
.deep-intro{color:#83757c;font-size:14px;line-height:1.5;margin-bottom:18px}
#deepBody{display:grid;gap:12px}
.deep-question{
  padding:16px 17px 15px;border:1px solid #e3d8ca;border-radius:16px;background:rgba(255,253,248,.68)
}
.deep-question:first-child{border-top:1px solid #e3d8ca}
.deep-question h4{
  margin:0 0 4px;color:#4a394e;font-family:"Cormorant Garamond",Georgia,serif;
  font-weight:600;font-size:21px;line-height:1.15
}
.deep-question p{margin:0 0 11px;color:#8a7b82;font-size:12px;line-height:1.45}
.chips,.deep-radio{display:flex;flex-wrap:wrap;gap:7px}
.deep-radio button,.deep-chip,.chip{
  min-height:36px;padding:8px 11px;border:1px solid #d8cec1;border-radius:10px;background:#fffcf6;
  color:#675969;font-size:12.5px;box-shadow:0 2px 6px rgba(65,48,57,.025)
}
.deep-radio button:hover,.deep-chip:hover,.chip:hover{border-color:#bca789;background:#fff9ed;transform:translateY(-1px)}
.deep-radio button[aria-pressed=true],.deep-chip[aria-pressed=true],.chip[aria-pressed=true]{
  background:#eee4ed;border-color:#80678a;color:#493550;box-shadow:inset 0 0 0 1px rgba(90,66,99,.08)
}
.deep-radio button[aria-pressed=true]::before,.deep-chip[aria-pressed=true]::before{content:"✦ ";color:#9b7136}
.deep-text{
  min-height:90px;border:1px solid #d8ccbc;border-radius:12px;padding:12px 13px;background:#fffdf8;color:#4b3b4e;
  box-shadow:inset 0 1px 3px rgba(70,50,55,.04)
}
.deep-text:focus{border-color:#94779c;outline:none;box-shadow:0 0 0 3px rgba(129,96,139,.11)}
.deep-actions{
  position:sticky;bottom:10px;z-index:8;margin:20px -10px -5px;padding:13px 10px 5px;border-top:1px solid #e4d8c9;
  background:linear-gradient(180deg,rgba(255,250,240,0),rgba(255,250,240,.96) 28%,rgba(255,250,240,.99))
}
.deep-actions .primary{margin-left:auto}
.deep-count{color:#94858c}
.results{background:rgba(255,250,240,.64)}
.results-head h2{font-family:"Cormorant Garamond",Georgia,serif;color:#49374f}

@media(max-width:1180px){
  .deep-card{padding:26px 24px 22px}
  .deep-nav button{font-size:0;min-height:42px}
  .deep-nav button:before{content:attr(data-deep-section);font-size:11px}
}
@media(max-width:980px){
  .deep-question-pane{max-width:800px;width:100%;margin:0 auto}
  .deep-head{text-align:center;margin-inline:auto}.deep-head p{margin-inline:auto}
}
@media(max-width:620px){
  .topbar{height:58px}.brand{font-size:13px}.brand span{font-size:15px}
  .deep-match{padding:22px 12px 70px}
  .deep-nav{gap:5px}.deep-nav button{min-height:38px;padding:7px 2px;font-size:0;border-radius:9px}
  .deep-nav button:before{content:attr(data-deep-section);font-size:11px}
  .deep-card{padding:22px 14px 18px;border-radius:20px}.deep-card:before{left:20px;right:20px}
  .deep-card h3{font-size:31px}.deep-question{padding:14px 13px}.deep-question h4{font-size:19px}
  .deep-radio button,.deep-chip,.chip{font-size:12px;padding:8px 10px}
  .deep-actions{gap:8px}.deep-actions button{flex:1 1 auto;padding-inline:12px}
}


/* === Quiet Curiosity · low-clutter Deep Match === */
.deep-match{max-width:1180px;padding:34px 4% 96px}
.deep-shell{max-width:980px}
.deep-head{max-width:760px;margin:0 0 8px;padding:0}
.deep-head .kicker{margin:0;color:#8f6a35;font-size:10px;letter-spacing:.16em}
.deep-head h2{
  max-width:690px;margin:7px 0 8px;
  font-size:clamp(34px,4vw,43px);line-height:1.02;letter-spacing:-.018em
}
.deep-head p{max-width:650px;margin:0;color:#7c7178;font-size:14px;line-height:1.55}

.deep-progress-row{
  display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:20px;align-items:center;
  margin:19px 0 17px;padding:0 2px
}
.deep-nav{
  position:relative;display:grid;grid-template-columns:repeat(7,1fr);gap:0;
  width:100%;margin:0;padding:0;overflow:visible;scrollbar-width:none
}
.deep-nav:before{
  content:"";position:absolute;left:7.2%;right:7.2%;top:50%;height:1px;
  background:#ddd3c7;transform:translateY(-50%);z-index:0
}
.deep-nav button{
  position:relative;z-index:1;display:grid;place-items:center;
  width:32px;height:32px;min-width:32px;min-height:32px;margin:auto;padding:0;
  border:0;border-radius:50%;background:transparent;box-shadow:none;color:transparent;
  transition:none
}
.deep-nav button span{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0
}
.deep-nav button:after{
  content:"";display:block;width:7px;height:7px;border-radius:50%;
  background:#fbf7ef;border:1px solid #bdb1b7;box-sizing:border-box
}
.deep-nav button[data-complete="true"]:after{
  width:8px;height:8px;background:var(--bf-gold);border-color:var(--bf-gold)
}
.deep-nav button[aria-current=true]:after{
  width:11px;height:11px;background:var(--bf-plum-deep);border:2px solid #fbf7ef;
  box-shadow:0 0 0 1px rgba(63,45,73,.28)
}
.deep-nav button:hover{background:transparent;transform:none}
.deep-nav button:focus-visible{outline:2px solid rgba(86,61,95,.38);outline-offset:0}

.living-bookmark{width:48px;height:60px;justify-self:end;opacity:.96}
.living-bookmark svg{display:block;width:100%;height:100%;overflow:visible}
.living-base{
  fill:none;stroke:#756174;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;opacity:.46
}
.living-stroke{
  fill:none;stroke:#d4c8bb;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;
  stroke-dasharray:28;stroke-dashoffset:28;opacity:.25
}
.living-stroke.done{stroke:var(--bf-gold);stroke-dashoffset:0;opacity:.9}
.living-stroke.done.fresh{animation:bookmark-draw .32s ease-out both}
@keyframes bookmark-draw{
  from{stroke-dashoffset:28;opacity:.2}
  to{stroke-dashoffset:0;opacity:.9}
}

.deep-card{
  padding:31px 38px 24px;border:0;border-radius:27px;
  background:rgba(255,252,246,.88);
  box-shadow:0 18px 54px rgba(73,54,65,.085)
}
.deep-card:before{display:none}
.deep-card h3{margin:0 0 7px;font-size:31px;line-height:1.05}
.deep-intro{max-width:720px;margin:0 0 6px;color:#857980;font-size:13.5px;line-height:1.55}
#deepBody{display:block}

.deep-question{
  margin:0;padding:24px 0 23px;border:0;border-bottom:1px solid rgba(117,97,116,.115);
  border-radius:0;background:transparent
}
.deep-question:first-child{border-top:0}
.deep-question:last-child{border-bottom:0}
.deep-question h4{
  margin:0 0 5px;color:#493a4c;font-size:20px;line-height:1.18;font-weight:600
}
.deep-question p{max-width:690px;margin:0 0 12px;color:#8a7e85;font-size:12.5px;line-height:1.48}
.chips,.deep-radio{gap:7px}
.deep-radio button,.deep-chip,.chip{
  min-height:36px;padding:8px 12px;border:1px solid #dcd3cb;border-radius:12px;
  background:rgba(255,253,249,.85);color:#695c69;box-shadow:none;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease
}
.deep-radio button:hover,.deep-chip:hover,.chip:hover{
  border-color:#c8b9ae;background:#fffaf2;transform:none
}
.deep-radio button[aria-pressed=true],.deep-chip[aria-pressed=true],.chip[aria-pressed=true]{
  background:#eee7ef;border-color:#b7a3bb;color:#49364d;box-shadow:none
}
.deep-radio button[aria-pressed=true]::before,.deep-chip[aria-pressed=true]::before{
  content:"✦";margin-right:6px;color:var(--bf-gold);font-size:9px
}
.deep-text{border-color:#ddd3ca;background:#fffdf9;box-shadow:none}

.deep-actions{
  position:sticky;bottom:0;z-index:8;margin:12px -8px -2px;padding:15px 8px 3px;
  border-top:1px solid rgba(117,97,116,.11);
  background:linear-gradient(180deg,rgba(255,252,246,0),rgba(255,252,246,.97) 30%)
}
.deep-actions button{box-shadow:none}
.deep-actions .primary{background:var(--bf-plum-deep);border-color:var(--bf-plum-deep)}
.deep-count{color:#94888f}

@media(max-width:620px){
  .deep-match{padding:24px 15px 70px}
  .deep-head{margin-bottom:4px}
  .deep-head h2{font-size:34px;line-height:1.02;margin-top:6px}
  .deep-head p{font-size:13.5px;line-height:1.5}
  .deep-progress-row{grid-template-columns:minmax(0,1fr) 42px;gap:12px;margin:16px 0 13px}
  .living-bookmark{width:42px;height:52px}
  .deep-nav button{width:28px;height:28px;min-width:28px;min-height:28px}
  .deep-card{padding:24px 18px 18px;border-radius:22px}
  .deep-card h3{font-size:29px}
  .deep-question{padding:21px 0 20px}
  .deep-question h4{font-size:19px}
  .deep-actions{margin-inline:-3px;padding-inline:3px}
}
@media(prefers-reduced-motion:reduce){
  .living-stroke.done.fresh{animation:none}
}


/* === Lavender companion pass === */
:root{
  --bf-lavender-bg:#f3eff8;
  --bf-lavender-bg-2:#eee8f5;
  --bf-lavender-surface:#faf8fd;
  --bf-lavender-surface-2:#f7f3fb;
  --bf-lavender-line:#ddd5e6;
  --bf-lavender-line-2:#d2c7dc;
  --bf-lavender-muted:#786d80;
}
html{background:var(--bf-lavender-bg-2)}
body{
  background:
    radial-gradient(circle at 13% 8%,rgba(112,82,126,.075),transparent 27%),
    radial-gradient(circle at 88% 20%,rgba(141,113,160,.08),transparent 25%),
    linear-gradient(180deg,#f7f3fb 0%,#f2edf7 52%,#ece6f3 100%);
}
.topbar{
  background:rgba(248,245,251,.92);
  border-bottom-color:rgba(111,85,125,.14);
  box-shadow:0 4px 18px rgba(70,51,83,.045);
}
.locale{background:#ebe4f0;border-color:#ddd3e4}
.deep-match{background:transparent}
.deep-head p{color:var(--bf-lavender-muted)}
.deep-progress-row{
  position:sticky;top:74px;z-index:24;
  margin:16px -12px 16px;padding:8px 12px;
  border:1px solid rgba(115,91,128,.10);
  border-radius:16px;
  background:rgba(246,242,250,.82);
  -webkit-backdrop-filter:blur(14px) saturate(1.05);
  backdrop-filter:blur(14px) saturate(1.05);
  box-shadow:0 8px 24px rgba(66,47,79,.055);
}
.deep-nav:before{background:#d9d0e2}
.deep-nav button:after{
  background:#f8f5fb;
  border-color:#bfb2c8;
}
.deep-nav button[aria-current=true]:after{
  border-color:#f8f5fb;
}
.living-base{stroke:#6e5978;opacity:.52}
.living-stroke{stroke:#cfc4d8}
.deep-card{
  background:rgba(250,248,253,.94);
  box-shadow:0 18px 54px rgba(70,49,82,.075);
}
.deep-question{border-bottom-color:rgba(104,81,117,.105)}
.deep-question p{color:#83778a}
.deep-radio button,.deep-chip,.chip{
  background:rgba(250,248,253,.96);
  border-color:#d9d0e1;
}
.deep-radio button:hover,.deep-chip:hover,.chip:hover{
  background:#f6f1fa;
  border-color:#c9bdd3;
}
.deep-radio button[aria-pressed=true],.deep-chip[aria-pressed=true],.chip[aria-pressed=true]{
  background:#e9e1ee;
  border-color:#b9a5c3;
  color:#49364d;
}
.deep-text{
  background:#fbf9fd;
  border-color:#d9d0e1;
}
.deep-actions{
  border-top-color:rgba(104,81,117,.10);
  background:linear-gradient(180deg,rgba(250,248,253,0),rgba(250,248,253,.97) 30%);
}
.results{background:transparent}
.book-reveal{
  background:#faf8fd;
  border-color:#ddd4e5;
  box-shadow:0 18px 50px rgba(70,49,82,.08);
}
.reason{background:#f7f3fa;border-color:#ddd4e5}
.smart-refine{
  background:#f8f4fb;
  border-color:#d9cfe2;
}
.search-line{background:#ddd4e5}
dialog{
  background:#faf8fd;
  border-color:#d8cde1;
}
.desk{background:#faf8fd}
.desk-head{border-bottom-color:#e1d9e8}
.desk-section{border-bottom-color:#e6deeb}
.close{background:#eee7f2}
.notice,.result-position{color:#7b6f82}
@media(max-width:620px){
  .deep-progress-row{
    top:68px;
    margin:13px -8px 13px;
    padding:6px 8px;
    border-radius:14px;
  }
}


/* === Section 7 prototype · hidden-object castle presentation === */
.boundary-section-active .deep-head h2{color:#4b3854}
.boundary-section-active .deep-progress-row{
  background:rgba(39,31,57,.94);
  border-color:rgba(202,147,172,.24);
  box-shadow:0 12px 30px rgba(39,25,51,.16);
}
.boundary-section-active .deep-nav:before{background:rgba(206,163,190,.28)}
.boundary-section-active .deep-nav button:after{background:#352b48;border-color:#8e789c}
.boundary-section-active .deep-nav button[data-complete="true"]:after{background:#c982a4;border-color:#c982a4}
.boundary-section-active .deep-nav button[aria-current=true]:after{
  background:#e39ab8;border-color:#2e243f;box-shadow:0 0 0 3px rgba(227,154,184,.16),0 0 18px rgba(227,154,184,.30)
}
.boundary-section-active .living-base{stroke:#a890b3;opacity:.7}
.boundary-section-active .living-stroke.done{stroke:#df8cac}

.deep-card.boundary-mode{
  padding:0;border:1px solid rgba(120,89,132,.26);
  background:
    radial-gradient(circle at 87% 4%,rgba(128,72,118,.20),transparent 26%),
    radial-gradient(circle at 8% 92%,rgba(56,88,111,.13),transparent 26%),
    linear-gradient(145deg,#282238 0%,#211c30 50%,#272035 100%);
  box-shadow:0 22px 64px rgba(31,22,42,.23);
  overflow:hidden;color:#eee9f3
}
.deep-card.boundary-mode #deepBody>h3{
  margin:0;padding:34px 40px 5px;color:#f4edf6;
  font-size:clamp(34px,4vw,48px);letter-spacing:-.02em
}
.deep-card.boundary-mode #deepBody>.deep-intro{
  margin:0;padding:0 40px 25px;max-width:760px;color:#bbb0c3;font-size:14.5px
}
.deep-card.boundary-mode .deep-actions{
  margin:0;padding:16px 28px 20px;border-top:1px solid rgba(210,184,221,.11);
  background:rgba(28,23,40,.90);backdrop-filter:blur(12px)
}
.deep-card.boundary-mode .deep-actions .secondary{
  color:#c9bdcf;border-color:rgba(201,189,207,.22);background:rgba(255,255,255,.025)
}
.deep-card.boundary-mode .deep-actions .primary{
  background:linear-gradient(135deg,#7d365b,#a84f75);
  border-color:#b96789;color:#fff1f6
}
.boundary-prototype{padding:0 28px 26px}
.boundary-ledger{
  display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;
  margin:0 0 18px;overflow-x:auto;scrollbar-width:none
}
.boundary-ledger::-webkit-scrollbar{display:none}
.boundary-ledger-item{
  min-width:0;display:flex;align-items:center;gap:9px;padding:10px 11px;
  border:1px solid rgba(205,190,215,.12);border-radius:13px;
  background:rgba(255,255,255,.035);color:#d8cedd;text-align:left;box-shadow:none
}
.boundary-ledger-item:hover{transform:none;background:rgba(255,255,255,.055)}
.boundary-ledger-item[aria-current=true]{
  border-color:color-mix(in srgb,var(--scene-accent,#d98dab) 58%,transparent);
  background:rgba(255,255,255,.065)
}
.boundary-ledger-dot{
  flex:0 0 auto;width:9px;height:9px;border-radius:50%;background:var(--ledger-accent,#b89aaa);
  box-shadow:0 0 12px color-mix(in srgb,var(--ledger-accent,#b89aaa) 45%,transparent)
}
.boundary-ledger-copy{display:block;min-width:0}
.boundary-ledger-copy small{
  display:block;color:#95899d;font-size:9px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.boundary-ledger-copy strong{
  display:block;margin-top:2px;color:#e4dce8;font-size:11px;font-weight:600;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.tone-rose{--scene-accent:#dd82aa;--ledger-accent:#dd82aa}
.tone-sage{--scene-accent:#7eb7a1;--ledger-accent:#7eb7a1}
.tone-coral{--scene-accent:#d67980;--ledger-accent:#d67980}
.tone-violet{--scene-accent:#a48ad1;--ledger-accent:#a48ad1}
.tone-crimson{--scene-accent:#bb657c;--ledger-accent:#bb657c}
.tone-blue{--scene-accent:#79a8c0;--ledger-accent:#79a8c0}
.tone-mauve{--scene-accent:#ba83b4;--ledger-accent:#ba83b4}
.boundary-stage{
  position:relative;padding:30px 32px 24px;border:1px solid rgba(215,196,222,.15);border-radius:22px;
  background:
    linear-gradient(130deg,color-mix(in srgb,var(--scene-accent) 8%,transparent),transparent 38%),
    rgba(13,11,23,.31);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
  animation:boundary-scene-in .26s ease-out both
}
.boundary-stage:before{
  content:"";position:absolute;left:0;top:28px;bottom:28px;width:2px;border-radius:2px;
  background:var(--scene-accent);box-shadow:0 0 16px color-mix(in srgb,var(--scene-accent) 42%,transparent)
}
@keyframes boundary-scene-in{
  from{opacity:.25;transform:translateY(8px)}
  to{opacity:1;transform:translateY(0)}
}
.boundary-stage-head{
  display:grid;grid-template-columns:auto 1fr;gap:15px;align-items:start;margin-bottom:25px
}
.boundary-scene-number{
  display:grid;place-items:center;min-width:44px;height:44px;border:1px solid color-mix(in srgb,var(--scene-accent) 45%,#44364f);
  border-radius:50%;color:var(--scene-accent);font:600 13px/1 Georgia,serif;background:rgba(255,255,255,.025)
}
.boundary-stage-head h4{
  margin:0;color:#f1ebf4;font:500 clamp(27px,3vw,36px)/1.05 "Cormorant Garamond",Georgia,serif
}
.boundary-stage-head p{margin:7px 0 0;color:#a99faf;font-size:13.5px;line-height:1.5}

.boundary-options{display:grid;gap:10px}
.boundary-spectrum,.boundary-steps{grid-template-columns:repeat(6,minmax(0,1fr))}
.boundary-choice{grid-template-columns:repeat(3,minmax(0,1fr));max-width:780px}
.boundary-option{
  position:relative;min-height:118px;padding:19px 12px 16px;border:1px solid rgba(206,191,216,.16);
  border-radius:16px;background:rgba(255,255,255,.035);color:#d8cedd;text-align:center;box-shadow:none;
  transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease
}
.boundary-option:hover{
  transform:translateY(-2px);background:rgba(255,255,255,.055);
  border-color:color-mix(in srgb,var(--scene-accent) 45%,transparent)
}
.boundary-option-mark{
  display:block;width:24px;height:24px;margin:0 auto 12px;border-radius:50%;
  border:1px solid rgba(203,145,224,.24);background:rgba(142,78,172,.08)
}
.boundary-option-label{display:block;font-size:14px;line-height:1.25}
.boundary-option[aria-pressed=true]{
  border-color:var(--scene-accent);
  background:color-mix(in srgb,var(--scene-accent) 12%,rgba(255,255,255,.04));
  box-shadow:0 0 0 1px color-mix(in srgb,var(--scene-accent) 28%,transparent),0 10px 26px rgba(0,0,0,.10)
}
.boundary-option[aria-pressed=true] .boundary-option-mark{
  border:4px solid var(--scene-accent);
  box-shadow:0 0 12px color-mix(in srgb,var(--scene-accent) 28%,transparent)
}
.boundary-spectrum:after,.boundary-steps:after{
  content:"";grid-column:1/-1;height:2px;margin:-4px 6% 0;
  background:linear-gradient(90deg,rgba(221,130,170,.24),var(--scene-accent),rgba(221,130,170,.18));
  border-radius:3px
}
.boundary-steps .boundary-option:nth-child(1){opacity:.74}
.boundary-steps .boundary-option:nth-child(2){background:rgba(255,255,255,.028)}
.boundary-steps .boundary-option:nth-child(3){background:rgba(179,100,116,.045)}
.boundary-steps .boundary-option:nth-child(4){background:rgba(179,91,104,.065)}
.boundary-steps .boundary-option:nth-child(5){background:rgba(178,78,94,.085)}
.boundary-steps .boundary-option:nth-child(6){background:rgba(166,62,80,.11)}

.boundary-tile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.boundary-tile{
  position:relative;min-height:80px;padding:15px 15px 15px 38px;border:1px solid rgba(206,191,216,.14);
  border-radius:14px;background:rgba(255,255,255,.032);color:#d7cedc;text-align:left;box-shadow:none
}
.boundary-tile:hover{transform:none;background:rgba(255,255,255,.052)}
.boundary-tile-check{
  position:absolute;left:15px;top:17px;color:#71667b;font-size:11px
}
.boundary-tile[aria-pressed=true]{
  border-color:var(--scene-accent);background:color-mix(in srgb,var(--scene-accent) 12%,transparent);
  color:#f0eaf3
}
.boundary-tile[aria-pressed=true] .boundary-tile-check{
  color:var(--scene-accent);text-shadow:0 0 11px color-mix(in srgb,var(--scene-accent) 65%,transparent)
}
.boundary-reference .deep-text{
  width:100%;min-height:180px;padding:18px;border-color:rgba(206,191,216,.18);border-radius:16px;
  background:rgba(8,7,16,.30);color:#eee8f1;font-size:15px;line-height:1.6
}
.boundary-reference .deep-text:focus{
  border-color:var(--scene-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--scene-accent) 14%,transparent)
}
.boundary-scene-nav{
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin-top:26px;padding-top:18px;
  border-top:1px solid rgba(213,196,222,.10)
}
.boundary-scene-nav>span{color:#8f8496;font-size:12px;text-align:center}
.boundary-scene-back,.boundary-scene-next{
  min-height:42px;padding:9px 16px;border-radius:12px;border:1px solid rgba(209,193,218,.16);
  background:rgba(255,255,255,.03);color:#c9bdcf;box-shadow:none
}
.boundary-scene-back{justify-self:start}
.boundary-scene-next{justify-self:end;border-color:color-mix(in srgb,var(--scene-accent) 45%,transparent);color:#f1e9f3}
.boundary-scene-back:disabled{opacity:.3}
.boundary-scene-ready{justify-self:end!important;color:var(--scene-accent)!important;font-weight:600}

@media(max-width:900px){
  .boundary-ledger{grid-template-columns:repeat(7,minmax(128px,1fr))}
  .boundary-spectrum,.boundary-steps{grid-template-columns:repeat(3,1fr)}
  .boundary-choice{grid-template-columns:repeat(3,1fr)}
  .boundary-tile-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
  .deep-card.boundary-mode #deepBody>h3{padding:25px 20px 5px;font-size:35px}
  .deep-card.boundary-mode #deepBody>.deep-intro{padding:0 20px 20px;font-size:13.5px}
  .boundary-prototype{padding:0 13px 18px}
  .boundary-ledger{margin-bottom:12px}
  .boundary-stage{padding:23px 17px 18px;border-radius:18px}
  .boundary-stage-head{grid-template-columns:auto 1fr;gap:11px;margin-bottom:19px}
  .boundary-scene-number{min-width:38px;height:38px}
  .boundary-stage-head h4{font-size:27px}
  .boundary-spectrum,.boundary-steps{grid-template-columns:repeat(2,1fr)}
  .boundary-choice{grid-template-columns:1fr}
  .boundary-option{min-height:92px;padding:15px 10px}
  .boundary-option-mark{margin-bottom:10px}
  .boundary-tile-grid{grid-template-columns:1fr}
  .boundary-scene-nav{grid-template-columns:1fr auto 1fr}
  .boundary-scene-nav>span{font-size:11px}
  .boundary-scene-back,.boundary-scene-next{padding-inline:11px}
  .deep-card.boundary-mode .deep-actions{padding:13px 15px 16px}
}
@media(prefers-reduced-motion:reduce){
  .boundary-stage{animation:none}
  .boundary-option{transition:none}
}


/* === Section 7 scene 7.1 · interactive book spectrum === */
.boundary-book-spectrum{
  position:relative;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:13px;
  align-items:end;
  padding:16px 10px 34px;
  perspective:1000px;
}
.boundary-book-choice{
  position:relative;
  min-width:0;
  padding:0 4px;
  border:0;
  background:transparent;
  color:#d9cfdf;
  box-shadow:none;
  text-align:center;
  cursor:pointer;
}
.boundary-book-choice:hover{transform:none;background:transparent}
.boundary-book-object{
  position:relative;
  display:block;
  width:min(112px,78%);
  aspect-ratio:.72;
  margin:0 auto 14px;
  transform-style:preserve-3d;
  transition:transform .22s ease,filter .22s ease;
}
.boundary-book-choice:hover .boundary-book-object{
  transform:translateY(-5px);
  filter:brightness(1.08);
}
.boundary-book-shadow{
  position:absolute;
  left:12%;right:4%;bottom:-11px;height:16px;
  border-radius:50%;
  background:rgba(0,0,0,.30);
  filter:blur(8px);
  transform:translateZ(-8px);
}
.boundary-book-back{
  position:absolute;inset:0;
  border:1px solid rgba(210,185,215,.24);
  border-radius:5px 9px 9px 5px;
  background:
    radial-gradient(circle at 62% 28%,rgba(222,137,174,.14),transparent 26%),
    linear-gradient(145deg,#3a2940,#251d31 60%,#1c1828);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 9px 18px rgba(0,0,0,.18);
}
.boundary-book-pages{
  position:absolute;
  left:15%;right:4%;top:6%;bottom:5%;
  border-radius:2px 7px 7px 2px;
  background:
    repeating-linear-gradient(0deg,rgba(104,89,114,.13) 0 1px,transparent 1px 4px),
    linear-gradient(90deg,#c9bfd0,#eee8f0 60%,#bdb0c5);
  transform:translateZ(2px);
  box-shadow:inset -5px 0 10px rgba(69,50,76,.18);
}
.boundary-book-cover{
  position:absolute;inset:0;
  transform-origin:8% 50%;
  transform:translateZ(8px) rotateY(var(--book-angle));
  border:1px solid color-mix(in srgb,var(--scene-accent) 42%,#55415d);
  border-radius:5px 9px 9px 5px;
  background:
    linear-gradient(90deg,rgba(255,255,255,.05),transparent 18%),
    radial-gradient(circle at 64% 32%,color-mix(in srgb,var(--scene-accent) 17%,transparent),transparent 25%),
    linear-gradient(145deg,#4b3047,#2c2036 64%,#20192b);
  box-shadow:inset 4px 0 0 rgba(8,7,14,.22),0 7px 17px rgba(0,0,0,.20);
  transition:transform .36s cubic-bezier(.2,.7,.2,1),box-shadow .25s ease,border-color .25s ease;
  backface-visibility:hidden;
}
.boundary-book-cover:before{
  content:"";
  position:absolute;inset:10%;
  border:1px solid rgba(225,171,197,.18);
  border-radius:3px 7px 7px 3px;
}
.boundary-book-cover i{
  position:absolute;
  left:50%;top:42%;
  width:19px;height:19px;
  border:1px solid rgba(233,170,199,.40);
  transform:translate(-50%,-50%) rotate(45deg);
  box-shadow:0 0 15px rgba(218,117,166,.08);
}
.boundary-book-spine{
  position:absolute;left:-2px;top:1%;bottom:1%;width:12%;
  border-radius:5px 2px 2px 5px;
  background:linear-gradient(90deg,#17131f,#5b344f 52%,#2a1d31);
  transform:translateZ(10px);
  box-shadow:inset -1px 0 rgba(240,191,212,.14);
}
.boundary-book-glyph{
  position:absolute;
  left:50%;top:43%;
  transform:translate(-50%,-50%) translateZ(14px);
  color:#dc94b4;
  font:600 22px/1 Georgia,serif;
  text-shadow:0 0 15px rgba(220,148,180,.30);
}
.boundary-book-label{
  display:block;
  min-height:38px;
  color:#c8becd;
  font-size:13px;
  line-height:1.28;
  transition:color .18s ease,transform .18s ease;
}
.boundary-book-choice[aria-pressed=true] .boundary-book-object{
  transform:translateY(-12px) scale(1.055);
  filter:brightness(1.12);
}
.boundary-book-choice[aria-pressed=true] .boundary-book-cover{
  transform:translateZ(8px) rotateY(calc(var(--book-angle) - 16deg));
  border-color:var(--scene-accent);
  box-shadow:
    inset 4px 0 0 rgba(8,7,14,.18),
    0 9px 22px rgba(0,0,0,.24),
    0 0 28px color-mix(in srgb,var(--scene-accent) 25%,transparent);
  animation:book-choice-open .42s cubic-bezier(.18,.75,.22,1) both;
}
.boundary-book-choice[aria-pressed=true] .boundary-book-label{
  color:#f1e9f3;
  transform:translateY(-2px);
}
.boundary-book-choice[aria-pressed=true]:after{
  content:"";
  position:absolute;
  left:50%;bottom:18px;
  width:7px;height:7px;border-radius:50%;
  background:var(--scene-accent);
  transform:translateX(-50%);
  box-shadow:0 0 0 5px color-mix(in srgb,var(--scene-accent) 12%,transparent),0 0 18px color-mix(in srgb,var(--scene-accent) 45%,transparent);
}
.boundary-book-choice.is-wildcard .boundary-book-cover{
  background:
    radial-gradient(circle at 50% 45%,rgba(218,143,180,.12),transparent 30%),
    linear-gradient(145deg,#3e324c,#251f34 65%,#1d1928);
}
.boundary-book-shelf{
  position:absolute;
  left:1%;right:1%;bottom:24px;height:8px;
  border-radius:50%;
  background:linear-gradient(90deg,transparent,rgba(137,106,138,.25) 7%,rgba(187,133,159,.34) 50%,rgba(137,106,138,.25) 93%,transparent);
  box-shadow:0 5px 10px rgba(0,0,0,.13);
}
.boundary-book-shelf span{
  position:absolute;left:7%;right:7%;top:2px;height:1px;background:rgba(227,167,197,.17)
}
@keyframes book-choice-open{
  0%{transform:translateZ(8px) rotateY(var(--book-angle))}
  62%{transform:translateZ(8px) rotateY(calc(var(--book-angle) - 22deg))}
  100%{transform:translateZ(8px) rotateY(calc(var(--book-angle) - 16deg))}
}
@media(max-width:900px){
  .boundary-book-spectrum{grid-template-columns:repeat(3,1fr);row-gap:23px}
  .boundary-book-shelf{display:none}
  .boundary-book-object{width:min(104px,68%)}
}
@media(max-width:620px){
  .boundary-book-spectrum{grid-template-columns:repeat(2,1fr);gap:18px 10px;padding:10px 2px 16px}
  .boundary-book-object{width:min(92px,70%);margin-bottom:10px}
  .boundary-book-label{font-size:12.5px}
  .boundary-book-choice[aria-pressed=true]:after{bottom:1px}
}
@media(prefers-reduced-motion:reduce){
  .boundary-book-cover,.boundary-book-object,.boundary-book-label{transition:none}
  .boundary-book-choice[aria-pressed=true] .boundary-book-cover{animation:none}
}


/* === Deep Match castle rooms · Sections 1–6 === */
.deep-card[data-room]:not([data-room="boundaries"]){
  --room-accent:#9f82b0;
  --room-accent-2:#6f8da3;
  padding:0;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--room-accent) 25%,#6a5a74);
  background:
    radial-gradient(circle at 92% 3%,color-mix(in srgb,var(--room-accent) 13%,transparent),transparent 27%),
    radial-gradient(circle at 5% 94%,color-mix(in srgb,var(--room-accent-2) 10%,transparent),transparent 28%),
    linear-gradient(145deg,#342a40 0%,#2b2436 52%,#30263b 100%);
  color:#eee9f2;
  box-shadow:0 23px 66px rgba(40,28,50,.18)
}
.deep-card[data-room="source"]{--room-accent:#82a9ba;--room-accent-2:#9a759e}
.deep-card[data-room="genre"]{--room-accent:#b48ac4;--room-accent-2:#7b8fad}
.deep-card[data-room="world"]{--room-accent:#72aaa5;--room-accent-2:#8c78b1}
.deep-card[data-room="reading"]{--room-accent:#c58ca8;--room-accent-2:#7c8fae}
.deep-card[data-room="appetite"]{--room-accent:#c47989;--room-accent-2:#8c7ab2}
.deep-card[data-room="reader"]{--room-accent:#8d95cf;--room-accent-2:#b67fa8}

.deep-card[data-room]:not([data-room="boundaries"]) #deepBody{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:0 28px 28px
}
.deep-card[data-room]:not([data-room="boundaries"]) #deepBody>h3{
  grid-column:1/-1;margin:0 -28px;padding:34px 40px 5px;
  color:#f2edf5;font-size:clamp(35px,4vw,48px);line-height:1.02;letter-spacing:-.022em
}
.deep-card[data-room]:not([data-room="boundaries"]) #deepBody>.deep-intro{
  grid-column:1/-1;margin:0 -28px 8px;padding:0 40px 19px;
  max-width:none;color:#b8aec0;font-size:14.5px;line-height:1.55;
  border-bottom:1px solid rgba(213,197,220,.09)
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-question{
  position:relative;margin:0;padding:22px;border:1px solid rgba(211,195,219,.11);border-radius:18px;
  background:rgba(255,255,255,.028);box-shadow:inset 0 1px rgba(255,255,255,.018);overflow:hidden
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-question:before{
  content:"";position:absolute;left:0;top:19px;bottom:19px;width:2px;border-radius:2px;
  background:var(--question-accent,var(--room-accent));
  box-shadow:0 0 14px color-mix(in srgb,var(--question-accent,var(--room-accent)) 34%,transparent)
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-question h4{
  margin:0 0 6px;color:#eee8f2;font:500 24px/1.08 "Cormorant Garamond",Georgia,serif
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-question p{
  margin:0 0 14px;color:#9f94a6;font-size:12.5px;line-height:1.45
}
.deep-card[data-room]:not([data-room="boundaries"]) .fine-print{color:#887e90}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-actions{
  margin:0;padding:15px 28px 20px;border-top:1px solid rgba(211,195,219,.10);
  background:rgba(34,28,44,.90);backdrop-filter:blur(12px)
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-actions .secondary{
  color:#c9bfce;border-color:rgba(205,191,214,.20);background:rgba(255,255,255,.025)
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-actions .primary{
  color:#fbf6fc;border-color:color-mix(in srgb,var(--room-accent) 55%,#6c5578);
  background:linear-gradient(135deg,color-mix(in srgb,var(--room-accent) 68%,#49324e),#5b3c68)
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-option-icon{
  display:grid;place-items:center;flex:0 0 auto;
  width:30px;height:30px;border-radius:9px;
  color:var(--question-accent,var(--room-accent));
  font:600 17px/1 Georgia,serif;
  background:color-mix(in srgb,var(--question-accent,var(--room-accent)) 9%,transparent);
  border:1px solid color-mix(in srgb,var(--question-accent,var(--room-accent)) 20%,transparent);
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-option-text{display:block;min-width:0}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-chip,
.deep-card[data-room]:not([data-room="boundaries"]) .deep-radio button{
  display:flex;align-items:center;gap:9px;min-height:48px;padding:9px 12px;
  border:1px solid rgba(208,193,216,.13);border-radius:13px;
  background:rgba(255,255,255,.025);color:#d5cbd9;text-align:left;box-shadow:none;
  transition:transform .17s ease,background .17s ease,border-color .17s ease
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-chip:hover,
.deep-card[data-room]:not([data-room="boundaries"]) .deep-radio button:hover{
  transform:translateY(-2px);background:rgba(255,255,255,.045);
  border-color:color-mix(in srgb,var(--question-accent,var(--room-accent)) 40%,transparent)
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-chip[aria-pressed=true],
.deep-card[data-room]:not([data-room="boundaries"]) .deep-radio button[aria-pressed=true]{
  color:#f3edf5;border-color:var(--question-accent,var(--room-accent));
  background:color-mix(in srgb,var(--question-accent,var(--room-accent)) 11%,rgba(255,255,255,.025));
  box-shadow:0 0 0 1px color-mix(in srgb,var(--question-accent,var(--room-accent)) 19%,transparent)
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-chip[aria-pressed=true]::before,
.deep-card[data-room]:not([data-room="boundaries"]) .deep-radio button[aria-pressed=true]::before{display:none}
.deep-card[data-room]:not([data-room="boundaries"]) [aria-pressed=true] .deep-option-icon{
  transform:scale(1.08);
  background:color-mix(in srgb,var(--question-accent,var(--room-accent)) 18%,transparent);
  box-shadow:0 0 18px color-mix(in srgb,var(--question-accent,var(--room-accent)) 27%,transparent);
  animation:relic-awaken .28s ease-out both
}
@keyframes relic-awaken{
  0%{transform:scale(.86);opacity:.55}
  65%{transform:scale(1.13);opacity:1}
  100%{transform:scale(1.08);opacity:1}
}

/* Room 1 · Archive desk */
.deep-card[data-room="source"] #deepBody{grid-template-columns:1.08fr .92fr}
.deep-card[data-room="source"] [data-question-field="sources"],
.deep-card[data-room="source"] [data-question-field="formats"]{grid-column:1/-1}
.deep-card[data-room="source"] [data-question-field="sources"]{--question-accent:#88b4c3}
.deep-card[data-room="source"] [data-question-field="formats"]{--question-accent:#b38dac}
.deep-card[data-room="source"] [data-question-field="statuses"]{--question-accent:#7f9eb7}
.deep-card[data-room="source"] [data-question-field="languages"]{--question-accent:#a180b5}
.deep-card[data-room="source"] [data-question-field="access"]{--question-accent:#89a6b8}
.deep-card[data-room="source"] [data-question-field="sources"] .chips{
  display:grid;grid-template-columns:repeat(3,1fr);gap:10px
}
.deep-card[data-room="source"] [data-question-field="sources"] .deep-chip{
  min-height:94px;flex-direction:column;justify-content:center;text-align:center
}
.deep-card[data-room="source"] [data-question-field="sources"] .deep-option-icon{
  width:42px;height:42px;border-radius:50%;font-size:22px
}
.deep-card[data-room="source"] [data-question-field="formats"] .chips{
  display:grid;grid-template-columns:repeat(5,1fr);gap:8px
}
.deep-card[data-room="source"] [data-question-field="formats"] .deep-chip{
  min-height:84px;flex-direction:column;justify-content:center;text-align:center
}
.deep-card[data-room="source"] [data-question-field="languages"] .chips{
  display:grid;grid-template-columns:repeat(3,1fr);gap:7px
}
.deep-card[data-room="source"] [data-question-field="languages"] .deep-option-icon{
  width:34px;height:34px;border-radius:50%;font:600 11px/1 Arial,sans-serif;letter-spacing:.03em
}

/* Room 2 · Hall of crests */
.deep-card[data-room="genre"] #deepBody{grid-template-columns:1fr}
.deep-card[data-room="genre"] [data-question-field="genres"]{--question-accent:#bd8bc9}
.deep-card[data-room="genre"] [data-question-field="subgenres"]{--question-accent:#8296bd}
.deep-card[data-room="genre"] [data-question-field="audiences"]{--question-accent:#c58aa8}
.deep-card[data-room="genre"] [data-question-field="genres"] .chips{
  display:grid;grid-template-columns:repeat(4,1fr);gap:10px
}
.deep-card[data-room="genre"] [data-question-field="genres"] .deep-chip{
  position:relative;min-height:112px;flex-direction:column;justify-content:center;text-align:center;
  clip-path:polygon(8% 0,92% 0,100% 10%,100% 88%,50% 100%,0 88%,0 10%)
}
.deep-card[data-room="genre"] [data-question-field="genres"] .deep-option-icon{
  width:44px;height:44px;border-radius:50%;font-size:23px
}
.deep-card[data-room="genre"] [data-question-field="subgenres"] .chips{gap:7px}
.deep-card[data-room="genre"] [data-question-field="subgenres"] .deep-chip{min-height:42px;border-radius:999px}
.deep-card[data-room="genre"] [data-question-field="subgenres"] .deep-option-icon{display:none}
.deep-card[data-room="genre"] [data-question-field="audiences"] .chips{
  display:grid;grid-template-columns:repeat(6,1fr);gap:8px
}
.deep-card[data-room="genre"] [data-question-field="audiences"] .deep-chip{
  min-height:76px;flex-direction:column;justify-content:center;text-align:center
}

/* Room 3 · Map chamber */
.deep-card[data-room="world"] #deepBody{grid-template-columns:repeat(2,1fr)}
.deep-card[data-room="world"] [data-question-field="places"],
.deep-card[data-room="world"] [data-question-field="moods"]{grid-column:1/-1}
.deep-card[data-room="world"] [data-question-field="era"]{--question-accent:#75aaa6}
.deep-card[data-room="world"] [data-question-field="eraStrict"]{--question-accent:#b186bb}
.deep-card[data-room="world"] [data-question-field="world"]{--question-accent:#8499b8}
.deep-card[data-room="world"] [data-question-field="places"]{--question-accent:#7da8a2}
.deep-card[data-room="world"] [data-question-field="moods"]{--question-accent:#a981b4}
.deep-card[data-room="world"] [data-question-field="era"] .deep-radio,
.deep-card[data-room="world"] [data-question-field="world"] .deep-radio{
  display:grid;grid-template-columns:repeat(4,1fr);gap:8px
}
.deep-card[data-room="world"] [data-question-field="world"] .deep-radio{grid-template-columns:repeat(3,1fr)}
.deep-card[data-room="world"] [data-question-field="era"] .deep-radio button,
.deep-card[data-room="world"] [data-question-field="world"] .deep-radio button{
  min-height:105px;flex-direction:column;justify-content:center;text-align:center;border-radius:50% 50% 15px 15px
}
.deep-card[data-room="world"] [data-question-field="era"] .deep-option-icon,
.deep-card[data-room="world"] [data-question-field="world"] .deep-option-icon{
  width:43px;height:43px;border-radius:50%;font-size:22px
}
.deep-card[data-room="world"] [data-question-field="places"] .chips{
  display:grid;grid-template-columns:repeat(6,1fr);gap:9px
}
.deep-card[data-room="world"] [data-question-field="places"] .deep-chip{
  min-height:86px;flex-direction:column;justify-content:center;text-align:center
}
.deep-card[data-room="world"] [data-question-field="moods"] .chips{
  display:grid;grid-template-columns:repeat(5,1fr);gap:12px
}
.deep-card[data-room="world"] [data-question-field="moods"] .deep-chip{
  min-height:112px;aspect-ratio:1.35;border-radius:50%;flex-direction:column;justify-content:center;text-align:center
}

/* Room 4 · Reading instruments */
.deep-card[data-room="reading"] #deepBody{grid-template-columns:repeat(2,1fr)}
.deep-card[data-room="reading"] .deep-question{--question-accent:#c48da9}
.deep-card[data-room="reading"] .deep-question:nth-of-type(2n){--question-accent:#8598bb}
.deep-card[data-room="reading"] .deep-radio{
  position:relative;display:grid;grid-template-columns:repeat(var(--dial-cols,4),1fr);gap:0;margin-top:18px;padding-top:14px
}
.deep-card[data-room="reading"] .deep-radio:before{
  content:"";position:absolute;left:7%;right:7%;top:28px;height:1px;
  background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--question-accent) 55%,transparent),transparent)
}
.deep-card[data-room="reading"] .deep-radio button{
  position:relative;z-index:1;min-height:82px;padding:6px 4px;flex-direction:column;justify-content:flex-start;
  border:0;background:transparent;text-align:center
}
.deep-card[data-room="reading"] .deep-radio button:hover{background:transparent;transform:none}
.deep-card[data-room="reading"] .deep-option-icon{
  width:34px;height:34px;border-radius:50%;background:#2b2436;border-width:1px;margin-bottom:7px
}
.deep-card[data-room="reading"] .deep-radio button[aria-pressed=true]{background:transparent;box-shadow:none}
.deep-card[data-room="reading"] .deep-radio button[aria-pressed=true] .deep-option-icon{
  background:var(--question-accent);color:#241d2f;border-color:#efe6f0
}
.deep-card[data-room="reading"] .deep-option-text{font-size:12px;line-height:1.18;text-align:center}

/* Room 5 · Clue table */
.deep-card[data-room="appetite"] #deepBody{grid-template-columns:repeat(3,1fr)}
.deep-card[data-room="appetite"] [data-question-field="drivers"],
.deep-card[data-room="appetite"] [data-question-field="mysteries"]{grid-column:1/-1}
.deep-card[data-room="appetite"] [data-question-field="drivers"]{--question-accent:#c47a89}
.deep-card[data-room="appetite"] [data-question-field="mysteries"]{--question-accent:#8d84b8}
.deep-card[data-room="appetite"] [data-question-field="drivers"] .chips{
  display:grid;grid-template-columns:repeat(7,1fr);gap:8px
}
.deep-card[data-room="appetite"] [data-question-field="drivers"] .deep-chip{
  min-height:96px;flex-direction:column;justify-content:center;text-align:center
}
.deep-card[data-room="appetite"] [data-question-field="drivers"] .deep-option-icon{
  width:42px;height:42px;border-radius:50%;font-size:21px
}
.deep-card[data-room="appetite"] [data-question-field="mysteries"] .chips{
  display:grid;grid-template-columns:repeat(3,1fr);gap:8px
}
.deep-card[data-room="appetite"] [data-question-field="mysteries"] .deep-chip{
  position:relative;min-height:58px;border-radius:8px 14px 8px 14px;
  background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.018))
}
.deep-card[data-room="appetite"] [data-question-field="politics"]{--question-accent:#a887bd}
.deep-card[data-room="appetite"] [data-question-field="romance"]{--question-accent:#c984a4}
.deep-card[data-room="appetite"] [data-question-field="action"]{--question-accent:#c47782}
.deep-card[data-room="appetite"] [data-question-field="politics"] .deep-radio,
.deep-card[data-room="appetite"] [data-question-field="romance"] .deep-radio,
.deep-card[data-room="appetite"] [data-question-field="action"] .deep-radio{
  display:grid;grid-template-columns:repeat(2,1fr);gap:7px
}

/* Room 6 · Reader oracle */
.deep-card[data-room="reader"] #deepBody{grid-template-columns:repeat(2,1fr)}
.deep-card[data-room="reader"] .deep-question{--question-accent:#969bd1;min-height:190px}
.deep-card[data-room="reader"] .deep-question:nth-of-type(3n+1){--question-accent:#bd83aa}
.deep-card[data-room="reader"] .deep-question:nth-of-type(3n+2){--question-accent:#7da2b7}
.deep-card[data-room="reader"] [data-question-field="request"]{grid-column:1/-1;min-height:auto}
.deep-card[data-room="reader"] .deep-radio{
  display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:13px
}
.deep-card[data-room="reader"] .deep-radio button{
  min-height:58px;padding:9px 10px
}
.deep-card[data-room="reader"] .deep-option-icon{
  width:27px;height:27px;border-radius:50%;font-size:13px
}
.deep-card[data-room="reader"] .deep-text{
  width:100%;min-height:120px;border-color:rgba(207,193,216,.16);background:rgba(8,7,15,.24);color:#eee9f2
}

/* Room-aware progress companion */
.deep-match[data-deep-room]:not([data-deep-room="boundaries"]) .deep-progress-row{
  background:rgba(47,39,58,.90);
  border-color:color-mix(in srgb,var(--room-accent,#9f82b0) 24%,transparent);
  box-shadow:0 10px 27px rgba(44,31,54,.12)
}
.deep-match[data-deep-room]:not([data-deep-room="boundaries"]) .deep-nav:before{background:rgba(205,190,215,.24)}
.deep-match[data-deep-room]:not([data-deep-room="boundaries"]) .deep-nav button:after{background:#3a3046;border-color:#8c7c95}
.deep-match[data-deep-room]:not([data-deep-room="boundaries"]) .deep-nav button[data-complete="true"]:after{background:#b98cad;border-color:#b98cad}
.deep-match[data-deep-room]:not([data-deep-room="boundaries"]) .deep-nav button[aria-current=true]:after{
  background:#d195b7;border-color:#31283d;box-shadow:0 0 0 3px rgba(209,149,183,.14),0 0 14px rgba(209,149,183,.20)
}
.deep-match[data-deep-room]:not([data-deep-room="boundaries"]) .living-base{stroke:#a58cad}
.deep-match[data-deep-room]:not([data-deep-room="boundaries"]) .living-stroke.done{stroke:#cc90ae}

@media(max-width:1050px){
  .deep-card[data-room="source"] [data-question-field="formats"] .chips{grid-template-columns:repeat(3,1fr)}
  .deep-card[data-room="genre"] [data-question-field="genres"] .chips{grid-template-columns:repeat(3,1fr)}
  .deep-card[data-room="genre"] [data-question-field="audiences"] .chips{grid-template-columns:repeat(3,1fr)}
  .deep-card[data-room="world"] [data-question-field="places"] .chips{grid-template-columns:repeat(3,1fr)}
  .deep-card[data-room="appetite"] [data-question-field="drivers"] .chips{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:760px){
  .deep-card[data-room]:not([data-room="boundaries"]) #deepBody{grid-template-columns:1fr;padding:0 14px 20px}
  .deep-card[data-room]:not([data-room="boundaries"]) #deepBody>h3{margin:0 -14px;padding:27px 21px 5px;font-size:36px}
  .deep-card[data-room]:not([data-room="boundaries"]) #deepBody>.deep-intro{margin:0 -14px 5px;padding:0 21px 17px}
  .deep-card[data-room]:not([data-room="boundaries"]) .deep-question{grid-column:1/-1!important;padding:18px}
  .deep-card[data-room="source"] [data-question-field="sources"] .chips,
  .deep-card[data-room="source"] [data-question-field="formats"] .chips,
  .deep-card[data-room="genre"] [data-question-field="genres"] .chips,
  .deep-card[data-room="genre"] [data-question-field="audiences"] .chips,
  .deep-card[data-room="world"] [data-question-field="places"] .chips,
  .deep-card[data-room="world"] [data-question-field="moods"] .chips,
  .deep-card[data-room="appetite"] [data-question-field="drivers"] .chips,
  .deep-card[data-room="appetite"] [data-question-field="mysteries"] .chips{
    grid-template-columns:repeat(2,1fr)
  }
  .deep-card[data-room="world"] [data-question-field="era"] .deep-radio,
  .deep-card[data-room="world"] [data-question-field="world"] .deep-radio{grid-template-columns:repeat(2,1fr)}
  .deep-card[data-room="reading"] .deep-radio{grid-template-columns:repeat(2,1fr);gap:7px;padding-top:0}
  .deep-card[data-room="reading"] .deep-radio:before{display:none}
  .deep-card[data-room="reading"] .deep-radio button{
    min-height:52px;flex-direction:row;justify-content:flex-start;border:1px solid rgba(208,193,216,.13);background:rgba(255,255,255,.025)
  }
  .deep-card[data-room="reader"] .deep-question{min-height:auto}
  .deep-card[data-room="reader"] .deep-radio{grid-template-columns:1fr}
  .deep-card[data-room]:not([data-room="boundaries"]) .deep-actions{padding:13px 15px 16px}
}


/* === Deep Match castle artwork header === */
.deep-head{
  position:relative;
  isolation:isolate;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  max-width:none;
  min-height:clamp(265px,29vw,330px);
  margin:0 0 18px;
  padding:clamp(32px,4vw,48px);
  overflow:hidden;
  border:1px solid rgba(122,92,137,.24);
  border-radius:28px;
  background:
    linear-gradient(90deg,rgba(35,23,47,.92) 0%,rgba(47,31,60,.72) 37%,rgba(50,37,65,.28) 67%,rgba(31,24,43,.42) 100%),
    linear-gradient(180deg,rgba(50,34,63,.06) 0%,rgba(36,27,49,.56) 100%),
    url("/assets/book-finder/deep-match-castle.webp") center 50%/cover no-repeat;
  box-shadow:0 20px 50px rgba(55,38,67,.16);
}
.deep-head:after{
  content:"";
  position:absolute;
  inset:12px;
  z-index:-1;
  pointer-events:none;
  border:1px solid rgba(217,183,213,.10);
  border-radius:20px;
}
.deep-head .kicker{
  position:relative;
  z-index:1;
  margin:0 0 8px;
  color:#dda0bc;
  text-shadow:0 2px 12px rgba(0,0,0,.40);
}
.deep-head h2{
  position:relative;
  z-index:1;
  max-width:710px;
  margin:0 0 10px;
  color:#f6f0f8;
  font-size:clamp(38px,4.2vw,52px);
  line-height:1.01;
  text-shadow:0 3px 24px rgba(12,8,18,.55);
}
.deep-head p{
  position:relative;
  z-index:1;
  max-width:660px;
  margin:0;
  color:#d8cedd;
  font-size:14.5px;
  line-height:1.55;
  text-shadow:0 2px 12px rgba(10,7,15,.45);
}
@media(max-width:620px){
  .deep-head{
    min-height:235px;
    margin-bottom:14px;
    padding:28px 21px 25px;
    border-radius:21px;
    background-position:48% 50%;
  }
  .deep-head:after{inset:9px;border-radius:15px}
  .deep-head h2{font-size:34px}
  .deep-head p{font-size:13.5px}
}


/* === Full-screen Deep Match artwork correction === */
.deep-match{
  max-width:none;
  width:100%;
  margin:0;
  padding:0 0 96px;
  overflow:visible;
}
.deep-shell{
  max-width:none;
  width:100%;
  margin:0;
}
.deep-question-pane{
  max-width:none!important;
  width:100%;
  margin:0!important;
}
.deep-head{
  width:100vw;
  min-height:calc(100svh - 72px);
  margin:0 calc(50% - 50vw);
  padding:
    clamp(64px,10vh,118px)
    clamp(34px,9vw,170px)
    clamp(72px,12vh,132px);
  justify-content:flex-end;
  align-items:flex-start;
  border:0;
  border-radius:0;
  box-shadow:none;
  background:
    linear-gradient(90deg,rgba(27,18,38,.80) 0%,rgba(39,27,52,.55) 34%,rgba(44,33,59,.14) 64%,rgba(29,23,42,.18) 100%),
    linear-gradient(180deg,rgba(24,17,35,.08) 0%,rgba(28,20,39,.10) 55%,rgba(28,20,39,.46) 100%),
    url("/assets/book-finder/deep-match-castle.webp") center 50%/cover no-repeat;
}
.deep-head:after{
  inset:0;
  border:0;
  border-radius:0;
  background:
    radial-gradient(circle at 51% 42%,transparent 0 22%,rgba(21,15,31,.05) 55%,rgba(18,12,27,.22) 100%);
}
.deep-head .kicker,
.deep-head h2,
.deep-head p{
  width:min(720px,82vw);
}
.deep-head .kicker{
  margin-bottom:10px;
  color:#e0a6c2;
  font-size:11px;
  letter-spacing:.18em;
}
.deep-head h2{
  max-width:720px;
  margin:0 0 13px;
  font-size:clamp(44px,5.3vw,72px);
  line-height:.98;
  letter-spacing:-.032em;
}
.deep-head p{
  max-width:670px;
  color:#ddd4e1;
  font-size:clamp(14px,1.25vw,17px);
  line-height:1.62;
}
.deep-layout{
  width:min(1180px,92vw);
  margin:0 auto;
  position:relative;
}
.deep-progress-row{
  position:sticky;
  top:84px;
  z-index:24;
  margin:-86px 0 20px;
  padding:10px 14px;
  border:1px solid rgba(198,174,207,.20);
  border-radius:18px;
  background:rgba(42,34,53,.88);
  -webkit-backdrop-filter:blur(16px) saturate(1.08);
  backdrop-filter:blur(16px) saturate(1.08);
  box-shadow:0 14px 36px rgba(35,24,46,.18);
}
.deep-card{
  margin-top:0;
}
@media(max-width:980px){
  .deep-head{
    text-align:left;
  }
  .deep-head p{
    margin-inline:0;
  }
}
@media(max-width:620px){
  .deep-match{padding:0 0 70px}
  .deep-head{
    min-height:calc(100svh - 58px);
    margin:0 calc(50% - 50vw);
    padding:52px 22px 96px;
    border-radius:0;
    background-position:56% 50%;
  }
  .deep-head:after{inset:0;border-radius:0}
  .deep-head .kicker,.deep-head h2,.deep-head p{width:min(92vw,620px)}
  .deep-head h2{font-size:clamp(38px,12vw,54px)}
  .deep-head p{font-size:14px;line-height:1.55}
  .deep-layout{width:min(94vw,760px)}
  .deep-progress-row{
    top:68px;
    margin:-72px 0 14px;
    padding:7px 9px;
    border-radius:14px;
  }
}


/* === Final anime library panel scene === */
html,body{background:#120d20}
.topbar{
  position:fixed!important;
  top:0;left:0;right:0;
  z-index:50;
  height:72px;
  background:linear-gradient(180deg,rgba(11,7,24,.72),rgba(11,7,24,.15))!important;
  border-bottom:0!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
.brand{
  color:#f8f1fb!important;
  text-shadow:0 2px 14px rgba(0,0,0,.48);
}
.brand span{color:#ddb06f!important}
.locale{
  background:rgba(24,17,48,.82)!important;
  border:1px solid rgba(219,186,245,.20)!important;
  box-shadow:0 5px 16px rgba(5,3,13,.14);
}
.locale button{color:#d9d0e4!important}
.locale button[aria-pressed=true]{
  background:#63377f!important;
  color:#fff!important;
}

.deep-match{
  position:relative;
  isolation:isolate;
  width:100%;
  max-width:none!important;
  height:100svh;
  min-height:100svh;
  margin:0!important;
  padding:0!important;
  overflow:hidden;
  background:#130e23!important;
}
.deep-scene-art{
  position:absolute;
  inset:0;
  z-index:0;
  display:block!important;
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  object-fit:cover;
  object-position:50% 50%;
  opacity:1!important;
  visibility:visible!important;
  transform:none;
  pointer-events:none;
}
.deep-match:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(90deg,
      rgba(8,5,18,.015) 0%,
      rgba(8,5,18,0) 34%,
      rgba(13,8,28,.035) 55%,
      rgba(13,8,30,.10) 100%);
}

.deep-shell{
  position:relative;
  z-index:2;
  width:100%!important;
  max-width:none!important;
  height:100%;
  margin:0!important;
  padding:86px clamp(22px,4vw,72px) 22px;
  display:flex!important;
  justify-content:flex-end;
  align-items:center;
  box-sizing:border-box;
}
.deep-panel{
  width:min(940px,calc(52vw + 100px));
  height:calc(100svh - 110px);
  min-height:0;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  overflow:hidden;
  border:1px solid rgba(206,171,239,.22);
  border-radius:28px;
  background:
    radial-gradient(circle at 88% 2%,rgba(91,49,119,.12),transparent 28%),
    linear-gradient(180deg,rgba(28,22,57,.975),rgba(18,15,40,.975));
  box-shadow:
    0 28px 86px rgba(7,4,20,.46),
    inset 0 1px 0 rgba(255,255,255,.035);
}
.deep-panel-top{
  min-height:0;
  padding:27px 31px 16px;
  border-bottom:1px solid rgba(207,178,227,.10);
  background:linear-gradient(180deg,rgba(34,27,68,.97),rgba(24,19,50,.96));
}

.deep-match .deep-head{
  position:relative!important;
  width:auto!important;
  min-height:0!important;
  max-width:none!important;
  margin:0 0 16px!important;
  padding:0!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
  display:block!important;
  text-align:left!important;
}
.deep-match .deep-head:after{display:none!important}
.deep-match .deep-head .kicker{
  width:auto!important;
  max-width:none!important;
  margin:0 0 7px!important;
  color:#dfabd9!important;
  font-size:10px!important;
  letter-spacing:.18em!important;
  text-shadow:none!important;
}
.deep-match .deep-head h2,
.boundary-section-active .deep-head h2{
  width:auto!important;
  max-width:690px!important;
  margin:0 0 9px!important;
  color:#f7f1fb!important;
  font-size:clamp(37px,3.35vw,53px)!important;
  line-height:.99!important;
  letter-spacing:-.028em!important;
  text-shadow:none!important;
}
.deep-match .deep-head p{
  width:auto!important;
  max-width:650px!important;
  margin:0!important;
  color:#c6bdcf!important;
  font-size:14px!important;
  line-height:1.48!important;
  text-shadow:none!important;
}

.deep-match .deep-progress-row,
.boundary-section-active .deep-progress-row{
  position:relative!important;
  top:auto!important;
  z-index:2!important;
  margin:0!important;
  padding:3px 9px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 28px!important;
  gap:9px!important;
  border:1px solid rgba(188,151,226,.16)!important;
  border-radius:15px!important;
  background:rgba(13,10,31,.60)!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.deep-match .deep-nav:before{background:rgba(190,155,216,.28)!important}
.deep-match .deep-nav button:after{
  background:#211a3a!important;
  border-color:#806d98!important;
}
.deep-match .deep-nav button[data-complete="true"]:after{
  background:#ba78d1!important;
  border-color:#ba78d1!important;
}
.deep-match .deep-nav button[aria-current=true]:after{
  background:#d982f0!important;
  border-color:#f5eafa!important;
  box-shadow:0 0 0 4px rgba(210,112,238,.14),0 0 18px rgba(206,91,235,.27)!important;
}
.deep-match .deep-nav button{
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  min-height:22px!important;
}
.deep-match .living-bookmark{width:24px!important;height:28px!important}
.deep-match .living-base{stroke:#9c83ac!important;opacity:.72!important}
.deep-match .living-stroke{stroke:#6c5c78!important}
.deep-match .living-stroke.done{stroke:#d58ae8!important;opacity:1!important}

.deep-panel-scroll{
  min-height:0;
  overflow:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  scrollbar-color:rgba(169,111,210,.42) rgba(255,255,255,.025);
}
.deep-panel-scroll::-webkit-scrollbar{width:9px}
.deep-panel-scroll::-webkit-scrollbar-track{background:rgba(255,255,255,.025)}
.deep-panel-scroll::-webkit-scrollbar-thumb{
  background:rgba(169,111,210,.42);
  border-radius:999px;
}

.deep-card,
.deep-card[data-room]:not([data-room="boundaries"]),
.deep-card.boundary-mode{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  color:#eee8f3!important;
}
.deep-card[data-room]:not([data-room="boundaries"]) #deepBody,
.deep-card.boundary-mode #deepBody{
  padding:14px 25px 31px!important;
}
.deep-card[data-room]:not([data-room="boundaries"]) #deepBody{
  grid-template-columns:1fr!important;
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-question{
  grid-column:1 / -1!important;
  width:100%!important;
}
.deep-card[data-room]:not([data-room="boundaries"]) #deepBody>h3,
.deep-card.boundary-mode #deepBody>h3{
  margin:0!important;
  padding:0 0 2px!important;
  color:#f6eff9!important;
  background:none!important;
  font-size:clamp(27px,2.15vw,34px)!important;
  line-height:1.02!important;
}
.deep-card[data-room]:not([data-room="boundaries"]) #deepBody>.deep-intro,
.deep-card.boundary-mode #deepBody>.deep-intro{
  max-width:720px!important;
  margin:0 0 9px!important;
  padding:0 0 9px!important;
  color:#aaa0b6!important;
  border-bottom:1px solid rgba(205,178,222,.08)!important;
  background:none!important;
  font-size:12.75px!important;
  line-height:1.4!important;
}

.deep-card[data-room]:not([data-room="boundaries"]) .deep-question{
  margin:0 0 13px!important;
  padding:19px!important;
  border:1px solid rgba(202,174,223,.085)!important;
  border-radius:17px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.018))!important;
  box-shadow:none!important;
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-question:before{
  width:2px!important;
  top:16px!important;
  bottom:16px!important;
  opacity:.72;
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-question h4{
  color:#f1eaf5!important;
  font-size:22px!important;
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-question p{
  color:#a99eaf!important;
}

.deep-card[data-room]:not([data-room="boundaries"]) .deep-chip,
.deep-card[data-room]:not([data-room="boundaries"]) .deep-radio button{
  border-color:rgba(192,157,219,.14)!important;
  background:rgba(22,18,49,.58)!important;
  color:#ddd5e5!important;
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-chip:hover,
.deep-card[data-room]:not([data-room="boundaries"]) .deep-radio button:hover{
  border-color:rgba(210,145,245,.42)!important;
  background:rgba(47,33,76,.74)!important;
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-chip[aria-pressed=true],
.deep-card[data-room]:not([data-room="boundaries"]) .deep-radio button[aria-pressed=true]{
  border-color:#d888f2!important;
  background:linear-gradient(180deg,rgba(94,49,129,.88),rgba(54,33,92,.95))!important;
  color:#fff7ff!important;
  box-shadow:
    0 0 0 1px rgba(216,136,242,.17),
    0 0 20px rgba(167,74,215,.15)!important;
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-option-icon{
  color:#dda2eb!important;
  background:rgba(142,78,172,.12)!important;
  border-color:rgba(203,145,224,.20)!important;
}
.deep-card[data-room]:not([data-room="boundaries"]) [aria-pressed=true] .deep-option-icon{
  color:#fff4ff!important;
  background:rgba(200,107,229,.25)!important;
  box-shadow:0 0 17px rgba(205,101,235,.18)!important;
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-text,
.deep-card.boundary-mode .deep-text{
  border-color:rgba(196,157,218,.17)!important;
  background:rgba(10,8,27,.43)!important;
  color:#f0eaf4!important;
}
.deep-card[data-room]:not([data-room="boundaries"]) .deep-text:focus,
.deep-card.boundary-mode .deep-text:focus{
  border-color:#bd79d5!important;
  box-shadow:0 0 0 3px rgba(190,108,219,.13)!important;
}

/* Section 7 stays scene-based, but loses the heavy outer card. */
.boundary-prototype{padding:0!important}
.boundary-ledger{padding:0!important}
.boundary-stage{
  border-color:rgba(207,174,225,.13)!important;
  background:
    linear-gradient(130deg,color-mix(in srgb,var(--scene-accent) 8%,transparent),transparent 38%),
    rgba(12,9,27,.34)!important;
}
.boundary-ledger-item{
  border-color:rgba(203,174,218,.10)!important;
  background:rgba(255,255,255,.025)!important;
}
.boundary-option,
.boundary-tile{
  border-color:rgba(203,174,218,.13)!important;
  background:rgba(22,18,49,.58)!important;
}
.boundary-option:hover,
.boundary-tile:hover{background:rgba(47,33,76,.72)!important}

.deep-panel-actions,
.deep-actions{
  position:relative!important;
  bottom:auto!important;
  z-index:4!important;
  display:flex!important;
  align-items:center;
  gap:10px!important;
  margin:0!important;
  padding:13px 23px 17px!important;
  border-top:1px solid rgba(205,178,222,.10)!important;
  background:#17122f!important;
  box-shadow:none!important;
}
.deep-panel-actions button{
  min-height:43px;
  padding:9px 17px;
  border-radius:999px;
}
.deep-panel-actions .secondary{
  background:rgba(255,255,255,.025)!important;
  border-color:rgba(199,173,219,.16)!important;
  color:#c9bfce!important;
}
.deep-panel-actions .primary{
  margin-left:auto!important;
  background:linear-gradient(135deg,#6936aa,#9d4fc5)!important;
  border-color:#d386ec!important;
  color:#fff!important;
  box-shadow:0 8px 20px rgba(132,57,177,.24)!important;
}
.deep-panel-actions .primary:hover{
  background:linear-gradient(135deg,#7440b7,#aa5bd0)!important;
}

@media(max-width:1050px){
  .deep-panel{width:min(780px,60vw)}
  .deep-shell{padding-right:24px;padding-left:24px}
}
@media(max-width:900px){
  .deep-shell{
    justify-content:center;
    padding:82px 14px 14px;
  }
  .deep-panel{
    width:min(94vw,780px);
    height:calc(100svh - 96px);
    border-radius:22px;
  }
  .deep-scene-art{object-position:44% 50%}
  .deep-match:after{background:rgba(10,7,24,.18)}
}
@media(max-width:620px){
  .topbar{height:58px!important}
  .deep-shell{padding:66px 10px 10px}
  .deep-panel{
    width:96vw;
    height:calc(100svh - 76px);
    border-radius:18px;
  }
  .deep-panel-top{padding:19px 17px 12px}
  .deep-match .deep-head{margin-bottom:13px!important}
  .deep-match .deep-head h2{font-size:34px!important}
  .deep-match .deep-head p{font-size:13px!important}
  .deep-match .deep-progress-row{
    grid-template-columns:minmax(0,1fr) 26px!important;
    padding:3px 7px!important;
  }
  .deep-match .deep-nav button{
    width:20px!important;
    height:20px!important;
    min-width:20px!important;
    min-height:20px!important;
  }
  .deep-match .living-bookmark{width:22px!important;height:26px!important}
  .deep-panel-scroll .deep-card[data-room]:not([data-room="boundaries"]) #deepBody,
  .deep-panel-scroll .deep-card.boundary-mode #deepBody{
    padding:17px 13px 23px!important;
  }
  .deep-card[data-room]:not([data-room="boundaries"]) .deep-question{
    padding:16px!important;
    border-radius:14px!important;
  }
  .deep-card[data-room]:not([data-room="boundaries"]) .deep-question h4{
    font-size:20px!important;
  }
  .deep-panel-actions{padding:10px 13px 13px!important}
  .deep-panel-actions button{padding:8px 12px;font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  .deep-scene-art{transform:none}
}


/* === Vietnamese typography === */
body.locale-vi,
body.locale-vi *{
  font-family:Calibri,"Segoe UI",Arial,sans-serif!important;
}


/* === Section 7 visual cleanup === */
.boundary-stage{
  padding:18px 19px 16px!important;
  border-radius:17px!important;
  box-shadow:none!important;
  background:rgba(18,14,39,.46)!important;
}
.boundary-stage-head{
  gap:11px!important;
  margin-bottom:16px!important;
  align-items:center!important;
}
.boundary-scene-number{
  min-width:34px!important;
  width:34px!important;
  height:34px!important;
  font-size:11px!important;
  background:rgba(255,255,255,.018)!important;
}
.boundary-stage-head h4{
  font-size:clamp(23px,2.2vw,29px)!important;
  line-height:1.08!important;
}
.boundary-stage-head p{
  margin-top:4px!important;
  font-size:12.75px!important;
}
.boundary-intimacy-spectrum{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:9px;
}
.boundary-intimacy-choice{
  min-width:0;
  min-height:106px;
  padding:14px 9px 12px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  border:1px solid rgba(203,174,218,.13);
  border-radius:15px;
  background:rgba(22,18,49,.58);
  color:#d9cfdf;
  box-shadow:none;
  text-align:center;
}
.boundary-intimacy-choice:hover{
  transform:none;
  background:rgba(47,33,76,.72);
  border-color:color-mix(in srgb,var(--scene-accent) 45%,transparent);
}
.boundary-intimacy-icon{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1px solid rgba(203,145,224,.20);
  background:rgba(142,78,172,.12);
  color:#dda2eb;
  font-size:17px;
  line-height:1;
}
.boundary-intimacy-label{
  font-size:12.5px;
  line-height:1.25;
}
.boundary-intimacy-choice[aria-pressed=true]{
  border-color:var(--scene-accent);
  background:color-mix(in srgb,var(--scene-accent) 12%,rgba(22,18,49,.68));
}
.boundary-intimacy-choice[aria-pressed=true] .boundary-intimacy-icon{
  border-color:rgba(235,199,245,.58);
  color:#fff4ff;
  background:rgba(200,107,229,.25);
  box-shadow:0 0 14px rgba(205,101,235,.18);
}
.boundary-option{
  min-height:92px!important;
  padding:15px 10px 13px!important;
}
.boundary-option-mark{
  margin-bottom:8px!important;
}
.boundary-scene-nav{
  margin-top:17px!important;
  padding-top:13px!important;
}
@media(max-width:900px){
  .boundary-intimacy-spectrum{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:620px){
  .boundary-intimacy-spectrum{grid-template-columns:repeat(2,1fr)}
  .boundary-intimacy-choice{min-height:92px}
  .boundary-intimacy-icon{width:32px;height:32px;font-size:15px}
}



/* === Production results · dark library visual language === */
.results{
  position:relative;
  max-width:1180px!important;
  margin:0 auto!important;
  padding:44px 4% 96px!important;
  background:transparent!important;
  color:#e9e1ee;
}
.results-head{
  max-width:760px!important;
  margin:0 auto 26px!important;
  text-align:center;
}
.results-head .kicker{
  color:#c994dc!important;
  font-size:10px!important;
  letter-spacing:.19em!important;
}
.results-head h2{
  margin:7px 0 8px!important;
  color:#f5eef8!important;
  font-family:"Cormorant Garamond",Georgia,serif!important;
  font-size:clamp(34px,4vw,46px)!important;
  line-height:1.04!important;
}
.results-head p{
  color:#aaa0b6!important;
  font-size:14px!important;
  line-height:1.55!important;
}
.search-ritual{
  color:#c4b7cb!important;
}
.search-line{
  background:rgba(207,188,218,.13)!important;
}
.search-line i{
  background:linear-gradient(90deg,transparent,#c87ce3,transparent)!important;
}

.book-reveal{
  background:
    radial-gradient(circle at 88% 5%,rgba(115,66,145,.16),transparent 27%),
    linear-gradient(145deg,rgba(30,24,48,.97),rgba(20,16,37,.98))!important;
  border:1px solid rgba(205,181,219,.16)!important;
  border-radius:25px!important;
  box-shadow:0 24px 70px rgba(5,3,14,.34)!important;
  color:#e9e1ee!important;
}
.cover{
  border:1px solid rgba(220,195,226,.14)!important;
  box-shadow:
    inset 7px 0 rgba(0,0,0,.17),
    0 18px 38px rgba(0,0,0,.30)!important;
}
.match-seal{
  background:rgba(150,93,176,.16)!important;
  border:1px solid rgba(205,145,224,.24)!important;
  color:#e4b5ee!important;
}
.match-seal.partial{
  background:rgba(183,129,77,.15)!important;
  border-color:rgba(222,176,111,.24)!important;
  color:#e6c38d!important;
}
.match-seal.verify{
  background:rgba(255,255,255,.045)!important;
  border-color:rgba(215,200,224,.13)!important;
  color:#b9afc0!important;
}
.book-copy h3,
.book-copy h3 a{
  color:#f7f1f8!important;
}
.book-copy h3 a:hover{
  color:#e2b5ee!important;
}
.byline{
  color:#a99eaf!important;
}
.match-summary{
  color:#d7cdda!important;
}
.reason-list{
  gap:10px!important;
}
.reason{
  padding:11px 12px!important;
  border:1px solid rgba(205,181,219,.11)!important;
  border-top:1px solid rgba(205,181,219,.11)!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.028)!important;
  color:#c9bfce!important;
}
.caution{
  border:1px solid rgba(219,174,104,.16)!important;
  background:rgba(159,112,51,.10)!important;
  color:#d9bf95!important;
}
.book-actions{
  gap:9px!important;
  margin-top:22px!important;
}
.results .primary,
.results .secondary{
  min-height:44px!important;
  padding:10px 18px!important;
  border-radius:999px!important;
  box-shadow:none!important;
}
.results .primary{
  background:linear-gradient(135deg,#6936aa,#9d4fc5)!important;
  border-color:#cc80e5!important;
  color:#fff!important;
}
.results .primary:hover{
  background:linear-gradient(135deg,#7542b7,#aa5bd0)!important;
}
.results .secondary{
  background:rgba(255,255,255,.025)!important;
  border-color:rgba(202,182,213,.16)!important;
  color:#d1c6d6!important;
}
.results .secondary:hover{
  background:rgba(255,255,255,.055)!important;
  border-color:rgba(206,170,221,.27)!important;
}

details.ledger{
  margin-top:22px!important;
  padding-top:14px!important;
  border-top:1px solid rgba(211,194,220,.11)!important;
}
details.ledger summary{
  color:#cfc3d5!important;
}
.ledger-grid{
  color:#aaa0b1!important;
}
.ledger-grid strong{
  color:#e0d5e5!important;
}
details.ledger .chip{
  background:rgba(255,255,255,.025)!important;
  border-color:rgba(205,185,215,.14)!important;
  color:#cabfd0!important;
}
details.ledger .chip:hover{
  background:rgba(255,255,255,.055)!important;
}

.smart-refine{
  max-width:900px!important;
  margin:20px auto 0!important;
  padding:18px 20px!important;
  border:1px solid rgba(203,180,216,.15)!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 90% 0,rgba(107,62,140,.12),transparent 34%),
    rgba(26,20,43,.92)!important;
  box-shadow:0 18px 48px rgba(5,3,14,.22)!important;
}
.smart-refine strong{
  color:#eee6f1!important;
}
.smart-refine p{
  color:#a99ead!important;
}
.smart-refine .chip{
  background:rgba(255,255,255,.025)!important;
  border-color:rgba(205,183,216,.16)!important;
  color:#d0c5d5!important;
}
.smart-refine .chip:hover{
  background:rgba(255,255,255,.055)!important;
}
.smart-refine .chip[aria-pressed=true]{
  background:rgba(155,83,192,.24)!important;
  border-color:rgba(207,132,232,.38)!important;
  color:#fff4ff!important;
}

.result-nav{
  margin-top:24px!important;
}
.result-position,
.notice{
  color:#968b9f!important;
}
.result-nav .secondary:disabled{
  opacity:.42!important;
}

@media(max-width:900px){
  .results{padding-inline:18px!important}
}
@media(max-width:620px){
  .results{padding:30px 12px 72px!important}
  .book-reveal{padding:18px!important;border-radius:20px!important}
  .results-head h2{font-size:32px!important}
  .smart-refine{padding:15px!important}
}


/* === Shared SZ brand treatment === */
.bookfinder-brand{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  color:#f8f1fb;
  text-shadow:0 2px 14px rgba(0,0,0,.48);
}
.bookfinder-brand a{text-decoration:none}
.bookfinder-brand .brand-mini{
  display:flex;
  align-items:center;
  flex:0 0 auto;
}
.bookfinder-brand .mini-sigil{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:50%;
  border:1px solid rgba(221,176,111,.48);
  color:#ddb06f;
  font-family:Cinzel,Georgia,serif;
  font-size:17px;
  letter-spacing:.04em;
  line-height:1;
  background:rgba(15,10,29,.24);
  box-shadow:0 0 0 1px rgba(239,198,107,.10) inset,0 5px 18px rgba(0,0,0,.16);
}
.bookfinder-brand .brand-name{
  color:#f8f1fb;
  font-family:Cinzel,Georgia,serif;
  font-size:16px;
  letter-spacing:.08em;
  white-space:nowrap;
}
.bookfinder-brand .brand-context{
  color:#ddb06f;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:18px;
  letter-spacing:.02em;
  white-space:nowrap;
}
.bookfinder-brand .brand-mini:hover .mini-sigil,
.bookfinder-brand .brand-mini:focus-visible .mini-sigil{
  border-color:#ddb06f;
  box-shadow:0 0 0 1px rgba(239,198,107,.16) inset,0 0 18px rgba(221,176,111,.16);
}
.bookfinder-brand .brand-context:hover,
.bookfinder-brand .brand-context:focus-visible{
  color:#f2c987;
}
@media(max-width:760px){
  .bookfinder-brand{gap:7px}
  .bookfinder-brand .mini-sigil{width:36px;height:36px;font-size:14px}
  .bookfinder-brand .brand-name{font-size:13px}
  .bookfinder-brand .brand-context{font-size:14px}
}
@media(max-width:560px){
  .bookfinder-brand .brand-name{display:none}
  .bookfinder-brand .brand-context{
    max-width:calc(100vw - 150px);
    overflow:hidden;
    text-overflow:ellipsis;
  }
}


/* Multi-result presentation: list up to five rank-aware matches per search. */
.book-results-list{display:grid;gap:22px}
.book-results-list .book-reveal{width:100%;margin:0}
.search-ritual[hidden],.search-ritual.is-idle{display:none!important}

/* Book Finder beta disclosure: persistent, readable, never covers the artwork. */
.bookfinder-beta-label{
  display:inline-flex;align-items:center;gap:9px;white-space:nowrap;flex:0 0 auto;
  font:600 12px Cinzel,Georgia,serif;letter-spacing:.04em;
  color:#eee2f4;text-shadow:0 2px 10px rgba(6,3,17,.55)
}
.bookfinder-beta-label .beta-tag{
  display:inline-block;padding:4px 8px;border:1px solid rgba(233,194,124,.75);
  border-radius:6px;background:rgba(47,26,59,.86);
  font:700 10px/1.1 Inter,"Segoe UI",Arial,sans-serif;letter-spacing:.15em;
  color:#f3d89b;box-shadow:0 2px 10px rgba(0,0,0,.2)
}
.deep-match .deep-head .bookfinder-beta-note{
  margin:12px 0 0;padding-left:11px;
  border-left:2px solid rgba(224,184,117,.75);
  color:#f0dfbd;font-size:13px;line-height:1.5;
  max-width:610px;text-shadow:0 2px 12px rgba(0,0,0,.65)
}
@media(max-width:700px){
  .bookfinder-brand .brand-context{display:none}
  .bookfinder-beta-label{gap:6px;font-size:11px}
  .bookfinder-beta-label .beta-tag{padding:4px 6px;font-size:9px}
}
@media(max-width:400px){
  .bookfinder-beta-label{font-size:10px}
  .bookfinder-beta-label .beta-tag{letter-spacing:.08em}
}
