:root{--pink:#f4b8c5;--sage:#b8d4c8;--lavender:#c5b8e0;--cream:#f7f2ea;--text:#352f44;--heading:#4b3869;--white:#fff;--border:#e4d9e8;--shadow:0 10px 30px #4b386914;--radius:18px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--cream);color:var(--text);-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,sans-serif;font-size:18px;line-height:1.65}h1,h2,h3{color:var(--heading);margin:0 0 .5em;font-family:Lora,Georgia,serif;line-height:1.25}h1{font-size:2.6rem}h2{font-size:1.9rem}h3{font-size:1.3rem}p{margin:0 0 1em}a{color:inherit}.tm{vertical-align:super;font-size:.5em}.app-shell{flex-direction:column;min-height:100vh;display:flex}main{flex:1}.navbar{background:var(--white);border-bottom:1px solid var(--border);z-index:10;position:sticky;top:0}.navbar-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;max-width:1100px;margin:0 auto;padding:1rem 1.5rem;display:flex}.brand{color:var(--heading);letter-spacing:.02em;font-family:Lora,serif;font-size:1.15rem;font-weight:700;text-decoration:none}.nav-links{flex-wrap:wrap;align-items:center;gap:1.5rem;display:flex}.nav-links a{color:var(--text);font-weight:500;text-decoration:none}.nav-links a.active{color:var(--heading);font-weight:700}.btn{cursor:pointer;border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-family:inherit;font-size:1rem;font-weight:600;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-flex}.btn:focus-visible{outline:3px solid var(--heading);outline-offset:2px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--pink);color:var(--heading)}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow);transform:translateY(-1px)}.btn-outline{border-color:var(--heading);color:var(--heading);background:0 0}.btn-ghost{background:var(--white);color:var(--heading);border-color:var(--border)}.btn-small{padding:.5rem 1.1rem;font-size:.9rem}.btn-large{padding:1rem 2rem;font-size:1.1rem}.btn-block{width:100%}.card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--border);padding:2rem}.hero{background:linear-gradient(135deg, var(--pink) 0%, var(--lavender) 100%);text-align:center;padding:5rem 1.5rem}.hero-inner{max-width:760px;margin:0 auto}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--heading);font-size:.85rem;font-weight:700}.hero h1{margin-bottom:.4em;font-size:3rem}.tagline{color:var(--heading);font-family:Lora,serif;font-size:1.4rem;font-weight:600}.hero-sub{max-width:560px;margin:1rem auto 2rem;font-size:1.1rem}.hero-actions{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.section-inner{max-width:1100px;margin:0 auto;padding:4rem 1.5rem}.section-lead{color:#5b5370;max-width:600px}.benefits .section-inner{grid-template-columns:repeat(3,1fr);gap:1.5rem;padding-top:3.5rem;display:grid}.benefit-card{border-top:6px solid var(--border)}.swatch-pink{border-top-color:var(--pink)}.swatch-sage{border-top-color:var(--sage)}.swatch-lavender{border-top-color:var(--lavender)}.how-it-works{background:var(--white)}.stage-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;margin:2.5rem 0;display:grid}.stage-card{background:var(--cream);border-radius:var(--radius);padding:1.5rem}.stage-num{color:var(--pink);font-family:Lora,serif;font-size:1.5rem;font-weight:700}.how-it-works-cta{text-align:center;margin-top:1rem}.auth-page{max-width:480px;margin:3rem auto;padding:0 1.5rem}.auth-sub{color:#5b5370}.auth-form label,.field-group label{margin-bottom:.4rem;font-weight:600;display:block}.auth-form input,.field-group input,.field-group select,.field-group textarea{border:2px solid var(--border);background:var(--cream);border-radius:12px;width:100%;margin-bottom:1.2rem;padding:.85rem 1rem;font-family:inherit;font-size:1rem}.auth-form input:focus,.field-group input:focus,.field-group select:focus,.field-group textarea:focus{border-color:var(--lavender);background:var(--white);outline:none}.field-error{color:#a23e48;margin-top:-.9rem;margin-bottom:1rem;font-weight:600}.password-field{position:relative}.password-field input{padding-right:3.2rem}.password-toggle{cursor:pointer;color:#716a85;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;margin-top:-.6rem;padding:.4rem;display:flex;position:absolute;top:50%;right:.6rem;transform:translateY(-50%)}.password-toggle:hover{color:var(--heading)}.password-toggle:focus-visible{outline:3px solid var(--heading);outline-offset:2px}.password-hint{color:#716a85;margin-top:-.9rem;margin-bottom:.75rem;font-size:.88rem}.password-checklist{background:var(--cream);border-radius:12px;flex-direction:column;gap:.35rem;margin:0 0 1.2rem;padding:.85rem 1rem;list-style:none;display:flex}.password-checklist li{color:#716a85;font-size:.9rem}.password-checklist li.met{color:#3c7a5c;font-weight:600}.auth-legal{color:#716a85;font-size:.85rem}.auth-sent h2{margin-top:0}.auth-alt{border-top:1px solid var(--border);text-align:center;margin-top:2rem;padding-top:1.5rem}.link-button{color:var(--heading);cursor:pointer;background:0 0;border:none;margin:0;padding:0;font-family:inherit;font-size:1rem;font-weight:700;text-decoration:underline}.link-button:focus-visible{outline:3px solid var(--heading);outline-offset:2px}.auth-links-row{justify-content:flex-end;margin:-.6rem 0 1.2rem;display:flex}.auth-switch{text-align:center;margin-top:1rem;font-size:.95rem}.notice-banner{background:var(--sage);color:var(--heading);border-radius:12px;margin:1.2rem 0;padding:1rem 1.25rem;font-size:.95rem}.notice-banner.small{padding:.85rem 1.1rem;font-size:.9rem}.assessment-page{max-width:760px;margin:0 auto;padding:3rem 1.5rem}.assessment-header,.progress-wrap{margin-bottom:1.5rem}.progress-track{background:var(--border);border-radius:999px;height:12px;overflow:hidden}.progress-fill{background:var(--pink);height:100%;transition:width .3s}.progress-label{color:#5b5370;margin-top:.5rem;font-size:.9rem}.step-intro{color:#5b5370}.field-stack{flex-direction:column;display:flex}.assessment-nav{flex-wrap:wrap;justify-content:space-between;gap:.75rem;margin-top:1rem;display:flex}.save-confirmation{color:#3c7a5c;font-weight:600}.step-dots{justify-content:center;gap:.5rem;margin-top:1.5rem;display:flex}.dot{background:var(--border);border-radius:50%;width:10px;height:10px}.dot.active{background:var(--pink)}.dot.done{background:var(--lavender)}.complete-card{text-align:center}.complete-actions{margin-top:1.5rem}.profile-page{flex-direction:column;gap:1.5rem;max-width:900px;margin:0 auto;padding:3rem 1.5rem;display:flex}.profile-page .card{margin:0}.profile-page .card+.card{margin-top:0}.profile-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.fact-list{grid-template-columns:auto 1fr;gap:.35rem 1rem;margin:0;display:grid}.fact-list dt{color:var(--heading);font-weight:700}.fact-list dd{margin:0}.direction-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem;margin-top:1rem;display:grid}.direction-card{background:var(--cream);border-radius:12px;padding:1.1rem 1.25rem}.direction-card h3{margin-bottom:.3rem;font-size:1.05rem}.directions-card{grid-column:1/-1}.strength-list{margin:0;padding-left:1.2rem}.strength-list li{margin-bottom:.4rem}.checkbox-row{align-items:flex-start;gap:.6rem;margin-bottom:.75rem;font-weight:500!important;display:flex!important}.checkbox-row input{flex-shrink:0;width:auto;margin:.2rem 0 0}.report-preview{background:var(--cream)}.report-section{border-top:1px dashed var(--border);margin-top:1rem;padding-top:1rem}.report-section:first-of-type{border-top:none;margin-top:.5rem}.report-section h3{font-size:1.05rem}.tag-label{text-transform:uppercase;letter-spacing:.08em;color:#5b5370;background:var(--cream);border:1px solid var(--border);border-radius:999px;margin-bottom:.5rem;padding:.2rem .7rem;font-size:.75rem;font-weight:700;display:inline-block}.tag-label.synthesis{background:var(--sage);color:var(--heading);border-color:#0000}.tag-label.reference{background:var(--lavender);color:var(--heading);border-color:#0000}.opportunity-list{flex-direction:column;gap:1.5rem;margin:1.5rem 0;display:flex}.opportunity-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.selected-pill{background:var(--pink);color:var(--heading);white-space:nowrap;border-radius:999px;padding:.3rem .9rem;font-size:.85rem;font-weight:700}.opportunity-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;margin:1.5rem 0;display:grid}.opportunity-grid h3{margin-bottom:.3rem;font-size:1.05rem}.source-note{color:#716a85;margin-top:-.5rem;font-size:.85rem}.risk-steps-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:1.5rem;display:grid}.steps-list{margin:0;padding-left:1.2rem}.steps-list li{margin-bottom:.4rem}.notice-banner.caution{background:var(--pink)}.notice-banner.caution ul{margin:.5rem 0 0;padding-left:1.2rem}.compare-table-wrap{overflow-x:auto}.compare-table{border-collapse:collapse;width:100%;margin-top:1rem}.compare-table th,.compare-table td{text-align:left;border-bottom:1px solid var(--border);padding:.75rem 1rem}.compare-table th{color:var(--heading);font-family:Lora,serif}.profile-meta{color:#716a85;font-size:.9rem}.plan-overview,.phase-card{margin-bottom:1.5rem}.phase-range{color:#716a85;font-size:1rem;font-weight:400}.phase-pill{background:var(--lavender)}.recalc-panel{border:2px solid var(--lavender);margin-bottom:1.5rem}.recalc-preview{margin-top:1rem}.task-list{flex-direction:column;gap:.75rem;margin:0 0 1.25rem;padding:0;list-style:none;display:flex}.task-row{background:var(--cream);border:1px solid var(--border);border-radius:12px;padding:1rem 1.1rem}.task-row.task-complete{background:#eff6f1}.task-row-main{align-items:flex-start;gap:.9rem;display:flex}.task-check{border:2px solid var(--heading);background:var(--white);width:32px;height:32px;color:var(--heading);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.task-check.checked{background:var(--sage);border-color:var(--sage);color:var(--heading)}.task-row-body{flex:1}.task-title{margin:0 0 .2rem;font-weight:600}.task-desc{color:#5b5370;margin:0 0 .2rem}.task-due{color:#716a85;margin:0;font-size:.88rem}.task-row-actions{flex-shrink:0;gap:.5rem;display:flex}.task-edit-form{flex-direction:column;display:flex}.task-edit-form .field-group{margin-bottom:.8rem}.task-edit-form input,.task-edit-form textarea{margin-bottom:0}.task-outcome{border-top:1px dashed var(--border);margin-top:.75rem;padding-top:.75rem}.task-outcome label{margin-bottom:.3rem;font-size:.9rem;font-weight:600;display:block}.task-outcome textarea{border:2px solid var(--border);border-radius:10px;width:100%;padding:.6rem .8rem;font-family:inherit}.add-task-form{background:var(--cream);border-radius:12px;margin-top:.5rem;padding:1rem}.tool-switcher{flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem;display:flex}.pipeline-stats{flex-wrap:wrap;gap:1rem;margin:1rem 0;display:flex}.pipeline-stat{background:var(--cream);text-align:center;border-radius:12px;min-width:110px;padding:.75rem 1rem}.pipeline-stat-count{color:var(--heading);font-family:Lora,serif;font-size:1.6rem;font-weight:700;display:block}.pipeline-stat-label{color:#716a85;font-size:.8rem;display:block}.customer-list,.proposal-list{flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.customer-row,.proposal-row{border:1px solid var(--border);background:var(--cream);border-radius:12px;padding:1rem 1.1rem}.customer-row-head{margin-bottom:.3rem}.customer-row-actions,.proposal-row-actions{flex-wrap:wrap;gap:.6rem;margin-top:.6rem;display:flex}.customer-row-actions select,.proposal-row select{border:2px solid var(--border);border-radius:10px;padding:.5rem .8rem;font-family:inherit}.stat-grid{grid-template-columns:repeat(4,1fr);gap:1rem;margin:1rem 0;display:grid}.stat-box{background:var(--cream);text-align:center;border-radius:12px;padding:1.1rem 1rem}.stat-number{color:var(--heading);font-family:Lora,serif;font-size:2rem;font-weight:700;display:block}.stat-label{color:#716a85;margin-top:.3rem;font-size:.85rem;display:block}.finance-bars{flex-direction:column;gap:.9rem;margin:1rem 0;display:flex}.finance-bar-row{grid-template-columns:140px 1fr 110px;align-items:center;gap:.75rem;display:grid}.finance-bar-label{font-size:.92rem;font-weight:600}.finance-bar-track{background:var(--border);border-radius:999px;height:16px;overflow:hidden}.finance-bar-fill{border-radius:999px;height:100%}.fill-actual{background:var(--sage)}.fill-estimated{background:var(--lavender)}.fill-expense{background:var(--pink)}.finance-bar-value{text-align:right;font-weight:700}.net-income-line{margin-top:.5rem;font-size:1.05rem}.goal-form{flex-wrap:wrap;align-items:flex-end;gap:1rem;display:flex}.goal-field{flex:1;min-width:180px;margin-bottom:0}.goal-field input{margin-bottom:0}.finance-entry-list{flex-direction:column;gap:.75rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.finance-entry-row{background:var(--cream);border:1px solid var(--border);border-radius:12px;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;display:flex}.export-grid{flex-wrap:wrap;gap:.75rem;display:flex}.site-footer{background:var(--white);border-top:1px solid var(--border);text-align:center;color:#5b5370;padding:1.5rem;font-size:.9rem}.footer-fine{color:#8a8298;margin-top:.5rem;font-size:.8rem}@media (width<=820px){.benefits .section-inner,.stage-grid{grid-template-columns:1fr}.hero h1{font-size:2.2rem}.navbar-inner{flex-direction:column;align-items:flex-start}.stat-grid{grid-template-columns:repeat(2,1fr)}.finance-bar-row{text-align:left;grid-template-columns:1fr}.finance-bar-value{text-align:left}.profile-grid,.direction-grid,.opportunity-grid,.risk-steps-grid,.fact-list{grid-template-columns:1fr}}
