.digimon-simulator{padding:26px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(135deg,#102933,var(--surface) 65%)}
.simulation-controls{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:16px;margin:24px 0}
.simulation-control{display:grid;grid-template-columns:minmax(0,1fr) 88px;align-items:center;gap:12px;padding:16px;background:var(--ink);border:1px solid var(--line);border-radius:8px;min-width:0}
.simulation-label{font-size:12px;color:var(--muted)}
.simulation-number{width:100%;min-width:0;border:1px solid var(--line);border-radius:5px;color:var(--cyan);background:var(--surface);padding:6px;text-align:right;font-weight:650}
.simulation-range{grid-column:1/-1;width:100%;margin:5px 0;accent-color:var(--cyan);cursor:pointer;min-height:24px}
.simulation-clone{padding:16px;display:flex;gap:12px;align-items:center;border:1px solid #385761;background:#112d34;border-radius:8px;cursor:pointer}
.simulation-clone input{width:20px;height:20px;accent-color:var(--cyan);flex-shrink:0}
.simulation-clone strong{font-size:13px}.simulation-clone small{display:block;color:var(--muted);font-size:11px;margin-top:5px}
.simulation-status{font-size:13px;color:var(--cyan);font-weight:600}.simulation-stats{grid-template-columns:repeat(5,minmax(0,1fr))}
.simulation-stats .stat{min-width:0;padding:14px}.simulation-stats dd{font-variant-numeric:tabular-nums;font-size:clamp(18px,2vw,25px);overflow-wrap:anywhere}
.clone-contribution{display:block;min-height:16px;color:var(--cyan);font-size:9px;margin-top:7px}.simulation-unavailable{border-left:3px solid var(--gold);padding:12px;background:var(--surface);font-size:13px}
.asset-base-details{padding:16px 20px;border:1px solid var(--line);border-radius:8px;font-size:12px;color:var(--muted)}
.asset-base-details summary{cursor:pointer}.asset-base-details .stats-grid{color:var(--text)}
.interactive-skill{display:grid;grid-template-columns:minmax(230px,1fr) 1fr;align-items:center;gap:12px 24px;margin:20px 0;padding-top:20px;border-top:1px solid var(--line)}
.selected-skill-power{font-size:22px;color:var(--cyan);font-variant-numeric:tabular-nums}.skill-unlock-note{grid-column:1/-1;color:var(--muted);font-size:11px;margin:0}
.route-picker{display:flex;gap:16px;align-items:center;font-size:12px;margin:20px 0;color:var(--muted)}
.route-picker select{background:var(--surface);color:var(--text);border:1px solid var(--line);padding:10px 16px;border-radius:6px;max-width:100%}
.evolution-viewport{max-width:100%;overflow:auto;border:1px solid var(--line);border-radius:12px;background-color:#08151f;background-image:linear-gradient(#18303b55 1px,transparent 1px),linear-gradient(90deg,#18303b55 1px,transparent 1px);background-size:24px 24px;margin-bottom:14px;overscroll-behavior-x:contain}
.evolution-viewport:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
.evolution-canvas{display:flex;position:relative;align-items:center;gap:58px;width:max-content;min-width:100%;padding:30px}
.evolution-column{width:236px;display:flex;flex-direction:column;gap:24px;flex-shrink:0;position:relative;z-index:1}
.evolution-node{border:1px solid #3b5261;border-radius:10px;background:var(--surface);padding:16px;box-shadow:0 8px 25px #0003}
.evolution-node.is-current{border-color:var(--cyan);box-shadow:0 0 0 1px var(--cyan);background:#122c35}
.evolution-identity{display:flex;gap:12px;align-items:center;line-height:1.4}.evolution-identity:hover strong{color:var(--cyan)}
.evolution-identity .wiki-art{width:52px;height:52px;flex-shrink:0}.evolution-identity strong{display:block;font-size:14px;overflow-wrap:anywhere}.evolution-identity small{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--cyan)}
.evolution-level{font-size:11px;color:var(--muted);margin:14px 0 8px}.evolution-requirement{padding-top:10px;border-top:1px solid var(--line);font-size:11px}.evolution-requirement>strong{font-size:10px;color:var(--gold);text-transform:uppercase;letter-spacing:.06em;display:block;margin-bottom:7px}
.evolution-item{display:flex;gap:8px;align-items:center;font-size:11px;margin:7px 0;line-height:1.4}.evolution-item:hover{color:var(--cyan)}.evolution-item .wiki-art{width:30px;height:30px;flex-shrink:0}.evolution-requirement summary{cursor:pointer;color:var(--muted);font-size:10px}.evolution-requirement small{display:block;color:var(--muted);font-size:10px}
.evolution-quest{font-size:11px;color:var(--gold);margin:10px 0 0}.evolution-consumption{font-size:10px;color:var(--muted);border-top:1px solid var(--line);padding-top:9px;margin:10px 0 0}
.evolution-edges{position:absolute;left:0;top:0;pointer-events:none;overflow:visible}.evolution-edges path{fill:none;stroke:#66dfdf88;stroke-width:2}
.detail-head .card-portrait{width:108px;height:108px;flex-shrink:0;background:radial-gradient(#24556777,transparent 70%);border:0}.detail-head .card-portrait img{object-fit:contain;width:100%;height:100%}
@media(max-width:1150px){.simulation-controls{grid-template-columns:1fr 1fr}.simulation-clone{grid-column:1/-1}.simulation-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.digimon-simulator{padding:17px}.simulation-controls{grid-template-columns:1fr;gap:10px}.simulation-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.interactive-skill{grid-template-columns:1fr}.selected-skill-power{font-size:20px}.route-picker{display:block}.route-picker select{display:block;width:100%;margin-top:7px}.evolution-canvas{padding:22px;gap:40px}.detail-tabs{gap:18px;flex-wrap:wrap}.detail-head .card-portrait{width:76px;height:76px}}
.catalogue-mode{display:flex;gap:10px;margin-top:20px}.catalogue-mode button{padding:8px 18px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--muted);font-size:12px}.catalogue-mode [aria-pressed=true]{border-color:var(--cyan);color:var(--cyan);background:#133038}.line-form-preview{display:flex;gap:5px;margin:17px 0 8px;flex-wrap:wrap}.line-form-preview .wiki-art{width:32px;height:32px}.line-form-count{color:var(--muted);font-size:11px;margin:5px 0}.line-matches{font-size:10px;color:var(--cyan);margin:8px 0 0}
.evolution-shortcut-toggle{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px;margin:0 0 14px}.evolution-shortcut-toggle input{accent-color:var(--cyan)}
