/*! tailwindcss v4.0.0 | MIT License | https://tailwindcss.com */
:root {
  --font-sans: ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji',
    'Segoe UI Symbol', 'Noto Color Emoji';
  --font-serif: ui-serif, Georgia, Cambria, 'Times New Roman', Times, serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono',
    'Courier New', monospace;
  --color-red-50: oklch(0.971 0.013 17.38);
  --color-red-100: oklch(0.936 0.032 17.717);
  --color-red-200: oklch(0.885 0.062 18.334);
  --color-red-300: oklch(0.808 0.114 19.571);
  --color-red-400: oklch(0.704 0.191 22.216);
  --color-red-500: oklch(0.637 0.237 25.331);
  --color-red-600: oklch(0.577 0.245 27.325);
  --color-red-700: oklch(0.505 0.213 27.518);
  --color-red-800: oklch(0.444 0.177 26.899);
  --color-red-900: oklch(0.396 0.141 25.723);
  --color-red-950: oklch(0.258 0.092 26.042);
  --color-orange-50: oklch(0.98 0.016 73.684);
  --color-orange-100: oklch(0.954 0.038 75.164);
  --color-orange-200: oklch(0.901 0.076 70.697);
  --color-orange-300: oklch(0.837 0.128 66.29);
  --color-orange-400: oklch(0.75 0.183 55.934);
  --color-orange-500: oklch(0.705 0.213 47.604);
  --color-orange-600: oklch(0.646 0.222 41.116);
  --color-orange-700: oklch(0.553 0.195 38.402);
  --color-orange-800: oklch(0.47 0.157 37.304);
  --color-orange-900: oklch(0.408 0.123 38.172);
  --color-orange-950: oklch(0.266 0.079 36.259);
  --color-amber-50: oklch(0.987 0.022 95.277);
  --color-amber-100: oklch(0.962 0.059 95.617);
  --color-amber-200: oklch(0.924 0.12 95.746);
  --color-amber-300: oklch(0.879 0.169 91.605);
  --color-amber-400: oklch(0.828 0.189 84.429);
  --color-amber-500: oklch(0.769 0.188 70.08);
  --color-amber-600: oklch(0.666 0.179 58.318);
  --color-amber-700: oklch(0.555 0.163 48.998);
  --color-amber-800: oklch(0.473 0.137 46.201);
  --color-amber-900: oklch(0.414 0.112 45.904);
  --color-amber-950: oklch(0.279 0.077 45.635);
  --color-yellow-50: oklch(0.987 0.026 102.212);
  --color-yellow-100: oklch(0.973 0.071 103.193);
  --color-yellow-200: oklch(0.945 0.129 101.54);
  --color-yellow-300: oklch(0.905 0.182 98.111);
  --color-yellow-400: oklch(0.852 0.199 91.936);
  --color-yellow-500: oklch(0.795 0.184 86.047);
  --color-yellow-600: oklch(0.681 0.162 75.834);
  --color-yellow-700: oklch(0.554 0.135 66.442);
  --color-yellow-800: oklch(0.476 0.114 61.907);
  --color-yellow-900: oklch(0.421 0.095 57.708);
  --color-yellow-950: oklch(0.286 0.066 53.813);
  --color-lime-50: oklch(0.986 0.031 120.757);
  --color-lime-100: oklch(0.967 0.067 122.328);
  --color-lime-200: oklch(0.938 0.127 124.321);
  --color-lime-300: oklch(0.897 0.196 126.665);
  --color-lime-400: oklch(0.841 0.238 128.85);
  --color-lime-500: oklch(0.768 0.233 130.85);
  --color-lime-600: oklch(0.648 0.2 131.684);
  --color-lime-700: oklch(0.532 0.157 131.589);
  --color-lime-800: oklch(0.453 0.124 130.933);
  --color-lime-900: oklch(0.405 0.101 131.063);
  --color-lime-950: oklch(0.274 0.072 132.109);
  --color-green-50: oklch(0.982 0.018 155.826);
  --color-green-100: oklch(0.962 0.044 156.743);
  --color-green-200: oklch(0.925 0.084 155.995);
  --color-green-300: oklch(0.871 0.15 154.449);
  --color-green-400: oklch(0.792 0.209 151.711);
  --color-green-500: oklch(0.723 0.219 149.579);
  --color-green-600: oklch(0.627 0.194 149.214);
  --color-green-700: oklch(0.527 0.154 150.069);
  --color-green-800: oklch(0.448 0.119 151.328);
  --color-green-900: oklch(0.393 0.095 152.535);
  --color-green-950: oklch(0.266 0.065 152.934);
  --color-emerald-50: oklch(0.979 0.021 166.113);
  --color-emerald-100: oklch(0.95 0.052 163.051);
  --color-emerald-200: oklch(0.905 0.093 164.15);
  --color-emerald-300: oklch(0.845 0.143 164.978);
  --color-emerald-400: oklch(0.765 0.177 163.223);
  --color-emerald-500: oklch(0.696 0.17 162.48);
  --color-emerald-600: oklch(0.596 0.145 163.225);
  --color-emerald-700: oklch(0.508 0.118 165.612);
  --color-emerald-800: oklch(0.432 0.095 166.913);
  --color-emerald-900: oklch(0.378 0.077 168.94);
  --color-emerald-950: oklch(0.262 0.051 172.552);
  --color-teal-50: oklch(0.984 0.014 180.72);
  --color-teal-100: oklch(0.953 0.051 180.801);
  --color-teal-200: oklch(0.91 0.096 180.426);
  --color-teal-300: oklch(0.855 0.138 181.071);
  --color-teal-400: oklch(0.777 0.152 181.912);
  --color-teal-500: oklch(0.704 0.14 182.503);
  --color-teal-600: oklch(0.6 0.118 184.704);
  --color-teal-700: oklch(0.511 0.096 186.391);
  --color-teal-800: oklch(0.437 0.078 188.216);
  --color-teal-900: oklch(0.386 0.063 188.416);
  --color-teal-950: oklch(0.277 0.046 192.524);
  --color-cyan-50: oklch(0.984 0.019 200.873);
  --color-cyan-100: oklch(0.956 0.045 203.388);
  --color-cyan-200: oklch(0.917 0.08 205.041);
  --color-cyan-300: oklch(0.865 0.127 207.078);
  --color-cyan-400: oklch(0.789 0.154 211.53);
  --color-cyan-500: oklch(0.715 0.143 215.221);
  --color-cyan-600: oklch(0.609 0.126 221.723);
  --color-cyan-700: oklch(0.52 0.105 223.128);
  --color-cyan-800: oklch(0.45 0.085 224.283);
  --color-cyan-900: oklch(0.398 0.07 227.392);
  --color-cyan-950: oklch(0.302 0.056 229.695);
  --color-sky-50: oklch(0.977 0.013 236.62);
  --color-sky-100: oklch(0.951 0.026 236.824);
  --color-sky-200: oklch(0.901 0.058 230.902);
  --color-sky-300: oklch(0.828 0.111 230.318);
  --color-sky-400: oklch(0.746 0.16 232.661);
  --color-sky-500: oklch(0.685 0.169 237.323);
  --color-sky-600: oklch(0.588 0.158 241.966);
  --color-sky-700: oklch(0.5 0.134 242.749);
  --color-sky-800: oklch(0.443 0.11 240.79);
  --color-sky-900: oklch(0.391 0.09 240.876);
  --color-sky-950: oklch(0.293 0.066 243.157);
  --color-blue-50: oklch(0.97 0.014 254.604);
  --color-blue-100: oklch(0.932 0.032 255.585);
  --color-blue-200: oklch(0.882 0.059 254.128);
  --color-blue-300: oklch(0.809 0.105 251.813);
  --color-blue-400: oklch(0.707 0.165 254.624);
  --color-blue-500: oklch(0.623 0.214 259.815);
  --color-blue-600: oklch(0.546 0.245 262.881);
  --color-blue-700: oklch(0.488 0.243 264.376);
  --color-blue-800: oklch(0.424 0.199 265.638);
  --color-blue-900: oklch(0.379 0.146 265.522);
  --color-blue-950: oklch(0.282 0.091 267.935);
  --color-indigo-50: oklch(0.962 0.018 272.314);
  --color-indigo-100: oklch(0.93 0.034 272.788);
  --color-indigo-200: oklch(0.87 0.065 274.039);
  --color-indigo-300: oklch(0.785 0.115 274.713);
  --color-indigo-400: oklch(0.673 0.182 276.935);
  --color-indigo-500: oklch(0.585 0.233 277.117);
  --color-indigo-600: oklch(0.511 0.262 276.966);
  --color-indigo-700: oklch(0.457 0.24 277.023);
  --color-indigo-800: oklch(0.398 0.195 277.366);
  --color-indigo-900: oklch(0.359 0.144 278.697);
  --color-indigo-950: oklch(0.257 0.09 281.288);
  --color-violet-50: oklch(0.969 0.016 293.756);
  --color-violet-100: oklch(0.943 0.029 294.588);
  --color-violet-200: oklch(0.894 0.057 293.283);
  --color-violet-300: oklch(0.811 0.111 293.571);
  --color-violet-400: oklch(0.702 0.183 293.541);
  --color-violet-500: oklch(0.606 0.25 292.717);
  --color-violet-600: oklch(0.541 0.281 293.009);
  --color-violet-700: oklch(0.491 0.27 292.581);
  --color-violet-800: oklch(0.432 0.232 292.759);
  --color-violet-900: oklch(0.38 0.189 293.745);
  --color-violet-950: oklch(0.283 0.141 291.089);
  --color-purple-50: oklch(0.977 0.014 308.299);
  --color-purple-100: oklch(0.946 0.033 307.174);
  --color-purple-200: oklch(0.902 0.063 306.703);
  --color-purple-300: oklch(0.827 0.119 306.383);
  --color-purple-400: oklch(0.714 0.203 305.504);
  --color-purple-500: oklch(0.627 0.265 303.9);
  --color-purple-600: oklch(0.558 0.288 302.321);
  --color-purple-700: oklch(0.496 0.265 301.924);
  --color-purple-800: oklch(0.438 0.218 303.724);
  --color-purple-900: oklch(0.381 0.176 304.987);
  --color-purple-950: oklch(0.291 0.149 302.717);
  --color-fuchsia-50: oklch(0.977 0.017 320.058);
  --color-fuchsia-100: oklch(0.952 0.037 318.852);
  --color-fuchsia-200: oklch(0.903 0.076 319.62);
  --color-fuchsia-300: oklch(0.833 0.145 321.434);
  --color-fuchsia-400: oklch(0.74 0.238 322.16);
  --color-fuchsia-500: oklch(0.667 0.295 322.15);
  --color-fuchsia-600: oklch(0.591 0.293 322.896);
  --color-fuchsia-700: oklch(0.518 0.253 323.949);
  --color-fuchsia-800: oklch(0.452 0.211 324.591);
  --color-fuchsia-900: oklch(0.401 0.17 325.612);
  --color-fuchsia-950: oklch(0.293 0.136 325.661);
  --color-pink-50: oklch(0.971 0.014 343.198);
  --color-pink-100: oklch(0.948 0.028 342.258);
  --color-pink-200: oklch(0.899 0.061 343.231);
  --color-pink-300: oklch(0.823 0.12 346.018);
  --color-pink-400: oklch(0.718 0.202 349.761);
  --color-pink-500: oklch(0.656 0.241 354.308);
  --color-pink-600: oklch(0.592 0.249 0.584);
  --color-pink-700: oklch(0.525 0.223 3.958);
  --color-pink-800: oklch(0.459 0.187 3.815);
  --color-pink-900: oklch(0.408 0.153 2.432);
  --color-pink-950: oklch(0.284 0.109 3.907);
  --color-rose-50: oklch(0.969 0.015 12.422);
  --color-rose-100: oklch(0.941 0.03 12.58);
  --color-rose-200: oklch(0.892 0.058 10.001);
  --color-rose-300: oklch(0.81 0.117 11.638);
  --color-rose-400: oklch(0.712 0.194 13.428);
  --color-rose-500: oklch(0.645 0.246 16.439);
  --color-rose-600: oklch(0.586 0.253 17.585);
  --color-rose-700: oklch(0.514 0.222 16.935);
  --color-rose-800: oklch(0.455 0.188 13.697);
  --color-rose-900: oklch(0.41 0.159 10.272);
  --color-rose-950: oklch(0.271 0.105 12.094);
  --color-slate-50: oklch(0.984 0.003 247.858);
  --color-slate-100: oklch(0.968 0.007 247.896);
  --color-slate-200: oklch(0.929 0.013 255.508);
  --color-slate-300: oklch(0.869 0.022 252.894);
  --color-slate-400: oklch(0.704 0.04 256.788);
  --color-slate-500: oklch(0.554 0.046 257.417);
  --color-slate-600: oklch(0.446 0.043 257.281);
  --color-slate-700: oklch(0.372 0.044 257.287);
  --color-slate-800: oklch(0.279 0.041 260.031);
  --color-slate-900: oklch(0.208 0.042 265.755);
  --color-slate-950: oklch(0.129 0.042 264.695);
  --color-gray-50: oklch(0.985 0.002 247.839);
  --color-gray-100: oklch(0.967 0.003 264.542);
  --color-gray-200: oklch(0.928 0.006 264.531);
  --color-gray-300: oklch(0.872 0.01 258.338);
  --color-gray-400: oklch(0.707 0.022 261.325);
  --color-gray-500: oklch(0.551 0.027 264.364);
  --color-gray-600: oklch(0.446 0.03 256.802);
  --color-gray-700: oklch(0.373 0.034 259.733);
  --color-gray-800: oklch(0.278 0.033 256.848);
  --color-gray-900: oklch(0.21 0.034 264.665);
  --color-gray-950: oklch(0.13 0.028 261.692);
  --color-zinc-50: oklch(0.985 0 0);
  --color-zinc-100: oklch(0.967 0.001 286.375);
  --color-zinc-200: oklch(0.92 0.004 286.32);
  --color-zinc-300: oklch(0.871 0.006 286.286);
  --color-zinc-400: oklch(0.705 0.015 286.067);
  --color-zinc-500: oklch(0.552 0.016 285.938);
  --color-zinc-600: oklch(0.442 0.017 285.786);
  --color-zinc-700: oklch(0.37 0.013 285.805);
  --color-zinc-800: oklch(0.274 0.006 286.033);
  --color-zinc-900: oklch(0.21 0.006 285.885);
  --color-zinc-950: oklch(0.141 0.005 285.823);
  --color-neutral-50: oklch(0.985 0 0);
  --color-neutral-100: oklch(0.97 0 0);
  --color-neutral-200: oklch(0.922 0 0);
  --color-neutral-300: oklch(0.87 0 0);
  --color-neutral-400: oklch(0.708 0 0);
  --color-neutral-500: oklch(0.556 0 0);
  --color-neutral-600: oklch(0.439 0 0);
  --color-neutral-700: oklch(0.371 0 0);
  --color-neutral-800: oklch(0.269 0 0);
  --color-neutral-900: oklch(0.205 0 0);
  --color-neutral-950: oklch(0.145 0 0);
  --color-stone-50: oklch(0.985 0.001 106.423);
  --color-stone-100: oklch(0.97 0.001 106.424);
  --color-stone-200: oklch(0.923 0.003 48.717);
  --color-stone-300: oklch(0.869 0.005 56.366);
  --color-stone-400: oklch(0.709 0.01 56.259);
  --color-stone-500: oklch(0.553 0.013 58.071);
  --color-stone-600: oklch(0.444 0.011 73.639);
  --color-stone-700: oklch(0.374 0.01 67.558);
  --color-stone-800: oklch(0.268 0.007 34.298);
  --color-stone-900: oklch(0.216 0.006 56.043);
  --color-stone-950: oklch(0.147 0.004 49.25);
  --color-black: #000;
  --color-white: #fff;
  --spacing: 0.25rem;
  --breakpoint-sm: 40rem;
  --breakpoint-md: 48rem;
  --breakpoint-lg: 64rem;
  --breakpoint-xl: 80rem;
  --breakpoint-2xl: 96rem;
  --container-3xs: 16rem;
  --container-2xs: 18rem;
  --container-xs: 20rem;
  --container-sm: 24rem;
  --container-md: 28rem;
  --container-lg: 32rem;
  --container-xl: 36rem;
  --container-2xl: 42rem;
  --container-3xl: 48rem;
  --container-4xl: 56rem;
  --container-5xl: 64rem;
  --container-6xl: 72rem;
  --container-7xl: 80rem;
  --text-xs: 0.75rem;
  --text-xs--line-height: calc(1 / 0.75);
  --text-sm: 0.875rem;
  --text-sm--line-height: calc(1.25 / 0.875);
  --text-base: 1rem;
  --text-base--line-height: calc(1.5 / 1);
  --text-lg: 1.125rem;
  --text-lg--line-height: calc(1.75 / 1.125);
  --text-xl: 1.25rem;
  --text-xl--line-height: calc(1.75 / 1.25);
  --text-2xl: 1.5rem;
  --text-2xl--line-height: calc(2 / 1.5);
  --text-3xl: 1.875rem;
  --text-3xl--line-height: calc(2.25 / 1.875);
  --text-4xl: 2.25rem;
  --text-4xl--line-height: calc(2.5 / 2.25);
  --text-5xl: 3rem;
  --text-5xl--line-height: 1;
  --text-6xl: 3.75rem;
  --text-6xl--line-height: 1;
  --text-7xl: 4.5rem;
  --text-7xl--line-height: 1;
  --text-8xl: 6rem;
  --text-8xl--line-height: 1;
  --text-9xl: 8rem;
  --text-9xl--line-height: 1;
  --font-weight-thin: 100;
  --font-weight-extralight: 200;
  --font-weight-light: 300;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-extrabold: 800;
  --font-weight-black: 900;
  --tracking-tighter: -0.05em;
  --tracking-tight: -0.025em;
  --tracking-normal: 0em;
  --tracking-wide: 0.025em;
  --tracking-wider: 0.05em;
  --tracking-widest: 0.1em;
  --leading-tight: 1.25;
  --leading-snug: 1.375;
  --leading-normal: 1.5;
  --leading-relaxed: 1.625;
  --leading-loose: 2;
  --radius-xs: 0.125rem;
  --radius-sm: 0.25rem;
  --radius-md: 0.375rem;
  --radius-lg: 0.5rem;
  --radius-xl: 0.75rem;
  --radius-2xl: 1rem;
  --radius-3xl: 1.5rem;
  --radius-4xl: 2rem;
  --shadow-2xs: 0 1px rgb(0 0 0 / 0.05);
  --shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.25);
  --inset-shadow-2xs: inset 0 1px rgb(0 0 0 / 0.05);
  --inset-shadow-xs: inset 0 1px 1px rgb(0 0 0 / 0.05);
  --inset-shadow-sm: inset 0 2px 4px rgb(0 0 0 / 0.05);
  --drop-shadow-xs: 0 1px 1px rgb(0 0 0 / 0.05);
  --drop-shadow-sm: 0 1px 2px rgb(0 0 0 / 0.15);
  --drop-shadow-md: 0 3px 3px rgb(0 0 0 / 0.12);
  --drop-shadow-lg: 0 4px 4px rgb(0 0 0 / 0.15);
  --drop-shadow-xl: 0 9px 7px rgb(0 0 0 / 0.1);
  --drop-shadow-2xl: 0 25px 25px rgb(0 0 0 / 0.15);
  --ease-in: cubic-bezier(0.4, 0, 1, 1);
  --ease-out: cubic-bezier(0, 0, 0.2, 1);
  --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
  --animate-spin: spin 1s linear infinite;
  --animate-ping: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;
  --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
  --animate-bounce: bounce 1s infinite;
  --blur-xs: 4px;
  --blur-sm: 8px;
  --blur-md: 12px;
  --blur-lg: 16px;
  --blur-xl: 24px;
  --blur-2xl: 40px;
  --blur-3xl: 64px;
  --perspective-dramatic: 100px;
  --perspective-near: 300px;
  --perspective-normal: 500px;
  --perspective-midrange: 800px;
  --perspective-distant: 1200px;
  --aspect-video: 16 / 9;
  --default-transition-duration: 150ms;
  --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  --default-font-family: var(--font-sans);
  --default-font-feature-settings: var(--font-sans--font-feature-settings);
  --default-font-variation-settings: var(--font-sans--font-variation-settings);
  --default-mono-font-family: var(--font-mono);
  --default-mono-font-feature-settings: var(--font-mono--font-feature-settings);
  --default-mono-font-variation-settings: var(--font-mono--font-variation-settings);
}
*, ::after, ::before, ::backdrop, ::file-selector-button {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0 solid;
}
html, :host {
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  tab-size: 4;
  font-family: var( --default-font-family, ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji' );
  font-feature-settings: var(--default-font-feature-settings, normal);
  font-variation-settings: var(--default-font-variation-settings, normal);
  -webkit-tap-highlight-color: transparent;
}
body {
  line-height: inherit;
}
hr {
  height: 0;
  color: inherit;
  border-top-width: 1px;
}
abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}
h1, h2, h3, h4, h5, h6 {
  font-size: inherit;
  font-weight: inherit;
}
a {
  color: inherit;
  -webkit-text-decoration: inherit;
  text-decoration: inherit;
}
b, strong {
  font-weight: bolder;
}
code, kbd, samp, pre {
  font-family: var( --default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace );
  font-feature-settings: var(--default-mono-font-feature-settings, normal);
  font-variation-settings: var(--default-mono-font-variation-settings, normal);
  font-size: 1em;
}
small {
  font-size: 80%;
}
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
table {
  text-indent: 0;
  border-color: inherit;
  border-collapse: collapse;
}
:-moz-focusring {
  outline: auto;
}
progress {
  vertical-align: baseline;
}
summary {
  display: list-item;
}
ol, ul, menu {
  list-style: none;
}
img, svg, video, canvas, audio, iframe, embed, object {
  display: block;
  vertical-align: middle;
}
img, video {
  max-width: 100%;
  height: auto;
}
button, input, select, optgroup, textarea, ::file-selector-button {
  font: inherit;
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  letter-spacing: inherit;
  color: inherit;
  border-radius: 0;
  background-color: transparent;
  opacity: 1;
}
:where(select:is([multiple], [size])) optgroup {
  font-weight: bolder;
}
:where(select:is([multiple], [size])) optgroup option {
  padding-inline-start: 20px;
}
::file-selector-button {
  margin-inline-end: 4px;
}
::placeholder {
  opacity: 1;
  color: color-mix(in oklab, currentColor 50%, transparent);
}
textarea {
  resize: vertical;
}
::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-date-and-time-value {
  min-height: 1lh;
  text-align: inherit;
}
::-webkit-datetime-edit {
  display: inline-flex;
}
::-webkit-datetime-edit-fields-wrapper {
  padding: 0;
}
::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
  padding-block: 0;
}
:-moz-ui-invalid {
  box-shadow: none;
}
button, input:where([type='button'], [type='reset'], [type='submit']), ::file-selector-button {
  appearance: button;
}
::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
  height: auto;
}
[hidden]:where(:not([hidden='until-found'])) {
  display: none !important;
}
.visible {
  visibility: visible;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.fixed {
  position: fixed;
}
.mt-6 {
  margin-top: calc(var(--spacing) * 6);
}
.block {
  display: block;
}
.contents {
  display: contents;
}
.flex {
  display: flex;
}
.hidden {
  display: none;
}
.inline {
  display: inline;
}
.table {
  display: table;
}
.transform {
  transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
}
.resize {
  resize: both;
}
.items-center {
  align-items: center;
}
.justify-between {
  justify-content: space-between;
}
.justify-end {
  justify-content: flex-end;
}
.gap-2 {
  gap: calc(var(--spacing) * 2);
}
.gap-3 {
  gap: calc(var(--spacing) * 3);
}
.gap-6 {
  gap: calc(var(--spacing) * 6);
}
.space-y-5 {
  :where(& > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)));
  }
}
.filter {
  filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes ping {
  75%, 100% {
    transform: scale(2);
    opacity: 0;
  }
}
@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}
@keyframes bounce {
  0%, 100% {
    transform: translateY(-25%);
    animation-timing-function: cubic-bezier(0.8, 0, 1, 1);
  }
  50% {
    transform: none;
    animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
  }
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
  initial-value: rotateX(0);
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
  initial-value: rotateY(0);
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
  initial-value: rotateZ(0);
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
  initial-value: skewX(0);
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
  initial-value: skewY(0);
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}

