.login-form{width:100%;max-width:400px;padding:var(--spacing-xl);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.login-header{text-align:center;margin-bottom:var(--spacing-xl)}.login-logo{height:48px;width:auto;margin-bottom:var(--spacing-md)}.login-title{font-size:var(--text-xl);font-weight:600;color:var(--color-text);margin:0 0 var(--spacing-xs) 0}.login-subtitle{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0}.login-button{width:100%;margin-top:var(--spacing-md)}.login-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:var(--spacing-lg);background-color:var(--color-background)}.login-page:before{content:"";position:fixed;inset:0;background:linear-gradient(135deg,var(--color-primary-light) 0%,transparent 50%);opacity:.5;pointer-events:none;z-index:-1}.login-footer{margin-top:var(--spacing-lg);text-align:center;font-size:var(--text-sm);color:var(--color-text-tertiary)}:root{--color-primary: #2FA84E;--color-primary-hover: #268f42;--color-primary-light: #edf6ee;--color-dark-accent: #262220;--color-background: #F0EFEA;--color-background-secondary: #E8E6E0;--color-background-tertiary: #DFDDD6;--color-surface: #F7F6F2;--color-surface-hover: #ECEAE4;--color-border: #D2D0C9;--color-border-light: #DCDAD3;--color-text: #2A2826;--color-text-secondary: #5C5850;--color-text-tertiary: #908C84;--color-text-inverse: #ffffff;--color-success: #2FA84E;--color-success-light: #e8f5eb;--color-error: #dc3545;--color-error-light: #fcecee;--color-warning: #e59a1f;--color-warning-light: #fdf5e4;--color-info: #3b82f6;--color-info-light: #eff6ff;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--font-sans-override: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-sans: var(--font-sans-override);--font-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--sidebar-width: 280px;--header-height: 60px;--max-content-width: 900px}[data-theme=dark]{--color-background: #232020;--color-background-secondary: #2c2826;--color-background-tertiary: #363230;--color-surface: #2c2826;--color-surface-hover: #363230;--color-border: #433e3a;--color-border-light: #363230;--color-text: #f2f0ed;--color-text-secondary: #b0a99f;--color-text-tertiary: #7d756c;--color-text-inverse: #232020;--color-primary-light: rgba(47, 168, 78, .15);--color-success-light: rgba(47, 168, 78, .15);--color-error-light: rgba(220, 53, 69, .15);--color-warning-light: rgba(229, 154, 31, .15);--color-info-light: rgba(59, 130, 246, .15);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 6px rgba(0, 0, 0, .25);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .3)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:1.5;color:var(--color-text);background-color:var(--color-background);transition:background-color var(--transition-normal),color var(--transition-normal)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-background-secondary)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}::selection{background-color:var(--color-primary);color:var(--color-text-inverse)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-hover)}code,pre{font-family:var(--font-mono);font-size:var(--text-sm)}code{background-color:var(--color-background-tertiary);padding:.125rem .375rem;border-radius:var(--radius-sm)}pre{background-color:var(--color-background-tertiary);padding:var(--spacing-md);border-radius:var(--radius-md);overflow-x:auto}pre code{background:none;padding:0}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:500;line-height:1.5;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.button:disabled{opacity:.5;cursor:not-allowed}.button-primary{background-color:var(--color-primary);color:var(--color-text-inverse)}.button-primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.button-secondary{background-color:var(--color-background-secondary);color:var(--color-text);border-color:var(--color-border)}.button-secondary:hover:not(:disabled){background-color:var(--color-surface-hover)}.button-ghost{background-color:transparent;color:var(--color-text-secondary)}.button-ghost:hover:not(:disabled){background-color:var(--color-surface-hover);color:var(--color-text)}.button-danger{background-color:var(--color-error);color:var(--color-text-inverse)}.button-danger:hover:not(:disabled){background-color:#c82333}.button-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--text-xs)}.button-lg{padding:var(--spacing-md) var(--spacing-lg);font-size:var(--text-base)}.button-icon{padding:var(--spacing-sm);aspect-ratio:1}.input{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-sans);font-size:var(--text-base);line-height:1.5;color:var(--color-text);background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.input::placeholder{color:var(--color-text-tertiary)}.input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.input:disabled{opacity:.5;cursor:not-allowed}.input-error{border-color:var(--color-error)}.input-error:focus{box-shadow:0 0 0 3px var(--color-error-light)}.label{display:block;font-size:var(--text-sm);font-weight:500;color:var(--color-text);margin-bottom:var(--spacing-xs)}.form-group{margin-bottom:var(--spacing-md)}.form-error{font-size:var(--text-sm);color:var(--color-error);margin-top:var(--spacing-xs)}.card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.card-header{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border)}.card-body{padding:var(--spacing-lg)}.card-footer{padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-border)}.badge{display:inline-flex;align-items:center;padding:.125rem .5rem;font-size:var(--text-xs);font-weight:500;border-radius:var(--radius-full)}.badge-success{background-color:var(--color-success-light);color:var(--color-success)}.badge-error{background-color:var(--color-error-light);color:var(--color-error)}.badge-warning{background-color:var(--color-warning-light);color:var(--color-warning)}.badge-info{background-color:var(--color-info-light);color:var(--color-info)}.spinner{width:1.25rem;height:1.25rem;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.avatar{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background-color:var(--color-primary-light);color:var(--color-primary);font-weight:600;border-radius:var(--radius-full)}.avatar-sm{width:2rem;height:2rem;font-size:var(--text-sm)}.avatar-lg{width:3rem;height:3rem;font-size:var(--text-lg)}.divider{height:1px;background-color:var(--color-border);margin:var(--spacing-md) 0}.dropdown{position:relative}.dropdown-menu{position:absolute;top:100%;right:0;min-width:160px;padding:var(--spacing-xs);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:100}.dropdown-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--text-sm);color:var(--color-text);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast)}.dropdown-item:hover{background-color:var(--color-surface-hover)}.alert{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--radius-md)}.alert-success{background-color:var(--color-success-light);color:var(--color-success)}.alert-error{background-color:var(--color-error-light);color:var(--color-error)}.alert-warning{background-color:var(--color-warning-light);color:var(--color-warning)}.alert-info{background-color:var(--color-info-light);color:var(--color-info)}.progress{height:.5rem;background-color:var(--color-background-tertiary);border-radius:var(--radius-full);overflow:hidden}.progress-bar{height:100%;background-color:var(--color-primary);border-radius:var(--radius-full);transition:width var(--transition-normal)}.expandable-trigger{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--text-sm);color:var(--color-text-secondary);cursor:pointer;background:none;border:none;padding:0}.expandable-trigger:hover{color:var(--color-text)}.expandable-content{margin-top:var(--spacing-sm);padding:var(--spacing-md);background-color:var(--color-background-tertiary);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--text-sm);overflow-x:auto}html[data-font-size=compact]{--fs-content: 12px;--fs-ui: 10px;--fs-small: 9px}html[data-font-size=default]{--fs-content: 14px;--fs-ui: 11px;--fs-small: 10px}html[data-font-size=relaxed]{--fs-content: 16px;--fs-ui: 13px;--fs-small: 11px}html[data-font-size=large]{--fs-content: 18px;--fs-ui: 14px;--fs-small: 12px}html[data-density=compact]{--msg-gap: 6px;--msg-lh: 1.4;--msg-p-gap: 3px;--msg-pad: 4px 8px;--msg-list-gap: 1px}html[data-density=default]{--msg-gap: 16px;--msg-lh: 1.55;--msg-p-gap: 6px;--msg-pad: 8px 12px;--msg-list-gap: 2px}html[data-density=comfortable]{--msg-gap: 24px;--msg-lh: 1.75;--msg-p-gap: 10px;--msg-pad: 12px 16px;--msg-list-gap: 4px}.chat-container{display:flex;height:100vh;background:var(--color-background)}.sidebar{width:var(--sidebar-w, 220px);min-width:140px;max-width:400px;background:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;flex-shrink:0}.sidebar-resize-handle{width:4px;flex-shrink:0;cursor:col-resize;background:transparent;transition:background .15s;position:relative;z-index:10;margin-left:-2px;margin-right:-2px}.sidebar-resize-handle:hover,.sidebar-resize-handle.dragging{background:var(--color-primary);opacity:.4}.sidebar-resize-handle.dragging{opacity:.6}.sidebar-header{padding:6px;border-bottom:1px solid var(--color-border)}.btn-new{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px 12px;background:var(--color-primary);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;letter-spacing:-.01em;cursor:pointer;transition:transform .1s,opacity .1s;will-change:transform}.btn-new:hover{opacity:.92}.btn-new:active{transform:scale(.98)}.sidebar-search{padding:6px;position:relative}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--color-text-tertiary);pointer-events:none}.search-input{width:100%;padding:6px 8px 6px 28px;background:var(--color-background);border:1px solid var(--color-border);border-radius:4px;font-size:12px;color:var(--color-text);transition:border-color .1s}.search-input:focus{outline:none;border-color:var(--color-primary)}.search-input::placeholder{color:var(--color-text-tertiary)}.sidebar-nav{flex:1;overflow-y:auto;padding:4px}.sidebar-empty{padding:16px 12px;text-align:center;color:var(--color-text-tertiary);font-size:11px}.nav-item{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:4px;cursor:pointer;transition:background .1s;position:relative}.nav-item:hover{background:var(--color-surface-hover)}.nav-item.active{background:var(--color-primary-light)}.nav-icon{color:var(--color-text-tertiary);flex-shrink:0}.nav-title{flex:1;font-size:12px;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.01em;cursor:default}.nav-title-input{flex:1;font-size:12px;color:var(--color-text);background:var(--color-bg);border:1px solid var(--color-primary);border-radius:3px;padding:1px 4px;outline:none;min-width:0;letter-spacing:-.01em}.nav-date{font-size:10px;color:var(--color-text-tertiary);flex-shrink:0;font-variant-numeric:tabular-nums}.nav-delete{position:absolute;right:4px;padding:4px;background:none;border:none;color:var(--color-text-tertiary);cursor:pointer;opacity:0;transition:opacity .1s,color .1s;border-radius:3px}.nav-item:hover .nav-delete{opacity:1}.nav-delete:hover{color:var(--color-error);background:var(--color-error-light)}.sidebar-footer{padding:8px;border-top:1px solid var(--color-border)}.btn-clear-all{display:flex;align-items:center;gap:6px;width:100%;padding:6px 8px;background:transparent;border:none;border-radius:4px;color:var(--color-text-tertiary);font-size:11px;cursor:pointer;transition:background .1s,color .1s}.btn-clear-all:hover{background:var(--color-error-light);color:var(--color-error)}.nuke-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:nukeOverlayIn .15s ease-out}@keyframes nukeOverlayIn{0%{opacity:0}to{opacity:1}}.nuke-modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:24px;max-width:340px;width:90%;text-align:center;box-shadow:0 16px 48px #0000004d;animation:nukeModalIn .2s ease-out}@keyframes nukeModalIn{0%{opacity:0;transform:scale(.9) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.nuke-emoji{font-size:48px;line-height:1;margin-bottom:12px}.nuke-title{font-size:16px;font-weight:700;color:var(--color-text);margin:0 0 8px}.nuke-desc{font-size:13px;color:var(--color-text-secondary);margin:0 0 20px;line-height:1.5}.nuke-actions{display:flex;gap:8px}.nuke-cancel{flex:1;padding:8px 12px;background:var(--color-background);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);font-size:13px;font-weight:500;cursor:pointer;transition:background .1s}.nuke-cancel:hover{background:var(--color-surface-hover)}.nuke-confirm{flex:1;padding:8px 12px;background:var(--color-error);border:1px solid var(--color-error);border-radius:6px;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:opacity .1s,transform .1s}.nuke-confirm:hover{opacity:.9}.nuke-confirm:active{transform:scale(.98)}.nuke-confirm:disabled,.nuke-cancel:disabled{opacity:.6;cursor:not-allowed}.nav-streaming{width:6px;height:6px;border-radius:50%;background:var(--color-primary);flex-shrink:0;animation:streamPulse 1.5s ease-in-out infinite}@keyframes streamPulse{0%,to{opacity:.4}50%{opacity:1}}.chat-main{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--color-background);position:relative}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:var(--color-surface);border-bottom:1px solid var(--color-border);height:40px;flex-shrink:0}.chat-header-left{display:flex;align-items:center;gap:8px}.chat-icon{height:18px;width:auto}.chat-title{font-size:13px;font-weight:600;color:var(--color-text);letter-spacing:-.02em;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-title.editable{cursor:pointer;border-radius:3px;padding:1px 4px;margin:-1px -4px}.chat-title.editable:hover{background:var(--color-surface-hover)}.chat-title-input{font-size:13px;font-weight:600;color:var(--color-text);letter-spacing:-.02em;background:var(--color-background);border:1px solid var(--color-primary);border-radius:3px;padding:1px 4px;outline:none;max-width:300px;font-family:inherit}.chat-header-right{display:flex;align-items:center;gap:10px}.user-name{font-size:11px;color:var(--color-text-tertiary);font-weight:500}.btn-logout{display:flex;align-items:center;justify-content:center;padding:5px;background:none;border:none;color:var(--color-text-tertiary);cursor:pointer;border-radius:4px;transition:color .1s,background .1s}.btn-logout:hover{color:var(--color-text);background:var(--color-surface-hover)}.chat-session{display:contents}.messages{flex:1;overflow-y:auto;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.messages::-webkit-scrollbar{width:6px}.messages::-webkit-scrollbar-track{background:transparent}.messages::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.messages::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.messages-inner{display:flex;flex-direction:column;gap:var(--msg-gap, 16px);padding:12px 24px;max-width:860px;margin:0 auto;width:100%}.messages-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--color-text-tertiary)}.empty-landing{display:flex;flex-direction:column;align-items:center;gap:16px;max-width:600px;padding:0 24px;text-align:center}.empty-greeting{font-size:24px;font-weight:600;color:var(--color-text);letter-spacing:-.02em;margin:0}.empty-subtitle{font-size:14px;color:var(--color-text-tertiary);margin:0}.empty-suggestions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:8px}.suggestion-chip{padding:8px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;font-size:var(--fs-content);color:var(--color-text-secondary);cursor:pointer;transition:border-color .1s,color .1s,background .1s;font-family:inherit;line-height:1.4}.suggestion-chip:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light)}.suggestion-chip:active{transform:scale(.97)}.message{display:flex;gap:8px;animation:messageIn .15s ease-out}@keyframes messageIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.message.user{flex-direction:row-reverse}.message-avatar{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--color-primary);color:#fff}.message.assistant .message-avatar{display:none}.message-body{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1}.message-actions{display:flex;justify-content:flex-end}.message-body>.message-content{transition:color .2s ease-out}.message-actions:has(.message-copy-btn:hover)~.message-content{color:var(--color-primary)}.message-copy-btn{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);color:var(--color-text-secondary);font-size:var(--fs-small);cursor:pointer;transition:background .1s,border-color .1s,color .1s}.message-copy-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light)}.message-copy-btn.copied{border-color:var(--color-success);color:var(--color-success);background:var(--color-success-light)}.message-replacement-note{font-size:var(--fs-small);color:var(--color-text-secondary);padding:0 2px;margin:2px 0}.message-content{padding:var(--msg-pad, 8px 12px);border-radius:10px;font-size:var(--fs-content);line-height:var(--msg-lh, 1.55);max-width:780px}.message-content p{margin:0}.message-content p+p{margin-top:var(--msg-p-gap, 6px)}.message.user .message-content{background:var(--color-primary);color:#fff;border-bottom-right-radius:3px;margin-left:auto}.message.user .message-content ::selection{background:#ffffffe6;color:var(--color-dark-accent)}.message.user .message-content ::-moz-selection{background:#ffffffe6;color:var(--color-dark-accent)}.message.assistant .message-content{background:transparent;color:var(--color-text);border:none;border-radius:0;padding:0}.message-content table{width:100%;border-collapse:collapse;font-size:var(--fs-ui);margin:8px 0;border:1px solid var(--color-border);border-radius:4px;overflow:hidden}.message-content th{padding:6px 10px;text-align:left;font-weight:600;font-size:var(--fs-small);background:var(--color-background-tertiary);color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);text-transform:uppercase;letter-spacing:.03em}.message-content td{padding:5px 10px;border-bottom:1px solid var(--color-border);color:var(--color-text)}.message-content tbody tr:last-child td{border-bottom:none}.message-content tbody tr:hover{background:var(--color-surface-hover)}.message-content strong{font-weight:600}.message-content em{font-style:italic}.message-content code{background:var(--color-background-tertiary);padding:1px 4px;border-radius:3px;font-size:var(--fs-ui);font-family:var(--font-mono)}.message-content ul,.message-content ol{margin:var(--msg-p-gap, 6px) 0;padding-left:20px}.message-content li{margin:var(--msg-list-gap, 2px) 0}.message-content h1,.message-content h2,.message-content h3{margin:var(--msg-p-gap, 6px) 0 var(--msg-list-gap, 2px);font-weight:600}.message-content h1{font-size:16px}.message-content h2{font-size:14px}.message-content h3{font-size:13px}.message-tools{display:flex;flex-direction:column;gap:4px}.tool-call{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;background:var(--color-background-tertiary);border-radius:4px;font-size:var(--fs-ui);border-left:2px solid var(--color-border);width:fit-content;max-width:780px}.tool-call-header{display:flex;align-items:center;gap:6px}.tool-icon{flex-shrink:0;color:var(--color-text-tertiary);width:12px;height:12px}.tool-icon.spinning{animation:spin .8s linear infinite}.tool-icon.success{color:var(--color-success)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tool-icon.error{color:var(--color-error)}.tool-name{font-weight:500;color:var(--color-text-secondary);font-size:var(--fs-ui)}.tool-status{font-size:var(--fs-small);font-weight:600;padding:1px 5px;border-radius:3px;text-transform:uppercase;letter-spacing:.02em}.tool-status.pending{color:var(--color-warning);background:var(--color-warning-light)}.tool-status.success{color:var(--color-success);background:var(--color-success-light)}.tool-status.error{color:var(--color-error);background:var(--color-error-light)}.tool-call.pending{border-left-color:var(--color-warning)}.tool-call.complete{border-left-color:var(--color-success)}.tool-call.complete.has-error,.tool-call.denied{border-left-color:var(--color-error)}.tool-approval{padding:10px 12px;background:var(--color-warning-light);border:1px solid var(--color-warning);border-radius:6px;max-width:780px}.tool-approval-header{display:flex;align-items:center;gap:6px;margin-bottom:6px}.tool-approval-icon{font-size:14px}.tool-approval-title{font-weight:600;font-size:var(--fs-ui);color:var(--color-text)}.tool-approval-summary{margin:0 0 8px;font-size:var(--fs-ui);color:var(--color-text);line-height:1.5;white-space:pre-line}.tool-approval.executing{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 6%,transparent)}.tool-approval.executing .tool-approval-summary{margin-bottom:0}.tool-approval.executing .tool-approval-icon-svg{color:var(--color-primary)}.tool-approval.approved{background:var(--color-success-light);border-color:var(--color-success)}.tool-approval.approved .tool-approval-summary{margin-bottom:0}.tool-approval.error{background:var(--color-error-light);border-color:var(--color-error)}.tool-approval.error .tool-approval-summary{margin-bottom:0}.tool-approval.denied{background:var(--color-error-light);border-color:var(--color-error)}.tool-approval.denied .tool-approval-summary{margin-bottom:0}.tool-approval-result{font-size:var(--fs-ui);margin-top:4px;padding-top:6px;border-top:1px solid rgba(0,0,0,.06)}.tool-approval-result-stats{color:var(--color-text-secondary)}.tool-approval-result-error{color:var(--color-error)}.tool-approval-group{display:flex;flex-direction:column;gap:4px}.tool-approval-icon-svg{flex-shrink:0}.tool-approval-icon-svg.spinning{animation:spin .8s linear infinite}.tool-approval-icon-svg.success{color:var(--color-success)}.tool-approval-icon-svg.error{color:var(--color-error)}.tool-approval-actions{display:flex;gap:6px}.btn-approve{padding:5px 12px;background:var(--color-success);color:#fff;border:none;border-radius:4px;font-size:var(--fs-ui);font-weight:600;cursor:pointer;transition:transform .1s,opacity .1s}.btn-approve:hover{opacity:.92}.btn-approve:active{transform:scale(.97)}.btn-deny{padding:5px 12px;background:var(--color-surface);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:4px;font-size:var(--fs-ui);font-weight:500;cursor:pointer;transition:transform .1s,background .1s}.btn-deny:hover{background:var(--color-error-light);border-color:var(--color-error);color:var(--color-error)}.btn-deny:active{transform:scale(.97)}.tool-error-collapsible{max-width:780px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;border-left:2px solid var(--color-warning);overflow:hidden}.tool-error-collapsible[open]{border-left-color:var(--color-error)}.tool-error-summary{display:flex;align-items:center;gap:6px;padding:5px 8px;font-size:var(--fs-ui);color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none}.tool-error-summary::-webkit-details-marker{display:none}.tool-error-summary:hover{background:var(--color-surface-hover)}.tool-error-icon{color:var(--color-warning);flex-shrink:0}.tool-error-collapsible[open] .tool-error-icon{color:var(--color-error)}.tool-error-chevron{margin-left:auto;color:var(--color-text-tertiary);flex-shrink:0;transition:transform .15s}.tool-error-collapsible[open] .tool-error-chevron{transform:rotate(180deg)}.tool-error-detail{margin:0;padding:6px 8px;font-size:var(--fs-small);font-family:var(--font-mono);color:var(--color-text-secondary);white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto;border-top:1px solid var(--color-border);background:var(--color-background-tertiary)}.tool-error-item{padding:4px 0}.tool-error-item+.tool-error-item{border-top:1px solid var(--color-border)}.tool-thinking{max-width:780px}.tool-thinking details{background:var(--color-background-tertiary);border-radius:4px;overflow:hidden}.tool-thinking summary{padding:6px 10px;font-size:var(--fs-ui);color:var(--color-text-tertiary);cursor:pointer;-webkit-user-select:none;user-select:none}.tool-thinking summary:hover{color:var(--color-text-secondary)}.tool-thinking pre{margin:0;padding:6px 10px;font-size:var(--fs-small);font-family:var(--font-mono);color:var(--color-text-secondary);white-space:pre-wrap;word-break:break-word;max-height:150px;overflow-y:auto;border-top:1px solid var(--color-border)}.tool-result-chart{max-width:780px}.chart-container{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;overflow:hidden}.chart-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--color-border)}.chart-title{margin:0;font-size:var(--fs-content);font-weight:600;color:var(--color-text);letter-spacing:-.02em}.chart-canvas-wrapper{padding:12px}.chart-canvas-wrapper .recharts-legend-item-text{color:var(--color-text-secondary)!important;font-size:var(--fs-small)!important}.tool-result-table{max-width:780px}.data-table{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;overflow:hidden}.data-table--fullscreen{position:absolute;inset:0;z-index:50;border-radius:0;border:none;display:flex;flex-direction:column}.data-table--fullscreen .data-table-wrapper{flex:1;max-height:none}.data-table-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--color-border);background:var(--color-surface)}.data-table-title{margin:0;font-size:var(--fs-content);font-weight:600;color:var(--color-text);letter-spacing:-.02em}.data-table-actions{display:flex;gap:6px}.btn-sm{display:inline-flex;align-items:center;gap:3px;padding:3px 7px;background:var(--color-primary);color:#fff;border:none;border-radius:3px;font-size:var(--fs-small);font-weight:600;cursor:pointer;transition:opacity .1s,transform .1s}.btn-sm:hover:not(:disabled){opacity:.92}.btn-sm:active:not(:disabled){transform:scale(.97)}.btn-sm:disabled{opacity:.6;cursor:not-allowed}.btn-sm.btn-primary{background:var(--color-primary);color:#fff}.btn-sm.btn-ghost{background:transparent;color:var(--color-text-secondary)}.btn-sm.btn-ghost:hover:not(:disabled){color:var(--color-primary);opacity:1}.btn-sm.btn-icon{padding:4px;background:var(--color-surface);color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn-sm.btn-icon:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);opacity:1}.btn-sm.btn-icon.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.data-table-wrapper{overflow-x:auto;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.data-table-wrapper::-webkit-scrollbar{width:6px;height:6px}.data-table-wrapper::-webkit-scrollbar-track{background:transparent}.data-table-wrapper::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.data-table-wrapper::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.data-table table{width:100%;border-collapse:collapse;font-size:var(--fs-ui)}.data-table th{position:sticky;top:0;padding:8px 10px;text-align:left;font-weight:600;font-size:var(--fs-small);background:var(--color-surface);color:var(--color-text-tertiary);border-bottom:2px solid var(--color-border);white-space:nowrap;text-transform:uppercase;letter-spacing:.04em}.data-table td{padding:5px 10px;border-bottom:1px solid var(--color-border-light);color:var(--color-text);font-size:var(--fs-ui);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}.data-table td[data-format=number],.data-table td[data-format=currency]{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--font-mono)}.data-table tbody tr[data-even]{background:color-mix(in srgb,var(--color-background) 40%,var(--color-surface) 60%)}.data-table tbody tr:hover{background:var(--color-surface-hover)}.data-table-footer{padding:8px 12px;font-size:var(--fs-ui);color:var(--color-text-tertiary);border-top:1px solid var(--color-border);background:var(--color-surface);font-variant-numeric:tabular-nums}.data-table-empty{padding:20px;text-align:center;color:var(--color-text-tertiary);font-size:var(--fs-ui)}.data-table-search{display:flex;align-items:center;gap:4px;padding:3px 8px;background:var(--color-background);border:1px solid var(--color-border);border-radius:3px;color:var(--color-text-secondary)}.data-table-search input{width:120px;background:transparent;border:none;outline:none;font-size:var(--fs-ui);color:var(--color-text)}.data-table-search input::placeholder{color:var(--color-text-tertiary)}.data-table-search .clear-btn{padding:2px;background:none;border:none;cursor:pointer;color:var(--color-text-tertiary);line-height:0}.data-table-search .clear-btn:hover{color:var(--color-text)}.data-table-filter-bar{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--color-background);border-bottom:1px solid var(--color-border)}.filter-select--operator{min-width:70px}.filter-select{padding:5px 8px;font-size:var(--fs-ui);background:var(--color-background);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text);min-width:140px}.filter-select:focus{outline:none;border-color:var(--color-primary)}.filter-contains{font-size:var(--fs-small);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.03em}.filter-input{padding:5px 8px;font-size:var(--fs-ui);background:var(--color-background);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text);min-width:120px}.filter-input:focus{outline:none;border-color:var(--color-primary)}.data-table-pills{display:flex;flex-wrap:wrap;align-items:center;gap:5px;padding:6px 12px;border-bottom:1px solid var(--color-border);background:var(--color-background)}.filter-pill{display:inline-flex;align-items:center;gap:0;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:100px;font-size:var(--fs-ui);transition:border-color .1s}.filter-pill:hover{border-color:var(--color-primary)}.filter-pill--group{background:var(--color-background-tertiary);color:var(--color-text-secondary);border-color:var(--color-border);padding-left:6px}.filter-pill__label{padding:4px 0 4px 10px;font-weight:500;color:var(--color-text-secondary)}.filter-pill__operator{font-weight:600;color:var(--color-primary)}.filter-pill__value{padding:4px 8px;color:var(--color-text);font-weight:600;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-pill__remove{display:flex;align-items:center;justify-content:center;width:28px;align-self:stretch;padding:0;background:transparent;border:none;border-left:1px solid var(--color-border);color:var(--color-text-tertiary);cursor:pointer;transition:background .1s,color .1s;border-radius:0 100px 100px 0;flex-shrink:0}.filter-pill__remove:hover{background:var(--color-error-light);color:var(--color-error)}.filter-pill--group .filter-pill__label{padding-left:4px}.th-content{display:flex;align-items:center;gap:4px}.group-btn,.sort-btn{display:inline-flex;align-items:center;gap:3px;padding:0;background:none;border:none;cursor:pointer;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit}.group-btn{color:var(--color-text-tertiary);opacity:0;transition:opacity .1s}.th-content:hover .group-btn{opacity:.5}.group-btn:hover,.group-btn.active{opacity:1;color:var(--color-primary)}.sort-btn:hover{color:var(--color-primary)}.sort-icon-inactive{opacity:.3}.resize-handle{position:absolute;right:0;top:0;bottom:0;width:4px;cursor:col-resize;-webkit-user-select:none;user-select:none;touch-action:none}.resize-handle:hover,.resize-handle.resizing{background:var(--color-primary);opacity:.5}.data-table th{position:relative}.expand-btn{display:inline-flex;align-items:center;gap:4px;padding:0;background:none;border:none;cursor:pointer;font:inherit;color:inherit}.expand-btn:hover{color:var(--color-primary)}.group-count{font-size:var(--fs-small);color:var(--color-text-tertiary);margin-left:4px}.btn-sm.active{background:var(--color-primary);opacity:.8}.typing-indicator{display:inline-flex;gap:3px;padding:8px 12px}.typing-indicator span{width:5px;height:5px;background:var(--color-text-tertiary);border-radius:50%;animation:typing 1.2s ease-in-out infinite}.typing-indicator span:nth-child(2){animation-delay:.15s}.typing-indicator span:nth-child(3){animation-delay:.3s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.3}30%{transform:translateY(-4px);opacity:1}}.file-upload-btn{display:flex;align-items:center;justify-content:center;width:38px;height:38px;background:none;border:none;color:var(--color-text-tertiary);cursor:pointer;border-radius:6px;flex-shrink:0;transition:color .1s,background .1s}.file-upload-btn:hover:not(:disabled){color:var(--color-primary);background:var(--color-surface-hover)}.file-upload-btn:disabled{opacity:.35;cursor:not-allowed}.file-preview{display:flex;align-items:center;gap:6px;padding:6px 10px;margin:0 auto 6px;max-width:780px;background:var(--color-background-tertiary);border:1px solid var(--color-border);border-radius:6px;font-size:var(--fs-ui);color:var(--color-text-secondary)}.file-preview-error{border-color:var(--color-error);color:var(--color-error)}.file-preview-name{font-weight:500;color:var(--color-text)}.file-preview-error .file-preview-name{color:var(--color-error)}.file-preview-count{color:var(--color-text-tertiary);font-size:var(--fs-ui)}.file-preview-remove{margin-left:auto;display:flex;align-items:center;justify-content:center;padding:2px;background:none;border:none;color:var(--color-text-tertiary);cursor:pointer;border-radius:3px;transition:color .1s,background .1s}.file-preview-remove:hover{color:var(--color-error);background:var(--color-error-light)}.template-download-card{padding:12px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;max-width:400px}.template-download-header{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px;color:var(--color-primary)}.template-download-title{font-size:var(--fs-content);font-weight:600;color:var(--color-text);line-height:1.3}.template-download-meta{font-size:var(--fs-ui);color:var(--color-text-tertiary);margin-top:2px}.template-download-empty{font-size:var(--fs-ui);color:var(--color-text-tertiary);margin-top:6px}.template-download-actions{display:flex;gap:6px}.user-file-card{padding:10px 12px;background:var(--color-primary);border:1px solid rgba(255,255,255,.2);border-radius:10px 10px 3px;max-width:400px;margin-left:auto;color:#fff}.user-file-card-header{display:flex;align-items:flex-start;gap:10px}.user-file-card-header>svg{flex-shrink:0;margin-top:1px;opacity:.8}.user-file-card-title{font-size:var(--fs-content);font-weight:600;line-height:1.3}.user-file-card-meta{font-size:var(--fs-ui);opacity:.7;margin-top:1px}.user-file-card-changes{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.15);display:flex;flex-direction:column;gap:4px}.user-file-change-row{font-size:var(--fs-ui);line-height:1.4}.user-file-change-id{font-weight:600;display:block;opacity:.9}.user-file-change-field{display:block;padding-left:8px;opacity:.75}.user-file-change-more{font-size:var(--fs-ui);opacity:.5;font-style:italic}.user-file-change-ellipsis{font-size:var(--fs-ui);opacity:.5;text-align:center;padding:2px 0}.input-area{padding:10px 16px 12px;background:var(--color-surface);border-top:1px solid var(--color-border);position:relative}.input-area.drag-over{border-top-color:var(--color-primary)}.drop-overlay{position:absolute;inset:0;background:color-mix(in srgb,var(--color-primary) 8%,var(--color-surface) 92%);border:2px dashed var(--color-primary);border-radius:8px;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--color-primary);font-size:var(--fs-content);font-weight:600;z-index:10;pointer-events:none}.input-container{display:flex;gap:8px;max-width:780px;margin:0 auto}.input-textarea{flex:1;padding:9px 12px;background:var(--color-background);border:1px solid var(--color-border);border-radius:6px;font-size:var(--fs-content);font-family:inherit;color:var(--color-text);resize:none;min-height:38px;max-height:180px;line-height:1.4;transition:border-color .1s}.input-textarea:focus{outline:none;border-color:var(--color-primary)}.input-textarea::placeholder{color:var(--color-text-tertiary)}.input-textarea:disabled{opacity:.5;cursor:not-allowed}.input-send{display:flex;align-items:center;justify-content:center;width:38px;height:38px;background:var(--color-primary);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:transform .1s,opacity .1s;flex-shrink:0}.input-send:hover:not(:disabled){opacity:.92}.input-send:active:not(:disabled){transform:scale(.95)}.input-send:disabled{opacity:.35;cursor:not-allowed}.input-stop{background:var(--color-error)}.input-stop:hover{opacity:.92}@media(max-width:768px){.sidebar{position:fixed;left:0;top:0;bottom:0;z-index:100;transform:translate(-100%);transition:transform .15s ease}.sidebar.open{transform:translate(0)}.messages{padding:12px}.empty-greeting{font-size:20px}.empty-suggestions{flex-direction:column;align-items:stretch}.suggestion-chip{text-align:left}.chat-header{height:38px}.input-area{padding:8px 12px 10px}}.model-picker{display:flex;align-items:center;gap:6px;position:relative}.model-picker-label{font-size:10px;font-weight:500;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.04em}.model-picker-trigger{display:flex;align-items:center;gap:5px;padding:4px 8px;background:var(--color-background);border:1px solid var(--color-border);border-radius:4px;cursor:pointer;font-family:inherit;transition:border-color .1s}.model-picker-trigger:hover:not(:disabled){border-color:var(--color-primary)}.model-picker-trigger:disabled{opacity:.4;cursor:not-allowed}.model-picker-value{font-size:11px;font-weight:600;color:var(--color-text)}.model-picker-cost{font-size:9px;font-weight:600;color:var(--color-text-tertiary);background:var(--color-background-tertiary);padding:1px 4px;border-radius:3px}.model-picker-chevron{color:var(--color-text-tertiary);transition:transform .15s}.model-picker-chevron.open{transform:rotate(180deg)}.model-picker-dropdown{position:absolute;top:calc(100% + 4px);right:0;min-width:160px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;box-shadow:var(--shadow-md);z-index:50;overflow:hidden}.model-picker-option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:7px 10px;background:none;border:none;cursor:pointer;font-family:inherit;transition:background .1s}.model-picker-option:hover{background:var(--color-surface-hover)}.model-picker-option.selected{background:var(--color-primary-light)}.model-picker-option-label{font-size:12px;font-weight:500;color:var(--color-text)}.model-picker-option.selected .model-picker-option-label{color:var(--color-primary);font-weight:600}.model-picker-option-cost{font-size:10px;font-weight:600;color:var(--color-text-tertiary);background:var(--color-background-tertiary);padding:1px 5px;border-radius:3px}.model-picker-option.selected .model-picker-option-cost{background:var(--color-primary);color:#fff}.prefs-panel{position:relative}.prefs-trigger{display:flex;align-items:center;justify-content:center;padding:5px;background:none;border:none;color:var(--color-text-tertiary);cursor:pointer;border-radius:4px;transition:color .1s,background .1s}.prefs-trigger:hover{color:var(--color-text);background:var(--color-surface-hover)}.prefs-dropdown{position:absolute;top:calc(100% + 4px);right:0;width:220px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-lg);z-index:50;padding:12px;display:flex;flex-direction:column;gap:12px}.prefs-section-label{font-size:10px;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.prefs-toggle-group{display:flex;gap:2px;background:var(--color-background);border:1px solid var(--color-border);border-radius:5px;padding:2px}.prefs-toggle-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;padding:4px 6px;background:none;border:none;border-radius:3px;font-size:11px;font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all .1s;font-family:inherit;white-space:nowrap}.prefs-toggle-btn:hover:not(.active){color:var(--color-text)}.prefs-toggle-btn.active{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-sm);font-weight:600}.prefs-select{width:100%;padding:5px 8px;background:var(--color-background);border:1px solid var(--color-border);border-radius:4px;font-size:11px;color:var(--color-text);font-family:inherit;cursor:pointer;transition:border-color .1s}.prefs-select:focus{outline:none;border-color:var(--color-primary)}.prefs-select:hover{border-color:var(--color-text-tertiary)}.usage-monitor{position:relative}.usage-monitor-trigger{display:flex;align-items:center;gap:4px;padding:4px 8px;background:var(--color-background);border:1px solid var(--color-border);border-radius:4px;cursor:pointer;font-family:inherit;transition:border-color .1s;color:var(--color-text-secondary)}.usage-monitor-trigger:hover{border-color:var(--color-primary);color:var(--color-primary)}.usage-monitor-count{font-size:10px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-text-secondary)}.usage-monitor-trigger:hover .usage-monitor-count{color:var(--color-primary)}.usage-monitor-dropdown{position:absolute;top:calc(100% + 4px);right:0;min-width:200px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-lg);z-index:50;padding:12px}.usage-monitor-title{font-size:11px;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}.usage-monitor-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.usage-monitor-stat{display:flex;flex-direction:column;gap:1px}.usage-monitor-stat-label{font-size:10px;color:var(--color-text-tertiary);font-weight:500}.usage-monitor-stat-value{font-size:13px;font-weight:600;color:var(--color-text);font-variant-numeric:tabular-nums}.usage-monitor-details-btn{display:block;width:100%;margin-top:10px;padding:6px;background:var(--color-primary);color:#fff;border:none;border-radius:4px;font-size:11px;font-weight:600;cursor:pointer;font-family:inherit;transition:opacity .1s}.usage-monitor-details-btn:hover{opacity:.92}.usage-page{min-height:100vh;background:var(--color-background);padding:0 24px 48px;max-width:960px;margin:0 auto}.usage-page-header{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--color-border);margin-bottom:24px;position:sticky;top:0;background:var(--color-background);z-index:10}.usage-page-header-left{display:flex;align-items:center;gap:10px}.usage-back-btn{display:flex;align-items:center;justify-content:center;padding:6px;background:none;border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-secondary);cursor:pointer;transition:border-color .1s,color .1s}.usage-back-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.usage-page-title{font-size:18px;font-weight:700;color:var(--color-text);letter-spacing:-.02em}.usage-page-header-right{display:flex;align-items:center;gap:8px}.usage-range-group{display:flex;gap:2px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:5px;padding:2px}.usage-range-btn{padding:4px 10px;background:none;border:none;border-radius:3px;font-size:11px;font-weight:500;color:var(--color-text-secondary);cursor:pointer;font-family:inherit;transition:all .1s}.usage-range-btn:hover:not(.active){color:var(--color-text)}.usage-range-btn.active{background:var(--color-primary);color:#fff;font-weight:600}.usage-refresh-btn{display:flex;align-items:center;justify-content:center;padding:6px;background:none;border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-secondary);cursor:pointer;transition:border-color .1s,color .1s}.usage-refresh-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.usage-refresh-btn:disabled{opacity:.4;cursor:not-allowed}.usage-refresh-btn .spinning{animation:spin .8s linear infinite}.usage-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:32px}.usage-total-card{display:flex;flex-direction:column;gap:4px;padding:14px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px}.usage-total-label{font-size:11px;font-weight:500;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.03em}.usage-total-value{font-size:20px;font-weight:700;color:var(--color-text);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.usage-section{margin-bottom:32px}.usage-section-title{font-size:14px;font-weight:600;color:var(--color-text);margin-bottom:12px;letter-spacing:-.01em}.usage-table-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.usage-table{width:100%;border-collapse:collapse;font-size:12px}.usage-table th{padding:8px 12px;text-align:left;font-weight:600;font-size:10px;background:var(--color-background-tertiary);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--color-border);white-space:nowrap}.usage-table td{padding:7px 12px;border-bottom:1px solid var(--color-border-light);color:var(--color-text);font-variant-numeric:tabular-nums;white-space:nowrap}.usage-table tbody tr:last-child td{border-bottom:none}.usage-table tbody tr:hover{background:var(--color-surface-hover)}.usage-table-empty{text-align:center;color:var(--color-text-tertiary);padding:24px 12px!important}@media(max-width:768px){.usage-page{padding:0 12px 32px}.usage-totals{grid-template-columns:repeat(2,1fr)}.usage-table-wrap{overflow-x:auto}}
