:root{--color-bg:#f6f5f1;--color-card:#fff;--color-text:#1e1d1a;--color-text-sub:#5a574f;--color-idle:#efede7;--color-idle-text:#55524b;--color-brand:#1f6f5c;--color-brand-on:#fff;--color-brand-soft:#ddeee8;--color-brand-soft-text:#17594a;--color-m:#2f5fa8;--color-m-on:#fff;--color-m-soft:#e4ecf8;--color-m-soft-text:#1f4a8a;--color-n:#b8500a;--color-n-on:#fff;--color-n-soft:#fde8d6;--color-n-soft-text:#8a3c06;--color-review-soft:#ece8f5;--color-review-soft-text:#4b3a8a;--font-family:"Noto Sans JP", system-ui, -apple-system, "Hiragino Sans", sans-serif;--font-size-title:20px;--font-size-body:15px;--font-size-name:16px;--font-size-sub:12px;--font-size-button:15px;--gutter:16px;--card-radius:16px;--card-padding:14px;--card-gap:10px;--section-gap:28px;--tap-min:44px;--button-primary-height:52px;--button-primary-radius:14px;--button-secondary-height:48px;--chip-radius:999px;--focus-ring:0 0 0 3px #1f6f5c59;--content-max:480px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-family);font-size:var(--font-size-body);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}h1,h2,h3,p{margin:0}a{color:inherit}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{box-shadow:var(--focus-ring);outline:none}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.page{max-width:var(--content-max);padding:0 var(--gutter) 48px;margin:0 auto}.page-header{align-items:center;gap:8px;min-height:64px;padding-top:8px;display:flex}.page-header h1{font-size:var(--font-size-title);flex:1;font-weight:700}.icon-link{min-width:var(--tap-min);min-height:var(--tap-min);color:var(--color-text);background:0 0;border:none;border-radius:12px;justify-content:center;align-items:center;font-size:22px;line-height:1;text-decoration:none;display:inline-flex}.section{margin-top:var(--section-gap)}.section-title{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:10px;font-size:15px;font-weight:700;display:flex}.section-title .sub{font-weight:400}.stack{gap:var(--card-gap);flex-direction:column;display:flex}.card{background:var(--color-card);border-radius:var(--card-radius);padding:var(--card-padding)}a.card{color:inherit;text-decoration:none;display:block}.sub{color:var(--color-text-sub);font-size:13px}.small{font-size:var(--font-size-sub)}.muted{color:var(--color-text-sub)}.row{justify-content:space-between;align-items:center;gap:12px;display:flex}.grow{flex:1;min-width:0}.amount{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.empty{padding:18px var(--card-padding);color:var(--color-text-sub);background:var(--color-card);border-radius:var(--card-radius)}.error-text{color:var(--color-review-soft-text);background:var(--color-review-soft);border-radius:12px;padding:10px 12px;font-size:13px}.button{width:100%;font-size:var(--font-size-button);text-align:center;border:none;justify-content:center;align-items:center;gap:8px;font-weight:700;text-decoration:none;display:inline-flex}.button:disabled,.button[aria-disabled=true]{opacity:.5;cursor:default}.button-primary{min-height:var(--button-primary-height);border-radius:var(--button-primary-radius);background:var(--color-brand);color:var(--color-brand-on);font-size:16px}.button-secondary{min-height:var(--button-secondary-height);background:var(--color-idle);color:var(--color-idle-text);border-radius:12px}.button-inline{width:auto;min-height:var(--tap-min);padding:0 16px}.owner-toggle{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.owner-toggle button{min-height:var(--tap-min);background:var(--color-idle);color:var(--color-idle-text);font-size:var(--font-size-button);border:none;border-radius:12px;font-weight:700}.owner-toggle button[aria-checked=true][data-owner=M]{background:var(--color-m);color:var(--color-m-on)}.owner-toggle button[aria-checked=true][data-owner=SHARED]{background:var(--color-brand);color:var(--color-brand-on)}.owner-toggle button[aria-checked=true][data-owner=N]{background:var(--color-n);color:var(--color-n-on)}.owner-toggle button:disabled{cursor:default}.review-label{background:var(--color-review-soft);color:var(--color-review-soft-text);font-size:var(--font-size-sub);border-radius:8px;padding:3px 10px;line-height:1.5;display:inline-block}.chip{border-radius:var(--chip-radius);font-size:var(--font-size-sub);white-space:nowrap;align-items:center;padding:2px 10px;font-weight:500;display:inline-flex}.chip-idle{background:var(--color-idle);color:var(--color-idle-text)}.chip-review{background:var(--color-review-soft);color:var(--color-review-soft-text)}.chip-done{background:var(--color-brand-soft);color:var(--color-brand-soft-text)}.item-card{flex-direction:column;gap:10px;display:flex}.item-name{font-size:var(--font-size-name);overflow-wrap:anywhere;font-weight:700;line-height:1.4}.item-raw{font-size:var(--font-size-sub);color:var(--color-text-sub);overflow-wrap:anywhere}.item-price{font-size:var(--font-size-name)}.totals{flex-direction:column;gap:6px;display:flex}.totals-row{justify-content:space-between;align-items:baseline;min-height:28px;display:flex}.totals-row .owner-name{font-weight:700}.totals-row[data-owner=M] .owner-name,.totals-row[data-owner=M] .amount{color:var(--color-m-soft-text)}.totals-row[data-owner=SHARED] .owner-name,.totals-row[data-owner=SHARED] .amount{color:var(--color-brand-soft-text)}.totals-row[data-owner=N] .owner-name,.totals-row[data-owner=N] .amount{color:var(--color-n-soft-text)}.totals-settlement{justify-content:space-between;align-items:baseline;gap:12px;margin-top:14px;display:flex}.totals-settlement .amount{font-size:26px}.direction{align-items:baseline;gap:6px;font-weight:700;display:inline-flex}.direction .who-M{color:var(--color-m)}.direction .who-N{color:var(--color-n)}.direction .arrow{color:var(--color-text-sub);font-weight:400}.user-badge{width:var(--tap-min);height:var(--tap-min);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:inline-flex}.user-badge[data-user=M]{background:var(--color-m-soft);color:var(--color-m-soft-text)}.user-badge[data-user=N]{background:var(--color-n-soft);color:var(--color-n-soft-text)}.input,.textarea{width:100%;min-height:var(--tap-min);background:var(--color-card);border:none;border-radius:12px;padding:10px 14px}.textarea{resize:vertical;min-height:96px;line-height:1.6}.field-label{color:var(--color-text-sub);margin-bottom:6px;font-size:13px;font-weight:500;display:block}.card.list-card{align-items:center;gap:12px;min-height:64px;display:flex}.list-card .chevron{color:var(--color-text-sub);font-size:18px}.receipt-image{border-radius:12px;max-width:100%;margin:10px auto 0;display:block}.loading{text-align:center;color:var(--color-text-sub);padding:32px 0}.actions{flex-direction:column;gap:10px;margin-top:20px;display:flex}.dev-bar{background:var(--color-text);color:var(--color-card);opacity:.85;z-index:10;border-radius:12px;gap:6px;padding:6px;font-size:12px;display:flex;position:fixed;bottom:8px;right:8px}.dev-bar button,.dev-bar a{background:var(--color-text-sub);min-height:32px;color:var(--color-card);border:none;border-radius:8px;align-items:center;padding:0 10px;text-decoration:none;display:inline-flex}.steps{flex-direction:column;gap:6px;margin:0;padding-left:1.4em;display:flex}
