*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow:hidden}.canvas-container{background:#b8b4af;width:100%;height:100%;position:relative}.canvas-container.cursor-hidden{cursor:none}.loading-overlay{z-index:10;background:#b8b4af;transition:opacity .8s ease-out;position:absolute;inset:0}.loading-overlay.hidden{opacity:0;pointer-events:none}.settings-toggle{z-index:20;-webkit-backdrop-filter:blur(12px);color:#ffffffe6;cursor:pointer;letter-spacing:.01em;background:#00000073;border:none;border-radius:1.25rem;align-items:center;gap:.45rem;height:2.5rem;padding:0 1rem 0 .75rem;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:.78rem;font-weight:500;transition:all .3s;display:flex;position:absolute;top:1.25rem;right:1.25rem}.settings-toggle:hover{color:#fff;background:#0009}.settings-toggle.hidden{opacity:0;pointer-events:none;transition:opacity .4s}.settings-toggle.visible{opacity:1;pointer-events:auto;transition:opacity .3s}.settings-backdrop{z-index:25;position:absolute;inset:0}.settings-panel{z-index:30;-webkit-backdrop-filter:blur(24px);background:#fffffff0;border:1px solid #0000000f;border-radius:16px;flex-direction:column;width:320px;max-width:calc(85vw - 1.5rem);transition:transform .35s;display:flex;position:absolute;top:.75rem;bottom:.75rem;right:.75rem;overflow:hidden;transform:translate(calc(100% + .75rem));box-shadow:0 4px 12px #00000014,0 16px 40px #0000001a}.settings-panel.open{transform:translate(0)}.settings-header{border-bottom:1px solid #0000000f;flex-shrink:0;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.settings-header h2{letter-spacing:.02em;color:#1a1a1a;text-transform:uppercase;font-size:.9rem;font-weight:600}.settings-close{color:#666;cursor:pointer;background:#0000000d;border:none;border-radius:50%;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;transition:all .15s;display:flex}.settings-close:hover{color:#333;background:#0000001a}.settings-body{flex:1;padding:.5rem 0;overflow-y:auto}.settings-section{padding:.75rem 1.5rem}.settings-section-title{letter-spacing:.06em;text-transform:uppercase;color:#999;margin-bottom:.6rem;font-size:.7rem;font-weight:600}.settings-section-content{flex-direction:column;gap:.15rem;display:flex}.settings-toggle-row{cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem;padding:.6rem .75rem;transition:background .15s;display:flex}.settings-toggle-row:hover{background:#00000008}.settings-toggle-label{color:#1a1a1a;font-size:.85rem;font-weight:500;display:block}.settings-toggle-desc{color:#999;align-items:center;gap:.4rem;margin-top:.1rem;font-size:.72rem;display:flex}.settings-shortcut{color:#aaa;letter-spacing:.02em;background:#0000000d;border-radius:3px;padding:.1rem .35rem;font-size:.6rem;font-weight:600;display:inline-block}.settings-switch{background:#0000001f;border-radius:11px;flex-shrink:0;width:38px;height:22px;transition:background .25s;position:relative}.settings-switch.on{background:#1a1a1a}.settings-switch-thumb{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .25s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000026}.settings-switch.on .settings-switch-thumb{transform:translate(16px)}.settings-radio{cursor:pointer;border-radius:8px;align-items:center;gap:.75rem;padding:.6rem .75rem;transition:background .15s;display:flex}.settings-radio:hover{background:#00000008}.settings-radio input[type=radio]{display:none}.settings-radio-indicator{border:2px solid #ccc;border-radius:50%;flex-shrink:0;width:18px;height:18px;transition:border-color .15s;position:relative}.settings-radio input:checked+.settings-radio-indicator{border-color:#1a1a1a}.settings-radio input:checked+.settings-radio-indicator:after{content:"";background:#1a1a1a;border-radius:50%;position:absolute;inset:3px}.settings-radio-label{color:#1a1a1a;font-size:.85rem;font-weight:500;display:block}.settings-radio-desc{color:#999;margin-top:.1rem;font-size:.72rem;display:block}.settings-layout-grid{grid-template-columns:1fr 1fr;gap:.4rem;display:grid}.settings-layout-btn{cursor:pointer;text-align:center;background:#00000005;border:2px solid #0000;border-radius:10px;flex-direction:column;align-items:center;gap:.35rem;padding:.6rem .5rem;transition:all .15s;display:flex}.settings-layout-btn:hover{background:#0000000a}.settings-layout-btn.selected{background:#00000008;border-color:#1a1a1a}.settings-layout-label{color:#1a1a1a;font-size:.78rem;font-weight:600}.settings-layout-desc{color:#999;font-size:.62rem}.settings-effects-grid{grid-template-columns:1fr 1fr;gap:.4rem;display:grid}.settings-effect-btn{cursor:pointer;text-align:left;background:#00000005;border:1px solid #00000014;border-radius:8px;flex-direction:column;align-items:flex-start;gap:.15rem;padding:.6rem .7rem;transition:all .15s;display:flex}.settings-effect-btn:hover:not(:disabled){background:#0000000d;border-color:#00000026}.settings-effect-btn:active:not(:disabled){transform:scale(.97)}.settings-effect-btn:disabled{opacity:.5;cursor:not-allowed}.settings-effect-btn.active{background:#0000000f;border-color:#1a1a1a}.settings-effect-label{color:#1a1a1a;font-size:.78rem;font-weight:600}.settings-effect-desc{color:#999;font-size:.65rem}.settings-action-btn{cursor:pointer;color:#1a1a1a;background:#00000005;border:1px solid #00000014;border-radius:8px;align-items:center;gap:.6rem;width:100%;padding:.65rem .75rem;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:.82rem;font-weight:500;transition:all .15s;display:flex}.settings-action-btn:hover{background:#0000000d;border-color:#00000026}.settings-action-btn:active{transform:scale(.98)}.settings-action-btn .settings-shortcut{margin-left:auto}.settings-coming-soon{color:#bbb;border-radius:8px;justify-content:space-between;align-items:center;padding:.55rem .75rem;font-size:.82rem;display:flex}.settings-badge{letter-spacing:.04em;text-transform:uppercase;color:#bbb;background:#0000000a;border-radius:4px;padding:.2rem .5rem;font-size:.6rem;font-weight:600}.settings-footer{text-align:center;color:#aaa;border-top:1px solid #0000000d;margin-top:.5rem;padding:1.5rem 1.5rem 2rem;font-size:.72rem}.settings-footer-heart{filter:drop-shadow(0 0 5px #ef444480);display:inline-block}.settings-footer a{color:#666;font-weight:500;text-decoration:none;transition:color .15s}.settings-footer a:hover{color:#1a1a1a}.mobile-banner-overlay{z-index:50;-webkit-backdrop-filter:blur(6px);background:#00000059;justify-content:center;align-items:center;padding:1.5rem;animation:.3s fadeIn;display:flex;position:absolute;inset:0}.mobile-banner{text-align:center;background:#fff;border-radius:20px;flex-direction:column;align-items:center;gap:.75rem;max-width:320px;padding:2rem 1.75rem;animation:.35s scaleIn;display:flex;box-shadow:0 8px 30px #0000001f,0 2px 8px #0000000f}.mobile-banner-icon{background:#f5f5f5;border-radius:14px;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.mobile-banner-title{color:#1a1a1a;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1.1rem;font-weight:700}.mobile-banner-text{color:#666;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:.85rem;line-height:1.5}.mobile-banner-text strong{color:#1a1a1a}.mobile-banner-btn{color:#fff;cursor:pointer;background:#1a1a1a;border:none;border-radius:12px;width:100%;margin-top:.25rem;padding:.7rem 1.5rem;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:.85rem;font-weight:600;transition:background .15s}.mobile-banner-btn:active{background:#333}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}
