/* Text to Vektor v0.3.75, upload font height 40. */
.flamo3d-tool[data-text-to-vector="1"]{grid-template-columns:minmax(300px,372px) minmax(0,1fr);--temp-danger-bg:#fff3f7;--temp-danger-border:#efbfd0;--temp-danger-text:#d51d54}
.flamo3d-tool[data-text-to-vector="1"][data-theme=dark]{--temp-danger-bg:rgba(255,77,109,.10);--temp-danger-border:rgba(255,77,109,.34);--temp-danger-text:#ff6f8f}
.flamo3d-tool[data-text-to-vector="1"] .flamo3d-controls{overflow:auto;padding-bottom:78px}
.flamo3d-tool[data-text-to-vector="1"] .flamo3d-stack{grid-template-rows:minmax(250px,42%) minmax(300px,1fr);gap:12px;padding-bottom:72px}
.flamo-vector-font-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:end}
.flamo-vector-font-actions{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) 88px;gap:10px;align-items:center}
.flamo-vector-load{width:100%;height:40px;min-height:40px;border:1px solid var(--line);border-radius:14px;background:var(--soft);color:var(--blue);font:inherit;font-weight:600;cursor:pointer}
.flamo-vector-upload{width:100%;height:40px;min-height:40px;border:1px solid var(--blue);border-radius:14px;background:var(--bg);color:var(--blue);font:inherit;font-weight:600;cursor:pointer;white-space:nowrap;display:flex;align-items:center;justify-content:center;gap:8px}
.flamo-vector-upload svg{width:18px;height:18px;flex:0 0 18px}
.flamo-vector-range-number{display:grid;grid-template-columns:minmax(0,1fr) 76px;gap:10px;align-items:center}
.flamo3d-tool[data-text-to-vector="1"] label span{float:right;color:var(--muted)}
.flamo3d-tool[data-text-to-vector="1"] input[type=color]{height:42px;padding:4px;cursor:pointer}
.flamo3d-tool[data-text-to-vector="1"] .hide{display:none!important}
.flamo-vector-preview-card{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:10px}
.flamo-vector-preview-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.flamo-vector-preview-head p{margin:0}.flamo-vector-preview-head span{padding:4px 8px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:11px}
.flamo-vector-preview-wrap{min-height:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#050505}.flamo-vector-preview-wrap svg{display:block;width:100%;height:100%}
.flamo3d-tool[data-text-to-vector="1"] .flamo3d-output-card textarea{width:100%;height:calc(100% - 28px);min-height:240px;resize:none;border:1px dashed var(--line);border-radius:14px;background:var(--bg);color:var(--text);font:500 12px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;padding:12px;outline:0}
@media(max-width:760px){.flamo3d-tool[data-text-to-vector="1"]{display:flex}.flamo3d-tool[data-text-to-vector="1"] .flamo3d-controls{overflow:visible;padding-bottom:0}.flamo3d-tool[data-text-to-vector="1"] .flamo3d-stack{display:flex;flex-direction:column;padding-bottom:0}.flamo3d-tool[data-text-to-vector="1"] .flamo3d-output-card{display:none}.flamo-vector-preview-card{height:260px}.flamo-vector-font-row{grid-template-columns:1fr 1fr}.flamo-vector-font-actions{grid-column:1/-1}.flamo-vector-range-number{grid-template-columns:minmax(0,1fr) 72px}}
/* Temporary custom font upload, scoped to Text to Vektor only. */
.flamo-vector-upload-modal{width:min(92vw,560px);padding:20px!important;overflow:hidden}
.flamo-vector-upload-modal .flamo3d-modal-top{padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid var(--line)}
.flamo-vector-upload-close{width:40px;height:40px;min-height:40px;border-radius:14px}.flamo-vector-close-mobile{display:none!important}
.flamo-vector-dropzone{display:flex!important;min-height:170px;margin:0 0 16px;border:1px dashed color-mix(in srgb,var(--blue) 45%,var(--line))!important;border-radius:18px;background:var(--soft);align-items:center;justify-content:center;flex-direction:column;gap:8px;text-align:center;cursor:pointer;color:var(--text)!important;padding:24px}
.flamo-vector-dropzone.is-drag{border-color:var(--blue)!important;background:color-mix(in srgb,var(--blue) 8%,var(--soft))}
.flamo-vector-dropzone span{float:none!important;color:var(--muted)!important;font-size:12px}.flamo-vector-dropzone .flamo-vector-drop-icon{display:flex;color:var(--blue)!important}.flamo-vector-drop-icon svg{width:28px;height:28px}
.flamo-vector-upload-status{min-height:22px;margin:0 0 16px;color:var(--muted);font-size:13px;line-height:1.45;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.flamo-vector-upload-status.is-error{color:#ff4d6d}.flamo-vector-upload-status.is-success{color:#12a150}.flamo-vector-upload-status svg{width:17px;height:17px;flex:0 0 17px}.flamo-vector-upload-status a{color:currentColor;text-decoration:none;font-weight:700;display:inline-flex;align-items:center;gap:4px}.flamo-vector-upload-status a:hover{text-decoration:underline}.flamo-vector-upload-status a svg{width:14px;height:14px}
.flamo-vector-custom-list{display:flex;flex-direction:column;gap:8px;max-height:220px;overflow:auto;margin-bottom:16px}
.flamo-vector-custom-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:14px;background:var(--bg)}
.flamo-vector-custom-name{margin:0;color:var(--text);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flamo-vector-custom-meta{margin:4px 0 0;color:var(--muted);font-size:11px;display:flex;align-items:center;gap:5px}.flamo-vector-custom-meta svg{width:14px;height:14px;flex:0 0 14px}
.flamo-vector-delete-font{border:1px solid rgba(225,29,72,.28);border-radius:10px;background:rgba(225,29,72,.08);color:#e11d48;min-height:36px;padding:0 10px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-weight:700}.flamo-vector-delete-font svg{width:16px;height:16px}.flamo3d-tool[data-text-to-vector="1"][data-theme=dark] .flamo-vector-delete-font{background:rgba(244,63,94,.12);border-color:rgba(244,63,94,.38);color:#fb7185}
.flamo-vector-upload-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:0}.flamo-vector-upload-actions button{height:40px;min-height:40px;border-radius:14px;font:inherit;font-weight:700;cursor:pointer}.flamo-vector-secondary{border:1px solid var(--line);background:var(--bg);color:var(--text)}.flamo-vector-submit{border:1px solid var(--blue);background:var(--blue);color:#fff}.flamo-vector-submit:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:760px){.flamo-vector-upload-modal{position:fixed!important;left:10px!important;right:10px!important;top:auto!important;bottom:10px!important;width:auto!important;max-height:min(80vh,680px);border-radius:24px!important;padding:18px!important;transform:translateY(110%)!important;opacity:1!important;pointer-events:none;overflow:auto}.flamo-vector-upload-modal.is-open{transform:translateY(0)!important;pointer-events:auto}.flamo-vector-upload-modal .flamo3d-modal-top{padding-bottom:14px;margin-bottom:16px}.flamo-vector-close-desktop{display:none!important}.flamo-vector-close-mobile{display:block!important}.flamo-vector-dropzone{min-height:150px;padding:20px}.flamo-vector-font-actions{grid-template-columns:minmax(0,1fr) 84px}}
@media(max-width:480px){.flamo-vector-font-actions{grid-template-columns:minmax(0,1fr) 78px}.flamo-vector-upload-actions{gap:10px}}
.flamo3d-tool[data-text-to-vector="1"] #fontStatus{display:flex;align-items:center;gap:7px;min-height:20px}.flamo3d-tool[data-text-to-vector="1"] #fontStatus svg{width:16px;height:16px;flex:0 0 16px}.flamo3d-tool[data-text-to-vector="1"] #fontStatus.is-success{color:#12a150}.flamo3d-tool[data-text-to-vector="1"] #fontStatus.is-error{color:#ff4d6d}

/* v0.3.74 upload panel cleanup: desktop compact, mobile handled by sticky morph shell. */
.flamo-vector-upload-modal{padding:0!important;overflow:hidden}
.flamo-vector-upload-modal .flamo3d-modal-top{padding:12px!important;margin:0!important;border-bottom:1px solid var(--line)}
.flamo-vector-upload-modal .flamo-vector-dropzone{margin:12px 12px 10px!important;min-height:132px!important;padding:12px!important;border-radius:16px!important}
.flamo-vector-upload-modal .flamo-vector-upload-status{margin:0 12px 10px!important}
.flamo-vector-upload-modal .flamo-vector-custom-list{margin:0 12px 12px!important;max-height:180px}
.flamo-vector-upload-modal .flamo-vector-upload-actions{padding:12px!important;border-top:1px solid var(--line);gap:10px!important}
.flamo-vector-upload-status a{font-weight:500!important}
@media(max-width:760px){.flamo-vector-upload-modal{display:none!important}}
/* v0.3.75 compact upload controls: all upload modal buttons are 40px tall. */
.flamo-vector-load,.flamo-vector-upload{height:40px!important;min-height:40px!important}
.flamo-vector-upload-close{width:40px!important;height:40px!important;min-height:40px!important}
.flamo-vector-upload-actions button{height:40px!important;min-height:40px!important}

/* v0.3.86 dark backdrop mode for Text to Vektor modals. */
.flamo3d-tool[data-text-to-vector="1"][data-theme=dark] .flamo3d-modal-backdrop{background:rgba(5,18,32,.58)!important}
