*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#000;--surface:#000;--surface-2:#2c2c2e;--border:hsla(0,0%,100%,.14);--text:hsla(0,0%,100%,.92);--text-muted:hsla(0,0%,100%,.55);--text-dim:hsla(0,0%,100%,.32);--accent:#affa01;--accent-dim:rgba(175,250,1,.16);--danger:#ff453a;--glass-accent-text:#000;--glass-accent-bg:linear-gradient(180deg,hsla(0,0%,100%,.08),hsla(0,0%,100%,0) 45%),#affa01;--glass-accent-shadow-soft:inset 0 1px 0 hsla(0,0%,100%,.14),inset 0 0 0 1px hsla(0,0%,100%,.06),0 2px 8px rgba(0,0,0,.12);--glass-dark-bg:linear-gradient(180deg,hsla(0,0%,100%,.04),hsla(0,0%,100%,0) 45%),rgba(42,42,46,.84);--glass-dark-shadow:inset 0 1px 0 hsla(0,0%,100%,.06),inset 0 0 0 1px hsla(0,0%,100%,.04),0 2px 6px rgba(0,0,0,.18);--sheet-bg:rgba(28,28,30,.92);--sheet-border:hsla(0,0%,100%,.08);--glass-track-bg:linear-gradient(135deg,hsla(0,0%,100%,.08),hsla(0,0%,100%,0) 18%,hsla(0,0%,100%,0) 82%,hsla(0,0%,100%,.04)),rgba(30,30,34,.12);--glass-track-blur:saturate(180%) blur(8px);--glass-track-shadow:inset 0 1px 0 hsla(0,0%,100%,.12),inset 0 0 0 1px hsla(0,0%,100%,.06),0 2px 8px rgba(0,0,0,.15);--glass-track-active-bg:hsla(0,0%,100%,.22)}body,html{height:100%;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Pretendard,sans-serif;font-size:13px;line-height:1.45;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;overflow:hidden}button,input{font-family:inherit;-webkit-tap-highlight-color:transparent}.mobile-screen{position:fixed;inset:0;display:flex;flex-direction:column;background:var(--bg);z-index:10}.pwa-prompt-screen{z-index:9999;color:#fff}.screen-nav{position:absolute;top:0;left:0;right:0;z-index:20;padding:14px 16px;pointer-events:none}.nav-back-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--glass-dark-bg);box-shadow:var(--glass-dark-shadow);backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);border:none;border-radius:50%;cursor:pointer;pointer-events:auto;transition:transform .12s cubic-bezier(.2,.8,.2,1),filter .15s}.nav-back-btn:hover{filter:brightness(1.12)}.editor-nav .nav-back-btn{animation:tmplSheetIn .32s cubic-bezier(.16,1,.3,1)}.nav-back-btn:active{transform:scale(.92)}.btn-pill{display:flex;align-items:center;justify-content:center;gap:6px;height:50px;padding:0 28px;border:none;border-radius:25px;font-family:inherit;font-size:16px;font-weight:700;cursor:pointer;letter-spacing:-.01em;transition:filter .15s,transform .12s cubic-bezier(.2,.8,.2,1);white-space:nowrap}.btn-pill:hover{filter:brightness(1.05)}.btn-pill:active{transform:scale(.96);filter:brightness(.96)}.btn-pill:disabled{cursor:not-allowed;opacity:.55;transform:none}.btn-pill-accent{background:var(--glass-accent-bg);box-shadow:var(--glass-accent-shadow-soft);color:var(--glass-accent-text)}.btn-pill-accent,.btn-pill-dark{backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);font-weight:600}.btn-pill-dark{background:var(--glass-dark-bg);box-shadow:var(--glass-dark-shadow);color:hsla(0,0%,100%,.92)}.btn-pill-block{width:100%}.btn-pill-capped{width:100%;max-width:480px}.btn-pill-auto{flex:0 0 auto}.btn-pill-grow{flex:1 1}.glass-track{background:var(--glass-track-bg);backdrop-filter:var(--glass-track-blur);-webkit-backdrop-filter:var(--glass-track-blur);box-shadow:var(--glass-track-shadow)}.glass-track-active{background:var(--glass-track-active-bg)}.spinner{width:18px;height:18px;border:2px solid hsla(0,0%,100%,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0;display:inline-block}.spinner-green{border-color:rgba(175,250,1,.3);border-top-color:var(--accent)}@keyframes spin{to{transform:rotate(1turn)}}.analyzing-overlay{position:fixed;inset:0;z-index:999;background:rgba(0,0,0,.82);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.analyzing-text{font-size:15px;font-weight:600;color:#fff}.analyze-error{font-size:12px;color:var(--danger);line-height:1.4;padding:8px 10px;background:rgba(224,85,85,.1);border-radius:8px;border:1px solid rgba(224,85,85,.2)}.landing-screen{position:fixed;inset:0;z-index:50;background:var(--bg);display:flex;flex-direction:column;padding-bottom:env(safe-area-inset-bottom,0)}.landing-nav{text-align:center;padding:18px 20px 12px}.landing-body{flex:1 1;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:24px 24px 16px;min-height:0}.home-promo-card{width:100%;border-radius:26px;overflow:hidden;background:#1c1c1e}.home-promo-illustration{width:100%;display:block}.home-promo-content{padding:24px}.home-promo-title{font-size:19px;font-weight:700;color:#fff;line-height:1.1}.home-promo-desc{font-size:14px;color:hsla(0,0%,100%,.8);line-height:1.5;margin-top:8px}.home-cta-bar{margin-top:14px;width:100%;background:#1c1c1e;border-radius:26px;padding:27px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;transition:background .2s}.home-cta-bar.dragging,.home-cta-bar:hover{background:#212123}.home-cta-text{font-size:18px;font-weight:700;color:#fff;line-height:1.4;letter-spacing:-.01em}.home-cta-arrow{flex-shrink:0;width:44px;height:44px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center}.onboarding-overlay{position:fixed;inset:0;z-index:60;background:rgba(0,0,0,.5);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;justify-content:center;align-items:flex-start;padding-top:23vh}.onboarding-card{width:calc(100% - 68px);max-width:325px;border-radius:26px;overflow:hidden;background:#fff;touch-action:pan-y}.onboarding-slides{overflow:hidden}.onboarding-slide-track{display:flex;width:100%;will-change:transform}.onboarding-slide{flex:0 0 100%;min-width:100%}.onboarding-mockup{width:100%;display:block;-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.onboarding-content{padding:24px 24px 0}.onboarding-footer-area{padding:0 24px}.onboarding-title{font-size:19px;font-weight:700;color:#000;line-height:1.1}.onboarding-desc{font-size:14px;color:rgba(0,0,0,.8);line-height:1.5;margin-top:8px}.onboarding-divider{height:1px;background:rgba(0,0,0,.1);margin:16px -24px 0}.onboarding-footer{position:relative;display:flex;align-items:center;justify-content:space-between;padding:14px 0 20px}.onboarding-next,.onboarding-skip{position:relative;top:1px;font-size:14px;font-weight:500;background:none;border:none;padding:0;cursor:pointer}.onboarding-skip{color:rgba(0,0,0,.4)}.onboarding-next{color:#000}.onboarding-dots{position:absolute;left:50%;top:calc(50% - 2px);transform:translate(-50%,-50%);display:flex;align-items:center;gap:11px}.onboarding-dot{width:7px;height:7px;border-radius:50%;background:#000;opacity:.3}.onboarding-dot.active{opacity:1}.photo-preview-canvas-area{flex:1 1;min-height:0;overflow:hidden;background:var(--bg);display:flex;align-items:center;justify-content:center;transition:filter .3s}.photo-preview-canvas-area.dimmed{filter:brightness(.45)}.photo-preview-canvas-area .canvas-preview{width:100%;height:auto;display:block}.photo-preview-bottom{flex-shrink:0;display:flex;align-items:center;gap:12px;padding:16px 20px calc(40px + env(safe-area-inset-bottom, 0px));background:var(--bg)}.sheet-handle{width:36px;height:4px;background:hsla(0,0%,100%,.2);border-radius:2px;margin:0 auto 16px;flex-shrink:0}.record-choice-screen{background:var(--bg)}.record-choice-body{flex:1 1;min-height:0;overflow:hidden;padding:max(72px,env(safe-area-inset-top,0px) + 64px) 20px 20px;display:flex;flex-direction:column;gap:16px}.record-choice-title{font-size:24px;font-weight:700;color:#fff;letter-spacing:-.02em;flex-shrink:0}.record-choice-instruction-row{display:flex;align-items:flex-start;gap:12px;flex-shrink:0;margin-top:14px}.record-choice-icon{width:40px;height:40px;box-sizing:border-box;background:hsla(0,0%,100%,.06);border:1px solid hsla(0,0%,100%,.1);border-radius:10px;flex-shrink:0;object-fit:cover;box-shadow:0 1px 3px rgba(0,0,0,.4);position:relative;top:1px}.record-choice-instruction-text{display:flex;flex-direction:column;gap:4px;padding-top:1px}.record-choice-instruction-main{font-size:15px;font-weight:600;color:#fff;line-height:1.35}.record-choice-instruction-sub{font-size:13px;font-weight:400;color:var(--text-muted);line-height:1.35}.record-choice-example-area{flex:1 1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.record-choice-example-card{position:relative;background:#fff;border-radius:14px;padding:4px;box-shadow:0 8px 24px rgba(0,0,0,.3);height:85%;aspect-ratio:786/1470;max-width:100%;overflow:hidden}.record-choice-example-badge{position:absolute;top:10px;right:10px;z-index:1;background:rgba(0,0,0,.4);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;font-size:11px;font-weight:600;letter-spacing:-.01em;padding:5px 10px;border-radius:999px}.record-choice-example-img{display:block;width:100%;height:100%;object-fit:contain;border-radius:11px}.record-choice-footer{flex-shrink:0;display:flex;flex-direction:column;gap:10px;padding:12px 20px calc(32px + env(safe-area-inset-bottom, 0px))}.confirm-screen{position:fixed;inset:0;display:flex;flex-direction:column;z-index:10}.confirm-bg{position:relative;flex:1 1;min-height:0;z-index:0;overflow-y:scroll;-webkit-overflow-scrolling:touch}.confirm-bg-img{width:100%;height:auto;display:block}.confirm-bg-dim{position:fixed;inset:0;background:rgba(0,0,0,.55);pointer-events:none;z-index:1}.confirm-back-btn{position:absolute;top:14px;left:16px;z-index:2;pointer-events:auto}.confirm-sheet{position:relative;z-index:1;flex-shrink:0;margin-top:-20px;background:var(--sheet-bg);backdrop-filter:saturate(180%) blur(24px);-webkit-backdrop-filter:saturate(180%) blur(24px);border-top:1px solid var(--sheet-border);border-radius:26px 26px 0 0;box-shadow:0 -8px 28px rgba(0,0,0,.35);padding:26px 16px 0;display:flex;flex-direction:column;gap:8px;animation:slideUp .18s ease}.confirm-sheet::-webkit-scrollbar{display:none}.confirm-sheet-handle{width:36px;height:4px;background:hsla(0,0%,100%,.2);border-radius:2px;margin:0 auto 4px;flex-shrink:0}.confirm-title{font-size:22px;font-weight:700;color:#fff;letter-spacing:-.02em;padding-left:6px}.confirm-subtitle{font-size:13px;color:var(--accent);font-weight:400;margin-top:-6px;margin-bottom:10px;padding-left:6px}.confirm-distance-wrap{position:relative}.confirm-distance-input{width:100%;background:hsla(0,0%,100%,.06);box-shadow:none;border:none;border-radius:18px;color:#fff;font-family:inherit;font-size:16px;font-weight:600;padding:16px 20px;transition:box-shadow .15s}.confirm-distance-input:focus{outline:none;box-shadow:0 0 0 2px var(--accent)}.confirm-distance-input::placeholder{color:var(--text-dim)}.confirm-distance-unit{position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:12px;color:var(--text-muted);pointer-events:none}.confirm-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.confirm-cell{background:hsla(0,0%,100%,.06);box-shadow:none;border:none;border-radius:18px;padding:12px 12px 10px;display:flex;flex-direction:column;gap:5px;transition:box-shadow .15s}.confirm-cell:has(.confirm-cell-input:focus){box-shadow:0 0 0 2px var(--accent)}.confirm-cell-input{width:100%;background:transparent;border:none;color:#fff;font-family:inherit;font-size:17px;font-weight:600;padding:0;min-width:0}.confirm-cell-input:focus{outline:none}.confirm-cell-input::placeholder{color:hsla(0,0%,100%,.2)}.confirm-cell-label{font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.confirm-actions{display:flex;gap:10px;margin-top:8px;padding-bottom:calc(40px + env(safe-area-inset-bottom, 0px))}.editor-screen{background:var(--bg)}.editor-nav .nav-icon-btn{width:44px;height:44px}.editor-canvas-wrap{flex:1 1;min-height:0;display:flex;align-items:center;justify-content:center;padding-bottom:32px;overflow:hidden;position:relative;background:var(--bg);container-type:size}.editor-canvas-inner{position:relative;width:min(100%,100cqh * (1080/1350));aspect-ratio:1080/1350;max-width:100%;max-height:100%;flex-shrink:0}.canvas-preview{width:100%;height:100%;display:block;touch-action:none;transform:translateZ(0);-webkit-transform:translateZ(0)}.sticker-trash-zone{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:0;z-index:10;pointer-events:none}.sticker-trash-hint{font-size:13px;font-weight:500;line-height:1;color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.6);white-space:nowrap}.sticker-trash-icon{width:56px;height:56px;margin-top:-3px;color:#fff;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 1px 6px rgba(0,0,0,.6));transition:transform .15s cubic-bezier(.2,.8,.2,1)}.sticker-trash-zone.active .sticker-trash-icon{transform:scale(1.1)}.editor-nav{position:absolute;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:14px 16px;pointer-events:none}.editor-nav>*{pointer-events:auto}.editor-nav-actions{display:flex;align-items:center;gap:8px;animation:tmplSheetIn .32s cubic-bezier(.16,1,.3,1)}.nav-icon-btn{position:relative;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--glass-dark-bg);box-shadow:var(--glass-dark-shadow);backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);border:none;border-radius:50%;color:hsla(0,0%,100%,.75);cursor:pointer;transition:transform .12s cubic-bezier(.2,.8,.2,1),filter .15s,color .15s}.nav-icon-btn:hover{filter:brightness(1.12)}.nav-icon-btn:active{transform:scale(.92)}.nav-icon-btn.active{background:var(--accent-dim);color:var(--accent);box-shadow:inset 0 0 0 1.5px var(--accent)}.nav-icon-btn:disabled{opacity:.5;cursor:not-allowed}.nav-icon-btn.pulse{animation:navIconPulse 2.6s ease-in-out infinite}@keyframes navIconPulse{0%,60%{box-shadow:var(--glass-dark-shadow),0 0 0 0 rgba(175,250,1,.5)}30%{box-shadow:var(--glass-dark-shadow),0 0 14px 6px rgba(175,250,1,0)}}.nav-color-btn{padding:0;overflow:hidden}.nav-color-btn input[type=color]{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer;border:none;padding:0}.nav-color-swatch{width:20px;height:20px;border-radius:50%;box-shadow:0 0 0 2px hsla(0,0%,100%,.3),inset 0 -2px 3px rgba(0,0,0,.25),inset 0 1px 1px hsla(0,0%,100%,.4)}.tmpl-done-btn{align-self:center;width:auto;height:46px;padding:0 24px;display:flex;align-items:center;justify-content:center;background:var(--glass-dark-bg);box-shadow:var(--glass-dark-shadow);backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);border:none;border-radius:23px;color:hsla(0,0%,100%,.92);font-family:inherit;font-size:15px;font-weight:600;cursor:pointer;transition:transform .1s,filter .15s}.tmpl-done-btn:hover{filter:brightness(1.1)}.tmpl-done-btn:active{transform:scale(.97)}.tmpl-sheet.tmpl-sheet-minimal{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border-top:none;border-radius:0;box-shadow:none;display:flex;flex-direction:column;gap:12px}.editor-nav-title{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:hsla(0,0%,100%,.9);font-size:14px;font-weight:600;letter-spacing:-.01em;text-shadow:0 1px 6px rgba(0,0,0,.6);pointer-events:none;white-space:nowrap}.btn-save-pill{height:40px;padding:0 18px;background:var(--glass-accent-bg);box-shadow:var(--glass-accent-shadow-soft);backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);border:none;border-radius:20px;color:var(--glass-accent-text);font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;letter-spacing:-.01em;transition:filter .15s,transform .1s}.btn-save-pill:hover{filter:brightness(1.05)}.btn-save-pill:active{transform:scale(.97)}.btn-save-pill-done{background:hsla(0,0%,100%,.92);box-shadow:none;color:#000}.editor-bottom-panel{position:absolute;left:0;right:0;bottom:0;z-index:15;display:flex;flex-direction:column}.editor-options-sheet{background:rgba(40,40,42,.92);backdrop-filter:saturate(180%) blur(24px);-webkit-backdrop-filter:saturate(180%) blur(24px);border-top:1px solid var(--sheet-border);min-height:62px;display:flex;align-items:center}.editor-options-row{display:flex;align-items:center;gap:8px;padding:12px 20px;overflow-x:auto;scrollbar-width:none;width:100%}.editor-options-row::-webkit-scrollbar{display:none}.editor-opts-divider{flex-shrink:0;width:1px;height:20px;background:hsla(0,0%,100%,.12);border-radius:1px}.editor-color-picker{position:relative;flex-shrink:0;cursor:pointer}.editor-color-picker input[type=color]{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer;border:none;padding:0}.editor-color-circle{width:36px;height:36px;border-radius:50%;border:2px solid hsla(0,0%,100%,.28);flex-shrink:0;display:block;box-shadow:0 0 0 1px rgba(0,0,0,.3)}.editor-tmpl-btn{flex-shrink:0;height:36px;padding:0 14px;background:hsla(240,3%,49%,.24);border:none;border-radius:16px;color:hsla(0,0%,100%,.7);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,color .15s,transform .1s;white-space:nowrap}.editor-tmpl-btn:active{transform:scale(.95)}.editor-tmpl-btn.active{background:var(--accent);color:#000}.editor-behind-btn{flex-shrink:0;height:36px;padding:0 14px;background:hsla(240,3%,49%,.24);border:none;border-radius:16px;color:hsla(0,0%,100%,.7);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,color .15s,transform .1s;white-space:nowrap;display:flex;align-items:center}.editor-behind-btn:active{transform:scale(.95)}.editor-behind-btn.active{background:var(--accent-dim);color:var(--accent)}.editor-behind-btn:disabled{opacity:.4;cursor:not-allowed}.editor-tabbar{display:flex;align-items:center;height:62px;border-radius:999px;margin:0 14px calc(32px + env(safe-area-inset-bottom, 0px));padding:4px;gap:2px;flex-shrink:0;background:rgba(60,60,64,.45)}.editor-tab-item{flex:1 1;height:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:0 1px;background:none;border:none;border-radius:999px;color:#fff;font-family:inherit;font-size:11px;font-weight:500;cursor:pointer;transition:color .15s,background .15s,transform .1s,box-shadow .15s;letter-spacing:-.01em}.editor-tab-item:active{transform:scale(.94)}.editor-tab-item.active{color:var(--accent);background:var(--glass-track-active-bg)}.editor-tab-item.active svg{color:var(--accent)}.editor-tab-item svg{transition:color .15s}.editor-tab-item.editor-tab-reset{color:#fff}.editor-tab-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;transform:translateY(-1px)}.coach-overlay{position:absolute;inset:0;z-index:600;background:rgba(0,0,0,.55);cursor:pointer;animation:coachFadeIn .2s ease}@keyframes coachFadeIn{0%{opacity:0}to{opacity:1}}.coach-ring{position:absolute;border-radius:50%;box-shadow:0 0 0 2.5px var(--accent),0 0 18px 2px rgba(175,250,1,.55);pointer-events:none;transition:top .25s cubic-bezier(.2,.8,.2,1),left .25s cubic-bezier(.2,.8,.2,1)}.coach-bubble{position:absolute;background:var(--glass-dark-bg);backdrop-filter:saturate(160%) blur(16px);-webkit-backdrop-filter:saturate(160%) blur(16px);border-radius:16px;padding:14px 16px;box-shadow:var(--glass-dark-shadow),0 12px 32px rgba(0,0,0,.45);cursor:default;animation:coachBubbleIn .22s cubic-bezier(.2,.8,.2,1)}@keyframes coachBubbleIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.coach-bubble-title{color:#fff;font-size:14px;font-weight:700;letter-spacing:-.01em;margin-bottom:3px}.coach-bubble-desc{color:hsla(0,0%,100%,.6);font-size:12.5px;line-height:1.45;margin-bottom:12px}.coach-bubble-footer{display:flex;align-items:center;justify-content:space-between}.coach-dots{display:flex;align-items:center;gap:5px}.coach-dot{width:5px;height:5px;border-radius:50%;background:hsla(0,0%,100%,.25);transition:background .15s,transform .15s}.coach-dot.active{background:var(--accent);transform:scale(1.3)}.coach-next-btn{height:28px;padding:0 14px;border:none;border-radius:14px;background:var(--glass-accent-bg);color:#000;font-family:inherit;font-size:12.5px;font-weight:700;cursor:pointer;transition:transform .1s,filter .15s}.coach-next-btn:active{transform:scale(.95)}.tmpl-sheet{position:absolute;left:0;right:0;bottom:0;z-index:15;background:rgba(40,40,42,.92);backdrop-filter:saturate(180%) blur(24px);-webkit-backdrop-filter:saturate(180%) blur(24px);border-top:1px solid var(--sheet-border);border-radius:26px 26px 0 0;box-shadow:0 -8px 28px rgba(0,0,0,.35);padding:14px 20px calc(32px + env(safe-area-inset-bottom, 0px));animation:tmplSheetIn .32s cubic-bezier(.16,1,.3,1);transform-origin:bottom center}@keyframes tmplSheetIn{0%{opacity:0;transform:translateY(32px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.tmpl-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.tmpl-panel-title{font-size:13px;font-weight:500;color:hsla(0,0%,100%,.5)}.tmpl-panel-done{width:36px;height:36px;background:var(--glass-accent-bg);box-shadow:var(--glass-accent-shadow-soft);backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:transform .1s,filter .15s}.tmpl-panel-done:active{transform:scale(.92)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.tmpl-sheet-title{color:#fff;font-size:15px;font-weight:600;text-align:center;margin:0 0 20px}.tmpl-card-row{position:relative;display:flex;align-items:center;gap:0;height:50px;margin-bottom:14px;padding:1px 4px;border-radius:26px;background:rgba(60,60,64,.45)}.tmpl-card-indicator{position:absolute;top:4px;left:4px;height:42px;border-radius:22px;transition:transform .25s cubic-bezier(.2,.8,.2,1);z-index:0}.tmpl-card{position:relative;z-index:1;flex:1 1;height:48px;display:flex;align-items:center;justify-content:center;padding:0 6px;background:transparent;border:none;border-radius:24px;cursor:pointer;transition:transform .1s;color:#fff}.tmpl-card:active{transform:scale(.97)}.tmpl-card.active{background:transparent}.tmpl-card-label{font-size:14px;font-weight:500;letter-spacing:-.01em}.tmpl-sheet-bottom{display:flex;align-items:center;gap:10px}.route-width-row{display:flex;align-items:center;gap:14px;height:46px;padding:0 18px;margin-bottom:14px;background:var(--glass-dark-bg);box-shadow:var(--glass-dark-shadow);backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);border-radius:23px}.route-width-label{font-size:13px;font-weight:600;color:hsla(0,0%,100%,.85);flex-shrink:0}.route-width-slider{flex:1 1;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:4px;border-radius:2px;background:hsla(0,0%,100%,.22);outline:none;margin:0}.route-width-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--accent);box-shadow:0 1px 3px rgba(0,0,0,.3);cursor:pointer}.route-width-slider::-moz-range-thumb{width:20px;height:20px;border:none;border-radius:50%;background:var(--accent);box-shadow:0 1px 3px rgba(0,0,0,.3);cursor:pointer}.route-width-slider::-moz-range-track{height:4px;border-radius:2px;background:hsla(0,0%,100%,.22)}.tmpl-color-wrap{position:relative;display:flex;align-items:center;gap:8px;height:46px;padding:0 16px;background:var(--glass-dark-bg);box-shadow:var(--glass-dark-shadow);backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);border-radius:23px;cursor:pointer;font-size:13px;font-weight:600;color:hsla(0,0%,100%,.85);flex-shrink:0;transition:transform .1s}.tmpl-color-wrap:active{transform:scale(.97)}.tmpl-color-wrap input[type=color]{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer;border:none;padding:0}.tmpl-color-circle{width:16px;height:16px;border-radius:50%;box-shadow:0 0 0 2px hsla(0,0%,100%,.3),inset 0 -2px 3px rgba(0,0,0,.25),inset 0 1px 1px hsla(0,0%,100%,.4);flex-shrink:0}.tmpl-behind-btn{flex:1 1;height:46px;display:flex;align-items:center;justify-content:center;gap:6px;background:var(--glass-dark-bg);box-shadow:var(--glass-dark-shadow);backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);border:none;border-radius:23px;color:hsla(0,0%,100%,.85);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:transform .1s,filter .15s}.tmpl-behind-btn:active{transform:scale(.97)}.tmpl-behind-btn.active{background:var(--glass-accent-bg);box-shadow:var(--glass-accent-shadow-soft);backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);color:var(--glass-accent-text)}.tmpl-behind-btn:disabled{opacity:.4;cursor:not-allowed}.tmpl-panel-header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.tmpl-redraw-icon-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--glass-dark-bg);box-shadow:var(--glass-dark-shadow);backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);border:none;border-radius:50%;color:hsla(0,0%,100%,.75);cursor:pointer;flex-shrink:0;transition:transform .1s,filter .15s}.tmpl-redraw-icon-btn:active{transform:scale(.92)}.route-draw-overlay{position:fixed;inset:0;z-index:200;background:var(--bg);display:flex;flex-direction:column}.route-draw-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:rgba(28,28,30,.86);backdrop-filter:saturate(180%) blur(24px);-webkit-backdrop-filter:saturate(180%) blur(24px);flex-shrink:0}.route-draw-title{font-size:15px;font-weight:600;color:#fff;text-align:center;flex:1 1}.route-draw-area{flex:1 1;background:var(--bg);overflow:hidden;min-height:0}.route-draw-area,.route-draw-img-wrap{display:flex;align-items:center;justify-content:center}.route-draw-img-wrap{position:relative;max-width:100%;max-height:100%;line-height:0;width:100%;height:100%}.route-draw-bg{display:block;max-width:100%;max-height:calc(100dvh - 130px);object-fit:contain;opacity:.35;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.route-draw-blank{width:100%;height:100%;min-height:300px;background:var(--bg)}.route-draw-canvas{position:absolute;inset:0;width:100%;height:100%;cursor:crosshair;touch-action:none}.route-draw-footer{display:flex;align-items:center;gap:12px;padding:14px 16px calc(40px + env(safe-area-inset-bottom, 0px));background:rgba(28,28,30,.86);backdrop-filter:saturate(180%) blur(24px);-webkit-backdrop-filter:saturate(180%) blur(24px);flex-shrink:0}.route-draw-hint{position:absolute;top:55%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:7px;padding:10px 16px;background:rgba(28,28,30,.22);border:none;border-radius:20px;backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);pointer-events:none;white-space:nowrap;font-size:13px;font-weight:500;color:hsla(0,0%,100%,.92);letter-spacing:-.01em}.route-draw-hint svg{color:hsla(0,0%,100%,.92);flex-shrink:0}@media (min-width:600px){body,html{overflow:auto}.analyzing-overlay,.confirm-screen,.landing-screen,.mobile-screen,.route-draw-overlay{width:430px;max-width:430px;height:100dvh;max-height:932px;top:50%;left:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);border-radius:0;box-shadow:0 0 0 1px hsla(0,0%,100%,.06),0 24px 80px rgba(0,0,0,.6)}body:before{content:"";position:fixed;inset:0;background:var(--bg);z-index:-1}}@font-face{font-family:Pretendard;font-weight:900;font-display:swap;src:local("Pretendard Black"),url(/_next/static/media/Pretendard-Black.4aeaaf12.woff2) format("woff2"),url(/_next/static/media/Pretendard-Black.2fdd7ecc.woff) format("woff")}@font-face{font-family:Pretendard;font-weight:800;font-display:swap;src:local("Pretendard ExtraBold"),url(/_next/static/media/Pretendard-ExtraBold.dd3e76c5.woff2) format("woff2"),url(/_next/static/media/Pretendard-ExtraBold.bf3b77f7.woff) format("woff")}@font-face{font-family:Pretendard;font-weight:700;font-display:swap;src:local("Pretendard Bold"),url(/_next/static/media/Pretendard-Bold.e00e15f4.woff2) format("woff2"),url(/_next/static/media/Pretendard-Bold.2c1ad0e1.woff) format("woff")}@font-face{font-family:Pretendard;font-weight:600;font-display:swap;src:local("Pretendard SemiBold"),url(/_next/static/media/Pretendard-SemiBold.cfa29e4f.woff2) format("woff2"),url(/_next/static/media/Pretendard-SemiBold.a963592c.woff) format("woff")}@font-face{font-family:Pretendard;font-weight:500;font-display:swap;src:local("Pretendard Medium"),url(/_next/static/media/Pretendard-Medium.12f0acdc.woff2) format("woff2"),url(/_next/static/media/Pretendard-Medium.55b46aea.woff) format("woff")}@font-face{font-family:Pretendard;font-weight:400;font-display:swap;src:local("Pretendard Regular"),url(/_next/static/media/Pretendard-Regular.119cf01b.woff2) format("woff2"),url(/_next/static/media/Pretendard-Regular.78df9e04.woff) format("woff")}@font-face{font-family:Pretendard;font-weight:300;font-display:swap;src:local("Pretendard Light"),url(/_next/static/media/Pretendard-Light.e725ed3d.woff2) format("woff2"),url(/_next/static/media/Pretendard-Light.5e8f67e5.woff) format("woff")}@font-face{font-family:Pretendard;font-weight:200;font-display:swap;src:local("Pretendard ExtraLight"),url(/_next/static/media/Pretendard-ExtraLight.b6885b7a.woff2) format("woff2"),url(/_next/static/media/Pretendard-ExtraLight.4877192c.woff) format("woff")}@font-face{font-family:Pretendard;font-weight:100;font-display:swap;src:local("Pretendard Thin"),url(/_next/static/media/Pretendard-Thin.fc2b22d5.woff2) format("woff2"),url(/_next/static/media/Pretendard-Thin.f17a53aa.woff) format("woff")}@font-face{font-family:Montserrat;font-style:italic;font-display:swap;font-weight:800;src:url(/_next/static/media/montserrat-latin-800-italic.368c2d89.woff2) format("woff2"),url(/_next/static/media/montserrat-latin-800-italic.fb95d539.woff) format("woff")}@font-face{font-family:"Source Serif Pro";font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/source-serif-pro-latin-600-normal.dca411a7.woff2) format("woff2"),url(/_next/static/media/source-serif-pro-latin-600-normal.89661a19.woff) format("woff")}