@font-face{font-family:Figtree;font-style:normal;font-weight:300 900;font-display:swap;src:url(/_next/static/media/d9fef5bf2f64cf9a-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Figtree;font-style:normal;font-weight:300 900;font-display:swap;src:url(/_next/static/media/de42cfb9a3b980ae-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Figtree Fallback;src:local("Arial");ascent-override:94.32%;descent-override:24.82%;line-gap-override:0.00%;size-adjust:100.72%}.__className_e2cc43{font-family:Figtree,Figtree Fallback;font-style:normal}.__variable_e2cc43{--font-sans:"Figtree","Figtree Fallback"}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/fb526027db1fc1ae-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/4da3161b738b07dd-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/af4bf8399d1aacdf-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fraunces Fallback;src:local("Times New Roman");ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.00%;size-adjust:115.45%}.__className_482ce5{font-family:Fraunces,Fraunces Fallback;font-style:normal}.__variable_482ce5{--font-serif:"Fraunces","Fraunces Fallback"}:root{--bg:#ffffff;--bg-elev:#ffffff;--bg-muted:#f4f0fb;--ink:#2a1548;--ink-dim:#6b5a86;--line:#e6dff2;--accent:#5b21b6;--accent-2:#7c3aed;--danger:#c53030;--ok:#2f855a;--side:#4c1d95;--side-ink:#ffffff;--font-sans:"Figtree",ui-sans-serif,system-ui,sans-serif;--font-serif:"Fraunces","Iowan Old Style",Georgia,serif;--radius:14px}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}::selection{background:var(--accent);color:#ffffff}.auth-shell{min-height:100dvh;display:grid;place-items:center;padding:32px 16px;background:radial-gradient(1200px 500px at 10% -10%,#ede4fb 0,transparent 55%),radial-gradient(800px 400px at 100% 0,#f4eefc 0,transparent 50%),var(--bg)}.auth-card{width:min(440px,100%);background:var(--bg-elev);border:1px solid var(--line);border-radius:20px;padding:36px 32px;box-shadow:0 24px 60px rgba(76,29,149,.12)}.brand-logo{display:block;width:min(220px,70%);height:auto;margin:0 auto 20px}.eyebrow{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-2);margin:0 0 8px}.serif,h1,h2{font-family:var(--font-serif);font-weight:520;letter-spacing:-.02em}.display{font-size:34px;line-height:1.15;margin:0 0 8px}.lede{margin:0 0 28px}.lede,label{color:var(--ink-dim)}label{display:block;font-size:13px;margin-bottom:6px}.field{width:100%;margin-bottom:14px}.input,.select,.textarea{width:100%;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px 12px;outline:none}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent)}.textarea{min-height:88px;resize:vertical}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:10px 16px;cursor:pointer;text-decoration:none;font-weight:600}.btn-primary{background:var(--accent);color:#ffffff}.btn-primary:hover{filter:brightness(1.08)}.btn-ghost{background:transparent;border:1px solid var(--line);color:var(--ink)}.btn-danger{background:transparent;border:1px solid var(--danger);color:var(--danger)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-row{display:flex;gap:8px;flex-wrap:wrap}.err{color:var(--danger);font-size:13px;margin:0 0 12px}.ok{color:var(--ok)}.app{min-height:100dvh;display:grid;grid-template-columns:240px 1fr}.side{border-right:1px solid #3b1678;padding:22px 16px;background:var(--side);color:var(--side-ink);display:flex;flex-direction:column;gap:18px}.brand{font-family:var(--font-serif);font-size:22px;padding:4px 10px 16px}.nav a{display:block;padding:8px 10px;border-radius:8px;text-decoration:none;color:rgba(255,255,255,.78)}.nav a.active,.nav a:hover{background:rgba(255,255,255,.14);color:var(--side-ink)}.side-foot{margin-top:auto;color:rgba(255,255,255,.72);font-size:12px;padding:10px}.main{padding:32px 40px 64px}.topbar{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:28px}.chat-back,.topbar>.btn{flex-shrink:0;white-space:nowrap}.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:14px;gap:14px}.card{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:0 8px 24px rgba(76,29,149,.06)}.card h3{margin:0 0 6px;font-size:18px}.muted{color:var(--ink-dim);font-size:13px}.mono{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-family:ui-monospace,monospace;font-size:12px}.builder{display:grid;grid-template-columns:minmax(280px,340px) minmax(400px,1fr);grid-gap:24px;gap:24px;align-items:start}.preview-frame{position:-webkit-sticky;position:sticky;top:24px;min-height:640px;background:#f7f4fc;border:1px dashed var(--line);border-radius:18px;overflow:hidden}.preview-frame iframe{width:100%;height:640px;border:0;background:transparent}.snippet{background:#2a1548;border:1px solid var(--line);border-radius:12px;padding:12px 14px;overflow-x:auto;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;color:var(--accent-2)}.table{width:100%;border-collapse:collapse}.table td,.table th{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line);font-size:13px}.bars{display:flex;flex-direction:column;gap:8px}.bar-row{display:grid;grid-template-columns:72px 1fr 48px;grid-gap:8px;gap:8px;align-items:center;font-size:12px;color:var(--ink-dim)}.bar{height:8px;background:var(--bg-muted);border-radius:99px;overflow:hidden}.date-filter{margin-bottom:18px}.seg{display:inline-flex;flex-wrap:wrap;gap:0;border:1px solid var(--line);border-radius:999px;overflow:hidden;background:var(--bg-elev)}.seg button{border:0;background:transparent;padding:8px 16px;cursor:pointer;font-weight:600;color:var(--ink-dim);white-space:nowrap}.seg button.is-on{background:var(--accent);color:#fff}.date-custom{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px;max-width:480px}.date-custom label{flex:1 1;min-width:160px}.chat-list{display:flex;flex-direction:column;gap:10px;max-width:760px}.chat-row{display:block;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;text-decoration:none;color:inherit}.chat-row:hover{border-color:var(--accent)}.chat-row h3{margin:0 0 6px;font-size:16px}.chat-thread{display:flex;flex-direction:column;gap:12px;max-width:720px}.chat-bubble{max-width:min(80%,560px);padding:12px 14px;border-radius:16px;white-space:pre-wrap;line-height:1.45;font-size:14px}.chat-bubble.user{align-self:flex-end;background:var(--accent);color:#fff;border-bottom-right-radius:6px}.chat-bubble.assistant{align-self:flex-start;background:var(--bg-elev);border:1px solid var(--line);border-bottom-left-radius:6px}.chat-bubble.error{align-self:flex-start;background:#fef2f2;color:var(--danger);border:1px solid #fecaca}.chat-bubble-meta{font-size:11px;opacity:.72;margin-bottom:4px;font-weight:600;text-transform:capitalize}.row-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.color-row{display:flex;gap:8px;align-items:center}.color-row input[type=color]{width:42px;height:36px;border:0;background:none;padding:0}@media (max-width:1100px){.app{grid-template-columns:1fr}.side{display:none}.builder{grid-template-columns:1fr}.preview-frame{order:-1}.main{padding:20px 16px 48px}}