:root{--brand-primary:#4f46e5;--brand-primary-ink:#fff;--bg:#f7f7f8;--surface:#fff;--border:#e6e6ea;--text:#18181b;--muted:#6b7280;--danger:#dc2626;--success:#16a34a;--radius:12px;--shadow:0 1px 2px rgba(0,0,0,.04),0 8px 24px rgba(0,0,0,.05);--maxw:960px}*{box-sizing:border-box}body,html{padding:0;margin:0}body{font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--brand-primary);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:var(--maxw);margin:0 auto;padding:24px 20px 64px}.container-narrow{max-width:560px}.topbar{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:var(--surface);border-bottom:1px solid var(--border)}.topbar .brand{font-weight:700;letter-spacing:-.01em}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.card+.card{margin-top:16px}.stack>*+*{margin-top:12px}.row,.spread{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.spread{justify-content:space-between}.grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));align-items:stretch}.grid>.card+.card{margin-top:0}h1{font-size:1.6rem;margin:0 0 4px;letter-spacing:-.02em}h2{font-size:1.15rem;margin:0 0 8px}.muted{color:var(--muted)}.small{font-size:.85rem}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.linklike{background:none;border:none;padding:0;color:var(--brand-primary);font:inherit;cursor:pointer}.linklike:hover{text-decoration:underline}.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:60;background:#f0fdf4;color:#166534;border:1px solid #bbf7d0;padding:10px 16px;border-radius:10px;box-shadow:var(--shadow);font-size:.9rem;font-weight:600;animation:toast-in .15s ease}@keyframes toast-in{0%{opacity:0;transform:translateX(-50%) translateY(10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.tabs{display:inline-flex;gap:4px;padding:4px;background:var(--bg);border:1px solid var(--border);border-radius:10px}.tab{background:none;border:none;padding:6px 14px;border-radius:8px;font:inherit;font-weight:600;font-size:.85rem;color:var(--muted);cursor:pointer}.tab[aria-selected=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.split{display:grid;grid-template-columns:220px 1fr;grid-gap:16px;gap:16px;align-items:start}@media (max-width:640px){.split{grid-template-columns:1fr}}.listnav{display:flex;flex-direction:column;gap:4px}.listnav button{text-align:left;width:100%;background:none;border:1px solid transparent;border-radius:8px;padding:8px 10px;font:inherit;color:var(--text);cursor:pointer}.listnav button:hover{background:var(--bg)}.listnav button[aria-selected=true]{background:var(--bg);border-color:var(--border);font-weight:600}label{display:block;font-weight:600;font-size:.9rem;margin-bottom:6px}input,select,textarea{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:10px;font:inherit;background:var(--surface);color:var(--text)}input:focus,select:focus,textarea:focus{outline:2px solid var(--brand-primary);outline-offset:1px}textarea{min-height:90px;resize:vertical}.field+.field{margin-top:14px}.btn{display:inline-flex;align-items:center;gap:8px;cursor:pointer;padding:10px 16px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;font-weight:600;transition:background .12s ease,transform 80ms ease,filter .12s ease}.btn:hover{background:#fafafa}.btn:active:not(:disabled){transform:translateY(1px);filter:brightness(.96)}.btn-primary{background:var(--brand-primary);color:var(--brand-primary-ink);border-color:transparent}.btn-primary:hover{filter:brightness(.95);background:var(--brand-primary)}.btn-danger{color:var(--danger);border-color:#f0c8c8}.btn-sm{padding:6px 10px;font-size:.85rem}.btn:disabled{opacity:.5;cursor:not-allowed}.badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.78rem;font-weight:600;background:#eef;color:#334}.badge-submitted{background:#eef2ff;color:#3730a3}.badge-approved{background:#dcfce7;color:#166534}.badge-rejected{background:#fee2e2;color:#991b1b}.badge-churned{background:#f3f4f6;color:#4b5563}.badge-active{background:#dcfce7;color:#166534}.badge-draft{background:#fef9c3;color:#854d0e}.badge-paused{background:#f3f4f6;color:#4b5563}.badge-expired{background:#fee2e2;color:#991b1b}.table{width:100%;border-collapse:collapse}.table td,.table th{text-align:left;padding:10px 8px;border-bottom:1px solid var(--border);vertical-align:top}.table th{font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.notice{padding:12px 14px;border-radius:10px;font-size:.9rem}.notice-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.notice-info{background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe}.notice-success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.version-stamp{position:fixed;right:10px;bottom:8px;font-size:.72rem;color:var(--muted)}.apply-hero{border-radius:var(--radius);padding:28px;color:var(--brand-primary-ink);background:var(--brand-primary);box-shadow:var(--shadow)}.apply-logo{height:48px;width:auto;margin-bottom:12px;border-radius:8px;background:#fff;padding:4px}.spinner{color:var(--muted)}[data-tooltip]{position:relative}[data-tooltip]:after,[data-tooltip]:before{position:absolute;left:50%;bottom:100%;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease;z-index:20}[data-tooltip]:after{content:attr(data-tooltip);transform:translateX(-50%) translateY(-8px);width:200px;white-space:normal;text-align:center;padding:8px 10px;border-radius:8px;background:var(--text);color:#fff;font-size:.78rem;font-weight:500;line-height:1.35;box-shadow:var(--shadow)}[data-tooltip]:before{content:"";transform:translateX(-50%) translateY(-2px);border:5px solid transparent;border-top:5px solid var(--text)}[data-tooltip]:focus-visible:after,[data-tooltip]:focus-visible:before,[data-tooltip]:hover:after,[data-tooltip]:hover:before{opacity:1;visibility:visible}[data-flavour]{color:var(--text)}[data-flavour] a{color:var(--brand)}[data-flavour] h1{font-family:var(--font-display);font-size:var(--h1-size);font-weight:var(--h1-weight);letter-spacing:var(--h1-tracking);line-height:1.15}[data-flavour] h2{font-family:var(--font-display);font-size:var(--h2-size)}[data-flavour] .card{background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-card)}[data-flavour] .stack>*+*{margin-top:var(--space-stack)}[data-flavour] input,[data-flavour] select,[data-flavour] textarea{border:var(--border-width) solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text);transition:border-color var(--transition),box-shadow var(--transition)}[data-flavour] input::placeholder,[data-flavour] textarea::placeholder{color:var(--muted);opacity:.7}[data-flavour] input:focus,[data-flavour] select:focus,[data-flavour] textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--ring)}[data-flavour] select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none' stroke='%238a8a8a' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M1 1.5L6 6.5L11 1.5'/></svg>");background-repeat:no-repeat;background-position:right 12px center;padding-right:34px}[data-flavour] input[type=checkbox],[data-flavour] input[type=radio]{width:auto;accent-color:var(--brand)}[data-flavour] .btn{border-radius:var(--btn-radius);border:var(--border-width) solid var(--border);background:var(--surface);color:var(--text);font-weight:var(--btn-weight);box-shadow:var(--btn-shadow);transition:background var(--transition),box-shadow var(--transition),transform var(--transition),border-color var(--transition)}[data-flavour] .btn:hover{background:var(--surface-2)}[data-flavour] .btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--ring),var(--btn-shadow)}[data-flavour] .btn:active{transform:translateY(1px);box-shadow:var(--btn-shadow-active)}[data-flavour] .btn-primary{background:var(--brand);color:var(--brand-ink);border-color:transparent}[data-flavour] .btn-primary:hover{background:var(--brand-hover)}[data-flavour] .btn-danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,var(--border))}[data-flavour] .muted{color:var(--muted)}[data-flavour] .notice{border-radius:var(--radius-md);border:var(--border-width) solid transparent}[data-flavour] .notice-error{background:color-mix(in srgb,var(--danger) 10%,var(--surface));color:var(--danger);border-color:color-mix(in srgb,var(--danger) 30%,transparent)}[data-flavour] .notice-info{background:color-mix(in srgb,var(--info) 10%,var(--surface));color:var(--info);border-color:color-mix(in srgb,var(--info) 28%,transparent)}[data-flavour] .notice-success{background:color-mix(in srgb,var(--success) 12%,var(--surface));color:var(--success);border-color:color-mix(in srgb,var(--success) 30%,transparent)}[data-flavour] .apply-hero{border-radius:var(--radius-lg);padding:32px;color:var(--brand-ink);background:var(--brand);box-shadow:var(--shadow-md)}[data-flavour] .apply-hero h1{color:var(--brand-ink)}[data-flavour] .apply-logo{border-radius:var(--radius-md)}.marketing{--mkt-max:1080px;color:var(--text)}.marketing .mkt-nav{display:flex;align-items:center;justify-content:space-between;max-width:var(--mkt-max);margin:0 auto;padding:18px 24px}.marketing .mkt-brand{font-weight:800;font-size:1.15rem;letter-spacing:-.02em;color:var(--brand-primary)}.marketing .mkt-nav a{color:var(--muted);font-weight:600;font-size:.9rem}.marketing .mkt-nav a:hover{color:var(--text);text-decoration:none}.marketing .mkt-hero{text-align:center;padding:76px 24px 64px;background:radial-gradient(60% 80% at 50% 0,color-mix(in srgb,var(--brand-primary) 16%,transparent),transparent 70%),var(--bg);border-bottom:1px solid var(--border)}.marketing .mkt-hero h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.08;letter-spacing:-.03em;max-width:18ch;margin:0 auto 18px;font-weight:800}.marketing .mkt-hero .mkt-sub{font-size:clamp(1rem,2.2vw,1.2rem);color:var(--muted);max-width:62ch;margin:0 auto 28px}.marketing .mkt-cta-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.marketing .btn-lg{padding:13px 22px;font-size:1rem;border-radius:12px}.marketing .mkt-section{max-width:var(--mkt-max);margin:0 auto;padding:64px 24px}.marketing .mkt-section>h2{text-align:center;font-size:clamp(1.5rem,3.5vw,2.1rem);letter-spacing:-.02em;margin:0 0 8px}.marketing .mkt-lead{text-align:center;color:var(--muted);max-width:58ch;margin:0 auto 36px}.marketing .mkt-steps{display:grid;grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.marketing .mkt-step{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px;box-shadow:var(--shadow)}.marketing .mkt-num{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:color-mix(in srgb,var(--brand-primary) 12%,var(--surface));color:var(--brand-primary);font-weight:800;margin-bottom:12px}.marketing .mkt-step h3{margin:0 0 6px;font-size:1.1rem}.marketing .mkt-step p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.5}.marketing .mkt-grid{display:grid;grid-gap:18px;gap:18px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.marketing .mkt-feature{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:22px}.marketing .mkt-ficon{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--brand-primary) 12%,var(--surface));color:var(--brand-primary);margin-bottom:12px}.marketing .mkt-feature h3{margin:0 0 6px;font-size:1.05rem}.marketing .mkt-feature p{margin:0;color:var(--muted);font-size:.92rem;line-height:1.5}.marketing .mkt-pricing{display:grid;grid-gap:18px;gap:18px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.marketing .mkt-price{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px 20px;text-align:center}.marketing .mkt-price.mkt-featured{border-color:var(--brand-primary);box-shadow:0 0 0 1px var(--brand-primary),var(--shadow)}.marketing .mkt-tier{font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.78rem}.marketing .mkt-cap{font-size:2.2rem;font-weight:800;letter-spacing:-.02em;margin:6px 0 2px}.marketing .mkt-capsub{color:var(--muted);font-size:.85rem}.marketing .mkt-soon{display:inline-block;vertical-align:middle;margin-left:10px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#b45309;background:color-mix(in srgb,#f59e0b 22%,var(--surface));border-radius:999px;padding:4px 11px}.marketing .mkt-start{text-align:center}.marketing .mkt-start .card{max-width:460px;margin:0 auto;text-align:left}.marketing .mkt-footer{border-top:1px solid var(--border);padding:28px 24px;text-align:center;color:var(--muted);font-size:.85rem}@media (max-width:640px){.marketing .mkt-hero{padding:52px 20px 40px}.marketing .mkt-section{padding:44px 20px}}