.catalog{margin:0 0 28px}.catalog-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.catalog-heading .eyebrow{font-size:9px;margin-bottom:9px}.catalog-heading h2{font-size:23px;letter-spacing:-.6px;margin:0}.catalog-heading .primary{background:#e5eadc;color:#344c3b;border-color:#c9d3bc;padding:14px 18px}.catalog-tools{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.category-tabs{display:flex;gap:6px;flex-wrap:wrap}.category-tabs button{border:1px solid transparent;border-radius:30px;background:transparent;color:#818a79;font-size:11px;padding:8px 12px}.category-tabs button[aria-pressed=true]{background:#344c3b;color:#fff}.search-label input{width:170px;background:transparent;border:0;border-bottom:1px solid #ced6c5;font-size:11px;padding:10px;color:#344c3b}.model-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px}.model-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 8px 12px;gap:8px;border-radius:12px;background:#f0f2eb;border:1px solid #e2e6dc;min-height:120px;color:#626d58}.model-card svg{width:62px;height:62px;fill:var(--model-color);stroke:#344c3b40;stroke-width:.6;filter:drop-shadow(0 3px 1px #344c3b12)}.model-card>span{font-size:11px}.model-card[aria-pressed=true]{background:#e8eedf;border-color:#70845e;box-shadow:inset 0 0 0 1px #70845e}.catalog-footer{display:flex;justify-content:space-between;align-items:center;padding:8px 0;color:#919987;font-size:10px}.catalog-footer button{font-size:10px}.empty-models{grid-column:1/-1;text-align:center;padding:35px;font-size:13px;color:#818a79}.selected-model{display:flex;gap:12px;align-items:center;margin-bottom:16px}.selected-model svg{width:60px;height:60px;fill:#acb99a;stroke:#6c7e58;stroke-width:.7}.selected-model strong{font-size:16px;font-weight:500}.selected-model p{font-size:11px;color:#8b9581;line-height:1.5;margin:6px 0}.full-width{width:100%;min-width:0;padding:12px 8px;font-size:11px}.project-label{margin:18px 0 8px}.select-label input{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:7px;color:#42523a;background:#fafbf7;font-size:12px}.project-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:14px 4px;border-bottom:1px solid var(--line);font-size:12px}.project-bar details{flex:1}.project-bar summary{cursor:pointer;padding:10px 0}.project-bar summary span{background:#e5ebdc;padding:2px 6px;border-radius:4px;font-size:10px;margin-left:8px}.project-tools{display:flex;gap:4px}.project-tools button{font-size:10px}.saved-item{display:flex;justify-content:space-between;border-top:1px solid #e3e7dd;gap:12px}.saved-item button:first-child{text-align:left;overflow-wrap:anywhere}.saved-item button:last-child{font-size:10px;color:#9b7e73}.saved-item button{padding:10px 0}#saved-projects p{font-size:11px;color:#8b9581;max-width:350px;line-height:1.6}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0,0,0,0)}.shape-dialog{border:1px solid #dae0d1;border-radius:20px;padding:30px;width:min(940px,94vw);max-height:92vh;color:#344336;background:#fafbf7;box-shadow:0 24px 120px #17280f40}.shape-dialog::backdrop{background:#1a271a66;backdrop-filter:blur(4px)}.editor-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.editor-heading .eyebrow{font-size:9px;margin-bottom:10px}.editor-heading h2{font-size:24px;letter-spacing:-.6px;margin:0}.editor-heading>button{font-size:22px;align-self:flex-start}.editor-modes{display:flex;gap:8px;margin:22px 0}.editor-modes button{border:1px solid #d9e0d1;padding:10px 18px;border-radius:25px;background:#fff;color:#7d8774;font-size:12px}.editor-modes button[aria-pressed=true]{background:#344c3b;color:#fff;border-color:#344c3b}.editor-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:26px}.editor-layout canvas{display:block;width:100%;height:auto;min-height:0;border:1px solid #dae1d1;border-radius:12px;cursor:crosshair;touch-action:none;aspect-ratio:5/4}.editor-layout .hint{margin:12px 0}.editor-settings .select-label{margin-bottom:24px}.editor-settings .secondary{padding:12px 18px;width:100%}.editor-settings .range-label{margin-top:14px}.editor-settings input[type=range]{margin-bottom:16px}.editor-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #dee4d6;margin-top:24px;padding-top:20px}.editor-footer .primary{font-size:12px}#editor-status{font-size:12px;line-height:1.6;padding:14px;border-radius:8px;margin:18px 0}.valid{background:#e5eddd;color:#4c6c3b}.invalid{background:#f2e6db;color:#926244}.point-entry{display:flex;align-items:flex-end;gap:8px;margin:14px 0}.point-entry label{font-size:10px;width:70px}.point-entry input{width:100%;padding:7px;margin-top:4px;border:1px solid #cbd5c2;border-radius:5px}.point-entry .secondary{font-size:10px;padding:9px;min-width:0}.point-entry~button{font-size:10px;padding:7px}.shape-dialog [hidden],.catalog [hidden]{display:none!important}.intro{margin-bottom:32px}.preview{min-height:740px}.preview canvas{max-height:650px}.workspace{scroll-margin-top:20px}#scene{image-rendering:auto}@media(max-width:1050px){.model-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.model-card{min-height:105px}.model-card svg{width:48px;height:48px}.catalog-tools{align-items:flex-start;flex-direction:column}.search-label{align-self:flex-end}.category-tabs button{padding:7px 10px}}@media(max-width:640px){.catalog-heading{align-items:stretch;flex-direction:column;gap:14px}.catalog-heading h2{font-size:21px}.catalog-heading .primary{align-self:flex-start}.model-grid{gap:7px}.model-card{padding:8px 4px;min-height:92px}.model-card svg{width:44px;height:44px}.model-card>span{font-size:9px}.category-tabs{gap:3px}.category-tabs button{font-size:10px}.catalog-footer{gap:4px}.preview{min-height:450px}.project-bar{flex-direction:column;gap:6px}.project-bar details{width:100%}.shape-dialog{padding:18px;border-radius:14px}.editor-layout{grid-template-columns:1fr;gap:16px}.editor-heading h2{font-size:20px}.editor-modes{gap:5px}.editor-modes button{font-size:11px;padding:9px 11px}.editor-footer{position:sticky;bottom:-18px;background:#fafbf7;padding:14px 0;margin-top:15px}.editor-footer .primary{padding:13px;font-size:11px}.editor-settings .hint{font-size:10px}.editor-settings .select-label{margin-bottom:16px}.editor-layout canvas{height:auto;min-height:0;max-height:none}.project-tools{flex-wrap:wrap}.intro>div>p:not(.eyebrow){line-height:1.7}}

#svg-dropzone{border:1px dashed #98aa88;border-radius:12px;padding:20px 14px;background:#eff3e9;text-align:center}#svg-dropzone strong{font-size:14px}#svg-dropzone p{font-size:11px;line-height:1.6;color:#839075}#svg-dropzone .secondary{padding:12px 10px;font-size:11px;min-width:0}#svg-dropzone.dragover{background:#dee9d2;border-color:#3c6130}.proportion-option{display:flex;gap:8px;align-items:center;font-size:12px;margin:16px 0}.example-link{font-size:11px;color:#577346;line-height:1.6}.editor-modes{flex-wrap:wrap}.shape-dialog #svg-settings .hint{overflow-wrap:anywhere}#svg-example{padding-left:0;text-align:left;font-size:11px}@media(max-width:640px){.editor-modes button{padding:9px;font-size:10px}}


.image-layout{margin-top:26px}#image-dropzone{border:1px dashed #98aa88;border-radius:12px;padding:18px 14px;background:#eff3e9;text-align:center}#image-dropzone strong{font-size:14px}#image-dropzone p{font-size:11px;line-height:1.6;color:#839075}#image-dropzone.dragover{background:#dee9d2;border-color:#3c6130}#image-dropzone .secondary{font-size:11px;padding:12px;min-width:0}#image-status{font-size:12px;line-height:1.6;border-radius:8px;padding:14px;margin:18px 0}#image-file-info{overflow-wrap:anywhere}.image-dialog .editor-settings .select-label{margin-bottom:18px}.image-dialog #image-preview{cursor:default}.image-dialog .editor-layout>div:first-child{position:sticky;top:0;align-self:start}@media(max-width:640px){.image-dialog .editor-layout>div:first-child{position:static}}


.model-option{position:relative;min-width:0}.model-option .model-card{width:100%;height:100%;padding-top:32px}.favorite-toggle{position:absolute;right:2px;top:2px;border:0;border-radius:50%;width:32px;height:32px;background:transparent;font-size:21px;color:#8b9780;cursor:pointer}.favorite-toggle[aria-pressed=true]{color:#a75d69}.favorite-toggle:focus-visible{outline:2px solid #344c3b;outline-offset:1px}.favorites-toolbar{display:flex;align-items:center;gap:14px;margin:0 0 16px;flex-wrap:wrap}.favorites-toolbar .secondary{font-size:12px;padding:9px 14px}.favorites-toolbar .secondary[aria-pressed=true]{background:#344c3b;color:white}.favorites-toolbar span{font-size:11px;color:#7e8876;flex:1;min-width:160px}.favorites-toolbar .quiet{font-size:11px}@media(max-width:640px){.favorite-toggle{width:36px;height:36px}.favorites-toolbar span{flex-basis:100%;order:3}}

.size-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:16px 0 10px}.size-preset{display:flex;flex-direction:column;gap:7px;text-align:left;padding:10px 7px;background:#f4f6ee;border:1px solid #dce2d4;border-radius:9px;color:#526349;cursor:pointer;min-width:0}.size-preset strong{font-size:13px;font-weight:500}.size-preset span{font-size:9px;line-height:1.5}.size-preset small{font-size:9px;color:#7d8872}.size-preset[aria-pressed=true]{background:#e3ebd8;border-color:#6b8159;box-shadow:inset 0 0 0 1px #6b8159}.size-preset:focus-visible{outline:2px solid #344c3b;outline-offset:2px}.size-status{font-size:11px;line-height:1.5;color:#526349}.size-status:empty{display:none}

.project-bar{flex-wrap:wrap}.project-bar details{min-width:0;flex-basis:100%}.library-tools{display:flex;align-items:flex-end;gap:14px;margin:20px 0 8px;flex-wrap:wrap}.library-tools label{display:flex;flex-direction:column;gap:7px;font-size:11px;color:#76836a;flex:1;min-width:170px}.library-tools input,.library-tools select{width:100%;padding:11px;border:1px solid #d8e0cf;border-radius:8px;background:#fafbf7;color:#42533a;font:inherit}.library-tools input{font-size:12px}.library-tools [hidden]{display:none!important}.library-results{color:#829076;font-size:11px}.saved-info{min-width:0;flex:1}.saved-info button{text-align:left;overflow-wrap:anywhere;max-width:100%}.saved-info p{font-size:11px;line-height:1.6;color:#829076;margin:0 0 10px;overflow-wrap:anywhere}.library-empty{padding:20px 0;color:#829076}.saved-item{gap:14px}.saved-item>button{flex-shrink:0}@media(max-width:640px){.library-tools{gap:10px}.library-tools label{flex-basis:100%}}
