:root{--red:#750e20;--dark:#31040b;--gold:#f4d08c;--light:#fff0d4;--white:#fff8f2}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:"PingFang SC","Microsoft Yahei","Noto Sans CJK SC",system-ui,sans-serif;color:var(--white)}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.38;cursor:not-allowed}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #f5d790;outline-offset:4px}
.auth-page,.stage-page{background:#560918 url('/static/bg.jpg') center center/cover fixed no-repeat}.auth-page{min-height:100dvh;display:grid;place-items:center;padding:20px}.auth-card{width:min(480px,100%);border:1px solid #e0b16e80;background:#380615e8;border-radius:24px;padding:40px 32px;text-align:center;box-shadow:0 30px 90px #220009aa}.upper{letter-spacing:.24em;color:#ffdfb5;font-size:14px}.star{font-size:46px;color:#ffcb75;margin-top:15px}.auth-card h1{font-size:42px;margin:5px 0}.subtitle{color:#e7c2b5;margin-bottom:27px}.auth-card label{display:block;text-align:left;font-size:13px;color:#f9d6b7;margin-bottom:6px}.auth-card input{width:100%;border-radius:11px;border:1px solid #d2a264;background:#fff8ed;padding:14px;color:#351117;font-size:17px;margin-bottom:14px}.auth-card .gold-btn{width:100%}#error{min-height:20px;color:#ffb0a9}.auth-foot{font-size:12px;color:#e7b8a3}
.stage{position:relative;min-height:100dvh;height:100dvh;overflow:hidden;background:linear-gradient(115deg,#2b010d55,#4a001544);display:flex;flex-direction:column}.stage:after{content:"";position:absolute;inset:16px;border:1px solid #e5b77464;border-radius:15px;pointer-events:none}.top{position:relative;z-index:2;padding:28px 4.4vw 0;display:flex;justify-content:space-between;align-items:center;gap:12px}.event{display:flex;align-items:center;gap:12px;font-size:clamp(13px,1.2vw,20px);font-weight:750;letter-spacing:.06em}.emblem{font-size:30px;color:var(--gold)}.event small{display:block;margin-top:6px;font-size:11px;color:#f0c7b9;font-weight:400;letter-spacing:.1em}.nav{display:flex;gap:8px;flex-wrap:wrap}.nav a,.nav button{border:1px solid #e5bb79aa;color:#ffe7c2;background:#410b1ab0;border-radius:9px;padding:9px 13px;font-size:13px}.round-tabs{z-index:2;display:flex;flex-wrap:wrap;gap:8px;margin:20px auto 0;justify-content:center;padding:0 22px}.round-tab{background:#390610cc;color:#f9d8af;border:1px solid #e1b87788;border-radius:9px;padding:9px 13px;font-size:clamp(11px,.9vw,14px)}.round-tab.active{background:#f4cb85;color:#5a0c1d;font-weight:800}.stage-body{position:relative;z-index:2;text-align:center;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 16px 12px;min-height:0}.badge-text{margin:0;border:1px solid #f3d6a399;background:#5b0d22bb;padding:8px 23px;border-radius:100px;letter-spacing:.26em;color:#ffe7bc;font-size:13px}.stage-body h1{font-size:clamp(30px,4.4vw,72px);line-height:1.2;letter-spacing:.06em;margin:15px 0 6px;text-shadow:0 5px 30px #2a010c}.sub-title{font-size:clamp(13px,1.4vw,21px);letter-spacing:.16em;color:#ffd4a0;margin:3px 0 19px}.reel-box{width:min(900px,81vw);height:clamp(138px,24vh,240px);background:linear-gradient(130deg,#780d22dd,#590519e8);border:2px solid #eabe76;border-radius:24px;box-shadow:0 20px 60px #230008aa,0 0 75px #eeb56927;display:grid;align-content:center;padding:8px 20px}.reel-box #reel{font-weight:900;font-size:clamp(42px,7vw,110px);letter-spacing:.04em;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;color:#fff2d0;text-shadow:0 0 38px #ffe0a755,0 5px 18px #2b0105}.reel-box #reel.rolling{animation:pulse .25s infinite alternate}.reel-box #reel.win{animation:pop .5s ease-out}#pending-note{min-height:21px;color:#ffdab0;font-size:clamp(13px,1.25vw,18px);margin-top:1px}.stage-hint{min-height:26px;margin-top:18px;color:#ffdeb5;font-size:clamp(12px,1.2vw,18px)}.actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:12px}.actions button,.gold-btn,.light-btn,.border-btn{border-radius:36px;border:1px solid #e5bb84;padding:12px 25px;font-size:clamp(13px,1.2vw,18px);font-weight:800}.gold-btn{color:#5d0c1c;background:linear-gradient(120deg,#fff1bf,#edb65e)}.light-btn{color:#771625;background:linear-gradient(120deg,#fff9e9,#ffdcaf)}.border-btn{color:#fff0df;background:#470617cc}.stage-foot{position:relative;z-index:2;bottom:0;margin:0 auto 18px;width:92%;text-align:center}.winners-label{display:block;color:#fbe0b8;font-size:13px;letter-spacing:.12em;margin-bottom:7px}.winner-cards{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;min-height:50px}.winner-card{border-radius:12px;background:#480b1de0;border:1px solid #dfb47d;padding:8px 20px;min-width:125px}.winner-card b{display:block;font-size:clamp(14px,1.6vw,24px)}.winner-card small{display:block;color:#f7cfa9;font-size:10px}.meta-row{border-top:1px solid #dcaa7977;margin-top:13px;padding-top:9px;display:flex;justify-content:space-between;color:#edbca8;font-size:12px;gap:10px}.toast{position:fixed;top:18px;left:50%;transform:translate(-50%,-120px);z-index:15;background:#fff2d4;color:#5f1424;padding:12px 20px;border:1px solid #dbab5d;border-radius:9px;box-shadow:0 9px 28px #190007aa;transition:.2s}.toast.show{transform:translate(-50%,0)}@keyframes pulse{from{filter:brightness(1);transform:translateY(-1px)}to{filter:brightness(1.3);transform:translateY(1px)}}@keyframes pop{0%{transform:scale(.83)}60%{transform:scale(1.08)}100%{transform:scale(1)}}
.admin-page{background:#f8f3ef;color:#32181d;min-height:100vh}.admin-wrap{max-width:1150px;margin:auto;padding:34px 20px 60px}.admin-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}.admin-head p{color:#a02b3b;margin:0;font-weight:700}.admin-head h1{font-size:32px;margin:5px 0}.admin-head .nav a,.admin-head .nav button{background:#83152c;color:#fff5e2}.overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:20px}.stat{border:1px solid #f0dfd2;background:white;border-radius:15px;padding:22px;text-align:center}.stat b{display:block;color:#991d35;font-size:38px}.stat span{font-size:13px;color:#755b5d}.admin-panel{background:white;border:1px solid #eddccf;border-radius:16px;padding:22px 24px;margin:18px 0}.admin-panel h2{color:#751429;font-size:21px;margin:0 0 8px}.admin-panel p{color:#766469;font-size:13px;line-height:1.8}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.link-btn{display:inline-block;white-space:nowrap}.round-settings{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.round-setting{background:#fbf3ed;border:1px solid #ecddd0;padding:12px;border-radius:10px}
.round-setting fieldset{display:grid;gap:10px;margin:0;padding:0;border:0;min-width:0}
.round-setting label{display:grid;gap:5px;font-size:13px;font-weight:650;color:#661829}
.round-setting input{width:100%;min-width:0;box-sizing:border-box;border:1px solid #d9b5a3;border-radius:6px;padding:7px;font:inherit}
.round-setting input[type=number]{width:76px}
.round-setting-actions{display:flex;align-items:end;justify-content:space-between;gap:10px}
.round-setting button{border:0;border-radius:7px;background:#8d1932;color:white;padding:8px 10px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;padding:11px;border-bottom:1px solid #f0e4dc}th{background:#fcf4ed;color:#712334}.danger-zone{border-color:#efc2c0}.danger-row{display:flex;gap:8px}.danger-row input{flex:1;padding:11px;border:1px solid #bdb0a9;border-radius:8px}.danger-btn{background:#9b1c2f;color:white;border:0;border-radius:8px;padding:10px 17px}.policy{text-align:center;color:#8b7676;font-size:12px}
@media(max-width:700px){.top{padding:17px 17px 0;align-items:flex-start}.event{font-size:12px}.event small{font-size:10px}.nav a,.nav button{font-size:11px;padding:7px}.round-tabs{margin-top:14px;gap:5px}.round-tab{font-size:10px;padding:6px 7px}.stage{height:auto;min-height:100dvh;overflow:auto}.stage-body{padding:38px 12px 30px}.stage-body h1{font-size:29px}.reel-box{width:95%;height:155px}.reel-box #reel{font-size:clamp(32px,8vw,70px)}.actions button{padding:11px 16px;font-size:13px}.stage-foot{padding-bottom:12px}.winner-card{min-width:90px;padding:6px 9px}.meta-row{display:block;font-size:10px}.meta-row span{display:block;margin-top:5px}.admin-head{align-items:flex-start;flex-direction:column}.overview{gap:7px}.stat{padding:12px 5px}.stat b{font-size:28px}.admin-panel{padding:16px}.panel-head{align-items:flex-start;flex-direction:column}.danger-row{flex-direction:column}}
@media(max-height:740px) and (min-width:701px){.top{padding-top:15px}.round-tabs{margin-top:8px}.stage-body h1{font-size:40px;margin:9px 0 4px}.sub-title{margin:2px 0 8px}.reel-box{height:135px}.reel-box #reel{font-size:75px}.stage-hint{margin-top:6px}.actions{margin-top:6px}.actions button{padding:8px 19px}.winner-cards{min-height:35px}.stage-foot{margin-bottom:9px}}
