:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f7f1f8;font-synthesis:none;--bg:#100d13;--panel:#1a151e;--panel-2:#221b27;--line:#3c3043;--muted:#b9aebe;--accent:#ee6f9e;--accent-2:#9c77d9;--good:#68d9a0;--danger:#ff8b8b;background:#100d13;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#app{min-height:100%;margin:0}body{background:radial-gradient(circle at 15% 0%, #2a1726 0, transparent 38rem), var(--bg);min-width:320px}button,input,textarea,select{font:inherit;border:1px solid var(--line);border-radius:10px}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}input,textarea,select{color:#fff;background:#100d13;outline:none;width:100%;padding:.78rem .9rem}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #ee6f9e25}.app-shell{min-height:100vh;grid-template-rows:auto 1fr auto;min-height:100dvh;display:grid}.app-header{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:10;background:#100d13cc;border-bottom:1px solid #ffffff10;justify-content:space-between;align-items:center;height:64px;padding:0 clamp(1rem,4vw,3rem);display:flex;position:sticky;top:0}.brand{letter-spacing:.03em;align-items:center;gap:.65rem;font-weight:800;display:flex}.brand-mark{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#171019;border-radius:9px;place-items:center;width:34px;height:34px;font-size:.82rem;display:grid}.connection{color:var(--muted);align-items:center;gap:.55rem;min-width:0;font-size:.86rem;display:flex}.connection span:last-child{white-space:nowrap;text-overflow:ellipsis;max-width:min(55vw,30rem);overflow:hidden}.status-dot{background:#8c7f91;border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 4px #8c7f911c}.phase-ready .status-dot,.phase-in-room .status-dot{background:var(--good);box-shadow:0 0 0 4px #68d9a01c}.phase-connecting .status-dot,.phase-authenticating .status-dot,.phase-waiting-server .status-dot,.phase-joining .status-dot,.phase-reconnecting .status-dot{background:#f5bd64;animation:1.2s infinite pulse}.phase-error .status-dot{background:var(--danger)}@keyframes pulse{50%{opacity:.35}}.app-content{width:min(1240px,100%);margin:0 auto;padding:clamp(1.25rem,4vw,3rem)}.app-footer{color:#867a8c;border-top:1px solid #ffffff0d;justify-content:space-between;gap:1rem;padding:1rem clamp(1rem,4vw,3rem);font-size:.75rem;display:flex}.login-layout{grid-template-columns:minmax(0,1.15fr) minmax(300px,440px);align-items:center;gap:clamp(2rem,7vw,7rem);min-height:calc(100dvh - 150px);display:grid}.intro-panel h1,.view-heading h1{letter-spacing:-.055em;max-width:11ch;margin:.4rem 0 1rem;font-size:clamp(2.3rem,6vw,5.6rem);line-height:.98}.lede{color:var(--muted);max-width:56ch;margin-bottom:2rem;line-height:1.75}.eyebrow{color:var(--accent);letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:800}.feature-row{grid-template-columns:24px auto 1fr;align-items:baseline;gap:.65rem;margin:.8rem 0;display:grid}.feature-row small{color:#8f8395;text-align:right}.feature-check{color:var(--good)}.login-card,.search-form,.room-card,.member-panel,.chat-room-div{border:1px solid var(--line);background:linear-gradient(145deg,#211a25,#17131b);box-shadow:0 24px 70px #00000040}.login-card{border-radius:18px;padding:clamp(1.4rem,5vw,2.25rem)}.login-card h2{margin:0 0 1.6rem;font-size:1.25rem}.field{margin-bottom:1rem;display:block}.field-label{color:var(--muted);margin:0 0 .45rem .15rem;font-size:.78rem;display:block}.button{color:#fff;background:0 0;min-height:42px;padding:.65rem 1rem;font-weight:700}.button.primary{color:#1d1017;background:linear-gradient(135deg, var(--accent), #ff9a80);border:0;width:100%}.button.secondary{background:#8f649c22;border-color:#8f649c}.button.ghost{color:var(--muted);background:#ffffff05}.button.danger{color:var(--danger);border-color:#ff8b8b55}.login-card .button+.button{width:100%;margin-top:.65rem}.security-note{color:#8f8395;margin:1.25rem 0 0;font-size:.75rem;line-height:1.55}.form-notice{color:#ffd0d0;background:#6b252540;border-radius:9px;margin-top:1rem;padding:.75rem;font-size:.86rem}.view-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.5rem;display:flex}.view-heading h1{max-width:none;margin-bottom:0;font-size:clamp(2rem,5vw,4rem)}.search-form{border-radius:14px;grid-template-columns:minmax(220px,2fr) repeat(2,minmax(120px,.7fr)) auto;align-items:end;gap:.85rem;padding:1rem;display:grid}.search-form .field{margin:0}.search-form .primary{width:auto}.search-options{flex-wrap:wrap;grid-column:1/-1;gap:.75rem 1.3rem;display:flex}.checkbox{color:var(--muted);align-items:center;gap:.5rem;font-size:.8rem;display:flex}.checkbox input{width:1rem;height:1rem;accent-color:var(--accent)}.result-header{justify-content:space-between;align-items:baseline;margin:2rem 0 .8rem;display:flex}.result-header h2{margin:0;font-size:1rem}.result-count{color:var(--muted);font-size:.8rem}.room-list{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:.8rem;display:grid}.room-card{box-shadow:none;border-radius:13px;padding:1rem}.room-card-top{justify-content:space-between;align-items:start;gap:.7rem;display:flex}.room-card h3{overflow-wrap:anywhere;margin:.15rem 0;font-size:1rem}.room-tags{gap:.3rem;display:flex}.tag{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:.18rem .45rem;font-size:.65rem}.tag.locked{color:#f1b768}.room-description{color:var(--muted);overflow-wrap:anywhere;min-height:2.4em;font-size:.82rem;line-height:1.45}.room-creator{color:#837788;font-size:.72rem}.room-card .button{width:100%;margin-top:.4rem}.empty-state{border:1px dashed var(--line);color:#8f8395;text-align:center;border-radius:14px;grid-column:1/-1;place-items:center;min-height:180px;padding:2rem;display:grid}.room-view{grid-template-columns:275px 1fr;gap:1rem;height:calc(100dvh - 145px);min-height:500px;display:grid}.member-panel,.chat-room-div{border-radius:15px;min-height:0;overflow:hidden}.member-panel{flex-direction:column;display:flex}.room-info{border-bottom:1px solid var(--line);padding:1.15rem}.room-info h1{overflow-wrap:anywhere;margin:.3rem 0 .5rem;font-size:1.3rem}.room-info>p:not(.eyebrow){color:var(--muted);font-size:.78rem;line-height:1.45}.room-info .button{width:100%;margin-top:.5rem}.member-title{color:#928698;text-transform:uppercase;letter-spacing:.08em;margin:1rem 1rem .6rem;font-size:.75rem}.member-list{padding:0 .5rem 1rem;overflow-y:auto}.member-row{color:#fff;text-align:left;background:0 0;border:0;grid-template-columns:34px 1fr auto;align-items:center;gap:.65rem;width:100%;padding:.55rem;display:grid}.member-row:hover{background:#ffffff08}.member-avatar{aspect-ratio:1;color:#211520;background:linear-gradient(135deg,#f69ab8,#b499e3);border-radius:9px;place-items:center;font-weight:900;display:grid}.member-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.member-number{color:#85798b;font-size:.68rem}.chat-room-div{grid-template-rows:auto 0 minmax(0,1fr) 0 auto;display:grid}.chat-room-top-menu{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:52px;padding:0 1rem;display:flex}.chat-room-top-menu span{color:var(--muted);font-size:.75rem}.text-area-chat-log{scroll-behavior:smooth;padding:1rem;overflow-y:auto}.chat-message{grid-template-columns:42px max-content 1fr;align-items:baseline;gap:.55rem;padding:.42rem .3rem;font-size:.9rem;line-height:1.5;display:grid}.message-time{color:#766b7c;font-size:.65rem}.message-author{color:#f0a0bb;font-size:.82rem}.message-text{white-space:pre-wrap;overflow-wrap:anywhere;min-width:0}.message-target{color:#ad94d0;font-size:.78rem}.message-system,.message-emote{color:#aa9caf;white-space:pre-wrap;overflow-wrap:anywhere;grid-column:2/-1;font-style:italic}.type-whisper{background:#7c5aa217;border-radius:7px}.type-action .message-text,.type-activity .message-text{color:#cbbdd0;font-style:italic}.chat-room-bot{border-top:1px solid var(--line);background:#151118;grid-template-columns:1fr auto;gap:.7rem;padding:.75rem;display:grid}#InputChat{resize:none;min-height:44px;max-height:110px;padding:.7rem .85rem}.chat-room-buttons-div,.chat-room-buttons{align-items:center;gap:.6rem;display:flex}.input-chat-length{color:#766b7c;font-size:.65rem}.chat-room-buttons .primary{width:auto;min-width:78px}@media (max-width:760px){.app-header{height:56px;padding:0 .8rem}.app-content{padding:1rem .75rem}.login-layout{grid-template-columns:1fr;align-content:center;gap:1.5rem}.intro-panel h1{font-size:2.6rem}.feature-row{grid-template-columns:22px 1fr}.feature-row small{text-align:left;grid-column:2}.search-form{grid-template-columns:1fr 1fr}.search-form .field:first-child,.search-form>.primary{grid-column:1/-1}.room-view{grid-template-columns:1fr;height:calc(100dvh - 125px)}.member-panel{display:none}.chat-message{grid-template-columns:38px minmax(0,max-content) 1fr;padding-inline:0}.chat-room-bot{grid-template-columns:1fr}.chat-room-buttons-div{justify-content:flex-end}.app-footer{display:none}}@media (max-width:430px){.connection span:last-child{max-width:45vw}.intro-panel{display:none}.search-form{grid-template-columns:1fr}.search-form .field:first-child,.search-form>.primary,.search-options{grid-column:auto}.room-list{grid-template-columns:1fr}.view-heading{align-items:center}.chat-message{grid-template-columns:34px 1fr}.message-text,.message-target{grid-column:2}}
