.chat-input-box{position:relative;width:100%;border:2px solid var(--color-border);border-radius:var(--radius-input);background:var(--color-bg-main);display:flex;flex-direction:column;transition:background-color .3s ease,border-color .3s ease,box-shadow .2s ease}.chat-input-box:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-ring-focus-accent)}.chat-input-resize-handle{width:100%;height:8px;cursor:ns-resize;background:transparent;border-radius:var(--radius-card) var(--radius-card) 0 0;transition:background .15s ease}.chat-input-resize-handle:hover{background:var(--color-accent-light)}.chat-input-corner-handle{position:absolute;top:0;right:0;width:20px;height:20px;cursor:ns-resize;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:10px;-webkit-user-select:none;user-select:none;border-radius:0 var(--radius-card) 0 0;background:transparent;z-index:1}.chat-input-corner-handle:hover{color:var(--color-text-secondary);background:var(--color-bg-hover)}.chat-input-corner-handle:before{content:"⋮⋮";transform:rotate(90deg);letter-spacing:-2px}.chat-input-box textarea{width:100%;box-sizing:border-box;padding:.5rem .75rem;border:none;font-size:.95rem;font-family:var(--font-mono);resize:none;line-height:1.4;overflow-y:auto;background:transparent;color:var(--color-text-primary)}.chat-input-box textarea:focus:not(:disabled),.chat-input-box textarea:focus-visible:not(:disabled){outline:none;box-shadow:none}.chat-input-box textarea::placeholder{color:var(--color-placeholder)}.chat-input-box textarea:disabled{background:transparent;cursor:not-allowed}.chat-input-toolbar{display:flex;justify-content:space-between;align-items:center;padding:.25rem .5rem;background:var(--color-bg-main);border-radius:0 0 var(--radius-card) var(--radius-card)}.chat-input-toolbar-left{display:flex;align-items:center}.chat-input-toolbar-right{display:flex;align-items:center;gap:.5rem}.chat-input-hint{font-size:.7rem;color:var(--color-text-muted);white-space:nowrap}.chat-input-length-error{padding:.25rem .75rem;font-size:.8rem;color:var(--color-error);background:var(--color-bg-logout-hover);border-radius:0}.chat-input-char-count{font-size:.7rem;color:var(--color-text-muted);white-space:nowrap}.chat-input-char-count.over-limit{color:var(--color-error);font-weight:600}[data-theme=dark] .chat-input-char-count.over-limit{color:var(--color-error)}.chat-message-row{display:flex;animation:chatMessageSlideIn .3s ease-out}.chat-message-row.user{justify-content:flex-end}.chat-message-row.assistant{justify-content:flex-start}@keyframes chatMessageSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.chat-message-bubble{max-width:85%;padding:var(--chat-padding);border-radius:var(--radius-card);position:relative;font-family:var(--font-mono)}.chat-message-bubble p{margin:0;font-size:var(--chat-font-size);line-height:var(--chat-line-height)}.chat-message-bubble p+p{margin-top:var(--chat-paragraph-margin)}.chat-message-bubble pre,.chat-message-bubble code{font-family:var(--font-mono);white-space:pre}.chat-message-bubble.user{background:var(--chat-user-bg);color:var(--chat-user-text);border:1px solid var(--color-border);border-bottom-right-radius:4px;box-shadow:var(--shadow-sm)}.chat-message-bubble.user:after{content:"";position:absolute;right:-6px;top:10px;width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:6px solid var(--chat-user-bg)}.chat-message-bubble.assistant{max-width:100%;background:var(--chat-ai-bg);color:var(--chat-ai-text);border:1px solid var(--color-border);border-bottom-left-radius:4px;box-shadow:var(--shadow-sm)}.chat-message-bubble.assistant:before{content:"";position:absolute;left:-6px;top:10px;width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-right:6px solid var(--chat-ai-bg)}.chat-message-bubble.loading{background:var(--chat-ai-bg);overflow:hidden}.chat-message-bubble.loading:after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--color-accent);animation:loadingBorderGlow 2s ease-in-out infinite}@keyframes loadingBorderGlow{0%,to{opacity:.5}50%{opacity:1}}.chat-message-bubble .loading-dots{font-weight:600;color:var(--color-accent);animation:loadingTextPulse 2s ease-in-out infinite}@keyframes loadingTextPulse{0%,to{opacity:.8}50%{opacity:1}}.chat-message-bubble .loading-dots:after{content:"";color:var(--color-accent);animation:loadingDotsAnimation 1.5s infinite}@keyframes loadingDotsAnimation{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}to{content:""}}.chat-message-error{background:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:var(--radius-card);padding:8px 12px;color:var(--color-error);font-size:13px;font-family:var(--font-mono);margin:0 auto;max-width:85%}.markdown-content{font-size:var(--chat-font-size);line-height:var(--chat-line-height)}.markdown-content>*:first-child{margin-top:0}.markdown-content>*:last-child{margin-bottom:0}.markdown-content p{margin:.5em 0}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4{margin:1em 0 .5em;font-weight:600;line-height:1.3}.markdown-content h1{font-size:1.4em}.markdown-content h2{font-size:1.2em}.markdown-content h3{font-size:1.1em}.markdown-content h4{font-size:1em}.markdown-table-wrapper{overflow-x:auto;margin:1em 0}.markdown-table{border-collapse:collapse;width:auto;font-size:.9em}.markdown-content th,.markdown-content td{border:1px solid var(--color-border-md-table);padding:8px 16px}.markdown-content th{background-color:var(--color-bg-md-table-header);font-weight:600;text-align:center}.markdown-content tbody tr:nth-child(2n) td{background-color:var(--color-bg-md-table-even)}.markdown-content tbody tr:hover td{background-color:var(--color-bg-md-table-hover)}.markdown-code-block{background:var(--color-code-bg);color:var(--color-code-text);padding:12px 16px;border-radius:var(--radius-card);overflow-x:auto;margin:1em 0;font-family:var(--font-mono);font-size:.9em;line-height:1.5;display:flex;justify-content:center}.markdown-code-block code{background:transparent;padding:0;color:inherit;text-align:left}.markdown-code-error{border:1px solid var(--color-border-danger-strong);background:var(--color-bg-danger-subtle)}.markdown-inline-code{background:var(--color-inline-code-bg);color:var(--color-inline-code-text);padding:2px 6px;border-radius:var(--radius-card);font-family:var(--font-mono);font-size:.9em}.markdown-link{color:var(--color-link);text-decoration:underline;text-underline-offset:2px}.markdown-link:hover{color:var(--color-link-hover)}.markdown-content ul,.markdown-content ol{margin:.5em 0;padding-left:1.5em}.markdown-content li{margin:.25em 0}.markdown-content blockquote{border:1px solid var(--color-border);margin:1em 0;padding:.5em 1em;background:var(--color-bg-sub);border-radius:var(--radius-card)}.markdown-content del{text-decoration:line-through;opacity:.7}.markdown-content input[type=checkbox]{margin-right:.5em}.markdown-content hr{border:none;border-top:1px solid var(--color-border);margin:1.5em 0}.markdown-content strong{font-weight:600}.markdown-content em{font-style:italic}[data-theme=dark] .markdown-code-block{background:var(--color-bg-main);border:1px solid var(--color-border-strong)}[data-theme=dark] .markdown-inline-code{background:var(--color-border-strong);color:var(--color-text-primary)}[data-theme=dark] .markdown-content blockquote{background:var(--color-bg-input)}[data-theme=dark] .markdown-link,[data-theme=dark] .markdown-link:hover{color:var(--color-link)}.chart-placeholder{display:flex;align-items:center;justify-content:center;min-height:120px;padding:16px;margin:1em 0;background:var(--color-bg-sub);border:1px dashed var(--color-border);border-radius:var(--radius-card);color:var(--color-text-muted);font-size:.9em}.chart-placeholder span{animation:chartPlaceholderPulse 1.5s ease-in-out infinite}@keyframes chartPlaceholderPulse{0%,to{opacity:.6}50%{opacity:1}}[data-theme=dark] .chart-placeholder{background:var(--color-bg-input);border-color:var(--color-border-subtle);color:var(--color-text-muted)}.accordion-section{margin:1em 0 .5em}.accordion-summary{all:unset;display:flex;align-items:center;gap:8px;width:100%;box-sizing:border-box;cursor:pointer;padding:6px 4px;border-radius:var(--radius-card)}.accordion-summary:hover{background:var(--color-bg-hover)}.accordion-summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.accordion-heading-text{font-size:1.2em;font-weight:600;line-height:1.3}.accordion-arrow{display:inline-block;width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:8px solid var(--color-text-secondary);transition:transform .2s ease;flex-shrink:0}.accordion-summary[aria-expanded=true] .accordion-arrow{transform:rotate(90deg)}.accordion-body-wrapper{display:grid;grid-template-rows:1fr;overflow:hidden;transition:grid-template-rows .3s cubic-bezier(.33,1,.68,1)}.accordion-summary[aria-expanded=false]+.accordion-body-wrapper{grid-template-rows:0fr}.accordion-body-inner{min-height:0;overflow:hidden}.dynamic-chart{background:var(--color-bg-sub);border-radius:var(--radius-card);padding:12px;margin:12px 0;border:1px solid var(--color-border)}.dynamic-chart-error{background:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:var(--radius-card);padding:12px;margin:12px 0;color:var(--color-error);font-size:13px;text-align:center}.clarify-chat-approve-container{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 24px 16px}.clarify-chat-approve-button{gap:8px}.approve-icon{font-size:16px;font-weight:700}.approve-hint{font-size:12px;opacity:.8;margin-left:4px}.clarify-chat-continue-button{background:none;border:none;font-size:16px;color:var(--color-text-continue-link);padding:12px 16px;min-height:44px;border-radius:var(--radius-button);cursor:pointer;text-decoration:underline;text-underline-offset:3px}.clarify-chat-continue-button:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}:root[data-theme=dark] .clarify-chat-approve-container{background:linear-gradient(to bottom,transparent 0%,var(--color-bg-main) 20%)}.clarify-chat-fullscreen{width:100%;max-width:var(--content-main-width);margin:0 auto;padding-bottom:100px;position:relative}.clarify-chat-messages-full{display:flex;flex-direction:column;gap:1.5rem;padding:1rem 0}.clarify-chat-input-fixed{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;align-items:flex-end;padding:1rem 2rem;background:var(--color-bg-input-floating);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--color-border);z-index:var(--z-float)}.clarify-chat-input-fixed .chat-input-box{width:100%;max-width:var(--content-main-width)}.clarify-chat-input-inner{display:flex;flex-direction:column;width:100%;max-width:var(--content-main-width)}.clarify-chat-resume-search-container{display:flex;justify-content:center;margin-bottom:4px}[data-theme=dark] .clarify-chat-input-fixed{background:var(--color-bg-input-floating);border-top-color:var(--color-border)}.removed-papers-container{margin-bottom:12px;border:1px solid var(--color-border);border-radius:var(--radius-card);overflow:hidden;background:var(--color-removed-bg)}.removed-papers-header{display:flex;align-items:center;width:100%;padding:10px 12px;background:transparent;border:none;cursor:pointer;text-align:left;font-size:13px;color:var(--color-removed-text);transition:background .15s}.removed-papers-header:hover{background:var(--color-bg-list-hover-subtle)}.removed-papers-icon{margin-right:8px;font-size:14px}.removed-papers-title{flex:1;font-weight:500}.removed-papers-chevron{font-size:10px;transition:transform .2s;color:var(--color-removed-text)}.removed-papers-chevron.expanded{transform:rotate(180deg)}.removed-papers-list{border-top:1px solid var(--color-border);overflow:hidden}.removed-paper-item{display:flex;align-items:center;padding:10px 12px;border-bottom:1px solid var(--color-bg-hover);gap:12px}.removed-paper-item:last-child{border-bottom:none}.removed-paper-number{flex-shrink:0;width:44px;padding:3px 6px;background:var(--color-removed-number-bg);color:#fff;border-radius:4px;font-size:11px;font-weight:600;text-align:center}.removed-paper-info{flex:1;min-width:0}.removed-paper-title{display:block;font-size:13px;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.removed-paper-meta{display:block;font-size:11px;color:var(--color-text-muted);margin-top:2px}[data-theme=dark] .removed-papers-container{background:var(--color-removed-bg);border-color:var(--color-removed-border)}[data-theme=dark] .removed-papers-header,[data-theme=dark] .removed-papers-chevron{color:var(--color-removed-text)}[data-theme=dark] .removed-papers-list{border-top-color:var(--color-removed-border)}[data-theme=dark] .removed-paper-item{border-bottom-color:var(--color-removed-border)}[data-theme=dark] .removed-paper-title{color:var(--color-text-primary)}[data-theme=dark] .removed-paper-meta{color:var(--color-text-muted)}[data-theme=dark] .removed-paper-number{background:var(--color-removed-number-bg);color:var(--color-removed-number-text)}.tool-confirmation{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-sub);margin:.5rem 0;max-width:100%}.tool-confirmation-header{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--color-text-primary);font-weight:500}.tool-confirmation-icon{width:1.25rem;height:1.25rem;flex-shrink:0}.tool-confirmation-description{font-size:.8125rem;color:var(--color-text-secondary);line-height:1.4}.tool-confirmation-description ol,.tool-confirmation-description ul{padding-left:1.25rem;margin:.25rem 0}.tool-confirmation-description p{margin:.25rem 0}.tool-confirmation-actions{display:flex;gap:.5rem}.tool-confirmation-executing{font-size:.8125rem;color:var(--color-text-secondary);display:flex;align-items:center;gap:.5rem}.tool-notification{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .75rem;border-radius:var(--radius-card);font-size:.75rem;font-weight:500;margin:.25rem 0;width:fit-content}.tool-notification-icon{width:.875rem;height:.875rem;flex-shrink:0}.tool-notification--approved{background:var(--color-status-success-bg);color:var(--color-status-success-text)}.tool-notification--cancelled{background:var(--color-status-error-bg);color:var(--color-status-error-text)}.panel-resize-handle{position:absolute;top:0;bottom:0;width:6px;cursor:ew-resize;background:transparent;transition:background .15s ease .3s;z-index:var(--z-local)}.panel-resize-handle.left{right:0}.panel-resize-handle.right{left:0}.panel-resize-handle:hover{background:var(--color-accent)}.panel-resizing .panel-resize-handle{background:var(--color-accent);transition-delay:0s}@media(max-width:63.99em){.panel-resize-handle{display:none}}.ai-assistant-button-container{position:fixed;bottom:40px;right:60px;z-index:var(--z-dropdown)}.ai-assistant-button-tooltip{position:absolute;bottom:calc(100% + 12px);right:0;background:var(--color-ai-help-tooltip-bg);color:#fff;padding:8px 12px;border-radius:var(--radius-button);font-size:14px;white-space:nowrap;opacity:0;visibility:hidden;transform:translateY(8px);transition:all .3s ease;pointer-events:none;box-shadow:0 4px 12px var(--color-shadow-soft)}.ai-assistant-button-tooltip.visible{opacity:1;visibility:visible;transform:translateY(0);transition-delay:.45s}.ai-assistant-button-tooltip:after{content:"";position:absolute;bottom:-6px;right:20px;width:12px;height:12px;background:var(--color-ai-help-tooltip-bg);transform:rotate(45deg)}.ai-assistant-button{width:56px;height:56px;border-radius:50%;border:none;background:var(--gradient-ai-button);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:12px;box-shadow:0 4px 15px var(--color-shadow-button-blue-active-hover),0 0 20px var(--color-shadow-button-blue-subtle);transition:all .5s ease-out;will-change:transform;--ai-assistant-circle-color-1: var(--color-ai-circle-1);--ai-assistant-circle-color-2: var(--color-ai-circle-2);--ai-assistant-circle-color-3: var(--color-ai-circle-3)}.ai-assistant-button:hover,.ai-assistant-button.hovered{transform:scale(1.05);box-shadow:0 6px 25px var(--color-shadow-button-blue-05),0 0 40px var(--color-shadow-accent-40)}.ai-assistant-button:active{transform:scale(.98)}.ai-assistant-button-icon{width:100%;height:100%;filter:drop-shadow(0 0 4px var(--color-white-alpha-03));transition:transform .5s ease-out}.ai-assistant-button.hovered .ai-assistant-button-icon{animation:ai-assistant-icon-rotate 1.5s cubic-bezier(.4,0,.6,1) infinite}@keyframes ai-assistant-icon-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ai-assistant-button .loop{transform-origin:50px 50px}.ai-assistant-button .loop-1{transform:rotate(0)}.ai-assistant-button .loop-2{transform:rotate(60deg)}.ai-assistant-button .loop-3{transform:rotate(120deg)}.ai-assistant-button .infinity-circle{fill:none;stroke:var(--color-white-alpha-09);stroke-width:2.5;stroke-linecap:round}.ai-assistant-button .circle-right{animation:ai-assistant-circle-color-pulse 2.5s ease-in-out infinite,ai-assistant-radial-move-right 2.5s ease-in-out infinite}.ai-assistant-button .circle-left{animation:ai-assistant-circle-color-pulse 2.5s ease-in-out infinite,ai-assistant-radial-move-left 2.5s ease-in-out infinite}.ai-assistant-button .loop-1 .circle-left{animation-delay:0s,0s}.ai-assistant-button .loop-1 .circle-right{animation-delay:.4s,0s}.ai-assistant-button .loop-2 .circle-left{animation-delay:.8s,0s}.ai-assistant-button .loop-2 .circle-right{animation-delay:1.2s,0s}.ai-assistant-button .loop-3 .circle-left{animation-delay:1.6s,0s}.ai-assistant-button .loop-3 .circle-right{animation-delay:2s,0s}@keyframes ai-assistant-circle-color-pulse{0%,to{r:15;opacity:.8;stroke:var(--ai-assistant-circle-color-1)}25%{stroke:var(--ai-assistant-circle-color-2)}50%{r:17;opacity:1;stroke:var(--ai-assistant-circle-color-3)}75%{stroke:var(--ai-assistant-circle-color-2)}}@keyframes ai-assistant-radial-move-right{0%,to{cx:82}50%{cx:70}}@keyframes ai-assistant-radial-move-left{0%,to{cx:18}50%{cx:30}}.ai-assistant-button.hovered .infinity-circle{animation:ai-assistant-circle-pulse 2s ease-in-out infinite}@keyframes ai-assistant-circle-pulse{0%,to{stroke:var(--color-white-alpha-07);stroke-width:2}50%{stroke:#fff;stroke-width:3}}.ai-assistant-button.hovered .loop-1 .circle-left{animation-delay:0s}.ai-assistant-button.hovered .loop-1 .circle-right{animation-delay:.3s}.ai-assistant-button.hovered .loop-2 .circle-left{animation-delay:.6s}.ai-assistant-button.hovered .loop-2 .circle-right{animation-delay:.9s}.ai-assistant-button.hovered .loop-3 .circle-left{animation-delay:1.2s}.ai-assistant-button.hovered .loop-3 .circle-right{animation-delay:1.5s}@media(max-width:47.99em){.ai-assistant-button-container{bottom:16px;right:16px}.ai-assistant-button{width:48px;height:48px;padding:10px}.ai-assistant-button-tooltip{font-size:12px;padding:6px 10px}}[data-theme=light] .ai-assistant-button{background:var(--gradient-ai-button-light)}[data-theme=light] .ai-assistant-button-icon{filter:drop-shadow(0 0 5px var(--color-white-alpha-04))}.animated-paper-wrapper{position:relative;display:flex;flex-direction:column}.paper-remove-button{position:absolute;top:0;right:0;z-index:var(--z-local);width:28px;height:28px;padding:0;border:none;background:transparent;color:transparent;font-size:12px;font-weight:700;cursor:pointer;opacity:0;transition:opacity .15s;border-radius:0 var(--radius-button) 0 0;overflow:hidden}.paper-remove-button:before{content:"";position:absolute;top:0;right:0;width:28px;height:28px;background:var(--color-shadow-soft);clip-path:polygon(100% 0,0 0,100% 100%);border-radius:0 var(--radius-button) 0 0;transition:background .15s}.paper-remove-button:after{content:"×";position:absolute;top:0;right:3px;font-size:12px;font-weight:700;color:var(--color-text-tertiary);transition:color .15s}.animated-paper-wrapper:hover .paper-remove-button{opacity:1}.paper-remove-button:hover:before{background:var(--color-bg-danger-emphasis)}.paper-remove-button:hover:after{color:#fff}.paper-remove-button:focus{opacity:1;outline:none}.paper-remove-button:focus:before{background:var(--color-bg-accent-emphasis)}.paper-remove-button:focus:after{color:#fff}[data-theme=dark] .paper-remove-button:before{background:var(--color-overlay-white-015)}[data-theme=dark] .paper-remove-button:after{color:var(--color-text-muted)}[data-theme=dark] .paper-remove-button:hover:before{background:var(--color-bg-danger-emphasis)}[data-theme=dark] .paper-remove-button:hover:after{color:var(--color-text-on-accent)}.changelog-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;color:var(--color-text-secondary)}.changelog-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:changelog-spin 1s linear infinite;margin-bottom:1rem}@keyframes changelog-spin{to{transform:rotate(360deg)}}.changelog-error{text-align:center;padding:2rem;background:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:var(--radius-card);color:var(--color-error)}.changelog-error button{margin-top:1rem;padding:.5rem 1rem;background:var(--color-error);color:var(--color-text-on-accent);border:none;border-radius:var(--radius-button);cursor:pointer}.changelog-error button:hover{background:var(--color-error-strong)}.changelog-markdown{background:var(--color-bg-card);padding:2rem;border-radius:var(--radius-card);box-shadow:var(--shadow-md)}.changelog-markdown h1{font-size:1.75rem;font-weight:700;color:var(--color-text-primary);margin:0 0 1.5rem;padding-bottom:.75rem;border-bottom:2px solid var(--color-border)}.changelog-markdown h2{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin:2rem 0 1rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border)}.changelog-markdown h3{font-size:1.1rem;font-weight:600;color:var(--color-text-primary);margin:1.5rem 0 .75rem}.changelog-markdown p{color:var(--color-text-primary);line-height:1.7;margin:.75rem 0}.changelog-markdown ul{margin:.75rem 0;padding-left:1.5rem}.changelog-markdown li{color:var(--color-text-primary);line-height:1.7;margin:.5rem 0}.changelog-markdown strong{color:var(--color-text-primary);font-weight:600}.changelog-markdown hr{border:none;border-top:1px solid var(--color-border);margin:2rem 0}.changelog-markdown code{background:var(--color-bg-hover);padding:.2rem .4rem;border-radius:var(--radius-card);font-size:.9em;color:var(--color-error)}.changelog-markdown pre{background:var(--color-text-primary);color:var(--color-bg-main);padding:1rem;border-radius:var(--radius-card);overflow-x:auto}.changelog-markdown pre code{background:none;color:inherit;padding:0}.undo-toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%);z-index:var(--z-modal-overlay);background:var(--color-bg-undo-toast);color:#fff;border-radius:var(--radius-card);box-shadow:0 4px 12px var(--color-shadow-toast);overflow:hidden;min-width:300px;max-width:500px}.undo-toast-content{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;gap:16px}.undo-toast-message{font-size:14px;line-height:1.4;flex:1}.undo-toast-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.undo-toast-button{background:transparent;border:none;color:var(--color-accent-undo-toast);font-size:14px;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:var(--radius-button);transition:background .15s}.undo-toast-button:hover{background:var(--color-bg-undo-toast-hover)}.undo-toast-button:active{background:var(--color-bg-undo-toast-active)}.undo-toast-close{background:transparent;border:none;color:var(--color-text-undo-toast-muted);font-size:18px;cursor:pointer;padding:4px 8px;border-radius:var(--radius-card);line-height:1;transition:color .15s}.undo-toast-close:hover{color:#fff}.undo-toast-progress{height:3px;background:var(--color-accent-undo-toast);transform-origin:left}[data-theme=dark] .undo-toast{background:var(--color-bg-elevated)}body.conversation-pane-open .undo-toast{left:calc((100% - var(--pane-initial-width)) / 2)}.dev-error-toast-container{position:fixed;top:16px;right:16px;z-index:var(--z-modal-overlay);display:flex;flex-direction:column;gap:8px;pointer-events:none}.dev-error-toast{pointer-events:auto;background:var(--toast-network-bg);border:1px solid var(--color-dev-error-border);border-left:4px solid var(--color-error-strong);border-radius:var(--radius-card);box-shadow:0 4px 12px var(--color-shadow-soft);max-width:400px;overflow:hidden}.dev-error-toast-content{display:flex;align-items:flex-start;gap:10px;padding:12px 14px}.dev-error-toast-icon{flex-shrink:0;font-size:16px}.dev-error-toast-message{flex:1;font-size:13px;line-height:1.5;color:var(--color-dev-error-text);word-break:break-word}.dev-error-toast-close{flex-shrink:0;background:none;border:none;color:var(--color-text-muted);font-size:18px;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-card);transition:background-color .15s,color .15s}.dev-error-toast-close:hover{background:var(--color-error-bg);color:var(--color-error)}.onboarding-overlay{position:fixed;inset:0;background:var(--color-overlay-dark-60);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-overlay);animation:onboarding-fade-in .3s ease}@keyframes onboarding-fade-in{0%{opacity:0}to{opacity:1}}.onboarding-popup{background:#fff;border-radius:var(--radius-modal);box-shadow:0 20px 60px var(--color-shadow-button);max-width:520px;width:90%;max-height:90vh;overflow-y:auto;position:relative;animation:onboarding-slide-up .3s ease}@keyframes onboarding-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.onboarding-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:24px;color:var(--color-text-muted);cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.onboarding-close:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.onboarding-header{text-align:center;padding:32px 32px 24px;border-bottom:1px solid var(--color-border)}.onboarding-header h2{margin:0 0 8px;font-size:1.75rem;font-weight:700;color:var(--color-text-primary)}.onboarding-subtitle{margin:0;color:var(--color-text-secondary);font-size:.95rem}.onboarding-content{padding:24px 32px}.onboarding-section{margin-bottom:24px}.onboarding-section:last-child{margin-bottom:0}.onboarding-section h3{margin:0 0 16px;font-size:1.1rem;font-weight:600;color:var(--color-text-primary);display:flex;align-items:center;gap:8px}.onboarding-section h3:before{content:"";display:inline-block;width:4px;height:20px;background:var(--color-accent);border-radius:var(--radius-card)}.onboarding-score-example{display:flex;align-items:center;gap:16px;background:var(--color-bg-sub);padding:16px;border-radius:var(--radius-card);margin-bottom:16px}.score-badge-example{width:48px;height:48px;background:var(--color-badge-success);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.score-number{color:#fff;font-size:1.5rem;font-weight:700}.score-explanation p{margin:0;color:var(--color-text-primary);font-weight:500}.onboarding-list{margin:0;padding:0;list-style:none}.onboarding-list li{position:relative;padding-left:24px;margin-bottom:10px;color:var(--color-text-secondary);line-height:1.6}.onboarding-list li:last-child{margin-bottom:0}.onboarding-list li:before{content:"•";position:absolute;left:8px;color:var(--color-accent);font-weight:700}.onboarding-list li strong{color:var(--color-text-primary)}.features-list li{display:flex;align-items:flex-start;gap:12px;padding-left:0}.features-list li:before{display:none}.feature-icon{font-size:1.25rem;flex-shrink:0}.onboarding-footer{padding:20px 32px 28px;border-top:1px solid var(--color-border);display:flex;flex-direction:column;align-items:center;gap:16px}.onboarding-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--color-text-secondary);font-size:.9rem}.onboarding-checkbox input{width:16px;height:16px;cursor:pointer}[data-theme=dark] .onboarding-popup{background:var(--color-bg-card)}[data-theme=dark] .onboarding-header{border-bottom-color:var(--color-border)}[data-theme=dark] .onboarding-header h2{color:var(--color-text-primary)}[data-theme=dark] .onboarding-subtitle,[data-theme=dark] .onboarding-close{color:var(--color-text-muted)}[data-theme=dark] .onboarding-close:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}[data-theme=dark] .onboarding-section h3{color:var(--color-text-primary)}[data-theme=dark] .onboarding-score-example{background:var(--color-bg-hover)}[data-theme=dark] .score-explanation p{color:var(--color-text-primary)}[data-theme=dark] .onboarding-list li{color:var(--color-text-muted)}[data-theme=dark] .onboarding-list li strong{color:var(--color-text-primary)}[data-theme=dark] .onboarding-footer{border-top-color:var(--color-border)}[data-theme=dark] .onboarding-checkbox{color:var(--color-text-muted)}@media(max-width:40em){.onboarding-popup{max-width:95%;margin:16px}.onboarding-header{padding:24px 20px 20px}.onboarding-header h2{font-size:1.5rem}.onboarding-content{padding:20px}.onboarding-footer{padding:16px 20px 24px}.onboarding-start-button{width:100%}}.login-page{--login-content-max-width: 600px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:40px 20px;background:var(--color-bg-main)}.login-container{max-width:var(--login-content-max-width);width:100%;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:40px 32px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.login-title{font-size:1.5rem;font-weight:600;color:var(--color-text-primary);text-align:center;margin-bottom:24px}.free-credits-banner{max-width:var(--login-content-max-width);width:100%;background:var(--color-bg-banner-highlight);border:1px solid var(--color-banner-highlight-border);border-radius:var(--radius-card);padding:12px 16px;text-align:center;color:var(--color-accent);font-size:.9rem}.free-credits-banner strong{color:var(--color-accent-hover)}:root[data-theme=dark] .free-credits-banner{background:var(--color-bg-hover);border:1px solid var(--color-accent)}.login-error{background:var(--color-input-error-bg);border:1px solid var(--color-status-error-border);border-radius:var(--radius-card);padding:12px 16px;color:var(--color-error-strong);font-size:.9rem;margin-bottom:20px;text-align:center}.turnstile-field{width:100%;display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:16px}.in-app-browser-banner{display:flex;align-items:flex-start;gap:8px;background:var(--color-warning-bg);border:1px solid var(--color-warning);border-radius:var(--radius-card);padding:12px 16px;margin-bottom:20px}.in-app-browser-banner-content{flex:1}.in-app-browser-app-name{font-size:.85rem;font-weight:600;color:var(--color-warning);margin-bottom:4px}.in-app-browser-message{font-size:.85rem;color:var(--color-text-secondary);line-height:1.5}.in-app-browser-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:none;border-radius:var(--radius-card);cursor:pointer;color:var(--color-text-muted);transition:color .15s ease}.in-app-browser-close:hover{color:var(--color-text-secondary)}.google-login-button{width:100%;display:flex;align-items:center;justify-content:center;gap:12px;padding:14px 20px;background:var(--color-bg-card);color:var(--color-text-primary);border:1.5px solid var(--color-text-tertiary);border-radius:var(--radius-button);font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.google-login-button:hover:not(:disabled){background:var(--color-bg-hover);box-shadow:0 2px 8px var(--color-shadow-soft)}.google-login-button:disabled{opacity:.6;cursor:not-allowed}.login-divider{display:flex;align-items:center;margin:24px 0;color:var(--color-text-muted);font-size:.85rem}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.login-divider span{padding:0 16px}.login-form{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:.85rem;color:var(--color-text-secondary)}.form-group input{padding:12px 16px;background:var(--color-bg-sub);border:1px solid var(--color-border);border-radius:var(--radius-input);color:var(--color-text-primary);font-size:1rem;transition:all .2s}.form-group input::placeholder{color:var(--color-placeholder)}.form-group input:focus{outline:none;border-color:var(--color-accent);background:var(--color-bg-hover)}.form-group input:disabled{opacity:.6;cursor:not-allowed}.password-hint{font-size:.8rem;color:var(--color-text-muted);margin-top:4px}.marketing-opt-in-label{display:flex;align-items:flex-start;gap:8px;cursor:pointer}.marketing-opt-in input[type=checkbox]{padding:0;border:none;background:none;width:16px;height:16px;flex-shrink:0;margin-top:3px;accent-color:var(--color-accent);cursor:pointer}.marketing-opt-in-note{font-size:.8rem;color:var(--color-text-muted);margin:4px 0 0;line-height:1.6}.password-input-wrapper.input-error input{border-color:var(--color-error-strong);background:var(--color-input-error-bg)}.password-input-wrapper.input-error input:focus{border-color:var(--color-error-strong);box-shadow:0 0 0 2px var(--color-input-error-focus-ring)}.field-error{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--color-error-strong);margin-top:6px}.field-error svg{flex-shrink:0}.login-submit-button{width:100%;margin-top:8px}.mode-switch{text-align:center;color:var(--color-text-secondary);font-size:.9rem;margin-top:20px}.link-button{background:none;border:none;color:var(--color-accent);font-size:.9rem;cursor:pointer;text-decoration:underline;padding:0}.link-button:hover{color:var(--color-accent-hover)}.invite-code-toggle{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:var(--color-text-secondary);font-size:.85rem;cursor:pointer;padding:0}.invite-code-toggle:before{content:"▸";font-size:1.1rem;line-height:1;transition:transform .15s ease}.invite-code-toggle[aria-expanded=true]:before{transform:rotate(90deg)}.invite-code-toggle:hover{color:var(--color-text-primary)}.invite-code-content{display:flex;flex-direction:column;gap:6px;padding-left:18px}.beta-verified-banner{background-color:var(--color-bg-card);border:1px solid var(--color-link);color:var(--color-text-primary);padding:12px 16px;border-radius:var(--radius-card);text-align:center;font-size:.9rem;max-width:400px;width:100%}.free-credits-note{text-align:center;color:var(--color-text-muted);font-size:.85rem;margin-top:16px}.verification-sent-message{color:var(--color-text-secondary);font-size:.95rem;line-height:1.7;margin-bottom:16px;text-align:center}.verification-sent-message strong{color:var(--color-text-primary)}.verification-sent-note{color:var(--color-text-muted);font-size:.85rem;margin-bottom:24px;text-align:center}.verification-sent-actions{display:flex;flex-direction:column;align-items:center;gap:12px}.verification-resend-message{font-size:.85rem;text-align:center}.resend-success{color:var(--color-status-success-text)}.resend-error{color:var(--color-error-strong)}.forgot-password-description{color:var(--color-text-secondary);font-size:.95rem;line-height:1.7;margin-bottom:20px;text-align:center}.forgot-password-link{text-align:center;margin-top:12px}.login-success{background:var(--color-input-success-bg);border-color:var(--color-status-success-border);color:var(--color-status-success-text)}.session-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--color-overlay-dark-60);display:flex;align-items:center;justify-content:center;z-index:var(--z-dropdown);padding:20px}.session-modal{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-modal);padding:32px;max-width:500px;width:100%;max-height:80vh;overflow-y:auto}.session-modal-title{font-size:1.2rem;font-weight:600;color:var(--color-text-primary);margin-bottom:12px}.session-modal-description{font-size:.9rem;color:var(--color-text-secondary);margin-bottom:20px;line-height:1.5}.session-list{display:flex;flex-direction:column;gap:8px;margin-bottom:24px}.session-item{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:var(--color-bg-sub);border:2px solid transparent;border-radius:var(--radius-card);cursor:pointer;transition:all .15s}.session-item:hover{background:var(--color-bg-hover)}.session-item.selected{border-color:var(--color-accent);background:var(--color-bg-selected-light)}.session-item input[type=radio]{margin-top:4px;accent-color:var(--color-accent)}.session-item-info{display:flex;flex-direction:column;gap:4px;min-width:0}.session-device-name{font-size:.95rem;font-weight:500;color:var(--color-text-primary)}.session-meta{font-size:.8rem;color:var(--color-text-muted)}.session-modal-actions{display:flex;flex-direction:column;gap:12px}.session-revoke-button,.session-cancel-button{width:100%}.session-upgrade-link{text-align:center;color:var(--color-accent);font-size:.85rem;text-decoration:none}.session-upgrade-link:hover{text-decoration:underline}@media(max-width:29.99em){.login-container{padding:32px 24px}.login-title{font-size:1.3rem}.google-login-button{padding:12px 16px;font-size:.95rem}.session-modal{padding:24px;margin:16px}}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{width:100%;padding-right:48px}.password-toggle-button{position:absolute;right:12px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:var(--radius-button);cursor:pointer;color:var(--color-text-muted);transition:color .15s ease,background .15s ease}.password-toggle-button:hover{color:var(--color-text-secondary);background:var(--color-bg-hover)}.password-toggle-button:focus{outline:none}.password-toggle-button svg{flex-shrink:0}.password-strength-indicator{display:flex;align-items:center;gap:12px;margin-top:8px}.strength-bar-container{flex:1;height:4px;background:var(--color-border-light);border-radius:var(--radius-card);overflow:hidden}.strength-bar{height:100%;border-radius:var(--radius-card);transition:width .3s ease,background-color .3s ease}.strength-label{font-size:.75rem;font-weight:500;min-width:80px;text-align:right}.strength-very-weak{background-color:var(--color-strength-very-weak)}.strength-label.strength-very-weak{color:var(--color-strength-very-weak);background-color:transparent}.strength-weak{background-color:var(--color-strength-weak)}.strength-label.strength-weak{color:var(--color-strength-weak);background-color:transparent}.strength-fair{background-color:var(--color-strength-fair)}.strength-label.strength-fair{color:var(--color-strength-fair);background-color:transparent}.strength-strong{background-color:var(--color-strength-strong)}.strength-label.strength-strong{color:var(--color-strength-strong);background-color:transparent}.strength-very-strong{background-color:var(--color-strength-very-strong)}.strength-label.strength-very-strong{color:var(--color-strength-very-strong);background-color:transparent}.checkout-page{display:flex;align-items:flex-start;justify-content:center;padding:40px 20px;background:var(--color-bg-main)}.checkout-loading{display:flex;align-items:center;justify-content:center;min-height:400px;color:var(--color-text-secondary);font-size:1rem}.checkout-container{max-width:1000px;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:40px}.checkout-summary{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:32px}.summary-title{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin-bottom:24px}.plan-card{background:var(--color-bg-sub);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:24px;margin-bottom:24px}.plan-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.plan-name{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin:0}.recommended-badge{background:var(--color-button-primary);color:var(--color-text-on-accent);font-size:.75rem;font-weight:600;padding:4px 10px;border-radius:12px}.plan-price{display:flex;align-items:baseline;gap:4px;margin-bottom:8px}.price-amount{font-size:2rem;font-weight:700;color:var(--color-text-primary)}.price-period{font-size:1rem;color:var(--color-text-secondary)}.yearly-billing-note{color:var(--color-text-secondary);font-size:.85rem;margin-bottom:4px}.yearly-savings{color:var(--color-status-success-text);font-size:.85rem;margin-bottom:16px}.plan-credits{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--color-bg-selected-light);border:1px solid var(--color-border-accent-light);border-radius:var(--radius-card);color:var(--color-accent);font-size:.95rem;margin-bottom:20px}.credits-icon{font-size:1.2rem}.plan-features{list-style:none;padding:0;margin:0}.plan-features li{display:flex;align-items:center;gap:10px;padding:8px 0;color:var(--color-text-primary);font-size:.9rem;border-bottom:1px solid var(--color-border-light)}.plan-features li:last-child{border-bottom:none}.feature-check{color:var(--color-status-success-text);font-weight:600}.summary-notes{background:var(--color-bg-sub);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:16px;margin-bottom:20px}.summary-notes p{color:var(--color-text-primary);font-size:.9rem;margin:0 0 12px}.summary-notes ul{list-style:none;padding:0;margin:0}.summary-notes li{color:var(--color-text-secondary);font-size:.85rem;padding:4px 0 4px 16px;position:relative}.summary-notes li:before{content:"•";position:absolute;left:0;color:var(--color-text-muted)}.change-plan-button{width:100%}.checkout-form-container{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:32px}.form-title{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin-bottom:24px}.checkout-error{background:var(--color-bg-danger-subtle);border:1px solid var(--color-status-error-border);border-radius:var(--radius-card);padding:12px 16px;color:var(--color-error-strong);font-size:.9rem;margin-bottom:20px;text-align:center}.stripe-checkout-wrapper{min-height:400px}.secure-note{text-align:center;color:var(--color-text-muted);font-size:.85rem;margin-top:20px}.checkout-error-wrapper{padding:40px 20px;text-align:center;color:var(--color-text-muted)}.checkout-error-message{margin-bottom:16px;color:var(--color-error);font-size:15px}[data-theme=dark] .checkout-form-container{background:var(--color-bg-input);border-color:var(--color-border-strong)}[data-theme=dark] .form-title{color:var(--color-text-primary)}[data-theme=dark] .secure-note{color:var(--color-text-secondary)}@media(max-width:56.25em){.checkout-container{grid-template-columns:1fr;gap:24px}.checkout-summary{order:2}.checkout-form-container{order:1}}@media(max-width:29.99em){.checkout-page{padding:20px 12px}.checkout-summary,.checkout-form-container{padding:24px 20px}.summary-title,.form-title,.plan-name{font-size:1.1rem}.price-amount{font-size:1.75rem}}.pricing-page{padding-top:80px}
