@import "https://fonts.googleapis.com/css2?family=Cinzel:wght@600;700;800&family=Outfit:wght@400;500;600;700&family=Gowun+Batang:wght@400;700&family=Noto+Serif+KR:wght@400;500;600;700&family=Noto+Sans+KR:wght@300;400;500;600;700&display=swap";:root{--bg-obsidian:#090a0e;--bg-atelier:#11131a;--bg-card:#161822;--bg-card-hover:#1c1e2b;--bg-input:#191b26;--bg-glass:#11131ad9;--glass-border:#ffffff14;--primary-color:#d49b55;--primary-light:#e8b26e;--primary-dark:#b87e39;--primary-dim:#d49b551f;--primary-glow:#d49b5538;--secondary-color:#9e8060;--text-main:#f4f4f7;--text-muted:#9da0b3;--text-dim:#65677b;--bubble-ai:#171924;--bubble-user:#222533;--bubble-user-border:#d49b554d;--stage-direction-bg:#d49b550f;--stage-direction-border:#d49b55;--font-family:"Pretendard", -apple-system, BlinkMacSystemFont, system-ui, Roboto, sans-serif;--font-display:"Cinzel", "Pretendard", serif;--font-heading:"Outfit", "Pretendard", sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-obsidian);color:var(--text-main);font-family:var(--font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh}body{flex-direction:column;display:flex;position:relative}body:before{content:"";pointer-events:none;z-index:999;opacity:.028;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");position:fixed;inset:0}#root{flex:1;display:flex;overflow:hidden}button{cursor:pointer;background:0 0;border:none;font-family:inherit;transition:transform .15s cubic-bezier(.2,0,0,1),background-color .2s,border-color .2s,box-shadow .2s,opacity .2s}button:active{transform:scale(.98)}input,textarea,select{outline:none;font-family:inherit;transition:border-color .2s,box-shadow .2s}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}:root{--bg:#090a0e;--bg-surface:#101218;--bg-card:#151722;--bg-card2:#1b1e2c;--bg-card-hover:#202334;--bg-input:#171926;--font-sans:"Pretendard", "Noto Sans KR", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-gowun:"Gowun Batang", "Noto Serif KR", Batang, serif;--font-serif:"Noto Serif KR", "Gowun Batang", Batang, serif;--font-display:"Cinzel", "Outfit", var(--font-sans);--chat-font-family:var(--font-gowun);--chat-font-size:1.02rem;--primary:#d49b55;--primary-light:#e8b26e;--primary-dark:#b67d38;--primary-glow:#d49b5538;--primary-dim:#d49b551a;--accent:#e5b980;--accent-glow:#e5b98024;--crimson:#d9534f;--crimson-dim:#d9534f1f;--text:#f4f4f7;--text-2:#b2b4c5;--text-3:#6e7084;--border:#ffffff14;--border-subtle:#ffffff0a;--border-active:#d49b5573;--border-focus:#d49b55a6;--shadow:0 8px 32px #00000080;--shadow-xl:0 16px 56px #000000b3;--shadow-gold:0 4px 24px #d49b552e;--nav-h:70px;--header-h:62px;--radius:16px;--radius-sm:10px;--radius-xs:6px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{height:100%}body{color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#000;height:100%;font-family:Pretendard,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;overflow:hidden}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}input,textarea,select{font-family:inherit}a{color:inherit;text-decoration:none}.app-container{background:var(--bg);flex-direction:column;width:100%;max-width:480px;height:100dvh;margin:0 auto;display:flex;position:relative;overflow:hidden}@media (width>=481px){.app-container{box-shadow:0 0 80px #000000d9, 0 0 0 1px var(--border)}body{background:#040507}}.main-content{padding-bottom:var(--nav-h);scrollbar-width:none;flex:1;overflow:hidden auto}.main-content.in-chat{flex-direction:column!important;height:100%!important;max-height:100%!important;padding-bottom:0!important;display:flex!important;overflow:hidden!important}.main-content::-webkit-scrollbar{display:none}.home-header{height:var(--header-h);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);z-index:50;background:#090a0eeb;justify-content:space-between;align-items:center;padding:12px 18px;display:flex;position:sticky;top:0}.logo-wrap{align-items:center;gap:10px;display:flex}.logo-mark{width:32px;height:32px;color:var(--primary-light);background:#151722;border:1px solid #d49b5573;border-radius:8px;justify-content:center;align-items:center;font-family:Cinzel,serif;font-size:1.05rem;font-weight:700;display:flex;box-shadow:inset 0 1px #ffffff1a}.logo-text-group{flex-direction:column;display:flex}.logo{letter-spacing:.1em;color:var(--text);font-family:Cinzel,Pretendard,serif;font-size:1.15rem;font-weight:700;line-height:1.1}.logo-sub{letter-spacing:.18em;color:var(--primary-light);text-transform:uppercase;font-size:.58rem;font-weight:600}.page-title{color:var(--text);letter-spacing:-.01em;font-size:1.05rem;font-weight:700}.header-actions{align-items:center;gap:8px;display:flex}.icon-btn{background:var(--bg-card);border:1px solid var(--border);width:36px;height:36px;color:var(--text-2);border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex}.icon-btn:hover{color:var(--text);border-color:var(--primary)}.create-shortcut-btn{color:#090a0e;background:linear-gradient(135deg,#d49b55 0%,#b67d38 100%);border-radius:8px;align-items:center;gap:6px;padding:7px 14px;font-size:.82rem;font-weight:700;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 2px 10px #d49b5540}.create-shortcut-btn:hover{box-shadow:0 4px 16px var(--primary-glow);transform:translateY(-1px)}.search-bar-inline{background:var(--bg-input);border:1px solid var(--border-active);border-radius:8px;flex:1;align-items:center;gap:8px;padding:6px 12px;display:flex}.search-input-inline{color:var(--text);background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:.88rem}.search-close-btn{color:var(--text-3);font-size:.85rem;transition:color .2s}.search-close-btn:hover{color:var(--text)}.back-btn{background:var(--bg-card);border:1px solid var(--border);width:36px;height:36px;color:var(--text);border-radius:8px;justify-content:center;align-items:center;transition:background .2s,border-color .2s;display:flex}.back-btn:hover{background:var(--bg-card2);border-color:var(--primary)}.hero-section{background:radial-gradient(ellipse 120% 80% at 50% -20%, #d49b551f 0%, #10121800 70%), var(--bg);border-bottom:1px solid var(--border);padding:34px 20px 26px;position:relative;overflow:hidden}.hero-spotlight-glow{filter:blur(40px);pointer-events:none;background:radial-gradient(circle,#d49b552e 0%,#0000 70%);width:280px;height:180px;position:absolute;top:-80px;left:50%;transform:translate(-50%)}.hero-content{z-index:1;position:relative}.hero-badge{color:var(--primary-light);letter-spacing:.08em;text-transform:uppercase;background:#d49b5514;border:1px solid #d49b5547;border-radius:4px;align-items:center;gap:8px;margin-bottom:14px;padding:4px 10px;font-size:.68rem;font-weight:600;display:inline-flex}.hero-badge .badge-bullet{color:#fff;background:#d49b554d;border-radius:2px;padding:1px 5px;font-family:Cinzel,serif;font-size:.65rem}.hero-title{color:var(--text);letter-spacing:-.03em;margin-bottom:10px;font-size:1.78rem;font-weight:800;line-height:1.3}.hero-sub{color:var(--text-2);margin-bottom:22px;font-size:.84rem;line-height:1.55}.hero-stats{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);background:#151722b3;border-radius:10px;align-items:center;gap:0;width:fit-content;padding:10px 18px;display:flex}.hero-stat{flex-direction:column;align-items:center;padding:0 16px;display:flex}.stat-num{color:var(--primary-light);font-family:Cinzel,Outfit,sans-serif;font-size:.95rem;font-weight:700}.stat-lbl{color:var(--text-3);letter-spacing:.04em;margin-top:2px;font-size:.68rem}.stat-divider{background:var(--border);width:1px;height:26px}.tag-filter-wrap{border-bottom:1px solid var(--border-subtle);padding:14px 0 10px}.tag-filter-scroll{scrollbar-width:none;gap:8px;padding:0 18px;display:flex;overflow-x:auto}.tag-filter-scroll::-webkit-scrollbar{display:none}.tag-filter-btn{white-space:nowrap;border:1px solid var(--border);background:var(--bg-surface);color:var(--text-2);border-radius:8px;flex-shrink:0;padding:7px 14px;font-size:.8rem;font-weight:500;transition:all .2s}.tag-filter-btn.active{border-color:var(--primary);color:var(--primary-light);background:#d49b551f;font-weight:600;box-shadow:0 0 14px #d49b5526}.tag-filter-btn:hover:not(.active){color:var(--text);border-color:#ffffff26}.section-header{justify-content:space-between;align-items:center;padding:18px 18px 10px;display:flex}.section-title-text{color:var(--text);letter-spacing:.04em;text-transform:uppercase;font-size:.92rem;font-weight:700}.section-count{color:var(--primary-light);font-family:Cinzel,serif;font-size:.76rem;font-weight:600}.character-grid{grid-template-columns:repeat(2,1fr);gap:12px;padding:0 14px 24px;display:grid}.char-card{border-radius:var(--radius);cursor:pointer;border:1px solid var(--border);background:var(--bg-card);aspect-ratio:3/4.2;transition:transform .25s cubic-bezier(.2,0,0,1),box-shadow .25s,border-color .25s;position:relative;overflow:hidden}.char-card:hover{border-color:#d49b5573;transform:translateY(-4px);box-shadow:0 12px 36px #000000a6,0 0 20px #d49b551f}.char-card:active{transform:scale(.98)}.char-card-img{flex-direction:column;justify-content:space-between;width:100%;height:100%;padding:12px 10px;display:flex;position:relative}.char-card-avatar{color:#fff;border:1px solid #ffffff26;border-radius:12px;justify-content:center;align-items:center;width:58px;height:58px;margin:22px auto 0;font-family:Cinzel,serif;font-size:1.5rem;font-weight:700;display:flex}.story-pill{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--primary-light);letter-spacing:.04em;background:#12141cd9;border:1px solid #d49b5559;border-radius:4px;padding:3px 8px;font-size:.65rem;font-weight:600;position:absolute;top:10px;right:10px}.char-card-info{z-index:2;margin-top:auto}.char-card-name{color:#fff;letter-spacing:-.02em;margin-bottom:4px;font-size:1.02rem;font-weight:800}.char-card-desc{color:#f4f4f7bf;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:8px;font-size:.72rem;line-height:1.45;display:-webkit-box;overflow:hidden}.char-card-footer{justify-content:space-between;align-items:flex-end;display:flex}.char-tags{flex-wrap:wrap;gap:4px;display:flex}.char-tag{color:var(--primary-light);letter-spacing:-.01em;font-size:.62rem;font-weight:600}.char-meta{align-items:center;gap:6px;display:flex}.char-chat-meta{color:#f4f4f7a6;align-items:center;gap:2px;font-size:.68rem;font-weight:600;display:flex}.char-heart-btn{color:var(--text-2);cursor:pointer;background:#ffffff14;border:1px solid #ffffff1f;border-radius:10px;align-items:center;gap:3px;padding:2px 7px;font-size:.68rem;transition:all .2s;display:flex}.char-heart-btn:hover{background:#f43f5e29;border-color:#f43f5e59;transform:scale(1.06)}.char-heart-btn.liked{color:#ff6b81;background:#f43f5e38;border-color:#f43f5e73}.char-heart-btn .heart-icon{font-size:.72rem;line-height:1}.char-heart-btn .heart-val{font-size:.66rem;font-weight:700}.modal-overlay{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:100;background:#050608d1;align-items:flex-end;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.char-detail-modal{background:#12141c;border:1px solid #ffffff1a;border-bottom:none;border-radius:24px 24px 0 0;width:100%;max-width:480px;max-height:90dvh;margin:0 auto;animation:.3s cubic-bezier(.32,.72,0,1) slideUp;overflow:hidden auto;box-shadow:0 -12px 48px #000c}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-hero{background-color:var(--bg-card2);background-position:top;background-size:cover;height:240px;position:relative}.modal-avatar{color:#fff;border:2px solid #fff3;border-radius:14px;justify-content:center;align-items:center;width:64px;height:64px;font-family:Cinzel,serif;font-size:1.8rem;font-weight:700;display:flex;position:absolute;bottom:20px;left:20px}.modal-close{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;background:#0009;border:1px solid #ffffff26;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:.9rem;transition:background .2s,border-color .2s;display:flex;position:absolute;top:14px;right:14px}.modal-close:hover{border-color:var(--primary);background:#000c}.modal-body{padding:22px 20px}.modal-name-row{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.modal-name{letter-spacing:-.02em;margin-bottom:4px;font-size:1.55rem;font-weight:800}.modal-desc{color:var(--primary-light);font-size:.85rem;font-weight:500}.modal-full-desc{color:var(--text-2);margin-bottom:18px;font-size:.88rem;line-height:1.65}.modal-stats{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:18px;display:grid}.modal-stat{background:var(--bg-card2);border-radius:var(--radius-sm);border:1px solid var(--border);text-align:center;flex-direction:column;gap:4px;padding:12px 8px;font-size:.75rem;display:flex}.modal-stat span:nth-child(2){color:var(--text);font-family:Cinzel,Outfit,sans-serif;font-size:.95rem;font-weight:700}.modal-stat span:nth-child(3){color:var(--text-3)}.modal-stat.clickable-heart{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s}.modal-stat.clickable-heart:hover{background:#f43f5e14;border-color:#f43f5e73;transform:translateY(-2px)}.modal-stat.clickable-heart.liked{background:#f43f5e26;border-color:#f43f5e80}.modal-stat.clickable-heart.liked span:nth-child(2){color:#ff6b81}.modal-tags{flex-wrap:wrap;gap:6px;margin-bottom:18px;display:flex}.modal-tag{color:var(--primary-light);background:#d49b5514;border:1px solid #d49b5540;border-radius:6px;padding:5px 12px;font-size:.74rem;font-weight:600}.modal-prev-chat{background:var(--bg-card2);border-radius:var(--radius-sm);border:1px solid var(--border);margin-bottom:16px;padding:10px 14px}.prev-chat-label{color:var(--text-2);font-size:.8rem}.modal-start-btn{color:#090a0e;letter-spacing:.02em;background:linear-gradient(135deg,#d49b55 0%,#b67d38 100%);border-radius:12px;width:100%;padding:16px;font-size:1rem;font-weight:800;transition:transform .15s,box-shadow .15s;box-shadow:0 4px 20px #d49b5540}.modal-start-btn:hover{transform:translateY(-2px);box-shadow:0 6px 24px #d49b5559}.modal-start-btn:active{transform:scale(.98)}.chat-history-section{padding:8px 0 20px}.chat-history-list{flex-direction:column;display:flex}.chat-history-item{cursor:pointer;border-bottom:1px solid var(--border-subtle);align-items:center;gap:14px;padding:14px 18px;transition:background .15s;display:flex}.chat-history-item:hover{background:var(--bg-card2)}.chat-avatar-wrap{flex-shrink:0;position:relative}.char-avatar{color:#fff;border:1px solid var(--border);border-radius:12px;justify-content:center;align-items:center;width:50px;height:50px;font-family:Cinzel,serif;font-size:1.1rem;font-weight:700;display:flex}img.char-avatar{object-fit:cover}.chat-online-dot{border:2px solid var(--bg);background:#22c55e;border-radius:50%;width:11px;height:11px;position:absolute;bottom:-2px;right:-2px}.chat-info{flex:1;min-width:0}.chat-name-row{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.chat-char-name{color:var(--text);font-size:.95rem;font-weight:700}.chat-msg-count{color:var(--text-3);font-family:Cinzel,serif;font-size:.72rem}.chat-last-msg{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;line-height:1.4;overflow:hidden}.msg-ai-preview{color:var(--text-2)}.chat-arrow{color:var(--text-3);flex-shrink:0}.chat-list-del-btn{color:var(--text-3);cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:6px;transition:all .2s;display:flex}.chat-list-del-btn:hover{color:#ef4444;opacity:1;background:#ef444426}.chat-view{flex-direction:column;flex:1;height:100%;max-height:100%;display:flex;position:relative;overflow:hidden}.chat-ambient-bg{opacity:.08;filter:blur(40px);pointer-events:none;z-index:0;background-position:50%;background-size:cover;position:absolute;inset:0}.chat-header{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);z-index:50;background:#0e1017f5;flex-shrink:0;align-items:center;gap:12px;width:100%;padding:10px 16px;display:flex;position:sticky;top:0}.chat-header-avatar-wrap{cursor:pointer;position:relative}img.avatar-small{object-fit:cover;border:1px solid var(--border);border-radius:10px;width:40px;height:40px}.avatar-small{border:1px solid var(--border);border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-family:Cinzel,serif;font-size:.9rem;font-weight:700;display:flex}.online-indicator{border:2px solid var(--bg);background:#22c55e;border-radius:50%;width:10px;height:10px;position:absolute;bottom:-2px;right:-2px}.chat-header-info{cursor:pointer;flex:1;min-width:0;overflow:hidden}.character-name{white-space:nowrap;text-overflow:ellipsis;font-size:.97rem;font-weight:700;display:block;overflow:hidden}.chat-header-sub{white-space:nowrap;scrollbar-width:none;align-items:center;gap:6px;margin-top:2px;display:flex;overflow-x:auto}.chat-header-sub::-webkit-scrollbar{display:none}.online-text{color:#22c55e;font-size:.72rem}.story-pill-sm{font-size:.7rem}.chat-header-actions{flex-shrink:0;align-items:center;gap:5px;display:flex}.censorship-toggle{border:1px solid var(--border);background:var(--bg-card2);white-space:nowrap;border-radius:6px;padding:3px 8px;font-size:.68rem;font-weight:600;transition:all .2s}.censorship-toggle.on{color:#86efac;background:#22c55e1a;border-color:#22c55e4d}.censorship-toggle.off{color:#fca5a5;background:#ef44441a;border-color:#ef44444d}.chat-header-btn{border:1px solid var(--border);background:var(--bg-card2);color:var(--text-2);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:5px 10px;font-size:.8rem;transition:all .2s;display:flex}.chat-header-btn:hover{color:#fca5a5;background:#ef444426;border-color:#ef444466}.chat-header-heart-btn{border:1px solid var(--border);color:var(--text-2);cursor:pointer;background:#ffffff0f;border-radius:8px;align-items:center;gap:4px;padding:5px 9px;font-size:.8rem;transition:all .2s;display:flex}.chat-header-heart-btn:hover{background:#f43f5e26;border-color:#f43f5e59}.chat-header-heart-btn.liked{color:#ff6b81;background:#f43f5e33;border-color:#f43f5e73}.chat-header-heart-btn .header-heart-count{font-size:.76rem;font-weight:700}.modal-reset-chat-btn{color:#f87171;cursor:pointer;background:#ef44441a;border:1px solid #ef444440;border-radius:6px;padding:4px 10px;font-size:.76rem;transition:all .2s}.modal-reset-chat-btn:hover{color:#fca5a5;background:#ef444433}.chat-messages{scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;flex-direction:column;flex:1;gap:8px;padding:18px 14px;display:flex;overflow:hidden auto}.chat-messages::-webkit-scrollbar{display:none}.message-wrap{align-items:flex-end;gap:8px;margin-bottom:6px;animation:.25s cubic-bezier(.34,1.56,.64,1) msgIn;display:flex}.message-wrap.user{flex-direction:row-reverse}@keyframes msgIn{0%{opacity:0;transform:scale(.96)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}.msg-avatar-sm{background:var(--bg-card2);border:1px solid var(--border);border-radius:8px;flex-shrink:0;justify-content:center;align-self:flex-end;align-items:center;width:32px;height:32px;font-family:Cinzel,serif;font-size:.75rem;font-weight:700;display:flex;overflow:hidden}.message{max-width:82%;font-family:var(--chat-font-family,var(--font-gowun));font-size:var(--chat-font-size,1.02rem);letter-spacing:-.015em;word-break:keep-all;overflow-wrap:break-word;white-space:pre-wrap;border-radius:16px;padding:14px 18px;line-height:1.84;transition:font-family .2s,font-size .2s}.message.ai{color:#f2f3f9;background:linear-gradient(165deg,#161826 0%,#10121d 100%);border:1px solid #d49b5533;border-bottom-left-radius:4px;box-shadow:0 6px 28px #00000073,inset 0 0 1px #ffffff1f}.message.user{color:#fff;background:linear-gradient(165deg,#252220 0%,#1c1916 100%);border:1px solid #d49b556b;border-bottom-right-radius:4px;box-shadow:0 6px 28px #00000073}.chat-model-pill{color:var(--primary-light);cursor:pointer;white-space:nowrap;background:#181a26;border:1px solid #d49b5540;border-radius:4px;flex-shrink:0;align-items:center;gap:4px;padding:2px 8px;font-size:.68rem;transition:all .2s;display:inline-flex}.chat-model-pill:hover{border-color:var(--primary);background:#d49b5526}.message.typing{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.message.typing .typing-dots{align-items:center;gap:5px;padding:4px 0;display:flex}.message.typing .typing-dots span{background:var(--text-3);border-radius:50%;width:6px;height:6px;animation:1.2s infinite typingBounce}.message.typing .typing-dots span:nth-child(2){animation-delay:.2s}.message.typing .typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{background:var(--text-3);transform:translateY(0)}30%{background:var(--primary-light);transform:translateY(-5px)}}.live-typing-cursor{color:var(--primary-light,#e8b26e);-webkit-user-select:none;user-select:none;vertical-align:baseline;text-shadow:0 0 8px var(--primary-glow,#d49b5566);margin-left:3px;font-weight:700;animation:.7s ease-in-out infinite liveBlink;display:inline-block}@keyframes liveBlink{0%,to{opacity:1;transform:scaleY(1)}50%{opacity:.15;transform:scaleY(.9)}}.gpu-loading-status{color:var(--primary-light,#f0ca95);letter-spacing:-.01em;opacity:.92;margin-top:5px;font-size:.76rem;font-style:italic;font-weight:500;line-height:1.4;animation:2.2s ease-in-out infinite pulseWakeup;display:block}@keyframes pulseWakeup{0%,to{opacity:.75;filter:drop-shadow(0 0 #d49b5500)}50%{opacity:1;filter:drop-shadow(0 0 6px #d49b5566)}}.rp-dialogue{color:#fff;letter-spacing:-.01em;font-weight:700;display:inline}.rp-quote-mark{color:var(--primary-light);opacity:.95;margin:0 1px;font-weight:800}.rp-action{color:#c9ccd8;font-style:italic;display:inline}.rp-narrator{border-left:3px solid var(--primary);color:#e0d9cf;background:#d49b5514;border-radius:0 8px 8px 0;flex-direction:column;gap:4px;margin:6px 0;padding:8px 12px;font-size:.92em;display:flex}.rp-narrator-tag{letter-spacing:.1em;color:var(--primary-light);text-transform:uppercase;font-family:Cinzel,serif;font-size:.65rem;font-weight:700}.msg-action-bar{opacity:.75;align-items:center;gap:6px;margin-top:5px;padding:0 2px;transition:opacity .2s;display:flex}.message-wrap:hover .msg-action-bar{opacity:1}.msg-action-btn{font-size:.72rem;font-family:var(--font-sans);color:var(--text-3);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff0f;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;transition:all .18s;display:inline-flex}.msg-action-btn svg{opacity:.85;flex-shrink:0}.msg-action-btn:hover{color:var(--primary-light);background:#d49b5524;border-color:#d49b5559}.msg-edit-textarea{border:1px solid var(--primary);color:#fff;width:100%;min-height:80px;font-family:inherit;font-size:inherit;line-height:inherit;resize:vertical;background:#0006;border-radius:8px;outline:none;padding:8px 10px}.msg-edit-actions{justify-content:flex-end;gap:6px;margin-top:6px;display:flex}.msg-edit-btn{cursor:pointer;border-radius:6px;padding:4px 10px;font-size:.75rem;font-weight:600;transition:all .15s}.chat-font-toggle-btn{color:var(--primary-light);cursor:pointer;background:#d49b5514;border:1px solid #d49b554d;border-radius:6px;align-items:center;gap:4px;padding:4px 9px;font-size:.76rem;font-weight:600;transition:all .2s;display:flex}.chat-font-toggle-btn:hover{border-color:var(--primary);color:#fff;background:#d49b552e}.chat-input-area{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid var(--border);z-index:40;background:#0e1017f5;flex-shrink:0;padding:10px 14px;position:relative}.chat-image-preview-container{background:var(--bg-card2);border-radius:var(--radius-sm);border:1px dashed var(--primary);align-items:flex-start;width:fit-content;max-width:160px;margin-bottom:8px;padding:8px 10px;display:flex;position:relative}.chat-image-preview{object-fit:cover;border-radius:6px;max-width:130px;max-height:130px}.chat-image-remove{color:#fff;background:#d9534f;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:.7rem;transition:background .2s;display:flex;position:absolute;top:-8px;right:-8px;box-shadow:0 2px 8px #0006}.chat-image-remove:hover{background:#e04440}.input-wrapper{background:var(--bg-input);border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:10px;padding:8px 8px 8px 14px;transition:border-color .2s,box-shadow .2s;display:flex}.input-wrapper:focus-within{border-color:var(--primary);box-shadow:0 0 16px #d49b552e}.chat-attach-btn{color:var(--text-3);cursor:pointer;flex-shrink:0;align-items:center;transition:color .2s;display:flex}.chat-attach-btn:hover{color:var(--primary-light)}.chat-input{color:var(--text);background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:.9rem}.chat-input::placeholder{color:var(--text-3)}.send-button{color:#090a0e;cursor:pointer;background:linear-gradient(135deg,#d49b55 0%,#b67d38 100%);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:transform .15s,opacity .2s,background .2s,border-color .2s;display:flex;box-shadow:0 2px 10px #d49b5533}.send-button:hover:not(:disabled){transform:scale(1.05)}.send-button:disabled{opacity:.3;cursor:not-allowed}.send-button.continue-btn{color:var(--primary-light,#f0ca95);background:#d49b552e;border:1px solid #d49b5573;box-shadow:0 0 10px #d49b551f}.send-button.continue-btn:hover:not(:disabled){color:#090a0e;background:linear-gradient(135deg,#d49b55 0%,#b67d38 100%);transform:scale(1.08);box-shadow:0 0 16px #d49b5559}.model-indicator{text-align:center;color:var(--text-3);letter-spacing:.02em;margin-top:6px;font-size:.68rem}.multimodal-msg{flex-direction:column;gap:6px;display:flex}.chat-uploaded-img{object-fit:cover;border:1px solid var(--border);border-radius:8px;max-width:180px;max-height:180px;display:block}.create-view{padding-bottom:30px}.create-form{flex-direction:column;gap:16px;padding:0 16px;display:flex}.create-hero-section{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);align-items:center;gap:16px;margin-top:16px;padding:16px;display:flex}.create-avatar-wrap{flex-shrink:0}.create-avatar{border:1px solid var(--border);border-radius:12px;justify-content:center;align-items:center;width:76px;height:76px;display:flex;position:relative;overflow:hidden}.create-avatar-initial{color:#ffffffd9;font-family:Cinzel,serif;font-size:2rem;font-weight:700}.avatar-edit-btn{opacity:0;cursor:pointer;background:#0000008c;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;inset:0}.create-avatar:hover .avatar-edit-btn{opacity:1}.create-header-info{flex:1;min-width:0}.create-name-input{width:100%;color:var(--text);letter-spacing:-.02em;background:0 0;border:none;outline:none;margin-bottom:6px;padding:0;font-family:inherit;font-size:1.25rem;font-weight:800}.create-name-input::placeholder{color:var(--text-3)}.create-desc-input{border:none;border-bottom:1px solid var(--border);width:100%;color:var(--text-2);background:0 0;outline:none;padding:4px 0;font-family:inherit;font-size:.85rem}.create-desc-input::placeholder{color:var(--text-3)}.create-desc-input:focus{border-color:var(--primary)}.form-section{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);padding:16px}.form-section-title{color:var(--primary-light);text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px;font-size:.76rem;font-weight:700}.story-section{background:#d49b5508;border-color:#d49b554d}.story-hint{color:var(--text-3);margin-bottom:12px;font-size:.78rem;line-height:1.5}.mode-options{grid-template-columns:1fr 1fr;gap:8px;display:grid}.mode-btn{border:1px solid var(--border);background:var(--bg-card2);color:var(--text-2);text-align:left;border-radius:8px;align-items:center;gap:10px;padding:12px;transition:all .2s;display:flex}.mode-btn.active{border-color:var(--primary);color:var(--text);background:#d49b551a;box-shadow:0 0 16px #d49b5526}.mode-icon{flex-shrink:0;font-size:1.3rem}.mode-label{font-size:.83rem;font-weight:700;line-height:1.2}.mode-desc-text{color:var(--text-3);margin-top:2px;font-size:.72rem}.mode-btn.active .mode-desc-text{color:var(--primary-light)}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-group{flex-direction:column;gap:8px;margin-top:12px;display:flex}.form-group:first-child{margin-top:0}.form-group label{color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:6px;font-size:.76rem;font-weight:700;display:flex}.label-required{color:var(--primary-light);text-transform:none;letter-spacing:0;font-size:.7rem}.form-group input,.form-group textarea,.form-group select{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text);outline:none;padding:10px 12px;font-size:.88rem;transition:border-color .2s,box-shadow .2s}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-3)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--primary);box-shadow:0 0 12px #d49b5526}.form-group input[type=color]{cursor:pointer;height:44px;padding:4px}.create-select{appearance:none;cursor:pointer}.form-group textarea{resize:vertical;line-height:1.5}.submit-btn{color:#090a0e;letter-spacing:.02em;background:linear-gradient(135deg,#d49b55 0%,#b67d38 100%);border-radius:10px;width:100%;margin-top:4px;padding:16px;font-size:1rem;font-weight:800;transition:transform .15s,box-shadow .2s;box-shadow:0 4px 20px #d49b5540}.submit-btn:hover{transform:translateY(-2px);box-shadow:0 6px 24px #d49b5559}.submit-btn:active{transform:scale(.98)}.profile-content{flex-direction:column;gap:16px;padding:16px 16px 40px;display:flex}.profile-card{border-radius:var(--radius);background:#141722;border:1px solid #d49b5540;align-items:center;gap:16px;padding:20px;display:flex}.profile-avatar{width:54px;height:54px;color:var(--primary-light);background:#1a1d2b;border:1px solid #d49b5566;border-radius:12px;justify-content:center;align-items:center;font-family:Cinzel,serif;font-size:1.4rem;font-weight:700;display:flex}.profile-name{margin-bottom:4px;font-size:1.05rem;font-weight:800}.profile-sub{color:var(--text-3);font-size:.8rem}.settings-group{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden}.settings-group-title{color:var(--primary-light);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--border);padding:12px 16px 8px;font-size:.72rem;font-weight:700}.model-item{cursor:pointer;border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 16px;transition:background .15s;display:flex}.model-item:last-child{border-bottom:none}.model-item:hover{background:var(--bg-card2)}.model-item.active{background:#d49b5514}.model-item-left{align-items:center;gap:12px;display:flex}.model-icon-lg{font-size:1.4rem}.model-item-name{align-items:center;gap:6px;margin-bottom:3px;font-size:.88rem;font-weight:700;display:flex}.model-badge{background:var(--primary);color:#090a0e;border-radius:4px;padding:2px 7px;font-size:.6rem;font-weight:700}.model-item-desc{color:var(--text-3);font-size:.75rem}.model-check{color:var(--primary-light);font-size:1rem;font-weight:700}.settings-item{border-bottom:1px solid var(--border);padding:14px 16px}.settings-item:last-child{border-bottom:none}.settings-item.clickable{cursor:pointer;justify-content:space-between;align-items:center;transition:background .15s;display:flex}.settings-item.clickable:hover{background:var(--bg-card2)}.settings-item.danger{color:#f87171}.settings-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:.76rem;font-weight:700;display:block}.settings-input{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-xs);width:100%;color:var(--text);outline:none;padding:10px 12px;font-size:.87rem;transition:border-color .2s}.settings-input:focus{border-color:var(--primary)}.settings-hint{color:var(--text-3);margin-top:8px;font-size:.73rem;line-height:1.5}.app-info{text-align:center;padding:24px 0}.app-info-logo{color:var(--primary-light);letter-spacing:.1em;margin-bottom:4px;font-family:Cinzel,serif;font-size:1.15rem;font-weight:700}.app-info-ver{color:var(--text-3);letter-spacing:.02em;font-size:.74rem}.bottom-nav{height:var(--nav-h);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid var(--border);background:#0e1017f0;flex-shrink:0;justify-content:space-around;align-items:center;padding:0 8px;display:flex}.nav-item{color:var(--text-3);border-radius:8px;flex-direction:column;align-items:center;gap:4px;padding:8px 16px;transition:color .2s,background .2s;display:flex;position:relative}.nav-item:hover{color:var(--text-2)}.nav-item.active{color:var(--primary-light)}.nav-item span{letter-spacing:.04em;font-size:.64rem;font-weight:600}.nav-icon-wrap{position:relative}.nav-dot{background:var(--primary);border:2px solid var(--bg);border-radius:50%;width:8px;height:8px;position:absolute;top:-2px;right:-2px}.empty-state{text-align:center;color:var(--text-3);flex-direction:column;align-items:center;gap:10px;padding:60px 20px;display:flex}.empty-state.large{padding:80px 20px}.empty-icon{margin-bottom:4px;font-size:2.2rem}.empty-title{color:var(--text-2);font-size:1rem;font-weight:700}.empty-sub{font-size:.85rem;line-height:1.5}.empty-cta{border:1px solid var(--border-active);color:var(--primary-light);background:#d49b551f;border-radius:8px;margin-top:12px;padding:12px 24px;font-size:.88rem;font-weight:700;transition:all .2s}.empty-cta:hover{background:var(--primary);color:#090a0e}.chat-affinity-pill{cursor:pointer;white-space:nowrap;background:#ffffff0d;border:1px solid #d49b5540;border-radius:999px;flex-shrink:0;align-items:center;gap:5px;padding:3px 8px;transition:all .2s;display:inline-flex}.chat-affinity-pill:hover{border-color:var(--primary);background:#d49b551f;transform:translateY(-1px)}.affinity-heart{font-size:.72rem;line-height:1}.affinity-title{color:var(--text-2);letter-spacing:-.01em;font-size:.68rem;font-weight:700}.affinity-bar-mini{background:#ffffff1a;border-radius:2px;width:26px;height:4px;overflow:hidden}.affinity-bar-fill{border-radius:2px;height:100%;transition:width .4s}.chat-header-font-btn{color:var(--primary-light);cursor:pointer;background:#d49b551a;border:1px solid #d49b5547;border-radius:6px;padding:4px 8px;font-family:Cinzel,serif;font-size:.76rem;font-weight:700;transition:all .2s}.chat-header-font-btn:hover{border-color:var(--primary);color:#fff;background:#d49b5538}.msg-action-btn.primary{color:var(--primary-light);background:#d49b5524;border-color:#d49b5561;font-weight:600}.msg-action-btn.primary:hover{border-color:var(--primary);color:#fff;background:#d49b5540}.affinity-modal{background:#141622;border:1px solid #d49b5559;border-radius:18px;width:90%;max-width:380px;animation:.25s ease-out modalSlideUp;overflow:hidden;box-shadow:0 12px 40px #000000a6}.affinity-modal-header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.affinity-modal-badge{border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.74rem;font-weight:700;display:inline-flex}.affinity-modal-body{text-align:center;flex-direction:column;align-items:center;padding:20px 20px 24px;display:flex}.affinity-modal-avatar-wrap{border:2px solid var(--primary);border-radius:50%;width:76px;height:76px;margin-bottom:12px;padding:3px;box-shadow:0 0 16px #d49b5540}.affinity-modal-avatar{object-fit:cover;border-radius:50%;width:100%;height:100%}.affinity-modal-avatar.placeholder{color:#fff;justify-content:center;align-items:center;font-size:1.5rem;font-weight:700;display:flex}.affinity-modal-name{color:#fff;margin-bottom:4px;font-size:1.15rem;font-weight:700}.affinity-modal-title{margin-bottom:8px;font-size:.85rem;font-weight:700}.affinity-modal-desc{color:var(--text-2);word-break:keep-all;margin-bottom:18px;font-size:.82rem;line-height:1.55}.affinity-progress-card{background:#00000059;border:1px solid #ffffff0f;border-radius:10px;width:100%;margin-bottom:14px;padding:12px 14px}.affinity-progress-label{color:var(--text-3);justify-content:space-between;margin-bottom:8px;font-size:.74rem;display:flex}.affinity-progress-bar-bg{background:#ffffff14;border-radius:3px;width:100%;height:6px;overflow:hidden}.affinity-progress-bar-active{border-radius:3px;height:100%;transition:width .5s}.affinity-tips-card{text-align:left;background:#d49b550f;border:1px dashed #d49b5540;border-radius:10px;width:100%;margin-bottom:18px;padding:12px 14px}.affinity-tips-title{color:var(--primary-light);margin-bottom:6px;font-size:.76rem;font-weight:700}.affinity-tips-text{color:#c9ccd8;word-break:keep-all;font-size:.75rem;line-height:1.55}.affinity-modal-btn{background:linear-gradient(135deg, var(--primary) 0%, #b8823f 100%);color:#090a0e;cursor:pointer;border:none;border-radius:10px;width:100%;padding:11px 0;font-size:.9rem;font-weight:700;transition:all .2s}.affinity-modal-btn:hover{opacity:.95;transform:translateY(-1px)}.font-chip-grid{grid-template-columns:repeat(3,1fr);gap:8px;padding:6px 0;display:grid}.font-select-chip{background:var(--bg-card2);color:var(--text-2);cursor:pointer;border:1px solid #ffffff14;border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;transition:all .2s;display:flex;position:relative}.font-select-chip:hover{color:#fff;background:#d49b5514;border-color:#d49b5566}.font-select-chip.active{border:1px solid var(--primary);color:#fff;background:#d49b5529;box-shadow:0 4px 16px #d49b552e}.font-chip-name{font-size:.96rem;font-weight:700}.font-chip-tag{opacity:.75;font-size:.68rem}.font-chip-check{color:var(--primary-light);font-size:.68rem;position:absolute;top:4px;right:6px}.font-size-row{justify-content:space-between;align-items:center;margin-top:10px;padding:4px 0;display:flex}.font-size-label{color:var(--text-2);font-size:.8rem;font-weight:600}.font-size-chips{gap:6px;display:flex}.font-size-btn{color:var(--text-3);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff14;border-radius:6px;padding:5px 10px;font-size:.74rem;transition:all .18s}.font-size-btn:hover{color:var(--text-2);background:#ffffff14}.font-size-btn.active{background:var(--primary);border-color:var(--primary);color:#090a0e;font-weight:700}.font-live-preview{background:#00000059;border:1px solid #d49b5538;border-radius:10px;margin-top:12px;padding:12px 14px}.font-preview-tag{color:var(--primary-light);letter-spacing:.05em;text-transform:uppercase;margin-bottom:6px;font-size:.68rem;font-weight:700}.font-preview-bubble{font-family:var(--chat-font-family,var(--font-gowun));font-size:var(--chat-font-size,1.02rem);word-break:keep-all;line-height:1.8}.profile-session-badge{color:#10b981;background:#10b9811a;border:1px solid #10b98140;border-radius:4px;margin-top:3px;padding:2px 8px;font-size:.72rem;display:inline-block}.db-sync-badge{color:#38bdf8;background:#38bdf81a;border:1px solid #38bdf833;border-radius:4px;padding:2px 6px;font-size:.7rem}.error-fallback-screen{background:#090a0e;justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.error-fallback-card{text-align:center;background:#141622;border:1px solid #f43f5e59;border-radius:16px;width:100%;max-width:420px;padding:32px 24px;box-shadow:0 16px 40px #0009}.error-fallback-card .error-icon{margin-bottom:12px;font-size:2.4rem}.modal-delete-char-btn{color:#fca5a5;cursor:pointer;background:#ef444414;border:1px solid #ef44444d;border-radius:12px;justify-content:center;align-items:center;gap:6px;width:100%;margin-top:10px;padding:12px;font-size:.88rem;font-weight:600;transition:all .2s;display:flex}.modal-delete-char-btn:hover{color:#fecaca;background:#ef44442e;border-color:#ef444499;transform:translateY(-1px)}.chat-header-del-btn:hover{color:#f87171!important;background:#ef444433!important;border-color:#ef444480!important}.chat-persona-pill{cursor:pointer;color:var(--primary-light);white-space:nowrap;background:#d49b551a;border:1px solid #d49b5547;border-radius:999px;flex-shrink:0;align-items:center;gap:4px;padding:3px 8px;font-size:.68rem;font-weight:600;transition:all .2s;display:inline-flex}.chat-persona-pill:hover{border-color:var(--primary);background:#d49b5533;transform:translateY(-1px)}.persona-pill-avatar{font-size:.76rem;line-height:1}.persona-pill-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.msg-avatar-sm.user{color:#fff;-webkit-user-select:none;user-select:none;background:#d49b5526;border:1px solid #d49b5559;justify-content:center;align-items:center;font-size:.95rem;display:flex}.persona-studio-group{box-shadow:0 4px 20px #00000059;background:linear-gradient(#1b1e2ce6 0%,#151722f2 100%)!important;border:1px solid #d49b5540!important}.persona-studio-desc{color:var(--text-2);margin-bottom:12px;font-size:.78rem;line-height:1.5}.persona-field{flex-direction:column;gap:6px;width:100%;margin-bottom:14px;display:flex}.persona-field-row{gap:10px;display:flex}.persona-field-row .persona-field{flex:1}.persona-label{color:var(--primary-light);align-items:center;gap:4px;font-size:.76rem;font-weight:700;display:flex}.persona-field-hint{color:var(--text-3);margin-top:2px;font-size:.68rem}.persona-avatar-grid{grid-template-columns:repeat(6,1fr);gap:6px;display:grid}.persona-avatar-btn{cursor:pointer;background:#ffffff0a;border:1px solid #ffffff14;border-radius:8px;justify-content:center;align-items:center;height:36px;font-size:1.15rem;transition:all .18s;display:flex}.persona-avatar-btn:hover{background:#d49b551f;border-color:#d49b5566;transform:scale(1.06)}.persona-avatar-btn.active{border:1px solid var(--primary);background:#d49b5538;transform:scale(1.08);box-shadow:0 0 10px #d49b5559}.persona-input,.persona-textarea{background:var(--bg-input);color:#fff;border:1px solid #ffffff17;border-radius:8px;outline:none;width:100%;padding:10px 12px;font-size:.85rem;transition:border-color .2s,box-shadow .2s}.persona-input:focus,.persona-textarea:focus{border-color:var(--primary);box-shadow:0 0 8px #d49b5540}.persona-textarea{resize:vertical;line-height:1.5}.persona-chip-group{flex-wrap:wrap;gap:6px;display:flex}.persona-chip-btn{color:var(--text-2);cursor:pointer;text-align:center;white-space:nowrap;background:#ffffff0a;border:1px solid #ffffff14;border-radius:6px;flex:1;padding:6px 8px;font-size:.74rem;font-weight:600;transition:all .18s}.persona-chip-btn:hover{color:#fff;background:#ffffff14}.persona-chip-btn.active{border-color:var(--primary);color:var(--primary-light);background:#d49b552e;font-weight:700}.persona-presets{flex-wrap:wrap;gap:5px;margin-top:4px;display:flex}.persona-preset-tag{color:var(--text-3);cursor:pointer;text-align:left;background:#ffffff0a;border:1px solid #ffffff12;border-radius:4px;padding:3px 7px;font-size:.68rem;transition:all .18s}.persona-preset-tag:hover{color:var(--primary-light);background:#d49b551f;border-color:#d49b554d}.persona-preview-card{background:#00000059;border:1px solid #d49b5547;border-radius:10px;margin-top:6px;margin-bottom:14px;padding:12px 14px}.persona-preview-head{align-items:center;gap:10px;margin-bottom:8px;display:flex}.persona-preview-avatar{background:#d49b551f;border:1px solid #d49b554d;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-size:1.5rem;line-height:1;display:flex}.persona-preview-name{color:#fff;align-items:center;gap:6px;font-size:.88rem;font-weight:700;display:flex}.persona-preview-badge{color:var(--primary-light);background:#d49b5524;border-radius:4px;padding:1px 6px;font-size:.68rem;font-weight:500}.persona-preview-role{color:var(--text-2);margin-top:2px;font-size:.74rem;line-height:1.4}.persona-preview-speech{border-top:1px dashed #ffffff14;padding-top:8px;font-size:.76rem;line-height:1.5}.persona-preview-speech .speech-quote{color:var(--primary-light);margin-right:4px;font-weight:700}.persona-preview-speech .speech-text{color:#e2e4ef;font-style:italic}.persona-actions-row{gap:8px;display:flex}.persona-save-btn{background:linear-gradient(135deg, var(--primary) 0%, #b8823f 100%);color:#090a0e;cursor:pointer;border:none;border-radius:10px;flex:1;padding:11px;font-size:.88rem;font-weight:700;transition:all .2s;box-shadow:0 4px 14px #d49b5540}.persona-save-btn:hover{opacity:.95;transform:translateY(-1px)}.persona-reset-btn{color:var(--text-3);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;padding:11px 16px;font-size:.82rem;transition:all .2s}.persona-reset-btn:hover{color:#fff;background:#ffffff1a}.persona-modal{scrollbar-width:none;background:#141622;border:1px solid #d49b5559;border-radius:18px;width:90%;max-width:400px;max-height:88vh;animation:.25s ease-out modalSlideUp;overflow-y:auto;box-shadow:0 12px 40px #000000b3}.persona-modal::-webkit-scrollbar{display:none}.persona-modal-header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.persona-modal-title{color:#fff;align-items:center;gap:6px;font-size:.96rem;font-weight:700;display:flex}.persona-modal-body{padding:16px 18px 20px}.persona-modal-guide{color:var(--text-2);margin-bottom:14px;font-size:.78rem;line-height:1.5}.persona-modal-actions{gap:8px;margin-top:6px;display:flex}.persona-btn-primary{background:linear-gradient(135deg, var(--primary) 0%, #b8823f 100%);color:#090a0e;cursor:pointer;border:none;border-radius:10px;flex:1;padding:11px;font-size:.88rem;font-weight:700;transition:all .2s}.persona-btn-primary:hover{opacity:.95;transform:translateY(-1px)}.persona-btn-secondary{color:var(--text-2);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;padding:11px 16px;font-size:.82rem;transition:all .2s}.persona-btn-secondary:hover{color:#fff;background:#ffffff1a}.rp-action{color:#94a3b8;letter-spacing:-.01em;font-style:italic;font-weight:400;line-height:1.7;display:inline}.message.user .rp-action{color:#cbd5e1}.rp-dialogue{color:#fff;letter-spacing:-.01em;font-weight:500;line-height:1.7;display:inline}.rp-quote-mark{color:var(--primary-color,#d49b55);margin:0 1px;font-weight:600}.rp-whisper{color:#64748b;font-size:.94em;font-style:italic;display:inline}.rp-bold{color:#f1f5f9;font-weight:600}.rp-narrator{border:1px solid #d49b5540;border-left:3px solid var(--primary-color,#d49b55);color:#cbd5e1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172aa6;border-radius:8px;width:100%;margin:12px 0;padding:10px 16px;font-size:.88rem;font-style:normal;line-height:1.6;display:block;box-shadow:0 4px 12px #00000040}.rp-narrator-tag{color:var(--primary-color,#d49b55);text-transform:uppercase;letter-spacing:.08em;background:#d49b551f;border-radius:4px;margin-right:8px;padding:2px 6px;font-size:.72rem;font-weight:700;display:inline-block}.chat-ambient-bg{filter:blur(55px)brightness(.18)saturate(1.2);opacity:.85;pointer-events:none;z-index:0;background-position:50%;background-size:cover;transition:opacity .5s;position:absolute;inset:0;transform:scale(1.15)}.chat-view{position:relative;overflow:hidden}.chat-view>:not(.chat-ambient-bg){z-index:1;position:relative}.message-wrap{transition:transform .15s;position:relative}.msg-content-column{flex-direction:column;max-width:82%;display:flex}.message-wrap.user .msg-content-column{align-items:flex-end}.message-wrap:hover .msg-action-bar{opacity:1;pointer-events:auto;transform:translateY(0)}.message{white-space:pre-wrap;word-break:break-word;letter-spacing:-.015em;font-size:.94rem;line-height:1.7;box-shadow:0 2px 8px #0000002e}.message.ai{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#181a23c7;border:1px solid #ffffff12}.message.user{background:linear-gradient(135deg,#1e1b4b 0%,#312e81 100%);border:1px solid #818cf840}.msg-action-bar{opacity:.35;pointer-events:auto;align-items:center;gap:4px;margin-top:4px;padding:2px 6px;transition:all .2s;display:flex}@media (hover:none){.msg-action-bar{opacity:.8}}.message-wrap.user .msg-action-bar{justify-content:flex-end}.msg-action-btn{color:#94a3b8;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff14;border-radius:6px;align-items:center;gap:4px;padding:3px 7px;font-size:.72rem;font-weight:500;transition:all .15s;display:inline-flex}.msg-action-btn:hover{color:#fff;background:#ffffff24;border-color:#ffffff2e;transform:translateY(-1px)}.msg-action-btn.danger:hover{color:#fca5a5;background:#ef444433;border-color:#ef44444d}.msg-edit-box{flex-direction:column;gap:8px;width:100%;margin-top:4px;display:flex}.msg-edit-textarea{border:1px solid var(--primary-color,#d49b55);color:#f8fafc;resize:vertical;background:#0f172ad9;border-radius:8px;outline:none;width:100%;min-height:80px;padding:10px 12px;font-family:inherit;font-size:.92rem;line-height:1.6}.msg-edit-actions{justify-content:flex-end;gap:6px;display:flex}.msg-edit-btn{cursor:pointer;border:none;border-radius:6px;padding:5px 12px;font-size:.78rem;font-weight:600;transition:all .15s}.msg-edit-btn.cancel{color:#94a3b8;background:#ffffff1a}.msg-edit-btn.save{background:var(--primary-color,#d49b55);color:#0b0c10}.action-chips-container{scrollbar-width:none;-ms-overflow-style:none;gap:6px;margin-bottom:4px;padding:6px 14px;display:flex;overflow-x:auto}.action-chips-container::-webkit-scrollbar{display:none}.action-chip{color:#cbd5e1;cursor:pointer;white-space:nowrap;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:9999px;flex-shrink:0;padding:5px 12px;font-size:.76rem;transition:all .15s}.action-chip:hover{border-color:var(--primary-color,#d49b55);color:#f8fafc;background:#d49b5526;transform:translateY(-1px)}.quick-input-tools{align-items:center;gap:6px;padding:0 14px 6px;display:flex}.quick-tool-btn{color:#94a3b8;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff14;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:.74rem;font-weight:500;transition:all .15s;display:inline-flex}.quick-tool-btn:hover{color:#fff;background:#ffffff1f;border-color:#ffffff2e}.quick-tool-btn.active{border-color:var(--primary-color,#d49b55);color:var(--primary-color,#d49b55);background:#d49b5533}.rp-toast{border:1px solid var(--primary-color,#d49b55);color:#f8fafc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:9999;pointer-events:none;background:#0f172aeb;border-radius:20px;padding:8px 18px;font-size:.82rem;font-weight:500;animation:.25s ease-out fadeInDown;position:fixed;top:72px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0006}@keyframes fadeInDown{0%{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%)}}.chat-genmode-pill{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:4px;align-items:center;gap:4px;padding:2px 8px;font-size:.68rem;font-weight:600;transition:all .2s;display:inline-flex}.chat-genmode-pill.fast{color:#38bdf8;background:#38bdf81f;border:1px solid #38bdf859}.chat-genmode-pill.fast:hover{background:#38bdf838;border-color:#38bdf8}.chat-genmode-pill.smart{color:#c084fc;background:#c084fc1f;border:1px solid #c084fc59}.chat-genmode-pill.smart:hover{background:#c084fc38;border-color:#c084fc}.gen-mode-grid{flex-direction:column;gap:10px;margin-top:8px;display:flex}.gen-mode-card{cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#181a26a6;border:1px solid #ffffff14;border-radius:12px;padding:14px 16px;transition:all .2s}.gen-mode-card:hover{background:#181a26e6;border-color:#d49b5559;transform:translateY(-1px)}.gen-mode-card.active{border-color:var(--primary-color,#d49b55);background:#d49b5514;box-shadow:0 4px 16px #d49b551f}.gen-mode-card-header{align-items:center;gap:12px;margin-bottom:8px;display:flex}.gen-mode-icon{font-size:1.5rem;line-height:1}.gen-mode-header-text{flex:1}.gen-mode-name{color:#f8fafc;align-items:center;gap:8px;font-size:.92rem;font-weight:700;display:flex}.gen-mode-badge{border-radius:4px;padding:2px 6px;font-size:.68rem;font-weight:600}.gen-mode-badge.fast{color:#38bdf8;background:#38bdf82e;border:1px solid #38bdf859}.gen-mode-badge.smart{color:#c084fc;background:#c084fc2e;border:1px solid #c084fc59}.gen-mode-latency{color:#94a3b8;margin-top:2px;font-size:.76rem}.gen-mode-check{color:var(--primary-color,#d49b55);font-size:1.1rem;font-weight:700}.gen-mode-desc{color:#94a3b8;font-size:.8rem;line-height:1.55}.quick-genmode-btn.fast{color:#38bdf8;background:#38bdf81a;border-color:#38bdf859;font-weight:600}.quick-genmode-btn.smart{color:#c084fc;background:#c084fc1a;border-color:#c084fc59;font-weight:600}.bottom-mode-pill{border-radius:4px;align-items:center;margin-left:8px;padding:1px 7px;font-size:.68rem;font-weight:600;display:inline-flex}.bottom-mode-pill.fast{color:#38bdf8;background:#38bdf829;border:1px solid #38bdf84d}.bottom-mode-pill.smart{color:#c084fc;background:#c084fc29;border:1px solid #c084fc4d}.admin-overlay{-webkit-backdrop-filter:blur(12px);z-index:9999;background:#040508e0;justify-content:center;align-items:center;width:100vw;height:100vh;padding:16px;animation:.25s ease-out adminFadeIn;display:flex;position:fixed;top:0;left:0}@keyframes adminFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.admin-auth-card{text-align:center;background:#11141f;border:1px solid #d49b5559;border-radius:20px;width:100%;max-width:380px;padding:32px 24px;animation:.3s cubic-bezier(.16,1,.3,1) adminSlideUp;position:relative;box-shadow:0 16px 50px #000c,0 0 30px #d49b5526}@keyframes adminSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.admin-auth-icon{color:#e8b26e;background:#d49b551f;border:1px solid #d49b554d;border-radius:16px;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 16px;font-size:26px;display:flex}.admin-auth-title{color:#f4f4f7;letter-spacing:-.02em;margin-bottom:6px;font-size:1.25rem;font-weight:700}.admin-auth-desc{color:#8c8fa5;margin-bottom:24px;font-size:.82rem;line-height:1.5}.admin-auth-input-wrap{margin-bottom:18px}.admin-auth-input{color:#f4f4f7;text-align:center;letter-spacing:.3em;background:#181b2a;border:1px solid #ffffff1a;border-radius:12px;outline:none;width:100%;padding:14px 18px;font-size:1.1rem;transition:all .2s}.admin-auth-input:focus{border-color:#d49b55;box-shadow:0 0 0 3px #d49b5533}.admin-auth-error{color:#f87171;margin-bottom:14px;font-size:.8rem;animation:.3s adminShake}@keyframes adminShake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.admin-auth-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#d49b55,#b67d38);border:none;border-radius:12px;width:100%;padding:14px;font-size:.95rem;font-weight:600;transition:opacity .2s}.admin-auth-btn:hover{opacity:.92}.admin-auth-cancel{color:#6e7084;cursor:pointer;background:0 0;border:none;margin-top:14px;font-size:.82rem}.admin-auth-cancel:hover{color:#b2b4c5}.admin-modal{background:#0d0f17;border:1px solid #d49b554d;border-radius:20px;flex-direction:column;width:95vw;max-width:1180px;height:90vh;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 70px #000000d9}.admin-header{background:#111420;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.admin-header-left{align-items:center;gap:12px;display:flex}.admin-title-badge{color:#e8b26e;letter-spacing:.05em;background:#d49b5526;border:1px solid #d49b5559;border-radius:6px;padding:3px 8px;font-size:.72rem;font-weight:700}.admin-title{color:#f4f4f7;align-items:center;gap:8px;font-size:1.15rem;font-weight:700;display:flex}.admin-live-dot{background:#10b981;border-radius:50%;width:8px;height:8px;animation:2s infinite adminPulse;box-shadow:0 0 10px #10b981}@keyframes adminPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}.admin-header-actions{align-items:center;gap:10px;display:flex}.admin-btn-icon{color:#b2b4c5;cursor:pointer;background:#181b2b;border:1px solid #ffffff14;border-radius:10px;align-items:center;gap:6px;padding:8px 14px;font-size:.82rem;transition:all .2s;display:flex}.admin-btn-icon:hover{color:#f4f4f7;background:#202438;border-color:#ffffff2e}.admin-btn-close{color:#8c8fa5;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px;font-size:1.4rem;line-height:1}.admin-btn-close:hover{color:#f4f4f7;background:#ffffff0f}.admin-stats-bar{background:#0e111a;border-bottom:1px solid #ffffff0f;grid-template-columns:repeat(4,1fr);gap:12px;padding:12px 24px;display:grid}.admin-stat-item{background:#141724;border:1px solid #ffffff0d;border-radius:10px;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.admin-stat-label{color:#7b7e93;font-size:.74rem}.admin-stat-val{color:#e8b26e;font-size:1.1rem;font-weight:700}.admin-body{flex:1;display:flex;overflow:hidden}.admin-sidebar{background:#10131e;border-right:1px solid #ffffff12;flex-direction:column;width:360px;display:flex;overflow:hidden}.admin-filter-bar{border-bottom:1px solid #ffffff0d;flex-direction:column;gap:8px;padding:12px 16px;display:flex}.admin-search-input{color:#f4f4f7;background:#171a28;border:1px solid #ffffff14;border-radius:8px;outline:none;width:100%;padding:8px 12px;font-size:.82rem}.admin-search-input:focus{border-color:#d49b55}.admin-char-select{color:#d49b55;cursor:pointer;background:#171a28;border:1px solid #ffffff14;border-radius:8px;outline:none;width:100%;padding:8px 12px;font-size:.82rem}.admin-room-list{flex-direction:column;flex:1;gap:6px;padding:8px;display:flex;overflow-y:auto}.admin-room-item{cursor:pointer;background:#141724;border:1px solid #ffffff0a;border-radius:12px;flex-direction:column;gap:6px;padding:12px;transition:all .18s;display:flex}.admin-room-item:hover{background:#1a1e2f;border-color:#d49b5540}.admin-room-item.active{background:#1e2236;border-color:#d49b55;box-shadow:0 4px 14px #d49b5526}.admin-room-header{justify-content:space-between;align-items:center;display:flex}.admin-room-char{color:#f4f4f7;align-items:center;gap:8px;font-size:.88rem;font-weight:600;display:flex}.admin-room-avatar{font-size:1.1rem}.admin-room-time{color:#6e7084;font-size:.7rem}.admin-room-session{color:#8c8fa5;background:#ffffff0a;border-radius:4px;align-self:flex-start;padding:2px 6px;font-family:monospace;font-size:.72rem}.admin-room-snippet{color:#a0a3b6;white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;line-height:1.4;overflow:hidden}.admin-room-count-badge{color:#d49b55;background:#d49b551f;border-radius:6px;padding:2px 6px;font-size:.68rem;font-weight:600}.admin-main{background:#090b11;flex-direction:column;flex:1;display:flex;overflow:hidden}.admin-chat-header{background:#111420;border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:14px 24px;display:flex}.admin-chat-title-group{align-items:center;gap:12px;display:flex}.admin-chat-char-name{color:#f4f4f7;font-size:1.05rem;font-weight:700}.admin-chat-session-id{color:#d49b55;background:#d49b551a;border-radius:6px;padding:3px 8px;font-family:monospace;font-size:.76rem}.admin-chat-count{color:#7b7e93;font-size:.78rem}.admin-messages-scroll{flex-direction:column;flex:1;gap:16px;padding:24px;display:flex;overflow-y:auto}.admin-msg-row{flex-direction:column;max-width:82%;display:flex}.admin-msg-row.user{align-self:flex-end;align-items:flex-end}.admin-msg-row.ai{align-self:flex-start;align-items:flex-start}.admin-msg-row.system{align-self:center;align-items:center;max-width:90%}.admin-msg-meta{color:#6e7084;align-items:center;gap:6px;margin-bottom:4px;font-size:.7rem;display:flex}.admin-bubble{white-space:pre-wrap;word-break:break-word;border-radius:14px;padding:12px 16px;font-size:.88rem;line-height:1.6;position:relative}.admin-msg-row.user .admin-bubble{color:#f4f4f7;background:#1c2438;border:1px solid #78a0ff33;border-bottom-right-radius:3px}.admin-msg-row.ai .admin-bubble{color:#ececf2;background:#151824;border:1px solid #d49b5538;border-bottom-left-radius:3px}.admin-bubble .action-text{color:#d49b55;font-style:italic}.admin-bubble .dialogue-text{color:#fff;font-weight:500}.admin-system-badge{color:#8c8fa5;background:#ffffff0d;border:1px solid #ffffff14;border-radius:12px;padding:4px 12px;font-size:.74rem}.admin-empty-chat{color:#6e7084;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;font-size:.9rem;display:flex}@media (width<=768px){.admin-modal{border-radius:0;width:100vw;height:100vh}.admin-stats-bar{grid-template-columns:repeat(2,1fr)}.admin-sidebar{width:100%;display:flex}.admin-sidebar.hide-mobile,.admin-main.hide-mobile{display:none}}.auth-overlay{-webkit-backdrop-filter:blur(14px);z-index:10000;background:#040508d9;justify-content:center;align-items:center;width:100vw;height:100vh;padding:16px;animation:.25s ease-out authFadeIn;display:flex;position:fixed;top:0;left:0}@keyframes authFadeIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.auth-card{background:#111420;border:1px solid #d49b5559;border-radius:24px;width:100%;max-width:420px;padding:32px 28px;animation:.3s cubic-bezier(.16,1,.3,1) authSlideUp;position:relative;overflow:hidden;box-shadow:0 20px 60px #000000d9,0 0 35px #d49b5526}@keyframes authSlideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.auth-close-btn{color:#6e7084;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px;font-size:1.3rem;line-height:1;transition:all .2s;position:absolute;top:18px;right:18px}.auth-close-btn:hover{color:#f4f4f7;background:#ffffff14}.auth-header{text-align:center;margin-bottom:22px}.auth-logo-badge{color:#e8b26e;letter-spacing:.05em;background:#d49b551f;border:1px solid #d49b554d;border-radius:20px;align-items:center;gap:6px;margin-bottom:12px;padding:4px 12px;font-size:.76rem;font-weight:700;display:inline-flex}.auth-title{color:#f4f4f7;letter-spacing:-.02em;margin-bottom:6px;font-size:1.35rem;font-weight:700}.auth-subtitle{color:#8c8fa5;font-size:.84rem;line-height:1.5}.auth-quota-notice{background:linear-gradient(135deg,#d49b5526,#b67d3814);border:1px solid #d49b5559;border-radius:12px;align-items:flex-start;gap:10px;margin-bottom:20px;padding:12px 14px;display:flex}.auth-quota-icon{font-size:1.2rem;line-height:1.2}.auth-quota-text{color:#f4f4f7;font-size:.8rem;line-height:1.5}.auth-quota-text strong{color:#e8b26e}.auth-tabs{background:#171a28;border:1px solid #ffffff0d;border-radius:12px;margin-bottom:22px;padding:4px;display:flex}.auth-tab-btn{color:#8c8fa5;cursor:pointer;background:0 0;border:none;border-radius:9px;flex:1;padding:10px;font-size:.88rem;font-weight:600;transition:all .2s}.auth-tab-btn.active{color:#f4f4f7;background:#222638;box-shadow:0 2px 8px #0000004d}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-input-group{flex-direction:column;gap:6px;display:flex}.auth-label{color:#b2b4c5;justify-content:space-between;font-size:.8rem;font-weight:600;display:flex}.auth-label-hint{color:#6e7084;font-size:.72rem;font-weight:400}.auth-input{color:#f4f4f7;background:#171a28;border:1px solid #ffffff1a;border-radius:12px;outline:none;width:100%;padding:12px 16px;font-size:.95rem;transition:all .2s}.auth-input:focus{background:#1a1e2f;border-color:#d49b55;box-shadow:0 0 0 3px #d49b5533}.auth-input::placeholder{color:#5d6075}.auth-error-msg{color:#f87171;background:#ef44441f;border:1px solid #ef44444d;border-radius:10px;align-items:center;gap:8px;padding:10px 14px;font-size:.8rem;animation:.3s authShake;display:flex}@keyframes authShake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.auth-submit-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#d49b55,#b67d38);border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:4px;padding:14px;font-size:.98rem;font-weight:700;transition:all .2s;display:flex;box-shadow:0 4px 18px #d49b554d}.auth-submit-btn:hover{opacity:.93;transform:translateY(-1px);box-shadow:0 6px 22px #d49b5566}.auth-submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-benefits-box{background:#ffffff05;border:1px solid #ffffff0d;border-radius:12px;margin-top:22px;padding:14px}.auth-benefits-title{color:#e8b26e;align-items:center;gap:6px;margin-bottom:8px;font-size:.76rem;font-weight:700;display:flex}.auth-benefits-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.auth-benefits-list li{color:#8c8fa5;align-items:center;gap:6px;font-size:.78rem;display:flex}.auth-benefits-list li span.check{color:#10b981;font-weight:700}.guest-badge{color:#e8b26e;cursor:pointer;background:#d49b551f;border:1px solid #d49b5559;border-radius:12px;align-items:center;gap:5px;padding:3px 8px;font-size:.72rem;font-weight:600;transition:all .2s;display:inline-flex}.guest-badge:hover{background:#d49b5533}.guest-badge.warning{color:#f87171;background:#ef444426;border-color:#ef444466;animation:1.5s infinite pulseBadge}@keyframes pulseBadge{0%,to{opacity:1}50%{opacity:.6}}.policy-overlay{-webkit-backdrop-filter:blur(14px);z-index:10001;background:#040508e0;justify-content:center;align-items:center;width:100vw;height:100vh;padding:16px;animation:.25s ease-out policyFadeIn;display:flex;position:fixed;top:0;left:0}@keyframes policyFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.policy-card{background:#0f121d;border:1px solid #d49b5559;border-radius:20px;flex-direction:column;width:100%;max-width:860px;height:85vh;animation:.3s cubic-bezier(.16,1,.3,1) policySlideUp;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 70px #000000e6,0 0 35px #d49b5526}@keyframes policySlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.policy-header{background:#141826;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.policy-header-left{align-items:center;gap:10px;display:flex}.policy-header-title{color:#f4f4f7;letter-spacing:-.02em;font-size:1.15rem;font-weight:700}.policy-badge{color:#e8b26e;background:#d49b5526;border:1px solid #d49b554d;border-radius:6px;padding:2px 8px;font-size:.72rem;font-weight:700}.policy-close-btn{color:#8c8fa5;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px;font-size:1.4rem;line-height:1;transition:all .2s}.policy-close-btn:hover{color:#f4f4f7;background:#ffffff14}.policy-tabs-bar{white-space:nowrap;background:#111420;border-bottom:1px solid #ffffff0f;gap:6px;padding:10px 20px;display:flex;overflow-x:auto}.policy-tab-item{color:#8c8fa5;cursor:pointer;background:#171b2b;border:1px solid #ffffff0d;border-radius:10px;padding:8px 16px;font-size:.84rem;font-weight:600;transition:all .2s}.policy-tab-item:hover{color:#f4f4f7;border-color:#d49b554d}.policy-tab-item.active{color:#e8b26e;background:#202438;border-color:#d49b55;box-shadow:0 2px 10px #d49b5526}.policy-body{color:#c5c7d8;flex:1;padding:28px 32px;font-size:.9rem;line-height:1.75;overflow-y:auto}.policy-body h2{color:#f4f4f7;border-bottom:1px solid #ffffff14;margin-top:24px;margin-bottom:12px;padding-bottom:8px;font-size:1.28rem;font-weight:700}.policy-body h2:first-child{margin-top:0}.policy-body h3{color:#e8b26e;margin-top:18px;margin-bottom:8px;font-size:1.05rem;font-weight:600}.policy-body p{margin-bottom:14px}.policy-body ul,.policy-body ol{margin-bottom:16px;padding-left:22px}.policy-body li{margin-bottom:6px}.policy-body strong{color:#f4f4f7}.policy-highlight-box{color:#f4f4f7;background:#d49b551a;border:1px solid #d49b554d;border-radius:12px;margin:18px 0;padding:16px 20px}.policy-highlight-box strong{color:#e8b26e}.policy-contact-card{background:#151827;border:1px solid #ffffff14;border-radius:14px;flex-direction:column;gap:12px;margin:20px 0;padding:20px;display:flex}.policy-contact-row{align-items:center;gap:12px;font-size:.92rem;display:flex}.policy-contact-label{color:#8c8fa5;width:90px;font-weight:600}.policy-contact-val{color:#f4f4f7;font-weight:600}.atelier-footer{text-align:center;background:#090a0f;border-top:1px solid #ffffff0f;flex-direction:column;align-items:center;gap:16px;margin-top:48px;padding:36px 20px 48px;display:flex}.atelier-footer-brand{color:#f4f4f7;letter-spacing:.08em;align-items:center;gap:8px;font-size:1.05rem;font-weight:800;display:flex}.atelier-footer-brand span{color:#d49b55}.atelier-footer-desc{color:#72758a;max-width:540px;font-size:.8rem;line-height:1.6}.atelier-footer-nav{flex-wrap:wrap;justify-content:center;gap:8px 18px;margin:6px 0;display:flex}.atelier-footer-link{color:#9497ab;cursor:pointer;background:0 0;border:none;padding:4px 6px;font-size:.82rem;font-weight:500;transition:all .2s}.atelier-footer-link:hover{color:#e8b26e;text-decoration:underline}.atelier-footer-copy{color:#55586b;margin-top:4px;font-size:.74rem}@media (width<=768px){.policy-card{border-radius:0;width:100vw;height:100vh}.policy-body{padding:20px 18px}.policy-tabs-bar{padding:8px 12px}}
