:root{--bg: #0e0d0b;--surface: #131210;--surface-2: #1a1814;--surface-3: #22201a;--border: #363028;--border-light: #3f382f;--border-subtle: color-mix(in srgb, var(--border) 60%, transparent);--surface-hover: var(--surface-2);--accent-fg: var(--on-accent);--overlay: rgba(0, 0, 0, .6);--text: #e2d9c8;--text-muted: #b8aa92;--text-dim: #908676;--accent: #c9a96e;--accent-rgb: 201, 169, 110;--bg-rgb: 14, 13, 11;--text-dim-rgb: 144, 134, 118;--accent-hover: #dbbf82;--accent-dim: #5a4120;--accent-2: #c9a96e;--accent-2-dim: #5a4120;--on-accent-2: #0e0d0b;--danger: #b35454;--danger-rgb: 179, 84, 84;--success: #5a9e78;--success-rgb: 90, 158, 120;--sidebar-w: 272px;--nav-rail-w: 200px;--bottom-tab-h: 56px;--width-switcher-min: 120px;--width-switcher-max: 200px;--activity-monitor-height: 32px;--font-display: "Cormorant", Georgia, serif;--font-ui: "Sora", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Courier New", monospace;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-pill: 999px;--shadow-lg: 0 16px 40px rgba(0, 0, 0, .5);--hover-bg: var(--surface-2);--accent-bg: color-mix(in srgb, var(--accent) 8%, transparent);--radius: var(--radius-md);--on-accent: #0e0d0b;--on-danger: #fff;--iframe-bg: #fff;--warning: #d4a056;--warning-rgb: 212, 160, 86;--info: #5abcd8;--info-rgb: 90, 188, 216;--t: .18s cubic-bezier(.4, 0, .2, 1);--icon-nav: 16px;--icon-action: 18px;--z-behind: -1;--z-base: 1;--z-floating: 50;--z-panel: 100;--z-overlay: 200;--z-dropdown: 400;--z-toast: 700;--z-sheet: 900;--z-modal: 1000;--z-context-menu: 9000;--sp-px: 1px;--sp-0: 0px;--sp-0_5: 2px;--sp-1: 4px;--sp-1_5: 6px;--sp-2: 8px;--sp-2_5: 10px;--sp-3: 12px;--sp-3_5: 14px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-7: 28px;--sp-8: 32px;--sp-10: 40px;--sp-12: 48px;--sp-16: 64px;--sp-20: 80px;--sp-24: 96px;--container-sm: 640px;--container-md: 880px;--container-lg: 1200px;--control-height: 36px;--text-2xs: 10px;--text-xs: 11px;--text-sm: 12px;--text-base: 13px;--text-md: 14px;--text-lg: 16px;--text-xl: 18px;--text-2xl: 22px;--text-3xl: 26px;--text-4xl: 36px;--text-display: 52px;--icon-size-lg: 20px;--lh-none: 1;--lh-tight: 1.2;--lh-snug: 1.35;--lh-normal: 1.5;--lh-relaxed: 1.65;--fw-light: 300;--fw-normal: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--opacity-subtle: .08;--opacity-border: .12;--opacity-overlay: .32;--opacity-dim: .4;--opacity-muted: .6;--opacity-disabled: .5;--border-width: 1px;--border-width-md: 2px;--border-width-lg: 3px;--duration-fast: .1s;--duration-base: .2s;--duration-slow: .35s;--duration-enter: .5s;--duration-exit: .15s;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-linear: linear;--delay-sm: .12s;--delay-md: .18s;--delay-lg: .24s;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .2);--shadow-md: 0 4px 16px rgba(0, 0, 0, .35)}@font-face{font-family:Cormorant;font-style:italic;font-weight:300;font-display:swap;src:url(/fonts/cormorant-v24-H4cjBXOCl9bbnla_nHIq6quxoqOOag.woff2) format("woff2"),url(https://fonts.gstatic.com/s/cormorant/v24/H4cjBXOCl9bbnla_nHIq6quxoqOOag.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant;font-style:italic;font-weight:300;font-display:swap;src:url(/fonts/cormorant-v24-H4cjBXOCl9bbnla_nHIq6qu_oqM.woff2) format("woff2"),url(https://fonts.gstatic.com/s/cormorant/v24/H4cjBXOCl9bbnla_nHIq6qu_oqM.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/cormorant-v24-H4cjBXOCl9bbnla_nHIq6quxoqOOag.woff2) format("woff2"),url(https://fonts.gstatic.com/s/cormorant/v24/H4cjBXOCl9bbnla_nHIq6quxoqOOag.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/cormorant-v24-H4cjBXOCl9bbnla_nHIq6qu_oqM.woff2) format("woff2"),url(https://fonts.gstatic.com/s/cormorant/v24/H4cjBXOCl9bbnla_nHIq6qu_oqM.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant;font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/cormorant-v24-H4cjBXOCl9bbnla_nHIq6quxoqOOag.woff2) format("woff2"),url(https://fonts.gstatic.com/s/cormorant/v24/H4cjBXOCl9bbnla_nHIq6quxoqOOag.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant;font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/cormorant-v24-H4cjBXOCl9bbnla_nHIq6qu_oqM.woff2) format("woff2"),url(https://fonts.gstatic.com/s/cormorant/v24/H4cjBXOCl9bbnla_nHIq6qu_oqM.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/cormorant-v24-H4clBXOCl9bbnla_nHIq4Zu9uqc.woff2) format("woff2"),url(https://fonts.gstatic.com/s/cormorant/v24/H4clBXOCl9bbnla_nHIq4Zu9uqc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/cormorant-v24-H4clBXOCl9bbnla_nHIq75u9.woff2) format("woff2"),url(https://fonts.gstatic.com/s/cormorant/v24/H4clBXOCl9bbnla_nHIq75u9.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/cormorant-v24-H4clBXOCl9bbnla_nHIq4Zu9uqc.woff2) format("woff2"),url(https://fonts.gstatic.com/s/cormorant/v24/H4clBXOCl9bbnla_nHIq4Zu9uqc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/cormorant-v24-H4clBXOCl9bbnla_nHIq75u9.woff2) format("woff2"),url(https://fonts.gstatic.com/s/cormorant/v24/H4clBXOCl9bbnla_nHIq75u9.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/cormorant-v24-H4clBXOCl9bbnla_nHIq4Zu9uqc.woff2) format("woff2"),url(https://fonts.gstatic.com/s/cormorant/v24/H4clBXOCl9bbnla_nHIq4Zu9uqc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/cormorant-v24-H4clBXOCl9bbnla_nHIq75u9.woff2) format("woff2"),url(https://fonts.gstatic.com/s/cormorant/v24/H4clBXOCl9bbnla_nHIq75u9.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jetbrainsmono-v24-tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2) format("woff2"),url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jetbrainsmono-v24-tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2) format("woff2"),url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jetbrainsmono-v24-tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2) format("woff2"),url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jetbrainsmono-v24-tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2) format("woff2"),url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/sora-v17-xMQbuFFYT72XzQspDre2.woff2) format("woff2"),url(https://fonts.gstatic.com/s/sora/v17/xMQbuFFYT72XzQspDre2.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sora;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/sora-v17-xMQbuFFYT72XzQUpDg.woff2) format("woff2"),url(https://fonts.gstatic.com/s/sora/v17/xMQbuFFYT72XzQUpDg.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/sora-v17-xMQbuFFYT72XzQspDre2.woff2) format("woff2"),url(https://fonts.gstatic.com/s/sora/v17/xMQbuFFYT72XzQspDre2.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sora;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/sora-v17-xMQbuFFYT72XzQUpDg.woff2) format("woff2"),url(https://fonts.gstatic.com/s/sora/v17/xMQbuFFYT72XzQUpDg.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/sora-v17-xMQbuFFYT72XzQspDre2.woff2) format("woff2"),url(https://fonts.gstatic.com/s/sora/v17/xMQbuFFYT72XzQspDre2.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sora;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/sora-v17-xMQbuFFYT72XzQUpDg.woff2) format("woff2"),url(https://fonts.gstatic.com/s/sora/v17/xMQbuFFYT72XzQUpDg.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/sora-v17-xMQbuFFYT72XzQspDre2.woff2) format("woff2"),url(https://fonts.gstatic.com/s/sora/v17/xMQbuFFYT72XzQspDre2.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sora;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/sora-v17-xMQbuFFYT72XzQUpDg.woff2) format("woff2"),url(https://fonts.gstatic.com/s/sora/v17/xMQbuFFYT72XzQUpDg.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:100 700;src:url(/fonts/materialsymbolsoutlined-v344-kJEhBvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oFsI.woff2) format("woff2"),url(https://fonts.gstatic.com/s/materialsymbolsoutlined/v344/kJEhBvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oFsI.woff2) format("woff2")}.material-symbols-outlined{font-family:Material Symbols Outlined;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased}:focus{outline:none}:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px;border-radius:var(--radius-sm)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;overflow:hidden}body{font-family:var(--font-ui);background:var(--bg);color:var(--text);font-size:var(--text-md);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{-webkit-tap-highlight-color:transparent}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}.app{display:flex;height:100dvh;overflow:hidden}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}button{cursor:pointer;font:inherit;color:inherit;background:none;border:none;padding:0}button:disabled{cursor:not-allowed;opacity:var(--opacity-disabled)}a{color:var(--accent);text-decoration:none;transition:color var(--t)}a:hover{color:var(--accent-hover)}input,textarea,select{font:inherit;color:inherit}input[type=text],input[type=email],input[type=password],input[type=search],input[type=tel],input[type=url],input[type=number],select,textarea{min-height:var(--control-height)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--fw-semibold);line-height:var(--lh-snug)}@media(max-width:768px){button:not(.touch-target-none),[role=button]:not(.touch-target-none),input[type=submit],input[type=button],input[type=reset],a[role=button]:not(.touch-target-none){min-height:44px;min-width:44px}}.nav-rail{width:var(--nav-rail-w);flex-shrink:0;display:flex;flex-direction:column;background:var(--surface);border-right:1px solid var(--border);overflow:hidden;z-index:var(--z-sidebar)}.nav-rail-header{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-4) var(--sp-3) var(--sp-3);border-bottom:1px solid var(--border);flex-shrink:0}.nav-rail-logo{display:flex;align-items:center;gap:var(--sp-2)}.nav-rail-logo-mark{width:28px;height:28px;border-radius:var(--radius-sm);object-fit:contain;flex-shrink:0}.nav-rail-logo-text{font-family:var(--font-display);font-size:var(--text-md);color:var(--text);font-weight:600;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-rail-biz-select{width:100%;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font-ui);font-size:var(--text-sm);padding:var(--sp-1_5) var(--sp-2);cursor:pointer;transition:border-color var(--t),background var(--t)}.nav-rail-biz-select:hover{border-color:var(--accent)}.nav-rail-biz-select:focus{outline:none;border-color:var(--accent)}.nav-rail-items{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--sp-2) 0}.nav-rail-item{display:flex;align-items:center;gap:var(--sp-2_5);width:100%;padding:var(--sp-2_5) var(--sp-3_5);border:none;background:none;color:var(--text-muted);font-family:var(--font-ui);font-size:var(--text-sm);cursor:pointer;border-radius:0;text-align:left;transition:background var(--t),color var(--t);position:relative}.nav-rail-item:hover{background:var(--surface-2);color:var(--text)}.nav-rail-item.is-active{color:var(--accent);background:var(--accent-dim);font-weight:500}.nav-rail-item.is-active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.nav-rail-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-rail-footer{flex-shrink:0;padding:var(--sp-2) var(--sp-3_5);border-top:var(--border-width) solid var(--border)}.nav-rail-version{font-family:var(--font-mono);font-size:var(--text-2xs);color:rgba(var(--text-dim-rgb),.7);letter-spacing:.04em}@media(max-width:768px){.nav-rail{display:none}}.bottom-tab-bar{display:none}@media(max-width:768px){.bottom-tab-bar{position:fixed;bottom:0;left:0;right:0;height:var(--bottom-tab-h);z-index:var(--z-sidebar);display:flex;align-items:stretch;overflow-x:auto;overflow-y:hidden;background:var(--surface);border-top:1px solid var(--border);scrollbar-width:none;-webkit-overflow-scrolling:touch}.bottom-tab-bar::-webkit-scrollbar{display:none}.app{padding-bottom:var(--bottom-tab-h)}}.bottom-tab{flex:0 0 auto;min-width:64px;padding:var(--sp-1) var(--sp-2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-0_5);background:none;border:none;color:var(--text-muted);font-family:var(--font-ui);font-size:var(--text-2xs);cursor:pointer;transition:color var(--t),background var(--t);position:relative}.bottom-tab:hover{color:var(--text);background:var(--surface-2)}.bottom-tab.is-active{color:var(--accent)}.bottom-tab.is-active:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--accent)}.bottom-tab-label{white-space:nowrap;font-size:var(--text-2xs);letter-spacing:.02em}.sidebar{width:var(--sidebar-w);flex-shrink:0;display:flex;flex-direction:column;background:var(--surface);border-right:1px solid var(--border);overflow:hidden;transition:width var(--t),opacity var(--t)}.sidebar.collapsed{width:0;opacity:0;pointer-events:none}.sidebar{position:relative}.sidebar-resize{position:absolute;top:0;right:-3px;width:6px;height:100%;cursor:col-resize;z-index:var(--z-floating);background:transparent;transition:background var(--t);touch-action:none}@media(hover:hover){.sidebar-resize:hover{background:var(--accent-dim)}}.conv-context-menu{position:fixed;z-index:var(--z-context-menu);list-style:none;margin:0;padding:var(--sp-1) 0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 8px 28px #0006;font-size:var(--text-sm);font-family:var(--font-ui);min-width:140px;color:var(--text)}.conv-context-menu li{padding:var(--sp-1_5) var(--sp-3_5);cursor:pointer}.conv-context-menu li:hover{background:var(--surface-2)}.conv-context-menu li.conv-context-menu-danger{color:var(--danger)}.conv-context-menu li.conv-context-menu-danger:hover{background:var(--danger);color:var(--on-danger)}.history-item--selected{background:var(--accent-dim)!important;border-left-color:var(--accent)}.history-item-check{margin-right:var(--sp-2);flex-shrink:0;accent-color:var(--accent)}.sidebar-select-bar{position:sticky;bottom:0;display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2_5) 14px calc(10px + env(safe-area-inset-bottom,var(--sp-0)));background:var(--surface);border-top:1px solid var(--border);z-index:var(--z-base)}.sidebar-select-cancel,.sidebar-select-delete{padding:var(--sp-1_5) var(--sp-3);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:var(--text-sm);font-family:var(--font-ui);cursor:pointer}.sidebar-select-delete{color:var(--danger);border-color:var(--danger)}.sidebar-select-delete:disabled{opacity:.4;cursor:not-allowed}.sidebar-select-count{flex:1;font-size:var(--text-xs);color:var(--text-muted);font-family:var(--font-mono)}.sidebar-header{padding:var(--sp-5) var(--sp-4) var(--sp-3_5);border-bottom:1px solid var(--border);flex-shrink:0}.logo{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--fw-normal);font-style:italic;color:var(--accent);letter-spacing:.01em;line-height:1.2}.logo-rule{width:24px;height:1px;background:var(--accent-dim);margin:var(--sp-1_5) 0 var(--sp-1)}.logo-sub{font-size:var(--text-2xs);font-weight:var(--fw-medium);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-family:var(--font-mono)}.biz-selector{display:flex;flex-wrap:wrap;gap:var(--sp-1);padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--border);flex-shrink:0;min-height:0}.new-chat-btn{margin:var(--sp-2_5) var(--sp-4);padding:var(--sp-2) var(--sp-3_5);background:transparent;border:1px dashed var(--border-light);border-radius:var(--radius-md);color:var(--text-muted);font-size:var(--text-sm);font-weight:var(--fw-medium);cursor:pointer;transition:background-color var(--t),color var(--t),border-color var(--t),opacity var(--t),transform var(--t),box-shadow var(--t);font-family:var(--font-ui);display:flex;align-items:center;gap:var(--sp-2);width:calc(100% - 36px)}@media(hover:hover){.new-chat-btn:hover{border-color:var(--accent);color:var(--accent);background:rgba(var(--accent-rgb),.04)}}.sidebar-newchat-row{padding:var(--sp-1) var(--sp-4) var(--sp-2)}.sidebar-newchat-row .new-chat-btn{width:100%;margin:0}.history-scroll{flex:1;overflow-y:auto;padding-bottom:var(--sp-2)}.history-group-label{padding:var(--sp-2) var(--sp-4) var(--sp-0_5);font-size:var(--text-2xs);font-weight:var(--fw-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);font-family:var(--font-mono)}.history-item{padding:var(--sp-2) var(--sp-4);cursor:pointer;transition:background var(--t);border-left:2px solid transparent;border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent)}.history-item:last-child{border-bottom:none}.history-item:hover{background:var(--surface-2)}.history-item.active{background:var(--surface-2);border-left-color:var(--accent-2)}.history-item-title{font-size:var(--text-base);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3;margin-bottom:0}.history-item.active .history-item-title{color:var(--accent-hover)}.history-item-meta{font-size:var(--text-2xs);color:var(--text-muted);font-family:var(--font-mono);display:flex;gap:var(--sp-1_5)}.history-biz-dot{display:inline-block;width:5px;height:5px;border-radius:var(--radius-pill);background:var(--accent-dim);margin-right:3px;vertical-align:middle}.history-initiated-by{color:var(--accent-dim);font-size:var(--text-2xs);font-family:var(--font-mono);opacity:.75;text-transform:lowercase}.skills-panel{border-top:1px solid var(--border);flex-shrink:0}.skills-header{padding:var(--sp-2_5) var(--sp-4) var(--sp-1_5);font-size:var(--text-2xs);font-weight:var(--fw-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);font-family:var(--font-mono);display:flex;align-items:center;justify-content:space-between;cursor:pointer}.skills-header:hover .skills-toggle{color:var(--text-muted)}.skills-toggle{color:var(--text-dim);font-size:var(--text-2xs);transition:color var(--t)}.skills-list{max-height:180px;overflow-y:auto;padding-bottom:var(--sp-2)}.skill-item{padding:var(--sp-1) var(--sp-4);display:flex;align-items:center;gap:var(--sp-2)}.skill-dot{width:4px;height:4px;border-radius:var(--radius-pill);background:var(--accent-dim);flex-shrink:0}.skill-name{font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-mono)}.skill-group-row{padding:var(--sp-1) var(--sp-4);display:flex;align-items:center;gap:var(--sp-1);cursor:pointer;-webkit-user-select:none;user-select:none}.skill-group-row:hover{background:var(--hover-bg)}.skill-group-arrow{color:var(--text-dim);font-size:var(--text-2xs);width:10px;flex-shrink:0}.skill-group-name{font-size:var(--text-sm);color:var(--text-muted);font-family:var(--font-mono);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.skill-group-count{font-size:var(--text-2xs);color:var(--text-dim);font-family:var(--font-mono);flex-shrink:0}.skill-item--nested{padding-left:30px}.conv-search-wrap{position:relative;padding:var(--sp-1_5) var(--sp-3);flex-shrink:0}.conv-search-input{width:100%;padding:var(--sp-1) var(--sp-7) var(--sp-1) var(--sp-2_5);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-xs);font-family:var(--font-mono);color:var(--text);outline:none;box-sizing:border-box;transition:border-color var(--t)}.conv-search-input::placeholder{color:var(--text-dim)}.conv-search-input:focus{border-color:var(--accent-dim)}.conv-search-clear{position:absolute;right:var(--sp-5);top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-dim);font-size:var(--text-2xs);cursor:pointer;padding:var(--sp-0_5) var(--sp-1);line-height:1}.conv-search-clear:hover{color:var(--text-muted)}.agents-panel{border-top:1px solid var(--border);flex-shrink:0}.agents-header{padding:var(--sp-2_5) var(--sp-4) var(--sp-1_5);font-size:var(--text-2xs);font-weight:var(--fw-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);font-family:var(--font-mono);display:flex;align-items:center;justify-content:space-between;cursor:pointer;width:100%;background:none;border:none;text-align:left}.agents-header:hover .agents-toggle{color:var(--text-muted)}.agents-toggle{color:var(--text-dim);font-size:var(--text-2xs);transition:color var(--t)}.agents-list{max-height:200px;overflow-y:auto;padding-bottom:var(--sp-2)}.agent-item{padding:var(--sp-1) var(--sp-4);display:flex;align-items:flex-start;gap:var(--sp-2)}.agent-dot{width:4px;height:4px;border-radius:var(--radius-pill);background:var(--accent);flex-shrink:0;margin-top:var(--sp-1)}.agent-info{display:flex;flex-direction:column;gap:var(--sp-px);overflow:hidden}.agent-name{font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-mono)}.agent-desc{font-size:var(--text-2xs);color:var(--text-dim);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.3}.sidebar-feedback{width:100%;justify-content:flex-start;margin-top:var(--sp-2);padding-top:var(--sp-2);border-top:1px solid var(--border);border-radius:0}.chat-area{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg);min-width:0}.chat-header{display:flex;align-items:center;gap:var(--sp-2_5);padding:0 var(--sp-5);height:52px;border-bottom:1px solid var(--border);flex-shrink:0;background:var(--bg)}.sidebar-toggle{background:none;border:none;cursor:pointer;color:var(--text-muted);padding:var(--sp-2);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;width:34px;height:34px;transition:background-color var(--t),color var(--t),border-color var(--t),opacity var(--t),transform var(--t),box-shadow var(--t);flex-shrink:0}.sidebar-toggle:hover{color:var(--text);background:var(--surface-2)}.chat-header-title{flex:1;font-size:var(--text-base);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-mono)}.biz-badge{padding:var(--sp-0_5) var(--sp-2);border-radius:var(--radius-pill);font-size:var(--text-2xs);font-weight:var(--fw-semibold);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--accent-2);background:color-mix(in srgb,var(--accent-2) 12%,transparent);color:var(--accent-2);font-family:var(--font-mono);flex-shrink:0}.header-action-btn{display:grid;place-items:center;background:none;border:none;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-muted);width:32px;height:32px;padding:0;transition:background-color var(--t),color var(--t),opacity var(--t),transform var(--t),box-shadow var(--t);flex-shrink:0}.header-action-btn span:not(.header-avatar):not(.material-symbols-outlined){display:none}.header-action-btn:hover{color:var(--text);background:var(--surface-2)}.header-action-btn .material-symbols-outlined{font-size:var(--icon-action);font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;width:var(--icon-action);height:var(--icon-action);line-height:var(--icon-action);display:flex;align-items:center;justify-content:center;overflow:hidden}.chat-main{position:relative;isolation:isolate;flex:1;display:flex;flex-direction:column;overflow:visible;min-height:0}.message-list{flex:1;overflow-y:auto;padding:var(--sp-10) 0 260px;min-height:0}.message-list-inner{max-width:740px;margin:0 auto;padding:0 var(--sp-8)}.message-list-fade{position:absolute;left:0;right:0;bottom:0;height:200px;pointer-events:none;background:linear-gradient(to bottom,transparent 0%,var(--bg) 60%,var(--bg) 100%);z-index:1}.message{margin-bottom:var(--sp-8);animation:msgIn var(--duration-base) var(--ease-out) forwards}@keyframes msgIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.message.user{display:flex;flex-direction:column;align-items:flex-end}.msg-user-bubble-wrap{position:relative;max-width:68%;display:flex;flex-direction:column;align-items:flex-end}.message.user .msg-body{background:var(--surface-2);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--sp-3) var(--sp-4);font-size:var(--text-md);line-height:1.65;white-space:pre-wrap;cursor:pointer;transition:border-color var(--t),background-color var(--t)}.message.user .msg-body--active{border-color:var(--accent-dim)}.message.assistant .msg-role{font-size:var(--text-2xs);font-weight:var(--fw-semibold);letter-spacing:.08em;text-transform:uppercase;font-family:var(--font-mono);color:var(--accent-dim);margin-bottom:var(--sp-2)}.msg-usage-meta{display:inline-flex;align-items:center;gap:var(--sp-1_5);font-size:var(--text-xs);font-family:var(--font-mono);color:var(--text-muted);margin:-4px 0 var(--sp-2) 0;opacity:.75;-webkit-user-select:none;user-select:none}.msg-usage-meta .msg-usage-cost{font-weight:var(--fw-semibold);color:var(--text)}.msg-usage-meta .msg-usage-sep{opacity:.45}.message.assistant .msg-body{font-size:var(--text-md);line-height:1.8;border-left:2px solid var(--border-light);padding-left:var(--sp-5);transition:border-color var(--t)}.message.assistant.streaming .msg-body{border-left-color:var(--accent)}.msg-body p{margin-bottom:var(--sp-3)}.msg-body p:last-child{margin-bottom:0}.msg-body h1,.msg-body h2,.msg-body h3,.msg-body h4{font-family:var(--font-display);font-weight:var(--fw-medium);margin:var(--sp-5) 0 var(--sp-2_5);color:var(--text);line-height:1.3}.msg-body h1{font-size:var(--text-3xl)}.msg-body h2{font-size:var(--text-2xl)}.msg-body h3{font-size:var(--text-xl)}.msg-body h4{font-size:var(--text-lg)}.msg-body ul,.msg-body ol{padding-left:var(--sp-5);margin-bottom:var(--sp-3)}.msg-body li{margin-bottom:var(--sp-0_5)}.msg-body li>p{margin:0}.msg-body li>p+p{margin-top:var(--sp-1)}.msg-body strong{color:var(--accent-hover);font-weight:var(--fw-semibold)}.msg-body em{font-style:italic}.msg-body a{color:var(--accent);text-decoration:underline;text-decoration-color:var(--accent-dim);transition:color var(--t)}.msg-body a:hover{color:var(--accent-hover)}.msg-body code{font-family:var(--font-mono);font-size:var(--text-base);background:var(--surface-2);border:1px solid var(--border);padding:var(--sp-px) var(--sp-1_5);border-radius:var(--radius-sm);color:var(--accent)}.msg-body pre{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-4);overflow-x:auto;margin:var(--sp-3_5) 0}.msg-body pre code{background:none;border:none;padding:0;font-size:var(--text-base);color:var(--text)}.msg-body blockquote{border-left:3px solid var(--accent-dim);padding-left:var(--sp-4);margin:var(--sp-3_5) 0;color:var(--text-muted);font-style:italic}.msg-body table{width:100%;border-collapse:collapse;margin:var(--sp-3_5) 0}.msg-body th{border-bottom:1px solid var(--border-light);padding:var(--sp-2) var(--sp-3);text-align:left;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--fw-medium);letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.msg-body td{padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--border);font-size:var(--text-md)}.msg-table-scroll{overflow-x:auto;max-width:100%}.msg-body hr{border:none;border-top:1px solid var(--border);margin:var(--sp-5) 0}.think-block{margin-bottom:var(--sp-2_5);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.think-block--active{border-color:var(--accent-dim)}.think-block-header{display:flex;align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-2) var(--sp-3);background:none;border:none;cursor:pointer;color:var(--text-muted);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--fw-medium);letter-spacing:.04em;text-transform:uppercase;transition:color var(--t),background var(--t);text-align:left}.think-block-header:hover{color:var(--text);background:var(--surface-2)}.think-block--active .think-block-header{color:var(--accent)}.think-block-icon{display:flex;align-items:center;flex-shrink:0}.think-block-label{flex:1}.think-block-chevron{display:flex;align-items:center;flex-shrink:0;transition:transform var(--t)}.think-block-chevron.open{transform:rotate(180deg)}.think-block-body{padding:var(--sp-2_5) var(--sp-3_5) var(--sp-3);font-size:var(--text-base);line-height:1.65;color:var(--text-dim);font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;border-top:1px solid var(--border)}.tool-call-group{background:var(--surface-2);border:1px solid var(--border-light);border-left:3px solid var(--accent);border-radius:var(--radius-md);overflow:hidden}.tool-call-group-header{background:var(--surface-2)}.tool-call-group-header:hover{background:var(--surface-3)}.tool-call-group-icon{color:var(--accent)}.tool-call-group-body{padding:var(--sp-1) var(--sp-2) var(--sp-2);border-top:1px solid var(--border)}.biz-suggestion{display:flex;align-items:center;gap:var(--sp-2_5);margin:var(--sp-2_5) var(--sp-4) 0;padding:var(--sp-2) var(--sp-3);background:var(--surface);border:1px solid var(--accent-dim);border-left:3px solid var(--accent);border-radius:var(--radius-md);font-size:var(--text-base);color:var(--text)}.biz-suggestion-icon{color:var(--accent);font-size:var(--text-md);flex-shrink:0}.biz-suggestion-text{flex:1;color:var(--text-dim)}.biz-suggestion-text strong{color:var(--text);font-weight:var(--fw-semibold)}.biz-suggestion-accept{flex-shrink:0;padding:var(--sp-1) var(--sp-2_5);background:var(--accent);color:var(--surface);border:none;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--fw-medium);cursor:pointer;transition:opacity var(--t)}.biz-suggestion-accept:hover{opacity:.85}.biz-suggestion-dismiss{flex-shrink:0;width:22px;height:22px;background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:var(--text-md);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:background var(--t),color var(--t)}.biz-suggestion-dismiss:hover{background:var(--surface-2);color:var(--text)}.reasoning-trace-toggle{margin-bottom:var(--sp-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.reasoning-trace-expanded{margin-bottom:var(--sp-2_5)}.reasoning-trace-expanded .reasoning-trace-toggle{margin-bottom:var(--sp-1_5)}.reasoning-trace-body{display:flex;flex-direction:column;gap:var(--sp-1_5);padding-left:var(--sp-2);border-left:2px solid var(--border);margin-left:var(--sp-1);overflow-x:hidden;max-width:100%}.reasoning-step{font-size:var(--text-base);line-height:1.55;color:var(--text-dim);padding:var(--sp-1) var(--sp-2);background:var(--surface);border-radius:var(--radius-sm);font-style:italic;overflow-wrap:break-word;word-break:break-word;max-width:100%;overflow-x:hidden}.reasoning-step p{margin:0 0 var(--sp-1_5) 0}.reasoning-step p:last-child{margin-bottom:0}.reasoning-step ul,.reasoning-step ol{margin:var(--sp-1) 0;padding-left:var(--sp-4)}.reasoning-step li{margin-bottom:var(--sp-0_5)}.reasoning-step li:last-child{margin-bottom:0}.think-dot-pulse{display:inline-block;width:7px;height:7px;border-radius:var(--radius-pill);background:var(--accent);animation:thinkPulse 1.2s var(--ease-in-out) infinite}@keyframes thinkPulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.1)}}.msg-artifacts{display:flex;flex-direction:column;gap:var(--sp-2);margin-top:var(--sp-3_5);padding-top:var(--sp-3);border-top:1px solid var(--border-light)}.msg-artifacts-download-all{align-self:flex-start;margin-top:var(--sp-1);padding:var(--sp-2) var(--sp-3);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font-ui);font-size:var(--text-xs);cursor:pointer;display:inline-flex;align-items:center;gap:var(--sp-1_5);transition:background var(--t),border-color var(--t),color var(--t)}.msg-artifacts-download-all:hover{background:var(--surface-3);border-color:var(--accent);color:var(--text)}.msg-artifacts-download-all:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.msg-artifact{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2_5) var(--sp-3);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:background var(--t),border-color var(--t),transform var(--t);outline:none}.msg-artifact:focus-visible{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-dim)}@media(hover:hover){.msg-artifact:hover{background:var(--surface-3);border-color:var(--accent)}}.msg-artifact:active{transform:scale(.99)}.msg-artifact-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center}.msg-artifact-meta{flex:1;min-width:0}.msg-artifact-name{font-size:var(--text-base);color:var(--text);font-weight:var(--fw-medium);font-family:var(--font-ui);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-artifact-sub{font-size:var(--text-2xs);color:var(--text-dim);font-family:var(--font-mono);letter-spacing:.06em;margin-top:var(--sp-1);text-transform:uppercase}.msg-artifact-download{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text-muted);text-decoration:none;transition:background var(--t),color var(--t),border-color var(--t)}@media(hover:hover){.msg-artifact-download:hover{background:var(--accent-dim);color:var(--accent-hover);border-color:var(--accent)}}.fm-modal.artifact-preview-modal{width:min(960px,92vw);max-width:92vw;max-height:90vh;height:90vh;display:flex;flex-direction:column;overflow:hidden}.artifact-preview-modal .fm-modal-header{flex-shrink:0}.artifact-preview-modal .fm-modal-body{flex:1;display:flex;flex-direction:column;padding:0;min-height:0;overflow:hidden}.artifact-preview-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--surface-2)}.artifact-preview-iframe{flex:1;width:100%;border:0;background:#fff}.artifact-preview-md{flex:1;overflow-y:auto;padding:var(--sp-6) var(--sp-7);font-family:var(--font-ui);font-size:var(--text-md);line-height:1.6;color:var(--text)}.artifact-preview-md h1,.artifact-preview-md h2,.artifact-preview-md h3{margin:1em 0 .4em}.artifact-preview-md p{margin:0 0 .8em}.artifact-preview-md code{font-family:var(--font-mono);font-size:.88em;background:var(--surface-3);padding:var(--sp-px) var(--sp-1_5);border-radius:3px}.artifact-preview-md pre{background:var(--surface-3);padding:var(--sp-3) var(--sp-3_5);border-radius:var(--radius-sm);overflow-x:auto;margin:0 0 1em}.artifact-preview-md table{border-collapse:collapse;margin:0 0 1em}.artifact-preview-md th,.artifact-preview-md td{border:1px solid var(--border);padding:var(--sp-1_5) var(--sp-2_5);text-align:left}.artifact-preview-md th{background:var(--surface-3)}.artifact-preview-text{flex:1;margin:0;padding:var(--sp-5) var(--sp-5);overflow:auto;font-family:var(--font-mono);font-size:var(--text-base);line-height:1.55;background:var(--surface-2);color:var(--text);white-space:pre-wrap;word-break:break-word}.artifact-preview-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--sp-10);text-align:center;color:var(--text-muted);font-size:var(--text-sm);font-family:var(--font-mono)}.artifact-preview-state--error{color:var(--danger)}.artifact-preview-state--unsupported{color:var(--text-muted)}.artifact-preview-footer{flex-shrink:0;display:flex;justify-content:flex-end;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-top:1px solid var(--border);background:var(--surface)}.artifact-preview-footer .fm-btn{display:inline-flex;align-items:center}.msg-username{font-size:var(--text-2xs);font-family:var(--font-mono);color:var(--accent-dim);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--sp-1);padding-left:var(--sp-0_5);font-weight:var(--fw-semibold);letter-spacing:.08em;margin-bottom:var(--sp-2)}.tool-calls-list{display:flex;flex-direction:column;gap:var(--sp-1);margin-bottom:var(--sp-2_5)}.tool-calls-summary{font-size:var(--text-sm);color:var(--text-dim);padding:var(--sp-0_5) var(--sp-1) var(--sp-1);letter-spacing:.01em}.tool-call-block{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;font-size:var(--text-sm)}.tool-call-block--error{border-color:rgba(var(--danger-rgb),.27)}.tool-call-block--pending{border-color:var(--accent-dim)}.tool-call-header{display:flex;align-items:center;gap:var(--sp-1_5);padding:var(--sp-1_5) var(--sp-2_5);background:var(--surface);border:none;width:100%;text-align:left;cursor:pointer;color:var(--text-dim);font-size:var(--text-sm);font-family:inherit;transition:background var(--t),color var(--t)}.tool-call-header:hover{background:var(--surface-2);color:var(--text)}.tool-call-icon{display:flex;align-items:center;flex-shrink:0;color:var(--accent)}.tool-call-name{font-weight:var(--fw-semibold);color:var(--text);flex-shrink:0}.tool-call-tool-id{flex-shrink:0;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);background:var(--surface-2);padding:var(--sp-px) var(--sp-1_5);border-radius:var(--radius-sm);letter-spacing:.02em}.tool-call-summary{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-dim);font-family:var(--font-mono);font-size:var(--text-xs);min-width:0}.tool-call-status{display:flex;align-items:center;flex-shrink:0;color:var(--text-dim)}.tool-call-block--error .tool-call-status{color:var(--danger)}.tool-call-block:not(.tool-call-block--error):not(.tool-call-block--pending) .tool-call-status{color:var(--success)}.tool-call-spinner{display:inline-block;width:10px;height:10px;border:1.5px solid var(--border);border-top-color:var(--accent);border-radius:var(--radius-pill);animation:spin .7s var(--ease-linear) infinite}@keyframes spin{to{transform:rotate(360deg)}}.tool-call-body{padding:var(--sp-2) var(--sp-2_5) var(--sp-2_5);border-top:1px solid var(--border);background:var(--bg)}.tool-call-section-label{font-size:var(--text-2xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin-bottom:var(--sp-1);margin-top:var(--sp-2)}.tool-call-section-label:first-child{margin-top:0}.tool-call-pre{margin:0;font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.5;color:var(--text-dim);white-space:pre-wrap;word-break:break-word;background:var(--surface);padding:var(--sp-1_5) var(--sp-2);border-radius:5px;max-height:300px;overflow-y:auto}.tool-call-pre--error{color:var(--danger)}.tool-call-diff-badge{display:inline-flex;align-items:center;gap:var(--sp-1);font-family:var(--font-mono);font-size:var(--text-2xs);flex-shrink:0}.tool-call-diff-flag{color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em}.tool-call-diff{margin-top:var(--sp-1);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.tool-call-diff-note{padding:var(--sp-2) var(--sp-2_5);color:var(--text-dim);font-size:var(--text-xs)}.tool-call-pending-label{font-size:var(--text-xs);color:var(--accent);margin-top:var(--sp-1_5);font-style:italic}.stream-cursor{display:inline-block;width:2px;height:1em;background:var(--accent);margin-left:var(--sp-px);vertical-align:text-bottom;animation:blink .85s var(--ease-in-out) infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:var(--sp-5);padding:var(--sp-12) var(--sp-8);text-align:center}.empty-wordmark{font-family:var(--font-display);font-size:var(--text-display);font-style:italic;font-weight:var(--fw-light);color:var(--text-dim);line-height:1;animation:fadeUp var(--duration-enter) var(--ease-out) forwards}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.empty-tagline{font-size:var(--text-base);color:var(--text-dim);max-width:320px;line-height:1.7;animation:fadeUp var(--duration-enter) var(--delay-sm) var(--ease-out) both}.empty-suggestions{display:flex;flex-wrap:wrap;gap:var(--sp-2);justify-content:center;max-width:520px;animation:fadeUp var(--duration-enter) var(--delay-lg) var(--ease-out) both}.suggestion-chip{padding:var(--sp-2) var(--sp-3_5);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:var(--text-sm);font-weight:var(--fw-medium);cursor:pointer;transition:background-color var(--t),color var(--t),border-color var(--t),opacity var(--t),transform var(--t),box-shadow var(--t);font-family:var(--font-ui);line-height:1.4}.suggestion-chip:hover{border-color:var(--accent);color:var(--text);background:var(--surface-3)}.chat-title-btn{cursor:text;text-align:left;padding:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);font-size:var(--text-base);font-family:var(--font-mono)}.chat-title-btn:hover{color:var(--text)}.chat-title-input{color:var(--text);background:transparent;border:none;border-bottom:1px solid var(--accent);outline:none;max-width:100%;padding:0;font-size:var(--text-base);font-family:var(--font-mono)}.input-bar-wrap{position:absolute;bottom:0;left:0;right:0;padding:var(--sp-16) var(--sp-7) var(--sp-5);z-index:var(--z-floating);pointer-events:none}.input-bar-outer{position:relative;max-width:740px;margin:0 auto;pointer-events:auto}.input-bar{background:var(--surface-2);border:1px solid var(--border-light);border-radius:var(--radius-lg);transition:border-color var(--t),box-shadow var(--t);overflow:hidden}.input-bar:focus-within{border-color:var(--accent-dim);box-shadow:0 0 0 3px #c9a96e0d}.attached-files-row{display:flex;gap:var(--sp-1_5);flex-wrap:wrap;padding:var(--sp-2_5) var(--sp-3_5) 0}.attached-chip{display:flex;align-items:center;gap:var(--sp-1);background:var(--surface-3);border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:var(--sp-0_5) var(--sp-1_5) var(--sp-0_5) var(--sp-1);font-size:var(--text-xs);color:var(--text-muted);font-family:var(--font-mono)}.chip-thumb{width:26px;height:26px;object-fit:cover;border-radius:2px;flex-shrink:0}.chip-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-attachments{display:flex;flex-wrap:wrap;gap:var(--sp-1_5);margin-top:var(--sp-1_5);justify-content:flex-end}.msg-attach-thumb{background:none;border:1px solid var(--border);border-radius:5px;padding:var(--sp-0_5);cursor:zoom-in;transition:border-color var(--t)}.msg-attach-thumb:hover{border-color:var(--accent)}.msg-attach-thumb img{display:block;width:72px;height:72px;object-fit:cover;border-radius:3px}.img-lightbox{position:fixed;inset:0;z-index:var(--z-modal);background:#000000de;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:zoom-out}.img-lightbox img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:var(--radius-sm);cursor:default;box-shadow:0 8px 40px #0009}.img-lightbox-name{margin-top:var(--sp-2_5);font-size:var(--text-xs);color:var(--text-dim);font-family:var(--font-mono)}.attached-chip-remove{background:none;border:none;cursor:pointer;color:var(--text-dim);font-size:var(--text-base);line-height:1;padding:0 var(--sp-px);transition:color var(--t)}.attached-chip-remove:hover{color:var(--danger)}.input-main-row{display:flex;align-items:flex-end;gap:var(--sp-2);padding:var(--sp-3) var(--sp-3) var(--sp-2)}.input-textarea{flex:1;background:none;border:none;outline:none;resize:none;color:var(--text);font-family:var(--font-ui);font-size:var(--text-md);line-height:1.6;min-height:24px;max-height:200px;overflow-y:auto}.input-textarea::placeholder{color:var(--text-dim)}.input-send-btn{flex-shrink:0;width:32px;height:32px;border-radius:var(--radius-md);background:var(--accent-dim);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color var(--t),color var(--t),border-color var(--t),opacity var(--t),transform var(--t),box-shadow var(--t);color:var(--accent-hover)}.input-send-btn:hover:not(:disabled){background:var(--accent);color:var(--bg)}.input-send-btn:disabled{opacity:.35;cursor:not-allowed}.input-actions-row{display:flex;align-items:center;gap:var(--sp-1_5);padding:var(--sp-1) var(--sp-3) var(--sp-2);border-top:1px solid var(--border)}.input-action{display:flex;align-items:center;justify-content:center;gap:var(--sp-1);background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:var(--text-xs);font-family:var(--font-ui);padding:var(--sp-1) var(--sp-2);border-radius:var(--radius-sm);transition:background-color var(--t),color var(--t),border-color var(--t),opacity var(--t),transform var(--t),box-shadow var(--t)}.input-action:hover{color:var(--text);background:var(--surface-3)}.input-action:disabled{opacity:.4;cursor:not-allowed}.input-action:disabled:hover{background:none;color:var(--text-muted)}.input-action--mic-active{color:var(--accent);background:var(--surface-3)}.input-action--mic-active:hover{color:var(--accent)}.input-action-mic-dot{display:inline-block;width:7px;height:7px;border-radius:var(--radius-pill);background:var(--danger);margin-left:2px;box-shadow:0 0 rgba(var(--danger-rgb),.6);animation:input-mic-pulse 1.4s var(--ease-in-out) infinite}@keyframes input-mic-pulse{0%{box-shadow:0 0 rgba(var(--danger-rgb),.55);transform:scale(1)}70%{box-shadow:0 0 0 7px rgba(var(--danger-rgb),0);transform:scale(1.05)}to{box-shadow:0 0 rgba(var(--danger-rgb),0);transform:scale(1)}}.input-biz-selector{display:flex;align-items:center;gap:var(--sp-1);padding:0 var(--sp-1_5);border-radius:5px;border:1px solid var(--border);color:var(--text-muted);background:transparent;transition:border-color var(--t),background var(--t)}.input-biz-selector:hover{background:var(--surface-3);border-color:var(--border-light);color:var(--text)}.input-biz-selector select{background:transparent;border:none;color:inherit;font-size:var(--text-xs);font-family:var(--font-mono);cursor:pointer;outline:none;padding:var(--sp-1) 0;max-width:120px}.input-biz-selector select option{background:var(--surface-2);color:var(--text)}.input-hint{margin-left:auto;font-size:var(--text-2xs);color:var(--text-dim);font-family:var(--font-mono)}.status-bar{height:22px;background:var(--surface);border-top:1px solid var(--border);display:flex;align-items:center;padding:0 var(--sp-4);gap:var(--sp-4);flex-shrink:0}.status-dot{width:5px;height:5px;border-radius:var(--radius-pill);flex-shrink:0}.status-dot.online{background:var(--success)}.status-dot.error{background:var(--danger)}.status-dot.connecting{background:var(--accent-dim);animation:pulse 1.4s var(--ease-out) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.status-label{font-size:var(--text-2xs);color:var(--text-dim);font-family:var(--font-mono);display:flex;align-items:center;gap:var(--sp-1)}.status-tokens{margin-left:auto;font-size:var(--text-2xs);color:var(--text-dim);font-family:var(--font-mono)}.drop-overlay{position:fixed;inset:var(--sp-3);background:rgba(var(--bg-rgb),.92);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);border:2px dashed var(--accent);border-radius:var(--radius-lg);pointer-events:none}.drop-overlay-label{font-family:var(--font-display);font-size:var(--text-4xl);font-style:italic;font-weight:var(--fw-light);color:var(--accent)}.toast{position:fixed;bottom:72px;right:var(--sp-6);background:var(--surface-3);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--sp-2) var(--sp-3_5);font-size:var(--text-sm);color:var(--text-muted);font-family:var(--font-mono);z-index:var(--z-toast);animation:toastIn var(--t) var(--ease-out);max-width:300px}@keyframes toastIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.sidebar-mobile-overlay{display:none}@media(max-width:768px){.sidebar{position:fixed;z-index:var(--z-overlay);height:100%;top:0;left:0;max-width:86vw;box-shadow:4px 0 32px #000000b3;overflow-y:auto;transition:transform var(--t) var(--ease-out)}.sidebar[data-dragging=true]{transition:none}.sidebar.collapsed{width:0;opacity:0;pointer-events:none;transform:translate(-100%)}.history-item{padding:var(--sp-1) var(--sp-4)}.history-group-label{padding:var(--sp-1_5) var(--sp-4) var(--sp-0_5)}.conv-search-wrap{padding:var(--sp-1_5) var(--sp-2_5)}.conv-pin-btn:not(.conv-pin-btn--active){display:none}.sidebar-resize{display:none}.sidebar-mobile-overlay{display:block;position:fixed;inset:0;z-index:calc(var(--z-overlay) - 1);background:#00000073}.sidebar-mobile-overlay.hidden{display:none}.chat-area{width:100%}.message-list{padding:var(--sp-5) 0 260px}.message-list-inner{padding:0 var(--sp-3) 0}.msg-user-bubble-wrap{max-width:88%}.message.user .msg-body{max-width:100%}.input-bar-wrap{padding:var(--sp-16) var(--sp-2_5) var(--sp-2_5)}.input-bar{gap:var(--sp-2)}.chat-header{padding:0 var(--sp-3)}button,.new-chat-btn,.sidebar-toggle,nav a,.sidebar a,.msg-artifact-download{min-height:44px;min-width:44px}.conv-pin-btn,.msg-action-btn,.msg-sticky-btn,.branch-nav-btn,.think-block-header,.tool-call-header{min-height:unset;min-width:unset}.message-list:has(.empty-state){overflow:hidden}.header-action-btn{min-height:44px;min-width:44px}.header-action-btn .material-symbols-outlined{font-size:var(--icon-size-lg)}.header-action-btn:not(.header-avatar-btn){border-color:transparent;background:none;padding:var(--sp-1) var(--sp-1_5)}.input-actions-row .input-action{min-height:44px;min-width:44px}.new-chat-btn{margin:var(--sp-2_5) var(--sp-3)}.status-bar{flex-wrap:wrap;gap:var(--sp-1_5);padding:var(--sp-1) var(--sp-3);padding-bottom:max(var(--sp-1),env(safe-area-inset-bottom));font-size:var(--text-2xs)}.input-hint,.input-action-label{display:none}.input-action{padding:var(--sp-1_5);min-height:44px;min-width:44px}.input-action .material-symbols-outlined,.input-send-btn .material-symbols-outlined{font-size:var(--text-2xl)!important}.sidebar-toggle{width:44px;height:44px;padding:0}.sidebar-toggle .material-symbols-outlined{font-size:var(--text-2xl)!important}.log-panel{position:fixed;bottom:0;left:0;right:0;z-index:var(--z-panel);max-height:40vh;border-radius:var(--radius-md) var(--radius-md) 0 0;box-shadow:0 -4px 24px #0006}@media(max-width:420px){.status-bar .status-model,.status-bar .status-tokens{display:none}}}.lm-status-dot{display:inline-block;width:6px;height:6px;border-radius:var(--radius-pill);margin-right:var(--sp-1);flex-shrink:0;vertical-align:middle;transition:background var(--t)}.lm-status-dot--checking{background:var(--warning)}.lm-status-dot--ok{background:var(--success)}.lm-status-dot--down{background:var(--danger)}@media(max-width:768px){.fm-modal.artifact-preview-modal{width:100vw;height:100dvh;max-width:none;max-height:100dvh;border-radius:0}.inbox-body{grid-template-columns:1fr;grid-template-rows:auto 1fr}.inbox-list{max-height:40vh;border-right:none;border-bottom:1px solid var(--border)}.marketing-panel-body{padding:var(--sp-4)}.marketing-recent-row{grid-template-columns:80px 1fr}.marketing-recent-status,.marketing-recent-time{display:none}.auth-card{padding:var(--sp-7) var(--sp-5)}.fm-tree-node,.routines-item,.marketing-recent-row{min-height:44px}}.route-transition{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:var(--control-height);padding:var(--sp-1_5) 18px;border-radius:var(--radius-sm);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--fw-semibold);transition:background var(--t),color var(--t),border-color var(--t)}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover{background:var(--accent-hover)}.btn-ghost{background:transparent;color:var(--text);border:1px solid var(--border);padding:var(--sp-1) var(--sp-2_5)}.btn-ghost:hover{background:var(--surface-2)}.btn-icon{display:inline-flex;align-items:center;justify-content:center;min-height:var(--control-height);min-width:var(--control-height);padding:var(--sp-1) var(--sp-2);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-ui);font-size:var(--text-sm);transition:background var(--t),color var(--t),border-color var(--t)}.btn-icon:hover{background:var(--surface-3)}.btn-icon .material-symbols-outlined{font-size:var(--icon-action)}.btn-danger{background:transparent;color:var(--danger);border:1px solid var(--danger)}.btn-danger:hover{background:rgba(var(--danger-rgb),var(--opacity-subtle))}.material-symbols-outlined{font-size:var(--icon-nav);line-height:1;flex-shrink:0}.material-symbols-outlined.icon-action{font-size:var(--icon-action)}.material-symbols-outlined.icon-lg{font-size:var(--icon-size-lg)}.material-symbols-outlined.icon-sized{font-size:var(--icon-size, var(--icon-nav))}.material-symbols-outlined.icon-filled{font-variation-settings:"FILL" 1}.field{width:100%;min-height:var(--control-height);padding:var(--sp-1_5) 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font-ui);font-size:var(--text-md);transition:border-color var(--t)}.field:focus{outline:none;border-color:var(--accent)}.field--lg{padding:var(--sp-2_5) var(--sp-3);font-size:var(--text-lg)}.panel{display:flex;flex-direction:column;width:100%;height:100%;background:var(--bg)}.panel-header{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--border);flex-shrink:0}.panel-header--dense{gap:var(--sp-2_5);padding:var(--sp-2_5) var(--sp-4)}.panel-body{flex:1;min-height:0;overflow-y:auto}.panel-content{width:100%;max-width:var(--container-md);margin:0 auto;padding:var(--sp-6) var(--sp-4)}.panel-content--sm{max-width:var(--container-sm)}.panel-content--lg{max-width:var(--container-lg)}.panel-content--full{max-width:none}.panel-back-btn{display:inline-flex;align-items:center;gap:var(--sp-1_5);padding:var(--sp-1_5) var(--sp-2_5);border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);font-family:var(--font-ui);font-size:var(--text-sm);transition:background var(--t),color var(--t)}.panel-back-btn:hover{background:var(--surface-2);color:var(--text)}.list-item{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-3_5);border-radius:var(--radius-sm);color:var(--text);transition:background var(--t),color var(--t);cursor:pointer}.list-item:hover{background:var(--surface-2)}.list-item.is-active,.list-item[aria-current=true]{background:var(--accent-dim)}.section-label{display:block;font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:var(--fw-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.empty-state{padding:var(--sp-12) var(--sp-8);color:var(--text-muted);text-align:center;font-size:var(--text-sm)}.empty-state-features{list-style:none;margin:var(--sp-3) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--sp-1_5);text-align:left;font-size:var(--text-sm);color:var(--text-muted)}.empty-state-features li:before{content:"→ ";color:var(--accent)}.empty-state-actions{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);margin-top:var(--sp-4)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-4)}.badge{display:inline-flex;align-items:center;gap:var(--sp-1);padding:var(--sp-0_5) var(--sp-2);border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:var(--fw-semibold);letter-spacing:.04em;text-transform:uppercase;background:var(--accent-dim);color:var(--accent-hover);white-space:nowrap}.badge--muted{background:rgba(var(--text-dim-rgb),var(--opacity-border));color:var(--text-dim)}.badge--success{background:rgba(var(--success-rgb),var(--opacity-subtle));color:var(--success)}.badge--danger{background:rgba(var(--danger-rgb),var(--opacity-subtle));color:var(--danger)}.badge--warning{background:rgba(var(--warning-rgb),var(--opacity-subtle));color:var(--warning)}.modal-overlay{position:fixed;inset:0;z-index:var(--z-modal);background:#0009;display:flex;align-items:center;justify-content:center;padding:var(--sp-4)}.modal-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);max-width:min(900px,96vw);max-height:92vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.msg-actions{display:flex;align-items:center;gap:var(--sp-1);margin-top:var(--sp-1_5);opacity:0;transition:opacity var(--t)}.message.assistant:hover .msg-actions{opacity:1}.msg-actions--user{justify-content:flex-end}.msg-actions--floating{position:absolute;top:calc(100% + var(--sp-1));right:0;margin-top:0;opacity:1;z-index:5;gap:var(--sp-2);animation:msgActionsIn var(--t) var(--ease-out) both}@keyframes msgActionsIn{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.msg-actions-time{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);margin-right:var(--sp-1);white-space:nowrap;-webkit-user-select:none;user-select:none}.msg-action-btn{display:inline-flex;align-items:center;gap:var(--sp-1);padding:var(--sp-1) var(--sp-2);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);font-family:var(--font-ui);font-size:var(--text-xs);cursor:pointer;transition:background-color var(--t),color var(--t),border-color var(--t),opacity var(--t),transform var(--t),box-shadow var(--t);white-space:nowrap;min-height:26px}.msg-action-btn:hover{background:var(--surface-3);border-color:var(--border-light);color:var(--text)}.msg-action-btn.copied{color:var(--success);border-color:rgba(var(--success-rgb),.4)}.msg-action-btn--icon{padding:var(--sp-1);min-height:28px;background:transparent;border-color:transparent;display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-1)}.msg-action-btn--icon:hover{background:var(--surface-2);border-color:var(--border)}.msg-action-btn--icon .material-symbols-outlined,.branch-nav-btn .material-symbols-outlined{font-size:var(--icon-action);font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;width:var(--icon-action);height:var(--icon-action);line-height:var(--icon-action);display:flex;align-items:center;justify-content:center;overflow:hidden}.message.user.editing{justify-content:flex-end}.msg-edit-area{display:flex;flex-direction:column;gap:var(--sp-1_5);width:100%;max-width:68%}.msg-edit-input{padding:var(--sp-2_5) var(--sp-3);border-color:var(--accent-dim);line-height:1.6;resize:vertical}.msg-edit-actions{display:flex;gap:var(--sp-1_5);justify-content:flex-end}.msg-edit-submit{padding:var(--sp-1_5) var(--sp-4)}.msg-edit-cancel{padding:var(--sp-1_5) var(--sp-3);color:var(--text-muted)}.msg-edit-cancel:hover{color:var(--text);border-color:var(--border-light)}.msg-branch-nav{display:inline-flex;align-items:center;gap:var(--sp-1_5)}.msg-branch-nav--inline{margin-left:var(--sp-1)}.branch-nav-btn{display:grid;place-items:center;width:24px;height:24px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:background-color var(--t),color var(--t),border-color var(--t),opacity var(--t),transform var(--t),box-shadow var(--t);padding:0}.branch-nav-btn:hover:not(:disabled){background:var(--surface-3);border-color:var(--accent-dim);color:var(--accent)}.branch-nav-btn:disabled{opacity:.3;cursor:default}.branch-nav-label{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);min-width:30px;text-align:center}.img-lightbox-close{position:absolute;top:var(--sp-4);right:var(--sp-4);width:36px;height:36px;border-radius:var(--radius-pill);background:#ffffff26;border:1px solid rgba(255,255,255,.2);color:#ffffffe6;font-size:var(--text-lg);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:var(--z-modal);transition:background var(--t)}.img-lightbox-close:hover{background:#ffffff40}.search-indicator{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);margin:var(--sp-1) 0;background:var(--surface-2);border:1px solid var(--border);border-left:2px solid var(--accent-dim);border-radius:var(--radius);color:var(--text-muted);font-family:var(--font-ui);font-size:var(--text-sm);animation:fadeSlideIn var(--t) var(--ease-out)}.search-indicator em{color:var(--text);font-style:normal}@media(max-width:768px){.msg-actions{opacity:1}.msg-actions--user{justify-content:flex-start;margin-top:3px}.msg-action-btn span:not(.material-symbols-outlined){display:none}.msg-action-btn{min-height:28px;min-width:28px;padding:var(--sp-1)}.msg-edit-area{max-width:90%}.msg-branch-nav{justify-content:flex-start;gap:var(--sp-1)}.branch-nav-label{min-width:24px;font-size:var(--text-2xs)}.branch-nav-btn{width:44px;height:44px;min-height:44px}.img-lightbox-close{width:44px;height:44px;top:var(--sp-3);right:var(--sp-3);font-size:var(--icon-size-lg)}.header-action-btn:not(.header-avatar-btn) span:not(.header-avatar):not(.material-symbols-outlined){display:none}.chat-header{gap:var(--sp-1)}.chat-header .biz-badge,.chat-header .header-action-btn[title="Reload context from disk"]{display:none}.chat-header .header-avatar-btn span:not(.header-avatar):not(.material-symbols-outlined){display:none}.chat-header .header-action-btn{width:44px;height:44px;padding:0;gap:0;justify-content:center}.ctx-settings-panel{position:fixed;top:60px;right:var(--sp-2);width:auto;max-height:calc(100dvh - 80px);overflow-y:auto}.user-profile-panel{width:100vw;max-width:100vw}.search-indicator{font-size:var(--text-xs)}}.empty-suggestions{transition:opacity var(--t) var(--ease-out)}body.slash-menu-open .empty-suggestions{opacity:0;pointer-events:none}.msg-code-block{position:relative}.msg-code-block .msg-code-copy{position:absolute;top:var(--sp-2);right:var(--sp-2);opacity:0;transition:opacity var(--t),color var(--t)}.msg-code-block:hover .msg-code-copy,.msg-code-block .msg-code-copy:focus-visible{opacity:1}.msg-code-block .msg-code-copy.is-copied{color:var(--success);opacity:1}.interactive-html{margin:var(--sp-3_5) 0;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;background:var(--surface-2)}.interactive-html-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);padding:var(--sp-1_5) var(--sp-2) var(--sp-1_5) var(--sp-3);border-bottom:1px solid var(--border);background:var(--surface-1)}.interactive-html-label{display:inline-flex;align-items:center;gap:var(--sp-1);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.interactive-html-actions{display:inline-flex;align-items:center;gap:var(--sp-1)}.interactive-html-copy.is-copied{color:var(--success)}.interactive-html-frame{display:block;width:100%;height:420px;border:0;background:var(--surface);resize:vertical}.interactive-html-source{margin:0;max-height:420px;overflow:auto}.interactive-html-loading{padding:var(--sp-4);color:var(--text-muted);font-size:var(--text-sm)}.interactive-html-note{margin:0;padding:var(--sp-1) var(--sp-3) var(--sp-2);color:var(--text-muted);font-size:var(--text-xs)}.drawer-backdrop{position:fixed;inset:0;z-index:var(--z-modal-backdrop, 90);background:#00000073}.drawer{position:fixed;top:0;bottom:0;z-index:var(--z-modal, 100);display:flex;flex-direction:column;width:min(420px,100vw);background:var(--surface);color:var(--text);border-left:1px solid var(--border);box-shadow:-4px 0 16px #0000002e}.drawer--right{right:0}.drawer-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--border);flex-shrink:0}.drawer-title{margin:0;font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;color:var(--text)}.drawer-close-btn{padding:var(--sp-1) var(--sp-2)}.drawer-body{flex:1;overflow-y:auto;padding:var(--sp-3) var(--sp-4)}.drawer-error{margin-bottom:var(--sp-3);padding:var(--sp-2) var(--sp-3);background:rgba(var(--danger-rgb),.15);border:1px solid rgba(var(--danger-rgb),.3);border-radius:var(--radius-md);color:var(--text);font-size:var(--text-sm)}.drawer-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-1)}.drawer-item{list-style:none}.drawer-item-btn{width:100%;flex-direction:column;gap:2px;padding:var(--sp-2) var(--sp-3);border-color:transparent;text-align:left}.drawer-item-btn:hover{background:rgba(var(--accent-rgb),var(--opacity-subtle));border-color:rgba(var(--accent-rgb),.2)}.drawer-item-main{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-2)}.drawer-item-title{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.drawer-item-time{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-muted);flex-shrink:0}.drawer-item-sub{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drawer-item-meta{font-family:var(--font-ui);font-size:var(--text-2xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.bell-button{position:relative;width:32px;height:32px;min-height:unset;min-width:unset;padding:0;background:transparent;border-color:transparent;color:var(--text-dim)}.bell-button:hover{background:rgba(var(--accent-rgb),var(--opacity-subtle));color:var(--text);border-color:rgba(var(--accent-rgb),.2)}.bell-button-badge{position:absolute;top:-2px;right:-2px;min-width:16px;height:16px;padding:0 4px;color:var(--surface);text-transform:none;letter-spacing:0;line-height:1}@media(max-width:768px){.drawer{width:100vw;border-left:0}}.feedback-widget{display:flex;align-items:center;gap:var(--sp-2);margin-top:var(--sp-2);font-size:var(--text-xs);color:var(--text-muted)}.feedback-widget__btn{background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--sp-1) var(--sp-2);min-height:44px;color:var(--text-dim);font-family:var(--font-ui);font-size:var(--text-xs);cursor:pointer;transition:background var(--t),border-color var(--t),color var(--t)}.feedback-widget__btn:hover{background:rgba(var(--accent-rgb),var(--opacity-subtle));border-color:var(--border-strong);color:var(--text)}.feedback-widget__btn:focus-visible,.feedback-widget__send:focus-visible,.feedback-widget__note:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.feedback-widget__btn[aria-pressed=true]{background:rgba(var(--accent-rgb),var(--opacity-strong));border-color:var(--accent);color:var(--text)}.feedback-widget__note{width:100%;margin-top:var(--sp-2);padding:var(--sp-2);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font-ui);font-size:var(--text-sm);resize:vertical;min-height:60px}.feedback-widget__send{margin-top:var(--sp-2);background:var(--accent);color:var(--accent-fg);border:none;border-radius:var(--radius-sm);padding:var(--sp-2) var(--sp-3);min-height:44px;font-family:var(--font-ui);font-size:var(--text-xs);cursor:pointer}.feedback-widget__thanks{color:var(--text-muted);font-style:italic}.tw-plan{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface, var(--bg));padding:var(--sp-3) var(--sp-3_5);margin-top:var(--sp-1_5)}.tw-plan--approved{border-color:var(--success)}.tw-plan--rejected{border-color:var(--warning)}.tw-plan--cancelled{border-color:var(--text-dim);opacity:.7}.tw-plan-head{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-2)}.tw-plan-title{display:flex;align-items:center;gap:var(--sp-2);min-width:0}.tw-plan-name{font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tw-plan-status{font-size:var(--text-xs);padding:var(--sp-0_5) var(--sp-2);border-radius:var(--radius-pill);border:1px solid var(--border);color:var(--text-muted);white-space:nowrap}.tw-plan-status--approved{color:var(--success);border-color:var(--success)}.tw-plan-status--rejected{color:var(--warning);border-color:var(--warning)}.tw-plan-status--cancelled{color:var(--text-dim);border-color:var(--text-dim)}.tw-plan-body{font-family:var(--font-sans);font-size:var(--text-base);line-height:1.55;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-2_5) var(--sp-3_5);margin:0;max-height:320px;overflow:auto;word-break:break-word}.tw-plan-body--collapsed{font-family:var(--font-mono);font-size:var(--text-sm);white-space:pre-wrap;max-height:80px;overflow:hidden}.tw-plan-body>:first-child{margin-top:0}.tw-plan-body>:last-child{margin-bottom:0}.tw-plan-body h1,.tw-plan-body h2,.tw-plan-body h3,.tw-plan-body h4,.tw-plan-body h5,.tw-plan-body h6{margin:1em 0 .4em;line-height:1.25}.tw-plan-body h1{font-size:1.3em;font-weight:var(--fw-bold)}.tw-plan-body h2{font-size:1.15em;font-weight:var(--fw-semibold)}.tw-plan-body h3{font-size:1.05em;font-weight:var(--fw-semibold)}.tw-plan-body p{margin:.4em 0}.tw-plan-body ul,.tw-plan-body ol{margin:.4em 0;padding-left:1.4em}.tw-plan-body li{margin:.15em 0}.tw-plan-body code{font-family:var(--font-mono);font-size:.9em;background:var(--surface-2);padding:var(--sp-px) var(--sp-1_5);border-radius:var(--radius-sm)}.tw-plan-body pre{background:var(--surface-2);padding:var(--sp-2) var(--sp-2_5);border-radius:var(--radius-sm);overflow:auto;font-size:.9em;line-height:1.45;margin:.5em 0}.tw-plan-body pre code{background:none;padding:0}.tw-plan-body blockquote{border-left:3px solid var(--border);margin:.5em 0;padding-left:var(--sp-2_5);color:var(--text-muted)}.tw-plan-body table{border-collapse:collapse;margin:.5em 0;font-size:.95em}.tw-plan-body th,.tw-plan-body td{border:1px solid var(--border);padding:var(--sp-1_5) var(--sp-2_5);text-align:left}.tw-plan-body a{color:var(--accent);text-decoration:underline}.tw-plan-toggle{margin-top:var(--sp-1_5)}.tw-plan-actions{display:flex;flex-direction:column;gap:var(--sp-2);margin-top:var(--sp-2_5)}.tw-plan-actions-primary{display:flex;gap:var(--sp-2)}.tw-plan-actions-primary .tw-plan-btn{flex:1 1 0}.tw-plan-btn--discuss{width:100%}.tw-plan-btn{border-radius:var(--radius-md);background:var(--bg);color:var(--text);border-color:var(--border)}.tw-plan-btn:disabled{opacity:.4;cursor:not-allowed}.tw-plan-btn:not(:disabled):hover{transform:translateY(-1px)}.tw-plan-btn--approve{background:var(--success);color:var(--on-danger);border-color:var(--success)}.tw-plan-btn--auto{background:var(--accent);color:var(--on-danger);border-color:var(--accent)}.tw-plan-btn--discuss{background:var(--surface-2);color:var(--text);border-color:var(--border)}.tw-plan-btn--send{background:var(--accent);color:var(--on-danger);border-color:var(--accent);padding:var(--sp-1_5) var(--sp-2_5)}.tw-plan-btn--cancel{width:100%;color:var(--text-muted);background:transparent;border-color:transparent}.tw-plan-btn--cancel:not(:disabled):hover{color:var(--danger);border-color:var(--danger);background:transparent}.tw-plan-notes-row{display:flex;gap:var(--sp-2);width:100%;margin-top:var(--sp-1)}.tw-plan-notes-input{flex:1 1 0;border-radius:var(--radius-md);background:var(--bg);font-size:var(--text-sm);min-width:0}.tw-plan-notes-input:disabled{opacity:.4;cursor:not-allowed}.tw-plan-streaming-caption{width:100%;font-size:var(--text-xs);color:var(--text-muted);font-style:italic;margin-bottom:var(--sp-1)}.tw-plan-decided{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);margin-top:var(--sp-2_5);padding:var(--sp-2) var(--sp-2_5);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2)}.tw-plan-decided-label{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text)}.tw-plan-decided-notes{font-size:var(--text-sm);color:var(--text-muted);flex:1 1 200px}.tw-plan-decided-time{font-size:var(--text-xs);color:var(--text-dim);margin-left:auto}.msg-plans,.msg-hoisted-widgets{margin-top:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-3)}.msg-hoisted-widget{border-radius:var(--radius-md);overflow:hidden}.tw-plan-fullscreen{background:transparent;border:1px solid var(--border);color:var(--text-muted);border-radius:var(--radius-sm);padding:var(--sp-0_5) var(--sp-1_5);font-size:var(--text-sm);line-height:1;cursor:pointer;flex-shrink:0}.tw-plan-fullscreen:hover{color:var(--text);border-color:var(--text-muted)}.tw-plan-modal-overlay{position:fixed;inset:0;z-index:var(--z-modal);background:#0009;display:flex;align-items:center;justify-content:center;padding:var(--sp-6)}.tw-plan-modal{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;max-width:900px;min-height:60vh;max-height:calc(100vh - 48px);overflow-y:auto;padding:var(--sp-8);position:relative;display:flex;flex-direction:column}.tw-plan-modal .tw-plan-modal-content{flex:1 1 auto}@media(max-width:768px){.tw-plan-modal-overlay{padding:0}.tw-plan-modal{width:100%;height:100%;max-height:100%;min-height:0;border-radius:0}}.tw-plan-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--sp-5)}.tw-plan-modal-title{font-weight:var(--fw-semibold);font-size:1rem}.tw-plan-modal-close{background:none;border:none;cursor:pointer;color:var(--text-dim);display:flex;align-items:center;justify-content:center;padding:var(--sp-1);border-radius:var(--radius-sm)}.tw-plan-modal-close:hover{color:var(--text);background:var(--hover-bg)}.tw-plan-modal-content{line-height:1.6}.tool-call-block--widget{background:var(--surface-2)}.tool-call-widget{padding:var(--sp-3);border-bottom:1px solid var(--border)}.tw-widget-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-bottom:var(--sp-2)}.tw-widget-head:empty{display:none}.tw-widget-title{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text);letter-spacing:.01em;flex:1;margin-bottom:0}.tw-widget-modal-content .tw-svg-frame,.tw-widget-modal-content .tw-html-frame{height:60vh}.tw-svg svg{max-width:100%;height:auto;display:block}.tw-svg{color:var(--text)}.tw-svg-frame,.tw-html-frame{width:100%;height:240px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--iframe-bg)}.tw-chart{width:100%;max-width:480px;height:auto;color:var(--text)}.tw-widget-unknown{padding:var(--sp-2);color:var(--text-muted);font-style:italic;font-size:var(--text-sm)}.tw-pill{display:inline-block;color:var(--text-muted);margin-right:var(--sp-1)}.tw-mini-btn{color:var(--text-muted);font-size:var(--text-xs);padding:var(--sp-0_5) var(--sp-2);min-height:unset}.tw-mini-btn:hover{color:var(--text);border-color:var(--accent-dim)}.tw-compose-meta{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-2);flex-wrap:wrap}.tw-compose-intent{font-size:var(--text-sm);color:var(--text-muted)}.tw-compose-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--sp-2_5)}.tw-compose-card{padding:var(--sp-2_5)}.tw-compose-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--sp-1_5)}.tw-compose-label{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.tw-compose-body{font-size:var(--text-base);line-height:1.45;white-space:pre-wrap;color:var(--text)}.tw-widget-chip{display:inline-flex;align-items:center;gap:var(--sp-1_5);padding:var(--sp-1) var(--sp-2_5);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-pill);font-size:var(--text-xs);font-family:var(--font-ui);font-weight:var(--fw-medium);color:var(--text-muted);cursor:pointer;transition:background var(--t),color var(--t);margin-bottom:var(--sp-1);min-height:unset}.tw-widget-chip:hover{background:var(--surface-3);color:var(--text)}.tw-widget-chip-icon{font-size:var(--text-xs);opacity:.7}.tw-widget-chip-toggle{margin-left:var(--sp-1);font-size:var(--text-2xs);opacity:.6}.tw-widget-body{margin-top:var(--sp-1)}.tw-ask-collapsible{display:flex;flex-direction:column}.tw-multi-ask{display:flex;flex-direction:column;gap:var(--sp-2)}.tw-ask-page-indicator{font-size:var(--text-xs);color:var(--text-muted);font-family:var(--font-ui);font-weight:var(--fw-medium);text-align:right;padding-right:var(--sp-1)}.tw-plan-collapsible-wrap{display:flex;flex-direction:column}.tw-plan-collapsible-body{margin-top:var(--sp-1)}.tw-ask{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-3) var(--sp-4);margin-top:var(--sp-2)}.tw-ask-q{font-family:var(--font-display);font-size:var(--text-md);color:var(--text);margin-bottom:var(--sp-2_5);font-weight:var(--fw-medium);line-height:1.35}.tw-ask-opts{display:flex;flex-wrap:wrap;gap:var(--sp-1_5)}.tw-ask-btn{border-radius:var(--radius-pill);padding:var(--sp-1_5) var(--sp-3);min-height:unset}.tw-ask-btn:hover:not(:disabled){border-color:var(--accent);background:var(--accent-bg);color:var(--accent-hover)}.tw-ask-btn:disabled{opacity:.45;cursor:not-allowed}.tw-ask-answered{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--sp-2);padding:var(--sp-2) var(--sp-2_5);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);animation:tw-ask-collapse var(--duration-enter, .25s) var(--ease-out, ease) both;margin-top:var(--sp-1)}.tw-ask-answered-check{color:var(--success);font-weight:var(--fw-bold)}.tw-ask-answered-q{font-weight:var(--fw-semibold);color:var(--text);font-size:var(--text-sm)}.tw-ask-answered-v{color:var(--text-muted);font-size:var(--text-sm)}.tw-ask-answered--flash .tw-ask-answered-check{animation:tw-check-flash .3s var(--ease-out, ease)}@keyframes tw-check-flash{0%{transform:scale(.6);opacity:0}50%{transform:scale(1.25);opacity:1}to{transform:scale(1);opacity:1}}@keyframes tw-ask-collapse{0%{max-height:320px;opacity:.4}to{max-height:200px;opacity:1}}.tw-ask-streaming-caption{font-size:var(--text-xs);color:var(--text-muted);font-style:italic;margin-bottom:var(--sp-2)}.tw-ask-empty{color:var(--text-muted);font-style:italic}.tw-ask-free{display:flex;gap:var(--sp-2);align-items:center;margin-top:var(--sp-2)}.tw-ask-input{flex:1;background:var(--surface-3);border-color:var(--border-light);min-height:unset}.tw-ask-input:focus{outline:none;border-color:var(--accent-dim)}.tw-ask-input:disabled{opacity:.45;cursor:not-allowed}.tw-ask-multi{display:flex;flex-direction:column;gap:var(--sp-1_5);margin-top:var(--sp-2)}.tw-ask-check{display:flex;align-items:center;gap:var(--sp-2);cursor:pointer;font-size:var(--text-base);color:var(--text);font-family:var(--font-ui)}.tw-ask-check:has(input:disabled){cursor:not-allowed;opacity:.45}.tw-ask-check input[type=checkbox]{accent-color:var(--accent);width:14px;height:14px;cursor:pointer}.tw-ask-btn--submit{background:var(--accent-dim);color:var(--accent-hover);border-color:var(--accent-dim)}.tw-ask-btn--submit:disabled{opacity:.4;cursor:not-allowed}.tw-ask-btn--other{opacity:.7;font-style:italic}.tw-recipe-name{font-size:var(--text-md);font-weight:var(--fw-semibold);margin-bottom:var(--sp-2);color:var(--text)}.tw-recipe-section{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:var(--sp-2) 0 var(--sp-1)}.tw-recipe-list,.tw-recipe-steps{margin:0;padding-left:var(--sp-5);font-size:var(--text-base);line-height:1.5;color:var(--text)}.tw-recipe-steps li{margin-bottom:var(--sp-1)}.tw-connectors{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--sp-2)}.tw-connector{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);padding:var(--sp-2) var(--sp-2_5)}.tw-connector-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--sp-1)}.tw-connector-label{font-size:var(--text-base);font-weight:var(--fw-semibold);color:var(--text)}.tw-connector-id{font-size:var(--text-2xs);color:var(--text-muted);font-family:ui-monospace,monospace}.tw-connector-why{font-size:var(--text-sm);color:var(--text-muted);margin-bottom:var(--sp-1_5);line-height:1.4}.tw-connector-kw{display:flex;flex-wrap:wrap;gap:var(--sp-1)}.quick-actions{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);max-width:640px;width:100%;animation:fadeUp var(--duration-enter) var(--delay-md) var(--ease-out) both}.quick-actions-label{font-family:var(--font-ui);font-size:var(--text-2xs);font-weight:var(--fw-semibold);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--sp-2)}.quick-actions-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sp-2);width:100%}.quick-action-chip{border-radius:var(--radius-md);background:var(--surface-2);padding:var(--sp-2_5) var(--sp-3_5);font-weight:var(--fw-medium);transition:background-color var(--t),color var(--t),border-color var(--t),transform var(--t),box-shadow var(--t)}.quick-action-chip:hover{border-color:var(--accent);background:var(--surface-3);color:var(--text)}.quick-action-chip:focus-visible{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:2px}@media(max-width:768px){.quick-action-chip{padding:var(--sp-2) var(--sp-3)}}.degraded-banner{position:fixed;top:var(--sp-4);left:50%;transform:translate(-50%);z-index:var(--z-toast);display:flex;align-items:center;gap:var(--sp-2);width:min(520px,calc(100vw - 2 * var(--sp-4)));padding:var(--sp-3) var(--sp-4);background:var(--surface-2);border:1px solid rgba(var(--warning-rgb),.5);border-left:3px solid rgba(var(--warning-rgb),1);border-radius:var(--radius-md);font-family:var(--font-ui);font-size:var(--text-sm);color:var(--text);box-shadow:var(--shadow-md)}.degraded-banner__icon{color:rgba(var(--warning-rgb),1);flex-shrink:0}.degraded-banner__msg{flex:1}.degraded-banner__timer{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.degraded-banner__dismiss{color:var(--text-dim);cursor:pointer;font-size:var(--text-base);padding:0 var(--sp-1);flex-shrink:0}.degraded-banner__dismiss:hover{color:var(--text)}.connections-panel{display:flex;flex-direction:column;gap:var(--sp-3)}.connections-list{display:flex;flex-direction:column;gap:var(--sp-2);list-style:none;padding:0;margin:0}.connection-row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.connection-meta{display:flex;align-items:center;gap:var(--sp-2)}.connection-name{font-family:var(--font-ui);text-transform:capitalize}.connection-actions{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.connection-row--multi{flex-direction:column;align-items:stretch}.connection-accounts{display:flex;flex-direction:column;gap:var(--sp-1);list-style:none;padding:0;margin:var(--sp-2) 0 0}.connection-account{display:flex;align-items:center;gap:var(--sp-2)}.connection-account-ref{font-family:var(--font-mono)}.connection-note{margin:0}.connection-note code{font-family:var(--font-mono)}.usage-panel{display:flex;flex-direction:column;gap:var(--sp-4)}.usage-toolbar{display:flex;align-items:center;gap:var(--sp-2)}.usage-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--sp-3)}.usage-stat{margin-top:var(--sp-1);font-family:var(--font-display);font-size:var(--text-2xl);line-height:var(--lh-tight);color:var(--text)}.usage-chart{margin-bottom:var(--sp-2)}.usage-table{width:100%;border-collapse:collapse}.usage-table th,.usage-table td{padding:var(--sp-2);border-bottom:var(--border-width) solid var(--border);text-align:right}.usage-table th:first-child,.usage-table td:first-child{text-align:left}.usage-table th{color:var(--text-muted);text-align:left;font-size:var(--text-xs);font-weight:var(--fw-semibold)}.ambient-bg{position:absolute;inset:0;z-index:var(--z-behind);overflow:hidden;pointer-events:none;contain:layout paint}.ambient-layer{position:absolute;inset:0;width:100%;height:100%}.ambient-canvas{display:block}.ambient-ember{background:radial-gradient(60% 50% at 25% 30%,rgba(var(--accent-rgb),var(--opacity-dim)),transparent 70%),radial-gradient(55% 45% at 80% 70%,rgba(var(--accent-rgb),var(--opacity-dim)),transparent 70%),radial-gradient(50% 60% at 55% 95%,rgba(var(--accent-rgb),var(--opacity-dim)),transparent 75%);animation:ambient-ember-drift 90s var(--ease-in-out) infinite alternate;will-change:transform}.ambient-bg[data-state=hero] .ambient-ember{opacity:1}.ambient-bg[data-state=trace] .ambient-ember{opacity:var(--opacity-dim)}.ambient-bg[data-state=ambient] .ambient-ember,.ambient-bg[data-state=trace] .ambient-canvas{opacity:var(--opacity-muted)}@keyframes ambient-ember-drift{0%{transform:translateZ(0) scale(1)}50%{transform:translate3d(2%,-1.5%,0) scale(1.06)}to{transform:translate3d(-1.5%,1%,0) scale(1.03)}}@media(prefers-reduced-motion:reduce){.ambient-ember{animation:none}}.appearance-settings{display:flex;flex-direction:column;gap:var(--sp-6)}.appearance-section{display:flex;flex-direction:column;gap:var(--sp-3)}.appearance-hint{margin:0;max-width:var(--container-sm);color:var(--text-dim);font-size:var(--text-sm);line-height:var(--lh-snug)}.anim-picker-wrap{display:block}.export-dialog{display:flex;flex-direction:column;gap:var(--sp-3)}.export-dialog-caption{margin:0;font-size:var(--text-xs);color:var(--text-dim)}.assets-panel{display:flex;flex-direction:column;height:100%;background:var(--surface);color:var(--text)}.assets-header{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-5) var(--sp-6) var(--sp-3) var(--sp-6);border-bottom:1px solid var(--border)}.assets-subtitle{margin:0;font-size:var(--text-sm);color:var(--text-dim)}.assets-toolbar{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;margin-top:var(--sp-2)}.assets-search{flex:1 1 240px;min-width:0}.assets-tool-select{flex:0 0 auto}.assets-body{flex:1;overflow-y:auto;padding:var(--sp-4) var(--sp-6)}.assets-error{margin-bottom:var(--sp-3);padding:var(--sp-2) var(--sp-3);background:rgba(var(--danger-rgb),var(--opacity-subtle));border:1px solid rgba(var(--danger-rgb),.3);border-radius:var(--radius-md);color:var(--text);font-size:var(--text-sm)}.assets-list{display:flex;flex-direction:column;gap:var(--sp-2)}.assets-row{position:relative;display:grid;grid-template-columns:1fr auto;gap:var(--sp-3);align-items:center;padding:var(--sp-2) var(--sp-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-elev);transition:border-color var(--t)}.assets-row:hover{border-color:var(--border-light)}.assets-row-open{display:grid;grid-template-columns:80px 1fr;gap:var(--sp-3);align-items:center;min-width:0;cursor:pointer;text-align:left}.assets-thumb{width:80px;height:60px;object-fit:cover;border-radius:var(--radius-sm);cursor:pointer;background:var(--surface)}.assets-thumb--empty{display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-dim);border:1px dashed var(--border);cursor:default}.assets-info{min-width:0}.assets-row-title{font-family:var(--font-ui);font-size:var(--text-md);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.assets-row-title--empty{color:var(--text-muted);font-style:italic}.assets-row-meta{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-1);font-size:var(--text-xs);color:var(--text-dim)}.assets-meta-time{font-family:var(--font-mono)}.assets-row-actions{display:flex;align-items:center;gap:var(--sp-1);opacity:0;transition:opacity var(--t)}.assets-row:hover .assets-row-actions,.assets-row:focus-within .assets-row-actions{opacity:1}.marketing-assets-link{margin-left:auto}@media(max-width:768px){.assets-header{padding:var(--sp-4)}.assets-body{padding:var(--sp-3) var(--sp-4)}.assets-row-open{grid-template-columns:64px 1fr}.assets-row-actions{opacity:1}}.auth-page{display:flex;align-items:flex-start;justify-content:center;min-height:100dvh;overflow-y:auto;background:var(--bg);padding:var(--sp-6)}@media(min-height:720px){.auth-page{align-items:center}}.auth-checking{display:flex;align-items:center;justify-content:center}.auth-card{border-radius:var(--radius-xl);padding:var(--sp-10) var(--sp-8);width:100%;max-width:400px;box-shadow:var(--shadow-lg)}.auth-card--wide{max-width:600px}.auth-logo{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-7)}.auth-logo-mark{width:36px;height:36px;border-radius:var(--radius-md);background:var(--accent);color:var(--on-accent);font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--text-xl);display:flex;align-items:center;justify-content:center;flex-shrink:0}.auth-logo-text{display:flex;flex-direction:column;gap:var(--sp-px)}.auth-logo-name{font-family:var(--font-display);font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text);letter-spacing:.02em}.auth-logo-sub{font-size:var(--text-2xs);color:var(--text-dim);letter-spacing:.08em;text-transform:uppercase}.auth-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--fw-semibold);color:var(--text);margin:0 0 var(--sp-1_5)}.auth-subtitle{font-size:var(--text-base);color:var(--text-muted);margin:0 0 var(--sp-6);line-height:1.5}.auth-form{display:flex;flex-direction:column;gap:var(--sp-4);margin-top:var(--sp-5)}.auth-field{display:flex;flex-direction:column;gap:var(--sp-1_5)}.auth-label{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase}.auth-input{border-radius:var(--radius-md);outline:none;box-sizing:border-box}.auth-input:focus{border-color:var(--accent)}.auth-input::placeholder{color:var(--text-dim)}.auth-input:disabled{opacity:.5;cursor:not-allowed}.totp-input{font-family:var(--font-mono);font-size:var(--text-3xl);font-weight:var(--fw-semibold);letter-spacing:.08em;text-align:center;padding:var(--sp-3_5) var(--sp-3)}.auth-submit{width:100%;padding:var(--sp-3) var(--sp-4);border-radius:var(--radius-md);font-size:var(--text-md)}.auth-error{background:rgba(var(--danger-rgb),.1);border:1px solid rgba(var(--danger-rgb),.3);border-radius:var(--radius-sm);color:var(--danger);font-size:var(--text-sm);padding:var(--sp-2) var(--sp-2_5)}.auth-hint{margin:var(--sp-4) 0 0;font-size:var(--text-xs);color:var(--text-dim);text-align:center}.auth-version{display:block;margin-top:var(--sp-3);font-family:var(--font-mono);font-size:var(--text-2xs);color:rgba(var(--text-dim-rgb),.7);text-align:center;letter-spacing:.04em}.auth-back-btn{display:block;margin:var(--sp-4) auto 0;color:var(--text-muted);transition:color var(--t)}.auth-back-btn:hover{color:var(--text)}.auth-loading{text-align:center;color:var(--text-dim);padding:var(--sp-6) 0}.totp-setup-grid{display:flex;gap:var(--sp-6);align-items:flex-start;margin-bottom:var(--sp-1)}@media(max-width:600px){.totp-setup-grid{flex-direction:column;align-items:stretch;gap:var(--sp-4)}.qr-code-wrap{align-self:center}}.qr-code-wrap{flex-shrink:0;background:#fff;border-radius:var(--radius-md);padding:var(--sp-2)}.qr-placeholder{width:180px;height:180px;display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);color:var(--text-dim)}.totp-manual{flex:1;min-width:0}.totp-manual-label{font-size:var(--text-sm);color:var(--text-muted);margin:0 0 var(--sp-2)}.totp-key-wrap{display:flex;align-items:center;gap:var(--sp-2);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--sp-2) var(--sp-2_5);margin-bottom:var(--sp-3_5)}.totp-key{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--accent);word-break:break-all;flex:1}.totp-copy-btn{flex-shrink:0;background:var(--surface-3);color:var(--text-muted);font-size:var(--text-2xs);white-space:nowrap}.totp-copy-btn:hover{color:var(--text);border-color:var(--border-light)}.totp-instructions{font-size:var(--text-sm);color:var(--text-muted);padding-left:var(--sp-4);margin:0;line-height:1.8}.ci-overlay{z-index:var(--z-dropdown);background:#000000a6}.ci-panel{max-width:560px;max-height:88vh;border-color:var(--border-light);box-shadow:0 24px 48px #00000080;font-family:var(--font-ui)}.ci-token-total{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--accent);background:var(--accent-dim);padding:var(--sp-0_5) var(--sp-2);border-radius:10px}.ci-body{padding:var(--sp-1) 0}.ci-section{border-bottom:1px solid var(--border);padding:var(--sp-2_5) var(--sp-4)}.ci-section:last-child{border-bottom:none}.ci-section-header{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-1_5);-webkit-user-select:none;user-select:none}.ci-section-title{font-size:var(--text-xs);font-weight:var(--fw-semibold);letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.ci-section-meta{font-size:var(--text-xs);color:var(--text-dim);margin-left:auto}.ci-expand-arrow{font-size:var(--text-2xs);color:var(--text-dim)}.ci-toggle-all{display:flex;gap:var(--sp-1);margin-left:auto}.ci-toggle-btn{font-size:var(--text-2xs);font-family:var(--font-mono);padding:var(--sp-px) var(--sp-2)}.ci-toggle-btn:hover{border-color:var(--accent);color:var(--accent)}.ci-empty{font-size:var(--text-xs);color:var(--text-dim);font-family:var(--font-mono);padding:var(--sp-1) 0}.ci-msg-list{display:flex;flex-direction:column;gap:var(--sp-0_5)}.ci-msg-row{display:flex;align-items:baseline;gap:var(--sp-2);padding:var(--sp-1) var(--sp-2);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--t);font-size:var(--text-sm)}.ci-msg-row:hover{background:var(--surface-2)}.ci-msg-row--off{opacity:.4}.ci-msg-row--skipped{opacity:.3}.ci-msg-check{accent-color:var(--accent);flex-shrink:0;margin-top:var(--sp-px)}.ci-msg-role{font-size:var(--text-2xs);font-weight:var(--fw-semibold);font-family:var(--font-mono);color:var(--accent);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;width:24px}.ci-msg-preview{color:var(--text-muted);flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ci-msg-badge{flex-shrink:0}.ci-skills-list{display:flex;flex-direction:column;gap:var(--sp-0_5);padding-top:var(--sp-1)}.ci-skill-row{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--text-xs);padding:var(--sp-0_5) 0}.ci-skill-dot{width:5px;height:5px;border-radius:var(--radius-pill);background:var(--accent-dim);border:1px solid var(--accent);flex-shrink:0}.ci-skill-name{color:var(--text-muted);font-family:var(--font-mono)}.ci-skill-group{font-size:var(--text-2xs);color:var(--text-dim);background:var(--surface-3);padding:var(--sp-px) var(--sp-1_5);border-radius:3px}.ci-sys-info{font-size:var(--text-xs);color:var(--text-muted);line-height:1.5;padding:var(--sp-1) 0}.ci-sys-note{font-size:var(--text-2xs);color:var(--text-dim);font-style:italic;margin-top:var(--sp-1)}.ci-section--tokens{padding-bottom:var(--sp-3)}.ci-token-row{display:flex;align-items:center;gap:var(--sp-2_5);margin-bottom:var(--sp-1_5)}.ci-token-label{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--text-dim);width:52px;flex-shrink:0}.ci-token-bar-track{flex:1;height:4px;background:var(--surface-3);border-radius:2px;overflow:hidden}.ci-token-bar-fill{height:100%;background:var(--accent);border-radius:2px;transition:width var(--t) var(--ease-out)}.ci-token-value{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--text-muted);width:55px;text-align:right;flex-shrink:0}.ci-token-total-row{display:flex;align-items:center;gap:var(--sp-2_5);margin-top:var(--sp-2);padding-top:var(--sp-2);border-top:1px solid var(--border)}.ci-token-value--total{color:var(--accent);font-weight:var(--fw-semibold)}.ci-footer{border-top:1px solid var(--border);padding:var(--sp-3) var(--sp-4);flex-shrink:0;display:flex;flex-direction:column;gap:var(--sp-2)}.ci-pending-msg{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--text-xs);color:var(--text-dim);overflow:hidden}.ci-pending-label{font-weight:var(--fw-semibold);color:var(--text-muted);flex-shrink:0}.ci-pending-text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex:1}.ci-pending-files{font-family:var(--font-mono);color:var(--accent);flex-shrink:0}.ci-footer-actions{display:flex;justify-content:flex-end;gap:var(--sp-2)}.ci-btn--cancel{border-color:var(--border-light);color:var(--text-muted)}.ci-btn--cancel:hover{border-color:var(--text-dim);color:var(--text)}.ci-btn--send{color:var(--bg)}.input-inspect-btn{flex-shrink:0;color:var(--text-dim);background:none;border-color:transparent}.input-inspect-btn:hover{color:var(--accent);background:var(--surface-3);border-color:transparent}@media(max-width:600px){.ci-overlay{align-items:flex-end;padding:0}.ci-panel{max-width:100%;border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:82dvh}}.cost-panel{flex-shrink:0;border-top:1px solid var(--border)}.cost-panel-header{width:100%;display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);cursor:pointer;color:var(--text-muted);text-align:left}.cost-panel-header:hover{color:var(--text)}.cost-panel-label{font-size:var(--text-2xs);font-weight:var(--fw-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);flex-shrink:0}.cost-panel-summary{flex:1;font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right}.cost-panel-chevron{display:inline-flex;transition:transform var(--t) var(--ease-out);opacity:.6}.cost-panel-chevron.open{transform:rotate(180deg)}.cost-panel-body{padding:var(--sp-1) var(--sp-3) var(--sp-3);border-top:1px dashed var(--border);background:var(--surface-2)}.cost-panel-grid{display:grid;grid-template-columns:auto 1fr 1fr 1fr;gap:var(--sp-1) var(--sp-2_5);font-family:var(--font-mono);font-size:var(--text-xs);margin-top:var(--sp-2)}.cost-panel-col-head{font-size:var(--text-2xs);font-weight:var(--fw-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-dim);text-align:right}.cost-panel-row-label{color:var(--text-muted);font-size:var(--text-2xs);letter-spacing:.04em;text-transform:uppercase}.cost-panel-cell{text-align:right;color:var(--text)}.cost-panel-row-cost{font-weight:var(--fw-semibold);color:var(--text);border-top:1px dotted var(--border);padding-top:var(--sp-1);margin-top:2px}.cost-panel-footnote{margin-top:var(--sp-2);font-size:var(--text-2xs);color:var(--text-muted);font-style:italic}.file-manager{display:flex;flex:1;min-width:0;height:100%;overflow:hidden;background:var(--bg);color:var(--text);position:relative;font-family:var(--font-ui)}.fm-tree{width:220px;flex-shrink:0;display:flex;flex-direction:column;background:var(--surface);border-right:1px solid var(--border);overflow:hidden}.fm-tree-header{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-3) var(--sp-3_5);border-bottom:1px solid var(--border);flex-shrink:0}.fm-tree-body{flex:1;overflow-y:auto;padding:var(--sp-1_5) 0}.fm-tree-node{display:flex;align-items:center;gap:var(--sp-1);padding:var(--sp-1) var(--sp-3);font-size:var(--text-sm);cursor:pointer;color:var(--text-muted);-webkit-user-select:none;user-select:none;transition:background var(--t),color var(--t)}.fm-tree-node:hover{background:var(--surface-2);color:var(--text)}.fm-tree-node--child{padding-left:var(--sp-7)}.fm-tree-arrow{width:10px;font-size:var(--text-2xs);color:var(--text-dim);flex-shrink:0}.fm-tree-icon{width:14px;height:14px;flex-shrink:0;color:var(--accent)}.fm-tree-icon svg{width:14px;height:14px}.fm-main{display:flex;flex-direction:column;flex:1;min-width:0;overflow:hidden;position:relative}.fm-toolbar{display:flex;align-items:center;gap:var(--sp-2_5);padding:var(--sp-2_5) var(--sp-4);border-bottom:1px solid var(--border);flex-shrink:0;flex-wrap:wrap;background:var(--surface)}.fm-btn{color:var(--text-muted);border:1px solid var(--border-light);background:var(--surface-2);text-decoration:none;white-space:nowrap;cursor:pointer}.fm-btn svg{width:12px;height:12px;flex-shrink:0}.fm-btn--active,.fm-btn--primary{background:var(--accent-dim);color:var(--accent-hover);border-color:var(--accent)}.fm-btn--danger{color:var(--danger);border-color:var(--danger)}.fm-btn:disabled{opacity:.5;cursor:not-allowed}@media(hover:hover){.fm-btn:hover{background:var(--surface-3);color:var(--text)}.fm-btn--primary:hover{background:var(--accent);color:var(--bg)}.fm-btn--danger:hover{background:var(--danger);color:var(--on-danger)}}.fm-btn--icon{color:var(--text-muted);border:1px solid var(--border-light);background:var(--surface-2);cursor:pointer}.fm-search{flex:1;min-width:120px;max-width:260px;padding:var(--sp-1) var(--sp-2);background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-xs);font-family:var(--font-ui);outline:none}.fm-search:focus{border-color:var(--accent)}.fm-search::placeholder{color:var(--text-dim)}.fm-overflow-toggle{display:none}.fm-overflow{display:contents}.fm-btn--back{display:none}.fm-select{width:auto;color:var(--text-muted);cursor:pointer;height:var(--control-height);padding-top:0;padding-bottom:0}.fm-breadcrumb{display:flex;align-items:center;flex-wrap:nowrap;overflow-x:auto;min-width:0;min-height:var(--control-height);gap:var(--sp-0_5);padding:var(--sp-1_5) var(--sp-3_5);font-size:var(--text-xs);font-family:var(--font-mono);color:var(--text-muted);border-bottom:1px solid var(--border);flex-shrink:0;background:var(--surface)}.fm-breadcrumb-btn{color:var(--text-muted);font-size:var(--text-xs);font-family:var(--font-mono);padding:var(--sp-px) var(--sp-1);border-radius:2px}@media(hover:hover){.fm-breadcrumb-btn:hover{color:var(--accent);background:var(--accent-dim)}}.fm-breadcrumb-sep{color:var(--text-dim);margin:0 var(--sp-0_5)}.fm-breadcrumb-current{color:var(--text-muted);padding:var(--sp-px) var(--sp-1);display:inline-flex;align-items:center;font-size:var(--text-xs);font-family:var(--font-mono)}.fm-breadcrumb-home{display:inline-flex;align-items:center;padding:var(--sp-px) var(--sp-1);font-size:var(--text-xs)}.fm-breadcrumb-btn{display:inline-flex;align-items:center}.fm-upload-progress{padding:var(--sp-1_5) var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-1);background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0}.fm-upload-item{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--text-xs)}.fm-upload-name{color:var(--text-muted);min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-upload-bar{width:120px;height:4px;background:var(--border);border-radius:2px;overflow:hidden}.fm-upload-fill{height:100%;background:var(--accent);border-radius:2px;transition:width var(--duration-fast)}.fm-upload-done{color:var(--success)}.fm-upload-error{color:var(--danger)}.fm-content{flex:1;overflow-y:auto;outline:none;position:relative}.fm-content--dragover{background:rgba(var(--accent-rgb),.04)}.fm-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:120px;font-family:var(--font-mono);padding:var(--sp-10)}.fm-empty--error{color:var(--danger)}.fm-list{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.fm-list thead th{padding:var(--sp-1_5) var(--sp-3);text-align:left;font-size:var(--text-2xs);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);border-bottom:1px solid var(--border);font-weight:var(--fw-normal);position:sticky;top:0;background:var(--bg)}.fm-row{cursor:pointer;transition:background var(--t);border-bottom:1px solid var(--border)}.fm-row:hover{background:var(--surface-2)}.fm-row--selected{background:var(--accent-dim)!important}.fm-row--dragover{background:rgba(var(--accent-rgb),.12)!important;outline:1px dashed var(--accent)}.fm-row-name{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:420px}.fm-row-size,.fm-row-date{padding:var(--sp-2) var(--sp-3);color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-xs);white-space:nowrap}.fm-icon{width:16px;height:16px;flex-shrink:0;color:var(--text-dim)}.fm-icon svg{width:16px;height:16px}.fm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:var(--sp-2);padding:var(--sp-3)}.fm-grid-cell{display:flex;flex-direction:column;align-items:center;gap:var(--sp-1_5);padding:var(--sp-3) var(--sp-2) var(--sp-2);border-radius:var(--radius-md);cursor:pointer;border:1px solid transparent;transition:background var(--t),border-color var(--t);text-align:center}.fm-grid-cell:hover{background:var(--surface-2)}.fm-grid-cell.fm-row--selected{background:var(--accent-dim);border-color:var(--accent)}.fm-grid-icon{width:36px;height:36px;color:var(--text-dim)}.fm-grid-icon svg{width:36px;height:36px}.fm-grid-name{font-size:var(--text-xs);color:var(--text-muted);word-break:break-word;max-width:100%;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.fm-preview{width:380px;flex-shrink:0;display:flex;flex-direction:column;border-left:1px solid var(--border);background:var(--surface);overflow:hidden}.fm-preview-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2_5);padding:var(--sp-2_5) var(--sp-4);border-bottom:1px solid var(--border);flex-shrink:0}.fm-preview-title{font-size:var(--text-sm);color:var(--text-muted);font-family:var(--font-mono);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-preview-body{flex:1;overflow:hidden;display:flex;flex-direction:column}.fm-editor{flex:1;width:100%;padding:var(--sp-3);background:var(--bg);border:none;outline:none;resize:none;color:var(--text);font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.6}.fm-preview-img{max-width:100%;max-height:100%;object-fit:contain;padding:var(--sp-3)}.fm-preview-frame{flex:1;width:100%;border:none}.log-resize-handle{position:relative;height:12px;cursor:row-resize;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--surface);border-bottom:1px solid var(--border);touch-action:none}.log-resize-handle:hover{background:var(--surface-2)}.log-resize-grip{display:block;width:36px;height:4px;background:var(--border);border-radius:2px}.log-resize-handle:hover .log-resize-grip{background:var(--text-dim)}.fm-preview-iframe{flex:1;width:100%;height:100%;border:none;background:#fff}.fm-preview-body>*{flex:1;min-height:0}.fm-preview-body>.fm-empty{display:flex;align-items:center;justify-content:center}.fm-preview{position:relative}.fm-preview-resize{position:absolute;top:0;left:-3px;width:6px;height:100%;cursor:col-resize;z-index:var(--z-base);background:transparent;transition:background var(--t);touch-action:none}@media(hover:hover){.fm-preview-resize:hover{background:var(--accent-dim)}}@media(max-width:768px){.fm-preview-resize{display:none}}.fm-context-menu{position:fixed;z-index:var(--z-modal);list-style:none;background:var(--surface-3);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:0 8px 24px #00000080;padding:var(--sp-1) 0;min-width:140px;font-size:var(--text-sm)}.fm-context-menu li{padding:var(--sp-2) var(--sp-3_5);cursor:pointer;color:var(--text-muted);transition:background var(--t),color var(--t)}.fm-context-menu li:hover{background:var(--surface-2);color:var(--text)}.fm-context-menu-danger{color:var(--danger)!important}.fm-context-menu a{display:block}.fm-toast{position:fixed;bottom:var(--sp-6);left:50%;transform:translate(-50%);background:var(--surface-3);color:var(--text);border:1px solid var(--border);padding:var(--sp-2) var(--sp-4);border-radius:var(--radius-sm);font-size:var(--text-base);z-index:var(--z-toast);pointer-events:none;box-shadow:0 2px 8px #0003}.fm-modal-backdrop{position:fixed;inset:0;z-index:var(--z-sheet);background:#0000008c;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.fm-modal{background:var(--surface-3);border:1px solid var(--border-light);border-radius:var(--radius-lg);min-width:320px;max-width:480px;width:90%;box-shadow:0 16px 40px #0009}.fm-modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--border);font-size:var(--text-base);color:var(--text)}.fm-modal-body{padding:var(--sp-4)}.fm-modal-input{border-color:var(--border-light);outline:none}.fm-modal-input:focus{border-color:var(--accent)}.fm-drag-overlay{position:absolute;inset:0;z-index:var(--z-floating);display:flex;align-items:center;justify-content:center;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:2px dashed var(--accent);pointer-events:none}.fm-drag-label{font-size:var(--text-xl);font-weight:var(--fw-semibold);color:var(--accent);font-family:var(--font-display)}.fm-mat-icon{display:inline-flex;align-items:center;justify-content:center;line-height:1;-webkit-user-select:none;user-select:none;flex-shrink:0;font-size:var(--icon-size, var(--text-lg));color:var(--fm-icon-color, inherit);font-variation-settings:"FILL" 1}.fm-row-actions{width:28px;padding:0!important}.fm-row-more{display:none;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-dim);cursor:pointer;padding:0}.fm-row-more .material-symbols-outlined{font-size:var(--text-xl)}.fm-row:hover .fm-row-more{display:inline-flex}@media(hover:hover){.fm-row-more:hover{background:var(--surface-3);color:var(--text)}}.fm-preview-toggle{display:flex;gap:0;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.fm-toggle-btn{color:var(--text-muted)}.fm-toggle-btn--active{background:var(--accent-dim);color:var(--accent)}@media(hover:hover){.fm-toggle-btn:hover{background:var(--surface-2);color:var(--text)}}.fm-md-preview{padding:var(--sp-5) var(--sp-6);overflow-y:auto;height:100%;color:var(--text);font-family:var(--font-ui);font-size:var(--text-md);line-height:1.7}.fm-md-preview h1,.fm-md-preview h2,.fm-md-preview h3,.fm-md-preview h4,.fm-md-preview h5,.fm-md-preview h6{font-family:var(--font-display);color:var(--text);margin:1.4em 0 .5em;line-height:1.2}.fm-md-preview h1{font-size:1.8em}.fm-md-preview h2{font-size:1.4em;border-bottom:1px solid var(--border);padding-bottom:var(--sp-1_5)}.fm-md-preview h3{font-size:1.15em}.fm-md-preview p{margin:0 0 1em}.fm-md-preview a{color:var(--accent)}.fm-md-preview code{font-family:var(--font-mono);font-size:.88em;background:var(--surface-2);padding:var(--sp-px) var(--sp-1_5);border-radius:3px;color:var(--accent-hover)}.fm-md-preview pre{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--sp-3_5) var(--sp-4);overflow-x:auto;margin:0 0 1em}.fm-md-preview pre code{background:none;padding:0;color:var(--text)}.fm-md-preview blockquote{border-left:3px solid var(--accent-dim);margin:0 0 1em;padding:var(--sp-1) var(--sp-4);color:var(--text-muted)}.fm-md-preview table{width:100%;border-collapse:collapse;font-size:var(--text-base);margin:0 0 1em}.fm-md-preview th,.fm-md-preview td{border:1px solid var(--border);padding:var(--sp-1_5) var(--sp-2_5);text-align:left}.fm-md-preview th{background:var(--surface-2)}.fm-md-preview ul,.fm-md-preview ol{margin:0 0 1em;padding-left:var(--sp-6)}.fm-md-preview li{margin-bottom:3px}.fm-md-preview img{max-width:100%;border-radius:var(--radius-sm)}.fm-md-preview hr{border:none;border-top:1px solid var(--border);margin:1.5em 0}.fm-mobile-list{display:flex;flex-direction:column}.fm-mobile-row{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2_5) var(--sp-3);border-bottom:1px solid var(--border-light);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--duration-fast)}.fm-mobile-row:active{background:var(--surface-2)}.fm-mobile-row.fm-row--selected{background:var(--accent-dim)}.fm-mobile-icon-wrap{width:44px;height:44px;border-radius:10px;background:var(--surface-2);display:flex;align-items:center;justify-content:center;flex-shrink:0}.fm-mobile-info{flex:1;min-width:0}.fm-mobile-name{font-size:var(--text-md);color:var(--text);font-weight:var(--fw-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fm-mobile-meta{font-size:var(--text-xs);color:var(--text-muted);margin-top:2px}.fm-mobile-more{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:var(--radius-pill);color:var(--text-dim);cursor:pointer;flex-shrink:0;-webkit-tap-highlight-color:transparent}.fm-mobile-more .material-symbols-outlined{font-size:var(--icon-size-lg)}.fm-mobile-more:active{background:var(--surface-3)}.fm-sheet-backdrop{position:fixed;inset:0;background:#00000080;z-index:var(--z-sheet);display:flex;align-items:flex-end;animation:fm-backdrop-in var(--t) var(--ease-out)}@keyframes fm-backdrop-in{0%{opacity:0}to{opacity:1}}.fm-sheet{width:100%;background:var(--surface);border-radius:var(--radius-xl) 16px 0 0;padding:var(--sp-2) 0 calc(env(safe-area-inset-bottom) + var(--sp-3));animation:fm-sheet-up var(--t) var(--ease-out)}@keyframes fm-sheet-up{0%{transform:translateY(40%);opacity:0}to{transform:translateY(0);opacity:1}}.fm-sheet-handle{width:36px;height:4px;background:var(--border);border-radius:2px;margin:0 auto var(--sp-3)}.fm-sheet-header{display:flex;align-items:center;gap:var(--sp-2_5);padding:0 var(--sp-5) var(--sp-3);border-bottom:1px solid var(--border-light);margin-bottom:var(--sp-2)}.fm-sheet-icon{flex-shrink:0}.fm-sheet-title{font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fm-sheet-item{display:flex;align-items:center;gap:var(--sp-3_5);width:100%;padding:var(--sp-3_5) var(--sp-5);background:none;border:none;color:var(--text);font-size:var(--text-lg);font-family:var(--font-ui);cursor:pointer;text-align:left;text-decoration:none;-webkit-tap-highlight-color:transparent}.fm-sheet-item .material-symbols-outlined{font-size:var(--text-2xl);color:var(--text-muted)}.fm-sheet-item:active{background:var(--surface-2)}.fm-sheet-item--danger,.fm-sheet-item--danger .material-symbols-outlined{color:var(--danger)}.fm-preview--mobile{position:fixed!important;inset:0!important;width:100%!important;border-left:none!important;border-radius:0!important;z-index:var(--z-toast)}@media(max-width:640px){.fm-tree{display:none}.fm-preview:not(.fm-preview--mobile){display:none}.fm-search{max-width:none}}@media(max-width:768px){.fm-toolbar{gap:var(--sp-1);padding:var(--sp-1_5) var(--sp-2);flex-wrap:wrap}.fm-search{flex:1 0 100%;max-width:none;order:99}.fm-overflow-toggle{display:inline-flex}.fm-overflow{display:none;flex:1 0 100%;order:100;gap:var(--sp-1);padding-top:var(--sp-1);border-top:1px solid var(--border-light)}.fm-overflow.open{display:flex}.fm-btn--back{display:inline-flex}.fm-btn-upload,.fm-btn-newfile,.fm-btn-mkdir{display:none}}.fm-search-results{display:flex;flex-direction:column;padding:var(--sp-1) 0}.fm-search-result{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2_5) var(--sp-4);cursor:pointer;border-bottom:1px solid var(--border-light);transition:background var(--t)}.fm-search-result:active{background:var(--surface-2)}@media(hover:hover){.fm-search-result:hover{background:var(--surface-2)}}.fm-search-result-icon{flex-shrink:0}.fm-search-result-info{min-width:0;flex:1}.fm-search-result-name{font-size:var(--text-md);color:var(--text);font-family:var(--font-ui);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-search-result-path{font-size:var(--text-xs);color:var(--text-dim);font-family:var(--font-mono);margin-top:var(--sp-0_5);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-codemirror-host{height:100%;overflow:hidden}.fm-codemirror-host .cm-editor{height:100%}.fm-thumb{display:block;object-fit:cover;border-radius:3px;background:var(--surface-3);flex-shrink:0}.fm-grid-icon .fm-thumb,.fm-mobile-icon-wrap .fm-thumb{border-radius:var(--radius-sm)}.fm-root-picker{padding:var(--sp-6) var(--sp-5);overflow-y:auto;height:100%}.fm-root-picker-title{font-family:var(--font-display);font-size:var(--text-md);color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin:0 0 var(--sp-3_5)}.fm-root-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--sp-2_5)}.fm-root-card{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);padding:var(--sp-5) var(--sp-2_5) var(--sp-3_5);color:var(--text);cursor:pointer;transition:background var(--t),border-color var(--t),transform var(--t);text-align:center}.fm-root-card:hover{background:var(--surface-3);border-color:var(--accent);transform:translateY(-1px)}.fm-root-card-name{font-size:var(--text-base);color:var(--text);word-break:break-word}.fm-root-card-sub{color:var(--text-dim)}.fm-fab-wrap{position:fixed;right:var(--sp-4);bottom:calc(24px + env(safe-area-inset-bottom,var(--sp-0)));display:flex;flex-direction:column;align-items:flex-end;gap:var(--sp-2_5);z-index:var(--z-floating);pointer-events:none}.fm-fab-wrap>*{pointer-events:auto}.fm-fab{width:56px;height:56px;border-radius:var(--radius-xl);background:var(--accent);color:var(--bg);border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 6px 18px #00000059;transition:transform var(--t) var(--ease-out),background var(--t) var(--ease-out)}@media(hover:hover){.fm-fab:hover{background:var(--accent-hover)}}.fm-fab:active{transform:scale(.96)}.fm-fab .material-symbols-outlined{font-size:var(--text-3xl)}.fm-fab-wrap--open .fm-fab{transform:rotate(0)}.fm-fab-actions{display:flex;flex-direction:column;align-items:flex-end;gap:var(--sp-2);animation:fm-fab-pop var(--duration-fast) var(--ease-out)}@keyframes fm-fab-pop{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fm-fab-action{display:inline-flex;align-items:center;gap:var(--sp-2_5);padding:var(--sp-2_5) var(--sp-4);background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-pill);font-family:var(--font-ui);font-size:var(--text-base);cursor:pointer;box-shadow:0 4px 14px #00000040;white-space:nowrap}@media(hover:hover){.fm-fab-action:hover{background:var(--surface-2)}}.fm-fab-action .material-symbols-outlined{font-size:var(--icon-size-lg);color:var(--accent)}.slash-cmd-popup{position:absolute;bottom:calc(100% + var(--sp-1));left:0;right:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;z-index:var(--z-overlay);box-shadow:0 4px 20px #0006;max-height:280px;overflow-y:auto}.slash-cmd-item{display:flex;align-items:baseline;gap:var(--sp-2);width:100%;padding:var(--sp-2) var(--sp-3);background:none;border:none;border-bottom:1px solid var(--border);cursor:pointer;text-align:left;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text);transition:background var(--duration-fast)}.slash-cmd-item:last-child{border-bottom:none}.slash-cmd-item:hover,.slash-cmd-item.active{background:var(--hover-bg)}.slash-cmd-name{color:var(--accent);font-weight:var(--fw-semibold);flex-shrink:0;min-width:120px}.slash-cmd-hint{color:var(--text-muted);font-style:italic;flex-shrink:0}.slash-cmd-desc{color:var(--text-dim);font-size:var(--text-xs);margin-left:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:280px}.slash-cmd-badge{color:var(--accent);flex-shrink:0}.slash-cmd-item--skill .slash-cmd-name{color:var(--text)}.pinned-skills-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-1_5);padding:var(--sp-1_5) var(--sp-3) 0}.pinned-skills-label{font-size:var(--text-2xs);font-weight:var(--fw-bold);letter-spacing:.08em;color:var(--text-dim);font-family:var(--font-mono)}.pinned-skill-chip{padding:var(--sp-1) var(--sp-1_5) var(--sp-1) var(--sp-2_5);color:var(--accent)}.pinned-skill-remove{background:none;border:none;color:inherit;cursor:pointer;font-size:var(--text-xs);padding:0 var(--sp-0_5);opacity:.7;line-height:1}.pinned-skill-remove:hover{opacity:1}.higgs-panel{overflow:hidden}.higgs-panel-body{display:flex;flex:1;min-height:0;gap:0}.higgs-history{width:280px;flex-shrink:0;border-right:1px solid var(--border);overflow-y:auto;padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-2)}.higgs-history-title{font-size:var(--text-xs);font-family:var(--font-ui);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:var(--sp-1)}.higgs-history-empty{font-size:var(--text-base);color:var(--text-muted);padding:var(--sp-2) 0}.higgs-asset-list{display:flex;flex-direction:column;gap:var(--sp-3)}.higgs-asset-item{padding:var(--sp-2_5);display:flex;flex-direction:column;gap:var(--sp-1)}.higgs-asset-label{font-size:var(--text-sm);color:var(--text);font-family:var(--font-ui);font-weight:var(--fw-medium)}.higgs-asset-meta{font-size:var(--text-2xs);color:var(--text-muted);font-family:var(--font-mono)}.higgs-asset-thumb{width:100%;border-radius:var(--radius-sm);object-fit:cover;max-height:120px}.higgs-asset-link{display:flex;align-items:center;gap:var(--sp-1_5);font-size:var(--text-sm);color:var(--accent);text-decoration:none}.higgs-form{flex:1;overflow-y:auto;padding:var(--sp-6) var(--sp-8);display:flex;flex-direction:column;gap:var(--sp-4);max-width:960px}.higgs-form-title{font-family:var(--font-display);font-size:var(--text-lg);color:var(--text);margin-bottom:var(--sp-1)}.higgs-field{display:flex;flex-direction:column;gap:var(--sp-1_5);font-size:var(--text-sm);font-family:var(--font-ui);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.higgs-input:focus{outline:none;border-color:var(--accent)}.higgs-select-wrap{position:relative}.higgs-select{width:100%;display:flex;align-items:center;justify-content:space-between;cursor:pointer;text-align:left;transition:border-color var(--t)}.higgs-select:focus,.higgs-select[aria-expanded=true]{outline:none;border-color:var(--accent)}.higgs-select-caret{font-size:18px;color:var(--text-muted)}.higgs-select-dropdown{position:absolute;top:calc(100% + var(--sp-1));left:0;right:0;list-style:none;margin:0;padding:var(--sp-1) 0;z-index:10}.higgs-select-option{text-transform:none;letter-spacing:0;cursor:pointer;transition:background var(--t)}.higgs-select-option:hover{background:var(--surface)}.higgs-select-option.is-selected{color:var(--accent)}.higgs-brief{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--sp-2_5) var(--sp-3);color:var(--text);font-family:var(--font-ui);font-size:var(--text-base);resize:vertical;line-height:1.5}.higgs-brief:focus{outline:none;border-color:var(--accent)}.higgs-required{color:var(--accent)}.higgs-launch-btn{align-self:flex-start;transition:opacity var(--t),background var(--t)}.higgs-launch-btn:hover:not(:disabled){opacity:.85}.higgs-launch-btn:disabled{opacity:.4;cursor:not-allowed}@media(max-width:768px){.higgs-panel-body{flex-direction:column}.higgs-history{width:100%;border-right:none;border-bottom:1px solid var(--border);max-height:200px}.higgs-form{padding:var(--sp-4)}}.inbox-layout{flex:1;min-width:0;overflow:hidden}.inbox-back-btn{gap:var(--sp-1);color:var(--text-muted);flex-shrink:0}.inbox-back-btn:hover{background:var(--hover-bg);color:var(--text)}.inbox-header-center{flex:1;display:flex;flex-direction:column;gap:var(--sp-1_5);min-width:0}.inbox-mailbox-label{font-size:var(--text-sm);font-family:var(--font-mono);color:var(--text);font-weight:var(--fw-semibold)}.inbox-mailbox-select{width:fit-content;max-width:300px;cursor:pointer;font-family:var(--font-mono)}.inbox-folder-tabs{display:flex;gap:var(--sp-1)}.inbox-folder-tab{padding:var(--sp-1) var(--sp-2_5);border-radius:var(--radius-sm);background:transparent;border:1px solid transparent;color:var(--text-dim);font-size:var(--text-xs);font-family:var(--font-mono);cursor:pointer;transition:background var(--t),color var(--t),border-color var(--t)}.inbox-folder-tab:hover{background:var(--hover-bg);color:var(--text)}.inbox-folder-tab.active{background:var(--accent-dim, rgba(var(--accent-rgb), .12));border-color:var(--accent);color:var(--accent)}.inbox-action-btn{gap:var(--sp-1);color:var(--text-muted);font-family:var(--font-mono)}.inbox-action-btn:hover{background:var(--hover-bg);color:var(--text)}.inbox-action-btn:disabled{opacity:.4;cursor:default}.inbox-error-banner{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-2) var(--sp-4);background:rgba(var(--danger-rgb),.1);border-bottom:1px solid rgba(var(--danger-rgb),.3);color:var(--danger);font-size:var(--text-sm);font-family:var(--font-mono);flex-shrink:0}.inbox-error-banner button{background:none;border:none;color:inherit;cursor:pointer;font-size:var(--text-base);padding:0 var(--sp-1)}.inbox-body{display:grid;grid-template-columns:300px 1fr;flex:1;min-height:0;overflow:hidden}.inbox-pane-back{display:none}@media(max-width:768px){.inbox-layout .ph-root{flex-wrap:wrap;row-gap:var(--sp-2)}.inbox-header-center{flex-basis:100%;order:3}.inbox-body{grid-template-columns:1fr}.inbox-list{border-right:none}.inbox-body .inbox-pane,.inbox-body--reading .inbox-list{display:none}.inbox-body--reading .inbox-pane{display:flex}.inbox-pane-back{display:inline-flex}}.inbox-list{border-right:1px solid var(--border);overflow-y:auto;background:var(--surface)}.inbox-loading,.inbox-empty,.inbox-pane-empty{padding:var(--sp-6) var(--sp-4);color:var(--text-dim)}.inbox-item{padding:var(--sp-2_5) var(--sp-3_5);border-bottom:1px solid var(--border);cursor:pointer;transition:background var(--duration-fast)}.inbox-item:hover{background:var(--hover-bg)}.inbox-item--active{background:var(--accent-dim, rgba(var(--accent-rgb), .1))}.inbox-item-top{display:flex;justify-content:space-between;align-items:baseline;gap:var(--sp-1_5);margin-bottom:var(--sp-1)}.inbox-item-from{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inbox-item--unread .inbox-item-from{color:var(--text);font-weight:var(--fw-bold)}.inbox-item-date{font-size:var(--text-2xs);font-family:var(--font-mono);color:var(--text-dim);flex-shrink:0}.inbox-item-subject{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:var(--sp-1)}.inbox-item--unread .inbox-item-subject{color:var(--text);font-weight:var(--fw-semibold)}.inbox-item-preview{font-size:var(--text-2xs);color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono)}.inbox-item-attach{display:flex;align-items:center;gap:var(--sp-1);font-size:var(--text-2xs);color:var(--text-dim);font-family:var(--font-mono);margin-top:var(--sp-1)}.inbox-pane{display:flex;flex-direction:column;overflow:hidden;background:var(--bg)}.inbox-pane-header{padding:var(--sp-3_5) var(--sp-5);border-bottom:1px solid var(--border);flex-shrink:0;background:var(--surface)}.inbox-pane-subject{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--text);margin-bottom:var(--sp-1_5);font-family:var(--font-sans, inherit)}.inbox-pane-meta{display:flex;align-items:baseline;gap:var(--sp-3);flex-wrap:wrap}.inbox-pane-from{font-size:var(--text-sm);color:var(--text-muted)}.inbox-pane-addr{color:var(--text-dim);font-family:var(--font-mono);font-size:var(--text-xs)}.inbox-pane-date{font-size:var(--text-xs);color:var(--text-dim);font-family:var(--font-mono);margin-left:auto}.inbox-pane-to{font-size:var(--text-xs);color:var(--text-dim);font-family:var(--font-mono);margin-top:var(--sp-1)}.inbox-body-frame-wrap{flex:1;overflow:hidden;position:relative}.inbox-body-frame{width:100%;height:100%;border:none;background:var(--bg);color:var(--text)}.inbox-reply-actions{display:flex;gap:var(--sp-2);padding:var(--sp-2_5) var(--sp-5);border-top:1px solid var(--border);flex-shrink:0;background:var(--surface)}.inbox-reply-bar{border-top:1px solid var(--border);padding:var(--sp-3) var(--sp-5);background:var(--surface);flex-shrink:0}.inbox-reply-label{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--text-dim);margin-bottom:var(--sp-2)}.inbox-reply-textarea{width:100%;box-sizing:border-box;padding:var(--sp-2) var(--sp-2_5);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-sm);font-family:var(--font-mono);resize:vertical;min-height:80px;outline:none;transition:border-color var(--t)}.inbox-reply-textarea:focus{border-color:var(--accent)}.inbox-reply-footer{display:flex;justify-content:flex-end;gap:var(--sp-2);margin-top:var(--sp-2)}.inbox-compose-overlay{position:fixed;inset:0;background:#0006;z-index:var(--z-overlay);display:flex;align-items:center;justify-content:center}.inbox-compose-modal{width:560px;max-width:95vw;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:0 12px 40px #00000040;display:flex;flex-direction:column;overflow:hidden}.inbox-compose-header{justify-content:space-between;color:var(--text-muted);font-family:var(--font-mono)}.inbox-compose-close{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:var(--text-md);padding:var(--sp-1);border-radius:var(--radius-sm);transition:background var(--t)}.inbox-compose-close:hover{background:var(--hover-bg);color:var(--text)}.inbox-compose-fields{padding:var(--sp-3) var(--sp-4) 0;display:flex;flex-direction:column;gap:var(--sp-2)}.inbox-compose-field{display:flex;align-items:center;gap:var(--sp-2_5);border-bottom:1px solid var(--border);padding-bottom:var(--sp-2)}.inbox-compose-label{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--text-dim);width:44px;flex-shrink:0}.inbox-compose-input{flex:1;background:transparent;border:none;color:var(--text);font-size:var(--text-sm);font-family:var(--font-mono);outline:none;padding:0}.inbox-compose-cc-toggle{background:none;border:none;color:var(--accent);font-size:var(--text-xs);font-family:var(--font-mono);cursor:pointer;padding:0 var(--sp-4) var(--sp-2);text-align:left}.inbox-compose-body{flex:1;margin:var(--sp-3) var(--sp-4);padding:var(--sp-2) var(--sp-2_5);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-sm);font-family:var(--font-mono);resize:vertical;min-height:160px;outline:none;transition:border-color var(--t);box-sizing:border-box;width:calc(100% - 32px)}.inbox-compose-body:focus{border-color:var(--accent)}.inbox-compose-error{margin:0 var(--sp-4) var(--sp-2);padding:var(--sp-1_5) var(--sp-2_5);background:rgba(var(--danger-rgb),.1);border:1px solid rgba(var(--danger-rgb),.3);border-radius:var(--radius-sm);color:var(--danger);font-size:var(--text-xs);font-family:var(--font-mono)}.inbox-compose-footer{display:flex;justify-content:flex-end;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-top:1px solid var(--border);background:var(--bg)}.log-panel{flex-shrink:0;display:flex;flex-direction:column;background:var(--surface);border-top:1px solid var(--border-light);overflow:hidden;min-height:72px;max-height:440px}.log-toolbar{display:flex;align-items:center;padding:var(--sp-1) var(--sp-3);border-bottom:1px solid var(--border);flex-shrink:0;gap:var(--sp-2)}.log-toolbar-label{display:inline}.log-count{font-weight:var(--fw-normal);letter-spacing:0;text-transform:none;color:var(--text-dim)}.log-toolbar-actions{margin-left:auto;display:flex;gap:var(--sp-1)}.log-toolbar-btn{font-size:var(--text-2xs);font-family:var(--font-mono);padding:var(--sp-0_5) var(--sp-2);min-height:unset;color:var(--text-muted)}.log-toolbar-btn:hover{border-color:var(--border-light);color:var(--text)}.log-toolbar-btn.active{border-color:var(--accent-dim);color:var(--accent)}.log-level-select{display:inline-flex;align-items:center;gap:var(--sp-1);padding:0 var(--sp-1_5);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);background:transparent;transition:border-color var(--t),background var(--t),color var(--t)}.log-level-select:hover{border-color:var(--border-light);background:var(--surface-3);color:var(--text)}.log-level-select-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim)}.log-level-select select.field{width:auto;min-height:unset;background:transparent;border:none;font-size:var(--text-2xs);font-family:var(--font-mono);padding:var(--sp-0_5) 0;color:inherit;outline:none}.log-level-select select option{background:var(--surface-2);color:var(--text)}.log-entries{flex:1;overflow-y:auto;padding:var(--sp-1) 0 var(--sp-1_5)}.log-empty{padding:var(--sp-4) var(--sp-3_5);font-size:var(--text-xs);color:var(--text-dim);font-family:var(--font-mono)}.log-entry{display:flex;align-items:baseline;gap:var(--sp-2);padding:var(--sp-0_5) var(--sp-3);font-size:var(--text-xs);font-family:var(--font-mono);line-height:1.7;border-left:2px solid transparent}.log-entry:hover{background:var(--surface-2)}.log-row--copied{background-color:rgba(var(--success-rgb),.15);transition:background-color var(--duration-fast) var(--ease-in-out)}.log-copy-badge{font-size:var(--text-2xs);color:var(--success);margin-left:var(--sp-2);font-weight:var(--fw-semibold);pointer-events:none}.log-api{border-left-color:var(--accent-dim)}.log-error{border-left-color:var(--danger);background:rgba(var(--danger-rgb),.04)}.log-info{border-left-color:transparent}.log-badge{flex-shrink:0;font-size:var(--text-2xs);font-weight:var(--fw-bold);letter-spacing:.08em;padding:var(--sp-px) var(--sp-1_5);border-radius:3px;text-transform:uppercase}.log-badge-api{background:var(--accent-dim);color:var(--accent-hover)}.log-badge-error{background:rgba(var(--danger-rgb),.2);color:var(--danger)}.log-badge-info{background:var(--surface-3);color:var(--text-muted)}.log-badge-git{background:rgba(var(--info-rgb),.15);color:var(--info)}.log-time{color:var(--text-dim);flex-shrink:0}.log-biz{color:var(--accent-dim);font-weight:var(--fw-medium)}.log-model{color:var(--text-dim);font-size:var(--text-2xs);font-family:var(--font-mono)}.log-user{color:var(--text-dim);font-style:italic}.log-tokens{color:var(--text-muted)}.log-dur{color:var(--text-dim);margin-left:auto}.log-msg{color:var(--text-muted)}.log-error-detail{color:var(--text-dim);font-family:var(--font-mono);font-size:var(--text-2xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:400px;flex-shrink:1}.log-conv{color:var(--text-dim);font-family:var(--font-mono);font-size:var(--text-2xs);flex-shrink:0}.log-trim{font-size:var(--text-2xs);color:var(--warning);border:1px solid rgba(var(--warning-rgb),.3);border-radius:3px;padding:0 var(--sp-1);flex-shrink:0}.log-attach{font-size:var(--text-2xs);color:var(--text-dim);flex-shrink:0}.input-action.active{color:var(--accent);background:var(--surface-3)}.marketing-panel{background:var(--bg)}.marketing-panel-breadcrumb{display:flex;align-items:center;gap:var(--sp-2_5);font-size:var(--text-sm);color:var(--text-muted)}.marketing-panel-tool-label{font-family:var(--font-mono);color:var(--text)}.marketing-panel-body{flex:1;overflow:auto;padding:var(--sp-6) var(--sp-8)}.marketing-dashboard{display:flex;flex-direction:column;gap:var(--sp-8);max-width:980px;margin:0 auto}.marketing-section{display:flex;flex-direction:column;gap:var(--sp-3_5)}.marketing-section-title{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.marketing-section-tag{color:var(--text-dim)}.marketing-tile-grid{display:grid;gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.marketing-tile-grid--small{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.marketing-tile-grid--2col{grid-template-columns:repeat(2,1fr)}.marketing-tile{display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-2);padding:var(--sp-5);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;text-align:left;transition:border-color var(--t),background var(--t),transform var(--t)}.marketing-tile:hover{border-color:var(--accent);background:var(--surface-2);transform:translateY(-1px)}.marketing-tile--utility{padding:var(--sp-3_5) var(--sp-4)}.marketing-tile-dot{width:10px;height:10px;border-radius:var(--radius-pill);background:var(--accent)}.marketing-tile-name{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--fw-medium);color:var(--text)}.marketing-tile-blurb{font-size:var(--text-sm);color:var(--text-muted);line-height:1.45}.marketing-empty{padding:var(--sp-5);border-radius:var(--radius-md);background:var(--surface);border:1px dashed var(--border);color:var(--text-muted);font-size:var(--text-base);text-align:center}.marketing-empty--small{padding:var(--sp-2_5);font-size:var(--text-sm)}.marketing-recent-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;background:var(--surface)}.marketing-recent-row{display:grid;grid-template-columns:90px 1fr 100px 90px;gap:var(--sp-3);align-items:center;padding:var(--sp-2_5) var(--sp-3_5);border-bottom:1px solid var(--border);font-size:var(--text-sm);width:100%;text-align:left;cursor:pointer;transition:background var(--t)}.marketing-recent-row:hover{background:var(--surface-2)}.marketing-recent-row:last-child{border-bottom:none}.marketing-recent-tool{font-family:var(--font-mono);color:var(--accent);text-transform:uppercase;font-size:var(--text-2xs);letter-spacing:.08em}.marketing-recent-title{color:var(--text)}.marketing-recent-status{font-family:var(--font-mono);font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.marketing-recent-status[data-status=done]{color:var(--success)}.marketing-recent-status[data-status=error]{color:var(--danger)}.marketing-recent-status[data-status=building]{color:var(--warning)}.marketing-recent-time{color:var(--text-dim);font-size:var(--text-xs);text-align:right}.marketing-tool{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:var(--sp-5)}.marketing-tool-header{display:flex;flex-direction:column;gap:var(--sp-1_5)}.marketing-tool-title{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--fw-medium);color:var(--text);margin:0}.marketing-tool-sub{font-size:var(--text-base);color:var(--text-muted);line-height:1.5;margin:0}.marketing-form{display:flex;flex-direction:column;gap:var(--sp-3_5)}.marketing-field{display:flex;flex-direction:column;gap:var(--sp-1_5);flex:1}.marketing-field-row{display:flex;gap:var(--sp-3_5)}.marketing-field-label{color:var(--text-muted)}.marketing-field-hint{color:var(--text-dim);text-transform:none;letter-spacing:0}.marketing-field--inline{flex-direction:row;align-items:center;gap:var(--sp-2_5);color:var(--text)}.marketing-input{color:var(--text)}.marketing-input--inline{width:auto}.marketing-textarea{resize:vertical;min-height:80px}.marketing-form-actions{display:flex;gap:var(--sp-3);align-items:center}.marketing-form-note{font-size:var(--text-sm);color:var(--text-dim);line-height:1.45}.marketing-primary-btn{cursor:pointer;transition:background var(--t),transform var(--t)}.marketing-primary-btn:hover:not(:disabled){transform:translateY(-1px)}.marketing-primary-btn:disabled{opacity:.5;cursor:not-allowed}.marketing-primary-btn--small{padding:var(--sp-1_5) var(--sp-3)}.marketing-secondary-btn{text-decoration:none}.marketing-secondary-btn:hover{border-color:var(--accent)}.marketing-link-btn{background:transparent;border:none;padding:var(--sp-1) var(--sp-2);color:var(--accent);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;text-decoration:none}.marketing-link-btn:hover{color:var(--accent-hover)}.marketing-link-btn--danger{color:var(--danger)}.marketing-error{padding:var(--sp-2_5) var(--sp-3_5);border-radius:var(--radius-sm);background:rgba(var(--danger-rgb),.1);border:1px solid rgba(var(--danger-rgb),.4);color:var(--danger);font-size:var(--text-base)}.marketing-run-meta{display:flex;gap:var(--sp-2);align-items:center;flex-wrap:wrap;margin-top:var(--sp-1)}.marketing-status-badge[data-status=done]{background:rgba(var(--success-rgb),.18);color:var(--success)}.marketing-status-badge[data-status=error]{background:rgba(var(--danger-rgb),.15);color:var(--danger)}.marketing-status-badge[data-status=building]{background:rgba(var(--warning-rgb),.18);color:var(--warning)}.marketing-meta-tag{letter-spacing:.06em}.marketing-meta-tag[data-status=done]{color:var(--success)}.marketing-meta-tag[data-status=error]{color:var(--danger)}.marketing-meta-tag[data-status=building]{color:var(--warning)}.marketing-meta-time{font-size:var(--text-xs);color:var(--text-dim)}.marketing-run-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3_5)}@media(max-width:768px){.marketing-run-grid{grid-template-columns:1fr}}.marketing-run-pane{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;min-height:280px}.marketing-run-pane--full{grid-column:1 / -1}.marketing-pane-title{padding:var(--sp-2) var(--sp-3_5);border-bottom:1px solid var(--border);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.marketing-event-log{flex:1;overflow:auto;padding:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-1);font-family:var(--font-mono);font-size:var(--text-sm)}.marketing-event{display:grid;grid-template-columns:100px 1fr;gap:var(--sp-2_5)}.marketing-event-type{color:var(--accent);text-transform:uppercase}.marketing-event-msg{color:var(--text);white-space:pre-wrap}.marketing-event[data-type=error] .marketing-event-type{color:var(--danger)}.marketing-event[data-type=warning] .marketing-event-type{color:var(--warning)}.marketing-event[data-type=done] .marketing-event-type{color:var(--success)}.marketing-source-frame{width:100%;flex:1;min-height:540px;border:none;background:var(--iframe-bg)}.marketing-concepts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--sp-3);padding:var(--sp-3)}.marketing-concept-card{display:flex;flex-direction:column;gap:var(--sp-1_5);padding:var(--sp-2_5)}.marketing-concept-thumb{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius-sm);background:var(--surface-2)}.marketing-concept-thumb--empty{display:flex;align-items:center;justify-content:center;color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em}.marketing-concept-name{font-family:var(--font-display);font-size:var(--text-md);color:var(--text)}.marketing-concept-meta{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em}.marketing-iterate-row{display:flex;gap:var(--sp-1_5);margin-top:var(--sp-1)}.marketing-run-actions{display:flex;gap:var(--sp-3);padding:var(--sp-2_5) 0}.marketing-copy-variants{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-3)}.marketing-copy-variant{display:flex;flex-direction:column;gap:var(--sp-1_5);padding:var(--sp-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg)}.marketing-copy-subject{font-family:var(--font-display);font-size:var(--text-lg);color:var(--text)}.marketing-copy-body{margin:0;font-family:var(--font-ui);font-size:var(--text-base);color:var(--text);line-height:1.5;white-space:pre-wrap}.marketing-library-toolbar{display:flex;gap:var(--sp-3);align-items:center}.marketing-library-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;background:var(--surface)}.marketing-library-row{display:grid;grid-template-columns:80px 1fr auto;gap:var(--sp-3_5);align-items:center;padding:var(--sp-3) var(--sp-3_5);border-bottom:1px solid var(--border)}.marketing-library-row:last-child{border-bottom:none}.marketing-library-thumb{width:80px;height:100px;object-fit:cover;border-radius:var(--radius-sm);background:var(--surface-2);cursor:pointer}.marketing-library-thumb--empty{display:flex;align-items:center;justify-content:center;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim)}.marketing-library-info{display:flex;flex-direction:column;gap:var(--sp-1);min-width:0}.marketing-library-title{font-family:var(--font-display);font-size:var(--text-lg);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.marketing-library-meta{display:flex;gap:var(--sp-1_5);flex-wrap:wrap;align-items:center}.marketing-library-actions{display:flex;gap:var(--sp-2);align-items:center}.routines-panel{flex:1;overflow:hidden}.routines-action-btn{color:var(--text-muted);transition:background var(--t),color var(--t),border-color var(--t),opacity var(--t)}.routines-action-btn:hover:not(:disabled){background:var(--surface-2);color:var(--text);border-color:var(--border-light)}.routines-action-btn:disabled{opacity:.5;cursor:not-allowed}.routines-body{display:flex;flex:1;min-height:0;overflow:hidden}.routines-list{width:320px;border-right:1px solid var(--border);overflow-y:auto;flex-shrink:0;background:var(--surface)}.routines-empty{padding:var(--sp-4);color:var(--text-muted);font-size:var(--text-base)}.routines-item{display:block;width:100%;text-align:left;padding:var(--sp-3) var(--sp-3_5);border:none;border-bottom:1px solid var(--border);background:transparent;cursor:pointer;font-family:var(--font-ui);color:var(--text);transition:background var(--t)}.routines-item:hover{background:var(--surface-2)}.routines-item.active{background:var(--accent-dim)}.routines-item-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.routines-item-name{font-weight:var(--fw-medium);font-size:var(--text-base)}.routines-item-status{font-size:var(--text-2xs);padding:var(--sp-0_5) var(--sp-1_5);border-radius:3px;font-family:var(--font-mono);letter-spacing:.04em}.routines-item-status.on{background:rgba(var(--success-rgb),.18);color:var(--success)}.routines-item-status.off{background:rgba(var(--text-dim-rgb),.15);color:var(--text-dim)}.routines-item-meta{font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--sp-1);font-family:var(--font-mono)}.routines-item-biz{margin-left:var(--sp-2)}.routines-item-desc{font-size:var(--text-sm);color:var(--text);margin-top:var(--sp-1);line-height:1.4}.routines-detail{flex:1;overflow-y:auto;padding:var(--sp-6);min-width:0}.routines-detail-empty{color:var(--text-muted);font-size:var(--text-base)}.routines-back-mobile{display:none;align-items:center;gap:var(--sp-1);background:transparent;border:1px solid var(--border);color:var(--text-muted);font-size:var(--text-sm);padding:var(--sp-1_5) var(--sp-2_5);border-radius:var(--radius-sm);cursor:pointer;margin-bottom:var(--sp-3)}.routines-back-mobile:hover{background:var(--surface-2);color:var(--text)}.routines-detail-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3)}.routines-detail-name{margin:0;font-size:var(--text-lg);font-family:var(--font-display);color:var(--text)}.routines-detail-desc{font-size:var(--text-base);color:var(--text-muted);margin-bottom:var(--sp-4);line-height:1.5}.routines-detail-grid{display:grid;grid-template-columns:auto 1fr;gap:var(--sp-1) var(--sp-3);font-size:var(--text-sm);margin-bottom:var(--sp-6)}.routines-detail-key{color:var(--text-muted)}.routines-runs-title{margin:0 0 var(--sp-2);font-size:var(--text-md);font-family:var(--font-display);color:var(--text)}.routines-runs-empty{font-size:var(--text-base);color:var(--text-muted)}.routines-runs{display:flex;flex-direction:column;gap:var(--sp-1_5)}.routines-run{padding:var(--sp-2_5);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.routines-run-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.routines-run-summary{font-size:var(--text-base)}.routines-run-meta{font-size:var(--text-xs);color:var(--text-muted)}.routines-run-error{margin-top:var(--sp-1_5);font-size:var(--text-sm);color:var(--danger)}.routines-run-details{margin-top:var(--sp-1_5)}.routines-run-details summary{cursor:pointer;font-size:var(--text-sm);color:var(--text-muted)}.routines-run-details pre{margin-top:var(--sp-2);font-size:var(--text-sm);white-space:pre-wrap;max-height:300px;overflow:auto;background:var(--surface-2);padding:var(--sp-2_5);border-radius:var(--radius-sm)}@media(max-width:768px){.routines-header{padding:var(--sp-2_5) var(--sp-3);gap:var(--sp-2)}.routines-body{flex-direction:column}.routines-list{width:100%;border-right:none}.routines-list--hidden-mobile,.routines-detail--hidden-mobile{display:none}.routines-detail{padding:var(--sp-4)}.routines-back-mobile{display:inline-flex}.routines-detail-toolbar{gap:var(--sp-2)}.routines-detail-name{font-size:var(--text-lg);flex-basis:100%}}.settings-panel{display:flex;flex-direction:column;height:100%;background:var(--surface);color:var(--text)}.settings-header{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-5) var(--sp-6) var(--sp-3) var(--sp-6);border-bottom:1px solid var(--border)}.settings-title{margin:0;font-family:var(--font-display);font-size:var(--text-3xl);font-weight:500;color:var(--text)}.settings-tabs{display:flex;gap:var(--sp-1);flex-wrap:wrap}.settings-tab{padding:var(--sp-2) var(--sp-4);font-family:var(--font-ui);font-size:var(--text-sm);color:var(--text-dim);border-radius:var(--radius-md);border:1px solid transparent;background:transparent;cursor:pointer;transition:background var(--t),color var(--t),border-color var(--t)}.settings-tab:hover{background:rgba(var(--accent-rgb),var(--opacity-subtle));color:var(--text)}.settings-tab.is-active{background:rgba(var(--accent-rgb),var(--opacity-subtle));color:var(--accent);border-color:var(--accent);font-weight:600}.settings-body{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;padding:var(--sp-5) var(--sp-6)}.settings-nav-trigger{display:none;align-items:center;gap:var(--sp-2);align-self:flex-start}.settings-nav-trigger-label{font-weight:600}.settings-nav-item.is-active{background:rgba(var(--accent-rgb),var(--opacity-subtle));color:var(--accent);border-color:var(--accent);font-weight:600}.user-profile-embedded{display:flex;flex-direction:column;gap:var(--sp-5);max-width:760px}.theme-picker-wrap--inline{position:static;display:block}.theme-swatches--inline{position:static;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--sp-2);padding:0;background:transparent;border:none;box-shadow:none}@media(max-width:768px){.settings-header{padding:var(--sp-4) var(--sp-4) var(--sp-3) var(--sp-4)}.settings-body{padding:var(--sp-4)}.settings-tabs{display:none}.settings-nav-trigger{display:inline-flex}}.settings-footer{display:flex;justify-content:center;padding:var(--sp-3) var(--sp-4);border-top:var(--border-width) solid var(--border);flex-shrink:0}.settings-version{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-dim);letter-spacing:.04em}.workflows-panel{display:flex;flex-direction:column;height:100%;background:var(--surface);color:var(--text)}.workflows-body{flex:1;overflow:hidden;display:flex;flex-direction:column}.workflows-error,.workflows-load-errors{margin:var(--sp-3) var(--sp-6) 0;padding:var(--sp-2) var(--sp-3);background:rgba(var(--danger-rgb),.15);border:1px solid rgba(var(--danger-rgb),.3);border-radius:var(--radius-md);color:var(--text);font-size:var(--text-sm)}.workflows-split{display:grid;grid-template-columns:280px 1fr;flex:1;overflow:hidden}.workflows-list{border-right:1px solid var(--border);overflow-y:auto;padding:var(--sp-2)}.workflows-list ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-1)}.workflows-list-row{width:100%;display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-2) var(--sp-3);text-align:left;cursor:pointer}.workflows-list-name{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--text)}.workflows-list-meta{display:flex;gap:var(--sp-1)}.workflows-trigger-badge{color:var(--accent)}.workflows-disabled-badge{background:rgba(var(--danger-rgb),var(--opacity-subtle));color:var(--danger)}.workflows-detail{overflow-y:auto;padding:var(--sp-5) var(--sp-6);display:flex;flex-direction:column;gap:var(--sp-5)}.workflows-detail-header{display:flex;flex-direction:column;gap:var(--sp-2)}.workflows-detail-title{margin:0;font-family:var(--font-display);font-size:var(--text-3xl);font-weight:500}.workflows-detail-desc{margin:0;color:var(--text-dim);font-size:var(--text-sm)}.workflows-detail-meta{display:grid;grid-template-columns:max-content 1fr;gap:var(--sp-1) var(--sp-3);margin:var(--sp-2) 0 0 0;font-family:var(--font-mono);font-size:var(--text-xs)}.workflows-detail-meta dt{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.workflows-detail-meta dd{margin:0;color:var(--text)}.workflows-actions{display:flex;gap:var(--sp-2);align-items:center;margin-top:var(--sp-2)}.workflows-toggle{display:inline-flex;align-items:center;gap:var(--sp-1);font-family:var(--font-ui);font-size:var(--text-sm);color:var(--text);cursor:pointer}.workflows-action-msg{margin-top:var(--sp-2);font-size:var(--text-xs);color:var(--text-dim)}.workflows-section{display:flex;flex-direction:column;gap:var(--sp-2)}.workflow-node-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-2)}.workflow-node-row{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-3);background:var(--surface-elev);display:flex;flex-direction:column;gap:var(--sp-1)}.workflow-node-main{display:flex;align-items:baseline;gap:var(--sp-2)}.workflow-node-id{font-family:var(--font-ui);font-size:var(--text-md);color:var(--text)}.workflow-node-type{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--accent-dim);text-transform:uppercase;letter-spacing:.04em}.workflow-node-sub{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-dim)}.workflow-node-sub code{background:rgba(var(--accent-rgb),var(--opacity-subtle));padding:0 var(--sp-1);border-radius:var(--radius-sm)}.workflow-dep-chip{margin-right:var(--sp-1)}.workflows-dry-run-list{margin:0;padding-left:var(--sp-5);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text)}.workflows-runs-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-1)}.workflow-run-row{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);border:1px solid var(--border);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--text-xs)}.workflow-run-time{color:var(--text-muted)}.workflow-run-status{padding:0 var(--sp-2);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.04em}.workflow-run-status[data-status=completed]{background:rgba(var(--success-rgb),var(--opacity-subtle));color:var(--success)}.workflow-run-status[data-status=failed]{background:rgba(var(--danger-rgb),var(--opacity-subtle));color:var(--danger)}.workflow-run-status[data-status=running]{background:rgba(var(--accent-rgb),var(--opacity-subtle));color:var(--accent)}.workflow-run-cost{margin-left:auto;color:var(--text)}@media(max-width:768px){.workflows-split{grid-template-columns:1fr}.workflows-list{border-right:0;border-bottom:1px solid var(--border);max-height:200px}.workflows-detail{padding:var(--sp-4)}}.theme-picker-wrap{position:relative;flex-shrink:0;border-top:1px solid var(--border);padding:var(--sp-2_5) var(--sp-3)}.theme-picker-btn{width:100%;gap:var(--sp-1_5);padding:var(--sp-1_5) var(--sp-2);font-size:var(--text-xs);color:var(--text-muted);text-align:left}.theme-picker-btn:hover{border-color:var(--border-light);color:var(--text)}.theme-picker-btn.active{border-color:var(--accent-dim);color:var(--accent)}.theme-swatches{position:absolute;bottom:calc(100% - 2px);left:var(--sp-3);right:var(--sp-3);background:var(--surface-3);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--sp-1_5);display:flex;flex-direction:column;gap:var(--sp-0_5);box-shadow:0 -8px 24px #0006;z-index:var(--z-panel)}.theme-picker-wrap--inline{border-top:none;padding:0}.theme-swatches--inline{position:static;bottom:auto;left:auto;right:auto;background:transparent;border:none;box-shadow:none;padding:0;z-index:auto}.theme-swatch-btn{width:100%;gap:var(--sp-2);padding:var(--sp-1_5) var(--sp-2);font-size:var(--text-xs);color:var(--text-muted);border-color:transparent;text-align:left}.theme-swatch-btn:hover{background:var(--surface-2);color:var(--text);border-color:var(--border)}.theme-swatch-btn.active{color:var(--text)}.theme-swatch-dot{width:12px;height:12px;border-radius:var(--radius-pill);flex-shrink:0;border:1px solid var(--border)}.theme-swatch-label{flex:1}.theme-swatch-check{margin-left:auto;color:var(--accent);display:flex;align-items:center}.thinkback-modal{width:min(900px,96vw);max-height:88vh;display:flex;flex-direction:column}.thinkback-modal .fm-modal-body{display:flex;flex-direction:column;padding:0;overflow:hidden;flex:1;min-height:0}.thinkback-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-2_5) var(--sp-4);border-bottom:1px solid var(--border);background:var(--surface-2);flex-wrap:wrap}.thinkback-header-meta{display:flex;gap:var(--sp-1_5);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);flex-wrap:wrap}.thinkback-controls{display:flex;align-items:center;gap:var(--sp-1)}.thinkback-speed-label{font-size:var(--text-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-dim);margin-right:var(--sp-1)}.thinkback-speed{background:transparent;border:1px solid var(--border);color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-xs);padding:var(--sp-1) var(--sp-2);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--t),color var(--t),border-color var(--t)}.thinkback-speed:hover{color:var(--text);border-color:var(--accent-dim)}.thinkback-speed--active{color:var(--accent);border-color:var(--accent-dim);background:var(--surface-3)}.thinkback-body{flex:1;overflow-y:auto;padding:var(--sp-4)}.thinkback-empty{text-align:center;color:var(--text-muted);padding:var(--sp-8) var(--sp-3);font-style:italic;font-size:var(--text-base)}.thinkback-error{color:var(--danger);border:1px solid var(--danger);border-radius:var(--radius-sm);padding:var(--sp-2) var(--sp-3);margin-bottom:var(--sp-3);font-size:var(--text-sm)}.thinkback-footer{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2_5) var(--sp-4);border-top:1px solid var(--border);background:var(--surface-2);flex-wrap:wrap}.thinkback-share{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;font-size:var(--text-xs);color:var(--text-muted)}.thinkback-share-label{font-family:var(--font-mono)}.thinkback-share-url{font-family:var(--font-mono);background:var(--surface-3);padding:var(--sp-1) var(--sp-2);border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text);font-size:var(--text-xs);max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.thinkback-share-error{color:var(--danger);font-size:var(--text-xs)}@media(max-width:768px){.thinkback-modal{width:96vw;max-height:92vh}.thinkback-header,.thinkback-footer{padding:var(--sp-2) var(--sp-3)}.thinkback-body{padding:var(--sp-3)}.thinkback-share-url{max-width:100%}}.user-mgmt-wrap{flex-shrink:0;border-top:1px solid var(--border)}.user-mgmt-header{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-2) var(--sp-3_5);font-size:var(--text-xs);font-weight:var(--fw-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);cursor:pointer;transition:color var(--t);-webkit-user-select:none;user-select:none}.user-mgmt-header:hover{color:var(--text-muted)}.user-mgmt-body{padding:var(--sp-1) var(--sp-2_5) var(--sp-2_5);display:flex;flex-direction:column;gap:var(--sp-1_5)}.user-mgmt-error{font-size:var(--text-xs);color:var(--danger);padding:var(--sp-1) var(--sp-1)}.user-mgmt-loading{font-size:var(--text-xs);color:var(--text-dim);padding:var(--sp-1);font-family:var(--font-mono)}.user-row{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--sp-2) var(--sp-2_5);display:flex;flex-direction:column;gap:var(--sp-1);transition:border-color var(--t)}.user-row:hover{border-color:var(--border-light)}.user-row--inactive{opacity:.5}.user-row-top{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-1_5)}.user-name{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-you{font-weight:var(--fw-normal);color:var(--text-dim)}.user-row-meta{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--text-2xs);color:var(--text-dim)}.user-biz{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-2fa-on{color:var(--success)}.user-2fa-off{color:var(--text-dim)}.user-row-actions{display:flex;align-items:center;gap:var(--sp-1);flex-wrap:wrap}.role-badge{flex-shrink:0}.role-badge--admin{background:rgba(var(--accent-rgb),.15);color:var(--accent)}.role-badge--operator{background:var(--surface-3);color:var(--text-muted)}.role-badge--viewer{background:var(--surface-3);color:var(--text-dim)}.user-role-select{color:var(--text-muted);font-size:var(--text-2xs);padding:var(--sp-0_5) var(--sp-1);min-height:unset;width:auto;cursor:pointer}.user-action-btn{color:var(--text-muted);font-size:var(--text-2xs);padding:var(--sp-0_5) var(--sp-2);min-height:unset;white-space:nowrap}.user-action-btn:hover{border-color:var(--border-light);color:var(--text)}.user-action-btn--danger:hover{border-color:var(--danger);color:var(--danger)}.user-action-btn--success:hover{border-color:var(--success);color:var(--success)}.user-action-btn--primary{background:var(--accent-dim);border-color:var(--accent-dim);color:var(--accent)}.user-action-btn--primary:hover{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.user-add-form{display:flex;flex-direction:column;gap:var(--sp-1_5);padding:var(--sp-2);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm)}.user-add-input{font-size:var(--text-xs);box-sizing:border-box}.user-biz-select{display:flex;flex-direction:column;gap:var(--sp-1)}.user-biz-label{display:flex;align-items:center;gap:var(--sp-1_5);font-size:var(--text-xs);color:var(--text-muted);cursor:pointer}.user-add-actions{display:flex;gap:var(--sp-1)}.user-add-btn{width:100%;border:1px dashed var(--border);color:var(--text-dim);font-size:var(--text-xs);text-align:center}.user-add-btn:hover{border-color:var(--accent-dim);color:var(--accent)}.modal-card{border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:var(--sp-7);max-width:400px;width:100%;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:var(--sp-3_5)}.modal-title{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--text)}.modal-body{font-size:var(--text-base);color:var(--text-muted);line-height:1.5;margin:0}.modal-password-wrap{display:flex;align-items:center;gap:var(--sp-2);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--sp-2_5) var(--sp-3)}.modal-password{font-family:var(--font-mono);font-size:var(--text-md);color:var(--accent);flex:1;word-break:break-all}.ctx-settings-wrap{position:relative}.ctx-settings-panel{position:absolute;top:calc(100% + var(--sp-1_5));right:0;z-index:var(--z-overlay);width:280px;max-width:calc(100vw - var(--sp-4));background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-3_5);display:flex;flex-direction:column;gap:var(--sp-3_5);box-shadow:0 8px 24px #00000073}.ctx-settings-title{font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--fw-semibold);letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted)}.ctx-settings-field{display:flex;flex-direction:column;gap:var(--sp-1)}.ctx-settings-label{font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--text);display:flex;justify-content:space-between;align-items:center}.ctx-settings-value{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--accent)}.ctx-settings-hint{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--text-muted)}.ctx-model-btns{display:flex;gap:var(--sp-1)}.ctx-model-btn{flex:1;padding:var(--sp-1) 0;color:var(--text-muted);min-height:unset}.ctx-model-btn:hover{background:var(--surface);color:var(--text)}.ctx-model-btn.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.ctx-slider{-webkit-appearance:none;appearance:none;width:100%;height:3px;border-radius:2px;background:var(--surface-3);outline:none;cursor:pointer}.ctx-slider::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:var(--radius-pill);background:var(--accent);cursor:pointer}.ctx-slider::-moz-range-thumb{width:12px;height:12px;border-radius:var(--radius-pill);background:var(--accent);border:none;cursor:pointer}.ctx-select{cursor:pointer}.ctx-settings-reset{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--text-muted);background:none;border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--sp-1) var(--sp-2_5);cursor:pointer;align-self:flex-start;transition:color var(--duration-exit),border-color var(--duration-exit)}.ctx-settings-reset:hover{color:var(--text);border-color:var(--border-light)}.ctx-warn-banner{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-2_5);background:color-mix(in srgb,var(--danger) 12%,var(--surface-2));border:1px solid color-mix(in srgb,var(--danger) 35%,transparent);border-radius:var(--radius-sm);margin-bottom:var(--sp-1);color:var(--danger)}.ctx-warn-text{flex:1;font-family:var(--font-ui);font-size:var(--text-sm);color:var(--text-muted)}.ctx-warn-text strong{color:var(--text)}.ctx-warn-text kbd{font-family:var(--font-mono);font-size:var(--text-2xs);background:var(--surface-3);border:1px solid var(--border-light);border-radius:3px;padding:var(--sp-px) var(--sp-1);color:var(--text-muted)}.ctx-warn-confirm{font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--danger);background:color-mix(in srgb,var(--danger) 15%,transparent);border:1px solid color-mix(in srgb,var(--danger) 40%,transparent);border-radius:var(--radius-sm);padding:var(--sp-1) var(--sp-2);cursor:pointer;white-space:nowrap;transition:background var(--duration-exit)}.ctx-warn-confirm:hover{background:color-mix(in srgb,var(--danger) 25%,transparent)}.ctx-warn-dismiss{font-size:var(--text-base);color:var(--text-muted);background:none;border:none;cursor:pointer;padding:0 var(--sp-0_5);line-height:1;transition:color var(--duration-exit)}.ctx-warn-dismiss:hover{color:var(--text)}.header-action-btn.active{color:var(--accent);background:var(--accent-dim)}.header-avatar-btn{gap:var(--sp-1)}.header-avatar{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:var(--radius-pill);background:var(--accent-dim);color:var(--accent);font-size:var(--text-xs);font-weight:var(--fw-semibold);flex-shrink:0}.usage-badge{display:inline-flex;align-items:center;gap:var(--sp-1);font-size:var(--text-xs);color:var(--text-muted);margin-left:auto}.usage-badge--danger{color:var(--danger)}.usage-badge-sep{opacity:.4}.usage-badge-period{font-variant-numeric:tabular-nums}.user-profile-overlay{position:fixed;inset:0;background:#00000080;z-index:calc(var(--z-overlay) - 1);display:flex;justify-content:flex-end}.user-profile-panel{position:relative;width:340px;height:100dvh;background:var(--surface);border-left:1px solid var(--border);box-shadow:-4px 0 20px #00000059;z-index:var(--z-overlay);display:flex;flex-direction:column;overflow-y:auto}.user-profile-header{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-4) var(--sp-4) var(--sp-3);border-bottom:1px solid var(--border);flex-shrink:0}.user-profile-title{display:flex;align-items:center;gap:var(--sp-2_5)}.user-profile-avatar{width:36px;height:36px;border-radius:var(--radius-pill);background:var(--accent-dim);color:var(--accent);font-size:var(--text-lg);font-weight:var(--fw-semibold);display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-profile-name{font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text)}.user-profile-role{font-size:var(--text-xs);color:var(--text-muted);text-transform:capitalize}.user-profile-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:var(--text-lg);padding:var(--sp-1);border-radius:var(--radius-sm);transition:color var(--duration-exit)}.user-profile-close:hover{color:var(--text)}.user-profile-footer{margin-top:auto;padding:var(--sp-4);border-top:1px solid var(--border);flex-shrink:0;background:var(--surface)}.user-profile-logout-btn{width:100%;color:var(--text-muted)}.user-profile-logout-btn:hover{background:var(--surface-2);color:var(--danger);border-color:var(--danger)}.profile-section{padding:var(--sp-4);border-bottom:1px solid var(--border)}.profile-section-title{font-size:var(--text-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:var(--sp-2)}.profile-section-hint{font-size:var(--text-xs);color:var(--text-muted);margin-bottom:var(--sp-2);line-height:1.5}.usage-summary{font-size:var(--text-xl);font-weight:var(--fw-semibold);color:var(--text);margin-bottom:var(--sp-1_5)}.usage-cost--danger{color:var(--danger)}.usage-limit{font-size:var(--text-md);font-weight:var(--fw-normal);color:var(--text-muted)}.usage-progress-wrap{height:4px;background:var(--bg);border-radius:2px;overflow:hidden}.usage-progress{height:100%;background:var(--accent);border-radius:2px;transition:width var(--duration-slow) var(--ease-in-out)}.usage-progress--danger{background:var(--danger)}.custom-instructions-textarea{width:100%;box-sizing:border-box;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-base);font-family:inherit;padding:var(--sp-2) var(--sp-2_5);resize:vertical;min-height:80px;line-height:1.5;transition:border-color var(--duration-exit)}.custom-instructions-textarea:focus{outline:none;border-color:var(--accent)}.custom-instructions-footer{display:flex;align-items:center;gap:var(--sp-2);margin-top:var(--sp-1_5)}.custom-instructions-count{font-size:var(--text-xs);color:var(--text-muted);margin-right:auto}.profile-save-btn{padding:var(--sp-1) var(--sp-3)}.profile-save-btn:disabled{opacity:.4;cursor:default}.profile-save-msg{font-size:var(--text-xs);color:var(--accent)}.ctx-settings-actions{display:flex;gap:var(--sp-1_5);flex-wrap:wrap;margin-top:var(--sp-0_5)}.ctx-settings-save-default{font-size:var(--text-xs);padding:var(--sp-1) var(--sp-2);background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-exit);white-space:nowrap}.ctx-settings-save-default:hover{background:color-mix(in srgb,var(--accent) 20%,transparent)}.ctx-settings-save-default:disabled{opacity:.5;cursor:default}.ctx-settings-load-default{font-size:var(--text-xs);padding:var(--sp-1) var(--sp-2);background:none;color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--duration-exit),border-color var(--duration-exit);white-space:nowrap;width:100%;margin-top:var(--sp-1);text-align:left}.ctx-settings-load-default:hover{color:var(--text);border-color:var(--text-muted)}.user-budget-badge,.user-usage-badge{color:var(--text-muted);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--duration-exit)}.user-budget-badge:hover{border-color:var(--accent);color:var(--accent)}.user-usage-badge{cursor:default}.budget-editor{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-1_5);padding:var(--sp-1_5) 0 var(--sp-0_5);font-size:var(--text-sm)}.budget-editor-label{display:flex;align-items:center;gap:var(--sp-1);color:var(--text-muted);cursor:pointer}.budget-editor-amount{width:80px;padding:var(--sp-1) var(--sp-2);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-sm)}.budget-editor-amount:focus{outline:none;border-color:var(--accent)}.budget-editor-period{padding:var(--sp-1) var(--sp-1_5);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-sm)}.ctx-settings-reset{flex:1}.sidebar-pinned-section{border-bottom:1px solid var(--border);margin-bottom:var(--sp-1);padding-bottom:var(--sp-1)}.history-group-label--pinned{color:var(--accent)}.history-item-row{display:flex;align-items:flex-start;gap:var(--sp-1)}.history-item-row .history-item-title{flex:1;min-width:0}.history-item-edit{flex:1;background:var(--surface-2);border:1px solid var(--accent);border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-sm);font-family:inherit;padding:var(--sp-0_5) var(--sp-1);outline:none;min-width:0}.conv-pin-btn{flex-shrink:0;color:var(--text-dim);padding:var(--sp-px) var(--sp-1);min-height:unset;min-width:unset;opacity:0;pointer-events:none;transition:opacity var(--duration-exit),color var(--duration-exit);line-height:1}.history-item:hover .conv-pin-btn,.conv-pin-btn--active,.history-item.active .conv-pin-btn{opacity:1;pointer-events:auto}.conv-pin-btn--active{color:var(--accent)}.conv-pin-btn:hover{color:var(--accent);background:var(--accent-dim)}.history-item--pinned{background:color-mix(in srgb,var(--accent) 5%,transparent)}.conv-tags{display:flex;flex-wrap:wrap;gap:var(--sp-1);margin-top:var(--sp-1)}.tag-chip{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);color:var(--text-muted);cursor:pointer;transition:border-color var(--duration-exit),color var(--duration-exit),background var(--duration-exit);white-space:nowrap;line-height:1.4}.tag-chip:hover{border-color:var(--accent);color:var(--accent)}.tag-chip--active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.tag-chip--inline{cursor:default}.tag-chip--inline:hover{border-color:var(--border);color:var(--text-muted)}.tag-chip--more{cursor:default;opacity:.6}.tag-filter-bar{display:flex;flex-wrap:wrap;gap:var(--sp-1);padding:var(--sp-1_5) var(--sp-3);border-bottom:1px solid var(--border)}.tag-filter-clear{background:none;border:none;color:var(--text-muted);font-size:var(--text-2xs);cursor:pointer;padding:var(--sp-px) var(--sp-1);border-radius:var(--radius-sm);transition:color var(--duration-exit)}.tag-filter-clear:hover{color:var(--danger)}.templates-dropdown{position:absolute;bottom:calc(100% + var(--sp-1));left:0;min-width:220px;max-width:320px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:0 4px 16px #0000004d;z-index:var(--z-panel);overflow:hidden}.template-item{display:flex;flex-direction:column;gap:var(--sp-0_5);width:100%;text-align:left;padding:var(--sp-2) var(--sp-3);background:none;border:none;border-bottom:1px solid var(--border-light);cursor:pointer;transition:background var(--duration-fast)}.template-item:last-child{border-bottom:none}.template-item:hover{background:var(--surface-2)}.template-item-name{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text)}.template-item-preview{font-size:var(--text-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-template-row{display:flex;align-items:flex-start;gap:var(--sp-2);padding:var(--sp-1_5) 0;border-bottom:1px solid var(--border-light)}.profile-template-row:last-of-type{border-bottom:none}.profile-template-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--sp-0_5)}.profile-template-name{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text)}.profile-template-preview{font-size:var(--text-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-template-delete{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:var(--text-base);padding:var(--sp-0_5) var(--sp-1);border-radius:var(--radius-sm);flex-shrink:0;transition:color var(--duration-fast)}.profile-template-delete:hover{color:var(--danger)}.profile-template-add{margin-top:var(--sp-2);display:flex;flex-direction:column;gap:var(--sp-1_5)}.profile-template-name-input{font-size:var(--text-sm)}.biz-instruction-row{margin-bottom:var(--sp-2_5)}.biz-instruction-label{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:capitalize;margin-bottom:var(--sp-1)}.terminal-view{background:#0a0a0a}.terminal-header-meta{font-size:var(--text-xs);color:var(--text-dim);font-family:var(--font-mono)}.terminal-xterm{flex:1;min-height:0;padding:var(--sp-2);background:#0a0a0a}.terminal-locked-card{max-width:var(--container-sm, 360px);width:100%;margin:var(--sp-8) auto 0;display:flex;flex-direction:column;gap:var(--sp-3)}.terminal-locked-card form{display:flex;flex-direction:column;gap:var(--sp-2_5)}.terminal-error{padding:var(--sp-2_5) var(--sp-3);background:#dc323214;border:1px solid rgba(220,50,50,.32);color:#d44;border-radius:var(--radius-md);font-size:var(--text-sm)}.dashboard-panel{position:relative;isolation:isolate;flex:1;display:flex;flex-direction:column;overflow-y:auto;background:var(--bg);padding:var(--sp-6);gap:var(--sp-6)}.dashboard-grid{display:grid;grid-template-columns:repeat(var(--dash-cols, 3),minmax(0,1fr));gap:var(--sp-4);align-items:start;flex-shrink:0;min-width:0}.dashboard-cell{min-width:0}.dashboard-cell--wide{grid-column:span 2}.kpi-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--sp-3);min-width:0}.action-items,.quick-ask{display:flex;flex-direction:column;gap:var(--sp-2);min-width:0}.action-items .empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-2)}.action-items-list,.quick-ask-chips{display:flex;flex-direction:column;gap:var(--sp-2)}.quick-ask-chip{width:100%;justify-content:flex-start}.get-started-card{display:flex;flex-direction:column;gap:var(--sp-2);min-width:0}.get-started-hint{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.get-started-card .quick-actions,.get-started-card .quick-actions-grid,.get-started-card .empty-suggestions{align-items:flex-start;justify-content:flex-start;max-width:none}.view-switcher{display:flex;align-items:center;gap:var(--sp-1);flex-wrap:wrap}.view-switcher-tabs{display:flex;gap:var(--sp-1)}.view-switcher-tab{color:var(--text-muted)}.view-switcher-tab.is-active{color:var(--text);background:rgba(var(--accent-rgb),var(--opacity-subtle))}.dashboard-edit-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap;padding:var(--sp-3) var(--sp-4);border:1px solid var(--border);border-radius:var(--radius-md);background:rgba(var(--accent-rgb),var(--opacity-subtle));flex-shrink:0}.dashboard-edit-hint{font-size:var(--text-sm);color:var(--text-dim)}.dash-edit-controls{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-bottom:var(--sp-2);padding-bottom:var(--sp-2);border-bottom:1px solid var(--border)}.dash-edit-label{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-edit-buttons{display:flex;gap:var(--sp-1);flex-shrink:0}.dashboard-cell--hidden{opacity:var(--opacity-muted, .55)}.dashboard-module-placeholder{display:flex;align-items:center;justify-content:center;min-height:var(--sp-12);font-family:var(--font-ui);font-size:var(--text-sm);color:var(--text-muted)}.summary-module{display:flex;flex-direction:column;gap:var(--sp-2);min-width:0}.summary-module-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.summary-module-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-1);min-width:0}.summary-module-row,.summary-module-row-main{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);min-width:0}.summary-module-name{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.summary-module-meta{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);flex-shrink:0}.summary-module-cta{align-self:flex-start}.portfolio{display:flex;flex-direction:column;gap:var(--sp-6);min-width:0}.portfolio-section{display:flex;flex-direction:column;gap:var(--sp-3);min-width:0}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--sp-4);min-width:0}.portfolio-biz-card{display:flex;flex-direction:column;gap:var(--sp-3);text-align:left;cursor:pointer;transition:border-color var(--t),box-shadow var(--t)}.portfolio-biz-card:hover{border-color:var(--accent);box-shadow:0 2px 12px rgba(var(--accent-rgb),.12)}.portfolio-biz-head{display:flex;align-items:center;gap:var(--sp-2);color:var(--accent)}.portfolio-biz-name{font-family:var(--font-display);font-size:var(--text-lg);color:var(--text);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portfolio-biz-flag{flex-shrink:0;color:var(--warning)}.portfolio-biz-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-2);margin:0}.portfolio-biz-stats div{display:flex;flex-direction:column;gap:2px;min-width:0}.portfolio-biz-stats dt{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.portfolio-biz-stats dd{margin:0;font-family:var(--font-mono);font-size:var(--text-md);color:var(--text)}.portfolio-needs-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-2);min-width:0}.portfolio-needs-row{display:flex;align-items:center;gap:var(--sp-3);width:100%;text-align:left;cursor:pointer;min-width:0}.portfolio-needs-biz{flex-shrink:0}.portfolio-needs-body{display:flex;flex-direction:column;gap:2px;min-width:0}.portfolio-needs-title{font-family:var(--font-ui);font-size:var(--text-base);font-weight:500;color:var(--text)}.portfolio-needs-detail{font-size:var(--text-xs);color:var(--text-muted)}.dashboard-card{display:flex;gap:var(--sp-3);align-items:flex-start}.dashboard-card-icon{color:var(--accent);flex-shrink:0;margin-top:2px}.dashboard-card-body{min-width:0}.dashboard-card-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--sp-1)}.dashboard-card-value{font-size:var(--text-xl);font-weight:600;color:var(--text);line-height:1.2}.dashboard-card-value--loading,.dashboard-card-value--error{color:var(--text-dim)}.dashboard-card-sub{margin-top:var(--sp-1)}.dashboard-badge{padding:2px var(--sp-1_5)}.dashboard-badge--warn{color:var(--warning)}.dashboard-badge--danger{color:var(--danger)}.dashboard-business-switcher{font-size:var(--text-sm);padding-top:var(--sp-1);padding-bottom:var(--sp-1);min-width:var(--width-switcher-min);max-width:var(--width-switcher-max)}.intelligence-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-3) var(--sp-4);display:flex;align-items:center;gap:var(--sp-3)}.intelligence-item-icon{color:var(--accent);flex-shrink:0}.intelligence-item-body{flex:1;min-width:0}.intelligence-item-title{font-family:var(--font-ui);font-size:var(--text-base);font-weight:500;color:var(--text)}.intelligence-item-detail{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--text-muted);margin-top:2px}.intelligence-item-cta{flex-shrink:0}.empty-state--sm{padding:var(--sp-4)}.cost-module{display:flex;flex-direction:column;gap:var(--sp-2);min-width:0}.cost-module-note{font-size:var(--text-sm);color:var(--text-muted)}.cost-module-grid{display:grid;grid-template-columns:auto 1fr 1fr;gap:var(--sp-1) var(--sp-3);font-family:var(--font-mono);font-size:var(--text-xs);align-items:baseline}.cost-module-col-head{font-size:var(--text-2xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);text-align:right}.cost-module-row-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.cost-module-cell{text-align:right;color:var(--text)}.cost-module-cell--cost{font-weight:var(--fw-semibold)}.recent-conversations{display:flex;flex-direction:column;gap:var(--sp-2);min-width:0;overflow:hidden}.recent-conversations-header{display:flex;align-items:center;gap:var(--sp-2)}.recent-conversations-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-1);max-width:100%;min-width:0}.recent-conversations-row{display:flex;width:100%;min-width:0;align-items:center;justify-content:space-between;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);text-align:left;cursor:pointer}.recent-conversations-title{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.recent-conversations-meta{display:flex;gap:var(--sp-2);align-items:center;font-size:var(--text-xs);color:var(--text-muted);flex-shrink:0}.recent-conversations-biz{font-family:var(--font-mono);color:var(--accent-dim)}.recent-conversations-time{font-family:var(--font-mono)}.recent-conversations-empty{color:var(--text-muted)}.pending-items-card{display:flex;flex-direction:column;gap:var(--sp-2);text-align:left;cursor:pointer;min-width:0;overflow:hidden}.pending-items-card--empty{cursor:default}.pending-items-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.pending-items-badge{min-width:24px;height:24px;padding:0 var(--sp-2)}.pending-items-preview{display:flex;flex-direction:column;min-width:0;gap:2px;font-size:var(--text-xs)}.pending-items-tool{font-family:var(--font-mono);color:var(--accent-dim)}.pending-items-path{font-family:var(--font-mono);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.pending-items-empty{color:var(--text-muted)}@media(max-width:1024px){.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.dashboard-panel{padding:var(--sp-4)}.dashboard-grid{grid-template-columns:1fr}.dashboard-cell--wide{grid-column:auto}.dash-edit-width{display:none}.dashboard-panel .ph-root{flex-wrap:wrap;row-gap:var(--sp-3)}.dashboard-panel .ph-title{order:1}.dashboard-panel .ph-actions{order:2}.dashboard-business-switcher{order:3;flex-basis:100%;min-width:0;max-width:100%}.dashboard-panel .view-switcher{order:4;flex-basis:100%;padding-top:var(--sp-3);border-top:1px solid var(--border)}.dashboard-panel .view-switcher-tabs{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}}.overview{padding:var(--sp-6) var(--sp-6) var(--sp-10)}.overview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--sp-4);margin-top:var(--sp-4)}.overview-card{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);padding:var(--sp-5);text-align:center;transition:border-color var(--t),box-shadow var(--t)}.overview-card:hover{border-color:var(--accent);box-shadow:0 2px 12px rgba(var(--accent-rgb),.12)}.overview-card-icon{color:var(--text-muted)}.overview-card-name{font-size:var(--text-md);font-weight:600;color:var(--text)}.overview-empty{padding:var(--sp-10)}.commerce-panel .panel-body{display:flex;flex-direction:column;gap:var(--sp-4);padding:var(--sp-6);overflow-y:auto}.commerce-metrics{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--sp-4);min-width:0}.commerce-metric{min-width:0}.commerce-metric-sub{font-size:var(--text-xs);color:var(--text-muted)}.commerce-top{display:flex;flex-direction:column;gap:var(--sp-2);min-width:0}.commerce-top-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-1);min-width:0}.commerce-top-row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);min-width:0}.commerce-top-name{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.commerce-top-qty{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);flex-shrink:0}.commerce-loading,.commerce-error{flex:1}[data-theme=freezecap] .chat-area{background:var(--fc-content-bg)}[data-theme=freezecap] .chat-header{background:var(--fc-content-bg);color:var(--fc-on-content);border-bottom-color:#d6dce3}[data-theme=freezecap] .chat-header-title{color:var(--fc-on-content)}[data-theme=freezecap] .header-action-btn{color:var(--fc-on-content);border-color:#d6dce3}[data-theme=freezecap] .header-action-btn:hover{background:var(--fc-content-bg-2);border-color:var(--accent)}[data-theme=freezecap] .sidebar-toggle{color:var(--fc-on-content)}[data-theme=freezecap] .sidebar-toggle:hover{background:var(--fc-content-bg-2);color:var(--fc-on-content)}[data-theme=freezecap] .message.assistant .msg-role{color:var(--accent)}[data-theme=freezecap] .message.assistant .msg-body{color:var(--fc-on-content);border-left-color:#d6dce3}[data-theme=freezecap] .message.assistant.streaming .msg-body{border-left-color:var(--accent)}[data-theme=freezecap] .message.assistant .msg-body strong{color:var(--accent)}[data-theme=freezecap] .message.assistant .msg-body code{background:var(--fc-content-bg-2);border-color:#d6dce3;color:var(--accent)}[data-theme=freezecap] .message.assistant .msg-body pre{background:var(--fc-content-bg-2);border-color:#d6dce3}[data-theme=freezecap] .message.assistant .msg-body pre code{color:var(--fc-on-content)}[data-theme=freezecap] .message.assistant .msg-body blockquote{border-left-color:var(--accent);color:#4a5870}[data-theme=freezecap] .message.assistant .msg-body th{border-bottom-color:var(--accent);color:var(--accent)}[data-theme=freezecap] .message.assistant .msg-body td{border-bottom-color:#e6ebf0;color:var(--fc-on-content)}[data-theme=freezecap] .message.assistant .msg-body hr{border-top-color:#d6dce3}[data-theme=freezecap] .message.user .msg-body{background:var(--surface);border-color:var(--border);color:var(--text)}[data-theme=freezecap] .msg-username{color:var(--accent)}[data-theme=freezecap] .input-bar{background:var(--fc-content-bg-2);border-color:#d6dce3;color:var(--fc-on-content)}[data-theme=freezecap] .input-bar:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #1374bf1a}[data-theme=freezecap] .input-textarea{color:var(--fc-on-content)}[data-theme=freezecap] .input-textarea::placeholder{color:#6b7c93}[data-theme=freezecap] .input-action{color:var(--fc-on-content)}[data-theme=freezecap] .input-action:hover{background:#e9eef4;color:var(--fc-on-content)}[data-theme=freezecap] .input-actions-row{border-top-color:#d6dce3}[data-theme=freezecap] .message-list-fade{background:linear-gradient(to bottom,transparent 0%,var(--fc-content-bg) 60%,var(--fc-content-bg) 100%)}[data-theme=freezecap] .input-hint{color:#6b7c93}[data-theme=freezecap] .input-send-btn{background:var(--accent-2);color:var(--on-accent-2)}[data-theme=freezecap] .input-send-btn:hover:not(:disabled){background:#ffe04d;color:var(--on-accent-2)}[data-theme=freezecap] .input-biz-selector{border-color:#d6dce3;color:var(--fc-on-content)}[data-theme=freezecap] .input-biz-selector:hover{background:#e9eef4;border-color:var(--accent);color:var(--fc-on-content)}[data-theme=freezecap] .marketing-primary-btn{background:var(--accent-2);color:var(--on-accent-2)}[data-theme=freezecap] .marketing-primary-btn:hover:not(:disabled){background:#ffe04d;color:var(--on-accent-2)}[data-theme=freezecap] .empty-wordmark{color:var(--accent)}[data-theme=freezecap] .empty-tagline{color:var(--fc-on-content)}[data-theme=freezecap] .suggestion-chip{background:var(--fc-content-bg);border-color:#d6dce3;color:var(--fc-on-content)}[data-theme=freezecap] .suggestion-chip:hover{background:var(--fc-content-bg-2);border-color:var(--accent-2);color:var(--accent)}.activity-monitor{display:flex;align-items:center;gap:var(--sp-2);height:var(--activity-monitor-height);padding:0 var(--sp-3);background:var(--surface-2);border-left:3px solid var(--accent);border-top:1px solid var(--border);border-bottom:1px solid var(--border);font-family:var(--font-ui);font-size:var(--text-xs);color:var(--text-dim);overflow:hidden;flex-shrink:0}.activity-monitor--stalled{border-left-color:var(--warning);color:var(--warning)}.am-spinner{flex-shrink:0;display:inline-block;width:14px;height:14px;border:2px solid rgba(var(--accent-rgb),.25);border-top-color:var(--accent);border-radius:50%;animation:am-spin .8s linear infinite}.activity-monitor--stalled .am-spinner{border-color:rgba(var(--warning-rgb),.25);border-top-color:var(--warning)}@keyframes am-spin{to{transform:rotate(360deg)}}.am-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.am-timer{flex-shrink:0;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);letter-spacing:.02em;padding-left:var(--sp-2)}.am-cancel{flex-shrink:0;font-family:var(--font-ui);font-size:var(--text-xs);color:var(--danger);padding:0 var(--sp-2);background:none;border:none;cursor:pointer;opacity:.85;transition:opacity var(--t)}.am-cancel:hover{opacity:1}.am-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:22px;height:22px;font-size:var(--text-xs);color:var(--text-muted);background:none;border:none;cursor:pointer;border-radius:var(--radius-sm);transition:color var(--t),background var(--t)}.am-close:hover{color:var(--text);background:var(--hover)}.ph-title{flex:1;font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--text);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.ph-icon{font-size:var(--text-xl);color:var(--text-muted);flex-shrink:0;line-height:1}.ph-back-icon{font-size:var(--text-xl);line-height:1}.ph-actions{display:flex;align-items:center;gap:var(--sp-1);flex-shrink:0;margin-left:auto}.ph-root{min-width:0}.input-action--context.active{color:var(--text);background:var(--surface-3)}.input-action--has-overrides,.input-action--has-overrides:hover{color:var(--accent)}.input-action-context-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-left:1px}.input-send-btn--custom-context{position:relative;box-shadow:0 0 0 2px var(--accent-dim)}.input-send-btn-dot{position:absolute;top:-2px;right:-2px;width:7px;height:7px;border-radius:50%;background:var(--accent);border:1.5px solid var(--surface-2)}.ctx-panel{position:absolute;bottom:calc(100% + 8px);left:0;right:0;max-width:740px;margin:0 auto;background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:0 16px 36px #00000080;display:flex;flex-direction:column;max-height:60vh;overflow:hidden;z-index:var(--z-dropdown);font-family:var(--font-ui)}.ctx-panel-header{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--border);flex-shrink:0}.ctx-panel-title{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text);flex:1}.ctx-panel-token-total{font-size:11px;font-family:var(--font-mono);color:var(--accent);display:flex;align-items:center;gap:6px}.ctx-panel-token-pct{font-size:10px;color:var(--text-dim);background:var(--surface-3);padding:1px 5px;border-radius:3px}.ctx-panel-token-pct.warn{color:#d4a464}.ctx-panel-token-pct.over{color:#e94646}.ctx-panel-close{background:none;border:none;cursor:pointer;color:var(--text-dim);padding:4px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}.ctx-panel-close:hover{background:var(--surface-3);color:var(--text)}.ctx-panel-body{padding:10px 14px;overflow-y:auto;flex:1}.ctx-panel-presets{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin-bottom:10px}.ctx-panel-presets-label{font-size:10px;font-family:var(--font-mono);color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;margin-right:4px}.ctx-panel-preset{background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);font-size:11px;font-family:var(--font-ui);padding:3px 8px;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--t),color var(--t),border-color var(--t)}.ctx-panel-preset:hover{background:var(--surface-3);color:var(--text);border-color:var(--border-light)}.ctx-panel-preset--reset{margin-left:auto;color:var(--accent);border-color:var(--accent-dim)}.ctx-panel-section{margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--border)}.ctx-panel-section:last-child{border-bottom:none}.ctx-panel-section--tokens{background:var(--surface-2);margin:4px -14px -10px;padding:10px 14px;border-bottom:none}.ctx-panel-section-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.ctx-panel-section-title{font-size:11px;font-weight:600;color:var(--text);letter-spacing:.04em;text-transform:uppercase}.ctx-panel-section-meta{font-size:10px;color:var(--text-dim);font-family:var(--font-mono);flex:1}.ctx-panel-clear-link{background:none;border:none;color:var(--text-dim);font-size:10px;cursor:pointer;padding:0;text-decoration:underline}.ctx-panel-clear-link:hover{color:var(--text)}.ctx-panel-empty{font-size:11px;color:var(--text-dim);font-style:italic;padding:8px 4px}.ctx-panel-msg-list{display:flex;flex-direction:column;gap:1px;max-height:220px;overflow-y:auto}.ctx-panel-msg-row{display:flex;align-items:baseline;gap:8px;padding:4px 6px;border-radius:4px;cursor:pointer;font-size:12px;transition:background var(--t),opacity var(--t)}.ctx-panel-msg-row:hover{background:var(--surface-2)}.ctx-panel-msg-row--off{opacity:.4}.ctx-panel-msg-check{accent-color:var(--accent);flex-shrink:0;margin-top:1px}.ctx-panel-msg-role{font-size:10px;font-weight:600;font-family:var(--font-mono);color:var(--accent);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;width:24px}.ctx-panel-msg-preview{color:var(--text-muted);flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ctx-panel-msg-badge{flex-shrink:0;background:var(--border);color:var(--text-dim)}.ctx-panel-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:8px;row-gap:1px;max-height:220px;overflow-y:auto}.ctx-panel-tools .ctx-panel-skill-row,.ctx-panel-tools .ctx-panel-skill-name{font-size:11px}.ctx-panel-msg-badge--excl{background:var(--surface-3);color:#e94646}.msg-sticky-btn.is-pinned{color:var(--accent)}.msg-sticky-btn.is-excluded{color:#e94646}.ctx-panel-profiles-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:8px;position:relative}.ctx-panel-profiles-controls{display:flex;gap:4px}.ctx-panel-profiles-menu{position:absolute;top:100%;left:0;z-index:1;margin-top:4px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 8px 18px #0006;display:flex;flex-direction:column;min-width:200px;max-height:220px;overflow-y:auto;padding:3px}.ctx-panel-profile-item{display:flex;gap:2px;align-items:stretch}.ctx-panel-profile-apply{flex:1;background:none;border:none;color:var(--text-muted);font-size:12px;font-family:var(--font-ui);text-align:left;padding:5px 8px;border-radius:var(--radius-sm);cursor:pointer}.ctx-panel-profile-apply:hover{background:var(--surface-3);color:var(--text)}.ctx-panel-profile-delete{background:none;border:none;color:var(--text-dim);font-size:14px;width:22px;cursor:pointer;border-radius:var(--radius-sm)}.ctx-panel-profile-delete:hover{background:var(--surface-3);color:#e94646}.ctx-panel-profiles-save{display:flex;gap:4px;flex:1 1 100%;align-items:center}.ctx-panel-profile-input{flex:1;min-width:120px;min-height:unset;padding:var(--sp-1) var(--sp-2);font-size:var(--text-xs)}.ctx-panel-profile-input:focus{outline:none;border-color:var(--accent-dim)}.ctx-panel-skills{display:flex;flex-direction:column;gap:2px}.ctx-panel-skill-row{display:flex;align-items:center;gap:8px;padding:3px 6px;border-radius:4px;cursor:pointer;font-size:12px}.ctx-panel-skill-row:hover{background:var(--surface-2)}.ctx-panel-skill-row--off{opacity:.4}.ctx-panel-skill-name{color:var(--text-muted);font-family:var(--font-mono)}.ctx-panel-footer{padding:8px 14px;border-top:1px solid var(--border);background:var(--surface-2);flex-shrink:0}.ctx-panel-footer-note{font-size:10px;color:var(--text-dim);font-style:italic}.ctx-lm-options{margin-top:var(--sp-1)}.ctx-lm-options-toggle{width:100%;display:flex;align-items:center;gap:var(--sp-1);padding:var(--sp-1) var(--sp-2);background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);font-family:var(--font-ui);font-size:var(--text-xs);cursor:pointer;transition:background var(--t),color var(--t),border-color var(--t);text-align:left}.ctx-lm-options-toggle:hover{background:var(--surface-2);color:var(--text);border-color:var(--border-light)}.ctx-lm-options-body{margin-top:var(--sp-1);padding:var(--sp-2) var(--sp-3);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:var(--sp-2)}.ctx-setting-row{display:flex;align-items:center;gap:var(--sp-2);font-family:var(--font-ui);font-size:var(--text-xs);color:var(--text-muted);cursor:pointer}.ctx-setting-row input[type=range]{flex:1;accent-color:var(--accent)}.ctx-setting-value{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-dim);min-width:2.5ch;text-align:right}.ctx-hint{font-size:var(--text-2xs);color:var(--text-dim);font-style:italic;margin-left:auto}.diff-card-stack{position:absolute;bottom:calc(100% + 8px);left:0;right:0;max-width:740px;margin:0 auto;display:flex;flex-direction:column;gap:8px;max-height:70vh;overflow-y:auto;z-index:var(--z-dropdown)}.diff-card-deck-count{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--text-muted);text-align:center;padding:var(--sp-1) var(--sp-2)}.diff-card-deck-cards{position:relative}.diff-card-stack--deck .diff-card-deck-cards:before,.diff-card-stack--deck .diff-card-deck-cards[data-behind="2"]:after{content:"";position:absolute;left:var(--sp-4);right:var(--sp-4);top:var(--sp-2);bottom:calc(-1 * var(--sp-2));border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--surface);box-shadow:0 6px 18px #00000040;z-index:-1}.diff-card-stack--deck .diff-card-deck-cards:before{transform:translateY(var(--sp-1_5)) scale(.98);opacity:.7}.diff-card-stack--deck .diff-card-deck-cards[data-behind="2"]:after{transform:translateY(var(--sp-3)) scale(.96);opacity:.5}.diff-card{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);overflow:hidden;font-family:var(--font-ui, system-ui);margin:8px 0;box-shadow:0 6px 18px #00000059;outline:none}.diff-card--severity-high{border-color:#b85c5c66;box-shadow:0 6px 18px #b85c5c2e}.diff-card--applied{border-color:#5a9e784d}.diff-card--rejected,.diff-card--expired{border-color:var(--border);opacity:.85}.diff-card--resolved.diff-card-resolved-row,.diff-card-resolved-row{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:12px;color:var(--text-muted)}.diff-card--resolved{padding:0}.diff-card-resolved-label{font-weight:600;color:var(--text)}.diff-card-resolved-path{font-family:var(--font-mono);font-size:11px;color:var(--text-dim);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diff-card-resolved-expand{background:transparent;border:1px solid var(--border-light);color:var(--text-muted);border-radius:var(--radius-sm);padding:3px 8px;font-size:11px;cursor:pointer}.diff-card-resolved-expand:hover{color:var(--text);border-color:var(--accent)}.diff-card-header{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--border);background:var(--surface-2)}.diff-card-kind-badge{font-size:10px;font-weight:700;letter-spacing:.06em;padding:3px 6px;border-radius:var(--radius-sm);background:var(--surface-3);color:var(--text-muted);flex-shrink:0}.diff-card-kind-badge[data-kind=NEW]{background:#5a9e782e;color:var(--success)}.diff-card-kind-badge[data-kind=MODIFY]{background:#c9a96e2e;color:var(--accent)}.diff-card-kind-badge[data-kind=DELETE]{background:#b85c5c2e;color:var(--danger)}.diff-card-path{font-family:var(--font-mono);font-size:12px;color:var(--text);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diff-card-biz-chip{font-size:10px;font-weight:600;padding:2px 6px;background:var(--surface-3);border-radius:var(--radius-pill);color:var(--text-muted)}.diff-card-severity-dot{color:var(--danger);font-size:14px;line-height:1}.diff-card-stats{display:flex;gap:6px;font-family:var(--font-mono);font-size:11px}.diff-card-stat-add{color:var(--success)}.diff-card-stat-rem{color:var(--danger)}.diff-card-time{font-size:11px;color:var(--text-dim)}.diff-card-toolbar{display:flex;align-items:center;gap:6px;padding:6px 10px;border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap}.diff-card-toolbar-group{display:flex;gap:4px}.diff-card-toolbar-right{margin-left:auto}.diff-card-toggle{display:inline-flex;align-items:center;gap:4px;background:transparent;border:1px solid transparent;color:var(--text-muted);font-size:11px;font-weight:500;padding:4px 8px;border-radius:var(--radius-sm);cursor:pointer;font-family:inherit}.diff-card-toggle:hover{color:var(--text);background:var(--surface-2)}.diff-card-toggle.active{color:var(--text);background:var(--surface-2);border-color:var(--border-light)}.diff-card-toggle-label{font-family:inherit}.diff-card-icon-btn{background:transparent;border:1px solid transparent;color:var(--text-muted);padding:3px 5px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;align-items:center}.diff-card-icon-btn:hover{color:var(--text);background:var(--surface-2)}.diff-card-findbar{display:flex;align-items:center;gap:6px;padding:6px 10px;background:var(--surface-2);border-bottom:1px solid var(--border)}.diff-card-find-input{flex:1;background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font-mono);font-size:12px;padding:4px 8px;outline:none}.diff-card-find-input:focus{border-color:var(--accent)}.diff-card-find-count{font-size:11px;color:var(--text-dim);font-family:var(--font-mono);min-width:36px;text-align:center}.diff-card-inline{font-family:var(--font-mono);font-size:12px;line-height:1.45;max-height:60vh;overflow:auto;background:var(--surface)}.diff-card-empty{padding:16px;text-align:center;color:var(--text-dim);font-size:12px}.diff-row{display:flex;white-space:pre;padding:0 4px}.diff-row--context{color:var(--text-muted)}.diff-row--add{background:#5a9e781a;color:var(--text)}.diff-row--remove{background:#b85c5c1a;color:var(--text)}.diff-row--empty{background:#ffffff05}.diff-row--match-active{outline:1px solid var(--accent);outline-offset:-1px}.diff-row-num{width:36px;text-align:right;padding-right:6px;color:var(--text-dim);-webkit-user-select:none;user-select:none;flex-shrink:0}.diff-row-sym{width:14px;text-align:center;-webkit-user-select:none;user-select:none;flex-shrink:0}.diff-row--add .diff-row-sym{color:var(--success)}.diff-row--remove .diff-row-sym{color:var(--danger)}.diff-row-text{flex:1;word-break:break-all}.diff-row-match{background:#c9a96e59;color:inherit;border-radius:2px;padding:0 1px}.diff-card-sbs{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border);max-height:60vh;overflow:auto}.diff-card-sbs-pane{background:var(--surface);font-family:var(--font-mono);font-size:12px;line-height:1.45}.diff-card-sbs-header{position:sticky;top:0;background:var(--surface-2);border-bottom:1px solid var(--border);padding:4px 10px;font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.diff-card-sbs-pane .diff-row-num{width:32px}.diff-card-edit-textarea{width:100%;min-height:200px;max-height:60vh;padding:10px;background:var(--surface);border:none;border-bottom:1px solid var(--border);color:var(--text);font-family:var(--font-mono);font-size:12px;line-height:1.5;resize:vertical;outline:none}.diff-card-edit-textarea:focus{background:#c9a96e0a}.diff-card-delete-warning{padding:14px 16px;background:#b85c5c0f;color:var(--text);font-size:13px;line-height:1.5}.diff-card-delete-warning code{font-family:var(--font-mono);background:var(--surface-3);padding:1px 5px;border-radius:var(--radius-sm)}.diff-card-reject-reason{padding:8px 10px;background:var(--surface-2);border-top:1px solid var(--border)}.diff-card-reject-input{width:100%;background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text);font-family:inherit;font-size:12px;padding:6px 8px;outline:none;resize:vertical}.diff-card-reject-input:focus{border-color:var(--accent)}.diff-card-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:10px 12px;border-top:1px solid var(--border);background:var(--surface-2)}.diff-card-resolved-summary{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted);flex:1}.diff-card-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;font-family:inherit}.diff-card-btn:disabled{opacity:.5;cursor:not-allowed}.diff-card-btn-secondary{background:transparent;color:var(--text-muted);border-color:var(--border-light)}.diff-card-btn-secondary:hover:not(:disabled){color:var(--text);border-color:var(--text-muted)}.diff-card-btn-primary{background:var(--accent);color:var(--surface)}.diff-card-btn-primary:hover:not(:disabled){background:var(--accent-hover)}.diff-card-btn-danger{background:var(--danger);color:#fff}.diff-card-btn-danger:hover:not(:disabled){filter:brightness(1.1)}.diff-card-shortcut{margin-left:6px;font-size:10px;font-family:var(--font-mono);opacity:.7}.perm-req{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);margin:var(--sp-2) 0}.perm-req--closing{animation:perm-req-close .3s var(--ease-out) forwards;overflow:hidden;pointer-events:none}@keyframes perm-req-close{0%{opacity:1;max-height:80px}to{opacity:0;max-height:0;margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0;transform:translateY(6px)}}@media(prefers-reduced-motion:reduce){.perm-req--closing{animation-duration:1ms}}.perm-req-header{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.perm-req-shield{color:var(--accent)}.perm-req-title{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--text)}.perm-req-tool{font-family:var(--font-mono)}.perm-req-badge{letter-spacing:.04em}.perm-req-time{margin-left:auto;font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-dim)}.perm-req-unverified{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-left:var(--border-width-md) solid var(--border);background:var(--surface-2);border-radius:var(--radius-sm)}.perm-req-unverified-label{display:flex;align-items:center;gap:var(--sp-1);font-family:var(--font-mono);font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim)}.perm-req-summary{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--text-muted);white-space:pre-wrap;word-break:break-word}.perm-req-args-wrap{display:flex;flex-direction:column;gap:var(--sp-1)}.perm-req-args-toggle{align-self:flex-start;font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-dim);text-decoration:underline}.perm-req-args{margin:0;padding:var(--sp-2);max-height:240px;overflow:auto;font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-muted);background:var(--surface-3);border-radius:var(--radius-sm);white-space:pre-wrap;word-break:break-word}.perm-req-reject-input{width:100%}.perm-req-footer{display:flex;align-items:center;gap:var(--sp-2)}.perm-req-approve-group{display:flex;align-items:center;gap:var(--sp-2);margin-left:auto}.perm-req-resolved-row{display:flex;align-items:center;gap:var(--sp-2);font-family:var(--font-ui);font-size:var(--text-sm);color:var(--text-muted)}.perm-req--applied .perm-req-resolved-row{color:var(--success)}.permset{display:flex;flex-direction:column;gap:var(--sp-6)}.permset-section{display:flex;flex-direction:column;gap:var(--sp-2)}.permset-section-title{font-family:var(--font-display);font-size:var(--text-lg);color:var(--text);margin:0}.permset-hint{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--text-dim);margin:0;max-width:60ch}.permset-toggle{display:flex;align-items:center;gap:var(--sp-2);font-family:var(--font-ui);font-size:var(--text-md);color:var(--text);cursor:pointer}.permset-enforced-note{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--warning);margin:0}.permset-tools{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.permset-tool{display:inline-flex;align-items:center;gap:var(--sp-1);padding:var(--sp-1) var(--sp-2);background:var(--surface-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-xs)}.permset-tool-remove{color:var(--text-dim);font-size:var(--text-md);line-height:1}.permset-tool-remove:hover{color:var(--danger)}.permset-clear{align-self:flex-start}.skills-settings{display:flex;flex-direction:column;gap:var(--sp-4);flex:1;min-height:0}.skills-settings-intro{flex-shrink:0}.skills-settings-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;margin:0 0 var(--sp-2)}.skills-settings-hint{color:var(--text-muted);font-size:var(--text-sm);line-height:1.6;margin:0}.skills-list{display:flex;flex-direction:column;gap:var(--sp-1);margin:0;padding:0;list-style:none;flex:1;min-height:0;overflow-y:auto}.skill-row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);padding:var(--sp-2) var(--sp-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2)}.skill-row-meta{display:flex;flex-direction:column;gap:var(--sp-px);min-width:0}.skill-row-name{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text)}.skill-row-desc{font-size:var(--text-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:52ch}.skill-cycle{display:inline-flex;flex:none;align-items:stretch;gap:0;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;cursor:pointer}.skill-cycle-seg{font-family:var(--font-ui);font-size:var(--text-2xs);letter-spacing:.02em;padding:var(--sp-1) var(--sp-2);color:var(--text-dim);background:var(--surface-1);white-space:nowrap;transition:background var(--t),color var(--t)}.skill-cycle-seg+.skill-cycle-seg{border-left:1px solid var(--border)}.skill-cycle-seg.is-active{background:rgba(var(--accent-rgb),var(--opacity-subtle));color:var(--accent)}.skill-cycle:hover .skill-cycle-seg:not(.is-active){color:var(--text-muted)}@media(max-width:640px){.skill-row{flex-direction:column;align-items:flex-start;gap:var(--sp-2)}.skill-row-desc{max-width:100%;white-space:normal}}
