:root{
  --ink:#29131f;--dark:#572339;--quiet:#644252;--pink:#8f2350;
  --room-face:linear-gradient(148deg,rgba(255,251,252,.89),rgba(255,225,237,.73) 67%,rgba(240,183,206,.76));
  --room-line:rgba(255,252,254,.93);--room-shelf:rgba(107,40,67,.25)
}
body.room-page{background:#efd1dc;position:relative;isolation:isolate}
.room-scene{position:fixed;z-index:-2;inset:0;overflow:hidden;pointer-events:none;isolation:isolate;background:#e3a8bf}
.room-periphery,.room-scene::before,.room-scene::after{position:absolute;inset:0;content:""}
.room-periphery{background:radial-gradient(ellipse at 70% 32%,#ffdfeb55,transparent 55%),linear-gradient(116deg,#a76781,#f2b6cc 45%,#bd7793);z-index:-2}
.room-periphery::before{content:"";position:absolute;inset:-7%;background:center 53%/cover no-repeat url(../assets/room/salon-poster.webp);filter:blur(35px);opacity:.74}
.room-periphery::after{content:"";position:absolute;inset:0;background:linear-gradient(153deg,#fff1f575,transparent 52%,#652b4a42)}
.room-media{position:absolute;right:0;top:0;height:100%;width:64%;overflow:hidden;background:center 52%/cover no-repeat url(../assets/room/salon-poster.webp);mask-image:linear-gradient(90deg,transparent,#000 24%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 24%)}
.room-media iframe{position:absolute;border:0;opacity:0}
.room-media iframe{width:max(100%,56.25vh);height:max(100%,113.7778vw);left:50%;top:50%;transform:translate(-50%,-50%)}
.room-scene[data-playing="embed"] iframe{opacity:1}
.room-scene::before{z-index:1;background:linear-gradient(90deg,#f8d7e6bd 0%,#f9dce7a6 32%,#f6c6d634 65%,transparent 100%)}
.room-scene::after{z-index:2;background:radial-gradient(ellipse at 65% 37%,transparent 30%,#622a461f 100%),linear-gradient(0deg,#763d5d40,transparent 30%)}
.room-page .site-head{background:transparent;border:0;padding:14px 0 0}
.room-page .head-inner{width:min(calc(100% - 72px),var(--max));height:56px;padding:0 18px;border-radius:24px;background:#fff6f9bb;border:1px solid var(--room-line);box-shadow:inset 0 -2px 1px #af52732a,0 12px 31px #67254120;backdrop-filter:blur(12px)}
.room-page .head-actions{display:flex;align-items:center;gap:8px}
.room-page .wordmark,.room-page .head-link{white-space:nowrap}
.room-page .head-link:hover{background:#fff}
.room-page .hero,.room-page .proof,.room-page .program,.room-page .author,.room-page .purchase{background:none}
.room-page .hero{padding:49px 0 76px;overflow:visible;min-height:min(690px,91svh)}
.room-page .hero::before,.room-page .hero::after{content:none}
.room-page .hero-grid{grid-template-columns:minmax(385px,.94fr) 1.06fr;grid-template-areas:"deck stage";gap:0 10%;align-items:center;perspective:1600px}
.room-panel{background:var(--room-face);border:1px solid var(--room-line);box-shadow:inset 0 1px 2px #fff,inset 0 -2px 2px #a6416720,3px 5px 0 #a5486e47,0 24px 56px #55223837;border-radius:29px;backdrop-filter:blur(15px) saturate(1.16);-webkit-backdrop-filter:blur(15px) saturate(1.16)}
.hero-deck{grid-area:deck;padding:clamp(23px,3.7vw,43px);position:relative;z-index:2}
.room-page .hero h1{font-size:clamp(3.25rem,6.1vw,6rem);text-wrap:balance}
.room-page .hero h1 em{font-size:.62em;text-wrap:balance}
.room-page .hero-buy{margin-top:19px;max-width:none}
.room-page .hero-stage{min-height:0;align-self:end;min-width:0;height:177px;z-index:1;isolation:auto}
.room-page .hero-pair{width:min(80%,316px);right:7%;bottom:4%;transform:rotate(-5deg) rotateY(-10deg);background:linear-gradient(135deg,#fffaf2df,#e7acc6b0);box-shadow:4px 6px 0 #83395569,0 20px 34px #35132158;backdrop-filter:blur(12px)}
.room-page .hero-pair .shot{aspect-ratio:1.15}
.room-page .star{width:70px;bottom:-5%;left:6%;z-index:3}
.room-page .room-gap{height:clamp(105px,20svh,240px);pointer-events:none}
.room-page .section{padding:clamp(38px,7vw,90px) 0}
.room-page .proof .wrap,.room-page .program .wrap,.room-page .author .wrap,.room-page .purchase .wrap{padding:clamp(18px,3.6vw,45px)}
.room-page .proof .wrap{width:min(calc(100% - 72px),985px);margin-inline:max(36px,calc((100% - var(--max))/2)) auto}
.room-page .proof-grid{grid-template-columns:minmax(160px,.75fr) 1.25fr;gap:16px}
.room-page .example,.room-page .preview{background:linear-gradient(133deg,#fff9fc,#f7d7e6);box-shadow:0 3px 0 #bd6c8d65,0 14px 28px #6f324b2a}
.room-page .program .wrap{width:min(calc(100% - 72px),1020px);margin-inline:auto max(36px,calc((100% - var(--max))/2));align-items:center}
.room-page .program .section-title{min-height:0;margin:0;align-self:start}
.room-page .program-prop{position:relative;inset:auto;width:min(76%,210px);margin-top:10px}
.room-page .author .wrap{width:min(calc(100% - 72px),1040px)}
.room-page .portrait-frame{border-color:#fff9fc}
.room-page .purchase .wrap{width:min(calc(100% - 72px),1040px)}
.room-page .purchase-card{background:linear-gradient(142deg,#fff1f7,#f3c1d9c7)}
.room-page .site-footer{background:#fff4f8df;backdrop-filter:blur(9px)}
.offer-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.offer-strip .hero-price{margin:4px 0 0;font-size:clamp(2.05rem,3.5vw,3.3rem);white-space:nowrap}
.offer-reference{display:flex;align-items:center;gap:7px;font-size:.77rem;color:#66374d;line-height:1.15}
.offer-reference del{font-weight:670;white-space:nowrap}
.offer-badge{display:inline-block;color:#fff;background:#912750;border:1px solid #a84367;border-radius:7px;padding:4px 6px;font:800 .68rem/1 var(--sans);white-space:nowrap}
.offer-clock{display:grid;gap:2px;justify-items:center;text-align:center;flex:none;min-width:97px;padding:7px 9px;color:#60233e;border:1px solid #fff;background:linear-gradient(135deg,#fff5fa,#f8c4dbe3);border-radius:13px;box-shadow:inset 0 -2px 0 #c45e8b35,0 3px 0 #bc527e60}
.offer-clock span{font-size:.65rem;line-height:1.15;font-weight:730}
.offer-clock time{font:600 1.42rem/1 var(--bold);font-variant-numeric:tabular-nums;letter-spacing:.035em}
.offer-clock[data-finished] time{opacity:.57}
.room-page .buy{background:linear-gradient(173deg,#d75a8a 0,#b03064 39%,#8f214d);box-shadow:inset 0 1px 0 #ffdfed,0 4px 0 #6e183d,0 9px 20px #88234f3a}
@media(max-width:880px){.room-page .hero-grid{grid-template-columns:minmax(335px,1.3fr) .7fr;gap:0 5%}.room-page .hero-pair{width:min(100%,300px);right:0}.room-page .star{left:-13%}}
@media(max-width:700px){
 .room-media{width:100%;mask-image:none;-webkit-mask-image:none}
 .room-media iframe{width:max(100%,56.25vh);height:max(100%,177.7778vw)}
 .room-scene::before{background:linear-gradient(165deg,#fff0f584 0%,#f6cedb3b 55%,#e2a2ba3d)}
 .room-scene::after{background:linear-gradient(0deg,#6a2b4836,transparent 28%)}
 .room-page .site-head{padding:8px 0 0}
 .room-page .head-inner{width:calc(100% - 24px);height:42px;padding-inline:10px;border-radius:14px}
 .room-page .head-link{font-size:.64rem;padding:5px 8px}
 .room-page .head-actions{gap:5px}
 .room-page .hero{padding:14px 0 0;min-height:0}
 .room-page .hero-grid{width:calc(100% - 24px);grid-template-columns:1fr;grid-template-areas:"deck" "stage";gap:0;perspective:none}
 .hero-deck{margin-right:clamp(14px,5vw,28px);padding:15px 13px;border-radius:20px;backdrop-filter:blur(12px) saturate(1.13)}
 .room-page .hero h1{font-size:clamp(2.6rem,12.2vw,4.65rem);text-wrap:initial}
 .room-page .hero h1 em{font-size:.62em;text-wrap:initial}
 .room-page .hero-buy{margin-top:12px}
 .room-page .hero-stage{height:clamp(113px,24svh,162px);margin-top:8px;margin-right:6px}
 .room-page .hero-pair{width:clamp(126px,44%,185px);bottom:0;right:0;transform:rotate(-5deg)}
 .room-page .hero-pair .shot{aspect-ratio:1.05}
 .room-page .star{width:41px;left:auto;right:clamp(132px,46%,195px);bottom:6%}
 .room-page .room-gap{height:clamp(105px,20svh,170px)}
 .room-page .section{padding:18px 0 28px}
 .room-page .proof .wrap,.room-page .program .wrap,.room-page .author .wrap,.room-page .purchase .wrap{width:calc(100% - 29px);margin-inline:auto;padding:14px 12px;border-radius:20px}
 .room-page .proof-grid{grid-template-columns:.78fr 1.22fr;gap:7px}
 .room-page .player,.room-page .example-pair{height:clamp(108px,33vw,164px)}
 .room-page .program .section-title{padding-right:29%;min-height:72px}
 .room-page .program-prop{position:absolute;right:-4px;left:auto;top:-6px;width:31%;margin:0}
 .room-page .purchase .wrap{gap:15px}
 .offer-strip{margin-bottom:8px;gap:7px}
 .offer-strip .hero-price{font-size:2rem}
 .offer-clock{min-width:88px;padding:6px 7px}
 .offer-clock span{font-size:.59rem}
 .offer-clock time{font-size:1.25rem}
}
@media(max-width:350px){.room-page .head-link{font-size:.59rem}.hero-deck{margin-right:8px}.room-page .hero h1{font-size:2.38rem}}
@media(prefers-reduced-motion:reduce){.room-media iframe{display:none}}
