@font-face{font-family:Club;src:local('Century Gothic'),local('Aptos'),local('Segoe UI')}*{box-sizing:border-box} :root{--bg:#202034;--panel:#28283f;--deep:#222237;--border:#4c4b68;--line:#37364e;--text:#faf9ff;--muted:#9693bb;--purple:#7360df;--purple-light:#aa9cff;--pink:#cc4265;--green:#a2d6b9;--radius:7px;color-scheme:dark;font-family:Club,'Segoe UI',sans-serif;font-size:14px;color:var(--text);background:var(--bg)}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--purple-light);outline-offset:3px}a{color:var(--purple-light)}button{border:1px solid var(--border);color:var(--text);background:transparent;border-radius:8px;padding:13px 18px;transition:background .15s,transform .15s}button:hover{background:#38374f}button.primary{background:var(--purple);border-color:#8d7df0;box-shadow:inset 0 1px 2px #b5a8ff55;font-weight:600}button.primary:hover{background:#8270e9}button.danger{background:var(--pink);border-color:#df617e}button.small{padding:8px 12px;font-size:12px}button.icon{padding:7px 9px;border:0;color:var(--muted);font-size:21px}button.link{border:0;padding:5px 0;color:var(--purple-light);text-decoration:underline}.muted,.hint{color:var(--muted)}.hint{font-size:12px;line-height:1.6;margin:8px 0 0}.notice{border-left:3px solid var(--purple);background:#7360df10;padding:13px 18px;color:#beb8e1;line-height:1.6;font-size:13px;border-radius:0 5px 5px 0;margin-bottom:24px}.notice.warn{border-color:#d9b77e;background:#d9b77e09;color:#dac7a9}.badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;letter-spacing:.03em;border:1px solid #66599975;color:#bcafff;border-radius:20px;padding:5px 9px;white-space:nowrap}.badge.green{color:var(--green);border-color:#a2d6b940}.badge.gray{color:var(--muted);border-color:var(--line)}.badge.orange{color:#e6c084;border-color:#e6c08450}.dot{width:6px;height:6px;border-radius:50%;background:currentColor;display:inline-block}.topbar{height:80px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:0 34px;border-bottom:1px solid var(--line);background:var(--deep)}.brand{font-weight:700;letter-spacing:1px;display:flex;align-items:center;gap:12px;font-size:19px}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border:1px solid #a278bb;border-radius:11px;font-size:20px;color:#f99fbd;background:#412d49}.brand small{display:block;letter-spacing:2px;font-size:9px;color:var(--muted);margin-top:4px;font-weight:400}.top-actions{display:flex;gap:16px;align-items:center}.layout{display:grid;grid-template-columns:222px minmax(0,1fr);min-height:calc(100vh - 80px)}.sidebar{border-right:1px solid var(--line);padding:28px 16px;display:flex;flex-direction:column;gap:7px}.nav-caption{font-size:10px;letter-spacing:1.8px;color:var(--muted);margin:6px 15px 14px}.nav-button{text-align:left;border:0;padding:14px 15px;color:#b1adc8;display:flex;align-items:center;gap:13px}.nav-button span:first-child{font-size:18px;min-width:23px}.nav-button.active{color:#ece7ff;background:#7360df24}.nav-button.active:after{content:'';margin-left:auto;width:5px;height:5px;background:#a799ff;border-radius:50%}.sidebar-foot{margin-top:auto;padding:40px 15px 12px;font-size:11px;color:var(--muted);line-height:1.9}.workspace{min-width:0;padding:30px 32px 60px;max-width:1800px;width:100%;margin:auto}.page-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--muted);margin-bottom:9px}h1{font-size:25px;font-weight:600;margin:0}h2{font-size:19px;font-weight:500;margin:0}h3{font-size:15px;font-weight:600;margin:0 0 16px}.subheading{color:var(--muted);font-size:13px;margin:9px 0 0}.panel{background:var(--panel);border:1px solid #35334e;border-radius:var(--radius);padding:26px 28px;margin-bottom:20px;min-width:0}.panel-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:21px;margin-bottom:22px;gap:15px}.grid{display:grid;gap:20px}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.four{grid-template-columns:repeat(4,minmax(0,1fr))}.five{grid-template-columns:repeat(5,minmax(0,1fr))}.field{display:block;min-width:0}.field>span{display:block;font-size:13px;font-weight:600;margin-bottom:10px}.field input:not([type=checkbox]),.field textarea,.field select,.search{border:1px solid var(--border);border-radius:6px;background:transparent;color:#c0badf;width:100%;padding:13px 15px;min-height:45px;outline-offset:2px}.field input::placeholder,.field textarea::placeholder,.search::placeholder{color:#807b9f}.field textarea{resize:vertical;line-height:1.85;min-height:190px}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--purple-light)}.field select option{background:var(--panel);color:var(--text)}.section-grid{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(220px,1.3fr) minmax(190px,1fr);gap:22px}.section-grid .field textarea{min-height:212px}.upload{min-height:212px;background:#2c2b4333;border-radius:5px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px;gap:12px;text-align:center}.upload-symbol{color:#7669b0;font-size:48px;line-height:1.2;margin-bottom:5px}.upload img{width:105px;height:105px;object-fit:cover;border-radius:8px}.upload label{cursor:pointer;color:var(--purple-light);text-decoration:underline;font-size:13px}.upload input{position:absolute;width:1px;height:1px;opacity:0}.upload-actions{display:flex;gap:12px;align-items:center}.upload-caption{font-size:12px;color:var(--muted)}.section-extra{border-left:1px solid #4d456a;margin-top:24px;padding:0 0 0 20px}.stack{display:flex;flex-direction:column;gap:20px}.row{display:flex;align-items:center;gap:16px}.spread{justify-content:space-between}.switch{display:inline-flex;align-items:center;gap:15px;cursor:pointer;min-height:27px;font-size:13px;color:var(--muted)}.switch input{position:absolute;width:1px;height:1px;opacity:0}.switch-track{width:42px;height:22px;display:block;position:relative;background:#343148;border-radius:20px;transition:.2s;flex-shrink:0}.switch-track:after{content:'';position:absolute;width:16px;height:16px;left:3px;top:3px;background:var(--purple);border-radius:50%;transition:.2s}.switch input:checked+.switch-track{background:var(--purple)}.switch input:checked+.switch-track:after{background:#dad4f2;transform:translateX(20px)}.switch input:focus-visible+.switch-track{outline:2px solid var(--purple-light);outline-offset:4px}.switch-box{background:var(--deep);border-radius:7px;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;min-height:73px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:13px}th{font-weight:400;color:var(--muted);padding:0 15px 12px}td{padding:17px 15px;background:var(--deep);border-bottom:1px solid var(--line);line-height:1.35}td.actions{white-space:nowrap;width:75px}tr:last-child td{border-bottom:0}td:first-child{max-width:250px}td .sub{font-size:11px;color:var(--muted);margin-top:5px}.empty{padding:75px 25px;text-align:center;color:var(--muted);background:var(--deep);border-radius:6px;line-height:1.8}.empty-symbol{font-size:34px;margin-bottom:14px;color:#625989}.split-lists{display:grid;grid-template-columns:.85fr 1.3fr;gap:20px}.search{max-width:210px;padding:11px 13px;font-size:12px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-bottom:22px}.stat{background:var(--panel);border:1px solid var(--line);padding:20px 24px;border-radius:7px}.stat strong{font-size:29px;display:block;margin-top:10px;font-weight:500}.stat span{font-size:12px;color:var(--muted)}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at 50% 20%,#37305250,transparent 65%)}.login-card{width:420px;max-width:100%;padding:38px;background:var(--panel);border:1px solid var(--border);border-radius:12px}.login-card .brand{margin-bottom:35px}.login-card h1{font-size:24px}.login-card form{display:flex;flex-direction:column;gap:20px;margin-top:30px}.login-card .primary{margin-top:4px;width:100%}.form-error{color:#ffa4b8;font-size:13px;min-height:18px;line-height:1.5}.loading{padding:80px;text-align:center;color:var(--muted)}dialog{color:var(--text);background:var(--panel);border:1px solid var(--border);border-radius:10px;width:700px;max-width:calc(100vw - 24px);max-height:90vh;padding:28px 30px;box-shadow:0 24px 100px #0008}dialog::backdrop{background:#111020b8;backdrop-filter:blur(3px)}dialog h2{text-align:center;font-weight:600;margin-bottom:27px}dialog textarea{min-height:105px!important}dialog .field{margin-bottom:17px}dialog .switch-box{margin-bottom:17px}dialog .upload{min-height:170px}.dialog-actions{display:flex;gap:20px;margin-top:24px}.dialog-actions button{flex:1}dialog .close-dialog{position:absolute;right:10px;top:5px}#toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%,20px);background:#48405e;color:white;border:1px solid #9182b5;padding:13px 22px;border-radius:8px;opacity:0;transition:.2s;z-index:30;pointer-events:none;max-width:90vw;box-shadow:0 5px 25px #0004}#toast.visible{opacity:1;transform:translate(-50%,0)}.inline-links{display:flex;flex-direction:column;gap:14px}.inline-link-row{display:grid;grid-template-columns:1fr 1.7fr 34px;gap:12px;align-items:end}.inline-link-row .field{margin:0}.inline-link-row .icon{margin-bottom:5px}.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:24px;border-bottom:1px solid var(--line);padding-bottom:16px}.tabs button{border:0;font-size:13px;color:var(--muted);padding:10px 14px}.tabs button.active{background:#7360df25;color:#d6ccff}.connection-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:25px;padding-top:20px;gap:15px}.code-line{font-family:Consolas,monospace;color:#bdb3e2;font-size:12px;word-break:break-all}.ticket-text{white-space:pre-wrap;max-width:600px}.sticky-save{position:sticky;bottom:0;padding:14px 20px;background:#28283ff0;border:1px solid var(--line);border-radius:7px;display:flex;align-items:center;justify-content:space-between;backdrop-filter:blur(10px);z-index:3}.player-body{background:#151523}.player-body #player{max-width:510px;margin:0 auto;min-height:100vh;background:var(--deep);padding:20px 20px 90px}.player-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:12px}.player-header .brand{font-size:17px}.player-demo{border:1px solid #71628e;border-radius:6px;text-align:center;padding:8px;font-size:11px;color:#bcb2d3;margin-bottom:18px}.club-select{background:#2c2941;border:1px solid var(--border);color:#dfd7f6;border-radius:9px;width:100%;padding:13px;margin:10px 0 16px;font:inherit}.welcome-image{width:100%;display:block;border-radius:10px 10px 0 0;max-height:320px;object-fit:cover}.club-art{min-height:175px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:10px 10px 0 0;background:radial-gradient(ellipse at 40% 30%,#613356,transparent 68%),linear-gradient(135deg,#123b44,#292443);border:1px solid #79557945}.club-art .art-symbol{font-size:55px;line-height:1.2}.club-art strong{font-size:28px;letter-spacing:4px;margin:12px 0 5px}.club-art small{font-size:9px;letter-spacing:5px;color:#e1a2bf}.message-card{background:#2b2b3e;border-radius:10px;overflow:hidden;margin-bottom:8px}.message-copy{padding:18px;font-size:16px;line-height:1.55;white-space:pre-wrap}.telegram-buttons{display:grid;gap:6px}.telegram-buttons button,.telegram-buttons a{width:100%;text-align:center;padding:17px 12px;border:1px solid #45455966;border-radius:7px;background:#39394980;color:#f4f0fb;font-size:17px;text-decoration:none;font-weight:600}.telegram-buttons button:hover,.telegram-buttons a:hover{background:#48405a}.player-title{font-size:27px;text-align:center;margin:25px 0 10px;font-weight:600}.player-sub{text-align:center;color:var(--muted);line-height:1.7;font-size:13px;margin:0 0 20px}.balance-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.balance-card{padding:19px;background:var(--panel);border:1px solid var(--line);border-radius:10px}.balance-card small{color:var(--muted)}.balance-card strong{display:block;font-size:23px;margin-top:9px}.wheel-frame{position:relative;width:min(100%,350px);aspect-ratio:1;margin:26px auto;filter:drop-shadow(0 10px 22px #0f0c2560)}.wheel-frame canvas{width:100%;height:100%;border-radius:50%;border:8px solid #4f456d;outline:2px solid #a28bce;transition:transform 4.8s cubic-bezier(.12,.7,.16,1)}.wheel-pointer{position:absolute;z-index:2;left:calc(50% - 13px);top:-9px;width:0;height:0;border-left:13px solid transparent;border-right:13px solid transparent;border-top:29px solid #f9d8aa;filter:drop-shadow(0 3px 2px #0005)}.wheel-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:60px;height:60px;border-radius:50%;background:#282338;border:3px solid #ac8fcd;display:grid;place-items:center;font-size:25px;pointer-events:none}.spin-button{display:block;width:100%;padding:17px!important;font-size:16px}.player-tabs{display:flex;gap:7px;margin:27px 0 16px}.player-tabs button{flex:1;padding:10px;font-size:13px}.player-tabs button.active{background:#7360df24;border-color:#746292}.prize-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.prize-card{border:1px solid var(--line);border-radius:9px;background:var(--panel);padding:16px;min-height:132px}.prize-card .prize-emoji{font-size:27px;margin:0 0 12px}.prize-card strong{font-size:13px;display:block;line-height:1.5}.prize-card small{font-size:11px;color:var(--muted);display:block;margin-top:9px}.player-back{border:0;padding:7px;color:var(--muted);font-size:13px}.win-card{padding:18px;border:1px solid var(--line);background:var(--panel);border-radius:9px;margin-bottom:12px}.win-card p{color:var(--muted);font-size:13px;line-height:1.6}.win-card strong{font-size:15px}.win-card code{display:block;padding:13px;background:var(--deep);margin:14px 0;font-size:17px;text-align:center;border:1px dashed #9984cc;border-radius:5px}.win-card img{width:70px;height:70px;object-fit:cover;border-radius:6px;margin-bottom:10px}.win-card a{display:inline-block;margin-top:7px}.result-content{text-align:center;padding:8px 10px}.result-content .result-symbol{font-size:57px;margin-bottom:18px}.result-content p{line-height:1.8;color:#bcb2d3}.result-content button{width:100%;margin-top:20px}.result-content code{display:block;font-size:23px;margin:18px;border:1px dashed var(--purple);padding:16px}.player-body textarea{width:100%;min-height:170px;background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:15px;color:var(--text);font:inherit;margin-bottom:16px}.player-body .hint{text-align:center}.player-section-image{width:100%;max-height:270px;object-fit:cover;border-radius:8px;margin:10px 0}.player-text{white-space:pre-wrap;line-height:1.8;color:#d4cfe3;margin:22px 0}.hr{height:1px;background:var(--line);margin:25px 0}.preview-prompt{text-align:center;padding:25px}.visually-hidden{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}
.upload label{position:relative}.upload input[type=file]{position:absolute;width:1px;max-width:1px;height:1px;min-height:0;padding:0;border:0;opacity:0;overflow:hidden;left:0;top:0}.welcome-image{max-height:none;aspect-ratio:1;object-fit:contain}.brand-mark img{width:100%;height:100%;object-fit:cover;border-radius:10px}
@media(min-width:1800px){.section-grid{grid-template-columns:240px 400px 300px}.five{grid-template-columns:repeat(5,240px)}}
@media(max-width:1200px){.layout{grid-template-columns:190px minmax(0,1fr)}.workspace{padding:26px 22px}.panel{padding:22px}.five{grid-template-columns:repeat(3,minmax(0,1fr))}.four{grid-template-columns:repeat(2,minmax(0,1fr))}.split-lists{grid-template-columns:1fr}.section-grid{grid-template-columns:.8fr 1.3fr 1fr;gap:15px}.topbar{padding:0 22px}.top-actions{gap:10px}.top-actions .muted{display:none}}
@media(max-width:900px){.layout{display:block}.sidebar{flex-direction:row;overflow-x:auto;padding:12px;border-right:0;border-bottom:1px solid var(--line);gap:5px}.nav-button{white-space:nowrap;padding:10px 13px;font-size:12px}.nav-button span:first-child{font-size:16px;min-width:auto}.nav-caption,.sidebar-foot,.nav-button.active:after{display:none}.workspace{padding:24px 18px}.section-grid{grid-template-columns:1fr 1.4fr}.section-grid>.field:last-child{grid-column:1/-1}.upload{min-height:160px}.topbar{height:70px}.two{grid-template-columns:1fr}.top-actions .badge{display:none}.panel{padding:22px}.three{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.topbar{padding:0 15px}.brand{font-size:16px}.brand-mark{width:33px;height:33px}.top-actions{gap:3px}.top-actions .small{font-size:11px;padding:8px}.workspace{padding:22px 12px 40px}.page-head h1{font-size:21px}.page-head{align-items:flex-start}.page-head button{padding:10px;font-size:12px}.page-head .subheading{line-height:1.6}.panel{padding:20px 16px}.section-grid,.three,.four,.five{grid-template-columns:1fr}.section-grid .field:last-child{grid-column:auto}.field textarea{min-height:150px}.section-extra{padding-left:12px}.grid{gap:16px}.panel-head h2{font-size:17px}.stats{gap:8px}.stat{padding:14px}.stat strong{font-size:24px}.stat span{font-size:10px}.inline-link-row{grid-template-columns:1fr 35px}.inline-link-row .field:nth-child(2){grid-row:2;grid-column:1}.inline-link-row .icon{grid-column:2;grid-row:1/3}.sticky-save{font-size:11px}.sticky-save button{padding:11px 12px}.login-card{padding:28px}dialog{padding:24px 18px}dialog .grid.two{grid-template-columns:1fr}.player-body #player{padding:16px 16px 65px}.connection-footer{align-items:flex-start;flex-direction:column}.search{width:140px}.player-title{font-size:25px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}.wheel-frame canvas{transition:transform .01s!important}}
td.actions{width:95px;min-width:95px;text-align:right;padding-right:10px}
.prizes-table{table-layout:fixed}
.prizes-table th,.prizes-table td{padding-left:9px;padding-right:9px}
.prizes-table th:nth-child(1){width:30%}
.prizes-table th:nth-child(2){width:27%}
.prizes-table th:nth-child(3){width:13%}
.prizes-table th:nth-child(4){width:18%}
.prizes-table th:nth-child(5){width:12%}
.prizes-table td:first-child{max-width:none;overflow-wrap:anywhere}
.prizes-table .badge{white-space:normal;text-align:center;line-height:1.2}
.prizes-table td.actions{width:auto;min-width:0;padding-left:3px;padding-right:3px}
.prizes-table td.actions .icon{padding:4px;font-size:18px}
.prizes-table{display:block;width:100%;overflow:visible}
.prizes-table thead,.prizes-table tbody{display:block;width:100%}
.prizes-table thead tr,.prizes-table tbody tr{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1.15fr) 54px 76px 58px;align-items:center;width:100%;gap:0}
.prizes-table th,.prizes-table td{width:auto!important;min-width:0;overflow-wrap:anywhere}
.prizes-table td.actions{display:flex;align-items:center;justify-content:flex-end;gap:0}
.prizes-table{display:table;table-layout:fixed;width:100%;overflow:visible}
.prizes-table thead{display:table-header-group}
.prizes-table tbody{display:table-row-group}
.prizes-table tr{display:table-row}
.prizes-table th,.prizes-table td{display:table-cell}
.prizes-table th:nth-child(3){white-space:nowrap}
.prizes-table td.actions{display:table-cell;width:12%!important;min-width:0;text-align:right;padding-left:3px;padding-right:3px}
.prizes-table{border-collapse:collapse;border-spacing:0}
.prizes-table tbody tr{background:var(--deep)}
.prizes-table tbody td{background:transparent}
.prizes-table tbody tr td:first-child{border-radius:6px 0 0 6px}
.prizes-table tbody tr td:last-child{border-radius:0 6px 6px 0}
.prizes-table tbody td{border-bottom:0!important}
.prizes-table tbody tr{border-bottom:1px solid var(--line)}
.prizes-table tbody tr:last-child{border-bottom:0}
.prizes-table tbody tr:not(:last-child){box-shadow:inset 0 -1px 0 var(--line)}
.prizes-table tbody tr td:first-child,.prizes-table tbody tr td:last-child{border-radius:0}
.split-lists{grid-template-columns:repeat(2,minmax(0,1fr))}
.ticket-layout{display:grid;grid-template-columns:minmax(230px,320px) minmax(0,1fr);gap:16px;min-height:540px}.ticket-list{max-height:650px;overflow-y:auto;border:1px solid var(--line);border-radius:8px}.ticket-list-item{display:grid;grid-template-columns:1fr auto;gap:6px;width:100%;padding:16px;text-align:left;border:0;border-bottom:1px solid var(--line);border-radius:0;background:var(--deep);color:var(--text)}.ticket-list-item:hover,.ticket-list-item.active{background:#39354f}.ticket-list-item strong{font-size:13px}.ticket-list-item small,.ticket-preview{grid-column:1/-1;color:var(--muted);font-size:12px}.ticket-preview{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ticket-chat{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--deep)}.ticket-chat-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px;border-bottom:1px solid var(--line)}.ticket-chat-head small{display:block;color:var(--muted);margin-top:5px}.chat-messages{display:flex;flex-direction:column;gap:12px;flex:1;max-height:510px;min-height:360px;overflow-y:auto;padding:18px}.chat-bubble{max-width:85%;padding:13px 16px;border-radius:13px;background:#38364f;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.chat-bubble.outgoing{align-self:flex-end;background:#5a4c9b}.chat-bubble.incoming{align-self:flex-start}.chat-bubble small{display:block;color:#d2cae1;font-size:11px;margin-top:8px}#ticket-form{display:flex;gap:10px;padding:15px;border-top:1px solid var(--line)}#ticket-reply{flex:1;min-height:75px;max-height:180px;resize:vertical;background:var(--panel);border:1px solid var(--border);border-radius:7px;padding:10px;color:var(--text);font:inherit}#ticket-form button{align-self:flex-end}@media(max-width:850px){.ticket-layout{grid-template-columns:1fr}.ticket-list{max-height:220px}.chat-messages{min-height:300px}}
.monitor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.monitor-grid .panel{min-width:0}.monitor-domain{display:flex;flex-direction:column;align-items:flex-start;gap:9px;background:var(--deep);padding:16px;border-radius:7px}.monitor-domain small{color:var(--muted);line-height:1.5}.monitor-error{color:#ffb1bf;overflow-wrap:anywhere;white-space:pre-wrap}@media(max-width:700px){.monitor-grid{grid-template-columns:1fr}#ticket-form{flex-direction:column}#ticket-form button{align-self:stretch}}
/* Telegram wheel presentation. Game rules and interactions are unchanged. */
.player-body {
  --bg: #0b1025; --panel: #191f3b; --deep: #10162d;
  --border: #454269; --line: #333957; --text: #f5f2ff;
  --muted: #a5a9ca; --purple: #8046ee; --purple-light: #c398ff;
  --green: #63dfba; --pink: #d748b4;
  min-height: 100vh;
  background: radial-gradient(ellipse at 50% 0, #44255544, transparent 55%), #080d20;
  color: var(--text); font-family: 'Segoe UI', Arial, sans-serif;
}
.player-body #player {
  max-width: 520px; padding: 23px 23px calc(42px + env(safe-area-inset-bottom));
  background: radial-gradient(ellipse at 80% 10%, #65245a1c, transparent 42%), linear-gradient(160deg, #14182e, #0d1428);
}
.player-body .player-header { padding-bottom: 19px; margin-bottom: 25px; border-bottom: 1px solid #34334f; }
.player-body .player-header .brand { font-size: 19px; font-weight: 700; letter-spacing: .4px; gap: 11px; }
.player-body .brand-mark { width: 40px; height: 40px; border-radius: 11px; overflow: hidden; background: #5c2b6638; border-color: #a666bd70; box-shadow: 0 0 15px #a144e71b; }
.player-body .brand-mark img { border-radius: 9px; }
.player-body .player-demo { color: #bbafd6; border-color: #69578b; background: #6a398514; border-radius: 8px; font-size: 10px; padding: 8px 10px; }
.player-body .player-title { font-size: 30px; letter-spacing: -.8px; font-weight: 750; margin: 0 0 11px; color: #f5edff; }
.player-body .player-sub { font-size: 13px; line-height: 1.75; color: #a9a8ca; margin-bottom: 21px; }
.player-body .club-select {
  min-height: 49px; margin: 0 0 12px; padding: 12px 14px; font-size: 14px;
  background: #1c203a; border: 1px solid #6f5094; border-radius: 10px;
  color: #eae3f7; box-shadow: inset 0 1px 0 #cab1f308, 0 3px 18px #090c2730;
}
.admin-body .public-access-panel { --access-border: #393754; --access-muted: #bbb8d1; }
.admin-body .public-access-auto { color: var(--access-muted); font-size: 13px; line-height: 1.5; }
.admin-body .public-access-layout { display: grid; grid-template-columns: minmax(0,1.3fr) minmax(0,1fr); gap: 24px; }
.admin-body .public-access-current { min-width: 0; }
.admin-body .public-access-current > .badge { font-size: 15px; padding: 7px 12px; }
.admin-body .public-access-url { display: block; width: fit-content; max-width: 100%; min-height: 44px; margin-top: 8px; padding: 6px 0; color: #f1edff; font-size: 19px; font-weight: 600; line-height: 1.55; overflow-wrap: anywhere; text-decoration: underline; text-underline-offset: 4px; scroll-margin-top: 150px; touch-action: manipulation; }
.admin-body .public-access-url:hover { text-decoration-thickness: 2px; }
.admin-body .public-access-url:focus-visible { outline: 2px solid #c9b8ff; outline-offset: 5px; border-radius: 3px; }
.admin-body .public-access-current .hint { color: var(--access-muted); text-align: left; max-width: 58ch; line-height: 1.65; margin: 12px 0 0; }
.admin-body .public-access-meta { display: grid; align-content: start; gap: 16px; margin: 0; }
.admin-body .public-access-meta dt { font-size: 12px; color: var(--access-muted); margin-bottom: 6px; }
.admin-body .public-access-meta dd { font-size: 14px; line-height: 1.5; margin: 0; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.admin-body .public-access-domains { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--access-border); }
.admin-body .public-access-domain { min-width: 0; }
.admin-body .public-access-domain > div { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.admin-body .public-access-domain strong { font-size: 13px; font-weight: 500; }
.admin-body .public-access-domain p { margin: 8px 0 0; color: var(--access-muted); font-size: 13px; line-height: 1.55; overflow-wrap: anywhere; }
@media(max-width:700px){.admin-body .public-access-layout,.admin-body .public-access-domains{grid-template-columns:1fr;gap:18px}.admin-body .public-access-panel>.panel-head{align-items:flex-start;flex-direction:column;gap:10px}.admin-body .public-access-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-body .public-access-url{font-size:17px}}
@media(max-width:380px){.admin-body .public-access-meta{grid-template-columns:1fr}}
.player-body .club-select option { background: #1c203a; }
.player-body .club-switch { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin: 10px 0 20px; }
.player-body .club-switch-button { min-width: 0; min-height: 66px; padding: 11px 9px; border: 1px solid #594570; border-radius: 12px; background: #1c203a; color: #b4afca; font-size: 13px; line-height: 1.55; font-weight: 500; overflow-wrap: anywhere; }
.player-body .club-switch-button[aria-pressed="true"] { background: linear-gradient(135deg,#61368e,#413471); color: #fff; border-color: #c98bef; box-shadow: inset 0 0 0 1px #c98bef33,0 3px 16px #a040bd24; }
.player-body .club-switch-button:focus-visible { outline: 2px solid #e4b3ff; outline-offset: 3px; }
.player-body .club-switch:has(.club-switch-button:only-child) { grid-template-columns: 1fr; }
.player-body .wheel-unconfigured { margin: 28px 0; padding: 38px 20px; border: 1px solid #594570; border-radius: 16px; background: #1c203a; text-align: center; }
.player-body .wheel-unconfigured strong { color: #f4eaff; font-size: 18px; }
.player-body .wheel-unconfigured p { color: #a9a8ca; font-size: 13px; line-height: 1.7; margin: 12px 0 0; }
.player-body .wheel-frame { width: min(100%, 350px); margin: 28px auto 27px; filter: none; isolation: isolate; }
.player-body .wheel-frame:before {
  content: ''; position: absolute; inset: -9px; border-radius: 50%; z-index: -1;
  border: 1px solid #b270e98c; background: #18162b;
  box-shadow: 0 0 0 5px #c986f80b, 0 0 28px #9d43e329, inset 0 0 13px #a456ef24;
}
.player-body .wheel-frame canvas { position: relative; border: 5px solid #211a36; outline: 1px solid #e4b3ff8a; box-shadow: inset 0 0 0 2px #b570eb, 0 10px 26px #02071760; }
.player-body .wheel-pointer { top: -11px; left: calc(50% - 13px); border-top: 28px solid #ffd5f7; z-index: 3; filter: drop-shadow(0 0 5px #dd5ce4) drop-shadow(0 3px 2px #08051590); }
.player-body .wheel-center { width: 70px; height: 70px; z-index: 2; padding: 5px; background: #0e1225; border: 2px solid #cc8df3; box-shadow: 0 0 0 5px #1b172eb3, 0 0 16px #c963ef45; overflow: hidden; }
.player-body .wheel-center img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
.player-body button { border-radius: 9px; border-color: #49405f; background: #1a2038; }
.player-body button:hover { background: #27233f; border-color: #9c70c9; }
.player-body button.primary { color: #fff; background: linear-gradient(110deg, #bf31d6, #7139ef); border: 1px solid #c47aff; box-shadow: inset 0 1px 0 #ffd0ff28, 0 6px 22px #7938d336; font-weight: 650; }
.player-body button.primary:hover { background: linear-gradient(110deg, #d141e4, #8148f8); }
.player-body .spin-button { min-height: 54px; padding: 15px !important; font-size: 15px; border-radius: 11px; }
.player-body button:disabled { opacity: .45; box-shadow: none; }
.player-body :is(button, a, input, select, textarea):focus-visible { outline: 2px solid #c18cf5; outline-offset: 3px; }
.player-body .hint { color: #8e98bb; font-size: 11px; line-height: 1.65; }
.player-body .spin-button + .hint { margin: 13px 0 0; }
.player-body .player-tabs { padding: 5px; gap: 4px; margin: 25px 0 17px; border: 1px solid #363655; border-radius: 11px; background: #171c33; }
.player-body .player-tabs button { border: 1px solid transparent; background: transparent; color: #acb0cf; border-radius: 7px; font-size: 12px; padding: 11px 8px; font-weight: 500; }
.player-body .player-tabs button.active { color: #f6eaff; border-color: #8e5ebd; background: linear-gradient(110deg, #61318d70, #40337655); box-shadow: inset 0 0 14px #b366e91c; }
.player-body .prize-list { gap: 12px; }
.player-body .prize-card { position: relative; padding: 17px 15px; min-height: 150px; border-radius: 11px; background: linear-gradient(140deg, #20223c, #171e35); border: 1px solid #504165; box-shadow: inset 0 1px 0 #ba99ec10; overflow: hidden; }
.player-body .prize-card:nth-child(3n + 2) { border-color: #693e60; }
.player-body .prize-card:nth-child(3n) { border-color: #3d5275; }
.player-body .prize-card .prize-emoji { display: grid; place-items: center; width: 43px; height: 43px; margin: 0 0 13px; font-size: 26px; border: 1px solid #9671bd35; border-radius: 10px; background: #8055a418; }
.player-body .prize-card img { display: block; width: 43px; height: 43px; margin-bottom: 13px; object-fit: contain; border-radius: 9px; }
.player-body .prize-card strong { font-size: 12px; line-height: 1.5; font-weight: 600; color: #eee9fa; overflow-wrap: anywhere; }
.player-body .prize-card small { display: inline-flex; margin-top: 11px; color: #c4b4e3; padding: 3px 7px; border: 1px solid #70579055; border-radius: 6px; background: #67479215; font-size: 10px; }
.player-body .win-card { border-radius: 11px; padding: 20px; border-color: #50436a; background: linear-gradient(135deg, #20223c, #151e34); box-shadow: 0 4px 15px #080d202b; }
.player-body .win-card p { font-size: 12px; color: #a7b0ce; line-height: 1.7; }
.player-body .win-card strong { font-size: 15px; font-weight: 650; line-height: 1.5; }
.player-body .win-card code { padding: 14px 10px; background: #10172e; border-color: #ab79d8; color: #edd6ff; border-radius: 9px; font-size: 18px; overflow-wrap: anywhere; }
.player-body .badge { border-radius: 6px; padding: 5px 9px; letter-spacing: 0; background: #71398318; }
.player-body .badge.green { color: #67e1bf; border-color: #399a7f64; background: #143c333d; }
.player-body .badge.gray { color: #b0b5ce; border-color: #525b785c; background: #4b526418; }
.player-body .badge.orange { color: #f4c783; background: #9a6b211b; }
.player-body .empty { background: #161c32; border: 1px dashed #534563; border-radius: 11px; padding: 38px 18px; color: #a6a7c8; font-size: 13px; }
.player-body .notice { border-color: #af68da; color: #c8c2de; background: #713b8b15; font-size: 12px; border-radius: 0 9px 9px 0; }
.player-body .notice.warn { color: #e5c48e; border-color: #d3a365; background: #82602119; }
.player-body .preview-prompt { padding: 32px 10px; }
.player-body .preview-prompt h1 { font-size: 26px; font-weight: 700; }
.player-body .player-text { font-size: 13px; color: #b0b5d0; }
.player-body dialog { width: 430px; padding: 28px 24px; border-radius: 17px; border: 1px solid #a76ace; background: radial-gradient(ellipse at 50% 0, #6c285934, transparent 65%), #171e35; box-shadow: 0 22px 70px #030715a0, 0 0 35px #9340cc20; }
.player-body dialog::backdrop { background: #05091bd6; backdrop-filter: blur(7px); }
.player-body .result-content { padding: 6px; }
.player-body .result-content .result-symbol { width: 88px; height: 88px; display: grid; place-items: center; margin: 0 auto 21px; font-size: 47px; border: 1px solid #9c66b961; border-radius: 24px; background: #8b44881c; }
.player-body .result-content h2 { font-size: 24px; font-weight: 750; margin: 0 0 14px; }
.player-body .result-content h3 { font-size: 16px; font-weight: 600; line-height: 1.5; }
.player-body .result-content p { font-size: 13px; line-height: 1.7; color: #b4bbd4; }
.player-body .result-content code { color: #f0d7ff; background: #10172e; border-color: #b080d6; border-radius: 9px; margin: 19px 0; padding: 13px; overflow-wrap: anywhere; }
.player-body .result-content button { margin-top: 18px; min-height: 46px; }
.player-body #toast { color: #f3e9fd; background: #29233e; border-color: #9666b7; border-radius: 10px; box-shadow: 0 8px 24px #03071470; font-size: 12px; }
@media (min-width: 650px) {
  .player-body #player { margin: 24px auto; min-height: calc(100vh - 48px); border: 1px solid #49415e; border-radius: 20px; box-shadow: 0 20px 70px #0005; }
}
@media (max-width: 380px) {
  .player-body #player { padding-left: 18px; padding-right: 18px; }
  .player-body .player-title { font-size: 27px; }
  .player-body .player-header .brand { font-size: 17px; }
  .player-body .wheel-center { width: 62px; height: 62px; }
  .player-body .prize-card { padding: 15px 12px; }
}
/* Admin presentation only. */
.admin-body .log-filters { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 15px; margin-bottom: 20px; }
.admin-body .log-search { grid-column: span 2; }
.admin-body .log-filter-actions { grid-column: span 2; display: flex; align-items: end; justify-content: flex-end; gap: 10px; }
.admin-body .logs-table { table-layout: fixed; }
.admin-body .logs-table th:first-child { width: 150px; }
.admin-body .logs-table th:nth-child(2) { width: 160px; }
.admin-body .logs-table td { vertical-align: top; }
.admin-body .log-time { font-variant-numeric: tabular-nums; }
.admin-body .log-event { overflow-wrap: anywhere; }
.admin-body .log-event > code { display: block; margin-bottom: 5px; color: #c6a7ec; font-size: 11px; }
.admin-body .log-details { margin-top: 10px; }
.admin-body .log-details summary { cursor: pointer; color: #b4a3dc; font-size: 12px; padding: 3px 0; }
.admin-body .log-details summary:focus-visible { outline: 2px solid #b58aff; outline-offset: 3px; }
.admin-body .log-details pre { margin: 9px 0 0; padding: 12px; border: 1px solid #333d5c; border-radius: 8px; background: #0d1428; color: #bcc6e2; max-height: 340px; overflow: auto; white-space: pre-wrap; overflow-wrap: anywhere; font-size: 11px; line-height: 1.6; }
.admin-body .log-footer { display: flex; justify-content: space-between; align-items: center; gap: 15px; margin-top: 15px; }
.admin-body .badge.red { color: #ffb2c6; background: #a33c5126; border-color: #b4576e70; }
@media(max-width:900px){.admin-body .log-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-body .logs-table th:first-child{width:110px}.admin-body .logs-table th:nth-child(2){width:120px}}
@media(max-width:600px){.admin-body .log-filters{grid-template-columns:minmax(0,1fr)}.admin-body .log-search,.admin-body .log-filter-actions{grid-column:auto}.admin-body .log-filter-actions{justify-content:flex-start}.admin-body .logs-table{min-width:500px}.admin-body .log-footer{flex-wrap:wrap}}
.admin-body {
  min-height: 100vh;
  --bg: #0b1025;
  --panel: #161c36;
  --deep: #10162d;
  --border: #343b60;
  --line: #2a3150;
  --text: #f1f0fb;
  --muted: #9ca3c6;
  --purple: #7c46ed;
  --purple-light: #bf9cff;
  --pink: #d84cad;
  --green: #40d9b3;
  --radius: 13px;
  background: radial-gradient(ellipse at 84% 0, #4c207f24, transparent 44%), var(--bg);
  color: var(--text);
  font-family: 'Segoe UI', Arial, sans-serif;
  font-size: 14px;
  line-height: 1.45;
}
.admin-body .ui-icon { width: 20px; height: 20px; flex: 0 0 auto; vertical-align: middle; }
.admin-body button { border-radius: 8px; padding: 11px 16px; border-color: var(--border); background: #1b2340; font-weight: 500; transition: background .15s, border-color .15s, box-shadow .15s; }
.admin-body button:hover { background: #273054; border-color: #64538e; }
.admin-body button.primary {
  display: inline-flex; justify-content: center; align-items: center; gap: 9px;
  background: linear-gradient(110deg, #b32cdb, #6c39ed);
  border-color: #b277fa; color: #fff;
  box-shadow: inset 0 1px 0 #ffffff28, 0 4px 18px #7935e22b;
}
.admin-body button.primary:hover { background: linear-gradient(110deg, #c63be9, #7b48f7); box-shadow: 0 4px 22px #913aeb48; }
.admin-body button.danger { background: #b7315840; border-color: #a143685e; color: #ffb2c8; }
.admin-body button.danger:hover { background: #b7315870; border-color: #c66483; }
.admin-body button.small { padding: 8px 12px; font-size: 12px; }
.admin-body button.icon { display: inline-flex; align-items: center; justify-content: center; width: 33px; height: 33px; padding: 6px; border: 1px solid transparent; background: transparent; color: #9ea7ce; }
.admin-body button.icon:hover { color: #d6bdff; background: #b690ff13; border-color: #9278c344; }
.admin-body button.link { padding: 5px 0; background: transparent; }
.admin-body button:disabled { opacity: .5; }
.admin-body :is(button, a, input, select, textarea):focus-visible { outline: 2px solid #b58aff; outline-offset: 3px; }
.admin-body .topbar {
  position: sticky; top: 0; z-index: 12;
  height: 72px; padding: 0 28px; gap: 20px;
  background: linear-gradient(100deg, #0c1127f7, #17112df7);
  border-bottom: 1px solid #42315d; box-shadow: 0 4px 22px #05081648;
  backdrop-filter: blur(16px);
}
.admin-body .brand { font-size: 18px; letter-spacing: .3px; gap: 11px; }
.admin-body .brand small { font-size: 9px; letter-spacing: 1.3px; color: #8c95b9; }
.admin-body .brand-mark { width: 40px; height: 40px; border: 1px solid #9755b879; border-radius: 10px; background: #6e275825; color: #f47ed0; box-shadow: inset 0 0 18px #b132cf14; overflow: hidden; }
.admin-body .brand-mark img { border-radius: 8px; }
.admin-body .top-actions { gap: 21px; }
.admin-body .top-actions > .badge { padding: 9px 13px; border-radius: 8px; background: #102c2b35; font-size: 12px; letter-spacing: 0; }
.admin-body .top-actions .dot { width: 7px; height: 7px; box-shadow: 0 0 9px currentColor; }
.admin-body .admin-identity { display: flex; gap: 10px; align-items: center; font-size: 12px; }
.admin-body .admin-identity .muted { color: #dddff3; }
.admin-body .admin-avatar { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; color: #e8d7ff; background: linear-gradient(135deg, #692e9b, #283a73); border: 1px solid #8663b380; }
.admin-body .layout { grid-template-columns: 210px minmax(0, 1fr); min-height: calc(100vh - 72px); }
.admin-body .sidebar {
  position: sticky; top: 72px; align-self: start; height: calc(100vh - 72px);
  padding: 25px 13px 18px; background: linear-gradient(180deg, #0c1228, #0d122a);
  border-right: 1px solid #292849; gap: 8px;
}
.admin-body .nav-caption { font-size: 9px; letter-spacing: 1.9px; margin: 5px 12px 12px; color: #7883aa; }
.admin-body .nav-button { min-height: 47px; font-size: 12px; gap: 12px; padding: 12px; color: #bdc3e0; border: 1px solid transparent; background: transparent; }
.admin-body .nav-button span:first-child { display: flex; min-width: 21px; }
.admin-body .nav-button:hover { background: #25274a60; border-color: #62518260; color: #eee8ff; }
.admin-body .nav-button.active { color: #fff; border-color: #8259cb; background: linear-gradient(110deg, #642dc86b, #342e7655); box-shadow: inset 0 0 17px #8446f326, 0 0 14px #8446f318; }
.admin-body .nav-button.active .ui-icon { color: #d5b7ff; }
.admin-body .nav-button.active:after { width: 4px; height: 4px; background: #ca9cff; box-shadow: 0 0 7px #b46cff; }
.admin-body .sidebar-foot { padding: 19px 12px 0; border-top: 1px solid #262c48; font-size: 10px; color: #7b85a9; }
.admin-body .workspace { margin: 0 auto; padding: 28px 28px 48px; max-width: 1700px; }
.admin-body .page-head { margin-bottom: 23px; gap: 20px; }
.admin-body .page-intro { display: flex; align-items: center; gap: 15px; min-width: 0; }
.admin-body .page-mark { display: grid; place-items: center; width: 52px; height: 52px; flex: 0 0 auto; color: #ec89dd; background: linear-gradient(135deg, #74308038, #34206638); border: 1px solid #9954af5c; border-radius: 12px; box-shadow: inset 0 0 20px #ca56e512; }
.admin-body .page-mark .ui-icon { width: 27px; height: 27px; }
.admin-body .eyebrow { font-size: 9px; letter-spacing: 1.8px; color: #7f8bb5; margin: 0 0 4px; }
.admin-body h1 { font-size: 23px; font-weight: 650; letter-spacing: -.35px; }
.admin-body h2 { font-size: 16px; font-weight: 600; letter-spacing: -.15px; }
.admin-body h3 { font-size: 14px; font-weight: 600; }
.admin-body .subheading { margin: 5px 0 0; font-size: 12px; color: #9da6c9; line-height: 1.6; }
.admin-body .panel {
  padding: 23px; margin-bottom: 20px;
  background: linear-gradient(135deg, #191f3b, #141b33);
  border: 1px solid #333c5c; border-radius: 13px;
  box-shadow: inset 0 1px 0 #c5b8ff06, 0 7px 25px #04081b22;
}
.admin-body .panel-head { padding-bottom: 17px; margin-bottom: 20px; border-color: #343b57; gap: 16px; }
.admin-body .panel-head h2 { display: flex; align-items: center; gap: 10px; min-width: 0; }
.admin-body .panel-head h2 > .ui-icon { color: #b77df6; }
.admin-body .panel .panel { background: #111a32; padding: 20px; box-shadow: none; }
.admin-body .grid.two > .panel { display: flex; flex-direction: column; }
.admin-body .grid.two > .panel > .stack { height: 100%; }
.admin-body .grid.two > .panel > .stack > button:last-child { margin-top: auto; }
.admin-body .grid { gap: 20px; }
.admin-body .tabs { background: linear-gradient(100deg, #191b38, #161c35); border: 1px solid #323556; border-radius: 11px; padding: 5px; gap: 3px; margin-bottom: 20px; }
.admin-body .tabs button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 10px 13px; background: transparent; border: 1px solid transparent; font-size: 12px; color: #a9b1d2; }
.admin-body .tabs .ui-icon { width: 17px; height: 17px; }
.admin-body .tabs button.active { color: #f6efff; background: linear-gradient(110deg, #7034bc75, #31276775); border-color: #9664da; box-shadow: inset 0 0 12px #ab55f424, 0 0 12px #8a38e31c; }
.admin-body .tabs button:hover { color: #e1d3ff; background-color: #5c438127; }
.admin-body .settings-content { display: grid; grid-template-columns: minmax(0, 1fr) 245px; gap: 23px; align-items: start; }
.admin-body .settings-fields { min-width: 0; }
.admin-body .settings-basics { margin-bottom: 20px; }
.admin-body .settings-message { grid-template-columns: minmax(0, .85fr) minmax(0, 1.25fr); }
.admin-body .settings-message textarea { min-height: 163px; }
.admin-body .settings-image { padding: 15px; background: #20244270; border: 1px solid #38395c; border-radius: 10px; }
.admin-body .field > span { display: flex; align-items: center; gap: 7px; margin-bottom: 8px; font-size: 12px; font-weight: 500; color: #d8dcef; }
.admin-body .field > span > .ui-icon { width: 15px; height: 15px; color: #b38cde; }
.admin-body .field input:not([type=checkbox]), .admin-body .field textarea, .admin-body .field select, .admin-body .search {
  background: #10172ea6; border-color: #3c4265; border-radius: 7px;
  padding: 11px 12px; min-height: 42px; color: #e1e2f5; font-size: 13px;
  box-shadow: inset 0 1px 3px #060b1b30;
}
.admin-body .field textarea { line-height: 1.65; min-height: 155px; }
.admin-body .field input::placeholder, .admin-body .field textarea::placeholder, .admin-body .search::placeholder { color: #7883aa; }
.admin-body .field input:focus, .admin-body .field textarea:focus, .admin-body .field select:focus, .admin-body .search:focus { border-color: #a57af0; box-shadow: 0 0 0 3px #8b56e514; }
.admin-body .field select option { background: #161c36; }
.admin-body .upload { min-height: 222px; padding: 9px 0 0; background: transparent; gap: 15px; }
.admin-body .upload img { width: min(100%, 213px); height: auto; aspect-ratio: 1; border-radius: 9px; border: 1px solid #6350785c; object-fit: contain; background: #0a1024; }
.admin-body .upload-symbol { display: grid; place-items: center; width: 90px; height: 90px; border: 1px dashed #7660957a; border-radius: 18px; background: #7942a411; color: #b397d9; }
.admin-body .upload-symbol .ui-icon { width: 40px; height: 40px; }
.admin-body .upload-actions { flex-wrap: wrap; justify-content: center; gap: 9px; width: 100%; }
.admin-body .upload label { display: inline-flex; justify-content: center; padding: 8px 11px; border: 1px solid #7255b8; border-radius: 7px; background: #61449a23; text-decoration: none; font-size: 12px; color: #d4c4f5; }
.admin-body .upload label:hover { border-color: #b790ec; background: #7950c639; }
.admin-body .upload label:focus-within { outline: 2px solid #b58aff; outline-offset: 3px; }
.admin-body .upload input[type=file] { width: 1px; height: 1px; min-height: 0; max-width: 1px; padding: 0; border: 0; }
.admin-body .upload-caption { font-size: 11px; line-height: 1.6; }
.admin-body .section-extra { border: 0; border-top: 1px solid #343b57; margin-top: 25px; padding: 22px 0 0; }
.admin-body .section-extra .panel-head { margin-bottom: 17px; padding-bottom: 0; border: 0; }
.admin-body .section-extra .hint { margin-bottom: 15px; }
.admin-body .five { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.admin-body .stack { gap: 18px; }
.admin-body .hint { font-size: 12px; color: #8f9abd; line-height: 1.65; }
.admin-body .switch { color: #aeb8d9; font-size: 12px; }
.admin-body .switch-box { background: #10182f; border: 1px solid #293455; border-radius: 9px; padding: 17px; min-height: 76px; font-size: 13px; gap: 14px; }
.admin-body .switch-track { width: 40px; height: 22px; background: #35354e; border: 1px solid #53506c; }
.admin-body .switch-track:after { background: #9792b1; width: 14px; height: 14px; top: 3px; left: 3px; }
.admin-body .switch input:checked + .switch-track { background: linear-gradient(100deg, #bb39e4, #7c40ed); border-color: #a978ed; box-shadow: 0 0 10px #a657e42b; }
.admin-body .switch input:checked + .switch-track:after { transform: translateX(18px); background: #fff; }
.admin-body .badge { padding: 5px 9px; background: #69409312; border-color: #7a5baf5a; border-radius: 6px; font-size: 11px; letter-spacing: 0; }
.admin-body .badge.green { color: #64e0be; border-color: #2d92795a; background: #14393135; }
.admin-body .badge.gray { color: #a6afcc; border-color: #4852727a; background: #46516b14; }
.admin-body .badge.orange { color: #efc27c; background: #a76a1715; border-color: #9f7c3a60; }
.admin-body .table-wrap { border: 1px solid #2b3553; border-radius: 9px; background: #10172d; }
.admin-body table { border-collapse: collapse; width: 100%; font-size: 12px; }
.admin-body th { padding: 13px 12px; font-size: 11px; font-weight: 500; background: #1b233e; color: #9eabce; border-bottom: 1px solid #33405d; vertical-align: middle; }
.admin-body td { padding: 15px 12px; background: transparent; border-color: #2c3652; line-height: 1.5; vertical-align: middle; }
.admin-body tbody tr:hover { background: #302b491f; }
.admin-body td .sub { color: #8391b8; margin-top: 5px; line-height: 1.5; }
.admin-body td.actions { width: 80px; min-width: 80px; white-space: nowrap; }
.admin-body .prizes-table { display: table; table-layout: fixed; border-collapse: collapse; }
.admin-body .prizes-table thead { display: table-header-group; }
.admin-body .prizes-table tbody { display: table-row-group; }
.admin-body .prizes-table tr { display: table-row; background: transparent; box-shadow: none; border: 0; }
.admin-body .prizes-table th, .admin-body .prizes-table td { display: table-cell; width: auto !important; padding: 14px 10px; overflow-wrap: normal; }
.admin-body .prizes-table th:nth-child(1) { width: 32% !important; }
.admin-body .prizes-table th:nth-child(2) { width: 24% !important; }
.admin-body .prizes-table th:nth-child(3) { width: 11% !important; }
.admin-body .prizes-table th:nth-child(4) { width: 17% !important; }
.admin-body .prizes-table th:nth-child(5) { width: 16% !important; }
.admin-body .prizes-table tbody td { border-bottom: 1px solid #2c3652 !important; border-radius: 0; }
.admin-body .prizes-table tbody tr:last-child td { border-bottom: 0 !important; }
.admin-body .prizes-table .badge { white-space: normal; line-height: 1.35; }
.admin-body .prizes-table td.actions { text-align: right; padding: 10px 6px; }
.admin-body .prizes-table td.actions .icon { width: 28px; height: 31px; padding: 4px; }
.admin-body .prizes-table .ui-icon { width: 17px; height: 17px; }
.admin-body .empty { border: 1px dashed #364266; padding: 66px 24px; background: #10182d; border-radius: 9px; color: #8898bd; font-size: 13px; }
.admin-body .empty-symbol { color: #7b5fb7; font-size: 30px; }
.admin-body .search { max-width: 225px; font-size: 12px; }
.admin-body .stats { gap: 18px; margin-bottom: 22px; }
.admin-body .stat { padding: 19px 23px; background: linear-gradient(120deg, #20213d, #141d35); border: 1px solid #3b3c60; border-radius: 11px; position: relative; overflow: hidden; }
.admin-body .stat:before { content: ''; position: absolute; width: 3px; top: 20px; bottom: 20px; left: 0; border-radius: 5px; background: linear-gradient(#c360e5, #705ee8); }
.admin-body .stat span { color: #9eabce; font-size: 12px; }
.admin-body .stat strong { font-size: 29px; font-weight: 600; margin-top: 7px; color: #f0ebff; font-variant-numeric: tabular-nums; }
.admin-body .sticky-save { background: #11182eed; padding: 12px 17px; border: 1px solid #424467; border-radius: 10px; bottom: 14px; box-shadow: 0 8px 24px #03071340; }
.admin-body .sticky-save .muted { font-size: 12px; }
.admin-body .notice { background: #53348417; color: #afb9db; border-color: #9b65cf; padding: 12px 16px; border-radius: 0 8px 8px 0; font-size: 12px; }
.admin-body .notice.warn { color: #e6c592; background: #80622719; border-color: #d6ad67; }
.admin-body .connection-footer { border-color: #33405b; }
.admin-body .login-page { background: radial-gradient(ellipse at 50% 25%, #7c3dae28, transparent 55%); }
.admin-body .login-card { width: 430px; padding: 36px; background: linear-gradient(135deg, #1a203d, #131b32); border: 1px solid #63507b; border-radius: 16px; box-shadow: 0 22px 80px #02061380, 0 0 35px #783bb718; }
.admin-body .login-card .brand { margin-bottom: 29px; }
.admin-body .login-card h1 { font-size: 23px; }
.admin-body .login-card form { gap: 18px; margin-top: 27px; }
.admin-body .login-card .hint { font-size: 11px; margin-top: 18px; }
.admin-body dialog { padding: 27px; border: 1px solid #765c99; border-radius: 14px; background: linear-gradient(140deg, #1a213d, #141b32); box-shadow: 0 20px 100px #020512c0, 0 0 22px #9b52e21b; }
.admin-body dialog::backdrop { background: #060b20c7; backdrop-filter: blur(6px); }
.admin-body dialog h2 { font-size: 19px; text-align: left; padding-bottom: 18px; margin-bottom: 20px; border-bottom: 1px solid #353d5c; }
.admin-body dialog .field { margin-bottom: 16px; }
.admin-body dialog .upload { padding: 15px; min-height: 160px; background: #10182f; border: 1px solid #303c5e; border-radius: 9px; }
.admin-body dialog .upload img { width: 135px; }
.admin-body dialog .upload-symbol { width: 65px; height: 65px; }
.admin-body .dialog-actions { gap: 12px; padding-top: 20px; border-top: 1px solid #353d5c; margin-top: 15px; }
.admin-body #toast { color: #f0eaff; background: #222441; border: 1px solid #8f69bd; border-radius: 10px; box-shadow: 0 8px 28px #04071870; font-size: 13px; }
.admin-body .ticket-list { border-color: #323d5c; border-radius: 10px; }
.admin-body .ticket-list-item { background: #10172e; border-radius: 0; border-bottom-color: #2b3654; }
.admin-body .ticket-list-item.active { background: #5036843b; box-shadow: inset 3px 0 0 #a469e5; }
.admin-body .ticket-list-item:hover { background: #252943; }
.admin-body .ticket-chat { border-color: #323d5c; border-radius: 10px; background: #10172e; }
.admin-body .ticket-chat-head, .admin-body #ticket-form { border-color: #303c5b; }
.admin-body .chat-bubble { background: #242e49; font-size: 13px; border: 1px solid #374261; }
.admin-body .chat-bubble.outgoing { background: linear-gradient(120deg, #573b83, #413778); border-color: #795aaa; }
.admin-body #ticket-reply { background: #171f38; border-color: #414769; font-size: 13px; }
.admin-body .monitor-domain { background: #10182f; border: 1px solid #303c5c; border-radius: 9px; }
.admin-body .monitor-error { color: #f2a0b9; font-size: 12px; line-height: 1.6; }
@media (max-width: 1400px) {
  .admin-body .split-lists { grid-template-columns: minmax(0, 1fr); }
  .admin-body .workspace { padding: 25px 23px 40px; }
  .admin-body .settings-content { grid-template-columns: minmax(0, 1fr) 220px; gap: 20px; }
}
@media (max-width: 1100px) {
  .admin-body .layout { grid-template-columns: 186px minmax(0, 1fr); }
  .admin-body .sidebar { padding-left: 9px; padding-right: 9px; }
  .admin-body .nav-button { padding: 11px 9px; font-size: 11px; gap: 9px; }
  .admin-body .settings-content { grid-template-columns: minmax(0, 1fr) 200px; }
  .admin-body .settings-basics, .admin-body .settings-message { grid-template-columns: minmax(0, 1fr); }
  .admin-body .three { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-body .five { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .admin-body .layout { display: block; }
  .admin-body .sidebar { height: auto; top: 72px; z-index: 11; padding: 9px 13px; flex-direction: row; overflow-x: auto; border-right: 0; border-bottom: 1px solid #35314e; }
  .admin-body .nav-caption, .admin-body .sidebar-foot { display: none; }
  .admin-body .nav-button { min-height: 40px; flex-shrink: 0; padding: 9px 13px; font-size: 12px; }
  .admin-body .page-head { align-items: flex-start; }
  .admin-body .workspace { padding: 23px 18px 35px; }
  .admin-body .settings-basics, .admin-body .settings-message { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-body .settings-content { grid-template-columns: minmax(0, 1fr); }
  .admin-body .settings-image { max-width: 280px; }
  .admin-body .settings-image .upload img { max-width: 245px; }
  .admin-body .two { grid-template-columns: minmax(0, 1fr); }
  .admin-body .page-mark { width: 44px; height: 44px; }
}
@media (max-width: 600px) {
  .admin-body .topbar { height: 65px; padding: 0 14px; gap: 12px; }
  .admin-body .brand { font-size: 15px; gap: 9px; }
  .admin-body .brand small { font-size: 8px; letter-spacing: .6px; }
  .admin-body .brand-mark { width: 34px; height: 34px; }
  .admin-body .top-actions { gap: 6px; }
  .admin-body .top-actions > .badge, .admin-body .admin-identity { display: none; }
  .admin-body .sidebar { top: 65px; }
  .admin-body .workspace { padding: 20px 12px 32px; }
  .admin-body .page-head { flex-wrap: wrap; gap: 15px; margin-bottom: 20px; }
  .admin-body .page-head > .primary { width: 100%; padding: 11px 15px; font-size: 12px; }
  .admin-body .page-intro { gap: 11px; }
  .admin-body .eyebrow { font-size: 8px; }
  .admin-body h1 { font-size: 21px; }
  .admin-body .panel { padding: 18px 15px; }
  .admin-body .panel-head { flex-wrap: wrap; gap: 12px; }
  .admin-body .panel-head h2 { font-size: 15px; }
  .admin-body .search { max-width: none; width: 100%; }
  .admin-body .settings-basics, .admin-body .settings-message, .admin-body .three, .admin-body .four, .admin-body .five { grid-template-columns: minmax(0, 1fr); }
  .admin-body .settings-image { max-width: none; }
  .admin-body .tabs button { padding: 9px 10px; font-size: 11px; gap: 6px; }
  .admin-body .stats { gap: 8px; }
  .admin-body .stat { padding: 14px 12px; }
  .admin-body .stat span { font-size: 10px; }
  .admin-body .stat strong { font-size: 23px; }
  .admin-body .prizes-table th, .admin-body .prizes-table td { padding: 12px 6px; font-size: 11px; }
  .admin-body .prizes-table td.actions .icon { width: 24px; }
  .admin-body .prizes-table th:nth-child(1) { width: 30% !important; }
  .admin-body .prizes-table th:nth-child(2) { width: 22% !important; }
  .admin-body .prizes-table th:nth-child(3) { width: 14% !important; }
  .admin-body .prizes-table th:nth-child(4) { width: 20% !important; }
  .admin-body .prizes-table th:nth-child(5) { width: 14% !important; }
  .admin-body .prizes-table th:nth-child(3), .admin-body .prizes-table td:nth-child(3) { padding-left: 4px; padding-right: 4px; }
  .admin-body .prizes-table td.actions .icon { display: flex; margin: 2px 0 2px auto; }
  .admin-body .prizes-table .badge { padding: 4px; font-size: 10px; }
  .admin-body .sticky-save { bottom: 8px; padding: 10px 12px; gap: 10px; }
  .admin-body .sticky-save .muted { font-size: 11px; }
  .admin-body .sticky-save button { padding: 9px 12px; font-size: 12px; }
  .admin-body .login-card { padding: 28px; }
  .admin-body dialog { padding: 23px 17px; }
  .admin-body .dialog-actions { gap: 10px; }
}
/* Domain credentials stay in their existing LANGAME card. */
.admin-body .connection-key-form{margin:0 0 24px;padding:0 0 18px;border-bottom:1px solid var(--border,#39334f);min-width:0}
.admin-body .connection-key-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.admin-body .connection-key-heading .hint{margin:0}
.admin-body .connection-key-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px}
.admin-body .connection-key-controls .field{margin:0;min-width:0}
.admin-body .connection-key-controls .field input{min-height:44px;width:100%;min-width:0}
.admin-body .connection-key-controls button{min-height:44px}
.admin-body .connection-key-feedback{min-height:1.5em;margin:8px 0 0;overflow-wrap:anywhere}
.admin-body .connection-key-feedback.key-error{color:#ffb0bf}
@media(max-width:700px){.admin-body .connection-key-controls{grid-template-columns:minmax(0,1fr)}.admin-body .connection-key-controls button{width:100%}}