:root{--ink:#18181b;--muted:#78787f;--line:#e5e5e8;--soft:#f7f7f8;--accent:#ff8200;font-family:'Segoe UI','Microsoft JhengHei',sans-serif;color:var(--ink);background:#f5f5f6;font-synthesis:none}body{margin:0}button,a,input,textarea{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}a{text-decoration:none;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:1px solid var(--control-focus,#9b9ba6);outline-offset:2px}button,input,textarea{transition:background .18s,border-color .18s,transform .18s}h1,h2,h3,p{margin:0}h2{font-size:19px;letter-spacing:-.5px;font-weight:600}h3{font-weight:600}p{line-height:1.7}strong{font-weight:600}.text-muted{color:var(--muted)}.app-shell{display:grid;grid-template-columns:212px minmax(0,1fr);min-height:100dvh}.sidebar{background:#f8f8f9;border-right:1px solid var(--line);padding:32px 20px;position:sticky;top:0;height:100dvh;display:flex;flex-direction:column}.brand{display:block;width:143px;margin:0 12px}.brand img{width:100%;height:auto}.workspace-label{font-size:14px;letter-spacing:1.8px;color:#9a9aa1;margin:44px 12px 18px}.nav-item{display:flex;align-items:center;gap:12px;min-height:46px;width:100%;padding:10px 12px;border-radius:8px;font-size:17px;color:#727279;text-align:left;border:0;background:none;margin:3px 0}.nav-item small{font-size:14px;margin-left:auto;opacity:.6;font-variant-numeric:tabular-nums}.nav-item:hover{background:#ededf0;color:#18181b}.nav-item.active{background:#18181b;color:#fff}.sidebar-bottom{margin-top:auto}.connection{display:flex;gap:9px;align-items:flex-start;border-top:1px solid var(--line);padding:20px 10px 17px;font-size:16px}.connection>span{width:6px;height:6px;background:#5c7c62;border-radius:50%;margin-top:7px}.connection small{display:block;font-size:14px;color:var(--muted);margin-top:5px}.sidebar-bottom>p{font-size:14px;color:#aaaab0;line-height:1.9;margin:22px 12px 0}.workspace{min-width:0}.topbar{height:78px;display:flex;justify-content:space-between;align-items:center;padding:0 40px;background:#fff;border-bottom:1px solid var(--line);font-size:16px}.slash{color:#c1c1c6;margin:0 6px}.save-state{font-size:15px;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid #cfcfd6;background:#fff;color:#242428;border-radius:99px;min-height:40px;padding:0 20px;font-size:16px;font-weight:500;white-space:nowrap}.button:hover{background:#efeff1;border-color:#b7b7bf}.button:active{transform:scale(.98)}.button svg{transition:transform .2s}.button:hover svg:last-child{transform:translateX(2px)}.button.primary{background:#18181b;color:#fff;border-color:#18181b}.button.primary:hover{background:#36363c;border-color:#36363c}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:34px}.eyebrow{font-size:14px;letter-spacing:2px;color:#a0a0a7;margin-bottom:14px}h1{font-size:32px;letter-spacing:-1.2px;line-height:1.25;font-weight:600}.page-heading p{font-size:16px;color:var(--muted);margin-top:10px}.studio-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:30px;align-items:start}.editor-area{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;min-width:0}.brief-bar{display:grid;grid-template-columns:minmax(0,1fr) 80px 80px;gap:20px;padding:26px 28px;background:#fcfcfc;border-bottom:1px solid var(--line);align-items:center}.field{display:flex;flex-direction:column;gap:9px;min-width:0}.field>span{font-size:15px;color:#74747b;font-weight:500;display:flex;justify-content:space-between;gap:12px}.field input,.field textarea,.script-block textarea{border:1px solid #cfcfd6;border-radius:7px;min-height:42px;padding:10px 12px;font-size:17px;line-height:1.7;background:#fff;width:100%;color:var(--ink);resize:vertical}.field input:hover,.field textarea:hover,.script-block textarea:hover{border-color:#b8b8c1}.field input:focus,.field textarea:focus,.script-block textarea:focus{border-color:#96969f}.brief-bar .field input{border:0;background:none;padding:0;min-height:28px;font-size:19px;font-weight:600;line-height:1.5;border-radius:0}.brief-meta{border-left:1px solid var(--line);padding-left:20px}.brief-meta>span{display:block;font-size:14px;color:var(--muted);margin-bottom:10px}.brief-meta>b{font-size:23px;font-weight:500;font-variant-numeric:tabular-nums}.brief-meta small{font-size:15px;color:var(--muted);font-weight:400}.content-section{padding:27px 28px;border-bottom:1px solid var(--line)}.first-section{padding-top:29px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}.section-heading h2>span{font-size:15px;vertical-align:middle;margin-left:10px;color:#a6a6ae;font-weight:400}.section-heading p{font-size:15px;color:var(--muted);margin-top:7px}.text-button{display:inline-flex;gap:7px;align-items:center;border:0;background:none;font-size:15px;color:#6d6d75;padding:4px 0;white-space:nowrap}.text-button:hover{color:#18181b}.story-list{display:grid}.story{display:grid;grid-template-columns:25px minmax(0,1fr) 24px;gap:15px;padding:20px 0;border-top:1px solid var(--line)}.story:first-child{padding-top:0;border-top:0}.story:last-child{padding-bottom:0}.story-index{font-size:16px;color:#ff8200;font-variant-numeric:tabular-nums;display:flex;flex-direction:column;gap:20px;padding-top:1px}.story-index svg{color:#c7c7ce}.story-meta{display:flex;align-items:center;gap:13px;font-size:14px;color:#94949c;margin-bottom:10px}.story-meta>span{color:#707078}.story-title{font-size:17px;line-height:1.6;font-weight:600;display:flex;justify-content:space-between;gap:10px;text-align:left;align-items:center;width:100%;border:0;padding:0;background:none}.story-title svg{flex-shrink:0;opacity:0;color:#999}.story:hover .story-title svg,.story-title:focus-visible svg{opacity:1}.story-body>p{font-size:16px;color:#74747b;line-height:1.8;margin-top:7px}.source-link{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:#a1a1a8;margin-top:12px;word-break:break-word}.source-link:hover{color:#b85800}.story-actions{display:flex;flex-direction:column;justify-content:center;gap:2px}.icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:32px;border:0;background:none;border-radius:6px;color:#9999a2}.icon-button:hover{background:#f1f1f3;color:#18181b}.story-actions .icon-button{min-width:24px;min-height:32px}.count{font-size:15px;color:#a1a1a8}.script-list{display:grid;gap:18px}.script-block{display:grid;grid-template-columns:86px minmax(0,1fr);gap:14px}.script-label{font-size:14px;color:#9999a0;padding-top:12px;line-height:1.6;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.script-block textarea{font-size:16px;border-color:#e1e1e6;background:#fafafa;line-height:1.9;padding:11px 14px;min-height:76px}.script-block textarea:focus{background:#fff}.editor-footer{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:20px 28px}.editor-footer>span{font-size:14px;color:#a4a4ab}.preview-area{position:sticky;top:24px;min-width:0}.preview-heading{display:flex;justify-content:space-between;font-size:15px;color:#77777e;align-items:center;margin-bottom:15px}.version{font-size:13px;letter-spacing:1px;color:#a3a3aa}.video-shell{background:#151818;border-radius:10px;overflow:hidden;aspect-ratio:9/16;border:1px solid #28282e;box-shadow:0 12px 28px -18px #1116}.video-shell video{width:100%;height:100%;object-fit:contain;display:block}.preview-time{display:flex;justify-content:space-between;font-size:14px;font-variant-numeric:tabular-nums;margin:12px 0 21px;color:#55555e}.preview-time>span>span{color:#aaaab0;margin-left:3px}.preview-time>span:last-child{color:#9e9ea6}.preview-caption h3{font-size:17px}.preview-caption p{font-size:14px;color:#9a9aa3;margin-top:6px}.chapter-list{margin-top:18px;border-top:1px solid var(--line);padding-top:8px}.chapter-list button{display:grid;grid-template-columns:17px 1fr 32px 12px;gap:9px;align-items:center;width:100%;text-align:left;font-size:14px;padding:11px 0;background:none;border:0;color:#9999a1}.chapter-list strong{font-size:15px;color:#72727a}.chapter-list button:hover strong{color:#b85800}.chapter-list small{font-size:13px;font-variant-numeric:tabular-nums}.preview-bottom{display:flex;align-items:center;gap:7px;font-size:14px;color:#82828b;border-top:1px solid var(--line);padding-top:16px;margin-top:5px}.status-dot{width:5px;height:5px;background:#648369;border-radius:50%}.status-dot.running{background:#ff8200}.preview-bottom button{margin-left:auto;background:none;border:0;color:#8f8f98}.voice-profile{display:flex;align-items:center;gap:14px;padding:20px;background:#f7f7f8;border-radius:10px}.voice-avatar{width:48px;height:48px;display:grid;place-items:center;background:#fff;border:1px solid var(--line);border-radius:10px}.voice-profile h3{font-size:17px}.voice-profile p{font-size:15px;color:var(--muted);margin-top:5px}.voice-profile>svg{margin-left:auto;color:#ff8200}.plain-badge{font-size:14px;border:1px solid var(--line);border-radius:5px;color:#83838b;padding:6px 9px}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:27px}.field input[type=range]{padding:0;border:0;accent-color:#ff8200;min-height:30px;outline-offset:0}.field small{display:flex;justify-content:space-between;font-size:13px;color:#a4a4ac}.helper{color:#9999a1;font-size:15px;line-height:1.8;margin-top:14px}.voice-sample{display:flex;align-items:center;gap:13px;width:100%;padding:15px 17px;background:#fff;border:1px solid var(--line);border-radius:9px;text-align:left}.voice-sample:hover,.voice-sample.playing{background:#f8f8f9}.sample-play{width:32px;height:32px;border:1px solid #e3e3e8;border-radius:50%;display:grid;place-items:center}.voice-sample>span:nth-child(2){font-size:16px}.voice-sample small{display:block;font-size:13px;color:#a1a1a8;margin-top:5px}.wave{display:flex;gap:3px;align-items:center;margin-left:auto;height:30px}.wave i{display:block;width:2px;background:#b8b8bf;border-radius:2px}.playing .wave i{background:#ff8200}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px 0;border-bottom:1px solid #eeeef1}.setting-row:last-child{border-bottom:0;padding-bottom:0}.setting-row strong{font-size:17px}.setting-row p{font-size:15px;color:var(--muted);margin-top:6px}.toggle{width:36px;height:22px;background:#dddde3;border:0;border-radius:20px;padding:3px;flex-shrink:0}.toggle span{display:block;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0001;transition:transform .2s}.toggle.on{background:#18181b}.toggle.on span{transform:translateX(14px)}.robot-stage{background:#151818;border-radius:10px;min-height:270px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.robot-stage img{width:270px;height:270px;object-fit:contain}.robot-stage>span{position:absolute;bottom:13px;left:16px;color:#929797;font-size:13px}.state-buttons{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.state-buttons button{font-size:15px;padding:9px 0;border:1px solid #e1e1e7;border-radius:7px;color:#85858d;background:#fff}.state-buttons .selected{border-color:#18181b;color:#18181b;background:#f4f4f5}.subject-upload{margin-top:23px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:16px;border:1px dashed #cfcfd6;border-radius:9px}.subject-upload>div{display:flex;align-items:center;gap:14px;min-width:0}.subject-upload img{width:48px;height:48px;object-fit:contain}.subject-upload strong{font-size:15px;overflow-wrap:anywhere}.subject-upload p{font-size:13px;color:var(--muted);margin-top:5px}.subject-upload svg{color:#9898a1;flex-shrink:0}.ratio{border:1px solid #cfcfd6;padding:12px 8px;border-radius:5px;font-size:15px}.design-note{padding-top:22px}.design-note span{font-size:15px;color:#55555f}.design-note p{font-size:15px;color:#96969e;margin-top:10px;line-height:1.9}.success-inline{display:flex;align-items:center;gap:5px;color:#527159;font-size:15px}.export-spec{display:grid;grid-template-columns:1fr 1fr;gap:23px;margin:25px 0 30px}.export-spec span{display:block;font-size:14px;color:#a0a0a8;margin-bottom:9px}.export-spec strong{font-size:20px;letter-spacing:-.5px;font-variant-numeric:tabular-nums;font-weight:500}.download-row{display:flex;flex-wrap:wrap;gap:12px}.quality-list{margin-top:30px;border-top:1px solid var(--line);padding-top:16px}.quality-list>div{display:flex;gap:10px;font-size:15px;color:#888891;align-items:center;margin:12px 0}.quality-list svg{color:#737b73}.quality-list .text-button{margin-top:10px}.notice{font-size:16px;color:#8b620c;line-height:1.8;background:#faf6ed;border:1px solid #eadfcc;padding:16px;border-radius:7px;margin-bottom:20px}.job-panel{padding:22px 0 0;margin-top:23px;border-top:1px solid var(--line);font-size:16px}.progress-track{height:3px;background:#e9e9ee;margin:17px 0;border-radius:5px;overflow:hidden}.progress-track>div{height:100%;background:#ff8200;transform-origin:left;transition:transform .5s}.job-panel pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;overflow:auto;font-size:14px;background:#f8f8f9;padding:12px;margin-top:12px}.error-banner{display:flex;gap:10px;align-items:center;font-size:16px;color:#9c3e38;background:#fff5f4;border:1px solid #ead1cf;padding:12px 16px;border-radius:8px;margin-bottom:20px}.error-banner .icon-button{margin-left:auto}.error{font-size:16px;color:#9c3e38;margin-top:12px}.empty{text-align:center;padding:34px 20px;color:#a1a1a9;display:flex;align-items:center;flex-direction:column;gap:12px}.empty h3{font-size:16px;color:#63636c}.empty p{font-size:16px;max-width:260px}.empty .button{margin-top:8px}.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);z-index:5;background:#18181b;color:#fff;padding:14px 22px;border-radius:99px;box-shadow:0 8px 25px #0002;display:flex;align-items:center;gap:9px;font-size:16px}.toast svg{color:#ff8200}dialog{max-width:520px;width:calc(100% - 32px);max-height:85dvh;overflow:auto;border:1px solid #dddde3;border-radius:14px;padding:28px;color:var(--ink);box-shadow:0 24px 80px #0002}dialog::backdrop{background:#18181b80;backdrop-filter:blur(3px)}dialog header h2{font-size:21px}dialog header .icon-button{min-width:44px;min-height:44px}.modal-copy{margin-top:24px;font-size:17px;color:#777780;line-height:1.9}.source-modal>div{padding:23px 0;border-bottom:1px solid var(--line)}.source-modal>div:last-child{border:0;padding-bottom:0}.source-modal>div>span{font-size:14px;color:#ff8200}.source-modal h3{font-size:17px;margin-top:8px}.source-modal p{font-size:15px;color:var(--muted);margin-top:10px}.boot{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;font-size:16px;color:var(--muted)}.boot img{width:170px}.skeleton{width:240px;height:4px;background:#dddde3;border-radius:4px}.hidden{display:none!important}
@media(min-width:1600px){.studio-grid{grid-template-columns:minmax(0,1fr) 340px;gap:40px}.content-section{padding:32px}.brief-bar{padding:30px 32px}.page-heading{margin-bottom:38px}}
@media(max-width:1180px){.app-shell{grid-template-columns:175px minmax(0,1fr)}.sidebar{padding:28px 14px}.brand{width:127px;margin-left:8px}.nav-item{font-size:16px;gap:9px}.nav-item small{display:none}.topbar{padding:0 24px}.studio-grid{grid-template-columns:minmax(0,1fr) 255px;gap:20px}.content-section{padding:24px 20px}.brief-bar{padding:22px 20px;grid-template-columns:minmax(0,1fr) 60px 60px;gap:10px}.brief-meta{padding-left:13px}.brief-meta>b{font-size:20px}.story{gap:10px;grid-template-columns:20px minmax(0,1fr) 24px}.script-block{grid-template-columns:65px minmax(0,1fr);gap:10px}.editor-footer{padding:20px}.editor-footer>span{max-width:110px}.preview-caption h3{font-size:16px}}
@media(max-width:950px){.app-shell{grid-template-columns:72px minmax(0,1fr)}.sidebar{padding:25px 10px}.brand{width:50px;margin:0;overflow:hidden}.brand img{width:50px}.workspace-label,.sidebar-bottom,.nav-item span,.nav-item small{display:none}.sidebar nav{margin-top:35px}.nav-item{justify-content:center;min-height:48px}.studio-grid{grid-template-columns:minmax(0,1fr) 245px;gap:18px}.topbar{height:65px}.save-state{display:none}.page-heading p{max-width:240px}.page-heading .button{padding:0 16px}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:static;height:auto;display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:13px 20px;border-right:0;border-bottom:1px solid var(--line)}.brand{width:109px}.brand img{width:109px}.sidebar nav{display:flex;margin:0;gap:4px}.nav-item{width:40px;min-height:40px;margin:0;padding:0}.nav-item svg{width:18px}.topbar{padding:0 20px;height:62px;font-size:14px}.topbar .button{min-height:34px;font-size:14px;padding:0 14px}.page-heading{align-items:flex-end;margin-bottom:24px}.page-heading .button{min-height:36px;font-size:14px;padding:0 14px}.eyebrow{font-size:12px;margin-bottom:10px}h1{font-size:27px}.page-heading p{font-size:14px;max-width:210px}.studio-grid{display:flex;flex-direction:column;gap:28px}.editor-area{width:100%}.preview-area{position:static;width:100%;max-width:350px;margin:auto}.preview-heading{font-size:16px}.brief-bar{grid-template-columns:minmax(0,1fr) 54px 54px;gap:7px}.brief-bar .field input{font-size:16px}.brief-meta{padding-left:9px}.brief-meta>span{font-size:13px}.brief-meta>b{font-size:20px}.content-section{padding:23px 18px}.section-heading{gap:8px}.section-heading p{font-size:14px}h2{font-size:19px}.story-title{font-size:16px}.story-body>p{font-size:15px}.story{grid-template-columns:18px minmax(0,1fr) 22px;gap:9px}.script-block{grid-template-columns:1fr;gap:6px}.script-label{flex-direction:row;justify-content:space-between;align-items:center;padding-top:0;height:30px}.script-block textarea{font-size:16px}.editor-footer{padding:18px;flex-wrap:wrap}.editor-footer>span{max-width:none}.editor-footer .button{font-size:15px}.two-fields{gap:16px}.voice-sample{padding:12px}.wave{gap:2px}.wave i{width:2px}.export-spec strong{font-size:18px}.download-row .button{font-size:15px}.subject-upload .button{min-height:36px;font-size:14px}.toast{max-width:90vw;width:max-content;font-size:15px;bottom:20px}.story-actions .icon-button{min-height:44px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}

/* Internal studio: readable type, topic entry and material rail */
:root{--muted:#65656f;font-size:16px}.topbar{padding:0 32px}.page-heading p,.section-heading p,.story-body>p,.setting-row p{color:#696971}.field>span{color:#5c5c65}.button{min-height:46px;padding:0 22px}.icon-button{min-width:44px;min-height:44px}.story-actions .icon-button{min-width:36px;min-height:44px}.story{grid-template-columns:30px minmax(0,1fr) 36px;gap:16px}.story-meta{flex-wrap:wrap}.source-link{color:#73737d}.script-block{grid-template-columns:100px minmax(0,1fr)}.script-block textarea{font-size:17px;line-height:1.85}.studio-grid{grid-template-columns:minmax(0,1fr) 290px;gap:26px}.content-mode{grid-template-columns:320px minmax(0,1fr)}.content-mode .sidebar{padding:26px 18px;overflow:hidden}.content-mode .workspace-label{margin:20px 12px 12px}.content-mode .sidebar nav{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:0}.content-mode .nav-item{justify-content:center;min-height:48px;padding:10px}.content-mode .nav-item span,.content-mode .nav-item small{display:none}.content-mode .sidebar-bottom{display:none}.news-rail{margin-top:26px;min-height:0;flex:1;overflow:auto;padding-right:3px;scrollbar-width:thin}.rail-caption{font-size:18px;font-weight:600;margin-bottom:20px}.rail-caption small{display:block;font-size:13px;font-weight:400;color:#74747c;line-height:1.6;margin-top:6px}.rail-empty{padding:30px 12px;border-top:1px solid var(--line);color:#777780}.rail-empty h3{font-size:18px;color:#33333b;margin:18px 0 10px}.rail-empty p{font-size:15px}.news-picker .section-heading{display:none}.news-search{display:flex;align-items:center;gap:10px;border:1px solid #cfcfd6;background:white;border-radius:8px;padding:0 12px;min-height:46px}.news-search input{min-width:0;flex:1;background:none;border:0;font-size:14px;padding:12px 0}.news-search button{border:0;background:none}.news-filters{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.news-filters>div:last-child{grid-column:1/-1}.filter-menu{position:relative;min-width:0}.filter-menu>span{display:block;font-size:12px;color:#696973;margin-bottom:6px}.filter-menu>button{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;text-align:left;min-height:44px;border:1px solid #cfcfd6;background:#fff;border-radius:7px;padding:9px 10px;font-size:14px}.filter-options{position:absolute;z-index:3;top:100%;left:0;right:0;min-width:150px;background:#fff;border:1px solid #dddde3;border-radius:8px;padding:5px;box-shadow:0 8px 25px #0001;max-height:300px;overflow:auto}.filter-options button{background:none;border:0;width:100%;display:flex;justify-content:space-between;gap:8px;padding:12px 9px;font-size:14px;text-align:left;border-radius:5px}.filter-options button:hover{background:#f1f1f3}.filter-result-bar{font-size:13px;line-height:1.7;margin:18px 0}.filter-result-bar>div{display:flex;justify-content:space-between;margin-top:9px;gap:8px}.filter-result-bar label{display:flex;align-items:center;gap:7px;min-height:36px}.candidate{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;padding:18px 4px;border-top:1px solid var(--line);cursor:grab}.candidate.picked{background:#efeff1}.candidate h3{font-size:16px;line-height:1.65;margin:7px 0}.candidate-meta{font-size:12px;color:#74747c;display:flex;flex-wrap:wrap;gap:8px}.candidate-select{min-height:44px;display:flex;align-items:start;justify-content:center;padding-top:6px}.candidate-select input{width:18px;height:18px;accent-color:#ff8200}.candidate-check,.candidate-status{display:none}.candidate details{font-size:13px;color:#6c6c75;line-height:1.7}.candidate details p{margin-top:8px}.candidate .source-link{font-size:12px;overflow-wrap:anywhere}.candidate-footer{padding:18px 0;display:grid;gap:16px;border-top:1px solid var(--line)}.filter-hint{font-size:13px;color:#75757e;line-height:1.7;margin:12px 0}.filter-empty{font-size:14px;line-height:1.7;padding:20px 5px}.filter-empty h3{margin:14px 0 8px}.filter-empty .button{margin-top:16px}.filter-date-range{display:grid;gap:8px}.filter-date-range>span{display:none}.topic-entry{padding:30px 28px;background:#fff;border-bottom:1px solid var(--line)}.topic-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:17px;color:#797981;font-size:13px}.topic-heading>span{color:#b45600}.topic-heading small{font-size:13px}.topic-entry h2{font-size:27px}.topic-entry>p{font-size:16px;color:#6c6c76;margin:9px 0 23px}.topic-input{display:flex;align-items:flex-end;gap:14px}.topic-input>.field{flex:1}.topic-input input{font-size:18px;min-height:50px}.topic-input .button{min-height:50px}.topic-note{font-size:13px;color:#75757f;line-height:1.75;margin-top:15px}.aspect-options{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}.aspect-options button{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr);column-gap:16px;align-items:center;text-align:left;border:1px solid #cfcfd6;border-radius:10px;padding:22px 18px;background:#fff;color:#65656f}.aspect-options button.selected{border:2px solid #26262b;padding:21px 17px;background:#f8f8f9;color:#18181b}.aspect-options strong{font-size:18px}.aspect-options small{font-size:14px;grid-column:2;margin-top:8px;line-height:1.6}.aspect-options b{grid-column:2;font-size:14px;margin-top:8px;font-weight:400}.aspect-options .portrait,.aspect-options .landscape{grid-row:1/4;border:2px solid currentColor;border-radius:3px;justify-self:center}.aspect-options .portrait{width:24px;height:40px}.aspect-options .landscape{width:42px;height:24px}.aspect-options svg{position:absolute;right:12px;top:12px;color:#b65700}.story-list:empty{min-height:100px}.story-list{min-height:80px}.story-list:has(.story):hover{outline-offset:6px}.chapter-list button{min-height:46px}.toggle{width:44px;height:28px;padding:4px}.toggle span{width:20px;height:20px}.toggle.on span{transform:translateX(16px)}
@media(max-width:1280px){.content-mode{grid-template-columns:280px minmax(0,1fr)}.studio-grid{grid-template-columns:minmax(0,1fr) 240px;gap:20px}.script-block{grid-template-columns:1fr}.script-label{flex-direction:row;padding:0}.topic-input{flex-direction:column;align-items:stretch}.topic-input .button{align-self:flex-end}.brief-bar{grid-template-columns:minmax(0,1fr) 65px 65px}.aspect-options{grid-template-columns:1fr}.content-section{padding:26px 22px}}
@media(max-width:1080px){.studio-grid{grid-template-columns:minmax(0,1fr)}.preview-area{position:static;max-width:340px;width:100%;margin:auto}.content-mode{grid-template-columns:290px minmax(0,1fr)}}
@media(max-width:760px){.content-mode{display:block}.content-mode .sidebar{position:static;height:auto;display:grid;grid-template-columns:130px minmax(0,1fr);gap:14px;padding:18px}.content-mode .sidebar nav{display:flex;justify-content:flex-end}.content-mode .nav-item{min-width:40px;min-height:44px;padding:8px}.content-mode .workspace-label{display:none}.news-rail{grid-column:1/-1;max-height:420px;margin-top:8px;border-top:1px solid var(--line);padding-top:20px}.news-filters{grid-template-columns:1fr 1fr 1fr}.news-filters>div:last-child{grid-column:auto}.candidate-list{max-height:240px;overflow:auto}.rail-empty{padding:12px 4px}.rail-empty h3{margin:10px 0}.rail-empty svg{display:none}.topic-entry{padding:24px 18px}.topic-heading{align-items:flex-start}.topic-heading small{max-width:150px;text-align:right}.topic-entry h2{font-size:25px}.page-heading p{font-size:15px}.page-heading .button{font-size:14px;min-height:44px}.topbar{padding:0 16px;font-size:13px}.topbar .button{font-size:14px;min-height:44px}.story{grid-template-columns:23px minmax(0,1fr) 36px;gap:10px}.section-heading{flex-wrap:wrap}.section-heading p{font-size:14px}.script-block textarea{font-size:17px}.two-fields{grid-template-columns:1fr}.brief-bar{grid-template-columns:1fr 60px 60px}.brief-bar .field input{font-size:17px}.topic-input .button{width:100%}.news-search input{font-size:15px}.brand{width:116px}.brand img{width:116px}.editor-footer .button{font-size:15px}.aspect-options strong{font-size:18px}.subject-upload p{font-size:13px}}

.news-sort{margin-bottom:16px}
.social-form{display:grid;gap:20px}.social-form>p{color:#73737f;line-height:1.7}.social-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:20px}.social-check{display:flex;gap:12px;align-items:center;min-height:44px}.social-source{border-top:1px solid #e4e4e9;padding-top:20px}.social-source p{font-size:14px;color:#73737f;line-height:1.7}.social-source a{display:block;margin-top:12px;line-height:1.6}.social-variants{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:24px}.social-variants button{border:1px solid #cfcfd6;border-radius:12px;padding:18px;text-align:left;background:white}.social-variants button.selected{background:#f4f4f6;border-color:#73737f}.social-variants small,.social-variants strong{display:block}.social-variants small{margin-bottom:10px;color:#73737f}.social-post{margin-bottom:24px}.topic-presets{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.topic-presets button{border:1px solid #cfcfd6;border-radius:24px;background:white;padding:10px 16px;min-height:44px;font-size:14px}.search-plan{margin-top:20px;font-size:14px;color:#73737f;overflow-wrap:anywhere}.search-plan summary{cursor:pointer;padding:10px 0}.writing-grid{grid-template-columns:minmax(0,1fr);justify-content:stretch}.writing-grid>.preview-area{display:none}.writing-grid .editor-area{min-width:0}dialog .social-form{margin-top:24px}.social-form textarea{resize:vertical}@media(max-width:720px){.social-variants{grid-template-columns:1fr}.topic-presets button{font-size:14px}.social-actions .button{flex:1}}
.research-window{display:flex;gap:8px;margin-top:20px}.research-window button{border:0;border-radius:8px;min-height:44px;padding:10px 18px;background:#f4f4f6;color:#73737f}.research-window button[aria-pressed=true]{background:#18181b;color:white}
.lovart-settings{padding:24px;background:#f7f7f9;border:1px solid #e4e4e9;border-radius:12px;display:grid;gap:20px;margin:24px 0}.image-prompt{margin-top:24px}.image-models{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.image-models button{min-height:44px;border:1px solid #cfcfd6;border-radius:8px;padding:10px 16px;background:white}.image-models button.selected{background:#18181b;color:white;border-color:#18181b}.image-job{border-top:1px solid #e4e4e9;padding:24px 0}.image-job-heading{display:flex;gap:16px;justify-content:space-between;align-items:baseline}.image-job time{font-size:13px;color:#73737f}.image-job details{margin:16px 0;color:#73737f;line-height:1.7}.image-job summary{cursor:pointer;font-size:14px}.image-job details p{white-space:pre-wrap;overflow-wrap:anywhere}.image-loading{padding:24px;background:#f4f4f6;border-radius:10px;color:#73737f}.generated-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:20px 0}.generated-grid figure{margin:0;min-width:0}.generated-grid img{width:100%;height:280px;object-fit:contain;background:#f4f4f6;border-radius:10px}.generated-grid figcaption{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.image-job pre{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}@media(max-width:720px){.generated-grid{grid-template-columns:1fr}.image-job-heading{align-items:flex-start;flex-direction:column;gap:8px}.lovart-settings{padding:16px}.generated-grid img{height:240px}}
.prompt-stages button[aria-pressed=true]{background:#18181b;color:white;border-color:#18181b}
.ops-shell,.ops-shell.content-mode{grid-template-columns:248px minmax(0,1fr)}.ops-shell .sidebar{padding:28px 16px;height:100dvh;overflow-y:auto;box-sizing:border-box}.ops-shell .workspace-label{margin:28px 12px 14px}.ops-shell .sidebar nav{display:block}.ops-shell .nav-item{display:flex;justify-content:flex-start;gap:12px;min-height:44px;font-size:15px;padding:10px 12px}.ops-shell .nav-item span{display:block}.ops-shell .nav-item small{display:none}.ops-shell .sidebar-bottom{padding-top:20px}.ops-shell .sidebar-bottom .connection{font-size:13px}.ops-shell .sidebar-bottom p{display:none}.ops-shell .page-heading{margin-bottom:28px}.ops-shell .eyebrow{letter-spacing:1.4px;font-size:12px;margin-bottom:10px}.ops-shell h1{font-size:30px}.ops-shell .topbar strong{max-width:550px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ops-shell .topbar{padding:0 36px}.operations-page{display:grid;gap:24px}.ops-panel{background:white;border:1px solid #e5e5e8;border-radius:14px;padding:28px;min-width:0}.ops-intro{display:flex;justify-content:space-between;align-items:center;gap:24px;background:#fff;border:1px solid #e5e5e8;border-radius:14px;padding:32px}.ops-intro h2{font-size:25px;margin-top:10px}.ops-intro p{color:#78787f;font-size:16px;margin-top:12px}.ops-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:8px 0 12px}.ops-stats>div{padding:12px 24px;border-left:1px solid #dcdce2}.ops-stats>div:first-child{border-left:0;padding-left:4px}.ops-stats span{display:block;color:#78787f;font-size:14px}.ops-stats strong{display:block;font-size:30px;font-weight:500;margin-top:8px;font-variant-numeric:tabular-nums}.ops-columns{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}.ops-task-row{display:grid;grid-template-columns:32px minmax(0,1fr) 66px 110px 18px;gap:14px;align-items:center;width:100%;padding:20px 0;border:0;border-top:1px solid #e5e5e8;background:white;text-align:left}.ops-task-row:hover{background:#f9f9fa}.ops-task-row strong{font-size:16px;line-height:1.65;overflow-wrap:anywhere}.ops-task-row small{display:block;color:#78787f;font-size:13px;margin-top:6px;line-height:1.6}.ops-task-row time{font-size:13px;color:#78787f}.task-kind{display:grid;place-items:center;width:32px;height:32px;background:#f4f4f6;border-radius:7px}.task-status{font-size:13px;color:#565660}.ops-next>button{display:flex;justify-content:space-between;align-items:center;gap:16px;border:0;border-top:1px solid #e5e5e8;width:100%;background:none;text-align:left;padding:20px 0;min-height:64px}.ops-next>button:first-of-type{margin-top:20px}.ops-next strong{font-size:15px}.ops-next small{display:block;color:#78787f;font-size:13px;margin-top:8px;line-height:1.7}.ops-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.ops-form>.field:first-child{grid-column:1/-1}.ops-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #e5e5e8;margin-top:28px;padding-top:22px}.ops-footer .helper{margin:0}.ops-account{display:grid;gap:20px}.ops-detail{border-top:1px solid #e5e5e8;padding-top:28px;margin-top:20px}.ops-detail>.field{margin-top:20px}.review-document{padding:24px;background:#fafafa;border:1px solid #e5e5e8;border-radius:10px;margin:24px 0}.review-document>p{white-space:pre-wrap;line-height:1.9}.review-document img{width:100%;max-height:360px;object-fit:contain;margin-top:24px}.review-document .source-link{display:flex}.ops-audit{margin-top:28px}.ops-audit>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:20px;padding:16px 0;border-top:1px solid #e5e5e8;font-size:14px}.ops-audit small{display:block;color:#78787f;font-size:12px;margin-top:6px}.ops-versions{margin-top:20px}.ops-versions summary{cursor:pointer;font-size:14px;color:#78787f}.ops-versions article{border-top:1px solid #e5e5e8;padding-top:16px;margin-top:20px}.ops-versions pre{white-space:pre-wrap;font:inherit;font-size:14px;line-height:1.8}.ops-assets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.ops-assets figure{margin:0;min-width:0}.ops-assets img{width:100%;height:220px;object-fit:contain;background:#f4f4f6;border-radius:10px}.ops-assets figcaption strong{display:block;overflow-wrap:anywhere;font-size:14px;margin-top:16px}.ops-assets small{display:block;color:#78787f;margin-top:8px}.ops-comment{border-top:1px solid #e5e5e8;padding-top:24px;margin-top:24px}.ops-comment>.field{margin-top:20px}.ops-metric-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:20px}.ops-table-scroll{max-width:100%;overflow-x:auto;margin-top:28px}.ops-table{width:100%;border-collapse:collapse;font-size:14px;min-width:650px}.ops-table th{text-align:left;color:#78787f;font-weight:400;padding:14px 12px}.ops-table td{border-top:1px solid #e5e5e8;padding:18px 12px;font-variant-numeric:tabular-nums}.ops-table td:first-child{min-width:200px}.ops-table td small{display:block;font-size:12px;color:#78787f;line-height:1.7;margin-top:8px}.ops-settings-row{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 0;border-bottom:1px solid #e5e5e8}.ops-settings-row p{color:#78787f;font-size:14px;margin-top:8px}.ops-capabilities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin-top:20px}.ops-capabilities>div{border-top:1px solid #e5e5e8;padding:20px 0}.ops-capabilities p{color:#78787f;font-size:14px;margin-top:8px}.production-tabs{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.production-tabs button{border:1px solid #cfcfd6;border-radius:8px;background:white;padding:10px 18px;min-height:44px;font-size:15px}.production-tabs button[aria-pressed=true]{background:#18181b;color:white;border-color:#18181b}.research-rail{background:white;border:1px solid #e5e5e8;border-radius:14px;min-width:0;padding:20px;position:sticky;top:24px;max-height:calc(100dvh - 48px);overflow-y:auto}.research-rail .rail-caption{font-size:17px;line-height:1.7;padding-bottom:20px}.research-rail .rail-caption small{display:block;font-size:13px;color:#78787f}.ops-shell .news-picker .section-heading{display:none}.ops-shell .research-rail .rail-empty{min-height:250px;display:grid;align-content:center;gap:16px;text-align:center}.ops-shell .research-rail .rail-empty p{font-size:14px;color:#78787f}.ops-shell .news-picker .candidate{padding:16px 0}.ops-shell .news-picker .candidate-title{font-size:14px}.ops-shell .icon-button{min-width:44px;min-height:44px}.ops-shell .story-actions .icon-button{min-width:24px}.ops-shell .sidebar .connection>span{background:#9b9ba3}.ops-shell .connection small{font-size:12px}.ops-shell .page-heading>div{min-width:0}@media(max-width:1200px){.ops-columns{grid-template-columns:1fr}.ops-next{display:none}.ops-assets{grid-template-columns:repeat(2,minmax(0,1fr))}.ops-shell .topbar{padding:0 24px}}@media(max-width:850px){.ops-shell,.ops-shell.content-mode{grid-template-columns:1fr}.ops-shell .sidebar{position:static;height:auto;padding:18px 16px;border-right:0;border-bottom:1px solid #e5e5e8}.ops-shell .brand{width:130px;margin:0 0 18px}.ops-shell .workspace-label,.ops-shell .sidebar-bottom{display:none}.ops-shell .sidebar nav{display:flex;overflow-x:auto;gap:4px;padding-bottom:2px}.ops-shell .nav-item{width:auto;flex-shrink:0;white-space:nowrap;font-size:14px;margin:0}.ops-shell .nav-item svg{width:18px}.ops-shell .topbar{height:auto;min-height:64px;padding:12px 16px;gap:16px}.ops-shell .topbar strong{max-width:180px;font-size:14px}.ops-shell .topbar .text-muted,.ops-shell .topbar .slash,.ops-shell .save-state{display:none}.ops-shell .page-heading{align-items:flex-start;gap:20px}.ops-shell .page-heading .button{font-size:14px;padding:0 16px}.ops-shell h1{font-size:26px}.ops-shell .page-heading p{font-size:14px}.research-rail{position:static;max-height:500px;order:2}.ops-form{grid-template-columns:1fr}.ops-panel{padding:22px 18px}.ops-intro{padding:24px 20px;align-items:flex-start;flex-direction:column}.ops-intro h2{font-size:22px}.ops-stats>div{padding:8px 14px}.ops-stats strong{font-size:25px}.ops-task-row{grid-template-columns:28px minmax(0,1fr) 60px;gap:12px}.ops-task-row time,.ops-task-row>svg{display:none}.ops-metric-form{grid-template-columns:repeat(2,minmax(0,1fr))}.ops-assets{grid-template-columns:1fr}.ops-capabilities{grid-template-columns:1fr}.ops-settings-row{align-items:flex-start;flex-direction:column}.ops-footer{gap:12px}.ops-footer .button{padding:0 16px}.ops-footer .helper{font-size:13px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}
.version-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:16px}.version-comparison>section{padding:20px;background:#f7f7f9;border-radius:10px;min-width:0}.version-comparison small{font-size:13px;color:#78787f}.image-brief{padding:24px 0;border-bottom:1px solid #e5e5e8}.image-brief .two-fields{margin-top:20px}.image-brief .helper{margin-top:12px}@media(max-width:720px){.version-comparison{grid-template-columns:1fr}}

.embedded-workspace.ops-shell{grid-template-columns:minmax(0,1fr)}.embedded-workspace .sidebar{display:none}.embedded-nav{display:flex;gap:4px;overflow-x:auto;background:white;border-bottom:1px solid #E4E4E9;padding:12px 24px}.embedded-nav button{background:transparent;padding:10px 14px;min-height:44px;flex-shrink:0;font-size:14px;border-radius:8px}.embedded-nav button[aria-current=page]{background:#131316;color:white}.embedded-workspace .topbar{padding:0 24px}.team-workspace{display:grid;gap:16px}.team-workspace iframe{width:100%;height:calc(100dvh - 260px);min-height:650px;border:1px solid #E4E4E9;border-radius:12px;background:#F7F7F7}@media(max-width:850px){.embedded-nav{padding:10px 16px}.team-workspace iframe{min-height:650px}}

/* Account-first workspace */
:root{--surface:#fff;--canvas:#f5f5f7;--field:#fff;--ink:#18181b;--muted:#74747d;--line:#e4e4e9;--soft:#f7f7f9;--control:#cfcfd6;color-scheme:light}
:root[data-theme=dark]{--surface:#1c1c20;--canvas:#111114;--field:#222227;--ink:#f1f1f3;--muted:#a6a6b0;--line:#34343b;--soft:#25252b;--control:#44444d;color-scheme:dark}
body,.workspace{background:var(--canvas);color:var(--ink)}.ops-shell .sidebar,.ops-shell .topbar,.editor-area,.ops-panel,.ops-intro,.topic-entry,.brief-bar,.news-drawer,.agent-drawer,dialog{background:var(--surface);color:var(--ink);border-color:var(--line)}
.ops-shell .sidebar{background:var(--surface)}.ops-shell .research-grid>.editor-area{width:100%}.research-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 28px;border-bottom:1px solid var(--line)}
.news-drawer,.agent-drawer{position:fixed;inset:0 0 0 auto;margin:0;width:min(440px,100%);max-width:100%;height:100dvh;max-height:100dvh;border-radius:0;border:0;border-left:1px solid var(--line);padding:24px;box-sizing:border-box;overflow-y:auto}.news-drawer::backdrop,.agent-drawer::backdrop{background:#10101438;backdrop-filter:blur(2px)}.news-drawer .research-rail{position:static;max-height:none;border:0;padding:0;background:transparent;overflow:visible}.news-drawer header p,.agent-drawer header p{color:var(--muted);font-size:14px;margin-top:8px}.news-drawer footer{position:sticky;bottom:-24px;background:var(--surface);padding:20px 0 0;margin-top:20px}.news-drawer footer .button{width:100%}.news-drawer .candidate-title{font-size:16px!important}.news-drawer .rail-caption{margin-top:16px}.news-drawer .rail-caption>small{font-size:14px}
.workflow-guide{display:flex;align-items:center;gap:18px;padding:16px 20px;margin-bottom:24px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.workflow-guide img{width:64px;height:64px;object-fit:contain;flex-shrink:0}.workflow-guide>div{flex:1;min-width:0}.workflow-guide p{font-size:14px;color:var(--muted);margin-top:4px}.workflow-guide .button{flex-shrink:0}.agent-intro{display:flex;align-items:center;gap:16px;margin:24px 0}.agent-intro img{width:86px;object-fit:contain}.agent-intro p{font-size:14px;color:var(--muted)}.agent-answer{white-space:pre-wrap;line-height:1.8;font-size:15px;border-block:1px solid var(--line);padding:22px 0;margin:20px 0}.agent-drawer>.field{margin-top:24px}.agent-drawer .social-actions{margin-top:16px}.agent-drawer .helper{margin-top:16px}.theme-switch span{font-size:14px}.theme-switch{border:1px solid var(--control);border-radius:999px;padding:0 12px;min-height:44px}
.dashboard-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px}.account-switcher{display:flex;gap:12px;flex-wrap:wrap}.account-switcher>button{display:flex;align-items:center;text-align:left;gap:14px;min-width:260px;padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.account-switcher>button[aria-pressed=true]{border-color:var(--control)}.account-avatar{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border-radius:50%;background:var(--soft);color:var(--ink);font-size:20px;font-weight:600}.account-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.account-switcher small{display:block;color:var(--muted);font-size:13px;margin-top:6px}.account-switcher svg{margin-left:auto}.dashboard-controls{display:flex;align-items:flex-end;gap:12px}.dashboard-controls .field{gap:8px}.account-dashboard select{min-height:44px;border:1px solid var(--control);border-radius:8px;background:var(--field);color:var(--ink);padding:10px 36px 10px 14px;font-size:14px}.account-detail>.section-heading{margin-bottom:24px}.detail-label{font-size:14px;color:var(--muted);font-weight:400;margin-left:12px}.account-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.account-kpis>button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:24px;min-height:172px}.account-kpis>button[aria-pressed=true]{border-top:1px solid var(--line);padding-top:24px;background:var(--soft)}.account-kpis>button>span{font-size:14px;color:var(--muted)}.account-kpis strong{font-size:34px;font-variant-numeric:tabular-nums;margin:16px 0}.metric-change{font-size:13px;color:var(--muted);line-height:1.7}.metric-change span{display:block;font-size:12px;color:var(--muted);margin-top:4px}.positive{color:#328563}.negative{color:#c25b54}.dashboard-detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:24px;margin-bottom:24px}.account-chart{width:100%;height:auto;margin-top:28px}.account-chart line{stroke:var(--line);stroke-width:1}.account-chart text{fill:var(--muted);font-size:12px}.trend-line{fill:none;stroke:#ff8200;stroke-width:2.5;stroke-linejoin:round}.trend-point{fill:#ff8200;stroke:var(--surface);stroke-width:2}.chart-dates{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:20px}.dashboard-empty{min-height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center;color:var(--muted)}.dashboard-empty h3{font-size:18px;color:var(--ink)}.dashboard-empty p{font-size:14px;max-width:300px}.account-health>button:not(.button){display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;text-align:left;padding:20px 0;border-bottom:1px solid var(--line);background:transparent}.account-health small{display:block;color:var(--muted);font-size:13px;margin-top:6px}.health-ok,.health-missing{font-size:12px;color:var(--muted);white-space:nowrap}.account-health>.button{margin-top:24px;width:100%}.account-health>.helper{margin-top:16px}.daily-work{padding:28px 0}.daily-work>div{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:18px}.daily-work span{font-size:14px;color:var(--muted)}.daily-work b{font-size:20px;color:var(--ink);margin-left:10px}.daily-work .button{margin-left:auto}
:root[data-theme=dark] .field input,:root[data-theme=dark] .field textarea,:root[data-theme=dark] select,:root[data-theme=dark] .social-post textarea{background:var(--field);color:var(--ink);border-color:var(--control)}
:root[data-theme=dark] .button{background:var(--surface);color:var(--ink);border-color:var(--control)}:root[data-theme=dark] .button.primary{background:#eeeef1;color:#18181b;border-color:#eeeef1}:root[data-theme=dark] .button:hover{background:#303038}:root[data-theme=dark] .button.primary:hover{background:#d5d5db;color:#18181b}
:root[data-theme=dark] .nav-item.active,:root[data-theme=dark] .production-tabs button[aria-pressed=true]{background:#eeeef1;color:#18181b}:root[data-theme=dark] .nav-item:not(.active){color:var(--muted)}:root[data-theme=dark] .nav-item:not(.active):hover{background:var(--soft)}:root[data-theme=dark] .production-tabs button,:root[data-theme=dark] .state-buttons button,:root[data-theme=dark] .topic-presets button,:root[data-theme=dark] .social-variants button{background:var(--surface);border-color:var(--control);color:var(--ink)}:root[data-theme=dark] .state-buttons button.selected,:root[data-theme=dark] .social-variants button.selected{background:var(--soft);border-color:var(--ink)}
:root[data-theme=dark] .design-note,:root[data-theme=dark] .version-comparison>section,:root[data-theme=dark] .social-source,:root[data-theme=dark] .ops-assets img{background:var(--soft);color:var(--ink);border-color:var(--line)}:root[data-theme=dark] .news-picker .candidate,:root[data-theme=dark] .candidate{background:transparent;color:var(--ink);border-color:var(--line)}:root[data-theme=dark] .candidate.selected,:root[data-theme=dark] .news-picker .candidate.selected{background:var(--soft)}:root[data-theme=dark] .research-window button{background:var(--soft);color:var(--muted)}:root[data-theme=dark] .research-window button[aria-pressed=true]{background:#eeeef1;color:#18181b}
:root[data-theme=dark] .notice{background:#302820;border-color:#58422c;color:#e7bd8e}:root[data-theme=dark] .error-banner{background:#352323;border-color:#65403e;color:#efaaa5}:root[data-theme=dark] .ops-table td,:root[data-theme=dark] .ops-footer,:root[data-theme=dark] .content-section,:root[data-theme=dark] .editor-footer,:root[data-theme=dark] .topic-note{border-color:var(--line);background:var(--surface)}
@media(max-width:1150px){.dashboard-toolbar{align-items:flex-start;flex-direction:column}.dashboard-detail-grid{grid-template-columns:1fr}.account-health{display:block}.account-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.workflow-guide{flex-wrap:wrap;gap:12px;padding:14px}.workflow-guide img{width:50px;height:50px}.workflow-guide>div{flex-basis:calc(100% - 65px)}.workflow-guide .button{margin-left:62px}.dashboard-controls{flex-wrap:wrap;align-items:center;width:100%}.dashboard-controls .field{flex:1}.account-kpis{gap:12px}.account-kpis>button{padding:18px;min-height:160px}.account-kpis strong{font-size:28px}.account-switcher,.account-switcher>button{width:100%}.dashboard-detail-grid{gap:16px}.daily-work .button{margin-left:0}.research-controls{padding:16px;flex-wrap:wrap}.news-drawer,.agent-drawer{width:min(420px,100%);padding:20px}.account-detail>.section-heading{flex-wrap:wrap}}

.brand-details{margin-top:24px}.brand-details>summary{padding:20px;border:1px solid var(--line);background:var(--surface);border-radius:10px;cursor:pointer;font-size:16px}.brand-details .ops-panel{margin-top:16px}.ops-account{padding:24px 0;border-bottom:1px solid var(--line)}.avatar-upload{margin:18px 0}.avatar-upload input{max-width:100%}.news-drawer[open],.agent-drawer[open]{animation:drawer-enter .2s cubic-bezier(.2,.7,.2,1)}@keyframes drawer-enter{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}
:root[data-theme=dark] .page-heading p,:root[data-theme=dark] .helper,:root[data-theme=dark] .empty p,:root[data-theme=dark] .rail-empty p,:root[data-theme=dark] .rail-caption small,:root[data-theme=dark] .story p,:root[data-theme=dark] .section-heading p,:root[data-theme=dark] .social-form>p,:root[data-theme=dark] .social-source p{color:var(--muted)}:root[data-theme=dark] .rail-empty h3,:root[data-theme=dark] .empty h3{color:var(--ink)}:root[data-theme=dark] .brief-bar input,:root[data-theme=dark] .script-block textarea{background:var(--field);color:var(--ink);border-color:var(--control)}

@media(max-width:850px){.ops-shell .sidebar{display:block}.ops-shell .brand{display:block;width:140px;min-width:140px;margin-bottom:18px;overflow:visible}.ops-shell .brand img{width:100%;height:auto}.ops-shell .sidebar nav{margin-top:0;width:100%;min-width:0}.ops-shell .sidebar .nav-item{min-height:44px}}

.account-avatar{position:relative;overflow:hidden}.account-avatar img{position:absolute;inset:0;object-fit:cover}

/* OpenX account workspace: neutral material, orange for selection, real observations. */
.platform-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 8px 0 20px;
}
.platform-filters {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.platform-filters button,
.platform-table-tabs button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  padding: 10px 14px;
  border: 1px solid transparent;
  border-radius: 8px;
  color: var(--muted);
  background: transparent;
  font-size: 13px;
}
.platform-filters button[aria-pressed="true"],
.platform-table-tabs button[aria-pressed="true"] {
  background: var(--soft);
  color: var(--ink);
  border-color: var(--line);
  box-shadow: inset 0 1px var(--panel-highlight);
}
.platform-filters button > span:last-child {
  color: var(--muted);
  font-variant-numeric: tabular-nums;
  font-size: 11px;
}
.platform-period {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  color: var(--muted);
  flex-shrink: 0;
}
.platform-period select {
  min-height: 44px;
  padding: 10px 32px 10px 12px;
  background: var(--surface);
  border: 1px solid var(--control);
  border-radius: 8px;
  color: var(--ink);
  font-size: 13px;
}
.platform-dashboard .insight-kpi em {
  font-size: 20px;
  font-weight: 400;
  font-style: normal;
  color: var(--muted);
}
.platform-upper-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(270px, 1fr);
  gap: 18px;
  margin-bottom: 18px;
}
.platform-bars {
  display: grid;
  gap: 14px;
}
.platform-bars button {
  background: transparent;
  border: 0;
  color: var(--ink);
  padding: 6px 0;
  text-align: left;
  width: 100%;
  min-height: 44px;
}
.platform-bar-label {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  margin-bottom: 9px;
}
.platform-bar-label > span:not(:first-child) {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.platform-bar-label strong {
  margin-left: auto;
  font-variant-numeric: tabular-nums;
}
.platform-bar-track {
  height: 5px;
  background: var(--soft);
  display: block;
  border-radius: 4px;
  overflow: hidden;
}
.platform-bar-track > span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--accent);
  opacity: 0.8;
}
.platform-bars button:hover .platform-bar-track > span {
  opacity: 1;
}
.platform-connection {
  display: flex;
  gap: 14px;
  align-items: center;
  padding: 18px 0;
  border-bottom: 1px solid var(--line);
}
.platform-connection-icon {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  border-radius: 10px;
  background: var(--soft);
}
.platform-connection strong {
  font-size: 14px;
  display: block;
}
.platform-connection small {
  display: block;
  margin-top: 5px;
  font-size: 12px;
  color: var(--muted);
}
.connection-ready,
.connection-pending {
  margin-left: auto;
  font-size: 11px;
  color: var(--muted);
  white-space: nowrap;
}
.connection-ready {
  color: #48a87d;
}
.platform-footnote {
  margin-top: 20px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.8;
}
.platform-table-tabs {
  display: flex;
  flex-shrink: 0;
}
.platform-table-scroll {
  overflow-x: auto;
}
.platform-comparison table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  text-align: right;
}
.platform-comparison th {
  color: var(--muted);
  font-size: 11px;
  font-weight: 400;
  padding: 12px;
  border-bottom: 1px solid var(--line);
}
.platform-comparison th:first-child,
.platform-comparison td:first-child {
  text-align: left;
  padding-left: 0;
}
.platform-comparison th:last-child,
.platform-comparison td:last-child {
  text-align: right;
  padding-right: 0;
}
.platform-comparison td {
  padding: 14px 12px;
  border-bottom: 1px solid var(--line);
}
.platform-comparison tbody tr:last-child td {
  border-bottom: 0;
}
.platform-account-name {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0;
  min-height: 44px;
  background: transparent;
  border: 0;
  color: var(--ink);
  text-align: left;
}
.platform-account-name .insight-avatar {
  width: 32px;
  height: 32px;
  flex-shrink: 0;
}
.platform-account-name .insight-avatar > span {
  font-size: 15px;
}
.platform-account-name strong {
  font-size: 13px;
  display: block;
  max-width: 180px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.platform-account-name small,
.platform-cell-source {
  display: block;
  font-size: 10px;
  color: var(--muted);
  margin-top: 5px;
}
.platform-comparison .text-button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 44px;
  font-size: 12px;
}
.platform-recommendations {
  margin-top: 18px;
}
.platform-insight-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 28px;
}
.platform-insight-list button {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
  padding: 20px 0;
  background: transparent;
  color: var(--ink);
  text-align: left;
  border: 0;
  border-top: 1px solid var(--line);
}
.platform-insight-list small {
  display: block;
  color: var(--muted);
  font-size: 11px;
  margin-bottom: 8px;
}
.platform-insight-list strong {
  display: block;
  font-size: 15px;
}
.platform-insight-list p {
  font-size: 12px;
  margin-top: 8px;
  color: var(--muted);
  line-height: 1.8;
}
.platform-insight-list svg {
  flex-shrink: 0;
  margin-top: 4px;
}
.platform-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 120px;
  gap: 12px;
  color: var(--muted);
  font-size: 13px;
}
.account-all-tile .account-add-icon {
  border: 0;
  border-radius: 12px;
  background: var(--soft);
  color: var(--ink);
}
@media (max-width: 1050px) {
  .platform-toolbar {
    align-items: flex-start;
    flex-direction: column;
  }
  .platform-upper-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 700px) {
  .platform-insight-list {
    grid-template-columns: 1fr;
  }
  .platform-comparison > header {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }
  .platform-filters button {
    padding: 8px 10px;
  }
}
.account-selection {
  margin-bottom: 24px;
  min-width: 0;
}
.account-rail {
  display: flex;
  gap: 12px;
  padding: 5px 4px 12px;
  margin: -5px -4px 0;
  overflow-x: auto;
  scrollbar-width: thin;
  scrollbar-color: var(--control) transparent;
  scroll-snap-type: x proximity;
}
.account-tile {
  flex: 0 0 112px;
  min-width: 0;
  min-height: 138px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 16px 10px 12px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background:
    linear-gradient(130deg, var(--panel-highlight), transparent 75%),
    var(--surface);
  color: var(--ink);
  scroll-snap-align: start;
  position: relative;
  transition:
    border-color 0.18s,
    background 0.18s,
    transform 0.18s;
}
.account-tile:hover {
  border-color: var(--control);
  transform: translateY(-2px);
}
.account-tile:active {
  transform: translateY(0) scale(0.98);
}
.account-tile[aria-pressed="true"] {
  border-color: var(--line);
  background: var(--selected-surface);
  box-shadow: none;
}
.account-tile strong {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 14px;
  line-height: 1.4;
}
.account-tile small {
  color: var(--muted);
  font-size: 11px;
  display: flex;
  align-items: center;
  gap: 3px;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 1.4;
}
.account-tile[aria-pressed="true"] small {
  color: var(--accent);
}
.account-tile-avatar {
  position: relative;
  display: block;
  margin-bottom: 3px;
}
.account-tile-avatar .insight-avatar {
  width: 48px;
  height: 48px;
}
.account-platform {
  position: absolute;
  right: -4px;
  bottom: -2px;
  width: 19px;
  height: 19px;
  border: 2px solid var(--surface);
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--ink);
  color: var(--surface);
  font-size: 10px;
}
.account-add-tile {
  border-style: dashed;
  background: var(--canvas);
  box-shadow: -10px 0 10px var(--canvas);
  position: sticky;
  right: 0;
  z-index: 1;
}
.account-add-tile:hover {
  background: var(--surface);
}
.account-add-icon {
  width: 48px;
  height: 48px;
  border: 1px dashed var(--control);
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: var(--muted);
  margin-bottom: 3px;
}
.selected-account-context {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding-top: 4px;
  font-size: 12px;
  color: var(--muted);
  min-height: 28px;
}
.selected-account-description {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 16px;
}
.selected-account-description a {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  flex-shrink: 0;
  min-height: 44px;
}
.selected-account-description > span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  border-left: 1px solid var(--line);
  padding-left: 16px;
}
.selected-account-sync {
  display: flex;
  align-items: center;
  gap: 7px;
  flex-shrink: 0;
  font-variant-numeric: tabular-nums;
}
.selected-account-sync i {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--muted);
}
.selected-account-sync .sync-ready {
  background: #48a87d;
}
.add-account-dialog {
  position: fixed;
  inset: 0;
  margin: auto;
  max-height: calc(100dvh - 32px);
  overflow-y: auto;
  width: min(480px, calc(100vw - 32px));
  max-width: none;
  padding: 28px;
  border: 1px solid var(--line);
  border-radius: 20px;
  box-shadow: 0 24px 100px #0004;
}
.add-account-dialog::backdrop {
  background: #10101480;
  backdrop-filter: blur(4px);
}
.add-account-dialog[open] {
  animation: insight-enter 0.2s ease-out;
}
.add-account-dialog header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 24px;
}
.account-dialog-mark {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: var(--soft);
  font-size: 24px;
}
.add-account-dialog h2 {
  font-size: 24px;
  margin-bottom: 12px;
}
.add-account-dialog > p {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.7;
}
.add-account-dialog .field {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 28px;
  font-size: 14px;
}
.add-account-dialog .field input {
  width: 100%;
  min-height: 48px;
  font-size: 14px;
  padding: 12px 14px;
  border: 1px solid var(--control);
  border-radius: 9px;
  background: var(--field);
  color: var(--ink);
}
.account-add-note {
  font-size: 12px;
  color: var(--muted);
  margin-top: 18px;
}
.account-add-error {
  font-size: 14px;
  color: #cd655d;
  margin-top: 12px;
}
.add-account-dialog footer {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 22px;
  padding-top: 28px;
}
.add-account-dialog .text-button {
  min-width: 44px;
  min-height: 44px;
}
@media (max-width: 700px) {
  .account-tile {
    flex-basis: 112px;
    min-height: 138px;
  }
  .account-rail {
    gap: 10px;
  }
  .selected-account-context {
    align-items: flex-start;
    flex-direction: column;
    gap: 0;
  }
  .selected-account-description {
    width: 100%;
  }
  .selected-account-sync {
    font-size: 11px;
    flex-wrap: wrap;
  }
  .add-account-dialog {
    padding: 24px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .account-tile {
    transition: none;
  }
  .account-tile:hover,
  .account-tile:active {
    transform: none;
  }
  .add-account-dialog[open] {
    animation: none;
  }
}
:root {
  --chart-secondary: #86868f;
  --chart-tertiary: #d3d3d9;
  --panel-highlight: rgba(255, 255, 255, 0.85);
  --panel-shadow: 0 3px 10px -8px #27272b33;
}
:root[data-theme="dark"] {
  --canvas: #101113;
  --surface: #1a1b1e;
  --field: #202125;
  --soft: #222328;
  --ink: #f0f0f2;
  --muted: #a1a2ab;
  --line: #2e2f35;
  --control: #34343b;
  --chart-secondary: #8a8b97;
  --chart-tertiary: #42434d;
  --panel-highlight: rgba(255, 255, 255, 0.045);
  --panel-shadow: 0 8px 22px -15px #0009;
}
.ops-shell {
  grid-template-columns: 218px minmax(0, 1fr);
}
.ops-shell .sidebar {
  padding: 28px 16px 20px;
  background: var(--surface);
}
.ops-shell .workspace-label {
  font-size: 11px;
  letter-spacing: 1.5px;
  margin: 34px 12px 16px;
}
.ops-shell .nav-item {
  font-size: 15px;
  gap: 13px;
  min-height: 48px;
  margin: 5px 0;
  padding: 10px 14px;
  border-radius: 9px;
  position: relative;
}
.ops-shell .nav-item small {
  display: none;
}
.ops-shell .nav-item.active {
  background: var(--soft);
  color: var(--ink);
  box-shadow: inset 0 1px var(--panel-highlight);
}
.ops-shell .nav-item.active:before {
  content: none;
  position: absolute;
  left: 0;
  height: 16px;
  width: 3px;
  background: var(--accent);
  border-radius: 3px;
}
.ops-shell .nav-item.active svg {
  color: var(--ink);
}
.ops-shell .topbar {
  height: 64px;
  padding: 0 32px;
  font-size: 14px;
  background: var(--canvas);
}
.overview-mode .page-heading {
  display: none;
}
.ops-shell .sidebar-bottom > p {
  display: none;
}
.ops-shell .sidebar-bottom .connection {
  font-size: 14px;
  line-height: 1.5;
}
.ops-shell .connection small {
  font-size: 12px;
}
.sidebar-tools {
  margin-top: auto;
  padding-top: 32px;
}
.sidebar-tools .nav-item {
  font-size: 14px;
}
.ops-shell .sidebar-bottom {
  margin-top: 18px;
}
.topbar .button {
  min-height: 38px;
  font-size: 14px;
}
.topbar .theme-switch {
  border: 1px solid var(--line);
  min-height: 38px;
}
.topbar .save-state {
  font-size: 13px;
}
.ops-shell .page-heading .eyebrow {
  display: none;
}
.ops-shell .page-heading h1 {
  font-size: 28px;
}
.ops-shell .page-heading {
  margin-bottom: 24px;
}
.compact-work-tabs {
  display: flex;
  gap: 5px;
  margin: -6px 0 24px;
  border-bottom: 1px solid var(--line);
  overflow: auto;
}
.compact-work-tabs button {
  flex-shrink: 0;
  min-height: 46px;
  padding: 8px 16px;
  color: var(--muted);
  background: transparent;
  border: 0;
  border-bottom: 2px solid transparent;
  font-size: 15px;
}
.compact-work-tabs button[aria-current="page"] {
  color: var(--ink);
  border-color: transparent;
  background: var(--selected-surface);
}
.insights-page {
  --radius: 14px;
  font-size: 15px;
}
.insights-heading {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  align-items: center;
  margin-bottom: 28px;
}
.insights-kicker {
  font-size: 10px;
  letter-spacing: 1.7px;
  color: var(--muted);
  font-weight: 600;
  margin-bottom: 10px;
}
.insights-heading h1 {
  font-size: 28px;
  letter-spacing: -0.8px;
  display: flex;
  align-items: baseline;
  gap: 20px;
}
.insights-heading h1 > span {
  font-size: 14px;
  color: var(--muted);
  font-weight: 400;
  letter-spacing: 0;
}
.insight-actions {
  display: flex;
  gap: 10px;
}
.insight-actions .button {
  font-size: 14px;
  min-height: 44px;
  padding: 0 18px;
}
.identity-strip {
  display: flex;
  align-items: center;
  gap: 28px;
  padding: 20px 24px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background:
    linear-gradient(120deg, var(--panel-highlight), transparent 70%),
    var(--surface);
  box-shadow: var(--panel-shadow);
  margin-bottom: 26px;
}
.identity-main {
  display: flex;
  gap: 14px;
  align-items: center;
  flex-shrink: 0;
}
.insight-avatar {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  position: relative;
  isolation: isolate;
  border-radius: 50%;
  background: var(--soft);
  overflow: hidden;
  border: 1px solid var(--line);
}
.insight-avatar > span {
  font-size: 20px;
  font-weight: 600;
}
.insight-avatar img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.identity-title {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 5px;
}
.identity-title strong {
  font-size: 18px;
}
.platform-mark {
  font-size: 14px;
  line-height: 1;
  padding: 4px;
  background: var(--soft);
  border-radius: 4px;
}
.identity-main a {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--muted);
  font-size: 13px;
}
.identity-bio {
  font-size: 14px;
  color: var(--muted);
  max-width: 430px;
  padding-left: 24px;
  border-left: 1px solid var(--line);
}
.sync-meta {
  margin-left: auto;
  text-align: right;
  min-width: 180px;
}
.sync-meta > span {
  font-size: 12px;
  display: flex;
  justify-content: flex-end;
  gap: 7px;
  align-items: center;
}
.sync-meta i,
.insights-source i {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--muted);
  display: inline-block;
}
.sync-ok i {
  background: #48a87d;
}
.sync-meta small {
  display: block;
  color: var(--muted);
  font-size: 11px;
  margin-top: 6px;
  font-variant-numeric: tabular-nums;
}
.metrics-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 14px;
  font-size: 13px;
  color: var(--muted);
}
.insight-segments {
  display: flex;
  gap: 2px;
  background: var(--surface);
  padding: 3px;
  border: 1px solid var(--line);
  border-radius: 9px;
}
.insight-segments button {
  min-height: 38px;
  border: 0;
  background: transparent;
  color: var(--muted);
  font-size: 12px;
  padding: 0 13px;
  border-radius: 6px;
}
.insight-segments button[aria-pressed="true"] {
  background: var(--soft);
  color: var(--ink);
  box-shadow: inset 0 1px var(--panel-highlight);
}
.insight-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 18px;
}
.insight-kpi {
  position: relative;
  overflow: hidden;
  text-align: left;
  padding: 20px 22px 18px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  color: var(--ink);
  background:
    linear-gradient(165deg, var(--panel-highlight), transparent 65%),
    var(--surface);
  box-shadow: var(--panel-shadow);
  transition:
    transform 0.2s,
    border-color 0.2s,
    background 0.2s;
  isolation: isolate;
}
.insight-kpi:after {
  content: "";
  position: absolute;
  inset: auto 8% -58px;
  height: 75px;
  border-radius: 50%;
  background: #88889422;
  filter: blur(22px);
  pointer-events: none;
  z-index: -1;
}
.insight-kpi:hover {
  transform: translateY(-2px);
  border-color: var(--control);
}
.insight-kpi[aria-pressed="true"] .kpi-tick {
  position: absolute;
  bottom: 0;
  left: 22px;
  width: 28px;
  height: 2px;
  background: var(--accent);
}
.kpi-featured:after {
  background: #ff820020;
}
.kpi-label {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  font-size: 13px;
  color: var(--muted);
}
.kpi-label svg {
  opacity: 0.65;
}
.insight-kpi > strong {
  font-size: 34px;
  font-weight: 500;
  letter-spacing: -1px;
  font-variant-numeric: tabular-nums;
  display: block;
  margin: 18px 0 10px;
  line-height: 1;
}
.kpi-foot {
  display: block;
  font-size: 12px;
}
.insight-kpi > small {
  font-size: 11px;
  color: var(--muted);
  display: block;
  margin-top: 6px;
}
.insight-main-grid {
  display: grid;
  grid-template-columns: minmax(0, 2.25fr) minmax(265px, 1fr);
  gap: 18px;
  margin-bottom: 18px;
}
.insight-panel {
  background:
    linear-gradient(145deg, var(--panel-highlight), transparent 46%),
    var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 22px;
  min-width: 0;
  box-shadow: var(--panel-shadow);
}
.insight-panel > header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 24px;
}
.insight-panel h2 {
  font-size: 17px;
  letter-spacing: -0.3px;
}
.insight-panel header p {
  font-size: 12px;
  color: var(--muted);
  margin-top: 5px;
}
.chart-legend {
  font-size: 12px;
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--muted);
}
.chart-legend i {
  width: 6px;
  height: 6px;
  background: var(--accent);
  border-radius: 50%;
}
.post-chart {
  height: 188px;
  position: relative;
  margin: 30px 0 0 2px;
}
.chart-grid {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  pointer-events: none;
}
.chart-grid > div {
  border-bottom: 1px solid var(--line);
  margin-left: 38px;
  position: relative;
}
.chart-grid > div > span {
  position: absolute;
  right: calc(100% + 10px);
  font-size: 10px;
  color: var(--muted);
  transform: translateY(-50%);
  font-variant-numeric: tabular-nums;
}
.post-bars {
  position: absolute;
  inset: 0 0 0 48px;
  display: flex;
  align-items: flex-end;
  gap: 7px;
}
.post-bars > button {
  height: 100%;
  min-width: 0;
  flex: 1;
  border: 0;
  padding: 0 2px;
  background: transparent;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  position: relative;
  border-radius: 6px;
}
.post-bars > button > span {
  width: 100%;
  border-radius: 5px 5px 0 0;
  background: linear-gradient(0deg, #ff820038, #ff8200b8);
  border-top: 1px solid #ffac57;
  transition:
    opacity 0.2s,
    background 0.2s;
  animation: bar-enter 0.45s ease-out;
  transform-origin: bottom;
}
.post-bars > button:hover {
  background: #ff82000b;
}
.post-bars > button.selected > span {
  background: linear-gradient(0deg, #ff820060, #ff8200);
}
.post-bars small {
  font-size: 11px;
  color: var(--muted);
  position: absolute;
  bottom: 8px;
}
.post-chart-dates {
  display: flex;
  justify-content: space-between;
  margin: 12px 0 16px 48px;
  font-size: 10px;
  color: var(--muted);
}
.chart-focus {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px 14px;
  background: var(--soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  min-height: 54px;
  font-size: 13px;
}
.chart-focus > span {
  color: var(--muted);
  font-size: 11px;
}
.chart-focus a {
  flex: 1;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.chart-focus a svg {
  display: inline;
  margin-left: 6px;
}
.chart-focus strong {
  font-size: 17px;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.chart-focus strong small {
  font-size: 10px;
  font-weight: 400;
  color: var(--muted);
  margin-left: 6px;
}
.panel-foot {
  display: flex;
  gap: 6px;
  align-items: flex-start;
  margin-top: 17px;
  font-size: 11px;
  color: var(--muted);
  line-height: 1.7;
}
.panel-foot svg {
  flex-shrink: 0;
  margin-top: 3px;
}
.subtle-number {
  font-size: 12px;
  color: var(--muted);
}
.format-donut {
  height: 156px;
  width: 156px;
  margin: 32px auto 24px;
  padding: 16px;
  border-radius: 50%;
  box-shadow: inset 0 0 0 1px #ffffff0c;
  animation: insight-enter 0.5s ease-out;
}
.format-donut > div {
  height: 100%;
  width: 100%;
  background: var(--surface);
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 0 7px var(--surface);
}
.format-donut strong {
  font-size: 31px;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}
.format-donut span {
  font-size: 11px;
  color: var(--muted);
  margin-top: 3px;
}
.format-legend {
  display: grid;
  gap: 12px;
}
.format-legend > div {
  display: grid;
  grid-template-columns: 7px 1fr 32px 42px;
  gap: 9px;
  align-items: center;
  font-size: 13px;
}
.format-legend i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--chart-tertiary);
}
.format-legend .video {
  background: var(--accent);
}
.format-legend .image {
  background: var(--chart-secondary);
}
.format-legend b {
  font-weight: 500;
  text-align: right;
}
.format-legend small {
  color: var(--muted);
  text-align: right;
  font-size: 11px;
}
.diagnosis-panel {
  margin-bottom: 18px;
}
.diagnosis-title {
  display: flex;
  align-items: center;
  gap: 12px;
}
.diagnosis-title .insights-kicker {
  font-size: 9px;
  margin-bottom: 5px;
}
.agent-orbit {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--soft);
  border: 1px solid var(--line);
}
.agent-orbit img {
  width: 38px;
  height: 38px;
  object-fit: contain;
}
.diagnosis-summary {
  font-size: 18px;
  line-height: 1.7;
  max-width: 1000px;
  font-weight: 500;
  letter-spacing: -0.25px;
  margin-bottom: 22px;
}
.insight-observations {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 24px;
  padding: 20px 0 24px;
  border-top: 1px solid var(--line);
}
.insight-observations > div {
  min-width: 0;
}
.insight-observations strong {
  font-size: 13px;
}
.insight-observations p {
  font-size: 13px;
  color: var(--muted);
  line-height: 1.8;
  margin-top: 8px;
}
.evidence-links {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
  margin-top: 10px;
}
.evidence-links a {
  display: flex;
  align-items: center;
  gap: 3px;
  font-size: 11px;
  color: var(--muted);
  border-bottom: 1px solid var(--line);
  min-height: 24px;
}
.evidence-links a:hover {
  color: var(--ink);
}
.recommendation-list article {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  gap: 20px;
  padding: 22px 0;
  border-top: 1px solid var(--line);
  align-items: start;
}
.action-number {
  font-size: 12px;
  font-variant-numeric: tabular-nums;
  color: var(--accent);
  padding-top: 5px;
}
.recommendation-list h3 {
  font-size: 16px;
}
.recommendation-list p {
  font-size: 14px;
  color: var(--muted);
  line-height: 1.8;
  margin-top: 8px;
  max-width: 860px;
}
.recommendation-list .button {
  font-size: 12px;
  min-height: 40px;
  padding: 0 15px;
}
.test-note {
  font-size: 12px;
  display: flex;
  gap: 7px;
  align-items: flex-start;
  margin-top: 10px;
  color: var(--muted);
  line-height: 1.7;
}
.test-note svg {
  flex-shrink: 0;
  margin-top: 3px;
}
.analysis-basis {
  border-top: 1px solid var(--line);
  padding-top: 17px;
  margin-top: 5px;
  color: var(--muted);
  font-size: 12px;
}
.analysis-basis summary {
  cursor: pointer;
  min-height: 32px;
}
.analysis-basis summary span {
  float: right;
  font-size: 11px;
}
.analysis-basis p {
  margin-top: 8px;
}
.insight-bottom-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(270px, 1fr);
  gap: 18px;
}
.content-rank {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr) auto 15px;
  gap: 14px;
  align-items: center;
  padding: 18px 0;
  border-top: 1px solid var(--line);
  transition: background 0.2s;
}
.content-rank > span {
  font-size: 11px;
  color: var(--muted);
}
.content-rank strong {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.65;
  font-size: 14px;
  font-weight: 500;
  white-space: pre-line;
}
.content-rank small {
  font-size: 11px;
  color: var(--muted);
  display: block;
  margin-top: 6px;
}
.content-rank b {
  text-align: right;
  font-size: 17px;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}
.content-rank > b > small {
  font-size: 10px;
}
.content-rank > svg {
  color: var(--muted);
}
.content-rank:hover {
  background: var(--soft);
}
.all-posts {
  min-height: 40px;
  margin-top: 6px;
}
.next-work > button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 82px;
  width: 100%;
  padding: 17px 0;
  text-align: left;
  border: 0;
  border-top: 1px solid var(--line);
  background: transparent;
  color: var(--ink);
}
.next-work strong {
  font-size: 14px;
  font-weight: 500;
}
.next-work small {
  display: block;
  color: var(--muted);
  font-size: 12px;
  margin-top: 7px;
}
.next-work > button svg {
  color: var(--muted);
  transition: transform 0.2s;
}
.next-work > button:hover svg {
  transform: translateX(3px);
  color: var(--accent);
}
.insights-source {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin-top: 18px;
  color: var(--muted);
  font-size: 11px;
  align-items: center;
}
.insights-source > span {
  display: flex;
  align-items: center;
  gap: 5px;
}
.insights-source .text-button {
  font-size: 11px;
}
.chart-no-data {
  min-height: 300px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 12px;
  text-align: center;
  color: var(--muted);
  font-size: 13px;
}
.chart-no-data strong {
  color: var(--ink);
  font-size: 16px;
}
.first-analysis {
  min-height: 380px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 48px;
}
.first-analysis > img {
  width: 180px;
}
.first-analysis h2 {
  font-size: 24px;
  margin: 16px 0;
}
.first-analysis p {
  font-size: 15px;
  color: var(--muted);
  max-width: 480px;
}
.first-analysis .button {
  margin-top: 24px;
}
.first-analysis small {
  display: block;
  margin-top: 14px;
  font-size: 12px;
  color: var(--muted);
}
.insight-error {
  display: flex;
  gap: 20px;
  justify-content: space-between;
  align-items: center;
  padding: 14px 18px;
  border: 1px solid #ac685855;
  background: #ac68580c;
  color: var(--ink);
  border-radius: 10px;
  margin: 16px 0;
  font-size: 14px;
}
.analysis-unavailable {
  display: flex;
  gap: 20px;
  align-items: center;
  justify-content: space-between;
  padding: 20px 0;
  font-size: 14px;
  color: var(--muted);
}
.analysis-progress {
  padding: 12px 16px;
  margin: -10px 0 20px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface);
  display: flex;
  align-items: center;
  gap: 12px;
}
.analysis-progress > span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--accent);
  animation: soft-pulse 1.5s infinite;
}
.analysis-progress p {
  font-size: 13px;
}
.analysis-progress small {
  color: var(--muted);
  margin-left: 12px;
  font-size: 12px;
}
.is-spinning {
  animation: rotate 1.2s linear infinite;
}
.insight-loading {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 18px;
}
.insight-loading > div {
  height: 200px;
  border-radius: 14px;
  background: var(--soft);
  animation: soft-pulse 1.5s infinite;
}
.insight-loading > div:first-child {
  grid-column: 1/-1;
  height: 140px;
}
.assistant-launcher {
  position: fixed;
  right: 24px;
  bottom: 22px;
  z-index: 25;
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 48px;
  padding: 4px 16px 4px 5px;
  border: 1px solid var(--control);
  border-radius: 99px;
  background: var(--surface);
  color: var(--ink);
  box-shadow: 0 5px 20px #0002;
  font-size: 13px;
}
.assistant-launcher img {
  height: 38px;
  width: 38px;
  object-fit: contain;
}
.assistant-launcher:hover {
  transform: translateY(-2px);
}
@keyframes insight-enter {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes bar-enter {
  from {
    transform: scaleY(0.05);
    opacity: 0.25;
  }
  to {
    transform: scaleY(1);
    opacity: 1;
  }
}
@keyframes rotate {
  to {
    transform: rotate(360deg);
  }
}
@keyframes soft-pulse {
  50% {
    opacity: 0.5;
  }
}
@media (min-width: 1600px) {
  .insight-kpi {
    padding: 24px;
  }
  .post-chart {
    height: 224px;
  }
  .format-donut {
    width: 174px;
    height: 174px;
    margin: 32px auto;
  }
  .insight-panel {
    padding: 26px;
  }
  .identity-strip {
    padding: 22px 26px;
  }
}
@media (max-width: 1150px) {
  .identity-bio {
    display: none;
  }
  .insights-heading h1 > span {
    display: none;
  }
  .insight-kpis {
    gap: 10px;
  }
  .insight-kpi {
    padding: 18px 16px;
  }
  .insight-kpi > strong {
    font-size: 30px;
  }
  .insight-main-grid {
    grid-template-columns: minmax(0, 1.7fr) 240px;
  }
  .format-donut {
    width: 140px;
    height: 140px;
  }
  .insight-panel {
    padding: 20px;
  }
  .insight-observations {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .insight-bottom-grid {
    grid-template-columns: minmax(0, 1.5fr) 260px;
  }
}
@media (max-width: 850px) {
  .ops-shell {
    display: block;
  }
  .ops-shell .sidebar {
    position: static;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 20px;
    height: auto;
    padding: 16px 20px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
    flex-wrap: wrap;
  }
  .ops-shell .brand {
    width: 120px;
    min-width: 120px;
    margin: 0;
  }
  .ops-shell .sidebar nav {
    display: flex;
    gap: 5px;
    flex: 1;
    width: auto;
    justify-content: flex-end;
  }
  .ops-shell .sidebar .nav-item {
    width: auto;
    min-width: 44px;
    margin: 0;
    padding: 10px;
  }
  .ops-shell .nav-item span,
  .ops-shell .workspace-label,
  .ops-shell .sidebar-bottom,
  .ops-shell .sidebar-tools {
    display: none;
  }
  .ops-shell .topbar {
    padding: 0 20px;
  }
  .ops-shell .topbar .save-state {
    display: none;
  }
  .insight-main-grid {
    grid-template-columns: minmax(0, 1.6fr) minmax(220px, 1fr);
  }
  .insight-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .insight-bottom-grid {
    grid-template-columns: 1fr;
  }
  .insights-heading {
    margin-bottom: 20px;
  }
  .insights-heading h1 {
    font-size: 25px;
  }
  .insight-actions .button {
    font-size: 12px;
    padding: 0 13px;
  }
  .recommendation-list article {
    grid-template-columns: 24px minmax(0, 1fr);
    gap: 14px;
  }
  .recommendation-list article > .button {
    grid-column: 2;
    justify-self: start;
  }
  .insights-source {
    align-items: flex-start;
  }
  .insights-source > span {
    flex-wrap: wrap;
  }
  .insight-observations {
    grid-template-columns: 1fr;
  }
  .insight-kpi > strong {
    font-size: 32px;
  }
}
@media (max-width: 620px) {
  .ops-shell .topbar {
    font-size: 12px;
    gap: 10px;
    height: 56px;
    padding: 0 16px;
  }
  .topbar .slash,
  .topbar strong {
    display: none;
  }
  .topbar .button {
    padding: 0 12px;
  }
  .ops-shell .sidebar {
    gap: 12px;
    padding: 16px;
  }
  .ops-shell .sidebar nav {
    gap: 2px;
    min-width: 0;
  }
  .insights-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 18px;
  }
  .insight-actions {
    width: 100%;
  }
  .insight-actions .button {
    flex: 1;
    font-size: 13px;
  }
  .identity-strip {
    padding: 16px;
    gap: 14px;
    align-items: flex-start;
    flex-wrap: wrap;
    margin-bottom: 20px;
  }
  .identity-main {
    min-width: 0;
  }
  .sync-meta {
    margin-left: 0;
    text-align: left;
    min-width: 0;
    width: 100%;
    padding-top: 12px;
    border-top: 1px solid var(--line);
  }
  .sync-meta > span {
    justify-content: flex-start;
  }
  .sync-meta small {
    font-size: 11px;
  }
  .metrics-toolbar {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }
  .insight-segments {
    width: 100%;
  }
  .insight-segments button {
    flex: 1;
    min-height: 40px;
  }
  .insight-main-grid {
    grid-template-columns: 1fr;
  }
  .post-chart {
    height: 180px;
  }
  .post-bars {
    gap: 4px;
  }
  .post-bars > button {
    padding: 0;
  }
  .insight-kpi {
    padding: 18px 15px;
  }
  .kpi-label {
    font-size: 12px;
  }
  .kpi-foot {
    font-size: 11px;
    line-height: 1.5;
  }
  .insight-kpi > small {
    font-size: 10px;
  }
  .kpi-label svg {
    width: 15px;
  }
  .composition-panel {
    display: grid;
    grid-template-columns: 130px 1fr;
    column-gap: 22px;
    align-items: center;
  }
  .composition-panel > header {
    grid-column: 1/-1;
  }
  .format-donut {
    width: 120px;
    height: 120px;
    padding: 13px;
    margin: 0;
  }
  .composition-panel > .panel-foot {
    grid-column: 1/-1;
  }
  .insight-panel > header {
    gap: 14px;
  }
  .insight-panel h2 {
    font-size: 16px;
  }
  .insight-panel .text-button {
    font-size: 12px;
  }
  .diagnosis-summary {
    font-size: 17px;
  }
  .insight-observations p {
    font-size: 14px;
  }
  .recommendation-list p {
    font-size: 14px;
  }
  .analysis-basis summary span {
    float: none;
    display: block;
    margin-top: 8px;
  }
  .insights-source {
    flex-direction: column;
    gap: 8px;
  }
  .first-analysis {
    flex-direction: column;
    gap: 18px;
    text-align: center;
    min-height: 460px;
  }
  .first-analysis > img {
    width: 120px;
  }
  .first-analysis h2 {
    font-size: 21px;
  }
  .analysis-progress small {
    display: block;
    margin: 4px 0 0;
  }
  .content-rank {
    gap: 10px;
    grid-template-columns: 18px minmax(0, 1fr) auto;
  }
  .content-rank > svg {
    display: none;
  }
  .chart-focus {
    gap: 8px;
  }
  .chart-focus a {
    font-size: 12px;
  }
  .chart-focus > span {
    display: none;
  }
  .chart-focus strong {
    font-size: 15px;
  }
  .assistant-launcher {
    bottom: 16px;
    right: 16px;
  }
  .insight-error {
    align-items: flex-start;
    flex-direction: column;
  }
  .analysis-unavailable {
    flex-direction: column;
    align-items: flex-start;
  }
}
:root[data-theme="dark"] .ops-shell .nav-item.active {
  background: #292a2f;
  color: var(--ink);
  box-shadow: inset 0 1px #ffffff08;
}
.overview-mode .topbar .save-state,
.overview-mode .topbar .button {
  display: none;
}
.mobile-settings {
  display: none;
}
.ops-task-row,
.review-document {
  background: var(--surface);
  color: var(--ink);
}
.ops-task-row:hover {
  background: var(--soft);
}
.ops-task-row,
.ops-settings-row,
.ops-capabilities > div,
.ops-comment,
.ops-audit > div,
.ops-detail,
.review-document {
  border-color: var(--line);
}
@media (max-width: 850px) {
  .mobile-settings {
    display: inline-flex;
    min-height: 44px;
    min-width: 44px;
  }
}
.insight-panel header p,
.kpi-foot,
.format-legend small,
.identity-main a {
  font-size: 13px;
}
.kpi-label {
  font-size: 14px;
}
.insight-kpi > small,
.panel-foot,
.sync-meta small,
.insights-source,
.insights-source .text-button {
  font-size: 12px;
}
.insight-panel h2 {
  font-size: 18px;
}
.evidence-links a {
  min-height: 32px;
  font-size: 12px;
}
.insight-segments button {
  min-height: 44px;
}
.insight-panel .button {
  min-height: 44px;
}
.chart-focus {
  min-height: 58px;
}
.insights-page a:focus-visible {
  outline-offset: 2px;
}
.recommendation-list p {
  max-width: 840px;
}
.ops-shell .sidebar nav .nav-item svg {
  flex-shrink: 0;
}
@media (max-width: 620px) {
  .kpi-label {
    font-size: 13px;
  }
  .kpi-foot {
    font-size: 12px;
  }
  .insight-kpi > small {
    font-size: 11px;
  }
  .insight-panel h2 {
    font-size: 17px;
  }
  .ops-shell .sidebar .brand {
    width: 108px;
    min-width: 108px;
  }
  .ops-shell .sidebar .brand img {
    width: 100%;
  }
  .ops-shell .sidebar nav .nav-item {
    min-width: 44px;
    padding: 10px;
  }
  .ops-shell .sidebar nav {
    overflow-x: auto;
    justify-content: flex-start;
    flex: 1;
  }
  .insights-heading .insight-actions .button {
    min-height: 44px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .insights-page,
  .post-bars > button > span,
  .format-donut,
  .is-spinning,
  .analysis-progress > span,
  .insight-loading > div {
    animation: none;
  }
  .insight-kpi,
  .next-work > button svg,
  .assistant-launcher {
    transition: none;
  }
  .insight-kpi:hover,
  .assistant-launcher:hover {
    transform: none;
  }
}

/* Desktop accounts occupy a fixed viewport rail; only its list scrolls. */
.account-dashboard-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 26px;
  align-items: start;
}
.account-dashboard-main {
  grid-column: 1;
  grid-row: 1;
  min-width: 0;
  container-type: inline-size;
  container-name: account-content;
}
.account-sidebar-slot {
  grid-column: 2;
  grid-row: 1;
  min-width: 0;
}
.account-sidebar-actions { display: none; }
@media (min-width: 1200px) {
  .overview-mode { --account-header-height: 64px; }
  .overview-mode.embedded-workspace { --account-header-height: 133px; }
  .overview-mode.embedded-workspace .embedded-nav {
    position: sticky;
    top: 0;
    z-index: 4;
    height: 69px;
    box-sizing: border-box;
  }
  .overview-mode .topbar {
    position: sticky;
    top: 0;
    z-index: 4;
  }
  .overview-mode.embedded-workspace .topbar { top: 69px; }
  .insights-heading {
    padding-right: 306px;
  }
  .account-actions-compact { display: none; }
  .account-sidebar-slot {
    position: fixed;
    inset: var(--account-header-height) 0 0 auto;
    z-index: 3;
    width: 320px;
    height: calc(100dvh - var(--account-header-height));
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding: 24px 20px;
    border-left: 1px solid var(--line);
    background: var(--canvas);
    overflow: hidden;
  }
  .account-sidebar-actions {
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    gap: 8px;
    flex: none;
  }
  .account-sidebar-actions .button {
    min-width: 0;
    padding-inline: 12px;
    gap: 7px;
    font-size: 13px;
  }
}
.account-sidebar {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: hidden;
}
.account-sidebar-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 0 0 16px;
}
.account-sidebar-heading h2 {
  display: flex;
  align-items: baseline;
  gap: 8px;
  font-size: 16px;
  font-weight: 600;
  color: var(--ink);
}
.account-sidebar-heading h2 span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 400;
  font-variant-numeric: tabular-nums;
}
.account-sidebar-heading p {
  font-size: 12px;
  color: var(--muted);
  margin-top: 5px;
}
.account-sidebar-search {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 12px;
  padding: 0 10px;
  min-height: 44px;
  border: 1px solid var(--control);
  border-radius: 8px;
  background: var(--field);
  color: var(--muted);
}
.account-sidebar-search:focus-within {
  outline: 1px solid var(--control-focus);
  outline-offset: 2px;
}
.account-sidebar-search input {
  width: 100%;
  min-width: 0;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  color: var(--ink);
  font: inherit;
  font-size: 13px;
  padding: 10px 0 !important;
  min-height: 42px;
}
.account-sidebar .account-rail,
.account-picker-dialog .account-rail {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0;
  padding: 0 0 8px;
  overflow-y: auto;
  overflow-x: hidden;
  scroll-snap-type: none;
  max-height: calc(100dvh - 320px);
  scrollbar-width: thin;
}
.account-sidebar .account-tile,
.account-picker-dialog .account-tile {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 11px;
  width: 100%;
  flex: 0 0 auto;
  min-height: 76px;
  padding: 10px 12px;
  text-align: left;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  transform: none;
  transition: background 160ms ease;
}
.account-sidebar .account-tile:hover,
.account-picker-dialog .account-tile:hover {
  background: var(--soft);
}
.account-sidebar .account-tile[aria-pressed="true"],
.account-picker-dialog .account-tile[aria-pressed="true"] {
  background: var(--soft);
}
.account-sidebar .account-tile[aria-pressed="true"]::before,
.account-picker-dialog .account-tile[aria-pressed="true"]::before {
  content: "";
  position: absolute;
  inset: 12px auto 12px 0;
  width: 2px;
  background: var(--accent);
  pointer-events: none;
}
.account-sidebar .account-rail .account-tile:focus-visible,
.account-picker-dialog .account-rail .account-tile:focus-visible {
  outline: 2px solid var(--focus-ring);
  outline-offset: -2px;
}
.account-sidebar .account-tile-avatar,
.account-picker-dialog .account-tile-avatar {
  margin: 0;
  flex: 0 0 40px;
}
.account-sidebar .account-tile-avatar .insight-avatar,
.account-picker-dialog .account-tile-avatar .insight-avatar {
  width: 40px;
  height: 40px;
}
.account-sidebar .account-add-icon,
.account-picker-dialog .account-add-icon {
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  margin: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.account-tile-copy {
  display: flex;
  flex-direction: column;
  min-width: 0;
  flex: 1;
  gap: 3px;
}
.account-tile-copy strong {
  font-size: 13px;
  font-weight: 600;
}
.account-sidebar .account-tile-copy small,
.account-picker-dialog .account-tile-copy small {
  display: block;
  color: var(--muted);
  font-size: 11px;
}
.account-row-status {
  display: flex;
  align-items: center;
  gap: 5px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.5;
  margin-top: 2px;
}
.account-row-status i {
  display: block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: currentColor;
}
.account-row-status.status-ready i {
  background: var(--status-ok);
}
.account-row-status.status-error {
  color: var(--status-error);
}
.account-selection-check {
  flex-shrink: 0;
  color: var(--accent);
}
.account-sidebar .account-all-tile,
.account-picker-dialog .account-all-tile {
  min-height: 68px;
}
.account-sidebar-footer {
  padding: 12px 0 0;
  border-top: 1px solid var(--line);
}
.account-sidebar-footer .account-add-tile {
  position: static;
  width: 100%;
  min-height: 44px;
  padding: 10px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--ink);
  transform: none;
}
.account-sidebar-footer .account-add-tile strong {
  font-size: 13px;
  font-weight: 500;
}
.account-sidebar-footer .account-add-tile:hover { background: var(--soft); }
.account-sidebar-footer .account-add-tile:focus-visible {
  outline: 2px solid var(--focus-ring);
  outline-offset: -2px;
}
.account-sidebar-footer .account-add-tile > span {
  font-size: 10px;
  color: var(--muted);
}
.account-sidebar-empty {
  padding: 20px 12px;
  font-size: 13px;
  line-height: 1.7;
  color: var(--muted);
}
.account-dashboard-main .account-selection {
  margin-bottom: 22px;
}
.account-dashboard-main .selected-account-context {
  flex-wrap: wrap;
  gap: 2px 18px;
  padding-top: 0;
}
.account-dashboard-main .selected-account-sync {
  min-height: 28px;
}
.account-dashboard-main .selected-account-description {
  max-width: 100%;
}
.account-dashboard-main .selected-account-description > span {
  white-space: normal;
}
.account-picker-trigger {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 70px;
  background: transparent;
  color: var(--ink);
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  padding: 12px 0;
  text-align: left;
}
.account-picker-trigger .insight-avatar {
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
}
.account-picker-trigger > span:nth-child(2) {
  display: grid;
  gap: 2px;
  min-width: 0;
}
.account-picker-trigger small {
  font-size: 11px;
  color: var(--muted);
}
.account-picker-trigger strong {
  font-size: 14px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.account-picker-trigger-label {
  margin-left: auto;
  color: var(--muted);
  font-size: 13px;
}
dialog.account-picker-dialog {
  position: fixed;
  inset: 0 0 0 auto;
  margin: 0 !important;
  width: min(360px, 100vw);
  max-width: 100vw;
  height: 100dvh;
  max-height: 100dvh;
  border: 0;
  border-left: 1px solid var(--line);
  border-radius: 0;
  padding: 0;
  background: var(--surface);
  color: var(--ink);
  box-shadow: -16px 0 60px #0002;
}
dialog.account-picker-dialog[open] {
  display: flex;
  flex-direction: column;
  animation: account-panel-enter 180ms ease-out;
}
.account-picker-dialog::backdrop {
  background: #10101488;
}
.account-picker-dialog .account-sidebar-heading {
  padding: 24px 20px 18px;
}
.account-picker-dialog .account-sidebar-search {
  margin: 0 18px 12px;
  flex-shrink: 0;
}
.account-picker-dialog .account-rail {
  max-height: none;
  flex: 1;
  padding: 0 12px 14px;
}
.account-picker-dialog .account-sidebar-footer {
  padding: 16px 20px max(20px, env(safe-area-inset-bottom));
}
.account-picker-dialog .icon-button {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
}
@keyframes account-panel-enter {
  from {
    opacity: 0;
    transform: translateX(18px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@container account-content (max-width: 980px) {
  .insight-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .insight-main-grid,
  .insight-bottom-grid,
  .platform-upper-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .composition-panel {
    display: grid;
    grid-template-columns: 190px minmax(0, 1fr);
    gap: 0 24px;
    align-items: center;
  }
  .composition-panel > header {
    grid-column: 1 / -1;
  }
  .composition-panel .format-donut {
    margin: 4px auto 24px;
  }
  .composition-panel .panel-foot {
    grid-column: 1 / -1;
  }
  .insight-observations {
    grid-template-columns: minmax(0, 1fr);
  }
}
@container account-content (max-width: 580px) {
  .composition-panel {
    display: block;
  }
  .platform-toolbar {
    align-items: stretch;
    flex-direction: column;
  }
  .platform-period {
    flex-wrap: wrap;
  }
  .platform-period select {
    max-width: 100%;
  }
}
@media (max-width: 1199px) {
  .account-dashboard-body {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }
  .account-sidebar-slot {
    position: static;
    width: 100%;
  }
  .account-dashboard-main {
    width: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  dialog.account-picker-dialog[open] {
    animation: none;
  }
  .account-sidebar .account-tile,
  .account-picker-dialog .account-tile {
    transition: none;
  }
}

/* Shared semantic colors: every workspace control follows the active theme. */
:root {
  --muted: #676771;
  --control-hover: #aaaab4;
  --action-bg: #18181b;
  --action-ink: #fff;
  --status-error: #a23731;
  --status-ok: #246348;
  --status-error-bg: #fff1f0;
  --status-ok-bg: #edf7f0;
  --status-info: #245c98;
  --status-info-bg: #eef4fb;
  --status-note-bg: #fff6e9;
  --status-note-ink: #805009;
  --focus-ring: #bd5c00;
}
/* Plan task directory: one flat list, shared page margins, no nested cards. */
:root[data-theme] .ops-plan-panel { padding:0; border:0; border-radius:0; background:transparent; }
.ops-plan-views { display:flex; flex-wrap:wrap; gap:24px; border-bottom:1px solid var(--line); margin-bottom:24px; }
.ops-plan-views button { display:flex; align-items:center; gap:8px; min-height:44px; background:none; border:0; border-bottom:2px solid transparent; padding:10px 0; font-size:15px; color:var(--muted); }
.ops-plan-views button[aria-current=page] { color:var(--ink); border-bottom-color:var(--ink); }
.ops-plan-views button span { font-size:13px; font-variant-numeric:tabular-nums; color:var(--muted); }
.ops-plan-filters { display:grid; grid-template-columns:minmax(180px,1.6fr) minmax(140px,1fr) minmax(120px,.8fr) auto; gap:20px; align-items:end; }
.ops-plan-search,.ops-plan-filter { display:flex; flex-direction:column; gap:8px; min-width:0; }
.ops-plan-search>span:first-child,.ops-plan-filter>span { font-size:14px; font-weight:500; color:var(--ink); }
.ops-plan-search-control { display:flex; align-items:center; gap:10px; min-height:44px; padding:0 12px; border:1px solid var(--control); border-radius:7px; background:var(--field); }
.ops-plan-search-control svg { flex:none; color:var(--muted); }
:root[data-theme] .ops-plan-search-control input { border:0; background:transparent; color:var(--ink); padding:8px 0; min-height:44px; min-width:0; width:100%; font-size:15px; }
.ops-plan-filter select { width:100%; min-height:46px; font-size:15px; padding:8px 38px 8px 12px; }
.ops-plan-panel :is(input,textarea,select),.ops-plan-task-open { box-sizing:border-box; }
.ops-plan-search-control:focus-within { outline:1px solid var(--control-hover); outline-offset:2px; }
:root[data-theme] .ops-plan-search-control input:focus-visible { outline:none; }
.ops-plan-clear { min-height:46px; font-size:14px; }
.ops-plan-result-summary { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; font-size:13px; color:var(--muted); margin:20px 0 12px; line-height:1.7; }
.ops-plan-capacity { color:var(--status-note-ink); font-size:14px; line-height:1.7; padding:12px 0 20px; }
:root[data-theme] .ops-plan-panel .ops-task-row { grid-template-columns:32px minmax(0,1fr) 110px 148px 18px; background:transparent; border-color:var(--line); min-height:96px; padding:18px 8px; }
:root[data-theme] .ops-plan-panel .ops-task-row:hover { background:var(--soft); }
.ops-plan-panel .ops-task-row[aria-current=true] { background:var(--soft); box-shadow:none; }
.ops-plan-panel .ops-task-row time { overflow-wrap:anywhere; line-height:1.7; }
.ops-plan-empty { padding:32px 0; border-top:1px solid var(--line); }
.ops-plan-empty h3 { font-size:18px; }
.ops-plan-empty p { font-size:15px; color:var(--muted); margin-top:8px; }
.ops-plan-pagination { display:flex; justify-content:flex-end; align-items:center; gap:16px; padding-top:24px; border-top:1px solid var(--line); }
.ops-plan-pagination .button { min-height:44px; font-size:14px; }
.ops-plan-pagination span { color:var(--muted); font-size:13px; font-variant-numeric:tabular-nums; }
.ops-plan-current { border-top:1px solid var(--line); margin-top:32px; }
.ops-plan-current>summary { cursor:pointer; min-height:44px; display:flex; align-items:center; gap:8px; color:var(--muted); font-size:15px; padding:8px 0; overflow-wrap:anywhere; }
.ops-plan-current>summary:before { content:'›'; font-size:20px; }
.ops-plan-current[open]>summary:before { transform:rotate(90deg); }
.ops-plan-details.ops-detail { border:0; margin:0; padding:24px 0 0; }
@media(max-width:1199px) { .ops-plan-filters { grid-template-columns:1fr 1fr; } .ops-plan-clear { justify-self:start; } :root[data-theme] .ops-plan-panel .ops-task-row { grid-template-columns:32px minmax(0,1fr) 96px; } .ops-plan-panel .ops-task-row time { display:block; grid-column:2; } .ops-plan-panel .ops-task-row>svg { display:none; } }
@media(max-width:767px) { .ops-plan-filters { grid-template-columns:1fr; gap:16px; } .ops-plan-clear { width:100%; } .ops-plan-views { gap:20px; } :root[data-theme] .ops-plan-panel .ops-task-row { grid-template-columns:28px minmax(0,1fr); gap:8px 12px; } .ops-plan-panel .ops-task-row .task-status { grid-column:2; } .ops-plan-panel .ops-task-row time { grid-column:2; } .ops-plan-pagination { justify-content:space-between; gap:8px; } .ops-plan-pagination .button { padding:0 14px; } }
:root[data-theme] .ops-plan-panel .ops-plan-task-row { box-sizing:border-box; grid-template-columns:minmax(0,1fr) 160px; padding:8px; gap:24px; }
:root[data-theme] .ops-plan-panel .ops-plan-task-row[data-has-actions=false] { grid-template-columns:minmax(0,1fr); }
.ops-plan-task-open { display:grid; grid-template-columns:32px minmax(0,1fr) 90px 148px 18px; align-items:center; gap:14px; text-align:left; min-width:0; min-height:80px; width:100%; padding:10px 0; border:0; background:transparent; color:var(--ink); }
.ops-plan-task-open>span:nth-child(2) { min-width:0; }
.ops-plan-task-actions { display:flex; flex-direction:column; align-items:flex-end; gap:8px; min-width:0; padding:8px 0; }
.ops-plan-task-actions .button { min-height:44px; font-size:14px; }
.ops-plan-task-actions small { text-align:right; margin:0; font-size:12px; line-height:1.7; color:var(--muted); overflow-wrap:anywhere; }
dialog.ops-dialog { box-sizing:border-box; width:min(576px,calc(100vw - 32px)); max-width:none; max-height:calc(100dvh - 32px); padding:24px; overflow-y:auto; overflow-x:clip; background:var(--surface); color:var(--ink); border-color:var(--line); }
.ops-dialog>header.section-heading { display:grid; grid-template-columns:minmax(0,1fr) 44px; gap:16px; align-items:start; position:sticky; top:0; z-index:1; background:var(--surface); padding-block:4px; margin:0 0 24px; }
.ops-dialog>header h2 { font-size:21px; line-height:1.5; overflow-wrap:anywhere; }
.ops-dialog>header .icon-button { min-width:44px; min-height:44px; width:44px; height:44px; }
.ops-dialog .field :is(input,textarea) { box-sizing:border-box; min-height:44px; }
.ops-archive-summary strong { display:block; font-size:18px; line-height:1.6; overflow-wrap:anywhere; }
.ops-archive-summary p { font-size:14px; color:var(--muted); margin-top:8px; }
:root[data-theme] .ops-archive-form .ops-archive-warning { background:var(--status-note-bg); border:0;border-radius:8px; color:var(--status-note-ink); padding:12px 16px; font-size:14px; line-height:1.7; }
.ops-archive-warning .button { margin-top:12px; min-height:44px; }
.ops-archive-form .social-actions .button { min-height:44px; }
.ops-archive-history { border-top:1px solid var(--line); }
.ops-archive-history summary { min-height:44px; display:flex; align-items:center; cursor:pointer; font-size:14px; color:var(--muted); }
.ops-archive-history ol { list-style:none; margin:0; padding:0; }
.ops-archive-history li { border-top:1px solid var(--line); padding:16px 0; font-size:14px; }
.ops-archive-history li>div { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.ops-archive-history time { font-size:12px; color:var(--muted); }
.ops-archive-history p { margin-top:8px; overflow-wrap:anywhere; white-space:pre-wrap; }
@media(max-width:1199px) {
  :root[data-theme] .ops-plan-panel .ops-plan-task-row { grid-template-columns:minmax(0,1fr) 140px; gap:16px; }
  .ops-plan-task-open { grid-template-columns:32px minmax(0,1fr) 80px; }
  .ops-plan-task-open>svg { display:none; }
  :root[data-theme] .ops-plan-panel .ops-plan-task-open time { display:block; grid-column:2; }
}
@media(max-width:767px) {
  :root[data-theme] .ops-plan-panel .ops-plan-task-row { grid-template-columns:minmax(0,1fr); gap:0; padding:12px 8px; }
  .ops-plan-task-open { grid-template-columns:28px minmax(0,1fr); gap:8px 12px; }
  .ops-plan-task-open .task-status { grid-column:2; }
  .ops-plan-task-actions { flex-direction:row; align-items:center; gap:12px; margin-left:40px; }
  .ops-plan-task-actions small { text-align:left; }
  dialog.ops-dialog { padding:16px; }
  .ops-dialog>header h2 { font-size:20px; }
  .ops-archive-form .social-actions { display:flex; flex-wrap:wrap; gap:12px; }
}
:root[data-theme="dark"] {
  --control: #34343b;
  --control-hover: #5c5c66;
  --action-bg: #ededf0;
  --action-ink: #18181b;
  --status-error: #f3a7a1;
  --status-ok: #81cda9;
  --status-error-bg: #302121;
  --status-ok-bg: #1b2c23;
  --status-info: #9ac4f4;
  --status-info-bg: #1d2938;
  --status-note-bg: #2b251d;
  --status-note-ink: #efc28c;
  --focus-ring: #ff9c38;
}
:root[data-theme]
  :is(
    input:not([type="range"]):not([type="checkbox"]):not([type="radio"]),
    textarea,
    select
  ) {
  background: var(--field);
  color: var(--ink);
  border-color: var(--control);
}
:root[data-theme] :is(input, textarea)::placeholder {
  color: var(--muted);
  opacity: 1;
}
:root[data-theme] select {
  padding-right: 38px;
  min-height: 44px;
  border: 1px solid var(--control);
  border-radius: 8px;
}
:root[data-theme]
  :is(
    .news-search,
    .filter-menu > button,
    .filter-options,
    .voice-sample,
    .voice-avatar,
    .image-models button,
    .social-variants button,
    .topic-presets button,
    .research-window button,
    .state-buttons button,
    .aspect-options button,
    .production-tabs button,
    .embedded-nav,
    .ops-task-row
  ) {
  background: var(--surface);
  color: var(--ink);
  border-color: var(--control);
}
:root[data-theme] :is(.news-search input, .filter-options button) {
  background: transparent;
  color: var(--ink);
}
:root[data-theme]
  :is(
    .filter-options button:hover,
    .filter-options button[aria-selected="true"],
    .ops-task-row:hover,
    .voice-sample:hover,
    .voice-sample.playing,
    .state-buttons .selected,
    .aspect-options button.selected,
    .social-variants button.selected
  ) {
  background: var(--soft);
  color: var(--ink);
  border-color: var(--control-hover);
}
:root[data-theme]
  :is(
    .lovart-settings,
    .voice-profile,
    .design-note,
    .social-source,
    .review-document,
    .job-panel pre,
    .image-loading,
    .generated-grid img,
    .version-comparison > section,
    .task-kind
  ) {
  background: var(--soft);
  color: var(--ink);
  border-color: var(--line);
}
:root[data-theme]
  :is(
    .image-models button.selected,
    .production-tabs button[aria-pressed="true"],
    .embedded-nav button[aria-current="page"],
    .prompt-stages button[aria-pressed="true"],
    .research-window button[aria-pressed="true"]
  ) {
  background: var(--action-bg);
  color: var(--action-ink);
  border-color: var(--action-bg);
}
:root[data-theme]
  :where(
    .helper,
    .field > span,
    .field small,
    .filter-menu > span,
    .candidate-meta,
    .candidate details,
    .filter-hint,
    .rail-caption small,
    .rail-empty,
    .page-heading p,
    .section-heading p,
    .story-body > p,
    .setting-row p,
    .social-form > p,
    .social-source p,
    .social-variants small,
    .source-link,
    .count,
    .script-label,
    .editor-footer > span,
    .preview-heading,
    .version,
    .preview-time,
    .preview-time span,
    .preview-caption p,
    .chapter-list button,
    .chapter-list strong,
    .plain-badge,
    .voice-sample small,
    .design-note p,
    .export-spec span,
    .quality-list > div,
    .modal-copy,
    .topic-note,
    .topic-heading,
    .search-plan,
    .image-job time,
    .image-job details,
    .ops-intro p,
    .ops-stats span,
    .ops-task-row small,
    .ops-task-row time,
    .ops-next small,
    .ops-audit small,
    .ops-versions summary,
    .ops-assets small,
    .ops-table th,
    .ops-table td small,
    .ops-settings-row p,
    .ops-capabilities p,
    .version-comparison small,
    .research-rail .rail-caption small,
    .ops-shell .research-rail .rail-empty p,
    .story-meta,
    .story-meta > span
  ) {
  color: var(--muted);
}
:root[data-theme]
  :is(.empty h3, .rail-empty h3, .task-status, .design-note span) {
  color: var(--ink);
}
:root[data-theme] :is(.text-button, .icon-button) {
  color: var(--muted);
}
:root[data-theme] :is(.text-button:hover, .icon-button:hover) {
  color: var(--ink);
}
:root[data-theme] .icon-button:hover {
  background: var(--soft);
}
:root[data-theme] .notice {
  background: var(--status-note-bg);
  color: var(--status-note-ink);
  border-color: color-mix(in srgb, var(--status-note-ink) 25%, transparent);
}
:root[data-theme] .error {
  color: var(--status-error);
}
:root[data-theme] :is(p.error, div.error, .notice.error) {
  background: var(--status-error-bg);
  color: var(--status-error);
  border: 0;
  border-radius: 6px;
  padding: 12px 14px;
  line-height: 1.7;
  font-size: 14px;
}
:root[data-theme] .success-inline {
  color: var(--status-ok);
}
:root[data-theme] .notice.success-inline {
  background: var(--status-ok-bg);
  border-color: color-mix(in srgb, var(--status-ok) 26%, transparent);
}
:root[data-theme] .status-info {
  color: var(--status-info);
}
:root[data-theme] .status-warning {
  color: var(--status-note-ink);
}
:root[data-theme] .status-text {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--state-ink, var(--muted));
}
.status-text::before {
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 50%;
  flex: 0 0 5px;
  background: currentColor;
}
.status-text:is([data-status="making"], [data-status="running"], [data-status="queued"], [data-status="remote_pending"], [data-status="scheduled"], [data-status="due"]) {
  --state-ink: var(--status-info);
}
.status-text:is([data-status="review"], [data-status="changes"], [data-status="pending_confirmation"], [data-status="waiting"], [data-status="missed"]) {
  --state-ink: var(--status-note-ink);
}
.status-text:is([data-status="approved"], [data-status="published"], [data-status="complete"], [data-status="recorded"]) {
  --state-ink: var(--status-ok);
}
.status-text:is([data-status="failed"], [data-status="error"]) {
  --state-ink: var(--status-error);
}
.account-row-status.status-pending {
  color: var(--status-note-ink);
}
.account-row-status.status-collecting {
  color: var(--status-info);
}
:root[data-theme] .insight-error {
  color: var(--status-error);
  background: var(--status-error-bg);
  border-color: color-mix(in srgb, var(--status-error) 26%, transparent);
}
:root[data-theme] .account-add-error {
  color: var(--status-error);
}
.selected-account-sync:is(.sync-error, .sync-info, .sync-warning) i {
  background: currentColor;
}
.selected-account-sync.sync-error { color: var(--status-error); }
.selected-account-sync.sync-info { color: var(--status-info); }
.selected-account-sync.sync-warning { color: var(--status-note-ink); }
.selected-account-sync .sync-ready { background: var(--status-ok); }
.writing-error > .social-actions { margin-top: 12px; }
.writing-error > .social-actions .text-button { min-height: 44px; }
:root[data-theme] .preview-bottom button {
  color: var(--muted);
  min-width: 44px;
  min-height: 44px;
}
dialog:not(.news-drawer):not(.advisor-drawer):not(.guide-agent) {
  margin: auto;
}
html:has(dialog[open]) {
  overflow: hidden;
}
:root[data-theme] .news-drawer .candidate.picked {
  background: var(--soft);
}
:root[data-theme] .filter-options {
  box-shadow: 0 14px 38px #0002;
}
:root[data-theme]
  :is(button, input, textarea, select, a, summary):focus-visible {
  outline: 2px solid var(--focus-ring);
  outline-offset: 3px;
}
:root[data-theme]
  :is(
    .field input,
    .field textarea,
    select,
    .news-search,
    .filter-menu > button
  ):hover:not(:disabled) {
  border-color: var(--control-hover);
}
:root[data-theme] button:disabled {
  cursor: not-allowed;
}
:root[data-theme] .button:disabled {
  opacity: 1;
  background: var(--soft);
  color: var(--muted);
  border-color: var(--line);
  box-shadow: none;
}
:root[data-theme]
  :is(.image-studio, .advisor-drawer)
  :is(button, input, textarea, select) {
  transition:
    background-color 0.16s,
    color 0.16s,
    border-color 0.16s,
    transform 0.16s;
}
:root[data-theme]
  :is(.image-studio, .advisor-drawer)
  .button:active:not(:disabled) {
  transform: translateY(1px);
}
.image-studio fieldset {
  border: 0;
  padding: 0;
  margin: 0;
  min-width: 0;
}
.image-studio .image-stage {
  scroll-margin-top: 88px;
}
.image-steps {
  display: flex;
  gap: 12px;
  margin: 28px 0 36px;
  border-bottom: 1px solid var(--line);
  padding-bottom: 16px;
}
.image-steps button {
  display: flex;
  gap: 10px;
  align-items: center;
  background: transparent;
  color: var(--muted);
  border: 0;
  min-height: 44px;
  padding: 6px 8px;
  text-align: left;
  flex: 1;
  font-size: 14px;
}
.image-steps button span {
  width: 26px;
  height: 26px;
  border: 1px solid var(--line);
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-variant-numeric: tabular-nums;
  flex-shrink: 0;
}
.image-steps button[aria-current="step"] {
  color: var(--ink);
}
.image-steps button[aria-current="step"] span {
  background: var(--action-bg);
  color: var(--action-ink);
  border-color: var(--action-bg);
}
.image-stage-heading {
  display: flex;
  gap: 16px;
  align-items: start;
  margin-bottom: 24px;
}
.image-stage-heading > span {
  color: var(--muted);
  font-size: 13px;
  padding-top: 3px;
}
.image-stage-heading h3 {
  font-size: 20px;
  font-weight: 600;
  margin: 0;
}
.image-stage-heading p {
  font-size: 14px;
  color: var(--muted);
  margin-top: 6px;
  line-height: 1.6;
}
.image-specs {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  gap: 16px;
  margin: 22px 0;
}
.reference-panel {
  margin: 24px 0;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--soft);
  transition: border-color 0.18s;
}
.reference-panel.dragging {
  border-color: var(--control-focus);
  outline: 1px solid var(--control-focus);
}
.reference-panel h3 {
  font-size: 16px;
  margin: 0;
}
.reference-panel h3 small {
  font-size: 12px;
  color: var(--muted);
  margin-left: 8px;
  font-weight: 400;
}
.reference-panel .section-heading p {
  font-size: 13px;
}
.reference-upload {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  min-height: 116px;
  border: 1px dashed var(--control);
  border-radius: 8px;
  padding: 18px;
  color: var(--muted);
}
.reference-upload .text-button {
  color: var(--ink);
  display: inline-flex;
}
.reference-upload small {
  display: block;
  font-size: 12px;
  margin-top: 4px;
}
.reference-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin: 18px 0;
}
.reference-card {
  position: relative;
  min-width: 0;
  display: grid;
  gap: 10px;
}
.reference-card > a {
  display: block;
  background: var(--canvas);
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
}
.reference-card img {
  display: block;
  width: 100%;
  height: 148px;
  object-fit: contain;
}
.reference-card > strong {
  font-size: 13px;
  font-weight: 500;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.reference-card .field > span {
  font-size: 12px;
}
.reference-card > input {
  min-height: 44px;
  width: 100%;
  padding: 10px;
  border: 1px solid var(--control);
  border-radius: 8px;
  font-size: 13px;
}
.reference-card .reference-remove {
  position: absolute;
  right: 5px;
  top: 5px;
  background: var(--surface);
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 50%;
}
@media (min-width: 721px) {
  .reference-grid:has(> :only-child) {
    grid-template-columns: 1fr;
  }
  .reference-grid > :only-child {
    grid-template-columns: 172px minmax(0, 1fr);
    column-gap: 20px;
  }
  .reference-grid > :only-child > a {
    grid-column: 1;
    grid-row: 1 / span 3;
  }
  .reference-grid > :only-child img {
    height: 100%;
    min-height: 172px;
  }
  .reference-grid > :only-child > :is(strong, label, input) {
    grid-column: 2;
  }
  .reference-grid > :only-child > strong {
    padding-right: 44px;
    align-self: center;
  }
}
.image-advanced {
  margin: 24px 0;
}
.image-studio summary {
  cursor: pointer;
  min-height: 44px;
  align-content: center;
  font-size: 14px;
  color: var(--muted);
}
.image-advanced .two-fields {
  margin: 16px 0;
}
.image-concept {
  padding: 14px 18px;
  border: 0;
  border-radius: 8px;
  background: var(--soft);
  font-size: 15px;
  line-height: 1.7;
}
.image-studio .image-prompt {
  margin-top: 20px;
}
.image-studio .helper {
  line-height: 1.7;
  display: block;
}
.image-studio .social-actions {
  flex-wrap: wrap;
}
.prompt-mapping {
  margin-top: 14px;
}
.prompt-mapping > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 20px minmax(0, 2fr);
  gap: 12px;
  font-size: 14px;
  line-height: 1.6;
  padding: 14px 0;
  border-top: 1px solid var(--line);
  align-items: center;
}
.prompt-mapping > div > span,
.prompt-mapping > small {
  color: var(--muted);
}
.prompt-versions .text-button {
  display: flex;
  width: 100%;
  justify-content: start;
  gap: 8px;
}
.image-connection-note {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 0;
  border-block: 1px solid var(--line);
  font-size: 14px;
  line-height: 1.6;
  margin: 22px 0;
}
.image-connection-note > span {
  color: var(--muted);
}
.image-connection-note button {
  flex-shrink: 0;
}
.image-status {
  font-size: 14px;
  line-height: 1.7;
  padding: 16px 0;
  color: var(--ink);
}
.image-results-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid var(--line);
  margin-top: 32px;
  padding-top: 24px;
}
.image-results-heading h3 {
  font-size: 16px;
  font-weight: 600;
}
.image-empty {
  text-align: center;
  padding: 40px 20px;
  color: var(--muted);
}
.image-empty svg {
  margin: auto;
}
.image-empty p {
  margin: 16px 0 8px;
  color: var(--ink);
}
.job-references {
  display: flex;
  gap: 12px;
  margin: 12px 0;
}
.job-references img {
  width: 70px;
  height: 70px;
  object-fit: contain;
  border: 1px solid var(--line);
  border-radius: 6px;
}
.diagnosis-provenance {
  display: grid;
  gap: 9px;
  margin: 20px 0;
  font-size: 13px;
  color: var(--muted);
}
.diagnosis-provenance strong {
  font-size: 16px;
  color: var(--ink);
}
.diagnosis-provenance p {
  margin: 0;
}
.diagnosis-summary-details {
  border-bottom: 1px solid var(--line);
  padding-bottom: 18px;
}
.diagnosis-summary-details summary {
  font-size: 14px;
  color: var(--muted);
  cursor: pointer;
  min-height: 44px;
  align-content: center;
}
.diagnosis-summary-details small {
  color: var(--muted);
  line-height: 1.6;
}
.agent-drawer.advisor-drawer {
  width: min(480px, 100%);
  padding: 0 28px;
}
.advisor-header {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 24px 0 18px;
}
.advisor-header > img {
  width: 46px;
  height: 46px;
  object-fit: contain;
}
.advisor-header > div {
  flex: 1;
  min-width: 0;
}
.advisor-header h2 {
  font-size: 20px;
  margin: 0;
}
.advisor-drawer .advisor-header p {
  font-size: 12px;
  margin-top: 5px;
}
.advisor-context {
  padding: 10px 0 22px;
}
.advisor-context small {
  display: block;
  color: var(--muted);
  margin-top: 12px;
  font-size: 12px;
  overflow-wrap: anywhere;
}
.advisor-context select {
  width: 100%;
  font-size: 14px;
}
.advisor-tabs {
  display: flex;
  border-bottom: 1px solid var(--line);
  gap: 26px;
}
.advisor-tabs button {
  min-height: 48px;
  padding: 0 0 12px;
  border: 0;
  background: transparent;
  color: var(--muted);
  font-size: 15px;
  border-bottom: 2px solid transparent;
}
.advisor-tabs button[aria-selected="true"] {
  color: var(--ink);
  border-bottom-color: transparent;
  background: var(--selected-surface);
}
.advisor-status:empty {
  display: none;
}
.advisor-status {
  font-size: 13px;
  line-height: 1.6;
  color: var(--status-ok);
  margin: 14px 0;
}
.advisor-summary {
  padding: 22px 0;
}
.advisor-summary > small {
  font-size: 12px;
  color: var(--muted);
}
.advisor-summary > p {
  font-size: 17px;
  line-height: 1.75;
  margin-top: 12px;
}
.advisor-actions article {
  border-top: 1px solid var(--line);
  padding: 22px 0;
}
.advisor-action-title {
  display: flex;
  gap: 12px;
  align-items: baseline;
}
.advisor-action-title > span {
  font-size: 12px;
  color: var(--accent);
}
.advisor-action-title > h3 {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
}
.advisor-actions article > p {
  font-size: 14px;
  line-height: 1.8;
  margin: 10px 0 12px;
  color: var(--muted);
}
.advisor-actions .text-button {
  font-size: 13px;
  gap: 7px;
}
.advisor-evidence > summary,
.advisor-basis > summary,
.advisor-update summary {
  font-size: 13px;
  color: var(--muted);
  min-height: 44px;
  align-content: center;
  cursor: pointer;
}
.advisor-evidence {
  margin-bottom: 6px;
}
.advisor-evidence p,
.advisor-basis p {
  font-size: 13px;
  color: var(--muted);
  line-height: 1.8;
  margin: 8px 0;
  overflow-wrap: anywhere;
}
.advisor-evidence > div {
  border-left: 2px solid var(--line);
  padding: 10px 0 10px 14px;
  margin: 12px 0;
}
.advisor-evidence a {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: var(--ink);
}
.advisor-evidence small {
  display: block;
  font-size: 12px;
  color: var(--muted);
  margin-top: 8px;
}
.advisor-basis {
  border-top: 1px solid var(--line);
  padding-top: 8px;
}
.advisor-update {
  padding: 16px 0 0;
}
.advisor-update .button {
  width: 100%;
  justify-content: center;
  margin-top: 14px;
}
.advisor-update > small {
  display: block;
  text-align: center;
  font-size: 12px;
  color: var(--muted);
  margin-top: 12px;
}
.advisor-empty {
  padding: 32px 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.8;
}
.advisor-empty h3 {
  color: var(--ink);
  font-size: 17px;
  margin: 14px 0 9px;
}
.advisor-empty small {
  display: block;
  margin-top: 14px;
  font-size: 12px;
}
.advisor-memory-intro {
  font-size: 14px;
  line-height: 1.8;
  color: var(--muted);
  padding: 24px 0;
}
.memory-item {
  padding: 16px 0;
  border-top: 1px solid var(--line);
}
.memory-remove-confirm {
  padding: 14px;
  margin-top: 12px;
  border: 1px solid var(--control);
  border-radius: 8px;
}
.memory-remove-confirm > p {
  font-size: 13px;
  color: var(--status-error);
}
.memory-item small {
  font-size: 12px;
  color: var(--muted);
}
.memory-item p {
  font-size: 15px;
  line-height: 1.8;
  margin: 10px 0;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.memory-item > div {
  display: flex;
  align-items: center;
  gap: 4px;
}
.memory-item time {
  flex: 1;
  font-size: 12px;
  color: var(--muted);
}
.memory-form {
  background: var(--soft);
  border: 1px solid var(--line);
  padding: 16px;
  border-radius: 10px;
  display: grid;
  gap: 16px;
  margin-bottom: 20px;
}
.advisor-memory-intro ~ .button {
  margin: 20px 0;
}
.advisor-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 24px 0 16px;
  color: var(--muted);
  font-size: 12px;
}
@media (max-width: 720px) {
  .image-specs {
    grid-template-columns: 1fr 1fr;
  }
  .image-specs > .field:first-child {
    grid-column: 1/-1;
  }
  .image-steps {
    gap: 0;
  }
  .image-steps button {
    font-size: 12px;
    gap: 6px;
    padding: 4px;
    flex-direction: column;
    align-items: flex-start;
    min-height: 66px;
  }
  .reference-panel {
    padding: 16px;
  }
  .reference-grid {
    grid-template-columns: 1fr;
  }
  .reference-card img {
    height: 180px;
  }
  .image-connection-note {
    align-items: start;
    flex-direction: column;
    gap: 6px;
  }
  .prompt-mapping > div {
    grid-template-columns: 1fr;
    gap: 6px;
  }
  .prompt-mapping svg {
    display: none;
  }
  .agent-drawer.advisor-drawer {
    padding: 0 20px;
  }
  .advisor-summary > p {
    font-size: 16px;
  }
}
.compact-work-tabs {
  scrollbar-width: none;
}
.compact-work-tabs::-webkit-scrollbar {
  display: none;
}
.task-account-field { margin-top: 20px; }
@media (prefers-reduced-motion: reduce) {
  :root[data-theme] :is(.image-studio, .advisor-drawer) * {
    transition: none !important;
    scroll-behavior: auto !important;
  }
}
/* One outer frame for every page. Reading widths belong inside its panels,
   so moving between production, review and analytics does not shift edges. */
html {
  scrollbar-gutter: stable;
}
.ops-shell {
  --workspace-gutter: 40px;
  --workspace-top-space: 32px;
}
.ops-shell,
.ops-shell.content-mode {
  grid-template-columns: 240px minmax(0, 1fr);
}
.ops-shell.embedded-workspace {
  grid-template-columns: minmax(0, 1fr);
}
.ops-shell .page-container {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  max-width: none;
  margin: 0;
  padding: var(--workspace-top-space) var(--workspace-gutter) 44px;
}
.ops-shell :is(.topbar, .embedded-nav) {
  padding-inline: var(--workspace-gutter);
}
.ops-shell :is(.studio-grid, .operations-page, .account-dashboard) {
  min-width: 0;
  width: 100%;
  max-width: none;
}
.ops-shell .studio-grid:where(.writing-grid, .research-grid) {
  grid-template-columns: minmax(0, 1fr);
  justify-content: stretch;
}
/* Forms stay readable within the full-width workspace frame. */
.ops-shell :is(.social-form, .ops-form, .social-post),
.ops-shell .content-section > .field,
.ops-shell .ops-panel > .field,
.ops-shell .ops-detail > .field {
  max-width: 960px;
}
.ops-shell .review-document > p,
.ops-shell .review-document .source-link {
  max-width: 72ch;
  overflow-wrap: anywhere;
}
.ops-shell .review-video {
  max-width: 1040px;
}
/* Shared form rhythm. Stacks own spacing between fields; individual labels
   only own the space between their caption, control and field-level help. */
:root {
  --form-label-gap: 8px;
  --form-row-gap: 24px;
  --form-action-gap: 24px;
  --form-helper-gap: 12px;
  --form-section-gap: 32px;
}
.field,
.add-account-dialog .field {
  gap: var(--form-label-gap);
}
.form-stack {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--form-row-gap);
  min-width: 0;
  max-width: 960px;
}
.form-stack > :is(.field, .two-fields, .ops-form, .social-check) {
  margin-block: 0;
}
.form-stack > .two-fields,
.ops-form,
.ops-metric-form {
  gap: var(--form-row-gap);
}
.social-form {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.social-form > * {
  margin-block: 0;
}
.social-form > * + * {
  margin-top: var(--form-row-gap);
}
.social-form > .helper {
  margin-top: var(--form-helper-gap);
}
.social-actions {
  margin-top: var(--form-action-gap);
}
.social-actions > .helper {
  margin: 0;
}
.social-actions + :is(.helper, [role="status"], [role="alert"]) {
  margin: var(--form-helper-gap) 0 0;
}
.operations-page {
  gap: var(--form-section-gap);
}
.operations-page > .brand-details {
  margin-top: 0;
}
.ops-panel > .section-heading,
.writing-grid .section-heading {
  margin-bottom: var(--form-row-gap);
}
.ops-panel > .section-heading + .ops-account {
  padding-top: 0;
}
.ops-account + .ops-account {
  padding-top: var(--form-section-gap);
}
.ops-task-form,
.comment-reply-form,
.ops-metric-form {
  margin-top: var(--form-row-gap);
}
.ops-footer {
  margin-top: var(--form-action-gap);
  padding-top: 0;
  border-top: 0;
}
.ops-review-panel > .review-document {
  margin: 0 0 var(--form-section-gap);
}
.ops-review-panel > .ops-audit {
  margin-top: var(--form-section-gap);
}
.ops-review-panel > .ops-audit:empty {
  display: none;
}
.ops-review-panel > .ops-versions {
  margin-top: var(--form-section-gap);
}
.ops-panel > .ops-settings-row {
  padding-block: var(--form-row-gap);
}
.ops-panel > .ops-capabilities {
  margin-top: var(--form-row-gap);
}
.ops-capabilities > div {
  padding-block: var(--form-row-gap);
}
.ops-panel > .ops-table-scroll,
.ops-panel > .design-note {
  margin-top: var(--form-section-gap);
}
.writing-grid .content-section {
  padding-block: var(--form-section-gap);
}
.writing-grid .social-source {
  padding-top: var(--form-row-gap);
}
.writing-grid .social-source > p {
  margin-top: var(--form-label-gap);
}
.writing-grid .social-post {
  margin-bottom: 0;
}
.writing-grid .social-post + .social-post {
  margin-top: var(--form-row-gap);
}
.add-account-dialog .field {
  margin-top: var(--form-row-gap);
}
.add-account-dialog .account-add-note {
  margin-top: var(--form-helper-gap);
}
.add-account-dialog footer {
  padding-top: var(--form-action-gap);
}
@media (max-width: 1199px) {
  .ops-shell {
    --workspace-gutter: 24px;
    --workspace-top-space: 24px;
  }
}
@media (max-width: 767px) {
  .ops-shell {
    --workspace-gutter: 16px;
  }
  .ops-shell .page-container {
    padding-bottom: 85px;
  }
}
.ops-shell .topbar :is(.button, .theme-switch) {
  min-height: 44px;
}
.news-drawer .rail-caption {
  font-size: 0;
  margin-bottom: 16px;
}
.news-drawer .rail-caption small {
  font-size: 13px;
}

/* Fixed observation windows are evidence, not decorative growth charts. */
.post-observations{margin:22px 0;padding:24px 28px;border:1px solid var(--line);border-radius:16px;background:var(--surface);min-width:0}
.observation-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}
.observation-heading h2{font-size:19px;font-weight:600;margin:0}
.observation-heading p{font-size:14px;color:var(--muted);margin:6px 0 0}
.observation-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:22px;flex-wrap:wrap}
.observation-toolbar .segmented{display:flex;background:var(--soft);border:1px solid var(--line);border-radius:10px;padding:3px;gap:3px}
.observation-toolbar .segmented button{min-height:40px;min-width:78px;border-radius:7px;color:var(--muted);background:transparent;border:0;padding:8px 10px}
.observation-toolbar .segmented button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 4px #00000010}
.observation-watch{display:flex;align-items:center;gap:9px;font-size:14px;min-height:44px;cursor:pointer}
.observation-watch input{width:17px;height:17px;accent-color:var(--accent);flex:none}
.observation-empty{display:flex;align-items:flex-start;gap:13px;padding:25px 0 20px;color:var(--muted)}
.observation-empty>svg{margin-top:2px;flex:none}.observation-empty strong{font-size:15px;color:var(--ink);font-weight:500}.observation-empty p{font-size:14px;line-height:1.75;margin:7px 0 0;max-width:70ch}
.post-observations details{border-top:1px solid var(--line);margin-top:16px;padding-top:12px}.post-observations summary{min-height:44px;align-content:center;cursor:pointer;color:var(--muted);font-size:13px}
.observation-records article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 20px;border-top:1px solid var(--line);padding:16px 0}
.observation-records article a{color:var(--ink);font-size:14px;overflow-wrap:anywhere}.observation-records article span,.observation-records article small{font-size:12px;color:var(--muted)}.observation-records article small{grid-column:1/-1}
.observation-table{overflow:auto;margin-top:20px}.observation-table table{width:100%;border-collapse:collapse;font-size:14px}.observation-table caption{text-align:left;font-size:12px;color:var(--muted);margin-bottom:12px}.observation-table th,.observation-table td{text-align:right;border-bottom:1px solid var(--line);padding:13px 10px;font-variant-numeric:tabular-nums;white-space:nowrap}.observation-table th{color:var(--muted);font-weight:400;font-size:12px}.observation-table th:first-child,.observation-table td:first-child{text-align:left;white-space:normal;min-width:160px}.observation-table td a{display:flex;gap:8px;align-items:center}.observation-table td small{display:block;color:var(--muted);font-size:11px}
@media(max-width:700px){.post-observations{padding:20px 16px}.observation-heading{align-items:flex-start}.observation-heading .button{padding:8px 12px;font-size:12px;white-space:nowrap}.observation-heading .button svg{display:none}.observation-heading h2{font-size:17px}.observation-heading p{font-size:13px}.observation-records article{gap:7px 10px}.observation-toolbar .segmented button{min-width:66px}}
.asset-picker{width:min(850px,calc(100vw - 32px));max-height:85dvh;padding:26px;overflow:auto}.asset-picker header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.asset-picker header p{font-size:14px;color:var(--muted);margin-top:6px}.asset-search{display:flex;align-items:center;gap:12px;border:1px solid var(--control);background:var(--field);border-radius:10px;padding:0 14px;margin:22px 0;color:var(--muted)}.asset-search input{background:transparent!important;border:0;min-height:48px;width:100%;outline-offset:-3px}.asset-picker-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.asset-choice{border:1px solid var(--line);padding:0 0 14px;border-radius:10px;overflow:hidden;background:var(--surface);text-align:left;color:var(--ink);min-width:0}.asset-choice:hover{border-color:var(--control-hover);transform:translateY(-2px)}.asset-choice:disabled{opacity:.55}.asset-choice-image{aspect-ratio:4/3;background:var(--soft);position:relative}.asset-choice-image img{width:100%;height:100%;object-fit:contain}.asset-choice-image span{position:absolute;bottom:8px;right:8px;background:var(--surface);padding:4px 8px;border-radius:6px;font-size:12px;display:flex;align-items:center;gap:6px}.asset-choice>strong,.asset-choice>small{display:block;margin:9px 12px 0;overflow-wrap:anywhere;font-size:14px}.asset-choice>small{color:var(--muted);font-size:12px}.asset-picker footer{display:flex;justify-content:flex-end;border-top:1px solid var(--line);padding-top:18px;margin-top:24px}.reference-upload>.button{margin-left:auto}@media(max-width:700px){.asset-picker{padding:20px}.asset-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.reference-upload{flex-wrap:wrap}.reference-upload>.button{margin-left:0}}
.recommendation-evidence{margin-top:9px}.recommendation-evidence>summary{font-size:13px;color:var(--muted);cursor:pointer;min-height:40px;align-content:center}.recommendation-evidence[open]>.test-note{margin-top:12px}.diagnosis-panel .diagnosis-provenance{padding-bottom:18px}.analysis-basis .insight-observations{margin:20px 0}.analysis-basis .insight-observations p{font-size:13px}.content-rank strong{font-weight:500}
@media(min-width:1200px){.account-sidebar{display:flex;flex-direction:column;flex:1;min-height:0;max-height:none;width:100%}.account-sidebar .account-rail{min-height:0;max-height:none;overflow:auto;overscroll-behavior:contain;flex:1}.account-sidebar .account-sidebar-heading,.account-sidebar .account-sidebar-search,.account-sidebar .account-sidebar-footer{flex-shrink:0}.account-sidebar .account-rail{scrollbar-width:thin;scrollbar-color:var(--control) transparent}}
@container account-content (min-width:760px){.insight-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.insight-kpi{padding:20px 18px}.insight-kpi strong{font-size:30px}.insight-kpi>span{font-size:13px}.insight-kpi small{font-size:12px}}
.storage-summary{display:flex;gap:36px;flex-wrap:wrap;margin-bottom:20px}.storage-summary strong{font-size:16px;font-weight:500;display:block}.storage-summary small{color:var(--muted);font-size:13px;display:block;margin-top:6px}.storage-panel>details{border-top:1px solid var(--line);margin-top:20px}.storage-panel summary{min-height:48px;align-content:center;font-size:14px;cursor:pointer;color:var(--muted)}.storage-record{padding:14px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);font-size:13px}.storage-record small{display:block;color:var(--muted);font-size:12px;margin-top:5px}.storage-record time{color:var(--muted)}
.image-current-selection{margin:26px 0;padding:20px;border:1px solid var(--line);border-radius:12px;background:var(--soft);display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:20px;align-items:center}.image-current-selection h3{font-size:16px}.image-current-selection p{margin-top:8px;font-size:14px;overflow-wrap:anywhere}.image-current-selection small{display:block;color:var(--muted);font-size:13px;margin-top:8px}.image-current-selection img{width:100%;max-height:190px;object-fit:contain;border-radius:8px}@media(max-width:600px){.image-current-selection{grid-template-columns:1fr}.image-current-selection img{max-height:220px}}
.assistant-launcher{display:none!important}
.advisor-nav img{width:24px;height:24px;object-fit:contain}
.mobile-advisor{display:none}
@media(max-width:760px){.mobile-advisor{display:inline-flex;flex-shrink:0}.mobile-advisor img{width:28px;height:28px;object-fit:contain}}
.candidate-evidence{font-size:12px;color:var(--muted);margin-top:8px;line-height:1.6}

