:root{font-family:Arial,Helvetica,sans-serif;color:#222}body{margin:0;background:#f5f6ff}#root{min-height:100vh}*{box-sizing:border-box}.editor-layout{min-height:78vh;padding:16px;display:grid;grid-template-columns:320px minmax(0,1fr) 320px;gap:12px;align-items:start}.editor-layout.editor-layout-focus{grid-template-columns:minmax(0,1fr)}.editor-layout.editor-layout-focus .canvas-wrapper{max-height:calc(100vh - 260px);min-height:72vh}.panel{background:#fff;border:1px solid #d9dce3;border-radius:8px;padding:12px}.panel h2{margin:0 0 8px;font-size:16px}.layer-item{border:1px solid #d9dce3;border-radius:6px;padding:6px;margin-bottom:8px;cursor:pointer}.layer-item.active{border-color:#3f51b5;background:#eef0ff}.field{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.field input,.field textarea,.field button{border:1px solid #d2d6df;padding:6px;border-radius:6px}.canvas-wrapper{overflow:auto;display:flex;justify-content:center;align-items:center;padding:12px;max-height:78vh}.editor-layout .panel{max-height:78vh;overflow:auto}@media (max-width: 1360px){.editor-layout{grid-template-columns:minmax(0,1fr)}.editor-layout .panel,.canvas-wrapper{max-height:none}}button{background:#3746b0;color:#fff;border:0;border-radius:6px;padding:8px 12px;cursor:pointer}button:disabled{background:#9aa0b7;cursor:not-allowed}pre{background:#111;color:#f8f8f2;padding:12px;border-radius:8px;overflow:auto;min-height:110px;max-height:220px}.top-controls{display:flex;justify-content:flex-end;margin-bottom:8px}.production-gallery{display:grid;gap:16px}.production-hero{border-radius:18px;padding:18px;background:linear-gradient(140deg,#fff,#f3f6fb);border-color:#6f82ad47;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.production-hero h2{margin:0 0 4px}.production-hero-right{text-align:right}.production-hero .production-badge{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;border-radius:999px;background:#eff3ff;color:#2f4d9b;font-weight:600;margin-bottom:6px}.production-hero .production-access{font-size:13px}.production-note{margin-top:6px;color:#55607d;font-size:13px}.production-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.production-card{border-radius:16px;border:1px solid #dde4f2;background:#fff;box-shadow:0 12px 30px #2c3e6b0f;overflow:hidden;display:flex;flex-direction:column}.production-card-preview{background:#f4f7fc;border-bottom:1px solid #e8edf8;padding:8px;min-height:190px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.production-thumb{width:100%;height:190px;object-fit:cover;border-radius:10px}.production-preview-fallback{color:#7d889f;font-size:14px;text-align:center;padding:20px}.production-card-content{display:flex;flex-direction:column;gap:8px;padding:12px}.production-card-body{display:flex;flex-direction:column;gap:8px}.production-card h3{margin:0;font-size:17px}.production-card-header{display:flex;justify-content:space-between;gap:8px;align-items:start}.production-meta{display:flex;flex-wrap:wrap;gap:8px}.format-pill{background:#eef3ff;color:#2f4d9b;border:1px solid #d8e1f5;border-radius:999px;padding:4px 10px;font-size:12px}.production-purpose{color:#55607d;font-size:13px;line-height:1.3}.production-export-status{font-size:12px;color:#4f5b6e}.production-check-status{border-radius:10px;border:1px solid #e6ecf8;background:#f7f9ff;padding:8px}.production-check-text{font-size:12px;margin-bottom:6px;color:#4f5b6e}.production-check-text-warning{color:#7b6400}.production-check-text-error{color:#a61b1b}.production-message-lines{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#4f5b6e}.production-message-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.production-link-btn{margin-top:4px;background:transparent;color:#3f4f80;border:1px dashed #bfcae1;border-radius:999px;padding:5px 10px}.production-card-actions{margin-top:4px;display:grid;gap:8px}.status-pill{display:inline-flex;border-radius:999px;padding:4px 10px;font-size:12px;white-space:nowrap}.status-ok{background:#e9f7ef;color:#10673f;border:1px solid #c3e6d3}.status-warning{background:#fff4dd;color:#815d0a;border:1px solid #f4d9a0}.status-danger{background:#ffefef;color:#a51c1c;border:1px solid #f5c7c7}.status-muted{background:#f3f5f9;color:#4f5b6e;border:1px solid #dde4ef}.btn-primary{background:#4258d4;color:#fff}.btn-secondary{background:#f4f7ff;color:#2f3f7a;border:1px solid #c9d8f8}.btn-subtle{background:#f8f9fd;color:#2f3f7a;border:1px solid #dbe2f0}.production-card-actions .btn-subtle:disabled,.production-card-actions .btn-primary:disabled,.production-card-actions .btn-secondary:disabled{background:#f2f3f8;border-color:#d8dce8;color:#8d96ab}.production-badge+.production-access{margin-top:4px}.campaign-hero{border-radius:16px;border:1px solid #e0e7ff;padding:16px;background:linear-gradient(140deg,#fff,#f4f7ff);display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.campaign-hero h2{margin:0 0 6px}.campaign-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.campaign-materials{display:flex;flex-direction:column;gap:8px}.campaign-material-item{display:flex;gap:8px;align-items:center}.campaign-material-item input{margin:0}.campaign-results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.campaign-pack{margin-top:12px;border:1px solid #d9dce8;border-radius:12px;background:#fff;padding:12px}.campaign-result-card{border:1px solid #d9dce8;border-radius:12px;padding:10px;background:#fff}.campaign-result-card h3{margin:0 0 6px}.campaign-result-title{font-weight:600;margin-bottom:6px}.campaign-result-meta{color:#4f5b74;font-size:12px;margin-bottom:6px}.campaign-result-actions{display:grid;gap:8px;margin-top:8px}.campaign-result-status{margin-top:6px;color:#334155;font-size:12px}.campaign-result-message{font-size:12px;margin:6px 0;color:#4b5563}.campaign-notes{margin-top:12px;background:#f8faff;border:1px solid #e0e7ff;border-radius:10px;padding:10px}@media (max-width: 1080px){.editor-layout{grid-template-columns:1fr}}
