:root{--ground: #f4f6f8;--surface: #ffffff;--ink: #17222c;--ink-2: #5b6b78;--rule: #d3dbe2;--accent: #0e6f78;--accent-ink: #ffffff;--accent-soft: #ddeff1;--ok: #237a4b;--ok-soft: #e3f3e9;--danger: #b4372b;--danger-soft: #fbe9e6;--warn: #9a6b00;--warn-soft: #fbf1d6;--muted-soft: #e8edf1;--focus: #0e6f78;--font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono: ui-monospace, "Cascadia Mono", Consolas, "SFMono-Regular", monospace;--radius: 4px;--nav-width: 232px;color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--ground: #0e161c;--surface: #15202a;--ink: #e4ebf1;--ink-2: #93a3b1;--rule: #26333e;--accent: #57c4cd;--accent-ink: #0b1218;--accent-soft: #123a40;--ok: #5bc48a;--ok-soft: #14301f;--danger: #f08a7e;--danger-soft: #3b1b17;--warn: #e0b457;--warn-soft: #3a2e10;--muted-soft: #1c2832;--focus: #57c4cd}}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}a{color:var(--accent)}h1,h2,h3,h4{line-height:1.2;margin:0 0 .5rem;letter-spacing:-.01em}h1{font-size:1.5rem}h2{font-size:1.15rem}h3{font-size:1rem}p{margin:0 0 .75rem}code{font-family:var(--mono);font-size:.9em;background:var(--muted-soft);padding:1px 4px;border-radius:3px}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.shell{display:grid;grid-template-columns:var(--nav-width) minmax(0,1fr);min-height:100vh}.shell-nav{background:var(--surface);border-right:1px solid var(--rule);padding:18px 14px;display:flex;flex-direction:column;gap:18px;position:sticky;top:0;height:100vh;overflow-y:auto}.shell-brand{display:flex;align-items:baseline;gap:8px;padding:0 6px}.shell-brand b{font-size:1.05rem;letter-spacing:-.01em}.shell-brand span{color:var(--ink-2);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.nav-group{display:flex;flex-direction:column;gap:2px}.nav-group-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);padding:0 8px;margin-bottom:4px}.nav-link{display:block;padding:7px 8px;border-radius:var(--radius);color:var(--ink);text-decoration:none;font-size:.95rem}.nav-link:hover{background:var(--muted-soft)}.nav-link.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.shell-user{margin-top:auto;padding:10px 8px 0;border-top:1px solid var(--rule);font-size:.85rem;color:var(--ink-2);display:flex;flex-direction:column;gap:6px}.shell-user b{color:var(--ink)}.shell-main{padding:28px 36px 64px;max-width:1180px;width:100%}@media(max-width:860px){.shell{grid-template-columns:minmax(0,1fr)}.shell-nav{position:static;height:auto;border-right:none;border-bottom:1px solid var(--rule);flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px 18px}.nav-group{flex-direction:row;flex-wrap:wrap;align-items:center}.nav-group-label{margin:0}.shell-user{margin:0;padding:0;border:none;flex-direction:row;align-items:center;gap:10px}.shell-main{padding:18px}}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:18px}.page-head p{color:var(--ink-2);margin:0;max-width:64ch}.crumbs{font-size:.85rem;color:var(--ink-2);margin-bottom:6px;display:flex;gap:6px;flex-wrap:wrap}.crumbs a{color:var(--ink-2)}.toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.toolbar select,.toolbar input{width:auto}.panel{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);padding:16px 18px;margin-bottom:18px}.panel h2{margin-bottom:10px}.grid-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}.grid-side{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:18px;align-items:start}@media(max-width:860px){.grid-2,.grid-side{grid-template-columns:minmax(0,1fr)}}.form{display:flex;flex-direction:column;gap:10px}.field{display:flex;flex-direction:column;gap:4px;font-size:.9rem}.field>span{color:var(--ink-2)}.field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}input[type=text],input[type=number],input[type=url],input[type=search],textarea,select{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);padding:7px 9px;width:100%}textarea{resize:vertical;min-height:72px}input[readonly]{color:var(--ink-2)}.hint{font-size:.8rem;color:var(--ink-2)}.field-error{font-size:.8rem;color:var(--danger)}.btn{font:inherit;font-size:.9rem;padding:6px 12px;border-radius:var(--radius);border:1px solid var(--rule);background:var(--surface);color:var(--ink);cursor:pointer;white-space:nowrap}.btn:hover{background:var(--muted-soft)}.btn:disabled{opacity:.55;cursor:default}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-primary:hover{filter:brightness(.95);background:var(--accent)}.btn-danger{color:var(--danger);border-color:var(--danger)}.btn-danger:hover{background:var(--danger-soft)}.btn-sm{padding:3px 8px;font-size:.82rem}.btn-link{border:none;background:none;color:var(--accent);padding:0;cursor:pointer;font:inherit}.pill{display:inline-block;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;padding:2px 7px;border-radius:3px;white-space:nowrap;background:var(--muted-soft);color:var(--ink-2)}.pill-draft{background:var(--warn-soft);color:var(--warn)}.pill-pending_review,.pill-in_review,.pill-pending{background:var(--accent-soft);color:var(--accent)}.pill-published,.pill-active,.pill-ready,.pill-approved{background:var(--ok-soft);color:var(--ok)}.pill-retired,.pill-archived,.pill-rejected,.pill-failed,.pill-deleted{background:var(--danger-soft);color:var(--danger)}.notice{padding:10px 12px;border-radius:var(--radius);font-size:.9rem;margin-bottom:12px;border-left:3px solid var(--rule);background:var(--muted-soft)}.notice-error{border-left-color:var(--danger);background:var(--danger-soft)}.notice-ok{border-left-color:var(--ok);background:var(--ok-soft)}.notice-info{border-left-color:var(--accent);background:var(--accent-soft)}.tablewrap{overflow-x:auto;border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface)}table.table{width:100%;border-collapse:collapse;font-size:.92rem;font-variant-numeric:tabular-nums}.table th,.table td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--rule);vertical-align:top}.table th{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-2);background:var(--ground);white-space:nowrap}.table tr:last-child td{border-bottom:none}.table tr.clickable{cursor:pointer}.table tr.clickable:hover td{background:var(--muted-soft)}.list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.list-item{border:1px solid var(--rule);border-radius:var(--radius);padding:10px 12px;background:var(--surface);display:flex;flex-direction:column;gap:6px}.list-item-head{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.meta{color:var(--ink-2);font-size:.82rem}.empty{color:var(--ink-2);padding:10px 0}.progress{height:6px;background:var(--muted-soft);border-radius:3px;overflow:hidden}.progress>div{height:100%;background:var(--accent)}details.section>summary{cursor:pointer;font-weight:600;padding:4px 0}:root{--brand-navy: #062b63;--brand-navy-deep: #031d45;--brand-blue: #174f8f;--brand-teal-light: #71ddd1;--brand-orange: #f58220;--auth-link: #174f8f;--auth-card-edge: var(--brand-navy)}@media(prefers-color-scheme:dark){:root{--auth-card-edge: var(--rule);--auth-link: #7fb0e8}}.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}.auth-screen{min-height:100vh;display:flex;background:var(--ground)}.auth-illustration-panel{flex:1 1 56%;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;padding:56px 60px;color:#fff;background:radial-gradient(120% 140% at 15% 10%,var(--brand-blue) 0%,var(--brand-navy) 46%,var(--brand-navy-deep) 100%)}.auth-illustration-eyebrow{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--brand-teal-light);margin:0 0 14px}.auth-illustration-panel h2{font-size:clamp(32px,4vw,46px);line-height:1.06;letter-spacing:-.03em;margin:0 0 16px;max-width:12ch;text-wrap:balance;color:#fff}.auth-illustration-panel p{font-size:15px;line-height:1.6;color:#c8d7ec;max-width:38ch;margin:0}.auth-illustration-art{margin-top:44px;width:min(480px,100%)}.auth-illustration-art svg{width:100%;height:auto;display:block}.auth-form-panel{flex:1 1 44%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px}.auth-card{background:var(--surface);border:1.5px solid var(--auth-card-edge);border-radius:20px;box-shadow:0 18px 45px #062b631a;width:min(400px,100%);padding:34px 30px}.auth-logo{height:26px;width:auto;display:block;margin-bottom:22px}.auth-card h1{font-size:26px;letter-spacing:-.03em;margin:0 0 8px;color:var(--ink)}.auth-sub{font-size:12.5px;color:var(--ink-2);line-height:1.6;margin:0 0 22px}.auth-form{display:flex;flex-direction:column;gap:10px}.auth-form input{border:1px solid var(--rule);border-radius:10px;padding:12px 14px;font-size:13px;font-family:inherit;background:var(--ground);color:var(--ink)}.auth-form input:focus{outline:2px solid var(--focus);outline-offset:1px}.auth-submit{width:100%;margin-top:4px;text-align:center;background:var(--brand-orange);color:#fff;border:0;border-radius:10px;box-shadow:0 8px 22px #f5822047;padding:13px 17px;font-size:13px;font-weight:700;font-family:inherit;cursor:pointer}.auth-submit:hover:not(:disabled){filter:brightness(.95)}.auth-submit:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.auth-link-btn{border:0;background:none;color:var(--auth-link);font-size:11.5px;font-weight:700;font-family:inherit;padding:2px 0;align-self:center;margin-top:2px;cursor:pointer}.auth-link-btn:hover{text-decoration:underline}.auth-status{min-height:16px;font-size:12px;color:var(--danger);margin:14px 0 0;text-align:center}.auth-status.is-success{color:var(--ok)}@media(max-width:880px){.auth-screen{flex-direction:column}.auth-illustration-panel{display:none}.auth-form-panel{padding:24px;min-height:100vh}}