/* Script-led information-feed video workflow. */
.video-workspace {
  container: video-studio / inline-size;
  max-width: 1380px;
  width: 100%;
  margin-inline: auto;
  padding: 28px;
  color: var(--ink);
}
.video-workspace :is(button, input, textarea) {
  font: inherit;
}
.video-workspace :is(button, a, summary) {
  min-height: 44px;
}
.video-workspace :is(button, input, textarea, a, summary):focus-visible {
  outline: 1px solid var(--control-hover);
  outline-offset: 2px;
  box-shadow: none;
}
.video-workspace button:disabled {
  opacity: 0.48;
  cursor: not-allowed;
}
.video-workspace-heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 24px;
  padding-bottom: 24px;
}
.video-workspace-heading h2 {
  font-size: 26px;
  font-weight: 600;
  line-height: 1.35;
  margin: 6px 0 10px;
}
.video-workspace-heading p {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.7;
  margin: 0;
  max-width: 60ch;
}
.video-format-label {
  font-size: 12px;
  color: var(--muted);
}
.news-video-pipeline {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  list-style: none;
  padding: 0;
  margin: 0 0 28px;
  border-block: 1px solid var(--line);
}
.news-video-pipeline li {
  min-width: 0;
}
.news-video-pipeline a {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 4px 8px;
  padding: 16px 12px;
  text-decoration: none;
  color: var(--ink);
}
.news-video-pipeline a:hover {
  background: var(--soft);
}
.news-video-pipeline a > span {
  grid-row: 1 / span 2;
  font-size: 12px;
  color: var(--muted);
  padding-top: 3px;
}
.news-video-pipeline strong {
  font-size: 14px;
  font-weight: 500;
}
.news-video-pipeline small {
  font-size: 12px;
  color: var(--muted);
}
.video-create-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 32px;
  align-items: start;
}
.video-create-inputs,
.video-preview-panel {
  min-width: 0;
}
.video-create-inputs {
  display: grid;
  gap: 28px;
}
.news-video-step {
  scroll-margin-top: 24px;
  border-bottom: 1px solid var(--line);
  padding-bottom: 28px;
  min-width: 0;
}
.news-video-step:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.news-video-step-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px 20px;
  margin-bottom: 18px;
}
.news-video-step-heading > div {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px 10px;
}
.news-video-step-heading > div > span {
  font-size: 12px;
  color: var(--muted);
}
.news-video-step-heading h3 {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.5;
  margin: 0;
}
.news-video-step-heading small {
  font-size: 12px;
  color: var(--muted);
}
.news-video-step-heading .button {
  min-height: 44px;
  padding: 9px 14px;
  font-size: 13px;
}
.news-video-topics {
  list-style: none;
  padding: 0;
  margin: 0;
}
.news-video-topics li {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 12px;
  padding: 16px 0;
  border-top: 1px solid var(--line);
}
.news-video-topics li:first-child {
  padding-top: 0;
  border-top: 0;
}
.news-video-topic-index {
  color: var(--muted);
  font-size: 12px;
  padding-top: 3px;
  font-variant-numeric: tabular-nums;
}
.news-video-topics h4 {
  font-size: 15px;
  line-height: 1.65;
  margin: 0;
  font-weight: 500;
  overflow-wrap: anywhere;
}
.video-topic-summary {
  font-size: 13px;
  line-height: 1.7;
  color: var(--muted);
  margin: 6px 0 8px;
  overflow-wrap: anywhere;
}
.news-video-topic-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 16px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.7;
}
.news-video-topic-source {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 12px;
}
.news-video-topic-source small {
  color: var(--muted);
  font-size: 11px;
}
.news-video-topic-source a {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  color: var(--muted);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.news-video-start {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 20px 0;
}
.news-video-start > svg {
  flex: none;
  color: var(--muted);
}
.news-video-start h4 {
  font-size: 16px;
  font-weight: 500;
  margin: 0 0 8px;
}
.news-video-start p {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.7;
  margin: 0 0 16px;
}
.video-fixed-intro {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 12px;
  font-size: 13px;
  line-height: 1.7;
  margin: 0 0 16px;
}
.video-fixed-intro > span {
  color: var(--muted);
}
.video-workspace .field {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.video-workspace .field > span {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
  font-size: 14px;
  font-weight: 500;
}
.video-workspace .field small {
  color: var(--muted);
  font-weight: 400;
  font-size: 12px;
}
.video-workspace textarea {
  box-sizing: border-box;
  width: 100%;
  min-height: 240px;
  background: var(--field);
  border: 1px solid var(--control);
  border-radius: 8px;
  color: var(--ink);
  padding: 14px;
  resize: vertical;
  font-size: 15px;
  line-height: 1.8;
}
.video-workspace textarea:hover {
  border-color: var(--control-hover);
}
.video-workspace textarea::placeholder {
  color: var(--muted);
}
.video-script-helper {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 4px 16px;
  margin-top: 10px;
}
.video-helper {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.75;
  margin: 10px 0 0;
}
.video-script-helper .video-helper {
  margin: 0;
}
.video-text-button {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 7px;
  min-height: 44px;
  padding: 7px 0;
  border: 0;
  background: transparent;
  color: var(--muted);
  font-size: 13px;
  text-align: left;
  text-decoration: none;
}
.video-text-button:hover {
  color: var(--ink);
  text-decoration: underline;
  text-underline-offset: 4px;
}
.video-text-button > svg {
  flex: none;
}
.video-notice {
  font-size: 13px;
  line-height: 1.75;
  padding: 12px 14px;
  border-left: 2px solid var(--control);
  background: var(--soft);
  margin: 12px 0;
  overflow-wrap: anywhere;
}
.video-notice.error {
  color: var(--status-error);
  border-color: var(--status-error);
  background: var(--status-error-bg);
}
.video-notice p {
  margin: 0;
}
.video-candidate-script {
  border: 1px solid var(--control);
  border-radius: 8px;
  padding: 16px;
  margin-top: 16px;
}
.video-candidate-script h4 {
  font-size: 14px;
  font-weight: 500;
  margin: 0;
}
.video-candidate-script p {
  white-space: pre-wrap;
  font-size: 14px;
  line-height: 1.8;
  margin: 12px 0;
}
.video-candidate-script .button {
  margin-right: 16px;
}
.video-voice-profile {
  display: flex;
  align-items: center;
  gap: 12px;
}
.video-voice-profile > svg {
  flex: none;
  color: var(--muted);
}
.video-voice-profile > div {
  min-width: 0;
  flex: 1;
}
.video-voice-profile strong {
  font-size: 15px;
  font-weight: 500;
}
.video-voice-profile p {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.7;
  margin: 5px 0 0;
}
.video-voice-profile > span {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  color: var(--muted);
  flex: none;
}
.video-voice-settings {
  margin-top: 12px;
}
.video-workspace summary {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  cursor: pointer;
  font-size: 13px;
  line-height: 1.6;
  color: var(--muted);
}
.video-workspace summary::before {
  content: "›";
  font-size: 18px;
}
.video-workspace details[open] > summary::before {
  transform: rotate(90deg);
}
.video-sound-controls {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  padding: 12px 0;
}
.video-sound-controls b {
  font-weight: 400;
  color: var(--muted);
  font-variant-numeric: tabular-nums;
}
.video-workspace input[type="range"] {
  width: 100%;
  min-height: 32px;
  accent-color: var(--ink);
}
.video-voice-preview {
  margin-top: 16px;
}
.video-voice-preview audio {
  width: 100%;
  display: block;
}
.video-voice-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  font-size: 12px;
  color: var(--muted);
  margin-top: 4px;
}
.video-voice-meta a {
  display: inline-flex;
  align-items: center;
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.video-speech-checks {
  margin-top: 12px;
  font-size: 13px;
}
.video-speech-checks > p {
  color: var(--muted);
  line-height: 1.7;
  margin: 6px 0 12px;
}
.video-speech-checks ol {
  margin: 0;
  padding-left: 24px;
}
.video-speech-checks li {
  border-top: 1px solid var(--line);
  padding: 12px 0;
  margin: 0;
}
.video-speech-checks strong {
  font-size: 13px;
  font-weight: 500;
  line-height: 1.75;
}
.video-speech-checks li p {
  margin: 4px 0 0;
  line-height: 1.7;
  font-size: 12px;
}
.video-choice-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.video-choice-row button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 18px;
  gap: 7px 10px;
  border: 1px solid var(--control);
  border-radius: 8px;
  background: var(--field);
  color: var(--ink);
  padding: 14px 16px;
  min-height: 76px;
  text-align: left;
}
.video-choice-row button[aria-pressed="true"] {
  background: var(--soft);
  border-color: var(--control-hover);
  box-shadow: none;
}
.video-choice-row strong {
  font-size: 14px;
  font-weight: 500;
}
.video-choice-row small {
  font-size: 12px;
  color: var(--muted);
  grid-column: 1;
}
.video-choice-row svg {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: center;
}
.video-visual-mode {
  max-width: 400px;
  margin-top: 20px !important;
}
.video-scene-plan {
  margin-top: 16px;
}
.video-scene-plan ol {
  list-style: none;
  margin: 8px 0 0;
  padding: 0;
}
.video-scene-plan li {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 12px;
  border-top: 1px solid var(--line);
  padding: 14px 0;
}
.video-scene-plan li > span {
  font-size: 12px;
  color: var(--muted);
  padding-top: 3px;
}
.video-scene-plan strong {
  font-size: 14px;
  font-weight: 500;
}
.video-scene-plan p {
  font-size: 13px;
  line-height: 1.7;
  color: var(--muted);
  margin: 5px 0 0;
}
.video-generate-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-top: 24px;
}
.video-preview-panel {
  border-top: 1px solid var(--line);
  padding-top: 24px;
}
.news-video-preview-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
}
.news-video-preview-heading h3 {
  font-size: 18px;
  font-weight: 600;
  margin: 0;
}
.news-video-preview-heading > span {
  font-size: 12px;
  color: var(--muted);
}
.video-preview-panel video {
  display: block;
  width: 100%;
  max-height: min(620px, 70dvh);
  object-fit: contain;
  background: #111216;
  border-radius: 8px;
}
.video-preview-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 14px;
  text-align: center;
  border: 1px solid var(--control);
  border-radius: 8px;
  background: var(--soft);
  min-height: 280px;
  aspect-ratio: 16 / 9;
  padding: 28px;
  color: var(--muted);
}
.video-preview-empty[data-layout="9:16"] {
  aspect-ratio: 9 / 16;
  max-height: 620px;
}
.video-preview-empty h4 {
  font-size: 15px;
  font-weight: 500;
  color: var(--ink);
  margin: 0;
}
.video-preview-empty p {
  font-size: 13px;
  line-height: 1.8;
  max-width: 30ch;
  margin: 0;
}
.video-job-progress {
  margin-bottom: 16px;
  border-bottom: 1px solid var(--line);
  padding: 12px 0;
}
.video-job-progress > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  font-size: 13px;
}
.video-job-progress strong {
  font-weight: 500;
}
.video-job-progress progress {
  width: 100%;
  height: 5px;
  accent-color: var(--ink);
  margin: 14px 0 4px;
}
.video-job-progress p {
  font-size: 12px;
  line-height: 1.7;
  color: var(--muted);
  margin: 5px 0 0;
}
.video-result-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin-top: 12px;
  font-size: 12px;
}
.video-result-meta strong {
  font-size: 13px;
  font-weight: 500;
}
.video-result-meta span {
  color: var(--muted);
}
.video-result-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 12px;
  margin-top: 18px;
}
.video-result-actions .button {
  min-height: 44px;
  font-size: 13px;
  padding: 10px 14px;
  white-space: normal;
}
.video-verification,
.video-history,
.video-role-preview {
  border-top: 1px solid var(--line);
  margin-top: 24px;
  padding-top: 8px;
  font-size: 13px;
}
.video-verification p {
  font-size: 12px;
  color: var(--muted);
  line-height: 1.8;
  margin: 8px 0;
}
.video-verification a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: var(--muted);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.video-history button {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  width: 100%;
  border: 0;
  border-bottom: 1px solid var(--line);
  background: transparent;
  padding: 12px 8px;
  color: var(--ink);
  text-align: left;
}
.video-history button[aria-pressed="true"] {
  background: var(--soft);
  box-shadow: none;
}
.video-history strong {
  display: block;
  font-size: 13px;
  font-weight: 500;
}
.video-history small {
  display: block;
  color: var(--muted);
  font-size: 11px;
  margin-top: 6px;
}
.video-history button > span:last-child {
  flex: none;
  font-size: 11px;
}
.video-role-preview iframe {
  width: 100%;
  height: 300px;
  border: 1px solid var(--line);
  border-radius: 8px;
}
@container video-studio (min-width:900px) {
  .video-create-layout {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
    gap: 36px;
  }
  .video-preview-panel {
    border-top: 0;
    border-left: 1px solid var(--line);
    padding: 0 0 0 28px;
    position: sticky;
    top: 20px;
  }
}
@media (max-width: 767px) {
  .video-workspace {
    padding: 20px 16px;
  }
  .video-workspace-heading {
    flex-direction: column;
    gap: 8px;
  }
  .video-workspace-heading h2 {
    font-size: 23px;
  }
  .news-video-pipeline {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .news-video-pipeline a {
    padding: 12px 6px;
  }
  .news-video-step-heading {
    align-items: flex-start;
  }
  .news-video-step-heading .button {
    padding-inline: 12px;
  }
  .video-sound-controls {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .video-choice-row button {
    padding: 12px;
  }
  .video-result-actions > .button {
    flex: 1 1 160px;
  }
  .video-preview-empty[data-layout="9:16"] {
    max-height: 480px;
  }
  .video-history button {
    flex-wrap: wrap;
    gap: 8px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .video-workspace * {
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }
}

.asset-selection{margin:24px 0;padding:22px;background:var(--soft);border:1px solid var(--line);border-radius:12px}.asset-selection h3{font-size:17px}.asset-selection .section-heading p{font-size:14px}.asset-selection-list{display:grid;gap:12px}.asset-selection-row{display:flex;align-items:center;gap:16px;min-width:0;padding:12px 0;border-top:1px solid var(--line)}.asset-selection-row>img{width:64px;height:64px;object-fit:contain;border-radius:8px;background:var(--surface)}.asset-selection-row>span{flex:1;min-width:0}.asset-selection-row strong{font-size:14px;overflow-wrap:anywhere}.asset-selection-row small{display:block;margin-top:6px;color:var(--muted);font-size:13px}.asset-selection-row .social-actions{margin:0;flex-shrink:0}.asset-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px;margin:28px 0}.asset-library .ops-assets{margin-top:20px;align-items:start}.asset-library .ops-assets figure{border:1px solid var(--line);border-radius:12px;padding:14px;background:var(--surface)}.asset-library .ops-assets img{height:auto;aspect-ratio:4/3;background:var(--soft)}.asset-library .ops-assets .social-actions{gap:8px;margin:18px 0}.asset-library .ops-assets .button{padding-inline:16px;font-size:14px}.asset-library details{padding-top:14px;border-top:1px solid var(--line)}.asset-library summary{font-size:13px;cursor:pointer;color:var(--muted)}.asset-prompt{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:13px;line-height:1.8;margin:14px 0;color:var(--muted);max-height:260px;overflow-y:auto}@media(max-width:720px){.asset-filters{grid-template-columns:1fr 1fr}.asset-filters>.field:first-child{grid-column:1/-1}.asset-selection{padding:16px}.asset-selection-row{flex-wrap:wrap}.asset-selection-row>.social-actions{margin-left:80px;gap:4px}.asset-selection>.section-heading{align-items:flex-start}.asset-library .section-heading>.button{align-self:flex-start}}

/* Evidence is a readable ledger: sample, dates, facts, then limitations. */
.insight-evidence.analysis-basis {
  margin-top: 12px;
  padding-top: 0;
  color: var(--ink);
  font-size: 15px;
}
.insight-evidence > summary {
  display: flex;
  align-items: center;
  gap: 16px;
  min-height: 64px;
  padding: 12px 0;
  list-style: none;
  color: var(--ink);
}
.insight-evidence > summary::-webkit-details-marker { display: none; }
.insight-evidence > summary::marker { content: ""; }
.insight-evidence > summary:focus-visible {
  outline: 2px solid var(--focus-ring);
  outline-offset: 4px;
  border-radius: 6px;
}
.insight-evidence > summary .insight-evidence-title {
  float: none;
  font-size: 18px;
  line-height: 1.5;
  font-weight: 600;
  letter-spacing: -.3px;
}
.insight-evidence > summary .insight-evidence-meta {
  float: none;
  margin-left: auto;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
  white-space: nowrap;
}
.insight-evidence-chevron {
  flex: none;
  color: var(--muted);
  transition: transform .18s ease-out;
}
.insight-evidence[open] > summary .insight-evidence-chevron { transform: rotate(180deg); }
.insight-evidence-body { padding: 4px 0 6px; }
.insight-evidence-scope {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(280px, 1fr);
  gap: 28px;
  padding: 24px;
  background: var(--soft);
  border-radius: 12px;
}
.insight-evidence-label,
.insight-evidence-times dt {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.5;
}
.insight-evidence-sample > strong {
  display: flex;
  align-items: baseline;
  gap: 10px;
  margin-top: 9px;
  font-size: 36px;
  line-height: 1.2;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  letter-spacing: -.8px;
}
.insight-evidence-sample > strong small {
  color: var(--ink);
  font-size: 16px;
  line-height: 1.5;
  font-weight: 500;
  letter-spacing: 0;
}
.insight-evidence-sample > p {
  margin: 14px 0 5px;
  font-size: 14px;
  line-height: 1.75;
}
.insight-evidence-caption {
  font-size: 13px;
  line-height: 1.6;
  color: var(--muted);
}
.insight-evidence-times {
  display: grid;
  align-content: center;
  gap: 19px;
  margin: 0;
  padding-left: 28px;
  border-left: 1px solid var(--line);
  min-width: 0;
}
.insight-evidence-times dd {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px 10px;
  margin: 6px 0 0;
  font-size: 15px;
  line-height: 1.6;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}
.insight-evidence-date-separator { font-size: 13px; color: var(--muted); font-weight: 400; }
.insight-evidence-facts { margin-top: 28px; }
.insight-evidence h3 {
  margin: 0;
  font-size: 18px;
  line-height: 1.5;
  font-weight: 600;
  letter-spacing: -.25px;
}
.insight-evidence-observations { margin-top: 8px; }
.insight-evidence-observations > article {
  display: grid;
  grid-template-columns: 170px minmax(0, 1fr);
  gap: 24px;
  padding: 20px 0;
  border-bottom: 1px solid var(--line);
}
.insight-evidence-observations h4 {
  margin: 0;
  color: var(--ink);
  font-size: 16px;
  line-height: 1.7;
  font-weight: 600;
}
.insight-evidence-observations p {
  margin: 0;
  color: var(--ink);
  font-size: 15px;
  line-height: 1.8;
  overflow-wrap: anywhere;
  max-width: 75ch;
}
.insight-evidence .evidence-links { gap: 8px 16px; margin-top: 7px; }
.insight-evidence .evidence-links a {
  min-height: 44px;
  gap: 6px;
  font-size: 14px;
  line-height: 1.5;
  color: var(--ink);
  border: 0;
  text-decoration: underline;
  text-decoration-color: var(--control);
  text-underline-offset: 5px;
}
.insight-evidence a:hover { text-decoration-color: currentColor; }
.insight-evidence .evidence-links a svg { width: 15px; height: 15px; color: var(--muted); }
.insight-evidence-method {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-top: 24px;
}
.insight-evidence-method > svg { flex: none; color: var(--muted); margin-top: 3px; }
.insight-evidence-method strong { font-size: 16px; line-height: 1.6; font-weight: 600; }
.insight-evidence-method p { margin: 5px 0 0; font-size: 14px; line-height: 1.8; color: var(--muted); }
.insight-evidence-method a {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 44px;
  color: var(--ink);
  text-decoration: underline;
  text-decoration-color: var(--control);
  text-underline-offset: 4px;
}
.insight-evidence-limits { margin-top: 26px; padding-top: 24px; border-top: 1px solid var(--line); }
.insight-evidence-limits ul { display: grid; gap: 10px; margin: 16px 0 0; padding-left: 20px; }
.insight-evidence-limits li { padding-left: 4px; font-size: 14px; line-height: 1.8; color: var(--ink); overflow-wrap: anywhere; }
.insight-evidence-limits li::marker { color: var(--muted); }
.insight-evidence-limits > p { margin: 16px 0 0; font-size: 14px; line-height: 1.8; color: var(--muted); }
.insight-evidence-footer {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px 24px;
  margin-top: 24px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
  font-size: 13px;
  line-height: 1.7;
  color: var(--muted);
}
.insight-evidence-footer strong { font-weight: 400; }
.insight-evidence-footer span { overflow-wrap: anywhere; }
@container account-content (max-width: 740px) {
  .insight-evidence-scope { grid-template-columns: 1fr; gap: 20px; }
  .insight-evidence-times { border-left: 0; border-top: 1px solid var(--line); padding: 20px 0 0; }
  .insight-evidence-observations > article { grid-template-columns: 1fr; gap: 8px; }
}
@media (max-width: 760px) {
  .insight-evidence > summary { flex-wrap: wrap; gap: 4px 12px; }
  .insight-evidence > summary .insight-evidence-title { flex: 1; font-size: 16px; }
  .insight-evidence > summary .insight-evidence-meta { flex-basis: 100%; order: 3; margin-left: 0; }
  .insight-evidence-scope { grid-template-columns: 1fr; gap: 20px; padding: 20px; }
  .insight-evidence-times { border-left: 0; border-top: 1px solid var(--line); padding: 20px 0 0; }
  .insight-evidence-observations > article { grid-template-columns: 1fr; gap: 8px; }
  .insight-evidence-footer { flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) {
  .insight-evidence-chevron { transition: none; }
}

/* Reused from OpenX website src/account-asset-chart.css; local semantic colors. */
.followers-trend{--ox-font:'Segoe UI','Microsoft JhengHei',sans-serif;--ox-text:var(--ink);--ox-muted:var(--muted);--ox-surface:var(--surface);--ox-raised:var(--surface);--ox-canvas:var(--canvas);--ox-hover:var(--soft);--ox-border:var(--line);--ox-brand-primary:var(--accent);--ox-focus:var(--focus-ring)}
.aac-chart{min-width:0;margin-top:0;font-family:var(--ox-font,sans-serif);color:var(--ox-text);font-variant-numeric:tabular-nums}
.followers-trend .aac-chart-head{align-items:flex-start;flex-wrap:wrap}
.followers-trend .aac-chart-head h2{margin:0;font-size:17px;font-weight:600;line-height:26px;letter-spacing:-.3px}
.followers-trend .aac-chart-head p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:20px}
.followers-trend-summary{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 20px;margin:20px 0 22px}
.followers-trend-summary>strong{font-size:34px;font-weight:600;line-height:1.2;letter-spacing:-1px;color:var(--ink)}
.followers-trend-summary small{font-size:13px;font-weight:400;letter-spacing:0;margin-left:8px;color:var(--muted)}
.followers-trend-summary>span{font-size:12px;line-height:20px;color:var(--muted)}
.followers-trend-summary b{font-weight:600}
.followers-trend-summary .is-up b{color:var(--status-ok)}
.followers-trend-summary .is-down b{color:var(--status-error)}
.followers-missing{font-size:12px;color:var(--muted)}
.aac-chart-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;min-height:44px}
.aac-chart-head h3{margin:0;font:600 16px/24px var(--ox-font,sans-serif);color:var(--ox-text)}
.aac-chart-ranges{display:flex;align-items:center;gap:8px;flex-shrink:0;padding:3px;border-radius:10px;background:var(--ox-canvas)}
.aac-chart-ranges button{min-width:44px;min-height:44px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:var(--ox-muted);font:400 14px/22px var(--ox-font,sans-serif);white-space:nowrap;cursor:pointer;transition:background-color var(--ox-motion-feedback,160ms),color var(--ox-motion-feedback,160ms),transform var(--ox-motion-feedback,160ms)}
.aac-chart-ranges button:hover{background:var(--ox-hover);color:var(--ox-text)}
.aac-chart-ranges button[aria-pressed=true]{background:var(--ox-text);color:var(--ox-surface);font-weight:600}
.aac-chart-ranges button:active{transform:scale(.98)}
.aac-chart-ranges button:focus-visible,.aac-chart-foot button:focus-visible,.aac-chart-plot:focus-visible,.aac-chart-data:focus-visible{outline:2px solid var(--ox-focus);outline-offset:3px}
.aac-chart-plot{position:relative;min-width:0;width:100%;height:288px;border-radius:8px;touch-action:pan-y;isolation:isolate;outline:none}
.aac-chart-svg{display:block;width:100%;height:100%;overflow:visible;font-family:var(--ox-font,sans-serif)}
.aac-chart-axis{fill:var(--ox-muted);font:400 12px var(--ox-font,sans-serif);font-variant-numeric:tabular-nums}
.aac-chart-grid{stroke:var(--ox-border);stroke-width:1;stroke-opacity:.75;stroke-dasharray:1 5;vector-effect:non-scaling-stroke}
.aac-chart-line{fill:none;stroke:var(--ox-brand-primary);stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:0;animation:aac-line-reveal var(--ox-motion-reveal,320ms) var(--ox-motion-ease,ease) both}
.aac-chart-area{opacity:1;animation:aac-area-reveal var(--ox-motion-content,180ms) ease both;pointer-events:none}
.aac-chart-end{fill:var(--ox-surface);stroke:var(--ox-brand-primary);stroke-width:2;vector-effect:non-scaling-stroke}
.aac-chart-crosshair{stroke:var(--ox-muted);stroke-width:1;stroke-opacity:.6;stroke-dasharray:3 5;vector-effect:non-scaling-stroke}
.aac-chart-crosshair--horizontal{stroke-opacity:.25}
.aac-chart-halo{fill:var(--ox-brand-primary);fill-opacity:.16;filter:blur(2px)}
.aac-chart-point{fill:var(--ox-brand-primary);stroke:var(--ox-surface);stroke-width:2;vector-effect:non-scaling-stroke}
.aac-chart-point.is-missing{fill:var(--ox-surface);stroke:var(--ox-brand-primary)}
.aac-chart-selection{pointer-events:none}
.aac-chart-tooltip{position:absolute;z-index:1;box-sizing:border-box;display:grid;gap:4px;width:216px;max-width:calc(100% - 16px);padding:12px 14px;border:1px solid var(--ox-border);border-radius:10px;color:var(--ox-text);background:color-mix(in srgb,var(--ox-raised,var(--ox-surface)) 92%,transparent);backdrop-filter:blur(12px);box-shadow:0 8px 24px rgb(11 11 11 / .10),inset 0 1px 0 color-mix(in srgb,var(--ox-text) 5%,transparent);pointer-events:none;animation:aac-tooltip-in var(--ox-motion-feedback,160ms) var(--ox-motion-ease,ease) both}
.aac-chart-tooltip>span{color:var(--ox-muted);font:400 12px/18px var(--ox-font,sans-serif)}
.aac-chart-tooltip strong{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;min-width:0;color:var(--ox-text);font:600 18px/26px var(--ox-font,sans-serif);overflow-wrap:anywhere}
.aac-chart-tooltip small{color:var(--ox-muted);font:400 12px/18px var(--ox-font,sans-serif)}
.aac-chart-hidden{fill:var(--ox-muted);font:400 14px var(--ox-font,sans-serif)}
.aac-chart-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;margin-top:4px;color:var(--ox-muted);font:400 12px/18px var(--ox-font,sans-serif)}
.aac-chart-foot button{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 4px;border:0;border-radius:4px;background:transparent;color:var(--ox-muted);font:400 14px/22px var(--ox-font,sans-serif);cursor:pointer;transition:color var(--ox-motion-feedback,160ms)}
.aac-chart-foot button:hover{color:var(--ox-text)}
.aac-chart-foot button svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform var(--ox-motion-feedback,160ms) var(--ox-motion-ease,ease)}
.aac-chart-foot button[aria-expanded=true] svg{transform:rotate(180deg)}
.aac-chart-data{max-height:240px;overflow:auto;border-top:1px solid var(--ox-border);margin-top:4px;padding-top:8px;scrollbar-width:thin}
.aac-chart-data table{width:100%;border-collapse:collapse;color:var(--ox-text);font:400 14px/22px var(--ox-font,sans-serif)}
.aac-chart-data th,.aac-chart-data td{padding:10px 0;text-align:left;border-bottom:1px solid var(--ox-border)}
.aac-chart-data th{color:var(--ox-muted);font-weight:400}
.aac-chart-data th:last-child,.aac-chart-data td:last-child{text-align:right}
.aac-chart-empty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--ox-muted);font:400 14px/22px var(--ox-font,sans-serif);text-align:center}
.aac-chart-empty p{margin:8px 0 0;color:var(--ox-text);font:500 14px/22px var(--ox-font,sans-serif)}
.aac-chart-empty>span:last-child{max-width:28em}
.aac-chart-empty-line{display:block;width:112px;height:32px;border-bottom:1px solid var(--ox-border);background:linear-gradient(to top,color-mix(in srgb,var(--ox-border) 30%,transparent),transparent)}
.aac-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@keyframes aac-line-reveal{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes aac-area-reveal{from{opacity:0}to{opacity:1}}
@keyframes aac-tooltip-in{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:768px) and (max-width:1199px){.aac-chart-plot{height:240px}}
@media(max-width:767px){.aac-chart-head{gap:12px;margin-bottom:8px}.aac-chart-plot{height:208px}.aac-chart-ranges button{padding-inline:10px}.aac-chart-tooltip{width:192px;padding:10px 12px}.aac-chart-tooltip strong{font-size:16px;line-height:24px}.aac-chart-foot{margin-top:0}.followers-trend-summary{margin:16px 0}.followers-trend-summary>strong{font-size:30px}.followers-trend .aac-chart-ranges{gap:2px;width:100%;justify-content:space-between}.followers-trend .aac-chart-ranges button{flex:1;font-size:13px}}
@media(prefers-reduced-motion:reduce){.aac-chart *, .aac-chart *::before,.aac-chart *::after{animation:none!important;transition:none!important}.aac-chart-line{stroke-dashoffset:0}}
html:is([data-motion=reduce],[data-motion-effective=reduce],[data-motion-paused=true]) .aac-chart *{animation:none!important;transition:none!important}

/* The assistant shares the work surface; selecting a reference never opens a modal. */
.creation-assistant-open.ops-shell { grid-template-columns: 240px minmax(0, 1fr) 360px; }
.embedded-workspace.creation-assistant-open.ops-shell { grid-template-columns: minmax(0, 1fr) 360px; }
.creation-assistant-open .topbar > div:first-child { min-width: 0; flex: 1; }
.creation-assistant-open .topbar strong { min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.creation-assistant-open .topbar > div:last-child { flex: 0 0 auto; }
.creation-assistant { position: sticky; top: 0; height: 100dvh; min-width: 0; display: flex; flex-direction: column; border-left: 1px solid var(--line); background: var(--surface, #fff); color: var(--ink); }
.creation-assistant-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 20px; border-bottom: 1px solid var(--line); }
.creation-assistant h2 { margin: 0; font-size: 18px; line-height: 1.5; font-weight: 650; }
.creation-assistant-header p { margin: 4px 0 0; max-width: 250px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--muted); font-size: 12px; }
.creation-conversation { flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 24px 20px; scrollbar-width: thin; }
.creation-welcome { padding: 28px 0; }
.creation-welcome img { width: 44px; height: 44px; object-fit: contain; margin-bottom: 16px; }
.creation-welcome h3 { margin: 0 0 8px; font-size: 16px; line-height: 1.5; }
.creation-welcome p, .creation-message p { font-size: 14px; line-height: 1.85; margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.creation-welcome p { color: var(--muted); }
.creation-message { padding: 0 0 24px; }
.creation-message + .creation-message { padding-top: 24px; border-top: 1px solid var(--line); }
.creation-message-user p { color: var(--muted); }
.creation-answer > div + div { margin-top: 16px; }
.creation-answer strong { font-weight: 650; }
.creation-answer ul { margin: 8px 0 0; padding-left: 18px; list-style: disc; font-size: 14px; line-height: 1.85; }
.creation-answer li + li { margin-top: 4px; }
.creation-message-label { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 10px; font-size: 12px; font-weight: 600; }
.creation-message-label time { font-weight: 400; font-size: 11px; color: var(--muted); }
.creation-sent-references, .creation-reference-chips { list-style: none; padding: 0; margin: 0; }
.creation-sent-references { margin: 0 0 12px; display: grid; gap: 8px; }
.creation-sent-references li { display: flex; align-items: center; gap: 8px; color: var(--muted); font-size: 12px; }
.creation-sent-references span { overflow-wrap: anywhere; }
.creation-sent-references svg { flex: 0 0 auto; }
.creation-composer { flex: 0 0 auto; padding: 16px 16px 8px; border-top: 1px solid var(--line); }
.creation-input-shell { border: 1px solid var(--control, #cfcfd6); border-radius: 14px; background: var(--field, var(--soft)); overflow: hidden; transition: border-color 160ms ease; }
.creation-input-shell:focus-within { border-color: var(--focus-ring); box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus-ring) 18%, transparent); }
.creation-reference-chips { display: grid; max-height: 228px; overflow-y: auto; gap: 6px; padding: 10px 10px 0; }
.creation-reference-chips li { display: flex; align-items: center; gap: 10px; border: 1px solid var(--line); border-radius: 8px; padding-left: 8px; min-height: 48px; background: var(--surface, #fff); }
.creation-reference-chips li > img { height: 36px; width: 40px; object-fit: cover; border-radius: 4px; }
.creation-reference-chips li > svg { margin: 8px; flex: 0 0 auto; }
.creation-reference-chips li > span { flex: 1; min-width: 0; }
.creation-reference-chips small { display: block; color: var(--muted); font-size: 10px; line-height: 1.5; }
.creation-reference-chips strong { display: block; font-size: 12px; line-height: 1.5; font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.creation-reference-chips .icon-button, .creation-assistant .icon-button { flex: 0 0 auto; min-height: 44px; min-width: 44px; }
.creation-composer textarea { display: block; width: 100%; min-height: 94px; max-height: 180px; resize: vertical; border: 0; border-radius: 0; background: transparent; padding: 14px 14px 8px; font-size: 14px; line-height: 1.7; color: var(--ink); }
.creation-assistant .creation-composer textarea:focus { outline: none; border: 0; box-shadow: none; }
.creation-input-actions { display: flex; align-items: center; justify-content: space-between; padding: 4px 8px 8px 14px; gap: 8px; }
.creation-input-actions span { font-size: 11px; color: var(--muted); }
.creation-input-actions .creation-send { padding: 0; min-width: 44px; min-height: 44px; border-radius: 50%; }
.creation-composer footer { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 4px; color: var(--muted); font-size: 11px; }
.creation-error { margin-top: 12px; padding: 10px 12px; background: var(--status-error-bg); color: var(--status-error); border-radius: 8px; font-size: 12px; line-height: 1.7; }
.creation-error p { margin: 0; }
.creation-error button { color: inherit; }
.creation-progress { font-size: 12px; color: var(--muted); padding: 12px 0; }
.assistant-reference-target { display: block; width: 100%; padding: 0; background: transparent; border: 0; cursor: pointer; position: relative; }
.assistant-reference-target img { display: block; width: 100%; transition: filter 160ms ease; }
.assistant-reference-target:hover img { filter: brightness(.94); }
.assistant-reference-target::after { content: '引用到助手'; position: absolute; right: 10px; bottom: 10px; padding: 6px 10px; border-radius: 6px; background: #18181be8; color: #fff; font-size: 12px; opacity: 0; transform: translateY(3px); pointer-events: none; transition: opacity 160ms ease, transform 160ms ease; }
.assistant-reference-target:hover::after, .assistant-reference-target:focus-visible::after { opacity: 1; transform: translateY(0); }
.reference-card .reference-view-original { display: inline-flex; align-items: center; min-height: 44px; gap: 4px; font-size: 12px; color: var(--muted); }
.image-current-selection > .assistant-reference-target { max-width: 200px; }
.creation-memory-panel { flex: 0 0 auto; border-bottom: 1px solid var(--line); }
.creation-memory-panel > summary { min-height: 44px; display: flex; align-items: center; gap: 8px; padding: 0 20px; list-style: none; cursor: pointer; font-size: 12px; color: var(--muted); }
.creation-memory-panel > summary::-webkit-details-marker { display: none; }
.creation-memory-panel > summary::before, .creation-used-memories > summary::before { content: '\203A'; display: inline-block; font-size: 16px; line-height: 1; }
.creation-memory-panel[open] > summary::before, .creation-used-memories[open] > summary::before { transform: rotate(90deg); }
.creation-memory-panel > summary span { margin-left: auto; font-size: 11px; font-variant-numeric: tabular-nums; }
.creation-memory-panel > summary:hover, .creation-used-memories > summary:hover { color: var(--ink); }
.creation-memory-manager { max-height: min(360px, 42dvh); overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; padding: 0 20px 12px; }
.creation-memory-manager > p { margin: 0 0 12px; font-size: 12px; line-height: 1.7; color: var(--muted); }
.creation-memory-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: start; gap: 8px; padding: 12px 0; border-top: 1px solid var(--line); }
.creation-memory-row small, .creation-used-memories small { display: block; color: var(--muted); font-size: 11px; line-height: 1.6; margin-bottom: 4px; }
.creation-memory-row p { margin: 0; font-size: 13px; line-height: 1.7; white-space: pre-wrap; overflow-wrap: anywhere; }
.creation-memory-row-actions { display: flex; gap: 0; }
.creation-memory-row-actions button { width: 44px; height: 44px; padding: 0; display: grid; place-items: center; border: 0; border-radius: 6px; background: transparent; color: var(--muted); }
.creation-memory-row-actions button:hover:not(:disabled) { color: var(--ink); background: var(--soft); }
.creation-memory-remove { grid-column: 1 / -1; display: flex; align-items: center; flex-wrap: wrap; gap: 0 12px; font-size: 12px; line-height: 1.7; }
.creation-memory-remove span { flex: 1 0 100%; color: var(--muted); }
.creation-memory-remove button, .creation-memory-edit button, .creation-memory-add { min-height: 44px; border: 0; padding: 0; background: transparent; color: var(--ink); font-size: 12px; }
.creation-memory-remove button:last-child { color: var(--status-error); }
.creation-memory-add { margin-top: 4px; }
.creation-memory-edit { display: grid; gap: 12px; padding-top: 12px; border-top: 1px solid var(--line); }
.creation-memory-edit label { display: grid; gap: 8px; font-size: 12px; line-height: 1.5; color: var(--muted); }
.creation-memory-edit select, .creation-memory-edit textarea { width: 100%; border: 1px solid var(--control, var(--line)); border-radius: 6px; background: var(--field, var(--soft)); color: var(--ink); font: inherit; padding: 10px 12px; }
.creation-memory-edit select { min-height: 44px; padding-right: 32px; }
.creation-memory-edit textarea { min-height: 94px; max-height: 180px; resize: vertical; line-height: 1.7; }
.creation-memory-edit > p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.6; }
.creation-memory-edit > div { display: flex; justify-content: flex-end; gap: 16px; }
.creation-memory-edit button[type=submit] { color: var(--ink); font-weight: 600; }
.creation-assistant .creation-memory-error { color: var(--status-error); }
.creation-memory-panel button:disabled { opacity: .48; cursor: default; }
.creation-memory-panel button:focus-visible, .creation-memory-panel > summary:focus-visible, .creation-used-memories > summary:focus-visible { outline: 1px solid var(--control-focus, #9b9ba6); outline-offset: 2px; }
.creation-used-memories { margin-top: 12px; color: var(--muted); font-size: 11px; line-height: 1.7; }
.creation-used-memories > summary { min-height: 44px; display: flex; align-items: center; gap: 6px; list-style: none; cursor: pointer; }
.creation-used-memories > summary::-webkit-details-marker { display: none; }
.creation-used-memories ul { padding: 0; margin: 0; list-style: none; }
.creation-used-memories li { padding: 10px 0; border-top: 1px solid var(--line); }
.creation-used-memories li p, .creation-used-memories > p { margin: 0; font-size: 12px; line-height: 1.7; white-space: pre-wrap; overflow-wrap: anywhere; }
.creation-used-memories li p { color: var(--ink); }
.creation-used-memories li > span { display: block; margin-top: 4px; font-size: 10px; }
@media (max-width: 1400px) and (min-width: 1101px) { .creation-assistant-open .two-fields { grid-template-columns: minmax(0,1fr); } .creation-assistant-open .topbar .text-muted, .creation-assistant-open .topbar .slash { display: none; } }
@media (max-width: 1100px) { .creation-assistant-open.ops-shell { grid-template-columns: 240px minmax(0,1fr); } .embedded-workspace.creation-assistant-open.ops-shell { grid-template-columns: minmax(0,1fr); } .creation-assistant { position: fixed; top: 0; right: 0; bottom: 0; width: min(360px, 100vw); z-index: 45; box-shadow: -12px 0 32px #00000015; } }
@media (max-width: 760px) { .creation-assistant-open.ops-shell { grid-template-columns: minmax(0,1fr); } .creation-assistant { width: 100%; } #creation-assistant-toggle { padding: 0; min-width: 44px; } #creation-assistant-toggle > span { display: none; } }
@media (prefers-reduced-motion: reduce) { .creation-input-shell, .assistant-reference-target img, .assistant-reference-target::after { transition: none; } }

/* Publishing requests share the workspace container and semantic theme tokens. */
.publish-workspace {
  min-width: 0;
  width: 100%;
  max-width: 1280px;
  margin-inline: auto;
  color: var(--ink);
}
.publish-workspace :is(button, input, textarea) {
  font: inherit;
}
.publish-workspace button {
  min-height: 44px;
}
.publish-page-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 24px;
}
.publish-page-heading h1 {
  font-size: 28px;
  font-weight: 600;
  line-height: 1.3;
}
.publish-page-heading p {
  color: var(--muted);
  font-size: 15px;
  margin-top: 8px;
  max-width: 65ch;
}
.publish-tabs {
  display: flex;
  gap: 24px;
  border-bottom: 1px solid var(--line);
  margin-bottom: 32px;
}
.publish-tabs button {
  background: none;
  color: var(--muted);
  border: 0;
  border-bottom: 2px solid transparent;
  padding: 10px 0;
  font-size: 15px;
}
.publish-tabs button[aria-current="page"] {
  color: var(--ink);
  border-bottom-color: var(--ink);
}
.publish-tabs span {
  margin-left: 8px;
  font-size: 13px;
  color: var(--muted);
  font-variant-numeric: tabular-nums;
}
.publish-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 310px;
  gap: 32px;
  align-items: start;
}
.publish-form {
  display: grid;
  gap: 24px;
  width: 100%;
  min-width: 0;
}
.publish-field {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
  font-size: 15px;
}
.publish-field > span:first-child {
  font-weight: 500;
  color: var(--ink);
}
.publish-field small,
.publish-group legend small {
  margin-left: 8px;
  color: var(--muted);
  font-weight: 400;
  font-size: 13px;
}
.publish-workspace
  :is(.publish-field input, .publish-field textarea, .publish-search input) {
  width: 100%;
  box-sizing: border-box;
  min-height: 48px;
  border: 1px solid var(--control);
  border-radius: 7px;
  background: var(--field);
  color: var(--ink);
  font-size: 16px;
  line-height: 1.7;
  padding: 10px 12px;
}
.publish-field textarea {
  resize: vertical;
}
.publish-workspace :is(input, textarea)::placeholder {
  color: var(--muted);
}
.publish-workspace :is(input, textarea):hover {
  border-color: var(--control-hover);
}
.publish-workspace :is(button, input, textarea, a, summary):focus-visible,
.publish-dialog :is(button, input, textarea, a, summary):focus-visible {
  outline: 1px solid var(--control-hover);
  outline-offset: 2px;
}
.publish-group {
  margin: 0;
  padding: 0;
  border: 0;
  min-width: 0;
}
.publish-group legend {
  padding: 0;
  font-size: 15px;
  font-weight: 500;
  margin-bottom: 8px;
}
.publish-options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.publish-options button {
  min-height: 44px;
  background: var(--field);
  color: var(--ink);
  border: 1px solid var(--control);
  border-radius: 7px;
  padding: 9px 18px;
  font-size: 15px;
  transition:
    background 0.16s,
    border-color 0.16s;
}
.publish-options button:hover {
  background: var(--soft);
  border-color: var(--control-hover);
}
.publish-options button[aria-pressed="true"] {
  background: var(--soft);
  border-color: var(--control-hover);
  box-shadow: none;
}
.publish-options button[data-urgent="true"][aria-pressed="true"] {
  color: var(--status-note-ink);
  background: var(--status-note-bg);
}
.publish-accounts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 24px;
}
.publish-accounts button {
  display: flex;
  gap: 12px;
  align-items: center;
  padding: 14px 8px;
  min-height: 76px;
  text-align: left;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  background: none;
  color: var(--ink);
  transition: background 0.16s;
}
.publish-accounts button:hover {
  background: var(--soft);
}
.publish-accounts button[aria-pressed="true"] {
  background: var(--soft);
  box-shadow: none;
}
.publish-account-text {
  min-width: 0;
  flex: 1;
}
.publish-account-text strong {
  display: block;
  font-size: 15px;
  overflow-wrap: anywhere;
}
.publish-account-text small {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
  margin: 5px 0 0;
  font-size: 12px;
  color: var(--muted);
}
.publish-account-check {
  opacity: 0;
  flex: none;
  color: var(--ink);
}
[aria-pressed="true"] > .publish-account-check {
  opacity: 1;
}
.publish-avatar {
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 50%;
  overflow: hidden;
  background: var(--soft);
  font-size: 18px;
  color: var(--ink);
}
.publish-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.publish-x {
  font-size: 15px;
  width: 16px;
  text-align: center;
}
.publish-short-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 320px));
  gap: 24px;
}
.publish-date-trigger {
  display: flex;
  align-items: center;
  gap: 10px;
  text-align: left;
  width: 100%;
  min-height: 48px;
  padding: 10px 12px;
  background: var(--field);
  color: var(--ink);
  border: 1px solid var(--control);
  border-radius: 7px;
  font-size: 14px !important;
}
.publish-date-trigger svg {
  flex: none;
  color: var(--muted);
}
.publish-date-trigger:hover {
  border-color: var(--control-hover);
}
.publish-date-trigger span {
  overflow-wrap: anywhere;
}
.publish-helper {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.7;
}
.publish-group > .publish-helper {
  margin-top: 12px;
}
.publish-warning {
  color: var(--status-note-ink) !important;
  font-size: 14px;
  line-height: 1.7;
}
.publish-inline {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  padding: 0;
  width: fit-content;
  border: 0;
  background: none;
  color: var(--muted);
  font-size: 14px !important;
  text-align: left;
}
.publish-inline:hover {
  color: var(--ink);
}
.publish-supplement {
  border-top: 1px solid var(--line);
  padding-top: 16px;
}
.publish-disclosure {
  display: flex;
  align-items: center;
  gap: 8px;
  text-align: left;
  background: none;
  color: var(--muted);
  border: 0;
  padding: 0;
}
.publish-disclosure:hover {
  color: var(--ink);
}
.publish-extra-fields {
  display: grid;
  gap: 24px;
  margin-top: 16px;
}
.publish-upload-section {
  border-top: 1px solid var(--line);
  padding-top: 24px;
}
.publish-upload-section > header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.publish-upload-section h2 {
  font-size: 15px;
  font-weight: 500;
  line-height: 1.7;
}
.publish-upload-section h2 span {
  font-size: 12px;
  font-weight: 400;
  margin-left: 8px;
  color: var(--muted);
  font-variant-numeric: tabular-nums;
}
.publish-upload-section header p {
  margin-top: 4px;
}
.publish-upload-section > .publish-helper {
  margin-top: 12px;
}
.publish-upload-empty {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 16px 0;
  color: var(--muted);
  font-size: 13px;
}
.publish-upload-empty svg {
  flex: none;
}
.publish-upload-progress {
  margin-top: 12px;
  color: var(--status-info);
  font-size: 14px;
  line-height: 1.7;
  overflow-wrap: anywhere;
}
.publish-attachments {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 20px;
  list-style: none;
  margin: 16px 0 0;
  padding: 0;
}
.publish-attachments li {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 12px 0;
  border-top: 1px solid var(--line);
  min-width: 0;
}
.publish-attachment-preview {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 72px;
  height: 72px;
  background: var(--soft);
}
.publish-attachment-preview img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.publish-attachment-info {
  min-width: 0;
}
.publish-attachment-info strong {
  display: block;
  font-size: 13px;
  line-height: 1.6;
  overflow-wrap: anywhere;
  font-weight: 500;
}
.publish-attachment-info a {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 44px;
  font-size: 13px;
  color: var(--muted);
}
.publish-attachment-info a:hover {
  color: var(--ink);
}
.publish-attachments .icon-button {
  min-width: 44px;
  min-height: 44px;
  color: var(--muted);
}
.publish-attachments .icon-button:hover {
  background: var(--soft);
  color: var(--ink);
}
.publish-confirm-attachments {
  border-top: 1px solid var(--line);
  padding-top: 24px;
  margin-top: 24px;
}
.publish-confirm-attachments h3 {
  font-size: 15px;
  font-weight: 500;
}
.publish-confirm-attachments .publish-attachments {
  grid-template-columns: 1fr;
}
.publish-form-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-top: 24px;
  border-top: 1px solid var(--line);
}
.publish-feedback {
  font-size: 14px;
  line-height: 1.7;
  padding: 12px 14px;
  border-left: 2px solid currentColor;
  margin-top: 12px;
  overflow-wrap: anywhere;
}
.publish-feedback[data-tone="error"] {
  color: var(--status-error) !important;
  background: var(--status-error-bg);
}
.publish-feedback[data-tone="ok"] {
  color: var(--status-ok) !important;
  background: var(--status-ok-bg);
}
.publish-feedback[data-tone="warning"] {
  color: var(--status-note-ink) !important;
  background: var(--status-note-bg);
}
.publish-queue {
  border-left: 1px solid var(--line);
  padding-left: 24px;
  min-width: 0;
}
.publish-queue header {
  display: flex;
  align-items: center;
  gap: 12px;
  justify-content: space-between;
}
.publish-queue h2 {
  font-size: 18px;
}
.publish-queue > p {
  margin-top: 8px;
}
.publish-queue section {
  margin-top: 24px;
}
.publish-queue h3 {
  font-size: 14px;
  color: var(--muted);
  font-weight: 500;
  margin-bottom: 12px;
}
.publish-queue-rows {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
}
.publish-queue-rows li {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 10px;
  border-top: 1px solid var(--line);
  padding: 16px 0;
}
.publish-queue-number {
  font-size: 12px;
  color: var(--muted);
  padding-top: 2px;
  font-variant-numeric: tabular-nums;
}
.publish-queue-rows strong {
  display: block;
  font-size: 14px;
  font-weight: 500;
  overflow-wrap: anywhere;
}
.publish-queue-proposed {
  display: block;
  color: var(--status-info);
  font-size: 12px;
  margin-top: 4px;
}
.publish-queue-rows p {
  font-size: 13px;
  color: var(--muted);
  margin: 4px 0;
  overflow-wrap: anywhere;
}
.publish-queue-empty {
  padding: 16px 0;
  border-top: 1px solid var(--line);
}
.publish-impact {
  padding: 16px 0 0 12px;
  border-left: 2px solid var(--control);
  margin-top: 24px;
}
.publish-impact strong {
  font-size: 14px;
  font-weight: 500;
}
.publish-impact > p {
  color: var(--muted);
  font-size: 14px;
  margin-top: 8px;
}
.publish-impact details {
  margin-top: 12px;
}
.publish-workspace summary,
.publish-dialog summary {
  min-height: 44px;
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  font-size: 14px;
  color: var(--muted);
}
.publish-workspace summary:before,
.publish-dialog summary:before {
  content: "›";
  font-size: 20px;
}
.publish-workspace details[open] > summary:before,
.publish-dialog details[open] > summary:before {
  transform: rotate(90deg);
}
.publish-queue-more {
  margin-top: 16px;
  border-top: 1px solid var(--line);
}
.publish-dialog {
  width: min(560px, calc(100vw - 32px));
  max-width: none;
  max-height: calc(100dvh - 40px);
  box-sizing: border-box;
  padding: 28px;
  border: 1px solid var(--control);
  border-radius: 12px;
  background: var(--surface);
  color: var(--ink);
  overflow-y: auto;
  overscroll-behavior: contain;
}
.publish-dialog::backdrop {
  background: #10111399;
}
.publish-dialog :is(button, input, textarea) {
  font: inherit;
}
.publish-dialog button {
  min-height: 44px;
}
.publish-dialog-heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 20px;
  margin-bottom: 20px;
}
.publish-dialog-heading h2 {
  font-size: 20px;
  line-height: 1.5;
  overflow-wrap: anywhere;
  padding-top: 6px;
}
.publish-dialog-heading .icon-button {
  flex: 0 0 44px;
  min-width: 44px;
  color: var(--muted);
}
.publish-dialog .icon-button:hover {
  background: var(--soft);
  color: var(--ink);
}
.publish-summary {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 16px 12px;
  margin: 0;
  font-size: 15px;
  line-height: 1.7;
}
.publish-summary dt {
  color: var(--muted);
}
.publish-summary dd {
  margin: 0;
  overflow-wrap: anywhere;
}
.publish-dialog-actions {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}
.publish-calendar-dialog {
  width: 390px;
}
.publish-calendar-month {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 16px 0 8px;
  gap: 12px;
}
.publish-calendar-month .icon-button {
  min-width: 44px;
}
.publish-calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 2px;
}
.publish-weekday {
  text-align: center;
  font-size: 12px;
  color: var(--muted);
  padding: 8px 0;
}
.publish-calendar-grid button {
  min-height: 44px;
  border: 0;
  background: none;
  border-radius: 6px;
  color: var(--ink);
  font-size: 14px;
  padding: 0;
}
.publish-calendar-grid button:hover {
  background: var(--soft);
}
.publish-calendar-grid button[aria-pressed="true"] {
  background: var(--accent);
  color: #18181b;
}
.publish-calendar-grid button:disabled {
  opacity: 0.3;
}
.publish-date-time {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-top: 20px;
}
.publish-list-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 24px;
}
.publish-search {
  max-width: 320px;
  width: 100%;
}
.publish-request-list {
  border-top: 1px solid var(--line);
}
.publish-request-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(200px, 310px) 20px;
  align-items: center;
  gap: 24px;
  width: 100%;
  min-height: 112px !important;
  padding: 20px 8px;
  border: 0;
  border-bottom: 1px solid var(--line);
  background: none;
  color: var(--ink);
  text-align: left;
  transition: background 0.16s;
}
.publish-request-row:hover {
  background: var(--soft);
}
.publish-request-main {
  display: grid;
  gap: 6px;
}
.publish-request-heading {
  display: flex;
  align-items: baseline;
  gap: 12px;
}
.publish-request-heading strong {
  font-size: 17px;
  overflow-wrap: anywhere;
}
.publish-request-schedule {
  display: grid;
  gap: 8px;
  font-size: 13px;
  color: var(--muted);
}
.publish-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  white-space: nowrap;
  color: var(--muted);
}
.publish-status:before {
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: currentColor;
  flex: none;
}
.publish-status[data-tone="ok"] {
  color: var(--status-ok);
}
.publish-status[data-tone="warning"] {
  color: var(--status-note-ink);
}
.publish-status[data-tone="info"] {
  color: var(--status-info);
}
.publish-empty {
  padding: 48px 0;
  border-top: 1px solid var(--line);
}
.publish-empty h2 {
  font-size: 19px;
}
.publish-empty p {
  font-size: 15px;
  color: var(--muted);
  margin-top: 8px;
}
.publish-empty .button {
  margin-top: 24px;
}
.publish-detail-dialog {
  width: min(800px, calc(100vw - 32px));
}
.publish-detail-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 20px;
  color: var(--muted);
  font-size: 13px;
}
.publish-detail-section {
  border-top: 1px solid var(--line);
  padding-top: 24px;
  margin-top: 24px;
}
.publish-detail-section h3 {
  font-size: 17px;
  margin-bottom: 16px;
}
.publish-detail-section > div:not(.publish-extra-fields, .publish-child-list) {
  margin-top: 16px;
}
.publish-brief {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: 15px;
  line-height: 1.8;
}
.publish-detail-section > .publish-helper {
  margin-top: 12px;
}
.publish-detail-section > .publish-warning {
  margin-top: 12px;
}
.publish-detail-section strong {
  font-size: 15px;
}
.publish-detail-section > .publish-detail-section-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 0;
}
.publish-detail-section-title h3 {
  margin: 0;
}
.publish-detail-readonly > .publish-helper,
.publish-detail-readonly > .publish-warning {
  margin-top: 12px;
}
.publish-detail-readonly > div {
  margin-top: 16px;
}
.publish-amend-form {
  display: grid;
  gap: 24px;
}
.publish-amend-form > .publish-detail-actions {
  border-top: 1px solid var(--line);
  padding-top: 24px;
}
.publish-references {
  list-style: none;
  padding: 0;
  margin: 16px 0 0;
  display: grid;
  gap: 8px;
}
.publish-references a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 44px;
  font-size: 14px;
  text-decoration: underline;
  text-underline-offset: 4px;
  overflow-wrap: anywhere;
}
.publish-references svg {
  flex: none;
}
.publish-child-row {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 12px;
  padding: 16px 0;
  border-top: 1px solid var(--line);
}
.publish-inline-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 13px;
  min-height: 44px;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.publish-detail-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
}
.publish-detail-actions > .publish-inline {
  margin-right: auto;
}
.publish-danger {
  color: var(--status-error) !important;
}
.publish-history {
  border-top: 1px solid var(--line);
  margin-top: 24px;
  padding-top: 8px;
}
.publish-history ol {
  list-style: none;
  padding: 0;
  margin: 8px 0 0;
}
.publish-history li {
  border-top: 1px solid var(--line);
  padding: 12px 0;
  font-size: 14px;
}
.publish-history p {
  font-size: 12px;
  color: var(--muted);
  margin-top: 4px;
}
.publish-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
@media (max-width: 1199px) {
  .publish-layout {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .publish-queue {
    border-left: 0;
    border-top: 1px solid var(--line);
    padding: 24px 0 0;
  }
}
@media (max-width: 767px) {
  .publish-page-heading {
    align-items: flex-start;
  }
  .publish-page-heading h1 {
    font-size: 25px;
  }
  .publish-tabs {
    margin-bottom: 24px;
  }
  .publish-short-fields {
    grid-template-columns: 1fr;
  }
  .publish-list-toolbar {
    align-items: flex-start;
    flex-direction: column;
  }
  .publish-search {
    max-width: none;
  }
  .publish-request-row {
    grid-template-columns: minmax(0, 1fr) 20px;
    gap: 12px;
  }
  .publish-request-main {
    grid-column: 1;
  }
  .publish-request-schedule {
    grid-column: 1;
  }
  .publish-request-row > svg {
    grid-column: 2;
    grid-row: 1 / span 2;
  }
  .publish-child-row {
    grid-template-columns: 40px minmax(0, 1fr) auto;
  }
  .publish-child-row .button {
    grid-column: 2 / span 2;
    justify-self: start;
  }
  .publish-dialog {
    padding: 20px;
  }
  .publish-calendar-dialog {
    padding: 12px;
    width: min(390px, calc(100vw - 24px));
  }
  .publish-form-actions {
    align-items: flex-start;
  }
  .publish-form-actions > .button {
    width: 100%;
    justify-content: space-between;
  }
}
@media (max-width: 550px) {
  .publish-upload-section > header {
    flex-direction: column;
  }
  .publish-attachments {
    grid-template-columns: 1fr;
  }
  .publish-accounts {
    grid-template-columns: 1fr;
  }
  .publish-page-heading {
    flex-wrap: wrap;
  }
  .publish-dialog-actions > .button {
    flex: 1;
  }
  .publish-detail-actions {
    flex-wrap: wrap;
  }
  .publish-detail-actions > .button {
    width: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .publish-workspace *,
  .publish-dialog * {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }
}

/* this gets exported as style.css and can be used for the default theming */
/* these are the necessary styles for React/Svelte Flow, they get used by base.css and style.css */
.react-flow {
  direction: ltr;

  --xy-edge-stroke-default: #b1b1b7;
  --xy-edge-stroke-width-default: 1;
  --xy-edge-stroke-selected-default: #555;

  --xy-connectionline-stroke-default: #b1b1b7;
  --xy-connectionline-stroke-width-default: 1;

  --xy-attribution-background-color-default: rgba(255, 255, 255, 0.5);

  --xy-minimap-background-color-default: #fff;
  --xy-minimap-mask-background-color-default: rgba(240, 240, 240, 0.6);
  --xy-minimap-mask-stroke-color-default: transparent;
  --xy-minimap-mask-stroke-width-default: 1;
  --xy-minimap-node-background-color-default: #e2e2e2;
  --xy-minimap-node-stroke-color-default: transparent;
  --xy-minimap-node-stroke-width-default: 2;

  --xy-background-color-default: transparent;
  --xy-background-pattern-dots-color-default: #91919a;
  --xy-background-pattern-lines-color-default: #eee;
  --xy-background-pattern-cross-color-default: #e2e2e2;
  background-color: var(--xy-background-color, var(--xy-background-color-default));
  --xy-node-color-default: inherit;
  --xy-node-border-default: 1px solid #1a192b;
  --xy-node-background-color-default: #fff;
  --xy-node-group-background-color-default: rgba(240, 240, 240, 0.25);
  --xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, 0.08);
  --xy-node-boxshadow-selected-default: 0 0 0 0.5px #1a192b;
  --xy-node-border-radius-default: 3px;

  --xy-handle-background-color-default: #1a192b;
  --xy-handle-border-color-default: #fff;

  --xy-selection-background-color-default: rgba(0, 89, 220, 0.08);
  --xy-selection-border-default: 1px dotted rgba(0, 89, 220, 0.8);

  --xy-controls-button-background-color-default: #fefefe;
  --xy-controls-button-background-color-hover-default: #f4f4f4;
  --xy-controls-button-color-default: inherit;
  --xy-controls-button-color-hover-default: inherit;
  --xy-controls-button-border-color-default: #eee;
  --xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, 0.08);

  --xy-edge-label-background-color-default: #ffffff;
  --xy-edge-label-color-default: inherit;
  --xy-resize-background-color-default: #3367d9;
}
.react-flow.dark {
  --xy-edge-stroke-default: #3e3e3e;
  --xy-edge-stroke-width-default: 1;
  --xy-edge-stroke-selected-default: #727272;

  --xy-connectionline-stroke-default: #b1b1b7;
  --xy-connectionline-stroke-width-default: 1;

  --xy-attribution-background-color-default: rgba(150, 150, 150, 0.25);

  --xy-minimap-background-color-default: #141414;
  --xy-minimap-mask-background-color-default: rgba(60, 60, 60, 0.6);
  --xy-minimap-mask-stroke-color-default: transparent;
  --xy-minimap-mask-stroke-width-default: 1;
  --xy-minimap-node-background-color-default: #2b2b2b;
  --xy-minimap-node-stroke-color-default: transparent;
  --xy-minimap-node-stroke-width-default: 2;

  --xy-background-color-default: #141414;
  --xy-background-pattern-dots-color-default: #555;
  --xy-background-pattern-lines-color-default: #333;
  --xy-background-pattern-cross-color-default: #333;
  --xy-node-color-default: #f8f8f8;
  --xy-node-border-default: 1px solid #3c3c3c;
  --xy-node-background-color-default: #1e1e1e;
  --xy-node-group-background-color-default: rgba(240, 240, 240, 0.25);
  --xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, 0.08);
  --xy-node-boxshadow-selected-default: 0 0 0 0.5px #999;

  --xy-handle-background-color-default: #bebebe;
  --xy-handle-border-color-default: #1e1e1e;

  --xy-selection-background-color-default: rgba(200, 200, 220, 0.08);
  --xy-selection-border-default: 1px dotted rgba(200, 200, 220, 0.8);

  --xy-controls-button-background-color-default: #2b2b2b;
  --xy-controls-button-background-color-hover-default: #3e3e3e;
  --xy-controls-button-color-default: #f8f8f8;
  --xy-controls-button-color-hover-default: #fff;
  --xy-controls-button-border-color-default: #5b5b5b;
  --xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, 0.08);

  --xy-edge-label-background-color-default: #141414;
  --xy-edge-label-color-default: #f8f8f8;
}
.react-flow__background {
  background-color: var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));
  pointer-events: none;
  z-index: -1;
}
.react-flow__container {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.react-flow__pane {
  z-index: 1;
  touch-action: none;
}
.react-flow__pane.draggable {
    cursor: grab;
  }
.react-flow__pane.dragging {
    cursor: grabbing;
  }
.react-flow__pane.selection {
    cursor: pointer;
  }
.react-flow__viewport {
  transform-origin: 0 0;
  z-index: 2;
  pointer-events: none;
}
.react-flow__renderer {
  z-index: 4;
}
.react-flow__selection {
  z-index: 6;
}
.react-flow__nodesselection-rect:focus,
.react-flow__nodesselection-rect:focus-visible {
  outline: none;
}
.react-flow__edge-path {
  stroke: var(--xy-edge-stroke, var(--xy-edge-stroke-default));
  stroke-width: var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));
  fill: none;
}
.react-flow__connection-path {
  stroke: var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));
  stroke-width: var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));
  fill: none;
}
.react-flow .react-flow__edges {
  position: absolute;
}
.react-flow .react-flow__edges svg {
    overflow: visible;
    position: absolute;
    pointer-events: none;
  }
