:root{--bg: #f4f5f7;--surface: #ffffff;--text: #111827;--muted: #6b7280;--accent: #1d4ed8;--accent-press: #1e40af;--danger: #dc2626;--border: #d1d5db;--radius: 8px;font-size:16px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;font-variant-numeric:tabular-nums;background:var(--bg);color:var(--text)}button{font:inherit;min-height:44px;padding:0 16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}button.danger{border-color:var(--danger);color:var(--danger)}button:disabled{opacity:.45;cursor:default}input,select,textarea{font:inherit;min-height:44px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);width:100%}input:focus,select:focus,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.muted{color:var(--muted)}.error-text{color:var(--danger);font-weight:600}.num{text-align:right}.app-shell{height:100%;display:flex;flex-direction:column}.topbar{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:var(--surface);border-bottom:1px solid var(--border)}.topbar-nav{display:flex;gap:8px}.nav-tab.active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.topbar-right{display:flex;gap:12px;align-items:center}.screen-host{flex:1;min-height:0;overflow-y:auto;padding:16px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:12px;max-width:1100px;margin:0 auto 16px}.panel-head{display:flex;justify-content:space-between;align-items:center}.panel h2{margin:0;font-size:20px}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:10px 8px;border-bottom:1px solid var(--border);text-align:left}.table th.num,.table td.num{text-align:right}.inactive-row{color:var(--muted)}.row-actions{display:flex;gap:8px;justify-content:flex-end}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;border:1px solid var(--accent);border-radius:var(--radius);padding:12px}.form-grid label{display:flex;flex-direction:column;gap:4px;font-weight:600}.span-2{grid-column:1 / -1}.form-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:10px}.login-wrap{height:100%;display:flex;align-items:center;justify-content:center}.login-box{width:420px;display:flex;flex-direction:column;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px}.login-box h1{margin:0;font-size:24px}.login-box label{display:flex;flex-direction:column;gap:4px;font-weight:600}.perm-grid{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.perm-check{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;font-weight:400!important}.perm-check input{width:22px;min-height:22px;height:22px}.report-total{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px solid var(--text);padding-bottom:8px}.report-total-amount{font-size:36px;font-weight:700}.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.controls-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.controls-row input{width:auto}.token-box{border:2px solid var(--accent);border-radius:var(--radius);padding:12px;font-family:ui-monospace,monospace;word-break:break-all;-webkit-user-select:all;user-select:all}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#11182766;display:flex;align-items:center;justify-content:center;z-index:50}.dialog{background:var(--surface);border-radius:var(--radius);padding:20px;min-width:380px;display:flex;flex-direction:column;gap:12px}.dialog h2{margin:0;font-size:20px}.dialog label{display:flex;flex-direction:column;gap:4px;font-weight:600}.an-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.an-card{border:1px solid var(--border);border-radius:var(--radius);padding:16px;text-align:center}.an-card-label{color:var(--muted);font-size:14px}.an-card-value{font-size:32px;font-weight:700;margin-top:4px}.an-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:1100px;margin:0 auto 16px}.an-grid .panel{margin:0}.an-grid h3,.panel>h3{margin:0 0 8px;font-size:16px}.an-bar-row{display:grid;grid-template-columns:160px 1fr 90px;align-items:center;gap:10px;margin:4px 0}.an-bar-label{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.an-bar-track{background:var(--bg);border-radius:4px;height:18px;overflow:hidden}.an-bar-fill{height:100%;background:var(--accent);border-radius:4px;min-width:2px}.an-bar-value{text-align:right;font-variant-numeric:tabular-nums;font-size:14px}.an-vbars{display:flex;align-items:flex-end;gap:4px;height:160px;padding-top:8px}.an-vbar{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%}.an-vbar-fill{width:70%;background:var(--accent);border-radius:3px 3px 0 0;min-height:2px}.an-vbar-label{font-size:11px;color:var(--muted);margin-top:4px}
