:root{--bg:#f5f7f3;--surface:#fff;--ink:#243c34;--muted:#78847c;--green:#285544;--green-dark:#214838;--pale:#edf2e6;--line:#e8ece5;--peach:#f5e1d6;--radius:24px;--shadow:0 8px 35px #293e3010}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #c49262;outline-offset:3px}button:disabled{opacity:.4;cursor:default}a{text-decoration:none;color:inherit}.icon-library{display:none}.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.app-shell{max-width:1220px;margin:auto;padding:0 42px}.app-header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;font-size:23px;font-weight:700;letter-spacing:-.7px}.brand-mark{position:relative;display:grid;place-items:center;width:45px;height:47px;border-radius:15px;background:var(--green);color:#eef2db}.brand-mark svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.brand-spark{position:absolute;right:5px;top:4px;font-size:12px}.brand-sub{display:block;font-size:9px;letter-spacing:2.2px;font-weight:600;margin-top:3px;color:#89928b}.header-actions{display:flex;align-items:center;gap:10px}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--line);background:white;border-radius:12px;flex-shrink:0;transition:background .15s,transform .15s}.icon-button:hover{background:var(--pale)}.settings-button{width:43px;height:43px;background:transparent;border:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;font-weight:600;font-size:14px;min-height:48px;padding:12px 20px;border-radius:13px;transition:background .15s,transform .15s}.button:active,.calendar-day:active,.service-option:active{transform:scale(.98)}.button.primary{background:var(--green);color:#fff}.button.primary:hover{background:var(--green-dark)}.button.soft{background:#eaf0e4;color:var(--green)}.button.outline{border:1px solid var(--line);background:white}.button.outline:hover{background:var(--bg)}.button.small{min-height:40px;padding:10px 15px;font-size:12px}.wide{width:100%}.text-button{padding:5px 0;border:0;background:none;display:inline-flex;align-items:center;gap:3px;color:#708074;font-size:12px;font-weight:500}.text-button:hover{color:var(--green)}.text-button .icon{width:14px;height:14px}.page-intro{padding:37px 0 32px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.eyebrow{margin:0 0 10px;font-size:9px;letter-spacing:1.7px;font-weight:700;color:#84917f}.page-intro h1{font-size:30px;letter-spacing:-1.15px;font-weight:600;margin:0 0 9px;line-height:1.3}.page-intro p:not(.eyebrow){font-size:13px;margin:0;color:#879087}.intro-detail{display:flex;gap:9px;align-items:center;font-size:10px;color:#8c9689;padding-bottom:4px;white-space:nowrap}.intro-detail>span:last-child{color:#b8a17d;font-size:20px;margin-left:1px}.little-line{width:22px;height:1px;background:#bfc8b7}.workspace{display:grid;grid-template-columns:minmax(0,1.34fr) minmax(340px,1fr);gap:28px;align-items:start}.calendar-card{background:#fff;border:1px solid #e8ece4;border-radius:var(--radius);padding:28px;box-shadow:var(--shadow)}.calendar-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.calendar-top h2{font-size:23px;letter-spacing:-.6px;font-weight:600;margin:0}.calendar-top .eyebrow{font-size:8px;margin-bottom:6px}.calendar-nav{display:flex;gap:7px}.calendar-nav .icon-button{width:34px;height:34px;border-radius:10px;border-color:#eff1eb}.calendar-nav .icon{width:16px;height:16px}.month-overview{position:relative;padding:19px 20px;background:#f1f4eb;border:1px solid #eaf0e1;border-radius:17px;display:flex;justify-content:space-between;align-items:flex-end;gap:15px;overflow:hidden;margin-bottom:23px}.month-overview>div{position:relative;z-index:1}.muted{font-size:11px;color:#778571}.month-overview strong{display:block;font-size:29px;font-weight:600;letter-spacing:-1px;margin-top:5px;line-height:1.2}.month-detail{display:flex;gap:9px;align-items:center;font-size:10px;color:#819078;margin-bottom:5px;white-space:nowrap}.month-detail b{font-weight:600;color:#65765c}.month-detail i{height:3px;width:3px;background:#aab69e;border-radius:50%}.month-decoration{position:absolute;right:3px;top:-5px;opacity:.035;width:110px;height:110px;stroke:var(--green);fill:none;stroke-width:1}.weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center;font-size:10px;font-weight:500;color:#9aa293;margin-bottom:11px}.weekdays span:last-child{color:#b39889}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-day{border:1px solid transparent;border-radius:12px;background:white;min-width:0;min-height:69px;padding:8px 1px 6px;display:flex;align-items:center;flex-direction:column;gap:4px;position:relative}.calendar-day:hover{background:#f5f7f1}.day-number{font-size:13px;font-weight:500;line-height:20px}.day-value{font-size:9px;font-weight:600;line-height:13px;color:#648056;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-day.outside .day-number{color:#c6ccc1}.calendar-day.is-today .day-number:after{content:"";position:absolute;left:calc(50% - 2px);top:30px;width:4px;height:4px;border-radius:50%;background:#ba9b7d}.calendar-day.is-today .day-number{color:var(--green);font-weight:700}.calendar-day.is-today:not(.has-entries){gap:7px}.calendar-day.has-entries .day-value:before{content:"";display:block;background:#a6bb90;width:3px;height:3px;border-radius:50%;margin:1px auto 2px}.calendar-day.is-today.has-entries .day-number:after{display:none}.calendar-day.selected{background:var(--green)!important;box-shadow:0 4px 10px #2a573427;border-color:var(--green);color:white}.calendar-day.selected .day-number,.calendar-day.selected .day-value{color:white}.calendar-day.selected.has-entries .day-value:before{background:#cce1a8}.calendar-day.selected.is-today .day-number:after{background:#d3dfae}.calendar-key{border-top:1px solid var(--line);display:flex;align-items:center;gap:16px;margin-top:18px;padding-top:16px;color:#929b8b;font-size:8px}.calendar-key span{display:flex;align-items:center;gap:5px}.calendar-key span:last-child{margin-left:auto}.calendar-key i{display:block;width:5px;height:5px;border-radius:50%;flex-shrink:0}.today-dot{background:#ba9b7d}.income-dot{background:#a6bb90}.day-panel{padding-top:3px;min-width:0;scroll-margin-top:18px}.day-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.day-heading .eyebrow{margin-bottom:6px;font-size:8px}.day-heading h2{font-size:20px;font-weight:600;margin:0;letter-spacing:-.5px}.date-badge{width:42px;height:42px;background:#eaf0e2;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:17px;color:#69815d}.income-card{background:var(--green);color:white;padding:23px 24px 20px;border-radius:22px;position:relative;overflow:hidden;box-shadow:0 6px 16px #2855440f}.income-card:after{content:"";position:absolute;right:-43px;top:-58px;border:1px solid #ffffff0c;border-radius:50%;width:230px;height:230px;box-shadow:0 0 0 35px #ffffff03;pointer-events:none}.income-card-top{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#dce8d4}.net-label{font-size:7px;letter-spacing:1.1px;color:#b9cdb1}.income-total{font-size:44px;letter-spacing:-1.8px;line-height:1.2;margin:10px 0 6px;font-weight:500;font-variant-numeric:tabular-nums}.income-formula{font-size:10px;color:#aec4a6}.daily-stats{display:grid;grid-template-columns:1fr 1fr .8fr;border-top:1px solid #ffffff1e;margin-top:23px;padding-top:17px;position:relative;z-index:1}.daily-stats>div+div{border-left:1px solid #ffffff1e;padding-left:20px}.daily-stats span{display:block;font-size:9px;color:#b7cdb0;margin-bottom:7px}.daily-stats strong{font-size:15px;font-weight:500;letter-spacing:-.2px;font-variant-numeric:tabular-nums}.daily-stats small{font-size:9px;color:#b7cdb0}.entries-heading{display:flex;align-items:center;justify-content:space-between;margin:23px 0 13px;gap:6px}.entries-heading h3{font-size:12px;font-weight:600;margin:0}.entries-heading h3 span{font-size:9px;padding:3px 6px;background:#e9ede3;margin-left:4px;border-radius:5px;color:#839276}.entries-heading .text-button{font-size:10px}.entry-list{display:flex;flex-direction:column;gap:8px}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:22px 10px 23px;border:1px dashed #dce4d4;border-radius:17px;background:#f8f9f5}.empty-illustration{position:relative;width:66px;height:66px;display:flex;align-items:center;justify-content:center;margin-bottom:13px}.empty-illustration:before{content:"";width:53px;height:53px;border-radius:19px;background:#ede7d9;transform:rotate(-12deg);position:absolute}.empty-illustration:after{content:"✦";position:absolute;right:4px;top:3px;font-size:19px;color:#b6a486}.empty-illustration .icon{position:relative;width:32px;height:32px;stroke-width:1.2;color:#9a9f86;transform:rotate(8deg)}.empty-state h4{font-size:12px;font-weight:600;margin:0 0 6px}.empty-state p{color:#98a08f;line-height:1.6;font-size:10px;margin:0;max-width:210px}.entry{display:flex;align-items:center;width:100%;border:1px solid #e5eade;background:white;padding:12px 13px;border-radius:14px;text-align:left;gap:10px;transition:border-color .15s}.entry:hover{border-color:#b5c4a8}.entry-service-icon{width:36px;height:38px;display:grid;place-items:center;flex-shrink:0;background:var(--service-bg,#edf1e4);color:var(--service-color,#789067);border-radius:11px}.entry-service-icon .icon{width:20px;height:20px;stroke-width:1.4}.entry-info{min-width:0;flex:1}.entry-name{font-size:12px;display:block;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entry-meta{display:block;font-size:9px;color:#939d8c;margin-top:5px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entry-money{text-align:right;flex-shrink:0}.entry-money strong{font-size:13px;display:block;font-weight:600;letter-spacing:-.25px}.entry-money span{display:block;font-size:9px;color:#8b9984;margin-top:5px}.entry-edit{width:12px;height:12px;color:#adb6a5}.add-turn{width:100%;margin-top:15px;min-height:48px;font-size:12px;box-shadow:0 4px 10px #2855440c}.add-turn .icon{width:17px;height:17px}.day-footnote{text-align:center;font-size:9px;color:#98a08f;margin:12px 0 0}.app-footer{display:flex;align-items:center;justify-content:space-between;margin:25px 0 35px;color:#99a38f;font-size:9px}.app-footer>span{display:flex;align-items:center;gap:5px}.app-footer .icon{width:12px;height:12px}.app-footer .text-button{font-size:9px;color:#8d9b81}.sheet{border:1px solid #e0e7db;border-radius:25px;padding:28px;width:calc(100% - 32px);max-width:460px;background:#fff;color:var(--ink);box-shadow:0 22px 100px #14251c2e;max-height:calc(100dvh - 40px);overflow:auto;overscroll-behavior:contain}.sheet::backdrop{background:#192d2466;backdrop-filter:blur(3px)}body:has(dialog[open]){overflow:hidden}.sheet-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.sheet-heading h2{font-size:24px;letter-spacing:-.75px;font-weight:600;margin:0}.sheet-heading .eyebrow{font-size:8px;margin-bottom:6px}.close-dialog{border:0;background:#f4f6f1;width:34px;height:34px}.close-dialog .icon{width:17px;height:17px}.sheet-handle{display:none}.service-fieldset{padding:0;margin:0 0 24px;border:0}.service-fieldset legend,.money-fields>label,.note-label{font-size:12px;font-weight:600;margin:0 0 11px;display:block}.service-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.service-option{border:1px solid #e5eadd;border-radius:12px;position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:12px 2px 10px;gap:7px;cursor:pointer;font-size:10px;font-weight:500;background:#fff}.service-option input{position:absolute;opacity:0;width:1px;height:1px}.service-option .icon{width:22px;height:22px;stroke-width:1.4;color:#94a486}.service-option:has(input:checked){border-color:var(--green);background:#edf3e7;color:var(--green);box-shadow:inset 0 0 0 .5px var(--green)}.service-option:has(input:checked) .icon{color:var(--green)}.service-option:has(input:focus-visible){outline:3px solid #c49262;outline-offset:3px}.money-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.money-fields>label{margin-bottom:20px}.optional{font-size:9px;font-weight:400;color:#99a190;white-space:nowrap;margin-left:3px}.money-input{display:flex;align-items:center;border:1px solid #dee5d6;background:#fafbf7;border-radius:12px;margin-top:10px;padding:0 14px;gap:7px;height:54px}.money-input>span{font-size:18px;font-weight:400;color:#a1aa95}.money-input input{padding:12px 0;border:0;background:none;width:100%;min-width:0;font-size:23px;letter-spacing:-.5px;color:var(--ink);outline:none;font-variant-numeric:tabular-nums}.money-input:focus-within{border-color:var(--green);box-shadow:0 0 0 2px #28554412}.money-input input:focus-visible{outline:none}.money-input input::placeholder{color:#c4cbbb;font-weight:400}.note-label{margin-bottom:9px}.note-input{width:100%;border:1px solid #e3e9dc;border-radius:10px;padding:12px;font-size:12px;color:var(--ink)}.note-input::placeholder{color:#adb4a5}.form-total{display:flex;justify-content:space-between;align-items:center;background:#eff4e8;border-radius:13px;padding:16px;margin-top:23px;gap:12px}.form-total span{font-size:11px;display:block;font-weight:500}.form-total small{font-size:9px;display:block;color:#8a9a7e;margin-top:5px}.form-total strong{font-size:25px;font-weight:600;letter-spacing:-.8px;white-space:nowrap}.form-actions{display:flex;gap:10px;margin-top:12px}.form-actions .button{flex:1;font-size:13px}.danger{border-color:#f0dfd8;color:#b2735d;min-height:48px;width:48px}.danger:hover{background:#f9efeb}.error-message{color:#ac503c;font-size:11px;line-height:1.5;min-height:0;margin:9px 0 0}.error-message:empty{display:none}.setting-title{font-size:13px;font-weight:600}.settings-description{font-size:11px;line-height:1.7;color:#8c9981;margin:8px 0 17px}.share-presets{display:flex;gap:8px}.share-presets button{flex:1;border:1px solid #e1e7d8;background:#fff;min-height:41px;border-radius:10px;font-size:12px}.share-presets button.active{color:var(--green);background:#edf3e6;border-color:var(--green)}.share-input-wrap{display:flex;align-items:center;border:1px solid #dfe5d8;border-radius:11px;margin-top:13px;padding:0 14px;background:#fafbf7}.share-input-wrap input{width:100%;border:0;background:none;padding:14px 0;outline:none;color:var(--ink);font-size:22px}.share-input-wrap:focus-within{border-color:var(--green)}.share-input-wrap span{color:#8e9d81}.setting-hint{color:#98a18f;font-size:10px;line-height:1.7;margin:12px 0 20px}.backup-section{border-top:1px solid var(--line);margin-top:26px;padding-top:20px}.backup-section h3{font-size:13px;margin:0 0 9px;font-weight:600}.backup-section>p{font-size:10px;color:#8f9a85;line-height:1.8;margin:0 0 14px}.backup-actions{display:flex;gap:10px}.backup-actions .button{font-size:11px;padding:11px 14px;min-height:43px;flex:1}.backup-actions .icon{width:16px;height:16px}.backup-section .backup-message{font-size:10px;line-height:1.6;margin:12px 0 0;color:#657c58}.restore-review{background:#fff6e9;border:1px solid #eddfc7;border-radius:12px;padding:14px;margin-top:14px;font-size:11px;line-height:1.6}.restore-review p{margin:0 0 12px}.restore-review .text-button{margin-left:10px}.toast{position:fixed;z-index:10;bottom:30px;left:50%;transform:translate(-50%,20px);background:#243f31;color:white;box-shadow:0 8px 25px #23392a24;border-radius:13px;padding:15px 19px;font-size:12px;display:flex;align-items:center;gap:20px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;max-width:calc(100% - 30px);width:max-content}.toast.visible{opacity:1;transform:translate(-50%,0);pointer-events:auto}.toast button{border:0;color:#d3e6a6;background:none;font-size:12px;font-weight:600;padding:4px}.noscript{background:#fff1d8;padding:16px;position:fixed;top:0;left:0;width:100%;text-align:center;font-size:14px}[hidden]{display:none!important}
@media(min-width:1200px){.calendar-day{min-height:77px}.calendar-card{padding:30px}.calendar-key{margin-top:22px}.income-card{padding:25px 25px 22px}.day-panel{padding-top:4px}.empty-state{padding:27px 10px 29px}.entry{padding:14px}.day-heading{margin-bottom:19px}.intro-detail{font-size:10px}}
@media(max-width:1000px){.app-shell{padding:0 26px}.workspace{gap:20px;grid-template-columns:minmax(0,1.2fr) minmax(310px,1fr)}.calendar-card{padding:22px}.intro-detail{display:none}.calendar-day{min-height:63px}.calendar-key{gap:10px;font-size:7px}.month-overview{padding:17px}.month-overview strong{font-size:26px}.month-detail{gap:5px;font-size:9px}.income-card{padding:21px}.income-total{font-size:40px}.daily-stats>div+div{padding-left:13px}.daily-stats strong{font-size:14px}}
@media(max-width:760px){.app-shell{max-width:520px;padding:0 20px}.app-header{height:85px}.brand{font-size:21px;gap:10px}.brand-mark{width:39px;height:42px;border-radius:13px}.brand-mark svg{width:26px;height:26px}.brand-sub{font-size:8px;letter-spacing:1.8px}.header-actions{gap:4px}.button.small{font-size:11px;min-height:36px;padding:9px 12px}.button.small .icon{width:15px;height:15px}.settings-button{width:37px;height:38px}.page-intro{padding:26px 0 23px}.page-intro .eyebrow{font-size:7px;letter-spacing:1.4px;margin-bottom:9px}.page-intro h1{font-size:25px;letter-spacing:-1px;margin-bottom:7px}.page-intro p:not(.eyebrow){font-size:10px;line-height:1.6}.workspace{display:flex;flex-direction:column;gap:26px}.calendar-card{width:100%;padding:20px;border-radius:21px;box-shadow:0 5px 22px #293e3008}.calendar-top{margin-bottom:17px}.calendar-top h2{font-size:21px}.calendar-top .eyebrow{font-size:7px}.calendar-nav .icon-button{width:32px;height:32px}.month-overview{padding:14px 15px;margin-bottom:21px;border-radius:13px}.month-overview strong{font-size:25px;margin-top:3px}.muted{font-size:9px}.month-detail{font-size:9px;gap:7px;margin-bottom:4px}.weekdays{font-size:9px;margin-bottom:7px}.calendar-grid{gap:3px}.calendar-day{min-height:52px;border-radius:10px;padding-top:6px;gap:3px}.day-number{font-size:12px;line-height:18px}.day-value{font-size:8px;line-height:11px}.calendar-day.is-today .day-number:after{top:26px;width:3px;height:3px;left:calc(50% - 1.5px)}.calendar-day.has-entries .day-value:before{height:2px;width:2px;margin:0 auto 2px}.calendar-key{margin-top:14px;padding-top:13px;font-size:7px;gap:12px;flex-wrap:wrap;row-gap:7px}.calendar-key span:last-child{font-size:7px}.day-panel{width:100%;padding-top:0}.day-heading{margin-bottom:14px}.day-heading h2{font-size:21px}.day-heading .eyebrow{font-size:8px;margin-bottom:6px}.date-badge{width:39px;height:39px;font-size:16px}.income-card{border-radius:21px;padding:22px}.income-card-top{font-size:11px}.income-total{font-size:42px}.income-formula{font-size:10px}.daily-stats{margin-top:21px;padding-top:16px}.daily-stats span{font-size:9px}.daily-stats strong{font-size:16px}.daily-stats>div+div{padding-left:20px}.entries-heading{margin-top:23px;margin-bottom:13px}.entries-heading h3{font-size:13px}.entries-heading .text-button{font-size:10px}.entry{padding:13px}.entry-name{font-size:13px}.entry-meta{font-size:10px}.entry-money strong{font-size:14px}.entry-money span{font-size:10px}.entry-service-icon{width:40px;height:42px}.empty-state{padding:22px 10px}.empty-state h4{font-size:12px}.empty-state p{font-size:10px}.add-turn{position:sticky;bottom:calc(15px + env(safe-area-inset-bottom));z-index:2;min-height:52px;margin-top:16px;font-size:13px;box-shadow:0 4px 15px #244e3c25}.day-footnote{font-size:9px;margin-top:12px}.app-footer{margin:25px 0 25px;font-size:8px;padding-bottom:env(safe-area-inset-bottom)}.app-footer .text-button{font-size:8px}.sheet{padding:23px;max-width:520px;width:100%;margin:0 auto;inset:auto 0 0;max-height:calc(100dvh - 14px);border-radius:25px 25px 0 0;padding-bottom:calc(23px + env(safe-area-inset-bottom));border-bottom:0}.sheet-handle{display:block;width:35px;height:4px;border-radius:5px;background:#dfe5d9;margin:-11px auto 21px}.sheet-heading{margin-bottom:24px}.sheet-heading h2{font-size:24px}.service-option{font-size:11px;padding:14px 3px 11px}.service-options{gap:8px}.money-fields>label,.service-fieldset legend,.note-label{font-size:12px}.money-fields .optional{display:block;margin:4px 0 -3px;font-size:8px}.money-fields{align-items:end}.money-input{margin-top:10px}.money-input input{font-size:25px}.note-input{font-size:16px;padding:12px;letter-spacing:-.3px}.note-input::placeholder{font-size:12px}.form-actions .button{min-height:51px}.toast{bottom:calc(22px + env(safe-area-inset-bottom));font-size:11px;z-index:20}.settings-sheet .sheet-heading{margin-bottom:22px}.share-input-wrap input{font-size:23px}.backup-section>p{font-size:11px}.setting-hint{font-size:11px}}
@media(max-width:360px){.app-shell{padding:0 14px}.page-intro h1{font-size:23px}.calendar-card{padding:16px}.calendar-day{min-height:47px}.calendar-key{gap:8px}.calendar-key span:last-child{width:100%;justify-content:center}.sheet{padding:20px;padding-bottom:calc(20px + env(safe-area-inset-bottom))}.service-option{font-size:10px}.month-detail{font-size:8px}.daily-stats>div+div{padding-left:15px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Keep the quiet visual style readable during a busy working day. */
.eyebrow{color:#718069}.muted{color:#65745e}.day-number{font-size:14px}.day-value{font-size:10px}.weekdays{font-size:11px;color:#788570}.month-detail{font-size:11px}.calendar-key{font-size:9px;color:#76816f}.income-card-top{font-size:13px}.income-formula{font-size:11px;color:#c3d5bb}.daily-stats span{font-size:11px;color:#c3d5bb}.daily-stats strong{font-size:17px}.daily-stats small{font-size:11px}.entries-heading h3{font-size:14px}.entries-heading .text-button{font-size:12px}.entry-name{font-size:14px}.entry-meta{font-size:11px;color:#7b8971}.entry-money strong{font-size:15px}.entry-money span{font-size:10px;color:#718166}.add-turn{font-size:14px}.button-date{font-size:11px;color:#d4e0c9;font-weight:400;padding-left:9px;border-left:1px solid #ffffff30;margin-left:3px}.day-footnote{font-size:10px;color:#7e8a74}.empty-state h4{font-size:14px}.empty-state p{font-size:12px;color:#819075;max-width:250px}.service-option{font-size:12px}.service-fieldset legend,.money-fields>label,.note-label{font-size:13px}.form-total span{font-size:12px}.form-total small{font-size:10px;color:#6f835f}.setting-hint{color:#76866b}.backup-section>p{color:#76866b}.sheet-heading .eyebrow{font-size:9px}.net-label{font-size:9px}.calendar-nav .icon-button{width:40px;height:40px}.app-footer,.app-footer .text-button{font-size:10px;color:#7c8a72}
@media(max-width:1000px) and (min-width:761px){.calendar-key span:last-child{display:none}.month-detail{font-size:10px}}
@media(max-width:760px){
  .app-shell{padding-bottom:84px}.page-intro{padding:22px 0 21px}.page-intro .eyebrow{display:none}.page-intro h1{font-size:23px;letter-spacing:-.8px;margin-bottom:7px}.page-intro p:not(.eyebrow){font-size:11px;color:#778570}.calendar-top .eyebrow{display:none}.calendar-top{margin-bottom:15px}.calendar-top h2{font-size:22px}.calendar-nav .icon-button{width:36px;height:36px}.calendar-card{padding:19px}.month-overview{margin-bottom:18px}.muted{font-size:11px}.month-overview strong{font-size:28px}.month-detail{font-size:10px;gap:6px}.weekdays{font-size:11px}.day-number{font-size:14px}.day-value{font-size:9px}.calendar-day{min-height:52px}.calendar-key{font-size:8px;gap:11px;color:#7c896f}.calendar-key span:last-child{font-size:8px;margin-left:0;flex:1 0 100%;justify-content:center}.day-heading .eyebrow{font-size:9px}.entries-heading h3{font-size:14px}.entries-heading .text-button{font-size:12px}.income-card-top{font-size:13px}.income-formula{font-size:11px}.daily-stats span{font-size:11px}.daily-stats strong{font-size:17px}.entry-name{font-size:14px}.entry-meta{font-size:11px}.empty-state h4{font-size:14px}.empty-state p{font-size:12px}.add-turn{position:fixed;left:50%;transform:translateX(-50%);width:calc(100% - 40px);max-width:480px;bottom:calc(15px + env(safe-area-inset-bottom));font-size:15px;margin:0;min-height:53px;box-shadow:0 6px 24px #244e3c30}.add-turn:active{transform:translateX(-50%) scale(.98)}.add-turn .button-date{font-size:12px}.app-footer{margin-bottom:0;gap:10px}.app-footer,.app-footer .text-button{font-size:9px}.service-option{font-size:12px}.money-fields>label,.service-fieldset legend,.note-label{font-size:13px}.form-total span{font-size:13px}.form-total small{font-size:10px}.form-actions .button{font-size:14px}.share-presets button{font-size:14px}.setting-title{font-size:14px}.settings-description{font-size:12px}.backup-actions .button{font-size:12px}.setting-hint{font-size:12px}.backup-section>p{font-size:12px}.backup-section h3{font-size:14px}
}
@media(max-width:360px){.page-intro h1{font-size:21px}.month-detail{font-size:9px}.calendar-card{padding:15px}.calendar-day{min-height:49px}.day-value{font-size:8px}.add-turn{width:calc(100% - 28px)}.money-fields>label{font-size:12px}}
.turn-settings{border:0;border-top:1px solid var(--line);padding:21px 0 0;margin:22px 0 0;min-width:0}.turn-settings legend{float:left;width:100%;font-size:14px;font-weight:600;margin:0 0 8px;padding:0}.turn-settings .settings-description{clear:both;margin:0 0 13px}.turn-settings .setting-hint{margin:12px 0 0}.turn-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.turn-options label{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:70px;padding:12px 4px;border:1px solid #e1e7d8;border-radius:12px;cursor:pointer}.turn-options input{position:absolute;width:1px;height:1px;opacity:0}.turn-options strong{font-size:14px;font-weight:600}.turn-options small{font-size:10px;color:#819176}.turn-options label:has(input:checked){border-color:var(--green);background:#edf3e7;box-shadow:inset 0 0 0 .5px var(--green)}.turn-options label:has(input:focus-visible){outline:3px solid #c49262;outline-offset:3px}.appointment-control{margin:-8px 0 22px}.form-turn-summary{font-size:12px;line-height:1.5;color:var(--green);margin:8px 2px 0}.appointment-choice{display:flex;align-items:center;gap:10px;padding:13px 14px;margin:0;border:1px solid var(--line);border-radius:12px;cursor:pointer;background:#fafbf7}.appointment-choice input{width:18px;height:18px;margin:0;accent-color:var(--green);flex-shrink:0}.appointment-copy{flex:1;min-width:0}.appointment-copy strong{display:block;font-size:13px;font-weight:600}.appointment-copy small{display:block;font-size:10px;color:#819176;margin-top:4px}.turn-preview{font-size:12px;font-weight:600;color:#758469;white-space:nowrap}.appointment-choice:has(input:checked){background:#edf3e7;border-color:#bccdab}.appointment-choice:has(input:checked) .turn-preview{color:var(--green)}.entry-title-row{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.entry-turn-badge{font-size:9px;line-height:1.4;white-space:nowrap;border-radius:5px;padding:2px 5px;color:#6d805b;background:#f0f4e9}.entry-title-row .entry-name{min-width:0}
.phone-install{border-top:1px solid var(--line);margin-top:26px;padding-top:20px}.phone-install h3{font-size:14px;font-weight:600;margin:0 0 9px}.phone-install>p{font-size:12px;line-height:1.75;color:#76866b;margin:0 0 13px}.phone-install .offline-status{background:#f4f6ef;padding:12px 13px;border-radius:10px;font-size:11px;color:#879276}.phone-install .offline-status.ready{background:#edf4e6;color:var(--green)}.phone-install .button{margin:0 0 13px;font-size:13px}.install-guide{border:1px solid var(--line);border-radius:11px;padding:13px}.install-guide summary{font-size:12px;font-weight:600;cursor:pointer}.install-guide p{font-size:12px;line-height:1.8;color:#7a896e;margin:12px 0 0}.install-guide strong{color:var(--ink)}.phone-install .phone-data-note{font-size:10px;margin:13px 0 0}
[hidden]{display:none!important}.auth-gate{min-height:100dvh;display:grid;place-items:center;padding:28px 20px}.auth-card{width:100%;max-width:410px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:32px;box-shadow:var(--shadow)}.auth-mark{display:grid;place-items:center;width:50px;height:50px;border-radius:16px;background:var(--green);color:#eaf0d4;font-size:28px;margin-bottom:24px}.auth-card h1{font-size:34px;margin:0 0 12px;letter-spacing:-1px}.auth-card>p{font-size:14px;color:var(--muted);line-height:1.7}.auth-card .eyebrow{font-size:9px}.auth-card label{display:block;font-size:13px;font-weight:600;margin:28px 0 10px}.auth-card input{width:100%;min-height:52px;background:#fafbf7;border:1px solid #dfe5d9;border-radius:12px;padding:13px;font-size:16px;color:var(--ink)}.auth-card .button{margin-top:14px}.auth-card small{display:block;font-size:11px;line-height:1.7;color:#7a8775}.auth-card .error-message{font-size:12px;color:#a04f39}.auth-code-actions{display:flex;justify-content:space-between;gap:12px;margin-top:14px}.auth-code-actions .text-button:disabled{opacity:.45}.cloud-section{border-bottom:1px solid var(--line);padding:0 0 22px;margin-bottom:24px}.cloud-section h3{font-size:15px;margin:0 0 12px}.cloud-section p{font-size:12px;line-height:1.7;overflow-wrap:anywhere}.cloud-section #accountEmail{font-size:13px;font-weight:600}.cloud-section #cloudStatus{padding:11px 13px;background:var(--pale);color:var(--green);border-radius:10px}.cloud-section small{font-size:10px;color:var(--muted);line-height:1.6}.cloud-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.cloud-section .error-message{color:#a04f39}.legacy-migration{padding:13px;border:1px dashed #bbc9b1;border-radius:12px;margin-top:18px}.legacy-migration p{margin-top:0}.cloud-conflict{padding:14px;margin-top:12px;border:1px solid #d9bd9c;border-radius:12px;background:#fdf9f2}.cloud-conflict strong{font-size:13px}.cloud-conflict .button{margin:3px 6px 0 0}.logout-sheet{max-width:440px;padding:28px}.logout-sheet h2{font-size:20px}.logout-sheet p{font-size:13px;line-height:1.8}.logout-sheet .button{margin-top:10px}.cloud-quick{font-size:10px;max-width:90px;text-align:right;line-height:1.4}@media(max-width:390px){.header-actions{gap:6px}.cloud-quick{max-width:62px;font-size:9px}.auth-card{padding:25px}}