.react-flow__edge {
  pointer-events: visibleStroke;
}
.react-flow__edge.selectable {
    cursor: pointer;
  }
.react-flow__edge.animated path {
    stroke-dasharray: 5;
    animation: dashdraw 0.5s linear infinite;
  }
.react-flow__edge.animated path.react-flow__edge-interaction {
    stroke-dasharray: none;
    animation: none;
  }
.react-flow__edge.inactive {
    pointer-events: none;
  }
.react-flow__edge.selected,
  .react-flow__edge:focus,
  .react-flow__edge:focus-visible {
    outline: none;
  }
.react-flow__edge.selected .react-flow__edge-path,
  .react-flow__edge.selectable:focus .react-flow__edge-path,
  .react-flow__edge.selectable:focus-visible .react-flow__edge-path {
    stroke: var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default));
  }
.react-flow__edge-textwrapper {
    pointer-events: all;
  }
.react-flow__edge .react-flow__edge-text {
    pointer-events: none;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
  }
/* Arrowhead marker styles - use CSS custom properties as default */
.react-flow__arrowhead polyline {
  stroke: var(--xy-edge-stroke, var(--xy-edge-stroke-default));
}
.react-flow__arrowhead polyline.arrowclosed {
  fill: var(--xy-edge-stroke, var(--xy-edge-stroke-default));
}
.react-flow__connection {
  pointer-events: none;
}
.react-flow__connection .animated {
    stroke-dasharray: 5;
    animation: dashdraw 0.5s linear infinite;
  }
