:root{--ion-color-primary: #3880ff;--ion-color-secondary: #3dc2ff;--ion-color-tertiary: #5260ff;--ion-background-color: #ffffff;--ion-text-color: #000000;--ion-item-background: #ffffff;--ion-toolbar-background: #f8f8f8;--ion-card-background: #ffffff;--ion-border-color: #d7d8da;--lightbar-background: #f5f5f5;--lightbar-border: #ddd;--module-background: #f5f5f5;--module-front-background: rgba(173, 216, 230, .3);--module-back-background: rgba(255, 182, 193, .3);--text-color: #333;--secondary-text-color: #666;--toolbar-background: #f0f0f0}.dark-theme{--ion-color-primary: #428cff;--ion-color-secondary: #50c8ff;--ion-color-tertiary: #6a64ff;--ion-background-color: #121212;--ion-text-color: #ffffff;--ion-item-background: #1e1e1e;--ion-toolbar-background: #1f1f1f;--ion-card-background: #1e1e1e;--ion-border-color: #222222;--lightbar-background: #1e1e1e;--lightbar-border: #333;--module-background: #2d2d2d;--module-front-background: rgba(70, 130, 180, .2);--module-back-background: rgba(188, 143, 143, .2);--text-color: #f0f0f0;--secondary-text-color: #aaa;--toolbar-background: #2a2a2a}.dark-theme ion-content{--background: var(--ion-background-color)}.dark-theme ion-item{--background: var(--ion-item-background)}body{background-color:var(--ion-background-color);color:var(--ion-text-color)}.auth-message{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;gap:12px}.led-shell[data-v-c1d6d755]{position:relative;width:45px;height:12px;overflow:visible}.alley-led-shell[data-v-c1d6d755]{width:70px;height:18px}.led[data-v-c1d6d755]{width:100%;height:100%;border-radius:4px;border:1px solid var(--ion-border-color);cursor:pointer;transition:all .2s ease;box-shadow:0 0 2px #0000004d;position:relative}.led-label[data-v-c1d6d755],.led-label-button[data-v-c1d6d755]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);min-width:0;padding:0;border-radius:0;font-size:9px;font-weight:700;line-height:1;text-align:center;color:#fff;background:transparent;border:none;box-shadow:none;text-shadow:0 0 1px rgba(0,0,0,.95),0 0 3px rgba(0,0,0,.85);z-index:20;-webkit-user-select:none;user-select:none;pointer-events:none}.led-label-button[data-v-c1d6d755]{cursor:pointer;pointer-events:auto}.led-label-button[data-v-c1d6d755]:hover{color:#dbeafe}.is-mirrored .led-label[data-v-c1d6d755],.is-mirrored .led-label-button[data-v-c1d6d755]{transform:translate(-50%,-50%) scaleX(-1)}.multi-selected[data-v-c1d6d755]{border:2px solid #ffffff!important;box-shadow:0 0 10px #fffffff2!important;transform:scale(1.2)}.single-selected[data-v-c1d6d755]{background-color:#fff!important;box-shadow:0 0 12px #fffffff2!important}.led[data-v-c1d6d755]:hover{opacity:.8;transform:scale(1.3)}.calibration-active .led[data-v-c1d6d755]:hover{opacity:1;transform:none}.led[data-v-c1d6d755]:active{transform:scale(.9)}.calibration-active .led[data-v-c1d6d755]:active{transform:none}.enhanced-led[data-v-c1d6d755]{border:3px solid white!important;box-shadow:0 0 4px 1px #ffffff59,0 0 8px 2px #ffffff2e!important}.led-on[data-v-c1d6d755]{animation:pulse-led-c1d6d755 1.5s infinite alternate}.red-led[data-v-c1d6d755]{background-color:#ff3030!important;border:3px solid white!important;box-shadow:0 0 4px 1px #ff323273,0 0 8px 2px #ff646438!important}.green-led[data-v-c1d6d755]{background-color:#38d54f!important;border:3px solid white!important;box-shadow:0 0 4px 1px #1fa92d73,0 0 8px 2px #5bd46b38!important}.blue-led[data-v-c1d6d755]{background-color:#4040ff!important;border:3px solid white!important;box-shadow:0 0 4px 1px #0064ff73,0 0 8px 2px #64c8ff38!important}.white-led[data-v-c1d6d755]{background-color:#fff!important;border:3px solid #444!important;box-shadow:0 0 4px 1px #ffffff73,0 0 9px 3px #b4dcff47!important}.orange-led[data-v-c1d6d755]{background-color:#ffcc40!important;border:3px solid white!important;box-shadow:0 0 4px 1px #ffbf0073,0 0 8px 2px #ffcc4038!important}.black-led[data-v-c1d6d755]{background-color:#000!important;border:2px solid #444!important;box-shadow:none!important}@keyframes pulse-led-c1d6d755{0%{box-shadow:0 0 4px 1px #fff6,0 0 8px 2px #fff3;border:3px solid white}to{box-shadow:0 0 6px 2px #ffffff8c,0 0 10px 3px #ffffff47;border:3px solid rgba(255,255,255,.8)}}.red-led.led-on[data-v-c1d6d755]{animation:pulse-red-c1d6d755 1.5s infinite alternate}@keyframes pulse-red-c1d6d755{0%{box-shadow:0 0 4px 1px #ff323273,0 0 8px 2px #ff646438;border:3px solid white}to{box-shadow:0 0 6px 2px #ff323299,0 0 10px 3px #ff64644d;border:3px solid rgba(255,255,255,.8)}}.green-led.led-on[data-v-c1d6d755]{animation:pulse-green-c1d6d755 1.5s infinite alternate}@keyframes pulse-green-c1d6d755{0%{box-shadow:0 0 4px 1px #1fa92d75,0 0 8px 2px #5bd46b38;border:3px solid white}to{box-shadow:0 0 6px 2px #1fa92d9e,0 0 10px 3px #5bd46b4d;border:3px solid rgba(255,255,255,.82)}}.blue-led.led-on[data-v-c1d6d755]{animation:pulse-blue-c1d6d755 1.5s infinite alternate}@keyframes pulse-blue-c1d6d755{0%{box-shadow:0 0 4px 1px #0064ff73,0 0 8px 2px #64c8ff38;border:3px solid white}to{box-shadow:0 0 6px 2px #0064ff99,0 0 10px 3px #64c8ff4d;border:3px solid rgba(255,255,255,.8)}}.white-led.led-on[data-v-c1d6d755]{animation:pulse-white-c1d6d755 1.5s infinite alternate}@keyframes pulse-white-c1d6d755{0%{box-shadow:0 0 4px 1px #ffffff73,0 0 8px 2px #b4dcff47;border:3px solid #444}to{box-shadow:0 0 6px 2px #ffffff94,0 0 11px 3px #b4dcff57;border:3px solid #222}}.orange-led.led-on[data-v-c1d6d755]{animation:pulse-orange-c1d6d755 1.5s infinite alternate}@keyframes pulse-orange-c1d6d755{0%{box-shadow:0 0 4px 1px #ffbf0073,0 0 8px 2px #ffcc4038;border:3px solid white}to{box-shadow:0 0 6px 2px #ffbf0099,0 0 10px 3px #ffcc404d;border:3px solid rgba(255,255,255,.8)}}.alley-led[data-v-c1d6d755]{width:25px;height:25px;border:2px solid #ffcc00;box-shadow:0 0 4px #ffcc0040}.alley-led.enhanced-led[data-v-c1d6d755]{border:4px solid white!important;box-shadow:0 0 6px 2px #ffffff80,0 0 10px 3px #ffffff3d!important}.alley-led.red-led[data-v-c1d6d755]{border:4px solid white!important;box-shadow:0 0 6px 2px #ff323294,0 0 10px 3px #ff646447!important}.alley-led.green-led[data-v-c1d6d755]{border:4px solid white!important;box-shadow:0 0 6px 2px #1fa92d94,0 0 10px 3px #5bd46b47!important}.alley-led.blue-led[data-v-c1d6d755]{border:4px solid white!important;box-shadow:0 0 6px 2px #0064ff94,0 0 10px 3px #64c8ff47!important}.alley-led.white-led[data-v-c1d6d755]{border:4px solid #222!important;box-shadow:0 0 6px 2px #ffffff94,0 0 11px 3px #b4dcff4d!important}.alley-led.orange-led[data-v-c1d6d755]{border:4px solid white!important;box-shadow:0 0 6px 2px #ffbf0094,0 0 10px 3px #ffcc4047!important}.alley-led.black-led[data-v-c1d6d755]{border:2px solid #444!important;box-shadow:none!important}.alley-led[data-v-c1d6d755]:hover{transform:scale(1.2)}.pattern-applied[data-v-c1d6d755]{border:2px solid var(--ion-color-warning)}.inactive[data-v-c1d6d755]{opacity:.5;border:2px dashed var(--ion-color-medium)}.enhanced-led.inactive[data-v-c1d6d755]{animation:none;opacity:.7;box-shadow:none!important;border:2px dashed white!important}.red-led.inactive[data-v-c1d6d755]{animation:none;background-color:#a00!important;opacity:.7;box-shadow:none!important;border:2px dashed white!important}.green-led.inactive[data-v-c1d6d755]{animation:none;background-color:#197a24!important;opacity:.72;box-shadow:none!important;border:2px dashed white!important}.blue-led.inactive[data-v-c1d6d755]{animation:none;background-color:#00a!important;opacity:.7;box-shadow:none!important;border:2px dashed white!important}.white-led.inactive[data-v-c1d6d755]{animation:none;background-color:#cfcfcf!important;opacity:.85;box-shadow:0 0 8px 2px #ffffff8c,0 0 14px 6px #b4dcff59!important;border:2px dashed #ffffff!important}.orange-led.inactive[data-v-c1d6d755]{animation:none;background-color:#c90!important;opacity:.7;box-shadow:none!important;border:2px dashed white!important}.black-led.inactive[data-v-c1d6d755]{animation:none;background-color:#000!important;opacity:.5;box-shadow:none!important;border:2px dashed #666!important}.light-module[data-v-e1f1b39d]{border:1px solid var(--ion-border-color);border-radius:4px;padding:8px;margin:5px;background-color:var(--module-background);max-width:200px;height:100px;position:relative;transition:all .2s ease}.light-module.selected[data-v-e1f1b39d]{border:3px solid var(--ion-color-primary);box-shadow:0 0 8px #3880ff80;transform:scale(1.05)}.light-module[data-v-e1f1b39d]:not(.alley):after{content:"";position:absolute;top:25px;bottom:0;left:50%;width:5px;background-color:var(--ion-border-color);transform:translate(-50%)}.front[data-v-e1f1b39d]{background-color:var(--module-front-background)}.back[data-v-e1f1b39d]{background-color:var(--module-back-background)}.alley[data-v-e1f1b39d]{background-color:#fc03;height:50px;width:60px;z-index:50;border:2px solid #ffcc00;box-shadow:0 0 10px #ffcc004d}.alley h4[data-v-e1f1b39d]{font-size:.7rem;margin-bottom:4px}h4[data-v-e1f1b39d]{margin-top:0;margin-bottom:8px;font-size:.8rem;text-align:center;color:var(--text-color)}.leds-container[data-v-e1f1b39d]{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;height:70px;width:100%}.alley .leds-container[data-v-e1f1b39d]{height:10px;gap:10px;justify-content:center}.visual-mode[data-v-e1f1b39d]{border:none;background:transparent;box-shadow:none;margin:0;padding:0;width:64px;height:52px;max-width:none;position:absolute;pointer-events:none}.visual-mode[data-v-e1f1b39d]:after{display:none}.visual-mode.alley[data-v-e1f1b39d]{width:30px;height:30px}.visual-mode .leds-container[data-v-e1f1b39d]{position:relative;width:100%;height:100%;display:block}.visual-mode .leds-container[data-v-e1f1b39d] .led-shell{position:absolute;cursor:pointer;pointer-events:auto;z-index:10;overflow:visible}.alley .leds-container[data-v-e1f1b39d] .led{width:20px;height:20px;border-width:2px}.lightbar-part[data-v-90ae1a1f]{border:none;border-radius:0;padding:10px 0 14px;margin:0;background-color:#151a21;min-width:0;max-width:none;width:fit-content;flex-shrink:0;overflow:visible;position:relative}.lightbar-part.middle[data-v-90ae1a1f]{min-width:0;max-width:none;width:fit-content;padding:10px 0 14px}.part-header[data-v-90ae1a1f]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;padding:0 10px;gap:8px}.lightbar-part.middle .part-header[data-v-90ae1a1f]{margin-bottom:8px}.lightbar-part.middle .visual-stack[data-v-90ae1a1f]{width:210px}.part-header h3[data-v-90ae1a1f]{margin:0;font-size:.78rem;color:#eef4ff;letter-spacing:.02em}.part-header-copy[data-v-90ae1a1f]{display:flex;flex-direction:column;gap:2px}.part-subtitle[data-v-90ae1a1f]{margin:0;font-size:.64rem;color:#d5e1f2b8}.delete-button[data-v-90ae1a1f]{--color: #ff8897;--padding-start: 8px;--padding-end: 8px;--border-radius: 999px;min-height:32px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,101,132,.14);border:1px solid rgba(255,112,141,.34);box-shadow:0 10px 20px #14070c4d,inset 0 1px #ffffff14}.delete-button[data-v-90ae1a1f]:hover{--color: #ffd9df}.floating-delete-button[data-v-90ae1a1f]{position:absolute;top:10px;right:6px;z-index:20}.visual-stack.mirrored .floating-delete-button[data-v-90ae1a1f]{right:auto;left:6px}.floating-delete-button ion-icon[data-v-90ae1a1f]{font-size:1rem}.visual-stack[data-v-90ae1a1f]{position:relative;width:210px;aspect-ratio:1 / 1;-webkit-user-select:none;user-select:none}.visual-stack.mirrored[data-v-90ae1a1f]{transform:scaleX(-1)}.part-visual[data-v-90ae1a1f]{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;display:block;pointer-events:none}.end-visual-rotated[data-v-90ae1a1f]{transform:rotate(180deg)}.visual-overlay[data-v-90ae1a1f]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5}.lightbar-part.preview[data-v-90ae1a1f]{background:transparent;padding:0;pointer-events:none}.lightbar-part.preview .visual-overlay[data-v-90ae1a1f],.lightbar-part.preview .visual-stack[data-v-90ae1a1f],.lightbar-part.preview[data-v-90ae1a1f] *{pointer-events:none}.slot-end-front-outer[data-v-90ae1a1f]{left:20%;top:28%}.slot-end-front-inner[data-v-90ae1a1f]{left:46%;top:20%}.slot-end-back-inner[data-v-90ae1a1f]{left:46%;top:57%}.slot-end-back-outer[data-v-90ae1a1f]{left:20%;top:50%}.slot-middle-front[data-v-90ae1a1f]{left:18%;top:28%}.slot-middle-back[data-v-90ae1a1f]{left:18%;top:55%}.slot-alley[data-v-90ae1a1f]{left:70%;top:40%}.animation-mode[data-v-ee1f8eff]{position:relative;margin:20px}.timeline-surface[data-v-ee1f8eff]{position:relative;overflow:hidden;border-radius:30px;border:1px solid rgba(129,163,255,.18);background:linear-gradient(180deg,rgba(7,13,25,.98),rgba(13,20,37,.96)),linear-gradient(135deg,rgba(94,127,255,.16),rgba(43,58,101,.06));box-shadow:0 32px 90px #02081794,inset 0 1px #ffffff14,inset 0 -1px #81a3ff14}.timeline-surface[data-v-ee1f8eff]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at top left,rgba(110,159,255,.14),transparent 34%),radial-gradient(circle at bottom right,rgba(255,191,0,.08),transparent 26%);pointer-events:none}.surface-glow[data-v-ee1f8eff]{position:absolute;border-radius:999px;filter:blur(50px);opacity:.55;pointer-events:none}.surface-glow-left[data-v-ee1f8eff]{top:-80px;left:-40px;width:220px;height:220px;background:rgba(97,148,255,.18)}.surface-glow-right[data-v-ee1f8eff]{right:-60px;bottom:-70px;width:240px;height:240px;background:rgba(255,191,0,.12)}.timeline-header[data-v-ee1f8eff],.timeline-body[data-v-ee1f8eff]{position:relative;z-index:1}.timeline-header[data-v-ee1f8eff]{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:22px;padding:28px;border-bottom:1px solid rgba(129,163,255,.12)}.header-copy h2[data-v-ee1f8eff]{margin:0;color:#f7fbff;font-size:clamp(1.8rem,2.4vw,2.4rem);line-height:1.05;max-width:12ch}.eyebrow[data-v-ee1f8eff]{margin:0 0 10px;color:#7ea6ff;letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:700}.header-description[data-v-ee1f8eff]{margin:14px 0 0;max-width:42rem;color:#dfe8f7c7;font-size:.96rem;line-height:1.6}.header-panels[data-v-ee1f8eff]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.control-card[data-v-ee1f8eff],.selected-stage-card[data-v-ee1f8eff]{border-radius:22px;border:1px solid rgba(138,169,255,.14);background:linear-gradient(180deg,rgba(18,27,49,.84),rgba(11,17,31,.92));box-shadow:inset 0 1px #ffffff0d}.control-card[data-v-ee1f8eff]{display:flex;flex-direction:column;gap:14px;padding:18px}.control-card-header[data-v-ee1f8eff],.selected-patterns-header[data-v-ee1f8eff]{display:flex;align-items:center;justify-content:space-between;gap:12px}.control-label[data-v-ee1f8eff],.timeline-kicker[data-v-ee1f8eff],.popover-kicker[data-v-ee1f8eff]{color:#c6d9ffb8;letter-spacing:.12em;text-transform:uppercase;font-size:.7rem;font-weight:700}.control-value[data-v-ee1f8eff],.selected-patterns-count[data-v-ee1f8eff],.popover-duration[data-v-ee1f8eff]{color:#f4f8ff;font-size:.84rem;font-weight:600}.button-row[data-v-ee1f8eff]{display:flex;flex-wrap:wrap;gap:10px}.chrome-button[data-v-ee1f8eff],.popover-action[data-v-ee1f8eff]{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid rgba(132,166,255,.2);border-radius:14px;color:#ebf3ff;background:linear-gradient(180deg,rgba(20,31,56,.96),rgba(11,18,33,.96));box-shadow:0 16px 28px #00000038,inset 0 1px #ffffff0f;padding:11px 16px;font-weight:700;cursor:pointer;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,opacity .2s ease}.chrome-button[data-v-ee1f8eff]:hover,.popover-action[data-v-ee1f8eff]:hover{transform:translateY(-1px);border-color:#a3bfff57;box-shadow:0 20px 34px #00000047,inset 0 1px #ffffff14}.chrome-button[data-v-ee1f8eff]:disabled,.popover-action[data-v-ee1f8eff]:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:0 10px 18px #0000002e,inset 0 1px #ffffff0a}.chrome-button.primary[data-v-ee1f8eff]{border-color:#77acff75;background:linear-gradient(180deg,rgba(53,109,255,.94),rgba(32,74,182,.98))}.chrome-button.accent[data-v-ee1f8eff]{border-color:#ffc6666b;background:linear-gradient(180deg,rgba(255,179,61,.92),rgba(184,116,20,.96))}.chrome-button.danger[data-v-ee1f8eff],.popover-action.danger[data-v-ee1f8eff]{border-color:#ff77823d;color:#ffd9dc}.chrome-button ion-icon[data-v-ee1f8eff],.popover-action ion-icon[data-v-ee1f8eff]{font-size:1rem}.control-caption[data-v-ee1f8eff]{margin:0;color:#d5e1f2a8;font-size:.82rem;line-height:1.45}.metric-strip[data-v-ee1f8eff]{display:flex;flex-wrap:wrap;gap:10px}.metric-pill[data-v-ee1f8eff],.overview-pill[data-v-ee1f8eff],.selected-stat[data-v-ee1f8eff]{border-radius:16px;border:1px solid rgba(142,175,255,.16);background:rgba(8,14,27,.46)}.metric-pill[data-v-ee1f8eff]{display:flex;flex-direction:column;gap:2px;min-width:88px;padding:10px 12px}.metric-label[data-v-ee1f8eff],.stat-label[data-v-ee1f8eff]{color:#c8d6eea3;font-size:.74rem;text-transform:uppercase;letter-spacing:.08em}.metric-pill strong[data-v-ee1f8eff],.selected-stat strong[data-v-ee1f8eff]{color:#f7fbff;font-size:.96rem}.text-field[data-v-ee1f8eff]{display:flex;flex-direction:column;gap:8px}.text-field span[data-v-ee1f8eff]{color:#dfe8f7b8;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.text-field input[data-v-ee1f8eff]{width:100%;border-radius:14px;border:1px solid rgba(138,170,255,.18);background:rgba(5,11,24,.54);color:#f7fbff;padding:12px 14px;font-size:.96rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.text-field input[data-v-ee1f8eff]:focus{border-color:#78aaff85;box-shadow:0 0 0 3px #5385ff24}.text-field input.error[data-v-ee1f8eff]{border-color:#ff6e7d8f;box-shadow:0 0 0 3px #ff6e7d1f}.timeline-body[data-v-ee1f8eff]{display:flex;flex-direction:column;gap:22px;padding:26px 28px 28px}.timeline-overview[data-v-ee1f8eff]{display:flex;align-items:center;justify-content:space-between;gap:18px}.timeline-overview h3[data-v-ee1f8eff],.timeline-empty-state h3[data-v-ee1f8eff],.selected-stage-copy h3[data-v-ee1f8eff],.stage-popover-head h4[data-v-ee1f8eff],.editor-header h2[data-v-ee1f8eff]{margin:0;color:#f7fbff}.timeline-overview-pills[data-v-ee1f8eff]{display:flex;flex-wrap:wrap;gap:10px}.overview-pill[data-v-ee1f8eff]{padding:10px 14px;color:#dbe7ff;font-size:.82rem;font-weight:600}.timeline-track-shell[data-v-ee1f8eff]{border-radius:24px;border:1px solid rgba(138,170,255,.14);background:linear-gradient(180deg,rgba(15,24,45,.82),rgba(10,15,28,.9));min-height:500px;padding:20px 20px 24px}.timeline-scroll[data-v-ee1f8eff]{overflow-x:auto;overflow-y:visible;min-height:450px;padding-bottom:110px}.timeline-scroll[data-v-ee1f8eff]::-webkit-scrollbar{height:10px}.timeline-scroll[data-v-ee1f8eff]::-webkit-scrollbar-thumb{border-radius:999px;background:rgba(129,163,255,.28);border:2px solid transparent;background-clip:padding-box}.timeline-track[data-v-ee1f8eff]{position:relative;display:flex;align-items:flex-start;min-width:max(100%,680px);padding-top:20px}.timeline-rail[data-v-ee1f8eff]{position:absolute;left:0;right:0;top:66px;height:4px;border-radius:999px;background:linear-gradient(90deg,rgba(105,149,255,.2),rgba(255,191,0,.22))}.playhead[data-v-ee1f8eff]{position:absolute;top:6px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:3}.playhead-line[data-v-ee1f8eff]{display:block;width:2px;height:88px;background:linear-gradient(180deg,rgba(130,185,255,0),rgba(130,185,255,.95),rgba(130,185,255,0));box-shadow:0 0 18px #6ba3ff7a}.playhead-chip[data-v-ee1f8eff]{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;border-radius:999px;background:rgba(68,122,255,.18);border:1px solid rgba(112,161,255,.22);color:#edf4ff;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.timeline-segment[data-v-ee1f8eff]{position:relative;display:flex;justify-content:center;min-width:112px;padding:0 8px}.timeline-segment.drop-target[data-v-ee1f8eff]:after{content:"";position:absolute;inset:14px 12px auto;height:112px;border-radius:18px;border:1px dashed rgba(128,179,255,.42);background:rgba(75,115,214,.08)}.stage-node[data-v-ee1f8eff]{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:10px;width:100%;min-width:0;border:none;background:transparent;color:#eef5ff;cursor:pointer;padding:0}.stage-node-topline[data-v-ee1f8eff]{font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#d6e3fac2}.stage-dot[data-v-ee1f8eff]{width:22px;height:22px;border-radius:999px;border:3px solid rgba(225,237,255,.68);background:radial-gradient(circle,rgba(163,194,255,.88),rgba(60,100,196,.9));box-shadow:0 0 0 8px #5f90ff14,0 16px 36px #0000004d;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.stage-duration[data-v-ee1f8eff]{padding:8px 12px;border-radius:999px;border:1px solid rgba(138,170,255,.16);background:rgba(9,15,28,.76);color:#e8f1ff;font-size:.76rem;font-weight:700}.timeline-segment.selected .stage-dot[data-v-ee1f8eff],.timeline-segment:hover .stage-dot[data-v-ee1f8eff],.timeline-segment.current .stage-dot[data-v-ee1f8eff]{transform:scale(1.08);border-color:#fffffff0;box-shadow:0 0 0 10px #6090ff24,0 18px 38px #00000057}.timeline-segment.current .stage-dot[data-v-ee1f8eff]{background:radial-gradient(circle,rgba(255,210,119,.98),rgba(226,139,38,.94))}.timeline-segment.dragging .stage-node[data-v-ee1f8eff]{opacity:.45}.stage-popover[data-v-ee1f8eff]{position:absolute;top:118px;left:50%;z-index:4;display:flex;flex-direction:column;gap:12px;width:min(360px,calc(100vw - 56px));min-height:320px;padding:16px;border-radius:20px;border:1px solid rgba(142,175,255,.18);background:linear-gradient(180deg,rgba(11,18,33,.98),rgba(8,13,25,.98)),linear-gradient(135deg,rgba(73,120,255,.14),rgba(255,191,0,.06));box-shadow:0 28px 60px #00000057,inset 0 1px #ffffff0f;opacity:0;pointer-events:none;transform:translate(-50%,14px);transition:opacity .2s ease,transform .2s ease}.timeline-segment:hover .stage-popover[data-v-ee1f8eff],.timeline-segment:focus-within .stage-popover[data-v-ee1f8eff],.timeline-segment.selected .stage-popover[data-v-ee1f8eff]{opacity:1;pointer-events:auto;transform:translate(-50%)}.stage-popover[data-v-ee1f8eff]:before{content:"";position:absolute;top:-8px;left:50%;width:16px;height:16px;border-left:1px solid rgba(142,175,255,.18);border-top:1px solid rgba(142,175,255,.18);background:rgba(9,15,28,.96);transform:translate(-50%) rotate(45deg)}.stage-popover-head[data-v-ee1f8eff]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.stage-preview-list[data-v-ee1f8eff],.selected-pattern-list[data-v-ee1f8eff]{margin:0;padding:0;list-style:none}.stage-preview-list[data-v-ee1f8eff]{display:grid;gap:10px}.stage-preview-list li[data-v-ee1f8eff],.selected-pattern-item[data-v-ee1f8eff]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(139,170,255,.08)}.stage-preview-list span[data-v-ee1f8eff],.selected-pattern-item span[data-v-ee1f8eff],.selected-stage-description[data-v-ee1f8eff],.stage-empty-copy[data-v-ee1f8eff],.stage-extra-copy[data-v-ee1f8eff],.selected-pattern-empty[data-v-ee1f8eff]{color:#e0eaf8c7;line-height:1.45}.stage-preview-list strong[data-v-ee1f8eff],.selected-pattern-item strong[data-v-ee1f8eff]{color:#f7fbff;font-size:.84rem}.stage-empty-copy[data-v-ee1f8eff],.stage-extra-copy[data-v-ee1f8eff],.selected-pattern-empty[data-v-ee1f8eff]{margin:0;font-size:.88rem}.stage-extra-copy[data-v-ee1f8eff]{margin-top:12px}.popover-actions[data-v-ee1f8eff],.selected-stage-actions[data-v-ee1f8eff],.editor-actions[data-v-ee1f8eff]{display:flex;flex-wrap:wrap;gap:10px}.popover-actions[data-v-ee1f8eff]{margin-top:auto}.popover-action[data-v-ee1f8eff]{flex:1 1 0;padding:10px 12px;border-radius:12px;font-size:.82rem}.timeline-empty-state[data-v-ee1f8eff]{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;padding:24px;border-radius:24px;border:1px dashed rgba(138,170,255,.2);background:rgba(10,16,30,.52)}.empty-icon[data-v-ee1f8eff]{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:rgba(75,120,255,.14);color:#dbe8ff;font-size:1.4rem}.timeline-empty-state p[data-v-ee1f8eff]{margin:8px 0 0;color:#e0eaf8bd}.selected-stage-card[data-v-ee1f8eff]{display:grid;gap:18px;padding:22px}.selected-stage-description[data-v-ee1f8eff]{margin:10px 0 0;max-width:40rem;font-size:.92rem}.selected-stage-grid[data-v-ee1f8eff]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.selected-stat[data-v-ee1f8eff]{display:flex;flex-direction:column;gap:6px;padding:14px}.selected-stage-main[data-v-ee1f8eff]{display:grid;grid-template-columns:minmax(220px,280px) 1fr;gap:18px;align-items:end}.duration-field input[data-v-ee1f8eff]{max-width:220px}.selected-patterns-header[data-v-ee1f8eff]{margin-bottom:14px}.selected-pattern-list[data-v-ee1f8eff]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.fullscreen-editor[data-v-ee1f8eff]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:flex;flex-direction:column;background:linear-gradient(180deg,rgba(6,11,22,.98),rgba(12,20,36,.98)),linear-gradient(135deg,rgba(73,120,255,.12),rgba(255,191,0,.05))}.editor-header[data-v-ee1f8eff]{position:sticky;top:0;z-index:4000;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;padding:18px 22px;border-bottom:1px solid rgba(129,163,255,.16);background:rgba(8,14,26,.92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.editor-header>div[data-v-ee1f8eff]:first-child{min-width:0}.editor-actions[data-v-ee1f8eff]{margin-left:auto;justify-content:flex-end}.editor-actions .chrome-button[data-v-ee1f8eff]{min-height:46px;white-space:nowrap}.editor-content[data-v-ee1f8eff]{flex:1;overflow:auto;padding:10px}.editor-action-dock[data-v-ee1f8eff]{position:sticky;top:81px;z-index:3990;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 22px 18px;border-bottom:1px solid rgba(129,163,255,.16);background:linear-gradient(180deg,rgba(8,14,26,.96),rgba(8,14,26,.82)),linear-gradient(135deg,rgba(73,120,255,.08),rgba(255,191,0,.04));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.editor-action-dock-copy[data-v-ee1f8eff]{display:flex;flex-direction:column;gap:4px;min-width:0}.editor-action-dock-copy strong[data-v-ee1f8eff]{color:#f7fbff;font-size:.98rem}.editor-action-dock-buttons[data-v-ee1f8eff]{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}@media (max-width: 1280px){.timeline-header[data-v-ee1f8eff]{grid-template-columns:1fr}.header-panels[data-v-ee1f8eff]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 960px){.animation-mode[data-v-ee1f8eff]{margin:12px}.timeline-header[data-v-ee1f8eff],.timeline-body[data-v-ee1f8eff]{padding:20px}.header-panels[data-v-ee1f8eff]{grid-template-columns:1fr}.timeline-overview[data-v-ee1f8eff],.selected-stage-main[data-v-ee1f8eff],.timeline-empty-state[data-v-ee1f8eff],.editor-header[data-v-ee1f8eff],.editor-action-dock[data-v-ee1f8eff]{grid-template-columns:1fr;display:grid}.editor-actions[data-v-ee1f8eff]{margin-left:0;justify-content:start}.editor-action-dock-buttons[data-v-ee1f8eff]{justify-content:start}.timeline-empty-state[data-v-ee1f8eff]{justify-items:start}.selected-stage-grid[data-v-ee1f8eff]{grid-template-columns:1fr}.stage-popover[data-v-ee1f8eff]{display:none}}@media (max-width: 640px){.timeline-track-shell[data-v-ee1f8eff]{min-height:auto;padding-inline:14px}.timeline-scroll[data-v-ee1f8eff]{min-height:auto;padding-bottom:24px}.playhead[data-v-ee1f8eff]{top:10px}.playhead-line[data-v-ee1f8eff]{height:64px}}.drawing-sheet[data-v-7d2d079a]{width:1088px;height:770px;box-sizing:border-box;padding:12px;background:#f5f5f1;color:#111;font-family:Arial,Helvetica,sans-serif;overflow:hidden}.sheet-border[data-v-7d2d079a]{position:relative;height:100%;border:2px solid #303030;background:#fffefb;padding:18px 22px 14px;box-sizing:border-box;overflow:hidden}.sheet-content[data-v-7d2d079a]{display:flex;flex-direction:column;gap:12px}.grid-axis[data-v-7d2d079a]{position:absolute;display:flex;font-size:11px;font-weight:700;color:#333}.top-axis[data-v-7d2d079a],.bottom-axis[data-v-7d2d079a]{left:20px;right:20px;justify-content:space-between}.top-axis[data-v-7d2d079a]{top:4px}.bottom-axis[data-v-7d2d079a]{bottom:4px}.left-axis[data-v-7d2d079a],.right-axis[data-v-7d2d079a]{top:24px;bottom:24px;flex-direction:column;justify-content:space-between}.left-axis[data-v-7d2d079a]{left:6px}.right-axis[data-v-7d2d079a]{right:6px}.sheet-top[data-v-7d2d079a]{display:grid;grid-template-columns:.95fr 1.1fr 1.45fr;gap:12px;align-items:start;min-width:0}.sheet-middle[data-v-7d2d079a]{display:grid;grid-template-columns:1.9fr .95fr;gap:12px;align-items:stretch;min-width:0}.sheet-bottom[data-v-7d2d079a]{display:grid;grid-template-columns:1.5fr 1fr;gap:12px;min-width:0}.sheet-top[data-v-7d2d079a]>*,.sheet-middle[data-v-7d2d079a]>*,.sheet-bottom[data-v-7d2d079a]>*{min-width:0;max-width:100%;box-sizing:border-box}.drawing-table[data-v-7d2d079a],.sheet-title[data-v-7d2d079a],.main-drawing[data-v-7d2d079a],.render-panel[data-v-7d2d079a],.notes-panel[data-v-7d2d079a],.title-block[data-v-7d2d079a]{border:1px solid #3a3a3a;background:#fffefa}.drawing-table table[data-v-7d2d079a]{width:100%;border-collapse:collapse;font-size:10px}.drawing-table th[data-v-7d2d079a],.drawing-table td[data-v-7d2d079a]{border:1px solid #444444;padding:3px 5px;vertical-align:top}.drawing-table th[data-v-7d2d079a]{background:#f1eee6;font-size:9px;text-transform:uppercase}.compact table[data-v-7d2d079a]{font-size:9.5px}.sheet-title[data-v-7d2d079a]{min-height:92px;display:flex;align-items:center;justify-content:center;text-align:center}.sheet-title-copy h1[data-v-7d2d079a]{margin:6px 0 3px;font-size:22px;letter-spacing:.02em}.sheet-title-copy p[data-v-7d2d079a],.drawing-type[data-v-7d2d079a]{margin:0}.drawing-type[data-v-7d2d079a]{font-size:10px;font-weight:700;letter-spacing:.08em}.cell-subtitle[data-v-7d2d079a]{margin-top:2px;font-size:9px}.cable-cell[data-v-7d2d079a]{font-weight:700;white-space:nowrap}.render-panel[data-v-7d2d079a]{padding:10px}.main-drawing[data-v-7d2d079a]{padding:10px;display:flex;flex-direction:column;gap:8px;width:100%;min-width:0;overflow:hidden}.view-label[data-v-7d2d079a]{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.main-drawing-stage[data-v-7d2d079a]{width:100%;height:198px;border:1px solid #3d3d3d;background:linear-gradient(180deg,rgba(238,238,238,.2),rgba(245,245,245,.2)),#f7f7f7;box-sizing:border-box;padding:0 4px;display:flex;align-items:center;justify-content:center;overflow:hidden}.parts-container[data-v-7d2d079a]{display:inline-flex;width:max-content;max-width:none;align-items:center;justify-content:center;gap:0;transform-origin:center center;will-change:transform}.drawing-annotations[data-v-7d2d079a]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.annotation-card[data-v-7d2d079a]{min-height:36px;border:1px solid #3a3a3a;padding:5px 6px;display:flex;flex-direction:column;gap:2px;font-size:10px}.annotation-title[data-v-7d2d079a],.notes-label[data-v-7d2d079a],.title-grid span[data-v-7d2d079a]{font-size:9px;text-transform:uppercase;color:#444}.pod-summary-list[data-v-7d2d079a]{margin-top:8px;display:grid;gap:6px}.pod-summary-row[data-v-7d2d079a]{display:grid;grid-template-columns:28px 1fr auto;gap:8px;align-items:center;border:1px solid #3a3a3a;padding:6px 7px;font-size:10px}.bubble[data-v-7d2d079a]{width:22px;height:22px;border:1px solid #222222;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:700}.pod-summary-copy[data-v-7d2d079a]{display:flex;flex-direction:column;gap:2px}.spec-meta[data-v-7d2d079a]{margin-top:10px;display:grid;gap:6px}.spec-meta>div[data-v-7d2d079a]{border-top:1px solid #bcbcbc;padding-top:5px;display:flex;justify-content:space-between;gap:10px;font-size:10px}.spec-meta span[data-v-7d2d079a]{color:#555}.notes-panel[data-v-7d2d079a]{padding:8px 10px}.notes-grid[data-v-7d2d079a]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}.notes-grid strong[data-v-7d2d079a]{display:block;margin-top:3px;font-size:10px;line-height:1.3}.notes-wide[data-v-7d2d079a]{grid-column:1 / -1}.title-block[data-v-7d2d079a]{display:grid;grid-template-columns:.8fr 1.2fr}.title-brand[data-v-7d2d079a]{border-right:1px solid #3a3a3a;padding:8px 10px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px}.brand-top[data-v-7d2d079a]{font-size:24px;line-height:1;font-weight:800;color:#61b84d;letter-spacing:.04em}.brand-bottom[data-v-7d2d079a]{font-size:18px;line-height:1;font-weight:800;color:#d32823;letter-spacing:.04em}.title-grid[data-v-7d2d079a]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.title-grid>div[data-v-7d2d079a]{border-left:1px solid #3a3a3a;border-top:1px solid #3a3a3a;padding:6px 8px;min-height:36px;box-sizing:border-box}.title-grid>div[data-v-7d2d079a]:nth-child(1),.title-grid>div[data-v-7d2d079a]:nth-child(2){border-top:none}.title-grid>div[data-v-7d2d079a]:nth-child(odd){border-left:none}.title-grid strong[data-v-7d2d079a]{display:block;margin-top:4px;font-size:11px}.drawer-root[data-v-cb88e917]{position:relative;z-index:40}.drawer-handle[data-v-cb88e917]{position:fixed;top:132px;right:18px;z-index:92;display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(129,163,255,.26);border-radius:999px;background:linear-gradient(135deg,rgba(8,13,26,.9),rgba(25,40,73,.88));color:#ecf4ff;padding:12px 16px;box-shadow:0 22px 50px #060c1b6b,inset 0 1px #ffffff14;cursor:pointer;transition:transform .24s ease,box-shadow .24s ease,opacity .24s ease;overflow:hidden}.drawer-handle[data-v-cb88e917]:hover{transform:translateY(-1px) scale(1.01);box-shadow:0 28px 58px #060c1b7a,inset 0 1px #ffffff1f}.drawer-handle.open[data-v-cb88e917]{right:min(520px,calc(100vw - 72px))}.drawer-handle.armed[data-v-cb88e917]{border-color:#90d6ff80;box-shadow:0 28px 62px #0f2c705c,0 0 0 1px #90d6ff2e inset}.drawer-handle-glow[data-v-cb88e917]{position:absolute;inset:-30% auto -30% -8%;width:70px;background:radial-gradient(circle,rgba(104,156,255,.42) 0%,rgba(104,156,255,0) 72%);pointer-events:none}.drawer-handle-text[data-v-cb88e917],.drawer-handle ion-icon[data-v-cb88e917]{position:relative;z-index:1}.drawer-handle-text[data-v-cb88e917]{font-size:.84rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.drawer-backdrop[data-v-cb88e917]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:89;border:none;background:radial-gradient(circle at 78% 20%,rgba(71,119,255,.2),transparent 28%),linear-gradient(180deg,rgba(4,7,14,.18),rgba(4,7,14,.48));-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.drawer-panel[data-v-cb88e917]{position:fixed;top:84px;right:0;bottom:18px;width:min(500px,calc(100vw - 36px));z-index:90;transform:translate(calc(100% + 28px));transition:transform .34s cubic-bezier(.22,1,.36,1);pointer-events:none}.drawer-panel.open[data-v-cb88e917]{transform:translate(0);pointer-events:auto}.drawer-chrome[data-v-cb88e917]{position:relative;height:100%;border-radius:28px 0 0 28px;background:linear-gradient(180deg,rgba(7,13,25,.98),rgba(13,20,37,.96)),linear-gradient(135deg,rgba(94,127,255,.16),rgba(43,58,101,.06));border:1px solid rgba(129,163,255,.18);border-right:none;box-shadow:0 32px 90px #02081794,inset 0 1px #ffffff14,inset 0 -1px #81a3ff14;overflow:hidden}.drawer-chrome[data-v-cb88e917]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at top left,rgba(110,159,255,.18),transparent 36%),radial-gradient(circle at bottom left,rgba(255,191,0,.1),transparent 28%);pointer-events:none}.drawer-header[data-v-cb88e917],.drawer-sections[data-v-cb88e917]{position:relative;z-index:1}.drawer-header[data-v-cb88e917]{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:24px 24px 18px}.drawer-eyebrow[data-v-cb88e917]{margin:0 0 8px;color:#7ea6ff;letter-spacing:.12em;text-transform:uppercase;font-size:.7rem;font-weight:700}.drawer-header h2[data-v-cb88e917]{margin:0;color:#f7fbff;font-size:1.8rem;line-height:1.05}.drawer-description[data-v-cb88e917]{margin:10px 0 0;color:#e3ecfcb8;font-size:.92rem;line-height:1.45;max-width:28rem}.drawer-close[data-v-cb88e917]{--color: #c9d7ff;--background-hover: rgba(255, 255, 255, .06)}.drawer-sections[data-v-cb88e917]{height:calc(100% - 132px);overflow:auto;padding:0 18px 22px 24px;display:flex;flex-direction:column;gap:20px}.drawer-sections[data-v-cb88e917]::-webkit-scrollbar{width:10px}.drawer-sections[data-v-cb88e917]::-webkit-scrollbar-thumb{border-radius:999px;background:rgba(129,163,255,.24);border:2px solid transparent;background-clip:padding-box}.drawer-section[data-v-cb88e917]{padding:16px;border-radius:22px;background:linear-gradient(180deg,rgba(18,27,49,.84),rgba(11,17,31,.92));border:1px solid rgba(138,169,255,.14);box-shadow:inset 0 1px #ffffff0d}.section-heading[data-v-cb88e917]{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}.section-label[data-v-cb88e917]{color:#f5f8ff;font-size:.94rem;font-weight:700}.section-caption[data-v-cb88e917]{color:#d5e1f2a3;font-size:.8rem}.template-grid[data-v-cb88e917]{display:grid;gap:14px}.template-card[data-v-cb88e917]{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:16px;border-radius:20px;border:1px solid rgba(130,162,255,.18);background:linear-gradient(180deg,rgba(12,20,37,.95),rgba(9,14,27,.98));box-shadow:0 14px 34px #00000047,inset 0 1px #ffffff0d;cursor:pointer;user-select:none;-webkit-user-select:none;overflow:hidden;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.template-card[data-v-cb88e917]:active{transform:scale(.995)}.template-card[data-v-cb88e917]:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--template-accent) 54%,white);box-shadow:0 18px 40px #00000057,0 0 0 1px #ffffff08 inset}.template-card.selected[data-v-cb88e917]{border-color:color-mix(in srgb,var(--template-accent) 70%,white);box-shadow:0 22px 44px #0000005c,0 0 0 1px #ffffff0d inset,0 0 0 2px color-mix(in srgb,var(--template-accent) 30%,transparent)}.template-card-glow[data-v-cb88e917]{position:absolute;inset:auto auto -18% -8%;width:180px;height:180px;background:radial-gradient(circle,color-mix(in srgb,var(--template-accent) 42%,transparent) 0%,transparent 72%);pointer-events:none}.template-copy[data-v-cb88e917],.template-preview-shell[data-v-cb88e917]{position:relative;z-index:1}.template-copy h3[data-v-cb88e917]{margin:0 0 6px;color:#f7fbff;font-size:1rem}.template-preview-shell[data-v-cb88e917]{display:flex;justify-content:center;align-items:center;padding:10px 6px 0;min-height:220px;border-radius:16px;pointer-events:none;background:radial-gradient(circle at 50% 12%,rgba(93,126,255,.12),transparent 36%),linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,0))}.drawer-backdrop-enter-active[data-v-cb88e917],.drawer-backdrop-leave-active[data-v-cb88e917]{transition:opacity .24s ease}.drawer-backdrop-enter-from[data-v-cb88e917],.drawer-backdrop-leave-to[data-v-cb88e917]{opacity:0}@media (max-width: 900px){.drawer-panel[data-v-cb88e917]{top:76px;width:min(440px,calc(100vw - 20px))}.drawer-handle.open[data-v-cb88e917]{right:min(454px,calc(100vw - 60px))}}.lightbar-builder[data-v-42459704]{display:flex;flex-direction:column;gap:20px;padding:20px;max-width:100%;margin:0 auto}.bar-size-selector[data-v-42459704]{display:flex;flex:1 1 260px;flex-direction:column;gap:6px;min-width:220px}[data-v-42459704] ion-select{--placeholder-color: rgba(219, 231, 255, .72) !important;--color: #eef4ff !important;min-width:min(220px,100%);width:min(280px,100%)}[data-v-42459704] ion-select::part(text){color:#eef4ff!important}[data-v-42459704] ion-select::part(placeholder){color:#dbe7ffb8!important;opacity:1}[data-v-42459704] ion-label{--color: #d8e4fb !important;color:#d8e4fb!important}[data-v-42459704] ion-badge{--ion-color-primary-contrast: #ffffff !important;--ion-color-success-contrast: #ffffff !important;--ion-color-tertiary-contrast: #ffffff !important;--ion-color-warning-contrast: #000000 !important;font-weight:700;padding:6px 8px}.toolbar[data-v-42459704]{display:flex;align-items:center;gap:15px;padding:16px 18px;background:radial-gradient(circle at top left,rgba(109,158,255,.18),transparent 26%),linear-gradient(180deg,rgba(9,16,31,.94),rgba(14,21,40,.92));border:1px solid rgba(125,157,235,.18);box-shadow:0 24px 55px #080e1f38,inset 0 1px #ffffff0f;border-radius:22px;flex-wrap:wrap}.part-counter[data-v-42459704]{font-weight:700;color:#eaf2ff;background:rgba(129,163,255,.12);border:1px solid rgba(129,163,255,.16);border-radius:999px;padding:8px 12px}.toolbar-actions[data-v-42459704]{display:flex;flex-wrap:wrap;gap:10px}.toolbar-premium-button[data-v-42459704]{--border-radius: 999px;--padding-start: 14px;--padding-end: 14px;--box-shadow: 0 12px 24px rgba(6, 11, 26, .24)}.delete-mode-toggle[data-v-42459704]{--box-shadow: 0 12px 24px rgba(6, 11, 26, .24), 0 0 0 1px rgba(255, 94, 122, .12)}.calibration-toolbar[data-v-42459704]{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-left:auto}.calibration-banner[data-v-42459704]{margin:12px 0 0;padding:10px 14px;border-radius:8px;background:rgba(56,128,255,.12);border:1px solid rgba(56,128,255,.25);color:#1f2937;font-size:.9rem}.lightbar-preview[data-v-42459704]{position:relative;border:1px solid rgba(120,148,226,.18);border-radius:28px;padding:24px;background:radial-gradient(circle at top center,rgba(96,138,255,.12),transparent 28%),linear-gradient(180deg,rgba(6,11,24,.96),rgba(12,19,35,.96));box-shadow:0 36px 80px #03081452,inset 0 1px #ffffff0d;overflow-x:auto;max-width:100%;-webkit-user-select:none;user-select:none;cursor:default}.builder-stage[data-v-42459704]{min-height:340px;transition:box-shadow .28s ease,border-color .28s ease}.builder-stage.drawer-open[data-v-42459704]{box-shadow:0 42px 92px #03081461,inset 0 1px #ffffff0f,0 0 0 1px #7697ff1f}.builder-stage.placement-mode[data-v-42459704]{border-color:#87d1ff4d;box-shadow:0 42px 92px #03081461,inset 0 1px #ffffff0f,0 0 0 1px #87d1ff24}.parts-container[data-v-42459704]{display:flex;flex-direction:row;gap:0;min-width:max-content;align-items:stretch}.preview-fit-shell[data-v-42459704]{width:100%;min-width:0;display:flex;justify-content:center}.preview-scale-layer[data-v-42459704]{position:relative;flex:0 0 auto}.preview-scale-content[data-v-42459704]{transform-origin:top left}.enhanced-builder-parts[data-v-42459704]{padding:10px 6px}.part-drop-shell[data-v-42459704]{position:relative;display:flex;flex-direction:column;justify-content:center;border-radius:24px;transition:transform .22s ease,box-shadow .22s ease,background .22s ease}.placement-mode .part-drop-shell.state-valid[data-v-42459704],.placement-mode .gap-drop-zone.state-valid[data-v-42459704]{cursor:pointer}.placement-mode .part-drop-shell.state-valid[data-v-42459704] .led-shell,.placement-mode .part-drop-shell.state-valid[data-v-42459704] .delete-button,.placement-mode .part-drop-shell.state-valid[data-v-42459704] .part-header{pointer-events:none!important}.part-drop-shell.state-valid[data-v-42459704]{background:linear-gradient(180deg,rgba(87,118,225,.08),rgba(87,118,225,.02))}.part-drop-shell.state-active[data-v-42459704]{background:linear-gradient(180deg,rgba(84,153,255,.18),rgba(84,153,255,.08));box-shadow:0 18px 32px #2c67ff2e;transform:translateY(-4px)}.part-drop-shell.state-invalid[data-v-42459704]{background:linear-gradient(180deg,rgba(255,104,132,.1),rgba(255,104,132,.03))}.part-drop-overlay[data-v-42459704]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-start;justify-content:center;padding-top:10px;pointer-events:none;opacity:0;transition:opacity .18s ease}.part-drop-shell.state-valid .part-drop-overlay[data-v-42459704],.part-drop-shell.state-active .part-drop-overlay[data-v-42459704],.part-drop-shell.state-invalid .part-drop-overlay[data-v-42459704]{opacity:1}.part-drop-badge[data-v-42459704]{border-radius:999px;padding:6px 10px;background:rgba(8,13,26,.86);border:1px solid rgba(129,163,255,.28);color:#dce8ff;font-size:.72rem;font-weight:600;letter-spacing:.02em}.part-drop-shell.state-active .part-drop-badge[data-v-42459704]{border-color:#8cccff99;color:#fff}.part-drop-shell.state-invalid .part-drop-badge[data-v-42459704]{border-color:#ff779161;color:#ffd8e1}.gap-drop-zone[data-v-42459704]{position:relative;display:flex;align-items:center;justify-content:center;width:58px;flex-shrink:0;transition:width .22s ease,opacity .22s ease}.gap-drop-zone[data-v-42459704]:before{content:"";position:absolute;left:50%;top:10%;bottom:10%;width:1px;background:linear-gradient(180deg,transparent,rgba(120,148,226,.36),transparent);transform:translate(-50%)}.gap-drop-zone.state-valid[data-v-42459704],.gap-drop-zone.state-active[data-v-42459704]{width:74px}.gap-drop-zone.state-invalid[data-v-42459704]{opacity:.5}.gap-drop-pill[data-v-42459704]{position:relative;z-index:1;padding:10px 8px;border-radius:999px;background:rgba(7,12,24,.92);border:1px solid rgba(126,160,242,.18);color:#dee9fba3;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;writing-mode:vertical-rl;transform:rotate(180deg);opacity:0;transition:opacity .22s ease,transform .22s ease,border-color .22s ease,color .22s ease}.gap-drop-zone.state-valid .gap-drop-pill[data-v-42459704],.gap-drop-zone.state-active .gap-drop-pill[data-v-42459704],.gap-drop-zone.state-invalid .gap-drop-pill[data-v-42459704]{opacity:1}.gap-drop-zone.state-valid .gap-drop-pill[data-v-42459704]{color:#dce8ff}.gap-drop-zone.state-active .gap-drop-pill[data-v-42459704]{color:#fff;border-color:#86d6ff94;transform:rotate(180deg) scale(1.03)}.gap-drop-zone.state-invalid .gap-drop-pill[data-v-42459704]{color:#ffd1dacc;border-color:#ff759047}.placement-banner[data-v-42459704]{margin:12px 0 0;padding:12px 16px;border-radius:16px;background:linear-gradient(180deg,rgba(10,17,31,.96),rgba(13,22,39,.94));border:1px solid rgba(135,209,255,.22);color:#dcecff;box-shadow:0 18px 36px #040a182e,inset 0 1px #ffffff0d}.effects-container[data-v-42459704]{display:flex;justify-content:center;margin-top:20px}.color-picker-modal[data-v-42459704]{--width: 90%;--max-width: 400px;--height: 35vh;--border-radius: 16px}.color-picker-panel[data-v-42459704]{position:fixed;right:24px;bottom:24px;width:320px;background:linear-gradient(180deg,#ffffff 0%,#fafcff 100%);border:1px solid #d5ddea;border-radius:16px;box-shadow:0 14px 36px #0b1e423d;z-index:3000;padding:14px}.color-picker-header[data-v-42459704]{display:flex;align-items:center;justify-content:space-between}.color-picker-header h3[data-v-42459704]{margin:0;color:#1f2a37;font-size:1rem;font-weight:700}.color-picker-actions[data-v-42459704]{margin-top:10px}ion-content[data-v-42459704]{--background: var(--ion-background-color);height:100%;display:block}.preview-item[data-v-42459704]{display:flex;align-items:center;padding-top:20px}.button-item[data-v-42459704]{padding-top:20px;padding-bottom:20px}.color-preview[data-v-42459704]{width:30px;height:30px;border-radius:50%;border:2px solid var(--ion-border-color);margin-left:10px}.test-content[data-v-42459704]{padding:20px;text-align:center;background-color:var(--toolbar-background);margin:10px;border-radius:8px;border:1px solid var(--lightbar-border)}.test-content h2[data-v-42459704]{color:var(--text-color);margin-bottom:10px}.test-content p[data-v-42459704]{color:var(--secondary-text-color)}.pattern-selector[data-v-42459704]{padding:20px}.color-selector[data-v-42459704]{padding:12px 8px}.color-options[data-v-42459704]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.color-circle[data-v-42459704]{--swatch-color: #000000;width:100%;aspect-ratio:1 / 1;box-sizing:border-box;background-color:var(--swatch-color);border-radius:50%;cursor:pointer;border:2px solid rgba(14,25,45,.14);display:inline-flex;align-items:center;justify-content:center;color:#fff;box-shadow:inset 0 0 0 1px #ffffff47,0 3px 10px #0003;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;padding:0;margin:0}.color-circle[data-v-42459704]:hover{transform:translateY(-2px) scale(1.03);box-shadow:inset 0 0 0 1px #ffffff59,0 8px 16px #0003}.color-circle ion-icon[data-v-42459704]{font-size:1.2rem;filter:drop-shadow(0 0 2px rgba(0,0,0,.7))}.color-circle.selected[data-v-42459704]{border-color:#3f78ff;box-shadow:0 0 0 3px #3f78ff38,inset 0 0 0 1px #ffffff57,0 9px 18px #2755c152}.color-circle.dark[data-v-42459704]{border-color:#7e8696}.color-mode-help[data-v-42459704]{margin:0 0 10px;color:#49586d;font-size:.9rem}.paint-mode-content[data-v-42459704]{padding:8px 4px 2px}.active-colour-row[data-v-42459704]{display:flex;align-items:center;gap:10px;margin-bottom:8px;color:#1f2a37}.active-colour-swatch[data-v-42459704]{width:20px;height:20px;border-radius:50%;border:2px solid #6f7f92;box-sizing:border-box;flex-shrink:0}.active-colour-text[data-v-42459704]{font-size:.92rem}.color-options.compact[data-v-42459704]{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.editor-header[data-v-42459704]{display:flex;justify-content:space-between;align-items:center;padding:15px;background-color:var(--toolbar-background);border-radius:8px;margin-bottom:20px}.editor-header h2[data-v-42459704]{margin:0;color:var(--text-color);font-size:1.4em}.animation-container[data-v-42459704]{margin-top:40px;border-top:1px solid var(--lightbar-border);padding-top:20px}.pattern-buttons[data-v-42459704]{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.pattern-selection[data-v-42459704]{margin-bottom:20px}.pattern-selection h3[data-v-42459704]{margin:0 0 10px;color:var(--text-color)}.pattern-selection-controls[data-v-42459704]{display:flex;justify-content:space-between;align-items:center;padding:15px;background-color:var(--toolbar-background);border-radius:8px;margin-bottom:20px}.selection-info[data-v-42459704]{flex:1;color:var(--text-color)}.selected-led-info[data-v-42459704]{font-weight:700;margin-top:5px;color:var(--ion-color-primary)}.pattern-actions[data-v-42459704]{display:flex;align-items:center;gap:10px}.pattern-legend[data-v-42459704]{padding:15px;background-color:#fff;border-radius:8px;margin-bottom:20px;box-shadow:0 1px 3px #0000001a}.pattern-legend h3[data-v-42459704]{margin-top:0;margin-bottom:15px;font-size:1.1rem;color:#333}.pattern-types[data-v-42459704]{display:flex;flex-wrap:wrap;gap:15px}.pattern-type[data-v-42459704]{display:flex;align-items:center;gap:8px;color:#333;padding:5px 10px;border-radius:4px;background-color:#f5f5f5}.pattern-sample[data-v-42459704]{width:12px;height:12px;border-radius:50%;border:1px solid #999;position:relative;background-color:#333}.pattern-sample[data-v-42459704]:after{content:"";position:absolute;top:-3px;right:-3px;width:6px;height:6px;border-radius:50%;background-color:#ff9800}.pattern-SINGLE[data-v-42459704]:after{background-color:#3880ff}.pattern-DOUBLE[data-v-42459704]:after{background-color:#5260ff}.pattern-TRIPLE[data-v-42459704]:after{background-color:#2dd36f}.pattern-QUAD[data-v-42459704]:after{background-color:#ffc409}.pattern-STEADY[data-v-42459704]:after{background-color:#92949c}.selection-mode[data-v-42459704]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}[data-v-42459704] ion-toggle{--color: black;--color-checked: black}[data-v-42459704] ion-toggle::part(label){color:#000;font-weight:500}.toggle-container[data-v-42459704]{display:flex;align-items:center}.multi-select-toggle[data-v-42459704]{margin-left:auto}.selection-mode[data-v-42459704]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;color:#000}.multi-select-section[data-v-42459704]{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;background-color:var(--ion-color-light);border-radius:8px;margin-bottom:10px;box-shadow:0 1px 3px #0000001a}.multi-select-toggle[data-v-42459704]{font-size:1.1em}.selected-count[data-v-42459704]{font-weight:700;color:var(--ion-color-success)}.editor-controls-container[data-v-42459704]{display:flex;flex-direction:column;gap:10px;padding:10px;background-color:#f4f5f8;border-radius:8px;margin-bottom:10px}.controls-row[data-v-42459704]{display:flex;gap:10px;flex-wrap:wrap}.section-title[data-v-42459704]{margin-top:0;margin-bottom:10px;font-size:.95rem;color:#333;font-weight:600}.selection-mode-panel[data-v-42459704]{flex:1;min-width:200px;padding:10px;background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.mode-selector[data-v-42459704]{display:flex;gap:10px;justify-content:space-around}.mode-option[data-v-42459704]{display:flex;flex-direction:column;align-items:center;cursor:pointer;padding:8px;border-radius:8px;width:80px;transition:all .2s ease;border:2px solid #d7d8da;color:#333}.mode-option.active[data-v-42459704]{border-color:var(--ion-color-primary);color:var(--ion-color-primary);background-color:#3880ff1a}.mode-option ion-icon[data-v-42459704]{font-size:20px;margin-bottom:4px}.selection-status[data-v-42459704]{margin-top:8px;display:flex;justify-content:center}.status-indicator[data-v-42459704]{display:flex;gap:4px;align-items:center;justify-content:center;font-size:.85em;color:#333;flex-wrap:wrap}.selection-filter[data-v-42459704]{margin-top:12px}.filter-label[data-v-42459704]{font-size:.8rem;font-weight:600;color:#4b5563;margin-bottom:8px}.filter-options[data-v-42459704]{display:flex;flex-wrap:wrap;gap:8px}.filter-chip[data-v-42459704]{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid #d1d5db;background:#f9fafb;color:#1f2937;cursor:pointer;font-size:.8rem;font-weight:500;transition:all .2s ease}.filter-chip.active[data-v-42459704]{border-color:var(--ion-color-primary);background:rgba(56,128,255,.12);color:var(--ion-color-primary)}.filter-swatch[data-v-42459704]{width:12px;height:12px;border-radius:50%;border:1px solid rgba(17,24,39,.25);flex-shrink:0}.filter-count[data-v-42459704]{color:#6b7280;font-size:.75rem}.pattern-control-panel[data-v-42459704]{flex:1;min-width:300px;padding:10px;background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.pattern-controls[data-v-42459704]{display:flex;gap:10px;flex-wrap:wrap}.pattern-selector[data-v-42459704]{flex:1;min-width:150px;background-color:#f9f9f9;padding:8px;border-radius:6px;border:1px solid #e0e0e0}.pattern-selector ion-select[data-v-42459704]{width:100%;--placeholder-color: #333333;margin-top:4px;color:#333;border:1px solid #cccccc;border-radius:4px;--padding-start: 8px;--padding-end: 8px;--padding-top: 6px;--padding-bottom: 6px}.state-controls[data-v-42459704]{flex:1;min-width:150px;display:flex;flex-direction:column;gap:8px}.led-state-control[data-v-42459704]{background-color:#f9f9f9;padding:8px;border-radius:6px;border:1px solid #e0e0e0}.control-description[data-v-42459704]{margin:8px 0 0;color:#555;font-size:.85em}.state-toggle-container[data-v-42459704]{display:flex;gap:6px;margin-top:4px}.state-option[data-v-42459704]{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;padding:6px 4px;border-radius:6px;cursor:pointer;border:2px solid #d7d8da;transition:all .2s ease;color:#555;background-color:#fff;font-weight:500;font-size:.85em}.state-option.active[data-v-42459704]:first-child{border-color:#2dd36f;background-color:#2dd36f33;color:#1a7741;font-weight:700;box-shadow:0 1px 2px #2dd36f4d}.state-option.active[data-v-42459704]:last-child{border-color:#eb445a;background-color:#eb445a33;color:#bc2a3c;font-weight:700;box-shadow:0 1px 2px #eb445a4d}.pattern-controls ion-button[data-v-42459704]{margin-top:0;width:100%;--background: #3880ff;--color: #ffffff;--border-radius: 6px;--padding-top: 8px;--padding-bottom: 8px;font-weight:600;font-size:.9em;height:36px}.pattern-legend[data-v-42459704]{padding:10px;background-color:#fff;border-radius:8px;margin-bottom:10px;box-shadow:0 1px 3px #0000001a}.pattern-types[data-v-42459704]{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-around}.pattern-type[data-v-42459704]{display:flex;align-items:center;gap:4px;color:#333;padding:3px 6px;border-radius:4px;background-color:#f5f5f5;font-size:.8em}.pattern-sample[data-v-42459704]{width:10px;height:10px;border-radius:50%;border:1px solid #999;position:relative;background-color:#333}.pattern-sample[data-v-42459704]:after{content:"";position:absolute;top:-2px;right:-2px;width:5px;height:5px;border-radius:50%;background-color:#ff9800}.selection-box[data-v-42459704]{position:absolute;border:2px dashed #3880ff;background-color:#3880ff1a;pointer-events:none;z-index:10}.lightbar-preview.multi-select[data-v-42459704]{cursor:crosshair}.middle-part-picker-panel[data-v-42459704]{position:fixed;right:24px;bottom:24px;width:min(680px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow:auto;background:#ffffff;border:1px solid #d9d9d9;border-radius:12px;box-shadow:0 8px 24px #00000040;z-index:3001;padding:16px}.middle-part-picker-header[data-v-42459704]{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.middle-part-picker-header h3[data-v-42459704]{margin:0;color:#333}.middle-part-options[data-v-42459704]{display:flex;flex-direction:column;gap:16px;padding:4px}@media (min-width: 768px){.middle-part-options[data-v-42459704]{flex-direction:row;flex-wrap:wrap;justify-content:center}}.part-option[data-v-42459704]{cursor:pointer;transition:all .2s ease;flex:1;min-width:200px;background-color:#fff;border-radius:8px;padding:16px;box-shadow:0 2px 8px #0000001a;margin-bottom:10px}.part-option[data-v-42459704]:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0003}.part-option-header[data-v-42459704]{margin-bottom:10px}.part-option-header h4[data-v-42459704]{font-size:1.1rem;margin:0;color:#333;text-align:center}.option-preview[data-v-42459704]{display:flex;justify-content:space-around;padding:16px 8px;background-color:#f5f5f5;border-radius:8px;margin-bottom:8px}.led-preview[data-v-42459704]{width:24px;height:24px;border-radius:50%;border:2px solid #ccc}.blue-spec .led-preview.blue[data-v-42459704]{background-color:#00f;border-color:#008;box-shadow:0 0 8px #00f9}.amber-spec .led-preview.amber[data-v-42459704]{background-color:#ffbf00;border-color:#c90;box-shadow:0 0 8px #ffbf0099}.custom-spec .led-preview.custom[data-v-42459704]{background:linear-gradient(135deg,#ff0000,#00ff00,#0000ff);border-color:#888}.custom-desc[data-v-42459704]{text-align:center;font-size:.8em;color:#666;margin-top:8px}.modal-button-container[data-v-42459704]{margin-top:20px;display:flex;justify-content:center}.spec-modal-shell[data-v-42459704]{width:min(860px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow:auto;min-height:100%;box-sizing:border-box;padding:20px;background:linear-gradient(180deg,#f7faff 0%,#eef3fb 100%);border-radius:20px;box-shadow:0 24px 64px #09162e59}.spec-modal-overlay[data-v-42459704]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4000;background:rgba(8,14,28,.54);display:flex;align-items:center;justify-content:center;padding:24px}.spec-modal-header[data-v-42459704]{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.spec-modal-header h2[data-v-42459704]{margin:6px 0 8px;color:#13263d}.spec-modal-kicker[data-v-42459704]{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#4f7cff}.spec-modal-copy[data-v-42459704]{margin:0;color:#5b6a81}.spec-modal-grid[data-v-42459704]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.spec-field[data-v-42459704]{display:flex;flex-direction:column;gap:6px}.spec-field span[data-v-42459704]{font-size:.82rem;font-weight:700;color:#24364e}.spec-field input[data-v-42459704],.spec-field textarea[data-v-42459704]{width:100%;box-sizing:border-box;border:1px solid #cbd7ea;border-radius:12px;padding:12px 14px;font:inherit;color:#12253a;background:#ffffff;outline:none}.spec-field input[data-v-42459704]:focus,.spec-field textarea[data-v-42459704]:focus{border-color:#4f7cff;box-shadow:0 0 0 3px #4f7cff24}.spec-field textarea[data-v-42459704]{resize:vertical;min-height:112px}.spec-field-full[data-v-42459704]{display:flex;width:100%}.spec-notes-item[data-v-42459704]{margin-top:12px}.spec-helper-copy[data-v-42459704]{display:flex;flex-wrap:wrap;gap:16px;margin-top:14px;color:#445774;font-size:.9rem}.spec-modal-actions[data-v-42459704]{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.spec-capture-host[data-v-42459704]{position:fixed;left:-20000px;top:0;pointer-events:none;z-index:-1}@media (max-width: 1200px){.lightbar-builder[data-v-42459704]{gap:16px;padding:16px}.toolbar[data-v-42459704]{gap:12px;padding:14px 16px}.toolbar-actions[data-v-42459704],.calibration-toolbar[data-v-42459704]{width:100%}.calibration-toolbar[data-v-42459704]{margin-left:0}.builder-stage[data-v-42459704]{min-height:0}.lightbar-preview[data-v-42459704]{padding:18px}.color-picker-panel[data-v-42459704]{width:min(320px,calc(100vw - 24px));right:12px;bottom:12px}}.build-creator[data-v-13b6a8be]{padding:20px;background-color:var(--ion-background-color);border-radius:8px;margin:20px}h2[data-v-13b6a8be]{margin-top:0;color:var(--ion-color-primary)}.description[data-v-13b6a8be]{margin-bottom:20px;color:var(--ion-color-medium)}.build-settings[data-v-13b6a8be]{margin-bottom:20px}.pattern-files[data-v-13b6a8be]{margin-bottom:30px}.pattern-description[data-v-13b6a8be]{margin-bottom:15px;color:var(--ion-color-medium);font-size:.9em}.can-message-card[data-v-13b6a8be]{margin-bottom:12px;padding:10px 14px;border-radius:10px;border:1px solid rgba(var(--ion-color-primary-rgb),.35);background:rgba(var(--ion-color-primary-rgb),.06)}.can-message-title[data-v-13b6a8be]{font-size:.98rem;font-weight:600;color:var(--ion-color-primary)}.mono-pill[data-v-13b6a8be]{display:inline-block;font-family:monospace;font-size:.9em;background:rgba(0,0,0,.08);border-radius:6px;padding:2px 7px}.state-pill[data-v-13b6a8be]{display:inline-block;border-radius:999px;padding:4px 10px;font-family:monospace;font-size:.88em;border:1px solid transparent}.state-pill.off[data-v-13b6a8be]{background:rgba(var(--ion-color-medium-rgb),.15);border-color:rgba(var(--ion-color-medium-rgb),.35);color:var(--ion-color-dark)}.state-pill.on[data-v-13b6a8be]{background:rgba(var(--ion-color-success-rgb),.2);border-color:rgba(var(--ion-color-success-rgb),.5);color:var(--ion-color-success-shade)}.conflict-warning[data-v-13b6a8be]{display:flex;align-items:center;gap:10px;padding:10px 15px;background-color:#ffc40926;border:1px solid var(--ion-color-warning);border-radius:6px;margin-bottom:15px;color:var(--ion-color-warning-shade);transition:all .3s ease}.conflict-warning.resolved[data-v-13b6a8be]{background-color:#2dd36f26;border-color:var(--ion-color-success);color:var(--ion-color-success-shade)}.conflict-warning ion-icon[data-v-13b6a8be]{font-size:20px;color:var(--ion-color-warning)}.files-list[data-v-13b6a8be]{border:1px solid var(--ion-border-color);border-radius:8px;overflow:hidden;margin-top:10px}.empty-state[data-v-13b6a8be]{padding:20px;text-align:center;color:var(--ion-color-medium)}.files-header[data-v-13b6a8be]{display:flex;align-items:center;padding:8px 16px;background-color:var(--ion-color-light);border-bottom:2px solid var(--ion-border-color);font-weight:500;color:var(--ion-color-medium)}.drag-handle-spacer[data-v-13b6a8be]{width:24px;flex-shrink:0}.function-id-header[data-v-13b6a8be]{width:80px;padding-right:15px;text-align:center;flex-shrink:0}.byte-zero-header[data-v-13b6a8be]{width:230px;padding-right:15px;text-align:center;flex-shrink:0}.file-info-header[data-v-13b6a8be]{flex-grow:1;padding-left:5px}.actions-spacer[data-v-13b6a8be]{width:140px;flex-shrink:0}.file-item[data-v-13b6a8be]{display:flex;align-items:center;padding:12px 16px;border-bottom:1px solid var(--ion-border-color);transition:background-color .2s ease}.file-item.is-dragging[data-v-13b6a8be]{opacity:.5}.file-item.drop-target[data-v-13b6a8be]{border-top:2px solid var(--ion-color-primary);background-color:rgba(var(--ion-color-primary-rgb),.08)}.file-item.has-conflicts[data-v-13b6a8be]{background-color:#ffc4090d;transition:all .2s ease}.file-item.has-conflicts[data-v-13b6a8be]:hover{transform:translateY(-2px);box-shadow:0 2px 5px #0000001a}.file-item[data-v-13b6a8be]:last-child{border-bottom:none}.file-item[data-v-13b6a8be]:hover{background-color:var(--ion-color-light)}.drag-handle[data-v-13b6a8be]{cursor:grab;padding-right:10px;flex-shrink:0}.function-id[data-v-13b6a8be]{display:flex;align-items:center;justify-content:center;width:80px;padding-right:15px;flex-shrink:0}.byte-zero-values[data-v-13b6a8be]{width:230px;padding-right:15px;display:flex;justify-content:center;gap:6px;flex-shrink:0}.file-info[data-v-13b6a8be]{flex-grow:1;padding-left:5px;min-width:0}.file-name[data-v-13b6a8be]{font-weight:500;display:flex;align-items:center;gap:10px}.conflict-badges[data-v-13b6a8be]{display:flex;gap:4px;flex-wrap:wrap;margin-top:4px}.conflict-badge[data-v-13b6a8be]{display:flex;align-items:center;gap:4px;padding:4px 8px;font-size:.7em;border-radius:12px;color:#fff!important}.conflict-badge ion-icon[data-v-13b6a8be]{font-size:14px}.file-meta[data-v-13b6a8be]{font-size:.8em;color:var(--ion-color-medium);margin-top:4px}.file-actions[data-v-13b6a8be]{display:flex;gap:5px;flex-shrink:0}.actions[data-v-13b6a8be]{display:flex;gap:10px}.conflict-modal[data-v-13b6a8be]{--width: 90%;--max-width: 800px;--height: 80%}.conflict-intro[data-v-13b6a8be]{background-color:var(--ion-color-light);border-radius:8px;margin-bottom:15px}.conflict-intro h4[data-v-13b6a8be]{margin-top:0;color:var(--ion-color-dark)}.groups-summary[data-v-13b6a8be]{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.group-legend[data-v-13b6a8be]{display:flex;align-items:center;gap:10px}.group-pills[data-v-13b6a8be]{display:flex;gap:8px}.group-pill[data-v-13b6a8be]{display:flex;align-items:center;gap:4px;padding:6px 10px;border-radius:20px;color:#fff;font-size:.9em;box-shadow:0 2px 4px #0003;white-space:nowrap}.group-pill ion-icon[data-v-13b6a8be]{margin-left:2px}.conflict-groups-wrapper[data-v-13b6a8be]{display:flex;flex-direction:column;gap:20px}.conflict-group-section[data-v-13b6a8be]{background-color:#fff;border-radius:8px;padding:0;box-shadow:0 2px 8px #0000001a;overflow:hidden;margin-bottom:20px}.conflict-group-section-header[data-v-13b6a8be]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;margin-bottom:0;border-bottom:1px solid var(--ion-border-color);background-color:#00000008}.conflict-group-section-header h4[data-v-13b6a8be]{margin:0;color:var(--ion-color-dark);font-size:1.1em;display:flex;align-items:center}.conflict-group-section-header ion-badge[data-v-13b6a8be]{margin-left:8px}.conflict-group[data-v-13b6a8be]{background-color:#fff;border-radius:0;padding:16px;box-shadow:none;border-left:none;border-bottom:1px solid var(--ion-border-color);margin-bottom:0}.conflict-group[data-v-13b6a8be]:last-child{border-bottom:none}.conflict-group-header[data-v-13b6a8be]{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid var(--ion-border-color)}.conflict-group-header h5[data-v-13b6a8be]{margin:0;color:var(--ion-color-dark);font-size:1.1em}.conflict-location[data-v-13b6a8be]{font-size:.9em;color:var(--ion-color-medium);font-weight:500}.conflict-status[data-v-13b6a8be]{margin-left:8px}.conflicting-patterns[data-v-13b6a8be]{display:flex;flex-direction:column;gap:10px;margin-bottom:15px}.conflict-pattern-item[data-v-13b6a8be]{display:flex;justify-content:space-between;align-items:center;padding:10px;background-color:var(--ion-color-light);border-radius:6px;transition:all .2s ease}.conflict-pattern-item[data-v-13b6a8be]:hover{transform:translateY(-2px);box-shadow:0 2px 5px #0000001a}.pattern-info[data-v-13b6a8be]{display:flex;align-items:center;gap:10px}.affected-leds[data-v-13b6a8be]{background-color:var(--ion-color-light);padding:10px;border-radius:6px;margin-top:10px}.leds-label[data-v-13b6a8be]{font-weight:500;margin-bottom:8px;color:var(--ion-color-dark)}.led-list[data-v-13b6a8be]{display:flex;flex-wrap:wrap;gap:8px}.led-position[data-v-13b6a8be]{background-color:var(--ion-color-warning-tint);color:#000;padding:4px 8px;border-radius:16px;font-family:monospace;font-size:.9em;font-weight:500}.pseudo-disabled[data-v-13b6a8be]{opacity:.45;pointer-events:none}.spec-modal-overlay[data-v-13b6a8be]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4000;background:rgba(8,14,28,.54);display:flex;align-items:center;justify-content:center;padding:24px}.spec-modal-shell[data-v-13b6a8be]{width:min(860px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow:auto;box-sizing:border-box;padding:20px;border-radius:20px;background:linear-gradient(180deg,#f7faff 0%,#eef3fb 100%);box-shadow:0 24px 64px #09162e59}.spec-modal-header[data-v-13b6a8be]{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.spec-modal-header h3[data-v-13b6a8be]{margin:6px 0 8px;color:#13263d}.spec-modal-kicker[data-v-13b6a8be]{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#4f7cff}.spec-modal-copy[data-v-13b6a8be]{margin:0;color:#5b6a81}.spec-modal-grid[data-v-13b6a8be]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.spec-field[data-v-13b6a8be]{display:flex;flex-direction:column;gap:6px}.spec-field span[data-v-13b6a8be]{font-size:.82rem;font-weight:700;color:#24364e}.spec-field input[data-v-13b6a8be],.spec-field textarea[data-v-13b6a8be]{width:100%;box-sizing:border-box;border:1px solid #cbd7ea;border-radius:12px;padding:12px 14px;font:inherit;color:#12253a;background:#ffffff;outline:none}.spec-field input[data-v-13b6a8be]:focus,.spec-field textarea[data-v-13b6a8be]:focus{border-color:#4f7cff;box-shadow:0 0 0 3px #4f7cff24}.spec-field textarea[data-v-13b6a8be]{resize:vertical;min-height:112px}.spec-field-full[data-v-13b6a8be]{width:100%;margin-top:12px}.spec-helper-copy[data-v-13b6a8be]{display:flex;flex-wrap:wrap;gap:16px;margin-top:14px;color:#445774;font-size:.9rem}.spec-modal-actions[data-v-13b6a8be]{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.spec-capture-host[data-v-13b6a8be]{position:fixed;left:-20000px;top:0;pointer-events:none;z-index:-1}.event-logs[data-v-8fbb4d54]{padding:20px;display:flex;flex-direction:column;gap:16px}.header-row[data-v-8fbb4d54]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.header-row h2[data-v-8fbb4d54]{margin:0}.description[data-v-8fbb4d54]{color:var(--ion-color-medium)}.status-row[data-v-8fbb4d54]{min-height:24px}.result-count[data-v-8fbb4d54]{color:var(--ion-color-medium);font-weight:500}.error-message[data-v-8fbb4d54]{color:var(--ion-color-danger)}.loading-panel[data-v-8fbb4d54],.filters-panel[data-v-8fbb4d54],.preview-panel[data-v-8fbb4d54]{background:white;border:1px solid var(--ion-color-light-shade);border-radius:12px}.loading-panel[data-v-8fbb4d54]{display:flex;flex-direction:column;gap:12px;padding:12px 16px}.loading-header[data-v-8fbb4d54]{display:flex;align-items:center;gap:12px}.loading-label[data-v-8fbb4d54]{color:var(--ion-color-medium-shade);font-weight:500}.filters-panel[data-v-8fbb4d54]{padding:16px;display:flex;flex-direction:column;gap:16px}.filter-grid[data-v-8fbb4d54]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.filter-field[data-v-8fbb4d54]{display:flex;flex-direction:column;gap:8px;color:#111827;font-weight:600}.filter-field span[data-v-8fbb4d54]{font-size:.9rem}.filter-field ion-select[data-v-8fbb4d54],.date-input[data-v-8fbb4d54]{width:100%;min-height:44px;border:1px solid var(--ion-color-light-shade);border-radius:10px;background:white;color:#111827}.filter-field ion-select[data-v-8fbb4d54]{--padding-start: 12px;--padding-end: 12px}.date-input[data-v-8fbb4d54]{padding:0 12px;font:inherit}.filter-actions[data-v-8fbb4d54]{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.selection-summary[data-v-8fbb4d54]{color:var(--ion-color-medium);font-weight:500}.preview-panel[data-v-8fbb4d54]{overflow:hidden}.preview-header[data-v-8fbb4d54]{display:flex;justify-content:space-between;gap:16px;padding:12px 16px;border-bottom:1px solid var(--ion-color-light-shade)}.preview-meta[data-v-8fbb4d54]{margin-top:4px;color:var(--ion-color-medium);font-size:.9rem}.preview-actions[data-v-8fbb4d54]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.preview-content[data-v-8fbb4d54]{margin:0;padding:16px;max-height:320px;overflow:auto;background:#111827;color:#f9fafb;font-size:.85rem;line-height:1.4}.logs-table[data-v-8fbb4d54]{border:1px solid var(--ion-color-light-shade);border-radius:12px;overflow:hidden;background:white;color:#111827}.logs-header[data-v-8fbb4d54],.log-row[data-v-8fbb4d54]{display:grid;grid-template-columns:.8fr 1fr .8fr 2.1fr 1.2fr 1.8fr .9fr;gap:12px;align-items:center;padding:12px 16px;color:#111827}.logs-header[data-v-8fbb4d54]{background:var(--ion-color-light);font-weight:700;border-bottom:1px solid var(--ion-color-light-shade)}.log-row[data-v-8fbb4d54]{border-bottom:1px solid var(--ion-color-light-shade)}.log-row[data-v-8fbb4d54]:last-child{border-bottom:none}.device-badge[data-v-8fbb4d54]{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:.85rem;font-weight:600}.device-badge.lightbar[data-v-8fbb4d54]{background:rgba(56,128,255,.12);color:#1d4ed8}.device-badge.pwm_detector[data-v-8fbb4d54]{background:rgba(16,185,129,.12);color:#047857}.mono-cell[data-v-8fbb4d54]{font-family:monospace}.event-cell[data-v-8fbb4d54],.file-cell[data-v-8fbb4d54]{min-width:0}.event-message[data-v-8fbb4d54],.file-key[data-v-8fbb4d54]{overflow:hidden;text-overflow:ellipsis}.event-message[data-v-8fbb4d54]{white-space:normal;word-break:break-word}.file-key[data-v-8fbb4d54]{font-family:monospace;white-space:nowrap}.event-subtext[data-v-8fbb4d54]{margin-top:4px;color:#4b5563;font-size:.8rem}.actions-cell[data-v-8fbb4d54]{display:flex;align-items:center;gap:4px}.empty-state[data-v-8fbb4d54]{padding:24px 16px;text-align:center;color:var(--ion-color-medium)}@media (max-width: 1200px){.filter-grid[data-v-8fbb4d54]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 1100px){.logs-header[data-v-8fbb4d54],.log-row[data-v-8fbb4d54]{grid-template-columns:1fr}.logs-header[data-v-8fbb4d54]{display:none}.log-row[data-v-8fbb4d54]{gap:8px}}@media (max-width: 700px){.header-row[data-v-8fbb4d54],.preview-header[data-v-8fbb4d54],.filter-actions[data-v-8fbb4d54]{flex-direction:column;align-items:stretch}.filter-grid[data-v-8fbb4d54]{grid-template-columns:1fr}}ion-content[data-v-c935bc55]{--background: #f5f5f5}.rotate-message[data-v-c935bc55]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:20px;text-align:center}.rotate-message ion-icon[data-v-c935bc55]{font-size:50px;margin-bottom:20px;animation:rotate-c935bc55 2s infinite}@keyframes rotate-c935bc55{0%{transform:rotate(0)}25%{transform:rotate(90deg)}75%{transform:rotate(90deg)}to{transform:rotate(0)}}.hidden[data-v-c935bc55]{display:none}.mode-segment[data-v-c935bc55]{--background: var(--ion-color-light)}html.ios{--ion-default-font: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Roboto", sans-serif}html.md{--ion-default-font: "Roboto", "Helvetica Neue", sans-serif}html{--ion-default-dynamic-font: -apple-system-body;--ion-font-family: var(--ion-default-font)}body{background:var(--ion-background-color)}body.backdrop-no-scroll{overflow:hidden}html.ios ion-modal.modal-card ion-header ion-toolbar:first-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:first-of-type,html.ios ion-modal ion-footer ion-toolbar:first-of-type{padding-top:6px}html.ios ion-modal.modal-card ion-header ion-toolbar:last-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:last-of-type{padding-bottom:6px}html.ios ion-modal ion-toolbar{padding-right:calc(var(--ion-safe-area-right) + 8px);padding-left:calc(var(--ion-safe-area-left) + 8px)}@media screen and (min-width: 768px){html.ios ion-modal.modal-card:first-of-type{--backdrop-opacity: .18}}ion-modal.modal-default.show-modal~ion-modal.modal-default{--backdrop-opacity: 0;--box-shadow: none}html.ios ion-modal.modal-card .ion-page{border-top-left-radius:var(--border-radius)}.ion-color-primary{--ion-color-base: var(--ion-color-primary, #3880ff) !important;--ion-color-base-rgb: var(--ion-color-primary-rgb, 56, 128, 255) !important;--ion-color-contrast: var(--ion-color-primary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-primary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-primary-shade, #3171e0) !important;--ion-color-tint: var(--ion-color-primary-tint, #4c8dff) !important}.ion-color-secondary{--ion-color-base: var(--ion-color-secondary, #3dc2ff) !important;--ion-color-base-rgb: var(--ion-color-secondary-rgb, 61, 194, 255) !important;--ion-color-contrast: var(--ion-color-secondary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-secondary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-secondary-shade, #36abe0) !important;--ion-color-tint: var(--ion-color-secondary-tint, #50c8ff) !important}.ion-color-tertiary{--ion-color-base: var(--ion-color-tertiary, #5260ff) !important;--ion-color-base-rgb: var(--ion-color-tertiary-rgb, 82, 96, 255) !important;--ion-color-contrast: var(--ion-color-tertiary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-tertiary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-tertiary-shade, #4854e0) !important;--ion-color-tint: var(--ion-color-tertiary-tint, #6370ff) !important}.ion-color-success{--ion-color-base: var(--ion-color-success, #2dd36f) !important;--ion-color-base-rgb: var(--ion-color-success-rgb, 45, 211, 111) !important;--ion-color-contrast: var(--ion-color-success-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-success-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-success-shade, #28ba62) !important;--ion-color-tint: var(--ion-color-success-tint, #42d77d) !important}.ion-color-warning{--ion-color-base: var(--ion-color-warning, #ffc409) !important;--ion-color-base-rgb: var(--ion-color-warning-rgb, 255, 196, 9) !important;--ion-color-contrast: var(--ion-color-warning-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-warning-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-warning-shade, #e0ac08) !important;--ion-color-tint: var(--ion-color-warning-tint, #ffca22) !important}.ion-color-danger{--ion-color-base: var(--ion-color-danger, #eb445a) !important;--ion-color-base-rgb: var(--ion-color-danger-rgb, 235, 68, 90) !important;--ion-color-contrast: var(--ion-color-danger-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-danger-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-danger-shade, #cf3c4f) !important;--ion-color-tint: var(--ion-color-danger-tint, #ed576b) !important}.ion-color-light{--ion-color-base: var(--ion-color-light, #f4f5f8) !important;--ion-color-base-rgb: var(--ion-color-light-rgb, 244, 245, 248) !important;--ion-color-contrast: var(--ion-color-light-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-light-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-light-shade, #d7d8da) !important;--ion-color-tint: var(--ion-color-light-tint, #f5f6f9) !important}.ion-color-medium{--ion-color-base: var(--ion-color-medium, #92949c) !important;--ion-color-base-rgb: var(--ion-color-medium-rgb, 146, 148, 156) !important;--ion-color-contrast: var(--ion-color-medium-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-medium-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-medium-shade, #808289) !important;--ion-color-tint: var(--ion-color-medium-tint, #9d9fa6) !important}.ion-color-dark{--ion-color-base: var(--ion-color-dark, #222428) !important;--ion-color-base-rgb: var(--ion-color-dark-rgb, 34, 36, 40) !important;--ion-color-contrast: var(--ion-color-dark-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-dark-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-dark-shade, #1e2023) !important;--ion-color-tint: var(--ion-color-dark-tint, #383a3e) !important}.ion-page{left:0;right:0;top:0;bottom:0;display:flex;position:absolute;flex-direction:column;justify-content:space-between;contain:layout size style;z-index:0}ion-modal>.ion-page{position:relative;contain:layout style;height:100%}.split-pane-visible>.ion-page.split-pane-main{position:relative}ion-route,ion-route-redirect,ion-router,ion-select-option,ion-nav-controller,ion-menu-controller,ion-action-sheet-controller,ion-alert-controller,ion-loading-controller,ion-modal-controller,ion-picker-controller,ion-popover-controller,ion-toast-controller,.ion-page-hidden{display:none!important}.ion-page-invisible{opacity:0}.can-go-back>ion-header ion-back-button{display:block}html.plt-ios.plt-hybrid,html.plt-ios.plt-pwa{--ion-statusbar-padding: 20px}@supports (padding-top: 20px){html{--ion-safe-area-top: var(--ion-statusbar-padding)}}@supports (padding-top: env(safe-area-inset-top)){html{--ion-safe-area-top: env(safe-area-inset-top);--ion-safe-area-bottom: env(safe-area-inset-bottom);--ion-safe-area-left: env(safe-area-inset-left);--ion-safe-area-right: env(safe-area-inset-right)}}ion-card.ion-color .ion-inherit-color,ion-card-header.ion-color .ion-inherit-color{color:inherit}.menu-content{transform:translateZ(0)}.menu-content-open{cursor:pointer;touch-action:manipulation;pointer-events:none;overflow-y:hidden}.menu-content-open ion-content{--overflow: hidden}.menu-content-open .ion-content-scroll-host{overflow:hidden}.ios .menu-content-reveal{box-shadow:-8px 0 42px #00000014}[dir=rtl].ios .menu-content-reveal{box-shadow:8px 0 42px #00000014}.md .menu-content-reveal,.md .menu-content-push{box-shadow:4px 0 16px #0000002e}ion-accordion-group.accordion-group-expand-inset>ion-accordion:first-of-type{border-top-left-radius:8px;border-top-right-radius:8px}ion-accordion-group.accordion-group-expand-inset>ion-accordion:last-of-type{border-bottom-left-radius:8px;border-bottom-right-radius:8px}ion-accordion-group>ion-accordion:last-of-type ion-item[slot=header]{--border-width: 0px}ion-accordion.accordion-animated>[slot=header] .ion-accordion-toggle-icon{transition:.3s transform cubic-bezier(.25,.8,.5,1)}@media (prefers-reduced-motion: reduce){ion-accordion .ion-accordion-toggle-icon{transition:none!important}}ion-accordion.accordion-expanding>[slot=header] .ion-accordion-toggle-icon,ion-accordion.accordion-expanded>[slot=header] .ion-accordion-toggle-icon{transform:rotate(180deg)}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-previous ion-item[slot=header]{--border-width: 0px;--inner-border-width: 0px}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanding:first-of-type,ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanded:first-of-type{margin-top:0}ion-input input::-webkit-date-and-time-value{text-align:start}.ion-datetime-button-overlay{--width: fit-content;--height: fit-content}.ion-datetime-button-overlay ion-datetime.datetime-grid{width:320px;min-height:320px}.popover-viewport:has(>ion-content){overflow:hidden}@supports not selector(:has(> ion-content)){.popover-viewport{overflow:hidden}}audio,canvas,progress,video{vertical-align:baseline}audio:not([controls]){display:none;height:0}b,strong{font-weight:700}img{max-width:100%}hr{height:1px;border-width:0;box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}label,input,select,textarea{font-family:inherit;line-height:normal}textarea{overflow:auto;height:auto;font:inherit;color:inherit}textarea::placeholder{padding-left:2px}form,input,optgroup,select{margin:0;font:inherit;color:inherit}html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}a,a div,a span,a ion-icon,a ion-label,button,button div,button span,button ion-icon,button ion-label,.ion-tappable,[tappable],[tappable] div,[tappable] span,[tappable] ion-icon,[tappable] ion-label,input,textarea{touch-action:manipulation}a ion-label,button ion-label{pointer-events:none}button{padding:0;border:0;border-radius:0;font-family:inherit;font-style:inherit;font-variant:inherit;line-height:1;text-transform:none;cursor:pointer;-webkit-appearance:button}[tappable]{cursor:pointer}a[disabled],button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}html{width:100%;height:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}html:not(.hydrated) body{display:none}html.ion-ce body{display:block}html.plt-pwa{height:100vh}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;margin:0;padding:0;position:fixed;width:100%;max-width:100%;height:100%;max-height:100%;transform:translateZ(0);text-rendering:optimizeLegibility;overflow:hidden;touch-action:manipulation;-webkit-user-drag:none;-ms-content-zooming:none;word-wrap:break-word;overscroll-behavior-y:none;-webkit-text-size-adjust:none;text-size-adjust:none}html{font-family:var(--ion-font-family)}@supports (-webkit-touch-callout: none){html{font:var(--ion-dynamic-font, 16px var(--ion-font-family))}}a{background-color:transparent;color:var(--ion-color-primary, #3880ff)}h1,h2,h3,h4,h5,h6{margin-top:16px;margin-bottom:10px;font-weight:500;line-height:1.2}h1{margin-top:20px;font-size:1.625rem}h2{margin-top:18px;font-size:1.5rem}h3{font-size:1.375rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}small{font-size:75%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}.ion-no-padding{--padding-start: 0;--padding-end: 0;--padding-top: 0;--padding-bottom: 0;padding:0}.ion-padding{--padding-start: var(--ion-padding, 16px);--padding-end: var(--ion-padding, 16px);--padding-top: var(--ion-padding, 16px);--padding-bottom: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-top{--padding-top: var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px)}.ion-padding-start{--padding-start: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px)}.ion-padding-end{--padding-end: var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px)}.ion-padding-bottom{--padding-bottom: var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-vertical{--padding-top: var(--ion-padding, 16px);--padding-bottom: var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-horizontal{--padding-start: var(--ion-padding, 16px);--padding-end: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px)}.ion-no-margin{--margin-start: 0;--margin-end: 0;--margin-top: 0;--margin-bottom: 0;margin:0}.ion-margin{--margin-start: var(--ion-margin, 16px);--margin-end: var(--ion-margin, 16px);--margin-top: var(--ion-margin, 16px);--margin-bottom: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-top{--margin-top: var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px)}.ion-margin-start{--margin-start: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px)}.ion-margin-end{--margin-end: var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}.ion-margin-bottom{--margin-bottom: var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-vertical{--margin-top: var(--ion-margin, 16px);--margin-bottom: var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-horizontal{--margin-start: var(--ion-margin, 16px);--margin-end: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}.ion-float-left{float:left!important}.ion-float-right{float:right!important}.ion-float-start{float:left!important}:host-context([dir=rtl]) .ion-float-start{float:right!important}[dir=rtl] .ion-float-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-start:dir(rtl){float:right!important}}.ion-float-end{float:right!important}:host-context([dir=rtl]) .ion-float-end{float:left!important}[dir=rtl] .ion-float-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-end:dir(rtl){float:left!important}}@media (min-width: 576px){.ion-float-sm-left{float:left!important}.ion-float-sm-right{float:right!important}.ion-float-sm-start{float:left!important}:host-context([dir=rtl]) .ion-float-sm-start{float:right!important}[dir=rtl] .ion-float-sm-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-sm-start:dir(rtl){float:right!important}}.ion-float-sm-end{float:right!important}:host-context([dir=rtl]) .ion-float-sm-end{float:left!important}[dir=rtl] .ion-float-sm-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-sm-end:dir(rtl){float:left!important}}}@media (min-width: 768px){.ion-float-md-left{float:left!important}.ion-float-md-right{float:right!important}.ion-float-md-start{float:left!important}:host-context([dir=rtl]) .ion-float-md-start{float:right!important}[dir=rtl] .ion-float-md-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-md-start:dir(rtl){float:right!important}}.ion-float-md-end{float:right!important}:host-context([dir=rtl]) .ion-float-md-end{float:left!important}[dir=rtl] .ion-float-md-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-md-end:dir(rtl){float:left!important}}}@media (min-width: 992px){.ion-float-lg-left{float:left!important}.ion-float-lg-right{float:right!important}.ion-float-lg-start{float:left!important}:host-context([dir=rtl]) .ion-float-lg-start{float:right!important}[dir=rtl] .ion-float-lg-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-lg-start:dir(rtl){float:right!important}}.ion-float-lg-end{float:right!important}:host-context([dir=rtl]) .ion-float-lg-end{float:left!important}[dir=rtl] .ion-float-lg-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-lg-end:dir(rtl){float:left!important}}}@media (min-width: 1200px){.ion-float-xl-left{float:left!important}.ion-float-xl-right{float:right!important}.ion-float-xl-start{float:left!important}:host-context([dir=rtl]) .ion-float-xl-start{float:right!important}[dir=rtl] .ion-float-xl-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-xl-start:dir(rtl){float:right!important}}.ion-float-xl-end{float:right!important}:host-context([dir=rtl]) .ion-float-xl-end{float:left!important}[dir=rtl] .ion-float-xl-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-xl-end:dir(rtl){float:left!important}}}.ion-text-center{text-align:center!important}.ion-text-justify{text-align:justify!important}.ion-text-start{text-align:start!important}.ion-text-end{text-align:end!important}.ion-text-left{text-align:left!important}.ion-text-right{text-align:right!important}.ion-text-nowrap{white-space:nowrap!important}.ion-text-wrap{white-space:normal!important}@media (min-width: 576px){.ion-text-sm-center{text-align:center!important}.ion-text-sm-justify{text-align:justify!important}.ion-text-sm-start{text-align:start!important}.ion-text-sm-end{text-align:end!important}.ion-text-sm-left{text-align:left!important}.ion-text-sm-right{text-align:right!important}.ion-text-sm-nowrap{white-space:nowrap!important}.ion-text-sm-wrap{white-space:normal!important}}@media (min-width: 768px){.ion-text-md-center{text-align:center!important}.ion-text-md-justify{text-align:justify!important}.ion-text-md-start{text-align:start!important}.ion-text-md-end{text-align:end!important}.ion-text-md-left{text-align:left!important}.ion-text-md-right{text-align:right!important}.ion-text-md-nowrap{white-space:nowrap!important}.ion-text-md-wrap{white-space:normal!important}}@media (min-width: 992px){.ion-text-lg-center{text-align:center!important}.ion-text-lg-justify{text-align:justify!important}.ion-text-lg-start{text-align:start!important}.ion-text-lg-end{text-align:end!important}.ion-text-lg-left{text-align:left!important}.ion-text-lg-right{text-align:right!important}.ion-text-lg-nowrap{white-space:nowrap!important}.ion-text-lg-wrap{white-space:normal!important}}@media (min-width: 1200px){.ion-text-xl-center{text-align:center!important}.ion-text-xl-justify{text-align:justify!important}.ion-text-xl-start{text-align:start!important}.ion-text-xl-end{text-align:end!important}.ion-text-xl-left{text-align:left!important}.ion-text-xl-right{text-align:right!important}.ion-text-xl-nowrap{white-space:nowrap!important}.ion-text-xl-wrap{white-space:normal!important}}.ion-text-uppercase{text-transform:uppercase!important}.ion-text-lowercase{text-transform:lowercase!important}.ion-text-capitalize{text-transform:capitalize!important}@media (min-width: 576px){.ion-text-sm-uppercase{text-transform:uppercase!important}.ion-text-sm-lowercase{text-transform:lowercase!important}.ion-text-sm-capitalize{text-transform:capitalize!important}}@media (min-width: 768px){.ion-text-md-uppercase{text-transform:uppercase!important}.ion-text-md-lowercase{text-transform:lowercase!important}.ion-text-md-capitalize{text-transform:capitalize!important}}@media (min-width: 992px){.ion-text-lg-uppercase{text-transform:uppercase!important}.ion-text-lg-lowercase{text-transform:lowercase!important}.ion-text-lg-capitalize{text-transform:capitalize!important}}@media (min-width: 1200px){.ion-text-xl-uppercase{text-transform:uppercase!important}.ion-text-xl-lowercase{text-transform:lowercase!important}.ion-text-xl-capitalize{text-transform:capitalize!important}}.ion-align-self-start{align-self:flex-start!important}.ion-align-self-end{align-self:flex-end!important}.ion-align-self-center{align-self:center!important}.ion-align-self-stretch{align-self:stretch!important}.ion-align-self-baseline{align-self:baseline!important}.ion-align-self-auto{align-self:auto!important}.ion-wrap{flex-wrap:wrap!important}.ion-nowrap{flex-wrap:nowrap!important}.ion-wrap-reverse{flex-wrap:wrap-reverse!important}.ion-justify-content-start{justify-content:flex-start!important}.ion-justify-content-center{justify-content:center!important}.ion-justify-content-end{justify-content:flex-end!important}.ion-justify-content-around{justify-content:space-around!important}.ion-justify-content-between{justify-content:space-between!important}.ion-justify-content-evenly{justify-content:space-evenly!important}.ion-align-items-start{align-items:flex-start!important}.ion-align-items-center{align-items:center!important}.ion-align-items-end{align-items:flex-end!important}.ion-align-items-stretch{align-items:stretch!important}.ion-align-items-baseline{align-items:baseline!important}.ion-hide,.ion-hide-up,.ion-hide-down{display:none!important}@media (min-width: 576px){.ion-hide-sm-up{display:none!important}}@media (max-width: 575.98px){.ion-hide-sm-down{display:none!important}}@media (min-width: 768px){.ion-hide-md-up{display:none!important}}@media (max-width: 767.98px){.ion-hide-md-down{display:none!important}}@media (min-width: 992px){.ion-hide-lg-up{display:none!important}}@media (max-width: 991.98px){.ion-hide-lg-down{display:none!important}}@media (min-width: 1200px){.ion-hide-xl-up{display:none!important}}@media (max-width: 1199.98px){.ion-hide-xl-down{display:none!important}}:root{--ion-color-primary: #3880ff;--ion-color-primary-rgb: 56, 128, 255;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #3171e0;--ion-color-primary-tint: #4c8dff;--ion-color-secondary: #3dc2ff;--ion-color-secondary-rgb: 61, 194, 255;--ion-color-secondary-contrast: #ffffff;--ion-color-secondary-contrast-rgb: 255, 255, 255;--ion-color-secondary-shade: #36abe0;--ion-color-secondary-tint: #50c8ff;--ion-color-tertiary: #5260ff;--ion-color-tertiary-rgb: 82, 96, 255;--ion-color-tertiary-contrast: #ffffff;--ion-color-tertiary-contrast-rgb: 255, 255, 255;--ion-color-tertiary-shade: #4854e0;--ion-color-tertiary-tint: #6370ff;--ion-color-success: #2dd36f;--ion-color-success-rgb: 45, 211, 111;--ion-color-success-contrast: #ffffff;--ion-color-success-contrast-rgb: 255, 255, 255;--ion-color-success-shade: #28ba62;--ion-color-success-tint: #42d77d;--ion-color-warning: #ffc409;--ion-color-warning-rgb: 255, 196, 9;--ion-color-warning-contrast: #000000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0ac08;--ion-color-warning-tint: #ffca22;--ion-color-danger: #eb445a;--ion-color-danger-rgb: 235, 68, 90;--ion-color-danger-contrast: #ffffff;--ion-color-danger-contrast-rgb: 255, 255, 255;--ion-color-danger-shade: #cf3c4f;--ion-color-danger-tint: #ed576b;--ion-color-dark: #222428;--ion-color-dark-rgb: 34, 36, 40;--ion-color-dark-contrast: #ffffff;--ion-color-dark-contrast-rgb: 255, 255, 255;--ion-color-dark-shade: #1e2023;--ion-color-dark-tint: #383a3e;--ion-color-medium: #92949c;--ion-color-medium-rgb: 146, 148, 156;--ion-color-medium-contrast: #ffffff;--ion-color-medium-contrast-rgb: 255, 255, 255;--ion-color-medium-shade: #808289;--ion-color-medium-tint: #9d9fa6;--ion-color-light: #f4f5f8;--ion-color-light-rgb: 244, 245, 248;--ion-color-light-contrast: #000000;--ion-color-light-contrast-rgb: 0, 0, 0;--ion-color-light-shade: #d7d8da;--ion-color-light-tint: #f5f6f9}body{--ion-color-primary: #428cff;--ion-color-primary-rgb: 66,140,255;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255,255,255;--ion-color-primary-shade: #3a7be0;--ion-color-primary-tint: #5598ff;--ion-color-secondary: #50c8ff;--ion-color-secondary-rgb: 80,200,255;--ion-color-secondary-contrast: #ffffff;--ion-color-secondary-contrast-rgb: 255,255,255;--ion-color-secondary-shade: #46b0e0;--ion-color-secondary-tint: #62ceff;--ion-color-tertiary: #6a64ff;--ion-color-tertiary-rgb: 106,100,255;--ion-color-tertiary-contrast: #ffffff;--ion-color-tertiary-contrast-rgb: 255,255,255;--ion-color-tertiary-shade: #5d58e0;--ion-color-tertiary-tint: #7974ff;--ion-color-success: #2fdf75;--ion-color-success-rgb: 47,223,117;--ion-color-success-contrast: #000000;--ion-color-success-contrast-rgb: 0,0,0;--ion-color-success-shade: #29c467;--ion-color-success-tint: #44e283;--ion-color-warning: #ffd534;--ion-color-warning-rgb: 255,213,52;--ion-color-warning-contrast: #000000;--ion-color-warning-contrast-rgb: 0,0,0;--ion-color-warning-shade: #e0bb2e;--ion-color-warning-tint: #ffd948;--ion-color-danger: #ff4961;--ion-color-danger-rgb: 255,73,97;--ion-color-danger-contrast: #ffffff;--ion-color-danger-contrast-rgb: 255,255,255;--ion-color-danger-shade: #e04055;--ion-color-danger-tint: #ff5b71;--ion-color-dark: #f4f5f8;--ion-color-dark-rgb: 244,245,248;--ion-color-dark-contrast: #000000;--ion-color-dark-contrast-rgb: 0,0,0;--ion-color-dark-shade: #d7d8da;--ion-color-dark-tint: #f5f6f9;--ion-color-medium: #989aa2;--ion-color-medium-rgb: 152,154,162;--ion-color-medium-contrast: #000000;--ion-color-medium-contrast-rgb: 0,0,0;--ion-color-medium-shade: #86888f;--ion-color-medium-tint: #a2a4ab;--ion-color-light: #222428;--ion-color-light-rgb: 34,36,40;--ion-color-light-contrast: #ffffff;--ion-color-light-contrast-rgb: 255,255,255;--ion-color-light-shade: #1e2023;--ion-color-light-tint: #383a3e}.ios body{--ion-background-color: #000000;--ion-background-color-rgb: 0,0,0;--ion-text-color: #ffffff;--ion-text-color-rgb: 255,255,255;--ion-color-step-50: #0d0d0d;--ion-color-step-100: #1a1a1a;--ion-color-step-150: #262626;--ion-color-step-200: #333333;--ion-color-step-250: #404040;--ion-color-step-300: #4d4d4d;--ion-color-step-350: #595959;--ion-color-step-400: #666666;--ion-color-step-450: #737373;--ion-color-step-500: #808080;--ion-color-step-550: #8c8c8c;--ion-color-step-600: #999999;--ion-color-step-650: #a6a6a6;--ion-color-step-700: #b3b3b3;--ion-color-step-750: #bfbfbf;--ion-color-step-800: #cccccc;--ion-color-step-850: #d9d9d9;--ion-color-step-900: #e6e6e6;--ion-color-step-950: #f2f2f2;--ion-item-background: #000000;--ion-card-background: #1c1c1d}.ios ion-modal{--ion-background-color: var(--ion-color-step-100);--ion-toolbar-background: var(--ion-color-step-150);--ion-toolbar-border-color: var(--ion-color-step-250)}.md body{--ion-background-color: #121212;--ion-background-color-rgb: 18,18,18;--ion-text-color: #ffffff;--ion-text-color-rgb: 255,255,255;--ion-border-color: #222222;--ion-color-step-50: #1e1e1e;--ion-color-step-100: #2a2a2a;--ion-color-step-150: #363636;--ion-color-step-200: #414141;--ion-color-step-250: #4d4d4d;--ion-color-step-300: #595959;--ion-color-step-350: #656565;--ion-color-step-400: #717171;--ion-color-step-450: #7d7d7d;--ion-color-step-500: #898989;--ion-color-step-550: #949494;--ion-color-step-600: #a0a0a0;--ion-color-step-650: #acacac;--ion-color-step-700: #b8b8b8;--ion-color-step-750: #c4c4c4;--ion-color-step-800: #d0d0d0;--ion-color-step-850: #dbdbdb;--ion-color-step-900: #e7e7e7;--ion-color-step-950: #f3f3f3;--ion-item-background: #1e1e1e;--ion-toolbar-background: #1f1f1f;--ion-tab-bar-background: #1f1f1f;--ion-card-background: #1e1e1e}
