:root{--ink:#171716;--paper:#f6f1e7;--surface:#fffdf7;--signal:#f5d547;--coral:#e85b45;--moss:#28664f;--fog:#d8d1c5;--line:2px solid var(--ink);color:var(--ink);background:var(--paper);font-synthesis:none;font-family:Inter,Arial,sans-serif}*{box-sizing:border-box}body{background:var(--paper);min-width:320px;margin:0;font-size:16px;line-height:1.5}a{color:inherit;text-underline-offset:3px;text-decoration-thickness:2px}button,input,select{font:inherit}button,.button,.file-button{border:var(--line);background:var(--surface);min-height:44px;color:var(--ink);box-shadow:3px 3px 0 var(--ink);cursor:pointer;border-radius:0;justify-content:center;align-items:center;gap:6px;padding:10px 14px;font-weight:800;text-decoration:none;display:inline-flex}.button:hover,.file-button:hover,button:hover{background:var(--fog)}.button:active,button:active{box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}.primary{background:var(--signal)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:4px solid var(--coral);outline-offset:3px}.skip-link{z-index:10;background:var(--signal);color:var(--ink);padding:8px;font-weight:800;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:none}.site-header{border-bottom:var(--line);justify-content:space-between;align-items:center;gap:18px;max-width:1280px;min-height:82px;margin:auto;padding:16px 28px;display:flex}.wordmark{letter-spacing:.5px;font-family:Impact,Arial Black,sans-serif;font-size:22px;line-height:.78;text-decoration:none}.wordmark span{font:12px Arial}.site-header nav{gap:20px;font-weight:800;display:flex}.site-header nav a{padding:10px 0}.hero,.preview-section,.how,.privacy-note,.pro,.app-main,.legal{max-width:1280px;margin:auto;padding-left:28px;padding-right:28px}.hero{grid-template-columns:minmax(0,1fr) minmax(330px,.95fr);align-items:center;gap:42px;padding-top:62px;padding-bottom:72px;display:grid}.eyebrow{letter-spacing:1.1px;margin:0 0 12px;font-size:12px;font-weight:900}.hero h1,.app-heading h1,.legal h1{letter-spacing:-1px;max-width:650px;margin:0;font-family:Impact,Arial Black,sans-serif;font-size:clamp(46px,7vw,86px);font-weight:900;line-height:.92}.lede{max-width:610px;margin:24px 0;font-size:20px}.hero-actions{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.hero-actions span{max-width:170px;font-size:14px}.facts{flex-wrap:wrap;gap:8px 24px;margin:28px 0 0;padding:0;font-weight:700;list-style:none;display:flex}.facts li:before{content:"✓";color:var(--moss);margin-right:7px}.hero-art{border:var(--line);box-shadow:8px 8px 0 var(--ink);background:var(--surface);margin:0;transform:rotate(1.2deg)}.hero-art img{aspect-ratio:3/2;object-fit:cover;width:100%;height:auto;display:block}.hero-art figcaption{padding:8px 10px;font-size:12px}.preview-section{background:var(--ink);color:var(--paper);grid-template-columns:.7fr 1.3fr;gap:40px;max-width:none;padding-top:46px;padding-bottom:46px;display:grid}.preview-section>div,.preview-section .mini-ledger{max-width:1224px}.preview-section>div:first-child{justify-self:end;width:min(100%,480px)}h2{letter-spacing:.2px;margin:0 0 16px;font-family:Impact,Arial Black,sans-serif;font-size:32px;line-height:1}.mini-ledger{border:2px solid var(--paper);background:var(--surface);color:var(--ink);box-shadow:6px 6px 0 var(--coral);align-self:center}.mini-ledger div{border-bottom:2px solid var(--ink);grid-template-columns:1.5fr 1fr .8fr .6fr;gap:8px;padding:12px;display:grid}.mini-ledger div:last-child{border:0}.mini-ledger em{font-size:13px;font-style:normal}.how,.privacy-note,.pro{padding-top:70px;padding-bottom:70px}.how{border-bottom:var(--line)}.how ol{counter-reset:steps;grid-template-columns:repeat(3,1fr);gap:26px;margin:28px 0 0;padding:0;list-style:none;display:grid}.how li{border-top:8px solid var(--signal);max-width:330px;padding-top:12px}.how li:before{counter-increment:steps;content:"0" counter(steps);font-family:Impact,sans-serif;font-size:31px;display:block}.how strong{font-size:20px;display:block}.privacy-note{background:var(--fog);max-width:none;padding-left:max(28px,50vw - 612px);padding-right:max(28px,50vw - 612px)}.privacy-note p,.pro p{max-width:700px}.pro{border-bottom:var(--line)}footer{justify-content:space-between;gap:20px;max-width:1280px;margin:auto;padding:30px 28px;font-size:14px;display:flex}footer p{margin:0}.demo-banner{z-index:3;background:var(--signal);border-bottom:var(--line);justify-content:center;align-items:center;gap:10px;padding:8px max(18px,50vw - 612px);font-size:14px;display:flex;position:sticky;top:0}.link-button{box-shadow:none;background:0 0;border:0;min-height:30px;padding:2px;font-weight:800;text-decoration:underline}.app-main{padding-top:42px;padding-bottom:64px}.app-heading{border-bottom:var(--line);justify-content:space-between;align-items:end;gap:30px;padding-bottom:26px;display:flex}.app-heading h1{max-width:720px;font-size:clamp(40px,6vw,67px)}.summary{background:var(--surface);border:var(--line);box-shadow:5px 5px 0 var(--ink);grid-template-columns:auto auto;align-items:baseline;column-gap:14px;min-width:245px;padding:14px;display:grid}.summary b{font-family:Impact,sans-serif;font-size:30px}.summary span{font-size:13px}.tool-row{flex-wrap:wrap;gap:12px;padding:26px 0;display:flex}.file-button input{opacity:0;width:1px;height:1px;position:absolute}.notice{background:var(--signal);border:var(--line);padding:11px 14px;font-weight:700}.attention{border:var(--line);border-left:12px solid var(--coral);background:#fff0ec;margin:0 0 28px;padding:16px}.attention h2{margin:0;font-size:24px}.attention p{margin:4px 0 0}.calendar,.inventory,.license{border-top:8px solid var(--ink);margin-top:28px}.section-head{justify-content:space-between;align-items:baseline;gap:12px;padding:13px 0;display:flex}.section-head h2{margin:0;font-size:28px}.section-head span{font-size:13px;font-weight:700}.occurrence-list,.subscription-list{border:var(--line);background:var(--surface)}.occurrence{border-bottom:var(--line);border-left:9px solid var(--signal);grid-template-columns:126px 1fr auto 80px;align-items:center;gap:16px;padding:14px;display:grid}.occurrence:last-child,.subscription-list article:last-child{border-bottom:0}.occurrence.keep{border-left-color:var(--moss)}.occurrence.cancel{border-left-color:var(--coral)}.occurrence time{flex-direction:column;display:flex}.occurrence time b{font-size:14px}.occurrence small,.occurrence p{margin:0;font-size:13px}.occurrence h3,.subscription-list h3{margin:0;font-size:18px}.decision{text-transform:uppercase;letter-spacing:.6px;font-size:11px;font-weight:900}.subscription-list article{border-bottom:var(--line);justify-content:space-between;gap:12px;padding:14px;display:flex}.subscription-list p{margin:3px 0;font-size:14px}.icon-button{width:44px;box-shadow:none;padding:0;font-size:27px}.empty{text-align:center;padding:48px 20px}.empty h3{margin:0;font-size:22px}.empty p{max-width:480px;margin:8px auto 18px}.license{padding-top:16px}.license h2{font-size:26px}.license form label{font-size:14px;font-weight:800;display:block}.license form div{gap:10px;margin:5px 0 12px;display:flex}.license input{border:var(--line);width:min(420px,100%);min-height:44px;padding:8px}.legal{padding-top:80px;padding-bottom:90px}.legal article{max-width:720px}.legal h1{font-size:clamp(42px,6vw,70px)}.legal h2{margin-top:40px}.dialog{border:var(--line);box-shadow:9px 9px 0 var(--ink);background:var(--paper);width:calc(100% - 32px);max-width:760px;padding:22px}.dialog::backdrop{background:#171716aa}.dialog form>header{border-bottom:var(--line);justify-content:space-between;align-items:start;padding-bottom:12px;display:flex}.dialog form>header h2{margin:0}.dialog form>header button{width:36px;min-height:36px;box-shadow:none;padding:0}.form-grid{grid-template-columns:repeat(2,1fr);gap:13px;display:grid}.form-grid label{font-size:13px;font-weight:800}.form-grid input,.form-grid select{border:var(--line);background:var(--surface);width:100%;min-height:42px;margin-top:4px;padding:7px;display:block}.form-grid .wide{grid-column:1/-1}.dialog menu{justify-content:end;gap:12px;margin:22px 0 0;padding:0;display:flex}@media (prefers-reduced-motion:no-preference){.hero-art{transition:transform .18s}.hero-art:hover{transform:rotate(0)translateY(-3px)}.occurrence{transition:background .18s}.occurrence:hover,.occurrence:focus{background:#fff5bb}}@media (max-width:720px){.site-header{padding:14px 18px}.site-header nav{gap:12px;font-size:14px}.hero{grid-template-columns:1fr;gap:30px;padding:40px 18px 54px}.preview-section{grid-template-columns:1fr;gap:22px;padding:36px 18px}.preview-section>div:first-child{justify-self:start}.mini-ledger div{grid-template-columns:1fr auto;gap:2px 12px}.mini-ledger em{display:none}.how,.privacy-note,.pro,.app-main,.legal{padding-left:18px;padding-right:18px}.how{padding-top:52px;padding-bottom:52px}.how ol{grid-template-columns:1fr;gap:26px}.app-heading{display:block}.summary{width:100%;margin-top:24px}.tool-row{grid-template-columns:1fr 1fr;display:grid}.tool-row>*{width:100%}.occurrence{grid-template-columns:94px 1fr auto;gap:8px;padding:12px}.occurrence .decision{grid-column:2}.occurrence>strong{font-size:14px}.license form div{flex-direction:column}.license input{width:100%}footer{padding:24px 18px;display:block}footer p+p{margin-top:9px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.demo-banner{flex-wrap:wrap;justify-content:start;padding:8px 18px}.hero h1{font-size:54px}}@media (max-width:390px){.site-header nav a:nth-child(2){display:none}.tool-row{grid-template-columns:1fr}.occurrence{grid-template-columns:76px 1fr}.occurrence>strong,.occurrence .decision{grid-column:2}.facts{display:block}.facts li+li{margin-top:5px}}.update-notice{z-index:8;background:#f5d547;border:2px solid #171716;align-items:center;gap:16px;max-width:calc(100vw - 40px);padding:12px 16px;display:flex;position:fixed;bottom:20px;right:20px;box-shadow:5px 5px #171716}.update-notice .link-button{min-height:44px;padding:6px}.wordmark,.skip-link,.site-header nav a,footer a,.pro>a,.license>a,.demo-banner .link-button,.notice .link-button{min-height:44px}.site-header nav a,footer a,.pro>a,.license>a{align-items:center;min-width:44px;display:inline-flex}.icon-button{flex:0 0 44px}
