:root{--bg: #14120d;--bg-2: #1a1711;--surface: #201c15;--surface-2: #271f17;--surface-3: #2e251b;--ink: #f2ecdd;--ink-2: #b6ac93;--ink-3: #807660;--line: rgba(255, 244, 226, .13);--line-2: rgba(255, 244, 226, .06);--accent: #3f9d73;--accent-ink: #0c1410;--accent-deep: #2f8460;--accent-soft: color-mix(in srgb, var(--accent) 20%, transparent);--accent-line: color-mix(in srgb, var(--accent) 54%, var(--line));--steel: #5d9bce;--steel-soft: color-mix(in srgb, var(--steel) 18%, transparent);--steel-line: color-mix(in srgb, var(--steel) 50%, var(--line));--ok: #4fae7c;--warn: #e0a13a;--danger: #d4583c;--warn-soft: color-mix(in srgb, var(--warn) 18%, transparent);--danger-soft: color-mix(in srgb, var(--danger) 18%, transparent);--radius: 16px;--radius-sm: 11px;--maxw: 760px;--font: "IBM Plex Sans JP", system-ui, -apple-system, sans-serif;--mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, monospace;--shadow-1: 0 1px 2px rgba(0, 0, 0, .4);--shadow-2: 0 18px 48px -22px rgba(0, 0, 0, .75)}[data-theme=light]{--bg: #f3efe6;--bg-2: #ece5d8;--surface: #fffdf8;--surface-2: #f9f4ea;--surface-3: #efe8d9;--ink: #211c15;--ink-2: #5b5346;--ink-3: #8c8472;--line: rgba(33, 28, 21, .12);--line-2: rgba(33, 28, 21, .06);--accent: #2f8460;--accent-ink: #ffffff;--accent-deep: #246a4d;--steel: #3873a8;--warn: #b97e16;--danger: #c0492c;--shadow-1: 0 1px 2px rgba(40, 30, 14, .05);--shadow-2: 0 16px 40px -24px rgba(40, 30, 14, .42)}html{-webkit-text-size-adjust:100%}html body{font-family:var(--font);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;line-height:1.55;margin:0;padding:0}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.5;background-image:radial-gradient(120% 70% at 50% -10%,var(--bg-2) 0%,transparent 60%),repeating-linear-gradient(135deg,color-mix(in srgb,var(--ink) 3%,transparent) 0 1px,transparent 1px 7px)}.app a{color:inherit;text-decoration:none}.app button{font-family:inherit}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.app{position:relative;z-index:1;max-width:var(--maxw);margin:0 auto;min-height:100dvh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:12px;padding:11px clamp(14px,4vw,22px);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 84%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:11px;min-width:0}.brand__mark{width:38px;height:38px;flex:none;display:grid;place-items:center;border-radius:11px;background:var(--surface);border:1px solid var(--line);color:var(--accent)}.brand__mark svg{width:22px;height:22px}.brand__txt{min-width:0}.brand__name{font-size:15.5px;font-weight:600;line-height:1.15;white-space:nowrap}.brand__sub{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3)}.topspring{flex:1}.terminal-badge{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:11px;font-weight:600;color:var(--steel);padding:5px 10px;border-radius:8px;border:1px solid var(--steel-line);background:var(--steel-soft);white-space:nowrap}.terminal-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--steel)}.actions{display:flex;align-items:center;gap:7px}.iconbtn{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);cursor:pointer;position:relative;transition:color .16s,border-color .16s,background .16s,transform .12s}.iconbtn:hover{color:var(--ink);border-color:var(--ink-3)}.iconbtn:active{transform:translateY(1px)}.iconbtn svg{width:19px;height:19px}.iconbtn .tip{position:absolute;top:46px;right:0;font-family:var(--mono);font-size:10px;white-space:nowrap;background:var(--ink);color:var(--bg);padding:4px 8px;border-radius:6px;opacity:0;pointer-events:none;transition:opacity .15s;z-index:40}.iconbtn:hover .tip{opacity:.95}.main{flex:1;min-height:0;position:relative}.screen{display:none;flex-direction:column;gap:16px;padding:clamp(14px,4vw,20px) clamp(14px,4vw,22px) 110px}.screen.is-active{display:flex}.section-lab{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:700;color:var(--ink-2);letter-spacing:.01em;padding:0 2px}.section-lab .en{font-family:var(--mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);font-weight:500}.section-lab__line{flex:1;height:1px;background:var(--line-2)}.section-lab__count{font-family:var(--mono);font-size:11px;color:var(--ink-3)}.section-lab__btn{border:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);font-size:11.5px;font-weight:600;padding:5px 11px;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.section-lab__btn svg{width:14px;height:14px}.section-lab__btn:hover{border-color:var(--accent-line);color:var(--accent)}.section-lab__btn--accent{border-color:var(--accent-line);color:var(--accent);background:var(--accent-soft)}.cart{border:1px solid var(--accent-line);border-radius:var(--radius);background:radial-gradient(150% 130% at 100% 0%,var(--accent-soft) 0%,transparent 52%),var(--surface);box-shadow:var(--shadow-1);display:flex;flex-direction:column;overflow:hidden}.cart__head{display:flex;align-items:center;gap:10px;padding:13px 15px 10px}.cart__title{font-size:15px;font-weight:700;display:flex;align-items:center;gap:8px}.cart__title .badge{font-family:var(--mono);font-size:11px;font-weight:600;color:var(--accent);background:var(--accent-soft);border:1px solid var(--accent-line);padding:1px 8px;border-radius:999px}.cart__list{display:flex;flex-direction:column;max-height:42dvh;overflow-y:auto;padding:0 7px}.cart-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:11px 8px;border-top:1px solid var(--line-2)}.cart-row:first-child{border-top:none}.cart-row__main{min-width:0}.cart-row__name{font-size:14px;font-weight:600;line-height:1.3}.cart-row__price{font-family:var(--mono);font-size:11px;color:var(--ink-3);margin-top:1px}.cart-row__sum{font-family:var(--mono);font-size:14px;font-weight:600;white-space:nowrap}.qty{display:flex;align-items:center;gap:2px}.qty__b{width:30px;height:30px;border-radius:8px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font-size:16px;cursor:pointer;display:grid;place-items:center}.qty__b:hover{border-color:var(--ink-3)}.qty__n{font-family:var(--mono);font-size:13px;min-width:22px;text-align:center}.qty__del{color:var(--ink-3)}.qty__del svg{width:15px;height:15px}.qty__del:hover{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,var(--line));background:var(--danger-soft)}.cart__foot{display:flex;align-items:center;gap:12px;padding:13px 15px;border-top:1px solid var(--line);background:var(--surface-2)}.cart__total-lab{font-size:12px;color:var(--ink-3)}.cart__total{font-family:var(--mono);font-size:26px;font-weight:700;letter-spacing:-.02em}.cart__foot-sp{flex:1}.reg-actions{display:grid;grid-template-columns:1fr 1fr auto;gap:9px}.bigbtn{display:flex;align-items:center;justify-content:center;gap:9px;height:56px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font-size:15px;font-weight:700;cursor:pointer;transition:border-color .15s,background .15s,transform .1s}.bigbtn:hover{border-color:var(--accent-line)}.bigbtn:active{transform:scale(.98)}.bigbtn svg{width:22px;height:22px}.bigbtn--scan{border-color:var(--steel-line);color:var(--steel);background:var(--steel-soft)}.bigbtn--code{flex:none;width:56px}.checkout-bar{position:sticky;bottom:78px;z-index:5;display:flex;gap:9px}.checkout-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:10px;height:60px;border-radius:var(--radius-sm);border:none;background:var(--accent);color:var(--accent-ink);font-size:17px;font-weight:700;cursor:pointer;box-shadow:0 10px 26px -10px color-mix(in srgb,var(--accent) 70%,transparent);transition:background .16s,transform .1s}.checkout-btn:hover{background:var(--accent-deep)}.checkout-btn:active{transform:scale(.99)}.checkout-btn:disabled{opacity:.4;box-shadow:none;cursor:default}.checkout-btn svg{width:24px;height:24px}.clearbtn{flex:none;width:60px;height:60px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);color:var(--ink-3);cursor:pointer;display:grid;place-items:center}.clearbtn:hover{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,var(--line))}.clearbtn:disabled{opacity:.35;cursor:default}.clearbtn svg{width:22px;height:22px}.quick-head{display:flex;align-items:center;gap:10px}.quick-search,.inv-search{flex:1;height:42px;padding:0 14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--ink);font-size:14px;outline:none}.quick-search:focus,.inv-search:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft)}.quick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:9px}.quick{display:flex;flex-direction:column;gap:3px;text-align:left;padding:12px 13px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;min-height:78px;transition:border-color .14s,background .14s,transform .08s}.quick:hover{border-color:var(--accent-line);background:var(--surface-2)}.quick:active{transform:scale(.97)}.quick__name{font-size:13.5px;font-weight:600;line-height:1.3}.quick__price{font-family:var(--mono);font-size:14px;font-weight:700;color:var(--accent);margin-top:auto}.quick__stock{font-family:var(--mono);font-size:10px;color:var(--ink-3)}.quick--out{opacity:.62}.quick--out .quick__stock{color:var(--danger)}.quick-empty{grid-column:1 / -1;padding:26px;text-align:center;color:var(--ink-3);font-size:13px}.quick-empty b{color:var(--accent);cursor:pointer;text-decoration:underline}.inv-list{display:flex;flex-direction:column;gap:8px}.inv-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface)}.inv-row__main{min-width:0}.inv-row__name{font-size:14.5px;font-weight:600;line-height:1.3}.inv-row__meta{font-size:11.5px;color:var(--ink-3);margin-top:2px}.inv-row__meta .mono{font-size:11px}.inv-row__cost{color:var(--ink-3)}.stockctl{display:flex;align-items:center;gap:3px}.stockctl__b{width:32px;height:32px;border-radius:8px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font-size:17px;cursor:pointer;display:grid;place-items:center}.stockctl__b:hover{border-color:var(--ink-3)}.stockctl__n{font-family:var(--mono);font-size:16px;font-weight:700;min-width:40px;text-align:center;font-variant-numeric:tabular-nums}.stockctl__n.low{color:var(--warn)}.stockctl__n.out{color:var(--danger)}.inv-edit{width:34px;height:34px;border-radius:8px;border:1px solid var(--line);background:transparent;color:var(--ink-3);cursor:pointer;display:grid;place-items:center}.inv-edit:hover{color:var(--accent);border-color:var(--accent-line);background:var(--accent-soft)}.inv-edit svg{width:16px;height:16px}.sum-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}@media(min-width:560px){.sum-grid{grid-template-columns:repeat(4,1fr)}}.sum-card{padding:15px 16px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface)}.sum-card--hero{border-color:var(--accent-line);background:radial-gradient(150% 130% at 100% 0%,var(--accent-soft) 0%,transparent 60%),var(--surface);grid-column:span 2}.sum-card__k{font-size:11px;color:var(--ink-3);letter-spacing:.04em}.sum-card__v{font-family:var(--mono);font-weight:700;font-size:24px;letter-spacing:-.02em;margin-top:3px}.sum-card--hero .sum-card__v{font-size:34px;color:var(--accent)}.sum-card__u{font-size:13px;color:var(--ink-3);font-weight:600}.txn-list{display:flex;flex-direction:column;gap:8px}.txn{display:block;width:100%;text-align:left;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);cursor:pointer;transition:border-color .14s,background .14s}.txn:hover{border-color:var(--ink-3);background:var(--surface-2)}.txn__top{display:flex;align-items:center;gap:10px}.txn__time{font-size:11.5px;color:var(--ink-3)}.txn__pay{font-size:10.5px;color:var(--steel);border:1px solid var(--steel-line);background:var(--steel-soft);padding:1px 7px;border-radius:999px}.txn__amt{margin-left:auto;font-family:var(--mono);font-size:15px;font-weight:700}.txn__items{font-size:12px;color:var(--ink-2);margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.det{width:100%;border-collapse:collapse}.det td{padding:7px 4px;border-bottom:1px solid var(--line-2);font-size:13.5px}.det td.det__r{text-align:right;font-weight:600}.det__totalrow{display:flex;align-items:baseline;justify-content:space-between;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.det__totalrow b{font-family:var(--mono);font-size:24px;font-weight:700}.sync-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:18px;display:flex;flex-direction:column;align-items:center;gap:14px}.seg-row{display:flex;gap:8px;width:100%}.seg{flex:1;height:40px;border-radius:10px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);font-size:13px;font-weight:600;cursor:pointer}.seg.is-on{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent)}.qrbox{width:248px;height:248px;max-width:80vw;padding:14px;border-radius:var(--radius-sm);background:#fff;box-shadow:var(--shadow-1);display:grid;place-items:center}.qrbox svg{width:100%;height:100%;display:block}.qr-fallback{font-size:12px;color:#555;text-align:center;padding:10px;line-height:1.6}.sync-info{font-family:var(--mono);font-size:11px;color:var(--ink-3);text-align:center;line-height:1.6}.urlrow{display:flex;gap:8px;width:100%}.urlrow input{flex:1;min-width:0;height:44px;padding:0 13px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--ink-2);font-family:var(--mono);font-size:11px;outline:none}.sync-note{font-size:11.5px;color:var(--ink-3);text-align:center;line-height:1.7}.sync-import{display:flex;flex-direction:column;gap:10px}.intro-card{border:1px solid var(--accent-line);border-radius:var(--radius);background:radial-gradient(140% 130% at 0% 0%,var(--accent-soft) 0%,transparent 55%),var(--surface);padding:18px 18px 16px}.intro-card h2{font-size:18px;font-weight:700}.intro-card p{font-size:13px;color:var(--ink-2);margin-top:6px;line-height:1.75;text-wrap:pretty}.feat-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.feat{font-family:var(--mono);font-size:11px;color:var(--ink-2);border:1px solid var(--line);background:var(--surface-2);padding:4px 10px;border-radius:999px;display:inline-flex;align-items:center;gap:6px}.feat:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent)}.man-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:16px 17px}.man-card__head{display:flex;align-items:flex-start;gap:12px}.man-card__ic{flex:none;width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:var(--surface-3);color:var(--accent)}.man-card__ic svg{width:21px;height:21px}.man-card__t{font-size:15.5px;font-weight:700}.man-card__lead{font-size:12.5px;color:var(--ink-3);margin-top:2px;line-height:1.55}.man-steps{margin:14px 0 0;padding:0;list-style:none;counter-reset:step;display:flex;flex-direction:column;gap:10px}.man-steps li{position:relative;padding-left:34px;font-size:13.5px;color:var(--ink-2);line-height:1.7;text-wrap:pretty;counter-increment:step}.man-steps li:before{content:counter(step);position:absolute;left:0;top:1px;width:23px;height:23px;border-radius:7px;display:grid;place-items:center;font-family:var(--mono);font-size:12px;font-weight:700;color:var(--accent);background:var(--accent-soft);border:1px solid var(--accent-line)}.man-steps li b{color:var(--ink);font-weight:700}.man-steps code,.intro-card code,.faq-a code,.imp-help code{font-family:var(--mono);font-size:11.5px;background:var(--surface-3);padding:1px 6px;border-radius:5px;color:var(--accent)}.faq-item{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden}.faq-item+.faq-item{margin-top:8px}.faq-q{width:100%;display:flex;align-items:center;gap:12px;text-align:left;padding:14px 15px;background:transparent;border:none;color:var(--ink);cursor:pointer;font-size:14px;font-weight:600;line-height:1.4}.faq-q span{flex:1}.faq-chev{width:18px;height:18px;flex:none;color:var(--ink-3);transition:transform .2s}.faq-item.is-open .faq-chev{transform:rotate(180deg)}.faq-a{max-height:0;overflow:hidden;transition:max-height .28s ease}.faq-item.is-open .faq-a{max-height:320px}.faq-a p{padding:0 15px 15px;font-size:13px;color:var(--ink-2);line-height:1.8;text-wrap:pretty}.links-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}.link-row{display:flex;align-items:center;gap:12px;padding:14px 15px;border-top:1px solid var(--line-2);cursor:pointer;transition:background .14s}.link-row:first-child{border-top:none}.link-row:hover{background:var(--surface-2)}.link-row__ic{flex:none;width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--surface-3);color:var(--ink-2)}.link-row__ic svg{width:18px;height:18px}.link-row__t{flex:1;font-size:13.5px;font-weight:600}.link-row__arr{color:var(--ink-3)}.link-row__arr svg{width:16px;height:16px}.tabbar{position:fixed;left:50%;transform:translate(-50%);bottom:0;z-index:35;width:min(var(--maxw),100vw);display:grid;grid-template-columns:repeat(5,1fr);background:color-mix(in srgb,var(--surface) 94%,transparent);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding-bottom:env(safe-area-inset-bottom)}.tab{display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 4px 8px;background:transparent;border:none;color:var(--ink-3);cursor:pointer;transition:color .15s}.tab svg{width:22px;height:22px}.tab span{font-size:10.5px;font-weight:600}.tab.is-on{color:var(--accent)}.tab:active{transform:scale(.95)}.scrim{position:fixed;inset:0;z-index:50;background:color-mix(in srgb,#000 60%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:opacity .22s}.scrim.show{opacity:1;pointer-events:auto}.sheet{position:fixed;z-index:51;left:50%;bottom:0;transform:translate(-50%,100%);width:min(var(--maxw),100vw);max-height:92dvh;overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:22px 22px 0 0;box-shadow:var(--shadow-2);transition:transform .3s cubic-bezier(.32,.72,0,1);padding-bottom:env(safe-area-inset-bottom)}.sheet.show{transform:translate(-50%)}.sheet__grip{width:40px;height:4px;border-radius:4px;background:var(--line);margin:10px auto 0}.sheet__head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 18px 10px}.sheet__title{font-size:17px;font-weight:700}.sheet__title .en{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);margin-left:8px;font-weight:500}.sheet__body{padding:6px 18px 22px;display:flex;flex-direction:column;gap:16px}.modal{position:fixed;z-index:51;left:50%;top:50%;transform:translate(-50%,-46%) scale(.97);width:min(440px,calc(100vw - 28px));max-height:calc(100dvh - 40px);overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-2);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}.modal.show{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}.modal__head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 17px;border-bottom:1px solid var(--line-2)}.modal__title{font-size:16px;font-weight:700}.modal__title .en{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);margin-left:8px;font-weight:500}.modal__body{padding:17px;display:flex;flex-direction:column;gap:15px}.fgroup{display:flex;flex-direction:column;gap:7px}.flabel{font-size:12px;font-weight:600;color:var(--ink-2);display:flex;align-items:center;gap:7px}.flabel .req{color:var(--accent);font-size:11px}.flabel .hint{font-weight:500;color:var(--ink-3);font-size:11px}.tin{width:100%;height:46px;padding:0 14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--ink);font-family:inherit;font-size:15px;outline:none;transition:border-color .15s,box-shadow .15s,background .15s}.tin:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft)}.tin::placeholder{color:var(--ink-3)}textarea.tin{height:auto;min-height:96px;padding:11px 14px;line-height:1.6;resize:vertical;font-family:var(--mono);font-size:12.5px}.tin--num{font-family:var(--mono);font-variant-numeric:tabular-nums;-moz-appearance:textfield}.tin--num::-webkit-outer-spin-button,.tin--num::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.frow2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.frow3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.inrow{display:flex;align-items:stretch;gap:8px}.inrow .suffix{flex:none;display:grid;place-items:center;padding:0 14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-3);color:var(--ink-3);font-family:var(--mono);font-size:13px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 18px;border-radius:var(--radius-sm);border:1px solid transparent;font-size:14.5px;font-weight:700;color:var(--ink);background:transparent;cursor:pointer;white-space:nowrap;transition:background .16s,border-color .16s,color .16s,transform .1s}.btn svg{width:18px;height:18px}.btn--primary{background:var(--accent);color:var(--accent-ink)}.btn--primary:hover{background:var(--accent-deep)}.btn--primary:active{transform:translateY(1px)}.btn--ghost{border-color:var(--line);background:var(--surface-2);color:var(--ink-2)}.btn--ghost:hover{border-color:var(--ink-3);color:var(--ink)}.btn--danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,var(--line));background:var(--danger-soft)}.btn--danger:hover{background:var(--danger);color:#fff}.btn--steel{background:var(--steel);color:#0c1420}.btn--steel:hover{filter:brightness(1.08)}.btn--block{width:100%}.btn:disabled{opacity:.45;cursor:default}.form-actions{display:flex;gap:10px}.form-actions .btn{flex:1}.co-total{text-align:center;padding:6px 0 2px}.co-total__k{font-size:12px;color:var(--ink-3)}.co-total__v{font-family:var(--mono);font-size:42px;font-weight:700;letter-spacing:-.02em;color:var(--accent)}.co-change{display:flex;align-items:baseline;justify-content:space-between;padding:12px 14px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--line)}.co-change__k{font-size:13px;color:var(--ink-2)}.co-change__v{font-family:var(--mono);font-size:22px;font-weight:700}.co-change__v.is-short{color:var(--danger);font-size:16px}.qcash-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:8px}.qcash{height:44px;border-radius:10px;border:1px solid var(--accent-line);background:var(--surface);color:var(--accent);font-family:var(--mono);font-size:13px;font-weight:700;cursor:pointer}.qcash:hover{background:var(--accent-soft)}.qcash:active{background:var(--accent);color:var(--accent-ink)}.receipt-paper{font-family:var(--mono);font-size:12px;line-height:1.5;color:#1a1208;background:#fffdf5;border-radius:8px;padding:18px 16px;white-space:pre;overflow-x:auto;box-shadow:inset 0 0 0 1px #0000000f}.scan-stage{position:relative;width:100%;border-radius:var(--radius-sm);overflow:hidden;background:#000;aspect-ratio:4/3}.scan-stage video{width:100%;height:100%;object-fit:cover;display:block}.scan-frame{position:absolute;inset:16% 12%;border:2px solid rgba(255,255,255,.7);border-radius:12px;box-shadow:0 0 0 9999px #00000047}.scan-frame:after{content:"";position:absolute;left:6%;right:6%;top:50%;height:2px;background:var(--accent);box-shadow:0 0 8px var(--accent);animation:scanline 2s ease-in-out infinite}@keyframes scanline{0%,to{top:18%}50%{top:82%}}.scan-status{font-size:12.5px;color:var(--ink-2);text-align:center;min-height:18px}.imp-pick{display:flex;flex-direction:column;gap:10px}.imp-help{font-size:11.5px;color:var(--ink-3);line-height:1.7}.imp-or{display:flex;align-items:center;gap:10px;color:var(--ink-3);font-size:11px}.imp-or:before,.imp-or:after{content:"";flex:1;height:1px;background:var(--line-2)}.set-block{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);padding:13px 14px;display:flex;flex-direction:column;gap:9px}.set-block__row{display:flex;align-items:center;gap:10px}.set-block__t{font-size:13px;font-weight:700}.set-block__s{font-size:11.5px;color:var(--ink-3);flex:1}.storage-bar{height:7px;border-radius:5px;background:var(--surface-3);overflow:hidden}.storage-bar i{display:block;height:100%;background:var(--steel);border-radius:5px;transition:width .4s}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:44px 24px;text-align:center;color:var(--ink-3)}.empty__ic{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;border:1px solid var(--line);background:var(--surface);color:var(--accent)}.empty__ic svg{width:26px;height:26px}.empty__t{font-size:14px;font-weight:600;color:var(--ink-2)}.empty__s{font-size:12.5px;line-height:1.7;max-width:280px;text-wrap:pretty}.toast{position:fixed;left:50%;bottom:92px;transform:translate(-50%,16px);z-index:80;display:flex;align-items:center;gap:9px;background:var(--ink);color:var(--bg);padding:11px 18px;border-radius:999px;font-size:13px;font-weight:600;box-shadow:0 16px 36px -14px #0009;opacity:0;pointer-events:none;transition:opacity .24s,transform .24s;max-width:calc(100vw - 32px)}.toast.show{opacity:1;transform:translate(-50%)}.toast svg{width:16px;height:16px;flex:none;color:var(--accent)}.foot{text-align:center;color:var(--ink-3);font-size:11px;padding:4px 0 2px}.foot a{color:var(--ink-2)}.foot a:hover{color:var(--accent)}[dir=rtl] .brand__sub,[dir=rtl] .section-lab .en{letter-spacing:0}@media(prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}
