
/* October 8 additive accessibility and visual polish */
html{scroll-behavior:smooth}button,a,input,select,summary{touch-action:manipulation}
a:focus-visible,summary:focus-visible{outline:3px solid #a47625;outline-offset:3px}
.oct8-guide{border:1px solid #ded6c5;border-radius:16px;padding:18px;margin:20px 0;background:#fffefb;color:#253c3f;font-size:15px;line-height:1.6}
.oct8-guide summary{cursor:pointer;font-weight:700;min-height:44px;display:flex;align-items:center;gap:8px}
.oct8-guide summary::before{content:'+';font-size:22px;color:#8a642c}.oct8-guide[open] summary::before{content:'−'}
.oct8-guide ol{padding-left:24px}.oct8-guide li{margin:10px 0}.oct8-guide p{margin:10px 0}.oct8-guide a{text-decoration:underline;text-underline-offset:3px}
.oct8-skip{position:fixed;top:-100px;left:12px;z-index:1000;padding:12px 18px;border-radius:8px;background:#203f42;color:#fff;font-weight:700}.oct8-skip:focus{top:12px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
@media print{.oct8-guide,.oct8-skip{display:none!important}}
body{background:linear-gradient(150deg,#f6f1e8,#fbfaf9 60%)}.fc{max-width:1080px}.tabs{border:1px solid #e1daca;background:#fff;border-radius:14px;padding:5px;gap:4px}.tabs button{border-radius:9px}.tabs button.on{background:#263e39;color:#fff;box-shadow:none}.hero{box-shadow:0 8px 28px #40382c0c,inset 0 3px 0 var(--ds-teal)}.hero.tight{box-shadow:0 8px 28px #40382c0c,inset 0 3px 0 var(--gold)}.hero.over{box-shadow:0 8px 28px #40382c0c,inset 0 3px 0 var(--ds-red)}.card,.due{background:#fff;box-shadow:0 3px 16px #40382c07}.field,.fc-btn,.btn,.seg{border-radius:9px}.fc-btn,.btn{background:#263e39}.field:focus-visible,button:focus-visible{outline:3px solid #416d61;outline-offset:3px}.ledger>div{padding:13px 0}.fc-group h2{font-size:24px}@media(max-width:640px){.fc{padding:20px 18px}.tabs button{flex:1 1 85px;font-size:14px;padding:0 8px}.settings{gap:12px}.hero{padding:20px 16px}.big{font-size:clamp(38px,13vw,64px);overflow-wrap:anywhere}.addform{gap:14px}.card{padding:18px}}