:root{
  --paper:#f6f5ee;--light:#fffcf6;--ink:#20342e;--muted:#747f78;--line:#d6dbd1;--orange:#ea7147;
  --deep:#20372d;--green:#597e68;--foam:#e8ede4;--black:#171f1c;--red:#b9473c;
  --mono:ui-monospace,SFMono-Regular,'Cascadia Code',Consolas,monospace;
  --font:'Pretendard','Apple SD Gothic Neo','Noto Sans KR','Malgun Gothic',sans-serif;
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font:14px/1.55 var(--font);-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled,input:disabled,select:disabled,textarea:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ec9b78;outline-offset:2px}button{border:0;background:none}a{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.055em}small{font-size:11px}b,strong{font-weight:780}
#root{min-height:100vh}.top{background:var(--light);border-bottom:1px solid var(--line);padding:0 max(22px,calc((100vw - 1500px)/2));}
.top-line{height:75px;display:flex;align-items:center;gap:24px}.wordmark{font-size:23px;font-weight:900;letter-spacing:-1.3px;white-space:nowrap;display:flex;gap:9px;align-items:center}.wordmark-coin{font:800 19px var(--mono);border:2px solid var(--ink);width:34px;height:34px;border-radius:50%;display:grid;place-items:center;letter-spacing:0;transform:rotate(-8deg)}.dot-mark{color:var(--orange);margin-left:-8px;font-size:30px}.edition{font:600 10px var(--mono);letter-spacing:.18em;color:#7d897e;margin-top:5px}
.primary-nav{height:54px;display:flex;align-items:stretch;gap:38px;border-top:1px solid #e8e9e3}.nav{position:relative;padding:0 2px;font-size:14px;color:#758078;font-weight:650;white-space:nowrap}.nav small{font:600 10px var(--mono);padding-right:8px;color:#a2aca2}.nav.on{color:var(--ink);font-weight:850}.nav.on:after{position:absolute;content:"";height:3px;background:var(--orange);bottom:-1px;left:0;right:0}.nav-space{flex:1}.save-status{align-self:center;white-space:nowrap;font-size:11px;color:#7e897f}.lock{font-size:12px;color:#5d7063;font-weight:700;white-space:nowrap}.lock:hover,.subtle-plain:hover{color:var(--orange)}
.app-content{max-width:1500px;margin:0 auto;padding:46px 30px 94px}.foot{border-top:1px solid var(--line);padding:20px 30px;display:flex;justify-content:space-between;font:600 10px var(--mono);letter-spacing:.07em;color:#9aa297;max-width:1500px;margin:auto;gap:15px}
.folio{font:700 11px var(--mono);letter-spacing:.17em;color:var(--green)}.titleband{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:30px}.titleband h1{font-weight:880;letter-spacing:-2.8px;font-size:clamp(30px,3.4vw,49px);line-height:1.25;margin-top:12px}.titleband h1 i{font-style:normal;color:var(--green)}.titleband p,.simple-title p{font-size:13px;color:var(--muted);margin-top:12px}.title-side{display:flex;align-items:center;gap:10px;font-size:11px;color:#869187;border-bottom:1px solid var(--line);padding:0 4px 10px;white-space:nowrap}.title-side b{font-size:13px;color:var(--ink)}.side-sep{margin:0 5px;color:#b3bcb3}
.time-control{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--light);border:1px solid var(--line);min-height:64px;margin-bottom:27px;overflow:hidden}.year-tool{display:flex;align-items:center;gap:10px;padding:0 14px}.year-tool strong{font:800 17px var(--mono)}.year-tool button,.month-arrow button,.ledger-year button,.reference-year button{font-size:22px;color:#87968b;padding:4px 7px}.year-tool button:hover,.month-arrow button:hover,.ledger-year button:hover{color:var(--orange)}.month-rail{display:flex;flex:1;justify-content:center;align-items:center;gap:1px;overflow-x:auto;min-width:0;scrollbar-width:thin}.month-chip{font:700 12px var(--mono);color:#929c92;padding:12px 13px;position:relative;flex-shrink:0}.month-chip:hover{color:var(--orange)}.month-chip.here{color:var(--light);background:var(--deep)}.month-chip.here:after{content:'MONTH';display:block;position:absolute;bottom:2px;left:0;width:100%;text-align:center;font:600 6px var(--mono);letter-spacing:.1em;color:#c8d7c5}.month-arrow{display:flex;gap:7px;padding:0 12px;border-left:1px solid var(--line)}.month-arrow button{font-size:20px}
.work-layout{display:grid;grid-template-columns:minmax(0,1fr) 338px;align-items:start;gap:32px}.work-main{min-width:0}.worksheet-top{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:15px}.section-number{font:700 11px var(--mono);letter-spacing:.14em;color:var(--orange);margin-bottom:6px}.worksheet-top h2{font-size:27px;line-height:1.25}.worksheet-top h2 span{color:#7b887e}.worksheet-meta{display:flex;gap:13px;flex-wrap:wrap;color:#7e8b7f;font-size:11px}.worksheet-meta span+span{border-left:1px solid var(--line);padding-left:13px}.worksheet-meta b{font:800 17px var(--mono);color:var(--ink);margin-right:3px}.sheet-intro{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;color:#859389;margin-bottom:10px}.alert-line{padding:13px 16px;margin:15px 0;background:#e1ebe4;color:#31533f;font-size:12px;border-left:3px solid #4d8c60}.sheet-scroll{border:1px solid var(--line);background:var(--light);overflow-x:auto}.timesheet{border-collapse:collapse;min-width:760px;width:100%;table-layout:auto}.timesheet thead{background:#e8ebe2}.timesheet th{font-size:11px;font-weight:750;color:#607468;letter-spacing:-.025em;border-bottom:1px solid var(--line);padding:13px 7px;text-align:center;white-space:nowrap}.timesheet th:first-child{text-align:left;padding-left:16px}.timesheet tbody tr{border-bottom:1px solid #e5e7df;height:45px;transition:background .15s}.timesheet tbody tr:last-child{border:0}.timesheet tbody tr:hover{background:#f2f2e9}.timesheet tbody tr.day-off{background:#fbf2e9}.timesheet tbody tr.day-off:hover{background:#faede0}.timesheet td{font-size:12px;padding:5px 7px;text-align:center;white-space:nowrap}.timesheet .when{text-align:left;padding-left:14px}.when button{display:inline-flex;gap:7px;align-items:baseline;padding:1px 2px}.when strong{font:800 15px var(--mono);letter-spacing:-.06em}.when span{font-weight:700;color:#87958b}.sunday .when strong,.sunday .when span{color:var(--red)}.day-note{text-align:left!important;overflow:hidden;text-overflow:ellipsis;max-width:145px;color:#c16f46;font-size:10px!important;font-weight:700}.day-note .dash{color:#b4bcb5}.timesheet select{border:0;background:transparent;max-width:93px;font-size:11px;font-weight:700;padding:5px 2px;cursor:pointer}.timesheet select:hover{background:#eef0e7}.hour-input{border:1px solid transparent;background:transparent;width:59px;padding:5px;text-align:center;font:700 12px var(--mono);border-radius:0}.hour-input:hover,.hour-input:focus{background:#fff;border-color:#aebcb0;outline:0}.hour-input::-webkit-inner-spin-button{opacity:.28}.detail-link{width:28px;height:28px;color:#8d9a8e;font-size:16px}.detail-link:hover{color:var(--orange)}.sheet-bottom{display:flex;justify-content:space-between;gap:10px;color:#9ca59d;font-size:10px;margin:9px 0 30px}
.receipt{position:sticky;top:24px;background:var(--deep);color:#f6faf1;padding:28px 28px 27px;min-width:0;box-shadow:9px 12px 0 #cbd4c7}.receipt-head{display:flex;justify-content:space-between;align-items:start;gap:10px}.receipt-kicker{font:700 9px var(--mono);color:#abbfb0;letter-spacing:.1em}.receipt-status{font-size:10px;color:#c3d4b7;background:#3a5543;padding:5px 8px;white-space:nowrap}.receipt h2{font-weight:750;font-size:26px;line-height:1.42;letter-spacing:-1.3px;position:relative;margin:31px 0 23px}.orange-star{position:absolute;right:3px;top:0;color:#f0a26e;font-size:40px;font-weight:500}.receipt-rule{border-top:1px solid #7b9586;margin:0 0 19px}.receipt-rule.fine{border-color:#526b59;margin:23px 0 17px}.receipt-big-label{font-size:11px;color:#b4c7b8}.receipt-net{display:block;font:800 clamp(28px,2.7vw,41px) var(--font);letter-spacing:-.055em;margin:7px 0 2px;white-space:nowrap;font-variant-numeric:tabular-nums}.receipt-net small{font-size:16px;margin-left:4px;font-weight:600;color:#bed2bc}.receipt-caption{color:#a8bdac;font-size:10px}.receipt-row{display:flex;justify-content:space-between;gap:8px;margin:12px 0;font-size:12px}.receipt-row span{color:#b9cbbc}.receipt-row b{font-variant-numeric:tabular-nums;letter-spacing:-.035em}.receipt-row.red b{color:#f5b3a5}.receipt-row.total{font-size:13px;font-weight:800}.receipt-row.total span{color:white}.receipt-extra{margin:22px 0 6px;display:grid;gap:7px}.receipt-extra span{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:#a6bba9}.receipt-extra b{font-weight:700;color:#d2e1d0}.receipt-hint{background:#344f3d;border-left:2px solid var(--orange);color:#ffd7b8;padding:9px;margin-top:14px;font-size:11px}.receipt-hint button{color:white;text-decoration:underline;font-weight:800}.receipt-ops{display:grid;gap:9px;margin-top:24px}.receipt-btn{width:100%;padding:12px 15px;font-size:12px;font-weight:800;min-height:43px}.receipt-btn.solid{background:#f3a16f;color:#20362c}.receipt-btn.subtle{background:#edf0e8;color:#20362c}.receipt-btn.light{background:#f3a16f;color:#20362c}.receipt-btn.line{border:1px solid #7e9785;color:#dcebdc}.receipt-btn:hover{filter:brightness(1.06)}.receipt-small{padding:17px 0 4px;font-size:10px;color:#a9bcae;border-top:1px dashed #789080;margin-top:25px}.receipt-small b{color:#fff}.receipt-tear{height:9px;margin:19px -28px 0;background:radial-gradient(circle at 8px 0,transparent 8px,var(--deep) 8.5px) 0 0/16px 10px repeat-x}.receipt-footer{font:600 9px var(--mono);letter-spacing:.09em;color:#c0d0bd;text-align:center;margin-top:13px}
.below-sheet{border-top:1px solid var(--line);padding-top:33px}.below-sheet h2{font-size:25px}.below-sheet>p{font-size:12px;color:var(--muted);margin:6px 0 20px}.detail-sheet{border-top:1px solid var(--line)}.detail-sheet:last-of-type{border-bottom:1px solid var(--line)}.detail-sheet summary{padding:18px 4px;display:flex;justify-content:space-between;align-items:center;gap:12px;list-style:none;cursor:pointer}.detail-sheet summary::-webkit-details-marker{display:none}.detail-sheet summary>div>b{display:block;font-size:14px}.detail-sheet summary small{display:block;color:#879489;margin-top:3px;font-weight:400}.detail-sheet summary>b{font:800 16px var(--font);white-space:nowrap}.detail-sheet summary .arrow{font-size:20px;color:#94a596;margin-left:18px}.detail-sheet[open] summary .arrow{display:inline-block;transform:rotate(180deg)}.calculated-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 28px;padding:4px 5px 18px}.calculated-line{display:flex;justify-content:space-between;border-bottom:1px solid #e4e7df;padding:8px 0;gap:10px;font-size:11px;color:#728174}.calculated-line b{color:#2b3a32;font-size:12px}.money-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 19px;padding:3px 6px 24px}.money-fields label{font-size:11px;color:#758476;font-weight:700;display:block;min-width:0}.money-fields label>span{display:block;margin-bottom:4px}.money-edit,.unit-field{position:relative}.money-edit input,.unit-field input{background:#fffefb;border:1px solid var(--line);padding:10px 27px 10px 12px;font:700 13px var(--mono);width:100%;text-align:right;border-radius:0;min-width:0}.money-edit small,.unit-field small{position:absolute;right:11px;top:50%;transform:translateY(-50%);color:#98a598}.month-note{display:block;font-size:12px;color:#64796a;margin-top:24px;font-weight:750}.month-note textarea{width:100%;resize:vertical;display:block;border:1px solid var(--line);background:#fffdfa;min-height:65px;padding:12px;font-size:12px;margin-top:8px}
.simple-title{margin:10px 0 32px}.simple-title h1{font-size:clamp(36px,4vw,57px);margin-top:10px;font-weight:900;letter-spacing:-.075em}.simple-title p{font-size:13px}.ledger-board{border-top:3px solid var(--ink);background:#fffcf7}.ledger-header{display:flex;justify-content:space-between;align-items:center;padding:22px 24px;border-bottom:1px solid var(--line)}.ledger-year{display:flex;align-items:center;gap:22px}.ledger-year span{font:700 32px var(--mono);letter-spacing:-2px}.ledger-year button{font-size:25px}.edge-button{border:1px solid #bac5ba;background:#fffefa;padding:11px 17px;white-space:nowrap;font-size:12px;font-weight:800;min-height:41px}.edge-button.black{background:var(--ink);color:#fff;border-color:var(--ink)}.edge-button:hover{border-color:var(--orange);color:var(--orange)}.edge-button.black:hover{background:#345447;color:#fff}.ledger-intro{display:flex;align-items:end;justify-content:space-between;gap:15px;padding:33px 28px 29px}.ledger-intro>div span{display:block;font-size:12px;color:#748474;margin-bottom:8px}.ledger-intro strong{font-size:clamp(26px,4vw,48px);letter-spacing:-2px;font-weight:900}.ledger-intro p{display:grid;gap:5px;font-size:12px;color:#829083}.ledger-columns{display:grid;grid-template-columns:110px minmax(130px,1fr) 180px 180px 180px;gap:18px;align-items:center;padding:13px 30px;font:700 10px var(--mono);color:#869589;background:#edf0e8;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.ledger-columns span:not(:nth-child(2)){text-align:right}.ledger-columns span:first-child{text-align:left}.ledger-item{width:100%;display:grid;grid-template-columns:110px minmax(130px,1fr) 180px 180px 180px 12px;align-items:center;gap:18px;text-align:right;padding:20px 30px;border-bottom:1px solid #e1e5dc;min-height:67px}.ledger-item:hover{background:#f0f3e8}.ledger-month{font:800 24px var(--mono);text-align:left}.ledger-month small{font-size:11px;padding-left:5px}.ledger-track{height:9px;background:#e8ece3;display:block;overflow:hidden;border-radius:0}.ledger-track i{height:100%;background:var(--green);display:block}.ledger-cell{font-size:12px;color:#8a968e;font-variant-numeric:tabular-nums}.ledger-item>strong{font-size:14px;font-variant-numeric:tabular-nums}.ledger-arrow{color:#87988c}.ledger-bottom{padding:17px 30px;font-size:11px;color:#91a093}.payment-editor{margin-top:48px}.payment-heading{display:flex;justify-content:space-between;gap:15px;align-items:end;margin-bottom:21px}.payment-heading h2{font-size:25px}.payment-heading p{font-size:12px;color:var(--muted);margin-top:5px}.payment-actions{display:flex;gap:8px}.extra-lists{display:grid;grid-template-columns:1fr 1fr;gap:23px}.extra-list{border-top:1px solid var(--ink)}.extra-list h3{font-size:14px;padding:17px 4px}.extra-list h3 span{font:700 11px var(--mono);color:#9ba99b;margin-left:7px}.extra-item{display:grid;grid-template-columns:65px minmax(0,1fr) auto 15px;gap:15px;align-items:center;text-align:left;padding:15px 5px;width:100%;border-bottom:1px solid var(--line)}.extra-item:hover{background:#ecf1e7}.extra-date{font:700 12px var(--mono);color:#88988a}.extra-item>span:nth-child(2){font-weight:750;font-size:12px}.extra-item small{display:block;font-size:10px;color:#94a092;font-weight:400}.extra-item strong{font-size:12px;white-space:nowrap}.no-rows{padding:30px 5px;font-size:12px;color:#9aa69c;border-bottom:1px solid var(--line)}
.settings-layout{display:grid;grid-template-columns:minmax(0,1fr) 325px;gap:55px;align-items:start}.setting-block{padding:24px 0 34px;border-top:1px solid var(--line)}.setting-title{display:flex;gap:16px;align-items:baseline;margin-bottom:25px}.setting-title .count{font:700 11px var(--mono);color:var(--orange)}.setting-title h2{font-size:24px}.setting-title p{font-size:12px;color:var(--muted);margin-top:5px}.reference-year{display:flex;gap:13px;align-items:center;margin-bottom:20px;border-bottom:1px solid var(--line);padding-bottom:13px}.reference-year span{font-size:11px;color:#778578;margin-right:auto}.reference-year strong{font:700 16px var(--mono)}.rates-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-bottom:20px}.rate-col{display:grid;gap:14px}.rate-col h3{font-size:16px;display:block;background:#e9ede2;padding:11px}.ref-field{display:block;font-size:11px;font-weight:700;color:#6f826f}.ref-field .unit-field,.ref-field select{display:block;margin-top:7px}.ref-field select{border:1px solid var(--line);height:43px;background:white;width:100%;padding:9px}.setting-form-two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.setting-form-two label,.modal-two label,dialog form>label{display:grid;gap:7px;font-size:12px;font-weight:750;color:#6c7e70}.setting-form-two input,.setting-form-two select,.modal-two input,.modal-two select,dialog form>label input,dialog form>label select{border:1px solid var(--line);width:100%;background:#fffefb;padding:12px;min-height:43px;min-width:0;font-size:13px}.setting-form-two>.edge-button{align-self:end;min-height:43px}.leave-line{padding:18px;margin-top:20px;background:#e9eee6;display:flex;flex-wrap:wrap;gap:16px;font-size:11px;color:#788c79}.leave-line b{font-size:13px;color:var(--ink)}.reference-aside{position:sticky;top:24px;border-left:2px solid var(--ink);padding:22px 0 0 26px}.margin-note{font:700 10px var(--mono);color:#91a193;letter-spacing:.08em}.reference-aside h3{font-size:31px;margin:22px 0 14px;line-height:1.28}.reference-aside>p{font-size:12px;line-height:1.8;color:#829184;margin-bottom:20px}.holiday-overview{margin:23px 0;border-top:1px solid var(--line);max-height:485px;overflow-y:auto}.holiday-item{border-bottom:1px solid var(--line);display:flex;align-items:start;gap:11px;padding:12px 0}.holiday-item>span{font:700 11px var(--mono);color:var(--orange);min-width:37px;margin-top:2px}.holiday-item>div{flex:1;min-width:0}.holiday-item b{display:block;font-size:12px;letter-spacing:-.04em}.holiday-item small{display:block;color:#a2ada3;font-size:10px}.holiday-item button{font-size:19px;color:var(--red)}.reference-warning{font-size:10px;color:#97a498;line-height:1.7}
.vault-layout{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(320px,1.1fr);gap:42px}.vault-lead{background:var(--deep);color:white;padding:48px 43px;min-height:510px;position:relative;overflow:hidden}.vault-illustration{position:absolute;font:500 430px var(--font);right:-100px;top:-155px;color:#354d40;opacity:.85;transform:rotate(-18deg);pointer-events:none}.vault-lead>*:not(.vault-illustration){position:relative;z-index:1}.vault-kicker{font:600 10px var(--mono);color:#a5c0a9;letter-spacing:.15em}.vault-lead h2{font-size:clamp(28px,3vw,45px);line-height:1.3;margin:75px 0 25px}.vault-lead p{color:#c3d4c5;font-size:13px;max-width:420px;line-height:1.9}.vault-lock{display:block;margin-top:80px;border-top:1px solid #62816c;padding-top:20px;font-size:11px;color:#bfdbb9}.vault-actions{display:grid;align-content:start}.vault-action{padding:23px 0;border-top:1px solid var(--line)}.vault-action>span{font:700 11px var(--mono);color:var(--orange)}.vault-action h3{font-size:22px;margin:7px 0}.vault-action p{font-size:12px;color:#8a978a;max-width:520px;margin:0 0 17px}.vault-action button+button{margin-left:10px}.subtle-plain{display:block!important;margin:11px 0!important;font-size:11px;color:#708070}.vault-import-result{display:grid;gap:5px;margin-top:14px;padding:12px 14px;border-left:3px solid var(--green);background:#edf3e9;color:#4a6552}.vault-import-result b{font-size:12px}.vault-import-result span{font-size:10px;line-height:1.6;color:#718176}.vault-disclaimer{margin-top:18px;font-size:11px;color:#8c9a8f}
.welcome{min-height:100vh;background:#f5f5ed;position:relative;overflow:hidden}.welcome-top{max-width:1200px;margin:0 auto;padding:36px 30px;display:flex;justify-content:space-between;align-items:center}.brand{font-size:23px;font-weight:900;letter-spacing:-1.4px}.brand-accent{color:#6a8c70}.brand-asterisk{font-style:normal;color:var(--orange);margin-left:5px}.welcome-small{font-size:11px;color:#9aa59b}.welcome-inner{max-width:1200px;margin:0 auto;padding:7vh 30px 100px;position:relative;z-index:1}.welcome-index{display:flex;align-items:center;gap:13px;color:#89a08c;font:700 10px var(--mono);letter-spacing:.12em}.little-line{display:block;width:40px;border-top:1px solid #829787}.welcome h1{font-size:clamp(49px,7vw,94px);letter-spacing:-.095em;line-height:1.12;margin:30px 0 25px;font-weight:850}.welcome h1 em{color:var(--green);font-style:normal}.welcome-copy{color:#7c8c7e;font-size:15px;line-height:1.9}.welcome-auth{margin-top:40px;width:min(390px,100%);background:#fffcf6;padding:26px 28px;border:1px solid #d4dbd0;box-shadow:8px 8px 0 #dce5d9}.form-cap{font-size:13px;font-weight:800;padding-bottom:15px;border-bottom:1px solid var(--line);margin-bottom:18px}.field{display:block;font-size:12px;color:#647866;font-weight:750;margin-bottom:13px}.field input{display:block;margin-top:7px;border:1px solid #cdd8cc;background:#fff;min-height:46px;padding:12px;width:100%}.action-primary{display:flex;justify-content:space-between;width:100%;align-items:center;background:var(--deep);color:#fff;padding:14px 17px;font-size:13px;font-weight:850;margin-top:16px}.action-primary span{font-size:20px}.ghost-link{display:block;margin:15px auto 0;text-align:center;font-size:12px;color:#657b68;font-weight:800;padding:6px}.ghost-link:hover{color:var(--orange)}.welcome-foot{margin-top:50px;color:#98a89a;font-size:11px}.welcome-symbol{font:700 620px var(--font);position:absolute;right:-50px;top:4vh;color:#e5eae0;transform:rotate(-12deg);user-select:none;pointer-events:none}
#dialog{border:0;padding:0;background:var(--light);color:var(--ink);max-height:calc(100dvh - 36px);width:min(650px,calc(100vw - 28px));box-shadow:0 30px 85px #16271c4a;overflow-y:auto}#dialog::backdrop{background:#13271f9c;backdrop-filter:blur(2px)}.dialog-inner{padding:29px 34px 32px}.dialog-heading{display:flex;align-items:start;justify-content:space-between;border-bottom:2px solid var(--deep);padding-bottom:18px;margin-bottom:23px;gap:20px}.dialog-heading small{font:600 10px var(--mono);letter-spacing:.12em;color:var(--green)}.dialog-heading h2{font-size:25px;margin-top:5px}.dialog-heading p{font-size:11px;margin-top:4px;color:#96a093}.dialog-x{font-size:28px;font-weight:300;padding:0 8px}.modal-two{display:grid;grid-template-columns:1fr 1fr;gap:15px}.dialog-full{display:grid;margin-top:18px;gap:7px;font-size:12px;color:#758276;font-weight:800}.dialog-full input{padding:11px;border:1px solid var(--line);background:#fff;width:100%}.dialog-buttons{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}dialog form>label{margin:15px 0}.modal-subtitle{font-size:15px;padding:22px 0 12px}.dialog-explain{font-size:12px;color:#798c7b;margin-bottom:13px;line-height:1.8}.edge-button.danger{color:var(--red);border-color:#edccc4;margin-right:auto}
.toasts{position:fixed;right:20px;bottom:20px;z-index:99;display:grid;gap:8px;pointer-events:none}.toast{background:#264333;color:#fff;padding:12px 17px;box-shadow:3px 4px 0 #b7c6b7;font-size:12px;max-width:min(380px,calc(100vw - 35px))}.toast.bad{background:#9f4137}
.rate-period-editors{display:grid;gap:16px;margin-bottom:15px}.rate-period-card{border:1px solid var(--line);background:#f7f8f1;padding:17px}.rate-period-title{display:flex;align-items:start;justify-content:space-between;gap:15px;margin-bottom:14px}.rate-period-title h3{font-size:16px}.rate-period-title p{font-size:10px;color:var(--muted);margin-top:3px}.rate-period-title .edge-button{padding:8px 11px;white-space:nowrap}.rate-period-labels,.rate-period-row{display:grid;grid-template-columns:minmax(72px,.7fr) 25px minmax(72px,.7fr) 25px minmax(125px,1.3fr) 34px;gap:7px;align-items:center}.rate-period-labels{font-size:9px;color:#8a988c;font-weight:800;padding:0 5px 5px}.rate-period-list{display:grid;gap:8px}.rate-period-row select{border:1px solid var(--line);background:#fffefb;min-width:0;width:100%;height:41px;padding:8px;font-size:12px}.rate-period-row>span{text-align:center;font-size:10px;color:#8b998d}.rate-period-row .unit-field input{height:41px}.rate-period-remove{width:34px;height:34px;border:1px solid #e9c8c1;color:var(--red);background:#fff8f5;font-size:18px}.rate-period-remove:disabled{visibility:hidden}.rate-form-error{min-height:18px;color:var(--red);font-size:11px;margin:5px 0 10px}
@media(max-width:1250px){.app-content{padding:36px 22px 70px}.work-layout{grid-template-columns:minmax(0,1fr) 306px;gap:19px}.time-control{flex-wrap:wrap}.month-rail{justify-content:flex-start}.month-chip{padding:12px 10px}.receipt{padding:24px 21px}.receipt-net{font-size:31px}.receipt-tear{margin-left:-21px;margin-right:-21px}}
@media(max-width:1040px){.work-layout{grid-template-columns:1fr}.receipt{position:static;order:-1;box-shadow:none;display:grid;grid-template-columns:1fr 1fr;gap:0 36px}.receipt-head,.receipt h2,.receipt .receipt-rule:first-of-type,.receipt-big-label,.receipt-net,.receipt-caption,.receipt-extra,.receipt-hint,.receipt-small,.receipt-tear,.receipt-footer{grid-column:1}.receipt-ops{grid-column:2;grid-row:5 / span 6;align-self:start}.receipt-row,.receipt-rule.fine{grid-column:2}.receipt-rule.fine{margin:5px 0}.receipt h2{font-size:24px;margin:16px 0}.receipt-ops{margin:20px 0}.receipt-small,.receipt-footer{display:none}.settings-layout{gap:24px;grid-template-columns:minmax(0,1fr) 280px}.ledger-columns,.ledger-item{grid-template-columns:75px minmax(100px,1fr) 130px 130px 140px;gap:10px}.ledger-item{grid-template-columns:75px minmax(100px,1fr) 130px 130px 140px 12px}}
@media(max-width:740px){.top{padding:0 15px}.top-line{height:61px}.edition{font-size:8px}.wordmark{font-size:19px}.wordmark-coin{width:29px;height:29px;font-size:15px}.primary-nav{height:55px;gap:19px;overflow-x:auto}.nav{font-size:12px;flex-shrink:0}.nav small{display:none}.lock{font-size:11px}.save-status{display:none}.app-content{padding:26px 14px 60px}.titleband{display:block;margin-bottom:21px}.titleband h1{font-size:32px;letter-spacing:-1.7px}.titleband p{font-size:12px}.title-side{justify-content:flex-start;margin-top:18px;display:inline-flex}.time-control{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:0;min-height:54px}.year-tool{gap:3px;padding:0 6px}.year-tool strong{font-size:14px}.year-tool button,.month-arrow button{font-size:17px;padding:4px}.month-rail{overflow:auto}.month-chip{padding:11px 9px;font-size:12px}.month-arrow{gap:1px;padding:0 5px}.worksheet-top{display:block}.worksheet-meta{margin:13px 0}.worksheet-meta b{font-size:13px}.sheet-intro{display:none}.sheet-bottom{flex-wrap:wrap}.receipt{display:block;padding:23px 24px}.receipt h2{margin:18px 0 17px}.receipt-net{font-size:34px}.receipt-extra{margin-top:16px}.receipt-ops{margin:20px 0}.receipt-footer{display:block}.receipt-tear{display:block;margin:15px -24px}.rates-grid,.extra-lists,.settings-layout,.vault-layout{grid-template-columns:1fr}.rate-period-card{padding:13px}.rate-period-labels{display:none}.rate-period-row{grid-template-columns:minmax(62px,.8fr) 18px minmax(62px,.8fr) 18px minmax(100px,1.25fr) 31px;gap:4px}.rate-period-row>span{font-size:9px}.reference-aside{position:static;border-left:0;border-top:2px solid var(--ink);padding:20px 0}.reference-aside h3 br{display:none}.ledger-intro{padding:22px 17px;display:block}.ledger-intro p{display:flex;gap:15px;margin-top:7px}.ledger-intro strong{font-size:30px}.ledger-columns{display:none}.ledger-item{display:grid;grid-template-columns:45px minmax(50px,1fr) auto 12px;gap:9px;padding:12px 14px}.ledger-item .ledger-cell{display:none}.ledger-item strong{font-size:12px}.ledger-month{font-size:19px}.ledger-board{border-top-width:2px}.payment-heading{align-items:start;flex-direction:column}.payment-actions{flex-wrap:wrap}.vault-lead{min-height:440px}.foot{display:block;font-size:9px}.foot span{display:block;margin:6px}.welcome-top,.welcome-inner{padding-left:23px;padding-right:23px}.welcome-inner{padding-top:8vh}.welcome h1{font-size:60px}.welcome-symbol{font-size:430px;top:30vh;right:-130px}.welcome-auth{position:relative}}
@media(max-width:450px){.month-arrow{display:none}.time-control{grid-template-columns:auto minmax(0,1fr)}.receipt-net{font-size:32px}.worksheet-meta{gap:9px}.worksheet-meta span+span{padding-left:9px}.calculated-list,.money-fields,.modal-two,.setting-form-two{grid-template-columns:1fr}.dialog-inner{padding:21px}.simple-title h1{font-size:38px}.welcome h1{font-size:46px}.welcome-copy{font-size:13px}.welcome-small{display:none}.ledger-year span{font-size:25px}.ledger-header{padding:17px 13px}.ledger-header .edge-button{padding:9px 7px;font-size:10px}.receipt{padding:23px}.receipt-net{white-space:normal}.extra-item{grid-template-columns:40px minmax(0,1fr) auto 10px;gap:8px}.vault-lead{padding:32px 25px}}
@media print{.top,.foot,.titleband,.time-control,.work-main,.receipt-ops,.save-status{display:none!important}.app-content{padding:0}.work-layout{display:block}.receipt{position:static;box-shadow:none;color:#111;background:white;border:2px solid #222}.receipt h2,.receipt-net,.receipt-row b{color:#111}.receipt-rule{border-color:#444}.receipt-row span,.receipt-extra span,.receipt-caption{color:#444}}
