:root{color-scheme:light;--bg:#ecd2d2;--bg2:#f7e6e6;--surface:#ffffff;--ink:#3a2e2e;--night:#1c1618;--night-2:#261f22;--night-ink:#f3e6e8;--night-soft:#dca1a1;--muted:#6a5a5a;--hair:#c19b9b;--accent:#88407f;--accent-ink:#ffffff;--accent-hover:#71346a;--accent2:#835050;--soft:#dca1a1;--soft-ink:#1a1714;--ok:#3f7150;--warn:#8a5e1c;--bad:#b03b3b;--info:#5a6693;--dark:#4a4a4a;--accent-wash:color-mix(in srgb,var(--accent) 10%,var(--bg2));--ok-soft:color-mix(in srgb,var(--ok) 10%,var(--surface) 90%);--warn-soft:color-mix(in srgb,var(--warn) 10%,var(--surface) 90%);--bad-soft:color-mix(in srgb,var(--bad) 10%,var(--surface) 90%);--info-soft:color-mix(in srgb,var(--info) 10%,var(--surface) 90%);--sh-1:0 1px 2px rgba(58,46,46,0.14);--sh-2:0 6px 18px rgba(58,46,46,0.18);--sh-3:0 18px 48px rgba(58,46,46,0.25);--ring:color-mix(in srgb,var(--accent) 45%,transparent);--font-head:"Goodly",Georgia,"Times New Roman",serif;--font-body:"Pogonia",system-ui,-apple-system,"Segoe UI",Helvetica,Arial,sans-serif;--font-mono:ui-monospace,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;--fs-display:84px;--lh-display:96px;--fs-h1:clamp(56px,4.6vw,64px);--lh-h1:1.02;--fs-h2:44px;--lh-h2:1.05;--fs-h3:30px;--lh-h3:1.1;--fs-giant:150px;--lh-giant:1;--fs-body:17px;--lh-body:1.5;--fs-small:14px;--lh-small:1.45;--fs-label:12px;--lh-label:1.2;--ls-label:0.08em;--ls-eyebrow:0.1em;--fw-light:300;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--r-pill:999px;--r-xs:6px;--r-sm:10px;--r-md:14px;--r-lg:20px;--r-tile:var(--r-sm);--r-card:var(--r-md);--r-panel:var(--r-lg);--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-in-out:cubic-bezier(0.65,0,0.35,1);--dur-fast:160ms;--dur-base:260ms;--dur-slow:600ms}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:#1c1618;--bg2:#2d252a;--surface:#372e33;--ink:#f3e6e8;--night:#1c1618;--night-2:#261f22;--night-ink:#f3e6e8;--night-soft:#dca1a1;--muted:#b39aa0;--hair:#4d3f47;--accent:#c983bf;--accent-ink:#1c1618;--accent-hover:color-mix(in srgb,#c983bf 88%,#ffffff 12%);--accent2:#c58f8f;--soft:#5a3a3f;--soft-ink:#f3e6e8;--ok:#7fc496;--warn:#e0b466;--bad:#ee8f8b;--info:#9aa9d6;--dark:#4a4a4a;--accent-wash:color-mix(in srgb,var(--accent) 10%,var(--bg2));--ok-soft:color-mix(in srgb,var(--ok) 10%,var(--surface) 90%);--warn-soft:color-mix(in srgb,var(--warn) 10%,var(--surface) 90%);--bad-soft:color-mix(in srgb,var(--bad) 10%,var(--surface) 90%);--info-soft:color-mix(in srgb,var(--info) 10%,var(--surface) 90%);--sh-1:0 1px 2px rgba(0,0,0,0.35);--sh-2:0 6px 18px rgba(0,0,0,0.45);--sh-3:0 18px 48px rgba(0,0,0,0.6)}}:root[data-theme=dark]{color-scheme:dark;--bg:#1c1618;--bg2:#2d252a;--surface:#372e33;--ink:#f3e6e8;--night:#1c1618;--night-2:#261f22;--night-ink:#f3e6e8;--night-soft:#dca1a1;--muted:#b39aa0;--hair:#4d3f47;--accent:#c983bf;--accent-ink:#1c1618;--accent-hover:color-mix(in srgb,#c983bf 88%,#ffffff 12%);--accent2:#c58f8f;--soft:#5a3a3f;--soft-ink:#f3e6e8;--ok:#7fc496;--warn:#e0b466;--bad:#ee8f8b;--info:#9aa9d6;--dark:#4a4a4a;--accent-wash:color-mix(in srgb,var(--accent) 10%,var(--bg2));--ok-soft:color-mix(in srgb,var(--ok) 10%,var(--surface) 90%);--warn-soft:color-mix(in srgb,var(--warn) 10%,var(--surface) 90%);--bad-soft:color-mix(in srgb,var(--bad) 10%,var(--surface) 90%);--info-soft:color-mix(in srgb,var(--info) 10%,var(--surface) 90%);--sh-1:0 1px 2px rgba(0,0,0,0.35);--sh-2:0 6px 18px rgba(0,0,0,0.45);--sh-3:0 18px 48px rgba(0,0,0,0.6)}html{font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body,html{background:var(--bg);color:var(--ink)}body{margin:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-head);font-weight:var(--fw-regular);margin:0;color:var(--ink)}b,strong{font-weight:var(--fw-semibold)}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}::selection{background:var(--soft);color:var(--soft-ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.t-display{font-size:var(--fs-display);line-height:var(--lh-display);color:var(--accent)}.t-display,.t-h1{font-family:var(--font-head);font-weight:var(--fw-regular);letter-spacing:-.01em}.t-h1{font-size:var(--fs-h1);line-height:var(--lh-h1)}.t-h2{font-size:var(--fs-h2);line-height:var(--lh-h2)}.t-h2,.t-h3{font-family:var(--font-head);font-weight:var(--fw-regular)}.t-h3{font-size:var(--fs-h3);line-height:var(--lh-h3)}.t-giant{font-family:var(--font-head);font-weight:var(--fw-light);font-size:var(--fs-giant);line-height:var(--lh-giant);color:var(--hair);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.t-body{font-weight:var(--fw-regular);font-size:var(--fs-body);line-height:var(--lh-body)}.t-body,.t-small{font-family:var(--font-body)}.t-small{font-size:var(--fs-small);line-height:var(--lh-small)}.t-label{letter-spacing:var(--ls-label)}.eyebrow,.t-label{font-family:var(--font-body);font-weight:var(--fw-semibold);font-size:var(--fs-label);line-height:var(--lh-label);text-transform:uppercase}.eyebrow{letter-spacing:var(--ls-eyebrow);color:var(--accent2)}.muted{color:var(--muted)}.num,.tabular{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hairline{border:0;border-top:1px solid var(--hair);margin:var(--s-4) 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);padding:12px 22px;border-radius:var(--r-pill);border:1px solid transparent;background:var(--accent);font-family:var(--font-body);font-weight:var(--fw-semibold);font-size:var(--fs-small);line-height:1.2;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.btn,.btn:hover{color:var(--accent-ink)}.btn:hover{background:var(--accent-hover)}.btn:active{transform:scale(.985)}.btn.primary{background:var(--accent);color:var(--accent-ink)}.btn.primary:hover{background:var(--accent-hover)}.btn.ghost,.btn.secondary{background:transparent;color:var(--ink);border-color:var(--hair)}.btn.ghost:hover,.btn.secondary:hover{background:var(--bg2);color:var(--ink)}.btn.danger{background:var(--bad);color:var(--accent-ink)}.btn.danger:hover{background:color-mix(in srgb,var(--bad) 85%,var(--ink) 15%)}.btn.btn-sm,.btn.sm,.btn.small{padding:8px 14px;font-size:var(--fs-label)}.btn.block{display:flex;width:100%}.btn.disabled,.btn:disabled,.btn[disabled]{background:var(--hair);color:var(--muted);border-color:transparent;cursor:default;transform:none;pointer-events:none}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 4px var(--ring)}.card{background:var(--surface);border:1px solid var(--hair);border-radius:var(--r-card);padding:var(--s-5);box-shadow:var(--sh-1)}.card.float{box-shadow:var(--sh-2)}.card{transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.card.lift:hover{transform:translateY(-2px);box-shadow:var(--sh-2);border-color:var(--accent-wash)}.card.lift:active{transform:translateY(0);box-shadow:var(--sh-1)}.card.lift:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px var(--ring)}.m-reveal{opacity:0;transform:scale(1.015);transition:opacity var(--dur-base) var(--ease-out),transform var(--dur-base) var(--ease-out)}.m-reveal.is-in{opacity:1;transform:none}.panel{background:var(--surface);border:1px solid var(--hair);border-radius:var(--r-panel);padding:var(--s-6);box-shadow:var(--sh-2)}.tile{position:relative;overflow:hidden;background:var(--bg2);border:1px solid var(--hair);border-radius:var(--r-tile);aspect-ratio:1;display:flex;align-items:center;justify-content:center;color:var(--muted)}.tile img,.tile video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.tile.failed{background:var(--bad-soft);border-color:var(--bad);color:var(--bad)}.tile:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pill,.status-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:var(--r-pill);font-family:var(--font-body);font-weight:var(--fw-semibold);font-size:var(--fs-label);line-height:var(--lh-label);letter-spacing:.02em;background:var(--bg2);color:var(--muted);border:1px solid var(--hair);white-space:nowrap}.pill:before,.status-pill:before{content:"";width:6px;height:6px;border-radius:var(--r-pill);background:currentColor;flex:none}.pill.draft,.pill.held,.pill.queued,.status-pill.draft,.status-pill.held,.status-pill.queued{background:var(--bg2);color:var(--muted);border-color:var(--hair)}.pill.scheduled,.status-pill.scheduled{background:var(--info-soft);color:var(--info);border-color:transparent}.pill.composing,.pill.generating,.pill.posting,.pill.processing,.pill.retrying,.status-pill.composing,.status-pill.generating,.status-pill.posting,.status-pill.processing,.status-pill.retrying{background:var(--warn-soft);color:var(--warn);border-color:transparent}.pill.active,.pill.done,.pill.posted,.pill.ready,.pill.succeeded,.status-pill.active,.status-pill.done,.status-pill.posted,.status-pill.ready,.status-pill.succeeded{background:var(--ok-soft);color:var(--ok);border-color:transparent}.pill.canceled,.pill.error,.pill.failed,.status-pill.canceled,.status-pill.error,.status-pill.failed{background:var(--bad-soft);color:var(--bad);border-color:transparent}.pill.generating:before,.pill.posting:before,.status-pill.generating:before,.status-pill.posting:before{animation:ds-pulse 1.2s ease-in-out infinite}.al{display:flex;gap:var(--s-3);align-items:flex-start;padding:var(--s-3) var(--s-4);border-radius:var(--r-tile);border-left:4px solid var(--info);color:var(--ink);font-size:var(--fs-small);line-height:var(--lh-small)}.al,.al.info{background:var(--info-soft)}.al.info{border-left-color:var(--info)}.al.ok{border-left-color:var(--ok);background:var(--ok-soft)}.al.warn{border-left-color:var(--warn);background:var(--warn-soft)}.al.bad{border-left-color:var(--bad);background:var(--bad-soft)}.al strong{color:inherit}.label,label{font-weight:var(--fw-semibold);font-size:var(--fs-label);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--muted);margin-bottom:var(--s-2)}.field,.label,label{display:block;font-family:var(--font-body)}.field{width:100%;box-sizing:border-box;padding:11px 14px;border-radius:var(--r-tile);border:1px solid var(--hair);background:var(--surface);color:var(--ink);font-size:var(--fs-body);line-height:1.3;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.field::placeholder{color:var(--muted)}.field:hover{border-color:var(--accent2)}.field:focus,.field:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--ring)}.field.error,.field[aria-invalid=true]{border-color:var(--bad)}.field.error:focus,.field[aria-invalid=true]:focus{box-shadow:0 0 0 4px var(--bad-soft)}.field:disabled{background:var(--bg2);color:var(--muted);cursor:not-allowed}textarea.field{min-height:120px;resize:vertical}.field-note{display:block;margin-top:var(--s-2);font-size:var(--fs-label);color:var(--muted)}.error-note,.field-note.error{color:var(--bad)}.tbl{width:100%;border-collapse:collapse;font-size:var(--fs-small);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tbl th{text-align:left;font-weight:var(--fw-semibold);font-size:var(--fs-label);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--muted);padding:var(--s-2) var(--s-3)}.tbl td,.tbl th{border-bottom:1px solid var(--hair)}.tbl td{padding:var(--s-3);vertical-align:top}.tbl tr:last-child td{border-bottom:0}.tbl tbody tr:hover td{background:var(--bg2)}.table-scroll,.tbl-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.toast{position:fixed;left:50%;bottom:var(--s-5);transform:translateX(-50%);z-index:60;max-width:min(480px,calc(100vw - 32px));padding:var(--s-3) var(--s-4);border-radius:var(--r-card);background:var(--ink);color:var(--bg);font-size:var(--fs-small);box-shadow:var(--sh-3);animation:ds-rise var(--dur-base) var(--ease-out)}.toast.ok{background:var(--ok)}.toast.bad,.toast.ok{color:var(--accent-ink)}.toast.bad{background:var(--bad)}.modal{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:var(--s-4);background:color-mix(in srgb,var(--ink) 55%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:ds-fade var(--dur-fast) var(--ease-out)}.modal-card{width:100%;max-width:520px;max-height:calc(100vh - 32px);overflow:auto;border-radius:var(--r-panel);padding:var(--s-6);box-shadow:var(--sh-3);animation:pop var(--dur-base) var(--ease-out)}.chip,.modal-card{background:var(--surface);color:var(--ink)}.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:var(--r-pill);border:1px solid var(--hair);font-family:var(--font-body);font-size:var(--fs-small);line-height:1.2;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.chip:hover{border-color:var(--accent2)}.chip.filled,.chip.on,.chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.chip.hot{border-color:var(--accent2);color:var(--accent2)}.chip.good{border-color:var(--ok);color:var(--ok);background:var(--ok-soft)}.chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nav-item{display:flex;align-items:center;gap:var(--s-3);padding:10px 14px;border-radius:var(--r-tile);color:var(--muted);font-family:var(--font-body);font-weight:var(--fw-medium);font-size:var(--fs-small);text-decoration:none;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.nav-item:hover{background:var(--bg2);color:var(--ink)}.nav-item.active,.nav-item.on,.nav-item[aria-current=page]{background:var(--accent-wash);color:var(--accent)}.nav-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.quick-shimmer,.shimmer{position:relative;overflow:hidden;background:var(--bg2);border-radius:var(--r-tile)}.quick-shimmer:after,.shimmer:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--surface) 70%,transparent),transparent);transform:translateX(-100%);animation:ds-shimmer 1.4s ease-in-out infinite}.progress,.progress-track{height:6px;border-radius:var(--r-pill);background:var(--hair);overflow:hidden}.progress-fill{height:100%;border-radius:var(--r-pill);background:var(--accent);transition:width var(--dur-slow) var(--ease-out)}.list-row{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);border:1px solid var(--hair);border-radius:var(--r-card);background:var(--surface);color:var(--ink);text-decoration:none;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.list-row:hover{border-color:var(--accent2);box-shadow:var(--sh-1)}.list-row .lr-title{font-weight:var(--fw-medium);font-size:var(--fs-body)}.list-row .lr-sub{font-size:var(--fs-label);color:var(--muted);margin-top:2px}.list-row:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.stat,.stat-card{background:var(--surface);border:1px solid var(--hair);border-radius:var(--r-card);padding:var(--s-4)}.stat .stat-label,.stat-card .stat-label{font-size:var(--fs-label);font-weight:var(--fw-semibold);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--accent2)}.stat .stat-value,.stat-card .stat-value{font-family:var(--font-head);font-weight:var(--fw-regular);font-size:var(--fs-h3);line-height:var(--lh-h3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink);margin-top:var(--s-1)}.stat .stat-sub,.stat-card .stat-sub{font-size:var(--fs-label);color:var(--muted);margin-top:2px}.drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s-2);padding:var(--s-6);border:2px dashed var(--hair);border-radius:var(--r-card);background:var(--bg2);color:var(--muted);text-align:center;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.drop.over,.drop:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface));color:var(--ink)}.drop:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ds-icon{display:inline-block;vertical-align:middle;line-height:0;color:inherit}.ds-icon svg{display:block;width:100%;height:100%}.ds-icon svg [fill]:not([fill=none]){fill:currentColor}.ds-icon svg [stroke]:not([stroke=none]){stroke:currentColor}.ds-loader{display:inline-flex;flex-direction:column;align-items:center;gap:var(--s-3);color:var(--accent)}.ds-loader-box{line-height:0}.ds-loader-box svg{display:block;width:100%;height:100%}.ds-loader-box svg [fill]:not([fill=none]){fill:currentColor}.ds-loader-box svg [stroke]:not([stroke=none]){stroke:currentColor}.ds-loader-label{text-align:center;max-width:36ch}@keyframes ds-shimmer{to{transform:translateX(100%)}}@keyframes ds-pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes ds-rise{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}@keyframes ds-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.modal,.modal-card,.pill:before,.quick-shimmer:after,.shimmer:after,.status-pill:before,.toast{animation:none}.btn,.card,.chip,.drop,.field,.list-row,.nav-item,.progress-fill{transition:none}.card.lift:active,.card.lift:hover,.m-reveal{transform:none}.m-reveal{opacity:1;transition:none}}.stage{position:relative;min-height:280px;border-radius:var(--r-card,14px);overflow:hidden;background:var(--bg2)}.stage .modal,.stage .toast{position:absolute}.stage .toast{right:16px;bottom:16px;left:auto;transform:none}