POLS / aries /style.css
Ethscriptions's picture
aries: 配乐音效、播放器、铭牌导出、MP4 导出、四平台文案与封面、首页入口
e67dc56 verified
Raw History Blame Contribute Delete
8.12 kB
:root{--bg:#120407;--card:rgba(40,10,14,.72);--line:rgba(255,200,130,.25);--gold:#ffd98f;--gold2:#e8a94a;--text:#fbeee0;--mute:#cdb7a6;--red:#c8302a}
*{box-sizing:border-box}
html,body{margin:0;background:radial-gradient(1200px 700px at 50% -10%,#4a1210 0%,#1a0508 55%,#0b0204 100%) fixed,var(--bg);color:var(--text);font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}
body.lock{overflow:hidden}
a{color:var(--gold)}
.hero{text-align:center;padding:42px 18px 18px}
.hero .glyph{font-size:54px;line-height:1;color:var(--gold);text-shadow:0 0 24px rgba(255,150,60,.8);font-family:"Noto Sans Symbols 2","Segoe UI Symbol",serif}
.hero h1{font-family:"Noto Serif SC",serif;font-weight:900;font-size:clamp(28px,5vw,48px);margin:10px 0 6px;letter-spacing:.08em;background:linear-gradient(180deg,#fff3c8,#ffd27a 45%,#b8741e);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 14px rgba(255,120,40,.45))}
.hero .sub{font-family:Cinzel,serif;letter-spacing:.25em;color:var(--gold);margin:0 0 12px;font-size:14px}
.hero .lead{max-width:760px;margin:0 auto;color:var(--mute);line-height:1.8;font-size:15px}
main{max-width:1180px;margin:0 auto;padding:0 14px 40px}
.player{margin:10px auto 26px}
.stagebox{position:relative;margin:0 auto;border-radius:16px;overflow:hidden;background:#000;box-shadow:0 20px 60px rgba(0,0,0,.6),0 0 0 1px var(--line);aspect-ratio:16/9;width:100%}
.stagebox[data-o=p]{aspect-ratio:9/16;width:min(100%,calc((100vh - 120px) * 9 / 16));min-width:280px}
.stagebox canvas{display:block;width:100%;height:100%;cursor:pointer}
.stagebox:fullscreen,.stagebox.pseudo{width:100vw!important;height:100vh;max-width:none;aspect-ratio:auto;border-radius:0;display:flex;align-items:center;justify-content:center}
.stagebox.pseudo{position:fixed;inset:0;z-index:50;height:100dvh}
.stagebox:fullscreen canvas,.stagebox.pseudo canvas{width:auto;height:auto;max-width:100%;max-height:100%;aspect-ratio:16/9}
.stagebox[data-o=p]:fullscreen canvas,.stagebox[data-o=p].pseudo canvas{aspect-ratio:9/16;height:100%}
.stagebox[data-o=l]:fullscreen canvas,.stagebox[data-o=l].pseudo canvas{width:100%;height:auto}
.bigplay{position:absolute;inset:0;margin:auto;width:150px;height:150px;border-radius:50%;border:2px solid var(--gold);background:radial-gradient(circle,rgba(200,48,42,.85),rgba(80,10,10,.85));color:#fff4dc;font-size:44px;cursor:pointer;box-shadow:0 0 50px rgba(255,140,60,.6);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:opacity .3s,transform .3s}
.bigplay em{font-style:normal;font-size:12px;position:absolute;bottom:-34px;white-space:nowrap;color:var(--gold);text-shadow:0 1px 6px #000}
.bigplay.hide{opacity:0;pointer-events:none;transform:scale(.9)}
.bigplay.busy span{animation:pulse 1s infinite}
@keyframes pulse{50%{opacity:.4}}
.ctrl{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:10px;padding:10px 12px;background:linear-gradient(transparent,rgba(0,0,0,.75));opacity:0;transition:opacity .25s}
.stagebox:hover .ctrl,.stagebox:focus-within .ctrl,.stagebox.pseudo .ctrl{opacity:1}
@media (hover:none){.ctrl{opacity:1}}
.ic{background:none;border:0;color:var(--gold);font-size:18px;cursor:pointer;width:34px;height:34px}
#seek{flex:1;accent-color:#ff8a3c;min-width:60px}
.time{font-variant-numeric:tabular-nums;font-size:13px;color:#fff;white-space:nowrap}
.seg{display:flex;border:1px solid var(--line);border-radius:999px;overflow:hidden}
.o-btn{background:none;border:0;color:var(--mute);padding:4px 10px;cursor:pointer;font-size:13px}
.o-btn.on{background:var(--gold2);color:#2a0a04;font-weight:700}
.loadstate{text-align:center;color:var(--mute);font-size:13px;min-height:1em;margin:8px 0 0}
.chaps{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:14px}
.chap{background:var(--card);border:1px solid var(--line);color:var(--text);border-radius:10px;padding:8px 10px;text-align:left;cursor:pointer;font-size:13px;display:flex;gap:6px;align-items:center;transition:.2s}
.chap b{font-family:Cinzel,serif;color:var(--gold)}
.chap i{margin-left:auto;font-style:normal;color:var(--mute);font-size:11px}
.chap.on{border-color:var(--gold);box-shadow:0 0 18px rgba(255,160,70,.35);background:rgba(110,24,18,.7)}
.panel{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px;margin:22px 0;backdrop-filter:blur(6px)}
.ptitle h2{font-family:"Noto Serif SC",serif;margin:0 0 6px;color:var(--gold);font-size:22px}
.ptitle p{margin:0 0 16px;color:var(--mute);font-size:14px}
.badgewrap{display:flex;gap:26px;align-items:flex-start;flex-wrap:wrap}
#badgeCv{width:300px;max-width:100%;border-radius:14px;box-shadow:0 14px 40px rgba(0,0,0,.6),0 0 0 1px var(--line)}
.badgeform{flex:1;min-width:260px;display:flex;flex-direction:column;gap:8px}
.badgeform label{font-size:14px;color:var(--gold);display:flex;justify-content:space-between}
input,select,textarea{background:rgba(0,0,0,.35);border:1px solid var(--line);color:var(--text);border-radius:10px;padding:10px 12px;font-size:15px;font-family:inherit;width:100%}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--gold)}
.btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.btn{background:rgba(255,255,255,.06);border:1px solid var(--line);color:var(--text);border-radius:999px;padding:9px 16px;cursor:pointer;font-size:14px;text-decoration:none;display:inline-block;white-space:nowrap}
.btn:hover{border-color:var(--gold)}
.btn.gold{background:linear-gradient(180deg,#ffe29a,#e09a36);color:#3a1204;border:0;font-weight:700}
.btn.big{padding:12px 26px;font-size:16px}
.note{color:var(--mute);font-size:13px;line-height:1.7}
.cnt{font-size:12px;color:var(--mute)}.cnt.ok{color:#8fe39b}.cnt.bad{color:#ff7b6b}
.exgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.exgrid label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--gold)}
.exgrid .chk{flex-direction:row;align-items:center;gap:8px;color:var(--text)}.chk input{width:auto}
.bar{height:8px;background:rgba(255,255,255,.08);border-radius:99px;overflow:hidden;margin:14px 0 8px}
.bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#c8302a,#ffb347,#ffe29a)}
.exstate{color:var(--mute);font-size:13px;min-height:1em}
.ptabs{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}
.ptab{background:none;border:1px solid var(--line);color:var(--text);border-radius:999px;padding:7px 18px;cursor:pointer}
.ptab.on{background:var(--red);border-color:var(--gold);color:#fff}
.field{margin-bottom:14px}
.field>label{display:flex;justify-content:space-between;color:var(--gold);font-size:14px;margin-bottom:6px}
.copyrow{display:flex;gap:8px;align-items:flex-start}
.copyrow textarea{resize:vertical;line-height:1.6}
.covers{display:flex;gap:14px;flex-wrap:wrap}
.covers figure{margin:0;background:rgba(0,0,0,.3);border:1px solid var(--line);border-radius:12px;padding:8px}
.covers img{display:block;height:200px;width:auto;border-radius:8px}
.covers figcaption{font-size:12px;color:var(--mute);margin-top:6px}
footer{text-align:center;color:var(--mute);padding:20px 16px 50px;line-height:1.9;font-size:14px}
footer .small{font-size:12px}
.toast{position:fixed;left:50%;bottom:30px;transform:translateX(-50%) translateY(20px);background:rgba(200,48,42,.95);color:#fff;padding:9px 20px;border-radius:999px;opacity:0;transition:.25s;pointer-events:none;z-index:99}
.toast.on{opacity:1;transform:translateX(-50%)}
@media (max-width:760px){
.hero{padding:26px 14px 10px}.hero .lead{font-size:14px}.hero .lead br{display:none}
main{padding:0 10px 30px}
.chaps{grid-template-columns:repeat(2,1fr)}
.panel{padding:16px;border-radius:14px}
.exgrid{grid-template-columns:1fr 1fr}
.badgewrap{flex-direction:column;align-items:center}
#badgeCv{width:min(78vw,320px)}
.copyrow{flex-direction:column}.copyrow .btn{align-self:flex-end}
.covers img{height:150px}
.bigplay{width:110px;height:110px;font-size:34px}
.stagebox[data-o=p]{width:100%;max-width:calc((100dvh - 80px) * 9 / 16)}
}