:root{--ink:#183d45;--teal:#197b80;--muted:#71878b;--line:#dbe7e7;--soft:#f2f7f6}*{box-sizing:border-box}body{margin:0;color:var(--ink);font:15px/1.55 'Segoe UI',Arial,sans-serif;background:#eef4f3;min-height:100vh}a{color:var(--teal);text-decoration:none}button,input{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #dcaa65;outline-offset:4px}.ambient{position:fixed;inset:0;z-index:-1;background:radial-gradient(ellipse at 7% 18%,#cfe5df 0,transparent 45%),radial-gradient(ellipse at 90% 88%,#fae9d6 0,transparent 40%),#f1f6f4}header{max-width:1320px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:28px 44px;border-bottom:1px solid #d8e5e1}.brand{display:flex;align-items:center;gap:16px;color:var(--ink);font-size:13px;font-weight:750;letter-spacing:1px}.brand small{display:block;font-weight:400;font-size:12px;letter-spacing:.4px;color:var(--muted)}.logo{font:italic 42px Georgia,serif;letter-spacing:-4px;color:#17656b;border-right:1px solid #bdcfc9;padding-right:18px}.logo span{font:18px Arial;letter-spacing:0;padding-left:5px}.header-right{display:flex;align-items:center;gap:24px}.season{font-size:13px;color:#6f8681}.auth-layout{max-width:1170px;margin:55px auto 44px;padding:0 32px;display:grid;grid-template-columns:1.1fr 1fr;gap:84px;align-items:center}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#65857f}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#b58c54;margin-right:8px;vertical-align:middle}.welcome h1{font:52px/1.09 Georgia,serif;letter-spacing:-1.7px;margin:22px 0 18px}.welcome h1 em{font-weight:400;color:#25817f}.welcome>p{color:#718783;line-height:1.85;font-size:15px}.winter-art{height:226px;position:relative;overflow:hidden;margin-top:28px;border-radius:90px 90px 22px 22px;background:linear-gradient(#c9dfe0,#e5f0e8);isolation:isolate}.winter-art:after{content:'·    ✧      ·      ·     ❄      ·';position:absolute;inset:12px 18px;color:white;font-size:29px;letter-spacing:8px}.moon{position:absolute;right:74px;top:24px;width:48px;height:48px;border-radius:50%;background:#fff9df;box-shadow:0 0 40px #fff6cd}.mountain{position:absolute;bottom:-130px;width:420px;height:270px;background:#b5cfca;transform:rotate(-25deg);border-radius:45%}.mountain.a{left:-130px;bottom:-90px}.mountain.b{right:-110px;background:#91b6af;transform:rotate(35deg);bottom:-115px}.tree{position:absolute;bottom:28px;font-size:160px;line-height:1;color:#477e73;transform:scaleX(.7)}.t1{left:0}.t2{left:61px;font-size:110px;bottom:24px;color:#719e8c}.t3{right:6px;font-size:145px;color:#629484}.cabin{position:absolute;left:47%;bottom:31px;width:90px;height:63px;border-radius:3px;background:#c29c7c;box-shadow:inset 0 -11px #ae876b}.cabin:before{content:'';position:absolute;left:-14px;top:-36px;border-left:59px solid transparent;border-right:59px solid transparent;border-bottom:42px solid #fbfcf2;filter:drop-shadow(0 5px #567e76)}.cabin span{position:absolute;left:32px;top:16px;background:#ffdf92;width:27px;height:25px;text-align:center;color:#b18b56;box-shadow:0 0 23px #ffe8ad}.snowbank{position:absolute;bottom:-28px;left:-10%;width:120%;height:67px;background:#f3f8f3;border-radius:50%}.art-note{position:absolute;bottom:8px;left:0;right:0;text-align:center;font:italic 16px Georgia;color:#4e7770}.welcome-bottom{display:flex;justify-content:space-between;font-size:10px;color:#718980;margin-top:20px}.auth-card{background:#fffffff0;border:1px solid #fff;border-radius:23px;padding:35px 38px;box-shadow:0 18px 65px #557c6a0b}.card-top{display:flex;align-items:center;gap:10px;font-size:9px;letter-spacing:1.6px;color:#8a9c93;margin-bottom:26px}.tiny-logo{font-size:21px;color:#79a5a0}.auth-tabs{display:flex;border-bottom:1px solid var(--line);gap:28px;margin-bottom:24px}.auth-tabs a{padding:0 2px 12px;color:#8c9c99;font-size:14px}.auth-tabs .active{color:var(--teal);border-bottom:2px solid var(--teal);font-weight:650}h2{font:29px/1.3 Georgia,serif;margin:14px 0 8px;letter-spacing:-.4px}.auth-card>.muted{font-size:13px;margin:0 0 24px}.muted{color:var(--muted)}label{display:block;font-size:12px;font-weight:650;margin:18px 0 7px}input:not([type=checkbox]){width:100%;padding:13px 15px;border:1px solid #d9e3e0;border-radius:9px;background:#fafcfb;color:var(--ink);outline:none;font-size:14px;min-height:47px}input:not([type=checkbox]):focus{border-color:#3d918e;box-shadow:0 0 0 3px #e4f1ee}input::placeholder{color:#9aa9a6;font-size:12px}.password-wrap{position:relative}.password-wrap input{padding-right:48px}.reveal{position:absolute;right:9px;top:7px;background:transparent;border:0;color:#7b9390;padding:6px 8px}.hint{display:block;font-size:10px;color:#8b9c96;margin-top:6px}.login-note{margin:15px 0 22px}.check{display:flex;align-items:flex-start;gap:9px;font-size:11px;font-weight:400;color:#7d8e88;line-height:1.6;margin:19px 0}input[type=checkbox]{accent-color:var(--teal);margin:3px 0;width:15px;height:15px;flex-shrink:0}.primary{display:inline-flex;align-items:center;justify-content:center;gap:15px;background:#1d7c7b;border:0;color:white;border-radius:9px;padding:13px 21px;font-size:13px;font-weight:600;min-height:47px}.primary:hover{background:#176565}.primary:disabled{opacity:.65;cursor:wait}.full{width:100%;margin-top:20px;justify-content:space-between}.card-foot{text-align:center;font-size:11px;color:#8c9c96;margin-top:24px}.card-foot a{font-weight:600;margin-left:5px}.secure{text-align:center;border-top:1px solid #edf1ee;margin-top:26px;padding-top:17px;font-size:9px;color:#9ca9a1}footer{display:flex;justify-content:space-between;max-width:1232px;padding:23px 12px;margin:0 auto;color:#8da09a;font-size:10px;letter-spacing:.3px}.notice{padding:11px 13px;border-radius:8px;font-size:12px;margin:14px 0}.error{color:#9e413f;background:#fff0eb}.success{color:#25735d;background:#e5f5ed}.avatar{border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#d7e8e2;color:#437d70;font-family:Georgia,serif;font-weight:700}.small{height:30px;width:30px;margin-right:8px}.large{height:68px;width:68px;font-size:28px}.profile-link{display:flex;align-items:center;font-size:13px}.chat-layout{display:grid;grid-template-columns:260px 1fr;gap:24px;max-width:1232px;margin:35px auto;padding:0 20px}.side-card,.chat-card{background:#ffffffeb;border:1px solid white;border-radius:20px;overflow:hidden}.side-card{padding:28px 22px;align-self:start}.side-card h2{font-size:24px}.side-card .muted{font-size:12px}.room-link{display:block;padding:13px;background:#e8f2ef;border-radius:9px;font-size:13px;margin-top:30px}.side-link{display:block;padding:15px;font-size:12px}.side-note{text-align:center;background:#f2f6f0;border-radius:16px;padding:25px 10px;margin-top:30px;color:#7a9587;font-size:27px}.side-note p{font:italic 19px/1.6 Georgia,serif}.text-button{border:0;background:none;font-size:12px;color:#78918a;margin-top:24px;padding:0}.chat-head{padding:24px 30px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px}.chat-head h2{font-size:25px;margin-top:7px}.chat-head p{font-size:12px;margin-bottom:0}.room-badge{background:#edf6f0;padding:7px 10px;color:#568174;border-radius:25px;font-size:10px;white-space:nowrap}.messages{height:420px;overflow-y:auto;padding:24px 28px;scroll-behavior:smooth}.empty{text-align:center;color:#94aaa0;padding-top:80px;font-size:34px}.empty h3{font:24px Georgia,serif;margin-bottom:8px}.empty p{font-size:12px}.message{display:flex;gap:12px;margin:18px 0}.message .avatar{width:34px;height:34px;flex-shrink:0}.message-meta{font-size:12px;font-weight:650}.message-meta time{font-weight:400;color:#9babaa;font-size:10px;margin-left:12px}.bubble{margin-top:5px;padding:9px 13px;background:#edf5f2;border-radius:0 12px 12px 12px;font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}.composer{display:flex;gap:12px;border-top:1px solid var(--line);padding:18px 24px}.composer input{flex:1;min-width:0}.chat-error{font-size:12px;color:#a25042;margin:0 24px}.profile-page{max-width:500px;margin:40px auto;padding:0 20px}.back{display:block;margin:20px 0;font-size:13px}.profile-page h3{font-size:14px;margin-top:28px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media(min-width:1450px){.auth-layout{margin-top:80px}}@media(max-width:950px){header{padding:22px}.auth-layout{gap:35px;margin-top:36px}.welcome h1{font-size:43px}.auth-card{padding:28px}.season{display:none}.welcome-bottom{gap:10px;flex-wrap:wrap}.chat-layout{grid-template-columns:210px 1fr}.chat-head{padding:20px}.room-badge{display:none}}@media(max-width:680px){header{padding:18px 20px}.brand{font-size:11px;gap:12px;letter-spacing:.5px}.logo{font-size:34px}.brand small{font-size:10px}.auth-layout{display:flex;flex-direction:column;padding:0 20px;gap:26px;margin:32px auto;max-width:450px}.welcome{width:100%}.welcome h1{font-size:36px;margin:16px 0 12px;line-height:1.15}.welcome h1 br{display:none}.welcome h1 em{display:block}.welcome>p{font-size:13px;margin-bottom:0}.welcome>p br{display:none}.winter-art,.welcome-bottom{display:none}.auth-card{width:100%;padding:25px 24px;border-radius:18px}.card-top{margin-bottom:19px}.auth-card h2{font-size:26px}.auth-card>.muted{font-size:12px}.card-foot{font-size:12px}.hint,.secure{font-size:11px}footer{margin:0 22px;display:block;text-align:center;font-size:9px}footer span{display:block;margin-top:5px}.profile-link{font-size:0}.profile-link .small{font-size:15px}.chat-layout{display:block;padding:0 14px;margin:20px auto}.side-card{padding:12px 18px;display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;border-radius:12px}.side-card>*{display:none}.side-card .side-link,.side-card form{display:block}.side-card .text-button{margin:0}.chat-head h2{font-size:23px}.chat-head .eyebrow{font-size:9px}.messages{height:calc(100dvh - 350px);min-height:230px;padding:15px}.composer{padding:12px;gap:7px}.composer .primary{font-size:11px;padding:11px}.chat-head{padding:18px}.profile-page{margin-top:26px}}
