.timmy-root{--timmy-primary: #00BFFF;--timmy-navy: #0A2540;--timmy-bg: #FFFFFF;--timmy-muted: #6B7280;--timmy-shadow: 0 8px 24px -8px rgba(10, 37, 64, .18);--timmy-radius: 14px;display:inline-block;line-height:0}.timmy-root svg{display:block;width:100%;height:100%}.timmy-root[data-paused=true] svg *{animation-play-state:paused!important}.timmy-root.timmy-slim svg{transform:scaleX(.72);transform-origin:center top}.timmy-bubble{position:relative;display:inline-block;max-width:320px;background:var(--timmy-bg);color:var(--timmy-navy);border:2.5px solid var(--timmy-primary);border-radius:var(--timmy-radius);padding:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px;line-height:1.5;box-shadow:var(--timmy-shadow);animation:timmy-bubble-pop .28s cubic-bezier(.34,1.56,.64,1)}@keyframes timmy-bubble-pop{0%{transform:scale(.7) translateY(8px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.timmy-bubble--neutral{border-color:var(--timmy-bubble-neutral, #6B7280)}.timmy-bubble--excited{border-color:var(--timmy-bubble-excited, #FFD93D)}.timmy-bubble__body{display:flex;align-items:flex-start;gap:8px;padding:12px 14px 12px 16px}.timmy-bubble__text{margin:0;flex:1;font-weight:500;word-wrap:break-word}.timmy-bubble__caret{display:inline-block;margin-left:1px;color:var(--timmy-primary);font-weight:600;animation:timmy-caret .9s steps(2) infinite}.timmy-bubble--neutral .timmy-bubble__caret{color:#6b7280}.timmy-bubble--excited .timmy-bubble__caret{color:#ffd93d}@keyframes timmy-caret{0%,50%{opacity:1}51%,to{opacity:0}}.timmy-bubble__close{flex-shrink:0;width:22px;height:22px;border:none;background:transparent;color:var(--timmy-muted);font-size:18px;line-height:1;cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .14s,color .14s;padding:0}.timmy-bubble__close:hover{background:#f3f4f6;color:var(--timmy-navy)}.timmy-bubble__close:focus-visible{outline:2px solid var(--timmy-primary);outline-offset:2px}.timmy-bubble__arrow{position:absolute;width:14px;height:14px;background:var(--timmy-bg);border:2.5px solid var(--timmy-primary);border-top:none;border-left:none}.timmy-bubble--neutral .timmy-bubble__arrow{border-color:var(--timmy-bubble-neutral, #6B7280)}.timmy-bubble--excited .timmy-bubble__arrow{border-color:var(--timmy-bubble-excited, #FFD93D)}.timmy-bubble__arrow--left{left:-9px;top:24px;transform:rotate(135deg)}.timmy-bubble__arrow--right{right:-9px;top:24px;transform:rotate(-45deg)}.timmy-bubble__arrow--bottom{bottom:-9px;left:32px;transform:rotate(45deg)}.timmy-loader{display:inline-flex;align-items:center;gap:12px;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--timmy-navy)}.timmy-loader__text{font-size:14px;font-weight:500;color:var(--timmy-muted)}@media (prefers-reduced-motion: reduce){.timmy-root svg *{animation:none!important}.timmy-bubble{animation:none}.timmy-bubble__caret{animation:none;opacity:1}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,system-ui,-apple-system,sans-serif;background:#f8fafc;color:#0a2540;height:100vh;overflow:hidden}#root{height:100vh}.b-root{display:flex;flex-direction:column;height:100vh}.b-header{display:flex;align-items:center;justify-content:space-between;padding:0 24px;height:56px;background:#fff;border-bottom:1px solid #E5E7EB;flex-shrink:0}.b-header-left{display:flex;align-items:center;gap:10px}.b-header-right{display:flex;align-items:center;gap:8px}.b-logo-dot{width:20px;height:20px;border-radius:50%;background:#00bfff;flex-shrink:0}.b-header-title{font-size:15px;font-weight:700;color:#0a2540;letter-spacing:-.3px}.b-header-nav{display:flex;align-items:center;gap:2px;margin-left:12px;padding-left:12px;border-left:1px solid #E5E7EB}.b-header-nav-link{font-size:12px;font-weight:500;color:#6b7280;text-decoration:none;padding:4px 8px;border-radius:6px;transition:all .1s}.b-header-nav-link:hover{color:#0a2540;background:#f1f5f9}.b-header-badge{font-size:10px;font-weight:600;color:#00bfff;background:#e0f7ff;border-radius:6px;padding:2px 7px}.b-body{display:flex;flex:1;overflow:hidden}.b-preview{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px;padding:40px;overflow-y:auto;background:#f8fafc}.b-preview-inner{display:flex;align-items:center;justify-content:center;min-height:240px}.b-code-block{width:100%;max-width:520px;background:#0a2540;border-radius:12px;padding:20px 24px;overflow-x:auto}.b-code-block pre{font-family:JetBrains Mono,Fira Code,monospace;font-size:12.5px;line-height:1.7;color:#e2e8f0;white-space:pre}.b-panel{width:300px;background:#fff;border-left:1px solid #E5E7EB;overflow-y:auto;flex-shrink:0;padding-bottom:32px}.b-section{padding:20px 20px 4px}.b-section+.b-section{border-top:1px solid #F1F5F9}.b-section-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:#94a3b8;margin-bottom:14px}.b-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.b-label{font-size:13px;font-weight:500;color:#374151;flex-shrink:0}.b-text-input{height:32px;border-radius:8px;border:1.5px solid #E5E7EB;padding:0 10px;font-size:13px;font-family:inherit;color:#0a2540;background:#f9fafb;outline:none;transition:border .12s;width:140px}.b-text-input:focus{border-color:#00bfff;background:#fff}.b-hex{width:88px;font-family:monospace;font-size:12px}.b-select{height:32px;border-radius:8px;border:1.5px solid #E5E7EB;padding:0 10px;font-size:13px;font-family:inherit;color:#0a2540;background:#f9fafb;outline:none;cursor:pointer;width:140px;transition:border .12s}.b-select:focus{border-color:#00bfff}.b-color-wrap{display:flex;align-items:center;gap:6px}.b-color-input{width:32px;height:32px;border-radius:8px;border:1.5px solid #E5E7EB;padding:2px;cursor:pointer;background:none;outline:none}.b-color-input::-webkit-color-swatch-wrapper{padding:0;border-radius:6px}.b-color-input::-webkit-color-swatch{border:none;border-radius:6px}.b-size-grid{display:flex;gap:4px}.b-size-btn{height:28px;min-width:36px;border-radius:6px;border:1.5px solid #E5E7EB;background:#f9fafb;font-size:12px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .1s;padding:0 8px}.b-size-btn:hover{border-color:#00bfff;color:#00bfff}.b-size-btn.active{border-color:#00bfff;background:#e0f7ff;color:#0086cc;font-weight:600}.b-toggle{display:flex;align-items:center;gap:8px;height:28px;border-radius:20px;border:1.5px solid #E5E7EB;background:#f9fafb;padding:0 10px 0 4px;cursor:pointer;transition:all .15s;font-size:12px;font-weight:500;color:#6b7280}.b-toggle:hover{border-color:#00bfff}.b-toggle.active{border-color:#00bfff;background:#e0f7ff;color:#0086cc}.b-toggle-knob{width:18px;height:18px;border-radius:50%;background:#d1d5db;transition:background .15s;flex-shrink:0}.b-toggle.active .b-toggle-knob{background:#00bfff}.b-logo-preview{margin-top:4px;margin-bottom:12px;display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:800;letter-spacing:-.2px;transition:all .15s}.b-preset-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.b-preset-btn{display:flex;align-items:center;gap:7px;height:32px;border-radius:8px;border:1.5px solid #E5E7EB;background:#f9fafb;padding:0 10px;font-size:12px;font-weight:500;color:#374151;cursor:pointer;transition:all .12s}.b-preset-btn:hover{border-color:var(--preset-color);background:#fff}.b-preset-dot{width:10px;height:10px;border-radius:50%;background:var(--preset-color);flex-shrink:0}.b-btn{height:32px;border-radius:8px;padding:0 14px;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;border:none;transition:all .12s}.b-btn-primary{background:#00bfff;color:#fff}.b-btn-primary:hover{background:#00a0d8}.b-btn-secondary{background:#f1f5f9;color:#374151;border:1.5px solid #E5E7EB}.b-btn-secondary:hover{border-color:#00bfff;color:#00bfff}.b-btn-ghost{background:transparent;color:#6b7280}.b-btn-ghost:hover{background:#f1f5f9;color:#374151}.b-platform-select{width:auto;min-width:140px;font-weight:600;border-color:#00bfff;color:#0086cc;background:#e0f7ff}.b-btn-err{background:#ef4444!important}.b-preview-meta{display:flex;align-items:center;gap:10px;margin-bottom:-16px}.b-preview-platform{font-size:13px;font-weight:700;color:#0a2540}.b-preview-domain{font-size:12px;color:#94a3b8}.b-panel::-webkit-scrollbar{width:4px}.b-panel::-webkit-scrollbar-track{background:transparent}.b-panel::-webkit-scrollbar-thumb{background:#e5e7eb;border-radius:2px}