svg.react-flow__connectionline {
  z-index: 1001;
  overflow: visible;
  position: absolute;
}
.react-flow__nodes {
  pointer-events: none;
  transform-origin: 0 0;
}
.react-flow__node {
  position: absolute;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  pointer-events: all;
  transform-origin: 0 0;
  box-sizing: border-box;
  cursor: default;
}
.react-flow__node.selectable {
    cursor: pointer;
  }
.react-flow__node.draggable {
    cursor: grab;
    pointer-events: all;
  }
.react-flow__node.draggable.dragging {
      cursor: grabbing;
    }
.react-flow__nodesselection {
  z-index: 3;
  transform-origin: left top;
  pointer-events: none;
}
.react-flow__nodesselection-rect {
    position: absolute;
    pointer-events: all;
    cursor: grab;
  }
.react-flow__handle {
  position: absolute;
  pointer-events: none;
  min-width: 5px;
  min-height: 5px;
  width: 6px;
  height: 6px;
  background-color: var(--xy-handle-background-color, var(--xy-handle-background-color-default));
  border: 1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));
  border-radius: 100%;
}
.react-flow__handle.connectingfrom {
    pointer-events: all;
  }
.react-flow__handle.connectionindicator {
    pointer-events: all;
    cursor: crosshair;
  }
