:root{color-scheme:light dark;--paper: #f3ebdd;--sheet: #fff9ee;--ink: #18201d;--muted: #59635e;--accent: #ad3825;--accent-ink: #fffaf2;--moss: #285e4d;--ochre: #86610c;--danger: #852f49;--rule: #c9bdaa;--shadow: rgba(32, 28, 21, .16);--serif: Georgia, "Iowan Old Style", "Times New Roman", serif;--sans: Aptos, "Segoe UI", system-ui, sans-serif;font-family:var(--sans);color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;font-size:16px;line-height:1.55;background:var(--paper);color:var(--ink)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;opacity:.14;pointer-events:none;z-index:-1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.25'/%3E%3C/svg%3E")}button,input{font:inherit}button,a,input,summary,label.button{-webkit-tap-highlight-color:transparent}a{color:inherit;text-underline-offset:4px}button{color:inherit}:focus-visible{outline:3px solid #b57900;outline-offset:3px}.skip-link{position:fixed;top:8px;left:8px;transform:translateY(-160%);z-index:100;padding:10px 16px;background:var(--ink);color:var(--paper)}.skip-link:focus{transform:translateY(0)}.site-header{max-width:1440px;margin:0 auto;padding:20px clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;gap:20px}.wordmark{display:inline-flex;gap:11px;align-items:center;font:700 17px var(--serif);text-decoration:none}.wordmark-mark{width:27px;height:27px;border:2px solid currentColor;border-radius:50%;position:relative}.wordmark-mark:after{content:"";position:absolute;width:13px;height:8px;background:var(--accent);top:-5px;right:-8px;clip-path:polygon(0 0,100% 18%,62% 100%,0 79%)}.site-header nav{display:flex;gap:8px}.nav-button,.text-button{min-height:44px;border:0;background:transparent;cursor:pointer;padding:8px 12px;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:5px}.nav-button:hover,.text-button:hover{text-decoration-color:currentColor}.hero{max-width:1440px;margin:0 auto;padding:clamp(32px,6vw,88px) clamp(20px,5vw,72px) clamp(60px,8vw,112px);display:grid;grid-template-columns:minmax(0,.86fr) minmax(420px,1.14fr);gap:clamp(32px,6vw,96px);align-items:center}.hero-copy{max-width:660px;position:relative;z-index:1}.eyebrow,.kicker{margin:0 0 16px;color:var(--accent);font-size:.78rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.eyebrow span{font-size:.7em;padding-right:8px}h1,h2,h3,p{margin-top:0}h1{font:500 clamp(2.75rem,5.6vw,5.3rem)/.96 var(--serif);letter-spacing:-.052em;margin-bottom:26px;text-wrap:balance}h1 em{color:var(--accent);font-weight:500}.lede{max-width:61ch;font-size:clamp(1.05rem,1.6vw,1.22rem);line-height:1.62;color:var(--muted)}.trust-list{display:flex;flex-wrap:wrap;gap:10px 24px;padding:0;margin:30px 0 0;list-style:none;font-size:.88rem;font-weight:700}.trust-list li:before{content:"✓";color:var(--moss);margin-right:7px}.hero-art{margin:0;position:relative;transform:rotate(1.3deg);animation:settle .42s ease-out both}.hero-art:before{content:"";position:absolute;top:4%;right:-2%;bottom:-4%;left:4%;background:var(--ink);z-index:-1;clip-path:polygon(3% 0,100% 4%,97% 100%,0 95%);opacity:.88}.hero-art img{display:block;width:100%;height:auto;aspect-ratio:3 / 2;object-fit:cover;clip-path:polygon(2% 2%,99% 0,100% 96%,3% 100%,0 48%)}.hero-art figcaption{position:absolute;right:-12px;bottom:-18px;max-width:220px;padding:10px 14px;background:var(--sheet);box-shadow:2px 3px 0 var(--accent);font:italic .84rem/1.3 var(--serif);transform:rotate(-2deg)}.planner-shell{max-width:1240px;margin:0 auto;padding:clamp(28px,5vw,64px);background:var(--sheet);box-shadow:0 24px 70px var(--shadow);position:relative}.planner-shell:before{content:"";position:absolute;left:22px;right:22px;top:12px;border-top:1px dashed var(--rule)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;border-bottom:1px solid var(--rule);padding-bottom:24px}.section-heading h2,.method h2{margin-bottom:0;font:500 clamp(2rem,3.6vw,3.2rem)/1.05 var(--serif);letter-spacing:-.03em}.saved-state{margin:0;color:var(--muted);font-size:.86rem}.saved-state:before{content:"●";color:var(--moss);padding-right:7px}.route-steps{margin:30px 0 12px;display:flex;align-items:center;color:var(--muted);font-size:.77rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.route-steps span.active{color:var(--accent)}.route-steps i{flex:1;border-top:1px dashed var(--rule);margin:0 12px}.form-section{min-width:0;margin:0;padding:32px 0;border:0;border-bottom:1px solid var(--rule)}.form-section legend{width:100%;padding:0;font:600 clamp(1.3rem,2vw,1.65rem) var(--serif)}.form-section legend>span{display:inline-grid;place-items:center;width:30px;height:30px;border:1px solid var(--ink);border-radius:50%;margin-right:10px;font:700 .8rem var(--sans)}.field-help{margin:12px 0 20px;max-width:76ch;color:var(--muted)}code{background:color-mix(in srgb,var(--rule) 35%,transparent);padding:1px 5px}.import-zone{min-height:78px;border:1px dashed var(--rule);padding:16px;display:flex;align-items:center;gap:16px;margin:20px 0 24px;background:color-mix(in srgb,var(--paper) 45%,transparent)}.import-zone>span{color:var(--muted);font-size:.88rem}#deck-file:focus-visible+.button{outline:3px solid #b57900;outline-offset:3px}.loading-state{min-height:260px;display:grid;place-items:center;color:var(--muted)}.button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:10px 18px;border:1px solid var(--ink);border-radius:2px;background:transparent;color:var(--ink);text-decoration:none;cursor:pointer;font-weight:800;box-shadow:3px 3px 0 transparent;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}.button:hover{transform:translate(-2px,-2px);box-shadow:3px 3px 0 var(--ink)}.button:active{transform:translate(0);box-shadow:none}.button.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.button.primary:hover{box-shadow:3px 3px 0 var(--ink)}.button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}.button.full{width:100%;margin:10px 0}.field-grid{display:grid;gap:20px}.field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid.three{grid-template-columns:1.3fr repeat(2,minmax(0,.7fr))}.field-grid.four{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:20px}label>span:first-child,.sheet-dialog label>span{display:block;margin-bottom:7px;font-size:.84rem;font-weight:800}input:not([type=radio]):not([type=checkbox]){width:100%;min-height:48px;border:1px solid var(--rule);border-radius:2px;padding:10px 12px;background:var(--sheet);color:var(--ink)}input:hover{border-color:var(--muted)}.input-suffix{display:grid;grid-template-columns:1fr auto;align-items:center}.input-suffix input{grid-area:1 / 1 / 2 / 3;padding-right:50px!important}.input-suffix b{grid-area:1 / 2;padding-right:12px;color:var(--muted)}.pace-options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px}.pace-option{min-height:84px;border:1px solid var(--rule);padding:14px;display:flex;align-items:start;gap:10px;cursor:pointer}.pace-option:has(input:checked){border-color:var(--accent);box-shadow:inset 0 -3px var(--accent)}.pace-option input{margin:5px 0 0;accent-color:var(--accent)}.pace-option b,.pace-option small{display:block}.pace-option small{margin-top:4px;color:var(--muted)}.pace-option.locked{opacity:.62;cursor:not-allowed}.plus-note{margin:12px 0 0;font-size:.84rem;color:var(--muted)}.plus-note span{background:var(--ink);color:var(--sheet);padding:3px 7px;margin-right:6px;font-weight:800}details{margin-top:22px}summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-weight:800}summary span{margin-left:auto;color:var(--muted);font-size:.82rem;font-weight:500}.form-action{padding-top:28px;display:flex;justify-content:space-between;align-items:center;gap:24px}.form-action strong,.form-action span{display:block}.form-action>div span{color:var(--muted);font-size:.88rem}.form-errors{margin-top:20px;padding:16px 20px;border-left:4px solid var(--danger);background:color-mix(in srgb,var(--danger) 8%,transparent)}.form-errors ul{margin-bottom:0}.plan-view{padding-top:24px}.plan-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px}.plan-summary{margin:22px 0;padding:clamp(20px,4vw,38px);background:var(--ink);color:var(--sheet);display:flex;align-items:center;justify-content:space-between;gap:28px;position:relative;overflow:hidden}.plan-summary:after{content:"";position:absolute;width:280px;height:280px;border:1px solid color-mix(in srgb,var(--sheet) 28%,transparent);border-radius:50%;right:-70px;top:-80px}.plan-summary h3{margin:4px 0 8px;font:500 clamp(2rem,4vw,3.4rem)/1 var(--serif)}.plan-summary p{margin:0;color:color-mix(in srgb,var(--sheet) 75%,transparent)}.deadline-seal{flex:0 0 110px;height:110px;border:2px solid var(--accent);border-radius:50%;display:grid;place-content:center;text-align:center;text-transform:uppercase;font-size:.72rem;letter-spacing:.15em;transform:rotate(5deg);z-index:1}.deadline-seal span{font:600 2.1rem/1 var(--serif);letter-spacing:0}.deadline-seal small{color:var(--accent);font-weight:900}.plan-summary .kicker,.deadline-seal small{color:#ff8a73}.notice{padding:15px 18px;margin:18px 0;border-left:4px solid;background:color-mix(in srgb,currentColor 7%,transparent)}.notice strong{font-family:var(--serif);font-size:1.12rem}.notice p{margin:2px 0 0;color:var(--muted)}.notice.success{color:var(--moss)}.notice.warning{color:var(--ochre)}.notice.danger{color:var(--danger)}.progress-block{margin:28px 0 38px}.progress-block>div:first-child{display:flex;justify-content:space-between}.progress-track{height:9px;margin-top:10px;background:var(--paper);overflow:hidden}.progress-track i{display:block;height:100%;background:var(--moss);transition:width .22s ease}.calendar-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:14px}.calendar-head h3{margin:0;font:600 1.55rem var(--serif)}.calendar-head p{margin:0;color:var(--muted);font-size:.88rem}.day-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--rule)}.day-card{min-height:76px;display:grid;grid-template-columns:1.2fr 1fr 110px;align-items:center;border-bottom:1px solid var(--rule);animation:route-in .3s ease both}.day-card:nth-child(n+12){animation-delay:.3s}.day-card label{min-height:60px;display:flex;align-items:center;gap:14px;cursor:pointer}.day-check{position:absolute;opacity:0}.custom-check{width:28px;height:28px;border:1px solid var(--muted);display:grid;place-items:center;color:transparent}.day-check:focus-visible+.custom-check{outline:3px solid #b57900;outline-offset:3px}.day-check:checked+.custom-check{background:var(--moss);border-color:var(--moss);color:var(--sheet)}.day-date small,.day-date b{display:block}.day-date small{color:var(--muted);text-transform:uppercase;font-size:.71rem;font-weight:800;letter-spacing:.1em}.task-count{display:flex;gap:28px;font-size:.82rem;color:var(--muted)}.task-count b{display:block;color:var(--ink);font-size:1.08rem;font-variant-numeric:tabular-nums}.day-minutes{justify-self:end;display:grid;grid-template-columns:auto auto;align-items:baseline;column-gap:4px;font-variant-numeric:tabular-nums}.day-minutes b{font:600 1.5rem var(--serif)}.day-minutes small{grid-column:1 / -1;color:var(--ochre);font-size:.68rem;font-weight:900;text-transform:uppercase}.day-card.complete{background:color-mix(in srgb,var(--moss) 7%,transparent)}.day-card.complete .day-date b,.day-card.complete .task-count{text-decoration:line-through}.plan-disclaimer{max-width:70ch;margin:28px 0 0;color:var(--muted);font-size:.86rem}.method{max-width:1240px;margin:0 auto;padding:clamp(80px,10vw,150px) clamp(20px,5vw,64px)}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(28px,5vw,70px);margin-top:48px}.method article>span{color:var(--accent);font-size:.75rem;font-weight:900;letter-spacing:.1em}.method article h3{margin:8px 0;font:600 1.35rem var(--serif)}.method article p{color:var(--muted)}footer{border-top:1px solid var(--rule);padding:28px clamp(20px,5vw,72px);display:flex;justify-content:space-between;gap:24px;font-size:.85rem;color:var(--muted)}footer p{margin:0}footer nav{display:flex;gap:20px}.toast{position:fixed;z-index:100;right:22px;bottom:22px;max-width:360px;padding:13px 18px;background:var(--ink);color:var(--sheet);box-shadow:5px 5px 0 var(--accent)}.sheet-dialog{width:min(560px,calc(100% - 32px));max-height:min(780px,calc(100% - 32px));padding:0;border:1px solid var(--ink);border-radius:2px;background:var(--sheet);color:var(--ink);box-shadow:12px 12px color-mix(in srgb,var(--accent) 75%,transparent)}.sheet-dialog::backdrop{background:#121310a8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.sheet-dialog form{padding:28px}.sheet-dialog h2{margin:0;font:500 2.3rem var(--serif)}.dialog-head{display:flex;justify-content:space-between;gap:20px;align-items:start;margin-bottom:22px}.icon-button{width:44px;height:44px;border:1px solid var(--rule);background:transparent;cursor:pointer;font-size:1.6rem}.dialog-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.sheet-dialog hr{border:0;border-top:1px solid var(--rule);margin:24px 0}.danger-text,.error-copy{color:var(--danger)}.merchant-note,.legal-links{color:var(--muted);font-size:.82rem}.legal-links{margin:24px 0 0}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@keyframes settle{0%{transform:translateY(18px) rotate(1.3deg);opacity:0}}@keyframes route-in{0%{transform:translateY(8px)}}@media(prefers-color-scheme:dark){:root{--paper: #171713;--sheet: #23231d;--ink: #f7f0e3;--muted: #bfc5bc;--accent: #f2775f;--accent-ink: #201814;--moss: #70c3a0;--ochre: #f2c767;--danger: #ff8faa;--rule: #4a4a40;--shadow: rgba(0, 0, 0, .35)}.hero-art:before{background:var(--accent)}.hero-art img{filter:brightness(.86) contrast(1.03)}:focus-visible,.day-check:focus-visible+.custom-check{outline-color:var(--ochre)}#deck-file:focus-visible+.button{outline-color:var(--ochre)}}@media(max-width:850px){.hero{grid-template-columns:1fr}.hero-copy,.hero-art{max-width:720px}.field-grid.four{grid-template-columns:repeat(2,1fr)}.method-grid{grid-template-columns:1fr;gap:22px}.method article{max-width:66ch}}@media(max-width:620px){.site-header{padding:15px 18px}.wordmark span:last-child{max-width:110px;line-height:1.08}.nav-button{padding:6px 8px;font-size:.84rem}.hero{padding:35px 20px 74px;gap:36px}.hero-art figcaption{right:5px}.trust-list{display:block}.trust-list li+li{margin-top:8px}.planner-shell{padding:36px 18px;box-shadow:0 14px 40px var(--shadow)}.section-heading{align-items:start}.saved-state{max-width:80px;text-align:right}.route-steps{font-size:.65rem}.route-steps i{margin:0 5px}.field-grid.two,.field-grid.three,.field-grid.four,.pace-options{grid-template-columns:1fr}.import-zone{align-items:stretch;flex-direction:column}.import-zone .button{width:100%}.form-action{align-items:stretch;flex-direction:column}.form-action .button{width:100%}.plan-toolbar{align-items:stretch;flex-direction:column}.plan-toolbar .button{width:100%}.plan-toolbar .text-button{align-self:start}.plan-summary{align-items:start}.deadline-seal{flex-basis:78px;height:78px}.deadline-seal span{font-size:1.5rem}.plan-summary h3{font-size:2rem}.calendar-head{display:block}.day-card{grid-template-columns:1.15fr .8fr 62px}.task-count{display:block}.task-count span{display:flex;gap:4px;align-items:baseline}.task-count b{font-size:.94rem}.day-minutes b{font-size:1.25rem}footer{flex-direction:column}.sheet-dialog form{padding:22px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
