:root{color-scheme:light;--bg:#f4f6fb;--panel:rgba(255,255,255,0.72);--panel-strong:rgba(255,255,255,0.9);--border:rgba(19,28,54,0.08);--text:#111827;--muted:#667085;--accent:#2553ff;--accent-soft:rgba(37,83,255,0.12);--shadow:0 20px 60px rgba(28,45,94,0.12)}*{box-sizing:border-box}html{font-size:16px}body{margin:0;min-height:100vh;color:var(--text);font-family:Inter,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;background:radial-gradient(circle at top left,rgba(108,153,255,.22),transparent 32%),radial-gradient(circle at top right,rgba(175,194,255,.26),transparent 24%),linear-gradient(180deg,#f8faff 0,var(--bg) 100%)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.page-shell{max-width:1120px;margin:0 auto;padding:28px 20px 40px}.hero{margin-bottom:18px}.hero-compact{max-width:680px}.eyebrow{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.7);border:1px solid var(--border);color:var(--muted);font-size:.9rem;letter-spacing:.02em}.hero h1{margin:14px 0 8px;font-size:clamp(2rem,3.6vw,3.4rem);line-height:1.06;letter-spacing:-.04em}.hero-subtitle{margin:0;color:var(--muted);font-size:.98rem;line-height:1.7}.glass-card{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-radius:28px}.workspace-grid{display:grid;grid-template-columns:minmax(320px,400px) minmax(0,1fr);grid-gap:18px;gap:18px}.form-card,.result-card{padding:20px}.section-head{margin-bottom:14px}.section-head h2{margin:0 0 6px;font-size:1.05rem}.section-head p{margin:0;color:var(--muted);font-size:.92rem;line-height:1.6}.upload-box{position:relative;display:flex;align-items:stretch;justify-content:center;min-height:220px;overflow:hidden;border-radius:20px;border:1px dashed rgba(50,79,184,.28);background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(244,247,255,.96));cursor:pointer}.upload-box input{position:absolute;inset:0;opacity:0;cursor:pointer;z-index:2}.upload-placeholder{display:flex;flex-direction:column;gap:8px;justify-content:center;align-items:center;padding:24px;text-align:center;color:var(--muted)}.upload-preview{width:100%;height:100%;min-height:220px;object-fit:cover}.upload-guidelines{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px}.guide-pill{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;color:#41526c;font-size:.84rem;background:rgba(244,247,255,.95);border:1px solid rgba(28,54,128,.08)}.upload-meta{margin-top:14px;padding:12px 14px;border-radius:18px;background:rgba(255,255,255,.76);border:1px solid rgba(28,54,128,.1)}.upload-meta-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.upload-meta-row strong{font-size:.95rem}.meta-badge{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;font-size:.82rem;color:#1f3b88;background:rgba(37,83,255,.1)}.meta-badge.is-cropped{color:#8a3a10;background:rgba(245,158,11,.14)}.upload-meta-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.upload-meta-list span{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;color:#4d5c73;font-size:.88rem;background:rgba(244,247,255,.95);border:1px solid rgba(28,54,128,.08)}.upload-meta-tip{margin:12px 0 0;color:#5d6779;line-height:1.7;font-size:.92rem}.field{display:flex;flex-direction:column;gap:8px;margin-top:14px}.field span{font-size:.95rem;color:#3a4a62}.field select,.field textarea{width:100%;border:1px solid rgba(35,56,119,.1);background:rgba(255,255,255,.82);border-radius:16px;padding:12px 14px;color:var(--text);outline:none;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.field select:focus,.field textarea:focus{border-color:rgba(37,83,255,.36);box-shadow:0 0 0 4px rgba(37,83,255,.08)}.inline-fields{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.advanced-panel{margin-top:14px;border:1px solid rgba(35,56,119,.08);background:rgba(255,255,255,.56);border-radius:18px;overflow:hidden}.advanced-panel summary{cursor:pointer;list-style:none;padding:14px 16px;font-size:.94rem;font-weight:600}.advanced-panel summary::-webkit-details-marker{display:none}.advanced-content{padding:0 16px 16px}.primary-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 20px;margin-top:16px;border:0;border-radius:999px;background:linear-gradient(135deg,#1e44ff,#6d8dff);color:white;font-weight:600;box-shadow:0 18px 30px rgba(37,83,255,.24);transition:transform .2s ease,opacity .2s ease;cursor:pointer}.primary-button:hover{transform:translateY(-1px)}.primary-button:disabled{opacity:.7;cursor:not-allowed}.feedback{margin-top:16px;padding:14px 16px;border-radius:18px;font-size:.95rem;line-height:1.6}.feedback.error{background:rgba(220,38,38,.08);color:#b42318;border:1px solid rgba(220,38,38,.12)}.feedback.info{background:rgba(37,83,255,.08);color:#1f3b88;border:1px solid rgba(37,83,255,.12)}.result-column{display:grid;grid-gap:18px;gap:18px}.preview-shell{position:relative}.status-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.status-chip{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;background:rgba(37,83,255,.1);font-size:.88rem}.status-chip,.status-link{color:#2040b6;font-weight:600}.status-link{font-size:.9rem}.preview-canvas{width:100%;height:500px;overflow:hidden;border-radius:20px;border:1px solid rgba(24,35,70,.08);background:linear-gradient(180deg,#ffffff,#f1f4fb)}.preview-canvas canvas{display:block;width:100%;height:100%}.preview-canvas.is-hidden{display:none}.preview-empty{display:flex;min-height:220px;align-items:center;justify-content:center;padding:20px;text-align:center;color:var(--muted);border-radius:20px;border:1px dashed rgba(77,97,154,.24);background:rgba(255,255,255,.72);line-height:1.7}code{padding:.18em .44em;border-radius:999px;background:var(--accent-soft);color:#2040b6;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em}@media (max-width:960px){.workspace-grid{grid-template-columns:1fr}.preview-canvas{height:420px}}@media (max-width:720px){.page-shell{padding:18px 12px 28px}.hero h1{font-size:2rem}.inline-fields,.status-strip{grid-template-columns:1fr;flex-direction:column;align-items:stretch}.form-card,.result-card{padding:16px}.preview-empty,.upload-box,.upload-preview{min-height:180px}.preview-canvas{height:280px}.upload-guidelines{gap:6px}.guide-pill,.upload-meta-list span{font-size:.8rem}.advanced-panel summary,.field select,.field textarea{font-size:.92rem}}