:root{--bg:#0e1316;--bg-2:#141b1f;--panel:#182126;--line:#26323a;--line-2:#33434d;--text:#d9e0e3;--muted:#8b989f;--gold:#c9a45c;--gold-2:#e2c27f;--gold-ink:#1a1408;--ok:#7fbf8e;--err:#e08a7a;--radius:8px;--wrap:1120px;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-family:PingFang SC,Microsoft YaHei,Noto Sans SC,system-ui,sans-serif;line-height:1.7}*{box-sizing:border-box}html{scroll-padding-top:76px}body{flex-direction:column;min-height:100vh;margin:0;display:flex}#app{flex-direction:column;flex:1;display:flex}main{flex:1}a{color:var(--gold-2);text-decoration:none}a:hover{text-decoration:underline}.muted{color:var(--muted);font-size:.9em}.topbar{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#0e1316eb;position:sticky;top:0}.topbar-inner{max-width:var(--wrap);align-items:center;gap:28px;height:60px;margin:0 auto;padding:0 20px;display:flex}.brand{align-items:center;display:flex}.brand img{width:auto;height:40px;display:block}.nav{flex:1;gap:22px;display:flex}.nav a{color:var(--text);opacity:.85;font-size:15px}.nav a:hover,.nav a.active{color:var(--gold-2);opacity:1;text-decoration:none}.topbar-actions{gap:10px;display:flex}.admin-tag{color:var(--muted);margin-left:auto}.btn{cursor:pointer;border:1px solid var(--line-2);height:34px;color:var(--text);background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:0 14px;font-family:inherit;font-size:14px;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.btn:hover{border-color:var(--gold);color:var(--gold-2);text-decoration:none}.btn:disabled{opacity:.55;cursor:default}.btn-gold{background:var(--gold);border-color:var(--gold);color:var(--gold-ink);font-weight:600}.btn-gold:hover{background:var(--gold-2);border-color:var(--gold-2);color:var(--gold-ink)}.btn-lg{height:42px;padding:0 22px;font-size:15px}.hero{max-width:var(--wrap);text-align:center;margin:0 auto;padding:36px 20px 20px}.title{letter-spacing:.12em;color:var(--gold-2);margin:0;font-size:34px;font-weight:600}.title-sub{color:var(--text);letter-spacing:.05em;font-size:.7em}.tagline{color:var(--muted);margin:6px 0 22px}.cta-row{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:22px;display:flex}.carousel{max-width:880px;margin:0 auto}.carousel-frame{aspect-ratio:16/9;border-radius:var(--radius);border:1px solid var(--line);background:var(--bg-2);position:relative;overflow:hidden}.carousel-img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .6s;position:absolute;inset:0}.carousel-img.on{opacity:1}.carousel-arrow{cursor:pointer;width:36px;height:52px;color:var(--text);opacity:0;background:#0e13168c;border:0;border-radius:6px;font-size:28px;line-height:1;transition:opacity .2s;position:absolute;top:50%;transform:translateY(-50%)}.carousel-frame:hover .carousel-arrow,.carousel-arrow:focus-visible{opacity:1}.carousel-arrow.left{left:10px}.carousel-arrow.right{right:10px}.carousel-caption{color:var(--text);background:#0e131699;border-radius:4px;padding:2px 10px;font-size:13px;position:absolute;bottom:10px;left:12px}.carousel-dots{justify-content:center;gap:8px;margin-top:12px;display:flex}.carousel-dots button{cursor:pointer;background:var(--line-2);border:0;border-radius:2px;width:22px;height:4px;padding:0}.carousel-dots button.on{background:var(--gold)}.section{max-width:var(--wrap);margin:0 auto;padding:44px 20px}.section+.section{border-top:1px solid var(--line)}.section-title{color:var(--gold-2);letter-spacing:.06em;margin:0 0 14px;font-size:22px;font-weight:600}.page-title{font-size:26px}.section-lead{color:var(--muted);margin:0 0 20px}.intro{max-width:820px;margin:0 0 16px;font-size:16px}.facts{flex-wrap:wrap;gap:8px;margin:0 0 26px;padding:0;list-style:none;display:flex}.facts li,.chip{border:1px solid var(--line-2);color:var(--muted);border-radius:999px;padding:1px 10px;font-size:13px}.features{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.feature{border-radius:var(--radius);background:var(--panel);border:1px solid var(--line);padding:16px 18px}.feature h3{color:var(--text);margin:0 0 4px;font-size:16px}.feature p{color:var(--muted);margin:0;font-size:14px}.contact-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.contact-card{border-radius:var(--radius);background:var(--panel);border:1px solid var(--line);color:var(--text);flex-direction:column;padding:16px 18px;display:flex}.contact-card:hover{border-color:var(--gold);text-decoration:none}.contact-k{color:var(--muted);font-size:13px}.contact-v{color:var(--gold-2);word-break:break-all;font-size:16px}.guide{max-width:820px;margin-bottom:22px}.guide p{margin:0 0 6px}.guide ol{color:var(--muted);margin:0 0 8px;padding-left:22px}.bug-form{border-radius:var(--radius);background:var(--panel);border:1px solid var(--line);max-width:820px;padding:22px}.field{margin-bottom:18px}.label{margin-bottom:6px;font-size:14px;display:block}.req{color:var(--gold);margin-left:6px;font-size:12px}.contact-row{flex-wrap:wrap;gap:10px;display:flex}.seg{border:1px solid var(--line-2);border-radius:6px;display:inline-flex;overflow:hidden}.seg button{height:38px;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 14px;font-family:inherit;font-size:14px}.seg button+button{border-left:1px solid var(--line-2)}.seg button.on{background:var(--gold);color:var(--gold-ink);font-weight:600}.input{border:1px solid var(--line-2);background:var(--bg);min-width:200px;height:38px;color:var(--text);border-radius:6px;flex:1;padding:0 12px;font-family:inherit;font-size:14px}.input:focus{border-color:var(--gold);outline:none}.textarea{resize:vertical;width:100%;height:auto;padding:10px 12px;line-height:1.6}.counter{text-align:right;color:var(--muted);font-size:12px}.counter.over{color:var(--err)}.drop{border:1px dashed var(--line-2);border-radius:var(--radius);background:var(--bg);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:96px;transition:border-color .15s,background .15s;display:flex}.drop:hover,.drop:focus-visible{border-color:var(--gold);outline:none}.drop.dragging{border-color:var(--gold);background:#c9a45c14}.thumbs{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;margin-top:12px;display:grid}.thumb{aspect-ratio:1;border:1px solid var(--line);background:var(--bg);border-radius:6px;position:relative;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%;display:block}.thumb-x{width:24px;height:24px;color:var(--text);cursor:pointer;background:#0e1316bf;border:0;border-radius:50%;font-size:16px;line-height:24px;position:absolute;top:4px;right:4px}.thumb-x:hover{color:var(--err)}.hp{opacity:0;width:1px;height:1px;position:absolute;left:-10000px}.submit-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.notice{border-radius:6px;margin:14px 0 0;padding:10px 14px;font-size:14px}.notice.ok{color:var(--ok);background:#7fbf8e1a;border:1px solid #7fbf8e59}.notice.err{color:var(--err);background:#e08a7a1a;border:1px solid #e08a7a59}.admin-head{align-items:baseline;gap:14px;margin-bottom:14px;display:flex}.admin-head .btn{margin-left:auto}.admin-item{border-radius:var(--radius);background:var(--panel);border:1px solid var(--line);margin-bottom:14px;padding:16px 18px}.admin-item-head{flex-wrap:wrap;align-items:center;gap:12px;font-size:14px;display:flex}.admin-id{color:var(--gold-2);font-family:ui-monospace,Consolas,monospace}.admin-contact{color:var(--text);font-weight:600}.admin-content{white-space:pre-wrap;word-break:break-word;margin:10px 0 0;font-family:inherit;font-size:14px}.admin-meta{word-break:break-all;margin-top:8px;font-size:12px}.pager{justify-content:center;align-items:center;gap:12px;display:flex}.footer{border-top:1px solid var(--line);background:var(--bg-2);margin-top:20px}.footer-inner{max-width:var(--wrap);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:16px;margin:0 auto;padding:18px 20px;font-size:13px;display:flex}.footer-links{gap:16px;display:flex}.footer-links a{color:var(--muted)}@media (width<=860px){.nav{display:none}.topbar-inner{justify-content:space-between}.features,.contact-grid{grid-template-columns:1fr}.title{font-size:28px}}@media (width<=480px){.topbar-actions .btn-ghost{display:none}.bug-form{padding:16px}}
