/* Macha guided onboarding and daily record UI. */
:root{--action:#242620;--ink-strong:#242620;--ink:#242620;--muted:#706f65;--paper:#f8f7f2;--wash:#f3f1e7;--line:#deded4;--accent-soft:#fcf5cf;--radius:18px;font-family:'Apple SD Gothic Neo','Noto Sans KR',Arial,sans-serif}
body{background:var(--paper);color:#242620}button,input,select{font:inherit}button{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b7833d;outline-offset:4px}
[hidden]{display:none!important}
.button,.google-button{border-radius:14px;font-weight:800;border:2px solid transparent;border-bottom:5px solid #242620;background:#242620;color:#fff;letter-spacing:.1px;min-height:50px;box-shadow:none;transition:transform .12s,border-width .12s}
.button:active:not(:disabled){transform:translateY(3px);border-bottom-width:2px}.button:hover{background:#3c3a32}.button:disabled{background:#deded4;border-color:#deded4;color:var(--muted);opacity:1}
.button.secondary{background:#fff;border:2px solid #deded4;border-bottom-width:5px;color:#777}.button.secondary:hover{background:#f7f7f7}.text-button{color:#242620;font-weight:800}.icon{opacity:.85}.card{border:2px solid #deded4;box-shadow:0 3px 0 #deded4;border-radius:18px;background:white}
.sidebar{background:white;border-right:2px solid #deded4}.brand,.logo{color:#242620!important;font-weight:900;letter-spacing:-1.5px}.nav-button{border:2px solid transparent;border-radius:14px;font-weight:800}.nav-button[aria-current=page]{border-color:#d4c464;background:#f3f1e7;color:#242620}.topbar h1{font-weight:850}.member-budget-inputs input,.form-field input,.form-field select{border:2px solid #deded4;background:#f7f7f7;border-radius:12px;min-height:50px}.form-field label{font-weight:800}dialog{border:2px solid #deded4;box-shadow:0 8px 0 #d6d6d6;max-width:calc(100vw - 28px)}dialog::backdrop{background:#24262077}.plan-start-card{border-color:#e1d6a5;background:#f3f1e7}.member-calendar button[aria-pressed=true]{border-color:#242620;background:#f8efb8}.recurring-presets button{min-height:48px}.tag{border-radius:10px}.month-toolbar{border-bottom:2px solid #deded4;padding-bottom:16px}
#steps-launcher{position:fixed;bottom:22px;left:18px;width:165px;z-index:25;display:grid;gap:7px}#steps-launcher button{font-size:12px;padding:10px}#steps-launcher small{text-align:center;color:#888;font-size:10px}.prototype-banner{margin-bottom:22px;border:2px solid #e1d6a5;border-radius:18px;padding:20px 24px;background:#f3f1e7;display:flex;justify-content:space-between;align-items:center;gap:20px}.prototype-banner strong{font-size:20px}.prototype-banner p{margin:6px 0;color:#706f65}.prototype-path{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 24px}.prototype-path button{display:flex;align-items:center;gap:12px;padding:18px;border:2px solid #deded4;border-bottom-width:5px;border-radius:16px;text-align:left;background:#fff;color:#555}.prototype-path button img{width:28px;height:28px}.prototype-path small{display:block;font-size:11px;color:var(--muted);margin-top:4px}
#steps-overlay{position:fixed;inset:0;background:var(--paper);z-index:100;display:flex;flex-direction:column;overflow:auto}body.steps-open{overflow:hidden}body.steps-open #ledger-shell,body.steps-open #auth-shell{visibility:hidden}
.steps-top{max-width:1100px;margin:auto;width:calc(100% - 64px);display:flex;align-items:center;gap:22px;min-height:104px;flex-shrink:0}.steps-brand{font-size:31px;font-weight:950;letter-spacing:-2px;color:#242620}.steps-pill{font-size:10px;letter-spacing:1.2px;color:var(--muted);font-weight:800;border:1px solid #deded4;border-radius:6px;padding:5px 7px}.steps-top .later{margin-left:auto;border:0;background:transparent;font-weight:800;color:var(--muted);font-size:13px}.steps-track{max-width:760px;width:calc(100% - 48px);margin:10px auto 0;display:flex;align-items:center;gap:20px}.steps-track button{background:transparent;border:0;width:32px;height:32px;padding:5px}.steps-track img{width:22px;height:22px}.steps-track progress{appearance:none;border:0;height:14px;border-radius:10px;width:100%;overflow:hidden;background:#deded4}.steps-track progress::-webkit-progress-bar{background:#deded4;border-radius:10px}.steps-track progress::-webkit-progress-value{background:#8d8f62;border-radius:10px;transition:width .3s}.steps-count{font-size:12px;font-weight:800;color:var(--muted);white-space:nowrap}
.steps-body{max-width:600px;width:calc(100% - 40px);margin:36px auto 28px;flex:1;animation:step-in .2s ease-out}.steps-chapter{display:flex;justify-content:center;gap:24px;font-size:11px;font-weight:800;letter-spacing:.3px;color:var(--muted);margin:0 0 38px}.steps-chapter .active{color:#242620}.steps-kicker{text-align:center;color:#242620;font-size:12px;font-weight:850;margin:0 0 12px}.steps-body h1{font-size:30px;line-height:1.4;letter-spacing:-.8px;text-align:center;margin:0 0 14px;font-weight:850}.steps-sub{text-align:center;line-height:1.65;color:#706f65;font-size:14px;margin:0 0 28px}.steps-question{display:grid;gap:12px}.steps-options{display:grid;grid-template-columns:1fr 1fr;gap:13px}.steps-option{position:relative;cursor:pointer;display:flex;align-items:center;gap:15px;border:2px solid #deded4;border-bottom-width:5px;border-radius:17px;padding:23px 18px;min-height:103px;background:#fff;transition:background .15s,border-color .15s}.steps-option:hover{background:#f8f8f8}.steps-option:has(input:checked){background:#f8efb8;border-color:#8d8f62;color:#242620}.steps-option:has(input:focus-visible){outline:3px solid #b7833d;outline-offset:3px}.steps-option input{position:absolute;opacity:0;width:1px;height:1px}.steps-option img{width:33px;height:33px;flex-shrink:0}.steps-option strong{font-size:16px;font-weight:850}.steps-option small{display:block;font-size:11px;line-height:1.6;color:var(--muted);margin-top:6px}.steps-option .choice-check{width:20px;height:20px;margin-left:auto;opacity:0}.steps-option:has(input:checked) .choice-check{opacity:1}.steps-one-col{grid-template-columns:1fr}.steps-option:has(input:checked) small{color:var(--muted)}.steps-input{display:block;margin-top:12px}.steps-input>span{display:block;font-size:13px;font-weight:800;margin-bottom:10px}.steps-input input,.steps-input select{width:100%;min-height:60px;border:2px solid #deded4;border-bottom-width:4px;border-radius:14px;background:#f8f8f8;color:#4b4b4b;padding:15px;font-size:20px;font-weight:700;box-sizing:border-box}.steps-input select{font-size:16px}.steps-money{display:flex;position:relative;align-items:center}.steps-money input{padding-right:50px;text-align:right;font-size:32px}.steps-money>span{position:absolute;right:18px;font-size:18px;font-weight:800;color:var(--muted)}.steps-help{font-size:12px;color:var(--muted);line-height:1.7;margin:14px 0;text-align:center}.steps-chips{display:flex;gap:8px;justify-content:center;margin-top:16px;flex-wrap:wrap}.steps-chips button{background:#fff;border:2px solid #deded4;border-bottom-width:4px;border-radius:11px;padding:10px 15px;color:#777;font-weight:800;font-size:12px}.steps-error{color:#d24f4f;text-align:center;font-size:13px;min-height:20px;margin:10px 0}.steps-footer{border-top:2px solid #deded4;flex-shrink:0;padding:22px 28px;background:var(--paper);position:sticky;bottom:0}.steps-footer-inner{max-width:850px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.steps-footer .button{min-width:170px;padding:12px 27px}.steps-footer small{color:var(--muted);font-size:12px;line-height:1.7}.steps-reward{display:block;width:78px;height:78px;padding:21px;border-radius:24px;background:#f3f1e7;margin:0 auto 20px}.steps-review{display:grid;gap:12px}.steps-review>div{border:2px solid #deded4;border-radius:15px;padding:17px 20px;display:flex;align-items:center;justify-content:space-between}.steps-review strong{font-size:24px;color:#242620}.steps-review span{color:#888;font-size:13px}.steps-link{display:block;margin:20px auto 0;border:0;background:transparent;color:var(--muted);font-size:12px;font-weight:800}.steps-feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.steps-feature-grid button{padding:20px;display:flex;align-items:center;gap:14px;background:white;border:2px solid #deded4;border-bottom-width:5px;border-radius:15px;text-align:left;font-weight:800}.steps-feature-grid img{width:28px;height:28px}.steps-feature-grid small{display:block;color:var(--muted);font-weight:400;line-height:1.6;font-size:11px;margin-top:5px}
@keyframes step-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.steps-top{min-height:76px;width:calc(100% - 36px);gap:12px}.steps-brand{font-size:27px}.steps-pill{display:none}.steps-top .later{font-size:12px}.steps-body{margin-top:25px}.steps-body h1{font-size:25px}.steps-chapter{margin-bottom:28px;gap:16px}.steps-options{grid-template-columns:1fr}.steps-option{min-height:83px;padding:17px 19px}.steps-sub{margin-bottom:22px}.steps-footer{padding:16px 20px}.steps-footer-inner{display:grid;grid-template-columns:1fr}.steps-footer small{display:none}.steps-footer .button{width:100%}.steps-track{margin-top:0}.steps-track progress{height:12px}.steps-feature-grid{grid-template-columns:1fr}.prototype-path{grid-template-columns:1fr}.prototype-path button{padding:13px 17px}.prototype-banner{display:block;padding:18px}.prototype-banner .button{width:100%;margin-top:12px}#steps-launcher{position:static;margin:12px 20px 86px;width:auto;display:flex;justify-content:center;flex-wrap:wrap}#steps-launcher small{width:100%}.steps-option .choice-check{opacity:.25}.steps-option:has(input:checked) .choice-check{opacity:1}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
#steps-title:focus{outline:none}
.steps-open #steps-launcher{visibility:hidden}
.quick-entry-dialog{width:520px}.quick-entry-intro{margin:4px 0 24px}.quick-entry-progress{font-size:12px;color:var(--action);font-weight:800;margin-bottom:12px}.quick-entry-intro h3{font-size:25px;margin-bottom:9px;letter-spacing:-.7px}.quick-entry-intro>p:last-child{font-size:13px;color:var(--muted);line-height:1.6}.quick-entry-panel #entry-amount{font-size:32px;min-height:76px}.quick-entry-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.quick-entry-category{padding:19px 12px;background:#fff;border:2px solid var(--line);border-bottom-width:4px;border-radius:14px;text-align:left;font-weight:800}.quick-entry-category:hover{background:var(--wash);border-color:#8d8f62}.quick-entry-actions{display:flex;justify-content:space-between;gap:12px;margin-top:24px}.quick-entry-actions .button:last-child{margin-left:auto;min-width:150px}.quick-entry-summary{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:15px;background:var(--wash);border-radius:14px;margin-bottom:22px}.quick-entry-summary strong{font-size:24px;color:var(--action)}.quick-entry-summary span{font-size:13px}.quick-entry-summary button{margin-left:auto}.quick-entry-panel .dialog-actions .button{width:100%}.quick-entry-panel .entry-type{margin-bottom:22px}
.quick-entry-repeat{border:2px solid var(--line);border-radius:14px;padding:16px;margin:18px 0}.quick-entry-repeat legend{font-weight:800;font-size:15px;padding:0 5px}.quick-entry-repeat label{display:flex;align-items:center;gap:10px;padding:14px 4px;cursor:pointer}.quick-entry-repeat input{accent-color:var(--action);width:18px;height:18px;flex-shrink:0}
.steps-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.steps-days button{border:2px solid var(--line);border-bottom-width:4px;background:white;border-radius:12px;min-height:50px;font-weight:800;font-size:13px}.steps-days button:hover,.steps-days button[aria-pressed=true]{background:var(--wash);border-color:#8d8f62}.salary-preview{border:2px solid var(--line);border-radius:18px;padding:22px;background:var(--wash);margin-top:24px}.salary-preview h2{font-size:18px;margin-bottom:12px}.salary-preview p,.salary-preview small{font-size:12px;line-height:1.7;color:var(--muted)}.salary-preview>div{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.salary-preview small{display:block;margin-top:14px}@media(max-width:420px){.steps-days{grid-template-columns:repeat(5,minmax(0,1fr))}}
.steps-open .skip-link{display:none}.home-salary{margin:0 0 24px}.home-salary>.text-button+.text-button{margin-left:16px}
.subscription-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}.subscription-service-card{display:flex;align-items:center;gap:12px;border:2px solid var(--line);border-bottom-width:4px;border-radius:14px;background:white;padding:18px;text-align:left;min-height:86px}.subscription-service-card:hover{background:var(--wash);border-color:#8d8f62}.subscription-service-card img{object-fit:contain;flex-shrink:0}.subscription-service-card small{display:block;color:var(--muted);font-size:12px;margin-top:6px}.subscription-service-card strong{overflow-wrap:anywhere}.subscription-service-card span{min-width:0}@media(max-width:480px){.subscription-service-grid{grid-template-columns:1fr}}
.expense-confetti{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:10000}@media(prefers-reduced-motion:reduce){.expense-confetti{display:none}}

/* gimmoney identity: retain the calendar and guided flows, highlight decisions. */
:root{--brand-yellow:#f5e16b;--brand-soft:#fcf5cf;--brand-ink:#242620}
.brand,.steps-brand{font-family:Arial,sans-serif;font-weight:900;letter-spacing:-2px;color:var(--brand-ink)!important;white-space:nowrap}
.brand-area .brand{font-size:29px}.brand-dot{color:#706f65}.mobile-brand{font-size:29px}
.auth-preview{background:var(--brand-ink);color:var(--paper);border:0}.auth-preview strong{color:var(--brand-yellow)}
.auth-intro h1{font-weight:800;letter-spacing:-2px}.brand-highlight{font-style:normal;background:var(--brand-yellow);box-decoration-break:clone;-webkit-box-decoration-break:clone;padding:0 5px 3px;margin-left:-5px}
.auth-card{box-shadow:0 8px 30px #24262006;border-radius:18px}.auth-benefits .category-icon{background:var(--brand-soft);border:0}
.sidebar{background:#f3f2eb;border-right:1px solid var(--line)}.sidebar-note{border-color:var(--line)}
.nav-button[aria-current=page]{background:var(--brand-yellow);color:var(--brand-ink);border-color:transparent}.nav-button:hover{background:#f4edc1}
.button{background:var(--brand-ink);border:1px solid var(--brand-ink);border-radius:10px;min-height:48px;box-shadow:none;font-weight:700}
.button:active:not(:disabled){transform:translateY(1px);border-bottom-width:1px}.button:hover{background:#3c3a32}
.button.secondary{background:white;border:1px solid var(--line);color:var(--brand-ink)}.button.soft{background:#f3f1e7;border-color:var(--line);color:var(--brand-ink)}
.card{border:1px solid var(--line);box-shadow:none}.month-toolbar{border-bottom:1px solid var(--line)}
.calendar-summary>button{background:#fcf7dc;border-radius:10px;padding:12px 18px}.calendar-budget{background:#f7efc1}
.member-calendar [aria-current=date] strong{background:var(--brand-ink);color:white}
.calendar-main .member-calendar [aria-pressed=true]{background:#fcf7dc;box-shadow:inset 0 0 0 2px var(--brand-ink)}
.steps-option:has(input:checked){background:#fcf7dc;border-color:#a39445;color:var(--brand-ink)}
.steps-track progress::-webkit-progress-value{background:var(--brand-ink)}.steps-track progress::-moz-progress-bar{background:var(--brand-ink)}
.steps-reward{background:var(--brand-yellow)}.steps-footer{border-top:1px solid var(--line)}
.prototype-banner{background:var(--brand-yellow);border:0;border-radius:14px}.prototype-banner p{color:#58564d}
.prototype-path button{border:1px solid var(--line);border-radius:12px}.prototype-path button:active{border-bottom-width:1px}
.plan-start-card{background:#fcf7dc;border-color:#e1d6a5}
@media(min-width:761px) and (max-width:980px){.brand-area .brand{font-size:13px;letter-spacing:-.8px}}
@media(max-width:760px){.auth-header .brand{font-size:30px}.steps-brand{font-size:27px}.calendar-summary>button{padding:8px 5px}.auth-preview{justify-content:center}}
@media(prefers-reduced-motion:reduce){.button{transition:none}}

/* Shared brand roles for every flow, including dialogs and mobile navigation. */
:root{--ink:#242620;--ink-strong:#242620;--action:#242620;--paper:#f8f7f2;--wash:#f1efe7;--line:#dedbd0;--muted:#706f65;--accent:#f5e16b;--accent-soft:#fcf5cf;--brand-soft:var(--accent-soft)}
.brand-dot{color:var(--ink)}
.auth-benefits .category-icon,.goal-symbol,.steps-reward{background:var(--accent-soft);color:var(--ink)}
.nav-button[aria-current=page],.nav-button[aria-current=page]:hover,.mobile-nav button[aria-current=page]{background:var(--accent);color:var(--ink)}
.nav-button:hover{background:var(--accent-soft)}
.sidebar-note .icon,.auth-benefits .icon,.goal-symbol .icon,.steps-reward .icon{opacity:1}
.hero .tag{background:#414238;color:var(--accent)}.hero-title,.hero-subtitle,.hero-bottom{color:#e8e5d9}.hero-bottom{border-color:#55564b}.hero-bottom strong{color:white}
.budget-track{background:#55564b}.budget-track .spent{background:var(--accent)}.budget-track .reserved{background:#a9a79b}.budget-legend{color:#e8e5d9}
.progress{background:var(--wash)}.progress>span,.insight-card .progress span{background:var(--ink)}.insight-card .progress{background:#e6dec0}
.day-bar button{background:var(--accent)}.goal-symbol{border:1px solid #e8db95}
.policy-tile.featured{border-color:var(--line)}.policy-tile .policy-fit-note,.policy-ledger-context,.income-summary{background:var(--accent-soft);color:var(--ink)}
.policy-fit-note strong,.policy-result-status,.policy-helper,.policy-source{color:var(--muted)}
.bookmark[aria-pressed=true],.recurring-presets [aria-pressed=true]{background:var(--accent);border-color:var(--ink);color:var(--ink)}
.quick-entry-category:hover,.subscription-service-card:hover{border-color:var(--ink);background:var(--accent-soft)}
.steps-option:has(input:checked),.steps-days button[aria-pressed=true]{border-color:var(--ink);background:var(--accent-soft);color:var(--ink)}
.steps-option:has(input:checked) small{color:var(--muted)}
input[type=checkbox],input[type=radio],progress{accent-color:var(--ink)}
.goal-card progress{appearance:none;border:0;background:var(--wash);border-radius:8px;overflow:hidden}
.goal-card progress::-webkit-progress-bar{background:var(--wash)}.goal-card progress::-webkit-progress-value{background:var(--ink)}.goal-card progress::-moz-progress-bar{background:var(--ink)}
.toast{background:var(--ink);color:white}
