:root{--app-footer-height:38px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#1f2937;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f2f3f6;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}html{-webkit-text-size-adjust:100%;height:100%;min-height:100%}*{box-sizing:border-box}body{background:radial-gradient(circle at top,#bfdbfe8c,#0000 32%),linear-gradient(#f8fafc 0%,#eef2ff 100%);min-width:320px;height:100dvh;min-height:100dvh;margin:0;overflow:hidden}button,input,select{font:inherit}button{cursor:pointer}button,input,select,textarea{transition:border-color .2s,box-shadow .2s,background-color .2s,color .2s,transform .2s}button:focus-visible,input:focus-visible,select:focus-visible{border-color:#60a5fa;outline:none;box-shadow:0 0 0 4px #3b82f629}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.6}#app{height:100dvh;min-height:100dvh}.app-shell{flex-direction:column;height:100dvh;min-height:100dvh;display:flex;overflow:hidden}.app-main{flex:1;width:100%;max-width:1720px;min-height:0;margin:0 auto;padding:24px;overflow:hidden}.app-footer{height:var(--app-footer-height);justify-content:center;align-items:center;padding:0 16px;display:flex}.app-footer-link{color:#64748b;font-size:12px;line-height:1;text-decoration:none}.app-footer-link:hover{color:#2563eb;text-decoration:underline}.workspace-page{gap:18px;height:100%;min-height:0;display:grid}.page-view-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.page-view-switch{background:#ffffffb8;border:1px solid #dbeafecc;border-radius:16px;gap:8px;padding:6px;display:inline-flex}.view-switch-active{color:#1d4ed8;background:linear-gradient(#eff6ff,#dbeafe);border-color:#93c5fd}.workspace-grid{grid-template-columns:minmax(0,1.45fr) 360px;align-items:stretch;gap:20px;height:100%;min-height:0;display:grid}.workspace-grid>*{min-width:0;min-height:0}.page-card{background:#ffffffeb;border:1px solid #e5e7ebd9;border-radius:28px;box-shadow:0 18px 45px #0f172a14}.workspace-stage,.control-panel,.page-card{padding:22px}.workspace-stage{flex-direction:column;height:100%;min-height:0;padding:14px;display:flex;overflow:hidden}.control-panel{overscroll-behavior:contain;scrollbar-width:none;-ms-overflow-style:none;height:100%;min-height:0;overflow-y:auto}.control-panel::-webkit-scrollbar{display:none}.stage-toolbar,.actions-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.stage-toolbar{align-items:flex-start;gap:18px}.stage-heading{gap:4px;max-width:640px;display:grid}.stage-status-row{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.stage-kicker{letter-spacing:.08em;text-transform:uppercase;color:#2563eb;margin:0;font-size:12px;font-weight:700}.stage-heading h2,.panel-intro h2{margin:0;line-height:1.1}.stage-heading p,.panel-intro p{color:#64748b;margin:0}.panel-badge,.status-chip{border-radius:999px;align-items:center;min-height:32px;padding:0 12px;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.panel-badge{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.panel-badge-success{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.panel-badge-danger{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.status-chip{color:#334155;background:#f8fafc;border:1px solid #dbeafe}.panel-intro{gap:4px;display:grid}.panel-block+.panel-block{border-top:1px solid #e5e7eb;margin-top:22px;padding-top:22px}.activation-panel{padding-top:0}.activation-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.activation-status-card{background:#f8fafc;border:1px solid #e5e7eb;border-radius:16px;gap:8px;margin:14px 0;padding:14px;display:grid}.activation-status-card p{color:#475569;margin:0;font-size:13px;line-height:1.5}.activation-remaining{font-weight:700;color:#0f172a!important;font-size:15px!important}.activation-inline-remaining{color:#0f172a;font-size:14px;font-weight:700;line-height:1.2}.activation-error{font-weight:600;color:#b91c1c!important}.panel-fieldset{border:0;min-width:0;margin:0;padding:0}.panel-fieldset:disabled{opacity:.62}.panel-headline{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.activation-headline{flex-direction:row;align-items:center}.panel-block h3,.canvas-placeholder h3{margin:0}.panel-block label{gap:8px;margin-bottom:14px;font-size:14px;display:grid}.dimension-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.field-hint{color:#64748b;margin:-6px 0 14px;font-size:12px;line-height:1.5}.panel-block label span{color:#475569;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}label span strong{color:#111827;font-weight:700}input:not([type=checkbox]):not([type=range]),select{background:#fffffff2;border:1px solid #d1d5db;border-radius:14px;width:100%;padding:11px 13px}input:not([type=checkbox]):not([type=range]):hover,select:hover{border-color:#94a3b8}input[type=range]{accent-color:#2563eb;width:100%;margin:4px 0 0}input[type=checkbox]{accent-color:#2563eb}.primary-button,.ghost-button{border:1px solid #dbeafe;border-radius:14px;justify-content:center;align-items:center;min-height:44px;padding:0 16px;font-weight:600;display:inline-flex}@media (hover:hover){.primary-button:hover,.ghost-button:hover{transform:translateY(-1px)}}.primary-button{color:#fff;background:linear-gradient(135deg,#3b82f6,#6366f1);border:none;box-shadow:0 10px 24px #3b82f638}.ghost-button{color:#374151;background:#fff}.actions-row-stretch>*{flex:1}.card-lite{color:#475569;background:#f8fafc;border-radius:16px;gap:4px;padding:12px 14px;display:grid}.canvas-shell{background:linear-gradient(#fff,#f8fafc);border:1px dashed #cbd5e1;border-radius:24px;flex:1;min-height:0;margin-top:0;padding:12px;overflow:hidden}.pixel-canvas-wrap{justify-content:center;align-items:center;height:100%;min-height:100%;display:flex}.pixel-canvas-panel{width:100%;height:100%;min-height:100%}.canvas-placeholder{width:100%;min-height:inherit;text-align:center;color:#6b7280;background:linear-gradient(#eff6ff,#f8fafc);border:1px dashed #bfdbfe;border-radius:20px;place-items:center;padding:24px;display:grid}.canvas-placeholder h3,.canvas-placeholder p{margin:0}.canvas-placeholder p{max-width:420px;margin-top:8px}.canvas-placeholder-upload{cursor:pointer}.canvas-placeholder-locked{cursor:not-allowed;background:linear-gradient(#f8fafc,#eef2f7);border-color:#cbd5e1}@media (hover:hover){.canvas-placeholder-upload:hover{background:linear-gradient(#dbeafe,#f8fafc);border-color:#93c5fd}}.empty-state{text-align:center;color:#6b7280}.empty-state.compact{text-align:left}.pixel-canvas-surface{cursor:grab;touch-action:none;background-color:#0000;background-image:linear-gradient(45deg,#f8fafce6 25%,#0000 25%),linear-gradient(-45deg,#f8fafce6 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#f8fafce6 75%),linear-gradient(-45deg,#0000 75%,#f8fafce6 75%);background-position:0 0,0 12px,12px -12px,-12px 0;background-repeat:repeat,repeat,repeat,repeat;background-size:24px 24px;background-attachment:scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box;border:1px solid #dbe4ee;border-radius:20px;height:100%;min-height:100%;max-height:none;position:relative;overflow:hidden}.pixel-canvas-surface.dragging{cursor:grabbing}.pixel-canvas-element{width:100%;height:100%;display:block}.canvas-lock-overlay{color:#0f172a;text-align:center;pointer-events:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#f8fafcd1;border-radius:16px;place-items:center;padding:20px;font-size:14px;font-weight:700;display:grid;position:absolute;inset:12px}.toggle-grid,.actions-column{gap:10px;display:grid}.export-feedback{color:#475569;margin:0;font-size:13px;line-height:1.5}.export-feedback-error{color:#b91c1c}.toggle-grid-compact{margin-top:14px}.toggle-grid-compact label{align-items:center;gap:10px;margin:0;display:flex}.toggle-grid-compact input{width:auto}.summary-list{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.summary-list li{text-align:center;background:#f9fafb;border-radius:14px;justify-items:center;gap:8px;padding:12px 10px;display:grid}.summary-swatch{border:1px solid #0f172a1f;border-radius:12px;place-items:center;width:44px;height:44px;font-size:10px;font-weight:700;line-height:1;display:grid;box-shadow:inset 0 1px #ffffff59}.summary-code{color:#0f172a;font-size:12px;font-weight:700;line-height:1.2}.summary-count{color:#475569;font-size:12px}@media (width<=1180px){body{overflow:auto}.app-shell,.app-main,.workspace-page,.workspace-grid,.workspace-stage,.control-panel{height:auto;min-height:0;overflow:visible}.workspace-grid{grid-template-columns:1fr}}@media (width<=960px){.app-main{padding:18px}.workspace-stage,.control-panel,.page-card{padding:20px}.workspace-stage{padding:14px}}@media (width<=768px){.app-main{padding:14px}.stage-toolbar,.actions-row,.panel-headline,.page-view-bar{flex-direction:column;align-items:stretch}.page-view-switch{grid-template-columns:1fr 1fr;width:100%;display:grid}.activation-headline{flex-direction:row;justify-content:space-between;align-items:center}.workspace-actions-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;display:grid}.workspace-stage,.control-panel,.page-card{padding:18px}.workspace-stage{padding:12px}.canvas-shell{min-height:clamp(360px,64dvh,620px);padding:12px}.pixel-canvas-wrap,.pixel-canvas-panel,.pixel-canvas-surface{min-height:clamp(340px,60dvh,580px)}.pixel-canvas-surface{max-height:70dvh}.toggle-grid-compact label{background:#fff;border:1px solid #e5e7eb;border-radius:14px;min-height:44px;padding:10px 12px}}@media (width<=560px){.app-main{padding:12px}.workspace-stage,.control-panel,.page-card{padding:14px}.workspace-stage{padding:10px}.page-card{border-radius:20px}.stage-heading h2,.panel-intro h2{font-size:22px}.canvas-shell{min-height:clamp(320px,58dvh,520px);padding:10px}.pixel-canvas-wrap,.pixel-canvas-panel,.pixel-canvas-surface{min-height:clamp(300px,54dvh,480px)}.pixel-canvas-surface{border-radius:16px;max-height:64dvh}.summary-list li{padding:10px 8px}}@media (width<=420px){.stage-status-row,.panel-headline{gap:8px}.primary-button,.ghost-button{min-height:42px}}
