:root{--cf-indigo-50:#eef2ff;--cf-indigo-100:#e0e7ff;--cf-indigo-200:#c7d2fe;--cf-indigo-300:#a5b4fc;--cf-indigo-400:#818cf8;--cf-indigo-500:#6366f1;--cf-indigo-600:#4f46e5;--cf-indigo-700:#4338ca;--cf-indigo-800:#3730a3;--cf-indigo-900:#312e81;--cf-indigo-950:#1e1b4b;--cf-sky-50:#f0f9ff;--cf-sky-100:#e0f2fe;--cf-sky-200:#bae6fd;--cf-sky-300:#7dd3fc;--cf-sky-400:#38bdf8;--cf-sky-500:#0ea5e9;--cf-sky-600:#0284c7;--cf-sky-700:#0369a1;--cf-amber-50:#fffbeb;--cf-amber-100:#fef3c7;--cf-amber-300:#fcd34d;--cf-amber-400:#fbbf24;--cf-amber-500:#f59e0b;--cf-amber-600:#d97706;--cf-slate-0:#ffffff;--cf-slate-50:#f8fafc;--cf-slate-100:#f1f5f9;--cf-slate-200:#e2e8f0;--cf-slate-300:#cbd5e1;--cf-slate-400:#94a3b8;--cf-slate-500:#64748b;--cf-slate-600:#475569;--cf-slate-700:#334155;--cf-slate-800:#1e293b;--cf-slate-900:#0f172a;--cf-slate-950:#020617;--cf-green-500:#22c55e;--cf-green-600:#16a34a;--cf-red-500:#ef4444;--cf-red-600:#dc2626;--color-bg:var(--cf-slate-50);--color-bg-elevated:var(--cf-slate-0);--color-surface:var(--cf-slate-0);--color-surface-sunken:var(--cf-slate-100);--color-surface-hover:var(--cf-slate-100);--color-text:var(--cf-slate-900);--color-text-muted:var(--cf-slate-500);--color-text-subtle:var(--cf-slate-400);--color-text-inverted:var(--cf-slate-0);--color-text-on-primary:var(--cf-slate-0);--color-border:var(--cf-slate-200);--color-border-strong:var(--cf-slate-300);--color-divider:var(--cf-slate-200);--color-primary:var(--cf-indigo-600);--color-primary-hover:var(--cf-indigo-700);--color-primary-active:var(--cf-indigo-800);--color-primary-subtle:var(--cf-indigo-50);--color-primary-on-subtle:var(--cf-indigo-700);--color-secondary:var(--cf-sky-500);--color-secondary-hover:var(--cf-sky-600);--color-link:var(--cf-indigo-600);--color-link-hover:var(--cf-indigo-700);--color-accent:var(--cf-amber-500);--color-accent-hover:var(--cf-amber-600);--color-accent-subtle:var(--cf-amber-100);--color-success:var(--cf-green-600);--color-success-subtle:#dcfce7;--color-warning:var(--cf-amber-600);--color-warning-subtle:var(--cf-amber-100);--color-danger:var(--cf-red-600);--color-danger-subtle:#fee2e2;--color-focus:var(--cf-indigo-500);--ring-focus:0 0 0 3px color-mix(in srgb,var(--color-focus) 35%,transparent);--font-sans:"Inter","Geist",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-mono:"Geist Mono",ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;--font-display:var(--font-sans);--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:clamp(2rem,1.4rem + 2.6vw,3rem);--text-5xl:clamp(2.5rem,1.5rem + 4.2vw,3.75rem);--text-6xl:clamp(3rem,1.6rem + 6vw,4.5rem);--leading-none:1;--leading-tight:1.15;--leading-snug:1.3;--leading-normal:1.5;--leading-relaxed:1.65;--tracking-tight:-0.02em;--tracking-normal:0;--tracking-wide:0.04em;--tracking-caps:0.08em;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extrabold:800;--space-0:0;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-2xl:28px;--radius-full:9999px;--shadow-xs:0 1px 2px rgba(15,23,42,0.06);--shadow-sm:0 1px 3px rgba(15,23,42,0.08),0 1px 2px rgba(15,23,42,0.04);--shadow-md:0 4px 12px -2px rgba(15,23,42,0.10),0 2px 6px -2px rgba(15,23,42,0.06);--shadow-lg:0 12px 32px -8px rgba(15,23,42,0.16),0 4px 12px -4px rgba(15,23,42,0.08);--shadow-xl:0 24px 56px -12px rgba(15,23,42,0.22);--shadow-ring-primary:0 8px 30px -8px color-mix(in srgb,var(--cf-indigo-600) 45%,transparent);--gradient-brand:linear-gradient(135deg,var(--cf-indigo-600) 0%,var(--cf-sky-500) 100%);--gradient-brand-soft:linear-gradient(135deg,var(--cf-indigo-500) 0%,var(--cf-sky-400) 100%);--gradient-collab:linear-gradient(135deg,var(--cf-amber-400) 0%,var(--cf-amber-500) 100%);--gradient-surface:linear-gradient(180deg,var(--cf-slate-0) 0%,var(--cf-slate-50) 100%);--gradient-hero:radial-gradient(60% 60% at 50% 0%,color-mix(in srgb,var(--cf-indigo-500) 14%,transparent) 0%,transparent 70%);--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-in-out:cubic-bezier(0.65,0,0.35,1);--duration-fast:120ms;--duration-normal:200ms;--duration-slow:320ms;--container-max:1120px;--container-wide:1280px;--container-prose:68ch;--z-base:0;--z-sticky:100;--z-overlay:800;--z-modal:1000;--z-toast:1100;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-bg:var(--cf-slate-950);--color-bg-elevated:var(--cf-slate-900);--color-surface:var(--cf-slate-900);--color-surface-sunken:#0b1324;--color-surface-hover:var(--cf-slate-800);--color-text:var(--cf-slate-50);--color-text-muted:var(--cf-slate-400);--color-text-subtle:var(--cf-slate-500);--color-text-inverted:var(--cf-slate-900);--color-text-on-primary:var(--cf-slate-950);--color-border:var(--cf-slate-800);--color-border-strong:var(--cf-slate-700);--color-divider:var(--cf-slate-800);--color-primary:var(--cf-indigo-400);--color-primary-hover:var(--cf-indigo-300);--color-primary-active:var(--cf-indigo-200);--color-primary-subtle:color-mix(in srgb,var(--cf-indigo-500) 18%,transparent);--color-primary-on-subtle:var(--cf-indigo-200);--color-link:var(--cf-indigo-300);--color-link-hover:var(--cf-indigo-200);--color-accent-subtle:color-mix(in srgb,var(--cf-amber-500) 20%,transparent);--color-success-subtle:color-mix(in srgb,var(--cf-green-500) 18%,transparent);--color-warning-subtle:color-mix(in srgb,var(--cf-amber-500) 18%,transparent);--color-danger-subtle:color-mix(in srgb,var(--cf-red-500) 20%,transparent);--gradient-surface:linear-gradient(180deg,var(--cf-slate-900) 0%,var(--cf-slate-950) 100%);--gradient-hero:radial-gradient(60% 60% at 50% 0%,color-mix(in srgb,var(--cf-indigo-500) 22%,transparent) 0%,transparent 70%);color-scheme:dark}}:root[data-theme=dark]{--color-bg:var(--cf-slate-950);--color-bg-elevated:var(--cf-slate-900);--color-surface:var(--cf-slate-900);--color-surface-sunken:#0b1324;--color-surface-hover:var(--cf-slate-800);--color-text:var(--cf-slate-50);--color-text-muted:var(--cf-slate-400);--color-text-subtle:var(--cf-slate-500);--color-text-inverted:var(--cf-slate-900);--color-text-on-primary:var(--cf-slate-950);--color-border:var(--cf-slate-800);--color-border-strong:var(--cf-slate-700);--color-divider:var(--cf-slate-800);--color-primary:var(--cf-indigo-400);--color-primary-hover:var(--cf-indigo-300);--color-primary-active:var(--cf-indigo-200);--color-primary-subtle:color-mix(in srgb,var(--cf-indigo-500) 18%,transparent);--color-primary-on-subtle:var(--cf-indigo-200);--color-link:var(--cf-indigo-300);--color-link-hover:var(--cf-indigo-200);--color-accent-subtle:color-mix(in srgb,var(--cf-amber-500) 20%,transparent);--color-success-subtle:color-mix(in srgb,var(--cf-green-500) 18%,transparent);--color-warning-subtle:color-mix(in srgb,var(--cf-amber-500) 18%,transparent);--color-danger-subtle:color-mix(in srgb,var(--cf-red-500) 20%,transparent);--gradient-surface:linear-gradient(180deg,var(--cf-slate-900) 0%,var(--cf-slate-950) 100%);--gradient-hero:radial-gradient(60% 60% at 50% 0%,color-mix(in srgb,var(--cf-indigo-500) 22%,transparent) 0%,transparent 70%);color-scheme:dark}@media (prefers-reduced-motion:reduce){:root{--duration-fast:0ms;--duration-normal:0ms;--duration-slow:0ms}}*,:after,:before{box-sizing:border-box}*{margin:0}html{text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;min-height:100vh;font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);background-color:var(--color-bg);text-rendering:optimizeLegibility}body,h1,h2,h3,h4,h5,h6{color:var(--color-text)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);font-weight:var(--weight-bold);text-wrap:balance}h1{font-size:var(--text-5xl)}h2{font-size:var(--text-4xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}p{line-height:var(--leading-relaxed);text-wrap:pretty}a{color:var(--color-link);text-decoration:none;transition:color var(--duration-fast) var(--ease-out)}a:hover{color:var(--color-link-hover)}b,strong{font-weight:var(--weight-semibold)}code,kbd,pre,samp{font-family:var(--font-mono);font-size:.9em}canvas,img,svg,video{display:block;max-width:100%;height:auto}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}ol,ul{padding-left:var(--space-5)}:focus-visible{outline:2px solid transparent;border-radius:var(--radius-sm);box-shadow:var(--ring-focus)}::selection{background:color-mix(in srgb,var(--color-primary) 24%,transparent)}hr{border:none;border-top:1px solid var(--color-divider)}.cf-container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--space-6)}.cf-container--wide{max-width:var(--container-wide)}.cf-container--prose{max-width:var(--container-prose)}.cf-eyebrow{font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-primary-on-subtle)}.cf-btn,.cf-eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:var(--weight-semibold)}.cf-btn{--_bg:var(--color-surface);--_fg:var(--color-text);--_bd:var(--color-border-strong);justify-content:center;padding:var(--space-3) var(--space-5);font-size:var(--text-sm);line-height:1;color:var(--_fg);background:var(--_bg);border:1px solid var(--_bd);border-radius:var(--radius-md);white-space:nowrap;transition:transform var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.cf-btn:hover{transform:translateY(-1px)}.cf-btn:active{transform:translateY(0)}.cf-btn--primary{--_fg:var(--color-text-on-primary);--_bd:transparent;background-image:var(--gradient-brand);box-shadow:var(--shadow-ring-primary)}.cf-btn--primary:hover{box-shadow:var(--shadow-lg),var(--shadow-ring-primary)}.cf-btn--secondary{--_bg:var(--color-surface);--_fg:var(--color-text);--_bd:var(--color-border-strong);box-shadow:var(--shadow-xs)}.cf-btn--secondary:hover{background:var(--color-surface-hover)}.cf-btn--ghost{--_bg:transparent;--_bd:transparent}.cf-btn--ghost:hover{background:var(--color-surface-hover)}.cf-btn--lg{padding:var(--space-4) var(--space-6);font-size:var(--text-base);border-radius:var(--radius-lg)}.cf-btn--sm{padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}.cf-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm)}.cf-card--raised{box-shadow:var(--shadow-md)}.cf-card--interactive{transition:transform var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out)}.cf-card--interactive:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}.cf-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-semibold);border-radius:var(--radius-full);background:var(--color-surface-sunken);color:var(--color-text-muted);border:1px solid var(--color-border)}.cf-badge--primary{background:var(--color-primary-subtle);color:var(--color-primary-on-subtle);border-color:transparent}.cf-badge--accent{background:var(--color-accent-subtle);color:var(--color-accent-hover);border-color:transparent}.cf-badge--success{background:var(--color-success-subtle);color:var(--color-success);border-color:transparent}.cf-badge--danger{background:var(--color-danger-subtle);color:var(--color-danger);border-color:transparent}.cf-input{width:100%;padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.cf-input::placeholder{color:var(--color-text-subtle)}.cf-input:focus{outline:none;border-color:var(--color-focus);box-shadow:var(--ring-focus)}.cf-presence{display:inline-flex;align-items:center}.cf-presence__dot{width:1.75rem;height:1.75rem;border-radius:var(--radius-full);border:2px solid var(--color-surface);margin-left:-.5rem;display:inline-grid;place-items:center;font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--color-text-on-primary)}.cf-presence__dot:first-child{margin-left:0}.cf-surface{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.cf-text-gradient{background:var(--gradient-brand);-webkit-background-clip:text;background-clip:text;color:transparent}.cf-text-muted{color:var(--color-text-muted)}.cf-stack>*+*{margin-top:var(--space-4)}.cf-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.app-shell{display:grid;grid-template-rows:auto 1fr;height:100vh;overflow:hidden}.app-topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);height:3.5rem;padding-inline:var(--space-5);background:var(--color-surface);border-bottom:1px solid var(--color-border)}.app-brand{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight)}.app-brand svg{width:26px;height:26px}.app-doc-meta{display:flex;align-items:center;gap:var(--space-3);min-width:0}.app-doc-meta__title{font-weight:var(--weight-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-topbar__right{display:flex;align-items:center;gap:var(--space-4)}.app-body{display:grid;grid-template-columns:256px 1fr;min-height:0}.app-sidebar{border-right:1px solid var(--color-border);background:var(--color-bg);padding:var(--space-4);overflow-y:auto}.app-sidebar__label{font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-subtle);padding:var(--space-2) var(--space-2)}.app-doclist{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px}.app-doclist__item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-text-muted);cursor:pointer}.app-doclist__item:hover{background:var(--color-surface-hover);color:var(--color-text)}.app-doclist__item[aria-current=true]{background:var(--color-primary-subtle);color:var(--color-primary-on-subtle);font-weight:var(--weight-semibold)}.app-main{display:grid;grid-template-columns:1fr 340px;min-height:0}.app-editor{overflow-y:auto;padding:var(--space-10) var(--space-8)}.app-editor__inner{max-width:var(--container-prose);margin-inline:auto}.app-editor h1{font-size:var(--text-4xl)}.app-editor__metarow{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4)}.app-editor__body{margin-top:var(--space-8);display:flex;flex-direction:column;gap:var(--space-5)}.app-editor__body p{color:var(--color-text)}.app-editor__body .muted{color:var(--color-text-muted)}.app-agentpanel{border-left:1px solid var(--color-border);background:var(--color-bg);padding:var(--space-5);overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-5)}.app-agentpanel__label{font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-subtle)}.app-request__title{font-weight:var(--weight-semibold);display:flex;align-items:center;gap:var(--space-2)}.app-request__reason{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted)}.app-request__scope{margin-top:var(--space-3);padding:var(--space-3);background:var(--color-surface-sunken);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-muted);line-height:var(--leading-snug)}.app-request__actions{margin-top:var(--space-4);display:flex;gap:var(--space-2)}.app-answer__by{font-size:var(--text-xs);color:var(--color-text-subtle);margin-bottom:var(--space-2)}.cf-forbidden{margin-top:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-danger-subtle);color:var(--color-danger);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:var(--leading-snug)}.cf-actor-switch{display:flex;flex-direction:column;gap:2px}.cf-actor{display:flex;align-items:center;gap:var(--space-3);width:100%;text-align:left;padding:var(--space-2) var(--space-3);border:1px solid transparent;border-radius:var(--radius-md);background:transparent;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out)}.cf-actor:hover{background:var(--color-surface-hover)}.cf-actor--on{background:var(--color-primary-subtle);border-color:transparent}.cf-actor__name{display:block;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text)}.cf-actor__sub{display:block;font-size:var(--text-xs);color:var(--color-text-subtle)}.cf-block{width:100%}.cf-field-label{font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-subtle)}.cf-seg{display:flex;flex-direction:column;gap:2px}.cf-seg__btn{text-align:left;padding:var(--space-2) var(--space-3);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-muted);background:var(--color-surface-sunken);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer}.cf-seg__btn--on{background:var(--color-primary-subtle);color:var(--color-primary-on-subtle);border-color:transparent;font-weight:var(--weight-semibold)}.cf-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.cf-chip{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-muted);background:var(--color-surface-sunken);border:1px solid var(--color-border);border-radius:var(--radius-full);cursor:pointer}.cf-chip input{accent-color:var(--color-primary)}.cf-chip--private{color:var(--color-danger);border-color:var(--color-danger-subtle)}.cf-result{margin-top:var(--space-8);padding:var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface)}.cf-result--empty{border-style:dashed}.cf-result--deny{border-color:var(--color-danger-subtle);background:var(--color-danger-subtle)}.cf-result--ok{border-color:var(--color-success-subtle)}.cf-result__head{font-weight:var(--weight-semibold);display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.cf-result__answer{margin-top:var(--space-2);color:var(--color-text)}.cf-table{margin-top:var(--space-4);width:100%;border-collapse:collapse;font-size:var(--text-sm)}.cf-table td,.cf-table th{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);font-family:var(--font-mono)}.cf-table th{color:var(--color-text-subtle);font-weight:var(--weight-semibold);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-caps)}.cf-log ul{list-style:none;margin:0;padding:0;flex-direction:column}.cf-log ul,.cf-log__row{display:flex;gap:var(--space-2)}.cf-log__row{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--color-text-muted);line-height:var(--leading-snug)}.cf-log__tag{flex:none;padding:0 var(--space-1);border-radius:var(--radius-sm);font-weight:var(--weight-bold);text-transform:uppercase;height:-moz-fit-content;height:fit-content}.cf-log__row--ok .cf-log__tag{background:var(--color-success-subtle);color:var(--color-success)}.cf-log__row--block .cf-log__tag,.cf-log__row--deny .cf-log__tag{background:var(--color-danger-subtle);color:var(--color-danger)}.cf-log__row--grant .cf-log__tag{background:var(--color-primary-subtle);color:var(--color-primary-on-subtle)}.cf-log__row--info .cf-log__tag{background:var(--color-surface-sunken);color:var(--color-text-muted)}@media (max-width:960px){.app-body,.app-main{grid-template-columns:1fr}.app-sidebar{display:none}}