@font-face{font-family:Nunito;src:local("Nunito"),url(/fonts/nunito/Nunito-Variable.woff2) format("woff2");font-weight:200 1000;font-style:normal;font-display:swap}@font-face{font-family:Nunito;src:local("Nunito Italic"),url(/fonts/nunito/Nunito-Italic-Variable.woff2) format("woff2");font-weight:200 1000;font-style:italic;font-display:swap}:root{color-scheme:light;--primary-color: rgba(29, 29, 29, .9);--primary-color-rgb: 29, 29, 29;--primary-light: rgba(66, 66, 66, .9);--accent-color: rgba(238, 99, 82, .9);--accent-color-rgb: 238, 99, 82;--accent-hover: rgba(214, 89, 74, .9);--accent-light: rgba(241, 130, 117, .9);--accent-soft: rgba(238, 99, 82, .05);--text-glow-accent-soft: 0 0 5px rgba(var(--accent-color-rgb), .1), 0 0 1px rgba(var(--accent-color-rgb), .06);--background-color: rgba(255, 255, 255, .9);--background-color-rgb: 255, 255, 255;--background-secondary: rgba(249, 249, 249, .9);--background-secondary-rgb: 249, 249, 249;--background-tertiary: rgba(244, 244, 244, .9);--background-hover: rgba(231, 231, 231, .9);--background-hover-dark: rgba(216, 216, 216, .9);--background-hover-dark-rgb: 216, 216, 216;--border-color: rgba(200, 200, 200, .2);--overlay-background: rgba(0, 0, 0, .25);--error-color: rgba(220, 53, 69, .9);--error-color-rgb: 220, 53, 69;--error-hover: rgba(200, 35, 51, .9);--success-color: rgba(40, 167, 69, .9);--success-color-rgb: 40, 167, 69;--warning-color: rgba(255, 193, 7, .9);--warning-hover-rgb: 224, 168, 0;--text-primary: rgb(5, 5, 10);--text-secondary: rgb(35, 35, 40);--text-tertiary: rgb(65, 65, 70);--text-white: rgb(255, 255, 255);--text-disabled: rgb(160, 160, 165);--font-family: "Nunito", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, Arial, sans-serif;--font-size-2xs: .6875rem;--font-size-xs: .8125rem;--font-size-sm: .875rem;--font-size-md: .9375rem;--font-size-lg: 1rem;--font-size-2xl: 1.125rem;--font-size-3xl: 1.25rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.2;--line-height-normal: 1.3;--line-height-relaxed: 1.4;--letter-spacing-sm: -.015em;--spacing-4xs: .125rem;--spacing-3xs: .1875rem;--spacing-2xs: .25rem;--spacing-xs: .375rem;--spacing-sm: .5rem;--spacing-md: .75rem;--spacing-lg: 1rem;--spacing-xl: 1.5rem;--spacing-2xl: 2rem;--spacing-3xl: 3rem;--border-radius-sm: .25rem;--border-radius-md: .5rem;--border-radius-lg: .75rem;--border-radius-xl: 1rem;--border-radius-2xl: 1.25rem;--border-radius-full: 999px;--border-width: .08rem;--shadow-sm: 0 2px 8px rgba(0,0,0,.03), 0 4px 16px rgba(0,0,0,.02), 0 0 2px rgba(255,255,255,.25), inset 0 1px 0 rgba(255,255,255,.1);--shadow-md: 0 4px 12px rgba(0,0,0,.04), 0 8px 24px rgba(0,0,0,.03), 0 16px 48px rgba(0,0,0,.02), 0 0 3px rgba(255,255,255,.3), inset 0 1px 0 rgba(255,255,255,.15);--shadow-lg: 0 8px 20px rgba(0,0,0,.05), 0 16px 40px rgba(0,0,0,.04), 0 32px 80px rgba(0,0,0,.03), 0 0 4px rgba(255,255,255,.4), inset 0 1px 1px rgba(255,255,255,.18);--shadow-modal: 0 0 0 1px rgba(0,0,0,.04), 0 4px 16px rgba(0,0,0,.1), 0 20px 56px rgba(0,0,0,.16), 0 56px 112px rgba(0,0,0,.12), inset 0 1px 0 rgba(255,255,255,.85);--blur-subtle: 8px;--frosted-subtle: blur(var(--blur-subtle)) saturate(101%) brightness(110%);--frosted: blur(16px) saturate(103%) brightness(120%);--transition-fast: .2s cubic-bezier(.25, .46, .45, .94);--transition-normal: .32s cubic-bezier(.25, .46, .45, .94);--transition-slow: .5s cubic-bezier(.175, .885, .32, 1.275);--control-height: 32px;--control-height-xl: 40px;--icon-size-lg: .9375rem;--state-disabled-opacity: .6;--spring-gentle: cubic-bezier(.25, .46, .45, .94);--spring-bounce: cubic-bezier(.34, 1.56, .64, 1);--spring-quick: cubic-bezier(.25, .1, .25, 1);--spring-glass: cubic-bezier(.215, .84, .44, 1);--spring-duration-short: .15s;--spring-duration-medium: .32s}.dark-theme{color-scheme:dark;--primary-color: rgba(242, 242, 242, .9);--primary-color-rgb: 242, 242, 242;--primary-light: rgba(209, 209, 209, .9);--accent-hover: rgba(241, 127, 113, .9);--accent-light: rgba(243, 149, 137, .9);--background-color: rgba(0, 0, 0, .9);--background-color-rgb: 0, 0, 0;--background-secondary: rgba(21, 21, 21, .9);--background-secondary-rgb: 21, 21, 21;--background-tertiary: rgba(39, 39, 39, .9);--background-hover: rgba(58, 58, 58, .9);--background-hover-dark: rgba(78, 78, 78, .9);--background-hover-dark-rgb: 78, 78, 78;--border-color: rgba(100, 100, 100, .2);--overlay-background: rgba(0, 0, 0, .5);--error-color: rgba(255, 107, 107, .9);--success-color: rgba(76, 175, 80, .9);--text-primary: rgb(250, 250, 245);--text-secondary: rgb(220, 220, 215);--text-tertiary: rgb(190, 190, 185);--text-white: rgb(0, 0, 0);--text-disabled: rgb(95, 95, 90);--shadow-sm: 0 2px 8px rgba(0,0,0,.2), 0 4px 16px rgba(0,0,0,.12), 0 0 2px rgba(255,255,255,.05), inset 0 1px 0 rgba(255,255,255,.03);--shadow-md: 0 4px 12px rgba(0,0,0,.25), 0 8px 24px rgba(0,0,0,.18), 0 16px 48px rgba(0,0,0,.1), 0 0 3px rgba(255,255,255,.06), inset 0 1px 0 rgba(255,255,255,.05);--shadow-lg: 0 8px 20px rgba(0,0,0,.3), 0 16px 40px rgba(0,0,0,.2), 0 32px 80px rgba(0,0,0,.12), 0 0 4px rgba(255,255,255,.08), inset 0 1px 1px rgba(255,255,255,.06)}*{box-sizing:border-box}@supports (scrollbar-width: thin){*{scrollbar-width:thin;scrollbar-color:rgba(var(--background-hover-dark-rgb),.5) transparent}}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(var(--background-hover-dark-rgb),.5);border-radius:var(--border-radius-full);border:3px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--background-hover-dark);background-clip:content-box}html,body,#root{height:100%}body{margin:0;background-color:rgba(var(--background-color-rgb),1);color:var(--text-primary);font-family:var(--font-family);font-size:var(--font-size-md);line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}button,textarea,select,input{font:inherit;color:inherit}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0;line-height:var(--line-height-relaxed)}p{margin:0;color:var(--text-secondary)}button{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);min-height:var(--control-height);padding:0 var(--spacing-md);border-radius:var(--border-radius-lg);border:var(--border-width) solid transparent;background-color:var(--background-color);color:var(--text-primary);font-weight:var(--font-weight-medium);font-size:var(--font-size-md);line-height:var(--line-height-tight);cursor:pointer;transition:all var(--transition-fast)}button:disabled{opacity:var(--state-disabled-opacity);cursor:not-allowed}.btn-accent{background-color:var(--accent-color);color:var(--text-white);border-color:transparent}.btn-accent:hover:not(:disabled){background-color:var(--accent-hover)}.btn-primary{background-color:var(--text-primary);color:var(--text-white)}.btn-primary:hover:not(:disabled){background-color:var(--primary-light)}.btn-secondary{background-color:var(--background-color);color:var(--text-primary);border-color:var(--border-color)}.btn-secondary:hover:not(:disabled){background-color:var(--background-tertiary)}.btn-icon-element{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:14px;height:14px;line-height:0}.btn-icon-element svg{width:14px;height:14px;display:block;overflow:visible}.btn-content{white-space:nowrap}.ghost-button{border:var(--border-width) solid var(--border-color);background-color:var(--background-color);color:var(--text-secondary);border-radius:var(--border-radius-lg);padding:0 var(--spacing-md);min-height:var(--control-height);text-shadow:none;transition:color var(--transition-fast),text-shadow var(--transition-slow)}.ghost-button:hover:not(:disabled){color:var(--accent-color);text-shadow:var(--text-glow-accent-soft)}.boot-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-xl);padding:var(--spacing-2xl);text-align:center}.brand-logo{display:flex;align-items:center;gap:var(--spacing-xs)}.logo-mark{width:1.6rem;height:1.6rem;flex-shrink:0;background-color:var(--text-primary);-webkit-mask:url(/icons/logo-transparent.png) center / contain no-repeat;mask:url(/icons/logo-transparent.png) center / contain no-repeat}.logo-word{font-size:1.6rem;font-weight:var(--font-weight-bold);text-transform:uppercase;color:var(--text-primary);line-height:1}.boot-screen .btn-accent{min-width:160px;min-height:var(--control-height-xl);border-radius:var(--border-radius-xl)}.boot-hint{color:var(--text-tertiary);font-size:var(--font-size-sm)}.office-shell{height:100vh;display:grid;grid-template-columns:minmax(0,1fr);overflow:hidden}.taskpane-shell{height:100%;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-md);min-width:0;min-height:0;overflow:hidden;position:relative}.composer-drop-overlay{position:absolute;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);pointer-events:none;border-radius:var(--border-radius-lg);border:2px dashed rgba(var(--accent-color-rgb),.6);background-color:rgba(var(--background-color-rgb),.82);-webkit-backdrop-filter:var(--frosted);backdrop-filter:var(--frosted)}.composer-drop-overlay-content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);color:var(--accent-color);text-align:center;font-weight:600}.composer-drop-overlay-content i{font-size:2rem}.taskpane-header,.header-actions,.sidebar-header,.patch-header,.action-row{display:flex;align-items:center;gap:var(--spacing-sm)}.taskpane-header{justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background-color:rgba(var(--background-color-rgb),.85);backdrop-filter:var(--frosted);-webkit-backdrop-filter:var(--frosted);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-xl);box-shadow:var(--shadow-sm)}.conversation-title{flex:1 1 auto;min-width:0;margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-icon-clean{display:inline-flex;align-items:center;justify-content:center;width:var(--control-height);min-width:var(--control-height);min-height:var(--control-height);padding:0;border:var(--border-width) solid transparent;border-radius:var(--border-radius-lg);background-color:transparent;color:var(--text-secondary);box-shadow:none;transition:color var(--transition-fast),text-shadow var(--transition-slow)}.btn-icon-clean:hover:not(:disabled){background-color:transparent;color:var(--accent-color);text-shadow:var(--text-glow-accent-soft)}.btn-icon-clean svg,.btn-icon-clean i{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;font-size:18px;line-height:1;text-shadow:none;transition:color var(--transition-fast),text-shadow var(--transition-slow)}.btn-icon-accent{color:var(--accent-color)}.btn-icon-accent:hover:not(:disabled){background-color:transparent;color:var(--accent-light);text-shadow:var(--text-glow-accent-soft)}select,textarea:not(.composer-textarea),input[type=text]:not(.form-control),input[type=email]:not(.form-control),input[type=password]:not(.form-control){border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-xl);background-color:var(--background-color);color:var(--text-primary);padding:var(--spacing-sm) var(--spacing-md);min-height:var(--control-height);transition:all var(--transition-fast);outline:none}select:hover,textarea:not(.composer-textarea):hover,input:not(.form-control):hover{background-color:var(--background-secondary)}select:focus,textarea:not(.composer-textarea):focus,input:not(.form-control):focus{border-color:var(--accent-color);box-shadow:var(--shadow-sm)}.selection-chip{display:inline-flex;align-items:center;gap:var(--spacing-xs);width:fit-content;min-width:0;max-width:100%;min-height:28px;padding:var(--spacing-2xs) var(--spacing-sm);background-color:rgba(var(--primary-color-rgb),.07);color:var(--text-secondary);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-tight);box-shadow:var(--shadow-sm);cursor:pointer;transition:all var(--transition-fast)}.selection-chip:hover{background-color:rgba(var(--primary-color-rgb),.12);color:var(--text-primary)}.selection-chip span:last-child{flex-shrink:0;font-size:var(--font-size-md);line-height:1}.selection-chip:hover span:last-child{color:var(--error-color)}.selection-chip span:first-child,.composer-attachment-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-area{flex:1 1 auto;min-height:0;position:relative;display:flex;flex-direction:column}.chat-panel{flex:1 1 auto;display:flex;flex-direction:column;gap:var(--spacing-md);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;min-height:0;padding:var(--spacing-lg)}.chat-scroll-to-bottom-anchor{position:absolute;bottom:var(--spacing-sm);left:50%;transform:translate(-50%);z-index:50;pointer-events:none}.chat-scroll-to-bottom{pointer-events:auto;display:flex;align-items:center;justify-content:center;width:var(--control-height-xl);height:var(--control-height-xl);padding:0;border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-full);background:rgba(var(--background-secondary-rgb),.7);-webkit-backdrop-filter:var(--frosted-subtle);backdrop-filter:var(--frosted-subtle);box-shadow:var(--shadow-sm);color:var(--text-secondary);cursor:pointer;transition:background-color var(--transition-normal),color var(--transition-normal),box-shadow var(--transition-normal),transform var(--transition-normal)}.chat-scroll-to-bottom.is-fade-in{animation:chatScrollFadeIn .22s var(--spring-quick) both}.chat-scroll-to-bottom.is-fade-out{animation:chatScrollFadeOut .22s var(--spring-quick) both}@keyframes chatScrollFadeIn{0%{opacity:0}to{opacity:1}}@keyframes chatScrollFadeOut{0%{opacity:1}to{opacity:0}}.chat-scroll-to-bottom:hover{background:rgba(var(--background-secondary-rgb),.7);color:var(--text-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.chat-scroll-to-bottom:active{transform:translateY(0) scale(.97);box-shadow:var(--shadow-sm);transition-duration:var(--spring-duration-short)}.chat-scroll-to-bottom i{font-size:var(--icon-size-lg);line-height:1}@media(prefers-reduced-motion:reduce){.chat-scroll-to-bottom.is-fade-in,.chat-scroll-to-bottom.is-fade-out{animation:none}.chat-scroll-to-bottom:hover,.chat-scroll-to-bottom:active{transform:none}}.history-skeleton{display:flex;flex-direction:column;gap:28px;width:100%;padding:4px 0}.hs-turn{display:flex;flex-direction:column;gap:14px}.hs-user{display:flex;justify-content:flex-end}.hs-assistant{display:flex;flex-direction:column;gap:10px}.hs-bubble{height:38px;border-radius:var(--border-radius-full)}.hs-line{height:13px;border-radius:var(--border-radius-md)}.hs-shimmer{position:relative;overflow:hidden;isolation:isolate;background-color:var(--background-tertiary)}.hs-shimmer:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(to right,transparent 0%,rgba(255,255,255,.22) 50%,transparent 100%);transform:translate(-100%);animation:hsShimmerSweep 1.5s cubic-bezier(.25,.9,.25,1) infinite;pointer-events:none}@keyframes hsShimmerSweep{to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){.hs-shimmer:after{animation:none}}.message{display:flex;flex-direction:column;width:100%;gap:0}.message-role{display:none}.message-content{color:var(--text-primary);border-radius:var(--border-radius-lg);font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.message-text,.markdown-content,.thinking-content{overflow-wrap:anywhere;word-break:break-word}.message-user{align-items:flex-end}.message-user .message-content{width:fit-content;max-width:85%;background-color:var(--background-secondary);border:none;padding:var(--spacing-md)}.message-assistant,.message-system{margin-right:auto;width:100%;max-width:100%}.message-assistant:not(.is-streaming){content-visibility:auto;contain-intrinsic-size:auto 400px}.message-assistant .message-content,.message-system .message-content{width:100%;padding:var(--spacing-md) 0}.composer-shell{display:flex;flex:0 0 auto;flex-direction:column;gap:var(--spacing-sm);position:relative;z-index:1;background:linear-gradient(to top,rgba(var(--background-color-rgb),.96),rgba(var(--background-color-rgb),.9) 72%,rgba(var(--background-color-rgb),0))}.ci-surface{position:relative;display:flex;flex-direction:column;gap:var(--spacing-sm);min-width:0;padding:8px;cursor:text;border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-2xl);background-color:rgba(var(--background-secondary-rgb),.94);-webkit-backdrop-filter:var(--frosted);backdrop-filter:var(--frosted);box-shadow:var(--shadow-sm);transition:border-color var(--transition-fast),box-shadow var(--transition-normal)}.ci-surface:hover{border-color:rgba(var(--accent-color-rgb),.34)}.ci-surface.focus{border-color:var(--accent-color);background-color:var(--background-color);box-shadow:0 0 0 1px rgba(var(--accent-color-rgb),.16),var(--shadow-sm)}.ci-mbar{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}.ci-mbar .mbar-text{flex:1 1 auto;min-width:48px}.ci-mbar .ci-grp{display:flex;align-items:center;gap:4px;flex-shrink:0}.ci-mbar.multi{flex-wrap:wrap}.ci-mbar.multi .mbar-text{flex:1 1 100%;order:0}.ci-mbar.multi .mbar-plus{order:1}.ci-mbar.multi .grp-right{order:3;margin-left:auto}.ci-attach{width:40px;height:40px;flex-shrink:0;border:none;border-radius:50%;background:transparent;color:var(--text-secondary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:16px;text-shadow:none;transition:color var(--transition-fast),text-shadow var(--transition-slow)}.ci-attach:hover:not(:disabled){color:var(--accent-color);text-shadow:var(--text-glow-accent-soft)}.ci-text{width:100%;min-width:0;display:flex}.ci-send-wrap{position:relative;width:40px;height:40px;flex-shrink:0;display:inline-flex;margin-left:var(--spacing-xs)}.ci-send-wrap:before{content:"";position:absolute;inset:-5px;border-radius:50%;background:conic-gradient(var(--accent-color) calc(var(--ring-pct, 0) * 1%),rgba(var(--background-hover-dark-rgb),.35) 0);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2.5px),#000 calc(100% - 2.5px));mask:radial-gradient(farthest-side,transparent calc(100% - 2.5px),#000 calc(100% - 2.5px));transition:background var(--transition-normal);pointer-events:none}.ci-send-wrap.no-ring:before{opacity:0}.ci-send{position:relative;width:40px;height:40px;border-radius:50%;border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:15px;background-color:rgba(var(--background-hover-dark-rgb),.42);color:var(--text-secondary);transition:background-color var(--transition-normal),color var(--transition-normal),transform var(--transition-normal)}.ci-send.active{background-color:var(--text-primary);color:var(--text-white)}.ci-send.active:hover:not(:disabled){transform:scale(1.07)}.ci-send.stop{background-color:var(--error-color);color:var(--text-white)}.ci-send.stop:hover:not(:disabled){transform:scale(1.07)}.ci-send:disabled{cursor:not-allowed}.composer-context-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--spacing-xs);min-width:0}.composer-attachment-chip{display:inline-flex;align-items:center;gap:var(--spacing-xs);min-width:0;max-width:100%;min-height:28px;padding:var(--spacing-2xs) var(--spacing-sm);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-md);background-color:rgba(var(--background-color-rgb),.72);color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-tight)}.composer-attachment-chip svg{width:14px;height:14px;flex-shrink:0;color:var(--text-tertiary)}.composer-textarea{width:100%;min-height:24px;max-height:132px;resize:none;overflow-y:auto;border:none;border-radius:0;background-color:transparent;padding:0;color:var(--text-primary);font-size:var(--font-size-md);line-height:1.55;outline:none;box-shadow:none;transition:none}.composer-textarea:hover,.composer-textarea:focus,.composer-textarea:focus-visible{border:none;border-radius:0;background-color:transparent;box-shadow:none;outline:none}.composer-textarea::placeholder{color:var(--text-disabled);opacity:1}.composer-controls{justify-content:space-between;gap:var(--spacing-xs);min-width:0}.composer-controls-left{display:flex;align-items:center;min-width:0;flex:1 1 auto;flex-wrap:wrap;justify-content:flex-start}.composer-context-meter{align-self:center}.composer-files-button-wrapper{position:relative;display:inline-flex}.composer-files-button{width:fit-content;overflow:visible}.attachment-count-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 var(--spacing-4xs);display:inline-flex;align-items:center;justify-content:center;border-radius:var(--border-radius-full);background-color:var(--accent-color);color:var(--text-white);font-size:var(--font-size-2xs);font-weight:var(--font-weight-bold)}.send-button{width:var(--control-height);height:var(--control-height);min-width:var(--control-height);min-height:var(--control-height);flex-shrink:0;padding:0;border:none;border-radius:var(--border-radius-full);background-color:rgba(var(--background-hover-dark-rgb),.42);color:var(--text-secondary);transition:all var(--transition-normal)}.send-button:disabled{opacity:.5;cursor:not-allowed}.send-button.active{background-color:var(--text-primary);color:var(--text-white);opacity:1}.send-button.active:hover:not(:disabled){background-color:var(--accent-color);color:var(--text-white)}.send-button.stop-button{background-color:var(--error-color);color:var(--text-white)}.send-button.stop-button:hover:not(:disabled){background-color:var(--error-hover)}.send-button svg{width:16px;height:16px}.context-usage-meter{--context-usage-progress: 0deg;--context-usage-color: var(--accent-color);--context-usage-track: var(--background-tertiary);position:relative;width:22px;height:22px;flex:0 0 22px;display:inline-flex;align-items:center;justify-content:center;cursor:help}.context-usage-meter:hover,.context-usage-meter:focus-visible{outline:none}.context-usage-ring{width:22px;height:22px;display:block;border-radius:50%;background:conic-gradient(var(--context-usage-color) 0deg var(--context-usage-progress),var(--context-usage-track) var(--context-usage-progress) 360deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 4px),#000 0);mask:radial-gradient(farthest-side,transparent calc(100% - 4px),#000 0);transition:transform var(--transition-fast),opacity var(--transition-fast)}.context-usage-meter:hover .context-usage-ring,.context-usage-meter:focus-visible .context-usage-ring{transform:scale(1.06)}.context-usage-tooltip{position:fixed;width:max-content;max-width:none;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-md);background:var(--background-secondary);color:var(--text-primary);box-shadow:var(--shadow-md);backdrop-filter:var(--frosted);-webkit-backdrop-filter:var(--frosted);font-size:var(--font-size-md);line-height:var(--line-height-normal);text-align:center;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transition:opacity var(--transition-fast),visibility var(--transition-fast);z-index:2147483647}.context-usage-tooltip-line{display:block}.context-usage-tooltip-title{margin-bottom:var(--spacing-sm);color:var(--text-disabled)}.context-usage-tooltip--visible{opacity:1;visibility:visible}@media(max-width:520px){.chat-input-wrapper{min-height:68px;padding:var(--spacing-md)}.composer-controls{align-items:flex-end}}.history-sidebar,.connected-files{height:100vh;position:sticky;top:0;display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-md);background-color:var(--background-color);border-left:var(--border-width) solid var(--border-color);overflow-y:auto}.sidebar-header{justify-content:space-between}.thread-row,.peer-card{display:flex;flex-direction:column;gap:var(--spacing-4xs);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-lg);background-color:var(--background-secondary);border:var(--border-width) solid var(--border-color);cursor:pointer;transition:color var(--transition-fast),text-shadow var(--transition-slow);text-shadow:none}.thread-row:hover:not(.active),.peer-card:hover{color:var(--accent-color);text-shadow:var(--text-glow-accent-soft);box-shadow:none}.thread-row.active{background-color:transparent;color:var(--accent-color);font-weight:var(--font-weight-semibold)}.thread-row.active:hover{color:var(--accent-light);text-shadow:var(--text-glow-accent-soft)}.settings-backdrop{position:fixed;inset:0;z-index:1000;background:transparent}.settings-menu{position:fixed;z-index:1001;width:min(320px,calc(100vw - 16px));max-height:min(70vh,560px);overflow:hidden;display:flex;flex-direction:column;gap:var(--spacing-2xs);padding:var(--spacing-sm);background-color:var(--background-secondary);backdrop-filter:var(--frosted);-webkit-backdrop-filter:var(--frosted);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-xl);box-shadow:var(--shadow-md)}.settings-user-block{display:flex;flex-direction:column;gap:var(--spacing-2xs);padding:var(--spacing-sm) var(--spacing-md)}.settings-user-block strong{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);color:var(--text-primary)}.settings-user-block span{font-size:var(--font-size-sm);color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-menu-item,.settings-submenu-header,.settings-option-item{width:100%;min-height:var(--control-height);padding:0 var(--spacing-md);border:none;border-radius:var(--border-radius-lg);background:transparent;color:var(--text-primary);font-size:var(--font-size-sm);text-align:left;cursor:pointer;text-shadow:none;transition:color var(--transition-fast),text-shadow var(--transition-slow)}.settings-menu-item,.settings-submenu-header,.settings-option-item{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm)}.settings-menu-item:hover:not(:disabled):not(.settings-menu-item-danger),.settings-submenu-header:hover:not(:disabled),.settings-option-item:hover:not(:disabled):not(.active){color:var(--accent-color);text-shadow:var(--text-glow-accent-soft)}.settings-menu-item:hover:not(:disabled) .settings-menu-meta{color:var(--accent-color)}.settings-menu-item-danger:hover:not(:disabled){background-color:transparent}.settings-menu-meta{display:inline-flex;align-items:center;gap:var(--spacing-2xs);color:var(--text-tertiary);font-size:var(--font-size-sm)}.settings-menu-meta svg,.settings-menu-item svg,.settings-submenu-header svg{width:16px;height:16px;flex-shrink:0}.settings-menu-divider{height:var(--border-width);margin:var(--spacing-2xs) var(--spacing-sm);background-color:var(--border-color)}.settings-menu-item-danger{color:var(--error-color)}.settings-submenu-header{font-weight:var(--font-weight-semibold)}.settings-submenu-header span{flex:1 1 auto}.settings-panel-title{padding:var(--spacing-sm) var(--spacing-md) var(--spacing-xs);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.history-panel .settings-thread-list{max-height:min(420px,50vh)}.settings-thread-list,.settings-option-list,.settings-instructions-panel{display:flex;flex-direction:column;gap:var(--spacing-2xs);min-height:0;overflow-y:auto}.settings-thread-item{display:flex;align-items:center;gap:var(--spacing-xs);width:100%;min-width:0;min-height:var(--control-height);padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--border-radius-lg);background:transparent;transition:color var(--transition-fast),text-shadow var(--transition-slow)}.settings-thread-item:hover:not(.active) .settings-thread-body,.settings-thread-item:hover:not(.active) .settings-thread-preview{color:var(--accent-color);text-shadow:var(--text-glow-accent-soft)}.settings-thread-item.active{background-color:transparent}.settings-thread-item.active .settings-thread-body strong{color:var(--accent-color);font-weight:var(--font-weight-semibold);text-shadow:none}.settings-thread-item.active:hover .settings-thread-body strong{color:var(--accent-light);text-shadow:var(--text-glow-accent-soft)}.settings-thread-body{display:flex;flex:1 1 auto;flex-direction:column;align-items:flex-start;gap:var(--spacing-2xs);min-width:0;padding:0;border:none;border-radius:0;background:transparent;color:var(--text-primary);font-size:var(--font-size-sm);text-align:left;cursor:pointer;text-shadow:none;transition:color var(--transition-fast),text-shadow var(--transition-slow)}.settings-thread-body strong,.settings-thread-preview{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-thread-body strong{text-shadow:none;transition:color var(--transition-fast),text-shadow var(--transition-slow)}.settings-thread-preview{color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);text-shadow:none;transition:color var(--transition-fast),text-shadow var(--transition-slow)}.settings-thread-delete{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;align-self:center;width:28px;height:28px;padding:0;border:none;border-radius:var(--border-radius-md);background:transparent;color:var(--text-tertiary);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast)}.settings-thread-delete:hover:not(:disabled){background-color:rgba(var(--error-color-rgb),.1);color:var(--error-color)}.settings-thread-delete:disabled{opacity:.5;cursor:not-allowed}.settings-delete-confirm{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border-top:var(--border-width) solid var(--border-color)}.settings-delete-confirm p{margin:0;color:var(--text-secondary);font-size:var(--font-size-sm)}.settings-delete-confirm-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.settings-danger-button{min-height:32px;padding:0 var(--spacing-md);border:none;border-radius:var(--border-radius-lg);background-color:var(--error-color);color:var(--text-white);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer}.settings-danger-button:hover:not(:disabled){background-color:var(--error-hover)}.settings-danger-button:disabled{opacity:.6;cursor:not-allowed}.settings-empty-state{margin:0;padding:var(--spacing-md);color:var(--text-tertiary);font-size:var(--font-size-sm)}.settings-option-check{color:var(--accent-color);font-weight:var(--font-weight-bold)}.settings-toggle{position:relative;flex-shrink:0;width:40px;height:22px;border:var(--border-width) solid var(--border-color);border-radius:999px;background-color:var(--background-tertiary);transition:background-color var(--transition-normal),border-color var(--transition-normal)}.settings-toggle:after{content:"";position:absolute;top:50%;left:3px;width:16px;height:16px;border-radius:50%;background-color:#fff;box-shadow:var(--shadow-sm);transform:translateY(-50%);transition:transform var(--transition-normal)}.settings-toggle.active{background-color:var(--accent-color);border-color:transparent}.settings-toggle.active:after{transform:translateY(-50%) translate(18px)}.settings-menu-item:disabled{cursor:not-allowed;opacity:.6}.settings-instructions-panel{padding:0}.settings-instructions-copy,.settings-instructions-note{margin:0;padding:0 var(--spacing-sm);font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.settings-instructions-copy{color:var(--text-secondary)}.settings-instructions-note{color:var(--text-primary);font-weight:var(--font-weight-semibold)}.settings-instructions-input{width:100%;min-height:180px;margin-top:var(--spacing-sm);padding:var(--spacing-md);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-lg);background-color:var(--background-color);color:var(--text-primary);font-size:var(--font-size-sm);line-height:var(--line-height-normal);resize:vertical;outline:none}.settings-instructions-input:focus{border-color:var(--accent-color);box-shadow:0 0 0 1px rgba(var(--accent-color-rgb),.16)}.settings-instructions-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);margin-top:var(--spacing-sm);color:var(--text-tertiary);font-size:var(--font-size-xs)}.settings-instructions-actions{display:flex;align-items:center;gap:var(--spacing-sm)}.settings-text-button,.settings-primary-button{min-height:var(--control-height);padding:0 var(--spacing-md);border-radius:var(--border-radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast)}.settings-text-button{border:none;background:transparent;color:var(--text-secondary)}.settings-text-button:hover:not(:disabled){color:var(--text-primary);background-color:var(--background-hover)}.settings-primary-button{border:none;background-color:var(--text-primary);color:var(--text-white)}.settings-primary-button:hover:not(:disabled){background-color:var(--primary-light)}.settings-text-button:disabled,.settings-primary-button:disabled{opacity:var(--state-disabled-opacity);cursor:not-allowed}.patch-review,.modal-shell{position:fixed;inset:0;z-index:1000;background:var(--overlay-background);display:grid;place-items:center;padding:var(--spacing-xl)}.patch-card,.modal-card{width:min(560px,100%);max-height:90vh;overflow-y:auto;padding:var(--spacing-lg);background-color:var(--background-color);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-xl);box-shadow:var(--shadow-modal);display:flex;flex-direction:column;gap:var(--spacing-md)}.modal-header,.patch-header{justify-content:space-between}.action-row{justify-content:flex-end;gap:var(--spacing-sm)}.risk-badge{padding:var(--spacing-2xs) var(--spacing-sm);border-radius:var(--border-radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.04em}.risk-low{background-color:rgba(var(--success-color-rgb),.12);color:var(--success-color)}.risk-medium{background-color:#ffc10729;color:rgb(var(--warning-hover-rgb))}.risk-high{background-color:rgba(var(--error-color-rgb),.12);color:var(--error-color)}.login-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-lg);padding:var(--spacing-xl) var(--spacing-lg) var(--spacing-lg);background-color:var(--background-color)}.logo-container{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-md)}.logo-icon{width:56px;height:56px;flex-shrink:0;background-color:var(--text-primary);-webkit-mask:url(/icons/logo-transparent.png) center / contain no-repeat;mask:url(/icons/logo-transparent.png) center / contain no-repeat}.company-name{font-size:clamp(1.75rem,4vw,2.75rem);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-sm);text-transform:uppercase;color:var(--text-primary);font-family:var(--font-family);line-height:1;white-space:nowrap}.login-box{width:100%;display:flex;flex-direction:column;align-items:center}.form{display:flex;flex-direction:column;gap:var(--spacing-lg);align-items:center;width:100%;max-width:480px;margin:0 auto;padding:var(--spacing-xl);border-radius:var(--border-radius-xl);box-shadow:var(--shadow-lg)}.frosted-background{background-color:rgba(var(--background-color-rgb),.4);backdrop-filter:var(--frosted);-webkit-backdrop-filter:var(--frosted)}.form h2{text-align:center;color:var(--text-primary);margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);letter-spacing:-.01em}.form-group{width:100%;max-width:400px;display:flex;justify-content:center}.login-button-container{width:100%;max-width:400px}.login-button-container .btn-accent{width:100%;min-height:var(--control-height-xl);border-radius:var(--border-radius-xl)}.input-group{display:flex;flex-direction:column;gap:var(--spacing-2xs);width:100%}.input-container{position:relative;width:100%;display:flex;flex-direction:row;align-items:center;gap:var(--spacing-xs);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-xl);background-color:var(--background-color);padding:var(--spacing-sm) var(--spacing-md);transition:all .2s ease}.input-container:hover{background-color:var(--background-secondary);box-shadow:var(--shadow-sm)}.input-container:focus-within{border-color:var(--accent-color);background-color:var(--background-color);box-shadow:var(--shadow-sm)}.input-content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-2xs);min-width:0}.input-label{color:var(--accent-hover);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:var(--line-height-tight);cursor:text}.input-container .form-control{width:100%;min-height:20px;padding:0;border:none;box-shadow:none;border-radius:0;background-color:transparent;color:var(--text-primary);font-size:var(--font-size-md);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);font-family:var(--font-family);-webkit-appearance:none;appearance:none;text-align:left;outline:none}.input-container .form-control::placeholder{color:var(--text-disabled);opacity:1}.auth-error{color:var(--error-color);font-size:var(--font-size-xs);text-align:center;width:100%;max-width:400px}.message-content>*:first-child{margin-top:0}.message-content>*:last-child{margin-bottom:0}.message-text.markdown-content p{margin:0 0 var(--spacing-xs)}.message-text.markdown-content p:last-child{margin-bottom:0}.message-content h1,.message-content h2,.message-content h3,.message-content h4,.message-content h5,.message-content h6{margin:var(--spacing-md) 0 var(--spacing-sm);line-height:var(--line-height-tight)}.message-content h1,.message-content h2{font-size:var(--font-size-2xl)}.message-content h3{font-size:var(--font-size-lg)}.message-text.markdown-content ul,.message-text.markdown-content ol{margin:var(--spacing-xs) 0;padding-left:var(--spacing-lg)}.message-text.markdown-content li{margin:var(--spacing-2xs) 0}.message-text.markdown-content li>p{margin:0}.message-content a{color:var(--accent-color);text-decoration:none;border-bottom:1px solid rgba(var(--accent-color-rgb),.35)}.message-content a:hover{border-bottom-color:var(--accent-color)}.message-content code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85em;background-color:var(--background-tertiary);padding:.1em .35em;border-radius:var(--border-radius-sm)}.message-content pre{background-color:var(--background-secondary);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-md);padding:var(--spacing-md);overflow-x:auto;margin:var(--spacing-sm) 0}.message-content pre code{background:transparent;padding:0;font-size:var(--font-size-xs)}.message-content blockquote{margin:var(--spacing-sm) 0;padding-left:var(--spacing-md);border-left:3px solid var(--border-color);color:var(--text-secondary)}.message-content img{max-width:100%;border-radius:var(--border-radius-md)}.table-scroll-container{overflow-x:auto;margin:var(--spacing-sm) 0}.message-content table{border-collapse:collapse;width:100%;font-size:var(--font-size-xs)}.message-content th,.message-content td{border:var(--border-width) solid var(--border-color);padding:var(--spacing-2xs) var(--spacing-sm);text-align:left}.message-content th{background-color:var(--background-secondary);font-weight:var(--font-weight-semibold)}.latex-display{overflow-x:auto;margin:var(--spacing-sm) 0}.message-error{margin-top:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-lg);background-color:rgba(var(--error-color-rgb),.1);color:var(--error-color);font-size:var(--font-size-sm)}.status-message{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text-secondary);font-size:var(--font-size-sm)}.message-loader-logo{--loader-size: 2rem;display:inline-flex;align-items:center;justify-content:center;width:var(--loader-size);height:var(--loader-size);line-height:0;flex-shrink:0}.message-loader-logo__image{width:100%;height:100%;display:block;object-fit:contain;transform-origin:center;will-change:transform;animation:message-logo-spin-120 1.85s infinite cubic-bezier(.42,.08,.22,1)}@keyframes message-logo-spin-120{0%{transform:rotate(0) scale(.985);opacity:.9}33.333%{transform:rotate(120deg) scale(1);opacity:1}66.666%{transform:rotate(240deg) scale(.992);opacity:.96}to{transform:rotate(360deg) scale(.985);opacity:.9}}@media(prefers-reduced-motion:reduce){.message-loader-logo__image{animation:none}}.process-container{background-color:rgba(var(--background-secondary-rgb),.6);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-lg);margin:0 0 var(--spacing-sm);overflow:hidden}.process-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:var(--font-size-sm);color:var(--text-primary);font-weight:var(--font-weight-semibold)}.process-header-left{display:flex;align-items:center;gap:var(--spacing-sm)}.process-toggle{transition:transform var(--transition-fast);flex-shrink:0}.process-toggle.collapsed{transform:rotate(-90deg)}.process-content{padding:0 var(--spacing-md) var(--spacing-md);max-height:320px;overflow-y:auto}.thinking-content{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:var(--line-height-normal)}.code-output{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:var(--font-size-xs);white-space:pre-wrap}.code-output.stderr,.code-output.error{color:var(--error-color)}.message{gap:var(--spacing-2xs)}.message-attachments{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-2xs)}.message-user .message-attachments{justify-content:flex-end}.message-attachment-chip{display:inline-flex;align-items:center;gap:var(--spacing-2xs);max-width:100%;padding:var(--spacing-2xs) var(--spacing-sm);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-md);background-color:rgba(var(--background-color-rgb),.72);color:var(--text-secondary);font-size:var(--font-size-sm)}.message-attachment-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-loader{display:inline-flex;align-items:center;padding:var(--spacing-2xs) 0}.message-loader-mark{width:22px;height:22px;border-radius:var(--border-radius-full);border:2px solid rgba(var(--accent-color-rgb),.25);border-top-color:var(--accent-color);animation:office-spin .8s linear infinite}@keyframes office-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.message-loader-mark{animation:none}}.message-footer{align-self:stretch;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);width:100%;box-sizing:border-box;margin-top:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.message-user .message-footer{margin-top:var(--spacing-sm)}.message-meta{flex:1 1 auto;min-width:0;color:var(--text-tertiary);font-size:var(--font-size-xs);line-height:var(--line-height-tight);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.2;transition:opacity var(--transition-normal)}.message-actions{display:flex;flex:0 0 auto;align-items:center;margin-left:auto;justify-content:flex-end;gap:var(--spacing-xs);opacity:.2;transition:opacity var(--transition-normal);position:relative;z-index:1}.message-user .message-actions{justify-content:flex-end}.message:hover .message-meta,.message.is-interacting .message-meta,.message:hover .message-actions,.message.is-interacting .message-actions,.message-actions:focus-within{opacity:1}.message-action{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:var(--border-radius-md);background:transparent;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast)}.message-action:hover{background-color:var(--background-secondary);color:var(--text-primary)}.message-action i{font-size:14px}.message-edit{display:flex;flex-direction:column;gap:var(--spacing-sm);width:100%}.message-user .message-edit{align-items:stretch}.message-edit-input{width:100%;resize:vertical;border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-lg);background-color:var(--background-color);color:var(--text-primary);padding:var(--spacing-md);font-size:var(--font-size-sm);line-height:var(--line-height-normal);outline:none}.message-edit-input:focus{border-color:var(--accent-color);box-shadow:0 0 0 1px rgba(var(--accent-color-rgb),.16)}.message-edit-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm)}@media(max-width:980px){.office-shell{grid-template-columns:1fr}}img.plannk-img-fallback{box-sizing:border-box;object-fit:contain;padding:20%;background-color:var(--background-tertiary)}
