@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:var(--font-sans);--font-mono:var(--font-mono);--spacing:.25rem;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.underline{text-decoration-line:underline}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--xds-primary:#7c47ca;--xds-primary-hover:#6a3ab5;--xds-primary-pressed:#4f2b85;--xds-secondary:#b49adb;--xds-light:#e5daef;--xds-yellow:#f5c87b;--xds-green:#82d09e;--xds-blue:#7eb8f0;--xds-pink:#ee9a9a;--bg:#fafaf8;--bg-subtle:#f3f1ec;--surface:#fff;--surface-elevated:#fff;--surface-hover:#f6f4ef;--surface-active:var(--xds-light);--ink:#0a0a0a;--ink-muted:#5a5a58;--ink-faint:#9a9a96;--ink-on-primary:#fff;--border:#e7e4dc;--border-strong:#d2cec4;--border-focus:var(--xds-primary);--accent:var(--xds-primary);--accent-soft:var(--xds-light);--accent-text:var(--xds-primary-pressed);--danger:#c43a26;--danger-soft:#fbe7e2;--danger-hover:#a83a3a;--success:#1f8a4c;--success-soft:#e3f1e5;--font-sans:var(--font-roboto), -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body:var(--font-roboto), -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:var(--font-roboto-mono), ui-monospace, "SF Mono", Menlo, monospace;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--s-12:48px;--s-16:64px;--s-20:80px;--r-sm:4px;--r-md:8px;--r-lg:12px;--r-xl:18px;--r-2xl:28px;--r-full:9999px;--shadow-xs:0 1px 0 #0a0a0a0a, 0 1px 2px #0a0a0a0a;--shadow-sm:0 1px 2px #0a0a0a0d, 0 2px 8px #0a0a0a0a;--shadow-md:0 4px 12px #0a0a0a14, 0 1px 3px #0a0a0a0f;--shadow-lg:0 18px 40px #0a0a0a1f, 0 2px 6px #0a0a0a0f;--shadow-focus:0 0 0 3px #7d59ff38;--t-fast:.12s cubic-bezier(.4, 0, .2, 1);--t-base:.22s cubic-bezier(.4, 0, .2, 1);--t-slow:.46s cubic-bezier(.16, 1, .3, 1);--sidebar-w:300px;--output-w:400px;--header-h:64px;--composer-h:92px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}[data-theme-resolved=dark]{--bg:#0e0d12;--bg-subtle:#15141a;--surface:#1a1922;--surface-elevated:#20202c;--surface-hover:#25243099;--surface-active:#2a1d5866;--ink:#f4f3ef;--ink-muted:#a4a3a0;--ink-faint:#6a6968;--border:#2a2934;--border-strong:#3a3947;--accent:#9a7dff;--accent-soft:#2a1d5866;--accent-text:#c4b3ff;--shadow-xs:0 1px 0 #0006, 0 1px 2px #0000004d;--shadow-sm:0 1px 2px #0006, 0 2px 8px #0000004d;--shadow-md:0 4px 12px #00000080, 0 1px 3px #0006;--shadow-lg:0 18px 40px #0009, 0 2px 6px #0006;--shadow-focus:0 0 0 3px #9a7dff52;--danger:#ff8a72;--danger-soft:#c43a2638}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;height:100%;font-size:15px;overflow:hidden}body{font-family:var(--font-body);color:var(--ink);background:var(--bg);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(circle at 100% 0,#7d59ff0a 0%,#0000 35%),radial-gradient(circle at 0 100%,#baa8f00d 0%,#0000 40%);background-attachment:fixed;height:100%;margin:0;font-size:.95rem;font-weight:400;line-height:1.5;overflow:hidden}[data-theme-resolved=dark] body{background-image:radial-gradient(circle at 100% 0,#7d59ff1a 0%,#0000 35%),radial-gradient(circle at 0 100%,#7d59ff0f 0%,#0000 40%)}:focus-visible{box-shadow:var(--shadow-focus);border-radius:var(--r-md);outline:none}::selection{background:var(--xds-primary);color:#fff}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--r-full);border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--ink-faint)}h1,h2,h3{font-family:var(--font-sans);letter-spacing:-.02em;color:var(--ink);font-weight:700;line-height:1.08}h1{letter-spacing:-.03em;font-size:clamp(2.2rem,4.6vw,3.4rem)}h2{letter-spacing:-.025em;font-size:clamp(1.5rem,2.6vw,2rem)}h3{letter-spacing:-.015em;font-size:1.15rem;font-weight:500;line-height:1.25}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulseDot{0%,to{opacity:.3;transform:scale(.85)}50%{opacity:1;transform:scale(1.1)}}@keyframes shimmer{0%,to{transform:translate(-100%)}50%{transform:translate(100%)}}@keyframes skeleton-sweep{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg, var(--surface) 0%, var(--surface-hover) 25%, var(--ink-faint) 50%, var(--surface-hover) 75%, var(--surface) 100%);display:inline-block}@supports (color:color-mix(in lab, red, red)){.skeleton{background:linear-gradient(90deg, var(--surface) 0%, var(--surface-hover) 25%, color-mix(in oklab, var(--ink-faint) 30%, var(--surface-hover)) 50%, var(--surface-hover) 75%, var(--surface) 100%)}}.skeleton{border-radius:var(--r-sm);vertical-align:middle;background-size:200% 100%;animation:1.6s ease-in-out infinite skeleton-sweep}.skeleton--title{width:clamp(160px,36%,360px);height:1.05rem}.skeleton--title-sm{width:clamp(110px,70%,220px);height:.92rem}.fade-up{animation:.46s cubic-bezier(.16,1,.3,1) both fadeUp}.fade-in{animation:.6s ease-out both fadeIn}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-muted);font-size:.7rem;font-weight:500}.kbd{border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--surface);height:22px;font-family:var(--font-mono);color:var(--ink-muted);border-bottom-width:2px;align-items:center;padding:0 7px;font-size:.72rem;display:inline-flex}.brand-mark__link{color:inherit;border-radius:var(--r-md);transition:opacity var(--t-fast);text-decoration:none;display:inline-block}.brand-mark__link:hover{opacity:.85}.brand-mark{align-items:center;gap:10px;display:inline-flex}.brand-mark__icon{border-radius:8px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid;overflow:hidden}.brand-mark__icon img{width:32px;height:32px;display:block}.brand-mark__name{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);font-size:.82rem;font-weight:600;line-height:1.05}.brand-mark__name small{color:var(--ink-faint);letter-spacing:.16em;margin-top:3px;font-size:.7rem;font-weight:400;display:block}.brand-mark-splash .brand-mark__icon{border-radius:12px;width:48px;height:48px}.brand-mark-splash .brand-mark__icon img{width:48px;height:48px}.brand-mark-splash .brand-mark__name{font-size:1.1rem}.brand-mark-splash .brand-mark__name small{margin-top:4px;font-size:.82rem}.app{grid-template-columns:var(--sidebar-w) 1fr var(--output-w);grid-template-rows:minmax(0,1fr);height:100dvh;min-height:0;display:grid;overflow:hidden}.app[data-no-output=true]{grid-template-columns:var(--sidebar-w) 1fr}.app[data-no-output=true] .output{display:none}@media (max-width:1024px){.app{grid-template-columns:var(--sidebar-w) 1fr}.output{display:none}}@media (max-width:768px){.app{grid-template-columns:1fr}.sidebar{display:none}}.sidebar{background:var(--bg-subtle);border-right:1px solid var(--border);flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.sidebar-header{height:var(--header-h);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.icon-btn{width:32px;height:32px;color:var(--ink-muted);cursor:pointer;border-radius:var(--r-md);transition:all var(--t-fast);background:0 0;border:none;place-items:center;display:grid}.icon-btn:hover{background:var(--surface-hover);color:var(--ink)}.btn-new-chat{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);font:inherit;color:var(--ink);cursor:pointer;transition:all var(--t-fast);box-shadow:var(--shadow-xs);flex-shrink:0;justify-content:space-between;align-items:center;margin:12px;padding:10px 14px;font-size:.92rem;font-weight:500;text-decoration:none;display:flex}.btn-new-chat:hover{border-color:var(--xds-primary);background:var(--surface-hover);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn-new-chat .label{align-items:center;gap:8px;display:flex}.btn-new-chat .plus{border-radius:var(--r-full);background:var(--xds-primary);color:#fff;place-items:center;width:18px;height:18px;font-size:.85rem;font-weight:700;line-height:1;display:grid}.chat-list{flex:1;min-height:0;padding:4px 8px 16px;overflow-y:auto}.chat-list-empty{text-align:center;color:var(--ink-faint);padding:32px 16px;font-size:.85rem;line-height:1.5}.chat-list-group{margin-top:16px;padding:0 6px 6px}.chat-list-group:first-child{margin-top:6px}.chat-list-heading{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);align-items:center;padding:6px 10px;font-size:.72rem;font-weight:500;display:flex}.chat-item{border-radius:var(--r-md);cursor:pointer;color:inherit;transition:background var(--t-fast);border:1px solid #0000;flex-direction:column;gap:3px;padding:9px 12px;text-decoration:none;display:flex;position:relative}.chat-item:hover{background:var(--surface-hover)}.chat-item.active{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow-xs)}.chat-item.active:before{content:"";background:var(--xds-primary);border-radius:var(--r-full);width:3px;position:absolute;top:14px;bottom:14px;left:-4px}.chat-item .top-row{color:var(--ink);align-items:center;gap:8px;font-size:.88rem;font-weight:500;display:flex}.chat-item .skill-dot{border-radius:var(--r-full);flex-shrink:0;width:7px;height:7px}.chat-item .preview{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;padding-left:15px;font-size:.78rem;overflow:hidden}.project-item{border-radius:var(--r-md);cursor:pointer;color:var(--ink);transition:background var(--t-fast);border:1px solid #0000;align-items:center;gap:8px;padding:9px 12px;font-size:.85rem;font-weight:500;text-decoration:none;display:flex;position:relative}.project-item:hover{background:var(--surface-hover)}.project-item.active{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow-xs)}.project-item.active:before{content:"";background:var(--xds-primary);border-radius:var(--r-full);width:3px;position:absolute;top:12px;bottom:12px;left:-4px}.project-item .ic{color:var(--ink-muted);flex-shrink:0}.project-item.active .ic{color:var(--xds-primary)}.project-item .label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.project-item .shared-mini{font-family:var(--font-mono);color:var(--accent-text);background:var(--xds-light);border-radius:var(--r-full);padding:1px 6px;font-size:.65rem;font-weight:500}.project-item .pin-ic{color:var(--ink-faint);flex-shrink:0}.project-item.active .pin-ic{color:var(--xds-primary)}.sidebar-tabs{border-bottom:1px solid var(--border);background:var(--bg-subtle);flex-shrink:0;grid-template-columns:1fr 1fr 1fr;display:grid}.sidebar-tab{cursor:pointer;font:inherit;color:var(--ink-faint);letter-spacing:.01em;transition:color var(--t-fast);background:0 0;border:none;justify-content:center;align-items:center;gap:7px;padding:12px 4px 13px;font-size:.85rem;font-weight:500;display:inline-flex;position:relative}.sidebar-tab:hover{color:var(--ink-muted)}.sidebar-tab.active{color:var(--ink)}.sidebar-tab.active:after{content:"";background:var(--xds-primary);border-radius:2px 2px 0 0;height:2px;position:absolute;bottom:-1px;left:16px;right:16px}.sidebar-panel{flex-direction:column;flex:1;min-height:0;display:flex}.routines-empty{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:32px 28px;display:flex}.routines-empty__icon{border-radius:var(--r-full);background:var(--accent-soft);width:64px;height:64px;color:var(--accent-text);place-items:center;margin-bottom:18px;display:grid}.routines-empty__badge{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;background:var(--surface);color:var(--ink-muted);border:1px solid var(--border);border-radius:var(--r-full);margin-bottom:14px;padding:2px 8px;font-size:.65rem;display:inline-block}.routines-empty__title{color:var(--ink);margin:0 0 6px;font-size:.95rem;font-weight:600}.routines-empty__desc{color:var(--ink-muted);max-width:240px;margin:0 0 14px;font-size:.82rem;line-height:1.55}.routines-empty__list{flex-direction:column;gap:8px;width:100%;max-width:240px;margin:0;padding:0;list-style:none;display:flex}.routines-empty__list li{color:var(--ink-muted);text-align:left;align-items:flex-start;gap:9px;font-size:.8rem;line-height:1.45;display:flex}.routines-empty__list li svg{color:var(--xds-primary);flex-shrink:0;margin-top:2px}.sidebar-footer{border-top:1px solid var(--border);flex-shrink:0;padding:10px 12px 14px;position:relative}.user-pill{border-radius:var(--r-md);cursor:pointer;transition:background var(--t-fast);align-items:center;gap:10px;min-width:0;padding:8px 10px;display:flex}.user-pill:hover{background:var(--surface-hover)}.user-pill .avatar{border-radius:var(--r-full);background:var(--xds-light);width:28px;height:28px;color:var(--xds-primary-pressed);flex-shrink:0;place-items:center;font-size:.78rem;font-weight:600;display:grid}.user-pill .who{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.85rem;font-weight:500;overflow:hidden}.user-pill .menu{color:var(--ink-faint);font-size:1.1rem;line-height:1}.main{background:var(--bg);flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.main-header{height:var(--header-h);border-bottom:1px solid var(--border);background:var(--bg);flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:0 24px;display:flex}.skill-tag{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-full);color:var(--ink);flex-shrink:0;align-items:center;gap:8px;padding:5px 11px 5px 9px;font-size:.78rem;font-weight:500;display:inline-flex}.skill-tag .skill-dot{border-radius:var(--r-full);width:8px;height:8px}.chat-title{letter-spacing:-.01em;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;font-size:1.05rem;font-weight:700;overflow:hidden}.header-tools{align-items:center;gap:4px;min-width:1px;display:flex}.chat-scroll{scroll-behavior:smooth;flex:1;min-height:0;padding:32px 24px 24px;overflow-y:auto}.chat-thread{flex-direction:column;gap:28px;max-width:740px;margin:0 auto;display:flex}.thread-empty{text-align:center;color:var(--ink-faint);padding:48px 24px;font-size:.92rem}.msg{gap:14px;animation:.38s cubic-bezier(.16,1,.3,1) both fadeUp;display:flex}.msg .avatar{border-radius:var(--r-full);flex-shrink:0;place-items:center;width:32px;height:32px;font-size:.78rem;font-weight:600;display:grid;overflow:hidden}.msg.user .avatar{background:var(--xds-light);color:var(--xds-primary-pressed)}.msg.karel .avatar img{width:100%;height:100%;display:block}.msg .content{flex:1;min-width:0;padding-top:4px}.msg .who{color:var(--ink-muted);margin-bottom:2px;font-size:.78rem;font-weight:500}.msg .who .name{margin-right:4px}.msg .who .name+*{margin-left:0}.msg .who .name{color:var(--ink);font-weight:600}.msg .body{color:var(--ink);word-wrap:break-word;font-size:.96rem;line-height:1.65}.msg .body p+p{margin-top:.7em}.msg.user .body{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);opacity:.7;padding:10px 14px}.msg.user .msg-attachments{background:var(--surface);border:1px solid var(--border);border-radius:0 0 var(--r-lg) var(--r-lg);border-top:none;margin-top:-1px;padding:8px 14px 10px}.msg.user .body+.msg-attachments{border-radius:0 0 var(--r-lg) var(--r-lg)}.msg.user .body:has(+.msg-attachments){border-radius:var(--r-lg) var(--r-lg) 0 0}.karel-turn{flex-direction:column;gap:2px;display:flex}.karel-turn-typing{align-items:center;gap:4px;margin-top:6px;margin-left:46px;padding:6px 0;display:inline-flex}.karel-turn-typing .dot{border-radius:var(--r-full);background:var(--xds-primary);width:6px;height:6px;animation:1.2s ease-in-out infinite pulseDot}.karel-turn-typing .dot:nth-child(2){animation-delay:.18s}.karel-turn-typing .dot:nth-child(3){animation-delay:.36s}.msg.msg-header-only{margin-bottom:0}.msg.msg-header-only .content{padding-top:4px}.msg-body-only{color:var(--ink);margin-top:8px;margin-left:46px;font-size:.96rem;line-height:1.65}.msg-body-only .body{margin-bottom:4px}.msg-body-only .msg-attachments{margin-top:2px}.msg-body-only .msg-retry-row{margin-top:4px}.msg .body code{font-family:var(--font-mono);background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--r-sm);padding:1px 6px;font-size:.85em}.typing{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);align-items:center;gap:4px;padding:8px 12px;display:inline-flex}.typing .dot{border-radius:var(--r-full);background:var(--xds-primary);width:6px;height:6px;animation:1.2s ease-in-out infinite pulseDot}.typing .dot:nth-child(2){animation-delay:.18s}.typing .dot:nth-child(3){animation-delay:.36s}.composer-wrap{background:linear-gradient(180deg, transparent, var(--bg) 28%);flex-shrink:0;padding:12px 24px 24px}.composer{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);max-width:740px;box-shadow:var(--shadow-sm);transition:border-color var(--t-fast), box-shadow var(--t-fast);flex-direction:column;margin:0 auto;display:flex}.composer:focus-within{border-color:var(--xds-primary);box-shadow:var(--shadow-focus), var(--shadow-sm)}.composer textarea{resize:none;min-height:56px;max-height:240px;font-size:.95rem;line-height:1.55;font-family:var(--font-body);background:0 0;border:none;outline:none;padding:14px 16px 6px}.composer textarea::placeholder{color:var(--ink-faint)}.composer textarea:focus,.composer textarea:focus-visible{box-shadow:none}.composer-row{justify-content:space-between;align-items:center;padding:6px 8px 8px;display:flex}.composer-tools{gap:2px;display:flex}.btn-send{background:var(--xds-primary);color:#fff;border-radius:var(--r-md);cursor:pointer;width:36px;height:36px;transition:background var(--t-fast), transform var(--t-fast);border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-send:hover:not(:disabled){background:var(--xds-primary-hover);transform:translateY(-1px)}.btn-send:disabled{background:var(--border-strong);color:var(--ink-faint);cursor:not-allowed}.btn-send svg{width:18px;height:18px}.btn-stop{background:var(--ink);width:36px;height:36px;color:var(--surface);border-radius:var(--r-md);cursor:pointer;transition:background var(--t-fast), transform var(--t-fast);border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-stop:hover{background:var(--danger);transform:translateY(-1px)}.btn-stop .glyph{background:currentColor;border-radius:2px;width:11px;height:11px;display:inline-block}.composer-meta{color:var(--ink-faint);gap:14px;padding:0 8px 8px;font-size:.72rem;display:flex}.output{border-left:1px solid var(--border);background:var(--bg-subtle);flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}.output-header{height:var(--header-h);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:0 18px;display:flex}.output-header .title{letter-spacing:-.01em;font-size:.95rem;font-weight:700}.output-list{flex-direction:column;flex:1;gap:14px;min-height:0;padding:16px;display:flex;overflow-y:auto}.output-empty{text-align:center;color:var(--ink-faint);flex:1;place-items:center;max-width:220px;margin:0 auto;padding:32px;font-size:.85rem;display:grid}.output-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);transition:all var(--t-fast);animation:.36s cubic-bezier(.16,1,.3,1) both fadeUp;overflow:hidden}.output-item:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}.output-item .preview{background:var(--bg-subtle);cursor:pointer;width:100%;font:inherit;color:inherit;border:none;padding:0;line-height:0;display:block;position:relative;overflow:hidden}.output-item .preview:hover img{opacity:.92}.output-item .preview img{background:var(--bg-subtle);width:100%;height:auto;display:block}.output-item .preview-fallback{min-height:120px;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.08em;place-items:center;font-size:.85rem;line-height:1.2;display:grid}.output-item .meta{justify-content:space-between;align-items:center;gap:8px;padding:10px 13px 11px;display:flex}.output-item .meta .label{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.82rem;font-weight:500;overflow:hidden}.output-item .meta .download{border-radius:var(--r-md);width:28px;height:28px;color:var(--ink-muted);transition:all var(--t-fast);cursor:pointer;background:0 0;border:none;flex-shrink:0;place-items:center;padding:0;text-decoration:none;display:grid}.output-item .meta .download:hover{background:var(--accent-soft);color:var(--xds-primary)}.empty{flex:1;justify-content:center;align-items:center;min-height:0;padding:64px 32px;display:flex;position:relative;overflow:hidden auto}.app[data-view=landing] .main{background-image:radial-gradient(circle at 18% 18%,#1100ff29 0%,#0000 55%),radial-gradient(circle at 88% 82%,#fd1fcd24 0%,#0000 55%),radial-gradient(circle at 70% 22%,#7c47ca1f 0%,#0000 60%),radial-gradient(circle at 22% 88%,#30ddd71f 0%,#0000 60%)}[data-theme-resolved=dark] .app[data-view=landing] .main{background-image:radial-gradient(circle at 18% 18%,#1100ff4d 0%,#0000 55%),radial-gradient(circle at 88% 82%,#fd1fcd42 0%,#0000 55%),radial-gradient(circle at 70% 22%,#7c47ca38 0%,#0000 60%),radial-gradient(circle at 22% 88%,#30ddd738 0%,#0000 60%)}.app[data-view=landing] .main-header{background:0 0;border-bottom:none}.app[data-view=landing] .composer-wrap{background:0 0}.app[data-view=landing] .empty{padding-top:24px}.empty-card{text-align:center;max-width:580px;position:relative}.empty-card .greeting{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--xds-primary);margin-bottom:18px;font-size:.78rem;animation:.6s cubic-bezier(.16,1,.3,1) both fadeUp}.empty-card h1{letter-spacing:-.035em;margin-bottom:12px;font-size:clamp(2.4rem,5vw,3.8rem);font-weight:700;line-height:1.15;animation:.7s cubic-bezier(.16,1,.3,1) .1s both fadeUp}.empty-card h1 em,.empty-card h1 .typewriter{vertical-align:baseline;min-width:7.5em;font-style:normal;font-weight:700;display:inline-block}.empty-card h1 em,.empty-card h1 .typewriter-text{color:#0000;background:linear-gradient(120deg,#30ddd7 0%,#10f 35%,#7c47ca 65%,#fd1fcd 100%);-webkit-background-clip:text;background-clip:text}.typewriter-caret{color:var(--xds-primary);margin-left:.06em;font-weight:300;animation:1.05s step-end infinite caret-blink;display:inline-block}@keyframes caret-blink{0%,49%{opacity:1}50%,to{opacity:0}}.empty-card p{color:var(--ink-muted);max-width:460px;margin:0 auto 36px;font-size:1.05rem;line-height:1.55;animation:.7s cubic-bezier(.16,1,.3,1) .2s both fadeUp}.suggestions{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:28px;animation:.7s cubic-bezier(.16,1,.3,1) .3s both fadeUp;display:grid}@media (max-width:640px){.suggestions{grid-template-columns:1fr}}.suggestion{text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);cursor:pointer;font:inherit;transition:all var(--t-base);flex-direction:column;gap:6px;padding:16px 18px;display:flex}.suggestion:hover{border-color:var(--xds-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.suggestion .skill-pill{font-family:var(--font-mono);color:var(--ink-muted);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:7px;font-size:.7rem;font-weight:500;display:inline-flex}.suggestion .skill-pill .dot{border-radius:var(--r-full);width:7px;height:7px;display:inline-block}.suggestion .text{color:var(--ink);font-size:.92rem;line-height:1.45}.start-btn{color:#fff;border-radius:var(--r-lg);font:inherit;cursor:pointer;transition:all var(--t-fast);background:#0a0a0a;border:none;align-items:center;gap:10px;padding:12px 22px;font-size:.95rem;font-weight:500;animation:.7s cubic-bezier(.16,1,.3,1) .4s both fadeUp;display:inline-flex}.start-btn:hover{background:var(--xds-primary);box-shadow:var(--shadow-md);transform:translateY(-1px)}[data-theme-resolved=dark] .start-btn{background:var(--xds-primary)}[data-theme-resolved=dark] .start-btn:hover{background:var(--xds-primary-hover)}.modal-backdrop{-webkit-backdrop-filter:blur(6px);z-index:100;background:#0a0a0a66;place-items:start center;padding:80px 24px 24px;animation:.2s ease-out fadeIn;display:grid;position:fixed;inset:0;overflow-y:auto}[data-theme-resolved=dark] .modal-backdrop{background:#0009}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-2xl);width:100%;max-width:720px;box-shadow:var(--shadow-lg);animation:.32s cubic-bezier(.16,1,.3,1) both fadeUp;overflow:hidden}.modal-header{border-bottom:1px solid var(--border);padding:28px 32px 22px}.modal-header .eyebrow{margin-bottom:8px;display:block}.modal-header h2{letter-spacing:-.025em;margin-bottom:8px;font-size:1.7rem;font-weight:700}.modal-header .lead{color:var(--ink-muted);max-width:480px;font-size:.96rem;line-height:1.5}.modal-body{padding:24px 32px}.section-label{color:var(--ink-muted);justify-content:space-between;align-items:center;margin-bottom:12px;font-size:.78rem;font-weight:500;display:flex}.section-label .num{font-family:var(--font-mono);color:var(--ink-faint);letter-spacing:.08em;font-size:.7rem}.skill-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:24px;display:grid}@media (max-width:640px){.skill-grid{grid-template-columns:1fr}}.skill-card{background:var(--bg-subtle);border-radius:var(--r-lg);cursor:pointer;text-align:left;font:inherit;transition:all var(--t-fast);border:1px solid #0000;align-items:flex-start;gap:14px;padding:16px 18px;display:flex;position:relative}.skill-card:hover{background:var(--surface);border-color:var(--border);transform:translateY(-1px)}.skill-card.selected{background:var(--surface);border:2px solid var(--xds-primary);box-shadow:var(--shadow-focus);padding:15px 17px}.skill-card.selected:hover{transform:none}.skill-card.skeleton-card{background:var(--bg-subtle);height:96px;animation:1.6s infinite shimmer}.skill-card.coming-soon{cursor:not-allowed}.skill-card.coming-soon:hover{background:var(--bg-subtle);border-color:#0000;transform:none}.skill-card.coming-soon .skill-icon,.skill-card.coming-soon .skill-info{opacity:.42;filter:grayscale(.7)}.skill-card__pill{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-full);white-space:nowrap;padding:2px 9px;font-size:.62rem;font-weight:500;position:absolute;top:10px;right:12px}.skill-icon{border-radius:var(--r-md);flex-shrink:0;place-items:center;width:36px;height:36px;font-size:1.2rem;display:grid}.skill-info{flex:1;min-width:0}.skill-name{align-items:center;gap:8px;margin-bottom:4px;font-size:.96rem;font-weight:500;display:flex}.skill-name .badge{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--r-sm);font-family:var(--font-mono);color:var(--ink-faint);letter-spacing:0;text-transform:none;padding:1px 6px;font-size:.62rem;font-weight:400}.skill-desc{color:var(--ink-muted);font-size:.82rem;line-height:1.45}.prompt-box{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--r-lg);transition:border-color var(--t-fast), background var(--t-fast);margin-bottom:4px;padding:14px 16px}.prompt-box:focus-within{border-color:var(--xds-primary);background:var(--surface)}.prompt-box textarea{resize:none;width:100%;min-height:90px;font-size:.95rem;line-height:1.55;font-family:var(--font-body);background:0 0;border:none;outline:none}.prompt-box textarea::placeholder{color:var(--ink-faint)}.modal-footer{border-top:1px solid var(--border);background:var(--bg-subtle);justify-content:space-between;align-items:center;padding:18px 32px;display:flex}.modal-footer .info{color:var(--ink-muted);align-items:center;gap:8px;font-size:.82rem;display:flex}.modal-footer-actions{gap:8px;display:flex}.btn-secondary{border:1px solid var(--border-strong);border-radius:var(--r-md);font:inherit;color:var(--ink);cursor:pointer;transition:all var(--t-fast);background:0 0;padding:9px 16px;font-size:.88rem;font-weight:500}.btn-secondary:hover{background:var(--surface-hover)}.btn-go{background:var(--xds-primary);color:#fff;border-radius:var(--r-md);font:inherit;cursor:pointer;transition:all var(--t-fast);border:none;align-items:center;gap:8px;padding:9px 18px;font-size:.88rem;font-weight:500;display:inline-flex}.btn-go:hover:not(:disabled){background:var(--xds-primary-hover);transform:translateY(-1px)}.btn-go:disabled{opacity:.5;cursor:not-allowed}.empty-card--wide{text-align:left;max-width:740px}.empty-card--wide .greeting,.empty-card--wide h1,.empty-card--wide p{text-align:left;max-width:none;margin-left:0;margin-right:0}.empty-card--wide p{margin-bottom:24px}.empty-card--wide .skill-grid{margin-bottom:8px;animation:.7s cubic-bezier(.16,1,.3,1) .3s both fadeUp}.error-banner{background:var(--danger-soft);color:var(--danger);border:1px solid var(--danger);margin-bottom:14px;padding:11px 14px}@supports (color:color-mix(in lab, red, red)){.error-banner{border:1px solid color-mix(in oklab, var(--danger) 20%, transparent)}}.error-banner{border-radius:var(--r-md);font-size:.86rem;line-height:1.4}.composer-attachments{flex-wrap:wrap;gap:8px;padding:12px 12px 0;display:flex}.attachment-chip{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--r-md);align-items:center;gap:8px;max-width:240px;padding:6px 8px 6px 6px;font-size:.82rem;display:flex;position:relative;overflow:hidden}.attachment-chip[data-state=error]{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.attachment-chip[data-state=error]{border-color:color-mix(in oklab, var(--danger) 40%, transparent)}}.attachment-chip[data-state=error]{background:var(--danger-soft)}.attachment-chip[data-state=error] .chip-name,.attachment-chip[data-state=error] .chip-meta{color:var(--danger)}.attachment-chip[data-state=error] .chip-thumb{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.attachment-chip[data-state=error] .chip-thumb{background:color-mix(in oklab, var(--danger) 12%, var(--surface))}}.attachment-chip[data-state=error] .chip-thumb,.attachment-chip[data-state=error] .chip-action{color:var(--danger)}.attachment-chip[data-state=error] .chip-action:hover{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.attachment-chip[data-state=error] .chip-action:hover{background:color-mix(in oklab, var(--danger) 14%, transparent)}}.attachment-chip .chip-thumb{border-radius:var(--r-sm);background:var(--surface);width:32px;height:32px;color:var(--ink-muted);flex-shrink:0;place-items:center;display:grid;overflow:hidden}.attachment-chip .chip-thumb img{object-fit:cover;width:100%;height:100%}.attachment-chip .chip-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.attachment-chip .chip-name{white-space:nowrap;text-overflow:ellipsis;color:var(--ink);overflow:hidden}.attachment-chip .chip-meta{color:var(--ink-muted);font-size:.7rem}.attachment-chip .chip-progress{background:var(--xds-primary);height:2px;transition:width .2s;position:absolute;bottom:0;left:0}.attachment-chip .chip-action{border-radius:var(--r-sm);width:22px;height:22px;color:var(--ink-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;place-items:center;display:grid}.attachment-chip .chip-action:hover{background:var(--surface-hover);color:var(--ink)}.btn-attach{border-radius:var(--r-md);width:32px;height:32px;color:var(--ink-muted);cursor:pointer;transition:all var(--t-fast);background:0 0;border:none;place-items:center;display:grid}.btn-attach:hover:not(:disabled){background:var(--surface-hover);color:var(--ink)}.btn-attach:disabled{opacity:.5;cursor:not-allowed}.drop-overlay{background:var(--xds-primary);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.drop-overlay{background:color-mix(in oklab, var(--xds-primary) 8%, var(--bg) 92%)}}.drop-overlay{-webkit-backdrop-filter:blur(2px);border:2px dashed var(--xds-primary);z-index:50;pointer-events:none;place-items:center;animation:.12s ease-out fadeIn;display:grid}.drop-overlay-card{background:var(--surface);border:1px solid var(--xds-primary);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);text-align:center;flex-direction:column;align-items:center;gap:14px;padding:28px 36px;display:flex}.drop-overlay-card .icon{background:var(--accent-soft);width:56px;height:56px;color:var(--xds-primary);border-radius:var(--r-full);place-items:center;display:grid}.drop-overlay-card .title{color:var(--ink);font-size:1.05rem;font-weight:700}.drop-overlay-card .hint{color:var(--ink-muted);font-size:.84rem}@keyframes pulseRing{0%,to{box-shadow:0 0 #7c47ca4d}50%{box-shadow:0 0 0 6px #7c47ca00}}.msg-progress{color:var(--ink-muted);align-items:flex-start;gap:6px;margin:2px 0 2px 46px;padding:3px 0;font-size:.85rem;animation:.36s cubic-bezier(.16,1,.3,1) both fadeUp;display:flex}.msg-progress .progress-icon{flex-shrink:0;place-items:center;width:14px;height:14px;margin-top:2px;display:grid}.msg-progress .progress-icon:before{content:"";border-radius:var(--r-full);border:1.5px solid var(--ink-faint);opacity:.7;width:7px;height:7px}.msg-progress.is-active .progress-icon:before{background:var(--xds-primary);opacity:1;border:none;width:8px;height:8px;animation:1.4s ease-in-out infinite pulseRing}.msg-progress .progress-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.msg-progress .progress-text{font-style:italic}.msg-progress .progress-text strong{color:var(--ink);font-style:normal;font-weight:600}.msg-progress .progress-details{max-width:600px;margin-top:4px}.msg-progress .progress-details summary{cursor:pointer;color:var(--ink-faint);-webkit-user-select:none;user-select:none;align-items:center;gap:4px;padding:2px 0;font-size:.72rem;font-style:normal;display:inline-flex}.msg-progress .progress-details summary::-webkit-details-marker{display:none}.msg-progress .progress-details summary svg{width:14px;height:14px;transition:transform var(--t-fast)}.msg-progress .progress-details[open] summary svg{transform:rotate(90deg)}.msg-progress .progress-details summary:hover{color:var(--ink-muted)}.msg-progress .progress-details__original{font-family:var(--font-body);color:var(--ink-muted);word-break:break-word;margin-top:6px;font-size:.78rem;font-style:italic}.msg-progress .progress-details__original+pre{margin-top:6px}.msg-progress .progress-details pre{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--r-sm);font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;max-width:600px;margin-top:6px;padding:8px 10px;font-size:.72rem;font-style:normal;overflow-x:auto}.msg-queue-badge{font-family:var(--font-body);color:var(--ink-muted);background:var(--bg-subtle);border-radius:var(--r-full);border:1px solid var(--border);align-items:center;gap:5px;padding:2px 9px 2px 7px;font-size:.72rem;font-weight:500;line-height:1.3;display:inline-flex}.msg-queue-badge svg{width:11px;height:11px;color:var(--ink-faint);flex-shrink:0}.msg-canceled-label{font-family:var(--font-body);color:var(--danger);background:var(--danger-soft);border-radius:var(--r-full);align-items:center;gap:5px;padding:2px 9px;font-size:.72rem;font-weight:500;line-height:1.3;display:inline-flex}.msg-canceled-label svg{flex-shrink:0;width:10px;height:10px}.karel-turn.is-canceled .msg-progress{opacity:.65}.karel-turn.is-canceled .msg-body-only{color:var(--ink-muted);font-style:italic}.todo-card{border:1px solid var(--border);border-radius:var(--r-lg);background:0 0;max-width:calc(100% - 62px);margin:10px 0 6px 46px;padding:12px 14px 10px;animation:.36s cubic-bezier(.16,1,.3,1) both fadeUp}.todo-card__header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.todo-card__title{font-size:.78rem;font-weight:500;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.todo-card__progress{color:var(--ink-faint);font-size:.78rem;font-family:var(--font-mono)}.todo-card__list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.todo-item{color:var(--ink);border-radius:var(--r-sm);align-items:flex-start;gap:10px;padding:7px 4px 7px 2px;font-size:.92rem;line-height:1.45;display:flex}.todo-item__check{border-radius:var(--r-full);border:1.5px solid var(--border-strong);background:var(--surface);width:18px;height:18px;transition:all var(--t-fast);flex-shrink:0;place-items:center;margin-top:2px;display:grid;position:relative}.todo-item__check svg{color:#fff;opacity:0;width:11px;height:11px;transition:opacity var(--t-fast)}.todo-item__text{flex:1;min-width:0}.todo-item.is-pending .todo-item__text{color:var(--ink-faint)}.todo-item.is-active .todo-item__check{border-color:var(--xds-primary);background:var(--xds-primary);animation:1.4s ease-in-out infinite pulseRing}.todo-item.is-active .todo-item__check:after{content:"";border-radius:var(--r-full);background:#fff;width:6px;height:6px}.todo-item.is-active .todo-item__text{color:var(--ink);font-weight:500}.todo-item.is-done .todo-item__check{border-color:var(--xds-primary);background:var(--xds-primary)}.todo-item.is-done .todo-item__check svg{opacity:1}.todo-item.is-done .todo-item__text{color:var(--ink-muted)}.msg-text-fragment{max-width:calc(100% - 62px);color:var(--ink);margin:8px 0 2px 46px;animation:.36s cubic-bezier(.16,1,.3,1) both fadeUp}.msg-text-fragment p:first-child{margin-top:0}.msg-text-fragment p:last-child{margin-bottom:0}.choices-block{flex-direction:column;gap:6px;margin:8px 0 4px;display:flex}.choices-label{color:var(--ink-muted);font-size:.86rem;font-weight:500}.choices-row{flex-wrap:wrap;gap:6px;display:flex}.choice-chip{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-full);font:inherit;color:var(--ink);cursor:pointer;transition:all var(--t-fast);padding:6px 12px;font-size:.86rem}.choice-chip:hover:not(:disabled){border-color:var(--xds-primary);background:var(--accent-soft);color:var(--accent-text)}.choice-chip:disabled{cursor:not-allowed;opacity:.5}.choice-chip.selected{background:var(--xds-primary);border-color:var(--xds-primary);color:#fff;opacity:1}.choices-error{color:var(--danger);margin-top:4px;font-size:.78rem}.msg-retry-row{flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px;display:flex}.msg-error{color:var(--danger);font-size:.82rem}.msg-retry-btn{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-md);color:var(--ink);font:inherit;cursor:pointer;transition:all var(--t-fast);align-items:center;gap:6px;padding:6px 12px;font-size:.82rem;display:inline-flex}.msg-retry-btn:hover{border-color:var(--xds-primary);color:var(--xds-primary)}.markdown>*+*{margin-top:12px}.markdown>*+h1,.markdown>*+h2,.markdown>*+h3,.markdown>*+h4{margin-top:22px}.markdown>:first-child{margin-top:0}.markdown p{margin:0;line-height:1.6}.markdown h1,.markdown h2,.markdown h3,.markdown h4{letter-spacing:-.015em;color:var(--ink);font-weight:700;line-height:1.3}.markdown h1{border-bottom:1px solid var(--border);padding-bottom:6px;font-size:1.08rem}.markdown h2{color:var(--ink);font-size:1rem}.markdown h3{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.96rem}.markdown h4{color:var(--ink-muted);font-size:.92rem}.markdown strong{color:var(--ink);font-weight:700}.markdown em{font-style:italic}.markdown ul,.markdown ol{flex-direction:column;gap:4px;margin:0;padding-left:1.5em;display:flex}.markdown ul ul,.markdown ol ol,.markdown ul ol,.markdown ol ul{margin-top:4px}.markdown li{line-height:1.55}.markdown li::marker{color:var(--xds-primary);font-weight:700}.markdown ul li{list-style:outside}.markdown ol li{list-style:decimal}.markdown p:has(>strong:first-child)+p:has(>strong:first-child){margin-top:8px}.markdown code{font-family:var(--font-mono);background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--r-sm);padding:1px 5px;font-size:.85em}.markdown pre{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--r-md);margin:8px 0;padding:12px 14px;overflow-x:auto}.markdown pre code{background:0 0;border:none;padding:0;font-size:.82rem;line-height:1.5}.markdown a{color:var(--xds-primary);text-underline-offset:2px;text-decoration:underline}.markdown a:hover{color:var(--xds-primary-hover)}.markdown blockquote{border-left:3px solid var(--border-strong);color:var(--ink-muted);margin:0;padding-left:12px}.markdown hr{border:0;border-top:1px solid var(--border);margin:14px 0}.markdown table{border-collapse:collapse;font-size:.88rem}.markdown th,.markdown td{border:1px solid var(--border);text-align:left;padding:6px 10px}.markdown th{background:var(--bg-subtle);font-weight:700}.lightbox{z-index:1000;-webkit-backdrop-filter:blur(8px);cursor:zoom-out;background:#08070ce0;grid-template-rows:1fr auto;place-items:center;padding:56px 24px 24px;animation:.18s ease-out both fadeIn;display:grid;position:fixed;inset:0}[data-theme-resolved=light] .lightbox{background:#14121cd1}.lightbox__toolbar{z-index:2;gap:8px;display:flex;position:absolute;top:16px;right:16px}.lightbox__btn{border-radius:var(--r-md);color:#fff;cursor:pointer;width:40px;height:40px;transition:all var(--t-fast);background:#ffffff14;border:1px solid #ffffff1f;place-items:center;padding:0;display:grid}.lightbox__btn:hover{background:#ffffff2e;border-color:#ffffff3d;transform:translateY(-1px)}.lightbox__btn:active{transform:translateY(0)}.lightbox__image{object-fit:contain;border-radius:var(--r-md);cursor:default;width:auto;max-width:min(100%,1600px);height:auto;max-height:calc(100dvh - 120px);animation:.28s cubic-bezier(.16,1,.3,1) both fadeUp;display:block;box-shadow:0 24px 60px #0000008c}.lightbox__caption{font-family:var(--font-mono);color:#ffffffb3;letter-spacing:.02em;text-align:center;cursor:default;word-break:break-all;max-width:min(100%,1600px);margin-top:16px;font-size:.78rem}.msg-attachments{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.msg-attachment{border-radius:var(--r-sm);border:1px solid var(--border);background:var(--bg-subtle);max-width:110px;transition:all var(--t-fast);color:var(--ink);font:inherit;cursor:pointer;padding:0;text-decoration:none;display:block;overflow:hidden}.msg-attachment:hover{border-color:var(--xds-primary);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.msg-attachment img{object-fit:contain;background:var(--surface);width:100%;height:auto;max-height:110px;display:block}.msg-attachment-fallback{align-items:center;gap:10px;padding:12px 14px;font-size:.85rem;display:flex}.msg-attachment-fallback .kind{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--ink-muted);padding:2px 6px;font-size:.7rem}.msg-attachment-fallback .name{color:var(--ink);word-break:break-all}.admin-shell{background:var(--bg);grid-template-columns:240px 1fr;height:100dvh;display:grid}.admin-sidebar{background:var(--bg-subtle);border-right:1px solid var(--border);flex-direction:column;gap:24px;padding:14px 12px;display:flex}.admin-sidebar-header{padding:4px 8px}.admin-nav{flex-direction:column;gap:2px;display:flex}.admin-nav-item{border-radius:var(--r-md);color:var(--ink-muted);transition:all var(--t-fast);padding:8px 12px;font-size:.92rem;text-decoration:none;display:block}.admin-nav-item:hover{background:var(--surface-hover);color:var(--ink)}.admin-nav-item.active{background:var(--accent-soft);color:var(--accent-text);font-weight:500}.admin-main{min-width:0;padding:32px 40px 64px;overflow-y:auto}.admin-main h1{letter-spacing:-.02em;margin-bottom:8px;font-size:1.6rem;font-weight:700}.admin-main h2{margin:32px 0 12px;font-size:1.1rem;font-weight:600}.window-toggle{background:var(--bg-subtle);border-radius:var(--r-md);align-items:center;gap:4px;margin-bottom:24px;padding:4px;display:inline-flex}.window-toggle button{border-radius:var(--r-sm);font:inherit;color:var(--ink-muted);cursor:pointer;text-transform:uppercase;letter-spacing:.06em;background:0 0;border:none;padding:6px 14px;font-size:.86rem}.window-toggle button.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-xs)}.window-toggle .loading-hint{color:var(--ink-faint);margin-left:8px;font-size:.78rem}.kpi-row{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;display:grid}@media (max-width:880px){.kpi-row{grid-template-columns:repeat(2,1fr)}}.kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-xs);padding:16px 18px}.kpi-label{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.kpi-value{letter-spacing:-.02em;margin-top:6px;font-size:1.6rem;font-weight:700}.kpi-subtitle{color:var(--ink-faint);margin-top:2px;font-size:.72rem}.admin-table{border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);width:100%;margin-bottom:24px;overflow:hidden}.admin-table th,.admin-table td{border-bottom:1px solid var(--border);text-align:left;padding:10px 14px;font-size:.92rem}.admin-table thead th{background:var(--bg-subtle);color:var(--ink-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.84rem;font-weight:500}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tbody tr:hover{background:var(--surface-hover)}.admin-table .empty{text-align:center;color:var(--ink-faint);font-style:italic}.activity-feed{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);max-height:480px;margin:0;padding:14px 18px;font-size:.88rem;line-height:1.6;list-style:none;overflow-y:auto}.activity-feed li{padding:2px 0}.activity-feed .t{font-family:var(--font-mono);color:var(--ink-faint);font-size:.82rem}.activity-feed .skill,.activity-feed .preview{color:var(--ink-muted)}.admin-modal-backdrop{z-index:100;background:#00000059;background:lab(0% 0 0/.35);place-items:center;padding:24px;display:grid;position:fixed;inset:0}.admin-modal{background:var(--surface);border-radius:var(--r-lg);width:100%;max-width:480px;box-shadow:var(--shadow-lg);overflow:hidden}.admin-modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.admin-modal-header h3{margin:0;font-size:1rem;font-weight:600}.admin-modal-close{cursor:pointer;color:var(--ink-faint);border-radius:var(--r-sm);background:0 0;border:none;padding:4px 8px;font-size:1.1rem}.admin-modal-close:hover{background:var(--surface-hover);color:var(--ink)}.admin-modal-body{padding:20px}.admin-modal-body p{color:var(--ink-muted);font-size:.92rem}.admin-modal-hint{color:var(--ink-faint);margin-top:12px;font-size:.78rem}.admin-modal-actions{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.admin-btn-secondary{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);height:38px;font:inherit;cursor:pointer;color:var(--ink);transition:all var(--t-fast);padding:0 14px;font-size:.9rem}.admin-btn-secondary:hover{background:var(--surface-hover)}.admin-btn-danger{color:var(--danger);border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.admin-btn-danger{border-color:color-mix(in oklab, var(--danger) 30%, var(--border) 70%)}}.admin-btn-danger:hover{background:var(--danger-soft);border-color:var(--danger)}.admin-checkbox-row{color:var(--ink);cursor:pointer;align-items:center;gap:8px;margin:8px 0;font-size:.92rem;display:flex}.magic-link-box{gap:8px;margin:12px 0 4px;display:flex}.magic-link-input{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--r-sm);font-family:var(--font-mono);color:var(--ink);outline:none;flex:1;padding:8px 10px;font-size:.78rem}.page-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.users-table .row-inactive{color:var(--ink-faint)}.users-table .divider-row td{background:var(--bg-subtle);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted);font-size:.78rem}.admin-table a{color:var(--ink);text-decoration:none}.admin-table a:hover{color:var(--xds-primary)}.filter-pills{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.filter-pill{background:var(--surface);border:1px solid var(--border);height:30px;font:inherit;cursor:pointer;color:var(--ink-muted);transition:all var(--t-fast);border-radius:999px;padding:0 12px;font-size:.84rem}.filter-pill:hover{background:var(--surface-hover);color:var(--ink)}.filter-pill.active{background:var(--xds-primary);border-color:var(--xds-primary);color:#fff}.skill-badge{text-transform:lowercase;letter-spacing:.02em;border-radius:999px;padding:2px 8px;font-size:.75rem;font-weight:500;display:inline-block}.badge-green{color:#15803d;background:#22c55e26;background:lab(70.2188% -57.9809 39.4382/.15)}.badge-yellow{color:#a16207;background:#eab30826;background:lab(76.4589% 11.7467 77.37/.15)}.badge-blue{color:#1d4ed8;background:#3b82f626;background:lab(54.6189% 8.76287 -65.7908/.15)}.badge-gray{background:var(--bg-subtle);color:var(--ink-muted)}.badge-red{color:#b91c1c;background:#ef444426;background:lab(55.7853% 65.6165 40.7976/.15)}.skill-name-cell{flex-direction:column;gap:2px;display:flex}.skill-id{font-family:var(--font-mono);color:var(--ink);font-size:.82rem}.skill-display-name{color:var(--ink-muted);font-size:.78rem}.skill-muted{color:var(--ink-faint);font-size:.84rem}.skill-detail-btn{height:28px;padding:0 10px;font-size:.82rem}.audit-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:4px;display:flex}.audit-search{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--r-sm);height:32px;font:inherit;color:var(--ink);outline:none;min-width:200px;padding:0 10px;font-size:.86rem}.audit-search:focus{border-color:var(--xds-primary)}.audit-time{cursor:default}.audit-code{font-family:var(--font-mono);color:var(--ink);font-size:.78rem}.audit-path{font-family:var(--font-mono);color:var(--ink-muted);font-size:.76rem}.audit-reason{color:var(--ink-muted);font-size:.84rem}.audit-load-more{justify-content:center;margin-bottom:24px;display:flex}.back-link{color:var(--ink-muted);margin-right:16px;font-size:.86rem;text-decoration:none}.back-link:hover{color:var(--ink)}.user-detail-actions{gap:8px;margin-bottom:24px;display:flex}.profile-table th{background:var(--bg-subtle);width:160px;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.84rem;font-weight:500}.info-banner{background:var(--accent-soft);border:1px solid var(--xds-primary);border-radius:var(--r-md);margin-bottom:24px;padding:14px 16px;font-size:.92rem}.info-banner strong{color:var(--accent-text);margin-bottom:4px;display:block}.admin-page{flex-direction:column;height:100%;min-height:0;display:flex}.admin-page-header{margin-bottom:20px}.admin-page-title{letter-spacing:-.02em;margin:0 0 6px;font-size:1.5rem;font-weight:700}.admin-page-subtitle{color:var(--ink-muted);margin:0;font-size:.9rem}.skill-review-layout{grid-template-columns:320px 1fr;gap:20px;height:calc(100vh - 200px);min-height:400px;display:grid}@media (max-width:900px){.skill-review-layout{grid-template-columns:1fr;height:auto}}.skill-review-list{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);flex-direction:column;padding:12px;display:flex;overflow-y:auto}.skill-review-items{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.skill-review-item{border-radius:var(--r-md);border:1px solid var(--border);cursor:pointer;transition:all var(--t-fast);background:var(--bg);padding:10px 12px}.skill-review-item:hover{background:var(--surface-hover);border-color:var(--border-strong)}.skill-review-item.selected{background:var(--accent-soft);border-color:var(--xds-primary)}.skill-review-item-header{align-items:center;gap:8px;margin-bottom:4px;display:flex}.skill-review-icon{font-size:1.1rem}.skill-review-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.92rem;font-weight:500;overflow:hidden}.skill-review-item-meta{padding-left:28px;font-size:.78rem}.skill-review-empty{flex:1;justify-content:center;align-items:center;padding:40px 20px;display:flex}.skill-review-detail{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);padding:20px 24px;overflow-y:auto}.skill-review-detail-header{border-bottom:1px solid var(--border);align-items:flex-start;gap:14px;margin-bottom:20px;padding-bottom:16px;display:flex}.skill-review-detail-icon{font-size:2.5rem;line-height:1}.skill-review-detail-title{letter-spacing:-.01em;margin:0;font-size:1.3rem;font-weight:700}.skill-review-meta{grid-template-columns:140px 1fr;gap:6px 12px;margin-bottom:20px;font-size:.88rem;display:grid}.skill-review-meta dt{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.06em;padding-top:2px;font-size:.75rem;font-weight:500}.skill-review-meta dd{margin:0}.skill-review-comment{color:var(--ink);font-style:italic}.skill-review-section{margin-bottom:20px}.skill-review-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted);margin:0 0 8px;font-size:.78rem;font-weight:600}.skill-review-instructions{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--r-md);font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;max-height:400px;color:var(--ink);margin:0;padding:14px 16px;font-size:.8rem;overflow-y:auto}.skill-review-actions{border-top:1px solid var(--border);flex-wrap:wrap;gap:10px;margin-top:20px;padding-top:16px;display:flex}.skill-review-error{background:var(--danger-soft);border:1px solid var(--danger);border-radius:var(--r-md);width:100%;color:var(--danger);padding:10px 14px;font-size:.88rem}.page-header{align-items:center;gap:12px;margin-bottom:8px;display:flex}.admin-transcript{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);height:calc(100vh - 240px);min-height:400px;overflow:hidden}.admin-transcript .app{grid-template-columns:1fr;height:100%}.admin-transcript .sidebar,.admin-transcript .output-panel{display:none}.user-menu{position:relative}.user-menu .user-pill{text-align:left;width:100%;font:inherit;color:inherit;transition:background var(--t-fast);background:0 0;border:0}.user-menu .user-pill:hover{background:var(--surface-hover)}.user-menu .user-pill:focus-visible{box-shadow:var(--shadow-focus);outline:none}.user-menu-popover{z-index:50;background:var(--surface-elevated);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);animation:.16s cubic-bezier(.16,1,.3,1) user-menu-in;position:absolute;bottom:calc(100% + 8px);left:8px;right:8px;overflow:hidden}@keyframes user-menu-in{0%{opacity:0;transform:translateY(8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.user-menu-popover .menu-header{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:14px 16px 12px;display:flex}.user-menu-popover .menu-header .avatar{border-radius:var(--r-full);background:linear-gradient(135deg, var(--xds-primary), var(--xds-secondary));color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:13px;font-weight:700;display:flex;box-shadow:inset 0 1px #fff3}.user-menu-popover .menu-header .who{flex:1;min-width:0}.user-menu-popover .menu-header .nm{letter-spacing:-.01em;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.user-menu-popover .menu-header .em{color:var(--ink-muted);font-size:9px;font-family:var(--font-mono);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;overflow:hidden}.user-menu-popover .menu-section{padding:6px}.user-menu-popover .menu-section-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);padding:8px 10px 4px;font-size:10px;font-weight:700}.user-menu-popover .menu-divider{background:var(--border);height:1px;margin:4px 6px}.user-menu-popover .menu-item{border-radius:var(--r-md);width:100%;font:inherit;color:var(--ink);cursor:pointer;text-align:left;transition:background var(--t-fast);background:0 0;border:0;align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:flex}.user-menu-popover .menu-item:hover{background:var(--surface-hover)}.user-menu-popover .menu-item:focus-visible{box-shadow:var(--shadow-focus);outline:none}.user-menu-popover .menu-item .icon{opacity:.85;flex-shrink:0}.user-menu-popover .menu-item .lbl{flex:1}.user-menu-popover .menu-item .badge{letter-spacing:.05em;border-radius:var(--r-full);background:var(--accent-soft);color:var(--accent-text);text-transform:uppercase;padding:2px 6px;font-size:9px;font-weight:700}.user-menu-popover .menu-item[aria-disabled=true]{color:var(--ink-faint);cursor:default}.user-menu-popover .menu-item[aria-disabled=true]:hover{background:0 0}.user-menu-popover .menu-item.danger{color:var(--danger)}.user-menu-popover .menu-item.danger:hover{background:var(--danger-soft)}.user-menu-popover .menu-item.danger .icon{opacity:1}.user-menu-popover .logout-form{margin:0;padding:0}.user-menu-popover .logout-form button{width:100%}.theme-switcher{padding:10px 10px 12px}.theme-switcher .lbl{color:var(--ink-muted);align-items:center;gap:8px;margin-bottom:6px;font-size:11px;display:flex}.theme-switcher .lbl .icon{opacity:.85}.theme-switcher .seg{background:var(--bg-subtle);border-radius:var(--r-md);border:1px solid var(--border);grid-template-columns:repeat(3,1fr);padding:3px;display:grid}.theme-switcher .seg-opt{border-radius:var(--r-sm);font:inherit;color:var(--ink-muted);cursor:pointer;transition:background var(--t-fast), color var(--t-fast);background:0 0;border:0;justify-content:center;align-items:center;gap:5px;padding:6px 8px;font-size:11px;font-weight:500;display:flex}.theme-switcher .seg-opt:hover:not(.on){color:var(--ink)}.theme-switcher .seg-opt:focus-visible{box-shadow:var(--shadow-focus);outline:none}.theme-switcher .seg-opt.on{background:linear-gradient(135deg, var(--xds-primary), var(--xds-primary-hover));color:#fff;box-shadow:inset 0 1px #ffffff1f,0 4px 12px #7c47ca66}.onboarding-backdrop{-webkit-backdrop-filter:blur(6px);z-index:200;background:#0a0a0a8c;place-items:center;padding:24px;animation:.22s cubic-bezier(.16,1,.3,1) onboarding-fade;display:grid;position:fixed;inset:0}.onboarding-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-2xl);width:100%;max-width:720px;box-shadow:var(--shadow-lg);animation:.32s cubic-bezier(.16,1,.3,1) onboarding-rise;position:relative;overflow:hidden}.onboarding-close{border-radius:var(--r-full);width:32px;height:32px;color:var(--ink-muted);cursor:pointer;z-index:4;background:#fff9;border:0;place-items:center;display:grid;position:absolute;top:12px;right:12px}[data-theme-resolved=dark] .onboarding-close{background:#ffffff14}.onboarding-close:hover{color:var(--ink)}.onboarding-img-wrap{aspect-ratio:16/10;background:var(--bg-subtle);animation:.22s cubic-bezier(.16,1,.3,1) onboarding-slide-in;overflow:hidden}.onboarding-img{object-fit:cover;width:100%;height:100%;display:block}.onboarding-body{padding:28px 32px 24px;animation:.22s cubic-bezier(.16,1,.3,1) 60ms both onboarding-slide-in}.onboarding-title{letter-spacing:-.02em;color:var(--ink);margin-bottom:.5rem;font-size:1.5rem;font-weight:700}.onboarding-text{color:var(--ink-muted);max-width:56ch;margin-bottom:1.6rem;font-size:1rem;line-height:1.55}.onboarding-nav{justify-content:space-between;align-items:center;gap:16px;display:flex}.onboarding-dots{gap:6px;display:flex}.onboarding-dots .dot{border-radius:var(--r-full);background:var(--border-strong);cursor:pointer;width:8px;height:8px;transition:all var(--t-fast);border:0}.onboarding-dots .dot.on{background:var(--xds-primary);width:24px}.onboarding-buttons{gap:10px;display:flex}.onboarding-buttons .btn-primary,.onboarding-buttons .btn-secondary{border-radius:var(--r-md);font:inherit;cursor:pointer;border:1px solid #0000;align-items:center;gap:6px;padding:10px 16px;font-size:.95rem;font-weight:500;display:inline-flex}.onboarding-buttons .btn-secondary{border-color:var(--border-strong);color:var(--ink-muted);background:0 0}.onboarding-buttons .btn-secondary:hover{color:var(--ink)}.onboarding-buttons .btn-primary{background:linear-gradient(135deg, var(--xds-primary), var(--xds-primary-hover));color:#fff;box-shadow:0 4px 12px #7c47ca66}.onboarding-buttons .btn-primary:hover{box-shadow:0 6px 16px #7c47ca8c}@keyframes onboarding-fade{0%{opacity:0}to{opacity:1}}@keyframes onboarding-rise{0%{opacity:0;transform:translateY(20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes onboarding-slide-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:600px){.onboarding-backdrop{padding:0}.onboarding-modal{border-radius:0;flex-direction:column;width:100vw;max-width:none;height:100dvh;display:flex}.onboarding-img-wrap{aspect-ratio:auto;flex-shrink:0;max-height:35vh}.onboarding-body{flex-direction:column;flex:1;padding:24px;display:flex;overflow-y:auto}.onboarding-text{flex:1;margin-bottom:1rem}.onboarding-nav{border-top:1px solid var(--border);margin-top:auto;padding-top:1rem}}@media (prefers-reduced-motion:reduce){.onboarding-backdrop,.onboarding-modal,.onboarding-img-wrap,.onboarding-body{animation:none}}.bridge-status-card{flex-direction:column;gap:.5rem;display:flex}.bridge-status-row{align-items:center;gap:.5rem;display:flex}.status-dot{border-radius:50%;width:10px;height:10px;display:inline-block}.status-dot.online{background:#2ecc71;box-shadow:0 0 8px #2ecc7199}.status-dot.offline{background:#e74c3c}.bridge-status-meta{color:var(--ink-muted);flex-wrap:wrap;gap:1rem;font-size:.85rem;display:flex}.bridge-status-counts{gap:1.5rem;font-size:.95rem;display:flex}.dashboard-section{margin:2rem 0}.error-text{color:#e74c3c;font-family:Roboto Mono,monospace;font-size:.8rem}.info-tip{vertical-align:middle;z-index:1;align-items:center;margin-left:.4em;display:inline-flex;position:relative}.info-tip-trigger{font:inherit;color:var(--ink-faint);cursor:help;text-transform:none;letter-spacing:normal;background:0 0;border:0;border-radius:50%;margin:0;padding:0;font-size:.78em;font-weight:400;line-height:1;transition:color .15s}.info-tip-trigger:hover,.info-tip-trigger:focus-visible{color:var(--xds-primary,#7d59ff);outline:none}.info-tip-trigger:focus-visible{box-shadow:0 0 0 2px #7d59ff73}.info-tip-bubble{z-index:100;color:#f0f0f0;letter-spacing:0;text-transform:none;text-align:left;pointer-events:none;opacity:0;visibility:hidden;white-space:normal;width:max-content;max-width:320px;font-size:.78rem;font-weight:400;line-height:1.45;font-family:var(--font-sans,system-ui, sans-serif);background:#141416f5;border-radius:6px;padding:.55rem .75rem;transition:opacity .15s,visibility .15s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 6px 24px #00000073}.info-tip-bubble:after{content:"";border:5px solid #0000;border-top-color:#141416f5;position:absolute;top:100%;left:50%;transform:translate(-50%)}.info-tip:hover>.info-tip-bubble,.info-tip:focus-within>.info-tip-bubble{opacity:1;visibility:visible}.info-tip[data-align=start]>.info-tip-bubble{left:0;right:auto;transform:none}.info-tip[data-align=start]>.info-tip-bubble:after{left:8px;right:auto;transform:none}.info-tip[data-align=end]>.info-tip-bubble{left:auto;right:0;transform:none}.info-tip[data-align=end]>.info-tip-bubble:after{left:auto;right:8px;transform:none}.admin-table thead .info-tip-bubble{top:calc(100% + 8px);bottom:auto}.admin-table thead .info-tip-bubble:after{border-top-color:#0000;border-bottom-color:#141416f5;top:auto;bottom:100%}.ctx-toggle{background:var(--bg-subtle);border-radius:var(--r-lg);cursor:pointer;text-align:left;transition:all var(--t-fast);border:1px solid #0000;align-items:center;gap:14px;margin-bottom:18px;padding:14px 16px;display:flex}.ctx-toggle:hover{background:var(--surface);border-color:var(--border)}.ctx-toggle.active{background:var(--surface);border-color:var(--xds-primary);box-shadow:var(--shadow-focus)}.ctx-toggle-icon{border-radius:var(--r-md);background:var(--surface);border:1px solid var(--border);width:36px;height:36px;color:var(--ink-muted);transition:all var(--t-fast);flex-shrink:0;place-items:center;display:grid}.ctx-toggle.active .ctx-toggle-icon{background:var(--xds-primary);color:#fff;border-color:var(--xds-primary)}.ctx-toggle-text{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.ctx-toggle-title{font-size:.92rem;font-weight:500}.ctx-toggle-info{border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface);width:22px;height:22px;color:var(--ink-faint);cursor:help;transition:all var(--t-fast);flex-shrink:0;place-items:center;padding:0;display:grid}.ctx-toggle-info:hover{color:var(--xds-primary);background:#7c47ca1f;border-color:#7c47ca4d}.ctx-toggle-switch{background:var(--border-strong);border-radius:var(--r-full);width:36px;height:20px;transition:all var(--t-fast);flex-shrink:0;position:relative}.ctx-toggle-switch:after{content:"";border-radius:var(--r-full);width:16px;height:16px;transition:all var(--t-fast);background:#fff;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000026}.ctx-toggle.active .ctx-toggle-switch{background:var(--xds-primary)}.ctx-toggle.active .ctx-toggle-switch:after{left:18px}.ctx-modal-backdrop{-webkit-backdrop-filter:blur(6px);z-index:100;background:#0f0c196b;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.ctx-modal{background:var(--surface);border-radius:var(--r-2xl);flex-direction:column;width:100%;max-width:540px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #0000002e,0 4px 16px #00000014}.ctx-modal-header{justify-content:space-between;align-items:flex-start;gap:16px;padding:24px 28px 12px;display:flex}.ctx-modal-subtitle{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--xds-primary);margin:0 0 8px;font-size:.7rem;font-weight:500}.ctx-modal-title{letter-spacing:-.02em;margin:0;font-size:1.4rem;font-weight:700}.ctx-modal-close{border-radius:var(--r-full);background:var(--bg-subtle);width:32px;height:32px;color:var(--ink-muted);cursor:pointer;border:none;flex-shrink:0;place-items:center;display:grid}.ctx-modal-close:hover{background:var(--border);color:var(--ink)}.ctx-modal-body{padding:8px 28px 24px;overflow-y:auto}.ctx-modal-intro{color:var(--ink-muted);margin:0 0 24px;font-size:.95rem;line-height:1.55}.ctx-layer-list{flex-direction:column;gap:12px;display:flex}.ctx-layer{background:var(--bg-subtle);border-radius:var(--r-lg);align-items:flex-start;gap:14px;padding:14px 16px;display:flex}.ctx-layer.affected{background:#7c47ca0f;border:1px solid #7c47ca2e}.ctx-layer-icon{border-radius:var(--r-md);background:var(--surface);border:1px solid var(--border);width:34px;height:34px;color:var(--ink-muted);flex-shrink:0;place-items:center;display:grid}.ctx-layer.affected .ctx-layer-icon{background:var(--xds-primary);color:#fff;border-color:var(--xds-primary)}.ctx-layer-text{flex:1;min-width:0}.ctx-layer-title{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:3px;font-size:.9rem;font-weight:500;display:flex}.ctx-layer-tag{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);padding:1px 7px;font-size:.6rem;font-weight:500}.ctx-layer.affected .ctx-layer-tag{background:var(--xds-primary);color:#fff;border-color:var(--xds-primary)}.ctx-layer-desc{color:var(--ink-muted);font-size:.82rem;line-height:1.5}.ctx-modal-footer{border-top:1px solid var(--border);background:var(--bg-subtle);justify-content:space-between;align-items:center;gap:12px;padding:16px 28px 24px;display:flex}.ctx-modal-ok{background:var(--xds-primary);color:#fff;border-radius:var(--r-md);font:inherit;cursor:pointer;border:none;padding:9px 22px;font-weight:500}.ctx-modal-ok:hover{background:var(--xds-primary-hover)}.chat-title-row{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.chat-title-row .chat-title{flex:1;min-width:0}.chat-memory-off{border-radius:var(--r-full);width:26px;height:26px;color:var(--ink-faint);cursor:help;transition:all var(--t-fast);background:0 0;border:none;flex-shrink:0;place-items:center;padding:0;display:grid;position:relative}.chat-memory-off:hover{color:var(--ink-muted);background:var(--bg-subtle)}.chat-memory-off:after{content:"";pointer-events:none;width:18px;height:1.5px;box-shadow:0 0 0 1.5px var(--bg);background:currentColor;border-radius:1px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-45deg)}.chat-memory-off:focus-visible{box-shadow:var(--shadow-focus);outline:none}.profile-page{max-width:680px;margin:0 auto;padding:24px 24px 96px}.profile-page .page-title{letter-spacing:-.025em;margin:0 0 24px;font-size:1.6rem;font-weight:700}.profile-page .section{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-xs);margin-bottom:14px;padding:24px 28px}.profile-page .section-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;padding-bottom:14px;display:flex}.profile-page .section-head h2{letter-spacing:-.01em;margin:0;font-size:1.05rem;font-weight:500}.profile-page .section-tag{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);background:var(--bg-subtle);border-radius:var(--r-sm);padding:3px 8px;font-size:.62rem;font-weight:500}.profile-page .section-desc{color:var(--ink-muted);margin:0 0 18px;font-size:.88rem;line-height:1.55}.identity-grid{grid-template-columns:120px 1fr;align-items:baseline;gap:14px 18px;display:grid}.identity-grid .label{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);font-size:.74rem;font-weight:500}.identity-grid .value{color:var(--ink);font-size:.95rem}.identity-grid .value--mono{font-family:var(--font-mono);color:var(--ink-muted);font-size:.86rem}.identity-grid .value .badge{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--r-sm);font-family:var(--font-mono);color:var(--xds-primary);letter-spacing:.04em;padding:2px 9px;font-size:.7rem;font-weight:500;display:inline-block}.pref-area{background:var(--bg-subtle);border-radius:var(--r-lg);width:100%;min-height:160px;font:inherit;color:var(--ink);resize:vertical;transition:all var(--t-fast);border:1px solid #0000;outline:none;padding:14px 16px;font-size:.92rem;line-height:1.55}.pref-area:focus{background:var(--surface);border-color:var(--xds-primary);box-shadow:var(--shadow-focus)}.pref-area::placeholder{color:var(--ink-faint);line-height:1.7}.pref-area:disabled{opacity:.6;cursor:not-allowed}.pref-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.pref-counter{font-family:var(--font-mono);color:var(--ink-faint);font-size:.74rem}.pref-counter.warn{color:var(--danger)}.pref-actions{align-items:center;gap:12px;display:flex}.pref-error{color:var(--danger);font-size:.82rem}.save-btn{background:var(--xds-primary);color:#fff;border-radius:var(--r-md);font:inherit;cursor:pointer;transition:background var(--t-fast);border:none;padding:9px 20px;font-weight:500}.save-btn:hover:not(:disabled){background:var(--xds-primary-hover)}.save-btn:disabled{opacity:.55;cursor:not-allowed}.ctx-modal-link{color:var(--xds-primary);font-size:.86rem;font-weight:500;text-decoration:none}.ctx-modal-link:hover{text-decoration:underline}.profile-page .stats-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px;display:grid}@media (max-width:560px){.profile-page .stats-grid{grid-template-columns:1fr}}.profile-page .stat{background:var(--bg-subtle);border-radius:var(--r-lg);flex-direction:column;gap:4px;padding:14px 16px;display:flex}.profile-page .stat .stat-label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);font-size:.66rem;font-weight:500}.profile-page .stat .stat-value{color:var(--ink);font-size:1.05rem;font-weight:500}.profile-page .stat .stat-meta{color:var(--ink-muted);font-size:.78rem}.profile-page .stat.empty .stat-value{color:var(--ink-faint);font-style:italic;font-weight:400}.profile-page .danger-row{border-radius:var(--r-lg);background:#c44a4a0a;border:1px solid #c44a4a2e;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.profile-page .danger-row .text{flex:1;min-width:0}.profile-page .danger-row .text-title{color:var(--ink);margin-bottom:2px;font-size:.92rem;font-weight:500}.profile-page .danger-row .text-desc{color:var(--ink-muted);font-size:.8rem;line-height:1.45}.profile-page .danger-btn{color:var(--danger);border:1px solid var(--danger);border-radius:var(--r-md);font:inherit;cursor:pointer;transition:all var(--t-fast);background:0 0;flex-shrink:0;padding:8px 16px;font-size:.86rem;font-weight:500}.profile-page .danger-btn:hover:not(:disabled){background:var(--danger);color:#fff}.profile-page .danger-btn:disabled{opacity:.55;cursor:not-allowed}.ctx-modal.ctx-modal--narrow{max-width:480px}.ctx-modal-footer.ctx-modal-footer--right{justify-content:flex-end}.btn-ghost{color:var(--ink-muted);border:1px solid var(--border);border-radius:var(--r-md);font:inherit;cursor:pointer;transition:all var(--t-fast);background:0 0;padding:9px 18px}.btn-ghost:hover:not(:disabled){background:var(--bg-subtle);color:var(--ink)}.btn-ghost:disabled{opacity:.55;cursor:not-allowed}.btn-danger-solid{background:var(--danger);color:#fff;border-radius:var(--r-md);font:inherit;cursor:pointer;transition:background var(--t-fast);border:none;padding:9px 18px;font-weight:500}.btn-danger-solid:hover:not(:disabled){background:var(--danger-hover)}.btn-danger-solid:disabled{opacity:.55;cursor:not-allowed}.profile-page .memory-success{border-radius:var(--r-lg);color:var(--ink);background:#50a06414;border:1px solid #50a06452;align-items:flex-start;gap:12px;margin-bottom:18px;padding:14px 16px;display:flex}.profile-page .memory-success__icon{border-radius:var(--r-full);color:#fff;background:#50a064;flex-shrink:0;place-items:center;width:24px;height:24px;margin-top:1px;display:grid}.profile-page .memory-success__text{flex:1;min-width:0}.profile-page .memory-success__text strong{margin-bottom:4px;font-size:.92rem;font-weight:500;display:block}.profile-page .memory-success__text p{color:var(--ink-muted);margin:0;font-size:.82rem;line-height:1.5}.profile-page .memory-success__close{border-radius:var(--r-full);width:24px;height:24px;color:var(--ink-muted);cursor:pointer;transition:all var(--t-fast);background:0 0;border:none;flex-shrink:0;place-items:center;display:grid}.profile-page .memory-success__close:hover{color:var(--ink);background:#50a06429}.main-body{flex:1;min-height:0;overflow-y:auto}.main-body.docs-page{padding:48px 64px 96px}@media (max-width:880px){.main-body.docs-page{padding:32px 24px 80px}}.docs-back-row{flex-shrink:0;padding:12px 12px 0}.docs-back-link{border:1px solid var(--border);border-radius:var(--r-md);color:var(--ink-muted);transition:all var(--t-fast);background:0 0;align-items:center;gap:8px;padding:8px 12px;font-size:.86rem;font-weight:500;text-decoration:none;display:flex}.docs-back-link:hover{background:var(--surface);color:var(--ink);border-color:var(--border-strong)}.docs-nav-panel{flex:1;min-height:0;padding:16px 8px;overflow-y:auto}.docs-nav-section-label{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);padding:14px 14px 6px;font-size:.72rem;font-weight:500}.docs-nav-list{margin:0;padding:0;list-style:none}.docs-nav-list li{margin:0}.docs-nav-link{border-radius:var(--r-md);color:var(--ink-muted);transition:all var(--t-fast);align-items:center;gap:12px;padding:8px 12px;font-size:.92rem;font-weight:500;text-decoration:none;display:flex;position:relative}.docs-nav-link:hover{background:var(--surface-hover);color:var(--ink)}.docs-nav-link .num{font-family:var(--font-mono);color:var(--ink-faint);flex-shrink:0;width:24px;font-size:.72rem}.docs-nav-link.active{background:var(--surface);color:var(--ink);border:1px solid var(--border);box-shadow:var(--shadow-xs)}.docs-nav-link.active .num{color:var(--xds-primary);font-weight:600}.docs-nav-link.active:before{content:"";background:var(--xds-primary);border-radius:var(--r-sm);width:3px;position:absolute;top:9px;bottom:9px;left:-3px}.docs-nav-link.no-num{padding-left:14px}.docs-nav-divider{background:var(--border);height:1px;margin:14px}.docs-page .meta-line{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);align-items:center;gap:14px;margin-bottom:24px;font-size:.7rem;font-weight:500;display:flex}.docs-page .meta-line .num{color:var(--xds-primary);font-weight:600}.docs-page .meta-line .rule{background:var(--border);flex:0 0 80px;height:1px}.docs-page .meta-line .tag{color:var(--ink-muted)}.docs-page .chapter{max-width:720px}.docs-page .chapter h1{letter-spacing:-.025em;margin:0 0 20px;font-size:clamp(2rem,4vw,2.6rem);font-weight:700;line-height:1.15}.docs-page .chapter h1 em{color:#0000;background:linear-gradient(120deg,#30ddd7 0%,#10f 35%,#7c47ca 65%,#fd1fcd 100%);-webkit-background-clip:text;background-clip:text;font-style:normal}.docs-page .chapter .lead{color:var(--ink-muted);max-width:600px;margin:0 0 36px;font-size:1.1rem;line-height:1.6}.docs-page .chapter h2{letter-spacing:-.012em;margin:36px 0 12px;font-size:1.2rem;font-weight:600}.docs-page .chapter h3{text-transform:uppercase;letter-spacing:.1em;color:var(--ink-faint);margin:28px 0 10px;font-size:.78rem;font-weight:500}.docs-page .chapter p{color:var(--ink);max-width:64ch;margin:12px 0;font-size:.96rem;line-height:1.65}.docs-page .chapter p.muted{color:var(--ink-muted);font-size:.92rem}.docs-page .chapter ul{max-width:64ch;margin:12px 0 16px;padding-left:0;list-style:none}.docs-page .chapter ul li{padding:5px 0 5px 22px;font-size:.94rem;line-height:1.65;position:relative}.docs-page .chapter ul li:before{content:"";background:var(--xds-primary);border-radius:50%;width:5px;height:5px;position:absolute;top:14px;left:6px}.docs-page .chapter ul li strong{color:var(--ink);font-weight:600}.docs-page .chapter code{font-family:var(--font-mono);background:var(--bg-subtle);border-radius:var(--r-sm);color:var(--xds-primary-pressed);border:1px solid var(--border);padding:1px 6px;font-size:.84em}.docs-page .chapter em{color:var(--ink);background:linear-gradient(#0000 60%,#7c47ca29 60%);padding:0 2px;font-style:normal}.docs-page .chapter blockquote{border-left:3px solid var(--xds-primary);border-radius:0 var(--r-md) var(--r-md) 0;color:var(--ink-muted);background:#7c47ca0a;margin:24px 0;padding:12px 18px;font-size:.92rem;line-height:1.6}.docs-page .chapter blockquote strong{color:var(--ink)}.docs-page .cover{padding:0}.docs-page .cover-card{text-align:left;max-width:820px;margin:32px auto 0;padding:0}.docs-page .cover-eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--xds-primary);margin-bottom:20px;font-size:.78rem;font-weight:500}.docs-page .cover-card h1{letter-spacing:-.035em;margin:0 0 24px;font-size:clamp(2.6rem,6vw,4rem);font-weight:700;line-height:1.1}.docs-page .cover-card h1 em{color:#0000;background:linear-gradient(120deg,#30ddd7 0%,#10f 35%,#7c47ca 65%,#fd1fcd 100%);-webkit-background-clip:text;background-clip:text;font-style:normal}.docs-page .cover-card .lead{color:var(--ink-muted);max-width:560px;margin:0 0 48px;font-size:1.18rem;line-height:1.55}.docs-page .version-badge{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-sm);align-items:flex-end;gap:14px;margin-bottom:56px;padding:20px 28px;display:inline-flex}.docs-page .version-badge .v-label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:6px;font-size:.66rem;font-weight:500}.docs-page .version-badge .v-number{font-family:var(--font-mono);letter-spacing:-.02em;color:var(--ink);font-size:2.6rem;font-weight:600;line-height:1}.docs-page .version-badge .v-number .patch{color:var(--xds-primary)}.docs-page .version-badge .v-meta{font-family:var(--font-mono);color:var(--ink-muted);margin-bottom:6px;font-size:.76rem;line-height:1.5}.docs-page .version-badge .v-meta a{color:var(--xds-primary);text-decoration:none}.docs-page .version-badge .v-meta a:hover{text-decoration:underline}.docs-page .cover-index-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:14px;font-size:.7rem;font-weight:500}.docs-page .cover-index{background:var(--border);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-xs);grid-template-columns:repeat(2,1fr);gap:1px;display:grid;overflow:hidden}.docs-page .cover-index a{background:var(--surface);color:var(--ink);transition:background var(--t-fast);align-items:flex-start;gap:14px;padding:18px 20px;text-decoration:none;display:flex}.docs-page .cover-index a:hover{background:var(--surface-hover)}.docs-page .cover-index a .num{font-family:var(--font-mono);color:var(--xds-primary);letter-spacing:.04em;flex-shrink:0;width:28px;margin-top:3px;font-size:.78rem;font-weight:600}.docs-page .cover-index a .text{flex:1;min-width:0}.docs-page .cover-index a .text h4{color:var(--ink);margin:0 0 3px;font-size:.96rem;font-weight:500}.docs-page .cover-index a .text p{color:var(--ink-muted);max-width:none;margin:0;font-size:.82rem;line-height:1.5}@media (max-width:760px){.docs-page .cover-index{grid-template-columns:1fr}}.docs-page .arch-trio{background:var(--border);border:1px solid var(--border);border-radius:var(--r-md);grid-template-columns:1fr 1fr 1fr;gap:1px;margin:24px 0 32px;display:grid;overflow:hidden}.docs-page .arch-trio .box{background:var(--surface);padding:20px 18px}.docs-page .arch-trio .box .role{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--xds-primary);margin-bottom:6px;font-size:.62rem;font-weight:600}.docs-page .arch-trio .box h4{margin:0 0 6px;font-size:1rem;font-weight:600}.docs-page .arch-trio .box p{color:var(--ink-muted);max-width:none;margin:0;font-size:.86rem;line-height:1.55}@media (max-width:840px){.docs-page .arch-trio{grid-template-columns:1fr}}.docs-page .skill-grid{grid-template-columns:1fr 1fr;gap:10px;margin:24px 0 32px;display:grid}.docs-page .skill-card{background:var(--bg-subtle);border-radius:var(--r-lg);border:1px solid #0000;align-items:flex-start;gap:14px;padding:16px 18px;display:flex}.docs-page .skill-card .icon{border-radius:var(--r-md);flex-shrink:0;place-items:center;width:36px;height:36px;font-size:1.2rem;display:grid}.docs-page .skill-card .text{flex:1}.docs-page .skill-card .text h4{align-items:center;gap:8px;margin:0 0 4px;font-size:.96rem;font-weight:500;display:flex}.docs-page .skill-card .badge{font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-faint);border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg-subtle);padding:1px 6px;font-size:.62rem;font-weight:400}.docs-page .skill-card .badge.coming{color:var(--xds-primary);background:#7c47ca0f;border-color:#7c47ca33}.docs-page .skill-card .text p{color:var(--ink-muted);max-width:none;margin:4px 0 0;font-size:.82rem;line-height:1.55}@media (max-width:760px){.docs-page .skill-grid{grid-template-columns:1fr}}.docs-page .layers{flex-direction:column;gap:10px;margin:24px 0 32px;display:flex}.docs-page .layer{background:var(--bg-subtle);border-radius:var(--r-lg);grid-template-columns:34px 1fr auto;align-items:center;gap:14px;padding:14px 16px;display:grid}.docs-page .layer .icon{border-radius:var(--r-md);background:var(--surface);border:1px solid var(--border);place-items:center;width:34px;height:34px;font-size:1rem;display:grid}.docs-page .layer .text h4{margin:0 0 3px;font-size:.94rem;font-weight:500}.docs-page .layer .text p{color:var(--ink-muted);max-width:none;margin:0;font-size:.84rem;line-height:1.55}.docs-page .layer .meta{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);text-align:right;font-size:.6rem;line-height:1.6}.docs-page .layer .meta strong{color:var(--ink-muted);font-weight:500;display:block}.docs-page table.integrations{border-collapse:collapse;border:1px solid var(--border);border-radius:var(--r-md);width:100%;margin:24px 0 32px;overflow:hidden}.docs-page table.integrations th,.docs-page table.integrations td{text-align:left;border-bottom:1px solid var(--border);padding:12px 16px;font-size:.92rem}.docs-page table.integrations tr:last-child td{border-bottom:none}.docs-page table.integrations th{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);background:var(--bg-subtle);font-size:.66rem;font-weight:500}.docs-page table.integrations td:first-child{font-weight:500}.docs-page table.integrations td.model{font-family:var(--font-mono);color:var(--xds-primary-pressed);font-size:.84rem}.docs-page table.integrations td.use{color:var(--ink-muted);font-size:.88rem}.docs-page .changelog-page{max-width:860px}.docs-page .changelog-hero{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-xs);justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:36px;padding:24px 28px;display:flex}.docs-page .changelog-current{align-items:flex-end;gap:14px;display:flex}.docs-page .changelog-current .v-prefix{font-family:var(--font-mono);color:var(--ink-faint);margin-bottom:8px;font-size:1.1rem}.docs-page .changelog-current .v-number{font-family:var(--font-mono);letter-spacing:-.02em;color:var(--ink);font-size:3rem;font-weight:600;line-height:1}.docs-page .changelog-current .v-number .patch{color:var(--xds-primary)}.docs-page .changelog-meta{font-family:var(--font-mono);letter-spacing:.08em;color:var(--ink-faint);text-align:right;font-size:.7rem;line-height:1.7}.docs-page .changelog-meta strong{color:var(--ink);font-weight:600}.docs-page .filter-row{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.docs-page .filter-chip{background:var(--surface);border:1px solid var(--border);font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink-muted);cursor:pointer;transition:all var(--t-fast);text-transform:uppercase;border-radius:9999px;padding:6px 12px;font-size:.7rem}.docs-page .filter-chip:hover{border-color:var(--border-strong);color:var(--ink)}.docs-page .filter-chip.active{background:var(--xds-primary);color:#fff;border-color:var(--xds-primary)}.docs-page .filter-chip .count{opacity:.7;margin-left:4px}.docs-page .timeline{position:relative}.docs-page .release{border-top:1px solid var(--border);grid-template-columns:108px 1fr;gap:24px;padding:18px 0;display:grid}.docs-page .release:first-child{border-top:none;padding-top:0}.docs-page .release .v-side{text-align:left}.docs-page .release .v-tag{font-family:var(--font-mono);color:var(--ink);letter-spacing:-.01em;font-size:.86rem;font-weight:600;line-height:1.2}.docs-page .release .v-tag.is-minor{color:var(--xds-primary)}.docs-page .release .v-tag.is-major{color:#fff;background:var(--xds-primary);border-radius:var(--r-sm);padding:2px 8px;display:inline-block}.docs-page .release .v-date{font-family:var(--font-mono);color:var(--ink-faint);letter-spacing:.04em;margin-top:2px;font-size:.66rem}.docs-page .release .v-scope{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg-subtle);margin-top:6px;padding:1px 6px;font-size:.6rem;display:inline-block}.docs-page .release .body h3{color:var(--ink);margin:0 0 6px;font-size:1rem;font-weight:600;line-height:1.35}.docs-page .release .body p{color:var(--ink-muted);max-width:60ch;margin:6px 0;font-size:.92rem;line-height:1.6}.docs-page .release .body ul{max-width:60ch;margin:8px 0 0;padding:0;list-style:none}.docs-page .release .body ul li{color:var(--ink-muted);padding:3px 0 3px 16px;font-size:.86rem;line-height:1.55;position:relative}.docs-page .release .body ul li:before{content:"·";color:var(--ink-faint);font-weight:700;position:absolute;left:5px}.docs-page .release.hidden{display:none}@media (max-width:760px){.docs-page .release{grid-template-columns:1fr;gap:8px}.docs-page .release .v-side{align-items:center;gap:10px;display:flex}.docs-page .release .v-date,.docs-page .release .v-scope{margin-top:0}}.user-menu-popover .menu-version{flex-direction:column;padding:14px 16px;display:flex}.user-menu-popover .menu-version__label{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:6px;font-size:9px;font-weight:600}.user-menu-popover .menu-version__number{font-family:var(--font-mono);letter-spacing:-.02em;color:#0000;background:linear-gradient(120deg,#30ddd7 0%,#10f 35%,#7c47ca 65%,#fd1fcd 100%);-webkit-background-clip:text;background-clip:text;margin-bottom:3px;font-size:24px;font-weight:700;line-height:1}.user-menu-popover .menu-version__date{font-family:var(--font-mono);color:var(--ink-muted);letter-spacing:.02em;margin-bottom:8px;font-size:10px}.user-menu-popover .menu-version__cta{font:inherit;color:var(--ink-muted);cursor:pointer;transition:color var(--t-fast);background:0 0;border:none;align-self:flex-start;align-items:center;gap:6px;margin:2px 0 0;padding:0;font-size:11.5px;font-weight:500;text-decoration:none;display:inline-flex}.user-menu-popover .menu-version__cta:hover{color:var(--xds-primary)}.user-menu-popover .menu-version__cta .arrow{width:11px;height:11px;transition:transform var(--t-fast)}.user-menu-popover .menu-version__cta:hover .arrow{transform:translate(2px)}.user-menu-popover .menu-version__cta:focus-visible{box-shadow:var(--shadow-focus);border-radius:var(--r-sm);outline:none}.spec-modal-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;background:#0f0c1eb3;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.spec-modal{background:var(--bg,#fff);color:var(--ink,#1a1a2e);border:1px solid var(--ink-faint,#00000014);border-radius:16px;flex-direction:column;width:100%;max-width:880px;max-height:88vh;display:flex;overflow:hidden;box-shadow:0 24px 80px #0006}.spec-modal-header{color:#fff;align-items:center;gap:16px;padding:20px 24px;display:flex}.spec-modal-icon{background:#fff3;border-radius:10px;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:24px;display:grid}.spec-modal-titles{flex:1;min-width:0}.spec-modal-titles h2{margin:0;font-size:20px;font-weight:700;line-height:1.2}.spec-modal-titles p{opacity:.9;margin:4px 0 0;font-size:13px}.spec-modal-pill{text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;background:#fff3;border-radius:12px;margin-left:auto;padding:4px 10px;font-size:11px;font-weight:600}.spec-modal-close{color:#fff;cursor:pointer;opacity:.85;background:0 0;border:none;border-radius:6px;place-items:center;padding:6px;transition:opacity .15s;display:grid}.spec-modal-close:hover{opacity:1;background:#ffffff26}.spec-modal-body{flex:1;min-height:320px;display:flex;overflow:hidden}.spec-modal-sidebar{background:var(--bg-soft,#fafaff);border-right:1px solid var(--ink-faint,#00000014);flex-shrink:0;width:220px;padding:12px 0;overflow-y:auto}.spec-modal-sidebar-section-label{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft,#6b6b8a);margin-top:4px;padding:10px 16px 4px;font-size:10px;font-weight:700}.spec-modal-sidebar-section-label:first-child{margin-top:0}.spec-modal-sidebar-item{cursor:pointer;width:100%;color:var(--ink,#1a1a2e);text-align:left;background:0 0;border:none;border-left:3px solid #0000;align-items:center;gap:10px;padding:9px 16px;font-family:inherit;font-size:13px;display:flex}.spec-modal-sidebar-item:hover{background:var(--bg-hover,#0000000a)}.spec-modal-sidebar-item.active{background:var(--bg-hover,#0000000a);border-left-color:var(--accent,#5b3fbf);color:var(--accent,#5b3fbf);font-weight:600}.spec-modal-sidebar-item-icon{color:var(--ink-muted,#5a5a58);flex-shrink:0}.spec-modal-sidebar-item.active .spec-modal-sidebar-item-icon{color:var(--accent,#5b3fbf)}.spec-modal-panel{flex:1;padding:20px 24px;overflow-y:auto}.spec-modal-label{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft,#6b6b8a);margin-top:18px;margin-bottom:8px;font-size:11px;font-weight:600}.spec-modal-label:first-child{margin-top:0}.spec-modal-desc{color:var(--ink,#1a1a2e);margin:0;font-size:14px;line-height:1.55}.spec-modal-bullets{color:var(--ink,#1a1a2e);margin:0;padding-left:18px;font-size:13px;line-height:1.7}.spec-modal-meta{color:var(--ink-soft,#6b6b8a);background:var(--bg-soft,#fafaff);border:1px solid var(--ink-faint,#00000014);border-radius:8px;flex-wrap:wrap;gap:14px;padding:10px 14px;font-size:12px;display:flex}.spec-modal-meta>span{align-items:center;display:inline-flex}.spec-modal-meta>span>svg{flex-shrink:0;margin-right:6px}.spec-modal-meta strong{color:var(--ink,#1a1a2e);font-weight:600}.spec-modal-meta .ok{color:#2ea065;font-weight:600}.spec-modal-crumb{color:var(--ink-soft,#6b6b8a);margin-bottom:12px;font-size:12px}.spec-modal-crumb strong{color:var(--ink,#1a1a2e);font-weight:600}.spec-modal-instructions{background:var(--bg-soft,#fafaff);color:var(--ink,#1a1a2e);white-space:pre-wrap;word-break:break-word;border:1px solid var(--ink-faint,#00000014);border-radius:8px;max-height:400px;margin-top:8px;padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.55;overflow-y:auto}.spec-modal-instructions-details{background:var(--bg-soft,#fafaff);border:1px solid var(--ink-faint,#00000014);border-radius:8px;margin-top:16px;padding:12px 14px}.spec-modal-instructions-details summary{cursor:pointer;color:var(--accent,#5b3fbf);font-size:13px;font-weight:600}.spec-modal-empty{color:var(--ink-soft,#6b6b8a);font-size:14px;font-style:italic}.skill-card__info-btn{border-radius:var(--r-md);background:var(--surface);border:1px solid var(--border);width:22px;height:22px;color:var(--ink-muted);cursor:pointer;z-index:2;place-items:center;transition:background .15s,color .15s,border-color .15s;display:grid;position:absolute;top:12px;right:12px}.skill-card__info-btn:hover{color:var(--xds-primary);background:#7c47ca1f;border-color:#7c47ca4d}.capability-catalog{gap:12px;margin:16px 0 0;padding:0;list-style:none;display:grid}.capability-catalog__item{background:var(--bg-soft,#fafaff);border:1px solid var(--ink-faint,#00000014);border-radius:10px;padding:14px 16px}.capability-catalog__name{align-items:center;gap:10px;margin-bottom:6px;font-size:14px;display:flex}.capability-catalog__name code{font-size:14px;font-weight:600}.capability-catalog__version{color:var(--ink-soft,#6b6b8a);background:var(--bg,#fff);border:1px solid var(--ink-faint,#00000014);border-radius:4px;padding:2px 6px;font-size:11px}.capability-catalog__desc{color:var(--ink,#1a1a2e);margin:0 0 8px;font-size:13px;line-height:1.55}.capability-catalog__meta{color:var(--ink-soft,#6b6b8a);gap:6px;font-size:11px;display:flex}.page-title{color:var(--ink);letter-spacing:-.02em;margin:0;font-size:1.35rem;font-weight:700}.btn-primary-purple{background:var(--xds-primary);color:#fff;border-radius:var(--r-full);cursor:pointer;transition:all var(--t-fast);border:1px solid #0000;align-items:center;gap:8px;padding:8px 14px;font-size:.85rem;font-weight:500;display:inline-flex}.btn-primary-purple:hover{background:var(--xds-primary-hover)}.projects-landing{flex:1;padding:28px 32px 32px;overflow-y:auto}.projects-landing__toolbar{align-items:center;gap:10px;margin-bottom:22px;display:flex}.projects-landing__toolbar .page-title{flex:1}.toolbar-icon{width:36px;height:36px;color:var(--ink-muted);border-radius:var(--r-md);cursor:pointer;transition:all var(--t-fast);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.toolbar-icon:hover{background:var(--surface-hover);color:var(--ink)}.projects-empty{text-align:center;color:var(--ink-muted);padding:64px 32px;font-size:.95rem}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.project-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);cursor:pointer;min-height:152px;transition:all var(--t-fast);box-shadow:var(--shadow-xs);color:inherit;flex-direction:column;padding:18px 20px;text-decoration:none;display:flex}.project-card:hover{box-shadow:var(--shadow-sm);border-color:var(--border-strong);transform:translateY(-1px)}.project-card__title{color:var(--ink);letter-spacing:-.01em;margin-bottom:6px;font-size:1.025rem;font-weight:600}.project-card__desc{color:var(--ink-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;font-size:.85rem;line-height:1.5;display:-webkit-box;overflow:hidden}.project-card__meta{color:var(--ink-faint);align-items:center;gap:8px;margin-top:14px;font-size:.78rem;display:flex}.project-card__shared{background:var(--xds-light);color:var(--accent-text);border-radius:var(--r-full);align-items:center;gap:4px;padding:2px 8px;font-size:.72rem;font-weight:500;display:inline-flex}.dot-sep{color:var(--ink-faint)}.project-modal-overlay{z-index:50;background:#0a0a0a66;justify-content:center;align-items:flex-start;padding:60px 20px 20px;display:flex;position:fixed;inset:0;overflow-y:auto}.project-modal{background:var(--surface);border-radius:var(--r-xl);width:100%;max-width:520px;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.project-modal__head{padding:22px 24px 4px}.project-modal__head h2{letter-spacing:-.015em;margin:0;font-size:1.2rem;font-weight:600}.project-modal__head .lead{color:var(--ink-muted);margin-top:6px;font-size:.825rem;line-height:1.5}.project-modal__body{padding:16px 24px 4px}.project-modal__foot{border-top:1px solid var(--border);background:0 0;justify-content:flex-end;gap:10px;margin-top:18px;padding:16px 24px 20px;display:flex}.field{margin-bottom:14px}.field label{color:var(--ink-muted);margin-bottom:6px;font-size:.78rem;font-weight:500;display:block}.field label .opt{color:var(--ink-faint);font-weight:400}.field .control{border:1px solid var(--border-strong);border-radius:var(--r-md);width:100%;font:inherit;font-family:var(--font-sans);background:var(--surface);color:var(--ink);padding:9px 12px;font-size:.85rem}.field textarea.control{resize:vertical;min-height:84px;font-family:var(--font-mono);font-size:.75rem;line-height:1.5}.field .control:focus{border-color:var(--accent);box-shadow:var(--shadow-focus);outline:none}.field .help{color:var(--ink-faint);margin-top:4px;font-size:.72rem}.form-error{background:var(--danger-soft);color:var(--danger);border-radius:var(--r-md);padding:10px 12px;font-size:.82rem}.radios{flex-direction:column;gap:8px;display:flex}.radios .radio-card{border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;background:var(--surface);transition:all var(--t-fast);align-items:flex-start;gap:12px;margin-bottom:0;padding:11px 13px;display:flex}.radios .radio-card:hover{border-color:var(--border-strong)}.radios .radio-card.selected{border-color:var(--accent);background:var(--accent-soft)}.radios .radio-card .radio-dot{border:2px solid var(--ink-faint);background:0 0;border-radius:50%;flex-shrink:0;width:16px;min-width:16px;height:16px;min-height:16px;margin-top:2px;display:block}.radios .radio-card.selected .radio-dot{border-color:var(--accent);background:radial-gradient(circle, var(--accent) 0 4px, transparent 5px)}.radios .radio-card .rt{color:var(--ink);font-size:.825rem;font-weight:600;display:block}.radios .radio-card .rd{color:var(--ink-muted);margin-top:2px;font-size:.75rem;line-height:1.45;display:block}.radios .radio-card.selected .rt{color:var(--accent-text)}.btn-primary-purple:disabled{opacity:.5;cursor:not-allowed}.disclosure-body ol{margin:12px 0 6px;padding-left:22px}.disclosure-body li{color:var(--ink-muted);margin-bottom:12px;font-size:.85rem;line-height:1.55}.disclosure-body li strong{color:var(--ink);font-weight:600}.disclosure-body em{font-style:italic}.proj-title-band{align-items:center;gap:8px;padding:20px 28px 18px;display:flex}.proj-title-band .page-title{flex:1;font-size:1.55rem}.proj-title-band__actions{align-items:center;gap:8px;display:flex}.btn-icon-round{border-radius:var(--r-full);background:var(--surface);border:1px solid var(--border);width:36px;height:36px;color:var(--ink-muted);cursor:pointer;transition:all var(--t-fast);justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-icon-round:hover{background:var(--surface-hover);color:var(--ink)}.btn-icon-round.active{color:var(--xds-primary);border-color:var(--xds-light);background:var(--xds-light)}.btn-share{background:var(--surface);color:var(--ink);border:1px solid var(--border-strong);border-radius:var(--r-full);cursor:pointer;transition:all var(--t-fast);align-items:center;gap:8px;padding:8px 18px;font-size:.85rem;font-weight:500;display:inline-flex}.btn-share:hover{background:var(--surface-hover)}.proj-detail-grid{grid-template-columns:1fr 320px;gap:24px;padding:0 28px 28px;display:grid}@media (max-width:900px){.proj-detail-grid{grid-template-columns:1fr}}.proj-detail__right{flex-direction:column;gap:12px;display:flex}.panel-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-xs);padding:16px 18px}.panel-card h3{color:var(--ink);align-items:center;gap:8px;margin-bottom:10px;font-size:.825rem;font-weight:600;display:flex}.panel-card h3 .icon-btn-mini{margin-left:auto}.files-dropzone{border-radius:var(--r-md);transition:all var(--t-fast);border:1px dashed #0000;padding:4px}.files-dropzone.drag-over{border-color:var(--xds-primary);background:var(--accent-soft)}.files-empty{text-align:center;color:var(--ink-faint);padding:20px 8px;font-size:.78rem}.files-uploading{color:var(--ink-muted);text-align:center;margin-top:8px;font-size:.72rem}.files-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.file-card{border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg);flex-direction:column;min-height:88px;padding:10px 11px;display:flex;position:relative}.file-card__head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.file-card__icon{color:var(--ink-muted);flex-shrink:0}.file-card__delete{border-radius:var(--r-sm);width:20px;height:20px;color:var(--ink-faint);cursor:pointer;transition:all var(--t-fast);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.file-card__delete:hover{background:var(--danger-soft);color:var(--danger)}.file-card__name{color:var(--ink);word-break:break-word;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:4px;font-size:.75rem;font-weight:500;line-height:1.3;display:-webkit-box;overflow:hidden}.file-card__meta{color:var(--ink-faint);font-size:.65rem;font-family:var(--font-mono);margin-top:auto}.file-card__type{font-size:.6rem;font-family:var(--font-mono);letter-spacing:.05em;color:var(--ink-muted);text-transform:uppercase;margin-top:4px;font-weight:500}.capacity{margin-bottom:10px}.capacity-bar{background:var(--bg-subtle);border-radius:var(--r-full);height:5px;margin-bottom:6px;overflow:hidden}.capacity-fill{border-radius:var(--r-full);height:100%;transition:width .2s}.capacity-fill--ok{background:var(--xds-green,#82d09e)}.capacity-fill--info{background:var(--xds-yellow,#f5c87b)}.capacity-fill--warn{background:#c47a26}.capacity-meta{color:var(--ink-muted);font-size:.7rem;font-family:var(--font-mono)}.bookmark-add-form{background:var(--bg-subtle);border-radius:var(--r-md);margin-bottom:12px;padding:10px}.bookmark-add-form .control{margin-bottom:8px}.bookmark-add-form__actions{justify-content:flex-end;gap:6px;display:flex}.bookmarks-empty{text-align:center;color:var(--ink-faint);padding:16px 0;font-size:.75rem}.bookmarks-list{flex-direction:column;display:flex}.bookmark-row{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:8px 0;display:flex}.bookmark-row:last-child{border-bottom:0}.bookmark-row__favicon{border-radius:var(--r-sm);background:var(--bg-subtle);width:26px;height:26px;color:var(--ink-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.bookmark-row__favicon span{font-family:var(--font-mono);color:var(--ink-faint);font-size:.55rem;font-weight:600;position:absolute;bottom:1px;right:2px}.bookmark-row__info{flex:1;min-width:0}.bookmark-row__title{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;font-weight:500;line-height:1.3;text-decoration:none;display:block;overflow:hidden}.bookmark-row__title:hover{color:var(--xds-primary)}.bookmark-row__url{color:var(--ink-faint);font-size:.65rem;font-family:var(--font-mono);white-space:nowrap;text-overflow:ellipsis;line-height:1.3;overflow:hidden}.bookmark-status{font-family:var(--font-mono);border-radius:var(--r-full);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;padding:2px 6px;font-size:.58rem;font-weight:500}.bookmark-status--fresh{background:var(--success-soft,#e3f1e5);color:var(--success,#1f8a4c)}.bookmark-status--stale{background:var(--warn-soft,#fbf2e0);color:var(--warn,#c47a26)}.bookmark-status--error{background:var(--danger-soft);color:var(--danger)}.icon-btn-mini{border-radius:var(--r-sm);cursor:pointer;width:24px;height:24px;color:var(--ink-muted);transition:all var(--t-fast);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.icon-btn-mini:hover{background:var(--bg-subtle);color:var(--ink)}.instructions-preview{font-family:var(--font-mono);color:var(--ink-muted);white-space:pre-wrap;max-height:240px;margin:0;font-size:.72rem;line-height:1.55;overflow-y:auto}.instructions-empty{color:var(--ink-faint);font-size:.78rem;font-style:italic}.new-chat-cta{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-xs);align-items:center;gap:16px;margin-bottom:22px;padding:18px 22px;display:flex}.new-chat-cta__info{flex:1;min-width:0}.new-chat-cta__info h3{color:var(--ink);margin-bottom:2px;font-size:.92rem;font-weight:600}.new-chat-cta__info p{color:var(--ink-muted);font-size:.8rem;line-height:1.45}.new-chat-cta__btn{background:var(--xds-primary);color:#fff;border-radius:var(--r-full);cursor:pointer;transition:background var(--t-fast);border:none;flex-shrink:0;align-items:center;gap:8px;padding:10px 18px 10px 14px;font-size:.85rem;font-weight:500;display:inline-flex}.new-chat-cta__btn:hover{background:var(--xds-primary-hover)}.new-chat-cta__plus{border-radius:var(--r-full);background:#ffffff38;place-items:center;width:18px;height:18px;display:grid}.proj-chats__heading{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:4px;padding:6px 0;font-size:.7rem;font-weight:500}.proj-chats-empty{color:var(--ink-faint);text-align:center;padding:24px 0;font-size:.85rem}.proj-chat-row{border-bottom:1px solid var(--border);cursor:pointer;color:inherit;transition:background var(--t-fast);flex-direction:column;padding:14px 0;text-decoration:none;display:flex}.proj-chat-row:hover{background:var(--surface-hover);border-radius:var(--r-md);margin:0 -8px;padding:14px 8px}.proj-chat-row__title{color:var(--ink);font-size:.9rem;font-weight:500}.proj-chat-row__meta{color:var(--ink-faint);align-items:center;gap:6px;margin-top:3px;font-size:.75rem;display:flex}.proj-chat-row__meta .spec-dot{border-radius:50%;width:6px;height:6px}.avatar--xs{width:18px!important;height:18px!important;font-size:.55rem!important}.crumb{color:var(--ink-muted);cursor:pointer;transition:color var(--t-fast);align-items:center;gap:6px;font-size:.85rem;text-decoration:none;display:inline-flex}.crumb:hover{color:var(--ink)}.avatar{background:var(--xds-light);color:var(--accent-text);border-radius:var(--r-full);justify-content:center;align-items:center;font-size:.7rem;font-weight:600;display:inline-flex}.project-banner{background:var(--surface);border:1px solid var(--xds-light);border-radius:var(--r-full);box-shadow:var(--shadow-xs);align-self:center;align-items:center;gap:10px;margin-bottom:22px;padding:7px 8px 7px 14px;display:inline-flex}.project-banner .ic{color:var(--xds-primary)}.project-banner__label{color:var(--ink-muted);font-size:.8rem;font-weight:500}.project-banner__label strong{color:var(--xds-primary-pressed);font-weight:600}.project-banner__remove{width:22px;height:22px;color:var(--ink-faint);border-radius:var(--r-full);cursor:pointer;transition:all var(--t-fast);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.project-banner__remove:hover{background:var(--bg-subtle);color:var(--danger)}.message-meta{align-items:center;gap:8px;margin-bottom:6px;display:flex}.message-meta__name{color:var(--ink);font-size:.82rem;font-weight:600}.avatar--md{width:28px!important;height:28px!important;font-size:.7rem!important}.kebab-wrap{display:inline-flex;position:relative}.kebab-menu{z-index:30;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);min-width:200px;box-shadow:var(--shadow-md);flex-direction:column;padding:4px;display:flex;position:absolute;top:calc(100% + 6px);right:0}.kebab-menu__item{text-align:left;border-radius:var(--r-sm);color:var(--ink);cursor:pointer;transition:background var(--t-fast);background:0 0;border:none;padding:8px 12px;font-family:inherit;font-size:.85rem}.kebab-menu__item:hover{background:var(--surface-hover)}.kebab-menu__item--danger{color:var(--danger)}.kebab-menu__item--danger:hover{background:var(--danger-soft)}.kebab-menu__item{justify-content:space-between;align-items:center;gap:8px;display:flex}.kebab-menu__hint{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);background:var(--bg-subtle);border-radius:var(--r-full);padding:2px 6px;font-size:.6rem;font-weight:500}.btn-danger{background:var(--danger);color:#fff;border-radius:var(--r-full);cursor:pointer;transition:all var(--t-fast);border:1px solid #0000;align-items:center;gap:8px;padding:8px 14px;font-size:.85rem;font-weight:500;display:inline-flex}.btn-danger:hover{filter:brightness(1.08)}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.share-search{position:relative}.share-search__icon{color:var(--ink-faint);pointer-events:none;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.share-search__input{padding-left:32px}.share-results{border:1px solid var(--border);border-radius:var(--r-md);flex-direction:column;margin-bottom:14px;display:flex;overflow:hidden}.share-empty{text-align:center;color:var(--ink-faint);margin-bottom:14px;padding:12px;font-size:.78rem}.share-members{border-top:1px solid var(--border);margin-top:6px;padding-top:10px}.share-members__heading{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin-bottom:6px;font-size:.65rem;font-weight:500}.member-row{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:8px 10px;display:flex}.share-results .member-row:last-child,.share-members .member-row:last-child{border-bottom:0}.member-row__info{flex:1;min-width:0}.member-row__name{color:var(--ink);font-size:.8rem;font-weight:500;line-height:1.3}.member-row__mail{color:var(--ink-faint);font-size:.7rem;font-family:var(--font-mono);line-height:1.3}.member-row__owner{font-family:var(--font-mono);color:var(--accent-text);background:var(--accent-soft);border-radius:var(--r-full);text-transform:uppercase;letter-spacing:.04em;padding:3px 8px;font-size:.62rem;font-weight:500}.member-row__remove{width:24px;height:24px;color:var(--ink-faint);border-radius:var(--r-full);cursor:pointer;transition:all var(--t-fast);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.member-row__remove:hover{background:var(--danger-soft);color:var(--danger)}.member-row__remove:disabled{opacity:.5;cursor:not-allowed}.chat-topbar__avatars{align-items:center;margin-left:auto;display:flex}.chat-topbar__avatars .avatar{border:2px solid var(--bg);margin-left:-6px}.chat-topbar__avatars .avatar:first-child{margin-left:0}.chat-topbar__avatars .avatar--more{background:var(--bg-subtle)!important;color:var(--ink-muted)!important;font-size:.55rem!important}.readonly-banner{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--r-xl);color:var(--ink-muted);margin-bottom:22px;padding:18px 22px;font-size:.85rem;line-height:1.45}.proj-chat-row--readonly{cursor:default;pointer-events:none;opacity:.7}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
