.ui-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 22px;border:1px solid transparent;border-radius:var(--radius-pill);font:inherit;font-weight:700;font-size:15px;letter-spacing:.01em;white-space:nowrap;text-decoration:none;cursor:pointer;transition:transform .6s var(--ease-bounce)}.ui-button:hover{transform:translateY(-2px)}.ui-button:active{transform:scale(.96);transition-duration:.15s}.ui-button--primary{background:var(--night);color:var(--on-accent)}.ui-button--primary:focus-visible,.ui-button--primary:hover{background:var(--accent)}.ui-button--secondary{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}.ui-button--secondary:focus-visible,.ui-button--secondary:hover{background:var(--accent-soft)}.ui-button--danger{background:var(--bad);color:var(--on-accent)}.ui-button--quiet{background:transparent;color:var(--accent-text);text-decoration:underline;text-underline-offset:3px}.ui-button--quiet:hover{color:var(--ink);transform:none}.ui-button:disabled,.ui-button[aria-disabled=true]{cursor:not-allowed;opacity:.6;transform:none}.ui-button[aria-busy=true]{cursor:progress}.ui-field{display:grid;gap:6px}.ui-field__label{font-weight:700;font-size:14px}.ui-field__control{min-height:52px;padding:10px 16px;border:1px solid var(--line-control);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);font:inherit;font-size:16px;transition:box-shadow .2s var(--ease-color)}.ui-field__control:hover{box-shadow:inset 0 0 0 1px var(--ink)}.ui-field__control::placeholder{color:var(--muted);opacity:1}.ui-field__control:disabled{background:var(--sunk);color:var(--muted)}select.ui-field__control{appearance:none;padding-right:44px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230C0C0C' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><path d='m6 9 6 6 6-6'/></svg>");background-repeat:no-repeat;background-position:right 14px center;background-size:18px}textarea.ui-field__control{resize:vertical;white-space:pre-line;line-height:1.45}.ui-field--invalid .ui-field__control{border-color:var(--bad);box-shadow:inset 0 0 0 1px var(--bad)}.ui-field__count,.ui-field__hint{margin:0;color:var(--muted);font-size:13px}.ui-field__error{display:flex;align-items:center;gap:8px;margin:0;color:var(--bad);font-weight:700;font-size:14px}.ui-field__error:before{content:"";flex:none;width:10px;height:10px;background:currentColor}.ui-tabs__list{display:flex;gap:4px;padding:4px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface);overflow-x:auto;width:max-content;max-width:100%}.ui-tabs__tab{min-height:44px;padding:10px 18px;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--muted);font:inherit;font-weight:700;font-size:14px;white-space:nowrap;cursor:pointer;transition:color .2s var(--ease-color),background-color .2s var(--ease-color)}.ui-tabs__tab:hover{color:var(--ink)}.ui-tabs__tab[aria-selected=true]{background:var(--night);color:var(--night-ink)}.ui-tabs__panel{padding-top:18px}.ui-dialog__backdrop{position:fixed;inset:0;display:grid;place-items:center;padding:16px;background:rgba(12,12,12,.55);z-index:10}.ui-dialog{width:min(520px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:clamp(24px,4vw,36px);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);color:var(--ink);animation:ui-dialog-in .6s var(--ease-bounce) both}@keyframes ui-dialog-in{0%{transform:translateY(24px) scale(.96);opacity:0}}.ui-dialog:focus-visible{outline-offset:-4px;border-radius:var(--radius-lg)}.ui-dialog__title{margin:0 0 14px;font-family:var(--font-sans);font-weight:760;letter-spacing:-.045em;line-height:1.05;font-size:clamp(22px,2.9vw,32px)}.ui-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:var(--radius-control);font-weight:700;font-size:15px;line-height:1.35}.ui-banner:before{content:"";flex:none;width:12px;height:12px;background:currentColor}.ui-banner__text{margin:0;flex:1 1 16rem}.ui-banner__action{display:flex;gap:8px}.ui-banner--info{background:var(--accent-soft);color:var(--accent-text)}.ui-banner--info:before{display:none}.ui-banner--warn{background:var(--warn-soft);color:var(--warn)}.ui-banner--warn:before{transform:rotate(45deg) scale(.85)}.ui-banner--bad{background:var(--bad-soft);color:var(--bad)}.ui-banner--good{background:var(--good-soft);color:var(--good)}.ui-banner--good:before{border-radius:50%}.ui-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);display:flex;align-items:center;gap:12px;min-height:48px;padding:8px 10px 8px 18px;border-radius:var(--radius-pill);background:var(--night);color:var(--night-ink);font-weight:700;font-size:14px;box-shadow:0 18px 30px -12px rgba(12,12,12,.4);z-index:20;animation:ui-toast-in .7s var(--ease-bounce) both}@keyframes ui-toast-in{0%{transform:translate(-50%,24px);opacity:0}}.ui-toast:before{content:"";flex:none;width:10px;height:10px;border-radius:50%;background:var(--mint)}.ui-toast__text{margin:0}.ui-toast__close{min-height:36px;padding:0 12px;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--night-muted);font:inherit;font-weight:700;cursor:pointer}.ui-toast__close:hover{color:var(--night-ink);background:rgba(255,255,255,.1)}.ui-toast :focus-visible{outline-color:var(--acid)}.ui-qr{display:block;width:192px;max-width:100%;height:auto;background:#ffffff}.ui-empty{position:relative;display:grid;justify-items:start;align-content:center;gap:10px;min-height:176px;padding:32px 28px;border:1px dashed var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden}.ui-empty__title{margin:0;font-family:var(--font-sans);font-weight:760;letter-spacing:-.045em;line-height:1.05;font-size:clamp(20px,2.9vw,29px);color:var(--ink)}.ui-empty__text{color:var(--muted);max-width:48ch}.ui-empty__action{margin-top:6px}.ui-loading{display:inline-flex;align-items:center;gap:10px;color:var(--muted);font-weight:700}.ui-loading:before{content:"";width:10px;height:10px;border-radius:var(--radius-pill);background:var(--accent);animation:ui-pulse 1.2s ease-in-out infinite}@keyframes ui-pulse{50%{opacity:.5;transform:scale(.6)}}.ui-amount{font-family:var(--font-mono);font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.01em;white-space:nowrap}.ui-amount--negative{color:var(--bad)}.ui-table__scroll{overflow-x:auto;border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface)}.ui-table{width:100%;border-collapse:collapse;font-size:15px}.ui-table__row>*{padding:.875rem 1.125rem;border-top:1px solid var(--line);text-align:left;vertical-align:top}.ui-table thead .ui-table__row>*{padding:.625rem 1.125rem;border-top:0;background:var(--sunk);color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.ui-table tbody tr:first-child>*{border-top:0}.ui-table__label{font-weight:500}.ui-table__amount{text-align:right}.ui-table__note{color:var(--muted);font-size:.875rem}@media (max-width:639px){.ui-table tbody .ui-table__row{display:grid;grid-template-columns:minmax(0,1fr) auto;border-top:1px solid var(--line)}.ui-table tbody .ui-table__row>*,.ui-table tbody tr:first-child{border-top:0}.ui-table tbody .ui-table__note{grid-column:1/-1;padding-top:0}.ui-table tbody .ui-table__note:empty{display:none}}.ui-table__row--strong>*{background:var(--sunk);font-weight:700}.ui-list{display:grid;gap:12px;margin:0;padding:0;list-style:none}.ui-list__item{display:grid;gap:.75rem;padding:1.125rem 1.375rem;border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface)}.ui-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.75rem 1.5rem;margin:0}.ui-facts__row{display:grid;gap:.125rem}.ui-facts__label{color:var(--muted);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.ui-facts__value{margin:0;font-weight:700;overflow-wrap:anywhere}@media (prefers-reduced-motion:reduce){.ui-loading:before{animation:none}.ui-button,.ui-dialog,.ui-empty__obj,.ui-list__item,.ui-toast{animation:none;transition:none}.ui-button:active,.ui-button:hover{transform:none}}