:root{color-scheme:dark;--bg:#100d1a;--panel:#21192c;--panel2:#181421;--line:#42334e;--text:#f8f1eb;--muted:#b9adbd;--gold:#dfc18a;--rose:#df9ab2;--green:#90d2ad;--red:#d9757d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.wrap{max-width:1160px;margin:auto;padding-inline:25px}.top{height:70px;padding:0 max(20px,calc((100% - 1110px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #ffffff15;background:#100d1aee;position:sticky;top:0;z-index:4;backdrop-filter:blur(12px)}.brand{font:700 17px Georgia,serif;letter-spacing:.13em;white-space:nowrap}.brand b{color:var(--rose)}nav{display:flex;gap:24px;color:var(--muted);font-size:13px}nav a:hover,footer a:hover{color:var(--gold)}.top-right{display:flex;align-items:center;gap:10px}.adult,.balance{font-size:10px;border:1px solid #ffffff20;border-radius:999px;padding:7px 10px;color:#e7c4d0;white-space:nowrap}.balance{color:var(--muted)}.balance b{color:var(--gold)}.menu{display:none;background:none;border:0;color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;padding:11px 17px;border:1px solid #dfc18a70;border-radius:999px;background:#dfc18a12;color:var(--gold);font-size:12px;font-weight:750}.btn:hover{background:#dfc18a25}.btn.primary{border-color:transparent;color:#211824;background:linear-gradient(110deg,#dfc18a,#f4dfb6)}.btn.ghost{padding:8px 12px}.btn.pvt{color:#231723;background:var(--rose);border-color:transparent}.hero{min-height:455px;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:45px;padding-block:52px}.eyebrow{color:var(--gold);font-size:10px;letter-spacing:.2em;font-weight:800;text-transform:uppercase}.hero h1{font:500 clamp(42px,6vw,70px)/1.02 Georgia,serif;letter-spacing:-.035em;margin:15px 0}.hero h1 em{font-style:normal;color:var(--rose)}.hero p{max-width:585px;color:#cec3d1;font-size:15px}.actions{display:flex;gap:11px;margin:24px 0 16px;flex-wrap:wrap}.muted{color:var(--muted);font-size:12px}.hero-art{height:320px;position:relative;display:grid;place-items:center;background:radial-gradient(ellipse,#75456950,transparent 66%)}.moon{position:absolute;right:13%;top:22px;color:#f2d99e;font-size:75px;text-shadow:0 0 45px #dfc18a88}.card-art{position:absolute;width:130px;height:205px;border:1px solid #efdaa1;border-radius:11px;display:grid;place-items:center;font:52px Georgia,serif;color:#efd99c;background:radial-gradient(circle at 50% 42%,#694765,#1d1629 72%);box-shadow:0 18px 40px #0007}.card-art:after{content:"";position:absolute;inset:8px;border:1px solid #efd99a77;border-radius:7px}.c1{left:11%;top:71px;transform:rotate(-14deg);opacity:.8}.c2{left:37%;top:51px;z-index:1;transform:rotate(2deg)}.c3{right:7%;top:75px;transform:rotate(14deg);opacity:.8}.hero-art>span{position:absolute;bottom:2px;right:6%;font:italic 11px Georgia,serif;letter-spacing:.11em;color:#d2bed1}.section{padding-block:48px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:23px}.section-head h2{font:500 37px Georgia,serif;margin:7px 0 0}.section-head p{max-width:440px;color:var(--muted);font-size:12px;margin:0}.offers{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.offers article{padding:22px;border:1px solid var(--line);border-radius:17px;background:linear-gradient(145deg,#261d32,#191421);min-height:190px}.offers i{font:25px Georgia,serif;color:var(--gold);display:inline-grid;place-items:center;width:40px;height:40px;border:1px solid #dfc18a66;border-radius:50%}.offers h3{font:500 20px Georgia,serif;margin:15px 0 6px}.offers p{min-height:40px;color:#c0b4c5;font-size:12px}.offers b{display:block;padding-top:12px;border-top:1px solid #ffffff14;color:var(--gold);font:18px Georgia,serif}.models{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.model{display:grid;grid-template-columns:36% 64%;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:linear-gradient(130deg,#261e31,#191421)}.portrait{position:relative;min-height:280px;display:flex;justify-content:center;align-items:end;background:radial-gradient(ellipse at 50% 22%,#b77b8a,#64405b 54%,#251a31);background-size:cover;background-position:center}.portrait.alt{background:radial-gradient(ellipse at 50% 22%,#a287a7,#5a4666 54%,#251a31)}.portrait:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#17111fdd,transparent 65%)}.figure{width:132px;height:170px;border-radius:65px 65px 15px 15px;background:linear-gradient(120deg,#f1d3c4,#a9787d 70%,#493148);position:relative;z-index:1}.figure:before{content:"";position:absolute;width:80px;height:90px;left:26px;top:-53px;border-radius:48%;background:linear-gradient(140deg,#f3d9c9,#bf8e91);box-shadow:0 -12px 0 8px #32213b}.initial{position:absolute;z-index:2;right:13px;top:10px;color:#f6dca9;font:italic 23px Georgia,serif}.portrait-label{position:absolute;z-index:2;left:12px;top:12px;padding:5px 8px;border-radius:999px;background:#100d1acc;font-size:9px;letter-spacing:.09em;text-transform:uppercase}.portrait-state{position:absolute;z-index:2;left:11px;bottom:12px;font-size:10px;color:white}.portrait-state i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);margin-right:5px}.info{padding:20px;display:flex;flex-direction:column}.info h3{font:500 29px Georgia,serif;margin:2px 0}.info p{font-size:12px;color:#c7bdca;margin:10px 0}.topic{font-size:10px;color:var(--gold)}.meta{font-size:10px;color:#a99dad}.model-foot{margin-top:auto;padding-top:12px;border-top:1px solid #ffffff14;display:flex;justify-content:flex-end;align-items:end;gap:8px}.model-foot small{display:block;color:#aaa0b0;font-size:9px}.model-foot b{display:block;color:var(--gold);font:18px Georgia,serif}.model-foot .btn{padding:9px 11px;font-size:10px;white-space:nowrap}.how{background:#1b1624;border-block:1px solid #ffffff12}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.steps>div{border-left:1px solid #dfc18a66;padding:14px}.steps i{display:block;color:var(--gold);font:italic 21px Georgia,serif;margin-bottom:6px}.steps b{font:500 16px Georgia,serif}.steps p{font-size:10px;color:var(--muted)}.contact{margin-block:36px 54px;border:1px solid #dfc18a55;border-radius:18px;padding:24px;background:radial-gradient(ellipse at 100% 0,#6e456c55,transparent 56%),#20192b;display:flex;align-items:center;justify-content:space-between;gap:18px}.contact h2{font:500 24px Georgia,serif;margin:0 0 4px}.contact p{font-size:11px;color:#c3b8c8;margin:0}footer{padding:25px;text-align:center;border-top:1px solid #ffffff12;color:#91869b;font-size:10px}footer b{font:700 13px Georgia,serif;letter-spacing:.15em;color:var(--gold)}footer p{margin:4px}footer a{display:inline-block;margin-top:5px;color:#b6a8bc}.dialog{border:1px solid #6b526f;border-radius:18px;padding:0;max-width:calc(100vw - 26px);max-height:calc(100dvh - 26px);background:linear-gradient(145deg,#2a2035,#171320);color:var(--text);box-shadow:0 30px 90px #000b}.dialog::backdrop{background:#07050dcc;backdrop-filter:blur(3px)}.dialog-card{position:relative;width:min(440px,calc(100vw - 30px));padding:27px}.dialog h2{font:500 28px Georgia,serif;margin:5px 0 10px}.dialog p{font-size:12px;color:#c2b8c8}.x,.icon-btn{border:0;background:none;color:#ddd;font-size:24px}.x{position:absolute;right:15px;top:10px}.field{display:grid;gap:5px;margin:12px 0;font-size:11px;color:#d0c3d2}.field input,.field select,.field textarea,.name-input input,.compose input,.room input{width:100%;padding:11px;background:#120f1a;border:1px solid #493b55;border-radius:9px;color:#fff}.notice{color:var(--gold)!important;min-height:18px}.dialog fieldset{border:1px solid #ffffff22;border-radius:12px;margin:18px 0;padding:12px}.dialog legend{font-size:11px;color:#d0c3d2}.dialog fieldset label{display:block;font-size:12px;padding:5px 0}.wide{width:min(1000px,calc(100vw - 24px));height:min(700px,calc(100dvh - 24px));overflow:hidden}.chat-shell{height:100%;display:grid;grid-template-columns:36% 64%}.chat-side{padding:18px;background:#171320;border-right:1px solid #ffffff16;overflow:auto}.side-video{width:100%;height:auto;min-height:0;aspect-ratio:16/9;position:relative;border-radius:14px;overflow:hidden;background:radial-gradient(ellipse at 50% 25%,#a87182,#57364f 60%,#171221);display:grid;place-items:center}.side-video video#selfTestVideo{position:absolute;z-index:3;right:10px;bottom:10px;width:100px;height:76px;object-fit:cover;border:1px solid #ffffffaa;border-radius:9px;background:#120f1a;transform:scaleX(-1)}.side-video video#freeVideo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:none;transform:scaleX(-1)}.side-video.video-live video#freeVideo{display:block}.side-video.video-live .avatar{display:none}.free-audio{position:absolute;right:9px;top:9px;z-index:2;border:1px solid #ffffff55;border-radius:999px;padding:6px 9px;background:#100d1add;color:#fff;font-size:10px}.avatar{width:72px;height:72px;display:grid;place-items:center;border-radius:50%;background:#d7a0ae;color:#261a2b;font:38px Georgia,serif}.avatar.big{width:min(160px,70%);height:auto;aspect-ratio:1;font-size:75px;box-shadow:0 25px 60px #0006}.avatar.photo{background-size:cover;background-position:center;color:transparent;font-size:0}.online-chip{position:absolute;left:10px;top:10px;padding:5px 9px;border-radius:999px;background:#0b0911cc;font-size:9px}.video-mask{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:20px;background:#050407eF;color:#eee;font:18px Georgia,serif}.hidden{display:none!important}.chat-side h2{font:500 25px Georgia,serif;margin:13px 0 0}.rate-box{margin-top:17px;padding:12px;border:1px solid #ffffff19;border-radius:10px;font-size:10px;color:var(--muted)}.rate-box b{display:block;color:var(--gold);font:19px Georgia,serif}.hint{color:#9f95a6;font-size:10px}.client-code{margin-top:12px;padding-top:10px;border-top:1px solid #ffffff16;color:#a99dad;font-size:9px}.client-code b{color:var(--gold);font-size:12px}.chat-main{min-width:0;display:flex;flex-direction:column}.chat-main>header,.room>header{padding:13px 17px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff18}.chat-main header b,.room header b{display:block;font:18px Georgia,serif}.chat-main header small,.room header small{display:block;color:var(--green);font-size:10px}.messages{padding:15px;flex:1;overflow:auto}.message{width:fit-content;max-width:82%;padding:9px 11px;margin:8px 0;border-radius:12px 12px 12px 3px;background:#2c2238;font-size:12px;overflow-wrap:anywhere}.message.mine{margin-left:auto;background:#563651;border-radius:12px 12px 3px 12px}.message small{display:block;font-size:9px;color:#c1afc4;margin-bottom:3px}.system-message{margin:6px auto 12px;text-align:center;color:#d8c5a4;font-size:10px;padding:8px}.compose{display:flex;gap:7px;padding:12px;border-top:1px solid #ffffff15}.compose input{flex:1;min-width:0}.compose button{white-space:nowrap}.chat-bottom{display:flex;justify-content:space-between;align-items:end;gap:8px;padding:0 12px 12px}.name-input{width:45%;color:#aaa0b0;font-size:9px}.name-input input{padding:7px;margin-top:3px;font-size:11px}.chat-bottom .btn{padding:9px 12px}.room-dialog{width:min(1200px,calc(100vw - 18px));height:min(760px,calc(100dvh - 18px));max-height:calc(100dvh - 18px);overflow:hidden}.room{height:100%;display:flex;flex-direction:column}.room-grid{flex:1;min-height:0;padding:14px;display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:12px}.remote{position:relative;background:#060509;border-radius:14px;overflow:hidden;display:grid;place-items:center}.remote video#remoteVideo{width:100%;height:100%;object-fit:contain}.room-placeholder{position:absolute;color:#ddd;font:18px Georgia,serif}.remote video#localVideo{position:absolute;right:14px;bottom:14px;width:150px;height:110px;object-fit:cover;border:1px solid #ffffff70;border-radius:10px;background:#171320;display:none;transform:scaleX(-1)}.timer{position:absolute;left:12px;top:12px;border-radius:999px;background:#120f1acc;padding:7px 10px;color:var(--gold);font-size:11px}.room-grid aside{display:flex;flex-direction:column;min-height:0;border:1px solid #ffffff18;border-radius:14px;background:#181421;padding:12px}.room-grid h3{margin:2px 0 10px;font:18px Georgia,serif}.room-chat{flex:1;overflow:auto}.room-chat .message{font-size:11px}.room-grid aside form{display:flex;gap:5px}.room-grid aside form button{border:0;border-radius:8px;background:var(--gold);padding:0 12px}.room-controls{display:flex;gap:6px;margin-top:8px}.room-controls button{flex:1;padding:7px 5px;background:#2d2635;border:1px solid #ffffff1c;border-radius:8px;color:#eee;font-size:9px}.toast{position:fixed;z-index:20;left:50%;bottom:20px;transform:translateX(-50%);background:#efdaa4;color:#241a2b;border-radius:999px;padding:10px 15px;font-size:11px;font-weight:750;opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1}
@media(max-width:850px){.top{padding-inline:16px}.top nav{gap:12px}.hero{gap:10px}.models{grid-template-columns:1fr}.steps{grid-template-columns:repeat(2,1fr)}.room-grid{grid-template-columns:minmax(0,1fr) 270px}}
@media(max-width:620px){.top{height:60px;padding-inline:12px}.top nav{display:none}.brand{font-size:13px}.top-right{gap:5px}.adult{display:none}.balance{font-size:9px;padding:6px 8px}.top-right .btn{padding:7px 9px;font-size:9px}.menu{display:none}.wrap{padding-inline:17px}.hero{grid-template-columns:1fr;padding-block:34px 20px}.hero h1{font-size:46px}.hero p{font-size:13px}.hero-art{height:245px;margin:0 -14px;transform:scale(.9)}.section{padding-block:34px}.section-head{display:block}.section-head h2{font-size:32px}.section-head p{margin-top:8px}.offers{grid-template-columns:1fr}.offers article{min-height:auto}.offers p{min-height:unset}.model{grid-template-columns:1fr}.portrait{min-height:205px}.figure{transform:scale(.82);transform-origin:bottom}.info{padding:17px}.steps{gap:3px}.steps>div{padding:10px}.contact{margin:25px 17px 38px;padding:18px;display:block}.contact .btn{margin-top:14px}.wide{height:calc(100dvh - 14px);width:calc(100vw - 14px);max-height:calc(100dvh - 14px)}.chat-shell{grid-template-columns:1fr;grid-template-rows:34% 66%}.chat-side{display:grid;grid-template-columns:90px 1fr;grid-template-rows:auto auto 1fr;column-gap:11px;padding:10px;border-right:0;border-bottom:1px solid #ffffff16}.side-video{grid-row:1/4;width:100%;height:auto;min-height:0;aspect-ratio:16/9}.avatar.big{width:65px;height:65px;font-size:36px}.online-chip{left:5px;top:5px;font-size:8px}.chat-side h2{font-size:21px;margin:2px 0}.chat-side .muted{margin:0}.rate-box{margin:4px 0;padding:6px 8px}.rate-box b{font-size:15px}.chat-side .hint{display:none}.client-code{display:none}.chat-main header{padding:8px 12px}.messages{padding:8px}.compose{padding:8px}.compose input{padding:9px}.chat-bottom{padding:0 8px 8px}.chat-bottom .btn{font-size:10px}.room-dialog{height:calc(100dvh - 8px);width:calc(100vw - 8px);max-height:calc(100dvh - 8px)}.room-grid{grid-template-columns:1fr;grid-template-rows:minmax(220px,1fr) minmax(190px,39%);padding:7px;gap:7px}.room-grid aside{padding:8px}.room-grid h3{font-size:14px;margin-bottom:5px}.room-grid .hint{display:none}.remote video#localVideo{width:90px;height:68px;right:8px;bottom:8px}.room-controls{margin-top:5px}.dialog-card{padding:23px}.dialog fieldset{margin:10px 0}}
.end-call-btn{white-space:nowrap;padding:10px 16px!important;font-size:12px!important}.local-pip[hidden]{display:none!important}.local-pip{position:absolute;z-index:6;right:14px;bottom:14px;width:170px;aspect-ratio:16/9;min-width:105px;max-width:60%;overflow:hidden;border:1px solid #ffffffa8;border-radius:10px;background:#171320;box-shadow:0 5px 20px #0009;touch-action:none;cursor:move;user-select:none}.remote .local-pip video#localVideo{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover;border:0;border-radius:0;display:block;transform:scaleX(-1)}.local-pip-size,.local-pip-resize{position:absolute;z-index:2;display:grid;place-items:center;width:26px;height:26px;border:1px solid #ffffff99;border-radius:7px;background:#100d1add;color:#fff;font-size:15px;line-height:1;touch-action:none}.local-pip-size{right:5px;top:5px}.local-pip-resize{right:3px;bottom:3px;border:0;background:#100d1abf;cursor:nwse-resize}.end-call-btn:focus-visible,.local-pip button:focus-visible{outline:2px solid #ffe0a0;outline-offset:2px}@media(max-width:620px){.end-call-btn{padding:8px 10px!important;font-size:10px!important}.local-pip{right:8px;bottom:8px;width:125px;max-width:55%}.local-pip-size,.local-pip-resize{width:24px;height:24px}}
.notice{white-space:pre-line}.age-check{display:flex;gap:8px;align-items:center;color:#e2d6e5;font-size:11px;margin:10px 0}.age-check input{accent-color:#dfc18a}
.video-overlay-tools{position:absolute;z-index:5;right:8px;bottom:8px;display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.side-video.video-size-small{width:70%;height:auto;min-height:0;aspect-ratio:16/9;margin-inline:auto}.side-video.video-size-medium{width:85%;height:auto;min-height:0;aspect-ratio:16/9;margin-inline:auto}.side-video.video-size-large{width:100%;height:auto;min-height:0;aspect-ratio:16/9}.room-grid .remote{width:100%;height:auto;min-height:0;aspect-ratio:16/9;align-self:center}.room-grid .remote.video-size-small{width:70%;height:auto;aspect-ratio:16/9;margin:auto}.room-grid .remote.video-size-medium{width:85%;height:auto;aspect-ratio:16/9;margin:auto}.room-grid .remote.video-size-large{width:100%;height:auto;aspect-ratio:16/9;margin:auto}.side-video:fullscreen,.remote:fullscreen{width:100vw!important;height:100vh!important;max-width:none!important;max-height:none!important;aspect-ratio:auto!important;margin:0!important;border-radius:0!important;background:#050407!important}.video-overlay-tools button{padding:6px 8px}
.portrait-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform-origin:center}.avatar.photo{position:relative;overflow:hidden}.avatar-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform-origin:center}

.retry-free-video{position:absolute;z-index:3;left:50%;bottom:12px;transform:translateX(-50%);border:1px solid #ffffff66;border-radius:999px;padding:7px 11px;background:#100d1add;color:#fff;font-size:10px}.retry-free-video[hidden]{display:none}

/* Photo crop stays within its own frame; keep the full uploaded image in Studio. */
.model{grid-template-columns:minmax(0,1fr)}
.portrait{overflow:hidden;width:100%;aspect-ratio:16/9;min-height:0}
.info{min-height:260px}
.portrait-photo{object-fit:cover}
/* Video is the main area in the free chat; chat remains directly beside it. */
.wide{width:min(1480px,calc(100vw - 32px));height:min(920px,calc(100dvh - 32px))}
.chat-shell{grid-template-columns:minmax(0,2.35fr) minmax(290px,.9fr)}
.side-video.video-size-small{width:84%;height:auto;aspect-ratio:16/9;margin-inline:auto}
.side-video.video-size-medium{width:94%;height:auto;aspect-ratio:16/9;margin-inline:auto}
.side-video.video-size-large{width:100%;height:auto;aspect-ratio:16/9}
.room-grid .remote.video-size-small{width:82%}
.room-grid .remote.video-size-medium{width:94%}
.room-grid .remote.video-size-large{width:100%}
.portrait-photo{clip-path:inset(0)}
@media(max-width:620px){.wide{width:calc(100vw - 14px);height:calc(100dvh - 14px)}.chat-shell{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,48%) minmax(0,52%)}.chat-side{display:block;overflow:auto;padding:9px 10px}.side-video,.side-video.video-size-small,.side-video.video-size-medium,.side-video.video-size-large{width:100%;height:auto;min-height:0;aspect-ratio:16/9;margin:0}.chat-side h2{font-size:17px;margin:4px 0 0}.chat-side .muted{font-size:10px}.rate-box{display:inline-flex;align-items:center;gap:8px;margin:3px 6px 0 0;padding:4px 8px}.rate-box b{font-size:12px}.chat-side .btn{padding:6px 9px;font-size:9px}.chat-side .hint,.client-code{display:none}.video-overlay-tools button{padding:4px 6px;font-size:9px}}

.pvt-quality{display:flex;align-items:center;gap:8px;padding:8px 10px;color:var(--muted);font-size:10px}.pvt-quality select{min-width:0;flex:1;padding:7px;background:#100d18;border:1px solid #493b55;border-radius:8px;color:#fff;font-size:10px}

.free-quality-picker{position:absolute;z-index:4;right:9px;top:48px;display:flex;align-items:center;gap:6px;border:1px solid #ffffff55;border-radius:999px;padding:5px 8px;background:#100d1add;color:#fff;font-size:10px}.free-quality-picker select{max-width:125px;border:0;outline:0;background:transparent;color:#fff;font-size:10px}.free-quality-picker option{background:#171320;color:#fff}

.profile-gallery{display:flex;gap:8px;overflow-x:auto;padding:8px 1px 3px;scrollbar-width:thin}.profile-thumb{flex:0 0 68px;width:68px;height:54px;padding:0;overflow:hidden;border:2px solid transparent;border-radius:9px;background:#120e1a;cursor:pointer}.profile-thumb.active{border-color:#f1c6d6;box-shadow:0 0 0 2px #e37ea855}.profile-thumb img{width:100%;height:100%;object-fit:cover}.shop-products{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}.shop-card{overflow:hidden;border:1px solid #ffffff20;border-radius:20px;background:linear-gradient(145deg,#251a2b,#17121f);box-shadow:0 14px 36px #0003}.shop-card>img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#231928}.shop-card-copy{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:17px}.shop-card-copy small{color:#e7afc5}.shop-card-copy h3{margin:0;font:25px Georgia,serif}.shop-card-copy p{min-height:48px;margin:0;color:#c6b9ca;line-height:1.5}.shop-card-copy .btn{margin-top:8px}.shop-disclaimer{max-width:920px;color:#a99cad;font-size:12px;line-height:1.6}.shop-total{padding:12px;border:1px solid #ffffff20;border-radius:12px;background:#ffffff08;font-weight:700}.shop-products .empty{padding:24px;border:1px solid #ffffff20;border-radius:16px;color:#c6b9ca}.shop-order-dialog .dialog-card{max-height:90dvh;overflow:auto}.shopOrderForm fieldset,.dialog-card fieldset{border:1px solid #ffffff25;border-radius:12px;padding:10px 14px;margin:12px 0}.dialog-card fieldset label{display:block;margin:8px 0}.dialog-card fieldset input{accent-color:#d98cae}
@media(max-width:640px){.profile-thumb{flex-basis:58px;width:58px;height:48px}.shop-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.shop-card-copy{padding:11px}.shop-card-copy h3{font-size:19px}.shop-card-copy p{font-size:12px;min-height:0}.shop-card-copy .btn{padding:9px 10px;font-size:12px}}

/* Compact product listing; open the full photo only on demand. */
.shop-card{display:flex;align-items:flex-start;gap:14px;padding:13px}.shop-card>.shop-photo-button{flex:0 0 106px;width:106px;height:106px;padding:0;overflow:hidden;border:1px solid #ffffff25;border-radius:13px;background:#17121f;cursor:zoom-in}.shop-card>.shop-photo-button img{display:block;width:100%;height:100%;object-fit:cover}.shop-card-copy{min-width:0;flex:1;padding:1px 2px}.shop-card-copy p{min-height:0}.shop-product-price{margin-top:5px}.shop-shipping-price{display:block;color:#e8c987;font-size:12px;line-height:1.5}.shop-photo-dialog{width:min(94vw,1000px);max-width:94vw;background:#100d1a;border:1px solid #ffffff30}.shop-photo-dialog::backdrop{background:#000d}.shop-photo-view{position:relative;display:grid;place-items:center;gap:8px;padding:34px 12px 10px}.shop-photo-view .x{position:absolute;right:5px;top:2px}.shop-photo-view img{display:block;max-width:100%;max-height:78dvh;object-fit:contain;border-radius:10px}.shop-photo-view p{margin:0;color:#eadde9;text-align:center}
@media(max-width:640px){.shop-card{gap:10px;padding:10px}.shop-card>.shop-photo-button{flex-basis:78px;width:78px;height:78px;border-radius:10px}.shop-card-copy{gap:5px}.shop-card-copy h3{font-size:18px}.shop-card-copy p{font-size:12px}.shop-shipping-price{font-size:10px}.shop-card-copy .btn{margin-top:4px}}

/* Selected silver and neon palette: only the page canvas brightens; cards and fields stay dark. */
body.theme-neon{color-scheme:light;--bg:#b9bcc5;--panel:#211b24;--panel2:#18151c;--text:#211c25;--muted:#625d68;--gold:#856700;--rose:#a30f6d;--green:#35d477;background:var(--bg);color:var(--text)}
body.theme-neon .top{background:#100d1aee;color:#f8f1eb;border-bottom-color:#ffffff24}
body.theme-neon nav{color:#d0c5d3}
body.theme-neon .hero p,body.theme-neon .section-head p{color:#37323d}
body.theme-neon .hero-art{background:radial-gradient(ellipse at 65% 40%,#35d47738,transparent 48%),radial-gradient(ellipse at 30% 70%,#f32da733,transparent 58%)}
body.theme-neon .hero h1 em{color:#a30f6d}
body.theme-neon .section-head h2,body.theme-neon .hero h1{color:#211c25}
body.theme-neon .model,body.theme-neon .offers article,body.theme-neon .how,body.theme-neon .contact,body.theme-neon .shop-card{color:#f8f1eb}
body.theme-neon .model{border-color:#28202e35}
body.theme-neon .offers article{border-color:#28202e35}
body.theme-neon .offers i,body.theme-neon .offers b,body.theme-neon .topic,body.theme-neon .model-foot b{color:#f5d52f}
body.theme-neon .how{border-color:#28202e24}
body.theme-neon .contact{border-color:#f32da766}
body.theme-neon .shop-disclaimer{color:#37323d}
body.theme-neon footer{color:#4b4650;border-color:#28202e28}
body.theme-neon footer b{color:#856700}
body.theme-neon footer a{color:#6e1551}
body.theme-neon .shop-card-copy small{color:#f0a3d2}
body.theme-neon .shop-card-copy p{color:#d4cbd7}
body.theme-neon .shop-products .empty{color:#f8f1eb}
.paid-chat-panel{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:9px 12px;background:#171320;border-top:1px solid #ffffff14;color:#f8f1eb}.paid-chat-status{flex:1;min-width:180px;font-size:10px;color:#c8bdcd}.paid-chat-status b{color:#f5d52f}.paid-chat-photo{display:block;width:min(240px,65vw);max-height:300px;object-fit:contain;border:1px solid #ffffff28;border-radius:11px;margin-top:5px;background:#100d16}.compose #paidPhotoButton{padding:8px 11px}
body.theme-neon .portrait{background:radial-gradient(ellipse at 70% 22%,#35d477,#35d47700 43%),radial-gradient(ellipse at 30% 87%,#f32da7,#f32da700 62%),linear-gradient(145deg,#28242d,#100d1a)}
body.theme-neon .portrait.alt{background:radial-gradient(ellipse at 70% 22%,#35d477,#35d47700 43%),radial-gradient(ellipse at 30% 87%,#f32da7,#f32da700 62%),linear-gradient(145deg,#28242d,#100d1a)}
body.theme-neon .card-art{border-color:#f5d52f;color:#f5d52f;background:radial-gradient(circle at 50% 42%,#3b3a25,#1d1629 72%),#191421}
body.theme-neon .dialog,body.theme-neon .chat-shell,body.theme-neon .chat-side,body.theme-neon .chat-main,body.theme-neon .room-grid{color:#f8f1eb}
body.theme-neon .dialog p,body.theme-neon .auth-card p{color:#c2b8c8}
body.theme-neon .chat-side .hint{color:#c7bdca}
body.theme-neon .shop-disclaimer{color:#37323d}

.chat-offer-prices{display:grid;gap:7px;margin:14px 0;padding:10px 11px;border:1px solid #ffffff18;border-radius:11px;background:#100d18}
.chat-offer-price{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:5px 0;border-bottom:1px solid #ffffff12;font-size:10px;color:#d8ccd9}
.chat-offer-price:last-child{border-bottom:0}
.chat-offer-price b{color:var(--gold);font:600 12px Georgia,serif;white-space:nowrap}
.chat-offer-price.free b{color:var(--gold)}

/* Client camera test preview: movable and resizable without covering video controls. */
.self-test-pip{position:absolute;z-index:8;left:0;top:0;width:min(230px,42%);aspect-ratio:16/9;border:1px solid #f4dfb6;border-radius:10px;overflow:hidden;background:#09070d;box-shadow:0 8px 28px #000b;touch-action:none}
.self-test-pip[hidden]{display:none!important}
.self-test-pip video#selfTestVideo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0;border-radius:0;transform:scaleX(-1);background:#09070d}
.self-test-drag{position:absolute;z-index:2;left:0;right:0;top:0;height:27px;padding:3px 8px;background:#100d1acc;color:#fff;font-size:10px;line-height:21px;cursor:move;touch-action:none;user-select:none}
.self-test-drag span{margin-left:4px}
.self-test-tools{position:absolute;z-index:3;right:5px;top:31px;display:flex;gap:4px}
.self-test-tools button,.self-test-resize{width:27px;height:27px;padding:0;border:1px solid #ffffff80;border-radius:7px;background:#100d1acc;color:#fff;font-size:17px;line-height:1}
.self-test-resize{position:absolute;z-index:3;right:0;bottom:0;border-radius:7px 0 0 0;cursor:nwse-resize;touch-action:none;font-size:13px}
#sideVideo.self-test-active .video-overlay-tools{right:auto;left:8px;bottom:8px;justify-content:flex-start}
#sideVideo.self-test-active .video-overlay-tools button{padding:4px 6px;font-size:9px}
@media(max-width:620px){.self-test-pip{width:min(190px,48%)}.self-test-drag{height:25px;line-height:19px;font-size:9px}.self-test-tools{top:29px}}
/* Drag the client preview directly; controls remain excluded from drag. */
.self-test-pip{cursor:move;touch-action:none;user-select:none}
.self-test-pip video#selfTestVideo{z-index:0;pointer-events:auto}
.self-test-drag{z-index:4;height:30px;background:#100d1aee;cursor:grab;pointer-events:auto}
.self-test-drag:active{cursor:grabbing}
.self-test-tools{z-index:5}
.self-test-resize{z-index:6}

/* Chat history must shrink inside its bounded window, never push controls out. */
#chatDialog .chat-shell{min-height:0;grid-template-rows:minmax(0,1fr);overflow:hidden}
#chatDialog .chat-main{min-height:0;overflow:hidden}
#chatDialog .messages{flex:1 1 0;min-height:0;min-width:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable}
#chatDialog .chat-main>header,#chatDialog .compose,#chatDialog .paid-chat-panel,#chatDialog .chat-bottom{flex:0 0 auto}
#chatDialog .chat-bottom{align-items:center;flex-wrap:wrap}
#chatDialog .chat-bottom .btn{max-width:100%;white-space:normal}
#roomDialog .room{min-height:0;overflow:hidden}
#roomDialog .room>header{flex:0 0 auto}
#roomDialog .room-grid{min-width:0;grid-template-rows:minmax(0,1fr);overflow:hidden}
#roomDialog .room-grid aside{min-width:0;overflow:hidden}
#roomDialog .room-chat{flex:1 1 0;min-height:0;min-width:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable}
#roomDialog aside>h3,#roomDialog aside>form,#roomDialog aside>.pvt-quality,#roomDialog aside>.room-controls,#roomDialog aside>.hint{flex:0 0 auto}
#roomDialog .room-grid aside form input{min-width:0;flex:1}
#roomDialog .room-controls{flex-wrap:wrap}
#roomDialog .room-controls button{min-width:0;flex:1 1 42%}
@media(max-width:620px){
 #chatDialog .chat-shell{grid-template-rows:minmax(0,30fr) minmax(0,70fr)}
 #roomDialog .room-grid{grid-template-rows:minmax(0,38fr) minmax(0,62fr)}
 #chatDialog .paid-chat-panel{padding:6px 8px;gap:5px}
 #chatDialog .paid-chat-status{min-width:0;flex-basis:100%}
 #chatDialog .chat-bottom .name-input{flex:1;min-width:80px}
 #chatDialog .chat-bottom .btn{font-size:10px;padding:7px 9px}
 #roomDialog .pvt-quality{padding:5px 0}
}
@media(max-height:520px){
 #chatDialog .compose{padding:5px 8px}
 #chatDialog .compose input{padding:6px 8px}
 #chatDialog .paid-chat-panel{padding:4px 8px;gap:3px}
 #chatDialog .chat-main>header{padding:5px 10px}
 #chatDialog .chat-bottom{padding-bottom:5px}
 #roomDialog aside>.hint{display:none}
 #roomDialog .room-grid aside{padding:6px}
 #roomDialog .room-grid h3{margin:0 0 3px;font-size:14px}
 #roomDialog .room-controls button{padding:4px}
}
