@import url("https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:ital,wght@0,400;0,700;1,400&display=swap");:root{--paper:#fafaf7;--ink:#232b27;--muted:#5b6660;--pine:#2e6b4e;--pine-dark:#245640;--pine-soft:#e7efe9;--line:#d9dfda;--danger:#a63a2b;--danger-soft:#f6e9e6;--radius:8px}*{box-sizing:border-box}html{font-size:17px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Atkinson Hyperlegible,system-ui,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--pine)}.shell{max-width:640px;margin:0 auto;padding:0 20px 96px}.topbar{display:flex;align-items:center;justify-content:space-between;padding:20px 0 16px;margin-bottom:8px;border-bottom:1px solid var(--line)}.wordmark{font-weight:700;font-size:1.15rem;letter-spacing:.01em;text-decoration:none;color:var(--ink)}.wordmark span{color:var(--pine)}.topbar button{background:none;border:none;color:var(--muted);font:inherit;cursor:pointer;padding:8px}.topbar button:hover{color:var(--ink)}h1{font-size:1.7rem;line-height:1.25;margin:28px 0 8px}h2{font-size:1.15rem;margin:32px 0 8px}.lede{color:var(--muted);margin:0 0 24px;max-width:56ch}.hero{background:var(--pine-soft);border-radius:12px;padding:24px;margin:24px 0 8px}.hero h1{margin:0 0 4px}.hero .lede{margin-bottom:16px}.hero .btn{margin-top:8px}.groupTitle{margin:36px 0 4px;font-size:.95rem;color:var(--muted);font-weight:700}.groupSub{margin:0 0 8px;font-size:.9rem;color:var(--muted)}.sectionList{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.sectionList li{border-bottom:1px solid var(--line)}.sectionList a{display:flex;align-items:center;gap:14px;padding:15px 4px;text-decoration:none;color:var(--ink);min-height:56px}.sectionList a:hover{background:var(--pine-soft)}.dot{width:22px;height:22px;border-radius:50%;flex-shrink:0;border:2px solid var(--line);display:grid;place-items:center;font-size:13px;color:#fff}.dot.done,.dot.started{border-color:var(--pine)}.dot.done{background:var(--pine)}.sectionName{flex:1 1}.sectionMeta{color:var(--muted);font-size:.85rem}.progressWrap{margin:4px 0}.progressBar{height:8px;background:rgba(46,107,78,.18);border-radius:4px;overflow:hidden}.progressBar>div{height:100%;background:var(--pine);border-radius:4px;transition:width .4s ease}.progressLabel{font-size:.9rem;color:var(--muted);margin-top:6px}.field{margin:26px 0}.field>label,.fieldLabel{display:block;font-weight:700;margin-bottom:6px}.hint{color:var(--muted);font-size:.9rem;margin:-2px 0 8px}.req{color:var(--danger);margin-left:3px}input[type=date],input[type=email],input[type=password],input[type=tel],input[type=text],input[type=time],select,textarea{width:100%;font:inherit;color:var(--ink);background:#fff;border:1.5px solid var(--line);border-radius:var(--radius);padding:12px 14px;min-height:48px}textarea{min-height:110px;resize:vertical}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--pine);outline-offset:1px}.chips{display:flex;flex-wrap:wrap;gap:10px}.chip{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--line);border-radius:999px;padding:10px 18px;background:#fff;cursor:pointer;font:inherit;min-height:48px;color:var(--ink)}.chip input{position:absolute;opacity:0;pointer-events:none}.chip.on{border-color:var(--pine);background:var(--pine-soft);font-weight:700}.matrixRow{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.matrixRow:last-child{border-bottom:none}@media (max-width:520px){.matrixRow{grid-template-columns:1fr;gap:4px}}.repeatCard{border:1.5px solid var(--line);border-radius:var(--radius);padding:4px 18px 14px;margin:14px 0;background:#fff}.repeatHead{display:flex;justify-content:space-between;align-items:center}.repeatHead h3{font-size:1rem;margin:14px 0 0}.btn{display:inline-flex;align-items:center;justify-content:center;font:inherit;font-weight:700;background:var(--pine);color:#fff;border:none;border-radius:var(--radius);padding:14px 24px;min-height:52px;cursor:pointer;text-decoration:none}.btn:hover{background:var(--pine-dark)}.btn:disabled{background:var(--line);color:var(--muted);cursor:not-allowed}.btnQuiet{background:none;border:1.5px solid var(--line);color:var(--ink);font:inherit;border-radius:var(--radius);padding:12px 20px;min-height:48px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.btnQuiet:hover{border-color:var(--pine);color:var(--pine)}.btnRow{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px}.idBtn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:54px;margin:10px 0;font:inherit;font-weight:700;background:#fff;color:var(--ink);border:1.5px solid var(--line);border-radius:var(--radius);cursor:pointer}.idBtn:hover{border-color:var(--pine)}.divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.9rem;margin:18px 0}.divider:after,.divider:before{content:"";flex:1 1;border-top:1px solid var(--line)}.saveBar{position:fixed;bottom:0;left:0;right:0;background:rgba(250,250,247,.95);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.saveBarInner{max-width:640px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px}.saveState{font-size:.9rem;color:var(--muted)}.saveState.saved{color:var(--pine)}.note{background:var(--pine-soft);border-radius:var(--radius)}.banner,.note{padding:14px 18px;margin:20px 0}.banner{border:1.5px solid var(--line);border-left:4px solid var(--pine);background:#fff}.banner,.error{border-radius:var(--radius)}.error{background:var(--danger-soft);color:var(--danger);padding:12px 16px;margin:14px 0}.consent{border-bottom:1px solid var(--line);padding:20px 0}.consent h3{margin:0 0 4px;font-size:1.05rem}.consent p{margin:0 0 12px;color:var(--muted)}.lockedBanner{background:var(--pine-soft);border-radius:var(--radius);padding:16px 20px;margin:20px 0}[data-readonly=true] input,[data-readonly=true] select,[data-readonly=true] textarea{background:var(--paper);pointer-events:none}[data-readonly=true] .chip{pointer-events:none;opacity:.75}[data-readonly=true] .chip.on{opacity:1}.authWrap{min-height:100dvh;display:grid;place-items:center;padding:24px}.authCard{width:100%;max-width:440px}.authCard h1{margin-top:12px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}