@keyframes lf-ken-burns{0%{transform:scale(1) translate(0)}to{transform:scale(var(--kb-scale, 1.15)) translate(-2%,-1%)}}@keyframes lf-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes lf-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.lf-builder-page-shifted{margin-right:380px;transition:margin-right .3s cubic-bezier(.4,0,.2,1)}.lf-builder-page-collapsed{margin-right:0;transition:margin-right .3s cubic-bezier(.4,0,.2,1)}.lf-builder-sidebar{position:fixed;top:0;right:0;width:380px;height:100vh;background:#0a0a0ff2;backdrop-filter:blur(20px);border-left:1px solid rgba(255,255,255,.06);z-index:9999;display:flex;flex-direction:column;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#ffffffe6;font-size:13px;line-height:1.4;transform:translate(0);transition:transform .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.lf-builder-sidebar.collapsed{transform:translate(380px)}.lf-builder-toggle{position:fixed;top:50%;right:380px;transform:translateY(-50%);width:28px;height:64px;background:#0a0a0fe6;backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-right:none;border-radius:8px 0 0 8px;color:#ffffff80;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10000;transition:right .3s cubic-bezier(.4,0,.2,1),color .15s ease,background .15s ease}.lf-builder-toggle:hover{color:#ffffffe6;background:#14141ef2}.lf-builder-toggle.collapsed{right:0}.lf-builder-header{padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.lf-builder-header h2{font-size:14px;font-weight:600;letter-spacing:-.01em;color:#ffffffe6;margin:0}.lf-builder-header-badge{font-size:10px;font-weight:500;padding:2px 8px;border-radius:100px;background:#ffffff0f;color:#fff6}.lf-builder-tabs{display:flex;gap:0;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0;padding:0 4px}.lf-builder-tab{flex:1;padding:10px 4px;background:none;border:none;color:#fff6;font-family:inherit;font-size:11px;font-weight:500;cursor:pointer;transition:color .15s ease;position:relative;text-align:center;display:flex;flex-direction:column;align-items:center;gap:3px}.lf-builder-tab:hover{color:#ffffffb3}.lf-builder-tab.active{color:#477eeb}.lf-builder-tab.active:after{content:"";position:absolute;bottom:-1px;left:12%;right:12%;height:2px;background:#477eeb;border-radius:2px 2px 0 0}.lf-builder-tab svg{width:16px;height:16px}.lf-builder-panel{flex:1;overflow-y:auto;overflow-x:hidden;padding:16px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.1) transparent}.lf-builder-panel::-webkit-scrollbar{width:5px}.lf-builder-panel::-webkit-scrollbar-track{background:transparent}.lf-builder-panel::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.lf-builder-section{margin-bottom:20px}.lf-builder-section-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#ffffff59;margin-bottom:10px}.lf-builder-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;font-size:12px;color:#fff9}.lf-builder-label-value{font-size:11px;font-variant-numeric:tabular-nums;color:#ffffff59}.lf-builder-slider{-webkit-appearance:none;appearance:none;width:100%;height:4px;background:#ffffff14;border-radius:4px;outline:none;cursor:pointer;transition:background .15s ease}.lf-builder-slider:hover{background:#ffffff1f}.lf-builder-slider::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:#477eeb;cursor:pointer;border:2px solid rgba(10,10,15,.9);transition:transform .15s ease}.lf-builder-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.lf-builder-slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#477eeb;cursor:pointer;border:2px solid rgba(10,10,15,.9)}.lf-builder-swatch-row{display:flex;align-items:center;gap:10px;margin-bottom:8px}.lf-builder-swatch{width:32px;height:32px;border-radius:8px;border:2px solid rgba(255,255,255,.1);cursor:pointer;position:relative;overflow:hidden;flex-shrink:0;transition:border-color .15s ease}.lf-builder-swatch:hover{border-color:#ffffff40}.lf-builder-swatch input[type=color]{position:absolute;inset:-8px;width:calc(100% + 16px);height:calc(100% + 16px);cursor:pointer;border:none;padding:0}.lf-builder-palette{display:flex;gap:2px;border-radius:6px;overflow:hidden;margin-top:6px}.lf-builder-palette-step{flex:1;height:20px;transition:background-color .15s ease}.lf-builder-select{width:100%;padding:8px 28px 8px 12px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:#fffc;font-family:inherit;font-size:12px;outline:none;cursor:pointer;transition:border-color .15s ease;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='rgba(255,255,255,0.3)' viewBox='0 0 24 24'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.lf-builder-select:hover,.lf-builder-select:focus{border-color:#ffffff26}.lf-builder-select option{background:#1a1a1f;color:#ffffffe6}.lf-builder-preset-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.lf-builder-preset-btn{padding:8px 12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:#fff9;font-family:inherit;font-size:11px;font-weight:500;cursor:pointer;transition:all .15s ease;text-align:center}.lf-builder-preset-btn:hover{background:#ffffff14;color:#ffffffe6}.lf-builder-preset-btn.active{background:#3b82f626;border-color:#477eeb;color:#759ef0}.lf-builder-image-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.lf-builder-image-thumb{aspect-ratio:16 / 10;border-radius:6px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:border-color .15s ease,opacity .15s ease;position:relative}.lf-builder-image-thumb:hover{border-color:#fff3}.lf-builder-image-thumb.active{border-color:#477eeb}.lf-builder-image-thumb img{width:100%;height:100%;object-fit:cover;display:block}.lf-builder-pills{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:12px}.lf-builder-pill{padding:4px 10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:100px;color:#ffffff80;font-family:inherit;font-size:11px;cursor:pointer;transition:all .15s ease}.lf-builder-pill:hover{background:#ffffff14;color:#fffc}.lf-builder-pill.active{background:#3b82f626;border-color:#477eeb;color:#759ef0}.lf-builder-pos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;width:72px}.lf-builder-pos-cell{width:22px;height:22px;border-radius:4px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);cursor:pointer;transition:all .15s ease}.lf-builder-pos-cell:hover{background:#ffffff1f}.lf-builder-pos-cell.active{background:#477eeb;border-color:#477eeb}.lf-builder-actions{display:flex;gap:6px;padding:12px 16px;border-top:1px solid rgba(255,255,255,.06);flex-shrink:0}.lf-builder-action-btn{flex:1;padding:8px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:#ffffff80;font-family:inherit;font-size:11px;font-weight:500;cursor:pointer;transition:all .15s ease;text-align:center}.lf-builder-action-btn:hover{background:#ffffff14;color:#ffffffe6}.lf-builder-action-btn.danger:hover{background:#ef444426;border-color:#ef44444d;color:#f87171}.lf-builder-mood-card{padding:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:10px;cursor:pointer;transition:all .15s ease;display:flex;flex-direction:column;gap:8px}.lf-builder-mood-card:hover{background:#ffffff0f;border-color:#ffffff1f}.lf-builder-mood-card .preview-colors{display:flex;gap:3px;border-radius:4px;overflow:hidden;height:24px}.lf-builder-mood-card .preview-colors div{flex:1}.lf-builder-mood-card .card-label{font-size:12px;font-weight:500;color:#ffffffb3}.lf-builder-mood-card .card-desc{font-size:10px;color:#ffffff59}.lf-builder-selection-highlight{position:fixed;pointer-events:none;border:2px solid hsl(220,80%,60%);background:#477eeb14;border-radius:4px;z-index:9998;transition:all .1s ease}.lf-builder-selection-label{position:absolute;top:-24px;left:0;background:#477eeb;color:#fff;font-size:10px;font-weight:600;padding:2px 8px;border-radius:4px;white-space:nowrap;font-family:system-ui,sans-serif}.lf-builder-font-preview{padding:10px;background:#ffffff08;border-radius:8px;margin-top:8px}.lf-builder-font-preview-heading{font-size:20px;font-weight:700;color:#ffffffd9;margin-bottom:4px;line-height:1.2}.lf-builder-font-preview-body{font-size:13px;color:#ffffff80;line-height:1.5}.lf-builder-history-bar{display:flex;gap:4px;padding:8px 16px;border-bottom:1px solid rgba(255,255,255,.04);flex-shrink:0}.lf-builder-history-btn{padding:4px 8px;background:none;border:1px solid rgba(255,255,255,.06);border-radius:6px;color:#ffffff59;cursor:pointer;font-family:inherit;font-size:11px;display:flex;align-items:center;gap:4px;transition:all .15s ease}.lf-builder-history-btn:hover:not(:disabled){color:#ffffffb3;background:#ffffff0a}.lf-builder-history-btn:disabled{opacity:.25;cursor:default}.lf-builder-toast{position:fixed;bottom:20px;right:400px;background:#0a0a0ff2;backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);color:#ffffffe6;padding:10px 16px;border-radius:8px;font-family:system-ui,sans-serif;font-size:12px;z-index:10001;opacity:0;transform:translateY(10px);transition:all .2s ease;pointer-events:none}.lf-builder-toast.show{opacity:1;transform:translateY(0)}@keyframes lf-ai-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.lf-builder-ai-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.1);border-top-color:#477eeb;border-radius:50%;animation:lf-ai-spin .8s linear infinite;flex-shrink:0}
