:root{--blue:#1ac9ff;--blue-dark:#0090cc;--blue-light:#1ac9ff26;--pink:#ff2090;--pink-dark:#cc0068;--pink-light:#ff209026;--green:#00e89a;--green-light:#00e89a26;--amber:#ffb700;--amber-light:#ffb70026;--red:#f45;--red-light:#ff445526;--surface:#ffffff12;--bg:#ffffff0d;--border:#ffffff1a;--text:#ecf0ff;--text-2:#ecf0ff94;--text-3:#ecf0ff59;--radius-sm:10px;--radius:16px;--radius-lg:20px;--shadow-sm:0 2px 12px #00000080;--shadow:0 8px 32px #0000008c;--shadow-lg:0 20px 60px #000000a6}[data-theme=light]{--blue:#0078cc;--blue-dark:#059;--blue-light:#0078cc1f;--pink:#d6006e;--pink-dark:#a0004f;--pink-light:#d6006e1a;--green:#00a86e;--green-light:#00a86e1f;--amber:#c80;--amber-light:#cc88001f;--red:#c23;--red-light:#cc22331f;--surface:#ffffffe6;--bg:#0000000a;--border:#0000001a;--text:#0f1120;--text-2:#0f11208c;--text-3:#0f112059;--shadow-sm:0 2px 12px #0000001a;--shadow:0 8px 32px #0000001f;--shadow-lg:0 20px 60px #0000002e}[data-theme=light] body{background:radial-gradient(80% 60% at 10% 5%,#0078cc1f 0%,#0000 55%),radial-gradient(70% 50% at 90% 95%,#d6006e1f 0%,#0000 55%),#f0f4ff}[data-theme=light] .app-header{background:#f0f4ffe6;border-bottom-color:#00000017}[data-theme=light] .user-card{background:linear-gradient(135deg,#1565c0 0%,#880e4f 100%)}[data-theme=light] .user-card:before{background:#1ac9ff59}[data-theme=light] .user-card:after{background:#ff209059}[data-theme=light] .bg-cyl-blue,[data-theme=light] .bg-cyl-blue2{opacity:.09!important}[data-theme=light] .bg-cyl-pink,[data-theme=light] .bg-cyl-pink2{opacity:.07!important}[data-theme=light] .card{background:#ffffffd9;border-color:#00000014;box-shadow:0 2px 16px #00000017,inset 0 1px #fffc}[data-theme=light] .action-btn.behozas{background:linear-gradient(135deg,#0050a01a,#0078cc14);border-color:#0078cc38}[data-theme=light] .action-btn.elvitel{background:linear-gradient(135deg,#8c00461a,#d6006e14);border-color:#d6006e38}[data-theme=light] .action-btn.behozas .action-name{color:var(--blue-dark)}[data-theme=light] .action-btn.behozas .action-desc{color:#00559980}[data-theme=light] .action-btn.elvitel .action-name{color:var(--pink-dark)}[data-theme=light] .action-btn.elvitel .action-desc{color:#a0004f80}[data-theme=light] .balance-card.positive{background:#00a86e14;border-color:#00a86e47}[data-theme=light] .balance-card.warning{background:#cc880014;border-color:#cc880047}[data-theme=light] .balance-card.danger{background:#cc223314;border-color:#cc223347}[data-theme=light] .balance-card.positive .balance-amount{color:#004d30}[data-theme=light] .balance-card.warning .balance-amount{color:#663800}[data-theme=light] .balance-card.danger .balance-amount{color:#6b0010}[data-theme=light] .suggestion.ready{color:#004080;background:#0078cc14;border-color:#0078cc33}[data-theme=light] .suggestion.waiting{color:#5c3800;background:#cc880014;border-color:#c803}[data-theme=light] .stock-row{background:#00000008}[data-theme=light] .input-field{color:var(--text);background:#0000000a;border-color:#0000001f}[data-theme=light] .input-field:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px #0078cc1f}[data-theme=light] .quick-btn{color:var(--text-2);background:#0000000a;border-color:#0000001a}[data-theme=light] .type-btn{background:#ffffffd9;border-color:#0000001f}[data-theme=light] .loading-box{background:#f0f4fff7;border-color:#00000014}[data-theme=light] .toast.success{background:#0f1120eb}[data-theme=light] .unauth-wrap{background:#fffc;border-color:#00000014}[data-theme=light] .unauth-title{color:var(--text)}[data-theme=light] .unauth-sub,[data-theme=light] .unauth-footer{color:var(--text-2)}[data-theme=light] .pending-row{background:#00000008}[data-theme=light] .pending-name{color:var(--text)}[data-theme=light] .pending-email{color:var(--text-2)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;height:100%}body{-webkit-font-smoothing:antialiased;min-height:100dvh;color:var(--text);-webkit-tap-highlight-color:transparent;background-color:#07091a;background-image:radial-gradient(80% 60% at 10% 5%,#0090d038 0%,#0000 55%),radial-gradient(70% 50% at 90% 95%,#cc006838 0%,#0000 55%),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}input,textarea{font-family:inherit}.bg-decor{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.bg-cyl{position:absolute}.bg-cyl-blue{opacity:.14;width:260px;animation:10s ease-in-out infinite floatB;bottom:-80px;left:-70px}.bg-cyl-pink{opacity:.12;width:220px;animation:12s ease-in-out infinite floatP;top:30px;right:-55px}.bg-cyl-blue2{opacity:.06;width:120px;animation:14s ease-in-out -5s infinite floatB;top:40%;left:-25px}.bg-cyl-pink2{opacity:.06;width:100px;animation:11s ease-in-out -3s infinite floatP;bottom:20%;right:-20px}@keyframes floatB{0%,to{transform:translateY(0)rotate(-13deg)}50%{transform:translateY(-28px)rotate(-13deg)}}@keyframes floatP{0%,to{transform:translateY(0)rotate(17deg)}50%{transform:translateY(-22px)rotate(17deg)}}.app-shell{z-index:1;flex-direction:column;min-height:100dvh;display:flex;position:relative}.app-header{z-index:20;-webkit-backdrop-filter:blur(20px);background:#07091ad9;border-bottom:1px solid #ffffff14;position:sticky;top:0}.app-header-inner{justify-content:center;align-items:center;max-width:520px;min-height:72px;margin:0 auto;padding:10px 16px;display:flex;position:relative}.app-header-inner:not(.subpage){justify-content:center}.app-logo{letter-spacing:-1px;text-align:center;font-size:28px;font-weight:900}.app-logo .blue{color:var(--blue)}.app-logo .pink{color:var(--pink)}.app-header-inner.subpage{justify-content:space-between}.app-main{flex-direction:column;flex:1;gap:12px;width:100%;max-width:520px;margin:0 auto;padding:16px 16px 40px;display:flex}.btn-back{color:#ffffffb3;background:#ffffff14;border:1px solid #ffffff1f;border-radius:50px;align-items:center;gap:6px;padding:7px 14px;font-size:14px;font-weight:500;transition:all .15s;display:flex}.btn-back:active{background:#ffffff24;transform:scale(.96)}.logo-pill{border-radius:16px;justify-content:center;align-items:center;padding:7px 22px;transition:box-shadow .25s,background .25s;display:flex}[data-theme=dark] .logo-pill,:not([data-theme]) .logo-pill{background:#ffffffed;box-shadow:0 3px 18px #00000073,0 0 0 1px #ffffff14}[data-theme=light] .logo-pill{box-shadow:none;background:0 0}.app-logo-img{width:auto;height:52px;display:block}.page-title{letter-spacing:-.3px;background:linear-gradient(135deg, var(--blue), var(--pink));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:20px;font-weight:800}.card{border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(12px);background:#ffffff12;border:1px solid #ffffff17;padding:20px;box-shadow:0 4px 24px #00000059,inset 0 1px #ffffff0f}.card-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);margin-bottom:14px;font-size:11px;font-weight:700}.user-card{border-radius:var(--radius-lg);box-shadow:var(--shadow);color:#fff;background:linear-gradient(135deg,#0a2840 0%,#280a1e 100%);border:1px solid #ffffff1a;align-items:center;gap:14px;padding:20px;display:flex;position:relative;overflow:hidden}.user-card:before{content:"";filter:blur(35px);pointer-events:none;background:#1ac9ff4d;border-radius:50%;width:100px;height:100px;position:absolute;top:-30px;left:-30px}.user-card:after{content:"";filter:blur(35px);pointer-events:none;background:#ff20904d;border-radius:50%;width:100px;height:100px;position:absolute;bottom:-30px;right:-30px}.user-avatar{background:linear-gradient(135deg, var(--blue), var(--pink));color:#fff;z-index:1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:50px;height:50px;font-size:20px;font-weight:700;display:flex;position:relative;overflow:hidden;box-shadow:0 0 0 2px #fff3}.user-avatar img{object-fit:cover;width:100%;height:100%}.user-info{z-index:1;flex:1;min-width:0;position:relative}.user-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:700;overflow:hidden}.user-email{color:#ffffff73;white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:12px;overflow:hidden}.btn-refresh{color:#ffffffb3;z-index:1;background:#ffffff1a;border:1px solid #ffffff26;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;transition:all .2s;display:flex;position:relative}.btn-refresh:active{background:#fff3;transform:rotate(180deg)}.patron-row{justify-content:space-between;align-items:center;padding:10px 0;display:flex}.patron-row+.patron-row{border-top:1px solid var(--border)}.patron-label{color:var(--text-2);align-items:center;gap:8px;font-size:14px;display:flex}.dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.dot-blue{background:var(--blue);box-shadow:0 0 6px #1ac9ff99}.dot-pink{background:var(--pink);box-shadow:0 0 6px #ff209099}.dot-green{background:var(--green);box-shadow:0 0 6px #00e89a99}.dot-amber{background:var(--amber)}.dot-red{background:var(--red)}.patron-value{color:var(--text);letter-spacing:-.5px;font-size:20px;font-weight:800}.balance-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(12px);border:1.5px solid;padding:20px}.balance-card.positive{background:#00e89a1a;border-color:#00e89a4d}.balance-card.warning{background:#ffb7001a;border-color:#ffb7004d}.balance-card.danger{background:#ff44551a;border-color:#ff44554d}.balance-label{text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px;font-size:11px;font-weight:700}.balance-card.positive .balance-label{color:var(--green)}.balance-card.warning .balance-label{color:var(--amber)}.balance-card.danger .balance-label{color:var(--red)}.balance-amount{letter-spacing:-.5px;font-size:30px;font-weight:800}.balance-card.positive .balance-amount{color:#7fffd4}.balance-card.warning .balance-amount{color:#ffd760}.balance-card.danger .balance-amount{color:#ff8090}.balance-sub{opacity:.65;margin-top:4px;font-size:12px}.action-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.action-btn{border-radius:var(--radius-lg);text-align:left;-webkit-backdrop-filter:blur(12px);border:1.5px solid;flex-direction:column;gap:8px;padding:20px 16px 18px;transition:all .15s;display:flex}.action-btn:active{transform:scale(.96)}.action-btn.behozas{background:linear-gradient(135deg,#0064b44d,#1ac9ff2e);border-color:#1ac9ff4d}.action-btn.elvitel{background:linear-gradient(135deg,#a000504d,#ff20902e);border-color:#ff20904d}.action-cyl{filter:drop-shadow(0 4px 12px #0006);justify-content:center;margin-bottom:4px;display:flex}.action-btn .action-name{font-size:15px;font-weight:700}.action-btn .action-desc{font-size:12px}.action-btn.behozas .action-name{color:#90dcff}.action-btn.behozas .action-desc{color:#90dcff80}.action-btn.elvitel .action-name{color:#ff90c4}.action-btn.elvitel .action-desc{color:#ff90c480}.stock-row{background:var(--bg);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;margin-bottom:8px;padding:10px 14px;display:flex}.stock-row:last-child{margin-bottom:0}.stock-label{color:var(--text-2);align-items:center;gap:8px;font-size:14px;display:flex}.stock-values{font-size:13px;font-weight:500}.stock-tele{color:var(--green)}.stock-ures{color:var(--text-3)}.stock-sep{color:var(--border);margin:0 4px}.suggestion{border-radius:var(--radius);padding:14px 16px;font-size:13px;font-weight:500;line-height:1.5}.suggestion.ready{color:#90dcff;background:#1ac9ff1a;border:1px solid #1ac9ff40}.suggestion.waiting{color:#ffd760;background:#ffb7001a;border:1px solid #ffb70040}.btn-primary{border-radius:var(--radius);color:#fff;width:100%;box-shadow:var(--shadow-sm);border:none;padding:16px;font-size:15px;font-weight:700;transition:all .15s}.btn-primary:active{box-shadow:none;transform:scale(.98)}.btn-primary:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-blue{background:linear-gradient(135deg, var(--blue), var(--blue-dark));box-shadow:0 4px 20px #1ac9ff4d}.btn-pink{background:linear-gradient(135deg, var(--pink), var(--pink-dark));box-shadow:0 4px 20px #ff20904d}.btn-green{background:linear-gradient(135deg, var(--green), #00a86e);box-shadow:0 4px 20px #00e89a40}.btn-amber{background:linear-gradient(135deg, var(--amber), #c80);box-shadow:0 4px 16px #ffb70040}.btn-orange{background:linear-gradient(135deg,#ff8c00,#c50);box-shadow:0 4px 16px #ff8c0040}.btn-red{background:linear-gradient(135deg, var(--red), #cc2030);box-shadow:0 4px 16px #ff445540}.counter-wrap{flex-direction:column;align-items:center;gap:16px;display:flex}.counter-row{align-items:center;gap:24px;display:flex}.counter-btn{background:linear-gradient(135deg, var(--blue), var(--blue-dark));color:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;font-size:28px;font-weight:300;transition:all .12s;display:flex;box-shadow:0 4px 16px #1ac9ff59}.counter-btn:active{box-shadow:none;transform:scale(.88)}.counter-btn:disabled{opacity:.3;box-shadow:none;cursor:not-allowed;transform:none}.counter-value{letter-spacing:-2px;color:var(--text);text-align:center;font-variant-numeric:tabular-nums;min-width:80px;font-size:52px;font-weight:800}.quick-btns{gap:8px;display:flex}.quick-btn{border-radius:var(--radius-sm);background:var(--bg);border:1.5px solid var(--border);color:var(--text-2);flex:1;min-width:52px;padding:10px 8px;font-size:15px;font-weight:600;transition:all .12s}.quick-btn:active{background:var(--blue-light);border-color:var(--blue);color:var(--blue)}.quick-btn.active{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 2px 12px #1ac9ff4d}.type-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.type-btn{border-radius:var(--radius);border:2px solid var(--border);background:var(--surface);color:var(--text-2);align-items:center;gap:10px;padding:14px 16px;font-size:15px;font-weight:600;transition:all .15s;display:flex}.type-btn:active{transform:scale(.97)}.type-btn.active-blue{border-color:var(--blue);background:var(--blue-light);color:var(--blue)}.type-btn.active-pink{border-color:var(--pink);background:var(--pink-light);color:var(--pink)}.radio-circle{border:2px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;transition:all .15s;display:flex}.type-btn.active-blue .radio-circle{border-color:var(--blue)}.type-btn.active-pink .radio-circle{border-color:var(--pink)}.radio-dot{opacity:0;border-radius:50%;width:10px;height:10px;transition:opacity .15s}.type-btn.active-blue .radio-dot{background:var(--blue);opacity:1}.type-btn.active-pink .radio-dot{background:var(--pink);opacity:1}.input-field{border-radius:var(--radius);border:1.5px solid var(--border);width:100%;color:var(--text);background:#ffffff0f;outline:none;padding:14px 16px;font-size:16px;transition:border-color .15s,background .15s,box-shadow .15s}.input-field:focus{border-color:var(--blue);background:#ffffff17;box-shadow:0 0 0 3px #1ac9ff26}.input-big{text-align:center;letter-spacing:-.5px;font-size:32px;font-weight:800}textarea.input-field{resize:none}.summary-row{justify-content:space-between;align-items:center;padding:4px 0;display:flex}.summary-label{color:var(--text-2);font-size:14px}.summary-value{color:var(--text);letter-spacing:-.5px;font-size:22px;font-weight:800}.skeleton{border-radius:var(--radius-lg);background:linear-gradient(90deg,#ffffff0f 25%,#ffffff1c 50%,#ffffff0f 75%) 0 0/200%;animation:1.4s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.toast{border-radius:var(--radius);box-shadow:var(--shadow-lg);color:#fff;pointer-events:auto;align-items:center;gap:10px;max-width:360px;padding:14px 20px;font-size:14px;font-weight:600;animation:.3s cubic-bezier(.34,1.56,.64,1) toastIn;display:flex}.toast.success{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#141832f2;border:1px solid #00e89a4d}.toast.error{background:var(--red)}.toast-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;display:flex}.toast.success .toast-icon{background:var(--green);color:#000}.toast.error .toast-icon{background:#ffffff40}@keyframes toastIn{0%{opacity:0;transform:translate(-50%)translateY(-20px)scale(.9)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}.loading-overlay{-webkit-backdrop-filter:blur(6px);z-index:50;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.loading-box{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);background:#141832f2;border:1px solid #ffffff1a;flex-direction:column;align-items:center;gap:14px;padding:28px 40px;display:flex}.spinner{border:3px solid #ffffff1f;border-top-color:var(--blue);border-radius:50%;width:36px;height:36px;animation:.7s linear infinite spin;box-shadow:0 0 16px #1ac9ff4d}.loading-text{color:var(--text-2);font-size:13px;font-weight:500}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:.28s ease-out fadeUp}.divider{background:var(--border);height:1px;margin:4px 0}.csere-summary{border-radius:var(--radius-lg);background:#ffb7001a;border:1.5px solid #ffb70047;padding:18px}.csere-sum-row{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.csere-sum-row:last-child{border-top:1px dashed #ffb70040;margin-bottom:0;padding-top:8px}.csere-sum-label{color:var(--amber);font-size:13px}.csere-sum-value{color:#ffd760;font-size:16px;font-weight:700}.csere-sum-hint{color:#ffb7008c;margin-top:8px;font-size:11px}.warn-box{border-radius:var(--radius);color:#ffd760;background:#ffb7001a;border:1px solid #ffb70040;padding:14px 16px;font-size:13px;font-weight:500}.btn-theme{background:var(--surface);border:1px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:17px;transition:all .2s;display:flex;position:absolute;right:16px}.btn-theme:active{transform:scale(.9)rotate(20deg)}.unauth-wrap{text-align:center;border:1px solid var(--border);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(12px);background:#ffffff0f;flex-direction:column;align-items:center;gap:16px;margin-top:24px;padding:36px 24px 40px;display:flex}.unauth-icon{font-size:56px;animation:.5s cubic-bezier(.34,1.56,.64,1) bounceIn}@keyframes bounceIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.unauth-title{letter-spacing:-.3px;background:linear-gradient(135deg, var(--blue), var(--pink));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:22px;font-weight:800}.unauth-sub{color:var(--text-2);max-width:320px;font-size:15px;line-height:1.6}.unauth-form{text-align:left;flex-direction:column;gap:10px;width:100%;max-width:320px;display:flex}.unauth-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-size:11px;font-weight:700}.unauth-error{color:var(--red);font-size:13px;font-weight:500}.unauth-footer{color:var(--text-3);font-size:12px}.pending-pulse{color:var(--amber);align-items:center;gap:10px;font-size:14px;font-weight:600;display:flex}.pulse-dot{background:var(--amber);border-radius:50%;width:10px;height:10px;animation:1.5s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.pending-row{border-radius:var(--radius-sm);background:#ffb7000f;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding:12px;display:flex}.pending-row:last-child{margin-bottom:0}.pending-info{flex:1;min-width:0}.pending-name{color:var(--text);font-size:14px;font-weight:700}.pending-email{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.btn-approve{border-radius:var(--radius-sm);background:var(--green);color:#000;border:none;flex-shrink:0;padding:8px 14px;font-size:13px;font-weight:700;transition:all .15s;box-shadow:0 2px 8px #00e89a40}.btn-approve:active{transform:scale(.95)}.btn-approve:disabled{opacity:.5;cursor:not-allowed}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}input[type=number]{-moz-appearance:textfield}
