.ticker-display{border-radius:14px;box-shadow:0 8px 40px #00000073;display:flex;flex-direction:column;font-family:Inter,SF Pro Display,system-ui,sans-serif;height:220px;justify-content:space-between;overflow:hidden;padding:18px 28px;position:relative;transition:background .6s ease;width:100%}.ticker-empty{align-items:center;background:#0a0e1a;color:#5b6378;justify-content:center}.ticker-empty-text{align-items:center;display:flex;font-size:16px;gap:10px;letter-spacing:.04em;text-transform:uppercase}.ticker-empty-text .dot{animation:blink 1.4s ease-in-out infinite;background:#f5c451;border-radius:50%;height:8px;width:8px}@keyframes blink{0%,to{opacity:.4}50%{opacity:1}}.ticker-period-label{color:#5b6378;font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.ticker-amount-wrap{align-items:flex-start;display:flex;flex-direction:column;gap:4px}.ticker-amount{font-feature-settings:"tnum";font-family:JetBrains Mono,SF Mono,Menlo,monospace;font-size:clamp(48px,8vw,96px);font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:-.02em;line-height:1;text-shadow:0 0 30px currentColor;transition:color .4s ease}.ticker-amount-sub{color:#5b6378;font-size:14px;letter-spacing:.04em}.ticker-progress{background:#ffffff0f;border-radius:999px;height:6px;overflow:hidden;width:100%}.ticker-progress-fill{box-shadow:0 0 16px currentColor;height:100%;transition:width .22s ease,background .6s ease}.ticker-pops{inset:0;pointer-events:none;position:absolute}.charge-pop{font-feature-settings:"tnum";align-items:center;animation:charge-fly 2.1s cubic-bezier(.16,1,.3,1) forwards;display:flex;flex-direction:column;font-family:JetBrains Mono,SF Mono,monospace;font-variant-numeric:tabular-nums;gap:4px;left:50%;position:absolute;text-shadow:0 0 24px #ef6e6e99;top:50%;transform:translate(-50%,-50%)}.charge-pop-amount{color:#ef6e6e;font-size:56px;font-weight:700}.charge-pop-merchant{color:#d8a2a2;font-size:14px;letter-spacing:.08em;text-transform:uppercase}@keyframes charge-fly{0%{opacity:0;transform:translate(-50%,-50%) scale(.4) rotate(-6deg)}18%{opacity:1;transform:translate(-50%,-50%) scale(1.08) rotate(2deg)}35%{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}to{opacity:0;transform:translate(60%,-160%) scale(.7) rotate(8deg)}}.panel{background:#11161f;border:1px solid #1e2533;border-radius:12px;display:flex;flex-direction:column;gap:14px;padding:18px}.panel-title{color:#5b6378;font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.control-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.control-label{color:#8a91a5;display:flex;flex-direction:column;font-size:12px;gap:6px;letter-spacing:.04em;text-transform:uppercase}.control-label input{background:#0a0e1a;border:1px solid #1e2533;border-radius:8px;color:#eef0f5;font-family:inherit;font-size:16px;outline:none;padding:10px 12px;transition:border-color .16s ease}.control-label input:focus{border-color:#48d597}.money-input{align-items:center;background:#0a0e1a;border:1px solid #1e2533;border-radius:8px;display:flex;gap:6px;padding:0 12px;transition:border-color .16s ease}.money-input:focus-within{border-color:#48d597}.money-input>span{color:#5b6378;font-family:JetBrains Mono,monospace}.money-input input{background:#0000;border:none;color:#eef0f5;flex:1 1;font-family:JetBrains Mono,monospace;font-size:16px;outline:none;padding:10px 0}.money-input input::-webkit-inner-spin-button,.money-input input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.period-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,1fr)}.period-btn{background:#0a0e1a;border:1px solid #1e2533;border-radius:8px;color:#eef0f5;cursor:pointer;font-size:14px;font-weight:600;letter-spacing:.04em;padding:12px;transition:all .16s ease}.period-btn:hover:not(:disabled){border-color:#48d597;transform:translateY(-1px)}.period-btn.is-active{background:#48d597;border-color:#48d597;color:#0a0e1a}.period-btn:disabled{cursor:not-allowed;opacity:.6}.control-error{background:#ef6e6e1a;border:1px solid #ef6e6e4d;border-radius:8px;color:#ef6e6e;font-size:13px;padding:10px 12px}.preset-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(4,1fr)}.preset-btn{align-items:center;background:#0a0e1a;border:1px solid #1e2533;border-radius:8px;color:#eef0f5;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:12px 6px;transition:all .14s ease}.preset-btn:hover:not(:disabled){border-color:#ef6e6e;box-shadow:0 6px 16px #ef6e6e2e;transform:translateY(-1px)}.preset-btn:active:not(:disabled){background:#1a0e0e;transform:translateY(0)}.preset-btn:disabled{cursor:not-allowed;opacity:.4}.preset-emoji{font-size:22px;line-height:1}.preset-label{font-size:12px;font-weight:600}.preset-amount{color:#5b6378;font-family:JetBrains Mono,monospace;font-size:11px}.custom-charge{grid-gap:8px;align-items:stretch;display:grid;gap:8px;grid-template-columns:120px 1fr auto}.money-input.small{padding:0 10px}.merchant-input{background:#0a0e1a;border:1px solid #1e2533;border-radius:8px;color:#eef0f5;font-family:inherit;font-size:14px;outline:none;padding:10px 12px;transition:border-color .16s ease}.merchant-input:focus{border-color:#ef6e6e}.fire-btn{background:#ef6e6e;border:none;border-radius:8px;color:#0a0e1a;cursor:pointer;font-size:13px;font-weight:700;letter-spacing:.06em;padding:0 18px;text-transform:uppercase;transition:all .14s ease}.fire-btn:hover:not(:disabled){background:#ff8585;transform:translateY(-1px)}.fire-btn:disabled{cursor:not-allowed;opacity:.5}.charge-count{background:#1e2533;border-radius:999px;color:#eef0f5;font-size:11px;margin-left:6px;padding:2px 8px}.charge-empty{color:#5b6378;font-size:13px;padding:8px 0}.charge-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;max-height:240px;overflow-y:auto;padding:0}.charge-item{align-items:center;animation:slide-in .24s ease-out;background:#0a0e1a;border:1px solid #1e2533;border-radius:8px;display:flex;justify-content:space-between;padding:8px 10px}@keyframes slide-in{0%{opacity:0;transform:translateX(-6px)}to{opacity:1;transform:translateX(0)}}.charge-meta{display:flex;flex-direction:column}.charge-merchant{color:#eef0f5;font-size:13px;font-weight:600}.charge-time{color:#5b6378;font-size:11px}.charge-right{align-items:center;display:flex;gap:8px}.charge-amount{font-feature-settings:"tnum";color:#ef6e6e;font-family:JetBrains Mono,monospace;font-size:14px;font-variant-numeric:tabular-nums;font-weight:700}.charge-delete{background:#0000;border:1px solid #1e2533;border-radius:6px;color:#5b6378;cursor:pointer;font-size:16px;height:24px;line-height:1;transition:all .14s ease;width:24px}.charge-delete:hover{border-color:#ef6e6e;color:#ef6e6e}:root{color-scheme:dark}*{box-sizing:border-box}#root,body,html{height:100%;margin:0}body{-webkit-font-smoothing:antialiased;background:#0a0e1a;color:#eef0f5;font-family:Inter,SF Pro Display,system-ui,-apple-system,sans-serif}.app{display:flex;flex-direction:column;gap:18px;margin:0 auto;max-width:1400px;min-height:100vh;padding:24px}.app.is-kiosk{height:100vh;margin:0;max-width:none;padding:12px}.app.is-kiosk .ticker-wrap{align-items:stretch;display:flex;flex:1 1}.app.is-kiosk .ticker-display{border-radius:0;height:100%}.app.is-kiosk .app-header{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a0e1a99;border-radius:8px;padding:6px 10px;position:absolute;right:8px;top:8px;z-index:10}.app.is-kiosk .app-header .brand,.app.is-kiosk .app-header .budget-id,.app.is-kiosk .app-header .conn-dot{display:none}.app.is-led .ticker-display{background:#050807!important;border-radius:8px;box-shadow:inset 0 0 40px #000000e6,0 0 0 1px #ffffff0a}.app.is-led .ticker-amount{font-family:Press Start\ 2P,VT323,monospace;font-size:clamp(40px,7.2vw,80px);font-weight:400;letter-spacing:.05em;line-height:1;-webkit-mask-image:radial-gradient(circle,#000 38%,#0000 42%);mask-image:radial-gradient(circle,#000 38%,#0000 42%);-webkit-mask-repeat:repeat;mask-repeat:repeat;-webkit-mask-size:6px 6px;mask-size:6px 6px;text-shadow:0 0 6px currentColor,0 0 18px currentColor}.app.is-led .ticker-amount-sub,.app.is-led .ticker-empty-text,.app.is-led .ticker-period-label{font-family:Press Start\ 2P,VT323,monospace;font-size:9px;letter-spacing:.18em;text-transform:uppercase}.app.is-led .ticker-amount-sub{margin-top:4px}.app.is-led .ticker-progress{background:#00ff640f;border:1px solid #ffffff0a;border-radius:0;height:10px}.app.is-led .ticker-progress-fill{border-radius:0;box-shadow:0 0 16px currentColor;-webkit-mask-image:radial-gradient(circle,#000 38%,#0000 42%);mask-image:radial-gradient(circle,#000 38%,#0000 42%);-webkit-mask-repeat:repeat;mask-repeat:repeat;-webkit-mask-size:6px 6px;mask-size:6px 6px}.app.is-led .ticker-display:after{background-image:radial-gradient(circle,hsla(0,0%,100%,.025) .6px,#0000 1px);background-size:6px 6px;content:"";inset:0;pointer-events:none;position:absolute;z-index:0}.app.is-led .charge-pop-amount{font-family:Press Start\ 2P,VT323,monospace;font-size:32px;letter-spacing:.06em;-webkit-mask-image:radial-gradient(circle,#000 38%,#0000 42%);mask-image:radial-gradient(circle,#000 38%,#0000 42%);-webkit-mask-repeat:repeat;mask-repeat:repeat;-webkit-mask-size:6px 6px;mask-size:6px 6px}.app.is-led .charge-pop-merchant{font-family:Press Start\ 2P,VT323,monospace;font-size:9px;letter-spacing:.18em;text-transform:uppercase}.app-header{align-items:center;display:flex;justify-content:space-between}.brand{color:#eef0f5;font-family:JetBrains Mono,SF Mono,monospace;font-size:18px;font-weight:700;letter-spacing:-.02em}.brand-accent{color:#48d597}.header-meta{align-items:center;display:flex;gap:8px}.mode-toggle{background:#11161f;border:1px solid #1e2533;border-radius:6px;color:#5b6378;cursor:pointer;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;letter-spacing:.1em;padding:5px 10px;transition:all .14s ease}.mode-toggle:hover{border-color:#2a3445;color:#eef0f5}.mode-toggle.is-on{background:#48d597;border-color:#48d597;color:#0a0e1a}.budget-id{background:#11161f;border:1px solid #1e2533;border-radius:6px;color:#5b6378;font-family:JetBrains Mono,monospace;font-size:11px;padding:4px 8px}.conn-dot{background:#ef6e6e;border-radius:50%;box-shadow:0 0 12px #ef6e6e;height:8px;transition:all .2s ease;width:8px}.conn-dot.is-on{background:#48d597;box-shadow:0 0 12px #48d597}.ticker-wrap{width:100%}.controls-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr 1fr}@media (max-width:960px){.controls-grid{grid-template-columns:1fr}}
/*# sourceMappingURL=main.8bc78564.css.map*/