:root{font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,system-ui,sans-serif;color:#49372F;background:#F7F3EC;font-size:16px;font-synthesis:none;color-scheme:light;--ink:#49372F;--green:#49372F;--lime:#D2B987;--line:#E2D9CE;--soft:#EEF0E9;--muted:#756D66;--red:#A85B54;--sage:#AAB9A1;--gold:#D2B987}*{box-sizing:border-box}body{margin:0;line-height:1.6}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #b3ca5c;outline-offset:2px}.top{height:76px;max-width:1120px;margin:auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-size:19px;font-weight:800;display:flex;align-items:center;gap:11px}.brand span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:var(--green);color:white;font-size:22px}.privacy{font-size:12px;color:var(--muted);border:1px solid var(--line);background:white;border-radius:99px;padding:5px 11px}.nav{max-width:1120px;margin:auto;padding:14px 28px 0;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.nav button{border:0;background:transparent;padding:9px 14px;border-radius:10px;white-space:nowrap;font-size:14px;color:var(--muted)}.nav button.active{background:var(--green);color:white;font-weight:700}main{max-width:1120px;margin:auto;padding:30px 28px 48px;min-height:calc(100vh - 210px)}footer{max-width:1120px;margin:auto;padding:20px 28px 35px;text-align:center;color:var(--muted);font-size:12px;border-top:1px solid var(--line)}h1{font-size:30px;line-height:1.25;letter-spacing:-.04em;margin:0}h2{font-size:18px;margin:0}h3{font-size:15px;margin:0}p{margin:0}.eyebrow{color:var(--muted);font-size:13px;margin-bottom:4px}.page-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:24px}.month-control{display:flex;align-items:center;gap:3px}.month-control input{border:0;background:transparent;text-align:center;width:150px;min-height:42px;font-weight:700}.icon-btn{border:0;background:transparent;border-radius:9px;width:38px;height:42px;font-size:25px}.icon-btn:hover{background:var(--soft)}.summary{display:grid;grid-template-columns:1.35fr 1fr 1fr;border-radius:20px;overflow:hidden;background:white;border:1px solid var(--line);margin-bottom:24px}.summary>div{padding:24px 27px}.summary .net{background:var(--green);color:white}.summary p{font-size:13px;color:var(--muted)}.summary .net p,.summary .net small{color:#cddbd6}.summary strong{display:block;font-size:31px;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.summary small{font-size:12px}.summary .metric:last-child{border-left:1px solid var(--line)}.grid{display:grid;grid-template-columns:1.3fr .7fr;gap:22px;align-items:start}.stack{display:grid;gap:22px}.card{background:white;border:1px solid var(--line);border-radius:18px;padding:24px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:19px}.muted{color:var(--muted);font-size:13px}.btn{border:0;border-radius:11px;min-height:44px;padding:10px 16px;font-weight:700}.btn.primary{background:var(--green);color:white}.btn.accent{background:var(--lime);color:#23351a}.btn.secondary{background:var(--soft)}.btn.danger{background:#f9eaea;color:var(--red)}.btn.full{width:100%}.text-btn{border:0;background:transparent;padding:6px;color:#48645e;text-decoration:underline;text-underline-offset:3px;font-size:13px}.empty{text-align:center;padding:35px 12px;color:var(--muted)}.empty-mark{display:grid;place-items:center;width:50px;height:50px;margin:0 auto 14px;border-radius:15px;background:#edf3dc;color:#516525;font-size:24px}.empty strong{display:block;color:var(--ink);margin-bottom:5px}.entry{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px 0;border-top:1px solid #edf0eb}.entry:first-child{border-top:0;padding-top:0}.entry:last-child{padding-bottom:0}.entry-mark{width:42px;height:42px;border-radius:12px;background:#edf3ef;display:grid;place-items:center;font-weight:800;color:#31594f}.entry-name{font-weight:700;font-size:14px;overflow-wrap:anywhere}.entry-meta{font-size:12px;color:var(--muted)}.entry-amount{text-align:right;font-weight:800;font-variant-numeric:tabular-nums}.income{color:#147158}.bar-row{margin-top:16px}.bar-label{display:flex;justify-content:space-between;gap:12px;font-size:13px;margin-bottom:6px}.track{height:9px;border-radius:20px;background:#edf0eb;overflow:hidden}.fill{height:100%;background:#87a83f;border-radius:20px}.fill.over{background:#d36a60}.quick-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:block;font-size:13px;font-weight:700}.field input,.field select{display:block;width:100%;margin-top:6px;border:1px solid #ccd6cf;border-radius:10px;min-height:44px;padding:9px 11px;background:white;font-size:16px}.field.wide{grid-column:1/-1}.segmented{display:flex;padding:4px;background:var(--soft);border-radius:10px;grid-column:1/-1}.segmented label{flex:1;position:relative}.segmented input{position:absolute;opacity:0}.segmented span{display:block;padding:7px;text-align:center;border-radius:8px;font-size:14px}.segmented input:checked+span{background:white;font-weight:800;box-shadow:0 1px 5px #17372d14}.segmented input:focus-visible+span{outline:3px solid #b3ca5c}.status{min-height:20px;font-size:13px;color:#147158;margin-top:8px}.notice{padding:13px 15px;border-radius:11px;background:#fff3e8;color:#8b481e;font-size:13px;margin-bottom:18px}.import-intro{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:22px}.source-card{border:1px solid var(--line);border-radius:15px;padding:19px;background:#fafbf8}.source-card h3{font-size:16px;margin-bottom:4px}.source-tag{display:inline-block;margin-top:12px;font-size:12px;border-radius:99px;background:var(--soft);padding:4px 9px}.dropzone{border:2px dashed #aebbb1;border-radius:16px;padding:34px 18px;text-align:center;background:#fbfcfa}.dropzone.drag{background:#f0f5df;border-color:#86a03d}.dropzone input{display:block;max-width:100%;margin:15px auto}.steps{display:flex;gap:8px;margin-bottom:24px;counter-reset:step}.step{flex:1;font-size:12px;color:var(--muted);border-top:4px solid var(--line);padding-top:7px}.step.active{border-color:var(--green);color:var(--green);font-weight:800}.review-list{display:grid;gap:10px}.review-row{display:grid;grid-template-columns:90px minmax(150px,1fr) 120px 170px;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;padding:13px}.review-row.unresolved{border-color:#e2a06b;background:#fffaf5}.review-row.duplicate{opacity:.6}.review-row select{border:1px solid #ccd6cf;border-radius:9px;padding:8px;background:white;width:100%}.review-name{font-weight:700;overflow-wrap:anywhere}.review-date,.review-amount{font-size:13px}.review-amount{text-align:right;font-weight:800}.learn{font-size:11px;color:var(--muted);display:flex;gap:5px;margin-top:4px}.review-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.result-box{padding:22px;border-radius:14px;background:#eff4de;text-align:center;margin-bottom:18px}.result-box strong{display:block;font-size:30px}.budget-edit{display:grid;grid-template-columns:1fr 150px;gap:12px;align-items:center;padding:11px 0;border-top:1px solid #edf0eb}.budget-edit:first-child{border-top:0}.budget-edit input{border:1px solid #ccd6cf;border-radius:9px;padding:8px 10px;text-align:right;width:100%;font-size:16px}.rule{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:13px 0;border-top:1px solid #edf0eb}.rule:first-child{border-top:0}.rule strong{font-size:14px}.rule span{font-size:13px;color:var(--muted)}.rule-form{display:grid;grid-template-columns:1fr 180px auto;gap:10px;margin-top:18px}.rule-form input,.rule-form select{border:1px solid #ccd6cf;border-radius:10px;padding:9px;background:white;min-width:0}.table-wrap{overflow-x:auto}.pl{width:100%;border-collapse:collapse}.pl th,.pl td{text-align:left;padding:10px;border-bottom:1px solid #edf0eb;font-size:14px}.pl td:last-child,.pl th:last-child{text-align:right}.pl .total{font-weight:800}.error{color:var(--red);font-size:13px;margin-top:9px}dialog{border:1px solid var(--line);border-radius:18px;max-width:calc(100% - 32px);width:430px;padding:25px;color:var(--ink);box-shadow:0 25px 100px #12251f40}dialog::backdrop{background:#102a2460}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:21px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:780px){.top{height:70px;padding:0 16px}.brand{font-size:16px}.brand span{width:33px;height:33px}.privacy{font-size:10px;padding:4px 7px}.nav{padding:11px 16px 0}.nav button{padding:8px 12px}main{padding:24px 16px 38px}.page-head{align-items:start;margin-bottom:20px}h1{font-size:25px}.month-control input{width:130px;font-size:14px}.month-control .icon-btn{width:28px}.summary{grid-template-columns:1fr 1fr;border-radius:17px}.summary .net{grid-column:1/-1}.summary>div{padding:18px 20px}.summary strong{font-size:25px}.summary .net strong{font-size:35px}.grid{grid-template-columns:1fr}.card{padding:20px}.import-intro{grid-template-columns:1fr}.review-row{grid-template-columns:75px minmax(120px,1fr) 100px}.review-row>div:last-child{grid-column:1/-1}.quick-form{grid-template-columns:1fr}.field.wide,.segmented{grid-column:auto}.rule-form{grid-template-columns:1fr}.rule{grid-template-columns:1fr auto}.rule span{grid-column:1}.steps{gap:4px}.step{font-size:10px}.entry{grid-template-columns:38px minmax(0,1fr) auto}.entry-mark{width:38px;height:38px}footer{padding:18px 16px 30px}}
.report-table th{color:var(--muted);font-size:12px}.report-table .total{background:#f2f5f1}.report-table .grand-total{background:var(--green);color:white;font-weight:800}.category-link{border:0;background:transparent;padding:5px 0;font-weight:700;text-align:left;width:100%;display:flex;justify-content:space-between}.category-link span{color:var(--muted);font-size:18px}.category-link:hover{color:#557326}.save-goals{margin-top:20px}.detail-summary{display:grid;grid-template-columns:1fr 1fr;background:var(--soft);border-radius:13px;margin:12px 0 17px}.detail-summary>div{padding:14px}.detail-summary>div+div{border-left:1px solid var(--line)}.detail-summary span{display:block;font-size:12px;color:var(--muted)}.detail-summary strong{display:block;font-size:18px}.detail-list{margin-top:20px;max-height:45vh;overflow:auto}.detail-row{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-top:1px solid #edf0eb}.detail-row strong{display:block;font-size:14px}.detail-row span{display:block;font-size:12px;color:var(--muted)}.detail-row b{white-space:nowrap;font-size:14px}dialog{width:520px}
.record-tabs{display:flex;gap:8px;margin-bottom:18px}.receipt-picker{display:grid;justify-items:center;gap:16px}.receipt-file{width:100%;border:2px dashed #aebbb1;border-radius:16px;padding:28px;text-align:center;background:#fbfcfa}.receipt-file strong,.receipt-file span{display:block}.receipt-file input{display:block;max-width:100%;margin:14px auto 0}.receipt-picker img{display:block;max-width:min(100%,420px);max-height:480px;object-fit:contain;border-radius:12px;border:1px solid var(--line)}.receipt-rotate{display:flex;gap:8px}.receipt-result{display:grid;grid-template-columns:minmax(220px,.75fr) 1.25fr;gap:24px;align-items:start}.receipt-result>img{width:100%;max-height:620px;object-fit:contain;border:1px solid var(--line);border-radius:12px;background:var(--soft)}@media(max-width:780px){.record-tabs .btn{flex:1}.receipt-result{grid-template-columns:1fr}.receipt-result>img{max-height:360px}}
.receipt-steps{margin:0 0 24px}.receipt-edit-list{display:grid;gap:18px}.receipt-edit{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.7fr);gap:22px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff;align-items:start}.receipt-edit.unresolved{border-color:#d5a34a;background:#fffaf0}.receipt-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.receipt-fields label{display:grid;gap:5px;font-size:12px;color:var(--muted)}.receipt-fields input,.receipt-fields select{width:100%}.receipt-fields p{align-self:end;margin:0}.receipt-side{display:grid;gap:10px;justify-items:center;position:sticky;top:12px}.receipt-side img{width:100%;height:330px;object-fit:contain;border-radius:10px;border:1px solid var(--line);background:var(--soft)}.zoom-control{display:flex;gap:12px;align-items:center}.zoom-control input{flex:1}.receipt-zoom-pane{height:min(68vh,760px);overflow:auto;border:1px solid var(--line);border-radius:12px;background:var(--soft);text-align:center}.receipt-zoom-pane img{max-width:none;height:auto;display:inline-block}@media(max-width:680px){.receipt-edit{grid-template-columns:1fr}.receipt-fields{grid-template-columns:1fr}.receipt-side{position:static}.receipt-side img{height:280px}.receipt-steps{overflow-x:auto}.receipt-steps .step{min-width:112px}}

.payment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.payment-card{display:grid;gap:5px;text-align:left;padding:17px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);cursor:pointer}.payment-card:hover{border-color:var(--accent)}.payment-card strong{font-size:22px}.payment-card small{color:var(--muted)}.metric.warning strong{color:#b15d29}.category-settings{margin-top:20px}.category-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px}.category-columns h3{margin-bottom:12px}.category-edit{display:grid;grid-template-columns:70px 1fr;align-items:center;gap:10px;margin-bottom:8px;font-size:12px;color:var(--muted)}.category-edit input{width:100%}.add-category{margin-top:8px}.save-categories{margin-top:20px}@media(max-width:680px){.category-columns{grid-template-columns:1fr}.payment-grid{grid-template-columns:1fr 1fr}}

.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.goal-chart{display:grid;gap:6px}.goal-row{display:block;width:100%;padding:14px;border:0;border-radius:12px;background:transparent;text-align:left;color:var(--ink);cursor:pointer}.goal-row:hover{background:var(--soft)}.goal-row-head,.goal-row-foot{display:flex;justify-content:space-between;gap:12px;align-items:center}.goal-row-head span{font-weight:700}.goal-row-head small,.goal-row-foot{color:var(--muted);font-size:12px}.goal-row .track{margin:9px 0 7px;height:10px}.income-fill{background:#5186a6!important}@media(max-width:850px){.report-grid{grid-template-columns:1fr}}@media(max-width:520px){.goal-row-head{align-items:flex-start;flex-direction:column;gap:3px}.goal-row-foot{gap:8px}}

.category-columns{grid-template-columns:minmax(0,1fr);max-width:760px}.category-columns>div,.category-edit{min-width:0}.category-edit{grid-template-columns:90px minmax(0,1fr);width:100%;padding:4px 0}.category-edit input{display:block;min-width:0;max-width:100%;padding:9px 10px;border:1px solid #ccd6cf;border-radius:9px;background:white}.category-columns>div+div{margin-top:18px;padding-top:22px;border-top:1px solid var(--line)}

.goal-row-title{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.goal-row-title>span{font-size:12px;color:var(--muted)}.compare-bars{display:grid;gap:10px}.compare-line{display:grid;grid-template-columns:62px 1fr;column-gap:8px;align-items:end}.compare-line>strong{text-align:right;font-size:13px}.compare-label{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.legend-dot{width:9px;height:9px;border-radius:3px}.target-dot{background:#4f7fc4}.actual-dot{background:#d26767}.compare-track{grid-column:1/-1;height:11px;background:#edf0eb;border-radius:20px;overflow:hidden;margin-top:4px}.compare-fill{height:100%;border-radius:20px;min-width:0}.target-bar{background:#4f7fc4}.actual-bar{background:#d26767}

/* Monéme brand */
body{background:#F7F3EC}.top{height:86px}.brand img{width:46px;height:46px;border-radius:13px;box-shadow:0 3px 12px #49372f28}.brand-copy{display:grid;line-height:1.15}.brand-copy b{font-family:Georgia,"Yu Mincho",serif;font-size:25px;letter-spacing:-.02em}.brand-copy small{margin-top:5px;color:var(--muted);font-size:10px;font-weight:500;letter-spacing:.03em}.privacy,.card,.summary,.source-card,.dropzone{background:#fffdf9}.btn.accent{color:#49372F}.summary .net p,.summary .net small{color:#E9DED5}.entry-mark{background:#E8ECE4;color:#5F725F}.empty-mark,.result-box{background:#F2E8D5;color:#745B3C}.fill{background:var(--sage)}.track,.compare-track{background:#ECE5DB}.step.active{border-color:var(--gold);color:var(--green)}.nav button.active{box-shadow:inset 0 -3px 0 var(--gold)}@media(max-width:780px){.top{height:78px}.brand img{width:40px;height:40px}.brand-copy b{font-size:21px}.brand-copy small{font-size:8px;max-width:210px}}@media(max-width:480px){.brand-copy small{display:none}.privacy{font-size:9px}}
.brand .brand-copy{display:grid;place-items:start;width:auto;height:auto;border-radius:0;background:transparent;color:var(--ink);font-size:inherit}.brand .brand-copy b{display:block;white-space:nowrap}.brand .brand-copy small{display:block;white-space:nowrap}

.import-help{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}.help-title{display:flex;gap:13px;align-items:center;margin-bottom:15px}.help-title>span{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:50%;background:var(--green);color:#fff;font-family:Georgia,serif;font-size:23px;font-weight:700}.help-title h2{font-size:17px}.help-guides{display:grid;gap:9px}.help-guides details{border:1px solid var(--line);border-radius:12px;background:#fffdf9;padding:0 15px}.help-guides summary{cursor:pointer;padding:14px 3px;font-weight:700;list-style-position:inside}.help-guides details[open] summary{border-bottom:1px solid var(--line)}.help-guides ol{margin:14px 0 10px;padding-left:24px;font-size:13px}.help-guides li+li{margin-top:5px}.help-guides a{display:inline-block;margin:0 0 15px;color:#6D5848;font-size:13px;font-weight:700;text-underline-offset:3px}.help-note{margin:0 0 8px;padding:9px 11px;border-radius:8px;background:#F3EBDD;color:var(--muted);font-size:12px}@media(min-width:820px){.help-guides{grid-template-columns:repeat(3,1fr)}.help-guides details[open]{grid-row:span 2}}

.header-actions{display:flex;align-items:center;gap:9px}.install-app{border:1px solid var(--gold);background:#fff8ec;color:var(--green);border-radius:99px;padding:6px 11px;font-size:12px;font-weight:700}.install-app:hover{background:#F2E8D5}@media(max-width:560px){.install-app{font-size:10px;padding:5px 8px}.header-actions{gap:5px}}
.nav .help-nav{margin-left:auto;border:1px solid var(--gold);background:#fffaf1;color:var(--ink);font-weight:700}.nav .help-nav:hover{background:#F2E8D5}.tutorial-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.tutorial-head h2{font-family:Georgia,"Yu Mincho",serif;font-size:25px}.tutorial-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:20px 0 26px}.tutorial-progress span{height:4px;border-radius:10px;background:var(--line)}.tutorial-progress span.active{background:var(--gold)}.tutorial-content{text-align:center;padding:0 12px 10px}.tutorial-mark{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 17px;border-radius:50%;background:var(--green);color:white;font-family:Georgia,serif;font-size:25px;font-weight:700;box-shadow:0 5px 16px #49372f2b}.tutorial-content h3{font-size:20px;margin-bottom:10px}.tutorial-content p{color:var(--muted);font-size:14px;line-height:1.8}.tutorial-link{border:0;background:transparent;margin-top:14px;color:#6D5848;font-weight:700;text-decoration:underline;text-underline-offset:4px}.tutorial-actions{display:flex;justify-content:space-between;gap:10px;margin-top:22px}.tutorial-actions .btn{min-width:105px}.tutorial-note{text-align:center;color:var(--muted);font-size:11px;margin-top:13px}@media(max-width:780px){.nav .help-nav{margin-left:0}.tutorial-head h2{font-size:22px}.tutorial-content{padding-inline:2px}.tutorial-content h3{font-size:18px}dialog{padding:20px}}
.nav .feedback-nav{margin-left:auto;border:1px solid var(--line);background:white;color:var(--ink);font-weight:700}.nav .feedback-nav:hover{background:var(--soft)}.nav .feedback-nav+.help-nav{margin-left:0}.feedback-content{text-align:center;padding:20px 12px 8px}.feedback-mark{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 16px;border-radius:50%;background:#E8ECE4;color:var(--green);font-size:25px}.feedback-content h3{font-size:20px;margin-bottom:8px}.feedback-content>p{color:var(--muted);font-size:14px}.feedback-content .feedback-privacy{margin:18px auto;max-width:500px;padding:12px 14px;border-radius:10px;background:var(--soft);font-size:12px}.feedback-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;margin:2px auto 10px}.feedback-content small{display:block;color:var(--muted);font-size:11px}@media(max-width:780px){.nav .feedback-nav{margin-left:0}.feedback-content{padding-inline:2px}}
