:root{--bg:#F1EEFF;--ink:#1A1340;--mute:#5E5885;--line:#D9D3F5;--paper:#fff;--pink:#FF3D81;--violet:#5B3DF5;--mark:#FFE36B;--slip:#1A1340;--slip-ink:#F1EEFF;
--sans:"Familjen Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace}
@media(prefers-color-scheme:dark){:root{--bg:#120E2B;--ink:#F1EEFF;--mute:#A9A2D3;--line:#2B2456;--paper:#1C1640;--violet:#8D78FF;--mark:#6B5A00;--slip:#0A0720}}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:500 17px/1.55 var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit}:focus-visible{outline:3px solid var(--violet);outline-offset:3px;border-radius:4px}
.wrap{max-width:1100px;margin:0 auto;padding:0 22px}.sr{position:absolute;left:-9999px}
h1,h2,h3{margin:0;line-height:1.05;letter-spacing:-.03em}
h1{font-size:clamp(2.7rem,6.5vw,5rem);font-weight:700}.h1s{font-size:clamp(2rem,4.5vw,3.2rem)}
h2{font-size:clamp(1.8rem,3.8vw,2.6rem);font-weight:700;margin-bottom:28px}h3{font-size:1.15rem;font-weight:700}
.lead{font-size:1.15rem;color:var(--mute);max-width:32em;margin:18px 0 0}
.bar{display:flex;justify-content:space-between;align-items:center;padding-top:22px;padding-bottom:22px}
.logo{font-size:1.35rem;font-weight:700;letter-spacing:-.03em;text-decoration:none}.logo b{color:var(--pink)}
nav a{margin-left:20px;text-decoration:none;color:var(--mute)}nav a:hover{color:var(--ink)}
nav a.pill{background:var(--ink);color:var(--bg);padding:8px 16px;border-radius:999px}
.hero{display:grid;grid-template-columns:1fr 1.1fr;gap:52px;align-items:start;padding-top:36px;padding-bottom:84px}
.others a{margin-right:12px;color:var(--violet)}
section{padding-top:20px}.wrap#how,.wrap#templates,.final{padding-top:64px;padding-bottom:30px}
.btn{font:700 1rem var(--sans);padding:13px 22px;border:0;border-radius:12px;background:var(--pink);color:#fff;cursor:pointer;transition:transform .15s}
.btn:hover:not(:disabled){transform:translateY(-2px) rotate(-1deg)}.btn:disabled{opacity:.55;cursor:not-allowed}
/* demo */
.slip{display:flex;gap:10px;background:var(--slip);color:var(--slip-ink);border-radius:14px;padding:16px 18px;box-shadow:6px 6px 0 var(--violet)}
.prompt{font:500 1rem var(--mono);color:var(--pink);padding-top:1px}
textarea{flex:1;resize:vertical;background:none;border:0;color:inherit;font:400 .95rem/1.5 var(--mono);outline:0;min-height:72px}
.chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:14px 0 4px;font-size:.9rem;color:var(--mute)}
.chip{font:inherit;color:var(--ink);background:none;border:1.5px solid var(--line);border-radius:999px;padding:3px 12px;cursor:pointer}.chip:hover{border-color:var(--violet)}
.receipt{position:relative;margin:22px 8px 22px 0;background:var(--paper);border:1px solid var(--line);border-bottom:0;padding:20px 22px 14px;transform:rotate(-.8deg);min-height:150px}
.receipt::after{content:"";position:absolute;left:-1px;right:-1px;top:100%;height:12px;background:linear-gradient(135deg,var(--paper) 6px,transparent 0) 0 0/12px 12px,linear-gradient(225deg,var(--paper) 6px,transparent 0) 0 0/12px 12px}
.inv-head{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px solid var(--ink);padding-bottom:8px}
.inv-head small{font-family:var(--mono);color:var(--mute)}.billed{margin:10px 0 6px;color:var(--mute)}
mark{background:var(--mark);color:inherit;padding:0 5px;border-radius:3px}
.row{display:grid;grid-template-columns:1fr auto auto;gap:14px;padding:7px 0;border-bottom:1px dashed var(--line);animation:rowin .45s both}
.row span:nth-child(2){font:400 .82rem var(--mono);color:var(--mute);align-self:center}.row span:last-child{font:500 .95rem var(--mono);min-width:5em;text-align:right}
.row:nth-of-type(2){animation-delay:.08s}.row:nth-of-type(3){animation-delay:.16s}.row:nth-of-type(4){animation-delay:.24s}.row:nth-of-type(n+5){animation-delay:.3s}
@keyframes rowin{from{opacity:0;transform:translateX(-14px)}}
.tot{display:flex;justify-content:space-between;align-items:baseline;padding-top:12px;font-size:1.35rem;font-weight:700;animation:rowin .5s .3s both}
.tot small{font:400 .8rem var(--mono);color:var(--mute);margin-left:6px}
.empty{color:var(--mute)}code{font:400 .85em var(--mono);background:var(--mark);padding:1px 5px;border-radius:3px}
.actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:22px}#share a{color:var(--violet);word-break:break-all}
/* sections */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;list-style:none;padding:0;margin:0;counter-reset:s}
.steps li{counter-increment:s;border-top:3px solid var(--ink);padding-top:14px}.steps li::before{content:counter(s);font:500 .95rem var(--mono);color:var(--pink)}
.steps h3{margin:4px 0 6px}.steps p{margin:0;color:var(--mute)}
.why{margin-top:64px;background:var(--ink);color:var(--bg);padding:76px 0}.why h2{margin-bottom:14px;color:var(--pink)}
.big{font-size:clamp(1.6rem,3.6vw,2.5rem);line-height:1.12;letter-spacing:-.025em;font-weight:700;max-width:19em;margin:0 0 40px}
.move{background:var(--bg);color:var(--ink);border-radius:16px;padding:26px 28px;max-width:640px;transform:rotate(.6deg)}
.move h3{font-size:1.3rem;margin-bottom:12px}.todo{list-style:none;margin:0;padding:0}.todo li{padding:7px 0}
.todo label{display:flex;gap:12px;align-items:flex-start;cursor:pointer}.todo input{width:20px;height:20px;margin-top:3px;accent-color:var(--pink);flex:none}
.todo input:checked+span{text-decoration:line-through;color:var(--mute)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{display:block;text-decoration:none;background:var(--paper);border:1.5px solid var(--line);border-radius:14px;padding:22px;transition:transform .2s,border-color .2s}
.card:hover{transform:translateY(-4px);border-color:var(--pink)}.card p{color:var(--mute);margin:8px 0 12px}.card small{font-family:var(--mono);color:var(--violet)}
.join{display:flex;gap:10px;flex-wrap:wrap;max-width:460px;margin-top:20px}
.join input{flex:1 1 220px;min-width:0;padding:13px 15px;font:inherit;border:1.5px solid var(--line);background:var(--paper);color:var(--ink);border-radius:12px}
.msg{flex-basis:100%;margin:0;color:var(--mute);min-height:1.5em}
.page{padding-top:30px;padding-bottom:60px}.narrow{max-width:560px}.receipt.show{transform:none}.foot-note{color:var(--mute);margin-top:30px}
.foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding-top:40px;padding-bottom:44px;color:var(--mute);font-size:.9rem}
@media(max-width:860px){.hero,.steps,.grid{grid-template-columns:1fr}nav a:not(.pill){display:none}.hero{gap:34px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}

/* Programmatic page system */
.eyebrow{font:700 .76rem/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--violet);margin:0 0 14px}.hero-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:23px}.micro{font-size:.83rem;color:var(--mute)}.industry-links{display:flex;flex-wrap:wrap;gap:11px 20px}.industry-links a{color:var(--bg);text-decoration:none;border-bottom:1px solid var(--pink);padding-bottom:2px}.industry-links a:hover{color:var(--pink)}.more-link{margin-top:22px}.more-link a{color:var(--violet);font-weight:700}.direct-cta{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:22px}.direct-cta p{color:var(--mute)}.library-nav{display:flex;gap:20px;flex-wrap:wrap;margin:24px 0 38px}.library-nav a{color:var(--violet);font-weight:700;text-decoration:none}.template-grid,.industry-grid{margin-top:0}.feature-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:28px}.feature-columns h3{margin-bottom:7px}.feature-columns p{color:var(--mute)}.why .feature-columns p{color:var(--bg);opacity:.78}.why .feature-columns h3{color:var(--pink)}.job-list{display:grid;grid-template-columns:repeat(2,1fr);gap:0 40px;margin-top:22px}.job-list a{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);text-decoration:none}.job-list b{color:var(--violet)}.faq-one{padding-bottom:80px}.faq-one details{max-width:760px}.mini-proof{padding-top:28px;padding-bottom:30px}.mini-proof h2{margin-bottom:0}.page .lead{margin-bottom:0}.demo{scroll-margin-top:20px}.direct-cta .btn{background:var(--pink);border-color:var(--pink)}
@media(max-width:860px){.feature-columns,.job-list{grid-template-columns:1fr}.feature-columns{gap:22px}.hero-actions{align-items:flex-start;flex-direction:column}.industry-links{gap:12px 17px}}

