:root{color-scheme:light;--background:#f6f7f4;--panel:#ffffff;--panel-strong:#f0f3ee;--ink:#202124;--muted:#6d716b;--line:#d9ded5;--accent:#0f766e;--accent-strong:#0b5f58;--blue:#2563eb;--red:#b42318;--shadow:0 18px 45px rgba(35,39,32,0.1)}*{box-sizing:border-box}body,html{min-height:100%}body{margin:0;background:linear-gradient(180deg,rgba(255,255,255,.8),rgba(246,247,244,.95)),var(--background);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}button{border:0}svg{width:18px;height:18px;fill:currentColor;flex:0 0 auto}.app-shell{width:min(1440px,calc(100% - 32px));min-height:100vh;margin:0 auto;padding:22px 0 28px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 0 20px}.topbar>div:first-child{max-width:760px}.eyebrow{margin:0 0 4px;color:var(--accent);font-size:12px;font-weight:800;text-transform:uppercase}.eyebrow,h1{letter-spacing:0}h1{margin:0;font-size:30px;line-height:1.1}.lede{max-width:680px;margin:8px 0 0;color:var(--muted);font-size:15px;line-height:1.45}.actions,.secondary-actions{display:flex;align-items:center;gap:10px}.ghost-button,.primary-button,.secondary-actions button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;padding:0 15px;cursor:pointer;font-weight:750;transition:transform .14s ease,box-shadow .14s ease,background .14s ease}.primary-button{background:var(--accent);color:#ffffff;box-shadow:0 10px 22px rgba(15,118,110,.24)}.ghost-button,.secondary-actions button{border:1px solid var(--line);background:var(--panel);color:var(--ink)}.ghost-button:hover:not(:disabled),.primary-button:hover:not(:disabled),.secondary-actions button:hover:not(:disabled){transform:translateY(-1px)}.primary-button:disabled,.secondary-actions button:disabled{cursor:not-allowed;opacity:.46;box-shadow:none}.workspace{display:grid;grid-template-columns:330px minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start}.control-panel,.preview-panel{border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.86);box-shadow:var(--shadow)}.control-panel{display:grid;grid-gap:15px;gap:15px;padding:16px;position:-webkit-sticky;position:sticky;top:16px}.drop-zone{min-height:148px;display:grid;place-items:center;grid-gap:7px;gap:7px;border:1px dashed #aab4a4;border-radius:8px;background:#fbfcfa;color:var(--muted);cursor:pointer;text-align:center;transition:border-color .14s ease,background .14s ease,color .14s ease}.drop-zone input{position:absolute;opacity:0;pointer-events:none}.drop-zone svg{width:28px;height:28px;color:var(--accent)}.drop-zone span{width:min(100%,250px);overflow:hidden;color:var(--ink);font-size:16px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.drop-zone small{color:var(--muted);font-size:12px}.drop-zone.is-dragging{border-color:var(--accent);background:#eef8f6;color:var(--accent)}.privacy-note{display:grid;grid-gap:5px;gap:5px;border:1px solid rgba(15,118,110,.22);border-radius:8px;padding:11px 12px;background:#eef8f6}.privacy-note strong{color:var(--accent-strong);font-size:13px}.privacy-note span{color:var(--muted);font-size:12px;line-height:1.35}.color-field,.field-group,.range-field,.swatch-field{display:grid;grid-gap:9px;gap:9px}.color-field label,.field-heading,.range-field span{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:13px;font-weight:750}.range-field strong{color:var(--ink);font-size:13px}.field-heading strong{color:var(--ink);font-size:12px}.segmented{min-height:38px;display:grid;grid-template-columns:repeat(2,1fr);grid-gap:4px;gap:4px;padding:4px;border:1px solid var(--line);border-radius:8px;background:var(--panel-strong)}.segmented.three{grid-template-columns:repeat(3,1fr)}.segmented.four{grid-template-columns:repeat(4,1fr)}.segmented button{min-width:0;border-radius:6px;padding:7px 6px;background:transparent;color:var(--muted);cursor:pointer;font-size:13px;font-weight:800;line-height:1.12;overflow-wrap:anywhere}.segmented button.is-active{background:var(--panel);color:var(--accent-strong);box-shadow:0 2px 8px rgba(35,39,32,.08)}.range-field input{width:100%;accent-color:var(--accent)}.color-field{grid-template-columns:auto 44px 1fr;align-items:center}.color-field input{width:44px;height:34px;border:1px solid var(--line);border-radius:8px;background:transparent;cursor:pointer}.color-field span{color:var(--ink);font-size:13px;font-weight:800}.swatch-field{grid-template-columns:44px 1fr;align-items:center;min-height:34px}.swatch-field span{width:44px;height:34px;border:1px solid var(--line);border-radius:8px}.swatch-field strong{min-width:0;overflow:hidden;color:var(--ink);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.secondary-actions{display:grid;grid-template-columns:1fr 1fr}.secondary-actions button{width:100%}.preview-panel{min-width:0;padding:16px}.status-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:10px;gap:10px;margin-bottom:14px}.metric{min-height:58px;display:grid;align-content:center;grid-gap:4px;gap:4px;border:1px solid var(--line);border-radius:8px;padding:10px;background:#fbfcfa}.metric span{color:var(--muted);font-size:12px;font-weight:750}.metric strong{min-width:0;overflow:hidden;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.error-line{margin-bottom:14px;border:1px solid rgba(180,35,24,.22);border-radius:8px;padding:10px 12px;background:rgba(180,35,24,.08);color:var(--red);font-size:14px;font-weight:750}.preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.preview-frame{min-width:0;border:1px solid var(--line);border-radius:8px;background:linear-gradient(45deg,#f2f4ef 25%,transparent 0),linear-gradient(-45deg,#f2f4ef 25%,transparent 0),linear-gradient(45deg,transparent 75%,#f2f4ef 0),linear-gradient(-45deg,transparent 75%,#f2f4ef 0);background-color:#ffffff;background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px;overflow:hidden}.preview-frame header{height:38px;display:flex;align-items:center;border-bottom:1px solid var(--line);padding:0 12px;background:rgba(255,255,255,.9);color:var(--muted);font-size:13px;font-weight:850}.preview-frame>div{height:clamp(300px,52vh,600px);display:grid;place-items:center;position:relative;padding:18px}.preview-frame img{max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 12px 28px rgba(35,39,32,.14))}.empty-preview,.processing{width:110px;height:110px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.82);color:var(--muted);font-size:14px;font-weight:850}.processing{position:absolute;z-index:1;color:var(--accent-strong)}.code-panel{margin-top:14px;border:1px solid var(--line);border-radius:8px;background:#171a18;color:#e8eee5;overflow:hidden}.code-header{height:38px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid rgba(255,255,255,.08);padding:0 12px;color:#b8c4b2;font-size:13px;font-weight:750}.code-header span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}pre{max-height:210px;margin:0;overflow:auto;padding:14px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.55;white-space:pre}.seo-section{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:26px;gap:26px;margin-top:30px;border-top:1px solid var(--line);padding:26px 0 6px}.seo-section h2{margin:0 0 8px;color:var(--ink);font-size:17px;line-height:1.25;letter-spacing:0}.seo-section p{margin:0;color:var(--muted);font-size:14px;line-height:1.6}@media (max-width:980px){.workspace{grid-template-columns:1fr}.control-panel{position:static}}@media (max-width:760px){.app-shell{width:min(100% - 20px,1440px);padding-top:12px}.topbar{align-items:stretch;flex-direction:column}.topbar>div:first-child{max-width:none}.actions{display:grid;grid-template-columns:1fr 1fr}.actions button{width:100%}h1{font-size:24px}.preview-grid,.seo-section,.status-strip{grid-template-columns:1fr}.preview-frame>div{height:320px}}@media (max-width:420px){.actions,.secondary-actions{grid-template-columns:1fr}.segmented.four,.segmented.three{height:auto;grid-template-columns:1fr}}