.confirm-dialog-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .15s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.confirm-dialog{background:#fff;border-radius:12px;padding:24px;max-width:400px;width:90%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:slideIn .2s ease-out}.confirm-dialog-title{font-size:18px;font-weight:600;color:#1f2937;margin:0 0 12px;line-height:1.4}.confirm-dialog-message{font-size:14px;color:#6b7280;margin:0 0 24px;line-height:1.6}.confirm-dialog-actions{display:flex;justify-content:flex-end;gap:12px}.confirm-dialog-button{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;border:none}.confirm-dialog-button:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.confirm-dialog-button-cancel{background:#f3f4f6;color:#374151}.confirm-dialog-button-cancel:hover{background:#e5e7eb}.confirm-dialog-button-cancel:active{background:#d1d5db}.confirm-dialog-button-danger{background:#ef4444;color:#fff}.confirm-dialog-button-danger:hover{background:#dc2626}.confirm-dialog-button-danger:active{background:#b91c1c}.confirm-dialog-button-warning{background:#f59e0b;color:#fff}.confirm-dialog-button-warning:hover{background:#d97706}.confirm-dialog-button-warning:active{background:#b45309}@media (prefers-color-scheme: dark){.confirm-dialog{background:#1f2937}.confirm-dialog-title{color:#f9fafb}.confirm-dialog-message{color:#9ca3af}.confirm-dialog-button-cancel{background:#374151;color:#e5e7eb}.confirm-dialog-button-cancel:hover{background:#4b5563}}@media (prefers-reduced-motion: reduce){.confirm-dialog-backdrop,.confirm-dialog{animation:none}}.fab-generator{min-height:auto;background:linear-gradient(135deg,#f5f7fa,#e4e8ec);padding:24px}.fab-generator-container{max-width:var(--tool-container-max-width, 1600px);margin:0 auto;display:grid;grid-template-columns:var(--tool-controls-width, 420px) 1fr;gap:24px}.fab-generator-sidebar{background:var(--white);border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000014;height:fit-content;max-height:none;overflow-y:auto}.fab-generator-sidebar h2{font-size:1.5rem;color:#1a1a2e;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #f0f0f0}.fab-generator-main{display:flex;flex-direction:column;gap:24px}.fab-control-group{margin-bottom:20px}.fab-control-group label{display:block;font-weight:600;color:#333;margin-bottom:8px;font-size:.875rem}.fab-control-group select,.fab-control-group input[type=text],.fab-control-group input[type=number]{width:100%;padding:10px 12px;border:2px solid #e0e0e0;border-radius:8px;font-size:.95rem;transition:border-color .2s ease}.fab-control-group select:focus,.fab-control-group input[type=text]:focus,.fab-control-group input[type=number]:focus{outline:none;border-color:var(--info-color)}.fab-control-group input[type=color]{width:100%;height:40px;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;padding:4px}.fab-control-group input[type=range]{width:100%;height:6px;border-radius:3px;background:#e0e0e0;outline:none;-webkit-appearance:none}.fab-control-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--info-color);cursor:pointer;box-shadow:0 2px 6px #3b82f666}.fab-control-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fab-checkbox-row{display:flex;align-items:center;gap:8px}.fab-checkbox-row input[type=checkbox]{width:18px;height:18px;cursor:pointer}.fab-checkbox-row label{margin:0;cursor:pointer}.fab-theme-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:8px}.fab-theme-btn{width:100%;aspect-ratio:1;border:2px solid transparent;border-radius:8px;cursor:pointer;transition:all .2s ease}.fab-theme-btn:hover{transform:scale(1.1);box-shadow:0 4px 12px #0003}.fab-actions-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.fab-action-item{display:grid;grid-template-columns:1fr 1fr 40px 32px;gap:8px;align-items:center}.fab-action-item select,.fab-action-item input[type=text]{padding:8px;font-size:.85rem}.fab-action-item input[type=color]{height:32px;padding:2px}.fab-remove-action{width:32px;height:32px;border:none;background:#fee2e2;color:var(--danger);border-radius:6px;cursor:pointer;font-size:1.2rem;font-weight:700;transition:all .2s ease}.fab-remove-action:hover:not(:disabled){background:#fecaca}.fab-remove-action:disabled{opacity:.5;cursor:not-allowed}.fab-add-action{width:100%;padding:10px;background:#f0f9ff;border:2px dashed var(--info-color);border-radius:8px;color:var(--info-color);font-weight:600;cursor:pointer;transition:all .2s ease}.fab-add-action:hover{background:#e0f2fe}.fab-preview-section{background:var(--white);border:2px solid #d1d5db;border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000014;box-shadow:0 1px 3px #0000001a}.fab-preview-section h3{font-size:1.1rem;color:#333;margin-bottom:16px}.fab-preview-container{background:#f9fafb;border:2px solid #d1d5db;border-radius:12px;height:300px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.fab-preview-hint{position:absolute;bottom:16px;left:50%;transform:translate(-50%);background:#ffffffe6;padding:8px 16px;border:2px solid #d1d5db;border-radius:20px;font-size:.85rem;color:#666;box-shadow:0 1px 3px #0000001a}.fab-demo-container{position:absolute;bottom:24px;right:24px;display:flex;flex-direction:column;align-items:center}.fab-demo-main{border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;position:relative}.fab-demo-main:hover{transform:scale(1.1)}.fab-shadow-small{box-shadow:0 2px 8px #00000026}.fab-shadow-medium{box-shadow:0 4px 16px #0003}.fab-shadow-large{box-shadow:0 8px 32px #00000040}.fab-demo-icon{position:absolute;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.fab-demo-menu{position:absolute;display:flex;gap:12px;pointer-events:none}.fab-demo-menu-up{flex-direction:column-reverse;bottom:70px}.fab-demo-menu-down{flex-direction:column;top:70px}.fab-demo-menu-left{flex-direction:row-reverse;right:70px;top:50%;transform:translateY(-50%)}.fab-demo-menu-right{flex-direction:row;left:70px;top:50%;transform:translateY(-50%)}.fab-demo-action{border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--white);box-shadow:0 4px 12px #0003;transition:all .3s ease}.fab-demo-container.open .fab-demo-action{pointer-events:auto}.fab-demo-action:hover{transform:scale(1.15)!important}.fab-demo-glass{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3)}.fab-code-section{background:var(--white);border-radius:16px;overflow:hidden;box-shadow:0 4px 20px #00000014}.fab-code-tabs{display:flex;background:var(--gray-50);border-bottom:1px solid var(--gray-200);padding:8px 8px 0;gap:4px}.fab-code-tab{padding:12px 20px;border:none;background:transparent;color:var(--gray-500);font-weight:500;cursor:pointer;border-radius:8px 8px 0 0;transition:all .2s ease}.fab-code-tab:hover{color:var(--gray-700);background:var(--gray-100)}.fab-code-tab.active{background:var(--white);color:var(--info-color);box-shadow:0 -2px 0 var(--info-color) inset}.fab-copy-btn{margin-left:auto;padding:8px 16px;background:var(--info-color);color:var(--white);border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s ease;margin-bottom:8px}.fab-copy-btn:hover{background:#2563eb}.fab-code-output{margin:0;padding:20px;background:var(--gray-800);color:var(--gray-200);font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85rem;line-height:1.6;overflow-x:auto;max-height:400px}.fab-code-output code{font-family:inherit}.control-panel{background-color:#1f2937f2!important;border:2px solid var(--gray-400)!important;border-radius:6px}[data-theme=dark] .control-section{background-color:#1f2937e6!important;border-color:var(--gray-400)!important;border-width:2px}[data-theme=dark] .control-group input,[data-theme=dark] .control-group select,[data-theme=dark] .control-group textarea{background-color:#0f172acc!important;border:2px solid var(--gray-500)!important;color:var(--text-primary)}[data-theme=dark] .control-group label{display:block;color:var(--gray-900);font-size:1rem;margin-bottom:.5rem;font-weight:600;line-height:1.5;letter-spacing:.3px}@media (max-width: 1023px){.fab-generator-container{grid-template-columns:1fr}.fab-generator-sidebar{max-height:none}}@media (max-width: 600px){.fab-generator,.fab-generator-sidebar{padding:16px}.fab-theme-grid{grid-template-columns:repeat(4,1fr)}.fab-action-item{grid-template-columns:1fr 1fr}.fab-action-item input[type=color],.fab-remove-action{grid-column:span 1}}
