:root{--brand: #176D65;--mint: #B9D5C8;--cream: #F7F4ED;--on-brand: #FFFFFF;--brand-strong: color-mix(in oklch, var(--brand) 88%, black);--brand-deep: color-mix(in oklch, var(--brand) 77%, black);--brand-soft: color-mix(in oklch, var(--brand) 10%, white);--brand-softer: color-mix(in oklch, var(--brand) 6%, white);--brand-ring: color-mix(in srgb, var(--brand) 28%, transparent);--ink: #1E2A38;--ink-2: #3D4A58;--muted: #5A6674;--line-input: #8793A0;--bg: #F4F7F6;--surface: #FFFFFF;--surface-2: #F3F5F7;--line: #E3E8EC;--line-strong: #C9D2D9;--bar-bg: rgba(244, 247, 246, .96);--warn: #8A5200;--warn-soft: #FFF3DD;--warn-badge: #F8D98C;--warn-row: #FFF8EA;--alert: #E0731A;--danger: #D23B2F;--danger-soft: #FDECEA;--danger-ring: rgba(210, 59, 47, .18);--ok: #1F7A4D;--ok-soft: #E6F4EC;--info: #1F3A5F;--info-soft: #E3EEF8;--neutral-badge: #E6E9ED;--link: #1B6FD1;--line-green: #06C755;--line-green-strong: #05B14C;--chart-5: #7E3BB0;--font: "Hiragino Sans", "Noto Sans JP", system-ui, sans-serif;--radius-card: 16px;--radius-btn: 12px;--radius-input: 10px;--shadow-1: 0 1px 2px rgba(20, 40, 36, .04), 0 4px 16px rgba(20, 40, 36, .05);--sidebar-w: 260px;--topbar-h: 64px;--appbar-h: 48px;--content-max: 1280px;--bottom-h: 84px}html:has(.bottom.stack){--bottom-h: 152px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;overflow-x:clip}html{scroll-padding-bottom:calc(var(--bottom-h) + env(safe-area-inset-bottom,0px))}body{font-family:var(--font);color:var(--ink);background:var(--bg);font-size:16px;line-height:1.6;font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;text-wrap:pretty;word-break:auto-phrase;overflow-wrap:anywhere}#root{min-height:100dvh}svg{display:block}img{max-width:100%}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}input,select,textarea{font:inherit;font-size:max(16px,1em);color:inherit}:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.nowrap{white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media(min-width:901px){.m-only{display:none!important}}@media(max-width:900px){.pc-only{display:none!important}}.avatar,.icon-button{display:grid!important;place-items:center!important}.shell{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);min-height:100dvh}.sidebar{position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;gap:16px;padding:24px 16px;background:var(--surface);border-right:1px solid var(--line)}.sidebar .logo{width:180px;height:auto;margin:0 8px 8px}.nav{display:flex;flex-direction:column;gap:4px}.nav a,.nav .soon{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 12px;border-radius:8px;color:var(--ink-2);text-decoration:none;font-size:16px;font-weight:600;border-left:3px solid transparent}.nav a:active{background:var(--surface-2)}.nav a[aria-current=page]{background:var(--brand-soft);color:var(--brand);border-left-color:var(--brand)}.nav .soon{color:var(--muted);font-weight:500}.nav .soon small{margin-left:auto;font-size:12px;white-space:nowrap}.nav svg{width:22px;height:22px;flex:none}.sidebar .soe{width:160px;height:auto;margin:auto auto 0}.main{display:flex;flex-direction:column;min-width:0}.topbar{height:var(--topbar-h);display:flex;align-items:center;gap:16px;padding:0 32px;background:var(--surface);border-bottom:1px solid var(--line)}.crumbs{color:var(--muted);font-size:14px}.page{width:100%;max-width:var(--content-max);margin:0 auto;padding:32px}.page-head{display:flex;align-items:flex-end;gap:16px;margin-bottom:24px}.page-head h1{font-size:36px;line-height:1.2;margin:0;font-weight:700}.page-head p{margin:8px 0 0;color:var(--muted);font-size:15px}.appbar{position:sticky;top:0;z-index:10;height:var(--appbar-h);display:flex;align-items:center;gap:12px;padding:0 16px;background:var(--brand);color:var(--on-brand)}.appbar .mark{width:24px;height:24px;flex:none}.appbar h1{font-size:17px;font-weight:700;margin:0}.appbar .right{margin-left:auto;font-size:14px;font-weight:600}@media(max-width:900px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar,.topbar{display:none}.page{padding:16px}.page-head h1{font-size:22px}}.card{background:var(--surface);border-radius:var(--radius-card);padding:24px;box-shadow:var(--shadow-1);margin-bottom:12px}.card h2{font-size:17px;margin:0 0 12px;font-weight:700}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media(max-width:900px){.grid-2{grid-template-columns:minmax(0,1fr)}}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:var(--radius-btn);border:0;font-size:16px;font-weight:700;text-decoration:none}.btn-primary{background:var(--brand);color:var(--on-brand)}.btn-primary:active{background:var(--brand-strong)}.btn-secondary{background:var(--surface);color:var(--ink-2);border:1.5px solid var(--ink-2)}.btn-secondary:active{background:var(--surface-2)}.btn[aria-busy=true]{cursor:progress}@media(max-width:900px){.btn-primary{min-height:56px}}.badge{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 8px;border-radius:999px;font-size:13px;font-weight:700;white-space:nowrap}.b-ok{background:var(--ok-soft);color:var(--ok)}.b-warn{background:var(--warn-soft);color:var(--warn)}.b-info{background:var(--info-soft);color:var(--info)}.b-neutral{background:var(--neutral-badge);color:var(--ink-2)}.b-brand{background:var(--brand-soft);color:var(--brand)}.b-danger{background:var(--danger-soft);color:var(--danger)}.kv{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.kv:last-child{border-bottom:0}.kv .k{color:var(--muted);font-size:15px;flex:1}.kv .v{font-weight:700;font-size:16px;text-align:right}.empty{text-align:center;padding:32px 16px;color:var(--ink-2)}.empty p{margin:0 0 16px}.skeleton{background:linear-gradient(90deg,var(--surface-2),var(--line),var(--surface-2));background-size:200% 100%;border-radius:8px;min-height:16px;animation:shimmer 1.2s linear infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}}.auth-page{width:100%;max-width:560px;margin:0 auto;padding:24px 16px}.auth-logo{display:block;height:auto;margin:0 auto 24px}.welcome{display:flex;align-items:center;gap:16px;margin-bottom:24px}.welcome img{flex:none}.welcome h2{font-size:24px;margin-top:12px}.auth-links{display:flex;flex-direction:column;margin-top:24px;border-top:1px solid var(--line);padding-top:12px}.auth-links a{display:flex;align-items:center;min-height:44px;color:var(--link)}.auth-links a:active{background:var(--surface-2)}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;margin:0 0 24px;gap:8px}.steps li{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;font-size:14px}.steps li>span{display:grid;place-items:center;width:36px;height:36px;border:1.5px solid var(--line-input);border-radius:50%}.steps li[aria-current]{color:var(--brand);font-weight:700}.steps li[aria-current] span{background:var(--brand);color:var(--on-brand);border-color:var(--brand)}.stack{display:flex;flex-direction:column;gap:20px}.stack>p{margin:0}.plain-fieldset{border:0;padding:0;margin:0;min-width:0}.field{display:flex;flex-direction:column;gap:8px;min-width:0}.field>label,.role-picker legend{font-weight:600;font-size:15px}.required{display:inline-flex;align-items:center;height:20px;font-size:12px;font-weight:700;margin-left:8px;padding:0 8px;background:var(--neutral-badge);color:var(--ink-2);border-radius:6px;vertical-align:middle}.field>label .tag-ai,.field legend .tag-ai{margin-left:8px;vertical-align:middle}.field legend{font-weight:600;font-size:15px;margin-bottom:8px;padding:0}input:not([type=checkbox]),select,textarea{width:100%;min-width:0;min-height:48px;border:1.5px solid var(--line-input);border-radius:var(--radius-input);padding:8px 12px;background:var(--surface)}textarea{resize:vertical}input:disabled,select:disabled,textarea:disabled{opacity:1;color:var(--ink-2);background:var(--surface-2);border-color:var(--line-strong)}[aria-invalid=true]{border-color:var(--danger)}.hint,.subtext{color:var(--muted);font-size:13px}.field .hint,.field-error{margin:0}.field-error{color:var(--danger);font-size:14px}.notice{padding:16px;border-radius:12px;background:var(--brand-soft);color:var(--brand-deep);margin:0 0 16px}.notice p{margin:0}.notice .btn{margin-top:12px}.error-notice{background:var(--danger-soft);color:var(--ink);border:1.5px solid var(--danger)}.error-notice p:first-letter{color:var(--danger);font-weight:700}.save-toast{position:fixed;top:calc(12px + env(safe-area-inset-top,0px));left:max(16px,env(safe-area-inset-left,0px));right:max(16px,env(safe-area-inset-right,0px));max-width:600px;margin-inline:auto;z-index:30;pointer-events:none}.save-toast>p{margin:0;padding:16px;border:1px solid var(--ok);border-radius:12px;background:var(--ok-soft);color:var(--ok);box-shadow:var(--shadow-1);font-size:16px;font-weight:600;text-align:center}.role-picker{border:0;padding:0;margin:0;min-width:0}.choices,.actions,.tabs,.filters{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.check-label{min-height:44px;display:inline-flex;align-items:center;gap:8px}.check-label input{width:20px;height:20px;accent-color:var(--brand)}.btn-danger{background:var(--surface);color:var(--danger);border:1.5px solid var(--danger)}.btn-danger:active{background:var(--danger-soft)}.tabs{margin-bottom:20px}.tabs [aria-pressed=true]{background:var(--brand-soft);border-color:var(--brand);color:var(--brand)}.filters{margin-bottom:20px}.page>.filters,.task>.filters{background:var(--surface);padding:12px 16px;border-radius:12px;box-shadow:var(--shadow-1)}.chip{border:1.5px solid var(--line-input);border-radius:10px;min-height:44px;padding:8px 12px;background:var(--surface)}.chip[aria-checked=true]{background:var(--brand-soft);border-color:var(--brand);color:var(--brand)}.chip:active{background:var(--surface-2)}.table-scroll{max-width:100%;overflow:auto}table{border-collapse:collapse;width:100%;font-size:15px}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:middle;min-width:100px}thead{background:var(--surface-2)}td select{min-width:120px}.pending-row{background:var(--warn-row)}.subtext{display:block;font-weight:400}.back-button{margin-bottom:20px}.permission-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:20px}.invite-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;padding:20px 0;border-bottom:1px solid var(--line)}.invite-row p{margin:8px 0 0}.invite-code,.code-input{font-size:22px;letter-spacing:.08em}.toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.toolbar p{margin:0;color:var(--muted)}.settings-group{margin-bottom:24px}.settings-group h2{font-size:22px;margin:0 0 16px}.settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.setting-tile{display:flex;flex-direction:column;text-align:left;gap:12px;padding:24px;background:var(--surface);border:1px solid var(--line-input);border-radius:12px}.setting-tile:active{background:var(--brand-soft);border-color:var(--brand)}.tile-title{display:flex;align-items:center;gap:12px;font-size:17px}.tile-title svg{flex:none;color:var(--brand)}.tile-summary{display:flex;justify-content:space-between;gap:8px;border-top:1px solid var(--line);padding-top:16px;margin-top:auto;width:100%;font-size:14px}.save-bar{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:16px 20px calc(12px + env(safe-area-inset-bottom));background:var(--bar-bg);border-top:1px solid var(--line)}.save-bar>span{color:var(--warn);font-size:14px}.input-unit{display:flex;align-items:center;gap:12px}.input-unit input{text-align:right}.input-unit span{flex:none}.category-row{display:flex;align-items:center;gap:8px}.category-row .category-letter{width:56px;flex:none;text-align:center}.category-row .btn{flex:none;padding:0 12px}.history-list article{padding:16px 0;border-bottom:1px solid var(--line)}.history-list h3{margin:0;font-size:16px}.history-change{display:flex;flex-wrap:wrap;gap:12px}.connection-status{margin:0 0 16px}.connection-status dd{margin:0}.tenant-name{font-size:14px;padding:8px 12px;margin:0;border:1px solid var(--line);border-radius:8px}.profile{display:flex;flex-direction:column;padding:12px}.profile span{font-size:13px;color:var(--muted)}.sidebar{overflow-y:auto}.topbar-user{margin-left:auto;font-size:14px}.mobile-nav{display:flex;justify-content:space-around;gap:8px;position:fixed;bottom:0;width:100%;z-index:9;padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line)}.mobile-nav a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px;font-size:14px;color:var(--ink-2);text-decoration:none;border-radius:8px}.mobile-nav a[aria-current],.mobile-nav a:active{background:var(--brand-soft);color:var(--brand)}@media(max-width:1100px){.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.shell .page{padding-bottom:calc(84px + env(safe-area-inset-bottom))}html[data-keyboard] .save-bar,html[data-keyboard] .mobile-nav{position:static}.save-bar{bottom:calc(60px + env(safe-area-inset-bottom));padding:12px}.save-bar .actions{width:100%}.save-bar .actions .btn{flex:1;padding:8px 12px}}@media(max-width:600px){.settings-grid,.permission-list{grid-template-columns:minmax(0,1fr)}.card{padding:20px}.welcome{gap:12px}.welcome img{width:96px;height:auto}.welcome h2{font-size:22px}}@media(max-width:900px)and (max-height:500px){.save-bar,.mobile-nav{position:static}}.task{width:100%;max-width:600px;margin:0 auto}.task h2.page-title{font-size:22px;line-height:1.3;margin:0 0 4px}.task .sub{color:var(--muted);font-size:14px;margin:0 0 16px}.task .card{padding:20px}.task .card h3{font-size:17px;margin:0 0 12px;display:flex;align-items:center;gap:8px}.task .card h3 .r{margin-left:auto;font-size:13px;color:var(--muted);font-weight:500}.note{font-size:13px;color:var(--muted);text-align:center;margin:12px 0 0;line-height:1.5}.back{display:inline-flex;align-items:center;gap:4px;min-height:44px;margin:-8px 0 0 -8px;padding:0 8px;background:none;border:0;color:var(--brand);font-weight:700;font-size:15px;border-radius:8px}.back:active{background:var(--brand-soft)}.opt{font-weight:500;color:var(--muted);font-size:13px}.tag-ai{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:6px;background:var(--brand-soft);color:var(--brand);font-size:12px;font-weight:800;letter-spacing:.04em}.stepper{display:flex;align-items:flex-start;margin:0 0 16px;padding:8px 0 0;background:var(--surface);border-radius:12px}.stepper .step{flex:1;text-align:center;position:relative;font-size:13px;color:var(--muted);background:none;border:0;padding:0 0 8px;min-height:44px}.stepper .step .n{width:32px;height:32px;border-radius:50%;background:var(--surface);border:2px solid var(--line-input);color:var(--ink-2);display:flex;align-items:center;justify-content:center;margin:0 auto 8px;font-weight:700;position:relative;z-index:1;font-size:15px}.stepper .step.on{color:var(--ink);font-weight:700}.stepper .step.on .n{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.stepper .step.done{color:var(--brand)}.stepper .step.done .n{background:var(--brand-soft);border-color:var(--brand);color:var(--brand)}.stepper .step.done .lbl{text-decoration:underline;text-underline-offset:3px}.stepper .step.done:active .n{background:var(--brand);color:var(--on-brand)}.stepper .step:not(:last-child):after{content:"";position:absolute;top:15px;left:50%;width:100%;height:2px;background:var(--line-input)}.stepper .step.done:not(:last-child):after{background:var(--brand)}.label-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.readonly-box{display:flex;align-items:center;min-height:48px;padding:0 16px;border:1.5px solid var(--line-strong);border-radius:var(--radius-input);background:var(--surface-2);color:var(--ink-2)}.readonly-box .end{margin-left:auto;font-size:14px;color:var(--muted);font-weight:700}.money{display:flex;align-items:center;gap:8px}.money input{font-size:22px;font-weight:700;text-align:right;min-height:56px}.money span{flex:none;font-size:14px;color:var(--muted);font-weight:700}.row-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.counter{display:flex;align-items:center;justify-content:space-between;gap:4px;border:1.5px solid var(--line-input);border-radius:var(--radius-input);min-height:48px;padding:0 4px;background:var(--surface);min-width:0}.counter button{width:44px;height:44px;flex:none;border-radius:10px;border:0;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center}.counter button:active{background:var(--brand);color:var(--on-brand)}.counter button:disabled{background:var(--surface-2);color:var(--muted)}.counter input{flex:1;min-width:0;border:0;min-height:44px;padding:0;text-align:center;font-size:20px;font-weight:700;background:transparent;text-decoration:underline dotted var(--line-input);text-underline-offset:6px}.counter.big{min-height:56px}.counter.big input{font-size:24px}.date-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:48px}.date-nav .d{font-size:20px;font-weight:700}.date-nav button{width:44px;height:44px;border-radius:10px;border:1.5px solid var(--line-input);background:var(--surface);color:var(--ink-2);display:grid;place-items:center}.date-nav button:active{background:var(--surface-2)}.date-nav button:disabled{border-color:var(--line-strong);color:var(--muted);background:var(--surface-2)}.chip.warn{background:var(--warn-soft);border-color:var(--warn);color:var(--warn)}.chip.warn[aria-checked=true]{background:var(--warn);border-color:var(--warn);color:var(--on-brand)}.chip .cnt{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 8px;margin-left:4px;border-radius:999px;background:var(--surface);font-size:13px;font-weight:800;border:1px solid currentColor}.chips{display:flex;flex-wrap:wrap;gap:8px}.thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.thumb{aspect-ratio:1;border-radius:12px;background:var(--surface-2);display:flex;align-items:center;justify-content:center;color:var(--ink-2);font-size:13px;position:relative;overflow:hidden;border:0;padding:0}.thumb img{width:100%;height:100%;object-fit:cover}.thumb .cap{position:absolute;left:0;right:0;bottom:0;padding:4px 0;background:var(--bar-bg);font-size:12px;font-weight:600;text-align:center;color:var(--ink)}.thumb.add,.upload{border:1.5px dashed var(--line-input);color:var(--brand);font-weight:700;background:var(--brand-softer);flex-direction:column;gap:4px;cursor:pointer}.thumb.add:active,.upload:active{background:var(--brand-soft)}.thumb.selected{outline:3px solid var(--brand);outline-offset:-3px}.upload{display:flex;align-items:center;justify-content:center;min-height:96px;border-radius:12px;width:100%;flex-direction:row;gap:12px}.file-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.doc-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.doc-tile{position:relative;min-height:120px;border-radius:12px;overflow:hidden;border:1.5px dashed var(--line-input);background:var(--brand-softer);color:var(--brand);font-weight:700;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer}.doc-tile.done{border:1.5px solid var(--line-input);background:var(--surface-2);color:var(--ink)}.doc-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.doc-tile .cap{position:absolute;left:0;right:0;bottom:0;padding:8px;background:var(--bar-bg);text-align:center;color:var(--brand);text-decoration:underline}.doc-tile .badge{position:absolute;left:8px;top:8px}.tipband,.next-box{display:flex;gap:12px;align-items:flex-start;background:var(--brand-softer);border-radius:12px;padding:12px 16px;font-size:14px;color:var(--ink-2);line-height:1.5;margin-bottom:12px}.tipband svg,.next-box svg{flex:none;color:var(--brand);margin-top:2px}.alertbox{display:flex;gap:12px;background:var(--warn-soft);border-radius:12px;padding:12px 16px;align-items:flex-start;margin-bottom:12px}.alertbox svg{color:var(--alert);flex:none}.alertbox b{display:block;color:var(--warn);font-size:15px}.alertbox p{margin:4px 0 0;font-size:14px;color:var(--ink-2);line-height:1.5}.infobox{display:flex;gap:12px;background:var(--info-soft);border-radius:12px;padding:12px 16px;color:var(--info);font-size:14px;line-height:1.5;align-items:flex-start;margin-bottom:16px}.infobox svg{flex:none;margin-top:2px}.lock-note{display:flex;gap:8px;align-items:flex-start;font-size:13px;color:var(--muted);margin-top:12px}.lock-note svg{flex:none;margin-top:2px}.list-row{display:flex;align-items:center;gap:12px;padding:16px 0;border:0;border-bottom:1px solid var(--line);width:100%;background:none;text-align:left;color:inherit;text-decoration:none}.list-row:last-child{border-bottom:0}button.list-row:active,a.list-row:active{background:var(--brand-softer)}.list-row .t{flex:1;min-width:0}.list-row .no{display:block;font-weight:800;color:var(--brand);font-size:13px;letter-spacing:.04em;margin-bottom:4px}.list-row .a{font-weight:600;font-size:16px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.list-row .b{font-size:14px;color:var(--muted);margin-top:4px}.list-row .amt{font-weight:700;font-size:17px;text-align:right;white-space:nowrap}.list-row .side{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex:none}.list-row .rchev{color:var(--muted);flex:none}.list-row.stale{box-shadow:inset 3px 0 0 var(--warn);padding-left:12px}.list-row.stale-2{box-shadow:inset 3px 0 0 var(--danger);padding-left:12px}.added-item{display:flex;align-items:center;gap:12px;width:100%;padding:16px;margin-bottom:12px;background:var(--surface);border:1.5px solid var(--line-input);border-radius:12px;text-align:left}.added-item:active{background:var(--brand-softer)}.added-item .t{flex:1;min-width:0}.added-item .no{display:block;font-weight:800;color:var(--brand);font-size:13px}.yen{font-size:max(.62em,12px);margin-left:2px;font-weight:700}.money-big{font-size:36px;font-weight:700;line-height:1.15;letter-spacing:-.01em}.minus{color:var(--danger)}.totals{border-top:1px solid var(--line-strong);margin-top:4px;padding-top:12px}.total{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:4px 0}.total b{font-size:22px;white-space:nowrap}.total b.vice{font-size:18px}.btn-link{color:var(--link);text-decoration:underline;font-weight:600;font-size:15px;text-align:center;display:block;background:none;border:0;width:100%;min-height:44px;padding:8px 16px;line-height:1.4}.btn-link:active{background:var(--surface-2);border-radius:8px}.hero{text-align:center;padding:24px 20px 20px}.hero .ok{display:inline-flex;align-items:center;gap:8px;color:var(--ok);font-weight:700;font-size:15px;margin-bottom:12px}.hero h2{font-size:14px;color:var(--muted);font-weight:600;margin:0 0 12px}.nos{display:flex;flex-direction:column;gap:16px;align-items:center}.nos .one{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%}.nos .nm{font-size:14px;color:var(--ink-2);font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.stamp{display:inline-block;padding:12px 20px;border:3px solid var(--brand);border-radius:14px;color:var(--brand);font-size:40px;font-weight:800;letter-spacing:.04em;line-height:1.1;background:var(--surface);box-shadow:0 0 0 6px var(--brand-ring);white-space:nowrap;animation:stamp .4s ease-out 1}.stamp.sm{font-size:26px;padding:8px 16px;border-width:2px;box-shadow:0 0 0 4px var(--brand-ring)}@keyframes stamp{0%{transform:scale(1.25);opacity:0}to{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.stamp{animation:none}}.qrwrap{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.qr-list{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}.qr-list figure{margin:0;text-align:center;font-weight:700;color:var(--ink)}.qr-code{width:160px;height:160px;background:var(--surface);padding:8px;border:1px solid var(--line);border-radius:6px}.qr-code rect{fill:var(--ink)}.bottom{position:sticky;bottom:0;z-index:8;margin:16px -16px 0;background:var(--bar-bg);backdrop-filter:blur(8px);padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line)}.bottom .btn{width:100%;min-height:56px;font-size:17px}.bottom .btn .chev{position:absolute;right:16px;top:50%;transform:translateY(-50%)}.btn-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.btn-row:has(>:only-child){grid-template-columns:minmax(0,1fr)}.bottom.stack .btn-row{grid-template-columns:minmax(0,1fr)}.report-done-actions .btn{text-align:center;line-height:1.4;padding-block:12px}@media(max-width:480px){html:has(.report-done-actions){--bottom-h: 152px}.report-done-actions .btn-row{grid-template-columns:minmax(0,1fr)}}html[data-keyboard] .bottom{position:static}@media(min-width:901px){.bottom{margin:24px 0 0;border-radius:12px;border:1px solid var(--line)}}.sheet-backdrop{position:fixed;inset:0;z-index:20;background:color-mix(in srgb,var(--ink) 45%,transparent);display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-width:600px;background:var(--surface);border-radius:20px 20px 0 0;padding:24px 20px calc(20px + env(safe-area-inset-bottom,0px));max-height:90dvh;overflow:auto}.sheet h2{font-size:20px;margin:0 0 8px}.sheet .actions{flex-direction:column;align-items:stretch;margin-top:16px}.sheet .actions .btn{min-height:56px}@media(min-width:901px){.sheet-backdrop{align-items:center}.sheet{border-radius:20px}}.filter-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:16px}.filter-bar .field{flex:1 1 200px}.ledger-table{overflow-wrap:normal;word-break:keep-all}.ledger-table td,.ledger-table th{min-width:0}.ledger-table .nw,.ledger-table td.nw,.ledger-table th.nw,.ledger-table thead th{white-space:nowrap}.ledger-table tbody tr.clickable{cursor:pointer}.ledger-table tbody tr:not(.clickable){cursor:default}.ledger-table tfoot th,.ledger-table tfoot td{border-bottom:0}@media(max-width:900px){.table-scroll>table{min-width:720px}}.ledger-table td.num,.ledger-table th.num{text-align:right;white-space:nowrap}.ledger-table tbody tr:hover{background:var(--brand-softer)}.ledger-table tbody tr.warn-row{background:var(--warn-row)}.ledger-table .reason{display:block;font-size:13px;color:var(--warn);margin-top:4px}.ledger-table tfoot td{font-weight:700;border-bottom:0}.table-foot{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:16px 12px 0;font-weight:700}.table-foot .sum{font-size:22px}.page-actions{display:flex;flex-wrap:wrap;gap:12px;margin-left:auto}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}@media(max-width:900px){.detail-grid{grid-template-columns:minmax(0,1fr)}}.photo-strip{display:flex;flex-wrap:wrap;gap:8px}.photo-strip a,.photo-strip img{width:120px;height:120px;border-radius:12px;object-fit:cover;display:block;background:var(--surface-2)}@media print{.sidebar,.topbar,.appbar,.mobile-nav,.page-actions,.filter-bar,.filters,.bottom,.infobox{display:none!important}.shell{display:block}.page{padding:0;max-width:none}.card{box-shadow:none;padding:0}}@media(max-width:900px){.shell .page.task-page{padding-bottom:0}}.nav .label{min-width:0}.push-right{margin-left:auto}.upload.slim{min-height:48px;margin-top:12px}.preview-text{white-space:pre-wrap;font:inherit;font-size:15px;background:var(--surface-2);border-radius:12px;padding:16px;margin:12px 0;max-height:40dvh;overflow:auto}.tag-ai.warn{background:var(--warn-soft);color:var(--warn)}.band{display:inline-flex;align-items:center;gap:8px;border-radius:10px;padding:8px 12px;font-size:14px;font-weight:700;margin-bottom:12px}.band-brand{background:var(--brand-soft);color:var(--brand)}.band-info{background:var(--info-soft);color:var(--info)}.band-warn{background:var(--warn-soft);color:var(--warn)}.btn-link.inline{display:inline;width:auto;min-height:0;padding:0 4px;font-size:inherit}label.btn{cursor:pointer}.passbook .ph,.passbook .pr{display:grid;grid-template-columns:48px minmax(0,1fr) auto 20px;gap:0 8px;align-items:center;width:100%}.passbook .ph{font-size:13px;color:var(--muted);padding:8px 0;border-bottom:1px solid var(--line-strong);font-weight:600;line-height:1.3}.passbook .ph small{display:block;font-size:12px;font-weight:500}.passbook .pr{padding:12px 0;border:0;border-bottom:1px solid var(--line);min-height:56px;background:none;text-align:left;color:inherit}.passbook .pr:last-child{border-bottom:0}.passbook button.pr:active{background:var(--brand-softer)}.passbook .pd{font-size:14px;color:var(--ink-2);font-weight:600}.passbook .pt{min-width:0}.passbook .pt .a{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:15px;font-weight:600;line-height:1.3}.passbook .pt .b{font-size:13px;color:var(--muted);display:flex;gap:8px;align-items:center;margin-top:4px;flex-wrap:wrap}.passbook .pa{text-align:right;white-space:nowrap;display:flex;flex-direction:column}.passbook .pa .amt{font-size:16px;font-weight:700}.passbook .pa .amt.in{color:var(--brand)}.passbook .pa .bal{font-size:13px;color:var(--muted)}.passbook .pc{color:var(--muted);font-size:18px;text-align:right}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:16px}.kpi{margin:0}.kpi h2{font-size:14px;color:var(--muted);font-weight:600}.kpi-value{font-size:28px;font-weight:700;margin:0 0 4px;white-space:nowrap}.kpi-value.warn{color:var(--warn)}.kpi-sub{font-size:13px;color:var(--muted);font-weight:600}.kpi-sub.up{color:var(--ok)}.kpi-sub.down{color:var(--danger)}.dash-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:16px}.dash-grid .card h2,.card>h2{display:flex;align-items:baseline;gap:8px}.todo-row .todo-count{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:10px;background:var(--warn-soft);color:var(--warn);font-weight:800;font-size:18px}.todo-row .b{display:block}.chart{margin:0}.chart svg{width:100%;height:auto}.chart .bar{fill:var(--brand)}.chart text{font-size:12px;fill:var(--muted)}.chart figcaption{font-size:13px;color:var(--muted);display:flex;gap:8px;align-items:center;margin-top:8px}.legend-swatch{width:12px;height:12px;border-radius:3px;background:var(--brand);flex:none}.meter{display:inline-flex;flex-direction:column;gap:4px;min-width:96px;font-size:13px;color:var(--muted)}.meter-bar{display:block;height:8px;border-radius:999px;background:var(--surface-2);overflow:hidden}.meter-bar>span{display:block;height:100%;background:var(--brand);border-radius:999px}.people-table tfoot th,.people-table tfoot td{background:var(--surface-2);font-weight:700}.ledger-table td.minus{color:var(--danger)}.month-nav{gap:12px;justify-content:center}.month-nav .d{min-width:128px;text-align:center;font-size:18px}@media(max-width:1100px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:600px){.kpi-grid{grid-template-columns:minmax(0,1fr)}}.review-grid{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:16px;align-items:start}.review-panel{position:sticky;top:calc(var(--topbar-h) + 16px);max-height:calc(100dvh - var(--topbar-h) - 32px);display:flex;flex-direction:column;padding:0;overflow:hidden}.review-panel .review-body{overflow:auto;padding:24px 24px 12px;flex:1;min-height:0}.review-panel .review-actions{flex:none;padding:12px 24px 20px;border-top:1px solid var(--line);background:var(--surface)}.review-panel .review-actions .field{margin-bottom:12px}.review-grid>.card{margin:0 0 16px}.review-panel .photo-strip a,.review-panel .photo-strip img{width:100%;height:auto;max-height:280px;object-fit:contain}.ledger-table tr[aria-selected=true]{box-shadow:inset 3px 0 0 var(--brand)}.timeline{margin:16px 0;padding-left:20px;font-size:14px;color:var(--ink-2)}.timeline li{margin:4px 0}@media(max-width:1100px){.review-grid{grid-template-columns:minmax(0,1fr)}.review-panel{position:static;max-height:none}}.page-tabs{margin-bottom:16px}.statement{padding:32px}.statement-title{text-align:center;font-size:22px;letter-spacing:.2em;margin:0 0 24px;display:block}.statement-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);gap:12px 16px;align-items:baseline;margin-bottom:24px;font-size:14px}.statement-head span{color:var(--muted)}.statement-head b{border-bottom:1px solid var(--ink);text-align:right;padding-bottom:4px}.statement-table{border-collapse:collapse;font-size:13px;width:100%}.statement-table th,.statement-table td{border:1px solid var(--ink);padding:6px 8px;min-width:0;text-align:center}.statement-table td{text-align:left}.statement-table td.num{text-align:right;white-space:nowrap}.statement-table thead{background:var(--surface)}.statement-table tfoot td,.statement-table tfoot th{font-weight:700}.statement-table tr.blank td{height:20px}.statement-kpi{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 8px}.kpi-box{background:var(--surface-2);border-radius:12px;padding:12px 16px;display:flex;flex-direction:column;gap:4px}.kpi-box b{font-size:22px;white-space:nowrap}@media(max-width:900px){.pc-print{display:none}}@media print{.pc-print{display:block!important}.m-only,.back,.page-tabs,.note,.toolbar .page-actions,.statement-toolbar{display:none!important}.statement{padding:0}.statement-table th,.statement-table td{padding:4px;font-size:12px}}.statement-table{overflow-wrap:normal;word-break:keep-all}.statement-table th{white-space:nowrap}.statement-table tbody td:nth-child(-n+3){white-space:nowrap;text-align:center}.statement-table tbody td:nth-child(4){min-width:140px}.statement-table tbody td:last-child:not([colspan]){min-width:120px;word-break:normal;overflow-wrap:anywhere}@media screen{.statement-table th,.statement-table td{padding:6px}}.muted{color:var(--muted);font-size:15px}.clamp2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hint.right{text-align:right}.money-big{margin:0}@media(max-width:900px){.task{min-height:calc(100dvh - var(--appbar-h) - 32px);display:flex;flex-direction:column}.task>form,.task>.task-body{display:flex;flex-direction:column;flex:1}.task>.bottom,.task>form>.bottom,.task>.task-body>.bottom{margin-top:auto}}.mobile-nav a{flex-direction:column;gap:2px;min-width:0;flex:1;font-size:12px;font-weight:600;text-align:center;line-height:1.3}.mobile-nav a svg{flex:none}.btn-line{background:var(--line-green);color:var(--ink)}.btn-line:active{background:var(--line-green-strong)}.steps li{position:relative}.steps li:not(:last-child):after{content:"";position:absolute;top:18px;left:calc(50% + 22px);width:calc(100% - 36px);height:2px;background:var(--line-input)}.steps li.done:not(:last-child):after{background:var(--brand)}.steps li.done>span{background:var(--brand-soft);border-color:var(--brand);color:var(--brand)}.steps li.done{color:var(--brand)}.field.unsure input,.field.unsure select,.field.unsure textarea{border-color:var(--warn);box-shadow:0 0 0 3px var(--warn-soft)}.field .unsure-note{margin:0;color:var(--warn);font-size:13px;font-weight:600}.greet{margin:0 0 16px}.greet h2{font-size:24px;line-height:1.3;margin:0 0 4px}.greet p{margin:0;color:var(--muted);font-size:14px}.todo-count.neutral{background:var(--neutral-badge);color:var(--ink-2)}.todo-count.brand{background:var(--brand-soft);color:var(--brand)}.number-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.number-box{background:var(--surface-2);border-radius:12px;padding:12px 16px;display:flex;flex-direction:column;gap:4px;min-width:0}.number-box b{font-size:24px;white-space:nowrap}.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.quick-grid a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:88px;border:1.5px solid var(--line-input);border-radius:12px;color:var(--ink);text-decoration:none;font-weight:700;background:var(--surface)}.quick-grid a svg{color:var(--brand)}.quick-grid a:active{background:var(--brand-softer)}@media(max-width:360px){.number-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:600px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.kpi-value{font-size:22px}}.kpi-sub.ok,.ledger-table td.ok{color:var(--ok)}.chart .bar-value{font-size:14px;fill:var(--ink);font-weight:700}.chart text.axis{font-size:14px}.statement-kpi{grid-template-columns:repeat(2,minmax(0,1fr))}.badge.b-stale{background:var(--warn-soft);color:var(--warn)}.toggle{display:inline-flex;align-items:center;gap:12px;min-height:44px;cursor:pointer}.toggle input{position:absolute;opacity:0;width:1px;height:1px}.toggle .track{position:relative;width:52px;height:32px;flex:none;border-radius:999px;background:var(--line-strong);transition:background .2s}.toggle .track:after{content:"";position:absolute;top:4px;left:4px;width:24px;height:24px;border-radius:50%;background:var(--surface);transition:transform .2s}.toggle input:checked+.track{background:var(--brand)}.toggle input:checked+.track:after{transform:translate(20px)}.toggle input:focus-visible+.track{outline:3px solid var(--brand);outline-offset:2px}@media(prefers-reduced-motion:reduce){.toggle .track,.toggle .track:after{transition:none}}.sheet .btn-danger{min-height:56px}.profile{text-decoration:none;color:var(--ink);border-radius:8px}.profile:active{background:var(--surface-2)}.pdf-link{margin:0 auto 12px;display:flex;width:fit-content}@media(min-width:1101px){.review-panel{max-height:min(var(--panel-max, calc(100dvh - 248px) ),calc(100dvh - var(--topbar-h) - 32px))}}.review-grid .filter-bar{margin-bottom:8px}.mobile-nav a{padding:6px 2px}@media(max-width:420px){.kpi-box b{font-size:19px}.kpi-box{padding:12px}}.person-card{padding:16px 0;border-bottom:1px solid var(--line)}.person-card:last-child{border-bottom:0}.person-card.pending-row{margin:0 -12px;padding:16px 12px;border-radius:8px}.person-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:4px}.person-head .amt{font-weight:700;font-size:17px;white-space:nowrap}.person-head .amt.minus{color:var(--danger)}.person-card .hint{margin:4px 0 0}.person-card .btn-row{margin-top:12px}.list-row .b.ok{color:var(--ok)}.list-row.total-row{background:var(--surface-2);margin-top:8px;padding:16px 12px;border-radius:8px;border-bottom:0}@media(max-width:900px){.money-pair{grid-template-columns:minmax(0,1fr)}}.number-box b{font-size:clamp(20px,6vw,24px)}@media(max-width:600px){.number-grid.one,.kpi-grid.one{grid-template-columns:minmax(0,1fr)}}.review-panel .photo-strip a,.review-panel .photo-strip img{max-height:180px}.review-title{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.list-row[aria-current=true]{background:var(--brand-soft);box-shadow:inset 3px 0 0 var(--brand);padding-left:12px;padding-right:8px}#review-panel{scroll-margin-top:calc(var(--appbar-h) + 8px)}.card>h2,.dash-grid .card h2{flex-wrap:wrap}@media(max-width:600px){.card>h2>.hint.push-right{margin-left:0;flex-basis:100%;font-weight:400}}.btn-link.inline,.inline-link{padding:12px 4px;margin:-12px 0}.todo-row .b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hero>h2{justify-content:center}@media(max-width:900px){.page:not(.task-page)>.task{min-height:0}}
