@charset "UTF-8";html{overflow-y:auto!important;overflow-x:hidden!important;height:auto!important}body{margin:0;min-height:100vh;min-height:100dvh;overflow-y:auto!important;overflow-x:hidden!important;height:auto!important}*,*:before,*:after{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}input,textarea,[contenteditable=true]{-webkit-touch-callout:default;-webkit-user-select:text;user-select:text}#root{overflow-y:auto!important;overflow-x:hidden!important;min-height:100vh;min-height:100dvh;height:auto!important}html,body,*{scrollbar-width:none}html::-webkit-scrollbar,body::-webkit-scrollbar,*::-webkit-scrollbar{display:none;width:0;height:0;background:transparent}html,body,*{-ms-overflow-style:none}.logo-variant-1 .circle-pulse{animation:circlePulse 2s ease-in-out infinite}.logo-variant-1 .circle-pulse-delay{animation:circlePulse 2s ease-in-out infinite;animation-delay:.5s}@keyframes circlePulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:.2;transform:scale(1.2)}}.logo-variant-2 .circle-rotate{animation:circleRotate 4s linear infinite;transform-origin:center}@keyframes circleRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.logo-variant-3 .wave-morph{animation:waveMorph 3s ease-in-out infinite}.logo-variant-3 .wave-morph-delay{animation:waveMorph 3s ease-in-out infinite;animation-delay:1.5s}@keyframes waveMorph{0%,to{opacity:.3;stroke-width:2}50%{opacity:.8;stroke-width:4}}.logo-variant-4 .particle{animation:orbit 4s linear infinite;transform-origin:100px 100px}.logo-variant-4 .particle-1{animation-delay:0s}.logo-variant-4 .particle-2{animation-delay:1s}.logo-variant-4 .particle-3{animation-delay:2s}.logo-variant-4 .particle-4{animation-delay:3s}@keyframes orbit{0%{transform:rotate(0) translate(70px) rotate(0);opacity:1}to{transform:rotate(360deg) translate(70px) rotate(-360deg);opacity:1}}.logo-variant-5 .square-spin{animation:squareSpin 6s linear infinite;transform-origin:center}.logo-variant-5 .circle-counter-spin{animation:circleCounterSpin 4s linear infinite;transform-origin:center}@keyframes squareSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes circleCounterSpin{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}.logo-variant-6 .circle-draw{animation:circleDraw 1.5s ease-out forwards,circleBreath 3s ease-in-out 1.5s infinite}.logo-variant-6 .circle-draw-delay-1{animation:circleDraw 1.5s ease-out .3s forwards,circleBreath 3s ease-in-out 1.8s infinite}.logo-variant-6 .circle-draw-delay-2{animation:circleDraw 1.5s ease-out .6s forwards,circleBreath 3s ease-in-out 2.1s infinite}@keyframes circleDraw{to{stroke-dashoffset:0}}@keyframes circleBreath{0%,to{opacity:.6}50%{opacity:.3}}.logo-variant-7 .line-grow-1{stroke-dasharray:140;stroke-dashoffset:140;animation:lineGrow .8s ease-out forwards,linePulse 2s ease-in-out .8s infinite}.logo-variant-7 .line-grow-2{stroke-dasharray:140;stroke-dashoffset:140;animation:lineGrow .8s ease-out .2s forwards,linePulse 2s ease-in-out 1s infinite}.logo-variant-7 .line-grow-3{stroke-dasharray:141;stroke-dashoffset:141;animation:lineGrow .8s ease-out .4s forwards,linePulse 2s ease-in-out 1.2s infinite}.logo-variant-7 .line-grow-4{stroke-dasharray:141;stroke-dashoffset:141;animation:lineGrow .8s ease-out .6s forwards,linePulse 2s ease-in-out 1.4s infinite}@keyframes lineGrow{to{stroke-dashoffset:0}}@keyframes linePulse{0%,to{opacity:.6;stroke-width:2}50%{opacity:.3;stroke-width:3}}.logo-variant-8 .pentagon-pop{transform:scale(0);opacity:0;transform-origin:center;animation:pentagonPop .6s cubic-bezier(.68,-.55,.265,1.55) forwards,pentagonSpin 8s linear .6s infinite}.logo-variant-8 .pentagon-pop-delay{transform:scale(0);opacity:0;transform-origin:center;animation:pentagonPop .6s cubic-bezier(.68,-.55,.265,1.55) .3s forwards,pentagonSpin 6s linear .9s infinite reverse}@keyframes pentagonPop{0%{transform:scale(0) rotate(0);opacity:0}to{transform:scale(1) rotate(360deg);opacity:.6}}@keyframes pentagonSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.logo-variant-9 .spiral-ray{transform-origin:100px 100px;opacity:0;animation:rayExpand 1.2s ease-out forwards,rayRotate 4s linear 1.2s infinite}.logo-variant-9 .spiral-ray-1{animation-delay:0s,1.2s;transform:rotate(0)}.logo-variant-9 .spiral-ray-2{animation-delay:.1s,1.3s;transform:rotate(45deg)}.logo-variant-9 .spiral-ray-3{animation-delay:.2s,1.4s;transform:rotate(90deg)}.logo-variant-9 .spiral-ray-4{animation-delay:.3s,1.5s;transform:rotate(135deg)}.logo-variant-9 .spiral-ray-5{animation-delay:.4s,1.6s;transform:rotate(180deg)}.logo-variant-9 .spiral-ray-6{animation-delay:.5s,1.7s;transform:rotate(225deg)}.logo-variant-9 .spiral-ray-7{animation-delay:.6s,1.8s;transform:rotate(270deg)}.logo-variant-9 .spiral-ray-8{animation-delay:.7s,1.9s;transform:rotate(315deg)}@keyframes rayExpand{0%{stroke-dasharray:0 70;opacity:0}50%{opacity:.8}to{stroke-dasharray:70 0;opacity:.5}}@keyframes rayRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.logo-variant-10 .ripple{opacity:0;animation:rippleExpand 3s ease-out infinite}.logo-variant-10 .ripple-1{animation-delay:0s}.logo-variant-10 .ripple-2{animation-delay:1s}.logo-variant-10 .ripple-3{animation-delay:2s}@keyframes rippleExpand{0%{r:3;opacity:0}10%{opacity:.8}to{r:80;opacity:0;stroke-width:2}}.logo-variant-11 .circle-pulse-v2{stroke-dasharray:502;stroke-dashoffset:502;animation:circleDraw 1.2s ease-out forwards,circlePulseV2 2s ease-in-out 1.2s infinite}.logo-variant-11 .circle-pulse-delay-v2{stroke-dasharray:377;stroke-dashoffset:377;animation:circleDraw 1.2s ease-out .4s forwards,circlePulseV2 2s ease-in-out 1.6s infinite;animation-delay:.4s,2s}@keyframes circlePulseV2{0%,to{opacity:.8;transform:scale(1)}50%{opacity:.2;transform:scale(1.15)}}.logo-variant-12 .circle-rotate-v2{stroke-dasharray:10 5;opacity:0;transform:scale(0) rotate(0);transform-origin:center;animation:circlePopIn .8s cubic-bezier(.68,-.55,.265,1.55) forwards,circleRotate 4s linear .8s infinite}@keyframes circlePopIn{0%{opacity:0;transform:scale(0) rotate(-180deg)}to{opacity:.6;transform:scale(1) rotate(0)}}.logo-variant-13 .wave-morph-v2{stroke-dasharray:400;stroke-dashoffset:400;animation:waveDraw 1.5s ease-out forwards,waveMorph 3s ease-in-out 1.5s infinite}.logo-variant-13 .wave-morph-delay-v2{stroke-dasharray:400;stroke-dashoffset:400;animation:waveDraw 1.5s ease-out .5s forwards,waveMorph 3s ease-in-out 2s infinite}@keyframes waveDraw{to{stroke-dashoffset:0}}.logo-variant-14 .particle-v2{opacity:0;transform:scale(0);animation:particleAppear .6s ease-out forwards,orbit 4s linear 1s infinite;transform-origin:100px 100px}.logo-variant-14 .particle-v2-1{animation-delay:0s,1s}.logo-variant-14 .particle-v2-2{animation-delay:.2s,2s}.logo-variant-14 .particle-v2-3{animation-delay:.4s,3s}.logo-variant-14 .particle-v2-4{animation-delay:.6s,4s}@keyframes particleAppear{0%{opacity:0;transform:scale(0)}50%{opacity:1;transform:scale(1.5)}to{opacity:1;transform:scale(1)}}.logo-variant-15 .square-spin-v2{stroke-dasharray:380;stroke-dashoffset:380;transform-origin:center;animation:shapeDraw 1.2s ease-out forwards,squareSpin 6s linear 1.2s infinite}.logo-variant-15 .circle-counter-spin-v2{stroke-dasharray:440;stroke-dashoffset:440;transform-origin:center;animation:shapeDraw 1.2s ease-out .3s forwards,circleCounterSpin 4s linear 1.5s infinite}@keyframes shapeDraw{to{stroke-dashoffset:0}}.logo-variant-16 .pentagon-fade-spin{opacity:0;transform:scale(.8) rotate(-45deg);transform-origin:center;animation:pentagonFadeIn 1s ease-out forwards,pentagonGentleSpin 10s linear 1s infinite}.logo-variant-16 .pentagon-fade-spin-delay{opacity:0;transform:scale(.8) rotate(45deg);transform-origin:center;animation:pentagonFadeIn 1s ease-out .3s forwards,pentagonGentleSpin 8s linear 1.3s infinite reverse}@keyframes pentagonFadeIn{0%{opacity:0;transform:scale(.8) rotate(-45deg)}to{opacity:.6;transform:scale(1) rotate(0)}}@keyframes pentagonGentleSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.logo-variant-17 .pentagon-draw-rotate{stroke-dasharray:450;stroke-dashoffset:450;transform-origin:center;animation:pentagonDraw 2s ease-out forwards,pentagonGentleSpin 12s linear 2s infinite}@keyframes pentagonDraw{to{stroke-dashoffset:0}}.logo-variant-18 .pentagon-breathe{opacity:0;transform:scale(.9);transform-origin:center;animation:pentagonGrow 1.2s ease-out forwards,pentagonBreathe 4s ease-in-out 1.2s infinite}.logo-variant-18 .pentagon-breathe-delay{opacity:0;transform:scale(.9);transform-origin:center;animation:pentagonGrow 1.2s ease-out .4s forwards,pentagonBreathe 4s ease-in-out 1.6s infinite;animation-delay:.4s,3.6s}@keyframes pentagonGrow{0%{opacity:0;transform:scale(.7)}to{opacity:.6;transform:scale(1)}}@keyframes pentagonBreathe{0%,to{transform:scale(1);opacity:.6}50%{transform:scale(1.08);opacity:.4}}.logo-variant-19 .pentagon-morph{opacity:0;transform:scale(.85);transform-origin:center;animation:pentagonFadeScale 1s ease-out forwards,pentagonRotateSlow 15s linear 1s infinite}.logo-variant-19 .pentagon-morph-inner{opacity:0;transform:scale(.85) rotate(36deg);transform-origin:center;animation:pentagonFadeScale 1s ease-out .3s forwards,pentagonRotateSlow 12s linear 1.3s infinite reverse}@keyframes pentagonFadeScale{0%{opacity:0;transform:scale(.7)}to{opacity:.5;transform:scale(1)}}@keyframes pentagonRotateSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.logo-variant-20 .pentagon-pulse-rotate{opacity:0;transform:scale(.8);transform-origin:center;animation:pentagonPopSmooth .8s cubic-bezier(.34,1.56,.64,1) forwards,pentagonPulseRotate 6s ease-in-out .8s infinite}.logo-variant-20 .pentagon-pulse-rotate-delay{opacity:0;transform:scale(.8);transform-origin:center;animation:pentagonPopSmooth .8s cubic-bezier(.34,1.56,.64,1) .3s forwards,pentagonPulseRotate 6s ease-in-out 1.1s infinite;animation-delay:.3s,4.1s}.logo-variant-20 .pentagon-center-pulse{opacity:0;transform:scale(0);animation:centerDotAppear .6s ease-out .5s forwards,centerDotPulse 2s ease-in-out 1.1s infinite}@keyframes pentagonPopSmooth{0%{opacity:0;transform:scale(.6)}to{opacity:.6;transform:scale(1)}}@keyframes pentagonPulseRotate{0%,to{transform:scale(1) rotate(0);opacity:.6}50%{transform:scale(1.05) rotate(180deg);opacity:.4}}@keyframes centerDotAppear{0%{opacity:0;transform:scale(0)}to{opacity:.8;transform:scale(1)}}@keyframes centerDotPulse{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(2);opacity:.3}}.logo-variant-21 .circle-double-dash{opacity:0;transform:scale(.7);transform-origin:center;animation:circleGrowIn 1s ease-out forwards,circleRotateMedium 8s linear 1s infinite}@keyframes circleGrowIn{0%{opacity:0;transform:scale(.7)}to{opacity:.6;transform:scale(1)}}@keyframes circleRotateMedium{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.logo-variant-22 .circle-wave-dash{opacity:0;transform:scale(.8);transform-origin:center;animation:circleGrowIn 1s ease-out forwards,circleRotateSlow 10s linear 1s infinite}.logo-variant-22 .circle-wave-dash-inner{opacity:0;transform:scale(.8);transform-origin:center;animation:circleGrowIn 1s ease-out .3s forwards,circleRotateSlow 7s linear 1.3s infinite reverse}@keyframes circleRotateSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.logo-variant-23 .circle-slow-elegant{opacity:0;transform:scale(.85);transform-origin:center;animation:circleElegantAppear 1.2s ease-out forwards,circleRotateVerySlow 15s linear 1.2s infinite}.logo-variant-23 .circle-slow-elegant-trail{opacity:0;transform:scale(.85);transform-origin:center;animation:circleElegantAppear 1.2s ease-out .2s forwards,circleRotateVerySlow 15s linear 1.4s infinite;animation-delay:.2s,16.4s}@keyframes circleElegantAppear{0%{opacity:0;transform:scale(.7)}to{opacity:.5;transform:scale(1)}}@keyframes circleRotateVerySlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.logo-variant-24 .circle-orbit-dots{opacity:0;transform:scale(.6);transform-origin:center;animation:circlePopIn .8s cubic-bezier(.68,-.55,.265,1.55) forwards,circleRotateFast 4s linear .8s infinite}.logo-variant-24 .circle-orbit-dots-mid{opacity:0;transform:scale(.6);transform-origin:center;animation:circlePopIn .8s cubic-bezier(.68,-.55,.265,1.55) .2s forwards,circleRotateFast 5s linear 1s infinite reverse}.logo-variant-24 .circle-orbit-dots-inner{opacity:0;transform:scale(.6);transform-origin:center;animation:circlePopIn .8s cubic-bezier(.68,-.55,.265,1.55) .4s forwards,circleRotateFast 6s linear 1.2s infinite}@keyframes circlePopIn{0%{opacity:0;transform:scale(.3)}to{opacity:.6;transform:scale(1)}}@keyframes circleRotateFast{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.logo-variant-25 .circle-comet{stroke-dasharray:30 410;opacity:0;transform:scale(.8) rotate(-90deg);transform-origin:center;animation:cometAppear 1s ease-out forwards,cometOrbit 3s linear 1s infinite}@keyframes cometAppear{0%{opacity:0;transform:scale(.6) rotate(-90deg);stroke-dasharray:0 440}to{opacity:.7;transform:scale(1) rotate(0);stroke-dasharray:30 410}}@keyframes cometOrbit{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.logo-variant-26 .circle-spinner{opacity:0;transform:scale(.7);transform-origin:center;animation:circleGrowIn .8s ease-out forwards,circleSpinFast 3s linear .8s infinite}.logo-variant-26 .circle-spinner-mid{opacity:0;transform:scale(.7);transform-origin:center;animation:circleGrowIn .8s ease-out .2s forwards,circleSpinFast 4s linear 1s infinite reverse}.logo-variant-26 .circle-spinner-inner{opacity:0;transform:scale(.7);transform-origin:center;animation:circleGrowIn .8s ease-out .4s forwards,circleSpinFast 5s linear 1.2s infinite}@keyframes circleSpinFast{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.logo-variant-27 .circle-breathing-dash{opacity:0;transform:scale(.8);transform-origin:center;animation:circleGrowIn 1s ease-out forwards,circleBreathRotate 8s ease-in-out 1s infinite}@keyframes circleBreathRotate{0%{transform:scale(1) rotate(0);opacity:.6}25%{transform:scale(1.05) rotate(90deg);opacity:.5}50%{transform:scale(1) rotate(180deg);opacity:.6}75%{transform:scale(1.05) rotate(270deg);opacity:.5}to{transform:scale(1) rotate(360deg);opacity:.6}}.logo-variant-28 .circle-radar{stroke-dasharray:40 400;opacity:0;transform:scale(.8) rotate(-90deg);transform-origin:center;animation:radarAppear 1s ease-out forwards,radarSweep 4s linear 1s infinite}.logo-variant-28 .circle-radar-echo{stroke-dasharray:20 420;opacity:0;transform:scale(.8) rotate(-90deg);transform-origin:center;animation:radarAppear 1s ease-out .3s forwards,radarSweep 4s linear 1.3s infinite}@keyframes radarAppear{0%{opacity:0;transform:scale(.6) rotate(-90deg)}to{opacity:.6;transform:scale(1) rotate(0)}}@keyframes radarSweep{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.logo-variant-29 .circle-loading{opacity:0;transform:scale(.6);transform-origin:center;animation:circlePopIn .6s cubic-bezier(.34,1.56,.64,1) forwards,circleLoadingSpin 2.5s linear .6s infinite}.logo-variant-29 .circle-loading-mid{opacity:0;transform:scale(.6);transform-origin:center;animation:circlePopIn .6s cubic-bezier(.34,1.56,.64,1) .15s forwards,circleLoadingSpin 3s linear .75s infinite reverse}.logo-variant-29 .circle-loading-inner{opacity:0;transform:scale(.6);transform-origin:center;animation:circlePopIn .6s cubic-bezier(.34,1.56,.64,1) .3s forwards,circleLoadingSpin 3.5s linear .9s infinite}@keyframes circleLoadingSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.logo-variant-30 .circle-hypnotic{stroke-dasharray:25 15 5 15;opacity:0;transform:scale(.85);transform-origin:center;animation:circleGrowIn 1.2s ease-out forwards,circleHypnoticSpin 12s linear 1.2s infinite}.logo-variant-30 .circle-hypnotic-inner{stroke-dasharray:15 10 3 10;opacity:0;transform:scale(.85);transform-origin:center;animation:circleGrowIn 1.2s ease-out .3s forwards,circleHypnoticSpin 9s linear 1.5s infinite reverse}@keyframes circleHypnoticSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.custom-controls{width:100%;max-width:600px;background:linear-gradient(to top,var(--overlay-dark),var(--overlay-dark));border:2px solid var(--border);border-top:none;border-radius:0 0 .75rem .75rem;padding:1rem}.video-info-bar{margin-top:.75rem;padding:.75rem 1rem;background:var(--primary-subtle);border-radius:.5rem;border:1px solid var(--border)}.time-display{font-size:.875rem;font-weight:700;color:var(--text-primary);display:block;margin-bottom:.5rem}.clip-hint{font-size:.75rem;color:var(--text-secondary);font-style:italic}.range-highlight{display:flex;justify-content:space-between;align-items:center;font-size:.875rem;color:var(--text-secondary);margin-top:.5rem}.range-status{padding:.25rem .75rem;border-radius:.375rem;font-size:.75rem;font-weight:600}.range-status.in-range{background:#10b9811a;color:var(--success)}.range-status.out-range{background:var(--danger-subtle);color:var(--danger)}.frame-viewer{background:var(--surface);border:2px solid var(--border);border-radius:1rem;padding:1.5rem}.frame-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.frame-grid-item{position:relative;border-radius:.75rem;overflow:hidden;border:2px solid var(--border);cursor:pointer;transition:all var(--transition-slow)}.frame-grid-item:hover{border-color:var(--primary);transform:translateY(-4px);box-shadow:0 8px 20px var(--primary-glow)}.frame-grid-image{width:100%;height:auto;display:block}.frame-grid-label{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,var(--overlay-dark),transparent);padding:.5rem;display:flex;justify-content:space-between;align-items:center}.frame-number{font-size:.75rem;font-weight:700;color:#fff}.frame-time{font-size:.75rem;color:var(--overlay-heavy)}.frame-lightbox{position:fixed;inset:0;background:var(--overlay-dark);z-index:1000;display:flex;align-items:center;justify-content:center;padding:2rem;animation:fadeIn .2s}.lightbox-content{position:relative;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;align-items:center}.lightbox-close{position:absolute;top:-2.5rem;right:0;background:var(--highlight-faint);border:none;color:#fff;font-size:2rem;width:3rem;height:3rem;border-radius:50%;cursor:pointer;transition:all var(--transition-normal)}.lightbox-close:hover{background:var(--highlight-soft);transform:rotate(90deg)}.lightbox-image{max-width:100%;max-height:70vh;border-radius:.75rem;box-shadow:0 20px 60px var(--shadow-heavy)}.lightbox-info{margin-top:1rem;color:#fff;font-size:1rem;font-weight:600}.lightbox-nav{margin-top:1rem;display:flex;gap:1rem}.lightbox-nav button{padding:.75rem 2rem;background:var(--primary);color:#fff;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all var(--transition-normal)}.lightbox-nav button:hover:not(:disabled){background:var(--secondary);transform:translateY(-2px)}.lightbox-nav button:disabled{opacity:.4;cursor:not-allowed}.note-read{width:100%}.note-read-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.35rem}.note-read-label{color:var(--overlay-medium);font-weight:750;font-size:.78rem;letter-spacing:.02em}.note-edit-icon{width:28px;height:28px;border-radius:9px;border:1px solid var(--highlight-faint);background:var(--highlight-ghost);color:var(--overlay-medium);cursor:pointer;display:flex;align-items:center;justify-content:center;font-weight:900;line-height:1;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.note-edit-icon:hover{background:var(--highlight-ghost);border-color:var(--highlight-subtle);color:var(--overlay-heavy)}.note-read-body{color:var(--overlay-heavy);font-size:.9rem;line-height:1.5;white-space:pre-wrap;max-height:calc(var(--note-read-lines, 10) * 1.5em);overflow:hidden;position:relative}.note-read-body:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2.2em;background:linear-gradient(to bottom,#0b0f1400,#0b0f14f2);pointer-events:none}.note-read-body--empty{color:var(--overlay-subtle)}.note-read-body--empty:after{display:none}.note-edit{border:1px solid var(--highlight-faint);background:var(--highlight-ghost);border-radius:.6rem;overflow:hidden}.note-edit-header{display:flex;align-items:center;justify-content:space-between;padding:.55rem .75rem;border-bottom:1px solid var(--highlight-ghost);background:var(--highlight-ghost)}.note-edit-label{color:var(--overlay-medium);font-weight:750;font-size:.78rem;letter-spacing:.02em}.note-edit-done{padding:.35rem .55rem;border-radius:.45rem;border:1px solid var(--highlight-faint);background:var(--highlight-ghost);color:var(--overlay-heavy);cursor:pointer;font-weight:700;font-size:.78rem}.note-edit-done:hover{background:var(--highlight-ghost);color:var(--overlay-heavy)}.note-edit-textarea{width:100%;min-height:120px;resize:vertical;padding:.75rem;border:none;outline:none;background:transparent;color:var(--overlay-heavy);font-size:.95rem;line-height:1.5;white-space:pre-wrap}.focus-modal{width:min(1280px,96vw);height:min(860px,92vh);background:#111827eb;border:1px solid var(--highlight-faint);border-radius:.9rem;overflow:hidden;box-shadow:0 30px 80px var(--overlay-dark);display:flex;flex-direction:column}.focus-close:hover{background:var(--highlight-faint)}.focus-action-btn:hover{background:var(--highlight-ghost);color:var(--overlay-heavy)}.focus-nav-btn:disabled{opacity:.45;cursor:not-allowed}.focus-pencil:hover{background:var(--highlight-ghost);color:var(--overlay-heavy)}.focus-notes-read:hover{background:transparent}.focus-notes-body--empty{color:var(--overlay-subtle)}@media(max-width:960px){.focus-modal{height:94vh}.focus-body{grid-template-columns:1fr;grid-template-rows:auto 1fr}.focus-notes{border-left:none;border-top:1px solid var(--highlight-ghost)}}.upload-area:hover{border-color:var(--primary);background:var(--surface-hover)}.upload-area:hover:before{opacity:.05}.upload-area.dragging{border-color:var(--primary);background:var(--surface-hover);transform:scale(1.02)}.upload-area.dragging:before{opacity:.1}.file-input{display:none}.upload-icon{width:64px;height:64px;color:var(--primary);transition:transform var(--transition-slow)}.upload-area:hover .upload-icon{transform:translateY(-8px)}.upload-text{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.upload-hint{font-size:.875rem;color:var(--text-secondary)}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.video-info{display:flex;align-items:center;gap:1rem;flex:1;min-width:0}.video-icon{width:48px;height:48px;color:var(--primary);flex-shrink:0}.video-details{display:flex;flex-direction:column;gap:.25rem;min-width:0}.video-name{font-size:1rem;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-size{font-size:.875rem;color:var(--text-secondary)}.remove-button{width:48px;height:48px;min-width:48px;min-height:48px;border:none;background:var(--danger-subtle);color:var(--danger);border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal);flex-shrink:0}.remove-button svg{width:22px;height:22px}.remove-button:hover{background:#ef444433;transform:scale(1.05)}.remove-button:active{transform:scale(.95)}@media(max-width:600px){.title{font-size:2.25rem}.upload-area{padding:3rem 1.5rem}.logo-icon{width:64px;height:64px}}.processing-indicator p{color:var(--text-secondary);font-size:1rem}.error-message{background:var(--danger-subtle);border:2px solid var(--danger-glow);border-radius:1.5rem;padding:2rem;display:flex;align-items:center;gap:1rem;animation:slideIn .3s ease-out}.error-icon{width:32px;height:32px;color:var(--danger);flex-shrink:0}.error-message p{color:var(--danger);font-size:1rem;margin:0}.content-type,.sections-badge,.saved-analyses-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px var(--primary-glow)}.saved-analyses-list h3{margin-bottom:1rem;color:var(--text-primary)}.saved-analysis-item:hover{background:var(--primary-glow);transform:translate(4px)}.video-clip-wrapper{position:relative}.clip-mode-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:.75rem 1rem;background:var(--primary-subtle);border-radius:.75rem;border:2px solid var(--border)}.clip-mode-badge,.full-mode-badge{font-size:.875rem;font-weight:600;color:var(--text-primary)}.unlock-btn,.lock-btn{padding:.5rem 1rem;background:var(--primary);color:#fff;border:none;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all var(--transition-normal)}.unlock-btn:hover,.lock-btn:hover{background:var(--secondary);transform:translateY(-2px)}.lock-btn{background:var(--primary-glow)}.step-video-player{width:100%;max-width:600px;max-height:60vh;border-radius:.75rem .75rem 0 0;border:2px solid var(--border);border-bottom:none;background:var(--letterbox-color, #000);display:block;object-fit:contain}.analysis-content{color:var(--text-secondary);line-height:1.8;font-size:.95rem}.analysis-content p{margin-bottom:.75rem}.analysis-content p:last-child{margin-bottom:0}.analysis-content p:has(strong){color:var(--text-primary);font-weight:600;margin-top:1.5rem;margin-bottom:.5rem}.analysis-content p:first-child{margin-top:0}.ui-selector-trigger{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}@media(hover:hover){.ui-selector-trigger:hover:not(:disabled){background:color-mix(in srgb,var(--surface) 92%,var(--text-primary) 8%);border-color:var(--border-hover);color:var(--ui-selector-hover-color, var(--text-primary));box-shadow:0 2px 10px var(--shadow-subtle);transform:translateY(-1px)}}.ui-selector-trigger:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-subtle)}.ui-selector-trigger:disabled{opacity:.6;cursor:not-allowed}.ui-selector-menu{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 12px var(--shadow-medium);overflow:hidden}.ui-selector-option{display:flex;align-items:flex-start;gap:10px;width:100%;padding:10px 12px;background:transparent;border:none;text-align:left;cursor:pointer;transition:background var(--transition-fast)}@media(hover:hover){.ui-selector-option:hover{background:var(--interactive-hover-bg, var(--surface-hover))}}.ui-selector-option:focus-visible{outline:none;background:var(--surface-hover)}.ui-selector-option--selected,.ui-selector-option--selected:hover{background:var(--primary-subtle)}.mobile-nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:10px;border:1px solid var(--border);background:var(--bg-tertiary, var(--surface));color:var(--text-primary);font-size:22px;cursor:pointer;transition:all var(--transition-normal);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;touch-action:manipulation}.mobile-nav-toggle:hover{border-color:var(--border-hover);background:var(--surface-hover)}.mobile-nav-toggle:active{border-color:var(--border-hover);background:var(--surface-hover);filter:brightness(var(--hover-brightness));transform:translateY(1px) scale(.98);box-shadow:inset 0 1px 3px var(--shadow-soft)}.mobile-nav-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.selection-bar{position:fixed;bottom:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--surface);border-top:1px solid var(--border);box-shadow:0 -2px 12px #00000026;animation:selection-bar-slide-up .3s var(--ease-out, ease-out);padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}@keyframes selection-bar-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.selection-bar__left{display:flex;align-items:center;gap:6px;flex-shrink:0}.selection-bar__actions{display:flex;align-items:center;gap:8px}.selection-bar__count{font-size:.9rem;font-weight:600;color:var(--text-primary);white-space:nowrap}.selection-bar__icon-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;border:none;background:none;color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast)}.selection-bar__icon-btn:hover{background:var(--highlight-faint);color:var(--text-primary)}.selection-bar__icon-btn:active{background:var(--highlight-subtle)}.selection-bar__icon-btn:disabled{opacity:.35;pointer-events:none}.selection-bar__icon-btn--danger{color:var(--danger, #e53e3e)}.selection-bar__icon-btn--danger:hover{background:color-mix(in srgb,var(--danger, #e53e3e) 12%,transparent);color:var(--danger, #e53e3e)}.selection-bar__primary{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:44px;padding:0 18px;border-radius:10px;border:none;background:var(--primary);color:#fff;font-size:.9rem;font-weight:600;font-family:inherit;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background var(--transition-fast),opacity var(--transition-fast)}.selection-bar__primary:hover{opacity:.9}.selection-bar__primary:active{opacity:.8}.selection-bar__primary:disabled{opacity:.35;pointer-events:none}@media(max-width:380px){.selection-bar__label{display:none}.selection-bar__primary{width:44px;padding:0}}:root{--primary: #6366f1;--primary-dark: #4f46e5;--primary-border: rgba(99, 102, 241, .3);--secondary: #8b5cf6;--accent-purple: #6366f1;--bg-primary: #0b0f14;--surface: #111827;--surface-hover: #162033;--text-primary: #ffffff;--text-secondary: #a0a0b8;--text-tertiary: #6b7280;--border: #2a2a3a;--success: #10b981;--letterbox-color: #121212;--safe-area-top: var(--safe-area-inset-top, env(safe-area-inset-top, 0px));--safe-area-bottom: var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px));--safe-area-left: var(--safe-area-inset-left, env(safe-area-inset-left, 0px));--safe-area-right: var(--safe-area-inset-right, env(safe-area-inset-right, 0px));--video-overlay-btn-size: 36px;--video-overlay-btn-icon-size: 18px;--playback-ctrl-btn-size: 36px;--playback-ctrl-btn-icon-size: 18px;--glass-accent-bg: var(--primary-subtle);--glass-accent-border: var(--primary-glow);--glass-accent-color: var(--primary);--glass-accent-shadow: 0 0 12px var(--primary-glow);--glass-accent-bg-hover: var(--primary-glow);--glass-accent-border-hover: var(--primary-border);--glass-accent-shadow-hover: 0 0 16px var(--primary-glow)}@media(max-width:600px){:root{--video-overlay-btn-size: 44px;--video-overlay-btn-icon-size: 22px;--playback-ctrl-btn-size: 44px;--playback-ctrl-btn-icon-size: 22px}}body.capacitor-native{--video-overlay-btn-size: 48px;--video-overlay-btn-icon-size: 27px;--playback-ctrl-btn-size: 54px;--playback-ctrl-btn-icon-size: 27px}.video-overlay-glass-btn{display:flex;align-items:center;justify-content:center;width:var(--video-overlay-btn-size, 36px);height:var(--video-overlay-btn-size, 36px);background:var(--video-btn-bg, var(--surface));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--video-btn-border, var(--border));border-radius:8px;color:var(--video-btn-color, var(--text-secondary));font-size:16px;cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--video-btn-shadow, 0 2px 8px var(--shadow-subtle))}.video-overlay-glass-btn:hover{background:var(--video-btn-bg-hover, var(--surface-hover));border-color:var(--video-btn-border-hover, var(--border-hover));color:var(--video-btn-color-hover, var(--text-primary));box-shadow:var(--video-btn-shadow-hover, 0 4px 12px var(--shadow-soft))}.video-overlay-glass-btn:active{transform:scale(.95)}.video-overlay-glass-btn svg{width:var(--video-overlay-btn-icon-size, 18px);height:var(--video-overlay-btn-icon-size, 18px)}.video-overlay-glass-btn.active{background:var(--glass-accent-bg);border-color:var(--glass-accent-border);color:var(--glass-accent-color);box-shadow:var(--glass-accent-shadow)}.video-overlay-glass-btn.active:hover{background:var(--glass-accent-bg-hover);border-color:var(--glass-accent-border-hover);box-shadow:var(--glass-accent-shadow-hover)}.step-modal-crop-btn.active,.analysis-page .step-maximize-btn.active,.floating-buttons-row .step-maximize-btn.active{background:var(--glass-accent-bg);border-color:var(--glass-accent-border);color:var(--glass-accent-color);box-shadow:var(--glass-accent-shadow)}.step-modal-crop-btn.active:hover,.analysis-page .step-maximize-btn.active:hover,.floating-buttons-row .step-maximize-btn.active:hover{background:var(--glass-accent-bg-hover);border-color:var(--glass-accent-border-hover);box-shadow:var(--glass-accent-shadow-hover)}.video-overlay-glass-btn.cropping{background:var(--primary-border);border-color:var(--primary-border);color:var(--text-primary);box-shadow:0 0 12px var(--primary-border)}@media(max-width:768px){.video-overlay-glass-btn{border-radius:10px}}html{min-height:100%;background:var(--bg-primary)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;min-height:100dvh}.auth-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;gap:1rem;color:var(--text-secondary);text-align:center}:root{--shadow-sm-light: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md-light: 0 1px 2px rgba(0, 0, 0, .04), 0 4px 12px rgba(0, 0, 0, .06);--shadow-lg-light: 0 2px 4px rgba(0, 0, 0, .06), 0 8px 24px rgba(0, 0, 0, .1);--shadow-xl-light: 0 4px 8px rgba(0, 0, 0, .08), 0 16px 40px rgba(0, 0, 0, .12);--shadow-sm-dark: 0 1px 2px rgba(0, 0, 0, .2);--shadow-md-dark: 0 2px 8px rgba(0, 0, 0, .3);--shadow-lg-dark: 0 4px 16px rgba(0, 0, 0, .4);--shadow-xl-dark: 0 8px 32px rgba(0, 0, 0, .5)}:root{--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease}:root{--hover-brightness: 1.08;--hover-brightness-strong: 1.15;--hover-scale: 1.02;--hover-scale-icon: 1.08;--hover-scale-button: 1.05;--hover-opacity-subtle: .08;--hover-opacity-medium: .12;--hover-bg-lighten: rgba(255, 255, 255, .15);--hover-bg-darken: rgba(0, 0, 0, .05);--hover-shadow-lift: 0 4px 12px rgba(0, 0, 0, .1);--hover-shadow-glow: 0 0 20px rgba(var(--primary-rgb, 232, 121, 59), .25)}:root{--bp-xs: 480px;--bp-sm: 600px;--bp-md: 768px;--bp-lg: 960px;--bp-xl: 1200px}:root{--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--leading-none: 1;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 2}@media(max-width:600px){:root{--text-xs: 15px;--text-sm: 16px;--text-3xl: 1.625rem;--text-4xl: 2rem;--text-5xl: 2.5rem}}@media(max-width:380px){:root{--text-3xl: 1.5rem;--text-4xl: 1.75rem}}:root{--touch-target-min: 44px;--touch-target-comfortable: 48px;--icon-xs: 14px;--icon-sm: 16px;--icon-md: 20px;--icon-lg: 24px;--icon-xl: 32px}:root{--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem}[data-theme=warm]{--background-alt: #F5F4F2;--surface: #FFFFFF;--surface-hover: #FAFBFC;--surface-alt: #FAFAFA;--primary: #E07B4A;--primary-dark: #C96830;--primary-light: #F5A67A;--primary-muted: #F7BEA3;--primary-subtle: rgba(224, 123, 74, .12);--primary-tint: rgba(224, 123, 74, .05);--primary-glow: rgba(224, 123, 74, .25);--primary-hover: #D06938;--primary-border: rgba(224, 123, 74, .3);--primary-shadow: rgba(224, 123, 74, .3);--primary-gradient: linear-gradient(135deg, #E07B4A 0%, #D06938 100%);--primary-alt: #a855f7;--primary-alt-subtle: rgba(168, 85, 247, .12);--primary-alt-glow: rgba(168, 85, 247, .25);--text-primary: #2A2520;--text-secondary: #5C5752;--text-tertiary: #8A857F;--text-muted: #B5AFA8;--text-on-primary: #FFFFFF;--border: #EAEAEA;--border-hover: #DDD;--success: #5CA86C;--success-subtle: rgba(92, 168, 108, .15);--success-hover: #4A9659;--warning: #E5A158;--warning-subtle: rgba(229, 161, 88, .12);--danger: #D9534F;--danger-dark: #c9302c;--danger-darker: #ac2925;--icon-demo: #E07B4A;--icon-demo-subtle: rgba(224, 123, 74, .1);--icon-recap: #4BC4BB;--icon-recap-subtle: rgba(75, 196, 187, .12);--icon-tips: #E5A158;--icon-tips-subtle: rgba(229, 161, 88, .12);--accent: #E07B4A;--shadow-card: 0 1px 2px rgba(0, 0, 0, .04), 0 4px 12px rgba(0, 0, 0, .06);--shadow-card-hover: 0 2px 4px rgba(0, 0, 0, .06), 0 8px 24px rgba(0, 0, 0, .1);--letterbox-color: #F8F6F4;--bg-primary: #f7f8f9;--bg-secondary: #FFFFFF;--bg-tertiary: #FAFAFA;--bg-elevated: #FFFFFF;--primary-soft: rgba(224, 123, 74, .12);--primary-glow: rgba(224, 123, 74, .2);--node-completed: #5CA86C;--movecard-overlay-bg: rgba(255, 255, 255, .85);--movecard-overlay-bg-hover: rgba(255, 255, 255, .95);--movecard-overlay-text: #2A2520;--movecard-thumbnail-gradient: linear-gradient(to top, rgba(255, 255, 255, .9) 0%, transparent 100%);--spotlight-bg: rgba(255, 255, 255, .98);--spotlight-border: #EAEAEA;--spotlight-shadow: 0 8px 32px rgba(0, 0, 0, .15), 0 2px 8px rgba(0, 0, 0, .1);--spotlight-btn-bg: #FAFAFA;--spotlight-text: #5C5752;--spotlight-text-muted: #8A857F;--spotlight-text-hover: #2A2520;--spotlight-hover-bg: #FAFBFC;--spotlight-active-bg: #F0F1F3;--timeline-bg: linear-gradient(180deg, #FFFFFF 0%, #FDFCFB 100%);--timeline-border: rgba(224, 123, 74, .15);--timeline-shadow: 0 -4px 16px rgba(0, 0, 0, .03), 0 4px 20px rgba(0, 0, 0, .08), 0 1px 3px rgba(0, 0, 0, .04), inset 0 1px 0 rgba(255, 255, 255, 1);--timeline-marker-bg: linear-gradient(180deg, rgba(224, 123, 74, .06) 0%, rgba(224, 123, 74, .03) 100%);--timeline-marker-shadow: inset 0 1px 3px rgba(0, 0, 0, .05);--timeline-marker-track-bg: rgba(0, 0, 0, .06);--timeline-marker-track-bg-hover: rgba(0, 0, 0, .08);--timeline-tracks-bg: linear-gradient(180deg, #FAF9F7 0%, #F5F4F2 100%);--timeline-track-bg: rgba(250, 248, 246, .95);--timeline-track-border: 1px solid rgba(0, 0, 0, .08);--timeline-track-shadow: inset 0 2px 6px rgba(0, 0, 0, .05), inset 0 1px 2px rgba(0, 0, 0, .03);--timeline-track-gridlines-bg: repeating-linear-gradient( 90deg, transparent, transparent 9.9%, rgba(0, 0, 0, .025) 10%, rgba(0, 0, 0, .025) 10.1% );--timeline-track-z: 5;--timeline-track-z-active: 10;--timeline-btn-bg: rgba(224, 123, 74, .1);--timeline-btn-border: rgba(224, 123, 74, .2);--timeline-btn-color: #E07B4A;--timeline-btn-shadow: 0 2px 8px rgba(224, 123, 74, .15);--timeline-btn-hover-bg: rgba(224, 123, 74, .15);--timeline-btn-hover-color: #C96830;--timeline-btn-hover-shadow: 0 4px 12px rgba(224, 123, 74, .2);--timeline-btn-active-bg: rgba(224, 123, 74, .08);--success-border: rgba(92, 168, 108, .25);--timeline-minimap-bar-bg: #F0EDE8;--timeline-minimap-bar-border: 1px solid rgba(0, 0, 0, .04);--timeline-minimap-bar-shadow: none;--timeline-minimap-gridlines-bg: repeating-linear-gradient( 90deg, transparent, transparent calc(25% - .5px) , rgba(0, 0, 0, .04) calc(25% - .5px) , rgba(0, 0, 0, .04) calc(25% + .5px) , transparent calc(25% + .5px) );--timeline-minimap-viewport-bg: rgba(224, 123, 74, .1);--timeline-minimap-viewport-border: 1.5px solid rgba(224, 123, 74, .5);--timeline-minimap-viewport-shadow: 0 0 8px rgba(255, 255, 255, .4), inset 0 0 0 1px rgba(255, 255, 255, .1);--timeline-minimap-playhead: var(--primary);--video-btn-bg: var(--surface);--video-btn-border: var(--border);--video-btn-color: var(--text-secondary);--video-btn-shadow: 0 2px 8px var(--shadow-subtle);--video-btn-bg-hover: var(--surface-hover);--video-btn-border-hover: var(--border-hover);--video-btn-color-hover: var(--text-primary);--video-btn-shadow-hover: 0 4px 12px var(--shadow-soft);--icon-recap-soft: rgba(75, 196, 187, .15);--icon-recap-border: rgba(75, 196, 187, .25);--icon-tips-soft: rgba(229, 161, 88, .15);--icon-tips-border: rgba(229, 161, 88, .25);--highlight-soft: rgba(255, 255, 255, .2);--highlight-subtle: rgba(255, 255, 255, .15);--highlight-faint: rgba(255, 255, 255, .1);--highlight-ghost: rgba(255, 255, 255, .06);--shadow-heavy: rgba(0, 0, 0, .4);--shadow-medium: rgba(0, 0, 0, .25);--shadow-soft: rgba(0, 0, 0, .15);--shadow-subtle: rgba(0, 0, 0, .08);--shadow-ghost: rgba(0, 0, 0, .04);--overlay-dark: rgba(0, 0, 0, .7);--overlay-heavy: rgba(255, 255, 255, .9);--overlay-medium: rgba(255, 255, 255, .7);--overlay-subtle: rgba(255, 255, 255, .3);--modal-overlay: rgba(247, 248, 249, .85);--success-light: #34d399;--success-glow: rgba(92, 168, 108, .35);--danger-light: #f87171;--danger-muted: #fca5a5;--danger-subtle: rgba(239, 68, 68, .15);--danger-glow: rgba(239, 68, 68, .35);--warning-strong: #f97316;--warning-glow: rgba(229, 161, 88, .35);--blue: #60a5fa;--blue-subtle: rgba(59, 130, 246, .12);--pink: #ec4899;--pink-light: #f472b6;--pink-glow: rgba(236, 72, 153, .35);--pink-subtle: rgba(236, 72, 153, .12);--cyan: #22d3ee;--cyan-light: #67e8f9;--cyan-subtle: rgba(34, 211, 238, .12);--cyan-glow: rgba(34, 211, 238, .35);--orange: #fb923c;--orange-subtle: rgba(251, 146, 60, .12);--orange-glow: rgba(251, 146, 60, .35);--yellow: #facc15;--yellow-light: #fde047;--yellow-subtle: rgba(250, 204, 21, .12);--yellow-glow: rgba(250, 204, 21, .35);--slate: #94a3b8;--accent-purple: #8b5cf6;--accent-purple-light: #a78bfa;--accent-purple-dark: #7c3aed;--accent-purple-subtle: rgba(139, 92, 246, .1);--accent-purple-glow: rgba(139, 92, 246, .35);--step-notes-toggle-color: var(--primary);--step-notes-toggle-hover-color: var(--primary-hover);--density-control-bg: color-mix(in srgb, var(--text-primary) 3%, transparent);--density-control-hover-bg: color-mix(in srgb, var(--text-primary) 4%, transparent);--density-control-color: var(--text-tertiary);--density-control-hover-color: var(--text-secondary);--density-control-active-bg: color-mix(in srgb, var(--primary) 15%, transparent);--density-control-active-hover-bg: color-mix(in srgb, var(--primary) 22%, transparent);--density-control-active-color: var(--primary-hover);--interactive-hover-bg: rgba(0, 0, 0, .04);--settings-menu-bg: rgba(255, 255, 255, .98);--settings-menu-border: var(--border);--settings-menu-shadow: 0 8px 32px rgba(0, 0, 0, .15);--settings-menu-text: var(--text-secondary);--settings-menu-text-muted: var(--text-tertiary);--settings-menu-divider: var(--border);--settings-menu-btn-bg: var(--surface-alt);--settings-menu-btn-border: var(--border);--settings-menu-btn-hover-bg: var(--surface-hover);--settings-menu-option-hover-bg: var(--interactive-hover-bg);--path-line-width: 2px;--path-node-border-width: 2px;--path-line-view-full-gap: 32px;--onboarding-bg: linear-gradient(180deg, #FAF8F5 0%, #F5F3F0 100%);--onboarding-header-bg: rgba(255, 255, 255, .92);--onboarding-header-border: rgba(0, 0, 0, .06);--onboarding-header-shadow: 0 1px 3px rgba(0, 0, 0, .04), 0 4px 12px rgba(0, 0, 0, .03);--progress-gradient: linear-gradient( 90deg, #4BC4BB 0%, #22d3ee 20%, #a855f7 50%, #ec4899 70%, #E07B4A 90%, #F5A67A 100% );--progress-glow: linear-gradient( 90deg, rgba(75, 196, 187, .5) 0%, rgba(34, 211, 238, .5) 20%, rgba(168, 85, 247, .5) 50%, rgba(236, 72, 153, .5) 70%, rgba(224, 123, 74, .5) 90% );--video-container-shadow: 0 2px 8px rgba(0, 0, 0, .04), 0 8px 32px rgba(0, 0, 0, .06);--video-container-radius: 12px;--onboarding-letterbox-color: #2c2a28;--onboarding-letterbox-color-alt: #242321;--video-letterbox-gradient: linear-gradient( 180deg, var(--onboarding-letterbox-color) 0%, var(--onboarding-letterbox-color-alt) 100% );--play-btn-bg: rgba(0, 0, 0, .6);--play-btn-bg-hover: rgba(0, 0, 0, .75);--play-btn-shadow: 0 4px 20px rgba(0, 0, 0, .3);--play-btn-glow: 0 0 0 4px rgba(255, 255, 255, .15);--instruction-bar-bg: rgba(250, 248, 246, .95);--instruction-bar-border: 1px solid rgba(0, 0, 0, .06);--instruction-bar-shadow: 0 1px 3px rgba(0, 0, 0, .03);--instruction-bar-icon-bg: rgba(224, 123, 74, .1);--instruction-bar-icon-color: var(--primary);--question-highlight-gradient: linear-gradient(135deg, #F5A67A 0%, #ec4899 100%);--help-btn-bg: var(--surface-alt);--help-btn-border: var(--border);--help-btn-color: var(--text-tertiary);--help-btn-hover-bg: var(--surface);--help-btn-hover-border: var(--border-hover);--help-btn-hover-color: var(--text-secondary);--help-btn-shadow: 0 2px 8px rgba(0, 0, 0, .08);--phase-label-bg: rgba(0, 0, 0, .04);--phase-label-color: var(--text-tertiary);--phase-label-border: 1px solid rgba(0, 0, 0, .06);--loading-card-bg: linear-gradient(135deg, rgba(255, 255, 255, .95) 0%, rgba(250, 248, 246, .95) 100%);--loading-card-border: rgba(0, 0, 0, .08);--loading-card-shadow: 0 0 0 1px rgba(255, 255, 255, .5) inset, 0 20px 50px -10px rgba(0, 0, 0, .15), 0 0 60px -20px var(--primary-subtle);--loading-ambient-glow: radial-gradient(circle, var(--primary-subtle) 0%, transparent 60%)}[data-theme=warm] .analysis-page .step-number,[data-theme=warm] .analysis-page .step-number-prominent,[data-theme=warm] .step-card .step-number-badge{background:linear-gradient(135deg,#e07b4a26,#e07b4a14);border:1.5px solid rgba(224,123,74,.3);color:#e07b4a;box-shadow:0 1px 3px #e07b4a1a;transition:all .2s ease}[data-theme=warm] .analysis-page .step-card:hover .step-number,[data-theme=warm] .analysis-page .step-card:hover .step-number-prominent,[data-theme=warm] .step-card:hover .step-number-badge{background:linear-gradient(135deg,#e07b4a40,#e07b4a26);border-color:#e07b4a66;box-shadow:0 0 0 3px #e07b4a1a}[data-theme=warm] .step-number-row .step-number{width:48px!important;height:48px!important;min-width:48px!important;font-size:17px!important;background:#f5f3f0!important;border:none!important;color:#8a857f!important;box-shadow:none!important;font-weight:500!important;opacity:1!important}[data-theme=warm] .step-number-row .step-number.active{background:var(--primary)!important;border:none!important;color:var(--text-on-primary)!important;box-shadow:none!important;font-weight:600!important;opacity:1!important}[data-theme=warm] .step-number-row .step-number.step-number-row-item-recap.active,[data-theme=warm] .step-number-row .step-number.step-number-row-item-tips.active,[data-theme=warm] .step-number-row .step-number.step-number-row-item-demo.active{background:var(--primary)}[data-theme=warm] .step-number-row .step-number.step-number-row-item-tips{filter:grayscale(1)}[data-theme=warm] .step-number-row .step-number.step-number-row-item-tips.active{filter:none}[data-theme=warm] .step-number-row .step-number.ghost{background:color-mix(in srgb,var(--text-secondary) 15%,transparent);border-color:color-mix(in srgb,var(--text-secondary) 10%,transparent)}[data-theme=warm] .step-number-row .step-number.ghost.active{background:color-mix(in srgb,var(--text-secondary) 25%,transparent);border-color:color-mix(in srgb,var(--text-secondary) 20%,transparent)}[data-theme=warm] .step-modal-step-row-inline .step-number-row .step-number{width:32px!important;height:32px!important;min-width:32px!important;font-size:var(--text-sm)!important}[data-theme=warm] .floating-step-orb{background:var(--primary);border-color:var(--highlight-soft);color:var(--text-on-primary);box-shadow:0 1px 2px var(--shadow-subtle),0 4px 8px var(--shadow-subtle),0 0 0 1px var(--shadow-ghost),inset 0 1px 0 var(--highlight-subtle)}[data-theme=warm] .floating-step-orb-content{text-shadow:0 1px 1px var(--shadow-soft)}[data-theme=warm] .floating-step-menu-item{background:color-mix(in srgb,var(--surface) 95%,transparent);color:var(--text-tertiary);border:none;box-shadow:0 1px 4px var(--shadow-subtle)}[data-theme=warm] .floating-step-menu-item:hover{background:var(--surface);color:var(--text-secondary)}[data-theme=warm] .floating-step-menu-item.active{background:var(--primary);color:var(--text-on-primary);box-shadow:0 2px 6px var(--primary-shadow)}[data-theme=warm] .btn--secondary{background:linear-gradient(145deg,#fffffff2,#faf8f6fa);border-color:var(--border);color:var(--text-primary);box-shadow:0 2px 8px var(--shadow-subtle),inset 0 1px #fffc}[data-theme=warm] .btn--secondary:hover{background:linear-gradient(145deg,#fff,#fcfaf8);border-color:var(--border-hover);color:var(--text-primary);box-shadow:0 4px 12px var(--shadow-soft),inset 0 1px #ffffffe6}[data-theme=warm] .btn--secondary:active{box-shadow:0 2px 6px var(--shadow-subtle)}[data-theme=warm] .btn--accent{background:linear-gradient(145deg,var(--primary) 0%,var(--primary) 60%,var(--primary-dark) 100%);border-color:var(--primary-glow);color:#fff;box-shadow:0 6px 18px var(--primary-glow),0 0 0 3px var(--primary-subtle)}[data-theme=warm] .btn--accent:hover{background:linear-gradient(145deg,var(--primary-light) 0%,var(--primary) 60%,var(--primary-dark) 100%);border-color:var(--primary-border);color:#fff;transform:translateY(-2px) scale(1.02);box-shadow:0 10px 28px var(--primary-glow),0 0 0 4px var(--primary-subtle)}[data-theme=warm] .btn--accent:active{transform:translateY(0) scale(1);box-shadow:0 4px 12px var(--primary-glow),0 0 0 2px var(--primary-subtle)}[data-theme=dark]{--background-alt: #141414;--surface: #2a2a2a;--surface-hover: #3a3a3a;--surface-alt: #252525;--primary: #8b5cf6;--primary-dark: #7c3aed;--primary-light: #a78bfa;--primary-hover: #9d7af7;--primary-subtle: rgba(139, 92, 246, .15);--primary-tint: rgba(139, 92, 246, .05);--primary-glow: rgba(139, 92, 246, .3);--primary-border: rgba(139, 92, 246, .4);--primary-shadow: rgba(139, 92, 246, .3);--primary-gradient: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);--primary-alt: #6366f1;--primary-alt-subtle: rgba(99, 102, 241, .15);--primary-alt-glow: rgba(99, 102, 241, .3);--primary-muted: #c4b5fd;--primary-soft: rgba(139, 92, 246, .15);--text-primary: #f5f5f5;--text-secondary: #a1a1aa;--text-tertiary: #71717a;--text-muted: #52525b;--text-on-primary: #ffffff;--border: #3f3f46;--border-hover: #52525b;--success: #22c55e;--success-hover: #16a34a;--success-light: #4ade80;--success-subtle: rgba(34, 197, 94, .15);--success-glow: rgba(34, 197, 94, .35);--success-border: rgba(34, 197, 94, .25);--warning: #fbbf24;--warning-strong: #f97316;--warning-subtle: rgba(251, 191, 36, .15);--warning-glow: rgba(251, 191, 36, .35);--danger: #ef4444;--danger-dark: #dc2626;--danger-darker: #b91c1c;--danger-light: #f87171;--danger-muted: #fca5a5;--danger-subtle: rgba(239, 68, 68, .15);--danger-glow: rgba(239, 68, 68, .35);--icon-demo: #8b5cf6;--icon-demo-subtle: rgba(139, 92, 246, .15);--icon-recap: #4BC4BB;--icon-recap-subtle: rgba(75, 196, 187, .15);--icon-recap-soft: rgba(75, 196, 187, .15);--icon-recap-border: rgba(75, 196, 187, .25);--icon-tips: #fbbf24;--icon-tips-subtle: rgba(251, 191, 36, .15);--icon-tips-soft: rgba(251, 191, 36, .15);--icon-tips-border: rgba(251, 191, 36, .25);--accent: #8b5cf6;--shadow-card: 0 2px 8px rgba(0, 0, 0, .3);--shadow-card-hover: 0 4px 16px rgba(0, 0, 0, .4);--letterbox-color: #0f0f0f;--node-completed: #22c55e;--bg-primary: #1a1a1a;--bg-secondary: #2a2a2a;--bg-tertiary: #252525;--bg-elevated: #3a3a3a;--movecard-overlay-bg: rgba(0, 0, 0, .75);--movecard-overlay-bg-hover: rgba(0, 0, 0, .85);--movecard-overlay-text: #f5f5f5;--movecard-thumbnail-gradient: linear-gradient(to top, rgba(0, 0, 0, .8) 0%, transparent 100%);--spotlight-bg: rgba(26, 26, 26, .98);--spotlight-border: #3f3f46;--spotlight-shadow: 0 8px 32px rgba(0, 0, 0, .5), 0 2px 8px rgba(0, 0, 0, .3);--spotlight-btn-bg: #2a2a2a;--spotlight-text: #a1a1aa;--spotlight-text-muted: #71717a;--spotlight-text-hover: #f5f5f5;--spotlight-hover-bg: #3a3a3a;--spotlight-active-bg: #252525;--timeline-bg: linear-gradient(180deg, #2a2a2a 0%, #252525 100%);--timeline-border: rgba(139, 92, 246, .2);--timeline-shadow: 0 -4px 16px rgba(0, 0, 0, .3), 0 4px 20px rgba(0, 0, 0, .4);--timeline-marker-bg: linear-gradient(180deg, rgba(139, 92, 246, .1) 0%, rgba(139, 92, 246, .05) 100%);--timeline-marker-shadow: inset 0 1px 3px rgba(0, 0, 0, .3);--timeline-marker-track-bg: rgba(255, 255, 255, .04);--timeline-marker-track-bg-hover: rgba(255, 255, 255, .06);--timeline-tracks-bg: linear-gradient(180deg, rgba(15, 17, 25, .95) 0%, rgba(10, 12, 18, .98) 100%);--timeline-track-bg: rgba(0, 0, 0, .25);--timeline-track-border: none;--timeline-track-shadow: inset 0 1px 3px rgba(0, 0, 0, .3), inset 0 0 0 1px rgba(0, 0, 0, .1);--timeline-track-gridlines-bg: none;--timeline-btn-bg: rgba(139, 92, 246, .15);--timeline-btn-border: rgba(139, 92, 246, .3);--timeline-btn-color: #a78bfa;--timeline-btn-shadow: 0 2px 8px rgba(139, 92, 246, .2);--timeline-btn-hover-bg: rgba(139, 92, 246, .25);--timeline-btn-hover-color: #c4b5fd;--timeline-btn-hover-shadow: 0 4px 12px rgba(139, 92, 246, .3);--timeline-btn-active-bg: rgba(139, 92, 246, .1);--timeline-minimap-bar-bg: #1a1c24;--timeline-minimap-bar-border: none;--timeline-minimap-bar-shadow: none;--timeline-minimap-gridlines-bg: repeating-linear-gradient( 90deg, transparent, transparent calc(10% - .5px) , rgba(255, 255, 255, .08) calc(10% - .5px) , rgba(255, 255, 255, .08) calc(10% + .5px) , transparent calc(10% + .5px) );--timeline-minimap-viewport-bg: rgba(255, 255, 255, .15);--timeline-minimap-viewport-border: 2px solid rgba(255, 255, 255, .9);--timeline-minimap-viewport-shadow: 0 0 8px rgba(255, 255, 255, .4), inset 0 0 0 1px rgba(255, 255, 255, .1);--timeline-minimap-playhead: var(--text-on-primary);--video-btn-bg: var(--shadow-soft);--video-btn-border: var(--highlight-soft);--video-btn-color: var(--overlay-heavy);--video-btn-shadow: 0 2px 8px var(--shadow-medium);--video-btn-bg-hover: var(--shadow-heavy);--video-btn-border-hover: var(--overlay-subtle);--video-btn-color-hover: var(--text-primary);--video-btn-shadow-hover: 0 4px 12px var(--shadow-medium);--highlight-soft: rgba(255, 255, 255, .2);--highlight-subtle: rgba(255, 255, 255, .15);--highlight-faint: rgba(255, 255, 255, .1);--highlight-ghost: rgba(255, 255, 255, .06);--shadow-heavy: rgba(0, 0, 0, .6);--shadow-medium: rgba(0, 0, 0, .4);--shadow-soft: rgba(0, 0, 0, .25);--shadow-subtle: rgba(0, 0, 0, .15);--shadow-ghost: rgba(0, 0, 0, .08);--overlay-dark: rgba(0, 0, 0, .8);--overlay-heavy: rgba(0, 0, 0, .7);--overlay-medium: rgba(0, 0, 0, .5);--overlay-subtle: rgba(0, 0, 0, .3);--modal-overlay: rgba(0, 0, 0, .7);--blue: #60a5fa;--blue-subtle: rgba(96, 165, 250, .15);--pink: #ec4899;--pink-light: #f472b6;--pink-glow: rgba(236, 72, 153, .35);--pink-subtle: rgba(236, 72, 153, .15);--cyan: #22d3ee;--cyan-light: #67e8f9;--cyan-subtle: rgba(34, 211, 238, .15);--cyan-glow: rgba(34, 211, 238, .35);--orange: #fb923c;--orange-subtle: rgba(251, 146, 60, .15);--orange-glow: rgba(251, 146, 60, .35);--yellow: #facc15;--yellow-light: #fde047;--yellow-subtle: rgba(250, 204, 21, .15);--yellow-glow: rgba(250, 204, 21, .35);--slate: #94a3b8;--accent-purple: #8b5cf6;--accent-purple-light: #a78bfa;--accent-purple-dark: #7c3aed;--accent-purple-subtle: rgba(139, 92, 246, .12);--accent-purple-glow: rgba(139, 92, 246, .35);--step-notes-toggle-color: var(--text-tertiary);--step-notes-toggle-hover-color: var(--text-secondary);--density-control-bg: color-mix(in srgb, var(--text-primary) 15%, transparent);--density-control-hover-bg: color-mix(in srgb, var(--text-primary) 6%, transparent);--density-control-color: var(--text-tertiary);--density-control-hover-color: var(--text-secondary);--density-control-active-bg: color-mix(in srgb, var(--text-primary) 12%, transparent);--density-control-active-hover-bg: color-mix(in srgb, var(--text-primary) 18%, transparent);--density-control-active-color: var(--text-primary);--interactive-hover-bg: rgba(255, 255, 255, .06);--settings-menu-bg: rgba(20, 20, 20, .98);--settings-menu-border: var(--highlight-subtle);--settings-menu-shadow: 0 8px 32px var(--overlay-dark);--settings-menu-text: #ffffff;--settings-menu-text-muted: var(--overlay-medium);--settings-menu-divider: var(--highlight-faint);--settings-menu-btn-bg: var(--highlight-faint);--settings-menu-btn-border: var(--highlight-subtle);--settings-menu-btn-hover-bg: var(--highlight-soft);--settings-menu-option-hover-bg: var(--highlight-ghost);--path-line-width: 3px;--path-node-border-width: 3px}[data-theme=vault]{--background-alt: #12100e;--surface: #1e1a16;--surface-hover: #2a2420;--surface-alt: #1a1612;--bg-primary: #16130f;--bg-secondary: #1e1a16;--bg-tertiary: #1a1612;--bg-elevated: #2a2420;--primary: #c9a868;--primary-dark: #b8956d;--primary-light: #ddc088;--primary-hover: #bfa060;--primary-subtle: rgba(201, 168, 104, .12);--primary-tint: rgba(201, 168, 104, .05);--primary-glow: rgba(201, 168, 104, .25);--primary-border: rgba(201, 168, 104, .35);--primary-shadow: rgba(201, 168, 104, .25);--primary-gradient: linear-gradient(135deg, #c9a868 0%, #b8956d 100%);--primary-alt: #d4b478;--primary-muted: #e0c898;--primary-soft: rgba(201, 168, 104, .12);--text-primary: #ede8e0;--text-secondary: #b8aa98;--text-tertiary: #7a6e60;--text-muted: #544a40;--text-on-primary: #16130f;--border: #352e28;--border-hover: #453c34;--success: #7ab87a;--success-hover: #5ca05c;--success-light: #98c898;--success-subtle: rgba(122, 184, 122, .15);--success-glow: rgba(122, 184, 122, .3);--success-border: rgba(122, 184, 122, .25);--warning: #e8b85c;--warning-strong: #d4a040;--warning-subtle: rgba(232, 184, 92, .15);--warning-glow: rgba(232, 184, 92, .3);--danger: #d48080;--danger-dark: #c46060;--danger-darker: #b04848;--danger-light: #e4a0a0;--danger-muted: #e8c0c0;--danger-subtle: rgba(212, 128, 128, .15);--danger-glow: rgba(212, 128, 128, .3);--icon-demo: #c9a868;--icon-demo-subtle: rgba(201, 168, 104, .15);--icon-recap: #88b8a8;--icon-recap-subtle: rgba(136, 184, 168, .15);--icon-recap-soft: rgba(136, 184, 168, .15);--icon-recap-border: rgba(136, 184, 168, .25);--icon-tips: #e8b85c;--icon-tips-subtle: rgba(232, 184, 92, .15);--icon-tips-soft: rgba(232, 184, 92, .15);--icon-tips-border: rgba(232, 184, 92, .25);--accent: #c9a868;--shadow-card: 0 2px 8px rgba(0, 0, 0, .4);--shadow-card-hover: 0 4px 16px rgba(0, 0, 0, .5);--letterbox-color: #0a0908;--node-completed: #7ab87a;--movecard-overlay-bg: rgba(22, 19, 15, .88);--movecard-overlay-bg-hover: rgba(22, 19, 15, .94);--movecard-overlay-text: #ede8e0;--movecard-thumbnail-gradient: linear-gradient(to top, rgba(22, 19, 15, .9) 0%, transparent 100%);--spotlight-bg: rgba(22, 19, 15, .98);--spotlight-border: #352e28;--spotlight-shadow: 0 8px 32px rgba(0, 0, 0, .6), 0 2px 8px rgba(0, 0, 0, .4);--spotlight-btn-bg: #1e1a16;--spotlight-text: #b8aa98;--spotlight-text-muted: #7a6e60;--spotlight-text-hover: #ede8e0;--spotlight-hover-bg: #2a2420;--spotlight-active-bg: #1a1612;--highlight-soft: rgba(255, 248, 240, .18);--highlight-subtle: rgba(255, 248, 240, .12);--highlight-faint: rgba(255, 248, 240, .08);--highlight-ghost: rgba(255, 248, 240, .04);--shadow-heavy: rgba(0, 0, 0, .65);--shadow-medium: rgba(0, 0, 0, .45);--shadow-soft: rgba(0, 0, 0, .3);--shadow-subtle: rgba(0, 0, 0, .18);--shadow-ghost: rgba(0, 0, 0, .1);--overlay-dark: rgba(0, 0, 0, .8);--overlay-heavy: rgba(0, 0, 0, .7);--overlay-medium: rgba(0, 0, 0, .5);--overlay-subtle: rgba(0, 0, 0, .3);--modal-overlay: rgba(10, 9, 8, .88);--blue: #88a8c8;--blue-subtle: rgba(136, 168, 200, .15);--pink: #c8a0a8;--pink-light: #d8b8c0;--pink-glow: rgba(200, 160, 168, .3);--pink-subtle: rgba(200, 160, 168, .15);--cyan: #88b8a8;--cyan-light: #a8d0c0;--cyan-subtle: rgba(136, 184, 168, .15);--cyan-glow: rgba(136, 184, 168, .3);--orange: #d8a070;--orange-subtle: rgba(216, 160, 112, .15);--orange-glow: rgba(216, 160, 112, .3);--yellow: #e8c878;--yellow-light: #f0d898;--yellow-subtle: rgba(232, 200, 120, .15);--yellow-glow: rgba(232, 200, 120, .3);--slate: #a09088;--accent-purple: #a898c0;--accent-purple-light: #c0b0d0;--accent-purple-dark: #9080a8;--accent-purple-subtle: rgba(168, 152, 192, .12);--accent-purple-glow: rgba(168, 152, 192, .3);--interactive-hover-bg: rgba(255, 248, 240, .05);--settings-menu-bg: rgba(22, 19, 15, .98);--settings-menu-border: var(--border);--settings-menu-shadow: 0 8px 32px var(--overlay-dark);--settings-menu-text: #ede8e0;--settings-menu-text-muted: #7a6e60;--settings-menu-divider: var(--border);--settings-menu-btn-bg: var(--surface);--settings-menu-btn-border: var(--border);--settings-menu-btn-hover-bg: var(--surface-hover);--settings-menu-option-hover-bg: var(--highlight-ghost);--path-line-width: 3px;--path-node-border-width: 3px}[data-theme=jewels]{--background-alt: #08080a;--surface: #141418;--surface-hover: #1e1e24;--surface-alt: #101014;--bg-primary: #0c0c10;--bg-secondary: #141418;--bg-tertiary: #101014;--bg-elevated: #1e1e24;--primary: #c8ccd4;--primary-dark: #a8aeb8;--primary-light: #e0e4ec;--primary-hover: #d8dce4;--primary-subtle: rgba(200, 204, 212, .12);--primary-tint: rgba(200, 204, 212, .05);--primary-glow: rgba(200, 204, 212, .2);--primary-border: rgba(200, 204, 212, .3);--primary-shadow: rgba(200, 204, 212, .2);--primary-gradient: linear-gradient(135deg, #c8ccd4 0%, #a8aeb8 100%);--primary-alt: #b8bcc4;--primary-muted: #d4d8e0;--primary-soft: rgba(200, 204, 212, .1);--text-primary: #f4f4f6;--text-secondary: #a0a4ac;--text-tertiary: #606470;--text-muted: #404450;--text-on-primary: #0c0c10;--border: #28282e;--border-hover: #38383e;--success: #50c878;--success-hover: #3cb868;--success-light: #70d898;--success-subtle: rgba(80, 200, 120, .15);--success-glow: rgba(80, 200, 120, .3);--success-border: rgba(80, 200, 120, .25);--warning: #f0c040;--warning-strong: #e0a820;--warning-subtle: rgba(240, 192, 64, .15);--warning-glow: rgba(240, 192, 64, .3);--danger: #e85858;--danger-dark: #d04040;--danger-darker: #b83030;--danger-light: #f08080;--danger-muted: #f0a8a8;--danger-subtle: rgba(232, 88, 88, .15);--danger-glow: rgba(232, 88, 88, .3);--icon-demo: #60c8c8;--icon-demo-subtle: rgba(96, 200, 200, .15);--icon-recap: #60c8c8;--icon-recap-subtle: rgba(96, 200, 200, .15);--icon-recap-soft: rgba(96, 200, 200, .12);--icon-recap-border: rgba(96, 200, 200, .25);--icon-tips: #f0c040;--icon-tips-subtle: rgba(240, 192, 64, .15);--icon-tips-soft: rgba(240, 192, 64, .12);--icon-tips-border: rgba(240, 192, 64, .25);--accent: #60c8c8;--shadow-card: 0 2px 12px rgba(0, 0, 0, .5);--shadow-card-hover: 0 4px 20px rgba(0, 0, 0, .6);--letterbox-color: #040406;--node-completed: #50c878;--movecard-overlay-bg: rgba(12, 12, 16, .88);--movecard-overlay-bg-hover: rgba(12, 12, 16, .94);--movecard-overlay-text: #f4f4f6;--movecard-thumbnail-gradient: linear-gradient(to top, rgba(12, 12, 16, .92) 0%, transparent 100%);--spotlight-bg: rgba(12, 12, 16, .98);--spotlight-border: #28282e;--spotlight-shadow: 0 8px 40px rgba(0, 0, 0, .7), 0 2px 10px rgba(0, 0, 0, .5);--spotlight-btn-bg: #141418;--spotlight-text: #a0a4ac;--spotlight-text-muted: #606470;--spotlight-text-hover: #f4f4f6;--spotlight-hover-bg: #1e1e24;--spotlight-active-bg: #101014;--highlight-soft: rgba(255, 255, 255, .16);--highlight-subtle: rgba(255, 255, 255, .1);--highlight-faint: rgba(255, 255, 255, .06);--highlight-ghost: rgba(255, 255, 255, .03);--shadow-heavy: rgba(0, 0, 0, .7);--shadow-medium: rgba(0, 0, 0, .5);--shadow-soft: rgba(0, 0, 0, .35);--shadow-subtle: rgba(0, 0, 0, .2);--shadow-ghost: rgba(0, 0, 0, .1);--overlay-dark: rgba(0, 0, 0, .85);--overlay-heavy: rgba(0, 0, 0, .75);--overlay-medium: rgba(0, 0, 0, .55);--overlay-subtle: rgba(0, 0, 0, .35);--modal-overlay: rgba(4, 4, 6, .9);--blue: #6090e0;--blue-subtle: rgba(96, 144, 224, .15);--pink: #e080a0;--pink-light: #f0a0b8;--pink-glow: rgba(224, 128, 160, .3);--pink-subtle: rgba(224, 128, 160, .15);--cyan: #60c8c8;--cyan-light: #80e0e0;--cyan-subtle: rgba(96, 200, 200, .15);--cyan-glow: rgba(96, 200, 200, .3);--orange: #e8a050;--orange-subtle: rgba(232, 160, 80, .15);--orange-glow: rgba(232, 160, 80, .3);--yellow: #f0d060;--yellow-light: #f8e080;--yellow-subtle: rgba(240, 208, 96, .15);--yellow-glow: rgba(240, 208, 96, .3);--slate: #8890a0;--accent-purple: #a080d0;--accent-purple-light: #b898e0;--accent-purple-dark: #8868b8;--accent-purple-subtle: rgba(160, 128, 208, .12);--accent-purple-glow: rgba(160, 128, 208, .3);--interactive-hover-bg: rgba(255, 255, 255, .04);--settings-menu-bg: rgba(12, 12, 16, .98);--settings-menu-border: var(--border);--settings-menu-shadow: 0 8px 40px var(--overlay-dark);--settings-menu-text: #f4f4f6;--settings-menu-text-muted: #606470;--settings-menu-divider: var(--border);--settings-menu-btn-bg: var(--surface);--settings-menu-btn-border: var(--border);--settings-menu-btn-hover-bg: var(--surface-hover);--settings-menu-option-hover-bg: var(--highlight-ghost);--path-line-width: 3px;--path-node-border-width: 3px}[data-theme=companion]{--background-alt: #f5ede4;--surface: #fffbf7;--surface-hover: #fdf6f0;--surface-alt: #faf5ef;--bg-primary: #fdf8f3;--bg-secondary: #fffbf7;--bg-tertiary: #faf5ef;--bg-elevated: #ffffff;--primary: #d4735a;--primary-dark: #c2614a;--primary-light: #e89480;--primary-hover: #c86850;--primary-subtle: rgba(212, 115, 90, .1);--primary-tint: rgba(212, 115, 90, .05);--primary-glow: rgba(212, 115, 90, .2);--primary-border: rgba(212, 115, 90, .28);--primary-shadow: rgba(212, 115, 90, .25);--primary-gradient: linear-gradient(135deg, #d4735a 0%, #c2614a 100%);--primary-alt: #b85c4a;--primary-muted: #e8a090;--primary-soft: rgba(212, 115, 90, .1);--text-primary: #3d2f28;--text-secondary: #6b5a50;--text-tertiary: #9a877a;--text-muted: #c4b5aa;--text-on-primary: #ffffff;--border: #e8ddd2;--border-hover: #d9cbbf;--success: #5da066;--success-hover: #4a8a52;--success-light: #7ab882;--success-subtle: rgba(93, 160, 102, .12);--success-glow: rgba(93, 160, 102, .3);--success-border: rgba(93, 160, 102, .22);--warning: #d4a04a;--warning-strong: #c48a30;--warning-subtle: rgba(212, 160, 74, .1);--warning-glow: rgba(212, 160, 74, .3);--danger: #c45a5a;--danger-dark: #b04545;--danger-darker: #973838;--danger-light: #d88080;--danger-muted: #e8b0b0;--danger-subtle: rgba(196, 90, 90, .12);--danger-glow: rgba(196, 90, 90, .3);--icon-demo: #d4735a;--icon-demo-subtle: rgba(212, 115, 90, .1);--icon-recap: #4aaa9a;--icon-recap-subtle: rgba(74, 170, 154, .1);--icon-recap-soft: rgba(74, 170, 154, .12);--icon-recap-border: rgba(74, 170, 154, .22);--icon-tips: #d4a04a;--icon-tips-subtle: rgba(212, 160, 74, .1);--icon-tips-soft: rgba(212, 160, 74, .12);--icon-tips-border: rgba(212, 160, 74, .22);--accent: #d4735a;--shadow-card: 0 1px 3px rgba(60, 40, 30, .06), 0 4px 12px rgba(60, 40, 30, .08);--shadow-card-hover: 0 2px 6px rgba(60, 40, 30, .08), 0 8px 24px rgba(60, 40, 30, .12);--letterbox-color: #f5ede4;--node-completed: #5da066;--movecard-overlay-bg: rgba(255, 251, 247, .88);--movecard-overlay-bg-hover: rgba(255, 251, 247, .95);--movecard-overlay-text: #3d2f28;--movecard-thumbnail-gradient: linear-gradient(to top, rgba(255, 251, 247, .9) 0%, transparent 100%);--spotlight-bg: rgba(255, 251, 247, .98);--spotlight-border: #e8ddd2;--spotlight-shadow: 0 8px 32px rgba(60, 40, 30, .12), 0 2px 8px rgba(60, 40, 30, .08);--spotlight-btn-bg: #faf5ef;--spotlight-text: #6b5a50;--spotlight-text-muted: #9a877a;--spotlight-text-hover: #3d2f28;--spotlight-hover-bg: #fdf6f0;--spotlight-active-bg: #f5ede4;--highlight-soft: rgba(255, 255, 255, .8);--highlight-subtle: rgba(255, 255, 255, .6);--highlight-faint: rgba(255, 255, 255, .4);--highlight-ghost: rgba(255, 255, 255, .2);--shadow-heavy: rgba(60, 40, 30, .35);--shadow-medium: rgba(60, 40, 30, .2);--shadow-soft: rgba(60, 40, 30, .12);--shadow-subtle: rgba(60, 40, 30, .06);--shadow-ghost: rgba(60, 40, 30, .03);--overlay-dark: rgba(60, 40, 30, .6);--overlay-heavy: rgba(255, 255, 255, .9);--overlay-medium: rgba(255, 255, 255, .7);--overlay-subtle: rgba(255, 255, 255, .4);--modal-overlay: rgba(253, 248, 243, .88);--blue: #5a9cc4;--blue-subtle: rgba(90, 156, 196, .1);--pink: #d4809a;--pink-light: #e8a0b4;--pink-glow: rgba(212, 128, 154, .3);--pink-subtle: rgba(212, 128, 154, .1);--cyan: #4aaa9a;--cyan-light: #6ac4b4;--cyan-subtle: rgba(74, 170, 154, .1);--cyan-glow: rgba(74, 170, 154, .3);--orange: #d4885a;--orange-subtle: rgba(212, 136, 90, .1);--orange-glow: rgba(212, 136, 90, .3);--yellow: #d4b85a;--yellow-light: #e4ca7a;--yellow-subtle: rgba(212, 184, 90, .1);--yellow-glow: rgba(212, 184, 90, .3);--slate: #8a9aa4;--accent-purple: #9a7ab8;--accent-purple-light: #b498cc;--accent-purple-dark: #7c5c9a;--accent-purple-subtle: rgba(154, 122, 184, .1);--accent-purple-glow: rgba(154, 122, 184, .3);--interactive-hover-bg: rgba(60, 40, 30, .04);--settings-menu-bg: rgba(255, 251, 247, .98);--settings-menu-border: var(--border);--settings-menu-shadow: 0 8px 32px rgba(60, 40, 30, .12);--settings-menu-text: #3d2f28;--settings-menu-text-muted: #9a877a;--settings-menu-divider: var(--border);--settings-menu-btn-bg: var(--surface-alt);--settings-menu-btn-border: var(--border);--settings-menu-btn-hover-bg: var(--surface-hover);--settings-menu-option-hover-bg: var(--interactive-hover-bg);--path-line-width: 2px;--path-node-border-width: 2px}[data-theme=ember]{--background-alt: #100c0a;--surface: #1c1614;--surface-hover: #28201c;--surface-alt: #181210;--bg-primary: #14100e;--bg-secondary: #1c1614;--bg-tertiary: #181210;--bg-elevated: #28201c;--primary: #e87040;--primary-dark: #d45830;--primary-light: #f08858;--primary-hover: #dc6438;--primary-subtle: rgba(232, 112, 64, .14);--primary-tint: rgba(232, 112, 64, .05);--primary-glow: rgba(232, 112, 64, .28);--primary-border: rgba(232, 112, 64, .38);--primary-shadow: rgba(232, 112, 64, .28);--primary-gradient: linear-gradient(135deg, #e87040 0%, #d45830 100%);--primary-alt: #f48050;--primary-muted: #f0a078;--primary-soft: rgba(232, 112, 64, .14);--text-primary: #f0ebe8;--text-secondary: #b0a098;--text-tertiary: #786860;--text-muted: #504840;--text-on-primary: #14100e;--border: #342c28;--border-hover: #443830;--success: #70c070;--success-hover: #58a858;--success-light: #90d890;--success-subtle: rgba(112, 192, 112, .15);--success-glow: rgba(112, 192, 112, .3);--success-border: rgba(112, 192, 112, .25);--warning: #f0b840;--warning-strong: #e0a020;--warning-subtle: rgba(240, 184, 64, .15);--warning-glow: rgba(240, 184, 64, .3);--danger: #e06060;--danger-dark: #c84848;--danger-darker: #b03838;--danger-light: #f08888;--danger-muted: #f0b0b0;--danger-subtle: rgba(224, 96, 96, .15);--danger-glow: rgba(224, 96, 96, .3);--icon-demo: #e87040;--icon-demo-subtle: rgba(232, 112, 64, .15);--icon-recap: #70b8a8;--icon-recap-subtle: rgba(112, 184, 168, .15);--icon-recap-soft: rgba(112, 184, 168, .12);--icon-recap-border: rgba(112, 184, 168, .25);--icon-tips: #f0b840;--icon-tips-subtle: rgba(240, 184, 64, .15);--icon-tips-soft: rgba(240, 184, 64, .12);--icon-tips-border: rgba(240, 184, 64, .25);--accent: #e87040;--shadow-card: 0 2px 10px rgba(0, 0, 0, .45);--shadow-card-hover: 0 4px 18px rgba(0, 0, 0, .55);--letterbox-color: #080604;--node-completed: #70c070;--movecard-overlay-bg: rgba(20, 16, 14, .88);--movecard-overlay-bg-hover: rgba(20, 16, 14, .94);--movecard-overlay-text: #f0ebe8;--movecard-thumbnail-gradient: linear-gradient(to top, rgba(20, 16, 14, .9) 0%, transparent 100%);--spotlight-bg: rgba(20, 16, 14, .98);--spotlight-border: #342c28;--spotlight-shadow: 0 8px 32px rgba(0, 0, 0, .6), 0 2px 8px rgba(0, 0, 0, .4);--spotlight-btn-bg: #1c1614;--spotlight-text: #b0a098;--spotlight-text-muted: #786860;--spotlight-text-hover: #f0ebe8;--spotlight-hover-bg: #28201c;--spotlight-active-bg: #181210;--highlight-soft: rgba(255, 248, 240, .18);--highlight-subtle: rgba(255, 248, 240, .12);--highlight-faint: rgba(255, 248, 240, .08);--highlight-ghost: rgba(255, 248, 240, .04);--shadow-heavy: rgba(0, 0, 0, .65);--shadow-medium: rgba(0, 0, 0, .45);--shadow-soft: rgba(0, 0, 0, .3);--shadow-subtle: rgba(0, 0, 0, .18);--shadow-ghost: rgba(0, 0, 0, .1);--overlay-dark: rgba(0, 0, 0, .8);--overlay-heavy: rgba(0, 0, 0, .7);--overlay-medium: rgba(0, 0, 0, .5);--overlay-subtle: rgba(0, 0, 0, .3);--modal-overlay: rgba(8, 6, 4, .88);--blue: #78a8d0;--blue-subtle: rgba(120, 168, 208, .15);--pink: #d89090;--pink-light: #e8a8a8;--pink-glow: rgba(216, 144, 144, .3);--pink-subtle: rgba(216, 144, 144, .15);--cyan: #70b8a8;--cyan-light: #90d0c0;--cyan-subtle: rgba(112, 184, 168, .15);--cyan-glow: rgba(112, 184, 168, .3);--orange: #e89060;--orange-subtle: rgba(232, 144, 96, .15);--orange-glow: rgba(232, 144, 96, .3);--yellow: #f0c860;--yellow-light: #f8d880;--yellow-subtle: rgba(240, 200, 96, .15);--yellow-glow: rgba(240, 200, 96, .3);--slate: #989088;--accent-purple: #b090c0;--accent-purple-light: #c8a8d0;--accent-purple-dark: #9878a8;--accent-purple-subtle: rgba(176, 144, 192, .12);--accent-purple-glow: rgba(176, 144, 192, .3);--interactive-hover-bg: rgba(255, 248, 240, .05);--settings-menu-bg: rgba(20, 16, 14, .98);--settings-menu-border: var(--border);--settings-menu-shadow: 0 8px 32px var(--overlay-dark);--settings-menu-text: #f0ebe8;--settings-menu-text-muted: #786860;--settings-menu-divider: var(--border);--settings-menu-btn-bg: var(--surface);--settings-menu-btn-border: var(--border);--settings-menu-btn-hover-bg: var(--surface-hover);--settings-menu-option-hover-bg: var(--highlight-ghost);--path-line-width: 3px;--path-node-border-width: 3px}[data-theme=party]{--background-alt: #0e0a14;--surface: #1c1624;--surface-hover: #2a2234;--surface-alt: #171220;--bg-primary: #120e18;--bg-secondary: #1c1624;--bg-tertiary: #171220;--bg-elevated: #2a2234;--primary: #e040a0;--primary-dark: #c43090;--primary-light: #f060b8;--primary-hover: #e858b0;--primary-subtle: rgba(224, 64, 160, .15);--primary-tint: rgba(224, 64, 160, .06);--primary-glow: rgba(224, 64, 160, .35);--primary-border: rgba(224, 64, 160, .4);--primary-shadow: rgba(224, 64, 160, .3);--primary-gradient: linear-gradient(135deg, #e040a0 0%, #c43090 100%);--primary-alt: #d050b0;--primary-muted: #f0a0d0;--primary-soft: rgba(224, 64, 160, .12);--text-primary: #f8f4fa;--text-secondary: #b0a8b8;--text-tertiary: #706878;--text-muted: #504858;--text-on-primary: #ffffff;--border: #3a3044;--border-hover: #4a4054;--success: #20d080;--success-hover: #18b070;--success-light: #50e0a0;--success-subtle: rgba(32, 208, 128, .15);--success-glow: rgba(32, 208, 128, .35);--success-border: rgba(32, 208, 128, .25);--warning: #f0b020;--warning-strong: #f08020;--warning-subtle: rgba(240, 176, 32, .15);--warning-glow: rgba(240, 176, 32, .35);--danger: #f04050;--danger-dark: #d83040;--danger-darker: #b82030;--danger-light: #f86070;--danger-muted: #f8a0a8;--danger-subtle: rgba(240, 64, 80, .15);--danger-glow: rgba(240, 64, 80, .35);--icon-demo: #e040a0;--icon-demo-subtle: rgba(224, 64, 160, .15);--icon-recap: #40d0d0;--icon-recap-subtle: rgba(64, 208, 208, .15);--icon-recap-soft: rgba(64, 208, 208, .15);--icon-recap-border: rgba(64, 208, 208, .25);--icon-tips: #f0b020;--icon-tips-subtle: rgba(240, 176, 32, .15);--icon-tips-soft: rgba(240, 176, 32, .15);--icon-tips-border: rgba(240, 176, 32, .25);--accent: #e040a0;--shadow-card: 0 2px 8px rgba(0, 0, 0, .4), 0 0 20px rgba(224, 64, 160, .08);--shadow-card-hover: 0 4px 16px rgba(0, 0, 0, .5), 0 0 30px rgba(224, 64, 160, .12);--letterbox-color: #080610;--node-completed: #20d080;--movecard-overlay-bg: rgba(12, 8, 16, .8);--movecard-overlay-bg-hover: rgba(12, 8, 16, .9);--movecard-overlay-text: #f8f4fa;--movecard-thumbnail-gradient: linear-gradient(to top, rgba(12, 8, 16, .85) 0%, transparent 100%);--spotlight-bg: rgba(18, 14, 24, .98);--spotlight-border: #3a3044;--spotlight-shadow: 0 8px 32px rgba(0, 0, 0, .6), 0 2px 8px rgba(0, 0, 0, .4), 0 0 40px rgba(224, 64, 160, .08);--spotlight-btn-bg: #1c1624;--spotlight-text: #b0a8b8;--spotlight-text-muted: #706878;--spotlight-text-hover: #f8f4fa;--spotlight-hover-bg: #2a2234;--spotlight-active-bg: #171220;--timeline-bg: linear-gradient(180deg, #1c1624 0%, #171220 100%);--timeline-border: rgba(224, 64, 160, .2);--timeline-shadow: 0 -4px 16px rgba(0, 0, 0, .4), 0 4px 20px rgba(0, 0, 0, .5), 0 0 30px rgba(224, 64, 160, .06);--timeline-marker-bg: linear-gradient(180deg, rgba(224, 64, 160, .1) 0%, rgba(224, 64, 160, .05) 100%);--timeline-marker-shadow: inset 0 1px 3px rgba(0, 0, 0, .4);--timeline-marker-track-bg: rgba(255, 255, 255, .04);--timeline-marker-track-bg-hover: rgba(255, 255, 255, .06);--timeline-tracks-bg: linear-gradient(180deg, rgba(14, 10, 20, .95) 0%, rgba(10, 8, 16, .98) 100%);--timeline-track-bg: rgba(0, 0, 0, .3);--timeline-track-border: none;--timeline-track-shadow: inset 0 1px 3px rgba(0, 0, 0, .4), inset 0 0 0 1px rgba(0, 0, 0, .15);--timeline-track-gridlines-bg: none;--timeline-btn-bg: rgba(224, 64, 160, .15);--timeline-btn-border: rgba(224, 64, 160, .3);--timeline-btn-color: #f060b8;--timeline-btn-shadow: 0 2px 8px rgba(224, 64, 160, .2);--timeline-btn-hover-bg: rgba(224, 64, 160, .25);--timeline-btn-hover-color: #f0a0d0;--timeline-btn-hover-shadow: 0 4px 12px rgba(224, 64, 160, .3);--timeline-btn-active-bg: rgba(224, 64, 160, .1);--timeline-minimap-bar-bg: #120e18;--timeline-minimap-bar-border: none;--timeline-minimap-bar-shadow: none;--timeline-minimap-gridlines-bg: repeating-linear-gradient( 90deg, transparent, transparent calc(10% - .5px) , rgba(255, 255, 255, .06) calc(10% - .5px) , rgba(255, 255, 255, .06) calc(10% + .5px) , transparent calc(10% + .5px) );--timeline-minimap-viewport-bg: rgba(224, 64, 160, .12);--timeline-minimap-viewport-border: 2px solid rgba(224, 64, 160, .7);--timeline-minimap-viewport-shadow: 0 0 12px rgba(224, 64, 160, .4), inset 0 0 0 1px rgba(224, 64, 160, .15);--timeline-minimap-playhead: var(--text-on-primary);--video-btn-bg: var(--shadow-soft);--video-btn-border: var(--highlight-soft);--video-btn-color: var(--overlay-heavy);--video-btn-shadow: 0 2px 8px var(--shadow-medium);--video-btn-bg-hover: var(--shadow-heavy);--video-btn-border-hover: var(--overlay-subtle);--video-btn-color-hover: var(--text-primary);--video-btn-shadow-hover: 0 4px 12px var(--shadow-medium);--highlight-soft: rgba(255, 255, 255, .18);--highlight-subtle: rgba(255, 255, 255, .12);--highlight-faint: rgba(255, 255, 255, .08);--highlight-ghost: rgba(255, 255, 255, .05);--shadow-heavy: rgba(0, 0, 0, .65);--shadow-medium: rgba(0, 0, 0, .45);--shadow-soft: rgba(0, 0, 0, .3);--shadow-subtle: rgba(0, 0, 0, .18);--shadow-ghost: rgba(0, 0, 0, .1);--overlay-dark: rgba(8, 6, 12, .85);--overlay-heavy: rgba(8, 6, 12, .75);--overlay-medium: rgba(8, 6, 12, .55);--overlay-subtle: rgba(8, 6, 12, .35);--modal-overlay: rgba(8, 6, 12, .8);--blue: #60a0f0;--blue-subtle: rgba(96, 160, 240, .15);--pink: #f050a8;--pink-light: #f878c0;--pink-glow: rgba(240, 80, 168, .4);--pink-subtle: rgba(240, 80, 168, .15);--cyan: #30e0f0;--cyan-light: #70f0f8;--cyan-subtle: rgba(48, 224, 240, .15);--cyan-glow: rgba(48, 224, 240, .35);--orange: #f89040;--orange-subtle: rgba(248, 144, 64, .15);--orange-glow: rgba(248, 144, 64, .35);--yellow: #f8d020;--yellow-light: #f8e050;--yellow-subtle: rgba(248, 208, 32, .15);--yellow-glow: rgba(248, 208, 32, .35);--slate: #98a8b8;--accent-purple: #b060e0;--accent-purple-light: #c880f0;--accent-purple-dark: #9040c0;--accent-purple-subtle: rgba(176, 96, 224, .12);--accent-purple-glow: rgba(176, 96, 224, .4);--step-notes-toggle-color: var(--text-tertiary);--step-notes-toggle-hover-color: var(--text-secondary);--density-control-bg: color-mix(in srgb, var(--text-primary) 15%, transparent);--density-control-hover-bg: color-mix(in srgb, var(--text-primary) 6%, transparent);--density-control-color: var(--text-tertiary);--density-control-hover-color: var(--text-secondary);--density-control-active-bg: color-mix(in srgb, var(--text-primary) 12%, transparent);--density-control-active-hover-bg: color-mix(in srgb, var(--text-primary) 18%, transparent);--density-control-active-color: var(--text-primary);--interactive-hover-bg: rgba(255, 255, 255, .05);--settings-menu-bg: rgba(14, 10, 18, .98);--settings-menu-border: var(--highlight-subtle);--settings-menu-shadow: 0 8px 32px var(--overlay-dark), 0 0 40px rgba(224, 64, 160, .06);--settings-menu-text: #ffffff;--settings-menu-text-muted: var(--overlay-medium);--settings-menu-divider: var(--highlight-faint);--settings-menu-btn-bg: var(--highlight-faint);--settings-menu-btn-border: var(--highlight-subtle);--settings-menu-btn-hover-bg: var(--highlight-soft);--settings-menu-option-hover-bg: var(--highlight-ghost);--path-line-width: 3px;--path-node-border-width: 3px}[data-theme=party] .home-page{background:radial-gradient(ellipse 80% 50% at 50% 0%,rgba(160,50,180,.12) 0%,transparent 50%),radial-gradient(ellipse 60% 40% at 80% 80%,rgba(100,40,180,.08) 0%,transparent 50%),radial-gradient(ellipse 50% 50% at 10% 60%,rgba(200,60,140,.06) 0%,transparent 50%),var(--bg-primary)}[data-theme=party] .upload-area:not(.has-video):not(.processing):not(.error){border:2px solid var(--primary);position:relative;box-shadow:0 0 15px #e040a040}[data-theme=party] .upload-area:not(.has-video):not(.processing):not(.error):before{content:"";position:absolute;inset:-2px;border-radius:inherit;background:linear-gradient(90deg,var(--primary) 0%,#40d0d0 25%,var(--primary) 50%,#b060e0 75%,var(--primary) 100%);background-size:300% 100%;animation:neonMarquee 4s linear infinite;z-index:-1;opacity:.3;filter:blur(10px)}[data-theme=party] .upload-area:not(.has-video):not(.processing):not(.error):hover{border-color:var(--primary-light);background:radial-gradient(ellipse at 30% 20%,rgba(224,64,160,.15) 0%,transparent 50%),radial-gradient(ellipse at 70% 80%,rgba(176,96,224,.12) 0%,transparent 50%),radial-gradient(ellipse at 80% 30%,rgba(64,208,208,.08) 0%,transparent 40%),var(--primary-tint);box-shadow:0 8px 32px var(--primary-subtle),0 0 30px #e040a04d,inset 0 0 60px #e040a014,inset 0 0 100px #b060e00d}[data-theme=party] .upload-area:not(.has-video):not(.processing):not(.error):hover:before{opacity:.5;animation:neonMarquee 2s linear infinite}@keyframes neonMarquee{0%{background-position:0% 0%}to{background-position:300% 0%}}[data-theme=party] .upload-area:hover .upload-icon{color:#fff;filter:drop-shadow(0 0 8px var(--primary)) drop-shadow(0 0 20px var(--primary))}[data-theme=party] .upload-area:hover .upload-text{color:#fff;text-shadow:0 0 10px var(--primary),0 0 20px rgba(224,64,160,.5)}[data-theme=party] .upload-area:hover .upload-hint{color:#ffffffd9;text-shadow:0 0 8px rgba(224,64,160,.4)}[data-theme=party] .cuy-image{filter:drop-shadow(0 0 20px rgba(224,64,160,.5)) drop-shadow(0 0 40px rgba(176,96,224,.3));animation:partyGlow 3s ease-in-out infinite}[data-theme=party] .logo:hover .cuy-image{filter:drop-shadow(0 0 30px rgba(224,64,160,.6)) drop-shadow(0 0 50px rgba(176,96,224,.4)) drop-shadow(0 0 70px rgba(64,208,208,.2))}@keyframes partyGlow{0%,to{filter:drop-shadow(0 0 20px rgba(224,64,160,.5)) drop-shadow(0 0 40px rgba(176,96,224,.3))}33%{filter:drop-shadow(0 0 25px rgba(176,96,224,.5)) drop-shadow(0 0 45px rgba(64,208,208,.3))}66%{filter:drop-shadow(0 0 22px rgba(64,208,208,.4)) drop-shadow(0 0 42px rgba(224,64,160,.35))}}[data-theme=party] .logo-bg-animation{color:var(--primary);opacity:.5;filter:drop-shadow(0 0 8px var(--primary-glow))}[data-theme=party] .feature-card:hover{box-shadow:var(--shadow-card-hover),0 0 30px #e040a01a}[data-theme=party] .step-number{box-shadow:0 0 15px var(--primary-glow)}.party-overlay{position:fixed;inset:0;pointer-events:none;z-index:1;overflow:hidden}[data-theme=party] .home-page.fx-bg-animation{background:radial-gradient(ellipse 80% 50% at 50% 0%,rgba(160,50,180,.18) 0%,transparent 50%),radial-gradient(ellipse 60% 40% at 80% 80%,rgba(100,40,180,.12) 0%,transparent 50%),radial-gradient(ellipse 50% 50% at 10% 60%,rgba(200,60,140,.08) 0%,transparent 50%),var(--bg-primary);animation:partyBgShift 8s ease-in-out infinite}[data-theme=party] .home-page.fx-bg-animation:before{background:radial-gradient(ellipse at 30% 20%,rgba(224,64,160,.2) 0%,transparent 50%),radial-gradient(ellipse at 70% 60%,rgba(176,96,224,.15) 0%,transparent 50%),radial-gradient(ellipse at 50% 90%,rgba(48,224,240,.1) 0%,transparent 50%);opacity:1;animation:partyAmbientDrift 12s ease-in-out infinite}[data-theme=party] .home-page.fx-bg-animation:after{background:radial-gradient(ellipse at 80% 30%,rgba(224,64,160,.25) 0%,transparent 40%),radial-gradient(ellipse at 20% 70%,rgba(48,224,240,.15) 0%,transparent 40%);opacity:.6;animation:partyAmbientDrift 10s ease-in-out infinite reverse}@keyframes partyBgShift{0%,to{filter:hue-rotate(0deg) brightness(1)}25%{filter:hue-rotate(10deg) brightness(1.05)}50%{filter:hue-rotate(-5deg) brightness(1.02)}75%{filter:hue-rotate(15deg) brightness(1.08)}}@keyframes partyAmbientDrift{0%,to{transform:translate(-50%) scale(1) rotate(0)}33%{transform:translate(-45%) scale(1.1) rotate(2deg)}66%{transform:translate(-55%) scale(.95) rotate(-2deg)}}.disco-reflections{position:absolute;inset:0}.disco-dot{position:absolute;width:6px;height:6px;border-radius:50%;background:#fff;opacity:0;animation:discoDotFlash 2s ease-in-out infinite;filter:blur(1px)}.disco-dot-1{top:8%;left:12%;animation-delay:0s;animation-duration:1.8s}.disco-dot-2{top:15%;left:78%;animation-delay:.3s;animation-duration:2.2s}.disco-dot-3{top:22%;left:35%;animation-delay:.7s;animation-duration:1.6s}.disco-dot-4{top:5%;left:55%;animation-delay:1.1s;animation-duration:2.4s}.disco-dot-5{top:30%;left:90%;animation-delay:.5s;animation-duration:1.9s}.disco-dot-6{top:40%;left:5%;animation-delay:1.4s;animation-duration:2.1s}.disco-dot-7{top:18%;left:42%;animation-delay:.2s;animation-duration:1.7s}.disco-dot-8{top:50%;left:72%;animation-delay:.9s;animation-duration:2.3s}.disco-dot-9{top:35%;left:20%;animation-delay:1.6s;animation-duration:1.5s}.disco-dot-10{top:12%;left:65%;animation-delay:.4s;animation-duration:2s}.disco-dot-11{top:45%;left:48%;animation-delay:1.2s;animation-duration:1.8s}.disco-dot-12{top:25%;left:85%;animation-delay:.6s;animation-duration:2.5s}.disco-dot-13{top:55%;left:30%;animation-delay:1.8s;animation-duration:1.6s}.disco-dot-14{top:10%;left:8%;animation-delay:.1s;animation-duration:2.2s}.disco-dot-15{top:38%;left:58%;animation-delay:1s;animation-duration:1.9s}.disco-dot-16{top:48%;left:15%;animation-delay:.8s;animation-duration:2.1s}.disco-dot-17{top:20%;left:95%;animation-delay:1.3s;animation-duration:1.7s}.disco-dot-18{top:32%;left:40%;animation-delay:.5s;animation-duration:2.3s}.disco-dot-19{top:42%;left:80%;animation-delay:1.5s;animation-duration:1.8s}.disco-dot-20{top:8%;left:50%;animation-delay:.7s;animation-duration:2s}@keyframes discoDotFlash{0%,to{opacity:0;transform:scale(.5)}15%{opacity:.8;transform:scale(1.5);filter:blur(0px)}30%{opacity:0;transform:scale(.8)}50%{opacity:.6;transform:scale(1.2)}65%{opacity:0;transform:scale(.5)}}.disco-dot-2,.disco-dot-7,.disco-dot-14{background:#e040a0;filter:blur(2px)}.disco-dot-4,.disco-dot-11,.disco-dot-18{background:#30e0f0;filter:blur(2px)}.disco-dot-6,.disco-dot-13,.disco-dot-19{background:#b060e0;filter:blur(2px)}.laser-container{position:absolute;inset:0;overflow:hidden}.laser{position:absolute;top:0;width:2px;height:120%;transform-origin:top center;opacity:.4;filter:blur(1px);mix-blend-mode:screen}.laser-1{left:30%;background:linear-gradient(180deg,#e040a0 0%,transparent 80%);animation:laserSweep1 6s ease-in-out infinite}.laser-2{left:50%;background:linear-gradient(180deg,#30e0f0 0%,transparent 80%);animation:laserSweep2 8s ease-in-out infinite}.laser-3{left:70%;background:linear-gradient(180deg,#b060e0 0%,transparent 80%);animation:laserSweep3 7s ease-in-out infinite}.laser-4{left:50%;background:linear-gradient(180deg,#f0b020 0%,transparent 70%);animation:laserSweep4 5s ease-in-out infinite;width:1px;opacity:.3}@keyframes laserSweep1{0%,to{transform:rotate(-25deg);opacity:.3}25%{transform:rotate(15deg);opacity:.6}50%{transform:rotate(-10deg);opacity:.2}75%{transform:rotate(25deg);opacity:.5}}@keyframes laserSweep2{0%,to{transform:rotate(20deg);opacity:.2}33%{transform:rotate(-20deg);opacity:.5}66%{transform:rotate(10deg);opacity:.3}}@keyframes laserSweep3{0%,to{transform:rotate(-15deg);opacity:.4}50%{transform:rotate(20deg);opacity:.2}}@keyframes laserSweep4{0%,to{transform:rotate(30deg);opacity:.2}50%{transform:rotate(-30deg);opacity:.4}}.confetti-container{position:absolute;inset:0;overflow:hidden}.confetti{position:absolute;top:-20px;width:8px;height:8px;opacity:0;animation:confettiFall linear infinite}.confetti-1{background:#e040a0;border-radius:50%;width:6px;height:6px}.confetti-2{background:#30e0f0;border-radius:1px;width:10px;height:5px;transform:rotate(45deg)}.confetti-3{background:#f0b020;border-radius:50%;width:5px;height:5px}.confetti-4{background:#b060e0;border-radius:1px;width:8px;height:4px}.confetti-5{background:#20d080;border-radius:50%;width:7px;height:7px}@keyframes confettiFall{0%{transform:translateY(-20px) rotate(0) scale(0);opacity:0}10%{opacity:.8;transform:translateY(0) rotate(45deg) scale(1)}90%{opacity:.6}to{transform:translateY(100vh) rotate(720deg) scale(.5);opacity:0}}.emoji-container{position:absolute;inset:0;overflow:hidden}.floating-emoji{position:absolute;bottom:-40px;opacity:0;animation:emojiFloat ease-in-out infinite;filter:drop-shadow(0 0 8px rgba(224,64,160,.3));-webkit-user-select:none;user-select:none}@keyframes emojiFloat{0%{transform:translateY(0) rotate(0) scale(.5);opacity:0}10%{opacity:.7;transform:translateY(-10vh) rotate(10deg) scale(1)}50%{opacity:.9;transform:translateY(-50vh) rotate(-15deg) scale(1.1)}90%{opacity:.4}to{transform:translateY(-110vh) rotate(25deg) scale(.8);opacity:0}}.dance-floor{position:absolute;bottom:0;left:0;right:0;height:80px;display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(2,1fr);gap:2px;opacity:.4;mask-image:linear-gradient(to top,rgba(0,0,0,.6) 0%,transparent 100%);-webkit-mask-image:linear-gradient(to top,rgba(0,0,0,.6) 0%,transparent 100%)}.floor-tile{border-radius:2px;animation:floorPulse 1.6s ease-in-out infinite}.floor-tile-1{background:#e040a066}.floor-tile-2{background:#30e0f066}.floor-tile-3{background:#b060e066}.floor-tile-4{background:#f0b02066}@keyframes floorPulse{0%,to{opacity:.3;transform:scale(.98)}50%{opacity:1;transform:scale(1)}}.visualizer{position:absolute;bottom:0;left:0;right:0;height:60px;display:flex;align-items:flex-end;justify-content:center;gap:2px;opacity:.5;mask-image:linear-gradient(to top,rgba(0,0,0,.8) 0%,transparent 100%);-webkit-mask-image:linear-gradient(to top,rgba(0,0,0,.8) 0%,transparent 100%)}.viz-bar{width:4px;min-height:3px;border-radius:2px 2px 0 0;background:linear-gradient(to top,#e040a0,#30e0f0);animation:vizBounce ease-in-out infinite alternate}@keyframes vizBounce{0%{height:4px;opacity:.4}to{height:50px;opacity:.9}}[data-theme=party] .fx-neon-text .tagline{background:linear-gradient(90deg,#e040a0,#f060b8,#30e0f0,#b060e0,#f0b020,#e040a0,#30e0f0 90%,#e040a0);background-size:300% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:neonTextScroll 4s linear infinite;filter:drop-shadow(0 0 20px rgba(224,64,160,.5)) drop-shadow(0 0 40px rgba(48,224,240,.3))}@keyframes neonTextScroll{0%{background-position:0% 50%}to{background-position:300% 50%}}[data-theme=party] .fx-neon-text .description{color:#fffc;text-shadow:0 0 10px rgba(224,64,160,.2)}[data-theme=party] .fx-title-glow .title-image{filter:drop-shadow(0 0 15px rgba(224,64,160,.6)) drop-shadow(0 0 30px rgba(176,96,224,.4)) drop-shadow(0 0 60px rgba(48,224,240,.2));animation:titleNeonPulse 3s ease-in-out infinite}@keyframes titleNeonPulse{0%,to{filter:drop-shadow(0 0 15px rgba(224,64,160,.6)) drop-shadow(0 0 30px rgba(176,96,224,.4)) drop-shadow(0 0 60px rgba(48,224,240,.2))}33%{filter:drop-shadow(0 0 20px rgba(48,224,240,.5)) drop-shadow(0 0 40px rgba(224,64,160,.4)) drop-shadow(0 0 70px rgba(176,96,224,.3))}66%{filter:drop-shadow(0 0 18px rgba(176,96,224,.5)) drop-shadow(0 0 35px rgba(48,224,240,.4)) drop-shadow(0 0 65px rgba(224,64,160,.3))}}[data-theme=party] .fx-play-glow .play-btn-circle{background:linear-gradient(135deg,#e040a0,#b060e0,#30e0f0);background-size:200% 200%;animation:partyBtnGradient 3s ease-in-out infinite,partyBtnPulse 1s ease-in-out infinite;box-shadow:0 0 20px #e040a099,0 0 40px #b060e04d,0 0 60px #30e0f033}@keyframes partyBtnGradient{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes partyBtnPulse{0%,to{box-shadow:0 0 20px #e040a099,0 0 40px #b060e04d,0 0 60px #30e0f033}50%{box-shadow:0 0 30px #e040a0cc,0 0 60px #b060e080,0 0 90px #30e0f04d}}[data-theme=party] .fx-play-glow .play-btn-triangle{animation:partyBtnSpin 4s linear infinite;filter:drop-shadow(0 0 6px rgba(255,255,255,.9))}@keyframes partyBtnSpin{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}[data-theme=party] .fx-cuy-dance .cuy-image{animation:cuyDance .6s ease-in-out infinite,partyGlow 3s ease-in-out infinite}@keyframes cuyDance{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-8px) rotate(-3deg)}75%{transform:translateY(-8px) rotate(3deg)}}[data-theme=party] .fx-bg-animation .logo-bg-animation{color:#e040a0;opacity:.8;filter:drop-shadow(0 0 15px rgba(224,64,160,.5));animation:logoBgRainbow 4s linear infinite}@keyframes logoBgRainbow{0%{color:#e040a0;filter:drop-shadow(0 0 15px rgba(224,64,160,.5))}25%{color:#30e0f0;filter:drop-shadow(0 0 15px rgba(48,224,240,.5))}50%{color:#b060e0;filter:drop-shadow(0 0 15px rgba(176,96,224,.5))}75%{color:#f0b020;filter:drop-shadow(0 0 15px rgba(240,176,32,.5))}to{color:#e040a0;filter:drop-shadow(0 0 15px rgba(224,64,160,.5))}}[data-theme=party] .fx-upload-neon .upload-area:not(.has-video):not(.processing):not(.error){border-color:transparent;background:radial-gradient(ellipse at 50% 50%,rgba(224,64,160,.08) 0%,transparent 70%),var(--surface);overflow:visible}[data-theme=party] .fx-upload-neon .upload-area:not(.has-video):not(.processing):not(.error):before{opacity:.6;animation:neonMarquee 2s linear infinite;filter:blur(15px)}[data-theme=party] .fx-upload-neon .upload-area:not(.has-video):not(.processing):not(.error):after{content:"";position:absolute;inset:-1px;border-radius:inherit;background:linear-gradient(90deg,#e040a0,#30e0f0,#b060e0,#f0b020,#e040a0);background-size:300% 100%;animation:neonMarquee 3s linear infinite;z-index:-1;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;padding:2px;border-radius:1.25rem}[data-theme=party] .fx-glass-card .how-it-works-surface{background:#1c162499;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-color:#e040a033;box-shadow:0 4px 30px #0000004d,0 0 40px #e040a014,inset 0 1px #ffffff0d}[data-theme=party] .fx-glass-card .how-it-works-surface:before{background:linear-gradient(160deg,rgba(224,64,160,.12) 0%,transparent 40%),radial-gradient(ellipse at 80% 80%,rgba(48,224,240,.08) 0%,transparent 50%);opacity:1}[data-theme=party] .fx-step-glow .step-number{animation:stepNumberGlow 2s ease-in-out infinite}@keyframes stepNumberGlow{0%,to{box-shadow:0 0 15px #e040a080,0 0 30px #e040a033}33%{box-shadow:0 0 15px #30e0f080,0 0 30px #30e0f033}66%{box-shadow:0 0 15px #b060e080,0 0 30px #b060e033}}[data-theme=party] .party-active .see-how-it-works-link{border-color:#e040a066;box-shadow:0 0 15px #e040a033;transition:all .3s ease}[data-theme=party] .party-active .see-how-it-works-link:hover{border-color:#e040a0;box-shadow:0 0 20px #e040a066,0 0 40px #e040a033,inset 0 0 20px #e040a01a;text-shadow:0 0 10px rgba(224,64,160,.5)}[data-theme=party] .party-active .party-snackbar{background:linear-gradient(135deg,#e040a0e6,#b060e0e6);border:1px solid rgba(255,255,255,.2);color:#fff;font-weight:700;letter-spacing:.05em;text-transform:none;box-shadow:0 4px 24px #e040a066,0 0 40px #b060e033;text-shadow:0 1px 2px rgba(0,0,0,.2)}[data-theme=party] .party-active .home-footer{border-top-color:#e040a033}[data-theme=party] .party-active .footer-name{background:linear-gradient(90deg,#e040a0,#30e0f0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=party] .party-active::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#e040a0,#b060e0)}[data-theme=party] .party-active::-webkit-scrollbar-track{background:#120e18}[data-theme=party] .party-active .home-user-menu-wrapper{filter:drop-shadow(0 0 10px rgba(224,64,160,.15))}[data-theme=party] .party-active:not(.fx-cuy-dance) .logo{animation:none}[data-theme=party] .fx-cuy-dance .logo{animation:partyFloat 2s ease-in-out infinite}@keyframes partyFloat{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-15px) scale(1.02)}}@media(max-width:600px){input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=url],input[type=search],textarea,select{font-size:16px!important}}.text-xs{font-size:var(--text-xs)!important}.text-sm{font-size:var(--text-sm)!important}.text-base{font-size:var(--text-base)!important}.text-lg{font-size:var(--text-lg)!important}.text-xl{font-size:var(--text-xl)!important}.text-2xl{font-size:var(--text-2xl)!important}.text-3xl{font-size:var(--text-3xl)!important}.text-4xl{font-size:var(--text-4xl)!important}.text-5xl{font-size:var(--text-5xl)!important}.leading-none{line-height:var(--leading-none)!important}.leading-tight{line-height:var(--leading-tight)!important}.leading-snug{line-height:var(--leading-snug)!important}.leading-normal{line-height:var(--leading-normal)!important}.leading-relaxed{line-height:var(--leading-relaxed)!important}.touch-target{min-height:var(--touch-target-min);min-width:var(--touch-target-min)}.touch-target-comfortable{min-height:var(--touch-target-comfortable);min-width:var(--touch-target-comfortable)}@media(max-width:600px){.mobile-text-bump{font-size:var(--text-sm)!important}.mobile-text-min{font-size:var(--text-xs)!important}}@media(max-width:600px){[class*=-badge],[class*=-tag],[class*=-chip]{font-size:max(1em,var(--text-xs))}[class*=-subtitle],[class*=-description],[class*=-hint],[class*=-caption],[class*=-meta]{font-size:max(1em,var(--text-sm))}[class*=-time],[class*=-date],[class*=-timestamp]{font-size:max(1em,var(--text-xs))}}.safe-area-top{padding-top:var(--safe-area-top)}.safe-area-bottom{padding-bottom:var(--safe-area-bottom)}.safe-area-left{padding-left:var(--safe-area-left)}.safe-area-right{padding-right:var(--safe-area-right)}.safe-area-all{padding-top:var(--safe-area-top);padding-bottom:var(--safe-area-bottom);padding-left:var(--safe-area-left);padding-right:var(--safe-area-right)}.mobile-nav-title{flex:1;text-align:center;font-size:var(--text-xs);font-weight:600;color:var(--text-secondary);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 8px}.user-menu{position:relative}.user-menu-trigger{width:48px;height:48px;min-width:48px;min-height:48px;border-radius:50%;border:none;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal);box-shadow:0 2px 8px var(--primary-glow)}.user-menu-trigger:hover{transform:scale(1.05);box-shadow:0 4px 16px var(--primary-border)}.user-menu-trigger.open{box-shadow:0 4px 16px var(--primary-border)}.user-menu-avatar{color:#fff;font-size:18px;font-weight:600;line-height:1}.user-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-card-hover);overflow:hidden;z-index:1000;animation:userMenuFadeIn .15s ease-out}@keyframes userMenuFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.user-menu-header{display:flex;align-items:center;gap:12px;padding:12px 16px}.user-menu-avatar-large{display:none}.user-menu-header-text{display:flex;flex-direction:column;gap:2px}.user-menu-name{font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.user-menu-email{display:none;font-size:var(--text-xs);color:var(--text-tertiary)}.user-menu-divider{height:1px;background:var(--border)}.user-menu-create-section{padding:0}.user-menu-create-label{display:block;padding:8px 16px 4px;font-size:var(--text-xs);font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em}.user-menu-create-grid{display:flex;gap:6px;padding:4px 12px 8px}.user-menu-create-tile{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 4px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-family:inherit;font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.user-menu-create-tile:hover{background:var(--primary-subtle);color:var(--text-primary)}.user-menu-item{width:100%;padding:10px 16px;background:transparent;border:none;display:flex;align-items:center;gap:10px;color:var(--text-secondary, #a0a0b8);font-size:var(--text-sm);font-weight:500;text-align:left;cursor:pointer;transition:all var(--transition-fast)}.user-menu-item:hover{background:var(--primary-subtle);color:var(--text-primary)}.user-menu-item.active{background:var(--primary-subtle);color:var(--primary-light);cursor:default}.user-menu-item.active:hover{background:var(--primary-subtle);color:var(--primary-light)}.user-menu-item svg{flex-shrink:0;opacity:.7}.user-menu-item:hover svg{opacity:1}.user-menu-item.active svg{opacity:1;color:var(--primary-light)}.user-menu-item-danger{color:var(--danger)}.user-menu-item-danger svg{stroke:var(--danger);opacity:.85}.user-menu-item-danger:hover{background:var(--danger-subtle);color:var(--danger-dark)}.user-menu-item-danger:hover svg{stroke:var(--danger-dark);opacity:1}.user-menu-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;background:var(--primary-subtle);color:var(--primary-light);border-radius:10px;font-size:var(--text-xs);font-weight:600;display:flex;align-items:center;justify-content:center}.user-menu-sign-in{padding:10px 18px;border-radius:999px;border:1px solid var(--primary-glow);background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;font-size:var(--text-sm);font-weight:600;letter-spacing:.01em;cursor:pointer;box-shadow:0 4px 14px var(--primary-glow);transition:all var(--transition-normal)}.user-menu-sign-in:hover{transform:translateY(-2px) scale(1.03);background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary) 100%);border-color:var(--primary-border);box-shadow:0 8px 28px var(--primary-glow),0 0 0 3px var(--primary-subtle)}.user-menu-sign-in:active{transform:translateY(0) scale(1);box-shadow:0 2px 8px var(--primary-glow)}.user-menu-sign-in:focus-visible{outline:2px solid var(--primary-border);outline-offset:2px}@media(max-width:600px){.user-menu-sign-in{padding:6px 14px;font-size:13px;min-height:32px;height:32px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px var(--primary-glow)}}.user-menu-overlay{position:fixed;inset:0;background:var(--shadow-heavy);z-index:999;animation:userMenuOverlayFadeIn .2s ease}@keyframes userMenuOverlayFadeIn{0%{opacity:0}to{opacity:1}}.user-menu-dropdown.mobile{position:fixed;inset:auto 0 0;min-width:100%;max-width:100%;border-radius:20px 20px 0 0;padding:8px 0 calc(var(--safe-area-bottom) + 16px) 0;animation:userMenuSlideUp .25s cubic-bezier(.4,0,.2,1)}@keyframes userMenuSlideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.user-menu-drag-handle{width:36px;height:4px;background:var(--highlight-soft);border-radius:2px;margin:8px auto 12px}.user-menu-dropdown.mobile .user-menu-header{padding:16px 20px}.user-menu-dropdown.mobile .user-menu-avatar-large{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;font-size:20px;font-weight:600;flex-shrink:0}.user-menu-dropdown.mobile .user-menu-name{font-size:16px}.user-menu-dropdown.mobile .user-menu-email{display:block}.user-menu-dropdown.mobile .user-menu-item{padding:16px 20px;min-height:56px;font-size:16px;gap:14px}.user-menu-dropdown.mobile .user-menu-item svg{opacity:.8}.user-menu-dropdown.mobile .user-menu-badge{min-width:24px;height:24px;font-size:var(--text-sm)}.user-menu-dropdown.mobile .user-menu-divider{margin:8px 0}.user-menu-dropdown.mobile .user-menu-create-section{padding:4px 0}.user-menu-dropdown.mobile .user-menu-create-label{padding:8px 20px 6px;font-size:11px}.user-menu-dropdown.mobile .user-menu-create-grid{gap:8px;padding:6px 16px 10px}.user-menu-dropdown.mobile .user-menu-create-tile{padding:14px 4px;gap:6px;font-size:14px;border-radius:12px}@keyframes saveWorkFadeIn{0%{opacity:0}to{opacity:1}}@keyframes saveWorkSlideUp{0%{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes saveWorkSlideUpMobile{0%{transform:translateY(100%)}to{transform:translateY(0)}}.save-work-overlay{position:fixed;inset:0;background:var(--overlay-dark);display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:saveWorkFadeIn .2s ease-out;padding:1rem}.save-work-modal{width:min(420px,100%);max-height:calc(100vh - 2rem);overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:1.75rem;box-shadow:var(--shadow-xl-light),0 0 0 1px var(--shadow-ghost);animation:saveWorkSlideUp .3s cubic-bezier(.16,1,.3,1)}.save-work-header{text-align:center;margin-bottom:1.5rem}.save-work-icon{width:48px;height:48px;margin:0 auto 1rem;display:flex;align-items:center;justify-content:center;background:var(--primary-subtle);border-radius:12px;color:var(--primary)}.save-work-icon svg{width:24px;height:24px}.save-work-header h2{margin:0 0 .5rem;font-size:1.5rem;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.save-work-header p{margin:0;color:var(--text-secondary);font-size:.95rem;line-height:1.5}.save-work-form{display:grid;gap:.875rem}.save-work-field{display:flex;flex-direction:column;gap:.35rem;color:var(--text-secondary);font-size:.8rem;font-weight:500}.save-work-field input{padding:.7rem .85rem;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);font-size:.9rem;transition:border-color var(--transition-normal),box-shadow var(--transition-normal),background var(--transition-normal)}.save-work-field input::placeholder{color:var(--text-muted)}.save-work-field input:hover:not(:disabled){border-color:var(--border-hover)}.save-work-field input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-subtle);background:var(--surface)}.save-work-field input:disabled{opacity:.6;cursor:not-allowed}.save-work-field input:-webkit-autofill,.save-work-field input:-webkit-autofill:hover,.save-work-field input:-webkit-autofill:focus,.save-work-field input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px var(--surface) inset!important;-webkit-text-fill-color:var(--text-primary)!important;caret-color:var(--text-primary);transition:background-color 5000s ease-in-out 0s}.save-work-error{background:var(--danger-subtle);color:var(--danger);border:1px solid var(--danger-glow);padding:.75rem 1rem;border-radius:10px;font-size:.875rem;font-weight:500;animation:saveWorkFadeIn .25s ease-out}.save-work-submit{margin-top:.25rem;padding:.8rem 1.125rem;border-radius:10px;border:none;background:linear-gradient(135deg,var(--primary) 0%,var(--pink) 100%);color:#fff;font-weight:700;font-size:.9rem;cursor:pointer;box-shadow:0 4px 12px var(--primary-glow),0 1px 2px var(--shadow-subtle);transition:transform var(--transition-normal),box-shadow var(--transition-normal),opacity var(--transition-normal)}.save-work-submit:disabled{opacity:.6;cursor:default;transform:none}.save-work-submit:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--primary-glow),0 2px 4px var(--shadow-subtle)}.save-work-submit:not(:disabled):active{transform:translateY(0) scale(.98);box-shadow:0 2px 8px var(--primary-glow),0 1px 2px var(--shadow-subtle)}.save-work-divider{display:flex;align-items:center;gap:1rem;margin:1rem 0}.save-work-divider:before,.save-work-divider:after{content:"";flex:1;height:1px;background:var(--border)}.save-work-divider span{color:var(--text-muted);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.save-work-google-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.7rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.save-work-google-btn:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-hover);color:var(--text-primary);box-shadow:var(--shadow-md-light)}.save-work-google-btn:active:not(:disabled){transform:scale(.98)}.save-work-google-btn:disabled{opacity:.6;cursor:default}.save-work-google-logo{width:20px;height:20px;flex-shrink:0}.save-work-google-spinner{width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spinner-rotate .9s linear infinite;flex-shrink:0}.save-work-footer{margin-top:1.25rem;text-align:center;color:var(--text-tertiary);font-size:.85rem}.save-work-signin-link{color:var(--primary);text-decoration:none;font-weight:500;transition:color var(--transition-normal)}.save-work-signin-link:hover{color:var(--primary-dark)}@media(max-width:600px){.save-work-overlay{align-items:flex-end;padding:0}.save-work-modal{width:100%;max-width:100%;max-height:90vh;border-radius:20px 20px 0 0;padding:1.5rem 1.25rem calc(1.5rem + var(--safe-area-bottom));animation:saveWorkSlideUpMobile .3s cubic-bezier(.16,1,.3,1)}.save-work-header h2{font-size:1.25rem}.save-work-header p{font-size:.875rem}.save-work-icon{width:44px;height:44px}.save-work-icon svg{width:22px;height:22px}}.spinner{border-radius:50%;border-style:solid;border-width:2px;border-color:var(--border);border-top-color:var(--primary);animation:spinner-rotate .9s linear infinite;flex-shrink:0}@keyframes spinner-rotate{to{transform:rotate(360deg)}}.spinner--xs{width:12px;height:12px;border-width:1.5px}.spinner--sm{width:16px;height:16px;border-width:2px}.spinner--md{width:18px;height:18px;border-width:2px}.spinner--lg{width:24px;height:24px;border-width:2.5px}.spinner--xl{width:32px;height:32px;border-width:3px}.spinner--2xl{width:48px;height:48px;border-width:4px}.spinner--button{border-color:var(--highlight-faint);border-top-color:currentColor}.spinner--overlay{border-color:var(--highlight-faint);border-top-color:var(--overlay-heavy)}.spinner--primary-btn{border-color:#ffffff4d;border-top-color:#fff}.topbar-main>:has(.page-loading){flex:1;display:flex;flex-direction:column}.page-loading{display:flex;align-items:center;justify-content:center;flex:1;min-height:calc(100dvh - 140px)}.btn__spinner{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:16px;height:16px}.btn__spinner:after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--highlight-faint);border-top-color:currentColor;animation:spinner-rotate .8s linear infinite}.yt-input{display:flex;flex-direction:column;gap:10px;width:100%;min-width:0;overflow:hidden}.yt-input-field{width:100%;padding:14px 16px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);font-size:var(--text-base);outline:none;transition:var(--transition-fast, .15s ease)}.yt-input-field::placeholder{color:var(--text-muted)}.yt-input-field:hover:not(:disabled){border-color:var(--border-hover)}.yt-input-field:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-subtle)}.yt-input-field.error{border-color:var(--danger)}.yt-input-field.valid{border-color:var(--success)}.yt-input-field:disabled{opacity:.6;cursor:not-allowed}.yt-input-validating{color:var(--text-tertiary);font-size:var(--text-sm);display:flex;align-items:center;gap:8px;padding-left:2px}.yt-input-error{color:var(--danger);font-size:var(--text-sm)}.yt-input-preview{display:flex;gap:14px;padding:12px;border-radius:12px;background:var(--surface-hover, var(--surface));border:1px solid var(--success-subtle, rgba(34, 197, 94, .2));overflow:hidden;min-width:0}.yt-input-thumbnail{width:120px;height:68px;object-fit:cover;border-radius:8px;flex-shrink:0}.yt-input-info{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1;justify-content:center}.yt-input-title{font-weight:600;font-size:var(--text-sm);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.yt-input-meta{display:flex;gap:10px;font-size:var(--text-xs);color:var(--text-tertiary)}.yt-input-channel{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.yt-input-duration{flex-shrink:0}@media(max-width:600px){.yt-input-field{padding:12px 14px;font-size:var(--text-sm)}.yt-input-preview{flex-direction:column;gap:10px;padding:10px}.yt-input-thumbnail{width:100%;height:auto;max-height:160px;aspect-ratio:16 / 9;object-fit:cover}.yt-input-title{font-size:var(--text-sm)}.yt-input-meta{font-size:var(--text-xs)}}.party-panel-toggle{position:fixed;bottom:80px;right:16px;z-index:9999;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.15);background:#120e18d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #0006,0 0 20px #e040a026;transition:transform .2s,box-shadow .2s}.party-panel-toggle:hover{transform:scale(1.1);box-shadow:0 4px 24px #00000080,0 0 30px #e040a040}.party-panel-toggle-icon{font-size:20px}.party-panel{position:fixed;bottom:16px;right:16px;z-index:9999;width:280px;max-height:80vh;background:#120e18eb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);border-radius:16px;box-shadow:0 8px 40px #00000080,0 0 30px #e040a01a;display:flex;flex-direction:column;overflow:hidden;pointer-events:auto}.party-panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.08)}.party-panel-title{font-size:13px;font-weight:700;color:#f0a0d0;text-transform:uppercase;letter-spacing:.08em}.party-panel-close{width:24px;height:24px;border:none;background:#ffffff0f;color:#ffffff80;border-radius:6px;cursor:pointer;font-size:12px;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.party-panel-close:hover{background:#ffffff1f;color:#fff}.party-panel-actions{display:flex;gap:6px;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.06)}.party-panel-btn{flex:1;padding:6px 8px;font-size:11px;font-weight:600;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:#ffffffb3;border-radius:8px;cursor:pointer;transition:all .15s}.party-panel-btn:hover{background:#ffffff1a;color:#fff}.party-panel-btn--copy{background:#e040a026;border-color:#e040a04d;color:#f0a0d0}.party-panel-btn--copy:hover{background:#e040a040;color:#f8c0e0}.party-panel-btn--copy.copied{background:#20d08033;border-color:#20d08066;color:#50e0a0}.party-panel-effects{flex:1;overflow-y:auto;padding:6px 0}.party-panel-effects::-webkit-scrollbar{width:4px}.party-panel-effects::-webkit-scrollbar-thumb{background:#e040a04d;border-radius:2px}.party-panel-effect{padding:0 14px}.party-panel-effect.disabled{opacity:.5}.party-panel-effect-toggle{width:100%;display:flex;align-items:center;gap:8px;padding:8px 0;border:none;background:none;cursor:pointer;color:#ffffffd9;font-size:12px;text-align:left;transition:color .15s}.party-panel-effect-toggle:hover{color:#fff}.party-panel-effect-icon{font-size:14px;width:20px;text-align:center;flex-shrink:0}.party-panel-effect-label{flex:1;font-weight:500}.party-panel-effect-status{font-size:10px;font-weight:700;letter-spacing:.05em;padding:2px 6px;border-radius:4px}.party-panel-effect-status.on{background:#e040a033;color:#f060b8}.party-panel-effect-status.off{background:#ffffff0f;color:#ffffff4d}.party-panel-slider-row{display:flex;align-items:center;gap:8px;padding:2px 0 8px 28px}.party-panel-slider-label{font-size:10px;color:#fff6;width:42px;flex-shrink:0}.party-panel-slider{flex:1;height:4px;-webkit-appearance:none;appearance:none;background:#ffffff1a;border-radius:2px;outline:none}.party-panel-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:12px;height:12px;border-radius:50%;background:#e040a0;cursor:pointer;box-shadow:0 0 6px #e040a080}.party-panel-slider::-moz-range-thumb{width:12px;height:12px;border:none;border-radius:50%;background:#e040a0;cursor:pointer;box-shadow:0 0 6px #e040a080}.party-panel-slider-value{font-size:10px;color:#ffffff80;width:32px;text-align:right;font-variant-numeric:tabular-nums}.home-page{min-height:100vh;height:auto;background:var(--bg-primary);color:var(--text-primary);overflow-y:visible;overflow-x:hidden;padding:5rem 1.5rem 3rem;position:relative}.home-page:before{content:"";position:fixed;top:-20%;left:50%;transform:translate(-50%);width:140%;height:60%;background:radial-gradient(ellipse at center,var(--primary-subtle) 0%,transparent 70%);opacity:.4;pointer-events:none;z-index:0}.home-page:after{content:"";position:fixed;bottom:-10%;right:-20%;width:60%;height:50%;background:radial-gradient(ellipse at center,var(--primary-glow) 0%,transparent 65%);opacity:.15;pointer-events:none;z-index:0}body.capacitor-native .home-page{padding-top:calc(6rem + var(--safe-area-top));padding-bottom:4rem}.home-container{width:100%;max-width:800px;margin:0 auto;position:relative;z-index:1;animation:fadeInUp .8s cubic-bezier(.16,1,.3,1) forwards}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero-section{text-align:center;margin-bottom:2.5rem;padding-top:1rem;animation:fadeInUp .8s cubic-bezier(.16,1,.3,1) .1s backwards}.logo{position:relative;display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem;animation:float 3s ease-in-out infinite}.logo.no-float{animation:none}.logo-inner{position:relative;display:flex;align-items:center;justify-content:center;transform:scale(var(--logo-scale, 1));transform-origin:center}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.logo-bg-animation{position:absolute;width:200px;height:200px;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--accent-purple);opacity:.4;pointer-events:none}.cuy-image{position:relative;width:150px;height:auto;z-index:2;filter:drop-shadow(0 0 24px var(--primary-glow));transition:filter var(--transition-normal)}so this is p .logo:hover .cuy-image{filter:drop-shadow(0 0 36px var(--primary-glow)) drop-shadow(0 8px 16px var(--shadow-medium))}.title-logo-container{position:relative;display:inline-block;vertical-align:top;margin-bottom:1rem;--play-btn-left: 68.5%;--play-btn-top: 52.5%;--play-btn-size: 10.5%}.title-image{width:420px;max-width:85vw;height:auto;display:block;filter:drop-shadow(0 4px 20px var(--shadow-soft))}.logo-play-button-overlay{position:absolute;left:var(--play-btn-left);top:var(--play-btn-top);transform:translate(-50%,-50%);width:var(--play-btn-size);aspect-ratio:1;z-index:10;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;outline:none;padding:0;margin:0}.play-btn-circle{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:50%;background:linear-gradient(90deg,#ca592e,#ed7a2d);box-shadow:0 2px 8px #00000026;color:#fff;animation:play-btn-glow 4s ease-in-out infinite}.play-btn-triangle{width:var(--triangle-size, 80%);height:var(--triangle-size, 80%);margin-left:var(--triangle-offset, -6%);filter:drop-shadow(0 0 3px rgba(255,255,255,.6));animation:play-btn-beckon 4s ease-out infinite}@keyframes play-btn-glow{0%,to{box-shadow:0 2px 8px #00000026,0 0 #f5923a00}50%{box-shadow:0 2px 10px #0000002e,0 0 12px 3px #f5923a40}}@keyframes play-btn-beckon{0%{transform:scale(1)}5%{transform:scale(1.08)}10%{transform:scale(1)}15%{transform:scale(1.08)}20%{transform:scale(1)}to{transform:scale(1)}}.logo-play-button-overlay:hover .play-btn-circle{background:linear-gradient(90deg,#d96835,#f58a3d);box-shadow:0 3px 12px #0003,0 0 20px 6px #ed7a2d73;animation:none;transform:scale(1.08);transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease,background .3s ease}.logo-play-button-overlay:hover .play-btn-triangle{filter:drop-shadow(0 0 8px rgba(255,255,255,1));transform:scale(1.1);animation:none;transition:transform .3s cubic-bezier(.34,1.56,.64,1),filter .3s ease}.tagline{font-size:1.35rem;font-weight:700;color:var(--text-primary);margin-top:0;margin-bottom:.625rem;letter-spacing:-.025em;line-height:1.25;background:linear-gradient(135deg,var(--text-primary) 0%,var(--primary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.description{font-size:.975rem;color:var(--text-secondary);line-height:1.6;margin:0 auto}.see-how-it-works-link{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1.25rem;padding:.625rem 1rem;color:var(--text-secondary);font-size:.825rem;font-weight:500;text-decoration:none;border-radius:2rem;transition:color var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast);letter-spacing:.01em;background:var(--surface);border:1px solid var(--border);box-shadow:0 1px 4px var(--shadow-ghost)}.see-how-it-works-link:hover{color:var(--primary);border-color:var(--primary-border);background:var(--primary-tint);box-shadow:0 2px 12px var(--shadow-subtle)}.see-how-it-works-link:hover .see-how-it-works-icon{filter:drop-shadow(0 0 4px var(--primary-glow))}.see-how-it-works-icon{width:18px;height:18px;flex-shrink:0;transition:filter var(--transition-fast)}.how-it-works-section{margin-top:2.75rem;margin-bottom:2.75rem;animation:fadeInUp .8s cubic-bezier(.16,1,.3,1) .3s backwards}.how-it-works-surface{background:var(--surface);border:1px solid var(--border);border-radius:1.25rem;box-shadow:0 1px 2px var(--shadow-ghost),0 4px 16px var(--shadow-subtle),0 12px 40px var(--shadow-ghost);padding:1.75rem 2rem;position:relative;overflow:hidden;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.how-it-works-surface:before{content:"";position:absolute;inset:0;background:linear-gradient(160deg,var(--primary-subtle) 0%,transparent 50%),radial-gradient(ellipse at 80% 80%,var(--primary-subtle) 0%,transparent 50%);opacity:.3;pointer-events:none}.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;max-width:900px;margin:0 auto}.step-item{text-align:center;display:flex;flex-direction:column;align-items:center;position:relative;padding:.5rem}.step-number{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--surface) 100%);border:1.5px solid var(--primary-border);display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:700;color:var(--primary);position:relative;z-index:1;box-shadow:0 2px 8px var(--primary-subtle),inset 0 1px 0 var(--highlight-ghost)}.step-title{font-size:.95rem;font-weight:700;color:var(--text-primary);margin-bottom:.3rem;letter-spacing:-.01em;margin-top:.75rem}.step-description{font-size:.8rem;color:var(--text-secondary);line-height:1.5;max-width:220px}.steps-dots{display:none}@media(min-width:900px){.step-item:not(:last-child):after{content:"";position:absolute;right:-.75rem;top:20%;height:60%;width:1px;background:linear-gradient(180deg,transparent 0%,var(--highlight-ghost) 50%,transparent 100%)}}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-top:3rem;animation:fadeInUp .8s cubic-bezier(.16,1,.3,1) .4s backwards}.feature-card{background:var(--surface);border:1px solid var(--border);border-radius:1rem;box-shadow:var(--shadow-card);padding:2rem 1.5rem;transition:all var(--transition-slow);position:relative;overflow:hidden;text-align:center;display:flex;flex-direction:column;align-items:center}.feature-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--primary-subtle) 100%);opacity:0;transition:opacity var(--transition-slow)}.feature-card:hover{transform:translateY(-4px);border-color:var(--primary-border);box-shadow:var(--shadow-card-hover)}.feature-card:hover:before{opacity:1}.feature-icon{font-size:2.75rem;margin-bottom:1.25rem;position:relative;z-index:1;line-height:1}.feature-title{font-size:1.15rem;font-weight:600;color:var(--text-primary);margin-bottom:.625rem;position:relative;z-index:1;letter-spacing:-.01em}.feature-description{font-size:.9rem;color:var(--text-secondary);line-height:1.6;position:relative;z-index:1;max-width:280px}.upload-section{display:flex;flex-direction:column;align-items:center;animation:fadeInUp .8s cubic-bezier(.16,1,.3,1) .2s backwards}.upload-section .upload-area{width:100%}.source-tabs{display:flex;gap:8px;margin-bottom:16px;width:100%;max-width:360px;padding:6px;border-radius:16px;background:var(--surface);border:1px solid var(--border);box-shadow:0 2px 10px var(--shadow-ghost)}.source-tab{flex:1;padding:12px 16px;border-radius:12px;border:1px solid transparent;background:transparent;color:var(--text-tertiary);font-weight:600;font-size:var(--text-sm);cursor:pointer;transition:var(--transition-fast)}.source-tab:hover:not(:disabled):not(.active){background:var(--surface-hover);border-color:var(--border-hover);color:var(--text-secondary)}.source-tab.active{border-color:var(--primary);background:var(--primary-subtle);color:var(--primary)}.source-tab:disabled{opacity:.5;cursor:not-allowed}.youtube-area{flex-direction:column;align-items:stretch;min-height:unset;padding:1.25rem;border-style:solid;border-width:1px;border-color:var(--border);justify-content:flex-start}.youtube-input-section{display:flex;flex-direction:column;gap:12px;width:100%}.youtube-area-header{display:flex;flex-direction:column;gap:2px;margin-bottom:10px}.youtube-area-title{font-size:.95rem;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.youtube-area-subtitle{font-size:.825rem;color:var(--text-secondary)}.youtube-url-input{width:100%;padding:16px 18px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);font-size:16px;outline:none;transition:var(--transition-fast)}.youtube-url-input::placeholder{color:var(--text-muted)}.youtube-url-input:hover:not(:disabled){border-color:var(--border-hover)}.youtube-url-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-subtle)}.youtube-url-input.error{border-color:var(--danger)}.youtube-url-input.valid{border-color:var(--success)}.youtube-url-input:disabled{opacity:.6;cursor:not-allowed}.youtube-validating{color:var(--text-tertiary);font-size:var(--text-sm);display:flex;align-items:center;gap:8px}.youtube-validating:before{content:"";width:16px;height:16px;border:2px solid var(--primary-subtle);border-top-color:var(--primary);border-radius:50%;animation:spinner-rotate .8s linear infinite}.youtube-url-error{color:var(--danger);font-size:var(--text-sm)}.youtube-preview{display:flex;gap:16px;padding:14px;border-radius:12px;background:var(--surface-hover);border:1px solid var(--success-subtle, rgba(34, 197, 94, .2))}.youtube-thumbnail{width:140px;height:79px;object-fit:cover;border-radius:8px;flex-shrink:0}.youtube-info{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1;justify-content:center}.youtube-title{font-weight:600;font-size:var(--text-base);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.youtube-meta{display:flex;gap:12px;font-size:var(--text-sm);color:var(--text-tertiary)}.youtube-channel{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.youtube-duration{flex-shrink:0}.upload-area{background:var(--surface);border:2px dashed var(--border-hover);border-radius:1.25rem;padding:2.25rem 2rem;position:relative;overflow:hidden;transition:background var(--transition-normal),border-color var(--transition-normal),box-shadow var(--transition-normal);min-height:260px;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 2px var(--shadow-ghost),0 4px 16px var(--shadow-subtle),inset 0 1px 0 var(--highlight-ghost);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.upload-area:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,var(--primary-subtle) 0%,transparent 60%);opacity:0;transition:opacity var(--transition-slow);pointer-events:none}.upload-area:not(.has-video):not(.processing):not(.error){cursor:pointer}.upload-area:not(.has-video):not(.processing):not(.error):hover{border-color:var(--primary);background:var(--primary-tint);box-shadow:0 4px 20px var(--primary-subtle),0 12px 40px var(--shadow-soft),inset 0 1px 0 var(--highlight-subtle)}.upload-area:not(.has-video):not(.processing):not(.error):hover:before{opacity:.5}.upload-area.dragging{border-color:var(--primary);background:var(--primary-subtle);box-shadow:0 8px 32px var(--primary-glow),0 20px 60px var(--shadow-medium),inset 0 0 40px var(--primary-subtle)}.upload-area.dragging:before{opacity:.7}.upload-area.has-video{border-style:solid;border-color:var(--border)}.upload-area.has-video:not(.processing):not(.error){align-items:flex-start}.file-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.upload-prompt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;cursor:pointer;position:absolute;inset:0;z-index:1;width:100%;height:100%}.upload-icon{width:52px;height:52px;color:var(--primary);stroke-width:1.5;filter:drop-shadow(0 2px 8px var(--primary-glow));transition:transform .4s cubic-bezier(.34,1.56,.64,1),filter .4s ease;will-change:transform,filter}.upload-area:hover .upload-icon{transform:translateY(-6px);filter:drop-shadow(0 8px 20px var(--primary-glow))}.upload-area.dragging .upload-icon{transform:translateY(-10px);filter:drop-shadow(0 12px 28px var(--primary-glow))}.upload-text{font-size:.95rem;font-weight:600;color:var(--text-primary);letter-spacing:-.01em}.upload-hint{font-size:.8rem;color:var(--text-tertiary)}.upload-content{width:100%;display:flex;flex-direction:column;gap:1rem;animation:fadeIn .3s ease-out}.video-info{display:flex;align-items:center;gap:.875rem;padding:.5rem;background:var(--primary-tint);border-radius:.625rem;border:1px solid var(--primary-subtle)}.video-icon{width:36px;height:36px;color:var(--primary);flex-shrink:0;filter:drop-shadow(0 1px 3px var(--primary-glow))}.video-details{display:flex;flex-direction:column;gap:.125rem;flex:1;min-width:0}.video-name{font-size:.9rem;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-size{font-size:.75rem;color:var(--text-tertiary)}.remove-button{background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;padding:.375rem;border-radius:.375rem;transition:all var(--transition-normal);flex-shrink:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.remove-button:hover{background:var(--danger-subtle);color:var(--danger)}.remove-button svg{width:15px;height:15px}.divider{height:1px;background:linear-gradient(90deg,transparent 0%,var(--border) 20%,var(--border) 80%,transparent 100%);margin:.5rem 0}.video-type-selector{display:flex;flex-direction:column;gap:.5rem;contain:layout}.type-selector-toggle{width:100%;background:transparent;border:none;padding:.5rem 0;display:flex;align-items:center;gap:.5rem;cursor:default;color:var(--text-secondary);font-size:.85rem;font-weight:500;transition:color var(--transition-normal);text-align:left}.type-selector-toggle:hover{color:var(--text-secondary)}.toggle-icon{font-size:.65rem;transition:transform var(--transition-normal)}.video-types-list{display:flex;flex-direction:column;gap:.35rem;animation:fadeIn .2s ease-out}.video-type-option{display:flex;align-items:center;gap:.625rem;padding:.625rem .75rem;background:var(--surface);border:1.5px solid var(--border);border-radius:.5rem;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast);position:relative;box-shadow:0 1px 2px var(--shadow-ghost)}.video-type-option:hover{border-color:var(--primary-border);background:var(--surface-hover);box-shadow:0 2px 6px var(--shadow-subtle)}.video-type-option.selected{border-color:var(--primary);background:var(--primary-subtle);box-shadow:0 0 0 2px var(--primary-subtle)}.type-radio{position:absolute;opacity:0;pointer-events:none}.type-radio-circle{width:16px;height:16px;border-radius:50%;border:1.5px solid var(--border-hover);background:var(--surface);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color var(--transition-fast),background var(--transition-fast)}.video-type-option:hover .type-radio-circle{border-color:var(--primary-border)}.video-type-option.selected .type-radio-circle{border-color:var(--primary);background:var(--surface)}.type-radio-dot{width:8px;height:8px;border-radius:50%;background:var(--primary)}.video-type-option:not(.selected) .type-radio-dot{display:none}.type-content{flex:1;display:flex;flex-direction:column;gap:.125rem;min-width:0}.type-label{font-size:.825rem;font-weight:500;color:var(--text-primary)}.type-description{font-size:.7rem;color:var(--text-tertiary);line-height:1.3;opacity:.85}.custom-type-input{width:100%;padding:.5rem .75rem;background:var(--overlay-heavy);border:1.5px solid var(--primary-glow);border-radius:.5rem;color:var(--text-primary);font-size:.8rem;font-family:inherit;outline:none;transition:border-color var(--transition-normal),background var(--transition-normal);margin-top:.35rem;transform:translateZ(0);backface-visibility:hidden}.custom-type-input::placeholder{color:var(--text-tertiary)}.custom-type-input:focus{border-color:var(--primary);background:var(--overlay-heavy)}.video-notes-input{width:100%;padding:.5rem .75rem;background:var(--overlay-dark);border:1.5px solid var(--highlight-ghost);border-radius:.5rem;color:var(--text-primary);font-size:.8rem;font-family:inherit;outline:none;transition:border-color var(--transition-normal),background var(--transition-normal);resize:vertical;min-height:44px;margin-top:.5rem;transform:translateZ(0);backface-visibility:hidden}.video-notes-input::placeholder{color:var(--text-tertiary)}.video-notes-input:focus{border-color:var(--primary-border);background:var(--overlay-heavy)}.start-button{width:100%;padding:.9rem 1.5rem;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 50%,var(--secondary) 100%);background-size:200% 200%;color:#fff;border:none;border-radius:.75rem;font-size:.925rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:box-shadow var(--transition-normal),background-position var(--transition-slow);box-shadow:0 2px 8px var(--primary-glow),0 4px 20px var(--shadow-soft),inset 0 1px 0 var(--highlight-subtle);position:relative;overflow:hidden;margin-top:.25rem;text-shadow:0 1px 2px var(--shadow-medium)}.start-button:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--highlight-soft) 0%,transparent 50%,var(--highlight-ghost) 100%);opacity:0;transition:opacity var(--transition-slow)}.start-button:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,var(--highlight-subtle) 50%,transparent 100%);transition:left .6s ease}.start-button:hover{box-shadow:0 4px 16px var(--primary-glow),0 12px 40px var(--shadow-medium),inset 0 1px 0 var(--highlight-soft);background-position:100% 100%}.start-button:hover:before{opacity:1}.start-button:hover:after{left:100%}.start-button .btn-icon{width:15px;height:15px;stroke-width:2.5}.start-button.loading,.start-button:disabled{cursor:default;opacity:.92;transform:none;box-shadow:0 3px 12px var(--primary-glow)}.start-button.loading:before,.start-button:disabled:before{opacity:.3}.upload-content.is-processing{opacity:.96;transition:opacity var(--transition-normal)}.error-state{display:flex;flex-direction:column;align-items:center;gap:.75rem;width:100%}.error-icon{width:44px;height:44px;color:var(--danger)}.error-text{color:var(--danger);font-size:.875rem;text-align:center;line-height:1.45}.retry-button{padding:.625rem 1.25rem;background:var(--danger-subtle);color:var(--danger);border:1px solid var(--danger-glow);border-radius:.5rem;font-size:.85rem;font-weight:600;cursor:pointer;transition:all var(--transition-normal)}.retry-button:hover{background:var(--danger-subtle);border-color:var(--danger)}.home-user-menu-wrapper{position:fixed;top:1.5rem;right:1.5rem;z-index:100}body.capacitor-native .home-user-menu-wrapper{top:calc(var(--safe-area-top) + 10px);right:calc(var(--safe-area-right) + 10px)}.upload-area.highlight{animation:uploadHighlightPulse 1.5s ease-out}@keyframes uploadHighlightPulse{0%{box-shadow:0 0 0 0 var(--primary-border),0 4px 16px var(--shadow-subtle);border-color:var(--primary)}50%{box-shadow:0 0 40px 12px var(--primary-glow),0 8px 32px var(--shadow-soft);border-color:var(--primary)}to{box-shadow:0 0 0 0 transparent,0 4px 16px var(--shadow-subtle);border-color:var(--border-hover)}}.home-footer{margin-top:3.5rem;padding-top:2rem;border-top:1px solid var(--border);animation:fadeInUp .8s cubic-bezier(.16,1,.3,1) .5s backwards;position:relative}.home-footer:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:60px;height:1px;background:linear-gradient(90deg,transparent 0%,var(--primary-border) 50%,transparent 100%)}.footer-content{display:flex;flex-direction:column;align-items:center;gap:.375rem}.footer-text{font-size:.8rem;color:var(--text-tertiary);text-align:center;margin:0}.footer-name{color:var(--primary);font-weight:500;transition:color var(--transition-fast)}.footer-name:hover{color:var(--primary-light)}.footer-copyright{font-size:.7rem;color:var(--text-muted);text-align:center;margin:0;letter-spacing:.03em;text-transform:uppercase}.play-btn-circle.party-active .play-btn-triangle{animation:none;margin-left:0}.party-snackbar{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);background:#0009;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);color:#ffffffe6;font-size:.875rem;font-weight:500;padding:.75rem 1.5rem;border-radius:.75rem;z-index:1000;box-shadow:0 4px 24px #0006;animation:snackbarSlideUp .3s cubic-bezier(.16,1,.3,1);pointer-events:none}[data-theme=party] .party-snackbar{background:#ffffffb3;border-color:#ffffff4d;color:#1a1a1a}@keyframes snackbarSlideUp{0%{opacity:0;transform:translate(-50%) translateY(16px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media(max-width:768px){.home-page{padding:4rem 1rem 2.5rem}.home-page:before{width:180%;opacity:.3}.home-container{max-width:100%}.hero-section{margin-bottom:2rem;padding-top:.5rem}.how-it-works-section{margin-top:2.25rem;margin-bottom:2.25rem}.steps-grid{gap:1rem}.how-it-works-surface{padding:1.5rem 1.25rem;border-radius:1rem}.features-grid{margin-top:2rem}.home-footer{margin-top:2.5rem;padding-top:1.5rem}.title-logo-container{margin-bottom:.875rem}.title-image{width:320px}.tagline{font-size:1.2rem}.description{font-size:.925rem}.features-grid{grid-template-columns:1fr;gap:.875rem;margin-bottom:2.5rem}.feature-card{padding:1.5rem 1.125rem}.upload-area{padding:1.75rem 1.25rem;min-height:240px;border-radius:1rem}.home-user-menu-wrapper{top:1rem;right:1rem}.see-how-it-works-link{margin-top:1rem;font-size:.8rem;padding:.5rem .875rem}.video-info{padding:.375rem}.start-button{padding:.85rem 1.25rem}}.upload-prompt.upload-prompt--mobile{display:none!important}.upload-prompt.upload-prompt--desktop{display:flex}@media(max-width:480px){.home-page{padding:0;padding-top:calc(var(--safe-area-top) + 4.5rem);padding-bottom:calc(var(--safe-area-bottom) + 3rem);min-height:100vh;min-height:100dvh;position:relative;overflow-x:hidden}.home-page:before{width:150%;height:45%;opacity:.6;top:-10%;background:radial-gradient(ellipse 80% 60% at 50% 20%,var(--primary-subtle) 0%,var(--primary-glow) 25%,transparent 70%);animation:ambientPulse 8s ease-in-out infinite alternate}.home-page:after{display:block;position:fixed;content:"";bottom:-20%;right:-30%;width:80%;height:50%;background:radial-gradient(ellipse at center,var(--primary-glow) 0%,transparent 60%);opacity:.15;animation:ambientDrift 12s ease-in-out infinite alternate-reverse;pointer-events:none;z-index:0}@keyframes ambientPulse{0%{opacity:.5;transform:translate(-50%) scale(1)}to{opacity:.7;transform:translate(-50%) scale(1.1)}}@keyframes ambientDrift{0%{transform:translate(0) rotate(0)}to{transform:translate(-10%,5%) rotate(5deg)}}.home-container{padding:0 1.75rem;max-width:100%;position:relative;z-index:1}@keyframes mobileSlideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes mobileScaleIn{0%{opacity:0;transform:scale(.95) translateY(16px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes mobileFadeIn{0%{opacity:0}to{opacity:1}}.hero-section{padding-top:.5rem;animation:mobileScaleIn .7s cubic-bezier(.16,1,.3,1) .1s backwards}.logo{margin-bottom:1rem;animation:mobileScaleIn .6s cubic-bezier(.34,1.56,.64,1) .15s backwards}.logo-inner{transform:scale(1)}.logo-bg-animation{width:180px;height:180px}.cuy-image{width:130px;filter:drop-shadow(0 0 24px var(--primary-glow)) drop-shadow(0 6px 16px var(--shadow-medium));animation:logoFloat 4s ease-in-out infinite}@keyframes logoFloat{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-4px) rotate(1deg)}75%{transform:translateY(-2px) rotate(-1deg)}}.title-logo-container{margin-bottom:1.25rem;animation:mobileSlideUp .6s cubic-bezier(.16,1,.3,1) .25s backwards}.title-image{width:280px;max-width:72vw;filter:drop-shadow(0 4px 12px var(--shadow-soft))}.tagline{font-size:clamp(1.5rem,6vw,1.85rem);line-height:1.3;margin-bottom:1rem;padding:0 .5rem;font-weight:700;letter-spacing:-.025em;animation:mobileSlideUp .6s cubic-bezier(.16,1,.3,1) .3s backwards}.description{font-size:1.1rem;line-height:1.75;padding:0 .25rem;color:var(--text-secondary);animation:mobileFadeIn .8s ease-out .4s backwards}.upload-section{animation:mobileScaleIn .7s cubic-bezier(.16,1,.3,1) .35s backwards}.upload-prompt.upload-prompt--desktop{display:none!important}.upload-prompt.upload-prompt--mobile{display:flex!important;flex-direction:column;align-items:center;justify-content:center;position:absolute;inset:0;z-index:1;cursor:pointer;padding:1.5rem}.upload-area{min-height:240px;padding:2.25rem 2rem;border-radius:1.25rem;border:2px solid var(--primary-border);background:linear-gradient(160deg,var(--primary-tint) 0%,color-mix(in srgb,var(--surface) 95%,var(--primary-subtle)) 100%);box-shadow:0 2px 8px var(--shadow-ghost),0 8px 24px var(--shadow-subtle),inset 0 1px 0 var(--highlight-ghost);position:relative;overflow:visible;transition:all .25s ease}.source-tabs{max-width:100%;gap:6px;margin-bottom:12px}.source-tab{padding:10px 12px;font-size:var(--text-sm);border-radius:10px}.youtube-preview{flex-direction:column;gap:12px;padding:12px}.youtube-thumbnail{width:100%;height:auto;aspect-ratio:16 / 9}.youtube-url-input{padding:14px 16px;font-size:var(--text-base)}.upload-area:not(.has-video):not(.processing):not(.error):active{transform:scale(.98);border-color:var(--primary);background:linear-gradient(160deg,var(--primary-subtle) 0%,var(--primary-tint) 100%)}.upload-area:not(.has-video):not(.processing):not(.error){border-style:solid}.mobile-upload-btn{display:flex;flex-direction:column;align-items:center;gap:1.125rem;width:100%;padding:.75rem;background:transparent;border:none;border-radius:0}.mobile-upload-btn__icon-wrap{width:72px;height:72px;border-radius:50%;background:linear-gradient(145deg,var(--primary) 0%,var(--primary-dark) 100%);display:flex;align-items:center;justify-content:center;transition:all .25s ease;box-shadow:0 6px 20px var(--primary-glow),0 2px 8px var(--shadow-soft),inset 0 1px 0 var(--highlight-soft)}.upload-area:active .mobile-upload-btn__icon-wrap{transform:scale(.92)}.mobile-upload-btn__icon{width:28px;height:28px;color:#fff;stroke-width:2.5;transition:transform .25s ease}.upload-area:active .mobile-upload-btn__icon{transform:translateY(-2px)}.mobile-upload-btn__text{font-size:1.15rem;font-weight:700;color:var(--primary);letter-spacing:-.01em}.mobile-upload-btn__hint{font-size:.85rem;color:var(--text-tertiary);letter-spacing:.03em;text-transform:uppercase;font-weight:500}.upload-area.has-video{min-height:auto;padding:1.25rem}.upload-content{gap:.875rem}.video-info{padding:.625rem .75rem;border-radius:.75rem}.video-icon{width:32px;height:32px}.video-name{font-size:.95rem}.video-size{font-size:.8rem}.divider{margin:.375rem 0}.type-selector-toggle{font-size:.9rem;padding:.5rem 0}.video-types-list{gap:.75rem}.video-type-option{padding:.875rem;border-radius:.75rem;min-height:68px;touch-action:manipulation}.video-type-option:active{transform:scale(.98)}.video-type-option:hover{transform:none}.type-radio-circle{width:18px;height:18px}.type-radio-dot{width:9px;height:9px}.type-label{font-size:.95rem;font-weight:600}.type-description{font-size:.85rem;line-height:1.45}.start-button{padding:1rem 1.75rem;border-radius:1rem;font-size:1rem;font-weight:700;min-height:54px;margin-top:.625rem;touch-action:manipulation;letter-spacing:-.01em;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 50%,color-mix(in srgb,var(--primary-dark) 80%,var(--secondary)) 100%);background-size:200% 200%;box-shadow:0 4px 16px var(--primary-glow),0 8px 32px var(--shadow-soft),inset 0 1px 0 var(--highlight-soft);position:relative;overflow:hidden}.start-button:after{content:"";position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent 0%,var(--highlight-soft) 50%,transparent 100%);animation:buttonShimmer 3s ease-in-out infinite}@keyframes buttonShimmer{0%,to{left:-100%;opacity:0}50%{left:100%;opacity:1}}.start-button:active{transform:scale(.97);box-shadow:0 2px 8px var(--primary-glow),0 4px 16px var(--shadow-soft),inset 0 2px 4px var(--shadow-ghost)}.start-button .btn-icon{width:16px;height:16px;filter:drop-shadow(0 1px 2px var(--shadow-medium))}.see-how-it-works-link{margin-top:2rem;padding:1rem 1.75rem;font-size:1.05rem;font-weight:600;border-radius:3rem;gap:.75rem;touch-action:manipulation;background:linear-gradient(145deg,var(--surface) 0%,color-mix(in srgb,var(--surface) 95%,var(--primary-subtle)) 100%);border:1px solid var(--highlight-ghost);box-shadow:0 2px 8px var(--shadow-ghost),0 4px 16px var(--shadow-subtle),inset 0 1px 0 var(--highlight-ghost);animation:mobileSlideUp .6s cubic-bezier(.16,1,.3,1) .5s backwards}.see-how-it-works-link:active{transform:scale(.96);box-shadow:0 1px 4px var(--shadow-ghost),0 2px 8px var(--shadow-subtle)}.see-how-it-works-icon{width:22px;height:22px;color:var(--primary);filter:drop-shadow(0 1px 2px var(--primary-glow))}.how-it-works-section{margin:3.5rem -1.75rem 2.5rem;animation:mobileFadeIn .8s ease-out .6s backwards}.how-it-works-surface{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;border-radius:0;overflow:visible}.how-it-works-surface:before{display:none}.steps-grid{display:flex;flex-direction:row;gap:1.25rem;padding:1.25rem 1.75rem 2rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:1.75rem;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.steps-grid::-webkit-scrollbar{display:none}.how-it-works-section:after{display:none}.steps-dots{display:flex;justify-content:center;gap:8px;margin-top:1rem;padding-bottom:.5rem}.steps-dot{width:8px;height:8px;border-radius:50%;background:var(--primary);opacity:.25;transition:opacity var(--transition-fast),transform var(--transition-fast)}.steps-dot.active{opacity:1;transform:scale(1.25)}.step-item{scroll-snap-align:start;flex:0 0 auto;width:calc(82vw - 1rem);max-width:320px;background:linear-gradient(165deg,color-mix(in srgb,var(--surface) 98%,var(--primary-subtle)),var(--surface));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--highlight-ghost);border-radius:1.5rem;padding:1.75rem 1.5rem;box-shadow:0 4px 16px var(--shadow-ghost),0 8px 32px var(--shadow-subtle),inset 0 1px 0 var(--highlight-ghost);position:relative;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease;overflow:hidden}.step-item:active{transform:scale(.97) translateY(2px);box-shadow:0 2px 8px var(--shadow-ghost),0 4px 16px var(--shadow-subtle),inset 0 1px 0 var(--highlight-ghost)}.step-item:before{display:none}.step-item:after{content:"";position:absolute;inset:-50%;background:radial-gradient(circle at 50% 0%,var(--primary-subtle) 0%,transparent 50%);opacity:.3;pointer-events:none;z-index:-1}.step-number{width:52px;height:52px;font-size:1.25rem;font-weight:800;background:linear-gradient(145deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;border:none;box-shadow:0 6px 16px var(--primary-glow),inset 0 1px 0 var(--highlight-soft);position:relative;z-index:1}.step-title{font-size:1.2rem;font-weight:700;margin-top:1rem;margin-bottom:.5rem;letter-spacing:-.02em}.step-description{font-size:1rem;line-height:1.6;max-width:none;color:var(--text-secondary)}.home-footer{margin-top:2rem;margin-left:-1.25rem;margin-right:-1.25rem;padding:1.5rem 1.25rem 1rem;border-top:1px solid var(--border);background:var(--bg-primary);animation:mobileFadeIn .8s ease-out .7s backwards}.home-footer:before{display:none}.footer-text{font-size:.9rem;color:var(--text-secondary)}.footer-name{font-weight:600;color:var(--primary)}.footer-copyright{font-size:.75rem;letter-spacing:.05em;color:var(--text-tertiary)}.home-user-menu-wrapper{top:calc(var(--safe-area-top) + .75rem);right:1rem}.error-state{padding:1rem}.error-icon{width:40px;height:40px}.error-text{font-size:.85rem}.retry-button{padding:.75rem 1.5rem;font-size:.875rem;border-radius:.75rem;min-height:44px;touch-action:manipulation}@keyframes uploadHighlightPulse{0%{box-shadow:0 0 0 0 var(--primary-border),0 4px 16px var(--shadow-subtle);border-color:var(--primary)}50%{box-shadow:0 0 24px 8px var(--primary-glow),0 8px 24px var(--shadow-soft);border-color:var(--primary)}to{box-shadow:0 0 0 0 transparent,0 4px 16px var(--shadow-subtle);border-color:var(--border)}}}@media(max-width:375px){.home-container{padding:0 1.25rem}.title-image{width:220px}.tagline{font-size:1.35rem}.description{font-size:1rem}.mobile-upload-btn__icon-wrap{width:64px;height:64px}.mobile-upload-btn__icon{width:26px;height:26px}.mobile-upload-btn__text{font-size:1.1rem}.step-item{width:calc(88vw - 1.5rem);padding:1.5rem 1.25rem}.steps-grid{padding:1rem 1.25rem 1.75rem}.how-it-works-section{margin-left:-1.25rem;margin-right:-1.25rem}.home-footer{margin-left:-1.25rem;margin-right:-1.25rem;padding-left:1.25rem;padding-right:1.25rem}}@media(min-width:481px)and (max-width:768px){.upload-prompt--mobile{display:none}.upload-prompt--desktop{display:flex}}@keyframes npm-float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(2deg)}}@keyframes npm-pulse-glow{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes npm-bounce{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.npm-overlay{position:fixed;inset:0;background:var(--modal-overlay);backdrop-filter:blur(20px) saturate(120%);-webkit-backdrop-filter:blur(20px) saturate(120%);display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000;overflow:hidden;animation:npm-overlay-fade .3s ease-out}@keyframes npm-overlay-fade{0%{opacity:0;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px)}to{opacity:1;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}}.npm-ambient{position:absolute;border-radius:50%;filter:blur(60px);pointer-events:none}.npm-ambient-1{top:10%;left:15%;width:500px;height:500px;background:radial-gradient(circle,var(--primary-subtle) 0%,transparent 60%);animation:npm-pulse-glow 8s ease-in-out infinite}.npm-ambient-2{bottom:20%;right:10%;width:400px;height:400px;background:radial-gradient(circle,var(--blue-subtle) 0%,transparent 60%);filter:blur(80px);animation:npm-pulse-glow 10s ease-in-out infinite 2s}.npm-particles{position:absolute;inset:0;pointer-events:none}.npm-particle{position:absolute;width:4px;height:4px;border-radius:50%;background:var(--primary-glow);animation:npm-float 6s ease-in-out infinite}.npm-container{width:100%;max-width:520px;position:relative;font-family:Outfit,-apple-system,BlinkMacSystemFont,sans-serif;transform:translateY(30px);opacity:0;transition:all var(--transition-slow)}.npm-container.visible{transform:translateY(0);opacity:1}.npm-glow{position:absolute;inset:-1px;border-radius:28px;background:linear-gradient(135deg,var(--primary-subtle),var(--blue-subtle),var(--primary-subtle));opacity:0;transition:opacity var(--transition-slow);filter:blur(1px)}.npm-glow.active{opacity:1}.npm-card{position:relative;background:var(--surface);border-radius:24px;border:1px solid var(--border);padding:32px 32px 28px;box-shadow:0 25px 80px var(--shadow-medium),0 8px 32px var(--shadow-soft);transition:border-color var(--transition-slow),box-shadow var(--transition-slow);overflow:hidden}.npm-card.dragging{border-color:var(--primary);box-shadow:0 0 60px var(--primary-subtle),0 25px 50px var(--shadow-medium)}.npm-noise{position:absolute;inset:0;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");pointer-events:none;border-radius:24px}.npm-close{position:absolute;top:20px;right:20px;width:36px;height:36px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-slow);z-index:10}.npm-close:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-hover);transform:rotate(90deg)}.npm-close:disabled{opacity:.3;cursor:not-allowed}.npm-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--primary-subtle) 100%);border-radius:20px;border:1px solid var(--primary-subtle);margin-bottom:14px}.npm-pill-dot{width:6px;height:6px;border-radius:50%;background:var(--primary);box-shadow:0 0 10px var(--primary-border)}.npm-pill span{font-size:var(--text-xs);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--primary-light)}.npm-title{font-size:28px;font-weight:600;color:var(--text-primary);margin:0 0 8px;letter-spacing:-.03em;line-height:1.15}.npm-subtitle{font-size:var(--text-sm);color:var(--text-tertiary);margin:0 0 20px;line-height:1.5;max-width:360px;font-weight:400}.npm-highlight{color:var(--primary-light);font-weight:600}.npm-source-tabs{display:flex;gap:8px;margin-bottom:16px}.npm-source-tab{flex:1;padding:10px 14px;border-radius:10px;border:1px solid var(--border);background:var(--surface-hover);color:var(--text-tertiary);font-weight:600;font-size:var(--text-sm);cursor:pointer;transition:var(--transition-fast)}.npm-source-tab:hover:not(:disabled):not(.active){background:var(--surface);border-color:var(--border-hover);color:var(--text-secondary)}.npm-source-tab.active{border-color:var(--primary-border);background:var(--primary-subtle);color:var(--primary-light)}.npm-source-tab:disabled{opacity:.5;cursor:not-allowed}.npm-youtube-section{display:flex;flex-direction:column;gap:12px}.npm-youtube-input{width:100%;padding:14px 16px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);font-size:var(--text-base);outline:none;transition:var(--transition-fast)}.npm-youtube-input::placeholder{color:var(--text-muted)}.npm-youtube-input:hover:not(:disabled){border-color:var(--border-hover)}.npm-youtube-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-subtle)}.npm-youtube-input.error{border-color:var(--danger)}.npm-youtube-input.valid{border-color:var(--success)}.npm-youtube-input:disabled{opacity:.6;cursor:not-allowed}.npm-validating{color:var(--text-tertiary);font-size:var(--text-sm);display:flex;align-items:center;gap:8px}.npm-validating:before{content:"";width:14px;height:14px;border:2px solid var(--primary-subtle);border-top-color:var(--primary);border-radius:50%;animation:spinner-rotate .8s linear infinite}.npm-url-error{color:var(--danger);font-size:var(--text-sm)}.npm-youtube-preview{display:flex;gap:14px;padding:12px;border-radius:12px;background:var(--surface-hover);border:1px solid var(--success-subtle, rgba(34, 197, 94, .2))}.npm-youtube-thumbnail{width:120px;height:68px;object-fit:cover;border-radius:8px;flex-shrink:0}.npm-youtube-info{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1}.npm-youtube-title{font-weight:600;font-size:var(--text-sm);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.npm-youtube-meta{display:flex;gap:10px;font-size:var(--text-xs);color:var(--text-tertiary)}.npm-youtube-channel{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.npm-youtube-duration{flex-shrink:0}.npm-dropzone{background:var(--surface-hover);border:2px dashed var(--primary-border);border-radius:1.25rem;padding:24px 20px;text-align:center;transition:border-color var(--transition-slow),background var(--transition-slow),box-shadow var(--transition-slow);cursor:pointer;position:relative;overflow:hidden}.npm-dropzone.has-file{border-style:solid;border-color:var(--border);background:var(--surface);padding:16px;cursor:default}.npm-dropzone.has-file:hover{border-color:var(--border);background:var(--surface);box-shadow:none}.npm-file-preview{display:flex;align-items:center;gap:14px;text-align:left;width:100%}.npm-file-icon{width:48px;height:48px;border-radius:12px;background:var(--primary-subtle);border:1px solid var(--primary-border);color:var(--primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.npm-file-info{flex:1;min-width:0}.npm-file-name{font-size:.95rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}.npm-file-size{font-size:.8rem;color:var(--text-tertiary)}.npm-file-remove{width:32px;height:32px;border:none;background:transparent;color:var(--text-tertiary);border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color var(--transition-fast),background var(--transition-fast);flex-shrink:0}.npm-file-remove:hover{color:var(--text-secondary);background:var(--surface-hover)}.npm-dropzone:hover{border-color:var(--primary-border);background:var(--primary-subtle);box-shadow:0 8px 32px var(--primary-subtle)}.npm-dropzone.dragging{border-color:var(--primary);background:var(--primary-subtle);box-shadow:0 12px 48px var(--primary-glow)}.npm-dropzone.uploading{cursor:default;border-color:var(--primary-glow);border-style:solid}.npm-input{display:none}.npm-upload-icon{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--primary-subtle) 100%);border:1px solid var(--primary-subtle);display:flex;align-items:center;justify-content:center;margin:0 auto 14px;transition:all var(--transition-slow);color:var(--primary)}.npm-upload-icon.bounce{animation:npm-bounce .6s ease infinite}.npm-drop-text{font-size:var(--text-base);color:var(--text-secondary);margin-bottom:8px;font-weight:500}.npm-drop-text--mobile{display:none}.npm-drop-text--desktop{display:inline}.npm-drop-subtext{font-size:var(--text-sm);color:var(--text-tertiary)}.npm-browse{color:var(--primary);cursor:pointer;font-weight:500;transition:all var(--transition-normal)}.npm-browse:hover{color:var(--primary-light);text-shadow:0 0 20px var(--primary-border)}.npm-video-type{margin-top:1.25rem;display:flex;flex-direction:column;gap:.875rem;animation:npmContentFadeIn .3s cubic-bezier(.16,1,.3,1) .1s both}.npm-video-type-title{font-size:.85rem;font-weight:600;color:var(--text-secondary)}.npm-video-type-options{display:grid;gap:8px}.npm-video-type-option{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:12px 14px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);text-align:left}.npm-video-type-option:hover{border-color:var(--primary-border);background:var(--surface-hover);transform:translateY(-1px)}.npm-video-type-option.selected{border-color:var(--primary);background:var(--primary-subtle);box-shadow:0 0 0 3px var(--primary-subtle)}.npm-video-type-option.selected:hover{transform:none}.npm-video-type-radio{width:18px;height:18px;border-radius:50%;border:2px solid var(--border-hover);background:var(--surface);position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.npm-video-type-option:hover .npm-video-type-radio{border-color:var(--primary-border)}.npm-video-type-option.selected .npm-video-type-radio{border-color:var(--primary);background:var(--primary)}.npm-video-type-option.selected .npm-video-type-radio:after{content:"";width:6px;height:6px;border-radius:50%;background:#fff}.npm-video-type-content{display:flex;flex-direction:column;gap:2px}.npm-video-type-label{font-size:.9rem;font-weight:600;color:var(--text-primary)}.npm-video-type-description{font-size:.8rem;color:var(--text-tertiary)}.npm-create-btn{width:100%;margin-top:.25rem;border:none;background:var(--primary);color:#fff;border-radius:12px;padding:.875rem 1.125rem;font-size:.95rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:background var(--transition-normal),transform var(--transition-normal),box-shadow var(--transition-normal),opacity var(--transition-normal);box-shadow:0 4px 12px var(--primary-glow)}.npm-btn-icon{width:18px;height:18px;flex-shrink:0}.npm-create-btn:not(:disabled):hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 8px 24px var(--primary-glow)}.npm-create-btn:not(:disabled):active{transform:translateY(0) scale(.98);box-shadow:0 2px 8px var(--primary-glow)}.npm-create-btn:disabled{opacity:.6;cursor:default}.npm-youtube-create-btn{margin-top:16px}.npm-progress-state{text-align:center}.npm-progress-icon{width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--primary-subtle) 100%);display:flex;align-items:center;justify-content:center;margin:0 auto 20px;position:relative}.npm-progress-ring{position:absolute;animation:npm-spin 2s linear infinite}.npm-ring-bg{fill:none;stroke:var(--primary-subtle);stroke-width:2}.npm-ring-fill{fill:none;stroke:var(--primary);stroke-width:2;stroke-linecap:round;transform:rotate(-90deg);transform-origin:center;transition:stroke-dasharray var(--transition-slow)}.npm-progress-text{font-family:JetBrains Mono,SF Mono,monospace;font-size:var(--text-sm);font-weight:500;color:var(--primary);position:relative;z-index:1}.npm-progress-label{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:6px;font-weight:500}.npm-progress-filename{font-family:JetBrains Mono,SF Mono,monospace;font-size:var(--text-xs);color:var(--text-tertiary);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.npm-error{display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:.75rem 1rem;background:var(--danger-subtle);border:1px solid var(--danger-glow);border-radius:10px;margin-top:.75rem;color:var(--danger);font-size:.875rem;font-weight:500;text-align:left;animation:npmContentFadeIn .25s ease-out}.npm-footer{display:flex;align-items:center;justify-content:space-between}.npm-formats{display:flex;align-items:center;gap:12px;font-size:var(--text-xs);color:var(--text-tertiary)}.npm-formats-label{font-weight:500}.npm-format-tags{display:flex;gap:6px}.npm-format-tag{padding:5px 10px;background:var(--surface-hover);border:1px solid var(--border);border-radius:6px;font-size:var(--text-xs);font-family:JetBrains Mono,SF Mono,monospace;color:var(--text-secondary);font-weight:500;transition:all var(--transition-normal);cursor:default}.npm-format-tag:hover{background:var(--primary-subtle);border-color:var(--primary-border);color:var(--primary)}.npm-size-hint{font-size:var(--text-xs);color:var(--text-muted);display:flex;align-items:center;gap:6px}.npm-hint{text-align:center;margin-top:20px;font-size:var(--text-xs);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;gap:8px;opacity:0;transform:translateY(10px);transition:all var(--transition-slow) .2s}.npm-hint.visible{opacity:.95;transform:translateY(0)}.npm-hint kbd{padding:3px 8px;background:var(--surface-hover);border:1px solid var(--border);border-radius:6px;font-family:JetBrains Mono,SF Mono,monospace;font-size:var(--text-xs);color:var(--text-primary)}.npm-content{position:relative;z-index:1}.npm-upload-view,.npm-auth-form{animation:npmContentFadeIn .3s cubic-bezier(.16,1,.3,1)}@keyframes npmContentFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.npm-auth-form{text-align:center}.npm-auth-header{margin-bottom:1.25rem}.npm-auth-icon{width:48px;height:48px;margin:0 auto .75rem;display:flex;align-items:center;justify-content:center;background:var(--primary-subtle);border-radius:12px;color:var(--primary)}.npm-auth-icon svg{width:24px;height:24px}.npm-auth-subtitle{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:.5rem 0 0}.npm-auth-fields{display:grid;gap:.875rem;text-align:left}.npm-auth-field{display:flex;flex-direction:column;gap:.5rem;color:var(--text-secondary);font-size:.85rem;font-weight:500}.npm-auth-field input{padding:.875rem 1rem;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);font-size:1rem;transition:border-color var(--transition-normal),box-shadow var(--transition-normal),background var(--transition-normal)}.npm-auth-field input::placeholder{color:var(--text-muted)}.npm-auth-field input:hover:not(:disabled){border-color:var(--border-hover)}.npm-auth-field input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-subtle);background:var(--surface)}.npm-auth-field input:disabled{opacity:.6;cursor:not-allowed}.npm-auth-field input:-webkit-autofill,.npm-auth-field input:-webkit-autofill:hover,.npm-auth-field input:-webkit-autofill:focus,.npm-auth-field input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px var(--surface) inset!important;-webkit-text-fill-color:var(--text-primary)!important;caret-color:var(--text-primary);transition:background-color 5000s ease-in-out 0s}.npm-auth-submit{margin-top:.5rem;width:100%;padding:1rem 1.25rem;border-radius:12px;border:none;background:var(--primary);color:#fff;font-weight:700;font-size:1rem;cursor:pointer;box-shadow:0 4px 12px var(--primary-glow);transition:background var(--transition-normal),transform var(--transition-normal),box-shadow var(--transition-normal),opacity var(--transition-normal)}.npm-auth-submit:disabled{opacity:.6;cursor:default;transform:none}.npm-auth-submit:not(:disabled):hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 8px 24px var(--primary-glow)}.npm-auth-submit:not(:disabled):active{transform:translateY(0) scale(.98);box-shadow:0 2px 8px var(--primary-glow)}.npm-auth-divider{display:flex;align-items:center;gap:1rem;margin:1.25rem 0}.npm-auth-divider:before,.npm-auth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.npm-auth-divider span{color:var(--text-muted);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.npm-google-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.875rem 1.25rem;background:var(--surface);border:1px solid var(--border);border-radius:12px;color:var(--text-secondary);font-size:.95rem;font-weight:500;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.npm-google-btn:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-hover);color:var(--text-primary);box-shadow:var(--shadow-md-light)}.npm-google-btn:active:not(:disabled){transform:scale(.98)}.npm-google-btn:disabled{opacity:.6;cursor:default}.npm-google-logo{width:20px;height:20px;flex-shrink:0}.npm-google-spinner{width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spinner-rotate .9s linear infinite;flex-shrink:0}.npm-auth-footer{margin-top:1.25rem;text-align:center;color:var(--text-tertiary);font-size:.85rem}.npm-auth-link{color:var(--primary);text-decoration:none;font-weight:500;transition:color var(--transition-normal)}.npm-auth-link:hover{color:var(--primary-dark)}.npm-auth-separator{margin:0 .5rem;color:var(--text-muted)}.npm-auth-back{background:none;border:none;color:var(--text-tertiary);font-size:.85rem;cursor:pointer;padding:0;transition:color var(--transition-normal)}.npm-auth-back:hover{color:var(--text-secondary)}@media(max-width:600px){.npm-overlay{padding:12px;padding-top:calc(12px + var(--safe-area-top));padding-bottom:calc(12px + var(--safe-area-bottom));align-items:center;overflow:hidden}.npm-container{max-width:100%;width:100%;margin:auto 0}.npm-card{padding:24px 20px 28px;border-radius:20px;max-height:calc(100vh - 24px - var(--safe-area-top) - var(--safe-area-bottom));max-height:calc(100dvh - 24px - var(--safe-area-top) - var(--safe-area-bottom));overflow:hidden;overscroll-behavior:contain;display:flex;flex-direction:column}.npm-content{display:flex;flex-direction:column;flex:1;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch}.npm-ambient-1,.npm-ambient-2,.npm-particles{display:none}.npm-close{top:12px;right:12px;width:44px;height:44px;border-radius:12px}.npm-close svg{width:16px;height:16px}.npm-pill{margin-bottom:12px;padding:6px 12px;align-self:flex-start;max-width:calc(100% - 56px)}.npm-pill span{font-size:var(--text-xs)}.npm-title{font-size:24px;line-height:1.2;margin-bottom:10px;padding-right:48px}.npm-subtitle{font-size:16px;line-height:1.5;margin-bottom:20px;color:var(--text-secondary)}.npm-source-tabs{gap:8px;margin-bottom:20px}.npm-source-tab{min-height:48px;padding:12px 16px;font-size:var(--text-base);font-weight:600;border-radius:12px}.npm-dropzone{padding:32px 20px;min-height:140px;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center}.npm-drop-text--mobile{display:inline}.npm-drop-text--desktop{display:none}.npm-drop-text{font-size:17px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.npm-drop-subtext--desktop{display:none}.npm-upload-icon{width:56px;height:56px;border-radius:16px;margin-bottom:16px}.npm-upload-icon svg{width:28px;height:28px}.npm-dropzone.has-file{padding:16px;min-height:auto}.npm-file-preview{gap:14px;width:100%}.npm-file-icon{width:52px;height:52px;border-radius:14px;flex-shrink:0}.npm-file-icon svg{width:26px;height:26px}.npm-file-info{min-width:0;flex:1}.npm-file-name{font-size:16px;font-weight:600;margin-bottom:4px}.npm-file-size{font-size:var(--text-sm);color:var(--text-tertiary)}.npm-file-remove{width:44px;height:44px;border-radius:12px;flex-shrink:0}.npm-file-remove svg{width:20px;height:20px}.npm-video-type{margin-top:20px;gap:14px;min-height:0}.npm-video-type-title{font-size:var(--text-sm);font-weight:600;color:var(--text-secondary)}.npm-video-type-options{gap:10px;min-height:0;overflow:auto}.npm-video-type-option{min-height:64px;padding:14px 16px;gap:14px;border-radius:14px}.npm-video-type-radio{width:22px;height:22px;flex-shrink:0}.npm-video-type-option.selected .npm-video-type-radio:after{width:8px;height:8px}.npm-video-type-content{gap:4px}.npm-video-type-label{font-size:16px;font-weight:600}.npm-video-type-description{font-size:var(--text-sm);line-height:1.4;color:var(--text-tertiary)}.npm-create-btn{min-height:52px;padding:14px 20px;font-size:17px;font-weight:700;border-radius:14px;margin-top:8px;position:sticky;bottom:0}.npm-btn-icon{width:20px;height:20px}.npm-youtube-create-btn{margin-top:20px}.npm-youtube-section{gap:14px}.npm-youtube-input{min-height:52px;padding:14px 16px;font-size:16px;border-radius:14px}.npm-youtube-preview{flex-direction:column;gap:12px;padding:14px;border-radius:14px}.npm-youtube-thumbnail{width:100%;height:auto;aspect-ratio:16 / 9;border-radius:10px}.npm-youtube-info{gap:8px}.npm-youtube-title{font-size:16px;font-weight:600;-webkit-line-clamp:2}.npm-youtube-meta{font-size:var(--text-sm);gap:12px}.npm-validating,.npm-url-error{font-size:var(--text-sm)}.npm-progress-state{padding:16px 0}.npm-progress-icon{width:64px;height:64px;border-radius:18px;margin-bottom:20px}.npm-progress-ring{width:64px;height:64px}.npm-progress-ring circle{cx:32;cy:32;r:28}.npm-progress-text{font-size:var(--text-base)}.npm-progress-label{font-size:16px;font-weight:500;margin-bottom:8px}.npm-progress-filename{font-size:var(--text-sm)}.npm-error{padding:14px 16px;font-size:var(--text-base);border-radius:12px;margin-top:16px}.npm-error svg{width:18px;height:18px;flex-shrink:0}.npm-auth-header{margin-bottom:20px}.npm-auth-icon{width:56px;height:56px;border-radius:16px;margin-bottom:16px}.npm-auth-icon svg{width:28px;height:28px}.npm-auth-form .npm-title{font-size:22px;padding-right:0}.npm-auth-subtitle{font-size:16px;line-height:1.5}.npm-auth-fields{gap:16px}.npm-auth-field{gap:8px;font-size:var(--text-sm);font-weight:600}.npm-auth-field input{min-height:52px;padding:14px 16px;font-size:16px;border-radius:14px}.npm-auth-submit{min-height:52px;padding:14px 20px;font-size:17px;border-radius:14px;margin-top:8px}.npm-auth-divider{margin:20px 0}.npm-auth-divider span{font-size:var(--text-xs)}.npm-google-btn{min-height:52px;padding:14px 20px;font-size:16px;font-weight:600;border-radius:14px}.npm-google-logo{width:22px;height:22px}.npm-google-spinner{width:20px;height:20px}.npm-auth-footer{margin-top:24px;font-size:var(--text-base);line-height:1.6}.npm-auth-link,.npm-auth-back{font-size:var(--text-base);padding:4px 0}.npm-auth-separator{margin:0 8px}}@media(max-width:374px){.npm-card{padding:20px 16px 24px}.npm-title{font-size:22px}.npm-subtitle{font-size:var(--text-base)}.npm-video-type-option{padding:12px 14px}.npm-video-type-label{font-size:var(--text-base)}.npm-video-type-description{font-size:var(--text-sm)}}.welcome-page{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--onboarding-bg, var(--bg-primary));color:var(--text-primary);position:relative;overflow:hidden;padding:24px;padding-top:calc(24px + var(--safe-area-top, 0px));padding-bottom:calc(24px + var(--safe-area-bottom, 0px));padding-left:calc(24px + var(--safe-area-left, 0px));padding-right:calc(24px + var(--safe-area-right, 0px))}body.capacitor-native .welcome-page{position:fixed;inset:0;width:100%;height:100%;min-height:0;overflow:hidden}.welcome-bg-orbs{display:none}.welcome-content{display:flex;flex-direction:column;align-items:center;gap:32px;position:relative;z-index:1;width:100%;max-width:400px;animation:welcomeFadeIn .8s cubic-bezier(.16,1,.3,1) forwards}@keyframes welcomeFadeIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.welcome-logo-section{display:flex;flex-direction:column;align-items:center;gap:20px;animation:welcomeFadeIn .8s cubic-bezier(.16,1,.3,1) .1s backwards}.welcome-logo-container{display:flex;align-items:center;justify-content:center;gap:16px}.welcome-logo-circle{width:140px;height:140px;border-radius:50%;background:linear-gradient(145deg,var(--surface) 0%,var(--surface-hover) 100%);box-shadow:0 8px 32px var(--shadow-soft),0 2px 8px var(--shadow-subtle),inset 0 2px 0 var(--highlight-ghost);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.welcome-logo-circle:before{content:"";position:absolute;inset:0;border-radius:50%;border:1px solid var(--border)}.welcome-mascot{width:100px;height:auto;object-fit:contain;filter:drop-shadow(0 4px 12px var(--shadow-soft));animation:mascotBounce 3s ease-in-out infinite}@keyframes mascotBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.welcome-audio-waves{display:flex;align-items:center;gap:4px;height:80px}.welcome-audio-waves--left .wave-bar{background:var(--cyan)}.welcome-audio-waves--right .wave-bar{background:var(--pink)}.wave-bar{width:4px;border-radius:2px;animation:waveBar 1.2s ease-in-out infinite}.wave-bar--1{height:20px;animation-delay:0s}.wave-bar--2{height:40px;animation-delay:-.2s}.wave-bar--3{height:28px;animation-delay:-.4s}@keyframes waveBar{0%,to{transform:scaleY(1);opacity:.6}50%{transform:scaleY(1.4);opacity:1}}.welcome-title-image{width:260px;max-width:70vw;height:auto;filter:drop-shadow(0 2px 8px var(--shadow-subtle))}.welcome-tagline-section{text-align:center;display:flex;flex-direction:column;gap:16px;animation:welcomeFadeIn .8s cubic-bezier(.16,1,.3,1) .2s backwards}.welcome-headline{font-size:1.5rem;font-weight:700;color:var(--text-primary);line-height:1.35;letter-spacing:-.02em;margin:0}.welcome-headline-accent{color:var(--primary);position:relative}.welcome-description{font-size:.95rem;color:var(--text-secondary);line-height:1.6;margin:0}.welcome-cta-section{display:flex;flex-direction:column;gap:12px;width:100%;margin-top:8px;animation:welcomeFadeIn .8s cubic-bezier(.16,1,.3,1) .35s backwards}.welcome-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:16px 28px;border-radius:16px;font-size:18px;font-weight:700;letter-spacing:.01em;cursor:pointer;transition:all var(--transition-fast);border:none;position:relative;overflow:hidden}.welcome-btn--primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:var(--text-on-primary);box-shadow:0 8px 24px var(--primary-glow),0 4px 12px var(--shadow-soft),inset 0 1px 0 var(--highlight-subtle)}.welcome-btn--primary:hover{transform:translateY(-2px);box-shadow:0 12px 32px var(--primary-glow),0 6px 16px var(--shadow-medium),inset 0 1px 0 var(--highlight-soft)}.welcome-btn--primary:active{transform:translateY(0);box-shadow:0 4px 16px var(--primary-glow),0 2px 8px var(--shadow-subtle)}.welcome-btn-icon{width:18px;height:18px;flex-shrink:0;position:relative;z-index:1}.welcome-btn-label{position:relative;z-index:1}.welcome-btn--secondary{background:var(--surface);color:var(--text-primary);border:1.5px solid var(--border);box-shadow:0 4px 16px var(--shadow-subtle),inset 0 1px 0 var(--highlight-ghost)}.welcome-btn--secondary:hover{background:var(--surface-hover);border-color:var(--border-hover);transform:translateY(-1px);box-shadow:0 6px 20px var(--shadow-soft),inset 0 1px 0 var(--highlight-faint)}.welcome-btn--secondary:active{transform:translateY(0);box-shadow:0 2px 8px var(--shadow-subtle)}.welcome-signin-hint{font-size:13px;color:var(--text-tertiary);letter-spacing:.01em;margin:4px 0 0;animation:welcomeFadeIn .8s cubic-bezier(.16,1,.3,1) .5s backwards}.welcome-signin-link{background:none;border:none;padding:0;font:inherit;font-size:13px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:color var(--transition-fast);text-decoration:none;border-bottom:1px solid transparent}.welcome-signin-link:hover{color:var(--primary);border-bottom-color:var(--primary)}.welcome-signin-link:active{opacity:.7}.welcome-bottom-spacer{flex-shrink:0;height:var(--safe-area-bottom, 0px)}body.capacitor-native .welcome-page{padding:24px 20px;padding-top:calc(24px + var(--safe-area-top, 0px));padding-bottom:calc(24px + var(--safe-area-bottom, 0px))}body.capacitor-native .welcome-content{gap:28px}body.capacitor-native .welcome-logo-circle{width:130px;height:130px}body.capacitor-native .welcome-mascot{width:90px}body.capacitor-native .welcome-title-image{width:240px}body.capacitor-native .welcome-headline{font-size:clamp(24px,6vw,28px)}body.capacitor-native .welcome-btn{min-height:60px;padding:18px 32px;font-size:19px;border-radius:18px}body.capacitor-native .welcome-btn-icon{width:20px;height:20px}@media(max-width:380px){.welcome-logo-circle{width:120px;height:120px}.welcome-mascot{width:85px}.welcome-headline{font-size:22px}.welcome-description{font-size:var(--text-sm)}}@media(max-height:700px){.welcome-content{gap:24px}.welcome-logo-circle{width:120px;height:120px}.welcome-mascot{width:85px}.welcome-audio-waves{height:60px}.wave-bar--1{height:16px}.wave-bar--2{height:32px}.wave-bar--3{height:22px}.welcome-title-image{width:220px}.welcome-headline{font-size:1.35rem}.welcome-description{font-size:.9rem}.welcome-btn{min-height:52px;padding:14px 24px}}@media(max-height:640px){.welcome-content{gap:20px}.welcome-logo-section{gap:14px}.welcome-logo-circle{width:100px;height:100px}.welcome-mascot{width:70px}.welcome-title-image{width:180px}.welcome-headline{font-size:22px}.welcome-btn{min-height:52px;padding:14px 24px}}@media(max-height:500px){.welcome-page{justify-content:flex-start;padding-top:calc(16px + var(--safe-area-top, 0px))}.welcome-content{gap:16px}.welcome-logo-circle{width:80px;height:80px}.welcome-mascot{width:56px}.welcome-audio-waves{height:40px}.wave-bar--1{height:12px}.wave-bar--2{height:24px}.wave-bar--3{height:16px}.welcome-title-image{width:160px}.welcome-tagline-section{gap:8px}.welcome-headline{font-size:20px}.welcome-description{font-size:var(--text-sm)}.welcome-cta-section{gap:10px}.welcome-btn{min-height:48px;padding:12px 20px;font-size:16px;border-radius:14px}}.animated-step-sequence{flex:1;display:flex;align-items:center;justify-content:center;padding:48px 24px 80px;position:relative;overflow:hidden}.animated-step-ambient{position:absolute;inset:0;background:radial-gradient(ellipse 90% 60% at 50% 0%,var(--primary-subtle),transparent 55%),radial-gradient(ellipse 80% 50% at 50% 100%,var(--primary-subtle),transparent 55%);animation:animated-step-breathe 4s ease-in-out infinite;opacity:.9}.animated-step-floating{position:absolute;inset:0;pointer-events:none;overflow:hidden}.animated-step-dot{position:absolute;width:6px;height:6px;border-radius:50%;background:var(--primary-glow);opacity:.4;animation:animated-step-float 4s ease-in-out infinite}.animated-step-dot.dot-1{left:18%;bottom:12%;animation-delay:0s}.animated-step-dot.dot-2{left:32%;bottom:9%;animation-delay:.2s}.animated-step-dot.dot-3{left:46%;bottom:14%;animation-delay:.4s}.animated-step-dot.dot-4{left:58%;bottom:10%;animation-delay:.6s}.animated-step-content{max-width:800px;width:100%;text-align:center;position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;padding:12px;gap:0}.animated-step-icon-slot{height:calc(104px + var(--spacing-icon, 24px));display:flex;align-items:center;justify-content:center;flex-shrink:0}.animated-step-icon{width:104px;margin-bottom:1rem;height:104px;border-radius:50%;background:linear-gradient(135deg,var(--primary) 0%,var(--primary) 100%);display:flex;align-items:center;justify-content:center;box-shadow:0 0 80px var(--primary-glow),0 0 120px var(--primary-subtle),0 18px 46px var(--overlay-dark);opacity:0;transform:scale(.72);transition:all .6s cubic-bezier(.34,1.56,.64,1);pointer-events:none}.animated-step-icon.is-visible{opacity:1;transform:scale(1);pointer-events:auto}.animated-step-check-icon{width:52px;height:52px;stroke:#fff;stroke-width:2.5;fill:none;stroke-linecap:round;stroke-linejoin:round}.animated-step-text-slot{min-height:120px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.animated-step-text{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-text, 32px);opacity:0;transform:translateY(22px);transition:all .6s cubic-bezier(.16,1,.3,1);pointer-events:none}.animated-step-text.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.animated-step-headline{font-size:34px;font-weight:800;margin:0;letter-spacing:-.02em;line-height:1.2;color:var(--text-primary)}.animated-step-headline2{font-size:34px}.animated-step-subtext{font-size:22px;font-weight:500;color:var(--text-secondary);margin:0;line-height:1.5;opacity:0;transform:translateY(16px);transition:all .6s cubic-bezier(.16,1,.3,1)}.animated-step-subtext.is-visible{opacity:1;transform:translateY(0)}.animated-step-bullets{list-style:none;padding:0;margin:8px 0 0;text-align:left;max-width:480px;opacity:0;transform:translateY(16px);transition:all .6s cubic-bezier(.16,1,.3,1)}.animated-step-bullets.is-visible{opacity:1;transform:translateY(0)}.animated-step-bullet{position:relative;font-size:var(--text-base);font-weight:450;color:var(--overlay-medium);line-height:1.55;padding-left:20px;margin-bottom:12px}.animated-step-bullet:before{content:"";position:absolute;left:0;top:8px;width:5px;height:5px;border-radius:50%;background:var(--overlay-subtle)}.animated-step-bullet:last-child{margin-bottom:0}.animated-step-content-slot{display:flex;align-items:center;justify-content:center;flex:1;width:100%;max-width:100%;padding:20px 0;opacity:0;transform:translateY(20px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1);pointer-events:none}.animated-step-content-slot.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.animated-step-sequence.has-content .animated-step-text-slot{min-height:auto;flex-shrink:0}.animated-step-sequence.has-content .animated-step-icon-slot{height:auto;min-height:0}.animated-step-sequence.has-content .animated-step-actions-slot{height:auto;padding-top:0}.animated-step-sequence.has-content .animated-step-click-hint{display:none}.animated-step-actions-slot{height:100px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:var(--spacing-button, 40px);flex-shrink:0}.animated-step-actions{display:flex;flex-direction:column;gap:14px;align-items:center;opacity:0;transform:translateY(16px);transition:all var(--transition-slow) cubic-bezier(.16,1,.3,1);pointer-events:none}.animated-step-actions.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.highlight-cyan{color:var(--cyan)}.highlight-orange{color:var(--orange, #fb923c)}.animated-step-button{border:none;cursor:pointer;padding:18px 48px;border-radius:16px;font-size:17px;font-weight:700;color:var(--bg-primary);letter-spacing:.01em;background:linear-gradient(135deg,var(--primary) 0%,var(--primary) 50%,var(--primary-hover) 100%);background-size:220% 220%;box-shadow:0 14px 46px var(--primary-glow),0 6px 18px var(--shadow-medium),inset 0 1px 0 var(--highlight-soft);transition:all var(--transition-normal),background-position 3s ease-in-out;animation:animated-step-shimmer 3.2s ease-in-out infinite}.animated-step-button:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 18px 56px var(--primary-glow),0 10px 26px var(--shadow-heavy),inset 0 1px 0 var(--highlight-soft);background-position:-50% 50%}.animated-step-button:active{transform:translateY(0) scale(.99)}.animated-step-skip{background:none;border:none;color:var(--text-tertiary);font-size:var(--text-sm);cursor:pointer;padding:6px 12px;transition:color var(--transition-normal)}.animated-step-skip:hover{color:var(--text-secondary)}.animated-step-note{margin-top:20px;font-size:var(--text-sm);color:var(--text-tertiary);text-align:center;line-height:1.4;opacity:0;transform:translateY(4px);transition:opacity var(--transition-slow) cubic-bezier(.16,1,.3,1) var(--transition-normal),transform var(--transition-slow) cubic-bezier(.16,1,.3,1) var(--transition-normal)}.animated-step-note.is-visible{opacity:.7;transform:translateY(0)}@keyframes animated-step-breathe{0%,to{opacity:1}50%{opacity:.74}}@keyframes animated-step-float{0%,to{transform:translateY(0) scale(1);opacity:.35}50%{transform:translateY(-48px) scale(1.4);opacity:.8}}@keyframes animated-step-shimmer{0%{background-position:220% 50%}to{background-position:-220% 50%}}@media(max-width:600px){.animated-step-sequence{padding:32px 20px 48px}.animated-step-icon-slot{height:110px}.animated-step-text-slot{min-height:130px}.animated-step-actions-slot{height:90px}.animated-step-headline{font-size:26px;padding:0 8px}.animated-step-subtext{font-size:17px;line-height:1.7}.animated-step-button{width:100%}}.animated-step-sequence--hype .animated-step-text{opacity:0;pointer-events:none}.animated-step-sequence--hype .animated-step-text.is-visible{opacity:1;pointer-events:auto}.animated-step-sequence--hype .animated-step-headline{opacity:0;transform:translate(-100px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}.animated-step-sequence--hype .animated-step-text.is-visible .animated-step-headline{opacity:1;transform:translate(0)}.animated-step-sequence--hype .animated-step-subtext{opacity:0;transform:translate(100px);transition:opacity .7s cubic-bezier(.16,1,.3,1) var(--transition-fast),transform .7s cubic-bezier(.16,1,.3,1) var(--transition-fast)}.animated-step-sequence--hype .animated-step-text.is-visible .animated-step-subtext{opacity:1;transform:translate(0)}.animated-step-sequence--hype .animated-step-actions{opacity:0;transform:translateY(20px);transition:opacity var(--transition-slow) cubic-bezier(.16,1,.3,1),transform var(--transition-slow) cubic-bezier(.16,1,.3,1);pointer-events:none}.animated-step-sequence--hype .animated-step-actions.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.animated-step-sequence--dynamicSlide .animated-step-text{opacity:0;pointer-events:none}.animated-step-sequence--dynamicSlide .animated-step-text.is-visible{opacity:1;pointer-events:auto}.animated-step-sequence--dynamicSlide .animated-step-headline{opacity:0;transform:translate(-60px) scale(.95);transition:opacity var(--transition-slow) cubic-bezier(.34,1.56,.64,1),transform .6s cubic-bezier(.34,1.56,.64,1)}.animated-step-sequence--dynamicSlide .animated-step-text.is-visible .animated-step-headline{opacity:1;transform:translate(0) scale(1);animation:dynamicSlide-hover 3s ease-in-out infinite;animation-delay:.6s}.animated-step-sequence--dynamicSlide .animated-step-subtext{opacity:0;transform:translate(60px) scale(.95);transition:opacity var(--transition-slow) cubic-bezier(.34,1.56,.64,1) var(--transition-fast),transform .6s cubic-bezier(.34,1.56,.64,1) var(--transition-fast)}.animated-step-sequence--dynamicSlide .animated-step-text.is-visible .animated-step-subtext{opacity:1;transform:translate(0) scale(1);animation:dynamicSlide-hover 3s ease-in-out infinite;animation-delay:.8s;animation-direction:reverse}.animated-step-sequence--dynamicSlide .animated-step-actions{opacity:0;transform:translateY(30px) scale(.9);transition:opacity var(--transition-slow) cubic-bezier(.34,1.56,.64,1),transform .5s cubic-bezier(.34,1.56,.64,1);pointer-events:none}.animated-step-sequence--dynamicSlide .animated-step-actions.is-visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;animation:dynamicSlide-hover-subtle 4s ease-in-out infinite;animation-delay:1s}@keyframes dynamicSlide-hover{0%,to{transform:translate(0) scale(1)}25%{transform:translate(-2px) scale(1.002)}75%{transform:translate(2px) scale(.998)}}@keyframes dynamicSlide-hover-subtle{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-2px) scale(1.005)}}@keyframes slideRight-in{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}.animated-step-click-hint{position:absolute;bottom:40px;left:50%;transform:translate(-50%);font-size:var(--text-sm);font-weight:500;color:var(--primary);animation:clickHint-pulse 2s ease-in-out infinite}@keyframes clickHint-pulse{0%,to{opacity:.5}50%{opacity:1}}.animated-step-home-button{position:absolute;top:20px;left:20px;width:44px;height:44px;border-radius:12px;background:var(--highlight-ghost);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--highlight-subtle);color:var(--overlay-medium);cursor:pointer;z-index:50;display:flex;align-items:center;justify-content:center;padding:0;transition:all var(--transition-normal)}.animated-step-home-button svg{width:22px;height:22px}.animated-step-home-button:hover{background:var(--highlight-subtle);color:var(--overlay-heavy);border-color:var(--highlight-soft);transform:scale(1.05)}.animated-step-home-button:active{transform:scale(.95);background:var(--highlight-subtle)}@media(max-width:600px){.animated-step-home-button{top:12px;left:12px;width:40px;height:40px;border-radius:10px}.animated-step-home-button svg{width:20px;height:20px}}body.capacitor-native .animated-step-home-button{top:calc(20px + var(--safe-area-top, 0px));left:calc(20px + var(--safe-area-left, 0px))}@media(max-width:600px){body.capacitor-native .animated-step-home-button{top:calc(12px + var(--safe-area-top, 0px));left:calc(12px + var(--safe-area-left, 0px))}}.animated-step-navigation{position:absolute;bottom:24px;left:50%;transform:translate(-50%);display:flex;gap:10px;align-items:center;z-index:10;padding:8px 16px;background:var(--shadow-soft);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:20px}.animated-step-nav-dot{width:8px;height:8px;border-radius:50%;background:var(--overlay-subtle);border:none;cursor:pointer;transition:all var(--transition-slow) cubic-bezier(.16,1,.3,1);padding:0;position:relative}.animated-step-nav-dot:hover{background:var(--overlay-medium);transform:scale(1.2)}.animated-step-nav-dot.active{background:var(--primary);width:24px;border-radius:4px;box-shadow:0 0 12px var(--primary-glow)}.animated-step-nav-dot.active:hover{transform:scale(1);cursor:default}@media(max-width:600px){.animated-step-navigation{bottom:16px;gap:8px;padding:6px 12px}.animated-step-nav-dot{width:6px;height:6px}.animated-step-nav-dot.active{width:18px}}.animated-step-content-slot--punchline{opacity:0;transform:translateY(40px) scale(.95);transition:all .6s cubic-bezier(.16,1,.3,1)}.animated-step-content-slot--punchline.is-visible{opacity:1;transform:translateY(0) scale(1)}.animated-step-sequence--punchline .animated-step-text{opacity:1}.animated-step-headline--punchline-container{display:block;overflow:hidden}.animated-step-headline--punchline-main{display:inline-block;opacity:0;transform:translate(-40px);transition:all .5s cubic-bezier(.16,1,.3,1);margin-right:.3em}.animated-step-headline--punchline-main.is-visible{opacity:1;transform:translate(0)}.animated-step-headline--punchline-punch{display:inline-block;opacity:0;transform:translate(40px);transition:all .5s cubic-bezier(.34,1.56,.64,1)}.animated-step-headline--punchline-punch.is-visible{opacity:1;transform:translate(0)}.animated-step-sequence--punchline .animated-step-actions{opacity:0;transform:translateY(20px);transition:all .4s cubic-bezier(.16,1,.3,1)}.animated-step-sequence--punchline .animated-step-actions.is-visible{opacity:1;transform:translateY(0)}.shiw-sequence{width:100%;height:100%;min-height:100dvh;display:flex;flex-direction:column;background:var(--bg-primary)}.shiw-animated-sequence{flex:1;display:flex;flex-direction:column}.shiw-animated-sequence.has-content .animated-step-text-slot{min-height:auto;padding-bottom:8px}.shiw-recording{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:320px;margin:0 auto;gap:16px}.shiw-tap-hint{font-size:1rem;font-weight:600;color:var(--text-secondary);letter-spacing:.01em;animation:shiwHintPulse 2.5s ease-in-out infinite}@keyframes shiwHintPulse{0%,to{opacity:.5}50%{opacity:1}}.shiw-phone-wrap{width:220px;position:relative;will-change:transform}.shiw-phone-side-btn{position:absolute;width:3px;background:#555;z-index:5}.shiw-phone-side-btn--power{right:-3px;top:70px;height:36px;border-radius:0 2px 2px 0}.shiw-phone-side-btn--vol-up{left:-3px;top:52px;height:20px;border-radius:2px 0 0 2px}.shiw-phone-side-btn--vol-down{left:-3px;top:78px;height:20px;border-radius:2px 0 0 2px}.shiw-phone-side-btn--breakdown{z-index:20}.shiw-phone{border-radius:28px;background:linear-gradient(145deg,#6b6b6b,#555);padding:8px;box-shadow:0 20px 50px var(--shadow-medium)}.shiw-screen{border-radius:24px;height:430px;position:relative;overflow:hidden;background:#1a1a1a}.shiw-dynamic-island{position:absolute;top:6px;left:50%;transform:translate(-50%);width:60px;height:18px;background:#000;border-radius:16px;z-index:25}.shiw-video-clip{position:absolute;inset:0;overflow:hidden;border-radius:20px;transform:translateZ(0)}.shiw-video{position:absolute;top:50%;left:50%;width:150%;height:150%;background:linear-gradient(180deg,#e8ddd4,#d9cec4);will-change:transform}.shiw-floor{position:absolute;bottom:0;left:-20px;right:-20px;height:55%;background:linear-gradient(180deg,#c4b8a8,#b0a090)}.shiw-bubble{position:absolute;top:22%;left:50%;transform:translate(-50%) translateY(0) scale(1);background:#fffffff2;padding:6px 12px;border-radius:12px;font-size:var(--text-sm);font-weight:700;color:#333;box-shadow:0 2px 10px #0003;white-space:nowrap;z-index:20;transition:all .35s cubic-bezier(.22,1,.36,1)}.shiw-bubble.is-hidden{opacity:0;transform:translate(-50%) translateY(-5px) scale(.95)}.shiw-bubble.is-visible{opacity:1}.shiw-bubble-tail{position:absolute;bottom:-5px;left:50%;transform:translate(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid rgba(255,255,255,.95)}.shiw-instructors{position:absolute;top:32%;left:50%;transform:translate(-50%);display:flex;gap:12px;align-items:flex-end}.shiw-dance-couple{display:flex;align-items:flex-end;justify-content:center;gap:4px;position:relative}.shiw-capsule-dancer{display:flex;flex-direction:column;align-items:center;position:relative}.shiw-capsule-head{width:24px;height:24px;background:#c4bfb0;border-radius:50%;border:2px solid #a8a395;position:relative;z-index:2}.shiw-capsule-head:after{content:"";position:absolute;bottom:6px;left:50%;transform:translate(-50%);width:8px;height:3px;border:1.5px solid #8a8578;border-top:none;border-radius:0 0 5px 5px}.shiw-capsule-body{width:28px;height:44px;background:#c4bfb0;border-radius:14px;margin-top:-3px;border:2px solid #a8a395;position:relative}.shiw-capsule-dancer.is-leader .shiw-capsule-head,.shiw-capsule-dancer.is-leader .shiw-capsule-body{background:#b8b3a3;border-color:#9c978a}.shiw-crowd-person{position:absolute;z-index:15;will-change:transform;backface-visibility:hidden}.shiw-crowd-head{border-radius:50% 50% 45% 45%;position:relative;margin-bottom:-8px}.shiw-crowd-hair-short{position:absolute;top:-4px;left:4px;right:4px;height:35%;border-radius:50% 50% 0 0}.shiw-crowd-hair-mens{position:absolute;top:-10%;left:-5%;right:-5%;height:90%;border-radius:45% 45% 40% 40%;z-index:2}.shiw-crowd-ear{position:absolute;width:15%;height:24%;background:inherit;border-radius:40% 40% 45% 45%;top:58%;transform:translateY(-50%);z-index:1}.shiw-crowd-ear--left{left:-10%}.shiw-crowd-ear--right{right:-10%}.shiw-crowd-hair-puffy{position:absolute;top:-15%;left:-8%;right:-8%;height:50%;border-radius:50%}.shiw-crowd-hair-top{position:absolute;top:-4px;left:0;right:0;height:55%;border-radius:50% 50% 30% 30%;z-index:2}.shiw-crowd-hair-long{position:absolute;top:35%;left:50%;transform:translate(-50%);width:85%;height:140px;border-radius:0 0 40% 40%;z-index:1}.shiw-crowd-hair-side{position:absolute;top:30%;width:30%;height:100px;border-radius:0 0 50% 50%;z-index:1}.shiw-crowd-hair-side--left{left:-8%}.shiw-crowd-hair-side--right{right:-8%}.shiw-crowd-hair-bun-top{position:absolute;top:-4px;left:6px;right:6px;height:30%;border-radius:50% 50% 0 0}.shiw-crowd-hair-bun{position:absolute;top:-20px;left:50%;transform:translate(-50%);width:28px;height:28px;border-radius:50%}.shiw-crowd-body{height:250px;border-radius:50% 50% 0 0/30% 30% 0 0;transform:translateZ(0)}.shiw-noise{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.02) 2px,rgba(0,0,0,.02) 4px);pointer-events:none;opacity:.7;z-index:16}.shiw-vignette{position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 40%,rgba(0,0,0,.2) 100%);pointer-events:none;z-index:17}.shiw-rec{position:absolute;top:30px;left:10px;background:#00000080;padding:5px 10px;border-radius:12px;display:flex;align-items:center;gap:6px;z-index:30}.shiw-rec-dot{width:7px;height:7px;background:#ff3b30;border-radius:50%}.shiw-rec-text{font-size:var(--text-xs);font-weight:700;color:#fff}.shiw-timer{position:absolute;top:30px;right:10px;background:#00000080;padding:5px 10px;border-radius:10px;z-index:30;font-size:var(--text-xs);font-weight:700;color:#fff;font-variant-numeric:tabular-nums}.shiw-grid{position:absolute;inset:0;pointer-events:none;z-index:18;border-radius:20px;overflow:hidden}.shiw-grid-v,.shiw-grid-h{position:absolute;background:#ffffff26}.shiw-grid-v--a{left:33.33%;top:0;bottom:0;width:1px}.shiw-grid-v--b{left:66.66%;top:0;bottom:0;width:1px}.shiw-grid-h--a{top:33.33%;left:0;right:0;height:1px}.shiw-grid-h--b{top:66.66%;left:0;right:0;height:1px}.shiw-zoom{position:absolute;bottom:60px;left:50%;transform:translate(-50%);display:flex;gap:5px;z-index:30}.shiw-zoom-pill{width:28px;height:28px;border-radius:50%;background:#0006;display:flex;align-items:center;justify-content:center;color:#fff;font-size:0;font-weight:700}.shiw-zoom-pill:after{content:"";width:8px;height:8px;border-radius:50%;background:#fff9}.shiw-zoom-pill.is-active{background:#ffc83ce6}.shiw-zoom-pill.is-active:after{width:12px;height:12px;background:#fffffff2}.shiw-controls{position:absolute;bottom:12px;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:28px;z-index:30}.shiw-gallery{width:28px;height:28px;border-radius:5px;background:#555;border:2px solid rgba(255,255,255,.3)}.shiw-record{width:44px;height:44px;border-radius:50%;border:3px solid #fff;display:flex;align-items:center;justify-content:center}.shiw-record-inner{width:16px;height:16px;border-radius:4px;background:#ff3b30}.shiw-flip{width:28px;height:28px;border-radius:50%;background:#0006;display:flex;align-items:center;justify-content:center;color:#fff}.shiw-breakdown{display:flex;flex-direction:column;align-items:center;gap:20px;width:100%;max-width:320px;margin:0 auto}.shiw-preview{position:relative;width:220px}.shiw-breakdown-screen{border-radius:24px;overflow:hidden;position:relative;background:var(--surface);height:414px}.shiw-mini-header{background:var(--surface);border-bottom:1px solid var(--border);padding:10px 12px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:10}.shiw-mini-menu{width:24px;height:24px;background:var(--surface-alt);border-radius:6px;display:flex;align-items:center;justify-content:center;gap:2px;flex-direction:column}.shiw-mini-menu div{width:10px;height:1.5px;background:var(--text-tertiary);border-radius:1px;opacity:.7}.shiw-mini-title{font-size:var(--text-sm);font-weight:800;color:var(--text-primary);letter-spacing:.2px}.shiw-mini-spacer{width:24px}.shiw-cards-viewport{height:370px;overflow:hidden;position:relative}.shiw-cards{transition:transform .02s linear;padding:10px;display:flex;flex-direction:column;gap:10px}.shiw-card{background:var(--surface);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-card);border:1px solid color-mix(in srgb,var(--text-primary) 6%,transparent)}.shiw-card-header{padding:10px 12px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--border)}.shiw-step-badge{width:24px;height:24px;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:800;color:var(--text-on-primary);flex-shrink:0}.shiw-step-title{font-size:var(--text-sm);font-weight:700;color:var(--text-primary)}.shiw-thumb{height:160px;background:linear-gradient(180deg,#e8ddd4,#d9cec4);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.shiw-thumb-floor{position:absolute;bottom:0;left:0;right:0;height:35%;background:linear-gradient(180deg,#c4b8a8,#b0a090)}.shiw-thumb-floor.is-playing{height:30%;background:linear-gradient(180deg,#b8a898,#a89888)}.shiw-thumb-instructors{position:absolute;bottom:35%;left:50%;transform:translate(-50%);display:flex;gap:10px;align-items:flex-end}.shiw-thumb-dance-couple{display:flex;align-items:flex-end;justify-content:center;gap:3px;position:relative}.shiw-thumb-capsule-dancer{display:flex;flex-direction:column;align-items:center;position:relative}.shiw-thumb-capsule-head{width:18px;height:18px;background:#c4bfb0;border-radius:50%;border:2px solid #a8a395;position:relative;z-index:2}.shiw-thumb-capsule-head:after{content:"";position:absolute;bottom:4px;left:50%;transform:translate(-50%);width:6px;height:2px;border:1px solid #8a8578;border-top:none;border-radius:0 0 4px 4px}.shiw-thumb-capsule-body{width:20px;height:32px;background:#c4bfb0;border-radius:10px;margin-top:-2px;border:2px solid #a8a395;position:relative}.shiw-thumb-capsule-dancer.is-leader .shiw-thumb-capsule-head,.shiw-thumb-capsule-dancer.is-leader .shiw-thumb-capsule-body{background:#b8b3a3;border-color:#9c978a}.shiw-progress{position:absolute;bottom:8px;left:8px;right:8px;height:3px;background:color-mix(in srgb,var(--text-primary) 20%,transparent);border-radius:2px}.shiw-progress-fill{height:100%;background:var(--primary);border-radius:2px;transition:width .1s linear}.shiw-play{width:36px;height:36px;background:#fffffff2;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0003;transition:all .2s cubic-bezier(.22,1,.36,1);z-index:6}.shiw-play-triangle{width:0;height:0;border-left:10px solid var(--primary);border-top:6px solid transparent;border-bottom:6px solid transparent;margin-left:3px}.shiw-play.is-pressed{width:36px;height:36px;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);transform:scale(1.2);box-shadow:0 0 30px var(--primary-glow),0 4px 20px var(--primary-border)}.shiw-play.is-pressed .shiw-play-triangle{border-left:10px solid #fff;border-top:6px solid transparent;border-bottom:6px solid transparent}.shiw-ripple{position:absolute;width:60px;height:60px;border-radius:50%;border:3px solid color-mix(in srgb,var(--primary) 60%,transparent);animation:shiwRipple .6s ease-out}@keyframes shiwRipple{0%{transform:scale(.5);opacity:1}to{transform:scale(2);opacity:0}}.shiw-maximize{position:absolute;top:6px;right:6px;width:20px;height:20px;background:#fffc;border-radius:5px;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);color:color-mix(in srgb,var(--text-primary) 60%,transparent)}.shiw-maximize.is-playing{background:color-mix(in srgb,var(--primary) 85%,transparent);color:var(--text-on-primary)}.shiw-maximize.is-clicked{width:24px;height:24px;border-radius:6px;transform:scale(1.3);box-shadow:0 0 12px var(--primary-glow)}.shiw-fade{position:absolute;left:0;right:0;height:30px;pointer-events:none}.shiw-fade--top{top:0;background:linear-gradient(180deg,var(--surface) 0%,transparent 100%)}.shiw-fade--bottom{bottom:0;background:linear-gradient(0deg,var(--surface) 0%,transparent 100%)}.shiw-overlay{position:absolute;inset:0;background:#0000004d;opacity:0;transition:opacity var(--transition-normal);pointer-events:none;z-index:20}.shiw-overlay.is-open{opacity:1;pointer-events:auto}.shiw-sidebar{position:absolute;top:0;left:0;width:80%;height:100%;background:linear-gradient(180deg,#fffbf7,#fff5ee);box-shadow:4px 0 24px var(--shadow-soft);transform:translate(-100%);transition:transform .4s cubic-bezier(.22,1,.36,1);z-index:30;display:flex;flex-direction:column;border-radius:18px 0 0 18px;overflow:hidden}.shiw-sidebar.is-open{transform:translate(0)}.shiw-sidebar-scroll{flex:1;overflow:hidden;position:relative}.shiw-sidebar-content{transition:transform .05s linear}.shiw-sidebar-logo{display:flex;flex-direction:column;align-items:center;padding:20px 14px 16px}.shiw-sidebar-logo-circle{width:44px;height:44px;background:var(--surface);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;box-shadow:0 4px 16px var(--primary-subtle);margin-bottom:6px}.shiw-sidebar-brand{font-size:16px;font-weight:900;background:linear-gradient(135deg,var(--primary) 0%,color-mix(in srgb,var(--primary) 70%,var(--pink)) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.shiw-sidebar-steps{display:flex;flex-direction:column;gap:6px;padding:0 10px}.shiw-sidebar-step{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:50px;background:var(--surface);box-shadow:0 2px 8px var(--shadow-subtle);transform:scale(1);transition:all .2s cubic-bezier(.22,1,.36,1)}.shiw-sidebar-step.is-selected{background:linear-gradient(135deg,var(--primary) 0%,color-mix(in srgb,var(--primary) 65%,var(--pink)) 100%);box-shadow:0 4px 16px var(--primary-glow);transform:scale(.97)}.shiw-sidebar-step-num{width:24px;height:24px;border-radius:50%;background:color-mix(in srgb,var(--primary) 10%,var(--surface));display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:900;color:var(--primary);flex-shrink:0}.shiw-sidebar-step.is-selected .shiw-sidebar-step-num{background:#ffffff40;color:#fff}.shiw-sidebar-step-title{font-size:var(--text-sm);font-weight:700;color:var(--text-secondary)}.shiw-sidebar-step.is-selected .shiw-sidebar-step-title{color:#fff}.shiw-maximize-transition{position:absolute;inset:0;z-index:50;pointer-events:none;overflow:hidden}.shiw-maximize-card{position:absolute;background:linear-gradient(180deg,#e8ddd4,#d9cec4);border-radius:12px;overflow:hidden;box-shadow:0 10px 40px #0000004d;animation:shiwMaximizeExpand .4s cubic-bezier(.22,1,.36,1) forwards}@keyframes shiwMaximizeExpand{0%{top:50%;left:10px;right:10px;height:160px;transform:translateY(-50%);border-radius:12px}to{top:0;left:0;right:0;height:100%;transform:translateY(0);border-radius:20px}}.shiw-fullscreen{height:414px;background:linear-gradient(180deg,#e8ddd4,#d9cec4);position:relative;overflow:hidden}.shiw-fullscreen-slide{position:absolute;inset:0;transform:translate(0);transition:transform .35s cubic-bezier(.22,1,.36,1)}.shiw-fullscreen-slide.is-out{transform:translate(-100%)}.shiw-fullscreen-slide.is-waiting{transform:translate(100%);transition:none}.shiw-fullscreen-slide.is-incoming{transform:translate(0);transition:transform .35s cubic-bezier(.22,1,.36,1)}.shiw-fullscreen-instructors{position:absolute;bottom:35%;left:50%;transform:translate(-50%)}.shiw-full-dance-couple{display:flex;align-items:flex-end;justify-content:center;gap:5px;position:relative}.shiw-full-capsule-dancer{display:flex;flex-direction:column;align-items:center;position:relative}.shiw-full-capsule-head{width:28px;height:28px;background:#c4bfb0;border-radius:50%;border:3px solid #a8a395;position:relative;z-index:2}.shiw-full-capsule-head:after{content:"";position:absolute;bottom:7px;left:50%;transform:translate(-50%);width:9px;height:3px;border:2px solid #8a8578;border-top:none;border-radius:0 0 5px 5px}.shiw-full-capsule-body{width:32px;height:52px;background:#c4bfb0;border-radius:16px;margin-top:-4px;border:3px solid #a8a395;position:relative}.shiw-full-capsule-dancer.is-leader .shiw-full-capsule-head,.shiw-full-capsule-dancer.is-leader .shiw-full-capsule-body{background:#b8b3a3;border-color:#9c978a}.shiw-fullscreen-topbar{position:absolute;top:10px;left:10px;right:10px;display:flex;align-items:center;justify-content:space-between;z-index:10}.shiw-fullscreen-badge{background:transparent;padding:0;border-radius:0;display:flex;align-items:center;gap:0}.shiw-fullscreen-badge .shiw-step-badge{width:32px;height:32px;font-size:16px;box-shadow:0 2px 8px #0000004d}.shiw-fullscreen-title{display:none}.shiw-fullscreen-icons{display:flex;gap:6px}.shiw-fullscreen-icon{width:28px;height:28px;background:#00000080;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff}.shiw-fullscreen-icon svg{width:16px;height:16px}.shiw-fullscreen-play{position:absolute;top:50%;left:50%;width:52px;height:52px;transform:translate(-50%,-50%);background:#fffffff2;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px #00000040;z-index:11}.shiw-fullscreen-play .shiw-play-triangle{border-left-width:14px;border-top-width:8px;border-bottom-width:8px;margin-left:4px}.shiw-fullscreen-progress{position:absolute;bottom:10px;left:10px;right:10px;z-index:10;height:3px;background:#0000004d;border-radius:2px;overflow:hidden}.shiw-fullscreen-progress-fill{height:100%;background:var(--primary);border-radius:2px;transition:width .1s linear}.shiw-dots{position:absolute;bottom:24px;left:50%;transform:translate(-50%);display:flex;gap:6px;z-index:10}.shiw-dot{width:6px;height:6px;border-radius:50%;background:#0000004d;transition:all var(--transition-slow)}.shiw-dot.is-active{width:18px;border-radius:3px;background:var(--primary)}.shiw-swipe-gesture{position:absolute;top:62%;left:72%;z-index:20;pointer-events:none;opacity:0}.shiw-swipe-gesture.is-visible{opacity:1;animation:shiwSwipeDrag .5s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes shiwSwipeDrag{0%{left:72%;opacity:0;transform:translateY(-50%) scale(.5)}20%{opacity:1;transform:translateY(-50%) scale(1)}80%{opacity:1;transform:translateY(-50%) scale(1)}to{left:32%;opacity:0;transform:translateY(-50%) scale(.8)}}.shiw-swipe-touch{width:36px;height:36px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#fffffff2,#ffffffb3);box-shadow:0 0 0 3px #ffffff4d,0 4px 20px #0000004d;position:relative}.shiw-swipe-touch:before{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(255,255,255,.5);animation:shiwTouchRipple .4s ease-out}@keyframes shiwTouchRipple{0%{transform:scale(.8);opacity:1}to{transform:scale(1.5);opacity:0}}.shiw-swipe-trail{position:absolute;top:50%;left:100%;transform:translateY(-50%);display:flex;flex-direction:row-reverse;align-items:center;gap:6px;padding-left:10px}.shiw-swipe-trail-dot{width:6px;height:6px;border-radius:50%;background:#fff9;box-shadow:0 2px 8px #00000026}.shiw-swipe-trail-dot:nth-child(1){width:5px;height:5px;opacity:.3}.shiw-swipe-trail-dot:nth-child(2){width:5px;height:5px;opacity:.5}.shiw-swipe-trail-dot:nth-child(3){opacity:.7}.shiw-instructions{width:100%;display:flex;justify-content:center;gap:32px;padding:8px 0}.shiw-instruction{display:flex;flex-direction:column;align-items:center;gap:8px}.shiw-instruction-icon{width:48px;height:48px;background:linear-gradient(145deg,var(--primary) 0%,var(--primary-dark) 100%);border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;color:#fff;flex-shrink:0;box-shadow:0 4px 12px var(--primary-glow)}.shiw-instruction-text{color:var(--text-primary);font-size:.875rem;font-weight:600;line-height:1.3;text-align:center}.shiw-instruction-text strong{display:block;color:var(--text-primary);font-weight:700}.shiw-cta{width:100%;font-size:16px!important;min-height:52px;padding:14px 24px!important;animation:shiw-beckon 2s ease-in-out 2s infinite}@keyframes shiw-beckon{0%,to{transform:scale(1);box-shadow:0 4px 12px #00000026,0 0 0 0 var(--primary-glow)}50%{transform:scale(1.03);box-shadow:0 6px 20px #0003,0 0 20px 4px var(--primary-glow)}}@media(max-height:800px){.shiw-screen{height:380px}.shiw-breakdown-screen,.shiw-fullscreen{height:364px}.shiw-cards-viewport{height:320px}}@media(max-height:700px){.shiw-phone-wrap,.shiw-preview{width:200px}.shiw-screen{height:340px;border-radius:20px}.shiw-breakdown-screen,.shiw-fullscreen{height:324px;border-radius:20px}.shiw-cards-viewport{height:280px}.shiw-phone{padding:7px;border-radius:24px}.shiw-breakdown{gap:16px}.shiw-instructions{gap:24px}.shiw-instruction-icon{width:44px;height:44px}.shiw-instruction-icon svg{width:20px;height:20px}}@media(max-height:600px){.shiw-phone-wrap,.shiw-preview{width:180px}.shiw-screen{height:280px;border-radius:18px}.shiw-breakdown-screen,.shiw-fullscreen{height:264px;border-radius:18px}.shiw-cards-viewport{height:220px}.shiw-phone{padding:6px;border-radius:22px}.shiw-dynamic-island{width:50px;height:14px}.shiw-breakdown{gap:12px}.shiw-thumb{height:130px}.shiw-instructions{gap:20px;padding:4px 0}.shiw-instruction-icon{width:40px;height:40px}.shiw-instruction-icon svg{width:18px;height:18px}.shiw-instruction-text{font-size:.8125rem}}@media(max-width:380px){.shiw-phone-wrap,.shiw-preview{width:200px}.shiw-breakdown{max-width:280px}}.see-how-page{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--onboarding-bg, var(--bg-primary));color:var(--text-primary);position:relative;overflow:hidden;animation:seeHowPageIn .5s cubic-bezier(.16,1,.3,1) forwards;padding-top:var(--safe-area-top, env(safe-area-inset-top, 0px));padding-bottom:var(--safe-area-bottom, env(safe-area-inset-bottom, 0px))}@keyframes seeHowPageIn{0%{opacity:0}to{opacity:1}}[data-theme=party] .see-how-page{background:radial-gradient(ellipse 80% 50% at 50% 20%,rgba(224,64,160,.1) 0%,transparent 60%),radial-gradient(ellipse 60% 40% at 80% 80%,rgba(176,96,224,.08) 0%,transparent 50%),radial-gradient(ellipse 50% 50% at 10% 50%,rgba(48,224,240,.06) 0%,transparent 50%),var(--bg-primary);animation:seeHowPageIn .5s cubic-bezier(.16,1,.3,1) forwards,seeHowPartyBg 10s ease-in-out infinite}@keyframes seeHowPartyBg{0%,to{filter:hue-rotate(0deg)}50%{filter:hue-rotate(15deg)}}.collection-search-input{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--highlight-ghost);border:1px solid var(--highlight-ghost);border-radius:6px;margin:0 8px 8px}.collection-search-input:focus-within{border-color:var(--primary-glow);background:var(--highlight-ghost)}.collection-search-input-icon{flex-shrink:0;color:var(--overlay-subtle)}.collection-search-input-field{flex:1;background:none;border:none;outline:none;color:var(--text-primary);font-size:var(--text-sm)}.collection-search-input-field::placeholder{color:var(--overlay-subtle)}.collection-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:transparent;border:none;border-radius:6px;color:var(--overlay-medium);font-size:var(--text-sm);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.collection-dropdown-item:hover{background:var(--highlight-ghost);color:var(--text-primary)}.collection-dropdown-item.active{background:var(--primary-subtle);color:var(--primary-muted)}.collection-dropdown-item.active:hover{background:var(--primary-subtle)}.collection-dropdown-item-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:20px;height:20px;color:inherit;opacity:.7}.collection-dropdown-item.active .collection-dropdown-item-icon{color:var(--primary-light);opacity:1}.collection-dropdown-item-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collection-dropdown-item-count{flex-shrink:0;padding:2px 6px;background:var(--highlight-ghost);border-radius:10px;font-size:var(--text-xs);color:var(--overlay-medium)}.collection-dropdown-item-delete{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px;padding:0;background:transparent;border:none;border-radius:4px;color:var(--overlay-subtle);cursor:pointer;opacity:0;transition:all var(--transition-fast)}.collection-dropdown-item:hover .collection-dropdown-item-delete{opacity:1}.collection-dropdown-item-delete:hover{background:var(--danger-subtle);color:var(--danger)}.collection-dropdown-panel{display:flex;flex-direction:column;width:280px;max-height:400px;padding-top:8px;background:var(--bg-secondary);border:1px solid var(--highlight-faint);border-radius:10px;box-shadow:0 4px 6px -1px var(--shadow-medium),0 10px 15px -3px var(--shadow-heavy),0 0 0 1px var(--highlight-ghost);overflow:hidden}.collection-dropdown-panel-content{flex:1;overflow-y:auto;padding:0 8px}.collection-dropdown-panel-content::-webkit-scrollbar{width:6px}.collection-dropdown-panel-content::-webkit-scrollbar-track{background:transparent}.collection-dropdown-panel-content::-webkit-scrollbar-thumb{background:var(--highlight-subtle);border-radius:3px}.collection-dropdown-panel-content::-webkit-scrollbar-thumb:hover{background:var(--highlight-soft)}.collection-dropdown-section{padding:4px 0}.collection-dropdown-section:not(:last-child){border-bottom:1px solid var(--highlight-ghost);margin-bottom:4px;padding-bottom:8px}.collection-dropdown-section-header{padding:6px 12px;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--overlay-subtle)}.collection-dropdown-empty{padding:24px 16px;text-align:center;color:var(--overlay-subtle);font-size:var(--text-sm)}.collection-dropdown-add{padding:8px;border-top:1px solid var(--highlight-ghost)}.collection-dropdown-add-button{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;background:transparent;border:1px dashed var(--highlight-subtle);border-radius:6px;color:var(--overlay-medium);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast)}.collection-dropdown-add-button:hover{background:var(--highlight-ghost);border-color:var(--primary-glow);color:var(--overlay-medium)}.collection-dropdown-add-input{width:100%;padding:10px 12px;background:var(--highlight-ghost);border:1px solid var(--primary-glow);border-radius:6px;color:var(--text-primary);font-size:var(--text-sm);outline:none}.collection-dropdown-add-input::placeholder{color:var(--overlay-subtle)}@media(max-width:600px){.collection-dropdown-panel{width:100%;max-height:60vh;border-radius:16px 16px 0 0}}.collection-dropdown{position:relative}.collection-dropdown-trigger{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.collection-dropdown-trigger:hover{background:var(--surface-hover);border-color:var(--border-hover)}.collection-dropdown-trigger.open{background:var(--primary-subtle);border-color:var(--primary-glow)}.collection-dropdown-trigger-icon{flex-shrink:0;color:var(--text-secondary)}.collection-dropdown-trigger.open .collection-dropdown-trigger-icon{color:var(--primary-light)}.collection-dropdown-trigger-label{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collection-dropdown-trigger-chevron{flex-shrink:0;color:var(--text-tertiary);transition:transform var(--transition-fast)}.collection-dropdown-trigger-chevron.open{transform:rotate(180deg)}.collection-dropdown-panel-container{position:fixed;z-index:99999;animation:dropdownFadeIn .15s ease}.collection-dropdown-overlay{position:fixed;inset:0;background:var(--shadow-heavy);z-index:99998;animation:overlayFadeIn .2s ease}.collection-dropdown-panel-container.mobile{position:fixed;inset:auto 0 0;z-index:100000;animation:mobileSlideUp .25s cubic-bezier(.4,0,.2,1)}@keyframes mobileSlideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.collection-dropdown.mobile .collection-dropdown-trigger{padding:6px 10px}.collection-dropdown.mobile .collection-dropdown-trigger-label{max-width:120px}.topbar-layout{min-height:100vh;height:100vh;background:var(--bg-primary);display:flex;flex-direction:column;overflow:hidden}.topbar-header{display:flex;align-items:center;padding:16px 32px;border-bottom:1px solid var(--border);background:var(--bg-secondary);gap:24px;flex-shrink:0;z-index:10}body.capacitor-native .topbar-header{padding-top:var(--safe-area-top);box-sizing:border-box}.topbar-header-v4{justify-content:space-between;position:relative;overflow:visible}.topbar-header-v4 .topbar-left{flex:1;display:flex;align-items:center;gap:0;min-width:0;overflow:visible}.topbar-header-v4 .topbar-center{position:absolute;left:50%;transform:translate(-50%);pointer-events:none}.topbar-header-v4 .topbar-center>*{pointer-events:all}.topbar-header-v4 .topbar-right{flex:1;display:flex;justify-content:flex-end;min-width:0}.topbar-header-v4 .topbar-layout-spaced{gap:32px}.topbar-header-v4:has(.topbar-center-dropdown) .topbar-left{flex:1}.topbar-header-v4:has(.topbar-center-dropdown) .topbar-right{flex:1}.topbar-header-v4 .topbar-center-dropdown{position:static;transform:none;pointer-events:all;flex:0 0 auto}.topbar-header-v4 .topbar-right-with-dropdown{gap:16px}.topbar-header-v4 .topbar-right-with-dropdown .collection-dropdown{order:-1}.topbar-nav-divider{width:1px;height:24px;background:var(--border);flex-shrink:0}.topbar-header-v4 .topbar-mobile-header{display:none}.topbar-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.topbar-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:48px;padding:0 16px;background:var(--surface);border:1px solid var(--border);border-radius:10px;font-size:var(--text-sm);line-height:1;color:var(--text-primary);white-space:nowrap;cursor:pointer;transition:transform var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),filter var(--transition-fast)}.topbar-action-btn:hover{background:var(--surface-hover);border-color:var(--border-hover)}.topbar-action-btn:active{transform:scale(.98)}.topbar-action-btn:focus-visible{outline:none;box-shadow:0 0 0 4px var(--primary-subtle)}.topbar-action-btn-danger{color:var(--danger);border-color:var(--danger-subtle)}.topbar-action-btn-danger:hover{background:var(--danger-subtle);border-color:var(--danger)}.topbar-bulk-actions{display:flex;align-items:center;gap:10px}.topbar-bulk-count{font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);padding:0 6px}.topbar-selection-bar{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;animation:topbar-selection-bar-enter .16s cubic-bezier(.2,.8,.2,1)}@keyframes topbar-selection-bar-enter{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.topbar-selection-bar-left{display:flex;align-items:center;gap:10px;min-width:0}.topbar-selection-bar-cancel{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border);border-radius:10px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.topbar-selection-bar-cancel:hover{background:var(--highlight-ghost);border-color:var(--border-hover);filter:brightness(var(--hover-brightness))}.topbar-selection-bar-count{font-size:var(--text-sm);font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-selection-bar-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.topbar-selection-bar-btn{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast)}.topbar-selection-bar-btn:hover{background:var(--surface-hover);border-color:var(--border-hover)}.topbar-selection-bar-btn-primary{border-color:var(--primary-subtle)}.topbar-selection-bar-btn-danger{border-color:var(--danger-subtle);color:var(--danger)}.topbar-selection-bar-btn-danger:hover{background:var(--danger-subtle);border-color:var(--danger)}.topbar-selection-bar-btn:disabled,.topbar-selection-bar-cancel:disabled{opacity:.6;cursor:not-allowed}.topbar-search-icon-btn{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:transparent;border:1px solid var(--border);border-radius:10px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal);flex-shrink:0}.topbar-search-icon-btn:hover{background:var(--bg-tertiary);border-color:var(--border-hover);filter:brightness(var(--hover-brightness))}.topbar-search-icon-btn:active{background:var(--bg-tertiary);transform:scale(.95)}.topbar-search{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;transition:all var(--transition-normal);flex-shrink:0}.topbar-search-expanded{width:240px;animation:expandSearch .2s ease}@keyframes expandSearch{0%{width:48px;opacity:.5}to{width:240px;opacity:1}}.topbar-search:focus-within{border-color:var(--primary);background:var(--bg-secondary)}.topbar-search-icon{color:var(--text-tertiary);flex-shrink:0}.topbar-search-input{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:var(--text-sm);min-width:0}.topbar-search-input::placeholder{color:var(--text-tertiary)}.topbar-search-clear{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin:-12px -8px -12px 0;background:transparent;border:none;border-radius:10px;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.topbar-search-clear:hover{background:var(--highlight-faint);filter:brightness(var(--hover-brightness))}.topbar-main{flex:1;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column}.topbar-mobile-actions{display:flex;align-items:center;gap:8px;flex-shrink:1;min-width:0;overflow:visible}.topbar-mobile-header>.topbar-mobile-actions:only-child{margin-left:auto}.topbar-mobile-action-btn{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:transparent;border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal);flex-shrink:0}.topbar-mobile-action-btn:hover{background:var(--highlight-ghost);filter:brightness(var(--hover-brightness))}.topbar-mobile-action-btn:active{background:var(--highlight-ghost);transform:scale(.95)}.topbar-mobile-search{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;flex:1;max-width:300px;transition:all var(--transition-normal);animation:slideInRight .2s ease}@keyframes slideInRight{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.topbar-mobile-search:focus-within{border-color:var(--primary);background:var(--bg-secondary)}.topbar-mobile-search .topbar-search-icon{color:var(--text-tertiary);flex-shrink:0}.topbar-mobile-search .topbar-search-input{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:var(--text-sm);min-width:0}.topbar-mobile-search .topbar-search-input::placeholder{color:var(--text-tertiary)}.topbar-mobile-search-close{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin:-12px -8px -12px 0;background:transparent;border:none;border-radius:10px;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.topbar-mobile-search-close:hover{background:var(--highlight-faint);filter:brightness(var(--hover-brightness))}.topbar-cuy{display:flex;align-items:center;text-decoration:none;flex-shrink:0;transition:all var(--transition-normal)}.topbar-cuy:hover{opacity:.9}.topbar-cuy:active{transform:scale(.98)}.topbar-cuy-v1{margin-right:20px;padding:6px;border-radius:8px;background:transparent;transition:all var(--transition-normal)}.topbar-cuy-v1 img{height:34px;width:auto;display:block;filter:drop-shadow(0 1px 2px var(--shadow-soft));transition:all var(--transition-normal)}.topbar-cuy-v1:hover{background:var(--highlight-ghost);transform:translateY(-1px)}.topbar-cuy-v1:hover img{filter:drop-shadow(0 2px 8px var(--primary-glow));transform:scale(1.02)}.topbar-cuy-v1:active{transform:translateY(0);background:var(--highlight-ghost)}.topbar-cuy-v1:active img{transform:scale(.98)}.topbar-cuy-v2{gap:12px;margin-right:24px}.topbar-cuy-v2 .topbar-cuy-icon{height:36px;width:auto;display:block}.topbar-cuy-v2 .topbar-cuy-title{height:20px;width:auto;display:block}.topbar-cuy-v2:hover{transform:translateY(-1px)}.topbar-cuy-v3{margin-right:16px}.topbar-cuy-v3 .topbar-cuy-badge{display:flex;align-items:center;justify-content:center;padding:6px 10px;background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--blue-subtle) 100%);border:1px solid var(--primary-subtle);border-radius:10px;box-shadow:0 2px 8px var(--shadow-soft);transition:all var(--transition-normal)}.topbar-cuy-v3 .topbar-cuy-badge img{height:28px;width:auto;display:block}.topbar-cuy-v3:hover .topbar-cuy-badge{background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--blue-subtle) 100%);border-color:var(--primary-glow);transform:translateY(-2px);box-shadow:0 4px 12px var(--primary-subtle)}.topbar-cuy-v5{margin-right:16px}.topbar-cuy-v5 .topbar-cuy-circle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--highlight-ghost);border:1px solid var(--highlight-faint);border-radius:50%;transition:all var(--transition-normal)}.topbar-cuy-v5 .topbar-cuy-circle img{height:28px;width:auto;display:block}.topbar-cuy-v5:hover .topbar-cuy-circle{background:var(--highlight-faint);border-color:var(--highlight-subtle);transform:rotate(-5deg) scale(1.05)}.topbar-cuy-v6{gap:10px;margin-right:0}.topbar-cuy-v6 .topbar-cuy-title{height:18px;width:auto;display:block;opacity:.9}.topbar-cuy-v6:hover,.topbar-cuy-v6:hover .topbar-cuy-title{opacity:1}.topbar-cuy-v10{margin-right:16px;padding:4px;opacity:.6;transition:all var(--transition-normal)}.topbar-cuy-v10 img{height:26px;width:auto;display:block;filter:grayscale(30%);transition:all var(--transition-normal)}.topbar-cuy-v10:hover{opacity:1}.topbar-cuy-v10:hover img{filter:grayscale(0%);transform:scale(1.05)}.topbar-cuy-v11{margin-right:16px}.topbar-cuy-v11 .topbar-cuy-arc{display:flex;align-items:center;justify-content:center;padding:6px;border-radius:12px;background:linear-gradient(135deg,var(--bg-secondary),var(--bg-secondary)) padding-box,linear-gradient(135deg,var(--pink-light),var(--primary-light),var(--success),var(--warning)) border-box;border:2px solid transparent;transition:all var(--transition-slow)}.topbar-cuy-v11 .topbar-cuy-arc img{height:28px;width:auto;display:block;transition:all var(--transition-normal)}.topbar-cuy-v11:hover .topbar-cuy-arc{background:linear-gradient(135deg,var(--bg-tertiary),var(--bg-tertiary)) padding-box,linear-gradient(180deg,var(--pink-light),var(--primary-light),var(--success),var(--warning)) border-box;box-shadow:0 0 20px var(--primary-glow),0 0 40px var(--pink-subtle);transform:translateY(-2px)}.topbar-cuy-v11:hover .topbar-cuy-arc img{transform:scale(1.08)}.topbar-cuy-v12{margin-right:16px;padding:8px;border-radius:10px;background:var(--primary-subtle);transition:all var(--transition-normal)}.topbar-cuy-v12 img{height:30px;width:auto;display:block;filter:drop-shadow(0 0 8px var(--primary-glow));transition:all var(--transition-normal)}.topbar-cuy-v12:hover{background:var(--primary-subtle);box-shadow:0 0 30px var(--primary-glow),0 0 60px var(--primary-subtle);transform:translateY(-2px)}.topbar-cuy-v12:hover img{filter:drop-shadow(0 0 12px var(--primary-glow));transform:scale(1.1)}@media(min-width:960px){.topbar-header-v4 .topbar-left{gap:16px}}@media(max-width:960px){.topbar-header{padding:12px 16px;gap:12px}.topbar-header-v4 .topbar-center{display:none}.topbar-header-v4 .topbar-left{gap:12px;flex:1;min-width:0}.topbar-header-v4 .topbar-right{flex:0 1 auto;min-width:0}.topbar-main{padding:16px}.topbar-search-expanded{width:180px}}@media(max-width:600px){.topbar-header{padding:8px 12px;gap:0;min-height:60px;overflow:visible}.topbar-header-v4{justify-content:flex-start}.topbar-header-v4 .topbar-mobile-header{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-width:0;overflow:visible}.topbar-header-v4 .topbar-left,.topbar-header-v4 .topbar-center,.topbar-header-v4 .topbar-right{display:none}.topbar-main{padding:12px}}@media(max-width:480px){.topbar-mobile-search{max-width:200px}}body.capacitor-native .topbar-tab{font-size:var(--text-sm)}.confirm-modal-backdrop{position:fixed;inset:0;background:var(--overlay-dark);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:confirm-modal-fade-in .15s cubic-bezier(.4,0,.2,1)}@keyframes confirm-modal-fade-in{0%{opacity:0}to{opacity:1}}.confirm-modal-container{background:var(--surface);border:1px solid var(--border);border-radius:12px;width:90%;max-width:420px;box-shadow:0 20px 25px -5px var(--shadow-heavy),0 10px 10px -5px var(--shadow-ghost);animation:confirm-modal-slide-in .2s cubic-bezier(.4,0,.2,1)}@keyframes confirm-modal-slide-in{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.confirm-modal-header{padding:24px 24px 16px;border-bottom:1px solid var(--border)}.confirm-modal-title{font-size:18px;font-weight:600;color:var(--text-primary);margin:0;letter-spacing:-.01em}.confirm-modal-body{padding:20px 24px}.confirm-modal-message{font-size:var(--text-sm);line-height:1.5;color:var(--text-secondary);margin:0;letter-spacing:-.01em}.confirm-modal-footer{padding:16px 24px 24px;display:flex;gap:12px;justify-content:flex-end}.confirm-modal-btn{padding:10px 20px;border-radius:6px;font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast);letter-spacing:-.01em;border:none;outline:none}.confirm-modal-btn:disabled{opacity:.6;cursor:not-allowed}.confirm-modal-btn:disabled:hover{transform:none}.confirm-modal-btn-cancel{background:transparent;border:1px solid var(--border);color:var(--text-secondary)}.confirm-modal-btn-cancel:hover{background:var(--surface-hover);border-color:var(--border-hover);color:var(--text-primary)}.confirm-modal-btn-confirm{border:none}[data-theme=warm] .confirm-modal-backdrop{background:var(--overlay-dark)}[data-theme=warm] .confirm-modal-container{background:var(--surface);border-color:var(--border);box-shadow:0 8px 32px var(--shadow-subtle)}[data-theme=warm] .confirm-modal-header{border-bottom-color:var(--border)}[data-theme=warm] .confirm-modal-title{color:var(--text-primary)}[data-theme=warm] .confirm-modal-message{color:var(--text-secondary)}[data-theme=warm] .confirm-modal-btn-cancel{background:transparent;border:1px solid var(--border);color:var(--text-secondary)}[data-theme=warm] .confirm-modal-btn-cancel:hover{background:var(--surface-hover);border-color:var(--border-hover);color:var(--text-primary)}.portal-dropdown{position:fixed;z-index:9999;min-width:140px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-card-hover, var(--shadow-lg-light));padding:4px}.portal-dropdown--flip-down{animation:portal-dropdown-down .12s ease-out}.portal-dropdown--flip-up{animation:portal-dropdown-up .12s ease-out}@keyframes portal-dropdown-down{0%{opacity:0;transform:translateY(-6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes portal-dropdown-up{0%{opacity:0;transform:translateY(6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.portal-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;border-radius:8px;background:transparent;color:var(--text-primary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:background var(--transition-fast);text-align:left}.portal-dropdown-item:hover{background:var(--surface-hover, var(--bg-tertiary))}.portal-dropdown-item:active{background:var(--highlight-faint)}.portal-dropdown-item--danger{color:var(--danger)}.portal-dropdown-item--danger:hover{background:var(--danger-subtle)}.portal-dropdown-item--active{color:var(--primary)}.portal-dropdown-item-icon{width:16px;height:16px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.portal-dropdown-item-icon svg{width:16px;height:16px}.processing-card{position:relative;display:flex;flex-direction:column;width:100%;height:100%;text-align:left;padding:0;border:1px solid color-mix(in srgb,var(--border) 70%,var(--text-muted) 30%);background:linear-gradient(155deg,var(--surface-alt, #faf8f6) 0%,color-mix(in srgb,var(--surface) 90%,var(--primary-tint)) 100%);box-shadow:var(--shadow-card, var(--shadow-md-light));border-radius:18px;overflow:hidden;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.processing-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-hover, var(--shadow-lg-light));border-color:var(--border-hover, var(--border))}.processing-card:focus-visible{outline:none;box-shadow:0 0 0 3px var(--primary-subtle),var(--shadow-card-hover, var(--shadow-lg-light))}.processing-building-animation{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%}.processing-card-thumb{position:relative;width:100%;aspect-ratio:3 / 5;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1 1 auto;min-height:0}@media(min-width:960px){.processing-card-thumb{aspect-ratio:4 / 3}}.processing-card--square .processing-card-thumb{aspect-ratio:1 / 1;flex:none}.processing-card-label{margin-top:16px;font-size:var(--text-sm);font-weight:600;color:var(--text-secondary)}@media(min-width:960px){.processing-card-label{margin-top:18px;font-size:var(--text-base)}}.processing-stack-icon{position:relative;width:52px;height:62px}.processing-stack-card{position:absolute;width:42px;height:52px;background:var(--surface);border-radius:7px;border:1.5px solid var(--border);left:50%;transform:translate(-50%)}.processing-stack-card:after{content:"";position:absolute;top:10px;left:7px;right:7px;height:4px;background:var(--border);border-radius:2px}@media(min-width:960px){.processing-stack-icon{width:64px;height:76px}.processing-stack-card{width:52px;height:64px;border-radius:8px;border-width:2px}.processing-stack-card:after{top:12px;left:8px;right:8px;height:5px}}.processing-stack-card:nth-child(1){bottom:0;z-index:3;background:var(--surface)}.processing-stack-card:nth-child(2){bottom:6px;z-index:2;background:color-mix(in srgb,var(--surface) 95%,var(--text-muted))}.processing-stack-card:nth-child(3){bottom:12px;z-index:1;background:color-mix(in srgb,var(--surface) 88%,var(--text-muted))}.processing-stack-card:nth-child(3){animation:processing-rise-3 3s cubic-bezier(.34,1.56,.64,1) infinite}.processing-stack-card:nth-child(2){animation:processing-rise-2 3s cubic-bezier(.34,1.56,.64,1) infinite}.processing-stack-card:nth-child(1){animation:processing-rise-1 3s cubic-bezier(.34,1.56,.64,1) infinite}@keyframes processing-rise-3{0%{opacity:0;bottom:-6px;transform:translate(-50%) scale(.9)}25%{opacity:1;bottom:12px;transform:translate(-50%) scale(1)}to{opacity:1;bottom:12px;transform:translate(-50%) scale(1)}}@keyframes processing-rise-2{0%,25%{opacity:0;bottom:-6px;transform:translate(-50%) scale(.9)}50%{opacity:1;bottom:6px;transform:translate(-50%) scale(1)}to{opacity:1;bottom:6px;transform:translate(-50%) scale(1)}}@keyframes processing-rise-1{0%,50%{opacity:0;bottom:-6px;transform:translate(-50%) scale(.9)}75%{opacity:1;bottom:0;transform:translate(-50%) scale(1)}to{opacity:1;bottom:0;transform:translate(-50%) scale(1)}}.processing-dot-indicator{display:flex;gap:6px;margin-top:16px}.processing-dot{width:6px;height:6px;background:var(--text-muted);border-radius:50%;animation:processing-dot-wave 2s ease-in-out infinite}.processing-dot:nth-child(2){animation-delay:.25s}.processing-dot:nth-child(3){animation-delay:.5s}@keyframes processing-dot-wave{0%,to{background:var(--text-muted);transform:translateY(0)}50%{background:var(--primary);transform:translateY(-2px)}}@media(min-width:960px){.processing-dot-indicator{gap:8px;margin-top:20px}.processing-dot{width:7px;height:7px}}.processing-card-info{padding:12px;display:flex;flex-direction:column;gap:3px;min-width:0;background:var(--surface);border-top:1px solid var(--border)}.processing-card-title{font-size:var(--text-sm);font-weight:700;color:var(--text-primary);line-height:1.3;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:0}.processing-card-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:var(--text-xs);color:var(--text-tertiary)}.processing-card-state{font-weight:700;color:var(--primary);letter-spacing:.3px}.processing-card-meta-dot{color:var(--text-muted)}.processing-card-style{font-weight:500;text-transform:capitalize}.processing-card--completing{animation:processing-card-complete .4s cubic-bezier(.2,.8,.2,1) forwards}.processing-card--completing .processing-card-thumb{animation:processing-thumb-fade .3s ease-out forwards}@keyframes processing-card-complete{0%{transform:scale(1);box-shadow:var(--shadow-card)}50%{transform:scale(1.02);box-shadow:0 0 0 4px var(--primary-subtle),var(--shadow-card-hover)}to{transform:scale(1);box-shadow:var(--shadow-card)}}@keyframes processing-thumb-fade{0%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.processing-stack-card,.processing-dot{animation:none}.processing-stack-card{opacity:1;transform:translate(-50%) scale(1)}.processing-stack-card:nth-child(1){bottom:0}.processing-stack-card:nth-child(2){bottom:6px}.processing-stack-card:nth-child(3){bottom:12px}.processing-dot{background:var(--text-muted)}.processing-dot:nth-child(2){background:var(--primary)}.processing-card--completing,.processing-card--completing .processing-card-thumb{animation:none}}.bottom-sheet-scrim{position:fixed;inset:0;background:#0000;z-index:1000;display:flex;align-items:flex-end;justify-content:center;transition:background .3s ease}.bottom-sheet-scrim.open{background:#00000080}.bottom-sheet-scrim.closing{background:#0000}.bottom-sheet{width:100%;max-width:500px;background:var(--surface);border-radius:20px 20px 0 0;box-shadow:0 -4px 32px #00000026;display:flex;flex-direction:column;transform:translateY(100%);transition:transform .3s cubic-bezier(.32,.72,0,1);max-height:90vh;max-height:90dvh;overflow:hidden;padding-bottom:var(--safe-area-bottom)}.bottom-sheet.open{transform:translateY(0)}.bottom-sheet.closing{transform:translateY(100%)}.bottom-sheet-handle-area{padding:12px 0 8px;display:flex;justify-content:center;cursor:grab;touch-action:none;flex-shrink:0}.bottom-sheet-handle-area:active{cursor:grabbing}.bottom-sheet-handle{width:36px;height:4px;background:var(--border-hover);border-radius:2px;transition:background .2s ease,width .2s ease}.bottom-sheet-handle-area:hover .bottom-sheet-handle{background:var(--text-muted);width:44px}.bottom-sheet-header{padding:4px 24px 16px;flex-shrink:0}.bottom-sheet-title{font-size:22px;font-weight:700;color:var(--text-primary);margin:0 0 4px;line-height:1.2}.bottom-sheet-subtitle{font-size:var(--text-base);color:var(--text-secondary);margin:0;line-height:1.4}.bottom-sheet-content{flex:1;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.bottom-sheet-step-container{position:relative}.bottom-sheet-step{position:absolute;top:0;left:0;right:0;visibility:hidden;opacity:0;transform:translate(8px);transition:opacity var(--transition-normal),transform var(--transition-normal),visibility var(--transition-normal)}.bottom-sheet-step.is-active{position:relative;visibility:visible;opacity:1;transform:translate(0)}@media(min-width:601px){.bottom-sheet-scrim{align-items:center}.bottom-sheet{border-radius:20px;max-height:85vh;transform:translateY(40px);opacity:0;transition:transform .3s cubic-bezier(.32,.72,0,1),opacity .3s ease}.bottom-sheet.open{transform:translateY(0);opacity:1}.bottom-sheet.closing{transform:translateY(40px);opacity:0}.bottom-sheet-content{padding:0 28px 28px}.bottom-sheet-header{padding:4px 28px 16px}}.filter-chip-bar{display:flex;align-items:center;gap:8px;padding:10px 16px;flex-wrap:wrap}.filter-chip{display:inline-flex;align-items:center;gap:4px;padding:7px 12px;border-radius:999px;border:1.5px solid var(--border);background:var(--surface);color:var(--text-secondary);font-family:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;min-width:0}.filter-chip__text{overflow:hidden;text-overflow:ellipsis;max-width:120px}.filter-chip:hover{border-color:var(--border-hover);background:var(--surface-hover)}.filter-chip--active{background:var(--primary-subtle);border-color:var(--primary-border);color:var(--primary);font-weight:600}.filter-chip--active:hover{background:var(--primary-subtle)}.filter-chip__chevron{flex-shrink:0;opacity:.5}.filter-chip--active .filter-chip__chevron{opacity:.7}.filter-chip-clear{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;border:1.5px solid var(--border);background:var(--surface);color:var(--text-tertiary);cursor:pointer;flex-shrink:0;transition:all var(--transition-fast)}.filter-chip-clear:hover{background:var(--danger-subtle);border-color:var(--danger-muted);color:var(--danger)}.filter-picker__search{display:flex;align-items:center;gap:8px;margin:0 16px 12px;padding:10px 14px;border:1px solid var(--border);border-radius:10px;background:var(--bg-primary);transition:border-color var(--transition-fast)}.filter-picker__search:focus-within{border-color:var(--primary)}.filter-picker__search-icon{color:var(--text-muted);flex-shrink:0}.filter-picker__search-input{flex:1;border:none;background:none;font-family:inherit;font-size:.875rem;color:var(--text-primary);outline:none}.filter-picker__search-input::placeholder{color:var(--text-muted)}.filter-picker__list{display:flex;flex-direction:column}.filter-picker__option{display:flex;align-items:center;gap:12px;padding:13px 16px;border:none;background:none;cursor:pointer;font-family:inherit;font-size:.9375rem;color:var(--text-primary);text-align:left;transition:background var(--transition-fast);-webkit-tap-highlight-color:transparent}.filter-picker__option:hover{background:var(--surface-hover)}.filter-picker__option--selected{background:var(--primary-tint)}.filter-picker__option--selected .filter-picker__label{color:var(--primary);font-weight:600}.filter-picker__radio{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;border:2px solid var(--border);flex-shrink:0;transition:border-color var(--transition-fast)}.filter-picker__radio--active{border-color:var(--primary)}.filter-picker__radio-dot{width:10px;height:10px;border-radius:50%;background:var(--primary)}.filter-picker-dropdown{min-width:160px;max-height:320px;overflow-y:auto}.filter-picker-dropdown__check{flex-shrink:0;color:var(--primary)}.inline-edit-container{display:flex;align-items:center;width:100%}.inline-edit-input{flex:1;min-width:0;padding:4px 8px;background:var(--highlight-faint);border:1px solid var(--highlight-soft);border-radius:4px;color:var(--text-primary);font-size:var(--text-sm);font-family:inherit;outline:none;transition:border-color var(--transition-fast)}.inline-edit-input:focus{border-color:var(--primary-glow);background:var(--highlight-subtle)}.inline-edit-input:disabled{opacity:.6;cursor:not-allowed}.inline-edit-input::placeholder{color:var(--overlay-subtle)}.sidebar-inline-edit{padding:2px 0}.sidebar-inline-edit .inline-edit-input{padding:3px 6px;font-size:var(--text-xs)}.library-card-inline-edit .inline-edit-input{font-size:var(--text-sm);font-weight:700;padding:2px 6px}.cc{position:relative;border-radius:18px;padding:18px;margin-bottom:20px;background:radial-gradient(ellipse 80% 70% at 90% 20%,color-mix(in srgb,var(--primary) 12%,transparent) 0%,transparent 60%),linear-gradient(145deg,color-mix(in srgb,var(--surface) 92%,var(--primary-tint)) 0%,var(--surface) 100%);border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border));box-shadow:var(--shadow-card);transition:border-color var(--transition-normal),box-shadow var(--transition-normal)}.cc:hover{box-shadow:var(--shadow-card-hover);border-color:color-mix(in srgb,var(--primary) 28%,var(--border))}.cc--celebrate{background:radial-gradient(ellipse 80% 70% at 90% 20%,color-mix(in srgb,var(--success) 10%,transparent) 0%,transparent 60%),linear-gradient(145deg,color-mix(in srgb,var(--surface) 92%,var(--primary-tint)) 0%,var(--surface) 100%);border-color:color-mix(in srgb,var(--success) 22%,var(--border))}.cc-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.cc-avatar{width:40px;height:40px;border-radius:50%;background:color-mix(in srgb,var(--surface) 80%,var(--primary-tint));border:1.5px solid color-mix(in srgb,var(--primary) 20%,var(--border));box-shadow:0 2px 8px color-mix(in srgb,var(--primary) 10%,transparent);display:flex;align-items:center;justify-content:center;padding:4px;flex-shrink:0;text-decoration:none;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.cc-avatar:hover{transform:scale(1.04);box-shadow:0 3px 10px color-mix(in srgb,var(--primary) 14%,transparent)}.cc-avatar-img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 1px 3px var(--shadow-subtle))}.cc-badge{display:inline-flex;align-items:center;padding:4px 12px;background:color-mix(in srgb,var(--surface) 88%,var(--primary-tint));border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border));border-radius:999px;font-size:var(--text-xs);font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:.06em}.cc-body{display:flex;flex-direction:column;gap:6px}.cc-title{font-size:var(--text-lg);font-weight:700;color:var(--text-primary);margin:0;line-height:1.3}.cc-message{font-size:var(--text-base);line-height:1.5;color:var(--text-secondary);margin:0 0 8px}.cc-message strong{font-weight:600;color:var(--text-primary)}.cc-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 22px;background:var(--primary);color:var(--text-on-primary, #fff);border:none;border-radius:12px;font-size:var(--text-sm);font-weight:600;cursor:pointer;box-shadow:0 4px 14px color-mix(in srgb,var(--primary) 30%,transparent);transition:background var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);width:fit-content}.cc-cta:hover{background:var(--primary-hover, var(--primary-dark));transform:translateY(-1px);box-shadow:0 6px 20px color-mix(in srgb,var(--primary) 38%,transparent)}.cc-cta:active{transform:translateY(0);box-shadow:0 2px 8px color-mix(in srgb,var(--primary) 25%,transparent)}.cc-link{display:inline-block;margin-top:6px;font-size:var(--text-sm);color:var(--text-tertiary);background:none;border:none;padding:0;cursor:pointer;transition:color var(--transition-fast)}.cc-link:hover{color:var(--primary)}.cc-hint{display:block;margin-top:6px;font-size:var(--text-xs);color:var(--text-tertiary)}.cc-preview{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:10px 12px;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.cc-preview:hover{border-color:var(--border-hover);box-shadow:0 2px 8px var(--shadow-subtle)}.cc-preview-thumb{flex-shrink:0;width:48px;height:48px;border-radius:8px;overflow:hidden;background:var(--bg-tertiary)}.cc-preview-thumb img{width:100%;height:100%;object-fit:cover}.cc-preview-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary-subtle),var(--surface-hover));color:var(--primary)}.cc-preview-info{flex:1;min-width:0}.cc-preview-title{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.cc-preview-sub{font-size:var(--text-xs);color:var(--text-tertiary);display:block;margin-top:2px}.cc-preview-action{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--primary);border:none;border-radius:50%;color:var(--text-on-primary, #fff);cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast)}.cc-preview-action:hover{background:var(--primary-hover, var(--primary-dark));transform:scale(1.05)}.cc-preview-action:active{transform:scale(.95)}@media(max-width:600px){.cc{padding:16px;border-radius:16px}.cc-title{font-size:var(--text-base)}.cc-message{font-size:var(--text-sm)}.cc-cta{width:100%;padding:12px 18px}.cc-preview{max-width:none}.cc-preview-thumb{display:none}}@media(max-width:767px){.cc-avatar{position:absolute;top:min(50%,90px);right:14px;transform:translateY(-50%);width:56px;height:56px;padding:6px;z-index:1;box-shadow:0 2px 10px color-mix(in srgb,var(--primary) 10%,transparent),inset 0 1px 0 var(--highlight-ghost)}.cc-avatar:hover{transform:translateY(-50%) scale(1.04)}.cc-body{padding-right:68px}}@media(min-width:768px){.cc{padding:24px 28px;margin-top:12px}.cc-badge{position:absolute;top:0;left:28px;transform:translateY(-50%);z-index:1}.cc-header{margin-bottom:0}.cc-avatar{position:absolute;top:50%;right:24px;transform:translateY(-50%);width:104px;height:104px;padding:12px;z-index:1;box-shadow:0 4px 16px color-mix(in srgb,var(--primary) 12%,transparent),inset 0 1px 0 var(--highlight-ghost)}.cc-avatar:hover{transform:translateY(-50%) scale(1.04)}.cc-body{padding-right:132px}}@media(min-width:1200px){.cc{padding:28px 36px}.cc-avatar{width:116px;height:116px;right:32px;padding:14px}.cc-badge{left:36px}.cc-body{padding-right:152px}}.speed-dial-fab{position:fixed;right:24px;bottom:calc(24px + var(--safe-area-bottom));width:56px;height:56px;border-radius:18px;border:none;background:var(--primary);color:var(--text-on-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-card-hover, var(--shadow-lg-light));transition:transform var(--transition-fast),background var(--transition-fast);z-index:80}.speed-dial-fab svg{transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.speed-dial-fab--open{z-index:82}.speed-dial-fab--open svg{transform:rotate(45deg)}.speed-dial-fab:hover{background:var(--primary-hover, var(--primary-dark))}.speed-dial-fab:active{transform:scale(.96)}.speed-dial-fab__badge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--error, #ef4444);color:#fff;font-size:11px;font-weight:700;line-height:20px;text-align:center;pointer-events:none;animation:fab-badge-enter .4s cubic-bezier(.34,1.56,.64,1)}@keyframes fab-badge-enter{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.fab-scrim{position:fixed;inset:0;background:#0006;z-index:79;animation:fab-scrim-enter .2s ease-out;-webkit-tap-highlight-color:transparent}@keyframes fab-scrim-enter{0%{opacity:0}to{opacity:1}}.fab-speed-dial{position:fixed;right:24px;bottom:calc(88px + var(--safe-area-bottom));z-index:81;background:var(--surface);border-radius:16px;box-shadow:0 8px 32px #00000029,0 2px 8px #00000014;padding:6px;animation:fab-menu-enter .25s cubic-bezier(.34,1.56,.64,1);transform-origin:bottom right}@keyframes fab-menu-enter{0%{opacity:0;transform:scale(.85) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.fab-speed-dial-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 18px 12px 10px;background:transparent;border:none;border-radius:12px;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--transition-fast);animation:fab-item-cascade .22s ease-out backwards;animation-delay:calc(.1s + var(--item-index) * 60ms)}.fab-speed-dial-item:active{background:var(--primary-subtle)}@keyframes fab-item-cascade{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.fab-speed-dial-icon{width:36px;height:36px;border-radius:10px;background:var(--primary-subtle);color:var(--primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.fab-speed-dial-label{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);white-space:nowrap;display:flex;align-items:center;gap:8px}.fab-item-badge{font-size:11px;font-weight:700;color:#fff;background:var(--danger);border-radius:6px;padding:1px 6px;line-height:1.2;font-variant-numeric:tabular-nums}@media(max-width:480px){.speed-dial-fab{right:16px;bottom:calc(16px + var(--safe-area-bottom))}.fab-speed-dial{right:16px;bottom:calc(80px + var(--safe-area-bottom))}}.library-group-card{height:100%}.library-group-card__mosaic{position:absolute;inset:0;z-index:0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:2px}.library-group-card__mosaic-img{width:100%;height:100%;object-fit:cover;pointer-events:none}.library-group-card__mosaic-empty{width:100%;height:100%;background:var(--surface)}.library-group-card__gradient{position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.5) 35%,rgba(0,0,0,.1) 60%,transparent 100%);pointer-events:none}.library-group-card .library-breakdown-thumb{background:transparent}.library-group-card .library-breakdown-thumb:after{display:none}.library-group-card .library-breakdown-body{position:relative;z-index:2}@media(min-width:768px){.library-group-card .library-breakdown-body{position:absolute;bottom:0;left:0;right:0}}.library-group-card .library-breakdown-title{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.4)}.library-group-card .library-breakdown-meta,.library-group-card .library-breakdown-date{color:#ffffffb3}.library-group-card--drop-target{outline:2px solid var(--primary);outline-offset:-2px;transform:scale(1.03);transition:transform var(--transition-fast),outline var(--transition-fast)}.library-group-card--drop-target .library-group-card__gradient{background:linear-gradient(to top,rgba(0,0,0,.7) 0%,rgba(0,0,0,.35) 35%,rgba(0,0,0,.05) 60%,transparent 100%)}.cheatsheet-picker{display:flex;flex-direction:column;padding:4px 0 12px}.cheatsheet-picker-create-btn{display:flex;align-items:center;gap:10px;padding:14px 16px;margin:0 4px;background:none;border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:500;color:var(--primary);transition:background var(--transition-fast)}.cheatsheet-picker-create-btn:hover{background:var(--highlight-faint)}.cheatsheet-picker-create-btn:active{background:var(--highlight-subtle)}.cheatsheet-picker-create-btn:disabled{opacity:.5;pointer-events:none}.cheatsheet-picker-create-form{display:flex;flex-direction:column;gap:10px;padding:12px 16px}.cheatsheet-picker-create-input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-primary);font-size:16px;font-family:inherit;outline:none;transition:border-color var(--transition-fast)}.cheatsheet-picker-create-input:focus{border-color:var(--primary)}.cheatsheet-picker-create-input::placeholder{color:var(--text-tertiary)}.cheatsheet-picker-create-actions{display:flex;justify-content:flex-end;gap:8px}.cheatsheet-picker-divider{height:1px;background:var(--border);margin:4px 16px}.cheatsheet-picker-search{display:flex;align-items:center;gap:8px;padding:8px 16px;margin:4px 4px 0}.cheatsheet-picker-search-icon{color:var(--text-tertiary);flex-shrink:0}.cheatsheet-picker-search-input{flex:1;padding:8px 0;border:none;background:none;color:var(--text-primary);font-size:.9rem;font-family:inherit;outline:none}.cheatsheet-picker-search-input::placeholder{color:var(--text-tertiary)}.cheatsheet-picker-search-clear{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;border:none;background:var(--highlight-faint);color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:background var(--transition-fast)}.cheatsheet-picker-search-clear:hover{background:var(--highlight-subtle)}.cheatsheet-picker-list{display:flex;flex-direction:column;gap:2px;max-height:300px;overflow-y:auto;overscroll-behavior:contain;padding:0 4px}@media(min-width:768px){.cheatsheet-picker-list{max-height:400px}}.cheatsheet-picker-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px 16px;color:var(--text-tertiary);font-size:.9rem}.cheatsheet-picker-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:none;border:none;cursor:pointer;text-align:left;width:100%;border-radius:8px;transition:background var(--transition-fast);color:var(--text-primary)}.cheatsheet-picker-row:hover{background:var(--highlight-faint)}.cheatsheet-picker-row:active{background:var(--highlight-subtle)}.cheatsheet-picker-row--adding{opacity:.6;pointer-events:none}.cheatsheet-picker-row:disabled{opacity:.5;pointer-events:none}.cheatsheet-picker-info{display:flex;flex-direction:column;gap:2px;min-width:0}.cheatsheet-picker-name{font-size:.95rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cheatsheet-picker-count{font-size:.8rem;color:var(--text-secondary)}.cheatsheet-picker-badge{display:flex;align-items:center;gap:3px;font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:10px;background:var(--primary-subtle);color:var(--primary);flex-shrink:0;white-space:nowrap}.cheatsheet-picker-breadcrumb{display:flex;align-items:center;gap:4px;padding:8px 16px;font-size:.8rem;color:var(--text-secondary);flex-wrap:wrap}.cheatsheet-picker-breadcrumb-link{background:none;border:none;padding:2px 4px;border-radius:4px;color:var(--primary);font-size:inherit;font-family:inherit;cursor:pointer;transition:background var(--transition-fast)}.cheatsheet-picker-breadcrumb-link:hover{background:var(--highlight-faint)}.cheatsheet-picker-breadcrumb-sep{color:var(--text-tertiary)}.cheatsheet-picker-breadcrumb-current{font-weight:500;color:var(--text-primary)}.cheatsheet-picker-add-current{display:flex;align-items:center;gap:10px;padding:12px 16px;margin:0 4px 4px;background:var(--highlight-faint);border:1px solid var(--border);border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:500;color:var(--primary);transition:background var(--transition-fast);width:calc(100% - 8px);text-align:left}.cheatsheet-picker-add-current:hover{background:var(--highlight-subtle)}.cheatsheet-picker-add-current:disabled{opacity:.5;pointer-events:none}.cheatsheet-picker-row-chevron{flex-shrink:0;color:var(--text-tertiary);margin-left:auto}.new-sheet-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#00000073;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:newSheetFadeIn .2s ease;padding:24px}@keyframes newSheetFadeIn{0%{opacity:0}to{opacity:1}}.new-sheet-dialog{width:100%;max-width:380px;background:var(--surface);border-radius:20px;padding:32px 28px 24px;box-shadow:0 24px 48px #00000029,0 4px 12px #00000014;animation:newSheetSlideUp .25s cubic-bezier(.22,1,.36,1)}@keyframes newSheetSlideUp{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.new-sheet-title{margin:0;font-size:1.25rem;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.new-sheet-subtitle{margin:6px 0 0;font-size:.85rem;color:var(--text-secondary);line-height:1.4}.new-sheet-input{width:100%;margin-top:20px;padding:14px 16px;font-size:1rem;font-weight:500;line-height:1.4;border:1.5px solid var(--border);border-radius:12px;background:var(--bg-primary, var(--surface-alt));color:var(--text-primary);outline:none;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.new-sheet-input::placeholder{color:var(--text-tertiary);font-weight:400}.new-sheet-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-subtle)}.new-sheet-actions{display:flex;gap:10px;margin-top:24px}.new-sheet-btn{flex:1;padding:12px 0;font-size:.9rem;font-weight:600;border:none;border-radius:12px;cursor:pointer;transition:background .15s ease,opacity .15s ease,transform .1s ease}.new-sheet-btn:active{transform:scale(.97)}.new-sheet-btn--cancel{background:var(--bg-primary, var(--surface-alt));color:var(--text-secondary)}.new-sheet-btn--cancel:hover{background:var(--surface-hover, var(--border))}.new-sheet-btn--create{background:var(--primary);color:#fff}.new-sheet-btn--create:hover{background:var(--primary-hover, var(--primary-dark))}.new-sheet-btn--create:disabled{opacity:.4;cursor:not-allowed}.cuy-empty{position:relative;display:flex;align-items:center;justify-content:center;width:100%;max-width:700px;min-height:520px;padding:40px;margin:0 auto}.cuy-empty__particles{position:absolute;inset:-40px;pointer-events:none}.cuy-empty__particle{position:absolute;border-radius:50%;background:var(--primary);opacity:.3}.cuy-empty__particle--1{width:10px;height:10px;top:8%;right:5%;animation:cuy-empty-float 5s ease-in-out infinite}.cuy-empty__particle--2{width:7px;height:7px;top:28%;left:2%;animation:cuy-empty-float 6s ease-in-out infinite 1s}.cuy-empty__particle--3{width:6px;height:6px;bottom:22%;right:8%;animation:cuy-empty-float 5.5s ease-in-out infinite .5s}.cuy-empty__particle--4{width:5px;height:5px;bottom:35%;left:6%;animation:cuy-empty-float 6.5s ease-in-out infinite 1.5s}.cuy-empty__particle--5{width:4px;height:4px;top:50%;right:2%;animation:cuy-empty-float 7s ease-in-out infinite 2s}.cuy-empty__particle--6{width:8px;height:8px;bottom:12%;left:15%;animation:cuy-empty-float 5.8s ease-in-out infinite .8s}@keyframes cuy-empty-float{0%,to{transform:translateY(0);opacity:.3}50%{transform:translateY(-16px);opacity:.5}}.cuy-empty__center{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px}.cuy-empty__mascot-wrap{width:160px;height:160px;border-radius:50%;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 18%,var(--surface)),color-mix(in srgb,var(--primary) 8%,var(--surface)));display:flex;align-items:center;justify-content:center;box-shadow:0 12px 48px color-mix(in srgb,var(--primary) 14%,transparent),inset 0 -4px 16px color-mix(in srgb,var(--primary) 8%,transparent);margin-bottom:16px;animation:cuy-empty-mascot-float 4s ease-in-out infinite}@keyframes cuy-empty-mascot-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.cuy-empty__mascot{width:110px;height:110px;object-fit:contain}.cuy-empty__badge{font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:3px;color:var(--primary);margin-top:8px}.cuy-empty__title{font-size:36px;font-weight:800;color:var(--text-primary);margin:0}.cuy-empty__subtitle{font-size:var(--text-base);color:var(--text-secondary);margin:0;max-width:420px;line-height:1.7}.cuy-empty__cta{display:inline-flex;align-items:center;gap:10px;margin-top:24px;padding:16px 32px;border:none;border-radius:14px;background:var(--primary);color:var(--text-on-primary);font-size:16px;font-weight:700;font-family:inherit;cursor:pointer;box-shadow:0 4px 20px color-mix(in srgb,var(--primary) 28%,transparent);transition:transform .2s ease,box-shadow .2s ease}.cuy-empty__cta:hover{transform:translateY(-2px);box-shadow:0 8px 28px color-mix(in srgb,var(--primary) 38%,transparent)}.cuy-empty__cta:active{transform:scale(.98)}@media(max-width:600px){.cuy-empty{padding:24px;min-height:440px}.cuy-empty__mascot-wrap{width:140px;height:140px}.cuy-empty__mascot{width:95px;height:95px}.cuy-empty__title{font-size:26px}.cuy-empty__subtitle{font-size:var(--text-sm)}.cuy-empty__cta{padding:14px 24px;font-size:var(--text-base)}}@media(prefers-reduced-motion:reduce){.cuy-empty__particle,.cuy-empty__mascot-wrap{animation:none}}.me-fields{display:flex;flex-direction:column;gap:14px;padding:0 16px 16px}@media(min-width:601px){.me-fields{padding:0}}.me-field-label{display:flex;align-items:center;gap:6px;font-size:var(--text-xs);font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em}.me-field-label svg{color:var(--text-muted)}.me-field{display:flex;flex-direction:column;gap:8px}.me-accordion{border:1px solid var(--border);border-radius:10px;overflow:hidden;transition:border-color var(--transition-fast)}.me-accordion--open{border-color:color-mix(in srgb,var(--primary) 30%,var(--border))}.me-accordion__header{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:10px 12px;border:none;background:none;font-family:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--transition-fast)}.me-accordion__header:hover{background:var(--surface-hover)}.me-accordion__right{display:flex;align-items:center;gap:6px;color:var(--text-muted);min-width:0}.me-accordion__right svg{transition:transform .25s ease}.me-accordion--open .me-accordion__right svg{transform:rotate(180deg)}.me-accordion__value{font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.me-accordion__empty{font-size:var(--text-xs);color:var(--text-muted);font-style:italic}.me-accordion__body-wrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s ease}.me-accordion--open .me-accordion__body-wrap{grid-template-rows:1fr}.me-accordion__body{overflow:hidden;padding:0 12px}.me-accordion--open .me-accordion__body{padding-bottom:12px}.me-chips{display:flex;flex-wrap:wrap;gap:6px}.me-chip{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:8px;border:1px solid var(--border);background:var(--bg-primary);color:var(--text-secondary);font-family:inherit;font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.me-chip:hover{border-color:var(--border-hover);background:var(--surface-hover)}.me-chip--active{border-color:var(--primary-border, var(--primary));background:var(--primary-subtle);color:var(--primary);font-weight:600}.me-chip--active:hover{background:var(--primary-subtle)}.me-chip--create{border-style:dashed;border-color:color-mix(in srgb,var(--primary) 50%,var(--border));color:var(--primary);font-weight:600;background:color-mix(in srgb,var(--primary) 4%,var(--bg-primary))}.me-chip--create:hover{background:color-mix(in srgb,var(--primary) 10%,var(--bg-primary));border-color:var(--primary)}.me-level-row{display:flex;gap:0;border:1px solid var(--border);border-radius:8px;overflow:hidden}.me-level-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 4px;border:none;background:var(--bg-primary);color:var(--text-secondary);font-family:inherit;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent}.me-level-btn+.me-level-btn{border-left:1px solid var(--border)}.me-level-btn:hover{background:var(--surface-hover)}.me-level-btn--active{background:var(--primary);color:#fff}.me-level-btn--active:hover{background:var(--primary-hover, var(--primary))}.me-bars{display:inline-flex;align-items:flex-end;gap:2px;height:12px}.me-bars__bar{width:3px;border-radius:1px;background:var(--border)}.me-bars__bar:nth-child(1){height:4px}.me-bars__bar:nth-child(2){height:8px}.me-bars__bar:nth-child(3){height:12px}.me-bars__bar--filled{background:var(--text-muted)}.me-level-btn--active .me-bars__bar--filled{background:#fff}.me-save-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:12px;border:none;border-radius:12px;background:var(--primary);color:#fff;font-family:inherit;font-size:var(--text-base);font-weight:600;cursor:pointer;transition:background var(--transition-fast);-webkit-tap-highlight-color:transparent;box-shadow:0 2px 8px color-mix(in srgb,var(--primary) 25%,transparent)}.me-save-btn:hover{background:var(--primary-hover, var(--primary))}.library-v2{position:relative;padding:24px 32px;margin:0 auto;width:100%;overflow-y:auto;--library-thumb-zoom: 1.15}@media(max-width:768px){.library-v2{padding:16px}}.library-v2-header{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.library-v2-title{font-size:26px;font-weight:700;letter-spacing:-.4px;color:var(--text-primary);line-height:1.1}.library-group-header-mobile{display:none}@media(max-width:768px){.library-group-header-mobile{display:flex;align-items:center;gap:12px;margin-bottom:16px}.library-group-header-mobile__back{appearance:none;border:none;background:none;padding:4px;color:var(--text-primary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;transition:background var(--transition-fast)}.library-group-header-mobile__back:hover{background:var(--highlight-faint)}.library-group-header-mobile__title{font-size:18px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.library-v2--in-group .cc,.library-v2--in-group .library-filters,.library-v2--in-group .filter-chip-bar,.library-v2--in-group .library-breadcrumb-desktop{display:none}}@media(min-width:769px){.library-breadcrumb-desktop{display:flex}}.library-filters{display:flex;gap:10px;margin:12px 0 0;overflow-x:auto;padding-bottom:4px}.library-v2 .filter-chip-bar{padding:0;margin:12px 0}.library-filters::-webkit-scrollbar{height:6px}.library-chip{flex:0 0 auto;height:34px;padding:0 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.library-chip:hover{background:var(--surface-hover, var(--bg-tertiary));border-color:var(--border-hover, var(--border));filter:brightness(var(--hover-brightness))}.library-chip.active{background:color-mix(in srgb,var(--primary) 12%,var(--surface));border-color:color-mix(in srgb,var(--primary) 28%,var(--border));color:var(--text-primary)}.library-chip-star{display:inline-flex;align-items:center;gap:5px;padding:0 14px;color:var(--text-tertiary);transition:all var(--transition-fast)}.library-chip-star svg{transition:transform .2s cubic-bezier(.2,.8,.2,1)}.library-chip-star:hover:not(.active) svg{transform:scale(1.15)}.library-chip-star.active{color:var(--primary);background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 18%,var(--surface)),color-mix(in srgb,var(--primary) 12%,var(--surface)));border-color:color-mix(in srgb,var(--primary) 30%,var(--border));box-shadow:0 2px 8px color-mix(in srgb,var(--primary) 15%,transparent),inset 0 1px 0 var(--highlight-ghost)}.library-chip-star.active:hover{background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 22%,var(--surface)),color-mix(in srgb,var(--primary) 16%,var(--surface)));box-shadow:0 4px 12px color-mix(in srgb,var(--primary) 20%,transparent),inset 0 1px 0 var(--highlight-soft)}.library-chip-star.active svg{filter:drop-shadow(0 1px 2px color-mix(in srgb,var(--primary) 40%,transparent))}.library-grid-v2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;position:relative}.library-grid-item-animated{transform-origin:center bottom;will-change:transform,opacity}.library-grid-item-enter{animation:library-card-enter .3s cubic-bezier(.2,0,0,1) backwards;animation-delay:var(--enter-delay, 0ms)}@keyframes library-card-enter{0%{opacity:0;transform:scale(.92) translateY(8px)}}.library-grid-item-exit{animation:library-card-exit .25s cubic-bezier(.4,0,1,1) forwards;pointer-events:none}@keyframes library-card-exit{to{opacity:0;transform:scale(.88) translateY(12px)}}@media(min-width:768px){.library-grid-v2{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:960px){.library-grid-v2{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:1200px){.library-grid-v2{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}}@media(min-width:1500px){.library-grid-v2{grid-template-columns:repeat(5,minmax(0,1fr))}}.library-breakdown-card{position:relative;display:flex;flex-direction:column;width:100%;text-align:left;padding:0;border:1px solid color-mix(in srgb,var(--border) 70%,var(--text-muted) 30%);background:var(--surface);box-shadow:var(--shadow-card, var(--shadow-md-light));border-radius:18px;overflow:hidden;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.library-breakdown-card--selection{cursor:pointer}.library-breakdown-card--selected{border-color:color-mix(in srgb,var(--primary) 45%,var(--border));box-shadow:0 0 0 3px var(--primary-subtle)}.library-breakdown-card--dragging{opacity:.5}.library-select-checkbox{position:absolute;top:10px;left:10px;width:32px;height:32px;border-radius:10px;border:1px solid color-mix(in srgb,var(--border) 80%,transparent);background:color-mix(in srgb,var(--surface) 86%,transparent);color:var(--text-tertiary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity var(--transition-fast),transform var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast),filter var(--transition-fast);z-index:6;opacity:0;transform:translateY(-4px) scale(.96);pointer-events:none}.library-select-checkbox--visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.library-select-checkbox:disabled{cursor:default}.library-select-checkbox:hover{border-color:color-mix(in srgb,var(--primary) 25%,var(--border));background:color-mix(in srgb,var(--primary) 10%,var(--surface))}.library-select-checkbox--checked{background:var(--primary);border-color:var(--primary)}.library-select-checkbox--checked:hover{background:var(--primary-hover, var(--primary-dark));border-color:var(--primary-hover, var(--primary-dark))}.library-select-badge{position:absolute;top:10px;right:10px;z-index:6;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.6);background:#0000004d;transition:all var(--transition-fast)}.library-select-badge--active{border-color:var(--primary);background:var(--primary);color:#fff}.library-breakdown-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-hover, var(--shadow-lg-light));border-color:var(--border-hover, var(--border))}.library-breakdown-thumb{position:relative;width:100%;aspect-ratio:1 / 1;background:var(--bg-tertiary);overflow:hidden;border:none;padding:0;cursor:pointer}@media(min-width:960px){.library-breakdown-thumb{aspect-ratio:4 / 3}}.library-breakdown-thumb-img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(var(--library-thumb-zoom));filter:saturate(.92) contrast(1.03);-webkit-user-drag:none;pointer-events:none}.library-breakdown-thumb:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 0%,var(--shadow-ghost) 70%,var(--shadow-subtle) 100%)}.library-breakdown-thumb-fallback{width:100%;height:100%;background:linear-gradient(135deg,var(--primary-subtle),var(--blue-subtle, var(--primary-subtle)))}.library-breakdown-star{width:34px;height:34px;border-radius:10px;border:1px solid rgba(255,255,255,.15);background:#ffffffe6;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--text-tertiary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .18s cubic-bezier(.2,.8,.2,1),background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,opacity .18s ease;position:absolute;top:10px;left:10px;z-index:3;opacity:0;pointer-events:none;box-shadow:0 2px 8px #00000014}.library-breakdown-star svg{width:18px;height:18px}.library-breakdown-star:hover{background:#fffffffa;box-shadow:var(--hover-shadow-lift);transform:scale(var(--hover-scale-button))}.library-breakdown-star:active{transform:scale(.9);box-shadow:0 1px 4px #0000001a}.library-breakdown-star.active{color:var(--primary);background:#fffffff2;border-color:#0000000f;box-shadow:0 2px 8px #00000014;animation:library-star-pop .28s cubic-bezier(.2,.9,.25,1)}.library-breakdown-star.active:hover{background:#fff;box-shadow:0 4px 12px #0000001a}.library-breakdown-card:hover .library-breakdown-star,.library-breakdown-card:focus-within .library-breakdown-star,.library-breakdown-star.active,.library-breakdown-star:focus-visible{opacity:1;pointer-events:auto}@media(hover:none)and (pointer:coarse){.library-breakdown-star{opacity:1;pointer-events:auto}}@keyframes library-star-pop{0%{transform:scale(.85)}50%{transform:scale(1.12)}to{transform:scale(1)}}.library-breakdown-menu{position:absolute;top:4px;right:4px;z-index:5;width:28px;height:28px;border:none;border-radius:8px;background:transparent;color:var(--text-tertiary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .18s ease,color .18s ease,background .18s ease}.library-breakdown-menu:hover{color:var(--text-primary);background:var(--highlight-faint)}.library-breakdown-menu:active{color:var(--text-primary)}.library-breakdown-card:hover .library-breakdown-menu,.library-breakdown-card:focus-within .library-breakdown-menu{opacity:1;pointer-events:auto}@media(hover:none)and (pointer:coarse){.library-breakdown-menu{display:none}}@media(prefers-reduced-motion:reduce){.library-breakdown-star{transition:none}.library-breakdown-star.active{animation:none}.library-select-checkbox{transition:none;transform:none}}.library-topbar-actions-animated{display:flex;align-items:center}.library-breakdown-body{position:relative;padding:12px;display:flex;flex-direction:column;gap:4px;min-width:0}.library-breakdown-title-row{padding-right:28px}.library-breakdown-title{appearance:none;background:transparent;border:none;padding:0;margin:0;text-align:left;cursor:pointer;flex:1;min-width:0;font-size:var(--text-sm);font-weight:700;color:var(--text-primary);line-height:1.3;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.library-breakdown-title:hover{text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--text-primary) 25%,transparent);text-underline-offset:2px}.library-breakdown-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.library-breakdown-style-label{font-size:var(--text-xs);font-weight:600;color:var(--primary);text-transform:uppercase;letter-spacing:.03em}.library-breakdown-subtitle{display:none}@media(min-width:960px){.library-breakdown-subtitle{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;color:var(--text-secondary);font-size:var(--text-sm);line-height:1.3;margin-top:2px}}.library-breakdown-date{font-size:var(--text-xs);color:var(--text-tertiary);flex-shrink:0}.library-v2-loading{min-height:60vh;display:flex;align-items:center;justify-content:center}.library-v2-empty{padding:28px;text-align:center;color:var(--text-secondary)}.library-v2-empty-title{font-size:16px;color:var(--text-primary);margin-bottom:6px}.library-v2-empty-text{font-size:var(--text-sm);color:var(--text-tertiary)}.library-v2--empty{display:flex;align-items:center;justify-content:center;flex:1;min-height:0}@media(prefers-reduced-motion:reduce){.library-grid-item-animated,.library-grid-item-enter{animation:none;transform:none!important;opacity:1!important}}.library-ghost-card{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;align-self:stretch;border-radius:18px;border:2px dashed var(--border-hover, var(--text-tertiary));background:transparent;cursor:pointer;transition:border-color .2s ease,background-color .2s ease}.library-ghost-card:hover{border-color:var(--primary);background:var(--primary-tint, rgba(99, 102, 241, .04))}.library-ghost-card:hover .library-ghost-card-icon{background:var(--primary);color:var(--text-on-primary)}.library-ghost-card:hover .library-ghost-card-text{color:var(--primary)}.library-ghost-card:active{transform:scale(.98)}.library-ghost-card-content{display:flex;flex-direction:column;align-items:center;gap:12px}.library-ghost-card-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--surface-alt, var(--bg-tertiary));color:var(--text-muted);border-radius:50%;transition:background-color .2s ease,color .2s ease}.library-ghost-card-text{font-size:var(--text-sm);font-weight:500;color:var(--text-muted);transition:color .2s ease}@media(max-width:600px){.library-ghost-card{aspect-ratio:3 / 4;border-width:3px}.library-ghost-card-icon{width:36px;height:36px}.library-ghost-card-text{font-size:var(--text-xs)}}.compact-card{position:relative;display:flex;flex-direction:column;background:var(--surface, #1a1a1a);border:1px solid var(--border, #2a2a2a);border-radius:8px;overflow:hidden;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.compact-card:hover{border-color:var(--border-hover, #3a3a3a);box-shadow:0 4px 12px var(--shadow-soft)}.compact-card:active{transform:scale(.995)}.compact-card-selection{padding-left:64px}.compact-card-selected{border-color:var(--accent, var(--primary-alt));background:var(--surface-selected, var(--primary-subtle))}.compact-checkbox{position:absolute;top:8px;left:8px;width:48px;height:48px;border:2px solid var(--border, #3a3a3a);border-radius:10px;background:var(--surface, #1a1a1a);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);z-index:2;font-size:22px}.compact-checkbox:hover{border-color:var(--accent, var(--primary-alt))}.compact-checkbox-checked{background:var(--accent, var(--primary-alt));border-color:var(--accent, var(--primary-alt))}.compact-thumbnail{position:relative;width:100%;aspect-ratio:16 / 9;background:var(--letterbox-color, #000);overflow:hidden}.compact-thumb-img,.compact-thumb-gif{width:100%;height:100%;object-fit:contain;transition:opacity var(--transition-normal);transform:scale(1.01)}.compact-thumb-hidden{opacity:0}.compact-thumb-gif{position:absolute;inset:0;opacity:0}.compact-thumb-gif-visible{opacity:1}.compact-thumb-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--surface, #1a1a1a) 0%,var(--surface-elevated, #2a2a2a) 100%)}.compact-duration{position:absolute;bottom:6px;right:6px;padding:2px 6px;font-size:var(--text-xs);font-weight:600;color:#fff;background:#000000b3;border-radius:4px;font-variant-numeric:tabular-nums}.compact-star{position:absolute;top:8px;right:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#00000080;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:none;border-radius:50%;color:#fff;font-size:16px;cursor:pointer;opacity:0;transition:all var(--transition-fast);box-shadow:0 2px 8px #0003}.compact-card:hover .compact-star{opacity:1}@media(hover:none)and (pointer:coarse){.compact-star{opacity:1}}.compact-star:hover{background:#000000b3;transform:scale(1.1)}.compact-star-active{opacity:1;background:var(--warning);color:#fff}.compact-star-active:hover{background:var(--warning-strong)}.compact-content{padding:12px;display:flex;flex-direction:column;gap:4px;min-height:0}.compact-title{font-size:var(--text-sm);font-weight:600;color:var(--text-primary, #fff);margin:0;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.compact-subtitle{font-size:var(--text-xs);color:var(--text-secondary, #aaa);margin:0;line-height:1.3;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.compact-description{font-size:var(--text-xs);color:var(--text-tertiary, #888);margin:4px 0 0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.compact-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.compact-tag{font-size:var(--text-xs);font-weight:500;padding:2px 6px;border-radius:4px;background:var(--surface-hover);color:var(--text-secondary);transition:background var(--transition-fast);cursor:pointer}.compact-tag:hover{background:var(--border)}.compact-tag-more{background:transparent;color:var(--text-tertiary, #666);cursor:default}.compact-tag-bachata{background:var(--pink-subtle);color:var(--pink)}.compact-tag-salsa{background:var(--danger-subtle);color:var(--danger)}.compact-tag-sensual{background:var(--primary-subtle);color:var(--primary)}.compact-tag-kizomba{background:var(--primary-subtle);color:var(--warning-strong)}.compact-tag-zouk{background:var(--cyan-subtle);color:var(--cyan)}.compact-tag-level{background:var(--success-subtle);color:var(--success)}.compact-tag-technique{background:var(--primary-subtle);color:var(--primary)}.compact-tag-combo{background:var(--pink-subtle);color:var(--pink)}.compact-tag-default{background:var(--surface-hover);color:var(--text-secondary)}.compact-date{font-size:var(--text-xs);color:var(--text-tertiary, #666);margin-top:auto;padding-top:6px}.compact-inline-edit{font-size:var(--text-sm)}.compact-tags-edit{display:flex;gap:6px;align-items:center;margin-top:6px}.compact-tags-input{flex:1;font-size:var(--text-xs);padding:4px 8px;border:1px solid var(--border, #3a3a3a);border-radius:4px;background:var(--surface, #1a1a1a);color:var(--text-primary, #fff);outline:none}.compact-tags-input:focus{border-color:var(--accent, var(--primary-alt))}.compact-edit-actions{display:flex;gap:4px}.compact-edit-btn{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:none;border-radius:10px;font-size:20px;cursor:pointer;transition:background var(--transition-fast)}.compact-edit-cancel{background:var(--surface-elevated, #2a2a2a);color:var(--text-secondary, #aaa)}.compact-edit-cancel:hover{background:var(--surface-hover, #3a3a3a)}.compact-edit-save{background:var(--accent, var(--primary-alt));color:var(--text-primary)}.compact-edit-save:hover{background:var(--accent-hover, var(--primary-dark))}@media(max-width:600px){.compact-content{padding:10px}.compact-title{font-size:var(--text-sm)}.compact-description{-webkit-line-clamp:1}}body.capacitor-native .compact-title{font-size:16px}body.capacitor-native .compact-subtitle,body.capacitor-native .compact-description{font-size:var(--text-sm)}body.capacitor-native .compact-tag{font-size:var(--text-xs);padding:4px 10px}body.capacitor-native .compact-date,body.capacitor-native .compact-duration{font-size:var(--text-sm)}body.capacitor-native .compact-inline-edit{font-size:var(--text-base)}body.capacitor-native .compact-tags-input{font-size:var(--text-sm)}.vtpm-overlay{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000}.vtpm-card{width:min(560px,100%);background:#141414eb;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:18px;color:#fff;box-shadow:0 18px 60px #0006;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.vtpm-header{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.vtpm-title{font-size:18px;font-weight:700}.vtpm-file{display:flex;gap:10px;align-items:baseline;color:#ffffffbf;font-size:var(--text-sm)}.vtpm-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.vtpm-file-size{flex:0 0 auto}.vtpm-options{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.vtpm-option{display:flex;gap:12px;align-items:flex-start;width:100%;text-align:left;padding:12px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#fff;cursor:pointer}.vtpm-option.selected{border-color:#8b5cf6bf;background:#8b5cf624}.vtpm-radio{margin-top:2px;width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.55);flex:0 0 auto}.vtpm-option.selected .vtpm-radio{border-color:#8b5cf6f2;background:#8b5cf6f2}.vtpm-option-content{display:flex;flex-direction:column;gap:3px}.vtpm-option-label{font-weight:700;font-size:var(--text-sm)}.vtpm-option-desc{font-size:var(--text-sm);color:#ffffffbf}.vtpm-actions{display:flex;justify-content:flex-end;gap:10px}.vtpm-cancel,.vtpm-confirm{border-radius:10px;padding:10px 12px;border:1px solid rgba(255,255,255,.14);background:#ffffff0f;color:#fff;cursor:pointer;font-weight:700}.vtpm-confirm{border-color:#8b5cf6a6;background:#8b5cf638}.vtpm-cancel:disabled,.vtpm-confirm:disabled,.vtpm-option:disabled{opacity:.6;cursor:not-allowed}.vtpm-source-tabs{display:flex;gap:8px;margin-bottom:14px}.vtpm-source-tab{flex:1;padding:10px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#ffffffa6;font-weight:600;font-size:var(--text-sm);cursor:pointer;transition:var(--transition-fast, .15s ease)}.vtpm-source-tab:hover:not(:disabled):not(.active){background:#ffffff14;color:#ffffffd9}.vtpm-source-tab.active{border-color:#8b5cf6a6;background:#8b5cf62e;color:#fff}.vtpm-source-tab:disabled{opacity:.5;cursor:not-allowed}.vtpm-youtube-section{display:flex;flex-direction:column;gap:10px}.vtpm-youtube-input{width:100%;padding:12px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.15);background:#ffffff0f;color:#fff;font-size:var(--text-sm);outline:none;transition:var(--transition-fast, .15s ease)}.vtpm-youtube-input::placeholder{color:#fff6}.vtpm-youtube-input:focus{border-color:#8b5cf6a6;background:#ffffff14}.vtpm-youtube-input.error{border-color:#ef4444a6}.vtpm-youtube-input.valid{border-color:#22c55ea6}.vtpm-validating{color:#ffffffa6;font-size:var(--text-sm);display:flex;align-items:center;gap:8px}.vtpm-validating:before{content:"";width:14px;height:14px;border:2px solid rgba(139,92,246,.3);border-top-color:#8b5cf6e6;border-radius:50%;animation:vtpm-spin .8s linear infinite}@keyframes vtpm-spin{to{transform:rotate(360deg)}}.vtpm-url-error{color:#ef4444e6;font-size:var(--text-sm)}.vtpm-youtube-preview{display:flex;gap:12px;padding:10px;border-radius:10px;background:#ffffff0a;border:1px solid rgba(34,197,94,.25)}.vtpm-youtube-thumbnail{width:100px;height:56px;object-fit:cover;border-radius:6px;flex-shrink:0}.vtpm-youtube-info{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.vtpm-youtube-title{font-weight:600;font-size:var(--text-sm);color:#fff;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.vtpm-youtube-meta{display:flex;gap:10px;font-size:var(--text-xs);color:#fff9}.vtpm-youtube-channel{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vtpm-youtube-duration{flex-shrink:0}.upload-zone{position:relative;display:flex;align-items:center;gap:16px;padding:20px 24px;background:var(--surface, #1a1a1a);border:2px dashed var(--border, #2a2a2a);border-radius:12px;cursor:pointer;transition:all var(--transition-normal);margin-bottom:24px}.upload-zone:hover{border-color:var(--border-hover, #3a3a3a);background:var(--surface-hover, #1e1e1e)}.upload-zone-dragging{border-color:var(--accent, var(--primary-alt));background:var(--primary-subtle);border-style:solid}.upload-zone-uploading{cursor:default;pointer-events:none}.upload-zone-input{display:none}.upload-zone-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--surface-hover);border:1px solid var(--border);border-radius:10px;color:var(--text-secondary);transition:all var(--transition-normal);flex-shrink:0}.upload-zone:hover .upload-zone-icon,.upload-zone-dragging .upload-zone-icon{background:var(--primary);border-color:var(--primary);color:#fff}.upload-zone-icon-bounce{animation:uploadBounce .5s ease infinite}@keyframes uploadBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.upload-zone-text{display:flex;flex-direction:column;gap:2px}.upload-zone-title{font-size:var(--text-base);font-weight:600;color:var(--text-primary, #fff)}.upload-zone-subtitle{font-size:var(--text-sm);color:var(--text-tertiary, #666)}.upload-zone-browse{color:var(--accent, var(--primary-alt));text-decoration:underline;text-underline-offset:2px}.upload-zone-formats{display:flex;gap:6px;margin-left:auto}.upload-zone-format{font-size:var(--text-xs);font-weight:500;padding:4px 8px;background:var(--surface-hover);color:var(--text-secondary);border-radius:4px}.upload-zone-progress{display:flex;align-items:center;gap:16px;width:100%}.upload-zone-progress-bar{flex:1;height:6px;background:var(--surface-elevated, #2a2a2a);border-radius:3px;overflow:hidden}.upload-zone-progress-fill{height:100%;background:var(--accent, var(--primary-alt));border-radius:3px;transition:width var(--transition-normal)}.upload-zone-progress-text{font-size:var(--text-sm);font-weight:500;color:var(--text-secondary, #aaa);white-space:nowrap}.upload-zone-error{position:absolute;bottom:-32px;left:0;display:flex;align-items:center;gap:6px;font-size:var(--text-xs);color:var(--danger)}.upload-zone-error-icon{display:flex;align-items:center;justify-content:center;width:16px;height:16px;background:var(--danger);color:var(--text-primary);border-radius:50%;font-size:var(--text-xs);font-weight:700}@media(max-width:768px){.upload-zone{flex-direction:column;text-align:center;padding:24px 16px;gap:12px}.upload-zone-text{align-items:center}.upload-zone-formats{margin-left:0}}@media(max-width:480px){.upload-zone{padding:20px 12px}.upload-zone-icon{width:48px;height:48px}.upload-zone-title{font-size:var(--text-sm)}.upload-zone-format{font-size:var(--text-xs);padding:3px 6px}}.loader{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.loader-fullscreen{position:fixed;inset:0;width:100vw;height:100vh;background:var(--bg-primary);z-index:9999}.loader-spinner{display:flex;align-items:center;justify-content:center}.loader-fullscreen.loader--dark{background:#000}.loader-fullscreen.loader--onboarding{background:var(--onboarding-bg, var(--bg-primary))}.loader-label{font-size:var(--text-sm);opacity:.65;color:var(--text-secondary, #888);text-align:center}.library-content{position:relative;padding:24px 32px;max-width:1600px;margin:0 auto;width:100%;isolation:isolate}.library-grid-compact{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}.library-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;text-align:center;padding:40px 20px}.library-empty-icon{font-size:48px;margin-bottom:16px;opacity:.5}.library-empty-title{font-size:18px;font-weight:600;color:var(--text-primary, #fff);margin-bottom:8px}.library-empty-text{font-size:var(--text-sm);color:var(--text-tertiary, #666)}.library-loading{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 200px);width:100%}@media(min-width:1200px){.library-grid-compact{grid-template-columns:repeat(5,1fr)}}@media(min-width:1200px)and (max-width:1200px){.library-grid-compact{grid-template-columns:repeat(4,1fr)}}@media(min-width:768px)and (max-width:1200px){.library-content{padding:20px 24px}.library-grid-compact{grid-template-columns:repeat(3,1fr);gap:16px}}@media(min-width:480px)and (max-width:768px){.library-content{padding:16px}.library-grid-compact{grid-template-columns:repeat(2,1fr);gap:12px}}@media(max-width:480px){.library-content{padding:12px}.library-grid-compact{grid-template-columns:1fr;gap:12px}}body.capacitor-native .library-empty-title{font-size:20px}body.capacitor-native .library-empty-text{font-size:var(--text-sm)}.move-context-menu{position:fixed;min-width:200px;padding:6px;background:var(--bg-secondary);border:1px solid var(--highlight-faint);border-radius:10px;box-shadow:0 4px 6px -1px var(--shadow-medium),0 10px 15px -3px var(--shadow-heavy),0 0 0 1px var(--highlight-ghost);z-index:99999;animation:contextMenuFadeIn .1s ease}@keyframes contextMenuFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.move-context-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:transparent;border:none;border-radius:6px;color:var(--overlay-medium);font-size:var(--text-sm);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.move-context-menu-item:hover{background:var(--highlight-ghost);color:var(--text-primary)}.move-context-menu-item.active{background:var(--primary-subtle);color:var(--primary-muted)}.move-context-menu-item-danger{color:var(--danger)}.move-context-menu-item-danger:hover{background:var(--danger-subtle);color:var(--danger-light)}.move-context-menu-item svg{flex-shrink:0;opacity:.7}.move-context-menu-item:hover svg{opacity:1}.move-context-menu-item svg.starred{color:var(--warning);fill:var(--warning);opacity:1}.move-context-menu-divider{height:1px;margin:4px 8px;background:var(--highlight-ghost)}.move-context-menu-item-submenu{position:relative}.move-context-menu-submenu-icon{margin-left:auto;opacity:.5}.move-context-menu-submenu{position:absolute;top:-6px;left:calc(100% - 8px);min-width:180px;padding:6px 6px 6px 14px;background:var(--bg-secondary);border:1px solid var(--highlight-faint);border-radius:10px;box-shadow:0 4px 6px -1px var(--shadow-medium),0 10px 15px -3px var(--shadow-heavy);animation:submenuFadeIn .1s ease}.move-context-menu-item-submenu:after{content:"";position:absolute;top:0;right:-12px;width:12px;height:100%}@keyframes submenuFadeIn{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}.move-context-menu-check{margin-left:auto;color:var(--primary-light)}.move-context-menu-submenu-create{color:var(--primary-alt)}.move-context-menu-submenu-create:hover{background:var(--primary-subtle);color:var(--primary-muted)}.move-context-menu-submenu-divider{height:1px;margin:4px 8px;background:var(--highlight-ghost)}.move-context-menu-new-collection-input{padding:4px 8px}.move-context-menu-collection-input{width:100%;padding:8px 10px;background:var(--highlight-ghost);border:1px solid var(--primary-glow);border-radius:6px;color:var(--text-primary);font-size:var(--text-sm);outline:none;transition:border-color var(--transition-fast)}.move-context-menu-collection-input::placeholder{color:var(--overlay-subtle)}.move-context-menu-collection-input:focus{border-color:var(--primary-glow);background:var(--highlight-faint)}[data-theme=warm] .move-context-menu{background:var(--surface);border-color:var(--shadow-subtle);box-shadow:0 4px 6px -1px var(--shadow-subtle),0 10px 15px -3px var(--shadow-soft)}[data-theme=warm] .move-context-menu-item{color:var(--overlay-dark)}[data-theme=warm] .move-context-menu-item:hover{background:var(--shadow-ghost);color:var(--text-primary)}[data-theme=warm] .move-context-menu-item.active{background:var(--primary-subtle);color:var(--primary-dark)}[data-theme=warm] .move-context-menu-item-danger{color:var(--danger)}[data-theme=warm] .move-context-menu-item-danger:hover{background:var(--danger-subtle);color:var(--danger)}[data-theme=warm] .move-context-menu-divider{background:var(--shadow-subtle)}[data-theme=warm] .move-context-menu-submenu{background:var(--surface);border-color:var(--shadow-subtle);box-shadow:0 4px 6px -1px var(--shadow-subtle),0 10px 15px -3px var(--shadow-soft)}[data-theme=warm] .move-context-menu-check,[data-theme=warm] .move-context-menu-submenu-create{color:var(--primary-dark)}[data-theme=warm] .move-context-menu-submenu-create:hover{background:var(--primary-subtle);color:var(--primary-dark)}[data-theme=warm] .move-context-menu-submenu-divider{background:var(--shadow-subtle)}[data-theme=warm] .move-context-menu-collection-input{background:var(--shadow-ghost);border-color:var(--primary-glow);color:var(--text-primary)}[data-theme=warm] .move-context-menu-collection-input::placeholder{color:var(--shadow-heavy)}[data-theme=warm] .move-context-menu-collection-input:focus{border-color:var(--primary-glow);background:var(--shadow-ghost)}.tag-filter-dropdown{position:relative}.tag-filter-btn{display:flex;align-items:center;gap:8px;padding:12px 16px;min-height:48px;background:var(--surface);border:1px solid var(--border);border-radius:10px;font-size:var(--text-sm);font-weight:500;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast)}.tag-filter-btn:hover{background:var(--surface-hover);border-color:var(--border-hover)}.tag-filter-btn-active{background:var(--primary-subtle);border-color:var(--primary-glow)}.tag-filter-btn-active:hover{background:var(--primary-glow);border-color:var(--primary-glow)}.tag-filter-icon{flex-shrink:0;font-size:20px;color:var(--text-secondary)}.tag-filter-btn-active .tag-filter-icon{color:var(--primary-light)}.tag-filter-label{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag-filter-clear{display:flex;align-items:center;justify-content:center;width:32px;height:32px;margin:-4px 0;border-radius:8px;color:var(--primary-light);transition:all var(--transition-fast)}.tag-filter-clear:hover{background:var(--danger-subtle);color:var(--danger)}.tag-filter-chevron{flex-shrink:0;color:var(--text-tertiary);transition:transform var(--transition-fast)}.tag-filter-chevron-open{transform:rotate(180deg)}.tag-filter-btn-active .tag-filter-chevron{color:var(--primary-light)}.tag-filter-menu{position:fixed;min-width:180px;max-width:240px;max-height:320px;overflow-y:auto;background:var(--surface);border:1px solid var(--highlight-faint);border-radius:10px;box-shadow:0 8px 24px var(--shadow-heavy);z-index:1000;padding:4px}.tag-filter-empty{padding:16px;text-align:center;font-size:var(--text-sm);color:var(--overlay-subtle)}.tag-filter-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;min-height:48px;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:all var(--transition-fast);text-align:left}.tag-filter-item:hover{background:var(--highlight-ghost)}.tag-filter-check{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--primary-alt)}.tag-filter-item-label{padding:4px 10px;border-radius:6px;font-size:var(--text-sm);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag-color-default{background:var(--blue-subtle);color:var(--blue)}.tag-color-bachata{background:var(--pink-subtle);color:var(--pink-light)}.tag-color-salsa{background:var(--danger-subtle);color:var(--danger-light)}.tag-color-sensual{background:var(--primary-subtle);color:var(--primary-muted)}.tag-color-kizomba{background:var(--orange-subtle);color:var(--orange)}.tag-color-zouk{background:var(--cyan-subtle);color:var(--cyan-light)}.tag-color-merengue{background:var(--yellow-subtle);color:var(--yellow-light)}.tag-color-cumbia{background:var(--success-subtle);color:var(--success-light)}.tag-color-tango{background:var(--primary-subtle);color:var(--primary-muted)}.tag-color-level{background:var(--success-subtle);color:var(--success-light)}.tag-color-technique{background:var(--primary-subtle);color:var(--primary-light)}.tag-color-combo{background:var(--pink-subtle);color:var(--pink-light)}.tag-color-freeze{background:var(--blue-subtle);color:var(--blue)}.tag-color-dip{background:var(--primary-subtle);color:var(--primary-muted)}.tag-color-role{background:var(--orange-subtle);color:var(--orange)}.tag-filter-overlay{position:fixed;inset:0;background:var(--shadow-heavy);z-index:999;animation:tagFilterOverlayFadeIn .2s ease}@keyframes tagFilterOverlayFadeIn{0%{opacity:0}to{opacity:1}}.tag-filter-menu.mobile{position:fixed;inset:auto 0 0;min-width:100%;max-width:100%;max-height:70vh;border-radius:20px 20px 0 0;padding:8px 0 calc(var(--safe-area-bottom) + 16px) 0;animation:tagFilterSlideUp .25s cubic-bezier(.4,0,.2,1)}@keyframes tagFilterSlideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.tag-filter-drag-handle{width:36px;height:4px;background:var(--highlight-soft);border-radius:2px;margin:8px auto 12px}.tag-filter-header{display:flex;align-items:center;justify-content:space-between;padding:8px 20px 16px;border-bottom:1px solid var(--highlight-ghost);margin-bottom:8px}.tag-filter-header-title{font-size:16px;font-weight:600;color:var(--text-primary)}.tag-filter-header-clear{background:none;border:none;font-size:var(--text-sm);font-weight:500;color:var(--primary-alt);cursor:pointer;padding:12px 16px;min-height:48px;border-radius:10px;transition:background var(--transition-fast)}.tag-filter-header-clear:hover{background:var(--primary-subtle)}.tag-filter-menu.mobile .tag-filter-list{padding:0 8px;overflow-y:auto;max-height:calc(70vh - 100px)}.tag-filter-menu.mobile .tag-filter-item{padding:14px 16px;min-height:52px;border-radius:10px}.tag-filter-menu.mobile .tag-filter-check{width:22px;height:22px}.tag-filter-menu.mobile .tag-filter-item-label{font-size:var(--text-base);padding:5px 12px}.tag-filter-menu.mobile .tag-filter-empty{padding:32px 20px;font-size:var(--text-base)}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 20px;height:32px;border-radius:10px;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast);border:1px solid var(--highlight-ghost);background:var(--highlight-ghost);color:var(--text-primary);white-space:nowrap;letter-spacing:-.01em}.btn:hover{background:var(--highlight-faint);border-color:var(--highlight-subtle);transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none;transform:none}.btn.is-loading .btn__icon,.btn.is-loading .btn__label{visibility:hidden}.btn--sm{height:36px;padding:0 14px;font-size:var(--text-sm);border-radius:8px;gap:6px}.btn--lg{height:52px;padding:0 26px;font-size:var(--text-base);font-weight:700;border-radius:14px}.btn--primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);border-color:var(--primary-glow);color:#fff;box-shadow:0 4px 14px var(--primary-glow)}.btn--primary:hover{background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary) 100%);transform:translateY(-2px) scale(1.02);box-shadow:0 8px 24px var(--primary-glow),0 0 0 3px var(--primary-subtle)}.btn--primary:active{transform:translateY(0) scale(1);box-shadow:0 2px 8px var(--primary-glow)}.btn--secondary{background:linear-gradient(145deg,#252833eb,#161821f5);border-color:var(--highlight-ghost);color:var(--text-primary);box-shadow:0 8px 18px var(--shadow-medium),inset 0 1px 0 var(--highlight-ghost)}.btn--secondary:hover{background:linear-gradient(145deg,#2d3243f2,#1b1e2bfa);border-color:var(--highlight-subtle);color:var(--text-on-primary);box-shadow:0 12px 24px var(--shadow-medium),inset 0 1px 0 var(--highlight-ghost)}.btn--secondary:active{box-shadow:0 6px 16px var(--shadow-heavy)}.btn--ghost{background:transparent;border-color:transparent;color:var(--text-secondary);box-shadow:none}.btn--ghost:hover{background:var(--highlight-ghost);color:var(--text-primary)}.btn--danger{background:var(--danger-subtle);border-color:#f8717133;color:var(--danger-light)}.btn--danger:hover{background:#ef444433;border-color:#f871714d;color:var(--danger-light)}.btn--accent{background:linear-gradient(145deg,var(--primary) 0%,var(--primary) 60%,var(--primary-light) 100%);border-color:var(--primary-glow);color:#fff;box-shadow:0 6px 18px var(--primary-glow),0 0 0 3px var(--primary-subtle)}.btn--accent:hover{background:linear-gradient(145deg,var(--primary-light) 0%,var(--primary-light) 60%,var(--primary-muted) 100%);border-color:var(--primary-border);transform:translateY(-2px) scale(1.02);box-shadow:0 10px 28px var(--primary-glow),0 0 0 4px var(--primary-subtle)}.btn--accent:active{transform:translateY(0) scale(1);box-shadow:0 4px 12px var(--primary-glow),0 0 0 2px var(--primary-subtle)}.btn--step{background:linear-gradient(135deg,var(--accent-purple, #8b5cf6) 0%,var(--accent-purple-dark, #7c3aed) 100%);border-color:var(--accent-purple-glow, rgba(139, 92, 246, .5));color:#fff;box-shadow:0 4px 14px var(--accent-purple-glow, rgba(139, 92, 246, .3))}.btn--step:hover{background:linear-gradient(135deg,var(--accent-purple-light, #a78bfa) 0%,var(--accent-purple, #8b5cf6) 100%);transform:translateY(-2px) scale(1.02);box-shadow:0 8px 24px var(--accent-purple-glow, rgba(139, 92, 246, .4)),0 0 0 3px #8b5cf626}.btn--step:active{transform:translateY(0) scale(1);box-shadow:0 2px 8px var(--accent-purple-glow, rgba(139, 92, 246, .3))}.btn--icon{width:42px;padding:0}.btn--icon.btn--sm{width:36px}.btn--icon.btn--lg{width:52px}.btn__icon{width:16px;height:16px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.btn--sm .btn__icon{width:14px;height:14px}.btn--lg .btn__icon{width:18px;height:18px}.btn-group{display:flex;align-items:center;gap:10px}.btn-group--sm{gap:8px}.btn-group--end{justify-content:flex-end}.btn-group--center{justify-content:center}.hover-lift{transition:transform var(--transition-normal),box-shadow var(--transition-normal),background var(--transition-normal),border-color var(--transition-normal)}.hover-lift:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 24px var(--primary-glow),0 0 0 3px var(--primary-subtle)}.hover-lift:active{transform:translateY(0) scale(1);box-shadow:0 2px 8px var(--primary-glow)}.hover-lift-subtle{transition:transform var(--transition-normal),box-shadow var(--transition-normal),background var(--transition-normal)}.hover-lift-subtle:hover{transform:translateY(-1px);box-shadow:0 4px 12px var(--shadow-soft)}.hover-lift-subtle:active{transform:translateY(0)}@media(max-width:960px){.btn{height:clamp(42px,6vh,48px);padding:0 clamp(14px,3vw,20px);font-size:var(--text-sm)}.btn--lg{height:clamp(48px,6.5vh,54px);padding:0 clamp(16px,3.6vw,22px);font-size:var(--text-sm)}}@media(max-width:600px){.btn{height:42px;padding:0 14px;font-size:var(--text-sm);border-radius:10px}.btn--lg{height:48px;padding:0 16px;font-size:var(--text-sm)}.btn--sm{height:36px;padding:0 12px}.btn__icon{width:16px;height:16px}.btn-group{gap:6px}}@media(max-height:520px){.btn{height:42px;padding:0 14px;font-size:var(--text-sm)}.btn--lg{height:42px;padding:0 16px}}.btn--large{height:56px;padding:0 32px;font-size:16px;font-weight:700;border-radius:14px;gap:10px}@media(max-width:600px){.btn--large{height:52px;padding:0 24px;font-size:var(--text-base)}}.btn--glow{animation:buttonGlow 2s ease-in-out 3}.btn--glow:hover{animation:none}@keyframes buttonGlow{0%,to{box-shadow:0 4px 14px var(--primary-glow),0 0 0 0 var(--primary-glow)}50%{box-shadow:0 6px 20px var(--primary-glow),0 0 0 8px #f399751f}}.btn--fixed-mark{min-width:180px}.btn--fixed-mark .btn__label{transition:opacity var(--transition-fast)}.btn--transitioning .btn__label{opacity:0}.btn--fixed-mark{transition:all var(--transition-fast),transform .2s cubic-bezier(.34,1.56,.64,1)}.btn--transitioning{transform:scale(.97)}.btn--transitioned{animation:buttonPop .3s cubic-bezier(.34,1.56,.64,1)}@keyframes buttonPop{0%{transform:scale(.97)}50%{transform:scale(1.03)}to{transform:scale(1)}}.onboarding-flow{height:100dvh;min-height:100dvh;background:var(--onboarding-bg, var(--bg-primary));color:var(--text-primary);display:flex;flex-direction:column;overflow:hidden;font-family:Inter,SF Pro Display,Segoe UI,system-ui,-apple-system,sans-serif;padding:0;box-sizing:border-box;transition:background var(--transition-slow)}body.capacitor-native .onboarding-flow{box-sizing:border-box}@keyframes onboarding-fade-in{0%{opacity:0}to{opacity:1}}.onboarding-fade-in{animation:onboarding-fade-in .6s ease-out}@keyframes onboarding-fade-out{0%{opacity:1}to{opacity:0}}.onboarding-fade-out{animation:onboarding-fade-out .2s ease-out forwards}@keyframes onboarding-slide-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.onboarding-slide-up{animation:onboarding-slide-up .5s cubic-bezier(.16,1,.3,1)}@keyframes onboarding-scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.onboarding-scale-in{animation:onboarding-scale-in .4s cubic-bezier(.16,1,.3,1)}@keyframes phase-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes phase-exit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}.phase-entering{animation:phase-enter .4s cubic-bezier(.16,1,.3,1) forwards}.phase-exiting{animation:phase-exit .25s ease-out forwards}.onboarding-actions{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:8px 0}@media(max-width:600px){.onboarding-actions{gap:8px;flex-wrap:wrap}}.onboarding-animating{pointer-events:none}.onboarding-skeleton{background:linear-gradient(90deg,var(--surface-alt) 25%,var(--surface-hover) 50%,var(--surface-alt) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:8px}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.instruction-modal-overlay{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;animation:onboarding-fade-in .2s ease-out;padding:20px}.instruction-modal{background:var(--surface);border-radius:20px;padding:32px 28px;max-width:380px;width:100%;text-align:center;box-shadow:0 24px 64px #0006;animation:instruction-modal-pop .3s cubic-bezier(.34,1.56,.64,1)}@keyframes instruction-modal-pop{0%{opacity:0;transform:scale(.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.instruction-modal-icon{width:56px;height:56px;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px;color:#fff;margin:0 auto 20px;box-shadow:0 8px 24px var(--primary-glow)}.instruction-modal-title{font-size:22px;font-weight:700;color:var(--text-primary);margin:0 0 12px}.instruction-modal-text{font-size:var(--text-base);line-height:1.5;color:var(--text-secondary);margin:0 0 24px}.instruction-modal-text strong{color:var(--primary);font-weight:600}.instruction-adjust-preview{width:100%;max-width:300px;margin:0 auto 28px}.instruction-adjust-track{position:relative;height:56px;border-radius:14px;background:var(--surface-alt);border:1px solid var(--border);overflow:hidden}.instruction-adjust-block{position:absolute;inset:0 0 0 18%;width:52%;display:flex;align-items:center;animation:instructionBlockDance 5.5s ease-in-out infinite}.instruction-adjust-body{flex:1 1 auto;height:100%;background:var(--segment-color, #4BC4BB);border-radius:10px;box-shadow:inset 0 2px #fff3}.instruction-adjust-handle{width:12px;height:38px;border-radius:6px;background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 2px 8px #0000002e;flex-shrink:0;margin:0 -6px;z-index:1;display:flex;align-items:center;justify-content:center}.instruction-adjust-handle:before{content:"";width:3px;height:18px;border-radius:2px;background:#0000001f}@keyframes instructionBlockDance{0%{left:18%;width:52%}20%,25%{left:18%;width:65%}45%,50%{left:30%;width:53%}70%,75%{left:30%;width:40%}95%,to{left:18%;width:52%}}@media(prefers-reduced-motion:reduce){.instruction-adjust-block{animation:none!important}}@media(max-width:600px){.instruction-modal{padding:28px 24px}.instruction-modal-title{font-size:20px}.instruction-modal-text{font-size:var(--text-sm)}.instruction-adjust-preview{max-width:270px}.instruction-adjust-track{height:50px;border-radius:12px}.instruction-adjust-handle{width:10px;height:32px}.instruction-adjust-handle:before{width:2px;height:14px}}.complete-container{flex:1;display:flex;align-items:center;justify-content:center;padding:32px 24px;position:relative;overflow:hidden}.complete-content{display:flex;flex-direction:column;align-items:center;gap:24px;max-width:480px;width:100%;position:relative;z-index:2}.complete-content--done{gap:16px}.complete-transition{width:100%;display:flex;align-items:center;justify-content:center;opacity:1;transform:translateY(0);transition:opacity var(--transition-normal),transform var(--transition-normal);will-change:opacity,transform}.complete-transition.complete-transition--out{opacity:0;transform:translateY(6px)}@media(prefers-reduced-motion:reduce){.complete-transition{transition:none}}.complete-ambient{position:absolute;inset:0;pointer-events:none;z-index:0}.complete-ambient:before{content:"";position:absolute;top:10%;left:50%;transform:translate(-50%);width:500px;height:500px;background:radial-gradient(circle,rgba(var(--primary-rgb, 224, 123, 74),.12) 0%,rgba(var(--primary-rgb, 224, 123, 74),.04) 40%,transparent 65%);animation:ambient-breathe 6s ease-in-out infinite}.complete-ambient--muted:before{background:radial-gradient(circle,rgba(140,130,120,.08) 0%,rgba(140,130,120,.03) 40%,transparent 65%);animation:none}@keyframes ambient-breathe{0%,to{opacity:.8;transform:translate(-50%) scale(1)}50%{opacity:1;transform:translate(-50%) scale(1.08)}}.complete-mascot-area{position:relative;width:220px;height:220px;display:flex;align-items:center;justify-content:center}.complete-mascot{width:200px;height:auto;position:relative;z-index:2;filter:drop-shadow(0 6px 16px var(--shadow-subtle));transition:transform var(--transition-slow)}.complete-mascot--building{animation:mascot-build 2s ease-in-out infinite}@keyframes mascot-build{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.complete-mascot--celebrate{animation:mascot-pop .5s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes mascot-pop{0%{transform:scale(.6) translateY(10px);opacity:0}60%{transform:scale(1.05) translateY(-5px)}to{transform:scale(1) translateY(0);opacity:1}}.complete-mascot--muted{filter:drop-shadow(0 6px 16px var(--shadow-subtle)) grayscale(25%) brightness(.95);opacity:.9}.complete-prep-orbit{position:absolute;inset:10px;border-radius:999px;pointer-events:none;z-index:1}.complete-prep-orbit--outer{inset:-2px;border:1px solid rgba(var(--primary-rgb, 224, 123, 74),.22);box-shadow:0 0 0 1px var(--highlight-ghost) inset;animation:prep-orbit-spin 6s linear infinite}.complete-prep-orbit--inner{inset:18px;border:1px dashed rgba(var(--primary-rgb, 224, 123, 74),.18);animation:prep-orbit-spin-rev 9s linear infinite}@keyframes prep-orbit-spin{to{transform:rotate(360deg)}}@keyframes prep-orbit-spin-rev{to{transform:rotate(-360deg)}}.complete-prep-sparkle{position:absolute;width:10px;height:10px;border-radius:50%;background:rgba(var(--primary-rgb, 224, 123, 74),.75);filter:blur(.2px);box-shadow:0 0 0 6px rgba(var(--primary-rgb, 224, 123, 74),.14);opacity:.9;z-index:1;pointer-events:none}.complete-prep-sparkle--a{top:14px;right:28px;animation:prep-sparkle-pulse 1.9s ease-in-out infinite}.complete-prep-sparkle--b{bottom:22px;left:22px;animation:prep-sparkle-pulse 2.3s ease-in-out infinite}@keyframes prep-sparkle-pulse{0%,to{transform:scale(.85);opacity:.65}50%{transform:scale(1.05);opacity:1}}.complete-content--uploading{gap:0}.complete-message--uploading{margin-top:-8px}.complete-content--uploading .complete-progress-track{background:#5a7aff1f}.complete-content--uploading .complete-progress-fill{background:linear-gradient(90deg,#5a7aff,#7b95ff)}.complete-content--uploading .complete-progress-percent{color:#5a7aff}.upload-scene{position:relative;width:240px;height:380px;display:flex;flex-direction:column;align-items:center}.upload-ambient-glow{position:absolute;top:30px;left:50%;transform:translate(-50%);width:210px;height:150px;background:radial-gradient(ellipse at 50% 70%,rgba(90,122,255,.08) 0%,transparent 60%);pointer-events:none;opacity:0;animation:upload-fade-in .8s ease-out .3s forwards}.upload-ambient-glow-2{position:absolute;bottom:60px;left:50%;transform:translate(-50%);width:150px;height:90px;background:radial-gradient(ellipse at 50% 30%,rgba(90,122,255,.05) 0%,transparent 60%);pointer-events:none;opacity:0;animation:upload-fade-in .8s ease-out .4s forwards}@keyframes upload-fade-in{0%{opacity:0}to{opacity:1}}.upload-cloud-container{position:absolute;top:50px;left:50%;transform:translate(-50%);z-index:20;opacity:0;animation:upload-cloud-enter .7s cubic-bezier(.34,1.56,.64,1) .1s forwards}@keyframes upload-cloud-enter{0%{opacity:0;transform:translate(-50%) translateY(-20px) scale(.8)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.upload-cloud-wrapper{position:relative;filter:drop-shadow(0 8px 30px rgba(70,100,160,.2)) drop-shadow(0 2px 8px rgba(70,100,160,.12));animation:upload-cloud-float 4s ease-in-out .8s infinite}@keyframes upload-cloud-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.upload-cloud-main{width:160px;height:62px;background:linear-gradient(180deg,#fff,#f8faff 60%,#f0f4ff);border-radius:36px;position:relative;z-index:3}.upload-cloud-puff-1{position:absolute;width:84px;height:84px;background:linear-gradient(145deg,#fff,#f8faff,#f0f4ff);border-radius:50%;top:-50px;left:20px;z-index:2}.upload-cloud-puff-2{position:absolute;width:62px;height:62px;background:linear-gradient(145deg,#fff,#f8faff,#f0f4ff);border-radius:50%;top:-31px;right:19px;z-index:2}.upload-cloud-puff-3{position:absolute;width:35px;height:35px;background:linear-gradient(145deg,#fff,#f8faff);border-radius:50%;top:-10px;right:0;z-index:1}.upload-cloud-shine{position:absolute;width:44px;height:20px;background:linear-gradient(180deg,var(--overlay-heavy) 0%,rgba(255,255,255,0) 100%);border-radius:10px;top:-40px;left:32px;z-index:4;filter:blur(2px)}.upload-cloud-shine-2{position:absolute;width:22px;height:10px;background:linear-gradient(180deg,var(--overlay-medium) 0%,rgba(255,255,255,0) 100%);border-radius:5px;top:-23px;right:28px;z-index:4;filter:blur(1px)}.upload-cloud-depth{position:absolute;bottom:9px;left:50%;transform:translate(-50%);width:110px;height:22px;background:radial-gradient(ellipse,rgba(100,120,180,.06) 0%,transparent 70%);z-index:2}.upload-cloud-ring{position:absolute;top:-11px;left:50%;transform:translate(-50%) scale(.8);width:190px;height:99px;border:2px solid transparent;border-radius:50%;background:linear-gradient(180deg,#5a7aff26,#5a7aff08) border-box;-webkit-mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;z-index:1;opacity:0;animation:upload-ring-enter .6s ease-out .5s forwards}@keyframes upload-ring-enter{0%{opacity:0;transform:translate(-50%) scale(.8)}to{opacity:1;transform:translate(-50%) scale(1)}}.upload-entry-glow{position:absolute;bottom:-9px;left:50%;transform:translate(-50%);width:51px;height:18px;background:radial-gradient(ellipse at 50% 0%,rgba(90,122,255,.2) 0%,transparent 70%);opacity:0;z-index:0}.upload-entry-glow.active{animation:upload-entry-pulse .8s ease-in-out infinite}@keyframes upload-entry-pulse{0%,to{opacity:.3;transform:translate(-50%) scaleX(1)}50%{opacity:.6;transform:translate(-50%) scaleX(1.1)}}.upload-stream-area{position:absolute;top:110px;left:50%;transform:translate(-50%);width:53px;height:200px;z-index:15}.upload-data-square{position:absolute;width:8px;height:8px;background:linear-gradient(135deg,#5a7aff,#7b95ff);border-radius:2px;box-shadow:0 2px 6px #5a7aff59,0 0 15px #5a7aff26;z-index:15}.upload-data-square:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);width:3px;height:15px;background:linear-gradient(180deg,rgba(90,122,255,.4) 0%,transparent 100%);border-radius:2px}.upload-server-container{position:absolute;bottom:55px;left:50%;transform:translate(-50%);z-index:20;opacity:0;animation:upload-server-enter .6s cubic-bezier(.34,1.56,.64,1) .25s forwards}@keyframes upload-server-enter{0%{opacity:0;transform:translate(-50%) translateY(15px) scale(.9)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.upload-server-glow{position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:58px;height:15px;background:radial-gradient(ellipse,rgba(90,122,255,.1) 0%,transparent 70%);opacity:0;animation:upload-fade-in .5s ease-out .6s forwards}.upload-server{width:53px;height:34px;background:linear-gradient(180deg,#8892a8,#6b7488);border-radius:7px;display:flex;flex-direction:column;justify-content:center;padding:7px 8px;gap:3px;box-shadow:0 4px 15px #3c466433,0 2px 4px #3c466426,inset 0 1px 0 var(--highlight-faint);position:relative}.upload-server-line{width:100%;height:4px;background:var(--highlight-subtle);border-radius:2px}.upload-server-led{position:absolute;top:6px;right:7px;width:5px;height:5px;background:radial-gradient(circle at 30% 30%,#7bffb2,#3ecf7a);border-radius:50%;box-shadow:0 0 5px #7bffb299;opacity:0}.upload-server-led.active{animation:upload-led-on .3s ease-out forwards,upload-led-pulse 1.5s ease-in-out .3s infinite}@keyframes upload-led-on{0%{opacity:0;box-shadow:0 0 #7bffb200}to{opacity:1;box-shadow:0 0 5px #7bffb299}}@keyframes upload-led-pulse{0%,to{opacity:.7}50%{opacity:1}}@media(max-width:480px){.upload-scene{transform:scale(.9);transform-origin:center top}}@media(max-height:600px){.upload-scene{transform:scale(.85);transform-origin:center top}}.complete-container--done{position:relative}.complete-done-ambient{position:absolute;inset:0;pointer-events:none;overflow:hidden}.complete-done-glow{position:absolute;border-radius:50%;filter:blur(100px);opacity:0;animation:complete-glow-pulse 8s ease-in-out infinite}.complete-done-glow-1{width:600px;height:600px;background:radial-gradient(circle,rgba(251,191,36,.2) 0%,transparent 70%);top:-200px;left:-100px;animation-delay:0s}.complete-done-glow-2{width:500px;height:500px;background:radial-gradient(circle,rgba(245,158,11,.15) 0%,transparent 70%);bottom:-150px;right:-100px;animation-delay:4s}@keyframes complete-glow-pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.complete-content--done{gap:0;max-width:420px}.complete-done-visual{position:relative;width:200px;height:200px;display:flex;align-items:center;justify-content:center;margin-bottom:24px}.complete-done-mascot-glow{position:absolute;inset:-20px;background:radial-gradient(circle,rgba(251,191,36,.3) 0%,transparent 70%);border-radius:50%;filter:blur(20px)}.complete-done-visual .complete-mascot{width:160px;height:auto;position:relative;z-index:2;filter:drop-shadow(0 8px 32px rgba(251,191,36,.35))}.complete-celebration-svg{position:absolute;width:260px;height:260px;color:#fbbf24b3;opacity:.6;z-index:1}.complete-cel-ring{opacity:0;transform-origin:center}.complete-cel-ring-1{animation:complete-ring-appear 1s ease-out .2s forwards,complete-ring-spin 25s linear 1.2s infinite}.complete-cel-ring-2{animation:complete-ring-appear 1s ease-out .4s forwards,complete-ring-spin 18s linear 1.4s infinite reverse}.complete-cel-ring-3{animation:complete-ring-appear 1s ease-out .6s forwards,complete-ring-spin 12s linear 1.6s infinite}@keyframes complete-ring-appear{0%{opacity:0;transform:scale(.9)}to{opacity:.6;transform:scale(1)}}@keyframes complete-ring-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.complete-success-badge{position:absolute;top:0;right:0;width:52px;height:52px;z-index:10;animation:badge-pop .5s cubic-bezier(.34,1.56,.64,1) .3s both}@keyframes badge-pop{0%{transform:scale(0) rotate(-20deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}.complete-success-svg{width:100%;height:100%;filter:drop-shadow(0 4px 12px rgba(var(--success-rgb, 92, 168, 108),.4))}.complete-success-circle{fill:var(--success, #5CA86C);stroke:none}.complete-success-check{fill:none;stroke:#fff;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:check-draw .4s ease-out .5s forwards}@keyframes check-draw{to{stroke-dashoffset:0}}.complete-confetti{position:absolute;inset:0;pointer-events:none;z-index:3;overflow:hidden}.complete-confetti-piece{position:absolute;top:35%;left:50%;border-radius:2px;opacity:0}.complete-confetti-piece:nth-child(1){width:8px;height:8px;background:var(--warning);animation:confetti-1 1.2s ease-out .1s forwards}.complete-confetti-piece:nth-child(2){width:6px;height:10px;background:var(--success, #5CA86C);animation:confetti-2 1.3s ease-out .15s forwards}.complete-confetti-piece:nth-child(3){width:10px;height:6px;background:var(--warning-strong);animation:confetti-3 1.1s ease-out .05s forwards}.complete-confetti-piece:nth-child(4){width:7px;height:7px;background:var(--primary-light);animation:confetti-4 1.25s ease-out .2s forwards}.complete-confetti-piece:nth-child(5){width:8px;height:8px;background:var(--warning);animation:confetti-5 1.15s ease-out .08s forwards}.complete-confetti-piece:nth-child(6){width:6px;height:12px;background:var(--success, #5CA86C);animation:confetti-6 1.35s ease-out .22s forwards}.complete-confetti-piece:nth-child(7){width:9px;height:6px;background:var(--warning-strong);animation:confetti-7 1.2s ease-out .12s forwards}.complete-confetti-piece:nth-child(8){width:7px;height:9px;background:var(--primary-light);animation:confetti-8 1.3s ease-out .18s forwards}.complete-confetti-piece:nth-child(9){width:8px;height:8px;background:var(--warning);animation:confetti-9 1.18s ease-out .06s forwards}.complete-confetti-piece:nth-child(10){width:6px;height:10px;background:var(--success, #5CA86C);animation:confetti-10 1.28s ease-out .16s forwards}.complete-confetti-piece:nth-child(11){width:10px;height:7px;background:var(--warning-strong);animation:confetti-11 1.22s ease-out .1s forwards}.complete-confetti-piece:nth-child(12){width:7px;height:7px;background:var(--primary-light);animation:confetti-12 1.32s ease-out .2s forwards}.complete-confetti-piece:nth-child(13){width:8px;height:8px;background:var(--warning);animation:confetti-13 1.15s ease-out .07s forwards}.complete-confetti-piece:nth-child(14){width:6px;height:11px;background:var(--success, #5CA86C);animation:confetti-14 1.25s ease-out .14s forwards}.complete-confetti-piece:nth-child(15){width:9px;height:6px;background:var(--warning-strong);animation:confetti-15 1.2s ease-out .09s forwards}.complete-confetti-piece:nth-child(16){width:7px;height:8px;background:var(--primary-light);animation:confetti-16 1.3s ease-out .17s forwards}@keyframes confetti-1{0%{opacity:1;transform:translate(-50%) scale(0)}to{opacity:0;transform:translate(-180px,180px) rotate(720deg) scale(.5)}}@keyframes confetti-2{0%{opacity:1;transform:translate(-50%) scale(0)}to{opacity:0;transform:translate(-140px,200px) rotate(-540deg) scale(.4)}}@keyframes confetti-3{0%{opacity:1;transform:translate(-50%) scale(0)}to{opacity:0;transform:translate(-90px,170px) rotate(630deg) scale(.6)}}@keyframes confetti-4{0%{opacity:1;transform:translate(-50%) scale(0)}to{opacity:0;transform:translate(-40px,210px) rotate(-450deg) scale(.5)}}@keyframes confetti-5{0%{opacity:1;transform:translate(-50%) scale(0)}to{opacity:0;transform:translate(10px,190px) rotate(810deg) scale(.4)}}@keyframes confetti-6{0%{opacity:1;transform:translate(-50%) scale(0)}to{opacity:0;transform:translate(60px,205px) rotate(-720deg) scale(.5)}}@keyframes confetti-7{0%{opacity:1;transform:translate(-50%) scale(0)}to{opacity:0;transform:translate(110px,175px) rotate(540deg) scale(.6)}}@keyframes confetti-8{0%{opacity:1;transform:translate(-50%) scale(0)}to{opacity:0;transform:translate(160px,195px) rotate(-630deg) scale(.4)}}@keyframes confetti-9{0%{opacity:1;transform:translate(-50%) scale(0)}to{opacity:0;transform:translate(-160px,140px) rotate(900deg) scale(.5)}}@keyframes confetti-10{0%{opacity:1;transform:translate(-50%) scale(0)}to{opacity:0;transform:translate(-110px,155px) rotate(-810deg) scale(.6)}}@keyframes confetti-11{0%{opacity:1;transform:translate(-50%) scale(0)}to{opacity:0;transform:translate(-55px,165px) rotate(450deg) scale(.5)}}@keyframes confetti-12{0%{opacity:1;transform:translate(-50%) scale(0)}to{opacity:0;transform:translate(25px,145px) rotate(-900deg) scale(.4)}}@keyframes confetti-13{0%{opacity:1;transform:translate(-50%) scale(0)}to{opacity:0;transform:translate(80px,160px) rotate(630deg) scale(.6)}}@keyframes confetti-14{0%{opacity:1;transform:translate(-50%) scale(0)}to{opacity:0;transform:translate(130px,150px) rotate(-540deg) scale(.5)}}@keyframes confetti-15{0%{opacity:1;transform:translate(-50%) scale(0)}to{opacity:0;transform:translate(-70px,220px) rotate(720deg) scale(.4)}}@keyframes confetti-16{0%{opacity:1;transform:translate(-50%) scale(0)}to{opacity:0;transform:translate(45px,230px) rotate(-810deg) scale(.5)}}.complete-message{text-align:center;max-width:480px}.complete-message--done{text-align:center;margin-bottom:32px;animation:message-fade-up .5s ease-out .2s both}@keyframes message-fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.complete-headline{font-size:24px;font-weight:700;margin:0 0 8px;letter-spacing:-.02em;color:var(--text-primary);line-height:1.3}.complete-headline--success{font-size:32px;font-weight:700;margin-bottom:12px;letter-spacing:-.03em;line-height:1.2;background:linear-gradient(135deg,#fbbf24,#f59e0b,#f97316);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.complete-body{font-size:var(--text-base);color:var(--text-secondary);margin:0;line-height:1.55}.complete-body--error{color:var(--text-secondary)}.complete-body--success{font-size:16px;color:var(--text-secondary);font-weight:400;line-height:1.5}.complete-progress-container{width:100%;display:flex;align-items:center;gap:12px}.complete-progress-track{flex:1;height:8px;background:rgba(var(--primary-rgb, 224, 123, 74),.12);border-radius:4px;overflow:hidden}.complete-progress-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--primary-light));border-radius:4px;transition:width var(--transition-slow);position:relative}.complete-progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,var(--overlay-subtle) 50%,transparent 100%);animation:progress-shimmer 1.5s ease-in-out infinite}@keyframes progress-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.complete-progress-percent{font-size:var(--text-sm);font-weight:600;color:var(--primary);min-width:40px;text-align:right}.complete-checklist{display:flex;flex-direction:column;gap:8px;width:100%;max-width:220px}.complete-checklist-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--highlight-ghost);border-radius:10px;border:1px solid var(--highlight-ghost);transition:all var(--transition-slow)}.complete-checklist-item.active{background:rgba(var(--primary-rgb, 224, 123, 74),.15);border-color:rgba(var(--primary-rgb, 224, 123, 74),.3);transform:scale(1.02)}.complete-checklist-item.done{opacity:.55}.complete-checklist-indicator{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.complete-checklist-indicator svg{width:16px;height:16px;color:var(--success, #5CA86C)}.complete-checklist-spinner{width:16px;height:16px;border:2px solid var(--primary-glow);border-top-color:var(--primary);border-radius:50%;animation:spinner-rotate .9s linear infinite}.complete-checklist-pending{width:8px;height:8px;background:var(--highlight-subtle);border-radius:50%}.complete-checklist-label{font-size:var(--text-sm);color:var(--text-secondary);font-weight:500}.complete-checklist-item.active .complete-checklist-label{color:var(--text-primary);font-weight:600}.complete-checklist-item.done .complete-checklist-label{color:var(--text-tertiary)}.complete-actions{display:flex;justify-content:center}.complete-btn-arrow{width:16px;height:16px;margin-left:6px;transition:transform var(--transition-normal)}.btn:hover .complete-btn-arrow{transform:translate(3px)}.complete-helper{font-size:var(--text-sm);color:var(--text-tertiary);margin:0;text-align:center}.complete-done-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 32px;height:52px;background:linear-gradient(135deg,#fbbf24,#f59e0b,#f97316);border:none;border-radius:14px;color:var(--bg-primary);font-size:16px;font-weight:600;cursor:pointer;transition:all var(--transition-normal) cubic-bezier(.16,1,.3,1);box-shadow:0 4px 16px #fbbf2459,0 0 0 1px #fbbf2433,inset 0 1px 0 var(--highlight-soft);letter-spacing:-.01em;min-width:180px;animation:complete-btn-appear .4s ease-out .4s both}@keyframes complete-btn-appear{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.complete-done-btn:hover{background:linear-gradient(135deg,#fcd34d,#fbbf24,#f59e0b);transform:translateY(-2px);box-shadow:0 8px 24px #fbbf2473,0 0 0 1px #fbbf244d,inset 0 1px 0 var(--highlight-soft)}.complete-done-btn:active{transform:translateY(0);box-shadow:0 2px 8px #fbbf2459,0 0 0 1px #fbbf2433,inset 0 1px 0 var(--highlight-soft)}.complete-done-btn-icon{width:18px;height:18px;transition:transform var(--transition-normal)}.complete-done-btn:hover .complete-done-btn-icon{transform:translate(3px)}.complete-text-link{background:none;border:none;padding:8px 16px;font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--shadow-subtle);transition:all var(--transition-normal)}.complete-text-link:hover{color:#fbbf24;text-decoration-color:#fbbf2480}.complete-text-link--subtle{font-size:var(--text-sm);color:var(--text-tertiary);text-decoration-color:var(--shadow-subtle);margin-top:16px;animation:complete-link-appear .4s ease-out .5s both}@keyframes complete-link-appear{0%{opacity:0}to{opacity:1}}.complete-text-link--subtle:hover{color:var(--text-secondary);text-decoration-color:var(--shadow-soft)}@media(max-width:480px){.complete-container{padding:24px 16px}.complete-content{gap:20px}.complete-mascot-area{width:180px;height:180px}.complete-mascot{width:160px}.complete-done-visual{width:160px;height:160px;margin-bottom:20px}.complete-done-visual .complete-mascot{width:120px}.complete-celebration-svg{width:200px;height:200px}.complete-headline{font-size:22px}.complete-headline--success{font-size:26px}.complete-message--done{margin-bottom:28px}.complete-done-btn{width:100%;height:50px;font-size:var(--text-base)}.complete-done-glow-1{width:400px;height:400px}.complete-done-glow-2{width:350px;height:350px}.complete-checklist{max-width:200px}.complete-checklist-item{padding:8px 12px}}@media(max-height:600px){.complete-content{gap:16px}.complete-mascot-area{width:140px;height:140px}.complete-mascot{width:120px}.complete-done-visual{width:140px;height:140px;margin-bottom:16px}.complete-done-visual .complete-mascot{width:100px}.complete-celebration-svg{width:180px;height:180px}.complete-success-badge{width:40px;height:40px}.complete-headline--success{font-size:24px;margin-bottom:8px}.complete-message--done{margin-bottom:20px}.complete-done-btn{height:46px}.complete-checklist{gap:6px}.complete-checklist-item{padding:8px 10px}}.setup-survey{width:100%;max-width:400px;margin:24px auto 0;animation:survey-slide-in var(--transition-slow) ease-out}@keyframes survey-slide-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.setup-survey-container{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px;text-align:center}.setup-survey-progress{display:flex;align-items:center;gap:12px;margin-bottom:20px}.setup-survey-progress-track{flex:1;height:4px;background:var(--border);border-radius:2px;overflow:hidden}.setup-survey-progress-fill{height:100%;background:var(--primary);border-radius:2px;transition:width var(--transition-normal) ease-out}.setup-survey-progress-label{font-size:var(--text-xs);color:var(--text-tertiary);white-space:nowrap}.survey-question{margin-bottom:16px}.survey-question-text{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 16px;line-height:1.4}.survey-options{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.survey-option{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);background:var(--surface-alt);border:1px solid var(--border);border-radius:20px;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.survey-option:hover{background:var(--surface-hover);border-color:var(--border-hover);color:var(--text-primary)}.survey-option.is-selected{background:var(--primary-subtle);border-color:var(--primary);color:var(--primary)}.survey-option--other{border-style:dashed}.survey-custom-input{margin-top:16px;animation:survey-fade-in var(--transition-fast) ease-out}@keyframes survey-fade-in{0%{opacity:0}to{opacity:1}}.survey-custom-field{width:100%;padding:12px 16px;font-size:var(--text-sm);color:var(--text-primary);background:var(--surface);border:1px solid var(--border);border-radius:8px;outline:none;transition:border-color var(--transition-fast)}.survey-custom-field:focus{border-color:var(--primary)}.survey-custom-field::placeholder{color:var(--text-muted)}.survey-custom-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.setup-survey-skip{display:inline-block;margin-top:12px;padding:4px 8px;font-size:var(--text-sm);color:var(--text-tertiary);background:none;border:none;cursor:pointer;transition:color var(--transition-fast)}.setup-survey-skip:hover{color:var(--text-secondary)}@media(max-width:480px){.setup-survey{margin:16px auto 0}.setup-survey-container{padding:20px 16px}.survey-question-text{font-size:var(--text-base)}.survey-option{padding:8px 12px;font-size:var(--text-sm)}}.notification-opt-in{width:100%;max-width:320px;margin:0 auto;padding-top:20px;border-top:1px solid var(--border);animation:notification-fade-in .4s ease-out}@keyframes notification-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.notification-opt-in-container{text-align:center}.notification-opt-in-header{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:12px}.notification-icon{width:18px;height:18px;color:var(--primary);flex-shrink:0}.notification-opt-in-title{font-size:var(--text-sm);font-weight:500;color:var(--text-primary);margin:0}.notification-opt-in-description{font-size:var(--text-sm);color:var(--text-secondary);margin:0 0 14px;line-height:1.4}.notification-email-form{display:flex;gap:8px;margin-bottom:8px}.notification-email-input{flex:1;min-width:0;padding:10px 12px;font-size:var(--text-sm);color:var(--text-primary);background:var(--surface);border:1px solid var(--border);border-radius:8px;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.notification-email-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-subtle)}.notification-email-input::placeholder{color:var(--text-muted)}.notification-email-input:disabled{opacity:.6;cursor:not-allowed}.notification-email-form .btn{flex-shrink:0;padding:10px 16px;font-size:var(--text-sm)}.notification-opt-in-actions{display:flex;flex-direction:column;align-items:center;gap:8px}.notification-opt-in-actions .btn{padding:10px 20px;font-size:var(--text-sm)}.notification-skip-link{display:inline-block;padding:4px 8px;font-size:var(--text-xs);color:var(--text-tertiary);background:none;border:none;cursor:pointer;transition:color var(--transition-fast)}.notification-skip-link:hover{color:var(--text-secondary)}.notification-error{font-size:var(--text-xs);color:var(--danger);margin:8px 0 0;text-align:center}.notification-opt-in--success{padding-top:16px}.notification-opt-in--success .notification-opt-in-container{display:flex;align-items:center;justify-content:center;gap:8px}.notification-success-icon{width:18px;height:18px;color:var(--success);flex-shrink:0}.notification-success-text{font-size:var(--text-sm);color:var(--text-secondary);margin:0}@media(max-width:480px){.notification-opt-in{max-width:280px;padding-top:16px}.notification-email-form{flex-direction:column}.notification-email-form .btn{width:100%}}.yt-processing{display:flex;align-items:center;justify-content:center;min-height:100dvh;padding:2rem}.yt-processing__content{display:flex;flex-direction:column;align-items:center;gap:1.5rem;max-width:400px;width:100%;text-align:center}.yt-processing__visual{margin-bottom:.5rem}.yt-processing__spinner{width:64px;height:64px;border-radius:50%;border:3px solid var(--border);border-top-color:var(--primary);animation:yt-spin 1s linear infinite;transition:var(--transition-normal)}.yt-processing__spinner.is-complete{border-color:var(--primary);animation:none}@keyframes yt-spin{to{transform:rotate(360deg)}}.yt-processing__title{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0}.yt-processing__progress-track{width:100%;height:6px;border-radius:3px;background:var(--border);overflow:hidden}.yt-processing__progress-fill{height:100%;border-radius:3px;background:var(--primary);transition:width .3s ease}.yt-processing__percent{font-size:.875rem;color:var(--text-secondary);font-variant-numeric:tabular-nums}.yt-processing__error{display:flex;flex-direction:column;align-items:center;gap:1rem}.yt-processing__error-icon{width:48px;height:48px;border-radius:50%;background:var(--danger, #ef4444);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700}.yt-processing__message{color:var(--text-secondary);margin:0;line-height:1.5}.processing-phase{position:relative;display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;background:var(--bg-primary);padding:0;overflow:hidden}.processing-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 24px 24px;position:relative;z-index:1}.processing-visual-slot{display:flex;align-items:center;justify-content:center;transition:opacity .25s cubic-bezier(.4,0,.2,1),transform .25s cubic-bezier(.4,0,.2,1)}.processing-visual-slot.is-hidden{height:0;overflow:hidden;opacity:0;transform:scale(.96);pointer-events:none}.processing-actions{display:flex;flex-direction:column;align-items:center;gap:16px;padding:0 24px 24px;position:relative;z-index:1}.processing-safe-message{font-size:var(--text-sm);color:var(--text-tertiary);margin:0;display:flex;align-items:center;gap:8px}.processing-safe-message:before{content:"";display:inline-block;width:6px;height:6px;background:var(--success);border-radius:50%;box-shadow:0 0 8px var(--success-glow)}.processing-btn-icon{width:18px;height:18px;margin-left:4px}.processing-text-link{font-size:var(--text-sm);color:var(--text-tertiary);background:none;border:none;cursor:pointer;padding:8px 16px;transition:color var(--transition-fast)}.processing-text-link:hover{color:var(--text-secondary)}.processing-phase--error{background:var(--bg-primary)}.processing-error{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;max-width:400px}.processing-error-icon{width:64px;height:64px;color:var(--danger)}.processing-error-icon svg{width:100%;height:100%}.processing-error-title{font-size:24px;font-weight:700;color:var(--text-primary);margin:0}.processing-error-message{font-size:var(--text-base);color:var(--text-secondary);margin:0;line-height:1.5}.processing-error-actions{display:flex;gap:12px;margin-top:8px}.processing-phase--done,.processing-phase--incomplete{background:var(--bg-primary)}.submission-incomplete{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;max-width:440px;padding:0 24px;animation:submission-incomplete-enter .5s cubic-bezier(.16,1,.3,1)}@keyframes submission-incomplete-enter{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.submission-incomplete-icon{width:72px;height:72px;color:var(--warning, #f59e0b);margin-bottom:8px}.submission-incomplete-icon svg{width:100%;height:100%}.submission-incomplete-title{font-size:26px;font-weight:700;color:var(--text-primary);margin:0;letter-spacing:-.02em}.submission-incomplete-message{font-size:var(--text-base);color:var(--text-secondary);margin:0;line-height:1.6}.submission-incomplete-reasons{list-style:none;padding:0;margin:8px 0;display:flex;flex-direction:column;gap:8px;width:100%}.submission-incomplete-reasons li{font-size:var(--text-sm);color:var(--text-tertiary);background:var(--surface-alt, rgba(0, 0, 0, .03));border-radius:10px;text-align:left;position:relative;padding:12px 16px 12px 32px}.submission-incomplete-reasons li:before{content:"";position:absolute;left:14px;top:50%;transform:translateY(-50%);width:6px;height:6px;border-radius:50%;background:var(--warning, #f59e0b);opacity:.7}.submission-incomplete-cta{font-size:var(--text-base);font-weight:600;color:var(--success, #22c55e);margin:8px 0 0}.submission-incomplete-actions{display:flex;flex-direction:column;gap:12px;margin-top:16px;width:100%;max-width:280px}.submission-incomplete-actions .btn{width:100%}.submission-incomplete-actions .btn--ghost{color:var(--text-tertiary);font-size:var(--text-sm)}.submission-incomplete-actions .btn--ghost:hover{color:var(--text-secondary)}@media(max-width:600px){.submission-incomplete{padding:0 16px}.submission-incomplete-icon{width:64px;height:64px}.submission-incomplete-title{font-size:22px}.submission-incomplete-message{font-size:var(--text-sm)}.submission-incomplete-reasons li{font-size:13px;padding:10px 14px 10px 28px}.submission-incomplete-reasons li:before{left:12px;width:5px;height:5px}}.processing-progress{padding:0;padding-top:var(--safe-area-top);position:relative;z-index:1}.processing-progress-header{display:flex;justify-content:space-between;align-items:center;padding:12px 20px}.processing-progress-label{font-size:var(--text-sm);font-weight:600;color:var(--primary);background:var(--primary-subtle);padding:6px 14px;border-radius:6px;letter-spacing:.01em}.processing-progress-percent{font-size:var(--text-sm);font-weight:700;color:var(--primary)}.processing-progress-track{position:relative;height:48px;margin:0 20px}.processing-progress-bar{position:absolute;top:0;left:0;right:0;height:4px;background:color-mix(in srgb,var(--border) 80%,transparent);overflow:hidden;border-radius:999px;box-shadow:inset 0 1px #ffffff0a}.processing-progress-fill{height:100%;background:linear-gradient(90deg,var(--primary) 0%,var(--primary-light) 55%,var(--primary) 100%);transition:width .12s linear;position:relative;border-radius:999px}.processing-progress-fill:after{content:"";position:absolute;top:0;right:0;width:72px;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.28) 50%,transparent 100%);animation:progress-glow 1.35s ease-in-out infinite;mix-blend-mode:screen}@keyframes progress-glow{0%,to{opacity:.4}50%{opacity:1}}.processing-steps{position:absolute;top:10px;left:0;right:0;height:28px}.processing-step{position:absolute;transform:translate(-50%)}.processing-step:nth-child(1){left:0%}.processing-step:nth-child(2){left:20%}.processing-step:nth-child(3){left:40%}.processing-step:nth-child(4){left:60%}.processing-step:nth-child(5){left:80%}.processing-step:nth-child(6){left:100%}.processing-step:nth-child(1){transform:translate(0)}.processing-step:nth-child(6){transform:translate(-100%)}.processing-step-circle{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--surface-alt);border:1px solid color-mix(in srgb,var(--border) 70%,transparent);color:var(--text-tertiary);transition:all var(--transition-fast);box-shadow:0 1px #ffffff0a}.processing-step.is-current .processing-step-circle{background:var(--primary-subtle);border-color:var(--primary);color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 16%,transparent),0 1px #ffffff0a}.processing-step.is-completed .processing-step-circle{background:var(--primary);border-color:var(--primary);color:var(--bg-primary)}.processing-step-check{width:14px;height:14px}.processing-step-dot{width:6px;height:6px;border-radius:999px;background:color-mix(in srgb,var(--text-tertiary) 70%,transparent);transition:transform var(--transition-fast),background var(--transition-fast),opacity var(--transition-fast);opacity:.85}.processing-step.is-current .processing-step-dot{background:var(--primary);transform:scale(1.1);opacity:1}@media(prefers-reduced-motion:reduce){.processing-progress-fill:after{animation:none;opacity:.2}}.processing-cloud-scene{display:flex;flex-direction:column;align-items:center;gap:24px}.processing-cloud-animation{position:relative;width:280px;height:400px}.processing-cloud-ambient{position:absolute;top:30px;left:50%;transform:translate(-50%);width:210px;height:150px;background:radial-gradient(ellipse at 50% 70%,rgba(90,122,255,.08) 0%,transparent 60%);pointer-events:none;opacity:0;animation:processing-fade-in .8s ease-out .3s forwards}.processing-cloud-ambient-2{position:absolute;bottom:60px;left:50%;transform:translate(-50%);width:150px;height:90px;background:radial-gradient(ellipse at 50% 30%,rgba(90,122,255,.05) 0%,transparent 60%);pointer-events:none;opacity:0;animation:processing-fade-in .8s ease-out .4s forwards}@keyframes processing-fade-in{0%{opacity:0}to{opacity:1}}.processing-cloud-container{position:absolute;top:50px;left:50%;transform:translate(-50%);z-index:20;opacity:0;animation:processing-cloud-enter .7s cubic-bezier(.34,1.56,.64,1) .1s forwards}@keyframes processing-cloud-enter{0%{opacity:0;transform:translate(-50%) translateY(-20px) scale(.8)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.processing-cloud-wrapper{position:relative;filter:drop-shadow(0 8px 30px rgba(70,100,160,.2)) drop-shadow(0 2px 8px rgba(70,100,160,.12));animation:processing-cloud-float 4s ease-in-out .8s infinite}@keyframes processing-cloud-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.processing-cloud-main{width:160px;height:62px;background:linear-gradient(180deg,#fff,#f8faff 60%,#f0f4ff);border-radius:36px;position:relative;z-index:3}.processing-cloud-puff-1{position:absolute;width:84px;height:84px;background:linear-gradient(145deg,#fff,#f8faff,#f0f4ff);border-radius:50%;top:-50px;left:20px;z-index:2}.processing-cloud-puff-2{position:absolute;width:62px;height:62px;background:linear-gradient(145deg,#fff,#f8faff,#f0f4ff);border-radius:50%;top:-31px;right:19px;z-index:2}.processing-cloud-puff-3{position:absolute;width:35px;height:35px;background:linear-gradient(145deg,#fff,#f8faff);border-radius:50%;top:-10px;right:0;z-index:1}.processing-cloud-shine{position:absolute;width:44px;height:20px;background:linear-gradient(180deg,var(--overlay-heavy) 0%,rgba(255,255,255,0) 100%);border-radius:10px;top:-40px;left:32px;z-index:4;filter:blur(2px)}.processing-cloud-shine-2{position:absolute;width:22px;height:10px;background:linear-gradient(180deg,var(--overlay-medium) 0%,rgba(255,255,255,0) 100%);border-radius:5px;top:-23px;right:28px;z-index:4;filter:blur(1px)}.processing-cloud-depth{position:absolute;bottom:9px;left:50%;transform:translate(-50%);width:110px;height:22px;background:radial-gradient(ellipse,rgba(100,120,180,.06) 0%,transparent 70%);z-index:2}.processing-cloud-ring{position:absolute;top:-11px;left:50%;transform:translate(-50%) scale(.8);width:190px;height:99px;border:2px solid transparent;border-radius:50%;background:linear-gradient(180deg,#5a7aff26,#5a7aff08) border-box;-webkit-mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;z-index:1;opacity:0;animation:processing-ring-enter .6s ease-out .5s forwards}@keyframes processing-ring-enter{0%{opacity:0;transform:translate(-50%) scale(.8)}to{opacity:1;transform:translate(-50%) scale(1)}}.processing-cloud-entry-glow{position:absolute;bottom:-9px;left:50%;transform:translate(-50%);width:51px;height:18px;background:radial-gradient(ellipse at 50% 0%,rgba(90,122,255,.2) 0%,transparent 70%);opacity:0;z-index:0}.processing-cloud-entry-glow.active{animation:processing-entry-pulse .8s ease-in-out infinite}@keyframes processing-entry-pulse{0%,to{opacity:.3;transform:translate(-50%) scaleX(1)}50%{opacity:.6;transform:translate(-50%) scaleX(1.1)}}.processing-stream-area{position:absolute;top:110px;left:50%;transform:translate(-50%);width:53px;height:200px;pointer-events:none}.processing-data-square{position:absolute;width:8px;height:8px;background:linear-gradient(135deg,#5a7aff,#7b95ff);border-radius:2px;bottom:0;opacity:0;box-shadow:0 0 8px #5a7aff66}.processing-server-container{position:absolute;bottom:30px;left:50%;transform:translate(-50%);opacity:0;animation:processing-server-enter .5s ease-out .6s forwards}@keyframes processing-server-enter{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.processing-server{width:60px;height:44px;background:linear-gradient(180deg,#3a4a6b,#2d3a52);border-radius:6px;position:relative;border:1px solid rgba(90,122,255,.2);padding:8px 10px;display:flex;flex-direction:column;gap:4px}.processing-server-led{position:absolute;top:8px;right:8px;width:6px;height:6px;background:#4a5568;border-radius:50%;transition:background .3s,box-shadow .3s}.processing-server-led.active{background:#5a7aff;box-shadow:0 0 8px #5a7aff99;animation:processing-led-blink 1s ease-in-out infinite}@keyframes processing-led-blink{0%,to{opacity:1}50%{opacity:.5}}.processing-server-line{height:3px;background:#5a7aff26;border-radius:1px;width:70%}.processing-server-line:nth-child(3){width:50%}.processing-server-glow{position:absolute;bottom:-15px;left:50%;transform:translate(-50%);width:80px;height:20px;background:radial-gradient(ellipse at 50% 0%,rgba(90,122,255,.15) 0%,transparent 70%)}.processing-upload-message{text-align:center;width:280px;animation:processing-message-fade .5s ease-out}@keyframes processing-message-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.processing-upload-title{font-size:20px;font-weight:600;color:var(--text-primary);margin:0 0 6px;letter-spacing:-.01em}.processing-upload-subtitle{font-size:var(--text-sm);color:var(--text-tertiary);margin:0;font-weight:400}.processing-cuy-scene{position:relative;width:300px;display:flex;flex-direction:column;align-items:center;gap:12px}.processing-ai-visual{position:relative;width:220px;height:220px;display:flex;align-items:center;justify-content:center}.processing-cuy-image{width:180px;height:auto;position:relative;z-index:5;animation:processing-cuy-enter .4s ease-out forwards,processing-cuy-breathe 3s ease-in-out .4s infinite}@keyframes processing-cuy-enter{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes processing-cuy-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.processing-scanner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;pointer-events:none}.processing-scanner-ring{position:absolute;top:50%;left:50%;width:180px;height:180px;border:2px solid var(--primary);border-radius:50%;transform:translate(-50%,-50%) scale(.85);opacity:0;animation:processing-scanner-pulse 2.5s ease-out infinite}.processing-scanner-ring--delayed{animation-delay:1.25s}@keyframes processing-scanner-pulse{0%{transform:translate(-50%,-50%) scale(.8);opacity:.6}to{transform:translate(-50%,-50%) scale(1.3);opacity:0}}.processing-orbit-track{position:absolute;top:50%;left:50%;width:200px;height:200px;transform:translate(-50%,-50%);border:1px dashed var(--primary-border);border-radius:50%;opacity:.3;animation:processing-orbit-spin 25s linear infinite}.processing-orbit-track--inner{width:140px;height:140px;animation:processing-orbit-spin 18s linear infinite reverse}@keyframes processing-orbit-spin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.processing-data-dot{position:absolute;width:8px;height:8px;background:var(--primary);border-radius:50%;box-shadow:0 0 10px var(--primary-glow),0 0 20px var(--primary-glow)}.processing-data-dot--1{top:-4px;left:50%;transform:translate(-50%);animation:processing-dot-pulse 1.5s ease-in-out infinite}.processing-data-dot--2{bottom:-4px;left:50%;transform:translate(-50%);animation:processing-dot-pulse 1.5s ease-in-out infinite .5s}.processing-data-dot--3{top:50%;right:-4px;transform:translateY(-50%);animation:processing-dot-pulse 1.5s ease-in-out infinite 1s}.processing-data-dot--4{top:-4px;left:50%;transform:translate(-50%);width:6px;height:6px;animation:processing-dot-pulse 1.8s ease-in-out infinite .3s}.processing-data-dot--5{bottom:-4px;left:50%;transform:translate(-50%);width:6px;height:6px;animation:processing-dot-pulse 1.8s ease-in-out infinite .9s}@keyframes processing-dot-pulse{0%,to{opacity:.5;transform:translate(-50%) scale(.8)}50%{opacity:1;transform:translate(-50%) scale(1.2)}}.processing-datapoint{position:absolute;width:6px;height:6px;background:var(--primary);border-radius:50%;opacity:0;animation:processing-datapoint-float 3s ease-in-out infinite}.processing-datapoint--1{top:15%;right:8%;animation-delay:0s}.processing-datapoint--2{top:25%;left:5%;animation-delay:.8s;width:4px;height:4px}.processing-datapoint--3{bottom:30%;right:5%;animation-delay:1.6s}.processing-datapoint--4{bottom:20%;left:10%;animation-delay:2.2s;width:5px;height:5px}@keyframes processing-datapoint-float{0%,to{opacity:0;transform:translateY(0) scale(.5)}20%{opacity:.8}50%{opacity:.9;transform:translateY(-15px) scale(1)}80%{opacity:.6}}.processing-ai-visual .anim-scanner,.processing-ai-visual .anim-matrix,.processing-ai-visual .anim-circuit,.processing-ai-visual .anim-waveform,.processing-ai-visual .anim-helix{display:none}.processing-ai-visual[data-variant=scanner] .anim-scanner,.processing-ai-visual[data-variant=matrix] .anim-matrix,.processing-ai-visual[data-variant=circuit] .anim-circuit,.processing-ai-visual[data-variant=waveform] .anim-waveform,.processing-ai-visual[data-variant=helix] .anim-helix{display:block}.processing-ai-visual:not([data-variant]) .anim-scanner{display:block}.anim-matrix{position:absolute;inset:0;overflow:hidden;border-radius:50%;opacity:.6}.matrix-column{position:absolute;top:-20px;width:2px;background:linear-gradient(to bottom,transparent,var(--primary),transparent);animation:matrix-fall 2s linear infinite}.matrix-column:nth-child(1){left:15%;height:40px;animation-delay:0s;animation-duration:1.8s}.matrix-column:nth-child(2){left:30%;height:50px;animation-delay:.3s;animation-duration:2.2s}.matrix-column:nth-child(3){left:45%;height:35px;animation-delay:.7s;animation-duration:1.6s}.matrix-column:nth-child(4){left:55%;height:45px;animation-delay:.2s;animation-duration:2s}.matrix-column:nth-child(5){left:70%;height:55px;animation-delay:.5s;animation-duration:2.4s}.matrix-column:nth-child(6){left:85%;height:30px;animation-delay:.9s;animation-duration:1.5s}.matrix-column:nth-child(7){left:25%;height:42px;animation-delay:1.1s;animation-duration:1.9s}.matrix-column:nth-child(8){left:60%;height:38px;animation-delay:1.4s;animation-duration:1.7s}@keyframes matrix-fall{0%{transform:translateY(0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(240px);opacity:0}}.anim-circuit{position:absolute;inset:0}.circuit-node{position:absolute;width:8px;height:8px;background:var(--primary);border-radius:50%;animation:circuit-pulse 1.5s ease-in-out infinite}.circuit-node:nth-child(1){top:10%;left:20%;animation-delay:0s}.circuit-node:nth-child(2){top:10%;right:20%;animation-delay:.2s}.circuit-node:nth-child(3){top:35%;left:5%;animation-delay:.4s}.circuit-node:nth-child(4){top:35%;right:5%;animation-delay:.6s}.circuit-node:nth-child(5){bottom:35%;left:5%;animation-delay:.8s}.circuit-node:nth-child(6){bottom:35%;right:5%;animation-delay:1s}.circuit-node:nth-child(7){bottom:10%;left:20%;animation-delay:1.2s}.circuit-node:nth-child(8){bottom:10%;right:20%;animation-delay:1.4s}.circuit-line{position:absolute;height:2px;background:linear-gradient(90deg,transparent,var(--primary),transparent);animation:circuit-flow 2s ease-in-out infinite}.circuit-line:nth-child(9){top:12%;left:28%;width:44%;animation-delay:.1s}.circuit-line:nth-child(10){top:37%;left:13%;width:74%;animation-delay:.5s}.circuit-line:nth-child(11){bottom:37%;left:13%;width:74%;animation-delay:.9s}.circuit-line:nth-child(12){bottom:12%;left:28%;width:44%;animation-delay:1.3s}@keyframes circuit-pulse{0%,to{opacity:.3;transform:scale(.8);box-shadow:0 0 0 var(--primary-glow)}50%{opacity:1;transform:scale(1.2);box-shadow:0 0 15px var(--primary-glow)}}@keyframes circuit-flow{0%,to{opacity:.2}50%{opacity:.8}}.anim-waveform{position:absolute;bottom:20%;left:50%;transform:translate(-50%);display:flex;align-items:flex-end;gap:4px;height:60px}.waveform-bar{width:4px;background:var(--primary);border-radius:2px;animation:waveform-bounce 1s ease-in-out infinite}.waveform-bar:nth-child(1){animation-delay:0s}.waveform-bar:nth-child(2){animation-delay:.1s}.waveform-bar:nth-child(3){animation-delay:.2s}.waveform-bar:nth-child(4){animation-delay:.3s}.waveform-bar:nth-child(5){animation-delay:.4s}.waveform-bar:nth-child(6){animation-delay:.5s}.waveform-bar:nth-child(7){animation-delay:.4s}.waveform-bar:nth-child(8){animation-delay:.3s}.waveform-bar:nth-child(9){animation-delay:.2s}.waveform-bar:nth-child(10){animation-delay:.1s}.waveform-bar:nth-child(11){animation-delay:0s}@keyframes waveform-bounce{0%,to{height:10px;opacity:.4}50%{height:50px;opacity:1}}.anim-helix{position:absolute;inset:0;display:flex;justify-content:center}.helix-strand{position:absolute;width:100%;height:100%}.helix-dot{position:absolute;width:8px;height:8px;background:var(--primary);border-radius:50%;left:50%;animation:helix-orbit 3s linear infinite}.helix-strand:first-child .helix-dot:nth-child(1){top:10%;animation-delay:0s}.helix-strand:first-child .helix-dot:nth-child(2){top:30%;animation-delay:.5s}.helix-strand:first-child .helix-dot:nth-child(3){top:50%;animation-delay:1s}.helix-strand:first-child .helix-dot:nth-child(4){top:70%;animation-delay:1.5s}.helix-strand:first-child .helix-dot:nth-child(5){top:90%;animation-delay:2s}.helix-strand:last-child .helix-dot:nth-child(1){top:10%;animation-delay:1.5s}.helix-strand:last-child .helix-dot:nth-child(2){top:30%;animation-delay:2s}.helix-strand:last-child .helix-dot:nth-child(3){top:50%;animation-delay:2.5s}.helix-strand:last-child .helix-dot:nth-child(4){top:70%;animation-delay:0s}.helix-strand:last-child .helix-dot:nth-child(5){top:90%;animation-delay:.5s}@keyframes helix-orbit{0%{transform:translate(-50px) scale(.6);opacity:.3}50%{transform:translate(50px) scale(1);opacity:1}to{transform:translate(-50px) scale(.6);opacity:.3}}.processing-cuy-message{text-align:center;width:280px}.processing-cuy-title{font-size:20px;font-weight:600;color:var(--text-primary);margin:0 0 4px;letter-spacing:-.01em}.processing-cuy-subtitle{font-size:var(--text-sm);color:var(--text-tertiary);margin:0;font-weight:400}.processing-done-scene{display:flex;flex-direction:column;align-items:center;text-align:center;gap:20px;position:relative;padding:20px 0}.processing-done-visual{position:relative;width:240px;height:220px;display:flex;align-items:center;justify-content:center}.processing-done-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:260px;height:260px;background:radial-gradient(ellipse,var(--primary-glow) 0%,transparent 70%);pointer-events:none;animation:processing-done-pulse 2s ease-in-out infinite}@keyframes processing-done-pulse{0%,to{opacity:.4;transform:translate(-50%,-50%) scale(1)}50%{opacity:.7;transform:translate(-50%,-50%) scale(1.08)}}.processing-done-rings{position:absolute;width:220px;height:220px;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--primary);opacity:.4}.processing-ring{transform-origin:center}.processing-ring-1{animation:processing-ring-spin 12s linear infinite}.processing-ring-2{animation:processing-ring-spin 9s linear infinite reverse}.processing-ring-3{animation:processing-ring-spin 15s linear infinite}@keyframes processing-ring-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.processing-cuy-celebrate{width:130px;height:auto;position:relative;z-index:5;animation:processing-celebrate-bounce .6s ease-out}@keyframes processing-celebrate-bounce{0%{transform:scale(.8) translateY(20px);opacity:0}50%{transform:scale(1.05) translateY(-8px)}to{transform:scale(1) translateY(0);opacity:1}}.processing-done-message{position:relative;z-index:5}.processing-done-title{font-size:26px;font-weight:700;color:var(--text-primary);margin:0 0 8px}.processing-done-text{font-size:var(--text-base);color:var(--text-secondary);margin:0}.processing-done-actions{display:flex;flex-direction:column;align-items:center;gap:12px;position:relative;z-index:5}.processing-survey{width:100%;max-width:600px;padding:0 24px;animation:processing-view-enter .4s cubic-bezier(.16,1,.3,1)}@keyframes processing-view-enter{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.processing-survey-container{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:32px;box-shadow:0 1px #ffffff0a,0 18px 60px #0000002e}.processing-survey-header{text-align:center;margin-bottom:32px}.processing-survey-title{font-size:24px;font-weight:700;color:var(--text-primary);margin:0 0 8px}.processing-survey-subtitle{font-size:var(--text-sm);color:var(--text-tertiary);margin:0}.processing-survey-progress{margin:0 0 18px}.processing-survey-progress-track{height:6px;border-radius:999px;background:color-mix(in srgb,var(--border) 80%,transparent);overflow:hidden;box-shadow:inset 0 1px #ffffff0a}.processing-survey-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--primary) 0%,var(--primary-light) 60%,var(--primary) 100%);transition:width .35s ease-out}.processing-survey-progress-meta{display:flex;justify-content:flex-end;margin-top:8px}.processing-survey-progress-count{font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary);letter-spacing:.02em}.processing-survey-question{animation:processing-survey-question-enter .32s cubic-bezier(.16,1,.3,1)}@keyframes processing-survey-question-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.processing-survey-question.is-exiting{animation:processing-survey-question-exit .22s cubic-bezier(.4,0,1,1) forwards}@keyframes processing-survey-question-exit{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-8px) scale(.98)}}.processing-survey-question-label{font-size:18px;font-weight:700;letter-spacing:-.01em;color:var(--text-primary);margin-bottom:16px}.processing-survey-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}.processing-survey-grid-option{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:20px 16px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 85%,transparent) 0%,var(--surface-alt) 100%);border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:14px;cursor:pointer;transition:transform .15s cubic-bezier(.34,1.56,.64,1),box-shadow .18s ease-out,border-color .15s ease-out,background .15s ease-out;min-height:90px;position:relative;box-shadow:var(--shadow-card, 0 1px 2px rgba(0,0,0,.08));opacity:0;animation:processing-option-enter .35s cubic-bezier(.16,1,.3,1) forwards}@keyframes processing-option-enter{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.processing-survey-grid-option:hover:not(:disabled){background:linear-gradient(180deg,color-mix(in srgb,var(--surface-hover) 92%,transparent) 0%,var(--surface-hover) 100%);border-color:var(--primary-border);transform:translateY(-2px);box-shadow:var(--shadow-card-hover, 0 8px 24px rgba(0,0,0,.14))}.processing-survey-grid-option:active:not(:disabled){transform:translateY(-1px) scale(.98)}.processing-survey-grid-option.is-selected{background:linear-gradient(180deg,color-mix(in srgb,var(--primary-subtle) 85%,var(--surface) 15%),color-mix(in srgb,var(--primary-subtle) 65%,var(--surface-alt) 35%));border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 10%,transparent),var(--shadow-card-hover, 0 8px 24px rgba(0,0,0,.14))}.processing-survey-grid-option.is-confirmed{animation:processing-option-confirm .25s cubic-bezier(.34,1.56,.64,1);background:linear-gradient(180deg,color-mix(in srgb,var(--primary-subtle) 90%,var(--surface) 10%),color-mix(in srgb,var(--primary-subtle) 75%,var(--surface-alt) 25%));border-color:var(--primary);box-shadow:0 0 0 5px color-mix(in srgb,var(--primary) 18%,transparent),0 0 20px color-mix(in srgb,var(--primary) 15%,transparent),var(--shadow-card-hover, 0 8px 24px rgba(0,0,0,.14))}@keyframes processing-option-confirm{0%{transform:scale(1)}40%{transform:scale(1.04)}to{transform:scale(1)}}.processing-survey-option-label{font-size:var(--text-sm);font-weight:650;color:var(--text-primary)}.processing-survey-option-check{position:absolute;top:10px;right:10px;width:22px;height:22px;border-radius:999px;display:grid;place-items:center;background:color-mix(in srgb,var(--surface) 85%,transparent);border:1px solid color-mix(in srgb,var(--border) 70%,transparent);color:var(--text-tertiary);opacity:0;transform:scale(.92);transition:opacity var(--transition-fast),transform var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.processing-survey-option-check svg{width:14px;height:14px}.processing-survey-grid-option:hover .processing-survey-option-check,.processing-survey-list-option:hover .processing-survey-option-check{opacity:.55}.processing-survey-grid-option.is-selected .processing-survey-option-check,.processing-survey-list-option.is-selected .processing-survey-option-check{opacity:1;transform:scale(1);background:color-mix(in srgb,var(--primary) 12%,var(--surface) 88%);border-color:color-mix(in srgb,var(--primary) 45%,transparent);color:var(--primary)}.processing-survey-list{display:flex;flex-direction:column;gap:8px;margin-bottom:24px}.processing-survey-list-option{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 85%,transparent) 0%,var(--surface-alt) 100%);border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:14px;cursor:pointer;transition:transform .15s cubic-bezier(.34,1.56,.64,1),box-shadow .18s ease-out,border-color .15s ease-out,background .15s ease-out;text-align:left;position:relative;box-shadow:var(--shadow-card, 0 1px 2px rgba(0,0,0,.08));opacity:0;animation:processing-option-enter .35s cubic-bezier(.16,1,.3,1) forwards}.processing-survey-list-option:hover:not(:disabled){background:linear-gradient(180deg,color-mix(in srgb,var(--surface-hover) 92%,transparent) 0%,var(--surface-hover) 100%);border-color:var(--primary-border);transform:translateY(-2px);box-shadow:var(--shadow-card-hover, 0 8px 24px rgba(0,0,0,.14))}.processing-survey-list-option:active:not(:disabled){transform:translateY(-1px) scale(.98)}.processing-survey-list-option.is-selected{background:linear-gradient(180deg,color-mix(in srgb,var(--primary-subtle) 85%,var(--surface) 15%),color-mix(in srgb,var(--primary-subtle) 65%,var(--surface-alt) 35%));border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 10%,transparent),var(--shadow-card-hover, 0 8px 24px rgba(0,0,0,.14))}.processing-survey-list-option.is-confirmed{animation:processing-option-confirm .25s cubic-bezier(.34,1.56,.64,1);background:linear-gradient(180deg,color-mix(in srgb,var(--primary-subtle) 90%,var(--surface) 10%),color-mix(in srgb,var(--primary-subtle) 75%,var(--surface-alt) 25%));border-color:var(--primary);box-shadow:0 0 0 5px color-mix(in srgb,var(--primary) 18%,transparent),0 0 20px color-mix(in srgb,var(--primary) 15%,transparent),var(--shadow-card-hover, 0 8px 24px rgba(0,0,0,.14))}.processing-survey-list-left{display:flex;flex-direction:column;gap:2px}.processing-survey-list-label{font-size:var(--text-base);font-weight:650;color:var(--text-primary)}.processing-survey-list-desc{font-size:var(--text-sm);color:var(--text-tertiary)}.processing-survey-done-btn{width:100%;padding:16px;font-size:16px;font-weight:600;color:var(--bg-primary);background:linear-gradient(135deg,var(--primary) 0%,var(--primary-light) 100%);border:none;border-radius:12px;cursor:pointer;transition:transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease-out,opacity .15s ease-out,background .2s ease-out;margin-bottom:16px}.processing-survey-done-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 24px var(--primary-glow)}.processing-survey-done-btn:active:not(:disabled){transform:translateY(-1px) scale(.98)}.processing-survey-done-btn:disabled{opacity:.5;cursor:not-allowed}.processing-survey-done-btn.is-confirming{animation:processing-btn-confirm .3s cubic-bezier(.34,1.56,.64,1);background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary) 100%);box-shadow:0 6px 28px var(--primary-glow)}@keyframes processing-btn-confirm{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.processing-survey-skip{display:block;width:100%;text-align:center;font-size:var(--text-sm);color:var(--text-tertiary);background:none;border:none;cursor:pointer;padding:8px;transition:color var(--transition-fast)}.processing-survey-skip:hover{color:var(--text-secondary)}.processing-survey-grid-option:focus-visible,.processing-survey-list-option:focus-visible,.processing-survey-done-btn:focus-visible,.processing-survey-skip:focus-visible{outline:2px solid color-mix(in srgb,var(--primary) 55%,transparent);outline-offset:2px}.processing-survey-complete{display:flex;align-items:center;justify-content:center;padding:32px 24px;min-height:320px;animation:processing-view-enter .45s cubic-bezier(.16,1,.3,1)}.processing-survey-complete-content{display:flex;flex-direction:column;align-items:center;text-align:center;position:relative}.processing-survey-complete-check{width:80px;height:80px;margin-bottom:20px}.processing-survey-complete-circle{fill:none;stroke:var(--primary);stroke-width:2;opacity:0;transform-origin:center;animation:processing-complete-circle-enter .4s cubic-bezier(.34,1.56,.64,1) .1s forwards,processing-complete-circle-pulse 2s ease-in-out .5s infinite}@keyframes processing-complete-circle-enter{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes processing-complete-circle-pulse{0%,to{opacity:1}50%{opacity:.7}}.processing-survey-complete-path{fill:none;stroke:var(--primary);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:processing-complete-check-draw .5s cubic-bezier(.65,0,.35,1) .35s forwards}@keyframes processing-complete-check-draw{to{stroke-dashoffset:0}}.processing-survey-complete-sparkle{position:absolute;width:20px;height:20px;color:var(--primary);opacity:0}.processing-survey-complete-sparkle--1{top:-8px;right:-24px;animation:processing-complete-sparkle .6s cubic-bezier(.34,1.56,.64,1) .5s forwards}.processing-survey-complete-sparkle--2{top:20px;left:-28px;width:16px;height:16px;animation:processing-complete-sparkle .6s cubic-bezier(.34,1.56,.64,1) .65s forwards}.processing-survey-complete-sparkle--3{bottom:60px;right:-20px;width:14px;height:14px;animation:processing-complete-sparkle .6s cubic-bezier(.34,1.56,.64,1) .8s forwards}@keyframes processing-complete-sparkle{0%{opacity:0;transform:scale(0) rotate(-30deg)}50%{opacity:1;transform:scale(1.2) rotate(0)}to{opacity:.8;transform:scale(1) rotate(0)}}.processing-survey-complete-title{font-size:28px;font-weight:700;color:var(--text-primary);margin:0 0 8px;opacity:0;animation:processing-complete-text-enter .4s cubic-bezier(.16,1,.3,1) .4s forwards}.processing-survey-complete-text{font-size:var(--text-base);color:var(--text-secondary);margin:0;opacity:0;animation:processing-complete-text-enter .4s cubic-bezier(.16,1,.3,1) .5s forwards}@keyframes processing-complete-text-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.processing-survey,.processing-survey-question,.processing-survey-grid-option,.processing-survey-list-option,.processing-survey-done-btn.is-confirming,.processing-survey-complete,.processing-survey-complete-circle,.processing-survey-complete-path,.processing-survey-complete-sparkle,.processing-survey-complete-title,.processing-survey-complete-text{animation:none}.processing-survey-grid-option,.processing-survey-list-option,.processing-survey-complete-circle,.processing-survey-complete-title,.processing-survey-complete-text{opacity:1}.processing-survey-complete-path{stroke-dashoffset:0}.processing-survey-progress-fill{transition:none}}.processing-optin{display:flex;flex-direction:column;align-items:center;text-align:center;gap:20px;padding:32px 24px;max-width:400px;animation:processing-view-enter .45s cubic-bezier(.16,1,.3,1)}.processing-optin--success{gap:16px}.processing-optin-card{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:32px 28px;display:flex;flex-direction:column;align-items:center;gap:18px;box-shadow:0 1px #ffffff0a,0 18px 60px #00000073}.processing-optin-icon{width:64px;height:64px;color:var(--primary);opacity:0;animation:processing-optin-icon-enter .5s cubic-bezier(.34,1.56,.64,1) .1s forwards}@keyframes processing-optin-icon-enter{0%{opacity:0;transform:scale(.6) rotate(-8deg)}to{opacity:1;transform:scale(1) rotate(0)}}.processing-optin-success-icon{width:64px;height:64px;color:var(--success);opacity:0;animation:processing-optin-success-enter .6s cubic-bezier(.34,1.56,.64,1) .05s forwards}@keyframes processing-optin-success-enter{0%{opacity:0;transform:scale(.4)}50%{opacity:1;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.processing-optin--success .processing-optin-success-icon path:last-child{stroke-dasharray:30;stroke-dashoffset:30;animation:processing-optin-check-draw .4s ease-out .35s forwards}@keyframes processing-optin-check-draw{to{stroke-dashoffset:0}}.processing-optin-title{font-size:22px;font-weight:700;color:var(--text-primary);margin:0;opacity:0;animation:processing-optin-text-enter .4s cubic-bezier(.16,1,.3,1) .15s forwards}@keyframes processing-optin-text-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.processing-optin-text{font-size:var(--text-base);color:var(--text-secondary);margin:0;line-height:1.5;opacity:0;animation:processing-optin-text-enter .4s cubic-bezier(.16,1,.3,1) .22s forwards}.processing-optin-btn{width:100%;max-width:280px;padding:14px 24px;font-size:var(--text-base);font-weight:600;color:var(--bg-primary);background:linear-gradient(135deg,var(--primary) 0%,var(--primary-light) 100%);border:none;border-radius:12px;cursor:pointer;transition:transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease-out,opacity .15s ease-out;opacity:0;animation:processing-optin-btn-enter .4s cubic-bezier(.16,1,.3,1) .3s forwards}@keyframes processing-optin-btn-enter{0%{opacity:0;transform:translateY(10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.processing-optin-btn:hover:not(:disabled){transform:translateY(-2px) scale(1.01);box-shadow:0 6px 24px var(--primary-glow)}.processing-optin-btn:active:not(:disabled){transform:translateY(-1px) scale(.98)}.processing-optin-btn:disabled{opacity:.7;cursor:not-allowed}.processing-optin-btn.is-submitting{animation:processing-optin-btn-pulse 1.2s ease-in-out infinite}@keyframes processing-optin-btn-pulse{0%,to{opacity:.85;box-shadow:0 4px 16px var(--primary-glow)}50%{opacity:1;box-shadow:0 6px 24px var(--primary-glow)}}.processing-optin-dismiss{font-size:var(--text-sm);color:var(--text-tertiary);background:none;border:none;cursor:pointer;padding:8px 16px;transition:color .15s ease-out,transform .15s ease-out;opacity:0;animation:processing-optin-text-enter .35s cubic-bezier(.16,1,.3,1) .4s forwards}.processing-optin-dismiss:hover{color:var(--text-secondary);transform:translateY(-1px)}.processing-optin-dismiss:active{transform:translateY(0)}.processing-optin-error{font-size:var(--text-sm);color:var(--danger);margin:0;opacity:0;animation:processing-optin-error-enter .3s ease-out forwards}@keyframes processing-optin-error-enter{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.processing-optin-btn:focus-visible,.processing-optin-dismiss:focus-visible{outline:2px solid color-mix(in srgb,var(--primary) 55%,transparent);outline-offset:2px}@media(prefers-reduced-motion:reduce){.processing-optin,.processing-optin-icon,.processing-optin-success-icon,.processing-optin-title,.processing-optin-text,.processing-optin-btn,.processing-optin-btn.is-submitting,.processing-optin-dismiss,.processing-optin-error,.processing-optin--success .processing-optin-success-icon path:last-child{animation:none;opacity:1}}.mobile-progress-radial{position:relative;width:200px;height:120px;margin:0 auto 16px}.mobile-progress-radial-svg{position:absolute;top:-40px;left:0;width:200px;height:200px;pointer-events:none}.mobile-progress-radial-fill{transition:stroke-dashoffset .4s ease-out;filter:drop-shadow(0 0 6px var(--primary-glow))}.mobile-progress-radial-dots{position:absolute;top:-40px;left:0;width:200px;height:200px;pointer-events:none}.mobile-progress-radial-dot{position:absolute;width:20px;height:20px;border-radius:50%;background:var(--surface-alt);border:2px solid var(--border);transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.mobile-progress-radial-dot.is-completed{background:var(--primary);border-color:var(--primary)}.mobile-progress-radial-dot.is-current{background:var(--primary-subtle);border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 20%,transparent)}.mobile-progress-radial-dot .mobile-progress-check{width:12px;height:12px;color:var(--bg-primary)}.mobile-progress-radial-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;padding-top:20px}.mobile-progress-radial-step{display:block;font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.mobile-progress-radial-percent{display:block;font-size:var(--text-2xl);font-weight:700;color:var(--primary);line-height:1;margin-top:2px}.mobile-progress-badge{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 24px;margin:0 auto 8px;background:var(--surface-alt);border:1px solid var(--border);border-radius:16px;max-width:200px}.mobile-progress-badge-counter{display:flex;align-items:baseline;gap:2px}.mobile-progress-badge-current{font-size:var(--text-3xl);font-weight:800;color:var(--primary);line-height:1}.mobile-progress-badge-separator{font-size:var(--text-xl);font-weight:500;color:var(--text-tertiary);margin:0 2px}.mobile-progress-badge-total{font-size:var(--text-xl);font-weight:600;color:var(--text-secondary)}.mobile-progress-badge-info{display:flex;flex-direction:column;align-items:center;gap:2px}.mobile-progress-badge-label{font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.mobile-progress-badge-percent{font-size:var(--text-xs);font-weight:500;color:var(--text-tertiary)}.mobile-progress-badge-bar{width:100%;height:4px;background:var(--highlight-faint);border-radius:999px;overflow:hidden}.mobile-progress-badge-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--primary-light));border-radius:999px;transition:width .3s ease-out}.mobile-progress-dots{display:flex;flex-direction:column;align-items:center;gap:12px;padding:12px 16px 8px}.mobile-progress-dots-arc{display:flex;align-items:center;justify-content:center;gap:12px}.mobile-progress-dot{width:28px;height:28px;border-radius:50%;background:var(--surface-alt);border:2px solid var(--border);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);position:relative}.mobile-progress-dot.is-completed{background:var(--primary);border-color:var(--primary);transform:scale(1)}.mobile-progress-dot.is-current{background:var(--primary-subtle);border-color:var(--primary);transform:scale(1.15);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 15%,transparent),0 0 12px var(--primary-glow)}.mobile-progress-dot.is-current:after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--primary);opacity:.3;animation:dot-pulse 2s ease-in-out infinite}@keyframes dot-pulse{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.2);opacity:0}}.mobile-progress-dot-check{width:14px;height:14px;color:var(--bg-primary)}.mobile-progress-dots-info{display:flex;align-items:center;gap:8px}.mobile-progress-dots-label{font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.mobile-progress-dots-percent{font-size:var(--text-sm);font-weight:700;color:var(--primary);padding:2px 8px;background:var(--primary-subtle);border-radius:6px}.mobile-progress-radial,.mobile-progress-badge,.mobile-progress-dots{display:none}.processing-mobile-progress{display:none;width:100%;padding:16px 16px 0;flex-shrink:0}@media(max-width:600px){.processing-mobile-progress{display:block}.mobile-progress-radial,.mobile-progress-badge,.mobile-progress-dots{display:flex}.mobile-progress-radial{display:block}}@media(max-width:380px){.mobile-progress-dot{width:24px;height:24px}.mobile-progress-dots-arc{gap:8px}.mobile-progress-badge{padding:12px 20px}.mobile-progress-badge-current{font-size:var(--text-2xl)}}@media(max-width:768px){.processing-progress-header{padding:10px 16px}.processing-content{padding:16px}.processing-survey-container{padding:24px 20px}.processing-survey-title{font-size:20px}.processing-survey-grid{grid-template-columns:repeat(2,1fr)}.processing-survey-grid-option{padding:16px 14px}}@media(max-width:600px){.processing-phase{padding-bottom:var(--safe-area-bottom)}.processing-progress-header{padding:10px 12px}.processing-progress-label{font-size:var(--text-xs);padding:5px 10px}.processing-progress-percent{font-size:var(--text-sm)}.processing-progress-track{height:auto;margin:0 12px 8px}.processing-steps{display:none}.processing-content{padding:12px}.processing-cloud-scene{transform:scale(.85);transform-origin:center top}.processing-upload-title{font-size:18px}.processing-upload-subtitle{font-size:var(--text-sm)}.processing-cuy-scene{width:260px;height:320px;padding-top:30px}.processing-cuy-image{width:150px}.processing-cuy-title{font-size:18px}.processing-cuy-subtitle{font-size:var(--text-sm)}.processing-orbit--outer{width:220px;height:220px}.processing-orbit--inner{width:170px;height:170px}.processing-survey{padding:0 12px}.processing-survey-container{padding:20px 16px;border-radius:12px}.processing-survey-header{margin-bottom:24px}.processing-survey-title{font-size:18px}.processing-survey-subtitle{font-size:var(--text-sm)}.processing-survey-grid{gap:8px}.processing-survey-grid-option{padding:14px 10px}.processing-survey-option-label{font-size:var(--text-xs)}.processing-survey-list-option{padding:14px 16px}.processing-survey-list-label{font-size:var(--text-sm)}.processing-survey-list-desc{font-size:var(--text-xs)}.processing-survey-done-btn{padding:14px;font-size:var(--text-base)}.processing-optin{padding:32px 16px}.processing-optin-card{padding:24px 18px;border-radius:14px}.processing-optin-icon,.processing-optin-success-icon{width:56px;height:56px}.processing-optin-title{font-size:20px}.processing-optin-text{font-size:var(--text-sm)}.processing-optin-btn{padding:12px 20px;font-size:var(--text-sm)}.processing-done-title{font-size:24px}.processing-done-text{font-size:var(--text-sm)}.processing-cuy-celebrate{width:140px}.processing-error-title{font-size:20px}.processing-error-message{font-size:var(--text-sm)}.processing-error-actions{flex-direction:column;width:100%}.processing-error-actions .btn{width:100%}.processing-actions{padding:16px}.processing-safe-message{font-size:var(--text-xs)}}@media(max-width:480px){.processing-survey-grid{grid-template-columns:repeat(2,1fr)}.processing-survey-grid-option{padding:12px 6px}.processing-survey-option-label{font-size:var(--text-xs)}}.onboarding-progress-bar{position:fixed;top:var(--safe-area-top, env(safe-area-inset-top, 0px));left:0;right:0;height:3px;background:transparent;pointer-events:none;overflow:visible;z-index:1001}.onboarding-progress-simple{position:absolute;left:0;top:0;width:100%;height:100%;background:var(--primary);transform-origin:left center;transition:transform var(--transition-slow) linear;will-change:transform}.onboarding-progress-fill{position:absolute;left:0;top:0;width:100%;height:100%;background:var(--progress-gradient, linear-gradient( 90deg, #4BC4BB 0%, #22d3ee 20%, #a855f7 50%, #ec4899 70%, #E07B4A 90%, #F5A67A 100% ));border-radius:0 2px 2px 0;transform-origin:left center;transition:transform 1s cubic-bezier(.34,1.56,.64,1);will-change:transform}.onboarding-progress-glow{position:absolute;left:0;top:-3px;width:100%;height:9px;border-radius:4px;background:var(--progress-glow, linear-gradient( 90deg, rgba(75, 196, 187, .4) 0%, rgba(34, 211, 238, .4) 20%, rgba(168, 85, 247, .4) 50%, rgba(236, 72, 153, .4) 70%, rgba(224, 123, 74, .4) 90% ));filter:blur(6px);transform-origin:left center;will-change:transform;pointer-events:none;opacity:.8;transition:transform 1s cubic-bezier(.34,1.56,.64,1)}.onboarding-progress-fill:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);background-size:200% 100%;animation:progressShimmer 2s ease-in-out infinite;border-radius:inherit}@keyframes progressShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.onboarding-progress-complete{background:linear-gradient(90deg,var(--success) 0%,var(--success-light) 50%,#5eead4 100%);box-shadow:0 0 12px var(--success-glow)}.onboarding-progress-complete+.onboarding-progress-glow{background:linear-gradient(90deg,#5ca86c80,#34d39980)}.onboarding-progress-complete:after{content:"";position:absolute;inset:0;background:inherit;border-radius:inherit;animation:progressPulse 2s ease-in-out infinite}@keyframes progressPulse{0%,to{opacity:1;box-shadow:0 0 8px var(--success-glow)}50%{opacity:.85;box-shadow:0 0 16px var(--success-glow)}}@media(max-height:640px)and (orientation:landscape){.onboarding-progress-bar{display:none}}.playhead-marker-circle{position:absolute;top:50%;z-index:60;width:14px;height:14px;border-radius:50%;background:var(--primary);border:2px solid var(--surface-raised, #fff);box-shadow:0 1px 4px var(--shadow-medium);transform:translate(-50%,-50%);pointer-events:none;transition:width .15s ease,height .15s ease,box-shadow .15s ease}.marker-row:hover .playhead-marker-circle{width:16px;height:16px;box-shadow:0 2px 6px var(--shadow-heavy)}.playhead-line{position:absolute;top:-22px;bottom:var(--playhead-line-bottom, 12px);width:2px;pointer-events:none;z-index:40;transition:none;transform:translate(-50%) translateZ(0);will-change:left;backface-visibility:hidden}.progress-fill-scrubber{position:absolute;left:0;top:50%;transform:translateY(-50%);height:4px;background:var(--primary);border-radius:2px 0 0 2px;z-index:2;pointer-events:none;transition:height .15s ease}.marker-row:hover .progress-fill-scrubber{height:6px}@media(max-height:450px)and (orientation:landscape){.playhead-marker-circle{width:18px;height:18px}.marker-row:hover .playhead-marker-circle{width:20px;height:20px}.playhead-line{width:3px}.progress-fill-scrubber{height:6px}.marker-row:hover .progress-fill-scrubber{height:8px}}.timeline-container{display:grid;grid-template-columns:64px 1fr 90px;gap:8px;background:var(--timeline-bg, linear-gradient(180deg, rgba(20, 22, 30, .95) 0%, rgba(12, 14, 20, .98) 100%));box-shadow:var(--timeline-shadow, 0 8px 24px var(--shadow-medium), inset 0 1px 0 var(--highlight-ghost));padding:10px;align-items:center}.timeline-container--time-under-play{grid-template-columns:64px 1fr}.timeline-container--no-play-button{grid-template-columns:1fr 90px}.timeline-container--no-play-button.timeline-container--no-right-time,.timeline-container--time-under-play.timeline-container--no-play-button{grid-template-columns:1fr}.side-controls{display:flex;flex-direction:column;align-items:center;justify-content:center;background:transparent}.timeline-container--time-under-play .side-controls{justify-content:flex-start;gap:6px}.time-under-play{font-size:var(--text-xs);font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.01em;text-align:center;line-height:1.1;padding:0 2px;opacity:.95}.time-under-play .time-current{color:var(--overlay-heavy)}.time-under-play .time-separator{color:var(--overlay-subtle)}.time-under-play .time-total{color:var(--overlay-medium)}.timeline-side{display:flex;flex-direction:column;min-height:0;overflow:visible;gap:6px}.marker-row-wrapper{position:relative;flex-shrink:0}.marker-row{position:relative;height:20px;background:transparent;flex-shrink:0;cursor:pointer;border-radius:0;display:flex;align-items:center;padding:0;box-sizing:border-box;overflow:visible}.marker-row.with-track:before{content:"";position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);height:4px;background:var(--timeline-marker-track-bg, var(--highlight-subtle));border-radius:2px;z-index:1;transition:height .15s ease}.marker-row.with-track:hover:before{height:6px}.tracks-container{position:relative;cursor:default;flex:1;display:flex;flex-direction:column;min-height:60px;max-height:500px;border-radius:8px;overflow:visible;box-sizing:border-box;--playhead-line-bottom: 12px;padding-bottom:12px;transition:max-height var(--transition-slow),min-height var(--transition-slow),opacity var(--transition-slow);transform-origin:top center;touch-action:none}.tracks-container--hidden{min-height:0;max-height:0;height:0;opacity:0;padding:0;margin:0;border-color:transparent;box-shadow:none;pointer-events:none;overflow:hidden}.tracks-container--animating-in{animation:tracksReveal .45s ease-out forwards;min-height:0}@keyframes tracksReveal{0%{opacity:0;max-height:0}to{opacity:1;max-height:var(--target-tracks-height, 120px)}}.tracks-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:var(--playhead-line-bottom, 12px);background:var( --timeline-tracks-bg, linear-gradient(180deg, rgba(15, 17, 25, .95) 0%, rgba(10, 12, 18, .98) 100%) );border-radius:8px;z-index:0;pointer-events:none}.tracks-container--zoomed{--fade-size: 6px;z-index:51}.tracks-viewport{position:relative;flex:1;display:flex;flex-direction:column;min-height:0}.tracks-container--zoomed .tracks-viewport{-webkit-mask-image:linear-gradient(90deg,transparent 0%,black var(--fade-size),black calc(100% - var(--fade-size)),transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,black var(--fade-size),black calc(100% - var(--fade-size)),transparent 100%)}.right-time-display{display:flex;align-items:center;justify-content:flex-end;font-size:var(--text-sm);font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:.01em;text-align:right;padding:0 4px}.time-current{color:var(--text-tertiary, var(--overlay-medium))}.time-separator{color:var(--text-muted, var(--overlay-subtle));margin:0 1px}.time-total{color:var(--text-tertiary, var(--overlay-medium))}.control-btn-primary{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--timeline-btn-bg, var(--highlight-ghost));border:1px solid var(--timeline-btn-border, var(--highlight-faint));border-radius:50%;color:var(--timeline-btn-color, var(--overlay-heavy));cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--timeline-btn-shadow, 0 2px 8px var(--shadow-soft));position:relative;overflow:visible}.control-btn-primary:hover{background:var(--timeline-btn-hover-bg, var(--highlight-subtle));color:var(--timeline-btn-hover-color, rgba(255, 255, 255, 1));box-shadow:var(--timeline-btn-hover-shadow, 0 4px 12px var(--shadow-medium))}.control-btn-primary:active{background:var(--timeline-btn-active-bg, var(--highlight-ghost));box-shadow:0 2px 6px var(--shadow-soft)}.play-button-icon-wrapper{display:flex;align-items:center;justify-content:center;position:relative;z-index:2;color:var(--text-primary)}.play-button-ripple{position:absolute;inset:0;border-radius:50%;pointer-events:none;opacity:0;z-index:1}.control-btn-primary:active .play-button-ripple{animation:ripple .6s ease-out}@keyframes ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.5);box-shadow:0 0 0 2px currentColor}}.control-btn-primary.is-playing{background:var(--success-subtle, rgba(15, 189, 174, .2));color:var(--success, #4dd4c7);border-color:var(--success-border, rgba(15, 189, 174, .3))}.control-btn-primary.is-playing:hover{background:var(--success-subtle, rgba(15, 189, 174, .25))}.control-btn-primary .icon{width:20px;height:20px}.icon{width:20px;height:20px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.icon-small{width:16px;height:16px}.icon-filled{fill:currentColor;stroke:none}@media(max-width:960px){.timeline-container{grid-template-columns:60px 1fr 88px;gap:8px;padding:8px 10px;border-radius:10px}.timeline-container--no-play-button{grid-template-columns:1fr 88px}.timeline-container--no-play-button.timeline-container--no-right-time{grid-template-columns:1fr}.marker-row{height:22px}.control-btn-primary{width:42px;height:42px}.control-btn-primary .icon{width:18px;height:18px}.right-time-display{font-size:var(--text-sm)}.tracks-container{min-height:68px}}@media(max-width:600px){.timeline-container{grid-template-columns:54px 1fr;gap:6px;padding:7px 8px;border-radius:9px}.timeline-container--no-play-button{grid-template-columns:1fr}.marker-row{height:24px}.control-btn-primary{width:40px;height:40px}.control-btn-primary .icon{width:17px;height:17px}.right-time-display{display:none}.tracks-container{min-height:56px}}@media(max-height:520px){.timeline-container{grid-template-columns:48px 1fr 76px;gap:5px;padding:6px 8px;border-radius:8px}.timeline-container--no-play-button{grid-template-columns:1fr 76px}.timeline-container--no-play-button.timeline-container--no-right-time{grid-template-columns:1fr}.marker-row{height:22px}.control-btn-primary{width:38px;height:38px}.control-btn-primary .icon{width:16px;height:16px}.tracks-container{min-height:52px}}@media(max-height:640px)and (orientation:landscape){.timeline-container{grid-template-columns:1fr;gap:4px;padding:5px 8px;border-radius:8px}.timeline-container:not(.timeline-container--no-play-button){grid-template-columns:40px 1fr}.marker-row{height:18px;border-radius:4px}.tracks-container{min-height:34px;max-height:none}.right-time-display{display:none}.control-btn-primary{width:32px;height:32px}.control-btn-primary .icon{width:14px;height:14px}}.block-delete-btn{position:absolute;width:22px;height:22px;border-radius:50%;border:1px solid var(--danger-glow);background:linear-gradient(135deg,var(--danger-glow) 0%,var(--danger-dark) 100%);color:var(--overlay-heavy);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;opacity:0;transform:scale(.8);transition:opacity var(--transition-normal),transform var(--transition-normal),background var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast);z-index:51;pointer-events:auto;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 2px 8px var(--danger-glow),inset 0 1px 0 var(--highlight-soft)}.track-item:hover .block-delete-btn,.track-item.selected .block-delete-btn{opacity:1;transform:scale(1)}.block-delete-btn--top-center{top:-8px;left:50%;transform:scale(.8) translate(-50%)}.track-item:hover .block-delete-btn--top-center,.track-item.selected .block-delete-btn--top-center{transform:scale(1) translate(-50%)}.block-delete-btn--top-center:hover{transform:scale(1.15) translate(-50%)}.block-delete-btn--top-center:active{transform:scale(.95) translate(-50%)}.block-delete-btn:hover{background:linear-gradient(135deg,var(--danger) 0%,var(--danger-dark) 100%);color:#fff;border-color:var(--danger-glow);transform:scale(1.18);box-shadow:0 0 0 4px var(--danger-glow),0 4px 16px var(--danger-glow),inset 0 1px 0 var(--overlay-subtle)}.block-delete-btn:active{transform:scale(.95);background:linear-gradient(135deg,var(--danger-dark) 0%,var(--danger-darker) 100%);border-color:var(--danger-darker);box-shadow:0 0 0 3px var(--danger-glow),0 2px 8px var(--danger-glow),inset 0 -1px 0 var(--shadow-soft)}.block-delete-btn:focus{outline:none;box-shadow:0 0 0 2px var(--overlay-medium),0 0 0 4px var(--danger-glow)}.block-delete-btn:focus:not(:focus-visible){box-shadow:none}.block-delete-btn:focus-visible{opacity:1;transform:scale(1);box-shadow:0 0 0 2px var(--overlay-medium),0 0 0 4px var(--danger-glow)}.block-delete-btn__icon{width:13px;height:13px;flex-shrink:0;filter:drop-shadow(0 1px 2px var(--shadow-soft))}.block-delete-btn--compact{width:16px;height:16px}.block-delete-btn--compact .block-delete-btn__icon{width:9px;height:9px}.block-delete-btn--compact.block-delete-btn--top-center{top:-6px}.track-item:hover .block-delete-btn--compact.block-delete-btn--top-center,.track-item.selected .block-delete-btn--compact.block-delete-btn--top-center{transform:scale(1) translate(-50%)}.block-delete-btn--compact.block-delete-btn--top-center:hover{transform:scale(1.12) translate(-50%)}.block-delete-btn--compact.block-delete-btn--top-center:active{transform:scale(.92) translate(-50%)}.block-delete-btn--portaled{opacity:0;transform:scale(.8) translate(-50%);pointer-events:none}.block-delete-btn--portaled.block-delete-btn--visible{opacity:1;transform:scale(1) translate(-50%);pointer-events:auto}.block-delete-btn--portaled:hover{transform:scale(1.15) translate(-50%)}.block-delete-btn--portaled:active{transform:scale(.95) translate(-50%)}.block-delete-btn--portaled.block-delete-btn--compact.block-delete-btn--visible{transform:scale(1) translate(-50%)}.block-delete-btn--portaled.block-delete-btn--compact:hover{transform:scale(1.12) translate(-50%)}.block-delete-btn--portaled.block-delete-btn--compact:active{transform:scale(.92) translate(-50%)}@media(max-height:640px)and (orientation:landscape){.block-delete-btn{width:18px;height:18px}.block-delete-btn__icon{width:10px;height:10px}.block-delete-btn--top-center{top:-6px}}.track-item{position:absolute;top:0;bottom:0;height:auto;cursor:grab;z-index:10;display:flex;align-items:center;justify-content:center;overflow:visible;color:var(--overlay-heavy);font-weight:500;font-size:var(--text-sm);-webkit-user-select:none;user-select:none;pointer-events:auto;border-radius:6px;border:1px solid var(--shadow-soft);box-shadow:inset 0 1px 0 var(--highlight-subtle),inset 0 -1px 0 var(--shadow-subtle);transition:filter var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.track-item-content{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);pointer-events:none;text-align:center;padding:0 20px;overflow:hidden}.track-item-title{font-size:var(--text-sm);font-weight:600;color:var(--overlay-heavy);letter-spacing:.01em;text-shadow:0 1px 2px var(--shadow-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track-item:hover{filter:brightness(1.1);box-shadow:inset 0 1px 0 var(--highlight-soft),inset 0 -1px 0 var(--shadow-subtle),0 0 0 1px var(--highlight-faint);border-color:var(--highlight-faint)}.track-item.selected{filter:brightness(1.12);box-shadow:inset 0 1px 0 var(--highlight-soft),inset 0 -1px 0 var(--shadow-subtle),0 0 0 2px var(--highlight-subtle)}.track-item.boundary-hovered{filter:brightness(1.06);box-shadow:inset 0 1px 0 var(--highlight-soft),inset 0 -1px 0 var(--shadow-subtle),0 0 0 2px var(--primary-glow),0 0 12px var(--primary-subtle)}.track-item.boundary-active{filter:brightness(1.08);box-shadow:inset 0 1px 0 var(--highlight-soft),inset 0 -1px 0 var(--shadow-subtle),0 0 0 2px var(--primary-glow),0 0 16px var(--primary-glow);pointer-events:none}.track-item.boundary-active:hover{filter:brightness(1.08)}.track-item.dragging{cursor:grabbing;filter:brightness(1.05);opacity:.95;z-index:30;transition:filter var(--transition-fast),opacity var(--transition-fast)}.track-item.dragging~.railway-grip,.tracks-container:has(.track-item.dragging) .railway-grip{opacity:0;pointer-events:none}.track-item.resizing{transition:none}.track-item.locked{cursor:default;opacity:.55;filter:saturate(.6) brightness(.9)}.track-item.locked:hover{filter:saturate(.6) brightness(.9);box-shadow:inset 0 1px 0 var(--highlight-subtle),inset 0 -1px 0 var(--shadow-subtle)}.track-item.disabled{cursor:default;opacity:.35;filter:grayscale(40%) brightness(.85);pointer-events:none}.track-item.disabled:hover{filter:grayscale(40%) brightness(.85);box-shadow:inset 0 1px 0 var(--highlight-subtle),inset 0 -1px 0 var(--shadow-subtle)}@media(max-width:960px){.track-item{font-size:var(--text-sm);min-height:54px}.track-item-content{padding:0 28px}.track-item-title{font-size:var(--text-sm)}}@media(max-width:600px){.track-item{font-size:var(--text-sm);min-height:48px}.track-item-content{padding:0 22px}.track-item-title{font-size:var(--text-sm)}}@media(max-height:520px){.track-item{font-size:var(--text-xs);min-height:40px}.track-item-content{padding:0 18px}.track-item-title{font-size:var(--text-xs)}}@media(max-height:640px)and (orientation:landscape){.track-item{font-size:var(--text-xs);min-height:30px;border-radius:4px}.track-item-content{padding:0 16px}.track-item-title{font-size:var(--text-xs)}}.railway-grip{position:absolute;top:50%;transform:translate(-50%,-50%);cursor:grab;z-index:150;pointer-events:auto;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:none;width:14px;height:44px;border-radius:7px;background:var(--overlay-heavy);border:1px solid var(--shadow-subtle);box-shadow:0 2px 6px var(--shadow-soft),inset 0 1px 0 var(--overlay-medium);transition:transform var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast),opacity var(--transition-fast)}.railway-grip:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:2px;height:40%;background:var(--shadow-soft);border-radius:1px}.railway-grip.compact{height:24px}.railway-grip:hover{background:var(--surface);box-shadow:0 3px 10px var(--shadow-soft),inset 0 1px 0 var(--overlay-medium);transform:translate(-50%,-50%) scale(1.05)}.railway-grip:hover:before{background:var(--shadow-medium)}.railway-grip.active{cursor:grabbing;background:var(--surface);box-shadow:0 4px 12px var(--shadow-medium),inset 0 -1px 0 var(--shadow-ghost);transform:translate(-50%,-50%) scale(1.08)}.railway-grip.active:before{background:var(--shadow-medium)}.railway-grip.shared-border-mode{background:linear-gradient(135deg,var(--primary),var(--primary-dark));border:2px solid var(--primary-glow);box-shadow:0 4px 12px var(--primary-glow),0 0 0 2px var(--primary-subtle),inset 0 1px 0 var(--overlay-subtle);transform:translate(-50%,-50%) scale(1.1)}.railway-grip.shared-border-mode:before{background:var(--overlay-medium);width:3px}.railway-grip.shared-border-mode:hover{background:linear-gradient(135deg,var(--primary),var(--primary-dark));box-shadow:0 5px 15px var(--primary-glow),0 0 0 3px var(--primary-glow),inset 0 1px 0 var(--overlay-medium);transform:translate(-50%,-50%) scale(1.15)}.railway-grip.shared-border-mode:before:hover{background:var(--overlay-medium)}.railway-grip.animated{animation:grip-pulse-prominent 1.5s ease-in-out infinite}@keyframes grip-pulse-prominent{0%,to{box-shadow:0 3px 8px var(--shadow-soft),inset 0 1px 0 var(--overlay-medium),0 0 0 0 var(--icon-recap-subtle);transform:translate(-50%,-50%) scale(1)}50%{box-shadow:0 4px 12px var(--shadow-medium),inset 0 1px 0 var(--overlay-medium),0 0 0 10px var(--icon-recap-border);transform:translate(-50%,-50%) scale(1.08)}}@media(max-width:960px){.railway-grip{width:18px;height:42px;border-radius:7px;z-index:200;touch-action:none;cursor:grab;background:var(--overlay-heavy);box-shadow:0 2px 8px var(--shadow-soft),inset 0 1px 0 var(--overlay-medium)}.railway-grip:active,.railway-grip.active{cursor:grabbing}.railway-grip:before{width:2px;height:40%;background:var(--shadow-soft)}}@media(max-width:600px){.railway-grip{width:16px;height:38px;border-radius:6px}.railway-grip:before{height:38%}}@media(max-height:520px){.railway-grip{height:36px;width:14px}}:root{--railway-animation-speed: .85s}.railway-animation{position:absolute;top:50%;transform:translate(-50%,-50%);z-index:99;pointer-events:none;width:0;height:0;overflow:visible}.railway-animation-pulse{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:36px;height:92px;border-radius:8px;background:var(--highlight-subtle);box-shadow:0 0 0 6px var(--highlight-soft);animation:railwayPulse var(--railway-animation-speed) ease-in-out infinite}.railway-animation-arrow{position:absolute;top:50%;transform:translateY(-50%);font-size:36px;color:#fff;pointer-events:none;text-shadow:0 2px 4px var(--shadow-heavy)}.railway-animation-arrow-left{right:calc(50% + 18px);animation:railwayBounceLeft var(--railway-animation-speed) ease-in-out infinite}.railway-animation-arrow-right{left:calc(50% + 18px);animation:railwayBounceRight var(--railway-animation-speed) ease-in-out infinite}.railway-animation.compact .railway-animation-pulse{width:26px;height:40px;border-radius:5px;box-shadow:0 0 0 4px var(--highlight-soft)}.railway-animation.compact .railway-animation-arrow{font-size:20px}.railway-animation.compact .railway-animation-arrow-left{right:calc(50% + 12px)}.railway-animation.compact .railway-animation-arrow-right{left:calc(50% + 12px)}@keyframes railwayPulse{0%,to{box-shadow:0 0 0 6px var(--highlight-soft);background:var(--highlight-subtle)}50%{box-shadow:0 0 0 12px var(--highlight-faint);background:var(--highlight-soft)}}@keyframes railwayBounceLeft{0%,to{transform:translateY(-50%) translate(0)}50%{transform:translateY(-50%) translate(-10px)}}@keyframes railwayBounceRight{0%,to{transform:translateY(-50%) translate(0)}50%{transform:translateY(-50%) translate(10px)}}@media(max-height:640px)and (orientation:landscape){.railway-animation-pulse{width:24px;height:44px;border-radius:5px;box-shadow:0 0 0 4px var(--highlight-soft)}.railway-animation-arrow{font-size:24px}.railway-animation-arrow-left{right:calc(50% + 12px)}.railway-animation-arrow-right{left:calc(50% + 12px)}@keyframes railwayPulse{0%,to{box-shadow:0 0 0 4px var(--highlight-soft);background:var(--highlight-subtle)}50%{box-shadow:0 0 0 8px var(--highlight-faint);background:var(--highlight-soft)}}}.boundary-grip-zone{position:absolute;top:0;bottom:0;transform:translate(-50%);width:24px;z-index:140;pointer-events:auto;cursor:ew-resize;touch-action:none;-webkit-tap-highlight-color:transparent}.boundary-grip-zone.active{cursor:grabbing}.boundary-grip{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;opacity:0;transition:opacity var(--transition-fast);user-select:none;-webkit-user-select:none;display:flex;align-items:center;gap:3px}.boundary-grip.visible{opacity:1}.boundary-grip:before{content:"";width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-right:5px solid var(--overlay-subtle);transition:border-color var(--transition-fast)}.boundary-grip-pill{width:10px;height:36px;background:var(--highlight-subtle);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--highlight-soft);border-radius:5px;transition:background var(--transition-fast),border-color var(--transition-fast)}.boundary-grip:after{content:"";width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:5px solid var(--overlay-subtle);transition:border-color var(--transition-fast)}.boundary-grip-zone:hover .boundary-grip.visible:before{border-right-color:var(--overlay-medium)}.boundary-grip-zone:hover .boundary-grip.visible .boundary-grip-pill{background:var(--highlight-soft);border-color:var(--overlay-subtle)}.boundary-grip-zone:hover .boundary-grip.visible:after{border-left-color:var(--overlay-medium)}.boundary-grip.active:before{border-right-color:var(--overlay-heavy)}.boundary-grip.active .boundary-grip-pill{background:var(--overlay-subtle);border-color:var(--overlay-subtle)}.boundary-grip.active:after{border-left-color:var(--overlay-heavy)}.boundary-grip--size-2 .boundary-grip-pill{width:12px;height:44px}.boundary-grip--size-2:before{border-top-width:5px;border-bottom-width:5px;border-right-width:6px}.boundary-grip--size-2:after{border-top-width:5px;border-bottom-width:5px;border-left-width:6px}@media(max-height:640px)and (orientation:landscape){.boundary-grip-pill{width:8px;height:22px}.boundary-grip:before{border-top-width:3px;border-bottom-width:3px;border-right-width:4px}.boundary-grip:after{border-top-width:3px;border-bottom-width:3px;border-left-width:4px}.boundary-grip{gap:2px}}@media(prefers-reduced-motion:reduce){.boundary-grip,.boundary-grip:before,.boundary-grip:after,.boundary-grip-pill{transition:none}}.track{position:relative;background:var(--timeline-track-bg, var(--shadow-medium));border:var(--timeline-track-border, none);border-radius:6px;box-shadow:var( --timeline-track-shadow, inset 0 1px 3px var(--shadow-medium), inset 0 0 0 1px var(--shadow-subtle) );transition:height var(--transition-slow),opacity var(--transition-slow),transform var(--transition-slow);z-index:var(--timeline-track-z, 20);overflow:visible;transform-origin:top center}.track:after{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--timeline-track-gridlines-bg, none);pointer-events:none;z-index:1}.track:has(.track-item.selected),.track:has(.track-item:hover){z-index:var(--timeline-track-z-active, 25)}.track.hidden{height:0;opacity:0;pointer-events:none;transform:scaleY(0)}.track.animating-in{animation:trackSlideIn .35s ease-out forwards;animation-delay:.4s;opacity:0}@keyframes trackSlideIn{0%{opacity:0;transform:scaleY(.8) translateY(-4px)}to{opacity:1;transform:scaleY(1) translateY(0)}}.track+.track{margin-top:0;border-top-left-radius:0;border-top-right-radius:0;border-top:none;box-shadow:none}.track:has(+.track){border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom:none;box-shadow:none}@media(max-width:960px){.track{min-height:56px}}@media(max-width:600px){.track{min-height:50px}}@media(max-height:520px){.track{min-height:42px}}@media(max-height:640px)and (orientation:landscape){.track{min-height:34px;background:var(--surface-alt);box-shadow:none;border-radius:4px}.track+.track{margin-top:2px}}.zoom-minimap{position:absolute;top:0;left:0;right:0;height:24px;z-index:50;pointer-events:none;opacity:0;visibility:hidden}.zoom-minimap.is-visible{opacity:1;visibility:visible;pointer-events:auto;transition:opacity var(--transition-normal)}.zoom-minimap-bar{position:absolute;inset:0;background:var(--timeline-minimap-bar-bg, var(--bg-secondary));border:var(--timeline-minimap-bar-border, none);border-radius:6px;box-shadow:var(--timeline-minimap-bar-shadow, none);cursor:pointer;touch-action:none;overflow:hidden}.zoom-minimap-bar:before{content:"";position:absolute;inset:0;background:var( --timeline-minimap-gridlines-bg, repeating-linear-gradient( 90deg, transparent, transparent calc(10% - .5px) , var(--highlight-ghost) calc(10% - .5px) , var(--highlight-ghost) calc(10% + .5px) , transparent calc(10% + .5px) ) );pointer-events:none}.zoom-minimap-tracks{position:absolute;inset:0;display:flex;flex-direction:column;z-index:1}.zoom-minimap-track{position:relative;flex:1;min-height:0}.zoom-minimap-segment{position:absolute;top:3px;bottom:3px;border-radius:2px;opacity:.85}.zoom-minimap-tracks.multi-track .zoom-minimap-segment{top:2px;bottom:2px;border-radius:1.5px}.zoom-minimap-viewport{position:absolute;top:0;bottom:0;background:var(--timeline-minimap-viewport-bg, var(--highlight-subtle));border:var(--timeline-minimap-viewport-border, 2px solid var(--overlay-heavy));border-radius:4px;box-shadow:var( --timeline-minimap-viewport-shadow, 0 0 8px var(--overlay-subtle), inset 0 0 0 1px var(--highlight-faint) );z-index:2}@media(max-width:600px){.zoom-minimap-segment{top:2px;bottom:2px}.zoom-minimap-tracks.multi-track .zoom-minimap-segment{top:1px;bottom:1px}}.zoom-minimap-playhead{position:absolute;top:0;bottom:0;transform:translate(-50%);pointer-events:none;z-index:5}.zoom-minimap-playhead-line{width:1.5px;height:100%;background:var(--timeline-minimap-playhead, var(--text-primary))}@media(prefers-reduced-motion:reduce){.zoom-minimap{transition:opacity var(--transition-fast);transform:none}.zoom-minimap.is-visible{transform:none}}.context-menu{position:fixed;background:var(--bg-secondary);border:1px solid var(--highlight-faint);border-radius:8px;padding:8px;z-index:10000;min-width:160px;box-shadow:0 4px 12px var(--shadow-medium)}.context-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;background:transparent;border:none;color:var(--text-primary);font-size:var(--text-sm);cursor:pointer;border-radius:4px;transition:background var(--transition-fast);text-align:left}.context-menu-item:hover,.context-menu-item.active{background:var(--highlight-ghost)}.context-menu-item.disabled,.context-menu-item.disabled:hover{opacity:.4;cursor:not-allowed;background:transparent}.context-menu-item-danger:hover{background:var(--danger-subtle);color:var(--danger-light)}.context-menu-icon{width:20px;text-align:center;flex-shrink:0}.context-menu-divider{height:1px;background:var(--highlight-faint);margin:8px 0}.context-menu-label{padding:4px 8px;font-size:var(--text-xs);color:var(--text-tertiary);font-weight:500}.context-menu-color{width:14px;height:14px;border-radius:3px;flex-shrink:0}.context-menu-overlay{position:fixed;inset:0;background:var(--shadow-heavy);z-index:9999;animation:contextMenuOverlayFadeIn .2s ease}@keyframes contextMenuOverlayFadeIn{0%{opacity:0}to{opacity:1}}.context-menu.mobile{position:fixed;inset:auto 0 0;min-width:100%;border-radius:20px 20px 0 0;padding:8px 8px calc(var(--safe-area-bottom) + 16px) 8px;animation:contextMenuSlideUp .25s cubic-bezier(.4,0,.2,1)}@keyframes contextMenuSlideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.context-menu-drag-handle{width:36px;height:4px;background:var(--highlight-soft);border-radius:2px;margin:8px auto 16px}.context-menu.mobile .context-menu-item{padding:16px;min-height:56px;font-size:16px;gap:14px;border-radius:10px}.context-menu.mobile .context-menu-icon{width:24px;font-size:18px}.context-menu.mobile .context-menu-color{width:18px;height:18px;border-radius:4px}.context-menu.mobile .context-menu-divider{margin:12px 0}.context-menu.mobile .context-menu-label{padding:8px 16px;font-size:var(--text-sm)}[data-theme=warm] .context-menu{background:var(--surface);border-color:var(--shadow-subtle);box-shadow:0 4px 12px var(--shadow-soft)}[data-theme=warm] .context-menu-item{color:var(--text-primary)}[data-theme=warm] .context-menu-item:hover,[data-theme=warm] .context-menu-item.active{background:var(--shadow-ghost)}[data-theme=warm] .context-menu-item.disabled,[data-theme=warm] .context-menu-item.disabled:hover{opacity:.4;background:transparent}[data-theme=warm] .context-menu-item-danger:hover{background:var(--danger-subtle);color:var(--danger)}[data-theme=warm] .context-menu-divider{background:var(--shadow-subtle)}[data-theme=warm] .context-menu-label{color:var(--text-tertiary)}[data-theme=warm] .context-menu-overlay{background:var(--shadow-medium)}[data-theme=warm] .context-menu-drag-handle{background:var(--shadow-soft)}:root{--teal: var(--icon-recap);--teal-border: var(--icon-recap-border);--orange: var(--primary);--orange-border: var(--primary-border)}.drag-hint{position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:8px;animation:pulse 2s ease-in-out infinite;z-index:100;pointer-events:none}.drag-hint-left{right:100%;margin-right:12px}.drag-hint-right{left:100%;margin-left:12px}.drag-hint-text{background:var(--bg-secondary);padding:6px 12px;border-radius:8px;font-size:var(--text-xs);font-weight:600;color:#fff;white-space:nowrap;border:1px solid;box-shadow:0 4px 12px var(--shadow-heavy)}.drag-hint-arrow{width:0;height:0;border-style:solid}.drag-hint-arrow-left{border-width:6px 6px 6px 0;border-color:transparent}.drag-hint-arrow-right{border-width:6px 0 6px 6px;border-color:transparent}@keyframes pulse{0%,to{opacity:1;transform:translateY(-50%) scale(1)}50%{opacity:.7;transform:translateY(-50%) scale(.98)}}.fortress-layout{--fortress-header-height-base: auto;--fortress-video-min-height-base: 180px;--fortress-timeline-height-base: 80px;--fortress-buttons-height-base: auto;--fortress-header-height: var(--fortress-header-height-base);--fortress-video-min-height: var(--fortress-video-min-height-base);--fortress-timeline-height: var(--fortress-timeline-height-base);--fortress-buttons-height: var(--fortress-buttons-height-base);--fortress-gap: 8px;--fortress-padding: 16px 20px;--fortress-content-max-width: 1400px}.fortress-layout{height:100vh;height:100dvh;width:100%;display:flex;flex-direction:column;overflow:hidden;background:var(--onboarding-bg, var(--bg-primary));color:var(--text-primary, #e7edf7);box-sizing:border-box;padding-top:var(--safe-area-top, 0px);padding-bottom:var(--safe-area-bottom, 0px)}body.capacitor-native .fortress-layout{padding-top:var(--safe-area-top);padding-bottom:var(--safe-area-bottom)}.fortress-header{flex-shrink:0;height:var(--fortress-header-height);padding:16px 24px;border-bottom:1px solid var(--onboarding-header-border, var(--highlight-ghost));background:var(--onboarding-header-bg, linear-gradient(180deg, rgba(34, 36, 48, .75) 0%, rgba(18, 19, 28, .92) 100%));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:var(--onboarding-header-shadow, none);transition:background var(--transition-normal),box-shadow var(--transition-normal)}@media(min-width:960px){.fortress-header{display:flex;align-items:center;height:auto;min-height:50px;padding:0 28px;background:#fffffff7;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid rgba(0,0,0,.06);box-shadow:0 1px 3px #00000008;color:#1e1e2e}.fortress-header-content{display:flex;align-items:center;width:100%}}body.capacitor-native .fortress-header{box-sizing:border-box}.fortress-header-content{width:100%}.fortress-header--hidden{display:none}.fortress-content{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.fortress-content-inner{width:100%;margin:0 auto;display:flex;flex-direction:column;flex:1;min-height:0}.fortress-slot-top{flex-shrink:0}.fortress-slot-top:empty{display:none}.fortress-video{flex:1 1 auto;min-height:var(--fortress-video-min-height);display:flex;align-items:center;justify-content:center;position:relative;transition:flex-basis var(--transition-slow),height var(--transition-slow)}.fortress-slot-below-video{flex-shrink:0}.fortress-slot-below-video:empty{display:none}.fortress-below-video-stack{display:flex;flex-direction:column;gap:var(--fortress-gap)}@media(max-width:600px){.fortress-below-video-stack{background:var(--surface);border-radius:14px;border:1px solid var(--border);box-shadow:0 2px 8px #0000000f,0 1px 2px #0000000a,inset 0 1px 0 var(--highlight-ghost, rgba(255, 255, 255, .06));padding:12px;gap:0;animation:mobileActionDockAppear .35s cubic-bezier(.34,1.56,.64,1)}.fortress-below-video-stack .instruction-bar{background:transparent;border:none;box-shadow:none;padding:8px 4px;border-radius:8px;margin:0;transition:background var(--transition-fast)}.fortress-below-video-stack .instruction-bar:hover{background:var(--highlight-ghost, rgba(255, 255, 255, .04))}.fortress-below-video-stack .instruction-bar-icon{width:24px;height:24px;border-radius:6px}.fortress-below-video-stack .instruction-bar-icon svg{width:13px;height:13px}.fortress-below-video-stack .instruction-bar-text{font-size:var(--text-sm);line-height:1.4}.fortress-below-video-stack .floating-selection-bar{margin-top:10px;border-top:1px solid var(--border);padding-top:10px;border-radius:0;border-left:none;border-right:none;border-bottom:none;box-shadow:none;background:transparent}.fortress-below-video-stack .floating-selection-bar.is-visible{box-shadow:none}.fortress-below-video-stack:has(.floating-selection-bar.is-visible){box-shadow:0 4px 16px #00000014,0 1px 3px #0000000a,inset 0 1px 0 var(--highlight-ghost, rgba(255, 255, 255, .06))}@keyframes mobileActionDockAppear{0%{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}}.fortress-timeline{flex-shrink:0;min-height:var(--fortress-timeline-height);transition:min-height var(--transition-slow),opacity var(--transition-slow),margin var(--transition-slow)}.fortress-timeline--hidden{min-height:0;height:0;opacity:0;margin:0;overflow:hidden;pointer-events:none}.fortress-timeline--animating{transition:min-height var(--transition-slow),height var(--transition-slow),opacity var(--transition-slow)}.fortress-buttons{flex-shrink:0;min-height:var(--fortress-buttons-height);height:auto;display:flex;align-items:center;justify-content:center;overflow:hidden;width:100%}.fortress-buttons--hidden{display:none}.fortress-buttons--flexible{flex-shrink:1;min-height:36px;overflow:hidden}@media(max-height:760px){.fortress-layout{--fortress-video-min-height: min(var(--fortress-video-min-height-base, 160px), 160px);--fortress-timeline-height: min(var(--fortress-timeline-height-base, 70px), 70px);--fortress-gap: 8px}.fortress-header{padding:14px 20px}}@media(max-height:600px){.fortress-layout{--fortress-video-min-height: min(var(--fortress-video-min-height-base, 140px), 140px);--fortress-timeline-height: min(var(--fortress-timeline-height-base, 64px), 64px);--fortress-gap: 6px;--fortress-padding: 10px 14px}.fortress-header{padding:12px 16px}}@media(max-width:960px){.fortress-layout{height:100svh;height:100dvh;--fortress-content-max-width: 100%;--fortress-gap: clamp(8px, 1vh, 14px);--fortress-padding: clamp(10px, 2vh, 16px);--fortress-video-min-height: min( var(--fortress-video-min-height-base, 320px), clamp(160px, 48vh, 320px) );--fortress-timeline-height: min( var(--fortress-timeline-height-base, 120px), clamp(78px, 18vh, 112px) );--fortress-buttons-height: clamp(56px, 14vh, var(--fortress-buttons-height-base, 84px))}.fortress-header{padding:clamp(10px,2vh,14px) clamp(14px,4vw,20px);border-bottom:1px solid var(--highlight-ghost)}.fortress-content{padding:var(--fortress-padding)}.fortress-buttons{padding:2px 4px 0}}@media(max-width:600px){.fortress-layout{--fortress-gap: 8px;--fortress-padding: 8px 10px;--fortress-video-min-height: min( var(--fortress-video-min-height-base, 240px), clamp(140px, 52vh, 240px) );--fortress-timeline-height: min( var(--fortress-timeline-height-base, 112px), clamp(70px, 22vh, 112px) );--fortress-buttons-height: clamp(52px, 18vh, var(--fortress-buttons-height-base, 76px))}.fortress-header,.fortress-content{padding:8px 10px}}@media(max-height:520px){.fortress-layout{--fortress-gap: 6px;--fortress-padding: 6px 8px;--fortress-video-min-height: min(var(--fortress-video-min-height-base, 120px), 120px);--fortress-timeline-height: min(var(--fortress-timeline-height-base, 62px), 62px);--fortress-buttons-height: clamp(48px, 18vh, var(--fortress-buttons-height-base, 54px))}.fortress-header,.fortress-content{padding:6px 8px}}@media(max-height:640px)and (orientation:landscape){.fortress-layout{height:100dvh;min-height:unset;--fortress-gap: 6px;--fortress-padding: 8px 10px;--fortress-video-min-height: min(var(--fortress-video-min-height-base, 160px), 150px);--fortress-timeline-height: min(var(--fortress-timeline-height-base, 100px), 90px);--fortress-buttons-height: auto}.fortress-content{overflow:hidden;padding:var(--fortress-padding)}.fortress-content-inner{gap:var(--fortress-gap);padding-bottom:2px}.fortress-header{padding:8px 10px}}@media(max-height:520px)and (orientation:landscape){.fortress-layout{--fortress-gap: 4px;--fortress-padding: 6px 8px;--fortress-video-min-height: min(var(--fortress-video-min-height-base, 120px), 110px);--fortress-timeline-height: min(var(--fortress-timeline-height-base, 80px), 76px);--fortress-buttons-height: auto}.fortress-header{padding:6px 8px}}@media(max-height:640px)and (orientation:landscape){.fortress-header{height:auto;min-height:48px;max-height:52px;padding:0 12px;display:flex;align-items:center}.fortress-header-content{width:100%;height:100%;display:flex;align-items:center}}.fortress-layout--debug .fortress-header{outline:2px solid red}.fortress-layout--debug .fortress-slot-top{outline:2px solid orange}.fortress-layout--debug .fortress-video{outline:2px solid green}.fortress-layout--debug .fortress-slot-below-video{outline:2px solid yellow}.fortress-layout--debug .fortress-timeline{outline:2px solid blue}.fortress-layout--debug .fortress-buttons{outline:2px solid purple}@media(max-height:640px)and (orientation:landscape){.fortress-layout .onboarding-progress-bar,.fortress-layout [class*=progress-bar]{display:none}}.fortress-section--hidden{opacity:0;pointer-events:none}.fortress-section--animating{transition:opacity var(--fortress-anim-duration, .5s) cubic-bezier(.16,1,.3,1),transform var(--fortress-anim-duration, .5s) cubic-bezier(.16,1,.3,1),filter var(--fortress-anim-duration, .5s) cubic-bezier(.16,1,.3,1)}.fortress-section--visible{opacity:1;pointer-events:auto}.fortress-header.fortress-section--hidden{transform:translateY(-12px);filter:blur(4px)}.fortress-header.fortress-section--visible{transform:translateY(0);filter:blur(0)}.fortress-video.fortress-section--hidden{transform:scale(.97);filter:blur(2px)}.fortress-video.fortress-section--visible{transform:scale(1);filter:blur(0)}.fortress-timeline.fortress-section--hidden{transform:translateY(20px)}.fortress-timeline.fortress-section--visible{transform:translateY(0)}.fortress-buttons.fortress-section--hidden{transform:translateY(16px)}.fortress-buttons.fortress-section--visible{transform:translateY(0)}.fortress-layout--staggered .fortress-header.fortress-section--animating{transition-delay:0ms}.fortress-layout--staggered .fortress-video.fortress-section--animating{transition-delay:.1s}.fortress-layout--staggered .fortress-timeline.fortress-section--animating{transition-delay:.2s}.fortress-layout--staggered .fortress-buttons.fortress-section--animating{transition-delay:.25s}.fortress-layout--video-first .fortress-video.fortress-section--animating{transition-delay:0ms;transition-duration:.6s}.fortress-layout--video-first .fortress-header.fortress-section--animating{transition-delay:.3s}.fortress-layout--video-first .fortress-timeline.fortress-section--animating{transition-delay:.4s}.fortress-layout--video-first .fortress-buttons.fortress-section--animating{transition-delay:.45s}.fortress-layout--dramatic-header .fortress-header.fortress-section--hidden{transform:translateY(-30px) scale(.95)}.fortress-layout--dramatic-header .fortress-header.fortress-section--animating{transition-delay:0ms;transition-duration:.7s}.fortress-layout--dramatic-header .fortress-video.fortress-section--animating{transition-delay:.2s}.fortress-layout--dramatic-header .fortress-timeline.fortress-section--animating{transition-delay:.35s}.fortress-layout--dramatic-header .fortress-buttons.fortress-section--animating{transition-delay:.4s}@media(prefers-reduced-motion:reduce){.fortress-section--animating{transition-duration:.01ms!important;transition-delay:0ms!important}.fortress-section--hidden{transform:none!important;filter:none!important}}:root{--ds-sheet-grip-width: 48px;--ds-sheet-grip-height: 6px;--ds-sheet-grip-radius: 3px;--ds-sheet-grip-color: var(--text-muted, rgb(160, 160, 160))}.sliding-sheet-backdrop{position:fixed;inset:0;background:var(--shadow-heavy);opacity:0;pointer-events:none;transition:opacity var(--transition-normal);z-index:10040}.sliding-sheet-backdrop.is-open{opacity:1;pointer-events:auto;animation:slidingSheetBackdropIn .2s ease}@keyframes slidingSheetBackdropIn{0%{opacity:0}to{opacity:1}}.sliding-sheet{position:fixed;left:0;right:0;bottom:0;background:var(--surface);color:var(--text-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top-left-radius:16px;border-top-right-radius:16px;padding:10px 16px calc(40px + var(--safe-area-bottom, 0px));box-shadow:0 -12px 30px var(--shadow-heavy);border-top:1px solid var(--border);transform:translateY(100%);transition:transform var(--transition-normal);z-index:10050}.sliding-sheet.is-open{transform:translateY(0);animation:slidingSheetIn .24s ease}@keyframes slidingSheetIn{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sliding-sheet-handle{display:flex;justify-content:center;padding:16px 0 12px}.sliding-sheet-handle-bar{width:var(--ds-sheet-grip-width, 48px);height:var(--ds-sheet-grip-height, 6px);border-radius:var(--ds-sheet-grip-radius, 3px);background:var(--ds-sheet-grip-color, var(--text-tertiary))}@keyframes dsSheetEnterUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.sliding-sheet-content{display:flex;flex-direction:column;gap:12px}.sliding-sheet-label{font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}@media(max-width:768px){.sliding-sheet{padding-bottom:var(--safe-area-bottom, 0px)}}.video-controls-overlay{position:absolute;bottom:12px;right:12px;display:flex;align-items:center;gap:6px;z-index:100;pointer-events:auto}.video-control-group{position:relative}.video-control-btn{display:flex;align-items:center;justify-content:center;gap:4px;width:var(--video-overlay-btn-size, 36px);height:var(--video-overlay-btn-size, 36px);min-width:var(--video-overlay-btn-size, 36px);min-height:var(--video-overlay-btn-size, 36px);padding:0;border:none;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:color var(--transition-fast)}.video-control-speed-label{font-size:var(--text-sm);font-weight:600;line-height:1;color:currentColor;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.video-control-icon{width:var(--video-overlay-btn-icon-size, 18px);height:var(--video-overlay-btn-icon-size, 18px);stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.video-control-menu{position:absolute;bottom:calc(100% + 6px);right:0;min-width:120px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:6px;box-shadow:0 8px 24px var(--shadow-soft),0 2px 6px var(--shadow-ghost);animation:menuSlideUp .15s ease-out;color:var(--text-primary)}.video-control-menu--portal{position:fixed;z-index:10000}@keyframes menuSlideUp{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.video-control-menu-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 12px;border:none;border-radius:8px;background:transparent;color:var(--text-primary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast);text-align:left}.video-control-menu-item:hover{background:var(--surface-hover)}.video-control-menu-item.active{background:var(--primary-subtle);color:var(--primary);font-weight:600}[data-theme=warm] .video-control-menu{background:var(--surface);border:1px solid var(--border);color:var(--text-primary);box-shadow:0 8px 24px var(--shadow-soft),0 2px 6px var(--shadow-ghost)}[data-theme=warm] .video-control-menu-item{color:var(--text-primary)}[data-theme=warm] .video-control-menu-item:hover{background:var(--surface-hover)}[data-theme=warm] .video-control-menu-item.active{background:var(--primary-subtle);color:var(--primary)}.video-control-check{width:14px;height:14px;stroke:currentColor;stroke-width:2.5;fill:none;stroke-linecap:round;stroke-linejoin:round;margin-left:6px}.video-control-volume-slider{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);width:56px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px 10px;box-shadow:0 8px 24px var(--shadow-soft),0 2px 6px var(--shadow-ghost);animation:volumeSliderSlideUp .15s ease-out;display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--text-primary)}@keyframes volumeSliderSlideUp{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.volume-slider-track{position:relative;width:28px;height:80px;display:flex;align-items:center;justify-content:center}.volume-slider-track:before{content:"";position:absolute;left:50%;transform:translate(-50%);width:6px;height:100%;background:var(--border);border-radius:999px}.volume-slider-fill{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:6px;background:linear-gradient(180deg,var(--primary) 0%,var(--primary-light) 100%);border-radius:999px;transition:height var(--transition-fast);pointer-events:none}.volume-slider-thumb{position:absolute;left:50%;width:16px;height:16px;border-radius:50%;background:var(--surface);border:2px solid var(--primary);transform:translate(-50%);box-shadow:0 2px 6px var(--shadow-soft);pointer-events:none}.volume-slider-input{position:absolute;width:80px;height:28px;margin:0;cursor:pointer;opacity:0;transform:rotate(-90deg);transform-origin:center center;touch-action:none}.video-controls-sheet-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.video-controls-sheet-option{height:42px;border-radius:10px;border:1px solid var(--border);background:var(--surface-alt, var(--highlight-ghost));color:var(--text-primary);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.video-controls-sheet-option.is-active{border-color:var(--primary);background:var(--primary-subtle);color:var(--primary)}.video-controls-sheet-volume{display:flex;flex-direction:column;gap:16px;padding-bottom:6px}.video-controls-sheet-volume-slider{width:100%}.video-controls-sheet-volume-track{position:relative;width:100%;height:10px;border-radius:999px;background:var(--border)}.video-controls-sheet-volume-fill{position:absolute;left:0;top:0;height:100%;border-radius:999px;background:var(--primary);pointer-events:none}.video-controls-sheet-volume-thumb{position:absolute;top:50%;width:22px;height:22px;border-radius:50%;background:var(--surface);border:2.5px solid var(--primary);transform:translate(-50%,-50%);box-shadow:0 2px 6px var(--shadow-soft);pointer-events:none}.video-controls-sheet-volume-input{position:absolute;inset:-12px 0;width:100%;height:32px;margin:0;cursor:pointer;opacity:0;touch-action:none}@media(max-width:768px){.video-controls-overlay{bottom:10px;right:10px;gap:5px}.video-control-speed-label{font-size:var(--text-xs)}.video-control-menu{min-width:90px}.video-control-menu-item{padding:5px 8px;font-size:var(--text-xs)}.volume-slider-track{height:70px}}@media(max-height:450px)and (orientation:landscape){.video-controls-overlay{bottom:12px;right:12px;gap:8px}.video-control-btn{height:42px;padding:0 14px;border-radius:10px;font-weight:700;box-shadow:0 2px 8px var(--shadow-medium)}.video-control-btn:hover{box-shadow:0 3px 10px var(--shadow-medium)}.video-control-speed-label{font-size:var(--text-sm);font-weight:700}.video-control-menu{min-width:100px}.video-control-menu-item{padding:8px 12px;font-size:var(--text-sm);font-weight:600}.volume-slider-track{height:80px}}.video-control-btn--help{font-weight:700;position:relative}.video-control-help-icon{font-size:var(--text-base);font-weight:700;line-height:1;color:currentColor}.video-control-pulse{position:absolute;top:-2px;right:-2px;width:10px;height:10px;border-radius:50%;background:var(--primary);animation:helpPulse 2s ease-in-out infinite;pointer-events:none}.video-control-pulse:after{content:"";position:absolute;inset:-3px;border-radius:50%;background:var(--primary);opacity:0;animation:helpPulseRing 2s ease-out infinite}@keyframes helpPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.9}}@keyframes helpPulseRing{0%{transform:scale(1);opacity:.4}to{transform:scale(2);opacity:0}}.video-play-button{position:absolute;z-index:10;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform var(--transition-fast),opacity var(--transition-fast);background:transparent;padding:0}.video-play-button--center{top:50%;left:50%;transform:translate(-50%,-50%)}.video-play-button--bottom{bottom:16px;left:50%;transform:translate(-50%)}.video-play-button--small{width:40px;height:40px}.video-play-button--small .video-play-button-icon{width:16px;height:16px}.video-play-button--medium{width:52px;height:52px}.video-play-button--medium .video-play-button-icon{width:20px;height:20px}.video-play-button--large{width:64px;height:64px}.video-play-button--large .video-play-button-icon{width:24px;height:24px}.video-play-button-bg{position:absolute;inset:0;border-radius:50%;background:var(--play-btn-bg, rgba(0, 0, 0, .55));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.15);box-shadow:0 4px 16px #0000004d;transition:all var(--transition-fast)}.video-play-button:hover .video-play-button-bg{background:var(--play-btn-bg-hover, rgba(0, 0, 0, .7));border-color:#ffffff40;transform:scale(1.08);box-shadow:var(--play-btn-glow, 0 0 0 3px rgba(255, 255, 255, .1)),0 8px 24px #0006}.video-play-button:active .video-play-button-bg{transform:scale(.95)}.video-play-button.is-playing{opacity:0;pointer-events:none;transition:opacity var(--transition-fast)}.video-play-button.is-playing .video-play-button-icon{opacity:0}.video-play-button-icon{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;color:#fff;transition:transform var(--transition-fast)}.video-play-button-icon svg{width:100%;height:100%}.video-play-button.is-paused .video-play-button-icon{margin-left:2px}.video-play-button:hover .video-play-button-icon{transform:scale(1.1)}@media(max-width:600px){.video-play-button--large{width:56px;height:56px}.video-play-button--large .video-play-button-icon{width:22px;height:22px}.video-play-button--medium{width:48px;height:48px}.video-play-button--medium .video-play-button-icon{width:18px;height:18px}}@media(max-height:640px)and (orientation:landscape){.video-play-button--large{width:48px;height:48px}.video-play-button--large .video-play-button-icon{width:20px;height:20px}.video-play-button--bottom{bottom:8px}}.double-tap-seek-overlay{position:absolute;inset:0;pointer-events:none;z-index:10;overflow:hidden;-webkit-user-select:none;user-select:none}.seek-ripple{position:absolute;top:0;bottom:0;width:50%;display:flex;align-items:center;justify-content:center;overflow:hidden}.seek-ripple-circle{position:absolute;width:120px;height:120px;border-radius:50%;background:var(--highlight-soft);transform:scale(0);animation:seek-ripple-expand .5s ease-out forwards}.seek-ripple-circle-delayed{animation-delay:.1s;opacity:.6}@keyframes seek-ripple-expand{0%{transform:scale(0);opacity:.8}to{transform:scale(2.5);opacity:0}}@keyframes seek-ripple-fade{0%{opacity:1}to{opacity:0}}.seek-indicator{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:4px;color:#fff;text-shadow:0 1px 3px var(--shadow-heavy);animation:seek-indicator-pop .6s ease-out forwards}.seek-indicator-arrows{display:flex;align-items:center;gap:0}.seek-arrow{width:28px;height:28px;opacity:0;animation:seek-arrow-pop .4s ease-out forwards;filter:drop-shadow(0 1px 2px var(--shadow-medium))}.seek-arrow-delayed{animation-delay:.08s}.seek-indicator-seconds{font-size:var(--text-sm);font-weight:600;letter-spacing:.02em;white-space:nowrap;opacity:0;animation:seek-text-fade .5s ease-out .1s forwards;background:var(--shadow-heavy);padding:4px 10px;border-radius:12px}@keyframes seek-indicator-pop{0%{transform:translate(-50%,-50%) scale(.8);opacity:0}20%{transform:translate(-50%,-50%) scale(1.05);opacity:1}40%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(-50%,-50%) scale(1);opacity:0}}@keyframes seek-arrow-pop{0%{opacity:0;transform:scale(.5)}50%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@keyframes seek-text-fade{0%{opacity:0;transform:translateY(4px)}30%{opacity:1;transform:translateY(0)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.seek-ripple-circle{width:80px;height:80px}.seek-arrow{width:22px;height:22px}.seek-indicator-seconds{font-size:var(--text-xs);padding:3px 8px}}.onboarding-video-player{position:relative;width:100%;aspect-ratio:16 / 9;background:var(--onboarding-letterbox-color, var(--letterbox-color, var(--surface-alt)));overflow:hidden;display:flex;align-items:center;justify-content:center;box-shadow:var(--video-container-shadow, var(--shadow-card));transition:box-shadow var(--transition-normal),border-color var(--transition-normal)}.onboarding-video-player:hover{box-shadow:var(--shadow-card-hover)}.fortress-video .onboarding-video-player{max-height:100%;height:100%;max-width:100%;flex-shrink:1}:not(.fortress-video)>.onboarding-video-player{max-height:52vh;flex-shrink:0}.onboarding-video-container{width:100%;height:100%;position:relative;background:var( --video-letterbox-gradient, linear-gradient( 180deg, var(--onboarding-letterbox-color, var(--letterbox-color)) 0%, var(--onboarding-letterbox-color-alt, var(--surface-alt)) 100% ) )}.onboarding-video-feedback-layer{position:absolute;pointer-events:none}.onboarding-video{width:100%;height:100%;object-fit:contain}.onboarding-video-visible{display:block;opacity:1;pointer-events:auto;transition:opacity var(--transition-normal)}.onboarding-video-hidden{display:block;opacity:0;pointer-events:none;transition:opacity var(--transition-fast)}.onboarding-video-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-muted);background:var( --video-letterbox-gradient, linear-gradient( 180deg, var(--onboarding-letterbox-color, var(--letterbox-color)) 0%, var(--onboarding-letterbox-color-alt, var(--surface-alt)) 100% ) )}.onboarding-video-placeholder-icon{font-size:48px;margin-bottom:12px;opacity:.5}.onboarding-video-placeholder-text{font-size:var(--text-sm);font-weight:500}.onboarding-play-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:10;pointer-events:none}.onboarding-play-btn{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background:var(--play-btn-bg, rgba(0, 0, 0, .6));border:none;cursor:pointer;pointer-events:auto;color:#fff;transition:all var(--transition-fast);box-shadow:var(--play-btn-shadow, 0 4px 20px rgba(0, 0, 0, .3));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.onboarding-play-btn:hover{background:var(--play-btn-bg-hover, rgba(0, 0, 0, .75));transform:scale(1.05);box-shadow:var(--play-btn-glow, 0 0 0 4px rgba(255, 255, 255, .15)),0 8px 32px #0006}.onboarding-play-btn:active{transform:scale(.98)}.onboarding-play-btn svg{width:28px;height:28px;margin-left:3px}.onboarding-play-btn--sm{width:56px;height:56px}.onboarding-play-btn--sm svg{width:22px;height:22px;margin-left:2px}@media(max-width:600px){.onboarding-video-player{border-radius:10px}.onboarding-play-btn{width:60px;height:60px}.onboarding-play-btn svg{width:24px;height:24px}}@media(max-height:640px)and (orientation:landscape){.onboarding-video-player{border-radius:8px}.onboarding-play-btn{width:48px;height:48px}.onboarding-play-btn svg{width:20px;height:20px}}.offline-banner{padding:6px 10px;border-radius:8px;font-size:var(--text-xs);color:#e2e8f0d9;background:#0f172a99;border:1px solid rgba(148,163,184,.35);max-width:520px}.sync-status{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;font-size:var(--text-xs);letter-spacing:.02em;background:var(--surface);border:1px solid var(--highlight-ghost);color:var(--text-primary);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:opacity var(--transition-normal)}.sync-status--complete{color:var(--text-primary);background:var(--surface);border-color:var(--highlight-subtle)}.sync-status--error{color:var(--danger-muted);border-color:var(--danger-glow)}.sync-status-text{white-space:nowrap}.sync-status-action{border:none;background:var(--danger-subtle);color:var(--danger-light);font-size:var(--text-xs);padding:4px 8px;border-radius:999px;cursor:pointer}.sync-status-action:hover{background:var(--danger-subtle)}.onboarding-status-overlays{position:absolute;left:10px;right:10px;top:10px;z-index:60;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;pointer-events:none}.onboarding-status-overlays-left,.onboarding-status-overlays-right{display:flex;flex-direction:column;gap:8px;max-width:min(520px,calc(100% - 20px))}.onboarding-status-overlays-left>*,.onboarding-status-overlays-right>*{pointer-events:auto}@media(max-width:600px){.onboarding-status-overlays{left:8px;right:8px;top:8px}}.sync-error-modal{position:fixed;inset:0;background:var(--overlay-dark);display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.sync-error-card{max-width:600px;width:100%;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px;box-shadow:0 20px 60px var(--shadow-heavy);color:var(--text-primary)}.sync-error-title{font-size:18px;font-weight:600;margin-bottom:8px}.sync-error-message{font-size:var(--text-sm);margin-bottom:6px;color:var(--text-primary)}.sync-error-detail{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:16px}.sync-error-detail--warn{color:var(--danger-light)}.sync-error-actions{display:flex;gap:12px;flex-wrap:wrap}.sync-error-btn{border:none;border-radius:10px;padding:10px 16px;font-size:var(--text-sm);cursor:pointer;transition:transform var(--transition-fast),background var(--transition-fast)}.sync-error-btn:disabled{cursor:default;opacity:.7}.sync-error-btn.primary{background:var(--primary-alt);color:#fff}.sync-error-btn.secondary{background:var(--highlight-subtle);color:var(--text-primary)}.sync-error-btn:hover:not(:disabled){transform:translateY(-1px)}.onboarding-review-action-bar{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;flex-shrink:0;width:100%;overflow:hidden;flex-wrap:wrap;row-gap:8px}.onboarding-review-escape-group,.onboarding-review-add-group{display:flex;align-items:center;gap:8px}.onboarding-review-action-bar .btn{flex:0 0 auto;min-width:120px;max-width:160px;height:36px;padding:0 20px;font-size:var(--text-sm);font-weight:600;border-radius:8px;margin-left:auto}.onboarding-review-inline-fields{display:flex;align-items:center;gap:16px;margin-left:8px;padding-left:12px;border-left:1px solid var(--highlight-faint);flex-shrink:1;min-width:0;overflow:hidden}.onboarding-review-field-group{display:flex;align-items:center;gap:8px;flex-shrink:1;min-width:0}.onboarding-review-field-label{font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.onboarding-review-field-input{padding:6px 10px;border-radius:6px;font-size:16px;font-weight:500;border:1px solid var(--highlight-faint);background:var(--highlight-ghost);color:var(--text-primary);min-width:80px;max-width:160px;width:120px;flex-shrink:1;transition:all var(--transition-fast)}.onboarding-review-field-input:focus{outline:none;border-color:var(--primary-glow);background:var(--highlight-ghost)}.onboarding-review-field-input::placeholder{color:var(--text-tertiary)}.onboarding-review-inline-fields .custom-select-trigger{min-width:80px;max-width:140px;flex-shrink:1}@media(max-width:960px){.onboarding-review-action-bar{gap:8px;padding:10px 12px}.onboarding-review-escape-group{gap:6px}.onboarding-review-escape-group .btn{padding:0 12px;height:34px;font-size:var(--text-sm)}.onboarding-review-add-group{gap:6px}.onboarding-review-add-group .btn{padding:0 12px;height:34px;font-size:var(--text-sm)}.onboarding-review-inline-fields{gap:10px;padding-left:10px;margin-left:6px}.onboarding-review-field-input{min-width:70px;max-width:120px;width:100px;font-size:16px;padding:5px 8px}.onboarding-review-inline-fields .custom-select-trigger{min-width:70px;max-width:110px}.onboarding-review-action-bar .btn{min-width:100px;max-width:140px;height:34px;font-size:var(--text-sm)}}@media(max-width:768px){.onboarding-review-inline-fields{gap:8px;padding-left:8px;margin-left:4px}.onboarding-review-field-label{font-size:var(--text-xs)}.onboarding-review-field-input{min-width:60px;max-width:100px;width:80px;font-size:16px;padding:4px 6px}.onboarding-review-inline-fields .custom-select-trigger{min-width:60px;max-width:100px;font-size:var(--text-sm);padding:4px 8px}}@media(max-width:600px){.onboarding-review-action-bar{gap:8px;padding:10px;flex-wrap:wrap;row-gap:10px}.onboarding-review-escape-group{display:none}.onboarding-review-add-group{gap:10px;margin-left:0;width:100%}.onboarding-review-add-group .btn{height:48px;padding:0 20px;font-size:var(--text-base);font-weight:600;border-radius:12px;flex:1;background:var(--highlight-ghost);border:1px solid var(--highlight-subtle)}}@media(max-height:520px){.onboarding-review-action-bar{padding:8px 10px;gap:6px}.onboarding-review-escape-group .btn{height:32px;padding:0 10px;font-size:var(--text-sm)}.onboarding-review-action-bar .btn{height:32px;font-size:var(--text-sm)}}@media(min-width:600px){.onboarding-review-action-bar{display:none}}@media(max-height:640px)and (orientation:landscape){.onboarding-review-action-bar,.onboarding-review-inline-fields{display:none}}.review-inline-sheet-fields{display:flex;flex-direction:column;gap:16px;margin-top:8px}.review-inline-sheet-field{display:flex;flex-direction:column;gap:6px}.review-inline-sheet-label{font-size:var(--text-xs);font-weight:600;color:var(--overlay-medium);text-transform:uppercase;letter-spacing:.05em}.review-inline-sheet-input{width:100%;padding:10px 12px;border-radius:8px;font-size:var(--text-sm);font-weight:500;font-family:inherit;border:1px solid var(--highlight-subtle);background:var(--highlight-ghost);color:var(--text-primary);transition:all var(--transition-fast)}.review-inline-sheet-input:focus{outline:none;border-color:var(--primary-glow);background:var(--highlight-ghost);box-shadow:0 0 0 3px var(--primary-subtle)}.review-inline-sheet-input::placeholder{color:var(--overlay-subtle)}.review-inline-sheet-select{width:100%}.review-inline-sheet-select .custom-select-trigger{padding:10px 12px;border-radius:8px;font-size:var(--text-sm)}.onboarding-header{padding:16px 24px;border-bottom:1px solid var(--onboarding-header-border, var(--border));background:var(--onboarding-header-bg, var(--surface));flex-shrink:0;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:var(--onboarding-header-shadow, none)}.onboarding-header-content{max-width:1400px;margin:0 auto}.onboarding-header-title{font-size:22px;font-weight:600;margin:0 0 8px;letter-spacing:-.01em;line-height:1.3;color:var(--text-primary)}.onboarding-header-subtitle{font-size:var(--text-base);color:var(--text-secondary);margin:0;line-height:1.5}.onboarding-header-subtitle strong{color:var(--text-primary);font-weight:600}@media(min-width:960px){.onboarding-header{padding:12px 28px}.onboarding-header-content{display:flex;align-items:center;gap:20px}.onboarding-header-title{font-size:17px;margin:0;white-space:nowrap;flex-shrink:0}.onboarding-header-subtitle{font-size:var(--text-sm);margin:0;flex:1;text-align:left}}@media(max-width:600px){.onboarding-header{padding:12px 14px}.onboarding-header-title{font-size:18px;margin-bottom:6px}.onboarding-header-subtitle{font-size:var(--text-sm)}}.question-prompt{position:relative;display:flex;flex-direction:column;gap:12px;padding:20px 24px 16px}.question-prompt-question-container{display:flex;align-items:center;justify-content:center;gap:12px}.question-prompt-question{font-size:22px;font-weight:500;line-height:1.4;color:var(--text-primary);letter-spacing:-.01em;margin:0}.question-prompt-help-btn{display:flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0;border-radius:50%;background:var(--help-btn-bg, var(--surface-alt));border:1px solid var(--help-btn-border, var(--border));color:var(--help-btn-color, var(--text-tertiary));cursor:pointer;transition:all var(--transition-fast);padding:0;opacity:.8}.question-prompt-help-btn:hover{opacity:1;background:var(--help-btn-hover-bg, var(--surface));border-color:var(--help-btn-hover-border, var(--border-hover));color:var(--help-btn-hover-color, var(--text-secondary));box-shadow:var(--help-btn-shadow, 0 2px 8px var(--shadow-subtle));transform:scale(1.05)}.question-prompt-help-btn:active{transform:scale(.95)}.question-prompt-help-icon{display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-sm);line-height:1;font-weight:700;color:currentColor}.question-prompt--centered{align-items:center;text-align:center}.question-prompt--compact{gap:8px;padding:12px 20px 10px}.question-prompt--animate{transition:opacity var(--transition-normal)}.question-prompt--fading{opacity:0!important;transition:opacity var(--transition-fast)!important}.question-prompt:not(.question-prompt--fading){transition:opacity var(--transition-normal) ease-in}.question-prompt--compact .question-prompt-question{font-size:18px}.question-prompt-highlight{background:var(--question-highlight-gradient, linear-gradient(135deg, var(--primary-light) 0%, var(--pink) 100%));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:600}.question-prompt-kbd{position:relative;display:inline-flex;align-items:center;padding:1px 8px;margin:0 2px;border:1px solid rgba(0,0,0,.13);border-radius:6px;font-family:inherit;font-size:.88em;font-weight:700;line-height:1.4;letter-spacing:.01em;box-shadow:0 1px 2px #0000000f,inset 0 -1px #0000001a;background:var(--question-highlight-gradient, linear-gradient(135deg, var(--primary-light) 0%, var(--pink) 100%));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.question-prompt-kbd:before{content:"";position:absolute;inset:0;background:#fff;border-radius:inherit;z-index:-1}.question-prompt-actions{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:4px}.question-prompt--compact .question-prompt-actions{gap:8px;margin-top:2px}.question-prompt-footer-link{background:none;border:none;color:var(--text-tertiary);font-size:var(--text-sm);font-weight:500;cursor:pointer;padding:8px 16px;margin-top:4px;transition:color var(--transition-normal);text-align:center}.question-prompt-footer-link:hover{color:var(--text-secondary)}.question-prompt-footer-link--hidden{visibility:hidden;pointer-events:none;min-height:1em}.question-prompt--centered .question-prompt-footer-link{align-self:center}.question-prompt-btn--help{width:44px;height:44px;min-width:44px;padding:0;border-radius:50%;flex-shrink:0;flex-grow:0}.question-prompt-separator{width:1px;height:20px;background:var(--border);margin:0 4px;flex-shrink:0;opacity:.5}@media(min-width:960px){.question-prompt{flex-direction:row;align-items:center;justify-content:space-between;padding:0;gap:20px;min-height:0;width:100%}.question-prompt-label{display:none}.question-prompt-question-container{flex:1;justify-content:flex-start;min-width:0;align-items:center;gap:10px}.question-prompt-question{font-size:17px;font-weight:500;line-height:1.5;text-align:left;color:#3a3a4a;letter-spacing:-.005em}.question-prompt-highlight{font-weight:600}.question-prompt-actions{margin-left:auto;margin-top:0;flex-shrink:0;gap:10px}.question-prompt-help-btn{display:flex;flex-shrink:0;width:20px;height:20px;margin-left:6px}.question-prompt-help-icon{font-size:var(--text-xs)}.question-prompt--centered{text-align:left}.question-prompt--centered .question-prompt-question-container{justify-content:flex-start}}@media(max-width:960px){.question-prompt{padding:16px 18px 12px;gap:10px}.question-prompt-label{font-size:var(--text-xs);padding:3px 10px}.question-prompt-question-container{gap:8px}.question-prompt-question{font-size:clamp(18px,4vw,21px);line-height:1.35;text-align:center}.question-prompt-actions{flex-wrap:wrap;gap:8px;margin-top:4px}.question-prompt-help-btn{width:24px;height:24px}.question-prompt-help-icon{font-size:var(--text-sm)}}@media(max-width:600px){.question-prompt{padding:12px 12px 10px;gap:8px}.question-prompt-label{font-size:var(--text-xs);padding:2px 8px}.question-prompt-question{font-size:clamp(16px,4.5vw,19px)}.question-prompt-actions{gap:6px}.question-prompt-help-btn{width:22px;height:22px}}@media(max-height:520px){.question-prompt{padding:8px 10px 6px;gap:6px}.question-prompt-label{font-size:var(--text-xs)}.question-prompt-question{font-size:clamp(14px,3.2vw,17px)}.question-prompt-actions{gap:6px}.question-prompt-help-btn{width:18px;height:18px}}@media(max-height:640px)and (orientation:landscape){.question-prompt{flex-direction:row;align-items:center;justify-content:space-between;padding:0 8px;gap:12px;height:100%;width:100%}.question-prompt-question-container,.question-prompt-escape-controls{display:none}.question-prompt-label{order:1;flex:0 1 auto;text-align:left;font-size:var(--text-xs);display:flex;align-items:center;gap:6px}.question-prompt-info-btn{display:inline-flex}.question-prompt-actions{order:2;display:flex;align-items:center;gap:8px;margin-top:0;flex-wrap:nowrap;margin-left:auto}.question-prompt--staggered .question-prompt-label,.question-prompt--staggered .question-prompt-actions{opacity:1;transform:none;pointer-events:auto}}.question-prompt-sheet-backdrop{position:fixed;inset:0;background:var(--overlay-dark);z-index:1000;opacity:0;pointer-events:none;transition:opacity var(--transition-normal)}.question-prompt-sheet-backdrop.is-open{opacity:1;pointer-events:auto}.question-prompt-sheet{position:fixed;bottom:0;left:0;right:0;background:var(--surface);border-top-left-radius:20px;border-top-right-radius:20px;z-index:1001;transform:translateY(100%);transition:transform var(--transition-slow) cubic-bezier(.32,.72,0,1);max-height:70vh;overflow-y:auto;box-shadow:0 -4px 32px var(--shadow-medium)}.question-prompt-sheet.is-open{transform:translateY(0)}.question-prompt-sheet-handle{display:flex;justify-content:center;padding:12px 0 8px}.question-prompt-sheet-handle-bar{width:40px;height:4px;background:var(--border);border-radius:2px}.question-prompt-sheet-content{padding:0 24px 28px}.question-prompt-sheet-label{font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px;padding:4px 10px;border-radius:100px;display:inline-block}.question-prompt-sheet-label--cyan{color:var(--icon-recap);background:var(--cyan-subtle)}.question-prompt-sheet-label--purple{color:var(--accent-purple);background:var(--accent-purple-subtle)}.question-prompt-sheet-label--orange{color:var(--primary);background:var(--primary-subtle)}.question-prompt-sheet-label--green{color:var(--success);background:var(--success-subtle)}.question-prompt-sheet-text{font-size:16px;line-height:1.5;color:var(--text-primary)}.question-prompt-sheet-text .question-prompt-highlight{background:var(--question-highlight-gradient, linear-gradient(135deg, var(--primary-light) 0%, var(--pink) 100%));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:600}.question-prompt--staggered .question-prompt-label{opacity:0;transform:translateY(-8px);transition:opacity .4s cubic-bezier(.16,1,.3,1),transform .4s cubic-bezier(.16,1,.3,1);pointer-events:none}.question-prompt--staggered .question-prompt-label.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.question-prompt--staggered .question-prompt-question-container{opacity:0;transform:translateY(8px);transition:opacity .5s cubic-bezier(.16,1,.3,1),transform .5s cubic-bezier(.16,1,.3,1);pointer-events:none}.question-prompt--staggered .question-prompt-question-container.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.question-prompt--staggered .question-prompt-actions{opacity:0;transform:translateY(10px);transition:opacity .4s cubic-bezier(.16,1,.3,1),transform .4s cubic-bezier(.16,1,.3,1);pointer-events:none}.question-prompt--staggered .question-prompt-actions.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.question-prompt-escape-controls{display:none}.question-prompt-escape-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;border-radius:6px;transition:all var(--transition-fast)}.question-prompt-escape-btn:hover{background:var(--interactive-hover-bg, var(--surface-hover));color:var(--text-secondary)}.question-prompt-escape-btn:disabled{opacity:.3;cursor:not-allowed}.question-prompt--inline-actions .question-prompt-actions{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}.question-prompt--inline-actions .btn{flex:0 0 auto;min-width:0}@keyframes buttonCascadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.question-prompt-actions--cascade-in .btn{opacity:0;animation:buttonCascadeIn .25s cubic-bezier(.16,1,.3,1) forwards}.question-prompt-actions--cascade-in .btn:nth-child(1){animation-delay:0ms}.question-prompt-actions--cascade-in .btn:nth-child(2){animation-delay:50ms}.question-prompt-actions--cascade-in .btn:nth-child(3){animation-delay:.1s}.question-prompt-actions--cascade-in .btn:nth-child(4){animation-delay:.15s}.question-prompt-actions--cascade-in .btn:nth-child(5){animation-delay:.2s}.fortress-floating-btn{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-secondary);font-size:18px;cursor:pointer;border-radius:8px;transition:background var(--transition-fast),color var(--transition-fast)}.fortress-floating-btn:hover{background:var(--interactive-hover-bg, var(--surface-hover));color:var(--text-primary)}.fortress-floating-btn:disabled{opacity:.25;cursor:not-allowed}.fortress-floating-btn--danger{color:var(--danger)}.fortress-floating-btn--danger:hover{background:var(--danger-subtle);color:var(--danger)}.fortress-floating-separator{background:var(--border)}@media(max-width:600px)and (orientation:portrait){.fortress-floating-controls--top-left,.fortress-floating-controls--bottom-left{display:flex;flex-direction:row;position:absolute;left:8px;z-index:50;align-items:center;gap:2px;padding:6px 6px 6px 8px;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 2px 8px var(--shadow-soft)}.fortress-floating-controls--top-left{top:8px}.fortress-floating-controls--bottom-left{bottom:10px}.fortress-floating-controls--top-left .fortress-floating-separator,.fortress-floating-controls--bottom-left .fortress-floating-separator{width:1px;height:18px;margin:0 4px;background:var(--border)}.fortress-floating-controls--vertical-top,.fortress-floating-controls--vertical-bottom{display:flex;flex-direction:column;position:absolute;left:8px;z-index:50;align-items:center;gap:2px;padding:8px 6px 6px;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 2px 8px var(--shadow-soft)}.fortress-floating-controls--vertical-top{top:8px}.fortress-floating-controls--vertical-bottom{bottom:10px}.fortress-floating-controls--vertical-top .fortress-floating-separator,.fortress-floating-controls--vertical-bottom .fortress-floating-separator{width:18px;height:1px;margin:4px 0;background:var(--border)}}@media(max-height:640px)and (orientation:landscape){.fortress-floating-controls{display:flex;flex-direction:row;position:absolute;top:8px;left:8px;z-index:50;align-items:center;gap:2px;padding:4px 4px 4px 6px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 2px 8px var(--shadow-soft)}.fortress-floating-btn{width:36px;height:36px;font-size:16px;border-radius:6px;color:var(--text-secondary)}.fortress-floating-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.fortress-floating-separator{width:1px;height:20px;margin:0 4px;background:var(--border)}}@media(max-width:600px){.inline-escape-controls{display:flex;align-items:center;gap:4px;padding:4px;background:var(--surface-alt);border:1px solid var(--border);border-radius:8px;width:100%;justify-content:center}.inline-escape-btn{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--text-secondary);font-size:18px;cursor:pointer;transition:all var(--transition-fast)}.inline-escape-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.inline-escape-btn:disabled{opacity:.25;cursor:not-allowed}.inline-escape-btn--danger{color:var(--danger);border-color:var(--danger-subtle)}.inline-escape-btn--danger:hover{background:var(--danger-subtle);color:var(--danger)}.inline-escape-hide-btn{width:36px;height:48px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-muted);font-size:16px;cursor:pointer;margin-left:auto;transition:color var(--transition-fast)}.inline-escape-hide-btn:hover{color:var(--text-secondary)}.inline-escape-tab{display:flex;align-items:center;justify-content:center;width:40px;height:48px;background:var(--surface-alt);border:1px solid var(--border);border-radius:10px;color:var(--text-muted);font-size:16px;cursor:pointer;transition:all var(--transition-fast)}.inline-escape-tab:hover{background:var(--surface-hover);color:var(--text-secondary)}}.adjust-hint-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#0c0e16b8,#080a10e6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1200;animation:adjustHintOverlayFade .18s ease-out;padding:20px}.adjust-hint-card{--adjust-hint-accent: var(--icon-recap);background:linear-gradient(180deg,#1e202cfa,#12141efc);border-radius:18px;padding:24px 26px 22px;width:min(420px,100%);color:var(--text-primary);text-align:left;border:1px solid var(--highlight-faint);box-shadow:0 20px 48px var(--shadow-heavy),0 0 0 1px var(--highlight-ghost),inset 0 1px 0 var(--highlight-ghost);animation:adjustHintCardRise .2s ease-out}.adjust-hint-card h2{margin:14px 0 8px;font-size:18px;font-weight:700;letter-spacing:-.01em}.adjust-hint-card p{margin:0 0 12px;font-size:var(--text-sm);color:var(--overlay-medium);line-height:1.6}.adjust-hint-card p strong{color:var(--overlay-heavy);font-weight:600}.adjust-hint-footnote{margin-bottom:16px;font-size:var(--text-sm);color:var(--overlay-subtle)}.adjust-hint-button{padding:11px 24px;border-radius:12px;border:1.5px solid var(--adjust-hint-accent);background:var(--icon-recap-subtle);color:var(--adjust-hint-accent);font-size:var(--text-sm);font-weight:700;cursor:pointer;box-shadow:0 4px 12px var(--icon-recap-subtle);transition:transform var(--transition-fast),box-shadow var(--transition-fast),filter var(--transition-fast)}.adjust-hint-button:hover{filter:brightness(1.05);box-shadow:0 6px 16px var(--icon-recap-border)}.adjust-hint-button:active{transform:scale(.97)}.adjust-hint-visual{display:flex;justify-content:center;align-items:center;margin-bottom:10px;gap:10px}.adjust-hint-arrow{width:0;height:0;flex-shrink:0;font-size:0}.adjust-hint-arrow.left{border-top:14px solid transparent;border-bottom:14px solid transparent;border-right:18px solid #fff;animation:adjustHintArrowLeft 2.5s ease-in-out infinite}.adjust-hint-arrow.right{border-top:14px solid transparent;border-bottom:14px solid transparent;border-left:18px solid #fff;animation:adjustHintArrowRight 2.5s ease-in-out infinite}.adjust-hint-track{position:relative;width:270px;height:56px;background:var(--shadow-medium);border-radius:8px;box-shadow:inset 0 1px 3px var(--shadow-medium),inset 0 0 0 1px var(--shadow-subtle);overflow:visible}.adjust-hint-selection{position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);animation:adjustHintBlockWidth 2.5s ease-in-out infinite;overflow:visible}.adjust-hint-fill{position:relative;width:100%;height:100%;background:var(--adjust-hint-accent);border-radius:8px;border:1px solid var(--shadow-soft);box-shadow:inset 0 1px 0 var(--highlight-subtle),inset 0 -1px 0 var(--shadow-subtle);display:flex;align-items:center;justify-content:center;padding:0 12px;box-sizing:border-box;overflow:hidden}.adjust-hint-fill:after{content:"Teaching Section";font-size:var(--text-xs);font-weight:600;color:var(--overlay-heavy);letter-spacing:.01em;text-shadow:0 1px 2px var(--shadow-medium);white-space:nowrap;display:block;width:100%;text-align:center}.adjust-hint-handle{position:absolute;top:50%;width:14px;height:44px;transform:translateY(-50%);background:var(--overlay-heavy);border-radius:7px;border:1px solid var(--shadow-subtle);box-shadow:0 2px 6px var(--shadow-soft),inset 0 1px 0 var(--overlay-medium);z-index:3}.adjust-hint-handle:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:2px;height:40%;background:var(--shadow-soft);border-radius:1px}.adjust-hint-handle.left{left:-7px}.adjust-hint-handle.right{right:-7px}@keyframes adjustHintOverlayFade{0%{opacity:0}to{opacity:1}}@keyframes adjustHintCardRise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes adjustHintBlockWidth{0%,to{width:190px}50%{width:250px}}@keyframes adjustHintArrowLeft{0%,to{transform:translate(0);opacity:.7}50%{transform:translate(-8px);opacity:1}}@keyframes adjustHintArrowRight{0%,to{transform:translate(0);opacity:.7}50%{transform:translate(8px);opacity:1}}@media(prefers-reduced-motion:reduce){.adjust-hint-overlay,.adjust-hint-card,.adjust-hint-selection,.adjust-hint-arrow{animation:none!important}}@media(max-width:480px){.adjust-hint-card{padding:20px 20px 22px}.adjust-hint-card h2{font-size:17px;margin:12px 0 8px}.adjust-hint-card p{font-size:var(--text-sm);margin-bottom:12px}.adjust-hint-footnote{font-size:var(--text-xs);margin-bottom:14px}.adjust-hint-button{padding:11px 24px;font-size:var(--text-sm);width:100%}.adjust-hint-visual{gap:8px}.adjust-hint-arrow.left{border-top:10px solid transparent;border-bottom:10px solid transparent;border-right:14px solid #fff}.adjust-hint-arrow.right{border-top:10px solid transparent;border-bottom:10px solid transparent;border-left:14px solid #fff}.adjust-hint-track{width:220px;height:52px}@keyframes adjustHintBlockWidth{0%,to{width:150px}50%{width:210px}}.adjust-hint-handle{width:12px;height:38px;border-radius:6px}.adjust-hint-handle.left{left:-6px}.adjust-hint-handle.right{right:-6px}.adjust-hint-fill:after{font-size:var(--text-xs)}}@media(max-height:500px)and (orientation:landscape){.adjust-hint-card{padding:16px 24px 18px;max-width:380px}.adjust-hint-card h2{font-size:16px;margin:10px 0 6px}.adjust-hint-card p{font-size:var(--text-sm);margin-bottom:10px}.adjust-hint-visual{margin-bottom:4px;gap:8px}.adjust-hint-arrow.left{border-top:10px solid transparent;border-bottom:10px solid transparent;border-right:12px solid #fff}.adjust-hint-arrow.right{border-top:10px solid transparent;border-bottom:10px solid transparent;border-left:12px solid #fff}.adjust-hint-track{width:200px;height:44px}@keyframes adjustHintBlockWidth{0%,to{width:90px}50%{width:160px}}.adjust-hint-handle{width:10px;height:32px;border-radius:5px}.adjust-hint-handle.left{left:-5px}.adjust-hint-handle.right{right:-5px}.adjust-hint-fill:after{font-size:var(--text-xs)}.adjust-hint-footnote{font-size:var(--text-xs);margin-bottom:12px}.adjust-hint-button{padding:10px 22px;font-size:var(--text-sm)}}.help-modal-overlay{position:fixed;inset:0;background:var(--overlay-dark);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;animation:helpModalFadeIn .2s ease-out}@keyframes helpModalFadeIn{0%{opacity:0}to{opacity:1}}.help-modal{background:var(--bg-primary);border-radius:20px;max-width:520px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 24px 80px var(--shadow-soft),0 0 0 1px var(--shadow-ghost);animation:helpModalSlideUp .3s cubic-bezier(.34,1.56,.64,1);overflow:hidden}@keyframes helpModalSlideUp{0%{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.help-modal-header{padding:24px 24px 20px;display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid var(--shadow-ghost)}.help-modal-header-content{display:flex;flex-direction:column;gap:6px}.help-modal-badge{display:inline-flex;align-items:center;padding:4px 10px;background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary) 100%);color:#fff;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-radius:6px;width:fit-content}.help-modal-title{font-size:24px;font-weight:700;color:var(--text-primary);margin:0;letter-spacing:-.02em}.help-modal-close{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);border:1px solid var(--shadow-subtle);background:var(--shadow-ghost);color:var(--text-secondary);flex-shrink:0}.help-modal-close:hover{background:var(--shadow-ghost);color:var(--text-primary)}.help-modal-close svg{width:18px;height:18px}.help-modal-body{padding:24px;overflow-y:auto;flex:1}.help-modal-hero{display:flex;align-items:center;gap:16px;padding:20px;background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--primary-subtle) 100%);border:1px solid var(--primary-subtle);border-radius:14px;margin-bottom:24px}.help-modal-hero-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary) 100%);border-radius:12px;color:#fff;flex-shrink:0;box-shadow:0 4px 12px var(--primary-glow)}.help-modal-hero-text{font-size:16px;line-height:1.5;color:var(--text-primary);margin:0}.help-modal-hero-text strong{color:var(--text-primary)}.help-modal-demo{margin-bottom:24px}.help-modal-demo-timeline{display:flex;flex-direction:column;gap:12px}.help-modal-demo-track{height:40px;background:var(--surface-alt);border-radius:10px;position:relative;overflow:hidden;border:1px solid var(--shadow-ghost)}.help-modal-demo-result{height:44px;background:var(--surface-alt);border-radius:10px;position:relative;display:flex;gap:3px;padding:4px;border:1px solid var(--shadow-ghost)}.help-modal-demo-block{height:100%;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:700;color:#fff}.help-modal-demo-block--step{flex:1;background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary) 100%);box-shadow:0 2px 6px var(--primary-glow)}.help-modal-demo-block--recap{flex:.6;background:linear-gradient(135deg,var(--pink-light) 0%,var(--pink) 100%);box-shadow:0 2px 6px var(--pink-glow)}.help-modal-demo-marker{flex:1;height:100%;display:flex;align-items:center;justify-content:center;font-size:16px;color:#78716cb3;font-weight:300;position:relative}.help-modal-demo-marker:after{content:"";position:absolute;top:4px;bottom:4px;left:50%;width:2px;background:repeating-linear-gradient(to bottom,rgba(120,113,108,.5) 0px,rgba(120,113,108,.5) 3px,transparent 3px,transparent 6px);transform:translate(-50%)}.help-modal-demo-arrow{display:flex;align-items:center;justify-content:center;color:var(--text-muted);padding:8px 0}.help-modal-section{margin-bottom:24px}.help-modal-section-title{font-size:var(--text-base);font-weight:700;color:var(--text-primary);margin:0 0 6px;letter-spacing:-.01em}.help-modal-section-desc{font-size:var(--text-sm);color:var(--text-secondary);margin:0 0 16px;line-height:1.5}.help-modal-types{display:flex;flex-direction:column;gap:10px}.help-modal-type{display:flex;align-items:center;gap:14px;padding:12px 14px;background:var(--shadow-ghost);border-radius:10px;border:1px solid var(--shadow-ghost)}.help-modal-type-indicator{width:10px;height:10px;border-radius:50%;flex-shrink:0}.help-modal-type-indicator--step{background:var(--primary);box-shadow:0 0 0 3px var(--primary-subtle)}.help-modal-type-indicator--recap{background:var(--pink);box-shadow:0 0 0 3px var(--pink-subtle)}.help-modal-type-indicator--tip{background:var(--blue);box-shadow:0 0 0 3px var(--blue-subtle)}.help-modal-type-content{display:flex;align-items:baseline;gap:8px}.help-modal-type-content strong{font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.help-modal-type-content span{font-size:var(--text-sm);color:var(--text-muted)}.help-modal-reassurance{padding:16px 20px;background:linear-gradient(135deg,var(--primary-subtle) 0%,rgba(var(--primary-rgb),.04) 100%);border:1px solid var(--primary-subtle);border-radius:12px;text-align:center}.help-modal-reassurance p{font-size:var(--text-base);line-height:1.5;color:var(--text-secondary);margin:0}.help-modal-reassurance strong{color:var(--primary)}.help-modal-footer{padding:20px 24px 24px;border-top:1px solid var(--shadow-ghost)}.help-modal-button{display:block;width:100%;height:48px;padding:0 24px;border-radius:12px;font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all var(--transition-fast);border:none;background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary) 100%);color:#fff;box-shadow:0 4px 12px var(--primary-glow)}.help-modal-button:hover{transform:translateY(-1px);box-shadow:0 6px 16px var(--primary-border)}.help-modal-button:active{transform:translateY(0);box-shadow:0 2px 8px var(--primary-glow)}.help-modal-steps{display:flex;flex-direction:column;gap:12px}.help-modal-step{display:flex;align-items:flex-start;gap:14px;padding:14px 16px;background:var(--shadow-ghost);border-radius:12px;border:1px solid var(--shadow-ghost)}.help-modal-step-number{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary) 100%);border-radius:8px;color:#fff;font-size:var(--text-sm);font-weight:700;flex-shrink:0}.help-modal-step-content{display:flex;flex-direction:column;gap:2px;padding-top:2px}.help-modal-step-content strong{font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.help-modal-step-content span{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.4}.help-modal-actions{display:flex;flex-direction:column;gap:10px}.help-modal-action{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;background:var(--shadow-ghost);border-radius:10px;border:1px solid var(--shadow-ghost)}.help-modal-action-dot{width:8px;height:8px;background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary) 100%);border-radius:50%;flex-shrink:0;margin-top:6px}.help-modal-action-content{display:flex;flex-direction:column;gap:2px}.help-modal-action-content strong{font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.help-modal-action-content span{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.4}.help-modal-tips-inline{display:flex;flex-direction:column;gap:10px}.help-modal-tips-inline p{font-size:var(--text-sm);line-height:1.5;color:var(--text-secondary);margin:0;padding-left:16px;position:relative}.help-modal-tips-inline p:before{content:"";position:absolute;left:0;top:6px;width:6px;height:6px;background:var(--primary);border-radius:50%}@media(max-width:600px){.help-modal-overlay{padding:16px;align-items:flex-end}.help-modal{max-height:85vh;border-radius:20px 20px 0 0;animation:helpModalSlideUpMobile .3s cubic-bezier(.34,1.56,.64,1)}@keyframes helpModalSlideUpMobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.help-modal-header{padding:20px 20px 16px}.help-modal-title{font-size:20px}.help-modal-body{padding:20px}.help-modal-hero{flex-direction:column;text-align:center;gap:12px;padding:16px}.help-modal-hero-icon{width:44px;height:44px}.help-modal-hero-text{font-size:var(--text-base)}.help-modal-demo-track,.help-modal-demo-result{height:36px}.help-modal-type-content{flex-direction:column;gap:2px}.help-modal-footer{padding:16px 20px 20px}.help-modal-button{height:52px;font-size:16px}}.tutorial-demo-overlay{position:fixed;inset:0;background:var(--overlay-dark, rgba(0, 0, 0, .55));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1100;display:flex;align-items:center;justify-content:center;padding:24px;overflow-y:auto;overscroll-behavior:contain;animation:tutorialDemoFadeIn .2s ease-out}@keyframes tutorialDemoFadeIn{0%{opacity:0}to{opacity:1}}.tutorial-demo-card{background:#fff;border-radius:20px;width:100%;max-width:clamp(360px,92vw,760px);max-height:calc(100dvh - 48px);display:flex;flex-direction:column;box-shadow:0 24px 80px #00000038,0 0 0 1px #0000000f;overflow:hidden;animation:tutorialDemoPopIn .28s cubic-bezier(.34,1.56,.64,1)}@keyframes tutorialDemoPopIn{0%{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.tutorial-demo-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 22px 18px;border-bottom:1px solid rgba(0,0,0,.06)}.tutorial-demo-header-text{display:flex;flex-direction:column;gap:6px;min-width:0}.tutorial-demo-badge{display:inline-flex;align-items:center;width:fit-content;padding:4px 10px;border-radius:6px;background:linear-gradient(135deg,#a78bfa,#7c3aed);color:#fff;font-size:var(--text-xs);font-weight:800;letter-spacing:.05em}.tutorial-demo-title{margin:0;font-size:20px;font-weight:800;color:#2f2a26;letter-spacing:-.02em}.tutorial-demo-subtitle{margin:0;font-size:var(--text-sm);font-weight:600;color:#2f2a26b8;line-height:1.35}.tutorial-demo-close{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;border:1px solid rgba(0,0,0,.08);background:#0000000a;color:#2f2a26b3;flex-shrink:0;transition:transform .12s ease,background .12s ease,color .12s ease}.tutorial-demo-close:hover:enabled{background:#0000000f;color:#2f2a26e6}.tutorial-demo-close:active:enabled{transform:scale(.96)}.tutorial-demo-close:disabled{opacity:.45;cursor:not-allowed}.tutorial-demo-close svg{width:18px;height:18px}.tutorial-demo-body{padding:18px 22px 8px;flex:1;min-height:0;overflow:hidden}.tutorial-demo-animation-surface{background:transparent;display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:0}.tutorial-demo-footer{padding:12px 22px 20px;display:flex;flex-direction:column;gap:8px}.tutorial-demo-button{width:100%;height:48px;border-radius:12px;border:none;cursor:pointer;font-size:var(--text-base);font-weight:800;color:#fff;background:linear-gradient(135deg,#a78bfa,#7c3aed);box-shadow:0 4px 14px #7c3aed42;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}.tutorial-demo-button:hover:enabled{transform:translateY(-1px);box-shadow:0 6px 18px #7c3aed4d}.tutorial-demo-button:active:enabled{transform:translateY(0);box-shadow:0 3px 12px #7c3aed3d}.tutorial-demo-button:disabled{opacity:.55;cursor:not-allowed;filter:saturate(.7)}@media(max-width:600px){.tutorial-demo-overlay{padding:16px;align-items:flex-end}.tutorial-demo-card{border-radius:20px 20px 0 0;max-width:100%}.tutorial-demo-header{padding:18px 18px 14px}.tutorial-demo-body{padding:14px 18px 6px}.tutorial-demo-footer{padding:10px 18px 18px}}.vps{position:relative;width:100%;height:100vh;height:100dvh;overflow:hidden;user-select:none;-webkit-user-select:none;background:#000}.vps-top-bar{position:absolute;top:0;left:0;right:0;z-index:20;background:#000;border-bottom:none;padding-top:var(--safe-area-top, 0px);pointer-events:none}.vps-top-bar__inner{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);min-height:48px;pointer-events:auto}.vps-back-btn{width:32px;height:32px;border-radius:50%;background:transparent;border:none;color:#ffffffb3;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;flex-shrink:0;transition:background var(--transition-fast)}.vps-back-btn:active{background:#ffffff1a}.vps-back-btn svg{width:18px;height:18px}@media(max-width:768px){.vps-back-btn{width:44px;height:44px}.vps-back-btn svg{width:22px;height:22px}}.vps-hint{flex:1;text-align:center;font-size:var(--text-lg);font-weight:300;color:#ffffffb3;line-height:var(--leading-relaxed);letter-spacing:.01em;text-shadow:0 1px 4px rgba(0,0,0,.3);min-width:0;animation:vps-hint-fadein .3s ease both}.vps-hint-highlight{font-weight:500;letter-spacing:-.01em;text-shadow:0 1px 8px rgba(0,0,0,.5)}@keyframes vps-hint-fadein{0%{opacity:0}to{opacity:1}}.vps-top-action{background:none;border:none;font-family:inherit;font-size:var(--text-sm);font-weight:600;cursor:pointer;padding:var(--space-1) var(--space-3);border-radius:6px;flex-shrink:0;min-width:32px;min-height:32px;display:flex;align-items:center;justify-content:center;transition:opacity var(--transition-fast),color var(--transition-fast)}@media(max-width:768px){.vps-top-action{font-size:var(--text-base);min-width:44px;min-height:44px}}.vps-top-action--primary{color:var(--primary)}.vps-top-action--primary.vps-top-action--green{color:var(--success)}.vps-top-action--secondary{color:#fff6}.vps-top-action--hidden{opacity:0;pointer-events:none;width:0;min-width:0;padding:0;overflow:hidden}.vps-top-action:active{opacity:.7}.vps-controls{position:absolute;bottom:0;left:0;right:0;z-index:15;background:linear-gradient(to top,rgba(0,0,0,.95) 0%,rgba(0,0,0,.85) 25%,rgba(0,0,0,.6) 50%,rgba(0,0,0,.25) 75%,transparent 100%);padding-top:var(--space-6);padding-bottom:calc(var(--space-4) + var(--safe-area-bottom, 0px));display:flex;flex-direction:column;align-items:center}.vps-mark-btn-zone{display:flex;justify-content:center;margin-bottom:var(--space-4)}.vps-scrub-row{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:0 var(--space-5)}.vps-time-label{font-size:var(--text-xs);color:#fff6;font-variant-numeric:tabular-nums;flex-shrink:0;min-width:36px;text-align:right}@media(max-width:768px){.vps-time-label{font-size:var(--text-sm);min-width:42px}}.vps-speed-pill{font-size:var(--text-xs);font-weight:500;color:#fff9;background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:2px 10px;cursor:pointer;font-family:inherit;transition:background var(--transition-fast)}.vps-speed-pill:active{background:#ffffff26}@media(max-width:768px){.vps-speed-pill{font-size:var(--text-sm);padding:6px 14px;min-height:36px;display:flex;align-items:center}}.vps-video{position:absolute;inset:0;overflow:hidden;background:#0a0a0a;cursor:pointer}.vps-video:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 55%,rgba(60,40,20,.25) 0%,transparent 70%),linear-gradient(170deg,#1a1410,#0d0b09 40%,#151210);pointer-events:none}.vps-video--playing:after{content:"";position:absolute;inset:0;background:linear-gradient(45deg,rgba(40,25,15,.12) 0%,transparent 30%,rgba(25,35,20,.08) 60%,transparent 100%);animation:vps-drift 8s ease-in-out infinite;pointer-events:none}@keyframes vps-drift{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.6;transform:scale(1.02)}}.vps-video__element{width:100%;height:100%;object-fit:contain;position:absolute;inset:0;z-index:1;pointer-events:none}@media(orientation:landscape){.vps-video__element--landscape{object-fit:cover}}@media(orientation:portrait){.vps-video__element--portrait{object-fit:cover}}.vps-video__placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:1}.vps-flash{position:absolute;inset:0;opacity:0;z-index:5;pointer-events:none}.vps-flash--pop{animation:vps-flash-pop .5s ease-out}@keyframes vps-flash-pop{0%{opacity:.7}to{opacity:0}}.vps-mark-btn{--_color: var(--vps-mark-btn-color, var(--primary));width:220px;height:52px;border-radius:9999px;border:none;color:#fff;cursor:pointer;position:relative;overflow:hidden;background:linear-gradient(135deg,var(--_color) 0%,color-mix(in srgb,var(--_color),white 20%) 50%,var(--_color) 100%);box-shadow:0 4px 20px color-mix(in srgb,var(--_color),transparent 55%),0 0 40px color-mix(in srgb,var(--_color),transparent 80%),0 1px 3px #0000004d;background-size:200% 200%;transition:background-color .25s ease,box-shadow .3s ease,opacity var(--transition-slow);animation:vps-shimmer 3s ease infinite;display:flex;align-items:center;justify-content:center;gap:8px;font-family:inherit;font-size:17px;font-weight:600;letter-spacing:.02em;-webkit-user-select:none;user-select:none;will-change:transform}@keyframes vps-shimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.vps-mark-btn:active:not(.vps-mark-btn--animating):not(.vps-mark-btn--spinning){transform:scale(.95)}.vps-mark-btn:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(255,255,255,.18) 0%,transparent 50%);border-radius:9999px;pointer-events:none}.vps-mark-btn svg{width:22px;height:22px;position:relative;z-index:1}.vps-mark-btn--phase-press{transform:scale(.93);transition:transform .1s cubic-bezier(.22,.61,.36,1),background-color .25s ease,box-shadow .3s ease}.vps-mark-btn--phase-squash{transform:scaleX(1.18) scaleY(.74);transition:transform .13s cubic-bezier(.22,.61,.36,1),background-color .25s ease,box-shadow .3s ease}.vps-mark-btn--phase-stretch{transform:scaleX(.86) scaleY(1.22);transition:transform .13s cubic-bezier(.34,1.56,.64,1),background-color .25s ease,box-shadow .3s ease}.vps-mark-btn--phase-settle{transform:scaleX(1.06) scaleY(.95);transition:transform .13s cubic-bezier(.25,.46,.45,.94),background-color .25s ease,box-shadow .3s ease}.vps-mark-btn--phase-overshoot{transform:scaleX(.98) scaleY(1.02);transition:transform .13s cubic-bezier(.25,.46,.45,.94),background-color .25s ease,box-shadow .3s ease}.vps-mark-btn--phase-idle{transform:scaleX(1) scaleY(1);transition:transform .12s cubic-bezier(.25,.46,.45,.94),background-color .25s ease,box-shadow .3s ease}.vps-mark-btn__content{display:flex;align-items:center;gap:8px;transition:opacity .1s ease;position:relative;z-index:1}.vps-mark-btn--phase-squash .vps-mark-btn__content{opacity:0}.vps-mark-btn--green{--vps-mark-btn-color: var(--success)}.vps-mark-btn--green:not(.vps-mark-btn--disabled){box-shadow:0 0 24px #22c55e73,0 0 48px #22c55e26}.vps-mark-btn--disabled{opacity:.4;pointer-events:none}.vps-mark-btn__spinner{width:22px;height:22px;border:2.5px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:vps-mark-btn-spin .7s linear infinite;position:relative;z-index:1}@keyframes vps-mark-btn-spin{to{transform:rotate(360deg)}}.vps-mark-btn__ripple{position:absolute;inset:0;border-radius:9999px;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.4) 0%,transparent 60%);opacity:0;pointer-events:none}.vps-mark-btn__ripple--go{animation:vps-mark-btn-ripple .5s ease-out}@keyframes vps-mark-btn-ripple{0%{opacity:1;transform:scale(.3)}to{opacity:0;transform:scale(1.5)}}.vps-splash-active #onboarding-progress-portal{display:none}.vps--splash .vps-top-bar{background:linear-gradient(to bottom,rgba(0,0,0,.92) 0%,rgba(0,0,0,.75) 45%,rgba(0,0,0,.35) 75%,transparent 100%)}.vps--splash .vps-top-bar__inner{padding:20px 24px 48px;position:relative}.vps--splash .vps-hint{font-size:26px;font-weight:700;color:#fff;line-height:1.25;text-shadow:0 2px 16px rgba(0,0,0,.7);letter-spacing:-.01em}.vps--splash .vps-top-action{display:none}.vps-done-pill{font-size:var(--text-xs);font-weight:500;font-family:inherit;color:#e8833a;background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:2px 10px;cursor:pointer;flex-shrink:0;animation:vps-done-in .25s cubic-bezier(.34,1.56,.64,1) both;transition:background var(--transition-fast)}.vps-done-pill:active{background:#ffffff26}@keyframes vps-done-in{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@media(max-width:768px){.vps-done-pill{font-size:var(--text-sm);padding:6px 14px;min-height:36px;display:flex;align-items:center}}.vps--splash .vps-mark-btn{width:60%;height:64px;border-radius:16px;font-size:26px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;animation:none;background:linear-gradient(145deg,#f09050,#e8833a,#d67030);box-shadow:0 6px 28px #e8833a8c,0 0 60px #e8833a33,inset 0 1px #ffffff26;text-shadow:0 2px 4px rgba(0,0,0,.25);gap:0;background-size:100% 100%}.vps--splash .vps-mark-btn:after{background:linear-gradient(to bottom,rgba(255,255,255,.18) 0%,transparent 50%);border-radius:16px}.vps--splash .vps-mark-btn--phase-press{transform:scaleY(.82) scaleX(1.06);transition:transform .06s ease-in}.vps--splash .vps-mark-btn--phase-squash,.vps--splash .vps-mark-btn--phase-stretch,.vps--splash .vps-mark-btn--phase-settle,.vps--splash .vps-mark-btn--phase-overshoot,.vps--splash .vps-mark-btn--phase-idle{transform:scaleX(1) scaleY(1)}.vps--splash .vps-track{height:10px;border-radius:99px;background:#ffffff1a;overflow:visible}.vps--splash .vps-scrubber{overflow:visible}.vps--splash .vps-track__fill{border-radius:99px;background:#e8833a4d}.vps--splash .vps-track__head{width:14px;height:14px;background:#ffffff80}.vps--splash .vps-tick{width:10px;height:56px;border-radius:5px;background:#e8833a;box-shadow:0 0 14px #e8833a66;opacity:1;animation:vps-splash-slam .28s cubic-bezier(.22,.61,.36,1) forwards}@keyframes vps-splash-slam{0%{opacity:0;transform:translate(-50%,-700%)}55%{opacity:1;transform:translate(-50%,-50%)}70%{transform:translate(-50%,-47%)}to{opacity:1;transform:translate(-50%,-50%)}}.vps--splash .vps-tick__burst{position:absolute;top:50%;left:50%;width:56px;height:64px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(ellipse,rgba(232,131,58,.7) 0%,rgba(232,131,58,.25) 35%,transparent 70%);animation:vps-splash-burst .45s ease-out forwards;pointer-events:none}@keyframes vps-splash-burst{0%{opacity:1;transform:translate(-50%,-50%) scale(.3)}to{opacity:0;transform:translate(-50%,-50%) scale(2.2)}}.vps--splash .vps-tick__glow{position:absolute;top:50%;left:50%;width:100px;height:28px;transform:translate(-50%,-50%);border-radius:14px;background:radial-gradient(ellipse,rgba(232,131,58,.5) 0%,rgba(232,131,58,.12) 40%,transparent 70%);animation:vps-splash-track-flash .5s ease-out forwards;pointer-events:none}@keyframes vps-splash-track-flash{0%{opacity:1;transform:translate(-50%,-50%) scaleX(.2)}to{opacity:0;transform:translate(-50%,-50%) scaleX(2)}}.vps--splash .vps-mark-btn-zone{margin-bottom:30px;width:100%}.vps--splash .vps-controls{background:linear-gradient(to top,rgba(0,0,0,.96) 0%,rgba(0,0,0,.92) 30%,rgba(0,0,0,.65) 55%,rgba(0,0,0,.2) 80%,transparent 100%);padding-bottom:calc(32px + var(--safe-area-bottom, 0px))}.vps--splash .feedback-popup{font-size:22px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:20px 44px;border-radius:18px;gap:14px;background:linear-gradient(135deg,#28180ae0,#000000d1);border:1px solid rgba(232,131,58,.25);box-shadow:0 0 60px #e8833a33,0 0 20px #e8833a26,0 12px 40px #00000080,inset 0 1px #ffffff1a;transition:none}.vps--splash .feedback-popup.visible{animation:splash-stamp-in .4s cubic-bezier(.22,.61,.36,1) forwards}.vps--splash .feedback-popup.exit{opacity:0;transform:translate(-50%,-50%) scale(.95);transition:opacity .2s ease,transform .2s ease;animation:none}@keyframes splash-stamp-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}60%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}80%{transform:translate(-50%,-50%) scale(.97)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.vps--splash .feedback-popup-icon svg{width:28px;height:28px;stroke-width:2.5;filter:drop-shadow(0 0 10px rgba(232,131,58,.7))}.vps--splash .feedback-popup-text{text-shadow:0 0 20px rgba(232,131,58,.4)}.vps--splash .vps-scrub-row{padding:0 16px;overflow:visible}.feedback-popup{position:absolute;top:42%;left:50%;z-index:25;pointer-events:none;transform:translate(-50%,-50%) scale(.85);opacity:0;background:#000000b3;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:14px;padding:14px 28px;display:flex;align-items:center;gap:10px;white-space:nowrap;font-size:15px;font-weight:600;color:#fff;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0006;transition:opacity .15s ease,transform .25s cubic-bezier(.34,1.4,.64,1)}.feedback-popup.visible{opacity:1;transform:translate(-50%,-50%) scale(1)}.feedback-popup.exit{opacity:0;transform:translate(-50%,-50%) scale(.92);transition:opacity .2s ease,transform .2s ease}.feedback-popup-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.feedback-popup-icon svg{width:18px;height:18px;stroke-width:2.5}.feedback-popup-text{line-height:1}.feedback-popup.orange .feedback-popup-icon svg{stroke:#e8833a}.feedback-popup.green .feedback-popup-icon svg{stroke:#22c55e}.feedback-popup.green{border-color:#22c55e33}@media(max-width:480px){.feedback-popup{font-size:14px;padding:12px 24px;gap:8px}.feedback-popup-icon svg{width:16px;height:16px}}.feedback-vignette{position:absolute;inset:0;z-index:15;pointer-events:none;background:radial-gradient(circle at 50% 50%,transparent 30%,rgba(0,0,0,.5) 100%);opacity:0}.feedback-vignette.fire{animation:vignetteFire .35s ease-out}@keyframes vignetteFire{0%{opacity:.6}to{opacity:0}}.point-marker{position:absolute;top:0;bottom:0;transform:translate(-50%);cursor:pointer;z-index:10;transition:all var(--transition-normal)}.point-marker-diamond{position:absolute;top:4px;left:50%;transform:translate(-50%) rotate(45deg);width:8px;height:8px;background:var(--marker-color, var(--primary));border-radius:1px;box-shadow:0 2px 4px var(--shadow-soft);transition:all var(--transition-normal)}.point-marker-line{position:absolute;top:12px;left:50%;transform:translate(-50%);width:2px;bottom:0;background:var(--marker-color, var(--primary));opacity:.6;transition:all var(--transition-normal)}.point-marker:hover .point-marker-diamond{transform:translate(-50%) rotate(45deg) scale(1.2);box-shadow:0 3px 6px var(--shadow-medium)}.point-marker:hover .point-marker-line{opacity:.8;width:3px}.point-marker.active .point-marker-diamond{transform:translate(-50%) rotate(45deg) scale(1.3);box-shadow:0 3px 8px var(--shadow-heavy)}.point-marker.active .point-marker-line{opacity:1;width:3px}.draggable-point-marker{position:absolute;top:0;bottom:0;transform:translate(-50%);cursor:grab;z-index:14;touch-action:none;width:36px}.draggable-point-marker.is-dragging{cursor:grabbing}.draggable-point-marker .point-marker-diamond,.draggable-point-marker .point-marker-line{pointer-events:none}.draggable-point-marker .point-marker-diamond{width:14px;height:6px;top:-3px;border-radius:3px;background:var(--marker-head-bg, rgba(120, 113, 108, .75));border:1px solid var(--marker-head-border, rgba(90, 85, 80, .4));transform:translate(-50%) rotate(0);box-shadow:0 1px 3px var(--shadow-soft);transition:all var(--transition-fast)}.draggable-point-marker .point-marker-line{top:3px;width:1.5px;background:repeating-linear-gradient(to bottom,var(--marker-line-color, rgba(120, 113, 108, .5)) 0px,var(--marker-line-color, rgba(120, 113, 108, .5)) 4px,transparent 4px,transparent 7px);opacity:1;border-radius:0;box-shadow:none;transition:all var(--transition-fast)}.draggable-point-marker:hover .point-marker-diamond,.draggable-point-marker.is-dragging .point-marker-diamond{width:16px;height:7px;background:var(--marker-head-hover-bg, rgba(180, 140, 110, .85));border-color:var(--marker-head-hover-border, rgba(160, 120, 90, .6));box-shadow:0 2px 6px var(--shadow-soft);transform:translate(-50%) rotate(0)}.draggable-point-marker:hover .point-marker-line,.draggable-point-marker.is-dragging .point-marker-line{width:2px;background:repeating-linear-gradient(to bottom,var(--marker-line-hover-color, rgba(160, 130, 100, .85)) 0px,var(--marker-line-hover-color, rgba(160, 130, 100, .85)) 4px,transparent 4px,transparent 7px)}@media(max-width:600px){.draggable-point-marker{width:48px}.draggable-point-marker .point-marker-diamond{width:20px;height:8px;top:-4px;border-radius:4px}.draggable-point-marker:hover .point-marker-diamond,.draggable-point-marker.is-dragging .point-marker-diamond{width:22px;height:9px}.draggable-point-marker .point-marker-line{width:2px}}.marker-delete-btn{top:-27px;left:50%;transform:translate(-50%) scale(.85);opacity:0;pointer-events:none;transition:opacity var(--transition-fast),transform var(--transition-fast)}.marker-delete-btn--visible{opacity:1;pointer-events:auto;transform:translate(-50%) scale(1)}.marker-delete-btn:hover{transform:translate(-50%) scale(1.1)}.marker-delete-btn:active{transform:translate(-50%) scale(.92)}.toast-container{position:fixed;top:16px;left:16px;z-index:10000;display:flex;flex-direction:column;gap:8px;pointer-events:none;max-width:calc(100vw - 32px)}.toast{pointer-events:auto;display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:8px;background:#1a1a1a;box-shadow:0 4px 12px #00000026,0 1px 3px #0000001a;animation:snack-in .3s cubic-bezier(.34,1.56,.64,1) forwards;width:fit-content;max-width:340px}.toast__icon{flex-shrink:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center}.toast__icon svg{width:100%;height:100%}.toast__message{margin:0;font-size:var(--text-sm);font-weight:500;line-height:1.4;color:#fffffff2}.toast__close{display:none}.toast--success .toast__icon{color:#4ade80}.toast--error .toast__icon{color:#f87171}.toast--warning .toast__icon{color:#fbbf24}.toast--info .toast__icon{color:#60a5fa}@keyframes snack-in{0%{opacity:0;transform:translate(-16px) scale(.96)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes snack-out{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(-12px) scale(.96)}}.toast--exit{animation:snack-out .2s ease-out forwards}@media(max-width:600px){.toast-container{top:calc(12px + var(--safe-area-top, 0px));left:12px;right:12px;max-width:none}.toast{max-width:100%;padding:12px 16px;gap:10px}.toast__icon{width:18px;height:18px}}@media(prefers-reduced-motion:reduce){.toast{animation:none;opacity:1;transform:none}.toast--exit{animation:none;opacity:0}}[data-theme=warm] .toast{background:#242220;box-shadow:0 4px 16px #0000001f,0 1px 4px #00000014}[data-theme=warm] .toast--success .toast__icon{color:#5ca86c}[data-theme=warm] .toast--error .toast__icon{color:#ef5350}[data-theme=warm] .toast--warning .toast__icon{color:#e5a158}[data-theme=warm] .toast--info .toast__icon{color:#e07b4a}.prep-steps-intro{background:linear-gradient(175deg,rgba(251,146,60,.08) 0%,transparent 35%,transparent 65%,rgba(251,146,60,.04) 100%);padding-bottom:72px}.prep-steps-intro .animated-step-ambient{background:radial-gradient(ellipse 90% 60% at 50% 0%,rgba(251,146,60,.15),transparent 55%),radial-gradient(ellipse 80% 50% at 50% 100%,rgba(251,146,60,.08),transparent 55%)}.prep-steps-intro .animated-step-dot{background:var(--primary-border)}.prep-steps-intro .animated-step-icon{background:linear-gradient(135deg,var(--warning-strong) 0%,var(--primary-light) 100%);box-shadow:0 0 80px var(--primary-border),0 0 120px var(--primary-glow),0 18px 46px var(--shadow-heavy)}.prep-steps-intro .animated-step-note{margin-top:32px;font-size:17px;font-weight:500;color:var(--text-secondary);max-width:320px;line-height:1.55;letter-spacing:-.01em}.prep-steps-intro .animated-step-note.is-visible{opacity:.85}.prep-steps-intro .animated-step-click-hint{position:absolute;bottom:0;left:0;right:0;padding:24px 20px calc(24px + var(--safe-area-bottom));font-size:17px;font-weight:500;color:var(--primary);text-align:center;transform:none;background:linear-gradient(to top,var(--shadow-soft) 0%,transparent 100%)}@media(max-width:600px){.prep-steps-intro{padding:24px 20px 0}.prep-steps-intro .animated-step-content{padding:0 8px}.prep-steps-intro .animated-step-note{margin-top:28px;font-size:16px;max-width:280px;padding:0 16px}.prep-steps-intro .animated-step-click-hint{font-size:16px;padding:20px 16px calc(20px + var(--safe-area-bottom))}.prep-steps-intro .animated-step-icon-slot{height:95px}.prep-steps-intro .animated-step-icon{width:80px;height:80px}.prep-steps-intro .animated-step-check-icon{width:40px;height:40px}.prep-steps-intro .animated-step-actions-slot{height:auto;min-height:80px;padding-top:16px}}body.capacitor-native .prep-steps-intro .animated-step-click-hint{padding-bottom:calc(24px + var(--safe-area-bottom, 0px))}@media(max-width:600px){body.capacitor-native .prep-steps-intro .animated-step-click-hint{padding-bottom:calc(20px + var(--safe-area-bottom, 0px))}}.portrait-escape-row{display:none}@media(max-width:600px){.portrait-escape-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(70px,1fr));gap:8px;width:100%;order:-1}.portrait-escape-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:14px 8px;border-radius:12px;border:1px solid var(--border);background:var(--surface-alt);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);min-height:64px}.portrait-escape-btn:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-hover)}.portrait-escape-btn:active:not(:disabled){background:var(--surface-alt);transform:scale(.98)}.portrait-escape-btn:disabled{opacity:.4;cursor:not-allowed}.portrait-escape-btn--danger{border-color:var(--danger-subtle);background:var(--danger-subtle);color:var(--danger)}.portrait-escape-btn--danger:hover:not(:disabled){background:var(--danger-subtle);border-color:var(--danger)}.portrait-escape-icon{font-size:20px;line-height:1}.portrait-escape-label{font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:.02em;color:var(--text-secondary)}}@media(max-height:640px)and (orientation:landscape){.portrait-escape-row{display:none}}.floating-selection-bar{display:none}@media(max-width:600px){.floating-selection-bar{display:flex;align-items:stretch;width:100%;border-radius:12px;overflow:hidden;background:var(--surface);border:1px solid var(--border);box-shadow:0 1px 2px #0000000a,0 2px 8px #0000000f,inset 0 1px 0 var(--highlight-ghost, rgba(255, 255, 255, .06));transform:translateY(4px) scale(.98);transform-origin:top center;opacity:0;max-height:0;visibility:hidden;pointer-events:none;transition:transform var(--transition-normal) cubic-bezier(.34,1.56,.64,1),opacity var(--transition-normal),max-height var(--transition-normal),visibility 0s var(--transition-normal)}.floating-selection-bar.is-visible{transform:translateY(0) scale(1);opacity:1;max-height:56px;visibility:visible;pointer-events:auto;transition:transform var(--transition-normal) cubic-bezier(.34,1.56,.64,1),opacity var(--transition-normal),max-height var(--transition-normal),visibility 0s 0s}.floating-selection-btn{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:8px;padding:12px 14px;min-height:48px;background:transparent;border:none;border-radius:0;color:var(--text-secondary);cursor:pointer;font-family:inherit;position:relative;transition:all var(--transition-fast)}.floating-selection-btn:not(:last-child):after{content:"";position:absolute;right:0;top:10px;bottom:10px;width:1px;background:var(--border);opacity:.5}.floating-selection-btn:hover:not(:disabled){background:var(--highlight-ghost);color:var(--text-primary)}.floating-selection-btn:active:not(:disabled){background:var(--highlight-faint);transform:scale(.98)}.floating-selection-btn:disabled{opacity:.35;cursor:not-allowed;transform:none}.floating-selection-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;line-height:1;color:var(--text-tertiary);transition:color var(--transition-fast),transform var(--transition-fast)}.floating-selection-btn:hover:not(:disabled) .floating-selection-icon{color:var(--text-secondary);transform:scale(1.05)}.floating-selection-btn--play .floating-selection-icon{color:var(--primary)}.floating-selection-btn--delete .floating-selection-icon{color:var(--danger-muted)}.floating-selection-btn--edit .floating-selection-icon{color:var(--text-tertiary)}.floating-selection-btn--play:hover:not(:disabled) .floating-selection-icon{color:var(--primary)}.floating-selection-btn--delete:hover:not(:disabled) .floating-selection-icon{color:var(--danger)}.floating-selection-btn--edit:hover:not(:disabled) .floating-selection-icon{color:var(--text-secondary)}.floating-selection-label{font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:.02em;color:inherit;transition:color var(--transition-fast)}}@media(max-height:640px)and (orientation:landscape){.floating-selection-bar{display:none}}.custom-select{position:relative;display:inline-block;min-width:120px}.custom-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:6px 10px;border-radius:6px;font-size:16px;font-weight:500;font-family:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);text-align:left}.custom-select-trigger:hover{background:var(--surface-hover, var(--bg-tertiary));border-color:var(--border-hover, var(--border))}.custom-select--open .custom-select-trigger{border-color:var(--primary);background:var(--surface);box-shadow:0 0 0 2px var(--primary-subtle)}.custom-select-value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-select-chevron{width:12px;height:12px;color:var(--text-tertiary);flex-shrink:0;transition:transform var(--transition-normal)}.custom-select--open .custom-select-chevron{transform:rotate(180deg);color:var(--primary)}.custom-select-dropdown{min-width:100%;max-height:240px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 16px #0000001f,0 1px 4px #00000014;z-index:9999;padding:4px;animation:selectDropdownIn .15s ease-out}@keyframes selectDropdownIn{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes selectDropdownInUp{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.custom-select-dropdown--flip-up{animation:selectDropdownInUp .15s ease-out}.custom-select--flip-up.custom-select--open .custom-select-chevron{transform:rotate(0)}.custom-select--flip-up .custom-select-chevron{transform:rotate(180deg)}.custom-select-option{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:8px 10px;border-radius:6px;font-size:var(--text-sm);font-weight:500;font-family:inherit;color:var(--text-secondary);background:transparent;border:none;cursor:pointer;transition:all var(--transition-fast);text-align:left}.custom-select-option:hover{background:var(--bg-tertiary, var(--surface-hover));color:var(--text-primary)}.custom-select-option--selected{background:var(--primary-subtle);color:var(--primary)}.custom-select-option--selected:hover{background:color-mix(in srgb,var(--primary) 15%,var(--surface));color:var(--primary)}.custom-select-option--disabled,.custom-select-option--disabled:hover{opacity:.4;cursor:not-allowed;background:transparent;color:var(--text-tertiary)}.custom-select-check{width:12px;height:12px;color:var(--primary);flex-shrink:0}.custom-select-dropdown::-webkit-scrollbar{width:6px}.custom-select-dropdown::-webkit-scrollbar-track{background:transparent}.custom-select-dropdown::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.custom-select-dropdown::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}@media(max-width:960px){.custom-select-trigger{font-size:16px}.custom-select-option{font-size:var(--text-sm)}}.instruction-bar{display:flex;align-items:center;gap:12px;position:relative;overflow:visible;width:100%;padding:12px 18px;border-radius:10px;background:var(--instruction-bar-bg, var(--surface-alt));box-shadow:var(--instruction-bar-shadow, 0 1px 3px var(--shadow-ghost));border:var(--instruction-bar-border, 1px solid var(--shadow-ghost));transition:background-color var(--transition-normal),transform var(--transition-normal) cubic-bezier(.34,1.56,.64,1),box-shadow var(--transition-normal)}.instruction-bar--pulsing{background-color:var(--primary-subtle);transform:scale(1.005);box-shadow:0 2px 8px var(--primary-glow),0 1px 3px var(--shadow-ghost)}.instruction-bar-icon{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--instruction-bar-icon-bg, var(--primary-subtle));border-radius:8px;color:var(--instruction-bar-icon-color, var(--primary));transition:all var(--transition-fast)}.instruction-bar-icon svg{width:18px;height:18px;stroke-width:2}.instruction-bar-text{font-size:var(--text-base);line-height:1.45;color:var(--text-secondary);position:relative;overflow:visible}.instruction-bar-bold{font-weight:600;color:var(--text-primary)}.instruction-bar-regular{font-weight:400}.instruction-bar-highlight{background:var(--question-highlight-gradient, linear-gradient(135deg, var(--primary-light) 0%, var(--pink) 100%));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:600}@media(max-width:960px){.instruction-bar{padding:10px 14px;gap:10px;border-radius:8px}.instruction-bar-icon{width:28px;height:28px;border-radius:6px}.instruction-bar-icon svg{width:16px;height:16px}.instruction-bar-text{font-size:var(--text-sm)}}@media(max-width:600px){.instruction-bar{padding:8px 12px;gap:8px;border-radius:8px}.instruction-bar-icon{width:26px;height:26px;border-radius:6px}.instruction-bar-icon svg{width:14px;height:14px}.instruction-bar-text{font-size:var(--text-sm)}}@media(max-height:640px)and (orientation:landscape){.instruction-bar{padding:6px 10px;gap:8px;border-radius:6px}.instruction-bar-icon{width:24px;height:24px;border-radius:5px}.instruction-bar-icon svg{width:14px;height:14px}.instruction-bar-text{font-size:var(--text-sm)}}.instruction-bar-keyword{position:relative;font-weight:600;cursor:help;border-bottom:1px dashed currentColor;transition:all var(--transition-fast)}.instruction-bar-keyword:hover{opacity:.8}.instruction-bar-keyword--step{color:var(--primary)}.instruction-bar-keyword--recap{color:var(--icon-recap)}.instruction-bar-keyword--tip{color:var(--icon-tips)}.instruction-bar-tooltip{position:absolute;left:50%;--instruction-tooltip-offset-x: -50%;transform:translate(var(--instruction-tooltip-offset-x));padding:8px 12px;border-radius:8px;font-size:var(--text-sm);font-weight:400;white-space:normal;width:max-content;max-width:min(320px,calc(100vw - 24px));text-align:left;z-index:2000;pointer-events:none;animation:tooltipFadeIn .15s ease-out;background:var(--surface);color:var(--text-primary);box-shadow:0 4px 16px var(--shadow-soft),0 0 0 1px var(--shadow-ghost)}.instruction-bar-tooltip--above{bottom:calc(100% + 8px)}.instruction-bar-tooltip--below{top:calc(100% + 8px)}.instruction-bar-tooltip--align-left{--instruction-tooltip-offset-x: 0;left:0}.instruction-bar-tooltip--align-right{--instruction-tooltip-offset-x: 0;left:auto;right:0}.instruction-bar-tooltip:after{content:"";position:absolute;left:50%;transform:translate(-50%);border:5px solid transparent}.instruction-bar-tooltip--above:after{top:100%;border-top-color:var(--surface)}.instruction-bar-tooltip--below:after{bottom:100%;border-bottom-color:var(--surface)}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(var(--instruction-tooltip-offset-x)) translateY(4px)}to{opacity:1;transform:translate(var(--instruction-tooltip-offset-x)) translateY(0)}}.instruction-bar-info-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;margin-left:2px;padding:3px;border-radius:50%;cursor:help;color:var(--text-muted);transition:all var(--transition-fast)}.instruction-bar-info-icon:hover{color:var(--text-tertiary);background:var(--interactive-hover-bg, var(--surface-hover))}.instruction-bar-info-popover{position:absolute;bottom:calc(100% + 8px);left:50%;--instruction-popover-offset-x: -50%;transform:translate(var(--instruction-popover-offset-x));min-width:220px;width:max-content;max-width:min(340px,calc(100vw - 24px));padding:12px 14px;border-radius:10px;z-index:1000;animation:popoverFadeIn .2s ease-out;background:var(--surface);box-shadow:0 8px 24px var(--shadow-soft),0 0 0 1px var(--shadow-ghost)}.instruction-bar-info-popover--align-left{--instruction-popover-offset-x: 0;left:0}.instruction-bar-info-popover--align-right{--instruction-popover-offset-x: 0;left:auto;right:0}.instruction-bar-info-popover:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:var(--surface)}@keyframes popoverFadeIn{0%{opacity:0;transform:translate(var(--instruction-popover-offset-x)) translateY(4px)}to{opacity:1;transform:translate(var(--instruction-popover-offset-x)) translateY(0)}}.instruction-bar-info-item{display:flex;align-items:baseline;gap:10px;padding:5px 0}.instruction-bar-info-item:not(:last-child){border-bottom:1px solid var(--border)}.instruction-bar-info-term{font-weight:600;font-size:var(--text-sm);min-width:50px}.instruction-bar-info-term--step{color:var(--primary)}.instruction-bar-info-term--recap{color:var(--icon-recap)}.instruction-bar-info-term--tip{color:var(--icon-tips)}.instruction-bar-info-term--zoom,.instruction-bar-info-term--pan{color:var(--cyan)}.instruction-bar-info-term--resize{color:var(--warning)}.instruction-bar-info-term--type{color:var(--primary)}.instruction-bar-info-def{font-size:var(--text-xs);color:var(--text-secondary);line-height:1.4}@media(max-width:600px){.instruction-bar-tooltip{font-size:var(--text-sm);padding:6px 10px;max-width:min(280px,calc(100vw - 24px))}.instruction-bar-info-popover{min-width:200px;padding:10px 12px}.instruction-bar-info-term{font-size:var(--text-xs);min-width:44px}.instruction-bar-info-def{font-size:var(--text-xs)}}.popover-backdrop{position:fixed;inset:0;z-index:1000;background-color:transparent;animation:backdropFade .18s cubic-bezier(0,0,.2,1) forwards}@keyframes backdropFade{to{background-color:var(--shadow-medium)}}.base-popover{position:fixed;z-index:1001;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 6px var(--shadow-subtle),0 10px 20px var(--shadow-soft);max-width:90vw;max-height:90vh;overflow:auto}.base-popover:not(.visible){opacity:0}.base-popover.visible{animation:menuFade .12s cubic-bezier(0,0,.2,1) forwards}@keyframes menuFade{0%{opacity:0}to{opacity:1}}.base-popover::-webkit-scrollbar{width:8px;height:8px}.base-popover::-webkit-scrollbar-track{background:transparent}.base-popover::-webkit-scrollbar-thumb{background:var(--highlight-faint);border-radius:4px}.base-popover::-webkit-scrollbar-thumb:hover{background:var(--highlight-subtle)}@media(max-width:768px){.base-popover{max-width:95vw;max-height:80vh}}.block-edit-popover{min-width:200px;max-width:260px;padding:10px;background:var(--surface);border:1px solid var(--highlight-subtle);border-radius:10px;box-shadow:0 4px 6px -1px var(--shadow-medium),0 10px 20px -5px var(--shadow-heavy),0 0 0 1px var(--highlight-ghost) inset}.block-edit-popover-title{padding:4px 4px 10px;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--overlay-medium)}.block-edit-popover-fields{display:flex;flex-direction:column;gap:12px}.block-edit-popover-field{display:flex;flex-direction:column;gap:4px}.block-edit-popover-label{font-size:var(--text-xs);font-weight:500;color:var(--overlay-medium);text-transform:uppercase;letter-spacing:.03em}.block-edit-popover-input{width:100%;padding:10px 12px;font-size:var(--text-sm);font-family:inherit;color:var(--overlay-heavy);background:var(--highlight-ghost);border:1px solid var(--highlight-faint);border-radius:6px;outline:none;transition:all var(--transition-fast);box-sizing:border-box}.block-edit-popover-input::placeholder{color:var(--overlay-subtle)}.block-edit-popover-input:hover{background:var(--highlight-ghost);border-color:var(--highlight-subtle)}.block-edit-popover-input:focus{background:var(--highlight-faint);border-color:var(--primary-glow);box-shadow:0 0 0 2px var(--primary-subtle)}.block-edit-popover-select{width:100%}.block-edit-popover-select .custom-select-trigger{padding:10px 12px;font-size:var(--text-sm);background:var(--highlight-ghost);border:1px solid var(--highlight-faint);border-radius:6px}.block-edit-popover-select .custom-select-trigger:hover{background:var(--highlight-ghost);border-color:var(--highlight-subtle)}[data-theme=warm] .block-edit-popover{background:var(--surface);border-color:var(--shadow-subtle);box-shadow:0 4px 6px -1px var(--shadow-subtle),0 10px 20px -5px var(--shadow-soft)}[data-theme=warm] .block-edit-popover-title,[data-theme=warm] .block-edit-popover-label{color:var(--shadow-heavy)}[data-theme=warm] .block-edit-popover-input{color:var(--overlay-dark);background:var(--shadow-ghost);border-color:var(--shadow-subtle)}[data-theme=warm] .block-edit-popover-input::placeholder{color:var(--shadow-heavy)}[data-theme=warm] .block-edit-popover-input:hover{background:var(--shadow-ghost);border-color:var(--shadow-soft)}[data-theme=warm] .block-edit-popover-input:focus{background:var(--shadow-ghost);border-color:var(--primary-glow);box-shadow:0 0 0 2px var(--primary-subtle)}[data-theme=warm] .block-edit-popover-select .custom-select-trigger{background:var(--shadow-ghost);border-color:var(--shadow-subtle)}[data-theme=warm] .block-edit-popover-select .custom-select-trigger:hover{background:var(--shadow-ghost);border-color:var(--shadow-soft)}.marker-conversion-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:var(--shadow-heavy);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:overlayFadeIn .25s ease-out}@keyframes overlayFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}}.marker-conversion-card{display:flex;flex-direction:column;align-items:center;gap:16px;padding:32px;background:linear-gradient(165deg,var(--surface) 0%,var(--surface-hover) 100%);border:1px solid var(--shadow-subtle);border-radius:20px;box-shadow:0 24px 60px var(--shadow-soft),0 8px 24px var(--shadow-subtle);max-width:360px;text-align:center;animation:cardSlideUp .35s cubic-bezier(.34,1.56,.64,1)}@keyframes cardSlideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.marker-conversion-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--success-subtle) 0%,var(--success-subtle) 100%);color:var(--success)}.marker-conversion-title{margin:0;font-size:20px;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.marker-conversion-desc{margin:0;font-size:var(--text-base);line-height:1.5;color:var(--text-secondary)}.marker-conversion-card--simple{max-width:320px}.marker-conversion-card--simple .marker-conversion-content{gap:8px}.marker-conversion-tips{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0 8px;width:100%}.mc-tip{display:flex;flex-direction:column;gap:8px}.mc-tip-preview{height:56px;border-radius:10px;background:var(--surface-alt);border:1px solid var(--border);overflow:visible;position:relative}.mc-tip-text{margin:0;font-size:var(--text-xs);line-height:1.4;color:var(--text-secondary);text-align:center}.mc-tip-text strong{color:var(--primary);font-weight:600}.mc-tip-track{position:absolute;inset:4px;border-radius:6px;display:flex;gap:0}.mc-block{height:100%;background:linear-gradient(180deg,#a78bfa,#8b5cf6);border-radius:6px;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 1px #fff3;flex-shrink:0}.mc-block-label{font-size:var(--text-xs);font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}.mc-block-1{animation:mcBlock1Dance 4s ease-in-out infinite}.mc-block-2{animation:mcBlock2Dance 4s ease-in-out infinite}.mc-shared-handle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:10;opacity:0;animation:mcHandleAppear 4s ease-in-out infinite,mcHandleMove 4s ease-in-out infinite}.mc-shared-handle-pill{width:8px;height:28px;background:var(--overlay-heavy);border-radius:4px;border:1px solid var(--shadow-subtle);box-shadow:0 2px 4px var(--shadow-soft);animation:mcHandleGlow 4s ease-in-out infinite}.mc-tap-indicator{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:20;pointer-events:none;opacity:0;animation:mcTapAppear 4s ease-in-out infinite,mcHandleMove 4s ease-in-out infinite}.mc-tap-ring{width:24px;height:24px;border-radius:50%;background:var(--primary);opacity:.3;animation:mcTapPulse 4s ease-in-out infinite}.mc-tip-preview--zoom{overflow:hidden}.mc-zoom-container{position:absolute;inset:4px;border-radius:6px;overflow:hidden}.mc-zoom-track{position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);display:flex;align-items:stretch;gap:0}.mc-zoom-block{height:100%;background:linear-gradient(180deg,#a78bfa,#8b5cf6);border-radius:3px;box-shadow:inset 0 1px #fff3;display:flex;align-items:center;justify-content:center;flex-shrink:0}.mc-zoom-block span{font-size:var(--text-xs);font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3);opacity:1}.mc-zoom-block-1{animation:mcZoomBlock1 5s ease-in-out infinite}.mc-zoom-block-2{animation:mcZoomBlock2 5s ease-in-out infinite}.mc-zoom-block-3{animation:mcZoomBlock3 5s ease-in-out infinite}.mc-zoom-block-4{animation:mcZoomBlock4 5s ease-in-out infinite}.mc-zoom-block-5{animation:mcZoomBlock5 5s ease-in-out infinite}.mc-zoom-block-6{animation:mcZoomBlock6 5s ease-in-out infinite}.mc-zoom-indicator{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10;display:flex;align-items:center;justify-content:center;gap:2px;opacity:0;animation:mcZoomGesture 5s ease-in-out infinite}.mc-zoom-finger{width:8px;height:8px;border-radius:50%;background:var(--primary);box-shadow:0 2px 6px var(--primary-glow)}.mc-zoom-finger:first-child{animation:mcZoomPinchLeft 5s ease-in-out infinite}.mc-zoom-finger:last-child{animation:mcZoomPinchRight 5s ease-in-out infinite}.mc-zoom-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);width:24px;height:24px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px var(--primary-glow);animation:mcZoomIconPop 5s ease-in-out infinite;z-index:15}@keyframes mcTapAppear{0%,10%{opacity:0;transform:translate(-50%,-50%) scale(.5)}15%,25%{opacity:1;transform:translate(-50%,-50%) scale(1)}35%,to{opacity:0;transform:translate(-50%,-50%) scale(.8)}}@keyframes mcTapPulse{0%,10%{transform:scale(.5);opacity:0}15%{transform:scale(1);opacity:.4}20%,25%{transform:scale(1.3);opacity:.15}35%,to{transform:scale(.8);opacity:0}}@keyframes mcHandleAppear{0%,15%{opacity:0;transform:translate(-50%,-50%) scale(.8)}22%,75%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}85%,to{opacity:0;transform:translate(-50%,-50%) scale(.9)}}@keyframes mcHandleGlow{0%,15%{background:var(--overlay-heavy);box-shadow:0 2px 4px var(--shadow-soft)}22%,75%{background:linear-gradient(135deg,var(--primary),var(--primary-dark));box-shadow:0 3px 10px var(--primary-glow),0 0 0 2px var(--primary-subtle)}85%,to{background:var(--overlay-heavy);box-shadow:0 2px 4px var(--shadow-soft)}}@keyframes mcBlock1Dance{0%,20%{width:50%}35%,65%{width:38%}80%,to{width:50%}}@keyframes mcBlock2Dance{0%,20%{width:50%}35%,65%{width:62%}80%,to{width:50%}}@keyframes mcHandleMove{0%,20%{left:50%}35%,65%{left:38%}80%,to{left:50%}}@keyframes mcZoomBlock1{0%,15%{width:14px;border-radius:3px}30%,55%{width:50px;border-radius:5px}75%,to{width:14px;border-radius:3px}}@keyframes mcZoomBlock2{0%,15%{width:22px;border-radius:3px}30%,55%{width:77px;border-radius:6px}75%,to{width:22px;border-radius:3px}}@keyframes mcZoomBlock3{0%,15%{width:10px;border-radius:3px}30%,55%{width:35px;border-radius:5px}75%,to{width:10px;border-radius:3px}}@keyframes mcZoomBlock4{0%,15%{width:18px;border-radius:3px}30%,55%{width:63px;border-radius:6px}75%,to{width:18px;border-radius:3px}}@keyframes mcZoomBlock5{0%,15%{width:12px;border-radius:3px}30%,55%{width:42px;border-radius:5px}75%,to{width:12px;border-radius:3px}}@keyframes mcZoomBlock6{0%,15%{width:16px;border-radius:3px}30%,55%{width:56px;border-radius:6px}75%,to{width:16px;border-radius:3px}}@keyframes mcZoomGesture{0%,10%{opacity:0}15%,35%{opacity:1}45%,to{opacity:0}}@keyframes mcZoomPinchLeft{0%,15%{transform:translate(4px)}30%,55%{transform:translate(-10px)}75%,to{transform:translate(4px)}}@keyframes mcZoomPinchRight{0%,15%{transform:translate(-4px)}30%,55%{transform:translate(10px)}75%,to{transform:translate(-4px)}}@keyframes mcZoomIconPop{0%,12%{transform:translate(-50%,-50%) scale(0);opacity:0}18%,22%{transform:translate(-50%,-50%) scale(1.15);opacity:1}28%,40%{transform:translate(-50%,-50%) scale(1);opacity:.9}50%,to{transform:translate(-50%,-50%) scale(0);opacity:0}}@media(prefers-reduced-motion:reduce){.mc-block,.mc-shared-handle,.mc-shared-handle-pill,.mc-tap-indicator,.mc-tap-ring,.mc-zoom-track,.mc-zoom-block:after,.mc-zoom-indicator,.mc-zoom-finger,.mc-zoom-icon{animation:none!important}.mc-block-1{width:38%}.mc-block-2{width:62%}.mc-shared-handle{left:38%;opacity:1}.mc-shared-handle-pill{background:linear-gradient(135deg,var(--primary),var(--primary-dark));box-shadow:0 3px 10px var(--primary-glow),0 0 0 2px var(--primary-subtle)}.mc-zoom-block-1{width:50px}.mc-zoom-block-2{width:77px}.mc-zoom-block-3{width:35px}.mc-zoom-block-4{width:63px}.mc-zoom-block-5{width:42px}.mc-zoom-block-6{width:56px}.mc-zoom-icon{transform:translate(-50%,-50%) scale(1);opacity:.9}}.marker-conversion-action{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;margin-top:4px;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-hover) 100%);border:none;border-radius:10px;color:var(--text-on-primary);font-size:var(--text-sm);font-weight:600;cursor:pointer;box-shadow:0 4px 12px var(--primary-glow);transition:all var(--transition-fast)}.marker-conversion-action:hover{transform:translateY(-1px);box-shadow:0 6px 16px var(--primary-border)}.marker-conversion-action:active{transform:translateY(0) scale(.98)}@media(max-width:480px){.marker-conversion-card{margin:0 16px;padding:24px 16px;max-width:none}.marker-conversion-title{font-size:18px}.marker-conversion-icon{width:48px;height:48px}.marker-conversion-icon svg{width:24px;height:24px}.marker-conversion-tips{gap:10px}.mc-tip-preview{height:50px;border-radius:8px}.mc-tip-text,.mc-block-label{font-size:var(--text-xs)}.mc-shared-handle-pill{width:6px;height:22px}.mc-tap-ring{width:20px;height:20px}.mc-zoom-finger{width:6px;height:6px}.mc-zoom-icon{width:20px;height:20px}.mc-zoom-icon svg{width:11px;height:11px}.mc-zoom-block span{font-size:var(--text-xs)}}@media(max-width:340px){.marker-conversion-tips{grid-template-columns:1fr;gap:12px}.mc-tip-preview{height:48px}}.refine-tips-tutorial{width:100%;padding:16px}.refine-tips-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;width:100%}.refine-tip{display:flex;flex-direction:column;gap:12px}.refine-tip-preview{height:80px;border-radius:12px;background:var(--surface-alt);border:1px solid var(--border);overflow:visible;position:relative}.refine-tip-text{margin:0;font-size:var(--text-sm);line-height:1.5;color:var(--text-secondary);text-align:center}.refine-tip-text strong{color:var(--primary);font-weight:600}.refine-tip-track{position:absolute;inset:6px;border-radius:8px;display:flex;gap:0}.rt-block{height:100%;background:linear-gradient(180deg,#a78bfa,#8b5cf6);border-radius:8px;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 1px #fff3;flex-shrink:0}.rt-block-label{font-size:var(--text-sm);font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}.rt-block-1{animation:rtBlock1Dance 4s ease-in-out infinite}.rt-block-2{animation:rtBlock2Dance 4s ease-in-out infinite}.rt-shared-handle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:10;opacity:0;animation:rtHandleAppear 4s ease-in-out infinite,rtHandleMove 4s ease-in-out infinite}.rt-shared-handle-pill{width:10px;height:36px;background:var(--overlay-heavy);border-radius:5px;border:1px solid var(--shadow-subtle);box-shadow:0 2px 4px var(--shadow-soft);animation:rtHandleGlow 4s ease-in-out infinite}.rt-tap-indicator{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:20;pointer-events:none;opacity:0;animation:rtTapAppear 4s ease-in-out infinite,rtHandleMove 4s ease-in-out infinite}.rt-tap-ring{width:28px;height:28px;border-radius:50%;background:var(--primary);opacity:.3;animation:rtTapPulse 4s ease-in-out infinite}.refine-tip-preview--zoom{overflow:hidden}.rt-zoom-container{position:absolute;inset:6px;border-radius:8px;overflow:hidden}.rt-zoom-track{position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);display:flex;align-items:stretch;gap:0}.rt-zoom-block{height:100%;background:linear-gradient(180deg,#a78bfa,#8b5cf6);border-radius:4px;box-shadow:inset 0 1px #fff3;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rt-zoom-block span{font-size:var(--text-xs);font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3);opacity:1}.rt-zoom-block-1{animation:rtZoomBlock1 5s ease-in-out infinite}.rt-zoom-block-2{animation:rtZoomBlock2 5s ease-in-out infinite}.rt-zoom-block-3{animation:rtZoomBlock3 5s ease-in-out infinite}.rt-zoom-block-4{animation:rtZoomBlock4 5s ease-in-out infinite}.rt-zoom-block-5{animation:rtZoomBlock5 5s ease-in-out infinite}.rt-zoom-block-6{animation:rtZoomBlock6 5s ease-in-out infinite}.rt-zoom-indicator{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10;display:flex;align-items:center;justify-content:center;gap:2px;opacity:0;animation:rtZoomGesture 5s ease-in-out infinite}.rt-zoom-finger{width:10px;height:10px;border-radius:50%;background:var(--primary);box-shadow:0 2px 6px var(--primary-glow)}.rt-zoom-finger:first-child{animation:rtZoomPinchLeft 5s ease-in-out infinite}.rt-zoom-finger:last-child{animation:rtZoomPinchRight 5s ease-in-out infinite}.rt-zoom-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);width:28px;height:28px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px var(--primary-glow);animation:rtZoomIconPop 5s ease-in-out infinite;z-index:15}@keyframes rtTapAppear{0%,10%{opacity:0;transform:translate(-50%,-50%) scale(.5)}15%,25%{opacity:1;transform:translate(-50%,-50%) scale(1)}35%,to{opacity:0;transform:translate(-50%,-50%) scale(.8)}}@keyframes rtTapPulse{0%,10%{transform:scale(.5);opacity:0}15%{transform:scale(1);opacity:.4}20%,25%{transform:scale(1.3);opacity:.15}35%,to{transform:scale(.8);opacity:0}}@keyframes rtHandleAppear{0%,15%{opacity:0;transform:translate(-50%,-50%) scale(.8)}22%,75%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}85%,to{opacity:0;transform:translate(-50%,-50%) scale(.9)}}@keyframes rtHandleGlow{0%,15%{background:var(--overlay-heavy);box-shadow:0 2px 4px var(--shadow-soft)}22%,75%{background:linear-gradient(135deg,var(--primary),var(--primary-dark));box-shadow:0 3px 10px var(--primary-glow),0 0 0 2px var(--primary-subtle)}85%,to{background:var(--overlay-heavy);box-shadow:0 2px 4px var(--shadow-soft)}}@keyframes rtBlock1Dance{0%,20%{width:50%}35%,65%{width:38%}80%,to{width:50%}}@keyframes rtBlock2Dance{0%,20%{width:50%}35%,65%{width:62%}80%,to{width:50%}}@keyframes rtHandleMove{0%,20%{left:50%}35%,65%{left:38%}80%,to{left:50%}}@keyframes rtZoomBlock1{0%,15%{width:16px;border-radius:3px}30%,55%{width:56px;border-radius:6px}75%,to{width:16px;border-radius:3px}}@keyframes rtZoomBlock2{0%,15%{width:24px;border-radius:3px}30%,55%{width:84px;border-radius:7px}75%,to{width:24px;border-radius:3px}}@keyframes rtZoomBlock3{0%,15%{width:12px;border-radius:3px}30%,55%{width:42px;border-radius:5px}75%,to{width:12px;border-radius:3px}}@keyframes rtZoomBlock4{0%,15%{width:20px;border-radius:3px}30%,55%{width:70px;border-radius:6px}75%,to{width:20px;border-radius:3px}}@keyframes rtZoomBlock5{0%,15%{width:14px;border-radius:3px}30%,55%{width:49px;border-radius:5px}75%,to{width:14px;border-radius:3px}}@keyframes rtZoomBlock6{0%,15%{width:18px;border-radius:3px}30%,55%{width:63px;border-radius:6px}75%,to{width:18px;border-radius:3px}}@keyframes rtZoomGesture{0%,10%{opacity:0}15%,35%{opacity:1}45%,to{opacity:0}}@keyframes rtZoomPinchLeft{0%,15%{transform:translate(4px)}30%,55%{transform:translate(-12px)}75%,to{transform:translate(4px)}}@keyframes rtZoomPinchRight{0%,15%{transform:translate(-4px)}30%,55%{transform:translate(12px)}75%,to{transform:translate(-4px)}}@keyframes rtZoomIconPop{0%,12%{transform:translate(-50%,-50%) scale(0);opacity:0}18%,22%{transform:translate(-50%,-50%) scale(1.15);opacity:1}28%,40%{transform:translate(-50%,-50%) scale(1);opacity:.9}50%,to{transform:translate(-50%,-50%) scale(0);opacity:0}}@media(prefers-reduced-motion:reduce){.rt-block,.rt-shared-handle,.rt-shared-handle-pill,.rt-tap-indicator,.rt-tap-ring,.rt-zoom-track,.rt-zoom-indicator,.rt-zoom-finger,.rt-zoom-icon{animation:none!important}.rt-block-1{width:38%}.rt-block-2{width:62%}.rt-shared-handle{left:38%;opacity:1}.rt-shared-handle-pill{background:linear-gradient(135deg,var(--primary),var(--primary-dark));box-shadow:0 3px 10px var(--primary-glow),0 0 0 2px var(--primary-subtle)}.rt-zoom-block-1{width:56px}.rt-zoom-block-2{width:84px}.rt-zoom-block-3{width:42px}.rt-zoom-block-4{width:70px}.rt-zoom-block-5{width:49px}.rt-zoom-block-6{width:63px}.rt-zoom-icon{transform:translate(-50%,-50%) scale(1);opacity:.9}}@media(max-width:480px){.refine-tips-grid{gap:16px}.refine-tip-preview{height:70px;border-radius:10px}.refine-tip-text,.rt-block-label{font-size:var(--text-xs)}.rt-shared-handle-pill{width:8px;height:30px}.rt-tap-ring{width:24px;height:24px}.rt-zoom-finger{width:8px;height:8px}.rt-zoom-icon{width:24px;height:24px}.rt-zoom-block span{font-size:var(--text-xs)}}@media(max-width:380px){.refine-tips-grid{grid-template-columns:1fr;gap:20px}.refine-tip-preview{height:65px}}.drag-to-create-wrapper{--valid-zone-color: 75, 196, 187;--drag-hint-purple: 139, 92, 246}.drag-to-create-wrapper{position:absolute;inset:0;pointer-events:none}.drag-to-create-overlay{position:absolute;inset:0;pointer-events:auto;cursor:crosshair;touch-action:none;-webkit-tap-highlight-color:transparent;z-index:1}.valid-zone-indicators{position:absolute;left:0;right:0;pointer-events:none;z-index:15}.valid-zone-glow{position:absolute;top:2px;bottom:2px;border-radius:6px;background:linear-gradient(180deg,rgba(var(--valid-zone-color),.08),rgba(var(--valid-zone-color),.12),rgba(var(--valid-zone-color),.08));border:1px solid rgba(var(--valid-zone-color),.15);box-shadow:inset 0 0 12px rgba(var(--valid-zone-color),.08),0 0 8px rgba(var(--valid-zone-color),.05);transition:all var(--transition-slow)}.valid-zone-indicators--active .valid-zone-glow{background:linear-gradient(180deg,rgba(var(--valid-zone-color),.15),rgba(var(--valid-zone-color),.25),rgba(var(--valid-zone-color),.15));border:1px solid rgba(var(--valid-zone-color),.4);box-shadow:inset 0 0 20px rgba(var(--valid-zone-color),.15),0 0 16px rgba(var(--valid-zone-color),.2),0 0 32px rgba(var(--valid-zone-color),.1);animation:validZonePulse 1.5s ease-in-out infinite}@keyframes validZonePulse{0%,to{box-shadow:inset 0 0 20px rgba(var(--valid-zone-color),.15),0 0 16px rgba(var(--valid-zone-color),.2),0 0 32px rgba(var(--valid-zone-color),.1)}50%{box-shadow:inset 0 0 25px rgba(var(--valid-zone-color),.2),0 0 20px rgba(var(--valid-zone-color),.3),0 0 40px rgba(var(--valid-zone-color),.15)}}.constraint-dimming-overlay{position:absolute;left:0;right:0;background:var(--shadow-medium);pointer-events:none;z-index:30;animation:dimmingFadeIn .2s ease-out;box-shadow:inset 0 0 30px var(--shadow-soft)}@keyframes dimmingFadeIn{0%{opacity:0}to{opacity:1}}.constraint-valid-zone{position:absolute;top:2px;bottom:2px;background:linear-gradient(180deg,rgba(var(--valid-zone-color),.2),rgba(var(--valid-zone-color),.35),rgba(var(--valid-zone-color),.2));border:1px solid rgba(var(--valid-zone-color),.5);border-radius:6px;box-shadow:inset 0 0 15px rgba(var(--valid-zone-color),.15),0 0 20px rgba(var(--valid-zone-color),.3),0 0 40px rgba(var(--valid-zone-color),.15);animation:validZoneCutoutPulse 1.2s ease-in-out infinite}@keyframes validZoneCutoutPulse{0%,to{box-shadow:inset 0 0 15px rgba(var(--valid-zone-color),.15),0 0 20px rgba(var(--valid-zone-color),.3),0 0 40px rgba(var(--valid-zone-color),.15)}50%{box-shadow:inset 0 0 20px rgba(var(--valid-zone-color),.2),0 0 25px rgba(var(--valid-zone-color),.4),0 0 50px rgba(var(--valid-zone-color),.2)}}.drag-preview{position:absolute;box-sizing:border-box;background:rgba(var(--drag-hint-purple),.25);border:2px dashed rgba(var(--drag-hint-purple),.7);border-radius:6px;pointer-events:none;z-index:32;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.drag-preview-dimmed{background:rgba(var(--drag-hint-purple),.1);border:2px dashed rgba(var(--drag-hint-purple),.3);z-index:31}.drag-preview-invalid{background:var(--danger-subtle);border-color:var(--danger)}.pending-block{position:absolute;box-sizing:border-box;background:#9ca3af33;border:2px dashed rgba(156,163,175,.6);border-radius:6px;pointer-events:none;z-index:32;animation:pendingBlockPulse 2s ease-in-out infinite}@keyframes pendingBlockPulse{0%,to{background:#9ca3af26;border-color:#9ca3af80}50%{background:#9ca3af40;border-color:#9ca3afb3}}.drag-to-create-wrapper .track-drag-hint{position:absolute;inset:0;pointer-events:none;z-index:30;display:flex;align-items:center;justify-content:center;animation:trackHintFadeIn .4s ease-out}.drag-to-create-wrapper .track-drag-hint-glow{position:absolute;inset:2px;border-radius:8px;background:linear-gradient(90deg,rgba(var(--drag-hint-purple),.15),rgba(var(--drag-hint-purple),.35),rgba(var(--drag-hint-purple),.15));border:2px solid rgba(var(--drag-hint-purple),.5);box-shadow:inset 0 0 20px rgba(var(--drag-hint-purple),.2),0 0 20px rgba(var(--drag-hint-purple),.15);animation:trackHintPulse 1.5s ease-in-out infinite}.drag-to-create-wrapper .track-drag-hint-arrows{position:relative;display:flex;align-items:center;gap:16px;z-index:2}.drag-to-create-wrapper .track-drag-hint-arrow{font-size:24px;color:var(--overlay-heavy);text-shadow:0 0 12px rgba(var(--drag-hint-purple),.8),0 0 24px rgba(var(--drag-hint-purple),.5);filter:drop-shadow(0 2px 4px var(--shadow-medium))}.drag-to-create-wrapper .track-drag-hint-arrow.left{animation:trackHintArrowLeft 1.2s ease-in-out infinite}.drag-to-create-wrapper .track-drag-hint-arrow.right{animation:trackHintArrowRight 1.2s ease-in-out infinite}.drag-to-create-wrapper .track-drag-hint-text{font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--overlay-heavy);text-shadow:0 0 10px rgba(var(--drag-hint-purple),.8),0 2px 4px var(--shadow-heavy);animation:trackHintTextPulse 1.5s ease-in-out infinite}@media(max-width:960px){.drag-preview{background:rgba(var(--drag-hint-purple),.35);border:2px dashed rgba(var(--drag-hint-purple),.8)}.drag-preview-invalid{background:var(--danger-subtle)}.pending-block{background:#9ca3af40;border:2px dashed rgba(156,163,175,.7)}.drag-to-create-wrapper .track-drag-hint-arrow{font-size:20px}.drag-to-create-wrapper .track-drag-hint-text{font-size:var(--text-xs)}}@media(max-width:600px){.drag-to-create-wrapper .track-drag-hint-arrow{font-size:18px}.drag-to-create-wrapper .track-drag-hint-text{font-size:var(--text-xs)}}@media(prefers-reduced-motion:reduce){.drag-to-create-wrapper .track-drag-hint,.drag-to-create-wrapper .track-drag-hint-glow,.drag-to-create-wrapper .track-drag-hint-arrow,.drag-to-create-wrapper .track-drag-hint-text,.constraint-dimming-overlay,.pending-block{animation:none!important}}.drag-create-menu{min-width:140px;max-width:200px;padding:6px;background:var(--bg-secondary);border:1px solid var(--highlight-subtle);border-radius:10px;box-shadow:0 4px 6px -1px var(--shadow-medium),0 10px 20px -5px var(--shadow-heavy),0 0 0 1px var(--highlight-ghost) inset}.drag-create-menu-title{padding:8px 12px 6px;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--overlay-medium)}.drag-create-menu-options{display:flex;flex-direction:column;gap:2px}.drag-create-menu-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border-radius:6px;font-size:var(--text-sm);font-weight:500;font-family:inherit;color:var(--overlay-heavy);background:transparent;border:none;cursor:pointer;transition:all var(--transition-fast);text-align:left}.drag-create-menu-option:hover{background:var(--highlight-ghost);color:var(--text-primary)}.drag-create-menu-option:active{background:var(--highlight-subtle);transform:scale(.98)}.drag-create-menu-option--disabled,.drag-create-menu-option--disabled:hover,.drag-create-menu-option--disabled:active{opacity:.4;cursor:not-allowed;background:transparent;transform:none}.drag-create-menu-option-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;box-shadow:0 0 4px currentColor}.drag-create-menu-option-label{flex:1}@media(max-width:600px){.drag-create-menu{min-width:160px}.drag-create-menu-option{padding:12px 14px;font-size:var(--text-sm)}.drag-create-menu-option-dot{width:12px;height:12px}}[data-theme=warm] .drag-create-menu{background:var(--surface);border-color:var(--shadow-subtle);box-shadow:0 4px 6px -1px var(--shadow-subtle),0 10px 20px -5px var(--shadow-soft)}[data-theme=warm] .drag-create-menu-title{color:var(--shadow-heavy)}[data-theme=warm] .drag-create-menu-option{color:var(--overlay-dark)}[data-theme=warm] .drag-create-menu-option:hover{background:var(--shadow-ghost);color:var(--text-primary)}[data-theme=warm] .drag-create-menu-option:active{background:var(--shadow-subtle)}[data-theme=warm] .drag-create-menu-option--disabled,[data-theme=warm] .drag-create-menu-option--disabled:hover,[data-theme=warm] .drag-create-menu-option--disabled:active{opacity:.4;background:transparent}[data-phase=mark-steps] .mark-steps-timeline-cta-row{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:14px;box-shadow:0 2px 8px #0000000f}[data-phase=mark-steps] .mark-steps-timeline-cta-btn{flex:1 1 0;min-width:0}.onboarding-flow .onboarding-review-action-bar .mark-steps-step{background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary) 100%);color:var(--text-on-primary);border-color:var(--primary-glow);box-shadow:0 4px 12px var(--primary-glow)}.onboarding-flow .onboarding-review-action-bar .mark-steps-step:hover{background:linear-gradient(135deg,#b89cfa 0%,var(--primary-light) 100%);box-shadow:0 6px 16px var(--primary-glow)}@media(max-width:600px){.onboarding-flow .onboarding-review-action-bar{flex-wrap:wrap;row-gap:12px}.onboarding-flow .onboarding-review-action-bar .portrait-escape-row{flex:0 0 100%;order:-1}.onboarding-flow .onboarding-review-action-bar .mark-steps-add-btn{flex:1;min-width:0;height:52px;font-size:var(--text-base);font-weight:600;border-radius:12px;justify-content:center}.onboarding-flow .onboarding-review-action-bar .mark-steps-recap{background:linear-gradient(135deg,var(--pink-light) 0%,var(--pink) 100%);color:var(--text-on-primary);border-color:var(--pink-glow);box-shadow:0 4px 12px var(--pink-glow)}.onboarding-flow .onboarding-review-action-bar .mark-steps-recap:hover{background:linear-gradient(135deg,#f588c0 0%,var(--pink-light) 100%);box-shadow:0 6px 16px var(--pink-glow)}.onboarding-flow .onboarding-review-action-bar .mark-steps-tips{background:linear-gradient(135deg,var(--blue) 0%,var(--blue) 100%);color:var(--text-on-primary);border-color:var(--blue-subtle);box-shadow:0 4px 12px var(--blue-subtle)}.onboarding-flow .onboarding-review-action-bar .mark-steps-tips:hover{background:linear-gradient(135deg,var(--blue) 0%,var(--blue) 100%);box-shadow:0 6px 16px var(--blue-subtle)}}@media(max-height:640px)and (orientation:landscape){.onboarding-flow .onboarding-review-action-bar .portrait-escape-row{display:none}}.question-prompt.instruction-transitioned .question-prompt-question{animation:instructionAttention .6s cubic-bezier(.34,1.56,.64,1)}@keyframes instructionAttention{0%{opacity:0;transform:translateY(14px) scale(.96);color:var(--primary-light);text-shadow:0 0 20px var(--primary-glow)}50%{opacity:1;transform:translateY(-3px) scale(1.03);color:var(--primary-muted);text-shadow:0 0 30px var(--primary-glow)}to{opacity:1;transform:translateY(0) scale(1);color:inherit;text-shadow:none}}.question-prompt.instruction-transitioned .question-prompt-label{animation:labelGlow .8s ease-out}@keyframes labelGlow{0%,to{filter:brightness(1)}30%{filter:brightness(1.3)}}.prep-review-phase{position:relative;overflow:hidden}.prep-review-ambient{position:absolute;inset:0;pointer-events:none;overflow:hidden}.prep-review-glow{position:absolute;border-radius:50%;filter:blur(100px);opacity:0;animation:prep-review-glow-pulse 8s ease-in-out infinite}.prep-review-glow-1{width:600px;height:600px;background:radial-gradient(circle,var(--primary-subtle) 0%,transparent 70%);top:-200px;left:-100px;animation-delay:0s}.prep-review-glow-2{width:500px;height:500px;background:radial-gradient(circle,var(--primary-subtle) 0%,transparent 70%);bottom:-150px;right:-100px;animation-delay:4s}@keyframes prep-review-glow-pulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.prep-review-container{flex:1;display:flex;align-items:center;justify-content:center;padding:32px;position:relative;z-index:1;opacity:0;transform:translateY(20px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}.prep-review-container.prep-review-visible{opacity:1;transform:translateY(0)}.prep-review-card{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:480px;width:100%}.prep-review-mascot{position:relative;width:200px;height:200px;margin-bottom:24px;display:flex;align-items:center;justify-content:center}.prep-review-mascot-glow{position:absolute;inset:-20px;background:radial-gradient(circle,var(--primary-glow) 0%,transparent 70%);border-radius:50%;filter:blur(20px)}.prep-review-mascot-image{position:relative;width:160px;height:160px;object-fit:contain;filter:drop-shadow(0 8px 32px var(--primary-glow));z-index:2}.prep-review-celebration-svg{position:absolute;width:260px;height:260px;color:var(--primary);opacity:.6;z-index:1}.cel-v1-ring{opacity:0;transform-origin:center}.cel-v1-ring-1{animation:cel-v1-appear 1s ease-out .2s forwards,cel-v1-spin-slow 30s linear 1.2s infinite}.cel-v1-ring-2{animation:cel-v1-appear 1s ease-out .4s forwards,cel-v1-spin-med 20s linear 1.4s infinite reverse}.cel-v1-ring-3{animation:cel-v1-appear 1s ease-out .6s forwards,cel-v1-spin-fast 15s linear 1.6s infinite}@keyframes cel-v1-appear{0%{opacity:0;transform:scale(.9)}to{opacity:.5;transform:scale(1)}}@keyframes cel-v1-spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes cel-v1-spin-med{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes cel-v1-spin-fast{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cel-v2-dot{opacity:0;transform-origin:100px 100px}.cel-v2-dot-1{animation:cel-v2-appear .5s ease-out forwards,cel-v2-orbit-outer 12s linear .5s infinite}.cel-v2-dot-2{animation:cel-v2-appear .5s ease-out .3s forwards,cel-v2-orbit-inner 8s linear .8s infinite reverse}.cel-v2-dot-3{animation:cel-v2-appear .5s ease-out .6s forwards,cel-v2-orbit-outer 12s linear 1.1s infinite}.cel-v2-dot-4{animation:cel-v2-appear .5s ease-out .9s forwards,cel-v2-orbit-inner 8s linear 1.4s infinite reverse}@keyframes cel-v2-appear{0%{opacity:0}to{opacity:.8}}@keyframes cel-v2-orbit-outer{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes cel-v2-orbit-inner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cel-v3-breathe{opacity:0;transform-origin:center}.cel-v3-breathe-1{animation:cel-v3-appear .8s ease-out forwards,cel-v3-breathe-anim 4s ease-in-out .8s infinite}.cel-v3-breathe-2{animation:cel-v3-appear .8s ease-out .2s forwards,cel-v3-breathe-anim 4s ease-in-out 1s infinite}.cel-v3-breathe-3{animation:cel-v3-appear .8s ease-out .4s forwards,cel-v3-breathe-anim 4s ease-in-out 1.2s infinite}@keyframes cel-v3-appear{0%{opacity:0;transform:scale(.95)}to{opacity:.5;transform:scale(1)}}@keyframes cel-v3-breathe-anim{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.08);opacity:.3}}.cel-v4-ripple{opacity:0;transform-origin:center;animation:cel-v4-ripple-expand 4s ease-out infinite}.cel-v4-ripple-1{animation-delay:0s}.cel-v4-ripple-2{animation-delay:1.33s}.cel-v4-ripple-3{animation-delay:2.66s}@keyframes cel-v4-ripple-expand{0%{r:35;opacity:0}10%{opacity:.6}to{r:95;opacity:0}}.cel-v5-constellation{transform-origin:100px 100px;animation:cel-v5-rotate 60s linear infinite}.cel-v5-star{opacity:0;animation:cel-v5-star-appear 1.5s ease-out forwards}.cel-v5-star:nth-child(1){animation-delay:0s}.cel-v5-star:nth-child(2){animation-delay:.15s}.cel-v5-star:nth-child(3){animation-delay:.3s}.cel-v5-star:nth-child(4){animation-delay:.45s}.cel-v5-star:nth-child(5){animation-delay:.6s}.cel-v5-star:nth-child(6){animation-delay:.75s}.cel-v5-star:nth-child(7){animation-delay:.9s}@keyframes cel-v5-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes cel-v5-star-appear{0%{opacity:0;transform:scale(.5)}to{opacity:.6;transform:scale(1)}}.cel-v6-star{opacity:0;transform-origin:center;animation:cel-v6-breathe 4s ease-in-out infinite}.cel-v6-star-1,.cel-v6-star-2,.cel-v6-star-3,.cel-v6-star-4,.cel-v6-star-5,.cel-v6-star-6{animation-delay:0s}@keyframes cel-v6-breathe{0%,to{opacity:.3;transform:scale(.85)}50%{opacity:.8;transform:scale(1.1)}}.cel-v7-orbit{transform-origin:100px 100px;animation:cel-v7-spin 15s linear infinite}.cel-v7-star{opacity:0;transform-origin:100px 100px;animation:cel-v7-star-appear .8s ease-out forwards}.cel-v7-star-1{animation-delay:0s}.cel-v7-star-2{animation-delay:.2s}.cel-v7-star-3{animation-delay:.4s}.cel-v7-star-4{animation-delay:.6s}@keyframes cel-v7-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes cel-v7-star-appear{0%{opacity:0}to{opacity:.7}}.cel-v8-star{opacity:0;animation:cel-v8-wave 4s ease-in-out infinite}.cel-v8-star-1{animation-delay:0s}.cel-v8-star-2{animation-delay:.5s}.cel-v8-star-3{animation-delay:1s}.cel-v8-star-4{animation-delay:1.5s}.cel-v8-star-5{animation-delay:2s}.cel-v8-star-6{animation-delay:2.5s}.cel-v8-star-7{animation-delay:3s}.cel-v8-star-8{animation-delay:3.5s}@keyframes cel-v8-wave{0%,to{opacity:.2;transform:scale(.8)}25%{opacity:.9;transform:scale(1.15)}50%{opacity:.2;transform:scale(.8)}}.cel-v9-ray{opacity:0;transform-origin:100px 100px;stroke-dasharray:80;stroke-dashoffset:80;animation:cel-v9-ray-shoot 3s ease-out infinite}.cel-v9-ray-1{animation-delay:0s}.cel-v9-ray-2{animation-delay:.15s}.cel-v9-ray-3{animation-delay:.3s}.cel-v9-ray-4{animation-delay:.45s}.cel-v9-ray-5{animation-delay:.6s}.cel-v9-ray-6{animation-delay:.75s}.cel-v9-ray-7{animation-delay:.9s}.cel-v9-ray-8{animation-delay:1.05s}@keyframes cel-v9-ray-shoot{0%{opacity:0;stroke-dashoffset:80}20%{opacity:.8;stroke-dashoffset:0}to{opacity:0;stroke-dashoffset:-80}}.cel-v9-center{opacity:0;transform-origin:center;animation:cel-v9-center-pulse 2s ease-in-out infinite}@keyframes cel-v9-center-pulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:.8;transform:scale(1.2)}}.cel-v10-arc{opacity:0;stroke-dasharray:100;stroke-dashoffset:100;animation:cel-v10-arc-draw 2.5s ease-out infinite}.cel-v10-arc-1{animation-delay:0s}.cel-v10-arc-2{animation-delay:.12s}.cel-v10-arc-3{animation-delay:.24s}.cel-v10-arc-4{animation-delay:.36s}.cel-v10-arc-5{animation-delay:.48s}.cel-v10-arc-6{animation-delay:.6s}.cel-v10-arc-7{animation-delay:.72s}.cel-v10-arc-8{animation-delay:.84s}@keyframes cel-v10-arc-draw{0%{opacity:0;stroke-dashoffset:100}25%{opacity:.7;stroke-dashoffset:0}to{opacity:0;stroke-dashoffset:-100}}.cel-v10-center{opacity:0;transform-origin:center;animation:cel-v10-center-spin 4s linear infinite}@keyframes cel-v10-center-spin{0%{opacity:.5;transform:scale(1) rotate(0)}50%{opacity:.8;transform:scale(1.15) rotate(180deg)}to{opacity:.5;transform:scale(1) rotate(360deg)}}.cel-v11-sonar{opacity:0;transform-origin:center;animation:cel-v11-sonar-pulse 2.4s ease-out infinite}.cel-v11-sonar-1{animation-delay:0s}.cel-v11-sonar-2{animation-delay:.6s}.cel-v11-sonar-3{animation-delay:1.2s}.cel-v11-sonar-4{animation-delay:1.8s}@keyframes cel-v11-sonar-pulse{0%{r:15;opacity:0;stroke-width:3}15%{opacity:.8}to{r:90;opacity:0;stroke-width:.5}}.cel-v11-center{opacity:0;transform-origin:center;animation:cel-v11-center-beat 1.2s ease-in-out infinite}@keyframes cel-v11-center-beat{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}.cel-v12-particle{opacity:0;animation:cel-v12-explode 3s ease-out infinite}.cel-v12-particle-1{animation-delay:0s;--angle: 0deg;--distance: 75px}.cel-v12-particle-2{animation-delay:.1s;--angle: 30deg;--distance: 80px}.cel-v12-particle-3{animation-delay:.05s;--angle: 60deg;--distance: 70px}.cel-v12-particle-4{animation-delay:.15s;--angle: 90deg;--distance: 85px}.cel-v12-particle-5{animation-delay:.08s;--angle: 120deg;--distance: 72px}.cel-v12-particle-6{animation-delay:.12s;--angle: 150deg;--distance: 78px}.cel-v12-particle-7{animation-delay:.03s;--angle: 180deg;--distance: 82px}.cel-v12-particle-8{animation-delay:.18s;--angle: 210deg;--distance: 68px}.cel-v12-particle-9{animation-delay:.07s;--angle: 240deg;--distance: 76px}.cel-v12-particle-10{animation-delay:.14s;--angle: 270deg;--distance: 84px}.cel-v12-particle-11{animation-delay:.02s;--angle: 300deg;--distance: 73px}.cel-v12-particle-12{animation-delay:.16s;--angle: 330deg;--distance: 79px}@keyframes cel-v12-explode{0%{opacity:0;transform:translate(0) scale(.5)}15%{opacity:.9;transform:translate(calc(cos(var(--angle)) * var(--distance) * .3),calc(sin(var(--angle)) * var(--distance) * .3)) scale(1)}to{opacity:0;transform:translate(calc(cos(var(--angle)) * var(--distance)),calc(sin(var(--angle)) * var(--distance))) scale(.3)}}.cel-v12-center{opacity:0;transform-origin:center;animation:cel-v12-center-flash 3s ease-out infinite}@keyframes cel-v12-center-flash{0%{opacity:0;transform:scale(.5)}10%{opacity:1;transform:scale(1.5)}30%{opacity:.5;transform:scale(1)}to{opacity:.3;transform:scale(.8)}}.prep-review-title{font-size:32px;font-weight:700;color:var(--text-primary);margin:0 0 12px;letter-spacing:-.03em;line-height:1.2}.prep-review-subtitle{font-size:16px;color:var(--text-secondary);margin:0 0 24px;line-height:1.5;font-weight:400}.prep-review-step-count{color:var(--primary-light);font-weight:600}.prep-review-divider{margin:0 8px;opacity:.5}.prep-review-name-field{position:relative;width:100%;max-width:400px;margin-bottom:20px}.prep-review-actions{width:100%;max-width:340px}.prep-review-card .onboarding-actions{width:100%}.prep-review-card .onboarding-actions .btn{width:100%;height:50px;font-weight:600;letter-spacing:-.01em;box-shadow:0 4px 16px var(--primary-glow),0 0 0 1px var(--primary-subtle),inset 0 1px 0 var(--highlight-faint)}.prep-review-name-input{width:100%;height:42px;padding:0 36px 0 14px;border-radius:10px;border:1.5px solid var(--border);background:var(--surface);color:var(--text-primary);font-size:var(--text-sm);font-family:inherit;font-weight:400;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast);box-sizing:border-box}.prep-review-name-input::placeholder{color:var(--text-muted);font-weight:400}.prep-review-name-input:hover{border-color:var(--border-hover)}.prep-review-name-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-subtle);background:var(--bg-primary)}.prep-review-name-input:disabled{opacity:.5;pointer-events:none}.prep-review-name-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;padding:0;transition:all var(--transition-fast)}.prep-review-name-clear:hover{background:var(--highlight-ghost);color:var(--text-secondary)}.prep-review-finish-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 32px;height:52px;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 50%,var(--primary-dark) 100%);border:none;border-radius:14px;color:var(--text-on-primary);font-size:16px;font-weight:600;cursor:pointer;transition:all var(--transition-normal) cubic-bezier(.16,1,.3,1);box-shadow:0 4px 16px var(--primary-glow),0 0 0 1px var(--primary-subtle),inset 0 1px 0 var(--highlight-faint);letter-spacing:-.01em;margin-bottom:16px;min-width:180px}.prep-review-finish-btn:hover{background:linear-gradient(135deg,#9b6cff 0%,var(--primary) 50%,var(--primary-dark) 100%);transform:translateY(-2px);box-shadow:0 8px 24px var(--primary-glow),0 0 0 1px var(--primary-glow),inset 0 1px 0 var(--highlight-subtle)}.prep-review-finish-btn:active{transform:translateY(0);box-shadow:0 2px 8px var(--primary-glow),0 0 0 1px var(--primary-subtle),inset 0 1px 0 var(--highlight-faint)}.prep-review-finish-icon{width:18px;height:18px;transition:transform var(--transition-normal)}.prep-review-finish-btn:hover .prep-review-finish-icon{transform:translate(3px)}.prep-review-secondary-btn{background:transparent;border:none;color:var(--text-tertiary);font-size:var(--text-sm);font-weight:500;cursor:pointer;padding:12px 20px;border-radius:10px;transition:all var(--transition-normal)}.prep-review-secondary-btn:hover{color:var(--text-secondary);background:var(--highlight-ghost)}@media(max-width:600px){.prep-review-container{padding:24px 20px}.prep-review-mascot{width:160px;height:160px;margin-bottom:20px}.prep-review-mascot-image{width:120px;height:120px}.prep-review-celebration-svg{width:200px;height:200px}.prep-review-title{font-size:26px}.prep-review-subtitle{font-size:var(--text-base);margin-bottom:20px}.prep-review-name-field,.prep-review-actions{max-width:100%}.prep-review-finish-btn{width:100%;height:50px;font-size:var(--text-base)}.prep-review-glow-1{width:400px;height:400px}.prep-review-glow-2{width:350px;height:350px}}@media(max-height:600px){.prep-review-mascot{width:140px;height:140px;margin-bottom:16px}.prep-review-mascot-image{width:100px;height:100px}.prep-review-celebration-svg{width:180px;height:180px}.prep-review-title{font-size:24px;margin-bottom:8px}.prep-review-subtitle,.prep-review-name-field{margin-bottom:16px}.prep-review-finish-btn{height:46px}}.review-quicktip-overlay{position:fixed;inset:0;background:var(--overlay-dark);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;animation:quicktip-overlay-enter .3s ease-out}.review-quicktip-overlay.exiting{animation:quicktip-overlay-exit .25s ease-out forwards}@keyframes quicktip-overlay-enter{0%{opacity:0;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}to{opacity:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}@keyframes quicktip-overlay-exit{0%{opacity:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}to{opacity:0;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}}.review-quicktip{background:var(--bg-secondary, #161924);border:1px solid var(--highlight-ghost);border-radius:20px;padding:28px;max-width:420px;width:100%;box-shadow:0 24px 80px var(--shadow-heavy);animation:quicktip-content-enter .4s cubic-bezier(.34,1.56,.64,1)}.review-quicktip-overlay.exiting .review-quicktip{animation:quicktip-content-exit .25s ease-out forwards}@keyframes quicktip-content-enter{0%{opacity:0;transform:translateY(30px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes quicktip-content-exit{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(15px) scale(.98)}}.review-quicktip-header{margin-bottom:20px}.review-quicktip-badge{display:inline-block;background:linear-gradient(135deg,var(--primary-alt) 0%,var(--primary) 100%);color:#fff;font-size:var(--text-xs);font-weight:700;padding:5px 10px;border-radius:6px;text-transform:uppercase;letter-spacing:.6px;margin-bottom:12px;box-shadow:0 2px 8px var(--primary-glow)}.review-quicktip-title{font-size:22px;font-weight:700;margin:0;color:var(--text-primary);letter-spacing:-.02em}.review-quicktip-list{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-direction:column;gap:12px}.review-quicktip-item{display:flex;align-items:center;gap:14px;padding:12px 14px;background:var(--highlight-ghost);border:1px solid var(--highlight-ghost);border-radius:12px;transition:all var(--transition-normal)}.review-quicktip-item:hover{background:var(--highlight-ghost);border-color:var(--highlight-ghost)}.review-quicktip-icon{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--primary-subtle) 100%);display:flex;align-items:center;justify-content:center;flex-shrink:0}.review-quicktip-icon svg{width:18px;height:18px;color:var(--primary-light)}.review-quicktip-text{font-size:var(--text-sm);color:var(--text-secondary, var(--overlay-medium));line-height:1.5;font-weight:450}.review-quicktip-dismiss{width:100%;background:linear-gradient(135deg,var(--primary-alt) 0%,var(--primary) 50%,var(--primary-dark) 100%);background-size:200% 200%;color:#fff;border:none;border-radius:12px;padding:14px;font-size:var(--text-base);font-weight:700;cursor:pointer;transition:all var(--transition-normal),background-position 3s ease-in-out;box-shadow:0 4px 16px var(--primary-glow),0 2px 8px var(--shadow-soft),inset 0 1px 0 var(--highlight-subtle);letter-spacing:.01em}.review-quicktip-dismiss:hover{transform:translateY(-1px);box-shadow:0 6px 20px var(--primary-glow),0 4px 12px var(--shadow-medium),inset 0 1px 0 var(--highlight-soft)}.review-quicktip-dismiss:active{transform:translateY(0)}@media(max-width:480px){.review-quicktip{padding:24px;border-radius:16px}.review-quicktip-title{font-size:20px}.review-quicktip-item{padding:10px 12px;gap:12px}.review-quicktip-icon{width:36px;height:36px;border-radius:8px}.review-quicktip-icon svg{width:16px;height:16px}.review-quicktip-text{font-size:var(--text-sm)}}.add-dropdown{position:relative;display:inline-block}.add-dropdown-trigger{display:flex;align-items:center;gap:6px;padding:10px 14px;border-radius:8px;font-size:var(--text-sm);font-weight:600;font-family:inherit;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.add-dropdown-trigger--secondary:hover:not(:disabled){background:var(--highlight-faint);border-color:var(--highlight-subtle);color:var(--text-primary)}.add-dropdown-trigger--primary:hover:not(:disabled){filter:brightness(1.1)}.add-dropdown--open .add-dropdown-trigger--secondary{background:var(--highlight-ghost);border-color:var(--primary-glow);box-shadow:0 0 0 2px var(--primary-subtle)}.add-dropdown-label{flex:1}.add-dropdown-chevron{width:12px;height:12px;color:currentColor;opacity:.6;flex-shrink:0;transition:transform var(--transition-normal)}.add-dropdown--open .add-dropdown-chevron{transform:rotate(180deg);opacity:.8}.add-dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:160px;max-height:300px;overflow-y:auto;background:var(--surface);border:1px solid var(--highlight-subtle);border-radius:10px;box-shadow:0 4px 6px -1px var(--shadow-medium),0 10px 20px -5px var(--shadow-heavy),0 0 0 1px var(--highlight-ghost) inset;z-index:9999;padding:6px;animation:addDropdownIn .15s ease-out}.add-dropdown-menu--portal{position:fixed;top:auto;left:auto}@keyframes addDropdownIn{0%{opacity:0;transform:translateY(-6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes addDropdownInUp{0%{opacity:0;transform:translateY(6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.add-dropdown--flip-up .add-dropdown-menu{top:auto;bottom:calc(100% + 6px);animation:addDropdownInUp .15s ease-out}.add-dropdown-menu--portal.add-dropdown-menu--flip-up{animation:addDropdownInUp .15s ease-out}.add-dropdown--flip-up.add-dropdown--open .add-dropdown-chevron{transform:rotate(0)}.add-dropdown--flip-up .add-dropdown-chevron{transform:rotate(180deg)}.add-dropdown-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border-radius:6px;font-size:var(--text-sm);font-weight:500;font-family:inherit;color:var(--overlay-heavy);background:transparent;border:none;cursor:pointer;transition:all var(--transition-fast);text-align:left}.add-dropdown-option:hover{background:var(--highlight-ghost);color:var(--text-primary)}.add-dropdown-option-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.add-dropdown-option-label{flex:1}.add-dropdown-menu::-webkit-scrollbar{width:6px}.add-dropdown-menu::-webkit-scrollbar-track{background:transparent}.add-dropdown-menu::-webkit-scrollbar-thumb{background:var(--highlight-subtle);border-radius:3px}.add-dropdown-menu::-webkit-scrollbar-thumb:hover{background:var(--highlight-soft)}@media(max-width:960px){.add-dropdown-trigger{padding:8px 12px;font-size:var(--text-sm)}.add-dropdown-option{padding:8px 10px;font-size:var(--text-sm)}}@media(max-width:600px){.add-dropdown{flex:1}.add-dropdown-trigger{width:100%;justify-content:center;padding:14px 16px}.add-dropdown-menu{min-width:100%}}.spotlight-backdrop{position:fixed;inset:0;background:#000000b3;z-index:9998;pointer-events:auto;cursor:pointer;user-select:none;-webkit-user-select:none;animation:spotlightBackdropFadeIn .2s ease-out}@keyframes spotlightBackdropFadeIn{0%{opacity:0}to{opacity:1}}.spotlight-toolbar-host{z-index:10002}.spotlight-actionbar{display:flex;align-items:center;gap:clamp(6px,1.5vw,10px);padding:clamp(4px,1vw,6px) clamp(6px,1.5vw,8px);background:var(--spotlight-bg, rgba(10, 10, 15, .92));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--spotlight-border, var(--highlight-subtle));border-radius:12px;box-shadow:var(--spotlight-shadow, 0 8px 32px var(--overlay-dark), 0 2px 8px var(--shadow-heavy), inset 0 1px 0 var(--highlight-ghost));animation:spotlightActionBarIn .2s cubic-bezier(.16,1,.3,1);box-sizing:border-box;max-width:calc(100vw - 24px);overflow-x:auto;overflow-y:hidden;overscroll-behavior:contain;scrollbar-width:none;-ms-overflow-style:none}.spotlight-actionbar::-webkit-scrollbar{display:none}@keyframes spotlightActionBarIn{0%{opacity:0;filter:blur(2px)}to{opacity:1;filter:blur(0px)}}.spotlight-actionbar-group{display:flex;align-items:center;background:transparent;border:1px solid var(--spotlight-border, var(--highlight-faint));border-radius:10px;overflow:hidden}.spotlight-actionbar-group .spotlight-action{border-radius:0;background:transparent;border:none}.spotlight-actionbar-group .spotlight-action:first-child{border-radius:9px 0 0 9px}.spotlight-actionbar-group .spotlight-action:last-child{border-radius:0 9px 9px 0}.spotlight-actionbar-group .spotlight-action:only-child{border-radius:9px}.spotlight-actionbar-group .spotlight-action+.spotlight-action{border-left:1px solid var(--spotlight-border, var(--highlight-ghost))}.spotlight-actionbar-group .spotlight-action:hover:not(:disabled){background:var(--highlight-faint)}.spotlight-cancel{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:var(--spotlight-btn-bg, var(--highlight-ghost));border:1px solid var(--spotlight-border, var(--highlight-subtle));border-radius:8px;color:var(--spotlight-text-muted, var(--overlay-medium));cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;-webkit-tap-highlight-color:transparent}.spotlight-cancel svg{width:16px;height:16px}.spotlight-cancel:hover{background:var(--danger-subtle);border-color:var(--danger-subtle);color:var(--danger-muted)}.spotlight-cancel:active{transform:scale(.92);background:var(--danger-subtle)}.spotlight-action{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:44px;min-height:36px;padding:6px 10px;border:none;border-radius:8px;font-size:max(10px,var(--text-xs));font-weight:600;letter-spacing:.02em;text-transform:uppercase;cursor:pointer;transition:all var(--transition-fast);background:transparent;color:var(--spotlight-text, var(--overlay-medium));-webkit-tap-highlight-color:transparent}.spotlight-action svg{width:18px;height:18px;flex-shrink:0;opacity:.9}.spotlight-action-label{white-space:nowrap}.spotlight-action:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.spotlight-action:hover:not(:disabled){background:var(--spotlight-hover-bg, var(--highlight-subtle));color:var(--spotlight-text-hover, var(--overlay-heavy));transform:translateY(-1px)}.spotlight-action:active:not(:disabled){transform:translateY(0) scale(.97);background:var(--spotlight-active-bg, var(--highlight-soft))}.spotlight-action--icon-only{width:36px;height:36px;min-width:36px;min-height:36px;padding:0;background:var(--spotlight-btn-bg, var(--highlight-ghost));border:1px solid var(--spotlight-border, var(--highlight-subtle))}.spotlight-action--icon-only svg{width:16px;height:16px}.spotlight-action--icon-only:hover:not(:disabled){background:var(--primary-subtle, rgba(167, 139, 250, .2));border-color:var(--primary-border, rgba(167, 139, 250, .4));color:var(--primary, rgb(196, 181, 253));transform:none}.spotlight-action--icon-only:active:not(:disabled){transform:scale(.92);background:var(--primary-subtle, rgba(167, 139, 250, .3))}@media(max-width:600px){.spotlight-cancel{display:none}.spotlight-actionbar{gap:4px;padding:4px 6px;border-radius:10px}.spotlight-action{width:auto;min-width:48px;min-height:52px;height:auto;padding:8px 14px 6px;gap:3px;flex-direction:column;text-transform:none;flex-shrink:0}.spotlight-action svg{width:22px;height:22px;flex-shrink:0}.spotlight-action-label{display:block;font-size:14px;font-weight:500;letter-spacing:0;line-height:1.2;text-transform:none;white-space:nowrap;text-align:center;overflow:visible}.spotlight-action--icon-only{width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border-radius:10px}.spotlight-action--icon-only svg{width:20px;height:20px}.spotlight-actionbar-group{border-radius:8px}.spotlight-actionbar-group .spotlight-action:first-child{border-radius:7px 0 0 7px}.spotlight-actionbar-group .spotlight-action:last-child{border-radius:0 7px 7px 0}.spotlight-actionbar-group .spotlight-action:only-child{border-radius:7px}}@media(max-width:360px){.spotlight-actionbar{gap:3px;padding:3px 5px}.spotlight-action{padding:6px 10px 5px;min-height:48px;gap:2px}.spotlight-action-label{font-size:13px}.spotlight-action svg{width:20px;height:20px}.spotlight-action--icon-only{width:42px;height:42px;min-width:42px;min-height:42px}}@media(max-width:320px){.spotlight-actionbar{gap:2px;padding:3px 4px}.spotlight-action-label{display:none}.spotlight-action{width:44px;min-width:44px;min-height:44px;padding:0;gap:0}}@keyframes marchingAnts{0%{stroke-dashoffset:0}to{stroke-dashoffset:-16}}@keyframes inlineCropFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.inline-crop-overlay{z-index:9999;overflow:visible;animation:inlineCropFadeIn .2s cubic-bezier(.16,1,.3,1);touch-action:none;user-select:none;-webkit-user-select:none}.inline-crop-player-actions{position:fixed;left:0;right:0;bottom:0;z-index:10003;pointer-events:none}.inline-crop-player-actions-bar{pointer-events:auto;padding:10px 12px calc(12px + var(--safe-area-bottom, 0px));display:flex;flex-direction:column;gap:10px;color:#fff;background:linear-gradient(to top,#000000bf,#0000008c 55%,#0000)}.inline-crop-player-actions-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:6px}.inline-crop-player-slot.placeholder{visibility:hidden}.inline-crop-player-btn{border:none;background:transparent;color:#fff;padding:6px 4px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;opacity:.95;transition:transform var(--transition-fast),opacity var(--transition-fast);-webkit-tap-highlight-color:transparent}.inline-crop-player-btn svg{width:22px;height:22px;stroke:currentColor}.inline-crop-player-btn:hover:not(:disabled){opacity:1}.inline-crop-player-btn:active:not(:disabled){transform:scale(.96)}.inline-crop-player-btn.success{color:#4ade80;animation:cropActionSuccess .3s cubic-bezier(.16,1,.3,1)}.inline-crop-player-btn.success svg{animation:cropSuccessIconPop .3s cubic-bezier(.34,1.56,.64,1)}@keyframes cropActionSuccess{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes cropSuccessIconPop{0%{transform:scale(.5);opacity:0}60%{transform:scale(1.2);opacity:1}to{transform:scale(1);opacity:1}}.inline-crop-player-label{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;opacity:.85}.inline-crop-gif-toggle{display:flex;align-items:center;align-self:center;gap:6px;border:1px solid rgba(255,255,255,.3);background:#ffffff1a;color:#ffffffd9;padding:5px 14px 5px 10px;border-radius:100px;font-size:12px;font-weight:700;letter-spacing:.04em;cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);-webkit-tap-highlight-color:transparent}.inline-crop-gif-toggle svg{width:16px;height:16px;flex-shrink:0}.inline-crop-gif-toggle.active{background:var(--primary, #e07b4a);border-color:var(--primary, #e07b4a);color:#fff}.inline-crop-gif-toggle:active{transform:scale(.96)}.inline-crop-desktop-btn.gif-active{color:var(--primary, #e07b4a);background-color:var(--primary-subtle, rgba(224, 123, 74, .12))}.inline-crop-desktop-btn.gif-active:hover{background-color:var(--primary-subtle, rgba(224, 123, 74, .18))}.inline-crop-overlay *{user-select:none;-webkit-user-select:none}.inline-crop-box{position:absolute;cursor:move;overflow:visible;border:none;border-radius:6px;box-shadow:0 0 0 1px var(--overlay-subtle),0 0 20px var(--primary-subtle),0 0 40px var(--primary-subtle);transition:box-shadow var(--transition-normal);will-change:left,top,width,height;contain:layout style}.inline-crop-box.dragging{box-shadow:0 0 0 1px var(--overlay-medium);transition:none}.inline-crop-border{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:visible}.inline-crop-border rect{fill:none;stroke:#fff;stroke-width:2px;stroke-dasharray:8 6;vector-effect:non-scaling-stroke;animation:marchingAnts .5s linear infinite}.inline-crop-box.dragging .inline-crop-border rect{animation:none}.inline-crop-border-shadow{position:absolute;inset:0;pointer-events:none;border:2px solid var(--shadow-heavy);border-radius:6px}.inline-crop-crosshairs{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity var(--transition-fast)}.inline-crop-box.dragging .inline-crop-crosshairs{opacity:1}.inline-crop-crosshairs:before,.inline-crop-crosshairs:after{content:"";position:absolute;background:var(--overlay-medium)}.inline-crop-crosshairs:before{left:50%;top:0;bottom:0;width:1px;transform:translate(-.5px)}.inline-crop-crosshairs:after{top:50%;left:0;right:0;height:1px;transform:translateY(-.5px)}.inline-crop-center-dot{position:absolute;top:50%;left:50%;width:6px;height:6px;background:#fff;border:1px solid var(--shadow-medium);border-radius:50%;transform:translate(-50%,-50%);opacity:0;transition:opacity var(--transition-fast);pointer-events:none}.inline-crop-box.dragging .inline-crop-center-dot{opacity:1}.inline-crop-grid{position:absolute;inset:0;pointer-events:none}.inline-crop-grid .grid-line{position:absolute;background:var(--highlight-soft)}.inline-crop-grid .grid-line.horizontal{left:0;right:0;height:1px}.inline-crop-grid .grid-line.vertical{top:0;bottom:0;width:1px}.inline-crop-handle.corner{position:absolute;width:44px;height:44px;z-index:10;background:transparent}.inline-crop-handle.corner .handle-arm{position:absolute;background:var(--overlay-heavy);border-radius:1.5px;box-shadow:0 1px 3px var(--shadow-heavy),0 0 0 .5px var(--shadow-subtle);transition:all var(--transition-fast)}.inline-crop-handle.corner .handle-arm.horizontal{width:20px;height:3px}.inline-crop-handle.corner .handle-arm.vertical{width:3px;height:20px}.inline-crop-handle.corner.nw{top:0;left:0;cursor:nw-resize}.inline-crop-handle.corner.nw .handle-arm.horizontal,.inline-crop-handle.corner.nw .handle-arm.vertical{top:4px;left:4px}.inline-crop-handle.corner.ne{top:0;right:0;cursor:ne-resize}.inline-crop-handle.corner.ne .handle-arm.horizontal,.inline-crop-handle.corner.ne .handle-arm.vertical{top:4px;right:4px}.inline-crop-handle.corner.sw{bottom:0;left:0;cursor:sw-resize}.inline-crop-handle.corner.sw .handle-arm.horizontal,.inline-crop-handle.corner.sw .handle-arm.vertical{bottom:4px;left:4px}.inline-crop-handle.corner.se{bottom:0;right:0;cursor:se-resize}.inline-crop-handle.corner.se .handle-arm.horizontal,.inline-crop-handle.corner.se .handle-arm.vertical{bottom:4px;right:4px}.inline-crop-handle.corner:hover .handle-arm{background:var(--surface);box-shadow:0 0 8px var(--overlay-medium),0 1px 4px var(--shadow-medium),0 0 0 .5px var(--overlay-subtle);transform:scale(1.15)}.inline-crop-handle.corner:active .handle-arm{background:linear-gradient(135deg,var(--primary-muted) 0%,var(--primary-light) 100%);box-shadow:0 0 12px var(--primary-glow),0 1px 4px var(--shadow-medium);transform:scale(1.2)}.inline-crop-handle.edge{position:absolute;z-index:5;opacity:0}.inline-crop-handle.edge.n,.inline-crop-handle.edge.s{left:44px;right:44px;height:24px;cursor:ns-resize}.inline-crop-handle.edge.n{top:0}.inline-crop-handle.edge.s{bottom:0}.inline-crop-handle.edge.w,.inline-crop-handle.edge.e{top:44px;bottom:44px;width:24px;cursor:ew-resize}.inline-crop-handle.edge.w{left:0}.inline-crop-handle.edge.e{right:0}.inline-crop-handle.edge:after{content:"";position:absolute;background:var(--overlay-medium);border-radius:2px;box-shadow:0 1px 3px var(--shadow-medium)}.inline-crop-handle.edge:hover{opacity:1}.inline-crop-handle.edge.n:after,.inline-crop-handle.edge.s:after{left:50%;transform:translate(-50%);width:32px;height:3px;top:50%;margin-top:-1.5px}.inline-crop-handle.edge.w:after,.inline-crop-handle.edge.e:after{top:50%;transform:translateY(-50%);width:3px;height:32px;left:50%;margin-left:-1.5px}@media(max-width:600px),(pointer:coarse){.inline-crop-handle.corner .handle-arm.horizontal{width:24px;height:4px}.inline-crop-handle.corner .handle-arm.vertical{width:4px;height:24px}.inline-crop-handle.corner.nw .handle-arm.horizontal,.inline-crop-handle.corner.nw .handle-arm.vertical{top:6px;left:6px}.inline-crop-handle.corner.ne .handle-arm.horizontal,.inline-crop-handle.corner.ne .handle-arm.vertical{top:6px;right:6px}.inline-crop-handle.corner.sw .handle-arm.horizontal,.inline-crop-handle.corner.sw .handle-arm.vertical{bottom:6px;left:6px}.inline-crop-handle.corner.se .handle-arm.horizontal,.inline-crop-handle.corner.se .handle-arm.vertical{bottom:6px;right:6px}.inline-crop-handle.edge{display:none}}.inline-crop-desktop-toolbar{display:flex;align-items:center;gap:2px;padding:4px;background:var(--spotlight-bg, rgba(255, 255, 255, .98));border:1px solid var(--spotlight-border, var(--border));border-radius:12px;box-shadow:0 1px 3px var(--shadow-ghost),0 4px 16px var(--shadow-subtle),0 16px 48px -12px var(--shadow-subtle);animation:inlineCropDesktopFadeIn .15s ease-out}@keyframes inlineCropDesktopFadeIn{0%{opacity:0}to{opacity:1}}.inline-crop-desktop-sep{width:1px;align-self:stretch;margin:6px 2px;background:var(--spotlight-border, var(--border));flex-shrink:0}.inline-crop-desktop-btn{position:relative;border:none;background:transparent;color:var(--spotlight-text, var(--text-secondary));padding:7px 11px 5px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:8px;outline:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:color var(--transition-fast),background-color var(--transition-fast),box-shadow var(--transition-fast),transform .1s ease}.inline-crop-desktop-btn svg{width:18px;height:18px;flex-shrink:0;transition:transform .15s cubic-bezier(.16,1,.3,1)}.inline-crop-desktop-btn:focus-visible{box-shadow:0 0 0 2px var(--primary)}.inline-crop-desktop-btn:hover{color:var(--spotlight-text-hover, var(--text-primary));background-color:var(--spotlight-hover-bg, var(--surface-hover))}.inline-crop-desktop-btn:hover svg{transform:scale(1.1)}.inline-crop-desktop-btn:active{transform:scale(.95);background-color:var(--spotlight-active-bg, var(--surface-alt))}.inline-crop-desktop-btn:active svg{transform:scale(.95)}.inline-crop-desktop-btn.primary{color:var(--primary)}.inline-crop-desktop-btn.primary:hover{color:var(--primary-dark, var(--primary));background-color:var(--primary-subtle, rgba(224, 123, 74, .12))}.inline-crop-desktop-btn.primary:active{background-color:var(--primary-subtle, rgba(224, 123, 74, .18))}.inline-crop-desktop-btn.danger:hover{color:var(--danger, #D9534F);background-color:var(--danger-subtle, rgba(239, 68, 68, .08))}.inline-crop-desktop-btn.danger:active{color:var(--danger, #D9534F);background-color:var(--danger-subtle, rgba(239, 68, 68, .14))}.inline-crop-desktop-btn.success{color:var(--success, #5CA86C);background-color:var(--success-subtle, rgba(92, 168, 108, .08))}.inline-crop-desktop-btn.success svg{animation:cropDesktopSuccessPop .35s cubic-bezier(.34,1.56,.64,1)}@keyframes cropDesktopSuccessPop{0%{transform:scale(.4);opacity:0}50%{transform:scale(1.2);opacity:1}to{transform:scale(1);opacity:1}}.inline-crop-desktop-label{font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;line-height:1;opacity:.7;transition:opacity var(--transition-fast)}.inline-crop-desktop-btn.primary .inline-crop-desktop-label{font-weight:700;opacity:.85}.inline-crop-desktop-btn:hover .inline-crop-desktop-label{opacity:1}.inline-crop-compact-actions{z-index:10003;display:flex;align-items:center;gap:0;padding:4px;background:var(--spotlight-bg, rgba(255, 255, 255, .98));border:1px solid var(--spotlight-border, var(--border));border-radius:12px;box-shadow:0 1px 3px var(--shadow-ghost),0 4px 16px var(--shadow-subtle),0 8px 32px -8px var(--shadow-subtle);animation:inlineCropDesktopFadeIn .15s ease-out;pointer-events:auto}.inline-crop-compact-btn{border:none;background:transparent;color:var(--spotlight-text, var(--text-secondary));padding:7px 16px;cursor:pointer;display:flex;align-items:center;gap:5px;border-radius:8px;font-size:13px;font-weight:600;letter-spacing:.02em;white-space:nowrap;transition:color var(--transition-fast),background-color var(--transition-fast),transform .1s ease;-webkit-tap-highlight-color:transparent}.inline-crop-compact-btn svg{width:15px;height:15px;flex-shrink:0}.inline-crop-compact-btn:hover{background:var(--spotlight-hover-bg, var(--surface-hover));color:var(--spotlight-text-hover, var(--text-primary))}.inline-crop-compact-btn:active{transform:scale(.96)}.inline-crop-compact-btn.primary{color:var(--primary)}.inline-crop-compact-btn.primary:hover{background:var(--primary-subtle, rgba(224, 123, 74, .12));color:var(--primary-dark, var(--primary))}.inline-crop-compact-sep{width:1px;align-self:stretch;margin:4px 0;background:var(--spotlight-border, var(--border));flex-shrink:0}.inline-crop-box.inset .inline-crop-handle.edge{display:none}.video-slot{position:relative;width:100%;height:100%;overflow:hidden;background:var(--letterbox-color, #000)}.video-slot-media{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:0}.video-slot-media video,.video-slot-media .clip-player,.video-slot-media .clip-video-wrapper{width:100%;height:100%}.video-slot-media .clip-video-wrapper{transform:var(--video-transform, none);transform-origin:var(--video-transform-origin, center center)}.video-slot-media>video{transform:var(--video-transform, none);transform-origin:var(--video-transform-origin, center center)}.video-slot-poster-wrapper{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;will-change:opacity;-webkit-tap-highlight-color:transparent}.video-slot-poster-wrapper.visible{opacity:1;pointer-events:auto;transition:none}.video-slot-poster-wrapper.hidden{opacity:0;pointer-events:none;transition:opacity var(--transition-fast)}.video-slot-poster{width:100%;height:100%;object-fit:var(--grid-video-object-fit, contain);transform:var(--video-transform, none);transform-origin:var(--video-transform-origin, center center)}.video-slot-overlay{position:absolute;inset:0;z-index:2;pointer-events:none}.crop-phase{position:relative;overflow:hidden}.crop-phase-ambient{position:absolute;inset:0;pointer-events:none;overflow:hidden}.crop-phase-glow{position:absolute;border-radius:50%;filter:blur(120px);opacity:0;animation:crop-phase-glow-pulse 10s ease-in-out infinite}.crop-phase-glow-1{width:500px;height:500px;background:radial-gradient(circle,var(--primary-subtle) 0%,transparent 70%);top:-150px;right:-100px;animation-delay:0s}.crop-phase-glow-2{width:400px;height:400px;background:radial-gradient(circle,var(--primary-subtle) 0%,transparent 70%);bottom:-100px;left:-100px;animation-delay:5s}@keyframes crop-phase-glow-pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.8;transform:scale(1.15)}}.crop-phase-container{flex:1;min-height:0;display:flex;flex-direction:column;padding:0;position:relative;z-index:1;overflow:hidden;opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}.crop-phase-container.crop-phase-visible{opacity:1;transform:translateY(0)}.crop-phase-header{margin:0;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}.crop-phase-header-meta{display:flex;align-items:center;gap:10px;font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary, var(--overlay-medium))}.crop-phase-header-pill{padding:6px 12px;border-radius:999px;background:var(--highlight-ghost);border:1px solid var(--highlight-subtle);font-weight:600}.crop-phase-header-divider{width:24px;height:1px;background:var(--highlight-subtle)}.crop-phase-header-chip{padding:6px 12px;border-radius:999px;background:var(--primary-subtle);border:1px solid var(--primary-glow);color:var(--overlay-heavy);font-weight:600}.crop-phase-title{font-size:28px;font-weight:700;color:var(--text-primary);margin:0;letter-spacing:-.03em;line-height:1.2}.crop-phase-subtitle{font-size:var(--text-base);color:var(--text-secondary);margin:0;line-height:1.5;font-weight:400;max-width:460px}.crop-phase-preview-wrapper{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;margin:0;padding-top:6px}.crop-phase-device-frame{position:absolute;top:-14px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:6px;padding:6px 14px;background:#0c0c10eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--highlight-subtle);border-radius:999px;z-index:10;box-shadow:0 6px 18px var(--shadow-medium);opacity:1;transition:opacity var(--transition-normal)}.crop-phase-device-frame.cropping{opacity:0;pointer-events:none}.crop-phase-device-icon{width:16px;height:16px;color:var(--primary)}.crop-phase-device-icon svg{width:100%;height:100%}.crop-phase-device-label{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--overlay-medium)}.crop-phase-video-container{position:relative;height:100%;max-height:100%;width:auto;max-width:min(100%,var(--crop-phase-max-width, 520px));margin:0 auto;background:var(--letterbox-color);border-radius:16px;overflow:hidden;box-shadow:0 10px 30px var(--shadow-medium),0 0 0 1px var(--highlight-ghost),inset 0 0 0 1px var(--highlight-ghost);transition:all var(--transition-slow) cubic-bezier(.16,1,.3,1);opacity:0}.crop-phase-video-container.crop-phase-video-container--primed{opacity:1}.crop-phase-video-container.is-cropping{box-shadow:0 14px 36px var(--primary-subtle),0 0 0 1px var(--primary-glow),inset 0 0 0 1px var(--highlight-ghost)}.crop-phase-video-container.desktop{--crop-phase-max-width: 420px}.crop-phase-video-container.mobile{--crop-phase-max-width: 240px}.crop-phase-video{width:100%;height:100%;object-fit:contain;display:block}.crop-phase-edit-btn{position:absolute;bottom:12px;right:12px;display:flex;align-items:center;gap:6px;padding:10px 16px;background:#0a0a0eeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid transparent;border-radius:10px;color:var(--text-on-primary);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-normal) cubic-bezier(.16,1,.3,1);z-index:5;opacity:1;box-shadow:0 10px 20px var(--shadow-medium),0 0 0 1px var(--highlight-soft)}.crop-phase-edit-btn.cropping{opacity:0;pointer-events:none}.crop-phase-edit-btn svg{width:16px;height:16px}.crop-phase-edit-btn:hover{background:var(--primary);transform:scale(1.05);box-shadow:0 6px 18px var(--primary-glow),0 0 0 1px var(--primary-border)}.crop-phase-edit-btn:active{transform:scale(.98)}.crop-phase-helper{font-size:var(--text-sm);color:var(--text-tertiary, var(--overlay-medium));margin:0 0 16px;font-weight:400;max-width:460px;text-align:center}.crop-phase-bottom{width:100%;display:flex;flex-direction:column;align-items:center;gap:6px}.crop-phase-actions{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}.crop-phase-skip-btn{display:flex;align-items:center;justify-content:center;padding:0 20px;height:46px;background:transparent;border:1px solid var(--highlight-subtle);border-radius:12px;color:var(--text-tertiary, var(--overlay-medium));font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-normal) cubic-bezier(.16,1,.3,1)}.crop-phase-skip-btn:hover{background:var(--highlight-ghost);border-color:var(--highlight-soft);color:var(--text-secondary)}.crop-phase-back-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:0 18px;height:46px;background:var(--highlight-ghost);border:1px solid var(--highlight-subtle);border-radius:12px;color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-normal) cubic-bezier(.16,1,.3,1)}.crop-phase-back-btn svg{width:16px;height:16px}.crop-phase-back-btn:hover{background:var(--highlight-subtle);border-color:var(--highlight-soft);color:var(--text-primary)}.crop-phase-next-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:0 24px;height:48px;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-hover) 100%);border:none;border-radius:12px;color:var(--text-on-primary);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all var(--transition-normal) cubic-bezier(.16,1,.3,1);box-shadow:0 4px 16px var(--primary-glow),0 0 0 1px var(--primary-subtle)}.crop-phase-next-btn svg{width:18px;height:18px;transition:transform var(--transition-normal)}.crop-phase-next-btn:hover{background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary) 100%);transform:translateY(-2px);box-shadow:0 8px 24px var(--primary-border),0 0 0 1px var(--primary-glow)}.crop-phase-next-btn:hover svg{transform:translate(3px)}.crop-phase-next-btn:active{transform:translateY(0)}.crop-phase-finish-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:0 28px;height:48px;background:linear-gradient(135deg,var(--success) 0%,var(--success-hover) 100%);border:none;border-radius:14px;color:var(--text-on-primary);font-size:16px;font-weight:600;cursor:pointer;transition:all var(--transition-normal) cubic-bezier(.16,1,.3,1);box-shadow:0 4px 16px var(--success-glow),0 0 0 1px var(--success-border);letter-spacing:-.01em}.crop-phase-finish-btn svg{width:18px;height:18px}.crop-phase-finish-btn:hover{background:linear-gradient(135deg,var(--success-light) 0%,var(--success) 100%);transform:translateY(-2px);box-shadow:0 8px 24px var(--success-glow),0 0 0 1px var(--success-glow)}.crop-phase-finish-btn:active{transform:translateY(0)}.crop-phase-finish-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.crop-phase-reassurance{font-size:var(--text-xs);color:var(--text-muted, var(--overlay-subtle));margin:0;font-weight:400}.crop-phase-edit-btn:focus-visible,.crop-phase-skip-btn:focus-visible,.crop-phase-back-btn:focus-visible,.crop-phase-next-btn:focus-visible,.crop-phase-finish-btn:focus-visible{outline:2px solid var(--primary-border);outline-offset:2px}@media(max-width:600px){.crop-phase-container{padding:0}.crop-phase-header{margin-top:4px}.crop-phase-title{font-size:22px}.crop-phase-subtitle{font-size:var(--text-sm)}.crop-phase-header-meta{flex-wrap:wrap;justify-content:center}.crop-phase-video-container.desktop{max-width:100%}.crop-phase-video-container.mobile{max-width:240px}.crop-phase-edit-btn{padding:12px 18px;font-size:var(--text-base)}.crop-phase-actions{flex-direction:column;width:100%;gap:10px}.crop-phase-skip-btn,.crop-phase-back-btn,.crop-phase-next-btn,.crop-phase-finish-btn{width:100%;justify-content:center}.crop-phase-next-btn,.crop-phase-finish-btn{order:-1}.crop-phase-helper{margin-bottom:12px}.crop-phase-reassurance{display:none}}@media(max-height:700px){.crop-phase-header{margin-bottom:16px}.crop-phase-title{font-size:22px;margin-bottom:6px}.crop-phase-subtitle{font-size:var(--text-sm)}.crop-phase-preview-wrapper{margin-bottom:16px}.crop-phase-video-container.desktop{max-width:380px}.crop-phase-video-container.mobile{max-width:200px}.crop-phase-helper{margin-bottom:16px}.crop-phase-reassurance{display:none}}.mode-choice-container{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;position:relative;overflow:hidden}.mode-choice-container:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 90% 60% at 50% 0%,var(--primary-subtle),transparent 55%),radial-gradient(ellipse 80% 50% at 50% 100%,var(--primary-subtle),transparent 55%);animation:mode-choice-breathe 4s ease-in-out infinite;opacity:.9;pointer-events:none}@keyframes mode-choice-breathe{0%,to{opacity:1}50%{opacity:.74}}.mode-choice-content{max-width:620px;width:100%;text-align:center;position:relative;z-index:1;animation:mode-choice-content-enter .6s cubic-bezier(.16,1,.3,1)}@keyframes mode-choice-content-enter{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.mode-choice-title{font-size:34px;font-weight:800;margin:0 0 12px;letter-spacing:-.02em;line-height:1.2;color:var(--text-primary)}.mode-choice-subtitle{font-size:17px;color:var(--text-secondary);margin:0 0 36px;line-height:1.6}.mode-choice-cards{display:flex;gap:16px;margin-bottom:24px}.mode-choice-card{flex:1;background:var(--surface-secondary, var(--highlight-ghost));border:2px solid var(--border-primary, var(--shadow-subtle));border-radius:16px;padding:24px;cursor:pointer;text-align:left;position:relative;overflow:hidden;transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.mode-choice-card.selected{border-color:var(--primary-alt);background:var(--primary-alt-subtle, var(--primary-subtle))}.mode-choice-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--shadow-subtle)}.mode-choice-card:active{transform:translateY(0)}.mode-choice-card-radio{position:absolute;top:16px;right:16px;width:20px;height:20px;border-radius:50%;border:2px solid var(--border-primary, var(--shadow-soft));background:transparent}.mode-choice-card-radio:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);width:10px;height:10px;border-radius:50%;background:var(--primary-alt);transition:transform var(--transition-fast)}.mode-choice-card.selected .mode-choice-card-radio{border-color:var(--primary-alt)}.mode-choice-card.selected .mode-choice-card-radio:after{transform:translate(-50%,-50%) scale(1)}.mode-choice-card-icon{width:56px;height:56px;border-radius:14px;background:var(--surface-tertiary, var(--shadow-ghost));display:flex;align-items:center;justify-content:center;margin-bottom:16px;color:var(--text-secondary)}.mode-choice-card.selected .mode-choice-card-icon{background:var(--primary-alt);color:#fff}.mode-choice-card-title{font-size:18px;font-weight:700;margin:0 0 8px;color:var(--text-primary);letter-spacing:-.01em;position:relative;z-index:1;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.mode-choice-card-description{font-size:var(--text-sm);color:var(--text-secondary);margin:0;line-height:1.6;position:relative;z-index:1}.mode-choice-card-badge{display:inline-flex;background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--primary-subtle) 100%);color:var(--primary-alt);font-size:var(--text-xs);font-weight:700;padding:4px 8px;border-radius:6px;text-transform:uppercase;letter-spacing:.5px}.mode-choice-actions{display:flex;flex-direction:column;align-items:center;gap:0}.mode-choice-remember{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:16px;cursor:pointer;padding:12px 20px;background:var(--surface-secondary, var(--shadow-ghost));border:1px solid var(--border-primary, var(--shadow-subtle));border-radius:10px;opacity:0;visibility:hidden;transition:opacity var(--transition-normal),visibility var(--transition-normal)}.mode-choice-remember.visible{opacity:1;visibility:visible}.mode-choice-remember.visible:hover{background:var(--surface-hover, var(--shadow-ghost));border-color:var(--border-hover, var(--shadow-soft))}.mode-choice-remember input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--primary-alt)}.mode-choice-remember-text{font-size:var(--text-sm);color:var(--text-secondary);font-weight:500}.mode-choice-continue{background:linear-gradient(135deg,var(--primary-alt) 0%,var(--primary) 100%);color:#fff;border:none;border-radius:14px;padding:16px 40px;font-size:16px;font-weight:700;cursor:pointer;transition:all var(--transition-normal);box-shadow:0 8px 32px var(--primary-glow),0 4px 12px var(--shadow-soft),inset 0 1px 0 var(--highlight-subtle);letter-spacing:.01em}.mode-choice-continue:hover:not(:disabled){transform:translateY(-2px) scale(1.01);box-shadow:0 12px 40px var(--primary-border),0 6px 16px var(--shadow-medium),inset 0 1px 0 var(--highlight-soft)}.mode-choice-continue:active:not(:disabled){transform:translateY(0) scale(.99)}.mode-choice-continue:disabled{opacity:.4;cursor:not-allowed;animation:none;box-shadow:none}@media(max-width:600px){.mode-choice-container{padding:32px 20px}.mode-choice-cards{flex-direction:column;gap:12px}.mode-choice-title{font-size:26px}.mode-choice-subtitle{font-size:var(--text-base);margin-bottom:28px}.mode-choice-card{padding:20px}.mode-choice-card-icon{width:48px;height:48px;border-radius:12px}.mode-choice-card-title{font-size:16px}.mode-choice-card-description{font-size:var(--text-sm)}.mode-choice-card-radio{top:14px;right:14px;width:18px;height:18px}.mode-choice-card-radio:after{width:8px;height:8px}.mode-choice-continue{width:100%;padding:16px 32px}}.persistent-video-layer{position:fixed;top:0;left:0;width:0;height:0;pointer-events:none;z-index:-9999;overflow:hidden;opacity:0}.persistent-video-element{width:100%;height:100%;object-fit:contain}.already-submitted-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:9999;padding:24px;animation:fadeIn .2s ease-out}.already-submitted-modal{background:var(--bg-secondary, #1a1a2e);border-radius:16px;padding:32px;max-width:400px;width:100%;display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;animation:slideUp .3s ease-out;border:1px solid var(--border-subtle, rgba(255, 255, 255, .1))}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.already-submitted-icon{width:64px;height:64px;color:var(--accent-color, #6366f1)}.already-submitted-icon svg{width:100%;height:100%}.already-submitted-title{font-size:24px;font-weight:700;color:var(--text-primary, #fff);margin:0}.already-submitted-message{font-size:15px;color:var(--text-secondary, rgba(255, 255, 255, .7));margin:0;line-height:1.5}.already-submitted-btn{margin-top:8px;padding:12px 32px;border-radius:8px;border:none;background:var(--accent-color, #6366f1);color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:background .15s ease,transform .1s ease}.already-submitted-btn:hover{background:var(--accent-hover, #5558e3)}.already-submitted-btn:active{transform:scale(.98)}body.capacitor-native .question-prompt-label{display:none}body.capacitor-native .question-prompt-question{font-size:clamp(22px,5vw,28px);line-height:1.35}body.capacitor-native .question-prompt-question-container{gap:10px;flex-wrap:nowrap;align-items:center}body.capacitor-native .question-prompt{padding:14px 20px;gap:12px}body.capacitor-native .question-prompt-btn--help{width:52px;height:52px;min-width:52px;min-height:52px;border-radius:50%;padding:0;background:var(--highlight-faint);border:1.5px solid var(--highlight-soft);flex-shrink:0;flex-grow:0;display:flex;align-items:center;justify-content:center}body.capacitor-native .question-prompt-btn--help .question-prompt-help-icon{width:26px;height:26px;display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;font-size:22px;line-height:1;font-weight:900}body.capacitor-native .question-prompt-info-btn{width:36px;height:36px;font-size:16px}body.capacitor-native .question-prompt-actions .btn{min-height:52px;height:auto;padding:14px 24px;font-size:16px;font-weight:700;border-radius:14px;gap:10px}body.capacitor-native .question-prompt-actions .btn--primary{min-height:54px;padding:14px 28px;font-size:17px}body.capacitor-native .question-prompt-actions .btn__icon{width:22px;height:22px}body.capacitor-native .question-prompt-actions{gap:12px;margin-top:8px}body.capacitor-native .video-control-btn{width:48px;height:48px;min-width:48px;min-height:48px;padding:0;border-radius:12px;font-size:var(--text-base);font-weight:700}body.capacitor-native .video-control-speed-label{font-size:16px;font-weight:700}body.capacitor-native .video-control-icon{width:22px;height:22px}body.capacitor-native .video-controls-overlay{gap:10px;bottom:16px;right:16px}body.capacitor-native .video-control-menu{min-width:120px;padding:8px}body.capacitor-native .video-control-menu-item{padding:14px 16px;font-size:16px;font-weight:600;min-height:48px}body.capacitor-native .playhead-marker-circle{width:22px;height:22px}body.capacitor-native .playhead-line{width:4px}body.capacitor-native .progress-fill-scrubber{height:10px}body.capacitor-native .marker-row:hover .progress-fill-scrubber{height:12px}body.capacitor-native .railway-grip{width:22px;height:60px;border-radius:9px;z-index:200}body.capacitor-native .railway-grip:before{width:3px;height:50%}body.capacitor-native .railway-grip.compact{height:48px}body.capacitor-native .onboarding-actions .btn{height:54px;min-height:54px;padding:0 24px;font-size:16px;font-weight:700;border-radius:14px;gap:10px}body.capacitor-native .onboarding-actions .btn--lg{height:58px;min-height:58px;padding:0 28px;font-size:17px}body.capacitor-native .onboarding-actions .btn__icon{width:20px;height:20px}body.capacitor-native .onboarding-actions{gap:12px}body.capacitor-native .fortress-content{padding:10px 12px}body.capacitor-native .fortress-header{padding:10px 14px}body.capacitor-native .fortress-content-inner{gap:8px}body.capacitor-native .onboarding-video-player{background:var(--onboarding-letterbox-color, var(--letterbox-color));border-radius:12px}body.capacitor-native .onboarding-video-container{background:var(--onboarding-letterbox-color, var(--letterbox-color))}body.capacitor-native .onboarding-video{object-fit:contain;background:var(--onboarding-letterbox-color, var(--letterbox-color))}body.capacitor-native .onboarding-video-placeholder{background:var(--onboarding-letterbox-color, var(--letterbox-color));color:var(--overlay-subtle)}body.capacitor-native .onboarding-video-placeholder-icon{font-size:48px;opacity:.5}body.capacitor-native .onboarding-video-placeholder-text{font-size:var(--text-sm);opacity:.6}body.capacitor-native .fortress-video{background:transparent}body.capacitor-native .fortress-video-player{background:var(--onboarding-letterbox-color, var(--letterbox-color))}body.capacitor-native .timeline-container{padding:12px 14px;border-radius:14px;gap:8px}body.capacitor-native .tracks-container{min-height:82px;gap:6px}body.capacitor-native .track{min-height:70px;border-radius:12px}body.capacitor-native .track-item{min-height:60px;border-radius:10px}body.capacitor-native .track-item-content{padding:10px 14px}body.capacitor-native .track-item-title{font-size:var(--text-sm);font-weight:600}body.capacitor-native .marker-row{height:40px;border-radius:10px}body.capacitor-native .marker-row.with-track:before{height:6px;border-radius:3px}body.capacitor-native .marker-row:hover.with-track:before{height:8px}body.capacitor-native .range-marker{min-height:60px}body.capacitor-native .range-marker-edge{width:5px}body.capacitor-native .point-marker{min-height:60px}body.capacitor-native .point-marker-diamond{width:12px;height:12px}body.capacitor-native .point-marker-line{width:3px}body.capacitor-native .control-btn-primary{width:52px;height:52px;min-width:52px;min-height:52px;border-radius:12px}body.capacitor-native .control-btn-primary svg,body.capacitor-native .control-btn-primary .icon{width:26px;height:26px}body.capacitor-native .right-time-display{font-size:var(--text-base);font-weight:600}body.capacitor-native [data-phase=mark-instruction] .track,body.capacitor-native [data-phase=mark-demo] .track{min-height:120px;height:120px}body.capacitor-native [data-phase=mark-instruction] .track-item,body.capacitor-native [data-phase=mark-demo] .track-item{min-height:110px}body.capacitor-native [data-phase=mark-instruction] .tracks-container,body.capacitor-native [data-phase=mark-demo] .tracks-container{min-height:132px}body.capacitor-native [data-phase=mark-instruction] .railway-grip,body.capacitor-native [data-phase=mark-demo] .railway-grip{height:100px}body.capacitor-native [data-phase=mark-instruction] .range-marker,body.capacitor-native [data-phase=mark-demo] .range-marker{min-height:110px}body.capacitor-native .help-modal-overlay{padding:0;align-items:stretch;justify-content:stretch;animation:helpModalFadeSoft .18s ease-out}body.capacitor-native .help-modal{max-width:100%;width:100%;height:100dvh;max-height:100dvh;border-radius:0;margin:0;animation:helpModalRiseSoft .2s ease-out}body.capacitor-native .help-modal-header{padding-top:calc(20px + var(--safe-area-top))}body.capacitor-native .help-modal-body{padding-bottom:0}body.capacitor-native .help-modal-footer,body.capacitor-native .question-prompt-sheet-content{padding-bottom:calc(20px + var(--safe-area-bottom))}@keyframes helpModalFadeSoft{0%{opacity:0}to{opacity:1}}@keyframes helpModalRiseSoft{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}body.capacitor-native .help-modal-title{font-size:24px}body.capacitor-native .help-modal-close{width:44px;height:44px;border-radius:12px}body.capacitor-native .help-modal-close svg{width:22px;height:22px}body.capacitor-native .help-modal-button{height:56px;font-size:17px;border-radius:14px}body.capacitor-native .help-modal-hero-text{font-size:17px;line-height:1.5}body.capacitor-native .help-modal-section-title{font-size:17px}body.capacitor-native .help-modal-section-desc{font-size:var(--text-base)}body.capacitor-native .help-modal-type{padding:14px 16px}body.capacitor-native .help-modal-type-content strong{font-size:16px}body.capacitor-native .help-modal-type-content span{font-size:var(--text-sm)}body.capacitor-native .help-modal-step{padding:16px 18px}body.capacitor-native .help-modal-step-number{width:32px;height:32px;font-size:var(--text-base)}body.capacitor-native .help-modal-step-content strong{font-size:16px}body.capacitor-native .help-modal-step-content span{font-size:var(--text-sm)}body.capacitor-native .adjust-hint-card{padding:24px 24px 28px;border-radius:24px}body.capacitor-native .adjust-hint-card h2{font-size:22px;margin:16px 0 12px}body.capacitor-native .adjust-hint-card p{font-size:16px;line-height:1.55}body.capacitor-native .adjust-hint-footnote{font-size:var(--text-sm)}body.capacitor-native .adjust-hint-button{padding:16px 32px;font-size:17px;border-radius:14px;min-height:54px}body.capacitor-native .adjust-hint-track{width:260px;height:64px}body.capacitor-native .adjust-hint-handle{width:18px;height:52px;border-radius:8px}body.capacitor-native .adjust-hint-fill:after{font-size:var(--text-sm)}body.capacitor-native .loading-phase-content{padding:36px 28px;border-radius:20px}body.capacitor-native .loading-phase-title{font-size:26px}body.capacitor-native .loading-phase-subtitle{font-size:var(--text-base)}body.capacitor-native .loading-phase-actions .btn{min-height:54px;padding:16px 32px;font-size:16px;border-radius:14px}body.capacitor-native .loading-phase-actions .btn svg{width:22px;height:22px}body.capacitor-native .loading-stage{padding:14px 16px}body.capacitor-native .loading-stage-icon{width:36px;height:36px}body.capacitor-native .loading-stage-label,body.capacitor-native .loading-stage-percent{font-size:var(--text-base)}body.capacitor-native .fortress-floating-btn{min-width:44px;min-height:44px;padding:0 14px;font-size:var(--text-sm)}body.capacitor-native .fortress-floating-btn svg{width:20px;height:20px}body.capacitor-native .add-dropdown-trigger{min-height:48px;padding:0 18px;font-size:var(--text-base);border-radius:12px}body.capacitor-native .add-dropdown-option{padding:14px 18px;font-size:var(--text-base);min-height:48px}body.capacitor-native .custom-select-trigger{min-height:48px;padding:0 16px;font-size:var(--text-base)}body.capacitor-native .custom-select-option{padding:14px 16px;font-size:var(--text-base);min-height:48px}body.capacitor-native .animated-step-button{min-height:58px;padding:18px 36px;font-size:18px;border-radius:16px}body.capacitor-native .animated-step-icon{width:100px;height:100px}body.capacitor-native .animated-step-click-hint{font-size:var(--text-sm)}body.capacitor-native .video-overlay-glass-btn{width:48px;height:48px;border-radius:12px}body.capacitor-native .video-overlay-glass-btn svg{width:24px;height:24px}body.capacitor-native .onboarding-header-title{font-size:18px}body.capacitor-native .onboarding-header-subtitle{font-size:var(--text-sm)}@media(max-width:960px){body.capacitor-native .question-prompt-question{font-size:clamp(22px,5vw,28px)}body.capacitor-native .question-prompt-actions .btn{min-height:52px;height:auto;font-size:16px}body.capacitor-native .track{min-height:70px}body.capacitor-native .marker-row{height:40px}body.capacitor-native .tracks-container{min-height:82px}body.capacitor-native .railway-grip{width:22px;height:60px}}@media(max-width:600px){body.capacitor-native .question-prompt{padding:14px 16px;gap:10px}body.capacitor-native .question-prompt-question{font-size:clamp(22px,5vw,26px)}body.capacitor-native .question-prompt-actions .btn{min-height:52px;height:auto;font-size:16px;flex:1 1 45%}body.capacitor-native .question-prompt-btn--help{flex:0 0 auto}body.capacitor-native .video-control-btn{width:48px;height:48px;min-width:48px;min-height:48px}body.capacitor-native .railway-grip{width:22px;height:60px}body.capacitor-native .onboarding-actions .btn{height:54px;min-height:54px;font-size:16px}body.capacitor-native .track{min-height:70px}body.capacitor-native .marker-row{height:40px}body.capacitor-native .tracks-container{min-height:82px}body.capacitor-native .playhead-marker-circle{width:22px;height:22px}body.capacitor-native .playhead-line{width:4px}}@media(max-height:520px){body.capacitor-native .question-prompt{padding:10px 14px;gap:8px}body.capacitor-native .question-prompt-question{font-size:clamp(20px,4.5vw,24px)}body.capacitor-native .question-prompt-actions .btn{min-height:48px;font-size:var(--text-base)}body.capacitor-native .question-prompt-btn--help{width:44px;height:44px;min-width:44px;min-height:44px}body.capacitor-native .track{min-height:56px}body.capacitor-native .marker-row{height:32px}body.capacitor-native .tracks-container{min-height:68px}body.capacitor-native .railway-grip{width:20px;height:48px}body.capacitor-native .playhead-marker-circle{width:18px;height:18px}}.sidebar{--sidebar-item-height: 52px;--sidebar-badge-size: 32px;--sidebar-radius: 12px;--sidebar-radius-sm: 8px;transition:transform var(--transition-normal),opacity var(--transition-normal)}body.mobile-nav-locked{overflow:hidden;touch-action:none}.layout-with-banner{display:flex;flex-direction:column;height:100vh;overflow:hidden}.layout-with-banner>.app-container{flex:1;height:auto;min-height:0}.app-container{display:grid;grid-template-columns:280px 1fr;height:100vh;transition:grid-template-columns var(--transition-normal)}.sidebar{width:280px;background:var(--bg-secondary, var(--surface));border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;visibility:hidden}@media(min-width:961px){.sidebar{visibility:visible}}.sidebar-back-section{padding:16px 12px 8px;transition:opacity var(--transition-slow),transform var(--transition-slow)}.sidebar-back-section.sidebar-fade-out{opacity:0;transform:translateY(8px);pointer-events:none}.sidebar-back-link{display:flex;align-items:center;gap:8px;padding:8px 12px;background:transparent;border:none;border-radius:6px;color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast);letter-spacing:-.01em;width:100%;text-align:left;text-decoration:none}.sidebar-back-link:hover{background:var(--bg-tertiary, var(--surface-hover));filter:brightness(var(--hover-brightness))}.sidebar-back-arrow{font-size:var(--text-sm);opacity:.7}.sidebar-nav{flex:1;padding:16px 12px 24px;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none}.sidebar-nav::-webkit-scrollbar{display:none}.sidebar-footer{padding:16px;padding-bottom:calc(16px + var(--safe-area-bottom));border-top:1px solid var(--border);background:linear-gradient(to top,var(--surface) 0%,var(--bg-secondary, var(--surface)) 100%);position:relative}.sidebar-footer:before{content:"";position:absolute;top:-1px;left:0;right:0;height:20px;background:linear-gradient(to bottom,var(--shadow-ghost) 0%,transparent 100%);pointer-events:none}.nav-section{margin-bottom:24px;transition:opacity var(--transition-slow),transform var(--transition-slow);overflow:visible}.nav-section:first-child{margin-top:0}.nav-section:last-child{margin-bottom:0}.nav-section.sidebar-fade-out{opacity:0;transform:translateY(8px);pointer-events:none}.nav-section-label{padding:0 14px 10px;font-size:var(--text-xs);font-weight:600;color:var(--text-muted);letter-spacing:0}.nav-item{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--sidebar-radius);font-size:var(--text-base);font-weight:500;color:var(--text-secondary);text-decoration:none;cursor:pointer;transition:all var(--transition-normal);letter-spacing:-.01em;-webkit-user-select:none;user-select:none;border:1px solid transparent;position:relative;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.nav-item:has(.nav-item-chevron){font-weight:600;background:var(--bg-tertiary, var(--surface));border:1px solid var(--border);color:var(--text-primary);margin-bottom:8px}.nav-item:hover:not(.active){background:var(--bg-tertiary, var(--surface-hover));border-color:var(--border-hover);color:var(--primary);transform:translate(2px)}.nav-item:has(.nav-item-chevron):hover{border-color:var(--border-active, var(--primary-subtle));box-shadow:0 0 0 3px var(--primary-soft, var(--primary-subtle));transform:translate(2px)}.nav-item.active{background:var(--primary-soft, var(--primary-subtle));color:var(--text-primary);font-weight:600;border-color:var(--border-active, var(--primary-subtle))}.nav-item.active:hover{background:var(--primary-glow, var(--primary-subtle));transform:translate(2px)}.nav-item.drag-over{background:var(--success-subtle);border:1px solid var(--success);border-radius:var(--sidebar-radius)}.nav-item-collection{padding-left:28px}.nav-item-icon{font-size:18px;width:22px;display:flex;align-items:center;justify-content:center;opacity:.7;transition:opacity var(--transition-normal)}.nav-item:hover .nav-item-icon{opacity:1}.nav-item-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-item-badge{padding:4px 10px;background:var(--primary);color:#fff;font-size:var(--text-xs);font-weight:600;border-radius:20px;line-height:1}.nav-item-chevron{font-size:18px;opacity:.5;transition:all var(--transition-normal);font-weight:400}.nav-item:hover .nav-item-chevron{opacity:.8}.nav-item-chevron.expanded{transform:rotate(90deg);opacity:.8}.nav-subitems{margin-top:4px;padding:4px 0 4px 12px;overflow:visible}.nav-subitem{display:flex;align-items:center;gap:14px;min-height:var(--sidebar-item-height);padding:10px 14px 10px 12px;margin-bottom:4px;border-radius:var(--sidebar-radius-sm);font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);text-decoration:none;cursor:pointer;transition:all var(--transition-normal);letter-spacing:-.005em;border:1px solid transparent;position:relative;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.nav-subitem-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}.nav-subitem-duration{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;padding:3px 8px;background:var(--bg-tertiary, var(--surface));border-radius:6px;transition:all var(--transition-normal)}.nav-subitem:hover:not(.active){background:var(--bg-tertiary, var(--surface-hover));border-color:var(--border)}.nav-subitem:hover:not(.active) .nav-subitem-text{color:var(--primary)}.nav-subitem:hover .nav-subitem-duration{background:var(--bg-elevated, var(--surface-alt))}.nav-subitem-star{display:flex;align-items:center;flex-shrink:0;color:var(--primary);line-height:0}.nav-subitem.active{color:var(--text-primary);background:var(--primary-soft, var(--primary-subtle));font-weight:600;border-color:var(--border-active, var(--primary-subtle))}.nav-subitem.active:hover{background:var(--primary-glow, var(--primary-subtle))}.nav-subitem.nav-subitem-soft-hidden{display:none}.nav-subitem-number{display:flex;align-items:center;justify-content:center;width:var(--sidebar-badge-size);height:var(--sidebar-badge-size);font-size:var(--text-sm);font-weight:700;color:var(--text-tertiary);background:var(--bg-tertiary, var(--surface));border:2px solid var(--border);border-radius:50%;font-variant-numeric:tabular-nums;letter-spacing:-.02em;transition:all var(--transition-normal);flex-shrink:0;position:relative}.nav-subitem:hover .nav-subitem-number{background:var(--bg-elevated, var(--surface-alt));border-color:var(--border-hover);color:var(--text-secondary);transform:scale(1.05)}.nav-subitem.active .nav-subitem-number{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 0 0 4px var(--primary-soft, var(--primary-subtle)),0 4px 12px var(--primary-glow);transform:scale(1.08)}.nav-subitem.completed .nav-subitem-number{background:var(--success-soft, rgba(74, 222, 128, .15));border-color:var(--success);color:var(--success)}.nav-subitem.completed .nav-subitem-number:after{content:"✓";font-size:var(--text-sm);font-weight:700}.nav-subitem-icon{display:flex;align-items:center;justify-content:center;width:var(--sidebar-badge-size);height:var(--sidebar-badge-size);font-size:18px;background:var(--bg-tertiary, var(--surface));border:2px solid var(--border);border-radius:50%;opacity:1;transition:all var(--transition-normal);flex-shrink:0}.nav-subitem:hover .nav-subitem-icon{background:var(--bg-elevated, var(--surface-alt));border-color:var(--border-hover);transform:scale(1.05)}.nav-subitem.active .nav-subitem-icon{background:var(--primary-soft, var(--primary-subtle));border-color:var(--border-active, var(--primary-subtle))}.main-content{flex:1;display:grid;grid-template-rows:auto 1fr;overflow:hidden;min-width:0;background:var(--bg-primary)}.main-content.no-navbar{grid-template-rows:1fr}.nav-bar{display:flex;height:75px;align-items:center;gap:0px;padding:14px 24px;border-bottom:1px solid var(--border);background:var(--bg-secondary, var(--surface));overflow:visible;min-height:56px;flex-shrink:0;transition:opacity var(--transition-normal)}body.capacitor-native .nav-bar{padding-top:var(--safe-area-top);height:calc(56px + var(--safe-area-top));min-height:calc(48px + var(--safe-area-top));box-sizing:border-box}.nav-bar-back{flex-shrink:0}.nav-bar-title-group{display:flex;flex-direction:row;align-items:center;gap:12px;min-width:0;overflow:hidden}.nav-bar-title{font-size:18px;font-weight:500;color:var(--text-primary);letter-spacing:-.01em;display:flex;align-items:center;gap:10px;min-width:0;overflow:hidden;flex-shrink:0}.nav-bar-subtitle{font-size:var(--text-sm);font-weight:400;color:var(--text-tertiary);letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;padding-left:12px}.nav-bar-subtitle:before{content:"•";position:absolute;left:-6px;color:var(--text-tertiary);opacity:.5}.nav-bar-spacer{flex:1}.nav-bar-actions{flex-shrink:0;display:flex;align-items:center;gap:12px}.nav-close-btn:hover{background:var(--bg-tertiary, var(--surface-hover));border-color:var(--border-hover);filter:brightness(var(--hover-brightness))}.main-body{position:relative;flex:1;overflow-y:auto;min-height:0;background:var(--bg-primary);scrollbar-width:none;-ms-overflow-style:none;padding-bottom:var(--safe-area-bottom)}.main-body::-webkit-scrollbar{display:none}.navbar-breadcrumb{display:flex;align-items:center;gap:8px;font-size:var(--text-sm);min-width:0;overflow:hidden}.navbar-breadcrumb-link{color:var(--primary);text-decoration:none;font-weight:500;flex-shrink:0;transition:opacity var(--transition-fast)}.navbar-breadcrumb-link:hover{opacity:.8;text-decoration:underline}.navbar-breadcrumb-sep{color:var(--text-tertiary);flex-shrink:0;font-weight:300}.navbar-breadcrumb-current{color:var(--text-secondary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.mobile-nav-toggle{display:none;margin-right:10px}.mobile-nav-scrim{display:none;position:fixed;inset:0;background:var(--shadow-heavy);opacity:0;transition:opacity var(--transition-normal);pointer-events:none;z-index:40}.mobile-nav-scrim.visible{opacity:1;pointer-events:auto}@media(max-width:960px){.app-container{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:280px;transform:translate3d(-100%,0,0);transition:transform var(--transition-slow),box-shadow var(--transition-slow),opacity var(--transition-normal);box-shadow:none;z-index:50;will-change:transform;backface-visibility:hidden;-webkit-font-smoothing:antialiased}.app-container.mobile-nav-open .sidebar{transform:translateZ(0);visibility:visible;box-shadow:12px 0 30px var(--shadow-heavy)}.main-content{grid-template-rows:auto 1fr}.nav-bar{padding:12px 16px;gap:12px}.nav-bar-title{font-size:16px}.nav-bar-actions{gap:8px}.nav-bar-actions .viewing-mode-group,.nav-bar-actions .density-focus-group{display:none}.mobile-nav-toggle{display:flex}.mobile-nav-scrim{display:block}.main-body{overflow-y:auto}.app-container.focus-mode .sidebar{transform:translate(-100%);opacity:0}.app-container.mobile-nav-open .main-content{pointer-events:none;filter:blur(1px)}body.capacitor-native .app-container.mobile-nav-open .main-content{filter:none;opacity:.92}.app-container.mobile-nav-open .nav-bar,.app-container.mobile-nav-open .main-body{pointer-events:none}.sidebar-logo-header{display:none}}.app-container.force-mobile{grid-template-columns:1fr}.app-container.force-mobile .sidebar{position:fixed;inset:0 auto 0 0;width:280px;transform:translate3d(-100%,0,0);transition:transform var(--transition-slow),box-shadow var(--transition-slow),opacity var(--transition-normal);box-shadow:none;z-index:50;will-change:transform;backface-visibility:hidden;-webkit-font-smoothing:antialiased}.app-container.force-mobile.mobile-nav-open .sidebar{transform:translateZ(0);visibility:visible;box-shadow:12px 0 30px var(--shadow-heavy)}.app-container.force-mobile .main-content{grid-template-rows:auto 1fr}.app-container.force-mobile .nav-bar{padding:12px 16px;gap:12px}.app-container.force-mobile .nav-bar-title{font-size:16px}.app-container.force-mobile .nav-bar-actions{gap:8px}.app-container.force-mobile .nav-bar-actions .viewing-mode-group,.app-container.force-mobile .nav-bar-actions .density-focus-group{display:none}.app-container.force-mobile .mobile-nav-toggle{display:flex}.app-container.force-mobile .mobile-nav-scrim{display:block}.app-container.force-mobile .main-body{overflow-y:auto}.app-container.force-mobile.focus-mode .sidebar{transform:translate(-100%);opacity:0}.app-container.force-mobile.mobile-nav-open .main-content{pointer-events:none;filter:blur(1px)}body.capacitor-native .app-container.force-mobile.mobile-nav-open .main-content{filter:none;opacity:.92}.app-container.force-mobile.mobile-nav-open .nav-bar,.app-container.force-mobile.mobile-nav-open .main-body{pointer-events:none}.app-container.force-mobile .sidebar-logo-header{display:none}.mobile-nav-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.mobile-toolbar-btn{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:10px;border:1px solid var(--border);background:var(--bg-tertiary, var(--surface));color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal);flex-shrink:0}.mobile-toolbar-btn.mobile-exit-btn{background:transparent;border-radius:8px}@media(hover:hover){.mobile-toolbar-btn:hover:not(:disabled){border-color:var(--border-hover);background:var(--surface-hover);filter:brightness(var(--hover-brightness))}}.mobile-toolbar-btn:active:not(:disabled){background:var(--surface-hover)}.mobile-toolbar-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.mobile-toolbar-btn.mobile-loop-btn.slow{background:linear-gradient(135deg,var(--warning) 0%,var(--warning-dark, #d97706) 100%);border-color:var(--warning);color:#fff}.mobile-toolbar-btn:disabled{opacity:.4;cursor:not-allowed}.mobile-toolbar-btn svg{display:block}.mobile-toolbar-btn .gif-logo-icon{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,Roboto,sans-serif;font-size:var(--text-xs);font-weight:600;letter-spacing:.02em;text-transform:uppercase;line-height:1}.mobile-crop-toggle{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:10px;border:1px solid var(--border);background:var(--bg-tertiary, var(--surface));color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal);flex-shrink:0}.mobile-crop-toggle:hover{border-color:var(--border-hover);background:var(--surface-hover);filter:brightness(var(--hover-brightness))}.mobile-crop-toggle.active{background:var(--primary);border-color:var(--primary);color:#fff}.mobile-close-btn{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:10px;border:1px solid var(--border);background:var(--bg-tertiary, var(--surface));color:var(--text-secondary);font-size:26px;font-weight:300;line-height:1;cursor:pointer;transition:all var(--transition-normal);flex-shrink:0}.mobile-close-btn:hover{border-color:var(--border-hover);background:var(--surface-hover);filter:brightness(var(--hover-brightness))}@media(max-width:600px){.nav-bar{padding:10px 12px;gap:8px;height:auto;min-height:52px}.mobile-nav-toggle{width:48px;height:48px;margin-right:0;font-size:22px}.mobile-toolbar-btn{width:48px;height:48px}.mobile-crop-toggle{width:48px;height:48px;font-size:20px}.mobile-close-btn{width:48px;height:48px;font-size:26px}.nav-bar-title-group{flex:1;min-width:0;gap:8px}.nav-bar-title{font-size:var(--text-sm);flex-shrink:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-bar-title-main{max-width:100%}.nav-bar-subtitle{display:none}.nav-bar-back{flex-shrink:0}.nav-bar-actions{flex-shrink:0;gap:6px}.nav-close-btn{width:34px;height:34px;font-size:20px}.nav-bar-spacer{flex:0;min-width:8px}}@media(max-height:500px)and (orientation:landscape){.nav-bar{height:44px;min-height:44px;padding:6px 12px;gap:8px}.mobile-nav-toggle{width:32px;height:32px;font-size:var(--text-sm)}.mobile-nav-title{font-size:var(--text-xs)}.mobile-crop-toggle,.mobile-close-btn,.mobile-toolbar-btn{width:32px;height:32px}.mobile-toolbar-btn svg{width:16px;height:16px}.nav-bar-title{font-size:var(--text-sm)}.nav-bar-actions{gap:6px}}.app-container.focus-mode{grid-template-columns:0 1fr}.app-container.focus-mode .sidebar{opacity:0;transform:translate(-24px);pointer-events:none}.app-container.focus-mode .main-content{grid-template-rows:1fr}.app-container.focus-mode .nav-bar{opacity:0;pointer-events:none;position:absolute;height:0;overflow:hidden}.focus-toolbar{position:fixed;top:0;right:0;z-index:100;display:flex;align-items:center;gap:1px;padding:4px 6px;background:var(--bg-secondary);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);border-top:none;border-right:none;border-bottom-left-radius:10px;box-shadow:0 4px 20px var(--shadow-heavy);opacity:0;transform:translateY(-100%) translate(20px);pointer-events:none;transition:all var(--transition-slow)}.app-container.focus-mode .focus-toolbar{opacity:1;transform:translateY(0) translate(0);pointer-events:auto}.focus-toolbar-section{display:flex;align-items:center;gap:1px}.focus-toolbar-divider{width:1px;height:16px;background:var(--border);margin:0 4px}.focus-toolbar-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;background:transparent;border:none;border-radius:5px;color:var(--text-secondary);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-fast)}.focus-toolbar-btn svg{display:block;width:12px;height:12px}.focus-toolbar-gif-text{font-size:var(--text-xs);font-weight:700;letter-spacing:-.02em}.focus-toolbar-btn:hover{background:var(--surface-hover);filter:brightness(var(--hover-brightness))}.focus-toolbar-btn.active{background:var(--primary);color:#fff}.focus-toolbar-btn:disabled{opacity:.4;cursor:not-allowed}.focus-toolbar-btn:disabled:hover{background:transparent;color:var(--text-secondary)}.focus-toolbar-exit{display:flex;align-items:center;justify-content:center;width:26px;height:26px;background:var(--primary);border:none;border-radius:5px;color:#fff;font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);margin-left:2px}.focus-toolbar-exit:hover{background:var(--primary-hover);transform:scale(.95)}.focus-toolbar-density{gap:0}.focus-toolbar-density-btn{width:22px;height:22px;padding:0}.focus-toolbar-density-btn svg{width:14px;height:11px}.focus-toolbar.focus-toolbar-v6{padding:3px 4px;gap:1px;border-bottom-left-radius:8px;overflow:hidden}.focus-toolbar.focus-toolbar-v6 .focus-toolbar-btn{width:22px;height:22px;border-radius:4px}.focus-toolbar.focus-toolbar-v6 .focus-toolbar-btn svg{width:10px;height:10px}.focus-toolbar.focus-toolbar-v6 .focus-toolbar-gif-text{font-size:var(--text-xs)}.focus-toolbar.focus-toolbar-v6 .focus-toolbar-exit{width:22px;height:22px;border-radius:4px;margin-left:0;transition:margin-left var(--transition-normal)}.focus-toolbar.focus-toolbar-v6 .focus-toolbar-divider{height:14px;margin:0;max-width:0;opacity:0;overflow:hidden;transition:max-width var(--transition-normal),opacity var(--transition-fast),margin var(--transition-normal)}.focus-toolbar.focus-toolbar-v6 .focus-toolbar-section{max-width:0;opacity:0;overflow:hidden;transition:max-width var(--transition-normal),opacity var(--transition-fast)}.focus-toolbar.focus-toolbar-v6:hover .focus-toolbar-section{max-width:50px;opacity:1}.focus-toolbar.focus-toolbar-v6:hover .focus-toolbar-divider{max-width:8px;opacity:1;margin:0 3px}.focus-toolbar.focus-toolbar-v6:hover .focus-toolbar-exit{margin-left:1px}.focus-toolbar.focus-toolbar-v6 .focus-toolbar-density-btn{width:18px;height:18px}.focus-toolbar.focus-toolbar-v6 .focus-toolbar-density-btn svg{width:12px;height:9px}.focus-toolbar.focus-toolbar-v6 .focus-toolbar-density{max-width:0;opacity:0;overflow:hidden;transition:max-width var(--transition-normal),opacity var(--transition-fast)}.focus-toolbar.focus-toolbar-v6:hover .focus-toolbar-density{max-width:60px;opacity:1}.sidebar.path-variant{--path-line-color: var(--border);--path-line-active: var(--primary);--node-size: 44px;--node-size-sm: 32px;--node-completed: var(--success);--node-glow: var(--primary-subtle);--path-offset: 28px}.sidebar.path-variant .nav-subitems{position:relative;padding-left:0;margin-top:8px;overflow:visible}.sidebar.path-variant .nav-subitems:before{content:"";position:absolute;left:var(--path-offset);top:calc(var(--node-size) / 2 + 10px);bottom:0;width:var(--path-line-width, 3px);background:var(--path-line-color);border-radius:2px;transform:translate(-50%);z-index:1}.sidebar.path-variant .nav-subitems:after{content:"";position:absolute;left:var(--path-offset);top:calc(var(--node-size) / 2 + 10px);width:var(--path-line-width, 3px);height:var(--progress-height, 0%);background:linear-gradient(180deg,var(--node-completed) 0%,var(--node-completed) 85%,var(--primary) 100%);border-radius:2px;transform:translate(-50%);transition:height var(--transition-slow);z-index:1}.sidebar.path-variant .nav-subitem{position:relative;padding-left:calc(var(--path-offset) + 32px);min-height:60px;margin-bottom:2px;border:none;background:transparent;border-radius:12px;align-items:center}.sidebar.path-variant .nav-subitem:hover:not(.active){background:var(--surface-hover);border:none}.sidebar.path-variant .nav-subitem-number{position:absolute;left:var(--path-offset);transform:translate(-50%);width:var(--node-size);height:var(--node-size);font-size:var(--text-base);font-weight:700;background:var(--bg-secondary, var(--surface));border:var(--path-node-border-width, 3px) solid var(--border);border-radius:50%;color:var(--text-tertiary);z-index:2;transition:all var(--transition-slow)}.sidebar.path-variant .nav-subitem:hover .nav-subitem-number{transform:translate(-50%) scale(1.05);border-color:var(--text-muted);color:var(--text-secondary)}.sidebar.path-variant .nav-subitem.active{background:linear-gradient(90deg,var(--primary-subtle) 0%,transparent 100%);border:none}.sidebar.path-variant .nav-subitem.active .nav-subitem-number{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 0 0 6px var(--node-glow),0 0 24px var(--node-glow),0 0 48px var(--primary-subtle);animation:path-node-pulse 2s ease-in-out infinite}@keyframes path-node-pulse{0%,to{box-shadow:0 0 0 6px var(--node-glow),0 0 24px var(--node-glow),0 0 48px var(--primary-subtle)}50%{box-shadow:0 0 0 12px var(--primary-subtle),0 0 40px var(--node-glow),0 0 80px var(--primary-subtle)}}.sidebar.path-variant .nav-subitem.active .nav-subitem-text{color:var(--text-primary);font-weight:600}.sidebar.path-variant .nav-subitem.completed .nav-subitem-number{background:var(--node-completed);border-color:var(--node-completed);color:#fff;font-size:0}.sidebar.path-variant .nav-subitem.completed .nav-subitem-number:after{content:"✓";font-size:18px;font-weight:700}.sidebar.path-variant .nav-subitem.completed .nav-subitem-text{color:var(--text-secondary)}.sidebar.path-variant .nav-subitem.completed:hover .nav-subitem-number{box-shadow:0 0 0 4px var(--success-soft, rgba(74, 222, 128, .25))}.sidebar.path-variant .nav-subitem.locked .nav-subitem-number{background:var(--bg-tertiary, var(--surface));border-color:var(--border);color:var(--text-muted);opacity:.6}.sidebar.path-variant .nav-subitem.locked .nav-subitem-text{color:var(--text-muted);opacity:.6}.sidebar.path-variant .nav-subitem.locked{cursor:not-allowed}.sidebar.path-variant .nav-subitem-text{font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);line-height:1.3}.sidebar.path-variant .nav-subitem-duration{font-size:var(--text-xs);padding:2px 8px;background:var(--bg-tertiary, var(--surface));border-radius:10px;color:var(--text-muted)}.sidebar.path-variant .nav-item:has(.nav-item-chevron){background:transparent;border:none;padding:16px;margin-bottom:4px}.sidebar.path-variant .nav-item:has(.nav-item-chevron):hover{background:var(--surface-hover);border:none;box-shadow:none}.sidebar.path-variant .nav-item-text{font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary)}.sidebar.path-variant .nav-item.supplemental-section{margin-top:16px}.sidebar.path-variant .nav-item.supplemental-section+.nav-subitems:before,.sidebar.path-variant .nav-item.supplemental-section+.nav-subitems:after{display:none}.sidebar.path-variant .nav-item.supplemental-section+.nav-subitems{padding-left:0}.sidebar.path-variant .nav-item.supplemental-section+.nav-subitems .nav-subitem{padding-left:16px;min-height:44px}.sidebar.path-variant .nav-item.supplemental-section+.nav-subitems .nav-subitem-number{display:none}.sidebar.path-variant.supplemental-1 .nav-item.supplemental-section{margin-top:12px}.sidebar.path-variant.supplemental-1 .nav-item.supplemental-section+.nav-subitems{padding:4px 8px 8px}.sidebar.path-variant.supplemental-1 .nav-item.supplemental-section+.nav-subitems .nav-subitem{padding:12px 14px;border-radius:8px;min-height:52px}.sidebar.path-variant.supplemental-1 .nav-item.supplemental-section+.nav-subitems .nav-subitem .nav-subitem-text{font-size:var(--text-sm);font-weight:500;color:var(--text-secondary)}.sidebar.path-variant.supplemental-1 .nav-item.supplemental-section+.nav-subitems .nav-subitem:hover{background:var(--bg-tertiary, var(--surface-hover));border-color:var(--border)}.sidebar.path-variant.supplemental-1 .nav-item.supplemental-section+.nav-subitems .nav-subitem:hover .nav-subitem-text{color:var(--primary)}.sidebar.path-variant.supplemental-1 .nav-item.supplemental-section+.nav-subitems .nav-subitem.active{background:var(--primary-soft, var(--primary-subtle));border-color:var(--border-active, var(--primary-subtle))}.sidebar.path-variant.supplemental-1 .nav-item.supplemental-section+.nav-subitems .nav-subitem.active .nav-subitem-text{color:var(--text-primary);font-weight:600}.sidebar.path-variant.supplemental-1 .nav-item.supplemental-section+.nav-subitems .nav-subitem .nav-subitem-duration{font-size:var(--text-xs);padding:3px 8px;background:var(--bg-tertiary, var(--surface));border-radius:6px}.sidebar-header{padding:22px 20px 4px;display:flex;justify-content:center;transition:opacity var(--transition-slow),transform var(--transition-slow);min-height:56px;align-items:center}.sidebar-header.sidebar-fade-out{opacity:0;transform:translateY(8px);pointer-events:none}.sidebar-header-v31{padding:0;border-bottom:1px solid var(--border);position:relative;overflow:hidden}.sidebar-header-v31.no-glow.no-gradient{background:transparent;border-bottom:1px solid var(--border)}.logo-v31{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:35px 20px 10px;cursor:pointer;text-decoration:none;transition:all var(--transition-normal);position:relative;z-index:1}.logo-v31:hover{background:var(--surface-hover)}.logo-v31-icon{width:88px;height:auto;display:block;filter:drop-shadow(0 2px 8px var(--shadow-soft));transition:all var(--transition-normal)}.logo-v31:hover .logo-v31-icon{transform:translateY(-2px) scale(1.03);filter:drop-shadow(0 6px 16px var(--primary-subtle))}.logo-v31:active .logo-v31-icon{transform:translateY(0) scale(1.01)}.logo-v31-title{width:125px;height:auto;display:block;opacity:.92;transition:all var(--transition-normal)}.logo-v31:hover .logo-v31-title{opacity:1}body.capacitor-native .logo-v31{padding-top:60px}body.capacitor-native .logo-v31-icon{width:125px}body.capacitor-native .logo-v31-title{width:175px}.analysis-page .breakdown-grid{display:grid;gap:28px;align-items:start;transition:gap var(--transition-slow)}.analysis-page .breakdown-grid>*{transition:transform var(--transition-slow),opacity var(--transition-normal)}.analysis-page .breakdown-grid.density-standard{gap:28px}.analysis-page .breakdown-grid.density-dense{gap:20px}.analysis-page .breakdown-grid.columns-1{grid-template-columns:1fr}.analysis-page .breakdown-grid.columns-2{grid-template-columns:repeat(2,1fr)}.analysis-page .breakdown-grid.columns-3{grid-template-columns:repeat(3,1fr)}.analysis-page .breakdown-grid.columns-4{grid-template-columns:repeat(4,1fr)}@media(max-width:768px){.analysis-page .breakdown-grid.columns-2,.analysis-page .breakdown-grid.columns-3,.analysis-page .breakdown-grid.columns-4{grid-template-columns:1fr}.analysis-page .breakdown-grid{gap:24px}}.breakdown-carousel-wrapper{position:relative;width:100%}.breakdown-carousel{display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;padding:20px;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none}.breakdown-carousel::-webkit-scrollbar{display:none}.breakdown-carousel:focus{outline:none}.breakdown-carousel:focus-visible{outline:2px solid var(--primary);outline-offset:4px;border-radius:8px}.breakdown-carousel-item{flex-shrink:0;scroll-snap-align:start;scroll-snap-stop:always}.breakdown-carousel-snap-start .breakdown-carousel-item{scroll-snap-align:start}.breakdown-carousel-snap-center .breakdown-carousel-item{scroll-snap-align:center}.breakdown-carousel-snap-end .breakdown-carousel-item{scroll-snap-align:end}.breakdown-carousel-item>.breakdown-card-wrapper{margin:0}.breakdown-carousel-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:10;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--overlay-dark);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--highlight-faint);border-radius:50%;color:#fff;cursor:pointer;transition:all var(--transition-normal);box-shadow:0 4px 12px var(--shadow-medium)}.breakdown-carousel-nav:hover:not(:disabled){background:var(--overlay-dark);border-color:var(--highlight-soft);transform:translateY(-50%) scale(1.05)}.breakdown-carousel-nav:active:not(:disabled){transform:translateY(-50%) scale(.95)}.breakdown-carousel-nav:disabled{opacity:.3;cursor:not-allowed}.breakdown-carousel-nav.hidden{opacity:0;pointer-events:none}.breakdown-carousel-nav svg{width:20px;height:20px}.breakdown-carousel-nav-left{left:8px}.breakdown-carousel-nav-right{right:8px}.breakdown-carousel-wrapper:before,.breakdown-carousel-wrapper:after{content:"";position:absolute;top:0;bottom:0;width:40px;pointer-events:none;z-index:5;opacity:0;transition:opacity var(--transition-slow)}.breakdown-carousel-wrapper:before{left:0;background:linear-gradient(to right,var(--bg-primary) 0%,transparent 100%)}.breakdown-carousel-wrapper:after{right:0;background:linear-gradient(to left,var(--bg-primary) 0%,transparent 100%)}.breakdown-carousel-wrapper:has(.breakdown-carousel-nav-left:not(.hidden)):before{opacity:1}.breakdown-carousel-wrapper:has(.breakdown-carousel-nav-right:not(.hidden)):after{opacity:1}@media(max-width:960px){.breakdown-carousel-nav{width:40px;height:40px}.breakdown-carousel-nav svg{width:18px;height:18px}}@media(max-width:600px){.breakdown-carousel-nav{display:none}.breakdown-carousel{padding:16px}.breakdown-carousel-wrapper:before,.breakdown-carousel-wrapper:after{display:none}}@media(pointer:coarse){.breakdown-carousel-nav{display:none}}.analysis-page .breakdown-carousel-wrapper{margin:0 -20px}.analysis-page .breakdown-carousel{padding-left:20px;padding-right:20px}.analysis-page .breakdown-carousel[style*="--carousel-gap: 0px"]{padding:0}.analysis-page .breakdown-carousel[style*="--carousel-gap: 0px"] .breakdown-carousel-item:last-child{padding-right:0}.breakdown-carousel.breakdown-carousel-single-item{overflow:hidden;scroll-snap-type:none;-webkit-overflow-scrolling:auto;scroll-behavior:auto;touch-action:pan-y;overscroll-behavior-x:contain;position:relative;padding:0}.breakdown-carousel-track{display:flex;width:100%;height:100%;will-change:transform;-webkit-user-select:none;user-select:none}.breakdown-carousel-single-item .breakdown-carousel-item{flex:0 0 100%;width:100%;scroll-snap-align:unset;scroll-snap-stop:unset;padding-left:0;padding-right:0}.breakdown-carousel-single-item.is-tracking .breakdown-carousel-item>*{pointer-events:none}.breakdown-carousel-single-item:not(.is-tracking) .breakdown-carousel-item>*{pointer-events:auto}.special-carousel .breakdown-carousel{display:flex;align-items:center}@media(max-width:768px){.special-carousel{margin:0;height:calc(100vh - 60px)}.special-carousel .breakdown-carousel{height:100%;padding:0}.special-carousel .breakdown-carousel-item{height:100%}}@media(min-width:768px){.special-carousel{height:100%;width:100%}.special-carousel .breakdown-carousel{height:100%;padding:0;scroll-snap-type:x mandatory}.special-carousel .breakdown-carousel-item{height:100%;display:flex;align-items:stretch;scroll-snap-align:start}}.analysis-page .breakdown-carousel-item:first-child{padding-left:0}.analysis-page .breakdown-carousel-item:last-child{padding-right:40px}.breakdown-carousel-virtual-placeholder{width:100%;height:100%;min-height:220px;display:flex;align-items:stretch}.breakdown-carousel-virtual-placeholder .video-slot{width:100%;height:100%;border-radius:16px;background:var(--highlight-ghost);border:1px solid var(--highlight-ghost)}.analysis-page .notes-panel{position:relative;min-height:40px}.analysis-page .notes-view{position:relative}.analysis-page .notes-empty{font-size:var(--text-sm);color:var(--text-tertiary);font-style:italic;padding:8px 0}.analysis-page .notes-edit-container{width:100%;opacity:0;animation:fadeIn .2s cubic-bezier(.4,0,.2,1) forwards}@keyframes fadeIn{to{opacity:1}}.analysis-page .notes-edit-textarea-input{width:100%;padding:16px 20px 16px 16px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:var(--text-sm);line-height:1.7;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;resize:vertical;overflow-y:auto;letter-spacing:-.01em;transition:all var(--transition-fast);box-sizing:border-box}.analysis-page .step-modal-notes-section .notes-edit-textarea-input{min-height:260px}.analysis-page .step-modal-notes-body{display:flex;flex-direction:column}.analysis-page .step-modal-notes-body .notes-panel.editing,.analysis-page .step-modal-notes-body .notes-panel.editing .notes-edit-container{flex:1;min-height:0;display:flex;flex-direction:column}.analysis-page .step-modal-notes-body .notes-panel.editing .notes-edit-textarea-input{flex:1;min-height:0;max-height:100%;resize:none}.analysis-page .notes-edit-textarea-input::placeholder{color:var(--text-tertiary)}.analysis-page .notes-edit-textarea-input:focus{border-color:var(--primary-glow);background:var(--bg-secondary);outline:none}.analysis-page .notes-edit-textarea-input::-webkit-scrollbar{width:8px}.analysis-page .notes-edit-textarea-input::-webkit-scrollbar-track{background:transparent;border-radius:6px}.analysis-page .notes-edit-textarea-input::-webkit-scrollbar-thumb{background:var(--highlight-faint);border-radius:4px;border:2px solid var(--bg-tertiary);transition:background var(--transition-normal)}.analysis-page .notes-edit-textarea-input::-webkit-scrollbar-thumb:hover{background:var(--highlight-soft)}.analysis-page .notes-edit-textarea-input::-webkit-scrollbar-corner{background:transparent}.analysis-page .notes-edit-contenteditable-input{width:100%;min-height:200px;padding:16px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:var(--text-sm);line-height:1.7;overflow-y:auto;letter-spacing:-.01em;max-height:400px}.analysis-page .notes-edit-contenteditable-input:focus{outline:none}.analysis-page .notes-edit-contenteditable-input div{min-height:1.7em}.analysis-page .notes-edit-actions{display:flex;gap:6px;align-items:center}.analysis-page .notes-edit-btn{width:28px;height:28px;border:1px solid var(--border);border-radius:6px;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);transition:all var(--transition-fast);color:var(--text-tertiary)}.analysis-page .notes-edit-btn:hover{background:var(--bg-tertiary);color:var(--text-secondary);border-color:var(--border-hover)}.analysis-page .notes-edit-btn:active{background:var(--bg-secondary)}@media(max-width:768px){.analysis-page .notes-empty{font-size:var(--text-sm);padding:12px 0}.analysis-page .notes-edit-textarea-input{padding:14px;font-size:var(--text-sm);min-height:150px}.analysis-page .notes-edit-contenteditable-input{padding:14px;font-size:var(--text-sm);min-height:150px;max-height:300px}.analysis-page .notes-edit-btn{width:36px;height:36px;font-size:16px}}@media(max-width:480px){.analysis-page .notes-edit-textarea-input,.analysis-page .notes-edit-contenteditable-input{padding:12px;font-size:var(--text-sm)}}.subclip-markers{position:absolute;inset:0;pointer-events:none;z-index:5}.subclip-handle{position:absolute;top:-6px;bottom:-6px;width:20px;transform:translate(-50%);cursor:ew-resize;z-index:6;touch-action:none;pointer-events:auto;display:flex;align-items:center;justify-content:center}.subclip-handle__grip{width:2px;height:12px;border-radius:1px;background:#ffffff59;transition:transform var(--transition-fast),background var(--transition-fast),height var(--transition-fast)}.subclip-handle:hover .subclip-handle__grip{width:3px;height:16px;background:#ffffffd9}.subclip-handle:active .subclip-handle__grip{width:3px;height:18px;background:#fffffff2}@media(max-width:768px){.subclip-handle{width:28px}.subclip-handle__grip{width:3px;height:14px}.subclip-handle:hover .subclip-handle__grip,.subclip-handle:active .subclip-handle__grip{width:4px;height:20px}}@media(prefers-reduced-motion:reduce){.subclip-handle__grip{transition:none}}.step-player-overlay{position:absolute;inset:0;z-index:30;pointer-events:none}.step-player-overlay.hidden{opacity:0;transition:opacity var(--transition-normal)}.step-player-overlay.visible{opacity:1;transition:opacity var(--transition-fast)}.step-player-overlay.hidden .step-player-topright,.step-player-overlay.hidden .step-player-bottombar{pointer-events:none;transform:translateY(8px)}.step-player-topright,.step-player-bottombar{transition:transform var(--transition-normal)}.step-player-topright{position:absolute;top:10px;right:12px;pointer-events:auto}.step-player-topbtn{width:40px;height:40px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:#00000040;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;transition:transform var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast)}.step-player-topbtn svg{width:20px;height:20px;stroke:currentColor}.step-player-topbtn:hover:not(:disabled){background:#00000059;border-color:#ffffff47}.step-player-topbtn:active:not(:disabled){transform:scale(.96)}@media(max-width:768px){.step-player-topright{display:none}}.step-player-bottombar{position:absolute;left:0;right:0;bottom:0;padding:0;pointer-events:auto;color:#fff}.step-player-timeline{display:flex;align-items:center;gap:10px;padding:10px 12px;background:linear-gradient(to top,#000000bf,#00000080 55%,#0000)}.step-player-time{font-size:var(--text-xs);font-weight:400;font-variant-numeric:tabular-nums;opacity:.95;text-shadow:0 2px 10px rgba(0,0,0,.4)}.step-player-strip-btn{width:36px;height:36px;border:none;background:transparent;color:#fff;padding:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;opacity:.9;border-radius:8px;transition:transform .15s cubic-bezier(.4,0,.2,1),opacity .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1);-webkit-tap-highlight-color:transparent}.step-player-strip-btn svg{width:20px;height:20px;stroke:currentColor}.step-player-strip-btn:hover:not(:disabled){opacity:1;background:#ffffff1f;transform:scale(1.08)}.step-player-strip-btn:active:not(:disabled){transform:scale(.95);background:#ffffff2e}.step-player-strip-btn.active{color:var(--primary);opacity:1}.step-player-strip-btn.active svg{stroke:var(--primary)}.step-player-strip-btn.active:hover:not(:disabled){background:rgba(var(--primary-rgb, 224, 123, 74),.15)}.step-player-speed-btn{height:28px;padding:0 8px;border:1px solid rgba(255,255,255,.15);border-radius:6px;background:#ffffff14;color:#fff;font-size:var(--text-xs);font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.01em;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;opacity:.9;transition:transform .15s cubic-bezier(.4,0,.2,1),opacity .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1);-webkit-tap-highlight-color:transparent}.step-player-speed-btn:hover:not(:disabled){opacity:1;background:#ffffff26;transform:scale(1.05)}.step-player-speed-btn:active:not(:disabled){transform:scale(.95);background:#fff3}.step-player-speed-btn.active{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 50%,transparent);background:color-mix(in srgb,var(--primary) 15%,transparent);opacity:1}.step-player-speed-btn.active:hover:not(:disabled){background:color-mix(in srgb,var(--primary) 22%,transparent)}.step-player-scrub{flex:1;min-width:0;height:28px;border:none;background:transparent;padding:0;cursor:pointer;position:relative;touch-action:none;display:flex;align-items:center}.step-player-scrub-track{position:absolute;top:50%;left:0;right:0;height:4px;border-radius:999px;transform:translateY(-50%);background:#fff3}.step-player-scrub-progress{position:absolute;top:50%;left:0;height:4px;border-radius:999px;transform:translateY(-50%);background:linear-gradient(90deg,var(--primary) 0%,color-mix(in srgb,var(--primary) 85%,white) 100%);box-shadow:0 0 12px color-mix(in srgb,var(--primary) 45%,transparent);z-index:6;pointer-events:none}.step-player-scrub-thumb{position:absolute;top:50%;right:-7px;width:14px;height:14px;border-radius:50%;transform:translateY(-50%);background:#fff;box-shadow:0 2px 8px #0000004d,0 0 0 2px #ffffff26;transition:transform .15s cubic-bezier(.2,.8,.2,1),box-shadow .15s ease;pointer-events:auto;cursor:grab}.step-player-scrub-thumb:after{content:"";position:absolute;inset:-10px}.step-player-scrub--dragging .step-player-scrub-thumb{transform:translateY(-50%) scale(1.35);box-shadow:0 4px 12px #00000059,0 0 0 3px color-mix(in srgb,var(--primary) 40%,transparent);cursor:grabbing}.step-player-scrub--dragging .step-player-scrub-track,.step-player-scrub--dragging .step-player-scrub-progress{height:5px}@media(max-width:768px){.step-player-timeline{gap:12px;padding:12px 6px}.step-player-scrub{height:40px}.step-player-scrub-track,.step-player-scrub-progress{height:5px}.step-player-scrub-thumb{width:18px;height:18px;right:-9px}.step-player-scrub--dragging .step-player-scrub-track,.step-player-scrub--dragging .step-player-scrub-progress{height:6px}.step-player-strip-btn{width:44px;height:44px;border-radius:10px}.step-player-strip-btn svg{width:24px;height:24px}.step-player-speed-btn{height:34px;padding:0 10px;font-size:var(--text-sm);border-radius:8px}}@media(max-width:380px){.step-player-timeline{padding:10px 8px;gap:10px}.step-player-strip-btn{width:40px;height:40px}.step-player-strip-btn svg{width:22px;height:22px}.step-player-scrub{height:36px}.step-player-scrub-thumb{width:16px;height:16px;right:-8px}.step-player-speed-btn{height:30px;padding:0 8px}}@media(max-height:500px)and (orientation:landscape){.step-player-timeline{padding:8px 6px;gap:10px;background:linear-gradient(to top,rgba(0,0,0,.7) 0%,rgba(0,0,0,.45) 60%,transparent 100%)}.step-player-scrub{height:32px}.step-player-strip-btn{width:38px;height:38px}.step-player-strip-btn svg{width:20px;height:20px}.step-player-scrub-thumb{width:14px;height:14px;right:-7px}.step-player-scrub-track,.step-player-scrub-progress{height:4px}.step-player-speed-btn{height:26px;padding:0 6px;font-size:var(--text-xs)}.step-player-ghost-icon{width:52px;height:52px;border-radius:14px}.step-player-ghost-icon svg{width:22px;height:22px}}.step-player-ghost-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:56px;height:56px;border-radius:14px;background:#00000080;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.1);box-shadow:0 6px 24px #00000059,inset 0 1px #ffffff14;display:flex;align-items:center;justify-content:center;color:#fff;pointer-events:none;z-index:40;animation:step-player-ghost-fade .4s cubic-bezier(.2,.8,.2,1) forwards}.step-player-ghost-icon svg{width:24px;height:24px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}@keyframes step-player-ghost-fade{0%{opacity:0;transform:translate(-50%,-50%) scale(.75)}20%{opacity:1;transform:translate(-50%,-50%) scale(1.02)}50%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(1.06)}}@media(max-width:768px){.step-player-ghost-icon{width:60px;height:60px;border-radius:16px}.step-player-ghost-icon svg{width:26px;height:26px}}.clip-player.step-player-mirrored video{transform:scaleX(-1)}.step-player-gear-popover{width:280px;border-radius:12px;padding:0}.step-player-gear-sheet{max-height:70vh;overflow-y:auto}.step-player-gear-sheet-content{padding:0!important;gap:0!important}.step-player-gear-list{display:flex;flex-direction:column;padding:4px 0 12px}.step-player-gear-sheet .sliding-sheet-handle-bar{width:36px;height:4px;border-radius:2px}.step-player-gear-sheet .sliding-sheet-handle{padding:14px 0 6px}.step-player-gear-item{display:flex;align-items:center;gap:14px;padding:13px 20px;border:none;background:transparent;color:var(--text-primary);font-size:15px;font-weight:500;letter-spacing:-.01em;cursor:pointer;text-align:left;width:100%;transition:background var(--transition-fast),transform .1s ease;-webkit-tap-highlight-color:transparent}.step-player-gear-item:hover{background:var(--highlight-ghost, rgba(0, 0, 0, .035))}.step-player-gear-item:active{background:color-mix(in srgb,var(--primary) 8%,transparent);transform:scale(.985)}.step-player-gear-item-icon{width:20px;height:20px;color:var(--text-muted);flex-shrink:0}.step-player-gear-item-label{flex:1;min-width:0}.step-player-gear-item--danger,.step-player-gear-item--danger .step-player-gear-item-icon{color:var(--error, #e53e3e)}.step-player-gear-item--danger:active{background:color-mix(in srgb,var(--error, #e53e3e) 8%,transparent)}.step-player-gear-item--accent,.step-player-gear-item--accent .step-player-gear-item-icon{color:var(--primary)}.step-player-gear-item--accent:active{background:color-mix(in srgb,var(--primary) 8%,transparent)}.step-player-gear-item-check{width:18px;height:18px;color:var(--primary);flex-shrink:0}.step-player-gear-divider{height:1px;margin:4px 20px;background:var(--border, rgba(0, 0, 0, .06))}.step-player-gear-section{padding:10px 20px 6px;display:flex;flex-direction:column;gap:10px}.step-player-gear-section-label{font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.step-player-gear-speed-track{display:grid;grid-template-columns:repeat(6,1fr);gap:0;background:var(--bg-tertiary, rgba(0, 0, 0, .04));border-radius:10px;padding:3px}.step-player-gear-speed-btn{position:relative;border:none;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.01em;padding:8px 0;cursor:pointer;border-radius:8px;transition:background var(--transition-fast),color var(--transition-fast),transform 80ms ease,box-shadow var(--transition-fast);-webkit-tap-highlight-color:transparent}.step-player-gear-speed-btn:hover:not(.active){background:var(--highlight-ghost, rgba(0, 0, 0, .04));color:var(--text-primary)}.step-player-gear-speed-btn:active:not(.active){transform:scale(.92)}.step-player-gear-speed-btn.active{background:var(--surface, white);color:var(--primary);box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a}.step-player-gear-speed-btn.active:active{transform:scale(.95)}.step-player-gear-switch{position:relative;width:44px;height:26px;flex-shrink:0;border-radius:999px;background:var(--bg-tertiary, rgba(0, 0, 0, .08));transition:background var(--transition-normal);cursor:pointer}.step-player-gear-switch.active{background:var(--primary)}.step-player-gear-switch-thumb{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000026,0 1px 2px #0000000f;transition:transform var(--transition-normal) cubic-bezier(.4,0,.2,1)}.step-player-gear-switch.active .step-player-gear-switch-thumb{transform:translate(18px)}.step-player-gear-countdown-track{display:grid;grid-template-columns:repeat(4,1fr);gap:0;background:var(--bg-tertiary, rgba(0, 0, 0, .04));border-radius:10px;padding:3px}.step-player-gear-countdown-btn{position:relative;border:none;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:600;letter-spacing:-.01em;padding:8px 0;cursor:pointer;border-radius:8px;transition:background var(--transition-fast),color var(--transition-fast),transform 80ms ease,box-shadow var(--transition-fast);-webkit-tap-highlight-color:transparent}.step-player-gear-countdown-btn:hover:not(.active){background:var(--highlight-ghost, rgba(0, 0, 0, .04));color:var(--text-primary)}.step-player-gear-countdown-btn:active:not(.active){transform:scale(.92)}.step-player-gear-countdown-btn.active{background:var(--surface, white);color:var(--primary);box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a}.step-player-gear-countdown-btn.active:active{transform:scale(.95)}.step-player-gear-slots{margin-left:auto;font-size:var(--text-xs);font-weight:700;color:var(--text-tertiary);background:var(--surface-hover);padding:2px 7px;border-radius:6px;font-variant-numeric:tabular-nums}.step-player-gear-slots--full{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger)}.step-player-gear-limit-message{display:flex;align-items:flex-start;gap:6px;padding:8px 12px;margin:2px 0;border-radius:8px;background:color-mix(in srgb,var(--warning, #f59e0b) 8%,transparent);border:1px solid color-mix(in srgb,var(--warning, #f59e0b) 20%,transparent);font-size:11px;color:var(--text-secondary);line-height:1.4}.step-player-gear-limit-message svg{flex-shrink:0;margin-top:1px;color:var(--warning, #f59e0b)}.step-player-gear-item--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}@media(prefers-reduced-motion:reduce){.step-player-ghost-icon{animation:none;display:none}.step-player-gear-switch-thumb,.step-player-gear-speed-btn,.step-player-gear-countdown-btn,.step-player-strip-btn,.step-player-speed-btn,.step-player-topbtn,.step-player-scrub-thumb,.step-player-scrub-track,.step-player-scrub-progress{transition:none}}.notes-tab-toggle{display:flex;border-bottom:1px solid color-mix(in srgb,var(--border) 40%,transparent);flex:1;flex-shrink:0}.notes-tab-toggle-segment{flex:1;padding:10px 8px;background:transparent;border:none;display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast);margin-bottom:-1px;font-family:inherit;position:relative;min-height:var(--touch-target-min)}.notes-tab-toggle-segment:hover:not(.is-active){color:var(--text-secondary);background:var(--highlight-ghost)}.notes-tab-toggle-segment.is-active{color:var(--text-primary)}.notes-tab-toggle-segment.is-active:after{content:"";position:absolute;bottom:-1px;left:16%;right:16%;height:2px;background:var(--primary);border-radius:1px}.notes-tab-toggle-count{font-size:10px;font-weight:700;min-width:16px;height:16px;line-height:16px;padding:0 4px;border-radius:8px;background:var(--primary);color:#fff;text-align:center;letter-spacing:0;text-transform:none}.notes-tab-toggle-segment.is-active .notes-tab-toggle-count{background:var(--text-primary)}.annotation-card{display:flex;gap:10px;padding:10px 12px;border-radius:8px;background:var(--surface);border:1px solid var(--border);cursor:pointer;transition:all var(--transition-fast);align-items:flex-start;position:relative}.annotation-card:hover{background:var(--surface-hover);border-color:var(--border-hover)}.annotation-card.is-selected{background:var(--primary-subtle);border-color:var(--primary-border)}.annotation-card-timestamp{flex-shrink:0;padding:2px 8px;border-radius:4px;background:var(--surface-alt);font-size:var(--text-xs);font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-secondary);line-height:1.4}.annotation-card.is-selected .annotation-card-timestamp{background:var(--primary-border);color:#fff}.annotation-card-text{flex:1;font-size:var(--text-sm);color:var(--text-primary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-width:0}.annotation-card-edit,.annotation-card-delete{flex-shrink:0;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:4px;opacity:0;transition:opacity var(--transition-fast),color var(--transition-fast)}.annotation-card:hover .annotation-card-edit,.annotation-card:hover .annotation-card-delete{opacity:1}.annotation-card-edit:hover{color:var(--primary)}.annotation-card-delete:hover{color:var(--danger)}.annotation-card.is-editing{background:var(--surface);border-color:var(--primary-border);cursor:default}.annotation-card-edit-field{flex:1;min-height:36px;max-height:80px;padding:6px 8px;border-radius:6px;border:1.5px solid var(--border);background:var(--bg-primary);color:var(--text-primary);font-size:var(--text-sm);font-family:inherit;line-height:1.5;outline:none;resize:none;overflow-y:auto;caret-color:var(--primary);transition:border-color var(--transition-fast)}.annotation-card-edit-field:focus{border-color:var(--primary)}.annotation-card-edit-actions{display:flex;flex-direction:column;gap:4px;flex-shrink:0}.annotation-card-edit-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;border:none;cursor:pointer;font-size:13px;font-weight:600;transition:all var(--transition-fast)}.annotation-card-edit-btn--cancel{background:var(--surface-alt);color:var(--text-muted)}.annotation-card-edit-btn--cancel:hover{background:var(--surface-hover);color:var(--text-primary)}.annotation-card-edit-btn--save{background:var(--primary);color:#fff}.annotation-card-edit-btn--save:hover{background:var(--primary-hover)}.annotation-card-edit-btn--save:disabled{opacity:.3;cursor:not-allowed}@media(max-width:768px){.annotation-card-edit,.annotation-card-delete{opacity:.4}}.annotations-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 24px;text-align:center;gap:8px}.annotations-empty-icon{color:var(--text-muted);margin-bottom:8px}.annotations-empty-title{font-size:var(--text-base);color:var(--text-secondary);font-weight:500;margin:0}.annotations-empty-action{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:8px 16px;background:var(--primary);color:#fff;border:none;border-radius:8px;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:background var(--transition-fast),transform .1s ease;font-family:inherit}.annotations-empty-action:hover{background:var(--primary-dark, color-mix(in srgb, var(--primary) 85%, black))}.annotations-empty-action:active{transform:scale(.97)}.annotations-list{display:flex;flex-direction:column;gap:8px;overflow-y:auto;padding:4px 0}.annotations-list-add-btn{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;padding:6px 14px;background:color-mix(in srgb,var(--primary) 10%,transparent);border:1px solid color-mix(in srgb,var(--primary) 30%,transparent);border-radius:6px;color:var(--primary);font-size:12px;font-weight:600;cursor:pointer;transition:all var(--transition-fast);font-family:inherit}.annotations-list-add-btn:hover{background:color-mix(in srgb,var(--primary) 16%,transparent);border-color:color-mix(in srgb,var(--primary) 50%,transparent)}.annotations-list-add-btn:active{transform:scale(.97)}.annotations-list.is-loading{display:flex;align-items:center;justify-content:center;min-height:120px}.annotations-list-spinner{width:24px;height:24px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:annotations-spin .6s linear infinite}@keyframes annotations-spin{to{transform:rotate(360deg)}}.annotations-list-sheet-link{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:4px;padding:14px 16px;background:transparent;border:1.5px dashed var(--border);border-radius:10px;color:var(--text-secondary);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);font-family:inherit}.annotations-list-sheet-link:hover{background:var(--highlight-faint);border-color:var(--text-tertiary);color:var(--text-primary)}.annotations-list-sheet-link:active{background:var(--highlight-faint);border-color:var(--primary);color:var(--primary)}.annotation-pin{position:absolute;pointer-events:none;transform:translate(-50%,-50%);z-index:65}.annotation-pin-dot{display:block;width:12px;height:12px;border-radius:50%;background:var(--primary);border:2px solid white;box-shadow:0 1px 4px var(--shadow-medium)}.annotation-pin-pulse{position:absolute;inset:-6px;border-radius:50%;border:2px solid var(--primary);animation:pin-pulse 1.5s ease-out infinite}@keyframes pin-pulse{0%{transform:scale(1);opacity:.6}to{transform:scale(2);opacity:0}}.annotation-pin--subtle .annotation-pin-dot{width:8px;height:8px;opacity:.5;border:none}.annotation-pin--subtle .annotation-pin-pulse{display:none}.annotation-pin--clickable{pointer-events:auto;cursor:pointer}.annotation-input-overlay{position:fixed;width:240px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px;box-shadow:0 4px 16px var(--shadow-medium);z-index:65;transform:translate(-50%);display:flex;flex-direction:column;gap:8px}.annotation-input-overlay.is-below{margin-top:12px}.annotation-input-overlay.is-above{margin-bottom:12px}.annotation-input-backdrop{position:fixed;inset:0;background:transparent;z-index:9999}@keyframes annotation-backdrop-in{0%{opacity:0}to{opacity:1}}.annotation-input-mobile{position:fixed;bottom:0;left:0;right:0;background:var(--surface);border-radius:16px 16px 0 0;padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));box-shadow:0 -4px 24px var(--shadow-heavy, rgba(0, 0, 0, .2));z-index:10000;display:flex;flex-direction:column;gap:12px;animation:annotation-mobile-slide-up .2s ease-out}@keyframes annotation-mobile-slide-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.annotation-input-mobile-header{display:flex;align-items:center;justify-content:space-between}.annotation-input-mobile-title{font-size:var(--text-base);font-weight:600;color:var(--text-primary)}.annotation-input-field{width:100%;min-height:60px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:var(--text-base);font-family:inherit;line-height:1.4;resize:none;outline:none;transition:border-color var(--transition-fast)}.annotation-input-field:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-subtle)}.annotation-input-field::placeholder{color:var(--text-muted)}.annotation-input-footer{display:flex;align-items:center;justify-content:space-between}.annotation-input-char-count{font-size:var(--text-xs);color:var(--text-tertiary);font-variant-numeric:tabular-nums}.annotation-input-actions{display:flex;gap:6px}.annotation-mode-bar{position:absolute;bottom:0;left:0;right:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:24px 20px 20px;pointer-events:auto;color:#fff;animation:annotation-bar-fade-in var(--transition-normal) ease-out}.annotation-mode-bar:before{content:"";position:absolute;bottom:0;left:0;right:0;height:350%;background:linear-gradient(to top,#000000d9,#0009,#0003 70%,#0000);pointer-events:none;z-index:-1}.annotation-mode-bar-top{position:absolute;top:0;left:0;right:0;z-index:11;height:120px;pointer-events:none;animation:annotation-bar-fade-in var(--transition-normal) ease-out}.annotation-mode-bar-top:before{content:"";position:absolute;top:0;left:0;right:0;height:100%;background:linear-gradient(to bottom,#000000b3,#0006 45%,#0000);pointer-events:none}.annotation-mode-bar--top{position:absolute;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:max(20px,calc(var(--safe-area-top, 0px) + 8px)) 20px 24px;pointer-events:auto;color:#fff;animation:annotation-bar-fade-in var(--transition-normal) ease-out}.annotation-mode-bar--top:before{content:"";position:absolute;top:0;left:0;right:0;height:350%;background:linear-gradient(to bottom,#000000d9,#0009,#0003 70%,#0000);pointer-events:none;z-index:-1}.annotation-mode-bar-bottom{position:absolute;bottom:0;left:0;right:0;z-index:11;height:120px;pointer-events:none;animation:annotation-bar-fade-in var(--transition-normal) ease-out}.annotation-mode-bar-bottom:before{content:"";position:absolute;bottom:0;left:0;right:0;height:100%;background:linear-gradient(to top,#000000b3,#0006 45%,#0000);pointer-events:none}@keyframes annotation-bar-fade-in{0%{opacity:0}to{opacity:1}}.annotation-mode-bar__text{font-size:15px;font-weight:600;color:#fff;letter-spacing:.3px}.annotation-mode-bar__cancel{border:1px solid rgba(255,255,255,.3);background:#ffffff1f;color:#fff;font-size:var(--text-sm);font-weight:600;padding:8px 18px;border-radius:8px;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--transition-fast)}.annotation-mode-bar__cancel:hover{background:#ffffff40}.annotation-mode-bar__cancel:active{background:#ffffff14;transform:scale(.97)}.annotation-mode-bar--safe-area{padding-bottom:calc(20px + var(--safe-area-bottom, 0px))}@media(max-width:768px){.annotation-mode-bar{padding:22px 16px 16px}.annotation-mode-bar--top{padding:max(16px,calc(var(--safe-area-top, 0px) + 8px)) 16px 22px}}.annotation-pill{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:25;display:flex;align-items:center;gap:8px;padding:6px 8px 6px 12px;border-radius:999px;background:#0000008c;backdrop-filter:blur(20px) saturate(1.5);-webkit-backdrop-filter:blur(20px) saturate(1.5);border:1px solid rgba(255,255,255,.12);box-shadow:0 4px 16px #0000004d,inset 0 1px #ffffff0f;color:#fff;animation:annotation-pill-enter .3s cubic-bezier(.16,1,.3,1);pointer-events:auto;white-space:nowrap;cursor:grab;touch-action:none}.annotation-pill:active{cursor:grabbing}.annotation-pill--dragged{transition:none}@keyframes annotation-pill-enter{0%{transform:translate(-50%) translateY(-8px) scale(.9);opacity:0}to{transform:translate(-50%) translateY(0) scale(1);opacity:1}}.annotation-pill__dot{width:7px;height:7px;border-radius:50%;background:var(--primary);animation:annotation-pill-pulse 2s ease-in-out infinite;flex-shrink:0}@keyframes annotation-pill-pulse{0%,to{opacity:1;box-shadow:0 0 0 0 var(--primary-glow)}50%{opacity:.7;box-shadow:0 0 0 4px var(--primary-glow)}}.annotation-pill__count{font-size:12px;font-weight:700;color:#ffffffe6;font-variant-numeric:tabular-nums}.annotation-pill__sep{width:1px;height:14px;background:#ffffff26}.annotation-pill__hint{font-size:12px;font-weight:500;color:#ffffffa6}.annotation-pill__playpause{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;border:none;background:#ffffff1f;color:#ffffffd9;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.annotation-pill__playpause:hover{background:#ffffff40;color:#fff}.annotation-pill__exit{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;border:none;background:#ffffff1f;color:#ffffffb3;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.annotation-pill__exit:hover{background:#ffffff40;color:#fff}@media(max-width:768px){.annotation-pill__playpause,.annotation-pill__exit{width:36px;height:36px}}.annotation-pill-input{position:absolute;top:12px;left:50%;transform:translate(-50%);width:calc(100% - 20px);max-width:400px;z-index:70;display:flex;flex-direction:column;gap:6px;padding:8px 8px 6px;border-radius:16px;background:var(--surface);border:1px solid var(--border);box-shadow:0 4px 24px #00000026;color:var(--text-primary);pointer-events:auto;animation:annotation-pill-input-morph .3s cubic-bezier(.16,1,.3,1)}@keyframes annotation-pill-input-morph{0%{width:50%;opacity:0;transform:translate(-50%) scaleY(.8)}to{width:calc(100% - 20px);opacity:1;transform:translate(-50%) scaleY(1)}}.annotation-pill-input__row{display:flex;align-items:flex-end;gap:6px}.annotation-pill-input__field{flex:1;min-height:36px;max-height:80px;padding:8px 12px;border-radius:10px;border:1.5px solid var(--border);background:var(--bg-primary);color:var(--text-primary);font-size:14px;font-family:inherit;font-weight:400;line-height:1.4;outline:none;resize:none;overflow-y:auto;caret-color:var(--primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.annotation-pill-input__field::placeholder{color:var(--text-muted);font-weight:400}.annotation-pill-input__field:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-subtle)}.annotation-pill-input__cancel{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:1px solid var(--border);background:transparent;color:var(--text-tertiary);cursor:pointer;flex-shrink:0;transition:all var(--transition-fast)}.annotation-pill-input__cancel:hover{background:var(--surface-hover);color:var(--text-secondary)}.annotation-pill-input__cancel:active{background:var(--highlight-faint)}.annotation-pill-input__save{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:none;background:var(--primary);color:#fff;cursor:pointer;flex-shrink:0;transition:all var(--transition-fast);box-shadow:0 2px 8px var(--primary-glow)}.annotation-pill-input__save:hover{background:var(--primary-hover);transform:scale(1.05)}.annotation-pill-input__save:disabled{opacity:.3;cursor:not-allowed;transform:none;box-shadow:none}.annotation-pill-input__meta{display:flex;align-items:center;justify-content:space-between;padding:0 4px}.annotation-pill-input__count-badge{font-size:11px;font-weight:500;color:var(--text-muted)}.annotation-pill-input__chars{font-size:11px;color:var(--text-muted);font-variant-numeric:tabular-nums}.mobile-step-info-backdrop{position:fixed;inset:0;background:#00000080;z-index:9998;animation:mobileStepBackdropIn .2s ease-out}.mobile-step-info-backdrop.closing{animation:mobileStepBackdropOut .25s ease-out}@keyframes mobileStepBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes mobileStepBackdropOut{0%{opacity:1}to{opacity:0}}.mobile-step-info-sheet{position:fixed;bottom:0;left:0;right:0;background:var(--bg-secondary, #1a1a1a);border-top-left-radius:20px;border-top-right-radius:20px;box-shadow:0 -8px 30px var(--shadow-heavy, rgba(0, 0, 0, .4));display:flex;flex-direction:column;overflow:hidden;z-index:9999;animation:mobileStepSheetIn .3s cubic-bezier(.32,.72,0,1);padding-bottom:var(--safe-area-bottom)}.mobile-step-info-sheet.animating-in{animation:mobileStepSheetIn .3s cubic-bezier(.32,.72,0,1)}.mobile-step-info-sheet.animating-out{animation:mobileStepSheetOut .25s ease-out forwards}.mobile-step-info-sheet.is-snapping{transition:height .3s cubic-bezier(.32,.72,0,1)}.mobile-step-info-sheet.is-dragging{transition:none}@keyframes mobileStepSheetIn{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes mobileStepSheetOut{0%{transform:translateY(0)}to{transform:translateY(100%)}}.mobile-step-info-handle{display:flex;align-items:center;justify-content:center;padding:12px 0 6px;cursor:pointer;flex-shrink:0}.mobile-step-info-handle-bar{width:36px;height:4px;background:var(--highlight-soft, rgba(255, 255, 255, .15));border-radius:2px;transition:background var(--transition-fast)}.mobile-step-info-handle:hover .mobile-step-info-handle-bar{background:var(--overlay-subtle, rgba(255, 255, 255, .25))}.mobile-step-info-title-row{display:flex;align-items:center;gap:10px;padding:0 16px 4px;flex-shrink:0}.mobile-step-info-header{display:flex;align-items:center;justify-content:space-between;padding:0 16px;flex-shrink:0}.mobile-step-info-header-label{font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary, rgba(255, 255, 255, .5));text-transform:uppercase;letter-spacing:.05em}.mobile-step-info-number{display:flex;align-items:center;justify-content:center;width:26px;height:26px;min-width:26px;background:linear-gradient(135deg,var(--primary-subtle, rgba(207, 138, 77, .15)) 0%,var(--primary-subtle, rgba(207, 138, 77, .15)) 100%);border:1.5px solid var(--primary-glow, rgba(207, 138, 77, .3));border-radius:50%;font-size:var(--text-xs);font-weight:700;color:var(--primary, #cf8a4d)}.mobile-step-info-title{font-size:var(--text-sm);font-weight:600;color:var(--text-secondary, rgba(255, 255, 255, .7));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-step-info-edit-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border, rgba(255, 255, 255, .1));border-radius:8px;color:var(--text-secondary, rgba(255, 255, 255, .7));cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.mobile-step-info-edit-btn svg{width:16px;height:16px}.mobile-step-info-edit-btn:active{background:var(--highlight-faint, rgba(255, 255, 255, .05));transform:scale(.95)}.mobile-step-info-content{flex:1;min-height:0;padding:16px;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.mobile-step-info-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:32px 16px;text-align:center}.mobile-step-info-empty-text{color:var(--text-tertiary, rgba(255, 255, 255, .5));font-size:var(--text-base)}.mobile-step-info-add-btn{padding:10px 20px;background:var(--primary-subtle, rgba(207, 138, 77, .15));border:1px solid var(--primary-glow, rgba(207, 138, 77, .3));border-radius:8px;color:var(--primary, #cf8a4d);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.mobile-step-info-add-btn:active{background:var(--primary-glow, rgba(207, 138, 77, .3));transform:scale(.98)}.mobile-step-info-tips{margin-top:20px;padding:14px;background:var(--bg-tertiary, rgba(255, 255, 255, .03));border-radius:12px;border:1px solid var(--border, rgba(255, 255, 255, .08))}.mobile-step-info-tips-header{display:flex;align-items:center;gap:8px;color:var(--primary, #cf8a4d);font-size:var(--text-xs);font-weight:600;letter-spacing:.05em;margin-bottom:12px}.mobile-step-info-tips-header svg{width:16px;height:16px}.mobile-step-info-tips-list{margin:0;padding:0;list-style:none}.mobile-step-info-tips-list li{position:relative;padding-left:16px;color:var(--text-secondary, rgba(255, 255, 255, .7));font-size:var(--text-sm);line-height:1.5;margin-bottom:8px}.mobile-step-info-tips-list li:last-child{margin-bottom:0}.mobile-step-info-tips-list li:before{content:"•";position:absolute;left:0;color:var(--primary, #cf8a4d)}.mobile-step-info-fullscreen{position:fixed;inset:0;z-index:10000;background:var(--bg-secondary, #1a1a1a);display:flex;flex-direction:column;animation:mobileStepFullscreenIn .3s cubic-bezier(.32,.72,0,1)}@keyframes mobileStepFullscreenIn{0%{opacity:.8;transform:translateY(20%)}to{opacity:1;transform:translateY(0)}}.mobile-step-info-fullscreen-header{display:flex;align-items:center;justify-content:space-between;padding:16px;padding-top:max(16px,calc(var(--safe-area-top) + 8px));border-bottom:1px solid var(--border, rgba(255, 255, 255, .1));flex-shrink:0}.mobile-step-info-fullscreen-title{font-size:17px;font-weight:600;color:var(--text-primary, #fff)}.mobile-step-info-edit-actions{display:flex;align-items:center;gap:8px}.mobile-step-info-action-btn{width:40px;height:40px;border-radius:10px;border:1px solid var(--border, rgba(255, 255, 255, .1));background:transparent;color:var(--text-secondary, rgba(255, 255, 255, .7));cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.mobile-step-info-action-btn svg{width:20px;height:20px}.mobile-step-info-action-btn.cancel{background:var(--highlight-ghost, rgba(255, 255, 255, .03));border-color:var(--highlight-subtle, rgba(255, 255, 255, .1));color:var(--text-tertiary, rgba(255, 255, 255, .5))}.mobile-step-info-action-btn.cancel:active{background:var(--highlight-faint, rgba(255, 255, 255, .05))}.mobile-step-info-action-btn.save{background:var(--warning-subtle, rgba(229, 161, 88, .15));border-color:var(--warning-glow, rgba(229, 161, 88, .3));color:var(--warning, #e5a158)}.mobile-step-info-action-btn.save:active{background:var(--warning-glow, rgba(229, 161, 88, .3))}.mobile-step-info-fullscreen-content{flex:1;display:flex;flex-direction:column;padding:0;padding-bottom:var(--safe-area-bottom);overflow:hidden}.mobile-step-info-fullscreen-content .notes-panel,.mobile-step-info-fullscreen-content .notes-edit-container{flex:1;display:flex;flex-direction:column;height:100%}.mobile-step-info-fullscreen-content .notes-edit-textarea-input{flex:1;width:100%;height:100%;min-height:unset;padding:16px;background:transparent;border:none;color:var(--text-primary, #fff);font-size:16px;line-height:1.6;resize:none;outline:none}.mobile-step-info-fullscreen-content .notes-edit-textarea-input::placeholder{color:var(--text-tertiary, rgba(255, 255, 255, .5))}.rename-context-menu{position:fixed;min-width:140px;padding:6px;background:var(--surface);border:1px solid var(--highlight-faint);border-radius:10px;box-shadow:0 4px 6px -1px var(--shadow-medium),0 10px 15px -3px var(--shadow-heavy),0 0 0 1px var(--highlight-ghost);z-index:99999;animation:renameMenuFadeIn .1s ease}@keyframes renameMenuFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.rename-context-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:transparent;border:none;border-radius:6px;color:var(--overlay-medium);font-size:var(--text-sm);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.rename-context-menu-item:hover{background:var(--highlight-ghost);color:var(--text-primary)}.rename-context-menu-item svg{flex-shrink:0;opacity:.7}.rename-context-menu-item:hover svg{opacity:1}[data-theme=warm] .rename-context-menu{background:var(--surface);border-color:var(--shadow-subtle);box-shadow:0 4px 6px -1px var(--shadow-subtle),0 10px 15px -3px var(--shadow-soft)}[data-theme=warm] .rename-context-menu-item{color:var(--overlay-dark)}[data-theme=warm] .rename-context-menu-item:hover{background:var(--shadow-ghost);color:var(--text-primary)}:root{--grid-notes-max-height: 150px;--grid-notes-max-height-mobile: 48px}:root{--grid-notes-fade-base: var(--bg-secondary, #18181b)}.analysis-page .step-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:14px;user-select:none;-webkit-user-select:none;overflow:hidden;transition:border-color var(--transition-normal),box-shadow var(--transition-normal),transform var(--transition-normal);box-shadow:0 1px 2px var(--shadow-ghost),0 4px 8px var(--shadow-ghost),0 8px 16px var(--shadow-ghost)}.analysis-page .step-card:hover{border-color:var(--border-hover);box-shadow:0 2px 4px var(--shadow-subtle),0 6px 12px var(--shadow-ghost),0 12px 24px var(--shadow-ghost)}@media(max-width:768px){.analysis-page .step-card{border:none}}.analysis-page .step-card-highlight{animation:stepCardPulse 1.2s cubic-bezier(.4,0,.2,1)}@keyframes stepCardPulse{0%{border-color:var(--primary-glow);outline:2px solid var(--primary-glow);outline-offset:0px}40%{border-color:var(--primary-glow);outline:2px solid var(--primary-subtle);outline-offset:1px}to{border-color:var(--border);outline:2px solid transparent;outline-offset:0px}}.analysis-page .step-video-container{position:relative;background:var(--letterbox-color, #000);aspect-ratio:var(--grid-video-aspect-ratio, .7);overflow:hidden}.analysis-page .step-content-layer{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;visibility:hidden;transition:opacity var(--transition-normal),visibility var(--transition-normal)}.analysis-page .step-content-layer.active{opacity:1;visibility:visible;position:relative}.analysis-page .step-video-container.inline-crop-active .step-content-layer{transition:none}.analysis-page .step-video-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:48px;color:var(--highlight-faint)}.analysis-page .step-static-image{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.analysis-page .step-poster-backdrop{position:absolute;inset:0;background-color:var(--letterbox-color, #000);z-index:9}.analysis-page .step-video-slot{position:absolute;inset:0;z-index:10}.analysis-page .step-video-slot .video-slot-poster{object-fit:cover}.analysis-page .step-card .clip-control-bar{opacity:0!important;pointer-events:none!important}.analysis-page .step-content-layer.poster-visible video{visibility:hidden}.analysis-page .step-content-layer.poster-visible .clip-player{visibility:hidden;pointer-events:none}.analysis-page .step-content-layer.poster-visible .step-player-overlay{display:none}.analysis-page .step-video-tap-overlay{position:absolute;inset:0;z-index:15;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}body.clip-edit-segment-active .analysis-page .step-video-tap-overlay{pointer-events:none;cursor:default}.analysis-page .step-loading-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;display:flex;align-items:center;justify-content:center;z-index:20;pointer-events:none;animation:stepSpinnerFadeIn .15s ease-out}@keyframes stepSpinnerFadeIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.8)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.analysis-page .step-card.pressing-play .step-video-container{filter:brightness(.92);transition:filter var(--transition-fast)}.analysis-page .step-card:not(.pressing-play) .step-video-container{transition:filter var(--transition-slow)}@keyframes stepTapBloom{0%{transform:translate(-50%,-50%) scale(0);opacity:0}20%{opacity:.5}to{transform:translate(-50%,-50%) scale(1);opacity:0}}.analysis-page .step-tap-ripple{position:absolute;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,var(--overlay-subtle) 0%,var(--highlight-soft) 30%,var(--highlight-ghost) 60%,transparent 80%);pointer-events:none;z-index:25;animation:stepTapBloom .6s cubic-bezier(.23,1,.32,1) forwards}.analysis-page .step-maximize-btn-wrapper{position:absolute;top:10px;right:10px;opacity:0;transform:translateY(0);transition:opacity var(--transition-fast),transform var(--transition-normal);z-index:20;display:flex;flex-direction:row;gap:6px}.analysis-page .step-card:hover .step-maximize-btn-wrapper{opacity:1}body.crop-overlay-active .analysis-page .step-maximize-btn-wrapper{opacity:0;pointer-events:none}body.clip-edit-segment-active .analysis-page .step-maximize-btn-wrapper{opacity:0!important;visibility:hidden!important;transform:translateY(-6px);pointer-events:none!important}.analysis-page .step-maximize-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#00000040;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.18);border-radius:8px;color:#fff;font-size:16px;cursor:pointer;transition:transform var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast);box-shadow:none}.analysis-page .step-maximize-btn.step-maximize-btn--circle{border-radius:999px}.analysis-page .step-maximize-btn:hover{background:#00000059;border-color:#ffffff47;color:#fff;transform:none;box-shadow:none}.analysis-page .step-maximize-btn.cropping{background:var(--primary-glow);border-color:var(--primary-glow);color:var(--text-on-primary);box-shadow:0 0 12px var(--primary-glow)}.analysis-page .step-maximize-btn svg{width:20px;height:20px;stroke:currentColor}.analysis-page .step-card-star{position:absolute;top:10px;left:10px;width:36px;height:36px;border-radius:10px;border:1px solid rgba(255,255,255,.15);background:#ffffffe6;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--text-tertiary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .18s cubic-bezier(.2,.8,.2,1),background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,opacity .18s ease;z-index:20;opacity:0;pointer-events:none;box-shadow:0 2px 8px #00000014}.analysis-page .step-card-star svg{width:20px;height:20px}.analysis-page .step-card:hover .step-card-star,.analysis-page .step-card:focus-within .step-card-star,.analysis-page .step-card-star.active,.analysis-page .step-card-star:focus-visible{opacity:1;pointer-events:auto}@media(hover:none)and (pointer:coarse){.analysis-page .step-card-star{opacity:1;pointer-events:auto}}@media(max-width:768px){.analysis-page .step-card-star.step-card-star--video-overlay{display:none}}.analysis-page .step-card-star.step-card-star--title-row{display:inline;vertical-align:middle;position:static;opacity:1;pointer-events:auto;background:none!important;background-color:transparent!important;border:none!important;border-radius:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none!important;padding:0;margin-left:4px;width:auto;height:auto;color:var(--text-tertiary)}.analysis-page .step-card-star.step-card-star--title-row svg{width:21px;height:21px;vertical-align:middle;position:relative}.analysis-page .step-card-star.step-card-star--title-row:active svg{transform:scale(.85)}.analysis-page .step-card-star.step-card-star--title-row.active{color:var(--primary);background:none!important;background-color:transparent!important;border:none!important;box-shadow:none!important}@media(min-width:769px){.analysis-page .step-card-star.step-card-star--video-overlay{display:none}.analysis-page .step-card-star.step-card-star--title-row{margin-left:-5px;margin-bottom:-1px}}.analysis-page .step-card-star:hover{background:#fffffffa;box-shadow:var(--hover-shadow-lift);transform:scale(var(--hover-scale-button))}.analysis-page .step-card-star:active{transform:scale(.9);box-shadow:0 1px 4px #0000001a}.analysis-page .step-card-star.active{color:var(--primary);background:#fffffff2;border-color:#0000000f;box-shadow:0 2px 8px #00000014;animation:stepStarPop .28s cubic-bezier(.2,.9,.25,1)}.analysis-page .step-card-star.active:hover{background:#fff;box-shadow:0 4px 12px #0000001a}@keyframes stepStarPop{0%{transform:scale(.85)}50%{transform:scale(1.12)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.analysis-page .step-card-star{transition:none}.analysis-page .step-card-star.active{animation:none}}body.crop-overlay-active .analysis-page .step-card-star,body.clip-edit-segment-active .analysis-page .step-card-star{opacity:0!important;pointer-events:none!important}.analysis-page .step-content{padding:14px 16px 16px;margin-top:-1px;position:relative;background:var(--bg-secondary);border-top:1px solid var(--highlight-ghost)}.analysis-page .step-title-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:10px}.analysis-page .step-title{font-size:var(--text-base);font-weight:600;color:var(--text-primary);letter-spacing:-.015em;flex:1;min-width:0;margin:0;display:flex;align-items:center;gap:12px;position:relative;line-height:1.45}.analysis-page .step-number{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;min-width:26px;padding:0;background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--primary-subtle) 100%);border:1.5px solid var(--primary-glow);border-radius:50%;font-size:11.5px;font-weight:700;color:var(--primary);font-variant-numeric:tabular-nums;letter-spacing:0;flex-shrink:0;box-shadow:0 1px 2px var(--primary-subtle);transition:all var(--transition-normal);line-height:1}.analysis-page .step-card:hover .step-number{background:linear-gradient(135deg,var(--primary-glow) 0%,var(--primary-subtle) 100%);border-color:var(--primary-glow);color:var(--primary);box-shadow:0 0 0 3px var(--primary-subtle),inset 0 1px 0 var(--highlight-faint)}.analysis-page .step-number-prominent{width:30px;height:30px;min-width:30px;padding:0;font-size:var(--text-sm);font-weight:700;color:var(--primary);background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--primary-subtle) 100%);border:1.5px solid var(--primary-glow);border-radius:50%;letter-spacing:-.01em;box-shadow:0 1px 3px var(--primary-subtle);transition:all var(--transition-normal)}.analysis-page .step-card:hover .step-number-prominent{background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--primary-subtle) 100%);border-color:var(--primary-glow);box-shadow:0 0 0 3px var(--primary-subtle),0 2px 4px var(--primary-subtle)}.analysis-page .step-number-full-section{background:linear-gradient(135deg,var(--primary-subtle) 0%,rgba(var(--primary-rgb),.2) 100%);border-color:var(--primary)}.analysis-page .step-number-full-section svg{display:block}.analysis-page .step-card:hover .step-number-full-section{background:linear-gradient(135deg,var(--primary-glow) 0%,rgba(var(--primary-rgb),.25) 100%);box-shadow:0 0 0 3px var(--primary-subtle),0 2px 6px var(--primary-subtle)}.analysis-page .step-updating-spinner{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;color:var(--primary);opacity:.8}.analysis-page .step-updating-spinner svg{width:18px;height:18px;animation:step-updating-spin 1s linear infinite}@keyframes step-updating-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.analysis-page .step-type-icon-box{width:29px;height:29px;min-width:29px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:var(--text-sm);flex-shrink:0;transition:all var(--transition-normal)}.analysis-page .step-type-icon-box.step-type-demo{color:var(--icon-demo, #4BC4BB);background:var(--icon-demo-soft, rgba(75, 196, 187, .15));border:1px solid var(--icon-demo-border, rgba(75, 196, 187, .25))}.analysis-page .step-type-icon-box.step-type-recap{color:var(--icon-recap, #4BC4BB);background:var(--icon-recap-soft, rgba(75, 196, 187, .15));border:1px solid var(--icon-recap-border, rgba(75, 196, 187, .25))}.analysis-page .step-type-icon-box.step-type-tips{color:var(--icon-tips, #E5A158);background:var(--icon-tips-soft, rgba(229, 161, 88, .15));border:1px solid var(--icon-tips-border, rgba(229, 161, 88, .25))}.analysis-page .step-title-text{flex:0 1 auto;min-width:0}.analysis-page .step-title-edit-container{display:flex;align-items:center;gap:8px;flex:1;min-width:0;overflow:hidden}.analysis-page .step-title-edit-input{flex:1;min-width:0;padding:6px 10px;background:var(--bg-tertiary);border:1px solid var(--primary-glow);border-radius:6px;color:var(--text-primary);font-size:var(--text-sm);font-weight:600;font-family:inherit}.analysis-page .step-title-edit-input:focus{outline:none;border-color:var(--primary)}.analysis-page .step-title-edit-input:disabled{opacity:.6;cursor:not-allowed}.analysis-page .step-title-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}.analysis-page .step-icon-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border);border-radius:4px;color:var(--text-tertiary);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-fast)}.analysis-page .step-title-edit-actions{display:flex;gap:4px;align-items:center}.analysis-page .step-title-edit-btn{width:24px;height:24px;border:1px solid var(--border);border-radius:4px;font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;background:transparent;color:var(--text-tertiary)}.analysis-page .step-title-edit-btn:hover{background:var(--bg-tertiary);color:var(--text-secondary);border-color:var(--border-hover)}.analysis-page .step-title-edit-btn:active{background:var(--bg-secondary)}.analysis-page .step-edit-dropdown-wrapper{position:relative}.analysis-page .step-dropdown-trigger{font-size:16px;line-height:1}.analysis-page .step-edit-dropdown-menu{position:absolute;top:100%;right:0;margin-top:4px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 12px var(--shadow-soft),0 0 0 1px var(--shadow-ghost);min-width:140px;overflow:hidden;z-index:100;animation:dropdownFadeIn .15s cubic-bezier(.4,0,.2,1)}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.analysis-page .step-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;background:transparent;border:none;color:var(--text-secondary);font-size:var(--text-sm);font-family:inherit;text-align:left;cursor:pointer;transition:all var(--transition-fast)}.analysis-page .step-dropdown-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.analysis-page .step-dropdown-icon{font-size:var(--text-sm);width:16px;text-align:center;flex-shrink:0}.analysis-page .step-title-inline-edit{margin-left:-4px;opacity:0;transition:opacity var(--transition-fast) .05s;width:20px;height:20px;font-size:var(--text-xs);position:relative}.analysis-page .step-title-inline-edit:before{content:"";position:absolute;top:0;right:100%;width:10px;height:100%}.analysis-page .step-title-text:hover~.step-title-inline-edit,.analysis-page .step-title-inline-edit:hover{opacity:1;transition-delay:0s}.analysis-page .step-title:hover .step-title-inline-edit{opacity:1;transition-delay:0s}.analysis-page .step-notes{margin-bottom:2px;position:relative}.analysis-page .step-notes-list{max-height:var(--grid-notes-max-height, 240px);overflow:hidden;position:relative}.analysis-page .step-notes-list.empty-hidden{display:none}.analysis-page .step-notes-list.expanded{max-height:2000px}.analysis-page .step-notes-list.click-to-expand{cursor:pointer}.analysis-page .step-notes-list.editing{max-height:none;overflow:visible}@media(min-width:769px){.analysis-page .step-notes-list.editing .notes-edit-textarea-input,.analysis-page .step-notes-list.editing .notes-edit-contenteditable-input{min-height:180px}}.analysis-page .step-notes-list.needs-expand:not(.expanded):not(.editing):before,.analysis-page .step-notes-list.needs-expand:not(.expanded):not(.editing):after{content:"";position:absolute;bottom:0;left:0;right:0;pointer-events:none}.analysis-page .step-notes-list.needs-expand:not(.expanded):not(.editing):after{height:70px;background:linear-gradient(to bottom,#18181b00,#18181b66 40%,#18181bcc,#18181b)}.analysis-page .step-notes-list.needs-expand:not(.expanded):not(.editing):before{height:100px;background:linear-gradient(to bottom,#18181b00,#18181b4d 60%,#18181b99)}@supports (background: color-mix(in srgb,white 50%,transparent)){.analysis-page .step-notes-list.needs-expand:not(.expanded):not(.editing):after{background:linear-gradient(to bottom,color-mix(in srgb,var(--grid-notes-fade-base) 0%,transparent),color-mix(in srgb,var(--grid-notes-fade-base) 40%,transparent) 40%,color-mix(in srgb,var(--grid-notes-fade-base) 80%,transparent),color-mix(in srgb,var(--grid-notes-fade-base) 100%,transparent))}.analysis-page .step-notes-list.needs-expand:not(.expanded):not(.editing):before{background:linear-gradient(to bottom,color-mix(in srgb,var(--grid-notes-fade-base) 0%,transparent),color-mix(in srgb,var(--grid-notes-fade-base) 30%,transparent) 60%,color-mix(in srgb,var(--grid-notes-fade-base) 60%,transparent))}}.analysis-page .step-notes-toggle{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:4px 0;margin:0;background:transparent;border:none;color:var(--step-notes-toggle-color, var(--text-tertiary));font-size:var(--text-sm);font-weight:500;cursor:pointer;letter-spacing:0;transition:color var(--transition-fast);opacity:.7}.analysis-page .step-notes-toggle.expanded{margin-top:12px}.analysis-page .step-notes-toggle:hover{color:var(--step-notes-toggle-hover-color, var(--text-secondary));opacity:1}.analysis-page .step-notes-toggle-icon{font-size:7px;transition:transform var(--transition-normal)}.analysis-page .step-notes-toggle.expanded .step-notes-toggle-icon{transform:rotate(180deg)}.analysis-page .step-note{font-size:16px;line-height:1.6;color:var(--text-secondary);letter-spacing:-.01em;margin-bottom:0}.analysis-page .step-note.note-paragraph{padding-left:0;margin-bottom:4px}.analysis-page .step-note.note-bullet{padding-left:16px;position:relative;margin-bottom:4px}.analysis-page .step-note.note-bullet:before{content:"•";position:absolute;left:0;color:var(--text-tertiary)}.analysis-page .step-note.note-bullet-nested{padding-left:32px;position:relative;margin-bottom:4px}.analysis-page .step-note.note-bullet-nested:before{content:"•";position:absolute;left:16px;color:var(--text-tertiary);font-size:var(--text-xs)}.analysis-page .step-note:last-child{margin-bottom:0}.analysis-page .step-note.note-spacer{height:11px;margin:0 0 4px;padding:0}.analysis-page .step-note strong{color:var(--text-primary);font-weight:600}.analysis-page .step-note em{font-style:italic;color:var(--text-tertiary)}.analysis-page .step-notes-empty{font-size:var(--text-sm);color:var(--text-tertiary);font-style:italic;padding:4px 0}.analysis-page .step-notes-empty-icon{font-style:normal}.analysis-page .step-content{animation:stepContentAppear .2s cubic-bezier(.4,0,.2,1)}@keyframes stepContentAppear{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.analysis-page .step-card-condensed{border-radius:10px;overflow:hidden;position:relative}.analysis-page .step-card-condensed .step-video-container{border-radius:10px}.analysis-page .step-card-condensed .clip-duration-badge{display:none}.analysis-page .step-card-condensed.step-card-demo,.analysis-page .step-card-condensed.step-card-recap,.analysis-page .step-card-condensed.step-card-tips{border-top:3px solid transparent}.analysis-page .step-card-condensed.step-card-demo{border-top-color:var(--icon-demo, #4BC4BB)}.analysis-page .step-card-condensed.step-card-recap{border-top-color:var(--icon-recap, #4BC4BB)}.analysis-page .step-card-condensed.step-card-tips{border-top-color:var(--icon-tips, #E5A158)}.analysis-page .step-card-condensed[data-condensed-label]:before{content:attr(data-condensed-label);position:absolute;top:10px;left:10px;padding:4px 8px;border-radius:3px;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.02em;z-index:20;transition:opacity var(--transition-slow);display:none}.analysis-page .step-card-condensed.step-card-demo[data-condensed-label]:before{display:block;background:var(--icon-demo, #4BC4BB);color:var(--text-on-primary)}.analysis-page .step-card-condensed.step-card-recap[data-condensed-label]:before{display:block;background:var(--icon-recap, #4BC4BB);color:var(--text-on-primary)}.analysis-page .step-card-condensed.step-card-tips[data-condensed-label]:before{display:block;background:var(--icon-tips, #E5A158);color:var(--text-on-primary)}.analysis-page .step-card-condensed.step-card-video-playing[data-condensed-label]:before{opacity:0}.analysis-page .step-condensed-dots{position:absolute;top:10px;right:10px;z-index:20}.analysis-page .step-condensed-dots-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--overlay-dark);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--highlight-subtle);border-radius:50%;cursor:pointer;color:var(--overlay-medium);transition:all var(--transition-fast);box-shadow:0 2px 8px var(--shadow-medium)}.analysis-page .step-condensed-dots-btn:active{background:var(--overlay-dark);transform:scale(.95)}.analysis-page .step-condensed-dots-btn svg{width:16px;height:16px}.analysis-page .step-video-container .clip-player video{object-fit:var(--grid-video-object-fit, contain)}.analysis-page .step-video-container.landscape-video .clip-player video{object-fit:cover}.analysis-page .step-video-container.crop-expanded{--grid-video-object-fit: contain}.analysis-page .step-video-container.crop-expanded .clip-player video,.analysis-page .step-video-container.crop-expanded .step-video-slot .video-slot-poster,.analysis-page .step-video-container.crop-expanded .step-static-image{object-fit:contain!important}.step-video-container.inline-crop-active .clip-control-bar{display:none}.analysis-page .step-video-container .step-player-overlay{position:absolute;inset:0}.analysis-page .step-video-container.inline-crop-active{overflow:visible}.analysis-page .step-card:has(.inline-crop-active){border-radius:0}@media(max-width:960px),(pointer:coarse){.analysis-page .step-card{border-radius:12px}.analysis-page .step-maximize-btn-wrapper{opacity:1}.analysis-page .step-content{padding:14px 16px 16px}.analysis-page .step-title-row{align-items:center;gap:10px}.analysis-page .step-title{font-size:var(--text-base);line-height:1.5}.analysis-page .step-number{width:28px;height:28px;min-width:28px;font-size:var(--text-xs)}.analysis-page .step-title-inline-edit{opacity:1}}@media(max-width:600px){.analysis-page .step-card{border-radius:10px}.analysis-page .step-card:not(.step-card-condensed){display:flex;flex-direction:column}.analysis-page .step-card:not(.step-card-condensed) .step-content{order:-1}.analysis-page .step-card:not(.step-card-condensed) .step-video-container{order:0}.analysis-page .step-content{padding:12px 14px 14px}.analysis-page .step-title{font-size:16px;gap:8px}.analysis-page .step-number{width:32px;height:32px;min-width:32px;font-size:var(--text-sm);padding:0}.analysis-page .step-maximize-btn{border-radius:10px;background:#00000040;border-color:#ffffff2e}.analysis-page .step-icon-btn,.analysis-page .step-title-edit-btn{width:40px;height:40px;font-size:16px}.analysis-page .step-title-inline-edit{opacity:1;width:36px;height:36px;font-size:var(--text-base)}.analysis-page .step-notes{display:none}.analysis-page .step-card:not(.step-card-condensed) .step-content{padding:10px 14px;margin-top:0;margin-bottom:0;border-top:none;border-bottom:1px solid var(--highlight-ghost)}.analysis-page .step-card:not(.step-card-condensed) .step-title-row{margin-bottom:0}.analysis-page .step-title-edit-container~.step-title-controls{display:none}.analysis-page .step-card:not(.step-card-condensed).step-card-recap,.analysis-page .step-card:not(.step-card-condensed).step-card-tips,.analysis-page .step-card:not(.step-card-condensed).step-card-demo{border-top-color:transparent!important}.analysis-page .step-card:not(.step-card-condensed).step-card-corner-ribbon:before,.analysis-page .step-card:not(.step-card-condensed).step-card-corner-ribbon-icon:before,.analysis-page .step-card:not(.step-card-condensed).step-card-corner-full:before{display:none}.analysis-page .step-type-label-box{padding:5px 10px!important;border-radius:6px!important;font-size:var(--text-xs)!important;font-weight:700!important;text-transform:uppercase;letter-spacing:.03em;min-width:auto!important;width:auto!important;height:auto!important;line-height:1!important}.analysis-page .step-type-icon-box{width:auto!important;height:auto!important;min-width:auto!important;padding:5px 10px!important;border-radius:6px!important;font-size:var(--text-xs)!important}.analysis-page .step-note{font-size:var(--text-sm);line-height:1.55}.analysis-page .step-notes-list.needs-expand:not(.expanded):not(.editing):after{height:30px}.analysis-page .step-notes-list.needs-expand:not(.expanded):not(.editing):before{height:35px}.analysis-page .step-notes-toggle{padding:12px 0;font-size:var(--text-sm)}.analysis-page .step-dropdown-item{padding:12px 14px}}@media(max-width:768px){.analysis-page .step-notes-list{max-height:var(--grid-notes-max-height-mobile, 48px)}}.analysis-page .step-mobile-notes-toggle,.analysis-page .step-mobile-maximize-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.analysis-page .step-mobile-notes-toggle:hover,.analysis-page .step-mobile-maximize-btn:hover{border-color:var(--border-hover);background:var(--highlight-ghost);color:var(--text-primary)}.analysis-page .step-mobile-notes-toggle:active,.analysis-page .step-mobile-maximize-btn:active{transform:scale(.95)}.analysis-page .step-icon-btn.step-mobile-notes-toggle.active{background:var(--primary);border-color:var(--primary);color:#fff}.analysis-page .step-mobile-edit-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast);font-size:16px}.analysis-page .step-mobile-edit-btn:hover{background:var(--bg-tertiary);color:var(--text-secondary)}@media(max-width:768px){.analysis-page .step-maximize-btn-wrapper{display:none!important}}@media(min-width:768px){.analysis-page .step-mobile-notes-toggle,.analysis-page .step-mobile-edit-btn{display:none}}@media(max-width:768px){.analysis-page .step-card{--letterbox-color: var(--onboarding-letterbox-color, #2c2a28)}.analysis-page .step-title-inline-edit{display:none}}.step-video-type-badge{display:none}@media(max-width:768px){.step-video-type-badge{display:flex;position:absolute;top:10px;left:10px;z-index:5;padding:5px 10px;border-radius:6px;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#fff;line-height:1;pointer-events:none;box-shadow:0 2px 6px #0000004d}.step-video-type-badge.step-type-recap{background:var(--icon-recap, #4BC4BB)}.step-video-type-badge.step-type-tips{background:var(--icon-tips, #E5A158)}.step-video-type-badge.step-type-demo{background:var(--icon-demo, #4BC4BB)}}.bookmark-tongue{position:absolute;top:50%;left:50%;transform:translate(-50%) translateY(0) scaleY(.5);transform-origin:top center;width:24px;height:32px;z-index:0;opacity:0;pointer-events:none;transition:transform var(--transition-slow),opacity var(--transition-fast)}.bookmark-tongue.visible{transform:translate(-50%) translateY(0) scaleY(1);opacity:1;pointer-events:auto;cursor:pointer}.bookmark-tongue:before{content:"";position:absolute;inset:8px -16px -18px}.bookmark-tongue-svg{width:100%;height:100%;display:block}.bookmark-tongue.hollow .bookmark-tongue-path{fill:transparent;stroke:currentColor;stroke-width:2;stroke-dasharray:4 3;opacity:.4;transition:all var(--transition-slow)}.bookmark-tongue.hollow:hover .bookmark-tongue-path{opacity:.6;stroke-dasharray:4 2}.bookmark-tongue.filled .bookmark-tongue-path{fill:var(--bookmark-color, var(--primary));stroke:var(--bookmark-color, var(--primary));stroke-width:1.5;opacity:1;transition:fill var(--transition-slow),stroke var(--transition-slow)}.bookmark-tongue-highlight{fill:var(--highlight-subtle);pointer-events:none}.bookmark-tongue.visible:active{transform:translate(-50%) translateY(0) scaleY(.92)}@media(max-width:768px){.bookmark-tongue{height:42px}.bookmark-tongue:before{bottom:-22px}}:root{--bookmark-orange: var(--primary);--bookmark-purple: var(--primary-alt);--bookmark-teal: var(--icon-recap);--bookmark-green: var(--success)}.step-number-row-container{display:flex;align-items:center;gap:8px;flex:1;min-width:0;position:relative}.step-number-row{flex:1;min-width:0;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;scrollbar-width:none;cursor:grab;-webkit-user-select:none;user-select:none;padding-bottom:20px;margin-bottom:-20px;-webkit-mask-image:linear-gradient(to right,transparent,black 4px,black calc(100% - 4px),transparent);mask-image:linear-gradient(to right,transparent,black 4px,black calc(100% - 4px),transparent)}.step-number-row::-webkit-scrollbar{display:none}.step-number-row.dragging{cursor:grabbing}.step-number-row-inner{display:flex;align-items:flex-start;gap:8px;padding:0 4px;width:max-content}.step-number-row-item-wrapper{position:relative;display:flex;flex-direction:column;align-items:center}.step-number-row-item-wrapper .step-number{position:relative;z-index:1}.step-number-row .step-number{width:48px;height:48px;min-width:48px;font-size:17px;background:transparent;border:1.5px solid var(--highlight-soft);color:var(--overlay-medium);box-shadow:none;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;-webkit-tap-highlight-color:transparent;position:relative}.step-number-row .step-number:active{background:var(--highlight-ghost);border-color:var(--overlay-subtle)}.step-number-row .step-number.pressing{background:var(--highlight-faint);border-color:var(--overlay-subtle);color:var(--overlay-medium);transform:scale(.97);transition:all var(--transition-fast)}.step-number-row .step-number.active.pressing{background:var(--primary-glow);transform:scale(.94)}.step-number-row .step-number:not(.pressing){transition:all var(--transition-normal)}@keyframes stepNumberBloom{0%{box-shadow:0 0 0 0 var(--overlay-subtle)}to{box-shadow:0 0 0 20px #fff0}}.step-number-row .step-number.tapped{animation:stepNumberBloom .5s cubic-bezier(.23,1,.32,1) forwards}.step-number-row .step-number.active{background:var(--primary-alt);border-color:var(--primary-alt);color:#fff;font-weight:700;box-shadow:0 2px 8px var(--primary-glow)}.step-number-row .step-number.step-number-row-item-tips{filter:grayscale(1)}.step-number-row .step-number.step-number-row-item-tips.active{filter:none}.step-number-row .step-number.step-number-row-item-recap.active,.step-number-row .step-number.step-number-row-item-tips.active,.step-number-row .step-number.step-number-row-item-demo.active{background:var(--primary-alt);border-color:var(--primary-alt);color:#fff;box-shadow:0 2px 8px var(--primary-glow)}.step-number-row .step-number.ghost{width:10px;height:10px;min-width:10px;padding:0;font-size:0;background:var(--highlight-subtle);border-color:var(--highlight-faint);opacity:.4;transition:all var(--transition-slow)}.step-number-row .step-number.ghost.active{background:var(--highlight-soft);border-color:var(--highlight-soft);box-shadow:none}.step-number-row .step-number.step-number-row-item-full-section{border-style:dashed;border-color:var(--primary-glow)}.step-number-row .step-number.step-number-row-item-full-section svg{display:block}.step-number-row .step-number.step-number-row-item-full-section.active{background:var(--primary);border-style:solid;border-color:var(--primary);color:#fff}.bookmark-dot{position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:4px;height:4px;border-radius:50%;background:var(--bookmark-color, var(--primary));transition:background var(--transition-slow)}.tabbed-sidebar{width:380px;min-width:280px;max-width:800px;background:var(--bg-secondary);border-left:1px solid color-mix(in srgb,var(--border) 50%,transparent);display:flex;flex-direction:column;flex-shrink:0;transform:translateZ(0);position:relative;overflow:hidden}.tabbed-sidebar.landscape-phone{transition:width .28s ease-out,min-width .28s ease-out,max-width .28s ease-out}.tabbed-sidebar.landscape-phone:not(.collapsed){width:min(330px,75vw);min-width:0;max-width:330px;padding-right:var(--safe-area-right)}.tabbed-sidebar.landscape-phone.collapsed{width:0;min-width:0;max-width:0;padding:0;background:transparent;border-left:none}.tabbed-sidebar-expanded{padding-top:var(--safe-area-top);display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;position:absolute;inset:0}.tabbed-sidebar:not(.landscape-phone) .tabbed-sidebar-expanded,.tabbed-sidebar.landscape-phone:not(.collapsed) .tabbed-sidebar-expanded{position:relative}.tabbed-sidebar.collapsed .tabbed-sidebar-expanded{visibility:hidden;pointer-events:none}.tabbed-sidebar-tabs{display:flex;border-bottom:1px solid color-mix(in srgb,var(--border) 40%,transparent);flex-shrink:0}.tabbed-sidebar-tab{flex:1;padding:13px 8px;background:transparent;border:none;display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast);margin-bottom:-1px;font-family:inherit;position:relative}.tabbed-sidebar-tab:hover{color:var(--text-secondary);background:var(--highlight-ghost)}.tabbed-sidebar-tab.active{color:var(--text-primary)}.tabbed-sidebar-tab.active:after{content:"";position:absolute;bottom:-1px;left:16%;right:16%;height:2px;background:var(--primary);border-radius:1px}.tabbed-sidebar-tab-icon{opacity:.4;flex-shrink:0;transition:opacity var(--transition-fast)}.tabbed-sidebar-tab:hover .tabbed-sidebar-tab-icon{opacity:.7}.tabbed-sidebar-tab.active .tabbed-sidebar-tab-icon{opacity:1}.tabbed-sidebar-tab-count{font-size:10px;font-weight:700;min-width:16px;height:16px;line-height:16px;padding:0 4px;border-radius:8px;background:var(--primary);color:#fff;text-align:center;letter-spacing:0;text-transform:none}.tabbed-sidebar-tab.active .tabbed-sidebar-tab-count{background:var(--text-primary)}.tabbed-sidebar-header{display:flex;align-items:center;padding:12px 16px;border-bottom:1px solid color-mix(in srgb,var(--border) 40%,transparent);flex-shrink:0}.tabbed-sidebar-header-title{font-size:11.5px;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px}.tabbed-sidebar-content{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.tabbed-sidebar-edit-bar{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;border-bottom:1px solid color-mix(in srgb,var(--border) 30%,transparent);background:color-mix(in srgb,var(--primary) 4%,transparent);flex-shrink:0;animation:editBarSlideIn .2s ease-out}@keyframes editBarSlideIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.tabbed-sidebar-edit-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--primary)}.tabbed-sidebar-edit-actions{display:flex;align-items:center;gap:6px}.tabbed-sidebar-action-btn{display:flex;align-items:center;justify-content:center;height:26px;padding:0 10px;border:1px solid color-mix(in srgb,var(--border) 60%,transparent);border-radius:6px;background:var(--bg-secondary);color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),transform .1s ease;font-family:inherit}.tabbed-sidebar-action-btn:hover{background:var(--highlight-ghost);color:var(--text-primary);border-color:color-mix(in srgb,var(--border) 90%,transparent)}.tabbed-sidebar-action-btn:active{transform:scale(.96)}.tabbed-sidebar-action-btn[aria-label=Save]{background:var(--primary);border-color:var(--primary);color:#fff}.tabbed-sidebar-action-btn[aria-label=Save]:hover{background:color-mix(in srgb,var(--primary) 85%,black);border-color:color-mix(in srgb,var(--primary) 85%,black);color:#fff}.tabbed-sidebar-content .step-modal-notes-body.clickable{cursor:pointer;position:relative;border-radius:10px;margin:6px;transition:background .2s ease,box-shadow .2s ease}.tabbed-sidebar-content .step-modal-notes-body.clickable:hover{background:color-mix(in srgb,var(--primary) 6%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 15%,transparent)}.tabbed-sidebar-content .step-modal-notes-body.clickable:after{content:"Click to edit";position:absolute;bottom:12px;right:12px;font-size:11px;font-weight:600;letter-spacing:.02em;color:var(--primary);opacity:0;transform:translateY(4px);transition:opacity .2s ease,transform .2s ease;pointer-events:none}.tabbed-sidebar-content .step-modal-notes-body.clickable:hover:after{opacity:.7;transform:translateY(0)}.tabbed-sidebar-content .steps-menu-container{flex:1;min-height:0;display:flex;flex-direction:column}.tabbed-sidebar-content .steps-menu-list{flex:1;min-height:0;overflow-y:auto;padding:4px 6px}.tabbed-sidebar-content .steps-menu-row{padding:6px 8px;gap:10px;border-radius:8px;animation:none}.tabbed-sidebar-content .steps-menu-row.active:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:0 2px 2px 0;background:var(--primary)}.tabbed-sidebar-content .steps-menu-row.active{background:color-mix(in srgb,var(--primary) 10%,transparent)}.tabbed-sidebar-content .steps-menu-thumbnail{width:108px;height:60px;border-radius:6px;box-shadow:0 1px 3px #0000001a}.tabbed-sidebar-content .steps-menu-number{width:24px;height:24px;min-width:24px;font-size:11px}.tabbed-sidebar-content .steps-menu-title{font-size:13px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.3}.tabbed-sidebar-content .steps-menu-star{width:28px;height:28px}.tabbed-sidebar-content .steps-menu-star svg{width:16px;height:16px}.tabbed-sidebar-content .steps-menu-header{padding:8px 12px 6px;border-bottom:1px solid color-mix(in srgb,var(--border) 30%,transparent)}.tabbed-sidebar-content .steps-menu-filter{width:28px;height:28px}.tabbed-sidebar-content .steps-menu-filter svg{width:16px;height:16px}.tabbed-sidebar-content .steps-menu-list::-webkit-scrollbar{width:4px}.tabbed-sidebar-content .steps-menu-list::-webkit-scrollbar-track{background:transparent;margin:8px 0}.tabbed-sidebar-content .steps-menu-list::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text-muted) 25%,transparent);border-radius:2px}.tabbed-sidebar-content .steps-menu-list::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--text-muted) 40%,transparent)}.tabbed-sidebar.landscape-phone .tabbed-sidebar-tab{padding:14px 6px;font-size:13px}.tabbed-sidebar.landscape-phone .tabbed-sidebar-tab-icon{width:16px;height:16px}.tabbed-sidebar.landscape-phone .steps-menu-time-range{display:none}.tabbed-sidebar.landscape-phone .steps-menu-row{padding:10px 12px;gap:12px}.tabbed-sidebar.landscape-phone .steps-menu-number{width:28px;height:28px;min-width:28px;font-size:12px}.tabbed-sidebar.landscape-phone .steps-menu-title{font-size:14px}.tabbed-sidebar.landscape-phone .steps-menu-star{width:36px;height:36px}.tabbed-sidebar.landscape-phone .steps-menu-star svg{width:20px;height:20px}.tabbed-sidebar.landscape-phone .steps-menu-list{padding:4px 8px}.tabbed-sidebar.landscape-phone .tabbed-sidebar-action-btn{height:32px;font-size:13px;padding:0 14px}.tabbed-sidebar.landscape-phone .tabbed-sidebar-edit-label{font-size:12px}.tabbed-sidebar.landscape-phone .steps-menu-filter{width:36px;height:36px}.tabbed-sidebar.landscape-phone .steps-menu-filter svg{width:18px;height:18px}.tabbed-sidebar.landscape-phone.notes-fullscreen:not(.collapsed){transform:none;position:fixed;inset:0;width:100%;min-width:100%;max-width:100%;z-index:200;border-left:none;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) 0 env(safe-area-inset-left,0);transition:none}.tabbed-sidebar.landscape-phone.notes-fullscreen .tabbed-sidebar-expanded{padding-top:0}.tabbed-sidebar.landscape-phone.notes-fullscreen .tabbed-sidebar-tabs,.tabbed-sidebar.landscape-phone.notes-fullscreen .step-modal-resize-handle{display:none}.tabbed-sidebar.landscape-phone.notes-fullscreen .tabbed-sidebar-edit-bar{padding:10px 16px;justify-content:flex-end;background:transparent;border-bottom:1px solid color-mix(in srgb,var(--border) 30%,transparent)}.tabbed-sidebar.landscape-phone.notes-fullscreen .tabbed-sidebar-edit-label{display:none}.tabbed-sidebar.landscape-phone.notes-fullscreen .tabbed-sidebar-action-btn{height:36px;font-size:14px;padding:0 18px;border-radius:8px}.tabbed-sidebar.landscape-phone.notes-fullscreen .step-modal-notes-body{flex:1;min-height:0;display:flex;flex-direction:column;padding:0;margin:0;border-radius:0}.tabbed-sidebar.landscape-phone.notes-fullscreen .notes-panel,.tabbed-sidebar.landscape-phone.notes-fullscreen .notes-edit-container{flex:1;min-height:0;display:flex;flex-direction:column}.tabbed-sidebar.landscape-phone.notes-fullscreen .notes-edit-textarea-input{flex:1;min-height:0;resize:none;border:none;padding:16px;padding-bottom:max(16px,env(safe-area-inset-bottom,0));background:var(--bg-secondary);font-size:15px;line-height:1.6}.special-video-overlay{position:absolute;inset:0;z-index:60;pointer-events:none;animation:overlay-fade-in var(--transition-normal) ease-out both}@keyframes overlay-fade-in{0%{opacity:0}to{opacity:1}}.special-video-overlay.visible{opacity:1}.special-video-overlay.hidden{opacity:0;transition:opacity var(--transition-normal)}.special-video-overlay.visible{transition:opacity var(--transition-fast)}.special-video-overlay.hidden .special-video-topbar,.special-video-overlay.hidden .special-video-bottombar{pointer-events:none}.special-video-overlay.hidden .special-video-topbar{transform:translateY(-6px)}.special-video-overlay.hidden .special-video-bottombar{transform:translateY(8px)}.special-video-topbar,.special-video-bottombar{transition:transform var(--transition-normal)}.special-video-topbar{position:absolute;top:0;left:0;right:0;padding:calc(10px + var(--safe-area-top, 0px)) 12px 10px;display:flex;align-items:center;gap:10px;pointer-events:auto;color:#fff;background:linear-gradient(to bottom,color-mix(in srgb,#000 60%,transparent),color-mix(in srgb,#000 0%,transparent))}.special-video-title{flex:1;min-width:0;font-size:var(--text-base);font-weight:600;letter-spacing:-.01em;text-shadow:0 2px 12px rgba(0,0,0,.45);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:10px}.special-video-title-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.special-video-step-number{box-shadow:0 2px 10px #00000040}.special-video-top-actions{display:flex;gap:8px;align-items:center}.special-video-topbtn{width:50px;height:50px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:#00000040;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;transition:transform var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast)}.special-video-topbtn svg{width:20px;height:20px}.special-video-topbtn svg,.special-video-btn svg{stroke:currentColor}.special-video-topbtn:hover:not(:disabled){background:#00000059;border-color:#ffffff47}.special-video-topbtn:active:not(:disabled){transform:scale(.96)}.special-video-topbtn.pressing:not(:disabled){transform:scale(.94)}.special-video-topbtn.active{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 40%,rgba(255,255,255,.18))}.special-video-topbtn.active svg{stroke:var(--primary)}.special-video-topbtn:disabled{opacity:.5;cursor:not-allowed}.special-video-bottombar{position:absolute;left:0;right:0;bottom:0;padding:10px 12px calc(6px + var(--safe-area-bottom, 0px));display:flex;flex-direction:column;gap:10px;pointer-events:auto;color:#fff;background:linear-gradient(to top,#000000bf,#0000008c 55%,#0000)}.special-video-timeline{display:flex;align-items:center;gap:10px}.special-video-time{font-size:var(--text-xs);font-variant-numeric:tabular-nums;opacity:.95;text-shadow:0 2px 10px rgba(0,0,0,.4)}.special-video-scrub{flex:1;min-width:0;height:18px;border:none;background:transparent;padding:0;cursor:pointer;position:relative;touch-action:none}.special-video-scrub-track{position:absolute;top:50%;left:0;right:0;height:4px;border-radius:999px;transform:translateY(-50%);background:#ffffff38}.special-video-scrub-progress{position:absolute;top:50%;left:0;height:4px;border-radius:999px;transform:translateY(-50%);background:var(--primary);z-index:6;pointer-events:none}.special-video-scrub-thumb{position:absolute;top:50%;right:-6px;width:12px;height:12px;border-radius:50%;transform:translateY(-50%);background:#fff;box-shadow:0 2px 10px #00000059;pointer-events:auto;cursor:grab}.special-video-scrub-thumb:after{content:"";position:absolute;inset:-10px}.special-video-controls{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:6px}.special-video-btn{border:none;background:transparent;color:#fff;padding:6px 4px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;opacity:.85;border-radius:8px;transition:transform .15s cubic-bezier(.4,0,.2,1),opacity .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),box-shadow .15s cubic-bezier(.4,0,.2,1);-webkit-tap-highlight-color:transparent}.special-video-btn svg{width:22px;height:22px;transition:transform .15s cubic-bezier(.4,0,.2,1)}.special-video-seek-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px}.special-video-seek-icon svg{width:22px;height:22px}.special-video-seek-text{position:absolute;font-size:9px;font-weight:800;letter-spacing:-.02em;line-height:1;color:currentColor;transform:translateY(1px)}.special-video-btn:hover:not(:disabled){opacity:1;background:#ffffff1f;transform:scale(1.08)}.special-video-btn:hover:not(:disabled) svg{transform:scale(1.05)}.special-video-btn:active:not(:disabled){transform:scale(.95);background:#ffffff2e}.special-video-btn.pressing:not(:disabled){transform:scale(.94);background:#ffffff2e}.special-video-btn.active{color:var(--primary);opacity:1}.special-video-btn.active svg{stroke:var(--primary)}.special-video-btn.active:hover:not(:disabled){background:rgba(var(--primary-rgb, 99, 102, 241),.15)}.special-video-btn:disabled{opacity:.35;cursor:not-allowed}.special-video-btn-primary{width:56px;height:56px;margin:0 auto;border-radius:999px;background:#ffffff29;border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:0;box-shadow:0 2px 8px #0003;transition:transform .18s cubic-bezier(.34,1.56,.64,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1),box-shadow .15s cubic-bezier(.4,0,.2,1)}.special-video-btn-primary:hover:not(:disabled){background:#ffffff3d;border-color:#ffffff59;transform:scale(1.08);box-shadow:0 4px 16px #00000040,0 0 0 3px #ffffff14}.special-video-btn-primary:active:not(:disabled){transform:scale(.95);background:#ffffff4d}.special-video-btn-primary svg{width:24px;height:24px}.steps-menu-sheet{max-height:60vh;overflow:hidden;display:flex;flex-direction:column}.steps-menu-sheet-content{overflow:hidden;padding:0!important;gap:0!important;flex:1;min-height:0}.steps-menu-container{display:flex;flex-direction:column;height:100%;min-height:0}.steps-menu-header{display:flex;align-items:center;justify-content:space-between;padding:0 4px 14px;border-bottom:1px solid var(--border, rgba(0, 0, 0, .06))}.steps-menu-heading{margin:0;font-size:var(--text-base);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.steps-menu-filter{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border:none;border-radius:6px;background:transparent;color:var(--text-muted);font-size:var(--text-sm);font-weight:550;letter-spacing:-.01em;cursor:pointer;transition:background .15s ease,color .15s ease,transform .1s ease}.steps-menu-filter svg{width:24px;height:24px;transition:transform .2s cubic-bezier(.2,.8,.2,1)}.steps-menu-filter:hover{background:var(--highlight-ghost, rgba(0, 0, 0, .05));color:var(--text-secondary)}.steps-menu-filter:active{transform:scale(.96)}.steps-menu-filter.active{background:color-mix(in srgb,var(--primary) 14%,transparent);color:var(--primary)}.steps-menu-filter.active svg{transform:scale(1.15)}.steps-menu-list{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:10px 0 8px;display:flex;flex-direction:column;gap:2px}.steps-menu-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 20px;color:var(--text-muted);font-size:.8125rem;font-weight:500;letter-spacing:-.01em;animation:stepsMenuEmptyIn .4s ease-out}.steps-menu-empty svg{opacity:.4;animation:stepsMenuEmptyPulse 2s ease-in-out infinite}@keyframes stepsMenuEmptyIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes stepsMenuEmptyPulse{0%,to{transform:scale(1);opacity:.4}50%{transform:scale(1.1);opacity:.6}}.steps-menu-row{position:relative;width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;border:none;background:transparent;color:var(--text-primary);cursor:pointer;text-align:left;transition:background .15s ease,transform .1s ease,box-shadow .15s ease;animation:stepsMenuRowIn .28s ease-out backwards;animation-delay:var(--row-delay, 0ms)}@keyframes stepsMenuRowIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.steps-menu-row:not(.active):hover{background:var(--highlight-ghost, rgba(0, 0, 0, .035))}.steps-menu-row:not(.active).pressing{transform:scale(.985);background:color-mix(in srgb,var(--primary) 12%,transparent)}.steps-menu-row:not(.active):active{background:var(--highlight-ghost, rgba(0, 0, 0, .05))}.steps-menu-row.active{background:color-mix(in srgb,var(--primary) 6%,transparent)}.steps-menu-row.active .steps-menu-number--step{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 2px 8px var(--primary-shadow, rgba(224, 123, 74, .3))}.steps-menu-row.active .steps-menu-title{color:var(--primary)}.steps-menu-number{display:inline-flex;align-items:center;justify-content:center;width:35px;height:35px;min-width:35px;flex-shrink:0;border-radius:50%;font-weight:700;font-size:.75rem;letter-spacing:0;line-height:1;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .1s ease}.steps-menu-number--step{background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--primary-subtle) 100%);border:1.5px solid var(--primary-glow, rgba(224, 123, 74, .25));color:var(--primary);box-shadow:0 1px 2px var(--primary-subtle, rgba(224, 123, 74, .12))}.steps-menu-number--type{background:var(--bg-tertiary, #f5f5f5);border:1.5px solid var(--border, rgba(0, 0, 0, .08));color:var(--text-muted);font-size:.875rem}.steps-menu-row:not(.active):hover .steps-menu-number--step{background:linear-gradient(135deg,var(--primary-glow, rgba(224, 123, 74, .25)) 0%,var(--primary-subtle) 100%);border-color:var(--primary-glow, rgba(224, 123, 74, .25));box-shadow:0 0 0 3px var(--primary-subtle, rgba(224, 123, 74, .12))}.steps-menu-row:not(.active).pressing .steps-menu-number--step{background:var(--primary);border-color:var(--primary);color:#fff;transform:scale(1.08);box-shadow:0 2px 8px var(--primary-shadow, rgba(224, 123, 74, .3))}.steps-menu-thumbnail{position:relative;width:120px;height:68px;border-radius:8px;overflow:hidden;flex-shrink:0;background:var(--bg-tertiary, #1a1a1a);box-shadow:0 1px 3px #00000014;transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s ease}.steps-menu-thumbnail-img{width:100%;height:100%;object-fit:cover;transform:scale(1.35);transition:transform .2s ease}.steps-menu-thumbnail.is-animated{box-shadow:0 4px 12px #0000001f,0 0 0 2px color-mix(in srgb,var(--primary) 40%,transparent)}.steps-menu-thumbnail.is-animated .steps-menu-thumbnail-img{transform:scale(1.45)}.steps-menu-thumbnail-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:.875rem}.steps-menu-row:hover .steps-menu-thumbnail{box-shadow:0 4px 12px #0000001f;transform:scale(1.02)}.steps-menu-row.pressing .steps-menu-thumbnail{transform:scale(.94);box-shadow:0 1px 2px #0000001a}.steps-menu-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.steps-menu-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;letter-spacing:-.015em;color:var(--text-primary);transition:color .15s ease,font-weight .15s ease}.steps-menu-time-range{font-size:11px;color:var(--text-muted);letter-spacing:.01em;font-variant-numeric:tabular-nums}.steps-menu-actions{display:flex;align-items:center;flex-shrink:0;margin-left:auto;padding-left:8px}.steps-menu-star{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:8px;background:transparent;color:var(--text-muted);cursor:pointer;transition:transform .18s cubic-bezier(.2,.8,.2,1),background .15s ease,color .15s ease,filter .15s ease;-webkit-tap-highlight-color:transparent}.steps-menu-star svg{transition:transform .18s cubic-bezier(.2,.8,.2,1)}.steps-menu-star:hover{background:var(--highlight-ghost, rgba(0, 0, 0, .05));color:var(--text-tertiary)}.steps-menu-star:hover svg{transform:scale(1.15)}.steps-menu-star:active{transform:scale(.88)}.steps-menu-star.active{color:var(--primary);filter:drop-shadow(0 0 4px var(--primary-glow, rgba(224, 123, 74, .5)));animation:stepsMenuStarPop .3s cubic-bezier(.2,.9,.25,1)}.steps-menu-star.active:hover{background:color-mix(in srgb,var(--primary) 12%,transparent);filter:drop-shadow(0 0 6px var(--primary-glow, rgba(224, 123, 74, .6)))}.steps-menu-star.active svg{animation:stepsMenuStarGlow 2s ease-in-out infinite}@keyframes stepsMenuStarPop{0%{transform:scale(.8)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes stepsMenuStarGlow{0%,to{filter:drop-shadow(0 0 2px var(--primary-glow, rgba(224, 123, 74, .4)))}50%{filter:drop-shadow(0 0 6px var(--primary-glow, rgba(224, 123, 74, .7)))}}@media(prefers-reduced-motion:reduce){.steps-menu-star{transition:color .15s ease}.steps-menu-star.active{animation:none}.steps-menu-star.active svg{animation:none}.steps-menu-row{animation:none}}.steps-menu-row.compact{gap:14px;padding:12px 14px}.steps-menu-row.compact .steps-menu-number{width:38px;height:38px;min-width:38px;font-size:.8125rem;font-weight:800}.steps-menu-row.compact .steps-menu-title{font-size:15px;font-weight:600}.steps-menu-sheet .sliding-sheet-handle-bar{width:36px;height:4px;border-radius:2px;transition:width .2s ease,background .2s ease}.steps-menu-sheet:hover .sliding-sheet-handle-bar{width:44px}.steps-menu-sheet .sliding-sheet-handle{padding:14px 0 10px}.special-video-overlay.sidebar-open{opacity:0;pointer-events:none;transition:opacity var(--transition-fast)}.special-video-overlay.sidebar-open .special-video-topbar,.special-video-overlay.sidebar-open .special-video-bottombar{pointer-events:none}.special-video-center-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:52px;height:52px;display:flex;align-items:center;justify-content:center;background:#ffffff29;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.22);border-radius:50%;color:#fff;cursor:pointer;pointer-events:auto;transition:all .18s cubic-bezier(.34,1.56,.64,1);box-shadow:0 2px 12px #0003;padding:0;font-family:inherit}.special-video-center-play svg{width:24px;height:24px}.special-video-center-play:hover{background:#ffffff3d;transform:translate(-50%,-50%) scale(1.08);box-shadow:0 4px 20px #0000004d}.special-video-center-play.pressing{transform:translate(-50%,-50%) scale(.92);background:#ffffff1a}.special-step-card.mobile.landscape .special-video-bottombar{flex-direction:row;align-items:center;gap:8px}.special-step-card.mobile.landscape .special-video-timeline{flex:1;min-width:0;order:1}.special-step-card.mobile.landscape .special-video-controls{display:contents}.special-step-card.mobile.landscape .special-video-controls .special-video-btn:first-child{order:0}.special-step-card.mobile.landscape .special-video-controls .special-video-btn:last-child{order:2}.special-step-card.mobile.landscape .special-video-controls .special-video-btn{width:44px;height:44px;padding:0;border-radius:10px}.special-step-card.mobile.landscape .special-video-controls .special-video-btn svg{width:24px;height:24px}.special-step-card:not(.mobile) .special-video-overlay.hidden{opacity:1;transition:none}.special-step-card:not(.mobile) .special-video-overlay.visible{opacity:1}.special-step-card:not(.mobile) .special-video-overlay.hidden .special-video-bottombar{opacity:0;pointer-events:none;transition:opacity var(--transition-normal),transform var(--transition-normal)}.special-step-card:not(.mobile) .special-video-overlay.visible .special-video-bottombar{opacity:1;transition:opacity var(--transition-fast),transform var(--transition-fast)}.special-step-card:not(.mobile) .special-video-topbar{opacity:1;pointer-events:auto;transform:none!important}.special-step-card:not(.mobile) .special-video-topbar{background:linear-gradient(to bottom,color-mix(in srgb,#000 70%,transparent) 0%,color-mix(in srgb,#000 35%,transparent) 60%,transparent 100%);padding:14px 16px 28px}.special-step-card:not(.mobile) .special-video-top-actions{display:none}@media(hover:none){.steps-menu-thumbnail.is-animated{box-shadow:0 1px 3px #00000014}.steps-menu-thumbnail.is-animated .steps-menu-thumbnail-img{transform:none}}.special-video-bottombar--compact{padding:0}.special-video-strip{display:flex;align-items:center;gap:10px;padding:10px 12px;background:linear-gradient(to top,rgba(0,0,0,.6) 0%,rgba(0,0,0,.25) 60%,transparent 100%)}.special-video-strip-btn{width:36px;height:36px;border:none;background:transparent;color:#fff;padding:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;opacity:.9;border-radius:8px;transition:transform .15s cubic-bezier(.4,0,.2,1),opacity .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1);-webkit-tap-highlight-color:transparent}.special-video-strip-btn svg{width:20px;height:20px;stroke:currentColor}.special-video-strip-btn:hover:not(:disabled){opacity:1;background:#ffffff1f;transform:scale(1.08)}.special-video-strip-btn:active:not(:disabled){transform:scale(.95);background:#ffffff2e}.special-video-strip-btn.pressing:not(:disabled){transform:scale(.94);background:#ffffff2e}.special-video-strip-btn.active{color:var(--primary);opacity:1}.special-video-strip-btn.active svg{stroke:var(--primary)}.special-video-strip-btn.active:hover:not(:disabled){background:rgba(var(--primary-rgb, 224, 123, 74),.15)}.special-video-bottombar--compact .special-video-scrub{height:28px;display:flex;align-items:center}.special-video-bottombar--compact .special-video-scrub-progress{background:linear-gradient(90deg,var(--primary) 0%,color-mix(in srgb,var(--primary) 85%,white) 100%);box-shadow:0 0 12px color-mix(in srgb,var(--primary) 45%,transparent)}.special-video-bottombar--compact .special-video-scrub-thumb{width:14px;height:14px;right:-7px;box-shadow:0 2px 8px #0000004d,0 0 0 2px #ffffff26}.special-video-bottombar--compact .special-video-scrub--dragging .special-video-scrub-thumb{transform:translateY(-50%) scale(1.35);box-shadow:0 4px 12px #00000059,0 0 0 3px color-mix(in srgb,var(--primary) 40%,transparent);cursor:grabbing}.special-video-bottombar--compact .special-video-scrub--dragging .special-video-scrub-track,.special-video-bottombar--compact .special-video-scrub--dragging .special-video-scrub-progress{height:5px}@media(max-height:500px)and (orientation:landscape){.steps-menu-sheet{max-height:80vh}.steps-menu-header{padding-bottom:8px}.steps-menu-list{padding:6px 0 4px;gap:1px}.steps-menu-row{padding:6px;gap:6px;border-radius:8px;animation-duration:.18s}.steps-menu-number{width:32px;height:32px;min-width:32px;font-size:var(--text-base)}.steps-menu-thumbnail{width:50px;height:40px}.steps-menu-title{font-size:var(--text-base)}.steps-menu-star{width:35px;height:35px}.steps-menu-star svg{width:20px;height:20px}}.special-video-speed-btn{border:none;background:transparent;color:#fff;padding:6px 4px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:700;letter-spacing:.02em;opacity:.9;transition:transform .15s cubic-bezier(.4,0,.2,1),opacity .15s cubic-bezier(.4,0,.2,1),color .15s cubic-bezier(.4,0,.2,1);-webkit-tap-highlight-color:transparent}.special-video-speed-btn:hover:not(:disabled){opacity:1;transform:scale(1.08)}.special-video-speed-btn:active:not(:disabled),.special-video-speed-btn.pressing:not(:disabled){transform:scale(.94)}.special-video-speed-btn.active{color:var(--primary);opacity:1}.special-video-settings-popover{width:260px;border-radius:12px;padding:0}.special-video-settings-sheet{max-height:fit-content}.special-video-settings-sheet-content{padding:0!important;gap:0!important}.special-video-settings-sheet .sliding-sheet-handle-bar{width:36px;height:4px;border-radius:2px}.special-video-settings-sheet .sliding-sheet-handle{padding:14px 0 6px}.special-video-settings-list{display:flex;flex-direction:column;padding:4px 0 12px}.special-video-settings-item{display:flex;align-items:center;gap:14px;padding:13px 20px;border:none;background:transparent;color:var(--text-primary);font-size:15px;font-weight:500;letter-spacing:-.01em;cursor:pointer;text-align:left;width:100%;transition:background var(--transition-fast),transform .1s ease;-webkit-tap-highlight-color:transparent}.special-video-settings-item:hover{background:var(--highlight-ghost, rgba(0, 0, 0, .035))}.special-video-settings-item:active{background:color-mix(in srgb,var(--primary) 8%,transparent);transform:scale(.985)}.special-video-settings-item-icon{width:20px;height:20px;color:var(--text-muted);flex-shrink:0}.special-video-settings-item-label{flex:1;min-width:0}.special-video-settings-item-check{width:18px;height:18px;color:var(--primary);flex-shrink:0}.special-video-settings-switch{position:relative;width:44px;height:26px;flex-shrink:0;border-radius:999px;background:var(--bg-tertiary, rgba(0, 0, 0, .08));transition:background var(--transition-normal);cursor:pointer}.special-video-settings-switch.active{background:var(--primary)}.special-video-settings-switch-thumb{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000026,0 1px 2px #0000000f;transition:transform var(--transition-normal) cubic-bezier(.4,0,.2,1)}.special-video-settings-switch.active .special-video-settings-switch-thumb{transform:translate(18px)}.special-video-settings-section{padding:8px 20px}.special-video-settings-section-label{display:block;font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.special-video-settings-speed-track{display:flex;gap:4px}.special-video-settings-speed-btn{flex:1;height:32px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast);-webkit-tap-highlight-color:transparent}.special-video-settings-speed-btn:hover{background:var(--highlight-faint, rgba(0, 0, 0, .04))}.special-video-settings-speed-btn.active{background:color-mix(in srgb,var(--primary) 15%,transparent);color:var(--primary);border-color:color-mix(in srgb,var(--primary) 30%,transparent)}.special-video-settings-divider{height:1px;margin:4px 20px;background:var(--border, rgba(0, 0, 0, .06))}.special-video-settings-item--accent,.special-video-settings-item--accent .special-video-settings-item-icon{color:var(--primary)}.special-video-settings-item--accent:active{background:color-mix(in srgb,var(--primary) 8%,transparent)}.special-video-settings-slots{margin-left:auto;font-size:var(--text-xs);font-weight:700;color:var(--text-tertiary);background:var(--surface-hover);padding:2px 7px;border-radius:6px;font-variant-numeric:tabular-nums}.special-video-settings-slots--full{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger)}.special-video-settings-limit-message{display:flex;align-items:flex-start;gap:6px;padding:8px 12px;margin:2px 0;border-radius:8px;background:color-mix(in srgb,var(--warning, #f59e0b) 8%,transparent);border:1px solid color-mix(in srgb,var(--warning, #f59e0b) 20%,transparent);font-size:11px;color:var(--text-secondary);line-height:1.4}.special-video-settings-limit-message svg{flex-shrink:0;margin-top:1px;color:var(--warning, #f59e0b)}.special-video-settings-item--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.special-step-card-highlight{border-color:var(--primary-glow);box-shadow:0 0 12px var(--primary-glow)}.special-step-card.pressing-play{transform:scale(.99);transition:transform var(--transition-fast)}.special-step-card:not(.pressing-play){transition:transform var(--transition-slow)}.desktop-appbar{height:46px;display:flex;align-items:center;padding:0 12px;gap:8px;background:var(--bg-secondary);border-bottom:1px solid var(--border);flex-shrink:0}.desktop-appbar-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:10px;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);padding:0;font-family:inherit}.desktop-appbar-btn:hover{background:var(--bg-primary);color:var(--text-primary)}.desktop-appbar-btn.active{color:var(--primary)}.desktop-appbar-title{flex:1;font-size:15px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.02em}.desktop-appbar-actions{display:flex;align-items:center;gap:2px}.desktop-appbar-divider{width:1px;height:24px;background:var(--border);flex-shrink:0}.desktop-appbar-logo{font-size:16px;font-weight:600;color:var(--primary);flex-shrink:0;padding:0 4px}.special-step-card .step-modal-body{display:flex;flex:1;min-height:0;position:relative}.special-step-card .step-modal-video-section{flex:1;min-width:0;min-height:0;position:relative}.special-step-card.mobile .step-modal-body{flex-direction:column;background:var(--fm-notes-bg, var(--bg-secondary, #1a1a1a))}.special-step-card.mobile.landscape .step-modal-body{flex-direction:row}.special-step-card.mobile{--letterbox-color: var(--onboarding-letterbox-color, #2c2a28)}.special-step-card.mobile:not(.landscape) .step-video-container.portrait-video{--grid-video-object-fit: cover}.special-step-card .step-video-container{width:100%;height:100%}.special-step-card.mobile.landscape-narrow-video .video-slot-poster,.special-step-card.mobile.landscape-narrow-video .clip-player video,.special-step-card.mobile.landscape-narrow-video .step-static-image{object-fit:contain!important}.special-step-card .step-video-tap-overlay{position:absolute;inset:0;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.special-step-card .step-video-slot,.special-step-card .video-slot{width:100%;height:100%}.special-step-card.mobile .video-slot-poster,.special-step-card.mobile .clip-player video,.special-step-card.mobile .step-static-image{width:100%;height:100%;object-fit:cover!important}.special-step-card:not(.mobile) .clip-player video,.special-step-card:not(.mobile) .step-static-image{width:100%;height:100%;object-fit:contain!important}.special-step-card:not(.mobile):not(.square-video) .landscape-video .clip-player video,.special-step-card:not(.mobile):not(.square-video) .landscape-video .step-static-image{object-fit:cover!important}.special-step-card.square-video:not(.mobile) .video-slot-poster{object-fit:contain!important}.special-step-card .clip-notes-btn{width:var(--playback-ctrl-btn-size, 36px);height:var(--playback-ctrl-btn-size, 36px);display:flex;align-items:center;justify-content:center;background:var(--shadow-soft);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--highlight-soft);border-radius:10px;color:var(--overlay-heavy);box-shadow:0 2px 8px var(--shadow-medium)}.special-step-card .clip-notes-btn svg{width:var(--video-overlay-btn-icon-size, 18px);height:var(--video-overlay-btn-icon-size, 18px)}.special-step-card .clip-notes-btn:hover{background:var(--shadow-heavy);border-color:var(--overlay-subtle);color:#fff}.special-step-card .clip-notes-btn:active{transform:scale(.95)}.special-step-card .clip-control-bar{z-index:30}.special-step-card .clip-control-bar{opacity:0!important;pointer-events:none!important}.special-step-card .clip-settings-anchor,.special-step-card .clip-notes-btn{z-index:31}.special-step-card .step-modal-video-section.crop-expanded .clip-player video,.special-step-card .step-modal-video-section.crop-expanded video,.special-step-card .step-modal-video-section.crop-expanded .video-slot-poster,.special-step-card .step-modal-video-section.crop-expanded .step-static-image{object-fit:contain!important}.special-step-card .step-modal-video-section.crop-overlay-active .step-content-layer{transition:none}.editing-action-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;padding-top:calc(12px + var(--safe-area-top));background:var(--bg-secondary, #1a1a1a);border-bottom:1px solid var(--border, var(--highlight-faint));flex-shrink:0}.editing-action-bar-cancel{display:flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 16px;background:transparent;border:1px solid var(--border, var(--highlight-subtle));border-radius:10px;color:var(--text-secondary, var(--overlay-medium));font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent}.editing-action-bar-cancel svg{width:18px;height:18px;opacity:.8}.editing-action-bar-cancel:hover{background:var(--bg-tertiary, var(--highlight-ghost));border-color:var(--border-hover, var(--highlight-soft));color:var(--text-primary, var(--overlay-heavy))}.editing-action-bar-cancel:active{transform:scale(.97)}.editing-action-bar-label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:var(--text-tertiary, var(--overlay-subtle))}.editing-action-bar-save{display:flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 20px;background:var(--primary);border:none;border-radius:10px;color:#fff;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent;box-shadow:0 2px 8px var(--shadow-soft)}.editing-action-bar-save svg{width:18px;height:18px}.editing-action-bar-save:hover:not(:disabled){background:var(--primary-dark);box-shadow:0 4px 12px var(--shadow-soft)}.editing-action-bar-save:active:not(:disabled){transform:scale(.97)}.editing-action-bar-save:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.analysis-page .special-step-card.mobile.editing-segment .step-modal-video-section{flex:1 1 auto;min-height:0;overflow:hidden}.analysis-page .special-step-card.mobile.editing-segment .step-video-container,.analysis-page .special-step-card.mobile.editing-segment .clip-player,.analysis-page .special-step-card.mobile.editing-segment .clip-player video{max-height:100%}.clip-edit-segment-embedded{flex:0 0 auto;flex-shrink:0;padding:0;background:var(--bg-secondary, #1a1a1a);padding-bottom:calc(16px + var(--safe-area-bottom))}.clip-edit-segment-panel--embedded{background:var(--bg-tertiary, var(--highlight-ghost));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:none;border-top:1px solid var(--border, var(--highlight-ghost));border-radius:0;padding:16px 0 8px}.clip-edit-segment-panel--with-actions{display:flex;flex-direction:row;align-items:center;gap:0;padding:12px 16px}.clip-edit-segment-panel--with-actions .clip-edit-segment-timeline{flex:1;min-width:0}.clip-edit-segment-inline-actions{display:flex;flex-direction:column;align-items:stretch;gap:8px;margin-left:20px;padding-left:20px;border-left:1px solid var(--border, var(--highlight-subtle));flex-shrink:0;width:100px}.clip-edit-segment-inline-actions .clip-edit-segment-inline-btn--cancel,.clip-edit-segment-inline-actions .clip-edit-segment-inline-btn--save{width:100%;height:36px;padding:0;border-radius:8px;font-size:var(--text-sm);text-align:center;cursor:pointer;transition:all var(--transition-fast)}.clip-edit-segment-inline-btn--cancel{background:transparent;border:1px solid var(--border, var(--highlight-soft));color:var(--text-secondary, var(--overlay-medium));font-weight:500}.clip-edit-segment-inline-btn--cancel:hover{background:var(--bg-tertiary, var(--highlight-ghost));border-color:var(--border-hover, var(--overlay-subtle));color:var(--text-primary, var(--overlay-heavy))}.clip-edit-segment-inline-btn--save{background:var(--primary);border:none;color:#fff;font-weight:600;box-shadow:0 2px 6px var(--shadow-soft)}.clip-edit-segment-inline-btn--save:hover:not(:disabled){background:var(--primary-dark);box-shadow:0 3px 10px var(--shadow-soft)}.clip-edit-segment-inline-btn--save:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.special-step-card.editing-segment .clip-control-bar,.special-step-card.editing-segment .clip-notes-btn,.special-step-card.editing-segment .clip-settings-anchor{opacity:0!important;pointer-events:none!important}@media(max-width:768px){.special-carousel .special-step-card{width:100vw;max-width:100vw;min-width:100vw;height:100%;border-radius:0;border:none}.special-carousel .special-step-card .step-modal-body,.special-carousel .special-step-card .step-modal-video-section{flex:1;min-height:0}.special-carousel .special-step-card.editing-segment .step-modal-video-section{flex:1 1 auto;min-height:0;overflow:hidden}.special-carousel .special-step-card.editing-segment .step-video-container,.special-carousel .special-step-card.editing-segment .clip-player,.special-carousel .special-step-card.editing-segment .clip-player video{max-height:100%}}.special-step-card:not(.mobile) .step-modal-video-section.desktop-editing-segment{display:flex;flex-direction:column}.special-step-card:not(.mobile) .step-modal-video-section.desktop-editing-segment .step-video-container{flex:1 1 auto;min-height:0}.special-step-card:not(.mobile) .step-modal-video-section.desktop-editing-segment .clip-player video{object-fit:contain}.special-step-card:not(.mobile) .step-modal-video-section.desktop-editing-segment .clip-edit-segment-embedded{flex:0 0 auto}.special-step-card:not(.mobile).editing-segment-desktop .clip-control-bar{opacity:0!important;pointer-events:none!important}.special-step-card:not(.mobile).editing-segment-desktop .clip-settings-anchor{opacity:0!important;pointer-events:none!important}.special-step-card:not(.mobile){border-radius:12px;overflow:hidden;box-shadow:0 1px 3px var(--shadow-subtle, rgba(0, 0, 0, .06)),0 8px 24px var(--shadow-soft, rgba(0, 0, 0, .08))}.special-step-card:not(.mobile) .step-modal-header,.special-step-card.mobile.landscape .step-modal-header{display:none}.special-step-card:not(.mobile) .step-modal-title{font-size:15px;font-weight:600;letter-spacing:-.02em;color:var(--text-primary)}.special-step-card:not(.mobile) .step-modal-number{width:30px;height:30px;min-width:30px;font-size:13px;font-weight:600;background:var(--highlight-ghost);border:1.5px solid color-mix(in srgb,var(--border) 80%,transparent);color:var(--text-secondary)}.special-step-card:not(.mobile) .step-modal-step-row-inline{max-width:520px}.special-step-card:not(.mobile) .step-modal-step-row-inline .step-number{width:30px;height:30px;min-width:30px;font-size:12px;font-weight:600;border-radius:8px;border-width:1.5px;transition:all var(--transition-fast)}.special-step-card:not(.mobile) .step-modal-step-row-inline .step-number:hover:not(.active){background:var(--highlight-subtle);border-color:var(--border-hover);transform:translateY(-1px)}.special-step-card:not(.mobile) .step-modal-step-row-inline .step-number.active{border-radius:8px;box-shadow:0 2px 8px color-mix(in srgb,var(--primary) 30%,transparent)}.special-step-card:not(.mobile) .step-modal-step-row-inline .step-number-row-inner{gap:4px}.special-step-card:not(.mobile) .step-modal-step-row-inline .bookmark-tongue{width:16px;height:22px}.special-step-card:not(.mobile) .step-modal-nav-btn{width:30px;height:30px;border-radius:8px;border-color:color-mix(in srgb,var(--border) 70%,transparent);font-size:14px}.special-step-card:not(.mobile) .step-modal-close{width:30px;height:30px;border-radius:8px;border-color:color-mix(in srgb,var(--border) 50%,transparent);color:var(--text-tertiary);transition:all var(--transition-fast)}.special-step-card:not(.mobile) .step-modal-close:hover{background:var(--highlight-subtle);border-color:var(--border-hover);color:var(--text-primary)}.special-step-card:not(.mobile) .step-modal-header-actions{gap:6px}.special-step-card:not(.mobile){--letterbox-color: #EEEEF0}.special-step-card:not(.mobile) .step-modal-video-section{background:var(--letterbox-color);position:relative}.analysis-page .special-step-card:not(.mobile) .step-video-container{background-color:var(--letterbox-color, #EEEEF0);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='76' height='76'%3E%3Cg opacity='.18'%3E%3Ccircle cx='19' cy='19' r='9' fill='none' stroke='%23C5BFBA' stroke-width='1.5'/%3E%3Cpolygon points='15,13 15,25 26,19' fill='%23C5BFBA'/%3E%3Ccircle cx='57' cy='57' r='9' fill='none' stroke='%23C5BFBA' stroke-width='1.5'/%3E%3Cpolygon points='53,51 53,63 64,57' fill='%23C5BFBA'/%3E%3C/g%3E%3C/svg%3E");background-size:76px 76px;background-repeat:repeat}.analysis-page .special-step-card:not(.mobile) .step-poster-backdrop,.special-step-card:not(.mobile) .clip-poster-backdrop{background-color:transparent}.special-step-card:not(.mobile) .video-slot,.special-step-card:not(.mobile) .step-video-slot,.special-step-card:not(.mobile) .clip-player{background:transparent}.special-step-card:not(.mobile) .step-modal-notes-header{padding:14px 20px 12px;border-bottom:1px solid color-mix(in srgb,var(--border) 40%,transparent)}.special-step-card:not(.mobile) .step-modal-notes-title{font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--text-muted);text-transform:uppercase}.special-step-card:not(.mobile) .step-icon-btn{width:28px;height:28px;border-radius:7px;border-color:color-mix(in srgb,var(--border) 50%,transparent);color:var(--text-muted);font-size:13px;transition:all var(--transition-fast)}.special-step-card:not(.mobile) .step-icon-btn:hover{background:var(--highlight-subtle);border-color:var(--border-hover);color:var(--text-secondary);transform:scale(1.05)}.special-step-card:not(.mobile) .step-modal-notes-body{padding:20px}.special-step-card:not(.mobile) .step-modal-note{font-size:14px;line-height:1.75;color:var(--text-secondary);letter-spacing:-.005em}.special-step-card:not(.mobile) .step-modal-note strong{color:var(--text-primary);font-weight:600}.special-step-card:not(.mobile) .step-modal-note.note-bullet:before{color:var(--text-muted);font-size:14px;top:1px}.special-step-card:not(.mobile) .notes-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 24px;font-style:normal;color:var(--text-muted);font-size:13px;font-weight:500;letter-spacing:.01em;line-height:1.6;gap:12px}.special-step-card:not(.mobile) .notes-empty:before{content:"";display:block;width:40px;height:40px;border-radius:10px;background:var(--highlight-ghost);border:1.5px solid color-mix(in srgb,var(--border) 40%,transparent);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:18px;flex-shrink:0}.special-step-card:not(.mobile) .step-modal-resize-handle{width:6px;transition:background var(--transition-fast)}.special-step-card:not(.mobile) .step-modal-resize-handle:after{width:2px;height:24px;border-radius:1px;left:2px;background:color-mix(in srgb,var(--border) 50%,transparent)}.special-step-card:not(.mobile) .step-modal-resize-handle:hover:after,.special-step-card:not(.mobile) .step-modal-resize-handle.dragging:after{background:var(--primary);height:32px}.special-step-card:not(.mobile) .step-modal-resize-handle:hover,.special-step-card:not(.mobile) .step-modal-resize-handle.dragging{background:color-mix(in srgb,var(--primary) 8%,transparent)}.special-step-card:not(.mobile) .step-modal-notes-body::-webkit-scrollbar{width:4px}.special-step-card:not(.mobile) .step-modal-notes-body::-webkit-scrollbar-track{background:transparent;margin:8px 0}.special-step-card:not(.mobile) .step-modal-notes-body::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text-muted) 25%,transparent);border-radius:2px}.special-step-card:not(.mobile) .step-modal-notes-body::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--text-muted) 40%,transparent)}.special-step-card:not(.mobile) .step-modal-notes-mode-btn{display:none}.special-step-card:not(.mobile) .step-modal-title-edit-icon{padding:4px 8px;border-radius:6px;font-size:13px;border-color:color-mix(in srgb,var(--border) 40%,transparent)}.special-step-card:not(.mobile) .step-modal-title-edit-input{border-radius:8px;padding:6px 12px;font-size:15px}.special-step-card:not(.mobile) .step-modal-body{background:var(--bg-primary)}.sidebar-open-btn{position:absolute;right:calc(8px + var(--safe-area-right));top:50%;transform:translateY(-50%);width:var(--video-overlay-btn-size, 44px);height:var(--video-overlay-btn-size, 44px);display:flex;align-items:center;justify-content:center;padding:0;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:#00000040;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#ffffffd9;cursor:pointer;z-index:65;transition:background var(--transition-fast),color var(--transition-fast);-webkit-tap-highlight-color:transparent}.sidebar-open-btn svg{width:var(--video-overlay-btn-icon-size, 22px);height:var(--video-overlay-btn-icon-size, 22px)}.sidebar-open-btn:hover,.sidebar-open-btn:active{background:#0006;color:#fff}.special-step-card .step-modal-video-section{position:relative}.special-step-card.mobile .annotation-pill,.special-step-card.mobile .annotation-pill-input{top:calc(12px + var(--safe-area-top, 0px))}.special-step-card .annotation-dim-overlay{position:absolute;inset:0;background:#00000040;z-index:10;pointer-events:none;animation:annotation-dim-in .3s ease-out}@keyframes annotation-dim-in{0%{opacity:0}to{opacity:1}}.tabbed-sidebar-annotations-list{padding:8px;overflow-y:auto;flex:1}.mobile-notes-section .notes-tab-toggle{margin:0 12px 8px}.bookmark-toast{position:fixed;top:56px;left:50%;transform:translate(-50%) translateY(-20px);background:var(--bg-secondary);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:16px;box-shadow:0 4px 24px var(--shadow-medium),0 0 0 1px var(--highlight-ghost);z-index:1000;animation:toastSlideDown .3s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes toastSlideDown{0%{transform:translate(-50%) translateY(-20px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.bookmark-toast-collapsed{display:flex;align-items:center;padding:14px 20px;background:transparent;border:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.bookmark-toast-text{font-size:var(--text-sm);font-weight:500;color:var(--overlay-heavy);white-space:nowrap}.bookmark-toast-hint{color:var(--overlay-medium)}.bookmark-toast-collapsed:active{background:var(--highlight-ghost)}.bookmark-toast-expanded{display:flex;align-items:center;gap:12px;padding:12px 16px}.bookmark-toast-colors{display:flex;align-items:center;gap:10px}.bookmark-toast-color{width:36px;height:36px;border-radius:50%;background:var(--color);border:2px solid transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform var(--transition-normal),border-color var(--transition-fast);animation:colorPop .2s cubic-bezier(.34,1.56,.64,1) backwards;animation-delay:var(--stagger-delay, 0ms);-webkit-tap-highlight-color:transparent}@keyframes colorPop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}.bookmark-toast-color:hover{transform:scale(1.08)}.bookmark-toast-color:active{transform:scale(.95)}.bookmark-toast-color.selected{border-color:#fff;box-shadow:0 0 0 2px var(--overlay-subtle)}.bookmark-toast-check{width:18px;height:18px;color:#fff;filter:drop-shadow(0 1px 2px var(--shadow-medium))}.bookmark-toast-dismiss{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--highlight-faint);border:none;border-radius:50%;color:var(--overlay-medium);cursor:pointer;margin-left:4px;transition:background var(--transition-fast),color var(--transition-fast);-webkit-tap-highlight-color:transparent}.bookmark-toast-dismiss:hover{background:var(--highlight-subtle);color:var(--overlay-heavy)}.bookmark-toast-dismiss:active{transform:scale(.95)}.floating-step-indicator{position:fixed;top:8px;left:12px;z-index:100;pointer-events:auto}.floating-step-orb-wrapper{position:relative;isolation:isolate}.floating-step-orb{position:relative;width:54px;height:54px;border-radius:50%;border:1.5px solid var(--highlight-subtle);background:var(--primary);color:var(--text-primary);font-size:20px;font-weight:700;letter-spacing:-.5px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform var(--transition-fast),box-shadow var(--transition-fast);box-shadow:0 1px 2px var(--shadow-subtle),0 4px 8px var(--shadow-subtle),0 0 0 1px var(--shadow-ghost),inset 0 1px 0 var(--highlight-subtle);animation:orb-entrance .25s ease-out forwards;z-index:10}@keyframes orb-entrance{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.floating-step-orb:hover{transform:scale(1.05);box-shadow:0 2px 4px var(--shadow-soft),0 6px 12px var(--shadow-subtle),0 0 0 1px var(--shadow-ghost),inset 0 1px 0 var(--highlight-subtle)}.floating-step-orb:active{transform:scale(.95);box-shadow:0 1px 2px var(--shadow-subtle),0 2px 4px var(--shadow-subtle),inset 0 1px 0 var(--highlight-faint)}.floating-step-orb-content{position:relative;z-index:2;text-shadow:0 1px 1px var(--shadow-soft)}.floating-step-orb-wrapper .bookmark-tongue{top:68%;z-index:0;animation:bookmark-drop-in .35s cubic-bezier(.34,1.56,.64,1) .2s backwards}@keyframes bookmark-drop-in{0%{transform:translate(-50%) translateY(-8px) scaleY(.3);opacity:0}to{transform:translate(-50%) translateY(0) scaleY(1);opacity:1}}.floating-step-indicator.collapsing .bookmark-tongue{animation:bookmark-retract .12s ease-in forwards}@keyframes bookmark-retract{0%{transform:translate(-50%) translateY(0) scaleY(1);opacity:1}to{transform:translate(-50%) translateY(-8px) scaleY(.3);opacity:0}}.floating-step-menu{position:absolute;top:32px;left:calc(100% + 6px);transform:translateY(-50%);display:flex;align-items:center;max-width:calc(100vw - 94px);overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;scrollbar-width:none;cursor:grab;-webkit-user-select:none;user-select:none;padding-top:4px;padding-bottom:14px;-webkit-mask-image:linear-gradient(to right,black,black calc(100% - 8px),transparent);mask-image:linear-gradient(to right,black,black calc(100% - 8px),transparent);animation:menu-expand .2s ease-out forwards}@keyframes menu-expand{0%{opacity:0;transform:translateY(-50%) scaleX(.8);transform-origin:left center}to{opacity:1;transform:translateY(-50%) scaleX(1)}}.floating-step-menu::-webkit-scrollbar{display:none}.floating-step-menu.dragging{cursor:grabbing}.floating-step-menu-inner{display:flex;align-items:center;gap:6px;padding:0 8px 0 2px;width:max-content}.floating-step-menu-item{position:relative;width:36px;height:36px;border-radius:50%;border:none;background:var(--surface);color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform var(--transition-fast),background var(--transition-fast);flex-shrink:0;box-shadow:0 1px 3px var(--shadow-subtle);opacity:0;transform:translate(-8px);animation:cascade-in .2s ease-out forwards;animation-delay:var(--cascade-delay, 0ms)}@keyframes cascade-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.floating-step-indicator.collapsing .floating-step-menu{animation:menu-collapse .15s ease forwards}@keyframes menu-collapse{0%{opacity:1;transform:translateY(-50%) scaleX(1)}to{opacity:0;transform:translateY(-50%) scaleX(.8);transform-origin:left center}}.floating-step-menu-item:hover{background:var(--bg-secondary);transform:scale(1.08)}.floating-step-menu-item:active{transform:scale(.95)}.floating-step-menu-item.active{background:var(--primary);border-color:transparent;color:var(--text-primary)}.floating-step-menu-item.active:hover{transform:scale(1.05)}.floating-step-menu-item-content{position:relative;z-index:2}.floating-step-menu-item-dot{position:absolute;bottom:-8px;left:50%;transform:translate(-50%);width:5px;height:5px;border-radius:50%;background:var(--primary)}.floating-options-container{position:fixed;top:8px;right:12px;z-index:100;display:flex;flex-direction:column;align-items:flex-end;gap:6px;transform:translateY(0);transition:opacity var(--transition-normal),transform var(--transition-normal)}body.capacitor-native .floating-options-container{top:calc(var(--safe-area-top) + 0px);right:calc(12px + var(--safe-area-right))}.floating-options-container.hidden,body.crop-overlay-active .floating-options-container{opacity:0;pointer-events:none}body.clip-edit-segment-inline-active .floating-options-container{opacity:0;pointer-events:none;transform:translateY(-6px)}.step-modal-container:has(.clip-player.controls-hidden) .floating-options-container,.analysis-page:has(.clip-player.controls-hidden) .floating-options-container{opacity:0;pointer-events:none}.analysis-page:has(.special-step-card.editing-segment) .floating-step-indicator,.analysis-page:has(.special-step-card.editing-segment) .floating-options-container{opacity:0;pointer-events:none;transition:opacity var(--transition-normal)}.floating-buttons-row{display:flex;flex-direction:row;gap:6px;align-items:center}.floating-buttons-row .step-maximize-btn{width:var(--video-overlay-btn-size, 36px);height:var(--video-overlay-btn-size, 36px);display:flex;align-items:center;justify-content:center;background:var(--shadow-soft);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--highlight-soft);border-radius:8px;color:var(--overlay-heavy);font-size:16px;cursor:pointer;transition:all var(--transition-fast);box-shadow:0 2px 8px var(--shadow-medium)}.floating-buttons-row .step-maximize-btn:hover{background:var(--shadow-heavy);color:var(--text-on-primary);border-color:var(--overlay-subtle)}.floating-buttons-row .step-maximize-btn:active{transform:scale(.95)}.floating-buttons-row .step-maximize-btn svg{width:var(--video-overlay-btn-icon-size, 18px);height:var(--video-overlay-btn-icon-size, 18px)}.floating-buttons-row .step-maximize-btn.text-btn{width:auto;min-width:36px;padding:0 10px;font-size:var(--text-xs);font-weight:700;letter-spacing:.5px}.floating-buttons-row .step-maximize-btn.active{background:var(--primary-glow);border-color:var(--primary-border);color:var(--primary);box-shadow:0 0 12px var(--primary-glow)}.floating-buttons-row .step-maximize-btn.active:hover{background:var(--primary-glow);border-color:var(--primary-border);box-shadow:0 0 16px var(--primary-glow)}.floating-buttons-row .step-maximize-btn.exit-btn:hover{background:var(--danger-subtle);border-color:var(--danger);color:var(--danger)}@media(max-width:768px){.floating-buttons-row .step-maximize-btn{border-radius:10px;background:var(--shadow-medium)}}@media(max-height:500px)and (orientation:landscape){.floating-step-indicator{top:max(8px,var(--safe-area-top));left:max(8px,var(--safe-area-left))}.floating-step-orb{width:44px;height:44px;font-size:16px}.floating-step-orb-wrapper .bookmark-tongue{width:20px;height:26px}.floating-step-menu-item{width:30px;height:30px;font-size:var(--text-xs)}.floating-step-menu-inner{gap:4px}.floating-step-menu{max-width:calc(100vw - 74px);padding-top:8px}.floating-buttons-row{gap:4px}.floating-buttons-row .step-maximize-btn{width:36px;height:36px}.floating-buttons-row .step-maximize-btn svg{width:18px;height:18px}.floating-buttons-row .step-maximize-btn.text-btn{width:auto;padding:0 8px;font-size:var(--text-xs)}}body.capacitor-native .floating-step-indicator{top:calc(var(--safe-area-top) + 0px);left:calc(16px + var(--safe-area-left, 0px))}body.capacitor-native .floating-step-orb{width:70px;height:70px;font-size:22px;box-shadow:0 2px 4px var(--shadow-subtle),0 6px 12px var(--shadow-subtle),0 0 0 1px var(--shadow-ghost),inset 0 1px 0 var(--highlight-subtle)}body.capacitor-native .floating-step-orb-wrapper .bookmark-tongue{top:60%;width:36px;height:56px}body.capacitor-native .floating-step-menu-item{width:50px;height:50px;font-size:var(--text-base);box-shadow:0 2px 6px var(--shadow-soft)}body.capacitor-native .floating-step-menu{top:40px;max-width:calc(100vw - 140px);padding-bottom:20px}body.capacitor-native .floating-step-menu-inner{gap:12px;padding:0 12px 0 4px}body.capacitor-native .floating-step-menu-item-dot{width:10px;height:10px;bottom:-15px}@media(prefers-reduced-motion:reduce){.floating-step-orb,.floating-step-orb-wrapper .bookmark-tongue,.floating-step-menu{animation:none}.floating-step-menu-item{animation:none;opacity:1;transform:none}.floating-buttons-row .step-maximize-btn{transition:none}}.analysis-page{--fm-space-xs: 4px;--fm-space-sm: 8px;--fm-space-md: 12px;--fm-space-lg: 16px;--fm-space-xl: 20px;--fm-btn-sm: 28px;--fm-btn-md: 36px;--fm-btn-lg: 44px;--fm-radius-xs: 4px;--fm-radius-sm: 6px;--fm-radius-md: 8px;--fm-radius-lg: 12px;--fm-radius-xl: 16px;--fm-radius-full: 50%;--fm-transition-fast: .15s ease;--fm-transition-normal: .2s ease;--fm-transition-spring: .3s cubic-bezier(.32, .72, 0, 1);--fm-z-video: 1;--fm-z-controls: 10;--fm-z-header: 15;--fm-z-sheet: 20;--fm-z-overlay: 100;--fm-z-editor: 1100}.analysis-page{--fm-overlay-bg: var(--overlay-dark);--fm-container-bg: var(--bg-primary);--fm-header-bg: var(--bg-secondary);--fm-body-bg: var(--bg-primary);--fm-notes-bg: var(--bg-secondary);--fm-video-bg: var(--letterbox-color, #000);--fm-sheet-bg: var(--bg-secondary);--fm-editor-bg: var(--bg-primary);--fm-border: var(--border);--fm-border-hover: var(--border-hover);--fm-text-primary: var(--text-primary);--fm-text-secondary: var(--text-secondary);--fm-text-tertiary: var(--text-tertiary);--fm-btn-bg: transparent;--fm-btn-bg-hover: var(--bg-tertiary);--fm-btn-border: var(--border);--fm-btn-color: var(--text-secondary);--fm-btn-color-hover: var(--text-primary);--fm-active-bg: var(--primary);--fm-active-color: white;--fm-success: var(--success, rgb(34, 197, 94));--fm-success-surface: var(--success-subtle);--fm-success-border: var(--success-glow);--fm-purple: var(--primary);--fm-purple-surface: var(--primary-subtle);--fm-purple-border: var(--primary-glow);--fm-shadow-modal: 0 20px 60px var(--shadow-heavy);--fm-shadow-sheet: 0 -4px 20px var(--shadow-medium);--fm-shadow-dropdown: 0 2px 8px var(--shadow-medium);--fm-scrollbar-thumb: var(--highlight-faint);--fm-scrollbar-thumb-hover: var(--highlight-subtle);--fm-handle-bg: var(--highlight-soft);--fm-handle-bg-active: var(--overlay-subtle)}@keyframes fm-fade-in{0%{opacity:0}to{opacity:1}}@keyframes fm-scale-in{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes fm-focus-in{0%{opacity:.8;transform:translate(-50%,-50%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes fm-sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fm-help-sheet-in{0%{transform:translateY(100%);opacity:.8}to{transform:translateY(0);opacity:1}}@keyframes fm-mobile-editor-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.analysis-page .step-modal-overlay{position:fixed;inset:0;background:var(--fm-overlay-bg, var(--overlay-dark));z-index:var(--fm-z-overlay, 1000);display:flex;align-items:center;justify-content:center;padding:0;opacity:0;animation:fm-fade-in .2s cubic-bezier(.32,.72,0,1) forwards;overscroll-behavior-y:contain;touch-action:none}.analysis-page .step-modal-container{position:relative;width:100%;height:100%;background:var(--fm-container-bg, var(--bg-primary));display:flex;flex-direction:column;overflow:hidden;opacity:0;transform:scale(.98);animation:fm-scale-in .25s cubic-bezier(.32,.72,0,1) .05s forwards;will-change:transform,opacity;overscroll-behavior-y:contain}.analysis-page.focus-modal-embedded{display:flex;flex-direction:column;width:100%;height:100%;background:var(--fm-container-bg, var(--bg-primary))}.analysis-page.focus-modal-embedded .step-modal-container{flex:1;display:flex;flex-direction:column;animation:none;opacity:1;transform:none}.analysis-page .step-modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--fm-space-md, 12px) var(--fm-space-lg, 16px);background:var(--fm-header-bg, var(--bg-secondary, #1a1a1a));border-bottom:1px solid var(--fm-border, var(--border, var(--highlight-faint)));flex-shrink:0;position:relative;z-index:var(--fm-z-header, 15)}body.capacitor-native .analysis-page .step-modal-header:not(.mobile){padding-top:var(--safe-area-top)}.analysis-page .step-modal-step-row-inline{display:flex;align-items:center;max-width:480px;overflow:visible;margin-right:8px}.analysis-page .step-modal-step-row-inline .step-number-row-container{flex:1;min-width:0}.analysis-page .step-modal-step-row-inline .step-number-row{flex:1;padding-bottom:32px;margin-bottom:-32px;cursor:default;overflow-x:auto;overflow-y:visible;scrollbar-width:none}.analysis-page .step-modal-step-row-inline .step-number-row::-webkit-scrollbar{display:none}.analysis-page .step-modal-step-row-inline .step-number-row .step-number{width:28px;height:28px;min-width:28px;font-size:var(--text-xs);cursor:pointer}.analysis-page .step-modal-step-row-inline .step-number-row .step-number:hover:not(.active){background:var(--highlight-ghost);border-color:var(--overlay-subtle);color:var(--overlay-medium)}.analysis-page .step-modal-step-row-inline .step-number-row-inner{gap:5px}.analysis-page .step-modal-step-row-inline .bookmark-tongue{width:18px;height:26px;top:50%}.analysis-page .step-modal-header.mobile .bookmark-tongue{width:28px;height:42px;top:50%}.analysis-page .step-modal-step-row-inline .bookmark-dot{bottom:-4px;width:3px;height:3px}.analysis-page .step-modal-title-section{display:flex;align-items:center;gap:10px}.analysis-page .step-modal-number{display:flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;margin-bottom:-4px;padding:0;background:var(--highlight-ghost);border:1.5px solid var(--highlight-subtle);border-radius:50%;font-size:var(--text-sm);font-weight:600;color:var(--overlay-heavy);font-variant-numeric:tabular-nums}.analysis-page .step-modal-title-wrapper{display:flex;align-items:center;gap:8px}.analysis-page .step-modal-title{font-size:16px;font-weight:600;color:var(--text-primary);letter-spacing:-.01em}.analysis-page .step-modal-title-edit-icon{opacity:0;transition:opacity var(--transition-normal),background var(--transition-fast);background:transparent;border:1px solid var(--border);border-radius:8px;padding:6px 10px;cursor:pointer;color:var(--text-tertiary);font-size:var(--text-sm);line-height:1}.analysis-page .step-modal-title-wrapper:hover .step-modal-title-edit-icon{opacity:1}.analysis-page .step-modal-title-edit-icon:hover{background:var(--bg-tertiary);color:var(--text-secondary);border-color:var(--border-hover)}.analysis-page .step-modal-title-edit-icon:active{transform:scale(.95)}.analysis-page .step-modal-title-edit{display:flex;align-items:center;gap:8px}.analysis-page .step-modal-title-edit-input{flex:1;min-width:300px;padding:6px 12px;background:var(--bg-tertiary);border:1px solid var(--primary-glow);border-radius:6px;color:var(--text-primary);font-size:16px;font-weight:600;font-family:inherit}.analysis-page .step-modal-title-edit-input:focus{outline:none;border-color:var(--primary)}.analysis-page .step-modal-title-edit-input:disabled{opacity:.6;cursor:not-allowed}.analysis-page .step-modal-title-edit-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border);border-radius:8px;cursor:pointer;font-size:var(--text-base);transition:all var(--transition-fast)}.analysis-page .step-modal-title-edit-btn:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--border-hover)}.analysis-page .step-modal-title-edit-btn:disabled{opacity:.5;cursor:not-allowed}.analysis-page .step-modal-title-edit-btn.cancel{color:var(--text-tertiary)}.analysis-page .step-modal-title-edit-btn.cancel:hover:not(:disabled){color:var(--danger);border-color:var(--danger)}.analysis-page .step-modal-title-edit-btn.save{color:var(--text-tertiary)}.analysis-page .step-modal-title-edit-btn.save:hover:not(:disabled){color:var(--success);border-color:var(--success)}.analysis-page .step-modal-header-actions{display:flex;align-items:center;gap:8px}.analysis-page .step-modal-nav-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);font-size:16px;line-height:1;cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none}.analysis-page .step-modal-nav-btn:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--border-hover);color:var(--text-primary);transform:translate(-1px)}.analysis-page .step-modal-nav-btn.next:hover:not(:disabled){transform:translate(1px)}.analysis-page .step-modal-nav-btn:disabled{opacity:.3;cursor:not-allowed}.analysis-page .step-modal-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);font-size:18px;cursor:pointer;transition:all var(--transition-fast)}.analysis-page .step-modal-close svg{width:18px;height:18px}.analysis-page .step-modal-close:hover{background:var(--bg-tertiary);border-color:var(--border-hover);color:var(--text-primary)}.analysis-page .step-modal-header-wrapper{position:relative;flex-shrink:0;z-index:var(--fm-z-header, 15)}.analysis-page .step-modal-header.mobile{display:flex;align-items:center;justify-content:space-between;padding:10px 12px 18px;background:var(--fm-header-bg, var(--bg-secondary, #1a1a1a));border-bottom:1px solid var(--fm-border, var(--border, var(--highlight-faint)));flex-shrink:0;gap:8px}body.capacitor-native .analysis-page .step-modal-header.mobile{padding-top:var(--safe-area-top)}.analysis-page .step-modal-header.mobile .step-modal-title-section{flex:1;min-width:0;display:flex;align-items:center;gap:8px}.analysis-page .step-modal-header.mobile .step-modal-title{font-size:18px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary)}.analysis-page .step-modal-number-inline{display:flex;align-items:center;justify-content:center;width:48px;height:48px;min-width:48px;font-size:17px;font-weight:600;color:var(--overlay-heavy);background:var(--highlight-ghost);padding:0;border-radius:50%;flex-shrink:0;border:1.5px solid var(--highlight-subtle);font-variant-numeric:tabular-nums}.analysis-page .step-modal-header.mobile .step-modal-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.analysis-page .step-modal-header.mobile .step-modal-toolbar-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent}.analysis-page .step-modal-header.mobile .step-modal-toolbar-btn:hover{background:var(--bg-tertiary);border-color:var(--border-hover);color:var(--text-primary)}.analysis-page .step-modal-header.mobile .step-modal-toolbar-btn:active{transform:scale(.95)}.analysis-page .step-modal-header.mobile .step-modal-crop-btn.active{background:var(--glass-accent-bg);border-color:var(--glass-accent-border);color:var(--glass-accent-color);box-shadow:var(--glass-accent-shadow)}.analysis-page .step-modal-header.mobile .step-modal-crop-btn.active:hover{background:var(--glass-accent-bg-hover);border-color:var(--glass-accent-border-hover);box-shadow:var(--glass-accent-shadow-hover)}.analysis-page .step-modal-header.mobile .step-modal-close{width:48px;height:48px;font-size:20px;border-radius:8px}.analysis-page .step-modal-header.mobile .step-modal-crop-btn{width:48px;height:48px}.analysis-page .step-modal-header.mobile .step-modal-crop-btn svg{width:20px;height:20px}body.crop-overlay-active .analysis-page .step-modal-header.mobile .step-modal-crop-btn{opacity:0;pointer-events:none;visibility:hidden;transition:none}.analysis-page .step-modal-header.mobile .step-modal-edit-segment-btn{width:48px;height:48px}.analysis-page .step-modal-header.mobile .step-modal-edit-segment-btn svg{width:20px;height:20px}.analysis-page .step-modal-collapse-tab{position:absolute;bottom:0;right:12px;transform:translateY(100%);width:46px;height:30px;display:flex;align-items:center;justify-content:center;background:var(--fm-header-bg, var(--bg-secondary, #1a1a1a));border:1px solid var(--border);border-radius:0 0 12px 12px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);z-index:10}.analysis-page .step-modal-collapse-tab svg{width:20px;height:20px}.analysis-page .step-modal-collapse-tab:hover{background:var(--bg-tertiary);border-color:var(--border-hover);color:var(--text-primary)}.analysis-page .step-modal-collapse-tab:active{transform:translateY(100%) scale(.95)}.analysis-page .step-modal-header-wrapper.collapsing{animation:header-wrapper-slide-up .3s cubic-bezier(.4,0,.2,1) forwards;overflow:hidden}.analysis-page .step-modal-header-wrapper.expanding{animation:header-wrapper-slide-down .3s cubic-bezier(.4,0,.2,1) forwards;overflow:hidden}@keyframes header-wrapper-slide-up{0%{transform:translateY(0);opacity:1;max-height:120px}to{transform:translateY(-20px);opacity:0;max-height:0}}@keyframes header-wrapper-slide-down{0%{transform:translateY(-20px);opacity:0;max-height:0}to{transform:translateY(0);opacity:1;max-height:120px}}.analysis-page .step-modal-container.mobile.landscape .step-modal-header.mobile{padding:8px 12px;padding-top:max(8px,var(--safe-area-top));position:relative;background:var(--fm-header-bg, var(--bg-secondary, #1a1a1a));border-bottom:1px solid var(--fm-border, var(--border, var(--highlight-faint)))}@media(max-width:768px){.analysis-page .step-modal-header{padding:10px 12px;gap:8px}.analysis-page .step-modal-number{width:36px;height:36px;min-width:36px;font-size:var(--text-sm);padding:0}.analysis-page .step-modal-title{font-size:var(--text-sm)}.analysis-page .step-modal-title-section{gap:8px;min-width:0;flex:1;overflow:hidden}.analysis-page .step-modal-title-wrapper{min-width:0;overflow:hidden}.analysis-page .step-modal-title-wrapper .step-modal-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.analysis-page .step-modal-title-edit-input{min-width:unset;width:100%;font-size:var(--text-sm)}.analysis-page .step-modal-title-edit{flex:1;min-width:0}.analysis-page .step-modal-nav-btn,.analysis-page .step-modal-close{width:36px;height:36px;font-size:18px}.analysis-page .step-modal-header-actions{gap:6px;flex-shrink:0}}@media(max-width:480px){.analysis-page .step-modal-header{padding:8px 10px}.analysis-page .step-modal-title{font-size:17px}.analysis-page .step-modal-number{width:38px;height:38px;min-width:38px;font-size:var(--text-base)}}.analysis-page .step-modal-body{position:relative;z-index:1;flex:1;display:flex;overflow:hidden;background:var(--fm-body-bg, var(--bg-primary))}.analysis-page .step-modal-video-section{flex:1;display:flex;flex-direction:column;position:relative}@media(min-width:768px){.analysis-page .step-modal-video-section{min-width:450px}}.analysis-page .step-modal-video-container{width:100%;height:100%;background:var(--letterbox-color, #000);border-radius:8px 8px 0 0;border:1px solid var(--fm-border, var(--border, var(--highlight-faint)));border-bottom:none;position:relative;display:flex;flex-direction:column;overflow:hidden}.analysis-page .step-modal-video{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:64px;color:var(--highlight-faint)}.analysis-page .step-modal-video-slot{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.analysis-page .step-modal-video-slot .clip-player{position:static}.analysis-page .step-modal-video-container .clip-control-bar{position:absolute;bottom:0;left:0;right:0;width:100%;z-index:20}.analysis-page .focus-modal-video-loader{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:2;pointer-events:none}.analysis-page .view-mode-selector{position:absolute;top:12px;right:12px;display:flex;background:var(--overlay-dark);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--highlight-subtle);border-radius:8px;padding:4px;gap:4px;z-index:15;box-shadow:0 2px 8px var(--shadow-medium)}.analysis-page .view-mode-btn{padding:6px 10px;background:transparent;border:none;border-radius:6px;color:var(--text-secondary);font-size:var(--text-xs);font-weight:500;cursor:pointer;transition:all var(--transition-fast);letter-spacing:-.01em;white-space:nowrap;display:flex;align-items:center;gap:4px}.analysis-page .view-mode-btn:hover{color:var(--text-primary);background:var(--highlight-ghost)}.analysis-page .view-mode-btn.active{background:var(--primary);color:var(--text-on-primary)}.analysis-page .view-mode-icon{font-size:var(--text-xs);opacity:.7}.analysis-page .view-mode-btn.active .view-mode-icon{opacity:1}.analysis-page .view-mode-divider{width:1px;height:20px;background:var(--highlight-subtle);margin:0 4px;align-self:center}@media(max-width:768px){.analysis-page .step-modal-body{flex-direction:column}.analysis-page .step-modal-video-section{flex:1;min-height:40vh;max-height:60vh;padding:6px}.analysis-page .step-modal-video-container{border-radius:6px}.analysis-page .view-mode-selector{top:8px;right:8px;padding:3px;gap:2px;max-width:calc(100% - 16px);overflow-x:auto;-webkit-overflow-scrolling:touch}.analysis-page .view-mode-btn{padding:5px 8px;font-size:var(--text-xs)}.analysis-page .view-mode-icon{font-size:var(--text-xs)}}@media(max-width:480px){.analysis-page .view-mode-btn{padding:6px}.analysis-page .view-mode-btn span:not(.view-mode-icon){display:none}.analysis-page .view-mode-icon{font-size:var(--text-xs);opacity:1}.analysis-page .step-modal-video-section{min-height:35vh}}.analysis-page .step-modal-container.mobile .step-modal-body{flex-direction:column;position:relative}.analysis-page .step-modal-container.mobile .step-modal-video-section{flex:1;min-height:0;max-height:none;padding:0;display:flex;flex-direction:column}.analysis-page .step-modal-container.mobile .step-modal-video-container{flex:1;min-height:0;border-radius:0;border:none}.analysis-page .mobile-sheet-backdrop{position:fixed;inset:0;background:var(--overlay-dark);z-index:100;animation:fm-fade-in .2s ease}.analysis-page .mobile-view-mode-sheet{position:fixed;bottom:0;left:0;right:0;background:var(--fm-sheet-bg, var(--bg-secondary, #1a1a1a));border-top-left-radius:var(--fm-radius-xl, 20px);border-top-right-radius:var(--fm-radius-xl, 20px);z-index:101;padding-bottom:var(--safe-area-bottom);animation:fm-sheet-up .3s var(--fm-transition-spring, cubic-bezier(.32, .72, 0, 1))}.analysis-page .mobile-sheet-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--fm-border, var(--border, var(--highlight-faint)));font-size:var(--text-base);font-weight:600;color:var(--text-primary)}.analysis-page .mobile-sheet-header button{background:transparent;border:none;color:var(--text-tertiary);font-size:24px;cursor:pointer;padding:4px;line-height:1}.analysis-page .mobile-sheet-option{display:flex;align-items:center;gap:12px;width:100%;padding:16px 20px;background:transparent;border:none;border-bottom:1px solid var(--fm-border, var(--border, var(--highlight-faint)));color:var(--text-primary);font-size:var(--text-base);cursor:pointer;text-align:left;transition:background var(--transition-fast)}.analysis-page .mobile-sheet-option:last-child{border-bottom:none}.analysis-page .mobile-sheet-option:active{background:var(--bg-tertiary)}.analysis-page .mobile-sheet-option.active{color:var(--primary)}.analysis-page .mobile-sheet-option .option-icon{width:24px;text-align:center;font-size:16px;opacity:.7}.analysis-page .mobile-sheet-option .option-check{margin-left:auto;color:var(--primary)}.analysis-page .step-modal-container.mobile.landscape .step-modal-body{flex-direction:row}.analysis-page .step-modal-container.mobile.landscape .step-modal-video-section{flex:1 1 auto;display:flex;flex-direction:column;min-height:unset;max-height:none}.analysis-page .step-modal-container.mobile.landscape .view-mode-selector{display:none}.analysis-page .step-modal-container.mobile.landscape .step-modal-video-container{position:relative}.analysis-page .step-modal-container.mobile.landscape .clip-control-bar{position:absolute;bottom:0;left:0;right:0;width:100%;z-index:20}.analysis-page .step-modal-container.mobile.landscape .step-modal-video-slot .clip-player{position:static}@media(max-height:600px){.analysis-page .step-modal-container.mobile:not(.landscape) .step-modal-video-slot{max-height:50vh}.analysis-page .step-modal-container.mobile:not(.landscape) .step-modal-video-slot .clip-player{max-height:50vh}.analysis-page .step-modal-container.mobile:not(.landscape) .step-modal-video-slot video,.analysis-page .step-modal-container.mobile:not(.landscape) .step-modal-video-slot .clip-player video{max-height:50vh;object-fit:contain}}.analysis-page .frames-view{width:100%;height:100%;display:flex;flex-direction:column;padding:12px;gap:12px}.analysis-page .frame-preview-container{flex:1;background:var(--letterbox-color, #000);border-radius:6px;display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:0;position:relative}.analysis-page .frame-preview{max-width:100%;max-height:100%;object-fit:contain}.analysis-page .frame-preview-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--highlight-soft)}.analysis-page .frame-preview-number{font-size:48px;font-weight:600;font-variant-numeric:tabular-nums}.analysis-page .frame-preview-label{font-size:var(--text-sm);font-weight:500;color:var(--highlight-subtle);letter-spacing:-.01em}.analysis-page .filmstrip-container{height:80px;background:var(--highlight-ghost);border-radius:6px;padding:8px;overflow-x:auto;overflow-y:hidden;flex-shrink:0}.analysis-page .filmstrip-container::-webkit-scrollbar{height:6px}.analysis-page .filmstrip-container::-webkit-scrollbar-track{background:transparent}.analysis-page .filmstrip-container::-webkit-scrollbar-thumb{background:var(--highlight-faint);border-radius:3px}.analysis-page .filmstrip-container::-webkit-scrollbar-thumb:hover{background:var(--highlight-subtle)}.analysis-page .filmstrip{display:flex;gap:8px;height:100%}.analysis-page .filmstrip-frame{height:64px;aspect-ratio:16 / 9;background:var(--letterbox-color, #000);border:2px solid transparent;border-radius:4px;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:600;color:var(--highlight-subtle);font-variant-numeric:tabular-nums;position:relative;overflow:hidden}.analysis-page .filmstrip-frame:hover{border-color:var(--border-hover);transform:translateY(-2px)}.analysis-page .filmstrip-frame.active{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.analysis-page .filmstrip-frame:after{content:attr(data-frame);position:absolute;bottom:2px;right:4px;font-size:var(--text-xs);font-weight:600;color:var(--overlay-medium);background:var(--overlay-dark);padding:2px 4px;border-radius:3px;line-height:1}.analysis-page .frames-gallery-view{width:100%;height:100%;padding:12px;overflow-y:auto;position:relative}.analysis-page .frames-gallery-view::-webkit-scrollbar{width:8px}.analysis-page .frames-gallery-view::-webkit-scrollbar-track{background:transparent}.analysis-page .frames-gallery-view::-webkit-scrollbar-thumb{background:var(--highlight-faint);border-radius:4px}.analysis-page .frames-gallery-view::-webkit-scrollbar-thumb:hover{background:var(--highlight-subtle)}.analysis-page .frames-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.analysis-page .gallery-frame{aspect-ratio:16 / 9;background:var(--bg-primary);border:2px solid var(--fm-border, var(--border, var(--highlight-faint)));border-radius:8px;cursor:pointer;transition:all var(--transition-fast);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:40px;font-weight:600;color:var(--highlight-soft);font-variant-numeric:tabular-nums}.analysis-page .gallery-frame:hover:not(.focused){border-color:var(--border-hover);transform:scale(1.02)}.analysis-page .gallery-frame:after{content:attr(data-frame);position:absolute;top:10px;right:10px;font-size:var(--text-xs);font-weight:600;color:var(--overlay-medium);background:var(--overlay-dark);padding:5px 8px;border-radius:5px;line-height:1}.analysis-page .focus-backdrop{position:fixed;inset:0;background:var(--overlay-dark);z-index:1001;opacity:0;animation:fm-fade-in .2s cubic-bezier(.4,0,.2,1) forwards;cursor:zoom-out}.analysis-page .gallery-frame.focused{position:fixed!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%) scale(1)!important;width:85%;max-width:1400px;height:auto;max-height:90vh;z-index:1002;background:var(--fm-video-bg, #000);border-color:var(--primary);box-shadow:var(--fm-shadow-modal, 0 24px 80px var(--shadow-heavy)),0 0 0 3px var(--primary);cursor:zoom-out;animation:fm-focus-in .25s var(--fm-transition-spring, cubic-bezier(.32, .72, 0, 1)) forwards;font-size:120px;color:var(--highlight-soft);opacity:1!important}.analysis-page .gallery-frame.focused:hover{transform:translate(-50%,-50%) scale(1)}.analysis-page .gallery-frame.focused:after{font-size:16px;padding:8px 14px;top:20px;right:20px;color:var(--overlay-heavy)}.analysis-page .gif-view{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:12px}.analysis-page .gif-preview{width:100%;height:100%;object-fit:contain;border-radius:6px}.analysis-page .gif-placeholder{width:80%;height:80%;background:var(--letterbox-color, #000);border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border:2px dashed var(--highlight-faint)}.analysis-page .gif-placeholder-icon{font-size:64px;opacity:.2}.analysis-page .gif-placeholder-text{font-size:var(--text-sm);font-weight:500;color:var(--highlight-subtle);letter-spacing:-.01em}@media(max-width:768px){.analysis-page .frames-view{padding:8px;gap:8px}.analysis-page .filmstrip-container{height:60px;padding:6px}.analysis-page .filmstrip-frame{height:48px}.analysis-page .gallery-frame{font-size:28px}.analysis-page .gallery-frame.focused{width:95%;max-height:80vh}.analysis-page .gif-view{padding:8px}.analysis-page .gif-placeholder{width:90%;height:70%}.analysis-page .gif-placeholder-icon{font-size:48px}}.analysis-page .step-modal-notes-section{width:380px;min-width:280px;max-width:800px;background:var(--fm-notes-bg, var(--bg-secondary, #1a1a1a));border-left:1px solid var(--fm-border, var(--border, var(--highlight-faint)));display:flex;flex-direction:column;flex-shrink:0;transform:translateZ(0);position:relative}.analysis-page .step-modal-resize-handle{position:absolute;left:0;top:0;bottom:0;width:8px;cursor:col-resize;z-index:10;transition:background var(--transition-fast)}.analysis-page .step-modal-resize-handle:hover,.analysis-page .step-modal-resize-handle.dragging{background:var(--primary-subtle)}.analysis-page .step-modal-resize-handle:after{content:"";position:absolute;left:3px;top:50%;transform:translateY(-50%);width:2px;height:32px;background:var(--fm-border, var(--border, var(--highlight-faint)));border-radius:1px;opacity:0;transition:opacity var(--transition-fast)}.analysis-page .step-modal-resize-handle:hover:after,.analysis-page .step-modal-resize-handle.dragging:after{opacity:1;background:var(--primary)}.analysis-page .step-modal-notes-header{padding:12px 16px;border-bottom:1px solid var(--fm-border, var(--border, var(--highlight-faint)));flex-shrink:0;display:flex;align-items:center;justify-content:space-between}.analysis-page .step-modal-notes-title{font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.analysis-page .step-modal-notes-body{flex:1;padding:16px;overflow-y:auto;will-change:scroll-position;-webkit-overflow-scrolling:touch}.analysis-page .step-modal-notes-body::-webkit-scrollbar{width:6px}.analysis-page .step-modal-notes-body::-webkit-scrollbar-track{background:transparent}.analysis-page .step-modal-notes-body::-webkit-scrollbar-thumb{background:var(--highlight-faint);border-radius:3px}.analysis-page .step-modal-notes-body::-webkit-scrollbar-thumb:hover{background:var(--highlight-subtle)}.analysis-page .step-modal-note{font-size:var(--text-sm);line-height:1.7;color:var(--text-secondary);letter-spacing:-.01em;margin-bottom:0;contain:layout style}.analysis-page .step-modal-note.note-paragraph{padding-left:0;margin-bottom:0}.analysis-page .step-modal-note.note-bullet{padding-left:20px;position:relative;margin-bottom:10px}.analysis-page .step-modal-note.note-bullet:before{content:"•";position:absolute;left:0;color:var(--text-tertiary);font-size:16px}.analysis-page .step-modal-note.note-bullet-nested{padding-left:40px;position:relative;margin-bottom:8px}.analysis-page .step-modal-note.note-bullet-nested:before{content:"•";position:absolute;left:20px;color:var(--text-tertiary);font-size:var(--text-sm)}.analysis-page .step-modal-note:last-child{margin-bottom:0}.analysis-page .step-modal-note.note-spacer{height:14px;margin:0;padding:0}.analysis-page .step-modal-note strong{color:var(--text-primary);font-weight:600}.analysis-page .step-modal-note em{font-style:italic;color:var(--text-tertiary)}.analysis-page .step-icon-btn{width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--fm-border, var(--border, var(--highlight-faint)));border-radius:8px;color:var(--text-tertiary);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast)}.analysis-page .step-icon-btn:hover{background:var(--bg-tertiary);border-color:var(--border-hover);color:var(--text-secondary)}.analysis-page .demo-view-edit-btn{display:flex;align-items:center;gap:4px;padding:0 10px;height:26px;background:var(--primary-subtle);border:1px solid var(--primary-glow);border-radius:5px;color:var(--text-primary);font-size:var(--text-xs);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.analysis-page .demo-view-edit-btn:hover{background:var(--primary-glow);border-color:var(--primary-glow)}.analysis-page .step-modal-notes-mode-btn{display:none;padding:5px 10px;background:transparent;border:1px solid var(--fm-border, var(--border, var(--highlight-faint)));border-radius:6px;color:var(--text-tertiary);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all var(--transition-fast)}.analysis-page .step-modal-notes-mode-btn:hover{background:var(--bg-tertiary);color:var(--text-secondary);border-color:var(--border-hover)}.analysis-page .step-modal-notes-mode-btn.active{background:var(--primary-subtle);color:var(--primary);border-color:var(--primary)}.analysis-page .step-modal-notes-mode-btn.active:hover{background:var(--primary-glow)}@media(max-width:768px){.analysis-page .step-modal-notes-section{width:100%!important;min-width:unset;max-width:unset;border-left:none;border-top:1px solid var(--fm-border, var(--border, var(--highlight-faint)));flex:1;min-height:100px;max-height:none;position:relative;display:flex;flex-direction:column}.analysis-page .step-modal-notes-body{flex:1;overflow-y:auto}.analysis-page .step-modal-body.notes-expanded .step-modal-notes-section{flex:1}.analysis-page .step-modal-body.notes-fullscreen .step-modal-notes-section{flex:1;border-top:none}.analysis-page .step-modal-notes-mode-btn{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;font-size:var(--text-xs);min-width:45px}.analysis-page .step-modal-resize-handle{display:none}.analysis-page .step-modal-notes-header{padding:10px 12px}.analysis-page .step-modal-notes-title{font-size:var(--text-xs)}.analysis-page .step-modal-notes-body{padding:12px}.analysis-page .step-modal-note{font-size:16px;line-height:1.6}.analysis-page .step-icon-btn{width:40px;height:40px;font-size:16px;border-radius:10px}}@media(max-width:480px){.analysis-page .step-modal-notes-section{max-height:50vh}}.analysis-page .mobile-notes-section{flex:0 0 32px;min-height:32px;background:var(--fm-notes-bg, var(--bg-secondary, #1a1a1a));display:flex;flex-direction:column;transition:height var(--transition-fast),box-shadow var(--transition-fast),border-radius var(--transition-fast);will-change:height;overflow:hidden;position:relative;border-top-left-radius:20px;border-top-right-radius:20px;border-top:1px solid var(--fm-border, var(--border, var(--highlight-faint)));box-shadow:0 -2px 12px var(--shadow-subtle, rgba(0, 0, 0, .08));z-index:1}.analysis-page .mobile-notes-section.collapsed{border-top-left-radius:16px;border-top-right-radius:16px;box-shadow:0 -1px 8px #0000001a}.analysis-page .mobile-notes-section.dragging{transition:none}.analysis-page .mobile-notes-section.animating{transition:height .4s cubic-bezier(.32,.72,0,1),box-shadow .3s ease,border-radius .3s ease}.analysis-page .mobile-notes-section.overlapping{position:absolute;bottom:0;left:0;right:0;z-index:65;box-shadow:0 -8px 32px var(--shadow-heavy, rgba(0, 0, 0, .35)),0 -2px 8px var(--shadow-medium, rgba(0, 0, 0, .2));border-top-left-radius:24px;border-top-right-radius:24px;border-top:1px solid var(--fm-border, var(--border, var(--highlight-faint)));backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px)}.analysis-page .mobile-notes-drag-handle{display:flex;align-items:center;justify-content:center;padding:12px 0 6px;cursor:grab;touch-action:none;flex-shrink:0;min-height:40px;background:transparent}.analysis-page .mobile-notes-drag-handle:active{cursor:grabbing}.analysis-page .mobile-notes-drag-handle-bar{width:var(--ds-sheet-grip-width, 48px);height:var(--ds-sheet-grip-height, 6px);background:var(--ds-sheet-grip-color, var(--text-muted, rgb(160, 160, 160)));border-radius:var(--ds-sheet-grip-radius, 3px);transition:background .2s ease,transform .2s cubic-bezier(.32,.72,0,1);box-shadow:none}.analysis-page .mobile-notes-drag-handle:hover .mobile-notes-drag-handle-bar,.analysis-page .mobile-notes-section.dragging .mobile-notes-drag-handle-bar{background:var(--text-tertiary, rgb(180, 180, 180));transform:scaleX(1.05)}.analysis-page .mobile-notes-collapsed{display:flex;align-items:center;justify-content:center;height:100%;cursor:grab;touch-action:none;background:transparent}.analysis-page .mobile-notes-collapsed:active{cursor:grabbing}.analysis-page .mobile-notes-collapsed .mobile-notes-drag-handle-bar{width:var(--ds-sheet-grip-width, 48px);height:var(--ds-sheet-grip-height, 6px);background:var(--ds-sheet-grip-color, var(--text-muted, rgb(160, 160, 160)));border-radius:var(--ds-sheet-grip-radius, 3px);transition:background .2s ease,transform .2s cubic-bezier(.32,.72,0,1);box-shadow:none}.analysis-page .mobile-notes-section.entering{animation:dsSheetEnterUp .24s cubic-bezier(.16,1,.3,1)}.analysis-page .mobile-notes-collapsed:hover .mobile-notes-drag-handle-bar{background:var(--text-tertiary, rgb(180, 180, 180));transform:scaleX(1.05)}.analysis-page .mobile-notes-section.handle-glassmorphism{background:color-mix(in srgb,var(--fm-notes-bg, var(--bg-secondary)) 85%,transparent);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-top:1px solid var(--fm-border, var(--border, var(--highlight-faint)))}.analysis-page .mobile-notes-section.handle-glassmorphism .mobile-notes-drag-handle{background:transparent}.analysis-page .mobile-notes-section.handle-glassmorphism .mobile-notes-drag-handle-bar{background:var(--text-muted, rgb(160, 160, 160));box-shadow:none}.analysis-page .mobile-notes-section.handle-glassmorphism .mobile-notes-drag-handle:hover .mobile-notes-drag-handle-bar,.analysis-page .mobile-notes-section.handle-glassmorphism.dragging .mobile-notes-drag-handle-bar{background:var(--text-tertiary, rgb(180, 180, 180))}.analysis-page .mobile-notes-section.handle-glassmorphism .mobile-notes-collapsed{background:transparent}.analysis-page .mobile-notes-section.handle-glassmorphism .mobile-notes-collapsed .mobile-notes-drag-handle-bar{background:var(--text-muted, rgb(160, 160, 160))}.analysis-page .mobile-notes-section.handle-glassmorphism .mobile-notes-collapsed:hover .mobile-notes-drag-handle-bar{background:var(--text-tertiary, rgb(180, 180, 180))}.analysis-page .mobile-notes-section.handle-warm{border-top-color:var(--primary-border, rgba(229, 161, 88, .15))}.analysis-page .mobile-notes-section.handle-warm .mobile-notes-drag-handle-bar{background:var(--text-muted, rgb(160, 160, 160));box-shadow:none}.analysis-page .mobile-notes-section.handle-warm .mobile-notes-drag-handle:hover .mobile-notes-drag-handle-bar,.analysis-page .mobile-notes-section.handle-warm.dragging .mobile-notes-drag-handle-bar{background:var(--text-tertiary, rgb(180, 180, 180))}.analysis-page .mobile-notes-section.handle-warm .mobile-notes-collapsed .mobile-notes-drag-handle-bar{background:var(--text-muted, rgb(160, 160, 160));box-shadow:none}.analysis-page .mobile-notes-section.handle-warm .mobile-notes-collapsed:hover .mobile-notes-drag-handle-bar{background:var(--text-tertiary, rgb(180, 180, 180))}.analysis-page .mobile-notes-section.handle-minimal{border-top-left-radius:28px;border-top-right-radius:28px;border-top-color:var(--fm-border, var(--border, var(--highlight-faint)))}.analysis-page .mobile-notes-section.handle-minimal.overlapping{border-top-left-radius:28px;border-top-right-radius:28px}.analysis-page .mobile-notes-section.handle-minimal .mobile-notes-drag-handle{padding:12px 0 6px;min-height:40px;background:transparent}.analysis-page .mobile-notes-section.handle-minimal .mobile-notes-drag-handle-bar{width:48px;height:6px;background:var(--text-muted, rgb(160, 160, 160));border-radius:3px;box-shadow:none;transition:background .15s ease,transform .15s ease}.analysis-page .mobile-notes-section.handle-minimal .mobile-notes-drag-handle:hover .mobile-notes-drag-handle-bar,.analysis-page .mobile-notes-section.handle-minimal.dragging .mobile-notes-drag-handle-bar{background:var(--text-tertiary, rgb(180, 180, 180));transform:scaleX(1.05)}.analysis-page .mobile-notes-section.handle-minimal .mobile-notes-collapsed .mobile-notes-drag-handle-bar{width:48px;height:6px;background:var(--text-muted, rgb(160, 160, 160));box-shadow:none}.analysis-page .mobile-notes-section.handle-minimal .mobile-notes-collapsed:hover .mobile-notes-drag-handle-bar{background:var(--text-tertiary, rgb(180, 180, 180))}.analysis-page .mobile-notes-header{display:flex;align-items:center;justify-content:space-between;padding:0 16px;flex-shrink:0}.analysis-page .mobile-notes-title{font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.analysis-page .mobile-notes-edit-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--fm-border, var(--border, var(--highlight-faint)));border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.analysis-page .mobile-notes-edit-btn svg{width:16px;height:16px}.analysis-page .mobile-notes-edit-btn:focus{outline:none}.analysis-page .mobile-notes-edit-btn:hover{background:var(--bg-tertiary);border-color:var(--border-hover);color:var(--text-primary)}.analysis-page .mobile-notes-edit-btn:active{background:var(--bg-tertiary);border-color:var(--border-hover);transform:scale(.94)}.analysis-page .mobile-notes-edit-actions{display:flex;align-items:center;gap:10px}.analysis-page .mobile-notes-edit-action-btn{width:38px;height:38px;border-radius:10px;border:1px solid var(--fm-border, var(--border, var(--highlight-faint)));background:transparent;color:var(--text-secondary);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.analysis-page .mobile-notes-edit-action-btn svg{width:18px;height:18px}.analysis-page .mobile-notes-edit-action-btn.cancel{background:transparent;border-color:var(--fm-border, var(--border, var(--highlight-faint)));color:var(--text-tertiary)}.analysis-page .mobile-notes-edit-action-btn.cancel:hover{background:var(--bg-tertiary);border-color:var(--border-hover);color:var(--text-secondary)}.analysis-page .mobile-notes-edit-action-btn.cancel:active{background:var(--bg-tertiary);transform:scale(.94)}.analysis-page .mobile-notes-edit-action-btn.save{background:var(--primary-subtle);border-color:var(--primary-border, var(--primary-glow));color:var(--primary)}.analysis-page .mobile-notes-edit-action-btn.save:hover{background:var(--primary-glow);border-color:var(--primary)}.analysis-page .mobile-notes-edit-action-btn.save:active{background:var(--primary-glow);transform:scale(.94)}.analysis-page .mobile-notes-content{flex:1;min-height:0;padding:12px 16px 20px;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.analysis-page .mobile-notes-section.fullscreen-edit{position:fixed!important;inset:0!important;z-index:9999!important;height:100vh!important;height:100dvh!important;background:var(--fm-notes-bg, var(--bg-secondary, #1a1a1a));border-radius:0;box-shadow:none;display:flex;flex-direction:column;animation:fm-notes-fullscreen-enter .3s cubic-bezier(.32,.72,0,1)}@keyframes fm-notes-fullscreen-enter{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.analysis-page .mobile-notes-section.fullscreen-edit .mobile-notes-header{padding:16px 16px 14px;padding-top:max(16px,calc(var(--safe-area-top) + 10px));border-bottom:1px solid var(--fm-border, var(--border, var(--highlight-faint)));margin-bottom:0;background:transparent}.analysis-page .mobile-notes-section.fullscreen-edit .mobile-notes-title{font-size:16px;font-weight:500;color:var(--text-primary);text-transform:none;letter-spacing:-.01em}.analysis-page .mobile-notes-section.fullscreen-edit .mobile-notes-content{flex:1;display:flex;flex-direction:column;padding:0;padding-bottom:var(--safe-area-bottom);overflow:hidden}.analysis-page .mobile-notes-section.fullscreen-edit .notes-panel,.analysis-page .mobile-notes-section.fullscreen-edit .notes-edit-container{flex:1;display:flex;flex-direction:column;height:100%}.analysis-page .mobile-notes-section.fullscreen-edit .notes-edit-textarea-input{flex:1;width:100%;height:100%;min-height:unset;padding:16px;background:transparent;border:none;color:var(--text-primary);font-size:16px;line-height:1.6;resize:none;outline:none}.analysis-page .mobile-notes-section.fullscreen-edit .notes-edit-textarea-input::placeholder{color:var(--text-tertiary)}.analysis-page .step-modal-notes-section.landscape-phone{border-left:1px solid var(--fm-border, var(--border, var(--highlight-faint)));border-top:none;background:var(--fm-notes-bg, var(--bg-secondary, #1a1a1a));display:flex;flex-direction:column;flex-shrink:0}.analysis-page .step-modal-notes-section.landscape-phone .step-modal-resize-handle{display:block;width:16px;cursor:col-resize;touch-action:none}.analysis-page .step-modal-notes-section.landscape-phone .step-modal-resize-handle:after{width:3px;height:40px;left:6px}.analysis-page .step-modal-notes-section.landscape-phone .step-modal-notes-header{padding:8px 12px}.analysis-page .step-modal-notes-section.landscape-phone .step-modal-notes-title{font-size:var(--text-xs)}.analysis-page .step-modal-notes-section.landscape-phone .step-modal-notes-body{flex:1;padding:8px 12px;overflow-y:auto}.analysis-page .step-modal-notes-section.landscape-phone .step-modal-notes-mode-btn{display:none}.analysis-page .step-modal-notes-section.landscape-phone .step-modal-note{font-size:var(--text-sm);line-height:1.5}@media(max-width:600px){.analysis-page .mobile-notes-edit-action-btn{width:44px;height:44px;font-size:18px;border-radius:11px}.analysis-page .mobile-notes-edit-action-btn svg{width:20px;height:20px}.analysis-page .mobile-notes-edit-btn{width:38px;height:38px}.analysis-page .mobile-notes-edit-btn svg{width:16px;height:16px}}body.capacitor-native .analysis-page .mobile-notes-section{border-top-left-radius:24px;border-top-right-radius:24px}body.capacitor-native .analysis-page .mobile-notes-section.overlapping{border-top-left-radius:28px;border-top-right-radius:28px}body.capacitor-native .analysis-page .mobile-notes-drag-handle{min-height:44px;padding:14px 0 8px}body.capacitor-native .analysis-page .mobile-notes-drag-handle-bar{width:52px;height:6px}body.capacitor-native .analysis-page .mobile-notes-edit-btn{width:44px;height:44px;border-radius:10px}body.capacitor-native .analysis-page .mobile-notes-edit-btn svg{width:18px;height:18px}body.capacitor-native .analysis-page .mobile-notes-edit-action-btn{width:48px;height:48px;font-size:20px;border-radius:12px}body.capacitor-native .analysis-page .mobile-notes-edit-action-btn svg{width:22px;height:22px}body.capacitor-native .analysis-page .step-icon-btn{width:48px;height:48px;font-size:20px;border-radius:12px}.swipe-container{position:relative;width:100%;flex:1;min-height:0;overflow:hidden;overscroll-behavior-x:none;touch-action:pan-y}.swipe-container.swiping>*{pointer-events:none}.swipe-container.swiping{user-select:none;-webkit-user-select:none}.swipe-indicator{position:absolute;bottom:24px;left:50%;transform:translate(-50%) translateY(4px);display:flex;gap:6px;z-index:var(--fm-z-controls);opacity:0;transition:opacity var(--transition-slow),transform var(--transition-slow);pointer-events:none}.swipe-container.swiping .swipe-indicator,.swipe-container.transitioning .swipe-indicator{opacity:1;transform:translate(-50%) translateY(0)}.swipe-indicator-dot{width:6px;height:6px;border-radius:50%;background:var(--overlay-subtle);transition:all var(--transition-normal)}.swipe-indicator-dot.active{width:18px;border-radius:3px;background:var(--overlay-heavy)}.embla-viewport{overflow:hidden;width:100%;height:100%}.embla-container{display:flex;height:100%}.embla-slide{flex:0 0 100%;min-width:0;height:100%}@keyframes emblaSlideArrive{0%{opacity:.7;transform:scale(.985)}to{opacity:1;transform:scale(1)}}.embla-slide-current{display:flex;flex-direction:column;background:var(--fm-body-bg, #1a1a1a);animation:emblaSlideArrive .25s cubic-bezier(.25,.1,.25,1) both}.embla-slide-placeholder{display:flex;align-items:center;justify-content:center;background:var(--bg-secondary, #252525)}@keyframes placeholderPulse{0%,to{opacity:.08;transform:scale(1)}50%{opacity:.15;transform:scale(1.05)}}.swipe-placeholder-hint{font-size:36px;color:var(--text-on-primary);font-weight:200;opacity:.08;animation:placeholderPulse 2.5s ease-in-out infinite}.swipe-indicator.visible{opacity:1}@media(max-width:768px){.analysis-page .step-modal-container{border-radius:0}}.analysis-page .step-modal-container.mobile{background:var(--bg-primary)}.analysis-page .step-modal-container.mobile:not(.landscape) .clip-control-bar{padding:12px}.analysis-page .focus-modal-crop-btn{position:absolute;top:12px;right:12px;z-index:20;width:var(--video-overlay-btn-size, 44px);height:var(--video-overlay-btn-size, 44px);display:flex;align-items:center;justify-content:center;background:var(--shadow-soft);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--highlight-soft);border-radius:8px;color:var(--overlay-heavy);cursor:pointer;transition:all var(--transition-fast);box-shadow:0 2px 8px var(--shadow-medium)}body.capacitor-native .analysis-page .focus-modal-crop-btn{top:12px;right:12px}.analysis-page .focus-modal-crop-btn:hover{background:var(--shadow-heavy);border-color:var(--overlay-subtle);color:var(--text-on-primary)}.analysis-page .focus-modal-crop-btn:active{transform:scale(.95)}@media(max-width:768px){.analysis-page .focus-modal-crop-btn{border-radius:10px;background:var(--shadow-medium)}}.analysis-page .focus-modal-crop-btn.active{background:var(--warning-subtle);border-color:var(--warning-glow);color:var(--warning);box-shadow:0 0 12px var(--warning-subtle)}.analysis-page .focus-modal-crop-btn.active:hover{background:var(--warning-glow);border-color:var(--warning);box-shadow:0 0 16px var(--warning-glow)}.analysis-page .focus-modal-crop-btn svg{width:var(--video-overlay-btn-icon-size, 22px);height:var(--video-overlay-btn-icon-size, 22px)}.analysis-page .focus-modal-crop-btn.hidden{opacity:0;pointer-events:none;transform:scale(.9)}body.crop-overlay-active .analysis-page .focus-modal-crop-btn{opacity:0;pointer-events:none;visibility:hidden;transition:none}.analysis-page .focus-modal-crop-btn.fade-out{opacity:0;pointer-events:none;transition:opacity var(--transition-slow)}.analysis-page .mobile-notes-editor-backdrop{position:fixed;inset:0;background:var(--overlay-dark);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);--webkit-backdrop-filter: blur(8px);z-index:1100;animation:fm-fade-in .3s ease-out}.analysis-page .mobile-notes-editor{position:fixed;inset:0;background:var(--fm-editor-bg);z-index:var(--fm-z-editor);display:flex;flex-direction:column;animation:fm-mobile-editor-slide-up .4s cubic-bezier(.32,.72,0,1);transform-origin:bottom center}.analysis-page .mobile-notes-editor-header{display:flex;align-items:center;justify-content:space-between;padding:var(--fm-space-md) var(--fm-space-lg);padding-top:max(var(--fm-space-md),calc(var(--safe-area-top) + 4px));background:var(--fm-header-bg);border-bottom:1px solid var(--border);flex-shrink:0;height:56px;min-height:56px}.analysis-page .mobile-notes-editor-title-group{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px}.analysis-page .mobile-notes-editor-title{font-size:var(--text-base);font-weight:500;color:var(--text-primary);letter-spacing:-.01em}.analysis-page .mobile-notes-editor-help-btn{width:20px;height:20px;border-radius:10px;background:transparent;border:1.5px solid var(--text-tertiary);color:var(--text-tertiary);font-size:var(--text-xs);font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent;opacity:.7}.analysis-page .mobile-notes-editor-help-btn:active{opacity:1;border-color:var(--text-secondary);color:var(--text-secondary)}.analysis-page .mobile-notes-editor-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent;font-size:20px}.analysis-page .mobile-notes-editor-btn:active{background:var(--bg-tertiary);border-color:var(--border-hover);color:var(--text-primary)}.analysis-page .mobile-notes-editor-body{flex:1;position:relative;overflow:hidden;background:var(--bg-secondary)}.analysis-page .mobile-notes-editor-body .notes-panel,.analysis-page .mobile-notes-editor-body .notes-edit-container{position:absolute;inset:0}.analysis-page .mobile-notes-editor .mobile-notes-editor-body .notes-panel .notes-edit-container .notes-edit-textarea-input,.analysis-page .mobile-notes-editor-body .notes-edit-textarea-input,.analysis-page .mobile-notes-editor-body textarea{position:absolute;inset:0;width:100%;height:100%;min-height:unset;max-height:none;resize:none;border:none;border-radius:0;background:var(--bg-secondary);color:var(--text-secondary);font-size:16px;line-height:1.7;letter-spacing:-.01em;padding:20px;padding-bottom:max(28px,calc(var(--safe-area-bottom) + 20px));font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,Roboto,sans-serif;outline:none;box-shadow:none;margin:0;caret-color:var(--primary);-webkit-overflow-scrolling:touch;overflow-y:auto}.analysis-page .mobile-notes-editor-body .notes-edit-textarea-input::placeholder,.analysis-page .mobile-notes-editor-body textarea::placeholder{color:var(--text-muted)}.analysis-page .mobile-notes-editor-body .notes-edit-textarea-input:focus,.analysis-page .mobile-notes-editor-body textarea:focus{outline:none;box-shadow:none;border:none}.analysis-page .mobile-notes-editor-body .notes-edit-textarea-input::-webkit-scrollbar,.analysis-page .mobile-notes-editor-body textarea::-webkit-scrollbar{width:4px}.analysis-page .mobile-notes-editor-body .notes-edit-textarea-input::-webkit-scrollbar-track,.analysis-page .mobile-notes-editor-body textarea::-webkit-scrollbar-track{background:transparent}.analysis-page .mobile-notes-editor-body .notes-edit-textarea-input::-webkit-scrollbar-thumb,.analysis-page .mobile-notes-editor-body textarea::-webkit-scrollbar-thumb{background:var(--highlight-ghost);border-radius:2px}.analysis-page .mobile-notes-editor-body .notes-edit-textarea-input::-webkit-scrollbar-thumb:hover,.analysis-page .mobile-notes-editor-body textarea::-webkit-scrollbar-thumb:hover{background:var(--highlight-subtle)}.analysis-page .notes-help-backdrop{position:absolute;inset:0;background:var(--shadow-heavy);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:10;animation:fm-fade-in .2s ease}.analysis-page .notes-help-sheet{position:absolute;bottom:0;left:0;right:0;background:var(--fm-sheet-bg);border-radius:var(--fm-radius-xl) var(--fm-radius-xl) 0 0;z-index:11;animation:fm-help-sheet-in .35s var(--fm-transition-spring);padding-bottom:max(20px,var(--safe-area-bottom));box-shadow:var(--fm-shadow-sheet)}.analysis-page .notes-help-sheet-handle{width:36px;height:5px;background:var(--text-tertiary);opacity:.4;border-radius:2.5px;margin:6px auto 2px}.analysis-page .notes-help-sheet-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px 12px;border-bottom:1px solid var(--border)}.analysis-page .notes-help-sheet-title{font-size:var(--text-base);font-weight:600;color:var(--text-primary);letter-spacing:-.01em}.analysis-page .notes-help-sheet-close{background:none;border:none;color:var(--primary);font-size:var(--text-base);font-weight:500;cursor:pointer;padding:6px 2px;-webkit-tap-highlight-color:transparent;transition:opacity var(--transition-fast)}.analysis-page .notes-help-sheet-close:active{opacity:.5}.analysis-page .notes-help-sheet-content{padding:8px 20px 4px}.analysis-page .notes-help-item{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid var(--border)}.analysis-page .notes-help-item:last-child{border-bottom:none}.analysis-page .notes-help-label{font-size:var(--text-base);font-weight:500;color:var(--text-primary);letter-spacing:-.01em}.analysis-page .notes-help-desc{font-size:var(--text-sm);color:var(--text-tertiary)}.analysis-page .notes-help-desc code{display:inline-block;background:var(--bg-tertiary);padding:3px 8px;border-radius:5px;font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-xs);font-weight:500;color:var(--text-secondary);letter-spacing:0}@media(max-width:600px){.analysis-page .mobile-notes-editor-help-btn{width:24px;height:24px;border-radius:12px;font-size:var(--text-sm);border-width:1px;position:relative}.analysis-page .mobile-notes-editor-help-btn:before{content:"";position:absolute;inset:-10px}.analysis-page .mobile-notes-editor-title{font-size:16px}.analysis-page .notes-help-sheet-close{min-height:44px;min-width:60px;padding:10px 12px;font-size:16px;display:flex;align-items:center;justify-content:center}}body.capacitor-native .analysis-page .mobile-notes-editor-btn{width:48px;height:48px;font-size:24px;border-radius:10px}body.capacitor-native .analysis-page .mobile-notes-editor-help-btn{width:28px;height:28px;border-radius:14px;font-size:var(--text-sm);border-width:1px;position:relative}body.capacitor-native .analysis-page .mobile-notes-editor-help-btn:before{content:"";position:absolute;inset:-10px}body.capacitor-native .analysis-page .mobile-notes-editor-title{font-size:17px}body.capacitor-native .analysis-page .mobile-notes-editor-header{height:60px;min-height:60px}body.capacitor-native .analysis-page .notes-help-sheet-close{min-height:48px;min-width:64px;padding:12px 14px;font-size:17px}@media(max-width:768px){.analysis-page .step-modal-container.mobile:not(.landscape) .step-modal-video-slot{width:100%;--grid-video-object-fit: cover}.analysis-page .step-modal-container.mobile:not(.landscape) .step-modal-video-slot .clip-player{width:100%;height:100%}.analysis-page .step-modal-container.mobile:not(.landscape) .step-modal-video-slot video,.analysis-page .step-modal-container.mobile:not(.landscape) .step-modal-video-slot .clip-player video{object-fit:cover;width:100%;height:100%;transform:scale(1.02);transform-origin:center center}.analysis-page .step-modal-container.mobile:not(.landscape) .step-modal-video-slot.crop-expanded:not(.cropped) video,.analysis-page .step-modal-container.mobile:not(.landscape) .step-modal-video-slot.crop-expanded:not(.cropped) .clip-player video{object-fit:contain;transform:none}.analysis-page .step-modal-container.mobile:not(.landscape) .step-modal-video-slot.crop-expanded:not(.cropped){--grid-video-object-fit: contain}.analysis-page .step-modal-container.mobile:not(.landscape) .step-modal-video-slot.crop-expanded.cropped video,.analysis-page .step-modal-container.mobile:not(.landscape) .step-modal-video-slot.crop-expanded.cropped .clip-player video{object-fit:contain}.analysis-page .step-modal-container.mobile:not(.landscape) .step-modal-video-slot.crop-expanded.cropped{--grid-video-object-fit: contain}}.analysis-page .step-modal-container:not(.mobile) .step-modal-video-slot.crop-expanded video,.analysis-page .step-modal-container:not(.mobile) .step-modal-video-slot.crop-expanded .clip-player video,.analysis-page .step-modal-container:not(.mobile) .step-modal-video-slot.crop-expanded .video-slot-poster{object-fit:contain}.analysis-page .step-modal-container:not(.mobile) .step-modal-video-slot.crop-expanded{--grid-video-object-fit: contain}@media(max-width:768px){.analysis-page .step-modal-container.mobile:not(.landscape):not(.tallvid) .clip-player{overflow:visible}.analysis-page .step-modal-container.mobile:not(.landscape):not(.tallvid) .clip-control-bar{padding-left:12px;padding-right:12px}.analysis-page .step-modal-container.mobile:not(.landscape):not(.tallvid) .clip-duration-badge{left:24px}}.clip-player{position:relative;width:100%;height:100%;background:var(--letterbox-color, #000);overflow:visible}.clip-player-grid{border-radius:0}.clip-player-modal{border-radius:8px}.clip-video-wrapper{position:relative;width:100%;height:100%;overflow:hidden}.clip-player video{width:100%;height:100%;display:block;transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.clip-poster-backdrop{position:absolute;inset:0;background-color:var(--letterbox-color);z-index:4}.clip-poster-overlay{position:absolute;inset:0;background-size:var(--grid-video-object-fit, contain);background-position:center;background-repeat:no-repeat;display:flex;align-items:center;justify-content:center;z-index:5;cursor:pointer}.clip-poster-overlay:before{content:"";position:absolute;inset:0;background:var(--shadow-soft);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.clip-poster-play-icon{position:relative;z-index:1;width:64px;height:64px;background:var(--overlay-dark);border-radius:50%;display:flex;align-items:center;justify-content:center;padding-left:3px;font-size:28px;color:#fff;box-shadow:0 4px 12px var(--shadow-heavy)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.clip-player video.mirrored{transform:scaleX(-1) translateZ(0)}.clip-poster-overlay.mirrored,.clip-poster-overlay.mirrored .clip-poster-play-icon{transform:scaleX(-1)}.segment-editor-unified{display:flex;flex-direction:column;pointer-events:none;opacity:0;transform:translateY(6px);transition:opacity var(--transition-normal),transform var(--transition-normal)}.segment-editor-unified.is-visible{opacity:1;transform:translateY(0)}.segment-editor-header{display:flex;align-items:center;justify-content:space-between;height:44px;padding:0 6px 0 14px;background:var(--bg-primary);border-radius:12px 12px 0 0;pointer-events:auto;box-shadow:0 0 0 1px var(--shadow-ghost),-4px 0 12px -4px var(--shadow-ghost),4px 0 12px -4px var(--shadow-ghost),0 -4px 12px -2px var(--shadow-ghost)}.segment-editor-header-title{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.segment-editor-header-title-text{display:flex;flex-direction:column;min-width:0}.segment-editor-header-icon{width:3px;height:16px;background:var(--primary, #8B5CF6);border-radius:2px;flex-shrink:0}.segment-editor-header-icon svg{display:none}.segment-editor-header-text{font-size:var(--text-sm);font-weight:600;color:var(--text-primary, #27272A);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.segment-editor-header-subtitle{font-size:var(--text-sm);font-weight:500;color:var(--text-secondary, #52525B);letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:-2px}.segment-editor-header-actions{display:flex;align-items:center;gap:2px}.segment-editor-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:8px;color:var(--text-tertiary, #71717A);cursor:pointer;transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent}.segment-editor-btn svg{width:18px;height:18px;transition:transform var(--transition-fast)}.segment-editor-btn:hover:not(:disabled){background:var(--shadow-ghost);color:var(--text-primary, #18181B)}.segment-editor-btn:active:not(:disabled){transform:scale(.92);transition:transform .06s ease-out}.segment-editor-btn:active:not(:disabled) svg{transform:scale(.95)}.segment-editor-btn--cancel:hover:not(:disabled){background:var(--danger-subtle);color:var(--error, var(--danger))}.segment-editor-btn--cancel:active:not(:disabled){background:var(--danger-subtle)}@keyframes segmentSaveAwaken{0%{box-shadow:0 0 rgba(var(--primary-rgb, 139, 92, 246),.5)}70%{box-shadow:0 0 0 8px rgba(var(--primary-rgb, 139, 92, 246),0)}to{box-shadow:0 0 rgba(var(--primary-rgb, 139, 92, 246),0)}}@keyframes segmentSaveBreathe{0%,to{box-shadow:0 2px 8px rgba(var(--primary-rgb, 139, 92, 246),.25)}50%{box-shadow:0 2px 12px rgba(var(--primary-rgb, 139, 92, 246),.4)}}.segment-editor-btn--save.has-changes{background:var(--primary, #8B5CF6);color:var(--text-on-primary);animation:segmentSaveAwaken .5s cubic-bezier(.23,1,.32,1),segmentSaveBreathe 3s ease-in-out .5s infinite}.segment-editor-btn--save.has-changes:hover:not(:disabled){background:var(--primary-hover, #7C3AED);animation:none;box-shadow:0 2px 12px rgba(var(--primary-rgb, 139, 92, 246),.5)}.segment-editor-btn--save.has-changes:active:not(:disabled){background:var(--primary-active, #6D28D9);transform:scale(.94)}.segment-editor-btn--save:disabled{opacity:.35;cursor:not-allowed;animation:none}.segment-editor-video-window{position:relative;background:transparent;pointer-events:none}.segment-editor-timeline-section{background:var(--bg-primary);border-radius:0 0 12px 12px;pointer-events:auto;box-shadow:0 0 0 1px var(--shadow-ghost),-4px 0 12px -4px var(--shadow-ghost),4px 0 12px -4px var(--shadow-ghost),0 4px 16px -2px var(--shadow-subtle),0 8px 24px -4px var(--shadow-ghost)}.clip-edit-segment-timeline{width:100%;touch-action:pan-x pan-y}.clip-edit-segment-timeline .timeline-container{background:transparent;border:none;box-shadow:none;border-radius:0;padding:8px 12px 10px;gap:6px;grid-template-columns:1fr}.clip-edit-segment-timeline .marker-row{height:18px;background:var(--bg-tertiary, #F4F4F5);border-radius:4px}.segment-editor-timeline-section .clip-edit-segment-timeline .timeline-container{padding:10px 14px 12px;gap:8px}.segment-editor-timeline-section .clip-edit-segment-timeline .marker-row{background:var(--bg-tertiary, #F4F4F5);height:20px}.segment-editor-timeline-section .clip-edit-segment-timeline .tracks-container{background:transparent;min-height:44px;max-height:44px}.segment-editor-timeline-section .clip-edit-segment-timeline .track{height:44px;min-height:44px}.segment-editor-timeline-section .timeline-time{color:var(--text-secondary);font-size:var(--text-xs)}.segment-editor-timeline-section .timeline-time-current{color:var(--text-primary)}.segment-editor-timeline-section .timeline-block{border-radius:6px}.segment-editor-timeline-section .timeline-block .block-label{font-size:var(--text-xs);font-weight:600;letter-spacing:-.01em}.segment-editor-timeline-section .railway-grip{width:12px}.segment-editor-timeline-section .railway-grip-handle{width:3px;height:16px;border-radius:1.5px;background:var(--overlay-heavy);box-shadow:0 1px 2px var(--shadow-soft)}.segment-editor-timeline-section .playhead-line{width:1.5px;background:var(--primary, #8B5CF6)}.clip-edit-segment-timeline .playhead-marker-circle{width:12px;height:12px}.clip-edit-segment-timeline .tracks-container{min-height:40px;max-height:40px;padding-bottom:0;--playhead-line-bottom: 0px;background:transparent}.clip-edit-segment-timeline .tracks-container:before{display:none}.clip-edit-segment-timeline .track{height:40px;min-height:40px}.clip-edit-segment-timeline .timeline-block{border-radius:6px}.clip-edit-segment-timeline .timeline-block .block-label{font-size:var(--text-xs);padding:0 8px}.clip-edit-segment-timeline .railway-grip{width:14px}.clip-edit-segment-timeline .railway-grip-handle{width:4px;height:18px;border-radius:2px}.clip-edit-segment-timeline .zoom-minimap{height:18px}.clip-control-bar{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;gap:10px;padding:12px 14px;background:linear-gradient(to top,var(--overlay-dark) 0%,var(--overlay-dark) 60%,var(--shadow-ghost) 100%);opacity:1;transform:translateY(0);transition:opacity var(--transition-normal),transform var(--transition-normal);pointer-events:auto;z-index:8;overflow:visible}.clip-player:not(:hover):not(.playing):not(.has-poster) .clip-control-bar{opacity:.85}.clip-player.has-poster .clip-control-bar{opacity:0;transform:translateY(8px);pointer-events:none}.clip-player.controls-hidden .clip-control-bar,.clip-player.controls-hidden:not(:hover):not(.playing):not(.has-poster) .clip-control-bar{opacity:0;pointer-events:none}.clip-player.controls-hidden{cursor:none}.clip-player.controls-hidden video{cursor:none}.clip-player-grid .clip-control-bar{padding:8px 10px;gap:12px;font-size:.75rem}.clip-player-modal .clip-control-bar{padding:12px 16px;gap:12px;font-size:.875rem}.clip-scrub-bar{flex:1;min-width:0;height:5px;background:var(--highlight-soft);border-radius:3px;cursor:pointer;position:relative}.clip-scrub-progress{height:100%;background:var(--primary);border-radius:3px;position:relative}.clip-scrub-thumb{position:absolute;right:-6px;top:50%;transform:translateY(-50%);width:12px;height:12px;background:#fff;border-radius:50%;box-shadow:0 2px 4px var(--shadow-medium);opacity:0;transition:opacity var(--transition-fast)}.clip-player:hover .clip-scrub-thumb,.clip-scrub-bar:active .clip-scrub-thumb{opacity:1}.clip-time-display{font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:#fff;white-space:nowrap;flex-shrink:0}.clip-player-grid .clip-time-display{font-size:var(--text-xs)}.clip-inline-btn{width:var(--playback-ctrl-btn-size, 36px);height:var(--playback-ctrl-btn-size, 36px);display:flex;align-items:center;justify-content:center;background:var(--highlight-faint);border:1px solid var(--highlight-soft);color:var(--overlay-heavy);cursor:pointer;border-radius:8px;transition:all var(--transition-fast);flex-shrink:0;padding:0}.clip-inline-btn svg{width:var(--playback-ctrl-btn-icon-size, 18px);height:var(--playback-ctrl-btn-icon-size, 18px)}.clip-inline-btn:hover{background:var(--highlight-soft);color:#fff}.clip-inline-btn:active{transform:scale(.95)}.clip-inline-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.clip-inline-btn.active:hover,.clip-inline-btn.active:focus{background:var(--primary);border-color:var(--primary);filter:brightness(1.1)}.clip-inline-btn:focus{outline:none}.clip-inline-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.clip-settings-btn{width:var(--playback-ctrl-btn-size, 36px);height:var(--playback-ctrl-btn-size, 36px);display:flex;align-items:center;justify-content:center;background:var(--highlight-subtle);border:1px solid var(--highlight-soft);color:#fff;cursor:pointer;border-radius:6px;transition:all var(--transition-fast);flex-shrink:0;box-shadow:0 2px 4px var(--shadow-soft);padding:0}.clip-settings-btn svg{width:var(--playback-ctrl-btn-icon-size, 18px);height:var(--playback-ctrl-btn-icon-size, 18px)}.clip-settings-btn:hover{background:var(--highlight-soft);border-color:var(--overlay-subtle);transform:translateY(-1px);box-shadow:0 3px 6px var(--shadow-medium)}.clip-settings-wrapper{position:relative}.clip-settings-anchor{position:relative;flex-shrink:0;display:flex}.clip-notes-btn{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.clip-settings-menu-desktop{background:var(--settings-menu-bg);border:1px solid var(--settings-menu-border);border-radius:10px;min-width:200px;padding:8px 0;box-shadow:var(--settings-menu-shadow);z-index:10000;animation:settingsDropdownIn .15s ease}.clip-settings-menu-desktop.open-above{margin-bottom:8px;transform-origin:bottom right}.clip-settings-menu-desktop.open-below{margin-top:8px;transform-origin:top right}@keyframes settingsDropdownIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.clip-settings-section{padding:8px 12px}.clip-settings-label{display:block;font-size:var(--text-xs);font-weight:600;color:var(--settings-menu-text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.clip-settings-speed-options{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.clip-settings-speed-btn{padding:8px 4px;background:var(--settings-menu-btn-bg);border:1px solid var(--settings-menu-btn-border);border-radius:6px;color:var(--settings-menu-text);font-size:var(--text-xs);font-weight:500;cursor:pointer;transition:all var(--transition-fast);text-align:center}.clip-settings-speed-btn:hover{background:var(--settings-menu-btn-hover-bg);border-color:var(--primary);color:var(--primary);transform:translateY(-1px);box-shadow:0 2px 8px color-mix(in srgb,var(--primary) 20%,transparent)}.clip-settings-speed-btn:active{transform:translateY(0);box-shadow:none}.clip-settings-speed-btn.active{background:var(--primary, var(--primary-alt));border-color:var(--primary, var(--primary-alt));color:#fff;box-shadow:0 2px 8px color-mix(in srgb,var(--primary) 35%,transparent)}.clip-settings-speed-btn.active:hover{background:var(--primary-hover);border-color:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px color-mix(in srgb,var(--primary) 45%,transparent)}.clip-settings-divider{height:1px;background:var(--settings-menu-divider);margin:8px 0}.clip-settings-volume{display:flex;align-items:center;gap:8px;padding:6px 12px}.clip-settings-option-inline{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--settings-menu-text-muted);font-size:var(--text-base);cursor:pointer;border-radius:6px;transition:all var(--transition-fast);flex-shrink:0}.clip-settings-option-inline:hover{background:var(--settings-menu-option-hover-bg);color:var(--settings-menu-text)}.clip-settings-volume-slider{width:100px;height:20px;cursor:pointer;position:relative;display:flex;align-items:center}.clip-settings-volume-track{position:absolute;left:0;right:0;height:4px;background:var(--settings-menu-btn-bg);border-radius:2px}.clip-settings-volume-progress{position:absolute;left:0;height:4px;background:var(--primary);border-radius:2px;pointer-events:none;transition:background var(--transition-fast)}.clip-settings-volume-slider:hover .clip-settings-volume-progress{background:var(--primary-hover)}.clip-settings-volume-thumb{position:absolute;top:50%;transform:translate(-50%,-50%);width:12px;height:12px;background:var(--primary);border-radius:50%;box-shadow:0 1px 3px var(--shadow-medium);pointer-events:none;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.clip-settings-volume-slider:hover .clip-settings-volume-thumb{transform:translate(-50%,-50%) scale(1.2);box-shadow:0 2px 6px var(--shadow-heavy)}.clip-settings-volume-slider:active .clip-settings-volume-thumb{transform:translate(-50%,-50%) scale(1.1)}.clip-settings-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:transparent;border:none;color:var(--settings-menu-text);font-size:var(--text-sm);cursor:pointer;text-align:left;transition:background var(--transition-fast)}.clip-settings-option.clip-settings-option-danger{color:var(--danger, #ef4444)}.clip-settings-option.clip-settings-option-danger:hover{background:color-mix(in srgb,var(--danger, #ef4444) 12%,transparent)}.clip-settings-option:hover{background:var(--settings-menu-option-hover-bg)}.clip-settings-option.active{color:var(--primary, var(--primary-alt))}.clip-settings-option-icon{width:20px;font-size:var(--text-sm);text-align:center;opacity:.8}.clip-settings-option-text{flex:1}.clip-settings-option-check{color:var(--primary, var(--primary-alt));font-size:var(--text-sm)}.clip-settings-backdrop{position:fixed;inset:0;background:var(--overlay-dark);z-index:10000;animation:fadeIn .2s ease}.clip-settings-menu-mobile{position:fixed;bottom:0;left:0;right:0;background:var(--settings-menu-bg);border-top-left-radius:16px;border-top-right-radius:16px;z-index:10001;padding-bottom:var(--safe-area-bottom);animation:slideUpMenu .25s cubic-bezier(.16,1,.3,1);box-shadow:0 -4px 20px var(--shadow-heavy)}@keyframes slideUpMenu{0%{transform:translateY(100%)}to{transform:translateY(0)}}.clip-settings-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--settings-menu-divider)}.clip-settings-title{font-size:var(--text-base);font-weight:600;color:var(--settings-menu-text)}.clip-settings-close{background:transparent;border:none;color:var(--settings-menu-text-muted);font-size:24px;cursor:pointer;padding:4px;line-height:1}.clip-settings-menu-mobile .clip-settings-section{padding:16px 20px;border-bottom:1px solid var(--settings-menu-divider)}.clip-settings-menu-mobile .clip-settings-label{margin-bottom:12px}.clip-settings-menu-mobile .clip-settings-speed-options{gap:8px}.clip-settings-menu-mobile .clip-settings-speed-btn,.clip-settings-menu-mobile .clip-settings-countdown-btn{padding:12px 4px;font-size:var(--text-sm)}.clip-settings-menu-mobile .clip-settings-option{padding:16px 20px;font-size:var(--text-base);border-bottom:1px solid var(--settings-menu-divider)}.clip-settings-menu-mobile .clip-settings-option:last-child{border-bottom:none}.clip-settings-menu-mobile .clip-settings-option:active{background:var(--settings-menu-option-hover-bg)}.clip-settings-menu-mobile .clip-settings-option-icon{width:28px;font-size:18px}.clip-settings-subsection{padding:8px 12px;margin:0}.clip-settings-countdown-options{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.clip-settings-countdown-btn{padding:8px 4px;background:var(--settings-menu-btn-bg);border:1px solid var(--settings-menu-btn-border);border-radius:6px;color:var(--settings-menu-text);font-size:var(--text-xs);font-weight:500;cursor:pointer;transition:all var(--transition-fast);text-align:center}.clip-settings-countdown-btn:hover{background:var(--settings-menu-btn-hover-bg);border-color:var(--primary);color:var(--primary);transform:translateY(-1px);box-shadow:0 2px 8px color-mix(in srgb,var(--primary) 20%,transparent)}.clip-settings-countdown-btn:active{transform:translateY(0);box-shadow:none}.clip-settings-countdown-btn.active{background:var(--primary, var(--primary-alt));border-color:var(--primary, var(--primary-alt));color:#fff;box-shadow:0 2px 8px color-mix(in srgb,var(--primary) 35%,transparent)}.clip-settings-countdown-btn.active:hover{background:var(--primary-hover);border-color:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px color-mix(in srgb,var(--primary) 45%,transparent)}.clip-loop-countdown-overlay{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#00000040;backdrop-filter:blur(10px) saturate(110%);-webkit-backdrop-filter:blur(10px) saturate(110%);cursor:pointer;user-select:none;-webkit-user-select:none;animation:countdown-overlay-in .3s ease-out both}.clip-loop-countdown-overlay--inline{position:absolute;inset:0;z-index:9}.clip-loop-countdown-overlay--portal{position:fixed;z-index:9000}@keyframes countdown-overlay-in{0%{opacity:0;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px)}to{opacity:1;backdrop-filter:blur(10px) saturate(110%);-webkit-backdrop-filter:blur(10px) saturate(110%)}}.clip-loop-countdown-number{font-size:96px;line-height:1;font-weight:800;font-variant-numeric:tabular-nums;color:#fffffff2;text-shadow:0 0 60px rgba(255,255,255,.4),0 0 30px rgba(255,255,255,.2),0 4px 12px rgba(0,0,0,.3);animation:countdown-pop .95s cubic-bezier(.16,1,.3,1) both;will-change:transform,opacity}@keyframes countdown-pop{0%{transform:scale(2);opacity:0}15%{transform:scale(1);opacity:1}80%{transform:scale(1);opacity:1}to{transform:scale(.8);opacity:0}}.clip-loop-countdown-hint{position:absolute;bottom:22%;font-size:var(--text-sm);font-weight:600;color:#ffffffb3;text-shadow:0 2px 8px rgba(0,0,0,.4);letter-spacing:.5px;text-transform:uppercase;animation:hint-fade-in .4s .15s ease-out both}@keyframes hint-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px),(pointer:coarse){.segment-editor-header{height:48px;padding:0 8px 0 16px;border-radius:10px 10px 0 0}.segment-editor-header-icon{width:3px;height:18px}.segment-editor-header-text{font-size:var(--text-sm)}.segment-editor-btn{width:40px;height:40px}.segment-editor-btn svg{width:20px;height:20px}.segment-editor-timeline-section{border-radius:0 0 10px 10px}}@media(max-width:600px),(pointer:coarse){.segment-editor-timeline-section .clip-edit-segment-timeline .timeline-container{padding:10px 12px 14px}.segment-editor-timeline-section .clip-edit-segment-timeline .tracks-container{min-height:52px;max-height:52px}.segment-editor-timeline-section .clip-edit-segment-timeline .track{height:52px;min-height:52px}}@media(max-width:600px){.clip-edit-segment-timeline .marker-row{height:20px}.clip-edit-segment-timeline .tracks-container{min-height:52px;max-height:52px}.clip-edit-segment-timeline .track{height:52px;min-height:52px}}@media(max-width:768px){.clip-control-bar{flex-direction:row;align-items:center;gap:12px;padding:14px 16px}.clip-scrub-bar{flex:1;min-width:0;height:6px;background:var(--overlay-subtle)}.clip-scrub-thumb{width:18px;height:18px;right:-9px;opacity:1}.clip-time-display{display:none}.clip-settings-btn,.clip-inline-btn{border-radius:10px;background:var(--highlight-subtle);border-color:var(--highlight-soft)}}@media(max-width:960px)and (max-height:500px)and (orientation:landscape){.clip-control-bar{flex-wrap:nowrap;padding:10px 16px;gap:12px}.clip-scrub-bar{flex:1;min-width:100px;height:6px}.clip-scrub-thumb{width:16px;height:16px;right:-8px}.clip-time-display{display:none}.clip-settings-btn{border-radius:8px}}.two-column-media-layout{height:100%;width:100%;overflow:hidden;background:var(--bg-primary)}.two-column-media-container{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden}.two-column-media-body{flex:1;display:flex;overflow:hidden;height:100%}.two-column-media-section{flex:1;display:flex;flex-direction:column;min-width:0;position:relative;overflow:hidden}.two-column-media-content{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden}.two-column-notes-section{width:380px;min-width:280px;max-width:800px;background:var(--bg-secondary);border-left:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;transform:translateZ(0);position:relative;overflow:hidden}.two-column-resize-handle{position:absolute;left:0;top:0;bottom:0;width:8px;cursor:col-resize;z-index:10;transition:background var(--transition-fast)}.two-column-resize-handle:hover,.two-column-resize-handle.dragging{background:var(--primary-subtle)}.two-column-resize-handle:after{content:"";position:absolute;left:3px;top:50%;transform:translateY(-50%);width:2px;height:32px;background:var(--border);border-radius:1px;opacity:0;transition:opacity var(--transition-fast)}.two-column-resize-handle:hover:after,.two-column-resize-handle.dragging:after{opacity:1;background:var(--primary)}@media(max-width:768px){.two-column-media-body{flex-direction:column}.two-column-media-section{flex:1;min-height:35vh;max-height:50vh;padding:6px;transition:all var(--transition-slow)}.two-column-notes-section{width:100%;min-width:unset;max-width:unset;border-left:none;border-top:1px solid var(--border);flex:1;min-height:120px;max-height:none;display:flex;flex-direction:column;transition:flex var(--transition-slow)}.two-column-media-body.notes-expanded .two-column-media-section{flex:0 0 20vh;min-height:20vh;max-height:20vh}.two-column-media-body.notes-expanded .two-column-notes-section{flex:1}.two-column-media-body.notes-fullscreen .two-column-media-section{display:none}.two-column-media-body.notes-fullscreen .two-column-notes-section{flex:1;border-top:none}.two-column-resize-handle{display:none}}@media(max-width:480px){.two-column-media-section{min-height:30vh}}.timeline-interaction-wrapper{--drag-hint-purple: 139, 92, 246}.timeline-interaction-wrapper{position:absolute;inset:0;pointer-events:none;z-index:5}.timeline-interaction-overlay{position:absolute;inset:0;pointer-events:auto;cursor:crosshair}.interaction-drag-preview{position:absolute;top:0;bottom:0;background:rgba(var(--drag-hint-purple),.25);border:2px dashed rgba(var(--drag-hint-purple),.7);border-radius:6px;pointer-events:none;z-index:2;transition:none}@media(max-width:960px){.timeline-interaction-overlay{touch-action:none;-webkit-tap-highlight-color:transparent}.interaction-drag-preview{background:rgba(var(--drag-hint-purple),.35);border:2px dashed rgba(var(--drag-hint-purple),.8)}}.track-drag-hint{position:absolute;inset:0;pointer-events:none;z-index:1;display:flex;align-items:center;justify-content:center;animation:trackHintFadeIn .4s ease-out}@keyframes trackHintFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.track-drag-hint-glow{position:absolute;inset:2px;border-radius:8px;background:linear-gradient(90deg,rgba(var(--drag-hint-purple),.15),rgba(var(--drag-hint-purple),.35),rgba(var(--drag-hint-purple),.15));border:2px solid rgba(var(--drag-hint-purple),.5);box-shadow:inset 0 0 20px rgba(var(--drag-hint-purple),.2),0 0 20px rgba(var(--drag-hint-purple),.15);animation:trackHintPulse 1.5s ease-in-out infinite}.track-drag-hint-arrows{position:relative;display:flex;align-items:center;gap:16px;z-index:2}.track-drag-hint-arrow{font-size:24px;color:var(--overlay-heavy);text-shadow:0 0 12px rgba(var(--drag-hint-purple),.8),0 0 24px rgba(var(--drag-hint-purple),.5);filter:drop-shadow(0 2px 4px var(--shadow-medium))}.track-drag-hint-arrow.left{animation:trackHintArrowLeft 1.2s ease-in-out infinite}.track-drag-hint-arrow.right{animation:trackHintArrowRight 1.2s ease-in-out infinite}.track-drag-hint-text{font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--overlay-heavy);text-shadow:0 0 10px rgba(var(--drag-hint-purple),.8),0 2px 4px var(--shadow-heavy);animation:trackHintTextPulse 1.5s ease-in-out infinite}@keyframes trackHintPulse{0%,to{opacity:.7;border-color:rgba(var(--drag-hint-purple),.4)}50%{opacity:1;border-color:rgba(var(--drag-hint-purple),.7)}}@keyframes trackHintArrowLeft{0%,to{transform:translate(0);opacity:.8}50%{transform:translate(-10px);opacity:1}}@keyframes trackHintArrowRight{0%,to{transform:translate(0);opacity:.8}50%{transform:translate(10px);opacity:1}}@keyframes trackHintTextPulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}@media(max-width:960px){.track-drag-hint-arrow{font-size:20px}.track-drag-hint-text{font-size:var(--text-xs)}}@media(max-width:600px){.track-drag-hint-arrow{font-size:18px}.track-drag-hint-text{font-size:var(--text-xs)}}@media(max-height:520px){.track-drag-hint-arrow{font-size:16px}.track-drag-hint-text{font-size:var(--text-xs)}}@media(max-height:640px)and (orientation:landscape){.track-drag-hint-arrow{font-size:16px}.track-drag-hint-text{font-size:var(--text-xs)}}@media(prefers-reduced-motion:reduce){.track-drag-hint,.track-drag-hint-glow,.track-drag-hint-arrow,.track-drag-hint-text{animation:none!important}}.custom-markup-frame{height:100%;width:100%;overflow:hidden}.custom-markup-media-container{width:100%;height:100%;display:grid;grid-template-rows:1fr auto;gap:0;overflow:hidden;background:var(--letterbox-color, #000);border-radius:8px;border:1px solid var(--border)}.custom-markup-video-section{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--letterbox-color, #000)}.custom-markup-video-placeholder{font-size:64px;color:var(--highlight-faint)}.custom-markup-timeline-section{width:100%;flex-shrink:0;background:var(--bg-secondary);border-top:1px solid var(--border)}.custom-markup-notes-header{padding:12px 16px;border-bottom:1px solid var(--border);flex-shrink:0;display:flex;align-items:center;justify-content:space-between;background:var(--bg-secondary)}.custom-markup-notes-title{font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.custom-markup-notes-body{flex:1;padding:16px;overflow-y:auto;will-change:scroll-position;-webkit-overflow-scrolling:touch}.custom-markup-notes-body::-webkit-scrollbar{width:6px}.custom-markup-notes-body::-webkit-scrollbar-track{background:transparent}.custom-markup-notes-body::-webkit-scrollbar-thumb{background:var(--highlight-faint);border-radius:3px}.custom-markup-notes-body::-webkit-scrollbar-thumb:hover{background:var(--highlight-subtle)}.custom-markup-note{font-size:var(--text-sm);line-height:1.7;color:var(--text-secondary);letter-spacing:-.01em;margin-bottom:12px}.custom-markup-note:last-child{margin-bottom:0}.custom-markup-notes-empty{font-size:var(--text-sm);color:var(--text-tertiary);font-style:italic;text-align:center;padding:8px}@media(max-width:768px){.custom-markup-media-container{border-radius:6px}.custom-markup-notes-header{padding:10px 12px}.custom-markup-notes-title{font-size:var(--text-xs)}.custom-markup-notes-body{padding:12px}.custom-markup-note{font-size:var(--text-sm);line-height:1.6}}.range-marker{position:absolute;top:70%;height:25%;background:color-mix(in srgb,var(--marker-color) 25%,transparent);border-radius:3px;cursor:pointer;transition:all var(--transition-fast);pointer-events:auto;z-index:3;border-top:1px solid color-mix(in srgb,var(--marker-color) 40%,transparent);border-bottom:1px solid color-mix(in srgb,var(--marker-color) 40%,transparent);contain:layout style;will-change:transform}.range-marker:hover{background:color-mix(in srgb,var(--marker-color) 35%,transparent);border-top-color:color-mix(in srgb,var(--marker-color) 60%,transparent);border-bottom-color:color-mix(in srgb,var(--marker-color) 60%,transparent);transform:scaleY(1.1)}.range-marker.active{background:color-mix(in srgb,var(--marker-color) 45%,transparent);border-top:2px solid var(--marker-color);border-bottom:2px solid var(--marker-color);z-index:4}.range-marker-edge{position:absolute;top:-2px;bottom:-2px;width:2px;background:var(--marker-color);border-radius:1px;transition:all var(--transition-fast)}.range-marker-edge-left{left:0}.range-marker-edge-right{right:0}.range-marker:hover .range-marker-edge{width:3px;box-shadow:0 0 4px color-mix(in srgb,var(--marker-color) 50%,transparent)}.range-marker.active .range-marker-edge{width:3px;background:var(--primary-light);box-shadow:0 0 6px var(--primary)}.annotation-form{width:380px;padding:16px;display:flex;flex-direction:column;gap:12px}.annotation-form-header{display:flex;flex-direction:column;gap:4px;padding-bottom:12px;border-bottom:1px solid var(--border)}.annotation-form-title{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);letter-spacing:-.01em}.annotation-form-timestamp{font-size:var(--text-sm);font-weight:500;color:var(--text-tertiary);font-variant-numeric:tabular-nums;font-family:SF Mono,Consolas,monospace}.annotation-form-body{display:flex;flex-direction:column;gap:6px}.annotation-form-textarea{width:100%;min-height:100px;padding:10px 12px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-size:var(--text-sm);line-height:1.5;font-family:inherit;resize:vertical;transition:border-color var(--transition-fast)}.annotation-form-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-subtle)}.annotation-form-textarea::placeholder{color:var(--text-tertiary)}.annotation-form-error{font-size:var(--text-xs);color:var(--danger, #ef4444);padding:4px 8px;background:var(--danger-subtle);border-radius:4px}.annotation-form-actions{display:flex;gap:8px;justify-content:flex-end}.annotation-form-btn{padding:8px 16px;border-radius:6px;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast);border:1px solid var(--border)}.annotation-form-btn.cancel{background:transparent;color:var(--text-secondary)}.annotation-form-btn.cancel:hover{background:var(--bg-tertiary);color:var(--text-primary)}.annotation-form-btn.save{background:var(--primary);color:#fff;border-color:var(--primary)}.annotation-form-btn.save:hover{background:var(--primary-glow);transform:translateY(-1px);box-shadow:0 2px 4px var(--shadow-subtle)}.annotation-form-btn.save:active{transform:translateY(0)}.annotation-form-hint{font-size:var(--text-xs);color:var(--text-tertiary);text-align:center;padding-top:4px}.annotation-form-hint kbd{display:inline-block;padding:2px 6px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:3px;font-size:var(--text-xs);font-family:inherit;font-weight:600}@media(max-width:480px){.annotation-form{width:320px}}.annotation-view{height:100%;width:100%;overflow:hidden;position:relative}.annotation-view-loading,.annotation-view-error{display:flex;align-items:center;justify-content:center;height:100%;width:100%;background:var(--bg-primary)}.annotation-view-error{color:var(--text-secondary);font-size:var(--text-sm)}.annotation-view-no-video{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--text-tertiary);font-size:16px}.custom-breakdown-view{height:100%;width:100%;overflow:hidden;position:relative}.custom-breakdown-view-loading,.custom-breakdown-view-error{display:flex;align-items:center;justify-content:center;height:100%;width:100%;background:var(--bg-primary)}.custom-breakdown-view-error{color:var(--text-secondary);font-size:var(--text-sm)}.custom-breakdown-view-no-video{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--text-tertiary);font-size:16px}.segment-form{padding:20px;background:var(--bg-secondary);border-radius:8px;min-width:300px}.segment-form h3{margin:0 0 12px;font-size:16px;color:var(--text-primary)}.segment-form p{margin:0;font-size:var(--text-sm);color:var(--text-secondary)}.segment-form button{padding:8px 16px;border-radius:4px;border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;font-size:var(--text-sm)}.segment-form button:hover{background:var(--bg-hover)}.upload-modal-overlay{position:fixed;inset:0;background:var(--overlay-dark);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:overlayFadeIn .15s ease-out}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.upload-modal{background:var(--bg-secondary);border:1px solid var(--highlight-faint);border-radius:12px;width:100%;max-width:480px;box-shadow:0 24px 48px var(--shadow-heavy);animation:modalSlideIn .2s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.upload-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--highlight-ghost)}.upload-modal-title{font-size:18px;font-weight:600;color:var(--text-primary);margin:0}.upload-modal-close{width:48px;height:48px;border:none;background:transparent;color:var(--overlay-medium);font-size:24px;cursor:pointer;border-radius:10px;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.upload-modal-close:hover:not(:disabled){background:var(--highlight-faint);color:var(--text-primary)}.upload-modal-close:disabled{opacity:.3;cursor:not-allowed}.upload-modal-body{padding:24px}.upload-drop-zone{border:2px dashed var(--highlight-subtle);border-radius:10px;padding:40px 24px;cursor:pointer;transition:all var(--transition-normal);background:var(--highlight-ghost);min-height:180px;display:flex;align-items:center;justify-content:center}.upload-drop-zone:hover{border-color:var(--primary-glow);background:var(--primary-subtle)}.upload-drop-zone.dragging{border-color:var(--primary);background:var(--primary-subtle);border-style:solid}.upload-drop-zone.has-file{border-color:var(--success-glow);background:var(--success-subtle);cursor:default}.upload-drop-zone.uploading{border-color:var(--primary-glow);cursor:default}.upload-file-input{display:none}.upload-drop-content{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.upload-drop-icon{color:var(--overlay-subtle);margin-bottom:16px;display:flex;align-items:center;justify-content:center}.upload-drop-zone:hover .upload-drop-icon,.upload-drop-zone.dragging .upload-drop-icon{color:var(--primary)}.upload-drop-text{color:var(--text-primary);font-size:var(--text-base);font-weight:500;margin:0 0 6px}.upload-drop-subtext{color:var(--overlay-medium);font-size:var(--text-sm);margin:0}.upload-file-preview{display:flex;align-items:center;gap:16px;width:100%}.upload-file-icon{color:var(--primary);flex-shrink:0}.upload-file-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.upload-file-name{color:var(--text-primary);font-size:var(--text-sm);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upload-file-size{color:var(--overlay-medium);font-size:var(--text-xs)}.upload-file-remove{width:48px;height:48px;border:none;background:var(--highlight-faint);color:var(--overlay-medium);font-size:22px;cursor:pointer;border-radius:10px;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);flex-shrink:0}.upload-file-remove:hover{background:var(--danger-subtle);color:var(--danger)}.upload-error{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--danger-subtle);border:1px solid var(--danger-subtle);border-radius:8px;margin-top:16px}.upload-error-icon{width:20px;height:20px;background:var(--danger);color:var(--text-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:700;flex-shrink:0}.upload-error-text{color:var(--danger-muted);font-size:var(--text-sm)}.upload-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--highlight-ghost)}.upload-btn{min-height:48px;padding:12px 24px;border-radius:10px;font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast);border:none}.upload-btn:disabled{opacity:.5;cursor:not-allowed}.upload-btn-secondary{background:var(--highlight-faint);color:var(--text-primary)}.upload-btn-secondary:hover:not(:disabled){background:var(--highlight-subtle)}.upload-btn-primary{background:var(--primary);color:var(--text-primary)}.upload-btn-primary:hover:not(:disabled){background:var(--primary-dark)}.upload-name-section{margin-top:20px;animation:nameSlideIn .25s ease-out}@keyframes nameSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.upload-name-label{display:block;font-size:var(--text-sm);font-weight:600;color:var(--overlay-heavy);margin-bottom:8px}.upload-name-input{width:100%;padding:12px 14px;font-size:var(--text-base);background:var(--highlight-ghost);border:1px solid var(--highlight-subtle);border-radius:8px;color:var(--text-primary);outline:none;transition:all var(--transition-fast)}.upload-name-input::placeholder{color:var(--overlay-subtle)}.upload-name-input:focus{border-color:var(--primary-glow);background:var(--primary-subtle);box-shadow:0 0 0 3px var(--primary-subtle)}.upload-name-hint{margin:8px 0 0;font-size:var(--text-xs);color:var(--overlay-subtle)}.upload-progress-section{margin-top:20px;padding:20px;background:var(--primary-subtle);border:1px solid var(--primary-glow);border-radius:10px;animation:progressFadeIn .2s ease-out}@keyframes progressFadeIn{0%{opacity:0}to{opacity:1}}.upload-progress-bar{height:6px;background:var(--highlight-faint);border-radius:3px;overflow:hidden;margin-bottom:12px}.upload-progress-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--primary-light));border-radius:3px;transition:width var(--transition-normal)}.upload-progress-text{color:var(--overlay-medium);font-size:var(--text-sm);margin:0;text-align:center}.upload-complete-section{margin-top:20px;padding:24px;background:var(--success-subtle);border:1px solid var(--success-glow);border-radius:10px;text-align:center;animation:completeFadeIn .2s ease-out}@keyframes completeFadeIn{0%{opacity:0}to{opacity:1}}.upload-complete-section .upload-complete-icon{width:48px;height:48px;background:var(--success-subtle);color:var(--success);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;margin:0 auto 12px;animation:completeScale .3s ease}@keyframes completeScale{0%{transform:scale(0)}50%{transform:scale(1.1)}to{transform:scale(1)}}.upload-complete-section .upload-complete-text{color:var(--success);font-size:var(--text-sm);font-weight:500;margin:0}.source-video-editor{position:absolute;inset:0;display:flex;flex-direction:column;background:var(--bg-primary);overflow:hidden;z-index:10}.source-video-editor-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--bg-secondary);border-bottom:1px solid var(--border);flex-shrink:0}.source-video-editor-title{display:flex;flex-direction:column;gap:2px}.source-video-editor-title h2{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.source-video-editor-subtitle{font-size:var(--text-xs);color:var(--text-tertiary)}.source-video-editor-close-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:var(--highlight-ghost);border-radius:6px;color:var(--text-secondary);font-size:20px;cursor:pointer;transition:all var(--transition-fast)}.source-video-editor-close-btn:hover{background:var(--highlight-faint);color:var(--text-primary)}.source-video-editor-body{flex:1;display:grid;grid-template-rows:1fr auto;gap:0;overflow:hidden;min-height:0}.source-video-editor-video-container{position:relative;width:100%;height:100%;background:var(--letterbox-color, #000);display:flex;align-items:center;justify-content:center;overflow:hidden}.source-video-editor-video{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.source-video-editor-video-slot{width:100%;height:100%;display:flex;align-items:center;justify-content:center;cursor:pointer}.source-video-editor-video-slot video{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;margin:auto;display:block}.source-video-editor-play-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:var(--shadow-medium);cursor:pointer;transition:background var(--transition-fast)}.source-video-editor-play-overlay:hover{background:var(--shadow-heavy)}.source-video-editor-play-btn{width:72px;height:72px;display:flex;align-items:center;justify-content:center;background:var(--primary);border-radius:50%;font-size:28px;color:#fff;padding-left:4px;box-shadow:0 4px 20px var(--shadow-medium);transition:transform var(--transition-fast),background var(--transition-fast)}.source-video-editor-play-overlay:hover .source-video-editor-play-btn{transform:scale(1.05);background:var(--primary)}.source-video-editor-timeline{width:100%;padding:12px 16px;background:var(--bg-secondary);border-top:1px solid var(--border);flex-shrink:0}.source-video-editor-action-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-secondary);border-top:1px solid var(--border);flex-shrink:0}.source-video-editor-controls{display:flex;align-items:center;gap:8px}.source-video-editor-control-btn{display:flex;align-items:center;justify-content:center;gap:4px;padding:0 12px;height:34px;border-radius:6px;font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast);border:1px solid var(--highlight-faint);background:var(--highlight-ghost);color:var(--text-secondary);white-space:nowrap}.source-video-editor-control-btn:hover:not(:disabled){background:var(--highlight-faint);border-color:var(--highlight-subtle);color:var(--text-primary)}.source-video-editor-control-btn:disabled{opacity:.4;cursor:not-allowed}.source-video-editor-add-btn{color:var(--text-primary);background:var(--primary-subtle);border-color:var(--primary-glow)}.source-video-editor-add-btn:hover:not(:disabled){background:var(--primary-glow);border-color:var(--primary-border)}.source-video-editor-divider{width:1px;height:20px;background:var(--highlight-faint);margin:0 4px}.source-video-editor-selection-info{display:flex;align-items:center;gap:6px;padding:0 12px;font-size:var(--text-sm)}.source-video-editor-selection-label{color:var(--text-tertiary)}.source-video-editor-selection-title{color:var(--text-primary);font-weight:500}.source-video-editor-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.source-video-editor-btn{display:flex;align-items:center;justify-content:center;padding:0 20px;height:36px;border-radius:8px;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast);border:none;white-space:nowrap}.source-video-editor-btn-secondary{background:var(--highlight-ghost);color:var(--text-secondary);border:1px solid var(--highlight-faint)}.source-video-editor-btn-secondary:hover{background:var(--highlight-faint);color:var(--text-primary)}.source-video-editor-btn-primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;box-shadow:0 2px 8px var(--primary-glow)}.source-video-editor-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px var(--primary-border)}.source-video-editor-btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.source-video-editor-rename-overlay{position:absolute;inset:0;background:var(--overlay-dark);display:flex;align-items:center;justify-content:center;z-index:100}.source-video-editor-rename-dialog{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:20px;min-width:300px;max-width:480px;box-shadow:0 8px 32px var(--shadow-heavy)}.source-video-editor-rename-dialog label{display:block;font-size:var(--text-sm);font-weight:600;color:var(--text-primary);margin-bottom:12px}.source-video-editor-rename-dialog input{width:100%;padding:10px 12px;font-size:var(--text-sm);background:var(--bg-primary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);outline:none;transition:border-color var(--transition-fast)}.source-video-editor-rename-dialog input:focus{border-color:var(--primary-border)}.source-video-editor-rename-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.source-video-editor-rename-actions button{padding:8px 16px;font-size:var(--text-sm);font-weight:500;border-radius:6px;cursor:pointer;transition:all var(--transition-fast);border:1px solid var(--border);background:var(--highlight-ghost);color:var(--text-secondary)}.source-video-editor-rename-actions button:hover{background:var(--highlight-faint);color:var(--text-primary)}.source-video-editor-rename-actions button.primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);border:none;color:#fff}.source-video-editor-rename-actions button.primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px var(--primary-glow)}@media(max-width:960px){.source-video-editor-header{padding:12px 16px}.source-video-editor-title h2{font-size:var(--text-base)}.source-video-editor-subtitle{font-size:var(--text-xs)}.source-video-editor-timeline{padding:10px 12px}.source-video-editor-action-bar{padding:10px 12px;gap:8px}.source-video-editor-control-btn{padding:0 10px;height:32px;font-size:var(--text-xs)}.source-video-editor-btn{padding:0 16px;height:34px;font-size:var(--text-sm)}}@media(max-width:600px){.source-video-editor-header{padding:10px 12px}.source-video-editor-title h2{font-size:var(--text-sm)}.source-video-editor-action-bar{flex-wrap:wrap;padding:8px 10px;gap:6px}.source-video-editor-controls{flex-wrap:wrap;gap:5px}.source-video-editor-control-btn{padding:0 8px;height:30px;font-size:var(--text-xs)}.source-video-editor-selection-info{display:none}.source-video-editor-btn{padding:0 12px;height:32px;font-size:var(--text-xs)}.source-video-editor-play-btn{width:56px;height:56px;font-size:22px}}@media(max-height:640px)and (orientation:landscape){.source-video-editor-header{padding:6px 12px}.source-video-editor-title h2{font-size:var(--text-sm)}.source-video-editor-subtitle{display:none}.source-video-editor-timeline,.source-video-editor-action-bar{padding:6px 10px}.source-video-editor-control-btn{height:28px;font-size:var(--text-xs)}.source-video-editor-btn{height:30px;font-size:var(--text-xs)}.source-video-editor-play-btn{width:48px;height:48px;font-size:20px}}@media(max-height:520px){.source-video-editor-header{padding:4px 10px}.source-video-editor-title h2{font-size:var(--text-xs)}.source-video-editor-timeline,.source-video-editor-action-bar{padding:4px 8px}}@keyframes notFoundFadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes iconEntrance{0%{opacity:0;transform:scale(.8)}60%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes iconBreath{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}@keyframes iconWiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}.not-found-view{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2.5rem 1.5rem;text-align:center;animation:notFoundFadeUp .4s ease-out}.not-found-icon-container{width:80px;height:80px;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;background:linear-gradient(145deg,#8b5cf61f,#f973161f);border:1px solid rgba(139,92,246,.15);border-radius:1.25rem;animation:iconEntrance .5s cubic-bezier(.34,1.56,.64,1) .1s both,iconBreath 4s ease-in-out .6s infinite}.not-found-icon-container:hover{animation:iconWiggle .5s ease-in-out}.not-found-icon-container svg{width:38px;height:38px}.not-found-title{margin:0 0 .5rem;font-size:1.5rem;font-weight:700;color:var(--text-primary);line-height:1.25;letter-spacing:-.02em;animation:notFoundFadeUp .4s ease-out .15s both}.not-found-message{margin:0 0 2rem;font-size:.9375rem;color:var(--text-secondary);line-height:1.55;max-width:300px;animation:notFoundFadeUp .4s ease-out .2s both}.not-found-primary-action{animation:notFoundFadeUp .4s ease-out .25s both}.not-found-btn-primary{display:inline-flex;align-items:center;justify-content:center;padding:.875rem 2rem;border-radius:.75rem;font-size:.9375rem;font-weight:600;text-decoration:none;cursor:pointer;border:none;background:linear-gradient(135deg,var(--primary-alt),var(--primary));color:#fff;box-shadow:0 4px 16px var(--primary-glow),0 0 0 0 transparent;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease}.not-found-btn-primary:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 24px var(--primary-glow),0 0 0 3px rgba(var(--primary-rgb),.1)}.not-found-btn-primary:active{transform:translateY(0) scale(.98);box-shadow:0 2px 8px var(--primary-glow)}.not-found-secondary-actions{display:flex;align-items:center;gap:.375rem;margin-top:1.25rem;animation:notFoundFadeUp .4s ease-out .3s both}.not-found-link{padding:.5rem .75rem;color:var(--text-tertiary);font-size:.8125rem;font-weight:500;text-decoration:none;background:none;border:none;border-radius:.5rem;cursor:pointer;transition:color .15s ease,background .15s ease}.not-found-link:hover{color:var(--text-primary);background:var(--highlight-ghost)}.not-found-separator{color:var(--text-tertiary);opacity:.4;font-size:.75rem;-webkit-user-select:none;user-select:none}.sidebar-layout-content .not-found-view{flex:1}@media(min-width:480px){.not-found-title{font-size:1.625rem}.not-found-message{max-width:340px}}@media(prefers-reduced-motion:reduce){.not-found-view,.not-found-icon-container,.not-found-title,.not-found-message,.not-found-primary-action,.not-found-secondary-actions,.not-found-icon-container:hover{animation:none}}.layout-density-control{display:flex;align-items:center;background:var(--density-control-bg, var(--shadow-subtle));border-radius:8px;padding:3px;gap:2px}.layout-density-control .density-option{display:flex;align-items:center;justify-content:center;width:34px;height:32px;background:transparent;border:none;border-radius:6px;color:var(--density-control-color, var(--text-tertiary));cursor:pointer;transition:all var(--transition-fast)}.layout-density-control .density-option:hover:not(.active){background:var(--density-control-hover-bg, var(--highlight-ghost));color:var(--density-control-hover-color, var(--text-secondary))}.layout-density-control .density-option.active{background:var(--density-control-active-bg, var(--highlight-subtle));color:var(--density-control-active-color, var(--text-primary));box-shadow:0 1px 2px var(--density-control-active-shadow, var(--shadow-subtle))}.layout-density-control .density-option.active:hover{background:var(--density-control-active-hover-bg, var(--density-control-active-bg, var(--highlight-subtle)))}.layout-density-control .density-option svg{width:18px;height:14px;opacity:.85}.layout-density-control .density-option.active svg{opacity:1}@media(max-width:960px){.layout-density-control .density-option{width:30px;height:28px}.layout-density-control .density-option svg{width:16px;height:12px}}.options-menu{position:relative;z-index:100}.options-trigger{position:relative;display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:8px;background:transparent;color:var(--text-tertiary);cursor:pointer;transition:background-color .15s ease,color .15s ease,transform .1s ease}.options-trigger:hover{background:var(--surface-hover, rgba(255, 255, 255, .06));color:var(--text-secondary)}.options-trigger:active{transform:scale(.92)}.options-trigger.is-open{background:var(--surface-hover, rgba(255, 255, 255, .08));color:var(--text-primary)}.options-trigger-indicator{position:absolute;top:6px;right:6px;width:6px;height:6px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 2px var(--surface, #111827)}.options-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 4px 12px #00000014,0 8px 24px #0000001f;animation:optionsDropdownIn .15s cubic-bezier(.2,0,.13,1.2);transform-origin:top right}@keyframes optionsDropdownIn{0%{opacity:0;transform:scale(.9) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}.options-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:none;border-radius:8px;background:transparent;color:var(--text-primary);font-size:var(--text-sm);font-weight:500;font-family:inherit;text-align:left;cursor:pointer;transition:background-color .1s ease}.options-item:hover{background:var(--surface-hover, rgba(255, 255, 255, .04))}.options-item:active{background:var(--bg-tertiary, rgba(255, 255, 255, .08))}.options-item:disabled{opacity:.4;cursor:not-allowed}.options-item:disabled:hover{background:transparent}.options-item-icon{flex-shrink:0;color:var(--text-tertiary);transition:color .15s ease}.options-item.is-active .options-item-icon{color:var(--primary)}.options-item-label{flex:1;display:flex;align-items:center;gap:8px}.options-item-count{font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary);opacity:.8}.options-item.is-active .options-item-count{color:var(--primary);opacity:1}.options-toggle{flex-shrink:0;width:44px;height:24px;border-radius:12px;background:var(--bg-tertiary, rgba(120, 120, 128, .2));border:1px solid var(--border, rgba(120, 120, 128, .3));position:relative;transition:background-color .2s ease,border-color .2s ease;cursor:pointer}.options-toggle:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003,0 1px 2px #0000001f;transition:transform .2s cubic-bezier(.4,0,.2,1),box-shadow .2s ease}.options-toggle.is-on{background:var(--primary);border-color:var(--primary)}.options-toggle.is-on:after{transform:translate(20px);background:#fff;box-shadow:0 1px 3px #00000026,0 1px 2px #0000001a}.options-divider{height:1px;margin:4px 8px;background:var(--border)}.options-item+.options-item{margin-top:2px}.share-control{position:relative}.share-control__trigger{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast);position:relative}.share-control__trigger:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-hover);color:var(--text-primary);box-shadow:0 2px 8px var(--shadow-subtle)}.share-control__trigger:disabled{opacity:.6;cursor:wait}.share-control__trigger--open{background:var(--surface-hover);border-color:var(--border-hover);color:var(--text-primary)}.share-control__trigger--active{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 30%,var(--border))}.share-control__trigger--active:hover:not(:disabled){color:var(--primary);border-color:var(--primary);background:var(--primary-subtle)}.share-control__icon{flex-shrink:0}.share-control__label{white-space:nowrap}.share-control--toolbar{display:flex;align-items:center;margin-left:8px}.share-control__trigger--toolbar{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:transparent;border:none;border-radius:10px;color:var(--text-secondary)}.share-control__trigger--toolbar:hover:not(:disabled){background:var(--interactive-hover-bg);color:var(--text-primary);border:none;box-shadow:none}.share-control__trigger--toolbar:disabled{opacity:.4}.share-control__trigger--toolbar.share-control__trigger--open{background:var(--interactive-hover-bg);color:var(--text-primary)}.share-control__trigger--toolbar.share-control__trigger--active{color:var(--primary);border:none}.share-control__trigger--toolbar.share-control__trigger--active:hover:not(:disabled){background:color-mix(in srgb,var(--primary) 15%,transparent);color:var(--primary)}.share-control__popover--toolbar{top:calc(100% + 12px);right:0}.share-control__popover{position:absolute;top:calc(100% + 8px);right:0;width:320px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 4px 20px var(--shadow-medium),0 0 0 1px var(--shadow-ghost);z-index:100;overflow:hidden;animation:sharePopoverIn .15s ease-out;padding-bottom:var(--safe-area-bottom)}@keyframes sharePopoverIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.share-control__section{padding:12px 14px}.share-control__section+.share-control__section{border-top:1px solid var(--border)}.share-control__section-header{margin-bottom:10px}.share-control__section-title{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary)}.share-control__visibility-options{display:flex;flex-direction:column;gap:2px}.share-control__visibility-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:transparent;border:none;border-radius:8px;text-align:left;cursor:pointer;transition:all var(--transition-fast)}.share-control__visibility-option:hover:not(:disabled){background:var(--interactive-hover-bg, var(--surface-hover))}.share-control__visibility-option:disabled{opacity:.5;cursor:wait}.share-control__visibility-option--selected{background:var(--primary-subtle)}.share-control__visibility-option--selected:hover:not(:disabled){background:var(--primary-subtle)}.share-control__visibility-icon{flex-shrink:0;color:var(--text-tertiary)}.share-control__visibility-option--selected .share-control__visibility-icon{color:var(--primary)}.share-control__visibility-content{flex:1;min-width:0}.share-control__visibility-label{display:block;font-size:var(--text-sm);font-weight:500;color:var(--text-primary)}.share-control__visibility-desc{display:block;font-size:var(--text-xs);color:var(--text-tertiary);margin-top:1px}.share-control__visibility-check{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:var(--primary);border-radius:50%;color:#fff;flex-shrink:0}.share-control__section--link{background:var(--bg-primary)}.share-control__link-row{display:flex;flex-direction:column;gap:10px}.share-control__link-preview{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:8px}.share-control__link-icon{color:var(--text-tertiary);flex-shrink:0}.share-control__link-text{font-size:var(--text-xs);font-family:var(--font-mono, monospace);color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-control__link-actions{display:flex;gap:8px}.share-control__copy-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:9px 16px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.share-control__copy-btn:hover{background:var(--surface-hover);border-color:var(--border-hover)}.share-control__copy-btn--copied{background:var(--success);border-color:var(--success);color:#fff}.share-control__copy-btn--copied:hover{background:var(--success);border-color:var(--success)}.share-control__revoke-btn{display:flex;align-items:center;justify-content:center;width:38px;padding:0;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast)}.share-control__revoke-btn:hover:not(:disabled){background:var(--danger-subtle);border-color:var(--danger);color:var(--danger)}.share-control__revoke-btn:disabled{opacity:.4;cursor:wait}.share-control__create-link-btn{display:flex;align-items:center;gap:8px;width:100%;padding:11px 14px;background:var(--surface);border:1px dashed var(--border);border-radius:8px;color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.share-control__create-link-btn:hover:not(:disabled){background:var(--primary-subtle);border-color:var(--primary);border-style:solid;color:var(--primary)}.share-control__create-link-btn:disabled{opacity:.6;cursor:wait}.share-control__create-arrow{margin-left:auto;opacity:.5}.share-control__create-link-btn:hover .share-control__create-arrow{opacity:1}.share-control__section--hint{background:var(--bg-primary);padding:14px}.share-control__hint{margin:0;font-size:var(--text-xs);color:var(--text-tertiary);line-height:1.45}.share-control__hint strong{color:var(--text-secondary);font-weight:500}.share-control--sidebar{width:100%}.share-control__trigger--sidebar{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px 16px;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--text-tertiary);font-size:var(--text-sm);font-weight:500;transition:all var(--transition-fast)}.share-control__trigger--sidebar:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-hover);color:var(--text-secondary)}.share-control__trigger--sidebar:active:not(:disabled){transform:scale(.98)}.share-control__trigger--sidebar .share-control__icon{color:inherit;opacity:.7}.share-control__trigger--sidebar:hover .share-control__icon{opacity:1}.share-control__trigger--sidebar.share-control__trigger--active{color:var(--text-secondary);border-color:color-mix(in srgb,var(--primary) 25%,var(--border))}.share-control__trigger--sidebar.share-control__trigger--active .share-control__icon{color:var(--primary);opacity:.85}.share-control__trigger--sidebar.share-control__trigger--active:hover:not(:disabled){border-color:color-mix(in srgb,var(--primary) 40%,var(--border));background:color-mix(in srgb,var(--primary) 5%,transparent)}.share-control__popover--sidebar{top:auto;bottom:calc(100% + 8px);left:0;right:0;width:auto}@media(max-width:600px){.share-control__popover{position:fixed;inset:auto 0 0;width:auto;border-radius:16px 16px 0 0;max-height:70vh;overflow-y:auto;padding-bottom:var(--safe-area-bottom)}.share-control__section{padding:16px}.share-control__visibility-option,.share-control__link-preview{padding:12px 14px}.share-control__copy-btn{padding:12px 20px}.share-control__revoke-btn{width:44px}.share-control__create-link-btn{padding:14px 16px}}.segment-timing-sheet{display:flex;flex-direction:column;height:100%}.segment-timing-video{width:100%;max-height:50vh;background:#000;border-radius:0}.segment-timing-actions{display:flex;flex-direction:row;gap:10px;padding:16px 16px 12px;background:linear-gradient(180deg,var(--bg-tertiary, rgba(30, 30, 30, .95)) 0%,var(--bg-secondary, rgba(26, 26, 26, .98)) 100%);border-bottom:1px solid var(--border, rgba(255, 255, 255, .08))}.segment-timing-btn{flex:1;height:46px;padding:0 16px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:transform .1s ease,box-shadow .15s ease,background .15s ease}.segment-timing-btn--save{background:linear-gradient(135deg,#8b5cf6,#7c3aed);border:none;color:#fff;box-shadow:0 2px 8px #8b5cf64d}.segment-timing-btn--save:not(:disabled):hover{box-shadow:0 4px 12px #8b5cf666}.segment-timing-btn--save:not(:disabled):active{transform:scale(.98);box-shadow:0 1px 4px #8b5cf633}.segment-timing-btn--save:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.segment-timing-btn--cancel{background:var(--bg-tertiary, rgba(255, 255, 255, .06));border:1px solid var(--border, rgba(255, 255, 255, .12));color:var(--text-secondary, rgba(255, 255, 255, .7))}.segment-timing-btn--cancel:not(:disabled):hover{background:var(--bg-secondary, rgba(255, 255, 255, .1));border-color:var(--border-hover, rgba(255, 255, 255, .2))}.segment-timing-btn--cancel:not(:disabled):active{transform:scale(.98)}.segment-timing-btn--cancel:disabled{opacity:.5;cursor:not-allowed}.segment-timing-timeline{padding:12px 16px 16px}.video-action-row{display:flex;align-items:flex-end;justify-content:center;gap:32px}.video-action-row__action{display:flex;flex-direction:column;align-items:center;gap:1px}.video-action-row__label{font-size:9px;font-weight:600;color:#ffffff80;text-transform:uppercase;letter-spacing:.3px}.video-action-row__btn{border:none;background:transparent;color:#fff;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.9;-webkit-tap-highlight-color:transparent}.video-action-row__btn svg{width:22px;height:22px;stroke:currentColor;pointer-events:none;transition:transform .15s cubic-bezier(.4,0,.2,1)}.video-action-row__btn:hover:not(:disabled){opacity:1}.video-action-row__btn:hover:not(:disabled) svg{transform:scale(1.25)}.video-action-row__btn:active:not(:disabled) svg{transform:scale(.9)}.video-action-row__btn:disabled{opacity:.3;cursor:not-allowed}.vps-scrubber{flex:1;min-width:0;padding:0 5px}.vps-scrubber--with-time{display:flex;align-items:center;gap:10px}.vps-scrubber--with-time .vps-track{flex:1;min-width:0}.vps-time{font-size:var(--text-sm);font-weight:500;font-variant-numeric:tabular-nums;color:#ffffffe6;flex-shrink:0;min-width:36px}.vps-time--left{text-align:right}.vps-time--right{text-align:left;opacity:.7}.vps-track{position:relative;height:4px;background:var(--highlight-subtle);border-radius:2px;cursor:pointer}@media(max-width:768px){.vps-track{height:8px;border-radius:4px}}.vps-ref-block{position:absolute;top:-5px;height:14px;background:#ffffff1a;border-radius:4px;pointer-events:none;z-index:0}@media(max-width:768px){.vps-ref-block{top:-6px;height:20px;border-radius:5px}}.vps-track__fill{position:absolute;left:0;top:0;height:100%;border-radius:2px;transition:none}.vps-track__head{position:absolute;top:50%;transform:translate(-50%,-50%);width:11px;height:11px;background:#fff;border-radius:50%;box-shadow:0 0 8px var(--shadow-medium);transition:transform var(--transition-fast);z-index:5;touch-action:none;cursor:grab}.vps-track__head:after{content:"";position:absolute;inset:-12px}@media(max-width:768px){.vps-track__head{width:20px;height:20px}.vps-track__head:after{inset:-14px}}.vps-track--dragging .vps-track__head{transform:translate(-50%,-50%) scale(1.35);cursor:grabbing;transition:transform var(--transition-fast)}.vps-track--dragging .vps-track__fill{transition:none}.vps-tick{position:absolute;top:50%;transform:translate(-50%,-50%);width:3.75px;height:21px;border-radius:2px;z-index:2;opacity:.7;animation:vps-tick-in .4s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes vps-tick-in{0%{opacity:0;transform:translate(-50%,-200%)}60%{opacity:1;transform:translate(-50%,-40%)}to{opacity:.7;transform:translate(-50%,-50%)}}.vps-tick--interactive{cursor:grab;touch-action:none}.vps-tick--interactive:after{content:"";position:absolute;inset:-12px -10px}@media(max-width:768px){.vps-tick{width:6px;height:30px;border-radius:3px}.vps-tick--interactive:after{inset:-14px -12px}}.vps-ctx-backdrop{position:fixed;inset:0;z-index:99}.vps-ctx-menu{position:fixed;transform:translate(-50%,-120%);z-index:100;background:#1e1e1ef2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:4px;min-width:100px;box-shadow:0 8px 24px #00000080;animation:vps-ctx-in .15s ease}@keyframes vps-ctx-in{0%{opacity:0;transform:translate(-50%,-110%) scale(.95)}to{opacity:1;transform:translate(-50%,-120%) scale(1)}}.vps-ctx-menu__item{display:block;width:100%;padding:8px 14px;background:none;border:none;font-family:inherit;font-size:var(--text-sm);font-weight:500;color:#ffffffd9;text-align:center;cursor:pointer;border-radius:5px;transition:background var(--transition-fast)}.vps-ctx-menu__item:active{background:#ffffff1a}.vps-ctx-menu__item--danger{color:var(--text-on-primary)}.vps-block{position:absolute;top:50%;transform:translateY(-50%);height:14px;border-radius:4px;z-index:1;opacity:0;transition:opacity .4s ease}@media(max-width:768px){.vps-block{height:20px;border-radius:5px}}.vps-block--on{opacity:1}.vps-mline{position:absolute;top:50%;transform:translate(-50%,-50%);width:3.75px;height:27px;border-radius:2px;z-index:3;opacity:0}@media(max-width:768px){.vps-mline{width:6px;height:36px;border-radius:3px}}.vps-mline--on{animation:vps-mline-in .4s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes vps-mline-in{0%{opacity:0;transform:translate(-50%,-200%)}60%{opacity:1;transform:translate(-50%,-40%)}to{opacity:.85;transform:translate(-50%,-50%)}}.vps-handle{position:absolute;top:50%;transform:translate(-50%,-50%);width:44px;height:44px;cursor:grab;z-index:6;touch-action:none;display:flex;align-items:center;justify-content:center}.vps-handle__glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:32px;border-radius:4px;background:color-mix(in srgb,var(--handle-color, #E8833A) 25%,transparent)}.vps-handle__caret{position:absolute;top:50%;font-size:20px;color:var(--handle-color, #E8833A);text-shadow:0 1px 3px var(--shadow-medium);line-height:1}.vps-handle--start .vps-handle__caret{right:calc(50% + 8px)}.vps-handle--end .vps-handle__caret{left:calc(50% + 8px)}.vps-handle--active{cursor:grabbing;z-index:10}.vps-handle--active .vps-handle__glow{background:color-mix(in srgb,var(--handle-color, #E8833A) 40%,transparent)}.vps-handle--active .vps-handle__caret{filter:brightness(1.2)}@media(max-width:768px){.vps-handle{width:48px;height:48px}.vps-handle__glow{width:24px;height:36px}.vps-handle__caret{font-size:22px}.vps-handle--start .vps-handle__caret{right:calc(50% + 10px)}.vps-handle--end .vps-handle__caret{left:calc(50% + 10px)}}.amazing-segment-editor{position:absolute;bottom:0;left:0;right:0;z-index:20;display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 12px 10px;pointer-events:auto;color:#fff}.amazing-segment-editor:before{content:"";position:absolute;bottom:0;left:0;right:0;height:150%;background:linear-gradient(to top,#000000bf,#0000008c,#0000);pointer-events:none;z-index:-1}.amazing-segment-editor .vps-scrubber{width:100%}.step-video-container:has(.amazing-segment-editor) .step-player-overlay,.step-video-container:has(.amazing-segment-editor) .special-video-overlay{display:none!important}.step-video-container:has(.amazing-segment-editor) .step-video-tap-overlay{pointer-events:none}.amazing-segment-editor__actions{margin-top:0;margin-bottom:3px}.amazing-segment-editor--safe-area .amazing-segment-editor__actions{margin-bottom:calc(8px + var(--safe-area-bottom, 0px))}.modal-overlay{position:fixed;inset:0;background:var(--overlay-dark);display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:modalFadeIn .2s ease}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--letterbox-color);border:1px solid var(--highlight-faint);border-radius:.75rem;max-width:90vw;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:modalSlideIn .2s ease;box-shadow:0 10px 40px var(--shadow-heavy)}@keyframes modalSlideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid var(--highlight-ghost)}.modal-title{margin:0;font-size:1.25rem;font-weight:700;color:var(--text-primary)}.modal-close-btn{background:transparent;border:none;color:var(--text-secondary);font-size:2rem;line-height:1;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:.25rem;transition:all var(--transition-fast)}.modal-close-btn:hover{background:var(--highlight-ghost);color:var(--text-primary)}.modal-body{padding:1.5rem;overflow-y:auto;flex:1}.modal-footer{padding:1.5rem;border-top:1px solid var(--highlight-ghost);display:flex;align-items:center;justify-content:flex-end;gap:.75rem}.unpracticed-warning-modal{max-width:400px}.unpracticed-warning-body p{margin:0 0 .75rem;font-size:.95rem;line-height:1.5;color:var(--text-secondary)}.unpracticed-warning-body p:last-child{margin-bottom:0}.unpracticed-warning-body strong{color:var(--text-primary);font-weight:600}.unpracticed-warning-nudge{font-style:italic;opacity:.85}.unpracticed-warning-footer{display:flex;gap:8px;justify-content:flex-end}.unpracticed-warning-footer .btn--primary{display:inline-flex;align-items:center;gap:6px}.practice-session-selector-content{min-height:120px}.practice-session-loading{display:flex;align-items:center;justify-content:center;padding:32px 0}.practice-session-error{padding:16px;color:var(--danger);font-size:var(--text-sm);text-align:center}.nav-subitem.breakdown-sidebar-related{padding-left:12px}.nav-subitem.breakdown-sidebar-related .nav-subitem-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;font-size:var(--text-xs);background:transparent;border:none;flex-shrink:0}.nav-subitem.breakdown-sidebar-related.breakdown-sidebar-recap .nav-subitem-icon{color:var(--icon-recap, #4BC4BB)}.nav-subitem.breakdown-sidebar-related.breakdown-sidebar-tips .nav-subitem-icon{color:var(--icon-tips, #E5A158)}.nav-subitem.breakdown-sidebar-leading.breakdown-sidebar-recap .nav-subitem-icon{color:var(--icon-recap, #4BC4BB)}.nav-subitem.breakdown-sidebar-leading.breakdown-sidebar-tips .nav-subitem-icon{color:var(--icon-tips, #E5A158)}.nav-subitem.breakdown-sidebar-textonly{padding-left:46px;min-height:42px;display:flex;align-items:center;gap:10px}.nav-subitem.breakdown-sidebar-textonly .nav-subitem-text{font-size:var(--text-sm);font-weight:500;color:var(--text-muted);display:flex;align-items:center;gap:10px;transition:color var(--transition-fast)}.nav-subitem.breakdown-sidebar-textonly:hover .nav-subitem-text{color:var(--primary)}.nav-subitem.breakdown-sidebar-textonly.active .nav-subitem-text{color:var(--text-primary, #f4f4f5);font-weight:550}.nav-subitem.breakdown-sidebar-textonly .nav-subitem-text:before{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;font-size:var(--text-sm);transition:all var(--transition-normal)}.nav-subitem.breakdown-sidebar-textonly.breakdown-sidebar-recap .nav-subitem-text:before{content:"↺";color:var(--icon-recap, #4BC4BB);font-size:19px;font-weight:700}.nav-subitem.breakdown-sidebar-textonly.breakdown-sidebar-tips .nav-subitem-text:before{content:"💡";font-size:19px}.nav-subitem.sidebar-view-full-section{padding-left:12px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border, var(--highlight-ghost))}.nav-subitem.sidebar-view-full-section .nav-subitem-text{font-size:var(--text-sm);font-weight:500;color:var(--primary, var(--primary-light));display:flex;align-items:center;gap:10px}.nav-subitem.sidebar-view-full-section .nav-subitem-text:before{content:"▸";font-size:var(--text-sm);color:var(--primary, var(--primary-light));transition:transform var(--transition-normal)}.nav-subitem.sidebar-view-full-section:hover .nav-subitem-text{color:var(--primary-hover, var(--primary-dark, #c45a1a));text-shadow:0 0 12px var(--primary-glow, rgba(232, 121, 59, .4))}.nav-subitem.sidebar-view-full-section:hover .nav-subitem-text:before{transform:translate(4px);color:var(--primary, var(--primary-light))}.nav-subitem.sidebar-view-full-section.active .nav-subitem-text{color:var(--text-primary);font-weight:600}.analysis-page .step-type-label-box{display:inline-flex;align-items:center;justify-content:center;min-width:29px;height:29px;padding:0 10px;border-radius:6px;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.02em;flex-shrink:0;transition:all var(--transition-fast)}.analysis-page .step-type-label-box.step-type-recap{background:linear-gradient(135deg,var(--icon-recap-border) 0%,var(--icon-recap-subtle) 100%);border:1px solid var(--icon-recap-border);color:var(--icon-recap, #4BC4BB);box-shadow:inset 0 1px 0 var(--highlight-faint)}.analysis-page .step-card:hover .step-type-label-box.step-type-recap{background:linear-gradient(135deg,var(--icon-recap-border) 0%,var(--icon-recap-subtle) 100%);border-color:var(--icon-recap-border)}.analysis-page .step-type-label-box.step-type-tips{background:linear-gradient(135deg,var(--icon-tips-subtle) 0%,var(--icon-tips-subtle) 100%);border:1px solid var(--icon-tips-border);color:var(--icon-tips, #E5A158);box-shadow:inset 0 1px 0 var(--highlight-faint)}.analysis-page .step-card:hover .step-type-label-box.step-type-tips{background:linear-gradient(135deg,var(--icon-tips-border) 0%,var(--icon-tips-subtle) 100%);border-color:var(--icon-tips-border)}.analysis-page .step-card-label-outline .step-type-label-box{background:transparent;box-shadow:none}.analysis-page .step-card-label-outline .step-type-label-box.step-type-recap{border:2px solid var(--icon-recap-border)}.analysis-page .step-card-label-outline:hover .step-type-label-box.step-type-recap{border-color:var(--icon-recap-border);background:var(--icon-recap-subtle)}.analysis-page .step-card-label-outline .step-type-label-box.step-type-tips{border:2px solid var(--icon-tips-border)}.analysis-page .step-card-label-outline:hover .step-type-label-box.step-type-tips{border-color:var(--icon-tips-border);background:var(--icon-tips-subtle)}.analysis-page .step-card-label-pill .step-type-label-box{border-radius:14px;padding:0 12px}.analysis-page .step-card-label-minimal .step-type-label-box{background:transparent;border:none;box-shadow:none;padding:0;min-width:auto;height:auto;font-size:var(--text-xs);font-weight:800}.analysis-page .step-type-badge{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:5px;font-size:var(--text-sm);flex-shrink:0;transition:all var(--transition-fast)}.analysis-page .step-type-badge.step-type-recap{background:var(--icon-recap-soft, var(--icon-recap-subtle));border:1px solid var(--icon-recap-border, var(--icon-recap-border));color:var(--icon-recap, #4BC4BB)}.analysis-page .step-type-badge.step-type-tips{background:var(--icon-tips-soft, rgba(229, 161, 88, .15));border:1px solid var(--icon-tips-border, rgba(229, 161, 88, .25));color:var(--icon-tips, #E5A158)}.analysis-page .step-card-glow-subtle.step-card-recap{box-shadow:0 2px 8px -2px var(--icon-recap-border)}.analysis-page .step-card-glow-subtle.step-card-recap:hover{box-shadow:0 4px 12px -2px var(--icon-recap-border)}.analysis-page .step-card-glow-subtle.step-card-tips{box-shadow:0 2px 8px -2px var(--icon-tips-subtle)}.analysis-page .step-card-glow-subtle.step-card-tips:hover{box-shadow:0 4px 12px -2px var(--icon-tips-border)}.analysis-page .step-card-glow-strong.step-card-recap{border-color:var(--icon-recap-border);box-shadow:0 0 0 1px var(--icon-recap-subtle),0 4px 16px -2px var(--icon-recap-border)}.analysis-page .step-card-glow-strong.step-card-recap:hover{border-color:var(--icon-recap-border);box-shadow:0 0 0 1px var(--icon-recap-border),0 6px 20px -2px var(--icon-recap-border)}.analysis-page .step-card-glow-strong.step-card-tips{border-color:var(--icon-tips-border);box-shadow:0 0 0 1px var(--icon-tips-subtle),0 4px 16px -2px var(--icon-tips-border)}.analysis-page .step-card-glow-strong.step-card-tips:hover{border-color:var(--icon-tips-border);box-shadow:0 0 0 1px var(--icon-tips-subtle),0 6px 20px -2px var(--icon-tips-border)}.analysis-page .step-card-top-bar{position:relative;overflow:hidden;border-top:3px solid transparent}.analysis-page .step-card-top-bar.step-card-recap{border-top-color:var(--icon-recap, #4BC4BB)}.analysis-page .step-card-top-bar.step-card-tips{border-top-color:var(--icon-tips, #E5A158)}.analysis-page .step-card-top-bar:before{content:attr(data-corner-label);position:absolute;top:10px;left:10px;padding:4px 8px;border-radius:3px;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.02em;z-index:20;transition:opacity var(--transition-normal)}.analysis-page .step-card-top-bar.step-card-recap:before{background:var(--icon-recap, #4BC4BB);color:var(--text-on-primary)}.analysis-page .step-card-top-bar.step-card-tips:before{background:var(--icon-tips, #E5A158);color:var(--text-on-primary)}.analysis-page .step-card-video-playing.step-card-top-bar:before{opacity:0}.analysis-page .step-card-corner-ribbon,.analysis-page .step-card-corner-ribbon-icon,.analysis-page .step-card-corner-full{position:relative;overflow:hidden;border-top:3px solid transparent}.analysis-page .step-card-corner-ribbon.step-card-recap,.analysis-page .step-card-corner-ribbon-icon.step-card-recap,.analysis-page .step-card-corner-full.step-card-recap{border-top-color:var(--icon-recap, #4BC4BB)}.analysis-page .step-card-corner-ribbon.step-card-tips,.analysis-page .step-card-corner-ribbon-icon.step-card-tips,.analysis-page .step-card-corner-full.step-card-tips{border-top-color:var(--icon-tips, #E5A158)}.analysis-page .step-card-corner-ribbon:before,.analysis-page .step-card-corner-ribbon-icon:before,.analysis-page .step-card-corner-full:before{content:attr(data-corner-label);position:absolute;top:10px;left:10px;padding:4px 8px;border-radius:3px;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.02em;z-index:20;transition:opacity var(--transition-normal)}.analysis-page .step-card-corner-ribbon.step-card-recap:before,.analysis-page .step-card-corner-ribbon-icon.step-card-recap:before,.analysis-page .step-card-corner-full.step-card-recap:before{background:var(--icon-recap, #4BC4BB);color:var(--text-on-primary)}.analysis-page .step-card-corner-ribbon.step-card-tips:before,.analysis-page .step-card-corner-ribbon-icon.step-card-tips:before,.analysis-page .step-card-corner-full.step-card-tips:before{background:var(--icon-tips, #E5A158);color:var(--text-on-primary)}.analysis-page .step-card-video-playing.step-card-corner-ribbon:before,.analysis-page .step-card-video-playing.step-card-corner-ribbon-icon:before,.analysis-page .step-card-video-playing.step-card-corner-full:before{opacity:0}.sidebar.path-variant .nav-subitem.breakdown-sidebar-leading .nav-subitem-icon{position:absolute;left:var(--path-offset);transform:translate(-50%);width:var(--node-size);height:var(--node-size);z-index:2}.sidebar.path-variant .nav-subitem.breakdown-sidebar-leading.breakdown-sidebar-recap .nav-subitem-icon{color:var(--icon-recap, #4BC4BB)}.sidebar.path-variant .nav-subitem.breakdown-sidebar-leading.breakdown-sidebar-recap.active .nav-subitem-icon{background:var(--icon-recap, #4BC4BB);border-color:var(--icon-recap, #4BC4BB);color:var(--text-on-primary);box-shadow:0 0 0 6px var(--icon-recap-subtle),0 0 20px var(--icon-recap-border);transform:translate(-50%) scale(1.1)}.sidebar.path-variant .nav-subitem.breakdown-sidebar-leading.breakdown-sidebar-tips .nav-subitem-icon{color:var(--icon-tips, #E5A158)}.sidebar.path-variant .nav-subitem.breakdown-sidebar-leading.breakdown-sidebar-tips.active .nav-subitem-icon{background:var(--icon-tips, #E5A158);border-color:var(--icon-tips, #E5A158);color:var(--text-on-primary);box-shadow:0 0 0 6px var(--icon-tips-subtle),0 0 20px var(--icon-tips-border);transform:translate(-50%) scale(1.1)}.sidebar.path-variant .nav-subitem.breakdown-sidebar-textonly{position:relative;min-height:44px;padding-left:88px;margin-left:0;margin-bottom:2px;background:transparent;border:none}.sidebar.path-variant .nav-subitem.breakdown-sidebar-textonly:before{content:"";position:absolute;left:28px;top:50%;width:22px;height:2px;transform:translateY(-50%);background:transparent}.sidebar.path-variant.path-branch-0 .nav-subitem.breakdown-sidebar-textonly:before{background:transparent;border-bottom:2px dotted var(--highlight-soft);height:0}.sidebar.path-variant.path-branch-1 .nav-subitem.breakdown-sidebar-textonly:before{display:none}.sidebar.path-variant.path-branch-2 .nav-subitem.breakdown-sidebar-textonly:before{width:8px;background:var(--highlight-subtle);border-radius:1px}.sidebar.path-variant .nav-subitem.breakdown-sidebar-textonly .nav-subitem-text:before{position:absolute;left:63px;transform:translate(-50%);width:26px;height:26px;background:var(--bg-tertiary, #1f1f24);border:2px solid var(--highlight-faint);border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:2;transition:all var(--transition-normal)}.sidebar.path-variant .nav-subitem.breakdown-sidebar-textonly.breakdown-sidebar-recap .nav-subitem-text:before{content:"↺";font-size:var(--text-sm);font-weight:700;color:var(--icon-recap, #4BC4BB);border-color:var(--icon-recap-border, rgba(75, 196, 187, .25))}.sidebar.path-variant .nav-subitem.breakdown-sidebar-textonly.breakdown-sidebar-recap:hover .nav-subitem-text:before{background:var(--icon-recap-soft, rgba(75, 196, 187, .15));border-color:var(--icon-recap-border)}.sidebar.path-variant .nav-subitem.breakdown-sidebar-textonly.breakdown-sidebar-recap.active .nav-subitem-text:before{background:var(--icon-recap, #4BC4BB);border-color:var(--icon-recap, #4BC4BB);color:var(--text-on-primary);box-shadow:0 0 12px var(--icon-recap-border)}.sidebar.path-variant .nav-subitem.breakdown-sidebar-textonly.breakdown-sidebar-tips .nav-subitem-text:before{content:"💡";font-size:var(--text-sm);border-color:var(--icon-tips-border, rgba(229, 161, 88, .25))}.sidebar.path-variant .nav-subitem.breakdown-sidebar-textonly.breakdown-sidebar-tips:hover .nav-subitem-text:before{background:var(--icon-tips-soft, rgba(229, 161, 88, .15));border-color:var(--icon-tips-border)}.sidebar.path-variant .nav-subitem.breakdown-sidebar-textonly.breakdown-sidebar-tips.active .nav-subitem-text:before{background:var(--icon-tips, #E5A158);border-color:var(--icon-tips, #E5A158);box-shadow:0 0 12px var(--icon-tips-border)}.sidebar.path-variant .nav-subitem.breakdown-sidebar-textonly .nav-subitem-text{font-size:var(--text-xs);font-weight:500;color:var(--text-tertiary, #71717a);padding-left:0;gap:0}.sidebar.path-variant .nav-subitem.breakdown-sidebar-textonly:hover{background:var(--highlight-ghost)}.sidebar.path-variant .nav-subitem.breakdown-sidebar-textonly:hover .nav-subitem-text{color:var(--primary)}.sidebar.path-variant .nav-subitem.breakdown-sidebar-textonly.active .nav-subitem-text{color:var(--text-primary, #f4f4f5);font-weight:600}.sidebar.path-variant .nav-subitems:has(.sidebar-view-full-section):before{bottom:calc(var(--node-size, 44px) / 2 + var(--path-line-view-full-gap, 30px))}.sidebar.path-variant .nav-subitem.sidebar-view-full-section{padding-left:calc(var(--path-offset, 28px) + 32px);margin-left:0;margin-top:12px;min-height:60px;border-top:none;align-items:center}.sidebar.path-variant .nav-subitem.sidebar-view-full-section:before{content:"▶";position:absolute;left:var(--path-offset, 28px);transform:translate(-50%);width:var(--node-size, 44px);height:var(--node-size, 44px);background:transparent;border:2px dashed var(--primary, var(--primary-light));border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--primary, var(--primary-light));z-index:2;transition:all var(--transition-slow)}.sidebar.path-variant.view-full-icon-0 .nav-subitem.sidebar-view-full-section:before{content:"▶";font-size:var(--text-sm)}.sidebar.path-variant.view-full-icon-1 .nav-subitem.sidebar-view-full-section:before{content:"●";font-size:18px}.sidebar.path-variant.view-full-icon-2 .nav-subitem.sidebar-view-full-section:before{content:"◉";font-size:20px}.sidebar.path-variant.view-full-icon-3 .nav-subitem.sidebar-view-full-section:before{content:"⊞";font-size:20px}.sidebar.path-variant.view-full-icon-4 .nav-subitem.sidebar-view-full-section:before{content:"»";font-size:20px}.sidebar.path-variant .nav-subitem.sidebar-view-full-section:hover:before{background:var(--primary, var(--primary-light));border-style:solid;color:var(--text-on-primary);transform:translate(-50%) scale(1.08);box-shadow:0 0 20px var(--primary-glow)}.sidebar.path-variant .nav-subitem.sidebar-view-full-section .nav-subitem-text{font-size:var(--text-sm);font-weight:600;color:var(--primary, var(--primary-light))}.sidebar.path-variant .nav-subitem.sidebar-view-full-section .nav-subitem-text:before{display:none}.sidebar.path-variant .nav-subitem.sidebar-view-full-section:hover .nav-subitem-text{color:var(--primary-hover, var(--primary-dark, #c45a1a));text-shadow:0 0 12px var(--primary-glow, rgba(232, 121, 59, .4))}.unified-toolbar{display:flex;align-items:center;background:var(--highlight-ghost);border:1px solid var(--border);border-radius:14px;padding:6px;gap:0;--study-btn-gradient: linear-gradient( 135deg, var(--accent-purple) 0%, color-mix(in srgb, var(--accent-purple) 60%, var(--primary) 40%) 50%, var(--primary) 100% );--study-btn-gradient-hover: linear-gradient( 135deg, var(--accent-purple) 0%, color-mix(in srgb, var(--accent-purple) 50%, var(--primary) 50%) 50%, var(--primary-hover) 100% );--study-btn-gradient-active: linear-gradient( 135deg, var(--accent-purple) 0%, color-mix(in srgb, var(--accent-purple) 45%, var(--primary-dark) 55%) 50%, var(--primary-dark) 100% );--study-btn-border: color-mix(in srgb, var(--accent-purple) 30%, transparent);--study-btn-shadow: 0 1px 2px var(--shadow-subtle), 0 4px 12px color-mix(in srgb, var(--accent-purple) 35%, transparent), inset 0 1px 0 var(--highlight-subtle);--study-btn-shadow-hover: 0 2px 4px var(--shadow-soft), 0 6px 20px color-mix(in srgb, var(--accent-purple) 45%, transparent), inset 0 1px 0 var(--highlight-soft);--study-btn-shadow-active: 0 1px 2px var(--shadow-soft), 0 2px 6px color-mix(in srgb, var(--accent-purple) 30%, transparent), inset 0 2px 4px var(--shadow-subtle)}.unified-toolbar .toolbar-divider{width:1px;height:28px;background:var(--border);margin:0 4px;flex-shrink:0}.unified-toolbar .toolbar-aux-action{display:flex;align-items:center}.unified-toolbar .toolbar-btn{display:flex;align-items:center;justify-content:center;gap:7px;height:40px;padding:0 16px;background:transparent;border:none;border-radius:10px;font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.unified-toolbar .toolbar-btn:hover:not(:disabled){background:var(--interactive-hover-bg);filter:brightness(var(--hover-brightness))}.unified-toolbar .toolbar-btn:disabled{opacity:.4;cursor:not-allowed}.unified-toolbar .toolbar-btn.loop-toggle.active{background:color-mix(in srgb,var(--primary) 15%,transparent);color:var(--primary)}.unified-toolbar .toolbar-btn.loop-toggle.active:hover{background:color-mix(in srgb,var(--primary) 22%,transparent)}.unified-toolbar .toolbar-btn.starred-filter{padding:0 14px;position:relative;gap:6px;border-radius:10px;transition:all var(--transition-fast)}.unified-toolbar .toolbar-btn.starred-filter svg{width:18px;height:18px;transition:transform .2s cubic-bezier(.2,.8,.2,1)}.unified-toolbar .toolbar-btn.starred-filter:hover:not(:disabled):not(.active) svg{transform:scale(1.1)}.unified-toolbar .toolbar-badge{font-size:var(--text-xs);font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-tertiary);min-width:16px;text-align:center;transition:color var(--transition-fast)}.unified-toolbar .toolbar-btn.starred-filter.active{background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 18%,transparent),color-mix(in srgb,var(--primary) 12%,transparent));color:var(--primary);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 20%,transparent),0 2px 8px color-mix(in srgb,var(--primary) 15%,transparent)}.unified-toolbar .toolbar-btn.starred-filter.active:hover{background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 24%,transparent),color-mix(in srgb,var(--primary) 16%,transparent));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 28%,transparent),0 4px 12px color-mix(in srgb,var(--primary) 20%,transparent)}.unified-toolbar .toolbar-btn.starred-filter.active svg{filter:drop-shadow(0 1px 2px color-mix(in srgb,var(--primary) 40%,transparent))}.unified-toolbar .toolbar-btn.starred-filter.active .toolbar-badge{color:var(--primary)}.unified-toolbar .toolbar-btn.toolbar-btn-primary{background:var(--study-btn-gradient);color:#fff;font-weight:600;padding:0 24px;border:1px solid var(--study-btn-border);box-shadow:var(--study-btn-shadow);position:relative;overflow:hidden;transition:all var(--transition-normal)}.unified-toolbar .toolbar-btn.toolbar-btn-primary:before{content:"";position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(to bottom,var(--highlight-subtle) 0%,transparent 100%);border-radius:inherit;pointer-events:none}.unified-toolbar .toolbar-btn.toolbar-btn-primary:hover{background:var(--study-btn-gradient-hover);border-color:var(--study-btn-border);color:#fff;box-shadow:var(--study-btn-shadow-hover)}.unified-toolbar .toolbar-btn.toolbar-btn-primary:active{background:var(--study-btn-gradient-active);box-shadow:var(--study-btn-shadow-active);transition:all var(--transition-fast)}.unified-toolbar .toolbar-btn.toolbar-btn-primary.active{background:var(--study-btn-gradient);box-shadow:var(--study-btn-shadow)}.unified-toolbar .toolbar-btn.toolbar-btn-primary svg{width:18px;height:18px;filter:drop-shadow(0 1px 1px var(--shadow-soft))}.unified-toolbar .toolbar-more-menu .more-menu-trigger{width:40px;height:40px;background:transparent;border:none;border-radius:10px;color:var(--text-secondary)}.unified-toolbar .toolbar-more-menu .more-menu-trigger:hover{background:var(--interactive-hover-bg);filter:brightness(var(--hover-brightness))}.unified-toolbar .toolbar-more-menu .more-menu-trigger.active{background:var(--interactive-hover-bg);color:var(--text-primary)}@media(max-width:960px){.unified-toolbar{padding:4px}.unified-toolbar .toolbar-btn{height:36px;padding:0 12px;font-size:var(--text-sm)}.unified-toolbar .toolbar-btn.toolbar-btn-primary{padding:0 16px}}@media(max-width:600px){.unified-toolbar{display:none}}.sidebar-sharing-footer{display:flex;flex-direction:column}.analysis-page{overflow-x:hidden}.analysis-page .breakdown-card-wrapper{scroll-margin-top:90px}@media(min-width:960px){.app-container.analysis-page-layout .nav-bar{padding-right:32px}}.analysis-page .analysis-content{padding:24px 32px 32px;max-width:1800px;margin:0 auto;overflow-x:hidden}.analysis-page .analysis-content.special-mode-active .special-mode-hidden-header-controls{position:fixed;top:calc(var(--safe-area-top, 0px) + 10px);right:12px;z-index:1100;display:flex;gap:8px}.analysis-page .analysis-content.special-mode-active .special-mode-hidden-header-controls svg{width:20px;height:20px}@media(min-width:768px){.analysis-page .analysis-content.special-mode-active{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1000;padding:0;max-width:none;background:var(--bg-primary);display:flex;flex-direction:column}.analysis-page .analysis-content.special-mode-active>.step-modal-header{flex-shrink:0;z-index:10}.analysis-page .analysis-content.special-mode-active .special-carousel{flex:1;width:100%;min-height:0;margin:0}.analysis-page .analysis-content.special-mode-active .special-carousel .breakdown-carousel{height:100%;align-items:stretch;scroll-snap-type:x mandatory}.analysis-page .analysis-content.special-mode-active .special-carousel .breakdown-carousel-item,.analysis-page .analysis-content.special-mode-active .special-carousel .breakdown-card-wrapper{height:100%}.analysis-page .analysis-content.special-mode-active .special-step-card{width:100vw;min-width:100vw;max-width:100vw;height:100%;border-radius:0;border:none;background:var(--bg-primary);display:flex;flex-direction:column}}@media(max-width:768px){.analysis-page .analysis-content.special-mode-active{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1000;padding:0;max-width:none;background:var(--bg-primary);display:flex;flex-direction:column}.analysis-page .analysis-content.special-mode-active>.step-modal-header{flex-shrink:0;z-index:10}.analysis-page .analysis-content.special-mode-active .special-carousel{flex:1;width:100%;min-height:0;margin:0}.analysis-page .analysis-content.special-mode-active .special-carousel .breakdown-carousel{height:100%;align-items:stretch}.analysis-page .analysis-content.special-mode-active .special-carousel .breakdown-card-wrapper,.analysis-page .analysis-content.special-mode-active .special-carousel .special-step-card{height:100%}}body.capacitor-native .analysis-page .analysis-content.special-mode-active{padding:0;box-sizing:border-box}.analysis-page .special-carousel.preloading{position:absolute;left:-9999px;visibility:hidden;pointer-events:none}.analysis-page .analysis-content.special-mode-active .breakdown-card-wrapper.special-offscreen{content-visibility:auto;contain-intrinsic-size:1000px 800px}.analysis-page .study-section-title{display:block;font-size:var(--text-sm);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:.85rem}.analysis-page .study-section-line{position:relative;height:1px;background:linear-gradient(90deg,var(--shadow-heavy) 0%,var(--shadow-medium) 8%,var(--shadow-soft) 20%,var(--shadow-subtle) 40%,var(--shadow-ghost) 65%,transparent 100%)}.analysis-page .study-section-line:after{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,var(--primary-subtle) 0%,var(--primary-subtle) 5%,transparent 25%);filter:blur(2px);transform:translateY(1px)}.analysis-page-loading-cover{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);z-index:100}.app-container.focus-mode .analysis-page .analysis-content{padding:16px;max-width:none}.app-container.focus-mode .analysis-page .breakdown-grid{gap:16px}.analysis-page .gif-generation-toast{position:fixed;bottom:24px;right:24px;z-index:50;background:var(--overlay-dark);border:1px solid var(--shadow-medium);border-radius:8px;padding:8px 12px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 12px var(--shadow-soft);min-width:120px;animation:slideInFromRight .3s ease}@keyframes slideInFromRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.analysis-page .gif-generation-toast-content{display:flex;align-items:center;gap:8px;margin-bottom:6px}.analysis-page .gif-generation-spinner{width:12px;height:12px;border:1.5px solid var(--highlight-faint);border-top-color:var(--overlay-heavy);border-radius:50%;animation:spinner-rotate .9s linear infinite;flex-shrink:0}.analysis-page .gif-generation-toast-text{font-size:var(--text-xs);font-weight:500;color:var(--text-secondary);letter-spacing:.01em;white-space:nowrap}.analysis-page .gif-generation-toast-progress{height:2px;background:var(--shadow-medium);border-radius:1px;overflow:hidden}.analysis-page .gif-generation-toast-progress-bar{height:100%;background:linear-gradient(90deg,var(--text-muted),var(--text-secondary));transition:width var(--transition-slow);border-radius:1px}.practice-set-toast{position:fixed;bottom:calc(24px + var(--safe-area-bottom, 0px));left:50%;transform:translate(-50%);z-index:10000;background:#1a1a1a;border-radius:8px;padding:10px 14px;box-shadow:0 4px 12px #00000026,0 1px 3px #0000001a;display:flex;align-items:center;gap:8px;animation:practiceSetToastIn .3s cubic-bezier(.34,1.56,.64,1),practiceSetToastOut .2s ease-out 2.2s forwards}[data-theme=warm] .practice-set-toast{background:#242220;box-shadow:0 4px 16px #0000001f,0 1px 4px #00000014}.practice-set-toast-check{color:#4ade80;font-size:var(--text-sm);font-weight:700;flex-shrink:0}[data-theme=warm] .practice-set-toast-check{color:#5ca86c}.practice-set-toast-text{font-size:var(--text-sm);font-weight:500;color:#fffffff2;white-space:nowrap}@keyframes practiceSetToastIn{0%{opacity:0;transform:translate(-50%) translateY(12px) scale(.96)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}@keyframes practiceSetToastOut{0%{opacity:1;transform:translate(-50%) translateY(0) scale(1)}to{opacity:0;transform:translate(-50%) translateY(12px) scale(.96)}}@media(max-width:960px){.analysis-page .analysis-content{padding:16px}}@media(max-width:600px){.analysis-page .analysis-content{padding:12px}}.analysis-page .analysis-content.immersive-mobile{padding-left:0;padding-right:0}.analysis-page .analysis-content.immersive-mobile .breakdown-grid{gap:12px}.analysis-page .analysis-content.immersive-mobile .step-video-container.portrait-video{aspect-ratio:var(--grid-video-aspect-ratio-immersive, .7)}.dimensions-loading{display:flex;justify-content:center;align-items:center;min-height:200px;width:100%}.analysis-page .analysis-content.immersive-mobile .breakdown-card-wrapper{margin-left:0;margin-right:0}.analysis-filter-bar{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:0 4px}.analysis-filter-btn{display:inline-flex;align-items:center;gap:6px;background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:8px;padding:6px 12px 6px 6px;cursor:pointer;transition:all var(--transition-normal);font-size:var(--text-sm);color:var(--text-secondary)}.analysis-filter-btn:hover{background:var(--bg-tertiary);border-color:var(--border-default);color:var(--text-primary)}.analysis-filter-btn.active{background:var(--yellow-subtle, rgba(255, 215, 0, .15));border-color:var(--yellow, #FFD700);color:var(--yellow, #FFD700)}.analysis-filter-btn.active:hover{background:var(--yellow-subtle, rgba(255, 215, 0, .2))}.breakdown-card-wrapper.hidden-by-filter{display:none}.breakdown-card-wrapper.breakdown-card-wrapper-soft-hiding{transition:height .32s cubic-bezier(.22,1,.36,1),opacity .2s ease;pointer-events:none}.breakdown-card-wrapper.breakdown-card-wrapper-soft-hidden{display:none}.analysis-filter-btn .star-btn{padding:2px;font-size:16px;pointer-events:none}.analysis-filter-btn .star-btn:hover{background:transparent;transform:none}.analysis-filter-btn-label{white-space:nowrap}@media(max-width:768px){.analysis-filter-bar{padding:0 12px;margin-bottom:12px}.analysis-filter-btn{padding:5px 10px 5px 5px;font-size:var(--text-xs)}.analysis-filter-btn .star-btn{font-size:var(--text-sm)}}.analysis-page .analysis-content.immersive-mobile .analysis-filter-bar{padding:0 12px}.segment-timing-editor-page{animation:segmentEditorEnter .35s cubic-bezier(.16,1,.3,1) both}.segment-timing-editor-page.is-exiting{animation:segmentEditorExit .22s cubic-bezier(.4,0,1,1) forwards}@keyframes segmentEditorEnter{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes segmentEditorExit{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.97)}}.segment-timing-editor-header{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%}.segment-timing-editor-header-content{flex:1;min-width:0}.segment-timing-editor-title{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 2px;letter-spacing:-.01em}.segment-timing-editor-subtitle{font-size:14px;font-weight:400;color:var(--text-secondary);margin:0;opacity:.85}.segment-timing-editor-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.segment-timing-editor-actions .btn{min-width:90px;height:38px;padding:0 18px;font-size:var(--text-sm);font-weight:600;border-radius:8px}.segment-timing-editor-actions .btn--secondary{background:var(--surface-hover);border:1px solid var(--border);color:var(--text-secondary)}.segment-timing-editor-actions .btn--secondary:hover{background:var(--surface);border-color:var(--border-hover);color:var(--text-primary)}.segment-timing-editor-actions .btn--accent{min-width:80px}@media(max-width:600px){.segment-timing-editor-page .fortress-header{padding:12px 16px;padding-top:calc(12px + var(--safe-area-top, 0px))}.segment-timing-editor-header{flex-direction:column;align-items:flex-start;gap:12px}.segment-timing-editor-header-content{text-align:left;width:100%}.segment-timing-editor-title{font-size:17px;line-height:1.3}.segment-timing-editor-subtitle{font-size:13px;line-height:1.4}.segment-timing-editor-actions{width:100%;justify-content:stretch}.segment-timing-editor-actions .btn{flex:1;min-width:0;height:44px;font-size:15px}}@media(max-height:640px)and (orientation:landscape){.segment-timing-editor-page .fortress-header{padding:8px 16px;min-height:auto;max-height:56px}.segment-timing-editor-header{flex-direction:row;align-items:center}.segment-timing-editor-header-content{flex:1}.segment-timing-editor-title{font-size:15px}.segment-timing-editor-subtitle{display:none}.segment-timing-editor-actions .btn{height:34px;min-width:70px;font-size:var(--text-sm)}}@media(min-width:601px)and (max-width:960px){.segment-timing-editor-title{font-size:17px}.segment-timing-editor-subtitle{font-size:13px}}@media(min-width:1200px){.segment-timing-editor-title{font-size:20px}.segment-timing-editor-subtitle{font-size:15px}.segment-timing-editor-actions .btn{min-width:100px;height:40px;padding:0 22px}}.segment-timing-editor-error{position:absolute;left:16px;right:16px;bottom:16px;padding:12px 16px;background:var(--error-bg, rgba(239, 68, 68, .1));border:1px solid var(--error-border, rgba(239, 68, 68, .2));border-radius:8px;color:var(--error-text, #ef4444);font-size:var(--text-sm);text-align:center;animation:errorSlideUp .3s cubic-bezier(.16,1,.3,1)}@keyframes errorSlideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.segment-timing-editor-page .onboarding-video-player{position:relative;width:100%;height:100%}@keyframes comparison-toolbar-morph{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes comparison-note-bubble-in{0%{opacity:0;transform:translate(-50%,-100%) scale(.7)}60%{transform:translate(-50%,-100%) scale(1.04)}to{opacity:1;transform:translate(-50%,-100%) scale(1)}}@keyframes comparison-marker-add{0%{opacity:0;transform:translate(-50%) scale(.5)}60%{transform:translate(-50%) scale(1.1)}to{opacity:1;transform:translate(-50%) scale(1)}}@keyframes comparison-trim-pulse{0%,to{box-shadow:0 1px 4px var(--primary-glow)}50%{box-shadow:0 1px 4px var(--primary-glow),0 0 0 4px color-mix(in srgb,var(--primary) 15%,transparent)}}@keyframes comparison-save-pop{0%{transform:scale(.5);opacity:.5}60%{transform:scale(1.15);opacity:1}to{transform:scale(1);opacity:1}}.comparison-review{display:flex;flex-direction:column;width:100dvw;height:100dvh;background:var(--bg-primary);position:relative;overflow:hidden}.comparison-review__panels{flex:1;min-height:0;display:flex;gap:16px;padding:0 16px;position:relative}.comparison-review--landscape .comparison-review__panels{flex-direction:row}.comparison-review--portrait .comparison-review__panels{flex-direction:column;gap:6px;padding:0 10px}.comparison-panel{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.comparison-panel__label{font-size:var(--text-xs);font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;padding-left:2px;flex-shrink:0}.comparison-review--portrait .comparison-panel__label{font-size:var(--text-xs);margin-bottom:5px}.comparison-panel__video{position:relative;border-radius:14px;overflow:hidden;background:var(--background-alt);border:1px solid var(--border);flex:1;min-height:0}.comparison-panel__video video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}.comparison-panel__video--ar-matched{flex:0 1 auto;width:100%}.comparison-panel__video--cover video{object-fit:cover}.comparison-review--portrait .comparison-panel__video{border-radius:10px}.crop-overlay-active .comparison-panel__video{background:#111}.comparison-panel__video--clickable{cursor:pointer}.comparison-crop-badge{position:absolute;top:10px;right:10px;width:36px;height:36px;border-radius:10px;background:var(--surface);display:flex;align-items:center;justify-content:center;z-index:4;border:1px solid var(--border);cursor:pointer;color:var(--primary);box-shadow:0 1px 4px var(--shadow-ghost);will-change:transform;transition:background var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.comparison-crop-badge:hover{transform:scale(1.06);box-shadow:0 2px 8px var(--shadow-soft)}.comparison-crop-badge:active{transform:scale(.93)}.comparison-review--portrait .comparison-crop-badge{top:8px;right:8px;width:38px;height:38px;border-radius:10px}.comparison-scrubber{position:relative;padding:36px 4px 0;flex-shrink:0}.comparison-review--portrait .comparison-scrubber{padding:24px 2px 0;position:relative;z-index:1}.comparison-scrubber__track{height:6px;background:var(--border);border-radius:3px;position:relative;touch-action:none;cursor:pointer}.comparison-scrubber__track:before{content:"";position:absolute;inset:-20px 0}.comparison-scrubber__track--active{cursor:grabbing}.comparison-review--portrait .comparison-scrubber__track{height:4px;border-radius:2px}.comparison-review--portrait .comparison-scrubber__track:before{top:-24px;bottom:-12px}.comparison-scrubber__fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--primary) 80%,white));pointer-events:none}.comparison-markers{position:absolute;left:0;right:0;bottom:100%;pointer-events:none;z-index:4}.comparison-marker{position:absolute;bottom:0;transform:translate(-50%);pointer-events:auto;touch-action:none;cursor:pointer;border:none;padding:0;background:none;display:flex;flex-direction:column;align-items:center;width:44px;z-index:1;animation:comparison-marker-add .3s cubic-bezier(.34,1.56,.64,1)}.comparison-marker__badge{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:var(--text-on-primary);font-size:11px;font-weight:700;font-variant-numeric:tabular-nums;box-shadow:0 2px 6px var(--primary-glow);transition:transform var(--transition-fast),box-shadow var(--transition-fast),width var(--transition-fast),height var(--transition-fast)}.comparison-review--portrait .comparison-marker__badge{width:20px;height:20px;font-size:9px}.comparison-marker__stem{width:2px;height:6px;background:var(--primary);opacity:.5;border-radius:1px;flex-shrink:0;transition:opacity var(--transition-fast),width var(--transition-fast)}.comparison-review--portrait .comparison-marker__stem{width:1.5px;height:5px}.comparison-marker:hover .comparison-marker__badge{transform:scale(1.1);box-shadow:0 3px 10px var(--primary-glow)}.comparison-marker:hover .comparison-marker__stem{opacity:.8}.comparison-marker:active .comparison-marker__badge{transform:scale(.95);background:linear-gradient(135deg,var(--primary-light),var(--primary))}.comparison-marker--selected .comparison-marker__badge{width:28px;height:28px;font-size:12px;transform:scale(1);background:linear-gradient(135deg,var(--primary-light),var(--primary));box-shadow:0 2px 10px var(--primary-glow),0 0 0 3px color-mix(in srgb,var(--primary) 18%,transparent)}.comparison-review--portrait .comparison-marker--selected .comparison-marker__badge{width:24px;height:24px;font-size:10px}.comparison-marker--selected .comparison-marker__stem{opacity:1;width:3px;background:var(--primary-light)}.comparison-review--portrait .comparison-marker--selected .comparison-marker__stem{width:2px}.comparison-scrubber__track--trimming{height:8px;border-radius:4px}.comparison-review--portrait .comparison-scrubber__track--trimming{height:6px;border-radius:3px}.comparison-trim-dim{position:absolute;top:0;height:100%;background:var(--shadow-subtle);border-radius:inherit;z-index:1;pointer-events:none}.comparison-trim-handle{position:absolute;top:-4px;width:4px;height:16px;background:var(--primary);border-radius:2px;transform:translate(-50%);z-index:6;cursor:grab;touch-action:none;box-shadow:0 1px 4px var(--primary-glow);animation:comparison-trim-pulse .8s ease-in-out 2}.comparison-trim-handle:active{cursor:grabbing;box-shadow:0 1px 4px var(--primary-glow),0 0 0 4px color-mix(in srgb,var(--primary) 15%,transparent)}.comparison-review--portrait .comparison-trim-handle{top:-3px;width:3px;height:12px;border-radius:1.5px}.comparison-toolbar{display:flex;justify-content:center;align-items:center;gap:4px;padding:6px;background:var(--surface);border-radius:14px;border:1px solid var(--border);width:fit-content;margin:14px auto 12px;flex-shrink:0;min-height:48px}.comparison-toolbar__btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border-radius:10px;font-size:var(--text-sm);font-weight:600;color:var(--text-tertiary);background:transparent;border:none;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;animation:comparison-toolbar-morph .2s ease-out both}.comparison-toolbar__btn svg{color:var(--text-tertiary);transition:color var(--transition-fast)}.comparison-toolbar__btn:hover{background:var(--highlight-ghost);color:var(--primary)}.comparison-toolbar__btn:hover svg{color:var(--primary)}.comparison-toolbar__btn:active{transform:scale(.96)}.comparison-toolbar__btn:disabled{opacity:.4;cursor:not-allowed}.comparison-toolbar__btn:nth-child(2){animation-delay:.04s}.comparison-toolbar__btn:nth-child(3){animation-delay:.08s}.comparison-toolbar__btn:nth-child(4){animation-delay:.12s}.comparison-toolbar__btn--active{background:color-mix(in srgb,var(--primary) 15%,transparent);color:var(--primary)}.comparison-toolbar__btn--active svg{color:var(--primary)}.comparison-toolbar__btn--active:hover{background:color-mix(in srgb,var(--primary) 22%,transparent);color:var(--primary)}.comparison-toolbar__btn--active:hover svg{color:var(--primary)}.comparison-toolbar__btn--delete{color:var(--danger)}.comparison-toolbar__btn--delete svg{color:var(--danger)}.comparison-toolbar__btn--delete:hover{background:var(--danger-subtle);color:var(--danger-light)}.comparison-toolbar__btn--delete:hover svg{color:var(--danger-light)}.comparison-toolbar__trim-actions{display:flex;gap:8px;align-items:center}.comparison-toolbar__trim-btn{display:flex;align-items:center;gap:6px;padding:8px 18px;border-radius:10px;font-size:var(--text-sm);font-weight:600;border:none;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;animation:comparison-toolbar-morph .2s ease-out both}.comparison-toolbar__trim-btn--cancel{background:var(--highlight-ghost);color:var(--text-tertiary)}.comparison-toolbar__trim-btn--cancel:hover{background:var(--highlight-faint);color:var(--text-secondary)}.comparison-toolbar__trim-btn--save{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:var(--text-on-primary);box-shadow:0 2px 8px var(--primary-glow)}.comparison-toolbar__trim-btn--save:hover{background:linear-gradient(135deg,var(--primary-light),var(--primary));box-shadow:0 3px 12px var(--primary-glow),0 0 0 2px color-mix(in srgb,var(--primary) 12%,transparent)}.comparison-toolbar__trim-btn--save:active,.comparison-toolbar__trim-btn--cancel:active{transform:scale(.97)}.comparison-toolbar--mobile{width:100%;border-radius:0;border-left:none;border-right:none;border-bottom:none;margin:0;padding:6px 8px;padding-bottom:calc(6px + env(safe-area-inset-bottom,0px));justify-content:space-around;min-height:60px}.comparison-toolbar--mobile .comparison-toolbar__btn{flex-direction:column;gap:3px;padding:6px 14px;min-width:48px;min-height:48px;font-size:12px}.comparison-toolbar--mobile .comparison-toolbar__btn svg{width:18px;height:18px}.comparison-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;padding-top:calc(10px + env(safe-area-inset-top,0px));flex-shrink:0;gap:12px;min-height:48px}.comparison-header__left{display:flex;align-items:center;gap:10px;min-width:0}.comparison-header__back{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast)}.comparison-header__back:hover{background:var(--highlight-ghost);color:var(--text-primary)}.comparison-header__back:active{transform:scale(.93)}.comparison-header__step-badge{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:var(--text-on-primary);font-size:14px;font-weight:700;font-variant-numeric:tabular-nums;flex-shrink:0;box-shadow:0 2px 6px var(--primary-glow)}.comparison-header__title{font-size:18px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.comparison-header__save{display:flex;align-items:center;gap:7px;padding:8px 20px;border-radius:12px;border:none;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:var(--text-on-primary);font-size:var(--text-sm);font-weight:600;cursor:pointer;flex-shrink:0;white-space:nowrap;box-shadow:0 2px 8px var(--primary-glow);transition:background var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.comparison-header__save:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-light),var(--primary));box-shadow:0 3px 12px var(--primary-glow),0 0 0 2px color-mix(in srgb,var(--primary) 12%,transparent)}.comparison-header__save:active:not(:disabled){transform:scale(.95)}.comparison-header__save:disabled{opacity:.4;cursor:not-allowed}.comparison-header__save--saved{color:var(--success);background:var(--success-subtle);box-shadow:none;pointer-events:none}.comparison-header__save--saved svg{animation:comparison-save-pop .35s cubic-bezier(.34,1.56,.64,1)}.comparison-header__save--error{color:var(--danger);background:var(--danger-subtle);box-shadow:none;border-color:var(--danger);pointer-events:none}.comparison-header__save--error svg{animation:comparison-save-pop .35s cubic-bezier(.34,1.56,.64,1)}@keyframes comparison-header-spin{to{transform:rotate(360deg)}}.comparison-header__spinner{animation:comparison-header-spin 1s linear infinite}.comparison-review--portrait .comparison-header{padding:8px 10px;padding-top:calc(8px + env(safe-area-inset-top,0px));min-height:42px;gap:8px}.comparison-review--portrait .comparison-header__back{width:38px;height:38px;border-radius:10px}.comparison-review--portrait .comparison-header__step-badge{width:24px;height:24px;font-size:11px}.comparison-review--portrait .comparison-header__title{font-size:var(--text-sm)}.comparison-review--portrait .comparison-header__save{padding:7px 14px;font-size:13px}.comparison-note-bubble{position:absolute;transform:translate(-50%,-100%);z-index:8;display:flex;align-items:flex-start;gap:8px;max-width:260px;padding:10px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--border);box-shadow:0 4px 20px var(--shadow-soft);pointer-events:none;margin-bottom:6px;animation:comparison-note-bubble-in .3s cubic-bezier(.34,1.56,.64,1)}.comparison-note-bubble:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:12px;height:6px;clip-path:polygon(0 0,100% 0,50% 100%);background:var(--surface)}.comparison-note-bubble:before{content:"";position:absolute;bottom:-7px;left:50%;transform:translate(-50%);width:14px;height:7px;clip-path:polygon(0 0,100% 0,50% 100%);background:var(--border)}.comparison-note-bubble__badge{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:var(--text-on-primary);font-size:11px;font-weight:700;flex-shrink:0;margin-top:1px}.comparison-note-bubble__text{font-size:var(--text-sm);color:var(--text-primary);line-height:1.4;word-break:break-word}.comparison-placement-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border:2px dashed color-mix(in srgb,var(--primary) 40%,transparent);border-radius:inherit;color:color-mix(in srgb,var(--primary) 50%,transparent);pointer-events:none;z-index:6;animation:comparison-placement-pulse 1.5s ease-in-out infinite}@keyframes comparison-placement-pulse{0%,to{opacity:.6}50%{opacity:1}}.comparison-panel__video--placement{cursor:crosshair}.comparison-toolbar__btn--note:hover{background:var(--highlight-ghost);color:var(--primary)}.comparison-toolbar__btn--note:hover svg{color:var(--primary)}.comparison-toolbar__btn--cancel{color:var(--text-tertiary)}.comparison-toolbar__btn--cancel:hover{background:var(--highlight-ghost);color:var(--text-secondary)}.comparison-toolbar__placement-hint{display:flex;align-items:center;gap:7px;font-size:var(--text-sm);font-weight:600;color:var(--text-muted);padding:8px 16px;animation:comparison-toolbar-morph .2s ease-out both}.comparison-toolbar__placement-hint svg{color:var(--primary)}@media(max-height:420px){.comparison-review__panels{padding:8px;gap:8px}.comparison-panel__label{font-size:var(--text-xs);margin-bottom:4px}.comparison-panel__video{border-radius:8px}.comparison-scrubber{padding:24px 2px 0}.comparison-marker__badge{width:18px;height:18px;font-size:10px}.comparison-marker__stem{height:4px}.comparison-marker{width:36px}.comparison-marker--selected .comparison-marker__badge{width:22px;height:22px;font-size:11px}.comparison-toolbar{margin-top:8px;padding:4px}.comparison-toolbar__btn{padding:5px 12px;font-size:var(--text-xs)}.comparison-crop-badge{width:34px;height:34px;top:6px;right:6px}.comparison-header{padding:6px 8px;min-height:38px}.comparison-header__back{width:34px;height:34px}.comparison-header__step-badge{width:24px;height:24px;font-size:11px}}@media(prefers-reduced-motion:reduce){.comparison-marker,.comparison-trim-handle{animation:none}.comparison-header__save--saved svg,.comparison-header__save--error svg{animation:none}.comparison-header__spinner,.comparison-toolbar__btn,.comparison-toolbar__trim-btn,.comparison-toolbar__placement-hint,.comparison-note-bubble{animation:none}}@keyframes prf-countdown-pop{0%{transform:scale(2);opacity:0}15%{transform:scale(1);opacity:1}80%{transform:scale(1);opacity:1}to{transform:scale(.8);opacity:0}}@keyframes prf-go-flash{0%{transform:scale(.5);opacity:0}30%{transform:scale(1.1);opacity:1}50%{transform:scale(1);opacity:1}to{transform:scale(1.2);opacity:0}}@keyframes prf-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes prf-card-in{0%{opacity:0;transform:scale(.92) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes prf-rec-pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes prf-webcam-reveal{0%{opacity:0}to{opacity:1}}.prf-page{display:flex;flex-direction:column;width:100dvw;height:100dvh;background:var(--bg-primary);position:relative;overflow:hidden}.prf-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100dvh;gap:16px;background:var(--bg-primary);color:var(--text-secondary);font-size:var(--text-base)}.prf-upload-bar{position:fixed;top:0;left:0;right:0;height:3px;background:var(--shadow-ghost);z-index:20;overflow:hidden}.prf-upload-bar__fill{height:100%;background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--primary) 80%,white));border-radius:0 2px 2px 0;transition:width .3s linear;box-shadow:0 0 6px color-mix(in srgb,var(--primary) 40%,transparent)}.prf-upload-error{position:fixed;top:0;left:0;right:0;padding:4px 12px;background:var(--danger);color:var(--text-on-primary);font-size:var(--text-xs);text-align:center;z-index:20}.prf-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;padding-top:calc(10px + env(safe-area-inset-top,0px));flex-shrink:0;gap:12px;min-height:48px}.prf-header__left{display:flex;align-items:center;gap:10px}.prf-header__back{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast)}.prf-header__back:hover{background:var(--highlight-ghost);color:var(--text-primary)}.prf-header__back:active{transform:scale(.93)}.prf-header__badge{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:var(--text-on-primary);font-size:14px;font-weight:700;flex-shrink:0;box-shadow:0 2px 6px var(--primary-glow)}.prf-header__title{font-size:18px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.prf-panels{flex:1;min-height:0;display:flex;flex-direction:row;gap:16px;padding:0 16px 16px}.prf-panel{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.prf-panel--hidden{flex:0 0 0%;overflow:hidden;opacity:0;pointer-events:none}.prf-panel__label{font-size:var(--text-xs);font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;padding-left:2px;flex-shrink:0}.prf-panel__video{position:relative;border-radius:14px;overflow:hidden;background:var(--background-alt);border:1px solid var(--border);flex:1;min-height:0}.prf-panel__video--clickable{cursor:pointer}.prf-panel__video--dark{background:#111}.prf-panel__video video{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:contain}.prf-play-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:3;cursor:pointer}.prf-play-overlay>svg{width:56px;height:56px;padding:16px;border-radius:999px;background:#00000059;color:#fff;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.2);transition:transform var(--transition-fast),background var(--transition-fast)}.prf-play-overlay:hover>svg{background:#00000080;transform:scale(1.05)}.prf-play-overlay:active>svg{transform:scale(.95)}.prf-scrubber{position:relative;padding:36px 4px 0;flex-shrink:0}.prf-scrubber__track{height:6px;background:var(--border);border-radius:3px;position:relative;cursor:pointer;touch-action:none}.prf-scrubber__fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--primary) 80%,white))}.prf-cta-bar{display:flex;justify-content:center;padding:14px 16px;flex-shrink:0}.prf-cta{padding:14px 40px;border-radius:12px;border:none;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;font-size:16px;font-weight:700;cursor:pointer;box-shadow:0 4px 14px var(--primary-glow);letter-spacing:.01em;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.prf-cta:hover{box-shadow:0 4px 16px var(--primary-glow),0 0 0 3px var(--primary-subtle);transform:translateY(-1px)}.prf-cta:active{transform:scale(.97);box-shadow:0 1px 6px var(--primary-glow)}.prf-cta:disabled{opacity:.4;cursor:not-allowed;transform:none}.prf-intro-overlay{position:fixed;inset:0;background:#0000004d;backdrop-filter:blur(12px) saturate(110%);-webkit-backdrop-filter:blur(12px) saturate(110%);display:flex;align-items:center;justify-content:center;z-index:15;animation:prf-overlay-in .3s ease-out both;padding:16px}.prf-intro-card{background:var(--surface);border-radius:20px;padding:32px 40px;max-width:400px;width:100%;text-align:center;box-shadow:0 4px 16px #00000014,0 16px 48px #0000001f;animation:prf-card-in .4s .1s cubic-bezier(.16,1,.3,1) both}.prf-intro-card__heading{font-size:24px;font-weight:800;color:var(--text-primary);margin:0 0 24px;letter-spacing:-.02em}.prf-intro-card__flow{display:flex;align-items:flex-start;position:relative;margin:0 0 24px;padding:0 12px}.prf-intro-card__flow:before{content:"";position:absolute;top:18px;left:calc(16.667% + 6px);right:calc(16.667% + 6px);height:2px;background:var(--border);border-radius:1px}.prf-intro-flow-step{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;position:relative;z-index:1}.prf-intro-flow-step__circle{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;font-size:15px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px var(--primary-glow)}.prf-intro-flow-step__label{font-size:12px;font-weight:600;color:var(--text-secondary);letter-spacing:.04em}.prf-intro-card__reassurance{font-size:14px;color:var(--text-muted);line-height:1.6;margin:0 0 24px}.prf-intro-card__cta{width:100%;padding:14px 24px;border-radius:12px;border:none;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;font-size:16px;font-weight:700;cursor:pointer;box-shadow:0 4px 12px var(--primary-glow);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.prf-intro-card__cta:hover{box-shadow:0 4px 16px var(--primary-glow),0 0 0 3px var(--primary-subtle);transform:translateY(-1px)}.prf-intro-card__cta:active{transform:scale(.97);box-shadow:0 1px 6px var(--primary-glow)}.prf-countdown-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;z-index:9;transition:background .4s ease,backdrop-filter .4s ease}.prf-countdown-overlay--dimmed{background:#0003;backdrop-filter:blur(3px) saturate(110%);-webkit-backdrop-filter:blur(3px) saturate(110%)}.prf-countdown-overlay__number{font-size:120px;line-height:1;font-weight:800;font-variant-numeric:tabular-nums;color:#ffffffe6;text-shadow:0 0 80px rgba(255,255,255,.35),0 0 40px rgba(255,255,255,.2),0 4px 20px rgba(0,0,0,.5);animation:prf-countdown-pop .95s cubic-bezier(.16,1,.3,1) both;will-change:transform,opacity}.prf-countdown-overlay__text{font-size:16px;font-weight:600;color:#ffffffd9;text-shadow:0 2px 8px rgba(0,0,0,.5);letter-spacing:.03em}.prf-countdown-overlay__go{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:96px;font-weight:900;color:#fff;text-shadow:0 0 60px color-mix(in srgb,var(--primary) 60%,transparent),0 0 120px color-mix(in srgb,var(--primary) 30%,transparent),0 4px 20px rgba(0,0,0,.4);background:#00000040;animation:prf-go-flash .8s cubic-bezier(.16,1,.3,1) both;z-index:10}.prf-panel__video video.prf-video--mirrored{transform:scaleX(-1)}.prf-panel__video video.prf-video--cover{object-fit:cover}.prf-video--hidden{position:absolute;inset:0;opacity:0;pointer-events:none}.prf-panels--recording .prf-panel:first-child{flex:0 0 0%;opacity:0;overflow:hidden;transition:flex-grow .7s cubic-bezier(.4,0,.2,1),flex-basis .7s cubic-bezier(.4,0,.2,1),opacity .5s cubic-bezier(.4,0,.2,1)}.prf-panels--recording .prf-panel--active:first-child{flex:1;opacity:1}.prf-panels--recording .prf-panel--user{flex:1;transition:flex-grow .7s cubic-bezier(.4,0,.2,1),flex-basis .7s cubic-bezier(.4,0,.2,1)}.prf-panel--user .prf-panel__video video{transform:scaleX(-1)}.prf-rec-indicator{position:absolute;top:8px;right:10px;display:flex;align-items:center;gap:6px;padding:4px 10px 4px 8px;border-radius:999px;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:3}.prf-rec-indicator__dot{width:8px;height:8px;border-radius:50%;background:var(--danger);box-shadow:0 0 6px color-mix(in srgb,var(--danger) 60%,transparent);animation:prf-rec-pulse 1.2s ease-in-out infinite}.prf-rec-indicator__timer{font-size:12px;font-weight:700;font-variant-numeric:tabular-nums;color:#fff}.prf-mobile-fullscreen{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#000;overflow:hidden;z-index:5;opacity:0;transition:opacity .3s ease}.prf-mobile-fullscreen.is-ready{opacity:1}.prf-mobile-fullscreen>.prf-video{width:100%;height:100%;display:block;object-fit:contain}.prf-video--behind{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .4s ease-out}.prf-video--fade-in{animation:prf-overlay-in .4s ease-out both}.prf-video--mirrored{transform:scaleX(-1)}.prf-webcam-fullscreen{position:absolute;inset:0;animation:prf-webcam-reveal .5s .15s ease-out both}.prf-webcam-fullscreen video{width:100%;height:100%;display:block;object-fit:cover}.prf-back-btn{position:fixed;top:calc(8px + env(safe-area-inset-top,0px));left:8px;z-index:10;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:#00000040;color:#fff;cursor:pointer;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:background var(--transition-fast),opacity .3s ease}.prf-back-btn:hover{background:#00000059}.prf-back-btn:active{transform:scale(.96)}.prf-back-btn.is-hidden{opacity:0;pointer-events:none}.prf-webcam-pip{position:absolute;top:8px;right:8px;width:45%;aspect-ratio:3 / 4;border-radius:12px;border:2px solid rgba(255,255,255,.25);box-shadow:0 4px 16px #0006;overflow:hidden;z-index:5;touch-action:none;cursor:grab;transition:box-shadow var(--transition-fast)}.prf-webcam-pip:active{cursor:grabbing;box-shadow:0 8px 24px #00000080}.prf-webcam-pip video{width:100%;height:100%;display:block;object-fit:cover}.prf-fab{display:flex;align-items:center;justify-content:center;border:none;cursor:pointer;color:#fff;position:absolute;bottom:calc(32px + env(safe-area-inset-bottom,0px));left:50%;transform:translate(-50%);z-index:10;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.prf-fab:active{transform:translate(-50%) scale(.92)}.prf-fab--start{width:auto;height:auto;padding:16px 32px;border-radius:999px;background:linear-gradient(135deg,var(--primary),var(--primary-dark));box-shadow:0 4px 20px var(--primary-glow),0 0 0 4px color-mix(in srgb,var(--primary) 15%,transparent);font-size:16px;font-weight:700;letter-spacing:.01em}.prf-fab--demo{bottom:calc(90px + env(safe-area-inset-bottom,0px));padding:10px 20px;border-radius:999px;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:13px;font-weight:600;opacity:.7}.prf-cta--demo{background:var(--surface);color:var(--text-secondary);border:1px solid var(--border);box-shadow:none;font-size:14px;padding:10px 24px;opacity:.7}.prf-cta--demo:hover{opacity:1;box-shadow:none;transform:none}.prf-stop-btn{position:absolute;bottom:calc(32px + env(safe-area-inset-bottom,0px));left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:10;transition:opacity .3s ease,transform .3s ease}.prf-stop-btn__circle{width:72px;height:72px;border-radius:50%;border:4px solid rgba(255,255,255,.8);background:#0003;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 20px #0000004d;transition:transform var(--transition-fast)}.prf-stop-btn__circle:active{transform:scale(.92)}.prf-stop-btn__square{width:24px;height:24px;border-radius:4px;background:var(--danger)}.prf-stop-btn__label{font-size:16px;font-weight:600;color:#ffffffd9;text-shadow:0 1px 6px rgba(0,0,0,.5)}.prf-stop-btn.is-hidden{opacity:0;transform:translate(-50%) translateY(20px);pointer-events:none}@media(max-width:768px)and (orientation:portrait){.prf-intro-card{padding:24px 20px;border-radius:16px}.prf-intro-card__heading{font-size:20px;margin-bottom:18px}.prf-intro-card__flow{margin-bottom:18px;padding:0 8px}.prf-intro-card__flow:before{top:15px;left:calc(16.667% + 4px);right:calc(16.667% + 4px)}.prf-intro-flow-step__circle{width:30px;height:30px;font-size:13px}.prf-intro-flow-step__label{font-size:11px}.prf-intro-card__reassurance{font-size:12px;line-height:1.55;margin-bottom:18px}.prf-intro-card__cta{padding:12px 20px;border-radius:10px;font-size:15px}.prf-countdown-overlay__number{font-size:96px}.prf-countdown-overlay__text{font-size:14px}.prf-countdown-overlay{gap:12px}}@media(max-height:420px){.prf-panels{padding:0 8px;gap:8px}.prf-header{padding:6px 8px;min-height:40px}.prf-cta{padding:10px 32px;font-size:14px;border-radius:10px}.prf-cta-bar{padding:8px}.prf-scrubber{padding:24px 2px 0}}@media(prefers-reduced-motion:reduce){.prf-intro-overlay,.prf-intro-card,.prf-countdown-overlay__number,.prf-countdown-overlay__go,.prf-rec-indicator__dot{animation:none}.prf-panels--recording .prf-panel:first-child,.prf-panels--recording .prf-panel--user,.prf-video--behind{transition:none}.prf-video--fade-in,.prf-webcam-fullscreen{animation:none}.prf-mobile-fullscreen,.prf-stop-btn,.prf-stop-btn__circle,.prf-webcam-pip{transition:none}.prf-play-overlay>svg{transition:none}.prf-cta,.prf-back-btn,.prf-header__back{transition:none}}.print-only{display:none}.annotation-sheet-header{display:flex;align-items:center;gap:8px;padding:10px 16px 10px 8px;border-bottom:1px solid var(--border)}.annotation-sheet-back{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:6px;border-radius:8px;font-family:inherit;flex-shrink:0;transition:color var(--transition-fast),background var(--transition-fast)}.annotation-sheet-back:hover{color:var(--text-primary);background:var(--surface-hover)}.annotation-sheet-header-info{flex:1;min-width:0;display:flex;align-items:center;gap:10px}.annotation-sheet-step-badge{display:inline-block;padding:2px 8px;border-radius:5px;font-size:var(--text-base);font-weight:700;color:var(--primary);background:var(--primary-subtle);white-space:nowrap;flex-shrink:0}.annotation-sheet-title{margin:0;font-size:var(--text-xl);font-weight:600;color:var(--text-primary);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.annotation-sheet-title-link{display:inline;padding:0;border:none;background:transparent;font:inherit;color:inherit;cursor:pointer;transition:color var(--transition-fast)}.annotation-sheet-title-link:hover{color:var(--primary)}.annotation-sheet-count{font-size:var(--text-base);color:var(--text-tertiary);white-space:nowrap;flex-shrink:0}.annotation-sheet-print-btn{font-size:var(--text-sm);flex-shrink:0}.annotation-sheet-toast--error{margin:12px 24px 0;padding:10px 16px;border-radius:8px;font-size:var(--text-sm);background:var(--danger-subtle, rgba(239, 68, 68, .1));border:1px solid var(--danger, #ef4444);color:var(--danger, #ef4444)}.annotation-sheet-print-header h1{margin:0 0 2px;font-size:20px;color:#111}.annotation-sheet-print-header p{margin:0;font-size:14px;color:#555}.asheet-progress{padding:8px 16px;background:color-mix(in srgb,var(--primary) 6%,transparent);border-bottom:1px solid color-mix(in srgb,var(--primary) 15%,transparent)}.asheet-progress-bar{height:3px;background:var(--border);border-radius:2px;overflow:hidden;margin-bottom:6px}.asheet-progress-fill{height:100%;background:var(--primary);border-radius:2px;transition:width .4s ease}.asheet-progress-text{display:flex;align-items:center;gap:6px;font-size:var(--text-xs);font-weight:600;color:var(--primary)}.asheet-progress-spinner{animation:asheet-spin 1s linear infinite}@keyframes asheet-spin{to{transform:rotate(360deg)}}.annotation-sheet-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:28px 24px;max-width:1320px;align-items:start}.annotation-sheet-grid .asheet-card{background:var(--bg-secondary, var(--surface));border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:0 1px 3px var(--shadow-ghost),0 4px 12px var(--shadow-ghost);transition:border-color var(--transition-fast),box-shadow var(--transition-normal),transform var(--transition-normal);animation:asheet-card-enter .4s ease-out backwards;animation-delay:calc(var(--card-index, 0) * .06s)}.annotation-sheet-grid .asheet-card:hover{border-color:var(--border-hover);box-shadow:0 4px 8px var(--shadow-subtle),0 12px 28px var(--shadow-ghost);transform:translateY(-2px)}@keyframes asheet-card-enter{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.asheet-card-frame{position:relative;aspect-ratio:.7;background:var(--letterbox-color, #000);overflow:hidden}.asheet-card-image{width:100%;height:100%;object-fit:cover;display:block}.asheet-card-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--text-tertiary);background:var(--surface-alt, var(--background-alt))}.asheet-card-shimmer{position:relative;width:100%;height:100%;background:linear-gradient(110deg,var(--surface) 30%,color-mix(in srgb,var(--text-primary) 6%,var(--surface)) 50%,var(--surface) 70%);background-size:250% 100%;animation:asheet-shimmer 2s ease-in-out infinite;display:flex;align-items:center;justify-content:center}@keyframes asheet-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.asheet-card-extracting{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--text-tertiary);font-size:var(--text-xs);font-weight:600;z-index:2}.asheet-card-extracting svg{opacity:.4}.asheet-card-marker{position:absolute;transform:translate(-50%,-50%);z-index:2;pointer-events:none;display:flex;align-items:center;justify-content:center}.asheet-card-marker--pending{opacity:.4}.asheet-card-marker-ring{position:relative;z-index:2;transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.asheet-card-marker-pulse{position:absolute;width:40px;height:40px;border-radius:50%;border:1.5px solid rgba(255,255,255,.3);opacity:0;z-index:1}.asheet-card:hover .asheet-card-marker-pulse{animation:asheet-marker-ping 1.2s ease-out}@keyframes asheet-marker-ping{0%{transform:scale(.5);opacity:.25}to{transform:scale(1.6);opacity:0}}.asheet-card-marker-ring--v1{width:32px;height:32px;border-radius:50%;background:transparent;border:1.5px solid rgba(255,255,255,.5);box-shadow:0 0 8px #0000004d,0 0 2px #00000026}.asheet-card:hover .asheet-card-marker-ring--v1{border-color:#ffffffa6;box-shadow:0 0 10px #00000059,0 0 3px #0003;transform:scale(1.08)}.asheet-card-marker-ring--v2{width:30px;height:30px;border-radius:50%;background:transparent;border:1px solid rgba(255,255,255,.6);box-shadow:0 0 6px #ffffff40,0 0 14px #ffffff14}.asheet-card:hover .asheet-card-marker-ring--v2{border-color:#ffffffbf;box-shadow:0 0 8px #ffffff59,0 0 18px #ffffff1f;transform:scale(1.08)}.asheet-card-marker-ring--v3{width:32px;height:32px;border-radius:50%;background:transparent;border:1px solid rgba(255,255,255,.5);box-shadow:0 0 6px #0003;animation:asheet-marker-breathe 2.5s ease-in-out infinite}@keyframes asheet-marker-breathe{0%,to{border-color:#ffffff4d;box-shadow:0 0 4px #00000026}50%{border-color:#ffffffa6;box-shadow:0 0 8px #00000040}}.asheet-card:hover .asheet-card-marker-ring--v3{animation-play-state:paused;border-color:#ffffffa6;transform:scale(1.08)}.asheet-card-marker-ring--v4{width:32px;height:32px;border-radius:50%;background:transparent;border:1.5px dashed rgba(255,255,255,.45);box-shadow:0 0 6px #00000040}.asheet-card:hover .asheet-card-marker-ring--v4{border-color:#fff9;transform:scale(1.08)}.asheet-card-marker-ring--v5{width:28px;height:28px;border-radius:50%;background:transparent;border:1.5px solid rgba(255,255,255,.45);box-shadow:0 0 8px #00000040;position:relative}.asheet-card-marker-ring--v5:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.28)}.asheet-card:hover .asheet-card-marker-ring--v5{border-color:#fff9;transform:scale(1.08)}.asheet-card:hover .asheet-card-marker-ring--v5:before{border-color:#fff6}.annotation-sheet-grid .asheet-card-body{display:flex;align-items:flex-start;gap:12px;padding:20px 22px 22px;background:var(--bg-secondary, var(--surface));border-top:1px solid var(--highlight-ghost, var(--border))}.asheet-card-number{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;min-width:30px;border-radius:50%;background:var(--primary-subtle);color:var(--primary);font-size:15px;font-weight:700;font-variant-numeric:tabular-nums;flex-shrink:0;line-height:1;margin-top:1px;transition:background var(--transition-fast),box-shadow var(--transition-fast)}.asheet-card:hover .asheet-card-number{background:var(--primary-glow);box-shadow:0 0 0 3px var(--primary-subtle)}.annotation-sheet-grid .asheet-card-text{margin:0;font-size:var(--text-lg);line-height:1.5;color:var(--text-primary);padding-top:1px}.annotation-sheet-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:80px 24px;text-align:center;color:var(--text-secondary)}.annotation-sheet-empty h2{margin:0;font-size:var(--text-lg);color:var(--text-primary)}.annotation-sheet-empty p{margin:0;font-size:var(--text-base)}@media(max-width:960px){.annotation-sheet-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.annotation-sheet-grid{grid-template-columns:repeat(2,1fr);gap:16px;padding:16px}.annotation-sheet-header{padding:10px 12px 10px 6px}.annotation-sheet-count{display:none}.asheet-progress{padding:8px 12px}}@media(max-width:600px){.annotation-sheet-print-btn span{display:none}}@media(max-width:480px){.annotation-sheet-grid{grid-template-columns:1fr;gap:12px}}@media print{.no-print{display:none!important}.print-only{display:block!important}body{background:#fff!important;color:#111!important}.annotation-sheet-print-header{padding:0 0 12px;margin-bottom:12px;border-bottom:2px solid #ddd}.annotation-sheet-grid{grid-template-columns:repeat(4,1fr);gap:12px;padding:0}.annotation-sheet-grid .asheet-card{page-break-inside:avoid;border-color:#ddd;box-shadow:none;animation:none;transform:none}.annotation-sheet-grid .asheet-card-body{border-top-color:#eee}.annotation-sheet-grid .asheet-card-text{color:#111}.asheet-card-marker-ring--v1,.asheet-card-marker-ring--v2,.asheet-card-marker-ring--v4{border-color:#0006;box-shadow:none}.asheet-card-marker-ring--v3{border-color:#0006;box-shadow:none;animation:none}.asheet-card-marker-ring--v5{border-color:#00000059;box-shadow:none}.asheet-card-marker-ring--v5:before{border-color:#0003}.asheet-card-marker-pulse,.asheet-variant-switcher{display:none}}@keyframes accountPageFadeIn{0%{opacity:0}to{opacity:1}}@keyframes accountCardSlideUp{0%{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes accountFieldFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.account-page{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:0;background:var(--bg-primary);animation:accountPageFadeIn .4s ease-out;overflow:hidden}.account-card{width:100%;height:100%;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;justify-content:flex-start;background:var(--bg-primary);border:none;border-radius:0;padding:1.5rem 1.5rem 2rem;padding-top:max(1.5rem,var(--safe-area-top));box-shadow:none;animation:accountCardSlideUp .5s cubic-bezier(.16,1,.3,1) .1s both;box-sizing:border-box;overflow-y:auto;overflow-x:hidden}.account-header{text-align:center;margin-bottom:1.5rem}.account-branding{display:flex;flex-direction:column;align-items:center;margin-bottom:1rem;animation:accountFieldFadeIn .4s ease-out .15s both}.account-cuy{width:140px;height:auto}.account-title-img{width:180px;height:auto;margin-top:.25rem}.account-card[data-branding="0"] .account-header{margin-bottom:2rem}.account-card[data-branding="0"] .account-header h1{font-size:2rem;margin-bottom:.75rem}.account-card[data-branding="1"] .account-cuy{width:110px;margin-bottom:.25rem}.account-card[data-branding="1"] .account-branding{margin-bottom:1.25rem}.account-card[data-branding="2"] .account-branding{margin-bottom:1rem}.account-header h1{display:none;margin:0 0 .5rem;font-size:1.5rem;font-weight:700;color:var(--text-primary);letter-spacing:-.02em;animation:accountFieldFadeIn .4s ease-out .2s both}.account-toggle{display:flex;gap:0;margin-bottom:1.5rem;background:transparent;border:none;border-bottom:1px solid var(--border);border-radius:0;padding:0;animation:accountFieldFadeIn .4s ease-out .3s both;position:relative}.account-toggle-slider{position:absolute;bottom:-1px;left:0;width:50%;height:2px;background:linear-gradient(90deg,var(--primary) 0%,var(--pink) 100%);border-radius:2px 2px 0 0;transition:transform var(--transition-slow);z-index:1}.account-toggle[data-active=right] .account-toggle-slider{transform:translate(100%)}.account-toggle button{flex:1;border:none;background:transparent;color:var(--text-tertiary);padding:.75rem 1rem;border-radius:0;cursor:pointer;font-weight:500;font-size:.95rem;transition:color var(--transition-normal);position:relative;z-index:0}.account-toggle button:hover{color:var(--text-secondary)}.account-toggle button.active{color:var(--text-primary);font-weight:600}.account-google-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.875rem 1.25rem;background:var(--surface);border:1px solid var(--border);border-radius:12px;color:var(--text-secondary);font-size:.95rem;font-weight:500;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);animation:accountFieldFadeIn .4s ease-out .5s both}.account-google-btn:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-hover);color:var(--text-primary);box-shadow:var(--shadow-md-light)}.account-google-btn:active:not(:disabled){transform:scale(.98)}.account-google-btn:disabled{opacity:.6;cursor:default}.account-google-logo{width:20px;height:20px;flex-shrink:0}.account-google-spinner{width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spinner-rotate .9s linear infinite;flex-shrink:0}.account-divider{display:flex;align-items:center;gap:1rem;margin:1.25rem 0;animation:accountFieldFadeIn .4s ease-out .34s both}.account-divider:before,.account-divider:after{content:"";flex:1;height:1px;background:var(--border)}.account-divider span{color:var(--text-muted);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.account-form{display:grid;grid-template-columns:1fr;gap:1rem;animation:accountFieldFadeIn .4s ease-out .38s both;contain:layout style}.account-field-wrapper{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--transition-slow),margin var(--transition-slow);margin-bottom:-1rem;will-change:grid-template-rows;contain:layout style}.account-field-wrapper.expanded{grid-template-rows:1fr;margin-bottom:0}.account-field-inner{overflow:hidden}.account-field-inner .account-field{opacity:0;transition:opacity var(--transition-normal)}.account-field-wrapper.expanded .account-field-inner .account-field{opacity:1;transition:opacity var(--transition-normal) .1s}.account-field{display:flex;flex-direction:column;gap:.5rem;color:var(--text-secondary);font-size:.85rem;font-weight:500}.account-field input{padding:.875rem 1rem;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);font-size:1rem;transition:border-color var(--transition-normal),box-shadow var(--transition-normal),background var(--transition-normal)}.account-field input::placeholder{color:var(--text-muted)}.account-field input:hover{border-color:var(--border-hover)}.account-field input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-subtle);background:var(--surface)}.account-field input:-webkit-autofill,.account-field input:-webkit-autofill:hover,.account-field input:-webkit-autofill:focus,.account-field input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px var(--surface) inset!important;-webkit-text-fill-color:var(--text-primary)!important;caret-color:var(--text-primary);transition:background-color 5000s ease-in-out 0s}.account-remember-wrapper{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--transition-slow),margin var(--transition-slow);margin-top:-1rem;will-change:grid-template-rows;contain:layout style}.account-remember-wrapper.expanded{grid-template-rows:1fr;margin-top:0}.account-remember-inner{overflow:hidden}.account-remember-inner .account-remember{opacity:0;transition:opacity var(--transition-normal)}.account-remember-wrapper.expanded .account-remember-inner .account-remember{opacity:1;transition:opacity var(--transition-normal) .1s}.account-remember{display:flex;align-items:center;gap:.75rem;color:var(--text-secondary);font-size:.85rem;font-weight:500;cursor:pointer;-webkit-user-select:none;user-select:none}.account-remember input{position:absolute;opacity:0;width:0;height:0}.account-remember-box{width:20px;height:20px;border-radius:6px;border:2px solid var(--border);background:var(--surface);display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast);flex-shrink:0}.account-remember:hover .account-remember-box{border-color:var(--border-hover)}.account-remember input:checked+.account-remember-box{background:var(--primary);border-color:var(--primary)}.account-remember input:focus-visible+.account-remember-box{box-shadow:0 0 0 3px var(--primary-subtle)}.account-remember-check{width:12px;height:12px;opacity:0;transform:scale(.5);transition:opacity var(--transition-fast),transform var(--transition-fast)}.account-remember input:checked+.account-remember-box .account-remember-check{opacity:1;transform:scale(1)}.account-error{background:var(--danger-subtle);color:var(--danger);border:1px solid var(--danger-glow);padding:.75rem 1rem;border-radius:10px;font-size:.875rem;font-weight:500;animation:accountFieldFadeIn .25s ease-out}.account-submit{margin-top:.5rem;padding:1rem 1.25rem;border-radius:12px;border:none;background:linear-gradient(135deg,var(--primary) 0%,var(--pink) 100%);color:#fff;font-weight:700;font-size:1rem;cursor:pointer;box-shadow:0 4px 12px var(--primary-glow),0 1px 2px var(--shadow-subtle);transition:transform var(--transition-normal),box-shadow var(--transition-normal),opacity var(--transition-normal)}.account-submit:disabled{opacity:.6;cursor:default;transform:none}.account-submit:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--primary-glow),0 2px 4px var(--shadow-subtle)}.account-submit:not(:disabled):active{transform:translateY(0) scale(.98);box-shadow:0 2px 8px var(--primary-glow),0 1px 2px var(--shadow-subtle)}.account-footer{margin-top:2rem;display:flex;flex-direction:column;align-items:center;gap:.35rem;color:var(--text-tertiary);font-size:.85rem;animation:accountFieldFadeIn .4s ease-out .45s both}.account-footer a{color:var(--text-secondary);text-decoration:none;font-weight:500;transition:color var(--transition-normal)}.account-footer a:hover{color:var(--primary)}@media(min-height:700px)and (max-width:599px){.account-card{justify-content:center;padding-top:1.5rem}}@media(max-height:600px)and (max-width:599px){.account-cuy{width:100px}.account-title-img{width:140px}.account-branding{margin-bottom:.75rem}.account-header,.account-toggle{margin-bottom:1rem}.account-form{gap:.75rem}.account-footer{margin-top:1.25rem}}@media(min-width:600px){.account-page{padding:1.5rem;background:radial-gradient(ellipse 80% 50% at 50% 0%,var(--primary-subtle),transparent 50%),radial-gradient(ellipse 60% 40% at 80% 100%,var(--pink-subtle),transparent 50%),var(--bg-primary)}.account-card{width:min(400px,calc(100% - 2rem));height:auto;min-height:auto;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:1.75rem;box-shadow:var(--shadow-xl-light),0 0 0 1px var(--shadow-ghost);justify-content:flex-start;overflow:visible;animation:accountCardSlideUp .4s cubic-bezier(.16,1,.3,1) both}.account-branding{display:none}.account-header{margin-bottom:1rem}.account-header h1{display:block;font-size:1.5rem}.account-toggle{margin-bottom:1.25rem}.account-toggle button{font-size:.8rem;padding:.5rem .75rem}.account-form{gap:.75rem}.account-field{font-size:.8rem;gap:.35rem}.account-field input{padding:.625rem .8rem;font-size:.9rem;border-radius:10px}.account-submit{margin-top:.25rem;padding:.75rem 1rem;font-size:.9rem;border-radius:10px}.account-divider{margin:.875rem 0}.account-google-btn{padding:.625rem 1rem;font-size:.875rem;border-radius:10px}.account-footer{flex-direction:row;justify-content:center;gap:.4rem;margin-top:1.25rem}}@media(min-width:768px){.account-card{width:min(420px,calc(100% - 2rem));padding:2rem}.account-header h1{font-size:1.625rem}.account-form{gap:.875rem}.account-field input{padding:.7rem .85rem}.account-submit{padding:.8rem 1.125rem}}.new-project-page{position:fixed;inset:0;background:var(--surface);color:var(--text-primary);display:flex;flex-direction:column;z-index:100;overflow:hidden}.new-project-page{animation:nppEnter .28s cubic-bezier(.16,1,.3,1) both}.new-project-page.closing{animation:nppExit .2s cubic-bezier(.4,0,1,1) forwards}@keyframes nppEnter{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes nppExit{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.98)}}.new-project-page__header{display:flex;align-items:center;gap:12px;padding:clamp(8px,1.5vh,12px) 16px;padding-top:calc(clamp(8px,1.5vh,12px) + var(--safe-area-top, 0px));flex-shrink:0}.new-project-page__back{width:44px;height:44px;border-radius:12px;border:none;background:var(--surface-hover);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent;flex-shrink:0}.new-project-page__back svg{width:22px;height:22px}.new-project-page__back:hover{background:var(--border);color:var(--text-primary)}.new-project-page__back:active{transform:scale(.95)}.new-project-page__back:disabled{opacity:.4;cursor:not-allowed}.new-project-page__header-status{font-size:14px;font-weight:600;color:var(--text-tertiary)}.new-project-page__body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:0 20px;padding-bottom:calc(clamp(12px,2vh,24px) + var(--safe-area-bottom, 0px));max-width:480px;width:100%;margin:0 auto}.new-project-page .nps-content{flex:1;min-height:0;display:flex;flex-direction:column;gap:clamp(10px,2vh,20px)}.new-project-page .nps-hero{display:flex;flex-direction:column;align-items:center;text-align:center;padding:clamp(4px,1vh,12px) 0;flex-shrink:1;animation:nppContentIn .4s cubic-bezier(.16,1,.3,1) 80ms both}.new-project-page .nps-hero-icon{width:clamp(56px,9vh,80px);height:clamp(56px,9vh,80px);border-radius:clamp(16px,2.5vh,22px);margin-bottom:clamp(8px,1.5vh,16px);flex-shrink:0}.new-project-page .nps-hero-icon svg{width:clamp(28px,4.5vh,40px);height:clamp(28px,4.5vh,40px)}.new-project-page .nps-hero-title{font-size:clamp(22px,3.5vh,28px);margin-bottom:clamp(2px,.5vh,6px)}.new-project-page .nps-hero-subtitle{font-size:clamp(13px,2vh,16px);max-width:300px;line-height:1.4}@media(max-height:600px){.new-project-page .nps-hero-subtitle{display:none}}@media(max-height:500px){.new-project-page .nps-hero{display:none}}.new-project-page .nps-segmented{padding:4px;border-radius:12px;flex-shrink:0;animation:nppContentIn .4s cubic-bezier(.16,1,.3,1) .14s both}.new-project-page .nps-segment{padding:clamp(10px,1.5vh,14px) 16px;font-size:14px}.new-project-page .nps-file-preview{padding:clamp(10px,1.5vh,16px);flex-shrink:0;animation:nppContentIn .4s cubic-bezier(.16,1,.3,1) .2s both}.new-project-page .nps-file-icon{width:clamp(40px,6vh,52px);height:clamp(40px,6vh,52px);border-radius:12px}.new-project-page .nps-file-icon svg{width:clamp(20px,3vh,26px);height:clamp(20px,3vh,26px)}.new-project-page .nps-file-name{font-size:14px}.new-project-page .nps-file-size{font-size:12px}.new-project-page .nps-video-type{flex:1;min-height:0;display:flex;flex-direction:column;gap:clamp(6px,1vh,12px);overflow:hidden}.new-project-page .nps-video-type-title{font-size:clamp(11px,1.5vh,13px);flex-shrink:0}.new-project-page .nps-video-type-list{flex:1;min-height:0;display:flex;flex-direction:column;gap:clamp(4px,.8vh,8px);overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.new-project-page .nps-video-type-list::-webkit-scrollbar{display:none}.new-project-page .nps-video-type-option{padding:clamp(8px,1.2vh,14px) clamp(10px,1.5vh,16px);border-radius:10px;gap:clamp(8px,1vh,14px);flex-shrink:0}.new-project-page .nps-radio{width:clamp(16px,2.2vh,20px);height:clamp(16px,2.2vh,20px)}.new-project-page .nps-video-type-option.selected .nps-radio:after{width:clamp(6px,.9vh,8px);height:clamp(6px,.9vh,8px)}.new-project-page .nps-option-label{font-size:clamp(13px,1.8vh,15px)}.new-project-page .nps-option-desc{font-size:clamp(11px,1.4vh,13px)}.new-project-page .nps-create-btn{padding:clamp(12px,2vh,18px) 20px;font-size:clamp(14px,1.8vh,16px);flex-shrink:0;margin-top:auto}.new-project-page .nps-upload-zone{flex:1;min-height:0;padding:clamp(20px,4vh,48px) 24px;animation:nppContentIn .4s cubic-bezier(.16,1,.3,1) .2s both}.new-project-page .nps-upload-icon-wrap{width:clamp(60px,10vh,88px);height:clamp(60px,10vh,88px)}.new-project-page .nps-upload-icon-inner{inset:clamp(8px,1.2vh,12px)}.new-project-page .nps-upload-icon-inner svg{width:clamp(24px,4vh,36px);height:clamp(24px,4vh,36px)}.new-project-page .nps-upload-title{font-size:clamp(15px,2.2vh,18px)}.new-project-page .nps-upload-hint{font-size:clamp(12px,1.6vh,14px)}.new-project-page .nps-youtube{flex:1;min-height:0;display:flex;flex-direction:column;gap:clamp(10px,1.5vh,16px)}.new-project-page .nps-btn{padding:clamp(12px,1.8vh,16px) 20px;font-size:clamp(13px,1.7vh,15px)}.new-project-page .nps-progress{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.new-project-page .nps-progress-ring{width:clamp(60px,10vh,80px);height:clamp(60px,10vh,80px);margin-bottom:clamp(12px,2vh,20px)}.new-project-page .nps-progress-ring svg{width:100%;height:100%}.new-project-page .nps-auth{flex:1;min-height:0;display:flex;flex-direction:column;gap:clamp(12px,2vh,20px);overflow-y:auto;scrollbar-width:none}.new-project-page .nps-auth::-webkit-scrollbar{display:none}.new-project-page .nps-auth-header{flex-shrink:0}.new-project-page .nps-auth-icon{width:clamp(48px,7vh,64px);height:clamp(48px,7vh,64px);margin-bottom:clamp(8px,1.5vh,16px)}.new-project-page .nps-auth-title{font-size:clamp(18px,2.8vh,22px)}.new-project-page .nps-auth-subtitle{font-size:clamp(13px,1.8vh,15px)}.new-project-page .nps-field input{padding:clamp(10px,1.5vh,14px) 14px;font-size:16px}@keyframes nppContentIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-height:650px){.new-project-page .nps-content{gap:8px}.new-project-page .nps-video-type{gap:4px}.new-project-page .nps-video-type-option{padding:8px 12px}.new-project-page .nps-option-desc{display:none}}@media(max-height:550px){.new-project-page__header{padding:6px 12px;padding-top:calc(6px + var(--safe-area-top, 0px))}.new-project-page__back{width:40px;height:40px}.new-project-page .nps-hero-icon{display:none}.new-project-page .nps-hero-title{font-size:20px}.new-project-page .nps-segment{padding:8px 12px}}.nps-content{display:flex;flex-direction:column;gap:20px}.nps-file-input{display:none}.nps-hero{display:flex;flex-direction:column;align-items:center;text-align:center;padding:8px 0 4px}.nps-hero-icon{width:72px;height:72px;border-radius:20px;background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--primary-tint) 100%);border:1px solid var(--primary-border);display:flex;align-items:center;justify-content:center;margin-bottom:16px;position:relative;overflow:hidden}.nps-hero-icon:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 30%,rgba(255,255,255,.4) 50%,transparent 70%);opacity:0;transition:opacity .3s ease}.nps-hero:hover .nps-hero-icon:before{opacity:1}.nps-hero-icon svg{width:36px;height:36px;color:var(--primary);transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.nps-hero:hover .nps-hero-icon svg{transform:scale(1.1)}.nps-hero-title{font-size:24px;font-weight:700;color:var(--text-primary);margin:0 0 6px;letter-spacing:-.02em}.nps-hero-subtitle{font-size:15px;color:var(--text-secondary);margin:0;line-height:1.5;max-width:280px}.nps-segmented{display:flex;padding:4px;background:var(--surface-hover);border-radius:12px;position:relative;gap:4px}.nps-segmented:before{content:"";position:absolute;top:4px;bottom:4px;width:calc(50% - 6px);background:var(--surface);border-radius:9px;box-shadow:0 1px 3px var(--shadow-subtle),0 2px 8px var(--shadow-ghost);transition:transform .25s cubic-bezier(.4,0,.2,1);z-index:0}.nps-segmented[data-active=youtube]:before{transform:translate(calc(100% + 4px))}.nps-segment{flex:1;padding:12px 16px;border:none;background:transparent;color:var(--text-tertiary);font-size:14px;font-weight:600;cursor:pointer;transition:color .2s ease;position:relative;z-index:1;border-radius:8px;display:flex;align-items:center;justify-content:center;gap:8px;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.nps-segment:hover:not(.active){color:var(--text-secondary)}.nps-segment.active{color:var(--text-primary)}.nps-segment:disabled{opacity:.5;cursor:not-allowed}.nps-segment-icon{width:18px;height:18px;opacity:.7;transition:opacity .2s ease,transform .2s ease}.nps-segment.active .nps-segment-icon{opacity:1}.nps-segment:hover .nps-segment-icon{transform:scale(1.1)}.nps-upload-zone{position:relative;padding:40px 24px;border-radius:16px;background:linear-gradient(135deg,var(--surface-hover) 0%,var(--surface) 100%);border:2px solid var(--border);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.nps-upload-zone:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 120%,var(--primary-subtle) 0%,transparent 60%);opacity:0;transition:opacity .4s ease}.nps-upload-zone:hover{border-color:var(--primary-border);transform:translateY(-2px);box-shadow:0 8px 32px var(--shadow-soft),0 0 0 1px var(--primary-border)}.nps-upload-zone:hover:before{opacity:1}.nps-upload-zone:active{transform:translateY(0) scale(.99)}.nps-upload-content{display:flex;flex-direction:column;align-items:center;gap:16px;position:relative;z-index:1}.nps-upload-icon-wrap{position:relative;width:80px;height:80px}.nps-upload-icon-ring{position:absolute;inset:0;border-radius:50%;border:2px dashed var(--primary-border);opacity:.5;animation:nps-ring-pulse 3s ease-in-out infinite}@keyframes nps-ring-pulse{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.08);opacity:.3}}.nps-upload-zone:hover .nps-upload-icon-ring{animation-duration:1.5s;border-color:var(--primary);opacity:.7}.nps-upload-icon-inner{position:absolute;inset:10px;border-radius:50%;background:linear-gradient(135deg,var(--primary-subtle) 0%,transparent 100%);display:flex;align-items:center;justify-content:center;transition:all .3s ease}.nps-upload-zone:hover .nps-upload-icon-inner{background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--primary-tint) 100%);transform:scale(1.05)}.nps-upload-icon-inner svg{width:32px;height:32px;color:var(--primary);transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.nps-upload-zone:hover .nps-upload-icon-inner svg{transform:translateY(-3px)}.nps-upload-text{text-align:center}.nps-upload-title{font-size:17px;font-weight:600;color:var(--text-primary);margin:0 0 4px}.nps-upload-hint{font-size:14px;color:var(--text-tertiary);margin:0}.nps-file-preview{display:flex;align-items:center;gap:14px;padding:16px;border-radius:14px;background:linear-gradient(135deg,var(--surface-hover) 0%,var(--surface) 100%);border:1px solid var(--border);animation:nps-slide-in .3s cubic-bezier(.34,1.56,.64,1)}@keyframes nps-slide-in{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.nps-file-icon{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--primary-tint) 100%);border:1px solid var(--primary-border);color:var(--primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.nps-file-icon svg{width:26px;height:26px}.nps-file-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.nps-file-name{font-size:15px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nps-file-size{font-size:13px;color:var(--text-tertiary)}.nps-file-remove{width:40px;height:40px;border:none;background:transparent;color:var(--text-muted);border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.nps-file-remove:hover{color:var(--danger);background:var(--danger-subtle)}.nps-file-remove svg{width:18px;height:18px}.nps-youtube{display:flex;flex-direction:column;gap:16px;animation:nps-slide-in .3s cubic-bezier(.34,1.56,.64,1)}.nps-video-type{display:flex;flex-direction:column;gap:12px;animation:nps-slide-in .3s cubic-bezier(.34,1.56,.64,1)}.nps-video-type-title{font-size:13px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin:0}.nps-video-type-list{display:flex;flex-direction:column;gap:8px}.nps-video-type-option{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface);cursor:pointer;text-align:left;transition:all .2s ease;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.nps-video-type-option:hover:not(.selected){border-color:var(--primary-border);background:var(--surface-hover)}.nps-video-type-option:active:not(.selected){transform:scale(.99)}.nps-video-type-option.selected{border-color:var(--primary);background:var(--primary-subtle);box-shadow:0 0 0 3px var(--primary-tint)}.nps-radio{width:20px;height:20px;border-radius:50%;border:2px solid var(--border-hover);background:var(--surface);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.nps-video-type-option:hover .nps-radio{border-color:var(--primary-border)}.nps-video-type-option.selected .nps-radio{border-color:var(--primary);background:var(--primary)}.nps-video-type-option.selected .nps-radio:after{content:"";width:8px;height:8px;border-radius:50%;background:#fff}.nps-option-content{display:flex;flex-direction:column;gap:2px}.nps-option-label{font-size:15px;font-weight:600;color:var(--text-primary)}.nps-option-desc{font-size:13px;color:var(--text-tertiary)}.nps-progress{display:flex;flex-direction:column;align-items:center;padding:32px 0;text-align:center;animation:nps-slide-in .3s ease}.nps-progress-ring{position:relative;width:80px;height:80px;margin-bottom:20px}.nps-progress-ring svg{transform:rotate(-90deg)}.nps-ring-bg{fill:none;stroke:var(--surface-hover);stroke-width:4}.nps-ring-fill{fill:none;stroke:var(--primary);stroke-width:4;stroke-linecap:round;transition:stroke-dasharray .3s ease;filter:drop-shadow(0 0 8px var(--primary-glow))}.nps-progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:18px;font-weight:700;color:var(--primary)}.nps-progress-label{font-size:17px;font-weight:600;color:var(--text-primary);margin:0 0 4px}.nps-progress-filename{font-size:14px;color:var(--text-tertiary);margin:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nps-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:16px 20px;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);border:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.nps-btn:disabled{opacity:.5;cursor:not-allowed}.nps-btn svg{width:18px;height:18px;flex-shrink:0}.nps-btn-primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;box-shadow:0 4px 14px var(--primary-glow),0 0 0 1px var(--primary-border)}.nps-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary) 100%);transform:translateY(-2px);box-shadow:0 8px 24px var(--primary-glow),0 0 0 1px var(--primary)}.nps-btn-primary:active:not(:disabled){transform:translateY(0) scale(.98);box-shadow:0 2px 8px var(--primary-glow)}.nps-create-btn{margin-top:4px;animation:nps-slide-in .3s ease}.nps-btn-secondary{background:var(--surface);border:1px solid var(--border);color:var(--text-primary);box-shadow:0 1px 3px var(--shadow-subtle)}.nps-btn-secondary:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-hover);transform:translateY(-1px);box-shadow:0 4px 12px var(--shadow-soft)}.nps-btn-secondary:active:not(:disabled){transform:translateY(0)}.nps-btn-tertiary{background:transparent;border:1px solid transparent;color:var(--text-tertiary);padding:12px 16px}.nps-btn-tertiary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-secondary)}.nps-btn-google{background:var(--surface);border:1px solid var(--border);color:var(--text-secondary);box-shadow:0 1px 3px var(--shadow-subtle)}.nps-btn-google:hover:not(:disabled){border-color:var(--border-hover);background:var(--surface-hover);color:var(--text-primary);transform:translateY(-1px);box-shadow:0 4px 12px var(--shadow-soft)}.nps-google-logo{width:18px;height:18px}.nps-spinner{width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:nps-spin .8s linear infinite}@keyframes nps-spin{to{transform:rotate(360deg)}}.nps-error{padding:14px 16px;background:var(--danger-subtle);border:1px solid var(--danger-glow);border-radius:12px;color:var(--danger);font-size:14px;font-weight:500;animation:nps-shake .4s ease}@keyframes nps-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}.nps-auth{display:flex;flex-direction:column;gap:20px;animation:nps-slide-in .3s ease}.nps-auth-header{text-align:center;margin-bottom:4px}.nps-auth-icon{width:64px;height:64px;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--primary-tint) 100%);border:1px solid var(--primary-border);border-radius:18px;color:var(--primary)}.nps-auth-icon svg{width:32px;height:32px}.nps-auth-title{font-size:22px;font-weight:700;color:var(--text-primary);margin:0 0 8px;letter-spacing:-.02em}.nps-auth-subtitle{font-size:15px;color:var(--text-secondary);margin:0;line-height:1.5}.nps-auth-form{display:flex;flex-direction:column;gap:14px}.nps-field{display:flex;flex-direction:column;gap:6px}.nps-field-label{font-size:13px;font-weight:600;color:var(--text-secondary)}.nps-field input{padding:14px 16px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);font-size:16px;transition:all .2s ease}.nps-field input::placeholder{color:var(--text-muted)}.nps-field input:hover:not(:disabled){border-color:var(--border-hover)}.nps-field input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-subtle)}.nps-field input:disabled{opacity:.5}.nps-field input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--surface) inset!important;-webkit-text-fill-color:var(--text-primary)!important}.nps-divider{display:flex;align-items:center;gap:16px;margin:4px 0}.nps-divider:before,.nps-divider:after{content:"";flex:1;height:1px;background:var(--border)}.nps-divider span{font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}.nps-auth-footer{text-align:center;font-size:14px;color:var(--text-tertiary);margin-top:4px}.nps-link{color:var(--primary);text-decoration:none;font-weight:600}.nps-link:hover{color:var(--primary-dark)}.nps-separator{margin:0 8px;color:var(--text-muted)}.nps-text-btn{background:none;border:none;color:var(--text-tertiary);font-size:14px;cursor:pointer;padding:0}.nps-text-btn:hover{color:var(--text-secondary)}.fortress-test-page{display:flex;height:100vh;background:var(--bg-primary);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.fortress-test-controls{width:320px;flex-shrink:0;background:linear-gradient(180deg,var(--surface) 0%,var(--bg-primary) 100%);border-right:1px solid var(--highlight-ghost);padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:20px}.fortress-test-header h1{font-size:20px;font-weight:700;margin:0 0 4px;background:linear-gradient(135deg,var(--primary-light) 0%,var(--pink) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.fortress-test-header p{font-size:var(--text-sm);color:var(--text-muted);margin:0}.fortress-test-scenarios{display:flex;flex-direction:column;gap:8px}.scenario-btn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;background:var(--highlight-ghost);border:1px solid var(--highlight-ghost);border-radius:10px;cursor:pointer;transition:all var(--transition-fast);text-align:left}.scenario-btn:hover{background:var(--highlight-ghost);border-color:var(--highlight-subtle)}.scenario-btn.active{background:var(--primary-subtle);border-color:var(--primary-border)}.scenario-name{font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.scenario-desc{font-size:var(--text-xs);color:var(--text-muted);line-height:1.3}.scenario-btn.active .scenario-name{color:var(--primary-muted)}.fortress-test-actions{display:flex;flex-direction:column;gap:10px}.toggle-btn{padding:10px 16px;background:linear-gradient(135deg,var(--primary-alt) 0%,var(--primary) 100%);border:none;border-radius:8px;color:#fff;font-weight:600;font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast)}.toggle-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px var(--primary-glow)}.debug-toggle{display:flex;align-items:center;gap:8px;font-size:var(--text-xs);color:var(--text-secondary);cursor:pointer}.debug-toggle input{accent-color:var(--primary)}.fortress-test-status{background:var(--shadow-medium);border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:6px}.status-item{display:flex;justify-content:space-between;font-size:var(--text-xs)}.status-label{color:var(--text-muted)}.status-value{color:var(--primary-light);font-family:SF Mono,Monaco,monospace}.fortress-test-preview{flex:1;min-width:0;position:relative}.fortress-test-preview .fortress-layout{height:100%}.mock-video-player{width:100%;height:100%;background:linear-gradient(135deg,var(--surface) 0%,var(--bg-primary) 100%);border-radius:12px;border:1px solid var(--highlight-ghost);display:flex;align-items:center;justify-content:center;aspect-ratio:16 / 9;max-height:100%}.mock-video-content{text-align:center}.mock-video-icon{font-size:48px;color:var(--primary-border);margin-bottom:12px}.mock-video-text{font-size:18px;font-weight:600;color:var(--text-secondary);margin-bottom:4px}.mock-video-subtext{font-size:var(--text-xs);color:var(--text-muted)}.mock-timeline{height:100%;background:linear-gradient(180deg,var(--surface) 0%,var(--bg-primary) 100%);border-radius:10px;border:1px solid var(--highlight-ghost);padding:16px 20px;display:flex;flex-direction:column;justify-content:center;gap:8px}.mock-timeline-bar{height:8px;background:var(--highlight-faint);border-radius:4px;overflow:hidden}.mock-timeline-progress{height:100%;background:linear-gradient(90deg,var(--primary) 0%,var(--pink) 100%);border-radius:4px}.mock-timeline-label{font-size:var(--text-xs);color:var(--text-muted);text-align:center}.mock-buttons{display:flex;align-items:center;justify-content:center;gap:10px;position:relative}.mock-btn{padding:0 20px;height:42px;border-radius:10px;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast);border:1px solid var(--highlight-ghost)}.mock-btn-secondary{background:linear-gradient(145deg,var(--surface-hover) 0%,var(--surface) 100%);color:var(--text-primary)}.mock-btn-primary{background:linear-gradient(145deg,var(--primary-light) 0%,var(--primary) 100%);color:#fff;border-color:var(--primary-glow)}.mock-btn-small{padding:0 14px;height:34px;font-size:var(--text-xs);background:var(--highlight-ghost);color:var(--text-secondary)}.mock-buttons-label{position:absolute;right:10px;font-size:var(--text-xs);color:var(--text-tertiary)}.mock-extra-row{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;background:var(--primary-subtle);border:1px dashed var(--primary-glow);border-radius:8px;position:relative}.mock-extra-row .mock-buttons-label{position:static;margin-left:auto}@media(max-width:960px){.fortress-test-page{flex-direction:column}.fortress-test-controls{width:100%;max-height:40vh;border-right:none;border-bottom:1px solid var(--highlight-ghost)}.fortress-test-preview{flex:1;min-height:0}}.test-hover-page{min-height:100vh;background:var(--bg-primary);color:var(--text-primary);padding:40px;font-family:Outfit,sans-serif}.test-hover-page h1{font-size:28px;margin:0 0 8px}.test-hover-page>p{color:var(--text-muted);margin:0 0 32px}.test-section{margin-bottom:24px;padding:20px;background:var(--highlight-ghost);border:1px solid var(--highlight-ghost);border-radius:12px}.test-section h2{font-size:var(--text-sm);font-weight:500;margin:0 0 16px;color:var(--text-tertiary)}.test-blur-parent{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.test-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.test-box{background:var(--overlay-medium);border:2px dashed var(--highlight-subtle);border-radius:1rem;padding:32px 16px;text-align:center;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100px}.test-label{color:var(--text-tertiary);font-size:var(--text-xs);font-weight:600;letter-spacing:.05em}.test-icon{color:var(--primary);margin-bottom:8px}.test-minimal:hover{border-color:var(--primary-border);background:var(--primary-subtle)}.test-fast{transition:border-color .03s ease-out,background .03s ease-out}.test-fast:hover{border-color:var(--primary-border);background:var(--primary-subtle)}.test-slow{transition:border-color var(--transition-slow),background var(--transition-slow)}.test-slow:hover{border-color:var(--primary-border);background:var(--primary-subtle)}.test-fast-all{transition:all .03s ease-out}.test-fast-all:hover{border-color:var(--primary-border);background:var(--primary-subtle)}.test-slow-all{transition:all var(--transition-slow)}.test-slow-all:hover{border-color:var(--primary-border);background:var(--primary-subtle)}.test-positioned{position:relative;overflow:hidden}.test-modal-btn{padding:12px 24px;background:var(--primary);color:var(--text-primary);border:none;border-radius:8px;font-size:var(--text-sm);font-weight:500;cursor:pointer;margin-top:8px}.test-modal-btn:hover{background:var(--primary-dark)}.test-modal-overlay{position:fixed;inset:0;background:var(--overlay-dark);backdrop-filter:blur(20px) saturate(120%);-webkit-backdrop-filter:blur(20px) saturate(120%);display:flex;align-items:center;justify-content:center;z-index:1000}.test-modal{background:linear-gradient(165deg,#14141ee6,#0c0c12f2);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border-radius:24px;border:1px solid var(--highlight-ghost);padding:32px;max-width:600px;width:90%}.test-modal h2{font-size:16px;margin:0 0 20px;color:var(--text-primary)}.test-close-btn{margin-top:20px;padding:10px 20px;background:var(--highlight-faint);color:var(--text-primary);border:none;border-radius:8px;cursor:pointer}.test-close-btn:hover{background:var(--highlight-subtle)}.test-replica-overlay{background:var(--overlay-dark);backdrop-filter:blur(20px) saturate(120%);-webkit-backdrop-filter:blur(20px) saturate(120%);padding:20px;border-radius:12px}.test-replica-container{width:100%;position:relative;transform:translateY(30px);opacity:0;transition:all .6s cubic-bezier(.16,1,.3,1)}.test-replica-container.visible{transform:translateY(0);opacity:1}.test-replica-glow{position:absolute;inset:-1px;border-radius:28px;background:linear-gradient(135deg,var(--primary-subtle),var(--blue-subtle),var(--primary-subtle));opacity:0;transition:opacity var(--transition-slow);filter:blur(1px)}.test-replica-card{position:relative;background:linear-gradient(165deg,#14141ee6,#0c0c12f2);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border-radius:24px;border:1px solid var(--highlight-ghost);padding:24px;box-shadow:0 25px 80px var(--shadow-heavy),0 8px 32px var(--shadow-medium),inset 0 1px 0 var(--highlight-ghost);transition:border-color var(--transition-slow),box-shadow var(--transition-slow);overflow:hidden}.test-replica-noise{position:absolute;inset:0;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");pointer-events:none;border-radius:24px}.test-card-blur-only{position:relative;background:linear-gradient(165deg,#14141ee6,#0c0c12f2);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border-radius:24px;border:1px solid var(--highlight-ghost);padding:24px}.test-card-overflow-only{position:relative;background:linear-gradient(165deg,#14141ee6,#0c0c12f2);border-radius:24px;border:1px solid var(--highlight-ghost);padding:24px;overflow:hidden}.test-card-transition-only{position:relative;background:linear-gradient(165deg,#14141ee6,#0c0c12f2);border-radius:24px;border:1px solid var(--highlight-ghost);padding:24px;transition:border-color var(--transition-slow),box-shadow var(--transition-slow)}.test-complete-page{position:relative;min-height:100vh;background:var(--bg-primary)}.test-complete-controls{position:fixed;top:16px;left:16px;z-index:1000;background:#1e1e23f2;border:1px solid var(--highlight-faint);border-radius:12px;padding:16px;width:280px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 32px var(--shadow-heavy)}.test-complete-controls h3{margin:0 0 12px;font-size:var(--text-sm);font-weight:600;color:var(--text-primary, #fff);text-transform:uppercase;letter-spacing:.05em}.test-complete-state-buttons{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.test-complete-state-btn{display:flex;flex-direction:column;align-items:flex-start;padding:10px 12px;background:var(--highlight-ghost);border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all var(--transition-fast);text-align:left}.test-complete-state-btn:hover{background:var(--highlight-faint);border-color:var(--highlight-faint)}.test-complete-state-btn.active{background:var(--primary-subtle);border-color:var(--primary)}.test-complete-state-btn .btn-label{font-size:var(--text-sm);font-weight:600;color:var(--text-primary, #fff)}.test-complete-state-btn .btn-desc{font-size:var(--text-xs);color:var(--text-tertiary, #888);margin-top:2px}.test-complete-state-btn.active .btn-label{color:var(--primary)}.test-complete-upload-control{margin-bottom:16px;padding:12px;background:var(--highlight-ghost);border-radius:8px}.test-complete-upload-control label{display:block;font-size:var(--text-xs);color:var(--text-secondary, #aaa);margin-bottom:8px}.test-complete-upload-control strong{color:var(--primary);font-weight:600}.test-complete-upload-control input[type=range]{width:100%;height:6px;-webkit-appearance:none;appearance:none;background:var(--highlight-faint);border-radius:3px;outline:none}.test-complete-upload-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:var(--primary);border-radius:50%;cursor:pointer}.test-complete-simulate-btn{width:100%;padding:12px;background:linear-gradient(135deg,var(--primary),var(--primary-hover));border:none;border-radius:8px;color:#fff;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast);margin-bottom:12px}.test-complete-simulate-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px var(--primary-glow)}.test-complete-simulate-btn:disabled{opacity:.6;cursor:not-allowed}.test-complete-hint{font-size:var(--text-xs);color:var(--text-tertiary, #666);line-height:1.5;margin:0}@media(max-width:768px){.test-complete-controls{position:fixed;inset:auto 0 0;width:100%;border-radius:16px 16px 0 0;max-height:50vh;overflow-y:auto}.test-complete-state-buttons{flex-direction:row;flex-wrap:wrap}.test-complete-state-btn{flex:1 1 calc(50% - 3px);min-width:120px}}.test-processing-page{position:relative;min-height:100vh;background:var(--bg-primary)}.test-processing-controls{position:fixed;top:16px;left:16px;z-index:1000;background:#1e1e23f2;border:1px solid var(--highlight-faint);border-radius:12px;padding:16px;width:320px;max-height:calc(100vh - 32px);overflow-y:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 32px var(--shadow-heavy)}.test-processing-controls h3{margin:0 0 16px;font-size:var(--text-sm);font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.05em}.test-processing-section{margin-bottom:16px}.test-processing-section-label{display:block;font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.test-processing-section-label strong{color:var(--primary)}.test-processing-state-buttons{display:flex;flex-wrap:wrap;gap:4px}.test-processing-state-btn{padding:6px 10px;background:var(--highlight-ghost);border:1px solid transparent;border-radius:6px;cursor:pointer;transition:all var(--transition-fast);font-size:var(--text-xs)}.test-processing-state-btn:hover{background:var(--highlight-faint)}.test-processing-state-btn.active{background:var(--primary-subtle);border-color:var(--primary)}.test-processing-state-btn .btn-label{font-weight:500;color:var(--text-primary)}.test-processing-state-btn.active .btn-label{color:var(--primary)}.test-processing-view-buttons{display:flex;gap:6px}.test-processing-view-btn{flex:1;padding:8px 12px;background:var(--highlight-ghost);border:1px solid transparent;border-radius:6px;cursor:pointer;transition:all var(--transition-fast);font-size:var(--text-xs);font-weight:500;color:var(--text-secondary)}.test-processing-view-btn:hover{background:var(--highlight-faint);color:var(--text-primary)}.test-processing-view-btn.active{background:var(--primary-subtle);border-color:var(--primary);color:var(--primary)}.test-processing-section input[type=range]{width:100%;height:6px;-webkit-appearance:none;appearance:none;background:var(--highlight-faint);border-radius:3px;outline:none}.test-processing-section input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:var(--primary);border-radius:50%;cursor:pointer}.test-processing-simulate-btn{width:100%;padding:12px;background:linear-gradient(135deg,var(--primary),var(--primary-hover));border:none;border-radius:8px;color:#fff;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.test-processing-simulate-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px var(--primary-glow)}.test-processing-simulate-btn:disabled{opacity:.6;cursor:not-allowed}.test-processing-anim-buttons{display:grid;grid-template-columns:repeat(5,1fr);gap:4px}.test-processing-anim-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;background:var(--highlight-ghost);border:1px solid transparent;border-radius:6px;cursor:pointer;transition:all var(--transition-fast)}.test-processing-anim-btn:hover{background:var(--highlight-faint)}.test-processing-anim-btn.active{background:var(--primary-subtle);border-color:var(--primary)}.test-processing-anim-btn .anim-emoji{font-size:18px}.test-processing-anim-btn .anim-label{font-size:var(--text-xs);font-weight:500;color:var(--text-tertiary)}.test-processing-anim-btn.active .anim-label{color:var(--primary)}.test-processing-hint{margin:8px 0 0;font-size:var(--text-xs);color:var(--text-tertiary);font-style:italic}@media(max-width:600px){.processing-progress.hide-on-mobile{display:none}}@media(max-width:768px){.test-processing-controls{position:fixed;inset:auto 0 0;width:100%;max-height:40vh;border-radius:16px 16px 0 0}}.projects-page{min-height:100vh;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 50%,var(--bg-primary) 100%);position:relative;overflow-x:hidden}.projects-ambient{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse 80% 50% at 20% 20%,var(--primary-subtle) 0%,transparent 50%),radial-gradient(ellipse 60% 40% at 80% 80%,var(--primary-subtle) 0%,transparent 50%);z-index:0}.projects-container{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:48px 32px 80px}.projects-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:48px}.projects-header-content{flex:1}.projects-title{font-size:36px;font-weight:700;letter-spacing:-.03em;margin:0 0 8px;background:linear-gradient(135deg,var(--text-primary) 0%,var(--overlay-medium) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.projects-subtitle{font-size:16px;color:var(--text-tertiary, #6b7280);margin:0}.projects-new-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;font-size:var(--text-sm);font-weight:600;color:var(--text-on-primary);background:linear-gradient(135deg,var(--primary-alt) 0%,var(--primary-light) 100%);border:none;border-radius:12px;cursor:pointer;transition:all var(--transition-normal);box-shadow:0 4px 20px var(--primary-glow)}.projects-new-btn:hover{transform:translateY(-2px);box-shadow:0 6px 30px var(--primary-border)}.projects-new-btn span{font-size:18px;font-weight:500}.projects-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:16px;color:var(--text-secondary, #9ca3af)}.projects-error h2{color:var(--text-primary, #fff);margin:0}.projects-error p{margin:0;color:var(--text-tertiary, #6b7280)}.projects-error button{margin-top:8px;padding:12px 24px;background:var(--highlight-faint);border:1px solid var(--highlight-faint);border-radius:8px;color:var(--text-on-primary);cursor:pointer;transition:all var(--transition-normal)}.projects-error button:hover{background:var(--highlight-subtle)}.projects-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:80px 32px;background:linear-gradient(135deg,var(--shadow-soft) 0%,var(--shadow-subtle) 100%);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--highlight-ghost);border-radius:24px}.projects-empty-icon{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--primary-subtle) 100%);border-radius:20px;margin-bottom:24px}.projects-empty-icon svg{width:40px;height:40px;color:var(--primary-light)}.projects-empty-title{font-size:24px;font-weight:600;color:var(--text-primary, #fff);margin:0 0 12px}.projects-empty-text{font-size:var(--text-base);color:var(--text-tertiary, #6b7280);margin:0 0 32px;max-width:360px;line-height:1.6}.projects-empty-btn{display:inline-flex;align-items:center;gap:10px;padding:14px 28px;font-size:var(--text-base);font-weight:600;color:var(--text-on-primary);background:linear-gradient(135deg,var(--primary-alt) 0%,var(--primary-light) 100%);border:none;border-radius:12px;cursor:pointer;transition:all var(--transition-normal);box-shadow:0 4px 20px var(--primary-glow)}.projects-empty-btn:hover{transform:translateY(-2px);box-shadow:0 6px 30px var(--primary-border)}.projects-empty-btn svg{width:18px;height:18px}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:24px}.project-card{display:flex;flex-direction:column;background:linear-gradient(135deg,var(--shadow-soft) 0%,var(--shadow-subtle) 100%);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--highlight-ghost);border-radius:16px;overflow:hidden;transition:all var(--transition-slow)}.project-card:hover{transform:translateY(-4px);border-color:var(--primary-subtle);box-shadow:0 20px 40px -15px var(--shadow-heavy),0 0 60px -20px var(--primary-subtle)}.project-card.complete{border-color:var(--success-subtle)}.project-card.complete:hover{border-color:var(--success-border);box-shadow:0 20px 40px -15px var(--shadow-heavy),0 0 60px -20px var(--success-subtle)}.project-card-preview{position:relative;aspect-ratio:16 / 9;background:var(--shadow-medium);overflow:hidden}.project-card-video{width:100%;height:100%;object-fit:cover;opacity:.85;transition:opacity var(--transition-normal)}.project-card:hover .project-card-video{opacity:1}.project-card-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--primary-subtle) 100%)}.project-card-placeholder svg{width:48px;height:48px;color:var(--highlight-subtle)}.project-card-duration{position:absolute;bottom:8px;right:8px;padding:4px 8px;font-size:var(--text-xs);font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-on-primary);background:var(--overlay-dark);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:4px}.project-card-content{flex:1;padding:20px;display:flex;flex-direction:column;gap:12px}.project-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.project-card-title{font-size:16px;font-weight:600;color:var(--text-primary, #fff);margin:0;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.project-card-status{flex-shrink:0;padding:4px 10px;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--status-color);background:color-mix(in srgb,var(--status-color) 15%,transparent);border-radius:100px}.project-card-subtitle{font-size:var(--text-sm);color:var(--text-tertiary, #6b7280);margin:0;line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.project-card-meta{display:flex;align-items:center;gap:16px;margin-top:auto;padding-top:4px}.project-card-meta-item{display:flex;align-items:center;gap:6px;font-size:var(--text-xs);color:var(--text-tertiary, #6b7280)}.project-card-meta-item svg{width:14px;height:14px;opacity:.7}.project-card-phase{display:flex;align-items:center;gap:6px;padding:4px 10px;font-size:var(--text-xs);font-weight:500;color:var(--phase-color);background:color-mix(in srgb,var(--phase-color) 12%,transparent);border-radius:100px}.project-card-phase svg{width:12px;height:12px;animation:spin 1.5s linear infinite}.project-card-complete-badge{display:flex;align-items:center;gap:6px;font-size:var(--text-xs);font-weight:500;color:var(--success)}.project-card-complete-badge svg{width:14px;height:14px}.project-card-actions{padding:16px 20px;border-top:1px solid var(--highlight-ghost)}.project-card-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 20px;font-size:var(--text-sm);font-weight:600;border:none;border-radius:10px;cursor:pointer;transition:all var(--transition-normal)}.project-card-btn svg{width:16px;height:16px;transition:transform var(--transition-normal)}.project-card-btn.primary{color:var(--text-on-primary);background:linear-gradient(135deg,var(--primary-alt) 0%,var(--primary-light) 100%);box-shadow:0 2px 12px var(--primary-glow)}.project-card-btn.primary:hover{box-shadow:0 4px 20px var(--primary-glow)}.project-card-btn.primary:hover svg{transform:translate(3px)}.project-card.complete .project-card-btn.primary{background:linear-gradient(135deg,var(--success) 0%,var(--success-light) 100%);box-shadow:0 2px 12px var(--success-border)}.project-card.complete .project-card-btn.primary:hover{box-shadow:0 4px 20px var(--success-glow)}@media(max-width:768px){.projects-container{padding:32px 20px 60px}.projects-header{flex-direction:column;align-items:stretch;gap:16px}.projects-title{font-size:28px}.projects-new-btn{width:100%;justify-content:center}.projects-grid{grid-template-columns:1fr;gap:16px}.projects-empty{padding:48px 24px}.project-card-content{padding:16px}.project-card-actions{padding:12px 16px}}@media(max-width:480px){.projects-container{padding:24px 16px 48px}.projects-title{font-size:24px}.project-card-meta{flex-wrap:wrap;gap:8px}}.pm-page{--pm-phase-processing: var(--warning, #f59e0b);--pm-phase-onboarding: #a855f7;--pm-phase-complete: var(--success, #22c55e);--pm-phase-failed: var(--danger, #ef4444);--pm-phase-aborted: var(--warning, #f59e0b)}.pm-page{display:flex;flex-direction:column;padding:0 48px}.pm-header-actions{display:flex;align-items:center;gap:12px}.pm-select-btn{padding:12px 20px;min-height:48px;background:transparent;border:1px solid var(--border);border-radius:10px;color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.pm-select-btn:hover{background:var(--surface-hover);border-color:var(--border-hover);color:var(--text-primary)}.pm-admin-link{padding:10px 14px;background:var(--danger-subtle);border:1px solid var(--danger-subtle);border-radius:10px;color:var(--danger);font-size:var(--text-xs);font-weight:600;text-decoration:none;text-transform:uppercase;letter-spacing:.5px;transition:all var(--transition-fast)}.pm-admin-link:hover{background:var(--danger-subtle);border-color:var(--danger)}.pm-bulk-actions{display:flex;align-items:center;gap:12px}.pm-bulk-count{font-size:var(--text-sm);font-weight:500;color:var(--text-secondary)}.pm-bulk-btn{display:flex;align-items:center;gap:8px;padding:12px 18px;min-height:48px;background:transparent;border:1px solid var(--border);border-radius:10px;color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.pm-bulk-btn:hover{background:var(--surface-hover);border-color:var(--border-hover);color:var(--text-primary)}.pm-bulk-btn-danger{color:var(--danger);border-color:var(--danger-glow)}.pm-bulk-btn-danger:hover{background:var(--danger-subtle);border-color:var(--danger)}.pm-filters{display:flex;align-items:center;gap:8px;padding:16px 0;border-bottom:1px solid var(--border)}.pm-filter-btn{display:flex;align-items:center;gap:8px;padding:12px 18px;min-height:48px;background:transparent;border:1px solid transparent;border-radius:10px;color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.pm-filter-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.pm-filter-btn.active{background:var(--primary-subtle);border-color:var(--primary-border, var(--primary-glow));color:var(--primary)}.pm-filter-count{padding:2px 8px;background:var(--surface-hover);border-radius:10px;font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary)}.pm-filter-btn.active .pm-filter-count{background:var(--primary-subtle);color:var(--primary-light, var(--primary-muted))}.pm-content{flex:1;padding:24px 0 48px}.pm-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.pm-table-wrapper{background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow-x:auto;overflow-y:hidden}.pm-table{width:100%;border-collapse:collapse;font-size:var(--text-sm);table-layout:fixed}.pm-table-header{background:var(--surface-hover)}.pm-th{padding:14px 20px;text-align:left;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);border-bottom:1px solid var(--border)}.pm-th-checkbox,.pm-cell-checkbox{width:0;min-width:0;max-width:0;padding:0;overflow:hidden;opacity:0;transition:all var(--transition-normal)}.pm-th-checkbox.visible,.pm-cell-checkbox.visible{width:56px;min-width:56px;max-width:56px;padding:16px 8px 16px 20px;opacity:1}.pm-th-project{min-width:200px}.pm-th-status{min-width:160px}.pm-th-created,.pm-th-updated{min-width:90px}.pm-th-action{width:auto;min-width:120px;text-align:right}.pm-th-progress{min-width:100px}.pm-table-row{transition:background var(--transition-fast)}.pm-table-row.clickable{cursor:pointer}.pm-table-row.clickable:hover{background:var(--surface-hover)}.pm-table-row.disabled{cursor:default}.pm-table-row.selected,.pm-table-row.selected:hover{background:var(--primary-subtle)}.pm-table-row:not(:last-child) .pm-cell{border-bottom:1px solid var(--border)}.pm-checkbox{width:48px;height:48px;min-width:48px;min-height:48px;border:none;border-radius:10px;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);color:transparent;position:relative}.pm-checkbox:before{content:"";width:24px;height:24px;border:2px solid var(--border-hover);border-radius:6px;background:var(--surface);transition:all var(--transition-fast)}.pm-checkbox:hover:before{border-color:var(--primary-border, var(--primary-border));background:var(--primary-subtle)}.pm-checkbox.checked:before{background:var(--primary-gradient, linear-gradient(135deg, var(--primary-alt) 0%, var(--primary) 100%));border-color:var(--primary)}.pm-checkbox.checked{color:#fff}.pm-checkbox.checked:hover:before{background:var(--primary-gradient-hover, linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 100%));border-color:var(--primary)}.pm-cell{padding:16px 20px;vertical-align:middle;text-align:left}.pm-cell-action{text-align:right}.pm-cell-created,.pm-cell-updated{color:var(--text-tertiary);cursor:default}.pm-project-info{display:flex;align-items:center;gap:14px}.pm-project-thumb{width:48px;height:36px;border-radius:6px;background:var(--surface-hover);overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-tertiary)}.pm-project-thumb img{width:100%;height:100%;object-fit:cover}.pm-project-details{display:flex;flex-direction:column;gap:2px;min-width:0}.pm-project-filename{font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pm-project-id{font-size:var(--text-xs);font-family:SF Mono,Monaco,Inconsolata,monospace;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pm-status-cell{display:flex;flex-direction:column;gap:6px;min-width:160px}.pm-status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:var(--badge-bg);border-radius:6px;font-size:var(--text-xs);font-weight:600;color:var(--badge-color);width:fit-content}.pm-status-badge-dot{width:6px;height:6px;border-radius:50%;background:var(--badge-color);animation:pulseDot 2s ease-in-out infinite}@keyframes pulseDot{0%,to{opacity:1}50%{opacity:.4}}.pm-status-spinner{animation:spinner-rotate 1s linear infinite}.pm-status-mini-spinner{animation:spinner-rotate 1.5s linear infinite;opacity:.6;margin-left:2px}.pm-status-enhancing{flex-direction:row;align-items:center;gap:12px}.pm-status-processing{gap:8px}.pm-status-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.pm-status-percent{font-size:var(--text-sm);font-weight:700;color:var(--badge-color, var(--warning));font-variant-numeric:tabular-nums}.pm-status-progress-track{height:4px;background:var(--surface-hover);border-radius:2px;overflow:hidden;position:relative}.pm-status-progress-fill{height:100%;background:var(--primary-gradient, linear-gradient(90deg, var(--primary) 0%, var(--primary) 50%, var(--primary-light) 100%));background-size:200% 100%;border-radius:2px;transition:width var(--transition-slow);animation:progressShimmer 2s linear infinite;box-shadow:0 0 8px var(--primary-shadow, var(--primary-border))}@keyframes progressShimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.pm-status-detail{font-size:var(--text-xs);color:var(--text-tertiary)}.pm-ellipsis:after{content:"...";display:inline-block;width:0;text-align:left;overflow:hidden;vertical-align:bottom;animation:pm-ellipsis 1.1s steps(4,end) infinite}@keyframes pm-ellipsis{to{width:1.2em}}.pm-status-detail.pm-status-error{color:var(--error-light, var(--danger-muted));max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pm-status-workflow,.pm-status-complete{flex-direction:row;align-items:center;gap:12px}.pm-status-dots{display:flex;gap:4px}.pm-status-dot{width:8px;height:8px;border-radius:50%;background:var(--surface-hover);transition:all var(--transition-slow)}.pm-status-dot.completed{background:var(--primary-gradient, linear-gradient(135deg, var(--primary) 0%, var(--primary) 100%));box-shadow:0 0 6px var(--primary-shadow, var(--primary-border))}.pm-status-complete .pm-status-dot.completed{background:linear-gradient(135deg,var(--pm-complete-color, var(--success)) 0%,var(--success) 100%);box-shadow:0 0 6px var(--success-glow)}.pm-status-dot.current{background:var(--primary-gradient, linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%));animation:pulseDotCurrent 2s ease-in-out infinite}@keyframes pulseDotCurrent{0%,to{transform:scale(1);box-shadow:0 0 6px var(--primary-shadow, var(--primary-border))}50%{transform:scale(1.15);box-shadow:0 0 10px var(--primary-shadow, var(--primary-border))}}.pm-status-v3{flex-direction:column;align-items:flex-start;gap:0}.pm-v3-stepper,.pm-v3-step-wrapper{display:flex;align-items:center}.pm-v3-connector{width:12px;height:2px;background:var(--surface-hover);margin:0 -1px;transition:background var(--transition-normal)}.pm-v3-connector.completed{background:var(--primary-gradient, linear-gradient(90deg, var(--primary) 0%, var(--primary) 100%))}.pm-status-v3--complete .pm-v3-connector.completed{background:linear-gradient(90deg,var(--pm-complete-color, var(--success)) 0%,var(--success) 100%)}.pm-v3-step{width:20px;height:20px;border-radius:50%;background:var(--surface-hover);border:1.5px solid var(--border-hover);display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:700;color:var(--text-tertiary);transition:all var(--transition-normal)}.pm-v3-step.completed{background:var(--primary-gradient, linear-gradient(135deg, var(--primary) 0%, var(--primary) 100%));border-color:transparent;color:var(--text-on-primary)}.pm-status-v3--complete .pm-v3-step.completed{background:linear-gradient(135deg,var(--pm-complete-color, var(--success)) 0%,var(--success) 100%)}.pm-v3-step.current{background:var(--primary-subtle);border-color:var(--primary);color:var(--primary-light, var(--primary-muted));box-shadow:0 0 8px var(--primary-shadow, var(--primary-glow))}.pm-v3-label{font-size:var(--text-xs);font-weight:500;color:var(--primary);margin-top:6px}.pm-status-v3--complete .pm-v3-label{color:var(--pm-complete-color, var(--success))}.pm-status-failed{flex-direction:column;align-items:flex-start;gap:2px}.pm-status-error{font-size:var(--text-xs);color:var(--text-muted);max-width:200px;overflow:hidden;text-overflow:ellipsis}.pm-failed-header{display:flex;align-items:center;gap:10px}.pm-failed-dot{width:10px;height:10px;border-radius:50%;background:var(--danger);flex-shrink:0;box-shadow:0 0 8px var(--danger-glow)}.pm-failed-label{font-size:var(--text-sm);font-weight:600;color:var(--error, var(--danger-light))}.pm-failed-detail{font-size:var(--text-xs);color:var(--text-tertiary);margin-top:5px;padding-left:20px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pm-status-warning{flex-direction:column;align-items:flex-start;gap:0}.pm-warning-header{display:flex;align-items:center;gap:10px}.pm-warning-dot{width:10px;height:10px;border-radius:50%;background:var(--warning);flex-shrink:0;box-shadow:0 0 8px var(--warning-glow, var(--primary-glow))}.pm-warning-label{font-size:var(--text-sm);font-weight:600;color:var(--warning)}.pm-warning-detail{font-size:var(--text-xs);color:var(--text-tertiary);margin-top:5px;padding-left:20px}.pm-action-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;min-height:48px;border:none;border-radius:10px;font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.pm-action-view{background:var(--success-subtle);color:var(--success)}.pm-action-view:hover{background:var(--success-border)}.pm-action-continue{background:var(--primary-gradient, linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%));color:#fff;box-shadow:0 2px 8px var(--primary-shadow, var(--primary-glow))}.pm-action-continue:hover{transform:translateY(-1px);box-shadow:0 4px 12px var(--primary-shadow, var(--primary-glow))}.pm-action-working-spinner{animation:spin 1s linear infinite;color:var(--warning)}.pm-action-unavailable{display:flex;flex-direction:column;align-items:flex-end;gap:3px;padding:4px 0}.pm-action-unavailable-label{font-size:var(--text-xs);font-weight:500;color:var(--warning)}.pm-action-unavailable-reason{font-size:var(--text-xs);color:var(--text-tertiary);opacity:.8}.pm-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center;padding:48px}.pm-empty-icon{width:100px;height:100px;display:flex;align-items:center;justify-content:center;background:var(--primary-subtle);border:1px solid var(--primary-border, var(--primary-subtle));border-radius:24px;color:var(--primary);margin-bottom:24px}.pm-empty-title{margin:0 0 8px;font-size:20px;font-weight:600;color:var(--text-primary)}.pm-empty-text{margin:0 0 24px;font-size:var(--text-sm);color:var(--text-secondary);max-width:300px}.pm-empty-btn{display:flex;align-items:center;gap:8px;padding:14px 28px;min-height:48px;background:var(--primary-gradient, linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%));border:none;border-radius:10px;color:#fff;font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all var(--transition-normal);box-shadow:0 4px 16px var(--primary-shadow, var(--primary-glow))}.pm-empty-btn:hover{transform:translateY(-2px);box-shadow:0 6px 24px var(--primary-shadow, var(--primary-glow))}.pm-th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition-fast);position:relative}.pm-th-sortable:hover{background:var(--surface-hover)}.pm-th-sortable.active{color:var(--primary)}.pm-th-content{display:flex;align-items:center;gap:6px}.pm-th-sort-icon{display:flex;align-items:center;opacity:.4;transition:opacity var(--transition-fast)}.pm-th-sortable:hover .pm-th-sort-icon{opacity:.7}.pm-th-sortable.active .pm-th-sort-icon{opacity:1;color:var(--primary)}.pm-resize-handle{position:absolute;top:0;right:-3px;bottom:0;width:6px;cursor:col-resize;z-index:10;transition:background var(--transition-fast)}.pm-resize-handle:after{content:"";position:absolute;top:25%;bottom:25%;left:50%;width:2px;transform:translate(-50%);background:transparent;border-radius:1px;transition:background var(--transition-fast)}.pm-th-sortable:hover .pm-resize-handle:after,.pm-resize-handle:hover:after{background:var(--primary-border, var(--primary-glow))}.pm-resizing .pm-resize-handle:after{background:var(--primary)}body.pm-resizing{cursor:col-resize!important;-webkit-user-select:none;user-select:none}body.pm-resizing *{cursor:col-resize!important}.pm-pagination{display:flex;align-items:center;justify-content:flex-end;padding:12px 0;margin-top:12px}.pm-pagination-group{display:flex;align-items:center;gap:16px;padding:6px 8px;background:var(--surface);border:1px solid var(--border);border-radius:8px}.pm-pagination-info{font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);font-variant-numeric:tabular-nums;padding:0 4px}.pm-pagination-of{color:var(--text-tertiary);font-weight:400}.pm-pagination-controls{display:flex;align-items:center;gap:2px}.pm-pagination-btn{display:flex;align-items:center;justify-content:center;min-width:48px;height:48px;padding:0 12px;background:transparent;border:1px solid transparent;border-radius:10px;color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.pm-pagination-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.pm-pagination-btn:disabled{opacity:.3;cursor:not-allowed}.pm-pagination-btn.active{background:var(--primary-subtle);border-color:var(--primary-border, var(--primary-glow));color:var(--primary)}.pm-pagination-num{font-variant-numeric:tabular-nums}.pm-pagination-ellipsis{padding:0 2px;color:var(--text-tertiary);font-size:var(--text-xs)}.pm-mobile-view{display:none}.pm-desktop-view{display:block}.pm-card-list{flex-direction:column;gap:10px}.pm-mobile-sort{display:flex;align-items:center;gap:8px;padding:4px 0;background:transparent;border:none;margin-bottom:6px}.pm-mobile-sort-label{font-size:var(--text-xs);font-weight:500;color:var(--text-tertiary);white-space:nowrap}.pm-mobile-sort-select{flex:1;min-width:0}.pm-mobile-sort-select .custom-select-trigger{min-height:32px;padding:6px 10px;font-size:var(--text-sm);background:transparent;border:none}.pm-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px;transition:all var(--transition-fast)}.pm-card.clickable{cursor:pointer}.pm-card.clickable:active{transform:scale(.98);background:var(--surface-hover)}.pm-card.selected{background:var(--primary-subtle);border-color:var(--primary-border, var(--primary-glow))}.pm-card-header{display:flex;align-items:center;gap:12px}.pm-card-thumb{width:36px;height:36px;border-radius:8px;background:var(--surface-hover);overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-tertiary)}.pm-card-thumb img{width:100%;height:100%;object-fit:cover}.pm-card-title-wrap{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.pm-card-title{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.25}.pm-card-timestamp{font-size:var(--text-xs);color:var(--text-tertiary);line-height:1.2}.pm-card-status{margin-top:12px;padding-top:0;border-top:none}.pm-card-status .pm-status-cell{min-width:unset;gap:4px;align-items:flex-start;justify-content:flex-start}.pm-card-status .pm-v3-stepper{display:none}.pm-card-status .pm-v3-label{font-size:var(--text-sm);margin-top:0;font-weight:600;color:var(--primary)}.pm-card-status .pm-status-v3{flex-direction:column;align-items:flex-start}.pm-card-status .pm-status-v3:before{display:none}.pm-card-status .pm-status-complete{flex-direction:column;align-items:flex-start}.pm-card-status .pm-status-complete .pm-status-badge{margin:0}.pm-card-status .pm-status-complete .pm-status-dots{display:none}.pm-card-status .pm-status-failed,.pm-card-status .pm-status-warning{gap:3px}.pm-card-status .pm-failed-header,.pm-card-status .pm-warning-header{gap:8px}.pm-card-status .pm-failed-dot,.pm-card-status .pm-warning-dot{width:8px;height:8px}.pm-card-status .pm-failed-label,.pm-card-status .pm-warning-label{font-size:var(--text-sm)}.pm-card-status .pm-failed-detail,.pm-card-status .pm-warning-detail{padding-left:16px;font-size:var(--text-xs);margin-top:2px}.pm-card-action{margin-top:14px}.pm-card-action .pm-action-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 16px;font-size:var(--text-sm);font-weight:600;border-radius:10px;border:none;cursor:pointer;transition:all var(--transition-fast)}.pm-card-action .pm-action-continue{background:var(--primary);color:var(--text-on-primary)}.pm-card-action .pm-action-continue:active{background:var(--primary-hover, var(--primary-dark));transform:scale(.98)}.pm-card-action .pm-action-view{background:var(--success);color:var(--text-on-primary)}.pm-card-action .pm-action-view:active{background:var(--success-hover, #16a34a);transform:scale(.98)}.pm-card-action .pm-action-unavailable{width:100%;height:44px;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:6px;padding:0;background:none;border-radius:0}.pm-card-action .pm-action-unavailable-label{font-size:var(--text-sm);font-weight:500;color:var(--text-tertiary)}.pm-card-action .pm-action-unavailable-reason{display:none}@media(max-width:1200px){.pm-page{padding:0 32px}.pm-filters{padding:12px 0}.pm-content{padding:20px 0 32px}}@media(max-width:960px){.pm-page{padding:0 24px}.pm-filters{padding:12px 0;overflow-x:auto;-webkit-overflow-scrolling:touch}.pm-filter-btn{white-space:nowrap;flex-shrink:0}.pm-content{padding:16px 0 24px}.pm-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.pm-table{min-width:600px}.pm-th,.pm-cell{padding:12px 16px}.pm-status-cell{min-width:140px}.pm-status-badge{font-size:var(--text-xs);padding:3px 8px}.pm-pagination{justify-content:center}.pm-pagination-group{gap:12px}.pm-pagination-info{font-size:var(--text-xs)}.pm-v3-step{width:22px;height:22px;font-size:var(--text-xs)}.pm-v3-connector{width:8px}}@media(max-width:768px){.pm-desktop-view{display:none}.pm-mobile-view{display:flex}.pm-page{padding:0 16px}.pm-filters{padding:12px 4px 12px 0;gap:6px;overflow-x:auto;overflow-y:visible;scrollbar-width:none;-ms-overflow-style:none;margin-right:-4px}.pm-filters::-webkit-scrollbar{display:none}.pm-filter-btn{padding:12px 16px;font-size:var(--text-sm);border-radius:24px;min-height:48px;flex-shrink:0}.pm-filter-count{padding:2px 6px;font-size:var(--text-xs);flex-shrink:0}.pm-content{padding:12px 0 100px}.pm-pagination{justify-content:center;padding:12px 0}.pm-pagination-group{flex-wrap:wrap;justify-content:center;gap:8px;padding:8px 12px}.pm-pagination-info{font-size:var(--text-sm)}.pm-pagination-btn{min-width:48px;height:48px;font-size:var(--text-sm)}.pm-empty{min-height:280px;padding:32px 20px}.pm-empty-icon{width:72px;height:72px;border-radius:18px}.pm-empty-title{font-size:18px}.pm-empty-text{font-size:var(--text-sm)}.pm-empty-btn{width:100%;justify-content:center;min-height:48px}.pm-bulk-actions{flex-wrap:wrap;gap:8px}.pm-bulk-count{width:100%;text-align:center;font-size:var(--text-sm)}.pm-bulk-btn{flex:1;justify-content:center;min-height:48px;padding:12px 16px;font-size:var(--text-sm)}.pm-header-actions{gap:8px;max-width:100%;overflow:visible}.pm-select-btn{padding:12px 16px;font-size:var(--text-sm);min-height:48px;white-space:nowrap}}@media(max-width:600px){.pm-header-actions .pm-bulk-actions{position:fixed;bottom:0;left:0;right:0;background:var(--surface);border-top:1px solid var(--border);padding:12px 16px;padding-bottom:calc(12px + var(--safe-area-bottom));z-index:100;flex-wrap:nowrap;gap:8px;box-shadow:0 -4px 20px var(--shadow-medium)}.pm-header-actions .pm-bulk-count{width:auto;font-size:var(--text-sm);font-weight:600;flex-shrink:0}.pm-header-actions .pm-bulk-btn{flex:0 0 auto;min-height:48px;padding:12px 16px}}@media(max-width:480px){.pm-page{padding:0 12px}.pm-filters{margin:0 -12px;padding:8px 12px;gap:4px}.pm-filter-btn{padding:12px 14px;font-size:var(--text-sm);min-height:48px}.pm-card{padding:12px;border-radius:10px}.pm-card-header{gap:10px}.pm-card-title{font-size:var(--text-sm)}.pm-card-thumb{width:32px;height:32px;border-radius:6px}.pm-card-timestamp{font-size:var(--text-xs)}.pm-card-status{margin-top:10px}.pm-card-action{margin-top:12px}.pm-card-action .pm-action-btn{height:48px;font-size:var(--text-sm);border-radius:10px}.pm-pagination-btn{min-width:48px;height:48px;padding:0 8px;font-size:var(--text-sm)}.pm-pagination-info{font-size:var(--text-xs)}.pm-mobile-sort{padding:4px 0;margin-bottom:4px}}@media(max-width:768px)and (orientation:landscape){.pm-desktop-view{display:block}.pm-mobile-view{display:none}.pm-table{min-width:580px}.pm-th-created,.pm-cell-created{display:none}.pm-th,.pm-cell{padding:10px 12px}.pm-project-thumb{width:36px;height:27px}.pm-project-filename{font-size:var(--text-sm)}.pm-project-id{font-size:var(--text-xs)}.pm-status-badge{font-size:var(--text-xs);padding:3px 6px}.pm-action-btn{padding:10px 14px;min-height:48px;font-size:var(--text-sm)}}.pm-table-wrapper::-webkit-scrollbar,.pm-filters::-webkit-scrollbar{height:6px}.pm-table-wrapper::-webkit-scrollbar-track,.pm-filters::-webkit-scrollbar-track{background:transparent}.pm-table-wrapper::-webkit-scrollbar-thumb,.pm-filters::-webkit-scrollbar-thumb{background:var(--border-hover);border-radius:3px}.pm-table-wrapper::-webkit-scrollbar-thumb:hover,.pm-filters::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.pm-content::-webkit-scrollbar{width:8px}.pm-content::-webkit-scrollbar-track{background:transparent}.pm-content::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.pm-content::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}body.capacitor-native .pm-filter-count,body.capacitor-native .pm-th{font-size:var(--text-xs)}body.capacitor-native .pm-status-detail{font-size:var(--text-sm)}body.capacitor-native .pm-action-unavailable-reason{font-size:var(--text-xs)}body.capacitor-native .pm-failed-detail,body.capacitor-native .pm-warning-detail{font-size:var(--text-sm)}body.capacitor-native .pm-v3-step{font-size:var(--text-xs)}body.capacitor-native .pm-card-timestamp,body.capacitor-native .pm-project-id,body.capacitor-native .pm-card-status .pm-failed-detail,body.capacitor-native .pm-card-status .pm-warning-detail,body.capacitor-native .pm-v3-label,body.capacitor-native .pm-status-badge,body.capacitor-native .pm-action-unavailable-label,body.capacitor-native .pm-mobile-sort-label{font-size:var(--text-sm)}.r2-admin-page{min-height:100vh;background:var(--bg-primary);color:var(--text-primary, #e0e0e0);padding:1.5rem;font-family:system-ui,-apple-system,sans-serif}.r2-admin-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color, #333)}.r2-admin-header h1{margin:0;font-size:1.5rem;font-weight:600}.r2-admin-back{color:var(--text-secondary, #888);text-decoration:none;font-size:.875rem}.r2-admin-back:hover{color:var(--text-primary, #e0e0e0)}.r2-admin-badge{margin-left:auto;background:var(--warning, #ff5722);color:var(--text-primary);font-size:.75rem;font-weight:600;padding:.25rem .5rem;border-radius:4px;text-transform:uppercase}.r2-admin-error{background:var(--danger);color:var(--text-primary);padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem}.r2-admin-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.r2-admin-tabs button{background:var(--bg-secondary, #2a2a2a);border:1px solid var(--border-color, #333);color:var(--text-secondary, #888);padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.875rem;transition:all var(--transition-fast)}.r2-admin-tabs button:hover{background:var(--bg-tertiary, #333);color:var(--text-primary, #e0e0e0)}.r2-admin-tabs button.active{background:var(--accent-color, var(--blue));border-color:var(--accent-color, var(--blue));color:var(--text-primary)}.r2-admin-content{background:var(--bg-secondary, #2a2a2a);border-radius:8px;padding:1.5rem;min-height:400px}.r2-admin-loading{color:var(--text-secondary, #888);text-align:center;padding:2rem}.r2-admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.stat-card{background:var(--bg-primary);border-radius:8px;padding:1.25rem;text-align:center}.stat-card h3{margin:0 0 .75rem;font-size:.875rem;color:var(--text-secondary, #888);font-weight:500}.stat-value{font-size:2rem;font-weight:600;color:var(--text-primary, #e0e0e0)}.stat-size{font-size:.875rem;color:var(--text-secondary, #888);margin-top:.25rem}.stat-total{border:1px solid var(--accent-color, var(--blue))}.stat-total .stat-value{color:var(--accent-color, var(--blue))}.list-controls{display:flex;gap:.5rem;margin-bottom:1rem}.list-controls select,.list-controls button{background:var(--bg-primary);border:1px solid var(--border-color, #333);color:var(--text-primary, #e0e0e0);padding:.5rem .75rem;border-radius:4px;font-size:.875rem}.list-controls button{cursor:pointer}.list-controls button:hover{background:var(--bg-tertiary, #333)}.list-summary{color:var(--text-secondary, #888);font-size:.875rem;margin-bottom:1rem}.r2-table{width:100%;border-collapse:collapse;font-size:.875rem}.r2-table th,.r2-table td{text-align:left;padding:.75rem;border-bottom:1px solid var(--border-color, #333)}.r2-table th{color:var(--text-secondary, #888);font-weight:500;background:var(--bg-primary)}.r2-table tr:hover{background:var(--bg-primary)}.key-cell{max-width:480px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.key-cell a{color:var(--accent-color, var(--blue));text-decoration:none}.key-cell a:hover{text-decoration:underline}.delete-btn{background:transparent;border:1px solid var(--danger);color:var(--danger);padding:.25rem .5rem;border-radius:4px;font-size:.75rem;cursor:pointer;transition:all var(--transition-fast)}.delete-btn:hover{background:var(--danger);color:var(--text-primary)}.check-form{display:flex;gap:.5rem;margin-bottom:1rem}.check-form input{flex:1;background:var(--bg-primary);border:1px solid var(--border-color, #333);color:var(--text-primary, #e0e0e0);padding:.75rem;border-radius:4px;font-size:.875rem}.check-form input:focus{outline:none;border-color:var(--accent-color, var(--blue))}.check-form button{background:var(--accent-color, var(--blue));border:none;color:var(--text-primary);padding:.75rem 1.5rem;border-radius:4px;cursor:pointer;font-weight:500}.check-form button:hover{opacity:.9}.check-result{background:var(--bg-primary);border-radius:8px;padding:1.25rem}.check-result.exists{border-left:4px solid var(--success, #4caf50)}.check-result.not-found{border-left:4px solid var(--danger)}.check-result h3{margin:0 0 1rem;font-size:1.125rem}.check-result.exists h3{color:var(--success, #4caf50)}.check-result.not-found h3{color:var(--danger)}.check-result dl{display:grid;grid-template-columns:auto 1fr;gap:.5rem 1rem;margin:0}.check-result dt{color:var(--text-secondary, #888);font-weight:500}.check-result dd{margin:0;word-break:break-all}.check-result dd a{color:var(--accent-color, var(--blue));text-decoration:none}.check-result dd a:hover{text-decoration:underline}.orphans-summary{margin-bottom:1rem}.orphans-summary p{margin:.25rem 0}.orphans-note{color:var(--text-secondary, #888);font-size:.875rem}.temp-summary{margin-bottom:1rem}.temp-summary p{margin:0}.settings-page{min-height:100vh;background:var(--bg-primary);color:var(--text-primary);padding:0;display:flex}.settings-sidebar{display:none}.settings-main{flex:1;min-width:0;display:flex;flex-direction:column}.settings-content{padding:0 24px 80px;max-width:960px}.settings-mobile-header{padding:24px 20px;margin-bottom:24px}body.capacitor-native .settings-mobile-header{padding-top:var(--safe-area-top);box-sizing:border-box}.settings-back-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:none;border:none;color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;cursor:pointer;min-width:48px;min-height:48px;padding:12px;margin-bottom:8px;margin-left:-12px;border-radius:12px;transition:color var(--transition-normal),background var(--transition-normal)}.settings-back-btn:hover{color:var(--text-primary);background:var(--highlight-ghost)}.settings-back-btn:active{background:var(--highlight-faint)}.settings-back-btn svg{width:24px;height:24px}.settings-title{font-size:32px;font-weight:800;margin:0;letter-spacing:-.03em}.settings-sidebar-title{font-size:24px;font-weight:800;margin:0;letter-spacing:-.02em}.settings-sidebar-header{padding:32px 24px 24px;border-bottom:1px solid var(--highlight-ghost)}.settings-sidebar-header .settings-back-btn{margin-bottom:20px}.settings-nav{display:flex;flex-direction:column;padding:16px 12px;gap:4px}.settings-nav-item{display:flex;align-items:center;gap:12px;min-height:48px;padding:12px 16px;background:transparent;border:none;border-radius:10px;cursor:pointer;transition:all var(--transition-fast);text-align:left;width:100%}.settings-nav-item:hover{background:var(--highlight-ghost)}.settings-nav-item.active{background:var(--primary-subtle)}.settings-nav-label{font-size:var(--text-base);font-weight:500;color:var(--text-secondary);transition:color var(--transition-fast)}.settings-nav-item:hover .settings-nav-label{color:var(--text-primary)}.settings-nav-item.active .settings-nav-label{color:var(--text-primary);font-weight:600}.settings-section{margin-bottom:48px}.settings-section-header{margin-bottom:20px}.settings-section-title{font-size:20px;font-weight:700;margin:0 0 6px;color:var(--text-primary)}.settings-section-desc{font-size:var(--text-sm);color:var(--text-secondary);margin:0}.settings-section-content{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px}.settings-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;cursor:pointer;border-bottom:1px solid var(--border)}.settings-toggle:last-of-type{border-bottom:none}.settings-toggle-text{display:flex;flex-direction:column;gap:2px}.settings-toggle-label{font-size:var(--text-base);font-weight:600;color:var(--text-primary)}.settings-toggle-desc{font-size:var(--text-sm);color:var(--text-secondary)}.settings-toggle-switch{width:48px;height:28px;background:var(--border);border-radius:14px;padding:3px;cursor:pointer;transition:background var(--transition-normal);flex-shrink:0}.settings-toggle-switch.checked{background:linear-gradient(135deg,var(--primary-alt) 0%,var(--primary) 100%)}.settings-toggle-thumb{width:22px;height:22px;background:#fff;border-radius:50%;transition:transform var(--transition-normal);box-shadow:0 2px 4px var(--shadow-soft)}.settings-toggle-switch.checked .settings-toggle-thumb{transform:translate(20px)}.settings-reset-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0}.settings-reset-text{display:flex;flex-direction:column;gap:2px}.settings-reset-label{font-size:var(--text-base);font-weight:600;color:var(--text-primary)}.settings-reset-desc{font-size:var(--text-sm);color:var(--text-secondary)}.settings-reset-confirm{display:flex;gap:8px}.settings-account-info{margin-bottom:20px}.settings-account-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0}.settings-account-label{font-size:var(--text-sm);color:var(--text-secondary)}.settings-account-value{font-size:var(--text-sm);font-weight:500;color:var(--text-primary)}.settings-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 20px;font-size:var(--text-sm);font-weight:600;border-radius:10px;cursor:pointer;transition:all var(--transition-normal);border:none}.settings-btn svg{width:20px;height:20px}.settings-btn-secondary{background:var(--surface);border:1px solid var(--border);color:var(--text-secondary)}.settings-btn-secondary:hover{background:var(--surface-hover);border-color:var(--border-hover);color:var(--text-primary)}.settings-btn-ghost{background:transparent;color:var(--text-secondary)}.settings-btn-ghost:hover{color:var(--text-primary)}.settings-btn-danger{background:linear-gradient(135deg,var(--danger) 0%,#dc2626 100%);color:#fff}.settings-btn-danger:hover{opacity:.9}.settings-btn-danger-outline{background:transparent;border:1px solid var(--danger-glow);color:var(--danger)}.settings-btn-danger-outline:hover{background:var(--danger-subtle);border-color:#ef444499}.settings-success{padding:12px 14px;border-radius:12px;border:1px solid rgba(34,197,94,.35);background:#22c55e1a;color:var(--text-primary);font-size:var(--text-sm)}.settings-error{padding:12px 14px;border-radius:12px;border:1px solid rgba(239,68,68,.35);background:#ef44441a;color:var(--text-primary);font-size:var(--text-sm)}@media(min-width:960px){.settings-page{display:flex;height:100vh;overflow:hidden}.settings-sidebar{display:flex;flex-direction:column;width:280px;min-width:280px;background:var(--highlight-ghost);border-right:1px solid var(--highlight-ghost);height:100vh;position:sticky;top:0}.settings-mobile-header{display:none}.settings-main{flex:1;overflow-y:auto;padding:48px 60px 80px}.settings-content{padding:0;max-width:1000px}.settings-section{margin-bottom:56px}.settings-section-title{font-size:24px}.settings-section-content{padding:28px 32px}}@media(min-width:1200px){.settings-sidebar{width:300px;min-width:300px}.settings-main{padding:56px 80px 100px}.settings-content{max-width:1200px}}@media(max-width:600px){.settings-content{padding:0 20px 60px}.settings-title{font-size:28px}.settings-reset-row{flex-direction:column;align-items:flex-start;gap:12px}.settings-reset-confirm{width:100%}.settings-reset-confirm .settings-btn{flex:1}}.play-page{display:flex;flex-direction:column;height:100vh;height:100dvh;background:var(--bg-primary);color:var(--text-primary, #eee);padding:1rem;box-sizing:border-box;overflow:hidden}.play-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.play-header h1{margin:0;font-size:1.5rem;font-weight:600}.play-controls{display:flex;align-items:center;gap:1rem}.zoom-indicator{font-size:.875rem;opacity:.7;font-variant-numeric:tabular-nums}.reset-button{padding:.5rem 1rem;background:var(--accent-color, var(--primary-alt));color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;transition:background var(--transition-fast)}.reset-button:hover{background:var(--accent-hover, var(--primary-dark))}.play-instructions{display:flex;gap:1.5rem;font-size:.75rem;opacity:.6;margin-bottom:.75rem;flex-wrap:wrap}.play-instructions span:before{content:"•";margin-right:.5rem}.play-container{flex:1;border:2px solid var(--border-color, #333);border-radius:8px;overflow:hidden;position:relative;background:var(--bg-secondary, #16162a);touch-action:none;cursor:crosshair;max-height:calc(100vh - 180px);aspect-ratio:1 / 1;margin:0 auto;width:100%;max-width:calc(100vh - 180px)}.play-world{position:absolute;top:0;left:0;transform-origin:0 0;background:var(--bg-tertiary, #0f0f1a)}.world-grid{position:absolute;inset:0;background-image:linear-gradient(to right,var(--highlight-ghost) 1px,transparent 1px),linear-gradient(to bottom,var(--highlight-ghost) 1px,transparent 1px);background-size:50px 50px;pointer-events:none}.world-box{position:absolute;background:var(--box-fill, var(--primary-glow));border:2px solid var(--box-border, var(--primary-glow));border-radius:4px;pointer-events:none}.world-box--drawing{background:var(--box-drawing-fill, rgba(34, 197, 94, .3));border-color:var(--box-drawing-border, rgba(34, 197, 94, .8));border-style:dashed}.play-footer{margin-top:.75rem;text-align:center;font-size:.875rem;opacity:.6}@media(max-width:600px){.play-page{padding:.75rem}.play-header h1{font-size:1.25rem}.play-instructions{flex-direction:column;gap:.25rem}.play-container{max-height:calc(100vh - 200px);max-width:100%}}.move-card{position:relative;display:flex;flex-direction:column;height:100%;border-radius:12px;overflow:hidden;cursor:pointer;background:var(--bg-tertiary);-webkit-user-select:none;user-select:none;touch-action:manipulation;border:1px solid color-mix(in srgb,var(--border) 70%,var(--text-muted) 30%);box-shadow:var(--shadow-card, var(--shadow-md-light));transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.move-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-hover, var(--shadow-lg-light))}.move-card:active{transform:translateY(0)}.move-card__image{position:absolute;inset:0;z-index:0}.move-card__img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(var(--library-thumb-zoom, 1.15));filter:saturate(.92) contrast(1.03);-webkit-user-drag:none;pointer-events:none;transition:opacity var(--transition-normal)}.move-card__gif{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(var(--library-thumb-zoom, 1.15));-webkit-user-drag:none;pointer-events:none}@media(max-width:768px){.move-card__img--has-gif{opacity:0}.move-card__gif{opacity:1}}@media(min-width:769px){.move-card__gif{opacity:0;transition:opacity var(--transition-normal)}.move-card__img--hover-hide{opacity:0}.move-card__gif--hover-show{opacity:1}}.move-card__fallback{width:100%;height:100%;background:linear-gradient(135deg,var(--primary-subtle),var(--blue-subtle, var(--primary-subtle)))}.move-card__gradient{position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.5) 35%,rgba(0,0,0,.1) 60%,transparent 100%);pointer-events:none}.move-card__sizer{width:100%;aspect-ratio:3 / 4;flex:1}.move-card__top-right{position:absolute;top:8px;right:8px;z-index:3}.move-card__content{position:relative;z-index:2;padding:12px;display:flex;flex-direction:column;gap:4px}.move-card__title{font-size:var(--text-sm);font-weight:700;color:#fff;line-height:1.3;text-shadow:0 1px 3px rgba(0,0,0,.4);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.move-card__source{font-size:var(--text-sm);color:#ffffffb3;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.move-card-crown{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f5c842,#d4a030);color:#fff;box-shadow:0 2px 6px #d4a03066}.move-card-training-icon{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#a78bfa,#7c3aed);color:#fff;box-shadow:0 2px 6px #8b5cf666}.card-actions{display:flex;flex-direction:column;padding:4px 16px 16px}.card-action-item{display:flex;align-items:center;gap:14px;width:100%;padding:14px 12px;border:none;border-radius:12px;background:transparent;color:var(--text-primary);cursor:pointer;text-align:left;transition:background var(--transition-fast)}.card-action-item:hover{background:var(--surface-hover, var(--bg-tertiary))}.card-action-item:active{background:var(--primary-subtle)}.card-action-item--gold{color:#d4a030}.card-action-item--muted{color:var(--text-secondary)}.card-action-text{display:flex;flex-direction:column;gap:1px}.card-action-label{font-size:.95rem;font-weight:600;color:var(--text-primary)}.card-action-desc{font-size:.78rem;color:var(--text-secondary)}@media(min-width:601px){.card-actions{padding:4px 0 8px}}.move-card--mastered{border-color:#d4a030;box-shadow:0 0 10px #d4a03033}.move-card--training{border-color:#8b5cf673}.mosaic-card{position:relative;display:flex;flex-direction:column;border-radius:12px;overflow:hidden;cursor:pointer;background:var(--bg-tertiary);-webkit-user-select:none;user-select:none;touch-action:manipulation;border:1px solid color-mix(in srgb,var(--border) 70%,var(--text-muted) 30%);box-shadow:var(--shadow-card, var(--shadow-md-light));transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.mosaic-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-hover, var(--shadow-lg-light))}.mosaic-card:active{transform:translateY(0)}.mosaic-card__mosaic{position:absolute;inset:0;z-index:0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:2px}.mosaic-card__thumb{width:100%;height:100%;object-fit:cover;-webkit-user-drag:none;pointer-events:none}.mosaic-card__thumb-empty{width:100%;height:100%;background:var(--surface)}.mosaic-card__gradient{position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.5) 35%,rgba(0,0,0,.1) 60%,transparent 100%);pointer-events:none}.mosaic-card__top-right{position:absolute;top:8px;right:8px;z-index:3}.mosaic-card__sizer{width:100%;aspect-ratio:3 / 4}.mosaic-card__content{position:relative;z-index:2;padding:12px;display:flex;flex-direction:column;gap:4px}.mosaic-card__name{font-size:var(--text-sm);font-weight:700;color:#fff;line-height:1.3;text-shadow:0 1px 3px rgba(0,0,0,.4);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.mosaic-card__count{font-size:var(--text-sm);color:#ffffffb3;line-height:1.3}.cheatsheet-card__practice-badge{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#a78bfa,#7c3aed);color:#fff;box-shadow:0 2px 6px #8b5cf666}.practice-set-naming-form{padding:0 24px 24px}.practice-set-naming-actions{display:flex;gap:12px;margin-top:16px}@media(min-width:601px){.practice-set-naming-form{padding:0 4px 4px}}.tp-page{min-height:100vh;background:var(--bg-primary);padding:32px 20px 80px;display:flex;flex-direction:column;align-items:center}.tp-page__header{text-align:center;margin-bottom:32px;max-width:600px}.tp-page__title{font-size:var(--text-3xl);font-weight:700;color:var(--text-primary);margin:0 0 8px;letter-spacing:-.01em}.tp-page__subtitle{font-size:var(--text-base);color:var(--text-secondary);margin:0;line-height:1.6}.tp-phone{width:340px;height:720px;border-radius:40px;border:6px solid var(--text-primary);position:relative;box-shadow:0 4px 8px #00000014,0 12px 40px #00000029,0 24px 80px #0000001f;overflow:hidden;background:var(--bg-primary);flex-shrink:0}.tp-phone__notch{width:120px;height:26px;background:var(--text-primary);border-radius:0 0 16px 16px;margin:0 auto;position:relative;z-index:10}.tp-phone__screen{height:calc(100% - 26px);overflow-y:auto;overflow-x:hidden;scrollbar-width:none}.tp-phone__screen::-webkit-scrollbar{display:none}.tp-content{display:flex;justify-content:center}.tp-nav{display:flex;align-items:center;padding:10px 14px;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:5;min-height:44px}.tp-nav__back{background:none;border:none;padding:4px;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;margin-right:4px}.tp-nav__title{flex:1;font-size:var(--text-sm);font-weight:700;letter-spacing:2px;color:var(--text-primary);text-align:center}.tp-nav__avatar{width:32px;height:32px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:700}.tp-screen{display:flex;flex-direction:column;min-height:100%}.tp-body{flex:1;padding:12px 14px 16px;display:flex;flex-direction:column;gap:12px}.tp-coach{position:relative;border-radius:16px;padding:14px;background:radial-gradient(ellipse 80% 70% at 90% 20%,color-mix(in srgb,var(--primary) 12%,transparent) 0%,transparent 60%),linear-gradient(145deg,color-mix(in srgb,var(--surface) 92%,var(--primary)) 0%,var(--surface) 100%);border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border));box-shadow:0 1px 2px #0000000a,0 4px 12px #0000000f}.tp-coach__inner{display:flex;gap:12px;align-items:flex-start}.tp-coach__avatar-wrap{width:40px;height:40px;border-radius:50%;background:color-mix(in srgb,var(--surface) 80%,var(--primary));border:1.5px solid color-mix(in srgb,var(--primary) 20%,var(--border));box-shadow:0 2px 8px color-mix(in srgb,var(--primary) 10%,transparent);display:flex;align-items:center;justify-content:center;padding:4px;flex-shrink:0}.tp-coach__avatar-img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 1px 3px rgba(0,0,0,.08))}.tp-coach__content{flex:1;min-width:0}.tp-coach__badge{display:inline-flex;align-items:center;padding:3px 10px;background:color-mix(in srgb,var(--surface) 88%,var(--primary));border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border));border-radius:999px;font-size:var(--text-xs);font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.tp-coach__message{margin:0;font-size:var(--text-sm);color:var(--text-primary);line-height:1.5;font-weight:500}.tp-coach__footer{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:12px;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--primary) 10%,var(--border))}.tp-coach__stat{display:flex;align-items:center;gap:5px;font-size:var(--text-xs);font-weight:600;color:var(--text-secondary)}.tp-coach__stat svg{color:var(--primary);opacity:.7}.tp-coach__stat-sep{width:3px;height:3px;border-radius:50%;background:var(--text-muted)}.tp-list{display:flex;flex-direction:column}.tp-list__divider{height:1px;background:var(--border);margin:6px 0 2px}.tp-section{display:flex;align-items:center;gap:6px;padding:6px 4px 4px}.tp-section__icon{color:var(--text-tertiary)}.tp-section__label{font-size:var(--text-xs);font-weight:800;letter-spacing:.08em;color:var(--text-tertiary);text-transform:uppercase}.tp-section__count{font-size:var(--text-xs);font-weight:700;color:var(--text-muted);margin-left:auto}.tp-thumb{width:44px;height:44px;border-radius:8px;flex-shrink:0;overflow:hidden;position:relative;background:var(--surface-hover);box-shadow:inset 0 0 0 1px #0000000f}.tp-thumb__img{width:100%;height:100%;object-fit:cover;display:block}.tp-reason{font-size:var(--text-xs);font-weight:600;letter-spacing:.02em;white-space:nowrap;line-height:1}.tp-reason--primary,.tp-reason--success,.tp-reason--warning,.tp-reason--danger,.tp-reason--cyan{color:var(--primary)}.tp-move{display:flex;align-items:center;gap:12px;padding:10px 10px 10px 0;background:none;border:none;border-radius:10px;cursor:pointer;font-family:inherit;text-align:left;width:100%;-webkit-tap-highlight-color:transparent;transition:background var(--transition-fast);position:relative;overflow:hidden;animation:tp-row-enter .28s ease-out backwards;animation-delay:var(--enter-delay, 0ms)}@keyframes tp-row-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.tp-move:active{background:var(--surface-hover)}.tp-move__accent{width:3px;align-self:stretch;border-radius:0 3px 3px 0;flex-shrink:0;margin:2px 0}.tp-move__accent{background:var(--primary)}.tp-move__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.tp-move__name{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tp-move__arrow{color:var(--text-muted);flex-shrink:0;opacity:.4}.tp-cta-wrap{margin-top:auto;padding-top:4px}.tp-cta{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 22px;background:var(--primary);color:var(--text-on-primary, #fff);border:none;border-radius:12px;font-size:var(--text-base);font-weight:600;font-family:inherit;cursor:pointer;box-shadow:0 4px 14px color-mix(in srgb,var(--primary) 30%,transparent);transition:background var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);-webkit-tap-highlight-color:transparent}.tp-cta:hover{background:var(--primary-hover, var(--primary-dark));transform:translateY(-1px);box-shadow:0 6px 20px color-mix(in srgb,var(--primary) 38%,transparent)}.tp-cta:active{transform:translateY(0);box-shadow:0 2px 8px color-mix(in srgb,var(--primary) 25%,transparent)}@media(prefers-reduced-motion:reduce){.tp-move{animation:none}.tp-cta{transition:none}}.bottom-sheet-content:has(.tp-panel-layout){display:flex;flex-direction:column}.bottom-sheet:has(.tp-panel-layout){border-radius:0}.tp-panel-layout{display:flex;flex-direction:column;flex:1}.tp-panel-content{flex:1;display:flex;flex-direction:column;justify-content:center}.tp-panel-header{padding:2px 14px 14px;text-align:center}.tp-panel-title{font-size:var(--text-base);font-weight:700;letter-spacing:2px;color:var(--text-primary)}.tp-panel-body{display:flex;flex-direction:column;gap:12px;padding:0 14px 12px}.tp-panel-footer{position:relative;flex-shrink:0;padding:16px 14px;background:var(--surface)}.tp-panel-footer:before{content:"";position:absolute;left:0;right:0;bottom:100%;height:32px;background:linear-gradient(to top,var(--surface),transparent);pointer-events:none}.tp-panel-footer .tp-cta{padding-top:15px;padding-bottom:15px}.tp-panel-body .tp-section__label,.tp-panel-body .tp-reason{font-size:var(--text-xs)}.tp-panel-body .tp-move{padding-top:12px;padding-bottom:12px;animation:none}.tp-panel-loading{display:flex;align-items:center;justify-content:center;padding:48px 0}.tp-panel-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:48px 24px;gap:12px}.tp-panel-empty__icon{color:var(--text-tertiary)}.tp-panel-empty__text{margin:0;font-size:var(--text-sm);color:var(--text-secondary);line-height:1.5;max-width:260px}.tp-section-refresh{margin-left:auto;display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:7px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast);-webkit-tap-highlight-color:transparent}.tp-section-refresh svg{transition:transform .4s cubic-bezier(.4,0,.2,1)}.tp-section-refresh:hover{color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,transparent)}.tp-section-refresh:active{transform:scale(.9)}.tp-section-refresh:disabled{cursor:default;opacity:.5}.tp-section-refresh--spinning svg{animation:tp-section-spin .6s cubic-bezier(.4,0,.2,1)}@keyframes tp-section-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tp-section-fading{opacity:.3;transform:scale(.985);transition:opacity .15s ease-out,transform .15s ease-out}.tp-plan-modal{width:560px;border-radius:20px;box-shadow:0 0 0 1px #0000000a,0 2px 4px #00000005,0 8px 24px #00000014,0 24px 48px #00000014;animation:tp-modal-enter .34s cubic-bezier(.34,1.56,.64,1) both}@keyframes tp-modal-enter{0%{opacity:0;transform:scale(.96) translateY(8px)}}.tp-plan-modal .modal-header{padding:20px 24px 16px}.tp-plan-modal .modal-title{font-size:1.1rem;letter-spacing:-.01em}.tp-plan-modal .modal-close-btn{width:36px;height:36px;border-radius:10px;font-size:1.5rem}.tp-plan-modal .modal-body{padding:0 24px 24px;display:flex;flex-direction:column;gap:20px;scrollbar-width:thin;scrollbar-color:var(--border-hover) transparent}.tp-plan-modal .modal-body::-webkit-scrollbar{width:6px}.tp-plan-modal .modal-body::-webkit-scrollbar-track{background:transparent}.tp-plan-modal .modal-body::-webkit-scrollbar-thumb{background:var(--border-hover);border-radius:3px}.tp-plan-modal .modal-body::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.tp-plan-modal .tp-coach{padding:18px;box-shadow:0 1px 3px #0000000a,0 6px 16px #0000000f}.tp-plan-modal .tp-coach__avatar-wrap{width:48px;height:48px}.tp-plan-modal .tp-coach__message{font-size:var(--text-base);line-height:1.55}.tp-plan-modal .tp-thumb{width:52px;height:52px;border-radius:10px}.tp-plan-modal .tp-move{padding:10px 12px 10px 0;border-radius:12px;transition:background var(--transition-fast);animation:tp-modal-row-enter .3s ease-out both;animation-delay:calc(.1s + var(--enter-delay, 0ms))}.tp-plan-modal .tp-move:hover{background:var(--surface-hover)}@keyframes tp-modal-row-enter{0%{opacity:0;transform:translateY(6px)}}.tp-plan-modal .tp-move__name{font-size:var(--text-base)}.tp-plan-modal .tp-move__arrow{opacity:0;transform:translate(-4px);transition:opacity var(--transition-fast),transform var(--transition-fast)}.tp-plan-modal .tp-move:hover .tp-move__arrow{opacity:.5;transform:translate(0)}.tp-plan-modal .tp-section__label,.tp-plan-modal .tp-reason{font-size:var(--text-xs)}.tp-plan-modal .tp-section{padding:8px 4px 6px}.tp-plan-modal .tp-list__divider{margin:8px 0 4px}.tp-plan-modal .modal-footer{padding:16px 24px 24px}.tp-plan-modal .modal-footer .tp-cta{width:100%}@media(prefers-reduced-motion:reduce){.tp-plan-modal,.tp-plan-modal .tp-move{animation:none}.tp-section-refresh--spinning svg{animation:none}.tp-section-fading{transition:none}}@media(max-width:600px){.favorites-header-desktop{display:none}}.favorites-page--in-sheet .favorites-header-desktop{display:none}.favorites-page .library-grid-v2{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}@media(min-width:768px){.favorites-page .library-grid-v2{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:960px){.favorites-page .library-grid-v2{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(min-width:1200px){.favorites-page .library-grid-v2{grid-template-columns:repeat(5,minmax(0,1fr))}}.favorites-sheets-row{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;margin-bottom:12px;background:var(--surface);border:1px solid var(--border);border-radius:12px;cursor:pointer;font-size:var(--text-sm);font-weight:500;color:var(--text-primary);transition:background var(--transition-fast),border-color var(--transition-fast)}.favorites-sheets-row:hover{background:var(--surface-hover);border-color:var(--border-hover)}.favorites-sheets-row:active{background:var(--primary-subtle)}.favorites-sheets-row__icon{color:var(--primary);flex-shrink:0}.favorites-sheets-row__label{flex:1}.favorites-sheets-row__count{font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary);background:var(--highlight-faint);padding:2px 8px;border-radius:10px}.favorites-sheets-row__chevron{color:var(--text-tertiary);flex-shrink:0}.favorites-sheets-desktop-only{display:none}@media(min-width:768px){.favorites-sheets-mobile-only{display:none}.favorites-sheets-desktop-only{display:block}}.favorites-sheets-desktop{margin-bottom:12px}.favorites-sheets-desktop__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.favorites-sheets-desktop__label{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary)}.favorites-sheets-desktop__see-all{appearance:none;border:none;background:none;padding:2px 4px;font-size:var(--text-xs);font-weight:600;color:var(--primary);cursor:pointer;font-family:inherit;transition:opacity var(--transition-fast)}.favorites-sheets-desktop__see-all:hover{opacity:.7}.favorites-sheets-desktop__pills{display:flex;gap:8px;flex-wrap:wrap;max-height:84px;overflow:hidden}.favorites-sheet-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:var(--surface);border:1px solid var(--border);border-radius:10px;font-size:var(--text-sm);font-weight:500;color:var(--text-primary);cursor:pointer;font-family:inherit;transition:background var(--transition-fast),border-color var(--transition-fast)}.favorites-sheet-pill:hover{background:var(--surface-hover);border-color:var(--border-hover)}.favorites-sheet-pill:active{background:var(--primary-subtle)}.favorites-sheet-pill__icon{color:var(--primary);flex-shrink:0}.favorites-sheet-pill__name{white-space:nowrap}.favorites-sheet-pill__count{font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary)}.favorites-page .filter-chip-bar{padding:0;margin-bottom:12px}.favorites-active-filter{display:flex;align-items:center;gap:8px;padding:8px 14px;margin-bottom:12px;background:var(--highlight-faint);border-radius:10px;font-size:var(--text-sm);color:var(--text-secondary)}.favorites-active-filter strong{color:var(--text-primary);font-weight:600}.favorites-active-filter__clear{margin-left:auto;appearance:none;border:none;background:none;padding:2px 6px;font-size:var(--text-xs);font-weight:600;color:var(--primary);cursor:pointer;border-radius:4px;transition:background var(--transition-fast)}.favorites-active-filter__clear:hover{background:var(--highlight-faint)}.favorites-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:64px 24px;color:var(--text-secondary)}.favorites-empty-icon{color:var(--text-tertiary);margin-bottom:12px}.select-badge{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.6);background:#0000004d;transition:all var(--transition-fast)}.select-badge--active{border-color:var(--primary);background:var(--primary);color:#fff}.move-card--selected{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary)}.favorites-sheet-header-mobile{display:none}@media(max-width:768px){.favorites-sheet-header-mobile{display:flex;align-items:center;gap:12px;margin-bottom:16px}.favorites-sheet-header-mobile__back{appearance:none;border:none;background:none;padding:4px;color:var(--text-primary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;transition:background var(--transition-fast)}.favorites-sheet-header-mobile__back:hover{background:var(--highlight-faint)}.favorites-sheet-header-mobile__title{font-size:18px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}}.favorites-breadcrumb-desktop{margin-bottom:16px}@media(max-width:768px){.favorites-breadcrumb-desktop{display:none}}.favorites-grid-item-enter{animation:favorites-card-enter .3s cubic-bezier(.2,0,0,1) backwards;animation-delay:var(--enter-delay, 0ms)}@keyframes favorites-card-enter{0%{opacity:0;transform:scale(.92) translateY(8px)}}@media(prefers-reduced-motion:reduce){.favorites-grid-item-enter{animation:none;transform:none!important;opacity:1!important}}.favorites-plan-fab{position:fixed;bottom:calc(24px + env(safe-area-inset-bottom,0px));right:24px;z-index:50;height:52px;padding:0 20px;border-radius:28px;border:none;display:flex;align-items:center;background:var(--primary);color:#fff;font-size:var(--text-base);font-weight:600;font-family:inherit;cursor:pointer;box-shadow:0 4px 14px #00000040;transition:transform var(--transition-fast),box-shadow var(--transition-fast),padding var(--transition-normal);-webkit-tap-highlight-color:transparent;animation:favorites-plan-fab-enter .3s cubic-bezier(.2,0,0,1) backwards}.favorites-plan-fab:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000004d}.favorites-plan-fab:active{transform:translateY(0)}.favorites-plan-fab__label{display:inline-block;max-width:140px;overflow:hidden;white-space:nowrap;opacity:1;margin-left:8px;transition:max-width var(--transition-normal),opacity var(--transition-normal),margin-left var(--transition-normal)}.favorites-plan-fab--collapsed{padding:0 16px}.favorites-plan-fab--collapsed .favorites-plan-fab__label{max-width:0;opacity:0;margin-left:0}@keyframes favorites-plan-fab-enter{0%{opacity:0;transform:scale(.9)}}@media(prefers-reduced-motion:reduce){.favorites-plan-fab{animation:none;transition:none}.favorites-plan-fab__label{transition:none}}.train-picker__modal{width:520px;max-width:90vw}.train-picker__modal .modal-body{padding:0}.train-picker{position:relative;padding:8px 24px 24px}@media(min-width:600px){.train-picker{padding:28px 32px 32px}}.train-picker__close{position:absolute;top:20px;right:20px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-tertiary);border-radius:8px;cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast)}.train-picker__close:hover{color:var(--text-primary);background:var(--highlight-faint)}.train-picker__hero{text-align:center;padding:4px 0 20px}@keyframes ring-enter{0%{opacity:0;transform:scale(.85);box-shadow:0 0 0 transparent}to{opacity:1;transform:scale(1);box-shadow:0 0 32px color-mix(in srgb,var(--primary) 10%,transparent)}}.train-picker__ring{width:72px;height:72px;border-radius:50%;border:2px solid color-mix(in srgb,var(--primary) 25%,transparent);background:color-mix(in srgb,var(--primary) 6%,transparent);display:flex;align-items:center;justify-content:center;color:var(--primary);margin:0 auto 16px;animation:ring-enter .5s ease-out;box-shadow:0 0 32px color-mix(in srgb,var(--primary) 10%,transparent)}.train-picker__eyebrow{display:block;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--primary);margin-bottom:4px}.train-picker__name{font-size:var(--text-2xl);font-weight:700;color:var(--text-primary);margin:0 0 4px;line-height:1.2;text-transform:capitalize}.train-picker__meta{font-size:var(--text-sm);color:var(--text-secondary)}.train-picker__step-header{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:16px;min-height:28px}.train-picker__section-label{font-size:var(--text-xs);font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary)}.train-picker__back{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.train-picker__back:hover{color:var(--text-primary);border-color:var(--primary);background:var(--highlight-faint)}.train-picker__step-chip{font-size:var(--text-xs);font-weight:600;color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,transparent);padding:3px 10px;border-radius:100px}.train-picker__badge{display:inline-block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,transparent);padding:2px 8px;border-radius:100px;margin-left:8px;vertical-align:middle}.train-picker__step-container{overflow:hidden}.train-picker__step{transition:opacity .25s ease,transform .25s ease}.train-picker__step--exit-left{opacity:0;transform:translate(-40px)}.train-picker__step--exit-right{opacity:0;transform:translate(40px)}.train-picker__step--enter-right{animation:step-enter-from-right .25s ease-out}.train-picker__step--enter-left{animation:step-enter-from-left .25s ease-out}@keyframes step-enter-from-right{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes step-enter-from-left{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}.train-picker__options{display:flex;flex-direction:column;gap:10px;min-height:224px}@keyframes train-option-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.train-picker__option{display:flex;align-items:center;gap:14px;min-height:68px;padding:14px 16px;border-radius:12px;border:1px solid var(--border);background:var(--surface);cursor:pointer;text-align:left;font-family:inherit;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.train-picker__option:hover{border-color:var(--primary);background:var(--highlight-faint)}.train-picker__option:active{transform:scale(.98)}.train-picker__option--confirmed{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,transparent);transform:scale(.98)}.train-picker__option-icon{width:38px;height:38px;border-radius:10px;background:color-mix(in srgb,var(--primary) 12%,transparent);display:flex;align-items:center;justify-content:center;color:var(--primary);flex-shrink:0}.train-picker__option-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.train-picker__option-title{font-size:var(--text-base);font-weight:600;color:var(--text-primary);display:flex;align-items:center}.train-picker__option-desc{font-size:var(--text-sm);color:var(--text-tertiary)}.train-picker__option-arrow{color:var(--text-tertiary);flex-shrink:0;transition:color var(--transition-fast),transform var(--transition-fast)}.train-picker__option:hover .train-picker__option-arrow{color:var(--primary);transform:translate(2px)}@media(min-width:600px){.train-picker__options{flex-direction:row;gap:12px}.train-picker__options{min-height:auto}.train-picker__option{flex:1;flex-direction:column;align-items:center;text-align:center;min-height:150px;padding:22px 14px 18px;gap:0;border-radius:10px;animation:train-option-enter .3s ease-out both}.train-picker__option:nth-child(1){animation-delay:.06s}.train-picker__option:nth-child(2){animation-delay:.12s}.train-picker__option:nth-child(3){animation-delay:.18s}.train-picker__option:first-child{border-color:color-mix(in srgb,var(--primary) 25%,var(--border))}.train-picker__option-icon{width:48px;height:48px;border-radius:50%;margin-bottom:14px}.train-picker__option-content{align-items:center;gap:4px}.train-picker__option-title{flex-direction:column;gap:6px}.train-picker__option:hover{transform:translateY(-2px);box-shadow:0 4px 16px color-mix(in srgb,var(--shadow-heavy) 40%,transparent)}.train-picker__option:active{transform:translateY(0)}.train-picker__option-arrow{display:none}}@media(max-width:600px){.ps-header-desktop{display:none}}.ps-card{display:flex;flex-direction:column;border-radius:14px;overflow:hidden;cursor:pointer;background:var(--surface);border:1px solid color-mix(in srgb,var(--border) 70%,var(--text-muted) 30%);box-shadow:var(--shadow-card, var(--shadow-md-light));-webkit-user-select:none;user-select:none;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.ps-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-card-hover, var(--shadow-lg-light))}.ps-card:active{transform:scale(.98)}.ps-card--selected{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary)}.ps-card__mosaic{position:relative;aspect-ratio:1 / 1;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:2px;overflow:hidden;background:var(--highlight-faint)}.ps-card__thumb{width:100%;height:100%;object-fit:cover}.ps-card__thumb-empty{width:100%;height:100%;background:var(--surface)}.ps-card__fallback{grid-column:1 / -1;grid-row:1 / -1;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary)}.ps-card__footer{display:flex;align-items:center;gap:8px;padding:10px 12px}.ps-card__meta{flex:1;min-width:0}.ps-card__name{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);line-height:1.3;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}.ps-card__count{font-size:var(--text-xs);color:var(--text-tertiary);line-height:1.4}.ps-card__train{flex-shrink:0;padding:0 16px;height:36px;font-size:var(--text-sm)}.ps-card__processing{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:#0000008c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}@keyframes ps-spin{to{transform:rotate(360deg)}}.ps-card__spinner{animation:ps-spin 1.2s linear infinite;color:#fffc}.ps-card__processing-label{font-size:var(--text-xs);font-weight:600;color:#ffffffb3}.ps-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:64px 24px;color:var(--text-secondary)}.ps-empty__mascot{width:80px;height:80px;object-fit:contain;margin-bottom:8px;opacity:.85}.ps-empty__icon{color:var(--text-tertiary);margin-bottom:12px}.ps-empty__subtitle{font-size:var(--text-sm);color:var(--text-tertiary);margin-bottom:20px}.ps-empty__cta{display:inline-flex;align-items:center;gap:6px}@media(max-width:768px){.ps-card__train{display:none}}.ps-card__select-badge{position:absolute;top:8px;right:8px;z-index:4;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.6);background:#0000004d;transition:all var(--transition-fast)}.ps-card__select-badge--active{border-color:var(--primary);background:var(--primary);color:#fff}.tc-page__content{display:flex;flex-direction:column;gap:20px;padding-bottom:80px}@media(max-width:600px){.tc-header-desktop{display:none}}.tc-stats{position:relative;margin-top:14px;padding-top:16px;display:flex;flex-direction:column;gap:10px}.tc-stats:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:color-mix(in srgb,var(--primary) 10%,var(--border))}.tc-stats__top{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tc-stats__card{padding:16px;border-radius:14px;background:var(--surface);border:1px solid var(--border)}.tc-stats__card--streak{display:flex;flex-direction:column;align-items:center;gap:6px;background:color-mix(in srgb,#f97316 4%,var(--surface));border-color:color-mix(in srgb,#f97316 12%,var(--border))}.tc-stats__card--reps{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:color-mix(in srgb,var(--primary) 4%,var(--surface));border-color:color-mix(in srgb,var(--primary) 12%,var(--border))}.tc-stats__ring-container{position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0}.tc-stats__ring-center{position:absolute;display:flex;flex-direction:column;align-items:center}.tc-stats__ring-num{font-size:var(--text-2xl);font-weight:700;color:var(--text-primary);line-height:1}.tc-stats__ring-goal{font-size:var(--text-xs);font-weight:500;color:var(--text-muted);line-height:1;margin-top:1px}.tc-stats__reps-label{font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary)}.tc-stats__card--reps-complete{border-color:color-mix(in srgb,var(--success) 30%,var(--border));background:color-mix(in srgb,var(--success) 4%,var(--surface))}.tc-stats__card--reps-exceeded{border-color:color-mix(in srgb,var(--success) 35%,var(--border));background:color-mix(in srgb,var(--success) 6%,var(--surface));box-shadow:0 0 16px color-mix(in srgb,var(--success) 12%,transparent)}.tc-stats__ring-num--exceeded,.tc-stats__card--reps-complete .tc-stats__reps-label,.tc-stats__card--reps-exceeded .tc-stats__reps-label{color:var(--success)}.tc-stats__streak-header{display:flex;align-items:center;gap:6px}.tc-stats__flame{color:#ea580c}.tc-stats__streak-num{font-size:var(--text-2xl);font-weight:800;color:var(--text-primary);line-height:1}.tc-stats__streak-label{font-size:var(--text-xs);color:var(--text-tertiary);margin-bottom:4px}.tc-day-circles{display:flex;gap:6px}.tc-day-circle-col{display:flex;flex-direction:column;align-items:center;gap:3px}.tc-day-circle{width:26px;height:26px;border-radius:50%;border:2px solid var(--border);display:flex;align-items:center;justify-content:center;color:transparent;transition:all var(--transition-fast)}.tc-day-circle--filled{background:var(--success);border-color:var(--success);color:#fff}.tc-day-label{font-size:var(--text-xs);font-weight:600;color:var(--text-muted);text-transform:uppercase}.tc-stats__bottom{display:flex;align-items:center;gap:16px;padding:10px 16px;border-radius:10px;background:var(--surface);border:1px solid var(--border)}.tc-stats__bottom-stat{display:flex;align-items:center;gap:6px;color:var(--text-tertiary)}.tc-stats__bottom-val{font-size:var(--text-sm);font-weight:700;color:var(--text-primary)}.tc-stats__bottom-label{font-size:var(--text-xs);color:var(--text-tertiary)}.tc-stats__bottom-sep{width:1px;height:18px;background:var(--border)}@media(max-width:600px){.tc-stats__top{grid-template-columns:1fr}}@media(min-width:768px){.tc-stats{padding-right:132px}.tc-stats:before{right:132px}}@media(min-width:1200px){.tc-stats{padding-right:152px}.tc-stats:before{right:152px}}.tc-section-title{font-size:var(--text-base);font-weight:600;color:var(--text-primary);margin:0 0 10px}.tc-set-card{display:flex;flex-direction:column;border-radius:14px;overflow:hidden;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.tc-set-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-card-hover)}.tc-set-card:active{transform:scale(.98)}.tc-set-card__visual{position:relative;aspect-ratio:1 / 1;overflow:hidden}.tc-set-card__mosaic{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:2px;width:100%;height:100%}.tc-set-card__thumb{width:100%;height:100%;object-fit:cover}.tc-set-card__thumb-empty{width:100%;height:100%;background:var(--highlight-faint)}.tc-set-card--selected{outline:2px solid var(--primary);outline-offset:-2px}.tc-set-card__select-badge{position:absolute;top:8px;right:8px;width:22px;height:22px;border-radius:50%;border:2px solid rgba(255,255,255,.8);background:#0000004d;display:flex;align-items:center;justify-content:center;color:#fff;transition:all var(--transition-fast);z-index:1}.tc-set-card__select-badge--active{background:var(--primary);border-color:var(--primary)}.tc-set-card__footer{display:flex;align-items:center;gap:8px;padding:10px 12px}.tc-set-card__meta{flex:1;min-width:0}.tc-set-card__footer .tc-set-card__name{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tc-set-card__footer--col{flex-direction:column;gap:8px;padding:10px 12px 12px}.tc-set-card__footer-top{display:flex;align-items:center;gap:8px;width:100%}.tc-set-card__footer-top .tc-set-card__name{flex:1;min-width:0}.tc-set-card__fbar-wrap{width:100%;display:flex;flex-direction:column;gap:4px}.tc-set-card__fbar{height:6px;border-radius:3px;background:color-mix(in srgb,var(--border) 50%,transparent);overflow:hidden;position:relative}.tc-set-card__fbar-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--primary) 85%,#f59e0b));transition:width .8s cubic-bezier(.4,0,.2,1);box-shadow:0 0 8px color-mix(in srgb,var(--primary) 30%,transparent);position:relative;animation:tc-bar-grow .8s cubic-bezier(.4,0,.2,1) backwards;animation-delay:calc(.08s * var(--card-index, 0) + .6s)}.tc-set-card__fbar--done .tc-set-card__fbar-fill{background:linear-gradient(90deg,var(--success),color-mix(in srgb,var(--success) 80%,#34d399));box-shadow:0 0 10px color-mix(in srgb,var(--success) 35%,transparent)}.tc-set-card__fbar--exceeded .tc-set-card__fbar-fill{background:linear-gradient(90deg,var(--success),#34d399,var(--success));background-size:200% 100%;animation:tc-bar-grow .8s cubic-bezier(.4,0,.2,1) backwards,tc-shimmer 2s ease-in-out infinite;animation-delay:calc(.08s * var(--card-index, 0) + .6s),calc(.08s * var(--card-index, 0) + 1.4s);box-shadow:0 0 12px color-mix(in srgb,var(--success) 45%,transparent)}@keyframes tc-shimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.tc-set-card__fbar-label{display:flex;align-items:baseline;gap:0}.tc-set-card__fbar-current{font-size:var(--text-xs);font-weight:400;color:var(--text-muted)}.tc-set-card__fbar-current--exceeded{font-weight:600;color:var(--success)}.tc-set-card__fbar-goal{font-size:var(--text-xs);font-weight:400;color:var(--text-muted);margin-left:1px}.tc-set-card--exceeded{border-color:color-mix(in srgb,var(--success) 30%,var(--border));box-shadow:var(--shadow-card),0 0 12px color-mix(in srgb,var(--success) 12%,transparent)}.tc-set-card__train-cta{display:none}@media(max-width:768px){.tc-set-card__footer .tc-set-card__train-btn{display:none}.tc-set-card__train-cta{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:7px 0;border-radius:8px;border:none;background:var(--primary);color:#fff;font-size:var(--text-xs);font-weight:600;font-family:inherit;cursor:pointer;transition:background var(--transition-fast)}.tc-set-card__train-cta:active{background:var(--primary-hover, var(--primary-dark))}}.tc-set-card__train-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;border-radius:8px;border:none;background:var(--primary);color:#fff;font-size:var(--text-xs);font-weight:600;font-family:inherit;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast)}.tc-set-card__train-btn:hover{background:var(--primary-hover, var(--primary-dark))}.tc-sessions{display:flex;flex-direction:column;gap:10px;max-width:480px}.tc-sessions--empty{flex-direction:row;align-items:center;gap:8px;padding:20px 16px;border-radius:12px;background:var(--surface);border:1px dashed var(--border);color:var(--text-muted);font-size:var(--text-sm)}.tc-sessions__toggle{display:flex;align-items:center;gap:6px;padding:0;border:none;background:none;cursor:pointer;font-family:inherit}.tc-sessions__title{font-size:var(--text-base);font-weight:600;color:var(--text-primary);margin:0}.tc-sessions__chevron{color:var(--text-muted);transition:transform var(--transition-fast)}.tc-sessions__chevron--open{transform:rotate(180deg)}.tc-sessions__list{display:flex;flex-direction:column;gap:0;border-left:2px solid var(--border);margin-left:6px;padding-left:14px}.tc-session-row{display:flex;align-items:flex-start;gap:10px;padding:8px 0;position:relative}.tc-session-row__dot{position:absolute;left:-20px;top:12px;width:8px;height:8px;border-radius:50%;background:var(--primary);border:2px solid var(--bg-primary)}.tc-session-row__body{flex:1;min-width:0}.tc-session-row__set{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);display:block;line-height:1.3}.tc-session-row__meta{font-size:var(--text-xs);color:var(--text-tertiary)}.tc-session-row__when{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;flex-shrink:0}.tc-ring{display:block}@keyframes tc-ring-draw{0%{stroke-dashoffset:var(--ring-circumference)}}@keyframes tc-enter{0%{opacity:0;transform:translateY(10px)}}@keyframes tc-day-pop{0%{opacity:0;transform:scale(.5)}}@keyframes tc-bar-grow{0%{width:0}}@keyframes tc-card-enter{0%{opacity:0;transform:translateY(16px) scale(.97)}}.tc-ring__progress{animation:tc-ring-draw 1.2s cubic-bezier(.4,0,.2,1) .4s backwards}.tc-stats__card{animation:tc-enter .5s ease-out backwards}.tc-stats__card:nth-child(1){animation-delay:.15s}.tc-stats__card:nth-child(2){animation-delay:.25s}.tc-stats__bottom{animation:tc-enter .4s ease-out .35s backwards}.tc-day-circle{animation:tc-day-pop .3s cubic-bezier(.34,1.56,.64,1) backwards}.tc-day-circle-col:nth-child(1) .tc-day-circle{animation-delay:.5s}.tc-day-circle-col:nth-child(2) .tc-day-circle{animation-delay:.56s}.tc-day-circle-col:nth-child(3) .tc-day-circle{animation-delay:.62s}.tc-day-circle-col:nth-child(4) .tc-day-circle{animation-delay:.68s}.tc-day-circle-col:nth-child(5) .tc-day-circle{animation-delay:.74s}.tc-day-circle-col:nth-child(6) .tc-day-circle{animation-delay:.8s}.tc-day-circle-col:nth-child(7) .tc-day-circle{animation-delay:.86s}.library-grid-v2>.tc-set-card{animation:tc-card-enter .4s ease-out backwards;animation-delay:calc(.08s * var(--card-index, 0) + .3s)}@media(prefers-reduced-motion:reduce){.tc-ring__progress,.tc-stats__card,.tc-stats__bottom,.tc-day-circle,.library-grid-v2>.tc-set-card,.tc-set-card__fbar-fill{animation:none!important}}.tc-debug{display:flex;flex-wrap:wrap;gap:6px;padding:6px 10px;margin-top:-12px;border-radius:0 0 10px 10px;background:color-mix(in srgb,var(--primary) 6%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 12%,var(--border));border-top:none;font-size:11px;font-family:monospace;color:var(--text-tertiary)}.tc-debug__rule{font-weight:700;color:var(--primary)}.tc-debug__flag{color:#ea580c;font-weight:600}.tp__note-fab{position:absolute;bottom:12px;right:12px;z-index:6;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:14px;border:none;cursor:pointer;background:#00000073;backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);border:1px solid rgba(255,255,255,.12);box-shadow:0 4px 14px #00000040,inset 0 1px #ffffff0f;color:#ffffffd9;transition:all var(--transition-fast)}.tp__note-fab:hover{background:#0009;color:#fff;transform:scale(1.05)}.tp__note-fab:active{transform:scale(.95)}.tp__note-backdrop{position:fixed;inset:0;z-index:50;background:var(--overlay-dark);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:tp-note-backdrop-in .2s ease-out}@keyframes tp-note-backdrop-in{0%{opacity:0}to{opacity:1}}.tp__note-palette{position:fixed;top:50%;left:16px;right:16px;transform:translateY(-50%);z-index:51;border-radius:14px;background:var(--surface);border:1px solid var(--border);box-shadow:0 12px 40px #00000040;overflow:hidden;animation:tp-note-palette-pop .25s cubic-bezier(.16,1,.3,1)}@keyframes tp-note-palette-pop{0%{transform:translateY(-50%) scale(.92);opacity:0}to{transform:translateY(-50%) scale(1);opacity:1}}.tp__note-palette-bar{display:flex;align-items:center;gap:10px;padding:12px 14px}.tp__note-palette-icon{color:var(--primary);flex-shrink:0}.tp__note-palette-input{flex:1;border:none;background:transparent;color:var(--text-primary);font-size:var(--text-sm);font-family:inherit;outline:none;min-width:0}.tp__note-palette-input::placeholder{color:var(--text-muted)}.tp__note-kbd{display:inline-flex;align-items:center;justify-content:center;padding:2px 6px;border-radius:5px;background:var(--bg-primary);border:1px solid var(--border);color:var(--text-muted);font-size:10px;font-family:inherit;font-weight:500;line-height:1;flex-shrink:0}.tp__note-kbd--btn{background:#ffffff26;border-color:#fff3;color:#ffffffb3}.tp__note-palette-existing{padding:10px 14px;border-top:1px solid var(--border);margin-top:0}.tp__note-palette-existing-label{font-size:10px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em}.tp__note-palette-existing-text{margin:4px 0 0;font-size:var(--text-xs);color:var(--text-secondary);line-height:1.5;white-space:pre-line}.tp__note-palette-footer{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface) 95%,var(--bg-primary))}.tp__note-paused-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:6px;background:color-mix(in srgb,var(--warning) 12%,transparent);color:var(--warning);font-size:11px;font-weight:600}.tp__note-append-btn{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:8px;border:none;background:var(--primary);color:var(--text-on-primary);font-size:var(--text-xs);font-weight:600;cursor:pointer;font-family:inherit;transition:background var(--transition-fast),opacity var(--transition-fast)}.tp__note-append-btn:hover{background:var(--primary-hover)}.tp__note-append-btn:disabled{opacity:.4;cursor:not-allowed}.tp__note-toast{position:fixed;bottom:calc(16px + var(--safe-area-bottom));left:50%;transform:translate(-50%);z-index:52;display:flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;background:#18181beb;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.08);box-shadow:0 6px 24px #0000004d;animation:tp-note-toast-in .3s cubic-bezier(.16,1,.3,1);pointer-events:none}@keyframes tp-note-toast-in{0%{transform:translate(-50%) translateY(12px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.tp__note-toast-icon{color:#4ade80;flex-shrink:0}.tp__note-toast-text{font-size:var(--text-xs);font-weight:600;color:#ffffffe6;white-space:nowrap}.tp__video-card--dimmed .tp__video{filter:saturate(.4) brightness(.6);transition:filter .4s ease-out}@media(min-width:768px){.tp__note-fab{width:48px;height:48px}.tp__note-palette{left:50%;right:auto;max-width:520px;width:calc(100% - 48px);transform:translate(-50%,-50%)}@keyframes tp-note-palette-pop{0%{transform:translate(-50%,-50%) scale(.92);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}}.tp{height:100vh;height:100dvh;display:flex;flex-direction:column;background:var(--bg-primary);overflow:hidden}.tp--loading,.tp--complete{align-items:center;justify-content:center;gap:16px}.tp__message{color:var(--text-tertiary);font-size:var(--text-sm)}.tp__body{flex:1;display:flex;flex-direction:column;min-height:0;position:relative}.tp__body--entering{opacity:0;transform:translateY(10px)}.tp__body--visible{opacity:1;transform:translateY(0);transition:opacity .5s ease-out,transform .5s ease-out}.tp__header{display:flex;align-items:center;gap:10px;padding:12px 16px 16px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;position:relative}body.capacitor-native .tp__header{padding-top:calc(10px + var(--safe-area-top))}.tp__back{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:all var(--transition-fast)}.tp__back:hover{background:var(--surface-hover);color:var(--text-primary)}.tp__back:active{transform:scale(.93)}.tp__header-center{flex:1;min-width:0;display:flex;flex-direction:column}.tp__header-title{font-size:var(--text-lg);font-weight:800;color:var(--primary);text-transform:uppercase;letter-spacing:.04em;line-height:1.3}.tp__move-line{display:flex;align-items:baseline;gap:6px;min-width:0}.tp__move-name{font-size:var(--text-base);font-weight:500;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.tp__move-counter{font-size:var(--text-xs);font-weight:600;color:var(--text-muted);flex-shrink:0;white-space:nowrap}.tp__timer-pill{display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:10px;background:var(--primary-subtle);color:var(--primary);flex-shrink:0}.tp__timer-pill-value{font-size:var(--text-sm);font-weight:700;color:var(--primary);font-variant-numeric:tabular-nums}.tp__header-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#0000000f}.tp__header-progress-fill{height:100%;background:var(--primary);border-radius:0 2px 2px 0;transition:width 1s linear}.tp__video-card{margin:10px 12px 0;border-radius:16px;overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow-card);flex:1;min-height:0;position:relative}.tp__video-wrap{width:100%;height:100%;overflow:hidden}.tp__video{width:100%;height:100%;object-fit:cover;display:block}.tp__video-empty{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);font-size:var(--text-sm);background:var(--surface)}.tp__media--visible{opacity:1;transform:translate(0);transition:opacity .35s ease,transform .35s ease}.tp__media--exiting{opacity:0;transform:translate(-40px);transition:opacity .35s ease,transform .35s ease}.tp__media--entering{opacity:0;transform:translate(40px);transition:none}.tp__rate-label{display:flex;align-items:center;gap:10px;padding:0 16px;margin-top:10px}.tp__rate-label:before,.tp__rate-label:after{content:"";flex:1;height:1px;background:var(--border)}.tp__rate-label span{font-size:var(--text-xs);font-weight:800;color:var(--text-tertiary);letter-spacing:.1em;white-space:nowrap}.tp__controls{display:flex;align-items:center;justify-content:center;padding:12px 12px max(16px,var(--safe-area-bottom, 0px));flex-shrink:0}.tp__rating-row{display:flex;gap:8px;width:100%}.tp__rating-btn{flex:1;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:8px;border-radius:14px;border:1.5px solid var(--border);background:var(--surface);cursor:pointer;font-family:inherit;transition:all var(--transition-fast)}.tp__rating-btn:active{transform:scale(.95)}.tp__rating-btn-icon{margin-bottom:2px}.tp__rating-btn-label{font-size:var(--text-base);font-weight:700;line-height:1.2}.tp__rating-btn-subtitle{font-size:var(--text-xs);font-weight:500;opacity:.7;line-height:1.3;display:none}@media(min-width:768px){.tp__rating-btn-subtitle{display:block}}.tp__rating-btn--tough{border-color:color-mix(in srgb,var(--danger) 30%,var(--border));background:color-mix(in srgb,var(--danger) 5%,var(--surface));color:var(--danger)}.tp__rating-btn--tough:hover{background:color-mix(in srgb,var(--danger) 12%,var(--surface));border-color:color-mix(in srgb,var(--danger) 50%,var(--border));box-shadow:0 2px 10px color-mix(in srgb,var(--danger) 15%,transparent)}.tp__rating-btn--solid{color:var(--text-secondary)}.tp__rating-btn--solid:hover{background:var(--surface-hover);border-color:var(--border-hover);color:var(--text-primary);box-shadow:0 2px 10px var(--shadow-medium)}.tp__rating-btn--nailed{border-color:color-mix(in srgb,var(--primary) 30%,var(--border));background:color-mix(in srgb,var(--primary) 5%,var(--surface));color:var(--primary)}.tp__rating-btn--nailed:hover{background:color-mix(in srgb,var(--primary) 12%,var(--surface));border-color:color-mix(in srgb,var(--primary) 50%,var(--border));box-shadow:0 2px 10px var(--primary-glow)}.tp__split-row{display:flex;gap:8px;width:100%;animation:tp-split-in .2s ease-out}@keyframes tp-split-in{0%{opacity:0}to{opacity:1}}.tp__split-btn{flex:1;height:calc((100vw - 40px) / 3);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:0 8px;border-radius:14px;border:1.5px solid var(--border);background:var(--surface);cursor:pointer;font-family:inherit;transition:all var(--transition-fast)}.tp__split-btn:active{transform:scale(.95)}.tp__split-btn-icon{margin-bottom:2px}.tp__split-btn-label{font-size:var(--text-lg);font-weight:700;line-height:1.2}.tp__split-btn-subtitle{font-size:var(--text-sm);font-weight:500;opacity:.7;line-height:1.3}.tp__split-btn--drill{border-color:color-mix(in srgb,var(--danger) 35%,var(--border));background:color-mix(in srgb,var(--danger) 6%,var(--surface));color:var(--danger)}.tp__split-btn--drill:hover{background:color-mix(in srgb,var(--danger) 12%,var(--surface));box-shadow:0 2px 10px color-mix(in srgb,var(--danger) 15%,transparent)}.tp__split-btn--defer{border-color:color-mix(in srgb,var(--text-tertiary) 25%,var(--border));color:var(--text-secondary)}.tp__split-btn--defer:hover{background:var(--surface-hover);border-color:var(--border-hover);box-shadow:0 2px 10px var(--shadow-medium)}.tp__complete-card{margin:16px 12px;padding:28px 20px;border-radius:18px;background:radial-gradient(ellipse 80% 50% at 50% 0%,color-mix(in srgb,var(--primary) 8%,transparent) 0%,transparent 70%),var(--surface);border:1px solid color-mix(in srgb,var(--primary) 15%,var(--border));box-shadow:var(--shadow-card);display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.tp__complete-cuy{width:64px;height:64px;border-radius:50%;background:color-mix(in srgb,var(--surface) 80%,var(--primary-tint));border:1.5px solid color-mix(in srgb,var(--primary) 20%,var(--border));box-shadow:0 2px 10px color-mix(in srgb,var(--primary) 12%,transparent);display:flex;align-items:center;justify-content:center;padding:8px}.tp__complete-cuy-img{width:100%;height:100%;object-fit:contain}.tp__complete-heading{font-size:var(--text-xl);font-weight:700;color:var(--text-primary);margin:0}.tp__complete-sub{font-size:var(--text-sm);color:var(--text-secondary);margin:0;line-height:1.4}.tp__complete-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;width:100%;margin-top:4px}.tp__stat-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 8px;border-radius:14px;background:var(--bg-primary);border:1px solid var(--border)}.tp__stat-icon{color:var(--primary)}.tp__stat-val{font-size:var(--text-lg);font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.tp__stat-lbl{font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em}.tp__done-btn{width:100%;padding:12px 0;border-radius:14px;border:none;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;font-family:inherit;font-size:var(--text-base);font-weight:700;cursor:pointer;box-shadow:0 4px 14px var(--primary-glow);transition:all var(--transition-fast);margin-top:4px}.tp__done-btn:hover{transform:translateY(-1px)}.tp__done-btn:active{transform:translateY(0) scale(.97)}.tp__video-card--transitioning .tp__video{filter:saturate(.35) brightness(.72);transition:filter .5s ease-out}.tp__transition-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;z-index:5}.tp__transition-number{font-size:72px;line-height:1;font-weight:700;font-variant-numeric:tabular-nums;color:#fffc;text-shadow:0 2px 12px rgba(0,0,0,.5);animation:tp-transition-pop .95s cubic-bezier(.16,1,.3,1) both;will-change:transform,opacity}@keyframes tp-transition-pop{0%{transform:scale(1.5);opacity:0}20%{transform:scale(.95);opacity:1}30%{transform:scale(1.02);opacity:1}45%{transform:scale(1);opacity:1}80%{transform:scale(1);opacity:1}to{transform:scale(.8);opacity:0}}.tp__transition-hint{position:absolute;bottom:20%;font-size:var(--text-xs);font-weight:600;color:#fff9;text-shadow:0 2px 8px rgba(0,0,0,.4);letter-spacing:.5px;text-transform:uppercase;animation:tp-transition-hint-in .4s .15s ease-out both}@keyframes tp-transition-hint-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.tp__controls--spotlight{background:color-mix(in srgb,var(--primary) 4%,var(--bg-primary));padding-top:14px;padding-bottom:calc(20px + var(--safe-area-bottom));animation:tp-spotlight-in .4s ease-out}@keyframes tp-spotlight-in{0%{background:transparent}}.tp__controls--spotlight .tp__rating-btn--tough{border-color:color-mix(in srgb,var(--danger) 40%,var(--border));background:color-mix(in srgb,var(--danger) 6%,var(--surface));box-shadow:0 1px 6px color-mix(in srgb,var(--danger) 10%,transparent)}.tp__controls--spotlight .tp__rating-btn--nailed{border-color:color-mix(in srgb,var(--primary) 40%,var(--border));background:color-mix(in srgb,var(--primary) 6%,var(--surface));box-shadow:0 1px 6px color-mix(in srgb,var(--primary) 10%,transparent)}.tp__controls--spotlight .tp__rating-btn--solid{border-color:var(--primary);background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;box-shadow:0 4px 16px var(--primary-glow);transform:translateY(-1px)}.tp__controls--spotlight .tp__rating-btn--solid .tp__rating-btn-icon,.tp__controls--spotlight .tp__rating-btn--solid .tp__rating-btn-label{color:#fff}.tp__controls--spotlight .tp__rating-btn--solid .tp__rating-btn-subtitle{color:#ffffffb3;opacity:1}@media(min-width:768px){.tp__header{padding:20px 28px 22px}.tp__header-center{text-align:center}.tp__header-title{display:none}.tp__move-name{font-size:var(--text-2xl);font-weight:700;color:var(--text-primary);white-space:normal}.tp__move-line{justify-content:center}.tp__move-counter{font-size:var(--text-sm)}.tp__rate-label{padding:0 24px;margin-top:12px}.tp__rate-label span{font-size:var(--text-xs)}.tp__video-card{margin:12px 24px;border-radius:14px}.tp__video{object-fit:contain;background:#111}.tp__controls{padding:14px 24px 20px}.tp__rating-btn{aspect-ratio:auto;justify-content:flex-start;padding:12px 8px 10px}.tp__rating-btn-label{font-size:var(--text-base)}.tp__rating-btn-subtitle{font-size:var(--text-sm)}.tp__split-btn{height:auto;padding:12px 8px 10px}.tp__split-btn-label{font-size:var(--text-base)}.tp__split-btn-subtitle{font-size:var(--text-sm)}.tp__complete-card{padding:36px 32px;max-width:480px;margin:20px auto}.tp__complete-cuy{width:80px;height:80px;padding:10px}.tp__complete-heading{font-size:var(--text-2xl)}.tp__complete-grid{grid-template-columns:repeat(4,1fr)}.tp__done-btn{max-width:200px}}@media(orientation:portrait)and (max-width:767px){.tp__video{object-fit:cover}}.training-row{display:flex;align-items:center;gap:14px;padding:12px 16px;border:none;border-bottom:1px solid var(--border);background:transparent;cursor:pointer;transition:background var(--transition-fast);text-align:left;font-family:inherit;width:100%;-webkit-tap-highlight-color:transparent;animation:training-row-enter .28s ease-out backwards;animation-delay:var(--enter-delay, 0ms)}.training-row:last-child{border-bottom:none}.training-row:hover{background:var(--highlight-faint)}.training-row:active{background:var(--surface-hover)}@keyframes training-row-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.training-row__thumb{width:56px;height:56px;border-radius:10px;overflow:hidden;flex-shrink:0;background:var(--surface-hover)}.training-row__thumb img{width:100%;height:100%;object-fit:cover}.training-row__thumb-empty{width:100%;height:100%;background:var(--surface-hover)}.training-row__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.training-row__title{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.training-row__subtitle{font-size:var(--text-xs);color:var(--text-tertiary);line-height:1.3}.training-row__right{display:flex;align-items:center;gap:8px;flex-shrink:0}@media(max-width:600px){.training-row{padding:10px 16px;gap:12px}.training-row__thumb{width:44px;height:44px;border-radius:8px}.training-row__subtitle{font-size:var(--text-xs)}}@media(min-width:768px){.training-row{padding:14px 20px;gap:18px}.training-row__thumb{width:72px;height:72px;border-radius:12px}.training-row__title{font-size:var(--text-base, 1rem)}.training-row__subtitle{font-size:var(--text-sm)}}.tough-page{padding:0 16px 80px;width:100%}.tough-page__loading{display:flex;justify-content:center;padding-top:80px}.tough-page__empty{text-align:center;padding:64px 20px;color:var(--text-tertiary);font-size:var(--text-sm)}.tough-mobile-back{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:none;border-radius:8px;color:var(--text-primary);cursor:pointer;flex-shrink:0;-webkit-tap-highlight-color:transparent}.tough-mobile-back:active{background:var(--surface-hover)}.tough-page__header{margin-bottom:20px}.tough-page__header-left{display:flex;align-items:center;gap:10px;margin-bottom:4px}.tough-page__title{font-size:var(--text-xl, 1.25rem);font-weight:700;color:var(--text-primary);margin:0}.tough-page__count{font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:2px 8px}.tough-page__desc{margin:0;font-size:var(--text-sm);color:var(--text-tertiary);line-height:1.4}.tough-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden}.tough-card__head{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-bottom:1px solid var(--border)}.tough-card__col-label{font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em}.tough-card__col-label--right{padding-right:28px}.tough-list{display:flex;flex-direction:column}.tough-row__heat-bar{height:3px;border-radius:2px;background:var(--border);margin-top:2px;width:100%;max-width:160px}.tough-row__heat-fill{height:100%;border-radius:2px;background:linear-gradient(90deg,var(--warning, #f59e0b),var(--danger));transition:width .6s cubic-bezier(.34,1.56,.64,1)}.tough-section-header{display:flex;align-items:center;gap:6px;padding:10px 16px 6px;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em}.tough-section-header--study{color:var(--text-tertiary)}.tough-section-header--tough{color:var(--danger);margin-top:4px}.tough-section-header__count{font-weight:600;opacity:.6}.training-row.tough-row--deferred{background:color-mix(in srgb,var(--surface) 50%,var(--bg-primary))}.training-row.tough-row--deferred:hover{background:var(--surface-hover)}.tough-row__subtitle--deferred{display:flex;align-items:center;gap:4px}.tough-row__ready-btn{display:inline-flex;align-items:center;gap:5px;font-size:var(--text-xs);font-weight:600;color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 20%,var(--border));border-radius:8px;padding:5px 10px;cursor:pointer;font-family:inherit;transition:all var(--transition-fast);white-space:nowrap;line-height:1}.tough-row__ready-btn:hover{background:color-mix(in srgb,var(--primary) 14%,var(--surface));border-color:color-mix(in srgb,var(--primary) 35%,var(--border));box-shadow:0 2px 8px color-mix(in srgb,var(--primary) 12%,transparent)}.tough-row__ready-btn:active{transform:scale(.95)}.tough-row__badge{display:inline-flex;align-items:center;gap:3px;font-size:var(--text-xs);font-weight:700;color:#fff;background:var(--danger);border-radius:8px;padding:3px 8px;font-variant-numeric:tabular-nums;line-height:1}.tough-row__chevron{color:var(--text-tertiary);opacity:.5;transition:opacity var(--transition-fast)}.training-row:hover .tough-row__chevron{opacity:1}@media(max-width:600px){.tough-page{padding:0 0 80px}.tough-page__header{display:none}.tough-card{background:transparent;border:none;border-radius:0}.tough-row__heat-bar{display:none}.tough-row__ready-btn{font-size:11px;padding:4px 8px;gap:4px}.training-row.tough-row--deferred .tough-row__chevron{display:none}}@media(min-width:768px){.tough-page{padding:24px 32px 80px}.tough-page__title{font-size:var(--text-2xl, 1.5rem)}.tough-row__heat-bar{max-width:240px}.tough-row__badge{font-size:var(--text-sm);padding:4px 10px}.tough-card__head{padding:12px 20px}.tough-row__ready-btn{font-size:var(--text-sm);padding:6px 14px;gap:6px}}.study-page{padding:0 16px 80px;width:100%}.study-mobile-back{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:none;border-radius:8px;color:var(--text-primary);cursor:pointer;flex-shrink:0;-webkit-tap-highlight-color:transparent}.study-mobile-back:active{background:var(--surface-hover)}.study-page__header{margin-bottom:20px}.study-page__header-left{display:flex;align-items:center;gap:16px;margin-bottom:4px}.study-page__title{display:flex;align-items:center;gap:8px;font-size:var(--text-xl, 1.25rem);font-weight:700;color:var(--text-primary);margin:0}.study-page__title-icon{color:var(--primary)}.study-tabs{display:flex;gap:2px;padding:0;margin-bottom:12px;flex-shrink:0}.study-tab{display:flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;border:none;background:transparent;color:var(--text-tertiary);font-family:inherit;font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.study-tab:hover{background:var(--surface-hover);color:var(--text-primary)}.study-tab--active{background:var(--surface);color:var(--text-primary);border:1px solid var(--border)}.study-tab__count{font-size:10px;font-weight:700;color:var(--text-tertiary);background:var(--surface-hover);padding:1px 6px;border-radius:6px;font-variant-numeric:tabular-nums}.study-tab--active .study-tab__count{background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary)}.study-slots{display:flex;align-items:center;gap:8px}.study-slots__label{font-size:10px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em}.study-slots__dots{display:flex;gap:4px}.study-slots__dot{width:8px;height:8px;border-radius:50%;background:var(--surface-hover);border:1px solid var(--border);transition:all var(--transition-fast)}.study-slots__dot--filled{background:var(--primary);border-color:var(--primary)}.study-slots__count{font-size:var(--text-xs);font-weight:700;color:var(--text-secondary);font-variant-numeric:tabular-nums}.study-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden}.study-list{display:flex;flex-direction:column}.study-expiry-bar{height:3px;border-radius:2px;background:var(--surface-hover);margin-top:2px;width:100%;max-width:120px}.study-expiry-bar__fill{height:100%;border-radius:2px;transition:width .3s ease}.study-expiry-bar__fill--normal{background:var(--primary)}.study-expiry-bar__fill--warning{background:linear-gradient(90deg,var(--primary),var(--warning, #f59e0b))}.study-expiry-bar__fill--critical{background:linear-gradient(90deg,var(--warning, #f59e0b),var(--danger))}.study-row__btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid var(--border);background:var(--surface);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.study-row__btn--studied{color:var(--primary);border-color:var(--primary)}.study-row__btn--studied:hover{background:var(--primary);color:#fff}.study-row__btn--remove{color:var(--text-tertiary)}.study-row__btn--remove:hover{color:var(--danger);border-color:var(--danger)}.study-row__btn--restore{color:var(--primary)}.study-row__btn--restore:hover{background:color-mix(in srgb,var(--primary) 10%,transparent)}.training-row.study-row--expired{opacity:.7}.training-row.study-row--expired .training-row__thumb{opacity:.5;filter:grayscale(30%)}.study-expired-section{margin-top:8px}.study-expired-toggle{display:flex;align-items:center;gap:6px;width:100%;padding:10px 16px;border:none;background:transparent;color:var(--text-tertiary);font-family:inherit;font-size:11px;font-weight:600;cursor:pointer;transition:color var(--transition-fast)}.study-expired-toggle:hover{color:var(--text-secondary)}.study-expired-toggle__count{font-size:10px;font-weight:700;background:var(--surface-hover);padding:1px 6px;border-radius:6px;font-variant-numeric:tabular-nums}.study-expired-toggle__chevron{margin-left:auto;transition:transform var(--transition-fast)}.study-expired-toggle__chevron--open{transform:rotate(180deg)}.study-section-header{display:flex;align-items:center;gap:6px;padding:10px 16px 6px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.study-section-header--study{color:var(--text-tertiary)}.study-section-header--tough{color:var(--danger);margin-top:4px}.study-section-header__count{font-weight:600;opacity:.6}.training-row.study-row--deferred{background:color-mix(in srgb,var(--surface) 50%,var(--bg-primary))}.training-row.study-row--deferred:hover{background:var(--surface-hover)}.study-deferred-subtitle{display:flex;align-items:center;gap:4px}.study-ready-btn{display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:600;color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 20%,var(--border));border-radius:8px;padding:5px 12px;cursor:pointer;font-family:inherit;transition:all var(--transition-fast);white-space:nowrap;line-height:1}.study-ready-btn:hover{background:color-mix(in srgb,var(--primary) 14%,var(--surface));border-color:color-mix(in srgb,var(--primary) 35%,var(--border))}.study-ready-btn:active{transform:scale(.95)}.study-heat-bar{height:3px;border-radius:2px;background:var(--border);margin-top:2px;width:100%;max-width:160px}.study-heat-fill{height:100%;border-radius:2px;background:linear-gradient(90deg,var(--warning, #f59e0b),var(--danger));transition:width .6s cubic-bezier(.34,1.56,.64,1)}.study-flame-badge{display:inline-flex;align-items:center;gap:3px;font-size:var(--text-xs);font-weight:700;color:#fff;background:var(--danger);border-radius:8px;padding:3px 8px;font-variant-numeric:tabular-nums;line-height:1}.study-row-chevron{color:var(--text-tertiary);opacity:.5;transition:opacity var(--transition-fast)}.training-row:hover .study-row-chevron{opacity:1}.study-empty__icon-ring--tough{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger)}@keyframes study-snackbar-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.study-snackbar{position:fixed;bottom:88px;left:16px;right:16px;max-width:480px;margin:0 auto;display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:12px;background:var(--surface);border:1px solid var(--border);box-shadow:0 4px 16px var(--shadow-medium);animation:study-snackbar-enter .25s ease-out;z-index:50}.study-snackbar__icon{color:var(--primary);flex-shrink:0}.study-snackbar__text{flex:1;min-width:0;font-size:var(--text-sm);color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.study-snackbar__text strong{color:var(--text-primary);font-weight:600}.study-snackbar__action{display:inline-flex;align-items:center;gap:5px;padding:8px 14px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);flex-shrink:0;min-height:36px}.study-snackbar__action:hover{border-color:var(--primary);color:var(--primary)}.study-snackbar__action:active{transform:scale(.95)}@keyframes study-morph-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.study-sf-animate{animation:study-morph-in .25s cubic-bezier(.16,1,.3,1) both}.study-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:48px 20px;gap:12px}.study-empty__icon-ring{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary);margin-bottom:4px}.study-empty__title{font-size:var(--text-xl);font-weight:700;color:var(--text-primary);margin:0}.study-empty__text{font-size:var(--text-sm);color:var(--text-secondary);margin:0;max-width:320px;line-height:1.5}@media(max-width:600px){.study-page{padding:0 0 80px}.study-page__header{display:none}.study-card{background:transparent;border:none;border-radius:0}.study-tabs{padding:0 12px}.study-heat-bar,.training-row.study-row--deferred .study-row-chevron{display:none}.study-expired-toggle{padding:10px 12px}.study-slots__label{display:none}.study-empty__title{font-size:var(--text-lg)}.study-empty__text{font-size:var(--text-xs);max-width:260px}.study-row__btn{width:36px;height:36px}}@media(min-width:768px){.study-page{padding:24px 32px 80px}.study-page__title{font-size:var(--text-2xl, 1.5rem)}.study-expiry-bar{max-width:180px}.study-row__btn{width:32px;height:32px}.study-heat-bar{max-width:240px}.study-flame-badge{font-size:var(--text-sm);padding:4px 10px}.study-ready-btn{font-size:var(--text-sm);padding:6px 14px;gap:6px}}.sc-page{width:100%;min-height:100%;position:relative}.sc-loading{display:flex;align-items:center;justify-content:center;padding:48px 16px;color:var(--text-tertiary);font-size:var(--text-sm);font-weight:600}.sc-error{display:flex;align-items:center;justify-content:center;padding:48px 16px;color:var(--danger);font-size:var(--text-sm);font-weight:600;text-align:center}.sc-search{display:flex;flex-direction:column;align-items:center;gap:24px;padding:16px 0}.sc-search-visual{position:relative;width:120px;height:120px;display:flex;align-items:center;justify-content:center}.sc-search-cuy-ring{width:88px;height:88px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--primary) 12%,transparent);border:2px solid color-mix(in srgb,var(--primary) 22%,transparent);z-index:1;animation:sc-search-glow 3s ease-in-out infinite}.sc-search-cuy{width:56px;height:56px;object-fit:contain;animation:sc-search-breathe 3s ease-in-out infinite}@keyframes sc-search-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes sc-search-glow{0%,to{box-shadow:0 0 20px color-mix(in srgb,var(--primary) 10%,transparent)}50%{box-shadow:0 0 36px color-mix(in srgb,var(--primary) 22%,transparent)}}.sc-search-ring{position:absolute;top:50%;left:50%;width:88px;height:88px;margin-top:-44px;margin-left:-44px;border-radius:50%;border:2px solid var(--primary);opacity:0;animation:sc-search-ring-pulse 2.8s ease-out infinite}.sc-search-ring--2{animation-delay:1.4s}@keyframes sc-search-ring-pulse{0%{transform:scale(1);opacity:.45}to{transform:scale(1.6);opacity:0}}.sc-search-particle{position:absolute;border-radius:50%;background:var(--primary);opacity:.35;z-index:0}.sc-search-particle--1{width:8px;height:8px;top:2%;right:8%;animation:sc-search-float 5s ease-in-out infinite}.sc-search-particle--2{width:6px;height:6px;top:25%;left:0;animation:sc-search-float 6s ease-in-out infinite .8s}.sc-search-particle--3{width:5px;height:5px;bottom:8%;right:4%;animation:sc-search-float 5.5s ease-in-out infinite 1.6s}.sc-search-particle--4{width:7px;height:7px;bottom:20%;left:5%;animation:sc-search-float 6.5s ease-in-out infinite .4s}.sc-search-particle--5{width:4px;height:4px;top:10%;left:18%;animation:sc-search-float 5.8s ease-in-out infinite 1.2s}.sc-search-particle--6{width:5px;height:5px;bottom:2%;left:40%;animation:sc-search-float 6.2s ease-in-out infinite 2s}@keyframes sc-search-float{0%,to{transform:translateY(0);opacity:.35}50%{transform:translateY(-14px);opacity:.55}}.sc-search-messages{display:flex;flex-direction:column;align-items:center;gap:4px;min-height:44px}.sc-search-msg-main{font-size:var(--text-base);font-weight:700;color:var(--text-primary);animation:sc-search-msg-in .4s ease}.sc-search-msg-sub{font-size:var(--text-sm);color:var(--text-tertiary);animation:sc-search-msg-in .4s ease .1s both}@keyframes sc-search-msg-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.sc-search-visual{width:100px;height:100px}.sc-search-cuy-ring{width:72px;height:72px}.sc-search-ring{width:72px;height:72px;margin-top:-36px;margin-left:-36px}.sc-search-cuy{width:46px;height:46px}.sc-search-msg-main{font-size:var(--text-sm)}.sc-search-msg-sub{font-size:var(--text-xs)}}@media(prefers-reduced-motion:reduce){.sc-search-cuy,.sc-search-cuy-ring,.sc-search-ring,.sc-search-particle{animation:none}.sc-search-ring{opacity:.15;transform:scale(1.2)}}.sc-section-label{font-size:var(--text-xs);font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em}.sc-hub{padding:24px 32px;display:flex;flex-direction:column;gap:20px}@media(max-width:600px){.sc-hub{padding:14px;gap:14px}}.sc-hub-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px 16px;gap:10px}.sc-hub-empty-ring{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary);margin-bottom:4px}.sc-hub-empty-title{font-size:var(--text-base);font-weight:700;color:var(--text-primary);margin:0}.sc-hub-empty-text{font-size:var(--text-sm);color:var(--text-secondary);margin:0;max-width:280px;line-height:1.5}@media(max-width:600px){.sc-hub-empty-title{font-size:var(--text-sm)}.sc-hub-empty-text{font-size:var(--text-xs)}}.sc-hub-moves{display:flex;flex-direction:row;gap:12px}.sc-hub-move-card{flex:1;display:flex;flex-direction:column;align-items:stretch;border-radius:12px;background:var(--surface);border:1px solid var(--border);overflow:hidden;transition:background var(--transition-fast)}.sc-hub-move-card:hover{background:var(--surface-hover)}.sc-hub-move-gif{width:100%;height:80px;object-fit:cover}.sc-hub-move-info{display:flex;flex-direction:column;gap:1px;padding:8px 10px}.sc-hub-move-title{font-size:var(--text-xs);font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sc-hub-move-source{font-size:var(--text-xs);color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:600px){.sc-hub-moves{flex-direction:column;gap:8px}.sc-hub-move-card{flex-direction:row;align-items:center;gap:10px;padding:8px 10px}.sc-hub-move-gif{width:44px;height:44px;border-radius:8px}}.sc-history{display:flex;flex-direction:column;gap:10px}.sc-history-list{display:flex;flex-direction:column;gap:6px}.sc-history-card{display:flex;align-items:center;gap:10px;padding:12px;border-radius:12px;background:var(--surface);border:1px solid var(--border);cursor:pointer;transition:all var(--transition-fast)}.sc-history-card:hover{background:var(--surface-hover);border-color:var(--border-hover)}.sc-history-card-accent{width:4px;height:36px;border-radius:2px;flex-shrink:0}.sc-history-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.sc-history-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.sc-history-card-venue{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sc-history-card-date{font-size:var(--text-xs);color:var(--text-tertiary);white-space:nowrap;flex-shrink:0}.sc-history-card-bottom{display:flex;align-items:center;gap:8px}.sc-history-card-stat{font-size:var(--text-xs);color:var(--text-secondary);white-space:nowrap}.sc-history-card-chevron{color:var(--text-tertiary);flex-shrink:0}@media(max-width:600px){.sc-history-card-venue{font-size:var(--text-xs)}}.sc-success-bar{flex:1;max-width:80px;height:4px;border-radius:2px;background:var(--surface-hover)}.sc-success-bar-fill{height:100%;border-radius:2px;background:var(--primary);transition:width var(--transition-slow)}.sc-wizard-modal{width:520px;transition:width var(--transition-normal)}.sc-wizard-modal .modal-body{padding:0}.sc-wizard-modal:has(.sc-review-cards){width:780px}.sc-wizard-modal:has(.sc-schedule){width:640px}.sc-wizard-body{position:relative}.sc-wizard-close{position:absolute;top:12px;right:12px;z-index:2;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.sc-wizard-close:hover{background:var(--surface-hover);color:var(--text-primary)}.sc-step{padding:16px 20px 0;display:flex;flex-direction:column;gap:16px;min-height:0;max-height:70vh;overflow:hidden auto;scrollbar-width:none;animation:sc-step-enter .2s ease}.sc-step::-webkit-scrollbar{display:none}@keyframes sc-step-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.sc-step{animation:none}}.sc-step--centered{align-items:center;text-align:center}.sc-step-hero{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px}.sc-step-cuy-ring{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--primary) 10%,transparent);border:2px solid color-mix(in srgb,var(--primary) 18%,transparent);margin-bottom:4px}.sc-step-cuy-ring img{width:52px;height:52px;object-fit:contain}.sc-step-title{font-size:var(--text-lg);font-weight:700;color:var(--text-primary);margin:0;line-height:1.3}.sc-step-subtitle{font-size:var(--text-sm);color:var(--text-secondary);margin:2px 0 0;line-height:1.4}.sc-step-footer{position:sticky;bottom:0;z-index:2;display:flex;align-items:center;justify-content:center;margin:0 -20px;padding:12px 20px 16px;background:var(--bg-primary);border-top:1px solid var(--border)}.sc-step-footer .sc-btn--primary{width:100%}@media(max-width:600px){.sc-step{padding:14px 14px 0}.sc-step-footer{margin:0 -14px;padding:10px 14px 16px}.sc-step-cuy-ring{width:64px;height:64px}.sc-step-cuy-ring img{width:42px;height:42px}.sc-step-title{font-size:var(--text-base)}.sc-step-subtitle{font-size:var(--text-xs)}}.sc-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:none;font-family:inherit;font-weight:600;cursor:pointer;transition:all var(--transition-fast);border-radius:12px}.sc-btn--primary{padding:12px 28px;background:var(--primary);color:#fff;font-size:var(--text-sm)}.sc-btn--primary:hover{background:var(--primary-hover)}.sc-btn--ghost{padding:8px 16px;background:transparent;color:var(--text-tertiary);font-size:var(--text-xs)}.sc-btn--ghost:hover{color:var(--text-primary)}.sc-pick-hero{position:relative;width:calc(100% + 40px);margin:-16px -20px 0;padding:40px 24px 32px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;background:radial-gradient(ellipse 80% 65% at 50% 45%,color-mix(in srgb,var(--primary) 8%,transparent) 0%,transparent 70%);overflow:hidden}.sc-pick-cuy-wrap{width:120px;height:120px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 16%,var(--surface)),color-mix(in srgb,var(--primary) 6%,var(--surface)));box-shadow:0 10px 40px color-mix(in srgb,var(--primary) 14%,transparent),inset 0 -4px 14px color-mix(in srgb,var(--primary) 8%,transparent);animation:sc-pick-float 4s ease-in-out infinite;z-index:1}.sc-pick-cuy{width:80px;height:80px;object-fit:contain}@keyframes sc-pick-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.sc-pick-badge{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:3px;color:var(--primary);margin-top:8px}.sc-pick-title{font-size:24px;font-weight:800;color:var(--text-primary);margin:0;line-height:1.3;max-width:340px}.sc-pick-particles{position:absolute;inset:-30px;pointer-events:none}.sc-pick-particle{position:absolute;border-radius:50%;background:var(--primary);opacity:.3}.sc-pick-particle--1{width:10px;height:10px;top:10%;right:8%;animation:sc-pick-particle-float 5s ease-in-out infinite}.sc-pick-particle--2{width:7px;height:7px;top:30%;left:4%;animation:sc-pick-particle-float 6s ease-in-out infinite .8s}.sc-pick-particle--3{width:6px;height:6px;bottom:18%;right:12%;animation:sc-pick-particle-float 5.5s ease-in-out infinite 1.6s}.sc-pick-particle--4{width:5px;height:5px;bottom:30%;left:8%;animation:sc-pick-particle-float 6.5s ease-in-out infinite .4s}.sc-pick-particle--5{width:4px;height:4px;top:55%;right:3%;animation:sc-pick-particle-float 7s ease-in-out infinite 2s}.sc-pick-particle--6{width:8px;height:8px;bottom:10%;left:18%;animation:sc-pick-particle-float 5.8s ease-in-out infinite 1.2s}@keyframes sc-pick-particle-float{0%,to{transform:translateY(0);opacity:.3}50%{transform:translateY(-14px);opacity:.5}}@media(max-width:600px){.sc-pick-hero{width:calc(100% + 28px);margin:-14px -14px 0;padding:28px 16px 24px}.sc-pick-cuy-wrap{width:96px;height:96px}.sc-pick-cuy{width:64px;height:64px}.sc-pick-title{font-size:20px}}@media(prefers-reduced-motion:reduce){.sc-pick-cuy-wrap,.sc-pick-particle{animation:none}}.sc-count-picker{display:flex;gap:12px;justify-content:center;margin:8px 0}.sc-count-picker-btn{width:52px;height:52px;border-radius:50%;border:2px solid var(--border);background:var(--surface);color:var(--text-primary);font-family:inherit;font-size:var(--text-xl);font-weight:700;cursor:pointer;transition:all var(--transition-fast);font-variant-numeric:tabular-nums}.sc-count-picker-btn:hover{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 6%,transparent)}.sc-count-picker-btn--active{background:var(--primary);border-color:var(--primary);color:#fff;transform:scale(1.1);box-shadow:0 4px 16px color-mix(in srgb,var(--primary) 30%,transparent)}.sc-count-picker-btn--active:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.sc-count-caption{font-size:var(--text-sm);color:var(--text-secondary);margin:0}@media(max-width:600px){.sc-count-picker-btn{width:46px;height:46px;font-size:var(--text-lg)}}.sc-review-cards{display:flex;flex-direction:row;gap:16px}.sc-review-card{flex:1;display:flex;flex-direction:column;border-radius:14px;background:var(--surface);border:1px solid var(--border);overflow:hidden;transition:border-color var(--transition-fast)}.sc-review-card:hover{border-color:var(--border-hover)}.sc-review-card-gif{width:100%;height:130px;object-fit:cover}.sc-review-card-body{padding:10px 12px;display:flex;flex-direction:column;gap:3px}.sc-review-card-title{font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.sc-review-card-source{font-size:var(--text-xs);color:var(--text-tertiary)}.sc-review-card-reason{font-size:var(--text-xs);font-weight:600;color:var(--primary);margin-top:4px;padding:3px 8px;background:color-mix(in srgb,var(--primary) 10%,transparent);border-radius:6px;width:fit-content}.sc-review-card-actions{display:flex;align-items:center;gap:6px;padding:8px 12px;border-top:1px solid var(--border)}.sc-review-card-swap{display:flex;align-items:center;gap:4px;padding:6px 12px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);font-family:inherit;font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.sc-review-card-swap:hover{border-color:var(--primary);color:var(--primary)}.sc-review-card-swap:disabled{opacity:.4;cursor:not-allowed}.sc-review-card-swap:disabled:hover{border-color:var(--border);color:var(--text-primary)}.sc-review-card-block{display:flex;align-items:center;gap:3px;padding:5px 8px;border:none;background:transparent;color:var(--text-tertiary);font-family:inherit;font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:color var(--transition-fast)}.sc-review-card-block:hover{color:var(--danger)}@media(max-width:600px){.sc-review-cards{flex-direction:column;gap:4px}.sc-review-card{display:grid;grid-template-columns:3px 44px 1fr;gap:0 12px;align-items:center;border:none;border-radius:10px;padding:10px 10px 10px 0;background:none}.sc-review-card:hover{border-color:transparent}.sc-review-card:before{content:"";grid-column:1;grid-row:1 / -1;width:3px;align-self:stretch;background:var(--primary);border-radius:0 3px 3px 0;margin:2px 0}.sc-review-card-gif{grid-column:2;grid-row:1 / -1;width:44px;height:44px;min-height:0;border-radius:8px;box-shadow:inset 0 0 0 1px #0000000f;cursor:pointer}.sc-review-card-body{grid-column:3;padding:0;gap:3px}.sc-review-card-title{font-size:var(--text-sm);font-weight:600;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sc-review-card-source{display:none}.sc-review-card-reason{font-size:11px;font-weight:600;letter-spacing:.02em;color:var(--primary);background:none;padding:0;margin:0;border-radius:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sc-review-card-actions{grid-column:3;border-top:none;padding:2px 0 0;gap:8px}.sc-review-card-swap{padding:4px 8px;font-size:11px;border-radius:6px}.sc-review-card-block{padding:4px 6px;font-size:11px}.sc-review-card--expanded{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:12px;padding:0;background:var(--surface);overflow:hidden}.sc-review-card--expanded:before{display:none}.sc-review-card--expanded .sc-review-card-gif{grid-column:unset;grid-row:unset;width:100%;height:160px;border-radius:0;box-shadow:none}.sc-review-card--expanded .sc-review-card-body{grid-column:unset;padding:10px 12px 4px}.sc-review-card--expanded .sc-review-card-title{white-space:normal}.sc-review-card--expanded .sc-review-card-source{display:block}.sc-review-card--expanded .sc-review-card-reason{font-size:var(--text-xs);background:color-mix(in srgb,var(--primary) 10%,transparent);padding:3px 8px;border-radius:6px;width:fit-content;white-space:normal}.sc-review-card--expanded .sc-review-card-actions{grid-column:unset;padding:8px 12px;border-top:1px solid var(--border)}.sc-review-card--expanded .sc-review-card-swap,.sc-review-card--expanded .sc-review-card-block{font-size:var(--text-xs);padding:6px 12px}}.sc-schedule{display:flex;flex-direction:column;gap:20px;width:100%}.sc-schedule-field{display:flex;flex-direction:column;gap:8px}.sc-schedule-label{font-size:var(--text-xs);font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em}.sc-smart-days{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px}.sc-smart-day{flex:1 1 calc(33.33% - 8px);min-width:160px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface);cursor:pointer;transition:all var(--transition-fast);font-family:inherit;text-align:left}.sc-smart-day:hover{background:var(--surface-hover);border-color:var(--border-hover)}.sc-smart-day--active{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,transparent)}.sc-smart-day--active:hover{background:color-mix(in srgb,var(--primary) 12%,transparent)}.sc-smart-day-label{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.sc-smart-day-sub{font-size:var(--text-xs);color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.sc-smart-day--active .sc-smart-day-sub{color:var(--primary)}.sc-smart-day-icon{color:var(--text-tertiary);flex-shrink:0}.sc-smart-day--active .sc-smart-day-icon{color:var(--primary)}.sc-inline-picker{margin-top:8px}.sc-inline-picker .react-datepicker{font-family:inherit;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 4px 20px var(--shadow-medium);overflow:hidden;width:100%}.sc-inline-picker .react-datepicker__month-container{width:100%}.sc-inline-picker .react-datepicker__header{background:var(--surface);border-bottom:1px solid var(--border);padding:12px 0 8px}.sc-inline-picker .react-datepicker__current-month{font-size:var(--text-sm);font-weight:700;color:var(--text-primary);margin-bottom:6px}.sc-inline-picker .react-datepicker__day-names{display:flex;justify-content:space-around}.sc-inline-picker .react-datepicker__day-name{font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary);width:36px;line-height:36px;margin:0}.sc-inline-picker .react-datepicker__month{margin:8px}.sc-inline-picker .react-datepicker__week{display:flex;justify-content:space-around}.sc-inline-picker .react-datepicker__day{font-size:var(--text-sm);font-weight:500;color:var(--text-primary);width:36px;line-height:36px;margin:2px 0;border-radius:50%;transition:all var(--transition-fast)}.sc-inline-picker .react-datepicker__day:hover{background:var(--surface-hover);border-radius:50%}.sc-inline-picker .react-datepicker__day--selected,.sc-inline-picker .react-datepicker__day--keyboard-selected{background:var(--primary);color:#fff;font-weight:700}.sc-inline-picker .react-datepicker__day--selected:hover{background:var(--primary-hover)}.sc-inline-picker .react-datepicker__day--today{font-weight:700;color:var(--primary)}.sc-inline-picker .react-datepicker__day--today.react-datepicker__day--selected{color:#fff}.sc-inline-picker .react-datepicker__day--disabled{color:var(--text-tertiary);opacity:.4;cursor:not-allowed}.sc-inline-picker .react-datepicker__day--outside-month{color:var(--text-tertiary);opacity:.3}.sc-inline-picker .react-datepicker__navigation{top:10px}.sc-inline-picker .react-datepicker__navigation-icon:before{border-color:var(--text-secondary)}.sc-inline-picker .react-datepicker__navigation:hover *:before{border-color:var(--text-primary)}.sc-time-grid-wrap{margin-top:10px;display:flex;flex-direction:column;gap:10px}.sc-time-grid-label{font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em}.sc-time-grid{display:flex;flex-wrap:wrap;gap:6px}.sc-time-grid-pill{padding:8px 14px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);font-family:inherit;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.sc-time-grid-pill:hover{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 4%,transparent)}.sc-time-grid-pill--active{background:var(--primary);border-color:var(--primary);color:#fff}.sc-time-grid-pill--active:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.sc-time-grid-confirm{display:flex;align-items:center;justify-content:center;padding:10px 20px;border-radius:10px;border:none;background:var(--primary);color:#fff;font-family:inherit;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:background var(--transition-fast);margin-top:4px;align-self:flex-start}.sc-time-grid-confirm:hover{background:var(--primary-hover)}@media(max-width:600px){.sc-smart-days{flex-direction:column;gap:6px}.sc-smart-day{flex-direction:row;align-items:center;gap:8px;padding:12px 14px}.sc-smart-day-label{font-size:var(--text-xs)}.sc-smart-day-icon{margin-left:auto}}.sc-time-slots{display:flex;gap:8px;flex-wrap:wrap}.sc-time-slot{padding:10px 20px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);font-family:inherit;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.sc-time-slot:hover{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 4%,transparent)}.sc-time-slot--active{background:var(--primary);border-color:var(--primary);color:#fff}.sc-time-slot--active:hover{background:var(--primary-hover);border-color:var(--primary-hover)}@media(max-width:600px){.sc-time-slot{padding:8px 16px;font-size:var(--text-xs)}}.sc-confirm-hero{display:flex;flex-direction:column;align-items:center;gap:6px}.sc-confirm-hero-cuy{width:64px;height:64px;object-fit:contain}.sc-confirm-title{font-size:var(--text-lg);font-weight:700;color:var(--text-primary);margin:0;line-height:1.3}@media(max-width:600px){.sc-confirm-hero-cuy{width:52px;height:52px}.sc-confirm-title{font-size:var(--text-base)}}.sc-confirm-badges{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%}.sc-confirm-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:50px;font-size:var(--text-sm);font-weight:700}.sc-confirm-badge--date{background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary)}.sc-confirm-badge-sep{width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.4;flex-shrink:0}.sc-confirm-badge--nudge{background:color-mix(in srgb,var(--text-tertiary) 10%,transparent);color:var(--text-secondary);font-weight:600}@media(max-width:600px){.sc-confirm-badge{padding:8px 14px;font-size:var(--text-xs);gap:6px}}.sc-confirm-moves{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%}.sc-confirm-moves-label{font-size:var(--text-xs);font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.sc-confirm-move-cards{display:flex;gap:10px;width:100%}.sc-confirm-move-card{flex:1;position:relative;border-radius:12px;overflow:hidden;aspect-ratio:1}.sc-confirm-move-gif{width:100%;height:100%;object-fit:cover;display:block}.sc-confirm-move-title{position:absolute;bottom:0;left:0;right:0;padding:20px 8px 7px;background:linear-gradient(to top,rgba(0,0,0,.75),transparent);font-size:var(--text-xs);font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sc-confirm-sendoff{font-size:var(--text-sm);color:var(--text-tertiary);margin:0;line-height:1.4}@media(max-width:600px){.sc-confirm-sendoff{font-size:var(--text-xs)}}.sc-debrief-cards{display:flex;flex-direction:column;gap:10px}.sc-debrief-card{display:flex;flex-direction:column;border-radius:14px;background:var(--surface);border:1px solid var(--border);overflow:hidden;transition:border-color var(--transition-fast)}.sc-debrief-card:hover{border-color:var(--border-hover)}.sc-debrief-card-gif{width:100%;height:130px;object-fit:cover;cursor:pointer}.sc-debrief-card-body{padding:10px 12px 4px;display:flex;flex-direction:column;gap:3px}.sc-debrief-card-title{font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.sc-debrief-card-source{font-size:var(--text-xs);color:var(--text-tertiary)}.sc-debrief-outcomes{display:flex;gap:6px;padding:8px 12px 12px}.sc-debrief-outcome{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:7px 6px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-family:inherit;font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.sc-debrief-outcome:hover{background:var(--surface-hover)}.sc-debrief-outcome--selected{background:color-mix(in srgb,currentColor 8%,transparent);font-weight:700}@media(max-width:600px){.sc-debrief-cards{gap:4px}.sc-debrief-card{display:grid;grid-template-columns:3px 44px 1fr;gap:0 12px;align-items:center;border:none;border-radius:10px;padding:10px 10px 10px 0;background:none;overflow:visible}.sc-debrief-card:hover{border-color:transparent}.sc-debrief-card:before{content:"";grid-column:1;grid-row:1 / -1;width:3px;align-self:stretch;background:var(--primary);border-radius:0 3px 3px 0;margin:2px 0}.sc-debrief-card-gif{grid-column:2;grid-row:1 / -1;width:44px;height:44px;min-height:0;border-radius:8px;box-shadow:inset 0 0 0 1px #0000000f}.sc-debrief-card-body{grid-column:3;padding:0;gap:2px}.sc-debrief-card-title{font-size:var(--text-sm);font-weight:600;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sc-debrief-card-source{display:none}.sc-debrief-outcomes{grid-column:3;padding:4px 0 0;gap:4px}.sc-debrief-outcome{padding:5px 4px;font-size:11px;border-radius:6px}.sc-debrief-card--expanded{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:12px;padding:0;background:var(--surface);overflow:hidden}.sc-debrief-card--expanded:before{display:none}.sc-debrief-card--expanded .sc-debrief-card-gif{grid-column:unset;grid-row:unset;width:100%;height:160px;border-radius:0;box-shadow:none}.sc-debrief-card--expanded .sc-debrief-card-body{grid-column:unset;padding:10px 12px 4px}.sc-debrief-card--expanded .sc-debrief-card-title{white-space:normal}.sc-debrief-card--expanded .sc-debrief-card-source{display:block}.sc-debrief-card--expanded .sc-debrief-outcomes{grid-column:unset;padding:8px 12px 12px}.sc-debrief-card--expanded .sc-debrief-outcome{font-size:var(--text-xs);padding:7px 6px}}.sc-debrief-notes-toggle{display:inline-flex;align-items:center;gap:4px;border:none;background:none;color:var(--text-tertiary);font-family:inherit;font-size:var(--text-sm);font-weight:600;cursor:pointer;padding:4px 0;transition:color var(--transition-fast)}.sc-debrief-notes-toggle:hover{color:var(--text-primary)}.sc-debrief-notes{display:flex;flex-direction:column}.sc-debrief-notes-input{width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);font-family:inherit;font-size:var(--text-sm);resize:vertical;min-height:64px;transition:border-color var(--transition-fast)}.sc-debrief-notes-input:focus{outline:none;border-color:var(--primary)}.sc-debrief-notes-input::placeholder{color:var(--text-tertiary)}.sc-debrief-footer-stack{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%}.sc-debrief-footer-stack .sc-btn--primary{width:100%}.sc-debrief-footer-stack .sc-btn--primary:disabled{opacity:.4;cursor:not-allowed}.sc-debrief-skip{border:none;background:none;color:var(--text-tertiary);font-family:inherit;font-size:var(--text-xs);font-weight:600;cursor:pointer;padding:4px 8px;transition:color var(--transition-fast)}.sc-debrief-skip:hover{color:var(--text-primary)}.sc-debrief-skip:disabled{opacity:.4;cursor:not-allowed}.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.react-datepicker-wrapper{display:inline-block;padding:0;border:0}.react-datepicker{font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative;line-height:initial}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.375em;border-bottom-right-radius:.375em}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle,.react-datepicker-popper--header-middle[data-placement^=bottom] .react-datepicker__triangle,.react-datepicker-popper--header-bottom[data-placement^=bottom] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker-popper--header-bottom[data-placement^=top] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select,.react-datepicker__header--middle,.react-datepicker__header--bottom){border-top-right-radius:.3rem}.react-datepicker__header--middle{border-top:1px solid #aeaeae;border-radius:0;margin-top:4px}.react-datepicker__header--bottom{border-bottom:none;border-top:1px solid #aeaeae;border-radius:0 0 .3rem .3rem}.react-datepicker__header-wrapper{position:relative}.react-datepicker__header-wrapper .react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:2px}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px}.react-datepicker__month-select,.react-datepicker__year-select,.react-datepicker__month-year-select{background-color:transparent;border:1px solid #aeaeae;border-radius:.3rem;color:inherit;cursor:pointer;font-family:inherit;font-size:inherit;margin-top:5px;padding:2px 5px}.react-datepicker__month-select:focus-visible,.react-datepicker__year-select:focus-visible,.react-datepicker__month-year-select:focus-visible{outline:auto 1px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:700;font-size:.944rem}h2.react-datepicker__current-month{padding:0;margin:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover *:before{border-color:#a6a6a6}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{transform:rotate(45deg);left:-7px}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{transform:rotate(225deg);right:-7px}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.5em;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:5em;margin:2px}.react-datepicker__month{margin:.5em;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:5em;margin:2px}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:.375em;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:#fff;border-bottom-right-radius:.375em}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:.375em}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + 1.0625em);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent}.react-datepicker__week-number{color:#ccc;display:inline-block;width:2.125em;line-height:2.125em;text-align:center;margin:.208em}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__week-number--selected{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{text-align:center;white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:2.125em;line-height:2.125em;text-align:center;margin:.208em}.react-datepicker__day-name--disabled,.react-datepicker__day--disabled,.react-datepicker__time-name--disabled{cursor:default;color:#ccc}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:.3rem;background-color:#3dcc4a;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:.3rem;background-color:#ff6803;color:#fff}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:.3rem;background-color:#bad9f1;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90;color:#fff}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__input-container{position:relative;display:inline-block;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:.625em;box-sizing:content-box}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:.3rem;border:1px solid #aeaeae}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle}.react-datepicker__close-icon:after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:"×"}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:700;padding:5px 0;clear:left}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:#000c;left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647}.react-datepicker__children-container{width:17.25em;margin:.5em;padding-right:.25em;padding-left:.25em;height:auto}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-.125em}.react-datepicker-popper-offset{margin-top:-.7em}.library-group-detail-header{display:flex;align-items:center;justify-content:space-between}.library-group-detail-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:48px 24px;text-align:center;color:var(--text-secondary)}.record-page{position:fixed;inset:0;background:#000;z-index:1000;display:flex;flex-direction:column}.record-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.record-top-bar{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;padding:16px;padding-top:env(safe-area-inset-top,16px)}.record-back-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:none;background:var(--shadow-medium, rgba(0, 0, 0, .25));color:#fff;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.record-timer{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:20px;background:var(--shadow-medium, rgba(0, 0, 0, .25));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;font-size:1rem;font-variant-numeric:tabular-nums;font-family:monospace}.record-timer-dot{width:10px;height:10px;border-radius:50%;background:#e53935;animation:record-pulse 1s ease-in-out infinite}@keyframes record-pulse{0%,to{opacity:1}50%{opacity:.3}}.record-controls{position:relative;z-index:1;margin-top:auto;display:flex;align-items:center;justify-content:center;gap:24px;padding:32px 24px;padding-bottom:calc(32px + env(safe-area-inset-bottom,0px))}.record-start-btn{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;border:4px solid #fff;background:transparent;cursor:pointer;padding:0}.record-start-btn-inner{display:block;width:56px;height:56px;border-radius:50%;background:#e53935;transition:transform var(--transition-fast, .15s) ease}.record-start-btn:active .record-start-btn-inner{transform:scale(.9)}.record-stop-btn{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;border:4px solid #fff;background:transparent;color:#e53935;cursor:pointer}.record-stop-btn:active{opacity:.7}.record-mark-btn{display:flex;align-items:center;gap:6px;padding:12px 20px;border-radius:24px;border:2px solid rgba(255,255,255,.6);background:var(--shadow-medium, rgba(0, 0, 0, .25));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;font-size:.9rem;font-weight:500;cursor:pointer;transition:background var(--transition-fast, .15s) ease}.record-mark-btn:active{background:#fff3}.record-stopped-controls{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:320px}.record-stopped-actions{display:flex;align-items:center;justify-content:center;gap:12px;width:100%}.record-action-btn{min-width:120px}.record-marks-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:#ffffff40;font-size:.75rem;font-weight:600;font-family:inherit}.record-marks-indicator{color:#ffffffb3;font-size:.8rem}.record-submit-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px 24px;border-radius:12px;border:none;background:linear-gradient(135deg,#8b5cf6,#6d28d9);color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:opacity var(--transition-fast, .15s) ease,transform var(--transition-fast, .15s) ease}.record-submit-btn:active{transform:scale(.97)}.record-submit-btn:disabled{opacity:.6;cursor:not-allowed}.record-submit-error{color:#ef4444;font-size:.8rem;text-align:center}.record-mark-btn--feedback{background:#ffffff59;border-color:#fff}.record-save-success{padding:12px 20px;border-radius:24px;background:#4caf5040;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;font-size:.9rem;font-weight:500}.record-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:16px;color:#fff;padding:24px;text-align:center}.empty-mock-page{min-height:calc(100vh - 60px);display:flex;flex-direction:column}.empty-mock-viewport{flex:1;display:flex;align-items:center;justify-content:center;padding:24px}.empty-mock-switcher{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;gap:6px;padding:8px;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-lg-light);z-index:100}.empty-mock-switch-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 16px;border:1px solid transparent;border-radius:12px;background:transparent;cursor:pointer;transition:all .15s ease}.empty-mock-switch-btn:hover{background:var(--surface-hover)}.empty-mock-switch-btn.active{background:var(--primary);border-color:var(--primary)}.empty-mock-switch-id{font-size:var(--text-sm);font-weight:800;color:var(--text-primary)}.empty-mock-switch-btn.active .empty-mock-switch-id{color:var(--text-on-primary)}.empty-mock-switch-label{font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary);white-space:nowrap}.empty-mock-switch-btn.active .empty-mock-switch-label{color:color-mix(in srgb,var(--text-on-primary) 80%,transparent)}.empty-mock-switcher-group{display:flex;align-items:center;gap:6px}.empty-mock-switcher-label{font-size:var(--text-xs);font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-right:4px}.empty-mock-switcher-divider{width:1px;height:32px;background:var(--border);margin:0 8px}.empty-mock-switch-btn--secondary{padding:8px 12px;opacity:.6}.empty-mock-switch-btn--secondary:hover{opacity:1}.empty-mock-switch-btn--secondary .empty-mock-switch-label{display:none}.empty-mock--a1{display:flex;flex-direction:column;align-items:center;gap:32px;text-align:center;max-width:480px}.empty-a1-stage{position:relative;display:flex;flex-direction:column;align-items:center}.empty-a1-mascot-wrap{width:140px;height:140px;border-radius:50%;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 15%,var(--surface)),color-mix(in srgb,var(--primary) 8%,var(--surface)));display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px color-mix(in srgb,var(--primary) 15%,transparent),inset 0 -4px 12px color-mix(in srgb,var(--primary) 10%,transparent);animation:empty-a1-float 4s ease-in-out infinite}.empty-a1-mascot{width:100px;height:100px;object-fit:contain}@keyframes empty-a1-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.empty-a1-particle{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--primary);opacity:.4}.empty-a1-particle--1{top:10px;right:-20px;animation:empty-a1-particle-float 3s ease-in-out infinite}.empty-a1-particle--2{bottom:30px;left:-30px;width:6px;height:6px;animation:empty-a1-particle-float 3.5s ease-in-out infinite .5s}.empty-a1-particle--3{top:40px;left:-15px;width:4px;height:4px;animation:empty-a1-particle-float 2.8s ease-in-out infinite 1s}@keyframes empty-a1-particle-float{0%,to{transform:translateY(0) scale(1);opacity:.4}50%{transform:translateY(-12px) scale(1.2);opacity:.7}}.empty-a1-speech{position:relative;margin-top:16px;padding:14px 20px;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-md-light)}.empty-a1-speech-text{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.5}.empty-a1-speech-text strong{color:var(--primary);font-weight:700}.empty-a1-speech-tail{position:absolute;top:-8px;left:50%;width:16px;height:16px;background:var(--surface);border-left:1px solid var(--border);border-top:1px solid var(--border);transform:translate(-50%) rotate(45deg)}.empty-a1-content{display:flex;flex-direction:column;align-items:center;gap:12px}.empty-a1-title{font-size:24px;font-weight:800;color:var(--text-primary);margin:0}.empty-a1-subtitle{font-size:var(--text-sm);color:var(--text-tertiary);margin:0;max-width:320px}.empty-a1-cta{display:inline-flex;align-items:center;gap:8px;margin-top:8px;padding:14px 24px;border:none;border-radius:14px;background:var(--primary);color:var(--text-on-primary);font-size:var(--text-base);font-weight:700;cursor:pointer;box-shadow:0 4px 16px color-mix(in srgb,var(--primary) 30%,transparent);transition:transform .15s ease,box-shadow .15s ease}.empty-a1-cta:hover{transform:translateY(-2px);box-shadow:0 6px 20px color-mix(in srgb,var(--primary) 40%,transparent)}.empty-a1-cta:active{transform:scale(.98)}.empty-mock--a2{display:flex;align-items:center;justify-content:center;width:100%;max-width:520px}.empty-a2-chat{width:100%;display:flex;flex-direction:column;gap:20px}.empty-a2-message{display:flex;gap:12px;align-items:flex-start}.empty-a2-avatar{position:relative;flex-shrink:0;width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 20%,var(--surface)),color-mix(in srgb,var(--primary) 10%,var(--surface)));padding:6px;box-shadow:0 4px 12px color-mix(in srgb,var(--primary) 15%,transparent)}.empty-a2-avatar img{width:100%;height:100%;object-fit:contain}.empty-a2-online{position:absolute;bottom:2px;right:2px;width:12px;height:12px;border-radius:50%;background:#22c55e;border:2px solid var(--surface)}.empty-a2-bubble{flex:1;padding:16px 20px;background:var(--surface);border:1px solid var(--border);border-radius:4px 18px 18px;box-shadow:var(--shadow-md-light)}.empty-a2-sender{font-size:var(--text-sm);font-weight:700;color:var(--text-primary);margin-bottom:8px;display:flex;align-items:center;gap:8px}.empty-a2-badge{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:3px 8px;border-radius:6px;background:color-mix(in srgb,var(--primary) 15%,var(--surface));color:var(--primary)}.empty-a2-text{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.6}.empty-a2-time{font-size:var(--text-xs);color:var(--text-muted);margin-top:10px}.empty-a2-reply{display:flex;gap:10px;padding-left:60px}.empty-a2-reply-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;border:none;border-radius:12px;background:var(--primary);color:var(--text-on-primary);font-size:var(--text-sm);font-weight:700;cursor:pointer;box-shadow:0 4px 12px color-mix(in srgb,var(--primary) 25%,transparent);transition:all .15s ease}.empty-a2-reply-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px color-mix(in srgb,var(--primary) 35%,transparent)}.empty-a2-reply-btn--secondary{background:var(--surface);color:var(--text-secondary);border:1px solid var(--border);box-shadow:none}.empty-a2-reply-btn--secondary:hover{background:var(--surface-hover);box-shadow:var(--shadow-sm-light)}@media(max-width:500px){.empty-a2-reply{padding-left:0;flex-direction:column}}.empty-mock--a3{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:600px;min-height:480px}.empty-a3-floor{position:absolute;bottom:0;left:0;right:0;height:120px;background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--primary) 8%,transparent) 100%);border-radius:50% 50% 0 0/40px;pointer-events:none}.empty-a3-spotlight{position:absolute;top:-200px;left:50%;transform:translate(-50%);width:300px;height:400px;background:radial-gradient(ellipse at center top,color-mix(in srgb,var(--primary) 12%,transparent) 0%,transparent 70%);pointer-events:none;animation:empty-a3-spotlight-pulse 4s ease-in-out infinite}@keyframes empty-a3-spotlight-pulse{0%,to{opacity:.6}50%{opacity:1}}.empty-a3-stage{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:24px}.empty-a3-mascot-wrap{animation:empty-a3-bounce 3s ease-in-out infinite}.empty-a3-mascot{width:180px;height:auto;filter:drop-shadow(0 20px 40px rgba(0,0,0,.15))}@keyframes empty-a3-bounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-10px) scale(1.02)}}.empty-a3-content{display:flex;flex-direction:column;align-items:center;gap:12px}.empty-a3-intro{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--text-muted)}.empty-a3-title{font-size:48px;font-weight:900;color:var(--text-primary);margin:0;letter-spacing:-1px}.empty-a3-subtitle{font-size:var(--text-base);color:var(--text-secondary);margin:0;max-width:340px;line-height:1.5}.empty-a3-cta{display:inline-flex;align-items:center;gap:10px;margin-top:12px;padding:16px 28px;border:none;border-radius:14px;background:var(--primary);color:var(--text-on-primary);font-size:var(--text-base);font-weight:700;cursor:pointer;box-shadow:0 6px 24px color-mix(in srgb,var(--primary) 35%,transparent);transition:all .2s ease}.empty-a3-cta:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 10px 32px color-mix(in srgb,var(--primary) 45%,transparent)}.empty-mock--a4{display:grid;grid-template-columns:auto 1fr;gap:40px;align-items:center;max-width:700px;width:100%;padding:24px}@media(max-width:600px){.empty-mock--a4{grid-template-columns:1fr;text-align:center;gap:24px}.empty-a4-companion{justify-self:center}.empty-a4-content{align-items:center}.empty-a4-features{justify-content:center}}.empty-a4-companion{position:relative}.empty-a4-mascot{width:120px;height:120px;object-fit:contain;animation:empty-a4-waddle 2s ease-in-out infinite}@keyframes empty-a4-waddle{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-6px) rotate(2deg)}}.empty-a4-content{display:flex;flex-direction:column;gap:12px}.empty-a4-wave{font-size:32px;animation:empty-a4-wave-anim 1.5s ease-in-out infinite;transform-origin:70% 70%}@keyframes empty-a4-wave-anim{0%,to{transform:rotate(0)}25%{transform:rotate(20deg)}75%{transform:rotate(-10deg)}}.empty-a4-title{font-size:28px;font-weight:800;color:var(--text-primary);margin:0}.empty-a4-subtitle{font-size:var(--text-sm);color:var(--text-secondary);margin:0;line-height:1.6;max-width:360px}.empty-a4-features{display:flex;gap:16px;flex-wrap:wrap;margin-top:8px}.empty-a4-feature{display:flex;align-items:center;gap:6px;font-size:var(--text-sm);font-weight:600;color:var(--text-tertiary)}.empty-a4-feature svg{color:var(--primary)}.empty-a4-cta{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:14px 24px;border:none;border-radius:14px;background:var(--primary);color:var(--text-on-primary);font-size:var(--text-base);font-weight:700;cursor:pointer;box-shadow:0 4px 16px color-mix(in srgb,var(--primary) 30%,transparent);transition:all .15s ease;width:fit-content}.empty-a4-cta:hover{transform:translateY(-2px);box-shadow:0 6px 20px color-mix(in srgb,var(--primary) 40%,transparent)}.empty-mock--a5{position:relative;display:flex;align-items:center;justify-content:center;width:100%;max-width:500px;min-height:480px;overflow:hidden}.empty-a5-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden}.empty-a5-confetti-piece{position:absolute;width:10px;height:10px;background:var(--primary);opacity:.6}.empty-a5-confetti-piece--1{top:10%;left:10%;border-radius:50%;animation:empty-a5-confetti-fall 3s ease-in-out infinite 0s}.empty-a5-confetti-piece--2{top:5%;left:30%;border-radius:2px;background:#f59e0b;animation:empty-a5-confetti-fall 3.2s ease-in-out infinite .2s}.empty-a5-confetti-piece--3{top:15%;left:50%;border-radius:50%;background:#ec4899;animation:empty-a5-confetti-fall 2.8s ease-in-out infinite .4s}.empty-a5-confetti-piece--4{top:8%;left:70%;border-radius:2px;animation:empty-a5-confetti-fall 3.4s ease-in-out infinite .1s}.empty-a5-confetti-piece--5{top:12%;left:85%;border-radius:50%;background:#8b5cf6;animation:empty-a5-confetti-fall 3s ease-in-out infinite .6s}.empty-a5-confetti-piece--6{top:20%;left:5%;border-radius:2px;background:#10b981;animation:empty-a5-confetti-fall 3.1s ease-in-out infinite .3s}.empty-a5-confetti-piece--7{top:5%;left:20%;width:6px;height:14px;border-radius:2px;animation:empty-a5-confetti-fall 2.9s ease-in-out infinite .5s}.empty-a5-confetti-piece--8{top:18%;left:40%;width:8px;height:8px;border-radius:50%;background:#f59e0b;animation:empty-a5-confetti-fall 3.3s ease-in-out infinite .7s}.empty-a5-confetti-piece--9{top:10%;left:60%;width:6px;height:12px;background:#ec4899;animation:empty-a5-confetti-fall 3s ease-in-out infinite .15s}.empty-a5-confetti-piece--10{top:22%;left:78%;border-radius:50%;animation:empty-a5-confetti-fall 2.7s ease-in-out infinite .45s}.empty-a5-confetti-piece--11{top:8%;left:92%;width:8px;height:8px;background:#8b5cf6;animation:empty-a5-confetti-fall 3.2s ease-in-out infinite .25s}.empty-a5-confetti-piece--12{top:15%;left:2%;width:6px;height:6px;border-radius:50%;background:#10b981;animation:empty-a5-confetti-fall 3.5s ease-in-out infinite .55s}@keyframes empty-a5-confetti-fall{0%,to{transform:translateY(0) rotate(0);opacity:.6}50%{transform:translateY(30px) rotate(180deg);opacity:.9}}.empty-a5-center{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px}.empty-a5-mascot-wrap{position:relative;width:130px;height:130px;border-radius:50%;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 20%,var(--surface)),color-mix(in srgb,var(--primary) 10%,var(--surface)));display:flex;align-items:center;justify-content:center;animation:empty-a5-bounce .6s ease-in-out infinite}@keyframes empty-a5-bounce{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.empty-a5-mascot{width:90px;height:90px;object-fit:contain}.empty-a5-stars{position:absolute;inset:0;pointer-events:none}.empty-a5-star{position:absolute;color:#f59e0b;animation:empty-a5-star-pop 1s ease-in-out infinite}.empty-a5-star--1{top:5px;right:10px;animation-delay:0s}.empty-a5-star--2{bottom:15px;left:5px;animation-delay:.3s}.empty-a5-star--3{top:25px;left:10px;animation-delay:.6s}@keyframes empty-a5-star-pop{0%,to{transform:scale(1) rotate(0);opacity:.7}50%{transform:scale(1.3) rotate(15deg);opacity:1}}.empty-a5-shout{font-size:var(--text-sm);font-weight:900;text-transform:uppercase;letter-spacing:4px;color:var(--primary);animation:empty-a5-shout-pulse 1s ease-in-out infinite}@keyframes empty-a5-shout-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.empty-a5-title{font-size:26px;font-weight:800;color:var(--text-primary);margin:0}.empty-a5-subtitle{font-size:var(--text-sm);color:var(--text-secondary);margin:0;max-width:320px;line-height:1.5}.empty-a5-cta{display:inline-flex;align-items:center;gap:8px;margin-top:8px;padding:16px 32px;border:none;border-radius:14px;background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 80%,#f59e0b));color:var(--text-on-primary);font-size:16px;font-weight:800;cursor:pointer;box-shadow:0 6px 24px color-mix(in srgb,var(--primary) 40%,transparent);transition:all .15s ease;animation:empty-a5-cta-glow 2s ease-in-out infinite}@keyframes empty-a5-cta-glow{0%,to{box-shadow:0 6px 24px color-mix(in srgb,var(--primary) 40%,transparent)}50%{box-shadow:0 8px 32px color-mix(in srgb,var(--primary) 55%,transparent)}}.empty-a5-cta:hover{transform:translateY(-3px) scale(1.03)}.empty-mock--a6{position:relative;display:flex;align-items:center;justify-content:center;width:100%;max-width:700px;min-height:560px;padding:40px}.empty-a6-particles{position:absolute;inset:-40px;pointer-events:none}.empty-a6-particle{position:absolute;border-radius:50%;background:var(--primary);opacity:.35}.empty-a6-particle--1{width:10px;height:10px;top:8%;right:5%;animation:empty-a6-float 5s ease-in-out infinite}.empty-a6-particle--2{width:7px;height:7px;top:28%;left:2%;animation:empty-a6-float 6s ease-in-out infinite 1s}.empty-a6-particle--3{width:6px;height:6px;bottom:22%;right:8%;animation:empty-a6-float 5.5s ease-in-out infinite .5s}.empty-a6-particle--4{width:5px;height:5px;bottom:35%;left:6%;animation:empty-a6-float 6.5s ease-in-out infinite 1.5s}.empty-a6-particle--5{width:4px;height:4px;top:50%;right:2%;animation:empty-a6-float 7s ease-in-out infinite 2s}.empty-a6-particle--6{width:8px;height:8px;bottom:12%;left:15%;animation:empty-a6-float 5.8s ease-in-out infinite .8s}@keyframes empty-a6-float{0%,to{transform:translateY(0);opacity:.3}50%{transform:translateY(-16px);opacity:.5}}.empty-a6-center{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px}.empty-a6-mascot-wrap{width:160px;height:160px;border-radius:50%;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 18%,var(--surface)),color-mix(in srgb,var(--primary) 8%,var(--surface)));display:flex;align-items:center;justify-content:center;box-shadow:0 12px 48px color-mix(in srgb,var(--primary) 14%,transparent),inset 0 -4px 16px color-mix(in srgb,var(--primary) 8%,transparent);margin-bottom:16px;animation:empty-a6-mascot-float 4s ease-in-out infinite}@keyframes empty-a6-mascot-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.empty-a6-mascot{width:110px;height:110px;object-fit:contain}.empty-a6-intro{font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:3px;color:var(--primary);margin-top:8px}.empty-a6-title{font-size:36px;font-weight:800;color:var(--text-primary);margin:0}.empty-a6-subtitle{font-size:var(--text-base);color:var(--text-secondary);margin:0;max-width:420px;line-height:1.7}.empty-a6-cta{display:inline-flex;align-items:center;gap:10px;margin-top:24px;padding:16px 32px;border:none;border-radius:14px;background:var(--primary);color:var(--text-on-primary);font-size:16px;font-weight:700;cursor:pointer;box-shadow:0 4px 20px color-mix(in srgb,var(--primary) 28%,transparent);transition:transform .2s ease,box-shadow .2s ease}.empty-a6-cta:hover{transform:translateY(-2px);box-shadow:0 8px 28px color-mix(in srgb,var(--primary) 38%,transparent)}.empty-a6-cta:active{transform:scale(.98)}@media(max-width:600px){.empty-mock--a6{padding:24px;min-height:480px}.empty-a6-mascot-wrap{width:140px;height:140px}.empty-a6-mascot{width:95px;height:95px}.empty-a6-title{font-size:28px}.empty-a6-subtitle{font-size:var(--text-sm)}}.empty-mock--b{display:flex;flex-direction:column;align-items:center;gap:40px;max-width:700px;width:100%}.empty-b-ghost-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;width:100%}@media(max-width:600px){.empty-b-ghost-grid{grid-template-columns:repeat(2,1fr)}}.empty-b-ghost-card{display:flex;flex-direction:column;border:1px dashed color-mix(in srgb,var(--border) 60%,transparent);border-radius:16px;overflow:hidden;opacity:.5;animation:empty-b-ghost-pulse 3s ease-in-out infinite}@keyframes empty-b-ghost-pulse{0%,to{opacity:.35;transform:scale(1)}50%{opacity:.55;transform:scale(1.01)}}.empty-b-ghost-thumb{aspect-ratio:4 / 3;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 8%,var(--bg-tertiary)),color-mix(in srgb,var(--primary) 4%,var(--bg-tertiary)))}.empty-b-ghost-body{padding:12px;background:var(--surface)}.empty-b-ghost-title{font-size:var(--text-sm);font-weight:700;color:var(--text-muted);margin-bottom:4px}.empty-b-ghost-style{font-size:var(--text-xs);font-weight:800;letter-spacing:.5px;color:var(--text-muted);opacity:.7}.empty-b-add-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:180px;border:2px dashed var(--primary);border-radius:16px;background:color-mix(in srgb,var(--primary) 6%,var(--surface));cursor:pointer;transition:all .2s ease}.empty-b-add-card:hover{background:color-mix(in srgb,var(--primary) 12%,var(--surface));border-style:solid;transform:scale(1.02)}.empty-b-add-icon{width:56px;height:56px;border-radius:50%;background:var(--primary);color:var(--text-on-primary);display:flex;align-items:center;justify-content:center}.empty-b-add-text{font-size:var(--text-sm);font-weight:700;color:var(--primary)}.empty-b-content{text-align:center}.empty-b-title{font-size:22px;font-weight:800;color:var(--text-primary);margin:0 0 8px}.empty-b-subtitle{font-size:var(--text-sm);color:var(--text-tertiary);margin:0}.empty-mock--c{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:500px;width:100%;max-width:500px}.empty-c-bg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;overflow:hidden}.empty-c-ring{position:absolute;border-radius:50%;border:1px solid color-mix(in srgb,var(--primary) 15%,transparent)}.empty-c-ring--1{width:200px;height:200px;animation:empty-c-ring-pulse 4s ease-in-out infinite}.empty-c-ring--2{width:300px;height:300px;animation:empty-c-ring-pulse 4s ease-in-out infinite .5s}.empty-c-ring--3{width:400px;height:400px;animation:empty-c-ring-pulse 4s ease-in-out infinite 1s}@keyframes empty-c-ring-pulse{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.05);opacity:.6}}.empty-c-center{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px}.empty-c-icon-wrap{position:relative;width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 20%,var(--surface)),color-mix(in srgb,var(--primary) 10%,var(--surface)));display:flex;align-items:center;justify-content:center;margin-bottom:8px}.empty-c-icon{color:var(--primary)}.empty-c-sparkle{position:absolute;font-size:20px;color:var(--primary);animation:empty-c-sparkle-twinkle 2s ease-in-out infinite}.empty-c-sparkle--1{top:5px;right:10px;font-size:24px}.empty-c-sparkle--2{top:25px;left:5px;font-size:16px;animation-delay:.3s}.empty-c-sparkle--3{bottom:20px;left:15px;font-size:var(--text-sm);animation-delay:.7s}@keyframes empty-c-sparkle-twinkle{0%,to{opacity:.4;transform:scale(1) rotate(0)}50%{opacity:1;transform:scale(1.2) rotate(15deg)}}.empty-c-title{font-size:26px;font-weight:800;color:var(--text-primary);margin:0}.empty-c-subtitle{font-size:var(--text-sm);color:var(--text-tertiary);margin:0;max-width:320px;line-height:1.5}.empty-c-cta{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:14px 28px;border:none;border-radius:14px;background:var(--primary);color:var(--text-on-primary);font-size:var(--text-base);font-weight:700;cursor:pointer;box-shadow:0 4px 20px color-mix(in srgb,var(--primary) 35%,transparent);transition:all .2s ease}.empty-c-cta:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 28px color-mix(in srgb,var(--primary) 45%,transparent)}.empty-mock--d{display:flex;align-items:center;justify-content:center;min-height:400px}.empty-d-content{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}.empty-d-number{font-size:96px;font-weight:900;color:color-mix(in srgb,var(--text-primary) 15%,transparent);line-height:1;font-variant-numeric:tabular-nums}.empty-d-label{font-size:var(--text-sm);font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:2px}.empty-d-divider{width:48px;height:3px;background:var(--primary);border-radius:2px;margin:24px 0}.empty-d-title{font-size:24px;font-weight:800;color:var(--text-primary);margin:0}.empty-d-subtitle{font-size:var(--text-sm);color:var(--text-tertiary);margin:0;max-width:300px}.empty-d-cta{display:inline-flex;align-items:center;gap:10px;margin-top:24px;padding:16px 32px;border:none;border-radius:14px;background:var(--text-primary);color:var(--bg-primary);font-size:var(--text-base);font-weight:700;cursor:pointer;transition:all .2s ease}.empty-d-cta:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000026}.empty-mock--e{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;max-width:900px;width:100%;padding:24px}@media(max-width:768px){.empty-mock--e{grid-template-columns:1fr;text-align:center}.empty-e-illustration{order:-1}}.empty-e-illustration{display:flex;justify-content:center}.empty-e-cuy{width:100%;max-width:320px;height:auto;filter:drop-shadow(0 12px 32px rgba(0,0,0,.1));animation:empty-e-cuy-bounce 3s ease-in-out infinite}@keyframes empty-e-cuy-bounce{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-12px) rotate(1deg)}}.empty-e-content{display:flex;flex-direction:column;gap:16px}@media(max-width:768px){.empty-e-content{align-items:center}}.empty-e-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary);font-size:var(--text-sm);font-weight:700;width:fit-content}.empty-e-title{font-size:28px;font-weight:800;color:var(--text-primary);margin:0;line-height:1.2}.empty-e-subtitle{font-size:var(--text-base);color:var(--text-secondary);margin:0;line-height:1.6;max-width:380px}.empty-e-cta{display:inline-flex;align-items:center;gap:8px;margin-top:8px;padding:14px 24px;border:none;border-radius:14px;background:var(--primary);color:var(--text-on-primary);font-size:var(--text-base);font-weight:700;cursor:pointer;box-shadow:0 4px 16px color-mix(in srgb,var(--primary) 30%,transparent);transition:all .15s ease;width:fit-content}.empty-e-cta:hover{transform:translateY(-2px);box-shadow:0 6px 20px color-mix(in srgb,var(--primary) 40%,transparent)}.empty-e-hint{display:flex;align-items:center;gap:8px;font-size:var(--text-sm);color:var(--text-tertiary);margin-top:8px}.empty-e-hint svg{flex-shrink:0}@media(prefers-reduced-motion:reduce){.empty-a1-mascot-wrap,.empty-a1-particle,.empty-a3-spotlight,.empty-a3-mascot-wrap,.empty-a4-mascot,.empty-a4-wave,.empty-a5-mascot-wrap,.empty-a5-confetti-piece,.empty-a5-star,.empty-a5-shout,.empty-a5-cta,.empty-a6-particle,.empty-a6-mascot-wrap,.empty-b-ghost-card,.empty-c-ring,.empty-c-sparkle,.empty-e-cuy{animation:none}}.global-banner{border-bottom:1px solid var(--primary-border);padding:0 32px;flex-shrink:0;position:relative;z-index:45}.global-banner--solid{background:var(--primary-subtle)}.global-banner--gradient,.global-banner--gradient-shimmer{background:linear-gradient(135deg,var(--primary-subtle) 0%,var(--surface) 50%,var(--primary-tint) 100%)}.global-banner--gradient-shimmer:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0%,var(--primary) 20%,var(--primary-light) 50%,var(--primary) 80%,transparent 100%);opacity:.6}.global-banner__inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0;max-width:1800px;margin:0 auto}.global-banner__info{display:flex;align-items:center;gap:10px;min-width:0}.global-banner__icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--primary)}.global-banner__icon--circle{width:28px;height:28px;border-radius:50%;background:var(--primary-subtle)}.global-banner__text{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.4}.global-banner__text strong{color:var(--primary);font-weight:600}.global-banner__text .global-banner__highlight{color:var(--text-primary);font-weight:600}.global-banner__separator{margin:0 6px;color:var(--text-tertiary)}.global-banner__actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.global-banner__cta{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:var(--primary);color:#fff;border:none;border-radius:6px;font-size:var(--text-sm);font-weight:600;text-decoration:none;cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);box-shadow:0 2px 8px var(--primary-glow)}.global-banner__cta:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px var(--primary-glow)}.global-banner__cta:active{transform:translateY(0);box-shadow:0 2px 8px var(--primary-glow)}.global-banner__cta-arrow{transition:transform var(--transition-fast)}.global-banner__cta:hover .global-banner__cta-arrow{transform:translate(2px)}.global-banner__dismiss{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:none;border-radius:6px;color:var(--text-tertiary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.global-banner__dismiss:hover{background:var(--shadow-subtle);color:var(--text-secondary)}.global-banner__dismiss:active{background:var(--shadow-soft)}@media(max-width:960px){.global-banner{padding:0 24px}}@media(max-width:768px){.global-banner{padding:0 16px}.global-banner__inner{padding:8px 0;gap:12px}.global-banner__text{font-size:var(--text-xs)}.global-banner__cta{padding:6px 12px;font-size:var(--text-xs)}}@media(max-width:600px){.global-banner{padding:0 12px}.global-banner__inner{flex-direction:column;align-items:stretch;gap:10px;padding:10px 0}.global-banner__info{justify-content:center}.global-banner__text{text-align:center}.global-banner__actions{justify-content:center}.global-banner__cta{flex:1;justify-content:center;padding:10px 16px;font-size:var(--text-sm)}.global-banner__dismiss{position:absolute;top:8px;right:8px;width:24px;height:24px}}@media(max-width:480px){.global-banner__icon--circle{display:none}}.layout-with-banner.is-focus-mode .global-banner{display:none}.shared-viewer-banner .global-banner__icon{width:28px;height:28px;border-radius:50%;background:var(--primary-subtle)}.shared-viewer-banner .global-banner__text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:600px){.shared-viewer-banner .global-banner__text{white-space:normal}}.shared-analysis-page{min-height:100vh;background:var(--bg-primary)}.shared-analysis-page--loading,.shared-analysis-page--error{display:flex;align-items:center;justify-content:center;min-height:100vh}@keyframes mobileCTASlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes ctaShimmer{0%{left:-100%}to{left:100%}}@keyframes iconPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.mobile-cta{display:none}@media(max-width:600px){.mobile-cta{display:block;position:fixed;bottom:0;left:0;right:0;z-index:1000;border:none;margin:0;width:100%;cursor:pointer;text-align:left;padding:12px;padding-bottom:calc(12px + var(--safe-area-bottom));background:linear-gradient(to top,var(--bg-primary) 0%,rgba(var(--bg-primary-rgb, 0, 0, 0),.95) 50%,transparent 100%);animation:mobileCTASlideUp .5s cubic-bezier(.16,1,.3,1)}}.mobile-cta__content{display:flex;align-items:center;gap:14px;padding:14px 18px;background:linear-gradient(135deg,var(--surface) 0%,color-mix(in srgb,var(--surface) 90%,var(--primary-subtle)) 100%);border:1px solid var(--border);border-radius:16px;box-shadow:0 2px 8px var(--shadow-subtle),0 8px 24px var(--shadow-soft),inset 0 1px 0 var(--highlight-ghost);transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast);position:relative;overflow:hidden}.mobile-cta__content:before{content:"";position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent 0%,var(--highlight-ghost) 50%,transparent 100%);opacity:0;transition:opacity .3s ease}.mobile-cta__icon-wrapper{display:flex;align-items:center;justify-content:center;width:42px;height:42px;flex-shrink:0;background:linear-gradient(145deg,var(--primary) 0%,var(--primary-dark) 100%);border-radius:12px;box-shadow:0 4px 12px var(--primary-glow),inset 0 1px 0 var(--highlight-subtle);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.mobile-cta__icon{color:#fff;flex-shrink:0;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.mobile-cta__text-group{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.mobile-cta__label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--primary);line-height:1.2}.mobile-cta__text{font-size:var(--text-base);font-weight:600;color:var(--text-primary);line-height:1.3;letter-spacing:-.01em}.mobile-cta__arrow{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;color:var(--text-tertiary);transition:transform var(--transition-fast),color var(--transition-fast)}.mobile-cta:hover .mobile-cta__content{border-color:var(--primary-border);background:linear-gradient(135deg,var(--surface-hover) 0%,color-mix(in srgb,var(--surface) 85%,var(--primary-subtle)) 100%);box-shadow:0 4px 12px var(--shadow-soft),0 12px 32px var(--shadow-medium),inset 0 1px 0 var(--highlight-faint)}.mobile-cta:hover .mobile-cta__content:before{opacity:1;animation:ctaShimmer 1.5s ease-out}.mobile-cta:hover .mobile-cta__icon-wrapper{transform:scale(1.05);box-shadow:0 6px 16px var(--primary-glow),inset 0 1px 0 var(--highlight-soft)}.mobile-cta:hover .mobile-cta__arrow{transform:translate(3px);color:var(--primary)}.mobile-cta:active .mobile-cta__content{transform:scale(.98);box-shadow:0 2px 6px var(--shadow-subtle),0 4px 12px var(--shadow-soft),inset 0 2px 4px var(--shadow-ghost)}.mobile-cta:active .mobile-cta__icon-wrapper{transform:scale(.95)}.mobile-cta:active .mobile-cta__arrow{transform:translate(1px)}.mobile-cta:focus-visible .mobile-cta__content{outline:none;border-color:var(--primary);box-shadow:0 4px 12px var(--shadow-soft),0 12px 32px var(--shadow-medium),0 0 0 3px var(--primary-glow)}@media(max-width:600px){.sample-viewer-banner{display:none}}.sample-analysis-page{min-height:100vh;background:var(--bg-primary)}.sample-analysis-page--loading,.sample-analysis-page--error{display:flex;align-items:center;justify-content:center;min-height:100vh}.proto-page{min-height:100vh;padding:40px;background:var(--bg-primary)}.proto-page h1{margin-bottom:8px}.proto-page p{color:var(--text-secondary);margin-bottom:32px}.proto-page h2{margin-top:48px;margin-bottom:16px}.proto-grid{display:flex;gap:40px;flex-wrap:wrap}.proto-head-container{display:flex;flex-direction:column;align-items:center;gap:12px}.proto-label{font-size:var(--text-sm);color:var(--text-secondary);text-align:center;max-width:120px}.proto-head{width:80px;height:85px;background:#c4a484;border-radius:50% 50% 45% 45%;position:relative}.proto-ear{position:absolute;width:12px;height:20px;background:#c4a484;border-radius:40% 40% 45% 45%;top:58%;transform:translateY(-50%);z-index:1}.proto-ear--left{left:-8px}.proto-ear--right{right:-8px}.proto-hair{position:absolute;background:#3d2b1f;z-index:2}.proto-hair--v1{top:-10%;left:0;right:0;height:55%;border-radius:50% 50% 40% 40%}.proto-hair--v2{top:-10%;left:-5%;right:-5%;height:70%;border-radius:50% 50% 45% 45%}.proto-hair--v3{top:-12%;left:-6%;right:-6%;height:75%;border-radius:48% 48% 42% 42%}.proto-hair--v4{top:-10%;left:-4%;right:-4%;height:72%;border-radius:50% 50% 48% 48%}.proto-hair--v5{top:-10%;left:-5%;right:-5%;height:90%;border-radius:45% 45% 40% 40%}.proto-hair--v6{top:-10%;left:-5%;right:-5%;height:95%;border-radius:45% 45% 42% 42%}.proto-hair--v7{top:-10%;left:-4%;right:-4%;height:100%;border-radius:48% 48% 44% 44%}.proto-hair--v8{top:-8%;left:-3%;right:-3%;height:98%;border-radius:50% 50% 45% 45%}.ngal-list-panel .filter-chip-bar{padding:10px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.ngal-note-lines{display:flex;flex-direction:column;gap:4px;margin-top:8px;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--border) 60%,transparent)}.ngal-note-line{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.5;display:block}.ngal-note-line--bullet{padding-left:4px}.ngal-note-lines-more{font-size:var(--text-xs);font-weight:600;color:var(--primary);margin-top:4px}.ngal-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:80px 24px;text-align:center;color:var(--text-secondary)}.ngal-empty-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--primary-subtle);color:var(--primary);margin-bottom:4px}.ngal-empty h2{margin:0;font-size:var(--text-lg);color:var(--text-primary)}.ngal-empty p{margin:0;font-size:var(--text-sm);max-width:300px;line-height:1.5}.ngal-split{display:flex;height:100%}.ngal-list-panel{width:380px;flex-shrink:0;border-right:1px solid var(--border);display:flex;flex-direction:column;background:var(--surface)}.ngal-list-header{display:flex;align-items:center;gap:10px;padding:20px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.ngal-list-header-icon{color:var(--primary)}.ngal-list-header-title{font-size:var(--text-lg, 18px);font-weight:800;color:var(--text-primary)}.ngal-list{flex:1;overflow-y:auto}.ngal-list-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;border:none;border-bottom:1px solid var(--border);border-left:3px solid transparent;background:transparent;font-family:inherit;cursor:pointer;text-align:left;transition:background var(--transition-fast)}.ngal-list-item:hover{background:var(--surface-hover)}.ngal-list-item--active{background:color-mix(in srgb,var(--primary) 8%,transparent);border-left-color:var(--primary)}.ngal-list-thumb{width:56px;height:56px;flex-shrink:0;border-radius:8px;overflow:hidden;background:var(--surface-hover)}.ngal-list-thumb img{width:100%;height:100%;object-fit:cover;display:block}.ngal-list-thumb-empty{width:100%;height:100%;background:var(--surface-hover)}.ngal-list-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.ngal-list-title{font-size:var(--text-sm);font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ngal-list-meta{font-size:var(--text-xs);color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ngal-list-badges{display:flex;gap:8px;margin-top:2px}.ngal-list-badge{display:flex;align-items:center;gap:3px;font-size:10px;color:var(--text-tertiary)}.ngal-detail-panel{flex:1;overflow-y:auto;padding:36px 48px;background:var(--bg-primary)}.ngal-detail-header{margin-bottom:32px}.ngal-detail-title-btn{display:inline-flex;align-items:center;gap:10px;padding:0;border:none;background:transparent;font-family:inherit;cursor:pointer;transition:color var(--transition-fast)}.ngal-detail-title-btn:hover{color:var(--primary)}.ngal-detail-title{margin:0;font-size:28px;font-weight:800;color:var(--text-primary);line-height:1.2}.ngal-detail-go{color:var(--text-tertiary);flex-shrink:0;transition:transform var(--transition-fast)}.ngal-detail-title-btn:hover .ngal-detail-go{transform:translate(3px);color:var(--primary)}.ngal-detail-meta{font-size:var(--text-sm);color:var(--text-tertiary);display:block;margin-top:6px}.ngal-detail-media{max-width:800px;border-radius:14px;overflow:hidden;margin-bottom:32px;background:#000;border:1px solid color-mix(in srgb,var(--border) 60%,transparent);box-shadow:0 1px 3px var(--shadow-ghost),0 6px 20px var(--shadow-ghost);transition:box-shadow var(--transition-normal)}.ngal-detail-media:hover{box-shadow:0 2px 6px var(--shadow-subtle),0 10px 30px var(--shadow-ghost)}.ngal-detail-media img{width:100%;height:auto;display:block}.ngal-detail-media-empty{aspect-ratio:4 / 3;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);background:var(--surface-hover)}.ngal-detail-section{margin-bottom:20px;max-width:800px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:18px 22px}.ngal-detail-section-label{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);display:block;margin-bottom:12px}.ngal-detail-placeholder{font-size:var(--text-sm);color:var(--text-tertiary);margin:0;padding:2px 0;font-style:italic}.ngal-detail-sheet-link{display:inline-flex;align-items:center;gap:10px;padding:12px 18px;border:1px solid color-mix(in srgb,var(--primary) 20%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--primary) 3%,var(--surface));font-family:inherit;font-size:var(--text-sm);font-weight:600;color:var(--primary);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.ngal-detail-sheet-link:hover{background:color-mix(in srgb,var(--primary) 8%,var(--surface));border-color:color-mix(in srgb,var(--primary) 35%,var(--border));box-shadow:0 2px 8px color-mix(in srgb,var(--primary) 12%,transparent)}.ngal-detail-notes{display:flex;flex-direction:column;gap:6px}.ngal-detail-note{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.6;display:block}.ngal-detail-note--bullet{padding-left:4px}.ngal-mob-list{flex:1;overflow-y:auto;margin:8px 12px;border-radius:12px;border:1px solid var(--border);background:var(--surface)}.ngal-mob-item:last-child{border-bottom:none}.ngal-mob-item{border-bottom:1px solid var(--border)}.ngal-mob-item-header{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:none;background:transparent;font-family:inherit;cursor:pointer;text-align:left;transition:background var(--transition-fast)}.ngal-mob-item-header:active{background:color-mix(in srgb,var(--primary) 8%,transparent)}.ngal-mob-item--open>.ngal-mob-item-header{background:color-mix(in srgb,var(--primary) 5%,transparent)}.ngal-mob-item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.ngal-mob-item-top{display:flex;align-items:center;gap:6px}.ngal-mob-item-title{font-size:var(--text-sm);font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ngal-mob-item-meta{font-size:var(--text-xs);color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ngal-mob-item-badges{display:flex;gap:8px;margin-top:2px}.ngal-mob-item-badge{display:flex;align-items:center;gap:3px;font-size:10px;color:var(--text-tertiary)}.ngal-mob-item-chevron{color:var(--text-tertiary);flex-shrink:0;transition:transform var(--transition-fast)}.ngal-mob-item-chevron--open{transform:rotate(180deg)}.ngal-mob-item-body{display:flex;flex-direction:column;gap:12px;height:0;overflow:hidden;visibility:hidden;padding:0 14px}.ngal-mob-item-body--open{height:auto;overflow:visible;visibility:visible;padding:0 14px 14px;animation:ngal-mob-expand .15s ease-out}@keyframes ngal-mob-expand{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ngal-mob-item-gif{display:block;width:100%;padding:0;border-radius:8px;overflow:hidden;border:1px solid var(--border);background:var(--surface);font-family:inherit;cursor:pointer;transition:border-color var(--transition-fast)}.ngal-mob-item-gif:active{border-color:var(--primary)}.ngal-mob-item-gif img{width:100%;height:auto;display:block}.ngal-mob-item-gif-empty{aspect-ratio:4 / 3;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary)}.ngal-mob-section{display:flex;flex-direction:column}.ngal-mob-section-label{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);margin-bottom:4px}.ngal-mob-section .ngal-note-lines{margin-top:0;padding-top:0;border-top:none}.ngal-mob-sheet-link{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid var(--border);border-radius:8px;background:var(--surface);font-family:inherit;font-size:var(--text-sm);font-weight:600;color:var(--primary);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.ngal-mob-sheet-link:active{background:color-mix(in srgb,var(--primary) 8%,var(--surface))}@media(max-width:768px){.ngal-mob-list{flex:0 0 auto;overflow-y:visible}}.ngal-list-add-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:7px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;margin-left:auto;transition:all var(--transition-fast)}.ngal-list-add-btn:hover{background:var(--primary-subtle);color:var(--primary);border-color:var(--primary-border)}.ngal-list-quick-icon{width:56px;height:56px;flex-shrink:0;border-radius:8px;background:var(--primary-subtle);color:var(--primary);display:flex;align-items:center;justify-content:center}.ngal-list-preview{font-size:var(--text-xs);color:var(--text-tertiary);opacity:.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.ngal-detail-panel--empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-tertiary);font-size:var(--text-sm)}.ngal-empty-add-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:8px;border:1px solid var(--primary-border);background:var(--primary-subtle);color:var(--primary);font-family:inherit;font-size:var(--text-sm);font-weight:600;cursor:pointer;margin-top:8px;transition:all var(--transition-fast)}.ngal-empty-add-btn:hover{background:var(--primary);color:var(--text-on-primary, #fff)}.ngal-qn-editor{padding:40px 56px 80px}.ngal-qn-topline{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.ngal-qn-timestamp{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-tertiary)}.ngal-qn-style-chip{padding:1px 8px;border-radius:4px;background:var(--primary-subtle);color:var(--primary);font-weight:600;font-size:11px;margin-left:4px}.ngal-qn-topline-right{display:flex;align-items:center;gap:8px}.ngal-qn-title-input{width:100%;max-width:720px;margin:0;padding:2px 0;border:none;background:transparent;font-family:inherit;font-size:28px;font-weight:800;color:var(--text-primary);letter-spacing:-.02em;line-height:1.25;outline:none;caret-color:var(--primary)}.ngal-qn-title-input::placeholder{color:var(--text-tertiary);opacity:.5}.ngal-qn-divider{width:48px;height:2px;background:var(--border);margin:20px 0;border-radius:1px}.ngal-qn-body-input{width:100%;max-width:720px;padding:0;border:none;background:transparent;font-family:inherit;font-size:var(--text-base);color:var(--text-secondary);line-height:1.75;outline:none;resize:none;caret-color:var(--primary);min-height:300px}.ngal-qn-body-input::placeholder{color:var(--text-tertiary);opacity:.5}.ngal-qn-delete-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast)}.ngal-qn-delete-btn:hover{color:var(--danger);border-color:var(--danger)}.ngal-qn-delete-btn--confirm{color:#fff;background:var(--danger);border-color:var(--danger)}.ngal-save-indicator{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;transition:all var(--transition-fast)}.ngal-save-indicator--saving{color:var(--text-tertiary)}.ngal-save-indicator--saved{color:var(--success, #2E7D32)}.ngal-save-spinner{animation:ngal-spin .8s linear infinite}@keyframes ngal-spin{to{transform:rotate(360deg)}}.ngal-mob-add-bar{display:flex;padding:8px 12px 0}.ngal-mob-add-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-family:inherit;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.ngal-mob-add-btn:active{background:var(--primary-subtle);color:var(--primary);border-color:var(--primary-border)}.ngal-mob-qn-icon{width:32px;height:32px;flex-shrink:0;border-radius:6px;background:var(--primary-subtle);color:var(--primary);display:flex;align-items:center;justify-content:center}.ngal-mob-qn-item{border-bottom:1px solid var(--border)}.ngal-mob-qn-preview{font-size:var(--text-xs);color:var(--text-tertiary);opacity:.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.ngal-mob-qn-chevron{color:var(--text-tertiary);flex-shrink:0}.ngal-mob-editor-backdrop{position:fixed;inset:0;background:#0006;z-index:999;animation:ngal-fade-in .2s ease-out}@keyframes ngal-fade-in{0%{opacity:0}to{opacity:1}}.ngal-mob-editor{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;background:var(--bg-primary);animation:ngal-slide-up .3s cubic-bezier(.22,1,.36,1)}@keyframes ngal-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.ngal-mob-editor-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.ngal-mob-editor-close{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast)}.ngal-mob-editor-close:active{background:var(--surface-hover)}.ngal-mob-save{display:flex;align-items:center;justify-content:center;width:36px;height:36px}.ngal-mob-save--saving{color:var(--text-tertiary)}.ngal-mob-save--saved{color:var(--success, #2E7D32)}.ngal-mob-editor-body{flex:1;display:flex;flex-direction:column;padding:16px;overflow-y:auto}.ngal-mob-editor-title-input{width:100%;padding:0;margin:0 0 8px;border:none;background:transparent;font-family:inherit;font-size:20px;font-weight:800;color:var(--text-primary);outline:none;caret-color:var(--primary)}.ngal-mob-editor-title-input::placeholder{color:var(--text-tertiary);opacity:.5}.ngal-mob-editor-divider{width:32px;height:2px;background:var(--border);margin:8px 0 16px;border-radius:1px}.ngal-mob-editor-textarea{flex:1;width:100%;padding:0;border:none;background:transparent;font-family:inherit;font-size:15px;color:var(--text-secondary);line-height:1.7;outline:none;resize:none;caret-color:var(--primary);min-height:200px}.devhub-page{max-width:960px;margin:0 auto;padding:48px 24px 80px}.devhub-header{display:flex;align-items:center;gap:16px;margin-bottom:40px}.devhub-header-icon{width:56px;height:56px;border-radius:14px;background:var(--primary-subtle);color:var(--primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.devhub-title{margin:0;font-size:28px;font-weight:800;color:var(--text-primary);letter-spacing:-.02em}.devhub-subtitle{margin:4px 0 0;font-size:var(--text-sm);color:var(--text-tertiary);line-height:1.5}.devhub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}.devhub-category{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px}.devhub-category-title{margin:0 0 12px;font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary)}.devhub-category-list{display:flex;flex-direction:column;gap:2px}.devhub-link{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:8px;text-decoration:none;color:var(--text-primary);font-size:var(--text-sm);font-weight:500;transition:background var(--transition-fast)}.devhub-link:hover{background:color-mix(in srgb,var(--primary) 8%,transparent);color:var(--primary)}.devhub-link-arrow{opacity:0;color:var(--text-tertiary);transition:opacity var(--transition-fast)}.devhub-link:hover .devhub-link-arrow{opacity:1;color:var(--primary)}@media(max-width:600px){.devhub-page{padding:24px 16px 60px}.devhub-grid{grid-template-columns:1fr}}.cuy-page{position:relative;min-height:100vh;min-height:100dvh;background:var(--bg-primary);overflow:hidden}.cuy-page-back{position:fixed;top:calc(16px + var(--safe-area-top, 0px));left:calc(16px + var(--safe-area-left, 0px));z-index:10;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:50%;background:var(--surface);color:var(--text-primary);cursor:pointer;box-shadow:0 2px 8px var(--shadow-subtle);transition:transform var(--transition-fast),background var(--transition-fast)}.cuy-page-back:hover{transform:scale(1.06);background:var(--surface-hover)}.cuy-page-stage{position:relative;display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:60px 24px 40px}.cuy-page-reveal{opacity:0;transform:translateY(20px);animation:cuy-page-reveal .6s ease-out forwards;animation-delay:calc(var(--i, 0) * .12s + .5s)}@keyframes cuy-page-reveal{to{opacity:1;transform:translateY(0)}}.cuy-page-mascot-pop{width:100%;height:100%;animation:cuy-page-pop-in .5s cubic-bezier(.175,.885,.32,1.275) .2s both}@keyframes cuy-page-pop-in{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.cuy-page-mascot-bob{width:100%;height:100%;animation:cuy-page-bob 3s ease-in-out .7s infinite}@keyframes cuy-page-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.cuy-page-scene{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;max-width:420px}.cuy-page-mascot-area{position:relative;width:160px;height:160px;margin-bottom:8px}.cuy-page-mascot-img{width:100%;height:100%;object-fit:contain}.cuy-page-greeting{font-size:var(--text-3xl);font-weight:800;color:var(--text-primary);margin:0}.cuy-page-subtitle{font-size:var(--text-base);color:var(--text-secondary);margin:0;line-height:1.7}.cuy-page-tagline{font-size:var(--text-lg);font-weight:700;margin:8px 0 0;letter-spacing:.04em;background:linear-gradient(90deg,var(--primary),var(--primary-light, var(--primary)),var(--primary));background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:cuy-page-reveal .6s ease-out forwards,cuy-page-gradient-text 3s linear 1.2s infinite;animation-delay:calc(var(--i, 3) * .12s + .5s),1.2s}@keyframes cuy-page-gradient-text{to{background-position:200% center}}.cuy-page-glow{position:absolute;top:50%;left:50%;width:400px;height:400px;margin:-200px 0 0 -200px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--primary) 22%,transparent) 0%,color-mix(in srgb,var(--primary) 8%,transparent) 40%,transparent 70%);animation:cuy-page-glow-breathe 4s ease-in-out infinite;pointer-events:none}@keyframes cuy-page-glow-breathe{0%,to{transform:scale(1);opacity:.7}50%{transform:scale(1.12);opacity:1}}.cuy-page-stars{position:absolute;inset:0;pointer-events:none;z-index:0}.cuy-page-star{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--primary)}.cuy-page-star--1{top:10%;left:15%;animation:cuy-page-twinkle 3s ease-in-out infinite}.cuy-page-star--2{top:5%;right:20%;animation:cuy-page-twinkle 2.5s ease-in-out infinite .5s}.cuy-page-star--3{top:25%;left:8%;animation:cuy-page-twinkle 3.5s ease-in-out infinite 1s}.cuy-page-star--4{top:35%;right:12%;animation:cuy-page-twinkle 2.8s ease-in-out infinite .3s}.cuy-page-star--5{bottom:40%;left:20%;animation:cuy-page-twinkle 3.2s ease-in-out infinite 1.5s}.cuy-page-star--6{bottom:30%;right:25%;animation:cuy-page-twinkle 2.7s ease-in-out infinite .8s}.cuy-page-star--7{top:15%;left:40%;animation:cuy-page-twinkle 3.8s ease-in-out infinite .2s}.cuy-page-star--8{bottom:45%;left:35%;animation:cuy-page-twinkle 2.9s ease-in-out infinite 1.2s}.cuy-page-star--9{top:8%;right:35%;animation:cuy-page-twinkle 3.3s ease-in-out infinite .7s}.cuy-page-star--10{bottom:25%;right:8%;animation:cuy-page-twinkle 2.6s ease-in-out infinite 1.8s}.cuy-page-star--11{top:45%;left:5%;animation:cuy-page-twinkle 3.6s ease-in-out infinite .4s}.cuy-page-star--12{bottom:35%;right:40%;animation:cuy-page-twinkle 3.1s ease-in-out infinite 1.1s}@keyframes cuy-page-twinkle{0%,to{opacity:.1;transform:scale(.8)}50%{opacity:.6;transform:scale(1.2)}}@media(max-width:600px){.cuy-page-stage{padding:60px 20px 40px}.cuy-page-mascot-area{width:120px;height:120px}.cuy-page-glow{width:300px;height:300px;margin:-150px 0 0 -150px}.cuy-page-greeting{font-size:26px}.cuy-page-subtitle{font-size:var(--text-sm)}.cuy-page-tagline{font-size:var(--text-base)}.cuy-page-scene{max-width:320px}}@media(prefers-reduced-motion:reduce){.cuy-page-mascot-bob,.cuy-page-glow,.cuy-page-star,.cuy-page-tagline{animation:none}.cuy-page-reveal,.cuy-page-mascot-pop{animation-duration:.01s;animation-delay:0s}}.admin-users-page{max-width:720px;margin:0 auto;padding:32px 16px;color:var(--text-primary)}.admin-users-page__header{display:flex;align-items:baseline;gap:12px;margin-bottom:24px}.admin-users-page__header h1{margin:0;font-size:22px;font-weight:600}.admin-users-page__count{font-size:14px;color:var(--text-tertiary)}.admin-users-page__loading,.admin-users-page__error{padding:48px 0;text-align:center;color:var(--text-secondary);font-size:14px}.admin-users-page__error{color:var(--error, #ef4444)}.admin-users-page__list{display:flex;flex-direction:column;gap:2px;border-radius:10px;overflow:hidden}.admin-users-page__row{display:flex;align-items:center;gap:16px;padding:12px 16px;background:var(--surface);transition:background var(--transition-fast, .15s)}.admin-users-page__row:hover{background:var(--surface-hover)}.admin-users-page__user-info{flex:1;min-width:0}.admin-users-page__name{font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-users-page__email{font-size:12px;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-users-page__meta{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.admin-users-page__activity{font-size:12px;color:var(--text-secondary)}.admin-users-page__analyses{font-size:11px;color:var(--text-tertiary)}.admin-users-page__impersonate-btn{flex-shrink:0;padding:6px 14px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text-primary);font-size:12px;font-weight:500;cursor:pointer;transition:all var(--transition-fast, .15s)}.admin-users-page__impersonate-btn:hover:not(:disabled){background:var(--primary);border-color:var(--primary);color:#fff}.admin-users-page__impersonate-btn:disabled{opacity:.4;cursor:not-allowed}@media(max-width:480px){.admin-users-page{padding:20px 12px}.admin-users-page__meta{display:none}}.admin-srs{max-width:960px;margin:0 auto;padding:32px 16px;color:var(--text-primary)}.admin-srs__header{display:flex;align-items:baseline;gap:16px;margin-bottom:24px}.admin-srs__header h1{margin:0;font-size:22px;font-weight:600}.admin-srs__refresh{padding:4px 12px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text-secondary);font-size:12px;cursor:pointer;transition:all var(--transition-fast, .15s)}.admin-srs__refresh:hover{background:var(--surface);color:var(--text-primary)}.admin-srs__loading,.admin-srs__error,.admin-srs__empty{padding:48px 0;text-align:center;color:var(--text-secondary);font-size:14px}.admin-srs__error{color:var(--error, #ef4444)}.admin-srs__summary{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.admin-srs__card{flex:1;min-width:80px;padding:12px;background:var(--surface);border-radius:8px;text-align:center}.admin-srs__card-value{font-size:20px;font-weight:600;line-height:1.2}.admin-srs__card-label{font-size:11px;color:var(--text-tertiary);margin-top:2px}.admin-srs__card--learning .admin-srs__card-value{color:#f59e0b}.admin-srs__card--review .admin-srs__card-value{color:#3b82f6}.admin-srs__card--new .admin-srs__card-value{color:var(--text-secondary)}.admin-srs__card--mastered .admin-srs__card-value{color:#22c55e}.admin-srs__tabs{display:flex;gap:4px;margin-bottom:16px}.admin-srs__tab{padding:6px 14px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast, .15s)}.admin-srs__tab:hover{color:var(--text-primary)}.admin-srs__tab--active{background:var(--primary);border-color:var(--primary);color:#fff}.admin-srs__tab--active:hover{color:#fff}.admin-srs__table-wrap{overflow-x:auto;border-radius:8px;border:1px solid var(--border)}.admin-srs__table{width:100%;border-collapse:collapse;font-size:13px}.admin-srs__table thead{background:var(--surface)}.admin-srs__table th{padding:8px 12px;text-align:left;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);white-space:nowrap}.admin-srs__th--sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--transition-fast, .15s)}.admin-srs__th--sortable:hover{color:var(--text-primary)}.admin-srs__table td{padding:8px 12px;border-top:1px solid var(--border);white-space:nowrap}.admin-srs__table tbody tr:hover{background:var(--surface)}.admin-srs__cell-name{max-width:200px;overflow:hidden;text-overflow:ellipsis;font-weight:500}.admin-srs__cell-set{max-width:140px;overflow:hidden;text-overflow:ellipsis;font-size:12px;color:var(--text-secondary)}.admin-srs__cell-num{font-variant-numeric:tabular-nums;text-align:right}.admin-srs__cell--overdue{color:#ef4444;font-weight:600}.admin-srs__row--overdue{background:#ef44440d}.admin-srs__phase{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600}.admin-srs__phase--new{background:var(--highlight-faint, rgba(255, 255, 255, .1));color:var(--text-secondary)}.admin-srs__phase--learning{background:#f59e0b26;color:#f59e0b}.admin-srs__phase--review{background:#3b82f626;color:#3b82f6}@media(max-width:600px){.admin-srs{padding:20px 12px}.admin-srs__summary{gap:6px}.admin-srs__card{min-width:60px;padding:8px}.admin-srs__card-value{font-size:16px}}.impersonation-banner{position:fixed;top:0;left:0;right:0;z-index:10000;display:flex;align-items:center;justify-content:center;gap:12px;padding:8px 16px;background:var(--warning, #f59e0b);color:#000;font-size:13px;font-weight:500;letter-spacing:.01em}.impersonation-banner__text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.impersonation-banner__stop{flex-shrink:0;padding:3px 12px;border:1.5px solid rgba(0,0,0,.3);border-radius:4px;background:#0000001a;color:#000;font-size:12px;font-weight:600;cursor:pointer;transition:background var(--transition-fast, .15s)}.impersonation-banner__stop:hover{background:#0003}.cache-mode-overlay{position:fixed;bottom:20px;left:20px;z-index:9999;background:var(--overlay-dark);border:2px solid var(--danger);border-radius:8px;padding:12px 16px;font-family:Courier New,monospace;font-size:var(--text-sm);color:var(--text-primary);min-width:280px;max-width:480px;box-shadow:0 4px 12px var(--danger-glow);transition:all var(--transition-normal)}.cache-mode-overlay.minimized{min-width:auto;padding:8px 12px}.cache-mode-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--danger-glow);cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity var(--transition-normal)}.cache-mode-header:hover{opacity:.8}.cache-mode-overlay.minimized .cache-mode-header{margin-bottom:0;padding-bottom:0;border-bottom:none}.cache-mode-indicator{font-size:var(--text-xs);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.cache-mode-title{font-weight:700;letter-spacing:1px;color:var(--danger-light)}.cache-mode-status{margin-bottom:8px}.cache-status-item{font-size:var(--text-xs);padding:3px 0;color:var(--success-light)}.cache-status-empty{color:var(--text-tertiary);font-style:italic}.cache-mode-loads{margin-top:8px;padding-top:8px;border-top:1px solid var(--highlight-faint)}.cache-load-item{font-size:var(--text-xs);padding:3px 0;color:var(--warning);animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.navigation-guard-overlay{position:fixed;inset:0;background:var(--bg-primary);z-index:200000;pointer-events:all}
