.appRoot{--pad: 16px;--bottomNavHeight: 64px;--surface: var(--surface, rgba(255, 255, 255, .06));--surface2: var(--surface2, rgba(255, 255, 255, .04));--border: var(--border, rgba(255, 255, 255, .14));--borderStrong: var(--borderStrong, rgba(255, 255, 255, .22));--accentBorder: rgba(122, 0, 25, .55);--accentSurface: rgba(122, 0, 25, .16);--accentSurface2: rgba(122, 0, 25, .11);--radius: 16px;max-width:1100px;margin:0 auto;padding-top:calc(var(--pad) + env(safe-area-inset-top));padding-left:var(--pad);padding-right:var(--pad);padding-bottom:calc(var(--pad) + var(--bottomNavHeight) + env(safe-area-inset-bottom))}.appHeader{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:16px;padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(180deg,#ffffff14,#ffffff08);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.appHeaderLeft{display:grid;gap:2px;min-width:0}.appHeaderRight{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;min-width:0}.appTitle{margin:0;font-size:26px;line-height:1.2;display:flex;align-items:center;gap:10px}.appLogo{width:68px;height:68px;flex:0 0 auto;object-fit:contain}.appSubtitle{opacity:.75;font-size:13px}.skipLink{position:absolute;left:-999px;top:8px;padding:8px 12px;border-radius:999px;background:#ffffff14;border:1px solid var(--border);color:inherit}.skipLink:focus{left:8px;z-index:10}.balanceChip{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border-radius:999px;border:1px solid var(--border);background:linear-gradient(180deg,#ffffff14,#ffffff08);min-height:40px;flex:0 1 auto;min-width:0}.signOutButton{min-height:40px;padding:8px 10px;border-radius:999px}@media(max-width:520px){.appRoot{padding-top:calc(var(--pad) + 48px + env(safe-area-inset-top))}.appHeader{padding:12px}.appTitle{font-size:22px}.appLogo{width:54px;height:54px}}.balanceChip,.navLink,.bottomNavLink,.tabLink,.subNavLink{color:inherit}.balanceChipActive{border-color:var(--accentBorder);background:var(--accentSurface2)}.balanceChipLabel{font-size:12px;opacity:.75}.balanceChipValue{font-weight:800}.appShell{display:grid;grid-template-columns:1fr;gap:16px;align-items:start}.sidebar{display:none}.sidebarNav{display:grid;gap:8px}.sidebarTitle{font-weight:700;margin-bottom:8px}.navList{list-style:none;padding:0;margin:0;display:grid;gap:6px}.navLink{display:flex;align-items:center;padding:10px;border-radius:8px;min-height:44px}.navLink:hover{background:var(--accentSurface)}.navLinkActive{background:var(--accentSurface);border:1px solid var(--accentBorder)}.content{display:grid;gap:12px;padding-bottom:8px}.sectionCard{padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(180deg,#ffffff14,#ffffff08);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.sectionLabel{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}.sectionLabelTitle{font-weight:800;letter-spacing:.2px;margin:0;font-size:19px}.sectionLabelTitle:focus,.sectionLabelTitle:focus-visible{outline:none}.sectionAnchor{opacity:.7;font-size:12px}a.sectionAnchorLink{font-size:12px;color:var(--textMuted)}a.sectionAnchorLink:hover{color:var(--text)}.pillRow{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.pillGroup{display:flex;gap:10px;flex-wrap:wrap}.pillButton{border-radius:999px;padding:10px 14px;min-height:44px;border:1px solid var(--border);background:#ffffff0a}.pillButtonActive{border-color:var(--accentBorder);background:var(--accentSurface)}.detailsSummary{cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:800}.bottomNav{position:fixed;left:0;right:0;bottom:0;height:calc(var(--bottomNavHeight) + env(safe-area-inset-bottom));padding:0;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:0;background:linear-gradient(180deg,#ffffff14,#ffffff08);border-top:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.bottomNavLink{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;height:100%;padding:0;border-radius:0;min-height:44px;color:inherit}.bottomNavLink:after{content:"";display:block;height:env(safe-area-inset-bottom)}.bottomNavLink+.bottomNavLink{border-left:1px solid var(--border)}.bottomNavLinkActive{background:var(--accentSurface)}.bottomNavLabel{height:var(--bottomNavHeight);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.sidebarMeta{margin-top:12px;font-size:13px;opacity:.9;display:grid;gap:4px}.sidebarMetaRowMuted{font-size:12px;opacity:.7}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.monoWrap{overflow-wrap:anywhere;word-break:break-word}.muted{opacity:.8}.srOnly{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.list{list-style:none;display:grid;gap:10px}.listItem{padding:10px;border-radius:14px;border:1px solid var(--border);background:var(--surface2)}.machineRow{display:grid;gap:10px}.machineAccordionTrigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px;border-radius:12px;border:1px solid transparent;background:transparent;color:inherit;text-align:left}.machineAccordionTrigger:hover{background:var(--surface2);border-color:var(--border)}.machineAccordionTrigger:focus-visible{outline:2px solid var(--accentBorder);outline-offset:2px}.machineAccordionChevron{opacity:.8;font-size:16px;line-height:1}.machineActions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.amountField{display:grid}.numberInput{width:132px;min-height:44px;border-radius:12px;border:1px solid var(--borderStrong);padding:0 10px;font:inherit;background:transparent;color:inherit}.machineMeta{display:grid;gap:2px}.machineName{font-weight:700}.machineHint{font-size:12px;opacity:.75}.statusText{margin-top:8px;font-size:12px;opacity:.85}.subNav{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:10px}.subNavLink{display:inline-flex;align-items:center;padding:8px 10px;border-radius:999px;border:1px solid var(--border);background:linear-gradient(180deg,#ffffff14,#ffffff08);min-height:40px}.subNavLinkActive{border-color:var(--accentBorder);background:var(--accentSurface2)}.tabNav{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:6px;border-radius:999px;border:1px solid var(--border);background:#ffffff08;margin-bottom:12px}.tabLink{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;min-height:40px;color:inherit;border:1px solid transparent;background:transparent}.tabLink:hover{background:#ffffff0a}.tabLinkActive{background:var(--accentSurface);border-color:var(--accentBorder)}.iconButton{width:40px;height:40px;padding:0;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;background:transparent;color:inherit}.iconButton:hover{border-color:var(--border);background:#ffffff0a}.iconButton:focus-visible{outline:2px solid var(--accentBorder);outline-offset:2px}.iconButton:active{background:#ffffff0f}.dialog{width:min(720px,calc(100vw - 24px));max-height:min(85vh,760px);border:1px solid var(--border);border-radius:var(--radius);padding:0;background:linear-gradient(180deg,#ffffff1a,#ffffff0a);color:inherit;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.dialog::backdrop{background:#0000008c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dialogHeader{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px;border-bottom:1px solid var(--border)}.dialogTitle{margin:0;font-size:16px;font-weight:800}.dialogBody{padding:14px;display:grid;gap:12px;overflow:auto}.panel{border:1px solid var(--border);border-radius:14px;background:var(--surface2);padding:12px}.panelTitle{font-weight:800;margin-bottom:8px}.txTable{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--surface2)}.txTable th,.txTable td{padding:10px;border-top:1px solid var(--border);font-size:12px;vertical-align:top}.txWhen{white-space:nowrap}.txNoteCell{overflow-wrap:anywhere}.txTable thead th{border-top:none;text-align:left;opacity:.8;font-weight:800;background:var(--surface)}.txTable tbody tr:hover td{background:var(--surface)}.txBadge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 14px;border:1px solid var(--borderStrong);background:transparent;font-weight:800;letter-spacing:.1px;white-space:nowrap;position:relative;overflow:hidden}.txBadge:after{content:"";position:absolute;inset:0;background:var(--surface2);z-index:0}.txBadgeAddFunds{border-color:var(--borderStrong)}.txBadgeAddFunds:after{background:var(--accent2);opacity:.38;filter:hue-rotate(120deg) saturate(3) contrast(1.05)}.txBadgeVend{border-color:var(--borderStrong)}.txBadgeVend:before{background:var(--textMuted)}.txBadgeVend:after{background:var(--accent2);opacity:.32;filter:hue-rotate(235deg) saturate(3) contrast(1.05)}.txBadgeAdjustment{border-color:var(--borderStrong)}.txBadgeAdjustment:after{background:var(--text);opacity:.18;filter:saturate(0) contrast(1.1)}:root[data-theme=light] .txBadgeAddFunds:after{opacity:.22}:root[data-theme=light] .txBadgeVend:after{opacity:.2}:root[data-theme=light] .txBadgeAdjustment:after{opacity:.12}.txAmount{text-align:right;white-space:nowrap}.txAmountPositive{color:inherit}.txAmountNegative{opacity:.9}.txNote{opacity:.85}.adminUsersTableWrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.adminUsersTable{width:100%;border-collapse:collapse}.adminUsersTable th,.adminUsersTable td{padding:6px 4px;font-size:12px;text-align:left;vertical-align:top}.adminUsersTable thead th{opacity:.75;font-weight:800}.adminUsersTable tbody tr{border-top:1px solid rgba(255,255,255,.08)}:root[data-theme=light] .adminUsersTable tbody tr{border-top:1px solid rgba(0,0,0,.08)}.adminUsersEmail{overflow-wrap:anywhere}.adminUsersRole{font-size:12px}.adminUsersId{font-size:11px}.adminUsersActions{width:84px;text-align:right}.adminUsersActionsRow{display:flex;gap:8px;justify-content:flex-end}@media(max-width:520px){.txTable th,.txTable td{padding:10px 8px;font-size:11px}.txWhen{white-space:normal}.txTable th:nth-child(4),.txTable td:nth-child(4){display:none}.adminUsersTable th:nth-child(4),.adminUsersTable td:nth-child(4){display:none}}@media(min-width:900px){.appRoot{padding-bottom:var(--pad)}.appShell{grid-template-columns:240px 1fr}.sidebar{display:block;position:sticky;top:16px;align-self:start;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(180deg,#ffffff14,#ffffff08);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.bottomNav{display:none}}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;--accent: #7a0019;--accent2: #b0002b;--text: rgba(255, 255, 255, .95);--textMuted: rgba(255, 255, 255, .82);--bgBase: #0b0d12;--surface: rgba(255, 255, 255, .09);--surface2: rgba(255, 255, 255, .065);--border: rgba(255, 255, 255, .22);--borderStrong: rgba(255, 255, 255, .32);color-scheme:light dark;color:var(--text);background-color:var(--bgBase);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=dark]{color-scheme:dark}:root[data-theme=light]{color-scheme:light;--text: #162033;--textMuted: rgba(22, 32, 51, .75);--bgBase: #f7f8ff;--surface: rgba(255, 255, 255, .9);--surface2: rgba(255, 255, 255, .75);--border: rgba(22, 32, 51, .12);--borderStrong: rgba(22, 32, 51, .2);color:var(--text);background-color:var(--bgBase)}a{font-weight:500;color:var(--accent);text-decoration:inherit}a:hover{color:var(--accent2)}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(900px 500px at 15% -10%,rgba(122,0,25,.32),transparent 60%),radial-gradient(700px 420px at 85% 10%,rgba(176,0,43,.22),transparent 55%),radial-gradient(900px 520px at 50% 115%,rgba(122,0,25,.18),transparent 55%),var(--bgBase);background-attachment:fixed}button{border-radius:8px;border:1px solid var(--borderStrong);padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;color:inherit;background-color:color-mix(in srgb,var(--accent) 10%,rgba(255,255,255,.14));background-image:linear-gradient(180deg,color-mix(in srgb,var(--accent) 14%,transparent),color-mix(in srgb,var(--accent) 22%,transparent));cursor:pointer;transition:border-color .25s;display:inline-flex;align-items:center;justify-content:center;line-height:1.1;vertical-align:middle}button:hover{border-color:var(--accentBorder, rgba(122, 0, 25, .7));background-color:color-mix(in srgb,var(--accent) 14%,rgba(255,255,255,.18));background-image:linear-gradient(180deg,color-mix(in srgb,var(--accent) 18%,transparent),color-mix(in srgb,var(--accent) 28%,transparent))}button:focus,button:focus-visible{outline:none}button:disabled{opacity:.55;cursor:not-allowed}input,select,textarea{font:inherit;color:inherit}input,select,textarea{border-radius:10px;border:1px solid var(--borderStrong);background:#ffffff0a;padding:10px 12px}input:focus,select:focus,textarea:focus{outline:none}@media(prefers-color-scheme:light){:root:not([data-theme]){--text: #162033;--textMuted: rgba(22, 32, 51, .75);--bgBase: #f7f8ff;--surface: rgba(255, 255, 255, .9);--surface2: rgba(255, 255, 255, .75);--border: rgba(22, 32, 51, .12);--borderStrong: rgba(22, 32, 51, .2);color:var(--text);background-color:var(--bgBase)}}:root[data-theme=light] :where(button){border-width:2px;background-color:color-mix(in srgb,var(--accent) 8%,var(--surface2));background-image:linear-gradient(180deg,color-mix(in srgb,var(--accent) 10%,transparent),color-mix(in srgb,var(--accent) 18%,transparent))}:root[data-theme=light] :where(button:hover){background-color:color-mix(in srgb,var(--accent) 11%,var(--surface2));background-image:linear-gradient(180deg,color-mix(in srgb,var(--accent) 14%,transparent),color-mix(in srgb,var(--accent) 24%,transparent))}:root[data-theme=light] body{background:radial-gradient(900px 500px at 15% -10%,rgba(122,0,25,.2),transparent 60%),radial-gradient(700px 420px at 85% 10%,rgba(176,0,43,.12),transparent 55%),radial-gradient(900px 520px at 50% 115%,rgba(122,0,25,.12),transparent 55%),var(--bgBase);background-attachment:fixed}:root[data-theme=light] input,:root[data-theme=light] select,:root[data-theme=light] textarea{background:#fffc}@media(prefers-color-scheme:light){:root:not([data-theme]) :where(button){border-width:2px;background-color:color-mix(in srgb,var(--accent) 8%,var(--surface2));background-image:linear-gradient(180deg,color-mix(in srgb,var(--accent) 10%,transparent),color-mix(in srgb,var(--accent) 18%,transparent))}:root:not([data-theme]) :where(button:hover){background-color:color-mix(in srgb,var(--accent) 11%,var(--surface2));background-image:linear-gradient(180deg,color-mix(in srgb,var(--accent) 14%,transparent),color-mix(in srgb,var(--accent) 24%,transparent))}:root:not([data-theme]) body{background:radial-gradient(900px 500px at 15% -10%,rgba(122,0,25,.2),transparent 60%),radial-gradient(700px 420px at 85% 10%,rgba(176,0,43,.12),transparent 55%),radial-gradient(900px 520px at 50% 115%,rgba(122,0,25,.12),transparent 55%),var(--bgBase);background-attachment:fixed}:root:not([data-theme]) input,:root:not([data-theme]) select,:root:not([data-theme]) textarea{background:#fffc}}
