:root{--bg:#070511;--panel:#100b24;--panel2:#161033;--gold:#f2c45b;--violet:#7b61ff;--cyan:#62e8ff;--text:#f7f3ff;--muted:#aaa4c1;--line:rgba(242,196,91,.22);--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 70% 10%,#1a0d3b 0,transparent 28%),var(--bg);color:var(--text);font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;line-height:1.65}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.24;background-image:radial-gradient(#fff 0.6px,transparent .7px);background-size:31px 31px;mask-image:linear-gradient(to bottom,#000,transparent 70%)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.site-header{position:sticky;top:0;z-index:20;min-height:72px;padding:0 max(24px,calc((100vw - var(--max))/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(7,5,17,.86);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.08em}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--gold);border-radius:50%;color:var(--gold);font-family:Georgia,serif}.main-nav,.sub-nav{display:flex;align-items:center;gap:24px;font-size:13px;color:var(--muted)}.main-nav a:hover,.sub-nav a:hover{color:var(--gold)}.menu-button{display:none;color:var(--gold);border:1px solid var(--line);background:transparent;padding:8px 12px}.hero{position:relative;min-height:calc(100vh - 72px);padding:100px max(24px,calc((100vw - var(--max))/2)) 50px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;overflow:hidden}.hero-copy{position:relative;z-index:2}.eyebrow{color:var(--gold);font-size:12px;letter-spacing:.3em;font-weight:700}.hero h1,.page-hero h1{font-family:Georgia,"Times New Roman",serif;font-weight:500;line-height:1.03;margin:20px 0;font-size:clamp(52px,7vw,102px)}.hero h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1px var(--gold);text-shadow:0 0 34px rgba(242,196,91,.28)}.hero-lead{max-width:580px;color:var(--muted);font-size:18px}.hero-actions{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:0 24px;border:1px solid var(--line);border-radius:3px;background:transparent;color:var(--text);cursor:pointer}.button.primary{color:#180e27;background:linear-gradient(135deg,#f7da82,#e8ad35);border-color:transparent;font-weight:800;box-shadow:0 12px 35px rgba(242,196,91,.17)}.button.ghost:hover{border-color:var(--gold)}.button.mini{min-height:38px;padding:0 16px}.hero-visual{height:600px;position:relative;display:grid;place-items:center}.halo{position:absolute;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,#8d6aff 0,#38167f 38%,transparent 68%);filter:blur(7px);opacity:.72}.idol-silhouette{position:relative;width:185px;height:420px;border-radius:48% 48% 22% 22%;background:linear-gradient(150deg,rgba(255,255,255,.9),#8e6dff 28%,#1b0c44 68%,#05030b);clip-path:polygon(36% 0,64% 0,70% 10%,62% 17%,76% 28%,88% 60%,71% 100%,29% 100%,12% 60%,24% 28%,38% 17%,30% 10%);filter:drop-shadow(0 0 32px #8268ff)}.idol-silhouette span{position:absolute;inset:10%;background:repeating-linear-gradient(135deg,transparent 0 14px,rgba(98,232,255,.35) 15px 16px);clip-path:inherit}.orbit{position:absolute;border:1px solid rgba(98,232,255,.35);border-radius:50%;transform:rotate(-18deg)}.orbit-one{width:510px;height:190px}.orbit-two{width:580px;height:260px;transform:rotate(25deg);border-color:rgba(242,196,91,.25)}.orb{position:absolute;border-radius:50%;filter:blur(2px)}.orb-a{width:130px;height:130px;right:4%;top:10%;background:#592fff;box-shadow:0 0 80px #592fff}.orb-b{width:40px;height:40px;left:45%;bottom:25%;background:var(--cyan);box-shadow:0 0 40px var(--cyan)}.countdown-panel{grid-column:1/-1;margin-top:20px;padding:22px 28px;display:flex;align-items:center;gap:30px;border:1px solid var(--line);background:rgba(16,11,36,.78)}.countdown-panel p{margin:0;color:var(--muted)}.countdown{display:flex;gap:24px}.countdown div{display:flex;align-items:baseline;gap:5px}.countdown strong{font-size:34px;color:var(--gold)}.countdown span,.countdown-panel small{color:var(--muted)}.section{scroll-margin-top:72px;padding:110px max(24px,calc((100vw - var(--max))/2))}.shaded{background:linear-gradient(180deg,rgba(25,15,57,.7),rgba(8,5,20,.15));border-block:1px solid var(--line)}.section-heading span{color:var(--gold);font-family:Georgia,serif;font-size:46px}.section-heading p{display:inline;margin-left:16px;color:var(--muted);font-size:11px;letter-spacing:.25em}.section-heading h2{font-family:Georgia,"Noto Serif SC",serif;font-size:clamp(38px,5vw,66px);font-weight:500;margin:4px 0 40px}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.large-copy{font-family:Georgia,"Noto Serif SC",serif;font-size:clamp(26px,3vw,40px);color:#e9dcff}.intro-grid>div{color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(4,1fr);margin-top:64px;border:1px solid var(--line)}.stats article{padding:28px;border-right:1px solid var(--line)}.stats article:last-child{border:0}.stats strong{display:block;color:var(--gold);font-size:30px}.stats span{color:var(--muted);font-size:13px}.prize-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.prize-card{min-height:270px;padding:30px;display:flex;flex-direction:column;justify-content:flex-end;border:1px solid var(--line);background:linear-gradient(150deg,rgba(123,97,255,.17),rgba(11,7,25,.7));position:relative;overflow:hidden}.prize-card:before{content:"";position:absolute;width:160px;height:160px;border:1px solid rgba(242,196,91,.18);border-radius:50%;right:-55px;top:-55px}.prize-card.top{background:linear-gradient(150deg,rgba(242,196,91,.23),rgba(45,21,82,.6))}.prize-rank{font-size:11px;letter-spacing:.2em;color:var(--gold)}.prize-card h3{font-size:25px;margin:8px 0}.prize-card p{color:var(--muted);margin:0}.section-note{color:var(--muted)}.judge-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-top:34px}.judge-card{min-height:315px;padding:18px;border:1px solid var(--line);background:var(--panel)}.judge-avatar{height:210px;display:grid;place-items:center;background:radial-gradient(circle,#6442bb,transparent 55%),linear-gradient(145deg,#160d35,#080511);border-bottom:1px solid var(--line);font:50px Georgia;color:var(--gold)}.judge-card h3{margin:16px 0 0}.judge-card p{margin:3px 0;color:var(--muted);font-size:13px}.legal-card{max-width:920px;padding:45px;border:1px solid var(--line);background:rgba(16,11,36,.82)}.legal-card h3{font-size:28px}.legal-card p,.legal-card li{color:var(--muted)}.legal-warning{padding:16px;border-left:2px solid var(--gold);background:rgba(242,196,91,.06)}.final-cta{text-align:center;border-top:1px solid var(--line)}.final-cta h2{font:clamp(34px,5vw,64px) Georgia;margin:20px auto 36px}.inner-page{min-height:calc(100vh - 150px);padding:60px max(24px,calc((100vw - var(--max))/2)) 100px}.page-hero{max-width:850px;padding:45px 0}.page-hero h1{font-size:clamp(48px,7vw,86px)}.page-hero p:last-child{color:var(--muted);max-width:690px}.filter-bar{display:flex;justify-content:space-between;gap:16px;margin-bottom:28px}.filter-bar input,.filter-bar select,.submission-form input,.submission-form select,.submission-form textarea{width:100%;color:var(--text);background:#0d091b;border:1px solid var(--line);padding:14px 16px;outline:none}.filter-bar input{max-width:450px}.filter-bar select{max-width:180px}.work-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.work-card{border:1px solid var(--line);background:var(--panel);transition:.25s}.work-card:hover{transform:translateY(-5px);border-color:rgba(242,196,91,.55)}.work-cover{aspect-ratio:4/3;display:grid;place-items:end start;padding:16px;background:radial-gradient(circle at 70% 20%,var(--accent,#6b50e7),transparent 27%),linear-gradient(145deg,#241352,#090612);font:54px Georgia;color:rgba(255,255,255,.2)}.work-info{padding:18px}.work-info h2{font-size:18px;margin:0}.work-info p{font-size:13px;color:var(--muted);margin:5px 0}.work-meta{display:flex;justify-content:space-between;color:var(--gold);font-size:12px}.empty-state{text-align:center;padding:70px;color:var(--muted)}.award-board{border:1px solid var(--line);padding:32px;background:rgba(16,11,36,.7)}.award-board-head{display:flex;justify-content:space-between;align-items:end}.award-board-head h2{font:38px Georgia;margin:4px 0 20px}.award-kicker{color:var(--gold);font-size:11px;letter-spacing:.2em}.slider-actions{display:flex;gap:8px;margin-bottom:20px}.slider-actions button{width:44px;height:44px;color:var(--gold);background:transparent;border:1px solid var(--line);cursor:pointer}.award-track{display:flex;gap:18px;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:16px;scrollbar-color:var(--gold) transparent}.winner-card{flex:0 0 min(330px,82vw);scroll-snap-align:start;border:1px solid var(--line);background:var(--panel)}.winner-art{aspect-ratio:4/3;display:grid;place-items:center;background:radial-gradient(circle,var(--accent,#6546db),transparent 55%),#08050f;font:84px Georgia;color:rgba(255,255,255,.25)}.winner-copy{padding:22px}.winner-copy span{color:var(--gold);font-size:11px;letter-spacing:.15em}.winner-copy h3{margin:8px 0}.winner-copy p{color:var(--muted);margin:0}.form-page{max-width:1000px;margin:auto}.steps{display:grid;grid-template-columns:repeat(4,1fr);padding:0;margin:0 0 22px;list-style:none;border:1px solid var(--line)}.steps li{padding:15px;text-align:center;color:var(--muted);border-right:1px solid var(--line)}.steps li:last-child{border:0}.steps li.active{color:#160e25;background:var(--gold);font-weight:800}.submission-form{padding:38px;border:1px solid var(--line);background:rgba(16,11,36,.78)}.form-step{display:none}.form-step.active{display:block}.form-step h2{font:34px Georgia;margin-top:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid label,.dropzone{display:grid;gap:8px;color:var(--muted)}.form-grid .full{grid-column:1/-1}.upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.dropzone{min-height:240px;place-items:center;text-align:center;padding:30px;border:1px dashed rgba(242,196,91,.45);background:#0d091b;cursor:pointer}.dropzone input{max-width:100%}.dropzone span{color:var(--text);font-size:20px}.dropzone small{color:var(--muted)}.summary{display:grid;gap:9px;margin-bottom:24px}.summary div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line)}.agreement{display:flex;gap:10px;align-items:flex-start;color:var(--muted)}.agreement input{width:auto;margin-top:6px}.integration-note{margin-top:25px;padding:20px;border:1px solid rgba(242,196,91,.45);background:rgba(242,196,91,.06)}.integration-note strong{color:var(--gold)}.integration-note p{color:var(--muted);margin-bottom:0}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:28px}.form-message{color:#ff9ba9;text-align:right}footer{min-height:78px;padding:24px max(24px,calc((100vw - var(--max))/2));display:flex;justify-content:space-between;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.reveal{opacity:0;transform:translateY(18px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.menu-button{display:block}.main-nav{display:none;position:absolute;top:72px;left:0;right:0;padding:22px;flex-direction:column;align-items:flex-start;background:#0b0718;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.hero{grid-template-columns:1fr;padding-top:70px}.hero-visual{height:420px}.countdown-panel{display:block}.countdown{margin:14px 0;gap:14px}.intro-grid{grid-template-columns:1fr;gap:20px}.stats{grid-template-columns:1fr 1fr}.stats article:nth-child(2){border-right:0}.prize-grid{grid-template-columns:1fr 1fr}.judge-grid{grid-template-columns:repeat(2,1fr)}.work-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.brand span:last-child{font-size:13px}.hero{padding-inline:20px}.hero h1{font-size:48px}.hero-visual{height:360px}.halo{width:260px;height:260px}.idol-silhouette{width:140px;height:320px}.orbit-one{width:350px}.orbit-two{width:390px}.countdown strong{font-size:25px}.countdown-panel{padding:18px}.section{padding:80px 20px}.stats,.prize-grid,.judge-grid,.work-grid,.form-grid,.upload-grid{grid-template-columns:1fr}.stats article{border-right:0;border-bottom:1px solid var(--line)}.prize-card{min-height:220px}.judge-card{min-height:auto}.filter-bar{flex-direction:column}.filter-bar input,.filter-bar select{max-width:none}.steps{grid-template-columns:1fr 1fr}.steps li:nth-child(2){border-right:0}.submission-form{padding:24px 18px}.form-grid .full{grid-column:auto}.page-hero{padding-top:20px}.sub-nav{gap:12px;font-size:12px}footer{display:grid;gap:6px}}

/* V2 live submission and API states */
.real-cover{background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important}
.form-message{color:var(--gold)}.form-message.error{color:#ff9ba9}
.upload-progress{height:8px;margin-top:20px;background:#080511;border:1px solid var(--line);overflow:hidden}
.upload-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--violet),var(--gold));transition:width .2s}
.success-state{text-align:center;padding:50px 15px}.success-state>span{display:grid;place-items:center;width:78px;height:78px;margin:auto;border:1px solid var(--gold);border-radius:50%;color:var(--gold);font-size:38px}.success-state h2{font:42px Georgia;margin-bottom:8px}.success-state p{color:var(--muted)}
.upload-grid.three-files{grid-template-columns:repeat(3,1fr)}.form-grid small{color:var(--muted)}@media(max-width:760px){.upload-grid.three-files{grid-template-columns:1fr}}
.admin-login{display:grid;grid-template-columns:1fr 180px auto;gap:12px}.admin-login input,.admin-login select,.admin-controls input,.admin-controls select{width:100%;color:var(--text);background:#0d091b;border:1px solid var(--line);padding:13px}.admin-list{display:grid;gap:18px;margin-top:30px}.admin-card{display:grid;grid-template-columns:1fr 330px;gap:30px;padding:26px;border:1px solid var(--line);background:var(--panel)}.admin-card h2{margin:6px 0}.admin-card p{color:var(--muted)}.admin-card a{color:var(--gold)}.admin-controls{display:grid;align-content:start;gap:10px}@media(max-width:760px){.admin-login,.admin-card{grid-template-columns:1fr}}
