@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Space+Grotesk:wght@300;400;500;600;700&display=swap";html{box-sizing:border-box;font-size:16px;line-height:var(--line-height-normal)}*,*:before,*:after{box-sizing:inherit;margin:0;padding:0}html,body,#root{font-family:var(--font-family-primary);background:var(--color-bg-snow-white);color:var(--color-text-primary);min-height:100vh;font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);letter-spacing:var(--letter-spacing-normal)}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);color:var(--color-text-primary);margin-bottom:var(--spacing-md)}h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold)}h2{font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold)}h3{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold)}h4{font-size:var(--font-size-xl);font-weight:var(--font-weight-medium)}h5{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium)}h6{font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}p{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);margin-bottom:var(--spacing-md);color:var(--color-text-secondary)}code,pre{font-family:var(--font-family-mono);font-size:var(--font-size-sm);line-height:var(--line-height-normal);background:var(--color-interactive-hover);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);color:var(--color-text-primary)}pre{padding:var(--spacing-md);border-radius:var(--border-radius-md);overflow-x:auto;margin-bottom:var(--spacing-md)}a{color:var(--color-primary-electric-blue);text-decoration:none;transition:var(--transition-button-hover);border-bottom:1px solid transparent}a:hover,a:focus{color:var(--color-primary-deep-indigo);border-bottom-color:var(--color-primary-electric-blue)}a:focus-visible{outline:2px solid var(--color-interactive-focus);outline-offset:2px;border-radius:var(--border-radius-sm)}button,input,select,textarea{font-family:var(--font-family-primary);font-size:var(--font-size-base);border-radius:var(--border-radius-base);border:1px solid var(--color-border-primary);outline:none;transition:var(--transition-input-focus)}button:not(.btn){cursor:pointer;background:var(--color-bg-snow-white);color:var(--color-text-primary);padding:var(--component-padding-sm) var(--component-padding-md);font-weight:var(--font-weight-medium);border:1px solid var(--color-border-primary);transition:var(--transition-button-hover)}button:not(.btn):hover:not(:disabled){background:var(--color-interactive-hover);border-color:var(--color-border-accent)}button:not(.btn):focus-visible{outline:2px solid var(--color-interactive-focus);outline-offset:2px}button:not(.btn):disabled{background:var(--color-interactive-disabled);color:var(--color-text-muted);cursor:not-allowed;opacity:.6}input,select,textarea{padding:var(--component-padding-sm);background:var(--color-bg-snow-white);color:var(--color-text-primary);border:1px solid var(--color-border-primary);transition:var(--transition-input-focus)}input:focus,select:focus,textarea:focus{border-color:var(--color-interactive-focus);outline:2px solid var(--color-interactive-focus);outline-offset:2px}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}img,video,svg{max-width:100%;height:auto;display:block}ul,ol{list-style:none;padding-left:0;margin-bottom:var(--spacing-md)}li{margin-bottom:var(--spacing-xs);color:var(--color-text-secondary)}:focus-visible{outline:2px solid var(--color-interactive-focus);outline-offset:2px}.tutorial-toggle-wrapper{position:relative;display:inline-block}.tutorial-tooltip{visibility:hidden;width:max-content;max-width:200px;background-color:var(--color-bg-snow-white);color:var(--color-text-primary);text-align:center;border-radius:var(--border-radius-md);padding:var(--spacing-sm) var(--spacing-md);position:absolute;z-index:1000;top:calc(100% + var(--spacing-sm));right:0;opacity:0;transition:opacity var(--duration-fast) var(--easing-ease-in-out),transform var(--duration-fast) var(--easing-ease-out);transform:translateY(-4px);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);pointer-events:none;box-shadow:var(--shadow-lg);white-space:nowrap;border:1px solid var(--color-border-primary)}.tutorial-toggle-wrapper:hover .tutorial-tooltip,.tutorial-tooltip--pinned{visibility:visible;opacity:1;transform:translateY(0)}.tutorial-toggle-wrapper--attach-hint .tutorial-tooltip{top:auto;bottom:calc(100% + var(--spacing-sm));right:0;white-space:normal;max-width:11rem}.tutorial-toggle-wrapper--attach-hint .tutorial-tooltip:before{bottom:auto;top:100%;border-color:var(--color-bg-snow-white) transparent transparent transparent}.tutorial-toggle-wrapper--attach-hint .tutorial-tooltip:after{bottom:auto;top:100%;border-color:var(--color-border-primary) transparent transparent transparent}.tutorial-tooltip:before{content:"";position:absolute;bottom:100%;right:11px;border-width:6px;border-style:solid;border-color:transparent transparent var(--color-bg-snow-white) transparent}.tutorial-tooltip:after{content:"";position:absolute;bottom:100%;right:11px;border-width:7px;border-style:solid;border-color:transparent transparent var(--color-border-primary) transparent;margin-right:-1px;margin-bottom:0;z-index:-1}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.text-inverse{color:var(--color-text-inverse)}.text-success{color:var(--color-success)}.text-error{color:var(--color-error)}.text-warning{color:var(--color-warning)}.text-info{color:var(--color-info)}.bg-primary{background-color:var(--color-bg-snow-white)}.bg-secondary{background-color:var(--color-interactive-hover)}.bg-accent{background-color:var(--color-accent-aqua-cyan)}.m-0{margin:0}.m-1{margin:var(--spacing-xs)}.m-2{margin:var(--spacing-sm)}.m-3{margin:var(--spacing-md)}.m-4{margin:var(--spacing-lg)}.m-5{margin:var(--spacing-xl)}.p-0{padding:0}.p-1{padding:var(--spacing-xs)}.p-2{padding:var(--spacing-sm)}.p-3{padding:var(--spacing-md)}.p-4{padding:var(--spacing-lg)}.p-5{padding:var(--spacing-xl)}.d-block{display:block}.d-inline{display:inline}.d-inline-block{display:inline-block}.d-flex{display:flex}.d-grid{display:grid}.d-none{display:none}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.border{border:1px solid var(--color-border-primary)}.border-0{border:0}.border-radius{border-radius:var(--border-radius-base)}.border-radius-sm{border-radius:var(--border-radius-sm)}.border-radius-lg{border-radius:var(--border-radius-lg)}.border-radius-full{border-radius:var(--border-radius-full)}.shadow-none{box-shadow:var(--shadow-none)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-base{box-shadow:var(--shadow-base)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.shadow-2xl{box-shadow:var(--shadow-2xl)}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary-deep-indigo) 0%,var(--color-primary-electric-blue) 100%);padding:var(--spacing-lg)}.login-card{background:var(--color-bg-snow-white);border-radius:var(--border-radius-xl);box-shadow:var(--shadow-2xl);padding:var(--spacing-3xl);width:100%;max-width:400px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.login-header{text-align:center;margin-bottom:var(--spacing-2xl)}.login-title{font-family:var(--font-family-secondary);font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-primary-deep-indigo);margin-bottom:var(--spacing-sm);letter-spacing:var(--letter-spacing-tight)}.login-subtitle{font-size:var(--font-size-base);color:var(--color-text-secondary);font-weight:var(--font-weight-normal);line-height:var(--line-height-relaxed)}.login-form{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.login-error{background-color:#ff6b6b1a;border:1px solid var(--color-error);border-radius:var(--border-radius-base);padding:var(--spacing-sm);margin-bottom:var(--spacing-md)}.login-footer{text-align:center;padding-top:var(--spacing-lg);border-top:1px solid var(--color-border-secondary)}@media (max-width: 480px){.login-container{padding:var(--spacing-md)}.login-card{padding:var(--spacing-xl)}.login-title{font-size:var(--font-size-3xl)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs);font-family:var(--font-family-primary);font-weight:var(--font-weight-medium);font-size:var(--font-size-base);line-height:var(--line-height-normal);letter-spacing:var(--letter-spacing-normal);border:1px solid transparent;border-radius:var(--border-radius-base);cursor:pointer;transition:var(--transition-button-hover);text-decoration:none;white-space:nowrap;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden}.btn--primary{background-color:var(--color-primary-electric-blue);color:var(--color-text-inverse);border-color:var(--color-primary-electric-blue)}.btn--primary:hover:not(:disabled){background-color:var(--color-primary-deep-indigo);border-color:var(--color-primary-deep-indigo);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn--primary:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.btn--secondary{background-color:var(--color-bg-snow-white);color:var(--color-text-primary);border-color:var(--color-border-secondary)}.btn--secondary:hover:not(:disabled){background-color:var(--color-interactive-hover);border-color:var(--color-border-secondary)}.btn--secondary:active:not(:disabled){background-color:var(--color-interactive-hover);border-color:var(--color-border-secondary);filter:brightness(.97);box-shadow:none}.btn--accent{background-color:var(--color-accent-aqua-cyan);color:#1a1a1a;border-color:var(--color-accent-aqua-cyan)}.btn--accent:hover:not(:disabled){background-color:var(--color-accent-aqua-cyan);filter:brightness(.9);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn--accent:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.btn--ghost{background-color:transparent;color:var(--color-text-primary);border-color:transparent}.btn--ghost:hover:not(:disabled){background-color:var(--color-interactive-hover);color:var(--color-text-primary)}.btn--ghost:active:not(:disabled){background-color:var(--color-interactive-hover);filter:brightness(.97)}.btn--danger{background-color:var(--color-error);color:var(--color-text-inverse);border-color:var(--color-error)}.btn--danger:hover:not(:disabled){background-color:var(--color-error);filter:brightness(.9);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn--danger:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.btn--sm{padding:.375rem .625rem;font-size:var(--font-size-sm);min-height:28px;border-radius:.1875rem}.btn--md{padding:var(--component-padding-sm) var(--component-padding-md);font-size:var(--font-size-base);min-height:40px}.btn--lg{padding:var(--component-padding-md) var(--component-padding-lg);font-size:var(--font-size-lg);min-height:48px}.btn--disabled,.btn:disabled{background-color:var(--color-interactive-disabled);color:var(--color-text-muted);border-color:var(--color-border-secondary);cursor:not-allowed;opacity:.6;transform:none!important;box-shadow:none!important}.btn--accent.btn--disabled,.btn--accent:disabled{color:#1a1a1a}.btn--loading{cursor:wait;pointer-events:none}.btn--loading .btn__content{opacity:.7}.btn--full-width{width:100%}.btn__content{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);transition:opacity var(--duration-fast) var(--easing-ease-out)}.btn__icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn__icon--left{margin-right:var(--spacing-xs)}.btn__icon--right{margin-left:var(--spacing-xs)}.btn--icon-only.btn--sm{padding:.375rem;min-width:28px;min-height:28px}.btn--icon-only{padding:var(--component-padding-sm);min-width:40px;aspect-ratio:1;display:flex;align-items:center;justify-content:center}.btn--icon-only .btn__icon{margin-left:0;margin-right:0}.btn--icon-only .btn__content{display:none}.btn--icon-only.btn--secondary:hover:not(:disabled){background-color:var(--color-interactive-hover);opacity:.9}.btn--icon-only.btn--danger:hover:not(:disabled){opacity:.9}.btn__loading-spinner{display:flex;align-items:center;justify-content:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.btn__loading-icon{width:16px;height:16px;animation:var(--transition-loading-spin)}.btn:focus:not(:focus-visible){outline:none;box-shadow:none}.btn--primary:focus-visible{box-shadow:var(--shadow-focus-primary)}.btn--secondary:focus-visible{box-shadow:var(--shadow-focus-primary)}.btn--accent:focus-visible{box-shadow:var(--shadow-focus-success)}.btn--ghost:focus-visible{box-shadow:var(--shadow-focus-primary)}.btn--danger:focus-visible{box-shadow:var(--shadow-focus-error)}@media (max-width: 768px){.btn--lg{padding:var(--component-padding-sm) var(--component-padding-md);font-size:var(--font-size-base);min-height:40px}.btn--md{padding:var(--component-padding-xs) var(--component-padding-sm);font-size:var(--font-size-sm);min-height:36px}.btn--sm{padding:var(--spacing-xs) var(--component-padding-xs);font-size:var(--font-size-xs);min-height:28px}}.chat-composer{border:1px solid var(--chat-composer-border);border-radius:12px;background:var(--chat-composer-bg);padding:.65rem .75rem;display:flex;flex-direction:column;gap:.5rem;min-height:120px;box-shadow:0 1px 4px #0000000f;transition:border-color .2s ease,box-shadow .2s ease}.chat-composer:focus-within{border-color:var(--chat-composer-focus-border);box-shadow:0 0 0 2px var(--chat-composer-focus-ring),0 2px 8px #00000014}.chat-composer__actions{display:flex;align-items:center;justify-content:flex-end;flex-shrink:0;margin-top:auto;padding-top:.15rem}.spinner{display:inline-flex;align-items:center;justify-content:center}.spinner__icon{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}button.icon-send-btn,button.icon-send-btn:hover,button.icon-send-btn:focus,button.icon-send-btn:active,button.icon-send-btn:disabled{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:34px;height:34px;padding:0!important;margin:0;border:none!important;background:transparent!important;box-shadow:none!important;border-radius:var(--radius-control);font:inherit;line-height:1;position:relative;transform:none;transition:color .2s ease,opacity .2s ease}button.icon-send-btn:focus{outline:none}button.icon-send-btn:focus-visible{outline:2px solid var(--color-interactive-focus);outline-offset:2px}button.icon-send-btn:disabled{cursor:not-allowed}button.icon-send-btn:not(:disabled):hover{color:var(--color-primary-electric-blue)}.input-wrapper{display:flex;flex-direction:column;gap:var(--spacing-xs)}.input__label{font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);line-height:var(--line-height-normal);letter-spacing:var(--letter-spacing-normal);margin-bottom:var(--spacing-xs)}.input__required{color:var(--color-error);margin-left:var(--spacing-xs)}.input__container{position:relative;display:flex;align-items:center}.input{width:100%;font-family:var(--font-family-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);letter-spacing:var(--letter-spacing-normal);color:var(--color-text-primary);background-color:var(--color-bg-snow-white);border:1px solid var(--color-border-primary);border-radius:var(--radius-control);padding:var(--component-padding-sm);transition:var(--transition-input-focus);outline:none;box-sizing:border-box}.input::placeholder{color:var(--color-text-muted);font-weight:var(--font-weight-normal)}.input--sm{padding:var(--component-padding-xs);font-size:var(--font-size-sm);min-height:32px}.input--md{padding:var(--component-padding-sm);font-size:var(--font-size-base);min-height:40px}.input--lg{padding:var(--component-padding-md);font-size:var(--font-size-lg);min-height:48px}.input:not(.input--error):not(.input--success):focus{border-color:var(--color-interactive-focus);box-shadow:var(--shadow-focus-primary)}.input--success{border-color:var(--color-success)}.input--success:focus{border-color:var(--color-success);box-shadow:var(--shadow-focus-success)}.input--error{border-color:var(--color-error)}.input--error:focus{border-color:var(--color-error);box-shadow:var(--shadow-focus-error)}.input--disabled,.input:disabled{background-color:var(--color-interactive-disabled);color:var(--color-text-muted);border-color:var(--color-border-primary);cursor:not-allowed;opacity:.6}.input--disabled::placeholder,.input:disabled::placeholder{color:var(--color-text-muted)}.input--readonly,.input[readonly]{background-color:var(--color-interactive-hover);color:var(--color-text-secondary);cursor:default}.input__icon{display:flex;align-items:center;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none;z-index:1;transition:color var(--duration-fast) var(--easing-ease-out)}.input__icon--left{left:var(--component-padding-sm)}.input__icon--right{right:var(--component-padding-sm)}.input--sm .input__icon{width:16px;height:16px}.input--md .input__icon{width:18px;height:18px}.input--lg .input__icon{width:20px;height:20px}.input:focus+.input__icon--right,.input:focus~.input__icon--right{color:var(--color-interactive-focus)}.input--success:focus+.input__icon--right,.input--success:focus~.input__icon--right{color:var(--color-success)}.input--error:focus+.input__icon--right,.input--error:focus~.input__icon--right{color:var(--color-error)}.input--has-left-icon{padding-left:calc(var(--component-padding-sm) + 18px + var(--spacing-xs))}.input--has-right-icon{padding-right:calc(var(--component-padding-sm) + 18px + var(--spacing-xs))}.input--sm.input--has-left-icon{padding-left:calc(var(--component-padding-xs) + 16px + var(--spacing-xs))}.input--sm.input--has-right-icon{padding-right:calc(var(--component-padding-xs) + 16px + var(--spacing-xs))}.input--lg.input--has-left-icon{padding-left:calc(var(--component-padding-md) + 20px + var(--spacing-xs))}.input--lg.input--has-right-icon{padding-right:calc(var(--component-padding-md) + 20px + var(--spacing-xs))}.input__feedback{display:flex;flex-direction:column;gap:var(--spacing-xs)}.input__helper-text{font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text-secondary);margin:0}.input__error-text{font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-error);margin:0}.input--full-width{width:100%}@media (max-width: 768px){.input--lg{padding:var(--component-padding-sm);font-size:var(--font-size-base);min-height:40px}.input--md{padding:var(--component-padding-xs);font-size:var(--font-size-sm);min-height:36px}.input--sm{padding:var(--spacing-xs);font-size:var(--font-size-xs);min-height:28px}.input--lg.input--has-left-icon{padding-left:calc(var(--component-padding-sm) + 18px + var(--spacing-xs))}.input--lg.input--has-right-icon{padding-right:calc(var(--component-padding-sm) + 18px + var(--spacing-xs))}.input--md.input--has-left-icon{padding-left:calc(var(--component-padding-xs) + 16px + var(--spacing-xs))}.input--md.input--has-right-icon{padding-right:calc(var(--component-padding-xs) + 16px + var(--spacing-xs))}.input--sm.input--has-left-icon{padding-left:calc(var(--spacing-xs) + 14px + var(--spacing-xs))}.input--sm.input--has-right-icon{padding-right:calc(var(--spacing-xs) + 14px + var(--spacing-xs))}}.layout{display:grid;grid-template-columns:var(--layout-sidebar-width) 1fr;min-height:100vh;background-color:var(--color-bg-snow-white)}.layout__sidebar{background-color:var(--color-bg-snow-white);border-right:1px solid var(--color-border-primary);display:flex;flex-direction:column;position:relative;transition:var(--transition-panel-collapse);overflow:hidden}.layout__sidebar--collapsed{width:60px;min-width:60px}.layout__sidebar--collapsed .layout__sidebar-content{opacity:0;pointer-events:none}.layout__sidebar-toggle{position:absolute;top:var(--spacing-md);right:var(--spacing-sm);width:32px;height:32px;border:1px solid var(--color-border-primary);border-radius:var(--border-radius-base);background-color:var(--color-bg-snow-white);color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition-button-hover);z-index:10}.layout__sidebar-toggle:hover{background-color:var(--color-interactive-hover);color:var(--color-text-primary);border-color:var(--color-border-accent)}.layout__sidebar-toggle:focus{outline:2px solid var(--color-interactive-focus);outline-offset:2px}.layout__sidebar-content{padding:var(--layout-sidebar-padding);flex:1;overflow-y:auto;transition:opacity var(--duration-normal) var(--easing-ease-out)}.layout__main{background-color:var(--color-bg-snow-white);padding:var(--layout-section-padding);overflow-y:auto;display:flex;flex-direction:column}.layout__header{background-color:var(--color-bg-snow-white);border-bottom:1px solid var(--color-border-primary);padding:var(--spacing-md) var(--layout-section-padding);display:flex;align-items:center;justify-content:space-between;min-height:64px;position:sticky;top:0;z-index:5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#fafafaf2}.layout__footer{background-color:var(--color-bg-snow-white);border-top:1px solid var(--color-border-primary);padding:var(--spacing-md) var(--layout-section-padding);display:flex;align-items:center;justify-content:space-between;min-height:48px;margin-top:auto}@media (max-width: 1024px){.layout{grid-template-columns:240px 1fr}.layout__sidebar{width:240px;min-width:240px}}@media (max-width: 768px){.layout{grid-template-columns:1fr;grid-template-rows:auto 1fr}.layout__sidebar{position:fixed;top:0;left:0;height:100vh;width:var(--layout-sidebar-width);transform:translate(-100%);z-index:20;transition:transform var(--transition-panel-collapse)}.layout__sidebar--expanded{transform:translate(0)}.layout__sidebar--collapsed{transform:translate(-100%)}.layout__main{padding:var(--spacing-md)}.layout__header{padding:var(--spacing-sm) var(--spacing-md);min-height:56px}.layout__footer{padding:var(--spacing-sm) var(--spacing-md);min-height:40px}}@media (max-width: 480px){.layout__sidebar{width:100vw}.layout__main{padding:var(--spacing-sm)}.layout__header{padding:var(--spacing-xs) var(--spacing-sm);min-height:48px}.layout__footer{padding:var(--spacing-xs) var(--spacing-sm);min-height:36px}}[data-theme=dark] .layout{background-color:var(--color-bg-charcoal)}[data-theme=dark] .layout__sidebar{background-color:var(--color-bg-charcoal);border-right-color:var(--color-border-primary)}[data-theme=dark] .layout__main{background-color:var(--color-bg-charcoal)}[data-theme=dark] .layout__header{background-color:#202124f2;border-bottom-color:var(--color-border-primary)}[data-theme=dark] .layout__footer{background-color:var(--color-bg-charcoal);border-top-color:var(--color-border-primary)}[data-theme=dark] .layout__sidebar-toggle{background-color:var(--color-bg-charcoal);border-color:var(--color-border-primary);color:var(--color-text-secondary)}[data-theme=dark] .layout__sidebar-toggle:hover{background-color:var(--color-interactive-hover);color:var(--color-text-primary);border-color:var(--color-border-accent)}.app-content-shell{display:flex;flex-direction:column;align-items:center}.app-content-shell--embedded{box-sizing:border-box;width:100%;min-height:100%;padding:var(--layout-content-pad)}.app-content-shell--standalone{min-height:100vh;padding:var(--layout-content-pad)}.app-content-shell--centered{justify-content:center}.app-content-shell__inner{width:100%;max-width:var(--layout-content-max);display:flex;flex-direction:column;gap:var(--spacing-md)}.app-content-shell--centered .app-content-shell__inner{align-items:stretch}.app-shell{display:flex;height:100vh;width:100%;overflow:hidden;background-color:var(--color-bg-snow-white);color:var(--color-text-primary)}.app-shell__main{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;background-color:var(--color-bg-snow-white)}.app-shell__outlet{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;background-color:var(--color-bg-snow-white)}.app-shell-document-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable}.app-nav-rail{flex-shrink:0;width:var(--layout-nav-rail-width);display:flex;flex-direction:column}.app-nav-rail__primary{flex:1;display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md) var(--spacing-xs);gap:var(--spacing-md)}.app-nav-rail__footer{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md) var(--spacing-xs);gap:var(--spacing-md)}.app-nav-rail a.app-nav-item,.app-nav-rail button.app-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:auto;min-width:44px;padding:var(--spacing-xs) 0;margin:0;box-sizing:border-box;border:none;border-radius:0;background:transparent;background-color:transparent;box-shadow:none;color:var(--app-nav-text, var(--color-text-secondary));cursor:pointer;text-decoration:none;font-family:var(--font-family-primary);font-size:var(--text-meta);font-weight:var(--font-weight-medium);line-height:1.1;outline:none;transition:color var(--duration-fast) var(--easing-ease-out)}.app-nav-rail a.app-nav-item--icon-only,.app-nav-rail button.app-nav-item--icon-only{width:34px;height:34px;min-width:34px;padding:0;border-radius:var(--radius-pill);flex-direction:row}.app-nav-rail a.app-nav-item:hover,.app-nav-rail a.app-nav-item:focus,.app-nav-rail a.app-nav-item:active,.app-nav-rail button.app-nav-item:hover:not(:disabled),.app-nav-rail button.app-nav-item:focus:not(:disabled),.app-nav-rail button.app-nav-item:active:not(:disabled){background:transparent;background-color:transparent;border:none;border-bottom:none;box-shadow:none;color:var(--app-nav-text-hover, var(--color-text-primary))}.app-nav-rail a.app-nav-item:focus-visible,.app-nav-rail button.app-nav-item:focus-visible{outline:2px solid var(--app-nav-focus-ring, var(--color-interactive-focus));outline-offset:2px}.app-nav-rail a.app-nav-item--active,.app-nav-rail button.app-nav-item--active{background:transparent;background-color:transparent;border:none;color:var(--app-nav-active, var(--color-primary-electric-blue))}.app-nav-rail a.app-nav-item--active:hover,.app-nav-rail a.app-nav-item--active:focus-visible,.app-nav-rail button.app-nav-item--active:hover:not(:disabled),.app-nav-rail button.app-nav-item--active:focus-visible{background:transparent;background-color:transparent;border:none;border-bottom:none;color:var(--app-nav-active, var(--color-primary-electric-blue))}.app-nav-rail button.app-nav-item:disabled{opacity:.5;cursor:not-allowed;color:var(--color-text-muted);background-color:transparent}.app-nav-item__icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:inherit}.app-nav-item__icon svg{stroke:currentColor;color:inherit}.app-nav-item__label{font-size:inherit;font-weight:inherit;line-height:1.1;text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:inherit}.theme-toggle{display:flex;align-items:center;gap:var(--spacing-xs);transition:var(--transition-button-hover)}.theme-toggle:hover{transform:scale(1.05)}.theme-toggle-label{font-weight:var(--font-weight-medium);font-size:var(--font-size-sm)}.theme-toggle svg{transition:transform var(--duration-fast) var(--easing-ease-out)}.theme-toggle:hover svg{transform:rotate(15deg)}.theme-toggle-full-width{width:100%;justify-content:center}.toast{position:relative;width:100%;max-width:480px;background:var(--toast-bg-color);border:1px solid var(--toast-border-color);border-radius:12px;box-shadow:0 4px 12px #00000026;overflow:hidden;font-family:var(--font-family-primary, "Inter", sans-serif);color:var(--toast-text-color);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:toastSlideIn .3s cubic-bezier(.4,0,.2,1)}.toast-progress{position:absolute;top:0;left:0;right:0;height:3px;background:#fff3;overflow:hidden}.toast-progress-bar{height:100%;background:var(--toast-progress-color);transition:width linear}.toast-content{display:flex;align-items:flex-start;gap:12px;padding:8px 24px;position:relative}.toast-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;color:var(--toast-text-color)}.toast-text{flex:1;min-width:0}.toast-title{font-size:14px;font-weight:600;line-height:1.4;margin-bottom:4px;color:var(--toast-text-color)}.toast-message{font-size:13px;line-height:1.4;color:var(--toast-text-color);opacity:.9}.toast-action{background:transparent;border:1px solid currentColor;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:500;color:var(--toast-text-color);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap;flex-shrink:0}.toast-action:hover{background:#ffffff1a;transform:translateY(-1px)}.toast-action:active{transform:translateY(0)}.toast-close{background:transparent;border:none;border-radius:6px;padding:4px;color:var(--toast-text-color);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.7}.toast-close:hover{background:#ffffff1a;opacity:1;transform:scale(1.1)}.toast-close:active{transform:scale(1)}.toast-container{position:fixed;top:20px;left:calc(var(--layout-nav-rail-width, 64px) + 12px);z-index:9999;display:flex;flex-direction:column;gap:12px;pointer-events:none;align-items:flex-start}.toast-container .toast{pointer-events:auto}.notification-center{width:100%;max-width:340px;pointer-events:auto}.notification-center--minimized{max-width:none;width:auto}.toast-container--dragging{-webkit-user-select:none;user-select:none}.notification-center-minimized{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--color-border-primary);border-radius:999px;background:var(--color-bg-snow-white);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--color-text-primary);touch-action:none}.notification-center-minimized__icon{display:inline-flex;align-items:center;justify-content:center}.notification-center-minimized__badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--color-primary-electric-blue, #2563eb);color:var(--color-text-inverse);font-size:10px;font-weight:700;padding:0 5px}.notification-center-minimized.notification-center-toggle--success .notification-center-minimized__icon{color:#16a34a}.notification-center-minimized.notification-center-toggle--error .notification-center-minimized__icon{color:#dc2626}.notification-center-minimized.notification-center-toggle--warning .notification-center-minimized__icon{color:#d97706}.notification-center-minimized.notification-center-toggle--info .notification-center-minimized__icon{color:var(--color-primary-electric-blue, #2563eb)}.notification-center-summary{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:0;border:1px solid var(--color-border-primary);border-radius:16px;background:var(--color-bg-snow-white);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:10px 12px 28px;color:var(--color-text-primary)}.notification-center-summary__body{grid-column:1 / -1;grid-row:1;display:flex;align-items:center;gap:10px;min-width:0;box-sizing:border-box;padding-right:40px;touch-action:none}.notification-center button.notification-center-summary__close{position:absolute;top:8px;right:8px;box-sizing:border-box;width:22px;height:22px;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;border-radius:8px;padding:4px;margin:0;box-shadow:none;font:inherit;line-height:1;display:inline-flex;align-items:center;justify-content:center;transform:none}.notification-center button.notification-center-summary__close:hover:not(:disabled){background:var(--color-interactive-hover);color:var(--color-text-primary);border:none;box-shadow:none;transform:none}.notification-center button.notification-center-summary__expand{position:absolute;right:10px;bottom:6px;box-sizing:border-box;width:18px;height:18px;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;border-radius:8px;padding:2px;margin:0;box-shadow:none;font:inherit;line-height:1;display:inline-flex;align-items:center;justify-content:center;transform:none}.notification-center button.notification-center-summary__expand:hover:not(:disabled){background:var(--color-interactive-hover);color:var(--color-text-primary);border:none;box-shadow:none;transform:none}.notification-center-summary__body.notification-center-toggle--success .notification-center-toggle__icon{color:#16a34a}.notification-center-summary__body.notification-center-toggle--error .notification-center-toggle__icon{color:#dc2626}.notification-center-summary__body.notification-center-toggle--warning .notification-center-toggle__icon{color:#d97706}.notification-center-summary__body.notification-center-toggle--info .notification-center-toggle__icon{color:var(--color-primary-electric-blue, #2563eb)}.notification-center-toggle__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.notification-center-toggle__icon-stack{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;flex-shrink:0}.notification-center-summary__body .notification-center-toggle__badge{min-width:16px;height:16px;font-size:10px;padding:0 4px;margin-left:0}.notification-center-toggle__text{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px}.notification-center-toggle__title{font-size:12px;font-weight:700;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--color-text-primary)}.notification-center-toggle__message{font-size:12px;line-height:1.35;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-center-toggle__badge{min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--color-primary-electric-blue, #2563eb);color:var(--color-text-inverse);font-size:11px;font-weight:700;padding:0 6px;margin-left:auto;flex-shrink:0}.notification-center-panel{margin-top:8px;border:1px solid var(--color-border-secondary);border-radius:16px;background:var(--color-bg-snow-white);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);overflow:hidden;max-height:min(440px,65vh);overflow-y:auto}.notification-center-section{padding:8px 0}.notification-center-section+.notification-center-section{border-top:1px solid var(--color-border-secondary)}.notification-center-section__title{padding:0 12px 6px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted)}.notification-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;color:var(--color-text-primary)}.notification-item__icon{flex-shrink:0;margin-top:1px}.notification-item--success .notification-item__icon{color:#16a34a}.notification-item--error .notification-item__icon{color:#dc2626}.notification-item--warning .notification-item__icon{color:#d97706}.notification-item--info .notification-item__icon{color:var(--color-primary-electric-blue, #2563eb)}.notification-item__content{min-width:0;flex:1}.notification-item__header{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.notification-item__title{font-size:12px;font-weight:600;line-height:1.35;color:var(--color-text-primary)}.notification-item__time{flex-shrink:0;font-size:11px;color:var(--color-text-muted)}.notification-item__message{margin-top:2px;font-size:12px;line-height:1.4;color:var(--color-text-secondary)}.notification-center button.notification-item__close{flex-shrink:0;box-sizing:border-box;width:22px;height:22px;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;border-radius:8px;padding:4px;margin:0;box-shadow:none;font:inherit;line-height:1;display:inline-flex;align-items:center;justify-content:center;transform:none}.notification-center button.notification-item__close:hover:not(:disabled){background:var(--color-interactive-hover);color:var(--color-text-primary);border:none;box-shadow:none;transform:none}.toast-history{width:100%;max-width:320px;pointer-events:auto}.toast-history-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--color-border-primary);border-radius:999px;background:var(--color-bg-snow-white);box-shadow:var(--shadow-base);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:8px 12px;color:var(--color-text-primary);cursor:pointer;transition:box-shadow .2s ease,transform .2s ease}.toast-history-toggle:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.toast-history-toggle__label,.toast-history-toggle__meta{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600}.toast-history-panel{margin-top:8px;border:1px solid var(--color-border-secondary);border-radius:14px;background:var(--color-bg-snow-white);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);overflow:hidden;max-height:min(420px,60vh);overflow-y:auto}.toast-history-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-bottom:1px solid var(--color-border-secondary);color:var(--color-text-primary)}.toast-history-item:last-child{border-bottom:none}.toast-history-item__icon{flex-shrink:0;margin-top:1px}.toast-history-item--success .toast-history-item__icon{color:#16a34a}.toast-history-item--error .toast-history-item__icon{color:#dc2626}.toast-history-item--warning .toast-history-item__icon{color:#d97706}.toast-history-item--info .toast-history-item__icon{color:var(--color-primary-electric-blue, #2563eb)}.toast-history-item__content{min-width:0;flex:1}.toast-history-item__header{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.toast-history-item__title{font-size:12px;font-weight:600;line-height:1.4;color:var(--color-text-primary)}.toast-history-item__time{flex-shrink:0;font-size:11px;color:var(--color-text-muted)}.toast-history-item__message{margin-top:2px;font-size:12px;line-height:1.4;color:var(--color-text-secondary)}@media (max-width: 768px){.toast{max-width:calc(100vw - 40px);margin:0 20px}.toast-container{top:10px;left:calc(var(--layout-nav-rail-width, 64px) + 12px);right:auto;align-items:stretch}.toast-content{padding:6px 20px}.toast-title{font-size:13px}.toast-message{font-size:12px}.toast-history,.notification-center{max-width:none}}@media (prefers-color-scheme: dark){.toast{box-shadow:0 4px 12px #0000004d}}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100%) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes toastSlideOut{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(100%) scale(.95)}}.toast.toast-exiting{animation:toastSlideOut .25s cubic-bezier(.4,0,.2,1) forwards}.toast:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0003;transition:all .3s cubic-bezier(.4,0,.2,1)}.toast-action:focus-visible,.toast-close:focus-visible,.notification-center button.notification-center-summary__close:focus-visible,.notification-center button.notification-center-summary__expand:focus-visible,.notification-center button.notification-item__close:focus-visible,.notification-center-minimized:focus-visible{outline:2px solid currentColor;outline-offset:2px}@media (prefers-contrast: high){.toast{border-width:2px}.toast-progress{height:4px}}@media (prefers-reduced-motion: reduce){.toast,.toast-action,.toast-close{animation:none;transition:none}.toast:hover{transform:none}}.tutorial-card{background:var(--color-bg-snow-white);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-lg);padding:var(--component-padding-md);width:280px;box-shadow:var(--shadow-lg);z-index:10000;animation:tutorial-card-fade-in .3s var(--easing-ease-out);position:fixed;pointer-events:auto;color:var(--color-text-primary);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}[data-theme=dark] .tutorial-card{background:#1a1a1ad9;border-color:var(--color-border-primary);color:var(--color-text-primary)}[data-theme=light] .tutorial-card{background:#fafafae6}.tutorial-card__close{position:absolute;top:8px;right:8px;background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-base);transition:all var(--duration-fast) var(--easing-ease-out)}.tutorial-card__close:hover{background:var(--color-interactive-hover);color:var(--color-text-primary)}.tutorial-card__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)!important;margin:0 0 8px;padding-right:24px;font-family:var(--font-family-primary);line-height:var(--line-height-tight)}.tutorial-card__content{font-size:var(--font-size-xs);color:var(--color-text-secondary)!important;margin:0;line-height:var(--line-height-normal);font-family:var(--font-family-primary)}.tutorial-card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding-top:10px;border-top:1px solid var(--color-border-secondary);gap:8px}.tutorial-card__footer-right{display:flex;align-items:center;gap:10px}.tutorial-card__step{font-size:var(--font-size-xs);color:var(--color-text-muted);font-family:var(--font-family-primary)}.tutorial-card__skip{background:transparent;border:none;color:var(--color-text-muted);font-size:var(--font-size-xs);font-family:var(--font-family-primary);cursor:pointer;padding:4px 8px;border-radius:var(--border-radius-base);transition:all var(--duration-fast) var(--easing-ease-out)}.tutorial-card__skip:hover{color:var(--color-text-secondary);background:var(--color-interactive-hover)}.tutorial-card__next{display:flex;align-items:center;gap:2px;background:var(--color-primary-electric-blue);border:none;color:var(--color-text-inverse);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);font-family:var(--font-family-primary);cursor:pointer;padding:5px 10px;border-radius:var(--border-radius-base);transition:all var(--duration-fast) var(--easing-ease-out)}.tutorial-card__next:hover{background:var(--color-primary-deep-indigo)}@keyframes tutorial-card-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.oauth-provider-icon .oauth-icon-mark{fill:currentColor;transition:fill .15s ease}.oauth-provider-row{display:grid;gap:var(--spacing-sm);width:100%}.oauth-provider-btn.btn--icon-only{width:100%;min-width:0;aspect-ratio:auto;height:2.75rem}.oauth-provider-btn--google .oauth-provider-icon .oauth-icon-mark,.oauth-provider-btn--github .oauth-provider-icon .oauth-icon-mark,.oauth-provider-btn--microsoft .oauth-provider-icon .oauth-icon-mark{fill:currentColor}.oauth-provider-btn--google:hover:not(:disabled) .oauth-icon-mark--g-blue{fill:#4285f4}.oauth-provider-btn--google:hover:not(:disabled) .oauth-icon-mark--g-green{fill:#34a853}.oauth-provider-btn--google:hover:not(:disabled) .oauth-icon-mark--g-yellow{fill:#fbbc05}.oauth-provider-btn--google:hover:not(:disabled) .oauth-icon-mark--g-red{fill:#ea4335}.oauth-provider-btn--github:hover:not(:disabled) .oauth-icon-mark--github{fill:#24292f}[data-theme=dark] .oauth-provider-btn--github:hover:not(:disabled) .oauth-icon-mark--github{fill:#f0f6fc}.oauth-provider-btn--microsoft:hover:not(:disabled) .oauth-icon-mark--ms-red{fill:#f25022}.oauth-provider-btn--microsoft:hover:not(:disabled) .oauth-icon-mark--ms-green{fill:#7fba00}.oauth-provider-btn--microsoft:hover:not(:disabled) .oauth-icon-mark--ms-blue{fill:#00a4ef}.oauth-provider-btn--microsoft:hover:not(:disabled) .oauth-icon-mark--ms-yellow{fill:#ffb900}.feedback-dialog{max-width:560px}.feedback-dialog__textarea{width:100%;min-height:128px;resize:vertical;box-sizing:border-box;font-family:var(--font-family-primary);font-size:var(--font-size-sm);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-snow-white);border:1px solid var(--color-border-primary);border-radius:var(--radius-control);padding:var(--spacing-md);outline:none;transition:border-color var(--duration-fast) var(--easing-ease-out),box-shadow var(--duration-fast) var(--easing-ease-out)}.feedback-dialog__textarea::placeholder{color:var(--color-text-muted);font-weight:var(--font-weight-normal)}.feedback-dialog__textarea:focus{border-color:var(--color-interactive-focus);box-shadow:var(--shadow-focus-primary)}.feedback-dialog__rating-controls{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);width:100%}.feedback-dialog__stars{display:flex;justify-content:center;align-items:center;gap:var(--spacing-xs);width:100%;padding:var(--spacing-xs) 0;background:transparent;box-shadow:none;border-radius:0}button.feedback-dialog__star-button,button.feedback-dialog__star-button:hover:not(:disabled),button.feedback-dialog__star-button:focus:not(:focus-visible),button.feedback-dialog__star-button:active:not(:disabled),button.feedback-dialog__star-button:disabled{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;padding:0;margin:0;border:none!important;background:transparent!important;box-shadow:none!important;cursor:pointer;line-height:0;color:var(--color-text-muted);opacity:.55;transform:none;transition:color var(--duration-fast) var(--easing-ease-out),opacity var(--duration-fast) var(--easing-ease-out)}button.feedback-dialog__star-button--active,button.feedback-dialog__star-button:hover:not(:disabled){color:var(--color-primary-electric-blue);opacity:1}button.feedback-dialog__star-button:focus-visible{outline:2px solid var(--color-interactive-focus);outline-offset:2px;border-radius:var(--radius-control)}button.feedback-dialog__star-button:disabled{cursor:not-allowed;opacity:.35}.feedback-dialog__star-icon{fill:currentColor;stroke:none}button.feedback-dialog__clear-rating,button.feedback-dialog__clear-rating:hover:not(:disabled),button.feedback-dialog__clear-rating:focus:not(:focus-visible),button.feedback-dialog__clear-rating:disabled{margin:0;padding:0;border:none!important;background:none!important;box-shadow:none!important;cursor:pointer;font-size:var(--font-size-xs);font-family:var(--font-family-primary);font-weight:var(--font-weight-normal);color:var(--color-text-muted);text-decoration:underline;text-underline-offset:2px;transform:none}button.feedback-dialog__clear-rating:hover:not(:disabled){color:var(--color-text-secondary)}button.feedback-dialog__clear-rating:disabled{cursor:not-allowed;opacity:.5}.draggable-panel-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000040;z-index:9999;display:flex;align-items:center;justify-content:center}.draggable-panel-shell{display:flex;flex-direction:column;gap:var(--spacing-md);position:relative}.draggable-panel-shell--anchored{position:absolute;z-index:10}.draggable-panel-shell.confirmation-dialog{--draggable-panel-inset-top: var(--spacing-xl);--draggable-panel-inset-x: var(--spacing-xl)}.draggable-panel-shell.field-scroll-container{--draggable-panel-inset-top: 24px;--draggable-panel-inset-x: 24px}@media (max-width: 768px){.draggable-panel-shell.confirmation-dialog{--draggable-panel-inset-top: var(--spacing-lg);--draggable-panel-inset-x: var(--spacing-lg)}}.draggable-panel-header{position:relative;flex-shrink:0;margin-top:calc(-1 * var(--draggable-panel-inset-top, 0px));margin-left:calc(-1 * var(--draggable-panel-inset-x, 0px));margin-right:calc(-1 * var(--draggable-panel-inset-x, 0px));width:calc(100% + 2 * var(--draggable-panel-inset-x, 0px));box-sizing:border-box;min-height:calc(var(--draggable-panel-inset-top, 0px) + 2.5rem)}.draggable-panel-drag-handle{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0}.draggable-panel-header--dragging .draggable-panel-drag-handle{cursor:grabbing}.draggable-panel-header-content{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding-top:var(--draggable-panel-inset-top, 0px);padding-left:var(--draggable-panel-inset-x, 0px);padding-right:var(--draggable-panel-inset-x, 0px);padding-bottom:var(--spacing-md);pointer-events:none}.draggable-panel-header-title{flex:1;min-width:0;margin:0}.draggable-panel-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;background:none;border:none;padding:var(--spacing-xs);border-radius:var(--border-radius-md);color:var(--color-text-secondary);cursor:pointer;pointer-events:auto;transition:color .2s ease,background .2s ease}.draggable-panel-close:hover{color:var(--color-text-primary);background:var(--color-border-secondary)}.draggable-panel-close:disabled{cursor:not-allowed;opacity:.5}.confirmation-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000040;z-index:9999;display:flex;align-items:center;justify-content:center}.confirmation-dialog{background:var(--color-bg-snow-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);padding:var(--spacing-xl);min-width:320px;max-width:90vw;color:var(--color-text-primary);display:flex;flex-direction:column;gap:var(--spacing-md);border:1px solid var(--color-border-primary)}.confirmation-message{font-size:var(--font-size-lg);margin-bottom:var(--spacing-sm);color:var(--color-text-primary);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal)}.confirmation-checkbox{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-primary);cursor:pointer;-webkit-user-select:none;user-select:none}.confirmation-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary-electric-blue);cursor:pointer}.confirmation-checkbox-label{font-weight:var(--font-weight-normal);color:var(--color-text-secondary)}.confirmation-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}@media (max-width: 768px){.confirmation-dialog{margin:var(--spacing-md);padding:var(--spacing-lg);min-width:auto;width:calc(100vw - var(--spacing-md) * 2)}.confirmation-message{font-size:var(--font-size-base)}.confirmation-actions{flex-direction:column;align-items:stretch}}.planner-connection-hint{display:block;margin:0;padding:0;border:none!important;background:transparent!important;box-shadow:none!important;outline:none;font-size:var(--font-size-xs);font-family:var(--font-family-primary);line-height:var(--line-height-snug);text-align:center}.planner-connection-hint--neutral{color:var(--color-text-muted)}.planner-connection-hint--error{color:var(--color-error)}button.settings-icon-btn,button.settings-icon-btn:hover,button.settings-icon-btn:focus,button.settings-icon-btn:active,button.settings-icon-btn:disabled{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:34px;height:34px;padding:0;margin:0;border:none!important;background:transparent!important;box-shadow:none!important;border-radius:var(--radius-control);font:inherit;line-height:1;cursor:pointer;color:var(--color-text-muted);transition:color .15s ease;transform:none}button.settings-icon-btn:focus{outline:none}button.settings-icon-btn:focus-visible{outline:2px solid var(--color-interactive-focus);outline-offset:2px}button.settings-icon-btn:disabled,button.settings-icon-btn[aria-disabled=true]{opacity:1;cursor:not-allowed}button.settings-icon-btn:not(.settings-icon-btn--deny):not(.settings-icon-btn--danger):hover:not(:disabled):not([aria-disabled=true]){color:var(--color-primary-electric-blue)}button.settings-icon-btn--confirm{color:var(--color-primary-electric-blue)}button.settings-icon-btn--confirm.settings-icon-btn--inactive{color:var(--color-primary-electric-blue);opacity:.55;cursor:not-allowed}button.settings-icon-btn--deny{color:var(--color-text-muted)}button.settings-icon-btn--deny:hover:not(:disabled):not([aria-disabled=true]){color:var(--color-text-secondary)}button.settings-icon-btn--danger{color:var(--color-text-muted)}button.settings-icon-btn--danger:hover:not(:disabled):not([aria-disabled=true]){color:var(--color-error)}button.settings-text-link,button.settings-text-link:hover,button.settings-text-link:focus,button.settings-text-link:active{padding:0;margin:0;border:none!important;background:transparent!important;box-shadow:none!important;font:inherit;font-size:var(--font-size-xs);font-family:var(--font-family-primary);color:var(--color-text-muted);text-decoration:underline;text-underline-offset:2px;cursor:pointer;transform:none}button.settings-text-link:hover:not(:disabled){color:var(--color-text-secondary)}button.settings-text-link:focus-visible{outline:2px solid var(--color-interactive-focus);outline-offset:2px}.planner-settings-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;background:#00000040;display:flex;justify-content:flex-end}.planner-settings-panel{width:min(360px,100vw);height:100%;display:flex;flex-direction:column;background:var(--color-bg-snow-white);border-left:1px solid var(--color-border-primary);box-shadow:var(--shadow-xl)}.planner-settings-panel__header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border-secondary)}.planner-settings-panel__body{flex:1;min-height:0;overflow-y:auto;padding:var(--spacing-md) var(--spacing-lg)}.dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000040;z-index:9999;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg)}.dialog-shell{background:var(--color-bg-snow-white);border-radius:var(--radius-surface);border:1px solid var(--color-border-primary);box-shadow:var(--shadow-xl);padding:var(--spacing-lg);width:100%;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;gap:var(--spacing-md);color:var(--color-text-primary)}.dialog-shell__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-md)}.dialog-shell__title-block{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:0}.dialog-shell__title{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);font-family:var(--font-family-primary);color:var(--color-text-primary);line-height:var(--line-height-tight)}.dialog-shell__subtitle{margin:0;font-size:var(--font-size-sm);color:var(--color-text-muted);font-family:var(--font-family-primary);line-height:var(--line-height-normal)}button.dialog-shell__close,button.dialog-shell__close:hover:not(:disabled),button.dialog-shell__close:focus:not(:focus-visible),button.dialog-shell__close:active:not(:disabled),button.dialog-shell__close:disabled{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:34px;height:34px;min-width:34px;min-height:34px;padding:0;margin:0;border:none!important;background:transparent!important;box-shadow:none!important;border-radius:var(--radius-control);font:inherit;line-height:1;color:var(--color-text-muted);cursor:pointer;transform:none;transition:color .15s ease}button.dialog-shell__close:hover:not(:disabled){color:var(--color-primary-electric-blue)}button.dialog-shell__close:focus-visible{outline:2px solid var(--color-interactive-focus);outline-offset:2px}button.dialog-shell__close:disabled{cursor:not-allowed;opacity:.5}.dialog-form-body{display:flex;flex-direction:column;box-sizing:border-box}.dialog-form-body>*+*{margin-top:var(--spacing-lg)}.dialog-form-body>.dialog-form-body__attached{margin-top:var(--spacing-sm)}.dialog-shell form{display:flex;flex-direction:column;gap:var(--spacing-md)}.dialog-shell__actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end}@media (max-width: 768px){.dialog-shell{margin:var(--spacing-md);padding:var(--spacing-md);width:calc(100vw - var(--spacing-md) * 2)}.dialog-shell__actions{flex-direction:column;align-items:stretch}}.password-change-dialog{max-width:560px}.connected-account-badge{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:2.25rem;height:2.25rem;border-radius:var(--radius-control, 8px);color:var(--color-text-muted)}.connected-account-badge--linked.connected-account-badge--google{background:#4285f41a}.connected-account-badge--linked.connected-account-badge--github{background:#24292f1a}[data-theme=dark] .connected-account-badge--linked.connected-account-badge--github{background:#f0f6fc1a}.connected-account-badge--linked.connected-account-badge--microsoft{background:#00a4ef1a}.connected-account-badge--linked .oauth-icon-mark--g-blue{fill:#4285f4}.connected-account-badge--linked .oauth-icon-mark--g-green{fill:#34a853}.connected-account-badge--linked .oauth-icon-mark--g-yellow{fill:#fbbc05}.connected-account-badge--linked .oauth-icon-mark--g-red{fill:#ea4335}.connected-account-badge--linked .oauth-icon-mark--github{fill:#24292f}[data-theme=dark] .connected-account-badge--linked .oauth-icon-mark--github{fill:#f0f6fc}.connected-account-badge--linked .oauth-icon-mark--ms-red{fill:#f25022}.connected-account-badge--linked .oauth-icon-mark--ms-green{fill:#7fba00}.connected-account-badge--linked .oauth-icon-mark--ms-blue{fill:#00a4ef}.connected-account-badge--linked .oauth-icon-mark--ms-yellow{fill:#ffb900}.saved-model-summary{margin:0;min-width:0;font-size:var(--font-size-xs);line-height:var(--line-height-snug);color:var(--color-text-secondary);font-family:var(--font-family-primary)}.saved-model-summary--clamped{max-height:5.5rem;overflow:hidden}.saved-model-summary p:last-child{margin-bottom:0}.graph-toolbar{position:fixed;left:16px;top:50%;transform:translateY(-50%);z-index:1000;height:auto;max-height:90vh}.graph-toolbar-nav{display:flex;flex-direction:column;height:100%;background-color:var(--color-bg-snow-white);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow:hidden;transition:all var(--duration-fast) var(--easing-ease-out)}.graph-toolbar-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);border-bottom:1px solid var(--color-border-primary)}.graph-toolbar-logo{display:flex;align-items:center;justify-content:center;overflow:hidden;transition:all var(--duration-fast) var(--easing-ease-out)}.graph-toolbar-logo--expanded{width:32px}.graph-toolbar-toggle{padding:var(--spacing-xs)!important;border-radius:var(--border-radius-base)!important;background-color:var(--color-interactive-hover)!important;color:var(--color-text-primary)!important;border:none!important;min-width:auto!important;min-height:auto!important}.graph-toolbar-toggle:hover{background-color:var(--color-interactive-active)!important;transform:translateY(-1px)!important;box-shadow:var(--shadow-sm)!important}.graph-toolbar-content{flex:1;padding:var(--spacing-sm);overflow-y:auto;display:flex;flex-direction:column;gap:var(--spacing-sm)}.toolbar-section{display:flex;flex-direction:column;gap:var(--spacing-xs)}.toolbar-section-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);padding:var(--spacing-xs) var(--spacing-sm);margin-bottom:var(--spacing-xs)}.toolbar-section-items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.toolbar-item{position:relative;display:flex;align-items:center;justify-content:center;padding:var(--spacing-sm);font-weight:var(--font-weight-medium);border-radius:var(--border-radius-base);cursor:pointer;transition:all var(--duration-fast) var(--easing-ease-out);color:var(--color-text-primary);background-color:transparent;border:1px solid transparent;min-width:44px}.toolbar-item:hover:not(.toolbar-item--disabled){background-color:var(--color-interactive-hover);color:var(--color-text-primary);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.toolbar-item--active{background-color:var(--color-primary-electric-blue);color:var(--color-text-inverse);border-color:var(--color-primary-electric-blue);box-shadow:var(--shadow-sm)}.toolbar-item--active:hover{background-color:var(--color-primary-deep-indigo);border-color:var(--color-primary-deep-indigo);transform:translateY(-1px);box-shadow:var(--shadow-md)}.toolbar-item--disabled{opacity:.5;cursor:not-allowed;color:var(--color-text-muted)}.toolbar-item--disabled:hover{transform:none;box-shadow:none;background-color:transparent}.toolbar-item--stop-generation{border:1px solid var(--color-semantic-error)!important;background-color:#ff6b6b1a!important;box-shadow:0 0 0 1px #ff6b6b4d!important}.toolbar-item--stop-generation:hover{background-color:#ff6b6b33!important;box-shadow:0 0 0 2px #ff6b6b66!important;transform:translateY(-1px)!important}.toolbar-item-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:20px;height:20px;transition:transform var(--duration-fast) var(--easing-ease-out)}.toolbar-item:hover .toolbar-item-icon{transform:scale(1.1)}.toolbar-item-text{overflow:hidden;transition:opacity var(--duration-fast) var(--easing-ease-out),visibility var(--duration-fast) var(--easing-ease-out),width var(--duration-fast) var(--easing-ease-out),margin-left var(--duration-fast) var(--easing-ease-out);white-space:nowrap;margin-left:0;font-size:var(--font-size-sm);width:0;opacity:0;visibility:hidden;flex-shrink:0}.toolbar-item-text--expanded{width:120px;opacity:1;visibility:visible;margin-left:var(--spacing-sm)}.graph-toolbar-footer{border-top:1px solid var(--color-border-primary);padding:var(--spacing-sm)}@media (max-width: 768px){.graph-toolbar{left:8px;right:8px;top:auto;bottom:16px;transform:none;max-height:60vh}.graph-toolbar-nav{flex-direction:row;align-items:center;padding:var(--spacing-sm)}.graph-toolbar-header{border-bottom:none;border-right:1px solid var(--color-border-primary);padding:var(--spacing-sm)}.graph-toolbar-content{flex-direction:row;padding:var(--spacing-sm);overflow-x:auto;overflow-y:hidden}.toolbar-section,.toolbar-section-items{flex-direction:row;gap:var(--spacing-xs)}.toolbar-item{flex-direction:column;padding:var(--spacing-xs);text-align:center;min-width:60px}.toolbar-item-text{margin-left:0!important;margin-top:var(--spacing-xs)!important;font-size:var(--font-size-xs)!important;width:0!important;opacity:0!important;visibility:hidden!important;display:none!important}.toolbar-item-text--expanded{width:auto!important;opacity:1!important;visibility:visible!important;display:inline!important}.graph-toolbar-footer{border-top:none;border-left:1px solid var(--color-border-primary);padding:var(--spacing-sm)}}.graph-toolbar-content::-webkit-scrollbar{width:4px}.graph-toolbar-content::-webkit-scrollbar-track{background:transparent}.graph-toolbar-content::-webkit-scrollbar-thumb{background:var(--color-border-primary);border-radius:var(--border-radius-base)}.graph-toolbar-content::-webkit-scrollbar-thumb:hover{background:var(--color-border-accent)}.toolbar-item:focus{outline:2px solid var(--color-interactive-focus);outline-offset:2px}.graph-toolbar-toggle:focus{outline:2px solid var(--color-interactive-focus);outline-offset:2px}.metrics-panel{overflow:hidden}.metrics-panel__content{position:relative;isolation:isolate;overflow:hidden;min-height:0}.metrics-panel__loop-type-select{position:relative;z-index:20}.metrics-panel__dropdown{max-height:140px;overflow-y:auto;z-index:30}.metrics-panel__loop-list{padding-right:4px}.metrics-panel__scrollbar{scrollbar-width:thin;scrollbar-color:var(--color-border-accent) transparent}.metrics-panel__scrollbar::-webkit-scrollbar{width:8px}.metrics-panel__scrollbar::-webkit-scrollbar-track{background:transparent}.metrics-panel__scrollbar::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--color-border-accent) 70%,transparent);border-radius:999px;border:2px solid transparent;background-clip:padding-box}.metrics-panel__scrollbar::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--color-primary-electric-blue) 70%,transparent)}:root{--color-primary-deep-indigo: #1B1F3B;--color-primary-electric-blue: #4C9AFF;--color-accent-aqua-cyan: #00FFC2;--color-accent-soft-coral: #FF6B6B;--color-bg-snow-white: #FAFAFA;--color-bg-charcoal: #202124;--color-neutral-cool-gray: #C3C8D0;--color-neutral-light-slate: #5F6A7D;--color-success: #00FFC2;--color-error: #FF6B6B;--color-error-bg: rgba(255, 107, 107, .1);--color-warning: #FFB800;--color-info: #4C9AFF;--color-text-primary: #0F1419;--color-text-secondary: #374151;--color-text-inverse: #FFFFFF;--color-text-muted: #6B7280;--color-border-primary: #C3C8D0;--color-border-secondary: #E5E7EB;--color-border-accent: #4C9AFF;--color-interactive-hover: #F3F4F6;--color-interactive-active: #E5E7EB;--color-interactive-focus: #4C9AFF;--color-interactive-disabled: #F9FAFB;--font-family-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-secondary: "Space Grotesk", "Inter", monospace;--font-family-mono: "JetBrains Mono", "Fira Code", "Consolas", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-size-6xl: 3.75rem;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-none: 1;--line-height-tight: 1.25;--line-height-snug: 1.375;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--line-height-loose: 2;--letter-spacing-tighter: -.05em;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0em;--letter-spacing-wide: .025em;--letter-spacing-wider: .05em;--letter-spacing-widest: .1em;--spacing-base: .25rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--spacing-4xl: 6rem;--spacing-5xl: 8rem;--component-padding-xs: .5rem;--component-padding-sm: .75rem;--component-padding-md: 1rem;--component-padding-lg: 1.5rem;--component-padding-xl: 2rem;--layout-container-padding: 1.5rem;--layout-container-max-width: 1200px;--layout-section-padding: 2rem;--layout-section-margin: 1rem;--layout-sidebar-width: 280px;--layout-sidebar-padding: 1.5rem;--border-radius-none: 0;--border-radius-sm: .125rem;--border-radius-base: .25rem;--border-radius-md: .375rem;--border-radius-lg: .5rem;--border-radius-xl: .75rem;--border-radius-2xl: 1rem;--border-radius-full: 9999px;--shadow-none: none;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-base: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--shadow-focus-primary: 0 0 0 3px rgba(76, 154, 255, .1);--shadow-focus-error: 0 0 0 3px rgba(255, 107, 107, .1);--shadow-focus-success: 0 0 0 3px rgba(0, 255, 194, .1);--shadow-focus-warning: 0 0 0 3px rgba(255, 184, 0, .1);--easing-linear: linear;--easing-ease-in: cubic-bezier(.4, 0, 1, 1);--easing-ease-out: cubic-bezier(0, 0, .2, 1);--easing-ease-in-out: cubic-bezier(.4, 0, .2, 1);--easing-bounce: cubic-bezier(.68, -.55, .265, 1.55);--duration-instant: 0ms;--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .35s;--duration-slower: .5s;--transition-button-hover: all .15s cubic-bezier(.4, 0, .2, 1);--transition-button-active: all .1s cubic-bezier(.4, 0, .2, 1);--transition-input-focus: all .15s cubic-bezier(.4, 0, .2, 1);--transition-panel-expand: height .3s cubic-bezier(.4, 0, .2, 1);--transition-panel-collapse: height .25s cubic-bezier(.4, 0, .2, 1);--transition-modal-enter: all .2s cubic-bezier(.4, 0, .2, 1);--transition-modal-exit: all .15s cubic-bezier(.4, 0, .2, 1);--transition-page-enter: all .3s cubic-bezier(.4, 0, .2, 1);--transition-page-exit: all .25s cubic-bezier(.4, 0, .2, 1);--transition-loading-spin: transform 1s linear infinite;--transition-loading-pulse: opacity 1.5s ease-in-out infinite;--radius-info: var(--border-radius-md);--radius-control: var(--border-radius-lg);--radius-surface: var(--border-radius-xl);--radius-pill: var(--border-radius-full);--text-meta: var(--font-size-xs);--text-ui: var(--font-size-sm);--layout-content-max: 1080px;--layout-content-pad: 1rem;--layout-auth-max: 560px;--layout-nav-rail-width: 64px;--space-field-gap: var(--spacing-sm);--space-section-gap: var(--spacing-md);--space-surface-pad: var(--spacing-md)}[data-theme=dark]{--color-bg-snow-white: #1A1A1A;--color-bg-charcoal: #FAFAFA;--color-text-primary: #FFFFFF;--color-text-secondary: #E5E7EB;--color-text-inverse: #0F1419;--color-text-muted: #9CA3AF;--color-border-primary: #4B5563;--color-border-secondary: #374151;--color-interactive-hover: #2D3748;--color-interactive-active: #4A5568;--color-interactive-disabled: #2D3748;--color-error-bg: rgba(255, 107, 107, .15);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-base: 0 1px 3px 0 rgba(0, 0, 0, .4), 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -1px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .4), 0 4px 6px -2px rgba(0, 0, 0, .3);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .4), 0 10px 10px -5px rgba(0, 0, 0, .3);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .5)}.judge-mode-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000040;z-index:9999;display:flex;align-items:center;justify-content:center}.judge-mode-dialog{background:var(--color-bg-snow-white);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);color:var(--color-text-primary);display:flex;flex-direction:column;gap:var(--spacing-lg);max-width:420px;min-width:340px;padding:var(--spacing-xl)}.judge-mode-header{display:flex;flex-direction:column;gap:var(--spacing-sm)}.judge-mode-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin:0}.judge-mode-description{color:var(--color-text-secondary);line-height:var(--line-height-normal);margin:0}.judge-mode-actions{display:flex;flex-direction:column;gap:var(--spacing-sm)}.judge-mode-footer{display:flex;justify-content:flex-end}@media (max-width: 768px){.judge-mode-dialog{margin:var(--spacing-md);min-width:auto;width:calc(100vw - var(--spacing-md) * 2)}}.field-scroll-container::-webkit-scrollbar{width:4px}.field-scroll-container::-webkit-scrollbar-track{background:transparent}.field-scroll-container::-webkit-scrollbar-thumb{background:var(--color-border-primary);border-radius:var(--border-radius-base)}.field-scroll-container::-webkit-scrollbar-thumb:hover{background:var(--color-border-accent)}.field-scroll-container{scrollbar-width:thin;scrollbar-color:var(--color-border-primary) transparent}.citation-scroll-container::-webkit-scrollbar{width:4px}.citation-scroll-container::-webkit-scrollbar-track{background:transparent}.citation-scroll-container::-webkit-scrollbar-thumb{background:var(--color-border-primary);border-radius:var(--border-radius-base)}.citation-scroll-container::-webkit-scrollbar-thumb:hover{background:var(--color-border-accent)}.citation-scroll-container{scrollbar-width:thin;scrollbar-color:var(--color-border-primary) transparent}.graph-generation-progress-bar{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:1001;width:min(420px,calc(100% - 24px));padding:10px 14px;border-radius:var(--border-radius-md, 8px);border:1px solid var(--color-border-primary);background-color:var(--color-bg-snow-white);box-shadow:0 4px 16px #0000001f;pointer-events:none}.graph-generation-progress-bar__label{margin:0 0 8px;font-size:13px;line-height:1.35;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.graph-generation-progress-bar__track{width:100%;height:6px;border-radius:999px;background-color:var(--color-border-primary);overflow:hidden}.graph-generation-progress-bar__fill{height:100%;border-radius:inherit;background-color:var(--color-accent-primary, #2563eb);transition:width .2s ease,background-color .2s ease}.graph-generation-progress-bar__fill--warning{background-color:var(--color-warning)}.graph-generation-progress-bar__fill--error{background-color:var(--color-error)}
