:root{
  --bg:#040307;
  --bg2:#0b0714;
  --panel:rgba(14,10,22,.76);
  --panel-strong:rgba(20,13,32,.92);
  --panel-soft:rgba(255,255,255,.055);
  --line:rgba(190,121,255,.2);
  --line-strong:rgba(190,121,255,.38);
  --text:#fbf7ff;
  --muted:#b9a8cf;
  --soft:#806c97;
  --accent:#a855f7;
  --accent2:#6d28d9;
  --accent3:#f5f3ff;
  --danger:#ff3d81;
  --warning:#ffcf5c;
  --success:#6df5b2;
  --shadow:0 28px 90px rgba(0,0,0,.54);
  --glow:0 0 38px rgba(168,85,247,.36);
  --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{min-height:100%;margin:0}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:
  radial-gradient(circle at 12% 0%,rgba(168,85,247,.34),transparent 30%),
  radial-gradient(circle at 90% 2%,rgba(109,40,217,.24),transparent 34%),
  linear-gradient(135deg,#030205 0%,#09040f 46%,#12091e 100%);overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:62px 62px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.82),transparent 85%)}
body:after{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(120deg,transparent 0 38%,rgba(168,85,247,.08) 50%,transparent 62%);mix-blend-mode:screen;opacity:.65}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit;color:inherit}
button{cursor:pointer}
.pup-ambient{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:0}.pup-ambient span{position:absolute;border-radius:999px;filter:blur(18px);opacity:.65;animation:floaty 10s ease-in-out infinite}.pup-ambient span:nth-child(1){width:330px;height:330px;left:-120px;top:12%;background:rgba(168,85,247,.2)}.pup-ambient span:nth-child(2){width:420px;height:420px;right:-160px;top:24%;background:rgba(109,40,217,.22);animation-delay:-3s}.pup-ambient span:nth-child(3){width:260px;height:260px;left:48%;bottom:-90px;background:rgba(245,243,255,.08);animation-delay:-6s}@keyframes floaty{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(16px,-22px,0) scale(1.06)}}
.top-menu{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr) auto;align-items:center;gap:18px;padding:16px 24px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(5,3,9,.88),rgba(5,3,9,.62));backdrop-filter:blur(22px);box-shadow:0 20px 70px rgba(0,0,0,.28)}
.brand-top{display:flex;align-items:center;gap:13px;min-width:0}.brand-top img{width:54px;height:54px;object-fit:cover;border-radius:18px;border:1px solid var(--line-strong);box-shadow:var(--glow)}.brand-top b{display:block;font-size:20px;letter-spacing:.08em;line-height:1;text-transform:uppercase}.brand-top small{display:block;margin-top:5px;color:var(--muted);font-size:12px;letter-spacing:.05em}.top-nav{display:flex;align-items:center;justify-content:center;gap:10px;min-width:0}.top-nav a{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:0 20px;border:1px solid transparent;border-radius:999px;color:var(--muted);font-weight:800;letter-spacing:.02em;overflow:hidden}.top-nav a:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(168,85,247,.34),rgba(245,243,255,.08));opacity:0;transition:.2s}.top-nav a span{position:relative}.top-nav a.active,.top-nav a:hover{color:var(--text);border-color:var(--line-strong);box-shadow:var(--glow)}.top-nav a.active:before,.top-nav a:hover:before{opacity:1}.top-meta{display:flex;align-items:center;gap:10px;padding:12px 16px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.045);color:var(--muted)}.pulse-dot{width:10px;height:10px;border-radius:50%;background:var(--success);box-shadow:0 0 0 0 rgba(109,245,178,.5);animation:pulse 1.8s infinite}@keyframes pulse{70%{box-shadow:0 0 0 12px rgba(109,245,178,0)}100%{box-shadow:0 0 0 0 rgba(109,245,178,0)}}
.panel-shell{position:relative;z-index:1;display:grid;grid-template-columns:286px minmax(0,1fr);gap:22px;max-width:1500px;margin:0 auto;padding:24px}.profile-rail{position:sticky;top:98px;align-self:start;display:grid;gap:16px}.profile-card,.card,.hero-card,.stat-card,.page-head{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.028));box-shadow:var(--shadow);backdrop-filter:blur(20px)}.profile-card{padding:20px}.user-card{text-align:left;overflow:hidden;position:relative}.user-card:after{content:"";position:absolute;right:-64px;bottom:-80px;width:180px;height:180px;border-radius:50%;background:rgba(168,85,247,.2);filter:blur(8px)}.user-logo-wrap{position:relative;width:118px;height:118px;margin:0 0 18px;border-radius:34px;padding:5px;background:linear-gradient(135deg,var(--accent),rgba(245,243,255,.6),var(--accent2));box-shadow:var(--glow)}.user-logo-wrap img{display:block;width:100%;height:100%;object-fit:cover;border-radius:29px;background:#050209}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:#e7d8ff;text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:900}.eyebrow:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 16px rgba(168,85,247,.8)}.profile-card h2{position:relative;margin:10px 0 8px;font-size:25px;line-height:1.12}.profile-card p{position:relative;margin:0;color:var(--muted);line-height:1.55}.profile-card.compact{display:grid;gap:12px}.profile-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.07)}.profile-row:last-child{border-bottom:0}.profile-row span{color:var(--muted);font-size:13px}.profile-row b{font-size:13px;color:var(--text);text-align:right}.logout-form{margin:0}.workspace{min-width:0;display:grid;gap:18px}.page-head{padding:24px 26px}.page-head h1{margin:8px 0 8px;font-size:38px;letter-spacing:-.04em}.page-head p{max-width:850px;margin:0;color:var(--muted);line-height:1.65}
h1,h2,h3,p{margin-top:0}h2{font-size:24px;letter-spacing:-.03em}h3{font-size:15px;margin:0 0 12px;color:#efe7ff}.hero-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:26px;align-items:center;padding:32px;overflow:hidden}.hero-card:before{content:"";position:absolute;inset:-1px;background:radial-gradient(circle at 80% 20%,rgba(168,85,247,.35),transparent 28%),linear-gradient(135deg,rgba(168,85,247,.22),transparent 42%);pointer-events:none}.hero-copy,.hero-emblem{position:relative}.hero-card h2{max-width:820px;margin:12px 0 14px;font-size:46px;line-height:.98}.hero-card p{max-width:820px;color:var(--muted);line-height:1.7}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.hero-emblem{display:grid;place-items:center;min-height:270px;border-radius:42px;background:rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.1);box-shadow:inset 0 0 34px rgba(168,85,247,.16)}.hero-emblem img{width:min(230px,90%);aspect-ratio:1;object-fit:cover;border-radius:50%;box-shadow:0 0 52px rgba(168,85,247,.36)}
.grid{display:grid;gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.card{padding:24px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.card-head h2{margin:0}.muted{color:var(--muted)}.tag{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;border:1px solid var(--line);background:rgba(168,85,247,.12);color:#eadcff;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.stat-card{padding:22px;overflow:hidden;position:relative}.stat-card:after{content:"";position:absolute;right:-24px;top:-30px;width:100px;height:100px;border-radius:50%;background:rgba(168,85,247,.22);filter:blur(4px)}.stat-card span,.stat-card small{position:relative;display:block;color:var(--muted)}.stat-card b{position:relative;display:block;margin:10px 0 4px;font-size:28px}.info-list{display:grid;gap:10px}.info-list div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08)}.info-list div:last-child{border-bottom:0}.info-list span{color:var(--muted)}.info-list b{text-align:right}.clean-list{margin:0;padding:0;list-style:none;display:grid;gap:12px}.clean-list li{position:relative;padding:14px 16px 14px 44px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(255,255,255,.035);color:#eadfff;line-height:1.55}.clean-list li:before{content:"";position:absolute;left:17px;top:21px;width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 18px rgba(168,85,247,.8)}.design-notes .clean-list li{padding-top:12px;padding-bottom:12px}.ui-kit{scroll-margin-top:90px}.kit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.kit-grid>div{min-height:154px;padding:18px;border:1px solid rgba(255,255,255,.08);border-radius:22px;background:rgba(0,0,0,.16)}.kit-actions,.status-line{display:flex;flex-wrap:wrap;gap:10px}.palette{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.palette span{display:block;height:54px;border-radius:16px;border:1px solid rgba(255,255,255,.12)}.palette span:nth-child(1){background:#040307}.palette span:nth-child(2){background:#a855f7}.palette span:nth-child(3){background:#6d28d9}.palette span:nth-child(4){background:#f5f3ff}.status{display:inline-flex;align-items:center;padding:9px 12px;border-radius:999px;font-size:12px;font-weight:900}.status.good{background:rgba(109,245,178,.15);color:#a8ffd2;border:1px solid rgba(109,245,178,.3)}.status.warn{background:rgba(255,207,92,.14);color:#ffe5a3;border:1px solid rgba(255,207,92,.28)}.status.bad{background:rgba(255,61,129,.13);color:#ffc1d8;border:1px solid rgba(255,61,129,.28)}
.stack{display:grid;gap:16px}label{display:grid;gap:8px;color:#eee5ff;font-size:14px;font-weight:800}input,textarea,select{width:100%;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(2,1,5,.55);padding:14px 15px;color:var(--text);outline:none;transition:.18s}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(168,85,247,.16)}input[type=file]{padding:13px;background:rgba(255,255,255,.04)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;border:0;border-radius:999px;padding:0 20px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:white;font-weight:900;letter-spacing:.02em;box-shadow:0 12px 34px rgba(168,85,247,.25);transition:transform .18s,box-shadow .18s,background .18s}.btn:hover{transform:translateY(-1px);box-shadow:0 18px 42px rgba(168,85,247,.34)}.btn.ghost{background:rgba(255,255,255,.055);border:1px solid var(--line);color:#eadfff;box-shadow:none}.btn.danger{background:linear-gradient(135deg,#ff3d81,#9b174a)}.btn.full{width:100%}.hint{margin-top:16px;padding:16px 18px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:rgba(168,85,247,.08);color:var(--muted);line-height:1.6}.alert{position:relative;z-index:5;margin-bottom:18px;border:1px solid var(--line);border-radius:20px;padding:14px 16px;background:rgba(168,85,247,.14);color:#fff;box-shadow:var(--shadow);transition:opacity .28s,transform .28s}.alert.danger{background:rgba(255,61,129,.16);border-color:rgba(255,61,129,.28)}.alert.warning{background:rgba(255,207,92,.14);border-color:rgba(255,207,92,.26)}.alert.is-soft-hidden{opacity:0;transform:translateY(-8px);pointer-events:none}.timeline{display:grid;gap:14px}.tl{position:relative;padding:18px 18px 18px 48px;border:1px solid rgba(255,255,255,.08);border-radius:20px;background:rgba(255,255,255,.035)}.tl:before{content:"";position:absolute;left:18px;top:22px;width:13px;height:13px;border-radius:50%;background:var(--accent);box-shadow:0 0 22px rgba(168,85,247,.8)}.tl b{display:block;margin-bottom:8px}.tl p{margin:0 0 8px;color:#e8dcfa;line-height:1.55}.tl small{color:var(--muted)}
.login-body{display:grid;place-items:center;min-height:100vh;padding:24px}.login-card{position:relative;z-index:1;width:min(100%,470px);border:1px solid var(--line);border-radius:36px;background:linear-gradient(145deg,rgba(16,10,27,.86),rgba(7,4,13,.78));box-shadow:var(--shadow);backdrop-filter:blur(22px);padding:24px}.login-banner{position:relative;text-align:center;padding:30px 24px 24px;border-radius:28px;overflow:hidden;background:radial-gradient(circle at 50% 12%,rgba(168,85,247,.36),transparent 34%),rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}.login-banner:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent,rgba(255,255,255,.07),transparent);transform:translateX(-100%);animation:sheen 5s ease-in-out infinite}@keyframes sheen{0%,55%{transform:translateX(-100%)}100%{transform:translateX(100%)}}.login-logo{position:relative;width:150px;height:150px;object-fit:cover;border-radius:50%;border:1px solid var(--line-strong);box-shadow:0 0 58px rgba(168,85,247,.5);margin:0 auto 18px}.login-banner h1{position:relative;margin:12px 0 10px;font-size:44px;letter-spacing:-.04em}.login-banner p{position:relative;margin:0;color:var(--muted);line-height:1.65}.login-form{margin-top:18px}.main.guest{position:relative;z-index:1;width:100%;max-width:1100px;margin:0 auto;padding:24px}
@media (max-width:1100px){.top-menu{grid-template-columns:1fr;align-items:start}.top-nav{justify-content:flex-start;overflow-x:auto;padding-bottom:2px}.top-meta{justify-self:start}.panel-shell{grid-template-columns:1fr}.profile-rail{position:relative;top:auto;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.logout-form{align-self:stretch}.logout-form .btn{height:100%}.hero-card{grid-template-columns:1fr}.hero-emblem{min-height:220px}.grid.two,.grid.three,.kit-grid{grid-template-columns:1fr 1fr}}
@media (max-width:700px){.top-menu{padding:14px}.brand-top img{width:48px;height:48px}.brand-top b{font-size:17px}.top-nav a{min-height:40px;padding:0 16px}.panel-shell{padding:14px}.profile-rail{grid-template-columns:1fr}.page-head,.card,.hero-card{padding:20px;border-radius:22px}.page-head h1{font-size:30px}.hero-card h2{font-size:34px}.grid.two,.grid.three,.kit-grid{grid-template-columns:1fr}.card-head{display:block}.card-head .muted,.card-head .tag{margin-top:10px}.hero-actions .btn{width:100%}.login-card{padding:16px;border-radius:28px}.login-logo{width:122px;height:122px}.login-banner h1{font-size:36px}}
/* PUP MOD CRM modules */
.nav-group{display:flex;align-items:center;gap:8px;min-height:46px;border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:3px 5px 3px 16px;background:rgba(255,255,255,.035);color:#eadfff;font-size:13px;font-weight:900;white-space:nowrap}.nav-group>span{color:#fff;text-transform:uppercase;letter-spacing:.06em;font-size:12px}.nav-group>a{min-height:36px;padding:0 13px;border-radius:999px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.06)}.nav-group.active{border-color:rgba(168,85,247,.42);box-shadow:0 0 25px rgba(168,85,247,.12)}.mt{margin-top:16px}.btn.small{min-height:36px;padding:0 13px;font-size:12px}.table-wrap{width:100%;overflow:auto;border:1px solid rgba(255,255,255,.08);border-radius:22px;background:rgba(0,0,0,.14)}table{width:100%;border-collapse:collapse;min-width:760px}th,td{padding:15px 16px;border-bottom:1px solid rgba(255,255,255,.07);text-align:left;vertical-align:middle}th{color:#cbb8ee;font-size:12px;text-transform:uppercase;letter-spacing:.08em;background:rgba(168,85,247,.07)}td{color:#f7f0ff}tbody tr:hover{background:rgba(168,85,247,.055)}code{display:inline-block;max-width:180px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;padding:6px 8px;border-radius:10px;background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.08);color:#e9d5ff}.row-actions,.kit-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.row-actions form,.kit-actions form{margin:0}.filter-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;margin-bottom:18px}.resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.resource-card{position:relative;padding:20px;border:1px solid rgba(255,255,255,.08);border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.025));box-shadow:0 20px 55px rgba(0,0,0,.18);overflow:hidden}.resource-card:before{content:"";position:absolute;right:-45px;top:-55px;width:150px;height:150px;border-radius:50%;background:rgba(168,85,247,.16);filter:blur(10px)}.resource-card>*{position:relative}.resource-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.resource-card h3{font-size:22px;margin:0 0 8px}.resource-card p{margin:0 0 14px;color:var(--muted)}.info-list.mini div{padding:10px 0}.info-list.mini b{max-width:250px;overflow:hidden;text-overflow:ellipsis}.status.success{background:rgba(109,245,178,.15);color:#a8ffd2;border:1px solid rgba(109,245,178,.3)}textarea{resize:vertical;min-height:120px}select option{background:#12091d;color:#fff}.danger{color:#ffc1d8}.muted a{color:#e9d5ff}@media (max-width:980px){.resource-grid{grid-template-columns:1fr}.nav-group{width:max-content}.filter-bar{grid-template-columns:1fr}.filter-bar .btn{width:100%}}@media (max-width:700px){.nav-group{align-items:flex-start;flex-direction:column;border-radius:22px;padding:12px}.nav-group>a{width:100%;justify-content:flex-start}.top-nav{gap:8px}.row-actions .btn,.kit-actions .btn{width:100%}}

/* v1.0.5 clean panel */
.clean-top-menu{grid-template-columns:minmax(220px,300px) minmax(0,1fr) auto}.clean-shell{grid-template-columns:250px minmax(0,1fr)}.compact-profile{gap:14px}.compact-profile .profile-card{padding:18px}.compact-profile .user-logo-wrap{width:92px;height:92px;border-radius:28px}.compact-profile .user-logo-wrap img{border-radius:23px}.compact-profile .profile-card h2{font-size:22px}.compact-head{padding:20px 24px}.compact-head h1{font-size:34px;margin-bottom:0}.top-nav a{gap:8px}.top-nav a em,.section-tabs a em{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 8px;border-radius:999px;background:rgba(168,85,247,.24);border:1px solid rgba(168,85,247,.38);color:#fff;font-style:normal;font-size:12px;font-weight:900}.section-tabs{display:flex;align-items:center;gap:10px;margin-bottom:18px;padding:8px;border:1px solid var(--line);border-radius:26px;background:rgba(255,255,255,.035);box-shadow:0 18px 50px rgba(0,0,0,.22);overflow:auto}.section-tabs a{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 18px;border-radius:999px;color:var(--muted);font-weight:900;white-space:nowrap;border:1px solid transparent}.section-tabs a.active,.section-tabs a:hover{color:#fff;border-color:var(--line-strong);background:linear-gradient(135deg,rgba(168,85,247,.28),rgba(255,255,255,.06));box-shadow:0 0 28px rgba(168,85,247,.14)}.clean-login .login-banner{padding-bottom:28px}.clean-login .login-banner p{max-width:300px;margin:0 auto}.info-list b{word-break:break-word}.alert.mt{margin-bottom:0}.card + .section-tabs{margin-top:8px}@media (max-width:1100px){.clean-top-menu{grid-template-columns:1fr}.clean-shell{grid-template-columns:1fr}.compact-profile{position:relative;top:auto;grid-template-columns:1fr auto}.compact-profile .logout-form{align-self:stretch}.compact-profile .logout-form .btn{height:100%}}@media (max-width:700px){.compact-profile{grid-template-columns:1fr}.section-tabs{border-radius:20px}.section-tabs a{width:max-content}.compact-head h1{font-size:28px}}

/* v1.0.8 dashboard + bot settings */
.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-stats{margin-bottom:2px}.dashboard-search{grid-template-columns:minmax(0,1fr) 130px}.settings-preview-grid{align-items:start}.card-subhead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 8px}.card-subhead h3{margin:0;font-size:18px}.hint.compact{margin-top:0;font-size:13px;padding:12px 14px}.switch-row{display:flex;grid-template-columns:none;align-items:flex-start;gap:14px;padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(255,255,255,.035);cursor:pointer}.switch-row input{width:22px;height:22px;margin-top:2px;accent-color:#a855f7}.switch-row span{display:grid;gap:5px}.switch-row b{color:#fff}.switch-row em{font-style:normal;color:var(--muted);line-height:1.45;font-size:13px}.button-builder{display:grid;gap:10px}.button-row{display:grid;grid-template-columns:minmax(120px,1.35fr) minmax(140px,1.5fr) 74px 96px 68px 44px;gap:10px;align-items:end;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(0,0,0,.12)}.button-row label{font-size:12px}.button-row input{border-radius:14px;padding:11px 12px}.button-row input[type=color]{height:43px;padding:5px}.remove-button{min-width:44px;padding:0}.preview-card{position:sticky;top:110px}.telegram-preview{min-height:520px;border-radius:30px;border:1px solid rgba(255,255,255,.1);background:radial-gradient(circle at 18% 0,rgba(168,85,247,.25),transparent 30%),linear-gradient(145deg,#171126,#07040d);overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.tg-preview-head,.tg-preview-foot{display:flex;align-items:center;gap:10px;padding:16px 18px;background:rgba(0,0,0,.24);border-bottom:1px solid rgba(255,255,255,.08)}.tg-preview-head span{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent2));box-shadow:0 0 22px rgba(168,85,247,.4)}.tg-preview-head b{font-size:14px}.tg-preview-head em{margin-left:auto;color:#92ffc1;font-size:12px;font-style:normal}.tg-preview-foot{border-top:1px solid rgba(255,255,255,.08);border-bottom:0;justify-content:space-between;color:var(--muted);font-size:12px}.tg-message{width:min(88%,430px);margin:34px 18px 26px auto;padding:14px;border-radius:22px 22px 6px 22px;background:linear-gradient(145deg,rgba(168,85,247,.28),rgba(89,38,155,.2));border:1px solid rgba(255,255,255,.1);box-shadow:0 18px 40px rgba(0,0,0,.25)}.tg-message p{margin:0;color:#fff;line-height:1.55;white-space:normal}.tg-buttons{display:grid;gap:8px;margin-top:12px}.tg-buttons button{min-height:40px;border:1px solid color-mix(in srgb,var(--btn-color,#a855f7) 62%,#fff 10%);border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--btn-color,#a855f7) 42%,transparent),rgba(255,255,255,.06));color:#fff;font-weight:900;box-shadow:0 8px 24px color-mix(in srgb,var(--btn-color,#a855f7) 28%,transparent)}
@media (max-width:1100px){.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.preview-card{position:relative;top:auto}.button-row{grid-template-columns:1fr 1fr 74px 96px 68px 44px}}
@media (max-width:800px){.button-row{grid-template-columns:1fr 1fr}.button-row .remove-button{width:100%}.dashboard-search{grid-template-columns:1fr}.dashboard-search .btn{width:100%}}
@media (max-width:700px){.grid.four{grid-template-columns:1fr}.switch-row{align-items:flex-start}.telegram-preview{min-height:420px}.tg-message{width:auto;margin:24px 12px}}

/* v1.0.10 — Bot variables descriptions */
.bot-connect-grid,.bot-runtime-grid{align-items:stretch;margin-bottom:18px}.bot-connect-grid>* ,.bot-runtime-grid>*{min-width:0}.settings-preview-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);align-items:start;gap:18px}.settings-preview-grid>*{min-width:0}.bot-options-card{overflow:hidden}.button-builder{display:grid;gap:12px;min-width:0}.button-row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr)) 44px;gap:10px;align-items:end;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(0,0,0,.12);min-width:0}.button-row label{min-width:0;font-size:12px}.button-row input,.button-row select{width:100%;min-width:0;border-radius:14px;padding:11px 12px}.button-field-text{grid-column:span 3}.button-field-url{grid-column:span 4}.button-field-row{grid-column:span 1}.button-field-sort{grid-column:span 1}.button-field-style{grid-column:span 3}.button-row .remove-button{grid-column:auto;min-width:44px;width:44px;padding:0}.preview-card{position:sticky;top:110px;max-width:100%;overflow:hidden}.telegram-preview{min-height:500px}.tg-buttons{display:grid;gap:8px;margin-top:12px}.tg-button-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:8px}.tg-buttons button{min-width:0;min-height:40px;border-radius:14px;color:#fff;font-weight:900;box-shadow:0 8px 24px rgba(0,0,0,.18);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tg-buttons button.primary{border:1px solid rgba(96,165,250,.46);background:linear-gradient(135deg,rgba(59,130,246,.58),rgba(96,165,250,.18))}.tg-buttons button.success{border:1px solid rgba(74,222,128,.46);background:linear-gradient(135deg,rgba(34,197,94,.58),rgba(74,222,128,.18))}.tg-buttons button.danger{border:1px solid rgba(248,113,113,.46);background:linear-gradient(135deg,rgba(239,68,68,.58),rgba(248,113,113,.18))}.hint code{white-space:nowrap}@media (max-width:1320px){.settings-preview-grid{grid-template-columns:1fr}.preview-card{position:relative;top:auto}.button-field-text,.button-field-url{grid-column:span 6}.button-field-row,.button-field-sort{grid-column:span 2}.button-field-style{grid-column:span 8}}@media (max-width:760px){.button-row{grid-template-columns:1fr 44px}.button-row label{grid-column:1 / -1}.button-row .remove-button{grid-column:2}.tg-button-row{grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:1fr}.dashboard-search{grid-template-columns:1fr}.grid.four{grid-template-columns:1fr}.bot-connect-grid,.bot-runtime-grid{grid-template-columns:1fr}}

/* v1.0.10 — descriptions for welcome variables */
.variables-help{display:grid;gap:8px;padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(255,255,255,.035);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.variables-title{font-size:13px;font-weight:900;color:#fff;letter-spacing:.02em;margin-bottom:2px}
.variable-item{display:grid;grid-template-columns:160px minmax(0,1fr);gap:10px;align-items:start;padding:8px 10px;border-radius:14px;background:rgba(0,0,0,.14);border:1px solid rgba(255,255,255,.055)}
.variable-item code{width:max-content;max-width:100%;white-space:nowrap;color:#fff;background:rgba(168,85,247,.22);border:1px solid rgba(168,85,247,.28);border-radius:10px;padding:4px 7px;font-size:12px}
.variable-item span{font-size:13px;line-height:1.45;color:var(--muted)}
@media (max-width:760px){.variable-item{grid-template-columns:1fr;gap:6px}}


/* v1.0.11 — fixed message buttons layout without overlaps */
.bot-options-form .card-subhead{align-items:center;flex-wrap:wrap;row-gap:10px}
.bot-options-form .card-subhead .btn{flex:0 0 auto}
.bot-options-form .hint.compact{overflow-wrap:anywhere}
.bot-options-form .hint.compact code{white-space:normal;word-break:break-word}
.button-builder{display:grid;gap:12px;inline-size:100%;max-inline-size:100%}
.button-row{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-template-areas:
    "text text text text text text url url url url url url"
    "row row sort sort style style style style style style style remove";
  gap:12px;
  align-items:end;
  inline-size:100%;
  max-inline-size:100%;
  overflow:hidden;
}
.button-row label{display:grid;gap:7px;min-inline-size:0;line-height:1.25}
.button-row input,.button-row select{display:block;inline-size:100%;max-inline-size:100%;min-inline-size:0;height:44px}
.button-field-text{grid-area:text!important}.button-field-url{grid-area:url!important}.button-field-row{grid-area:row!important}.button-field-sort{grid-area:sort!important}.button-field-style{grid-area:style!important}
.button-row .remove-button{grid-area:remove!important;inline-size:44px;min-inline-size:44px;height:44px;align-self:end;justify-self:end;padding:0;border-radius:14px}
.tg-buttons{inline-size:100%;max-inline-size:100%;overflow:hidden}
.tg-button-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:8px;inline-size:100%;max-inline-size:100%;overflow:hidden}
.tg-buttons button{display:block;inline-size:100%;max-inline-size:100%;min-inline-size:0;padding:0 10px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media (max-width:900px){
  .button-row{grid-template-areas:
    "text text text text text text text text text text text text"
    "url url url url url url url url url url url url"
    "row row row sort sort sort style style style style style remove"}
}
@media (max-width:640px){
  .button-row{grid-template-columns:1fr 44px;grid-template-areas:
    "text text"
    "url url"
    "row row"
    "sort sort"
    "style style"
    ". remove"}
  .button-row .remove-button{justify-self:end}
  .tg-button-row{grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:1fr}
}

/* v1.0.13 settings grouping */
.nested-tabs{margin-top:-8px;margin-bottom:18px}
.settings-category-grid{margin-top:18px}
.module-card{display:flex;flex-direction:column;gap:10px;min-height:132px;padding:22px;border:1px solid rgba(255,255,255,.1);border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.035));text-decoration:none;color:var(--text);box-shadow:0 18px 50px rgba(8,6,18,.2);transition:transform .18s ease,border-color .18s ease,background .18s ease}
.module-card:hover{transform:translateY(-2px);border-color:rgba(180,95,255,.45);background:linear-gradient(145deg,rgba(180,95,255,.16),rgba(255,255,255,.045))}
.module-card b{font-size:18px}
.module-card small{color:var(--muted);line-height:1.45}
.module-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:15px;background:rgba(180,95,255,.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);font-size:22px}
@media(max-width:760px){.module-card{min-height:auto}.nested-tabs{margin-top:0}}
.account-connect-grid{align-items:start;margin-bottom:18px}.account-connect-grid>*{min-width:0}.account-login-form input[name="api_hash"]{-webkit-text-security:disc}.hint-list{display:grid;gap:12px}.hint-list>div{padding:14px 16px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(255,255,255,.035);color:#eadfff;line-height:1.55}.hint-list b{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;margin-right:8px;border-radius:999px;background:rgba(168,85,247,.2);border:1px solid rgba(168,85,247,.34);color:#fff}.grid.three.settings-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:1100px){.grid.three.settings-category-grid{grid-template-columns:1fr}.account-connect-grid{grid-template-columns:1fr}}

/* v1.0.16 MadelineProto dependency manager */
.dependency-manager{margin-bottom:18px}
.dependency-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:18px;align-items:start}
.dependency-actions{display:grid;gap:12px;padding:16px;border:1px solid rgba(255,255,255,.08);border-radius:22px;background:rgba(0,0,0,.16)}
.composer-output{border:1px solid rgba(255,255,255,.09);border-radius:18px;background:rgba(0,0,0,.18);padding:14px 16px;overflow:hidden}
.composer-output summary{cursor:pointer;color:#eadcff;font-weight:900}
.composer-output pre{max-height:320px;overflow:auto;margin:14px 0 0;white-space:pre-wrap;word-break:break-word;color:#d8c8ee;font-size:12px;line-height:1.55}
@media(max-width:900px){.dependency-grid{grid-template-columns:1fr}.dependency-actions{grid-template-columns:1fr}}

/* v1.0.17 — account auth layout */
.account-auth-grid{align-items:stretch;margin-bottom:18px}
.account-auth-grid>*{min-width:0}
.account-connect-card{height:100%}
.account-auth-side{display:grid;grid-template-rows:1fr 1fr;gap:18px;min-width:0}
.account-auth-side .auth-step-card{min-width:0;height:100%;display:flex;flex-direction:column}
.account-auth-side .auth-step-card form{flex:1;justify-content:space-between}
.account-session-status{margin-bottom:18px}
.account-status-list{grid-template-columns:repeat(3,minmax(0,1fr))}
.account-status-list div{min-width:0}
.account-status-list b{overflow-wrap:anywhere}
@media(max-width:1180px){.account-status-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.account-auth-grid{grid-template-columns:1fr}.account-auth-side{grid-template-rows:auto}.account-status-list{grid-template-columns:1fr}}
.members-head{align-items:flex-start}.members-filter-bar{display:grid;grid-template-columns:minmax(0,1fr) 150px auto auto;gap:12px;align-items:end;margin:0 0 18px}.members-filter-bar label{margin:0}.members-filter-bar select{min-height:46px}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.pagination span{color:var(--muted);font-weight:800}.btn.disabled,.btn.disabled:hover{pointer-events:none;opacity:.45;filter:grayscale(1)}@media (max-width:900px){.members-filter-bar{grid-template-columns:1fr 1fr}.members-filter-bar .btn{width:100%}.pagination{justify-content:flex-start}}@media (max-width:560px){.members-filter-bar{grid-template-columns:1fr}}

/* v1.0.20 moderation, tags, activity */
.tag-editor-list{display:flex;flex-direction:column;gap:10px}.tag-editor-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.035)}.tag-edit-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.tag-edit-form input{min-width:0}.moderation-form{display:grid;grid-template-columns:1.2fr .8fr .8fr 1.2fr auto;gap:12px;align-items:end}.moderation-form label{margin:0}.btn.danger,.btn.danger:hover{border-color:rgba(255,72,140,.42);background:linear-gradient(135deg,rgba(255,72,140,.26),rgba(168,85,247,.16));color:#ffe4ef}.pagination .disabled{pointer-events:none;opacity:.45}.members-filter-bar{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:12px;align-items:end;margin-bottom:18px}.members-filter-bar label{margin:0}.status.warn{background:rgba(251,191,36,.15);color:#fde68a;border:1px solid rgba(251,191,36,.28)}@media (max-width:1100px){.moderation-form{grid-template-columns:1fr 1fr}.moderation-form .btn{width:100%}.members-filter-bar{grid-template-columns:1fr 1fr}}@media (max-width:720px){.tag-editor-row,.tag-edit-form,.moderation-form,.members-filter-bar{grid-template-columns:1fr}.tag-editor-row form .btn,.moderation-form .btn,.members-filter-bar .btn{width:100%}}

/* v1.0.24 restriction release and return invites */
.stacked-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.stacked-actions form{margin:0}
.table-wrap td .row-actions.stacked-actions{justify-content:flex-start}
@media(max-width:720px){.stacked-actions{display:grid;grid-template-columns:1fr}.stacked-actions .btn{width:100%}}

/* v1.0.25 PUPCOIN */
.pupcoin-case-card{border-color:rgba(251,191,36,.2);background:linear-gradient(145deg,rgba(251,191,36,.08),rgba(168,85,247,.045))}
.pupcoin-case-grid{align-items:start}
.pupcoin-balance-big{padding:22px;border:1px solid rgba(251,191,36,.24);border-radius:24px;background:radial-gradient(circle at 20% 0%,rgba(251,191,36,.2),transparent 42%),rgba(0,0,0,.18);display:grid;gap:8px}
.pupcoin-balance-big span{color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:12px}
.pupcoin-balance-big b{font-size:34px;line-height:1;color:#fff7d1;text-shadow:0 0 24px rgba(251,191,36,.28)}
.pupcoin-balance-big small{color:#f7df9e;font-weight:800}
.section-subtitle{margin:0 0 12px;font-size:16px;color:#fff}
.mini-timeline{display:grid;gap:10px;max-height:440px;overflow:auto;padding-right:4px}
.timeline-item{display:grid;gap:4px;padding:12px 14px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.035)}
.timeline-item b{color:#fff7d1}.timeline-item span{color:#eadfff;font-weight:800}.timeline-item small{color:#d8c8ee}.timeline-item em{color:var(--muted);font-style:normal;font-size:12px}
.form-grid.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid.two label{margin:0}.compact-switch{padding:10px 0}.compact-switch span em{display:block;color:var(--muted);font-style:normal;font-size:12px;margin-top:4px}
@media(max-width:900px){.pupcoin-case-grid,.form-grid.two{grid-template-columns:1fr}.pupcoin-balance-big b{font-size:28px}}


/* v1.0.26 — fixed PUPCOIN accrual text layout */
.pupcoin-accrual-card{overflow:hidden}
.pupcoin-accrual-head{align-items:flex-start}
.pupcoin-accrual-head h2{min-width:0;overflow-wrap:anywhere}
.pupcoin-accrual-list{min-width:0}
.pupcoin-accrual-list>div{display:block;min-width:0;overflow-wrap:anywhere;word-break:normal}
.pupcoin-accrual-list b{display:inline;width:auto;height:auto;margin:0;border:0;border-radius:0;background:none;color:inherit}
.pupcoin-rule{display:flex!important;align-items:center;gap:12px;padding:16px 18px!important;border-color:rgba(251,191,36,.24)!important;background:linear-gradient(135deg,rgba(251,191,36,.13),rgba(168,85,247,.045))!important}
.pupcoin-rule-icon{display:inline-grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:999px;background:rgba(251,191,36,.16);border:1px solid rgba(251,191,36,.32);font-size:18px}
.pupcoin-rule strong{display:block;min-width:0;color:#fff7d1;font-size:17px;line-height:1.35;overflow-wrap:anywhere}
@media(max-width:700px){.pupcoin-accrual-head{display:block}.pupcoin-accrual-head .muted{display:inline-block;margin-top:10px}.pupcoin-rule{align-items:flex-start}.pupcoin-rule strong{font-size:16px}}

/* v1.0.31 — applications CRM */
.applications-panel {
  display: grid;
  grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
  gap: 18px;
  align-items: stretch;
}
.applications-users {
  min-height: 620px;
  overflow: hidden;
}
.applications-user-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-height: 720px;
  overflow: auto;
  padding-right: 4px;
}
.application-user {
  display: grid;
  gap: 3px;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 18px;
  background: rgba(255,255,255,.04);
  color: inherit;
  text-decoration: none;
}
.application-user:hover,
.application-user.active {
  border-color: rgba(165, 92, 255, .55);
  background: rgba(165, 92, 255, .12);
}
.application-user small,
.application-user span {
  color: var(--muted);
  font-size: 12px;
}
.application-user em {
  display: inline-flex;
  width: fit-content;
  margin-top: 5px;
  padding: 4px 9px;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  color: #fff;
  font-style: normal;
  font-size: 12px;
}
.application-chat {
  min-height: 620px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.application-chat-head,
.application-actions,
.chat-send-area {
  flex: none;
}
.application-chat-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.chat-window {
  min-height: 360px;
  max-height: 560px;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 18px 8px 18px 0;
  scroll-behavior: smooth;
}
.chat-message {
  display: flex;
  width: 100%;
}
.chat-message.out { justify-content: flex-end; }
.chat-message.in { justify-content: flex-start; }
.chat-message.system { justify-content: center; }
.chat-bubble {
  max-width: min(660px, 82%);
  padding: 12px 14px;
  border-radius: 18px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.08);
}
.chat-message.out .chat-bubble {
  background: linear-gradient(135deg, rgba(137,86,255,.28), rgba(255,73,200,.16));
  border-color: rgba(177,117,255,.35);
}
.chat-bubble p {
  margin: 0 0 8px;
  white-space: pre-wrap;
}
.chat-bubble small {
  display: block;
  color: var(--muted);
  font-size: 11px;
  text-align: right;
}
.chat-system-text {
  padding: 7px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  color: var(--muted);
  font-size: 12px;
}
.chat-photo {
  display: block;
  max-width: 320px;
  max-height: 260px;
  border-radius: 14px;
  margin-bottom: 8px;
  object-fit: cover;
}
.chat-video {
  display: block;
  width: min(420px, 100%);
  max-height: 300px;
  border-radius: 14px;
  margin-bottom: 8px;
}
.chat-audio { width: min(360px, 100%); margin-bottom: 8px; }
.file-chip {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 9px 11px;
  margin-bottom: 8px;
  border-radius: 12px;
  background: rgba(255,255,255,.08);
  color: #fff;
  text-decoration: none;
  word-break: break-word;
}
.chat-form,
.template-send-form {
  display: grid;
  gap: 10px;
}
.chat-form textarea {
  resize: vertical;
}
.chat-form-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(160px, 280px) auto;
  gap: 10px;
  align-items: center;
}
.chat-placeholder,
.chat-empty {
  margin: auto;
  text-align: center;
}
.application-stats { margin-bottom: 18px; }
.compact-grid { align-items: end; }
@media (max-width: 980px) {
  .applications-panel { grid-template-columns: 1fr; }
  .applications-users { min-height: auto; }
  .applications-user-list { max-height: 320px; }
  .chat-form-row { grid-template-columns: 1fr; }
  .chat-bubble { max-width: 94%; }
}

.tg-buttons button.default{border:1px solid rgba(148,163,184,.42);background:linear-gradient(135deg,rgba(148,163,184,.32),rgba(255,255,255,.06));color:#fff}
.button-field-url input::placeholder{color:rgba(203,213,225,.55)}

/* v1.0.38 — applications layout and sidebar counters */
.side-application-stats{display:grid;gap:12px;padding:18px}
.side-application-stats .eyebrow{margin-bottom:2px}
.side-stat-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.04)}
.side-stat-row span{color:var(--muted);font-weight:800;font-size:13px}
.side-stat-row b{min-width:34px;text-align:center;padding:5px 9px;border-radius:999px;background:linear-gradient(135deg,rgba(168,85,247,.25),rgba(255,255,255,.08));border:1px solid rgba(168,85,247,.28);color:#fff}
.page-applications .page-head{padding:16px 22px}
.page-applications .page-head h1{margin-bottom:0;font-size:30px}
.page-applications .page-head p{display:none}
.page-applications .workspace{gap:12px}
.applications-panel{height:calc(100vh - 190px);min-height:560px;margin-top:0;align-items:stretch}
.applications-users,.application-chat{height:100%;min-height:0}
.applications-users{display:flex;flex-direction:column}
.applications-users .card-head{flex:none}
.applications-user-list{flex:1;max-height:none;min-height:0}
.application-chat{min-height:0}
.application-chat-head{flex:none;align-items:center}
.application-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;min-width:min(520px,100%)}
.application-head-actions .status{white-space:nowrap}
.application-head-actions .application-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.application-actions form{margin:0}
.chat-window{flex:1;min-height:0;max-height:none;padding-right:8px}
.chat-send-area{border-top:1px solid rgba(255,255,255,.08);padding-top:14px;margin-top:0}
@media(max-width:1200px){.applications-panel{height:auto;min-height:0}.applications-users{height:auto}.application-chat{height:min(720px,calc(100vh - 160px));min-height:540px}.applications-user-list{max-height:300px}.application-chat-head{align-items:flex-start}.application-head-actions{justify-content:flex-start;min-width:0}}
@media(max-width:760px){.side-application-stats{padding:14px}.page-applications .page-head h1{font-size:26px}.application-chat{height:auto;min-height:0}.chat-window{min-height:360px}.application-chat-head{display:grid}.application-head-actions,.application-head-actions .application-actions{width:100%;justify-content:flex-start}.application-head-actions .application-actions form,.application-head-actions .application-actions .btn{width:100%}}


/* v1.0.39 — template insertion, stable button previews, Telegram colors */
.template-insert-row{display:grid;grid-template-columns:minmax(180px,320px) minmax(0,1fr);gap:10px;align-items:center;margin-bottom:10px}
.template-insert-row select{min-height:44px}
.small-note{font-size:12px;line-height:1.4}
.tg-preview{min-height:420px;border-radius:30px;border:1px solid rgba(255,255,255,.1);background:radial-gradient(circle at 18% 0,rgba(168,85,247,.25),transparent 30%),linear-gradient(145deg,#171126,#07040d);overflow:hidden;padding:22px;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.tg-bubble{width:min(90%,460px);margin:8px 0 18px auto;padding:15px 16px;border-radius:22px 22px 6px 22px;background:linear-gradient(145deg,rgba(168,85,247,.30),rgba(89,38,155,.22));border:1px solid rgba(255,255,255,.1);box-shadow:0 18px 40px rgba(0,0,0,.25);color:#fff;line-height:1.55;white-space:normal}
.tg-buttons .tg-button-row button{display:grid;grid-template-rows:auto auto;align-items:center;justify-items:center;gap:2px;min-width:0;min-height:44px;padding:7px 10px;border-radius:14px;color:#fff;font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tg-buttons .tg-button-row button span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tg-buttons .tg-button-row button em{font-style:normal;font-size:10px;line-height:1;color:rgba(255,255,255,.68);font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.tg-buttons .tg-button-row button.default{border:1px solid rgba(148,163,184,.44);background:linear-gradient(135deg,rgba(148,163,184,.32),rgba(255,255,255,.06));box-shadow:0 8px 22px rgba(148,163,184,.12)}
.tg-buttons .tg-button-row button.primary{border:1px solid rgba(96,165,250,.62);background:linear-gradient(135deg,rgba(37,99,235,.74),rgba(96,165,250,.22));box-shadow:0 8px 24px rgba(59,130,246,.22)}
.tg-buttons .tg-button-row button.success{border:1px solid rgba(74,222,128,.62);background:linear-gradient(135deg,rgba(22,163,74,.74),rgba(74,222,128,.22));box-shadow:0 8px 24px rgba(34,197,94,.22)}
.tg-buttons .tg-button-row button.danger{border:1px solid rgba(248,113,113,.62);background:linear-gradient(135deg,rgba(220,38,38,.76),rgba(248,113,113,.22));box-shadow:0 8px 24px rgba(239,68,68,.22)}
@media(max-width:720px){.template-insert-row{grid-template-columns:1fr}.tg-preview{padding:14px}.tg-bubble{width:auto;margin:0 0 14px}}

/* v1.0.42: archive link in the side заявки block */
.side-stat-link {
    text-decoration: none;
    color: inherit;
    transition: border-color .2s ease, background .2s ease, transform .2s ease;
}
.side-stat-link:hover {
    border-color: rgba(167, 139, 250, .5);
    background: rgba(167, 139, 250, .08);
    transform: translateY(-1px);
}

/* v1.0.44 — users, access and PUPCOIN balance controls */
.inline-balance-form{
    display:grid;
    grid-template-columns:minmax(90px,120px) minmax(160px,1fr) auto;
    gap:10px;
    align-items:center;
    min-width:360px;
}
.inline-balance-form input{min-width:0;}
.permission-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:10px;
}
.permission-item{
    display:flex;
    align-items:flex-start;
    gap:10px;
    padding:12px;
    border:1px solid rgba(255,255,255,.1);
    border-radius:16px;
    background:rgba(255,255,255,.04);
}
.permission-item input{margin-top:4px;}
.permission-item span{display:flex;flex-direction:column;gap:3px;font-weight:800;}
.permission-item em{font-style:normal;color:var(--muted);font-size:12px;font-weight:600;}
.pupcoin-users-table td:last-child{min-width:380px;}
@media (max-width: 860px){
    .inline-balance-form{grid-template-columns:1fr;min-width:0;}
    .pupcoin-users-table td:last-child{min-width:260px;}
}

/* v1.0.45 — panel users, generated credentials and 2FA */
.wide-stack{gap:18px;}
.compact-grid{align-items:end;}
.credentials-card{border-color:rgba(52,211,153,.28);}
.copy-box{
    width:100%;
    min-height:150px;
    resize:vertical;
    white-space:pre-wrap;
    font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
    line-height:1.55;
    background:rgba(8,11,22,.72);
    border:1px solid rgba(52,211,153,.25);
    border-radius:18px;
    padding:16px;
    color:#e8f7ff;
}
.mini-panel{
    padding:14px;
    border:1px solid rgba(255,255,255,.1);
    border-radius:18px;
    background:rgba(255,255,255,.045);
}
.mini-panel p{margin:.35rem 0 0;}
.notice.subtle{
    padding:12px 14px;
    border-radius:16px;
    background:rgba(167,139,250,.08);
    border:1px solid rgba(167,139,250,.16);
    color:var(--muted);
}
@media (max-width: 860px){
    .compact-grid{grid-template-columns:1fr;}
}

/* v1.0.47 — reset password panel in user editor */
.wide-mini-panel{grid-column:1/-1;}
.credentials-card .copy-box{min-height:110px;}

/* v1.0.48 — PUPCOIN filters and reordered settings blocks */
.pupcoin-users-filter{
    grid-template-columns:minmax(220px,1.35fr) minmax(150px,.75fr) minmax(150px,.75fr) minmax(130px,.6fr) auto auto;
}
.pupcoin-users-filter .btn{min-height:46px;align-self:end;}
@media (max-width: 1180px){
    .pupcoin-users-filter{grid-template-columns:1fr 1fr 1fr;}
}
@media (max-width: 760px){
    .pupcoin-users-filter{grid-template-columns:1fr;}
    .pupcoin-users-filter .btn{width:100%;}
}


/* v1.0.53 — логи ошибок */
.error-log-table td { vertical-align: top; }
.error-log-table .nowrap { white-space: nowrap; }
.log-details { margin-top: 8px; }
.log-details summary { color: var(--accent, #a78bfa); cursor: pointer; font-size: 13px; }
.log-details pre,
.log-console { white-space: pre-wrap; overflow-wrap: anywhere; word-break: break-word; font: 12px/1.55 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.log-details pre { max-height: 260px; overflow: auto; padding: 12px; border-radius: 12px; background: rgba(0,0,0,.24); }
.log-console { margin: 0; max-height: 420px; overflow: auto; padding: 14px; border: 1px solid rgba(255,255,255,.08); border-radius: 14px; background: rgba(0,0,0,.34); color: #d8def2; }
.error-files-grid > .card { min-width: 0; }
.danger-zone { border-color: rgba(248,113,113,.22); }
@media (max-width: 900px) {
  .error-files-grid { grid-template-columns: 1fr !important; }
  .error-log-table .nowrap { white-space: normal; }
}

.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.error-log-filter{grid-template-columns:minmax(240px,1fr) 180px 170px auto auto;align-items:center}.log-stats-grid{margin-bottom:18px}@media(max-width:1100px){.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.error-log-filter{grid-template-columns:1fr 1fr}}@media(max-width:620px){.grid.four,.error-log-filter{grid-template-columns:1fr}.error-log-filter .btn{width:100%}}

/* v1.0.54 — copying logs for support */
.copy-log-source{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
  opacity:0!important;
  pointer-events:none!important;
}
.log-export-card .card-head{align-items:center;gap:18px;}
.log-export-card .card-head > div{min-width:0;}
.log-export-card .card-head p{margin:.35rem 0 0;}
.log-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;}
.log-copy-cell{width:1%;white-space:nowrap;}
@media(max-width:760px){
  .log-export-card .card-head{align-items:stretch;}
  .log-export-card [data-copy-log]{width:100%;}
  .log-copy-cell .btn{white-space:nowrap;}
}



/* v1.0.55 — editable persistent Telegram keyboard */
.persistent-menu-settings{display:grid;gap:12px}
.persistent-button-builder{display:grid;gap:10px;min-width:0}
.persistent-button-row{display:grid;grid-template-columns:minmax(150px,1.1fr) minmax(220px,1.8fr) 74px 96px 44px;gap:10px;align-items:end;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(0,0,0,.14);min-width:0}
.persistent-button-row label{display:grid;gap:7px;min-width:0;font-size:12px}
.persistent-button-row input{width:100%;min-width:0;height:44px;border-radius:14px;padding:11px 12px}
.persistent-button-row .remove-button{width:44px;min-width:44px;height:44px;padding:0}
.persistent-keyboard-preview{display:grid;gap:8px;padding:14px;border-radius:18px;border:1px solid rgba(255,255,255,.09);background:linear-gradient(145deg,rgba(29,37,57,.9),rgba(12,17,28,.9))}
.persistent-preview-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:8px}
.persistent-preview-row button{min-width:0;min-height:42px;padding:8px 10px;border:1px solid rgba(148,163,184,.35);border-radius:12px;background:rgba(148,163,184,.17);color:#fff;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:960px){.persistent-button-row{grid-template-columns:1fr 1fr 74px 96px 44px}}
@media(max-width:700px){.persistent-button-row{grid-template-columns:1fr 44px}.persistent-button-row label{grid-column:1 / -1}.persistent-button-row .remove-button{grid-column:2}.persistent-preview-row{grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:1fr}}

/* v1.0.58 — raised menu preview, persistent keyboard preview and drag sorting */
.bot-menu-preview-card{margin-bottom:18px}
.bot-menu-preview-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.65fr);gap:18px;align-items:stretch}
.tg-menu-full-preview{display:flex;flex-direction:column;min-height:460px;padding:18px}
.tg-preview-screen{flex:1;min-height:280px;padding:6px 4px 18px}
.tg-input-preview{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;margin-top:auto;padding:10px 14px;border-radius:18px;border:1px solid rgba(255,255,255,.1);background:rgba(8,12,22,.84);color:var(--muted)}
.tg-input-preview b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff}
.tg-menu-full-preview .persistent-keyboard-preview{margin-top:10px;padding:10px;border-radius:16px;background:rgba(9,14,25,.92)}
.preview-help-card{display:flex;flex-direction:column;justify-content:center;gap:10px;padding:20px;border:1px solid rgba(255,255,255,.09);border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.025))}
.preview-help-card> b{font-size:18px}
.preview-help-card p{margin:0;line-height:1.55}
.bot-menu-editor-card{overflow:visible}
.drag-sort-hint{padding:10px 12px;border:1px dashed rgba(168,85,247,.34);border-radius:14px;background:rgba(168,85,247,.07);color:var(--muted);font-size:12px;line-height:1.45}
.drag-handle{grid-area:drag!important;display:grid;place-items:center;align-self:stretch;min-width:44px;width:44px;min-height:44px;padding:0;border:1px solid rgba(168,85,247,.32);border-radius:14px;background:rgba(168,85,247,.1);color:#d8b4fe;font-size:20px;font-weight:900;cursor:grab;touch-action:none;user-select:none}
.drag-handle:active{cursor:grabbing}
.button-row,.persistent-button-row{transition:opacity .15s ease,border-color .15s ease,transform .15s ease,background .15s ease}
.button-row.is-dragging,.persistent-button-row.is-dragging{opacity:.48;transform:scale(.992);border-color:rgba(168,85,247,.58)}
.button-row.is-drag-target,.persistent-button-row.is-drag-target{border-color:rgba(96,165,250,.7);background:rgba(59,130,246,.09)}
.button-row{
  grid-template-columns:44px repeat(12,minmax(0,1fr));
  grid-template-areas:
    "drag text text text text text text url url url url url url"
    "drag row row sort sort style style style style style style style remove";
}
.persistent-button-row{grid-template-columns:44px minmax(150px,1.1fr) minmax(220px,1.8fr) 74px 96px 44px}
@media(max-width:1100px){
  .bot-menu-preview-layout{grid-template-columns:1fr}
  .preview-help-card{min-height:0}
  .button-row{grid-template-areas:
    "drag text text text text text text text text text text text text"
    "drag url url url url url url url url url url url url"
    "drag row row row sort sort sort style style style style style remove"}
  .persistent-button-row{grid-template-columns:44px 1fr 1fr 74px 96px 44px}
}
@media(max-width:720px){
  .bot-menu-preview-card{margin-top:0}
  .tg-menu-full-preview{min-height:400px;padding:12px}
  .button-row{grid-template-columns:44px 1fr 44px;grid-template-areas:
    "drag text text"
    "drag url url"
    "drag row row"
    "drag sort sort"
    "drag style style"
    "drag . remove"}
  .button-row .drag-handle{align-self:start}
  .persistent-button-row{grid-template-columns:44px 1fr 44px}
  .persistent-button-row label{grid-column:2 / -1}
  .persistent-button-row .drag-handle{grid-column:1;grid-row:1 / span 4;align-self:stretch}
  .persistent-button-row .remove-button{grid-column:3;justify-self:end}
  .persistent-preview-row{grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);grid-template-columns:none}
}


/* v1.0.59 — Telegram colors for persistent KeyboardButton */
.persistent-button-row{
  grid-template-columns:44px repeat(12,minmax(0,1fr));
  grid-template-areas:
    "drag text text text text action action action action action action action action"
    "drag style style style style row row sort sort sort sort sort remove";
}
.persistent-field-text{grid-area:text}
.persistent-field-action{grid-area:action}
.persistent-field-style{grid-area:style}
.persistent-field-row{grid-area:row}
.persistent-field-sort{grid-area:sort}
.persistent-button-row .remove-button{grid-area:remove}
.persistent-button-row select{width:100%;min-width:0;height:44px;border-radius:14px;padding:11px 12px}
.persistent-preview-row button.primary{border-color:rgba(96,165,250,.56);background:linear-gradient(135deg,rgba(59,130,246,.68),rgba(96,165,250,.22));box-shadow:0 8px 22px rgba(59,130,246,.18)}
.persistent-preview-row button.success{border-color:rgba(74,222,128,.56);background:linear-gradient(135deg,rgba(22,163,74,.68),rgba(74,222,128,.22));box-shadow:0 8px 22px rgba(34,197,94,.18)}
.persistent-preview-row button.danger{border-color:rgba(248,113,113,.56);background:linear-gradient(135deg,rgba(220,38,38,.68),rgba(248,113,113,.22));box-shadow:0 8px 22px rgba(239,68,68,.18)}
@media(max-width:1100px){
  .persistent-button-row{
    grid-template-columns:44px repeat(8,minmax(0,1fr)) 44px;
    grid-template-areas:
      "drag text text text text text text text text remove"
      "drag action action action action action action action action remove"
      "drag style style style style row row sort sort remove";
  }
}
@media(max-width:720px){
  .persistent-button-row{
    grid-template-columns:44px 1fr 44px;
    grid-template-areas:
      "drag text remove"
      "drag action action"
      "drag style style"
      "drag row row"
      "drag sort sort";
  }
  .persistent-button-row label{grid-column:auto}
  .persistent-button-row .drag-handle{grid-column:auto;grid-row:auto;align-self:stretch}
  .persistent-button-row .remove-button{grid-column:auto;justify-self:end}
}

/* v1.0.65 — credentials displayed one item per line */
.copy-source[hidden]{display:none!important;}
.credentials-list{
    display:grid;
    gap:10px;
    margin:14px 0 4px;
    padding:14px;
    border:1px solid rgba(52,211,153,.25);
    border-radius:18px;
    background:rgba(8,11,22,.72);
}
.credential-line{
    display:grid;
    grid-template-columns:96px minmax(0,1fr);
    align-items:start;
    gap:12px;
    padding:10px 12px;
    border-radius:14px;
    background:rgba(255,255,255,.035);
}
.credential-label{
    color:var(--muted);
    font-weight:700;
    line-height:1.45;
}
.credential-value{
    min-width:0;
    color:#e8f7ff;
    font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
    line-height:1.45;
    overflow-wrap:anywhere;
    word-break:break-word;
}
.credential-link{text-decoration:none;}
.credential-link:hover{text-decoration:underline;}
@media (max-width:560px){
    .credential-line{grid-template-columns:1fr;gap:4px;}
}

/* v1.0.67 — Broadcasts */
.broadcast-template-picker{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:18px}.broadcast-template-picker label{min-width:min(360px,100%);flex:1}.broadcast-editor-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.72fr);gap:20px;align-items:start}.broadcast-preview-card{position:sticky;top:92px;border:1px solid var(--border);border-radius:20px;padding:16px;background:rgba(9,10,24,.78);min-width:0}.broadcast-tg-preview{min-height:380px;padding:18px;display:flex;flex-direction:column;justify-content:flex-end;gap:8px}.broadcast-tg-preview .tg-bubble{max-width:94%;white-space:normal;overflow-wrap:anywhere}.broadcast-button-builder{display:grid;gap:10px}.broadcast-button-row{display:grid;grid-template-columns:minmax(120px,.85fr) minmax(170px,1.35fr) minmax(130px,.8fr) 78px 86px 42px;gap:9px;align-items:end;padding:10px;border:1px solid var(--border);border-radius:14px;background:rgba(255,255,255,.025)}.broadcast-button-row label{margin:0;min-width:0}.broadcast-options-grid{align-items:end}.broadcast-resource-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:280px;overflow:auto;padding-right:4px}.resource-check{display:flex!important;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:13px;background:rgba(255,255,255,.025);margin:0!important}.resource-check input{width:auto}.resource-check span{display:grid;min-width:0}.resource-check small{color:var(--muted);overflow-wrap:anywhere}.broadcast-existing-media{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}.broadcast-existing-media span{padding:6px 9px;border-radius:10px;background:rgba(139,92,246,.12);border:1px solid rgba(139,92,246,.24);font-size:12px}.broadcast-media-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.broadcast-media-thumb{position:relative;min-width:0;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:#090a16}.broadcast-media-thumb img,.broadcast-media-thumb video{width:100%;height:110px;object-fit:cover;display:block}.broadcast-media-thumb span{display:block;padding:6px 8px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.broadcast-preview-media{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.broadcast-media-preview-item,.broadcast-media-placeholder{border-radius:12px;overflow:hidden;background:rgba(255,255,255,.06);min-height:92px;display:flex;align-items:center;justify-content:center}.broadcast-media-preview-item img,.broadcast-media-preview-item video{display:block;width:100%;height:145px;object-fit:cover}.broadcast-media-placeholder{padding:16px;flex-direction:column;gap:6px;color:var(--muted);text-align:center}.tg-button-row{display:flex;gap:5px}.tg-button-row .tg-button{flex:1}.template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
@media(max-width:1180px){.broadcast-editor-grid{grid-template-columns:1fr}.broadcast-preview-card{position:relative;top:auto;order:-1}.broadcast-button-row{grid-template-columns:repeat(2,minmax(0,1fr))}.broadcast-button-row>button{align-self:end}.template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.broadcast-resource-list,.template-grid,.broadcast-media-preview{grid-template-columns:1fr}.broadcast-button-row{grid-template-columns:1fr}.broadcast-preview-card{padding:12px}.broadcast-tg-preview{min-height:280px}.broadcast-template-picker{align-items:stretch}}


/* v1.0.68 — поднятый и исправленный предпросмотр рассылки */
.broadcast-preview-top{position:relative;top:auto;margin:0 0 20px;padding:18px;background:linear-gradient(145deg,rgba(20,16,38,.96),rgba(7,8,20,.94));overflow:hidden}
.broadcast-preview-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin:0 0 12px;padding:11px 13px;border:1px solid var(--border);border-radius:14px;background:rgba(255,255,255,.025)}
.broadcast-preview-meta>div{display:grid;gap:2px;min-width:0}.broadcast-preview-meta>div:last-child{text-align:right}.broadcast-preview-meta b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.broadcast-preview-meta small{color:var(--muted);font-size:11px}
.broadcast-tg-preview{min-height:360px;padding:0;border:1px solid rgba(255,255,255,.09);border-radius:22px;background:radial-gradient(circle at 12% 0,rgba(139,92,246,.18),transparent 32%),linear-gradient(145deg,#171126,#07040d);overflow:hidden;display:block}
.broadcast-preview-chat-head{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.08);background:rgba(0,0,0,.22)}
.broadcast-preview-chat-head>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent2));font-size:20px}.broadcast-preview-chat-head>div{display:grid}.broadcast-preview-chat-head small{color:var(--muted);font-size:11px}
.broadcast-preview-flow{min-height:300px;padding:24px 18px;display:flex;align-items:flex-end;justify-content:flex-end}
.broadcast-preview-message{width:min(520px,94%);min-width:0;border-radius:18px 18px 5px 18px;background:linear-gradient(145deg,rgba(168,85,247,.29),rgba(89,38,155,.24));border:1px solid rgba(255,255,255,.11);box-shadow:0 18px 40px rgba(0,0,0,.28);overflow:hidden}
.broadcast-preview-copy{padding:13px 14px 8px;color:#fff;line-height:1.5;white-space:normal;overflow-wrap:anywhere}.broadcast-preview-copy:empty{display:none}
.broadcast-preview-time{text-align:right;padding:0 12px 8px;color:rgba(255,255,255,.58);font-size:10px}
.broadcast-preview-buttons{padding:0 8px 8px;margin:0}.broadcast-preview-buttons:empty{display:none}.broadcast-preview-buttons .tg-button-row{display:flex;gap:5px;margin-top:5px}.broadcast-preview-buttons .tg-button{display:flex;align-items:center;justify-content:center;flex:1;min-width:0;min-height:38px;padding:7px 9px;border-radius:10px;background:rgba(148,163,184,.22);border:1px solid rgba(148,163,184,.38);font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.broadcast-preview-buttons .tg-primary{background:rgba(37,99,235,.68);border-color:rgba(96,165,250,.58)}.broadcast-preview-buttons .tg-success{background:rgba(22,163,74,.68);border-color:rgba(74,222,128,.58)}.broadcast-preview-buttons .tg-danger{background:rgba(220,38,38,.7);border-color:rgba(248,113,113,.58)}
.broadcast-preview-media{display:grid;gap:3px;background:rgba(0,0,0,.18)}.broadcast-preview-media[hidden]{display:none}.broadcast-preview-media[data-count="1"]{grid-template-columns:1fr}.broadcast-preview-media[data-count="2"],.broadcast-preview-media[data-count="3"],.broadcast-preview-media[data-count="4"]{grid-template-columns:repeat(2,minmax(0,1fr))}.broadcast-preview-media[data-count="3"]>*:first-child{grid-row:span 2}.broadcast-preview-media:not([data-count="0"]):not([data-count="1"]):not([data-count="2"]):not([data-count="3"]):not([data-count="4"]){grid-template-columns:repeat(3,minmax(0,1fr))}
.broadcast-media-preview-item,.broadcast-media-placeholder{border-radius:0;min-height:110px}.broadcast-media-preview-item img,.broadcast-media-preview-item video{height:170px}.broadcast-media-placeholder{min-height:120px;padding:14px;background:rgba(255,255,255,.05)}
.broadcast-repeat-hint{align-self:stretch;margin:0}.broadcast-editor-fields{width:100%}
@media(max-width:720px){.broadcast-preview-meta{grid-template-columns:1fr}.broadcast-preview-meta>div:last-child{text-align:left}.broadcast-preview-flow{padding:14px 10px;min-height:250px}.broadcast-preview-message{width:100%}.broadcast-media-preview-item img,.broadcast-media-preview-item video{height:130px}}

/* v1.0.71 — возвращены настройки 2FA */
.migration-card{overflow:hidden}
.migration-card .card-head>div{min-width:0}
.migration-card .card-head p{margin:.45rem 0 0;line-height:1.55}
.migration-warning{line-height:1.65}
.migration-grid{align-items:start;margin-top:18px}
.migration-panel{min-width:0;padding:20px;border:1px solid rgba(255,255,255,.08);border-radius:24px;background:rgba(255,255,255,.025)}
.migration-panel h3{margin:0 0 16px;font-size:20px}
.migration-download-form{margin-top:18px}
.migration-steps{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.migration-steps li{display:grid;grid-template-columns:38px minmax(0,1fr);gap:13px;align-items:start;padding:13px 14px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(0,0,0,.14)}
.migration-steps li>span{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:12px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;font-weight:900;box-shadow:0 8px 22px rgba(168,85,247,.2)}
.migration-steps b{display:block;margin:1px 0 5px;color:#fff}
.migration-steps small{display:block;color:var(--muted);font-size:13px;line-height:1.55}
.migration-panel code{max-width:100%;white-space:normal;word-break:break-word}
@media (max-width:700px){.migration-panel{padding:16px}.migration-card .card-head{display:block}.migration-card .tag{margin-top:12px}.migration-steps li{grid-template-columns:34px minmax(0,1fr);padding:12px}.migration-steps li>span{width:30px;height:30px}}

/* v1.0.72 — уникальные пользователи на дашборде */

/* v1.0.73 — парсинг заблокированных через личный аккаунт */
.sync-account-actions{display:grid;gap:12px}
.sync-account-actions .filter-bar{margin:0}
@media (min-width:980px){.sync-account-actions{grid-template-columns:1fr 1fr;align-items:end}}

/* v1.0.74 — точный парсинг чёрного списка Telegram */
.btn.dark {
    background: linear-gradient(135deg, #20222b, #07080c);
    color: #fff;
    border-color: rgba(255,255,255,.14);
}
.btn.dark:hover { filter: brightness(1.18); }

/* v1.0.77 — чистая панель, резервная копия базы и восстановление */
.panel-backup-card,.restore-panel-card{overflow:hidden}
.panel-backup-card .card-head>div,.restore-panel-card .card-head>div{min-width:0}
.panel-backup-card .card-head p,.restore-panel-card .card-head p{margin:.45rem 0 0;line-height:1.55}
.panel-backup-grid{align-items:stretch;margin-top:18px}
.panel-backup-item{display:grid;grid-template-columns:58px minmax(0,1fr);gap:16px;align-items:start;min-width:0;padding:20px;border:1px solid rgba(255,255,255,.08);border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.015))}
.panel-backup-item h3{margin:0 0 8px;font-size:20px}
.panel-backup-item p{margin:0 0 16px;color:var(--muted);line-height:1.6}
.panel-backup-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:17px;background:linear-gradient(135deg,rgba(168,85,247,.28),rgba(59,130,246,.2));border:1px solid rgba(255,255,255,.1);font-size:25px;box-shadow:0 14px 32px rgba(0,0,0,.22)}
.backup-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px;padding:10px 12px;border-radius:13px;background:rgba(0,0,0,.16);border:1px solid rgba(255,255,255,.07)}
.backup-meta span{color:var(--muted);font-size:13px}.backup-meta b{color:#fff}
.danger-tag{background:rgba(239,68,68,.12)!important;border-color:rgba(239,68,68,.28)!important;color:#fecaca!important}
.restore-warning{margin:16px 0;line-height:1.65}
.restore-database-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end;padding:18px;border:1px solid rgba(255,255,255,.08);border-radius:22px;background:rgba(255,255,255,.025)}
.restore-file-field{margin:0;min-width:0}.restore-file-field span{display:block;margin-bottom:8px;font-weight:800}.restore-file-field small{display:block;margin-top:7px;color:var(--muted);font-size:12px;line-height:1.5}
.restore-confirm{grid-column:1/-1;margin:0!important;padding:12px 14px;border-radius:14px;background:rgba(239,68,68,.055);border:1px solid rgba(239,68,68,.16)}
.restore-confirm input{width:auto;flex:0 0 auto}.restore-confirm span{line-height:1.45}
.restore-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;margin-top:14px;padding:14px 16px;border-radius:16px;background:rgba(34,197,94,.055);border:1px solid rgba(34,197,94,.16)}
.restore-note b{white-space:nowrap;color:#bbf7d0}.restore-note span{color:var(--muted);line-height:1.55}.restore-note code{word-break:break-word}
@media(max-width:760px){.panel-backup-item{grid-template-columns:1fr;padding:16px}.restore-database-form{grid-template-columns:1fr}.restore-database-form .btn{width:100%}.restore-note{grid-template-columns:1fr}.restore-note b{white-space:normal}.panel-backup-card .card-head,.restore-panel-card .card-head{display:block}.panel-backup-card .tag,.restore-panel-card .tag{display:inline-flex;margin-top:12px}}

/* v1.0.78 — ник PupCity в профиле пользователя */


/* v1.0.84 — бренд, индивидуальные приветствия и темы форумов */
.brand-settings-grid{align-items:start}.brand-preview{display:flex;align-items:center;gap:16px;padding:20px;border:1px solid var(--border);border-radius:18px;background:rgba(255,255,255,.025)}.brand-preview img{width:72px;height:72px;object-fit:contain;border-radius:18px;background:rgba(255,255,255,.05);padding:8px}.brand-preview div{display:grid;gap:4px}.brand-preview b{font-size:22px}.brand-preview small{color:var(--muted)}
.panel-backup-full{max-width:900px;margin:0 auto}.resource-welcome-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.resource-welcome-card{display:grid;gap:12px}.resource-welcome-card>div:first-child{display:grid;gap:3px;min-width:0}.resource-welcome-card small{color:var(--muted);overflow:hidden;text-overflow:ellipsis}.resource-welcome-card .status{justify-self:start}.resource-welcome-editor{scroll-margin-top:100px}
.broadcast-resource-target{display:grid!important;gap:10px;align-items:stretch!important}.broadcast-resource-target>label{display:flex;gap:10px;align-items:center;cursor:pointer}.forum-target-fields{display:none;grid-template-columns:1fr 1fr;gap:10px;padding:10px;border-top:1px solid var(--border)}.forum-target-fields.is-active{display:grid}.forum-target-fields label{display:grid;gap:6px;font-size:12px}.forum-target-fields small{color:var(--muted)}
@media(max-width:1000px){.resource-welcome-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.resource-welcome-grid,.forum-target-fields{grid-template-columns:1fr}}

.broadcast-forum-refresh{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0 18px}

/* v1.0.85 — настройки панели, отдельные архивы и названия форумных тем */
.panel-download-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.panel-only-item{border-style:dashed}.panel-full-no-db-item{border-color:rgba(59,130,246,.24)}.database-download-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;margin:0 0 16px;border:1px solid var(--border);border-radius:16px;background:rgba(255,255,255,.025)}.database-download-row>div{display:grid;gap:4px}.database-download-row span{color:var(--muted);font-size:13px}.broadcast-topic-history{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.broadcast-topic-history>b{font-size:12px;color:var(--muted)}.broadcast-topic-history span{font-size:12px;padding:4px 8px;border:1px solid var(--border);border-radius:999px;background:rgba(255,255,255,.03)}
@media(max-width:800px){.panel-download-grid{grid-template-columns:1fr}.database-download-row{align-items:stretch;flex-direction:column}.database-download-row form,.database-download-row .btn{width:100%}}

/* v1.0.86 — полная панель без базы данных */


/* v1.0.87 — передаваемая версия отдельным нижним блоком */
.panel-transfer-card { margin-top: 18px; }
.panel-transfer-content { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 16px; align-items: start; }
.panel-transfer-content .panel-backup-icon { margin-top: 2px; }
.panel-transfer-content .backup-meta { margin: 14px 0; }
@media (max-width: 680px) {
  .panel-transfer-content { grid-template-columns: 1fr; }
}
