:root{--vape-color-mask-bg:#000;--vape-color-card-bg:#111;--vape-color-card-border:#222;--vape-color-card-text:#fff;--vape-color-card-muted:#b0b0b0;--vape-color-card-accent:#4a9eff;--vape-color-notice-bg:rgba(51,51,51,.8);--vape-color-legal-text:#707070;--vape-font-family-base:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans TC",sans-serif;--vape-line-height-base:1.6;--vape-line-height-subtitle:1.8;--vape-font-size-title:1.5rem;--vape-font-size-title-mobile:1.3rem;--vape-font-size-subtitle:1rem;--vape-font-size-subtitle-mobile:.95rem;--vape-font-size-notice:1.1rem;--vape-font-size-notice-mobile:1rem;--vape-font-size-legal:.8rem;--vape-font-weight-title:600;--vape-font-weight-notice:500;--vape-letter-spacing-title:1px;--vape-space-overlay-padding:1.5rem;--vape-space-overlay-padding-mobile:1rem;--vape-space-card-padding-y:2.5rem;--vape-space-card-padding-x:2rem;--vape-space-card-padding-y-mobile:2rem;--vape-space-card-padding-x-mobile:1.5rem;--vape-space-logo-margin-bottom:1.5rem;--vape-space-title-margin-bottom:1rem;--vape-space-subtitle-margin-bottom:2rem;--vape-space-notice-margin-bottom:2rem;--vape-space-legal-margin-top:2rem;--vape-space-notice-padding:1rem;--vape-space-notice-padding-mobile:.8rem;--vape-size-logo-width:120px;--vape-size-card-max-width:480px;--vape-border-width-card:1px;--vape-border-width-notice-left:3px;--vape-radius-card:6px;--vape-radius-card-mobile:4px;--vape-shadow-card:0 20px 40px rgba(0,0,0,.35)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{min-height:100%;width:100%}body{color:var(--vape-color-card-text);font-family:var(--vape-font-family-base);line-height:var(--vape-line-height-base);overflow:hidden}.jump-page,body{background:var(--vape-color-mask-bg)}.install-page,.jump-page{min-height:100vh}.install-page{background:radial-gradient(circle at 50% 0,rgba(74,158,255,.13),transparent 34rem),var(--vape-color-mask-bg);max-height:100vh;overflow-y:auto}.install-main,.jump-main{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:var(--vape-space-overlay-padding)}.jump-card{max-width:var(--vape-size-card-max-width)}.install-card,.jump-card{background:var(--vape-color-card-bg);border:var(--vape-border-width-card) solid var(--vape-color-card-border);border-radius:var(--vape-radius-card);box-shadow:var(--vape-shadow-card);padding:var(--vape-space-card-padding-y) var(--vape-space-card-padding-x);text-align:center;width:100%}.install-card{max-width:520px}.jump-logo{height:auto;margin-bottom:var(--vape-space-logo-margin-bottom);width:var(--vape-size-logo-width)}.install-eyebrow{color:var(--vape-color-card-accent);font-size:.75rem;font-weight:700;margin:-.5rem 0 .45rem}.page-title{font-size:var(--vape-font-size-title);font-weight:var(--vape-font-weight-title);letter-spacing:var(--vape-letter-spacing-title);margin-bottom:var(--vape-space-title-margin-bottom)}.page-subtitle{color:var(--vape-color-card-muted);font-size:var(--vape-font-size-subtitle);line-height:var(--vape-line-height-subtitle);margin-bottom:var(--vape-space-subtitle-margin-bottom)}.stage-panel{margin-bottom:var(--vape-space-notice-margin-bottom);overflow:hidden}.install-status-panel,.stage-panel{background:var(--vape-color-notice-bg);border-left:var(--vape-border-width-notice-left) solid var(--vape-color-card-accent);padding:var(--vape-space-notice-padding);text-align:left}.install-status-panel{margin-bottom:1rem}.install-status-panel,.stage-row{align-items:center;display:flex;gap:.75rem}.stage-row{min-height:48px}.stage-icon{color:var(--vape-color-card-accent)}.install-platform-icon,.stage-icon{animation:stage-icon-pulse .9s ease-in-out infinite;flex-shrink:0}.install-platform-icon{height:20px;-o-object-fit:contain;object-fit:contain;width:20px}.stage-row-init .stage-icon{animation-duration:.6s}.stage-icon-init{opacity:.85}.stage-index{color:var(--vape-color-card-muted);font-size:.72rem;letter-spacing:.08em}.stage-label{color:var(--vape-color-card-text);font-size:var(--vape-font-size-notice);font-weight:var(--vape-font-weight-notice);margin-top:.125rem}.stage-live-track{background:var(--vape-color-card-border);border-radius:999px;height:2px;margin-top:.6rem;overflow:hidden;width:100%}.stage-live-sweep{animation-iteration-count:1;animation-name:stage-sweep;animation-timing-function:linear;background:linear-gradient(90deg,#4a9eff00,#4a9efff2,#4a9eff00);border-radius:inherit;display:block;height:100%;width:44%}.progress-track{background:var(--vape-color-card-border);border-radius:999px;height:3px;margin-top:.7rem;overflow:hidden;width:100%}.progress-bar{background:var(--vape-color-card-accent);border-radius:inherit;display:block;height:100%;transition-property:width;transition-timing-function:linear;width:0}.progress-dots{display:flex;gap:.4rem;margin-top:.75rem}.progress-dot{background:var(--vape-color-card-border);border-radius:999px;height:8px;transition:background-color .18s ease;width:8px}.progress-dot.active{background:var(--vape-color-card-accent)}.progress-dot.done{background:var(--vape-color-card-muted)}.page-status{align-items:center;color:var(--vape-color-card-muted);display:inline-flex;font-size:.78rem;gap:.4rem}.page-status:before{background:var(--vape-color-card-accent);border-radius:999px;content:"";height:.5rem;width:.5rem}.page-legal{color:var(--vape-color-legal-text);font-size:var(--vape-font-size-legal);line-height:var(--vape-line-height-base);margin-top:var(--vape-space-legal-margin-top)}.favorite-overlay{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#000000ed;display:flex;inset:0;justify-content:center;padding:var(--vape-space-overlay-padding);position:fixed;z-index:40}.favorite-dialog{background:var(--vape-color-card-bg);border:var(--vape-border-width-card) solid var(--vape-color-card-border);border-radius:var(--vape-radius-card);box-shadow:var(--vape-shadow-card);max-width:var(--vape-size-card-max-width);padding:1.35rem 1.1rem 1.1rem;width:100%}.favorite-title{font-size:1.2rem;font-weight:var(--vape-font-weight-title);letter-spacing:var(--vape-letter-spacing-title);text-align:center}.favorite-subtitle{color:var(--vape-color-card-muted);font-size:.95rem;line-height:var(--vape-line-height-subtitle);margin-top:.6rem;text-align:center}.favorite-tip-list{background:var(--vape-color-notice-bg);border:1px solid rgba(148,163,184,.24);border-radius:10px;display:grid;gap:.5rem;margin-top:1rem;padding:.78rem}.install-tip-list{gap:.65rem;margin-top:0;text-align:left}.favorite-step{align-items:start;display:grid;gap:.58rem;grid-template-columns:1.45rem minmax(0,1fr);min-width:0}.favorite-step-index{align-items:center;background:#38bdf838;border:1px solid rgba(56,189,248,.44);border-radius:999px;color:#f8fafc;display:inline-flex;font-size:.75rem;font-weight:700;height:1.45rem;justify-content:center;line-height:1;width:1.45rem}.favorite-tip-item{align-items:center;color:var(--vape-color-card-text);display:flex;flex-wrap:wrap;font-size:.95rem;line-height:1.5;margin:0}.favorite-action-pill{align-items:center;background:#0f172a59;border:1px solid rgba(148,163,184,.28);border-radius:999px;box-sizing:border-box;color:#e2e8f0;display:inline-flex;font-size:.9em;font-weight:600;gap:.22rem;height:1.95rem;justify-content:center;line-height:1;margin:0 .15rem;padding:0 .48rem;vertical-align:middle;white-space:nowrap}.favorite-action-pill-shortcut{gap:.16rem;min-width:7.6ch;padding:0 .58rem}.favorite-action-pill-star{background:#facc1524;border-color:#facc1566}.favorite-action-pill-star .favorite-step-icon{color:#facc15}.favorite-step-icon{color:var(--vape-color-card-accent);flex:0 0 auto;height:.95rem;width:.95rem}.favorite-modifier-key{font-size:1em;font-weight:700;justify-content:center;min-width:.95rem}.favorite-modifier-key,.favorite-shortcut-key,.favorite-shortcut-plus{align-items:center;display:inline-flex;line-height:1}.favorite-shortcut-plus{color:#e2e8f0c7}.favorite-confirm{align-items:center;background:#fff;border:none;border-radius:4px;color:#212121;cursor:pointer;display:inline-flex;font-size:.96rem;font-weight:600;gap:.46rem;justify-content:center;line-height:1.35;margin-top:1rem;min-height:2.85rem;padding:.72rem 1rem;transition:transform .12s ease,background-color .18s ease;width:100%}.favorite-confirm-spinner{animation:favorite-confirm-spin .76s linear infinite;border:2px solid rgba(33,33,33,.22);border-radius:999px;border-top-color:#212121;flex:0 0 auto;height:1rem;width:1rem}.favorite-confirm:hover{background:#e5e7eb}.favorite-confirm:active{transform:scale(.985)}.favorite-confirm:disabled{cursor:not-allowed;opacity:.76}.install-actions{display:grid;gap:.65rem;margin-top:1rem}.install-actions .favorite-confirm{margin-top:0}.install-secondary{background:#0f172ab8;border:1px solid rgba(148,163,184,.3);color:#f8fafc}.install-secondary:hover{background:#1e293be0}.favorite-fade-enter-active,.favorite-fade-leave-active{transition:opacity .18s ease}.favorite-fade-enter-from,.favorite-fade-leave-to{opacity:0}.stage-swap-enter-active,.stage-swap-leave-active{transition:opacity .34s cubic-bezier(.22,1,.36,1),transform .34s cubic-bezier(.22,1,.36,1),filter .34s cubic-bezier(.22,1,.36,1)}.stage-swap-enter-from{filter:blur(4px);opacity:0;transform:translateY(10px) scale(.985)}.stage-swap-leave-to{filter:blur(4px);opacity:0;transform:translateY(-9px) scale(.992)}@keyframes stage-sweep{0%{transform:translate(-120%)}to{transform:translate(260%)}}@keyframes stage-icon-pulse{0%{opacity:.9;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}to{opacity:.9;transform:scale(1)}}@keyframes favorite-confirm-spin{to{transform:rotate(1turn)}}@media(prefers-reduced-motion:reduce){.install-platform-icon,.stage-icon,.stage-row-init .stage-icon{animation:none}.stage-live-sweep{animation:none;background:var(--vape-color-card-accent);width:100%}.progress-bar,.progress-dot,.stage-swap-enter-active,.stage-swap-leave-active{transition-duration:.12s}.favorite-confirm-spinner{animation:none}}@media(max-width:480px){.install-main,.jump-main{padding:var(--vape-space-overlay-padding-mobile)}.install-card,.jump-card{border-radius:var(--vape-radius-card-mobile);padding:var(--vape-space-card-padding-y-mobile) var(--vape-space-card-padding-x-mobile)}.page-title{font-size:var(--vape-font-size-title-mobile)}.page-subtitle{font-size:var(--vape-font-size-subtitle-mobile)}.install-status-panel,.stage-panel{padding:var(--vape-space-notice-padding-mobile)}.stage-label{font-size:var(--vape-font-size-notice-mobile)}.favorite-overlay{padding:var(--vape-space-overlay-padding-mobile)}.favorite-dialog{border-radius:var(--vape-radius-card-mobile);padding:1.15rem .9rem 1rem}.favorite-title{font-size:1.08rem}.favorite-subtitle,.favorite-tip-item{font-size:.9rem}.favorite-confirm{font-size:.9rem;padding:.68rem .9rem}}
