:root{
  --bg:#071B13;
  --panel:#0D2A1D;
  --panel2:#102f22;
  --line:#234437;
  --gold:#D7A84F;
  --gold2:#F3D27A;
  --white:#F5F7F2;
  --muted:#A9B9AE;
  --green:#38C172;
  --red:#D94B4B;
  --blue:#4EA3FF;
  --amber:#E4B650;
  --shadow:0 18px 55px rgba(0,0,0,.35);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--white);font-family:"Inter","PingFang SC","Microsoft YaHei",Arial,sans-serif}
button{font-family:inherit;color:inherit}
.stadium-bg{position:fixed;inset:0;z-index:-2;background:
  radial-gradient(circle at 50% -10%,rgba(243,210,122,.18),transparent 38%),
  radial-gradient(circle at 15% 10%,rgba(78,163,255,.13),transparent 28%),
  linear-gradient(180deg,#06150f,#071B13 52%,#04110c);}
.stadium-bg:after{content:"";position:absolute;inset:0;z-index:-1;background:
  linear-gradient(110deg,transparent 0 42%,rgba(255,255,255,.045) 48%,transparent 54% 100%),
  repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 1px, transparent 1px 80px);
  animation:lightSweep 9s ease-in-out infinite alternate;opacity:.7}
@keyframes lightSweep{from{transform:translateX(-4%)}to{transform:translateX(4%)}}
.app{max-width:1180px;margin:0 auto;padding:22px 18px 42px}
.nav{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line);background:rgba(13,42,29,.68);backdrop-filter:blur(12px);border-radius:22px;padding:14px 18px;box-shadow:var(--shadow);position:sticky;top:12px;z-index:5}
.brand{display:flex;gap:10px;align-items:center;font-weight:900;letter-spacing:.08em;color:var(--gold2)}
.brand-mark{width:34px;height:34px;border-radius:50%;border:1px solid rgba(243,210,122,.5);display:grid;place-items:center;background:linear-gradient(145deg,rgba(215,168,79,.25),rgba(13,42,29,.8))}
.nav-links{display:flex;gap:10px;flex-wrap:wrap}.nav-link{border:1px solid transparent;background:transparent;color:var(--muted);padding:8px 10px;border-radius:999px;cursor:pointer}.nav-link:hover,.nav-link.active{border-color:rgba(243,210,122,.32);color:var(--white);background:rgba(215,168,79,.11)}
.hero{padding:74px 12px 48px;text-align:center}.eyebrow{color:var(--gold2);font-weight:800;letter-spacing:.2em;text-transform:uppercase;font-size:13px}.title{font-size:clamp(46px,9vw,96px);line-height:.95;margin:16px 0 14px;font-weight:1000;letter-spacing:.12em;text-shadow:0 0 34px rgba(243,210,122,.2)}.subtitle{color:#dfe8e1;font-size:clamp(17px,2.8vw,24px);margin:0 auto 28px;max-width:780px;line-height:1.55}.hero-actions{display:flex;gap:14px;align-items:center;justify-content:center;flex-wrap:wrap}.btn{border:none;border-radius:16px;padding:13px 18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);cursor:pointer;font-weight:800;transition:.18s transform,.18s background,.18s border-color;box-shadow:0 12px 30px rgba(0,0,0,.18)}.btn:hover{transform:translateY(-1px);background:rgba(255,255,255,.12);border-color:rgba(243,210,122,.42)}.btn.primary{background:linear-gradient(135deg,var(--gold),#8f6722);color:#171007;border-color:rgba(243,210,122,.55)}.btn.danger{background:linear-gradient(135deg,#7f2020,var(--red));border-color:rgba(217,75,75,.6)}.btn.blue{background:linear-gradient(135deg,#174b80,var(--blue));border-color:rgba(78,163,255,.45)}.btn.ghost{background:transparent}.btn.small{padding:8px 11px;border-radius:12px;font-size:13px}.btn[disabled]{opacity:.45;cursor:not-allowed;transform:none}.grid{display:grid;gap:16px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin:18px 0}.mode-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:26px}.card{border:1px solid var(--line);background:linear-gradient(180deg,rgba(16,47,34,.9),rgba(10,31,22,.86));border-radius:22px;padding:18px;box-shadow:var(--shadow)}.stat-card{text-align:left}.stat-label{color:var(--muted);font-size:13px}.stat-value{font-size:27px;font-weight:1000;margin-top:6px;color:var(--gold2);font-variant-numeric:tabular-nums}.section-title{font-size:28px;font-weight:1000;margin:28px 0 12px}.mode-card{min-height:190px;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;transition:.18s transform,.18s border}.mode-card:hover{transform:translateY(-3px);border-color:rgba(243,210,122,.42)}.mode-title{font-size:24px;font-weight:1000;color:var(--gold2)}.mode-desc{color:#c8d5cc;line-height:1.65}.layout-3{display:grid;grid-template-columns:250px minmax(0,1fr) 280px;gap:16px;align-items:start}.panel-title{font-weight:1000;color:var(--gold2);font-size:18px;margin-bottom:14px}.draft-condition{display:grid;gap:10px}.condition-row{display:flex;justify-content:space-between;gap:12px;color:#dfe8e1;border-bottom:1px solid rgba(255,255,255,.07);padding-bottom:8px}.condition-row span:first-child{color:var(--muted)}.hint{margin-top:12px;color:#d5dfd7;line-height:1.6;border-top:1px solid rgba(255,255,255,.08);padding-top:12px}.players-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.player-card{position:relative;overflow:hidden;border:1px solid rgba(243,210,122,.26);background:linear-gradient(150deg,rgba(19,62,44,.96),rgba(6,18,13,.96));border-radius:22px;padding:16px;box-shadow:0 16px 38px rgba(0,0,0,.28);min-height:245px;display:flex;flex-direction:column;justify-content:space-between}.player-card:before{content:"";position:absolute;inset:-2px;background:radial-gradient(circle at 80% 8%,rgba(243,210,122,.18),transparent 28%);pointer-events:none}.player-card.tier-S\+{border-color:rgba(243,210,122,.78);box-shadow:0 0 0 1px rgba(243,210,122,.15),0 20px 50px rgba(215,168,79,.16)}.player-card.tier-S{border-color:rgba(215,168,79,.58)}.player-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;position:relative}.country-code{font-size:12px;font-weight:900;color:var(--gold2);letter-spacing:.12em;text-transform:uppercase}.overall{font-size:42px;font-weight:1000;color:var(--gold2);font-variant-numeric:tabular-nums;line-height:1}.player-name{font-size:24px;font-weight:1000;margin:8px 0 3px}.player-sub{color:var(--muted);font-size:13px}.mini-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin:12px 0}.mini-stat{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.07);border-radius:10px;padding:7px 8px;display:flex;justify-content:space-between;font-size:13px}.tags{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.tag{font-size:12px;border:1px solid rgba(255,255,255,.12);color:#dbe6dd;border-radius:999px;padding:4px 7px;background:rgba(255,255,255,.06)}.tag.risk{border-color:rgba(217,75,75,.45);color:#ffcdcd}.comment{font-size:13px;color:#c9d6ce;line-height:1.45;margin:6px 0 12px;min-height:36px}.side-list{display:grid;gap:8px}.slot-row{display:flex;align-items:center;justify-content:space-between;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.045);border-radius:12px;padding:8px 10px;font-size:13px}.slot-row .pos{color:var(--gold2);font-weight:900}.slot-row .name{color:#dbe6dd;text-align:right;max-width:170px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.progress{height:8px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.progress>i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold2));width:0}.pitch-wrap{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:16px}.pitch{height:600px;border-radius:28px;border:1px solid rgba(255,255,255,.13);background:
  linear-gradient(90deg,rgba(255,255,255,.035) 50%,transparent 50%),
  repeating-linear-gradient(0deg,rgba(56,193,114,.11) 0 60px,rgba(56,193,114,.04) 60px 120px),
  #0e3a24;position:relative;overflow:hidden;box-shadow:inset 0 0 0 2px rgba(255,255,255,.04),var(--shadow)}.pitch:before{content:"";position:absolute;inset:18px;border:2px solid rgba(255,255,255,.16);border-radius:18px}.pitch:after{content:"";position:absolute;width:150px;height:150px;border:2px solid rgba(255,255,255,.14);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.slot{position:absolute;width:112px;min-height:58px;transform:translate(-50%,-50%);border:1px solid rgba(243,210,122,.35);background:rgba(7,27,19,.82);backdrop-filter:blur(6px);border-radius:16px;padding:8px;text-align:center;box-shadow:0 10px 24px rgba(0,0,0,.22)}.slot.empty{border-style:dashed;color:var(--muted);background:rgba(7,27,19,.55)}.slot .p{font-weight:900;font-size:12px;color:var(--gold2)}.slot .n{font-size:13px;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slot .o{font-size:12px;color:var(--muted);margin-top:2px}.bench{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.bench-chip{border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.06);border-radius:999px;padding:8px 10px;font-size:13px}.stat-panel{display:grid;gap:10px}.metric{display:grid;gap:5px}.metric-top{display:flex;justify-content:space-between;font-size:13px}.metric b{font-variant-numeric:tabular-nums}.bar{height:8px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}.bar i{display:block;height:100%;border-radius:99px;background:var(--green);width:0}.bar i.warn{background:var(--amber)}.bar i.bad{background:var(--red)}.bar i.gold{background:linear-gradient(90deg,var(--gold),var(--gold2))}.tactic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.tactic-card{cursor:pointer;min-height:210px;border-color:rgba(255,255,255,.11)}.tactic-card.selected{border-color:rgba(243,210,122,.7);box-shadow:0 0 0 1px rgba(243,210,122,.19),var(--shadow)}.tactic-name{font-size:23px;font-weight:1000;color:var(--gold2)}.fit-badge{display:inline-flex;margin:10px 0;padding:6px 9px;border-radius:999px;background:rgba(78,163,255,.12);border:1px solid rgba(78,163,255,.35);color:#cfe6ff;font-weight:900;font-size:13px}.tactic-desc{color:#cbd8d0;line-height:1.55}.match-road{display:grid;gap:12px}.match-card{display:grid;grid-template-columns:90px minmax(0,1fr) 115px;gap:14px;align-items:center;border:1px solid var(--line);background:rgba(13,42,29,.74);border-radius:18px;padding:14px}.match-stage{font-weight:1000;color:var(--gold2)}.match-main{display:grid;gap:5px}.match-score{font-size:26px;font-weight:1000;font-variant-numeric:tabular-nums}.match-event{color:#cbd8d0;line-height:1.45}.result-badge{border-radius:999px;padding:7px 10px;text-align:center;font-weight:1000}.win{background:rgba(56,193,114,.15);color:#baf3d3;border:1px solid rgba(56,193,114,.35)}.draw{background:rgba(228,182,80,.15);color:#ffe0a0;border:1px solid rgba(228,182,80,.35)}.loss{background:rgba(217,75,75,.16);color:#ffc5c5;border:1px solid rgba(217,75,75,.35)}.result-hero{text-align:center;padding:35px 20px}.record{font-size:86px;font-weight:1000;color:var(--gold2);font-variant-numeric:tabular-nums;line-height:1}.rank{font-size:34px;color:var(--gold2);font-weight:1000;margin-top:6px}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px}.verdict{font-size:20px;line-height:1.7;color:#e9f2eb;max-width:850px;margin:22px auto 0}.share-box{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:15px;margin-top:14px}.share-box h4{margin:0 0 8px;color:var(--gold2)}.share-box p{margin:0;color:#d7e3da;line-height:1.6}.poster-preview{max-width:280px;border-radius:18px;border:1px solid rgba(243,210,122,.32);box-shadow:var(--shadow);display:block;margin:16px auto}.hidden{display:none!important}.footer-note{color:#8aa095;font-size:12px;line-height:1.6;text-align:center;margin-top:28px}.toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);background:#0f2a1f;border:1px solid rgba(243,210,122,.42);color:var(--white);padding:11px 15px;border-radius:999px;box-shadow:var(--shadow);z-index:20}.country-pills{display:flex;gap:8px;flex-wrap:wrap}.pill{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);border-radius:999px;padding:8px 12px;cursor:pointer}.pill.selected{border-color:rgba(243,210,122,.6);color:var(--gold2);background:rgba(215,168,79,.11)}
@media(max-width:980px){.layout-3,.pitch-wrap{grid-template-columns:1fr}.players-grid,.mode-grid,.stats-grid,.summary-grid,.tactic-grid{grid-template-columns:1fr 1fr}.pitch{height:540px}.nav{position:static}.nav-links{display:none}}
@media(max-width:640px){.app{padding:14px 10px 34px}.hero{padding:46px 4px 28px}.players-grid,.mode-grid,.stats-grid,.summary-grid,.tactic-grid{grid-template-columns:1fr}.card{border-radius:18px;padding:14px}.record{font-size:64px}.pitch{height:500px}.slot{width:92px;font-size:12px}.match-card{grid-template-columns:1fr;gap:8px}.title{letter-spacing:.06em}.hero-actions .btn{width:100%}}
/* V1.2 enhancements */
.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));}
.stats-grid.compact{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin:10px 0 0;}
.daily-card{position:relative;overflow:hidden;min-height:250px;}
.daily-card:before{content:"";position:absolute;right:-70px;top:-90px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(78,163,255,.18),transparent 68%);pointer-events:none;}
.compact-card{min-height:210px;}
.compact-card .player-name{font-size:20px;}
.compact-card .overall{font-size:34px;}
.match-meta{margin-top:6px;color:#9fb2a7;font-size:12px;line-height:1.45;}
.nav-links{flex-wrap:wrap;}
@media(max-width:980px){.nav{align-items:flex-start}.nav-links{display:flex}.nav-link{font-size:12px;padding:7px 8px}.layout-3{grid-template-columns:1fr}.players-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.players-grid{grid-template-columns:1fr}.nav{gap:10px}.brand span{font-size:14px}.brand-mark{width:34px;height:34px}.stats-grid{grid-template-columns:1fr 1fr}.stat-value{font-size:22px}.daily-card{min-height:auto}.match-meta{font-size:11px}}

/* V1.3 product polish */
.filter-title{margin:14px 0 8px;color:var(--gold2);font-size:13px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.diagnosis{margin-top:14px;border-top:1px solid rgba(255,255,255,.09);padding-top:12px;display:grid;gap:9px}
.small-title{font-size:14px!important;color:var(--gold2)!important;margin-bottom:2px!important}
.diagnosis-row{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.045);border-radius:14px;padding:9px 10px;display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:center}
.diagnosis-row span{font-weight:900;color:#edf7ef}.diagnosis-row b{font-variant-numeric:tabular-nums;color:var(--gold2)}.diagnosis-row p{grid-column:1/-1;margin:0;color:#b9cabf;font-size:12px;line-height:1.45}.diagnosis-row.good{border-color:rgba(56,193,114,.28)}.diagnosis-row.warn{border-color:rgba(228,182,80,.34)}.diagnosis-row.bad{border-color:rgba(217,75,75,.38)}
.tactic-mini{margin-top:10px;border-top:1px solid rgba(255,255,255,.08);padding-top:10px;color:#bcd0c4;font-size:12px;line-height:1.45}
.matrix{display:grid;grid-template-columns:1fr 1.3fr 1.3fr;gap:0;border:1px solid rgba(255,255,255,.1);border-radius:16px;overflow:hidden;margin-top:10px}.matrix>div{padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.08);border-right:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);font-size:13px}.matrix>div:nth-child(3n){border-right:0}.matrix>div:nth-last-child(-n+3){border-bottom:0}.matrix-head{font-weight:1000;color:var(--gold2);background:rgba(215,168,79,.1)!important}.good-text{color:#c9f7dc}.risk-text{color:#ffd1d1}
.btn.danger{border-color:rgba(217,75,75,.4);color:#ffd4d4;background:rgba(217,75,75,.08)}
@media(max-width:640px){.matrix{grid-template-columns:1fr}.matrix>div{border-right:0}.matrix-head:nth-child(2),.matrix-head:nth-child(3){display:none}}

/* V1.5 polish */
.btn.blue{background:linear-gradient(135deg,rgba(78,163,255,.22),rgba(78,163,255,.08));border-color:rgba(78,163,255,.45);color:#d7ebff}
.tier-S\+,.tier-S{box-shadow:0 0 0 1px rgba(243,210,122,.16),0 16px 40px rgba(0,0,0,.25)}
.mode-card:hover,.player-card:hover,.tactic-card:hover{transform:translateY(-2px);transition:.18s ease;}
@media(max-width:640px){
  .nav-links{display:grid;grid-template-columns:repeat(3,1fr);width:100%;gap:6px}.nav-link{text-align:center}
  .hero-actions{position:relative}.hero-actions .btn{min-height:44px}
  .pitch-wrap .card{position:relative}.bench{max-height:108px;overflow:auto;padding-bottom:4px}
  .side-list{max-height:360px;overflow:auto}.player-card{min-height:auto}.player-name{font-size:22px}.overall{font-size:42px}
}

/* V1.6 manual lineup + rating + poster templates */
.lineup-editor{margin-top:14px}
.swap-grid{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;margin-top:10px}
.swap-grid label{display:grid;gap:6px;color:#bcd0c4;font-size:13px;font-weight:800}
.swap-grid select{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);color:var(--white);border-radius:12px;padding:10px;outline:none;min-width:0}
.swap-grid option{background:#0D2A1D;color:#fff}
.rating-table{grid-template-columns:1fr 1fr 2fr}
.rating-table>div{line-height:1.45}
.result-hero .hero-actions{gap:10px}
@media(max-width:760px){.swap-grid{grid-template-columns:1fr}.rating-table{grid-template-columns:1fr}.rating-table>.matrix-head:nth-child(2),.rating-table>.matrix-head:nth-child(3){display:none}}

/* V1.7 drag lineup + public test polish */
.drag-guide{margin-top:14px;border-color:rgba(78,163,255,.28);background:linear-gradient(180deg,rgba(9,41,57,.65),rgba(10,31,22,.86));}
.slot[draggable="true"],.bench-chip[draggable="true"]{cursor:grab;user-select:none}
.slot[draggable="true"]:active,.bench-chip[draggable="true"]:active{cursor:grabbing}
.dragging{opacity:.55;filter:saturate(1.3);outline:2px dashed rgba(243,210,122,.75)}
.drop-ready{box-shadow:0 0 0 3px rgba(78,163,255,.65),0 0 28px rgba(78,163,255,.28)!important;border-color:rgba(78,163,255,.85)!important}
.slot.drop-ready:after{content:"释放交换";position:absolute;left:50%;bottom:-24px;transform:translateX(-50%);background:rgba(7,27,19,.92);border:1px solid rgba(78,163,255,.55);border-radius:999px;padding:4px 8px;color:#d7ebff;font-size:11px;white-space:nowrap}
.bench-chip.drop-ready{background:rgba(78,163,255,.18);color:#d7ebff}
.api-note{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:12px;color:#d7ebff;overflow:auto}

/* V1.8 mobile tap-swap + nation poster polish */
.tap-selected{box-shadow:0 0 0 3px rgba(243,210,122,.88),0 0 30px rgba(243,210,122,.35)!important;border-color:rgba(243,210,122,.95)!important;position:relative}
.slot.tap-selected:after{content:"已选中";position:absolute;left:50%;bottom:-24px;transform:translateX(-50%);background:rgba(7,27,19,.94);border:1px solid rgba(243,210,122,.65);border-radius:999px;padding:4px 8px;color:#ffe9a3;font-size:11px;white-space:nowrap}
.bench-chip.tap-selected{background:rgba(243,210,122,.18);color:#ffe9a3}
@media(max-width:760px){
  .drag-guide .panel-title:after{content:" · 手机点选可用";color:#d7ebff;font-weight:700;font-size:12px}
  .slot,.bench-chip{touch-action:manipulation}
  .slot[draggable="true"],.bench-chip[draggable="true"]{cursor:pointer}
}

/* V1.9 public-test polish */
.v19-app .nav{position:sticky;top:0;z-index:20;backdrop-filter:blur(14px);}
.mobile-tap-note{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);background:rgba(7,27,19,.94);color:#F3D27A;border:1px solid rgba(243,210,122,.38);box-shadow:0 16px 42px rgba(0,0,0,.38);border-radius:999px;padding:12px 18px;font-weight:800;z-index:99;max-width:86vw;text-align:center;}
.slot.tap-selected,.bench-chip.tap-selected{outline:3px solid #F3D27A;box-shadow:0 0 0 8px rgba(243,210,122,.18),0 12px 34px rgba(0,0,0,.36);transform:translateZ(0) scale(1.03);}
.slot.drop-ready,.bench-chip.drop-ready{outline:3px dashed #4EA3FF;box-shadow:0 0 0 8px rgba(78,163,255,.16);}
.error-card pre{white-space:pre-wrap;background:rgba(0,0,0,.25);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:14px;color:#F5F7F2;max-height:220px;overflow:auto;}
.good-text{color:#38C172;font-weight:900}.bad-text{color:#D94B4B;font-weight:900}
@media (max-width: 760px){
  .nav{gap:10px;padding:10px 12px}.brand span{font-size:16px}.brand-mark{width:34px;height:34px}
  .nav-links{overflow-x:auto;white-space:nowrap;padding-bottom:4px;-webkit-overflow-scrolling:touch}.nav-link{min-height:38px;padding:8px 12px}
  .hero{padding:32px 18px}.title{font-size:44px}.subtitle{font-size:15px}.hero-actions{gap:10px}.btn{min-height:44px;padding:12px 14px}
  .pitch-wrap{grid-template-columns:1fr;gap:14px}.pitch{min-height:520px;border-radius:24px}.slot{min-width:74px;min-height:58px;padding:8px;touch-action:manipulation}.slot .n{font-size:13px}.slot .o{font-size:16px}.slot .p{font-size:12px}
  .bench{gap:8px}.bench-chip{min-height:42px;padding:10px 12px;touch-action:manipulation}
  .players-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .drag-guide,.lineup-editor{font-size:14px}.swap-grid{grid-template-columns:1fr;gap:10px}.swap-grid select{min-height:44px}
  .match-card{grid-template-columns:64px 1fr;gap:10px}.result-badge{grid-column:1/-1;justify-self:start}
  .poster-preview{max-height:560px;object-fit:contain;background:#06150f}
}
@media (hover:none){
  [data-tap-ref]{cursor:pointer;-webkit-tap-highlight-color:rgba(243,210,122,.28)}
  .slot:active,.bench-chip:active,.player-card:active,.btn:active{transform:scale(.985)}
}


/* V2.0 RC additions */
.v20-app .code-block{background:rgba(0,0,0,.34);border:1px solid rgba(243,210,122,.22);border-radius:14px;padding:14px;overflow:auto;color:#f5f7f2;line-height:1.65}
.v20-app .bad-text{color:#ff8a8a;font-weight:800}
.v20-app .good-text{color:#8df0bb;font-weight:800}
.v20-app .nav-links{scrollbar-width:none}
.v20-app .nav-links::-webkit-scrollbar{display:none}
@media (max-width: 720px){.v20-app .matrix.rating-table{font-size:12px}.v20-app .code-block{font-size:12px}.v20-app .nav-link{min-height:42px}}

/* V2.1 cloud backend connection */
.cloud-input{
  width:100%;
  min-width:220px;
  box-sizing:border-box;
  border:1px solid rgba(215,168,79,.35);
  background:rgba(7,27,19,.75);
  color:#f5f7f2;
  border-radius:10px;
  padding:10px 12px;
  outline:none;
}
.cloud-input:focus{border-color:#f3d27a; box-shadow:0 0 0 3px rgba(243,210,122,.12)}
.good-text{color:#38C172!important;font-weight:800}
.bad-text{color:#D94B4B!important;font-weight:800}

/* V2.3 premium visual repair: asset system, better mobile polish, focus states */
:root{
  --premium-glow:0 0 0 1px rgba(243,210,122,.22),0 24px 80px rgba(0,0,0,.45),0 0 42px rgba(215,168,79,.08);
  --glass:rgba(8,28,20,.74);
  --glass2:rgba(18,58,41,.62);
}
body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:
  radial-gradient(circle at 50% 42%,transparent 0 14%,rgba(243,210,122,.05) 14.3% 14.7%,transparent 15%),
  linear-gradient(90deg,transparent 0 49.85%,rgba(255,255,255,.06) 50%,transparent 50.15% 100%);
  opacity:.55;mix-blend-mode:screen}
.nav{box-shadow:var(--premium-glow);border-color:rgba(243,210,122,.18)}
.brand-mark{font-size:0;position:relative;overflow:hidden}.brand-mark:before{content:"8";font-size:18px;font-weight:1000;line-height:1;color:#ffe9a3}.brand-mark:after{content:"";position:absolute;inset:7px;border:1px solid rgba(255,255,255,.18);border-radius:50%}
.card,.player-card,.tactic-card{box-shadow:var(--premium-glow);border-color:rgba(243,210,122,.14)}
.card.premium-card{background:linear-gradient(145deg,rgba(24,70,50,.9),rgba(9,29,21,.92));border-color:rgba(243,210,122,.28)}
.btn:focus-visible,.nav-link:focus-visible,.pill:focus-visible{outline:3px solid rgba(243,210,122,.8);outline-offset:2px}
.title{background:linear-gradient(180deg,#fff7d7 0%,#f3d27a 44%,#9f742a 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none;filter:drop-shadow(0 18px 38px rgba(0,0,0,.5))}
.player-card{isolation:isolate}.player-card:after{content:"";position:absolute;left:-40%;top:-70%;width:70%;height:190%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.09),transparent);transform:rotate(22deg);transition:.5s ease;z-index:-1}.player-card:hover:after{left:110%}
.icon-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:14px}.icon-tile{border:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));border-radius:18px;padding:14px;display:grid;gap:6px;align-content:start;min-height:126px}.icon-tile b{font-size:15px;color:#f7e4ac}.icon-tile small{color:#9fb2a7;line-height:1.35}.asset-icon{width:42px;height:42px;border-radius:14px;display:inline-grid;place-items:center;background:linear-gradient(135deg,rgba(215,168,79,.28),rgba(78,163,255,.12));border:1px solid rgba(243,210,122,.28);position:relative}.asset-icon:before{content:"";width:20px;height:20px;border:2px solid #F3D27A;border-radius:50%;display:block}.icon-1:before{border-radius:4px 4px 12px 12px;border-top-width:5px}.icon-2:before{box-shadow:inset 0 0 0 5px rgba(243,210,122,.18)}.icon-3:before{border-radius:3px;transform:rotate(45deg)}.icon-4:before{border-radius:4px;width:24px;height:28px}.icon-5:before{border-radius:0;border-left:0;border-bottom:0;transform:rotate(45deg)}.icon-6:before{border-radius:14px 14px 6px 6px}.icon-7:before{border-radius:50% 50% 8px 8px}.icon-8:before{border-radius:50%;box-shadow:0 0 0 6px rgba(243,210,122,.12)}
.country-theme-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-top:12px}.theme-chip{display:flex;gap:9px;align-items:center;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.045);border-radius:999px;padding:9px 11px;color:#dbe6dd;font-size:13px}.theme-chip span{width:26px;height:18px;border-radius:999px;background:linear-gradient(90deg,#0f7b3a 0 33%,#f4d35e 33% 66%,#2256a5 66%);box-shadow:0 0 0 1px rgba(255,255,255,.13) inset}.theme-chip:nth-child(2n) span{background:linear-gradient(90deg,#75aadb,#fff,#f3d27a)}.theme-chip:nth-child(3n) span{background:linear-gradient(90deg,#183a75,#fff,#d71920)}.theme-chip:nth-child(5n) span{background:linear-gradient(90deg,#b81221,#f3d27a,#102f22)}
.code-block{white-space:pre-wrap;background:rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:14px;overflow:auto;color:#e7f2eb}
@media(max-width:760px){
  .nav{position:sticky;top:0;border-radius:0;margin:-14px -10px 12px}.nav-links{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;max-width:100%;scroll-snap-type:x proximity}.nav-link{scroll-snap-align:start;flex:0 0 auto}.icon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.country-theme-grid{grid-template-columns:1fr}.title{font-size:48px}.hero-actions .btn{min-height:48px}.btn{touch-action:manipulation}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* V2.4 art premium upgrade */
.v24-app .hero{position:relative;overflow:hidden;border-radius:32px;margin-top:18px;background:linear-gradient(135deg,rgba(215,168,79,.08),rgba(78,163,255,.05),rgba(13,42,29,.42));border:1px solid rgba(243,210,122,.18)}
.v24-app .hero:before{content:"";position:absolute;inset:-40%;background:conic-gradient(from 135deg,transparent 0 34%,rgba(243,210,122,.12) 42%,transparent 52% 100%);animation:v24Sweep 11s linear infinite;pointer-events:none}.v24-app .hero>*{position:relative}@keyframes v24Sweep{to{transform:rotate(360deg)}}
.v24-app .title{background:linear-gradient(180deg,#fff5c4,#d7a84f 48%,#8f6722);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none;filter:drop-shadow(0 16px 38px rgba(215,168,79,.18))}
.v24-app .player-card:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 0 42%,rgba(255,255,255,.09) 48%,transparent 56% 100%);transform:translateX(-140%);transition:.55s ease;pointer-events:none}.v24-app .player-card:hover:after{transform:translateX(140%)}
.art-hero{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;position:relative;overflow:hidden}.art-hero:before{content:"";position:absolute;right:-80px;top:-110px;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(243,210,122,.18),transparent 68%)}.art-kpi{width:138px;height:138px;border-radius:34px;border:1px solid rgba(243,210,122,.38);background:linear-gradient(145deg,rgba(215,168,79,.22),rgba(7,27,19,.78));display:grid;place-content:center;text-align:center;box-shadow:0 18px 55px rgba(0,0,0,.32);position:relative}.art-kpi b{font-size:42px;color:#F3D27A}.art-kpi span{font-size:11px;color:#dbe6dd;letter-spacing:.14em;font-weight:900}.art-title{font-size:32px;margin:10px 0;color:#F3D27A;letter-spacing:.04em}.art-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin-top:16px}.art-card{border:1px solid rgba(243,210,122,.18);background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));border-radius:22px;padding:16px;min-height:170px;display:grid;align-content:start;gap:9px;position:relative;overflow:hidden}.art-card:before{content:"";position:absolute;right:-46px;bottom:-60px;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,rgba(78,163,255,.13),transparent 66%)}.art-card b{font-size:18px;color:#f7e4ac}.art-card p{margin:0;color:#bcd0c4;line-height:1.6}.silhouette-showcase{display:flex;gap:10px;align-items:end;padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:26px;background:rgba(0,0,0,.16)}.silhouette-showcase span{display:block;width:48px;border-radius:26px 26px 12px 12px;background:linear-gradient(180deg,#F3D27A,#6a4b17);position:relative}.silhouette-showcase span:nth-child(1){height:90px}.silhouette-showcase span:nth-child(2){height:124px}.silhouette-showcase span:nth-child(3){height:104px}.silhouette-showcase span:before{content:"";position:absolute;top:-22px;left:50%;transform:translateX(-50%);width:32px;height:32px;border-radius:50%;background:#F3D27A}.silhouette-showcase span:after{content:"";position:absolute;left:-10px;right:-10px;top:30px;height:12px;border-radius:999px;background:rgba(243,210,122,.8)}
.asset-icon.icon-9:before{border-radius:4px;width:8px;height:28px;box-shadow:12px 6px 0 -2px #F3D27A,-12px 6px 0 -2px #F3D27A}.asset-icon.icon-10:before{border-radius:50%;width:25px;height:25px;border-style:dashed}.asset-icon.icon-11:before{border-radius:4px;width:26px;height:14px;transform:skewX(-18deg)}.asset-icon.icon-12:before{border-radius:999px;width:24px;height:10px;box-shadow:0 -10px 0 -2px rgba(243,210,122,.9),0 10px 0 -2px rgba(243,210,122,.9)}
.v24-app .btn.primary{background:linear-gradient(135deg,#f2d37a,#d7a84f 55%,#7a5418);box-shadow:0 16px 36px rgba(215,168,79,.18), inset 0 1px 0 rgba(255,255,255,.25)}.v24-app .card{box-shadow:0 20px 60px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.04)}
.v24-app .slot.filled{background:linear-gradient(180deg,rgba(215,168,79,.22),rgba(13,42,29,.95));border-color:rgba(243,210,122,.36)}.v24-app .result-hero{background:radial-gradient(circle at 50% 0,rgba(243,210,122,.16),transparent 34%),linear-gradient(180deg,rgba(13,42,29,.95),rgba(6,18,13,.96))}
@media(max-width:760px){.art-hero{grid-template-columns:1fr}.art-kpi{width:100%;height:auto;padding:18px}.silhouette-showcase{justify-content:center}.art-title{font-size:24px}.art-card-grid{grid-template-columns:1fr}.v24-app .hero{border-radius:22px}}


/* V2.9 mobile compatibility hardening */
.v29-app .nav-links{ -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain; }
.v29-app button, .v29-app .lineup-slot, .v29-app .bench-slot, .v29-app .player-card{ touch-action: manipulation; }
.v29-app .nav-link, .v29-app .btn{ min-height: 42px; }
@media (max-width: 640px){
  .v29-app .btn{ min-height: 46px; padding: 12px 15px; }
  .v29-app .lineup-slot, .v29-app .bench-slot{ min-height: 48px; }
  .v29-app .hero-actions{ gap:10px; }
  .v29-app .poster-canvas{ max-width:100%; height:auto; }
}


/* V3.1 极速 8-0 mode */
.quick-hero{padding-top:44px;padding-bottom:24px}
.quick-layout .players-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
.quick-result{background:linear-gradient(180deg,rgba(215,168,79,.11),rgba(13,42,29,.86));}
.nav-link[data-nav="quick"], .nav-link.active[data-nav="quick"]{color:var(--gold2)}
@media(max-width:760px){.quick-layout .players-grid{grid-template-columns:1fr}.quick-hero .title{font-size:54px}.quick-layout{gap:12px}}
