:root{--bg:#f5f7ff;--bg-2:#eef2ff;--card:hsla(0,0%,100%,.72);--card-border:hsla(0,0%,100%,.55);--text:#131826;--text-soft:#5f6680;--primary:#5b6cff;--primary-strong:#4a56ea;--primary-soft:rgba(91,108,255,.12);--danger:#e2556f;--warning:#b7791f;--success:#167a5c}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%}body{font-family:Inter,PingFang SC,Microsoft YaHei,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--text);background:radial-gradient(1200px 500px at 10% -10%,rgba(119,142,255,.22),transparent 60%),radial-gradient(900px 460px at 90% 0,rgba(150,101,255,.14),transparent 62%),linear-gradient(180deg,var(--bg) 0,var(--bg-2) 100%)}.page-shell{position:relative;width:min(1160px,calc(100% - 40px));margin:32px auto 44px;display:grid;grid-gap:18px;gap:18px}.ambient{position:fixed;pointer-events:none;z-index:0;filter:blur(70px);opacity:.55}.ambient-left{width:240px;height:240px;left:-30px;top:70px;background:#87a4ff}.ambient-right{width:280px;height:280px;right:-50px;top:140px;background:#c79dff}.glass-card{position:relative;z-index:1;border:1px solid var(--card-border);background:var(--card);border-radius:20px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 8px 30px rgba(75,92,180,.08),inset 0 1px 0 hsla(0,0%,100%,.65)}.hero{padding:28px 28px 24px}.hero-layout{display:grid;grid-template-columns:1.35fr 1fr;grid-gap:18px;gap:18px;align-items:start}.hero-badge{width:-moz-fit-content;width:fit-content;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#5c63a8;border:1px solid rgba(92,99,168,.25);border-radius:999px;padding:6px 12px;background:hsla(0,0%,100%,.48)}.hero-title{margin:14px 0 10px;font-size:clamp(28px,4vw,36px);line-height:1.15}.hero-subtitle{margin:0;color:var(--text-soft);font-size:15px}.hero-tags{margin-top:16px;display:flex;flex-wrap:wrap;gap:8px}.tag{font-size:12px;border-radius:999px;padding:6px 10px;background:hsla(0,0%,100%,.7);border:1px solid rgba(0,0,0,.06);color:#4c5578}.hero-upload{border:1px solid rgba(124,137,192,.2);border-radius:16px;background:hsla(0,0%,100%,.58);padding:14px;display:flex;flex-direction:column;align-self:start;height:-moz-fit-content;height:fit-content}.hero-upload .panel-desc{margin:8px 0 10px}.upload-title{font-size:17px;font-weight:650}.panel-title{font-size:18px;font-weight:650}.panel-desc{margin:8px 0 14px;color:var(--text-soft);font-size:14px;line-height:1.55}.upload-box{display:flex;flex-direction:column;justify-content:flex-start;gap:8px;min-height:86px;border:1px dashed rgba(91,108,255,.45);border-radius:14px;background:linear-gradient(180deg,hsla(0,0%,100%,.82),rgba(241,245,255,.72));padding:12px 14px;cursor:pointer;transition:all .2s ease}.upload-box:hover{border-color:var(--primary);box-shadow:0 8px 20px rgba(91,108,255,.15)}.upload-box input{display:none}.upload-box span{font-size:15px;font-weight:600}.upload-box small{color:var(--text-soft);font-size:12px}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.toolbar-row{display:grid;grid-template-columns:1fr 1fr auto;grid-gap:12px;gap:12px;align-items:end}.field{display:grid;grid-gap:8px;gap:8px;font-size:13px;color:#4d5674}.field span{font-weight:600}select{width:100%;height:40px;border-radius:10px;border:1px solid rgba(127,138,176,.35);background:hsla(0,0%,100%,.9);padding:0 12px;font-size:14px;color:#1f2640;outline:none}select:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(91,108,255,.15)}.check-row{margin-top:14px;display:flex;align-items:center;gap:8px;font-size:13px;color:#495272}.check-row input{width:16px;height:16px;accent-color:var(--primary)}.action-row{margin-top:14px;display:flex;gap:10px;flex-wrap:wrap}.btn{height:40px;border-radius:10px;border:1px solid rgba(127,138,176,.35);background:hsla(0,0%,100%,.88);color:#26304f;padding:0 16px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn:hover:not(:disabled){border-color:rgba(91,108,255,.55);transform:translateY(-1px)}.btn:disabled{opacity:.52;cursor:not-allowed}.btn-primary{border-color:var(--primary);color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary-strong));box-shadow:0 8px 18px rgba(91,108,255,.28)}.status{margin-top:14px;border-radius:10px;padding:10px 12px;font-size:13px;line-height:1.5}.status-info{background:rgba(91,108,255,.09);color:#35418f}.status-error{background:rgba(226,85,111,.12);color:#a12447}.status-success{background:rgba(22,122,92,.12);color:#146044}.status-warn{background:rgba(183,121,31,.13);color:#7f5519}.preview-panel,.seo-panel{padding:20px}.seo-panel h2,.seo-panel h3{margin:0;color:#253252}.seo-panel h3{margin-top:14px;font-size:16px}.seo-panel p{margin:10px 0 0;color:var(--text-soft);line-height:1.6;font-size:14px}.seo-panel ul{padding-left:18px;grid-gap:6px;gap:6px}.seo-panel ol,.seo-panel ul{margin:10px 0 0;color:#324165;display:grid}.seo-panel ol{padding-left:20px;grid-gap:8px;gap:8px}.seo-faq{margin-top:12px;display:grid;grid-gap:10px;gap:10px}.seo-faq-item{border:1px solid rgba(124,137,192,.22);border-radius:12px;background:hsla(0,0%,100%,.62);padding:12px}.seo-faq-item h4{margin:0;font-size:14px;color:#253252}.seo-faq-item p{margin-top:8px}.preview-toolbar{margin-bottom:14px;border:1px solid rgba(124,137,192,.2);border-radius:14px;background:hsla(0,0%,100%,.58);padding:14px}.preview-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.preview-head h2{margin:0;font-size:20px}.preview-head p{margin:8px 0 0;font-size:13px;color:var(--text-soft)}.metric-pill{white-space:nowrap;font-size:12px;font-weight:600;color:#4d5884;border-radius:999px;border:1px solid rgba(77,88,132,.2);background:hsla(0,0%,100%,.65);padding:7px 12px}.table-wrap{overflow:auto;max-height:460px;border-radius:14px;border:1px solid rgba(120,134,180,.25);background:hsla(0,0%,100%,.68)}table{width:100%;border-collapse:collapse;font-size:13px}td,th{white-space:nowrap;text-align:left;padding:11px 12px;border-bottom:1px solid rgba(148,163,184,.14)}th{position:-webkit-sticky;position:sticky;top:0;z-index:1;background:rgba(246,248,255,.98);color:#42507c;font-weight:650}tbody tr:hover{background:rgba(240,244,255,.7)}.empty-cell{text-align:center;color:#647095;padding:24px 0}@media (max-width:980px){.form-grid,.hero-layout,.toolbar-row{grid-template-columns:1fr}}@media (max-width:640px){.page-shell{width:calc(100% - 24px);margin-top:16px}.hero,.preview-panel{padding:16px}.action-row{flex-direction:column}.btn{width:100%}}