.react-flow__handle-bottom {
    top: auto;
    left: 50%;
    bottom: 0;
    transform: translate(-50%, 50%);
  }
.react-flow__handle-top {
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
  }
.react-flow__handle-left {
    top: 50%;
    left: 0;
    transform: translate(-50%, -50%);
  }
.react-flow__handle-right {
    top: 50%;
    right: 0;
    transform: translate(50%, -50%);
  }
.react-flow__edgeupdater {
  cursor: move;
  pointer-events: all;
}
.react-flow__pane.selection .react-flow__panel {
  pointer-events: none;
}
.react-flow__panel {
  position: absolute;
  z-index: 5;
  margin: 15px;
}
.react-flow__panel.top {
    top: 0;
  }
.react-flow__panel.bottom {
    bottom: 0;
  }
.react-flow__panel.top.center, .react-flow__panel.bottom.center {
      left: 50%;
      transform: translateX(-15px) translateX(-50%);
    }
.react-flow__panel.left {
    left: 0;
  }
.react-flow__panel.right {
    right: 0;
  }
.react-flow__panel.left.center, .react-flow__panel.right.center {
      top: 50%;
      transform: translateY(-15px) translateY(-50%);
    }
.react-flow__attribution {
  font-size: 10px;
  background: var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));
  padding: 2px 3px;
  margin: 0;
}
.react-flow__attribution a {
    text-decoration: none;
    color: #999;
  }
