@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;600;800&display=swap";:root{--skill-node-size: 56px;--tick-cell-width: calc(var(--skill-node-size) + 2px);--bg-primary: #0a0a0f;--bg-secondary: #13131a;--bg-tertiary: #1c1c24;--bg-panel: rgba(28, 28, 36, .6);--bg-floating: rgba(30, 30, 40, .85);--text-primary: #f0f0f5;--text-secondary: #a0a0b0;--text-muted: #606070;--accent-primary: #c9a20d;--accent-glow: rgba(201, 162, 13, .4);--element-heat: #ef4444;--element-cold: #3b82f6;--element-electricity: #eab308;--element-nature: #22c55e;--element-physical: #94a3b8;--gauge-skill: #38bdf8;--gauge-skill-return: #f59e0b;--gauge-stagger: #f8fafc;--ui-positive: #22c55e;--ui-negative: #ef4444;--ui-warning: #f59e0b;--ui-info: #3b82f6;--ui-neutral: #94a3b8;--burst-accent: #f59e0b;--border-light: rgba(255, 255, 255, .1);--border-focus: rgba(201, 162, 13, .4);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-med: .3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}body{font-family:Inter,system-ui,-apple-system,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.5;overflow-x:hidden;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:Outfit,sans-serif;color:var(--text-primary)}.glass-panel{background:var(--bg-panel);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-light);border-radius:var(--radius-lg)}.glass-floating{background:var(--bg-floating);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-light);box-shadow:0 8px 32px #0006;border-radius:var(--radius-lg)}::-webkit-scrollbar{width:8px;height:8px}@media(max-width:768px){:root{--skill-node-size: 34px}}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.generating-spinner{width:36px;height:36px;border:3px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.share-modal-btn{background:#ffffff1a;color:#fff;padding:.75rem 2rem;border-radius:8px;border:1px solid rgba(255,255,255,.25);cursor:pointer;font-weight:600;font-size:1.1rem;text-decoration:none;display:inline-flex;align-items:center;transition:background .15s}.share-modal-btn:hover{background:#fff3}.app-container{min-height:100vh;display:flex;flex-direction:column}.app-header{padding:12px 40px;background:var(--bg-secondary);border-bottom:1px solid var(--border-light);box-shadow:0 4px 20px #0003;display:flex;justify-content:space-between;align-items:center}.header-content{display:flex;align-items:center}.header-icon{cursor:pointer;transition:transform .2s ease;transform-origin:center}.header-icon.pressed{transform:scale(3)}.header-actions{display:flex;align-items:center}.language-select{padding:6px 0;border-radius:var(--radius-md);background:#0003;border:1px solid var(--border-light);color:var(--text-primary);font-family:inherit;font-size:1rem;cursor:pointer;outline:none;transition:all var(--transition-fast)}.language-select:hover{background:#ffffff0d;border-color:var(--accent-primary)}.language-select option{background:var(--bg-primary);color:var(--text-primary)}.app-header h1{font-size:1.5rem;background:linear-gradient(135deg,#fff,var(--text-secondary));background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin:0;line-height:1}.subtitle{color:var(--text-muted);font-size:.9rem}.timeline-section{flex:2;display:flex;flex-direction:column;gap:12px;min-width:0}.timeline-section .section-header{margin-bottom:0}.btn-toggle{padding:4px 12px;font-size:.8rem;font-weight:600;border-radius:6px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.btn-toggle:hover{color:var(--text-primary);background:#ffffff0d}.btn-toggle.active{background:var(--accent-primary);color:#fff;box-shadow:0 2px 8px var(--accent-glow)}.app-main{flex:1;padding:24px;display:flex;flex-direction:column;gap:24px;max-width:1800px;margin:0 auto;width:100%}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.actions{display:flex;align-items:center;gap:16px}.section-header h2{font-size:1.2rem;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.05em}button{border:none;font-family:inherit;font-size:.9rem;font-weight:600;padding:8px 16px;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-med)}.btn-primary{background:var(--accent-primary);color:#fff;box-shadow:0 4px 12px var(--accent-glow)}.btn-primary:hover{background:color-mix(in srgb,var(--accent-primary) 80%,white);transform:translateY(-2px);box-shadow:0 6px 16px var(--accent-glow)}.btn-secondary{background:#ffffff0d;color:var(--text-primary);border:1px solid var(--border-light)}.btn-secondary:hover{background:#ffffff1a}.placeholder-panel{padding:32px;display:flex;flex-direction:column;align-items:center;gap:24px;text-align:center}.stats-placeholder{display:flex;gap:24px}.stat-box{background:var(--bg-tertiary);padding:16px 24px;border-radius:var(--radius-md);border:1px solid var(--border-light);display:flex;flex-direction:column;align-items:center;gap:8px;transition:all .3s ease}.stat-label{font-size:.8rem;color:var(--text-muted);text-transform:uppercase}.stat-value{font-size:2rem;font-weight:800;font-family:Outfit,sans-serif;color:var(--accent-primary)}.stat-sub{font-size:.75rem;color:var(--text-muted);margin-top:-4px}.burst-rank-SSS{border-color:var(--burst-accent);box-shadow:0 0 20px #f59e0b66;animation:sss-pulse 2s infinite alternate}.burst-rank-SSS .rank-text{color:var(--burst-accent);text-shadow:0 0 10px var(--burst-accent)}.burst-rank-SS{border-color:#ef4444;box-shadow:0 0 15px #ef44444d}.burst-rank-SS .rank-text{color:#ef4444}.burst-rank-S{border-color:#8b5cf6;box-shadow:0 0 10px #8b5cf633}.burst-rank-S .rank-text{color:#8b5cf6}.burst-rank-A{border-color:#3b82f6}.burst-rank-A .rank-text{color:#3b82f6}@keyframes sss-pulse{0%{box-shadow:0 0 15px #f59e0b4d}to{box-shadow:0 0 30px #f59e0b99;transform:scale(1.02)}}.run-btn{padding:12px 32px;font-size:1.1rem}@media(max-width:768px){.app-main .section-header{flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}.app-header h1{font-size:1.1rem!important}.app-main .section-header h2{font-size:.75rem!important;margin:0!important}.actions{gap:8px!important;margin-left:auto!important}.btn-secondary{font-size:.75rem!important;padding:4px 8px!important}.app-header{padding:12px 16px}.app-main{padding:16px 8px;gap:20px}}.timeline-container{width:100%;padding:12px 16px;display:flex;flex-direction:column;gap:8px;overflow:hidden;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:0 4px 6px -1px #0000001a}.palette-panel{display:flex;flex-direction:column;background:#00000026;border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:inset 0 2px 4px #0000001a;overflow:hidden;align-self:stretch;margin-bottom:0}.operator-tabs{display:flex;align-items:center;gap:4px;padding:2px 12px 0;background:#0003;border-bottom:1px solid rgba(255,255,255,.05);overflow-x:auto;flex-wrap:nowrap;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.operator-tabs::-webkit-scrollbar{height:4px}.operator-tabs::-webkit-scrollbar-track{background:transparent}.operator-tabs::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}.operator-tabs:hover::-webkit-scrollbar-thumb{background:#fff3}.op-tab{display:flex;align-items:center;gap:6px;padding:3px 12px 6px;border-radius:8px 8px 0 0;border:1px solid transparent;border-top:2px solid transparent;border-bottom:none;background:transparent;color:var(--text-secondary);font-weight:500;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.op-tab:hover{background:#ffffff08;color:var(--text-primary)}.op-tab.active{background:#ffffff14;color:var(--text-primary);border-top:2px solid var(--accent-primary);box-shadow:0 -4px 12px -4px var(--accent-glow)}.op-icon{font-size:1.1rem}.op-name{font-size:.9rem}.op-tab-divider{width:1px;height:20px;margin:0 4px;background:#ffffff1f;align-self:center;flex-shrink:0}.squad-edit-tab-btn{margin-left:0;flex-shrink:0}.squad-edit-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#ffffff1a;border:1.5px dashed rgba(255,255,255,.3);font-size:1rem;transition:all var(--transition-fast)}.squad-edit-tab-btn:hover .squad-edit-icon{background:#ffffff2e;border-color:#ffffff80;color:#fffc;transform:scale(1.15);filter:brightness(1.3);transition:all var(--transition-fast)}.op-config-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:var(--text-secondary);font-size:1.3rem;cursor:pointer;transition:all var(--transition-fast);align-self:center;opacity:.8;flex-shrink:0;margin-left:4px;box-shadow:0 4px 12px #0003}.op-config-btn:hover{opacity:1;background:#ffffff1a;border-color:#fff3}.op-config-btn:hover .op-icon{display:inline-block;transform:rotate(30deg)}.op-config-btn.tray-adjacent{margin-left:4px}.skill-grid{display:flex;align-items:center;gap:12px;padding:9px 12px;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;max-width:100%;overflow:hidden}.skill-list.inset-tray{display:flex;align-items:center;gap:16px;padding:10px 14px;background:var(--bg-panel);border-radius:16px;box-shadow:inset 0 3px 8px #00000080,0 4px 12px #0000004d;border:1px solid rgba(255,255,255,.05);overflow-x:auto;flex-wrap:nowrap;flex:1;min-width:0;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.skill-list.inset-tray::-webkit-scrollbar{height:4px}.skill-list.inset-tray::-webkit-scrollbar-track{background:transparent}.skill-list.inset-tray::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}.skill-list.inset-tray:hover::-webkit-scrollbar-thumb{background:#fff3}.op-config-btn.tray-inline{width:var(--skill-node-size);height:var(--skill-node-size);background:#ffffff08;border:1.5px dashed rgba(255,255,255,.15);border-radius:12px;color:var(--text-muted);font-size:1.8rem;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;padding:0;display:flex;align-items:center;justify-content:center}.op-config-btn.tray-inline:hover{opacity:1;background:#ffffff1a;border-color:#fff3}.op-config-btn.tray-inline .op-icon{font-size:calc(var(--skill-node-size) * .45)}.op-config-btn.tray-inline:hover .op-icon{display:inline-block;transform:scale(1.15);filter:brightness(1.3)}.skill-list.inset-tray>*:not(:last-child):after{content:"";display:block;width:1px;height:36px;background:#ffffff1f;position:absolute;right:-10px;top:50%;transform:translateY(-50%);pointer-events:none}.skill-list.inset-tray>*{position:relative}.palette-skill-icon-wrapper{display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);flex-shrink:0}.palette-skill-icon-wrapper:hover{transform:translateY(-2px);filter:drop-shadow(0 4px 8px rgba(0,0,0,.4))}.palette-skill-icon-wrapper.selected{transform:translateY(-2px)}.palette-skill-icon-wrapper.selected .skill-node{box-shadow:0 0 0 2px var(--bg-panel),0 0 0 4px color-mix(in srgb,var(--node-color) 80%,white)!important}.palette-skill-icon-wrapper .skill-node,.palette-skill-icon-wrapper:hover .skill-node{transform:none!important}.palette-skill-icon-wrapper .skill-node.shape-diamond:hover:before{transform:rotate(45deg)!important}.timeline-grid-wrapper{position:relative;width:100%;overflow-x:auto;padding-bottom:16px;--skill-lane-count: 1;--skill-node-height: var(--skill-node-size);--skill-gap: calc(var(--skill-node-size) * .15);--cell-padding-top: 8px;--cell-padding-bottom: 8px;--placement-extra-space: calc(var(--skill-node-height) + var(--skill-gap));--track-min-height: calc((var(--skill-node-height) * var(--skill-lane-count)) + (var(--skill-gap) * (var(--skill-lane-count) - 1)) + var(--cell-padding-top) + var(--cell-padding-bottom))}.timeline-axis{display:flex;border-bottom:1px solid var(--border-light);margin-bottom:6px;min-width:max-content}.timeline-tick-label{width:var(--tick-cell-width);flex-shrink:0;font-size:.75rem;color:var(--text-muted);font-weight:500;padding-bottom:8px;text-align:center;position:relative;display:flex;justify-content:center;align-items:flex-end}.timeline-track{display:flex;min-height:var(--track-min-height);height:auto;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;align-items:stretch;position:relative;z-index:1;min-width:max-content;background:#ffffff05;border-radius:var(--radius-md);box-shadow:inset 0 2px 10px #0003}.timeline-cell{width:var(--tick-cell-width);min-height:var(--track-min-height);flex-shrink:0;border-right:1px dashed rgba(255,255,255,.08);position:relative;transition:padding-bottom .2s ease,background-color .2s ease;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:var(--skill-gap);padding:var(--cell-padding-top) 4px var(--cell-padding-bottom) 4px}.timeline-track.placement-active .timeline-cell,.timeline-track.has-multi-selection .timeline-cell{padding-bottom:calc(var(--cell-padding-bottom) + var(--placement-extra-space))}.timeline-track.has-multi-selection .skill-node:not(.selected-for-move){opacity:.4;transition:opacity .15s ease}.timeline-grid-wrapper:has(.timeline-track.selection-mode){cursor:crosshair}.timeline-track.selection-mode .timeline-cell{cursor:crosshair}.timeline-track.selection-mode .skill-node.selected-for-move{animation:selection-shake .4s ease-in-out infinite}@keyframes selection-shake{0%,to{transform:translateY(-4px) scale(1.15) rotate(0)}25%{transform:translateY(-4px) scale(1.15) rotate(-2deg)}75%{transform:translateY(-4px) scale(1.15) rotate(2deg)}}.timeline-cell:last-child{border-right:none}.timeline-cell.placement-mode{cursor:pointer}.timeline-cell.placement-mode:hover:after{content:"";position:absolute;inset:0;background-color:#ffffff0d;box-shadow:inset 0 0 0 2px var(--accent-glow);border-radius:4px;pointer-events:none;z-index:0}.timeline-cell.cell-available:before{content:"";position:absolute;inset:0;border-radius:4px;pointer-events:none;z-index:0;background:#22c55e14;box-shadow:inset 0 0 0 2px #22c55e66}.timeline-cell.cell-available:hover:before{background:#22c55e26;box-shadow:inset 0 0 0 2px #22c55e99}.timeline-tick-label.burst-active{background:linear-gradient(to top,rgba(245,158,11,.12),transparent);color:#fbbf24;font-weight:700}.timeline-tick-label.burst-active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:#f59e0b;box-shadow:0 0 10px #f59e0b99;z-index:10}.timeline-tick-label.burst-active-start:before{display:none}.timeline-tick-label.burst-active-start{border-left:1px solid rgba(245,158,11,.5)}.timeline-tick-label.burst-active-end{border-right:1px solid rgba(245,158,11,.5)}.timeline-cell.burst-active:hover{background:#f59e0b08}.timeline-track-area{position:relative}.simulation-pending-overlay{position:absolute;inset:0;background:#0a0a0f80;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;z-index:10}.simulation-spinner{width:24px;height:24px;border:2.5px solid rgba(255,255,255,.1);border-top-color:var(--accent-primary);border-radius:50%;animation:sim-spin .6s linear infinite}@keyframes sim-spin{to{transform:rotate(360deg)}}.scale-toolbar{display:flex;justify-content:space-between;align-items:center;padding:4px;background:#00000026;border-radius:12px;border:1px solid rgba(255,255,255,.04)}.scale-group{display:flex;align-items:center;gap:8px}.scale-segment{display:flex;background:#0000004d;padding:3px;border-radius:8px;border:1px solid rgba(255,255,255,.06)}.scale-btn{padding:4px 12px;font-size:.78rem;font-weight:600;border-radius:6px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.scale-btn:hover{color:var(--text-primary);background:#ffffff0d}.scale-btn.active{background:var(--accent-primary);color:#fff;box-shadow:0 2px 8px var(--accent-glow)}@media(max-width:768px){.scale-toolbar{padding:6px 10px}.scale-btn{font-size:.7rem;padding:4px 8px}.palette-panel{align-self:stretch;width:100%}.op-tab .op-name{display:none}.op-tab{padding:6px 8px}.operator-tabs{gap:0px}.skill-grid{padding:8px 12px}.skill-list.inset-tray{padding:10px;gap:12px}.skill-list.inset-tray>*:not(:last-child):after{right:-6px}.timeline-container{padding:16px 12px}}.timeline-cell.drag-target:after{content:"";position:absolute;inset:0;background-color:#ffffff1a;box-shadow:inset 0 0 0 2px var(--accent-primary, #818cf8);border-radius:4px;pointer-events:none;z-index:1}.drag-ghost{filter:drop-shadow(0 4px 16px rgba(0,0,0,.6));opacity:.9;transition:opacity .15s,filter .15s}.drag-ghost-outside{opacity:.5;filter:drop-shadow(0 4px 16px rgba(0,0,0,.6)) grayscale(.6)}.drag-ghost-delete{opacity:.4;filter:drop-shadow(0 4px 16px rgba(239,68,68,.5)) grayscale(.8)}.drag-action-overlay{position:absolute;inset:0;border-radius:inherit;display:flex;align-items:center;justify-content:center;font-weight:700;pointer-events:none;-webkit-backdrop-filter:blur(2px) brightness(.6);backdrop-filter:blur(2px) brightness(.6);animation:drag-overlay-pop .12s ease-out}.drag-action-overlay.delete{background:#ef444473;color:#fff;font-size:calc(var(--skill-node-size, 28px) * .5);text-shadow:0 1px 3px rgba(0,0,0,.6)}.drag-action-overlay.copy{background:#22c55e73;color:#fff;font-size:calc(var(--skill-node-size, 28px) * .85);font-weight:300;text-shadow:0 1px 3px rgba(0,0,0,.6)}@keyframes drag-overlay-pop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.skill-node.dragging-source{opacity:.3;transition:opacity .15s}.marquee-selection-rect{background:#6366f11f;border:1.5px solid var(--accent-primary);border-radius:3px;z-index:5;pointer-events:none}.timeline-effect-track{display:flex;height:24px;align-items:center;position:relative;min-width:max-content;margin-bottom:4px;z-index:3;-webkit-user-select:none;user-select:none}.timeline-effect-track:after{content:"";position:absolute;top:50%;left:0;right:0;height:1.5px;transform:translateY(-50%);background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.08) 2%,rgba(255,255,255,.08) 98%,transparent 100%)}.timeline-cell.effect-only-cell{min-height:auto;height:24px;padding:0;gap:0;justify-content:center;align-items:center;border-right:none}.effect-bubble-row{display:flex;align-items:center;justify-content:center;height:100%;position:relative}.effect-bubble-row .effect-bubble-mini+.effect-bubble-mini{margin-left:-8px}.effect-bubble-mini:nth-child(1){z-index:1}.effect-bubble-mini:nth-child(2){z-index:2}.effect-bubble-mini:nth-child(3){z-index:3}.effect-bubble-mini:nth-child(n+4){z-index:4}.effect-bubble-row:hover .effect-bubble-mini+.effect-bubble-mini{margin-left:2px}.effect-bubble-mini{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px #00000080,0 0 5px currentColor;cursor:pointer;position:relative;transition:transform var(--transition-fast),box-shadow var(--transition-fast),margin var(--transition-fast)}.effect-bubble-mini.bubble-mini-stackable{border:1.5px solid rgba(255,255,255,.85)}.effect-bubble-mini.bubble-mini-non-stackable{border:1.5px dashed}.effect-bubble-mini:hover,.effect-bubble-mini.bubble-mini-linked{transform:scale(1.3);box-shadow:0 2px 8px #0006,0 0 10px currentColor;z-index:10!important}.bubble-mini-content{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.bubble-mini-icon{font-size:10px;line-height:1;display:flex;align-items:center;justify-content:center}.bubble-mini-icon-img{width:100%;height:100%;object-fit:contain;border-radius:50%}.bubble-mini-stack-count{font-family:JetBrains Mono,monospace;font-weight:800;font-size:11px;color:#fff;text-shadow:-1px -1px 0 rgba(0,0,0,.8),1px -1px 0 rgba(0,0,0,.8),-1px 1px 0 rgba(0,0,0,.8),1px 1px 0 rgba(0,0,0,.8);line-height:1}.bubble-mini-level{position:absolute;bottom:-2px;right:-2px;font-family:JetBrains Mono,monospace;font-weight:800;font-size:7px;line-height:1;color:#fff;background:#000000b3;border-radius:2px;padding:0 1px}.bubble-link-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:2;overflow:visible;opacity:.7;filter:drop-shadow(0 0 3px rgba(255,255,255,.3))}.bubble-tooltip{max-width:260px;padding:12px;z-index:1000;display:flex;flex-direction:column;gap:8px;transition:opacity var(--transition-fast) ease}.bubble-tooltip .tooltip-row-compact{justify-content:flex-start;gap:6px}.skill-linked-source>.skill-node{box-shadow:0 0 12px currentColor,0 0 20px #ffffff26;filter:brightness(1.2)}.modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{width:90%;max-width:500px;max-height:90vh;background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:0 20px 40px #0006;display:flex;flex-direction:column;animation:modalSlideIn .3s cubic-bezier(.16,1,.3,1)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--border-light)}.modal-header h2{margin:0;font-size:1.25rem;font-weight:600}.squad-count{font-size:.875rem;color:var(--accent-primary);font-weight:700;background:#ffffff1a;padding:4px 12px;border-radius:12px}.modal-body{padding:24px;overflow-y:auto;flex:1 1 auto;min-height:0}.operator-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:16px}.squad-op-btn{position:relative;display:flex;flex-direction:column;align-items:center;gap:12px;padding:16px 8px;border-radius:var(--radius-md);background:var(--bg-tertiary);border:2px solid transparent;cursor:pointer;transition:all var(--transition-fast)}.squad-op-btn:hover:not(.disabled){background:#ffffff0d;transform:translateY(-2px)}.squad-op-btn.selected{border-color:var(--accent-primary);background:#ffffff0d;box-shadow:0 0 16px rgba(var(--accent-glow),.2)}.squad-op-btn.disabled{opacity:.5;cursor:not-allowed;filter:grayscale(1)}.squad-op-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;font-size:56px}.squad-op-name{font-size:.875rem;font-weight:500;color:var(--text-primary)}.squad-op-check{position:absolute;top:8px;right:8px;width:20px;height:20px;border-radius:50%;background:var(--accent-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;box-shadow:0 2px 4px #0003}.modal-footer{padding:16px 24px;border-top:1px solid var(--border-light);display:flex;justify-content:flex-end;gap:12px;background:#0000001a;border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg)}.btn-primary{background:var(--accent-primary);color:#fff;border:none;padding:10px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.btn-primary:hover:not(:disabled){filter:brightness(1.2);box-shadow:0 4px 12px var(--accent-glow)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:transparent;color:var(--text-secondary);border:1px solid var(--border-light);padding:10px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.btn-secondary:hover{background:#ffffff0d;color:var(--text-primary)}.modal-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:18px;padding:4px 8px;margin-left:auto}.modal-close:hover{color:var(--text-primary)}.op-config-body{display:flex;flex-direction:column;gap:24px}.op-config-header-icon{margin-right:8px;font-size:1.5rem;vertical-align:middle}.config-section h3{margin-top:0;margin-bottom:16px;font-size:1rem;color:var(--accent-primary);border-bottom:1px solid var(--border-light);padding-bottom:8px}.config-item{display:flex;flex-direction:column;gap:8px}.config-item label{font-size:.875rem;color:var(--text-secondary);font-weight:500}.input-container{display:flex;align-items:center}.input-container input[type=number]{width:100px;padding:8px 12px;background:#0003;border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text-primary);font-family:inherit;font-size:1rem;outline:none;transition:border-color var(--transition-fast)}.input-container input[type=number]:focus{border-color:var(--accent-primary)}.potentials-list{display:flex;flex-direction:column;gap:8px}.potential-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;background:#00000026;border:1px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.potential-item:hover{background:#ffffff0d;border-color:var(--accent-primary)}.potential-item input[type=checkbox]{margin-top:3px;accent-color:var(--accent-primary);flex-shrink:0;width:16px;height:16px}.potential-info{display:flex;flex-direction:column;gap:2px;min-width:0}.potential-name{font-size:.875rem;color:var(--text-primary);font-weight:600}.potential-tier{display:inline-block;font-size:.75rem;font-weight:700;color:var(--accent-primary);background:#c9a20d26;padding:1px 6px;border-radius:4px;margin-right:6px}.potential-desc{font-size:.75rem;color:var(--text-secondary);line-height:1.4}.avatar-container{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;vertical-align:middle;border-radius:50%;border:1px solid rgba(255,255,255,.8);box-shadow:0 0 4px #0000004d;background:#0003;transition:transform .2s,border-color .2s;box-sizing:border-box}.avatar-container:hover{border-color:#fff}.avatar-image{width:100%;height:100%;object-fit:cover;display:block;-webkit-touch-callout:none;pointer-events:none}.avatar-emoji{display:inline-flex;align-items:center;justify-content:center;line-height:1}.skill-node{position:relative;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--node-color) 45%,rgba(15,23,42,.7));-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:2px solid color-mix(in srgb,var(--node-color) 60%,rgba(255,255,255,.35));box-shadow:0 2px 4px #0000004d,inset 0 1px 1px #ffffff1a;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast)}.skill-node:hover,.skill-node:focus,.skill-node.selected-for-move{z-index:50;outline:none}.skill-node.shape-circle,.skill-node.shape-square,.skill-node.shape-diamond{width:var(--skill-node-size, 28px);height:var(--skill-node-size, 28px);flex-shrink:0}.skill-node.shape-circle{border-radius:50%}.skill-node.shape-square,.skill-node.shape-diamond{border-radius:var(--radius-sm)}.skill-node.shape-diamond:before{content:"";position:absolute;top:calc(var(--skill-node-size, 28px) * .12);left:calc(var(--skill-node-size, 28px) * .12);right:calc(var(--skill-node-size, 28px) * .12);bottom:calc(var(--skill-node-size, 28px) * .12);background:color-mix(in srgb,var(--node-color) 40%,rgba(255,255,255,.15));border:1px solid rgba(255,255,255,.6);border-radius:2px;transform:rotate(45deg);pointer-events:none;z-index:0}.skill-node.shape-diamond .skill-node-content{position:relative;z-index:1}.skill-node.shape-circle:hover,.skill-node.shape-square:hover,.skill-node.shape-diamond:hover{transform:translateY(-2px) scale(1.02)}.skill-node.shape-diamond:hover:before{transform:rotate(45deg) scale(1.1)}.skill-node:hover{background:color-mix(in srgb,var(--node-color) 60%,rgba(15,23,42,.8));border-color:color-mix(in srgb,var(--node-color) 90%,white);box-shadow:0 4px 12px #0006,0 0 12px color-mix(in srgb,var(--node-color) 60%,transparent);z-index:20}.skill-node.border-dashed{border-style:dashed!important}.skill-node-content{font-size:clamp(10px,calc(var(--skill-node-size, 28px) * .55),32px);line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.8));color:#fff;display:flex;align-items:center;justify-content:center;width:100%;height:100%;position:relative}.skill-node-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:1;transition:transform var(--transition-fast),clip-path var(--transition-fast);clip-path:circle(45% at 50% 50%);background:#00000026}.skill-node-icon:after{content:"";position:absolute;inset:0;pointer-events:none;border:1px solid rgba(255,255,255,.4);border-radius:50%;transform:scale(.9);box-sizing:border-box}.skill-node.shape-diamond .skill-node-icon:after,.skill-node.shape-dive-attack .skill-node-icon:after{border-radius:0;transform:rotate(45deg) scale(.64)}.skill-node.shape-diamond .skill-node-icon,.skill-node.shape-dive-attack .skill-node-icon{border-radius:0;clip-path:polygon(50% 5%,95% 50%,50% 95%,5% 50%)}.skill-node.shape-diamond:hover .skill-node-icon,.skill-node.shape-dive-attack:hover .skill-node-icon{transform:scale(1.1)}.skill-node-icon .avatar-container{width:100%!important;height:100%!important;border:none!important;background:transparent!important;box-shadow:none!important;border-radius:0!important}.skill-node-icon .avatar-emoji{font-size:1.4em!important}.effect-bubbles-container{position:absolute;left:calc(100% + calc(var(--tick-cell-width) - var(--skill-node-size)) / 2);top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;z-index:9999;pointer-events:none}.effect-bubble{width:calc(var(--skill-node-size, 28px) * .35);height:calc(var(--skill-node-size, 28px) * .35);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:calc(var(--skill-node-size, 28px) * .2);box-shadow:0 1.5px 3px #000000b3;margin-top:calc(var(--skill-node-size, 28px) * -.1);position:relative;z-index:101}.effect-bubble.bubble-stackable{border:1px solid rgba(255,255,255,.9)}.effect-bubble.bubble-non-stackable{border:1px dashed rgba(255,255,255,.9)}.bubble-content{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.bubble-icon{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;transition:opacity .2s;font-size:calc(var(--skill-node-size, 28px) * .22);line-height:1}.bubble-stack-count{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-family:JetBrains Mono,monospace;font-weight:800;font-size:calc(var(--skill-node-size, 28px) * .28);color:#fff;z-index:2;text-shadow:-1px -1px 0 rgba(0,0,0,.8),1px -1px 0 rgba(0,0,0,.8),-1px 1px 0 rgba(0,0,0,.8),1px 1px 0 rgba(0,0,0,.8),0px 2px 3px rgba(0,0,0,.9)}.effect-bubble:first-child{margin-top:0}.skill-node-tooltip{width:220px;padding:12px;z-index:1000;display:flex;flex-direction:column;gap:8px;transition:opacity .2s ease}.skill-node-tooltip .tooltip-arrow{position:absolute;width:12px;height:12px;background:var(--bg-floating);transform:rotate(45deg)}.skill-node-tooltip .tooltip-arrow-top{bottom:-6px;border-right:1px solid var(--border-light);border-bottom:1px solid var(--border-light)}.skill-node-tooltip .tooltip-arrow-bottom{top:-6px;border-left:1px solid var(--border-light);border-top:1px solid var(--border-light)}.tooltip-header{display:flex;align-items:center;gap:8px;font-family:Outfit,sans-serif;font-size:1.1rem;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:6px}.wiki-detail-btn{margin-left:auto;background:#ffffff14;border:1.5px solid rgba(255,255,255,.3);border-radius:50%;color:#ffffffb3;cursor:pointer;font-size:.7rem;font-style:italic;font-family:Georgia,serif;font-weight:700;width:18px;min-width:18px;height:18px;padding:0;display:flex;flex-shrink:0;align-items:center;justify-content:center;pointer-events:auto;line-height:1}.wiki-detail-btn:hover{color:var(--accent-primary);border-color:var(--accent-primary);background:#ffffff1f}.tooltip-icon{display:flex;align-items:center;justify-content:center;margin-top:-1px}.tooltip-icon .avatar-container{width:1.2em!important;height:1.2em!important;border-radius:50%!important;border:1px solid rgba(255,255,255,.8)!important;background:#0003!important;box-shadow:0 0 4px #0000004d!important;transform:none!important;clip-path:none!important}.tooltip-icon .avatar-emoji{font-size:1em!important}.tooltip-row{display:flex;justify-content:space-between;font-size:.8rem;margin-bottom:4px}.tooltip-label{color:var(--text-secondary)}.tooltip-value{font-weight:600}.invalid-reasons{margin-top:8px;color:#ff6b6b;font-size:.72rem;border-top:1px solid rgba(255,107,107,.3);padding-top:8px}.invalid-reasons-header{display:flex;align-items:center;gap:4px;margin-bottom:4px}.invalid-reasons-icon{font-size:.75rem;line-height:1}.invalid-reasons strong{font-weight:600;line-height:1}.invalid-reasons ul{margin:0;padding-left:18px}.invalid-reasons .sp-return-info-btn{flex-shrink:0;margin-left:auto}.tooltip-effects{display:flex;flex-direction:column;gap:4px;margin-top:6px}.effect-tag{font-size:.7rem;padding:2px 6px;background:#ffffff1a;border-radius:4px;color:var(--text-primary);text-align:center}.effect-tag.conditional{background:#3b82f626;border:1px solid rgba(59,130,246,.3);color:var(--ui-info)}.effect-tag.conditional.synergy-met{background:#22c55e26;border-color:#22c55e66;color:var(--ui-positive)}.effect-tag.conditional.synergy-unmet{background:#ef44441a;border:1px dashed rgba(239,68,68,.35);color:var(--ui-negative)}.effect-tag.conditional.inactive-option{opacity:.35;border:1px dashed rgba(255,255,255,.15);color:var(--text-secondary)}.effect-tag span.inactive-option{opacity:.4}.condition-badge{background:color-mix(in srgb,var(--ui-info) 15%,transparent);border:1px solid color-mix(in srgb,var(--ui-info) 35%,transparent);color:var(--ui-info);border-radius:4px;padding:0 5px;margin-right:4px;font-size:.8em;font-weight:600;letter-spacing:.02em}.condition-badge.negated{border-style:dashed}.negation-mark{font-weight:800;margin-right:1px}.config-badge{background:color-mix(in srgb,var(--accent-primary) 20%,transparent);border:1px solid color-mix(in srgb,var(--accent-primary) 40%,transparent);color:var(--accent-primary);border-radius:4px;padding:0 5px;margin-right:4px;font-size:.8em;font-weight:600;letter-spacing:.02em}.synergy-met .condition-badge{background:color-mix(in srgb,var(--ui-positive) 15%,transparent);border-color:color-mix(in srgb,var(--ui-positive) 35%,transparent);color:var(--ui-positive)}.synergy-unmet .condition-badge{background:color-mix(in srgb,var(--ui-negative) 15%,transparent);border-color:color-mix(in srgb,var(--ui-negative) 35%,transparent);color:var(--ui-negative)}.inactive-option .config-badge{background:color-mix(in srgb,var(--ui-neutral) 15%,transparent);border-color:color-mix(in srgb,var(--ui-neutral) 30%,transparent);color:var(--ui-neutral)}.branch-group{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:4px;padding:2px 4px;margin:2px 0}.branch-group.nested{margin-left:8px;border-left:2px solid rgba(255,255,255,.15)}.placement-synergy-badge{position:absolute;top:-4px;right:-4px;min-width:16px;height:16px;border-radius:8px;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 3px;z-index:2;pointer-events:none}.placement-synergy-badge.impossible{background:var(--ui-negative);color:#fff;font-size:12px}.placement-synergy-badge.all-met{background:var(--ui-positive);color:#fff;animation:synergy-pop-fade 1.5s ease-out forwards}.placement-synergy-badge.unmet{background:var(--ui-warning);color:#fff;animation:synergy-pop .3s ease-out forwards}@keyframes synergy-pop-fade{0%{opacity:1;transform:scale(1.8);filter:brightness(1.5)}15%{transform:scale(1);filter:brightness(1)}70%{opacity:1}to{opacity:0;transform:scale(.8)}}@keyframes synergy-pop{0%{transform:scale(1.8);filter:brightness(1.5)}to{transform:scale(1);filter:brightness(1)}}.drag-ghost .placement-synergy-badge.all-met,.drag-ghost .placement-synergy-badge.unmet{animation:synergy-pop .3s ease-out forwards;opacity:1}.placement-synergy-badge.loading{background:var(--ui-dim, #666)}.badge-spinner{display:block;width:8px;height:8px;border:1.5px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:badge-spin .6s linear infinite}@keyframes badge-spin{to{transform:rotate(360deg)}}.suggestion-ghost{opacity:.5;animation:suggestion-pulse 1.2s ease-in-out infinite;pointer-events:none}@keyframes suggestion-pulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}.effect-tag.variable{background:#eab30826;border:1px dashed rgba(234,179,8,.4);color:var(--ui-warning)}.skill-node.shape-circle.selected-for-move,.skill-node.shape-square.selected-for-move,.skill-node.shape-diamond.selected-for-move{border:2.5px solid var(--accent-primary);background:#c9a20d59;transform:translateY(-4px) scale(1.15);box-shadow:0 6px 16px #0006;filter:brightness(1.3)}.skill-node.has-synergy{animation:synergy-pulse 2.5s ease-in-out infinite}.skill-node.synergy-1{box-shadow:0 0 6px #eab30866,inset 0 1px 4px #fff3;animation:pulse-gold 2.5s ease-in-out infinite}.skill-node.synergy-2{border-width:1.5px;box-shadow:0 0 10px #f9731680,inset 0 1px 6px #ffffff4d;animation:pulse-orange 2.5s ease-in-out infinite}.skill-node.synergy-3{border-width:2px;box-shadow:0 0 14px #ef444499,inset 0 1px 8px #fff6;animation:pulse-red 2.5s ease-in-out infinite}.skill-node.synergy-4{border-width:2.5px;box-shadow:0 0 18px #d946efb3,inset 0 1px 10px #ffffff80;animation:pulse-plasma 2.5s ease-in-out infinite}.skill-node.synergy-5{border-width:3px;border-color:#fff!important;box-shadow:0 0 22px #fffc,inset 0 1px 12px #ffffffb3;animation:pulse-prismatic 2.5s ease-in-out infinite}@keyframes pulse-gold{0%,to{box-shadow:0 2px 4px #0000004d,inset 0 1px 1px #fff3,0 0 6px #eab30866}50%{box-shadow:0 2px 4px #0000004d,inset 0 1px 2px #fff6,0 0 12px #eab308b3,0 0 20px #eab3084d}}@keyframes pulse-orange{0%,to{box-shadow:0 2px 4px #0000004d,inset 0 1px 1px #fff3,0 0 8px #f9731666}50%{box-shadow:0 2px 4px #0000004d,inset 0 1px 2px #fff6,0 0 16px #f97316cc,0 0 24px #f9731666}}@keyframes pulse-red{0%,to{box-shadow:0 2px 4px #0000004d,inset 0 1px 1px #fff3,0 0 10px #ef444480}50%{box-shadow:0 2px 4px #0000004d,inset 0 1px 2px #ffffff80,0 0 20px #ef4444e6,0 0 30px #ef444466}}.tooltip-synergy{margin-top:8px;padding-top:8px;border-top:1px solid rgba(245,158,11,.3);display:flex;flex-direction:column;gap:4px}.synergy-title{font-size:.75rem;color:var(--ui-warning);font-weight:700;margin-bottom:2px;letter-spacing:.04em}.synergy-enhancements{display:flex;flex-direction:column;gap:4px;margin-bottom:4px;font-size:.72rem}.enhancement-tags{display:flex;flex-wrap:wrap;gap:4px}.enhancement-tag{font-size:.65rem;padding:2px 4px;background:#f59e0b26;border:1px solid rgba(245,158,11,.3);border-radius:4px;color:#fbbf24}.talent-tag{background:#38bdf826!important;border-color:#38bdf84d!important;color:#38bdf8!important}.talent-section{border-top:1px solid rgba(255,255,255,.05);margin-top:4px;padding-top:4px}.synergy-row{display:flex;align-items:center;gap:6px;font-size:.72rem;margin-bottom:2px}.synergy-action{color:#fbbf24;font-weight:600;min-width:50px}.synergy-effect{color:var(--text-primary);flex:1}.synergy-stacks{color:var(--text-secondary);font-size:.68rem;font-family:JetBrains Mono,monospace}.skill-node.placement-invalid{border-color:var(--ui-negative);opacity:.6;box-shadow:0 0 6px #ef44444d}@keyframes pulse-plasma{0%,to{box-shadow:0 2px 4px #0000004d,inset 0 1px 1px #ffffff4d,0 0 10px #d946ef99}50%{box-shadow:0 2px 4px #0000004d,inset 0 1px 3px #fff9,0 0 20px #d946ef,0 0 30px #a855f780}}@keyframes pulse-prismatic{0%{box-shadow:0 2px 4px #0000004d,inset 0 1px 2px #fff9,0 0 12px #ef4444,0 0 24px #f97316}33%{box-shadow:0 2px 4px #0000004d,inset 0 1px 2px #fff9,0 0 12px #eab308,0 0 24px #22c55e}66%{box-shadow:0 2px 4px #0000004d,inset 0 1px 2px #fff9,0 0 12px #0ea5e9,0 0 24px #8b5cf6}to{box-shadow:0 2px 4px #0000004d,inset 0 1px 2px #fff9,0 0 12px #ef4444,0 0 24px #f97316}}.skill-node.shape-dive-attack:before{content:"";position:absolute;top:calc(var(--skill-node-size, 28px) * .12);left:calc(var(--skill-node-size, 28px) * .12);right:calc(var(--skill-node-size, 28px) * .12);bottom:calc(var(--skill-node-size, 28px) * .12);background:color-mix(in srgb,var(--node-color) 40%,rgba(255,255,255,.15));border:1px solid rgba(255,255,255,.6);border-radius:2px;transform:rotate(45deg);pointer-events:none;z-index:0}.skill-node.shape-dive-attack .skill-node-content{position:relative;z-index:1}.skill-node.shape-dive-attack:hover:before{transform:rotate(45deg) scale(1.1)}.combo-trigger-row{margin-top:4px;padding-top:4px;border-top:1px solid rgba(255,255,255,.1)}.combo-trigger-label{color:var(--text-highlight, #ffd700)}.combo-trigger-list{display:flex;flex-direction:column;align-items:flex-end}.skill-detail-modal{max-width:600px;width:90%;max-height:80vh}.skill-detail-modal .modal-header{display:flex;align-items:center;gap:8px}.skill-detail-modal .modal-header h2{flex:1}.skill-detail-body{overflow-y:auto;max-height:60vh;padding:16px}.skill-detail-disclaimer{font-size:.75rem;color:var(--text-muted);font-style:italic;margin:0 0 12px;padding:8px;background:#ffffff08;border-radius:var(--radius-sm);border-left:2px solid var(--text-muted)}.skill-detail-section{margin-bottom:16px}.skill-detail-section h3{font-size:.85rem;color:var(--accent-primary);margin:0 0 8px;padding-bottom:4px;border-bottom:1px solid var(--border-light)}.skill-detail-text{font-size:.8rem;color:var(--text-secondary);line-height:1.6;white-space:pre-wrap;word-wrap:break-word;margin:0;font-family:inherit}.wiki-source-link{color:var(--accent-primary);text-decoration:none}.wiki-source-link:hover{text-decoration:underline}.skill-detail-empty{color:var(--text-muted);text-align:center;padding:20px}.floating-action-bar{position:absolute;bottom:8px;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;font-size:.8rem;white-space:nowrap;pointer-events:auto;animation:fab-slide-up .15s ease-out}@keyframes fab-slide-up{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.fab-selection-count{color:var(--text-secondary);font-weight:600;font-size:.75rem;padding:0 2px}.fab-divider{width:1px;height:16px;background:var(--border-color);opacity:.5}.fab-btn-icon{width:28px;height:28px;padding:0;border:1px solid var(--border-color);border-radius:6px;background:#ffffff0f;color:var(--text-primary);font-size:.9rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s ease,border-color .12s ease}.fab-btn-icon:hover{background:#ffffff1f;border-color:var(--accent-primary)}.fab-btn-icon.fab-btn-danger:hover{background:#ef444433;border-color:#ef444480}.fab-btn-icon.fab-btn-confirm{color:var(--ui-positive, #22c55e);border-color:var(--ui-positive, #22c55e);font-weight:700}.fab-btn-icon.fab-btn-confirm:hover{background:#22c55e33}.floating-action-bar.fab-selection-mode{border:1.5px solid var(--accent-primary)}.fab-toast{position:absolute;bottom:48px;left:50%;transform:translate(-50%);z-index:101;padding:6px 14px;border-radius:8px;font-size:.75rem;color:var(--text-secondary);white-space:nowrap;pointer-events:none;animation:fab-toast-fade 2s ease-out forwards}@keyframes fab-toast-fade{0%{opacity:1;transform:translate(-50%) translateY(0)}70%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(-8px)}}.effect-timeline-container{width:100%;padding:12px 16px;display:flex;flex-direction:column;gap:16px;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:0 4px 6px -1px #0000001a;overflow:hidden}.effect-timeline-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.effect-timeline-header h3{font-size:1.1rem;font-weight:500;color:var(--text-secondary);margin:0}.effect-type-filters{display:flex;gap:4px;flex-wrap:wrap}.effect-type-chip{padding:2px 8px;border-radius:var(--radius-sm);font-size:.7rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast) ease;border:1px solid var(--border-light);background:transparent;color:var(--text-secondary);line-height:1.4}.effect-type-chip.chip-active{background:#ffffff1a;border-color:var(--accent-primary);color:var(--text-primary)}.effect-type-chip.chip-hidden{opacity:.4}.effect-type-chip:hover{opacity:1;border-color:var(--accent-primary)}.effect-grid-wrapper{position:relative;width:100%;overflow-x:auto;padding-bottom:16px}.effect-track-container{position:relative;display:flex;flex-direction:column;gap:12px;padding:8px 0;min-height:100px;overflow:hidden}.effect-grid-bg{position:absolute;inset:0;pointer-events:none;z-index:0}.effect-grid-line{position:absolute;top:0;bottom:0;width:1px;border-right:1px dashed rgba(255,255,255,.05)}.simple-view{padding-top:10px}.unified-bars-layer{position:relative;width:100%;display:flex;flex-direction:column;gap:4px;z-index:2;padding:10px 0;min-height:60px}.unified-track-row{position:relative;height:32px;width:100%;margin-bottom:2px}.unified-bar{position:absolute;height:100%;border-radius:6px;display:flex;font-size:.85rem;font-weight:600;color:#fff;box-shadow:0 4px 6px #0000001a;transition:all .2s ease;overflow:hidden;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer}.unified-bar-segment{height:100%;display:flex;align-items:center;padding:0 10px;box-sizing:border-box;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;border-right:1px solid rgba(255,255,255,.4)}.unified-bar-segment:last-child{border-right:none}.unified-bar:hover{transform:translateY(-2px);box-shadow:0 6px 12px #0003;z-index:10}.bar-label{text-shadow:0 1px 2px rgba(0,0,0,.8);pointer-events:none}.unified-bar.stagger{background:linear-gradient(90deg,#ff6b6bcc,#ff8e8ecc);border:1px solid rgba(255,107,107,.5)}.unified-bar.stack-heat{background:linear-gradient(90deg,#ef444499,#f8717199);border:1px dashed rgba(239,68,68,.8)}.unified-bar.stack-cold{background:linear-gradient(90deg,#3b82f699,#60a5fa99);border:1px dashed rgba(59,130,246,.8)}.unified-bar.stack-electric{background:linear-gradient(90deg,#eab30899,#facc1599);border:1px dashed rgba(234,179,8,.8)}.unified-bar.stack-nature{background:linear-gradient(90deg,#22c55e99,#4ade8099);border:1px dashed rgba(34,197,94,.8)}.unified-bar.stack-physical{background:linear-gradient(90deg,#78716cb3,#a8a29eb3);border:1px dashed rgba(120,113,108,.9)}.unified-bar.status-dot,.unified-bar.status-debuff{background:linear-gradient(90deg,#dc2626b3,#ef4444b3);border:1px solid rgba(239,68,68,.9)}.unified-bar.status-cc{background:linear-gradient(90deg,#0ea5e9b3,#38bdf8b3);border:1px solid rgba(56,189,248,.9)}.unified-bar.status-buff{background:linear-gradient(90deg,#10b981b3,#34d399b3);border:1px solid rgba(52,211,153,.9)}.unified-bar.status-susceptibility{background:linear-gradient(90deg,#991b1bb3,#b91c1cb3);border:1px solid rgba(185,28,28,.9)}.unified-bar-segment.segment-selected{background:#ffffff26;outline:2px solid var(--accent-primary);outline-offset:-2px;z-index:10}.effect-bar-tooltip .tooltip-row-compact{justify-content:flex-start;gap:6px}.effect-bar-tooltip{max-width:260px;padding:12px;z-index:1000;display:flex;flex-direction:column;gap:8px;transition:opacity var(--transition-fast) ease}@media(max-width:768px){.effect-timeline-container{padding:16px 12px}.effect-timeline-header h3{font-size:.8rem}}.resource-timeline-container{width:100%;padding:12px 16px;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:0 4px 6px -1px #0000001a;transition:padding .2s ease}.resource-timeline-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;transition:margin-bottom .2s ease}.resource-timeline-container.collapsed .resource-timeline-header{margin-bottom:0}.resource-timeline-container.collapsed .resource-grid-wrapper{display:none}.resource-timeline-header h3{font-size:1rem;font-weight:600;margin:0;color:var(--text-secondary)}.resource-controls{display:flex;align-items:center}.chart-selector{background:#0003;border:1px solid var(--border-light);color:var(--text-primary);padding:4px 8px;border-radius:4px;font-size:.85rem;cursor:pointer;outline:none;transition:all .2s}.chart-selector:hover,.chart-selector:focus{border-color:var(--accent-primary);background:#0000004d}.resource-grid-wrapper{position:relative;width:100%;overflow-x:auto;padding-bottom:8px}.resource-track-container{position:relative;height:160px;background:#0003;border-radius:4px;overflow:hidden}.burst-legend-inline{position:absolute;bottom:2px;left:2px;z-index:5;display:flex;gap:8px;pointer-events:none;background:#0a0a0fd9;padding:2px 8px;border-radius:3px}.burst-legend-inline .burst-legend-item{font-size:.65rem;font-weight:500;color:var(--text-secondary)}.burst-legend-inline .burst-legend-dot{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:3px;vertical-align:middle}.resource-grid-bg{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.resource-grid-line{position:absolute;top:0;width:1px;height:100%;background-color:#ffffff0d}.resource-svg{position:relative;z-index:1;display:block}.resource-bars{transition:opacity .2s ease}.resource-bar{opacity:.85;transition:y .2s ease,height .2s ease;border-radius:2px 2px 0 0}.resource-bar:hover{opacity:1}.resource-bar.stagger{fill:#fffc;filter:drop-shadow(0 -1px 2px rgba(255,255,255,.4))}.resource-bar.stagger.is-staggered{fill:#eab308;filter:drop-shadow(0 -1px 4px rgba(234,179,8,.6))}.resource-bar.skill{fill:var(--gauge-skill);filter:drop-shadow(0 -1px 2px rgba(56,189,248,.4))}.resource-bar.skill-return{fill:var(--gauge-skill-return, #f59e0b);filter:drop-shadow(0 -1px 2px rgba(245,158,11,.4));transition:opacity .15s ease}.resource-bar.skill-return:hover{opacity:.8}.sp-return-tooltip{background:var(--bg-secondary, rgba(15, 23, 42, .95));border:1px solid var(--border-light);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 24px #0006}.sp-return-info-btn{width:18px;height:18px;border-radius:50%;border:1px solid var(--border-light);background:#ffffff1a;color:var(--text-secondary);font-size:.7rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;line-height:1;transition:background .15s ease}.sp-return-info-btn:hover{background:#fff3;color:#fff}.threshold-line{stroke:#fff3;stroke-width:1}.break-highlight{fill:#eab30826;stroke:#eab3084d;stroke-width:1}.threshold-label{fill:#ffffff59;font-size:.6rem;font-family:inherit;pointer-events:none}.sp-recovery-label-stroke{fill:none;stroke:#000000b3;stroke-width:2px;stroke-linejoin:round;font-size:.55rem;font-weight:600;font-family:inherit;pointer-events:none}.sp-recovery-label{fill:var(--ui-positive);font-size:.55rem;font-weight:600;font-family:inherit;pointer-events:none}.resource-bar.burst{filter:drop-shadow(0 -1px 2px rgba(0,0,0,.2));rx:1}.resource-bar.burst:hover{opacity:1}.burst-legend{display:flex;gap:10px;margin-left:12px;flex-wrap:wrap}.burst-legend-item{display:flex;align-items:center;gap:4px;font-size:.75rem;color:var(--text-secondary)}.burst-legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%}@media(max-width:768px){.resource-timeline-container{padding:16px 12px}.resource-timeline-container.collapsed{padding:8px 12px}.resource-timeline-header h3{font-size:.8rem}}.combo-timeline-container{width:100%;padding:24px;display:flex;flex-direction:column;gap:16px;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:0 4px 6px -1px #0000001a;overflow:hidden}.combo-timeline-header h3{font-size:1.1rem;font-weight:500;color:var(--text-secondary);margin:0}.combo-grid-wrapper{position:relative;width:100%;overflow-x:auto;padding-bottom:8px}.combo-track-container{position:relative;min-width:max-content;display:flex;flex-direction:column;height:160px}.combo-grid-bg{position:absolute;inset:0;display:flex;pointer-events:none;z-index:0}.combo-grid-line{position:absolute;top:0;bottom:0;width:1px;border-right:1px dashed rgba(255,255,255,.05)}.combo-operator-row{position:relative;z-index:1;flex:1;border-bottom:1px solid rgba(255,255,255,.06)}.combo-operator-row:last-child{border-bottom:none}.combo-operator-label{position:absolute;left:4px;top:1px;z-index:10;font-size:.7rem;font-weight:500;color:var(--text-secondary);white-space:nowrap;pointer-events:none;letter-spacing:.02em}.combo-bar-lane{position:relative;width:100%;height:100%}.combo-bar{position:absolute;top:2px;bottom:2px;border-radius:4px;transition:filter .15s ease}.combo-cooldown{z-index:1}.combo-ready{z-index:2}.combo-usable{z-index:3}.combo-bar:hover{filter:brightness(1.3)}.combo-empty{color:var(--text-muted);font-size:.85rem;padding:16px;text-align:center}@media(max-width:768px){.combo-timeline-container{padding:16px 12px}.combo-timeline-header h3{font-size:.8rem}}.cycle-card{width:850px;height:550px;background-color:var(--bg-tertiary);background-image:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-tertiary) 100%);border-radius:20px;padding:24px 32px;box-sizing:border-box;display:flex;flex-direction:column;position:relative;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;box-shadow:0 20px 40px #0009,inset 0 1px 1px #ffffff1a;color:var(--text-primary);border:1px solid rgba(255,255,255,.05)}.cycle-card-bg-pattern{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.03) 1px,transparent 1px);background-size:20px 20px;pointer-events:none;z-index:0}.cycle-card-header{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.08)}.cycle-card-title-group{display:flex;flex-direction:column;gap:2px}.cycle-card-title{font-size:22px;font-weight:800;letter-spacing:-.5px;color:var(--text-primary);text-transform:uppercase}.cycle-card-squad{display:flex;gap:24px}.cycle-card-squad-member{position:relative;display:flex;flex-direction:column;align-items:center;margin-left:0}.cycle-card-squad-member>:first-child{border-radius:50%;border:2px solid rgba(255,255,255,.1);background-color:var(--op-color);box-shadow:0 4px 10px #0006}.cycle-card-squad-member:first-child{margin-left:0}.cycle-card-squad-name{display:block;text-align:center;font-size:9px;color:#ffffffb3;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80px}.cycle-card-content{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:6px 32px;gap:0}.cycle-card-row-group{display:flex;flex-direction:column;width:100%}.cycle-card-skill-row{display:grid;width:100%}.cycle-card-cell{position:relative;display:flex;align-items:center;justify-content:center;background:#ffffff05;border:1px solid rgba(255,255,255,.03);border-radius:6px;min-width:0;min-height:0;aspect-ratio:1.1 / 1}.cycle-card-cell.empty{background:transparent;border-color:#ffffff03}.cycle-card-skill-label{font-size:8px;color:#fff9;text-align:center;margin-top:2px;white-space:nowrap}.cycle-card-node-wrapper{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none!important}.cycle-card .bubble-stack-count{text-shadow:0 0 2px rgba(0,0,0,.9)!important}.cycle-card-effect-horizon{display:grid;width:100%;position:relative;height:20px;margin:2px 0 4px}.cycle-card-effect-horizon:after{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#ffffff14;transform:translateY(-50%)}.cycle-card-horizon-cell{display:flex;align-items:center;justify-content:center;gap:2px;z-index:1;min-width:0}.cycle-card-effect-bubble{width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 1px 2px #00000080,0 0 4px var(--_bubble-glow, transparent)}.card-bubble-stackable{border:1px solid rgba(255,255,255,.85)}.card-bubble-non-stackable{border:1px dashed}.card-bubble-count{font-family:JetBrains Mono,monospace;font-weight:800;font-size:8px;color:#fff;text-shadow:-1px -1px 0 rgba(0,0,0,.8),1px -1px 0 rgba(0,0,0,.8),-1px 1px 0 rgba(0,0,0,.8),1px 1px 0 rgba(0,0,0,.8);line-height:1}.card-bubble-icon{font-size:7px;line-height:1}.card-bubble-icon-img{width:100%;height:100%;object-fit:contain;border-radius:50%}.cycle-card-footer{position:relative;z-index:1;margin-top:auto;display:flex;justify-content:space-between;align-items:flex-end;padding-top:16px;border-top:1px solid rgba(255,255,255,.05)}.cycle-card-stats{display:flex;align-items:center;gap:8px;background:#0003;padding:6px 12px;border-radius:6px;border:1px solid rgba(255,255,255,.05)}.stat-label{font-size:10px;color:var(--text-secondary);text-transform:uppercase;font-weight:600}.stat-value{font-size:13px;color:var(--text-primary);font-weight:700;font-variant-numeric:tabular-nums}.stat-divider{color:var(--text-muted);margin:0 2px}.watermark-logo{font-size:20px;font-weight:900;letter-spacing:-.5px;color:#ffffff40}.cycle-card *{animation:none!important;transition:none!important}.cycle-card [data-floating-ui-portal]{display:none!important}.cycle-card .skill-node.has-synergy{box-shadow:0 2px 4px #0000004d,inset 0 1px 1px #ffffff1a!important}.feedback-modal{max-width:480px;width:90%}.notification-dot{position:absolute;top:4px;right:4px;width:8px;height:8px;border-radius:50%;background:var(--ui-negative);pointer-events:none}.feedback-changelog{margin-bottom:12px;padding:8px 10px;background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-light)}.feedback-changelog-title{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.feedback-changelog-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.feedback-changelog-list li{font-size:12px;color:var(--text-secondary);display:flex;align-items:center;gap:6px}.changelog-tag{font-size:10px;font-weight:600;padding:1px 5px;border-radius:3px;text-transform:uppercase;flex-shrink:0}.changelog-tag--fix{background:color-mix(in srgb,var(--ui-negative) 15%,transparent);color:var(--ui-negative)}.changelog-tag--feat{background:color-mix(in srgb,var(--ui-positive) 15%,transparent);color:var(--ui-positive)}.changelog-tag--adjust{background:color-mix(in srgb,var(--ui-info) 15%,transparent);color:var(--ui-info)}.changelog-tag--planned{background:color-mix(in srgb,var(--text-muted) 15%,transparent);color:var(--text-muted)}.feedback-textarea{width:100%;min-height:120px;padding:12px;background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:var(--radius-md);color:var(--text-primary);font-family:inherit;font-size:14px;resize:vertical;box-sizing:border-box}.feedback-textarea:focus{outline:none;border-color:var(--border-focus)}.feedback-textarea::placeholder{color:var(--text-muted)}.feedback-textarea:disabled{opacity:.6}.feedback-footer{display:flex;align-items:center;gap:12px;margin-top:12px}.feedback-char-count{font-size:12px;color:var(--text-muted)}.feedback-error{font-size:12px;color:var(--ui-negative);flex:1}.feedback-footer .btn-primary{margin-left:auto}.feedback-success{display:flex;flex-direction:column;align-items:center;gap:16px;padding:20px 0}.feedback-success p{color:var(--text-secondary);font-size:14px}.ef-modal{max-width:560px;width:90%}.ef-image-zone{display:flex;align-items:center;justify-content:center;min-height:80px;border:2px dashed var(--border-light);border-radius:var(--radius-md);color:var(--text-muted);font-size:13px;cursor:pointer;transition:border-color .15s,color .15s;margin-bottom:8px}.ef-image-zone:hover{border-color:var(--text-muted);color:var(--text-primary)}.ef-image-loading{display:flex;align-items:center;justify-content:center;min-height:200px;border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-tertiary);margin-bottom:8px}.ef-image-preview-wrap{position:relative;margin-bottom:8px;min-height:200px}.ef-image-preview{display:block;width:100%;max-height:360px;object-fit:contain;border-radius:var(--radius-md);border:1px solid var(--border-light);background:var(--bg-tertiary)}.ef-image-analyzing{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#0009;border-radius:var(--radius-md);color:#fff;font-size:14px;font-weight:600}.ef-image-text{width:100%;padding:8px 12px;background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:var(--radius-md);color:var(--text-primary);font-size:13px;box-sizing:border-box;margin-bottom:4px}.ef-image-text:focus{outline:none;border-color:var(--border-focus)}.ef-image-text::placeholder{color:var(--text-muted)}.ef-image-clear{position:absolute;top:6px;right:6px;width:24px;height:24px;border-radius:50%;border:none;background:#0009;color:#fff;cursor:pointer;font-size:12px;display:flex;align-items:center;justify-content:center;transition:background .15s}.ef-image-clear:hover{background:#000c}.ef-recent-btn{background:none;border:1px solid var(--border-light);color:var(--text-muted);cursor:pointer;font-size:13px;padding:4px 12px;border-radius:var(--radius-sm);transition:color .15s,background .15s,border-color .15s}.ef-recent-btn:hover{color:var(--text-primary);border-color:var(--text-muted)}.ef-recent-btn.active{color:var(--text-primary);background:var(--bg-tertiary);border-color:var(--border-focus)}.ef-recent-list{border:1px solid var(--border-light);border-radius:var(--radius-md);margin-top:8px;max-height:180px;overflow-y:auto}.ef-recent-notice{padding:8px 12px;font-size:11px;color:var(--text-muted);border-bottom:1px solid var(--border-light)}.ef-recent-empty{padding:16px;text-align:center;color:var(--text-muted);font-size:13px}.ef-recent-item{display:flex;align-items:center;border-bottom:1px solid var(--border-light)}.ef-recent-item.pinned{background:#ffffff08}.ef-recent-item.pinned .ef-recent-pin{color:#ef4444}.ef-recent-item:last-child{border-bottom:none}.ef-recent-pin{display:flex;align-items:center;justify-content:center;width:32px;flex-shrink:0;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:8px 0;transition:color .15s}.ef-recent-pin:hover{color:var(--text-primary)}.ef-recent-content{display:flex;justify-content:space-between;align-items:center;flex:1;min-width:0;padding:8px 12px 8px 0;background:none;border:none;color:var(--text-primary);cursor:pointer;font-size:13px;text-align:left;transition:background .1s}.ef-recent-item:hover .ef-recent-content{background:var(--bg-tertiary)}.ef-recent-squad{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ef-recent-time{color:var(--text-muted);font-size:12px;margin-left:12px;flex-shrink:0}.ef-textarea{width:100%;min-height:200px;padding:12px;background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:var(--radius-md);color:var(--text-primary);font-family:monospace;font-size:13px;resize:vertical;box-sizing:border-box;line-height:1.5}.ef-textarea:focus{outline:none;border-color:var(--border-focus)}.ef-textarea::placeholder{color:var(--text-muted);font-family:inherit}.ef-textarea[readonly]{cursor:default}.ef-char-count{text-align:right;font-size:11px;color:var(--text-muted);margin-top:2px}.ef-char-count.over-limit{color:#ef4444;font-weight:600}.ef-error{font-size:12px;color:var(--ui-negative);margin-top:8px;white-space:pre-line}.ef-footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px}
