:root{--frame:#14181d;--frame-text:#f1f3f5;--frame-muted:#a9b2bc;--frame-line:#343b44;--frame-hover:#1f252c;--background:#f2f7f8;--surface:#fff;--paper:#fff;--surface-2:#f2f7f8;--card-border:#c9ced4;--control-border:#7a838c;--text:#14181d;--text-2:#4a535d;--brand:#14181d;--on-brand:#fff;--tinta:#14181d;--larimar:#6fd3dc;--brand-hover:#2a313a;--brand-tint:#ddf2f4;--success:#16663a;--success-bg:#e3f4ea;--warning:#7a5200;--warning-bg:#fff3d6;--error:#b3261e;--error-bg:#fbe9e7;--offline:#f5b94a;--offline-bg:#3a2a08;--env-sim-bg:#d5d9de;--env-sim-stripe:#bcc2c9;--env-sim-fg:#14181d;--env-sim-pattern:repeating-linear-gradient(-45deg,var(--env-sim-bg) 0 10px,var(--env-sim-stripe) 10px 20px);--env-test-bg:#1d5fad;--env-test-fg:#fff;--env-cert-bg:#3e3aa8;--env-cert-fg:#fff;--env-strip-h:0px;--t-12:12px;--t-13:13px;--t-15:15px;--t-17:17px;--t-20:20px;--t-24:24px;--t-32:32px;--t-44:44px;--t-52:52px;--t-72:72px;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--r-1:4px;--r-2:6px;--r-3:8px;--touch:48px;--touch-money:72px}@font-face{font-family:"Abastalia Sans";src:url("fonts/IBMPlexSans-Regular-Latin1.woff2") format("woff2");font-weight:400;font-display:swap}@font-face{font-family:"Abastalia Sans";src:url("fonts/IBMPlexSans-Medium-Latin1.woff2") format("woff2");font-weight:500;font-display:swap}@font-face{font-family:"Abastalia Sans";src:url("fonts/IBMPlexSans-SemiBold-Latin1.woff2") format("woff2");font-weight:600;font-display:swap}@font-face{font-family:"Abastalia Sans";src:url("fonts/IBMPlexSans-Bold-Latin1.woff2") format("woff2");font-weight:700;font-display:swap}*,*::before,*::after{box-sizing:border-box}html,body{margin:0;height:100%}body{font-family:"Abastalia Sans","IBM Plex Sans","Segoe UI",system-ui,sans-serif;font-size:var(--t-15);line-height:1.3;color:var(--text);background:var(--background);font-variant-numeric:tabular-nums lining-nums;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.esc-status-bar :focus-visible,.esc-key-bar :focus-visible{outline-color:var(--larimar)}a{color:var(--brand)}a:hover{color:var(--brand-hover)}h1,h2,h3,p{margin:0}.esc-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2)}.esc-col{display:flex;flex-direction:column;gap:var(--s-2)}.esc-spacer{flex:1 1 auto}.esc-title{font-size:var(--t-24);font-weight:700}.esc-subtitle{font-size:var(--t-13);color:var(--text-2)}.esc-label{font-size:var(--t-12);font-weight:600;letter-spacing:.04em;color:var(--text-2);text-transform:uppercase}.esc-muted{color:var(--text-2)}.esc-num{text-align:right;font-variant-numeric:tabular-nums}.esc-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.esc-card{background:var(--surface);border:1px solid var(--card-border);border-radius:var(--r-2)}.esc-card--padded{padding:var(--s-4)}.esc-button{text-decoration:none;min-height:var(--touch);padding:0 var(--s-4);display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);border:1px solid var(--control-border);border-radius:var(--r-2);background:var(--surface);color:var(--text);font-weight:600}.esc-button:hover:not(:disabled){background:var(--surface-2)}.esc-button:disabled{opacity:.5}.esc-button--primary{background:var(--brand);border-color:var(--brand);color:var(--on-brand);font-weight:700}.esc-button--primary:hover:not(:disabled){background:var(--brand-hover)}.esc-button--danger{background:var(--surface);border-color:var(--error);color:var(--error)}.esc-button--danger:hover:not(:disabled){background:var(--error-bg)}.esc-button--ghost{border-color:transparent;background:transparent}.esc-button--money{min-height:var(--touch-money);padding:0 var(--s-5);font-size:var(--t-24);justify-content:space-between}.esc-button--wide{width:100%}.esc-button--primary .esc-keycap{border-color:var(--on-brand);color:var(--on-brand)}.esc-keycap{display:inline-block;padding:1px 6px;min-width:22px;text-align:center;border:1px solid var(--control-border);border-radius:var(--r-1);font-size:var(--t-12);font-weight:600;line-height:1.4;color:var(--text-2)}.esc-field{display:flex;flex-direction:column;gap:var(--s-1)}.esc-field>span,.esc-field__label>span:first-child{font-size:var(--t-13);font-weight:600;color:var(--text-2)}.esc-field__label{display:flex;flex-direction:column;gap:inherit}.esc-input,.esc-select{min-height:var(--touch);padding:0 var(--s-3);width:100%;border:1px solid var(--control-border);border-radius:var(--r-2);background:var(--surface)}.esc-input--large{min-height:56px;font-size:var(--t-24);font-weight:600}.esc-input[aria-invalid="true"]{border:2px solid var(--error)}.esc-error-help{font-size:var(--t-13);color:var(--error);font-weight:600}.esc-notice{display:flex;align-items:flex-start;gap:var(--s-3);padding:var(--s-3) var(--s-4);border-radius:var(--r-2);border:1px solid transparent;font-weight:600}.esc-notice svg{flex:none;margin-top:1px}.esc-notice--error{background:var(--error-bg);color:var(--error);border-color:var(--error)}.esc-notice--warning{background:var(--warning-bg);color:var(--warning);border-color:var(--warning)}.esc-notice--success{background:var(--success-bg);color:var(--success);border-color:var(--success)}.esc-notice--info{background:var(--brand-tint);color:var(--brand);border-color:var(--brand)}.esc-notice__body{flex:1 1 auto;display:flex;flex-direction:column;gap:2px}.esc-notice__detail{font-weight:400;color:var(--text)}.esc-pill{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:999px;font-size:var(--t-13);font-weight:600}.esc-pill--success{background:var(--success-bg);color:var(--success)}.esc-pill--warning{background:var(--warning-bg);color:var(--warning)}.esc-pill--error{background:var(--error-bg);color:var(--error)}.esc-pill--neutral{background:var(--surface-2);color:var(--text-2)}.esc-overlay{position:fixed;inset:var(--env-strip-h,0) 0 0 0;background:rgba(20,24,29,.55);display:flex;align-items:center;justify-content:center;padding:var(--s-4);z-index:50}.esc-dialog{width:min(520px,100%);max-height:calc(100dvh - 32px - var(--env-strip-h,0px));overflow:hidden;background:var(--surface);border-radius:var(--r-3);box-shadow:0 12px 40px rgba(20,24,29,.35);display:flex;flex-direction:column}.esc-dialog--wide{width:min(880px,100%)}.esc-dialog__header,.esc-dialog__footer{flex:none}.esc-dialog__header{padding:var(--s-4) var(--s-5);border-bottom:1px solid var(--card-border);display:flex;flex-direction:column;gap:2px}.esc-dialog__body{flex:1 1 auto;min-height:0;overflow:auto;padding:var(--s-5);display:flex;flex-direction:column;gap:var(--s-4)}.esc-dialog__footer{padding:var(--s-4) var(--s-5);border-top:1px solid var(--card-border);display:flex;gap:var(--s-2);justify-content:flex-end;flex-wrap:wrap}.esc-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-2)}.esc-keypad button{min-height:64px;border:1px solid var(--control-border);border-radius:var(--r-2);background:var(--surface);font-size:var(--t-24);font-weight:600}.esc-keypad button:hover{background:var(--surface-2)}.esc-keypad button:active{background:var(--brand-tint)}.esc-pin{display:flex;gap:var(--s-3);justify-content:center;padding:var(--s-2) 0}.esc-pin span{width:18px;height:18px;border-radius:50%;border:2px solid var(--control-border)}.esc-pin span.filled{background:var(--text);border-color:var(--text)}.esc-table-wrap{overflow-x:auto}.esc-table{width:100%;border-collapse:collapse}.esc-table th{padding:10px var(--s-4);border-bottom:1px solid var(--card-border);font-size:var(--t-12);font-weight:600;letter-spacing:.04em;color:var(--text-2);text-align:left;text-transform:uppercase;white-space:nowrap}.esc-table td{height:var(--touch);padding:0 var(--s-4);border-bottom:1px solid var(--card-border)}.esc-table tr:last-child td{border-bottom:0}.esc-table tbody tr.selectable{cursor:pointer}.esc-table tbody tr.selectable:hover{background:var(--surface-2)}.esc-table tbody tr.selected{background:var(--brand-tint)}.esc-chip{min-height:var(--touch);padding:0 var(--s-4);border-radius:999px;border:1px solid var(--control-border);background:var(--surface);font-weight:600}.esc-chip[aria-pressed="true"]{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.esc-tile{min-height:88px;padding:var(--s-3);display:flex;flex-direction:column;justify-content:space-between;gap:var(--s-1);border:1px solid var(--card-border);border-radius:var(--r-2);background:var(--surface);text-align:left}.esc-tile:hover{border-color:var(--brand)}.esc-tile__name{font-weight:600;font-size:var(--t-15)}.esc-tile__price{font-size:var(--t-13);color:var(--text-2)}:root:has(.esc-env-strip){--env-strip-h:32px}.esc-env-strip{position:fixed;top:0;left:0;right:0;z-index:55;height:32px;padding:0 var(--s-4);display:flex;align-items:center;font-size:var(--t-13);line-height:1;white-space:nowrap;overflow:hidden}.esc-env-strip--sim{background:var(--env-sim-pattern);color:var(--env-sim-fg);border-bottom:2px solid var(--env-sim-fg)}.esc-env-strip--test{background:var(--env-test-bg);color:var(--env-test-fg)}.esc-env-strip--cert{background:var(--env-cert-bg);color:var(--env-cert-fg)}.esc-env-strip b{font-weight:700}.esc-env-strip__link{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;margin-left:var(--s-3);color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px}.esc-env-strip__link:focus-visible{outline:2px solid currentColor;outline-offset:2px}:root:has(.esc-overlay) .esc-env-strip__link{display:none}@media(max-width:599px){.esc-env-strip__more{display:none}.esc-env-strip{justify-content:center}}.esc-status-bar{min-height:var(--touch);padding:4px var(--s-4);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px var(--s-5);background:var(--frame);color:var(--frame-text);font-size:var(--t-13)}.esc-status-bar .muted{color:var(--frame-muted)}.esc-status-bar__group{display:flex;flex-wrap:wrap;align-items:center;gap:4px 20px}.esc-status-bar__group+.esc-status-bar__group{margin-left:auto;justify-content:flex-end}.esc-status-bar__device{display:inline-flex;align-items:center;gap:6px}.esc-offline{background:var(--offline-bg);color:var(--offline);padding:2px 10px;border-radius:var(--r-1);font-weight:600}.esc-status-bar__critical{background:var(--error);color:var(--paper);padding:2px 10px;border-radius:var(--r-1);font-weight:600}.esc-key-bar{display:flex;flex-wrap:wrap;background:var(--frame);color:var(--frame-text)}.esc-key-bar button{flex:1 1 140px;min-height:var(--touch);padding:0 var(--s-2);display:flex;align-items:center;justify-content:center;gap:var(--s-2);border:0;border-right:1px solid var(--frame-line);background:transparent;color:var(--frame-text);font-weight:600}.esc-key-bar button:last-child{border-right:0}.esc-key-bar button:hover:not(:disabled){background:var(--frame-hover)}.esc-key-bar button:disabled{opacity:.45}.esc-key-bar .esc-keycap{border-color:var(--frame-muted);color:var(--frame-muted)}.esc-scale{display:flex;align-items:center;gap:var(--s-3)}.esc-scale__value{min-width:7ch;font-size:var(--t-32);font-weight:700;line-height:1}.esc-scale__value span{font-size:var(--t-17);font-weight:600;color:var(--text-2)}.esc-scale .esc-pill{min-width:120px;justify-content:center}.esc-logo{--logo-tag:var(--tinta);--logo-mark:var(--larimar);display:inline-flex;align-items:center;gap:6px;font-weight:700;letter-spacing:-.02em}.esc-logo--on-dark,:root[data-theme="dark"] .esc-admin .esc-logo,.esc-admin[data-theme="dark"] .esc-logo{--logo-tag:var(--larimar);--logo-mark:var(--tinta)}.esc-logo__tag{fill:var(--logo-tag);stroke:var(--logo-tag)}.esc-logo__string{fill:none;stroke:var(--logo-tag)}.esc-logo__mark{stroke:var(--logo-mark)}.esc-talia{--talia-tag:var(--larimar);--talia-line:var(--tinta);--talia-outline:var(--tinta);flex:none;display:inline-block;vertical-align:middle}.esc-talia--on-dark,:root[data-theme="dark"] .esc-admin .esc-talia,.esc-admin[data-theme="dark"] .esc-talia{--talia-line:var(--larimar);--talia-outline:transparent}.esc-talia__tag{fill:var(--talia-tag);stroke:var(--talia-tag)}.esc-talia__outline{fill:none;stroke:var(--talia-outline)}.esc-talia__face{fill:var(--tinta);stroke:var(--tinta)}.esc-talia__bow path{fill:none;stroke:var(--talia-line)}.esc-talia__bow circle{fill:var(--talia-line)}.esc-talia--moves .esc-talia__bow{transform-box:view-box;transform-origin:46.25px 46.25px;animation:esc-talia-bow 3.2s ease-in-out infinite}@keyframes esc-talia-bow{0%,50%,100%{transform:rotate(0deg)}60%{transform:rotate(-8deg)}70%{transform:rotate(6deg)}80%{transform:rotate(-3deg)}90%{transform:rotate(0deg)}}@media(prefers-reduced-motion:reduce){.esc-talia--moves .esc-talia__bow{animation:none}}.esc-money{display:inline-flex;align-items:baseline;gap:6px;font-weight:700}.esc-money__currency{font-size:.45em;font-weight:600;color:var(--text-2)}.esc-page{flex:1 1 auto;min-width:0;padding:20px var(--s-5);display:flex;flex-direction:column;gap:var(--s-4)}.esc-page:focus{outline:0}.esc-toast{position:fixed;left:50%;bottom:72px;transform:translateX(-50%);z-index:60;padding:var(--s-3) var(--s-4);border-radius:var(--r-2);background:var(--warning-bg);color:var(--warning);border:1px solid var(--warning);font-weight:600;box-shadow:0 4px 16px rgba(20,24,29,.25)}#blazor-error-ui{display:none;position:fixed;inset:auto 0 0 0;z-index:70;padding:var(--s-3) var(--s-4);background:var(--error-bg);color:var(--error);border-top:2px solid var(--error);font-weight:600}#blazor-error-ui a{margin-left:var(--s-3)}@media(max-width:760px){.esc-page{padding:var(--s-4)}}.esc-field__hint{font-size:var(--t-13);color:var(--text-3);font-weight:400}.esc-field__error{display:flex;align-items:center;gap:6px;font-size:var(--t-13);color:var(--error);font-weight:500}.esc-check{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer}.esc-check input{width:20px;height:20px;accent-color:var(--brand-600)}.esc-segmented{display:inline-flex;padding:3px;gap:2px;border-radius:12px;background:var(--surface-3);max-width:100%;overflow-x:auto}.esc-segmented button{min-height:38px;padding:0 14px;border:0;border-radius:9px;background:transparent;color:var(--text-2);font-weight:500;white-space:nowrap}.esc-segmented button:hover{color:var(--text)}.esc-segmented button[aria-pressed="true"],.esc-segmented button[aria-selected="true"]{background:var(--surface);color:var(--text);font-weight:600;box-shadow:none}@media(max-width:600px){.esc-segmented{display:flex}.esc-segmented button{flex:1 1 auto;min-width:0;padding:0 8px;min-height:40px}}.esc-dialog__body .esc-table-wrap{flex-shrink:0}.esc-help{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}.esc-help summary{cursor:pointer;font-weight:600}.esc-help ol{margin:8px 0 0;padding-left:20px;display:grid;gap:6px}