@use "tailwindcss";@font-face{font-family:IRANYekanX;src:url(/fonts/IRANYekanX/IRANYekanX-Regular.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:IRANYekanX;src:url(/fonts/IRANYekanX/IRANYekanX-Light.ttf) format("truetype");font-weight:300;font-style:normal}@font-face{font-family:IRANYekanX;src:url(/fonts/IRANYekanX/IRANYekanX-Medium.ttf) format("truetype");font-weight:500;font-style:normal}@font-face{font-family:IRANYekanX;src:url(/fonts/IRANYekanX/IRANYekanX-DemiBold.ttf) format("truetype");font-weight:600;font-style:normal}@font-face{font-family:IRANYekanX;src:url(/fonts/IRANYekanX/IRANYekanX-Bold.ttf) format("truetype");font-weight:700;font-style:normal}@font-face{font-family:IRANYekanX;src:url(/fonts/IRANYekanX/IRANYekanX-ExtraBold.ttf) format("truetype");font-weight:800;font-style:normal}@font-face{font-family:IRANYekanX;src:url(/fonts/IRANYekanX/IRANYekanX-Black.ttf) format("truetype");font-weight:900;font-style:normal}:root{--primary:#10b981;--primary-hover:#059669;--primary-dark:#047857;--primary-bg:rgba(16,185,129,0.12);--primary-glow:rgba(16,185,129,0.25);--success:#34d399;--success-bg:rgba(52,211,153,0.1);--warning:#fbbf24;--warning-bg:rgba(251,191,36,0.1);--danger:#f87171;--danger-bg:rgba(248,113,113,0.1);--info:#60a5fa;--info-bg:rgba(96,165,250,0.08);--bg:#080c0a;--bg-card:#0f1310;--bg-hover:#181d19;--bg-elevated:#141814;--bg-secondary:#0a0e0c;--surface:#0f1310;--surface-hover:#181d19;--border:#1f2a24;--border-light:#2d3a32;--text:#e4ece8;--text-muted:#8ca098;--text-dim:#5c6b63;--radius:14px;--radius-sm:10px;--radius-xs:7px;--radius-lg:18px;--shadow:0 1px 3px rgba(0,0,0,0.4),0 1px 2px rgba(0,0,0,0.3);--shadow-lg:0 8px 32px rgba(0,0,0,0.5);--glass:rgba(12,17,14,0.92);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--topbar-height:52px;--sk:#1a231f;--sk-hl:#24312b}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}*{box-sizing:border-box}body,html{height:100%;overflow-x:hidden;position:relative}body{font-family:IRANYekanX,Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text);direction:rtl;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-overflow-scrolling:touch}button,input,select,textarea{font-family:inherit}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:3px}.sk{background:linear-gradient(90deg,var(--sk) 25%,var(--sk-hl) 50%,var(--sk) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-xs)}::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}.app-container{display:flex;min-height:100vh;min-height:100dvh}.sidebar-toggle{width:36px;height:36px;background:none;border:none;color:var(--text-muted);transition:color .2s ease;opacity:.7}.sidebar-toggle:hover{color:var(--text);opacity:1}.sidebar{width:240px;background:var(--glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-left:1px solid var(--border);padding:2rem .75rem 1rem;position:fixed;top:0;right:0;bottom:0;z-index:50;overflow-y:auto}.sidebar,.sidebar-nav{display:flex;flex-direction:column}.sidebar-nav{gap:.2rem;flex:1;padding-top:.5rem}.nav-item{display:flex;align-items:center;gap:.75rem;padding:.65rem .85rem;border-radius:var(--radius-sm);color:var(--text-muted);text-decoration:none;font-size:.875rem;font-weight:500;transition:all .2s ease;position:relative}.nav-item:hover{background:var(--bg-hover);color:var(--text)}.nav-item.active{background:linear-gradient(135deg,rgba(16,185,129,.15),rgba(5,150,105,.08));color:var(--primary);font-weight:600}.nav-item.active:before{content:"";position:absolute;right:-.75rem;top:50%;transform:translateY(-50%);width:3px;height:60%;background:var(--primary);border-radius:0 3px 3px 0}.nav-badge{margin-right:auto;background:var(--primary);color:#fff;font-size:.7rem;font-weight:700;min-width:1.25rem;height:1.25rem;padding:0 .35rem;border-radius:999px;display:flex;align-items:center;justify-content:center;line-height:1}.sidebar-user-section{margin-top:auto;border-top:1px solid var(--border);padding-top:.75rem}.logout-btn{margin-top:.25rem;width:100%;background:none;border:none;font-family:inherit;cursor:pointer;color:var(--text-muted);opacity:.7}.logout-btn:hover{opacity:1;color:#ef4444!important}.sidebar-user-info{display:flex;align-items:center;gap:.6rem;padding:.4rem .75rem .75rem}.sidebar-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--primary-hover));display:flex;align-items:center;justify-content:center;font-size:.9rem;color:#fff;font-weight:700;flex-shrink:0}.sidebar-user-name{font-size:.82rem;color:var(--text);font-weight:600}.sidebar-badge{background:rgba(16,185,129,.15);color:var(--primary);padding:.1rem .4rem;border-radius:4px;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.sidebar-toggle{display:none;position:fixed;top:calc(var(--safe-top) + 1.5rem);right:1rem;z-index:101;width:44px;height:44px;background:var(--glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--text);border:1px solid var(--border-light);border-radius:12px;cursor:pointer;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(0,0,0,.4);transition:all .2s ease}.sidebar-toggle:hover{background:var(--bg-hover);border-color:var(--primary)}.sidebar-overlay{display:none}@media (max-width:768px){.sidebar-toggle{display:flex!important;top:calc(var(--safe-top) + 3.5rem)!important}.sidebar{width:100%;max-height:82vh;border-radius:22px 22px 0 0;border-left:none;top:auto;bottom:0;right:0;left:0;padding:0 0 calc(var(--safe-bottom) + .5rem);transform:translateY(0);transition:transform .32s cubic-bezier(.4,0,.2,1);box-shadow:0 -10px 50px rgba(0,0,0,.6);z-index:200}.sidebar:before{content:"";display:block;width:38px;height:4px;background:rgba(255,255,255,.12);border-radius:2px;margin:.75rem auto .5rem;flex-shrink:0}.sidebar.closed{transform:translateY(100%)}.sidebar-nav{gap:0;padding:.25rem .75rem 0;overflow-y:auto}.sidebar-nav .nav-item{padding:.9rem 1rem;font-size:.95rem;border-radius:12px;margin-bottom:.15rem}.sidebar-nav .nav-item .icon{font-size:1.25rem;width:1.6rem}.sidebar-nav .nav-item.active:before{right:auto;left:.5rem;width:4px;height:50%;border-radius:2px;top:50%}.sidebar-user-section{padding:.5rem .75rem .25rem}.sidebar-user-section .logout-btn,.sidebar-user-section .nav-item{padding:.8rem 1rem;font-size:.9rem;border-radius:12px}.sidebar-user-info{padding:.25rem .25rem .5rem}.sidebar-overlay{display:block;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:199;opacity:0;pointer-events:none;transition:opacity .3s ease;backdrop-filter:blur(2px)}.sidebar-overlay.open{opacity:1;pointer-events:auto}.app-container,.main-content{overflow-x:hidden}.main-content{margin-right:0!important;padding:calc(var(--safe-top) + 3rem) 0 calc(var(--safe-bottom) + 1rem);min-width:0;width:100%;max-width:100%}.page-header{padding-top:2rem}.main-content.chat-active{padding-left:0;padding-right:0;padding-top:calc(var(--safe-top) + 1.25rem)}.chat-page{max-width:100%;margin:0;height:calc(100dvh - var(--safe-top) - .85rem)}.chat-page .page-header{display:none}.chat-container{border-radius:0;border-left:none;border-right:none}.chat-messages{padding:2rem .65rem}.chat-input-bar{padding:.4rem .5rem}.chat-msg{max-width:88%}}.nav-item .icon{font-size:1.1rem;width:1.5rem;text-align:center;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.main-content{flex:1;margin-right:240px;padding:1.75rem 2.25rem;min-height:100vh;max-width:1200px}.main-content.is-webapp{padding-top:3rem}.page-header{margin-bottom:1.5rem;display:flex;flex-direction:column;align-items:center;text-align:center}.store-heading{display:inline-flex;align-items:center;gap:.6rem;margin:0;font-size:1.5rem;font-weight:800;letter-spacing:2px;color:var(--primary);line-height:1}.store-heading svg{transform:translateY(-3px)}.page-header p{color:var(--text-muted);margin:.3rem 0 0;font-size:.85rem}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.15rem 1.35rem;margin-bottom:.85rem;transition:border-color .2s,box-shadow .2s}.card:hover{border-color:var(--primary);box-shadow:0 0 24px var(--primary-glow),var(--shadow)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.35rem;transition:border-color .2s,transform .2s;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--primary),var(--primary-hover));opacity:.5}.stat-card:hover{border-color:var(--border-light);transform:translateY(-2px)}.stat-card .stat-label{font-size:.78rem;color:var(--text-muted);margin-bottom:.3rem;font-weight:500}.stat-card .stat-value{font-size:1.45rem;font-weight:700;letter-spacing:-.02em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.55rem 1.25rem;border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;cursor:pointer;border:none;font-family:inherit;transition:all .2s ease;text-decoration:none;white-space:nowrap;line-height:1.4}.btn:active{transform:scale(.97)}.btn-primary{background:linear-gradient(135deg,var(--primary-dark),var(--primary));color:white;box-shadow:0 2px 8px var(--primary-glow)}.btn-primary:hover{box-shadow:0 4px 16px var(--primary-glow);transform:translateY(-1px)}.btn-success{background:linear-gradient(135deg,#059669,var(--success));color:white}.btn-success:hover{box-shadow:0 4px 16px rgba(52,211,153,.3);transform:translateY(-1px)}.btn-danger{background:linear-gradient(135deg,#dc2626,var(--danger));color:white}.btn-danger:hover{box-shadow:0 4px 16px rgba(248,113,113,.3);transform:translateY(-1px)}.btn-outline{background:transparent;border:1px solid var(--border);color:var(--text)}.btn-outline:hover{background:var(--bg-hover);border-color:var(--border-light)}.btn-sm{padding:.35rem .85rem;font-size:.78rem}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none!important;box-shadow:none!important}.form-group{margin-bottom:.85rem}.form-group label{display:block;font-size:.78rem;font-weight:500;color:var(--text-muted);margin-bottom:.3rem}.form-input,.form-select,.form-textarea{width:100%;padding:.6rem .85rem;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:.875rem;font-family:inherit;outline:none;transition:border-color .2s,box-shadow .2s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.form-textarea{min-height:90px;resize:vertical;font-family:JetBrains Mono,Fira Code,monospace;font-size:.8rem;line-height:1.5}.table-wrapper{overflow-x:auto;border-radius:var(--radius-sm)}table{width:100%;border-collapse:collapse;font-size:.85rem}thead th{text-align:right;padding:.65rem .85rem;color:var(--text-dim);font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}tbody td,thead th{border-bottom:1px solid var(--border)}tbody td{padding:.6rem .85rem;transition:background .15s}tbody tr:last-child td{border-bottom:none}tbody tr:hover td{background:var(--bg-hover)}.badge{display:inline-flex;align-items:center;gap:.2rem;padding:.18rem .5rem;border-radius:20px;font-size:.68rem;font-weight:600;white-space:nowrap}.badge-success{background:var(--success-bg);color:var(--success)}.badge-warning{background:var(--warning-bg);color:var(--warning)}.badge-danger{background:var(--danger-bg);color:var(--danger)}.badge-info{background:var(--info-bg);color:var(--info)}.badge-telegram{background:rgba(64,184,233,.12);color:#40b8e9}.badge-telegram,.badge-web{font-size:.72rem;padding:.18rem .5rem}.badge-web{background:rgba(163,136,255,.12);color:#a388ff}.alert{padding:.7rem .95rem;border-radius:var(--radius-sm);margin-bottom:.85rem;font-size:.83rem;line-height:1.5}.alert-error{background:var(--danger-bg);border:1px solid rgba(248,113,113,.2);color:var(--danger)}.alert-success{background:var(--success-bg);border:1px solid rgba(52,211,153,.2);color:var(--success)}.alert-info{background:var(--info-bg);border:1px solid rgba(96,165,250,.2);color:var(--info)}.loading{flex-direction:column;padding:4rem 2rem;gap:1.25rem;width:100%}.loading,.loading-center{display:flex;align-items:center;justify-content:center}.loading-center{position:relative;width:80px;height:80px}.loading-ring{position:absolute;inset:0;width:100%;height:100%;border-color:#10b981 rgba(16,185,129,.25) rgba(16,185,129,.08) rgba(16,185,129,.08);border-style:solid;border-width:3px;border-radius:50%;animation:spin 1s linear infinite}.loading-logo{animation:loading-breathe 2s ease-in-out infinite}@keyframes loading-breathe{0%,to{transform:scale(1);opacity:.9}50%{transform:scale(1.12);opacity:.5}}.spinner{width:28px;height:28px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite,spinner-glow 1.5s ease-in-out infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(1turn)}}@keyframes spinner-glow{0%,to{box-shadow:0 0 4px rgba(16,185,129,.2)}50%{box-shadow:0 0 12px rgba(16,185,129,.5)}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;color:var(--text-muted);text-align:center;gap:.4rem}.empty-state .icon{font-size:2.5rem;margin-bottom:.5rem;opacity:.6}.empty-state p{font-size:.9rem;margin:0}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.65);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--bg-elevated);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:1.35rem;width:90%;max-width:500px;max-height:85vh;overflow-y:auto;box-shadow:var(--shadow-lg);animation:slideUp .2s ease}.modal-lg{max-width:640px}@keyframes slideUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.modal h2{margin:0 0 1rem;font-size:1.05rem;font-weight:700}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:.85rem 1.1rem;border-bottom:1px solid var(--border)}.modal-header h3{margin:0;font-size:.95rem;font-weight:700}.modal-close{background:none;border:none;color:var(--text-dim);font-size:1.1rem;cursor:pointer;padding:.2rem;line-height:1;border-radius:6px;transition:all .15s}.modal-close:hover{color:var(--text);background:var(--bg-hover)}.modal-body{padding:1.1rem}.modal-footer{display:flex;justify-content:flex-end;gap:.5rem;padding:.85rem 1.1rem;border-top:1px solid var(--border)}.config-link{word-break:break-all;font-family:JetBrains Mono,Fira Code,monospace;font-size:.75rem;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.65rem .9rem;cursor:pointer;transition:all .2s ease;line-height:1.6}.config-link:hover{border-color:var(--primary);background:var(--bg-hover)}.progress-bar{height:5px;background:var(--border);border-radius:3px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--primary-hover));border-radius:3px;transition:width .4s ease}.tabs{display:flex;gap:0;margin-bottom:1.15rem;border-bottom:1px solid var(--border)}.tab{padding:.55rem 1.1rem;cursor:pointer;color:var(--text-muted);border-bottom:2px solid transparent;font-size:.83rem;font-weight:500;transition:all .2s;margin-bottom:-1px}.tab:hover{color:var(--text)}.tab.active{color:var(--primary);border-bottom-color:var(--primary)}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;min-height:100dvh;background:radial-gradient(ellipse at 50% 0,rgba(16,185,129,.06) 0,transparent 60%);padding:1rem}.login-card{width:100%;max-width:400px;background:var(--glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2.25rem 1.75rem;box-shadow:var(--shadow-lg)}.login-logo{display:flex;align-items:center;justify-content:center;margin:0 auto .5rem}.login-card h2{text-align:center;font-size:1.1rem;font-weight:700;margin:0 0 .35rem}.login-card .subtitle{font-size:.8rem;margin:0 0 1.35rem}.login-card .subtitle,.login-tip{text-align:center;color:var(--text-muted)}.login-tip{margin-top:1.35rem;padding:.7rem .9rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.78rem;line-height:1.6}.login-tip strong{color:var(--text)}input[type=checkbox]{appearance:none;-webkit-appearance:none;width:18px;height:18px;border:2px solid var(--border-light);border-radius:4px;background:transparent;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;position:relative}input[type=checkbox]:checked{background:var(--primary);border-color:var(--primary)}input[type=checkbox]:checked:after{content:"✓";color:white;font-size:12px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}input[type=checkbox]:disabled{opacity:.3;cursor:not-allowed}input[type=checkbox]:not(:disabled):hover{border-color:var(--primary)}.divider{height:1px;background:var(--border);margin:.85rem 0}code{background:var(--bg);padding:.15rem .4rem;border-radius:4px;font-size:.78rem;font-family:JetBrains Mono,monospace}a,code{color:var(--primary)}a{text-decoration:none;transition:color .2s}a:hover{color:var(--primary-hover)}.chat-page{max-width:700px;margin:0 auto;display:flex;flex-direction:column;height:calc(100vh - 1.75rem - 1.75rem);height:calc(100dvh - 1.75rem - 1.75rem)}.chat-page .page-header{flex-shrink:0;margin-bottom:.75rem}.chat-container{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-card);overflow:hidden;min-height:0}.chat-container,.chat-messages{flex:1;display:flex;flex-direction:column}.chat-messages{overflow-y:auto;padding:1rem;gap:.6rem;scroll-behavior:smooth}.chat-msg{display:flex;flex-direction:column;max-width:78%}.chat-msg.chat-own,.chat-msg.chat-user{align-self:flex-start;align-items:flex-start}.chat-msg.chat-admin,.chat-msg.chat-other{align-self:flex-end;align-items:flex-end}.chat-bubble{padding:.55rem .85rem;border-radius:16px;position:relative;min-width:80px;max-width:100%}.chat-own .chat-bubble,.chat-user .chat-bubble{background:var(--bg-elevated);border:1px solid var(--border-light);border-bottom-right-radius:4px}.chat-admin .chat-bubble,.chat-other .chat-bubble{background:linear-gradient(135deg,#064e3b,#065f46);border:1px solid rgba(16,185,129,.2);color:#fff;border-bottom-left-radius:4px}.chat-sender{font-size:.68rem;opacity:.65;margin-bottom:.2rem;font-weight:600}.chat-text{font-size:.875rem;line-height:1.55;white-space:pre-wrap;word-break:break-word}.chat-time{font-size:.62rem;opacity:.45;margin-top:.25rem;text-align:left;direction:ltr}.chat-input-bar{flex-shrink:0;padding:.6rem .75rem;border-top:1px solid var(--border);background:var(--bg-secondary)}.chat-input-wrapper{display:flex;align-items:flex-end;width:100%;border:1.5px solid var(--border);border-radius:16px;background:var(--bg);overflow:hidden;transition:border-color .2s,box-shadow .2s;position:relative}.chat-input-wrapper:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.chat-input{flex:1;resize:none;padding:.65rem .9rem;border:none;background:transparent;color:var(--text);font-family:inherit;font-size:.875rem;min-height:40px;max-height:110px;outline:none;line-height:1.5;overflow-y:auto}html[dir=ltr] .chat-input,html[dir=rtl] .chat-input{padding-right:48px}.chat-input::placeholder{color:var(--text-dim)}.chat-send-btn{position:absolute;top:50%;width:34px;height:34px;padding:0;border:none;background:linear-gradient(135deg,var(--primary-dark),var(--primary));color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:50%;transition:all .2s cubic-bezier(.4,0,.2,1);z-index:1;opacity:0;transform:translateY(-50%) scale(0);pointer-events:none}html[dir=ltr] .chat-send-btn,html[dir=rtl] .chat-send-btn{right:7px}.chat-send-btn.visible{opacity:1;transform:translateY(-50%) scale(1);pointer-events:auto}.chat-send-btn:hover:not(:disabled){filter:brightness(1.15)}.chat-send-btn:active:not(:disabled){transform:translateY(-50%) scale(.9)}.chat-send-btn:disabled{opacity:.3;cursor:not-allowed}@media (max-width:768px){.chat-page{height:calc(100dvh - var(--safe-top) - .85rem);margin:0}.chat-page .page-header{margin-bottom:.5rem;padding:0 .25rem}.chat-page .page-header h1{font-size:1.05rem}.chat-page .page-header p{font-size:.78rem}.chat-messages{padding:2rem .65rem 1.25rem;gap:.5rem}.chat-msg{max-width:85%}.chat-bubble{padding:.5rem .75rem}.chat-text{font-size:.85rem}.chat-input-bar{padding:.5rem .5rem calc(var(--safe-bottom) + .5rem)}.chat-input{font-size:.85rem;padding:.6rem 48px .6rem .75rem;min-height:38px}}.admin-messages-page{height:calc(100vh - 3.5rem);height:calc(100dvh - 3.5rem);display:flex;flex-direction:column}.messages-layout{display:flex;flex:1;gap:0;border-radius:var(--radius);border:1px solid var(--border);overflow:hidden;background:var(--bg-card);min-height:0}.conversation-list{width:290px;min-width:240px;border-left:1px solid var(--border);flex-direction:column;overflow-y:auto}.conv-header,.conversation-list{display:flex;background:var(--bg-secondary)}.conv-header{align-items:center;justify-content:space-between;padding:.8rem .9rem;font-size:.83rem;font-weight:700;color:var(--text);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:1}.unread-badge{background:linear-gradient(135deg,var(--primary-dark),var(--primary));color:#fff;font-size:.68rem;padding:.18rem .5rem;border-radius:20px;font-weight:600}.conv-item{display:flex;align-items:center;gap:.65rem;padding:.65rem .9rem;cursor:pointer;transition:background .15s;border-bottom:1px solid transparent}.conv-item.conv-active,.conv-item:hover{background:var(--bg-hover)}.conv-item.conv-active{border-right:3px solid var(--primary)}.conv-item.conv-unread{background:rgba(16,185,129,.04)}.conv-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--bg-hover),var(--bg-elevated));border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.95rem;flex-shrink:0}.conv-info{flex:1;min-width:0}.conv-name{font-size:.8rem;font-weight:600;color:var(--text);display:flex;align-items:center;gap:.3rem}.unread-dot{width:7px;height:7px;border-radius:50%;background:var(--primary);display:inline-block;flex-shrink:0}.conv-preview{font-size:.73rem;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:.1rem}.conv-time{font-size:.62rem;color:var(--text-dim);margin-top:.08rem}.conv-unread-count{background:linear-gradient(135deg,var(--primary-dark),var(--primary));color:#fff;font-size:.62rem;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.conversation-detail{flex:1;display:flex;flex-direction:column;min-width:0}.conversation-detail .chat-messages{flex:1;overflow-y:auto}@media (max-width:768px){.messages-layout{flex-direction:column}.conversation-list{width:100%;min-width:0;max-height:38vh;border-left:none;border-bottom:1px solid var(--border)}.admin-messages-page{height:auto}.card-grid{grid-template-columns:1fr}.modal{max-width:100%}}.preset-amounts{display:flex;gap:.45rem;margin-bottom:1.15rem;flex-wrap:wrap}.preset-btn{padding:.42rem 1rem;border-radius:10px;border:1.5px solid var(--border);background:var(--bg);color:var(--text-muted);font-size:.83rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:inherit}.preset-btn:hover{border-color:var(--border-light);color:var(--text)}.preset-btn-active{background:linear-gradient(135deg,var(--primary-dark),var(--primary));border-color:transparent;color:#fff;box-shadow:0 2px 12px var(--primary-glow)}.preset-btn-active:hover{color:#fff;filter:brightness(1.1)}.amount-selector{gap:1rem;margin-bottom:1.15rem}.amount-selector,.stepper-btn{display:flex;align-items:center;justify-content:center}.stepper-btn{width:42px;height:42px;border-radius:50%;border:1.5px solid var(--border);background:var(--bg-card);color:var(--text);font-size:1.35rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit;line-height:1}.stepper-btn:hover:not(:disabled){border-color:var(--primary);background:var(--primary-bg);color:var(--primary)}.stepper-btn:disabled{opacity:.25;cursor:not-allowed}.amount-display-wrapper{display:flex;align-items:baseline;gap:.15rem}.amount-currency{font-size:1.25rem;font-weight:700;color:var(--primary)}.amount-value{font-size:2.3rem;font-weight:800;color:var(--text);letter-spacing:-.03em;line-height:1}.slider-container{margin-bottom:.25rem;position:relative}.slider-track{position:relative;width:100%;height:10px;background:var(--border);border-radius:5px;cursor:pointer;overflow:visible;transition:height .15s ease}.slider-track:hover{height:12px}.slider-fill{top:0;left:0;height:100%;background:linear-gradient(90deg,#065f46,#10b981);border-radius:5px;min-width:10px}.slider-fill,.slider-thumb{position:absolute;pointer-events:none}.slider-thumb{top:50%;width:26px;height:26px;background:#fff;border:3px solid #10b981;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 4px rgba(16,185,129,.18),0 2px 8px rgba(0,0,0,.25);transition:box-shadow .15s;z-index:2}.slider-track:hover .slider-thumb{box-shadow:0 0 0 6px rgba(16,185,129,.22),0 2px 12px rgba(0,0,0,.3)}.slider-tooltip{top:-34px;background:linear-gradient(135deg,#065f46,#10b981);color:#fff;font-size:.78rem;font-weight:700;padding:3px 9px;border-radius:7px;pointer-events:none;white-space:nowrap;opacity:0;transition:opacity .2s ease;z-index:3}.slider-tooltip,.slider-tooltip:after{position:absolute;transform:translateX(-50%)}.slider-tooltip:after{content:"";bottom:-5px;left:50%;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #10b981}.slider-track:hover .slider-tooltip{opacity:1}.slider-labels{display:flex;justify-content:space-between;margin-top:.45rem;font-size:.73rem;color:var(--text-dim);font-weight:500}.search-bar{display:flex;align-items:center;gap:.5rem;background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--radius);padding:.55rem .9rem;margin-bottom:1.1rem;transition:border-color .2s}.search-bar:focus-within{border-color:var(--primary)}.search-icon{font-size:.95rem;flex-shrink:0;color:var(--text-dim)}.search-input{flex:1;background:transparent;border:none;outline:none;color:var(--text);font-size:.875rem;font-family:inherit}.search-input::placeholder{color:var(--text-dim)}.search-clear{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:.95rem;padding:.2rem;line-height:1}.search-clear:hover{color:var(--text)}.cell-id{font-size:.78rem;color:var(--text-muted);font-family:monospace;direction:ltr}.cell-balance,.cell-name{font-weight:600}.cell-balance{direction:ltr;font-family:monospace;color:var(--primary)}.cell-date{font-size:.78rem;color:var(--text-muted)}.cell-actions{display:flex;gap:.3rem;white-space:nowrap}.user-cards{display:flex;flex-direction:column;gap:.65rem}.user-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.user-card-header{display:flex;justify-content:space-between;align-items:center;padding:.6rem .9rem;background:var(--bg);border-bottom:1px solid var(--border)}.user-card-id{font-weight:700;font-size:.83rem;color:var(--text-muted);font-family:monospace;direction:ltr}.user-card-body{padding:.65rem .9rem}.user-card-row{display:flex;justify-content:space-between;padding:.3rem 0;font-size:.83rem;border-bottom:1px solid var(--border)}.user-card-row:last-child{border-bottom:none}.user-card-row span:first-child{color:var(--text-muted)}.user-card-actions{display:flex;gap:.45rem;padding:.6rem .9rem;border-top:1px solid var(--border)}.wallet-delta-inputs{display:flex;flex-direction:column;gap:.65rem}.wallet-presets{display:flex;flex-wrap:wrap;gap:.35rem}.wallet-presets .btn{min-width:46px;text-align:center}.admin-config-list{display:flex;flex-direction:column;gap:.55rem}.admin-config-item{display:flex;justify-content:space-between;align-items:flex-start;gap:.65rem;padding:.65rem;background:var(--bg);border-radius:var(--radius-sm);border:1px solid var(--border)}.admin-config-info{flex:1;min-width:0;font-size:.83rem;line-height:1.6}.admin-config-info code.config-link{display:block;direction:ltr;font-family:monospace;font-size:.73rem;color:var(--text-muted);word-break:break-all;background:var(--bg-card);padding:.3rem .5rem;border-radius:4px;margin-top:.2rem}.order-cards{display:flex;flex-direction:column;gap:.6rem}.loading-more{text-align:center;padding:1rem;color:var(--text-muted);font-size:.85rem}.order-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.order-card-header{display:flex;justify-content:space-between;align-items:center;padding:.6rem .9rem;background:var(--bg);border-bottom:1px solid var(--border)}.order-card-id{font-weight:700;font-size:.83rem;color:var(--text-muted);font-family:monospace;direction:ltr}.order-card-body{padding:.65rem .9rem}.order-card-row{display:flex;justify-content:space-between;padding:.3rem 0;font-size:.83rem;border-bottom:1px solid var(--border)}.order-card-row:last-child{border-bottom:none}.order-card-empty,.order-card-row span:first-child{color:var(--text-muted)}.order-card-empty{font-size:.8rem}.mobile-only{display:none!important}@media (max-width:768px){.desktop-only{display:none!important}.mobile-only,.user-cards.mobile-only{display:flex!important}}.buy-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;margin-bottom:1.25rem;transition:border-color .2s}.buy-card:hover{border-color:var(--border-light)}.gb-selector{margin-bottom:.5rem}.gb-label-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.45rem;gap:.5rem}.gb-label{font-size:.83rem;color:var(--text-muted);margin-bottom:0;display:block}.gb-controls{display:flex;align-items:center;gap:.65rem}.gb-slider{flex:1;height:6px;-webkit-appearance:none;appearance:none;background:linear-gradient(to right,var(--primary) var(--fill-pct,0),var(--border) var(--fill-pct,0));border-radius:3px;outline:none;cursor:pointer;position:relative;touch-action:none;-webkit-tap-highlight-color:transparent!important;user-select:none;-webkit-user-select:none;transition:background .15s ease}.gb-slider:active,.gb-slider:focus-visible{outline:none;box-shadow:none;-webkit-tap-highlight-color:transparent}.gb-slider::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#34d399,var(--primary));cursor:pointer;margin-top:-11px;box-shadow:0 0 12px var(--primary-glow),0 2px 8px rgba(0,0,0,.4);border:2px solid var(--bg-card);transition:transform .12s ease,box-shadow .12s ease;-webkit-tap-highlight-color:transparent;outline:none}.gb-slider::-webkit-slider-thumb:active{transform:scale(1.2);box-shadow:0 0 24px var(--primary-glow),0 3px 12px rgba(0,0,0,.5);outline:none}.gb-slider::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#34d399,var(--primary));cursor:pointer;border:2px solid var(--bg-card);box-shadow:0 0 12px var(--primary-glow)}.gb-slider::-moz-range-thumb:active{transform:scale(1.2);box-shadow:0 0 24px var(--primary-glow)}.gb-slider::-webkit-slider-runnable-track{height:6px;-webkit-tap-highlight-color:transparent}.gb-slider::-moz-range-track{height:6px;background:var(--border);border-radius:3px}.gb-slider::-moz-range-progress{height:6px;background:var(--primary);border-radius:3px}.gb-input{width:72px;padding:.45rem .5rem;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text);font-size:1rem;font-weight:700;text-align:center;font-family:inherit}.gb-input:focus{outline:none;border-color:var(--primary)}.gb-selected-wrap{display:flex;align-items:center;justify-content:center;gap:2px;margin:.5rem auto .75rem;direction:ltr;width:fit-content;background:rgba(16,185,129,.04);border:1px solid var(--border);border-radius:var(--radius);padding:.3rem .85rem}.gb-selected-input{display:block;width:auto;min-width:0;max-width:140px;font-size:2rem;font-weight:800;color:var(--primary);text-align:center;letter-spacing:-.03em;background:transparent;border:none;outline:none;font-family:inherit;cursor:text;caret-color:var(--primary);-moz-appearance:textfield;line-height:1.2;padding:0}.gb-selected-input:focus{outline:none}.gb-suffix{font-size:1.1rem;font-weight:600;color:var(--primary);user-select:none;line-height:1.2}.balance-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.65rem .9rem;margin-bottom:.85rem}.balance-row,.payment-row{display:flex;justify-content:space-between;align-items:center;padding:.2rem 0}.balance-label,.payment-label{font-size:.83rem;color:var(--text-muted)}.balance-value{color:var(--text)}.balance-value,.payment-value{font-size:.875rem;font-weight:700}.payment-value{color:var(--warning)}.buy-button{width:100%;padding:.78rem;background:linear-gradient(135deg,var(--primary-dark),var(--primary));color:white;border:none;border-radius:var(--radius-sm);font-size:.95rem;font-weight:700;cursor:pointer;transition:all .2s ease;font-family:inherit;box-shadow:0 2px 8px var(--primary-glow);letter-spacing:.2px}.buy-button:hover{box-shadow:0 4px 16px var(--primary-glow);transform:translateY(-1px)}.buy-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.buy-button-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.configs-section{margin-top:2rem}.configs-header{display:flex;align-items:center;gap:.45rem;font-size:1rem;font-weight:700;margin-bottom:.85rem}.configs-count{color:var(--text-muted);font-size:.82rem;font-weight:500}.configs-empty{text-align:center;padding:2rem 1rem;color:var(--text-muted)}.configs-empty p{margin:.4rem 0}.configs-empty .empty-hint{font-size:.78rem;opacity:.6}.config-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:.9rem 1.1rem;margin-bottom:.75rem;transition:border-color .2s,box-shadow .2s}.config-card.config-expired{opacity:.65;border-color:var(--border-light)}.config-card.config-expired .config-badge{background:rgba(239,68,68,.12);color:#ef4444}.config-card.config-expired .usage-fill{background:linear-gradient(90deg,#ef4444,#f87171)}.config-card.config-expired .config-title{text-decoration:line-through;opacity:.6}.config-card.config-expired .config-expiry{color:#ef4444}.config-card:hover{border-color:var(--border-light);box-shadow:0 2px 12px rgba(0,0,0,.25)}.config-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.45rem}.config-header-left{display:flex;align-items:center;gap:.4rem;color:var(--text-muted);font-size:.83rem;font-weight:600;min-width:0;overflow:hidden}.config-title{color:var(--text);font-weight:600;font-size:.855rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.config-badge{font-size:.75rem;font-weight:700;color:var(--primary);background:var(--primary-bg);padding:.18rem .55rem;border-radius:6px;flex-shrink:0;white-space:nowrap}.config-usage{margin-bottom:.55rem}.usage-bar{height:4px;background:var(--border);border-radius:2px;overflow:hidden;margin-bottom:.35rem}.usage-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#60a5fa);border-radius:2px;transition:width .4s ease}.usage-info{display:flex;align-items:center;justify-content:space-between;font-size:.75rem;color:var(--text-muted);margin-bottom:.55rem}.usage-stat{font-family:JetBrains Mono,monospace;color:var(--text);font-size:.73rem}.usage-stat-expired{color:#ef4444}.config-expiry{display:flex;align-items:center;gap:.3rem;font-size:.73rem;color:var(--text-muted);margin:.3rem 0}.config-date{font-size:.68rem;color:var(--text-dim);margin-top:.3rem;text-align:left}.config-actions{display:flex;gap:.45rem;margin-top:.55rem}.btn-action{flex:1;display:flex;align-items:center;justify-content:center;gap:.3rem;padding:.42rem .5rem;border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--bg);color:var(--text-muted);font-size:.75rem;font-weight:500;cursor:pointer;transition:all .18s ease;font-family:inherit}.btn-action:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-bg)}.btn-action:disabled{opacity:.4;cursor:not-allowed}.btn-copy:hover{border-color:var(--primary);color:var(--primary)}.btn-qr:hover{border-color:var(--info);color:var(--info);background:var(--info-bg)}.btn-delete:hover{border-color:var(--danger);color:var(--danger);background:var(--danger-bg)}.qr-modal-content{position:relative;text-align:center;max-width:320px;padding:1.75rem 1.35rem 1.25rem;overflow:visible}.qr-close-btn{position:absolute;top:10px;right:10px;width:28px;height:28px;border-radius:50%;border:none;cursor:pointer;background:var(--danger);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .15s;box-shadow:0 2px 8px rgba(239,68,68,.3);z-index:10}.qr-close-btn:hover{background:#dc2626}.qr-image-wrap{background:#fff;padding:14px;border-radius:10px;display:inline-block}.qr-email{font-size:.83rem;color:var(--text);margin-top:.85rem;font-weight:500}.admin-stats-period{display:flex;gap:.45rem;margin-bottom:1.1rem}.period-btn{padding:.38rem .9rem;border-radius:8px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);font-size:.78rem;cursor:pointer;transition:all .2s;font-family:inherit}.period-btn.active{background:linear-gradient(135deg,var(--primary-dark),var(--primary));color:#fff;border-color:transparent}.period-btn:hover:not(.active){border-color:var(--primary);color:var(--text)}@media (max-width:768px){.main-content{padding:calc(var(--safe-top) + .85rem) 0 calc(var(--safe-bottom) + 1rem);margin-right:0!important;max-width:100%;width:100%}.buy-card{padding:.5rem}.config-card{padding:.45rem .35rem}.balance-card{padding:.35rem .4rem}.card{padding:.65rem .75rem}}code.payment-id{direction:ltr;display:inline-block;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.72rem;background:rgba(16,185,129,.08);color:var(--primary);padding:.12rem .45rem;border-radius:5px;border:1px solid rgba(16,185,129,.15);max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;line-height:1.6}