:root{color-scheme:light;--bg: #f5f5f7;--surface: #ffffff;--surface-alt: #fafafa;--surface-sunken: #f0f0f2;--text: #1d1d1f;--text-secondary: #6e6e73;--text-tertiary: #98989d;--border: rgba(60, 60, 67, .13);--border-strong: rgba(60, 60, 67, .24);--accent: #0a5fd8;--accent-hover: #094fb4;--accent-active: #073e8f;--accent-tint: rgba(10, 95, 216, .08);--accent-tint-strong: rgba(10, 95, 216, .14);--accent-ring: rgba(10, 95, 216, .32);--pos: #1a7f37;--pos-tint: rgba(26, 127, 55, .09);--neg: #cf222e;--neg-tint: rgba(207, 34, 46, .08);--warn: #9a6700;--warn-tint: rgba(191, 135, 0, .12);--warn-border: rgba(191, 135, 0, .26);--fs-2xs: .7rem;--fs-xs: .78rem;--fs-sm: .85rem;--fs-base: .9375rem;--fs-md: 1rem;--fs-lg: 1.0625rem;--fs-xl: 1.375rem;--fs-hero: 1.9rem;--fs-h1: 1.375rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 2rem;--space-8: 2.5rem;--radius-sm: 6px;--radius-md: 9px;--radius-lg: 14px;--radius-full: 999px;--shadow-xs: 0 1px 2px rgba(16, 24, 40, .04);--shadow-card: 0 1px 2px rgba(16, 24, 40, .04), 0 6px 20px rgba(16, 24, 40, .05);--shadow-raised: 0 2px 10px rgba(16, 24, 40, .1);--ease: cubic-bezier(.4, 0, .2, 1);--dur-fast: .12s;--dur: .18s;accent-color:var(--accent)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Arial,sans-serif;font-size:var(--fs-base);line-height:1.5;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;letter-spacing:-.006em}::selection{background:var(--accent-tint-strong);color:var(--text)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}*::-webkit-scrollbar{height:8px;width:8px}*::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-full)}p{margin:0 0 var(--space-3)}p:last-child{margin-bottom:0}strong{font-weight:600}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.app{max-width:800px;margin:0 auto;padding:0 var(--space-4) var(--space-8);min-height:100vh}.app-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:var(--space-5);flex-wrap:wrap;padding:var(--space-4) 0;margin:0 0 var(--space-5);background:#f5f5f7d1;-webkit-backdrop-filter:saturate(180%) blur(16px);backdrop-filter:saturate(180%) blur(16px);border-bottom:1px solid var(--border)}.app-header h1{font-size:var(--fs-h1);font-weight:700;letter-spacing:-.02em;margin:0;flex-shrink:0}.app-header nav{display:flex;flex-wrap:nowrap;gap:2px;padding:2px;background:var(--surface-sunken);border-radius:var(--radius-md);overflow-x:auto;scrollbar-width:none;flex:1;min-width:0}.app-header nav::-webkit-scrollbar{display:none}.tab{flex:0 0 auto;background:none;border:none;padding:var(--space-2) var(--space-3);margin:0;font-size:var(--fs-sm);font-weight:500;line-height:1.2;cursor:pointer;color:var(--text-secondary);border-radius:var(--radius-sm);white-space:nowrap;transition:background var(--dur) var(--ease),color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.tab:hover:not(.active){color:var(--text)}.tab.active{color:var(--text);font-weight:600;background:var(--surface);box-shadow:var(--shadow-raised)}.tab:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-ring)}main{display:block}h2{font-size:var(--fs-lg);font-weight:650;letter-spacing:-.012em;margin:0 0 var(--space-4);color:var(--text)}form.tx-form,.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-4);box-shadow:var(--shadow-card)}.form-row{display:flex;gap:var(--space-4);flex-wrap:wrap}.form-row+.form-row{margin-top:var(--space-4)}.form-row label{display:flex;flex-direction:column;font-size:var(--fs-xs);font-weight:500;color:var(--text-secondary);gap:var(--space-1)}.form-row label.grow{flex:1;min-width:11rem}input,select{font:inherit;font-size:var(--fs-base);padding:.44rem .6rem;color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}input::placeholder{color:var(--text-tertiary)}input:hover,select:hover{border-color:#3c3c4357}input:focus-visible,select:focus-visible,input:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}input:disabled,select:disabled{background:var(--surface-sunken);color:var(--text-tertiary);cursor:not-allowed}input[type=checkbox]{width:1.05rem;height:1.05rem;accent-color:var(--accent);cursor:pointer}button{font:inherit;font-size:var(--fs-sm);font-weight:500;padding:.46rem 1rem;border:1px solid transparent;border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),opacity var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}button:hover{background:var(--accent-hover)}button:active{background:var(--accent-active)}button:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-ring)}button:disabled{opacity:.5;cursor:not-allowed}button:disabled:hover{background:var(--accent)}button[type=button]{background:var(--surface);color:var(--accent);border-color:var(--border-strong)}button[type=button]:hover{background:var(--accent-tint);border-color:var(--accent)}button[type=button]:active{background:var(--accent-tint-strong)}button[type=button]:disabled:hover{background:var(--surface);border-color:var(--border-strong)}button.primary{background:var(--accent);color:#fff;border-color:transparent}button.primary:hover{background:var(--accent-hover)}button.primary:active{background:var(--accent-active)}.form-actions{margin-top:var(--space-4);display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.prefill-row{align-items:flex-end;margin-bottom:var(--space-3)}.file-button{display:inline-flex;align-items:center;gap:.4rem;font-size:var(--fs-sm);font-weight:500;padding:.46rem 1rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--accent);background:var(--surface);cursor:pointer;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease)}.file-button:hover{background:var(--accent-tint);border-color:var(--accent)}.file-button:has(input:disabled){color:var(--text-tertiary);cursor:not-allowed;background:var(--surface);border-color:var(--border-strong)}.file-button:has(input:focus-visible){box-shadow:0 0 0 3px var(--accent-ring);border-color:var(--accent)}.file-button input{display:none}.table-scroll{width:100%;overflow-x:auto;border-radius:var(--radius-lg);margin-bottom:var(--space-4);box-shadow:var(--shadow-card)}.table-scroll .data-table{margin-bottom:0;box-shadow:none}.data-table{width:100%;min-width:32rem;border-collapse:separate;border-spacing:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:var(--space-4);box-shadow:var(--shadow-card)}.data-table th,.data-table td{text-align:left;padding:.65rem .9rem;border-bottom:1px solid var(--border);font-size:var(--fs-base);vertical-align:middle}.data-table thead th{background:var(--surface-alt);font-weight:600;font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.045em;color:var(--text-tertiary);border-bottom-color:var(--border-strong);white-space:nowrap}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:var(--surface-alt)}.data-table td input,.data-table td select{width:100%;min-width:6rem;padding:.35rem .5rem;font-size:var(--fs-sm)}.num{text-align:right;font-variant-numeric:tabular-nums}.pos{color:var(--pos)}.neg{color:var(--neg)}.muted{color:var(--text-tertiary);font-size:.9em}.error{color:var(--neg);font-size:var(--fs-sm);margin:var(--space-2) 0 0}.fine-print{color:var(--text-tertiary);font-size:var(--fs-xs);line-height:1.5;margin-top:var(--space-3)}.fine-print.pos{color:var(--pos)}.fine-print.error{color:var(--neg)}.row-actions{white-space:nowrap;text-align:right}.row-actions button{background:none;border:none;color:var(--accent);padding:.2rem .5rem;font-size:var(--fs-sm);font-weight:500;border-radius:var(--radius-sm)}.row-actions button:hover{background:var(--accent-tint)}.row-actions button:active{background:var(--accent-tint-strong)}.row-actions button:disabled:hover{background:none}.glance{display:flex;gap:var(--space-7);flex-wrap:wrap;align-items:baseline;background:none;border:none;box-shadow:none;border-radius:0;border-bottom:1px solid var(--border);padding:var(--space-1) 0 var(--space-5);margin:0 0 var(--space-5)}.glance-item{display:flex;flex-direction:column;gap:.2rem}.glance-label{font-size:var(--fs-2xs);font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.045em}.glance-value{font-size:var(--fs-xl);font-weight:600;letter-spacing:-.015em;color:var(--text);font-variant-numeric:tabular-nums}.glance-item:first-child .glance-value{font-size:var(--fs-hero);font-weight:700}.glance-value.pos{color:var(--pos)}.glance-value.neg{color:var(--neg)}.glance-value.muted{color:var(--text-tertiary);font-weight:500}.banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.banner-content{display:flex;align-items:center;gap:var(--space-3);min-width:0}.banner-content .icon{flex-shrink:0}.banner .form-actions{margin-top:0;flex-shrink:0}.banner-info{background:var(--accent-tint);border-color:#0a5fd833}.banner-info .icon{color:var(--accent)}.banner-warning{background:var(--warn-tint);border-color:var(--warn-border)}.banner-warning .icon{color:var(--warn)}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-2);padding:var(--space-7) var(--space-4);color:var(--text-tertiary);background:var(--surface-alt);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);margin-bottom:var(--space-4)}.empty-state-icon{width:28px;height:28px;color:var(--text-tertiary);opacity:.8;margin-bottom:var(--space-1)}.empty-state-message{font-size:var(--fs-base);color:var(--text-secondary);margin:0}.empty-state-hint{font-size:var(--fs-xs);color:var(--text-tertiary);margin:0;max-width:30rem}.spinner{display:inline-block;width:13px;height:13px;border-radius:var(--radius-full);border:2px solid currentColor;border-top-color:transparent;opacity:.85;animation:kaime-spin .7s linear infinite;flex-shrink:0;vertical-align:-2px;margin-right:.35rem}button .spinner,.file-button .spinner{margin-right:0}@keyframes kaime-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:1.4s}*{transition-duration:.01ms!important}}.icon{display:inline-block;flex-shrink:0}@media(max-width:640px){.app{padding:0 var(--space-3) var(--space-7)}.app-header{padding:var(--space-3) 0}form.tx-form,.card{padding:var(--space-4)}.glance{gap:var(--space-5)}.fs-hero,.glance-item:first-child .glance-value{font-size:1.6rem}}
