:root{--ink:#1e2a33;--ink-soft:#52616b;--paper:#faf8f3;--paper-raised:#fff;--hairline:#ddd6c5;--accent:#2f6f62;--accent-soft:#e4efec;--warn:#b5502d;--warn-soft:#f6e9e2;--gold:#b08a3e;--gold-soft:#f5eeda;--shadow:0 1px 2px #1e2a330f, 0 4px 12px #1e2a330f;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Noto Sans SC", Roboto, Helvetica, Arial, sans-serif;--mono:ui-monospace, SFMono-Regular, "SF Mono", Consolas, "Cascadia Mono", monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#root{height:100%}body{font:15px/1.5 var(--sans);background:var(--paper);color:var(--ink);overscroll-behavior-y:none;margin:0}button,input,select,textarea{font-family:inherit;font-size:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:var(--accent)}h1,h2,h3{font-family:var(--sans);color:var(--ink);margin:0}.scrollbox{-webkit-overflow-scrolling:touch;overflow-y:auto}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important}}.app-shell{background:var(--paper);border-inline:1px solid var(--hairline);flex-direction:column;max-width:480px;height:100dvh;margin:0 auto;display:flex;position:relative}@media (width>=481px){.app-shell{border-radius:0}}.topbar{border-bottom:1px solid var(--hairline);background:var(--paper);flex:none;justify-content:space-between;align-items:center;padding:14px 16px 12px;display:flex}.topbar-title{letter-spacing:.2px;align-items:center;gap:8px;font-size:17px;font-weight:700;display:flex}.topbar-title .stamp-mark{border:1.5px solid var(--accent);width:22px;height:22px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:800;display:flex}.topbar-actions{align-items:center;gap:8px;display:flex}.lang-toggle{border:1px solid var(--hairline);background:var(--paper-raised);color:var(--ink-soft);letter-spacing:.3px;border-radius:999px;padding:5px 11px;font-size:12px;font-weight:600}.lang-toggle:hover{border-color:var(--accent);color:var(--accent)}.icon-btn{color:var(--ink-soft);background:0 0;border:none;padding:5px 8px;font-size:12px}.icon-btn:hover{color:var(--warn)}.main-scroll{-webkit-overflow-scrolling:touch;flex:auto;padding:14px 16px 24px;overflow-y:auto}.bottom-nav{border-top:1px solid var(--hairline);background:var(--paper-raised);padding-bottom:env(safe-area-inset-bottom,0);flex:none;display:flex}.bottom-nav button{color:var(--ink-soft);letter-spacing:.2px;background:0 0;border:none;border-top:2px solid #0000;flex-direction:column;flex:1;align-items:center;gap:3px;padding:9px 4px 8px;font-size:11px;font-weight:600;display:flex}.bottom-nav button.active{color:var(--accent);border-top-color:var(--accent)}.bottom-nav .nav-icon{justify-content:center;align-items:center;width:20px;height:20px;display:flex}.login-screen{background:var(--ink);justify-content:center;align-items:center;min-height:100dvh;padding:20px;display:flex;position:relative}.lang-toggle--login{color:#fff;background:#ffffff14;border-color:#ffffff40;position:absolute;top:20px;right:20px}.login-card{background:var(--paper-raised);text-align:center;border-radius:14px;width:100%;max-width:340px;padding:32px 28px 28px;box-shadow:0 20px 50px #00000059}.login-mark{border:2px solid var(--accent);width:48px;height:48px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 14px;font-size:20px;font-weight:800;display:flex}.login-title{margin-bottom:2px;font-size:20px}.login-sub{color:var(--ink-soft);margin-bottom:20px;font-size:13px}.login-form{text-align:left;flex-direction:column;gap:14px;display:flex}.field{color:var(--ink-soft);flex-direction:column;gap:5px;font-size:12.5px;font-weight:600;display:flex}.field input,.field select,.field textarea{border:1px solid var(--hairline);background:var(--paper-raised);color:var(--ink);border-radius:8px;padding:9px 10px;font-weight:400}.field textarea{resize:vertical;min-height:44px}.field-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.form-error{background:var(--warn-soft);color:var(--warn);border-radius:8px;padding:8px 10px;font-size:13px;font-weight:600}.form-note{color:var(--ink-soft);background:var(--accent-soft);border-radius:8px;padding:8px 10px;font-size:12px;line-height:1.4}.btn{border:1px solid #0000;border-radius:9px;padding:11px 16px;font-size:14px;font-weight:700}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:#275c51}.btn-secondary{background:var(--paper-raised);border-color:var(--hairline);color:var(--ink)}.btn-secondary:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btn-danger{background:var(--paper-raised);border-color:var(--warn);color:var(--warn)}.btn-block{width:100%}.btn-sm{border-radius:7px;padding:6px 10px;font-size:12.5px}.page-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.page-header h2{font-size:18px}.card{background:var(--paper-raised);border:1px solid var(--hairline);border-radius:12px;margin-bottom:10px;padding:12px 14px}.card-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.card-title{font-size:14.5px;font-weight:700}.card-sub{color:var(--ink-soft);margin-top:2px;font-size:12px}.badge{letter-spacing:.2px;border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.badge-credit{background:var(--accent-soft);color:var(--accent)}.badge-debit{background:var(--warn-soft);color:var(--warn)}.badge-neutral{color:var(--ink-soft);background:#eee}.badge-late{background:var(--gold-soft);color:var(--gold)}.mono{font-family:var(--mono)}.empty-state{text-align:center;color:var(--ink-soft);padding:40px 10px;font-size:13px}.scroll-panel{-webkit-overflow-scrolling:touch;border:1px solid var(--hairline);background:#fffdf8;border-radius:10px;max-height:260px;padding:8px;overflow-y:auto}.scroll-panel-tall{max-height:46vh}.line-item-card{border:1px solid var(--hairline);background:var(--paper-raised);border-radius:9px;margin-bottom:8px;padding:10px}.line-item-card:last-child{margin-bottom:0}.line-item-fee{text-align:right;margin-top:6px;font-size:13px;font-weight:700}.stat-strip{gap:8px;margin-bottom:12px;display:flex}.stat-box{background:var(--paper-raised);border:1px solid var(--hairline);text-align:center;border-radius:10px;flex:1;padding:10px}.stat-box .label{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.4px;font-size:10.5px}.stat-box .value{font-family:var(--mono);margin-top:2px;font-size:14px;font-weight:700}.type-toggle{gap:8px;margin-bottom:14px;display:flex}.type-toggle button{border:1.5px solid var(--hairline);background:var(--paper-raised);color:var(--ink-soft);border-radius:9px;flex:1;padding:10px;font-size:13px;font-weight:700}.type-toggle button.active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.modal-overlay{z-index:40;background:#141a1e73;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=481px){.modal-overlay{align-items:center}}.modal-sheet{background:var(--paper);border-radius:16px 16px 0 0;flex-direction:column;width:100%;max-width:480px;max-height:88dvh;display:flex;overflow:hidden}@media (width>=481px){.modal-sheet{border-radius:14px;max-height:80dvh}}.modal-header{border-bottom:1px solid var(--hairline);flex:none;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.modal-body{-webkit-overflow-scrolling:touch;flex:auto;padding:14px 16px 20px;overflow-y:auto}.modal-footer{border-top:1px solid var(--hairline);flex:none;gap:10px;padding:12px 16px;display:flex}.modal-footer .btn{flex:1}.restricted-note{background:var(--gold-soft);color:#7a5f26;border-radius:10px;margin-bottom:12px;padding:10px 12px;font-size:13px;line-height:1.4}.audit-flag{color:var(--gold);margin-top:4px;font-size:11px;font-weight:700}.customer-select{width:100%}
