@import "https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@700;900&family=M+PLUS+Rounded+1c:wght@400;500;700&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#faf8fc;--line:#e7e1f2;--hover:#f6f3fa;--card:#fff;--ink:#111;--sub:#6b6455;--main:#c4b5f0;--main-s:#ede8fb;--main-deep:#6e56b3;--a1:#a6d3ff;--a2:#ffa987;--a3:#ffd84d;--danger:#e8657a;--radius:24px;--radius-sm:12px;--font-heading:"Zen Maru Gothic", "Hiragino Maru Gothic ProN", "Yu Gothic", sans-serif;--font-body:"M PLUS Rounded 1c", "Hiragino Maru Gothic ProN", "Hiragino Kaku Gothic ProN", "Yu Gothic", system-ui, sans-serif}*{box-sizing:border-box}body{font-family:var(--font-body);color:var(--ink);background:var(--bg);margin:0}#root{min-height:100svh}.app{max-width:980px;margin:0 auto;padding:24px 16px 80px}.app-header{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:20px;display:flex}.app-header h1{font-family:var(--font-heading);color:var(--ink);margin:0;font-size:20px;font-weight:900}.app-header .badge{font-family:var(--font-heading);color:#fff;background:var(--main-deep);border-radius:999px;padding:3px 12px;font-size:12px;font-weight:700}.spacer{flex:1}.org-toggle{background:var(--main-s);border-radius:999px;gap:2px;padding:4px;display:inline-flex}.org-toggle button{font-family:var(--font-body);cursor:pointer;color:var(--sub);background:0 0;border:none;border-radius:999px;padding:8px 18px;font-size:14px;font-weight:700}.org-toggle button.active{background:var(--ink);color:#fff}.month-picker{align-items:center;gap:8px;display:flex}.month-picker select{font-family:var(--font-body);border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--card);padding:8px 12px;font-size:14px}.panel{background:var(--card);border-radius:var(--radius);border:1px solid var(--line);margin-bottom:20px;padding:20px}.panel.tint{background:var(--main-s);border-color:#0000}.panel-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.panel-head h2{font-family:var(--font-heading);margin:0;font-size:15px;font-weight:900}.hint{color:var(--sub);font-size:12.5px}.hint.danger{color:var(--danger);font-weight:700}.empty{text-align:center;color:var(--sub);padding:32px;font-size:13px}.btn{font-family:var(--font-body);background:var(--ink);color:#fff;cursor:pointer;border:none;border-radius:999px;padding:10px 20px;font-size:13.5px;font-weight:700}.btn:disabled{opacity:.4;cursor:default}.btn-outline{font-family:var(--font-body);border:1px solid var(--ink);color:var(--ink);cursor:pointer;background:#fff;border-radius:999px;padding:9px 18px;font-size:13.5px;font-weight:700}.btn-text{font-family:var(--font-body);color:var(--main-deep);cursor:pointer;background:0 0;border:none;padding:4px 6px;font-size:13px;font-weight:700}.table-scroll{overflow-x:auto}table.grid{border-collapse:collapse;width:100%;font-size:13px}table.grid th,table.grid td{border:1px solid var(--line);white-space:nowrap;padding:7px 10px}table.grid thead th{background:var(--main-s);color:var(--sub);font-size:12px;font-weight:700}table.grid td.num{text-align:right;font-variant-numeric:tabular-nums}table.grid td.total{border-bottom:3px solid var(--main);font-weight:800}table.grid tr.sum td{background:var(--main-s);font-weight:800}.version-tabs{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.version-tabs button{font-family:var(--font-body);border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:999px;padding:6px 14px;font-size:12.5px;font-weight:700}.version-tabs button.active{background:var(--ink);color:#fff;border-color:var(--ink)}.warn-box{background:color-mix(in srgb, var(--danger) 10%, transparent);border:1px solid var(--danger);border-radius:var(--radius-sm);margin-bottom:14px;padding:12px 14px;font-size:13px}.warn-box b{color:var(--danger)}.modal-overlay{z-index:20;background:#140f1e66;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{border-radius:var(--radius);background:#fff;width:100%;max-width:720px;max-height:85vh;padding:24px;overflow-y:auto}.modal h3{font-family:var(--font-heading);margin:0 0 12px;font-size:16px}.modal-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.row{align-items:center;gap:10px;margin-bottom:10px;display:flex}.row textarea,.row input[type=text]{font-family:var(--font-body);border:1px solid var(--line);border-radius:var(--radius-sm);flex:1;padding:8px 10px;font-size:13.5px}@media (width<=560px){.modal-actions{flex-direction:column-reverse}.modal-actions .btn,.modal-actions .btn-outline{width:100%}}.app{max-width:1280px}.app-header .blob{background:var(--main);border-radius:58% 42% 55% 45%/55% 50% 50% 45%;width:30px;height:26px}.month-nav{background:var(--card);border:1px solid var(--line);font-family:var(--font-heading);border-radius:999px;align-items:center;gap:4px;padding:4px 8px;display:inline-flex}.month-nav b{text-align:center;min-width:108px}.tabs{flex-wrap:wrap;gap:6px;margin-bottom:18px;display:flex}.tabs button,.subtabs button{font-family:var(--font-body);border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;border-radius:999px;padding:8px 16px;font-size:13.5px;font-weight:700}.tabs button.on,.subtabs button.on{background:var(--ink);color:#fff;border-color:var(--ink)}.subtabs{flex-wrap:wrap;align-items:center;gap:6px;margin:4px 0 14px;display:flex}.subtabs button{padding:6px 14px;font-size:12.5px}.two-col{grid-template-columns:1fr 1fr;gap:20px;display:grid}.two-col>.panel{margin-bottom:20px}@media (width<=860px){.two-col{grid-template-columns:1fr;gap:0}}.band{background:var(--main-s);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;padding:10px 14px;font-size:13px;display:flex}.band.warn{background:#fff4e8;border:1px solid #f3c893;display:block}.band.warn>div+div{margin-top:4px}.band-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.band .table-scroll{border-radius:var(--radius-sm);background:#fff}.notice{border-radius:var(--radius-sm);background:var(--main-s);justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:14px;padding:10px 14px;font-size:13px;display:flex}.notice.error{background:color-mix(in srgb, var(--danger) 12%, #fff);border:1px solid var(--danger)}.notice.ok{background:#e9f7ee;border:1px solid #9fd6b0}.pill-tag{white-space:nowrap;vertical-align:middle;border-radius:999px;margin-left:6px;padding:2px 10px;font-size:11.5px;font-weight:700;display:inline-block}.pill-tag.ok{color:#1f7a3d;background:#e3f4e8}.pill-tag.warn{color:#9a5a00;background:#fff0db}.pill-tag.bad{background:color-mix(in srgb, var(--danger) 16%, #fff);color:#b3263e}.pill-tag.mute{color:var(--sub);background:#f1eef5}.pill-tag.info{background:var(--main-s);color:var(--main-deep)}.lock-bar{border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;padding:12px 16px;font-size:13px;display:flex}.lock-bar span{flex:1;min-width:240px}.lock-bar.is-locked{background:#f1eef5}.lock-bar.is-unlocked{border:1px solid var(--a3);background:#fff7cc}.lock-pill-wrap{position:relative}.lock-pill{font-family:var(--font-body);border:1px solid var(--line);background:var(--card);cursor:pointer;white-space:nowrap;border-radius:999px;padding:7px 14px;font-size:12.5px;font-weight:700}.lock-pill.is-self{background:#e3f4e8;border-color:#9fd6b0}.lock-pill.is-other{background:#fff0db;border-color:#f3c893}.lock-pill.flash{animation:.4s ease-in-out 3 lockflash}@keyframes lockflash{50%{background:#ffd9a8;transform:scale(1.06)}}.lock-pop{border:1px solid var(--line);border-radius:var(--radius-sm);z-index:30;background:#fff;width:320px;padding:14px;position:absolute;top:calc(100% + 8px);right:0}.cell-input{font-family:var(--font-body);border:1px solid var(--line);background:#fff;border-radius:8px;min-height:30px;padding:5px 7px;font-size:13px}.cell-input.num{text-align:right;font-variant-numeric:tabular-nums}.cell-input:disabled{color:var(--sub);background:#f6f4f9}.cell-input.bad{border-color:var(--danger)}.cell-input::placeholder{color:#b5aec2}.expr-cell{vertical-align:middle;flex-direction:column;display:inline-flex}.expr-note{color:var(--sub);font-size:11px}.expr-note.bad{color:var(--danger)}table.grid.dense th,table.grid.dense td{padding:5px 7px}table.grid td.wrap{white-space:normal;min-width:220px}table.grid tr.warn-row td{background:#fff7ed}table.grid tr.muted td{color:var(--sub);background:#faf9fc}.sticky-first table.grid td:first-child,.sticky-first table.grid th:first-child{z-index:1;background:#fff;position:sticky;left:0}.sticky-first table.grid thead th:first-child{background:var(--main-s)}table.daygrid td.daycell{padding:2px}table.daygrid th{text-align:center;min-width:32px}.btn.sm,.btn-outline.sm{padding:6px 12px;font-size:12.5px}.btn-text.sm{padding:2px 4px;font-size:11.5px}.btn-outline.danger{border-color:var(--danger);color:#b3263e}a.btn-outline{text-decoration:none;display:inline-block}.choice-list{gap:10px;margin-top:14px;display:grid}.choice{text-align:left;font-family:var(--font-body);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;background:#fff;gap:4px;padding:14px 16px;display:grid}.choice:hover{border-color:var(--main-deep);background:var(--hover)}.choice span{color:var(--sub);font-size:12.5px}.field{color:var(--sub);gap:4px;margin-bottom:12px;font-size:12.5px;display:grid}.field input,.field select,.field textarea{font-family:var(--font-body);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);padding:9px 11px;font-size:14px}.row select{font-family:var(--font-body);border-radius:var(--radius-sm);border:1px solid var(--line);background:#fff;padding:8px 10px;font-size:13.5px}.preset-row{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.chip-btn{font-family:var(--font-body);border:1px solid var(--line);background:var(--main-s);cursor:pointer;border-radius:999px;padding:5px 12px;font-size:12px}.modal.wide{max-width:960px}.steps{gap:6px;margin:0;padding:0;list-style:none;display:grid}.step{border-radius:var(--radius-sm);align-items:center;gap:10px;padding:8px 10px;display:flex}.step .mark{width:24px;height:24px;color:var(--sub);background:#f1eef5;border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:800;display:grid}.step.done .mark{color:#fff;background:#1f7a3d}.step.todo{background:var(--main-s)}.step.todo .mark{background:var(--ink);color:#fff}.step.warn{background:#fff4e8}.step.warn .mark{color:#fff;background:#e08a1e}.step-body{flex:1;display:grid}.big-num{font-family:var(--font-heading);text-decoration:underline;-webkit-text-decoration-color:var(--main);text-decoration-color:var(--main);text-underline-offset:-1px;font-size:20px;font-weight:900;text-decoration-thickness:6px}.msg-box{width:100%;font-family:var(--font-body);border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px;font-size:13px;line-height:1.6}.reason-list{background:var(--main-s);border-radius:var(--radius-sm);gap:4px;margin-bottom:12px;padding:12px 14px;display:grid}.reason-list .field{margin-bottom:4px}.toggle-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:4px 12px;margin:8px 0 12px;font-size:12.5px;display:grid}details summary{cursor:pointer;margin-bottom:8px}@media print{.tabs,.app-header .month-nav,.lock-pill-wrap,.subtabs,.btn,.btn-outline{display:none!important}}.table-scroll.sticky-first{max-height:calc(100vh - 220px);overflow:auto}.sticky-first table.grid thead th{z-index:2;position:sticky;top:0}.sticky-first table.grid thead th:first-child{z-index:3}.sticky-first table.grid td:first-child,.sticky-first table.grid th:first-child{border-right:2px solid var(--line)}.sticky-first table.grid td.total,.sticky-first table.grid tr>th:last-child{border-left:2px solid var(--line);z-index:1;background:#fff;position:sticky;right:0}.sticky-first table.grid tr>th:last-child{background:var(--main-s);z-index:3}.sticky-first table.grid tr.sum td.total{background:var(--main-s)}.cell-input:disabled{color:var(--ink);background:0 0;border-color:#0000}.cell-input:disabled::placeholder{color:#0000}.lock-bar.is-locked,.lock-bar.is-unlocked{z-index:5;position:sticky;top:0}.auto-note{color:var(--sub);font-size:11px}table.daygrid th .dow{color:var(--sub);font-size:10px}table.daygrid th.weekend,table.daygrid td.weekend{background:#f6f3fa}select.empty-sel{color:var(--sub)}.must-check{border-radius:var(--radius-sm);background:#fff4e8;align-items:center;gap:8px;margin-top:14px;padding:10px 12px;font-size:13px;display:flex}ul.tight{gap:2px;margin:0 0 12px;padding-left:18px;display:grid}.btn-text.sub{color:var(--sub);font-size:12px}.steps li{list-style:none}button.step{width:100%;font-family:var(--font-body);text-align:left;cursor:pointer;color:var(--ink);background:0 0;border:none}button.step:hover{background:var(--hover)}button.step.todo:not(.next){background:0 0}button.step.todo:not(.next) .mark{border:2px solid var(--ink);color:var(--ink);background:#fff}button.step.next{outline:2px solid var(--main)}.step-go{color:var(--main-deep);font-weight:800}@media (width<=560px){.tabs{flex-wrap:nowrap;overflow-x:auto}.tabs button{flex:none}}
