:root{--bg:#050407;--bg2:#0b080d;--panel:rgba(18,12,18,.78);--panel2:rgba(30,15,23,.86);--red:#b51f3b;--red2:#e04a61;--wine:#5b0e1c;--silver:#d9d4d5;--muted:#a39b9f;--line:rgba(224,74,97,.22);--gold:#c9a66b;--shadow:0 30px 90px rgba(0,0,0,.58);--serif:'Cinzel',serif;--sans:'Inter',sans-serif;--black:#000;}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--silver);font-family:var(--sans);font-weight:300;min-height:100vh;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 15%,rgba(115,15,36,.18),transparent 34%),linear-gradient(180deg,transparent 0 75%,rgba(0,0,0,.42));z-index:-2}body:after{content:"";position:fixed;inset:0;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.055) 1px,transparent 1px);background-size:4px 4px;opacity:.16;z-index:10;mix-blend-mode:soft-light}.hidden{display:none!important}.screen{min-height:100vh;position:relative;display:grid;place-items:center;overflow:hidden}.screen.active{display:grid}
#intro{background:radial-gradient(circle at 50% 48%,rgba(116,17,38,.22),transparent 30%),linear-gradient(180deg,#030205,#09050a 55%,#010101)}.intro-vignette{position:absolute;inset:-10%;background:radial-gradient(circle,transparent 38%,rgba(0,0,0,.78) 82%);z-index:2}.intro-copy{position:relative;z-index:5;text-align:center;padding:30px}.eyebrow{font:500 .69rem/1.5 var(--serif);letter-spacing:.27em;color:#b89ea5;text-transform:uppercase}.intro-copy h1{font:600 clamp(4rem,12vw,9.5rem)/.9 var(--serif);letter-spacing:.05em;margin:20px 0 10px;color:#eee;text-shadow:0 0 35px rgba(255,255,255,.1)}.intro-copy p{font:300 clamp(1.2rem,2vw,1.8rem) var(--serif);letter-spacing:.18em;color:#c99ba5}.intro-rule{height:1px;width:120px;background:linear-gradient(90deg,transparent,var(--red2),transparent);margin:28px auto}.intro-footer{position:absolute;bottom:24px;z-index:5;letter-spacing:.28em;font:600 .62rem var(--serif);color:#776d71}.intro-footer span{color:var(--red2);padding:0 12px}.heartbeat-ring{position:absolute;width:min(65vw,560px);aspect-ratio:1;border:1px solid rgba(206,49,72,.12);border-radius:50%;box-shadow:0 0 100px rgba(150,16,40,.12),inset 0 0 90px rgba(150,16,40,.07);animation:pulse 2s infinite}.heartbeat-ring:after{content:"";position:absolute;inset:12%;border:1px solid rgba(206,49,72,.08);border-radius:50%}.intro-castle{position:absolute;bottom:-20px;width:min(1200px,120vw);height:58vh;opacity:.48;filter:blur(.2px);z-index:1}.tower{position:absolute;bottom:0;width:16%;height:65%;background:linear-gradient(90deg,#050507,#161018,#050507);border:1px solid rgba(255,255,255,.05)}.t1{left:13%;height:72%}.t2{left:42%;height:88%;width:20%}.t3{right:13%;height:72%}.spire{position:absolute;bottom:62%;width:0;height:0;border-left:65px solid transparent;border-right:65px solid transparent;border-bottom:130px solid #08070a}.s1{left:11%}.s2{right:11%}.intro-castle:after{content:"";position:absolute;left:31%;right:31%;bottom:0;height:70%;background:linear-gradient(90deg,#08070a,#21111b,#08070a);border-top:1px solid rgba(255,255,255,.06)}
.identity-bg{position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(128,15,42,.22),transparent 40%),repeating-linear-gradient(90deg,rgba(255,255,255,.015) 0 1px,transparent 1px 80px)}.identity-panel{width:min(560px,92vw);text-align:center;position:relative}.panel{background:linear-gradient(145deg,rgba(30,18,27,.9),rgba(8,7,10,.92));border:1px solid var(--line);box-shadow:var(--shadow);padding:44px;border-radius:3px}.identity-panel h2{font:600 clamp(2rem,5vw,3.4rem) var(--serif);margin:12px 0}.identity-panel p{color:#aaa0a5;line-height:1.8}.sigil{font:2.2rem var(--serif);color:var(--red2);text-shadow:0 0 30px rgba(224,74,97,.4)}.sigil.large{font-size:4rem}.field{width:100%;padding:15px 17px;background:rgba(0,0,0,.4);border:1px solid rgba(220,100,120,.22);color:#f1e9eb;outline:none;border-radius:2px;font:400 .95rem var(--sans);margin:10px 0}.field:focus{border-color:rgba(224,74,97,.7);box-shadow:0 0 0 3px rgba(224,74,97,.08)}.full{width:100%;margin-top:10px}.btn{border:1px solid var(--line);background:rgba(16,9,14,.78);color:#eee;padding:13px 20px;border-radius:2px;font:600 .68rem var(--serif);letter-spacing:.16em;cursor:pointer;transition:.25s;min-height:44px}.btn:hover{transform:translateY(-2px);border-color:var(--red2);box-shadow:0 10px 30px rgba(181,31,59,.18)}.btn.primary{background:linear-gradient(135deg,#7c1428,#b51f3b);border-color:#d13a54;box-shadow:0 8px 30px rgba(181,31,59,.18)}.btn.ghost{background:rgba(255,255,255,.025)}.btn.xl{padding:16px 28px;font-size:.72rem}.actions,.hero-actions,.sound-controls,.answer-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.tiny{font-size:.7rem!important;color:#746b70!important;line-height:1.6!important}
#castle{min-height:100vh;background:radial-gradient(circle at 50% -10%,rgba(119,14,38,.2),transparent 45%),linear-gradient(180deg,#09070a,#030204 70%)}.topbar{position:sticky;top:0;z-index:50;height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(14px,3vw,42px);background:rgba(4,3,6,.72);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.05)}.brand{border:0;background:none;color:#eee;display:flex;align-items:center;gap:10px;font:600 .78rem var(--serif);letter-spacing:.15em;cursor:pointer}.brand i{color:var(--red2);font-style:normal}.brand-mark{font-size:1.4rem;color:var(--red2)}.weather-readout{font:500 .6rem var(--serif);letter-spacing:.15em;color:#9b8d93;display:flex;gap:9px;align-items:center}.weather-readout span:first-child{color:var(--red2);font-size:1rem}.top-actions{display:flex;gap:7px}.icon-btn{width:40px;height:40px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025);color:#d8cdd0;cursor:pointer;border-radius:2px}.icon-btn:hover{border-color:var(--line);color:#fff}.story-progress{position:fixed;top:71px;left:0;right:0;height:2px;z-index:55;background:rgba(255,255,255,.025)}.story-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,#651026,#e04a61);box-shadow:0 0 12px rgba(224,74,97,.7);transition:width .6s}.site-footer{text-align:center;padding:42px 20px 60px;color:#5e5559;font:500 .58rem var(--serif);letter-spacing:.18em;display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
#ambient{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}.moon{position:absolute;width:22vw;max-width:260px;aspect-ratio:1;border-radius:50%;right:8%;top:10%;background:radial-gradient(circle at 38% 35%,#fff 0 1%,#c9c1c4 10%,#71686d 43%,#2c252a 70%,transparent 71%);opacity:.12;filter:blur(.2px);box-shadow:0 0 90px rgba(210,200,205,.08)}.cloud{position:absolute;width:60vw;height:20vh;background:radial-gradient(ellipse,rgba(80,70,78,.11),transparent 70%);filter:blur(20px);animation:cloud 55s linear infinite}.cloud-a{top:15%;left:-50%}.cloud-b{top:32%;left:-80%;animation-duration:72s;animation-delay:-20s}.fog{position:absolute;inset:35% -10% 0;background:linear-gradient(180deg,transparent,rgba(120,105,113,.04),rgba(120,105,113,.09));filter:blur(25px);animation:fog 16s ease-in-out infinite alternate}.rain{position:absolute;inset:0;opacity:0;background-image:linear-gradient(110deg,transparent 0 47%,rgba(190,200,210,.14) 48%,transparent 49%);background-size:13px 36px;animation:rain 1s linear infinite}.stars{position:absolute;inset:0;background-image:radial-gradient(#fff .6px,transparent .8px);background-size:87px 83px;opacity:.08}.petals{position:absolute;inset:0}.petals:before,.petals:after{content:"✦  ·  ✧  ·  ✦  ·  ·  ✧";position:absolute;top:-10%;left:5%;font-size:14px;letter-spacing:60px;color:rgba(220,62,83,.16);animation:fall 18s linear infinite}.petals:after{left:40%;animation-delay:-8s;animation-duration:24s}.clear .rain{}.weather-rain .rain{opacity:.7}.weather-storm .rain{opacity:.9}.weather-dawn .moon{opacity:.05}.weather-dawn #ambient:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(150,100,110,.03),rgba(255,160,130,.07));}.quality-performance .petals,.quality-performance .cloud{display:none}
body[data-weather="rainy"] .rain,body[data-weather="storm"] .rain{opacity:.7}body[data-weather="storm"] .cloud{opacity:1;filter:blur(12px)}body[data-weather="dawn"] .moon{opacity:.04}body[data-quality="performance"] .petals,body[data-quality="performance"] .cloud{display:none}
main#view{position:relative;z-index:1}.section{width:min(1240px,92vw);margin:0 auto;padding:clamp(48px,7vw,90px) 0}.hero{min-height:calc(100vh - 74px);position:relative;display:grid;place-items:center;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.05)}.home-hero{background:radial-gradient(circle at 50% 54%,rgba(103,13,35,.2),transparent 30%)}.hero-content{position:relative;z-index:3;text-align:center;width:min(900px,92vw);padding:100px 0 120px}.hero-content h1,.chapter-heading h1,.queen-banner h1,.diary-page h1,.shield-hero h1,.library-heading h1,.courtroom h1,.memory-modal h2,.music-hero h1,.garden-hero h1,.map-page h1,.achievements-page h1,.secret-header h1,.final-scene h1{font:600 clamp(2.6rem,6vw,6.5rem)/1.05 var(--serif);letter-spacing:.035em;color:#f2ecee;margin:15px 0 20px;text-shadow:0 15px 50px rgba(0,0,0,.5)}h1 span{display:block;color:#c62d49}h2{font:600 clamp(1.8rem,3.4vw,3.1rem) var(--serif);line-height:1.15;color:#eee;margin:10px 0 18px}h3{font:600 1.1rem/1.35 var(--serif);color:#eee;margin:7px 0 10px}p{line-height:1.85;color:#a9a0a5}.lead{font-size:clamp(1rem,1.6vw,1.2rem);max-width:760px;margin:0 auto 28px;color:#b8afb3}.hero-sky{position:absolute;inset:0;background:radial-gradient(circle at 50% 30%,rgba(120,16,41,.22),transparent 28%),linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.72))}.hero-castle{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:min(1400px,130vw);height:68%;opacity:.48}.castle-mountain{position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(165deg,transparent 0 20%,#07060a 21% 100%);clip-path:polygon(0 70%,13% 35%,26% 60%,39% 22%,52% 55%,64% 16%,76% 52%,88% 28%,100% 62%,100% 100%,0 100%)}.castle-body{position:absolute;left:15%;right:15%;bottom:0;height:56%;background:linear-gradient(90deg,#060509,#1b1118 45%,#07060a);clip-path:polygon(0 30%,14% 30%,14% 0,24% 0,24% 22%,39% 22%,39% 0,51% 0,51% 22%,67% 22%,67% 0,79% 0,79% 30%,100% 30%,100% 100%,0 100%);border-top:1px solid rgba(255,255,255,.06)}.hero-castle:after{content:"";position:absolute;left:50%;bottom:0;width:8%;height:28%;transform:translateX(-50%);background:linear-gradient(#09070b,#020203);border:1px solid rgba(255,255,255,.05);border-bottom:0}
.kingdom-plaque{display:inline-flex;flex-direction:column;gap:7px;margin-top:35px;padding:15px 25px;border:1px solid rgba(201,166,107,.24);background:rgba(0,0,0,.32);font:500 .6rem var(--serif);letter-spacing:.22em;color:#8e7d84}.kingdom-plaque b{font-size:.78rem;color:#c9a66b}.kingdom-panel{margin:35px auto 0;padding:22px;max-width:760px;border:1px solid var(--line);background:rgba(5,4,7,.7);text-align:left}.kingdom-panel h3{font-size:1.2rem}.kingdom-panel small{display:block;color:#777075;line-height:1.7;margin-top:9px}.field-row{display:flex;gap:10px}.field-row .field{margin:0}.section-head,.library-heading{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:30px}.section-head h2{margin-bottom:0}.mini-stat{display:flex;flex-direction:column;text-align:right;color:#746c71;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}.mini-stat b{font:600 2rem var(--serif);color:#ddd}.door-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.door-card{min-height:120px;text-align:left;padding:20px;background:linear-gradient(135deg,rgba(27,15,23,.85),rgba(7,6,9,.9));border:1px solid rgba(255,255,255,.06);color:#eee;display:grid;grid-template-columns:54px 1fr auto;gap:15px;align-items:center;cursor:pointer;transition:.3s}.door-card:hover{border-color:var(--line);transform:translateY(-3px);box-shadow:0 18px 40px rgba(0,0,0,.35)}.door-icon{font-size:1.8rem;filter:drop-shadow(0 0 10px rgba(200,40,65,.22))}.door-card b{font:600 1rem var(--serif);display:block}.door-card small{display:block;color:#8f868b;line-height:1.55;margin-top:6px}.door-card em{font:500 .58rem var(--serif);letter-spacing:.14em;color:#8e777e;font-style:normal}.split-section{display:grid;grid-template-columns:1fr 1fr;gap:18px}.quote-card{min-height:320px;padding:clamp(28px,5vw,55px);display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,rgba(60,13,28,.46),rgba(11,7,12,.86));border:1px solid var(--line);box-shadow:var(--shadow)}.quote-card h2{font-size:clamp(1.5rem,3vw,2.6rem)}.garden-card{background:linear-gradient(145deg,rgba(15,40,28,.18),rgba(9,6,10,.88))}.text-link{border:0;background:none;color:#c98995;text-align:left;padding:0;font:600 .68rem var(--serif);letter-spacing:.14em;cursor:pointer}.story-page{}.chapter-heading{text-align:center;max-width:850px;margin:0 auto 65px}.chapter-heading h1{margin-bottom:10px}.timeline{position:relative;max-width:950px;margin:auto}.timeline:before{content:"";position:absolute;left:28px;top:0;bottom:0;width:1px;background:linear-gradient(var(--red2),rgba(224,74,97,.08))}.story-chapter{display:grid;grid-template-columns:70px 1fr;gap:28px;padding:0 0 52px}.chapter-no{width:57px;height:57px;border:1px solid var(--line);display:grid;place-items:center;background:#08060a;color:var(--red2);font:600 .72rem var(--serif);z-index:1}.story-chapter p{max-width:760px;margin-top:8px}.vow-block{margin:30px auto;padding:45px;max-width:980px;text-align:center;border:1px solid var(--line);background:radial-gradient(circle at 50% 0,rgba(160,18,47,.18),transparent 45%),rgba(11,7,12,.82);box-shadow:var(--shadow)}.vow-block h2{font-size:clamp(1.4rem,2.6vw,2.4rem)}
.queen-banner{text-align:center;padding:70px 20px;background:radial-gradient(circle at 50% 45%,rgba(168,24,53,.18),transparent 38%);border:1px solid rgba(255,255,255,.04)}.queen-symbols{display:flex;justify-content:center;gap:22px;font-size:1.7rem;margin-bottom:20px}.queen-symbols span{filter:drop-shadow(0 0 10px rgba(190,40,60,.3))}.book-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:18px}.book-card{padding:30px;background:linear-gradient(145deg,rgba(28,16,23,.86),rgba(8,6,10,.88));border:1px solid rgba(255,255,255,.06);min-height:230px}.crown-stage{text-align:center;margin:40px auto 0;padding:30px;border:1px solid rgba(201,166,107,.22);background:rgba(25,17,9,.16)}.crown-large{font-size:2.8rem;letter-spacing:.18em}.crown-svg b{color:#5e5358;opacity:.25;text-shadow:none}.crown-svg b.lit{color:#d14b5d;opacity:1;text-shadow:0 0 18px rgba(209,75,93,.4)}
.diary-grid,.shield-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:35px}.diary-grid article,.shield-grid article{padding:30px;border:1px solid rgba(255,255,255,.06);background:rgba(13,9,14,.72);min-height:250px}.diary-grid article>span,.shield-grid article .eyebrow{font:500 .62rem var(--serif);letter-spacing:.16em;color:#9c7b84}.diary-grid h2,.shield-grid h2{font-size:1.55rem}.shield-hero{text-align:center;padding:60px 20px}.shield-icon{font-size:4rem;filter:drop-shadow(0 0 24px rgba(224,74,97,.2))}.shield-grid{grid-template-columns:repeat(3,1fr)}.engraved{max-width:950px;margin:35px auto 0;padding:25px;text-align:center;border:1px solid rgba(201,166,107,.22);font:600 .85rem var(--serif);letter-spacing:.22em;color:#c9a66b;background:rgba(35,20,8,.12)}
.library-heading h1{font-size:clamp(2.2rem,5vw,5rem)}.library-count{text-align:right}.library-count b{font:600 3rem var(--serif);display:block;color:#e0c8cd}.library-count span{font:.62rem var(--serif);letter-spacing:.15em;color:#756a70}.library-shelves{display:grid;grid-template-columns:1fr 1fr;gap:11px}.writing-card{display:grid;grid-template-columns:58px 1fr;gap:18px;padding:17px;background:linear-gradient(90deg,rgba(34,13,22,.8),rgba(10,7,11,.9));border:1px solid rgba(255,255,255,.05);cursor:pointer}.writing-card:hover{border-color:var(--line)}.writing-card p{font-size:.82rem;line-height:1.6}.book-spine{border-right:2px solid #4e0d1c;display:grid;place-items:center;background:linear-gradient(90deg,#1c0a12,#4b101f,#190710);font:600 .75rem var(--serif);color:#d2a3aa}.writing-full{max-height:75vh;overflow:auto}.poem-text{font:400 1rem/2 var(--serif);color:#d7cdd0;white-space:normal}
.courtroom{max-width:950px;margin:auto;text-align:center;padding:65px 20px;background:radial-gradient(circle at 50% 0,rgba(117,15,40,.25),transparent 45%),linear-gradient(145deg,rgba(29,15,23,.86),rgba(7,5,9,.92));border:1px solid var(--line);box-shadow:var(--shadow)}.court-seal{font-size:4rem;color:#b9986b}.trial-question{margin:45px auto;max-width:760px}.trial-question>span{font:500 .62rem var(--serif);letter-spacing:.25em;color:#9e7e86}.trial-question h2{font-size:clamp(1.5rem,3vw,2.7rem);line-height:1.35}.textarea{min-height:170px;resize:vertical}.verdict{max-width:950px;margin:20px auto;padding:35px;text-align:center;border:1px solid rgba(201,166,107,.24);background:rgba(27,17,9,.12)}
.memory-chapters{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 30px}.memory-chapters span,.map-legend span{padding:9px 11px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.02);font:500 .57rem var(--serif);letter-spacing:.12em;color:#8d8388}.memory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.memory-card,.art-card{border:1px solid rgba(255,255,255,.06);background:#080609;color:#eee;padding:0;text-align:left;cursor:pointer;overflow:hidden}.memory-card:hover,.art-card:hover{border-color:var(--line);transform:translateY(-3px)}.memory-card img,.art-card img{width:100%;height:220px;object-fit:cover;display:block;filter:saturate(.8) contrast(1.05)}.memory-card span,.memory-card b,.art-card span{display:block;padding:9px 13px 0}.memory-card span,.art-card span{font:500 .55rem var(--serif);letter-spacing:.15em;color:#8c7880}.memory-card b{padding-bottom:14px;font:600 .8rem var(--serif)}.legend-section{margin-top:70px}.art-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.art-card img{height:270px}.memory-modal img{width:100%;max-height:68vh;object-fit:contain;background:#020203;margin:15px 0}.memory-modal p{font-size:.8rem}
.music-hero,.garden-hero{text-align:center;padding:65px 20px;border:1px solid rgba(255,255,255,.05);background:radial-gradient(circle at 50% 30%,rgba(115,18,42,.2),transparent 42%)}.gramophone{width:90px;height:90px;border:1px solid rgba(201,166,107,.45);border-radius:50%;display:grid;place-items:center;margin:0 auto 25px;color:#c9a66b;font-size:2.2rem;box-shadow:0 0 40px rgba(201,166,107,.08)}.song-list{max-width:950px;margin:25px auto}.song-card{display:grid;grid-template-columns:60px 1fr 30px;align-items:center;gap:15px;padding:20px;border-bottom:1px solid rgba(255,255,255,.05);background:rgba(10,7,11,.45)}.song-card:hover{background:rgba(45,13,24,.42)}.track{font:600 1.1rem var(--serif);color:#8b6f77}.song-card h3{margin:2px 0}.song-card p{font-size:.78rem;margin:0}.song-note{color:var(--red2)}.notice{padding:15px 18px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.018);color:#777075;font-size:.72rem;line-height:1.7}
.garden-hero{min-height:440px;display:grid;place-items:center;align-content:center;position:relative;overflow:hidden}.moon-garden{position:absolute;width:220px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 35%,#e8e2e3,#8d8488 55%,#2c2529);right:10%;top:14%;opacity:.16;box-shadow:0 0 90px rgba(240,230,235,.08)}.garden-path{min-height:520px;margin:15px 0;position:relative;background:radial-gradient(ellipse at 50% 55%,rgba(98,13,34,.3),transparent 35%),linear-gradient(180deg,#080d0a,#040505);border:1px solid rgba(255,255,255,.05);overflow:hidden}.garden-path:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;transform:translateX(-50%);background:linear-gradient(180deg,transparent,#4b1a2b 30%,#5d2635 65%,transparent);box-shadow:0 0 40px rgba(120,30,55,.18)}.garden-object{position:absolute;border:1px solid rgba(255,255,255,.07);background:rgba(5,6,6,.68);color:#ddd;padding:15px 17px;cursor:pointer;display:flex;flex-direction:column;gap:7px;align-items:center;min-width:130px;transition:.3s}.garden-object:hover{border-color:var(--line);transform:scale(1.04)}.garden-object span{font:500 .58rem var(--serif);letter-spacing:.12em;color:#9a858c}.bench{left:11%;top:24%}.rose{left:calc(50% - 65px);top:38%;font-size:2rem}.rose.found{box-shadow:0 0 45px rgba(185,31,59,.25);border-color:rgba(224,74,97,.45)}.gazebo{right:10%;top:24%}.gate{left:calc(50% - 65px);bottom:8%}.garden-secrets{display:grid;grid-template-columns:1fr 1fr;gap:15px}.garden-secrets article{padding:30px;border:1px solid rgba(255,255,255,.06);background:rgba(11,8,12,.76)}
.map-frame{position:relative;min-height:680px;margin-top:35px;background:radial-gradient(circle at 50% 50%,rgba(129,25,47,.14),transparent 38%),linear-gradient(135deg,#16100e,#08080a);border:1px solid rgba(201,166,107,.25);box-shadow:inset 0 0 90px rgba(0,0,0,.55),0 20px 70px rgba(0,0,0,.3);overflow:hidden}.map-frame:before{content:"THE KINGDOM";position:absolute;inset:0;display:grid;place-items:center;font:600 clamp(2rem,6vw,6rem) var(--serif);color:rgba(201,166,107,.025);letter-spacing:.1em}.map-lines{position:absolute;inset:8%;background-image:linear-gradient(27deg,transparent 49.5%,rgba(201,166,107,.13) 50%,transparent 50.5%),linear-gradient(147deg,transparent 49.5%,rgba(201,166,107,.1) 50%,transparent 50.5%);opacity:.55}.map-node{position:absolute;transform:translate(-50%,-50%);padding:10px 13px;min-width:90px;background:rgba(8,7,8,.9);border:1px solid rgba(201,166,107,.17);color:#b8aeb1;cursor:pointer;z-index:2}.map-node span{display:block;font-size:1.05rem}.map-node b{display:block;font:500 .52rem var(--serif);letter-spacing:.08em;white-space:nowrap;margin-top:4px}.map-node.open{border-color:rgba(201,166,107,.35);color:#e3d8da}.map-node.locked{opacity:.32;cursor:not-allowed}.map-legend{display:flex;gap:10px;justify-content:center;margin:12px}
.achievement-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:25px}.achievement{display:grid;grid-template-columns:45px 1fr;gap:15px;padding:20px;background:rgba(11,8,12,.7);border:1px solid rgba(255,255,255,.05)}.achievement>span{font:600 1.3rem var(--serif);color:#655d60}.achievement.earned{border-color:rgba(201,166,107,.3);background:rgba(39,26,12,.2)}.achievement.earned>span{color:#c9a66b}.achievement b{font:600 .95rem var(--serif)}.achievement p{font-size:.74rem;margin:4px 0 0}.hidden-ach:not(.earned){opacity:.52}
.secret-header{text-align:center;padding:70px 20px}.challenge{max-width:820px;margin:auto;text-align:center;padding:50px 25px;border:1px solid var(--line);background:radial-gradient(circle at 50% 0,rgba(128,16,43,.22),transparent 42%),rgba(9,6,11,.9);box-shadow:var(--shadow)}.challenge-icon{font-size:3rem}.challenge h2{font-size:2rem}.puzzle-area{min-height:190px;display:grid;place-items:center;margin:25px 0}.puzzle-seal,.rose-puzzle,.key-puzzle,.book-puzzle{border:1px solid rgba(224,74,97,.3);background:rgba(42,7,18,.42);color:#eee;cursor:pointer}.puzzle-seal{width:120px;height:120px;border-radius:50%;font-size:3rem}.door-puzzle,.mirror-puzzle,.throne-puzzle{display:flex;gap:12px;justify-content:center}.door-puzzle button,.mirror-puzzle button,.throne-puzzle button{width:100px;height:150px;background:linear-gradient(#1c0d16,#050406);border:1px solid rgba(255,255,255,.08);color:#bbb;font:600 .7rem var(--serif);cursor:pointer}.maze-grid{display:grid;grid-template-columns:repeat(3,75px);gap:6px}.maze-cell{height:75px;background:#0d0a0e;border:1px solid rgba(255,255,255,.07);color:#a9999e;cursor:pointer}.book-puzzle{padding:30px 50px;display:flex;flex-direction:column;gap:10px}.book-puzzle span{font:600 1.4rem var(--serif);color:#d14b5d}.mirror-puzzle button{height:80px}.star-puzzle{display:grid;grid-template-columns:repeat(4,55px);gap:15px}.star{border:0;background:none;color:#51464b;font-size:2rem;cursor:pointer}.star.lit{color:#e2c8cd;text-shadow:0 0 20px rgba(255,255,255,.7)}.rose-puzzle,.key-puzzle{padding:28px 45px;font-size:3rem;display:flex;flex-direction:column;gap:8px;align-items:center}.rose-puzzle span,.key-puzzle span{font:500 .65rem var(--serif);letter-spacing:.18em}.challenge-dots{display:flex;justify-content:center;gap:7px}.challenge-dots span{width:8px;height:8px;border-radius:50%;background:#32292d}.challenge-dots span.done{background:#a5233b}.challenge-dots span.current{box-shadow:0 0 0 3px rgba(181,31,59,.15);background:#e04a61}
.forbidden-complete{text-align:center;padding:90px 20px;border:1px solid rgba(201,166,107,.25);background:radial-gradient(circle,rgba(116,20,42,.25),transparent 42%)}.key-big{font-size:5rem;filter:drop-shadow(0 0 30px rgba(201,166,107,.25))}.final-page{max-width:1400px}.final-scene{min-height:calc(100vh - 120px);display:grid;place-items:center;align-content:center;text-align:center;position:relative;overflow:hidden;padding:90px 25px;border:1px solid rgba(255,255,255,.05);background:radial-gradient(circle at 50% 30%,rgba(139,21,47,.24),transparent 34%),linear-gradient(180deg,#12080e,#030204)}.final-scene:before{content:"";position:absolute;inset:auto 0 0;height:55%;background:linear-gradient(transparent,#020203 72%),radial-gradient(ellipse at 50% 100%,rgba(129,25,47,.25),transparent 52%)}.final-moon{position:absolute;top:9%;right:11%;width:190px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 35%,#eee,#81777d 60%,#201b20);opacity:.14;box-shadow:0 0 100px rgba(255,255,255,.1)}.final-roses{position:absolute;inset:auto 0 0;height:35%;background:radial-gradient(ellipse at 15% 100%,rgba(150,18,45,.38),transparent 22%),radial-gradient(ellipse at 82% 100%,rgba(150,18,45,.32),transparent 25%)}.final-figures{display:flex;gap:90px;justify-content:center;align-items:end;position:relative;z-index:1;margin:0 auto 35px}.villain-silhouette,.queen-silhouette{width:100px;height:230px;border-radius:50% 50% 8px 8px;background:linear-gradient(180deg,#020204,#160a11);border:1px solid rgba(255,255,255,.04);display:grid;place-items:end center;padding-bottom:30px;font:600 2rem var(--serif);color:#5d303a}.queen-silhouette{height:200px;border-radius:45% 45% 20% 20%;color:#6e5960}.final-scene h1,.final-scene p,.final-scene button,.final-choice-grid,.final-letter,.sealed-result{position:relative;z-index:2}.final-choice-grid{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:22px 0}.final-letter{max-width:760px;margin:10px auto;display:block}.sealed-result{margin-top:28px;padding:25px;border:1px solid rgba(201,166,107,.24);background:rgba(31,20,10,.16)}.letter{background:#efe5d8;color:#20171a;padding:42px;min-height:400px;font-family:var(--serif);line-height:1.8}.letter h2{color:#25171b}.signature{margin-top:50px;color:#5d4046}
.locked-page{text-align:center;min-height:75vh;display:grid;place-items:center;align-content:center}.lock-mark{font-size:4rem;margin-bottom:20px}.modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px}.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.82);backdrop-filter:blur(9px)}.modal-card{position:relative;z-index:2;width:min(850px,94vw);max-height:88vh;overflow:auto;background:linear-gradient(145deg,#1a1017,#07060a);border:1px solid var(--line);box-shadow:var(--shadow);padding:35px}.modal-x{position:absolute;right:13px;top:10px;background:none;border:0;color:#aaa;font-size:1.8rem;cursor:pointer}.side-menu{position:fixed;z-index:90;right:0;top:0;bottom:0;width:min(390px,92vw);background:rgba(8,6,10,.97);border-left:1px solid var(--line);box-shadow:-30px 0 80px rgba(0,0,0,.6);transform:translateX(105%);transition:.35s;padding:25px;overflow:auto}.side-menu.open{transform:translateX(0)}.menu-head{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid rgba(255,255,255,.06);padding-bottom:20px;margin-bottom:10px}.menu-head strong{display:block;font:600 1.3rem var(--serif);margin-top:5px}.side-menu nav{display:grid;gap:4px}.side-menu nav button{display:flex;align-items:center;gap:12px;padding:13px 12px;background:transparent;border:1px solid transparent;color:#a69ca1;text-align:left;cursor:pointer;font:500 .7rem var(--serif);letter-spacing:.06em}.side-menu nav button:hover{background:rgba(150,20,48,.1);border-color:rgba(224,74,97,.12);color:#eee}.side-menu nav button span{width:24px}.menu-foot{border-top:1px solid rgba(255,255,255,.06);margin-top:18px;padding-top:18px;display:grid;gap:5px}.link-btn{border:0;background:none;color:#8f858a;text-align:left;padding:10px;cursor:pointer;font:500 .65rem var(--serif);letter-spacing:.1em}.link-btn:hover{color:#eee}.link-btn.danger:hover{color:#e04a61}#toast{position:fixed;left:50%;bottom:30px;transform:translate(-50%,20px);z-index:120;padding:12px 18px;border:1px solid var(--line);background:rgba(8,5,9,.94);color:#e8dfe2;font:500 .66rem var(--serif);letter-spacing:.08em;opacity:0;pointer-events:none;transition:.25s;box-shadow:var(--shadow);max-width:90vw;text-align:center}#toast.show{opacity:1;transform:translate(-50%,0)}.divider{height:1px;background:linear-gradient(90deg,transparent,rgba(224,74,97,.25),transparent);margin:35px 0}.center{text-align:center}
@keyframes pulse{0%,100%{transform:scale(1);opacity:.5}50%{transform:scale(1.04);opacity:1}}@keyframes cloud{from{transform:translateX(0)}to{transform:translateX(150%)}}@keyframes fog{from{transform:translateX(-3%)}to{transform:translateX(3%)}}@keyframes rain{to{background-position:0 36px}}@keyframes fall{to{transform:translateY(120vh) rotate(180deg)}}
@media(max-width:900px){.memory-grid{grid-template-columns:repeat(2,1fr)}.art-grid{grid-template-columns:1fr 1fr}.library-shelves,.door-grid,.book-grid,.diary-grid,.shield-grid,.split-section,.garden-secrets,.achievement-grid{grid-template-columns:1fr}.weather-readout{display:none}.map-frame{min-height:600px}.hero-content{padding-top:70px}.final-figures{gap:40px}.final-scene{min-height:80vh}}
@media(max-width:600px){.topbar{height:62px}.story-progress{top:61px}.brand{font-size:.62rem}.top-actions .icon-btn{width:36px;height:36px}.top-actions{gap:4px}.section{width:min(92vw,560px);padding:48px 0}.hero{min-height:calc(100vh - 62px)}.hero-content h1{font-size:2.7rem}.intro-copy h1{font-size:4.1rem}.panel{padding:28px 20px}.field-row{flex-direction:column}.field-row .btn{width:100%}.door-card{grid-template-columns:42px 1fr;min-height:105px}.door-card em{grid-column:2}.memory-grid{grid-template-columns:1fr 1fr;gap:8px}.memory-card img{height:160px}.art-grid{grid-template-columns:1fr}.art-card img{height:220px}.map-frame{min-height:540px}.map-node{min-width:66px;padding:7px}.map-node b{font-size:.42rem}.map-node span{font-size:.85rem}.garden-path{min-height:620px}.bench{left:5%;top:18%}.gazebo{right:5%;top:18%}.rose{top:38%}.gate{bottom:6%}.final-figures{gap:18px}.villain-silhouette,.queen-silhouette{width:72px;height:180px}.queen-silhouette{height:155px}.final-scene h1{font-size:2.4rem}.song-card{grid-template-columns:42px 1fr 20px}.site-footer{font-size:.48rem}.modal-card{padding:25px 17px}.star-puzzle{grid-template-columns:repeat(4,42px);gap:7px}.door-puzzle button,.mirror-puzzle button,.throne-puzzle button{width:82px;height:125px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition:none!important}}
@media print{body{background:#fff;color:#111}body:before,body:after,#ambient,.topbar,.site-footer,#toast,.side-menu{display:none!important}.final-page{width:100%;max-width:none}.final-scene{border:0;min-height:auto;background:#fff;color:#111}.final-scene:before,.final-moon,.final-roses,.final-figures{display:none}.final-scene h1,.final-scene p{color:#111}.final-letter{border:1px solid #aaa;color:#111}.btn{display:none}.sealed-result{color:#111}}
.transition{position:fixed;inset:0;z-index:140;display:grid;place-items:center;align-content:center;gap:14px;background:radial-gradient(circle,rgba(122,16,42,.32),#030205 52%);opacity:0;pointer-events:none;transition:opacity .28s}.transition.show{opacity:1}.transition-symbol{font:4rem var(--serif);color:#d04a5d;text-shadow:0 0 30px rgba(208,74,93,.4);animation:pulse 1s infinite}.transition span{font:500 .62rem var(--serif);letter-spacing:.25em;color:#9b858c}
.path-treasure{display:grid;gap:6px;max-width:480px;margin:25px auto;padding:18px;border:1px solid rgba(201,166,107,.24);background:rgba(35,20,8,.13)}.path-treasure span{font:500 .58rem var(--serif);letter-spacing:.2em;color:#9a858c}.path-treasure b{font:600 1.1rem var(--serif);color:#e0c9ce}.path-treasure small{color:#766d71;line-height:1.6}

/* Castle music player */
.music-player{position:fixed;top:82px;right:22px;z-index:80;width:min(390px,calc(100vw - 28px));padding:20px;border:1px solid rgba(198,45,73,.35);background:linear-gradient(145deg,rgba(17,10,15,.98),rgba(5,4,7,.98));box-shadow:0 20px 70px rgba(0,0,0,.65);backdrop-filter:blur(14px)}
.music-player.hidden{display:none}.music-player-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.music-player-head strong{display:block;font:600 1.1rem var(--serif);color:#f0e9eb;margin-top:5px}.music-player-controls{display:flex;justify-content:center;align-items:center;gap:18px;margin:20px 0 12px}.player-main{width:52px;height:52px;border-radius:50%;border:1px solid rgba(198,45,73,.55);background:rgba(105,15,35,.5);color:#fff;font-size:1.1rem;cursor:pointer}.music-seek{width:100%;accent-color:#c62d49}.music-times{display:flex;justify-content:space-between;color:#8f858a;font-size:.7rem;margin-top:3px}.music-select-label{display:block;color:#9e8d93;font-size:.65rem;letter-spacing:.16em;margin:15px 0 7px}.music-select{width:100%;padding:12px 14px}.music-volume{display:flex;align-items:center;gap:10px;margin-top:14px;color:#8f858a;font-size:.65rem;letter-spacing:.12em}.music-volume input{flex:1;accent-color:#c62d49}.music-help{font-size:.7rem!important;line-height:1.5!important;margin:14px 0 0!important;color:#756b70!important}.song-play{width:42px;height:42px;border:1px solid rgba(198,45,73,.35);background:rgba(255,255,255,.025);color:#d9b7bf;cursor:pointer}.song-play:hover,.player-main:hover{background:rgba(120,18,42,.55)}
@media(max-width:600px){.music-player{top:70px;right:14px}.music-player-controls{gap:12px}}

/* CINEMATIC CASTLE LAYER */
#view{position:relative;isolation:isolate;min-height:calc(100vh - 120px);}
#view:before{content:"";position:absolute;inset:0;z-index:-2;background-position:center;background-size:cover;background-repeat:no-repeat;opacity:.30;filter:saturate(.72) contrast(1.08);pointer-events:none;}
#view:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(5,4,7,.48),rgba(5,4,7,.82) 72%,rgba(5,4,7,.96));pointer-events:none;}
body[data-view="home"] #view:before{background-image:url("assets/art/a_wide_cinematic_dark_romance_collage_album_poste.png");opacity:.34;}
body[data-view="journey"] #view:before{background-image:url("assets/art/a_dark_gothic_romantic_fantasy_scene_overall_a_m.png");}
body[data-view="queen"] #view:before{background-image:url("assets/art/AJ AND SHAIRA (2).png");opacity:.26;}
body[data-view="obsession"] #view:before{background-image:url("assets/art/a_dark_gothic_romantic_fantasy_web_ui_art_poster_s.png");}
body[data-view="protection"] #view:before{background-image:url("assets/art/a_dark_gothic_romantic_fantasy_scene_overall_a_m.png");}
body[data-view="library"] #view:before{background-image:url("assets/art/a_dark_gothic_romantic_fantasy_web_ui_art_poster_s.png");}
body[data-view="trial"] #view:before{background-image:url("assets/art/a_dark_gothic_romantic_fantasy_ui_menu_illustratio.png");}
body[data-view="memories"] #view:before{background-image:url("assets/art/Aj and Shaira (3).png");opacity:.22;}
body[data-view="music"] #view:before{background-image:url("assets/art/a_wide_cinematic_dark_romance_collage_album_poste.png");}
body[data-view="games"] #view:before{background-image:url("assets/art/a_dark_gothic_romantic_fantasy_ui_menu_illustratio.png");}
body[data-view="zombies"] #view:before{background-image:url("assets/art/a_dark_gothic_romantic_fantasy_scene_overall_a_m.png");opacity:.25;}
body[data-view="garden"] #view:before{background-image:url("assets/art/a_dark_gothic_romantic_fantasy_scene_overall_a_m.png");opacity:.25;}
body[data-view="map"] #view:before{background-image:url("assets/art/a_dark_gothic_romantic_fantasy_ui_menu_illustratio.png");}
body[data-view="achievements"] #view:before{background-image:url("assets/art/a_dark_gothic_romantic_fantasy_web_ui_art_poster_s.png");}
body[data-view="secret"] #view:before{background-image:url("assets/art/a_dark_gothic_romantic_fantasy_scene_overall_a_m.png");}
body[data-view="final"] #view:before{background-image:url("assets/art/a_wide_cinematic_dark_romance_collage_album_poste.png");opacity:.34;}
.section{position:relative;}
.games-page,.zombie-page{padding-bottom:90px;}
.game-progress{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:20px 0;padding:14px 18px;border:1px solid rgba(255,255,255,.08);background:rgba(7,5,9,.58);}
.game-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:18px 0 28px;}
.game-tab{min-height:62px;background:rgba(12,8,13,.76);border:1px solid rgba(255,255,255,.08);color:#cfc7ca;cursor:pointer;padding:8px;font-family:var(--serif);}
.game-tab small{display:block;font:500 .55rem var(--serif);margin-top:5px;color:#8f858a;}
.game-tab.active{border-color:var(--red2);background:rgba(100,10,28,.35);}
.game-tab.won{box-shadow:inset 0 -3px 0 var(--red2);}
.game-stage{padding:30px;background:rgba(7,5,9,.70);border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(8px);min-height:430px;}
.game-instructions,.game-status{margin:10px 0 20px;color:#aaa1a6;}
.lights-board{display:grid;grid-template-columns:repeat(3,72px);gap:14px;justify-content:center;margin:30px 0;}
.game-light{width:72px;height:72px;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:#120b11;cursor:pointer;}
.game-light.flash,.game-light:active{background:#b51f3b;box-shadow:0 0 30px rgba(181,31,59,.75);}
.pattern-wrap{display:flex;justify-content:center;gap:50px;flex-wrap:wrap;margin:25px 0;}
.mini-label{font:500 .6rem var(--serif);letter-spacing:.16em;color:#9c858d;}
.pattern-grid{display:grid;grid-template-columns:repeat(5,42px);gap:5px;margin-top:8px;}
.pattern-grid span,.pattern-grid button{width:42px;height:42px;border:1px solid rgba(255,255,255,.08);background:#100a10;}
.pattern-grid span.on,.pattern-grid button.on{background:#b51f3b;box-shadow:0 0 15px rgba(181,31,59,.45);}
.rings{height:260px;display:grid;place-items:center;position:relative;margin:15px auto;}
.ring{position:absolute;border:2px solid rgba(210,190,195,.22);border-radius:50%;display:grid;place-items:center;transition:.35s;}
.r1{width:230px;height:230px}.r2{width:165px;height:165px}.r3{width:100px;height:100px}
.ring button{border:0;background:rgba(60,10,22,.65);color:#eee;border-radius:50%;width:44px;height:44px;cursor:pointer;}
.symbol-memory{text-align:center;font-size:2rem;letter-spacing:.35em;min-height:70px;padding:20px;}
.symbol-pad{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:15px}.symbol-pad button{font-size:1.4rem;width:54px;height:54px;background:#120b11;border:1px solid rgba(255,255,255,.12);cursor:pointer;}
.slide-board{display:grid;grid-template-columns:repeat(3,70px);gap:5px;width:max-content;margin:25px auto}.slide-board button{width:70px;height:70px;background:#160d13;border:1px solid rgba(255,255,255,.1);color:#eee;font:600 1.1rem var(--serif);cursor:pointer;}
.match-board{display:grid;grid-template-columns:repeat(4,70px);gap:8px;width:max-content;margin:20px auto}.match-board button{width:70px;height:70px;background:#120a10;border:1px solid rgba(255,255,255,.1);font-size:1.4rem;cursor:pointer;}
.cipher-box,.word-box,.meta-vault{max-width:620px;margin:25px auto;text-align:center}.cipher-wheel{letter-spacing:.3em;padding:14px;border:1px solid rgba(255,255,255,.08);margin-bottom:20px;}
.maze-box{text-align:center}.maze-grid{display:grid;grid-template-columns:repeat(9,38px);gap:3px;justify-content:center;margin:20px auto}.maze-grid button{width:38px;height:38px;background:#10090f;border:1px solid rgba(255,255,255,.06);color:#b51f3b}.maze-grid button.player{background:#b51f3b;color:#fff}.maze-controls{display:grid;grid-template-columns:repeat(3,52px);justify-content:center;gap:6px}.maze-controls button:nth-child(1){grid-column:2}.maze-controls button{height:48px;background:#160b12;border:1px solid rgba(255,255,255,.1);color:#eee;cursor:pointer;}
.lock-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;max-width:650px;margin:20px auto}.lock-grid>div span{display:block;font:.58rem var(--serif);letter-spacing:.12em;color:#9c858d;margin-bottom:6px}.lock-grid .field{text-align:center;font-size:1.4rem;}
.clues{max-width:620px;margin:20px auto;padding:15px 20px;background:rgba(30,10,18,.35);border-left:2px solid var(--red2);}
.timing-track{height:28px;background:#120a10;border:1px solid rgba(255,255,255,.1);position:relative;margin:45px 0}.timing-track #timingZone{position:absolute;left:43%;width:14%;top:0;bottom:0;background:rgba(181,31,59,.5)}.timing-track #timingMarker{position:absolute;top:-7px;width:5px;height:42px;background:#eee;}
.star-field{height:300px;position:relative;max-width:720px;margin:auto;background:radial-gradient(circle,rgba(90,20,45,.15),transparent 60%)}.star-node{position:absolute;left:calc(8% + (var(--n) * 7.5%));top:calc(12% + (((var(--n) * 47) % 70) * 1%));background:transparent;border:0;color:#aaa;font-size:1.5rem;cursor:pointer}.star-node.connected{color:#e04a61;text-shadow:0 0 20px #b51f3b;}
.throne-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;max-width:600px;margin:30px auto}.throne-grid button{height:90px;font-size:2rem;background:#120a10;border:1px solid rgba(255,255,255,.1);cursor:pointer}.throne-grid button:disabled{opacity:.45;}
.meta-seals{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:20px}.meta-seals span{padding:12px 16px;border:1px solid rgba(255,255,255,.08);background:#120a10;font-family:var(--serif);}
.zombie-hud{display:flex;justify-content:space-around;gap:10px;flex-wrap:wrap;margin:18px 0;padding:13px;border:1px solid rgba(255,255,255,.08);background:rgba(8,5,9,.7);font:.7rem var(--serif);letter-spacing:.12em;}
#zombieCanvas{display:block;width:100%;max-width:900px;height:auto;margin:0 auto;border:1px solid rgba(255,255,255,.1);background:#08060a;}
.zombie-controls{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:14px 0}.zombie-controls button{min-width:88px;min-height:46px;background:#160b12;color:#eee;border:1px solid rgba(255,255,255,.1);cursor:pointer;font-family:var(--serif);}
.zombie-rules{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;color:#887c82;font-size:.75rem;margin-top:18px;}
@media(max-width:700px){.game-tabs{grid-template-columns:repeat(3,1fr)}.game-stage{padding:18px}.pattern-grid{grid-template-columns:repeat(5,32px)}.pattern-grid span,.pattern-grid button{width:32px;height:32px}.lights-board{grid-template-columns:repeat(3,58px)}.game-light{width:58px;height:58px}.match-board{grid-template-columns:repeat(4,58px)}.match-board button{width:58px;height:58px}.slide-board{grid-template-columns:repeat(3,58px)}.slide-board button{width:58px;height:58px}.lock-grid{grid-template-columns:repeat(2,1fr)}.rings{transform:scale(.82);margin-left:-8%;margin-right:-8%;}}

.trial-options{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:25px 0}.trial-mcq{min-height:78px;text-align:left;padding:15px;background:rgba(14,8,13,.82);border:1px solid rgba(255,255,255,.08);color:#eee;cursor:pointer;display:flex;gap:14px;align-items:center;font-family:var(--serif)}.trial-mcq>b{font-weight:500;line-height:1.45}.trial-mcq:hover,.trial-mcq.selected{border-color:var(--red2);background:rgba(95,10,28,.4)}.trial-mcq:first-letter{color:#e04a61}@media(max-width:700px){.trial-options{grid-template-columns:1fr}}

/* V7 navigation + game polish */
.room-nav{display:flex;align-items:center;gap:14px;margin:0 auto 18px;max-width:1400px;padding:10px 0;position:relative;z-index:5;color:#8f858a;font:.62rem var(--serif);letter-spacing:.16em;text-transform:uppercase}.room-back{background:rgba(12,8,13,.82);border:1px solid rgba(255,255,255,.12);color:#eee;padding:10px 16px;cursor:pointer;font:500 .62rem var(--serif);letter-spacing:.12em}.room-back:hover{border-color:var(--red2);background:rgba(100,10,28,.25)}
.target-grid span{display:grid;place-items:center;font-size:.72rem;color:#ffdce2}.ring-puzzle{position:relative;width:280px;height:300px;margin:10px auto}.moon-targets{position:absolute;left:0;right:0;top:10px;display:flex;justify-content:center;gap:68px;z-index:2;color:#e8dfe2;text-shadow:0 0 18px rgba(255,255,255,.35);font-size:1.35rem}.rings{height:280px;width:280px;margin:0 auto;position:relative}.ring button{position:absolute;top:-23px;left:50%;transform:translateX(-50%);z-index:3}.ring{transform-origin:50% 50%;}
.zombie-page .room-nav{margin-bottom:5px}.zombie-controls button{touch-action:manipulation}.zombie-controls button[data-zmove="left"],.zombie-controls button[data-zmove="right"]{min-width:110px}
@media(max-width:700px){.room-nav{padding:8px 0;overflow:auto}.ring-puzzle{transform:scale(.86);margin-left:auto;margin-right:auto;margin-top:-10px;margin-bottom:-25px}}

/* V8 interaction upgrades */
.castle-back{position:fixed;left:18px;top:88px;z-index:70;border:1px solid rgba(224,74,97,.28);background:rgba(8,5,9,.88);color:#e8dfe2;padding:10px 14px;cursor:pointer;font:600 .62rem var(--serif);letter-spacing:.14em;backdrop-filter:blur(10px);opacity:.92}.castle-back:hover{border-color:#e04a61;transform:translateX(-2px)}
.moon-targets{top:0!important;height:48px;align-items:center;gap:0!important}.moon-targets span{position:absolute;font-size:2rem;color:#f0e6e9;text-shadow:0 0 22px rgba(255,255,255,.75);transform:none}.moon-targets span:nth-child(1){left:24px}.moon-targets span:nth-child(2){left:107px}.moon-targets span:nth-child(3){left:190px}.rings{margin-top:38px!important}.ring button{box-shadow:0 0 18px rgba(224,74,97,.22)}
.painting-room{display:grid;gap:18px}.painting-tools{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:14px;border:1px solid rgba(255,255,255,.07);background:rgba(10,7,11,.72)}.paint-palette{display:flex;gap:8px;flex-wrap:wrap}.paint-color{width:34px;height:34px;border-radius:50%;border:2px solid rgba(255,255,255,.12);background:var(--paint,#7c1428);cursor:pointer}.paint-color.active{box-shadow:0 0 0 3px rgba(224,74,97,.3);border-color:#eee}.paint-color.eraser{border-radius:2px;background:#140d12;color:#eee}.painting-frame{padding:10px;border:1px solid rgba(180,120,130,.22);background:#20151a;box-shadow:0 20px 60px rgba(0,0,0,.4);overflow:auto}.painting-frame canvas{display:block;width:100%;height:auto;max-width:900px;margin:auto;touch-action:none;cursor:crosshair}.painting-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.queen-questions{display:grid;gap:14px;max-width:760px;margin:auto}.queen-questions label{font:500 .7rem var(--serif);letter-spacing:.12em;color:#b89ea5}.textarea{min-height:90px;resize:vertical}.bonus-tab{border-color:rgba(201,166,107,.28)!important}.bonus-tab.active{background:rgba(125,80,30,.18)!important}
@media(max-width:700px){.castle-back{left:10px;top:82px;padding:8px 10px}.moon-targets span:nth-child(1){left:18px}.moon-targets span:nth-child(2){left:105px}.moon-targets span:nth-child(3){left:192px}}
body[data-view="atelier"] #view:before{background-image:url("assets/art/a_wide_cinematic_dark_romance_collage_album_poste.png");opacity:.24}
.atelier-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:18px;align-items:start}.atelier-tools{display:grid;gap:12px;padding:18px;border:1px solid rgba(255,255,255,.09);background:rgba(8,5,9,.8);position:sticky;top:85px}.atelier-bg-picks,.atelier-colors,.atelier-stamps{display:flex;gap:7px;flex-wrap:wrap}.atelier-bg-picks button,.atelier-stamps button{padding:9px 10px;background:#120a10;border:1px solid rgba(255,255,255,.1);color:#eee;cursor:pointer;font-family:var(--serif)}.atelier-colors button{width:30px;height:30px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:var(--paint);cursor:pointer}.atelier-frame{padding:10px;background:#181015;border:1px solid rgba(201,166,107,.22);overflow:auto}.atelier-frame canvas{display:block;width:100%;height:auto;touch-action:none;cursor:crosshair}.atelier-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:14px}.atelier-gallery{margin-top:35px}.atelier-gallery #atelierGalleryGrid{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.atelier-gallery-item{border:1px solid rgba(255,255,255,.1);background:#100a10;padding:5px;cursor:pointer}.atelier-gallery-item img{display:block;width:150px;height:100px;object-fit:cover}.quiz-game{max-width:850px;margin:20px auto}.quiz-question{font:600 clamp(1.2rem,2.5vw,1.8rem) var(--serif);line-height:1.35;padding:22px;border:1px solid rgba(255,255,255,.1);background:rgba(20,8,14,.45)}.quiz-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.quiz-options button{min-height:64px;text-align:left;padding:14px 16px;background:#120a10;border:1px solid rgba(255,255,255,.1);color:#eee;cursor:pointer;font-family:var(--serif)}.quiz-options button:hover{border-color:#e04a61}.quiz-options button.correct{border-color:#6da77c;background:rgba(35,90,55,.25)}.quiz-options button.wrong{border-color:#c62d49;background:rgba(100,10,28,.3)}.quiz-options button:disabled{cursor:default;opacity:.9}.game-tabs{grid-template-columns:repeat(6,1fr)}
@media(max-width:800px){.atelier-layout{grid-template-columns:1fr}.atelier-tools{position:static}.quiz-options{grid-template-columns:1fr}.game-tabs{grid-template-columns:repeat(3,1fr)}}
.moon-targets{position:absolute!important;inset:0!important;height:280px!important;z-index:10!important;pointer-events:none}.moon-mover{position:absolute;width:30px;height:30px;padding:0;border:0;background:transparent;color:#f5eaee;font-size:2rem;line-height:30px;cursor:pointer;text-shadow:0 0 20px rgba(255,255,255,.85);pointer-events:auto;transition:left .25s,top .25s,transform .2s}.moon-mover:hover{transform:scale(1.18);color:#fff}.ring-puzzle .rings{z-index:4}.ring-puzzle .ring{z-index:4}
