:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font:14px/1.5 system-ui,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{color:#e6e6ea;background:#0f0f13;margin:0}#root{min-height:100vh}button{font:inherit;cursor:pointer;color:#e6e6ea;background:#23232c;border:1px solid #3a3a46;border-radius:4px;padding:6px 12px}button:hover{background:#2d2d38}input[type=checkbox]{cursor:pointer}h1,h2,h3{margin:0}.app{flex-direction:column;gap:16px;max-width:960px;margin:0 auto;padding:16px 20px 96px;display:flex}.app-header{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.subtitle{color:#9a9aa5;font-size:13px}.beta-badge{color:#e0b93a;letter-spacing:.04em;text-transform:uppercase;border:1px solid #e0b93a;border-radius:4px;margin-left:auto;padding:2px 8px;font-size:11px;font-weight:700}.app-footer{text-align:center;color:#6b6b76;background:#0f0f13;padding:6px 20px;font-size:11px;line-height:1.4;position:fixed;bottom:0;left:0;right:0}.app-footer p{margin:0}.app-footer p+p{margin-top:2px}.app-footer a{color:#9a8cd8}.controls-panel{background:#17171d;border:1px solid #2a2a34;border-radius:8px;flex-direction:column;gap:10px;padding:12px;display:flex}.controls-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.controls-row label{color:#c7c7d1;align-items:center;gap:6px;font-size:13px;display:flex}.primary-btn{background:#4c3ea8;border-color:#6551d6}.primary-btn:hover{background:#5b4bc4}.primary-btn.rewind-armed{background:#a8763e;border-color:#d6a651}.primary-btn.rewind-armed:hover{background:#c48e4b}.primary-btn:disabled{color:#8a8a94;cursor:not-allowed;background:#3a3a44;border-color:#4a4a54}.hint-toggle{margin-left:auto}.gcd-mode-toggle{align-items:center;gap:4px;display:flex}.info-tooltip-icon{color:#9a9aa5;cursor:help;background:#2a2a34;border-radius:50%;justify-content:center;align-items:center;width:15px;height:15px;font-size:10px;font-weight:700;display:inline-flex}.info-tooltip-text{z-index:50;color:#e6e6ea;pointer-events:none;background:#0f0f13;border:1px solid #3a3a46;border-radius:4px;max-width:240px;padding:6px 9px;font-size:12px;line-height:1.4;position:fixed;box-shadow:0 2px 8px #0006}.mode-btn{font-size:12px}.mode-btn.active{color:#fff;background:#4c3ea8;border-color:#6551d6}.mode-btn.active:hover{background:#5b4bc4}.pull-timer-input{font-size:12px}.pull-timer-input input{width:44px;padding:3px 6px}.talents-row{border-top:1px solid #2a2a34;padding-top:8px}.talent-toggle{color:#9a9aa5;font-size:12px}.stats-row{border-top:1px solid #2a2a34;padding-top:8px}.stat-field{font-size:12px}.stat-field input{width:64px;padding:3px 6px}.stat-unit{color:#6b6b76;margin-left:-4px}.mode-bar{background:#17171d;border:1px solid #2a2a34;border-radius:8px;align-items:center;gap:14px;padding:10px 12px;display:flex}.mode-bar-buttons{gap:6px;display:flex}.mode-bar-btn{padding:6px 16px;font-size:13px;font-weight:600}.mode-bar-btn.active{color:#fff;background:#4c3ea8;border-color:#6551d6}.mode-bar-btn.active:hover{background:#5b4bc4}.username-field{color:#c7c7d1;align-items:center;gap:6px;margin-left:auto;font-size:13px;display:flex}.username-field input{width:160px;padding:4px 8px}.username-field.required input{border-color:#c45b5b}.compete-fixed-note{color:#9a9aa5;border-top:1px solid #2a2a34;margin:0;padding-top:8px;font-size:14px}.run-summary{text-align:center;background:#17171d;border:1px solid #2a2a34;border-radius:8px;padding:16px}.run-summary h2{margin:0 0 10px;font-size:20px}.run-summary-stats{color:#c7c7d1;flex-wrap:wrap;justify-content:center;gap:24px;margin-bottom:10px;font-size:14px;display:flex}.run-summary-verdict{color:#c7c7d1;margin:0;font-size:14px;font-weight:600}.run-summary-verdict.submitted{color:#6fd188}.run-summary .run-summary-verdict+button{margin-top:12px}.run-summary-hint{color:#6b6b76;margin:8px 0 0;font-size:12px}.leaderboard-panel{background:#17171d;border:1px solid #2a2a34;border-radius:8px;padding:12px}.leaderboard-panel h3{margin:0 0 10px;font-size:15px}.leaderboard-status{color:#9a9aa5;margin:0;font-size:13px}.leaderboard-table{border-collapse:collapse;width:100%;font-size:13px}.leaderboard-table th,.leaderboard-table td{text-align:left;border-bottom:1px solid #2a2a34;padding:5px 8px}.leaderboard-table tr.own-row td{font-weight:700}.leaderboard-table th{color:#9a9aa5;text-transform:uppercase;letter-spacing:.03em;font-size:11px;font-weight:600}.leaderboard-table td.percentile-100{color:#f5e6a3;font-weight:700}.leaderboard-table td.percentile-99{color:#e87fb8;font-weight:700}.leaderboard-table td.percentile-95{color:#e0954f;font-weight:700}.leaderboard-table td.percentile-75{color:#a87fe0;font-weight:700}.leaderboard-table td.percentile-50{color:#6fa8e0;font-weight:700}.leaderboard-table td.percentile-25{color:#7ec98f;font-weight:700}.leaderboard-table td.percentile-0{color:#8a8a94}.resource-bars{flex-direction:column;gap:8px;display:flex}.energy-bar{background:#1c1c24;border:1px solid #2a2a34;border-radius:4px;height:22px;margin:0 auto;position:relative;overflow:hidden}.energy-bar-fill{background:linear-gradient(90deg,#d4af37,#f0d878);transition:width .1s linear;position:absolute;inset:0}.energy-bar-label{z-index:1;text-align:center;color:#fff;mix-blend-mode:difference;font-size:12px;font-weight:600;line-height:22px;display:block;position:relative}.cast-bar{border-radius:4px;height:22px;position:relative;overflow:hidden}.cast-bar.casting{background:#1c1c24;border:1px solid #2a2a34}.cast-bar-fill{background:linear-gradient(90deg,#8f2d2d,#d9573f);transition:width .1s linear;position:absolute;inset:0}.cast-bar-label{z-index:1;text-align:center;color:#fff;font-size:12px;font-weight:600;line-height:22px;display:block;position:relative}.cp-pips{gap:6px;width:100%;display:flex}.cp-pip{background:#1c1c24;border:1px solid #2a2a34;border-radius:3px;width:28px;height:14px}.cp-pip.filled{background:#c0392b;border-color:#e74c3c}.cp-pip.filled.supercharged{background:#2e6fd6;border-color:#4d94ff;box-shadow:0 0 4px #4d94ffb3}.buffs-row{align-items:flex-start;gap:12px;display:flex;position:relative}.countdown-banner{z-index:2;white-space:nowrap;color:#e6e6ea;background:#17171d;border:1px solid #2a2a34;border-radius:4px;justify-content:center;align-items:center;padding:0 20px;font-size:28px;font-weight:700;display:flex;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.buff-tracker{flex-wrap:wrap;flex:auto;gap:8px;min-width:0;min-height:48px;display:flex}.apm-counter{background:#1c1c24;border:1px solid #2a2a34;border-radius:4px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:48px;display:flex}.apm-label{letter-spacing:.05em;color:#9a9aa5;font-size:9px;font-weight:700}.apm-value{color:#fff;font-size:15px;font-weight:700}.buff-tile{background:#1c1c24;border:1px solid #2a2a34;border-radius:4px;flex-shrink:0;width:48px;height:48px;position:relative;overflow:hidden}.buff-icon{object-fit:contain;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.buff-name-fallback{text-align:center;color:#9a9aa5;background:#2a2a34;justify-content:center;align-items:center;padding:2px;font-size:9px;display:flex;position:absolute;inset:0}.buff-countdown{z-index:1;color:#fff;text-shadow:-1px -1px #000,1px -1px #000,-1px 1px #000,1px 1px #000,0 0 3px #000;pointer-events:none;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex;position:absolute;inset:0}.ability-bar{flex-wrap:wrap;gap:14px;display:flex}.ability-button{background:#1c1c24;width:60px;height:60px;padding:0;transition:transform .12s;position:relative;overflow:hidden}.ability-icon-wrap{position:absolute;inset:0;overflow:hidden}.ability-icon{object-fit:contain;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.ability-name-fallback{text-align:center;background:#2a2a34;justify-content:center;align-items:center;padding:2px;font-size:10px;display:flex;position:absolute;inset:0}.ability-button.on-cooldown .ability-icon{filter:grayscale(.85)brightness(.55)}.ability-button.unaffordable{opacity:.55}.ability-button.hinted{z-index:1;transform:scale(1.32)}.ability-button.proc-glow{z-index:1;box-shadow:0 0 0 2px #ffd333,0 0 16px 6px #ffd333bf}.cooldown-overlay{position:absolute;inset:0}.gcd-overlay{z-index:1;position:absolute;inset:0}.ability-button.gcd-locked{cursor:default}.ability-countdown{z-index:2;color:#fff;text-shadow:-1px -1px #000,1px -1px #000,-1px 1px #000,1px 1px #000,0 0 3px #000;pointer-events:none;justify-content:center;align-items:center;font-size:15px;font-weight:700;display:flex;position:absolute;inset:0}.ability-key{z-index:2;color:#fff;text-shadow:-1px -1px #000,1px -1px #000,-1px 1px #000,1px 1px #000;pointer-events:none;font-size:11px;font-weight:700;position:absolute;top:1px;right:2px}.ability-stacks{z-index:2;color:#f0d878;text-shadow:-1px -1px #000,1px -1px #000,-1px 1px #000,1px 1px #000,0 0 3px #000;pointer-events:none;justify-content:center;align-items:center;font-size:22px;font-weight:700;display:flex;position:absolute;inset:0}.ability-name{z-index:1;text-align:center;padding:2px 2px 4px;font-size:10px;line-height:1.15;position:relative}.log-panel{background:#17171d;border:1px solid #2a2a34;border-radius:8px;flex-direction:column;gap:8px;padding:12px;display:flex}.log-hint{color:#6b6b76;margin:0;font-size:12px}.log-summary{color:#c7c7d1;flex-wrap:wrap;align-items:center;gap:16px;font-size:13px;display:flex}.log-summary .good{color:#7ee8ac}.log-summary .ok{color:#f0d878}.log-summary .bad{color:#e74c3c}.log-controls{align-items:center;gap:8px;margin-left:auto;display:flex}.log-order-btns{gap:6px;display:flex}.log-order-btn{font-size:12px}.log-order-btn.active{color:#fff;background:#4c3ea8;border-color:#6551d6}.log-entries{flex-direction:column;gap:4px;max-height:320px;display:flex;overflow-y:auto}.log-entry{border-radius:4px;flex-wrap:wrap;align-items:baseline;gap:10px;padding:4px 8px;font-size:12px;display:flex}.log-entry.correct{background:#2ecc7114}.log-entry.incorrect{background:#e74c3c1f}.log-entry.clickable{cursor:pointer}.log-entry.clickable:hover{outline-offset:-1px;outline:1px solid #4c3ea8}.log-entry.selected{outline-offset:-2px;outline:2px solid #6551d6}.log-time{color:#6b6b76;min-width:42px}.log-pressed{min-width:110px;font-weight:600}.log-correct-answer{color:#f0a0a0}.log-context{color:#6b6b76;margin-left:auto}.log-empty{color:#6b6b76;font-size:13px}.settings-overlay{z-index:10;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.settings-panel{background:#17171d;border:1px solid #2a2a34;border-radius:8px;flex-direction:column;gap:18px;width:520px;max-width:90vw;max-height:85vh;padding:20px;display:flex;overflow-y:auto}.settings-header{justify-content:space-between;align-items:center;display:flex}.settings-panel section h3{color:#9a9aa5;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:13px}.keybind-list{flex-direction:column;gap:6px;display:flex}.keybind-row{justify-content:space-between;align-items:center;font-size:13px;display:flex}.keybind-btn{min-width:90px}.keybind-btn.duplicate{color:#e74c3c;border-color:#e74c3c}.visibility-grid{grid-template-columns:repeat(2,1fr);gap:6px;display:grid}.visibility-toggle{color:#c7c7d1;align-items:center;gap:6px;font-size:12px;display:flex}.warning{color:#f0a0a0;margin-top:6px;font-size:12px}.log-io-textarea{resize:vertical;color:#c7c7d1;word-break:break-all;background:#0f0f13;border:1px solid #2a2a34;border-radius:4px;width:100%;min-height:140px;padding:8px;font-family:ui-monospace,SF Mono,Consolas,monospace;font-size:11px;line-height:1.4}.edit-mode-btn.active{color:#fff;background:#b23a3a;border-color:#e05a5a}.edit-mode-btn.active:hover{background:#c94747}.edit-mode-panel{background:#17171d;border:1px solid #2a2a34;border-radius:8px;flex-direction:column;gap:16px;padding:12px;display:flex}.edit-mode-hint{color:#9a9aa5;margin:0 0 12px;font-size:12px}.edit-group-title{color:#c7c7d1;text-transform:uppercase;letter-spacing:.5px;margin:0 0 4px;font-size:13px}.edit-group-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;display:flex}.edit-group-header .edit-group-title{margin:0}.edit-section-label{color:#6b6b76;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-size:11px}.edit-slider-row{color:#c7c7d1;align-items:center;gap:10px;margin-bottom:8px;font-size:13px;display:flex}.edit-slider-row:last-child{margin-bottom:0}.edit-slider-row input[type=range]{flex:1;max-width:320px}.edit-slider-value{color:#9a9aa5;font-variant-numeric:tabular-nums;min-width:36px}.edit-slider-hint{color:#6b6b76;font-size:12px}.edit-color-input{cursor:pointer;background:#1c1c24;border:1px solid #2a2a34;border-radius:4px;width:40px;height:26px;padding:2px}.edit-align-btns{gap:6px;display:flex}.edit-align-btn.active{color:#fff;background:#4c3ea8;border-color:#6551d6}.page-layout-list{flex-direction:column;gap:6px;display:flex;position:relative}.page-layout-item{color:#c7c7d1;cursor:grab;-webkit-user-select:none;user-select:none;background:#1c1c24;border:1px solid #2a2a34;border-radius:4px;align-items:center;gap:8px;padding:8px 10px;font-size:13px;transition:opacity .12s;display:flex}.page-layout-item.dragging{opacity:0}.page-layout-handle{color:#6b6b76}.edit-reset-btn{color:#f0a0a0;border-color:#5a2a2a;flex-shrink:0;font-size:12px}.edit-reset-btn:hover{background:#3a1c1c;border-color:#e74c3c}.edit-section{border:1px dashed #2a2a34;border-radius:6px;flex-wrap:wrap;gap:8px;min-height:74px;padding:8px;display:flex;position:relative}.edit-section-hidden{background:#0003}.edit-empty{color:#6b6b76;align-self:center;padding:4px;font-size:12px}.edit-tile{cursor:grab;-webkit-user-select:none;user-select:none;background:#1c1c24;border:1px solid #2a2a34;border-radius:4px;flex-direction:column;align-items:center;gap:3px;width:68px;padding:4px;transition:opacity .12s,border-color .12s;display:flex}.edit-tile.dragging{opacity:0}.edit-tile-icon{object-fit:contain;pointer-events:none;border-radius:3px;width:40px;height:40px}.edit-tile-fallback{text-align:center;color:#9a9aa5;background:#2a2a34;border-radius:3px;justify-content:center;align-items:center;width:40px;height:40px;padding:2px;font-size:9px;display:flex}.edit-tile-label{text-align:center;color:#c7c7d1;font-size:10px;line-height:1.15}