@keyframes dashdraw {
  from {
    stroke-dashoffset: 10;
  }
}
.react-flow__edgelabel-renderer {
  position: absolute;
  width: 100%;
  height: 100%;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  left: 0;
  top: 0;
}
.react-flow__viewport-portal {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.react-flow__minimap {
  background: var(
    --xy-minimap-background-color-props,
    var(--xy-minimap-background-color, var(--xy-minimap-background-color-default))
  );
}
.react-flow__minimap-svg {
    display: block;
  }
.react-flow__minimap-mask {
    fill: var(
      --xy-minimap-mask-background-color-props,
      var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default))
    );
    stroke: var(
      --xy-minimap-mask-stroke-color-props,
      var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default))
    );
    stroke-width: var(
      --xy-minimap-mask-stroke-width-props,
      var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default))
    );
  }
.react-flow__minimap-node {
    fill: var(
      --xy-minimap-node-background-color-props,
      var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default))
    );
    stroke: var(
      --xy-minimap-node-stroke-color-props,
      var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default))
    );
    stroke-width: var(
      --xy-minimap-node-stroke-width-props,
      var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default))
    );
  }
.react-flow__background-pattern.dots {
    fill: var(
      --xy-background-pattern-color-props,
      var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default))
    );
  }
.react-flow__background-pattern.lines {
    stroke: var(
      --xy-background-pattern-color-props,
      var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default))
    );
  }
.react-flow__background-pattern.cross {
    stroke: var(
      --xy-background-pattern-color-props,
      var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default))
    );
  }
.react-flow__controls {
  display: flex;
  flex-direction: column;
  box-shadow: var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default));
}
.react-flow__controls.horizontal {
    flex-direction: row;
  }
.react-flow__controls-button {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 26px;
    width: 26px;
    padding: 4px;
    border: none;
    background: var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));
    border-bottom: 1px solid
      var(
        --xy-controls-button-border-color-props,
        var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default))
      );
    color: var(
      --xy-controls-button-color-props,
      var(--xy-controls-button-color, var(--xy-controls-button-color-default))
    );
    cursor: pointer;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
  }
.react-flow__controls-button svg {
      width: 100%;
      max-width: 12px;
      max-height: 12px;
      fill: currentColor;
    }
.react-flow__edge.updating .react-flow__edge-path {
      stroke: #777;
    }
.react-flow__edge-text {
    font-size: 10px;
  }
.react-flow__node.selectable:focus,
  .react-flow__node.selectable:focus-visible {
    outline: none;
  }
.react-flow__node-input,
.react-flow__node-default,
.react-flow__node-output,
.react-flow__node-group {
  padding: 10px;
  border-radius: var(--xy-node-border-radius, var(--xy-node-border-radius-default));
  width: 150px;
  font-size: 12px;
  color: var(--xy-node-color, var(--xy-node-color-default));
  text-align: center;
  border: var(--xy-node-border, var(--xy-node-border-default));
  background-color: var(--xy-node-background-color, var(--xy-node-background-color-default));
}
.react-flow__node-input.selectable:hover, .react-flow__node-default.selectable:hover, .react-flow__node-output.selectable:hover, .react-flow__node-group.selectable:hover {
      box-shadow: var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default));
    }
.react-flow__node-input.selectable.selected,
    .react-flow__node-input.selectable:focus,
    .react-flow__node-input.selectable:focus-visible,
    .react-flow__node-default.selectable.selected,
    .react-flow__node-default.selectable:focus,
    .react-flow__node-default.selectable:focus-visible,
    .react-flow__node-output.selectable.selected,
    .react-flow__node-output.selectable:focus,
    .react-flow__node-output.selectable:focus-visible,
    .react-flow__node-group.selectable.selected,
    .react-flow__node-group.selectable:focus,
    .react-flow__node-group.selectable:focus-visible {
      box-shadow: var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default));
    }
.react-flow__node-group {
  background-color: var(--xy-node-group-background-color, var(--xy-node-group-background-color-default));
}
.react-flow__nodesselection-rect,
.react-flow__selection {
  background: var(--xy-selection-background-color, var(--xy-selection-background-color-default));
  border: var(--xy-selection-border, var(--xy-selection-border-default));
}
.react-flow__nodesselection-rect:focus,
  .react-flow__nodesselection-rect:focus-visible,
  .react-flow__selection:focus,
  .react-flow__selection:focus-visible {
    outline: none;
  }
.react-flow__controls-button:hover {
      background: var(
        --xy-controls-button-background-color-hover-props,
        var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default))
      );
      color: var(
        --xy-controls-button-color-hover-props,
        var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default))
      );
    }
.react-flow__controls-button:disabled {
      pointer-events: none;
    }
.react-flow__controls-button:disabled svg {
        fill-opacity: 0.4;
      }
.react-flow__controls-button:last-child {
    border-bottom: none;
  }
.react-flow__controls.horizontal .react-flow__controls-button {
    border-bottom: none;
    border-right: 1px solid
      var(
        --xy-controls-button-border-color-props,
        var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default))
      );
  }
.react-flow__controls.horizontal .react-flow__controls-button:last-child {
    border-right: none;
  }
.react-flow__resize-control {
  position: absolute;
}
.react-flow__resize-control.left,
.react-flow__resize-control.right {
  cursor: ew-resize;
}
.react-flow__resize-control.top,
.react-flow__resize-control.bottom {
  cursor: ns-resize;
}
.react-flow__resize-control.top.left,
.react-flow__resize-control.bottom.right {
  cursor: nwse-resize;
}
.react-flow__resize-control.bottom.left,
.react-flow__resize-control.top.right {
  cursor: nesw-resize;
}
/* handle styles */
.react-flow__resize-control.handle {
  width: 5px;
  height: 5px;
  border: 1px solid #fff;
  border-radius: 1px;
  background-color: var(--xy-resize-background-color, var(--xy-resize-background-color-default));
  translate: -50% -50%;
}
.react-flow__resize-control.handle.left {
  left: 0;
  top: 50%;
}
.react-flow__resize-control.handle.right {
  left: 100%;
  top: 50%;
}
.react-flow__resize-control.handle.top {
  left: 50%;
  top: 0;
}
.react-flow__resize-control.handle.bottom {
  left: 50%;
  top: 100%;
}
.react-flow__resize-control.handle.top.left {
  left: 0;
}
.react-flow__resize-control.handle.bottom.left {
  left: 0;
}
.react-flow__resize-control.handle.top.right {
  left: 100%;
}
.react-flow__resize-control.handle.bottom.right {
  left: 100%;
}
/* line styles */
.react-flow__resize-control.line {
  border-color: var(--xy-resize-background-color, var(--xy-resize-background-color-default));
  border-width: 0;
  border-style: solid;
}
.react-flow__resize-control.line.left,
.react-flow__resize-control.line.right {
  width: 1px;
  transform: translate(-50%, 0);
  top: 0;
  height: 100%;
}
.react-flow__resize-control.line.left {
  left: 0;
  border-left-width: 1px;
}
.react-flow__resize-control.line.right {
  left: 100%;
  border-right-width: 1px;
}
.react-flow__resize-control.line.top,
.react-flow__resize-control.line.bottom {
  height: 1px;
  transform: translate(0, -50%);
  left: 0;
  width: 100%;
}
.react-flow__resize-control.line.top {
  top: 0;
  border-top-width: 1px;
}
.react-flow__resize-control.line.bottom {
  border-bottom-width: 1px;
  top: 100%;
}
.react-flow__edge-textbg {
  fill: var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default));
}
.react-flow__edge-text {
  fill: var(--xy-edge-label-color, var(--xy-edge-label-color-default));
}

