.sim-shell{max-width:1000px;margin:36px auto 72px;padding:0 18px;font-family:inherit;font-size:17px;line-height:1.5}
.sim-head{display:flex;gap:16px;justify-content:space-between;align-items:flex-start;flex-wrap:wrap}
.sim-head h1{font-size:clamp(28px,4vw,42px);margin:10px 0}
.sim-sub{color:#5d6c68;margin:0 0 20px}
.sim-statline{display:flex;gap:18px;flex-wrap:wrap;color:#54615e;font-size:15px}
.sim-card{background:#fff;border:1px solid #dce8e2;border-radius:18px;padding:22px;margin-top:18px;box-shadow:0 4px 15px #0b55300a}
.sim-card h2{margin:0 0 14px;font-size:22px}
.sim-play-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:9px}
.sim-play-header h2{margin:0 0 7px}
.sim-play-header .sim-sub{margin:0}
.sim-list{list-style:none;margin:10px 0;padding:0;display:grid;gap:7px}
.sim-guess{position:relative;display:grid;grid-template-columns:minmax(0,32%) minmax(0,1fr);align-items:center;gap:12px;min-width:0;border:0;border-radius:7px;background:transparent;padding:0;overflow:hidden;height:32px;min-height:32px;box-shadow:none}
.sim-guess-name{min-width:0;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#273b33;font-size:16px;line-height:1.35}
.sim-guess-track{position:relative;display:block;min-width:0;width:100%;height:32px;border-radius:5px;background:#e5ece7;overflow:hidden}
.sim-guess-fill{height:100%;width:var(--sim-fill);background:var(--sim-color);border-radius:5px;display:flex;justify-content:flex-end;align-items:center;box-sizing:border-box;transform-origin:left center;min-width:45px}
.sim-guess-rank{font-size:14px;font-variant-numeric:tabular-nums;font-weight:800;color:#121a14;white-space:nowrap;min-width:35px;text-align:right;padding-right:7px;box-sizing:border-box;text-shadow:0 1px 0 #ffffff88}
.sim-latest-wrap{margin:8px 0 0}
.sim-latest-wrap>.sim-guess{list-style:none}
.sim-latest-wrap[hidden]{display:none}
.sim-button{background:#126d49;color:#fff;border:0;border-radius:9px;padding:11px 19px;font:inherit;font-weight:650;cursor:pointer}
.sim-button:hover{background:#0a5335}
.sim-button:disabled{opacity:.6;cursor:wait}
.sim-button-secondary{background:#fff;color:#a23232;border:1px solid #e2b4b4;padding:8px 13px;font-size:15px;margin:0;white-space:normal}
.sim-button-secondary:hover{background:#fff0f0}
.sim-entry{position:relative;display:flex;gap:10px;flex-wrap:wrap}
.sim-entry input{min-width:180px;flex:1;border:1px solid #bdcec5;border-radius:9px;font:inherit;padding:11px}
.sim-suggestions{list-style:none;margin:8px 0 0;padding:0;border:1px solid #d8e5de;border-radius:10px;max-height:300px;overflow:auto}
.sim-suggestions:empty{display:none}
.sim-suggestions li{padding:10px 13px;background:#fff;text-align:left;cursor:pointer;font:inherit}
.sim-suggestions li+li{border-top:1px solid #eaf0ec}
.sim-suggestions li:hover,.sim-suggestions li.sim-active{background:#e2f4e9;outline:none}
.sim-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.sim-metric{background:#f7faf8;border-radius:10px;padding:14px;min-width:0}
.sim-metric small{display:block;color:#526159;font-size:14px}.sim-metric strong{display:block;margin-top:8px;font-size:22px;overflow-wrap:anywhere}
#similarityMessage{min-height:0;font-size:15px;color:#42614e;margin:8px 0 0}#similarityMessage:empty{display:none}#similarityMessage.error{color:#bb2424}
#simAnswer{margin:18px 0 4px;font-size:20px;font-weight:750}
.sim-reveal{animation:sim-row-appear 190ms ease-out both}
.sim-reveal .sim-guess-fill{animation:sim-fill-grow 390ms cubic-bezier(.22,.8,.22,1) both}
.sim-reveal .sim-guess-rank{animation:sim-rank-pop 220ms 390ms cubic-bezier(.2,1.5,.4,1) both}
@keyframes sim-row-appear{from{opacity:.78}to{opacity:1}}
@keyframes sim-fill-grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes sim-rank-pop{from{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}
.sim-play-card{padding-top:16px;padding-bottom:16px}
@media(prefers-reduced-motion:reduce){.sim-reveal,.sim-reveal .sim-guess-fill,.sim-reveal .sim-guess-rank{animation:none!important}}
@media(max-width:640px){.sim-shell{font-size:16px}.sim-card{padding:15px}.sim-play-card{padding-top:12px;padding-bottom:12px}.sim-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.sim-guess{grid-template-columns:minmax(0,40%) minmax(0,1fr);gap:7px;padding:0;height:32px;min-height:32px}.sim-guess-name{font-size:14px;font-weight:800}.sim-guess-rank{font-size:13px}.sim-button-secondary{font-size:14px}}
@media(min-width:641px){.sim-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}}

