:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{color:#1a1a1a;background:#f4f5f7;margin:0;font-family:system-ui,Segoe UI,Roboto,sans-serif}#root{min-height:100vh}.app{flex-direction:column;height:100vh;display:flex}.app-header{color:#fff;background:#1f2430;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:10px 24px;padding:12px 20px;display:flex}.app-header h1{white-space:nowrap;margin:0;font-size:18px;font-weight:600}.generator-tabs{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.tab-group{align-items:center;gap:8px;display:flex}.tab-group-label{text-transform:uppercase;letter-spacing:.05em;color:#8f97ab;white-space:nowrap;font-size:11px}.tab-divider{background:#ffffff26;width:1px;height:20px;margin-right:2px}.tab{color:#d7dbe3;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #ffffff40;border-radius:6px;padding:6px 14px;font-size:14px}.tab.active{color:#fff;background:#4f6df5;border-color:#4f6df5}.app-body{flex:1;min-height:0;display:flex}.sidebar{background:#fff;border-right:1px solid #dde1e7;flex-shrink:0;width:280px;padding:16px;overflow-y:auto}.sidebar .description{color:#667;margin-bottom:16px;font-size:13px}.field-group{border:1px solid #e2e5eb;border-radius:8px;margin:0 0 14px;padding:10px 12px 14px}.field-group legend{text-transform:uppercase;letter-spacing:.04em;color:#556;padding:0 4px;font-size:12px;font-weight:600}.field{color:#223;justify-content:space-between;align-items:center;gap:8px;margin:8px 0;font-size:13px;display:flex}.field input[type=number],.field input[type=text]{border:1px solid #ccd2db;border-radius:4px;width:110px;padding:4px 6px;font-size:13px}.field-textarea{flex-direction:column;align-items:stretch}.field-textarea textarea{resize:vertical;border:1px solid #ccd2db;border-radius:4px;padding:6px;font-family:inherit;font-size:13px}.field-hint{color:#889;margin:4px 0 0;font-size:11px}.field-checkbox{justify-content:flex-start}.field-checkbox input{order:-1;margin-right:8px}.field-color input{border:1px solid #ccd2db;border-radius:4px;width:40px;height:26px;padding:0}.label-row{align-items:center;gap:6px;margin:6px 0;display:flex}.label-row input[type=text]{border:1px solid #ccd2db;border-radius:4px;flex:1;padding:4px 6px;font-size:13px}.remove-label-button{cursor:pointer;color:#a33;background:#fff;border:1px solid #ccd2db;border-radius:4px;flex-shrink:0;width:24px;height:24px;font-size:14px;line-height:1}.remove-label-button:hover{background:#fdeeee}.add-label-button{cursor:pointer;background:#eef0f4;border:1px dashed #ccd2db;border-radius:6px;width:100%;margin-top:4px;padding:6px;font-size:13px}.add-label-button:hover{background:#e2e6ec}.field-group .hint{color:#889;margin:8px 0 0;font-size:11px}.plot-row{align-items:center;gap:5px;margin:6px 0;display:flex}.plot-num{border:1px solid #ccd2db;border-radius:4px;width:42px;min-width:0;padding:4px 5px;font-size:12px}.plot-arrow{color:#889;font-size:12px}.plot-row input[type=color]{border:1px solid #ccd2db;border-radius:4px;flex-shrink:0;width:26px;height:24px;padding:0}.plot-label{border:1px solid #ccd2db;border-radius:4px;flex:1;min-width:0;padding:4px 6px;font-size:12px}.plot-extend-toggle{color:#445;white-space:nowrap;align-items:center;gap:4px;font-size:12px;display:flex}.line-item{background:#fafbfc;border:1px solid #e2e5eb;border-radius:6px;margin:8px 0;padding:6px 8px}.reset-button{cursor:pointer;background:#eef0f4;border:1px solid #ccd2db;border-radius:6px;width:100%;padding:8px;font-size:13px}.reset-button:hover{background:#e2e6ec}.preview-area{flex-direction:column;flex:1;min-width:0;display:flex}.preview-toolbar{background:#fff;border-bottom:1px solid #dde1e7;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:10px 16px;padding:10px 20px;display:flex}.dimensions{color:#667;font-size:13px}.transparent-toggle{color:#445;cursor:pointer;align-items:center;gap:6px;font-size:13px;display:flex}.export-buttons{gap:8px;margin-left:auto;display:flex}.export-buttons button{color:#fff;cursor:pointer;background:#4f6df5;border:1px solid #4f6df5;border-radius:6px;padding:6px 14px;font-size:13px}.export-buttons button:hover{background:#3d5adf}.preview-canvas-wrap{background:#eceef2;flex:1;justify-content:center;align-items:flex-start;padding:24px;display:flex;overflow:auto}.preview-svg{max-width:100%;height:auto;box-shadow:0 2px 12px #0000001f}.preview-svg.transparent-preview{background-image:linear-gradient(45deg,#ccc 25%,#0000 25%),linear-gradient(-45deg,#ccc 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#ccc 75%),linear-gradient(-45deg,#0000 75%,#ccc 75%);background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px}
