:root{--live-accent:#11b5a9}*{box-sizing:border-box}body,button,input,textarea,select{font-family:Alexandria,sans-serif}button{cursor:pointer}body[hidden], [hidden]{display:none!important}.auth-gate{position:fixed;z-index:10000;inset:0;overflow:auto;background:linear-gradient(145deg,#eefcfa,#d6efef);display:grid;place-items:center;padding:22px;color:#173b45}.auth-box{background:#ffffffeb;border:1px solid #bedad7;border-radius:28px;box-shadow:0 12px 50px #0a5a5a29;width:min(100%,420px);padding:30px 23px;text-align:center}.auth-box h1{font-family:Outfit,Alexandria,sans-serif;margin:3px;font-size:32px;color:#098e89}.auth-box p{font-size:13px}.auth-box form,.live-form{display:flex;flex-direction:column;gap:12px}.auth-box label,.live-form label{display:flex;flex-direction:column;gap:7px;text-align:right;font-size:13px}.auth-box input,.live-form input,.live-form textarea,.live-form select,.live-search input{border:1px solid #91c9c3;background:#fff;color:#17414b;padding:12px;border-radius:14px;outline-color:#17b4b0;width:100%}.auth-actions{display:flex;justify-content:space-around;gap:10px;padding-top:15px}.auth-actions button{background:none;border:0;color:#087d81;font-size:12px}.auth-status{min-height:24px;color:#c14140}.server-error{padding:12px;background:#fff0e8;border:1px solid #dfb1a0;border-radius:12px;color:#8d3315}.social-home,.me-settings-screen,.khas-view-wrapper{padding:14px}.live-form{margin:16px 0}.social-posts-list{display:grid;gap:14px}.live-post{border:1px solid #88c4bf70;background:#ffffffde;border-radius:18px;padding:16px;color:#204754;box-shadow:0 6px 18px #14515110}.live-post header{display:flex;justify-content:space-between;gap:12px;font-size:12px}.live-post p{line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}.live-search{display:flex;gap:8px}.live-search button,.live-result button,.live-conversations button{border:0;border-radius:10px;padding:11px;background:#15aeab;color:white}.live-result,.live-conversations button{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;margin:8px 0;border-radius:12px;background:#ecfbf9;color:#23565a}.live-dm-list{height:min(40vh,380px);overflow:auto;display:flex;flex-direction:column;gap:10px;padding:10px;background:#f5fffd;border-radius:12px}.live-bubble{max-width:83%;border-radius:12px;padding:10px;background:#cbeee8;color:#163b3e;align-self:flex-start;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}.live-bubble.mine{align-self:flex-end;background:#b7dfed}#toast{position:fixed;inset:auto 12px 85px;z-index:10050;width:max-content;max-width:90vw;left:50%;transform:translateX(-50%);padding:9px 16px;border-radius:16px;background:#163e43;color:white;opacity:0;pointer-events:none;transition:opacity .2s}#toast.visible{opacity:1}.room-live-footer{display:flex;align-items:center;gap:8px;padding:10px}.room-chat-form{flex:1}.room-seat-avatar.is-speaking{box-shadow:0 0 0 5px #14d1b599,0 0 20px #12c9b1}.rooms-grid .live-room-card{border:1px solid #7ad5c568;border-radius:20px;padding:16px;background:#ffffffcf;cursor:pointer;color:#183c44;display:flex;flex-direction:column;gap:10px;align-items:center;text-align:center}.rooms-grid .live-room-card img{height:90px;width:90px;border-radius:50%;object-fit:cover}.live-empty{padding:28px;text-align:center;color:#668385}.theme-night .live-post,.theme-night .live-room-card,.theme-night .live-result,.theme-night .live-conversations button{background:#263957;color:#ecf6f9}

/* Rooms are full screen: app headers disappear beneath the room overlay. */
.app-viewport .room-live-overlay{align-items:stretch;background:#fff}
.app-viewport .room-live-overlay .room-live-sheet{width:100%;height:100dvh;max-height:100dvh;border-radius:0;border:0;max-width:480px}
body.theme-night .app-viewport .room-live-overlay{background:#202b46}

/* SNTZ welcome gate: explicit sign-in / create-account entry points. */
.auth-gate{isolation:isolate;background:radial-gradient(circle at 15% 10%,#d2fff4 0,transparent 42%),linear-gradient(155deg,#faffff 0%,#eaf9f7 46%,#d4f0ef 100%);padding:clamp(16px,4vw,32px);min-height:100dvh}
.auth-backdrop-orb{position:absolute;z-index:-1;border-radius:50%;filter:blur(3px);pointer-events:none}
.auth-orb-one{width:320px;height:320px;top:-120px;left:-90px;background:#81ddd02c}
.auth-orb-two{width:260px;height:260px;bottom:-110px;right:-110px;background:#4abbda23}
.auth-box{position:relative;width:min(100%,440px);padding:clamp(23px,6vw,36px) clamp(19px,5vw,31px);box-shadow:0 24px 75px #236d7130,0 3px 12px #2c847916;background:#ffffffef;border-radius:30px;border:1px solid #ffffff}
.auth-emblem{width:106px;height:106px;margin:0 auto 9px;border-radius:30px;display:grid;place-items:center;background:linear-gradient(140deg,#f7ffff,#d4f5ed);border:1px solid #d4eee8;box-shadow:0 12px 28px #39aeaa26}
.auth-emblem img{width:83px;height:83px;object-fit:contain;filter:drop-shadow(0 4px 8px #0f8d8955)}
.auth-heading .auth-eyebrow{display:block;font-size:11px;color:#268c89;font-weight:700;letter-spacing:.1px}
.auth-heading h1{font-size:clamp(32px,8vw,42px);letter-spacing:3px;font-weight:800;line-height:1.25;margin:8px 0 5px;color:#087d7d}
.auth-heading>p{margin:0 0 24px;color:#5e858a;font-size:12px;line-height:1.7}
.auth-choices h2{font-size:15px;color:#164e56;margin:0 0 14px;text-align:right;font-weight:700}
.auth-choices{display:grid;gap:12px}
.auth-choice-btn{width:100%;display:flex;align-items:center;gap:11px;min-height:73px;border-radius:19px;padding:12px 15px;text-align:right;border:1px solid transparent;transition:transform .15s ease,box-shadow .15s ease}
.auth-choice-btn:active{transform:scale(.985)}
.auth-choice-btn>span:nth-child(2){flex:1;display:flex;flex-direction:column;gap:5px}
.auth-choice-btn strong{font-size:14px;font-weight:800}
.auth-choice-btn small{font-size:10px;font-weight:500;line-height:1.6}
.auth-choice-icon{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;font-size:25px;flex:none}
.auth-choice-arrow{font-size:25px;font-weight:700}
.auth-choice-primary{color:white;background:linear-gradient(110deg,#059b95,#12b8ac);box-shadow:0 10px 24px #11a59a43}
.auth-choice-primary .auth-choice-icon{background:#ffffff30}
.auth-choice-primary small{color:#e8ffff}
.auth-choice-outline{color:#1d7075;background:#f5fffd;border:1px solid #91dbd0}
.auth-choice-outline .auth-choice-icon{background:#dcf7f1;color:#008b83}
.auth-choice-outline small{color:#638a90}
.auth-flow-heading{display:flex;align-items:center;gap:13px;margin:0 0 20px;text-align:right}
.auth-flow-heading h2{margin:0 0 6px;font-size:17px;font-weight:800;color:#18555b}
.auth-flow-heading p{margin:0;color:#62868a;font-size:11px;line-height:1.65}
.auth-back{width:40px;height:40px;flex:none;display:grid;place-items:center;background:#e2f6f1;color:#167e7a;border:0;border-radius:13px;font-size:22px}
.auth-box form{gap:14px}
.auth-box label{font-size:12px;color:#275e62;font-weight:600}
.auth-box input{height:46px;border:1px solid #b6dad8;border-radius:13px;padding:11px 13px;direction:ltr;text-align:left;font-size:13px;background:#fcfffe;outline-offset:2px}
.auth-box input:focus{border-color:#03a7a1;box-shadow:0 0 0 3px #0baf9e1c}
.auth-box input::placeholder{color:#9aafb2}
.auth-submit{min-height:48px;border:0;border-radius:14px;background:linear-gradient(110deg,#0d9f99,#12b8ac);color:white;font-size:14px;font-weight:800;box-shadow:0 9px 20px #0ba89c36;margin-top:4px}
.auth-submit:disabled{opacity:.55;cursor:not-allowed}
.auth-actions{justify-content:space-between;align-items:center;padding:6px 0 0}
.auth-actions button{text-decoration:underline;text-underline-offset:3px;font-size:11px;font-weight:600}
.auth-status{font-size:12px;line-height:1.7;min-height:0;margin:8px 0 2px;overflow-wrap:anywhere}
.auth-status:empty{display:none}
.auth-footer{border-top:1px solid #dcefeb;margin-top:24px;padding-top:15px;font-size:10px;color:#6a9492;display:flex;align-items:center;justify-content:center;gap:7px}
.auth-box .server-error{margin:10px 0 17px;font-size:11px;line-height:1.7;text-align:right}
@media(max-width:360px){.auth-box{padding:18px 16px}.auth-emblem{width:87px;height:87px}.auth-emblem img{width:68px;height:68px}.auth-choice-btn{min-height:67px}}
@media(prefers-reduced-motion:reduce){.auth-choice-btn{transition:none}}


/* SNTZ reference layouts — real, responsive HTML forms (not screenshot overlays). */
.auth-gate{--auth-ink:#003d44;--auth-teal:#16a4a6;--auth-cream:#fffaf0;position:fixed;inset:0;z-index:10000;display:block;overflow-y:auto;overscroll-behavior:contain;background:var(--auth-cream);color:var(--auth-ink);padding:0;isolation:isolate}
.auth-gate::before,.auth-gate::after{content:"";pointer-events:none;position:absolute;z-index:-1;background:linear-gradient(120deg,#cef5ed,#b5eae3);opacity:.85}
.auth-gate::before{width:min(60vw,450px);height:190px;top:-110px;right:-50px;border-radius:0 0 65% 80%;transform:rotate(16deg)}
.auth-gate::after{width:125vw;height:200px;bottom:-122px;left:-16vw;border-radius:45% 80% 0 0;transform:rotate(-3deg)}
.auth-icons-sprite{position:absolute;width:0;height:0;overflow:hidden}
.auth-shell{width:min(100%,570px);margin:0 auto;min-height:100dvh;display:flex;flex-direction:column;align-items:stretch;padding:max(20px,env(safe-area-inset-top)) clamp(20px,5vw,38px) max(22px,env(safe-area-inset-bottom));position:relative}
.auth-topline{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;flex:none}
.auth-brand{display:flex;align-items:center;direction:ltr;gap:8px;font-family:Arial,Alexandria,sans-serif;font-size:clamp(29px,7vw,39px);letter-spacing:-1.3px;font-weight:900;color:#043f43;line-height:1}
.auth-brand>span:last-child{background:linear-gradient(95deg,#023d45 0%,#07525c 52%,#38c6be 55%,#35c5c1 100%);background-clip:text;-webkit-background-clip:text;color:transparent}
.auth-brand-play{width:35px;height:35px;border-radius:12px 12px 12px 3px;background:linear-gradient(150deg,#58d4ce,#087f85);color:#dcfffc;display:grid;place-items:center;box-shadow:inset 1px 1px 1px #b5fffa,0 3px 7px #199b9a28}
.auth-brand-play svg{width:23px;height:23px}
.auth-support{border:1.4px solid #38aeb1;background:#fcfcf5bb;color:#06707c;display:flex;gap:8px;align-items:center;justify-content:center;border-radius:999px;min-height:40px;padding:5px 15px;font-size:15px;font-weight:800}
.auth-support svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.auth-content{width:100%;max-width:490px;margin:0 auto;flex:1;display:flex;flex-direction:column;align-items:stretch}
.auth-hero{width:min(100%,320px);margin:clamp(16px,3.5vh,42px) auto 8px;height:clamp(163px,27vh,255px);display:flex;align-items:center;justify-content:center}
.auth-hero img{display:block;width:100%;height:100%;object-fit:contain}
.auth-title{text-align:center;margin:5px 0 clamp(22px,4vh,41px)}
.auth-title h1{font-size:clamp(24px,5.7vw,34px);line-height:1.65;font-weight:800;color:#003d44;margin:0;white-space:normal}
.auth-title h1 em{font-style:normal;color:#38bcb5}
.auth-title-underline{display:block;width:105px;height:6px;margin:6px auto 0;border-top:4px solid #83dcd4;border-radius:50% 50% 0 0;transform:rotate(-2deg)}
.auth-title p{font-size:clamp(13px,3vw,17px);margin:10px 0 0;color:#698991;line-height:1.7}
.auth-form{display:flex;flex-direction:column;gap:clamp(11px,2vh,18px);width:100%}
.auth-field{width:100%}
.auth-input-wrap{display:flex;align-items:center;direction:ltr;height:clamp(57px,8vh,74px);border:1.4px solid #bfe3df;border-radius:100px;background:#fffdf8e6;box-shadow:0 8px 20px #126d6521;transition:border-color .2s,box-shadow .2s;overflow:hidden;gap:12px;padding:0 16px}
.auth-input-wrap:focus-within{border-color:#27b9b7;box-shadow:0 0 0 3px #27b9b722,0 8px 22px #126d651b}
.auth-field-icon{display:grid;place-items:center;width:45px;height:45px;flex:none;background:linear-gradient(135deg,#e8f8f6,#d9f3ef);border-radius:50%;color:#168e91}
.auth-field-icon svg{width:24px;height:24px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}
.auth-input-wrap input{border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;height:100%;min-width:0;width:100%;padding:0!important;direction:rtl;text-align:right;font-size:clamp(13px,3.3vw,17px);color:#134f54}
.auth-input-wrap input::placeholder{color:#899ba2;opacity:1}
.auth-reveal{height:39px;width:39px;border:0;background:transparent;color:#50888e;flex:none;display:grid;place-items:center;padding:6px}
.auth-reveal svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.auth-reveal[aria-pressed=true]{color:#0baca6}
.auth-password-help{text-align:left;margin:-3px 8px -5px}
.auth-password-help button{border:0;background:transparent;color:#0c9292;font-size:11px;text-decoration:underline;cursor:pointer}
.auth-submit{display:flex;align-items:center;justify-content:center;gap:15px;border:0;border-radius:100px;min-height:clamp(60px,8.3vh,77px);padding:11px 22px;background:linear-gradient(135deg,#35bdbc,#09a4a7);color:#fff;font-weight:800;font-size:clamp(17px,4vw,23px);box-shadow:0 12px 25px #159fa92f;margin-top:clamp(6px,2vh,17px)}
.auth-submit svg{background:#fff;stroke:#18a7a6;stroke-width:2.6;fill:none;border-radius:50%;height:32px;width:32px;padding:7px;stroke-linecap:round;stroke-linejoin:round}
.auth-submit:disabled{opacity:.5;cursor:not-allowed}
.auth-status{min-height:0;margin:7px 0 0;text-align:center;font-size:12px;line-height:1.7;color:#b14935}
.auth-status:empty{display:none}
.auth-switch{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;margin:clamp(22px,5vh,44px) 0 16px;font-size:clamp(13px,3.2vw,16px);color:#043c44}
.auth-switch button{border:0;background:transparent;color:#099d9e;font-weight:800;font-size:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:6px;display:flex;align-items:center;gap:7px;padding:3px}
.auth-switch svg{width:22px;height:22px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}
.auth-bottom-brand{flex:none;margin:28px auto 0;text-align:center;color:#51bcb7;font-family:Arial,Alexandria,sans-serif;letter-spacing:3px;font-size:12px}
.auth-bottom-line{display:flex;align-items:center;justify-content:center;gap:15px;margin-bottom:10px}
.auth-bottom-line span{width:78px;height:1.5px;background:#6bc8c0}
.auth-bottom-line b{font-weight:normal;font-size:31px;line-height:1}
.auth-bottom-brand small{font-size:9px}
.auth-gate .server-error{font-size:12px;line-height:1.7;margin:0 0 15px;padding:12px}
.auth-mode-signup .auth-hero{margin-top:12px;height:clamp(134px,22vh,185px)}
.auth-mode-signup .auth-title{margin:0 0 clamp(14px,2.6vh,25px)}
.auth-mode-signup .auth-title h1{font-size:clamp(27px,6vw,35px)}
.auth-mode-signup .auth-form{gap:clamp(10px,1.7vh,16px)}
.auth-mode-signup .auth-input-wrap{direction:rtl;height:clamp(53px,7.1vh,64px);border-radius:24px;background:#fffcf8de;box-shadow:none;border:1px solid #d5dcdd;padding:0 15px}
.auth-mode-signup .auth-field-icon{background:transparent;color:#346b7a;width:30px;height:32px}
.auth-mode-signup .auth-field-icon svg{height:22px;width:22px}
.auth-mode-signup .auth-input-wrap input{font-size:clamp(13px,3.2vw,16px)}
.auth-mode-signup .auth-field-phone .auth-input-wrap{background:linear-gradient(100deg,#effbf6,#e8f5ef);border-color:transparent}
.auth-mode-signup .auth-reveal{color:#61828c}
.auth-terms{display:flex;align-items:flex-start;gap:9px;font-size:clamp(10px,2.6vw,13px);color:#597781;line-height:1.9;margin:2px 6px}
.auth-terms input{width:19px;height:19px;flex:none;accent-color:#17aaa8;margin-top:4px}
.auth-terms label{display:inline;flex:1}
.auth-inline-link{display:inline!important;border:0;background:transparent;padding:0;color:#089b9d;font-weight:700;text-decoration:underline;text-underline-offset:3px;font-size:inherit;cursor:pointer}
.auth-mode-signup .auth-submit{margin-top:0;min-height:clamp(58px,8vh,70px)}
.auth-mode-signup .auth-switch{margin:23px 0 5px}
.auth-mode-signup .auth-bottom-brand{display:none}
.auth-dialog-overlay{position:fixed;inset:0;z-index:10030;background:#063d4480;display:grid;place-items:center;padding:20px}
.auth-dialog{max-width:470px;width:100%;max-height:85vh;overflow-y:auto;position:relative;background:#fffef9;border-radius:24px;padding:25px 22px;color:#194f56;box-shadow:0 20px 70px #063b4380;line-height:1.9;text-align:right}
.auth-dialog h2{font-size:21px;margin:0 0 10px;color:#087b7a}
.auth-dialog p{margin:8px 0;font-size:13px}
.auth-dialog-close{position:absolute;top:11px;left:14px;border:0;background:#e4f7f2;border-radius:50%;font-size:24px;width:35px;height:35px;color:#107f7b}
.auth-dialog-ok{border:0;border-radius:12px;background:#12aca7;color:white;font-weight:700;padding:10px 30px;margin-top:12px}
@media (max-width:375px){.auth-shell{padding-left:15px;padding-right:15px}.auth-brand{font-size:29px}.auth-hero{height:150px;margin-top:12px}.auth-title{margin-bottom:17px}.auth-title h1{font-size:23px}.auth-input-wrap{height:55px}.auth-switch{margin-top:16px}.auth-bottom-brand{margin-top:14px}.auth-mode-signup .auth-hero{height:115px}.auth-mode-signup .auth-title p{margin-top:0}}
@media (min-width:650px){.auth-shell{max-width:860px}.auth-content{max-width:490px}.auth-hero{height:250px;width:390px}}
@media (max-height:700px){.auth-hero{height:140px;margin-top:6px}.auth-mode-signup .auth-hero{height:100px}.auth-title{margin-bottom:15px}.auth-title h1{font-size:23px}.auth-input-wrap{height:51px}.auth-form{gap:9px}.auth-switch{margin-top:16px}.auth-mode-signup .auth-input-wrap{height:50px}}
@media(prefers-reduced-motion:reduce){.auth-input-wrap{transition:none}}

.auth-submit{flex-direction:row-reverse}
.auth-mode-signup .auth-submit svg{background:transparent;stroke:#fff;padding:4px}
