:root{--bg-900: #08090d;--bg-800: #11131a;--bg-700: #1b1e27;--line: #262a36;--text-hi: #f5f7fa;--text-mid: #c3c8d2;--text-mut: #8b909b;--brand: #8b5cf6;--brand-600: #7c3aed;--reward: #ffc83d;--danger: #ff4757;--success: #29cc7a}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;color:var(--text-hi);font-family:Inter,system-ui,sans-serif;font-size:14px;background:radial-gradient(55% 40% at 20% 0%,rgba(139,92,246,.1),transparent 60%),var(--bg-900);min-height:100vh}a,button,input,select{-webkit-tap-highlight-color:transparent}.wrap{max-width:1200px;margin:0 auto;padding:20px}.mut{color:var(--text-mut)}.small{font-size:12px}.caps{text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:600;color:var(--text-mut);display:block}.brand{color:var(--brand)}.reward{color:var(--reward)}.danger{color:var(--danger)}.ok{color:var(--success)}.logo{font-weight:800;letter-spacing:.04em;white-space:nowrap}.logo span{color:var(--brand)}.logo i{font-style:normal;color:var(--text-mut);font-size:.75em;font-weight:700}code{background:var(--bg-700);padding:2px 5px;border-radius:4px;font-size:11px}header{display:flex;align-items:center;gap:14px;margin-bottom:18px;flex-wrap:wrap}header .btn{margin-left:auto}.tabs{display:flex;gap:6px;margin-left:20px;flex-wrap:wrap;align-items:center}.tabs button{height:32px;padding:0 14px;border-radius:8px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;border:1px solid var(--line);background:transparent;color:var(--text-mut);cursor:pointer}.tabs button.on{color:var(--text-hi);border-color:var(--brand);background:#8b5cf61f}.tabs__sep{width:1px;height:22px;background:var(--line);margin:0 6px;flex:none}.panel{background:linear-gradient(180deg,#ffffff06,#fff0 40%),var(--bg-800);border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:0 1px #ffffff0a inset,0 10px 28px #00000047}.wrap>.panel{margin-bottom:16px}.cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:16px}.err{background:#ff47571f;color:var(--danger);padding:10px 14px;border-radius:10px;margin-bottom:14px;font-size:13px}.empty{text-align:center;padding:20px 0}.btn{height:40px;padding:0 18px;border:0;border-radius:9px;color:#fff;background:linear-gradient(180deg,#a674f9,var(--brand) 45%,var(--brand-600));font-weight:700;font-size:13px;cursor:pointer;white-space:nowrap;box-shadow:0 1px #ffffff59 inset,0 -2px #0000002e inset,0 4px 14px #8b5cf64d;transition:filter .15s,transform .12s,box-shadow .15s}.btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.btn.reward{background:linear-gradient(180deg,#ffe08a,var(--reward) 45%,#e0a30f);color:#1a1300;box-shadow:0 1px #ffffff80 inset,0 -2px #00000026 inset,0 4px 16px #ffc83d4d}.btn.ghost{background:transparent;border:1px solid var(--line);color:var(--text-mut);box-shadow:none}.btn.danger{background:transparent;border:1px solid rgba(255,71,87,.5);color:var(--danger);box-shadow:none}.btn.block{width:100%;margin-top:10px}.mini-btn{height:28px;padding:0 10px;font-size:11px}@media (hover: hover) and (pointer: fine){.btn:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 1px #fff6 inset,0 -2px #0000002e inset,0 6px 20px #8b5cf66b}.btn.reward:hover:not(:disabled){box-shadow:0 1px #ffffff8c inset,0 -2px #00000026 inset,0 6px 22px #ffc83d73}.btn.ghost:hover:not(:disabled){border-color:var(--brand);color:var(--text-hi);transform:none}.btn.danger:hover:not(:disabled){box-shadow:0 4px 14px #ff47572e;transform:none}.tbl tr:hover td{background:#ffffff05}.media-add:hover{border-color:var(--brand);color:var(--text-hi)}}.btn:active:not(:disabled){transform:translateY(1px)}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;margin-top:10px}.row input,.row select,.new-draw input,.new-draw select{height:38px;border-radius:9px;border:1px solid var(--line);background:var(--bg-700);color:var(--text-hi);padding:0 10px;font:inherit;min-width:0}.row input{flex:1 1 160px}.row input:focus,.row select:focus,.new-draw input:focus,.login input:focus{outline:none;border-color:var(--brand)}.field{display:flex;flex-direction:column;gap:4px;flex:0 1 130px}.field input,.field select,.field textarea{width:100%;flex:0 0 auto}input[type=file]{font-size:12px;color:var(--text-mut)}.check{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-mid)}.check input{width:16px;height:16px}input.mini{height:34px;width:150px;border-radius:8px;border:1px solid var(--line);background:var(--bg-900);color:var(--text-hi);padding:0 10px;font:inherit;font-size:12px}.new-draw{display:flex;flex-direction:column;gap:10px;margin:12px 0;padding:12px;border:1px dashed var(--line);border-radius:12px;background:#ffffff04}.new-draw>input{height:38px;border-radius:9px;border:1px solid var(--line);background:var(--bg-700);color:var(--text-hi);padding:0 10px;font:inherit}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:12px 0}.stats b{display:block;font-size:22px;margin-top:2px}.stat-row{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--bg-700);border:1px solid var(--line);border-radius:10px;padding:10px 12px}.econ{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;background:var(--bg-700);border:1px solid var(--line);border-radius:10px;padding:12px}.econ b{display:block;font-size:18px;margin-top:2px}.actions{display:flex;gap:10px;margin:12px 0;flex-wrap:wrap}.parts{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-direction:column;gap:6px;max-height:260px;overflow:auto}.parts li{display:flex;gap:10px;align-items:center;padding:6px 0;border-bottom:1px solid var(--line)}.parts .chance{margin-left:auto;color:var(--brand);font-weight:700}.log{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-direction:column;gap:4px;font-size:12px;max-height:320px;overflow:auto}.log li{color:var(--text-mut);border-bottom:1px solid var(--line);padding:4px 0}.log-panel{margin-top:16px}.pill{font-size:11px;padding:3px 8px;border-radius:6px;border:1px solid var(--line);color:var(--text-mut)}.pill.on{border-color:var(--success);color:var(--success)}.camp-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.camp-title{display:block;font-size:18px;margin:4px 0 2px}.draws,.deliveries,.flags{list-style:none;padding:0;display:flex;flex-direction:column;gap:10px;margin:14px 0 0}.draw-row,.delivery,.flag{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;background:var(--bg-700);border:1px solid var(--line);border-radius:12px;padding:12px}.draw-main{display:flex;gap:12px;align-items:flex-start;min-width:240px;flex:1}.draw-seq{font-family:ui-monospace,monospace;font-size:12px;color:var(--text-mut);padding-top:2px}.draw-meta,.delivery-meta{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.mini-progress{height:6px;border-radius:999px;background:var(--bg-900);border:1px solid var(--line);overflow:hidden;margin:4px 0 2px}.mini-progress div{height:100%;background:linear-gradient(90deg,var(--brand-600),var(--brand))}.draw-actions,.delivery-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.flag b{display:block;font-family:ui-monospace,monospace;font-size:13px}.token-banner{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;border-color:var(--reward);box-shadow:0 0 24px #ffc83d2e}.token-banner code{display:block;margin-top:6px;font-size:12px;color:var(--reward);overflow-wrap:anywhere}.tblwrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:12px}.tbl{width:100%;border-collapse:collapse;font-size:12px;min-width:640px}.tbl th{text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-mut);font-weight:600;padding:8px 10px;border-bottom:1px solid var(--line)}.tbl td{padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:middle}.tbl tr.bad td{background:#ff475712}.tbl .nowrap{white-space:nowrap}.tbl .json{max-width:380px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,monospace;font-size:11px}.media-mgr{width:100%;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.media-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.media-item{position:relative;width:84px;height:64px;border-radius:10px;overflow:hidden;border:1px solid var(--line)}.media-item img,.media-item video{width:100%;height:100%;object-fit:cover;display:block}.media-del{position:absolute;top:3px;right:3px;width:20px;height:20px;border-radius:50%;background:#08090dd9;border:1px solid var(--line);color:var(--danger);cursor:pointer;font-size:13px;line-height:1}.media-add{width:84px;height:64px;border-radius:10px;cursor:pointer;border:1px dashed var(--line);color:var(--text-mut);font-size:12px;display:flex;align-items:center;justify-content:center}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px}.login .panel{width:100%;max-width:360px;display:flex;flex-direction:column;gap:6px}.login input{background:var(--bg-700);border:1px solid var(--line);border-radius:9px;color:var(--text-hi);padding:10px 12px;margin-bottom:8px;font:inherit}@media (max-width: 1000px){.cols{grid-template-columns:1fr}}@media (max-width: 760px){header{gap:10px}.tabs{order:10;width:100%;margin-left:0;flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.tabs::-webkit-scrollbar{display:none}.tabs button{flex:none;height:34px}}@media (max-width: 560px){.wrap{padding:12px 12px 24px}.panel{padding:14px;border-radius:14px}.btn{height:42px}.row{flex-direction:column;align-items:stretch}.row input,.row select{flex:1 1 auto;width:100%}.row>.btn,.field{width:100%;flex:1 1 auto}input.mini{width:100%}.draw-row,.delivery,.flag,.stat-row,.token-banner,.camp-head{flex-direction:column;align-items:stretch}.draw-main{min-width:0}.draw-actions,.delivery-actions{justify-content:stretch}.draw-actions .btn,.delivery-actions .btn{flex:1 1 auto}.stats{grid-template-columns:1fr 1fr;gap:8px}.stats b{font-size:19px}.econ{grid-template-columns:1fr 1fr}.log{max-height:200px}}
