:root{--main:#CBBAB7;--accent:#9B8581;--bg:#F8F5F4;--ink:#352f30;color:var(--ink);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic",Meiryo,sans-serif}
body{background:var(--bg);color:var(--ink)}button,input,select,textarea{color:inherit}button{touch-action:manipulation}.app-shell{max-width:480px;background:linear-gradient(145deg,var(--bg),color-mix(in srgb,var(--main) 9%,white));min-height:100dvh}.header{display:flex;align-items:center;gap:10px;background:linear-gradient(120deg,var(--main),color-mix(in srgb,var(--accent) 78%,var(--main)));padding:calc(env(safe-area-inset-top) + 21px) 20px 20px;border-radius:0;color:white;position:relative;min-height:85px}.header h1{font-size:22px;letter-spacing:.04em;margin:0;line-height:1.5}.header .sub{color:white;opacity:.95;font-size:10px;margin-top:4px}.header .icon{width:25px;height:25px}.home-header{min-height:122px;border-radius:0 0 20px 20px;padding-right:63px}.home-header h1{font-size:23px}.botanical{position:absolute;right:10px;bottom:2px;width:48px;height:94px;opacity:.8}.content{padding:14px 15px 26px}.icon{width:21px;height:21px;flex-shrink:0;vertical-align:middle}.card{border:1px solid color-mix(in srgb,var(--main) 24%,white);box-shadow:0 3px 9px #60464e07;border-radius:14px;margin:0 0 14px;padding:15px;background:#ffffffd9}.card.flush{padding:0;overflow:hidden}.card-title{display:flex;align-items:center;gap:8px;font-size:14px;padding:11px 13px;color:var(--accent);background:linear-gradient(90deg,color-mix(in srgb,var(--main) 24%,white),color-mix(in srgb,var(--main) 9%,white));line-height:1.45}.card-body{padding:4px 13px 10px}.money-line{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 0;font-size:13px}.money-line strong{font-size:15px;white-space:nowrap;font-variant-numeric:tabular-nums}.money-line.total{border-top:1px solid color-mix(in srgb,var(--main) 30%,white);margin-top:7px;padding-top:11px;color:var(--accent);font-weight:700}.money-line.total strong{font-size:24px}.mini,.intro,.footnote,.hint,.muted,.hero-label,.section-caption{color:#786f70}.mini{font-size:11px}.footnote{font-size:11px;margin:7px 0;line-height:1.7}.summary-grid{margin-bottom:14px;gap:10px}.summary-box{border:0;border-radius:13px;padding:14px 12px;box-shadow:0 3px 9px #60464e09;background:#ffffffd9;font-size:11px;min-width:0}.summary-box .icon{color:var(--accent);margin-bottom:5px}.summary-box strong{display:block;font-size:20px;letter-spacing:-.03em;white-space:nowrap;margin-top:7px}.summary-box small{display:block;color:#8d8283;font-size:10px;margin-top:3px}.summary-box .amt{font-size:18px}.switcher{justify-content:center;margin:0 0 14px;gap:22px}.switcher button{border:0;background:transparent;color:var(--accent);font-size:25px;min-width:36px}.switcher strong{font-size:16px;min-width:125px}.switcher small{font-size:11px;font-weight:400}.title-row .switcher{margin:0;gap:5px}.title-row{margin:12px 0}.btn{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 50%,white);border-radius:10px;background:#ffffffbd;min-height:44px;font-weight:650}.btn.primary{background:var(--accent);border-color:var(--accent);color:white}.btn.solid2,.chip-btn{background:color-mix(in srgb,var(--main) 17%,white);color:var(--accent);border-color:color-mix(in srgb,var(--main) 40%,white)}.btn.danger,.danger-text{color:#a64854}.btn.block{width:100%}.btn.small{min-height:36px}.navigation{max-width:480px;border-color:color-mix(in srgb,var(--main) 25%,white);background:#fffefd;padding-top:7px;box-shadow:0 -3px 10px #60464e05}.nav-btn{color:#a89b9b;font-size:10px;gap:5px;justify-content:center}.nav-btn.active{color:var(--accent);background:color-mix(in srgb,var(--main) 18%,white);border-radius:9px}.nav-btn .icon{width:23px;height:23px}.segmented{background:color-mix(in srgb,var(--main) 20%,white);border-radius:22px;padding:0;overflow:hidden}.segmented button{border-radius:22px;color:#6b5e61;min-height:38px;font-size:12px;padding:8px 6px}.segmented button.active{background:var(--accent);color:white;box-shadow:none}.spaced{margin-top:16px}.salary-card{border:1px solid color-mix(in srgb,var(--main) 20%,white);border-radius:14px;background:#ffffffda;width:100%;padding:0 14px 13px;margin-bottom:13px;text-align:left;box-shadow:0 3px 9px #60464e07}.salary-card h3{display:flex;align-items:center;gap:8px;color:var(--accent);font-size:15px;margin:0 -14px 8px;padding:12px 14px;background:linear-gradient(90deg,color-mix(in srgb,var(--main) 22%,white),#fff9);border-radius:14px 14px 0 0}.chevron{margin-left:auto;font-size:23px;font-weight:400}.plain-row{display:flex;justify-content:space-between;gap:10px;align-items:center;text-align:left;border:0;background:none;width:100%;padding:9px 0;font-size:12px;line-height:1.7}.plain-row span:last-child{text-align:right}.plain-row+.plain-row{border-top:1px solid color-mix(in srgb,var(--main) 17%,white)}.empty-small{text-align:center;font-size:12px;margin:10px 0;line-height:1.8}.alert-list{padding:0 0 0 17px;margin:8px 0;font-size:12px;line-height:1.9}.menu{padding:0;overflow:hidden}.menu-row{display:flex;align-items:center;gap:14px;width:100%;background:none;border:0;padding:15px 17px;text-align:left;min-height:71px}.menu-row+.menu-row{border-top:1px solid color-mix(in srgb,var(--main) 30%,white)}.menu-row>.icon{color:var(--accent);width:25px;height:25px}.menu-row>span{flex:1;min-width:0}.menu-row strong{font-size:14px;display:block;font-weight:650}.menu-row small{font-size:11px;display:block;margin-top:4px;line-height:1.55}.menu-row>b{color:var(--accent);font-size:23px;font-weight:400}.section-caption{font-size:13px;color:var(--accent);margin:18px 0 10px}.header-back{border:0;background:none;color:inherit;padding:0 4px 0 0;min-height:44px}.toggle-row{display:flex;align-items:center;gap:10px;padding:14px 0;font-size:13px;position:relative;line-height:1.6}.toggle-row>span:first-child{flex:1}.toggle-row input{position:absolute;right:0;opacity:0;width:46px;height:28px;cursor:pointer;z-index:1}.toggle-art{width:44px;height:26px;border-radius:20px;background:#d8d1d3;display:block;position:relative;flex-shrink:0}.toggle-art:before{content:'';width:22px;height:22px;position:absolute;top:2px;left:2px;border-radius:50%;background:white;box-shadow:0 1px 3px #0002}.toggle-row input:checked+.toggle-art{background:var(--accent)}.toggle-row input:checked+.toggle-art:before{transform:translateX(18px)}.toggle-row input:focus-visible+.toggle-art{outline:2px solid var(--accent);outline-offset:3px}.field{margin-bottom:10px}.field label{color:#62585a}.field input,.field select,.field textarea{border-color:color-mix(in srgb,var(--main) 45%,white);background:#fff;color:var(--ink);border-radius:8px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid color-mix(in srgb,var(--main) 60%,white);border-color:var(--accent)}input[type=checkbox],input[type=radio]{accent-color:var(--accent)}.sheet{max-width:480px;background:var(--bg);padding-left:17px;padding-right:17px}.sheet-head{background:var(--bg);color:var(--accent);border-color:color-mix(in srgb,var(--main) 50%,white)}.sheet-head h2{font-size:18px}.xbtn{background:color-mix(in srgb,var(--main) 25%,white);color:var(--accent)}.sheet-footer .btn{flex-basis:100%}.hint{background:color-mix(in srgb,var(--main) 16%,white);border-radius:11px}.theme-option{display:flex;align-items:center;gap:10px;padding:12px 0;font-size:13px}.theme-option+.theme-option{border-top:1px solid color-mix(in srgb,var(--main) 20%,white)}.swatch{width:25px;height:25px;display:inline-block;border-radius:50%;background:var(--swatch);border:1px solid #0001}.theme-option input{width:18px;height:18px;margin:0}.calendar{gap:3px}.day-cell{border:0;min-height:47px;background:none;border-radius:50%;color:var(--ink)}.day-cell.today{border:1px solid var(--accent)}.day-cell.selected{background:var(--accent);color:white;border:0}.cal-wd{color:#75696c}.cal-wd:nth-child(1){color:var(--accent)}.dot{background:var(--accent);width:5px;height:5px}.dot.spot{background:color-mix(in srgb,var(--accent) 65%,#a287aa)}.dot.cancel{background:#bbb}.bar-legend span:before,.chart-bar{background:var(--accent)}.bar-legend span+span:before{background:var(--main)}.bar-legend,.pill,.jobtag,.highlight{color:var(--accent)}.pill,.jobtag{background:color-mix(in srgb,var(--main) 22%,white)}.pill.done,.pill.blue{background:color-mix(in srgb,var(--main) 28%,white);color:var(--accent)}.payout-row,.shift-row{border-color:color-mix(in srgb,var(--main) 24%,white)}.shift-row strong{font-size:12px}.shift-row .row-amount{font-size:15px}.shift-row .mini{font-size:10px}.hero{background:color-mix(in srgb,var(--main) 20%,white);border-color:var(--main)}.help details{padding:13px 0;font-size:13px;border-bottom:1px solid color-mix(in srgb,var(--main) 30%,white)}.help summary{cursor:pointer;font-weight:650;line-height:1.7}.help p{font-size:12px;line-height:1.9;color:#74676a}.table{font-size:11px}.table th,.table td{padding:10px 4px;border-color:color-mix(in srgb,var(--main) 22%,white)}.table th{background:none;color:var(--accent)}.table td{font-variant-numeric:tabular-nums}.batch-row{background:#fff9;border-color:color-mix(in srgb,var(--main) 40%,white)}.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}a{color:var(--accent)}#toast{background:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(min-width:650px){.content{padding:18px 18px 26px}.header{padding-left:21px}.sheet{max-height:90dvh}}@media(max-width:355px){.content{padding:12px 10px}.money-line{font-size:12px}.summary-box strong{font-size:18px}.header h1{font-size:20px}.form-grid{gap:8px}.menu-row{padding:14px 11px;gap:10px}}

.view-controls{display:flex;align-items:center;gap:12px;margin:0 0 12px}.view-controls .btn{margin-left:auto}.text-btn{border:0;background:none;padding:5px 0;color:#9a8c8c;font-size:11px;min-height:36px}.text-btn.selected-text{color:var(--accent);border-bottom:2px solid var(--accent)}
.modal-backdrop{background:#44373855}.sheet{height:100dvh;max-height:100dvh;border-radius:0;margin:0}.sheet-head{margin:0 -17px 20px;padding:calc(15px + env(safe-area-inset-top)) 17px 15px;background:linear-gradient(120deg,var(--main),var(--accent));color:white;justify-content:flex-start;gap:8px;min-height:74px}.sheet-head .header-back{padding:0;color:white}.sheet-head h2{font-size:19px}.sheet-head .icon{width:24px;height:24px}@media(min-width:650px){.sheet{height:92dvh;max-height:92dvh;border-radius:18px;overflow:hidden auto}.sheet-head{border-radius:18px 18px 0 0}}