.content-canvas{display:flex;flex-direction:column;min-width:0;width:100%;color:var(--ink);--canvas-node-background:var(--surface,#fff);--canvas-tool-background:var(--surface,#fff);--canvas-grid:#c5c5cb}.canvas-workspace-bar{display:flex;align-items:center;gap:20px;min-height:60px;border-bottom:1px solid var(--line,#ddd);padding:4px 2px 12px}.canvas-workspace-bar>div{display:flex;align-items:baseline;gap:12px;min-width:0}.canvas-workspace-bar strong{font-size:16px;font-weight:600}.canvas-workspace-bar>div>span,.canvas-save-state{color:var(--muted);font-size:12px;white-space:nowrap}.canvas-workspace-bar nav{display:flex;gap:4px;margin-left:auto}.canvas-workspace-bar nav button{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;background:transparent;border:0;border-radius:8px;color:var(--ink);font-size:13px}.canvas-workspace-bar nav button:hover{background:var(--soft,#f4f4f6)}.canvas-save-state{min-width:76px;text-align:right}.canvas-stage{height:calc(100dvh - 232px);min-height:480px;position:relative;isolation:isolate;background:var(--canvas,#f5f5f7);overflow:hidden}.content-canvas .react-flow{--xy-background-color:var(--canvas,#f5f5f7);--xy-background-pattern-dots-color:var(--canvas-grid);--xy-node-color:var(--ink);--xy-node-background-color:var(--canvas-node-background);--xy-node-border:1px solid var(--control,#cfcfd6);--xy-node-boxshadow-hover:none;--xy-node-boxshadow-selected:none;--xy-node-border-radius:6px}.content-canvas .react-flow__node-media{padding:0;border:0;background:transparent}.canvas-media-object{width:420px;background:var(--canvas-node-background);border:1px solid var(--control,#cfcfd6);border-radius:6px;overflow:hidden;box-shadow:0 4px 18px rgb(0 0 0 / .05)}.canvas-media-object.is-focused{outline:1px solid #b3b3bb;outline-offset:3px}.canvas-object-handle{height:48px;display:flex;align-items:center;gap:9px;padding:0 14px;cursor:grab;border-bottom:1px solid var(--line,#ddd);user-select:none}.canvas-object-handle:active{cursor:grabbing}.canvas-object-handle>span{font-size:11px;color:var(--muted);flex:none}.canvas-object-handle strong{font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.canvas-object-handle small{display:flex;gap:4px;align-items:center;font-size:10px;white-space:nowrap;margin-left:auto;color:var(--muted)}.canvas-image-surface{display:flex;align-items:center;justify-content:center;width:100%;height:236px;padding:0;border:0;background:var(--canvas);cursor:pointer}.canvas-image-surface img{display:block;width:100%;height:100%;object-fit:contain}.canvas-media-object video{display:block;width:100%;height:236px;object-fit:contain;background:#101113}.canvas-script-content{margin:0;min-height:140px;max-height:236px;overflow:auto;padding:18px 20px;white-space:pre-wrap;font-family:inherit;font-size:14px;line-height:1.85;color:var(--ink);background:transparent}.canvas-object-actions{display:flex;gap:4px;padding:4px 8px;border-top:1px solid var(--line,#ddd)}.canvas-object-actions button,.canvas-object-actions a{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;border:0;border-radius:4px;background:transparent;color:var(--ink);font-size:12px;text-decoration:none}.canvas-object-actions button:hover,.canvas-object-actions a:hover{background:var(--soft,#f4f4f6)}.canvas-object-actions .canvas-hide-object{margin-left:auto;color:var(--muted)}.canvas-object-actions button:disabled{opacity:.4;cursor:not-allowed}.canvas-object-error{margin:0;padding:10px 14px;color:var(--status-error,var(--error,#d84747));font-size:12px;line-height:1.6}.canvas-tools{display:flex;align-items:center;gap:2px;padding:4px;background:var(--canvas-tool-background);border:1px solid var(--control,#cfcfd6);border-radius:12px;box-shadow:0 8px 28px rgb(0 0 0 / .1);margin-bottom:18px!important;max-width:calc(100% - 20px)}.canvas-tools button,.canvas-hidden-list button{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;gap:5px;border:0;border-radius:7px;background:transparent;color:var(--ink)}.canvas-tools button:hover,.canvas-hidden-list button:hover{background:var(--soft,#f4f4f6)}.canvas-tools button:disabled{opacity:.35;cursor:not-allowed}.canvas-tools>span{min-width:44px;text-align:center;font-size:12px;font-variant-numeric:tabular-nums;color:var(--muted)}.canvas-tools i{height:20px;width:1px;background:var(--line,#ddd);margin:0 3px}.canvas-tools b{font-size:10px;font-weight:500}.canvas-hidden-list{width:280px;max-width:calc(100% - 24px);padding:10px 12px;background:var(--surface);border:1px solid var(--control);border-radius:8px;box-shadow:0 8px 24px rgb(0 0 0 / .08)}.canvas-hidden-list header{display:flex;justify-content:space-between;align-items:center}.canvas-hidden-list header strong{font-size:14px;font-weight:600}.canvas-hidden-list p{margin:0 0 8px;color:var(--muted);font-size:12px}.canvas-hidden-list>button{width:100%;justify-content:flex-start;padding:0 8px;font-size:12px}.canvas-hidden-list>button>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-right:auto}.canvas-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;pointer-events:none;padding:24px;text-align:center}.canvas-empty-symbol{display:flex;gap:12px;color:var(--muted)}.canvas-empty h2{font-size:22px;line-height:1.4;font-weight:500;margin:0}.canvas-empty p{font-size:14px;color:var(--muted);margin:0;line-height:1.7}.canvas-empty>div:last-child{display:flex;gap:10px;pointer-events:auto;margin-top:4px}.canvas-interaction-hint{position:absolute;top:16px;left:18px;font-size:11px;color:var(--muted);pointer-events:none}.canvas-message{display:flex;align-items:center;gap:14px;min-height:44px;padding:8px 12px;background:var(--soft);color:var(--muted);font-size:12px;line-height:1.6}.canvas-message button{margin-left:auto;min-width:44px;min-height:44px;background:transparent;border:0;color:var(--ink);text-decoration:underline}.canvas-message[role=alert]{color:var(--status-error,var(--error,#d84747))}.content-canvas button:focus-visible,.content-canvas a:focus-visible{outline:1px solid #b3b3bb;outline-offset:-2px}.content-canvas .react-flow__attribution{font-size:9px;background:transparent;opacity:.6}[data-theme=dark] .content-canvas{--canvas-grid:#33343a}[data-theme=dark] .canvas-media-object{box-shadow:none}[data-theme=dark] .canvas-tools{box-shadow:0 8px 28px rgb(0 0 0 / .2)}@media(max-width:1100px){.canvas-workspace-bar{gap:12px}.canvas-workspace-bar>div>span{display:none}.canvas-save-state{font-size:11px;min-width:64px}}@media(max-width:760px){.canvas-workspace-bar{flex-wrap:wrap;gap:4px;min-height:92px;padding-bottom:8px}.canvas-workspace-bar>div{flex:1}.canvas-workspace-bar nav{order:3;width:100%;margin-left:0}.canvas-workspace-bar nav button{flex:1;justify-content:center}.canvas-save-state{margin-left:auto}.canvas-stage{height:calc(100dvh - 236px);min-height:420px}.canvas-tools{gap:0;margin-bottom:12px!important;padding:3px;flex-wrap:wrap;justify-content:center}.canvas-tools button{min-width:44px;width:44px;min-height:44px;padding:0}.canvas-tools>span{min-width:38px}.canvas-tools i{margin:0 1px}.canvas-interaction-hint{max-width:calc(100% - 24px);left:12px;font-size:10px}.canvas-empty h2{font-size:20px}.canvas-empty p{max-width:260px}.canvas-empty>div:last-child{flex-wrap:wrap;justify-content:center}}@media(prefers-reduced-motion:reduce){.content-canvas *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
.canvas-image-surface:disabled{opacity:1;cursor:default}
.canvas-image-surface.preview-background-checker{background-color:#ececef;background-image:linear-gradient(45deg,#d5d5da 25%,transparent 25%),linear-gradient(-45deg,#d5d5da 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#d5d5da 75%),linear-gradient(-45deg,transparent 75%,#d5d5da 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0}
.canvas-image-surface.preview-background-light{background:#fff}.canvas-image-surface.preview-background-dark{background:#17181b}
.creation-reference-chips img{background:#ececef}
/* The canvas is the creation centre. Selection and focus use neutral contrast. */
.canvas-selection-tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:5px 10px;border:1px solid var(--control);border-radius:8px;background:var(--surface);color:var(--ink);max-width:calc(100% - 32px);margin-top:74px!important}.canvas-selection-tools>span{padding:0 8px;font-size:12px;color:var(--muted)}.canvas-selection-tools button{min-height:40px;padding:0 10px;border:0;border-radius:6px;background:transparent;font-size:12px;color:var(--ink)}.canvas-selection-tools button:hover{background:var(--soft)}.canvas-shortcuts{width:310px;max-width:calc(100% - 24px);padding:16px;border:1px solid var(--control);border-radius:10px;background:var(--surface);color:var(--ink)}.canvas-shortcuts header{display:flex;align-items:center;justify-content:space-between}.canvas-shortcuts header button{min-width:44px;min-height:44px;display:grid;place-items:center;background:transparent;color:var(--ink);border:0}.canvas-shortcuts p{font-size:12px;line-height:1.6;color:var(--muted)}.canvas-shortcuts dl{display:grid;grid-template-columns:1fr auto;gap:12px;font-size:12px}.canvas-shortcuts dd{margin:0;color:var(--muted)}.canvas-shortcuts label{display:grid;gap:8px;font-size:12px}.canvas-create-composer>textarea{scrollbar-width:thin;scrollbar-color:var(--control) transparent}.canvas-create-composer>textarea:focus{outline:none!important;box-shadow:none!important}.canvas-create-composer:focus-within{border-color:var(--control-focus);box-shadow:none}
.content-canvas{outline:none}.canvas-media-object.is-focused{outline:1px solid var(--control-focus,#8A8A95);outline-offset:3px}.content-canvas :is(button,a,select,textarea,input):focus-visible{outline:1px solid var(--control-focus,#8A8A95);outline-offset:2px}.content-canvas .react-flow__selection{border:1px solid #8A8A95;background:rgb(138 138 149 / .12)}.content-canvas .react-flow__nodesselection-rect{border:1px solid #8A8A95;background:transparent}
.canvas-workspace-bar>div:first-child{min-width:0;flex:1}.canvas-workspace-bar>div:first-child>strong{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-workspace-bar>div:first-child>.text-button{font-size:12px;min-height:44px;flex:none}.canvas-manage-actions{display:flex;align-items:center;gap:4px;flex:none}.canvas-manage-actions button{min-height:44px;padding:8px 12px;border:0;border-radius:6px;background:transparent;color:var(--ink);font-size:12px}.canvas-manage-actions button:hover{background:var(--soft)}.canvas-workspace-bar nav{margin-left:0}.canvas-workspace-bar nav button{padding-inline:8px;font-size:12px}.canvas-workspace-bar .canvas-save-state{font-size:11px;min-width:66px}
.content-canvas .canvas-tools{top:0;left:0;bottom:auto;margin:12px!important;max-width:calc(100% - 24px);padding:3px;border-radius:8px;box-shadow:0 3px 12px rgb(0 0 0 / .06)}.content-canvas .canvas-tools :is(button,span){min-width:44px}.content-canvas .canvas-tools button{height:44px}.content-canvas .canvas-tools i{margin-inline:2px}.canvas-note-editor{display:block;box-sizing:border-box;min-height:190px;height:230px;max-height:600px;width:100%;padding:16px 18px;resize:vertical;border:0;border-radius:0;background:var(--surface);color:var(--ink);font:13px/1.85 inherit;line-height:1.85;white-space:pre-wrap}.canvas-note-editor:disabled{opacity:1}.canvas-object-actions{flex-wrap:wrap}.canvas-object-actions :is(button,a){padding-inline:8px;font-size:11px;min-height:44px}.canvas-object-actions .canvas-hide-object{margin-left:auto}
.canvas-create-composer{width:min(680px,calc(100% - 40px));margin:0 0 20px!important;padding:14px 16px 10px;border:1px solid var(--control);border-radius:12px;background:var(--surface);box-shadow:0 6px 28px rgb(0 0 0 / .08);color:var(--ink)}.canvas-create-composer>textarea{display:block;box-sizing:border-box;width:100%;min-height:68px;max-height:180px;resize:vertical;padding:2px 2px 10px;border:0;border-radius:0;background:transparent;color:var(--ink);font:14px/1.7 inherit;line-height:1.7;outline:none}.canvas-create-composer>textarea::placeholder{color:var(--muted)}.canvas-create-composer>textarea:focus-visible{outline:none}.canvas-composer-actions{display:flex;align-items:center;gap:10px;padding-top:10px;border-top:1px solid var(--line)}.canvas-composer-actions>select{min-width:0;min-height:44px;max-width:180px;padding:8px 30px 8px 10px;border:1px solid var(--control);border-radius:6px;background:var(--surface);color:var(--ink);font-size:13px}.canvas-composer-actions>select[aria-label="画布比例"]{max-width:90px}.canvas-reference-add{display:flex;align-items:center;justify-content:center;gap:5px;min-width:60px;min-height:44px;padding:8px;border:0;border-radius:6px;background:var(--soft);font-size:12px;color:var(--ink)}.canvas-reference-add:hover{background:var(--canvas)}.canvas-composer-actions>.canvas-generate-button{margin-left:auto;justify-content:center;min-height:46px;min-width:136px;padding-inline:16px;font-size:14px;font-weight:700;background:#FF8200!important;border-color:#FF8200!important;color:#131316!important;gap:12px}.canvas-generate-button:disabled{opacity:.5;cursor:not-allowed}.canvas-creation-status{min-height:20px;margin:8px 2px 0;font-size:11px;line-height:1.6;color:var(--muted);overflow-wrap:anywhere}.canvas-reference-chips{display:flex;gap:8px;max-height:148px;overflow:auto;padding:0 0 10px;scrollbar-width:thin}.canvas-reference-chips>div{display:flex;align-items:center;flex:none;max-width:190px;gap:8px;min-height:52px;padding:4px 4px 4px 6px;border:1px solid var(--line);border-radius:6px;background:var(--soft)}.canvas-reference-chips img{width:40px;height:40px;object-fit:contain;background:var(--canvas);border-radius:3px}.canvas-reference-chips span{min-width:0;max-width:85px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.canvas-reference-chips button{display:grid;place-items:center;min-width:44px;min-height:44px;border:0;border-radius:4px;background:transparent;color:var(--muted)}.canvas-reference-chips button:hover{background:var(--canvas)}.canvas-reference-chips select{max-width:80px;min-height:44px;font-size:11px}
.canvas-context-menu{position:absolute;z-index:30;width:216px;padding:8px;border:1px solid var(--control);border-radius:8px;background:var(--surface);color:var(--ink);box-shadow:0 6px 24px rgb(0 0 0 / .12)}.canvas-context-menu>strong{display:block;padding:8px 10px;font-size:11px;font-weight:500;color:var(--muted)}.canvas-context-menu :is(button,a){display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;width:100%;padding:8px 10px;border:0;border-radius:5px;background:transparent;color:var(--ink);text-align:left;font-size:12px;text-decoration:none}.canvas-context-menu :is(button,a):hover{background:var(--soft)}.canvas-context-menu button:disabled{opacity:.4;cursor:not-allowed}.canvas-context-menu button>span{font-size:10px;color:var(--muted)}.canvas-context-menu hr{margin:6px 2px;border:0;border-top:1px solid var(--line)}.canvas-context-menu>p{margin:6px 10px;font-size:10px;line-height:1.6;color:var(--muted)}.canvas-interaction-hint{top:auto;bottom:8px;left:16px;font-size:10px;max-width:calc(100% - 32px);z-index:3}.canvas-empty{padding-bottom:200px}.canvas-empty h2{font-size:20px}.canvas-empty p{font-size:13px}.canvas-empty>div:last-child{display:none}
@media(max-width:1200px){.canvas-workspace-bar nav button{padding-inline:6px}.canvas-workspace-bar nav button svg{display:none}.canvas-workspace-bar>div:first-child>span{display:none}.canvas-create-composer{width:min(640px,calc(100% - 32px))}}
@media(max-width:850px){.content-canvas .canvas-workspace-bar{gap:8px;min-height:74px}.canvas-workspace-bar>div:first-child{flex-basis:calc(100% - 80px)}.canvas-workspace-bar>div:first-child>strong{max-width:170px;font-size:14px}.canvas-manage-actions{order:3}.canvas-workspace-bar nav{order:4;width:auto;margin-left:auto}.canvas-workspace-bar nav button{min-height:44px;flex:none}.canvas-save-state{margin-left:auto}.content-canvas .canvas-tools{display:flex!important;flex-wrap:wrap;justify-content:flex-start;width:auto;max-width:calc(100% - 24px);margin:12px!important;padding:3px}.content-canvas .canvas-tools>i{display:block}.content-canvas .canvas-tools>span{display:flex;align-items:center;justify-content:center}.content-canvas .canvas-tools>button{width:44px;flex:none}.canvas-create-composer{margin-bottom:22px!important}.canvas-composer-actions{gap:8px}.canvas-composer-actions>select{max-width:148px;font-size:12px}.canvas-composer-actions>.canvas-generate-button{min-width:116px;padding-inline:12px;font-size:13px}.canvas-reference-add{min-width:44px}.canvas-reference-add>span{display:none}}
@media(max-width:600px){.canvas-create-composer{width:calc(100% - 24px);padding:12px 12px 8px;border-radius:10px}.canvas-create-composer>textarea{font-size:16px;min-height:64px}.canvas-composer-actions{flex-wrap:wrap;gap:8px}.canvas-composer-actions>select{font-size:16px;flex:1;max-width:none}.canvas-composer-actions>select[aria-label="画布比例"]{flex:none;max-width:88px}.canvas-composer-actions>.canvas-generate-button{flex:1;min-width:100%;width:100%;min-height:44px;margin-left:0;font-size:14px}.canvas-reference-add{min-width:44px;flex:none}.canvas-creation-status{font-size:10px}.canvas-reference-chips>div{max-width:170px}.canvas-interaction-hint{display:none}.canvas-empty{padding-bottom:240px}.canvas-empty h2{font-size:18px}.canvas-empty p{max-width:250px;font-size:12px}.content-canvas .canvas-tools{max-width:calc(100% - 24px);border-radius:8px}.content-canvas .canvas-tools>i{display:none}.canvas-workspace-bar nav button{font-size:11px}.canvas-workspace-bar>div:first-child>strong{max-width:135px}.canvas-workspace-bar .canvas-save-state{font-size:10px;min-width:56px}.canvas-context-menu{width:208px}}

.canvas-note-editor{font-family:inherit;font-size:13px}.canvas-create-composer>textarea{font-family:inherit;font-size:14px}.canvas-context-menu{max-height:calc(100% - 16px);overflow-y:auto}.canvas-provider-notices{width:260px;max-width:calc(100% - 24px);max-height:280px;overflow:auto;margin:12px!important;padding:10px 12px;border:1px solid var(--control);border-radius:8px;background:var(--surface);color:var(--ink);box-shadow:0 3px 12px rgb(0 0 0 / .05)}.canvas-provider-notices summary{min-height:44px;align-content:center;font-size:12px;cursor:pointer}.canvas-provider-notices :is(p,pre){font-size:12px;line-height:1.7;overflow-wrap:anywhere;white-space:pre-wrap}.canvas-provider-notices pre{max-height:160px;overflow:auto}.canvas-provider-notices :is(button,a){display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 10px;border:1px solid var(--control);border-radius:6px;font-size:12px;background:var(--soft);color:var(--ink);margin-top:8px}.canvas-provider-notices button:disabled{opacity:.5}@media(max-width:600px){.canvas-create-composer>textarea{font-size:16px}.canvas-provider-notices{top:72px!important;width:224px}}
.canvas-composer-actions>.workspace-select{min-width:0;max-width:180px;flex:1}.canvas-composer-actions>.workspace-select:has([aria-label="画布比例"]){flex:none;width:90px}.canvas-composer-actions .workspace-select-trigger{font-size:13px;min-height:44px;padding:8px 10px}.canvas-composer-actions .workspace-select-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-create-specs .workspace-select,.image-reference-detail .workspace-select{width:100%}@media(max-width:850px){.canvas-composer-actions>.workspace-select{max-width:148px}.canvas-composer-actions .workspace-select-trigger{font-size:12px}}@media(max-width:600px){.canvas-composer-actions>.workspace-select{max-width:none}.canvas-composer-actions>.workspace-select:has([aria-label="画布比例"]){width:88px}.canvas-composer-actions .workspace-select-trigger{font-size:14px}}
/* Keep the floating prompt inside the visible canvas, including scrollbar widths. */
.content-canvas .canvas-create-composer{left:20px!important;right:20px!important;transform:none!important;margin:0 auto 20px!important}.content-canvas .canvas-workspace-bar>.canvas-manage-actions{flex:none}.canvas-manage-actions button{white-space:nowrap;flex:none}
@media(max-width:850px){.content-canvas .canvas-workspace-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:0 8px}.content-canvas .canvas-workspace-bar>div:first-child{grid-column:1;grid-row:1;min-width:0}.content-canvas .canvas-workspace-bar>.canvas-save-state{grid-column:2;grid-row:1;min-width:0}.content-canvas .canvas-workspace-bar>.canvas-manage-actions{grid-column:1;grid-row:2;gap:0}.content-canvas .canvas-workspace-bar>nav{grid-column:2;grid-row:2;margin:0;gap:0;width:auto}.canvas-manage-actions button{padding:8px;font-size:11px}.content-canvas .canvas-workspace-bar>nav button{padding:8px;font-size:11px}.content-canvas .canvas-create-composer{left:16px!important;right:16px!important;margin-bottom:22px!important}}
@media(max-width:600px){.content-canvas .canvas-create-composer{left:12px!important;right:12px!important;width:calc(100% - 24px)}.content-canvas .canvas-workspace-bar>div:first-child>.text-button{padding-inline:5px}}
/* Image creation occupies its own column; it never covers the infinite canvas. */
.canvas-workarea{display:grid;grid-template-columns:minmax(0,1fr) 360px;flex:1;min-height:480px;height:calc(100dvh - 232px);min-width:0;position:relative;overflow:hidden}
.ops-shell.canvas-mode .canvas-workarea{height:auto;min-height:0;flex:1}.canvas-workarea.is-read-only{grid-template-columns:1fr}
.content-canvas .canvas-workarea>.canvas-stage{height:100%;min-height:0;min-width:0;flex:initial}.canvas-workarea .canvas-empty{padding-bottom:24px}
.content-canvas .canvas-creation-dock{position:relative;inset:auto!important;transform:none!important;display:flex;flex-direction:column;width:360px;max-width:100%;min-height:0;min-width:0;height:100%;margin:0!important;padding:0;border:0;border-left:1px solid var(--line);border-radius:0;box-shadow:none;background:var(--surface);overflow:hidden;z-index:10}
.canvas-dock-heading{display:flex;align-items:center;justify-content:space-between;flex:none;padding:18px 20px 12px;gap:12px}.canvas-dock-heading h2{margin:0;font-size:16px;line-height:1.5;font-weight:600}.canvas-dock-close{display:none;min-width:44px;min-height:44px;align-items:center;justify-content:center;border:0;background:transparent;color:var(--ink)}
.canvas-generation-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:0 16px 12px;padding:4px;border-radius:8px;background:var(--soft);flex:none}.canvas-generation-tabs button{min-height:44px;padding:8px 6px;border:0;border-radius:6px;background:transparent;color:var(--muted);font-size:12px}.canvas-generation-tabs button[aria-pressed=true]{background:var(--surface);color:var(--ink);font-weight:600}
.canvas-dock-scroll{min-height:0;overflow:auto;flex:1;padding:0 20px 18px;scrollbar-width:thin;scrollbar-color:var(--control) transparent}.canvas-dock-scroll section[hidden]{display:none}.canvas-original-references{margin:0 0 20px}.canvas-reference-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.canvas-reference-heading h3{margin:0;font-size:12px;font-weight:600}.canvas-reference-heading h3 small{font-size:11px;font-weight:400;color:var(--muted);margin-left:4px}.canvas-reference-heading .canvas-reference-add{min-height:44px;padding:6px 10px;gap:6px}.canvas-reference-heading .canvas-reference-add span{display:inline}.canvas-original-references>p{margin:4px 0 10px;font-size:11px;line-height:1.6;color:var(--muted)}
.canvas-dock-scroll .canvas-reference-chips{padding-bottom:4px;max-height:136px;flex-wrap:wrap}.canvas-dock-scroll .canvas-reference-chips>div{max-width:none;width:100%;min-width:0}.canvas-dock-scroll .canvas-reference-chips span{flex:1;max-width:none}.canvas-dock-scroll .canvas-reference-chips button{flex:none}
.canvas-brief-panel fieldset{border:0;margin:0;padding:0;min-width:0;display:grid;gap:18px}.canvas-brief-panel .field,.canvas-prompt-field{display:grid;gap:8px;min-width:0;margin:0}.canvas-brief-panel .field>span,.canvas-prompt-field>span{font-size:12px;font-weight:500;color:var(--ink)}.canvas-brief-panel textarea,.canvas-prompt-field textarea{box-sizing:border-box;width:100%;padding:12px;border:1px solid var(--control);border-radius:7px;font:13px/1.7 inherit;font-family:inherit;color:var(--ink);background:var(--surface);resize:vertical;min-height:82px}.canvas-brief-panel textarea::placeholder,.canvas-prompt-field textarea::placeholder{color:var(--muted)}.canvas-brief-specs{display:grid;grid-template-columns:1fr 88px;gap:12px}.canvas-brief-specs .workspace-select{width:100%}.canvas-prompt-field textarea{min-height:260px;resize:vertical;scrollbar-width:thin}
.canvas-dock-help{margin-top:16px;font-size:12px}.canvas-dock-help summary{min-height:44px;align-content:center;cursor:pointer;color:var(--muted);font-size:11px}.canvas-dock-help .field{margin-top:12px}.canvas-dock-help input{width:100%;min-height:44px;padding:10px;border:1px solid var(--control);border-radius:6px;background:var(--surface);color:var(--ink);font-size:12px}.canvas-reference-options{display:grid;gap:8px;margin:12px 0 16px}.canvas-reference-options strong{font-size:11px;font-weight:500;overflow-wrap:anywhere}.canvas-reference-options .workspace-select{width:100%}.canvas-service-settings{display:grid;gap:12px}.canvas-service-settings .field{display:grid;gap:6px}.canvas-service-settings>div{display:flex;gap:8px}.canvas-service-settings button,.canvas-prompt-notice button,.canvas-prompt-version button{min-height:44px;padding:8px 10px;border:1px solid var(--control);border-radius:6px;color:var(--ink);background:var(--surface);font-size:11px}.canvas-service-settings small{font-size:10px;color:var(--muted)}
.canvas-prompt-notice{padding:12px;margin-bottom:16px;border-radius:7px;background:var(--soft)}.canvas-prompt-notice p{margin:0 0 8px;font-size:11px;line-height:1.7;color:var(--muted)}.canvas-prompt-version{padding:10px 0;border-bottom:1px solid var(--line)}.canvas-prompt-version strong{font-size:11px;font-weight:500}.canvas-prompt-version p{font-size:10px;color:var(--muted);margin:6px 0}.canvas-prompt-version button{margin:4px 6px 0 0}
.canvas-creation-dock .canvas-composer-actions{display:grid;grid-template-columns:minmax(0,1fr) 90px;gap:12px;flex:none;padding:16px 20px;margin-top:0;background:var(--surface);border-top:1px solid var(--line)}.canvas-creation-dock .canvas-composer-actions>label{display:grid;gap:6px;min-width:0}.canvas-composer-actions>label>span{font-size:11px;color:var(--muted)}.canvas-creation-dock .workspace-select{width:100%;min-width:0}.canvas-creation-dock .workspace-select-trigger{width:100%;min-height:44px;font-size:12px}.canvas-composer-actions .canvas-model-quality{grid-column:1/-1}.canvas-creation-dock .canvas-generate-button{grid-column:1/-1;width:100%;min-width:0;margin:0;min-height:48px}.canvas-creation-dock .canvas-creation-status{grid-column:1/-1;margin:0;font-size:11px;min-height:18px;line-height:1.65;overflow-wrap:anywhere;max-height:78px;overflow:auto}
.canvas-workspace-bar .canvas-dock-toggle{display:none}.creation-assistant-open .canvas-workarea{grid-template-columns:1fr}.creation-assistant-open .canvas-creation-dock{display:none}
/* Text cards resize vertically through their lower corners. */
.canvas-media-object.is-text-card{height:100%;display:flex;flex-direction:column;min-height:0}.is-text-card .canvas-object-handle,.is-text-card .canvas-object-actions{flex:none}.is-text-card .canvas-note-editor,.is-text-card .canvas-script-content{height:auto;min-height:0;max-height:none;flex:1;overflow:auto;resize:none}.content-canvas .canvas-text-resize{width:24px;height:24px;min-width:24px;min-height:24px;border:0;border-radius:0;background:transparent;cursor:ns-resize;z-index:8;box-shadow:none;opacity:.55}.content-canvas .canvas-text-resize:hover{opacity:1;background:transparent;border:0}.canvas-text-resize>span{display:block;position:absolute;width:10px;height:10px;right:4px;bottom:4px;border-right:1px solid var(--muted);border-bottom:1px solid var(--muted);pointer-events:none}.canvas-text-resize.bottom-left>span{right:auto;left:4px;border-right:0;border-left:1px solid var(--muted)}
@media(max-width:1100px){.canvas-workarea{grid-template-columns:minmax(0,1fr) 330px}.content-canvas .canvas-creation-dock{width:330px}.canvas-dock-scroll{padding-inline:16px}.canvas-creation-dock .canvas-composer-actions{padding:12px 16px;gap:10px}.canvas-dock-heading{padding-inline:16px}}
@media(max-width:1000px){.canvas-workarea{grid-template-columns:1fr}.canvas-workspace-bar .canvas-dock-toggle{display:flex}.content-canvas .canvas-creation-dock{display:none;position:absolute;top:0!important;bottom:0!important;right:0!important;left:auto!important;width:min(360px,100%);height:100%;box-shadow:-12px 0 28px rgb(0 0 0/.08)}.content-canvas .canvas-creation-dock[data-open=true]{display:flex}.canvas-dock-close{display:flex}.canvas-dock-heading{padding-block:8px}.canvas-generation-tabs{margin-bottom:8px}.canvas-dock-scroll{padding-bottom:12px}.canvas-prompt-field textarea{min-height:200px}.canvas-creation-dock .canvas-composer-actions{padding-block:12px}.canvas-workarea .canvas-empty{padding:24px}.canvas-reference-heading .canvas-reference-add>span{display:inline}.canvas-creation-dock .canvas-reference-add{width:auto}}
@media(max-width:600px){.canvas-brief-panel textarea,.canvas-prompt-field textarea{font-size:16px}.canvas-creation-dock .canvas-composer-actions>.canvas-generate-button{min-width:0}.content-canvas .canvas-creation-dock{width:100%}.canvas-dock-scroll{padding-inline:16px}.canvas-text-resize{touch-action:none}}
.content-canvas .react-flow__resize-control.canvas-text-resize{cursor:ns-resize!important}

/* Shared workspace framing. Artwork coordinates and review versions stay separate. */
/* Owner rule: every focus/selection outline is a subtle neutral, never brand orange or blue. */
.topic-create-bar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0;border-block:1px solid var(--line);margin:20px 0}.topic-create-bar p{margin:6px 0 0;color:var(--muted);font-size:13px}.topic-create-bar>div:last-child{display:flex;gap:10px;flex-wrap:wrap}.topic-create-bar .button{white-space:nowrap}@media(max-width:900px){.topic-create-bar{align-items:flex-start;flex-direction:column;gap:14px}.topic-create-bar>div:last-child{width:100%}}
:root{--focus-ring:#a6a6ae;--control-focus:#a6a6ae;--selected-surface:#ededf0}
:root[data-theme=dark]{--focus-ring:#65656d;--control-focus:#65656d;--selected-surface:#27272d}
:root[data-theme] :is(button,a,input,textarea,select,summary,[tabindex]):focus-visible{outline:1px solid var(--control-focus);outline-offset:2px;box-shadow:none}
:root[data-theme] :is(input,textarea,select):focus{border-color:var(--control-focus);box-shadow:none}
:root[data-theme] .ops-plan-search-control:focus-within{outline:1px solid var(--control-focus);outline-offset:2px;box-shadow:none}
.canvas-project-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 24px;border-bottom:1px solid var(--line);flex:none;background:var(--surface)}
.canvas-project-bar>div{display:flex;align-items:center;gap:14px;min-width:0}.canvas-project-bar strong{font-size:14px;max-width:44vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-project-bar .button{font-size:12px;min-height:36px;padding:0 14px}.canvas-project-bar .text-button{font-size:12px;min-height:36px}
.sidebar-signout{display:block;min-height:44px;padding:8px 10px;font-size:12px;color:var(--muted);background:none;border:0}.sidebar-signout:hover{color:var(--ink)}
.ops-shell:is(.page-templates,.page-design) .workspace{height:100dvh;display:flex;flex-direction:column;overflow:hidden}
.ops-shell:is(.page-templates,.page-design) .page-container{padding:0;flex:1;min-height:0;display:flex;flex-direction:column}
.ops-shell:is(.page-templates,.page-design) .topbar{flex:none}.ops-shell.page-templates .compact-work-tabs{padding:0 24px;margin:0;flex:none;overflow:auto}
.template-workspace,.design-workspace{position:relative;min-height:0;flex:1;display:flex;flex-direction:column}.template-workspace iframe,.design-workspace iframe{border:0;width:100%;height:100%;flex:1;min-height:0;background:var(--surface)}
.canvas-manager{width:min(540px,calc(100vw - 32px));padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);max-height:85dvh}
.canvas-manager::backdrop{background:#0006}.canvas-manager header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.canvas-manager header .icon-button{width:44px;height:44px}.canvas-manager form{display:grid;gap:20px}.canvas-manager footer{display:flex;justify-content:flex-end;gap:12px}.canvas-history-list{margin-top:16px;max-height:50dvh;overflow:auto}.canvas-history-item{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:76px;width:100%;padding:12px;border:0;border-bottom:1px solid var(--line);text-align:left;background:none}.canvas-history-item:hover{background:var(--soft)}.canvas-history-item strong,.canvas-history-item span{display:block}.canvas-history-item strong{font-size:14px;overflow-wrap:anywhere}.canvas-history-item span{font-size:12px;color:var(--muted);margin-top:6px}
@media(max-width:850px){.ops-shell .sidebar nav{grid-template-columns:repeat(5,minmax(0,1fr))!important}.canvas-project-bar{padding:8px 16px;align-items:flex-start;flex-wrap:wrap}.canvas-project-bar strong{max-width:55vw}.canvas-project-bar>div{gap:10px}.canvas-project-bar .text-button{font-size:11px}.ops-shell:is(.page-templates,.page-design){height:100dvh;min-height:0;display:flex;flex-direction:column}.ops-shell:is(.page-templates,.page-design) .workspace{height:auto;flex:1;min-height:0}}
.ops-shell .publish-entry{width:100%;margin:0 0 18px;justify-content:space-between;min-height:44px}
.ops-shell.canvas-mode .workspace{height:100dvh;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.ops-shell.canvas-mode .topbar{flex:none}
.ops-shell.canvas-mode .page-container{padding:0;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.ops-shell.canvas-mode .compact-work-tabs{padding:0 40px;margin:0;min-height:54px;flex:none;border-bottom:1px solid var(--line);overflow-x:auto}
.ops-shell.canvas-mode .content-canvas{flex:1;min-height:0}
.ops-shell.canvas-mode .canvas-workspace-bar{padding:6px 40px;min-height:60px;flex:none}
.ops-shell.canvas-mode .canvas-stage{height:auto;min-height:0;flex:1}
.ops-shell.canvas-mode .error-banner{margin:8px 24px;flex:none}
.canvas-no-task{padding:40px;display:grid;align-content:center;gap:20px;flex:1}
.canvas-no-task p{color:var(--muted);line-height:1.8}
.canvas-no-task .button{justify-self:start}
.task-header-identity{flex-direction:column;align-items:flex-start!important;gap:2px!important;min-width:0}
.task-header-identity .task-header-account{font-size:12px;line-height:1.5;color:var(--muted);display:block!important}
.task-header-identity>strong{font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.task-header-identity>.text-muted,.task-header-identity>.slash{display:none}
.publish-dialog-heading{position:sticky;top:-28px;background:var(--surface);z-index:1;margin:-28px -28px 20px;padding:22px 28px 12px;border-bottom:1px solid var(--line)}
.publish-calendar-dialog .publish-dialog-heading{top:-28px}
@media(max-width:760px){.publish-dialog-heading{top:-20px;margin:-20px -20px 20px;padding:16px 20px 12px}.publish-calendar-dialog .publish-dialog-heading{top:-12px;margin:-12px -12px 16px;padding:12px}}
@media(max-width:1199px){.ops-shell.canvas-mode .canvas-workspace-bar{padding:6px 24px;gap:8px}.ops-shell.canvas-mode .compact-work-tabs{padding:0 24px}.canvas-no-task{padding:24px}}
@media(max-width:767px){.ops-shell.canvas-mode .canvas-workspace-bar{padding:6px 16px}.ops-shell.canvas-mode .compact-work-tabs{padding:0 16px}}
@media(max-width:850px){.ops-shell .sidebar{position:relative}.ops-shell .publish-entry{position:absolute;right:16px;top:16px;width:auto;margin:0;min-height:44px;gap:16px}.ops-shell.canvas-mode{height:100dvh;min-height:0;display:flex;flex-direction:column}.ops-shell.canvas-mode .sidebar{flex:none}.ops-shell.canvas-mode .workspace{height:auto;flex:1;min-height:0}.ops-shell.canvas-mode .canvas-workspace-bar{min-height:96px}.ops-shell.canvas-mode .canvas-stage{min-height:280px}.canvas-no-task{padding:16px}}
@media(prefers-reduced-motion:reduce){.publish-entry{transition:none}}
@media(max-width:850px){
 .ops-shell .sidebar{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;padding:12px 16px}
 .ops-shell .sidebar .brand{display:flex;align-items:center;width:130px;min-width:130px;height:44px;margin:0}
 .ops-shell .sidebar .brand img{width:100%;height:auto}
 .ops-shell .publish-entry{top:12px}
 .ops-shell .sidebar nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:0;width:100%;overflow:visible}
 .ops-shell .sidebar nav .nav-item{width:100%;min-width:0;min-height:56px;display:flex;flex-direction:column;justify-content:center;gap:4px;margin:0;padding:6px 0}
 .ops-shell .sidebar nav .nav-item span{display:block;font-size:11px;line-height:1.4;white-space:nowrap}
 .ops-shell .topbar .theme-switch{width:44px;min-width:44px;padding:0}
 .ops-shell .topbar .theme-switch span{white-space:nowrap}
}
@media(max-width:760px){
 .task-topbar .mobile-advisor,.task-topbar .mobile-settings{display:none}
 .ops-shell .task-topbar{height:auto;min-height:64px;padding-block:8px;gap:12px}
 .task-topbar .task-header-identity{flex:1;min-width:0;overflow:hidden}
 .task-topbar .task-header-identity>strong{display:block!important;font-size:12px;max-width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
 .task-topbar .task-header-account{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;font-size:11px}
 .task-topbar>div:last-child{gap:8px!important;flex:0 0 auto}
 .ops-shell .canvas-tools{display:grid;grid-template-columns:repeat(4,minmax(44px,1fr));width:min(320px,calc(100% - 24px));max-width:none;gap:0;padding:3px}
 .ops-shell .canvas-tools>i{display:none}.ops-shell .canvas-tools>button{justify-self:center}.ops-shell .canvas-tools>span{align-self:center}
}
.task-readonly-notice{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid var(--line);background:var(--surface);color:var(--ink)}
.task-readonly-notice>div{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.task-readonly-notice span{font-size:12px;color:var(--muted)}
.task-readonly-notice button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;flex-shrink:0;font-size:13px}
@media(max-width:760px){.task-readonly-notice{padding:12px 16px;align-items:flex-start}.task-readonly-notice>div{gap:6px}.task-readonly-notice button{max-width:112px}}
/* Selection uses neutral surfaces throughout, including secondary work tabs. */
.ops-shell .compact-work-tabs button[aria-current="page"],.ops-shell .advisor-tabs button[aria-selected="true"]{border-color:transparent;background:var(--selected-surface);border-radius:6px;color:var(--ink)}
.ops-shell .account-tile[aria-pressed="true"]{border-color:var(--line);background:var(--selected-surface);box-shadow:none}
.ops-shell .account-sidebar-search:focus-within,.ops-shell .reference-panel.dragging{outline:1px solid var(--control-focus);border-color:var(--control-focus);box-shadow:none}
.ops-shell .image-concept{border:0;border-radius:8px;background:var(--soft)}
/* Writing keeps the brief and the draft in one reading frame, without a wide empty card. */
.ops-shell .writing-workspace>.editor-area{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:24px;background:transparent;border:0;border-radius:0;overflow:visible;align-items:start}
.ops-shell .writing-workspace .content-section{padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:12px;min-width:0}
.ops-shell .writing-workspace .section-heading{align-items:flex-start;gap:12px;margin-bottom:24px}
.writing-workspace .section-heading h2{font-size:18px}.writing-workspace .section-heading p{font-size:13px}
.writing-workspace .section-heading>.text-button{flex:none;font-size:12px;padding:0;min-height:28px}
.ops-shell .writing-workspace :is(.social-form,.social-post,.content-section>.field){max-width:none}
.writing-workspace .social-form>*+*{margin-top:20px}.writing-workspace .social-source{border:0;padding:16px;background:var(--soft);border-radius:8px}
.writing-workspace .social-source a{display:block;margin-top:8px;font-size:12px;line-height:1.7;overflow-wrap:anywhere}
.writing-workspace .writing-drafts>.field textarea{min-height:360px}.writing-workspace .social-post textarea{min-height:200px}
.writing-workspace .social-variants{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}
.writing-workspace .social-variants button{padding:12px;min-width:0}.writing-workspace .social-variants strong{font-size:13px;line-height:1.6}
.writing-workspace .writing-error .helper{margin-top:10px}.writing-workspace .writing-error .social-actions:empty{display:none}
.writing-workspace .editor-footer{grid-column:1/-1;padding:4px 0;border:0;background:none}
.embedded-load-state{position:absolute;inset:24px;z-index:2;display:flex;align-items:flex-start;justify-content:center;flex-direction:column;gap:16px;padding:32px;background:var(--surface);border-radius:12px}
.embedded-load-state p{color:var(--muted);max-width:56ch;line-height:1.8}.embedded-load-state h3{font-size:18px}
.template-workspace>.error-banner{margin:12px 24px;padding:12px 16px;border:0;border-radius:8px;background:var(--status-error-bg);color:var(--status-error);font-size:13px;line-height:1.7;flex:none}
.ops-shell :is(.publish-feedback,.publish-impact,.video-notice,.advisor-evidence>div,.ops-archive-form .ops-archive-warning){border:0;border-radius:8px;padding:14px 16px;background:var(--soft)}
@media(max-width:1100px){.ops-shell .writing-workspace>.editor-area{grid-template-columns:minmax(0,1fr);gap:20px}.writing-workspace .writing-drafts>.field textarea{min-height:280px}}
@media(max-width:767px){.ops-shell .writing-workspace .content-section{padding:20px}.writing-workspace .section-heading{flex-wrap:wrap}}

/* Dedicated image creation controls and a full-size, uncropped result. */
.image-creation-workspace{width:100%;max-width:none;min-width:0;padding:0;--image-pane-height:clamp(520px,calc(100dvh - 236px),880px)}
.image-create-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 20px}.image-create-heading h2{margin:0;font-size:24px;font-weight:700;line-height:1.4;letter-spacing:-.02em}.image-create-heading p{margin:6px 0 0;font-size:13px;line-height:1.7;color:var(--muted)}.image-create-heading>.text-button{min-height:44px;flex:none;font-size:13px}
.image-create-layout{display:grid;grid-template-columns:minmax(310px,350px) minmax(0,1fr);gap:24px;min-width:0;align-items:stretch}.image-create-controls{display:flex;flex-direction:column;min-width:0;height:var(--image-pane-height);border:1px solid var(--line);border-radius:10px;background:var(--surface);overflow:hidden}.image-control-scroll{min-height:0;flex:1;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-gutter:stable;padding:0 18px 20px}.image-control-tabs{position:sticky;top:0;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:8px;min-height:60px;background:var(--surface);border-bottom:1px solid var(--line);margin-bottom:20px}.image-control-tabs button{min-height:44px;padding:10px 4px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-size:13px;font-weight:600;cursor:pointer}.image-control-tabs button[aria-pressed=true]{border-bottom-color:var(--ink);color:var(--ink)}.image-control-tabs button:focus-visible{outline:2px solid #8A8A95;outline-offset:-3px}.image-control-panel[hidden]{display:none!important}.image-control-panel{min-width:0}.image-control-panel .field{margin:0 0 16px}.image-control-panel .field>span{margin-bottom:7px;font-size:13px;line-height:1.6}.image-control-panel .field :is(textarea,select,input){min-height:44px;font-size:14px;line-height:1.6}.image-control-panel textarea{resize:vertical}.image-control-panel fieldset{min-width:0}.image-create-specs{display:grid;grid-template-columns:1fr 1fr 74px;gap:10px}.image-create-specs .field>span{font-size:12px}.image-create-specs select{padding-right:26px!important;padding-left:10px!important;font-size:13px!important}
.image-creation-workspace .image-original-references{margin:20px 0 12px;padding:14px;background:var(--soft);border-radius:7px}.image-reference-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.image-reference-heading h3{margin:0;font-size:13px;font-weight:600}.image-reference-heading h3 small{font-size:11px;font-weight:400;color:var(--muted);margin-left:6px}.image-reference-heading>span{font-size:11px;color:var(--muted)}.image-creation-workspace .helper{font-size:12px;line-height:1.7;margin:8px 0;color:var(--muted)}.image-reference-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 0}.image-reference-actions :is(.button,.text-button){min-height:44px;font-size:12px}.image-reference-actions .button{padding:8px 12px;gap:6px}.image-reference-list{display:grid;gap:14px;margin-top:16px}.image-reference-list .reference-card{display:grid;grid-template-columns:70px minmax(0,1fr);gap:10px;border-top:1px solid var(--line);padding-top:14px}.image-reference-thumb{position:relative;min-width:0}.image-reference-list .assistant-reference-target{display:block;width:70px;height:70px;background:var(--surface);border:1px solid var(--line);border-radius:5px;overflow:hidden}.image-reference-list .reference-card img{width:100%;height:100%;object-fit:contain}.image-reference-list .reference-remove{right:0;top:74px;min-width:44px;min-height:44px;width:44px;height:44px;border-radius:6px}.image-reference-detail{min-width:0;display:grid;gap:8px}.image-reference-detail strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;font-weight:500;line-height:1.5}.image-reference-detail .field{margin:0}.image-reference-detail .field>span{font-size:11px;margin-bottom:4px}.image-reference-detail input{min-width:0;width:100%;min-height:44px;padding:10px;border:1px solid var(--control);border-radius:6px;background:var(--surface);font-size:12px}.image-reference-detail select{font-size:12px!important}.image-reference-detail .reference-view-original{min-height:44px;margin:0;font-size:11px}.image-prompt-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px}.image-prompt-actions :is(.button,.text-button){min-height:44px;font-size:12px}.image-prompt-actions .button{padding-inline:14px}.image-control-panel .image-advanced{margin:16px 0 0;border-top:1px solid var(--line)}.image-control-panel .image-advanced summary{font-size:12px;min-height:44px}.image-control-panel .image-advanced p{font-size:13px;line-height:1.7;margin:10px 0}.image-control-panel .image-prompt{margin:12px 0 16px}.image-control-panel .image-prompt textarea{min-height:250px;font-size:13px;line-height:1.8}.image-control-panel .image-concept{font-size:12px;padding:10px 12px}.image-control-panel .prompt-mapping{font-size:12px}.image-control-panel .prompt-mapping>div{display:block;font-size:12px}.image-control-panel .prompt-mapping>div>svg{display:none}.image-control-panel .prompt-mapping>div p{margin-top:6px}.image-control-panel .prompt-versions{width:100%}.image-control-panel .prompt-versions p{font-size:12px;line-height:1.7}.image-control-panel .social-actions :is(button,a){min-height:44px;font-size:12px}.image-control-panel .notice{font-size:12px;line-height:1.7}
.image-create-submit{flex:none;padding:14px 18px 16px;border-top:1px solid var(--line);background:var(--surface)}.image-create-submit .image-model-picker{grid-template-columns:minmax(0,1.5fr) minmax(74px,1fr);gap:10px;margin:0}.image-create-submit .field{margin:0}.image-create-submit .field>span{font-size:12px;margin-bottom:6px}.image-create-submit select{min-height:44px;font-size:13px;padding-left:10px;padding-right:30px}.image-create-submit .social-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.image-create-submit .social-actions>.primary{grid-column:1/-1;min-height:48px;background:#FF8200;color:#131316;border-color:#FF8200;font-size:15px;font-weight:700;justify-content:center;gap:12px}.image-create-submit .social-actions>.primary:hover:not(:disabled){background:#F28A1F;border-color:#F28A1F}.image-create-submit .social-actions>.primary:disabled{background:#FF8200;border-color:#FF8200;opacity:.5;color:#131316;cursor:not-allowed}.image-create-submit .social-actions :is(a,button):not(.primary){justify-content:center;min-height:44px;font-size:12px;padding:8px;gap:6px}.image-create-submit .image-status{font-size:12px;line-height:1.6;padding:8px 0 0;margin:0}.image-create-submit .error{font-size:12px;line-height:1.7;margin-top:8px}.image-service-note{margin:8px 0 0;font-size:12px;line-height:1.6;color:var(--muted)}.image-create-submit .helper{font-size:11px;line-height:1.6;margin:8px 0 0}.image-creation-workspace .lovart-settings{margin:16px 0;padding:14px;gap:12px;border-radius:7px}.image-creation-workspace .lovart-settings h3{font-size:15px}.image-creation-workspace .lovart-settings .two-fields{grid-template-columns:1fr;gap:12px;margin:0}.image-creation-workspace .lovart-settings .field{margin:0}.image-creation-workspace .lovart-settings .field>span{font-size:12px}.image-creation-workspace .lovart-settings .social-actions{gap:8px;margin-top:0}.image-creation-workspace .lovart-settings :is(button,input){font-size:12px;min-height:44px}
.image-create-results{min-width:0;height:var(--image-pane-height);overflow-y:auto;scrollbar-width:thin;overscroll-behavior:contain}.image-result-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 14px}.image-result-top h3{margin:0;font-size:16px;font-weight:600}.image-result-top p{margin:5px 0 0;font-size:12px;color:var(--muted)}.image-result-top .text-button{min-height:44px;font-size:12px}.image-large-preview{display:grid;place-items:center;width:100%;height:clamp(310px,calc(var(--image-pane-height) - 170px),620px);min-width:0;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--soft);overflow:hidden}.image-large-preview>img{width:100%;height:100%;min-height:0;object-fit:contain}.image-preview-empty{text-align:center;padding:24px;color:var(--muted)}.image-preview-empty>svg{margin:auto;color:var(--control)}.image-preview-empty h3{margin:18px 0 0;font-size:18px;font-weight:500}.image-preview-empty p{margin:10px 0 0;font-size:13px;line-height:1.8}.image-preview-empty span{display:block;margin-top:26px;font-size:12px;color:var(--muted)}.image-preview-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:16px}.image-preview-actions>div:first-child{min-width:0;flex:1}.image-preview-actions strong{display:block;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500}.image-preview-actions small{display:block;margin-top:5px;font-size:11px;color:var(--muted)}.image-preview-actions>div:last-child{display:flex;flex-wrap:wrap;gap:8px}.image-preview-actions .button{min-height:44px;font-size:12px;padding-inline:14px;gap:8px}.image-preview-actions .primary{background:#FF8200;color:#131316;border-color:#FF8200}.image-result-history{margin-top:24px}.image-result-history>h3{font-size:14px;font-weight:600;margin:0 0 12px}.image-result-history .image-job{padding:18px 0}.image-result-history .image-job-heading{gap:12px}.image-result-history .image-job-heading strong{font-size:13px}.image-result-history .image-job time{font-size:11px}.image-result-history .image-job details{margin:8px 0}.image-result-history .image-job details :is(p,small,summary){font-size:12px;line-height:1.7}.image-result-history .generated-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:12px}.image-result-history .generated-grid img{height:170px;object-fit:contain;border-radius:5px}.image-result-history .generated-grid figcaption{flex-wrap:wrap;gap:8px}.image-result-history .generated-grid .button{min-height:44px;font-size:12px;padding:8px 12px}.image-result-history .generated-grid .text-button{min-height:44px;font-size:12px}.image-result-history .generated-grid .primary{background:#FF8200;border-color:#FF8200;color:#131316}.image-result-history .generated-grid .is-previewed .assistant-reference-target{outline:2px solid #8A8A95;outline-offset:2px;border-radius:5px}.image-result-history .image-empty{min-height:110px;padding:18px 0;border-top:1px solid var(--line)}.image-result-history .image-empty>svg{display:none}.image-result-history .image-empty p{font-size:12px;margin:6px 0}.image-result-history .image-empty small{font-size:11px}.image-result-history .notice{font-size:12px;line-height:1.7}.image-result-history .notice pre{max-height:180px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}.image-result-history .source-link{font-size:12px;min-height:44px}.image-creation-workspace .button,.image-creation-workspace .icon-button{min-height:44px}.image-creation-workspace .icon-button{min-width:44px}.image-creation-workspace .button:focus-visible,.image-creation-workspace .text-button:focus-visible{outline:2px solid #8A8A95;outline-offset:3px}
@media(min-width:1700px){.image-create-layout{grid-template-columns:390px minmax(0,1fr)}}
@media(max-width:1100px){.image-create-layout{grid-template-columns:310px minmax(0,1fr);gap:16px}.image-control-scroll{padding-inline:14px}.image-create-submit{padding-inline:14px}.image-preview-actions>div:last-child{width:100%}.image-result-history .generated-grid{grid-template-columns:1fr}.image-result-history .generated-grid img{height:210px}}
@media(max-width:760px){.image-creation-workspace{--image-pane-height:auto}.image-create-layout{grid-template-columns:1fr;gap:24px}.image-create-controls{height:auto;max-height:none;overflow:visible}.image-control-scroll{overflow:visible;scrollbar-gutter:auto}.image-control-tabs{position:static}.image-create-results{height:auto;overflow:visible}.image-create-heading{align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:16px}.image-create-heading h2{font-size:21px}.image-create-heading>.text-button{padding-block:4px}.image-control-panel .field :is(textarea,select,input),.image-create-submit select{font-size:16px}.image-create-specs{grid-template-columns:1fr 1fr 74px}.image-create-specs select{font-size:16px!important}.image-large-preview{height:360px;padding:12px}.image-preview-empty{padding:12px}.image-preview-empty h3{font-size:16px}.image-preview-empty p{font-size:12px}.image-preview-empty span{font-size:11px}.image-result-history .generated-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.image-result-history .generated-grid img{height:160px}.image-create-submit{padding-bottom:18px}.image-preview-actions>div:last-child{gap:8px}.image-preview-actions .button{flex:1;justify-content:center}.image-preview-actions .icon-button{flex:none}.image-create-submit .social-actions>.primary{min-height:48px}}
@media(max-width:480px){.image-result-history .generated-grid{grid-template-columns:1fr}.image-result-history .generated-grid img{height:220px}.image-create-specs{grid-template-columns:1fr 1fr}.image-create-specs>.field:last-child{grid-column:1/-1}}


/* Shared single-select menu: neutral themes, keyboard focus, and full labels. */
.workspace-select {
  display: block;
  position: relative;
  min-width: 0;
  width: 100%;
}
.workspace-select-native {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
  pointer-events: none;
}
:root[data-theme] .workspace-select-trigger,
.workspace-select-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  width: 100%;
  min-height: 46px;
  padding: 10px 12px;
  border: 1px solid var(--control);
  border-radius: 7px;
  background: var(--field);
  color: var(--ink);
  text-align: left;
  font: inherit;
  font-size: 14px;
  line-height: 1.5;
  cursor: pointer;
  box-shadow: none;
}
.workspace-select-value {
  min-width: 0;
  overflow-wrap: anywhere;
}
.workspace-select-trigger > svg {
  flex: none;
  color: var(--muted);
}
:root[data-theme] .workspace-select-trigger:hover {
  border-color: var(--control-hover);
  background: var(--field);
}
:root[data-theme] .workspace-select-trigger:focus-visible {
  outline: 1px solid var(--control-hover);
  outline-offset: 2px;
  box-shadow: none;
}
:root[data-theme] .workspace-select-trigger[aria-expanded="true"] {
  border-color: var(--control-hover);
}
.workspace-select-trigger:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}
.workspace-select-menu {
  z-index: 80;
  box-sizing: border-box;
  padding: 5px;
  overflow-y: auto;
  overscroll-behavior: contain;
  border: 1px solid var(--control);
  border-radius: 8px;
  background: var(--surface);
  color: var(--ink);
  box-shadow: 0 8px 24px #00000012;
  font: inherit;
  font-size: 14px;
}
.workspace-select-option {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  min-height: 44px;
  padding: 10px 10px;
  box-sizing: border-box;
  border-radius: 4px;
  color: var(--ink);
  cursor: pointer;
  line-height: 1.6;
}
.workspace-select-option > span {
  min-width: 0;
  overflow-wrap: anywhere;
}
.workspace-select-option > svg {
  flex: none;
}
.workspace-select-option[data-active="true"] {
  background: var(--soft);
}
.workspace-select-option[aria-selected="true"] {
  font-weight: 600;
}
.workspace-select-option[aria-disabled="true"] {
  opacity: 0.45;
  cursor: not-allowed;
}
.workspace-select-group {
  padding: 12px 10px 4px;
  color: var(--muted);
  font-size: 12px;
}
@media (prefers-reduced-motion: no-preference) {
  .workspace-select-trigger {
    transition: border-color 0.14s;
  }
}

.publish-preview{--publish-surface:var(--surface,#fff);--publish-muted:var(--muted,#78787f);margin:6px 0 28px;color:var(--ink,#18181b)}.publish-preview-heading,.publish-preview-toolbar,.publish-preview-actions,.publish-card-heading,.publish-card-footer,.publish-preview-summary{display:flex;align-items:center;justify-content:space-between;gap:16px}.publish-preview-heading h2{font-size:24px;letter-spacing:-.6px}.publish-preview-heading p{color:var(--publish-muted);margin-top:7px;font-size:15px}.publish-selection-mode{display:flex;border:1px solid var(--line);padding:3px;border-radius:99px;flex-shrink:0}.publish-selection-mode button{border:0;background:none;color:var(--publish-muted);padding:9px 15px;border-radius:99px;font-size:14px}.publish-selection-mode button[aria-pressed=true]{background:var(--ink,#18181b);color:var(--publish-surface)}.publish-preview-toolbar{margin:22px 0 18px;flex-wrap:wrap}.publish-platform-filters{display:flex;gap:8px;flex-wrap:wrap}.publish-platform-filters button{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:99px;background:transparent;min-height:40px;padding:8px 14px;color:var(--publish-muted);font-size:14px}.publish-platform-filters button[aria-pressed=true]{background:var(--soft,#f7f7f8);color:var(--ink);border-color:#9b9ba6}.publish-platform-filters button:not(:disabled):hover{background:var(--soft)}.publish-preview-actions .button{font-size:14px;min-height:40px}.publish-target-hint{font-size:14px;color:var(--publish-muted);margin-bottom:15px}.publish-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}.publish-preview-grid[data-count="1"]{grid-template-columns:minmax(0,560px)}.publish-preview-grid[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.publish-preview-card{min-width:0;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;background:var(--publish-surface);overflow:hidden}.publish-card-heading{padding:17px 18px 13px}.publish-card-heading>span:first-child{display:flex;align-items:center;gap:8px}.publish-card-heading strong{font-size:16px}.publish-connection-status{color:var(--publish-muted);font-size:12px;text-align:right}.publish-account-select{display:block;margin:0 18px 16px}.publish-account-select>span{display:block;font-size:12px;color:var(--publish-muted);margin-bottom:7px}.publish-account-select .workspace-select{width:100%}.publish-account-select .workspace-select-trigger{min-height:42px;font-size:14px}.publish-add-account{margin:-5px 18px 14px;font-size:13px;align-self:flex-start}.publish-native-post{margin:0 16px 16px;padding:16px;border:1px solid var(--line);border-radius:10px;flex:1;min-width:0;background:var(--publish-surface)}.publish-native-account{display:flex;align-items:center;gap:9px;min-width:0;margin-bottom:13px}.publish-avatar{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:50%;overflow:hidden;background:var(--soft);color:var(--publish-muted)}.publish-avatar img{width:100%;height:100%;object-fit:cover}.publish-avatar.is-organization{width:64px;flex-basis:64px;border-radius:6px;background:#fff;padding:2px}.publish-avatar.is-organization img{object-fit:contain}.publish-native-account>div{min-width:0;flex:1}.publish-native-account strong,.publish-native-account>div>span{display:block;overflow-wrap:anywhere}.publish-native-account strong{font-size:14px;line-height:1.35}.publish-native-account>div>span{font-size:12px;color:var(--publish-muted);margin-top:3px}.publish-native-account>svg{flex-shrink:0;color:var(--publish-muted)}.publish-post-copy{font-size:15px;line-height:1.75;max-height:230px;overflow:auto;scrollbar-width:thin;overflow-wrap:anywhere;margin-bottom:12px}.publish-post-copy p{white-space:pre-wrap;line-height:inherit}.publish-post-copy.is-expanded{max-height:none;overflow:visible}.publish-post-copy strong{font-size:14px}.publish-post-media{position:relative;background:var(--soft);border:1px solid var(--line);border-radius:9px;overflow:hidden;margin-top:12px;height:250px;display:grid;place-items:center}.publish-post-media img,.publish-post-media video{width:100%;height:100%;display:block;object-fit:contain;min-width:0;min-height:0}.publish-media-empty{display:flex;flex-direction:column;align-items:center;gap:10px;font-size:13px;color:var(--publish-muted);text-align:center;padding:20px}.publish-media-pages{position:absolute;bottom:9px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px;background:#18181bdb;color:#fff;border-radius:99px;padding:3px 6px;font-size:12px;backdrop-filter:blur(5px)}.publish-media-pages button{display:grid;place-items:center;width:30px;height:30px;color:inherit;background:transparent;border:0;border-radius:50%}.publish-native-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 0 4px;color:var(--publish-muted)}.publish-native-actions>span{display:flex}.platform-instagram .publish-post-media{margin-left:-16px;margin-right:-16px;border-radius:0;border-inline:0}.platform-instagram .publish-native-actions{justify-content:flex-start;margin-bottom:10px;color:var(--ink)}.platform-instagram .publish-native-actions>svg:last-child{margin-left:auto}.platform-threads .publish-native-account strong{font-weight:700}.platform-threads .publish-native-actions{justify-content:flex-start}.platform-threads .publish-native-actions>svg:last-child{margin-left:auto}.publish-card-footer{padding:0 18px 18px;align-items:stretch;flex-direction:column;margin-top:auto;gap:12px}.publish-card-footer>span{color:var(--publish-muted);font-size:12px}.publish-card-footer .button{width:100%;font-size:13px;padding-inline:14px;gap:8px}.publish-card-footer .button svg{width:17px;height:17px}.publish-preview-summary{align-items:flex-start;margin-top:19px}.publish-preview-summary p{font-size:14px;color:var(--publish-muted);line-height:1.75;max-width:650px}.publish-preview-summary .button{font-size:14px}.publish-preview-summary .button>span{font-size:12px;opacity:.7}.publish-preview-empty{padding:40px 24px;border:1px dashed var(--line);border-radius:12px;text-align:center;color:var(--publish-muted)}.publish-preview-empty h3{font-size:18px;color:var(--ink);margin-bottom:8px}.publish-preparation-dialog{max-width:800px;width:calc(100% - 32px);padding:26px}.publish-preparation-dialog>header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.publish-preparation-dialog>header p{font-size:14px;color:var(--publish-muted);margin-top:8px}.publish-preparation-dialog>header .icon-button{width:44px;height:44px}.publish-preparation-list{display:grid;gap:22px;margin-top:27px}.publish-preparation-list>section{padding-bottom:22px;border-bottom:1px solid var(--line)}.publish-preparation-target{display:flex;gap:11px;align-items:center}.publish-preparation-target>div{flex:1;min-width:0}.publish-preparation-target strong{display:block;font-size:16px;overflow-wrap:anywhere}.publish-preparation-target>div>span{display:block;font-size:13px;color:var(--publish-muted);margin-top:4px}.publish-preparation-target>span:last-child{color:var(--publish-muted);font-size:13px}.publish-preparation-tools{display:flex;gap:9px;flex-wrap:wrap;margin-top:15px}.publish-preparation-tools .button{font-size:14px;min-height:42px}.publish-preparation-dialog>footer{display:flex;justify-content:flex-end;margin-top:22px}.publish-review-heading{padding-top:25px;margin-top:22px;border-top:1px solid var(--line);margin-bottom:18px}.publish-review-heading h3{font-size:20px}.publish-review-heading p{font-size:14px;color:var(--publish-muted);margin-top:7px}.review-source-materials{margin:18px 0 26px;border-block:1px solid var(--line);padding:16px 0}.review-source-materials>summary{font-size:14px;cursor:pointer;color:var(--publish-muted)}.review-source-materials .review-document{margin-top:17px}
html[data-theme="dark"] .publish-preview{--publish-surface:#1d1d21}html[data-theme="dark"] .publish-selection-mode button[aria-pressed=true]{background:#e4e4e9;color:#18181b}html[data-theme="dark"] .publish-platform-filters button[aria-pressed=true]{border-color:#5c5c66;background:#25252a;color:#fff}html[data-theme="dark"] .publish-preparation-dialog{background:#1d1d21;color:#f7f7f7;border-color:#34343b}
@media(max-width:1150px){.publish-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.publish-preview-grid[data-count="3"] .publish-preview-card:last-child{grid-column:1/-1;max-width:560px}.publish-preview-heading{align-items:flex-start}.publish-card-heading{gap:8px}.publish-connection-status{max-width:80px}}
@media(max-width:700px){.publish-preview-heading,.publish-preview-summary{flex-direction:column}.publish-preview-heading h2{font-size:22px}.publish-preview-toolbar{align-items:flex-start;gap:14px}.publish-preview-actions{width:100%}.publish-preview-grid,.publish-preview-grid[data-count="1"],.publish-preview-grid[data-count="2"]{grid-template-columns:minmax(0,1fr)}.publish-preview-grid[data-count="3"] .publish-preview-card:last-child{grid-column:auto;max-width:none}.publish-preview-summary .button{width:100%}.publish-card-heading{padding:16px}.publish-account-select{margin-inline:16px}.publish-connection-status{max-width:none}.publish-post-media{height:270px}.publish-preparation-dialog{padding:20px}.publish-preparation-tools{display:grid;grid-template-columns:1fr}.publish-selection-mode button{min-height:38px}.publish-preview-heading p{font-size:14px}.publish-platform-filters button{min-height:44px}.publish-post-copy{max-height:210px}}
@media(prefers-reduced-motion:reduce){.publish-preview *, .publish-preparation-dialog *{transition:none!important;animation:none!important}}

.publish-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.ops-review-panel>.section-heading>div{min-width:0;flex:1}.ops-review-panel>.section-heading h2{overflow-wrap:anywhere;line-height:1.4}.ops-review-panel>.section-heading>.plain-badge{flex-shrink:0;align-self:flex-start}

.preview-notice{position:fixed;inset:0 0 auto;z-index:9999;display:flex;align-items:center;justify-content:center;gap:18px;min-height:36px;padding:6px 16px;background:#ededf0;color:#34343b;font:12px/1.6 Arial,"Microsoft YaHei",sans-serif}.preview-notice strong{font-weight:600}.preview-notice a{color:inherit;text-decoration:underline;text-underline-offset:3px}html[data-preview=true] body{padding-top:36px}html[data-preview=true] .ops-shell .sidebar{top:36px;height:calc(100dvh - 36px)}html[data-preview=true] .ops-shell:is(.canvas-mode,.page-design,.page-templates) .workspace{height:calc(100dvh - 36px)}@media(max-width:850px){.preview-notice{justify-content:space-between;gap:8px}.preview-notice span{display:none}html[data-preview=true] .ops-shell .sidebar{top:0;height:auto}html[data-preview=true] .ops-shell:is(.canvas-mode,.page-design,.page-templates){height:calc(100dvh - 36px)}html[data-preview=true] .ops-shell:is(.canvas-mode,.page-design,.page-templates) .workspace{height:auto}}
html[data-preview=true][data-theme=dark] .preview-notice{background:#27272d;color:#cfcfd6}
