:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}:root{--md-sys-color-primary-light:#8b5cf6;--md-sys-color-on-primary-light:#fff;--md-sys-color-primary-container-light:#ede9fe;--md-sys-color-on-primary-container-light:#2e1065;--md-sys-color-secondary-light:#ec489a;--md-sys-color-on-secondary-light:#fff;--md-sys-color-secondary-container-light:#fce7f3;--md-sys-color-on-secondary-container-light:#831843;--md-sys-color-tertiary-light:#10b981;--md-sys-color-on-tertiary-light:#fff;--md-sys-color-tertiary-container-light:#d1fae5;--md-sys-color-on-tertiary-container-light:#064e3b;--md-sys-color-error-light:#ef4444;--md-sys-color-on-error-light:#fff;--md-sys-color-error-container-light:#fee2e2;--md-sys-color-on-error-container-light:#991b1b;--md-sys-color-background-light:#f9fafb;--md-sys-color-on-background-light:#111827;--md-sys-color-surface-light:#fff;--md-sys-color-on-surface-light:#111827;--md-sys-color-surface-variant-light:#f3f4f6;--md-sys-color-on-surface-variant-light:#374151;--md-sys-color-outline-light:#e5e7eb;--md-sys-color-outline-variant-light:#f3f4f6;--md-sys-color-shadow-light:#0000001a;--md-sys-color-surface-tint-light:#8b5cf6;--md-sys-color-surface-container-low-light:#f9fafb;--md-sys-color-surface-container-light:#f3f4f6;--md-sys-color-surface-container-high-light:#e5e7eb;--md-elevation-0-light:none;--md-elevation-1-light:0 1px 3px 0 #00000014, 0 1px 2px 0 #0000000a;--md-elevation-2-light:0 4px 6px -1px #00000014, 0 2px 4px -1px #0000000a;--md-elevation-3-light:0 10px 15px -3px #00000014, 0 4px 6px -2px #0000000a;--md-elevation-4-light:0 20px 25px -5px #00000014, 0 10px 10px -5px #00000005;--md-elevation-5-light:0 25px 50px -12px #00000026;--md-typescale-display-large-light:57px / 64px "Inter", system-ui, -apple-system, sans-serif;--md-typescale-display-medium-light:45px / 52px "Inter", system-ui, -apple-system, sans-serif;--md-typescale-display-small-light:36px / 44px "Inter", system-ui, -apple-system, sans-serif;--md-typescale-headline-large-light:32px / 40px "Inter", system-ui, -apple-system, sans-serif;--md-typescale-headline-medium-light:28px / 36px "Inter", system-ui, -apple-system, sans-serif;--md-typescale-headline-small-light:24px / 32px "Inter", system-ui, -apple-system, sans-serif;--md-typescale-title-large-light:22px / 28px "Inter", system-ui, -apple-system, sans-serif;--md-typescale-title-medium-light:16px / 24px "Inter", system-ui, -apple-system, sans-serif;--md-typescale-title-small-light:14px / 20px "Inter", system-ui, -apple-system, sans-serif;--md-typescale-body-large-light:16px / 24px "Inter", system-ui, -apple-system, sans-serif;--md-typescale-body-medium-light:14px / 20px "Inter", system-ui, -apple-system, sans-serif;--md-typescale-body-small-light:12px / 16px "Inter", system-ui, -apple-system, sans-serif;--md-typescale-label-large-light:14px / 20px "Inter", system-ui, -apple-system, sans-serif;--md-typescale-label-medium-light:12px / 16px "Inter", system-ui, -apple-system, sans-serif;--md-typescale-label-small-light:11px / 16px "Inter", system-ui, -apple-system, sans-serif;--md-motion-duration-short-1:.1s;--md-motion-duration-short-2:.15s;--md-motion-duration-short-3:.2s;--md-motion-duration-short-4:.25s;--md-motion-duration-medium-1:.3s;--md-motion-duration-medium-2:.35s;--md-motion-duration-medium-3:.4s;--md-motion-duration-long-1:.5s;--md-motion-duration-long-2:.6s;--md-motion-easing-standard:cubic-bezier(.2, 0, 0, 1);--md-motion-easing-emphasized:cubic-bezier(.05, .7, .1, 1);--md-motion-easing-decelerate:cubic-bezier(0, 0, 0, 1);--md-motion-easing-accelerate:cubic-bezier(.3, 0, 1, 1);--md-shape-extra-small:4px;--md-shape-small:8px;--md-shape-medium:12px;--md-shape-large:16px;--md-shape-extra-large:24px;--md-shape-full:9999px;--md-opacity-disabled:.38;--md-opacity-medium:.6;--md-opacity-high:.8}@media (prefers-color-scheme:dark){:root{--md-sys-color-primary-dark:#a78bfa;--md-sys-color-on-primary-dark:#2e1065;--md-sys-color-primary-container-dark:#4c1d95;--md-sys-color-on-primary-container-dark:#ede9fe;--md-sys-color-secondary-dark:#f472b6;--md-sys-color-on-secondary-dark:#831843;--md-sys-color-secondary-container-dark:#9d174d;--md-sys-color-on-secondary-container-dark:#fce7f3;--md-sys-color-tertiary-dark:#34d399;--md-sys-color-on-tertiary-dark:#064e3b;--md-sys-color-tertiary-container-dark:#047857;--md-sys-color-on-tertiary-container-dark:#d1fae5;--md-sys-color-error-dark:#f87171;--md-sys-color-on-error-dark:#991b1b;--md-sys-color-error-container-dark:#b91c1c;--md-sys-color-on-error-container-dark:#fee2e2;--md-sys-color-background-dark:#000;--md-sys-color-on-background-dark:#f9fafb;--md-sys-color-surface-dark:#111827;--md-sys-color-on-surface-dark:#f9fafb;--md-sys-color-surface-variant-dark:#1f2937;--md-sys-color-on-surface-variant-dark:#d1d5db;--md-sys-color-outline-dark:#374151;--md-sys-color-outline-variant-dark:#1f2937;--md-sys-color-shadow-dark:#0000004d;--md-sys-color-surface-tint-dark:#a78bfa;--md-sys-color-surface-container-low-dark:#0f0f0f;--md-sys-color-surface-container-dark:#1a1a1a;--md-sys-color-surface-container-high-dark:#252525;--md-elevation-0-dark:none;--md-elevation-1-dark:0 1px 3px 0 #0000004d, 0 1px 2px 0 #0003;--md-elevation-2-dark:0 4px 6px -1px #0000004d, 0 2px 4px -1px #0003;--md-elevation-3-dark:0 10px 15px -3px #0000004d, 0 4px 6px -2px #0003;--md-elevation-4-dark:0 20px 25px -5px #0000004d, 0 10px 10px -5px #0003;--md-elevation-5-dark:0 25px 50px -12px #0006}}.app-container.light{--md-sys-color-primary:var(--md-sys-color-primary-light);--md-sys-color-on-primary:var(--md-sys-color-on-primary-light);--md-sys-color-primary-container:var(--md-sys-color-primary-container-light);--md-sys-color-on-primary-container:var(--md-sys-color-on-primary-container-light);--md-sys-color-secondary:var(--md-sys-color-secondary-light);--md-sys-color-on-secondary:var(--md-sys-color-on-secondary-light);--md-sys-color-secondary-container:var(--md-sys-color-secondary-container-light);--md-sys-color-on-secondary-container:var(--md-sys-color-on-secondary-container-light);--md-sys-color-tertiary:var(--md-sys-color-tertiary-light);--md-sys-color-on-tertiary:var(--md-sys-color-on-tertiary-light);--md-sys-color-tertiary-container:var(--md-sys-color-tertiary-container-light);--md-sys-color-on-tertiary-container:var(--md-sys-color-on-tertiary-container-light);--md-sys-color-error:var(--md-sys-color-error-light);--md-sys-color-on-error:var(--md-sys-color-on-error-light);--md-sys-color-error-container:var(--md-sys-color-error-container-light);--md-sys-color-on-error-container:var(--md-sys-color-on-error-container-light);--md-sys-color-background:var(--md-sys-color-background-light);--md-sys-color-on-background:var(--md-sys-color-on-background-light);--md-sys-color-surface:var(--md-sys-color-surface-light);--md-sys-color-on-surface:var(--md-sys-color-on-surface-light);--md-sys-color-surface-variant:var(--md-sys-color-surface-variant-light);--md-sys-color-on-surface-variant:var(--md-sys-color-on-surface-variant-light);--md-sys-color-outline:var(--md-sys-color-outline-light);--md-sys-color-outline-variant:var(--md-sys-color-outline-variant-light);--md-sys-color-shadow:var(--md-sys-color-shadow-light);--md-sys-color-surface-tint:var(--md-sys-color-surface-tint-light);--md-sys-color-surface-container-low:var(--md-sys-color-surface-container-low-light);--md-sys-color-surface-container:var(--md-sys-color-surface-container-light);--md-sys-color-surface-container-high:var(--md-sys-color-surface-container-high-light);--md-elevation-0:var(--md-elevation-0-light);--md-elevation-1:var(--md-elevation-1-light);--md-elevation-2:var(--md-elevation-2-light);--md-elevation-3:var(--md-elevation-3-light);--md-elevation-4:var(--md-elevation-4-light);--md-elevation-5:var(--md-elevation-5-light);--md-typescale-display-large:var(--md-typescale-display-large-light);--md-typescale-display-medium:var(--md-typescale-display-medium-light);--md-typescale-display-small:var(--md-typescale-display-small-light);--md-typescale-headline-large:var(--md-typescale-headline-large-light);--md-typescale-headline-medium:var(--md-typescale-headline-medium-light);--md-typescale-headline-small:var(--md-typescale-headline-small-light);--md-typescale-title-large:var(--md-typescale-title-large-light);--md-typescale-title-medium:var(--md-typescale-title-medium-light);--md-typescale-title-small:var(--md-typescale-title-small-light);--md-typescale-body-large:var(--md-typescale-body-large-light);--md-typescale-body-medium:var(--md-typescale-body-medium-light);--md-typescale-body-small:var(--md-typescale-body-small-light);--md-typescale-label-large:var(--md-typescale-label-large-light);--md-typescale-label-medium:var(--md-typescale-label-medium-light);--md-typescale-label-small:var(--md-typescale-label-small-light)}.app-container.dark{--md-sys-color-primary:var(--md-sys-color-primary-dark);--md-sys-color-on-primary:var(--md-sys-color-on-primary-dark);--md-sys-color-primary-container:var(--md-sys-color-primary-container-dark);--md-sys-color-on-primary-container:var(--md-sys-color-on-primary-container-dark);--md-sys-color-secondary:var(--md-sys-color-secondary-dark);--md-sys-color-on-secondary:var(--md-sys-color-on-secondary-dark);--md-sys-color-secondary-container:var(--md-sys-color-secondary-container-dark);--md-sys-color-on-secondary-container:var(--md-sys-color-on-secondary-container-dark);--md-sys-color-tertiary:var(--md-sys-color-tertiary-dark);--md-sys-color-on-tertiary:var(--md-sys-color-on-tertiary-dark);--md-sys-color-tertiary-container:var(--md-sys-color-tertiary-container-dark);--md-sys-color-on-tertiary-container:var(--md-sys-color-on-tertiary-container-dark);--md-sys-color-error:var(--md-sys-color-error-dark);--md-sys-color-on-error:var(--md-sys-color-on-error-dark);--md-sys-color-error-container:var(--md-sys-color-error-container-dark);--md-sys-color-on-error-container:var(--md-sys-color-on-error-container-dark);--md-sys-color-background:var(--md-sys-color-background-dark);--md-sys-color-on-background:var(--md-sys-color-on-background-dark);--md-sys-color-surface:var(--md-sys-color-surface-dark);--md-sys-color-on-surface:var(--md-sys-color-on-surface-dark);--md-sys-color-surface-variant:var(--md-sys-color-surface-variant-dark);--md-sys-color-on-surface-variant:var(--md-sys-color-on-surface-variant-dark);--md-sys-color-outline:var(--md-sys-color-outline-dark);--md-sys-color-outline-variant:var(--md-sys-color-outline-variant-dark);--md-sys-color-shadow:var(--md-sys-color-shadow-dark);--md-sys-color-surface-tint:var(--md-sys-color-surface-tint-dark);--md-sys-color-surface-container-low:var(--md-sys-color-surface-container-low-dark);--md-sys-color-surface-container:var(--md-sys-color-surface-container-dark);--md-sys-color-surface-container-high:var(--md-sys-color-surface-container-high-dark);--md-elevation-0:var(--md-elevation-0-dark);--md-elevation-1:var(--md-elevation-1-dark);--md-elevation-2:var(--md-elevation-2-dark);--md-elevation-3:var(--md-elevation-3-dark);--md-elevation-4:var(--md-elevation-4-dark);--md-elevation-5:var(--md-elevation-5-dark);--md-typescale-display-large:var(--md-typescale-display-large-light);--md-typescale-display-medium:var(--md-typescale-display-medium-light);--md-typescale-display-small:var(--md-typescale-display-small-light);--md-typescale-headline-large:var(--md-typescale-headline-large-light);--md-typescale-headline-medium:var(--md-typescale-headline-medium-light);--md-typescale-headline-small:var(--md-typescale-headline-small-light);--md-typescale-title-large:var(--md-typescale-title-large-light);--md-typescale-title-medium:var(--md-typescale-title-medium-light);--md-typescale-title-small:var(--md-typescale-title-small-light);--md-typescale-body-large:var(--md-typescale-body-large-light);--md-typescale-body-medium:var(--md-typescale-body-medium-light);--md-typescale-body-small:var(--md-typescale-body-small-light);--md-typescale-label-large:var(--md-typescale-label-large-light);--md-typescale-label-medium:var(--md-typescale-label-medium-light);--md-typescale-label-small:var(--md-typescale-label-small-light)}*{box-sizing:border-box;margin:0;padding:0}::selection{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:16px}html,body,#root{width:100%;height:100%;overflow:hidden}body{color:var(--md-sys-color-on-background);background-color:var(--md-sys-color-background);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-weight:400;line-height:1.5;overflow:hidden}.display-large{font:var(--md-typescale-display-large);letter-spacing:-.25px;font-weight:400}.display-medium{font:var(--md-typescale-display-medium);letter-spacing:-.25px;font-weight:400}.display-small{font:var(--md-typescale-display-small);letter-spacing:-.25px;font-weight:400}.headline-large{font:var(--md-typescale-headline-large);letter-spacing:-.15px;font-weight:400}.headline-medium{font:var(--md-typescale-headline-medium);letter-spacing:-.15px;font-weight:400}.headline-small{font:var(--md-typescale-headline-small);letter-spacing:-.1px;font-weight:500}.title-large{font:var(--md-typescale-title-large);letter-spacing:0;font-weight:400}.title-medium{font:var(--md-typescale-title-medium);letter-spacing:.1px;font-weight:500}.title-small{font:var(--md-typescale-title-small);letter-spacing:.1px;font-weight:500}.body-large{font:var(--md-typescale-body-large);letter-spacing:.15px;font-weight:400}.body-medium{font:var(--md-typescale-body-medium);letter-spacing:.25px;font-weight:400}.body-small{font:var(--md-typescale-body-small);letter-spacing:.4px;font-weight:400}.label-large{font:var(--md-typescale-label-large);letter-spacing:.1px;font-weight:500}.label-medium{font:var(--md-typescale-label-medium);letter-spacing:.5px;font-weight:500}.label-small{font:var(--md-typescale-label-small);letter-spacing:.5px;font-weight:500}.app-container{width:100vw;height:100vh;transition:background-color var(--md-motion-duration-medium-1) var(--md-motion-easing-standard);background-color:var(--md-sys-color-background);color:var(--md-sys-color-on-background);display:flex;position:fixed;inset:0;overflow:hidden}.sidebar{background-color:var(--md-sys-color-surface);border-right:1px solid var(--md-sys-color-outline-variant);width:80px;transition:all var(--md-motion-duration-medium-1) var(--md-motion-easing-standard);z-index:10;flex-direction:column;flex-shrink:0;align-items:center;gap:8px;padding:24px 0;display:flex;position:relative;overflow:hidden auto}.sidebar-logo{border-radius:var(--md-shape-large);transition:all var(--md-motion-duration-short-3) var(--md-motion-easing-standard);margin-bottom:24px;padding:8px}.logo-icon{object-fit:contain;border-radius:var(--md-shape-medium);width:40px;height:40px;transition:transform var(--md-motion-duration-short-2) var(--md-motion-easing-emphasized)}.logo-icon:hover{transform:scale(1.05)}.sidebar-spacer{flex:1}.sidebar-button-container{justify-content:center;align-items:center;width:56px;height:56px;display:flex;position:relative}.sidebar-button{border-radius:var(--md-shape-large);width:48px;height:48px;transition:all var(--md-motion-duration-short-2) var(--md-motion-easing-standard);cursor:pointer;color:var(--md-sys-color-on-surface-variant);z-index:1;background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.sidebar-button:before{content:"";border-radius:var(--md-shape-large);opacity:0;transition:opacity var(--md-motion-duration-short-1) var(--md-motion-easing-standard);background-color:currentColor;position:absolute;inset:0}.sidebar-button:hover:before{opacity:.08}.sidebar-button.active{color:var(--md-sys-color-primary)}.sidebar-button.active:before{opacity:.12;background-color:var(--md-sys-color-primary)}.sidebar-button-bg{transition:opacity var(--md-motion-duration-medium-1) var(--md-motion-easing-standard);opacity:0;background:linear-gradient(135deg, var(--md-sys-color-primary), var(--md-sys-color-secondary));border-radius:var(--md-shape-large);position:absolute;inset:0}.sidebar-button-bg.active{opacity:.12}.sidebar-button:hover .sidebar-button-bg{opacity:.08}.sidebar-button-noise{pointer-events:none;mix-blend-mode:overlay;opacity:.1;border-radius:var(--md-shape-large);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='1.1' numOctaves='4'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.3'/></svg>");position:absolute;inset:0}.sidebar-tooltip{z-index:1000;pointer-events:none;animation:tooltipFadeIn var(--md-motion-duration-short-2) var(--md-motion-easing-decelerate);position:fixed;top:50%;left:88px;transform:translateY(-50%)}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(-50%)scale(.95)}to{opacity:1;transform:translateY(-50%)scale(1)}}.sidebar-tooltip-content{background-color:var(--md-sys-color-surface-container);color:var(--md-sys-color-on-surface);font:var(--md-typescale-label-medium);border-radius:var(--md-shape-small);box-shadow:var(--md-elevation-2);white-space:nowrap;border:1px solid var(--md-sys-color-outline-variant);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);align-items:center;gap:8px;padding:6px 12px;display:flex}.sidebar-tooltip-shortcut{color:var(--md-sys-color-primary);font-family:JetBrains Mono,monospace;font:var(--md-typescale-label-small)}.sidebar-tooltip-arrow{background-color:var(--md-sys-color-surface-container);border-left:1px solid var(--md-sys-color-outline-variant);border-bottom:1px solid var(--md-sys-color-outline-variant);width:8px;height:8px;position:absolute;top:50%;left:-4px;transform:translateY(-50%)rotate(45deg)}.main-content{background-color:var(--md-sys-color-background);flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.top-bar{background-color:var(--md-sys-color-surface);border-bottom:1px solid var(--md-sys-color-outline-variant);height:64px;transition:all var(--md-motion-duration-medium-1) var(--md-motion-easing-standard);z-index:5;flex-shrink:0;justify-content:space-between;align-items:center;padding:0 24px;display:flex;position:relative}.top-bar-left{flex:1;align-items:center;gap:16px;display:flex}.full-logo{cursor:pointer;transition:opacity var(--md-motion-duration-short-1) var(--md-motion-easing-standard);align-items:center;gap:12px;display:flex}.full-logo:hover{opacity:.8}.full-logo-img{object-fit:contain;height:32px;transition:filter var(--md-motion-duration-medium-1) var(--md-motion-easing-standard)}.beta-badge{font:var(--md-typescale-label-small);background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);border-radius:var(--md-shape-full);letter-spacing:.5px;padding:2px 8px;font-weight:600}.top-bar-center{align-items:center;gap:16px;display:flex}.project-name-container{align-items:center;display:flex}.project-name-display{align-items:center;gap:8px;display:flex}.project-name{font:var(--md-typescale-title-large);color:var(--md-sys-color-on-surface);margin:0;font-weight:600}.edit-name-btn{border-radius:var(--md-shape-full);cursor:pointer;transition:all var(--md-motion-duration-short-1) var(--md-motion-easing-standard);color:var(--md-sys-color-on-surface-variant);background:0 0;border:none;justify-content:center;align-items:center;padding:8px;display:flex}.edit-name-btn:hover{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface)}.edit-name-btn:active{transform:scale(.95)}.project-name-input{border-radius:var(--md-shape-small);font:var(--md-typescale-title-large);background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface);border:1px solid var(--md-sys-color-outline);transition:all var(--md-motion-duration-short-2) var(--md-motion-easing-standard);outline:none;padding:6px 12px;font-weight:600}.project-name-input:focus{border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px var(--md-sys-color-primary-container)}.status-badge{border-radius:var(--md-shape-full);font:var(--md-typescale-label-medium);transition:all var(--md-motion-duration-short-1) var(--md-motion-easing-standard);padding:4px 12px;font-weight:500}.status-badge.ready{background-color:var(--md-sys-color-tertiary-container);color:var(--md-sys-color-on-tertiary-container)}.status-badge.compiling{background-color:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container);animation:1.5s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.top-bar-right{flex:1;justify-content:flex-end;gap:12px;display:flex}.top-bar-btn{font:var(--md-typescale-label-large)!important;padding:8px 20px!important;font-weight:600!important}.editor-preview-container{background-color:var(--md-sys-color-surface);flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.editor-panel{background-color:var(--md-sys-color-surface);border-right:1px solid var(--md-sys-color-outline-variant);flex-direction:column;min-width:0;display:flex;overflow:hidden}.editor-tabs{background-color:var(--md-sys-color-surface);border-bottom:1px solid var(--md-sys-color-outline-variant);flex-shrink:0;align-items:center;gap:4px;height:48px;padding:0 16px;display:flex}.editor-tab{border-radius:var(--md-shape-full);cursor:pointer;transition:all var(--md-motion-duration-short-2) var(--md-motion-easing-standard);font:var(--md-typescale-label-large);color:var(--md-sys-color-on-surface-variant);z-index:1;background:0 0;border:none;align-items:center;gap:8px;padding:8px 16px;font-weight:500;display:flex;position:relative}.editor-tab:before{content:"";border-radius:var(--md-shape-full);opacity:0;transition:opacity var(--md-motion-duration-short-1) var(--md-motion-easing-standard);background-color:currentColor;position:absolute;inset:0}.editor-tab:hover:before{opacity:.08}.editor-tab.active{color:var(--md-sys-color-primary)}.editor-tab.active:before{opacity:.12;background-color:var(--md-sys-color-primary)}.editor-tab-active-bg{border-radius:var(--md-shape-full);background-color:var(--md-sys-color-primary-container);animation:tabActivate var(--md-motion-duration-short-3) var(--md-motion-easing-emphasized);z-index:-1;position:absolute;inset:0}@keyframes tabActivate{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.editor-tab-shortcut{font:var(--md-typescale-label-small);color:var(--md-sys-color-on-surface-variant);opacity:.7;display:none}@media (width>=1024px){.editor-tab-shortcut{display:inline}}.editor-container{flex:1;min-height:0;position:relative;overflow:hidden}.code-editor-container{width:100%;height:100%}.code-editor-container .monaco-editor,.code-editor-container .monaco-editor .view-line,.code-editor-container .monaco-editor .view-lines,.monaco-editor,.monaco-editor .overflow-guard,.monaco-editor .view-lines,.monaco-editor .view-line{text-align:left!important}.resizer{cursor:col-resize;width:4px;transition:all var(--md-motion-duration-short-2) var(--md-motion-easing-standard);z-index:10;background-color:#0000;position:relative}.resizer:before{content:"";background-color:var(--md-sys-color-outline);opacity:0;transition:opacity var(--md-motion-duration-short-1) var(--md-motion-easing-standard);position:absolute;inset:0}.resizer:hover:before{opacity:.5}.resizer:active:before{opacity:.8;background-color:var(--md-sys-color-primary)}.preview-panel{background-color:var(--md-sys-color-surface);flex-direction:column;min-width:0;display:flex;overflow:hidden}.preview-header{background-color:var(--md-sys-color-surface);border-bottom:1px solid var(--md-sys-color-outline-variant);flex-shrink:0;justify-content:space-between;align-items:center;height:48px;padding:0 16px;display:flex}.device-buttons{align-items:center;gap:4px;display:flex}.device-btn{border-radius:var(--md-shape-full);cursor:pointer;transition:all var(--md-motion-duration-short-1) var(--md-motion-easing-standard);color:var(--md-sys-color-on-surface-variant);background:0 0;border:none;justify-content:center;align-items:center;padding:8px;display:flex;position:relative}.device-btn:before{content:"";border-radius:var(--md-shape-full);opacity:0;transition:opacity var(--md-motion-duration-short-1) var(--md-motion-easing-standard);background-color:currentColor;position:absolute;inset:0}.device-btn:hover:before{opacity:.08}.device-btn.active{color:var(--md-sys-color-primary)}.device-btn.active:before{opacity:.12;background-color:var(--md-sys-color-primary)}.preview-actions{align-items:center;gap:4px;display:flex}.preview-action-btn{border-radius:var(--md-shape-full);cursor:pointer;transition:all var(--md-motion-duration-short-1) var(--md-motion-easing-standard);color:var(--md-sys-color-on-surface-variant);background:0 0;border:none;justify-content:center;align-items:center;padding:8px;display:flex;position:relative}.preview-action-btn:before{content:"";border-radius:var(--md-shape-full);opacity:0;transition:opacity var(--md-motion-duration-short-1) var(--md-motion-easing-standard);background-color:currentColor;position:absolute;inset:0}.preview-action-btn:hover:before{opacity:.08}.preview-container{background-color:var(--md-sys-color-background);flex:1;padding:16px;overflow:auto}.preview-iframe-wrapper{transition:all var(--md-motion-duration-medium-2) var(--md-motion-easing-emphasized);border-radius:var(--md-shape-large);background-color:var(--md-sys-color-surface);box-shadow:var(--md-elevation-2);margin:0 auto;overflow:hidden}.preview-iframe-wrapper.max-w-\[375px\]{max-width:375px;height:667px}.preview-iframe-wrapper.max-w-\[768px\]{max-width:768px;height:1024px}.preview-iframe-wrapper.w-full{width:100%;height:100%}.preview-iframe{background-color:#fff;border:none;width:100%;height:100%}.preview-placeholder{background-color:var(--md-sys-color-surface);width:100%;height:100%;color:var(--md-sys-color-on-surface-variant);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.preview-placeholder-icon{color:var(--md-sys-color-outline);margin-bottom:8px;animation:3s ease-in-out infinite float}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.console-panel{background-color:var(--md-sys-color-surface);border-top:1px solid var(--md-sys-color-outline-variant);height:256px;transition:all var(--md-motion-duration-medium-2) var(--md-motion-easing-standard);z-index:5;flex-direction:column;flex-shrink:0;display:flex;position:relative}.console-header{background-color:var(--md-sys-color-surface);border-bottom:1px solid var(--md-sys-color-outline-variant);flex-shrink:0;justify-content:space-between;align-items:center;height:48px;padding:0 16px;display:flex}.console-title{align-items:center;gap:8px;display:flex}.console-icon{color:var(--md-sys-color-primary)}.console-title span{font:var(--md-typescale-label-large);color:var(--md-sys-color-on-surface);font-weight:500}.console-count{font:var(--md-typescale-label-small);color:var(--md-sys-color-on-surface-variant)}.console-actions{align-items:center;gap:4px;display:flex}.console-clear-btn,.console-close-btn{border-radius:var(--md-shape-full);cursor:pointer;transition:all var(--md-motion-duration-short-1) var(--md-motion-easing-standard);font:var(--md-typescale-label-medium);color:var(--md-sys-color-on-surface-variant);background:0 0;border:none;align-items:center;gap:6px;padding:6px 12px;display:flex;position:relative}.console-clear-btn:before,.console-close-btn:before{content:"";border-radius:var(--md-shape-full);opacity:0;transition:opacity var(--md-motion-duration-short-1) var(--md-motion-easing-standard);background-color:currentColor;position:absolute;inset:0}.console-clear-btn:hover:before,.console-close-btn:hover:before{opacity:.08}.console-clear-btn:hover{color:var(--md-sys-color-error)}.console-output{background-color:var(--md-sys-color-surface-variant);flex:1;padding:12px;font-family:JetBrains Mono,monospace;font-size:12px;overflow-y:auto}.console-empty{text-align:center;color:var(--md-sys-color-on-surface-variant);font:var(--md-typescale-body-medium);padding:32px}.console-log{border-radius:var(--md-shape-small);transition:background-color var(--md-motion-duration-short-1) var(--md-motion-easing-standard);margin-bottom:4px;padding:6px 12px;font-family:JetBrains Mono,monospace;font-size:12px}.console-log:hover{background-color:var(--md-sys-color-surface)}.console-log.log{color:var(--md-sys-color-tertiary)}.console-log.error{color:var(--md-sys-color-error)}.console-log.warn{color:var(--md-sys-color-secondary)}.console-time{color:var(--md-sys-color-on-surface-variant);font:var(--md-typescale-label-small);margin-right:12px}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn var(--md-motion-duration-short-3) var(--md-motion-easing-decelerate);background-color:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{border-radius:var(--md-shape-extra-large);background-color:var(--md-sys-color-surface-container);width:100%;max-height:90vh;box-shadow:var(--md-elevation-5);animation:modalSlideUp var(--md-motion-duration-short-4) var(--md-motion-easing-emphasized);position:relative;overflow:hidden}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(40px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-content.max-w-md{max-width:448px}.modal-content.max-w-lg{max-width:512px}.modal-content.max-w-3xl{max-width:768px}.modal-content.max-w-4xl{max-width:896px}.modal-header{border-bottom:1px solid var(--md-sys-color-outline-variant);justify-content:space-between;align-items:center;padding:24px 24px 16px;display:flex}.modal-title{font:var(--md-typescale-headline-small);color:var(--md-sys-color-on-surface);align-items:center;gap:8px;font-weight:500;display:flex}.modal-close{border-radius:var(--md-shape-full);cursor:pointer;transition:all var(--md-motion-duration-short-1) var(--md-motion-easing-standard);color:var(--md-sys-color-on-surface-variant);background:0 0;border:none;justify-content:center;align-items:center;padding:8px;display:flex;position:relative}.modal-close:before{content:"";border-radius:var(--md-shape-full);opacity:0;transition:opacity var(--md-motion-duration-short-1) var(--md-motion-easing-standard);background-color:currentColor;position:absolute;inset:0}.modal-close:hover:before{opacity:.08}.modal-close:active{transform:scale(.95)}.modal-body{max-height:calc(90vh - 80px);padding:24px;overflow-y:auto}.shortcuts-container{flex-direction:column;gap:28px;display:flex}.shortcuts-category{font:var(--md-typescale-title-medium);color:var(--md-sys-color-primary);letter-spacing:.1px;align-items:center;gap:8px;margin-bottom:16px;font-weight:600;display:flex}.shortcuts-list{flex-direction:column;gap:8px;display:flex}.shortcuts-item{border-radius:var(--md-shape-medium);transition:background-color var(--md-motion-duration-short-1) var(--md-motion-easing-standard);justify-content:space-between;align-items:center;padding:12px;display:flex}.shortcuts-item:hover{background-color:var(--md-sys-color-surface-variant)}.shortcuts-desc{font:var(--md-typescale-body-medium);color:var(--md-sys-color-on-surface)}.shortcuts-keys{gap:8px;display:flex}.shortcut-key{border-radius:var(--md-shape-small);font-family:JetBrains Mono,monospace;font:var(--md-typescale-label-small);background-color:var(--md-sys-color-surface-container-high);color:var(--md-sys-color-primary);border:1px solid var(--md-sys-color-outline-variant);box-shadow:var(--md-elevation-0);transition:all var(--md-motion-duration-short-1) var(--md-motion-easing-standard);padding:4px 10px;font-weight:500}.shortcut-key:hover{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);transform:translateY(-1px)}.settings-container{flex-direction:column;gap:28px;display:flex}.settings-section{border-top:1px solid var(--md-sys-color-outline-variant);padding-top:24px}.settings-section:first-child{border-top:none;padding-top:0}.settings-section-title{font:var(--md-typescale-title-medium);color:var(--md-sys-color-on-surface);align-items:center;gap:10px;margin-bottom:20px;font-weight:600;display:flex}.settings-section-icon{color:var(--md-sys-color-primary)}.settings-options{flex-direction:column;gap:24px;display:flex}.settings-option{flex-direction:column;gap:10px;display:flex}.settings-label{font:var(--md-typescale-body-medium);color:var(--md-sys-color-on-surface-variant)}.settings-slider{border-radius:var(--md-shape-extra-small);appearance:none;background:linear-gradient(90deg, var(--md-sys-color-primary), var(--md-sys-color-secondary));outline:none;width:100%;height:4px}.settings-slider::-webkit-slider-thumb{-webkit-appearance:none;background-color:var(--md-sys-color-primary);cursor:pointer;border:2px solid var(--md-sys-color-surface);width:18px;height:18px;box-shadow:var(--md-elevation-1);transition:transform var(--md-motion-duration-short-1) var(--md-motion-easing-standard);border-radius:50%}.settings-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.settings-toggle{justify-content:space-between;align-items:center;display:flex}.settings-toggle-btn{border-radius:var(--md-shape-full);font:var(--md-typescale-label-medium);border:1px solid var(--md-sys-color-outline);cursor:pointer;transition:all var(--md-motion-duration-short-1) var(--md-motion-easing-standard);color:var(--md-sys-color-on-surface-variant);background:0 0;padding:8px 20px;font-weight:500}.settings-toggle-btn:hover{border-color:var(--md-sys-color-primary);color:var(--md-sys-color-primary)}.settings-toggle-btn.active{background-color:var(--md-sys-color-primary);border-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary)}.settings-theme-buttons{gap:12px;display:flex}.settings-theme-btn{border-radius:var(--md-shape-full);font:var(--md-typescale-label-medium);border:1px solid var(--md-sys-color-outline);cursor:pointer;transition:all var(--md-motion-duration-short-1) var(--md-motion-easing-standard);color:var(--md-sys-color-on-surface-variant);background:0 0;padding:8px 20px;font-weight:500}.settings-theme-btn:hover{border-color:var(--md-sys-color-primary);color:var(--md-sys-color-primary)}.settings-theme-btn.active{background-color:var(--md-sys-color-primary);border-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary)}.settings-storage{flex-direction:column;gap:16px;display:flex}.settings-storage-info{background-color:var(--md-sys-color-surface-variant);border-radius:var(--md-shape-medium);justify-content:space-between;align-items:center;padding:12px;display:flex}.settings-storage-value{font-family:JetBrains Mono,monospace;font:var(--md-typescale-label-medium);color:var(--md-sys-color-primary);font-weight:600}.settings-clear-storage{border-radius:var(--md-shape-full);font:var(--md-typescale-label-medium);background-color:var(--md-sys-color-error-container);color:var(--md-sys-color-on-error-container);cursor:pointer;transition:all var(--md-motion-duration-short-1) var(--md-motion-easing-standard);border:none;width:fit-content;padding:10px 20px;font-weight:500}.settings-clear-storage:hover{background-color:var(--md-sys-color-error);color:var(--md-sys-color-on-error);transform:translateY(-1px)}.settings-clear-storage:active{transform:translateY(0)}.import-container{flex-direction:column;gap:24px;display:flex}.import-label{font:var(--md-typescale-body-medium);color:var(--md-sys-color-on-surface);margin-bottom:8px;font-weight:500;display:block}.import-file-input{border-radius:var(--md-shape-medium);width:100%;font:var(--md-typescale-body-medium);background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface);border:1px solid var(--md-sys-color-outline);cursor:pointer;transition:all var(--md-motion-duration-short-1) var(--md-motion-easing-standard);padding:12px 16px}.import-file-input:hover{border-color:var(--md-sys-color-primary);background-color:var(--md-sys-color-surface-container)}.import-textarea{border-radius:var(--md-shape-medium);width:100%;height:280px;font-family:JetBrains Mono,monospace;font:var(--md-typescale-body-small);background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface);border:1px solid var(--md-sys-color-outline);resize:vertical;transition:all var(--md-motion-duration-short-1) var(--md-motion-easing-standard);padding:12px}.import-textarea:focus{border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px var(--md-sys-color-primary-container);outline:none}.import-error{border-radius:var(--md-shape-medium);font:var(--md-typescale-body-medium);background-color:var(--md-sys-color-error-container);color:var(--md-sys-color-on-error-container);border-left:4px solid var(--md-sys-color-error);padding:12px 16px}.import-actions{gap:12px;margin-top:8px;display:flex}.reset-modal-content{text-align:center;flex-direction:column;align-items:center;gap:24px;padding:8px 0;display:flex}.reset-modal-icon{color:var(--md-sys-color-secondary);animation:.6s cubic-bezier(.36,.07,.19,.97) both gentleShake}@keyframes gentleShake{0%,to{transform:rotate(0)}10%,30%,50%,70%,90%{transform:rotate(-2deg)}20%,40%,60%,80%{transform:rotate(2deg)}}.reset-modal-content p{font:var(--md-typescale-body-large);color:var(--md-sys-color-on-surface-variant);text-align:center;max-width:320px;line-height:1.5}.reset-modal-actions{gap:12px;width:100%;margin-top:8px;display:flex}.reset-btn{flex:1;justify-content:center}.gradient-button{color:#fff;cursor:pointer;background-size:250% 250%;border:none;border-radius:9999px;align-items:center;gap:8px;padding:12px 24px;font-weight:600;transition:all .3s;animation:5s linear infinite gradientMove,6s ease-in-out infinite morph;display:inline-flex;position:relative;overflow:hidden;box-shadow:inset 0 1px 2px #ffffff40,inset 0 -2px 6px #0006}.gradient-button.primary{background:linear-gradient(270deg,#ff4d8d,#ff6a3d,#ff4d8d)}.gradient-button.success{background:linear-gradient(270deg,#00d4ff,#09ff00,#00d4ff)}.gradient-button.warning{background:linear-gradient(270deg,gold,#ff9500,gold)}.gradient-button.danger{background:linear-gradient(270deg,#f05,#f30,#f05)}.gradient-button.secondary{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:none;background:#ffffff1a;animation:none}.gradient-button:hover{transform:scale(1.05)}.gradient-button:active{transform:scale(.95)}.gradient-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.gradient-button-overlay{pointer-events:none;mix-blend-mode:overlay;opacity:.6;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='1.1' numOctaves='4'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/></svg>");position:absolute;inset:0}.gradient-button-glow{opacity:0;filter:blur(8px);z-index:-1;background:conic-gradient(#ff4d8d,#ff6a3d,#ff4d8d);border-radius:9999px;transition:opacity .3s;position:absolute;inset:-3px}.gradient-button:hover .gradient-button-glow{opacity:.9}@keyframes gradientMove{0%{background-position:0%}to{background-position:100%}}@keyframes morph{0%,to{border-radius:9999px}50%{border-radius:40px}}.notifications-container{z-index:1100;flex-direction:column;gap:12px;display:flex;position:fixed;bottom:24px;right:24px}.notification{border-radius:var(--md-shape-medium);background-color:var(--md-sys-color-surface-container);color:var(--md-sys-color-on-surface);box-shadow:var(--md-elevation-3);animation:snackbarSlideIn var(--md-motion-duration-short-3) var(--md-motion-easing-emphasized);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);max-width:400px;font:var(--md-typescale-body-medium);border-left:4px solid;align-items:center;gap:12px;padding:12px 20px;display:flex}@keyframes snackbarSlideIn{0%{opacity:0;transform:translate(100px)scale(.9)}to{opacity:1;transform:translate(0)scale(1)}}.notification.success{border-left-color:var(--md-sys-color-tertiary)}.notification.warning{border-left-color:var(--md-sys-color-secondary)}.notification.error{border-left-color:var(--md-sys-color-error)}.notification.info{border-left-color:var(--md-sys-color-primary)}.notification-icon{flex-shrink:0}.notification.success .notification-icon{color:var(--md-sys-color-tertiary)}.notification.warning .notification-icon{color:var(--md-sys-color-secondary)}.notification.error .notification-icon{color:var(--md-sys-color-error)}.notification.info .notification-icon{color:var(--md-sys-color-primary)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--md-shape-extra-small)}::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline);border-radius:var(--md-shape-extra-small);transition:background var(--md-motion-duration-short-1) var(--md-motion-easing-standard)}::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-primary)}.flex-1{flex:1}.justify-center{justify-content:center}.z-10{z-index:10}.relative{position:relative}:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px;border-radius:var(--md-shape-small)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}::selection{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}@media (width<=768px){.sidebar{width:64px;padding:16px 0}.top-bar{height:56px;padding:0 16px}.project-name{font:var(--md-typescale-title-medium)}.top-bar-right{gap:8px}.top-bar-btn{padding:6px 12px!important}.editor-tab{padding:6px 12px}.editor-tab span:not(:first-child){display:none}.console-panel{height:200px}.modal-content{width:calc(100% - 32px);margin:16px}.notification{max-width:calc(100vw - 32px)}}@media (width<=480px){.sidebar{display:none}.editor-preview-container{flex-direction:column}.resizer{display:none}.editor-panel,.preview-panel{height:50%;width:100%!important}.preview-iframe-wrapper.max-w-\[375px\]{max-width:100%;height:100%}.top-bar-right .top-bar-btn span:not(:first-child){display:none}.top-bar-right .top-bar-btn{padding:8px!important}.modal-header{padding:20px 20px 12px}.modal-body{padding:20px}}.monaco-editor .margin-view-overlays .line-numbers{text-align:right!important;padding-right:12px!important;font-family:JetBrains Mono,monospace!important}.monaco-editor .view-line{text-align:left!important;font-family:JetBrains Mono,monospace!important}.monaco-editor .view-lines,.monaco-editor .cursors-layer,.monaco-editor .monaco-scrollable-element{text-align:left!important}input[type=range]{-webkit-appearance:none;background:linear-gradient(90deg, var(--md-sys-color-primary), var(--md-sys-color-secondary));border-radius:var(--md-shape-extra-small);height:4px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--md-sys-color-surface);cursor:pointer;border:2px solid var(--md-sys-color-primary);width:18px;height:18px;box-shadow:var(--md-elevation-1);transition:transform var(--md-motion-duration-short-1) var(--md-motion-easing-standard);border-radius:50%}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2)}.glass-effect{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background-color:#ffffff0d;border:1px solid #ffffff1a}.dark .glass-effect{background-color:#0000004d;border-color:#ffffff0d}.app-container,.sidebar,.top-bar,.editor-tabs,.preview-header,.console-panel,.modal-content{transition:background-color var(--md-motion-duration-medium-1) var(--md-motion-easing-standard), border-color var(--md-motion-duration-medium-1) var(--md-motion-easing-standard), box-shadow var(--md-motion-duration-medium-1) var(--md-motion-easing-standard)}.hover-lift{transition:transform var(--md-motion-duration-short-2) var(--md-motion-easing-emphasized), box-shadow var(--md-motion-duration-short-2) var(--md-motion-easing-emphasized)}.hover-lift:hover{box-shadow:var(--md-elevation-2);transform:translateY(-2px)}.loading-spinner{border:2px solid var(--md-sys-color-outline);border-top-color:var(--md-sys-color-primary);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.card{background-color:var(--md-sys-color-surface);border-radius:var(--md-shape-large);transition:all var(--md-motion-duration-short-2) var(--md-motion-easing-standard);border:1px solid var(--md-sys-color-outline-variant);padding:20px}.card:hover{box-shadow:var(--md-elevation-2);border-color:var(--md-sys-color-outline)}button:active:not(:disabled){transform:scale(.98)}input,textarea,select{transition:all var(--md-motion-duration-short-1) var(--md-motion-easing-standard)}input:focus,textarea:focus,select:focus{transform:translateY(-1px)}
