.rank-section{border-top:1px solid #e7edf1;margin-top:18px;padding-top:20px}.rank-section-heading,.special-cup-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.rank-section-heading h3,.special-cup-heading h3{letter-spacing:-.035em;margin:5px 0 0;font-size:19px}.rank-section-heading>span,.special-cup-heading>span{color:#657583;background:#eef2f5;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:800}.variant-selector{background:#faf9fd;border:1px solid #dedfeb;border-radius:15px;justify-content:space-between;align-items:center;gap:14px;margin-top:14px;padding:13px 14px;display:flex}.variant-selector>div:first-child{gap:3px;display:grid}.variant-selector strong{color:#394757;font-size:12px}.variant-selector small{color:#828d98;font-size:9px;line-height:1.45}.variant-buttons{background:#edf0f3;border-radius:12px;flex:none;gap:6px;padding:4px;display:flex}.variant-buttons button{color:#6c7984;cursor:pointer;background:0 0;border:0;border-radius:9px;min-height:36px;padding:0 13px;font-size:11px;font-weight:850}.variant-buttons button.selected{color:#304454;background:#fff;box-shadow:0 1px 4px #2d39441f}.variant-buttons button.selected.shadow{color:#604b7d;background:#eee8f8}.variant-buttons button:focus-visible{outline-offset:2px;outline:2px solid #6b7f90}.keep-decision{background:#f8fafb;border:1px solid #dfe6eb;border-radius:18px;gap:10px;margin-top:16px;padding:17px;display:grid}.decision-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.decision-heading>div{gap:3px;display:grid}.decision-heading span{color:#87949e;letter-spacing:.08em;font-size:9px;font-weight:850}.decision-heading strong{letter-spacing:-.04em;font-size:22px}.decision-heading em{color:#604b7d;background:#eee8f8;border-radius:999px;padding:5px 8px;font-size:9px;font-style:normal;font-weight:850}.keep-decision>p{color:#536573;margin:0;font-size:12px;line-height:1.55}.keep-decision>small{color:#85929c;font-size:9px;line-height:1.55}.decision-strong_keep{background:#f2faf4;border-color:#bddfc8}.decision-keep{background:#f7fbf8;border-color:#cfe2d5}.decision-review{background:#fffaf0;border-color:#eadcae}.decision-transfer_candidate{background:#fff7f7;border-color:#e3d3d3}.best-opportunity{background:#ffffffb8;border-radius:12px;flex-wrap:wrap;align-items:center;gap:6px;padding:10px 11px;display:flex}.best-opportunity strong{margin-right:auto;font-size:12px}.best-opportunity span{color:#5f707d;background:#edf1f4;border-radius:8px;padding:4px 7px;font-size:9px;font-weight:800}.decision-reasons{color:#667681;gap:5px;margin:0;padding-left:17px;font-size:10px;line-height:1.5;display:grid}.evolution-note{color:#657582;background:#f3f6f8;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding:10px 12px;font-size:10px;display:flex}.evolution-note strong{color:#425563}.evolution-note span{text-align:right}.meta-rank-grid,.standard-rank-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px;display:grid}.meta-rank-card,.rank-card{background:#f8fafb;border:1px solid #dfe6eb;border-radius:17px;gap:5px;padding:16px;display:grid}.meta-rank-card>span,.meta-rank-card small,.rank-card>span,.rank-card small{color:#758491;font-size:10px;font-weight:750}.meta-rank-card>strong,.rank-card>strong{letter-spacing:-.045em;font-size:27px}.meta-rank-card>em{color:#52704a;background:#edf4ea;border-radius:8px;justify-self:start;margin-top:4px;padding:4px 7px;font-size:9px;font-style:normal;font-weight:800}.rank-card>div{flex-wrap:wrap;gap:5px;margin-top:5px;display:flex}.rank-card>div span{color:#596b79;background:#e9eef2;border-radius:8px;padding:4px 7px;font-size:9px;font-weight:800}.rank-note{color:#87949e;margin:9px 2px 0;font-size:10px;line-height:1.55}.special-cup-heading{margin-top:24px}.open-meta-heading{margin-top:20px}.iv-heading{margin-top:24px}.special-cup-list{gap:8px;margin-top:12px;display:grid}.cup-rank-card{background:#fff;border:1px solid #dfe6eb;border-radius:14px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:13px 14px;display:grid}.cup-rank-card>div:first-child{gap:3px;min-width:0;display:grid}.cup-rank-card>div:first-child strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.cup-rank-card small{color:#8a969f;font-size:9px}.cup-rank-value{align-items:baseline;gap:3px;display:flex}.cup-rank-value strong{letter-spacing:-.04em;font-size:18px}.cup-rank-card>span{color:#52704a;background:#edf4ea;border-radius:8px;padding:5px 7px;font-size:9px;font-weight:800}.rank-loading,.rank-error,.rank-warning,.rank-empty{border-radius:16px;margin-top:16px;padding:15px 16px;font-size:11px;line-height:1.55}.rank-loading,.rank-empty{color:#677783;background:#f8fafb;border:1px solid #dfe6eb}.rank-error,.rank-warning{color:#7b6124;background:#fff9e9;border:1px solid #eddcaf}@media (width<=620px){.variant-selector{flex-direction:column;align-items:stretch}.variant-buttons{width:100%}.variant-buttons button{flex:1 1 0}.meta-rank-grid,.standard-rank-grid{grid-template-columns:1fr}.cup-rank-card{grid-template-columns:minmax(0,1fr) auto}.cup-rank-card>span{grid-column:1/-1;justify-self:start}.evolution-note{flex-direction:column;align-items:flex-start}.evolution-note span{text-align:left}}.manual-cp{background:#fff9e9;border:1px solid #eddcaf;border-radius:18px;gap:14px;margin-top:14px;padding:16px;display:grid}.manual-cp-copy{gap:5px;display:grid}.manual-cp-copy strong{color:#5f4a1c;font-size:14px}.manual-cp-copy span{color:#7b6124;font-size:11px;line-height:1.55}.manual-cp-controls{grid-template-columns:minmax(0,150px) 1fr;gap:10px;display:grid}.manual-cp-controls label{background:#fff;border:1px solid #dcc98f;border-radius:14px;grid-template-columns:auto 1fr;align-items:center;gap:8px;min-height:48px;padding:0 12px;display:grid}.manual-cp-controls label>span{color:#7a6024;font-size:11px;font-weight:850}.manual-cp-controls input{color:#253443;background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:17px;font-weight:800}.manual-cp-controls input::placeholder{color:#b6aa89;font-weight:600}.manual-cp-controls button{color:#fff;background:#7b6124;border:0;border-radius:14px;min-height:48px;font-size:12px;font-weight:850}.manual-cp-controls button:disabled,.manual-cp-controls input:disabled{opacity:.5}.manual-cp>p{color:#b64747;margin:-4px 2px 0;font-size:11px;font-weight:750}@media (width<=520px){.manual-cp-controls{grid-template-columns:1fr}}:root{color:#17202a;font-synthesis:none;text-rendering:optimizelegibility;background:#eef3f7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:#eef3f7}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}.app-shell{width:min(100%,980px);padding:max(18px, env(safe-area-inset-top)) 18px max(34px, env(safe-area-inset-bottom));margin:0 auto}.topbar{justify-content:space-between;align-items:center;gap:12px;min-height:48px;display:flex}.brand{letter-spacing:-.02em;align-items:center;gap:10px;font-size:18px;font-weight:850;display:inline-flex}.brand-mark{color:#fff;background:#1f2937;border-radius:10px;place-items:center;width:32px;height:32px;font-size:16px;display:grid}.stage-badge,.privacy-badge,.test-badge{white-space:nowrap;border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font-size:11px;font-weight:800;display:inline-flex}.stage-badge{color:#536575;background:#dde7ef}.privacy-badge{color:#347348;background:#e8f5ec}.test-badge{color:#8a6516;background:#fff3d6}.hero{padding:44px 4px 28px}.eyebrow,.step-label{letter-spacing:.12em;color:#64798b;margin:0;font-size:11px;font-weight:850}.hero h1{letter-spacing:-.055em;max-width:760px;margin:10px 0 0;font-size:clamp(34px,8vw,66px);line-height:1.03}.intro{color:#5a6a78;max-width:720px;margin:18px 0 0;font-size:15px;line-height:1.72}.workspace{grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:16px;display:grid}.panel,.result-panel{background:#ffffffeb;border:1px solid #d8e1e8;border-radius:24px;box-shadow:0 14px 40px #23344412}.panel{padding:22px}.panel-heading,.result-topline{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.panel h2,.result-panel h2{letter-spacing:-.035em;margin:5px 0 0;font-size:22px}.dropzone{color:#425466;cursor:pointer;background:#f6f9fb;border:1.5px dashed #b9c7d2;border-radius:20px;place-items:center;min-height:290px;margin-top:18px;display:grid;position:relative;overflow:hidden}.dropzone input{opacity:0;pointer-events:none;block-size:1px;inline-size:1px;position:absolute}.empty-upload{text-align:center;justify-items:center;gap:8px;padding:34px 24px;display:grid}.empty-upload strong{font-size:18px}.empty-upload span:last-child{color:#758593;max-width:300px;font-size:13px;line-height:1.55}.upload-icon{color:#33485a;background:#e6edf3;border-radius:18px;place-items:center;width:56px;height:56px;margin-bottom:4px;font-size:28px;font-weight:300;display:grid}.dropzone.has-image{background:#101820;border-style:solid;min-height:360px}.dropzone img{object-fit:contain;width:100%;max-height:560px;display:block}.replace-hint{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#101820c7;border-radius:999px;padding:8px 11px;font-size:11px;font-weight:750;position:absolute;bottom:12px;right:12px}.file-meta{color:#7a8995;justify-content:space-between;gap:12px;margin-top:10px;font-size:11px;display:flex}.file-name{text-overflow:ellipsis;white-space:nowrap;color:#425466;min-width:0;font-weight:700;overflow:hidden}.inline-error{color:#b64747;margin:10px 0 0;font-size:12px;font-weight:700}.primary-button{color:#fff;background:#1f2937;border:0;border-radius:16px;width:100%;min-height:54px;margin-top:16px;font-weight:850;transition:transform .16s,opacity .16s}.primary-button:not(:disabled):active{transform:scale(.99)}.primary-button:disabled{cursor:not-allowed;opacity:.34}.privacy-note{color:#85929d;margin:12px 2px 0;font-size:11px;line-height:1.55}.progress-panel{align-self:start}.build-list{gap:0;margin:18px 0 0;padding:0;list-style:none;display:grid}.build-list li{border-top:1px solid #edf1f4;grid-template-columns:34px 1fr;align-items:center;gap:10px;padding:14px 0;display:grid}.build-list li:first-child{border-top:0}.build-list li>span{color:#83919c;background:#eef2f5;border-radius:50%;place-items:center;width:30px;height:30px;font-size:11px;font-weight:850;display:grid}.build-list div{gap:3px;display:grid}.build-list strong{color:#465968;font-size:13px}.build-list small{color:#97a3ad;font-size:10px}.build-list .done>span{color:#347348;background:#e4f3e9}.build-list .done small{color:#4c8a5f;font-weight:750}.build-list .next>span{color:#8e6a18;background:#fff1ce}.build-list .next strong{color:#253443}.build-list .next small{color:#9a731d;font-weight:750}.result-panel{margin-top:16px;padding:24px}.iv-grid,.league-grid{gap:10px;margin-top:20px;display:grid}.iv-grid{grid-template-columns:repeat(3,1fr)}.league-grid{grid-template-columns:repeat(2,1fr)}.iv-grid>div,.league-card,.decision-row{background:#f8fafb;border:1px solid #e2e8ed;border-radius:18px}.iv-grid>div{grid-template-columns:1fr auto auto;align-items:baseline;gap:5px;padding:18px;display:grid}.iv-grid span,.league-card span,.decision-row span{color:#71818e;font-size:11px;font-weight:750}.iv-grid strong{letter-spacing:-.04em;font-size:27px}.iv-grid small{color:#93a0aa;font-size:11px}.league-card{gap:5px;padding:18px;display:grid}.league-card strong{letter-spacing:-.04em;font-size:26px}.league-card small{color:#a47617;letter-spacing:.08em}.decision-row{justify-content:space-between;align-items:center;gap:16px;margin-top:10px;padding:18px;display:flex}.decision-row strong{font-size:18px}.stub-warning{color:#8b7b57;margin:14px 2px 0;font-size:11px;line-height:1.6}.error-panel{background:snow;border-color:#efd1d1}.error-panel p:last-child{color:#9f5555;margin-bottom:0}@media (width<=760px){.app-shell{padding-left:14px;padding-right:14px}.hero{padding-top:34px}.workspace{grid-template-columns:1fr}.progress-panel{order:2}.dropzone{min-height:240px}.dropzone.has-image{min-height:300px}}@media (width<=520px){.stage-badge{font-size:10px}.hero h1{font-size:39px}.panel,.result-panel{border-radius:20px}.panel{padding:18px}.iv-grid,.league-grid{grid-template-columns:1fr}.iv-grid>div{grid-template-columns:1fr auto auto}}.screen-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px;display:grid}.screen-grid>div{background:#f8fafb;border:1px solid #e2e8ed;border-radius:18px;gap:5px;min-width:0;padding:18px;display:grid}.screen-grid span,.candidate-summary>span{color:#71818e;font-size:11px;font-weight:750}.screen-grid strong{letter-spacing:-.035em;text-overflow:ellipsis;font-size:22px;overflow:hidden}.screen-grid small,.candidate-summary small{color:#93a0aa;font-size:10px}.candidate-summary,.candidate-section,.analysis-warning{border-radius:18px;margin-top:14px}.candidate-summary{background:#f2faf5;border:1px solid #cfe7d6;gap:5px;padding:18px;display:grid}.candidate-summary strong{letter-spacing:-.035em;font-size:21px}.candidate-section{background:#f8fafb;border:1px solid #e2e8ed;padding:18px}.candidate-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.candidate-heading>strong{font-size:15px}.candidate-heading>span{color:#7b8994;font-size:11px;font-weight:750}.candidate-list{gap:8px;margin-top:12px;display:grid}.candidate-button{color:#243442;text-align:left;background:#fff;border:1px solid #dbe3e9;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:58px;padding:12px 14px;display:flex}.candidate-button>span{gap:3px;display:grid}.candidate-button strong{font-size:14px}.candidate-button small{color:#8996a0;font-size:10px}.candidate-button em{color:#657583;flex:none;font-size:11px;font-style:normal;font-weight:750}.candidate-button.selected{background:#eaf0f4;border-color:#576d7f;box-shadow:inset 0 0 0 1px #576d7f}.selection-confirmed{color:#347348;margin:10px 2px 0;font-size:11px;font-weight:800}.analysis-warning{color:#7b6124;background:#fff9e9;border:1px solid #eddcaf;padding:14px 16px;font-size:12px;line-height:1.55}@media (width<=520px){.screen-grid{grid-template-columns:1fr}}
