:root{letter-spacing:.18px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:system-ui,Segoe UI,Roboto,sans-serif;font-size:18px;line-height:1.45}@media (width<=1024px){:root{font-size:16px}}body{margin:0}#root{text-align:center;flex-direction:column;min-height:100svh;display:flex}:root{--bg-color:#0f1016;--text-primary:#f3f4f6;--text-secondary:#9ca3af;--text-muted:#6b7280;--glass-bg:#ffffff0a;--glass-border:#ffffff14;--glass-hover:#ffffff12;--accent-color:#6366f1;--surface-card:#ffffff0a;--surface-panel:#00000026;--surface-input:#0003;--surface-solid:#171821;--accent-tint:#6366f11f;--accent-fill:#6366f133;--accent-fill-hover:#6366f159;--accent-line:#6366f166;--accent-text:#a5b4fc;--danger:#f87171;--danger-strong:#ef4444;--positive:#4ade80;--radius-lg:16px;--radius-md:12px;--radius-sm:8px}*{box-sizing:border-box;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}body{background-color:var(--bg-color);color:var(--text-primary);min-height:100vh}.app-container{flex-direction:column;flex:1;align-items:center;min-height:100vh;padding:1.5rem 1rem;display:flex;position:relative;overflow-x:hidden}.background-glow{z-index:-1;pointer-events:none;background:radial-gradient(circle,#6366f126 0%,#0f101600 70%);width:600px;height:400px;position:fixed;top:-10%;left:50%;transform:translate(-50%)}.header{text-align:center;width:100%;max-width:600px;margin-bottom:1.5rem}.header h1{margin-bottom:.25rem;font-size:2rem;font-weight:700}.header p{color:var(--text-secondary);margin-bottom:.75rem;font-size:.95rem}.search-container input{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);width:100%;color:var(--text-primary);-webkit-backdrop-filter:blur(12px);outline:none;padding:.75rem 1rem;font-size:.95rem;transition:all .3s}.search-container input:focus{border-color:var(--accent-color);box-shadow:0 0 15px #6366f133}.search-container input::placeholder{color:var(--text-secondary)}.main-content{width:100%;max-width:700px}.main-content.wide{flex-direction:column;flex:1;max-width:1180px;min-height:0;display:flex}.tool-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;display:grid}.glass-card{background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(12px);border-radius:var(--radius-lg);flex-direction:column;justify-content:space-between;padding:1.25rem;transition:transform .3s,background .3s,border-color .3s;display:flex}.tool-grid .glass-card:hover{background:var(--glass-hover);border-color:#ffffff26;transform:translateY(-4px)}.badge{background:var(--accent-tint);color:var(--accent-text);border-radius:6px;margin-bottom:.5rem;padding:.2rem .4rem;font-size:.7rem;display:inline-block}.glass-card h3{margin-bottom:.35rem;font-size:1.15rem}.glass-card p{color:var(--text-secondary);margin-bottom:1.2rem;font-size:.85rem;line-height:1.4}.tool-btn,.sim-btn,.new-btn{background:var(--accent-fill);border:1px solid var(--accent-line);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;justify-content:center;align-items:center;gap:.35rem;padding:.5rem .9rem;font-size:.9rem;font-weight:500;line-height:1.2;transition:background .2s,border-color .2s,color .2s;display:inline-flex}.tool-btn:hover,.sim-btn:hover,.new-btn:hover{background:var(--accent-fill-hover)}.new-btn,.sim-btn.sm{border-radius:6px;padding:.28rem .6rem;font-size:.75rem}.sim-btn.cancel{background:var(--glass-bg);border-color:var(--glass-border);color:var(--text-secondary)}.sim-btn.cancel:hover{background:var(--glass-hover);color:var(--text-primary)}.icon-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;font-size:.85rem;transition:color .2s,background .2s;display:inline-flex}.icon-btn:hover{background:var(--glass-bg);color:var(--text-primary)}.icon-btn.danger{color:var(--danger)}.icon-btn.danger:hover{color:var(--danger-strong);background:#ef44441f}.tool-execution-view{justify-content:flex-start;width:100%;max-width:820px;padding:1.5rem}.tool-execution-view.wide{flex:1;max-width:100%;min-height:0}.back-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;margin-bottom:.5rem;font-size:.85rem;transition:color .2s}.back-btn:hover{color:var(--text-primary)}.tool-execution-view h2{margin-bottom:.2rem;font-size:1.4rem}.tool-desc{color:var(--text-secondary);font-size:.85rem;margin-bottom:1rem!important}.tool-body{flex-direction:column;align-items:center;gap:.75rem;width:100%;display:flex}.input-group{flex-direction:column;gap:.25rem;width:100%;max-width:400px;display:flex}.input-group label{color:var(--text-secondary);text-align:left;padding-left:2px;font-size:.85rem}.input-group input{background:var(--surface-input);border:1px solid var(--glass-border);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);outline:none;padding:.6rem .9rem;font-size:.95rem;transition:all .3s}.input-group input:focus{border-color:var(--accent-color);background:var(--accent-tint);box-shadow:0 0 10px #6366f133}.input-row{justify-content:space-between;align-items:center;gap:1rem;width:100%;max-width:450px;display:flex}.input-row label{color:var(--text-secondary);white-space:nowrap;text-align:left;flex-shrink:0;width:80px;font-size:.9rem}.input-row input{background:var(--surface-input);border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--text-primary);outline:none;flex-grow:1;padding:.6rem .9rem;font-size:.95rem;transition:all .3s}.input-row input:focus{border-color:var(--accent-color);background:var(--accent-tint);box-shadow:0 0 10px #6366f133}.result-box{background:var(--accent-tint);border:1px solid var(--accent-line);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:1rem;width:100%;max-width:450px;margin-top:.5rem;padding:.8rem 1rem;display:flex}.result-raw{color:var(--text-secondary);margin-top:4px;font-size:.8rem}.action-row{gap:.5rem;width:100%;max-width:450px;margin-top:.25rem;display:flex}.action-row .tool-btn{flex:1;padding:.6rem}.no-result{text-align:center;color:var(--text-secondary);grid-column:1/-1;padding:3rem 0}.calculator-layout{align-items:flex-start;gap:1.5rem;width:100%;display:flex}.saved-sidebar{background:var(--surface-panel);border:1px solid var(--glass-border);border-radius:var(--radius-md);flex-direction:column;flex-shrink:0;gap:.75rem;width:260px;padding:1rem;display:flex}.sidebar-header{color:var(--text-primary);justify-content:space-between;align-items:center;font-size:.9rem;font-weight:600;display:flex}.saved-list{flex-direction:column;gap:.5rem;max-height:320px;display:flex;overflow-y:auto}.empty-saves{text-align:center;color:var(--text-secondary);padding:2rem 0;font-size:.85rem}.saved-item{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);cursor:pointer;justify-content:space-between;align-items:center;padding:.6rem .75rem;transition:all .2s;display:flex}.saved-item:hover{background:var(--glass-hover)}.saved-item.active{border-color:var(--accent-color);background:var(--accent-tint)}.item-info{flex-direction:column;gap:.15rem;display:flex;overflow:hidden}.item-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:160px;font-size:.85rem;font-weight:500;overflow:hidden}.item-res{color:var(--text-secondary);font-size:.75rem}.delete-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:0 .2rem;font-size:1.1rem;line-height:1}.delete-btn:hover{color:var(--danger-strong)}.calculator-main{flex-direction:column;flex-grow:1;align-items:center;display:flex}@media (width<=768px){.calculator-layout{flex-direction:column;align-items:center}.saved-sidebar{width:100%;max-width:450px}}.def-calc-container{width:100%;min-height:0;color:var(--text-primary);box-sizing:border-box;flex-direction:column;flex:1;gap:1.25rem;display:flex}.def-grid-layout{flex:1;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr) minmax(0,1.05fr);grid-template-areas:"party result compare";align-items:stretch;gap:1rem;min-height:0;display:grid}.def-panel.party{grid-area:party}.def-panel.result{grid-area:result}.def-panel.compare{grid-area:compare}.def-panel{background:var(--surface-panel);border:1px solid var(--glass-border);border-radius:var(--radius-md);box-sizing:border-box;flex-direction:column;gap:.75rem;min-width:0;padding:1rem;display:flex}.panel-header-row{border-bottom:1px solid var(--glass-border);justify-content:space-between;align-items:center;gap:.5rem;padding-bottom:.6rem;display:flex}.panel-header-row h3{color:var(--text-primary);margin:0;font-size:.9rem;font-weight:600}.panel-count{color:var(--text-secondary);flex:1;font-size:.75rem}.field-label{color:var(--text-secondary);font-size:.8rem;display:block}.party-list-container{box-sizing:border-box;flex-direction:column;flex:1;gap:.5rem;width:100%;min-height:0;display:flex;overflow-y:auto}.empty-notice{text-align:center;color:var(--text-secondary);padding:2rem 0;font-size:.85rem}.party-set-card-compact{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);align-items:center;gap:8px;padding:.6rem .75rem;transition:background .2s,border-color .2s;display:flex}.party-set-card-compact:hover{background:var(--glass-hover)}.party-set-card-compact.droppable-hover{border-color:var(--accent-color);background:var(--accent-tint)}.party-set-elements-row{flex-shrink:0;align-items:center;gap:10px;display:flex}.party-item-thumb-badge-wrap{border-radius:var(--radius-sm);background:var(--surface-input);border:1px solid var(--glass-border);flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex;position:relative;overflow:hidden}.party-item-thumb-badge-wrap.lc-wrap{width:44px;height:56px}.party-item-thumb-badge-wrap img{object-fit:cover;width:100%;height:100%}.no-img-placeholder{color:var(--text-muted);font-size:.7rem}.badge-overlay{height:18px;color:var(--accent-text);background:#000000d9;border-top-left-radius:6px;justify-content:center;align-items:center;padding:1px 6px;font-size:.7rem;font-weight:700;line-height:18px;display:flex;position:absolute;bottom:0;right:0}.party-dynamic-extras-row{box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;gap:3px;height:56px;display:flex}.extra-draggable-icon-wrap{aspect-ratio:1;background:var(--surface-input);border:1px solid var(--glass-border);cursor:grab;touch-action:none;border-radius:6px;flex-shrink:1;justify-content:center;align-items:center;width:auto;max-width:28px;height:100%;max-height:28px;transition:border-color .2s;display:flex;overflow:hidden}.extra-draggable-icon-wrap:hover{border-color:var(--accent-line)}.extra-draggable-icon-wrap:active{cursor:grabbing}.extra-draggable-icon-wrap.dragging{border-color:var(--accent-color);opacity:.9;max-width:36px;max-height:36px;box-shadow:0 8px 20px #00000080}.extra-draggable-icon-wrap img{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%}.party-card-info{text-align:left;flex-direction:column;flex:1;gap:2px;min-width:0;padding-left:2px;display:flex}.party-char-name,.party-lc-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.party-char-name{color:var(--text-primary);font-size:.85rem;font-weight:600}.party-lc-name{color:var(--text-secondary);font-size:.72rem}.card-action-btns-compact{flex-shrink:0;align-items:center;gap:2px;margin-left:auto;display:flex}.result-field{flex-direction:column;gap:6px;display:flex}.result-summary-box{background:var(--accent-tint);border:1px solid var(--accent-line);border-radius:var(--radius-md);flex:1;justify-content:center;align-items:center;gap:2px;min-height:96px;padding:1rem;display:flex}.result-value-highlight{letter-spacing:-1px;color:var(--text-primary);font-size:2.4rem;font-weight:800;line-height:1}.result-unit{color:var(--accent-text);font-size:1.2rem;font-weight:700}.result-meta{min-height:28px;color:var(--text-secondary);justify-content:space-between;align-items:center;gap:.5rem;font-size:.78rem;display:flex}.result-meta.muted{color:var(--text-muted);justify-content:center}.compare-level-field{align-items:center;gap:.75rem;display:flex}.compare-level-field label{color:var(--text-secondary);flex-shrink:0;font-size:.8rem}.compare-level-field .sim-input{text-align:center}.compare-table{background:var(--surface-input);border:1px solid var(--glass-border);border-radius:var(--radius-sm);flex-direction:column;gap:8px;padding:10px;display:flex}.compare-table-head,.compare-row{grid-template-columns:22px minmax(0,1fr) 62px auto;align-items:center;gap:8px;display:grid}.compare-table-head span{color:var(--text-secondary);text-align:center;font-size:.7rem}.compare-tag{color:var(--text-secondary);text-align:center;font-size:.85rem;font-weight:700}.compare-row .sim-input{text-align:center;padding:.4rem .5rem}.compare-row .metric-value{color:var(--accent-text);text-align:center;font-size:.9rem;font-weight:700}.compare-diff-result{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem .85rem;display:flex}.compare-diff-result .diff-label{color:var(--text-secondary);font-size:.78rem}.compare-diff-result .diff-value{color:var(--positive);font-size:1.05rem;font-weight:700}.compare-diff-result .diff-value.negative{color:var(--danger)}.sim-input{background:var(--surface-input);border:1px solid var(--glass-border);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);box-sizing:border-box;outline:none;padding:.55rem .75rem;font-size:.9rem;transition:all .3s}.sim-input:focus{border-color:var(--accent-color);background:var(--accent-tint);box-shadow:0 0 10px #6366f133}.sim-input::placeholder{color:var(--text-secondary)}.modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:1000;box-sizing:border-box;background:#05070fb3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content-refined{background:var(--surface-solid);border:1px solid var(--glass-border);border-radius:var(--radius-lg);flex-direction:column;width:440px;max-width:92vw;max-height:85vh;display:flex;overflow:hidden;box-shadow:0 20px 25px -5px #00000080}.modal-content-refined.wide{width:520px}.modal-top-bar{border-bottom:1px solid var(--glass-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;padding:1rem 1.25rem;display:flex}.modal-top-bar h3{color:var(--text-primary);margin:0;font-size:1rem;font-weight:600}.modal-close-x{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex-shrink:0;font-size:1.1rem;transition:color .2s}.modal-close-x:hover{color:var(--text-primary)}.modal-body-scroll{flex-direction:column;flex:1;gap:1rem;min-height:0;padding:1.25rem;display:flex;overflow-y:auto}.modal-field{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);flex-direction:column;gap:8px;padding:12px;display:flex}.modal-field>label{color:var(--text-secondary);font-size:.8rem}.modal-actions-refined{border-top:1px solid var(--glass-border);background:#0003;flex-shrink:0;justify-content:flex-end;gap:8px;padding:.85rem 1.25rem;display:flex}.custom-dropdown-container{box-sizing:border-box;width:100%;min-width:0;font-size:.9rem;position:relative}.custom-dropdown-header{background:var(--surface-input);border:1px solid var(--glass-border);border-radius:var(--radius-sm);cursor:pointer;box-sizing:border-box;justify-content:space-between;align-items:center;gap:8px;width:100%;min-width:0;padding:8px 12px;transition:border-color .2s;display:flex}.custom-dropdown-header:hover{border-color:var(--accent-line)}.custom-dropdown-selected-content{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.custom-dropdown-thumb{background:var(--surface-panel);border:1px solid var(--glass-border);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex;overflow:hidden}.custom-dropdown-thumb img{object-fit:cover;width:100%;height:100%}.custom-dropdown-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-weight:500;overflow:hidden}.custom-arrow{color:var(--text-secondary);flex-shrink:0;font-size:.65rem;transition:transform .2s}.custom-arrow.open{transform:rotate(180deg)}.custom-dropdown-list{background:var(--surface-solid);border:1px solid var(--glass-border);border-radius:var(--radius-sm);z-index:50;flex-direction:column;width:100%;max-height:250px;display:flex;position:absolute;top:calc(100% + 4px);left:0;overflow:hidden;box-shadow:0 10px 15px -3px #00000080}.custom-dropdown-search-box{border-bottom:1px solid var(--glass-border);box-sizing:border-box;flex-shrink:0;padding:8px}.custom-dropdown-items-scroll{flex-grow:1;min-height:0;overflow-y:auto}.custom-dropdown-item{cursor:pointer;align-items:center;gap:10px;padding:8px 12px;transition:background .15s;display:flex}.custom-dropdown-item:hover{background:var(--glass-hover)}.custom-dropdown-item.selected{background:var(--accent-tint)}.custom-dropdown-empty{text-align:center;color:var(--text-secondary);padding:1.25rem 0;font-size:.85rem}.eidolon-picker-row{background:var(--surface-input);border:1px solid var(--glass-border);border-radius:var(--radius-sm);justify-content:space-between;gap:8px;padding:10px;display:flex}.eidolon-node{aspect-ratio:1;background:var(--surface-panel);border:2px solid var(--glass-border);cursor:pointer;width:12vw;max-width:40px;height:auto;color:var(--text-muted);border-radius:50%;flex-shrink:1;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;transition:border-color .2s,opacity .2s;display:flex;overflow:hidden}.eidolon-node.inactive{opacity:.45}.eidolon-node.active{border-color:var(--accent-color);opacity:1}.eidolon-node img{object-fit:cover;width:100%;height:100%}.refinement-picker-row{background:var(--surface-input);border:1px solid var(--glass-border);border-radius:var(--radius-sm);grid-template-columns:repeat(5,1fr);gap:8px;padding:10px;display:grid}.refinement-btn{border:1px solid var(--glass-border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;padding:8px 0;font-size:.85rem;font-weight:700;transition:all .2s}.refinement-btn:hover{border-color:var(--accent-line);color:var(--text-primary)}.refinement-btn.selected{background:var(--accent-fill);border-color:var(--accent-line);color:var(--text-primary)}.buff-pill-list{flex-wrap:wrap;gap:8px;display:flex}.buff-pill{background:var(--glass-bg);border:1px solid var(--accent-line);border-radius:20px;align-items:center;gap:6px;padding:6px 12px;transition:opacity .2s,border-color .2s;display:inline-flex}.buff-pill.disabled{border-color:var(--glass-border);opacity:.4}.buff-pill-main{cursor:pointer;align-items:center;gap:6px;display:flex}.buff-cat{color:var(--text-secondary);font-size:.7rem}.buff-name{color:var(--text-primary);font-size:.85rem;font-weight:600}.buff-value{color:var(--accent-text);cursor:pointer;font-size:.85rem;font-weight:700}.buff-select{background:var(--surface-solid);border:1px solid var(--glass-border);color:var(--accent-text);cursor:pointer;border-radius:4px;padding:2px 6px;font-size:.85rem;font-weight:700}.buff-select option{background:var(--surface-solid);color:var(--text-primary);font-weight:600}.buff-select:disabled{cursor:default}@media (width<=1180px){.def-grid-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"party result""party compare";align-items:start}.def-panel.party{height:100%}}@media (width<=768px){.def-calc-container,.def-grid-layout{flex:none}.def-grid-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"party""result""compare"}.party-list-container{flex:none;overflow-y:visible}.modal-content-refined,.modal-content-refined.wide{width:92vw}.modal-actions-refined button{flex:1}}@media (width<=420px){.compare-table-head,.compare-row{grid-template-columns:20px minmax(0,1fr) 54px auto;gap:6px}}
