@charset "UTF-8";*,*:before,*:after{box-sizing:border-box}body,h1,h2,h3,h4,h5,h6,p{margin:0}:root{font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--font-sans: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;--font-mono: "Consolas", "Monaco", "Fira Code", monospace;--text-xs: .625rem;--text-sm: .75rem;--text-base: .875rem;--text-md: 1rem;--text-lg: 1.25rem;--text-xl: 1.5rem;--text-2xl: 2rem;--bg-base: #09090b;--bg-primary: #0f0f12;--bg-secondary: #18181b;--bg-tertiary: #212124;--bg-elevated: #2a2a2e;--bg-overlay: rgba(0, 0, 0, .7);--bg-glass: rgba(15, 15, 18, .95);--text-primary: #fafafa;--text-secondary: rgba(250, 250, 250, .85);--text-tertiary: rgba(250, 250, 250, .7);--text-muted: rgba(250, 250, 250, .5);--text-placeholder: rgba(250, 250, 250, .35);--text-disabled: rgba(250, 250, 250, .3);--text-on-accent: #ffffff;--accent-primary: #a78bfa;--accent-primary-hover: #c4b5fd;--accent-primary-glow: rgba(167, 139, 250, .35);--accent-secondary: #2dd4bf;--accent-secondary-hover: #5eead4;--accent-secondary-glow: rgba(45, 212, 191, .35);--accent-primary-bg: rgba(167, 139, 250, .1);--accent-primary-bg-hover: rgba(167, 139, 250, .15);--gradient-primary: #a78bfa;--gradient-background: #09090b;--gradient-surface: #18181b;--status-success: #10b981;--status-success-bg: rgba(16, 185, 129, .15);--status-success-border: rgba(16, 185, 129, .3);--status-error: #f87171;--status-error-light: #fca5a5;--status-error-bg: rgba(248, 113, 113, .15);--status-error-border: rgba(248, 113, 113, .3);--status-warning: #fbbf24;--status-warning-bg: rgba(251, 191, 36, .15);--status-warning-border: rgba(251, 191, 36, .3);--status-info: #60a5fa;--status-info-bg: rgba(96, 165, 250, .15);--status-info-border: rgba(96, 165, 250, .3);--border-default: rgba(250, 250, 250, .1);--border-hover: rgba(250, 250, 250, .15);--border-focus: rgba(167, 139, 250, .5);--border-active: rgba(167, 139, 250, .6);--ui-fill: rgba(250, 250, 250, .06);--ui-fill-hover: rgba(250, 250, 250, .1);--ui-fill-pressed: rgba(250, 250, 250, .14);--ui-fill-selected: rgba(167, 139, 250, .15);--ui-fill-active: rgba(45, 212, 191, .15);--ui-glass: rgba(15, 15, 18, .75);--ui-glass-hover: rgba(15, 15, 18, .85);--callout-bg: rgba(167, 139, 250, .1);--callout-border: rgba(167, 139, 250, .25);--callout-text: rgba(167, 139, 250, .95);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .2);--shadow-md: 0 4px 16px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .4);--shadow-xl: 0 25px 50px rgba(0, 0, 0, .5);--shadow-glow: 0 4px 15px var(--accent-primary-glow);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--animation-slide-up: slideUpBottomSheet .3s ease;--z-base: 1;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 500;--z-modal: 1000;--z-popover: 1100;--z-tooltip: 1200;--scrollbar-width: 6px;--scrollbar-track: transparent;--scrollbar-thumb: rgba(250, 250, 250, .15);--scrollbar-thumb-hover: rgba(250, 250, 250, .25);--panel-width: clamp(300px, 28vw, 600px)}[data-theme=light]{--bg-base: #fafafa;--bg-primary: #ffffff;--bg-secondary: #f4f4f5;--bg-tertiary: #e4e4e7;--bg-elevated: #d4d4d8;--bg-overlay: rgba(0, 0, 0, .5);--bg-glass: rgba(255, 255, 255, .95);--text-primary: #18181b;--text-secondary: #3f3f46;--text-tertiary: #52525b;--text-muted: #71717a;--text-placeholder: #a1a1aa;--text-disabled: #d4d4d8;--text-on-accent: #ffffff;--accent-primary: #8b5cf6;--accent-primary-hover: #a78bfa;--accent-primary-glow: rgba(139, 92, 246, .2);--accent-secondary: #14b8a6;--accent-secondary-hover: #2dd4bf;--accent-secondary-glow: rgba(20, 184, 166, .2);--accent-primary-bg: rgba(139, 92, 246, .08);--accent-primary-bg-hover: rgba(139, 92, 246, .12);--gradient-primary: #8b5cf6;--gradient-background: #fafafa;--gradient-surface: #f4f4f5;--status-success: #059669;--status-success-bg: rgba(5, 150, 105, .1);--status-success-border: rgba(5, 150, 105, .25);--status-error: #dc2626;--status-error-light: #fca5a5;--status-error-bg: rgba(220, 38, 38, .1);--status-error-border: rgba(220, 38, 38, .25);--status-warning: #d97706;--status-warning-bg: rgba(217, 119, 6, .1);--status-warning-border: rgba(217, 119, 6, .25);--status-info: #2563eb;--status-info-bg: rgba(37, 99, 235, .1);--status-info-border: rgba(37, 99, 235, .25);--border-default: rgba(0, 0, 0, .08);--border-hover: rgba(0, 0, 0, .12);--border-focus: rgba(139, 92, 246, .4);--border-active: rgba(139, 92, 246, .5);--ui-fill: rgba(0, 0, 0, .04);--ui-fill-hover: rgba(0, 0, 0, .06);--ui-fill-pressed: rgba(0, 0, 0, .08);--ui-fill-selected: rgba(139, 92, 246, .1);--ui-fill-active: rgba(20, 184, 166, .1);--ui-glass: rgba(255, 255, 255, .75);--ui-glass-hover: rgba(255, 255, 255, .9);--callout-bg: rgba(139, 92, 246, .08);--callout-border: rgba(139, 92, 246, .2);--callout-text: rgba(139, 92, 246, .95);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--shadow-xl: 0 20px 40px rgba(0, 0, 0, .15);--shadow-glow: 0 4px 15px var(--accent-primary-glow);--scrollbar-thumb: rgba(0, 0, 0, .15);--scrollbar-thumb-hover: rgba(0, 0, 0, .25)}*::-webkit-scrollbar{width:var(--scrollbar-width);height:var(--scrollbar-width)}*::-webkit-scrollbar-track{background:var(--scrollbar-track)}*::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:calc(var(--scrollbar-width) / 2)}*::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}@keyframes slideUpBottomSheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.modal-loading-fallback{position:fixed;inset:0;background:var(--bg-overlay);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal)}.modal-loading-spinner{width:32px;height:32px;border:3px solid var(--border-default);border-top-color:var(--accent-primary);border-radius:50%;animation:spin .8s linear infinite}.avatar-controls-dropdown{position:relative}.avatar-controls-trigger{height:32px;padding:0 10px;border-radius:9999px;border:1px solid var(--border-default);background:var(--ui-glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;display:inline-flex;align-items:center;gap:.375rem;transition:all var(--transition-normal)}.avatar-controls-trigger:hover{background:var(--ui-glass-hover);border-color:var(--border-hover)}.avatar-controls-trigger:active{transform:scale(.97)}.avatar-controls-trigger:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent-secondary-glow)}.avatar-controls-icon{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--ui-fill);border:1px solid var(--border-default);color:var(--text-primary)}.avatar-controls-label{font-size:var(--text-base);font-weight:600;color:var(--text-primary);letter-spacing:-.01em}.avatar-controls-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:140px;padding:6px;border-radius:var(--radius-lg);border:1px solid var(--border-default);background:var(--ui-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-lg);z-index:100;display:flex;flex-direction:column;gap:.25rem}.avatar-controls-item{width:100%;height:36px;padding:0 12px;border-radius:var(--radius-md);border:none;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;gap:.625rem;font-size:var(--text-base);font-weight:500;transition:all var(--transition-normal)}.avatar-controls-item:hover{background:var(--ui-fill-hover);color:var(--text-primary)}.avatar-controls-item:active{transform:translateY(1px)}.avatar-controls-item:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent-secondary-glow)}.source-citation{margin-top:.5rem;font-size:var(--text-sm)}.source-citation-header{display:flex;align-items:center;gap:.25rem;padding:4px 8px;background:var(--ui-fill);border:1px solid var(--border-default);border-radius:4px;color:var(--text-muted);cursor:pointer;transition:all .2s ease}.source-citation-header:hover{background:var(--ui-fill-hover);color:var(--text-secondary)}.source-count{font-size:var(--text-sm)}.source-list{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.25rem}.source-item{margin:0;padding:0}.source-link{display:flex;align-items:center;gap:.25rem;padding:4px 8px;background:var(--ui-fill);border:1px solid var(--border-default);border-radius:4px;color:var(--accent-primary);text-decoration:none;font-size:var(--text-sm);transition:all .2s ease}.source-link:hover{background:var(--ui-fill-hover);color:var(--accent-primary-hover);border-color:var(--border-focus)}.source-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.source-icon{flex-shrink:0;opacity:.6}.source-link:hover .source-icon{opacity:1}.chat-interface{display:flex;flex-direction:column;width:100%;height:100%;min-height:0;background:var(--bg-glass);border:1px solid var(--border-default);overflow:hidden}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;min-height:60px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-default)}.chat-header-left{display:flex;align-items:center;gap:.5rem}.chat-model-name{font-size:var(--text-lg);font-weight:600;color:var(--text-primary)}.chat-header-dot{color:var(--text-muted);font-size:var(--text-base)}.chat-status{font-size:var(--text-base);font-weight:500;color:var(--accent-primary);animation:statusPulse 2s ease-in-out infinite}.chat-status.ready{color:var(--status-success);animation:none}.chat-header-right{display:flex;align-items:center;gap:.5rem}.chat-close-button{display:none;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal)}.chat-close-button:hover{color:var(--text-primary)}.chat-user-badge{font-size:var(--text-sm);font-weight:500;padding:.2rem .6rem;border-radius:var(--radius-sm)}.chat-user-badge.guest{color:var(--callout-text);background:var(--callout-bg);border:1px solid var(--callout-border)}.chat-user-badge.user{color:var(--text-secondary);background:var(--ui-fill);border:1px solid var(--border-default)}.guest-banner{display:flex;align-items:center;justify-content:center;padding:.4rem 1rem;background:var(--callout-bg);border-top:1px solid var(--callout-border);font-size:var(--text-sm);color:var(--callout-text)}.speech-display{flex:1;overflow-y:auto;padding:2rem 1.5rem;display:flex;flex-direction:column;gap:1rem;align-items:flex-start}.welcome-message{text-align:center;width:100%;padding:2rem 1rem;color:var(--text-muted)}.welcome-message p{margin:.5rem 0}.welcome-message p:first-child{font-size:var(--text-lg);font-weight:500;color:var(--text-secondary)}.welcome-back-message{text-align:center;width:100%;padding:2rem 1rem;color:var(--text-muted)}.welcome-back-message p{margin:.5rem 0}.welcome-back-message p:first-child{font-size:var(--text-xl);font-weight:500;color:var(--text-secondary)}.welcome-back-message .session-info{font-size:var(--text-md);color:var(--text-muted);margin-bottom:1.5rem}.load-history-button{padding:.75rem 1.5rem;background:var(--accent-primary);border:none;border-radius:var(--radius-md);color:var(--text-on-accent);font-size:var(--text-md);font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.load-history-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-glow)}.load-history-button:disabled{opacity:.6;cursor:not-allowed}.chat-message{display:flex;flex-direction:column;gap:.25rem;padding:.75rem 1rem;border-radius:var(--radius-lg);max-width:85%;word-wrap:break-word;animation:fadeIn .3s ease;content-visibility:auto;contain-intrinsic-size:auto 80px}.chat-message.user{align-self:flex-end;background:var(--status-info-bg);border:1px solid var(--status-info-border)}.chat-message.assistant{align-self:flex-start;background:var(--bg-tertiary);border:1px solid var(--border-default)}.chat-message.assistant.typing{border-left:3px solid var(--accent-primary)}.chat-message .message-role{font-size:var(--text-sm);font-weight:600;letter-spacing:.02em;color:var(--text-muted)}.chat-message.user .message-role{color:var(--accent-secondary)}.chat-message .message-content{font-size:var(--text-md);line-height:1.5;color:var(--text-secondary);white-space:pre-wrap}.typing-chunk{animation:slideInChunk .3s ease;display:inline}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInChunk{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.load-more-button{align-self:center;padding:.5rem 1rem;background:var(--ui-fill-hover);border:1px solid var(--border-hover);border-radius:var(--radius-full);color:var(--text-tertiary);font-size:var(--text-base);cursor:pointer;transition:all var(--transition-normal);margin-bottom:1rem}.load-more-button:hover{background:var(--ui-fill-pressed);color:var(--text-primary)}.loading-more-indicator{align-self:center;padding:.5rem 1rem;font-size:var(--text-base);color:var(--text-muted);margin-bottom:1rem}.checking-session{display:flex;justify-content:center;gap:.5rem;padding:2rem;width:100%}.checking-session .dot{width:8px;height:8px;background:var(--accent-primary);border-radius:50%;animation:bounce 1.4s infinite ease-in-out;opacity:.6}.checking-session .dot:nth-child(1){animation-delay:-.32s}.checking-session .dot:nth-child(2){animation-delay:-.16s}.sign-in-prompt{margin-top:1rem;padding:.75rem 2rem;background:var(--accent-primary);border:none;border-radius:var(--radius-md);color:var(--text-on-accent);font-size:var(--text-md);font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.sign-in-prompt:hover{transform:translateY(-2px);box-shadow:var(--shadow-glow)}.loading-indicator{display:flex;gap:.5rem;padding:1rem}.loading-indicator .dot{width:8px;height:8px;background:var(--accent-primary);border-radius:50%;animation:bounce 1.4s infinite ease-in-out;opacity:.6}.loading-indicator .dot:nth-child(1){animation-delay:-.32s}.loading-indicator .dot:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1.2);opacity:1}}.chat-error{padding:.75rem 1rem;margin:0 1.5rem;background:var(--status-error-bg);border:1px solid var(--status-error-border);border-radius:var(--radius-md);color:var(--status-error);font-size:var(--text-base)}.input-area{padding:.5rem;background:var(--bg-tertiary);border-top:1px solid var(--border-default)}.input-container{display:flex;flex-direction:column;background:var(--bg-elevated);border:1px solid var(--border-hover);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--transition-normal)}.input-container:focus-within{border-color:var(--border-focus)}.textarea-wrapper{padding:.5rem .75rem}.message-textarea{width:100%;min-height:2.7rem;max-height:6.75rem;padding:0;background:transparent;border:none;color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-md);line-height:1.5;resize:none;outline:none}.message-textarea::placeholder{color:var(--text-placeholder)}.message-textarea:disabled{opacity:.5;cursor:not-allowed}.input-actions{display:flex;justify-content:space-between;align-items:center;padding:0 .75rem .5rem;background:transparent}.input-actions-left,.input-actions-right{display:flex;align-items:center;gap:.5rem}.send-button{width:36px;height:36px;padding:0;display:flex;align-items:center;justify-content:center;background:var(--accent-primary);border:none;border-radius:var(--radius-md);color:var(--text-on-accent);cursor:pointer;transition:all var(--transition-normal)}.send-button:hover:not(:disabled){transform:scale(1.05);box-shadow:var(--shadow-glow)}.send-button:active:not(:disabled){transform:scale(.95)}.send-button:disabled{opacity:.4;cursor:not-allowed}@media(max-width:768px){.chat-header{padding:.75rem 1rem}.chat-header h3{font-size:var(--text-md)}.speech-display{padding:1.5rem 1rem;gap:.75rem}.speech-chunk{padding:.85rem 1rem;font-size:var(--text-md);max-width:95%}.input-area{padding:.5rem .75rem}.textarea-wrapper{padding:.6rem .85rem}.message-textarea{font-size:var(--text-md)}.input-actions{padding:.4rem .5rem}.send-button{width:36px;height:36px}}@media(orientation:portrait)and (max-width:768px){.chat-interface{width:100%;height:100%;max-width:100%;border:none}.chat-header{padding:.75rem 1rem}.chat-close-button{display:flex}.chat-header-right .avatar-controls-dropdown{display:none}.guest-banner{padding:.4rem 1rem}.speech-display{padding:1.5rem 1rem}.input-area{padding:.5rem .75rem}.send-button{width:36px;height:36px}}.secretary-settings-panel{display:flex;flex-direction:column;width:100%;height:100%;background:var(--bg-primary);color:var(--text-primary);overflow:hidden}.model-settings-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem;border-bottom:1px solid var(--border-default);flex-shrink:0}.model-settings-header-title h2{margin-bottom:.25rem;font-size:var(--text-lg);font-weight:600}.model-settings-header-title p{font-size:var(--text-base);color:var(--text-muted)}.model-settings-tabs{display:flex;border-bottom:1px solid var(--border-default);padding:0 1.5rem;flex-shrink:0;margin-bottom:1.5rem}.model-settings-tab{padding:.75rem 1.5rem;background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-family:var(--font-sans);font-size:var(--text-base);font-weight:500;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all var(--transition-normal)}.model-settings-tab:hover{color:var(--text-secondary)}.model-settings-tab.active{color:var(--accent-secondary);border-bottom-color:var(--accent-secondary)}.model-settings-content{flex:1;overflow-y:auto;padding:0 1.5rem;display:flex;flex-direction:column;min-height:0}.model-settings-instruction{margin-bottom:1rem;font-size:var(--text-base);color:var(--text-tertiary);line-height:1.5}.model-settings-expression-list{display:flex;flex-direction:column;gap:.5rem}.model-settings-expression-row{display:flex;align-items:center;gap:1.5rem;padding:.75rem 1rem;background:var(--ui-fill);border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.model-settings-expression-row:hover{background:var(--ui-fill-hover)}.model-settings-expression-row.previewing{border-color:var(--accent-secondary);background:var(--ui-fill-active)}.model-settings-expression-row.disabled{opacity:.6}.model-settings-expression-row.disabled:hover{opacity:.8}.model-settings-expression-toggle{flex-shrink:0}.model-settings-expression-toggle input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--accent-secondary)}.model-settings-expression-name{flex:1;font-size:var(--text-base);font-family:var(--font-mono);color:var(--text-secondary)}.model-settings-expression-row.no-keyword{opacity:.5;cursor:default}.model-settings-expression-row.no-keyword .model-settings-expression-toggle input{cursor:not-allowed}.model-settings-no-expressions{padding:1rem;text-align:center;color:var(--text-muted);font-size:var(--text-base);font-style:italic}.model-settings-expression-preview-badge{flex-shrink:0;width:80px;text-align:right}.model-settings-preview-badge{display:inline-block;padding:.25rem .5rem;background:var(--accent-secondary);border-radius:4px;font-size:var(--text-sm);font-weight:500}.model-settings-motion-groups{display:flex;flex-direction:column}.model-settings-motion-group{margin-bottom:1.5rem}.model-settings-motion-group:last-child{margin-bottom:0}.model-settings-motion-group-title{margin-bottom:.25rem;font-size:var(--text-base);font-weight:600;color:var(--text-primary)}.model-settings-motion-group-description{margin-bottom:.75rem;font-size:var(--text-sm);color:var(--text-muted)}.model-settings-motion-list{display:flex;flex-direction:column;gap:.5rem}.model-settings-motion-row{display:flex;align-items:center;gap:1.5rem;padding:.75rem 1rem;background:var(--ui-fill);border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.model-settings-motion-row:hover{background:var(--ui-fill-hover)}.model-settings-motion-row.previewing{border-color:var(--accent-secondary);background:var(--ui-fill-active)}.model-settings-motion-row.disabled{opacity:.6}.model-settings-motion-row.disabled:hover{opacity:.8}.model-settings-motion-toggle{flex-shrink:0}.model-settings-motion-toggle input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--accent-secondary)}.model-settings-motion-name{flex:1;font-size:var(--text-base);font-family:var(--font-mono);color:var(--text-secondary)}.model-settings-motion-preview-badge{flex-shrink:0;width:80px;text-align:right}.model-settings-no-motions{padding:1rem;text-align:center;color:var(--text-muted);font-size:var(--text-base);font-style:italic}.model-settings-view-content{display:flex;flex-direction:column;gap:1.5rem}.model-settings-slider-group{display:flex;flex-direction:column;gap:.5rem}.model-settings-slider-group label{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-base);font-weight:600;color:var(--text-secondary)}.model-settings-slider-value{font-family:var(--font-mono);color:var(--accent-secondary);font-weight:600}.model-settings-slider-group input[type=range]{width:100%;height:6px;-webkit-appearance:none;appearance:none;background:var(--ui-fill);border-radius:3px;outline:none;cursor:pointer}.model-settings-slider-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;background:var(--accent-secondary);border-radius:50%;cursor:pointer;transition:transform .1s ease,box-shadow .1s ease}.model-settings-slider-group input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 0 8px var(--accent-secondary-glow)}.model-settings-slider-group input[type=range]::-moz-range-thumb{width:18px;height:18px;background:var(--accent-secondary);border:none;border-radius:50%;cursor:pointer}.model-settings-slider-range{display:flex;justify-content:space-between;font-size:var(--text-sm);color:var(--text-muted)}.model-settings-reset-button{width:100%;padding:.75rem;margin-top:.5rem;background:var(--ui-fill);border:1px solid var(--border-hover);border-radius:var(--radius-md);color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--text-base);font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.model-settings-reset-button:hover{background:var(--ui-fill-hover);border-color:var(--border-hover)}.model-settings-error{margin-top:1rem;padding:.75rem 1rem;background:var(--status-error-bg);border:1px solid var(--status-error-border);border-radius:var(--radius-md);color:var(--status-error);font-size:var(--text-base)}.model-settings-footer{display:flex;justify-content:space-between;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--border-default);flex-shrink:0;margin-top:1.5rem}.model-settings-cancel-button,.model-settings-save-button{padding:.75rem 1.5rem;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-base);font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.model-settings-cancel-button{background:transparent;border:1px solid var(--border-hover);color:var(--text-secondary)}.model-settings-cancel-button:hover:not(:disabled){background:var(--ui-fill);border-color:var(--border-hover)}.model-settings-save-button{background:var(--accent-secondary);border:none;color:var(--text-on-accent)}.model-settings-save-button:hover:not(:disabled){background:var(--accent-secondary-hover)}.model-settings-save-button:disabled,.model-settings-cancel-button:disabled{opacity:.5;cursor:not-allowed}@media(orientation:portrait)and (max-width:768px){.secretary-settings-panel{position:fixed;bottom:0;left:0;right:0;height:60svh;max-height:60svh;border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow-lg);z-index:600;animation:var(--animation-slide-up)}.model-settings-header{padding:1rem 1.25rem}.model-settings-header-title h2{font-size:var(--text-lg)}.model-settings-header-title p{font-size:var(--text-base)}.model-settings-tabs{padding:0 1rem;margin-bottom:1rem}.model-settings-tab{padding:.625rem 1rem;font-size:var(--text-base)}.model-settings-content{padding:0 1rem;overflow-y:auto;-webkit-overflow-scrolling:touch}.model-settings-instruction{font-size:var(--text-base);margin-bottom:.75rem}.model-settings-expression-row{padding:.625rem .75rem;gap:.75rem}.model-settings-expression-preview-badge{width:60px}.model-settings-preview-badge{font-size:var(--text-sm);padding:.2rem .4rem}.model-settings-slider-group label{font-size:var(--text-base)}.model-settings-slider-range{font-size:var(--text-sm)}.model-settings-reset-button{padding:.625rem;font-size:var(--text-base)}.model-settings-footer{padding:.75rem 1rem;gap:.5rem;margin-top:1rem}.model-settings-cancel-button,.model-settings-save-button{padding:.625rem 1rem;font-size:var(--text-base)}}.model-selector{display:flex;flex-direction:column;gap:.5rem}.model-section{display:flex;flex-direction:column;gap:.75rem;padding-bottom:1rem}.section-header{display:flex;align-items:center;gap:.5rem;font-size:var(--text-base);font-weight:600;color:var(--text-secondary);padding-bottom:.5rem;border-bottom:1px solid var(--border-default)}.section-header svg{opacity:.7}.loading-indicator{margin-left:auto;font-size:var(--text-sm);color:var(--text-muted);font-weight:400}.section-error{padding:.5rem;font-size:var(--text-base);color:var(--status-error);background:var(--status-error-bg);border-radius:6px}.empty-state{padding:1rem;text-align:center;color:var(--text-muted);font-size:var(--text-base)}.empty-state .hint{font-size:var(--text-sm);margin-top:.25rem;opacity:.8}.model-cards{display:flex;flex-direction:column;gap:.5rem}.model-card{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;position:relative}.model-card:hover:not(.disabled){background:var(--bg-tertiary)}.model-card.disabled{opacity:.5;cursor:not-allowed}.model-preview{width:36px;height:36px;border-radius:50%;background:var(--accent-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.model-thumbnail{width:100%;height:100%;object-fit:cover}.model-info{flex:1;min-width:0}.model-name{font-size:var(--text-base);font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.selected-indicator{padding:.125rem .5rem;font-size:var(--text-xs);font-weight:600;color:var(--text-on-accent);background:var(--accent-primary);border-radius:4px;text-transform:uppercase;flex-shrink:0}.model-card.user-model .model-preview{background:var(--accent-secondary)}@media(max-width:480px){.model-card{padding:.375rem .5rem}.model-preview{width:32px;height:32px}.model-initial{font-size:var(--text-sm)}}.hire-secretary-panel{display:flex;flex-direction:column;width:100%;height:100%;background:var(--bg-primary);color:var(--text-primary);overflow:hidden}.hire-panel-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem;border-bottom:1px solid var(--border-default);flex-shrink:0}.hire-panel-header .header-title h2{margin-bottom:.25rem;font-size:var(--text-lg);font-weight:600}.hire-panel-header .header-title p{font-size:var(--text-base);color:var(--text-muted)}.hire-panel-header .close-button{background:none;border:none;color:var(--text-muted);font-size:var(--text-xl);cursor:pointer;padding:.25rem;line-height:1;transition:color var(--transition-normal)}.hire-panel-header .close-button:hover:not(:disabled){color:var(--text-primary)}.hire-panel-header .close-button:disabled{opacity:.5;cursor:not-allowed}.hire-steps{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 1.5rem;background:var(--bg-tertiary);flex-shrink:0;margin-bottom:1.5rem}.hire-step{display:flex;flex-direction:column;align-items:center;gap:.25rem}.step-circle{width:28px;height:28px;border-radius:50%;background:var(--ui-fill-hover);border:2px solid var(--border-hover);display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:600;line-height:1;color:var(--text-muted);box-sizing:border-box;transition:all var(--transition-slow)}.hire-step.active .step-circle{background:var(--accent-primary);border-color:var(--accent-primary);color:var(--text-on-accent)}.hire-step.completed .step-circle{background:var(--status-success);border-color:var(--status-success);color:var(--text-on-accent)}.step-label{font-size:var(--text-xs);color:var(--text-muted)}.hire-step.active .step-label{color:var(--text-secondary)}.hire-step.completed .step-label{color:var(--text-muted)}.step-line{width:40px;height:2px;background:var(--border-hover);align-self:flex-start;margin-top:.75rem}.hire-panel-content{flex:1;overflow-y:auto;padding:0 1.5rem}.step-content{height:100%}.step-instruction{margin-bottom:1rem;font-size:var(--text-base);color:var(--text-tertiary);line-height:1.5}.step-instruction strong{color:var(--accent-primary)}.hire-error{background:var(--status-error-bg);border:1px solid var(--status-error-border);color:var(--status-error);padding:10px 14px;border-radius:var(--radius-sm);font-size:var(--text-sm);margin-bottom:1rem}.model-grid{display:flex;flex-direction:column;gap:.5rem}.model-card{display:flex;align-items:center;gap:.75rem;padding:8px 12px;border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-default);cursor:pointer;transition:all var(--transition-normal);position:relative}.model-card:hover{background:var(--bg-tertiary);border-color:var(--border-hover)}.model-card.selected{background:var(--ui-fill-selected);border-color:var(--accent-primary)}.model-preview{width:36px;height:36px;border-radius:50%;background:var(--accent-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.model-initial{font-size:var(--text-base);font-weight:600;color:var(--text-on-accent)}.model-name{font-size:var(--text-base);font-weight:500;color:var(--text-primary);flex:1}.model-description{display:none}.selected-badge{background:var(--accent-primary);color:var(--text-on-accent);font-size:var(--text-xs);font-weight:500;padding:2px 8px;border-radius:4px;flex-shrink:0}.preset-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.625rem;margin-top:.125rem}.preset-card{display:flex;flex-direction:column;align-items:center;padding:12px 8px;border-radius:var(--radius-md);background:var(--bg-secondary);border:2px solid var(--border-default);cursor:pointer;transition:all var(--transition-normal);text-align:center;gap:.25rem}.preset-card:hover{background:var(--bg-tertiary);border-color:var(--border-hover)}.preset-card.selected{background:var(--bg-tertiary);border-color:var(--accent-primary)}.preset-icon{font-size:var(--text-xl);line-height:1;display:flex;align-items:center;justify-content:center}.preset-name{font-size:var(--text-sm);font-weight:500;color:var(--text-primary)}.preset-description{font-size:var(--text-xs);color:var(--text-muted);line-height:1.3}.hire-form-group{display:flex;flex-direction:column;margin-bottom:1rem}.hire-form-group label{display:block;color:var(--text-secondary);font-size:var(--text-base);font-weight:600;margin-bottom:.375rem}.hire-form-group .optional{color:var(--text-muted);font-weight:400}.hire-form-group input,.hire-form-group textarea{width:100%;padding:10px 12px;background:var(--ui-fill);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-base);transition:all var(--transition-normal);box-sizing:border-box}.hire-form-group input:focus,.hire-form-group textarea:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-primary-glow)}.hire-form-group input::placeholder,.hire-form-group textarea::placeholder{color:var(--text-placeholder)}.hire-form-group textarea{resize:none;min-height:120px;max-height:240px;overflow-y:auto}.char-count{text-align:right;font-size:var(--text-xs);color:var(--text-muted);margin-top:.25rem}.motion-selector{margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid var(--border-default)}.motion-selector select{width:100%;padding:10px 12px;background:var(--ui-fill);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-base);transition:all var(--transition-normal);box-sizing:border-box;cursor:pointer}.motion-selector select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-primary-glow)}.motion-selector select:disabled{opacity:.5;cursor:not-allowed}.motion-hint{display:block;font-size:var(--text-xs);color:var(--text-muted);margin-top:.375rem}.hire-expression-list{display:flex;flex-direction:column;gap:.5rem}.hire-expression-row{display:flex;align-items:center;gap:1.5rem;padding:.75rem 1rem;background:var(--ui-fill);border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.hire-expression-row:hover{background:var(--ui-fill-hover)}.hire-expression-row.previewing{border-color:var(--accent-secondary);background:var(--ui-fill-active)}.hire-expression-row.disabled{opacity:.6}.hire-expression-row.disabled:hover{opacity:.8}.hire-expression-row.no-keyword{opacity:.5;cursor:default}.hire-expression-row.no-keyword .hire-expression-toggle input{cursor:not-allowed}.hire-expression-toggle{flex-shrink:0}.hire-expression-toggle input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--accent-secondary)}.hire-expression-name{flex:1;font-size:var(--text-base);font-family:var(--font-mono);color:var(--text-secondary)}.hire-expression-preview-badge{flex-shrink:0;width:80px;text-align:right}.hire-no-expressions{margin:0;padding:0;text-align:center;color:var(--text-muted);font-size:var(--text-base);font-style:italic}.preview-badge{display:inline-block;padding:.25rem .5rem;background:var(--accent-secondary);border-radius:4px;font-size:var(--text-sm);font-weight:500}.hire-motion-group{margin-bottom:1.5rem}.hire-motion-group:last-child{margin-bottom:0}.hire-motion-group-title{margin-bottom:.25rem;font-size:var(--text-base);font-weight:600;color:var(--text-primary)}.hire-motion-group-description{margin-bottom:.75rem;font-size:var(--text-sm);color:var(--text-muted)}.hire-motion-list{display:flex;flex-direction:column;gap:.5rem}.hire-motion-row{display:flex;align-items:center;gap:1.5rem;padding:.75rem 1rem;background:var(--ui-fill);border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.hire-motion-row:hover{background:var(--ui-fill-hover)}.hire-motion-row.previewing{border-color:var(--accent-secondary);background:var(--ui-fill-active)}.hire-motion-row.disabled{opacity:.6}.hire-motion-row.disabled:hover{opacity:.8}.hire-motion-toggle{flex-shrink:0}.hire-motion-toggle input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--accent-secondary)}.hire-motion-name{flex:1;font-size:var(--text-base);font-family:var(--font-mono);color:var(--text-secondary)}.hire-motion-preview-badge{flex-shrink:0;width:80px;text-align:right}.hire-no-motions{margin:0;padding-top:6px;text-align:center;color:var(--text-muted);font-size:var(--text-base)}.hire-panel-footer{display:flex;justify-content:space-between;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--border-default);flex-shrink:0;margin-top:1.5rem}.cancel-button,.back-button,.next-button,.submit-button{padding:.75rem 1.5rem;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-base);font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.cancel-button,.back-button{background:transparent;border:1px solid var(--border-hover);color:var(--text-secondary)}.cancel-button:hover:not(:disabled),.back-button:hover:not(:disabled){background:var(--ui-fill-hover);border-color:var(--border-hover)}.next-button,.submit-button{background:var(--accent-primary);border:none;color:var(--text-on-accent);flex:1;max-width:200px}.next-button:hover:not(:disabled),.submit-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-glow)}.cancel-button:disabled,.back-button:disabled,.next-button:disabled,.submit-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}@media(orientation:portrait)and (max-width:768px){.hire-secretary-panel{position:fixed;bottom:0;left:0;right:0;height:60svh;max-height:60svh;border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow-lg);z-index:600;animation:var(--animation-slide-up)}.hire-panel-header{padding:1rem 1.25rem}.hire-panel-header .header-title h2{font-size:var(--text-lg)}.hire-panel-header .header-title p{font-size:var(--text-base)}.hire-steps{padding:.75rem 1rem;margin-bottom:1rem}.step-circle{width:24px;height:24px;font-size:var(--text-xs)}.step-label{font-size:var(--text-xs)}.step-line{width:24px;margin-top:.625rem}.hire-panel-content{padding:0 1rem;-webkit-overflow-scrolling:touch}.step-instruction{font-size:var(--text-base);margin-bottom:.75rem}.hire-panel-footer{padding:.75rem 1rem;gap:.5rem;margin-top:1rem}.cancel-button,.back-button,.next-button,.submit-button{padding:.625rem 1rem;font-size:var(--text-base)}}@media(max-width:400px){.step-label{display:none}.step-line{width:32px}}.chat-panel-toggle{position:absolute;left:0;top:50%;transform:translate(-100%,-50%);z-index:10;width:24px;height:60px;padding:0;border-radius:var(--radius-md) 0 0 var(--radius-md);background:var(--bg-glass);border:1px solid var(--border-hover);border-right:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;transition:all var(--transition-normal)}.chat-panel-toggle:hover{background:var(--ui-fill-selected);border-color:var(--border-focus);width:28px}.chat-panel-toggle:active{background:var(--ui-fill-pressed)}.toggle-arrow{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:var(--text-xl);font-weight:300;color:var(--text-secondary);line-height:1}.chat-panel-toggle:hover .toggle-arrow{color:var(--text-primary)}@media(orientation:portrait)and (max-width:768px){.chat-panel-toggle{display:none}.main-content-split.chat-panel-closed .chat-panel-toggle{display:flex;position:fixed;right:0;left:auto;top:50%;transform:translateY(-50%);z-index:600;border-radius:var(--radius-md) 0 0 var(--radius-md)}}.vn-dialogue-box{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);z-index:50;width:90%;max-width:700px;background:var(--bg-glass);border:1px solid var(--border-hover);border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;animation:vnSlideUp .3s ease}@keyframes vnSlideUp{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}[data-theme=light] .vn-dialogue-box{border-color:#0003}.vn-header-bar{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1.25rem;background:var(--bg-tertiary);border-bottom:1px solid var(--border-default)}.vn-header-left{display:flex;align-items:center;gap:.5rem}.vn-model-name{font-size:var(--text-md);font-weight:600;color:var(--text-primary)}.vn-header-dot{color:var(--text-muted);font-size:var(--text-base)}.vn-header-status{font-size:var(--text-base);font-weight:500;color:var(--accent-primary);animation:statusPulse 2s ease-in-out infinite}.vn-header-status.ready{color:var(--status-success);animation:none}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.6}}.vn-header-right{display:flex;align-items:center;gap:.5rem}.vn-user-badge{font-size:var(--text-sm);font-weight:500;padding:.2rem .6rem;border-radius:var(--radius-sm)}.vn-user-badge.guest{color:var(--callout-text);background:var(--callout-bg);border:1px solid var(--callout-border)}.vn-user-badge.user{color:var(--text-secondary);background:var(--ui-fill);border:1px solid var(--border-default)}.vn-dialogue-area{padding:0}.vn-dialogue-area.empty{display:flex;align-items:center;justify-content:center;padding:.5rem;height:61.59px}.vn-dialogue-content{width:100%;padding:.5rem .5rem .5rem 1.25rem}.vn-text{display:block;font-size:var(--text-md);line-height:1.5;color:var(--text-secondary);white-space:pre-wrap;word-wrap:break-word;min-height:2.85rem;max-height:7.125rem;overflow-y:auto}.vn-placeholder{color:var(--text-muted);font-size:var(--text-md)}.vn-typing-indicator{display:flex;align-items:center;min-height:2.85rem}.typing-dots{display:flex;gap:.25rem}.typing-dots .dot{width:8px;height:8px;background:var(--accent-primary);border-radius:50%;animation:typingBounce 1.4s infinite ease-in-out;opacity:.6}.typing-dots .dot:nth-child(1){animation-delay:-.32s}.typing-dots .dot:nth-child(2){animation-delay:-.16s}@keyframes typingBounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1.2);opacity:1}}.vn-input-row{padding:.5rem;background:var(--bg-tertiary);border-top:1px solid var(--border-default)}.vn-input-container{display:flex;flex-direction:column;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--transition-normal)}.vn-input-container:focus-within{border-color:var(--border-focus)}.vn-textarea-wrapper{padding:.5rem .5rem .5rem .75rem}.vn-textarea{width:100%;min-height:1.35rem;max-height:6.75rem;padding:0;background:transparent;border:none;color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-md);line-height:1.5;resize:none;outline:none}.vn-textarea::placeholder{color:var(--text-placeholder)}.vn-textarea:disabled{opacity:.5;cursor:not-allowed}.vn-input-actions{display:flex;justify-content:space-between;align-items:center;padding:0 .5rem .5rem .75rem;background:transparent}.vn-input-actions-left,.vn-input-actions-right{display:flex;align-items:center;gap:.5rem}.vn-send-button{width:36px;height:36px;padding:0;display:flex;align-items:center;justify-content:center;background:var(--accent-primary);border:none;border-radius:var(--radius-md);color:var(--text-on-accent);cursor:pointer;transition:all var(--transition-normal)}.vn-send-button:hover:not(:disabled){transform:scale(1.05);box-shadow:var(--shadow-glow)}.vn-send-button:active:not(:disabled){transform:scale(.95)}.vn-send-button:disabled{opacity:.4;cursor:not-allowed}@media(max-width:768px){.vn-dialogue-box{bottom:.75rem;width:95%;border-radius:var(--radius-lg)}.vn-header-bar{padding:.3rem 1rem}.vn-model-name{font-size:var(--text-md)}.vn-header-status{font-size:var(--text-sm)}.vn-dialogue-content{padding:.5rem .75rem .5rem 1rem}.vn-text{font-size:var(--text-md);min-height:2.85rem;max-height:7.125rem}.vn-input-row,.vn-textarea-wrapper{padding:.3rem .5rem}.vn-textarea{font-size:var(--text-md)}.vn-input-actions{padding:0 .5rem .3rem}.vn-send-button{width:36px;height:36px}}.menu-button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;background:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.menu-button:hover{background:var(--ui-fill-hover)}.menu-button:active{transform:scale(.95)}.menu-icon{display:flex;flex-direction:column;justify-content:space-between;width:20px;height:14px}.menu-icon .bar{display:block;width:100%;height:2px;background:var(--text-primary);border-radius:1px;transition:all var(--transition-slow)}.menu-button.open .menu-icon .bar:nth-child(1){transform:translateY(6px) rotate(45deg)}.menu-button.open .menu-icon .bar:nth-child(2){opacity:0;transform:scaleX(0)}.menu-button.open .menu-icon .bar:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.secretary-slots{display:flex;flex-direction:column;gap:.625rem}.secretary-slot{display:flex;flex-direction:column;border-radius:var(--radius-md);background:var(--ui-fill);border:1px solid var(--border-default);cursor:pointer;transition:all var(--transition-normal);overflow:hidden}.secretary-slot:hover{background:var(--ui-fill-hover);border-color:var(--border-hover)}.secretary-slot.active{background:var(--ui-fill-hover);border-color:var(--border-active);border-left:3px solid var(--accent-primary)}.secretary-slot.active:hover{background:var(--ui-fill-pressed)}.secretary-slot.loading{opacity:.6;pointer-events:none}.slot-main{display:flex;align-items:center;gap:.75rem;padding:12px 14px}.slot-avatar{width:42px;height:42px;border-radius:50%;background:var(--accent-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 8px var(--accent-primary-glow)}.avatar-letter{color:var(--text-on-accent);font-size:var(--text-lg);font-weight:600}.slot-info{flex:1;min-width:0}.slot-name{color:var(--text-primary);font-size:var(--text-base);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slot-model{color:var(--text-muted);font-size:var(--text-sm);margin-top:.125rem}.slot-badge{font-size:var(--text-xs);padding:3px 8px;border-radius:4px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;flex-shrink:0}.slot-badge.active-badge{background:var(--status-success-bg);color:var(--status-success)}.slot-actions{display:flex;align-items:center;gap:.5rem;padding:0 14px 0 60px;max-height:0;opacity:0;overflow:hidden;transition:all var(--transition-normal)}.secretary-slot.active .slot-actions{display:flex;justify-content:space-between;max-height:50px;opacity:1;padding-top:4px;padding-bottom:4px;border-top:1px solid var(--border-default);margin-top:.25rem}.slot-action-btn{display:flex;align-items:center;gap:.375rem;padding:6px 12px;border:none;border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-normal);background:var(--ui-fill);color:var(--text-secondary)}.slot-action-btn:hover{background:var(--ui-fill-hover);color:var(--text-primary)}.slot-action-btn .action-icon{font-size:var(--text-base);line-height:1;display:flex;align-items:center;justify-content:center}.slot-action-btn .action-label{line-height:1}.slot-action-btn.settings{background:var(--ui-fill-active);color:var(--accent-secondary)}.slot-action-btn.settings:hover{background:var(--ui-fill-pressed);color:var(--accent-secondary-hover)}.slot-action-btn.fire,.slot-action-btn.fire:hover{background:var(--status-error-bg);color:var(--status-error)}.secretary-slot.empty{justify-content:center;align-items:center;flex-direction:row;gap:.625rem;padding:20px 14px;border-style:dashed;border-color:var(--border-hover)}.secretary-slot.empty:hover{border-color:var(--accent-primary);background:var(--ui-fill-hover)}.slot-add-icon{width:36px;height:36px;border-radius:50%;background:var(--ui-fill);display:flex;align-items:center;justify-content:center;font-size:var(--text-lg);color:var(--text-muted);transition:all var(--transition-normal)}.secretary-slot.empty:hover .slot-add-icon{background:var(--ui-fill-pressed);color:var(--accent-primary)}.slot-add-text{font-size:var(--text-base);font-weight:500;color:var(--text-muted);transition:color var(--transition-normal)}.secretary-slot.empty:hover .slot-add-text{color:var(--accent-primary)}.conversation-history{display:flex;flex-direction:column;gap:.5rem;max-height:100%;overflow-y:auto}.conversation-history-loading,.conversation-history-error,.conversation-history-empty{padding:16px;text-align:center;color:var(--text-muted);font-size:var(--text-base)}.conversation-history-error{color:var(--status-error)}.session-item{padding:12px;background:var(--bg-tertiary);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-normal),border-color var(--transition-normal);border:2px solid transparent}.session-item:hover{background:var(--bg-elevated)}.session-item.current{background:var(--status-info-bg);border-color:var(--status-info-border)}.session-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.375rem}.session-date{font-size:var(--text-sm);color:var(--text-muted);font-weight:500;display:flex;align-items:center;gap:.375rem}.session-current-badge{font-size:var(--text-xs);color:var(--status-info);background:var(--status-info-bg);padding:2px 6px;border-radius:8px;font-weight:600}.session-count{font-size:var(--text-sm);color:var(--text-muted);background:var(--ui-fill-hover);padding:2px 6px;border-radius:10px}.session-preview{font-size:var(--text-base);color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modal-overlay{position:fixed;inset:0;background:var(--bg-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-container{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl),0 0 40px -10px var(--accent-primary-glow);width:100%;max-width:480px;max-height:90vh;overflow-x:hidden;overflow-y:auto;animation:modalEnter .25s cubic-bezier(.16,1,.3,1)}.modal-container--sm{max-width:360px}.modal-container--lg{max-width:600px}@keyframes modalEnter{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1.5rem 1.5rem 0rem}.modal-header h2{font-size:var(--text-xl);font-weight:600;color:var(--text-primary);margin:0;letter-spacing:-.01em}.modal-header-spacer{flex:1}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-muted);font-size:var(--text-lg);line-height:1;cursor:pointer;transition:all var(--transition-normal)}.modal-close:hover{color:var(--text-primary)}.modal-content{padding:1.5rem}.modal-form{display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:var(--text-base);font-weight:500;color:var(--text-secondary)}.form-group input{padding:1rem 1.25rem;min-height:52px;background:var(--ui-fill);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-md);transition:all var(--transition-normal)}.form-group input:focus{outline:none;border-color:var(--accent-primary);background:var(--ui-fill-hover);box-shadow:0 0 0 3px var(--accent-primary-glow),0 0 20px -5px var(--accent-primary-glow);transition:border-color var(--transition-fast),box-shadow var(--transition-normal)}.form-group input::placeholder{color:var(--text-placeholder)}.form-hint{font-size:var(--text-base);color:var(--text-muted)}.form-error{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;background:var(--status-error-bg);border:1px solid var(--status-error-border);border-radius:var(--radius-md);color:var(--status-error);font-size:var(--text-base);line-height:1.4}.form-error:before{content:"";flex-shrink:0;width:18px;height:18px;margin-top:.0625rem;background:currentColor;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' y1='8' x2='12' y2='12'/%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' y1='8' x2='12' y2='12'/%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'/%3E%3C/svg%3E");-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.form-success{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--status-success-bg);border:1px solid var(--status-success-border);border-radius:var(--radius-md);color:var(--status-success);font-size:var(--text-base)}.form-submit{width:100%;padding:.875rem 1.5rem;background:var(--accent-primary);border:none;border-radius:var(--radius-md);color:var(--text-on-accent);font-family:var(--font-sans);font-size:var(--text-md);font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.form-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-glow)}.form-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.form-link{text-align:center}.form-link button{background:none;border:none;color:var(--accent-primary);font-family:var(--font-sans);font-size:var(--text-base);cursor:pointer;text-decoration:underline}.form-link button:hover{color:var(--accent-primary-hover)}.modal-container--centered{position:relative}.modal-content--centered{padding:0 1.5rem 1.5rem;text-align:center;display:flex;flex-direction:column;align-items:center}.modal-btn{padding:.875rem 1.75rem;min-height:48px;min-width:120px;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-md);font-weight:500;cursor:pointer;transition:all var(--transition-normal);border:none}.modal-btn:disabled{opacity:.5;cursor:not-allowed}.modal-btn-primary{background:var(--accent-primary);color:var(--text-on-accent)}.modal-btn-primary:hover:not(:disabled){background:var(--accent-primary-hover);transform:translateY(-1px)}.modal-btn-secondary{background:var(--ui-fill);color:var(--text-secondary);border:1px solid var(--border-hover)}.modal-btn-secondary:hover:not(:disabled){background:var(--ui-fill-hover)}.modal-btn-danger{background:transparent;color:var(--status-error);border:1px solid var(--status-error-border)}.modal-btn-danger:hover:not(:disabled){background:var(--status-error-bg);border-color:var(--status-error)}.modal-btn-danger-filled{background:var(--status-error);color:var(--text-on-accent)}.modal-btn-danger-filled:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.modal-btn-danger-filled:disabled{transform:none;box-shadow:none}.modal-icon{display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}.modal-icon svg{width:48px;height:48px}.modal-icon--warning{color:var(--status-warning)}.modal-icon--info{color:var(--accent-primary)}.modal-icon--error{color:var(--status-error)}.modal-icon--neutral{color:var(--text-secondary)}.modal-alert{display:flex;flex-direction:column;align-items:center;text-align:center}.modal-alert-message{font-size:var(--text-lg);font-weight:500;color:var(--text-primary);margin-bottom:.75rem;letter-spacing:-.01em;word-break:break-word}.modal-alert-message strong{color:var(--accent-primary)}.modal-alert-description{font-size:var(--text-md);color:var(--text-secondary);margin-bottom:1.25rem;line-height:1.5;max-width:320px;white-space:pre-line}.modal-alert-description strong{color:var(--accent-primary)}.modal-alert-actions{display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:280px}.modal-alert-buttons{display:flex;gap:.75rem;width:100%;max-width:320px}.modal-alert-buttons>button{flex:1}.modal-alert-note{font-size:var(--text-base);color:var(--text-muted);margin:1rem 0 0}.modal-alert-link{margin-top:1rem}.modal-alert-link button{background:none;border:none;color:var(--accent-primary);font-family:var(--font-sans);font-size:var(--text-base);cursor:pointer;text-decoration:underline}.modal-alert-link button:hover{color:var(--accent-primary-hover)}.modal-alert-error{background:var(--status-error-bg);border:1px solid var(--status-error-border);color:var(--status-error);padding:.625rem .875rem;border-radius:var(--radius-sm);font-size:var(--text-base);margin-bottom:1rem;width:100%;max-width:320px}.modal-alert-form{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem;text-align:left;width:100%;max-width:320px}.modal-alert-countdown{display:flex;flex-direction:column;align-items:center;margin-bottom:1.5rem}.modal-alert-countdown-number{font-size:2.5rem;font-weight:600;color:var(--text-secondary);line-height:1;font-variant-numeric:tabular-nums}.modal-alert-logout:hover{background:var(--status-error-bg);border-color:var(--status-error-border);color:var(--status-error)}.modal-form-intro{font-size:var(--text-md);color:var(--text-secondary);text-align:left;margin-bottom:1rem;line-height:1.5}.modal-form-intro strong{color:var(--accent-primary)}.modal-options{display:flex;flex-direction:column;gap:.75rem;width:100%}.modal-option-card{display:flex;align-items:flex-start;gap:1rem;padding:1rem 1.25rem;background:var(--ui-fill);border:1px solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal);text-align:left;width:100%}.modal-option-card:hover{background:var(--ui-fill-hover);border-color:var(--border-hover)}.modal-option-card:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-primary-glow)}.modal-option-card--recommended{border-color:var(--accent-primary);background:var(--accent-primary-bg)}.modal-option-card--recommended:hover{background:var(--accent-primary-bg-hover);border-color:var(--accent-primary)}.modal-option-icon{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);overflow:hidden}.modal-option-icon img{width:100%;height:100%;object-fit:cover}.modal-option-icon svg{width:24px;height:24px;color:var(--text-secondary)}.modal-option-content{flex:1;min-width:0}.modal-option-title{display:block;font-size:var(--text-md);font-weight:500;color:var(--text-primary);margin-bottom:.25rem}.modal-option-desc{display:block;font-size:var(--text-base);color:var(--text-secondary);margin:0;line-height:1.4}@media(max-width:480px){.modal-container{margin:.75rem;max-width:calc(100% - 1.5rem)}.modal-header{padding:1.5rem 1.5rem 0}.modal-header h2{font-size:var(--text-lg)}.modal-content{padding:0 1.5rem 1.5rem}.modal-content--centered{padding:2rem 1.5rem 1.5rem}.modal-icon svg{width:40px;height:40px}.modal-alert-message{font-size:var(--text-lg)}.modal-btn{padding:.75rem 1.25rem;min-height:44px;min-width:100px}.form-group input{padding:.875rem 1rem;min-height:48px}}.session-messages-modal{display:flex;flex-direction:column;width:100%;max-width:500px;overflow:hidden}.session-messages-content{max-height:60vh;flex:1;overflow-x:hidden;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;padding-right:8px}.session-messages-loading,.session-messages-error,.session-messages-empty{text-align:center;padding:24px;color:var(--text-muted)}.session-messages-error{color:var(--status-error)}.session-message{padding:14px 16px;border-radius:var(--radius-lg);max-width:85%;min-width:120px;box-shadow:var(--shadow-sm);content-visibility:auto;contain-intrinsic-size:auto 60px}.session-message.user{background:var(--status-info-bg);color:var(--text-primary);border:1px solid var(--status-info-border);align-self:flex-end;border-bottom-right-radius:var(--radius-sm)}.session-message.assistant{background:var(--bg-tertiary);color:var(--text-secondary);align-self:flex-start;border:1px solid var(--border-default);border-bottom-left-radius:var(--radius-sm)}.session-message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding-bottom:6px;border-bottom:1px solid var(--border-default);font-size:var(--text-sm);opacity:.8}.session-message.user .session-message-header{color:var(--text-tertiary);border-color:var(--status-info-border)}.session-message-role{font-weight:600}.session-message-content{font-size:var(--text-base);line-height:1.5;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}.user-settings-panel{padding:0 4px}.user-settings-loading{text-align:center;padding:40px 20px;color:var(--text-muted)}.user-settings-error{background:var(--status-error-bg);border:1px solid var(--status-error-border);color:var(--status-error);padding:10px 14px;border-radius:var(--radius-sm);font-size:var(--text-base);margin-bottom:1rem}.user-settings-section{margin-bottom:1.5rem}.user-settings-label{display:block;color:var(--text-primary);font-size:var(--text-base);font-weight:500;margin-bottom:.25rem}.user-settings-description{color:var(--text-muted);font-size:var(--text-sm);margin-bottom:.625rem}.user-settings-input-group{display:flex;gap:.5rem}.user-settings-input{width:167px;flex:1;padding:10px 12px;background:var(--surface-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-base);transition:border-color var(--transition-fast)}.user-settings-input:hover:not(:disabled){border-color:var(--border-hover)}.user-settings-input:focus{outline:none;border-color:var(--accent-primary)}.user-settings-input:disabled{opacity:.6}.user-settings-input::placeholder{color:var(--text-muted)}.user-settings-save-btn{flex-shrink:0;padding:10px 16px;background:var(--accent-primary);border:none;border-radius:var(--radius-sm);color:#fff;font-family:var(--font-sans);font-size:var(--text-base);font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.user-settings-save-btn:hover:not(:disabled){background:var(--accent-secondary)}.user-settings-save-btn:disabled{opacity:.5;cursor:not-allowed}.user-settings-icon-btn{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--surface-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal)}.user-settings-icon-btn:hover:not(:disabled){background:var(--surface-secondary);border-color:var(--border-hover);color:var(--text-primary)}.user-settings-icon-btn.save{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.user-settings-icon-btn.save:hover:not(:disabled){background:var(--accent-secondary)}.user-settings-icon-btn.cancel:hover:not(:disabled){color:var(--status-error);border-color:var(--status-error)}.user-settings-icon-btn:disabled{opacity:.5;cursor:not-allowed}.user-settings-input:read-only{background:var(--surface-secondary);cursor:default}.user-settings-language-buttons{display:flex;gap:.5rem}.user-settings-lang-btn{flex:1;padding:10px 16px;font-size:var(--text-base);font-weight:500;color:var(--text-secondary);background:var(--surface-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-normal)}.user-settings-lang-btn:hover{background:var(--surface-secondary);border-color:var(--border-hover)}.user-settings-lang-btn.active{color:var(--text-primary);background:var(--accent-primary-glow);border-color:var(--accent-primary)}.user-settings-select{width:100%;padding:10px 32px 10px 12px;appearance:none;-webkit-appearance:none;background:var(--surface-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-base);cursor:pointer;transition:border-color var(--transition-fast)}.user-settings-select:hover:not(:disabled){border-color:var(--border-hover)}.user-settings-select:focus{outline:none;border-color:var(--accent-primary)}.user-settings-select:disabled{opacity:.6;cursor:not-allowed}.calendar-agenda{display:flex;flex-direction:column;gap:1rem;max-height:100%;overflow-y:auto;padding-right:4px}.calendar-agenda-loading,.calendar-agenda-error,.calendar-agenda-empty{padding:24px 16px;text-align:center;color:var(--text-muted);font-size:var(--text-base)}.calendar-agenda-error{color:var(--status-error)}.calendar-agenda-group{display:flex;flex-direction:column;gap:.5rem}.calendar-agenda-date{font-size:var(--text-sm);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;padding:0 4px}.calendar-agenda-events{display:flex;flex-direction:column;gap:.375rem}.calendar-event-item{padding:10px 12px;background:var(--bg-tertiary);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-normal);border-left:3px solid var(--accent-secondary)}.calendar-event-item:hover{background:var(--bg-elevated)}.calendar-event-time{font-size:var(--text-sm);color:var(--accent-secondary);font-weight:500;margin-bottom:.25rem}.calendar-event-title{font-size:var(--text-base);color:var(--text-primary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-event-location{display:flex;align-items:center;gap:.25rem;font-size:var(--text-sm);color:var(--text-muted);margin-top:.25rem}.calendar-event-location svg{flex-shrink:0}.calendar-event-location span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-month{display:flex;flex-direction:column;gap:.75rem}.calendar-month-header{display:flex;justify-content:space-between;align-items:center;padding:0 4px}.calendar-month-title{font-size:var(--text-md);font-weight:600;color:var(--text-primary)}.calendar-nav-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-secondary);transition:background var(--transition-normal),color var(--transition-normal)}.calendar-nav-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:.125rem}.calendar-weekday{text-align:center;font-size:var(--text-sm);font-weight:600;color:var(--text-muted);padding:4px 0;text-transform:uppercase}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:.125rem}.calendar-day{display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1;cursor:pointer;border-radius:var(--radius-sm);transition:background var(--transition-normal);position:relative;padding:4px}.calendar-day:hover{background:var(--bg-tertiary)}.calendar-day.other-month{opacity:.3}.calendar-day.today{background:var(--accent-secondary)}.calendar-day.today:hover{background:var(--accent-secondary);filter:brightness(1.1)}.calendar-day.today .calendar-day-number{color:var(--text-inverse);font-weight:600}.calendar-day-number{font-size:var(--text-base);color:var(--text-primary)}.calendar-day-dot{width:4px;height:4px;border-radius:50%;background:var(--accent-primary);margin-top:.125rem}.calendar-day.today .calendar-day-dot{background:var(--text-inverse)}.calendar-day.selected{background:var(--bg-tertiary);outline:2px solid var(--accent-primary);outline-offset:-2px}.calendar-day.selected:hover{background:var(--bg-tertiary)}.calendar-day.today.selected{outline:2px solid var(--text-inverse);outline-offset:-2px}.day-events-list{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem;padding-top:16px;border-top:1px solid var(--border-subtle)}.day-events-header{display:flex;justify-content:space-between;align-items:center;padding:0 4px}.day-events-date{font-size:var(--text-base);font-weight:600;color:var(--text-primary)}.day-events-count{font-size:var(--text-sm);color:var(--text-muted)}.day-events-empty{padding:16px;text-align:center;color:var(--text-muted);font-size:var(--text-base);background:var(--bg-tertiary);border-radius:var(--radius-md)}.day-events-items{display:flex;flex-direction:column;gap:.375rem}.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.react-datepicker-wrapper{display:inline-block;padding:0;border:0}.react-datepicker{font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative;line-height:initial}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.375em;border-bottom-right-radius:.375em}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle,.react-datepicker-popper--header-middle[data-placement^=bottom] .react-datepicker__triangle,.react-datepicker-popper--header-bottom[data-placement^=bottom] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker-popper--header-bottom[data-placement^=top] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select,.react-datepicker__header--middle,.react-datepicker__header--bottom){border-top-right-radius:.3rem}.react-datepicker__header--middle{border-top:1px solid #aeaeae;border-radius:0;margin-top:4px}.react-datepicker__header--bottom{border-bottom:none;border-top:1px solid #aeaeae;border-radius:0 0 .3rem .3rem}.react-datepicker__header-wrapper{position:relative}.react-datepicker__header-wrapper .react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:2px}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px}.react-datepicker__month-select,.react-datepicker__year-select,.react-datepicker__month-year-select{background-color:transparent;border:1px solid #aeaeae;border-radius:.3rem;color:inherit;cursor:pointer;font-family:inherit;font-size:inherit;margin-top:5px;padding:2px 5px}.react-datepicker__month-select:focus-visible,.react-datepicker__year-select:focus-visible,.react-datepicker__month-year-select:focus-visible{outline:auto 1px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:700;font-size:.944rem}h2.react-datepicker__current-month{padding:0;margin:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover *:before{border-color:#a6a6a6}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{transform:rotate(45deg);left:-7px}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{transform:rotate(225deg);right:-7px}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.5em;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:5em;margin:2px}.react-datepicker__month{margin:.5em;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:5em;margin:2px}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:.375em;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:#fff;border-bottom-right-radius:.375em}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:.375em}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + 1.0625em);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent}.react-datepicker__week-number{color:#ccc;display:inline-block;width:2.125em;line-height:2.125em;text-align:center;margin:.208em}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__week-number--selected{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{text-align:center;white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:2.125em;line-height:2.125em;text-align:center;margin:.208em}.react-datepicker__day-name--disabled,.react-datepicker__day--disabled,.react-datepicker__time-name--disabled{cursor:default;color:#ccc}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:.3rem;background-color:#3dcc4a;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:.3rem;background-color:#ff6803;color:#fff}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:.3rem;background-color:#bad9f1;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90;color:#fff}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__input-container{position:relative;display:inline-block;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:.625em;box-sizing:content-box}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:.3rem;border:1px solid #aeaeae}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle}.react-datepicker__close-icon:after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:"×"}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:700;padding:5px 0;clear:left}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:#000c;left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647}.react-datepicker__children-container{width:17.25em;margin:.5em;padding-right:.25em;padding-left:.25em;height:auto}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-.125em}.react-datepicker-popper-offset{margin-top:-.7em}.react-datepicker-wrapper,.react-datepicker__input-container{width:100%}.react-datepicker__input-container input{width:100%;padding:10px 12px;background:var(--bg-tertiary);border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-base);transition:border-color var(--transition-normal);cursor:pointer}.react-datepicker__input-container input:focus{outline:none;border-color:var(--accent-secondary)}.react-datepicker__input-container input::placeholder{color:var(--text-placeholder)}.react-datepicker-popper{z-index:var(--z-popover)}.react-datepicker{font-family:var(--font-sans);background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);overflow:hidden}.react-datepicker__header{background:var(--bg-tertiary);border-bottom:1px solid var(--border-default);padding:.75rem}.react-datepicker__current-month{color:var(--text-primary);font-size:var(--text-md);font-weight:600;margin-bottom:.5rem}.react-datepicker__day-names{display:flex;justify-content:space-around;margin-top:.5rem}.react-datepicker__day-name{color:var(--text-muted);font-size:var(--text-sm);font-weight:500;width:2rem;line-height:2rem;text-align:center}.react-datepicker__navigation{top:.75rem;width:2rem;height:2rem;border:none;background:transparent;cursor:pointer;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.react-datepicker__navigation:hover{background:var(--ui-fill-hover)}.react-datepicker__navigation--previous{left:.5rem}.react-datepicker__navigation--next{right:.5rem}.react-datepicker__navigation-icon:before{border-color:var(--text-secondary);border-width:2px 2px 0 0;width:8px;height:8px}.react-datepicker__month{margin:0;padding:.5rem}.react-datepicker__week{display:flex;justify-content:space-around}.react-datepicker__day{color:var(--text-primary);font-size:var(--text-base);width:2rem;height:2rem;line-height:2rem;text-align:center;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);margin:.125rem}.react-datepicker__day:hover{background:var(--ui-fill-hover)}.react-datepicker__day--selected,.react-datepicker__day--keyboard-selected{background:var(--accent-secondary);color:var(--text-on-accent);font-weight:600}.react-datepicker__day--selected:hover,.react-datepicker__day--keyboard-selected:hover{background:var(--accent-secondary-hover)}.react-datepicker__day--today{font-weight:700;color:var(--accent-primary)}.react-datepicker__day--today.react-datepicker__day--selected{color:var(--text-on-accent)}.react-datepicker__day--outside-month{color:var(--text-muted)}.react-datepicker__day--disabled{color:var(--text-disabled);cursor:not-allowed}.react-datepicker__day--disabled:hover{background:transparent}.react-datepicker__time-container{border-left:1px solid var(--border-default);width:100px}.react-datepicker__time-container .react-datepicker__time{background:var(--bg-secondary)}.react-datepicker__time-container .react-datepicker__time-box{width:100%}.react-datepicker__header--time{background:var(--bg-tertiary);border-bottom:1px solid var(--border-default);padding:.75rem .5rem}.react-datepicker__header--time .react-datepicker-time__header{color:var(--text-primary);font-size:var(--text-sm);font-weight:600}.react-datepicker__time-list{height:200px!important;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}.react-datepicker__time-list::-webkit-scrollbar{width:var(--scrollbar-width)}.react-datepicker__time-list::-webkit-scrollbar-track{background:var(--scrollbar-track)}.react-datepicker__time-list::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-full)}.react-datepicker__time-list::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.react-datepicker__time-list-item{color:var(--text-secondary);font-size:var(--text-sm);padding:.5rem .75rem!important;transition:all var(--transition-fast);height:auto!important}.react-datepicker__time-list-item:hover{background:var(--ui-fill-hover)!important;color:var(--text-primary)}.react-datepicker__time-list-item--selected{background:var(--accent-secondary)!important;color:var(--text-on-accent)!important;font-weight:600}.react-datepicker__time-list-item--selected:hover{background:var(--accent-secondary-hover)!important}.react-datepicker__time-list-item--disabled{color:var(--text-disabled);cursor:not-allowed}.react-datepicker--time-only .react-datepicker__time-container{border-left:none}.react-datepicker__triangle{display:none}.react-datepicker__year-dropdown-container,.react-datepicker__month-dropdown-container{display:inline-block;margin:0 .25rem}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-sm);box-shadow:var(--shadow-md)}.react-datepicker__year-option,.react-datepicker__month-option{color:var(--text-secondary);padding:.5rem 1rem;transition:all var(--transition-fast)}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover{background:var(--ui-fill-hover);color:var(--text-primary)}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected{background:var(--accent-secondary);color:var(--text-on-accent)}.react-datepicker__close-icon{background:transparent;padding:0 .5rem}.react-datepicker__close-icon:after{background:var(--ui-fill-hover);color:var(--text-secondary);font-size:var(--text-sm);width:1.25rem;height:1.25rem;line-height:1.25rem;border-radius:var(--radius-sm)}.react-datepicker__close-icon:hover:after{background:var(--ui-fill-pressed);color:var(--text-primary)}.event-detail-modal{display:flex;flex-direction:column;gap:1rem;min-width:320px}.event-detail-error{padding:10px 12px;background:var(--status-error-bg);color:var(--status-error);border-radius:var(--radius-sm);font-size:var(--text-base)}.event-detail-view{display:flex;flex-direction:column;gap:.75rem}.event-detail-row{display:flex;align-items:flex-start;gap:.625rem;color:var(--text-secondary);font-size:var(--text-base)}.event-detail-row svg{color:var(--text-muted);flex-shrink:0;margin-top:.125rem}.event-detail-form{display:flex;flex-direction:column;gap:1rem}.event-form-group{display:flex;flex-direction:column;gap:.5rem}.event-form-group label{font-size:var(--text-sm);font-weight:500;color:var(--text-secondary)}.event-form-group input[type=text],.event-form-group textarea{padding:10px 12px;background:var(--bg-tertiary);border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-base);transition:border-color var(--transition-normal)}.event-form-group input:focus,.event-form-group textarea:focus{outline:none;border-color:var(--accent-secondary)}.event-form-group textarea{resize:vertical;min-height:80px}.form-checkbox{flex-direction:row;align-items:center;gap:.5rem}.form-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-secondary)}.form-checkbox label{font-size:var(--text-base);color:var(--text-primary)}.event-detail-actions{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:.5rem}.event-detail-actions-right{display:flex;gap:.5rem;margin-left:auto}.btn-primary,.btn-secondary{padding:10px 20px;border-radius:var(--radius-sm);font-size:var(--text-base);font-weight:500;cursor:pointer;transition:filter var(--transition-normal),background var(--transition-normal);border:none}.btn-danger{padding:10px 20px;border-radius:var(--radius-sm);font-size:var(--text-base);font-weight:500;cursor:pointer;transition:background var(--transition-normal),border-color var(--transition-normal)}.btn-primary{background:var(--accent-secondary);color:var(--text-inverse)}.btn-primary:hover:not(:disabled){filter:brightness(1.1)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:var(--bg-elevated)}.btn-danger{background:transparent;color:var(--status-error);border:1px solid var(--status-error-border)}.btn-danger:hover:not(:disabled){background:var(--status-error-bg);border-color:var(--status-error)}.btn-icon-danger{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:1px solid var(--status-error);border-radius:var(--radius-sm);cursor:pointer;color:var(--status-error);transition:background var(--transition-normal)}.btn-icon-danger:hover:not(:disabled){background:var(--status-error-bg)}.btn-primary:disabled,.btn-secondary:disabled,.btn-danger:disabled,.btn-icon-danger:disabled{opacity:.5;cursor:not-allowed}.event-detail-delete-confirm{text-align:center}.event-detail-delete-confirm p{margin-bottom:1rem;color:var(--text-secondary);font-size:var(--text-base)}.event-detail-delete-actions{display:flex;justify-content:center;gap:.75rem}.calendar-view{display:flex;flex-direction:column;height:100%}.calendar-view-toggle{display:flex;gap:.5rem;padding:4px;background:var(--bg-tertiary);border-radius:var(--radius-md);margin-bottom:1rem}.toggle-btn{display:flex;align-items:center;gap:.375rem;flex:1;padding:8px 12px;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-base);font-weight:500;color:var(--text-secondary);transition:background var(--transition-normal),color var(--transition-normal);justify-content:center}.toggle-btn:hover{color:var(--text-primary)}.toggle-btn.active{background:var(--bg-secondary);color:var(--text-primary)}.calendar-view-content{flex:1;overflow:hidden}.model-upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem;border:2px dashed var(--border-default);border-radius:12px;background-color:var(--bg-secondary);cursor:pointer;transition:all .2s ease;min-height:120px}.model-upload-zone:hover:not(.disabled){border-color:var(--accent-primary);background-color:var(--bg-tertiary)}.model-upload-zone.dragging{border-color:var(--accent-primary);background-color:var(--accent-primary-glow)}.model-upload-zone.disabled{cursor:not-allowed;opacity:.6}.upload-input{display:none}.upload-content{display:flex;flex-direction:column;align-items:center;gap:.5rem;text-align:center}.upload-icon{color:var(--text-secondary)}.upload-hint{margin:0;font-size:var(--text-base);color:var(--text-primary);font-weight:500}.upload-format{margin:0;font-size:var(--text-sm);color:var(--text-secondary)}.upload-error{display:flex;align-items:center;gap:.375rem;margin-top:.75rem;padding:.5rem .75rem;background-color:var(--status-error-bg);border-radius:6px;font-size:var(--text-sm);color:var(--status-error)}.model-upload-form{display:flex;flex-direction:column;gap:1rem;padding:1rem;border:1px solid var(--border-default);border-radius:12px;background-color:var(--bg-secondary)}.upload-form-file{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background-color:var(--bg-elevated);border-radius:6px}.upload-form-filename{font-size:var(--text-base);font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.upload-form-size{font-size:var(--text-sm);color:var(--text-secondary);flex-shrink:0}.upload-form-field{display:flex;flex-direction:column;gap:.375rem}.upload-form-field label{font-size:var(--text-sm);font-weight:500;color:var(--text-secondary)}.upload-form-field input{padding:.625rem .75rem;font-size:var(--text-base);border:1px solid var(--border-default);border-radius:8px;background-color:var(--bg-elevated);color:var(--text-primary);transition:border-color .2s ease}.upload-form-field input:focus{outline:none;border-color:var(--accent-primary)}.upload-form-field input:disabled{opacity:.6;cursor:not-allowed}.upload-progress{display:flex;flex-direction:column;gap:.375rem}.upload-progress-bar{height:6px;background-color:var(--bg-elevated);border-radius:3px;overflow:hidden}.upload-progress-fill{height:100%;background-color:var(--accent-primary);border-radius:3px;transition:width .3s ease}.upload-progress-text{font-size:var(--text-sm);color:var(--text-secondary);text-align:center}.upload-form-buttons{display:flex;gap:.75rem;justify-content:flex-end}.upload-cancel-btn,.upload-submit-btn{padding:.5rem 1rem;font-size:var(--text-base);font-weight:500;border-radius:8px;cursor:pointer;transition:all .2s ease}.upload-cancel-btn{background-color:transparent;border:1px solid var(--border-default);color:var(--text-secondary)}.upload-cancel-btn:hover:not(:disabled){background-color:var(--ui-fill-hover)}.upload-submit-btn{background-color:var(--accent-primary);border:none;color:#fff}.upload-submit-btn:hover:not(:disabled){background-color:var(--accent-primary-hover)}.upload-cancel-btn:disabled,.upload-submit-btn:disabled{opacity:.6;cursor:not-allowed}.model-card{display:flex;gap:.75rem;padding:.75rem;background-color:var(--bg-secondary);border:1px solid var(--border-default);border-radius:10px;transition:all .2s ease}.model-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-sm)}.model-card.failed{border-color:var(--status-error-border)}.model-card-thumbnail{flex-shrink:0;width:60px;height:60px;border-radius:8px;overflow:hidden;background-color:var(--bg-tertiary)}.model-card-thumbnail img{width:100%;height:100%;object-fit:cover}.model-card-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--text-tertiary)}.model-card-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:.375rem}.model-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.model-card-name{margin:0;font-size:var(--text-base);font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.model-card-status{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .5rem;font-size:var(--text-xs);font-weight:500;border-radius:10px;white-space:nowrap;flex-shrink:0}.model-card-status .status-icon{flex-shrink:0}.model-card-status .status-icon.spinning{animation:spin 1s linear infinite}.status-pending{background-color:var(--status-warning-bg);color:var(--status-warning)}.status-processing{background-color:var(--status-info-bg);color:var(--status-info)}.status-active{background-color:var(--status-success-bg);color:var(--status-success)}.status-failed{background-color:var(--status-error-bg);color:var(--status-error)}.model-card-meta{display:flex;align-items:center;gap:.5rem;font-size:var(--text-sm);color:var(--text-secondary)}.model-card-meta>span:not(:last-child):after{content:"";display:inline-block;width:3px;height:3px;margin-left:.5rem;background-color:var(--text-muted);border-radius:50%;vertical-align:middle}.model-card-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:auto;padding-top:.25rem}.model-card-action{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:var(--text-sm);font-weight:500;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;background-color:transparent}.model-card-action:disabled{opacity:.5;cursor:not-allowed}.model-card-action.configure{color:var(--accent-secondary)}.model-card-action.configure:hover:not(:disabled){background-color:var(--accent-secondary-glow)}.model-card-action.retry{color:var(--accent-primary)}.model-card-action.retry:hover:not(:disabled){background-color:var(--accent-primary-glow)}.model-card-action.delete{color:var(--text-secondary)}.model-card-action.delete:hover:not(:disabled){color:var(--status-error);background-color:var(--status-error-bg)}.model-gallery{display:flex;flex-direction:column;padding:0;height:100%}.model-gallery-list{display:flex;flex-direction:column;gap:.75rem;flex:1;overflow-y:auto;min-height:0;margin-top:1rem}.model-gallery-loading{display:flex;align-items:center;justify-content:center;padding:2rem;font-size:var(--text-base);color:var(--text-secondary)}.model-gallery-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:2rem 1rem;text-align:center}.model-gallery-empty svg{color:var(--text-tertiary)}.model-gallery-empty p{margin:0;font-size:var(--text-base);color:var(--text-secondary)}.model-preview-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;min-width:200px;text-align:center}.model-preview-loading .loading-spinner{font-size:var(--text-base);color:var(--text-secondary)}.model-preview-loading .preview-error{display:flex;flex-direction:column;gap:1rem;align-items:center}.model-preview-loading .preview-error p{margin:0;color:var(--status-error);font-size:var(--text-base)}.model-preview-loading .preview-error button{padding:.5rem 1rem;background:var(--ui-fill);border:1px solid var(--border-default);border-radius:6px;color:var(--text-primary);font-size:var(--text-base);cursor:pointer;transition:all .2s ease}.model-preview-loading .preview-error button:hover{background:var(--ui-fill-hover)}.sidesheet-backdrop{position:fixed;inset:0;background:var(--bg-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;visibility:hidden;transition:all var(--transition-slow);z-index:998}.sidesheet-backdrop.open{opacity:1;visibility:visible}.sidesheet{position:fixed;top:0;left:0;bottom:0;width:320px;max-width:90vw;background:var(--bg-secondary);border-right:1px solid var(--border-default);box-shadow:var(--shadow-lg);transform:translate(-100%);transition:transform var(--transition-slow);z-index:999;overflow:hidden}.sidesheet.open{transform:translate(0)}.sidesheet-top-bar{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;height:60px;flex-shrink:0}.sidesheet-back-button,.sidesheet-close-button{width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;justify-content:center}.sidesheet-back-button:hover,.sidesheet-close-button:hover{color:var(--text-primary)}.sidesheet-back-placeholder{width:32px;height:32px}.sidesheet-views-container{position:relative;width:100%;height:calc(100% - 56px)}.sidesheet-view{position:absolute;top:0;left:0;width:100%;height:100%;transition:transform var(--transition-slow),opacity var(--transition-slow)}.sidesheet-view.active{transform:translate(0);opacity:1;pointer-events:auto}.sidesheet-view.slide-left{transform:translate(-100%);opacity:0;pointer-events:none}.sidesheet-view.slide-right{transform:translate(100%);opacity:0;pointer-events:none}.sidesheet-content{display:flex;flex-direction:column;height:100%;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:1.5rem}.sidesheet-header{margin-bottom:1.5rem}.sidesheet-header h2{font-size:var(--text-xl);font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.sidesheet-header p{font-size:var(--text-md);color:var(--text-muted)}.sidesheet-header .user-avatar{width:50px;height:50px;border-radius:50%;background:var(--accent-primary);display:flex;align-items:center;justify-content:center;font-size:var(--text-lg);font-weight:600;color:var(--text-on-accent);margin-bottom:.75rem}.sidesheet-header .user-info{display:flex;flex-direction:column;gap:.2rem}.sidesheet-header .user-name{font-size:var(--text-md);font-weight:600;color:var(--text-primary)}.sidesheet-header .user-email{font-size:var(--text-base);color:var(--text-muted)}.sidesheet-divider{height:1px;background:var(--border-default)}.sidesheet-nav{flex:1;display:flex;flex-direction:column;gap:.25rem;margin-top:.5rem}.sidesheet-nav-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.875rem .75rem;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--text-md);text-align:left;cursor:pointer;transition:all var(--transition-normal)}.sidesheet-nav-item:hover:not(:disabled){background:var(--ui-fill);color:var(--text-primary)}.sidesheet-nav-item:active:not(:disabled){background:var(--ui-fill-hover)}.sidesheet-nav-item:disabled{cursor:not-allowed;opacity:.5}.sidesheet-nav-item .nav-icon{font-size:var(--text-md);width:1.5rem;text-align:center;display:flex;align-items:center;justify-content:center;color:var(--text-primary)}.sidesheet-nav-item .nav-text{flex:1}.sidesheet-nav-item .nav-count{font-size:var(--text-sm);padding:.15rem .5rem;background:var(--ui-fill-hover);border-radius:10px;color:var(--text-tertiary)}.sidesheet-nav-item .nav-toggle{width:36px;height:20px;background:var(--border-default);border-radius:10px;position:relative;transition:background var(--transition-normal);flex-shrink:0}.sidesheet-nav-item .nav-toggle.on{background:var(--accent-primary)}.sidesheet-nav-item .nav-toggle-knob{position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform var(--transition-normal)}.sidesheet-nav-item .nav-toggle.on .nav-toggle-knob{transform:translate(16px)}.sidesheet-nav-item .nav-arrow{font-size:var(--text-lg);color:var(--text-muted);margin-left:.25rem;display:flex;align-items:center;justify-content:center}.sidesheet-nav-item .coming-soon{font-size:var(--text-sm);padding:.15rem .4rem;background:var(--status-error-bg);color:var(--accent-primary);border-radius:4px}.sidesheet-nav-item .nav-language-badge{font-size:var(--text-sm);font-weight:600;padding:.2rem .5rem;background:var(--accent-primary);color:var(--text-on-accent);border-radius:4px;letter-spacing:.05em}.detail-view-header{margin-bottom:1.5rem}.detail-view-header h2{font-size:var(--text-lg);font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.detail-view-header p{font-size:var(--text-base);color:var(--text-muted)}.detail-view-header--with-action{display:flex;justify-content:space-between;align-items:flex-start}.detail-view-header-text{flex:1}.detail-view-header-action{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:var(--ui-fill);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal);flex-shrink:0}.detail-view-header-action:hover{background:var(--ui-fill-hover);border-color:var(--border-hover);color:var(--text-primary)}.detail-view-content{flex:1;min-height:0}.detail-view-content.scrollable{overflow-y:auto}.sidesheet-actions{display:flex;flex-direction:column;gap:.75rem}.sidesheet-footer{margin-top:auto;padding-top:1rem;border-top:1px solid var(--border-default)}.sidesheet-button{width:100%;padding:.75rem 1.25rem;font-family:var(--font-sans);font-size:var(--text-md);font-weight:500;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.sidesheet-button.primary{background:var(--accent-primary);color:var(--text-on-accent)}.sidesheet-button.primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-glow)}.sidesheet-button.secondary{background:var(--ui-fill-hover);color:var(--text-primary);border:1px solid var(--border-hover)}.sidesheet-button.secondary:hover{background:var(--ui-fill-pressed);border-color:var(--border-hover)}.sidesheet-button.logout{background:transparent;color:var(--text-muted);border:1px solid var(--border-default)}.sidesheet-button.logout:hover{background:var(--status-error-bg);border-color:var(--status-error-border);color:var(--status-error)}.sidesheet-button.danger{background:transparent;color:var(--status-error);border:1px solid var(--status-error-border)}.sidesheet-button.danger:hover{background:var(--status-error);color:#fff}.background-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.background-option{position:relative;aspect-ratio:16 / 9;border:2px solid var(--border-default);border-radius:var(--radius-md);overflow:hidden;cursor:pointer;background:var(--bg-secondary);transition:all var(--transition-normal);padding:0}.background-option:hover{border-color:var(--border-hover);transform:translateY(-2px)}.background-option.selected{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-primary-glow)}.background-thumbnail{width:100%;height:100%;object-fit:cover}.background-none{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);color:var(--text-muted);font-size:var(--text-md)}.background-name{position:absolute;bottom:0;left:0;right:0;padding:.5rem;background:var(--bg-overlay);color:var(--text-primary);font-size:var(--text-sm);text-align:center}.background-check{position:absolute;top:.5rem;right:.5rem;width:1.5rem;height:1.5rem;background:var(--accent-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-on-accent);font-size:var(--text-sm);font-weight:700}@media(max-width:480px){.sidesheet{width:100%;max-width:100%}}.social-login-section{margin-top:.5rem}.social-login-divider{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.social-login-divider:before,.social-login-divider:after{content:"";flex:1;height:1px;background:var(--border-default)}.social-login-divider span{color:var(--text-muted);font-size:var(--text-base)}.social-login-buttons{display:flex;flex-direction:column;gap:.75rem}.social-login-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;height:45px;padding:0;border:none;border-radius:var(--radius-md);font-size:var(--text-md);font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-normal)}.social-login-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-sm)}.social-login-btn:active:not(:disabled){transform:translateY(0)}.social-login-btn:disabled{opacity:.6;cursor:not-allowed}.social-login-icon{width:40px;height:40px;object-fit:contain}.social-login-btn--google{border:1px solid var(--border-default)}.register-steps{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:1rem}.register-step{width:32px;height:32px;border-radius:50%;background:var(--ui-fill-hover);border:2px solid var(--border-hover);color:var(--text-muted);display:flex;align-items:center;justify-content:center;font-size:var(--text-base);font-weight:600;line-height:1;box-sizing:border-box;transition:all var(--transition-slow);flex-shrink:0}.register-step.active{background:var(--accent-primary);border-color:var(--accent-primary);color:var(--text-on-accent);transform:scale(1.1)}.register-step.completed{background:var(--status-success-bg);border-color:var(--status-success);color:var(--status-success)}.register-step-line{width:40px;height:2px;background:var(--border-hover);flex-shrink:0}.step-description{text-align:center;color:var(--text-secondary);font-size:var(--text-md);margin-bottom:.5rem;line-height:1.5}.step-description strong{color:var(--text-primary)}.code-input{text-align:center;font-size:var(--text-xl)!important;letter-spacing:.5rem;font-family:var(--font-mono)}.code-input::placeholder{font-size:var(--text-md);letter-spacing:normal}.password-rules{list-style:none;padding:0;margin:.5rem 0 0;font-size:var(--text-base);display:grid;grid-template-columns:1fr 1fr;gap:.25rem 1rem}.password-rules li{padding:.25rem 0 .25rem 1.25rem;position:relative;transition:color var(--transition-normal)}.password-rules li:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:14px;height:14px;border-radius:50%;transition:all var(--transition-normal)}.password-rules li.invalid{color:var(--text-muted)}.password-rules li.invalid:before{background:var(--status-error-bg);border:1px solid var(--status-error-border)}.password-rules li.valid{color:var(--status-success)}.password-rules li.valid:before{background:var(--status-success-bg);border:1px solid var(--status-success);content:"";background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%2322c55e' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:10px 10px;display:flex;align-items:center;justify-content:center}.toast-container{position:fixed;bottom:20px;right:20px;z-index:var(--z-tooltip);display:flex;flex-direction:column;gap:.625rem;max-width:400px;pointer-events:none}.toast{display:flex;align-items:flex-start;gap:.75rem;padding:14px 16px;border-radius:var(--radius-lg);background:var(--bg-secondary);border:1px solid var(--border-default);box-shadow:var(--shadow-lg);pointer-events:auto;animation:toast-slide-in .3s ease-out}@keyframes toast-slide-in{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast-icon-wrapper{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full)}.toast-icon{width:16px;height:16px}.toast-success .toast-icon-wrapper{background:var(--status-success-bg);color:var(--status-success)}.toast-error .toast-icon-wrapper{background:var(--status-error-bg);color:var(--status-error)}.toast-info .toast-icon-wrapper{background:var(--status-info-bg);color:var(--status-info)}.toast-content{flex:1;min-width:0}.toast-title{font-weight:600;font-size:var(--text-base);color:var(--text-primary);line-height:1.4}.toast-message{font-size:var(--text-base);color:var(--text-tertiary);margin-top:.125rem;line-height:1.4;word-break:break-word}.toast-dismiss{flex-shrink:0;width:24px;height:24px;padding:0;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--text-muted);transition:all var(--transition-fast)}.toast-dismiss:hover{background:var(--ui-fill-hover);color:var(--text-secondary)}.toast-dismiss svg{width:14px;height:14px}@media(max-width:768px){.toast-container{inset:70px 10px auto;max-width:none}.toast{padding:12px 14px}}.model-setup-panel{display:flex;flex-direction:column;width:100%;height:100%;background:var(--bg-primary);color:var(--text-primary);overflow:hidden}.model-setup-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem;border-bottom:1px solid var(--border-default);flex-shrink:0}.model-setup-header-title h2{margin-bottom:.25rem;font-size:var(--text-lg);font-weight:600}.model-setup-header-title p{font-size:var(--text-base);color:var(--text-muted)}.model-setup-close-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all var(--transition-normal)}.model-setup-close-button:hover:not(:disabled){background:var(--ui-fill-hover);color:var(--text-secondary)}.model-setup-close-button:disabled{opacity:.5;cursor:not-allowed}.model-setup-steps{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 1.5rem;background:var(--bg-tertiary);flex-shrink:0;margin-bottom:1.5rem}.model-setup-step{display:flex;flex-direction:column;align-items:center;gap:.25rem}.model-setup-step-circle{width:28px;height:28px;border-radius:50%;background:var(--ui-fill-hover);border:2px solid var(--border-hover);display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:600;line-height:1;color:var(--text-muted);box-sizing:border-box;transition:all var(--transition-slow)}.model-setup-step-label{font-size:var(--text-xs);color:var(--text-muted)}.model-setup-step.active .model-setup-step-circle{background:var(--accent-primary);border-color:var(--accent-primary);color:var(--text-on-accent)}.model-setup-step.active .model-setup-step-label{color:var(--text-secondary)}.model-setup-step.completed .model-setup-step-circle{background:var(--status-success);border-color:var(--status-success);color:var(--text-on-accent)}.model-setup-step.completed .model-setup-step-label{color:var(--text-muted)}.model-setup-step-line{width:40px;height:2px;background:var(--border-hover);align-self:flex-start;margin-top:.75rem}.model-setup-content{flex:1;overflow-y:auto;padding:0 1.5rem;display:flex;flex-direction:column;min-height:0}.model-setup-section h3{margin-bottom:.5rem;font-size:var(--text-md);font-weight:600;color:var(--text-primary)}.model-setup-description{margin-bottom:1rem;font-size:var(--text-base);color:var(--text-tertiary);line-height:1.5}.model-setup-empty{color:var(--text-muted);font-style:italic;padding:1.5rem;text-align:center;background:var(--ui-fill);border-radius:var(--radius-md)}.model-setup-info-grid{display:flex;flex-direction:column;gap:.75rem}.model-setup-info-item{display:flex;flex-direction:column;gap:.25rem;padding:.75rem 1rem;background:var(--ui-fill);border-radius:var(--radius-md)}.model-setup-info-item label{font-size:var(--text-base);color:var(--text-muted);font-weight:500;letter-spacing:.5px}.model-setup-info-item span{color:var(--text-primary);font-size:var(--text-base)}.model-setup-motion-transfer{display:flex;flex-direction:column;gap:1rem}.model-setup-motion-lists{display:flex;gap:.75rem}.model-setup-motion-list{flex:1;background:var(--ui-fill);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:1rem;display:flex;flex-direction:column}.model-setup-motion-list h4{margin-bottom:.25rem;font-size:var(--text-md);font-weight:600;color:var(--text-primary)}.model-setup-motion-desc{margin-bottom:.75rem;font-size:var(--text-base);color:var(--text-muted)}.model-setup-motion-items{display:flex;flex-direction:column;gap:.5rem;min-height:60px;overflow-y:auto;flex:1}.model-setup-motion-empty{color:var(--text-muted);font-size:var(--text-base);font-style:italic;text-align:center;padding:1rem .5rem}.model-setup-motion-item{display:flex;align-items:center;justify-content:space-between;padding:.625rem .75rem;background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-normal);-webkit-user-select:none;user-select:none}.model-setup-motion-item:hover{background:var(--ui-fill-hover);border-color:var(--border-hover)}.model-setup-motion-item.selected{background:var(--ui-fill-selected);border-color:var(--accent-secondary)}.model-setup-motion-index{font-size:var(--text-sm);font-family:var(--font-mono);color:var(--text-secondary);min-width:24px}.model-setup-motion-item.selected .model-setup-motion-index{color:var(--accent-secondary)}.model-setup-motion-preview{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all var(--transition-normal);flex-shrink:0}.model-setup-motion-preview:hover:not(:disabled){background:var(--ui-fill-selected);border-color:var(--accent-secondary);color:var(--accent-secondary)}.model-setup-motion-preview:disabled{opacity:.5;cursor:not-allowed}.model-setup-transfer-buttons{display:flex;gap:.75rem}.model-setup-transfer-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.375rem;margin:0 1rem;padding:.5rem;background:var(--ui-fill);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-normal)}.model-setup-transfer-btn:hover:not(:disabled){background:var(--ui-fill-selected);border-color:var(--accent-secondary);color:var(--accent-secondary)}.model-setup-transfer-btn:disabled{opacity:.4;cursor:not-allowed}.model-setup-expression-preview{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all var(--transition-normal);flex-shrink:0}.model-setup-expression-preview:hover:not(:disabled){background:var(--ui-fill-selected);border-color:var(--accent-secondary);color:var(--accent-secondary)}.model-setup-expression-preview:disabled{opacity:.5;cursor:not-allowed}.model-setup-expression-list{display:flex;flex-direction:column;gap:.5rem}.model-setup-expression-item{display:flex;align-items:center;gap:1.5rem;padding:.75rem 1rem;background:var(--ui-fill);border:1px solid transparent;border-radius:var(--radius-md);transition:all var(--transition-normal);overflow:hidden}.model-setup-expression-item:hover{background:var(--ui-fill-hover)}.model-setup-expression-label{flex:0 1 auto;font-size:var(--text-base);font-family:var(--font-mono);color:var(--text-secondary);min-width:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-setup-expression-item select{flex:1 0 120px;padding:10px 32px 10px 12px;background:var(--ui-fill);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-base);cursor:pointer;transition:all var(--transition-normal);box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.model-setup-expression-item select:hover:not(:disabled){border-color:var(--border-hover)}.model-setup-expression-item select:focus{outline:none;border-color:var(--accent-secondary)}.model-setup-expression-item select:disabled{opacity:.5;cursor:not-allowed}.model-setup-error{margin:0 1.5rem 1rem;padding:.75rem 1rem;background:var(--status-error-bg);border:1px solid var(--status-error-border);border-radius:var(--radius-md);color:var(--status-error);font-size:var(--text-base)}.model-setup-footer{display:flex;justify-content:space-between;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--border-default);flex-shrink:0;margin-top:1.5rem}.model-setup-cancel-button,.model-setup-back-button,.model-setup-next-button,.model-setup-submit-button{padding:.75rem 1.5rem;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-base);font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.model-setup-cancel-button,.model-setup-back-button{background:transparent;border:1px solid var(--border-hover);color:var(--text-secondary)}.model-setup-cancel-button:hover:not(:disabled),.model-setup-back-button:hover:not(:disabled){background:var(--ui-fill-hover);border-color:var(--border-hover)}.model-setup-next-button,.model-setup-submit-button{background:var(--accent-primary);border:none;color:var(--text-on-accent);flex:1;max-width:200px}.model-setup-next-button:hover:not(:disabled),.model-setup-submit-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-glow)}.model-setup-cancel-button:disabled,.model-setup-back-button:disabled,.model-setup-next-button:disabled,.model-setup-submit-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.model-setup-submit-button .spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(orientation:portrait)and (max-width:768px){.model-setup-panel{position:fixed;bottom:0;left:0;right:0;height:60svh;max-height:60svh;border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow-lg);z-index:600;animation:var(--animation-slide-up)}.model-setup-header{padding:1rem 1.25rem}.model-setup-header-title h2{font-size:var(--text-lg)}.model-setup-header-title p{font-size:var(--text-base)}.model-setup-steps{padding:.75rem 1rem;margin-bottom:1rem}.model-setup-step-circle{width:24px;height:24px;font-size:var(--text-xs)}.model-setup-step-label{font-size:var(--text-xs)}.model-setup-step-line{width:24px;margin-top:.625rem}.model-setup-content{padding:0 1rem;overflow-y:auto;-webkit-overflow-scrolling:touch}.model-setup-section h3{font-size:var(--text-md)}.model-setup-description{font-size:var(--text-base);margin-bottom:.75rem}.model-setup-info-item{padding:.625rem .75rem}.model-setup-info-item label{font-size:var(--text-sm)}.model-setup-info-item span{font-size:var(--text-base)}.model-setup-motion-lists{gap:.5rem}.model-setup-motion-list{padding:.75rem}.model-setup-motion-list h4{font-size:var(--text-base)}.model-setup-motion-desc{font-size:var(--text-sm);margin-bottom:.5rem}.model-setup-motion-items{min-height:50px;max-height:120px}.model-setup-motion-item{padding:.5rem .625rem}.model-setup-motion-index{font-size:var(--text-xs)}.model-setup-motion-preview{width:26px;height:26px}.model-setup-transfer-buttons{gap:.5rem}.model-setup-transfer-btn{margin:0 .5rem}.model-setup-expression-preview{width:26px;height:26px}.model-setup-expression-item{gap:.75rem;padding:.625rem .75rem}.model-setup-expression-item select{padding:8px 28px 8px 10px;background-position:right 8px center}.model-setup-footer{padding:.75rem 1rem;gap:.5rem;margin-top:1rem}.model-setup-cancel-button,.model-setup-back-button,.model-setup-next-button,.model-setup-submit-button{padding:.625rem 1rem;font-size:var(--text-base)}}@media(max-width:400px){.model-setup-step-label{display:none}.model-setup-step-line{width:32px;margin-top:.625rem}}html,body,#root{width:100%;height:100%}body{font-family:var(--font-sans);background:var(--bg-base);color:var(--text-primary);overflow:hidden}.app-container{display:flex;flex-direction:column;width:100%;height:100vh}.app-main{flex:1;padding:0;overflow:hidden;width:100%}.app-header{background:var(--ui-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-default);padding:1rem 2rem}.header-inner{display:flex;justify-content:space-between;align-items:center;width:100%}.header-left{display:flex;align-items:center;gap:.5rem}.header-center{flex:1}.header-right{display:flex;align-items:center;gap:.5rem;min-width:44px;padding-right:2rem}.app-logo{font-size:1.75rem;font-weight:700;letter-spacing:-.02em;color:var(--text-primary);margin:0;line-height:1;white-space:nowrap}.header-controls{display:flex;gap:1rem;align-items:center}.header-auth-button{padding:.5rem 1rem;font-size:var(--text-base);font-weight:500;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal);white-space:nowrap}.header-signin{background:transparent;border:1px solid var(--border-default);color:var(--text-primary)}.header-signin:hover{background:var(--ui-fill-hover);border-color:var(--border-hover)}.header-signup{background:var(--accent-primary);border:1px solid var(--accent-primary);color:var(--text-on-accent)}.header-signup:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.header-user-avatar{width:36px;height:36px;border-radius:50%;background:var(--accent-primary);display:flex;align-items:center;justify-content:center;font-size:var(--text-md);font-weight:600;color:var(--text-primary)}.main-content-split{flex:1;display:flex;gap:0;padding:0;overflow:hidden;height:100%;background:transparent}.live2d-section{flex:2;min-width:0;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;padding:0;background:transparent}.live2d-stage{position:relative;width:100%;height:100%;border:none;outline:none;overflow:hidden;background:transparent}.chat-panel-wrapper{position:relative;flex:0 0 auto;width:var(--panel-width);display:flex;overflow:visible;transition:width var(--transition-slow)}.main-content-split.chat-panel-closed .chat-panel-wrapper{flex:0;width:0}.chat-section{width:100%;height:100%;display:flex;opacity:1;transition:opacity var(--transition-slow)}.main-content-split.chat-panel-closed .chat-section{opacity:0;pointer-events:none}.main-content-split.chat-panel-closed .live2d-section{flex:1}@media not ((orientation:portrait)and (max-width:768px)){.main-content-split.panel-open .chat-section{opacity:1;pointer-events:auto}.main-content-split.panel-open .chat-panel-wrapper{flex:0 0 auto;width:var(--panel-width)}}.live2d-container{flex:1;display:flex;align-items:center;justify-content:center;padding:1rem;position:relative}.live2d-canvas{width:100%;height:100%;display:block;border:none;outline:none;background:transparent}.app-footer{padding:1rem 2rem;text-align:center;background:var(--ui-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--border-default)}.app-footer p{font-size:var(--text-base);color:var(--text-muted)}.expression-buttons{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:.5rem}.expression-buttons button{padding:.5rem 1rem;font-size:var(--text-base);font-weight:500;color:var(--text-primary);background:#e94560cc;border:1px solid var(--border-hover);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.expression-buttons button:hover{background:var(--accent-primary);transform:translateY(-2px);box-shadow:var(--shadow-glow)}.expression-buttons button:active{transform:translateY(0)}@media(orientation:portrait)and (max-width:768px){.app-main{padding:0}.live2d-section{flex:1;padding:0}.chat-panel-wrapper{position:static;flex:unset;min-width:unset;max-width:unset;overflow:visible}.main-content-split.chat-panel-closed .chat-panel-wrapper{flex:unset;min-width:unset;max-width:unset}.chat-section{position:fixed;top:0;left:0;width:100%;height:100%;max-width:none;min-width:0;z-index:500;transform:translate(0);transition:transform .3s ease,opacity .3s ease;overflow:hidden}.main-content-split.chat-panel-closed .chat-section{transform:translate(100%);opacity:0;pointer-events:none;flex:unset;max-width:none;overflow:visible}.main-content-split.settings-open .chat-section{pointer-events:none}.main-content-split.settings-open .chat-section .secretary-settings-panel{pointer-events:auto}}@media(max-width:768px){.app-header{padding:.5rem 1rem}.header-inner{position:relative}.app-logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:var(--text-lg)}.app-header .subtitle{font-size:var(--text-base)}.header-signup{display:none}.header-signin{padding:.375rem .75rem;font-size:var(--text-sm)}.header-user-avatar{width:32px;height:32px;font-size:var(--text-base)}.header-right{padding-right:0}.live2d-container{padding:.5rem}.live2d-stage{border-radius:var(--radius-md)}.expression-buttons button{padding:.4rem .8rem;font-size:var(--text-sm)}.app-main{padding:0}.main-content-split{flex-direction:column}.live2d-section{flex:1;min-height:300px;padding:0}.chat-section{flex:1;min-width:0;max-width:none;min-height:300px}}
