:root{--bg:#0a1224;--bg2:#12233f;--mint:#71f0d3;--txt:#e8eef8;--muted:#aab8cf}
*{box-sizing:border-box}body{margin:0;color:var(--txt);font-family:Inter,system-ui,sans-serif;background:radial-gradient(circle at 20% 20%,#16315d 0,#0a1224 45%,#060b18 100%)}
.container{max-width:1120px;margin:0 auto;padding:28px 16px 40px}.home-link{display:inline-flex;align-items:center;gap:.35rem;margin:.75rem 0 1rem;color:var(--txt);font-size:.9rem;text-decoration:none;opacity:.9}.home-link:hover{opacity:1}
.sub{color:var(--muted)}
.badge-row{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 18px}.badge{background:rgba(113,240,211,.14);border:1px solid rgba(113,240,211,.4);padding:6px 10px;border-radius:999px;font-size:12px}
.grid{display:grid;grid-template-columns:1.1fr 1.4fr;gap:14px}.card{background:rgba(255,255,255,.08);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.15);border-radius:20px;padding:16px;box-shadow:0 20px 45px rgba(0,0,0,.32)}
.btn{border-radius:12px;padding:11px 14px;border:1px solid rgba(255,255,255,.4);background:#1b2e55;color:white;cursor:pointer}.btn.primary{background:linear-gradient(90deg,#2a6ee8,#25cfb4)}.btn:disabled{opacity:.55;cursor:not-allowed}
.status{color:#d7e3f7}.status.loading{color:var(--mint);font-weight:700}
.vrmt-camera-frame{position:relative;overflow:hidden;border-radius:16px;background:#04070e;aspect-ratio:4/3}
#vrmtCameraVideo,.vrmt-snapshot{width:100%;height:100%;object-fit:cover}#vrmtCameraVideo{transform:scaleX(-1)}.vrmt-snapshot{display:none}
.vrmt-face-guide{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.vrmt-guide-circle{width:62%;height:78%;border:3px solid rgba(255,255,255,.85);border-radius:999px}
.vrmt-guide-cross-h,.vrmt-guide-cross-v{position:absolute;background:rgba(255,255,255,.55)}.vrmt-guide-cross-h{width:50%;height:2px;left:25%;top:50%}.vrmt-guide-cross-v{width:2px;height:50%;left:50%;top:25%}
.vrmt-face-guide.vrmt-aligned .vrmt-guide-circle{border-color:#2ee57e;box-shadow:0 0 16px rgba(46,229,126,.8)}
.report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.report-item{background:rgba(255,255,255,.07);padding:10px;border-radius:12px}
.safety{margin-top:10px;color:#fde68a;font-size:13px}details{margin-top:10px}
@media(max-width:900px){.grid{grid-template-columns:1fr}.camera-card{order:-1}.report-grid{grid-template-columns:1fr}}

.language-select{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-bottom:14px}.language-label{color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.language-buttons{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.language-buttons button,.lang-btn{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;min-width:72px;min-height:72px;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.08);color:#dbeafe;border-radius:999px;padding:6px;box-shadow:0 10px 28px rgba(0,0,0,.2);cursor:pointer;overflow:hidden;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}.language-buttons button img,.lang-btn img{width:60px;height:60px;border-radius:999px;object-fit:cover;object-position:72% 24%;border:1px solid rgba(255,255,255,.5);background:#eaf7ff}.lang-btn[data-lang="en"] img{object-position:74% 24%}.lang-btn[data-lang="ko"] img,.lang-btn[data-lang="vi"] img,.lang-btn[data-lang="ja"] img,.lang-btn[data-lang="zh"] img,.lang-btn[data-lang="ar"] img{object-position:72% 24%}.language-buttons button:hover,.language-buttons button:focus-visible,.lang-btn:hover,.lang-btn:focus-visible{border-color:var(--mint);box-shadow:0 0 0 3px rgba(113,240,211,.18),0 14px 30px rgba(0,0,0,.24);outline:none;transform:translateY(-2px)}.language-buttons button.active,.lang-btn.active,.lang-btn.is-active,.lang-btn[aria-pressed="true"]{background:rgba(56,189,248,.18);color:#fff;border-color:rgba(125,211,252,1);box-shadow:0 0 24px rgba(56,189,248,.9),0 0 0 3px rgba(113,240,211,.22)}

.ai-booth-link{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:24px;align-items:center;margin:32px 0 28px;padding:28px;border:1px solid rgba(125,211,252,.28);border-radius:24px;background:radial-gradient(circle at 10% 0%,rgba(125,211,252,.18),transparent 34%),linear-gradient(145deg,rgba(15,23,42,.92),rgba(2,8,23,.86));box-shadow:0 24px 70px rgba(0,0,0,.28)}.ai-booth-link__eyebrow{margin:0 0 10px;color:#7dd3fc;font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.ai-booth-link h2{margin:0 0 12px;color:#f8fafc;font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.18;letter-spacing:-.04em}.ai-booth-link p{color:#cbd5e1}.ai-booth-link__notice{display:inline-block;margin:12px 0 18px;padding:10px 12px;border:1px solid rgba(125,211,252,.28);border-radius:14px;background:rgba(125,211,252,.08);font-size:.92rem}.ai-booth-link__button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border-radius:999px;background:linear-gradient(135deg,#7dd3fc,#d9b978);color:#020617;font-weight:800;text-decoration:none}.ai-booth-link__media{margin:0;overflow:hidden;border-radius:20px;border:1px solid rgba(226,232,240,.18);background:rgba(255,255,255,.06)}.ai-booth-link__media img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.ai-booth-link__media figcaption{padding:10px 12px;color:#94a3b8;font-size:.82rem;border-top:1px solid rgba(226,232,240,.14)}

.language-switcher,
.language-buttons {display:flex;flex-wrap:wrap;gap:12px;}

@media(max-width:900px){.language-select,.language-buttons{justify-content:flex-start}.language-buttons{gap:12px}.language-buttons button,.lang-btn{width:84px;height:84px;min-width:84px;min-height:84px}.language-buttons button img,.lang-btn img{width:72px;height:72px}.ai-booth-link{grid-template-columns:1fr;padding:22px;margin:30px 0}.ai-booth-link__button{width:100%}}

/* Keep the AI skin tool shell LTR; only Arabic text blocks render RTL. */
html[lang="ar"],html[lang="ar"] body,html[lang="ar"] .page,html[lang="ar"] .hero,html[lang="ar"] .container {direction:ltr;}
html[lang="ar"] [data-i18n],html[lang="ar"] .report-item,html[lang="ar"] .safety {direction:rtl;unicode-bidi:plaintext;text-align:right;}
html[lang="ar"] .language-buttons,html[lang="ar"] .report-grid,html[lang="ar"] .actions {direction:ltr;}

.premium-panel{margin:18px 0 22px;padding:22px;border:1px solid rgba(217,185,120,.65);border-radius:22px;background:linear-gradient(135deg,rgba(217,185,120,.18),rgba(37,207,180,.12));box-shadow:0 18px 45px rgba(0,0,0,.25)}
.premium-access-badge,.premium-chip{display:inline-flex;align-items:center;gap:6px;margin-bottom:10px;padding:7px 11px;border-radius:999px;background:rgba(217,185,120,.22);border:1px solid rgba(217,185,120,.75);color:#fde68a;font-size:.78rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.premium-panel h2{margin:.2rem 0 .75rem;color:#fff;font-size:clamp(1.35rem,3vw,2rem)}.privacy-notice{margin-top:12px;padding:12px;border-radius:14px;background:rgba(15,23,42,.42);border:1px solid rgba(148,163,184,.28);color:#dbeafe;font-size:.92rem}.premium-confirm,.premium-actions{display:none}.premium-mode .premium-confirm{display:flex;align-items:flex-start;gap:10px;margin:14px 0;color:#e0f2fe;font-size:.94rem}.premium-mode .premium-confirm input{margin-top:4px;accent-color:#25cfb4}.premium-mode .premium-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.quality-panel{margin:14px 0;padding:14px;border:1px solid rgba(125,211,252,.35);border-radius:16px;background:rgba(2,8,23,.35)}.quality-panel h3{margin:0 0 8px;color:#bfdbfe}.quality-list{margin:0 0 10px 1.1rem;padding:0;color:#d7e3f7}.quality-result{padding:10px 12px;border-radius:12px}.quality-result.pending{background:rgba(125,211,252,.12);color:#dbeafe}.quality-result.good{background:rgba(34,197,94,.14);border:1px solid rgba(34,197,94,.34);color:#dcfce7}.quality-result span{color:#fde68a}.quality-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.premium-info-card{margin:14px 0 4px;padding:14px;border-radius:16px;border:1px solid rgba(217,185,120,.5);background:rgba(217,185,120,.12);color:#fff7ed}.premium-report-head{margin-bottom:18px}.premium-report-head h2{margin:.25rem 0 .5rem}.score-card{display:grid;grid-template-columns:220px 1fr;gap:16px;align-items:center;margin-bottom:14px;padding:18px;border-radius:18px;background:linear-gradient(135deg,rgba(37,207,180,.18),rgba(42,110,232,.14));border:1px solid rgba(125,211,252,.32)}.score-card span,.score-card em{display:block;color:#bfdbfe}.score-card strong{font-size:4rem;line-height:1;color:#fff}.premium-section{margin-top:14px;padding:16px;border-radius:18px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12)}.premium-section h3{margin-top:0;color:#f8fafc}.score-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.score-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;padding:10px;border-radius:12px;background:rgba(2,8,23,.28)}.score-row i{grid-column:1/-1;height:8px;border-radius:999px;background:linear-gradient(90deg,#25cfb4 var(--score),rgba(255,255,255,.18) var(--score))}.zone-grid,.routine-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.premium-cta-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.premium-cta-row .btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.invalid-premium-mode .status{color:#fde68a}
@media(max-width:720px){.score-card,.score-grid,.zone-grid,.routine-grid{grid-template-columns:1fr}.score-card strong{font-size:3.25rem}.premium-actions .btn,.quality-actions .btn,.premium-cta-row .btn{width:100%}}
.premium-step-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0}.premium-step-row span{display:flex;align-items:center;justify-content:center;min-height:38px;padding:8px;border-radius:999px;background:rgba(37,207,180,.12);border:1px solid rgba(125,211,252,.28);color:#dffcf7;font-size:.82rem;font-weight:800;text-align:center}.premium-panel--active{position:relative;overflow:hidden}.premium-panel--active::before{content:"";position:absolute;inset:0 0 auto;min-height:5px;background:linear-gradient(90deg,#d9b978,#25cfb4,#2a6ee8)}
@media(max-width:720px){.premium-step-row{grid-template-columns:1fr 1fr}.premium-step-row span{border-radius:14px}}
.premium-unlock-card{margin:14px 0;padding:14px;border-radius:16px;border:1px solid rgba(217,185,120,.5);background:rgba(217,185,120,.12);color:#fff7ed}.premium-unlock-card strong{display:block;margin-bottom:6px;color:#fde68a}.premium-unlock-card p{margin:0;color:#e8eef8}
.qr-scan-modal{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:18px;background:rgba(2,8,23,.76);backdrop-filter:blur(10px)}.qr-scan-dialog{width:min(560px,100%);max-height:92vh;overflow:auto;padding:22px;border-radius:22px;border:1px solid rgba(125,211,252,.35);background:#0b1220;box-shadow:0 30px 90px rgba(0,0,0,.55)}.qr-scan-dialog h2{margin-top:0}.qr-scan-video{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:16px;background:#020617;border:1px solid rgba(255,255,255,.16)}.qr-scan-result{padding:10px 12px;border-radius:12px;background:rgba(125,211,252,.12);color:#dbeafe}.qr-scan-result.success{background:rgba(34,197,94,.14);border:1px solid rgba(34,197,94,.34);color:#dcfce7}.qr-scan-result.error{background:rgba(248,113,113,.14);border:1px solid rgba(248,113,113,.34);color:#fee2e2}.qr-scan-actions{flex-wrap:wrap}.qr-manual-code{margin-top:12px}.qr-manual-code input{width:100%;margin:10px 0;padding:11px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.08);color:#fff}
.report-grid--free{grid-template-columns:repeat(2,minmax(0,1fr))}.premium-score-card{background:radial-gradient(circle at 0 0,rgba(217,185,120,.24),transparent 34%),linear-gradient(135deg,rgba(37,207,180,.22),rgba(42,110,232,.18))}.photo-quality-grid,.concern-grid,.premium-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.premium-score-row{align-items:start}.premium-score-row span,.premium-score-row strong,.premium-score-row i{align-self:center}.premium-score-row p{grid-column:1/-1;margin:.25rem 0 0;color:#dbeafe;font-size:.92rem;line-height:1.55}.premium-score-row p b,.concern-card b,.zone-grid b,.premium-detail-grid b{color:#fde68a}.routine-grid li{margin-bottom:10px}.routine-grid li p{margin:.3rem 0 0;color:#dbeafe;line-height:1.55}.premium-detail-grid .report-item,.concern-card{border:1px solid rgba(217,185,120,.18)}.premium-cta-card{background:linear-gradient(135deg,rgba(217,185,120,.15),rgba(37,207,180,.13));border-color:rgba(217,185,120,.35)}
@media(max-width:720px){.report-grid--free,.photo-quality-grid,.concern-grid,.premium-detail-grid{grid-template-columns:1fr}}

.language-buttons{gap:18px}
.language-buttons button,.lang-btn{width:96px;height:96px;min-width:96px;min-height:96px}
.language-buttons button img,.lang-btn img{width:78px;height:78px}
@media (max-width:768px){.language-buttons{gap:10px;justify-content:center}.language-buttons button,.lang-btn{width:68px;height:68px;min-width:68px;min-height:68px}.language-buttons button img,.lang-btn img{width:56px;height:56px}}

/* unified language character ui */
.language-character-group{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap}
.lang-character-btn{width:88px;height:88px;padding:3px;border-radius:999px;border:1px solid rgba(135,190,255,.45);background:rgba(8,24,48,.72);box-shadow:0 10px 28px rgba(0,0,0,.32);display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease}
.lang-character-btn img,.lang-character-img{width:82px;height:82px;border-radius:50%;object-fit:contain!important;background:transparent!important;display:block;box-shadow:none!important}
.lang-character-btn:hover{transform:translateY(-3px);border-color:rgba(90,220,255,.95);box-shadow:0 0 30px rgba(70,205,255,.4)}
.lang-character-btn.active,.lang-character-btn[aria-pressed="true"],.lang-character-btn.is-active{border-color:rgba(115,255,230,.98);background:rgba(12,42,72,.9);box-shadow:0 0 0 3px rgba(115,255,230,.18),0 0 34px rgba(90,220,255,.58)}
@media (max-width:768px){.language-character-group{justify-content:center;gap:10px}.lang-character-btn{width:64px;height:64px;padding:2px}.lang-character-btn img,.lang-character-img{width:60px;height:60px}}
