:root{--cream: #faf5ec;--paper: #fffdf8;--ink: #2e2118;--muted: #7a6a58;--green: #1e4d3b;--green-dark: #143527;--brown: #8a5a33;--brown-light: #c89b6d;--line: #e7dcc8;--warn-bg: #fdf0e3;--warn-ink: #8a4d16;--radius: 16px}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}.page{max-width:560px;margin:0 auto;padding:20px 16px 48px;display:flex;flex-direction:column;gap:16px}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:24px 20px;box-shadow:0 2px 10px #2e21180d}.hero{text-align:center;padding:40px 24px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--brown);margin:0 0 8px;font-weight:700}h1{font-size:34px;margin:0 0 12px;color:var(--green-dark)}h2{font-size:22px;margin:0 0 8px;line-height:1.3}h3{font-size:20px;margin:0 0 12px;color:var(--green-dark)}h4{font-size:16px;margin:20px 0 8px;color:var(--green-dark)}.promise{font-size:17px;line-height:1.55;color:var(--ink);margin:0 0 24px}.subtext{color:var(--muted);margin:0 0 16px;line-height:1.5}.fineprint{color:var(--muted);font-size:13px;line-height:1.5}.fineprint.center{text-align:center;margin:0}.btn{font:inherit;font-weight:600;border-radius:999px;border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:12px 22px;min-height:48px;cursor:pointer}.btn.primary{background:var(--green);border-color:var(--green);color:#fff}.btn.primary:active{background:var(--green-dark)}.btn.ghost{background:transparent}.btn.big{font-size:17px;padding:14px 30px;width:100%}.progress-wrap{display:flex;flex-direction:column;gap:6px}.progress-meta{display:flex;justify-content:space-between;font-size:13px;color:var(--muted);font-weight:600}.progress-bar{height:8px;background:var(--line);border-radius:999px;overflow:hidden}.progress-bar>div{height:100%;background:var(--green);border-radius:999px;transition:width .25s ease}.chip-grid{display:flex;flex-direction:column;gap:10px}.chip{font:inherit;text-align:left;padding:14px 16px;min-height:52px;border-radius:12px;border:2px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;line-height:1.4}.chip.big{text-align:center;font-size:17px;font-weight:600}.chip.selected{border-color:var(--green);background:#eef4ef;font-weight:600}.scale-row{display:flex;gap:8px}.scale-btn{flex:1;font:inherit;font-size:17px;font-weight:600;min-height:52px;border-radius:12px;border:2px solid var(--line);background:var(--paper);cursor:pointer}.scale-btn.selected{border-color:var(--green);background:var(--green);color:#fff}.scale-labels{display:flex;justify-content:space-between;gap:16px;margin-top:10px;font-size:12.5px;color:var(--muted);line-height:1.4}.scale-labels span:last-child{text-align:right}.rank-list{display:flex;flex-direction:column;gap:10px;margin-top:10px}.rank-row{display:flex;gap:8px;align-items:stretch}.rank-main{flex:1;font:inherit;text-align:left;display:flex;align-items:center;gap:12px;padding:12px 14px;min-height:52px;border-radius:12px;border:2px solid var(--line);background:var(--paper);cursor:pointer;line-height:1.35}.rank-main.selected{border-color:var(--green);background:#eef4ef;font-weight:600}.rank-badge{flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:var(--brown-light);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.rank-main.selected .rank-badge{background:var(--green)}.nfm-btn{font:inherit;font-size:13px;padding:0 12px;border-radius:12px;border:2px dashed var(--line);background:transparent;color:var(--muted);cursor:pointer;white-space:nowrap}.nfm-btn.selected{border-color:var(--brown);border-style:solid;color:var(--brown);background:var(--warn-bg);font-weight:600}.rank-row.nfm .rank-main{opacity:.45}.days-grid{display:flex;flex-wrap:wrap;gap:10px}.day-cell{flex:1 1 22%;display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--muted)}.day-cell input{font:inherit;font-size:18px;text-align:center;padding:10px 4px;border-radius:12px;border:2px solid var(--line);background:var(--paper);color:var(--ink);width:100%}.day-cell input:focus{border-color:var(--green);outline:none}.nav-row{display:flex;justify-content:space-between;gap:12px}.nav-row .btn{min-width:120px}.persona-card{text-align:center}.portrait{width:190px;max-width:62vw;height:auto;border-radius:14px;border:1px solid var(--line);background:#fff}.persona-card h2{font-size:27px;color:var(--green-dark);margin-top:14px}.blurb{line-height:1.6;margin:0}.setup-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.setup-item{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:12px 0;border-bottom:1px solid var(--line)}.setup-item:last-child{border-bottom:none}.setup-item strong{display:block;line-height:1.35}.setup-cat{display:block;font-size:13px;color:var(--muted);margin-top:2px}.setup-price{font-weight:700;color:var(--green-dark);white-space:nowrap}.setup-item.later{opacity:.75}.total{font-size:17px;font-weight:700;color:var(--green-dark);margin:14px 0 0}.warn{background:var(--warn-bg);color:var(--warn-ink);border-radius:12px;padding:12px 14px;line-height:1.5;font-size:14.5px}@media (max-width: 380px){.scale-row{gap:5px}.scale-btn{font-size:15px;min-height:46px}}
