:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--brand-red:#e42313;--brand-red-hover:#c41d10;--brand-red-soft:#fef2f2;--ink:#0d0d0d;--ink-soft:#1f2937;--muted:#7a7a7a;--muted-soft:#b0b0b0;--surface:#fff;--surface-2:#fafafa;--surface-3:#f5f5f5;--border:#e8e8e8;--border-strong:#cfcfcf;--green:#16a34a;--shadow-sm:0 1px 2px #0d0d0d0a;--ease-out-cubic:cubic-bezier(.215, .61, .355, 1);--ease-in-out-cubic:cubic-bezier(.65, 0, .35, 1);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}html,body{min-height:100vh;margin:0}body{color:var(--ink);background:var(--surface-2);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.5}a{color:var(--brand-red);font-weight:500;text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{letter-spacing:-.02em;color:var(--ink);margin:0;font-family:Space Grotesk,system-ui,sans-serif;font-weight:600}h1{letter-spacing:-.03em;font-size:32px;line-height:1.1}h2{font-size:20px;line-height:1.2}h3{font-size:16px;line-height:1.3}p{margin:0}.muted,small{color:var(--muted);font-size:13px}.app-shell{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;align-self:start;gap:32px;height:100vh;padding:32px 16px;display:flex;position:sticky;top:0}.sidebar-brand{align-items:center;gap:10px;padding:0 8px;display:flex}.brand-mark{background:var(--brand-red);color:#fff;justify-content:center;align-items:center;width:28px;height:28px;font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:700;display:inline-flex}.brand-name{letter-spacing:-.01em;font-family:Space Grotesk,sans-serif;font-size:17px;font-weight:600}.sidebar-nav{flex-direction:column;gap:4px;display:flex}.sidebar-nav a,.sidebar-nav button{appearance:none;font:inherit;text-align:left;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.sidebar-nav a:hover,.sidebar-nav button:hover{background:var(--surface-2);color:var(--ink);text-decoration:none}.sidebar-nav .active,.sidebar-nav a.active{background:var(--brand-red-soft);color:var(--brand-red)}.sidebar-foot{flex-direction:column;gap:8px;margin-top:auto;display:flex}.main{max-width:1280px;padding:32px 48px}.page-rise{animation:.35s cubic-bezier(.2,.8,.2,1) both rise}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.page-head{justify-content:space-between;align-items:end;gap:16px;margin-bottom:24px;display:flex}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-family:Space Grotesk,sans-serif;font-size:11px;font-weight:600}button,.btn{appearance:none;border:1px solid var(--brand-red);background:var(--brand-red);color:#fff;cursor:pointer;align-items:center;gap:8px;padding:10px 18px;font-family:Space Grotesk,sans-serif;font-size:13px;font-weight:500;transition:background .14s,border-color .14s,color .14s;display:inline-flex}button:hover,.btn:hover{background:var(--brand-red-hover);border-color:var(--brand-red-hover)}a.btn:hover{color:#fff;text-decoration:none}button:disabled,.btn:disabled{opacity:.4;cursor:not-allowed}button.ghost,.btn.ghost{background:var(--surface);color:var(--ink);border-color:var(--border)}button.ghost:hover,.btn.ghost:hover{background:var(--surface-2);border-color:var(--border-strong)}a.btn.ghost:hover{color:var(--ink)}button.icon-only{justify-content:center;width:36px;height:36px;padding:8px}button.danger{background:var(--surface);color:#b91c1c;border-color:var(--border)}button.danger:hover{background:#fef2f2;border-color:#fecaca}.btn-row{flex-wrap:wrap;gap:10px;display:flex}.card{background:var(--surface);border:1px solid var(--border);padding:24px}.card.compact{padding:16px}.card-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.card-head h2{margin:0}.metric-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.metric{background:var(--surface);border:1px solid var(--border);flex-direction:column;gap:8px;padding:28px;display:flex}.metric-label{color:var(--muted);font-size:13px;font-weight:500}.metric-value{color:var(--ink);letter-spacing:-.02em;font-family:Space Grotesk,sans-serif;font-size:36px;font-weight:600}.section-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.section-grid .card{flex-direction:column;gap:16px;display:flex}.list{flex-direction:column;display:flex}.list-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.list-item:last-child{border-bottom:0}.list-item-main{flex-direction:column;gap:2px;min-width:0;display:flex}.list-item-main b{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.list-item-main span{color:var(--muted);font-size:12px}.list-item-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.empty{color:var(--muted);padding:12px 0;font-size:13px}.field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.field>label{color:var(--ink);letter-spacing:.02em;font-family:Space Grotesk,sans-serif;font-size:12px;font-weight:500}input,select,textarea{width:100%;font:inherit;background:var(--surface);border:1px solid var(--border);color:var(--ink);border-radius:0;outline:none;padding:10px 12px}input:focus,select:focus,textarea:focus{border-color:var(--brand-red);box-shadow:0 0 0 3px #e423131f}textarea{resize:vertical;min-height:96px;font-family:Inter,system-ui,sans-serif}.inline-form{grid-template-columns:1fr 1fr 1fr auto;align-items:end;gap:10px;display:grid}.inline-form .field{margin:0}.inline-form-compact{grid-template-columns:minmax(220px,360px)}.badge{border:1px solid var(--border);background:var(--surface);color:var(--ink);letter-spacing:.02em;text-transform:capitalize;padding:4px 10px;font-family:Space Grotesk,sans-serif;font-size:11px;font-weight:500;display:inline-flex}.badge.published{color:var(--green);background:#f0fdf4;border-color:#bbf7d0}.badge.draft,.badge.drafted{background:var(--surface-2);color:var(--muted)}.badge.red{background:var(--brand-red-soft);color:var(--brand-red);border-color:#fecaca}.tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:24px;display:flex}.tabs button{color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;padding:10px 16px;font-weight:500}.tabs button:hover{color:var(--ink);background:0 0}.tabs button.active{color:var(--brand-red);border-bottom-color:var(--brand-red)}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border);padding:12px 14px}.data-table th{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;background:var(--surface-2);font-family:Space Grotesk,sans-serif;font-size:12px;font-weight:600}.data-table tbody tr:hover{background:var(--surface-2)}.data-table .actions-cell{justify-content:flex-end;gap:6px;display:flex}.table-scroll{width:100%;overflow-x:auto}.summary-table th:not(:first-child),.summary-table td:not(:first-child){text-align:right;white-space:nowrap}.summary-table td:first-child{min-width:220px}.table-subtext{color:var(--muted);margin-top:2px;font-size:12px;display:block}.login-page{background:var(--surface-2);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--surface);border:1px solid var(--border);flex-direction:column;gap:20px;width:100%;max-width:420px;padding:40px;display:flex}.login-card .eyebrow{margin:0}.login-card h1{font-size:26px}.keyword-tree-wrap{background:var(--surface-2);border:1px solid var(--border);height:640px;position:relative;overflow:hidden}.keyword-tree-wrap svg{cursor:grab;width:100%;height:100%}.keyword-tree-wrap svg:active{cursor:grabbing}@keyframes kwNodeEnter{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.kw-node{background:var(--brand-red);border:1px solid var(--brand-red);color:#fff;width:100%;height:100%;box-shadow:var(--shadow-sm);box-sizing:border-box;transform-origin:50%;animation:kwNodeEnter .22s var(--ease-out-cubic) both;will-change:transform;border-radius:10px;flex-direction:column;gap:2px;padding:8px 12px;font-family:Space Grotesk,sans-serif;font-size:13px;font-weight:500;transition:box-shadow .15s,transform .15s;display:flex;position:relative}@media (hover:hover) and (pointer:fine){.kw-node:hover{transform:translateY(-1px);box-shadow:0 6px 18px #e4231338}}.kw-node:hover .kw-delete{opacity:1}.kw-node-type{letter-spacing:.1em;text-transform:uppercase;color:#ffffffbf;font-family:Space Grotesk,sans-serif;font-size:9px;font-weight:600;display:block}.kw-node-row{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.kw-node-label{appearance:none;text-align:left;font:inherit;color:inherit;cursor:text;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;flex:1;min-width:0;padding:0;display:block;overflow:hidden}.kw-node-label:hover{box-shadow:none;background:0 0}.kw-node-edit{width:100%;font:inherit;color:#fff;caret-color:#fff;background:0 0;border:0;border-bottom:1px solid #fff6;border-radius:0;outline:none;flex:1;min-width:0;margin:0;padding:2px 0;transition:border-color .15s}.kw-node-edit:focus{border-bottom-color:#fff}.kw-node-edit::selection{color:#fff;background:#ffffff4d}.kw-node-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.kw-node-subtopic .kw-node-actions{flex-direction:column;align-items:stretch;gap:4px}.kw-plus,.kw-delete{appearance:none;color:#fff;cursor:pointer;letter-spacing:.02em;transform-origin:50%;background:#ffffff24;border:1px solid #ffffff59;border-radius:6px;padding:2px 8px;font-family:Space Grotesk,sans-serif;font-size:11px;font-weight:600;line-height:1.2;transition:background-color .12s,color .12s,border-color .12s,transform 80ms}.kw-plus:active,.kw-delete:active{transform:scale(.96)}.kw-plus{white-space:nowrap}.kw-plus:hover{color:var(--brand-red);background:#fff;border-color:#fff}.kw-plus.subtle{color:#ffffffd9;background:0 0;border-color:#ffffff4d}.kw-plus.subtle:hover{color:var(--brand-red);background:#fff;border-color:#fff}.kw-delete{opacity:0;color:#ffffffd9;background:0 0;border-color:#ffffff4d;justify-content:center;align-self:flex-end;align-items:center;width:22px;height:22px;padding:0;font-size:14px;transition:opacity .12s;display:inline-flex}.kw-delete:hover{color:var(--brand-red);background:#fff;border-color:#fff}.kw-node.kw-node-client{background:var(--ink);color:#fff;border-color:var(--ink)}.kw-node.kw-node-client .kw-node-type{color:#ffffff8c}.kw-node.kw-node-input{border-style:dashed;box-shadow:0 0 0 3px #e4231326}.kw-node.kw-node-input input{width:100%;font:inherit;color:#fff;caret-color:#fff;background:0 0;border:0;border-bottom:1px solid #fff9;outline:none;margin:0;padding:2px 0}.kw-node.kw-node-input input::placeholder{color:#fff9}.rd3t-link{stroke:var(--border-strong)!important;stroke-width:1.5px!important;stroke-linecap:round!important;stroke-linejoin:round!important;fill:none!important}.rd3t-node,.rd3t-leaf-node{transition:transform .18s var(--ease-in-out-cubic)}.rd3t-node circle,.rd3t-leaf-node circle{display:none}@media (prefers-reduced-motion:reduce){.kw-node{transition:none;animation:none}.kw-node:hover{transform:none}.kw-plus,.kw-delete,.kw-node-edit,.rd3t-node,.rd3t-leaf-node{transition:none}}.mobile-header,.mobile-menu-button{display:none}.sidebar-backdrop{z-index:39;opacity:0;pointer-events:none;background:#0d0d0d4d;transition:opacity .18s;position:fixed;inset:0}.sidebar-backdrop.open{opacity:1;pointer-events:auto}@media (width<=900px){.app-shell{grid-template-columns:1fr}.mobile-header{background:var(--surface);border-bottom:1px solid var(--border);z-index:30;justify-content:space-between;align-items:center;padding:16px 20px;display:flex;position:sticky;top:0}.mobile-menu-button{display:inline-flex}.sidebar{z-index:40;width:260px;height:100vh;transition:transform .22s cubic-bezier(.2,.8,.2,1);position:fixed;inset:0 auto 0 0;transform:translate(-100%);box-shadow:8px 0 30px #0d0d0d1a}.sidebar.open{transform:translate(0)}.main{padding:20px}h1{font-size:24px}.metric-row{grid-template-columns:1fr;gap:12px}.metric{padding:20px}.metric-value{font-size:28px}.section-grid{grid-template-columns:1fr;gap:16px}.inline-form{grid-template-columns:1fr}.page-head{flex-direction:column;align-items:flex-start}}