/* Attached landing page system + free-account funnel */
.marketing-hero{padding:40px 0 88px}.marketing-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}.marketing-hero .lead{font-size:1.2rem;color:var(--mute);max-width:46ch;margin:22px 0 32px}.marketing-hero .cta{display:flex;gap:12px;flex-wrap:wrap}.marketing-hero .note{margin-top:16px;font-size:.92rem;color:var(--mute)}.phone{width:100%;max-width:340px;margin:0 auto;background:var(--paper);border:2px solid var(--ink);border-radius:36px;padding:18px 16px 22px;box-shadow:10px 10px 0 var(--ink)}.phone-bar{display:flex;justify-content:space-between;font-size:.8rem;color:var(--mute);padding:0 6px 12px;border-bottom:1px solid var(--line);margin-bottom:14px}.phone-bar b{color:var(--ink)}.msg{max-width:88%;padding:10px 14px;border-radius:18px;margin-bottom:10px;font-size:.95rem;line-height:1.4;opacity:0;animation:pop .45s ease forwards}.msg.out{background:var(--violet);color:var(--slip-ink);border-bottom-left-radius:4px}.msg.in{background:var(--bg);margin-left:auto;border-bottom-right-radius:4px}.inv{background:var(--paper);color:var(--ink);border-radius:12px;padding:12px;margin-top:8px}.inv small{color:var(--mute);display:block}.inv strong{font:800 1.7rem var(--sans);display:block}.inv .pay{display:block;text-align:center;margin-top:10px;background:var(--ink);color:var(--paper);border-radius:8px;padding:8px;font-weight:700;font-size:.9rem}.paid{background:var(--green);color:#fff;font-weight:700;border-radius:12px;padding:8px 14px;display:inline-block;opacity:0;animation:pop .45s ease forwards}.save-template{color:var(--violet);font-weight:700;text-decoration:none}.signup-page,.welcome-page{max-width:620px;padding-top:50px;padding-bottom:100px}.signup-form{display:grid;gap:14px;max-width:460px;margin-top:30px}.signup-form label{font-weight:700}.signup-form input{display:block;width:100%;margin-top:6px;padding:13px 15px;border:1.5px solid var(--line);background:var(--paper);color:var(--ink);border-radius:10px;font:inherit}.signup-form .btn{justify-self:start}.signup-form small{color:var(--mute)}.signup-form .msg{opacity:1;max-width:none;margin:0;padding:0;color:#b42318;font-size:.9rem}.welcome-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.home-templates{margin-top:35px}
@media(max-width:820px){.marketing-grid{grid-template-columns:1fr;gap:34px}.marketing-hero{padding-bottom:56px}.phone{box-shadow:6px 6px 0 var(--ink)}}

.keyword-content{display:grid;grid-template-columns:1fr 280px;gap:55px;padding-top:25px;padding-bottom:75px}.keyword-main h2{margin-bottom:14px}.keyword-steps{margin-top:30px}.keyword-steps>div{display:grid;grid-template-columns:42px 1fr;gap:0 14px;padding:18px 0;border-top:1px solid var(--line)}.keyword-steps span{grid-row:span 2;font:500 .9rem var(--mono);color:var(--violet)}.keyword-steps h3{margin:0 0 5px}.keyword-steps p{color:var(--mute);margin:0}.aside-card{background:var(--ink);color:var(--bg);border-radius:14px;padding:24px;transform:rotate(.8deg);box-shadow:6px 6px 0 var(--violet)}.aside-card strong{font:700 1.35rem var(--sans)}.aside-card p{margin:8px 0 18px;opacity:.8}.aside-card a{color:var(--hi);font-weight:700;text-decoration:none}.related-keywords{padding-top:70px;padding-bottom:80px}.keyword-cluster{border-top:1px solid var(--line);margin-top:70px;padding-top:60px}.keyword-cluster h2{margin-bottom:30px}.keyword-hero{padding-bottom:58px}.keyword-hero .demo{margin-top:0}@media(max-width:820px){.keyword-content{grid-template-columns:1fr;gap:30px}.keyword-aside{max-width:330px}.keyword-cluster{margin-top:45px;padding-top:45px}}
.demo-section{background:var(--paper);text-align:center}.demo-section h2{margin:8px auto 0}.demo-section .sub{color:var(--mute);margin:10px auto 28px}.demo-section .demo{max-width:720px;margin:0 auto;text-align:left;box-shadow:10px 10px 0 var(--ink);animation:demoFloat 5s ease-in-out infinite}.download-invoice{display:inline-block;color:var(--green);font-weight:700;text-decoration:none;padding:10px 0}.actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.actions #share{flex-basis:100%;color:var(--mute);font-size:.9rem}.actions #share a{color:var(--violet);font-weight:700}.actions button:disabled{opacity:.6;cursor:wait}@keyframes demoFloat{0%,100%{transform:translateY(0) rotate(-.4deg)}50%{transform:translateY(-6px) rotate(.4deg)}}@media(prefers-reduced-motion:reduce){.demo-section .demo{animation:none}} 
.template-detail{display:grid;grid-template-columns:.86fr 1.14fr;gap:58px;align-items:center;padding-top:52px;padding-bottom:68px}.template-copy .micro{margin-top:15px}.invoice-paper{background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:30px 32px;box-shadow:12px 12px 0 var(--ink);transform:rotate(.7deg);color:var(--ink)}.paper-top{display:flex;justify-content:space-between;gap:18px;border-bottom:2px solid var(--ink);padding-bottom:22px}.paper-kicker{display:block;font:700 .7rem var(--mono);letter-spacing:.18em;color:var(--violet);margin-bottom:8px}.paper-top h2{font-size:1.35rem;margin:0;max-width:14ch}.paper-number{font:700 .82rem var(--mono);color:var(--mute)}.paper-meta{display:flex;justify-content:space-between;gap:15px;padding:18px 0;color:var(--mute);font-size:.84rem}.paper-meta b{display:block;color:var(--ink);margin-top:2px}.paper-client{background:var(--bg);border-radius:5px;padding:12px 14px;color:var(--mute);font-size:.82rem}.paper-client strong{display:block;color:var(--ink);font-size:1rem;margin-top:2px}.paper-table{margin-top:22px}.paper-table-head,.paper-row{display:grid;grid-template-columns:1fr 40px 70px 75px;gap:8px;align-items:center}.paper-table-head{font:700 .7rem var(--mono);color:var(--mute);padding-bottom:8px;border-bottom:1px solid var(--line)}.paper-table-head span:not(:first-child),.paper-row span:not(:first-child){text-align:right}.paper-row{font-size:.84rem;padding:11px 0;border-bottom:1px dashed var(--line)}.paper-row span:not(:first-child){font-family:var(--mono);font-size:.75rem}.paper-total{display:flex;justify-content:space-between;align-items:baseline;border-top:2px solid var(--ink);margin-top:18px;padding-top:14px}.paper-total strong{font:700 1.5rem var(--mono)}.paper-note{color:var(--mute);font-size:.78rem;margin-top:26px}.template-editor{padding-top:25px;padding-bottom:75px}.template-editor>div:first-child{max-width:650px}.template-editor .demo{margin-top:28px}.invoice-success{margin-bottom:24px}.invoice-success span{font:700 .76rem var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--green)}.invoice-success p{color:var(--mute);margin-top:8px}.invoice-page .receipt{transform:none}.invoice-page .actions{margin-top:28px}.btn.ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
@media(max-width:860px){.template-detail{grid-template-columns:1fr;gap:38px;padding-top:30px}.invoice-paper{transform:none}.paper-top h2{max-width:20ch}}@media(max-width:500px){.invoice-paper{padding:22px 18px}.paper-table-head,.paper-row{grid-template-columns:1fr 30px 60px 65px;gap:5px}}
/* Supplied landing-page visual system */
.home-page{--bg:#EEF2F7;--paper:#FFFFFF;--ink:#0F1B2D;--mute:#51607A;--line:#D5DCE8;--violet:#2B59FF;--pink:#2B59FF;--green:#16915A;--mark:#FFD84D;--slip:#0F1B2D;--slip-ink:#FFFFFF;background:var(--bg);color:var(--ink)}.home-page .bar{padding-top:20px}.home-page nav a{color:var(--mute)}.home-page nav a.pill{background:var(--ink);color:#fff}.home-page .btn{background:var(--violet);border-color:var(--violet);color:#fff;border-radius:10px}.home-page .btn.ghost{background:transparent;color:var(--ink);border-color:var(--line)}.home-page .marketing-hero{padding:42px 0 84px}.home-page .marketing-grid{grid-template-columns:1fr 1fr;gap:64px;align-items:center}.home-page .marketing-copy h1{font-size:clamp(2.8rem,6vw,4.55rem);max-width:10ch;letter-spacing:-.04em}.home-page .marketing-copy .lead{font-size:1.18rem;max-width:40ch}.home-page .eyebrow{color:var(--violet)}.hero-live-demo{background:var(--paper);border:2px solid var(--ink);border-radius:24px;padding:18px 18px 22px;box-shadow:11px 11px 0 var(--ink);transform:rotate(1deg)}.demo-heading{display:flex;justify-content:space-between;align-items:center;font-size:.78rem;font-weight:700;color:var(--mute);padding:0 3px 13px;border-bottom:1px solid var(--line);margin-bottom:16px}.demo-dot{color:var(--green);font-family:var(--mono);font-size:.7rem}.hero-live-demo .demo{box-shadow:none;margin:0;max-width:none;padding:0;background:transparent;border:0}.hero-live-demo .slip{box-shadow:none;border-radius:10px}.hero-live-demo .receipt{margin-top:18px}.hero-live-demo .actions .btn{font-size:.88rem;padding:11px 15px}.home-page section{border-color:var(--line)}.home-page .card,.home-page .plan{background:var(--paper);border-color:var(--line)}.home-page .tag{background:var(--mark);color:var(--ink)}.home-page .why{background:var(--ink)}
@media(max-width:860px){.home-page .marketing-grid{grid-template-columns:1fr;gap:42px}.home-page .marketing-copy h1{max-width:12ch}.hero-live-demo{transform:none;box-shadow:7px 7px 0 var(--ink)}}
/* Landing page structural corrections */
.home-page section:not(.final){padding-top:88px;padding-bottom:88px}.home-page #how{padding-top:78px}.home-page .feat{display:grid;grid-template-columns:repeat(3,1fr);gap:0 34px;margin:0;padding:0}.home-page .feat>div{padding:25px 0 27px;border-top:1px solid var(--line)}.home-page .feat dt{font-size:1.08rem;font-weight:700;letter-spacing:-.02em}.home-page .feat dd{margin:8px 0 0;color:var(--mute);font-size:.95rem;line-height:1.5}.home-page #pricing{background:#E5EBF3}.home-page .plans{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch;margin-top:32px}.home-page .plan{position:relative;display:flex;flex-direction:column;min-height:390px;padding:28px 26px 26px;border:1px solid var(--line);border-radius:16px;box-shadow:0 8px 22px rgba(15,27,45,.06)}.home-page .plan h3{font-size:1.3rem}.home-page .plan .price{margin:18px 0 8px;font-size:2.25rem;font-weight:800;letter-spacing:-.05em}.home-page .plan .price small{font-size:.9rem;font-weight:500;letter-spacing:0;color:var(--mute)}.home-page .plan p{color:var(--mute);min-height:48px}.home-page .plan ul{padding:0;margin:14px 0 25px;list-style:none;color:var(--mute);font-size:.92rem}.home-page .plan li{padding:6px 0}.home-page .plan li::before{content:'✓';color:var(--green);font-weight:800;margin-right:8px}.home-page .plan .btn{margin-top:auto;text-align:center;text-decoration:none}.home-page .plan.best{border:2px solid var(--violet);box-shadow:0 14px 30px rgba(43,89,255,.16);transform:translateY(-10px)}.home-page .plan .tag{position:absolute;right:18px;top:18px;padding:5px 9px;border-radius:999px;font:700 .68rem var(--mono);text-transform:uppercase}.home-page #faq{background:var(--paper)}.home-page #faq .wrap{max-width:820px}.home-page #faq details{border-top:1px solid var(--line);padding:20px 0}.home-page #faq summary{cursor:pointer;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:20px}.home-page #faq summary::after{content:'+';font:700 1.3rem var(--mono);color:var(--violet)}.home-page #faq details[open] summary::after{content:'−'}.home-page #faq details p{color:var(--mute);max-width:60ch;margin:12px 0 0}.home-page .final{padding:86px 0 94px;background:var(--ink);color:#fff;text-align:center}.home-page .final .sub{color:#B9C4D6}.home-page .final .btn{background:#fff;color:var(--ink);margin-top:8px}.home-page .final h2{max-width:700px;margin-left:auto;margin-right:auto}
@media(max-width:860px){.home-page .feat,.home-page .plans{grid-template-columns:1fr}.home-page .feat{gap:0}.home-page .plan.best{transform:none}.home-page section:not(.final){padding-top:64px;padding-bottom:64px}}
.download-after-signup{display:inline-block;color:var(--mute);font-size:.82rem;padding:10px 0}
/* Authenticated application */
.auth-form{max-width:480px;display:grid;gap:14px;margin-top:30px}.auth-form label{display:grid;gap:7px;font-weight:700}.auth-form input{border:1px solid #cfd5e6;border-radius:9px;padding:13px;font:inherit}.google-button{padding:13px;border:1px solid #cfd5e6;background:#fff;border-radius:9px;font:700 15px inherit;cursor:pointer}.auth-divider{display:flex;align-items:center;gap:10px;color:#697386;font-size:13px}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:#dce1eb;flex:1}.auth-form .msg{min-height:20px;color:#b42318;margin:0}.app-shell{display:flex;min-height:100vh;background:#f7f8fc}.sidebar{width:230px;background:#111a35;color:#fff;padding:28px 20px;display:flex;flex-direction:column;gap:48px}.sidebar .logo{color:#fff}.sidebar nav{display:grid;gap:6px}.sidebar nav a{color:#bcc6e0;text-decoration:none;padding:11px;border-radius:8px}.sidebar nav a:hover,.sidebar nav a.active{background:#28365f;color:#fff}.logout-form{margin-top:auto}.logout-form button{border:0;background:transparent;color:#bcc6e0;font:inherit;cursor:pointer;padding:10px}.app-main{padding:52px;max-width:1180px;width:100%;box-sizing:border-box}.app-main h1{font-size:42px;margin:4px 0}.app-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:32px 0}.app-cards article,.dashboard-list{background:#fff;border:1px solid #e2e7f0;border-radius:13px;padding:22px}.app-cards small{color:#667085}.app-cards b{display:block;font-size:30px;margin-top:8px}.app-cards p{margin-bottom:0}.dashboard-list{overflow:auto}.dashboard-list h2{margin-top:0}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 8px;border-bottom:1px solid #edf0f5;font-size:14px}th{color:#667085;font-weight:600}@media(max-width:720px){.app-shell{display:block}.sidebar{width:auto;min-height:auto;padding:18px;gap:18px}.sidebar nav{display:flex;overflow:auto}.sidebar nav a{white-space:nowrap}.logout-form{margin:0}.app-main{padding:28px 18px}.app-main h1{font-size:32px}.app-cards{grid-template-columns:1fr}.auth-form{width:100%}}
/* Focused sign-in and sign-up experience */
.auth-screen{--auth-ink:#14213b;--auth-blue:#2b59ff;--auth-soft:#f6f8fc;background:#f6f8fc;color:var(--auth-ink);min-height:100vh}.auth-header{height:76px;max-width:1240px;margin:0 auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between}.auth-header .logo{color:var(--auth-ink);font-size:1.42rem}.auth-header .logo span{color:var(--auth-blue)}.auth-home{font-size:.92rem;color:#5d6b82;text-decoration:none;font-weight:700}.auth-home:hover{color:var(--auth-blue)}.auth-layout{max-width:1120px;min-height:calc(100vh - 76px);margin:0 auto;padding:26px 32px 58px;display:grid;grid-template-columns:minmax(320px,.94fr) minmax(420px,1fr);gap:68px;align-items:center}.auth-pitch{align-self:stretch;min-height:620px;border-radius:24px;padding:54px 48px;background:linear-gradient(145deg,#172a51,#263d74 60%,#2b59ff);color:#fff;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 24px 55px rgba(30,51,100,.2)}.auth-pitch .eyebrow{color:#9eb6ff}.auth-pitch h1{font-size:clamp(2.7rem,4.4vw,4.1rem);max-width:8ch;letter-spacing:-.055em}.auth-pitch>div>p:not(.eyebrow){color:#d5e0ff;line-height:1.6;max-width:28ch;margin:20px 0 0}.auth-preview{padding:24px;border:1px solid rgba(255,255,255,.2);border-radius:15px;background:rgba(255,255,255,.1);box-shadow:0 13px 24px rgba(0,0,0,.14);display:grid;gap:7px;transform:rotate(-2deg)}.auth-preview span,.auth-preview small{font:700 .71rem var(--mono);letter-spacing:.08em;color:#cbd9ff}.auth-preview strong{font-size:2.2rem;letter-spacing:-.05em}.auth-pitch ul{display:grid;gap:11px;margin:0;padding:0;list-style:none;font-size:.9rem;color:#e5ecff}.auth-pitch li:before{content:'✓';margin-right:10px;color:#91d8bd;font-weight:800}.auth-card{max-width:470px;width:100%;padding:22px 0;margin:auto}.auth-card-head .eyebrow{margin-bottom:10px}.auth-card h2{font-size:2.28rem;letter-spacing:-.05em}.auth-card-head>p:last-child{color:#69778f;margin:12px 0 0}.auth-screen .auth-form{max-width:none;margin-top:30px;gap:17px}.auth-screen .auth-form label{font-size:.88rem;letter-spacing:.01em;color:#35425b;gap:8px}.auth-screen .auth-form input{height:50px;border:1px solid #d7dfeb;border-radius:10px;background:#fff;color:#14213b;padding:12px 14px;transition:border-color .15s,box-shadow .15s}.auth-screen .auth-form input::placeholder{color:#a1acbc}.auth-screen .auth-form input:focus{outline:0;border-color:#2b59ff;box-shadow:0 0 0 4px rgba(43,89,255,.11)}.auth-screen .google-button{height:52px;display:flex;align-items:center;justify-content:center;gap:12px;border:1px solid #d7dfeb;border-radius:10px;color:#27344b;box-shadow:0 1px 2px rgba(12,29,57,.03);transition:border-color .15s,box-shadow .15s,transform .15s}.auth-screen .google-button:hover{border-color:#b8c5d8;box-shadow:0 5px 15px rgba(20,33,59,.08);transform:translateY(-1px)}.google-button svg{width:20px;height:20px;flex:none}.auth-screen .auth-divider{margin:2px 0;color:#8994a5;font-size:.76rem}.auth-screen .auth-divider:before,.auth-screen .auth-divider:after{background:#dfe5ee}.auth-screen .auth-submit{height:52px;width:100%;display:flex;justify-content:center;align-items:center;gap:10px;border-radius:10px;background:var(--auth-blue);box-shadow:0 10px 18px rgba(43,89,255,.2)}.auth-screen .auth-submit:hover:not(:disabled){background:#204be8;transform:translateY(-1px)}.auth-screen .auth-submit span{font-size:1.2rem;line-height:1}.auth-screen .auth-form .msg{font-size:.87rem}.auth-switch{text-align:center;color:#68768d;font-size:.92rem;margin:23px 0 0}.auth-switch a{color:var(--auth-blue);font-weight:800;text-decoration:none}.auth-switch a:hover{text-decoration:underline}.auth-terms{text-align:center;color:#919bac;font-size:.75rem;line-height:1.5;margin:20px auto 0;max-width:39ch}@media(max-width:820px){.auth-header{padding:0 20px}.auth-layout{min-height:auto;display:block;padding:18px 20px 52px}.auth-pitch{display:none}.auth-card{padding:24px 0;max-width:490px}.auth-card h2{font-size:2.05rem}}@media(max-width:420px){.auth-header{height:66px}.auth-home{font-size:.82rem}.auth-layout{padding-top:8px}.auth-card h2{font-size:1.86rem}}
/* Dashboard workspace and billing */
.onboarding{max-width:1120px;margin:0 auto;padding:0 24px 64px}.onboarding .auth-header{max-width:none;padding:0;height:76px}.onboarding-copy{text-align:center;max-width:620px;margin:44px auto 36px}.onboarding-copy h1{font:800 clamp(2.4rem,5vw,4rem)/1.04 "Bricolage Grotesque",sans-serif;letter-spacing:-.05em;margin:10px 0 14px}.onboarding-copy p:last-child{color:#51607a;font-size:1.08rem}.onboarding-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch}.onboarding-plan{position:relative;background:#fff;border:1px solid #d5dce8;border-radius:18px;padding:27px;display:flex;flex-direction:column;min-height:390px;box-shadow:0 6px 16px rgba(15,27,45,.035)}.onboarding-plan.chosen{border:2px solid #2b59ff;box-shadow:0 14px 28px rgba(43,89,255,.13)}.onboarding-plan>span{position:absolute;right:18px;top:18px;background:#ffd84d;border-radius:99px;padding:3px 9px;font-size:.7rem;font-weight:800}.onboarding-plan h2{font:800 1.38rem "Bricolage Grotesque",sans-serif;margin:0}.onboarding-plan strong{font:800 2.75rem "Bricolage Grotesque",sans-serif;letter-spacing:-.05em;margin:14px 0 7px}.onboarding-plan strong small{font:500 .88rem "DM Sans",sans-serif;color:#51607a;letter-spacing:0}.onboarding-plan p{color:#51607a;min-height:48px;font-size:.92rem}.onboarding-plan ul{list-style:none;padding:0;margin:17px 0 24px;flex:1;color:#51607a;font-size:.88rem}.onboarding-plan li{padding:5px 0}.onboarding-plan li:before{content:'✓';color:#16915a;font-weight:800;margin-right:8px}.onboarding-plan .checkout-form{min-width:0}.onboarding-plan .btn{width:100%;display:block;text-align:center;text-decoration:none}.onboarding-foot{text-align:center;color:#51607a;font-size:.82rem;margin:23px 0 0}.onboarding-plans.compact{margin-top:34px}.onboarding-plans.compact .onboarding-plan{min-height:245px}@media(max-width:820px){.onboarding{padding:0 20px 48px}.onboarding-copy{margin:28px auto}.onboarding-plans{grid-template-columns:1fr}.onboarding-plan{min-height:auto}.onboarding-plan p{min-height:0}.onboarding-plan ul{margin-bottom:20px}}
.plan-contact{margin-top:auto;color:#2b59ff;font-weight:800;text-decoration:none;font-size:.88rem}
/* Plan selection: a focused final step rather than another dashboard panel. */
.onboarding-screen{background:#eef2f7;color:#0f1b2d;font-family:"DM Sans","Helvetica Neue",Arial,sans-serif;min-height:100vh}.onboarding-header{height:76px;max-width:1120px;padding:0 24px;margin:auto;display:flex;align-items:center;justify-content:space-between}.onboarding-header .logo{font:800 1.4rem "Bricolage Grotesque",sans-serif;color:#0f1b2d;text-decoration:none;letter-spacing:-.03em}.onboarding-header .logo span{display:inline-block;background:#ffd84d;border-radius:6px;padding:0 6px;margin-left:2px}.onboarding-header>div{display:flex;align-items:center;gap:16px;color:#71809a;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.onboarding-header .logout-form{margin:0}.onboarding-header .logout-form button{font:600 .86rem "DM Sans",sans-serif;color:#51607a;text-transform:none;letter-spacing:0;padding:6px 0}.onboarding{max-width:1120px;margin:0 auto;padding:28px 24px 64px}.onboarding-intro{text-align:center;max-width:690px;margin:0 auto 42px}.onboarding-progress{display:flex;justify-content:center;gap:7px;margin:0 0 21px}.onboarding-progress i{width:36px;height:5px;border-radius:5px;background:#d5dce8}.onboarding-progress i:first-child{background:#2b59ff}.onboarding-intro h1{font:800 clamp(2.6rem,5vw,4.25rem)/1.02 "Bricolage Grotesque",sans-serif;letter-spacing:-.06em;margin:11px 0 17px}.onboarding-intro>p:last-child{font-size:1.06rem;line-height:1.65;color:#51607a;margin:0 auto;max-width:58ch}.onboarding .eyebrow{color:#2b59ff;margin:0;font-weight:800}.onboarding-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:stretch}.onboarding-plan{position:relative;min-height:438px;background:#fff;border:1px solid #d5dce8;border-radius:18px;padding:29px 26px 25px;display:flex;flex-direction:column;box-shadow:0 5px 14px rgba(15,27,45,.035)}.onboarding-plan.chosen{border:2px solid #2b59ff;padding:28px 25px 24px;box-shadow:0 16px 32px rgba(43,89,255,.14);transform:translateY(-7px)}.onboarding-plan .popular{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:#ffd84d;color:#0f1b2d;border-radius:99px;padding:5px 12px;white-space:nowrap;font:800 .69rem "DM Sans",sans-serif;text-transform:uppercase;letter-spacing:.08em}.plan-top h2{font:800 1.5rem "Bricolage Grotesque",sans-serif;letter-spacing:-.035em;margin:0}.plan-top p{font-size:.9rem;line-height:1.5;color:#51607a;margin:9px 0 0;min-height:55px}.onboarding-plan strong{font:800 3.15rem/1 "Bricolage Grotesque",sans-serif;letter-spacing:-.065em;margin:23px 0 16px}.onboarding-plan strong small{font:500 .78rem "DM Sans",sans-serif;letter-spacing:0;color:#71809a}.plan-divider{height:1px;background:#e4e8ef}.onboarding-plan ul{list-style:none;padding:0;margin:18px 0 25px;flex:1;color:#34425b;font-size:.88rem;line-height:1.45}.onboarding-plan li{padding:6px 0}.onboarding-plan li:before{content:"";display:inline-block;width:10px;height:5px;border-left:2px solid #16915a;border-bottom:2px solid #16915a;transform:rotate(-45deg);margin:0 10px 3px 2px}.onboarding-plan .checkout-form{min-width:0}.onboarding-plan .btn{border-radius:10px;width:100%;padding:13px 12px;text-align:center;background:#2b59ff}.onboarding-plan:not(.chosen) .btn{background:#fff;color:#0f1b2d;border:1px solid #d5dce8}.onboarding-plan .btn b{font-size:1.15rem;margin-left:5px}.onboarding-trust{display:flex;justify-content:center;gap:25px;flex-wrap:wrap;color:#51607a;font-size:.79rem;margin-top:33px}.onboarding-trust span:first-child{color:#2b59ff;font-weight:700}@media(max-width:820px){.onboarding-header{height:66px;padding:0 20px}.onboarding-header>div>span{display:none}.onboarding{padding:22px 20px 48px}.onboarding-intro{margin-bottom:34px}.onboarding-intro h1{font-size:clamp(2.3rem,11vw,3.3rem)}.onboarding-plans{grid-template-columns:1fr;max-width:500px;margin:auto;gap:18px}.onboarding-plan,.onboarding-plan.chosen{min-height:auto;transform:none;padding:27px}.plan-top p{min-height:0}.onboarding-plan ul{margin-bottom:22px}.onboarding-trust{display:grid;gap:9px;text-align:center;margin-top:27px}}
.sidebar-plan{margin-top:auto;background:#eef2f7;border:1px solid #d5dce8;border-radius:12px;padding:14px}.sidebar-plan span{display:block;color:#51607a;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.sidebar-plan b{display:block;font-family:"Bricolage Grotesque",sans-serif;font-size:1.12rem;margin:4px 0 7px}.sidebar-plan a{color:#2b59ff;font-size:.8rem;font-weight:700;text-decoration:none}.app-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}.app-create{display:inline-flex;align-items:center;gap:9px;text-decoration:none;white-space:nowrap}.app-create span,.lifetime-card .btn span{font-size:1.25rem}.plan-card a{display:block;color:#2b59ff;font-size:.88rem;font-weight:700;text-decoration:none;margin-top:8px}.list-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px}.list-heading h2{margin:0}.list-heading p{margin:4px 0 0;color:#51607a;font-size:.88rem}.empty-state{padding:28px 0 6px}.empty-state b{font-family:"Bricolage Grotesque",sans-serif;font-size:1.35rem}.empty-state p{color:#51607a;max-width:42ch}.empty-state .btn{display:inline-block;text-decoration:none;margin-top:10px}.billing-page{max-width:960px}.billing-notice{background:#fff8db;border:1px solid #f1d56a;color:#624d00;border-radius:12px;padding:13px 16px;font-size:.92rem;margin-bottom:22px}.lifetime-card{margin-top:34px;background:#fff;border:2px solid #0f1b2d;border-radius:18px;padding:34px;box-shadow:10px 10px 0 #0f1b2d;display:flex;align-items:center;justify-content:space-between;gap:32px}.lifetime-card>div:first-child{max-width:500px}.lifetime-tag{display:inline-block;background:#ffd84d;border-radius:99px;padding:3px 10px;font-weight:800;font-size:.78rem}.lifetime-card h2{font-size:3.5rem;margin:10px 0 4px}.lifetime-card h2 small{font:500 1rem "DM Sans",sans-serif;color:#51607a}.lifetime-card p{color:#51607a}.lifetime-card ul{list-style:none;padding:0;margin:20px 0 0;color:#51607a}.lifetime-card li{padding:5px 0}.lifetime-card li:before{content:'✓';color:#16915a;font-weight:800;margin-right:9px}.checkout-form{min-width:220px}.checkout-form .btn{width:100%;display:flex;justify-content:center;align-items:center;gap:8px}.checkout-form p,.checkout-form small{display:block;text-align:center;font-size:.76rem;color:#51607a;margin:10px 0 0}.checkout-form .msg{color:#b42318;min-height:18px}.billing-active{background:#e7f6ee;color:#147248;border-radius:10px;padding:12px 16px;font-weight:800;white-space:nowrap}@media(max-width:820px){.app-heading,.lifetime-card{align-items:flex-start;flex-direction:column}.app-create{width:100%;justify-content:center}.lifetime-card{padding:26px;box-shadow:6px 6px 0 #0f1b2d}.checkout-form{width:100%}.list-heading{align-items:flex-start;flex-direction:column}}
/* App and auth pages share the landing page's surface, type and colour language. */
.auth-screen,.app-screen{background:#eef2f7;color:#0f1b2d;font-family:"DM Sans","Helvetica Neue",Arial,sans-serif}.auth-screen h1,.auth-screen h2,.app-screen h1,.app-screen h2,.app-screen h3{font-family:"Bricolage Grotesque","Helvetica Neue",Arial,sans-serif}.auth-header{max-width:1080px;padding:0 24px}.auth-header .logo{font:800 1.4rem "Bricolage Grotesque","Helvetica Neue",Arial,sans-serif;color:#0f1b2d}.auth-header .logo span{background:#ffd84d;color:#0f1b2d;padding:0 6px;border-radius:6px;margin-left:2px}.auth-home{color:#51607a;font-weight:500}.auth-layout{max-width:1080px;grid-template-columns:.93fr 1fr;gap:56px;padding-top:18px}.auth-pitch{min-height:585px;border:2px solid #0f1b2d;border-radius:24px;background:#fff;color:#0f1b2d;box-shadow:10px 10px 0 #0f1b2d;padding:46px 42px}.auth-pitch .eyebrow{color:#2b59ff}.auth-pitch h1{font-family:"Bricolage Grotesque","Helvetica Neue",Arial,sans-serif;font-weight:800;font-size:clamp(2.7rem,4.4vw,4rem)}.auth-pitch>div>p:not(.eyebrow){color:#51607a}.auth-preview{border:1px solid #d5dce8;background:#0f1b2d;color:#fff;box-shadow:none;transform:rotate(.6deg)}.auth-preview span,.auth-preview small{color:#c6d1e7}.auth-preview strong{font-family:"Bricolage Grotesque","Helvetica Neue",Arial,sans-serif}.auth-pitch ul{color:#51607a}.auth-pitch li:before{color:#16915a}.auth-card{background:#fff;border:1px solid #d5dce8;border-radius:20px;padding:38px;box-shadow:0 8px 22px rgba(15,27,45,.06)}.auth-card h2{font-family:"Bricolage Grotesque","Helvetica Neue",Arial,sans-serif;font-weight:800}.auth-card-head>p:last-child{color:#51607a}.auth-screen .auth-form label{color:#0f1b2d}.auth-screen .auth-form input{border-color:#d5dce8}.auth-screen .auth-form input:focus{border-color:#2b59ff;box-shadow:0 0 0 4px rgba(43,89,255,.1)}.auth-screen .google-button{border-color:#d5dce8;color:#0f1b2d}.auth-screen .auth-submit{background:#2b59ff;box-shadow:none}.auth-switch{color:#51607a}.auth-switch a{color:#2b59ff}.auth-terms{color:#708099}.app-shell{min-height:100vh;background:#eef2f7;color:#0f1b2d;font-family:"DM Sans","Helvetica Neue",Arial,sans-serif}.sidebar{width:250px;background:#fff;color:#0f1b2d;border-right:1px solid #d5dce8;padding:30px 18px;gap:40px}.sidebar .logo{font:800 1.4rem "Bricolage Grotesque","Helvetica Neue",Arial,sans-serif;color:#0f1b2d;padding:0 10px}.sidebar .logo span{background:#ffd84d;color:#0f1b2d;padding:0 6px;border-radius:6px;margin-left:2px}.sidebar nav{gap:4px}.sidebar nav a{color:#51607a;border-radius:10px;font-weight:600;padding:11px 12px}.sidebar nav a:hover{background:#eef2f7;color:#0f1b2d}.sidebar nav a.active{background:#e7edff;color:#2b59ff}.logout-form button{color:#51607a;font-weight:600}.logout-form button:hover{color:#0f1b2d}.app-main{padding:54px 56px;max-width:1160px}.app-main .eyebrow{color:#2b59ff}.app-main h1{font-family:"Bricolage Grotesque","Helvetica Neue",Arial,sans-serif;font-size:clamp(2.4rem,4vw,3.5rem);font-weight:800;letter-spacing:-.04em}.app-main .lead{color:#51607a}.app-cards{gap:18px;margin:36px 0}.app-cards article,.dashboard-list{background:#fff;border:1px solid #d5dce8;border-radius:16px;padding:24px;box-shadow:0 6px 16px rgba(15,27,45,.035)}.app-cards small{color:#51607a;font-weight:600}.app-cards b{font-family:"Bricolage Grotesque","Helvetica Neue",Arial,sans-serif;color:#0f1b2d;font-size:2.2rem}.app-cards p{color:#51607a;font-size:.92rem}.dashboard-list h2{font-family:"Bricolage Grotesque","Helvetica Neue",Arial,sans-serif;font-size:1.45rem}.dashboard-list a{color:#2b59ff;font-weight:700;text-decoration:none}th{color:#51607a}th,td{border-color:#e6eaf0}@media(max-width:820px){.auth-card{padding:30px 24px}.sidebar{width:auto;border-right:0;border-bottom:1px solid #d5dce8}.app-main{padding:34px 20px}.app-cards{grid-template-columns:1fr}.sidebar .logo{padding:0}.sidebar nav a{padding:9px 10px}} 
