:root{--green:#61aa27;--green-dark:#4b911d;--green-soft:#eef8e8;--ink:#171b22;--text:#4f5863;
  --muted:#7e8792;--border:#dce3e6;--panel:rgba(255,255,255,.97);--danger:#b42318;
  --shadow:0 16px 42px rgba(38,49,56,.11)}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);background:#f7f9f8}
button,input{font:inherit}
a{color:var(--green-dark);text-decoration:none}
a:hover{text-decoration:underline}
.page{min-height:100vh;background:#fff url("assets/stadium-bg.svg") center/cover fixed no-repeat;display:flex;flex-direction:column}
.main{flex:1}
.brand img{display:block;width:330px;max-width:82vw;height:auto}
.brand{display:inline-flex;text-decoration:none!important}
.auth-main{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 18px 18px}
.auth-logo{margin-bottom:10px}
.card{width:560px;max-width:100%;background:var(--panel);border:1px solid rgba(195,203,210,.76);border-radius:11px;box-shadow:var(--shadow);padding:29px 38px 31px}
.card-head{text-align:center;margin-bottom:25px}
.card-head h1{margin:0 0 8px;font-size:27px;letter-spacing:-.5px}
.card-head h1 span{color:var(--green)}
.card-head p{margin:0;color:#69717c;font-size:15px}
.field-label{display:block;font-size:12px;font-weight:800;margin:0 0 7px;color:#343b45}
.field{height:50px;border:1px solid #ccd3d9;border-radius:5px;background:#fff;display:flex;align-items:center;margin-bottom:7px;transition:.15s}
.field:focus-within{border-color:#79b84c;box-shadow:0 0 0 3px rgba(97,170,39,.10)}
.field .ico{width:45px;text-align:center;color:#9099a4;font-size:18px}
.field input{flex:1;min-width:0;height:100%;border:0;outline:0;padding:0 12px 0 0;background:transparent;color:var(--ink);font-size:14px}
.field select{flex:1;min-width:0;height:100%;border:0;outline:0;padding:0 34px 0 0;background:transparent;color:var(--ink);font-size:14px;cursor:pointer}
.field input::placeholder{color:#a3aab2}
.toggle{height:100%;width:44px;border:0;background:transparent;color:#89929c;cursor:pointer}
.error{min-height:18px;color:var(--danger);font-size:12px;margin-bottom:8px}
.notice{padding:10px 12px;border-radius:6px;margin:0 0 15px;font-size:13px}
.notice.error-box{background:#fff3f2;border:1px solid #ffd5d0;color:var(--danger)}
.notice.success{background:#eff9e9;border:1px solid #cbe7b8;color:#397816}
.check{display:flex;align-items:flex-start;gap:9px;font-size:13px;line-height:1.45;color:#474f59;margin:3px 0 16px}
.check input{width:17px;height:17px;margin-top:1px;accent-color:var(--green)}
.btn{min-height:49px;border-radius:5px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;font-weight:800;cursor:pointer;text-decoration:none!important}
.btn-primary{width:100%;color:#fff;background:linear-gradient(180deg,#70b92d,#559b20);border-color:#559b20;box-shadow:0 3px 9px rgba(76,139,29,.14)}
.btn-primary:hover{background:linear-gradient(180deg,#65ac27,#4c8e1c)}
.btn-secondary{width:100%;background:#fff;color:#3d7420;border-color:#6bae3a}
.btn-secondary:hover{background:#f7fcf4}
.divider{display:flex;align-items:center;gap:15px;color:#858d97;font-size:11px;font-weight:800;margin:18px 0}
.divider:before,.divider:after{content:"";height:1px;background:#d9dee2;flex:1}
.subline{text-align:center;margin-top:16px;color:#626b75;font-size:13px}
.register-card{padding-top:26px;padding-bottom:24px}
.register-card .card-head{margin-bottom:20px}
.register-card .field{height:46px}
.register-card .error{margin-bottom:5px}
.footer{background:rgba(255,255,255,.98);border-top:1px solid #e0e5e7;min-height:70px;display:flex;align-items:center}
.footer-inner{width:min(1280px,calc(100% - 48px));margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;font-size:12px;color:#68717b}
.footer-brand{display:flex;align-items:center;gap:9px}
.footer-brand b{color:#20252b}
.footer-brand b span{color:var(--green-dark)}
.footer-links{display:flex;gap:16px;align-items:center}
.footer-links span{height:16px;width:1px;background:#d8dee1}
.footer-credit{justify-self:end}
.footer-credit b{color:var(--green-dark);font-weight:600}
.header{background:rgba(255,255,255,.98);border-bottom:1px solid #67ac34}
.header-inner{width:min(1320px,calc(100% - 64px));min-height:94px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:28px}
.header .brand img{width:235px}
.account{display:flex;align-items:center;gap:11px}
.avatar{width:43px;height:43px;border:1px solid #a7d488;border-radius:50%;display:grid;place-items:center;color:var(--green-dark);font-size:22px}
.account-text{display:flex;flex-direction:column}
.account-text b{font-size:14px}
.account-text span{font-size:12px;color:var(--green-dark);margin-top:2px}
.logout{border:0;border-left:1px solid #d6dce0;background:transparent;padding:8px 0 8px 18px;margin-left:12px;color:#3d454f;cursor:pointer}
.logout:hover{color:var(--green-dark)}
.server-main-wrap{width:min(1090px,calc(100% - 44px));margin:0 auto;padding:36px 0 28px}
.server-title{text-align:center;margin-bottom:27px}
.server-title h1{margin:0;font-size:31px;letter-spacing:-.6px}
.server-title h1 span{color:var(--green-dark)}
.server-title p{margin:10px 0 0;color:#4d5660;font-size:14px}
.server-card{background:rgba(255,255,255,.97);border:1px solid var(--border);border-radius:8px;box-shadow:0 9px 24px rgba(52,62,68,.07);overflow:hidden}
.server-head,.server-row{display:grid;grid-template-columns:2.2fr 1fr .9fr 1fr 1.15fr .72fr;align-items:center;column-gap:12px}
.server-head{min-height:37px;padding:0 18px;border-bottom:1px solid #dbe1e5;color:#333a43;font-size:10px;font-weight:800}
.server-head>div:not(:first-child){text-align:center}
.server-row{min-height:72px;padding:8px 18px;border-bottom:1px solid #e4e8eb}
.server-row:last-child{border-bottom:0}
.server-info{display:flex;align-items:center;gap:12px}
.globe{width:39px;height:39px;border:2px solid var(--green);color:var(--green-dark);border-radius:50%;display:grid;place-items:center;font-size:22px;flex:0 0 auto}
.server-info h2{font-size:14px;margin:0 0 3px}
.server-info p{font-size:11px;color:#65707a;margin:0}
.stat{text-align:center;font-size:12px}
.enter{min-height:34px;padding:0 14px;font-size:11px;width:auto}
.server-note{width:480px;max-width:100%;margin:23px auto 0;padding:14px 20px;text-align:center;background:rgba(255,255,255,.96);border:1px solid #dde3e7;border-radius:7px;color:#535d67;font-size:12px}
.server-note b{display:block;color:var(--green-dark);font-size:12px;margin-bottom:5px}
.server-note p{margin:0;line-height:1.45}
.server-manager-notice{width:760px;max-width:calc(100% - 28px);padding:18px 24px 20px;text-align:left;border-color:#cfdfd3;box-shadow:0 8px 24px rgba(24,71,38,.06)}
.server-manager-notice>b{text-align:center;font-size:12px;letter-spacing:.025em;margin-bottom:13px;color:#16833a}
.server-manager-notice-copy{color:#48534c;font-size:12px;line-height:1.62}
.server-manager-notice-copy p{margin:0 0 10px}
.server-manager-notice-copy strong{color:#203329}
.server-manager-greeting{font-weight:700;color:#203329}
.server-manager-signoff{margin-top:15px!important;padding-top:12px;border-top:1px solid #e1e9e3}
.server-manager-signoff span{font-size:11px;color:#748078}
.server-pause-notice{margin:0 0 14px;padding:9px 11px;border:1px solid #e6c4bf;border-radius:4px;background:#fff4f2;color:#a23d31;font-weight:700;text-align:center}
.server-pause-notice[hidden]{display:none!important}
.entered{flex:1;display:grid;place-items:center;padding:40px 18px}
.entered-card{width:520px;max-width:100%;text-align:center;background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);padding:36px}
.entered-icon{width:56px;height:56px;margin:0 auto 16px;border-radius:50%;display:grid;place-items:center;background:var(--green-soft);color:var(--green-dark);font-size:25px;font-weight:900}
.entered-card h1{margin:0 0 8px;font-size:24px}
.entered-card p{margin:0 0 20px;color:#59636e;line-height:1.5}
.server-countdown{display:flex;align-items:center;justify-content:center;min-height:32px}
.server-countdown b{font-variant-numeric:tabular-nums;font-size:12px}
.server-sim-wrap{display:grid;gap:4px;min-width:132px}
.server-sim-wrap small{font-size:9px;color:#6b747d;font-weight:700}
.server-sim-track{position:relative;height:18px;border:1px solid #8eaa92;background:#eef3ef;overflow:hidden;box-shadow:inset 0 1px 2px rgba(0,0,0,.08)}
.server-sim-track>span{position:absolute;inset:0 auto 0 0;background:linear-gradient(180deg,#38a852,#197c35);transition:width .18s linear}
.server-sim-track>b{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:10px;font-weight:900;text-shadow:0 1px 1px rgba(0,0,0,.45);font-variant-numeric:tabular-nums}
.enter:disabled,.enter.server-locked{cursor:not-allowed;opacity:.62;background:#8a958d;border-color:#7a847d;box-shadow:none}
.server-row .stat>b{font-weight:700;font-variant-numeric:tabular-nums}
/* in-game shell and no-team welcome state */
.game-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7f6;color:#1a2028}
.game-header{background:rgba(255,255,255,.99);border-bottom:1px solid #6caf3a;position:relative;z-index:20}
.game-header-inner{width:min(1480px,calc(100% - 46px));height:76px;margin:0 auto;display:flex;align-items:center;gap:32px}
.game-brand{display:flex;align-items:center;flex:0 0 auto}
.game-brand img{display:block;width:182px;height:auto}
.game-nav{height:100%;display:flex;align-items:stretch;gap:2px;flex:1}
.nav-menu{position:relative;display:flex;align-items:stretch}
.nav-trigger,.nav-search,.counter,.icon-action{border:0;background:transparent;color:#222a33;cursor:pointer}
.nav-trigger{display:flex;align-items:center;gap:7px;padding:0 15px;font-size:13px}
.nav-trigger:hover,.nav-menu.open>.nav-trigger,.nav-search:hover{background:#f1f5f1;color:var(--green-dark)}
.chev{font-size:12px;color:#6d747c}
.nav-dropdown{display:none;position:absolute;top:67px;left:0;min-width:155px;background:#fff;border:1px solid #dce2e5;border-radius:0 0 6px 6px;box-shadow:0 10px 24px rgba(27,38,45,.12);padding:5px;z-index:50}
.nav-menu.open>.nav-dropdown{display:block}
.nav-drop-item{display:block;width:100%;text-align:left;border:0;background:#fff;padding:9px 11px;border-radius:4px;color:#303842;font-size:12px;cursor:pointer}
.nav-drop-item:hover{background:#f1f8ec;color:var(--green-dark)}
.nav-search{font-size:24px;width:44px}
.game-actions{margin-left:auto;display:flex;align-items:center;gap:7px;height:100%}
.counter{display:flex;align-items:center;justify-content:center;gap:5px;color:var(--green-dark);padding:8px 8px;font-size:15px;line-height:1}
.counter b{font-size:11.5px;color:#3a424b;font-weight:700;line-height:1}
.coin-counter{gap:6px;padding-left:6px;padding-right:8px}
.header-coin-icon{width:22px;height:22px;display:block;flex:0 0 22px;object-fit:contain;border-radius:50%;filter:drop-shadow(0 1px 1px rgba(0,0,0,.18)) drop-shadow(0 0 1px rgba(255,255,255,.12))}
.coin-counter:hover .header-coin-icon{transform:scale(1.04)}
.online-counter{gap:6px;padding-left:6px;padding-right:8px}
.header-online-icon{width:22px;height:22px;display:block;flex:0 0 22px;object-fit:contain;filter:drop-shadow(0 1px 1px rgba(0,0,0,.16)) drop-shadow(0 0 1px rgba(255,255,255,.10));transition:transform .16s ease,filter .16s ease}
.online-counter:hover .header-online-icon{transform:scale(1.04)}
.mail-counter{gap:6px;padding-left:6px;padding-right:8px;position:relative}
.header-mail-icon{width:22px;height:22px;display:block;flex:0 0 22px;object-fit:contain;filter:drop-shadow(0 1px 1px rgba(0,0,0,.16)) drop-shadow(0 0 1px rgba(255,255,255,.10));transition:transform .16s ease,filter .16s ease,opacity .16s ease}
.mail-counter:hover .header-mail-icon{transform:scale(1.04)}
@keyframes mail-icon-blink{0%,100%{transform:scale(1);opacity:1;filter:drop-shadow(0 1px 1px rgba(0,0,0,.22))}50%{transform:scale(1.09);opacity:.76;filter:drop-shadow(0 0 8px rgba(135,255,120,.72))}}
@keyframes mail-count-glow{0%,100%{color:#fff}50%{color:#a9ff8e}}
.mail-counter.has-new-mail .header-mail-icon{animation:mail-icon-blink 1.15s ease-in-out infinite}
.mail-counter.has-new-mail b{animation:mail-count-glow 1.15s ease-in-out infinite}

.icon-action{width:31px;height:31px;border:1px solid #cfd7db;border-radius:50%;font-weight:800}
.profile-menu{margin-left:6px}
.profile-trigger{padding:0 7px 0 10px}
.profile-avatar{width:35px;height:35px;border-radius:50%;background:#eef5eb;color:var(--green-dark);display:grid;place-items:center;font-size:20px}
.profile-name{font-weight:700;font-size:12px}
.profile-dropdown{left:auto;right:0;top:60px;min-width:145px}
.game-statusbar{background:rgba(255,255,255,.97);border-bottom:1px solid #d9e0e3;position:relative;z-index:10}
.game-statusbar-inner{width:min(1480px,calc(100% - 46px));height:43px;margin:0 auto;display:flex;align-items:center;gap:28px;font-size:12px;color:#56606a}
.status-season{display:flex;align-items:center;gap:8px;color:#2b323a}
.status-season:first-letter{color:var(--green-dark)}
.status-tick{display:flex;gap:6px;align-items:center}
.status-tick b{color:#313941}
.status-server{margin-left:auto;color:#7a838c;font-size:11px}
.game-main{position:relative;flex:1;width:100%;padding:42px 24px 74px;overflow:hidden;background:linear-gradient(rgba(255,255,255,.89),rgba(255,255,255,.82)),url("assets/stadium-bg.svg") center/cover fixed no-repeat}
.game-watermark{position:absolute;inset:0;pointer-events:none;opacity:.045;background-image:url("assets/soccersim-logo.svg");background-size:320px auto;background-repeat:repeat;background-position:80px 35px;filter:grayscale(1)}
.system-panel{position:relative;z-index:2;width:min(960px,calc(100% - 20px));margin:0 auto;background:rgba(255,255,255,.985);border:1px solid #d8dfe2;border-radius:7px;box-shadow:0 9px 25px rgba(39,50,58,.08);overflow:hidden}
.system-panel-title{height:47px;padding:0 20px;display:flex;align-items:center;gap:9px;border-bottom:1px solid #dce2e5;color:#16802d;font-size:13px}
.message-icon{color:#16802d}
.panel-help{margin-left:auto;width:20px;height:20px;border:1px solid #188638;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:11px}
.system-panel-body{padding:25px 27px 23px;color:#3c4650;font-size:13px;line-height:1.55}
.welcome-title{display:flex;align-items:center;gap:15px;margin-bottom:17px}
.welcome-title h1{margin:0;color:#202831;font-size:25px;font-weight:500}
.welcome-avatar{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(180deg,#1ba143,#087128);color:#fff;font-size:23px}
.system-panel-body>p{margin:0 0 12px}
.welcome-options{list-style:none;padding:0;margin:17px 0 22px;display:grid;gap:14px}
.welcome-options li{display:grid;grid-template-columns:28px 1fr;align-items:center}
.option-icon{width:23px;height:23px;display:grid;place-items:center;color:#14852f;font-size:17px}
.inline-link{border:0;background:transparent;color:#16802d;font:inherit;font-weight:700;padding:0;cursor:pointer}
.inline-link:hover{text-decoration:underline}
.important-box{display:flex;gap:12px;padding:14px 16px;border:1px solid #cfe6d3;background:#f4fbf5;border-radius:5px;color:#39464d}
.important-box b{color:#177e2e}
.important-icon{width:24px;height:24px;flex:0 0 auto;border:2px solid #16802d;color:#16802d;border-radius:50%;display:grid;place-items:center;font-weight:800;font-family:Georgia,serif}
.coming-toast{position:fixed;left:50%;bottom:88px;transform:translate(-50%,15px);z-index:100;opacity:0;pointer-events:none;background:#202a25;color:#fff;border-radius:5px;padding:10px 16px;font-size:12px;box-shadow:0 8px 22px rgba(0,0,0,.18);transition:.18s}
.coming-toast.show{opacity:1;transform:translate(-50%,0)}
.game-footer{background:#fff;border-top:1px solid #6caf3a;position:relative;z-index:3}
.game-footer-inner{width:min(1480px,calc(100% - 46px));min-height:99px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px}
.game-footer-brand{display:flex;align-items:flex-start;gap:13px;color:#69727b;font-size:11px}
.mini-ball{font-size:30px;line-height:1}
.game-footer-brand b{display:block;color:#2d343b;font-size:12px;margin-bottom:4px}
.game-footer-brand p{margin:0;line-height:1.5}
.back-top{border:0;background:transparent;color:#16802d;font-size:12px;cursor:pointer;padding:12px}
.compact-back{width:auto;margin-top:18px;min-height:40px}
.system-panel-body h1{color:#202831}
/* Countries and Leagues */
.nav-drop-link{text-decoration:none;box-sizing:border-box}
.countries-shell{position:relative;z-index:2;width:min(1040px,calc(100% - 20px));margin:0 auto;display:grid;gap:18px}
.countries-panel{background:rgba(255,255,255,.985);border:1px solid #d8dfe2;border-radius:7px;box-shadow:0 8px 24px rgba(39,50,58,.07);overflow:hidden}
.countries-panel-title{height:45px;padding:0 18px;display:flex;align-items:center;gap:9px;border-bottom:1px solid #dce2e5;color:#263039;font-size:13px;background:#fbfcfb}
.countries-panel-title b{font-weight:700}
.countries-panel-title .panel-help{margin-left:auto}
.panel-title-icon{color:#16802d;font-size:16px}
.countries-panel-body{padding:14px}
.country-info-banner{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid #cce4c6;border-radius:5px;background:#eef8e9;color:#41633d;font-size:12px;line-height:1.45}
.country-info-banner.compact{margin-bottom:16px}
.info-dot{width:19px;height:19px;display:grid;place-items:center;flex:0 0 auto;border:1px solid #62a94a;border-radius:50%;color:#378825;font-weight:800;font-family:Georgia,serif;background:#fff}
.world-map-wrap{position:relative;width:100%;aspect-ratio:1200/560;height:auto;margin:10px auto 0;overflow:hidden;background:#fff;border-radius:5px}
.world-map-wrap:before{content:"";position:absolute;inset:18px 20px;border-radius:8px;background:radial-gradient(circle at 50% 48%,rgba(92,153,59,.035),transparent 58%);pointer-events:none}
.world-map-wrap img{position:absolute;z-index:1;inset:0;width:100%;height:100%;object-fit:contain;display:block}
.map-pin{position:absolute;z-index:2;width:26px;height:26px;border:3px solid #178232;border-radius:50%;display:grid;place-items:center;color:#178232;background:rgba(255,255,255,.92);font-size:20px;font-weight:900;line-height:1;box-shadow:0 3px 8px rgba(15,90,34,.16);transform:translate(-50%,-50%)}
.map-pin:after{content:"";position:absolute;width:11px;height:3px;background:#178232;right:-8px;bottom:1px;transform:rotate(42deg);border-radius:2px}
.pin-us{left:26.69%;top:33.34%}
.pin-de{left:52.53%;top:24.45%}
.pin-br{left:35.53%;top:66.63%}
.country-groups{display:grid;grid-template-columns:.85fr 1.5fr 1.1fr;gap:32px;padding:3px 3px 13px}
.country-group h3{margin:0 0 9px;color:#20272e;font-size:12px}
.country-list{display:grid;gap:1px}
.country-link{border:0;background:transparent;display:flex;align-items:center;gap:7px;min-height:25px;padding:3px 5px;text-align:left;color:#287b36;font-size:12px;cursor:pointer;border-radius:4px}
.country-link:hover{background:#f0f8ec;color:#145d24}
.country-flag{font-size:14px;line-height:1}
.manager-count{color:#4b5961}
.list-panel .countries-panel-body{padding:13px 14px 18px}
/* reference-accurate world-map search markers and bundled country flags */
.map-pin{width:28px;height:28px;padding:0;border:0;border-radius:50%;
  background:#15952f;color:#fff;display:grid;place-items:center;
  box-shadow:0 2px 5px rgba(20,112,43,.22);cursor:pointer;
  transform:translate(-50%,-50%);transition:transform .14s ease,background .14s ease;}
.map-pin:hover{background:#0f8127;transform:translate(-50%,-50%) scale(1.06)}
.map-pin:focus-visible{outline:2px solid #0f8127;outline-offset:2px}
.map-pin svg{width:17px;height:17px;display:block;fill:none;stroke:#fff;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}
.map-pin:after{display:none!important}
/* Visual centroids of the actual country shapes in the bundled 1200x560 SVG. */
.pin-us{left:25.6401%;top:31.9838%}
.pin-de{left:52.3625%;top:24.4608%}
.pin-br{left:35.9416%;top:64.3461%}
.country-flag{width:18px;height:12px;display:block;flex:0 0 18px;object-fit:fill;border:1px solid rgba(30,39,44,.12);border-radius:1px;box-shadow:0 0 0 .5px rgba(255,255,255,.45)}
.country-link{gap:8px}
.country-group.europe .country-list,.country-group.south-america .country-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px}
/* clickable continent zoom maps */
.back-world{display:inline-flex;align-items:center;margin:13px 0 8px;color:#2476b8;font-size:12px;font-weight:500;text-decoration:none}
.back-world:hover{text-decoration:underline}
.region-map-wrap{position:relative;width:100%;height:390px;margin:2px auto 0;border:1px solid #dce2e5;border-radius:5px;background:#fff;overflow:hidden}
.region-map-wrap>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}
.region-flag-pin{position:absolute;z-index:3;width:24px;height:16px;object-fit:fill;border:1px solid rgba(35,40,45,.22);box-shadow:0 1px 2px rgba(0,0,0,.12);border-radius:1px;transform:translate(-50%,-50%);background:#fff}
.region-list-panel .countries-panel-body{padding:13px 14px 18px}
.region-grid{display:grid;gap:0 18px}
.region-country{min-height:34px;border:0;border-bottom:1px solid #edf0f1;background:transparent;display:flex;align-items:center;gap:8px;padding:6px 5px;text-align:left;color:#252d35;font-size:12px;cursor:pointer}
.region-country:hover{background:#f3f9ef;color:#166f2a}
.region-country .manager-count{margin-left:2px}
.region-country .country-flag{width:22px;height:14px;flex-basis:22px}
.europe-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.north-grid{grid-template-columns:1fr;max-width:100%}
.south-grid{grid-template-columns:repeat(10,minmax(0,1fr));gap:0 8px}
.south-grid .region-country{font-size:10.5px;gap:5px;white-space:nowrap}
.south-grid .region-country .country-flag{width:20px;height:13px;flex-basis:20px}
/* league flags are the only active markers on zoom maps */
.region-map-wrap{min-height:430px;
  height:auto;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:14px 18px;
  box-sizing:border-box;
  overflow:hidden;}
.region-map-canvas{position:relative;
  flex:0 0 auto;}
.region-map-canvas>.region-map-image{position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;}
.region-canvas-europe{width:min(100%,800px);
  aspect-ratio:250/145;}
.region-canvas-north-america{width:min(100%,750px);
  aspect-ratio:360/230;}
.region-canvas-south-america{width:min(46%,300px);
  aspect-ratio:180/260;}
.region-south-america.region-map-wrap{min-height:470px}
.region-flag-pin{width:15px;
  height:10px;
  border:1px solid rgba(30,35,39,.20);
  border-radius:1px;
  box-shadow:0 1px 2px rgba(0,0,0,.14);
  transform:translate(-50%,-50%);
  background:#fff;
  object-fit:fill;
  pointer-events:none;}
.region-map-canvas>.region-flag-pin{position:absolute;
  right:auto;
  bottom:auto;
  width:15px;
  height:10px;
  max-width:none;
  max-height:none;
  object-fit:fill;}
/* fix: map image styling must never resize league flag overlays */
.region-map-canvas > img.region-map-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block;z-index:1}
.region-map-canvas > img.region-flag-pin{position:absolute;z-index:4;right:auto!important;bottom:auto!important;width:15px!important;height:10px!important;max-width:15px!important;max-height:10px!important;object-fit:fill!important;transform:translate(-50%,-50%);border:1px solid rgba(30,35,39,.24);border-radius:1px;box-shadow:0 1px 2px rgba(0,0,0,.16);background:#fff}
/* clean regional maps: only real country borders, no horizontal guide lines */
.region-map-wrap{background:#fff}
.region-map-canvas{overflow:visible}
.region-canvas-north-america{width:min(92%,720px);aspect-ratio:360/230}
.region-north-america.region-map-wrap{min-height:430px;padding:18px 24px}
/* country detail pages opened from region flag clicks */
.region-flag-button{position:absolute;z-index:5;transform:translate(-50%,-50%);padding:0;border:0;background:transparent;cursor:pointer}
.region-flag-button:focus-visible{outline:2px solid #1b7c2f;outline-offset:3px;border-radius:2px}
.region-flag-button>.region-flag-pin{position:static!important;transform:none!important;display:block}
.country-page-shell{gap:12px}
.country-breadcrumb{font-size:12px;color:#6e7781;padding:0 3px}
.country-breadcrumb a{color:#6f7881}
.country-header-row{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap}
.country-header-row h1{margin:0;display:flex;align-items:center;gap:10px;font-size:30px;font-weight:500;color:#1f2730}
.country-title-flag{width:18px;height:12px;border:1px solid rgba(20,27,33,.15)}
.country-tabs{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.country-tab{padding:9px 14px;border-radius:5px;color:#2b7fc0;background:transparent;border:1px solid transparent;font-size:13px;text-decoration:none!important}
.country-tab.active{background:#2e85c7;color:#fff}
.country-tab:hover{background:#eef4f8}
.country-detail-card{background:rgba(255,255,255,.985);border:1px solid #d8dfe2;border-radius:7px;box-shadow:0 8px 24px rgba(39,50,58,.07);overflow:hidden}
.placeholder-card{padding:24px 26px}
.placeholder-box h3{margin:0 0 10px;font-size:20px;color:#1f2730}
.placeholder-box p{margin:0;color:#5a6772;line-height:1.55;font-size:14px}
.detail-section-title{padding:10px 16px;border-bottom:1px solid #dce2e5;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;color:#2d353d;background:#fff}
.league-headline{display:flex;align-items:center;gap:8px;font-size:16px;color:#293139}
.league-label{width:15px;height:20px;border-radius:3px;display:inline-block;background:#3476e6;position:relative}
.league-label:before{content:"";position:absolute;inset:4px 5px auto auto;width:5px;height:5px;background:#fff;border-radius:1px}
.league-label.league-green{background:#2a9b5a}
.league-label.league-blue{background:#3476e6}
.detail-season-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.detail-select{display:flex;align-items:center;gap:10px;font-size:13px}
.detail-select select{height:34px;border:1px solid #cfd7dc;border-radius:4px;padding:0 34px 0 12px;background:#fff;color:#2d3640}
.league-two-col{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(290px,.95fr);gap:22px;padding:18px 14px 18px}
.league-box{min-width:0}
.league-table-box{overflow:auto}
.league-subtabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-bottom:18px;border-bottom:1px solid #dfe5e8;margin-bottom:18px}
.league-subtab{border:1px solid transparent;background:transparent;color:#2d7fc0;padding:7px 10px;border-radius:4px;cursor:pointer;font-size:13px}
.league-subtab.active{background:#fff;border-color:#d9e1e6;color:#333}
.league-subtab:hover{background:#f5f8fa}
.standings-table{width:100%;border-collapse:collapse;font-size:13px}
.standings-table th,.standings-table td{padding:7px 8px;border-bottom:1px solid #e6ebee;text-align:left;color:#38434c}
.standings-table th{font-weight:700;color:#262f37}
.standings-table td:not(:nth-child(2)),.standings-table th:not(:nth-child(2)){text-align:center}
.standings-table td.team-cell,.standings-table th:nth-child(2){text-align:left}
.standings-table tbody tr:hover{background:#f8fbfd}
.promotion-row{background:#eef8e9}
.relegation-row{background:#faecec}
.pos-cell{white-space:nowrap}
.pos-cell b{font-weight:500;margin-left:4px}
.status-chip{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:18px;border-radius:3px;font-size:11px;font-weight:700;color:#4a5962;margin-right:7px}
.status-chip.cl{background:#f2f6f8}
.status-chip.el{background:#f4efe2}
.team-cell{white-space:nowrap}
.mini-club,.champion-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;margin-right:5px;border-radius:3px;background:#cfd7de;color:#5f6972;font-size:9px;vertical-align:middle}
.mini-club.blue{background:#d8e8ff;color:#3168c5}
.mini-club.green{background:#dbf4de;color:#2c9246}
.mini-club.gold{background:#f8f0c9;color:#986f00}
.mini-club.orange{background:#fde5d7;color:#ba5a20}
.mini-club.purple{background:#ede0ff;color:#7442b0}
.champion-icon{background:#fdf0c4;color:#b88b00}
.side-box{display:grid;gap:20px;align-content:start}
.info-card{padding-top:6px}
.info-card h3{margin:0 0 14px;text-align:center;color:#232c34;font-size:14px}
.scorer-list,.champions-list{display:grid;gap:2px}
.scorer-row,.champion-row{display:grid;align-items:center;gap:10px;padding:5px 0;border-bottom:1px solid #e6ebee}
.scorer-row{grid-template-columns:24px minmax(0,1fr) 34px minmax(120px,1fr)}
.champion-row{grid-template-columns:120px 1fr minmax(130px,1fr)}
.scorer-main a,.plain-link{color:#2c80c2;background:transparent;border:0;padding:0;cursor:pointer;text-decoration:none}
.scorer-goals{text-align:center;color:#3c454e}
.scorer-club,.champion-club{white-space:nowrap}
.champion-season{font-weight:700}
.champion-manager{color:#53606a}
.all-stats-wrap{text-align:center;padding-top:12px}
.cup-round{padding-bottom:18px;border-bottom:1px solid #e6ebee;margin-bottom:16px}
.cup-round:last-child{margin-bottom:0;border-bottom:0}
.cup-round h3{margin:0 0 10px;text-align:center;font-size:14px;color:#2b333b}
.cup-round-list{display:grid;gap:3px}
.cup-match{display:grid;grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr) auto;gap:10px;align-items:center;padding:4px 0;border-bottom:1px solid #eef2f4}
.cup-match:last-child{border-bottom:0}
.cup-team{overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.cup-vs{text-align:center;color:#49525c}
.cup-score{white-space:nowrap;color:#2d7fc0}
.panel-button-row{padding-top:8px}
/* full league subpages: table, form, matches, team of round/season */
.league-subtab{display:inline-flex;align-items:center;text-decoration:none!important}
.league-subtab.active{background:#fff;border-color:#d9e1e6;color:#333;box-shadow:0 1px 1px rgba(25,35,42,.03)}
.season-title{font-size:15px;color:#2d353d}
.empty-mini{padding:14px 6px;color:#7a848d;text-align:center;font-size:12px;border-top:1px solid #eef1f3}
.form-table th:nth-child(3),.form-table td:nth-child(3){text-align:left!important}
.form-cells{display:flex;align-items:center;white-space:nowrap;min-height:31px}
.form-track{position:relative;display:inline-flex;align-items:center;gap:11px;padding:3px 5px;isolation:isolate}
.form-track:before{content:"";position:absolute;z-index:0;left:15px;right:15px;top:50%;height:2px;transform:translateY(-50%);background:#d6ddd8;border-radius:999px}
.form-result{position:relative;z-index:1;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border:2px solid #fff;border-radius:50%;font-size:10.5px;font-weight:700;line-height:1;color:#fff;box-shadow:0 0 0 1px rgba(39,52,44,.14),0 1px 2px rgba(0,0,0,.08)}
.form-result.win{background:#2a9b4c;color:#fff}
.form-result.draw{background:#e3a52b;color:#fff}
.form-result.loss{background:#d94a45;color:#fff}
.form-result.none{background:#c7cfca;color:#fff}
.form-result.latest{box-shadow:0 0 0 2px rgba(17,119,51,.16),0 1px 2px rgba(0,0,0,.08)}
.matches-box{padding:0 0 8px}
.matches-box>.league-subtabs{margin:18px 14px 6px}
.matches-body{padding:0 14px 18px}
.match-turn{margin-top:8px}
.match-turn h3{font-size:16px;font-weight:500;margin:0;padding:11px 0 16px;color:#2a333c}
.match-list{border-top:1px solid #dfe4e7}
.league-match-row{display:grid;grid-template-columns:minmax(0,1fr) 120px minmax(0,1fr) 70px;align-items:center;min-height:34px;border-bottom:1px solid #e5e9ec;background:#fbfcfc;font-size:13px}
.league-match-row:nth-child(even){background:#fff}
.match-team{padding:4px 7px;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.match-team.away{text-align:right}
.match-score{display:grid;grid-template-columns:1fr 20px 1fr;align-items:center;text-align:center;color:#313942}
.match-score b{font-weight:500}
.match-report{text-align:right;padding-right:6px}
.best-team-box{padding:18px 14px}
.best-team-box>.league-subtabs{margin-bottom:0}
.best-team-body{padding:0 0 8px}
.players-rating-table{width:min(610px,100%);border-collapse:collapse;font-size:13px;margin-top:0}
.players-rating-table th,.players-rating-table td{border-bottom:1px solid #dfe4e7;padding:7px 8px;text-align:left}
.players-rating-table th{color:#242d35}
.players-rating-table th:nth-child(2),.players-rating-table td:nth-child(2),.players-rating-table th:last-child,.players-rating-table td:last-child{text-align:center}
.player-dot{margin-right:6px;color:#4b911d;font-size:11px}
.league-empty-state{width:min(610px,100%);padding:50px 22px;text-align:center;color:#69747d}
.league-empty-icon{width:46px;height:46px;margin:0 auto 12px;border:1px solid #cfe0c8;border-radius:50%;display:grid;place-items:center;color:#4b911d;background:#f5fbf2;font-size:23px}
.league-empty-state h3{margin:0 0 7px;color:#28323a;font-size:18px}
.league-empty-state p{margin:0 auto;max-width:480px;line-height:1.55}
.season-nav-buttons{display:flex;gap:10px;padding-top:16px}
.season-nav-buttons .compact-back{margin:0}
.btn:disabled{opacity:.45;cursor:not-allowed}
/* unified Soccersim stadium theme + team pages */
.game-page{background:#eef3ef;color:#172019}
.game-header{background:linear-gradient(180deg,#074b24,#043719);border-bottom:1px solid rgba(112,210,91,.7);box-shadow:0 5px 18px rgba(0,48,22,.16)}
.game-header-inner{width:min(1450px,calc(100% - 42px));height:72px;gap:28px}
.game-brand img{width:190px;filter:brightness(0) invert(1);opacity:.98}
.nav-trigger,.nav-search,.counter,.icon-action{color:#fff}
.nav-trigger{font-weight:700}
.chev{color:#b9d7c5}
.nav-trigger:hover,.nav-menu.open>.nav-trigger,.nav-search:hover{background:rgba(255,255,255,.09);color:#fff}
.counter{color:#d9f6df}
.counter b{color:#fff}
.icon-action{border-color:rgba(255,255,255,.38);color:#fff}
.profile-avatar{background:#fff;color:#0a7431}
.profile-name{color:#fff}
.profile-trigger:hover{background:rgba(255,255,255,.08)!important}
.nav-dropdown{top:64px;border-color:#d7e0da}
.game-statusbar{background:#07100a;border-bottom:0;box-shadow:0 2px 6px rgba(0,0,0,.12)}
.game-statusbar-inner{height:36px;color:#fff}
.status-season{color:#fff}
.status-season b{color:#fff}
.status-season:before{color:#25bf50}
.status-tick,.status-tick b,.status-server{color:#dfe9e2}
.status-server{font-weight:600}
.game-main{padding:32px 24px 62px;background:linear-gradient(rgba(255,255,255,.60),rgba(244,250,245,.62)),url("assets/stadium-bg.svg") center/cover fixed no-repeat;overflow:visible}
.game-watermark{display:none}
.countries-main{padding-top:28px}
.countries-shell,.system-panel,.team-page-shell{position:relative;z-index:2}
.countries-panel,.country-detail-card,.system-panel,.team-card{border-color:rgba(199,210,203,.78);box-shadow:0 10px 30px rgba(24,45,32,.11);background:rgba(255,255,255,.96)}
.countries-panel-title,.system-panel-title,.team-card-title{background:linear-gradient(180deg,#fff,#f8fbf8);border-bottom-color:#dbe4dd}
.country-info-banner{background:linear-gradient(90deg,#eef9eb,#f6fcf4);border-color:#c8e4c0}
.country-tab.active,.league-subtab.active{background:#0f8c39;color:#fff;border-color:#0f8c39}
.country-tab:hover,.league-subtab:hover{background:#edf7ef;color:#0c6f30}
.country-tab.active:hover,.league-subtab.active:hover{background:#0b7c31;color:#fff}
.game-footer{background:linear-gradient(180deg,#074b24,#043719);border-top:1px solid #0e6f32;color:#fff}
.game-footer-brand,.game-footer-brand b,.game-footer-brand p,.back-top{color:#eff8f1}
.game-footer-inner{min-height:82px}
.mini-ball{filter:grayscale(1) brightness(2)}
.team-link{display:inline-flex;align-items:center;color:#197b39;text-decoration:none!important;font-weight:600}
.team-link:hover{color:#0b5c28;text-decoration:underline!important}
.team-page-main{padding-top:22px}
.team-page-shell{width:min(1180px,calc(100% - 18px));margin:0 auto}
.team-breadcrumb{min-height:40px;padding:0 15px;display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.95);border:1px solid #d8e2db;border-radius:6px;color:#718079;font-size:12px;box-shadow:0 6px 20px rgba(29,50,36,.06)}
.team-breadcrumb a{color:#19813a}
.team-breadcrumb b{color:#48534c;font-weight:600}
.club-hero{display:grid;grid-template-columns:92px 1fr auto;align-items:center;gap:18px;padding:18px 10px 14px}
.club-crest{width:88px;height:88px;border-radius:7px;background:transparent;border:0;box-shadow:none;display:grid;place-items:center;color:transparent;font-size:0;font-weight:900;letter-spacing:0;position:relative}
.club-crest:after{display:none!important;content:none!important}
.club-crest{overflow:hidden}
.club-crest::first-letter{position:relative;z-index:2}
.club-identity h1{margin:0 0 7px;font-size:38px;line-height:1;font-weight:750;color:#1b231d;letter-spacing:-1px}
.club-meta{display:flex;align-items:center;gap:9px;color:#3d4841;font-size:13px}
.club-meta img{width:20px;height:13px;border:1px solid rgba(0,0,0,.12)}
.club-meta i{width:5px;height:5px;border-radius:50%;background:#1f9a43}
.team-tabs{display:flex;align-items:stretch;background:rgba(255,255,255,.93);border:1px solid #d8e1da;border-radius:6px;overflow:hidden;box-shadow:0 4px 13px rgba(36,53,42,.08)}
.team-tab{min-width:120px;padding:15px 18px;text-align:center;color:#414b44;font-size:12px;font-weight:800;text-decoration:none!important;border-right:1px solid #e3e9e4}
.team-tab:last-child{border-right:0}
.team-tab.active{background:#fff;color:#0d8c39;box-shadow:inset 0 -3px 0 #0d993c}
.team-tab:hover{background:#f5faf6;color:#0d7e34}
.club-accent-line{height:4px;border-radius:4px;background:transparent;margin:0 0 16px}
.team-tab-content{display:grid;gap:16px}
.team-dashboard-grid{display:grid;grid-template-columns:360px minmax(0,1fr);gap:16px}
.team-card{border:1px solid #d7e0da;border-radius:7px;overflow:hidden}
.team-card-title{min-height:50px;padding:0 16px;display:flex;align-items:center;gap:10px;color:#28342b;font-size:13px}
.team-card-title>span:first-child{color:#0b9638;font-size:19px}
.team-card-title>a,.team-card-title>.plain-link{margin-left:auto;color:#0b8a36;font-size:11px;font-weight:800}
.team-info-list{padding:14px 18px 12px;display:grid;gap:10px}
.team-info-list>div{display:grid;grid-template-columns:145px 1fr;align-items:center;gap:9px;font-size:13px}
.team-info-list>div>span:first-child{font-weight:700;color:#4b554e}
.team-info-list b{font-weight:600;color:#303a32}
.class-badge{width:26px;height:26px;border-radius:5px;background:#0c6fd2;color:#fff!important;display:grid;place-items:center}
.facility-stars{display:inline-flex;gap:3px}
.facility-stars span{color:#cbd4ce}
.facility-stars span.on{color:#0c9a3a}
.team-primary-btn{margin:2px 18px 16px;width:calc(100% - 36px);height:42px;border:0;border-radius:5px;background:linear-gradient(180deg,#13a544,#078331);color:#fff;font-weight:900;cursor:pointer;box-shadow:0 5px 12px rgba(9,129,50,.19)}
.team-primary-btn:hover{background:linear-gradient(180deg,#11953d,#06762c)}
.team-primary-btn:disabled{opacity:.7;cursor:default}
.recent-match-list{padding:10px 16px 6px}
.recent-match-row{display:grid;grid-template-columns:42px 110px minmax(120px,1fr) 58px minmax(120px,1fr) 34px;gap:8px;align-items:center;min-height:43px;border-bottom:1px solid #e6ece7;font-size:12px}
.recent-match-row:last-child{border-bottom:0}
.turn-num{color:#627069}
.competition-mini{color:#4e5c53}
.home-team{text-align:right}
.away-team{text-align:left}
.own{color:#0b8a36;font-weight:800}
.score{text-align:center;font-weight:800;color:#242d27}
.result-badge{width:27px;height:27px;border-radius:5px;display:grid;place-items:center;font-weight:800;background:#f2f4f3;color:#7c8780}
.result-badge.win{background:#e6f6e9;color:#16813a}
.result-badge.loss{background:#fde9e9;color:#b54343}
.result-badge.draw{background:#fff1d7;color:#aa7a16}
.result-badge.future{background:#f3f5f4;color:#9aa39d}
.section-footer-link{display:block;text-align:center;padding:14px 10px 16px;color:#078635;font-size:11px;font-weight:900;text-decoration:none!important}
.section-footer-link:hover{background:#f5faf6}
.wide-card{width:100%}
.empty-team-content{padding:18px 18px 22px;color:#68746c;font-size:13px}
.history-card{overflow:visible}
.history-view-switch,.history-mode{display:flex;align-items:center;gap:5px}
.history-view-switch{margin-left:14px}
.history-mode{margin-left:auto}
.history-pill{border:1px solid #d5ded8;border-radius:4px;background:#fff;color:#566159;padding:6px 10px;font-size:10px;font-weight:700;cursor:pointer}
.history-pill.active{background:#0c9339;border-color:#0c9339;color:#fff}
.team-history-empty{padding:28px 18px 34px;text-align:center;display:grid;gap:6px;color:#6c7870}
.team-history-empty b{color:#38443c}
.player-subtabs{display:flex;gap:5px;padding:14px 16px;border-bottom:1px solid #e1e7e3;flex-wrap:wrap}
.player-subtab{padding:8px 12px;border:1px solid transparent;border-radius:4px;background:transparent;color:#16803a;cursor:pointer}
.player-subtab.active{background:#fff;border-color:#d8e0db;color:#2e3731}
.players-toolbar{padding:13px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#57635b;font-size:12px}
.players-toolbar label{display:flex;align-items:center;gap:8px;font-weight:700}
.players-toolbar input{height:32px;border:1px solid #cfd8d2;border-radius:4px;padding:0 10px}
.players-table-wrap{overflow:auto;padding:0 14px}
.players-table{width:100%;border-collapse:collapse;min-width:980px;font-size:12px}
.players-table th,.players-table td{padding:7px 6px;border-bottom:1px solid #e4eae5;text-align:center}
.players-table th:first-child,.players-table td:first-child{text-align:left}
.players-table th{color:#273129;font-weight:800;background:#fbfcfb}
.players-table a{color:#167d39}
.player-flag{width:18px;height:12px;border:1px solid rgba(0,0,0,.12)}
.players-summary{padding:14px 16px 18px;display:flex;gap:28px;color:#526057;font-size:12px}
.players-summary b{color:#1d2b21}
.team-match-groups{padding:12px 16px 22px}
.team-match-groups h3{margin:6px 0 14px;font-size:16px}
.team-match-full-row{display:grid;grid-template-columns:72px minmax(120px,1fr) 46px minmax(120px,1fr) 150px 60px;gap:10px;align-items:center;min-height:41px;border-bottom:1px solid #e4e9e5;font-size:12px}
.team-match-full-row .match-home{text-align:right}
.team-match-full-row b{text-align:center}
.title-empty{padding:58px 24px 66px;text-align:center}
.title-trophy{width:68px;height:68px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:#eef8ef;color:#0c8d39;font-size:34px}
.title-empty h3{margin:0 0 7px;font-size:20px}
.title-empty p{margin:0;color:#657168}
/* Align all existing game content with the same premium stadium system */
.countries-shell,.system-panel{width:min(1120px,calc(100% - 18px))}
.country-page-shell{width:min(1120px,calc(100% - 18px))}
.country-header-row{padding:3px 4px}
.country-header-row h1{font-weight:750;color:#1b231d}
.country-breadcrumb{background:rgba(255,255,255,.92);border:1px solid #d9e2dc;border-radius:5px;padding:10px 13px;box-shadow:0 5px 16px rgba(32,54,39,.05)}
.country-detail-card{border-radius:7px}
.standings-table th{background:#f8fbf9}
.standings-table tbody tr:hover{background:#f3f9f4}
.world-map-wrap,.region-map-wrap{background:rgba(255,255,255,.98)}
/* cleaner Soccersim typography, real teams and manager-status icons */
:root{--soccer-green:#0b8f3c;--soccer-green-dark:#056b2d;--soccer-text:#20262d;--soccer-muted:#65706b}
html,body,button,input,select{font-family:"Segoe UI",Arial,sans-serif}
.game-page{font-size:13px;color:var(--soccer-text)}
.game-header-inner,.game-statusbar-inner,.countries-shell,.team-page-shell{letter-spacing:0}
.country-header-row h1,.club-identity h1{font-family:"Segoe UI",Arial,sans-serif;font-weight:600;letter-spacing:-.45px}
.country-tab,.league-subtab,.team-tab,.standings-table,.team-info-list,.recent-match-row,.players-table,.team-card-title{font-family:"Segoe UI",Arial,sans-serif}
.standings-table{font-size:12px}
.standings-table th{font-size:11px;text-transform:uppercase;letter-spacing:.02em}
.standings-table th,.standings-table td{padding:7px 7px}
.team-link{gap:7px;font-weight:500;color:#17763a}
.team-link:hover{color:#075c2b}
.club-cell-wrap{display:inline-flex;align-items:center;gap:7px;color:#35413a}
.team-primary-btn .manager-status-icon{width:22px;height:22px;background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.28);color:#fff}
.team-primary-btn.unavailable{background:#818c85;box-shadow:none}
.manager-availability{margin:14px 18px 2px;padding:12px 13px;border:1px solid #dce6de;border-radius:6px;background:#f7fbf8;display:flex;align-items:center;gap:11px}
.availability-icon>.manager-status-icon{width:34px;height:34px;border-radius:8px}
.availability-icon>.manager-status-icon.human{border-radius:50%}
.availability-icon>.manager-status-icon svg{width:21px;height:21px}
.manager-availability>div:last-child{display:flex;flex-direction:column;gap:2px}
.manager-availability b{font-size:11px;color:#213027;letter-spacing:.04em}
.manager-availability span{font-size:11px;color:#6b776f}
.team-info-list{padding-top:12px;gap:8px}
.team-info-list>div{font-size:12px;grid-template-columns:130px minmax(0,1fr)}
.team-info-list>div>span:first-child{font-size:11px;color:#667269}
.team-info-list b{font-size:12px}
.team-card{background:rgba(255,255,255,.975);box-shadow:0 8px 24px rgba(25,52,34,.07)}
.team-card-title{min-height:45px;border-bottom:1px solid #e1e8e3;background:linear-gradient(180deg,#fff,#fbfdfb);font-size:12px}
.team-card-title b{font-weight:700;letter-spacing:.02em}
.team-card-title>span:first-child{font-size:16px}
.recent-match-row{min-height:41px;font-size:11.5px;grid-template-columns:38px 105px minmax(140px,1fr) 44px minmax(140px,1fr) 26px}
.recent-match-row .home-team,.recent-match-row .away-team{display:flex;align-items:center;gap:6px}
.recent-match-row .home-team{justify-content:flex-end}
.recent-match-row .away-team{justify-content:flex-start}
.recent-match-row .manager-status-icon{width:15px;height:15px}
.recent-match-row .manager-status-icon svg{width:11px;height:11px}
.clean-empty{padding:20px 12px;text-align:center;color:#7c8780;font-size:12px;border:1px dashed #d9e2dc;border-radius:5px;background:#fbfdfb}
/* shown for the moment between opening a national team page and the
   squad being ready. */
.national-squad-loading{opacity:.72}
.club-hero{grid-template-columns:82px minmax(0,1fr) auto}
.club-crest{width:78px;height:78px;font-size:22px;border-width:4px}
.club-identity h1{font-size:34px}
.club-meta{font-size:12px}
.team-tabs{border-color:#d6e0d9}
.team-tab{font-size:11px;min-width:108px;padding:14px 15px}
.team-tab.active{color:#087a33}
.team-breadcrumb{font-size:11px}
.team-page-shell{width:min(1120px,calc(100% - 18px))}
.countries-shell{width:min(1120px,calc(100% - 20px))}
.country-detail-card,.countries-panel,.system-panel{background:rgba(255,255,255,.97)}
.detail-section-title{font-size:12px}
.detail-select select{font-size:12px}
.scorer-row,.champion-row{font-size:12px}
.game-main{background:linear-gradient(rgba(255,255,255,.54),rgba(242,249,243,.60)),url("assets/stadium-bg.svg") center/cover fixed no-repeat!important}
.game-page.global-stadium-theme .game-main,.countries-main,.team-page-main{background:linear-gradient(rgba(255,255,255,.54),rgba(242,249,243,.60)),url("assets/stadium-bg.svg") center/cover fixed no-repeat!important}
/* simpler club status: computer ownership is indicated only by league icons; club page shows Manage Club once */
.result-badge-empty{width:27px;height:27px;display:block}
.match-report-slot{display:block;min-width:58px;text-align:right}
/* simplified club status block and MLS conference split */
.simple-status-card .team-info-list{padding-bottom:8px}
.compact-status-list{gap:9px}
.compact-status-list>div{grid-template-columns:118px minmax(0,1fr);font-size:13px}
.compact-status-list>div>span:first-child{font-size:12px;font-weight:700;color:#2f3932}
.team-inline-link,.squad-count-link{color:#1f7fbb;text-decoration:none;font-weight:600}
.team-inline-link:hover,.squad-count-link:hover{text-decoration:underline}
.simple-manage-btn{margin-top:3px;margin-bottom:8px}
.manage-club-note,.job-application-note{margin:0 18px;color:#5d6861;font-size:12px;line-height:1.45}
.manage-club-note{margin-top:2px}
.job-application-note{margin-top:10px;color:#303a33}
.stadium-simple-row{display:flex;align-items:flex-start;gap:6px;margin:14px 18px 18px;font-size:12px;color:#333e36}
.stadium-simple-row b{font-weight:800}
.stadium-simple-row span{color:#3b463f}
/* compact in-game typography + league/player profile polish */
.compact-game-ui{font-size:12px}
.compact-game-ui .game-header-inner{height:64px;gap:22px;width:min(1360px,calc(100% - 34px))}
.compact-game-ui .game-brand img{width:156px}
.compact-game-ui .nav-trigger{font-size:11.5px;padding:0 12px}
.compact-game-ui .nav-dropdown{top:56px;min-width:145px}
.compact-game-ui .nav-drop-item{font-size:11px;padding:7px 9px}
.compact-game-ui .counter{font-size:13px;padding:6px 7px;gap:5px}
.compact-game-ui .counter b{font-size:10.5px}
.compact-game-ui .header-coin-icon{width:19px;height:19px;flex-basis:19px}
.compact-game-ui .header-online-icon{width:19px;height:19px;flex-basis:19px}
.compact-game-ui .header-mail-icon{width:19px;height:19px;flex-basis:19px}

.compact-game-ui .profile-avatar{width:31px;height:31px;font-size:17px}
.compact-game-ui .profile-name{font-size:11px}
.compact-game-ui .game-statusbar-inner{height:35px;font-size:10.5px;width:min(1360px,calc(100% - 34px))}
.compact-game-ui .game-main{padding-top:27px}
.compact-game-ui .country-page-shell,.compact-game-ui .team-page-shell,.player-page-shell{width:min(1080px,calc(100% - 18px));margin:0 auto;position:relative;z-index:2}
.compact-game-ui .country-breadcrumb,.compact-game-ui .team-breadcrumb{font-size:10.5px;padding:8px 11px}
.compact-game-ui .country-header-row h1{font-size:25px;letter-spacing:-.35px}
.compact-game-ui .country-title-flag{width:17px;height:11px}
.compact-game-ui .country-tab{font-size:11px;padding:8px 11px}
.compact-game-ui .detail-section-title{padding:8px 12px;min-height:42px}
.compact-game-ui .detail-select{font-size:11px}
.compact-game-ui .detail-select select{height:30px;font-size:11px;padding-left:9px}
.compact-game-ui .league-subtabs{padding-bottom:12px;margin-bottom:12px;gap:5px}
.compact-game-ui .league-subtab{font-size:11px;padding:6px 9px}
.compact-game-ui .league-two-col{gap:18px;padding:13px 12px 15px;grid-template-columns:minmax(0,1.26fr) minmax(280px,.9fr)}
.compact-game-ui .standings-table{font-size:10.7px}
.compact-game-ui .standings-table th{font-size:10px;text-transform:none;letter-spacing:0}
.compact-game-ui .standings-table th,.compact-game-ui .standings-table td{padding:5px 5px}
.compact-game-ui .manager-status-icon{width:15px;height:15px}
.compact-game-ui .manager-status-icon svg{width:10px;height:10px}
.compact-game-ui .team-link{gap:5px;font-weight:400}
.compact-game-ui .scorer-row,.compact-game-ui .champion-row{font-size:10.8px;padding:4px 0}
.compact-game-ui .info-card h3{font-size:11.5px;margin-bottom:9px}
.compact-game-ui .cup-round h3{font-size:11.5px}
.compact-game-ui .cup-match{font-size:10.7px;padding:3px 0}
.compact-league-heading{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px}
.league-name-block{display:flex;align-items:center;gap:7px;min-width:0;font-size:13px}
.league-name-block strong{font-weight:600;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.league-class-badge{width:18px;height:21px;display:inline-flex;align-items:center;justify-content:center;border-radius:3px;background:#7b43cf;color:#fff;font-size:10px;font-weight:800;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}
.league-class-badge.cup{background:#0a8e3a}
.compact-league-heading .season-title{font-size:11px;color:#4b5750;white-space:nowrap}
.compact-game-ui .club-hero{grid-template-columns:70px minmax(0,1fr) auto;padding-top:4px;padding-bottom:3px}
.compact-game-ui .club-crest{width:66px;height:66px;font-size:19px;border-width:3px}
.compact-game-ui .club-identity h1{font-size:28px;letter-spacing:-.4px}
.compact-game-ui .club-meta{font-size:10.5px}
.compact-game-ui .team-tab{font-size:10px;min-width:96px;padding:11px 12px}
.compact-game-ui .club-accent-line{margin-top:6px}
.compact-game-ui .team-card-title{min-height:39px;font-size:10.5px;padding:0 13px}
.compact-game-ui .compact-status-list>div{grid-template-columns:102px minmax(0,1fr);font-size:11px}
.compact-game-ui .compact-status-list>div>span:first-child{font-size:10.5px}
.compact-game-ui .manage-club-note,.compact-game-ui .job-application-note,.compact-game-ui .stadium-simple-row{font-size:10.5px}
.compact-game-ui .team-primary-btn{min-height:34px;font-size:10.5px}
.compact-game-ui .recent-match-row{min-height:35px;font-size:10.3px;grid-template-columns:32px 88px minmax(120px,1fr) 38px minmax(120px,1fr) 24px}
.compact-game-ui .empty-team-content{font-size:10.5px;padding:18px}
.compact-game-ui .history-pill{font-size:9.5px;padding:6px 9px}
.compact-game-ui .team-history-empty{font-size:10.5px}
.compact-players-card .player-subtabs{padding:11px 13px 0;gap:4px}
.compact-players-card .player-subtab{font-size:10.5px;padding:7px 10px}
.compact-players-card .players-toolbar{padding:10px 13px;font-size:10.5px}
.compact-players-card .players-toolbar input{height:27px;font-size:10.5px;width:170px}
.compact-player-table{font-size:10.4px!important;min-width:930px!important}
.compact-player-table th,.compact-player-table td{padding:4px 4px!important;line-height:1.25}
.compact-player-table th{font-size:9.8px!important;text-transform:none!important}
.compact-player-table .player-flag{width:16px;height:10px}
.player-name-link{color:#2479bd!important;text-decoration:none;font-weight:400}
.player-name-link:hover{text-decoration:underline}
.compact-players-card .players-summary{display:grid;gap:3px;padding:9px 13px 13px;font-size:10.5px}
.player-page-main{padding:27px 24px 60px!important;background:linear-gradient(rgba(255,255,255,.54),rgba(242,249,243,.60)),url("assets/stadium-bg.svg") center/cover fixed no-repeat!important}
.player-page-shell{display:grid;gap:12px}
.player-profile-header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:6px 4px 0}
.player-profile-title{display:flex;align-items:center;gap:10px}
.player-profile-title>img{width:20px;height:13px;border:1px solid rgba(0,0,0,.12)}
.player-profile-title h1{margin:0 0 3px;font-size:27px;font-weight:600;letter-spacing:-.4px;color:#1d2520}
.player-profile-title p{margin:0;font-size:10.5px;color:#677168}
.player-profile-tabs{display:flex;border:1px solid #d9e1dc;border-radius:5px;overflow:hidden;background:rgba(255,255,255,.94);box-shadow:0 6px 18px rgba(29,54,36,.05)}
.player-profile-tab{padding:11px 15px;border-right:1px solid #e2e7e4;color:#27332b;font-size:10px;font-weight:700;text-decoration:none!important}
.player-profile-tab:last-child{border-right:0}
.player-profile-tab.active{color:#078834;background:#f5fbf6;box-shadow:inset 0 -2px 0 #078f39}
.player-profile-tab:hover{background:#f7faf8}
.player-accent-line{height:3px;background:linear-gradient(90deg,#0b8f3c 0 35%,#d9e6dc 35%);border-radius:3px}
.player-detail-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:14px}
.player-panel{background:rgba(255,255,255,.975);border:1px solid #d9e2dc;border-radius:5px;box-shadow:0 7px 20px rgba(31,53,37,.06);overflow:hidden}
.player-panel-title{min-height:38px;display:flex;align-items:center;padding:0 13px;border-bottom:1px solid #e2e8e4;background:linear-gradient(#fff,#fbfdfb);font-size:10.8px;font-weight:700;color:#253028}
.player-info-rows{padding:10px 13px 13px;display:grid;gap:0}
.player-info-rows>div{display:grid;grid-template-columns:118px minmax(0,1fr);align-items:center;min-height:30px;border-bottom:1px solid #edf1ee;font-size:10.8px}
.player-info-rows>div:last-child{border-bottom:0}
.player-info-rows span{color:#637067}
.player-info-rows b{font-weight:600;color:#273229}
.player-info-rows a{color:#2479bd}
.inline-player-flag{width:16px;height:10px;vertical-align:middle;border:1px solid rgba(0,0,0,.12)}
.player-average{color:#0b8d3a!important}
.ability-grid{padding:9px 13px 13px;display:grid;grid-template-columns:1fr 1fr;gap:3px 14px}
.ability-row{display:grid;grid-template-columns:72px 26px 1fr;align-items:center;gap:7px;min-height:29px;font-size:10.5px;border-bottom:1px solid #edf1ee}
.ability-row span{color:#58665d}
.ability-row b{text-align:right;font-weight:700}
.ability-bar{height:5px;background:#e9efeb;border-radius:4px;overflow:hidden}
.ability-bar i{display:block;height:100%;background:#168d3e;border-radius:4px}
.full-player-panel{grid-column:1/-1}
.player-empty-line{padding:17px 13px;color:#69746d;font-size:10.5px}
.player-empty-state{min-height:165px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#6c776f;font-size:11px}
.player-empty-state b{font-size:13px;color:#263129}
/* supplied S/A/B/C/D/E/F tier shields */
.tier-icon{display:inline-block;width:13px;height:17px;object-fit:contain;vertical-align:middle;image-rendering:auto;flex:0 0 auto}
.team-link .team-tier-icon{width:11px;height:15px;margin-left:1px}
.team-page-tier{width:15px;height:20px}
.player-tier-icon{width:15px;height:20px}
.league-tier-icon{width:14px;height:18px}
.tier-value{display:inline-flex!important;align-items:center;min-height:20px}
.league-name-block .tier-icon{margin-right:1px}
.compact-game-ui .standings-table .team-link{align-items:center}
/* reference typography + reference-like player profile structure in Soccersim theme */
.compact-game-ui,.compact-game-ui button,.compact-game-ui input,.compact-game-ui select{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;}
.compact-game-ui{font-size:13px;line-height:1.42}
.compact-game-ui .game-header-inner{height:67px}
.compact-game-ui .nav-trigger{font-size:13px;padding:0 14px}
.compact-game-ui .nav-drop-item{font-size:12.5px;padding:8px 10px}
.compact-game-ui .profile-name{font-size:12.5px}
.compact-game-ui .game-statusbar-inner{height:38px;font-size:11.5px}
.compact-game-ui .country-breadcrumb,.compact-game-ui .team-breadcrumb{font-size:12px;padding:9px 12px}
.compact-game-ui .country-header-row h1{font-size:28px;font-weight:500;letter-spacing:-.25px}
.compact-game-ui .country-tab{font-size:12.5px;padding:8px 12px}
.compact-game-ui .detail-section-title{padding:9px 13px;min-height:45px;font-size:13px}
.compact-game-ui .detail-select{font-size:12.5px}
.compact-game-ui .detail-select select{height:32px;font-size:12.5px}
.compact-game-ui .league-name-block{font-size:14px}
.compact-game-ui .compact-league-heading .season-title{font-size:12.5px}
.compact-game-ui .league-subtabs{padding-bottom:13px;margin-bottom:13px;gap:6px}
.compact-game-ui .league-subtab{font-size:12.5px;padding:7px 11px}
.compact-game-ui .league-two-col{gap:20px;padding:14px 13px 17px}
.compact-game-ui .standings-table{font-size:12.5px}
.compact-game-ui .standings-table th{font-size:12px}
.compact-game-ui .standings-table th,.compact-game-ui .standings-table td{padding:5.5px 6px;line-height:1.3}
.compact-game-ui .scorer-row,.compact-game-ui .champion-row{font-size:12.3px;padding:5px 0}
.compact-game-ui .info-card h3{font-size:13px;margin-bottom:10px}
.compact-game-ui .cup-round h3{font-size:13px}
.compact-game-ui .cup-match{font-size:12.3px;padding:4px 0}
.compact-game-ui .club-identity h1{font-size:29px;font-weight:500}
.compact-game-ui .club-meta{font-size:12px}
.compact-game-ui .team-tab{font-size:11.5px;min-width:98px;padding:11px 12px}
.compact-game-ui .team-card-title{min-height:41px;font-size:12px;padding:0 14px}
.compact-game-ui .compact-status-list>div{grid-template-columns:105px minmax(0,1fr);font-size:12.5px}
.compact-game-ui .compact-status-list>div>span:first-child{font-size:12px}
.compact-game-ui .manage-club-note,.compact-game-ui .job-application-note,.compact-game-ui .stadium-simple-row{font-size:12px}
.compact-game-ui .team-primary-btn{min-height:36px;font-size:12px}
.compact-game-ui .recent-match-row{min-height:37px;font-size:12px}
.compact-game-ui .empty-team-content{font-size:12px;padding:19px}
.compact-game-ui .history-pill{font-size:11px;padding:6px 10px}
.compact-game-ui .team-history-empty{font-size:12px}
.compact-players-card .player-subtab{font-size:12px;padding:7px 11px}
.compact-players-card .players-toolbar{font-size:12px;padding:11px 13px}
.compact-players-card .players-toolbar input{height:29px;font-size:12px;width:180px}
.compact-player-table{font-size:12px!important;min-width:960px!important}
.compact-player-table th,.compact-player-table td{padding:5px 5px!important;line-height:1.28}
.compact-player-table th{font-size:11.5px!important}
.compact-players-card .players-summary{font-size:12px;padding:10px 13px 14px}
.player-name-link{font-size:12.5px}
.goal-player-page{width:min(980px,calc(100% - 18px));gap:12px}
.goal-player-header{align-items:center;padding:2px 0 0;min-height:48px}
.goal-player-title{display:flex;align-items:center;gap:9px}
.goal-player-title h1{margin:0;font-size:28px;font-weight:400;letter-spacing:-.35px;color:#222}
.player-shirt-icon{width:22px;height:24px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.player-shirt-icon svg{width:22px;height:24px;fill:#064eea;stroke:#064eea;stroke-width:1.2;stroke-linejoin:round}
.player-shirt-icon .shirt-neck{fill:none;stroke:#fff;stroke-width:1.4}
.goal-player-tabs{box-shadow:none;border:0;border-radius:0;background:transparent;overflow:visible;align-self:stretch;display:flex;align-items:flex-end}
.goal-player-tabs .player-profile-tab{min-width:62px;padding:10px 14px;border:0;border-radius:4px 4px 0 0;color:#2877b9;background:transparent;font-size:12px;font-weight:400;text-align:center}
.goal-player-tabs .player-profile-tab.active{background:#2e83c5;color:#fff;box-shadow:none}
.goal-player-tabs .player-profile-tab:hover{background:#eef4f8;color:#1f6da8}
.goal-player-tabs .player-profile-tab.active:hover{background:#2e83c5;color:#fff}
.goal-player-layout{display:grid;grid-template-columns:40% 1fr;gap:18px;align-items:start}
.goal-player-left,.goal-player-right{display:grid;gap:17px;align-content:start}
.goal-player-panel{background:rgba(255,255,255,.985);border:1px solid #d8dde0;border-radius:3px;box-shadow:none;overflow:hidden;color:#222}
.goal-player-panel-title{height:34px;display:flex;align-items:center;padding:0 12px;border-bottom:1px solid #d8dde0;background:#f8f8f8;font-size:14px;font-weight:400;color:#303030}
.goal-player-panel-title .panel-help{width:16px;height:16px;font-size:10px;border-color:#333;color:#333;margin-left:auto}
.goal-info-list{padding:12px 16px 13px;display:grid;gap:2px}
.goal-info-list>div{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:center;min-height:22px;font-size:13px;line-height:1.35}
.goal-info-list>div>span{color:#222}
.goal-info-list>div>b{font-weight:400;color:#222;min-width:0}
.goal-info-list a{color:#287abc}
.goal-info-list .muted-value{color:#777}
.inline-player-flag{width:16px;height:10px;vertical-align:middle;margin-right:3px;border:1px solid rgba(0,0,0,.12)}
.goal-info-list .player-tier-icon{width:17px;height:22px}
.player-star-status{display:inline-flex;gap:1px;font-size:18px;line-height:1}
.player-star-status span{color:#9fa4a7}
.player-star-status span.on{color:#e68722}
.goal-attribute-list{padding:10px 16px 12px;display:grid;gap:1px}
.goal-attribute-list>div{display:grid;grid-template-columns:70px 1fr;align-items:center;min-height:20px;font-size:13px;line-height:1.34}
.goal-attribute-list span{color:#222}
.goal-attribute-list b{font-weight:400}
.goal-traits{padding:12px 14px 14px;font-size:13px;line-height:1.45}
.goal-traits p{margin:0 0 7px}
.goal-traits p:last-child{margin-bottom:0}
.trait-neutral{color:#398b27}
.contract-content{padding:13px 14px 15px;font-size:13px;line-height:1.5}
.contract-content p{margin:0 0 10px}
.contract-content b{font-weight:400}
.contract-negotiations{margin-top:20px}
.contract-negotiations p{margin-bottom:8px}
.contract-negotiations span{color:#666}
.actions-panel .actions-empty{height:27px;background:#fff}
.season-stats-wrap{padding:12px 14px 14px}
.player-season-stats{width:100%;border-collapse:collapse;font-size:13px}
.player-season-stats th,.player-season-stats td{padding:7px 7px;border-bottom:1px solid #d8dde0;text-align:center}
.player-season-stats th{font-weight:700;color:#222}
.player-season-stats th:first-child,.player-season-stats td:first-child{text-align:left}
.player-season-stats tbody tr:last-child td{border-bottom:0}
.player-season-stats a{color:#287abc}
.player-secondary-panel{min-height:260px}
.goal-player-empty{height:225px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;font-size:13px;color:#6a6a6a}
.goal-player-empty b{font-size:15px;color:#333}
/* league qualification markers + team class cap */
.standings-table .continental-row{background:rgba(224,239,252,.42)}
.standings-table .continental-row-alt{background:rgba(244,249,231,.46)}
.standings-table .promotion-row{background:#e9f7e7}
.standings-table .relegation-row{background:#fae7e7}
.status-chip{min-width:27px;padding:0 4px;height:18px;line-height:18px;border:1px solid transparent;font-size:10px;font-weight:700;border-radius:3px;margin-right:6px;box-sizing:border-box}
.status-chip.cl{background:#e7f0ff;border-color:#aac5ec;color:#1d5ca9}
.status-chip.el{background:#eef7df;border-color:#bfd79b;color:#527d19}
.status-chip.lib{background:#e8f3ff;border-color:#9ebfe7;color:#195ea7}
.status-chip.sud{background:#fff6da;border-color:#e6c66a;color:#8b6500}
.status-chip.ccl{background:#eee8ff;border-color:#c2aceb;color:#6541a0;min-width:34px}
.status-chip.prom{background:#e4f5e2;border-color:#9ac794;color:#23782b;min-width:24px}
.status-chip.rel{background:#fde8e8;border-color:#e3a4a4;color:#a42b2b;min-width:24px}
.standings-legend{display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding:10px 4px 2px;color:#606b74;font-size:11px;border-top:1px solid #e6ebee;margin-top:4px}
.standings-legend>span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.standings-legend .status-chip{margin-right:0}
/* Players subpages: Traits, Cards, Contracts, Statistics */
.player-subtabs{display:flex;align-items:center;gap:0;border-bottom:1px solid #d9dfe2;padding:12px 14px 0;background:#fff;flex-wrap:wrap}
.player-subtabs .player-subtab{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:#2c79b8;background:transparent;border:1px solid transparent;border-bottom:0;border-radius:4px 4px 0 0;padding:9px 14px;font-size:12.5px;line-height:1;min-height:36px}
.player-subtabs .player-subtab.active{background:#fff;color:#333;border-color:#d8dee2;position:relative;top:1px}
.player-subtabs .player-subtab:hover{background:#f6f9fb}
.player-subpage-note{margin:16px 14px 6px;font-size:12.5px;color:#333}
.subtable-search{display:flex;justify-content:flex-end;padding:6px 14px 7px;font-size:12px;font-weight:600}
.subtable-search label{display:flex;align-items:center;gap:7px}
.subtable-search input{width:170px;height:26px;border:1px solid #69737b;background:#fff;padding:2px 6px;font-size:12px}
.second-search{padding-top:14px}
.goal-sub-table{width:100%;min-width:930px;border-collapse:collapse;font-size:12.2px}
.goal-sub-table th,.goal-sub-table td{padding:6px 7px;border-bottom:1px solid #dfe4e7;text-align:center;vertical-align:middle;line-height:1.25}
.goal-sub-table th{font-size:11.8px;font-weight:700;color:#252d34;background:#fff}
.goal-sub-table td:first-child,.goal-sub-table th:first-child{text-align:left}
.goal-sub-table tbody tr:nth-child(even){background:#fbfcfc}
.goal-sub-table tbody tr:hover{background:#f5f9fb}
.goal-sub-table .player-name-link{font-size:12.2px}
.trait-name-cell{white-space:nowrap}
.trait-tier-icon{width:14px;height:18px}
.trait-positive,.trait-negative{max-width:285px;white-space:normal}
.trait-positive{color:#168a35;font-weight:500}
.trait-negative{color:#d62b2b;font-weight:500}
.trait-removed-cell{color:#d62b2b!important}
.subtable-summary{padding:6px 14px 10px;font-size:11.8px;color:#333;border-top:1px solid #333}
.youth-sub-table{margin-top:0}
.card-mark{display:inline-block;width:9px;height:16px;border-radius:1px;border:1px solid rgba(0,0,0,.55);vertical-align:middle}
.card-mark.yellow{background:#ffe500}
.statistics-subpage .stats-topline{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:14px 14px 4px}
.statistics-subpage .stats-topline h2{margin:0 0 8px;font-size:21px;font-weight:400}
.statistics-subpage .stats-topline label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600}
.statistics-subpage .stats-topline select{height:30px;min-width:120px;border:1px solid #cfd6db;background:#fff;padding:0 8px;font-size:12px}
.stats-other-link{padding:8px 14px 2px;color:#2a79b8;font-size:12px}
.stats-other-link.second{padding-top:14px}
.player-subpage-card .players-table-wrap{overflow-x:auto}
.player-subpage-card .team-card-title{font-size:12px}
/* every club owns a separate six-player youth academy */
.youth-squad-block{margin-top:20px;padding-top:14px;border-top:1px solid #d9dfe2}
.youth-squad-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 6px;padding:0 2px;color:#28323a;font-size:13px}
.youth-squad-heading b{font-size:14px;letter-spacing:.01em}
.youth-squad-heading span{color:#77828b;font-size:12px}
.youth-toolbar{margin-top:0}
.youth-abilities-table tbody tr{background:#fbfcfc}
.youth-summary{padding-bottom:3px}
/* Soccersim manager/computer team status icons */
.manager-status-icon{display:inline-flex;
  align-items:center;
  justify-content:center;
  width:17px;
  height:17px;
  flex:0 0 17px;
  padding:0;
  overflow:visible;
  vertical-align:-3px;}
.manager-status-icon img{display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  image-rendering:auto;}
.manager-status-icon,.manager-status-icon.computer,.manager-status-icon.human{border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;}
.availability-icon>.manager-status-icon.human{border-radius:0}
.manager-status-icon.computer{width:18px;height:18px;flex-basis:18px}
.manager-status-icon.human{width:17px;height:17px;flex-basis:17px}
.team-link .manager-status-icon,.club-cell-wrap .manager-status-icon{margin-right:1px}
.recent-match-row .manager-status-icon{width:15px;height:15px;flex-basis:15px;vertical-align:-2px}
.compact-game-ui .manager-status-icon{width:15px;height:15px;flex-basis:15px}
.compact-game-ui .manager-status-icon.computer{width:16px;height:16px;flex-basis:16px}
.manager-status-icon svg{display:none}
/* managed club navigation + manager-owned team state */
.nav-drop-heading{padding:8px 11px 5px;
  margin:2px 0 3px;
  color:#8a948e;
  font-size:10px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  border-bottom:1px solid #edf1ee;
  pointer-events:none;}
.nav-drop-heading:first-child{margin-top:0}
.managed-club-card .compact-status-list{padding-bottom:10px}
.managed-manager-value{display:inline-flex;align-items:center;gap:5px}
.managed-manager-value .manager-status-icon.human{margin-right:1px}
.vacation-btn{margin:0 14px 14px;
  min-height:31px;
  padding:0 12px;
  border:1px solid #cfd8d2;
  border-radius:4px;
  background:#fff;
  color:#38453d;
  font:inherit;
  font-size:11.5px;
  cursor:pointer;}
.vacation-btn:hover{background:#f5faf6;border-color:#9ebba7;color:#0b7f34}
.already-managing-note{margin:1px 14px 13px;
  padding:9px 10px;
  border:1px solid #dfe6e1;
  border-radius:4px;
  background:#f8faf8;
  color:#58645d;
  font-size:11.5px;
  line-height:1.45;}
.already-managing-note a{color:#16833a;font-weight:700}
.team-history-table{padding:0 14px 15px;font-size:12px}
.team-history-head,.team-history-row{display:grid;
  grid-template-columns:70px 60px 180px minmax(0,1fr);
  align-items:center;
  min-height:34px;
  border-bottom:1px solid #e1e7e3;}
.team-history-head{font-weight:800;color:#333d36}
.team-history-row{color:#3e4942}
.team-history-row a{color:#237db7;text-decoration:none}
.team-history-row a:hover{text-decoration:underline}
/* keep manager avatar visually balanced with the slightly wider computer icon */
.manager-status-icon.human{width:15px;height:15px;flex-basis:15px}
.manager-status-icon.computer{width:16px;height:16px;flex-basis:16px}
.recent-match-row .manager-status-icon.human{width:14px;height:14px;flex-basis:14px}
.recent-match-row .manager-status-icon.computer{width:15px;height:15px;flex-basis:15px}
/* team matches / international cups / formation layout */
.goal-team-matches-card{padding:0 0 18px}
.goal-match-header{padding:16px 18px 8px}
.goal-match-header h2{margin:0;font-size:19px;font-weight:700;color:#24302a}
.goal-match-controls{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:6px 18px 14px}
.goal-match-left-actions,.goal-match-right-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mini-action-btn{height:34px;padding:0 14px;border:1px solid #cdd8cf;background:#fff;border-radius:4px;color:#34413a;font-size:12px;font-weight:600;cursor:pointer}
.mini-action-btn.muted{opacity:.65}
.goal-match-right-actions select,#teamMatchFilter{height:34px;padding:0 10px;border:1px solid #ccd7cf;border-radius:4px;background:#fff;color:#24302a;font-size:12px}
.goal-match-table-wrap{padding:0 18px 6px;overflow-x:auto}
.goal-match-table{width:100%;min-width:820px;border-collapse:collapse;table-layout:fixed;font-size:12px}
.goal-match-table col.col-home{width:25%}
.goal-match-table col.col-score{width:9%}
.goal-match-table col.col-away{width:25%}
.goal-match-table col.col-formation{width:10%}
.goal-match-table th{height:31px;padding:6px 6px;border-bottom:1px solid #dce4de;text-align:left;vertical-align:middle;color:#26352e;background:#fff;font-size:12px;font-weight:700;white-space:nowrap}
.goal-match-table th.score-head{text-align:center}
.goal-match-table td{height:28px;padding:5px 6px;border-bottom:1px solid #e2e7e3;vertical-align:middle;line-height:17px;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.goal-match-table .turn-cell{padding-left:12px;color:#303a35;font-weight:500}
.goal-match-table .team-cell{overflow:visible}
.match-team-inline{display:inline-flex;align-items:center;gap:5px;max-width:100%;color:#2877b8;vertical-align:middle}
.match-team-inline>span:last-child{overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.match-team-inline.own{font-weight:700;color:#126f31}
.match-team-inline .team-status-icon,.match-team-inline img{flex:0 0 auto}
.goal-match-table .score-cell{text-align:center;font-weight:600;color:#202923}
.goal-match-table .result-cell{text-align:left}
.result-text{font-weight:500}
.result-text.won{color:#126f31}
.result-text.tie{color:#6a6f6c}
.result-text.lost{color:#d5443a}
.goal-match-table .competition-cell{color:#2d342f}
.report-link{color:#2d7dc0;text-decoration:none;font-weight:500}
.report-link:hover{text-decoration:underline}
.intl-page-shell{width:min(1120px,calc(100% - 20px))}
.intl-page-title-row{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}
.intl-page-title-row h1{margin:0;font-size:27px}
.intl-zone-tabs{display:flex;gap:10px;flex-wrap:wrap}
.intl-zone-tab{padding:10px 15px;border-radius:4px;color:#2975b6;text-decoration:none;font-weight:600}
.intl-zone-tab.active{background:#2d84ca;color:#fff}
.intl-detail-card{padding:0 0 18px}
.intl-competition-head{display:grid;grid-template-columns:minmax(160px,1fr) auto auto;gap:14px;align-items:center;padding:16px 18px;border-bottom:1px solid #e4ebe5}
.intl-competition-title{font-size:18px;font-weight:700;color:#24302a}
.intl-main-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(290px,.85fr);gap:24px;padding:14px 18px 4px}
.intl-round-block{padding:10px 0 14px;border-bottom:1px solid #e7ece8}
.intl-round-block:last-child{border-bottom:none}
.intl-round-block h3{margin:0 0 8px;text-align:center;font-size:18px;color:#304039}
.intl-round-turn{text-align:center;font-weight:700;color:#27352f;margin-bottom:8px}
.intl-round-list{display:flex;flex-direction:column;gap:7px}
.intl-match-row{display:grid;grid-template-columns:minmax(130px,1fr) 28px minmax(130px,1fr) 90px;gap:10px;align-items:center;font-size:12px}
.intl-home,.intl-away{display:flex;align-items:center}
.intl-team-name{display:inline-flex;align-items:center;gap:6px}
.intl-team-name img{width:16px;height:12px;object-fit:cover;border:1px solid #cfd7d2}
.intl-score-x{text-align:center;color:#5b6b63;font-weight:700}
.intl-score-result{text-align:right;color:#35534f;font-weight:600}
.intl-right-panel .info-card h3{margin:0 0 12px;font-size:19px}
.intl-scorer-row{display:grid;grid-template-columns:24px minmax(120px,1fr) 30px minmax(110px,1fr);gap:8px;align-items:center;padding:4px 0;font-size:12px}
.intl-rank{font-weight:700;color:#304039}
.intl-goals{text-align:center;font-weight:700}
.intl-scorer-club,.intl-club{display:flex;align-items:center;gap:6px}
.intl-champion-row{display:grid;grid-template-columns:110px minmax(100px,1fr) minmax(110px,1fr);gap:10px;align-items:center;padding:6px 0;font-size:12px}
.intl-season{font-weight:700;color:#304039}
.intl-manager{color:#58736f}
.default-tag{color:#3f48cc;text-decoration:none;font-weight:600;font-size:12px}
/* reference-shaped cup pages in Soccersim styling + full formation squad */
.intl-page-shell,.national-cups-shell{width:min(1080px,calc(100% - 20px))}
.intl-page-title-row,.national-cups-title-row{min-height:48px;padding:0 0 5px;display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap}
.intl-page-title-row h1,.national-cups-title-row h1{margin:0;font-size:27px;font-weight:500;letter-spacing:-.35px;color:#263029}
.intl-zone-tabs,.national-cup-tabs{display:flex;align-items:center;gap:2px;flex-wrap:wrap}
.intl-zone-tab,.national-cup-tab{padding:10px 14px;border-radius:4px 4px 0 0;color:#2478bb;text-decoration:none;font-size:11.5px;font-weight:500;background:transparent}
.intl-zone-tab:hover,.national-cup-tab:hover{background:#f0f6f2}
.intl-zone-tab.active,.national-cup-tab.active{background:#198f3f;color:#fff}
.intl-detail-card,.national-cup-card{padding:0;background:rgba(255,255,255,.985);border:1px solid #dce3de;border-radius:3px;box-shadow:none;overflow:hidden}
.intl-card-head,.national-card-head{min-height:39px;padding:0 14px;border-bottom:1px solid #dfe5e1;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;color:#2e3932;background:#fff}
.intl-card-head>span{font-size:13px;font-weight:500}
.intl-card-head>b{font-weight:500}
.intl-main-grid,.national-cup-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.92fr);gap:28px;padding:12px 14px 13px}
.intl-left-panel,.national-cup-left,.intl-right-panel,.national-cup-right{min-width:0}
.intl-phase-row{min-height:29px;display:flex;align-items:center;justify-content:center;gap:7px;border-bottom:1px solid #dfe5e1;font-size:13px}
.intl-phase-row a{color:#2478bb;text-decoration:none;font-weight:500}
.intl-phase-row a.active{color:#1e2922;font-weight:600}
.intl-phase-row span{color:#718078}
.intl-round-block,.national-round-block{padding:7px 0 11px;border-bottom:1px solid #e1e6e3}
.intl-round-block:last-of-type,.national-round-block:last-of-type{border-bottom:0}
.intl-round-block h3,.national-round-block h3{margin:0 0 6px;text-align:center;font-size:11.5px;font-weight:800;color:#253029}
.intl-round-list,.national-round-block>div{display:flex;flex-direction:column}
.intl-match-row,.national-match-row{display:grid;grid-template-columns:minmax(125px,1fr) 24px minmax(125px,1fr) 76px;align-items:center;gap:6px;min-height:26px;border-bottom:1px solid #e6eae7;font-size:10.8px}
.intl-match-row:last-child,.national-match-row:last-child{border-bottom:0}
.intl-home,.national-home{justify-content:flex-start}
.intl-away,.national-away{justify-content:flex-end}
.intl-home,.intl-away,.national-home,.national-away{display:flex;align-items:center;min-width:0}
.intl-team-name,.national-team-name{display:inline-flex;align-items:center;gap:4px;min-width:0;color:#2478bb}
.intl-team-name>span,.national-team-name>span{overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.intl-team-name img,.national-team-name img{width:15px;height:10px;object-fit:cover;border:1px solid #ccd4cf;flex:0 0 auto}
.intl-team-name .manager-status-icon,.national-team-name .manager-status-icon{width:13px!important;height:13px!important;flex-basis:13px!important}
.intl-score-x,.national-x{text-align:center;color:#333d37;font-weight:600}
.intl-score-result,.national-score{text-align:right;color:#2478bb;font-weight:500;white-space:nowrap}
.intl-competition-select{display:flex;justify-content:flex-end;align-items:center;gap:6px;margin:0 0 6px;padding:0 0 7px;border-bottom:1px solid #dfe5e1}
.intl-competition-select label{font-size:11px;font-weight:700;color:#27322b}
.intl-competition-select select{height:29px;min-width:145px;padding:0 8px;border:1px solid #c9d4cc;border-radius:3px;background:#fff;font-size:10.8px;color:#303b34}
.intl-right-panel .info-card,.national-cup-right .info-card{padding:0 0 16px;margin:0;background:transparent;border:0;border-radius:0;box-shadow:none}
.intl-right-panel .info-card+.info-card,.national-cup-right .info-card+.info-card{margin-top:20px;padding-top:10px;border-top:1px solid #dfe5e1}
.intl-right-panel .info-card h3,.national-cup-right .info-card h3{margin:0;padding:7px 0;border-bottom:1px solid #dfe5e1;text-align:center;font-size:11.5px;font-weight:800;color:#27322b}
.intl-scorer-row,.national-scorer-row{display:grid;grid-template-columns:26px minmax(100px,1fr) 34px minmax(110px,1fr);gap:7px;align-items:center;min-height:27px;border-bottom:1px solid #e7ebe8;font-size:10.8px}
.intl-scorer-row:last-child,.national-scorer-row:last-child{border-bottom:0}
.intl-rank,.national-scorer-row>span:first-child{font-weight:500;color:#303b34}
.intl-scorer-main a,.national-scorer-row>a,.intl-scorer-club a,.intl-club a{color:#2478bb;text-decoration:none;font-weight:400}
.intl-goals,.national-scorer-row>b{text-align:center;font-weight:500}
.intl-scorer-club,.intl-club,.national-scorer-row>span:last-child,.national-champion-row>span:last-child{display:flex;align-items:center;gap:4px;min-width:0}
.intl-champion-row,.national-champion-row{display:grid;grid-template-columns:112px minmax(105px,1fr) minmax(115px,1fr);gap:8px;align-items:center;min-height:28px;border-bottom:1px solid #e7ebe8;font-size:10.8px}
.intl-champion-row:last-child,.national-champion-row:last-child{border-bottom:0}
.intl-season,.national-champion-row>b{font-weight:800;color:#28332c}
.intl-manager,.national-champion-row>span:nth-child(2){color:#334139}
.all-stats-wrap{padding-top:9px;text-align:center}
.all-stats-wrap .plain-link{font-size:10.8px;color:#2478bb}
.panel-button-row{display:flex;justify-content:flex-start;padding-top:10px}
.panel-button-row .mini-action-btn{height:29px;padding:0 10px;font-size:10.5px;font-weight:500}
.intl-region-empty{margin:18px}
.national-cup-card .national-card-head{justify-content:flex-start;font-size:12px;font-weight:500}
.national-cup-grid{padding-top:12px}
.national-cup-left{padding-right:2px}
.national-cup-right{padding-left:0}
/* Formation – use every first-team player and keep the reference-like compact split layout. */
.default-tag{font-size:10.5px;color:#2478bb}
/* Soccersim-style inactive teams and national squads */
.inactive-teams-card{padding:0!important;overflow:hidden;background:rgba(255,255,255,.985)}
.inactive-card-title{min-height:39px;padding:0 14px;border-bottom:1px solid #dde5df;display:flex;align-items:center;justify-content:space-between;font-size:12px;background:#fff}
.inactive-card-body{padding:13px 14px 14px}
.inactive-help-box{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border:1px solid #d6e8c8;background:#f3faee;color:#52604f;border-radius:4px;font-size:10.8px;line-height:1.45}
.inactive-help-box .info-dot{width:17px;height:17px;display:grid;place-items:center;border:1px solid #77b84d;border-radius:50%;color:#4c9025;font-weight:800;flex:0 0 auto}
.inactive-tools{display:flex;justify-content:flex-end;margin:12px 0 5px}
.inactive-tools label{font-size:10.5px;font-weight:700;display:flex;align-items:center;gap:7px}
.inactive-tools input{width:185px;height:25px;border:1px solid #bfc9c2;background:#fff;padding:2px 7px;outline:0}
.inactive-tools input:focus{border-color:#6caf3a;box-shadow:0 0 0 2px rgba(108,175,58,.08)}
.inactive-table-wrap{overflow:auto}
.inactive-table{width:100%;border-collapse:collapse;font-size:10.8px}
.inactive-table th,.inactive-table td{border-bottom:1px solid #dfe5e1;padding:7px 8px;text-align:left}
.inactive-table th{font-weight:800;color:#27312a;background:#fbfcfb}
.inactive-table th:first-child,.inactive-table td:first-child{width:34px;text-align:center}
.inactive-table th:nth-child(3),.inactive-table td:nth-child(3),.inactive-table th:nth-child(4),.inactive-table td:nth-child(4){text-align:center}
.inactive-table tbody tr:hover{background:#f6faf6}
.inactive-table input[type="radio"]{accent-color:#4c9b25}
.inactive-team-name{display:inline-flex;align-items:center;gap:7px;color:#226ca7}
.inactive-team-name{text-decoration:none}
.inactive-team-name:hover{text-decoration:underline}
.inactive-team-hero-badge{display:inline-flex;align-items:center;margin-left:10px;padding:4px 8px;border:1px solid #d3dad5;border-radius:999px;background:#f3f5f4;color:#667069;font-size:10px;font-weight:800;vertical-align:middle}
.inactive-team-status-label{color:#6b746e!important}
.inactive-team-management-note{display:grid;gap:5px;padding:11px 12px;border:1px solid #d8dfda;border-radius:4px;background:#f6f8f7;color:#5e6862;font-size:10.5px;line-height:1.4}
.inactive-team-management-note b{color:#38423c;font-size:11px}
.inactive-team-match-note{margin:10px 12px 0;padding:9px 11px;border:1px solid #dce3de;background:#f7f9f8;color:#667169;font-size:10.5px;line-height:1.4}
.inactive-team-name .manager-status-icon{width:14px!important;height:14px!important;flex-basis:14px!important}
.inactive-table-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:8px;font-size:10.5px;color:#515a54}
.inactive-vote-btn{min-height:29px;padding:0 16px;border:1px solid #4c9527;border-radius:4px;background:linear-gradient(#68b632,#4b9424);color:#fff;font-size:10px;font-weight:800;cursor:pointer}
.inactive-vote-btn:hover{filter:brightness(.97)}
.r34-national-team .team-page-main{background:linear-gradient(rgba(255,255,255,.59),rgba(242,249,243,.68)),url("assets/stadium-bg.svg") center/cover fixed no-repeat!important}
.national-team-shell{width:min(1080px,calc(100% - 18px));margin:0 auto}
.national-team-hero{min-height:82px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:7px 0 5px}
.national-team-title{display:flex;align-items:center;gap:13px;min-width:0}
.national-team-title img{width:48px;height:32px;object-fit:cover;border:1px solid #cbd4ce;box-shadow:0 2px 6px rgba(39,62,45,.08)}
.national-team-title h1{margin:0;font-size:31px;line-height:1;font-weight:520;letter-spacing:-.55px;color:#1d261f}
.national-accent-line{height:3px;background:linear-gradient(90deg,#168e3d 0,#168e3d 36%,#91ca75 66%,rgba(22,142,61,0) 100%);margin:0 0 8px}
.r34-national-team .team-tabs{align-self:center}
.r34-national-team .team-tab.active{background:#118b3a!important;color:#fff!important;border-color:#118b3a!important}
.r34-national-team .team-tab:hover{color:#087a33}
.national-team-info-grid{display:grid;grid-template-columns:340px minmax(0,1fr);gap:15px}
.national-status-card,.national-recent-card{min-height:214px}
.national-status-lines{padding:16px 16px 18px;font-size:11px;display:grid;gap:12px}
.national-status-lines>div{display:flex;gap:6px;align-items:flex-start}
.national-status-lines b{min-width:112px;color:#202a23}
.national-status-lines span{color:#4d5850}
.national-recent-list{padding:7px 14px 12px}
.national-recent-row{display:grid;grid-template-columns:34px minmax(120px,1fr) 50px minmax(120px,1fr) minmax(165px,.8fr) 55px;gap:7px;align-items:center;min-height:30px;border-bottom:1px solid #e4e9e6;font-size:10.4px}
/* the competition label sat hard against the away flag. It now keeps a
   real gap from the away rail and stays on one line, so International Friendly
   and World Cup line up in their own column instead of hugging the team. */
.national-recent-row .national-competition-cell{padding-left:30px;white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis;}
.national-recent-row:last-child{border-bottom:0}
.national-country-cell{display:inline-flex;align-items:center;gap:6px;min-width:0;color:#236fae}
.national-country-cell img{width:16px;height:11px;object-fit:cover;border:1px solid #c9d2cc;flex:0 0 auto}
.national-country-cell span{overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.national-score-cell{text-align:center;font-weight:700;color:#2c352f}
.national-competition-cell{color:#4a554e;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.national-report{font-size:9.5px;text-align:right;color:#288144}
.national-players-card .team-card-title,.national-matches-card .team-card-title,.national-titles-card .team-card-title{height:39px}
.national-player-subtabs{padding-left:12px}
.national-player-note{padding:10px 14px 4px;font-size:10.6px;color:#59645c}
.national-players-toolbar{justify-content:space-between;gap:10px;padding-top:4px}
.national-players-toolbar>span{font-size:10.6px;color:#4f5a53}
.national-players-table{min-width:1010px}
.national-players-table th,.national-players-table td{font-size:10.3px;padding-top:5px;padding-bottom:5px}
.national-players-table th:nth-child(n/**/+3),.national-players-table td:nth-child(n/**/+3){text-align:center}
.national-players-table td:nth-last-child(-n/**/+2),.national-players-table th:nth-last-child(-n/**/+2){text-align:right}
.national-players-table .manager-status-icon{width:14px!important;height:14px!important;flex-basis:14px!important}
.player-row-tier{width:11px;height:15px;vertical-align:middle;margin-left:3px}
.national-player-footer,.national-player-summary{padding:7px 12px 11px;font-size:10.4px;line-height:1.45;color:#4c5650}
.national-match-toolbar{display:flex;align-items:center;gap:10px;padding:12px 14px 7px}
.national-match-toolbar select{margin-left:auto;min-width:150px;height:28px;border:1px solid #c5cec8;background:#fff;padding:2px 7px;font-size:10.5px}
.national-match-toolbar button:disabled{opacity:.45;cursor:not-allowed}
.national-match-table{width:100%;border-collapse:collapse;min-width:820px;font-size:10.5px}
.national-match-table th,.national-match-table td{padding:6px 8px;border-bottom:1px solid #dfe5e1;text-align:left}
.national-match-table th{font-weight:800;background:#fbfcfb}
.national-match-table th:first-child,.national-match-table td:first-child{width:55px;text-align:center}
.national-match-table .national-country-cell{min-width:130px}
.national-match-score{text-align:center!important;font-weight:700}
.national-result{text-align:center!important;font-weight:700}
.national-result.won{color:#158938}
.national-result.lost{color:#c82828}
.national-result.tie{color:#5f6761}
.national-title-content{padding:18px 16px 24px;display:grid;gap:24px;min-height:210px}
.national-title-content section{display:grid;gap:8px}
.national-title-content h3{margin:0;font-size:12px}
.national-title-content p{margin:0;color:#5a645d;font-size:11px}
/* manager-only player controls and full player profile functions */
.goal-player-tabs.owner-tabs{gap:1px}
.goal-player-tabs.owner-tabs .player-profile-tab{min-width:58px;padding-left:11px;padding-right:11px}
.goal-player-tabs.owner-tabs .player-profile-tab.active{background:#118b3a;color:#fff}
.goal-player-tabs.owner-tabs .player-profile-tab.active:hover{background:#118b3a;color:#fff}
.goal-player-tabs.owner-tabs .player-profile-tab:hover{background:#eff7f1;color:#087632}
.player-actions-list{padding:10px 14px 12px;display:grid;justify-items:start;gap:8px;background:#fff;min-height:84px}
.player-action-link{appearance:none;border:0;background:none;padding:0;color:#177c3c;text-decoration:none;font:inherit;font-size:12.5px;cursor:pointer;text-align:left}
.player-action-link:hover{text-decoration:underline;color:#0c672e}
.player-action-link.danger{color:#c93737}
.player-action-link.danger:hover{color:#a72121}
.player-actions-list.listing-active{gap:7px;padding-bottom:14px}
.player-actions-list .player-action-link[type="button"]{font-family:inherit}
.player-listing-details{display:grid;gap:5px;margin:1px 0 1px;font-size:12.5px;line-height:1.28;color:#2f2f2f}
.player-listing-details>div{display:block}
.player-listing-details span{font-weight:400;text-transform:none}
.player-listing-details b{font-weight:400;color:#222}
.player-action-link.listing-alternative{margin-top:2px}
.player-record-panel{min-height:260px}
.record-topline{display:flex;flex-direction:column;gap:8px;padding:14px 13px 10px;font-size:12.5px}
.record-topline b{font-weight:700}
.record-table-wrap{padding:0 13px 14px;overflow:auto}
.player-record-table{width:100%;min-width:760px;border-collapse:collapse;font-size:12.3px;color:#252b27}
.player-record-table th,.player-record-table td{padding:6px 7px;border-bottom:1px solid #dce3de;text-align:center;vertical-align:middle}
.player-record-table th{font-weight:700;background:#fbfcfb}
.player-record-table th:first-child,.player-record-table td:first-child{text-align:left}
.player-record-table td:first-child small{display:block;margin-top:2px;color:#2480bf;font-size:11.5px}
.player-record-table .season-heading td{text-align:left!important;background:#f4f5f4;font-weight:800}
.player-record-table .season-total td{background:#fff9df}
.player-record-table .grand-total td{background:#e7f5df;border-bottom-color:#c9dfbe}
.history-controls{display:flex;padding:13px 13px 6px;gap:1px}
.history-small{height:30px;padding:0 13px;border:1px solid #cfd8d2;background:#fff;color:#347baa;font-size:11.5px;cursor:pointer}
.history-small.active{background:#168c3b;border-color:#168c3b;color:#fff}
.history-table{min-width:640px}
.history-table th:nth-child(1),.history-table td:nth-child(1){width:70px}
.history-table th:nth-child(2),.history-table td:nth-child(2){width:60px}
.history-table th:nth-child(3),.history-table td:nth-child(3){width:130px}
.awards-table{min-width:620px}
.awards-table th:first-child,.awards-table td:first-child{width:190px}
.awards-table th:nth-child(2),.awards-table td:nth-child(2){text-align:left}
.player-award-name{display:inline-flex;align-items:center;gap:3px;flex-wrap:wrap}
.player-award-competition{display:inline-flex;align-items:center;gap:4px}
.player-award-flag{width:15px;height:10px;object-fit:cover;border:1px solid #c9d2cc;vertical-align:middle}
.player-award-detail{color:#4f5952}
.goal-player-empty.compact-empty{height:180px}
.coaching-layout{display:grid;grid-template-columns:31% 1fr;gap:16px;align-items:start}
.coach-attributes{grid-row:1/3}
.coach-attribute-content{padding:12px 14px 14px;font-size:12.5px}
.coach-attribute-content>p{margin:0 0 9px;display:flex;align-items:center;gap:5px}
.coach-attribute-content .goal-attribute-list{padding:5px 0 9px}
.coach-attribute-content .player-tier-icon{width:16px;height:21px}
.coach-all-btn,.coach-report-btn,.owner-form-btn{min-height:30px;padding:0 12px;border:1px solid #8cb99a;border-radius:3px;background:#fff;color:#176f36;font-size:11.5px;font-weight:600;cursor:pointer}
.coach-all-btn:hover,.coach-report-btn:hover,.owner-form-btn:hover{background:#f1f8f3;border-color:#57a16c}
.coach-report-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.coach-report-card{min-height:130px;background:#fff;border:1px solid #d8e1db;border-radius:3px;overflow:hidden;display:flex;flex-direction:column}
.coach-report-card h3{height:34px;margin:0;padding:0 12px;display:flex;align-items:center;border-bottom:1px solid #dbe2dd;background:#f8f9f8;font-size:13px;font-weight:500}
.coach-report-card p{margin:12px 12px 6px;line-height:1.45;font-size:12.5px}
.coach-report-card p.muted-report{color:#707a73}
.coach-report-card small{margin:0 12px 10px;color:#667069;font-size:10.5px}
.coach-report-card .coach-report-btn{align-self:flex-start;margin:0 12px 12px;margin-top:auto}
.coaching-tip{grid-column:1/-1}
.coaching-tip>p{margin:0;padding:15px 13px 17px;font-size:12.5px}
.player-notes-panel{min-height:240px}
.player-notes-form{padding:14px 13px 16px}
.player-notes-form textarea{display:block;width:100%;height:120px;resize:vertical;box-sizing:border-box;border:1px solid #cbd5ce;border-radius:3px;padding:9px 10px;background:#fff;font:inherit;font-size:12.5px;line-height:1.45;outline:0}
.player-notes-form textarea:focus{border-color:#54a46b;box-shadow:0 0 0 2px rgba(21,141,59,.09)}
.note-count{margin:9px 0 12px;color:#404a43;font-size:11.5px}
.owner-action-form-panel{background:rgba(255,255,255,.985);border:1px solid #d7dfd9;border-radius:3px;overflow:hidden}
.owner-action-title{height:38px;display:flex;align-items:center;padding:0 14px;border-bottom:1px solid #dce3de;background:#f8f9f8;color:#2b342e;font-size:13.5px;font-weight:500}
.owner-action-form{padding:14px;display:grid;gap:11px}
.owner-action-form>label{display:grid;gap:6px;font-size:11.5px}
.owner-action-form>label>b{font-weight:700;color:#29332d}
.owner-action-form input,.owner-action-form select{width:100%;height:31px;box-sizing:border-box;border:1px solid #c6d0c9;border-radius:3px;background:#fff;padding:3px 9px;color:#303a33;font:inherit;font-size:12px;outline:0}
.owner-action-form input:focus,.owner-action-form select:focus{border-color:#4ca164;box-shadow:0 0 0 2px rgba(18,140,58,.08)}
.loan-wage{margin:0 0 1px;font-size:12px}
.loan-wage b{font-weight:600}
.owner-form-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:2px}
.owner-form-btn{background:#168c3b;border-color:#168c3b;color:#fff}
.owner-form-btn:hover{background:#117532;border-color:#117532;color:#fff}
.owner-form-btn.secondary{background:#fff;color:#2f6f41;border-color:#b8c9bc}
.owner-form-back{margin-left:auto;color:#2478b4;text-decoration:none;font-size:11.5px}
.owner-form-back:hover{text-decoration:underline}
.player-flash{padding:9px 12px;border:1px solid #d6ddd8;background:#f8faf8;border-radius:3px;font-size:11.5px}
.player-flash.success{border-color:#c4e0cb;background:#eef9f1;color:#226b37}
/* – interactive formation editor, reference layout in Soccersim green style */
.default-tag{color:#2478bb;font-weight:600}
/* – formation polish: future tabs disabled, lineup shifted left, cleaner pitch */
/* Keep squad lists and pitch closer to the left settings column. */
/* Cleaner pitch markings and goals. */
/* – reference-inspired club administration rebuilt in Soccersim style */
.r39-workspace .game-main{padding-top:24px}
.club-workspace-shell{position:relative;z-index:2;width:min(1080px,calc(100% - 18px));margin:0 auto;display:grid;gap:14px}
.club-workspace-shell .team-breadcrumb{margin:0}
.workspace-card{background:rgba(255,255,255,.985);border:1px solid #d9e1dc;border-radius:4px;box-shadow:0 5px 16px rgba(31,54,39,.055);overflow:hidden}
.workspace-card-head{min-height:40px;padding:0 14px;display:flex;align-items:center;border-bottom:1px solid #dce4de;background:#fbfcfb}
.workspace-card-head h2{margin:0;font-size:13px;font-weight:500;color:#27312b}
.workspace-card-head .panel-help{margin-left:auto}
.workspace-tabs,.workspace-page-tabs{display:flex;align-items:flex-end;gap:2px;border-bottom:1px solid #dfe5e1;padding:10px 12px 0;background:#fff}
.workspace-page-tabs{justify-content:flex-end;border:0;padding:0 0 0;margin-bottom:-14px;position:relative;z-index:3}
.workspace-tab{min-height:34px;padding:0 13px;border:1px solid transparent;border-bottom:0;background:transparent;color:#23813b;font-size:11px;cursor:pointer}
.workspace-tab.active{background:#168b3a;color:#fff;border-color:#168b3a;border-radius:3px 3px 0 0;font-weight:700}
.workspace-tab:disabled{color:#9aa49d;cursor:default}
.workspace-button{min-height:30px;padding:0 12px;border:1px solid #14823a;border-radius:3px;background:#168b3a;color:#fff;font-size:10.5px;font-weight:700;cursor:pointer}
.workspace-button.neutral{border-color:#cbd5ce;background:#fff;color:#36413a}
.workspace-button.tiny{min-height:29px}
.workspace-button.active{background:#168b3a;color:#fff}
.muted-copy{color:#7a847d}
.form-inline-message{display:inline-block;margin-left:10px;color:#1b7e38;font-size:10.5px;font-weight:700}
.workspace-table-wrap,.finance-table-wrap{overflow:auto}
.workspace-table,.finance-table{width:100%;border-collapse:collapse;font-size:10.6px;color:#27302a}
.workspace-table th,.workspace-table td,.finance-table th,.finance-table td{border-bottom:1px solid #dfe5e1;padding:6px 7px;vertical-align:middle;text-align:left}
.workspace-table th,.finance-table th{font-weight:800;background:#fbfcfb;color:#27302a}
.workspace-table tbody tr:hover{background:#f7faf7}
.table-empty-cell{text-align:center!important;color:#7d8780;padding:20px!important}
/* Team titles */
.goal-titles-card .goal-section-head{min-height:40px;padding:0 14px;display:flex;align-items:center;border-bottom:1px solid #dce4de;background:#fbfcfb}
.goal-titles-card .goal-section-head h2{font-size:13px;font-weight:500;margin:0}
.title-ledger-body{padding:14px 16px 20px;font-size:13px;line-height:1.55}
.title-ledger-body h3{margin:0 0 9px;font-size:13px}
.title-ledger-body .runner-head{margin-top:22px}
.title-ledger-row{display:flex;gap:7px;align-items:baseline;margin:0 0 7px}
.title-ledger-row>b{white-space:nowrap}
.title-ledger-row>span{min-width:0;overflow-wrap:anywhere}
.title-competition-flag{display:inline-block;vertical-align:middle;margin-right:4px;object-fit:contain}
.title-ledger-empty{color:#7a857e;padding:2px 0 5px}
/* Finance */
.finance-power-body{padding:13px 14px 16px;font-size:10.8px}
.finance-power-body p{margin:0 0 7px}
.finance-quality{color:#607067}
.finance-power-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:11px}
.finance-power-grid>div{display:grid;gap:6px}
.finance-power-grid>div>b{font-size:10.7px}
.finance-power-grid>div>span{font-size:10.4px}
.power-bar{height:18px;background:#eef2ef;border:1px solid #d6ded8;border-radius:2px;overflow:hidden}
.power-bar i{display:block;height:100%;background:linear-gradient(90deg,#71b94d,#4ea83c)}
.finance-power-grid small{display:flex;justify-content:space-between;color:#7b867e}
.finance-ledger-card{padding-bottom:12px}
.finance-period-row{display:flex;justify-content:space-between;padding:12px 14px 7px;font-size:10.5px}
.finance-table-wrap{padding:0 14px}
.finance-table{font-size:10.4px}
.finance-table th{text-align:left}
.finance-table td.money-cell{text-align:right}
.finance-total-row td{border-top:1px solid #cfd8d1}
.finance-summary{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;padding:13px 14px 10px;font-size:10.5px}
.finance-summary>div{display:flex;flex-direction:column;gap:7px}
.profit-negative{color:#c33}
.profit-positive{color:#178638}
.finance-ledger-card>.workspace-button{margin-left:14px}
/* Negotiations */
.workspace-empty-message{padding:22px 15px;font-size:12px;color:#303a33}
.compact-empty-card{min-height:92px}
/* Board */
.board-expectations,.board-evaluation{padding:12px 14px 18px;font-size:10.7px}
.board-expect-head,.board-expectations>div:not(.board-expect-head){display:grid;grid-template-columns:37% 1fr;gap:18px;border-bottom:1px solid #dfe5e1;padding:7px 6px}
.board-expect-head{font-weight:800}
.board-evaluation p{margin:0 0 8px}
.board-metric-head,.board-metric-row{display:grid;grid-template-columns:120px 250px 1fr;gap:14px;align-items:center;padding:6px}
.board-metric-head{border-bottom:1px solid #dfe5e1;font-weight:800}
.board-meter{height:18px;background:#eff2f0;border:1px solid #d9e0db;border-radius:2px;overflow:hidden}
.board-meter i{display:flex;align-items:center;justify-content:center;height:100%;min-width:24px;color:#fff;font-style:normal;font-size:9.6px;font-weight:800}
.board-meter i.good{background:#5db553}
.board-meter i.mid{background:#43a9c5}
.board-meter i.bad{background:#d74d4d}
.board-evaluation h3{font-size:12px;font-weight:500;margin:18px 0 7px}
.last-review{color:#626e66}
/* Scouting */
.scout-searches-card,.new-search-card{position:relative}
.scout-search-copy{padding:13px 14px 10px;font-size:10.6px;line-height:1.45;color:#37413b}
.scouting-table{min-width:950px}
.scouting-table th:nth-child(1),.scouting-table td:nth-child(1),.scouting-table th:nth-child(9),.scouting-table td:nth-child(9){text-align:center}
.tiny-icon-button{width:19px;height:19px;border:0;background:transparent;color:#16863a;font-weight:900;cursor:pointer;padding:0}
.tiny-icon-button+ .tiny-icon-button{color:#bc3b35}
.skill-summary-cell{max-width:290px;white-space:normal;line-height:1.35}
.scout-progress{position:relative;width:82px;height:18px;background:#eef1ef;border:1px solid #dce2de;border-radius:2px;overflow:hidden}
.scout-progress i{display:block;height:100%;background:#3f9e53}
.scout-progress b{position:absolute;inset:0;display:grid;place-items:center;font-size:9px;color:#243129}
.scout-form{padding:14px}
.scout-section-title{text-align:center;font-weight:800;font-size:10.8px;margin:1px 0 11px}
.scout-section-title span{font-weight:600;color:#59655d}
.scout-general-grid,.scout-skills-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px 26px}
.scout-general-grid label,.scout-skills-grid label,.manager-settings-form label{display:flex;flex-direction:column;gap:5px;font-size:10.5px;font-weight:700}
.scout-general-grid input,.scout-general-grid select,.scout-skills-grid input,.manager-settings-form select{height:31px;border:1px solid #cfd8d2;border-radius:3px;background:#fff;padding:0 9px;font-size:10.5px}
.scout-general-grid .wide-checkbox{flex-direction:row;align-items:center;font-weight:500}
.scout-general-grid .wide-checkbox input{height:auto}
.skill-title{margin-top:18px}
.scout-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin:14px 0 12px}
.scout-bottom-grid fieldset{border:0;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.scout-bottom-grid legend{width:100%;text-align:center;font-size:10.5px;font-weight:800;margin-bottom:8px}
.scout-bottom-grid label{font-size:10.4px}
.scout-bottom-grid input{accent-color:#168b3a}
/* Coaching */
.coaching-card{padding-bottom:10px}
.coaching-search-row{display:flex;justify-content:flex-end;padding:9px 13px 5px;font-size:10.4px;font-weight:700}
.coaching-search-row.second{border-top:1px solid #dfe5e1;margin-top:8px}
.coaching-search-row input{height:25px;width:170px;border:1px solid #9ea9a2;margin-left:7px}
.coaching-table{min-width:930px}
.coaching-table th:nth-child(2),.coaching-table td:nth-child(2),.coaching-table th:nth-child(3),.coaching-table td:nth-child(3){text-align:center}
.coaching-table td:nth-child(6),.coaching-table td:nth-child(7){white-space:normal}
.coaching-table small{display:block;margin-top:2px;color:#5f6a63}
.coach-refresh{color:#d68427;font-size:11px}
.table-footer-line{padding:7px 12px;font-size:10px;color:#4f5b53}
/* Manager */
.manager-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:2px 4px 0}
.manager-page-head h1{margin:0;font-size:25px;font-weight:500;color:#26312a}
.manager-page-head nav{display:flex;gap:2px}
.manager-head-tab{min-height:36px;border:0;background:transparent;color:#23813b;padding:0 13px;font-size:10.8px}
.manager-head-tab:disabled{color:#9ba59e}
.manager-info-lines{padding:13px 14px 18px;font-size:10.7px}
.manager-info-lines p{margin:0 0 8px}
.manager-info-lines h3{font-size:12px;font-weight:500;margin:13px 0 5px}
.manager-info-lines h3 span{font-size:10px;color:#667169}
.plain-danger-link,.inline-text-button{border:0;background:transparent;padding:0;color:#16813a;cursor:pointer;font:inherit}
.plain-danger-link{margin-top:1px}
.plain-danger-link:hover,.inline-text-button:hover{text-decoration:underline}
.manager-applications{padding:4px 0 0 16px;display:grid;gap:5px}
.history-toolbar{padding:10px 14px 4px;display:flex;gap:2px}
.manager-history-table{margin:0 14px 12px;width:calc(100% - 28px)}
.job-search-copy{padding:12px 14px 18px;font-size:10.8px;line-height:1.45}
.job-search-copy p{margin:0 0 8px}
.job-search-copy ul{margin:4px 0 9px;padding-left:24px}
.job-search-copy li{margin:4px 0}
.job-app-list{margin-top:12px;padding-top:10px;border-top:1px solid #dfe5e1;display:flex;gap:8px;flex-wrap:wrap}
.job-app-list span{padding:3px 7px;background:#eef7ef;border:1px solid #cfe1d2;border-radius:3px}
/* Settings */
.manager-settings-form{display:grid;grid-template-columns:1fr 1fr;gap:24px 28px;padding:13px 14px 18px}
.settings-column{display:grid;align-content:start;gap:10px}
.settings-column h3{margin:0 0 2px;font-size:10.8px}
.settings-column h3:not(:first-child){margin-top:8px}
.manager-settings-form .settings-check{display:flex;flex-direction:row;align-items:flex-start;gap:7px;font-weight:600;line-height:1.35}
.settings-check input{margin-top:1px;accent-color:#168b3a}
.settings-check span{font-weight:500;color:#657069}
.settings-save{grid-column:1/-1;width:max-content}
/* Champions League / Europa League: Qualifying, Groups and Finals */
.intl-stage-groups .intl-left-panel{padding-bottom:4px}
.intl-group-subtabs{display:flex;align-items:center;gap:20px;min-height:31px;padding:0 0 6px;border-bottom:0}
.intl-group-subtab{appearance:none;border:0;background:transparent;padding:2px 0;color:#2478bb;font:inherit;font-size:10.8px;font-weight:500;cursor:pointer}
.intl-group-subtab.active{color:#26312a}
.intl-group-list{display:flex;flex-direction:column;gap:0}
.intl-group-block{padding:10px 0 19px}
.intl-group-block h3{margin:0 0 14px;font-size:18px;line-height:1.2;font-weight:400;color:#222c25;letter-spacing:-.15px}
.intl-group-table-wrap{width:100%;overflow-x:auto}
.intl-group-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:10.8px;color:#28332c}
.intl-group-table th,.intl-group-table td{height:27px;padding:0 5px;border-bottom:1px solid #e6ebe7;text-align:center;font-weight:400;white-space:nowrap}
.intl-group-table th{height:25px;font-weight:800;background:#fff;color:#273129}
.intl-group-table th:nth-child(1),.intl-group-table td:nth-child(1){width:45px}
.intl-group-table th:nth-child(2),.intl-group-table td:nth-child(2){width:auto;text-align:left}
.intl-group-table th:nth-child(n/**/+3),.intl-group-table td:nth-child(n/**/+3){width:29px}
.intl-group-table tbody tr.qualified td{background:#e4f4dc}
.intl-group-team{display:flex;align-items:center;gap:4px;min-width:0}
.intl-group-team a{color:#2478bb;text-decoration:none;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.intl-group-team.own a{font-weight:800;color:#147733}
.intl-group-team img{width:15px;height:10px;object-fit:cover;border:1px solid #ccd4cf;flex:0 0 auto}
.intl-group-team .manager-status-icon{width:13px;height:13px;flex-basis:13px}
.intl-stage-groups .intl-right-panel{align-self:start}
.intl-stage-groups .intl-competition-select{margin-bottom:6px}
.intl-stage-qualifying .intl-round-block:first-of-type{padding-top:7px}
.intl-stage-qualifying .panel-button-row{padding-top:11px}
/* reference-inspired account utilities, adapted to the Soccersim green/white UI */
.action-link{text-decoration:none}
.game-actions .has-unread{position:relative}
.game-actions .has-unread:after{content:"";position:absolute;right:4px;top:7px;width:5px;height:5px;border-radius:50%;background:#8ee26f;box-shadow:0 0 0 2px rgba(4,55,25,.9)}
.account-dropdown{min-width:184px!important;padding:0!important;border-radius:0 0 4px 4px!important}
.account-dropdown .nav-drop-item{border-radius:0;padding:8px 14px}
.account-dropdown .nav-drop-heading{padding:9px 14px 4px;text-transform:uppercase;font-size:9px;letter-spacing:.055em;color:#9aa19d;background:#fff}
.profile-menu-separator{height:1px;background:#e3e7e4;margin:4px 0}
.account-dropdown .nav-drop-heading+ .nav-drop-item{padding-top:6px}
.manager-online-overlay{position:fixed;inset:0;z-index:500;background:rgba(0,0,0,.58);display:grid;place-items:start center;padding-top:min(17vh,145px)}
.manager-online-modal{width:min(610px,calc(100% - 26px));background:#fff;border:1px solid #cfd8d2;border-radius:6px;box-shadow:0 14px 40px rgba(0,0,0,.3);overflow:hidden}
.manager-online-head{height:54px;padding:0 16px;display:flex;align-items:center;border-bottom:1px solid #dfe5e1}
.manager-online-head h2{margin:0;font-size:16px;font-weight:500}
.manager-online-head h2 span{color:#188c3a;margin-right:8px}
.manager-online-head button{margin-left:auto;border:0;background:transparent;font-size:23px;color:#757d78;cursor:pointer}
.manager-online-body{padding:13px 16px 12px}
.online-table-head,.online-manager-row{display:grid;grid-template-columns:1.3fr .9fr .85fr 80px;align-items:center;gap:10px;min-height:38px;border-bottom:1px solid #e2e7e4;font-size:11px}
.online-table-head{min-height:32px;font-weight:800}
.online-manager-row>span:first-child,.online-manager-row>span:nth-child(2){color:#16833a}
.online-actions{display:flex;gap:5px}
.online-actions button,.online-actions a{width:27px;height:27px;border:1px solid #d2dbd5;background:#fff;color:#16833a;border-radius:3px;display:grid;place-items:center;text-decoration:none;cursor:pointer}
.online-empty{padding:22px 3px;color:#727c75;font-size:11px}
.manager-online-foot{padding:10px 16px 13px;border-top:1px solid #e4e8e5;text-align:right}
.ruby-shop-card{padding-bottom:0}
.ruby-shop-card>.workspace-card-head{height:42px}
.ruby-balance{margin-left:auto;color:#126d30;font-size:11px;font-weight:700}
.ruby-pack-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:14px 14px 18px}
.ruby-pack{border:1px solid #cfe0d4;border-radius:6px;overflow:hidden;text-align:center;background:#fff;box-shadow:0 6px 18px rgba(18,70,35,.05)}
.ruby-pack-head{background:#f3faf5;border-bottom:1px solid #cfe0d4}
.ruby-pack h3{margin:0;text-align:left;padding:11px 13px;color:#236b38;font-size:13px;font-weight:600}
.ruby-pack-body{padding:16px 14px 18px;display:flex;align-items:center;justify-content:center}
.ruby-pay-button{display:block;width:100%;max-width:280px;aspect-ratio:661 / 220;height:auto;border:0;padding:0;margin:0 auto;background:transparent url("assets/paypal-button-soccersim.png?v=R186") center/contain no-repeat;cursor:pointer;transition:transform .14s ease,filter .14s ease;filter:drop-shadow(0 4px 10px rgba(4,54,18,.18))}
.ruby-pay-button span{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.ruby-pay-button:hover{transform:translateY(-1px) scale(1.01);filter:drop-shadow(0 6px 14px rgba(4,54,18,.24))}
.ruby-pay-button:active{transform:translateY(0) scale(.995)}
.ruby-info,.ruby-history{padding:0 14px 14px}
.ruby-info h3,.ruby-history h3{font-size:16px;margin:0 0 9px}
.ruby-info p{margin:6px 0;font-size:11px;color:#2f3933}
.ruby-history{margin-top:12px}
.ruby-history h3{border-bottom:1px solid #dce4df;padding-bottom:9px}
.ruby-history-head,.ruby-history-row{display:grid;grid-template-columns:80px 70px 95px 1.1fr 1fr 1fr;gap:9px;align-items:center;min-height:31px;border-bottom:1px solid #e1e6e3;font-size:10.5px}
.ruby-history-empty{padding:18px 0;text-align:center;color:#7c847f;font-size:11px}
.ruby-offline-note{padding:10px 14px;background:#f7faf8;border-top:1px solid #e1e7e3;color:#778079;font-size:10px}
.mailbox-card{overflow:visible}
.mailbox-toolbar-note{padding:12px 14px 4px;font-size:10px}
.mailbox-actions{display:flex;align-items:center;gap:8px;padding:0 14px 10px;font-size:10.5px}
.mailbox-actions>span{font-weight:700;margin-right:2px}
.mailbox-grid{display:grid;grid-template-columns:minmax(470px,.95fr) minmax(360px,1.05fr);gap:18px;padding:0 14px 15px}
.mailbox-filters{display:flex;align-items:center;gap:7px;margin:0 0 10px}
.mailbox-filters a{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:34px;padding:6px 13px;border:1px solid #c7d8cb;border-radius:6px;color:#246d3a;background:#fff;text-decoration:none;font-size:12px;font-weight:800}
.mailbox-filters a.active{background:#168442;border-color:#168442;color:#fff}
.mailbox-filters a:focus-visible{outline:2px solid #177c40;outline-offset:2px}
.mailbox-unread-count{display:inline-block;min-width:18px;text-align:center}
.mail-empty-row td{text-align:center!important;padding:19px 8px!important;font-size:12px;color:#647267}
.mailbox-actions .workspace-button:disabled{opacity:.6;cursor:wait}
@media (max-width:700px){.mailbox-filters a{min-height:44px}.mailbox-filters{flex-wrap:wrap}}
.mail-list-tools{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:7px;color:#16833a;font-size:10px}
.mail-list-tools label{color:#232d27;font-weight:700}
.mail-list-tools input{height:25px;width:155px;border:1px solid #aebdb3}
.plain-link{border:0;background:transparent;padding:0;color:#16833a;cursor:pointer;font-size:inherit}
.mail-table{width:100%;border-collapse:collapse;font-size:10.5px}
.mail-table th,.mail-table td{height:31px;border-bottom:1px solid #dfe5e1;text-align:left;padding:4px 6px}
.mail-table th{font-weight:800;background:#fbfcfb}
.mail-table th:first-child,.mail-table td:first-child{width:29px}
.mail-table th:nth-child(4),.mail-table th:nth-child(5),.mail-table td:nth-child(4),.mail-table td:nth-child(5){text-align:center;width:47px}
.mail-row.unread .mail-subject{font-weight:800;color:#183b22}
.mail-row.selected{background:#f0f8f2}
.mail-subject{border:0;background:transparent;color:#28322c;cursor:pointer;padding:0;display:flex;align-items:center;gap:7px;font:inherit}
.mail-subject span{color:#9ab0a0}
.mail-count{font-size:10px;padding-top:6px}
.mail-reader-pane{border:1px solid #dce4df;min-height:390px;border-radius:3px;background:#fff}
.mail-empty-reader{height:100%;min-height:390px;display:grid;place-content:center;text-align:center;color:#555f59;gap:9px;font-size:11px}
.mail-empty-reader span{font-size:46px;color:#c8d1cb;font-weight:200}
.mail-reader-head{min-height:67px;padding:13px 15px;border-bottom:1px solid #e1e7e3;display:flex;justify-content:space-between}
.mail-reader-head h3{margin:0 0 5px;font-size:14px}
.mail-reader-head span{color:#7f8a83;font-size:10px}
.mail-reader-head>span{font-size:27px;color:#c6d2ca}
.mail-reader-body{padding:17px 15px;white-space:pre-wrap;font-size:11px;line-height:1.6}
.mail-compose{padding:14px;display:grid;gap:10px}
.mail-compose h3{margin:0;font-size:14px}
.mail-compose label,.community-body label{display:grid;gap:5px;font-size:10.5px;font-weight:700}
.mail-compose input,.mail-compose textarea,.community-body input{border:1px solid #c8d4cc;border-radius:2px;padding:8px;font:inherit}
.mail-compose textarea{min-height:180px;resize:vertical}
.mail-compose>div{display:flex;gap:7px}
.mail-compose .workspace-button.neutral{display:inline-flex;align-items:center;text-decoration:none}
#mailComposeStatus,#inviteStatus{font-size:10px;color:#167b35}
#inviteStatus.error{color:#b33b32;font-weight:700}
#inviteStatus.success{color:#167b35;font-weight:700}
.community-body{padding:16px;display:grid;gap:12px;font-size:11px}
.community-body p{margin:0}
.community-body .invite-email-help{font-size:9.5px;line-height:1.35;color:#7b857f;font-weight:500}
.community-body input.invalid{border-color:#c95a50;box-shadow:0 0 0 1px rgba(201,90,80,.12)}
.community-actions{display:flex;gap:8px}
.community-actions .workspace-button:disabled{opacity:.48;cursor:not-allowed;filter:grayscale(.15);box-shadow:none}
/* clean promotion/relegation colours and complete season fixtures */
.legend-colour{display:inline-block;width:22px;height:12px;border-radius:3px;border:1px solid transparent;box-sizing:border-box}
.legend-colour.prom{background:#e9f7e7;border-color:#b9d9b4}
.legend-colour.rel{background:#fae7e7;border-color:#e3b6b6}
.season-fixture-note{display:flex;justify-content:space-between;gap:18px;align-items:center;margin:10px 14px 2px;padding:9px 11px;border:1px solid #dce7df;background:#f8fbf9;border-radius:4px;color:#4a5750;font-size:11px}
.season-fixture-note b{font-size:12px;color:#26362d}
.fixture-leg-title{margin:16px 0 2px;padding:8px 10px;background:#eff7f0;border-left:3px solid #18863b;color:#31513a;font-size:12px;font-weight:700}
.fixture-leg-title.second{margin-top:24px}
.match-turn h3 small{font-size:11px;font-weight:500;color:#7a8580;margin-left:7px}
.team-season-schedule-note{margin:5px 0 0;color:#647069;font-size:11px;font-weight:400}
.cup-leg-label{display:inline-block;margin-left:5px;padding:1px 5px;border-radius:8px;background:#f0f3f1;color:#6b746f;font-size:9px;vertical-align:1px}
/* compact group-stage presentation for Champions League, Europa League and World Cup */
.intl-stage-groups .intl-main-grid{grid-template-columns:minmax(0,1.65fr) minmax(330px,.86fr);gap:10px;padding:10px 12px 12px}
.intl-stage-groups .intl-left-panel{padding-right:0}
.intl-stage-groups .intl-phase-row{justify-content:flex-start;padding-left:4px;min-height:33px;font-size:12.5px}
.intl-stage-groups .intl-group-subtabs{padding:1px 4px 7px;gap:18px;border-bottom:1px solid #e1e7e3}
.intl-group-view{display:none}
.intl-group-view.active{display:block}
.intl-group-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding-top:7px}
.intl-group-block{padding:0;border:1px solid #dce4df;border-radius:2px;background:#fff;overflow:hidden}
.intl-group-block h3{margin:0;padding:8px 8px 6px;border-bottom:1px solid #e3e8e5;font-size:12.2px;line-height:1.1;font-weight:800;color:#252f29;letter-spacing:0;background:#fbfcfb}
.intl-group-table-wrap{overflow:visible}
.intl-group-table{font-size:9.8px;table-layout:fixed}
.intl-group-table th,.intl-group-table td{height:25px;padding:0 3px}
.intl-group-table th{height:23px;font-size:9.2px}
.intl-group-table th:nth-child(1),.intl-group-table td:nth-child(1){width:32px}
.intl-group-table th:nth-child(2),.intl-group-table td:nth-child(2){width:auto}
.intl-group-table th:nth-child(n/**/+3),.intl-group-table td:nth-child(n/**/+3){width:25px}
.intl-group-table tbody tr.qualified td{background:#e8f6e4}
.intl-group-team{gap:3px}
.intl-group-team .manager-status-icon{width:11px;height:11px;flex-basis:11px}
.intl-group-team img{width:14px;height:9px}
.intl-stage-groups .intl-right-panel{padding-left:2px}
.intl-stage-groups .intl-right-panel .info-card{border:1px solid #dce4df;border-radius:3px;padding:0 10px 10px;background:#fff}
.intl-stage-groups .intl-right-panel .info-card+.info-card{margin-top:10px;padding-top:0;border-top:1px solid #dce4df}
.intl-stage-groups .intl-right-panel .info-card h3{text-align:left;font-size:12px;padding:10px 0 8px}
.intl-stage-groups .intl-competition-select{padding:0 0 7px;margin-bottom:7px}
.intl-group-match-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding-top:7px}
.intl-group-match-card{border:1px solid #dce4df;border-radius:2px;background:#fff;overflow:hidden}
.intl-group-match-card h3{margin:0;padding:8px;border-bottom:1px solid #e3e8e5;background:#fbfcfb;font-size:12px}
.intl-group-matchday{padding:6px 8px;border-bottom:1px solid #edf0ee}
.intl-group-matchday:last-child{border-bottom:0}
.intl-group-matchday>b{display:block;margin-bottom:4px;font-size:9px;color:#758078}
.intl-group-fixture{display:grid;grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr);align-items:center;gap:3px;min-height:21px;font-size:9.5px}
.intl-group-fixture>span:last-child .intl-group-team{justify-content:flex-end}
.intl-group-fixture em{text-align:center;font-style:normal;font-weight:700;color:#59635d}
.national-card-head{justify-content:space-between!important}
.national-card-head>span{font-size:13px;font-weight:600}
.national-card-head>b{font-size:11px;font-weight:500}
.national-world-groups .national-cup-grid{grid-template-columns:minmax(0,1.65fr) minmax(330px,.86fr);gap:10px;padding:10px 12px 12px}
.national-world-groups .national-cup-left{padding-right:0}
.national-world-groups .national-phase-row{justify-content:flex-start;padding-left:4px;min-height:33px;font-size:12.5px}
.national-world-groups .intl-group-subtabs{padding:1px 4px 7px;border-bottom:1px solid #e1e7e3}
.national-world-groups .national-cup-right{padding-left:2px}
.national-world-groups .national-cup-right .info-card{border:1px solid #dce4df;border-radius:3px;padding:0 10px 10px;background:#fff}
.national-world-groups .national-cup-right .info-card+.info-card{margin-top:10px;padding-top:0;border-top:1px solid #dce4df}
.national-world-groups .national-cup-right .info-card h3{text-align:left;font-size:12px;padding:10px 0 8px}
.national-group-team a{color:#2478bb}
/* explicit three-stage international cup navigation */
.intl-phase-row{position:relative}
.intl-phase-row a{position:relative;display:inline-flex;align-items:center;padding:6px 0 7px;color:#267bb8;transition:color .14s ease;border-bottom:2px solid transparent;line-height:1}
.intl-phase-row a:hover{color:#157a36}
.intl-phase-row a.active{color:#137f38;font-weight:800;border-bottom-color:#198f3f}
.intl-phase-row a.active::after{content:none}
.intl-stage-qualifying .intl-left-panel,.intl-stage-finals .intl-left-panel{min-height:100%}
.intl-stage-qualifying .intl-round-block:first-of-type,.intl-stage-finals .intl-round-block:first-of-type{margin-top:0}
/* fixed global header, proposal 1: classic & clean.
   This block intentionally comes last so every in-game page uses the same geometry. */
.game-page .fixed-global-header{background:linear-gradient(180deg,#064c24 0%,#043b1c 100%)!important;
  border-bottom:1px solid rgba(115,213,101,.72)!important;
  box-shadow:0 4px 15px rgba(0,45,21,.16)!important;
  position:relative!important;
  z-index:80!important;}
.game-page .fixed-global-header .game-header-inner,.compact-game-ui .fixed-global-header .game-header-inner{width:100%!important;
  max-width:none!important;
  height:66px!important;
  min-height:66px!important;
  margin:0!important;
  padding:0 18px!important;
  display:grid!important;
  grid-template-columns:178px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:16px!important;}
.game-page .fixed-global-header .game-brand{width:178px!important;
  min-width:178px!important;
  height:66px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  overflow:hidden!important;}
.game-page .fixed-global-header .game-brand img,.compact-game-ui .fixed-global-header .game-brand img{display:block!important;
  width:164px!important;
  max-width:164px!important;
  height:auto!important;
  margin:0!important;
  filter:brightness(0) invert(1)!important;
  opacity:1!important;}
.game-page .fixed-global-header .game-nav{min-width:0!important;
  height:66px!important;
  display:flex!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:0!important;
  overflow:visible!important;
  flex:1 1 auto!important;}
.game-page .fixed-global-header .game-nav>.nav-menu{width:auto!important;
  min-width:0!important;
  height:66px!important;
  display:flex!important;
  align-items:stretch!important;
  flex:0 0 auto!important;}
.game-page .fixed-global-header .nav-trigger{width:auto!important;
  height:66px!important;
  min-height:66px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:5px!important;
  padding:0 12px!important;
  color:#fff!important;
  font-family:"Segoe UI",Arial,sans-serif!important;
  font-size:12.5px!important;
  line-height:1!important;
  font-weight:650!important;
  white-space:nowrap!important;
  border-radius:0!important;}
.game-page .fixed-global-header .nav-trigger:hover,.game-page .fixed-global-header .nav-menu.open>.nav-trigger,.game-page .fixed-global-header .nav-search:hover{background:rgba(255,255,255,.085)!important;
  color:#fff!important;
  text-decoration:none!important;}
.game-page .fixed-global-header .chev{color:#bcd8c6!important;font-size:11px!important;line-height:1!important}
.game-page .fixed-global-header .nav-search{width:auto!important;
  min-width:82px!important;
  height:66px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  padding:0 12px!important;
  color:#fff!important;
  font-size:12.5px!important;
  font-weight:650!important;
  white-space:nowrap!important;}
.game-page .fixed-global-header .search-symbol{font-size:21px;line-height:1;transform:translateY(-1px)}
.game-page .fixed-global-header .search-label{font-size:12.5px}
.game-page .fixed-global-header .nav-dropdown,.compact-game-ui .fixed-global-header .nav-dropdown{top:66px!important;
  min-width:164px!important;
  padding:5px!important;
  border:1px solid #d9e1dc!important;
  border-radius:0 0 5px 5px!important;
  background:#fff!important;
  box-shadow:0 10px 24px rgba(16,42,27,.16)!important;}
.game-page .fixed-global-header .nav-drop-item{font-size:12px!important;padding:8px 10px!important}
.game-page .fixed-global-header .game-actions{min-width:max-content!important;
  height:66px!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  white-space:nowrap!important;
  border-left:1px solid rgba(255,255,255,.18)!important;
  padding-left:16px!important;}
.game-page .fixed-global-header .counter{min-width:48px!important;
  height:66px!important;
  padding:0 7px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  color:#fff!important;
  font-size:15px!important;}
.game-page .fixed-global-header .counter b{color:#fff!important;font-size:12px!important;font-weight:700!important;line-height:1!important;text-shadow:none!important}
.game-page .fixed-global-header .header-coin-icon,.game-page .fixed-global-header .header-online-icon,.game-page .fixed-global-header .header-mail-icon{display:block!important;transform-origin:center center!important;vertical-align:middle!important}
.game-page .fixed-global-header .icon-action{width:31px!important;height:31px!important;min-width:31px!important;
  border:1px solid rgba(255,255,255,.4)!important;border-radius:50%!important;
  color:#fff!important;background:transparent!important;}
.game-page .fixed-global-header .profile-menu{height:66px!important;margin:0 0 0 2px!important;display:flex!important;align-items:stretch!important}
.game-page .fixed-global-header .profile-trigger{width:auto!important;min-width:126px!important;height:66px!important;padding:0 8px!important;justify-content:flex-start!important;}
.game-page .fixed-global-header .profile-avatar{width:32px!important;height:32px!important;min-width:32px!important;background:#fff!important;color:#0b7935!important;font-size:17px!important}
.game-page .fixed-global-header .profile-name{max-width:92px!important;overflow:visible!important;text-overflow:clip!important;color:#fff!important;font-size:11.5px!important;font-weight:700!important;white-space:normal!important;overflow-wrap:anywhere;}
.game-page .fixed-global-header .profile-dropdown{top:66px!important;right:0!important;left:auto!important;min-width:166px!important}
.game-page .fixed-global-header .chat-action{height:66px;border:0;background:transparent;color:#fff;display:flex;align-items:center;gap:6px;padding:0 7px;cursor:pointer;font-size:13px}
.game-page .fixed-global-header .chat-action span{font-size:20px;line-height:1}
.game-page .fixed-global-header .chat-action b{font-size:11.5px}
.game-page .fixed-global-header .chat-action:hover{background:rgba(255,255,255,.085)}
.game-page .fixed-global-statusbar{background:#050906!important;
  border-bottom:0!important;
  box-shadow:0 2px 6px rgba(0,0,0,.13)!important;
  position:relative!important;
  z-index:70!important;}
.game-page .fixed-global-statusbar .game-statusbar-inner,.compact-game-ui .fixed-global-statusbar .game-statusbar-inner{width:100%!important;max-width:none!important;height:36px!important;min-height:36px!important;margin:0!important;padding:0 25px!important;
  display:flex!important;align-items:center!important;gap:18px!important;color:#fff!important;font-family:"Segoe UI",Arial,sans-serif!important;font-size:11px!important;}
.game-page .fixed-global-statusbar .status-season,.game-page .fixed-global-statusbar .status-season b,.game-page .fixed-global-statusbar .status-tick,.game-page .fixed-global-statusbar .status-tick span,.game-page .fixed-global-statusbar .status-tick b{color:#fff!important;font-size:11px!important}
.game-page .fixed-global-statusbar .status-season,.game-page .fixed-global-statusbar .status-tick{display:flex;align-items:center;gap:7px!important;white-space:nowrap}
.game-page .fixed-global-statusbar .status-divider{width:1px;height:17px;background:rgba(255,255,255,.35);display:block}
.game-page .fixed-global-statusbar .status-server{margin-left:auto!important;color:#fff!important;font-size:10.5px!important;font-weight:650!important}
/* Keep the desktop positions stable even on pages using compact-game-ui / soccersim-scale. */
/* – fixed formation slots + dedicated BANK removal rail.
   Players can only enter the pitch from the squad lists. Pitch coordinates never move. */
/* one consistent hover/click language for club and national-team names. */
.universal-team-nav{cursor:pointer;}
.universal-team-nav:hover{color:#08752c;}
.universal-team-nav:hover > span:last-child,.universal-team-nav:hover a{text-decoration:underline;}
.universal-team-nav:focus-visible{outline:2px solid #16833b;outline-offset:2px;border-radius:3px;}
.intl-team-name.universal-team-nav,.national-team-name.universal-team-nav,.national-country-cell.universal-team-nav,.club-cell-wrap.universal-team-nav,.match-team-inline.universal-team-nav{display:inline-flex;align-items:center;gap:5px;}
/* Match views: team names always use normal font weight.
   Keep status colours/icons, but never emphasize the managed club with bold text. */
.goal-match-table .match-team-inline,.goal-match-table .match-team-inline.own,.recent-match-row .home-team,.recent-match-row .away-team,.recent-match-row .home-team.own,.recent-match-row .away-team.own,.matches-box .match-team,.matches-box .match-team .team-link,.cup-match .cup-team,.cup-match .club-cell-wrap,.intl-match-row .intl-team-name,.national-match-row .national-team-name,.national-match-row .national-team-name.own{font-weight: 400 !important;}
/* search page */
.global-search-card,.global-search-results-card{background:rgba(255,255,255,.985);border:1px solid #d9e1dc;border-radius:4px;box-shadow:0 5px 16px rgba(31,54,39,.055);overflow:hidden}
.global-search-card{margin-bottom:16px}
.global-search-body{padding:14px}
.global-search-note{padding:14px 16px;border:1px solid #e7ddaf;background:#f8f1d6;border-radius:4px;color:#88692b;font-size:12px;line-height:1.5;margin-bottom:16px}
.global-search-form{display:grid;grid-template-columns:minmax(0,1fr) 168px 110px;gap:0;align-items:stretch;max-width:680px}
.global-search-form input,.global-search-form select{height:42px;border:1px solid #cfd7d2;font-size:13px;color:#263029;background:#fff;outline:none}
.global-search-form input{padding:0 12px;border-radius:4px 0 0 4px;border-right:0}
.global-search-form select{padding:0 12px;border-right:0}
.global-search-form .workspace-button{min-height:42px;border-radius:0 4px 4px 0;padding:0 18px}
.search-result-count{margin-left:auto;color:#5a655d;font-size:12px;font-weight:700}
.global-search-results-body{padding:14px}
.search-placeholder-copy{padding:8px 2px;color:#4b564f;font-size:13px;line-height:1.6}
.search-results-table-wrap{overflow:auto}
.search-results-table{width:100%;border-collapse:collapse;font-size:12px}
.search-results-table th,.search-results-table td{padding:11px 10px;border-bottom:1px solid #e3e9e4;text-align:left;vertical-align:middle}
.search-results-table th{background:#fbfcfb;color:#2c362f;font-size:11.5px;font-weight:700}
.search-result-link,.search-open-link{color:#146f30;font-weight:700;text-decoration:none}
.search-result-link:hover,.search-open-link:hover{text-decoration:underline}
/* player status icons: national call-up, transfer, loan, card and injury */
.player-name-with-status{display:inline-flex;align-items:center;gap:4px;min-width:0;vertical-align:middle}
.player-inline-statuses{display:inline-flex;align-items:center;gap:2px;flex:0 0 auto;margin-left:2px;vertical-align:middle}
.player-inline-status{display:inline-block;width:16px;height:16px;object-fit:contain;image-rendering:auto;vertical-align:-3px;flex:0 0 16px}
.player-inline-status.national-callup{width:16px;height:16px}
.national-callup-link{display:inline-flex;align-items:center;justify-content:center;line-height:0;text-decoration:none;border:0;background:transparent;padding:0;margin:0;cursor:pointer;vertical-align:middle}
.national-callup-link:hover .national-callup,.national-callup-link:focus-visible .national-callup{transform:translateY(-1px);filter:brightness(1.08)}
.national-callup-link:focus-visible{outline:1px solid currentColor;outline-offset:1px;border-radius:2px}
.player-inline-status.transfer-status,.player-inline-status.loan-status{width:16px;height:16px}
.player-inline-status.card-status,.player-inline-status.card-table-status{width:16px;height:16px}
.player-inline-status.injury-status{width:16px;height:16px}
.goal-player-title h1{display:flex;align-items:center;gap:5px;min-width:0}
.goal-player-title h1>.player-inline-statuses{margin-left:3px}
.players-table .player-name-with-status,.national-players-table .player-name-with-status{white-space:nowrap}
.goal-ref-match-row{display:grid;grid-template-columns:42px minmax(0,1.35fr) 76px minmax(0,1.35fr) 108px;align-items:center;column-gap:8px}
.goal-ref-match-row .turn-num{font-weight:700;color:#3d4740}
.goal-ref-match-row .goal-ref-home,.goal-ref-match-row .goal-ref-away{min-width:0}
.goal-ref-match-row .score.compact{display:inline-flex;align-items:center;justify-content:center;min-width:56px;font-weight:700;color:#33403a}
.goal-ref-match-row .goal-ref-competition{font-size:12px;color:#536058;text-align:left;white-space:nowrap}
.team-info-score-link{font-weight:700;color:#1b65b9;text-decoration:none}
.team-info-score-link:hover{text-decoration:underline}
.team-info-score-pending{font-weight:700;color:#536058}
.classic-cup-layout{align-items:flex-start}
.classic-cup-box{padding-top:4px}
.classic-cup-round-block{padding:8px 0 12px;border-bottom:1px solid #e2e8e3}
.classic-cup-round-block:last-child{border-bottom:0;padding-bottom:0}
.classic-cup-round-block h3{margin:0 0 8px;font-size:16px;color:#26342a}
.classic-cup-round-list{display:flex;flex-direction:column;gap:4px}
.classic-cup-match-row{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr) 90px minmax(64px,118px);align-items:center;column-gap:8px;padding:2px 0}
.classic-cup-home,.classic-cup-away{min-width:0}
.classic-cup-x{font-weight:700;color:#49564e;text-align:center}
.classic-cup-turns{font-size:11px;color:#647168;text-align:right;white-space:nowrap}
.classic-cup-score{font-weight:700;color:#335c92;text-align:left;white-space:nowrap}
.classic-cup-score:empty::after{content:' '}
.goal-ref-match-row{display:grid;grid-template-columns:42px minmax(0,1fr) 64px minmax(0,1fr) 92px;align-items:center;column-gap:8px}
.goal-ref-match-row .turn-num{font-weight:700;color:#3d4740}
.goal-ref-match-row .goal-ref-home,.goal-ref-match-row .goal-ref-away{min-width:0}
.goal-ref-match-row .score.compact{display:inline-flex;align-items:center;justify-content:center;min-width:52px;font-weight:700;color:#33403a}
.goal-ref-match-row .goal-ref-competition{font-size:12px;color:#536058;text-align:left;white-space:nowrap}
/* elite star status, selected-lineup emphasis and loaned-out squad block */
.player-name-stars{display:inline-flex;align-items:center;margin-right:2px;color:#dd861b;font-size:13px;line-height:1;letter-spacing:-1px;flex:0 0 auto;text-shadow:0 0 0 rgba(0,0,0,0)}
.player-name-stars.stars-1{letter-spacing:0}
.player-name-with-status.lineup-selected .player-name-link{font-weight:800;font-style:italic;color:#146f35}
.lineup-player-row .player-name-link{font-weight:800;font-style:italic}
.player-star-status.elite{display:inline-flex;gap:1px;font-size:17px;line-height:1;vertical-align:middle}
.player-star-status.elite .on{color:#dd861b}
.player-star-none{color:#4c5650;font-weight:600}
.player-inline-status.loaned-out-status{width:10px;height:10px;flex:0 0 10px;image-rendering:auto;vertical-align:-1px;margin-left:1px}
.loan-status-value{display:inline-flex;align-items:center;gap:5px}
.loaned-squad-block{margin-top:23px;padding-top:14px;border-top:1px solid #d9dfe2}
.loaned-squad-heading{display:flex;align-items:center;justify-content:space-between;margin:0 14px 6px;color:#273129}
.loaned-squad-heading b{font-size:19px;font-weight:500;letter-spacing:0}
.loaned-toolbar{padding-top:7px;padding-bottom:8px}
.loaned-toolbar>span{color:#6d7770;font-size:11px}
.loaned-abilities-table .loaned-player-row td{background:#fff}
.loaned-summary{padding-top:8px!important}
/* loan player profile matching the compact reference in Soccersim style */
.loan-player-layout .goal-player-panel{box-shadow:none}
.loan-club-current-row{margin-top:-1px}
.loan-club-current-row>span{visibility:hidden}
.loan-current-club{display:inline-flex;align-items:center;gap:5px;min-width:0}
.loan-current-club-icon{width:11px;height:9px;display:inline-block;position:relative;flex:0 0 auto;border:1px solid #73827a;border-radius:2px;background:#eef2ef;box-sizing:border-box}
.loan-current-club-icon:before{content:"";position:absolute;left:1px;right:1px;top:1px;height:2px;background:#238a47;border-radius:1px}
.loan-current-club-icon.muted:before{background:#7c8b85}
.loan-current-club a,.loan-club-details a,.loan-pay-line a{color:#287abc;text-decoration:none}
.loan-current-club a:hover,.loan-club-details a:hover,.loan-pay-line a:hover{text-decoration:underline}
.loan-club-details-row{align-items:start!important}
.loan-club-details{display:grid;gap:3px;line-height:1.34}
.loan-club-details>span{display:block}
.loan-pay-line{color:#287abc}
.loan-pay-line a{font-weight:400}
.stat-competition-flag{width:15px;height:9px;object-fit:cover;margin-right:5px;border:1px solid rgba(0,0,0,.12);vertical-align:-1px}
.competition-cell-link{display:inline-flex;align-items:center;white-space:nowrap}
.keeper-season-stats th,.keeper-season-stats td{padding-left:5px;padding-right:5px}
.loan-player-layout .actions-panel .actions-empty{height:28px}
/* league-specific transfer market */
.transfer-market-card{overflow:hidden}
.transfer-market-title{min-height:43px!important}
.transfer-market-title .league-name-block{display:flex;align-items:baseline;gap:12px;min-width:0}
.transfer-market-title .league-name-block strong{font-size:14px;color:#222b25;font-weight:650}
.transfer-market-title .league-name-block span{font-size:11px;color:#758078;white-space:nowrap}
.transfer-market-flash{margin:12px 14px 0;padding:8px 10px;border:1px solid #d7dfda;border-radius:3px;background:#f7faf8;color:#435048;font-size:11px}
.transfer-market-flash.success{border-color:#b7dbbf;background:#eef8f0;color:#146d30}
.transfer-market-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px 8px}
.transfer-filter-controls{display:flex;align-items:center;gap:10px}
.transfer-filter-controls select{width:130px;height:32px;border:1px solid #c8d1cb;border-radius:3px;background:#fff;padding:0 10px;color:#303a33;font-size:11px}
.transfer-filter-controls button{height:32px;border:1px solid #c8d1cb;border-radius:3px;background:#fff;color:#28332c;padding:0 14px;font-size:11px;cursor:pointer}
.transfer-filter-controls button:hover{background:#f2f7f3;border-color:#aebdb3}
.transfer-market-search{display:flex;align-items:center;gap:7px;font-size:10.5px;font-weight:700;color:#273129}
.transfer-market-search input{width:170px;height:27px;border:1px solid #8f9b93;border-radius:0;background:#fff;padding:0 7px;font-size:11px}
.transfer-market-table-wrap{overflow-x:auto;padding:0 13px}
.transfer-market-table{width:100%;min-width:1110px;border-collapse:collapse;font-family:"Segoe UI",Arial,sans-serif;font-size:10.4px;color:#263029}
.transfer-market-table th,.transfer-market-table td{padding:5px 4px;border-bottom:1px solid #dde3df;text-align:center;white-space:nowrap;line-height:1.25}
.transfer-market-table th{font-size:10px;font-weight:800;color:#222b25;background:#fff;border-bottom-color:#aab4ad}
.transfer-market-table th:nth-child(2),.transfer-market-table td:nth-child(2),.transfer-market-table th:nth-child(3),.transfer-market-table td:nth-child(3){text-align:left}
.transfer-market-table th:nth-last-child(4),.transfer-market-table td:nth-last-child(4),.transfer-market-table th:nth-last-child(3),.transfer-market-table td:nth-last-child(3),.transfer-market-table th:nth-last-child(2),.transfer-market-table td:nth-last-child(2){text-align:right}
.transfer-market-table tbody tr:hover{background:#f4f8f5}
.transfer-market-table a{color:#157b39;text-decoration:none;font-weight:400}
.transfer-market-table a:hover{text-decoration:underline}
.market-player-cell{display:inline-flex;align-items:center;gap:4px;min-width:0}
.market-player-tier{width:11px!important;height:15px!important;flex:0 0 11px!important;margin:0!important}
.market-club-link{display:inline-block;max-width:150px;overflow:visible;text-overflow:clip;vertical-align:middle;white-space:normal!important;overflow-wrap:anywhere;}
.market-free-agent{color:#69736c;font-style:italic}
.market-action-link{font-weight:500!important}
.market-own-listing{color:#0a7b31;font-weight:700}
.market-empty-row td{text-align:center!important;padding:30px 12px!important;color:#6c766f}
.transfer-market-summary{padding:7px 14px 12px;display:flex;justify-content:space-between;gap:16px;color:#58645c;font-size:10.5px}
.transfer-market-summary span{color:#7a847d}
/* aligned match presentation and balanced home/away schedule */
.match-team-inline.match-team-side{width:100%;
  min-width:0;
  display:flex;
  align-items:center;
  gap:6px;
  color:#2577b8;
  font-weight:400;
  text-decoration:none;
  line-height:1.2;}
.match-team-inline.match-team-side:hover{color:#08752c;text-decoration:none}
.match-team-inline.match-team-side:hover .match-team-name{text-decoration:underline}
.match-team-inline.match-team-side.home{justify-content:flex-end;text-align:right}
.match-team-inline.match-team-side.away{justify-content:flex-start;text-align:left}
.match-team-inline.match-team-side.own{color:#0b8234;font-weight:400}
.match-team-inline.match-team-side .match-team-name{min-width:0;overflow:visible;text-overflow:clip;font-weight:400;overflow-wrap:anywhere;white-space:normal!important;}
.match-team-inline.match-team-side .manager-status-icon{flex:0 0 auto;margin:0}
.match-team-inline.match-team-side.away .manager-status-icon{order:2}
.match-team-inline.match-team-side.away .match-team-name{order:1}
.fixture-separator{grid-column:1/-1;font-weight:500;color:#303a35}
.recent-match-row{grid-template-columns:38px 112px minmax(165px,1fr) 52px minmax(165px,1fr) 28px;
  column-gap:8px;
  min-height:39px;}
.recent-match-row .competition-mini{overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.recent-match-row .home-team,.recent-match-row .away-team{width:100%;font-weight:400}
.recent-match-row .score{font-weight:500;white-space:nowrap}
.goal-match-table{table-layout:fixed}
.goal-match-table col.col-turn{width:7%}
.goal-match-table col.col-home{width:26%}
.goal-match-table col.col-score{width:8%}
.goal-match-table col.col-away{width:26%}
.goal-match-table col.col-result{width:9%}
.goal-match-table col.col-competition{width:15%}
.goal-match-table col.col-formation{width:9%}
.goal-match-table .home-cell{text-align:right}
.goal-match-table .away-cell{text-align:left}
.goal-match-table .home-cell,.goal-match-table .away-cell{padding-left:10px;padding-right:10px}
.goal-match-table .score-cell{text-align:center;font-weight:500}
.goal-match-table .team-cell .match-team-inline{max-width:100%}
.goal-match-header{padding-bottom:12px}
.league-match-row{grid-template-columns:minmax(0,1fr) 96px minmax(0,1fr) 70px}
.league-match-row .match-team{padding:5px 8px}
.league-match-row .match-team .match-team-inline{width:100%}
.league-match-row .match-score{font-weight:500}
/* – player release / free transfers / professional youth contracts */
.youth-player-actions{min-height:72px}
.free-agent-profile-label{color:#5f6962;font-weight:600}
.contract-offer-panel{max-width:none}
.contract-offer-form{gap:9px;padding-top:13px;padding-bottom:13px}
.contract-priority-row,.contract-suggested-length{font-size:12px;line-height:1.35;color:#2d352f}
.contract-priority-row b,.contract-suggested-length b{font-weight:700;text-transform:lowercase}
.contract-priority-row span{color:#4e5851}
.contract-offer-form>label>b{text-transform:lowercase}
.contract-help-lines{display:grid;gap:2px;margin-top:-3px;font-size:11.7px;line-height:1.28;color:#313a34}
.contract-help-lines b{font-weight:700;text-transform:lowercase}
.contract-help-dot{display:inline-flex;align-items:center;justify-content:center;width:13px;height:13px;border-radius:50%;background:#2d7eba;color:#fff;font-size:9px;font-weight:800;vertical-align:1px;cursor:help}
.contract-offer-form .owner-form-actions{margin-top:4px}
/* straight match columns: fixed icon rails and aligned team names on every club match view */
.match-team-inline.match-team-side{display:grid!important;
  width:100%;
  min-width:0;
  align-items:center;
  column-gap:7px;
  justify-content:stretch!important;
  line-height:1.2;}
.match-team-inline.match-team-side.home{grid-template-columns:16px minmax(0,1fr);
  text-align:left!important;}
.match-team-inline.match-team-side.away{grid-template-columns:minmax(0,1fr) 16px;
  text-align:right!important;}
.match-team-inline.match-team-side .manager-status-icon{width:16px!important;
  min-width:16px!important;
  height:16px!important;
  flex-basis:16px!important;
  margin:0!important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  justify-self:center;}
.match-team-inline.match-team-side .manager-status-icon img{display:block;
  max-width:15px;
  max-height:15px;
  object-fit:contain;}
.match-team-inline.match-team-side .match-team-name{min-width:0;
  width:100%;
  overflow:visible;
  text-overflow:clip;
  
  font-weight:400!important;overflow-wrap:anywhere;white-space:normal!important;}
.match-team-inline.match-team-side.home .match-team-name{text-align:left;}
.match-team-inline.match-team-side.away .match-team-name{text-align:right;}
.match-team-inline.match-team-side.own .match-team-name{font-weight:400!important;}
/* Full team match schedule: both icon rails remain on one exact vertical line. */
.goal-match-table .home-cell,.goal-match-table .away-cell{padding-left:10px;
  padding-right:10px;
  overflow:hidden!important;}
.goal-match-table .home-cell{text-align:left!important}
.goal-match-table .away-cell{text-align:right!important}
.goal-match-table .team-cell .match-team-inline{width:100%;
  max-width:100%;}
.goal-match-table .score-cell{text-align:center!important;
  font-variant-numeric:tabular-nums;}
/* Club front-page match card: identical rails for every row, no zig-zag names/icons. */
.recent-match-row{grid-template-columns:34px 104px minmax(155px,1fr) 44px minmax(155px,1fr) 24px!important;
  column-gap:8px!important;
  align-items:center;
  min-height:38px;}
.recent-match-row .home-team,.recent-match-row .away-team{width:100%;
  min-width:0;}
.recent-match-row .score{width:100%;
  text-align:center;
  font-variant-numeric:tabular-nums;}
/* League matchdays use the same geometry as club pages. */
.league-match-row{grid-template-columns:minmax(210px,1fr) 80px minmax(210px,1fr) 66px!important;
  column-gap:0;}
.league-match-row .match-team{min-width:0;
  overflow:hidden;}
.league-match-row .match-score{text-align:center;
  font-variant-numeric:tabular-nums;}
/* Domestic cup fixtures: fixed icon rails and mirrored away-team layout.
   Home rows are [icon] Team Name; away rows are Team Name [icon].
   Shared rendering means every country's national cup gets the same geometry. */
.cup-box .cup-round-list{display:grid;
  gap:0;}
.cup-box .cup-match{display:grid!important;
  grid-template-columns:minmax(190px,1fr) 28px minmax(190px,1fr) 38px!important;
  column-gap:0!important;
  align-items:center;
  min-height:32px;
  padding:0!important;
  border-bottom:1px solid #e6ece7;
  font-size:12px;}
.cup-box .cup-match:last-child{border-bottom:0}
.cup-box .cup-team{min-width:0;
  width:100%;
  overflow:hidden;
  white-space:nowrap;}
.cup-box .cup-team.home{padding:0 10px 0 2px;
  text-align:left;}
.cup-box .cup-team.away{padding:0 2px 0 10px;
  text-align:right;}
.cup-box .cup-team-inline{display:grid!important;
  align-items:center;
  width:100%;
  min-width:0;
  gap:7px!important;
  font-weight:400!important;
  line-height:1.2;}
.cup-box .cup-team-inline.home{grid-template-columns:18px minmax(0,1fr);
  text-align:left;}
.cup-box .cup-team-inline.away{grid-template-columns:minmax(0,1fr) 18px;
  text-align:right;}
.cup-box .cup-team-inline .manager-status-icon{width:16px!important;
  height:16px!important;
  flex:0 0 16px!important;
  margin:0!important;
  justify-self:center;}
.cup-box .cup-team-inline .manager-status-icon img{width:100%!important;
  height:100%!important;
  object-fit:contain;
  display:block;}
.cup-box .cup-team-label{display:block;
  min-width:0;
  overflow:visible;
  text-overflow:clip;
  overflow-wrap:anywhere;white-space:normal!important;}
.cup-box .cup-team-inline.home .cup-team-label{justify-self:start}
.cup-box .cup-team-inline.away .cup-team-label{justify-self:end}
.cup-box .cup-vs{width:100%;
  text-align:center!important;
  color:#525e56;
  font-weight:500;}
.cup-box .cup-score{width:100%;
  text-align:right!important;
  padding-right:2px;
  color:#2876b7;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;}
/* Cup fixture side order lock.
   Visual contract on every domestic cup row:
   [ICON] Home Team   x   Away Team [ICON]
   Explicit order rules prevent generic club-cell styles from moving the away icon
   in front of the club name. */
.cup-box .cup-team-inline.home .manager-status-icon{order:1!important;grid-column:1!important;}
.cup-box .cup-team-inline.home .cup-team-label{order:2!important;grid-column:2!important;}
.cup-box .cup-team-inline.away .cup-team-label{order:1!important;grid-column:1!important;text-align:right!important;justify-self:end!important;}
.cup-box .cup-team-inline.away .manager-status-icon{order:2!important;grid-column:2!important;justify-self:center!important;}
.cup-box .cup-team.home .cup-team-inline{justify-content:stretch!important;}
.cup-box .cup-team.away .cup-team-inline{justify-content:stretch!important;}
/* Hard DOM/visual lock for domestic cup rows.
   Required order on every cup fixture:
   [ICON] Home Team   x   Away Team [ICON]
   This intentionally does not reuse .club-cell-wrap so global club-cell rules
   cannot move the away icon in front of the name. */
.cup-box .cup-team-inline{display:flex!important;
  align-items:center!important;
  width:100%!important;
  min-width:0!important;
  gap:7px!important;
  font-weight:400!important;
  line-height:1.2!important;}
.cup-box .cup-team-side-home{flex-direction:row!important;
  justify-content:flex-start!important;
  text-align:left!important;}
.cup-box .cup-team-side-away{flex-direction:row!important;
  justify-content:flex-end!important;
  text-align:right!important;}
.cup-box .cup-team-side-home .cup-status-slot{order:1!important;}
.cup-box .cup-team-side-home .cup-team-label{order:2!important;text-align:left!important;}
.cup-box .cup-team-side-away .cup-team-label{order:1!important;text-align:right!important;}
.cup-box .cup-team-side-away .cup-status-slot{order:2!important;}
.cup-box .cup-status-slot{display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 18px!important;
  width:18px!important;
  min-width:18px!important;
  height:18px!important;
  margin:0!important;
  padding:0!important;}
.cup-box .cup-status-slot .manager-status-icon{display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:16px!important;
  height:16px!important;
  min-width:16px!important;
  flex:0 0 16px!important;
  margin:0!important;}
.cup-box .cup-team-side-home .cup-status-slot{margin-right:0!important;}
.cup-box .cup-team-side-away .cup-status-slot{margin-left:0!important;}
/* National cup fixture rows: one fixed visual rail in every country.
   Required visual order:
   [ICON] Home Team        x        Away Team [ICON]        result
   The two team columns are fixed by the outer grid, so club-name length can no
   longer move the icon columns from row to row. This shared .cup-box renderer is
   used by every country's domestic cup. */
.cup-box .cup-round{margin:0 0 18px!important;
  padding:0 0 12px!important;
  border-bottom:1px solid #e2e8e4!important;}
.cup-box .cup-round:last-child{margin-bottom:0!important;
  border-bottom:0!important;}
.cup-box .cup-round h3{margin:0!important;
  padding:8px 0 7px!important;
  text-align:center!important;
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:700!important;
  color:#202821!important;}
.cup-box .cup-round-list{display:grid!important;
  grid-auto-rows:minmax(29px,auto)!important;
  gap:0!important;
  width:100%!important;}
.cup-box .cup-match{display:grid!important;
  grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr) 72px!important;
  align-items:center!important;
  column-gap:0!important;
  min-height:29px!important;
  width:100%!important;
  padding:0!important;
  border-bottom:1px solid #e5eae7!important;
  font-size:12px!important;
  line-height:1.2!important;}
.cup-box .cup-match:last-child{border-bottom:0!important;}
.cup-box .cup-team{display:block!important;
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  padding:0!important;}
.cup-box .cup-team.home{padding-right:10px!important;}
.cup-box .cup-team.away{padding-left:10px!important;}
.cup-box .cup-team-inline,.cup-box .cup-team-inline.universal-team-nav{box-sizing:border-box!important;
  display:grid!important;
  align-items:center!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  column-gap:6px!important;
  font-weight:400!important;
  line-height:1.2!important;
  color:#1a6fa8!important;
  text-decoration:none!important;}
.cup-box .cup-team-side-home,.cup-box .cup-team-inline.home{grid-template-columns:18px minmax(0,1fr)!important;
  text-align:left!important;}
.cup-box .cup-team-side-away,.cup-box .cup-team-inline.away{grid-template-columns:minmax(0,1fr) 18px!important;
  text-align:right!important;}
.cup-box .cup-status-slot{display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:18px!important;
  min-width:18px!important;
  height:18px!important;
  margin:0!important;
  padding:0!important;}
.cup-box .cup-status-slot .manager-status-icon{display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:15px!important;
  min-width:15px!important;
  height:15px!important;
  margin:0!important;
  padding:0!important;}
.cup-box .cup-status-slot .manager-status-icon img{display:block!important;
  width:15px!important;
  height:15px!important;
  object-fit:contain!important;}
.cup-box .cup-team-side-home .cup-status-slot,.cup-box .cup-team-inline.home .cup-status-slot{grid-column:1!important;
  grid-row:1!important;
  justify-self:start!important;}
.cup-box .cup-team-side-home .cup-team-label,.cup-box .cup-team-inline.home .cup-team-label{grid-column:2!important;
  grid-row:1!important;
  justify-self:start!important;
  text-align:left!important;}
.cup-box .cup-team-side-away .cup-team-label,.cup-box .cup-team-inline.away .cup-team-label{grid-column:1!important;
  grid-row:1!important;
  justify-self:end!important;
  text-align:right!important;}
.cup-box .cup-team-side-away .cup-status-slot,.cup-box .cup-team-inline.away .cup-status-slot{grid-column:2!important;
  grid-row:1!important;
  justify-self:end!important;}
.cup-box .cup-team-label{display:block!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere;white-space:normal!important;}
.cup-box a.cup-team-inline:hover .cup-team-label{text-decoration:underline!important;}
.cup-box .cup-vs{display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  text-align:center!important;
  color:#424d45!important;
  font-weight:400!important;
  font-variant-numeric:tabular-nums!important;}
.cup-box .cup-score{display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0 2px 0 8px!important;
  text-align:right!important;
  color:#2876b7!important;
  font-weight:400!important;
  font-variant-numeric:tabular-nums!important;
  white-space:nowrap!important;}
/* compact transfer market: full table visible without horizontal scrolling */
.transfer-market-card{overflow:visible}
.transfer-market-table-wrap{width:100%;
  box-sizing:border-box;
  overflow-x:hidden;
  padding:0 12px;}
.transfer-market-table{width:100%;
  min-width:0;
  table-layout:fixed;
  border-collapse:collapse;
  font-family:"Segoe UI",Arial,sans-serif;
  font-size:9.6px;
  color:#263029;}
.transfer-market-table th,.transfer-market-table td{box-sizing:border-box;
  min-width:0;
  overflow:visible;
  text-overflow:clip;
  padding:5px 2px;
  
  line-height:1.25;
  vertical-align:middle;overflow-wrap:anywhere;white-space:normal!important;}
.transfer-market-table th{font-size:9.2px}
.transfer-market-table th:nth-child(1),.transfer-market-table td:nth-child(1),.transfer-market-table th:nth-child(2),.transfer-market-table td:nth-child(2){text-align:left}
.transfer-market-table th:nth-child(n/**/+3):nth-child(-n/**/+14),.transfer-market-table td:nth-child(n/**/+3):nth-child(-n/**/+14){text-align:center}
.transfer-market-table th:nth-child(15),.transfer-market-table td:nth-child(15),.transfer-market-table th:nth-child(16),.transfer-market-table td:nth-child(16),.transfer-market-table th:nth-child(17),.transfer-market-table td:nth-child(17){text-align:right}
.transfer-market-table th:nth-child(18),.transfer-market-table td:nth-child(18){text-align:right}
.market-col-name{width:13.5%}
.market-col-club{width:14%}
.market-col-pos{width:3.4%}
.market-col-side{width:3.8%}
.market-col-age{width:3.5%}
.market-col-skill{width:3.55%}
.market-col-pressure{width:7.8%}
.market-col-wage{width:7.3%}
.market-col-value{width:8.2%}
.market-col-price{width:8.5%}
.market-col-action{width:5.8%}
.market-name-wrap{display:flex;align-items:center;gap:5px;min-width:0;width:100%}
.market-name-wrap .player-flag{flex:0 0 auto;width:16px;height:10px;object-fit:cover}
.market-player-cell{display:flex;align-items:center;gap:3px;min-width:0;max-width:100%;overflow:hidden}
.market-player-cell>a{display:block;min-width:0;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.market-club-link{display:block;max-width:100%;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.market-pressure-col{font-size:9px}
.market-money-col{font-variant-numeric:tabular-nums;letter-spacing:-.1px}
.market-action-col a,.market-own-listing{font-size:9.2px}
.transfer-market-summary{padding-top:8px}

/* mobile transfer market cards */
@media (max-width:820px), (pointer:coarse){
  .transfer-market-title{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:10px!important;
    min-height:0!important;
  }
  .transfer-market-title .league-name-block{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:2px!important;
  }
  .transfer-market-title .league-name-block strong{font-size:15px!important;}
  .transfer-market-title .league-name-block span{font-size:12px!important;white-space:normal!important;}
  .transfer-league-select{
    width:100%!important;
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
  }
  .transfer-league-select label{flex:0 0 auto;font-size:13px!important;}
  .transfer-league-select select{flex:1 1 auto;height:40px!important;font-size:14px!important;}
  .transfer-market-toolbar{
    flex-direction:column!important;
    align-items:stretch!important;
    gap:10px!important;
    padding:12px!important;
  }
  .transfer-filter-controls{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px!important;
  }
  .transfer-filter-controls select{width:100%!important;height:40px!important;font-size:14px!important;}
  .transfer-filter-controls button{
    min-width:88px!important;
    height:40px!important;
    font-size:14px!important;
    border-radius:8px!important;
  }
  .transfer-market-search{
    display:grid!important;
    grid-template-columns:60px minmax(0,1fr)!important;
    align-items:center!important;
    gap:10px!important;
    font-size:13px!important;
  }
  .transfer-market-search input{
    width:100%!important;
    height:40px!important;
    border-radius:8px!important;
    font-size:14px!important;
    padding:0 10px!important;
  }
  .transfer-market-card{overflow:visible!important;}
  .transfer-market-table-wrap{padding:0 10px 10px!important;overflow:visible!important;}
  .transfer-market-table,
  .transfer-market-table tbody{
    display:block!important;
    width:100%!important;
    min-width:0!important;
  }
  .transfer-market-table colgroup,
  .transfer-market-table thead{display:none!important;}
  .transfer-market-table tbody{display:grid!important;gap:10px!important;}
  .transfer-market-table tr{
    display:block!important;
    border:1px solid #dbe4de!important;
    border-radius:14px!important;
    background:#fff!important;
    box-shadow:0 1px 0 rgba(15,52,28,.03),0 8px 20px rgba(14,37,22,.05)!important;
    overflow:hidden!important;
  }
  .transfer-market-table tbody tr:hover{background:#fff!important;}
  .transfer-market-table td{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:12px!important;
    padding:8px 12px!important;
    border-bottom:1px solid #eef2ef!important;
    text-align:left!important;
    white-space:normal!important;
    line-height:1.3!important;
    font-size:13px!important;
  }
  .transfer-market-table td::before{
    content:attr(data-label);
    flex:0 0 84px;
    color:#6f7b73;
    font-size:10px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:.03em;
    text-transform:uppercase;
  }
  .transfer-market-table td.market-name-col{
    display:block!important;
    padding:12px 12px 10px!important;
    background:#f8fbf9!important;
  }
  .transfer-market-table td.market-name-col::before{display:none!important;}
  .market-name-wrap{display:flex!important;align-items:flex-start!important;gap:8px!important;}
  .market-name-wrap .player-flag{width:18px!important;height:12px!important;margin-top:4px!important;}
  .market-player-cell{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:5px!important;min-width:0!important;}
  .market-player-cell>a{font-size:17px!important;font-weight:700!important;line-height:1.18!important;}
  .market-player-tier{width:13px!important;height:17px!important;flex:0 0 13px!important;}
  .transfer-market-table td.market-club-col a,
  .transfer-market-table td.market-club-col .market-free-agent{font-size:14px!important;font-weight:600!important;}
  .transfer-market-table td.market-action-col{
    padding-top:12px!important;
    padding-bottom:12px!important;
    border-bottom:0!important;
  }
  .transfer-market-table td.market-action-col a,
  .transfer-market-table td.market-action-col .market-own-listing{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:38px!important;
    padding:0 12px!important;
    border:1px solid #188b3d!important;
    border-radius:8px!important;
    background:#188b3d!important;
    color:#fff!important;
    font-size:13px!important;
    font-weight:700!important;
    text-decoration:none!important;
  }
  .transfer-market-table td.market-action-col .market-own-listing{
    background:#f2f5f3!important;
    color:#4b5950!important;
    border-color:#d1dad4!important;
  }
  .transfer-market-table tr.market-empty-row,
  .transfer-market-table tr.market-loading-row{
    box-shadow:none!important;
    background:#fafcfa!important;
    border-style:dashed!important;
  }
  .transfer-market-table tr.market-empty-row td,
  .transfer-market-table tr.market-loading-row td{
    display:block!important;
    text-align:center!important;
    padding:24px 14px!important;
    border-bottom:0!important;
  }
  .transfer-market-table tr.market-empty-row td::before,
  .transfer-market-table tr.market-loading-row td::before{display:none!important;content:none!important;}
  .transfer-market-summary{
    display:flex!important;
    flex-direction:column!important;
    gap:3px!important;
    padding:8px 12px 14px!important;
    font-size:12px!important;
  }
}

@media (max-width:420px){
  .transfer-market-table td{padding:8px 10px!important;font-size:12.5px!important;}
  .transfer-market-table td::before{flex-basis:74px;font-size:9.5px;}
  .market-player-cell>a{font-size:15px!important;}
}


/* prepared clean-world market state + mobile squad cleanup */
.transfer-market-empty-state{
  max-width:520px;
  margin:0 auto;
  padding:10px 8px;
  text-align:center;
}
.transfer-market-empty-icon{
  width:42px;
  height:42px;
  margin:0 auto 8px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid #cfe1d4;
  border-radius:50%;
  background:#f0f8f2;
  color:#16833a;
  font-size:24px;
  font-weight:800;
}
.transfer-market-empty-state>strong{
  display:block;
  color:#26352c;
  font-size:15px;
  font-weight:800;
}
.transfer-market-empty-state>p{
  margin:4px 0 10px;
  color:#6b776f;
  font-size:12px;
}
.transfer-market-ready-pills{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:6px;
  margin:0 0 9px;
}
.transfer-market-ready-pills span{
  padding:5px 8px;
  border:1px solid #d5e4d9;
  border-radius:999px;
  background:#f7fbf8;
  color:#287044;
  font-size:10px;
  font-weight:700;
}
.transfer-market-empty-state>small{
  display:block;
  color:#7a857e;
  font-size:10.5px;
  line-height:1.45;
}
@media (max-width:820px), (pointer:coarse){
  /* Club squad: mobile does not need search fields; desktop remains unchanged. */
  .players-card.compact-players-card:not(.player-subpage-card) .players-toolbar label{
    display:none!important;
  }
  .players-card.compact-players-card:not(.player-subpage-card) .players-toolbar{
    justify-content:flex-start!important;
  }
  .transfer-market-empty-state{padding:16px 6px 14px;}
  .transfer-market-empty-icon{width:46px;height:46px;font-size:26px;}
  .transfer-market-empty-state>strong{font-size:16px;}
  .transfer-market-empty-state>p{font-size:13px;}
  .transfer-market-ready-pills{gap:7px;}
  .transfer-market-ready-pills span{font-size:10.5px;padding:6px 9px;}
  .transfer-market-empty-state>small{font-size:11px;}
}

/* match-based coaching and trait analysis */
.coach-progress-block{display:grid;gap:6px;margin:8px 0 4px}
.coach-progress-label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10.5px;color:#39473e}
.coach-progress-track{position:relative;height:17px;border:1px solid #cfd9d2;border-radius:2px;background:#eef2ef;overflow:hidden;box-shadow:inset 0 1px 2px rgba(0,0,0,.04)}
.coach-progress-track i{position:absolute;inset:0 auto 0 0;display:block;height:100%;background:linear-gradient(90deg,#1f963f,#57b84f);transition:width .2s ease;pointer-events:none}
.coach-progress-track b{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;height:100%;padding:0 5px;color:#fff!important;-webkit-text-fill-color:#fff;font-size:11.5px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 1px 0 #0a5724,1px 0 0 #0a5724,0 -1px 0 #0a5724,-1px 0 0 #0a5724;white-space:nowrap}
.coach-progress-block>small{display:block;color:#6c776f;font-size:9.7px}
.coach-report-card.report-pending{background:#fcfdfc}
.coach-report-card.report-complete{border-color:#c8ddcf}
.coach-report-actions{display:flex;justify-content:flex-start;margin-top:9px}
.coach-cancel-btn,.trait-report-button{min-height:29px;padding:0 11px;border:1px solid #188b3d;border-radius:3px;background:#188b3d;color:#fff;font-size:10.3px;font-weight:700;cursor:pointer}
.coach-cancel-btn,.trait-report-button.secondary{background:#fff;color:#3a4940;border-color:#c9d4cc}
.coach-cancel-btn:hover,.trait-report-button.secondary:hover{background:#f5f8f6}
.trait-report-button:not(.secondary):hover{background:#117331}
.trait-locked-copy{display:grid;gap:4px;margin-bottom:10px;color:#626e66}
.trait-locked-copy b{color:#303a33;font-size:11px}
.trait-locked-copy span,.trait-report-note{font-size:10px;line-height:1.4;color:#6e7871}
.trait-analysis-pending{color:#147b35;font-weight:700;white-space:nowrap}
.trait-unknown{color:#8a938d;font-style:italic}
.traits-panel .coach-progress-block{margin-top:2px}
.traits-panel .trait-report-button{margin-top:4px}
.coach-report-card .coach-progress-block{margin:10px 12px 6px}
.coach-report-card .coach-report-actions{padding:0 12px 12px;margin-top:auto}
.coach-report-card .coach-cancel-btn{margin:0}
.traits-panel .coach-progress-block{margin:0 0 8px}
/* transfer / loan offers and persistent negotiation workflow */
.external-offer-panel{width:100%;max-width:none}
.external-offer-form{gap:12px;padding:14px 14px 13px}
.external-offer-message{padding:18px 14px;color:#69736c;font-size:11px}
.loan-current-wage{font-size:11.8px;color:#313a34;line-height:1.35}
.loan-current-wage b{font-weight:700;text-transform:lowercase}
.contract-warning-box,.negotiations-warning{border:1px solid #ecdca9;background:#fff9df;color:#8a641f;border-radius:3px;font-size:11px;line-height:1.45}
.contract-warning-box{padding:11px 12px;margin-bottom:2px}
.buy-player-offer-form .purchase-help-lines{margin-top:-5px}
.buy-player-offer-form .owner-form-actions,.loan-offer-panel .owner-form-actions{margin-top:2px}
/* Player Profile > Info > Current Negotiations (scoped, responsive cards) */
.contract-negotiations{min-width:0;margin-top:18px}
.contract-negotiations .current-negotiation-heading{font-size:13px;font-weight:700;line-height:1.4;color:#23382b;margin:0 0 10px}
.contract-negotiations .current-negotiation-list{display:grid;gap:10px;min-width:0}
.contract-negotiations .current-negotiation-row{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;min-width:0;box-sizing:border-box;padding:12px;border:1px solid #dbe8de;border-radius:6px;background:#fbfdfb;overflow-wrap:anywhere}
.contract-negotiations .current-negotiation-head{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:8px;min-width:0}
.contract-negotiations .current-negotiation-identity{display:flex;align-items:flex-start;gap:8px;flex:1 1 140px;min-width:0}
.contract-negotiations .current-negotiation-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 18px;min-height:19px}
.contract-negotiations .current-negotiation-icon .manager-status-icon,.contract-negotiations .current-negotiation-icon img{width:17px;height:17px;min-width:17px;max-width:17px;object-fit:contain}
.contract-negotiations .current-negotiation-club{display:grid;gap:3px;min-width:0;line-height:1.3}
.contract-negotiations .current-negotiation-club a{color:#126d31;font-size:13px;font-weight:700;line-height:1.35;text-decoration:none;white-space:normal;overflow-wrap:anywhere}
.contract-negotiations .current-negotiation-club a:hover{text-decoration:underline}
.contract-negotiations .current-negotiation-club small{font-size:11px;line-height:1.35;color:#596c60}
.contract-negotiations .current-negotiation-status{display:inline-flex;align-items:center;justify-content:center;flex:0 1 auto;padding:4px 8px;border:1px solid #d9e5db;border-radius:12px;background:#eff5ef;color:#48624d;font-size:11px;line-height:1.3;font-weight:650;text-align:center}
.contract-negotiations .current-negotiation-status.is-accepted{background:#e8f7eb;border-color:#addabb;color:#176934}
.contract-negotiations .current-negotiation-status.is-counter{background:#fff8e6;border-color:#ead597;color:#7a5b18}
.contract-negotiations .current-negotiation-status.is-rejected{background:#fff0ef;border-color:#ebc6c2;color:#8b3532}
.contract-negotiations .current-negotiation-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,132px),1fr));gap:8px;min-width:0}
.contract-negotiations .current-negotiation-field{display:grid;align-content:start;gap:3px;min-width:0;padding:8px 10px;border:1px solid #e6ede7;border-radius:4px;background:#fff}
.contract-negotiations .current-negotiation-label{font-size:11px;line-height:1.3;color:#647269}
.contract-negotiations .current-negotiation-value{font-size:13px;line-height:1.35;font-weight:650;color:#26362a;min-width:0;overflow-wrap:anywhere}
.contract-negotiations .current-negotiation-note{font-size:11.5px;line-height:1.5;color:#5b695e}
.contract-negotiations .current-negotiation-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-start;min-width:0}
.contract-negotiations .current-negotiation-actions button{box-sizing:border-box;min-width:80px;min-height:38px;padding:8px 13px;border-radius:4px;font-size:12px;line-height:1.2;white-space:normal;cursor:pointer}
.contract-negotiations .negotiation-reject-btn{border:1px solid #d9b6b2;background:#fff;color:#953b38;font-weight:650}
.contract-negotiations .negotiation-reject-btn:hover{background:#fff0ef;border-color:#c78d88}
@media (max-width:560px){
  .contract-negotiations .current-negotiation-row{padding:11px;gap:9px}
  .contract-negotiations .current-negotiation-actions button{min-height:44px;flex:1 1 110px}
}
@media (pointer:coarse){.contract-negotiations .current-negotiation-actions button{min-height:44px}}
.negotiations-card{min-height:210px}
.negotiation-flash{margin:12px 14px 0;padding:8px 10px;border:1px solid #d7dfda;border-radius:3px;background:#f7faf8;color:#435048;font-size:11px}
.negotiation-flash.success{border-color:#b7dbbf;background:#eef8f0;color:#146d30}
.negotiations-warning{margin:12px 14px 0;padding:10px 12px}
.negotiations-layout{display:grid;grid-template-columns:minmax(285px,38%) minmax(0,62%);gap:18px;padding:14px}
.negotiations-list{min-width:0}
.negotiations-detail{min-width:0;padding-top:56px}
.negotiation-group{margin:0 0 17px}
.negotiation-group h3{margin:0 0 10px;font-size:18px;line-height:1.2;font-weight:500;color:#27322b}
.negotiation-row{display:grid;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:6px;min-height:25px;padding:2px 3px;border-radius:2px;font-size:11.2px}
.negotiation-row.selected{background:#f0f7f2}
.negotiation-cancel{width:14px;height:14px;padding:0;border:0;border-radius:50%;background:#d93030;color:#fff;font-size:12px;line-height:13px;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center}
.negotiation-cancel:hover{background:#b82323}
.negotiation-player-link{color:#167ac6;text-decoration:none;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.negotiation-player-link:hover{text-decoration:underline}
.negotiation-row>span{font-size:10.8px;color:#333;white-space:nowrap}
.negotiation-row>span b{font-weight:600}
.negotiation-select-copy{font-size:11.2px;color:#39443d;padding:2px 0}
.negotiation-detail-card{border:1px solid #d9e1dc;background:#fff;border-radius:3px;overflow:hidden}
.negotiation-detail-card h3{margin:0;padding:10px 12px;border-bottom:1px solid #dce4de;background:#fbfcfb;font-size:12px;font-weight:600;color:#26312a}
.negotiation-detail-list{display:grid;padding:7px 12px 11px}
.negotiation-detail-list>div{display:grid;grid-template-columns:145px minmax(0,1fr);gap:10px;align-items:center;min-height:27px;border-bottom:1px solid #edf0ee;font-size:10.8px}
.negotiation-detail-list>div:last-child{border-bottom:0}
.negotiation-detail-list span{color:#68736b}
.negotiation-detail-list b{font-weight:500;color:#28322c;min-width:0}
.negotiation-detail-list a{color:#167a39;text-decoration:none}
.negotiation-detail-list a:hover{text-decoration:underline}
.negotiation-empty{padding:20px 0!important;text-align:left!important;color:#6d7770!important}
/* clickable manager profiles and compact paged history */
.manager-profile-link{color:#167ac6;text-decoration:none;font-weight:inherit}
.manager-profile-link:hover{text-decoration:underline}
.managed-manager-value .manager-profile-link{color:#16813a;font-weight:600}
.champion-manager .manager-profile-link,.intl-manager .manager-profile-link{color:#167ac6}
.manager-page-head{margin-bottom:8px}
.manager-page-head nav{display:flex;align-items:stretch;gap:2px}
.manager-head-tab{display:inline-flex;align-items:center;justify-content:center;min-height:36px;border:0;background:transparent;color:#258240;padding:0 13px;font-size:10.8px;text-decoration:none;white-space:nowrap}
.manager-head-tab:hover{background:#f0f6f2;text-decoration:none}
.manager-head-tab.active{background:#168b3a;color:#fff;border-radius:3px}
.manager-titles-card,.manager-achievements-card{min-height:170px}
.manager-title-section{padding:12px 14px 18px;font-size:11px}
.manager-title-section h3{margin:0 0 10px;font-size:12px;font-weight:700;color:#27322b}
.manager-title-section h3:not(:first-child){margin-top:22px}
.manager-title-row{display:grid;grid-template-columns:42px minmax(150px,auto) 1fr;align-items:baseline;gap:7px;min-height:25px;border-bottom:1px solid #edf1ee;padding:3px 2px}
.manager-title-row:last-of-type{border-bottom:0}
.manager-title-row b{font-weight:600}
.manager-title-row small{color:#68736b}
.manager-profile-empty{padding:8px 2px;color:#7b857e;font-size:10.6px}
.manager-achievement-copy{margin:0;padding:12px 14px 3px;color:#4f5c54;font-size:10.7px;line-height:1.45}
.manager-achievement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:10px 14px 18px}
.manager-achievement-column{min-width:0}
.manager-achievement-column h3{margin:0 0 5px;font-size:17px;font-weight:500;color:#28322c;text-align:center}
.achievement-medal{text-align:center;font-size:31px;line-height:1.25;margin:2px 0 8px;filter:saturate(.85)}
.achievement-medal.silver{filter:grayscale(.6) brightness(1.12)}
.achievement-medal.gold{filter:saturate(1.2)}
.manager-achievement-column ul{margin:4px 0 0;padding-left:22px;font-size:10.7px;line-height:1.5}
.manager-achievement-column li{margin:4px 0}
.manager-achievement-column small{color:#6d7770}
.manager-history-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.manager-history-mode{display:flex;align-items:stretch;gap:2px;margin-left:auto}
.manager-history-mode a{display:inline-flex;align-items:center;min-height:31px;padding:0 11px;border-left:1px solid transparent;color:#167ac6;text-decoration:none;font-size:10.4px;font-weight:500}
.manager-history-mode a:hover{background:#f5f8f6}
.manager-history-mode a.active{border:1px solid #d7dfda;border-bottom-color:#fff;background:#fff;color:#3a443e}
.manager-history-pagination{display:flex;align-items:center;gap:3px;padding:10px 14px 4px;flex-wrap:wrap}
.manager-history-pagination:last-child{padding:2px 14px 13px}
.manager-page-number{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;border:1px solid #cfd8d2;border-radius:3px;background:#fff;color:#167ac6;text-decoration:none;font-size:10.4px}
.manager-page-number:hover{background:#f1f6f2;text-decoration:none}
.manager-page-number.active{background:#168b3a;border-color:#168b3a;color:#fff;font-weight:700}
.manager-page-number.disabled{color:#9aa39d;background:#f7f8f7;cursor:default}
.manager-history-table{table-layout:fixed}
.manager-history-table th:nth-child(1){width:7%}
.manager-history-table th:nth-child(2){width:7%}
.manager-history-table th:nth-child(3){width:23%}
.manager-history-table td{vertical-align:top;line-height:1.35}
.manager-history-table a{color:#167ac6;text-decoration:none}
.manager-history-table a:hover{text-decoration:underline}
/* Match Report / Player Statistics */
.match-statistics-cell{white-space:nowrap!important}
.goal-match-table th:last-child{text-align:left}
.goal-match-table .report-link{font-weight:500;color:#167ac6}
.r71-match-report .match-report-main{padding-top:18px}
.match-report-shell{width:min(980px,calc(100% - 32px));margin:0 auto 26px}
.match-report-card{background:#fff;border:1px solid #d5ded8;border-radius:4px;overflow:hidden;box-shadow:0 1px 2px rgba(18,52,31,.04)}
.match-report-title{display:flex;align-items:center;justify-content:space-between;min-height:38px;padding:0 13px;border-bottom:1px solid #dce4de;background:#fbfcfb;color:#26312a;font-size:13px;font-weight:600}
.match-report-tabs{display:flex;align-items:flex-end;gap:0;padding:11px 13px 0;border-bottom:1px solid #dce4de}
.match-report-tabs a{display:inline-flex;align-items:center;min-height:35px;padding:0 12px;margin-bottom:-1px;border:1px solid transparent;color:#167ac6;text-decoration:none;font-size:11px}
.match-report-tabs a.active{border-color:#d6ded8;border-bottom-color:#fff;background:#fff;color:#344139;border-radius:3px 3px 0 0}
.match-report-content{padding:18px 14px 20px}
.match-report-meta{display:grid;grid-template-columns:1fr 240px;gap:20px;margin-bottom:13px;font-size:10.8px;color:#2d3731}
.match-report-meta>div{display:grid;gap:8px}
.match-report-meta>div:last-child{justify-self:end;width:100%}
.match-report-meta b{color:#167ac6;font-weight:500}
.match-report-meta small{color:#7b857f}
.match-report-team-heads{display:grid;grid-template-columns:minmax(0,1fr) 140px minmax(0,1fr);align-items:center;gap:16px;margin:6px 2px 12px}
.match-report-team-heads>a{display:flex;align-items:center;gap:6px;color:#167ac6;text-decoration:none;font-size:12px;min-width:0}
.match-report-team-heads>a.away{justify-content:flex-end;text-align:right}
.match-report-team-heads>a span:not(.team-status-icon){overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.match-report-team-heads>strong{text-align:center;font-size:22px;font-weight:500;color:#222b26}
.match-report-shootout{display:flex;align-items:center;justify-content:center;gap:8px;margin:-4px 0 11px;font-size:10.5px;color:#303a35;text-align:center;flex-wrap:wrap}
.match-report-shootout b{font-weight:600;color:#1f6f38}
.match-report-shootout span{font-size:12px;font-weight:700;font-variant-numeric:tabular-nums;color:#202a24}
.match-report-shootout small{color:#667169}
.match-report-grid{display:grid;grid-template-columns:minmax(0,1fr) 292px minmax(0,1fr);gap:22px;align-items:start}
.match-lineup{display:grid;gap:3px}
.match-lineup-row{display:grid;grid-template-columns:20px 22px minmax(0,1fr) 38px;align-items:center;min-height:25px;font-size:10.7px}
.match-lineup-row.motm .match-player-link{font-weight:800;color:#101714}
/* a player who has left the club keeps his row in the report, but he
   has no player page left to open. */
.match-player-former{color:#5c675f;cursor:default;text-decoration:none;font-style:italic}
.match-lineup-row.substitute{min-height:23px}
.match-pos{color:#303a35;text-align:left;font-weight:500}
.match-report-shirt{width:19px;height:19px;display:inline-flex}
.match-report-shirt svg{width:19px;height:19px}
.match-report-shirt.home svg path{fill:#155fd4}
.match-report-shirt.away svg path{fill:#e02323}
.match-player-main{display:flex;align-items:center;gap:3px;min-width:0;white-space:nowrap}
.match-player-link{min-width:0;overflow:visible;text-overflow:clip;color:#202b25;text-decoration:none;overflow-wrap:anywhere;white-space:normal!important;}
.match-player-link:hover{text-decoration:underline;color:#167ac6}
.match-rating{text-align:right;color:#343d38;font-variant-numeric:tabular-nums}
.match-goal-markers,.match-card-markers{display:inline-flex;align-items:center;gap:2px;flex:0 0 auto}
.match-goal-ball{display:block;width:11px;height:11px;object-fit:contain;flex:0 0 11px}
.match-goal-markers small{font-size:8.5px;color:#16863a;font-weight:800;line-height:1}
.match-card{display:inline-block;width:8px;height:12px;border:1px solid rgba(0,0,0,.35);border-radius:1px;flex:0 0 8px}
.match-card.yellow{background:#ffe100}
.match-card.red{background:#e92828}
.match-sub-arrow{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;flex:0 0 12px;font-size:12px;font-weight:900;line-height:1}
.match-sub-arrow.in{color:#168b3a}
.match-sub-arrow.out{color:#67549a}
.motm-mark{font-size:12px;color:#202a24;line-height:1;font-weight:900;flex:0 0 auto}
.match-summary-stats{display:grid;gap:0;padding-top:1px}
.match-summary-stats>div{display:grid;grid-template-columns:1fr 140px 1fr;align-items:center;min-height:25px;font-size:10.6px}
.match-summary-stats span:first-child{text-align:right}
.match-summary-stats span:last-child{text-align:left}
.match-summary-stats b{text-align:center;font-weight:500;color:#313a35}
.match-report-managers{display:grid;grid-template-columns:minmax(0,1fr) 292px minmax(0,1fr);gap:22px;align-items:center;margin-top:13px;font-size:10.5px;color:#2f3933}
.match-report-managers>div:last-child{text-align:right}
.match-report-managers>b{text-align:center;font-size:10.2px}
.match-manager-link{color:#167ac6;text-decoration:none}
.match-manager-link:hover{text-decoration:underline}
.match-not-played{padding:20px 4px 30px;color:#59655e;font-size:11px}
.match-not-played h3{margin:0 0 8px;color:#2c3730;font-size:14px}
.match-not-played p{margin:0 0 12px}
.match-not-played a{color:#16833a;text-decoration:none;font-weight:600}
.match-statistics-body{display:grid;gap:20px}
.match-player-stats-team{min-width:0}
.match-stat-team-title{margin:0 0 8px}
.match-stat-team-title>a{display:inline-flex;align-items:center;gap:7px;color:#29342d;text-decoration:none;font-size:20px;font-weight:500}
.match-stat-team-title .team-status-icon{width:17px;height:17px}
.match-stat-search{display:flex;justify-content:flex-end;margin:-2px 0 5px}
.match-stat-search.second{margin-top:9px}
.match-stat-search label{font-size:10px;font-weight:700}
.match-stat-search input{width:165px;height:25px;margin-left:7px;border:1px solid #6e7671;background:#fff}
.match-stats-table-wrap{overflow-x:auto}
.match-stats-table{width:100%;min-width:760px;border-collapse:collapse;table-layout:auto;font-size:10.4px}
.match-stats-table th{padding:5px 4px;border-bottom:1px solid #434b46;text-align:center;font-weight:700;white-space:nowrap;color:#253129}
.match-stats-table th:first-child{text-align:left}
.match-stats-table td{padding:5px 4px;border-bottom:1px solid #dce2de;text-align:center;white-space:nowrap}
.match-stats-table td:first-child{text-align:left}
.match-stats-table tbody tr:last-child td{border-bottom:1px solid #434b46}
.match-stats-table a{color:#167ac6;text-decoration:none}
.match-stats-table a:hover{text-decoration:underline}
.match-stat-footer{padding-top:6px;font-size:10px;color:#303a34}
.stat-pos{color:#303a34}
/* Club Investments / Headquarters level cap */
.investments-general-card{margin-bottom:16px}
.investments-info-body{padding:13px 14px 15px}
.investments-help{border:1px solid #ead9a3;background:#fff9df;color:#936823;border-radius:3px;padding:11px 12px;font-size:10.8px;line-height:1.45;margin-bottom:14px}
.investments-summary{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;align-items:center;font-size:10.8px;color:#2d3731}
.investments-summary span:nth-child(2){text-align:center}
.investments-summary span:nth-child(3){text-align:right}
.investments-summary b{font-weight:500;color:#28322c}
.investments-summary small{font-size:10px;color:#4c5a51}
.investment-flash{margin:-4px 0 12px;padding:8px 10px;border:1px solid #d2dcd5;border-radius:3px;background:#f7faf8;color:#425047;font-size:10.6px}
.investment-flash.success{border-color:#b8dbbf;background:#eef8f0;color:#176d31}
.investment-flash.error{border-color:#e5c3c3;background:#fff3f3;color:#a22b2b}
.investments-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px}
.investment-card{border:1px solid #d5ded8;border-radius:3px;background:#fff;box-shadow:0 1px 2px rgba(18,52,31,.035);overflow:hidden;min-height:110px}
.investment-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:37px;padding:0 12px;border-bottom:1px solid #dce4de;background:#fbfcfb}
.investment-card-head h3{margin:0;font-size:12px;font-weight:500;color:#28322c}
.investment-card-actions{display:flex;align-items:center;gap:5px;min-height:27px}
.investment-arrow{width:24px;height:24px;border:0;background:transparent;display:inline-flex;align-items:center;justify-content:center;padding:0;font-size:21px;line-height:1;font-weight:900;cursor:pointer;text-shadow:0 1px 0 rgba(255,255,255,.8)}
.investment-arrow.up{color:#78b51e}
.investment-arrow.down{color:#e58a00}
.investment-arrow:hover{transform:translateY(-1px);filter:brightness(.92)}
.investment-card-body{padding:10px 12px 12px;display:grid;gap:5px;font-size:10.7px;color:#2e3832}
.investment-card-body>div{display:grid;grid-template-columns:auto 1fr;gap:5px;align-items:baseline}
.investment-card-body>div b{font-weight:500}
.investment-free-note,.investment-lock-note,.investment-cap-note{margin:3px 0 0;font-size:10.2px;line-height:1.35}
.investment-free-note{color:#e32626;font-weight:600}
.investment-lock-note{color:#4c5a51}
.investment-cap-note{color:#936823}
.investments-grid .investment-card:nth-child(4){grid-column:1}
.investments-grid .investment-card:nth-child(5){grid-column:2}
/* readable international Groups + always-visible investment controls */
.compact-game-ui .intl-page-shell,.compact-game-ui .national-cups-shell{width:min(1280px,calc(100% - 18px));}
.intl-stage-groups .intl-main-grid{grid-template-columns:minmax(0,1.92fr) minmax(320px,.78fr);gap:14px;padding:12px 14px 14px;}
.intl-stage-groups .intl-left-panel{min-width:0;}
.intl-stage-groups .intl-right-panel{min-width:0;}
.intl-group-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:8px;}
.intl-group-block{border-color:#d7e1da;border-radius:3px;}
.intl-group-block h3{padding:9px 10px 7px;font-size:12.5px;background:#fbfcfb;}
.intl-group-table{font-size:10.2px;line-height:1.15;}
.intl-group-table th,.intl-group-table td{height:27px;padding:0 4px;}
.intl-group-table th{height:25px;font-size:9.6px;}
.intl-group-table th:nth-child(1),.intl-group-table td:nth-child(1){width:31px;}
.intl-group-table th:nth-child(2),.intl-group-table td:nth-child(2){width:auto;min-width:0;}
.intl-group-table th:nth-child(n/**/+3),.intl-group-table td:nth-child(n/**/+3){width:26px;}
.intl-group-team{gap:4px;min-width:0;width:100%;}
.intl-group-team a{display:block;min-width:0;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.intl-group-team .manager-status-icon{width:12px;height:12px;flex-basis:12px;}
.intl-group-team img{width:14px;height:9px;flex:0 0 auto;}
.intl-stage-groups .intl-right-panel .info-card h3{font-size:12.5px;}
.intl-stage-groups .intl-scorer-row{grid-template-columns:24px minmax(130px,1fr) 30px minmax(112px,1fr);font-size:10.4px;}
.intl-stage-groups .intl-champion-row{grid-template-columns:95px minmax(105px,1fr) minmax(115px,1fr);font-size:10.4px;}
.intl-group-match-grid{gap:10px;}
.intl-group-match-card h3{padding:9px 10px;font-size:12.5px;}
.intl-group-fixture{min-height:23px;font-size:10px;}
.national-world-groups .national-cup-grid{grid-template-columns:minmax(0,1.92fr) minmax(320px,.78fr);gap:14px;padding:12px 14px 14px;}
.investment-arrow{border-radius:3px;}
.investment-arrow.up{color:#78b51e;}
.investment-arrow.down{color:#e58a00;}
.investment-arrow:focus-visible{outline:2px solid #18863b;outline-offset:1px;}
/* foundation - preserved clean international cup groups + refined computer-team status icon */
.manager-status-icon.computer{width:15px!important;
  height:15px!important;
  flex-basis:15px!important;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  padding:0;
  margin-left:0;
  margin-right:2px;
  opacity:.94;}
.manager-status-icon.computer img{width:15px;
  height:15px;
  object-fit:contain;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  padding:0;
  filter:none;}
.manager-status-icon.computer:hover{background:transparent;border:0;opacity:1}
/* Groups should read like one clean competition table, not a stack of boxed cards. */
.intl-stage-groups .intl-group-list{gap:14px 16px;
  padding-top:7px;}
.intl-stage-groups .intl-group-block{border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;}
.intl-stage-groups .intl-group-block h3{margin:0;
  padding:5px 4px 6px;
  border:0;
  border-bottom:1px solid #cfd9d2;
  background:transparent;
  font-size:12px;
  font-weight:700;
  color:#222b25;}
.intl-stage-groups .intl-group-table-wrap{border:0;
  border-radius:0;
  background:transparent;
  overflow:visible;}
.intl-stage-groups .intl-group-table{width:100%;
  border-collapse:collapse;
  table-layout:fixed;
  background:transparent;}
.intl-stage-groups .intl-group-table thead{border-bottom:1px solid #d7dfda;}
.intl-stage-groups .intl-group-table th,.intl-stage-groups .intl-group-table td{border-left:0;
  border-right:0;
  border-top:0;
  border-bottom:1px solid #e5ebe7;
  background:transparent;}
.intl-stage-groups .intl-group-table th{padding-top:4px;
  padding-bottom:4px;
  font-weight:700;}
.intl-stage-groups .intl-group-table tbody tr.qualified td{background:#eef8e9;}
.intl-stage-groups .intl-group-table tbody tr:hover td{background:#f5faf6;}
.intl-stage-groups .intl-group-table tbody tr.qualified:hover td{background:#e8f5e2;}
.intl-stage-groups .intl-group-team{gap:3px;}
.intl-stage-groups .intl-group-team .manager-status-icon.computer{width:13px;
  height:13px;
  flex-basis:13px;
  margin-right:1px;}
.intl-stage-groups .intl-group-team .manager-status-icon.computer img{width:13px;
  height:13px;}
/* Give the club name as much room as possible before truncation. */
.intl-stage-groups .intl-group-table th:nth-child(1),.intl-stage-groups .intl-group-table td:nth-child(1){width:27px;}
.intl-stage-groups .intl-group-table th:nth-child(n/**/+3),.intl-stage-groups .intl-group-table td:nth-child(n/**/+3){width:24px;}
.intl-stage-groups .intl-group-table th:nth-child(2),.intl-stage-groups .intl-group-table td:nth-child(2){width:auto;}
/* original club crests stay inside the existing fixed team-profile crest area. */
.compact-game-ui .club-crest.has-real-crest,.club-crest.has-real-crest{background:transparent;
  border-color:transparent;
  box-shadow:none;
  overflow:hidden;
  padding:4px;
  display:flex;
  align-items:center;
  justify-content:center;}
.club-crest.has-real-crest:after{display:none}
.club-crest.has-real-crest .club-crest-image{display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
  flex:0 0 auto;
  border:0;
  background:transparent;
  box-shadow:none;}
/* formation role colours and manual-manager lineup behaviour.
   Head/skin stays orange-yellow for every role; only the body identifies the unit. */
/* compact reference-style formation player hover card.
   It is informational only and does not change drag/drop or lineup positions. */
/* six-level Soccersim star presentation */
.player-name-stars.star-tone-bronze,.player-star-status.star-tone-bronze .on{color:#b56a35}
.player-name-stars.star-tone-silver,.player-star-status.star-tone-silver .on{color:#8d979f}
.player-name-stars.star-tone-gold,.player-star-status.star-tone-gold .on{color:#d59b16}
.player-star-status small{margin-left:5px;align-self:center;font-size:10px;font-weight:700;color:#606a63;white-space:nowrap}
/* contract expiry indicator. Purely inline; no player-list layout changes. */
.contract-expiring-status{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;font-size:11px;line-height:1;color:#a36a16;vertical-align:middle}
/* compact two-way sorting for squad, market and player data tables. */
.sortable-player-header{cursor:pointer;user-select:none;white-space:nowrap}
.sortable-player-header:hover{background:#f5f8f6!important}
.table-sort-arrows{display:inline-flex;flex-direction:column;justify-content:center;gap:0;margin-right:4px;vertical-align:middle;transform:translateY(-1px);line-height:.56;color:#c9cfcb;font-size:6px}
.table-sort-arrows .sort-up,.table-sort-arrows .sort-down{display:block;height:5px;line-height:5px}
.sortable-player-header.sort-asc .sort-up{color:#3e4b43}
.sortable-player-header.sort-desc .sort-down{color:#3e4b43}
.sortable-player-header:focus-visible{outline:1px solid #8baa95;outline-offset:-2px}
/* improved full flags and GoalFC-like player trait styling */
.country-flag,.region-flag-pin,.country-title-flag,.player-flag,.inline-player-flag,.stat-competition-flag{display:inline-block;
  overflow:hidden;
  object-fit:cover!important;
  background:transparent!important;
  border:1px solid rgba(25,33,40,.14)!important;
  border-radius:2px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 1px 2px rgba(10,16,22,.10);}
.country-flag,.player-flag,.inline-player-flag{image-rendering:auto}
.region-flag-pin{background:transparent!important}
.goal-traits{padding:12px 14px 13px;font-size:12.6px;line-height:1.45}
.goal-traits p{margin:0 0 8px}
.trait-pressure-line{color:#364148}
.trait-pressure-line b{color:#1f2a30}
.trait-positive-profile{color:#17933a;font-weight:500}
.trait-negative-profile{color:#d92929;font-weight:500}
.trait-removed-profile{color:#d92929;font-weight:500}
.trait-ruby-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.trait-ruby-note{margin-top:7px;font-size:10px;color:#6d7671}
.trait-profile-row{display:flex;align-items:center;justify-content:flex-start;gap:7px;margin:0 0 8px}
.trait-profile-row p{margin:0!important;flex:0 1 auto;min-width:0;line-height:1.35}
.trait-row-actions{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto}
.trait-inline-icon-action{display:inline-flex;align-items:center;justify-content:flex-start;gap:2px;flex:0 0 auto;padding:0;border:0;background:transparent;cursor:pointer;line-height:1;vertical-align:middle}
.trait-inline-icon-action:hover .trait-action-image{filter:brightness(.97)}
.trait-action-image{display:block;width:auto;height:auto;image-rendering:auto}
.trait-inline-icon-action.positive .trait-action-image{width:17px;height:17px}
.trait-inline-icon-action.negative .trait-action-image{width:17px;height:17px}
.trait-ruby-note b{color:#3f5260}
.ruby-inline-link{color:#8b1f6d}
/* squad list name column with flag + stars + player name */
.squad-name-cell{white-space:nowrap}
.squad-player-ident{display:flex;align-items:center;gap:7px;min-width:0}
.squad-player-flag{width:18px;height:12px;flex:0 0 auto;margin-right:1px}
.squad-player-ident .player-name-with-status{gap:3px}
.compact-player-table .squad-name-cell,.goal-sub-table .squad-name-cell,.national-players-table .squad-name-cell{min-width:230px}
.compact-player-table .squad-player-ident{gap:6px}
.compact-player-table .player-name-stars{font-size:12px;margin-right:1px}
.compact-player-table .player-name-link{font-size:12.4px}
.goal-sub-table .squad-player-ident{gap:6px}
.goal-sub-table .player-name-stars{font-size:12px;margin-right:1px}
.goal-sub-table .player-name-link{font-size:12.2px}
.national-players-table .squad-player-ident{gap:6px}
.national-players-table .player-name-stars{font-size:12px;margin-right:1px}
/* exact squad identity layout: flag | stars | name */
.compact-player-table,.goal-sub-table,.national-players-table{table-layout:auto}
.compact-player-table th:first-child,.compact-player-table td:first-child,.goal-sub-table th:first-child,.goal-sub-table td:first-child,.national-players-table th:first-child,.national-players-table td:first-child{text-align:left!important;}
.compact-player-table .squad-name-cell,.goal-sub-table .squad-name-cell,.national-players-table .squad-name-cell{min-width:235px!important;
  width:235px;
  padding-left:7px!important;
  padding-right:7px!important;}
.squad-player-ident{display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:0!important;
  min-width:0;
  height:19px;
  line-height:19px;
  white-space:nowrap;
  vertical-align:middle;}
.squad-player-ident .squad-player-flag{width:18px!important;
  height:12px!important;
  min-width:18px!important;
  max-width:18px!important;
  margin:0 5px 0 0!important;
  flex:0 0 18px!important;
  object-fit:fill!important;
  border-radius:1px!important;}
.squad-player-ident>.player-name-stars{display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  margin:0 4px 0 0!important;
  padding:0!important;
  font-size:13px!important;
  line-height:1!important;
  letter-spacing:-1px!important;
  flex:0 0 auto!important;}
.squad-player-name-status{display:inline-flex;
  align-items:center;
  gap:3px;
  min-width:0;
  line-height:19px;}
.squad-player-name-status .player-name-link{display:inline-block;
  line-height:19px;
  vertical-align:middle;}
.squad-player-name-status.lineup-selected .player-name-link,.lineup-player-row .squad-player-name-status .player-name-link{font-weight:800;
  font-style:italic;}
.compact-player-table tbody tr{height:25px}
.compact-player-table th,.compact-player-table td{vertical-align:middle!important}
.goal-sub-table tbody tr{height:27px}
.goal-sub-table th,.goal-sub-table td{vertical-align:middle!important}
/* formation hover tooltip aligned to pitch like the Goal FC reference.
   Tooltip stays clean inside the board area and the whole lineup block starts a bit lower. */
/* fixed squad identity columns: flag | reserved 3-star slot | player name.
   Every row reserves the same space so all names begin on exactly the same vertical line. */
.squad-player-ident{display:grid!important;
  grid-template-columns:18px 40px minmax(0,1fr)!important;
  column-gap:6px!important;
  align-items:center!important;
  width:100%!important;
  min-width:0!important;
  height:19px;
  line-height:19px;
  white-space:nowrap;}
.squad-flag-slot{width:18px;
  height:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 18px;}
.squad-flag-slot .squad-player-flag{width:18px!important;
  height:12px!important;
  min-width:18px!important;
  max-width:18px!important;
  margin:0!important;
  display:block!important;
  object-fit:fill!important;}
.squad-club-crest-slot{width:18px;
  height:18px;}
.mini-club-crest{width:18px;
  height:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:transparent;
  border:0;
  box-shadow:none;}
.mini-club-crest-placeholder{display:none;}
.mini-club-crest.has-fallback-crest{overflow:visible;}
.club-crest-fallback-badge{display:none!important;width:0!important;height:0!important;background:none!important;border:0!important;box-shadow:none!important;color:transparent!important;overflow:hidden!important;}
.mini-club-crest.has-real-crest .club-crest-image{display:block;
  width:auto;
  height:auto;
  max-width:18px;
  max-height:18px;
  object-fit:contain;
  object-position:center;
  border:0;
  background:transparent;
  box-shadow:none;}
.mini-club-crest.empty{visibility:hidden}
.squad-star-slot{width:40px;
  min-width:40px;
  max-width:40px;
  height:16px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  padding-left:5px;
  box-sizing:border-box;
  overflow:visible;}
.squad-star-slot>.player-name-stars{display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  font-size:13px!important;
  line-height:1!important;
  letter-spacing:-1px!important;
  flex:0 0 auto!important;}
.squad-player-name-status{grid-column:3;
  display:flex!important;
  align-items:center!important;
  gap:3px!important;
  min-width:0!important;
  margin:0!important;}
.squad-player-name-status .player-name-link{margin:0!important;}
.compact-player-table .squad-name-cell,.goal-sub-table .squad-name-cell,.national-players-table .squad-name-cell{min-width:250px!important;
  width:250px!important;}
/* Goal FC reference-matched formation hover card.
   Fixed two-line skill layout: no run-on text, no spill outside the card. */
/* clean server occupancy cell: number only, centered with the other live stats. */
.server-free-teams-stat{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important}
.server-free-teams-stat #serverFreeTeams{display:block;white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:700}
/* national squads use the exact same existing national-callup icons as club squads.
   Club crest remains on the left; the original 16px national badge sits directly after the player name. */
.national-squad-name-status{gap:4px!important}
.national-squad-callup-link{margin-left:1px;flex:0 0 auto}
.player-inline-status.national-squad-callup{width:16px!important;height:16px!important;min-width:16px!important;max-width:16px!important;object-fit:contain!important;image-rendering:auto!important;vertical-align:middle!important}
/* clickable club crests in national squads + full-row player focus */
.national-club-crest-link{display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  text-decoration:none!important;
  line-height:1;
  border-radius:3px;
  outline:none;}
.national-club-crest-link:hover .mini-club-crest,.national-club-crest-link:focus-visible .mini-club-crest{filter:brightness(1.06);
  transform:scale(1.06);}
.national-club-crest-link .mini-club-crest{transition:filter .12s ease,transform .12s ease;}
.compact-player-table tbody tr,.goal-sub-table tbody tr,.national-players-table tbody tr{transition:background-color .10s ease;}
.compact-player-table tbody tr:hover>td,.compact-player-table tbody tr:focus-within>td,.goal-sub-table tbody tr:hover>td,.goal-sub-table tbody tr:focus-within>td,.national-players-table tbody tr:hover>td,.national-players-table tbody tr:focus-within>td{background:#eef7eb!important;
  box-shadow:inset 0 1px 0 #d4e8cd,inset 0 -1px 0 #d4e8cd;}
.compact-player-table tbody tr:hover>td:first-child,.compact-player-table tbody tr:focus-within>td:first-child,.goal-sub-table tbody tr:hover>td:first-child,.goal-sub-table tbody tr:focus-within>td:first-child,.national-players-table tbody tr:hover>td:first-child,.national-players-table tbody tr:focus-within>td:first-child{box-shadow:inset 3px 0 0 #59a93d,inset 0 1px 0 #d4e8cd,inset 0 -1px 0 #d4e8cd;}
.compact-player-table tbody tr:hover .player-name-link,.compact-player-table tbody tr:focus-within .player-name-link,.goal-sub-table tbody tr:hover .player-name-link,.goal-sub-table tbody tr:focus-within .player-name-link,.national-players-table tbody tr:hover .player-name-link,.national-players-table tbody tr:focus-within .player-name-link{color:#116b31;}
/* global typography consistency + clean chronological form timeline */
html,body,button,input,select,textarea,.game-page,.compact-game-ui,.compact-game-ui button,.compact-game-ui input,.compact-game-ui select,.compact-game-ui textarea,.country-tab,.league-subtab,.team-tab,.player-subtab,.standings-table,.players-table,.team-info-list,.recent-match-row,.team-card-title,.workspace-table,.transfer-market-table{font-family:"Segoe UI",Arial,sans-serif!important;
  font-synthesis:none;}
/* Navigation states may change color/background, never text thickness. */
.country-tab,.country-tab.active,.country-tab:hover,.league-subtab,.league-subtab.active,.league-subtab:hover,.player-subtab,.player-subtab.active,.player-subtab:hover{font-weight:400!important;
  font-style:normal!important;}
.team-tab,.team-tab.active,.team-tab:hover{font-weight:700!important;
  font-style:normal!important;}
/* A lineup/status state must never make a player's name visually thicker. */
.squad-player-name-status .player-name-link,.squad-player-name-status.lineup-selected .player-name-link,.lineup-player-row .squad-player-name-status .player-name-link,.player-name-link{font-weight:400!important;
  font-style:normal!important;}
/* Keep table body typography stable between Abilities / Traits / Cards / Contracts / Statistics. */
.players-table tbody td,.goal-sub-table tbody td,.compact-player-table tbody td,.national-players-table tbody td{font-weight:400;
  font-style:normal;}
/* strict project-wide typography role lock
   Same UI role = same font, size and weight on every page/tab/state. */
:root{--ss-ui-font:"Segoe UI",Arial,sans-serif;
  --ss-weight-regular:400;
  --ss-weight-semibold:600;
  --ss-weight-bold:700;}
html,body,button,input,select,textarea,table,a,span,p,label,small,b,strong,h1,h2,h3,h4,h5,h6{font-family:var(--ss-ui-font)!important;
  font-synthesis:none!important;}
body,.game-page,.compact-game-ui{font-weight:var(--ss-weight-regular);
  font-style:normal;}
/* Section headers must never change between Abilities / Traits / Cards / Contracts / Statistics. */
.team-card-title,.compact-game-ui .team-card-title,.player-subpage-card .team-card-title,.national-players-card .team-card-title,.national-matches-card .team-card-title,.national-titles-card .team-card-title{font-size:12px!important;
  font-weight:var(--ss-weight-regular)!important;
  font-style:normal!important;
  line-height:1.2!important;}
.team-card-title>b,.team-card-title>strong,.compact-game-ui .team-card-title>b,.player-subpage-card .team-card-title>b{font-size:inherit!important;
  font-weight:var(--ss-weight-bold)!important;
  font-style:normal!important;
  letter-spacing:.02em!important;}
/* Main team navigation: state may change color/background only. */
.team-tab,.team-tab:link,.team-tab:visited,.team-tab:hover,.team-tab:focus,.team-tab:active,.team-tab.active{font-size:12px!important;
  font-weight:var(--ss-weight-bold)!important;
  font-style:normal!important;}
/* Inner tabs: identical typography for active/inactive/hover/focus. */
.player-subtab,.player-subtab:link,.player-subtab:visited,.player-subtab:hover,.player-subtab:focus,.player-subtab:active,.player-subtab.active,.country-tab,.country-tab:hover,.country-tab:focus,.country-tab.active,.league-subtab,.league-subtab:hover,.league-subtab:focus,.league-subtab.active,.match-report-tabs a,.match-report-tabs a:hover,.match-report-tabs a:focus,.match-report-tabs a.active,.workspace-tab,.workspace-tab:hover,.workspace-tab:focus,.workspace-tab.active,.intl-phase-row a,.intl-phase-row a:hover,.intl-phase-row a:focus,.intl-phase-row a.active{font-weight:var(--ss-weight-regular)!important;
  font-style:normal!important;}
/* Player names never get thicker because of lineup, selection, hover, national squad or focus. */
.player-name-link,.player-name-link:hover,.player-name-link:focus,.squad-player-name-status .player-name-link,.squad-player-name-status.lineup-selected .player-name-link,.player-name-with-status.lineup-selected .player-name-link,.lineup-player-row .player-name-link,.match-player-link,.match-lineup-row.motm .match-player-link{font-weight:var(--ss-weight-regular)!important;
  font-style:normal!important;}
/* Team names likewise stay the same thickness when they are the managed/current team. */
.match-team-inline,.match-team-inline.own,.match-team-inline.match-team-side,.match-team-inline.match-team-side.own,.match-team-inline .match-team-name,.match-team-inline.own .match-team-name,.intl-group-team a,.intl-group-team.own a,.recent-match-row .home-team,.recent-match-row .away-team,.recent-match-row .own{font-weight:var(--ss-weight-regular)!important;
  font-style:normal!important;}
/* Table typography is fixed by role, not by which page supplied the table. */
.players-table,.compact-player-table,.goal-sub-table,.national-players-table,.standings-table,.workspace-table,.transfer-market-table{font-family:var(--ss-ui-font)!important;
  font-style:normal!important;}
.players-table thead th,.compact-player-table thead th,.goal-sub-table thead th,.national-players-table thead th,.standings-table thead th,.workspace-table thead th,.transfer-market-table thead th{font-weight:var(--ss-weight-bold)!important;
  font-style:normal!important;}
.players-table tbody td,.compact-player-table tbody td,.goal-sub-table tbody td,.national-players-table tbody td,.standings-table tbody td,.workspace-table tbody td,.transfer-market-table tbody td{font-weight:var(--ss-weight-regular)!important;
  font-style:normal!important;}
/* Hover/focus/selected states may use color/background/borders, but never weight or style. */
.players-table tbody tr:hover td,.players-table tbody tr:focus-within td,.compact-player-table tbody tr:hover td,.compact-player-table tbody tr:focus-within td,.goal-sub-table tbody tr:hover td,.goal-sub-table tbody tr:focus-within td,.national-players-table tbody tr:hover td,.national-players-table tbody tr:focus-within td{font-weight:var(--ss-weight-regular)!important;
  font-style:normal!important;}
/* Common controls/labels keep a stable semibold level. */
.players-toolbar label,.subtable-search label,.match-stat-search label,.server-head,.field-label{font-weight:var(--ss-weight-semibold)!important;
  font-style:normal!important;}
/* Pagination/select states should not visually jump in thickness either. */
.manager-page-number,.manager-page-number:hover,.manager-page-number:focus,.manager-page-number.active{font-weight:var(--ss-weight-regular)!important;
  font-style:normal!important;}
/* Country Ranking */
.country-ranking-main{position:relative;
  min-height:calc(100vh - 188px);
  padding:20px 18px 42px;}
.country-ranking-shell{position:relative;
  z-index:1;
  width:min(1040px,calc(100% - 24px));
  margin:0 auto;}
.country-ranking-regions{display:flex;
  justify-content:flex-end;
  align-items:flex-end;
  gap:3px;
  min-height:42px;
  padding-right:4px;}
.country-ranking-region{display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:0 15px;
  border-radius:4px 4px 0 0;
  color:#1476bd;
  text-decoration:none;
  font-size:12px;
  font-weight:400!important;
  white-space:nowrap;}
.country-ranking-region:hover{background:rgba(16,139,60,.06);
  color:#087a32;}
.country-ranking-region.active{background:#0b8e39;
  color:#fff;
  font-weight:400!important;}
.country-ranking-card{background:#fff;
  border:1px solid #d4dbd6;
  border-radius:3px;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
  overflow:hidden;}
.country-ranking-title{min-height:38px;
  display:flex;
  align-items:center;
  padding:0 13px;
  background:#f7f8f7;
  border-bottom:1px solid #d9dfdb;
  color:#27312b;
  font-size:14px;
  font-weight:500!important;}
.country-ranking-body{padding:13px 14px 14px;}
.country-ranking-description{margin:0 0 10px;
  max-width:100%;
  color:#28322c;
  font-size:11.5px;
  line-height:1.45;
  font-weight:400!important;}
.country-ranking-search{display:flex;
  justify-content:flex-end;
  align-items:center;
  min-height:30px;
  margin-bottom:2px;}
.country-ranking-search label{display:flex;
  align-items:center;
  gap:7px;
  color:#111;
  font-size:11px;
  font-weight:600!important;}
.country-ranking-search input{width:168px;
  height:24px;
  border:1px solid #89968f;
  background:#fff;
  padding:2px 5px;
  font:inherit;
  font-weight:400!important;
  outline:none;}
.country-ranking-search input:focus{border-color:#0b8e39;
  box-shadow:0 0 0 1px rgba(11,142,57,.08);}
.country-ranking-table-wrap{overflow-x:auto;}
.country-ranking-table{width:100%;
  border-collapse:collapse;
  table-layout:fixed;
  color:#26312b;
  font-size:11.5px;}
.country-ranking-table th,.country-ranking-table td{height:31px;
  padding:4px 7px;
  border-bottom:1px solid #dfe4e1;
  text-align:left;
  vertical-align:middle;
  font-weight:400!important;}
.country-ranking-table thead th{height:30px;
  border-bottom:2px solid #b9c2bc;
  background:#fff;
  font-weight:600!important;}
.country-ranking-table thead th:nth-child(1){width:18%;}
.country-ranking-table thead th:nth-child(2){width:29%;}
.country-ranking-table thead th:nth-child(3){width:18%;}
.country-ranking-table thead th:nth-child(4){width:35%;}
.country-ranking-table th button{width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:6px;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  text-align:left;
  font:inherit;
  font-weight:600!important;
  cursor:pointer;}
.country-ranking-table th button span{color:#c1c9c4;
  font-size:9px;
  font-weight:400!important;}
.country-ranking-table tbody tr:hover td{background:#f3faf5;}
.country-ranking-country{display:inline-flex;
  align-items:center;
  gap:5px;
  color:#1476bd;
  text-decoration:none;
  font-weight:400!important;}
.country-ranking-country:hover{color:#087a32;
  text-decoration:underline;}
.country-ranking-country img{width:15px;
  height:10px;
  flex:0 0 15px;
  object-fit:fill;}
.country-ranking-summary{min-height:25px;
  display:flex;
  align-items:flex-end;
  padding-top:7px;
  color:#333d37;
  font-size:10.5px;
  font-weight:400!important;}
/* Manager Rankings */
.manager-ranking-card{overflow:hidden}
.manager-ranking-search{display:flex;align-items:center;gap:6px;padding:12px 14px 8px}
.manager-ranking-search input{width:190px;height:30px;border:1px solid #cfd8d1;background:#fff;padding:4px 8px;font:inherit}
.manager-ranking-search select{height:30px;min-width:112px;border:1px solid #cfd8d1;background:#fff;padding:3px 24px 3px 8px;font:inherit}
.manager-ranking-search .workspace-button{height:30px;padding:0 14px}
.manager-ranking-info{margin:2px 14px 10px;padding:8px 10px;border:1px solid #dce6df;background:#f8fbf9;color:#56635b;font-size:10.5px;line-height:1.45}
.manager-ranking-pagination{display:flex;align-items:center;gap:0;padding:0 14px 10px;flex-wrap:wrap}
.manager-rank-page,.manager-rank-ellipsis{min-width:31px;height:30px;display:inline-flex;align-items:center;justify-content:center;padding:0 9px;border:1px solid #d5ddd8;border-right:0;background:#fff;color:#1972b8;text-decoration:none;font-weight:400;box-sizing:border-box}
.manager-ranking-pagination>*:last-child{border-right:1px solid #d5ddd8}
.manager-rank-page.active{background:#168a42;color:#fff;border-color:#168a42}
.manager-rank-page.disabled{color:#9da7a0;background:#fafbfa;cursor:default}
.manager-rank-ellipsis{color:#7a857e;background:#fff}
.manager-ranking-table{width:100%}
.manager-ranking-table th:nth-child(1),.manager-ranking-table td:nth-child(1){width:9%;text-align:left}
.manager-ranking-table th:nth-child(2),.manager-ranking-table td:nth-child(2){width:33%;text-align:left}
.manager-ranking-table th:nth-child(3),.manager-ranking-table td:nth-child(3){width:43%;text-align:left}
.manager-ranking-table th:nth-child(4),.manager-ranking-table td:nth-child(4){width:15%;text-align:right}
.manager-ranking-table td{height:29px}
.manager-ranking-table a{color:#1972b8;text-decoration:none;font-weight:400}
.manager-ranking-table a:hover{text-decoration:underline}
.manager-ranking-self td{background:#f0faee}
.manager-ranking-points{font-variant-numeric:tabular-nums}
.manager-ranking-tier{width:12px!important;height:16px!important;object-fit:contain!important;vertical-align:middle;margin-right:4px}
.manager-ranking-flag{width:16px;height:10px;object-fit:cover;vertical-align:middle;margin-left:4px}
/* Team / League ranking */
.ranking-mode-tabs{display:flex;align-items:stretch;gap:0;margin-left:auto;height:100%}
.ranking-mode-tab{display:flex;align-items:center;justify-content:center;min-width:82px;padding:0 14px;border-left:1px solid #dde5df;color:#1972b8;text-decoration:none;font-weight:400;background:#fff}
.ranking-mode-tab:hover{background:#f7faf8;text-decoration:none}
.ranking-mode-tab.active{background:#0b8b3e;color:#fff;border-color:#0b8b3e;font-weight:400}
.team-ranking-card .workspace-card-head{display:flex;align-items:stretch;min-height:42px}
.team-ranking-card .workspace-card-head h2{display:flex;align-items:center;margin:0;padding:0 14px;flex:1}
.team-ranking-table{width:100%}
.team-ranking-table th:nth-child(1),.team-ranking-table td:nth-child(1){width:9%;text-align:left}
.team-ranking-table th:nth-child(2),.team-ranking-table td:nth-child(2){width:43%;text-align:left}
.team-ranking-table th:nth-child(3),.team-ranking-table td:nth-child(3){width:32%;text-align:left}
.team-ranking-table th:nth-child(4),.team-ranking-table td:nth-child(4){width:16%;text-align:right}
.team-ranking-table td{height:29px}
.team-ranking-table a{color:#1972b8;text-decoration:none;font-weight:400}
.team-ranking-table a:hover{text-decoration:underline}
.team-ranking-metric{font-variant-numeric:tabular-nums}
.team-ranking-self td{background:#f0faee}
.league-ranking-description{margin:10px 14px 8px;padding:8px 10px;border:1px solid #dce6df;background:#f8fbf9;color:#56635b;font-size:10.5px;line-height:1.45}
.league-ranking-controls{display:flex;align-items:center;gap:6px;padding:0 14px 10px}
.league-ranking-controls select,.league-ranking-controls input{height:30px;border:1px solid #cfd8d1;background:#fff;padding:3px 8px;font:inherit}
.league-ranking-controls select{min-width:126px}
.league-ranking-controls label{margin-left:auto;display:flex;align-items:center;gap:6px;font-weight:400}
.league-ranking-controls input{width:190px}
.league-ranking-table{width:100%}
.league-ranking-table th:nth-child(1),.league-ranking-table td:nth-child(1){width:8%}
.league-ranking-table th:nth-child(2),.league-ranking-table td:nth-child(2){width:34%;text-align:left}
.league-ranking-table th:nth-child(3),.league-ranking-table td:nth-child(3){width:12%;text-align:center}
.league-ranking-table th:nth-child(4),.league-ranking-table td:nth-child(4){width:12%;text-align:center}
.league-ranking-table th:nth-child(5),.league-ranking-table td:nth-child(5){width:22%;text-align:right}
.league-ranking-table th:nth-child(6),.league-ranking-table td:nth-child(6){width:12%;text-align:center}
.league-ranking-name{display:inline-flex;align-items:center;gap:5px;color:#1972b8;text-decoration:none;font-weight:400}
.league-ranking-name:hover{text-decoration:underline}
.league-ranking-name img{width:16px;height:10px;object-fit:cover}
.league-rank-delta{margin-left:3px;font-size:10px;font-variant-numeric:tabular-nums}
.league-rank-delta.up,.league-rank-arrow.up{color:#0b9a37}
.league-rank-delta.down,.league-rank-arrow.down{color:#e22b2b}
.league-rank-arrow{display:inline-block;margin-left:3px;font-size:14px;font-weight:700;line-height:1}
/* League Ranking first-open responsiveness */
.league-ranking-loading{height:58px;text-align:center!important;color:#6b756f;font-style:normal;font-weight:400}
.league-ranking-loading #leagueRankingProgress{display:inline-block;min-width:34px;margin-left:4px;color:#0b8b3e;font-variant-numeric:tabular-nums}
.league-ranking-card .league-ranking-description{border:0;background:transparent;padding:2px 0;margin:10px 14px 14px;color:#222;font-size:10.5px;line-height:1.45}
/* direct ranking links from every team profile */
.ranking-direct-link,.manager-rank-inline-link{color:#1972b8!important;
  text-decoration:none!important;
  font-weight:var(--ss-weight-regular)!important;}
.ranking-direct-link:hover,.manager-rank-inline-link:hover{color:#0b8b3e!important;
  text-decoration:underline!important;}
.ranking-target-position{color:#0645ff!important;
  font-weight:var(--ss-weight-regular)!important;
  text-decoration:underline;
  text-underline-offset:2px;}
.ranking-target-row td:first-child{box-shadow:inset 2px 0 0 #0645ff;}
.squad-value-ranking-link{color:inherit!important;
  text-decoration:none!important;
  font-weight:var(--ss-weight-regular)!important;}
.squad-value-ranking-link:hover{color:#1972b8!important;
  text-decoration:underline!important;}
/* Formation pitch status rail. Position letters G/D/M/A are intentionally
   not rendered on player/empty pitch slots. This fixed-size rail is reserved
   only for injury/yellow/red-card availability icons. */
/* Formation set pieces use only the active XI; next-match teams are direct links. */
/* Pitch markers stay geometrically centered over player names. The
   optional availability icon is positioned beside the centered person marker
   and therefore never pushes the marker/name alignment sideways. */
/* The clear-lineup control only becomes interactive when at least one player
   is actually on the pitch. */
#resetFormationBtn:disabled,#resetFormationBtn[disabled]{background:#f3f5f4!important;
  border-color:#d8ded9!important;
  color:#aeb7b1!important;
  opacity:1!important;
  cursor:default!important;
  pointer-events:none!important;
  box-shadow:none!important;}
#resetFormationBtn:not(:disabled){background:#fff!important;
  color:#2478bb!important;
  cursor:pointer!important;}
#resetFormationBtn:not(:disabled):hover{border-color:#198f3f!important;
  color:#198f3f!important;}
/* International cups start clean at server hour zero. */
.intl-zero-empty{padding:18px 12px;text-align:center;color:#6e776f;font-size:12px;background:#fbfcfb;border:1px dashed #d9e1da;border-radius:3px;}
.intl-zero-stage{min-height:180px;display:flex;align-items:center;justify-content:center;text-align:center;color:#6e776f;background:#fbfcfb;border:1px dashed #d9e1da;border-radius:3px;margin-top:12px;}
.intl-group-team.placeholder,.intl-team-name.placeholder{color:#8b948d;font-style:italic;}
.intl-group-team.placeholder span{white-space:nowrap;}
/* Coaching starts unknown for every new manager appointment. */
.coaching-table .coach-unknown{display:inline-flex;align-items:center;gap:4px;color:#8a938d;font-style:italic;white-space:nowrap}
.coaching-table .coach-known{color:inherit;font-style:normal}
.coaching-table .coach-refresh-icon{width:13px;height:13px;display:inline-block;object-fit:contain;image-rendering:auto;vertical-align:middle}
/* Compact Soccersim coaching progress inside the club player table. */
.coaching-table .coach-inline-request{appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;gap:4px;min-width:0;padding:0;border:0;background:transparent;color:#8a938d;font:inherit;font-style:italic;line-height:1;cursor:pointer;vertical-align:middle}
.coaching-table .coach-inline-request:hover,.coaching-table .coach-inline-request:focus-visible{color:#137d35;outline:none}
.coaching-table .coach-inline-request:hover .coach-refresh-icon,.coaching-table .coach-inline-request:focus-visible .coach-refresh-icon{transform:rotate(18deg);filter:saturate(1.08)}
.coaching-table .coach-refresh-icon{width:13px;height:13px;display:inline-block;object-fit:contain;image-rendering:auto;vertical-align:middle;transition:transform .12s ease,filter .12s ease}
.coaching-table .coach-inline-progress{position:relative;display:block;width:100%;max-width:158px;min-width:92px;height:17px;border:1px solid #b9c9be;border-radius:2px;background:#edf3ee;overflow:hidden;box-sizing:border-box;box-shadow:inset 0 1px 1px rgba(0,0,0,.035)}
.coaching-table .coach-inline-progress-fill{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,#198b3b,#53ad48);transition:width .2s ease;pointer-events:none}
.coaching-table .coach-inline-progress b{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;height:100%;padding:0 5px;color:#fff!important;-webkit-text-fill-color:#fff;font-size:11px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 1px 0 #0a5724,1px 0 0 #0a5724,0 -1px 0 #0a5724,-1px 0 0 #0a5724;white-space:nowrap}
.coaching-table .coach-inline-progress-fill[style*="width:1"],.coaching-table .coach-inline-progress-fill[style*="width:2"],.coaching-table .coach-inline-progress-fill[style*="width:3"],.coaching-table .coach-inline-progress-fill[style*="width:4"],.coaching-table .coach-inline-progress-fill[style*="width:5"],.coaching-table .coach-inline-progress-fill[style*="width:6"],.coaching-table .coach-inline-progress-fill[style*="width:7"],.coaching-table .coach-inline-progress-fill[style*="width:8"],.coaching-table .coach-inline-progress-fill[style*="width:9"]{min-width:0}
.coaching-table td:nth-child(4),.coaching-table td:nth-child(5),.coaching-table td:nth-child(6),.coaching-table td:nth-child(7){min-width:150px}
.coaching-player-link{display:inline-block;color:#17763a;text-decoration:none}
.coaching-player-link:hover{text-decoration:underline}
/* live Scouting + Board polish */
.board-turn-chip,.scout-level-badge{margin-left:auto;color:#68766d;font-size:10px;font-weight:600;white-space:nowrap}
.board-overall{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:10px 6px 12px;border-bottom:1px solid #e2e8e4;margin-bottom:4px}
.board-overall>div{display:flex;align-items:baseline;gap:9px}
.board-overall>div>span{font-weight:700;color:#303b34}
.board-overall>div>b{font-size:18px;color:#15863a}
.board-overall>small{max-width:610px;color:#68746d;line-height:1.45;text-align:right}
.board-metric-row>span:last-child{display:flex;flex-direction:column;gap:2px}
.board-metric-row>span:last-child>b{font-weight:600;color:#354139}
.board-metric-row>span:last-child>small{font-size:9.3px;line-height:1.35;color:#7a867e}
.board-meter.pending{display:grid;place-items:center;background:#f4f6f5;color:#8a958e}
.board-meter.pending b{font-size:11px;font-weight:600}
.board-metric-pending{opacity:.88}
.board-risk{margin:9px 6px 11px;padding:8px 10px;border-radius:3px;font-size:10px;line-height:1.4}
.board-risk.warning{background:#fff7df;border:1px solid #ead596;color:#7a5b10}
.board-risk.critical{background:#fde9e9;border:1px solid #edb7b7;color:#9f2929}
.board-review-history{display:grid;gap:5px}
.board-review-history>div{display:grid;grid-template-columns:90px 110px 1fr;gap:10px;padding:6px 7px;border-top:1px solid #e4e9e6;align-items:center}
.board-review-history small{color:#6b776f}
.workspace-page-tabs{display:flex;align-items:flex-end;gap:0;border-bottom:1px solid #dce4df;margin-bottom:0}
.workspace-page-tabs .workspace-tab{border:0;border-right:1px solid transparent;background:transparent;padding:10px 15px;color:#657169;font-size:10.5px;cursor:pointer}
.workspace-page-tabs .workspace-tab.active{background:#108b3a;color:#fff;border-color:#108b3a}
.workspace-page-tabs .workspace-tab:not(.active):hover{background:#f4f8f5;color:#14813a}
.scout-report-count{display:inline-grid;place-items:center;min-width:15px;height:15px;margin-left:4px;padding:0 4px;border-radius:8px;background:rgba(255,255,255,.2);font-size:8px}
.workspace-tab:not(.active) .scout-report-count{background:#e8f4eb;color:#137d35}
.scout-search-copy b{font-weight:700;color:#168139}
.scout-progress{height:17px;border-radius:3px}
.scout-progress i{background:linear-gradient(90deg,#46aa55,#168c3c)}
.scout-progress b{font-weight:700;color:#243129}
.scout-report-empty{min-height:150px;display:grid;place-items:center;align-content:center;gap:5px;text-align:center;color:#7a867e}
.scout-report-empty b{color:#435047}
.scout-report-empty span{font-size:10px}
.scout-report-list{padding:4px 12px 14px}
.scout-report-row{display:grid;grid-template-columns:minmax(210px,1.35fr) minmax(160px,1fr) 150px 135px 95px;gap:14px;align-items:center;min-height:54px;border-bottom:1px solid #e1e7e3;font-size:10.4px}
.scout-report-row:last-child{border-bottom:0}
.scout-report-row>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.scout-report-row a{color:#137f35;text-decoration:none}
.scout-report-row a:hover{text-decoration:underline}
.scout-report-row small{font-size:9px;color:#7a867e;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.scout-report-player{flex-direction:row!important;align-items:center;gap:8px!important}
.scout-report-player>img{width:18px;height:12px;object-fit:cover;border:1px solid rgba(0,0,0,.1)}
.scout-report-player>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.scout-report-player a{font-weight:600;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.form-inline-message{margin-left:9px;color:#b3423b;font-size:10px}
/* /R162 - Soccersim Browsergame is the permanent in-game main logo.
   Keep it left-aligned in the global menu and never apply the old SVG inversion filter. */
.game-page .fixed-global-header .game-brand img[src*="soccersim-main-logo.png"],.compact-game-ui .fixed-global-header .game-brand img[src*="soccersim-main-logo.png"]{width:auto!important;
  max-width:178px!important;
  height:58px!important;
  max-height:58px!important;
  object-fit:contain!important;
  object-position:left center!important;
  filter:none!important;
  opacity:1!important;}
/* Turn-driven finance ledger */
.finance-live-note{display:block;
  margin:0 14px 8px;
  padding:7px 9px;
  border:1px solid #dce6df;
  border-radius:3px;
  background:#f8fbf8;
  color:#627068;
  font-size:10px;
  line-height:1.35;}
.finance-period-actions{display:flex;
  align-items:center;
  gap:7px;
  padding:0 14px;}
.finance-period-actions .workspace-button{display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  text-decoration:none;}
.finance-quality.excellent{color:#16883b}
.finance-quality.stable{color:#607067}
.finance-quality.strained{color:#b37716}
.finance-quality.critical{color:#bd3434}
/* investment logic clarity */
.investment-role-note{margin:0 0 5px!important;padding:0 0 7px;border-bottom:1px solid #edf1ee;color:#66736b;font-size:10.2px;line-height:1.4}
.investments-summary small{margin-left:3px;text-transform:capitalize}
/* manager job rules / cleaned settings and account menu */
.manager-profile-rank-link{color:#16813a;text-decoration:none;font-weight:700}
.manager-profile-rank-link span{font-weight:500;color:#657069}
.manager-profile-rank-link:hover{text-decoration:underline}
.plain-danger-link.disabled,.plain-danger-link:disabled,.inline-text-button.disabled,.inline-text-button:disabled{color:#a4aca7;cursor:not-allowed;text-decoration:none;opacity:.72}
.manager-job-lock-note{display:block;margin-top:5px;color:#727d76;font-size:9.8px;line-height:1.35}
.job-lock-notice{margin:0 0 12px;padding:9px 11px;border:1px solid #d9e3dc;background:#f8faf8;border-radius:3px;color:#4a554e}
.job-lock-notice.locked{border-color:#e6d6d3;background:#fff8f7;color:#73534d}
.job-lock-notice.ready{border-color:#cfe1d2;background:#f4faf4;color:#31583a}
.compact-manager-settings{grid-template-columns:minmax(0,520px)}
.compact-manager-settings .settings-save{grid-column:1}
.account-bottom-separator{margin-top:8px}
.account-dropdown .account-bottom-action{font-weight:600}
/* account registration and top-account cleanup */
.register-name-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.register-name-grid .error{margin-bottom:5px}
.register-card{width:610px}
.register-card .field select{width:100%}
.check a{color:var(--green-dark);font-weight:700}
.manager-nationality-flag{font-size:15px;vertical-align:-1px}
.game-page .fixed-global-header .profile-trigger{min-width:142px!important}
.game-page .fixed-global-header .game-actions{padding-right:2px!important}
.game-page .fixed-global-header .profile-menu{margin-right:0!important}
.game-page .fixed-global-header .chat-action{display:none!important}
/* Permanent Soccersim Browsergame branding assets.
   Main logo uses the exact approved horizontal Soccersim reference.
   ServerOne uses the supplied green/white football inside the existing server circle. */
.brand img[src*="soccersim-main-logo.png"]{object-fit:contain;
  object-position:center;}
.game-brand img[src*="soccersim-main-logo.png"]{object-fit:contain!important;
  object-position:left center!important;
  filter:none!important;}
.globe{overflow:hidden;
  background:#fff;
  padding:3px;}
.globe .serverone-ball-icon{display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  border-radius:50%;}
/* cleaner team rank links, right-aligned account menu and administrator tools. */
.squad-value-plain{color:inherit!important;text-decoration:none!important;font-weight:var(--ss-weight-regular)!important;cursor:default!important}
.game-page .fixed-global-header .game-actions{margin-right:-8px!important}
.game-page .fixed-global-header .profile-dropdown{right:0!important}
.admin-menu-separator{margin:4px 0 0!important}
.admin-menu-heading{color:#19833b!important}
.admin-panel-menu-link{font-weight:700!important;color:#126f31!important}
.server-row-paused{opacity:.88}
.server-countdown.is-paused b{color:#b5493d!important}
.server-locked{pointer-events:none!important;cursor:not-allowed!important;filter:grayscale(.55);opacity:.58!important}
.admin-hero{margin-bottom:12px}
.admin-only-label{margin-left:auto;border:1px solid #cfe1d3;background:#f3faf4;color:#147b35;border-radius:3px;padding:3px 7px;font-size:9px;font-weight:800;letter-spacing:.04em}
.admin-overview-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;padding:0 12px}
.admin-overview-grid>div{min-height:72px;padding:12px 13px;border-right:1px solid #e5ebe7;display:flex;flex-direction:column;justify-content:center;gap:3px}
.admin-overview-grid>div:last-child{border-right:0}
.admin-overview-grid span{font-size:9px;text-transform:uppercase;color:#7a847e;font-weight:700}
.admin-overview-grid b{font-size:13px;color:#26302a}
.admin-overview-grid small{font-size:8.5px;color:#8a938d}
.admin-ok{color:#13823a!important}
.admin-danger{color:#b8473d!important}
.admin-panel-grid{display:grid;grid-template-columns:1.35fr .85fr;gap:12px;margin-bottom:12px}
.admin-control-card,.admin-simulation-card{margin:0}
.admin-state-badge{display:inline-flex;align-items:center;justify-content:center;min-width:58px;border-radius:3px;padding:3px 7px;font-size:8.5px;font-weight:800;letter-spacing:.03em}
.admin-state-badge.online{background:#edf8ef;border:1px solid #beddc5;color:#157b35}
.admin-state-badge.paused{background:#fff1ef;border:1px solid #ebc8c3;color:#b14339}
.admin-state-badge.waiting{background:#f5f6f5;border:1px solid #dfe4e0;color:#6e7771}
.admin-server-form{padding:13px 14px 14px;display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}
.admin-server-form label{font-size:9.5px;font-weight:700;color:#4a554e}
.admin-server-form input{display:block;width:100%;height:33px;margin-top:5px;border:1px solid #ccd8d0;border-radius:3px;padding:0 9px;background:#fff;color:#222;font:inherit;font-weight:400}
.admin-server-form input:focus{outline:1px solid #68ad72;border-color:#68ad72}
.admin-readonly-row{grid-column:1/-1;border:1px solid #e0e7e2;background:#f8faf8;border-radius:3px;padding:9px 10px;display:grid;grid-template-columns:110px 1fr auto;align-items:center;gap:8px}
.admin-readonly-row span{font-size:9px;text-transform:uppercase;color:#7b857f;font-weight:700}
.admin-readonly-row b{font-size:10px;color:#334039}
.admin-readonly-row small{font-size:8.5px;color:#79837d}
.admin-button-row{grid-column:1/-1;display:flex;gap:7px;align-items:center}
.workspace-button.danger,.admin-pause-button{background:#b8463d!important;border-color:#a83a32!important;color:#fff!important}
.admin-start-button{background:#16843b!important;color:#fff!important}
.workspace-button.disabled,.workspace-button:disabled{opacity:.52!important;cursor:not-allowed!important}
.admin-inline-message{min-height:24px;margin:0 14px 12px;padding:5px 8px;border-radius:3px;font-size:9.5px;color:#6c766f}
.admin-inline-message.ok{background:#f0f9f1;color:#157537}
.admin-inline-message.error{background:#fff2f1;color:#a53b34}
.admin-inline-message.working{background:#f6f8f6;color:#58645c}
.admin-simulation-body{padding:13px 14px}
.admin-simulation-body p{margin:0 0 12px;color:#657069;font-size:10px;line-height:1.45}
.admin-sim-progress{position:relative;height:23px;border:1px solid #d7e1da;background:#f5f7f5;border-radius:3px;overflow:hidden;margin-bottom:10px}
.admin-sim-progress span{position:absolute;left:0;top:0;bottom:0;width:0;background:linear-gradient(90deg,#1a8b40,#65b943);transition:width .18s}
.admin-sim-progress b{position:relative;z-index:2;display:grid;place-items:center;height:100%;font-size:9.5px;color:#303a34}
.admin-simulation-body .admin-inline-message{margin:9px 0 0}
.admin-users-card{margin-bottom:12px}
.admin-users-help{padding:10px 14px 4px;color:#68736c;font-size:9.5px}
.admin-users-table th,.admin-users-table td{font-size:9.5px!important;vertical-align:middle}
.admin-users-table td:first-child b{display:block}
.admin-users-table td:first-child small{display:block;color:#8b948f;font-size:8px;margin-top:1px}
.admin-mini-button{min-width:58px;height:25px;border:1px solid #d8aaa5;background:#fff6f4;color:#a64038;border-radius:3px;font-size:8.5px;font-weight:700;cursor:pointer}
.admin-mini-button.resume{border-color:#b9d9c0;background:#f2faf3;color:#157936}
.admin-user-admin{background:#fbfdfb}
.admin-audit-list{padding:8px 14px 12px}
.admin-audit-row{display:grid;grid-template-columns:150px 190px 1fr;gap:10px;align-items:center;padding:7px 4px;border-bottom:1px solid #edf0ee;font-size:9.5px}
.admin-audit-row:last-child{border-bottom:0}
.admin-audit-row span{color:#7c8580}
.admin-audit-row b{color:#344139}
.admin-audit-row small{color:#6d7771}
.admin-empty{padding:8px 0;color:#838d87;font-size:9.5px}
.admin-user-actions{display:flex;gap:5px;align-items:center}
.admin-mini-button.edit{border-color:#c8d7cc;background:#f8fbf8;color:#405048}
.admin-modal-backdrop[hidden]{display:none!important}
.admin-modal-backdrop{position:fixed;inset:0;z-index:300;background:rgba(4,25,13,.38);display:grid;place-items:center;padding:18px}
.admin-user-modal{width:min(560px,100%);background:#fff;border:1px solid #cfd9d2;border-radius:5px;box-shadow:0 20px 60px rgba(0,0,0,.22);overflow:hidden}
.admin-modal-close{margin-left:auto;border:0;background:transparent;color:#606a64;font-size:22px;line-height:1;cursor:pointer;padding:0 8px}
.admin-user-edit-form{padding:14px;display:grid;gap:10px}
.admin-user-edit-form label{font-size:9.5px;font-weight:700;color:#4b564f}
.admin-user-edit-form input,.admin-user-edit-form select{display:block;width:100%;height:34px;margin-top:5px;border:1px solid #ccd8d0;border-radius:3px;padding:0 9px;background:#fff;color:#202822;font:inherit;font-weight:400}
.admin-user-edit-form .admin-inline-message{margin:0}
.admin-modal-actions{display:flex;justify-content:flex-end;gap:7px;padding-top:2px}
/* restore the approved Soccersim Classic logo ONLY inside the green game menu.
   Authentication/server pages keep the newer Browsergame logo. */
.game-page .fixed-global-header .game-brand img[src*="soccersim-classic-logo.png"],.compact-game-ui .fixed-global-header .game-brand img[src*="soccersim-classic-logo.png"]{display:block!important;
  width:190px!important;
  max-width:190px!important;
  height:auto!important;
  max-height:62px!important;
  object-fit:contain!important;
  object-position:left center!important;
  filter:brightness(0) invert(1)!important;
  opacity:.98!important;
  background:transparent!important;}
/* perfectly straight league-form connector.
   Every W/D/L/empty marker uses the exact same box and baseline. */
.form-table td.form-cells{display:table-cell!important;
  vertical-align:middle!important;
  min-height:0!important;}
.form-track{position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  height:30px!important;
  min-height:30px!important;
  padding:3px 5px!important;
  line-height:0!important;
  vertical-align:middle!important;
  isolation:isolate!important;}
.form-track::before{content:""!important;
  position:absolute!important;
  z-index:0!important;
  left:17px!important;
  right:17px!important;
  top:50%!important;
  height:2px!important;
  margin:0!important;
  transform:translateY(-1px)!important;
  background:#d3dbd6!important;
  border-radius:0!important;}
.form-result{position:relative!important;
  z-index:1!important;
  flex:0 0 24px!important;
  box-sizing:border-box!important;
  width:24px!important;
  min-width:24px!important;
  max-width:24px!important;
  height:24px!important;
  min-height:24px!important;
  max-height:24px!important;
  margin:0!important;
  padding:0!important;
  align-self:center!important;
  vertical-align:middle!important;
  line-height:20px!important;}
.form-result.latest{box-shadow:inset 0 0 0 1px rgba(17,119,51,.16),0 0 0 1px rgba(39,52,44,.14),0 1px 2px rgba(0,0,0,.08)!important;}
/* admin server transport + complete user moderation */
.admin-control-full{margin-bottom:12px}
.admin-control-full .admin-server-form{grid-template-columns:minmax(220px,1fr) minmax(260px,1fr)}
.admin-auto-save-note{grid-column:1/-1;color:#6f7b73;font-size:8.8px;line-height:1.45;padding:0 1px}
.admin-server-transport{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;align-items:center;padding-top:2px}
.admin-server-transport .workspace-button{min-height:34px;width:100%;font-size:9.2px}
.admin-back-button{border-color:#cbd5ce!important;background:#fff!important;color:#35423a!important}
.admin-forward-button{background:#168b3a!important;border-color:#14823a!important;color:#fff!important}
.admin-simulator-state{grid-column:1/-1;border:1px solid #dfe6e1;background:#fbfcfb;border-radius:3px;padding:9px 10px;display:flex;align-items:flex-start;gap:12px}
.admin-simulator-state>span{flex:0 0 auto;font-size:8.4px;font-weight:800;color:#59645e;letter-spacing:.03em}
.admin-simulator-state>small{font-size:8.8px;line-height:1.45;color:#707a74}
.admin-control-full .admin-sim-progress{grid-column:1/-1;margin:0}
.admin-control-full .admin-inline-message{grid-column:1/-1;margin:0;min-height:14px}
.admin-users-table{min-width:900px}
.admin-users-table th:last-child,.admin-users-table td:last-child{width:255px}
.admin-user-actions{display:flex;gap:4px;align-items:center;white-space:nowrap}
.admin-mini-button{min-width:48px;padding:0 7px}
.admin-mini-button.kick{border-color:#c7d4cb;background:#f8faf8;color:#46534b}
.admin-mini-button.ban{border-color:#e1b47c;background:#fff8ef;color:#9a5a13}
.admin-mini-button.delete{border-color:#dea7a2;background:#fff4f3;color:#a33a33}
.admin-users-table td:first-child small{color:#88938c}
.admin-users-table tr:not(.admin-user-admin) td:first-child small:first-letter{color:#14923b}
.admin-user-edit-form label small{font-weight:400;color:#7b857f}
/* admin world-clock display: fixed 144-turn season cycle */
.admin-overview-grid > div > small{display:block;margin-top:3px;color:#7a8790;font-size:10px;font-weight:500;}
/* friendly administrator user dashboard + 24 hour registrations */
.club-workspace-shell.admin-workspace-shell{width:min(1380px,calc(100% - 24px))}
.admin-users-dashboard>.workspace-card-head{min-height:45px;padding:8px 14px}
.admin-users-dashboard>.workspace-card-head>div{display:flex;flex-direction:column;gap:1px}
.admin-head-subtitle{font-size:8.8px!important;color:#849087!important;font-weight:500!important;text-transform:none!important;letter-spacing:0!important}
.admin-user-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:12px 14px;border-bottom:1px solid #e3e9e5;background:linear-gradient(180deg,#fbfdfb,#f7faf8)}
.admin-user-stat{appearance:none;text-align:left;min-height:72px;border:1px solid #dbe5dd;border-radius:5px;background:#fff;padding:10px 11px;display:flex;flex-direction:column;justify-content:center;gap:2px;cursor:pointer;color:#26322b;box-shadow:0 1px 2px rgba(17,65,31,.025);transition:border-color .14s,box-shadow .14s,transform .14s}
.admin-user-stat:hover{border-color:#9bcaa4;box-shadow:0 3px 10px rgba(26,104,50,.08);transform:translateY(-1px)}
.admin-user-stat.active{border-color:#198b3d;box-shadow:inset 0 0 0 1px #198b3d;background:#f5fbf6}
.admin-user-stat span{font-size:8.5px;font-weight:800;text-transform:uppercase;letter-spacing:.035em;color:#748078}
.admin-user-stat b{font-size:20px;line-height:1.05;color:#243029}
.admin-user-stat small{font-size:8.5px;color:#8b958e}
.admin-user-stat.new b,.admin-user-stat.online b{color:#16833a}
.admin-user-stat.warning b{color:#a75c1d}
.admin-recent-wrap{margin:12px 14px 0;border:1px solid #dce6df;border-radius:5px;overflow:hidden;background:#fff}
.admin-section-title{min-height:44px;padding:8px 11px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e5ebe7;background:#f9fbf9}
.admin-section-title>div{display:flex;flex-direction:column;gap:2px}
.admin-section-title b{font-size:10px;color:#2c3931}
.admin-section-title small{font-size:8.6px;color:#7e8982}
.admin-live-dot{display:inline-flex;align-items:center;gap:4px;color:#16833a;font-size:8px;font-weight:800;letter-spacing:.05em}
.admin-live-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:#1f9b45;box-shadow:0 0 0 3px #eaf7ed}
.admin-recent-list{display:grid}
.admin-recent-user{appearance:none;border:0;border-bottom:1px solid #edf1ee;background:#fff;width:100%;min-height:49px;padding:7px 10px;display:grid;grid-template-columns:34px minmax(180px,1.4fr) minmax(130px,.9fr) minmax(155px,.9fr) 68px;gap:10px;align-items:center;text-align:left;cursor:pointer;color:#2b3630;font:inherit}
.admin-recent-user:last-child{border-bottom:0}
.admin-recent-user:hover{background:#f5faf6}
.admin-recent-avatar{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;border:1px solid #b9d9c0;background:#eef8f0;color:#147b35;font-size:10px;font-weight:800}
.admin-recent-main,.admin-recent-time{display:flex;flex-direction:column;gap:1px;min-width:0}
.admin-recent-main b,.admin-recent-time b{font-size:9.5px;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.admin-recent-main small,.admin-recent-time small{font-size:8px;color:#838e87;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.admin-recent-country{font-size:9px;color:#58665d;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.admin-recent-empty{padding:18px 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#6e7b72;text-align:center;background:#fbfcfb}
.admin-recent-empty b{font-size:10px;color:#435047}
.admin-recent-empty span{font-size:8.8px}
.admin-users-toolbar{display:grid;grid-template-columns:minmax(230px,1.6fr) minmax(145px,.65fr) minmax(145px,.65fr) auto;gap:9px;align-items:end;padding:12px 14px 8px}
.admin-users-toolbar label{display:flex;flex-direction:column;gap:4px;font-size:8.5px;font-weight:800;text-transform:uppercase;letter-spacing:.025em;color:#66736a}
.admin-users-toolbar input,.admin-users-toolbar select{height:33px;width:100%;border:1px solid #ccd9d0;border-radius:4px;background:#fff;padding:0 9px;color:#26322b;font:inherit;font-size:9.5px;font-weight:400;text-transform:none;letter-spacing:0}
.admin-users-toolbar input:focus,.admin-users-toolbar select:focus{outline:1px solid #66aa73;border-color:#66aa73}
.admin-table-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px 12px;color:#68766d;font-size:9.5px}
.admin-page-controls{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.admin-page-button{min-width:29px;height:27px;padding:0 8px;border:1px solid #cad8ce;border-radius:4px;background:#fff;color:#347548;font:inherit;font-size:9.5px;font-weight:800;cursor:pointer}
.admin-page-button:hover:not(:disabled),.admin-page-button.active{border-color:#228745;background:#228745;color:#fff}
.admin-page-button:disabled{opacity:.45;cursor:default}
.admin-page-gap{padding:0 2px;color:#7d8981}
.admin-user-clear{height:33px!important;white-space:nowrap}
.admin-users-dashboard .admin-users-help{margin:0 14px 9px;padding:7px 9px;border:1px solid #e1e8e3;border-radius:4px;background:#fafcfa;color:#707c74}
.admin-users-dashboard .admin-users-help span{font-weight:800;color:#18843b}
.admin-users-dashboard .workspace-table-wrap{border-top:1px solid #e3e9e5}
.admin-users-table{min-width:1190px!important}
.admin-users-table th{position:sticky;top:0;z-index:2;white-space:nowrap}
.admin-users-table th,.admin-users-table td{padding:7px 8px!important}
.admin-users-table td:nth-child(1){min-width:145px}
.admin-users-table td:nth-child(2){min-width:175px}
.admin-users-table td:nth-child(3){min-width:125px}
.admin-users-table td:nth-child(4){min-width:120px}
.admin-users-table td:nth-child(5){min-width:150px}
.admin-users-table td:nth-child(6){min-width:145px}
.admin-users-table th:last-child,.admin-users-table td:last-child{width:225px!important;min-width:225px;background:inherit}
.admin-users-table tr[hidden]{display:none!important}
.admin-date-main{display:block;font-size:9px;color:#35423a;white-space:nowrap}
.admin-users-table td>small{display:block;margin-top:2px;font-size:7.9px;color:#89938d}
.admin-new-user-label{color:#16833a!important;font-weight:800!important;letter-spacing:.025em}
.admin-user-no-results{padding:22px;text-align:center;color:#7b867f;font-size:9.5px;background:#fbfcfb}
.admin-user-actions{justify-content:flex-end}
.admin-mini-button{transition:filter .12s,transform .12s}
.admin-mini-button:hover{filter:brightness(.975);transform:translateY(-1px)}
/* 3.61 admin navigation, stable sorting and responsive manager workflow */
.admin-manager-link,.admin-email-link,.admin-club-link{color:#137b36;text-decoration:none;cursor:pointer;font-weight:700;transition:color .12s,text-decoration-color .12s}
.admin-email-link{font-weight:500;overflow-wrap:anywhere;word-break:break-word}
.admin-manager-link:hover,.admin-email-link:hover,.admin-club-link:hover{color:#0d682c;text-decoration:underline;text-underline-offset:2px}
.admin-manager-link:focus-visible,.admin-email-link:focus-visible,.admin-club-link:focus-visible,.admin-sort-button:focus-visible{outline:2px solid #60a970;outline-offset:2px;border-radius:2px}
.admin-sort-button{appearance:none;border:0;background:transparent;padding:0;margin:0;color:inherit;font:inherit;font-weight:800;display:inline-flex;align-items:center;gap:4px;cursor:pointer;text-align:left}
.admin-sort-button span{min-width:9px;color:#8d9790;font-size:8px}
.admin-sort-button.active{color:#137b36}
.admin-sort-button.active span{color:#137b36}
.admin-recent-user{grid-template-columns:34px minmax(175px,1.35fr) minmax(105px,.72fr) minmax(130px,.82fr) minmax(145px,.85fr) 70px;cursor:default}
.admin-recent-club{min-width:0;font-size:9px;overflow-wrap:anywhere}
.admin-users-toolbar{grid-template-columns:minmax(230px,1.5fr) minmax(130px,.58fr) minmax(130px,.58fr) minmax(140px,.62fr) auto}
.admin-users-dashboard .workspace-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.admin-user-actions .admin-mini-button{min-width:46px}
.manager-admin-account-box{margin:0 0 12px;border:1px solid #d8e3dc;border-radius:4px;background:#fbfdfb;overflow:hidden}
.manager-admin-account-head{min-height:38px;padding:8px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e3e9e5;background:#f6faf7}
.manager-admin-account-head b{font-size:10px;color:#2b3830}
.manager-admin-account-head span{font-size:7.8px;font-weight:800;letter-spacing:.055em;color:#167b38}
.manager-admin-account-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.manager-admin-account-grid p{margin:0;padding:9px 12px;display:grid;gap:2px;border-right:1px solid #edf1ee;border-bottom:1px solid #edf1ee;min-width:0}
.manager-admin-account-grid p:nth-child(3n){border-right:0}
.manager-admin-account-grid b{font-size:8px;text-transform:uppercase;letter-spacing:.035em;color:#7b8780}
.manager-admin-account-grid span{font-size:9.5px;color:#334039;overflow-wrap:anywhere}
@media (max-width:900px){
  .club-workspace-shell.admin-workspace-shell{width:min(100%,calc(100% - 12px))}
  .admin-user-summary{grid-template-columns:repeat(2,minmax(0,1fr));padding:9px}
  .admin-user-stat{min-height:62px}
  .admin-users-toolbar{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px 9px 7px}
  .admin-user-search{grid-column:1/-1}
  .admin-user-clear{width:100%}
  .admin-recent-wrap{margin:9px 9px 0}
  .admin-recent-user{grid-template-columns:30px minmax(0,1fr) auto;gap:6px 8px;padding:8px}
  .admin-recent-avatar{grid-row:1/3}
  .admin-recent-main{grid-column:2}
  .admin-recent-country{grid-column:2;font-size:8.4px}
  .admin-recent-club{grid-column:2}
  .admin-recent-time{grid-column:2}
  .admin-recent-user>.admin-state-badge{grid-column:3;grid-row:1;align-self:start}
  .manager-admin-account-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .manager-admin-account-grid p:nth-child(3n){border-right:1px solid #edf1ee}
  .manager-admin-account-grid p:nth-child(2n){border-right:0}
}
@media (max-width:560px){
  .admin-user-summary{grid-template-columns:1fr 1fr}
  .admin-users-toolbar{grid-template-columns:1fr}
  .admin-user-search{grid-column:auto}
  .manager-admin-account-grid{grid-template-columns:1fr}
  .manager-admin-account-grid p,.manager-admin-account-grid p:nth-child(2n),.manager-admin-account-grid p:nth-child(3n){border-right:0}
}

/* account edge alignment, help cleanup and Ruby Shop pagination. */
.game-page .fixed-global-header .game-header-inner,.compact-game-ui .fixed-global-header .game-header-inner{padding-right:0!important;}
.game-page .fixed-global-header .game-actions,.compact-game-ui .fixed-global-header .game-actions{margin-right:0!important;
  padding-right:0!important;
  justify-self:end!important;}
.game-page .fixed-global-header .profile-menu,.compact-game-ui .fixed-global-header .profile-menu{margin-right:0!important;}
.game-page .fixed-global-header .profile-trigger,.compact-game-ui .fixed-global-header .profile-trigger{padding-right:15px!important;}
/* Question-mark circles are intentionally removed everywhere in the game UI. */
.game-page .panel-help,.game-page .contract-help-dot,.game-page .icon-action[title="Help"]{display:none!important;}
.ruby-history-summary{padding:8px 0 4px;
  color:#737d77;
  font-size:10px;}
.ruby-history-pagination{display:flex;
  align-items:center;
  gap:0;
  margin-top:7px;
  padding-top:7px;
  border-top:1px solid #e2e8e4;}
.ruby-history-pagination a,.ruby-history-pagination span{min-width:29px;
  height:27px;
  padding:0 9px;
  border:1px solid #d5dfd8;
  border-right:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  color:#16813a;
  text-decoration:none;
  font-size:10px;
  box-sizing:border-box;}
.ruby-history-pagination a:first-child,.ruby-history-pagination span:first-child{border-radius:3px 0 0 3px}
.ruby-history-pagination a:last-child,.ruby-history-pagination span:last-child{border-right:1px solid #d5dfd8;border-radius:0 3px 3px 0}
.ruby-history-pagination a.active{background:#168b3a;
  border-color:#168b3a;
  color:#fff;
  font-weight:700;}
.ruby-history-pagination a:hover:not(.active){background:#f2f8f3}
.ruby-history-pagination .disabled{color:#aeb6b0;background:#f7f9f7}
/* Coin currency + player-name editing. */
.player-name-info-value{display:inline-flex;
  align-items:center;
  gap:5px;
  min-width:0;}
.player-name-edit-button{width:19px;
  height:19px;
  padding:0;
  margin:0;
  border:0;
  border-radius:5px;
  background:transparent;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  vertical-align:middle;
  flex:0 0 19px;}
.player-name-edit-button img{display:block;
  width:19px;
  height:19px;
  object-fit:contain;}
.player-name-edit-button:hover img{filter:brightness(1.05)}
.player-name-edit-button:focus-visible{outline:2px solid #168b3a;outline-offset:2px}
.player-rename-modal[hidden]{display:none!important}
.player-rename-modal{position:fixed;
  inset:0;
  z-index:5000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;}
.player-rename-backdrop{position:absolute;
  inset:0;
  border:0;
  background:rgba(4,24,12,.44);
  cursor:default;}
.player-rename-dialog{position:relative;
  width:min(430px,calc(100vw - 32px));
  background:#fff;
  border:1px solid #cfdcd3;
  border-radius:7px;
  box-shadow:0 18px 48px rgba(0,36,16,.22);
  overflow:hidden;}
.player-rename-head{min-height:62px;
  padding:11px 13px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border-bottom:1px solid #dce6df;
  background:#f7fbf8;}
.player-rename-head>div{display:flex;align-items:center;gap:10px;min-width:0}
.player-rename-head img{width:39px;height:39px;object-fit:contain;flex:0 0 39px}
.player-rename-head h3{margin:0;color:#14241a;font-size:17px;line-height:1.2}
.player-rename-head p{margin:3px 0 0;color:#758078;font-size:11px}
.player-rename-close{border:0;
  background:transparent;
  color:#6f7972;
  width:30px;
  height:30px;
  font-size:24px;
  line-height:1;
  cursor:pointer;
  border-radius:4px;}
.player-rename-close:hover{background:#e9f3eb;color:#166d30}
.player-rename-form{padding:15px 16px 16px}
.player-rename-form>label{display:block;margin-bottom:6px;font-size:11px;font-weight:700;color:#253129;text-transform:uppercase;letter-spacing:.02em}
.player-rename-form>input{width:100%;
  box-sizing:border-box;
  height:38px;
  border:1px solid #bdcec2;
  border-radius:4px;
  padding:0 10px;
  font:inherit;
  color:#1f2c24;
  outline:none;}
.player-rename-form>input:focus{border-color:#229343;box-shadow:0 0 0 2px rgba(34,147,67,.10)}
.player-rename-meta{margin-top:10px;
  padding:9px 10px;
  display:flex;
  justify-content:space-between;
  gap:12px;
  border:1px solid #dce8df;
  border-radius:4px;
  background:#f8fbf9;
  color:#56625a;
  font-size:11px;}
.player-rename-meta b{color:#126d30}
.player-rename-message{min-height:16px;margin:10px 0 12px;color:#68736c;font-size:11px;line-height:1.45}
.player-rename-message.error{color:#b52d2d}
.player-rename-actions{display:flex;justify-content:flex-end;gap:8px}
.player-rename-actions .workspace-button{min-width:105px}
.player-rename-actions .workspace-button:disabled{opacity:.48;cursor:not-allowed;filter:grayscale(.25)}
.player-rename-shop-link{display:inline-block;margin-top:11px;color:#168b3a;font-size:11px;font-weight:700;text-decoration:none}
.player-rename-shop-link:hover{text-decoration:underline}
/* Keep the old CSS class names for compatibility; all visible copy says Coin/Coins. */
/* 3.42 last-training skill highlight. Keep desktop/mobile table geometry intact:
   only the numeric value changed by the last completed training is blue. */
.players-table td.skill-change-cell{background:transparent!important}
.players-table td.skill-change-up{color:inherit;background:transparent!important}
.players-table td.skill-change-down{color:inherit;background:transparent!important}
.players-table td.skill-change-cell span{display:inline-block;min-width:1.4em;text-align:center;font-weight:inherit}
.players-table td.skill-change-up span{color:#1674c7;font-weight:700}
.players-table td.skill-change-up.main-skill-change span{font-weight:800}
.players-table td.skill-change-down span{color:#c62828}
/* manager-to-manager mail + gold administrator identity. */
.admin-menu-heading{color:#a97b08!important}
.admin-panel-menu-link{font-weight:800!important;color:#a97b08!important;background:#fffaf0!important;border-left:3px solid #d5aa2f!important;padding-left:11px!important}
.admin-panel-menu-link:hover{color:#805c00!important;background:#fff4d4!important}
.mailbox-card-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}
.mailbox-new-message{margin-left:auto!important;display:inline-flex!important;align-items:center!important;gap:6px!important;text-decoration:none!important;min-height:28px!important;padding:5px 10px!important}
.mail-compose-title{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;border-bottom:1px solid #e4e9e6!important;padding-bottom:9px!important}
.mail-compose-title h3{margin:0!important}
.mail-compose-title span{font-size:9px!important;text-transform:uppercase!important;letter-spacing:.055em!important;color:#7d8781!important;font-weight:800!important}
.mail-compose select{height:34px;border:1px solid #c8d4cc;border-radius:2px;padding:0 8px;background:#fff;font:inherit;color:#29332d}
.mail-compose-recipient{display:grid!important;grid-template-columns:52px 1fr!important;grid-template-rows:auto auto!important;align-items:center!important;gap:2px 8px!important;border:1px solid #dfe7e2!important;background:#f7faf8!important;padding:9px 10px!important;border-radius:3px!important}
.mail-compose-recipient>span{grid-row:1/3;font-size:9.5px!important;text-transform:uppercase!important;color:#7f8983!important;font-weight:800!important}
.mail-compose-recipient>b{font-size:11px!important;color:#27332c!important}
.mail-compose-recipient>small{font-size:9px!important;color:#7e8982!important}
.mail-compose-actions{display:flex!important;gap:7px!important;align-items:center!important}
#mailComposeStatus.success{color:#147a35!important;font-weight:700!important}
.mail-reader-actions{padding:0 15px 15px;display:flex;justify-content:flex-end}
.mail-reply-button,.mail-empty-compose{text-decoration:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
.mail-empty-compose{margin:4px auto 0!important;width:max-content!important}
.manager-message-action{margin-left:auto;display:inline-flex;align-items:center;gap:5px;color:#16813a!important;text-decoration:none!important;font-size:9.5px!important;font-weight:800!important;border:1px solid #c9ddcf;border-radius:3px;padding:5px 8px;background:#f7fbf8}
.manager-message-action:hover{background:#edf7ef;color:#0f6f30!important}
/* league Team of the Round / Team of the Season */
.best-team-box{padding:0 14px 14px!important}
.best-team-box>.league-subtabs{margin-bottom:0!important}
.best-team-body{padding:0 0 8px!important}
.best-team-meta{width:min(610px,100%);display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 8px 5px;color:#68747c;font-size:11px;box-sizing:border-box}
.best-team-meta b{color:#273038;font-weight:600}
.real-best-team-table{width:min(610px,100%)!important;table-layout:fixed;margin-top:0!important}
.real-best-team-table th,.real-best-team-table td{height:28px;box-sizing:border-box;padding:5px 8px!important;vertical-align:middle}
.real-best-team-table th:nth-child(1),.real-best-team-table td:nth-child(1){width:90px;text-align:left!important}
.real-best-team-table th:nth-child(2),.real-best-team-table td:nth-child(2){width:72px;text-align:center!important}
.real-best-team-table th:nth-child(4),.real-best-team-table td:nth-child(4){width:92px;text-align:center!important}
.best-team-player{display:flex;align-items:center;gap:7px;min-width:0}
.best-team-player>a{display:block;min-width:0;overflow:visible;text-overflow:clip;color:#1670b8;text-decoration:none;overflow-wrap:anywhere;white-space:normal!important;}
.best-team-player>a:hover{text-decoration:underline}
.best-team-club-crest{width:18px;height:18px;display:flex;align-items:center;justify-content:center;flex:0 0 18px}
.best-team-club-crest .mini-club-crest{width:18px!important;height:18px!important;display:flex!important;align-items:center!important;justify-content:center!important}
.best-team-club-crest .club-crest-image{width:18px!important;height:18px!important;max-width:18px!important;max-height:18px!important;object-fit:contain!important}
.best-team-club-crest .club-crest-fallback-badge{width:17px!important;height:17px!important;min-width:17px!important;font-size:7px!important;line-height:17px!important}
.compact-best-team-empty{min-height:250px;display:flex;flex-direction:column;justify-content:center;box-sizing:border-box}
.season-nav-buttons{width:min(610px,100%);display:flex;gap:8px;padding:14px 0 0!important}
.season-nav-buttons .btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-width:112px}

/* manager avatar selector and name-initial avatar */
.manager-avatar{overflow:hidden;box-sizing:border-box;font-weight:800;line-height:1;letter-spacing:.02em;user-select:none}
.manager-avatar>span{display:block;line-height:1}
.manager-avatar>img{width:100%;height:100%;display:block;object-fit:contain}
.profile-avatar.manager-avatar{font-family:Arial,Helvetica,sans-serif;font-size:12px;font-weight:800}
.game-page .fixed-global-header .profile-avatar.manager-avatar{font-size:12px!important;font-weight:800!important;letter-spacing:.025em!important}
.game-page .fixed-global-header .profile-avatar.manager-avatar>span{transform:translateY(.2px)}

.avatar-style-standard{background:#fff!important;color:#087433!important;border:1px solid rgba(255,255,255,.9)!important;box-shadow:0 0 0 1px rgba(0,100,43,.14),0 1px 4px rgba(0,0,0,.12)!important}
.avatar-style-classic{background:#fff!important;border:1px solid rgba(255,255,255,.9)!important;padding:3px!important;box-shadow:0 0 0 1px rgba(0,100,43,.14),0 1px 4px rgba(0,0,0,.12)!important}
.avatar-style-green{background:linear-gradient(180deg,#1aa34a 0%,#087633 100%)!important;color:#fff!important;border:2px solid #dff6e6!important;box-shadow:0 0 0 1px #087333,0 1px 4px rgba(0,0,0,.18)!important}
.avatar-style-dark{background:linear-gradient(180deg,#083e20 0%,#022b15 100%)!important;color:#fff!important;border:2px solid #62d17f!important;box-shadow:0 0 0 1px rgba(255,255,255,.2),0 1px 4px rgba(0,0,0,.2)!important}
.avatar-style-silver{background:linear-gradient(180deg,#fff 0%,#e6ebe8 100%)!important;color:#075d2a!important;border:2px solid #b9c7bf!important;box-shadow:inset 0 0 0 1px #fff,0 1px 4px rgba(0,0,0,.14)!important}
.avatar-style-ring{background:#fff!important;color:#086a30!important;border:3px double #139642!important;box-shadow:0 0 0 1px rgba(255,255,255,.8),0 1px 4px rgba(0,0,0,.16)!important}

.manager-avatar-settings{grid-column:1/-1;gap:9px!important;padding-bottom:16px;border-bottom:1px solid #e3e9e5}
.manager-avatar-help{margin:0;color:#657069;font-size:10.5px;line-height:1.45;max-width:720px}
.manager-avatar-current{display:flex;align-items:center;gap:12px;width:max-content;min-width:270px;padding:9px 12px;border:1px solid #d9e3dc;border-radius:4px;background:#f8fbf9}
.manager-avatar-current>span:first-child{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.055em;color:#7b8780;margin-right:1px}
.manager-avatar-current>div{display:grid;gap:3px}
.manager-avatar-current>div>b{font-size:11px;color:#202c25}
.manager-avatar-current>div>small{font-size:9.5px;color:#758078}
.manager-avatar-preview{width:44px;height:44px;min-width:44px;border-radius:50%;display:grid;place-items:center;font-family:Arial,Helvetica,sans-serif;font-size:15px}
.manager-avatar-preview.avatar-style-classic{padding:4px!important}
.manager-avatar-grid{display:grid;grid-template-columns:repeat(6,minmax(105px,1fr));gap:8px;max-width:850px;margin-top:2px}
.manager-avatar-option{position:relative;min-height:99px;border:1px solid #dce4df;border-radius:4px;background:#fff;padding:9px 7px 8px;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center;gap:6px!important;cursor:pointer;text-align:center;font-weight:500!important;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.manager-avatar-option:hover{border-color:#9dcbae;background:#fbfefc}
.manager-avatar-option.selected{border-color:#15913e;background:#f3faf5;box-shadow:inset 0 0 0 1px #15913e}
.manager-avatar-option input{position:absolute;opacity:0;pointer-events:none}
.manager-avatar-choice-visual{display:block;height:43px}
.manager-avatar-swatch{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-family:Arial,Helvetica,sans-serif;font-size:13px}
.manager-avatar-swatch.avatar-style-classic{padding:4px!important}
.manager-avatar-option>b{font-size:10px;color:#243029;line-height:1.2}
.manager-avatar-option>small{font-size:8.7px;color:#7e8982;line-height:1.2;font-weight:500}
.manager-avatar-option.selected:after{content:"✓";position:absolute;right:6px;top:5px;width:16px;height:16px;border-radius:50%;background:#11923e;color:#fff;display:grid;place-items:center;font-size:10px;font-weight:900}
.compact-manager-settings .settings-column:not(.manager-avatar-settings){grid-column:1/-1;max-width:520px}

@media (max-width:900px){
  .manager-avatar-grid{grid-template-columns:repeat(3,minmax(105px,1fr))}
}
@media (max-width:560px){
  .manager-avatar-grid{grid-template-columns:repeat(2,minmax(105px,1fr))}
  .manager-avatar-current{width:100%;min-width:0}
}

/* fixed-header manager avatar variants.
   The older fixed header profile rule forced every initials avatar back to white.
   These scoped variants deliberately outrank it so every Settings choice is visible. */
.game-page .fixed-global-header .profile-trigger .profile-avatar.manager-avatar.avatar-style-standard{background:#fff!important;color:#087433!important;border:1px solid rgba(255,255,255,.95)!important;box-shadow:0 0 0 1px rgba(0,100,43,.18),0 1px 4px rgba(0,0,0,.14)!important;padding:0!important}
.game-page .fixed-global-header .profile-trigger .profile-avatar.manager-avatar.avatar-style-classic{background:#fff!important;color:#087433!important;border:1px solid rgba(255,255,255,.95)!important;box-shadow:0 0 0 1px rgba(0,100,43,.18),0 1px 4px rgba(0,0,0,.14)!important;padding:3px!important}
.game-page .fixed-global-header .profile-trigger .profile-avatar.manager-avatar.avatar-style-green{background:linear-gradient(180deg,#1aa34a 0%,#087633 100%)!important;color:#fff!important;border:2px solid #dff6e6!important;box-shadow:0 0 0 1px #087333,0 1px 4px rgba(0,0,0,.18)!important;padding:0!important}
.game-page .fixed-global-header .profile-trigger .profile-avatar.manager-avatar.avatar-style-dark{background:linear-gradient(180deg,#083e20 0%,#022b15 100%)!important;color:#fff!important;border:2px solid #62d17f!important;box-shadow:0 0 0 1px rgba(255,255,255,.20),0 1px 4px rgba(0,0,0,.20)!important;padding:0!important}
.game-page .fixed-global-header .profile-trigger .profile-avatar.manager-avatar.avatar-style-silver{background:linear-gradient(180deg,#fff 0%,#e6ebe8 100%)!important;color:#075d2a!important;border:2px solid #b9c7bf!important;box-shadow:inset 0 0 0 1px #fff,0 1px 4px rgba(0,0,0,.14)!important;padding:0!important}
.game-page .fixed-global-header .profile-trigger .profile-avatar.manager-avatar.avatar-style-ring{background:#fff!important;color:#086a30!important;border:3px double #139642!important;box-shadow:0 0 0 1px rgba(255,255,255,.80),0 1px 4px rgba(0,0,0,.16)!important;padding:0!important}
.game-page .fixed-global-header .profile-trigger .profile-avatar.manager-avatar.avatar-style-classic>img{width:100%!important;height:100%!important;object-fit:contain!important;display:block!important}

@media (max-width: 900px){.ruby-pack-grid{grid-template-columns:1fr}.ruby-pay-button{max-width:320px}}

/* administrator Coin controls */
.admin-coins-card{margin-bottom:12px}
.admin-coins-card>.workspace-card-head>div{display:flex;flex-direction:column;gap:1px}
.admin-coins-help{margin:12px 14px 10px;padding:9px 10px;border:1px solid #dbe6de;border-radius:4px;background:#f8fbf9;color:#657269;font-size:9.5px;line-height:1.45}
.admin-coins-help b{color:#177b38}
.admin-coin-pagination-toolbar{display:flex;justify-content:flex-end;padding:0 14px 10px}
.admin-coin-pagination-toolbar label{display:flex;align-items:center;gap:6px;color:#66736a;font-size:8.5px;font-weight:800;text-transform:uppercase;letter-spacing:.025em}
.admin-coin-pagination-toolbar select{height:31px;border:1px solid #ccd9d0;border-radius:4px;background:#fff;padding:0 7px;color:#26322b;font:inherit;font-size:9.5px;text-transform:none;letter-spacing:0}
.admin-coins-table{min-width:980px!important}
.admin-coins-table th,.admin-coins-table td{padding:8px!important;vertical-align:middle;font-size:9.5px!important}
.admin-coins-table td:first-child b{display:block}
.admin-coins-table td:first-child small{display:block;margin-top:2px;color:#89938d;font-size:8px}
.admin-coin-balance{color:#15843a;font-size:11px}
.admin-coin-amount{width:105px;height:30px;border:1px solid #cbd8cf;border-radius:4px;padding:0 8px;background:#fff;color:#253129;font:inherit}
.admin-coin-amount:focus{outline:1px solid #5ca66d;border-color:#5ca66d}
.admin-coin-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.admin-mini-button.coin-add{border-color:#98c9a5;background:#eef8f1;color:#137335}
.admin-mini-button.coin-remove{border-color:#e0c09f;background:#fff7ee;color:#985313}
.admin-mini-button:disabled{opacity:.42;cursor:not-allowed}
.admin-coins-card>.admin-inline-message{margin:0 14px 12px}

/* server simulation lobby lock */
.server-simulation-progress{display:flex;align-items:center;justify-content:center;gap:9px;min-width:118px}
.server-simulation-progress[hidden]{display:none!important}
.server-simulation-progress>span{width:92px;height:8px;overflow:hidden;border-radius:999px;background:#dce6df;box-shadow:inset 0 0 0 1px rgba(6,74,34,.12)}
.server-simulation-progress>span>i{display:block;height:100%;background:linear-gradient(90deg,#168b3a,#38af58);border-radius:inherit;transition:width .18s linear}
.server-simulation-progress>b{min-width:31px;color:#0d7130;font-size:11px}
.server-countdown.is-simulating{color:#0d7130}
.server-row.server-row-simulating{background:#f3faf5}
@keyframes serverOneBallSimulationSpin{to{transform:rotate(360deg)}}
.globe .serverone-ball-icon.is-simulating{animation:serverOneBallSimulationSpin 1.8s linear infinite;transform-origin:50% 50%;will-change:transform}
@media (prefers-reduced-motion: reduce){.globe .serverone-ball-icon.is-simulating{animation:none;will-change:auto}}
.server-simulation-notice{margin:9px 0;padding:9px 11px;border:1px solid #cde2d2;background:#f2faf4;color:#205f34;font-size:11px;line-height:1.45}

/* Managed-team squad: current formation players are clearly but cleanly emphasized.
   lineup-selected is only assigned for the manager's own team in app.js. */
.squad-player-name-status.lineup-selected .player-name-link{
  font-weight:var(--ss-weight-bold)!important;
  font-style:normal!important;
}


/* country flags are universal league shortcuts. */
.country-league-flag-link{cursor:pointer;}
.country-league-flag-link:focus-visible{outline:2px solid currentColor;outline-offset:2px;border-radius:2px;}

/* Team Info match preview: five real columns, full club names, report link.
   This deliberately overrides the older six-column recent-match layout. */
.recent-match-row.goal-ref-match-row{
  display:grid!important;
  grid-template-columns:34px minmax(145px,1.6fr) 62px minmax(145px,1.6fr) minmax(92px,.85fr)!important;
  column-gap:8px!important;
  align-items:center;
  min-height:38px;
}
.recent-match-row.goal-ref-match-row .goal-ref-home,
.recent-match-row.goal-ref-match-row .goal-ref-away{
  display:block;
  min-width:0;
  width:100%;
}
.recent-match-row.goal-ref-match-row .match-team-inline.match-team-side{
  width:100%!important;
  max-width:none!important;
}
.recent-match-row.goal-ref-match-row .match-team-inline.match-team-side .match-team-name{
  overflow:visible;
  text-overflow:clip;
  white-space:nowrap;
}
.recent-match-row.goal-ref-match-row .score.compact{
  width:100%;
  min-width:0;
  justify-content:center;
  text-align:center;
}
.recent-match-row.goal-ref-match-row .goal-ref-competition{
  min-width:0;
  overflow:visible;
  text-overflow:clip;
  
  text-align:left;overflow-wrap:anywhere;white-space:normal!important;}
.team-info-score-link{cursor:pointer;}
@media (max-width:1100px){
  .recent-match-row.goal-ref-match-row{
    grid-template-columns:30px minmax(118px,1.45fr) 58px minmax(118px,1.45fr) minmax(78px,.8fr)!important;
    column-gap:6px!important;
  }
}


/* cleaner five-match team overview. Competition is visually separated on the far right. */
.recent-match-row.goal-ref-match-row{
  grid-template-columns:34px minmax(155px,1.55fr) 68px minmax(155px,1.55fr) 126px!important;
  column-gap:12px!important;
}
.recent-match-row.goal-ref-match-row .goal-ref-away{
  padding-right:8px;
}
.recent-match-row.goal-ref-match-row .goal-ref-competition{
  justify-self:stretch;
  padding-left:18px;
  border-left:1px solid #edf1ee;
  color:#4e5c53;
  font-weight:600;
}
.recent-match-row.goal-ref-match-row .team-info-score-link{
  display:inline-flex;
  min-width:52px;
  justify-content:center;
}

/* domestic cup view follows the compact two-column reference while keeping Soccersim green styling. */
.classic-cup-layout{gap:26px!important;padding-top:4px;}
.classic-cup-box{padding:0 12px 8px!important;border:0!important;background:transparent!important;}
.classic-cup-side{border:0!important;background:transparent!important;}
.classic-cup-round-block{padding:13px 0 18px!important;border-bottom:1px solid #dfe7e1!important;}
.classic-cup-round-block:first-child{padding-top:8px!important;}
.classic-cup-round-block h3{
  margin:0 0 10px!important;
  padding:0 4px 7px;
  border-bottom:1px solid #e6ece8;
  color:#26342a!important;
  font-size:14px!important;
  font-weight:800!important;
  text-align:center;
}
.classic-cup-round-list{gap:0!important;}
.classic-cup-match-row{
  grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr) 90px 116px!important;
  min-height:30px;
  padding:4px 5px!important;
  border-bottom:1px solid #f0f3f1;
}
.classic-cup-match-row:last-child{border-bottom:0;}
.classic-cup-home{text-align:left;}
.classic-cup-away{text-align:right;}
.classic-cup-away .cup-team-inline{justify-content:flex-end;}
.classic-cup-x{font-size:12px;color:#3e4c43!important;}
.classic-cup-turns{text-align:right!important;color:#69766d!important;font-size:11px!important;}
.classic-cup-score{text-align:right!important;color:#1763a8!important;font-weight:700!important;}
.classic-cup-bye-note{
  margin:10px 4px 0;
  padding:8px 10px;
  border:1px solid #dce8df;
  border-left:3px solid #14923d;
  background:#f7fbf8;
  color:#526058;
  font-size:11px;
}
.classic-cup-bye-note b{color:#14843a;}
.classic-cup-waiting{padding:12px 6px;color:#7a857e;font-size:11px;text-align:center;}
.classic-cup-side .info-card{margin-bottom:18px;}
.classic-cup-side .info-card h3{padding-bottom:8px;border-bottom:1px solid #e1e8e3;}

@media (max-width:1100px){
  .recent-match-row.goal-ref-match-row{
    grid-template-columns:30px minmax(125px,1.45fr) 58px minmax(125px,1.45fr) 105px!important;
    column-gap:8px!important;
  }
  .recent-match-row.goal-ref-match-row .goal-ref-competition{padding-left:10px;}
}

/* mailbox player links */
.mail-reader-body .mail-player-link{color:#087b35;font-weight:700;text-decoration:none}
.mail-reader-body .mail-player-link:hover,.mail-reader-body .mail-player-link:focus-visible{text-decoration:underline}

/* compact vector manager status icon */
.manager-status-icon.human{width:15px!important;height:15px!important;flex-basis:15px!important;margin-left:0;margin-right:2px;opacity:.96;vertical-align:-2px}
.manager-status-icon.human img{display:block!important;width:15px!important;height:15px!important;object-fit:contain!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;filter:none!important}
.intl-stage-groups .intl-group-team .manager-status-icon.human{width:13px!important;height:13px!important;flex-basis:13px!important;margin-right:1px!important}
.intl-stage-groups .intl-group-team .manager-status-icon.human img{width:13px!important;height:13px!important}
.intl-group-team .manager-status-icon.human,.cup-box .manager-status-icon.human,.league-table .manager-status-icon.human{align-self:center}


/* keep the same green manager avatar, only make it clearer and less compressed */
.manager-status-icon.human{width:16px!important;height:16px!important;flex:0 0 16px!important;min-width:16px!important;opacity:1!important;margin-left:0!important;margin-right:2px!important;vertical-align:-2px!important;align-self:center!important}
.manager-status-icon.human img,.manager-status-icon.human svg{display:block!important;width:16px!important;height:16px!important;min-width:16px!important;object-fit:contain!important;flex:0 0 auto!important;filter:none!important}
.team-link .manager-status-icon.human,.club-cell-wrap .manager-status-icon.human,.match-team-inline .manager-status-icon.human,.cup-status-slot .manager-status-icon.human{margin-right:2px!important}
.intl-group-team .manager-status-icon.human,.intl-team-name .manager-status-icon.human,.national-team-name .manager-status-icon.human,.league-table .manager-status-icon.human{width:15px!important;height:15px!important;flex:0 0 15px!important;min-width:15px!important;margin-right:2px!important;opacity:1!important}
.intl-group-team .manager-status-icon.human img,.intl-team-name .manager-status-icon.human img,.national-team-name .manager-status-icon.human img,.league-table .manager-status-icon.human img,.intl-group-team .manager-status-icon.human svg,.intl-team-name .manager-status-icon.human svg,.national-team-name .manager-status-icon.human svg,.league-table .manager-status-icon.human svg{width:15px!important;height:15px!important;min-width:15px!important;display:block!important}
.intl-stage-groups .intl-group-team{gap:4px!important}
.intl-stage-groups .intl-group-team .manager-status-icon.human{width:15px!important;height:15px!important;flex:0 0 15px!important;min-width:15px!important;margin-right:2px!important}
.intl-stage-groups .intl-group-team .manager-status-icon.human img,.intl-stage-groups .intl-group-team .manager-status-icon.human svg{width:15px!important;height:15px!important;min-width:15px!important}


/* interactive match-result mails */
.mail-reader-body .mail-team-link{color:#087b35;font-weight:700;text-decoration:none}
.mail-reader-body .mail-team-link:hover,.mail-reader-body .mail-team-link:focus-visible{text-decoration:underline}
.mail-reader-body .mail-result-link{display:inline-block;margin:0 2px;padding:0 4px;border-radius:3px;color:#176db5;font-weight:800;text-decoration:none}
.mail-reader-body .mail-result-link:hover,.mail-reader-body .mail-result-link:focus-visible{background:#eef6fc;text-decoration:underline}
.mail-match-result-line{line-height:1.7}
.mail-match-competition{margin-top:2px;color:#37443c}
.mail-match-competition b{font-weight:700;color:#27342c}
.mail-match-competition span{color:#667169}


/* national-team match reports are real navigation, not placeholders. */
.national-score-report-link{color:#056fca;text-decoration:none;font-weight:700}.national-score-report-link:hover{text-decoration:underline}
.national-report-team-heads{display:grid;grid-template-columns:1fr 120px 1fr;align-items:center;gap:14px;padding:15px 18px;border-bottom:1px solid #dce5df;background:#fbfcfb}
.national-report-team-heads>a{display:flex;align-items:center;gap:7px;color:#1673b8;text-decoration:none;font-size:13px;font-weight:700}.national-report-team-heads>a.away{justify-content:flex-end}.national-report-team-heads img{width:22px;height:14px;object-fit:cover;border:1px solid #cdd7d0}.national-report-team-heads strong{text-align:center;font-size:20px;color:#16231b}
.national-report-grid{display:grid;grid-template-columns:minmax(260px,1fr) minmax(230px,.75fr) minmax(260px,1fr);gap:14px;padding:15px 18px 20px;align-items:start}.national-report-lineup{border:1px solid #dce4df;background:#fff}.national-report-lineup h3{margin:0;padding:9px 10px;border-bottom:1px solid #e1e7e3;font-size:11px}.national-report-lineup h3 small{float:right;color:#6f7b73;font-weight:500}.national-report-player-list{display:grid}.national-report-player-row{display:grid;grid-template-columns:28px minmax(0,1fr) 18px 42px;align-items:center;gap:6px;padding:6px 8px;border-bottom:1px solid #edf1ee;font-size:10px}.national-report-player-row:last-child{border-bottom:0}.national-report-player-row .nr-pos{font-weight:800;color:#647168}.national-report-player-row .nr-name{min-width:0}.national-report-player-row .nr-name>a{color:#1673b8;text-decoration:none}.national-report-player-row .nr-name small{display:block;color:#8a948e;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}.national-report-player-row>b{text-align:right}.national-report-card{display:inline-block;width:9px;height:12px;border:1px solid rgba(0,0,0,.35);border-radius:1px}.national-report-card.yellow{background:#f1dd00}.national-report-card.red{background:#d62f2f}.national-player-stats-team .match-stat-team-title img{width:20px;height:13px;object-fit:cover;border:1px solid #cdd7d0;margin-right:6px}.national-player-stats-team .match-stat-team-title a{display:flex;align-items:center}
@media(max-width:900px){.national-report-team-heads{grid-template-columns:1fr 76px 1fr}.national-report-grid{grid-template-columns:1fr}.national-report-team-heads strong{font-size:16px}}


/* GoalFC-style report ordering and inline real match events. */
.r71-match-report .match-lineup-row{grid-template-columns:20px 22px minmax(0,1fr) 38px}
.r71-match-report .match-player-main{min-width:0}
.r71-match-report .match-player-main .match-card,.r71-match-report .match-player-main .match-goal-ball,.r71-match-report .match-player-main .match-sub-arrow{vertical-align:middle}


/* clearly distinguish completed legacy fixtures whose exact score record no longer survives. */
.legacy-result-label,.team-info-score-legacy{font-size:11px;font-weight:700;color:#6d756f;text-transform:uppercase;letter-spacing:.02em}
.legacy-result-status{font-size:10px;color:#7d8580;font-style:italic}
.legacy-result-row{background:rgba(248,249,248,.65)}

/* compact Search icon aligned with the navigation label */
.game-page .fixed-global-header .nav-search{gap:5px!important;padding:0 11px!important;min-width:78px!important}
.game-page .fixed-global-header .search-symbol{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:15px!important;height:15px!important;flex:0 0 15px!important;transform:none!important}
.game-page .fixed-global-header .search-symbol svg{display:block;width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.game-page .fixed-global-header .search-label{display:inline-flex;align-items:center;line-height:1!important;font-size:12.5px!important}

/* match incidents stay beside the player name */
.match-injury-markers{display:inline-flex;align-items:center;flex:0 0 auto;margin-left:1px}
.match-injury-icon{display:block;width:13px;height:13px;object-fit:contain;flex:0 0 13px}
.r71-match-report .match-player-main .match-injury-icon{vertical-align:middle}
.r71-match-report .match-player-main{gap:3px!important}
.r71-match-report .motm-mark{color:#13883d!important;font-weight:900!important}


/* prepared international season + computer national-team manager */
.national-computer-manager{display:inline-flex;align-items:center;gap:5px}.national-computer-manager .manager-status-icon{margin:0!important;flex:0 0 auto!important}.intl-stage-finals .intl-team-name.placeholder,.intl-round-block .intl-team-name.placeholder{opacity:.72;font-style:italic}.intl-zero-stage{min-height:72px;display:flex;align-items:center;justify-content:center}


/* continental qualification chips are direct competition links */
.status-chip-link{display:inline-flex!important;align-items:center;justify-content:center;text-decoration:none!important;cursor:pointer;vertical-align:middle}
.status-chip-link:hover,.status-chip-link:focus-visible{text-decoration:none!important;filter:brightness(.94);outline:1px solid currentColor;outline-offset:1px}


/* Friendly invitation / scheduling */
.team-info-action-row{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.friendly-action-btn{display:inline-flex;align-items:center;text-decoration:none}.team-friendly-invite-link{display:inline-block;margin:7px 12px 10px;color:#138b3c;font-size:11px;font-weight:700;text-decoration:none}.team-friendly-invite-link:hover{text-decoration:underline}
.friendly-card{max-width:980px}.friendly-layout{padding:12px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.friendly-layout section{border:1px solid #dce5df;background:#fff;padding:12px}.friendly-layout h3{font-size:13px;margin:0 0 10px}.friendly-invite-panel{grid-row:span 2}.friendly-invite-panel form{display:grid;gap:10px}.friendly-invite-panel label{display:grid;gap:5px;font-size:11px}.friendly-invite-panel select{height:34px;border:1px solid #cbd8d0;padding:0 8px;background:#fff}.friendly-home-choice{display:flex;gap:18px}.friendly-home-choice label{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:5px}.friendly-open-row{display:grid;grid-template-columns:1fr 190px auto auto;gap:6px;align-items:center;padding:7px 0;border-bottom:1px solid #edf1ee}.friendly-open-row>div{display:grid}.friendly-open-row span{font-size:10px;color:#6d7771}.friendly-open-row button{border:1px solid #198c42;background:#198c42;color:#fff;padding:6px 9px;border-radius:2px}.friendly-open-row button.neutral{background:#fff;color:#555;border-color:#cad3cd}.friendly-open-row.friendly-sent-row{grid-template-columns:1fr auto}.friendly-pending-state{font-size:10px;font-weight:700;color:#8a6d1d;background:#fff8dc;border:1px solid #eadb9a;border-radius:10px;padding:4px 8px;white-space:nowrap}.friendly-pending-lock{display:grid;gap:3px;margin:0 0 10px;padding:8px;border:1px solid #eadb9a;background:#fffdf2;font-size:10px}.friendly-pending-lock span{color:#6d7771}.friendly-scheduled-row{display:grid;grid-template-columns:70px 1fr 80px;gap:8px;padding:7px 0;border-bottom:1px solid #edf1ee;font-size:11px}.friendly-empty{padding:15px 0;color:#7b847f;font-size:11px}.friendly-invite-panel #friendlyInviteStatus.success{color:#168a3e}.friendly-invite-panel #friendlyInviteStatus.error{color:#b33b32}@media(max-width:760px){.friendly-layout{grid-template-columns:1fr}.friendly-open-row,.friendly-open-row.friendly-sent-row{grid-template-columns:1fr}.friendly-invite-panel{grid-row:auto}}

.national-team-title img.national-team-federation-crest{
  width:48px;height:48px;object-fit:contain;border:0;background:transparent;box-shadow:none;
}

/* contract renewal status and agent negotiation */
.contract-expiring-status{display:inline-block!important;width:15px!important;height:15px!important;object-fit:contain!important;vertical-align:-3px!important;margin-left:3px!important;background:transparent!important;border:0!important}
.agent-counter-demand{color:#087b36;margin-top:3px}
.renewal-current-negotiation small{color:#7a5a12}


.player-inline-status.national-callup,
.player-inline-status.national-squad-callup{width:16px!important;height:16px!important;min-width:16px!important;max-width:16px!important;object-fit:contain!important;background:transparent!important;border:0!important;box-shadow:none!important}

/* real international tournament structures. */
.intl-format-summary{margin:7px 0 11px;padding:8px 10px;border:1px solid #dbe6dd;background:#f7fbf7;color:#46534a;font-size:10.5px;line-height:1.35}
.intl-league-table-wrap{width:100%;overflow-x:auto}
.intl-league-table tbody tr.playoff-zone td{background:#f4f8ee}
.intl-league-table tbody tr.eliminated-zone td{background:#fbfbfb;color:#657068}
.intl-league-table tbody tr:hover td{filter:brightness(.985)}
.intl-format-note{padding:7px 4px 2px;color:#66726a;font-size:9.7px;line-height:1.4}
/* explains the not-yet-drawn knockout bracket rows. */
.intl-bracket-note{margin:10px 0 2px;padding:7px 10px;border:1px solid #e2e9e3;background:#fafcfa;color:#66726a;font-size:9.9px;line-height:1.45}
.intl-league-matchdays{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.intl-league-matchday{border-top:1px solid #d7dfda;padding-top:5px}
.intl-league-matchday h3{margin:0 0 5px;font-size:10.5px;color:#273129}
.intl-league-fixture-grid{display:grid;gap:0}
.intl-league-fixture-grid .intl-group-fixture{min-height:27px}
@media(max-width:780px){.intl-league-matchdays{grid-template-columns:1fr}}


/* real international competition formats */
.intl-real-team-link{color:inherit;text-decoration:none}.intl-real-team-link:hover,.intl-real-team-link:focus-visible{color:#138b3c;text-decoration:underline}

/* compact international group presentation + centered national match columns. */
.intl-league-display-groups{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px 16px!important;padding-top:8px!important}
.intl-league-display-groups .intl-group-block{min-width:0!important}
.intl-league-display-groups .intl-group-block h3{font-size:12px!important;font-weight:700!important}
.intl-league-group-table th:first-child,.intl-league-group-table td:first-child{width:38px!important;text-align:center!important}
.intl-league-group-table tbody tr.playoff-zone td{background:#f4f8ee!important}
.intl-league-group-table tbody tr.eliminated-zone td{background:#fbfbfb!important;color:#657068!important}
.intl-league-group-table tbody tr:hover td{filter:brightness(.985)}
@media(max-width:780px){.intl-league-display-groups{grid-template-columns:1fr!important}}

.national-match-table .national-col-turn{width:6%}
.national-match-table .national-col-home{width:25%}
.national-match-table .national-col-score{width:10%}
.national-match-table .national-col-away{width:27%}
.national-match-table .national-col-competition{width:24%}
.national-match-table .national-col-report{width:8%}
.national-match-table th:nth-child(3),.national-match-table th:nth-child(6){text-align:center}
.national-match-table td:nth-child(6){text-align:center}
.national-match-table .national-match-home{padding-left:14px!important}
.national-match-table .national-match-away{padding-left:62px!important}
.national-match-table .national-match-away .national-country-cell{justify-content:flex-start}

/* Rules and e-mail verification */
.rules-card{width:min(760px,calc(100vw - 32px))}.rules-content{max-height:520px;overflow:auto;padding:4px 6px 12px 0;margin-bottom:18px}.rules-content h2{font-size:15px;margin:16px 0 5px;color:#183326}.rules-content p{margin:0 0 8px;line-height:1.55;color:#53645a}.rules-accept-note{margin-top:18px;padding:13px 15px;border:1px solid #cfe1d1;background:#f3faf3;color:#1d5b2b}.verify-card{width:min(610px,calc(100vw - 32px))}.verification-copy{margin:8px 0 18px;line-height:1.6;color:#53645a}.verify-card .btn+.btn{margin-top:10px}


/* owner-only team actions, national away spacing and complete World Cup stage visibility. */
.national-world-groups .intl-group-table-wrap{display:block!important;overflow:visible!important}
.national-world-groups .intl-group-table{display:table!important;width:100%!important}
.national-world-groups .intl-group-table thead{display:table-header-group!important}
.national-world-groups .intl-group-table tbody{display:table-row-group!important}
.national-world-groups .intl-group-table tr{display:table-row!important}
.national-world-groups .intl-group-table th,.national-world-groups .intl-group-table td{display:table-cell!important}
@media(max-width:780px){.national-match-table .national-match-away{padding-left:42px!important}}


/* one Result column on every club/national match list. */
.goal-match-table.single-result-table .col-turn{width:8%}
.goal-match-table.single-result-table .col-home{width:25%}
.goal-match-table.single-result-table .col-score{width:12%}
.goal-match-table.single-result-table .col-away{width:25%}
.goal-match-table.single-result-table .col-competition{width:18%}
.goal-match-table.single-result-table .col-formation{width:12%}
.goal-match-table.single-result-table .score-cell,.goal-match-table.single-result-table .score-head{text-align:center!important}


/* public competition clarity. */
.national-world-groups .intl-group-table tbody tr.qualified td{background:#e4f5dd!important;}
.national-world-groups .intl-group-table tbody tr.best-third-zone td{background:#fff8df!important;}
.national-world-qualification-note{margin-top:10px;padding:8px 10px;border:1px solid #dbe7dc;background:#fbfdfb;font-size:10px;line-height:1.45;color:#4e5a52;}
.national-round-block{margin-bottom:14px;}
.national-round-block h3{margin-bottom:7px;}


/* consistent Away-column alignment across every match view. */
.goal-match-table.single-result-table th:nth-child(4),
.goal-match-table.single-result-table td.away-cell{ text-align:center!important; }
.goal-match-table.single-result-table td.away-cell .match-team-inline.match-team-side.away{
  display:inline-flex!important;width:auto!important;max-width:100%;justify-content:center!important;text-align:center!important;gap:6px!important;
}
.goal-match-table.single-result-table td.away-cell .match-team-name{width:auto!important;text-align:center!important;}
.national-match-table th.national-match-away,
.national-match-table td.national-match-away{padding-left:6px!important;padding-right:6px!important;text-align:center!important;}
.national-match-table .national-match-away .national-country-cell{justify-content:center!important;text-align:center!important;}
.intl-match-row .intl-away,.national-match-row .national-away{justify-content:center!important;text-align:center!important;}
.intl-group-fixture>span:last-child .intl-group-team{justify-content:center!important;text-align:center!important;}
/* league fixtures get the same fixed icon rail the cup boxes already
   use. The away side was centred inside its column, so with team names of
   different lengths every row ended at a different x and the status icons
   never formed a column. Both sides are now a two-track grid with a fixed
   18px icon track, mirrored: [icon] name on the home side, name [icon] on the
   away side. matchTeamLink renders every league, so this lands in all of them
   at once. */
.league-match-row .match-team.home{text-align:left;padding:4px 8px 4px 7px;}
.league-match-row .match-team.away{text-align:right!important;padding:4px 7px 4px 8px;}
.league-match-row .match-team .match-team-inline.match-team-side{display:grid!important;
  align-items:center;
  width:100%!important;
  min-width:0;
  gap:7px;}
.league-match-row .match-team .match-team-inline.match-team-side.home{grid-template-columns:18px minmax(0,1fr);
  text-align:left;}
.league-match-row .match-team .match-team-inline.match-team-side.away{grid-template-columns:minmax(0,1fr) 18px;
  text-align:right!important;
  justify-content:initial!important;}
.league-match-row .match-team .match-team-inline .manager-status-icon{width:16px!important;
  height:16px!important;
  flex:0 0 16px!important;
  margin:0!important;
  justify-self:center;}
.league-match-row .match-team .match-team-inline .manager-status-icon img{width:100%!important;
  height:100%!important;
  object-fit:contain;
  display:block;}
.league-match-row .match-team .match-team-name{min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;}
.league-match-row .match-report{text-align:right;padding-right:10px;}
.cup-team-inline.cup-team-side.away{justify-content:center!important;text-align:center!important;}
.recent-match-row .away-team{justify-content:center!important;text-align:center!important;}

/* real qualification zones for continental group stages. */
.intl-stage-groups .intl-group-table tbody tr.qualified td{background:#e4f5dd!important;}
.intl-stage-groups .intl-group-table tbody tr.playoff-zone td{background:#f0f7e9!important;}
.intl-scorer-player-link,.intl-club-profile-link{color:inherit;text-decoration:none;}
.intl-scorer-player-link:hover,.intl-club-profile-link:hover{text-decoration:underline;color:#08752c;}

/* one centered Result between teams in continental/national knockout lists. */
.intl-match-row,.national-match-row{grid-template-columns:minmax(125px,1fr) 74px minmax(125px,1fr)!important;}
.intl-score-result,.national-score{text-align:center!important;font-weight:600!important;font-variant-numeric:tabular-nums;}

/* end-of-season retirement marker */
.player-inline-status.retirement-status{width:16px;height:16px;flex:0 0 16px;vertical-align:-3px}
.retirement-contract-warning{display:flex;align-items:center;gap:7px}

/* live economics stay correct and away-side icon rails stay perfectly straight */
.goal-match-table.single-result-table th:nth-child(2),
.goal-match-table.single-result-table td.home-cell{text-align:left!important;}
.goal-match-table.single-result-table th:nth-child(4),
.goal-match-table.single-result-table td.away-cell{text-align:right!important;}
.goal-match-table.single-result-table td.home-cell .match-team-inline.match-team-side.home,
.goal-match-table.single-result-table td.away-cell .match-team-inline.match-team-side.away,
.recent-match-row.goal-ref-match-row .goal-ref-home .match-team-inline.match-team-side.home,
.recent-match-row.goal-ref-match-row .goal-ref-away .match-team-inline.match-team-side.away{
  display:grid!important;
  width:100%!important;
  max-width:100%!important;
  align-items:center!important;
  column-gap:7px!important;
}
.goal-match-table.single-result-table td.home-cell .match-team-inline.match-team-side.home,
.recent-match-row.goal-ref-match-row .goal-ref-home .match-team-inline.match-team-side.home{
  grid-template-columns:16px minmax(0,1fr)!important;
  justify-content:stretch!important;
  text-align:left!important;
}
.goal-match-table.single-result-table td.away-cell .match-team-inline.match-team-side.away,
.recent-match-row.goal-ref-match-row .goal-ref-away .match-team-inline.match-team-side.away{
  grid-template-columns:minmax(0,1fr) 16px!important;
  justify-content:stretch!important;
  text-align:right!important;
}
.goal-match-table.single-result-table td.home-cell .match-team-name,
.recent-match-row.goal-ref-match-row .goal-ref-home .match-team-name{
  width:100%!important;
  min-width:0!important;
  text-align:left!important;
}
.goal-match-table.single-result-table td.away-cell .match-team-name,
.recent-match-row.goal-ref-match-row .goal-ref-away .match-team-name{
  width:100%!important;
  min-width:0!important;
  text-align:right!important;
}
.goal-match-table.single-result-table td.home-cell .manager-status-icon,
.goal-match-table.single-result-table td.away-cell .manager-status-icon,
.recent-match-row.goal-ref-match-row .goal-ref-home .manager-status-icon,
.recent-match-row.goal-ref-match-row .goal-ref-away .manager-status-icon{
  width:16px!important;
  min-width:16px!important;
  justify-self:center!important;
}

/* result labels for match lists */
.match-result-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:52px;
  padding:2px 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:700;
  letter-spacing:.01em;
  line-height:1.35;
  border:1px solid #cfd8d2;
  background:#eef2ef;
  color:#5f6964;
}
.match-result-badge.won{
  background:#e7f6ea;
  border-color:#9fcea8;
  color:#1f7a35;
}
.match-result-badge.lost{
  background:#fbe9e8;
  border-color:#e2aaa5;
  color:#b53b33;
}
.match-result-badge.tie{
  background:#edf0ef;
  border-color:#c7cfcb;
  color:#68716c;
}
.match-result-badge.pending{
  background:#f4f6f5;
  border-color:#d7deda;
  color:#8a9490;
}
.goal-match-table .result-cell,
.national-match-table .national-match-result{
  text-align:center;
}
.national-match-table .national-col-result{width:11%;}

/* national match lists mirror club Matches alignment. */
.national-match-table{
  table-layout:fixed;
  font-size:12px;
}
.national-match-table .national-col-turn{width:7%!important;}
.national-match-table .national-col-home{width:24%!important;}
.national-match-table .national-col-score{width:10%!important;}
.national-match-table .national-col-away{width:24%!important;}
.national-match-table .national-col-result{width:10%!important;}
.national-match-table .national-col-competition{width:17%!important;}
.national-match-table .national-col-report{width:8%!important;}
.national-match-table th,
.national-match-table td{
  height:28px;
  padding:5px 8px;
  vertical-align:middle;
  line-height:17px;
  
  overflow:visible;
  text-overflow:clip;overflow-wrap:anywhere;white-space:normal!important;}
.national-match-table th.national-match-home,
.national-match-table td.national-match-home{
  text-align:left!important;
  padding-left:10px!important;
  padding-right:10px!important;
}
.national-match-table th.national-match-away,
.national-match-table td.national-match-away{
  text-align:right!important;
  padding-left:10px!important;
  padding-right:10px!important;
}
.national-country-cell.national-match-side{
  display:grid!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  align-items:center!important;
  column-gap:7px!important;
  color:#236fae;
}
.national-country-cell.national-match-side.home{
  grid-template-columns:16px minmax(0,1fr)!important;
  text-align:left!important;
}
.national-country-cell.national-match-side.away{
  grid-template-columns:minmax(0,1fr) 16px!important;
  text-align:right!important;
}
.national-country-cell.national-match-side .national-match-flag{
  width:16px!important;
  min-width:16px!important;
  height:11px!important;
  object-fit:cover;
  border:1px solid #c9d2cc;
  justify-self:center!important;
}
.national-country-cell.national-match-side .national-match-country-name{
  min-width:0!important;
  width:100%!important;
  overflow:visible;
  text-overflow:clip;
  
  font-weight:400!important;overflow-wrap:anywhere;white-space:normal!important;}
.national-country-cell.national-match-side.home .national-match-country-name{text-align:left!important;}
.national-country-cell.national-match-side.away .national-match-country-name{text-align:right!important;}
.national-match-table .national-match-score,
.national-match-table .national-match-result,
.national-match-table th:nth-child(3),
.national-match-table th:nth-child(5),
.national-match-table td:last-child,
.national-match-table th:last-child{text-align:center!important;}

/* Team Info national recent matches use the same fixed home/away flag rails. */
.national-recent-row .national-country-cell.national-match-side{width:100%!important;}
.national-recent-row .national-country-cell.national-match-side.home{
  grid-template-columns:16px minmax(0,1fr)!important;
}
.national-recent-row .national-country-cell.national-match-side.away{
  grid-template-columns:minmax(0,1fr) 16px!important;
}


/* youth marker in match reports/statistics */
.youth-inline-tag{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:16px;
  height:16px;
  padding:0 4px;
  margin-left:6px;
  border-radius:999px;
  background:#1f9d4c;
  color:#fff;
  font-size:10px;
  font-weight:700;
  line-height:1;
  vertical-align:middle;
}
.intl-group-table tr.qualifier-reserved td{
  opacity:.9;
}
.intl-group-team.placeholder,
.intl-group-table tr.qualifier-reserved .intl-group-team{
  color:#6b7280;
  font-style:italic;
}


/* release-safe team links and centered Result column */
.goal-match-table th.result-head{
  text-align:center!important;
  padding-left:8px!important;
  padding-right:8px!important;
}
.goal-match-table .result-cell{
  text-align:center!important;
  padding-left:8px!important;
  padding-right:8px!important;
}
.match-team-inline.unresolved-team{
  color:#68736d;
  cursor:default;
  text-decoration:none;
}


/* exact youth/newcomer N icon supplied for academy players */
.youth-newcomer-status{
  width:10px!important;
  height:16px!important;
  min-width:10px!important;
  object-fit:contain;
  margin-left:5px!important;
  vertical-align:middle;
  image-rendering:auto;
}
.player-name-info-value .youth-newcomer-status,
.squad-player-name-status .youth-newcomer-status,
.match-player-main .youth-newcomer-status,
.national-squad-name-status .youth-newcomer-status{
  display:inline-block;
  flex:0 0 auto;
}

/* every international/national Away side uses one straight right-hand status rail. */
.intl-match-row .intl-away,
.national-match-row .national-away,
.intl-group-fixture > span:last-child{
  justify-content:stretch!important;
  text-align:right!important;
  min-width:0!important;
}
.intl-team-name.home,
.national-team-name.home{
  display:grid!important;
  grid-template-columns:16px 16px minmax(0,1fr)!important;
  align-items:center!important;
  column-gap:6px!important;
  width:100%!important;
  min-width:0!important;
  justify-content:stretch!important;
  text-align:left!important;
}
.intl-team-name.away,
.national-team-name.away{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto 16px!important;
  align-items:center!important;
  column-gap:6px!important;
  width:100%!important;
  min-width:0!important;
  justify-content:stretch!important;
  text-align:right!important;
}
.intl-team-name.away > a,
.intl-team-name.away > span:not(.intl-team-status-slot):not(.manager-status-icon),
.national-team-name.away > span:first-child{
  min-width:0!important;
  text-align:right!important;
}
.intl-team-status-slot,
.national-team-status-slot{
  display:inline-flex!important;
  width:16px!important;
  min-width:16px!important;
  justify-content:center!important;
  align-items:center!important;
}
.intl-team-status-slot .manager-status-icon,
.national-team-status-slot .manager-status-icon{
  margin:0!important;
  width:16px!important;
  min-width:16px!important;
}
.intl-team-flag,
.national-team-flag{
  flex:0 0 auto!important;
  max-width:16px!important;
  height:auto!important;
}
.intl-group-fixture > span:last-child .intl-team-name.away,
.intl-group-fixture > span:last-child .national-team-name.away{
  justify-content:stretch!important;
  text-align:right!important;
}
.intl-team-flag-placeholder{display:inline-block;width:16px;height:1px;}
.intl-team-status-slot.empty{visibility:hidden;}

/* mobile navigation + instant formation autosave */
.mobile-nav-toggle{display:none;border:1px solid rgba(255,255,255,.25);background:transparent;color:#fff;border-radius:4px;font-size:22px;line-height:1;padding:7px 10px;cursor:pointer}
.formation-list-item.formation-unavailable{cursor:not-allowed!important;background:#f4f5f4!important}
/* dim the player, never the card/injury status icons: the reason must stay clearly visible */
.formation-list-item.formation-unavailable>:not(.formation-field-status-icon){opacity:.58}
.formation-list-item.formation-unavailable b{text-decoration:none}
.formation-list-item .formation-field-status-icon{position:static!important;width:14px!important;height:14px!important;margin-left:4px!important;vertical-align:middle!important}
.formation-list-item.mobile-selected{outline:2px solid #15943e!important;background:#eef9f1!important}
.formation-field-board.mobile-pick-active{box-shadow:0 0 0 3px rgba(21,148,62,.35)!important}

@media(max-width:820px){
  .game-page .fixed-global-header .game-header-inner{grid-template-columns:minmax(112px,1fr) auto auto!important;gap:8px!important;padding:0 10px!important;position:relative!important}
  .game-page .fixed-global-header .game-brand{width:128px!important;min-width:112px!important;height:58px!important}
  .game-page .fixed-global-header .game-brand img{width:122px!important;max-width:122px!important}
  .mobile-nav-toggle{display:block;grid-column:2;align-self:center}
  .game-page .fixed-global-header .game-actions{grid-column:3;gap:4px!important;min-width:0!important}
  .game-page .fixed-global-header .game-actions .profile-name{display:none!important}
  .game-page .fixed-global-header .game-actions .counter{padding:0 4px!important}
  .game-page .fixed-global-header .game-nav{display:none!important;position:absolute!important;left:0!important;right:0!important;top:58px!important;height:auto!important;max-height:calc(100vh - 110px)!important;overflow:auto!important;background:#054d27!important;border-top:1px solid rgba(255,255,255,.18)!important;box-shadow:0 8px 24px rgba(0,0,0,.28)!important;z-index:1200!important;flex-direction:column!important;align-items:stretch!important;padding:6px!important}
  .game-page .fixed-global-header.mobile-nav-open .game-nav{display:flex!important}
  .game-page .fixed-global-header .game-nav>.nav-menu{height:auto!important;width:100%!important;display:block!important}
  .game-page .fixed-global-header .nav-trigger,.game-page .fixed-global-header .nav-search{height:44px!important;min-height:44px!important;width:100%!important;padding:0 12px!important;justify-content:space-between!important}
  .game-page .fixed-global-header .nav-dropdown{position:static!important;width:100%!important;min-width:0!important;box-shadow:none!important;margin:0!important;border-radius:0 0 4px 4px!important}
  .game-page .fixed-global-statusbar{top:58px!important}
  .game-page .fixed-global-header{height:58px!important}
  .game-page .game-main{padding-top:108px!important}
  .formation-main-grid{display:block!important}
  .formation-settings{width:100%!important;margin-bottom:18px!important}
  .formation-lineup-panel{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;overflow:visible!important}
  .formation-side-columns,.formation-side-columns.right{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;width:100%!important;order:2!important}
  .formation-field-board{width:min(100%,540px)!important;max-width:100%!important;margin:0 auto!important;order:1!important;touch-action:manipulation!important}
  .formation-bank-drop{display:none!important}
  .formation-list-item{min-height:34px!important;padding:6px!important;touch-action:manipulation!important}
  .formation-drop-hint{display:none!important}
  .formation-tabs{overflow-x:auto!important;white-space:nowrap!important}
}
@media(max-width:520px){
  .formation-side-columns,.formation-side-columns.right{grid-template-columns:1fr!important}
}

/* owner-only formation completeness status */
.team-formation-status-row span{visibility:hidden}
.team-formation-status{font-weight:700;display:inline-block;line-height:1.25}
.formation-status-complete{color:#138a36}
.formation-status-incomplete{color:#c62828}
.formation-status-banner{margin:0 18px 14px;padding:4px 0;font-size:14px;font-weight:700;line-height:1.25}

/* formation status colour must win inside team/manager info */
.team-info-list .team-formation-status.formation-status-complete,
.manager-info-lines .manager-formation-status.formation-status-complete{color:#138a36!important;font-weight:700}
.team-info-list .team-formation-status.formation-status-incomplete,
.manager-info-lines .manager-formation-status.formation-status-incomplete{color:#c62828!important;font-weight:700}
.manager-formation-status-line{display:flex;gap:6px;align-items:center;flex-wrap:wrap}

/* keep the academy N tight to the player name. */
.youth-newcomer-status{margin-left:1px!important}
.squad-player-name-status .youth-newcomer-status,
.formation-list-item .youth-newcomer-status{margin-left:1px!important}

/* reliable mobile sign-in feedback */
.login-submit-btn{touch-action:manipulation;-webkit-tap-highlight-color:rgba(97,170,39,.18)}
.login-submit-btn:disabled{cursor:wait;opacity:.82}
.login-live-status{min-height:18px;margin:7px 0 -5px;text-align:center;color:#4b6f39;font-size:12px;font-weight:700}
.server-sync-notice{background:#f3f9ee!important;border-color:#c7dfb7!important;color:#3f7529!important}

/* public login breaking-news ticker */

/* touch formation move/swap selection */
.field-player.mobile-selected{outline:2px solid #15943e;outline-offset:3px}

/* live manager header polish. Desktop keeps the full manager
   name readable without changing the surrounding navigation layout. */
@media (min-width:1381px){
  .game-page .fixed-global-header .profile-trigger{
    min-width:126px!important;
    max-width:258px!important;
    gap:7px!important;
  }
  .game-page .fixed-global-header .profile-name{
    display:inline-block!important;
    max-width:190px!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
    line-height:1.08!important;
    letter-spacing:0!important;
  }
  .game-page .fixed-global-header .profile-name.profile-name-size-normal{font-size:11.5px!important}
  .game-page .fixed-global-header .profile-name.profile-name-size-md{font-size:10.8px!important}
  .game-page .fixed-global-header .profile-name.profile-name-size-sm{font-size:10px!important}
  .game-page .fixed-global-header .profile-name.profile-name-size-xs{font-size:9.2px!important}
  .game-page .fixed-global-header .profile-dropdown{min-width:210px!important}
}

/* detailed match events in the existing green Soccersim style. */
.match-event-icon{display:inline-flex;align-items:center;gap:2px;flex:0 0 auto;color:#16863a}
.match-event-icon>small,.match-sub-arrow small{font-size:7.8px;font-weight:800;line-height:1;color:#16863a}
.match-card-markers .match-event-icon.booking{gap:2px}
.match-injury-markers{display:inline-flex;align-items:center;gap:2px;flex:0 0 auto}
.match-injury-icon{width:12px;height:12px;object-fit:contain}
.match-sub-arrow{width:auto;min-width:12px;height:13px;gap:1px;color:#16863a!important;font-size:13px}
.match-sub-arrow.in,.match-sub-arrow.out{color:#16863a!important}
.match-lineup-row.substitute,.national-report-player-row.substitute{background:#f5faf6}
.match-lineup-row.substitute .match-player-link,.national-report-player-row.substitute .nr-name>a{color:#167b35}
.match-event-summary{margin:16px 0 4px;border-top:1px solid #dce4de;padding-top:11px}
.match-event-summary h3{margin:0 0 7px;text-align:center;color:#275536;font-size:10.5px;font-weight:800;letter-spacing:.04em}
.match-event-list{display:grid;grid-template-columns:1fr 1fr;gap:2px 16px;max-width:640px;margin:0 auto}
.match-event-row{display:grid;grid-template-columns:34px 15px minmax(0,1fr);align-items:center;gap:5px;min-height:22px;border-bottom:1px solid #edf1ee;font-size:9.8px;color:#303a34}
.match-event-row>b{font-size:9px;color:#16863a;text-align:right;font-variant-numeric:tabular-nums}
.match-event-row>img{width:11px;height:11px;object-fit:contain}
.match-event-row .match-card{width:7px;height:11px}
.report-event-sub{color:#16863a;font-size:13px;font-weight:900;line-height:1}
.national-report-player-row{grid-template-columns:32px minmax(0,1fr) auto 40px!important}
.national-player-events{display:inline-flex;align-items:center;justify-content:flex-end;gap:3px;min-width:0}
.national-player-events .match-event-icon{gap:1px}
.national-player-events .match-goal-ball{width:10px;height:10px}
.national-player-events .match-injury-icon{width:11px;height:11px}
.national-player-events .match-sub-arrow{font-size:12px}
@media(max-width:780px){
  .match-event-list{grid-template-columns:1fr}
  .match-event-summary{margin-top:12px}
  .match-event-row{font-size:9.5px}
}


/* clean match-report lineup/event separation.
   The player name column contains names/status only. Goals, cards, injuries and
   forced injury substitutions live in a dedicated compact event column. */
.r71-match-report .match-lineup-row{
  grid-template-columns:20px 22px minmax(0,1fr) 82px 38px!important;
  column-gap:3px;
}
.r71-match-report .match-player-main{
  overflow:hidden;
  gap:3px!important;
}
.r71-match-report .match-player-main>.player-inline-status{
  flex:0 0 auto;
}
.match-player-events{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:4px;
  min-width:0;
  min-height:16px;
  white-space:nowrap;
  overflow:visible;
}
.match-player-events .match-goal-markers,
.match-player-events .match-card-markers,
.match-player-events .match-injury-markers{
  margin:0;
}
.match-lineup-row.substitute{
  background:#f7fbf8!important;
  box-shadow:inset 3px 0 0 #42a65f;
}
.match-lineup-row.substitute .match-player-link{
  color:#167b35!important;
}
/* National reports use the exact same dedicated event lane. Fixed width keeps
   a card/injury icon from visually entering the player-name area. */
.national-report-player-row{
  grid-template-columns:32px minmax(0,1fr) 82px 40px!important;
  column-gap:6px!important;
}
.national-player-events{
  width:82px;
  max-width:82px;
  justify-content:flex-end!important;
  gap:4px!important;
  overflow:visible;
  white-space:nowrap;
}
.national-report-player-row.substitute{
  background:#f7fbf8!important;
  box-shadow:inset 3px 0 0 #42a65f;
}
@media(max-width:900px){
  .r71-match-report .match-lineup-row{grid-template-columns:20px 22px minmax(0,1fr) 74px 36px!important}
  .national-report-player-row{grid-template-columns:30px minmax(0,1fr) 74px 38px!important}
  .national-player-events{width:74px;max-width:74px}
}


/* report layout polish.
   Keep all incidents compact and keep the complete club/national statistic set
   visually centered between the two actual lineups. */
.r71-match-report .match-report-shell{width:min(1040px,calc(100% - 32px));}
.r71-match-report .match-report-grid,
.r71-match-report .national-report-grid{
  grid-template-columns:minmax(285px,1fr) 300px minmax(285px,1fr)!important;
  gap:18px!important;
  align-items:start;
}
.r71-match-report .national-report-grid{padding:15px 12px 20px!important;}
.r71-match-report .match-summary-stats{
  width:100%;
  max-width:300px;
  margin:0 auto;
  padding-top:0;
  display:grid;
  gap:0;
}
.r71-match-report .match-summary-stats>div{
  display:grid;
  grid-template-columns:minmax(52px,1fr) 150px minmax(52px,1fr)!important;
  align-items:center;
  min-height:24px;
  padding:0 2px;
  font-size:10.3px;
  line-height:1.15;
  font-variant-numeric:tabular-nums;
}
.r71-match-report .match-summary-stats>div.formation-row{margin-bottom:2px;}
.r71-match-report .match-summary-stats .summary-home-value{text-align:right!important;padding-right:9px;}
.r71-match-report .match-summary-stats .summary-away-value{text-align:left!important;padding-left:9px;}
.r71-match-report .match-summary-stats b{
  text-align:center!important;
  font-weight:500!important;
  color:#303a35;
  white-space:nowrap;
}
/* Never reuse the global `.card` panel class for a booking icon. The old
   collision was the reason a minute such as 86' could become a huge box. */
.r71-match-report .match-event-icon,
.r71-match-report .match-event-icon.booking{
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.r71-match-report .match-event-icon>small,
.r71-match-report .match-sub-arrow small{
  font-size:7.4px!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:0!important;
  color:#16863a!important;
  font-variant-numeric:tabular-nums;
}
.r71-match-report .match-card-markers,
.r71-match-report .national-player-events{
  gap:3px!important;
}
.r71-match-report .match-card,
.r71-match-report .national-report-card{
  width:7px!important;
  height:10px!important;
  flex:0 0 7px!important;
  border-radius:1px!important;
}
.r71-match-report .match-player-events,
.r71-match-report .national-player-events{
  min-height:13px!important;
  align-items:center!important;
}
.r71-match-report .national-report-player-row{
  min-height:29px;
  padding-top:5px!important;
  padding-bottom:5px!important;
}
@media(max-width:900px){
  .r71-match-report .match-report-grid,
  .r71-match-report .national-report-grid{grid-template-columns:1fr!important;}
  .r71-match-report .match-summary-stats{max-width:330px;margin:8px auto 12px;}
}


/* compact competition identities.
   Home rows are Avatar -> Flag -> Team, away rows stay mirrored as
   Team -> Flag -> Avatar.  No identity element is allowed to float alone at
   the opposite edge of the fixture row. */
.competition-club-identity{display:inline-flex;align-items:center;gap:5px;min-width:0;max-width:100%;white-space:nowrap}
.competition-club-identity>a,.competition-club-identity>span:last-child{min-width:0;overflow:visible;text-overflow:clip;color:#2478bb;text-decoration:none;font-weight:400;white-space:normal!important;overflow-wrap:anywhere;}
.competition-club-status{display:inline-flex;align-items:center;justify-content:center;width:14px;min-width:14px;height:14px}
.competition-club-status .manager-status-icon{margin:0!important;width:14px!important;height:14px!important;min-width:14px!important;flex-basis:14px!important}
.competition-club-status .manager-status-icon img,.competition-club-status .manager-status-icon svg{display:block;width:14px!important;height:14px!important;min-width:14px!important}
.competition-club-flag{width:15px!important;height:10px!important;min-width:15px!important;object-fit:cover;border:1px solid #ccd4cf;flex:0 0 15px}
.scorer-club .competition-club-identity,.champion-club .competition-club-identity,.intl-scorer-club .competition-club-identity,.intl-club .competition-club-identity{width:100%}
.intl-team-name.home>a,.intl-team-name.home>span:not(.intl-team-status-slot):not(.intl-team-flag-placeholder),.national-team-name.home>span:last-child{min-width:0;overflow:visible;text-overflow:clip;text-align:left!important;overflow-wrap:anywhere;white-space:normal!important;}

/* visible ServerOne entry state.
   The router now always renders this while the authoritative entry slice is
   still arriving, so a manager can never end up looking at a frozen server
   lobby whose URL has already advanced into the game. */
.server-entering-main{ display:flex; align-items:center; justify-content:center; min-height:52vh; }
.server-entering-card{ max-width:560px; width:100%; text-align:center; }
.server-entering-card .workspace-card-head{ justify-content:center; }
.server-entering-card .workspace-card-head h2 span{ color:#1e9e4a; }
.server-entering-card p{ margin:10px 0 18px; color:#4a5560; }
.server-entering-bar{ position:relative; height:6px; border-radius:6px; background:#e6ebe8; overflow:hidden; }
.server-entering-bar>i{ position:absolute; top:0; left:-40%; width:40%; height:100%; border-radius:6px; background:#1e9e4a; animation:serverEnteringSlide 1.15s ease-in-out infinite; }
@keyframes serverEnteringSlide{ 0%{ left:-40%; } 100%{ left:100%; } }
.server-entering-actions{ display:flex; gap:10px; justify-content:center; flex-wrap:wrap; margin-top:16px; }
@media (prefers-reduced-motion: reduce){ .server-entering-bar>i{ animation:none; left:0; width:100%; } }


/* full names and fixture labels, including teams without a flag.
   Names have their own grid cell; absent icons cannot move text into an icon rail. */
.intl-team-name>.fixture-team-label,.national-team-name>.fixture-team-label{
  grid-row:1!important;min-width:0!important;white-space:normal!important;
  overflow:visible!important;overflow-wrap:anywhere;line-height:1.4;
}
.intl-team-name.home>.fixture-team-label,.national-team-name.home>.fixture-team-label{grid-column:3!important;}
.intl-team-name.away>.fixture-team-label,.national-team-name.away>.fixture-team-label{grid-column:1!important;}
.intl-team-name>.intl-team-flag,.intl-team-name>.intl-team-flag-placeholder,
.national-team-name>.national-team-flag{grid-column:2!important;grid-row:1!important;}
.intl-team-name.home>.intl-team-status-slot,.national-team-name.home>.national-team-status-slot{grid-column:1!important;grid-row:1!important;}
.intl-team-name.away>.intl-team-status-slot,.national-team-name.away>.national-team-status-slot{grid-column:3!important;grid-row:1!important;}
.intl-match-row,.national-match-row{grid-template-columns:minmax(0,1fr) 74px minmax(0,1fr)!important;padding:4px 0;}
.intl-match-row>.intl-home,.national-match-row>.national-home{grid-column:1!important;grid-row:1!important;}
.intl-match-row>.intl-score-result,.national-match-row>.national-score{grid-column:2!important;grid-row:1!important;white-space:normal;overflow-wrap:anywhere;}
.intl-match-row>.intl-away,.national-match-row>.national-away{grid-column:3!important;grid-row:1!important;}
.competition-club-identity{white-space:normal;}
.competition-club-identity>a,.competition-club-identity>span:last-child{flex:1 1 auto;}
.competition-club-status{flex:0 0 14px;}
.league-name-block{min-width:0;flex-wrap:wrap;}
.league-name-block .manager-count{flex:0 0 auto;}
.recent-match-row.goal-ref-match-row .match-team-inline.match-team-side .match-team-name{white-space:normal;overflow-wrap:anywhere;}
.game-page .fixed-global-header .profile-name{max-width:180px!important;white-space:normal!important;line-height:1.3;}
@media(max-width:520px){
  .intl-match-row,.national-match-row{grid-template-columns:minmax(0,1fr) 48px minmax(0,1fr)!important;gap:4px;}
  .intl-team-name.home,.national-team-name.home{grid-template-columns:16px 16px minmax(0,1fr)!important;column-gap:3px!important;}
  .intl-team-name.away,.national-team-name.away{grid-template-columns:minmax(0,1fr) auto 16px!important;column-gap:3px!important;}
}

/* verified match goals + direct continental report links. */
.match-goalscorer-summary{margin:14px 0 4px;border-top:1px solid #dce4de;padding-top:10px}
.match-goalscorer-summary h3{margin:0 0 7px;text-align:center;color:#275536;font-size:10.5px;font-weight:800;letter-spacing:.04em}
.match-goalscorer-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;font-size:11px}
.match-goalscorer-grid>div{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center}
.match-goalscorer-grid>.away{justify-content:flex-end;text-align:right}
.match-goalscorer-player{white-space:nowrap}
.match-goalscorer-error,.match-goalscorer-none{color:#7d8580}
.intl-report-links{display:flex;gap:4px;justify-content:center;flex-wrap:wrap;margin-top:2px;font-size:9px;line-height:1.2}
.intl-report-link{font-weight:600;text-decoration:none;white-space:nowrap}
@media(max-width:760px){.match-goalscorer-grid{gap:10px;font-size:10px}.intl-report-links{font-size:8px}}

/* exact six-level Player Stars supplied for Soccersim.
   The 48x16 source images intentionally contain their own left transparency,
   so 1/2/3-star artwork lines up on the right edge exactly like the reference
   player list while the name column always starts at the same position. */
.player-name-stars{width:48px;min-width:48px;max-width:48px;height:16px;margin:0 4px 0 0!important;padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;overflow:hidden;line-height:16px!important;letter-spacing:0!important;text-shadow:none!important}
.player-star-image{display:block;width:48px;height:16px;min-width:48px;max-width:48px;object-fit:contain;object-position:center;border:0;background:transparent;box-shadow:none}
.player-star-status{display:inline-flex;align-items:center;gap:5px;vertical-align:middle}
.player-star-status .player-star-image{flex:0 0 48px}
.squad-star-slot{width:48px!important;min-width:48px!important;max-width:48px!important;height:16px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;box-sizing:border-box!important;overflow:hidden!important}
/* Keep the existing 40px identity column and its 6px name gap. */
.squad-star-slot{width:40px!important;min-width:40px!important;max-width:40px!important}
.squad-star-slot>.player-name-stars{width:40px!important;min-width:40px!important;max-width:40px!important;height:16px!important;margin:0!important;padding:0!important}
.squad-star-slot .player-star-image{width:40px;min-width:40px;max-width:40px;height:16px;object-position:right center}
.player-name-stars{margin-right:6px!important;vertical-align:middle}


/* Soccersim Classic 4.07 - player profile navigation is explicit in Formation. */
.formation-player-profile-link{color:inherit;text-decoration:none;cursor:pointer;min-width:0;position:relative;z-index:3}
.formation-player-profile-link:hover,.formation-player-profile-link:focus-visible{color:#167ac6;text-decoration:underline;outline:none}
.field-player-profile-link{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* immutable match-day formation/report presentation. */
.match-lineup-formation{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:8px;row-gap:2px;margin:0 0 7px;padding:6px 7px;border-bottom:1px solid #dfe7e1;font-size:10px}
.match-lineup-formation>span{font-weight:700;color:#607068;letter-spacing:.04em}
.match-lineup-formation>b{text-align:right;font-size:12px;color:#233129}
.match-lineup-formation>small{grid-column:1/-1;color:#7a867f;font-size:9px;letter-spacing:.03em}
.match-stat-team-title{display:flex;align-items:center;justify-content:space-between;gap:12px}
.match-stat-formation{font-size:10px;color:#657169;white-space:nowrap}
.match-stat-formation b{color:#26342b}
.server-manager-signoff .server-manager-email-link{color:#16833a;text-decoration:none}
.server-manager-signoff .server-manager-email-link:hover{text-decoration:underline}
@media(max-width:720px){.match-stat-team-title{align-items:flex-start;flex-direction:column;gap:4px}.match-stat-formation{white-space:normal}}

/* Soccersim Classic 4.23 - progressive national-cup rail.
   One drawn round is rendered at a time. Keep HOME | x | AWAY | SCORE on one
   stable row and never allow club names to break letter-by-letter on phones. */
.classic-cup-match-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr) 96px!important;
  align-items:center!important;
  column-gap:6px!important;
  min-height:34px!important;
  padding:4px 6px!important;
}
.classic-cup-match-row .classic-cup-home,
.classic-cup-match-row .classic-cup-away{min-width:0!important;overflow:hidden!important;}
.classic-cup-match-row .cup-team-inline,
.classic-cup-match-row .cup-team-inline.universal-team-nav{min-width:0!important;max-width:100%!important;}
.classic-cup-match-row .cup-team-label{
  min-width:0!important;
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.classic-cup-match-row .classic-cup-score{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  font-variant-numeric:tabular-nums!important;
}
.classic-cup-round-block h3{font-size:15px!important;}

@media (max-width:760px){
  .classic-cup-layout{grid-template-columns:minmax(0,1fr)!important;gap:12px!important;padding:10px 8px!important;}
  .classic-cup-box{width:100%!important;min-width:0!important;padding:0 2px 8px!important;}
  .classic-cup-round-block{width:100%!important;min-width:0!important;padding:8px 0 10px!important;}
  .classic-cup-round-block h3{margin:0!important;padding:7px 4px!important;font-size:14px!important;line-height:1.2!important;}
  .classic-cup-match-row{
    grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr) 50px!important;
    column-gap:3px!important;
    min-height:36px!important;
    padding:3px 3px!important;
    font-size:12px!important;
    line-height:1.15!important;
  }
  .classic-cup-match-row .cup-team-inline,
  .classic-cup-match-row .cup-team-inline.universal-team-nav{column-gap:3px!important;font-size:12px!important;}
  .classic-cup-match-row .cup-team-side-home,
  .classic-cup-match-row .cup-team-inline.home{grid-template-columns:14px minmax(0,1fr)!important;}
  .classic-cup-match-row .cup-team-side-away,
  .classic-cup-match-row .cup-team-inline.away{grid-template-columns:minmax(0,1fr) 14px!important;}
  .classic-cup-match-row .cup-status-slot{width:14px!important;min-width:14px!important;height:16px!important;}
  .classic-cup-match-row .cup-status-slot .manager-status-icon{width:13px!important;min-width:13px!important;height:13px!important;}
  .classic-cup-match-row .cup-status-slot .manager-status-icon img{width:13px!important;height:13px!important;}
  .classic-cup-match-row .classic-cup-x{text-align:center!important;font-size:12px!important;}
  .classic-cup-match-row .classic-cup-score{text-align:right!important;font-size:12px!important;padding:0 1px!important;}
  .classic-cup-side{width:100%!important;min-width:0!important;}
  .classic-cup-side .scorer-row{grid-template-columns:22px minmax(0,1fr) 28px minmax(0,1fr)!important;font-size:12px!important;}
  .classic-cup-side .champion-row{grid-template-columns:82px minmax(0,1fr) minmax(0,1fr)!important;font-size:11.5px!important;}
}

/* staggered World Cup knockout turns. */
.national-score{display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.05}
.national-match-turn{display:block;font-size:8.5px;font-weight:600;color:#758079;margin-bottom:2px;white-space:nowrap}
@media (max-width:700px){.national-match-turn{font-size:8px}.national-score{line-height:1}}

/* classic World Cup turn rail requested for national-team cups. */
.national-world-schedule .national-cup-grid{grid-template-columns:minmax(0,1.45fr) minmax(310px,.72fr);gap:18px;padding:12px 14px 14px}
.national-world-schedule-list{border:1px solid #d8dedb;background:#fff;min-width:0}
.national-world-turn-block{min-width:0;border-bottom:14px solid #fff}
.national-world-turn-block:last-child{border-bottom:0}
.national-world-turn-block h3{margin:0;padding:8px 6px;border-bottom:1px solid #d8dedb;background:#fff;text-align:center;font-size:13px;font-weight:800;color:#2c332f}
.national-world-schedule-row{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr) 62px;align-items:center;column-gap:5px;min-height:32px;padding:3px 7px;border-bottom:1px solid #dfe4e1;font-size:11.5px;min-width:0}
.national-world-schedule-row:last-child{border-bottom:0}
.national-world-home,.national-world-away{min-width:0;display:flex;align-items:center}
.national-world-home{justify-content:flex-start;text-align:left}
.national-world-away{justify-content:flex-end;text-align:right}
.national-world-x{text-align:center;color:#303733;font-weight:600;white-space:nowrap}
.national-world-result{text-align:right;color:#2478bb;font-weight:500;white-space:nowrap;font-variant-numeric:tabular-nums}
.national-world-schedule-row .national-team-name{min-width:0!important;width:100%!important}
.national-world-schedule-row .fixture-team-label{display:block!important;min-width:0!important;max-width:100%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;overflow-wrap:normal!important;word-break:normal!important}
.national-world-schedule-row .national-team-name.home{grid-template-columns:16px 16px minmax(0,1fr)!important}
.national-world-schedule-row .national-team-name.away{grid-template-columns:minmax(0,1fr) 16px 16px!important}
.national-world-schedule .national-cup-right .info-card{border:1px solid #dce4df;border-radius:3px;padding:0 10px 10px;background:#fff}
.national-world-schedule .national-cup-right .info-card+.info-card{margin-top:12px;padding-top:0;border-top:1px solid #dce4df}

@media (max-width:980px){
  .national-world-schedule .national-cup-grid{grid-template-columns:1fr!important;gap:12px!important}
}
@media (max-width:700px){
  .national-world-schedule .national-cup-grid{padding:9px 7px 12px!important}
  .national-world-schedule-list{width:100%;min-width:0}
  .national-world-turn-block{border-bottom-width:10px}
  .national-world-turn-block h3{padding:7px 4px;font-size:14px;line-height:1.15}
  .national-world-schedule-row{grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr) 48px;column-gap:3px;min-height:38px;padding:4px 4px;font-size:12px;line-height:1.1}
  .national-world-schedule-row .national-team-name.home{grid-template-columns:14px 14px minmax(0,1fr)!important;column-gap:3px!important}
  .national-world-schedule-row .national-team-name.away{grid-template-columns:minmax(0,1fr) 14px 14px!important;column-gap:3px!important}
  .national-world-schedule-row .national-team-status-slot,.national-world-schedule-row .manager-status-icon{width:13px!important;min-width:13px!important;height:13px!important}
  .national-world-schedule-row .manager-status-icon img{width:13px!important;height:13px!important}
  .national-world-schedule-row .national-team-flag{width:14px!important;height:10px!important}
  .national-world-result{padding-right:1px;font-size:12px}
  .national-world-schedule .national-cup-right{display:block!important}
}

/* stable sub-navigation geometry across every competition/league view.
   Active tabs may change color only; switching pages must never move the tab rail. */
.intl-phase-row,
.intl-stage-qualifying .intl-phase-row,
.intl-stage-groups .intl-phase-row,
.intl-stage-finals .intl-phase-row{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:nowrap!important;
  gap:7px!important;
  min-height:33px!important;
  height:33px!important;
  box-sizing:border-box!important;
  padding:0!important;
  margin:0!important;
  font-size:13px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:none;
}
.intl-phase-row::-webkit-scrollbar{display:none}
.intl-phase-row a,
.intl-phase-row a:hover,
.intl-phase-row a:focus,
.intl-phase-row a:active,
.intl-phase-row a.active{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  height:32px!important;
  box-sizing:border-box!important;
  padding:0!important;
  margin:0!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.intl-phase-row span{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  height:32px!important;
  margin:0!important;
  line-height:1!important;
}

/* Table / Form / Matches / Team of the Round / Team of the Season always use
   one horizontal rail. On narrow screens the rail scrolls horizontally instead
   of wrapping and changing the page height. */
.league-subtabs{
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:6px!important;
  min-height:31px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:none;
}
.league-subtabs::-webkit-scrollbar{display:none}
.league-subtab,
.league-subtab:hover,
.league-subtab:focus,
.league-subtab:active,
.league-subtab.active{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  min-height:31px!important;
  box-sizing:border-box!important;
  margin:0!important;
  line-height:1!important;
  white-space:nowrap!important;
}
/* Table/Form already receive 18px top padding from .league-two-col and Matches
   receives 18px from its own margin. Best-team views used to start at 0px,
   making their whole rail jump upward. Keep the same 18px start position. */
.best-team-box>.league-subtabs{margin-top:18px!important}

/* National-team MATCHES stays synchronized with the progressive World Cup.
   A preliminary bye is a status, never a fake fixture row. */
.national-world-cup-team-status{
  display:flex;
  align-items:center;
  gap:10px;
  margin:4px 14px 10px;
  padding:8px 10px;
  border:1px solid #dfe7e1;
  background:#fbfcfb;
  font-size:10.5px;
  line-height:1.35;
}
.national-world-cup-team-status b{white-space:nowrap;color:#188b45;}
.national-world-cup-team-status span{min-width:0;}
@media(max-width:780px){
  .national-world-cup-team-status{align-items:flex-start;flex-direction:column;gap:3px;margin-left:10px;margin-right:10px;font-size:12px;}
}

/* real local club crest on first paint. Never show synthetic green/no-icon art. */
.club-crest.crest-missing,.mini-club-crest.crest-missing{background:transparent!important;border:0!important;box-shadow:none!important;color:transparent!important;}
.club-crest.crest-missing:after{display:none!important;content:none!important;}

/* public Board risk marker / application entry. */
.manager-board-at-risk{display:inline-flex;align-items:center;padding:2px 7px;border:1px solid #e0a8a8;border-radius:3px;background:#fdeaea;color:#9c2424;font-size:9.5px;font-weight:800;letter-spacing:.02em}
.board-at-risk-application{margin:10px 0 4px;padding:10px;border:1px solid #e0bcbc;border-radius:3px;background:#fff7f7;display:flex;flex-direction:column;gap:6px;font-size:10px;color:#5e3737}
.board-at-risk-application>b{font-size:10.5px;color:#8f2525}.board-at-risk-application>span{line-height:1.4}.board-at-risk-application .team-primary-btn{align-self:flex-start;margin-top:2px}

/* ServerOne manager announcement archive. The surrounding Soccersim
   lobby card stays unchanged; these rules only structure MESSAGE TO MANAGERS. */
.server-announcement-current{padding:17px 18px 18px;border:1px solid #d8e5da;border-radius:6px;background:#fbfdfb}
.server-announcement-current h2{margin:0;color:#1e3025;font-size:17px;line-height:1.25;text-transform:uppercase;letter-spacing:.015em}
.server-announcement-current>time,.server-announcement-detail-head time{display:block;margin-top:5px;color:#7a847d;font-size:10px;font-weight:700;letter-spacing:.025em}
.server-announcement-body{margin-top:15px;color:#48534c;font-size:12px;line-height:1.68}
.server-announcement-body p{margin:0 0 11px}
.server-announcement-body p:last-child{margin-bottom:0}
.server-announcement-archive{margin-top:18px;padding-top:16px;border-top:1px solid #dde6df}
.server-announcement-archive h3{margin:0 0 9px;color:#526058;font-size:10px;font-weight:900;letter-spacing:.075em}
.server-announcement-archive-list{display:grid;gap:7px}
.server-announcement-archive-row{width:100%;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:10px 12px;border:1px solid #dce3de;border-radius:5px;background:#fff;color:#2d3731;font:inherit;text-align:left;cursor:pointer;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease}
.server-announcement-archive-row:hover,.server-announcement-archive-row:focus-visible{background:#f4faf5;border-color:#bcd5c2;box-shadow:0 2px 8px rgba(25,74,40,.06);outline:none}
.server-announcement-archive-row.is-selected{background:#eef8f0;border-color:#72ae7f;box-shadow:inset 3px 0 0 #16833a}
.server-announcement-archive-row.is-selected .server-announcement-archive-title{color:#176f35}
.server-announcement-archive-title{min-width:0;font-size:12px;font-weight:750;line-height:1.35;overflow-wrap:anywhere}
.server-announcement-archive-row time{white-space:nowrap;color:#7a847d;font-size:10px;font-weight:700;font-variant-numeric:tabular-nums}
.server-announcement-pagination{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:5px;margin-top:12px}
.server-announcement-page{min-width:29px;height:29px;padding:0 8px;border:1px solid #d6ded8;border-radius:4px;background:#fff;color:#536057;font-size:10px;font-weight:800;cursor:pointer}
.server-announcement-page:hover,.server-announcement-page:focus-visible{border-color:#a9c7b0;background:#f4faf5;color:#167b38;outline:none}
.server-announcement-page.is-active{border-color:#16833a;background:#16833a;color:#fff;cursor:default}
.server-announcement-page-ellipsis{padding:0 2px;color:#7a847d;font-size:11px}
.server-announcement-empty{padding:14px;border:1px solid #e1e6e2;border-radius:5px;background:#fafbfa;color:#6c756f;text-align:center}
.server-operational-notices{margin-top:15px}
.server-operational-notices .server-pause-notice,.server-operational-notices .server-simulation-notice{margin:10px 0 0}

/* authoritative manager-announcement admin controls */
.server-announcement-current-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.server-announcement-current-head>div:first-child{min-width:0}
.server-announcement-current-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px}
.server-announcement-latest-button{height:25px;padding:0 9px;border:1px solid #a9c7b0;border-radius:4px;background:#f5faf6;color:#176f35;font-size:8.5px;font-weight:900;letter-spacing:.035em;cursor:pointer}
.server-announcement-latest-button:hover,.server-announcement-latest-button:focus-visible{border-color:#16833a;background:#eef8f0;outline:none}
.server-announcement-current-head time{display:block;margin-top:5px;color:#7a847d;font-size:10px;font-weight:700;letter-spacing:.025em}
.server-announcement-admin-toolbar{display:flex;align-items:center;gap:9px;margin-bottom:10px;padding:8px 10px;border:1px solid #d7e3da;border-radius:5px;background:#f7fbf8}
.server-announcement-admin-toolbar span{color:#77817a;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.045em}
.server-announcement-new-button{height:29px;padding:0 10px;border:1px solid #16833a;border-radius:4px;background:#16833a;color:#fff;font-size:9px;font-weight:900;letter-spacing:.035em;cursor:pointer}
.server-announcement-new-button:hover,.server-announcement-new-button:focus-visible{filter:brightness(.97);outline:none}
.server-announcement-admin-actions{display:flex;flex-wrap:wrap;gap:5px;align-items:center;justify-content:flex-end}
.server-announcement-admin-button{height:25px;padding:0 8px;border:1px solid #cbd8cf;border-radius:4px;background:#fff;color:#455149;font-size:8.5px;font-weight:900;letter-spacing:.035em;cursor:pointer}
.server-announcement-admin-button:hover,.server-announcement-admin-button:focus-visible{border-color:#9fb9a6;color:#167a37;outline:none}
.server-announcement-admin-button.publish{border-color:#afd0b7;color:#167a37;background:#f5fbf6}
.server-announcement-admin-button.danger{border-color:#dfbbb7;color:#a83e36;background:#fff9f8}
.server-announcement-archive-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;padding:0;overflow:hidden}
.server-announcement-archive-open{min-width:0;width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:10px 12px;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}
.server-announcement-archive-open:hover,.server-announcement-archive-open:focus-visible{background:#f4faf5;outline:none}
.server-announcement-archive-row>.server-announcement-admin-actions{padding:6px 8px 6px 0}
.server-announcement-archive-empty{padding:11px 12px;border:1px dashed #dce3de;border-radius:5px;color:#7d8780;font-size:10px;background:#fbfcfb}
.server-announcement-drafts{margin-top:14px;padding-top:13px;border-top:1px solid #dde6df}
.server-announcement-drafts h3{margin:0 0 8px;color:#526058;font-size:10px;font-weight:900;letter-spacing:.075em}
.server-announcement-draft-list{display:grid;gap:6px}
.server-announcement-draft-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 10px;border:1px dashed #cfdad2;border-radius:5px;background:#fafcfa}
.server-announcement-draft-row b{display:block;color:#334038;font-size:11px;overflow-wrap:anywhere}
.server-announcement-draft-row small{display:block;margin-top:3px;color:#828b85;font-size:9px}
.server-announcement-admin-modal-backdrop{position:fixed;inset:0;z-index:420;display:grid;place-items:center;padding:18px;background:rgba(4,25,13,.42)}
.server-announcement-admin-modal{width:min(620px,100%);max-height:min(760px,calc(100vh - 36px));overflow:auto;border:1px solid #cbd8cf;border-radius:6px;background:#fff;box-shadow:0 22px 65px rgba(0,0,0,.24)}
.server-announcement-admin-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid #e0e7e2;background:#f8faf8}
.server-announcement-admin-modal-head h3{margin:0;color:#26342c;font-size:11px;font-weight:900;letter-spacing:.06em}
.server-announcement-modal-close{border:0;background:transparent;color:#68736c;font-size:22px;line-height:1;cursor:pointer}
.server-announcement-editor-form{display:grid;gap:11px;padding:14px}
.server-announcement-editor-form label{color:#48554d;font-size:9.5px;font-weight:800}
.server-announcement-editor-form input,.server-announcement-editor-form textarea{display:block;width:100%;margin-top:5px;border:1px solid #ccd8d0;border-radius:4px;background:#fff;color:#202822;font:inherit;font-weight:400;box-sizing:border-box}
.server-announcement-editor-form input{height:34px;padding:0 9px}
.server-announcement-editor-form textarea{min-height:190px;padding:9px;line-height:1.5;resize:vertical}
.server-announcement-editor-form input:focus,.server-announcement-editor-form textarea:focus{outline:1px solid #68ad72;border-color:#68ad72}
.server-announcement-editor-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:7px;padding:0 14px 14px}
.server-announcement-editor-form .server-announcement-editor-actions{padding:2px 0 0}
.server-announcement-editor-button{height:30px;padding:0 10px;border:1px solid #cdd8d0;border-radius:4px;background:#fff;color:#455149;font-size:9px;font-weight:900;cursor:pointer}
.server-announcement-editor-button.primary{border-color:#16833a;background:#16833a;color:#fff}
.server-announcement-editor-button.danger{border-color:#a83e36;background:#b8463d;color:#fff}
.server-announcement-editor-button.secondary:hover,.server-announcement-editor-button.secondary:focus-visible{border-color:#9db8a3;color:#167a37;outline:none}
.server-announcement-admin-status{min-height:17px;color:#6d7871;font-size:9.5px}
.server-announcement-admin-status.error{color:#a53b34}
.server-announcement-admin-status.working{color:#546159}
.server-announcement-delete-copy{padding:16px 14px 10px;color:#4b5650;font-size:11px;line-height:1.5}
.server-announcement-delete-copy b{display:block;margin-bottom:5px;color:#2c3831;font-size:12px}
.server-announcement-delete-copy p{margin:0 0 8px}
.server-announcement-delete-copy small{display:block;color:#7d8781;overflow-wrap:anywhere}
.server-announcement-delete-modal>.server-announcement-admin-status{padding:0 14px 8px}


/* Soccersim Classic 3.26 - immutable match-report visibility polish. */
.match-report-team-crest{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 34px}
.match-report-team-crest .mini-club-crest{display:flex!important;align-items:center!important;justify-content:center!important;width:34px!important;height:34px!important;min-width:34px!important}
.match-report-team-crest .club-crest-image{display:block!important;width:32px!important;height:32px!important;max-width:32px!important;max-height:32px!important;object-fit:contain!important}
.match-event-score{font-weight:700;color:#25312a;font-variant-numeric:tabular-nums}
.classic-cup-match-row{grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr) 96px 72px!important}
.classic-cup-report{display:flex;align-items:center;justify-content:flex-end;gap:4px;min-width:0;white-space:nowrap;font-size:10.5px}
.classic-cup-report-link{font-weight:600;color:#167ac6!important;text-decoration:none}
.classic-cup-report-link:hover{text-decoration:underline}
.classic-cup-report-divider{color:#9aa49d}
@media (max-width:760px){
  .match-report-team-crest{width:28px;height:28px;flex-basis:28px}
  .match-report-team-crest .mini-club-crest{width:28px!important;height:28px!important;min-width:28px!important}
  .match-report-team-crest .club-crest-image{width:26px!important;height:26px!important;max-width:26px!important;max-height:26px!important}
  .classic-cup-match-row{grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr) 50px 56px!important;column-gap:3px!important}
  .classic-cup-report{font-size:9.5px;gap:2px;overflow:hidden}
  .classic-cup-report-link{overflow:hidden;text-overflow:ellipsis}
}

/* 3.27 Top Scorers: player-profile links keep the existing compact row layout. */
.national-scorer-player-link{color:inherit;text-decoration:none;}
.national-scorer-player-link:hover{text-decoration:underline;color:#08752c;}

/* Soccersim Classic domestic-cup season rail.
   Keep every configured round visible from the opening draw through the final,
   while presenting the cup in a compact two-column layout. Presentation only. */
.classic-cup-layout{
  grid-template-columns:minmax(0,1.06fr) minmax(300px,.94fr)!important;
  gap:20px!important;
  padding:12px 12px 16px!important;
  align-items:start!important;
}
.classic-cup-box{padding:0 8px 6px!important;border:0!important;background:transparent!important;}
.classic-cup-side{display:grid!important;gap:14px!important;align-content:start!important;border:0!important;background:transparent!important;}
.classic-cup-side .info-card{margin:0!important;padding:0!important;}
.classic-cup-side .info-card h3{
  margin:0 0 5px!important;
  padding:6px 4px 7px!important;
  border-bottom:1px solid #dfe7e1!important;
  color:#26342a!important;
  font-size:12px!important;
  font-weight:800!important;
  text-align:center!important;
}
.classic-cup-side .scorer-row,.classic-cup-side .champion-row{
  min-height:25px!important;
  padding:3px 2px!important;
  gap:7px!important;
  border-bottom:1px solid #edf1ee!important;
}
.classic-cup-side .scorer-row{grid-template-columns:22px minmax(0,1fr) 28px minmax(112px,.9fr)!important;font-size:11px!important;}
.classic-cup-side .champion-row{grid-template-columns:86px minmax(0,.9fr) minmax(118px,1fr)!important;font-size:10.8px!important;}
.classic-cup-round-block{
  margin:0!important;
  padding:7px 0 11px!important;
  border-bottom:1px solid #dfe6e1!important;
  background:transparent!important;
}
.classic-cup-round-block:first-child{padding-top:2px!important;}
.classic-cup-round-block:last-child{padding-bottom:2px!important;border-bottom:0!important;}
.classic-cup-round-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  min-height:26px!important;
  margin:0!important;
  padding:4px 3px 5px!important;
  border-bottom:1px solid #dfe7e1!important;
}
.classic-cup-round-head h3{
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  color:#26342a!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1.15!important;
  text-align:left!important;
}
.classic-cup-round-turns{
  flex:0 0 auto!important;
  color:#68746c!important;
  font-size:9.8px!important;
  font-weight:700!important;
  white-space:nowrap!important;
}
.classic-cup-round-list{display:flex!important;flex-direction:column!important;gap:0!important;}
.classic-cup-match-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr) 135px!important;
  align-items:center!important;
  column-gap:5px!important;
  min-height:27px!important;
  padding:2px 3px!important;
  border-bottom:1px solid #edf1ee!important;
  font-size:10.8px!important;
  line-height:1.1!important;
}
.classic-cup-match-row:last-child{border-bottom:0!important;}
.classic-cup-home,.classic-cup-away{min-width:0!important;overflow:hidden!important;}
.classic-cup-away{text-align:right!important;}
.classic-cup-away .cup-team-inline{justify-content:flex-end!important;}
.classic-cup-match-row .cup-team-inline,.classic-cup-match-row .cup-team-inline.universal-team-nav{
  min-width:0!important;
  max-width:100%!important;
  column-gap:4px!important;
  font-size:10.8px!important;
}
.classic-cup-match-row .cup-team-label{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.classic-cup-x{font-size:10px!important;font-weight:700!important;color:#59665e!important;text-align:center!important;}
.classic-cup-score{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  padding:0!important;
  color:#1763a8!important;
  font-size:10.8px!important;
  font-weight:700!important;
  font-variant-numeric:tabular-nums!important;
  text-align:right!important;
}
.classic-cup-score-link{color:inherit!important;font:inherit!important;text-decoration:none!important;}
.classic-cup-score-link:hover,.classic-cup-score-link:focus-visible{text-decoration:underline!important;}
.classic-cup-score-separator,.classic-cup-score-note{color:inherit!important;font:inherit!important;}
.classic-cup-report{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:3px!important;
  min-width:0!important;
  white-space:nowrap!important;
  font-size:9px!important;
}
.classic-cup-report-link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:17px!important;
  height:17px!important;
  padding:0 3px!important;
  border:1px solid #d8e2da!important;
  border-radius:3px!important;
  background:#f7faf8!important;
  color:#16753a!important;
  font-size:8.8px!important;
  font-weight:800!important;
  line-height:1!important;
  text-decoration:none!important;
}
.classic-cup-report-link:hover,.classic-cup-report-link:focus-visible{
  border-color:#92bda0!important;
  background:#edf7f0!important;
  color:#0f6730!important;
  text-decoration:none!important;
}
.classic-cup-report-divider{display:none!important;}
.classic-cup-bye-note{
  margin:6px 3px 0!important;
  padding:5px 7px!important;
  border:1px solid #dce8df!important;
  border-left:2px solid #14923d!important;
  background:#f8fbf9!important;
  color:#59675e!important;
  font-size:9.8px!important;
  line-height:1.2!important;
}
.classic-cup-bye-note b{color:#14843a!important;}
.classic-cup-waiting{
  padding:8px 4px!important;
  color:#79847d!important;
  font-size:10px!important;
  text-align:center!important;
  font-style:italic!important;
}
.classic-cup-round-block.is-final{
  margin-top:3px!important;
  padding-left:5px!important;
  border-left:2px solid #14843a!important;
  background:linear-gradient(90deg,rgba(20,132,58,.035),rgba(20,132,58,0) 75%)!important;
}
.classic-cup-round-block.is-final .classic-cup-round-head h3{color:#0f7834!important;}

@media (max-width:900px){
  .classic-cup-layout{grid-template-columns:minmax(0,1fr)!important;gap:12px!important;padding:10px 8px 14px!important;}
  .classic-cup-side{width:100%!important;min-width:0!important;gap:12px!important;}
}

@media (max-width:600px){
  .classic-cup-box{width:100%!important;min-width:0!important;padding:0 1px 5px!important;}
  .classic-cup-round-block{width:100%!important;min-width:0!important;padding:6px 0 9px!important;}
  .classic-cup-round-head{min-height:25px!important;padding:4px 2px 5px!important;gap:6px!important;}
  .classic-cup-round-head h3{font-size:11.5px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
  .classic-cup-round-turns{font-size:9px!important;}
  .classic-cup-match-row{
    grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr) 94px!important;
    column-gap:2px!important;
    min-height:29px!important;
    padding:2px 1px!important;
    font-size:10px!important;
  }
  .classic-cup-match-row .cup-team-inline,.classic-cup-match-row .cup-team-inline.universal-team-nav{column-gap:2px!important;font-size:10px!important;}
  .classic-cup-match-row .cup-team-side-home,.classic-cup-match-row .cup-team-inline.home{grid-template-columns:13px minmax(0,1fr)!important;}
  .classic-cup-match-row .cup-team-side-away,.classic-cup-match-row .cup-team-inline.away{grid-template-columns:minmax(0,1fr) 13px!important;}
  .classic-cup-match-row .cup-status-slot{width:13px!important;min-width:13px!important;height:14px!important;}
  .classic-cup-match-row .cup-status-slot .manager-status-icon{width:12px!important;min-width:12px!important;height:12px!important;}
  .classic-cup-match-row .cup-status-slot .manager-status-icon img{width:12px!important;height:12px!important;}
  .classic-cup-x{font-size:9.5px!important;}
  .classic-cup-score{font-size:9.5px!important;}
  .classic-cup-report{gap:2px!important;}
  .classic-cup-report-link{min-width:15px!important;height:16px!important;padding:0 2px!important;font-size:8px!important;}
  .classic-cup-bye-note{margin-top:5px!important;padding:5px 6px!important;font-size:9px!important;}
  .classic-cup-side .scorer-row{grid-template-columns:20px minmax(0,1fr) 26px minmax(90px,.9fr)!important;font-size:10.5px!important;}
  .classic-cup-side .champion-row{grid-template-columns:76px minmax(0,.9fr) minmax(96px,1fr)!important;font-size:10.2px!important;}
}

/* Explicit seasonal analysis actions; no image-only refresh controls. */
.coach-analysis-button{display:inline-block;padding:7px 10px;margin:5px 0;border:1px solid #247b43;border-radius:4px;background:#fff;color:#176832;font:inherit;font-size:12px;text-decoration:none;cursor:pointer}
.coach-analysis-button:disabled{opacity:.55;cursor:default}
.coach-analysis-button:focus-visible{outline:2px solid #247b43;outline-offset:2px}
.coaching-table td{vertical-align:top}

/* 2.20: restore the original yellow per-field coaching analysis action. */
.coaching-table .coach-inline-request{min-height:28px;padding:3px 4px;color:#778780;font-style:normal;border-radius:3px;white-space:nowrap}
.coaching-table .coach-inline-request .coach-refresh-icon{width:16px;height:16px;filter:saturate(1.15)}
.coaching-table .coach-inline-request:hover,.coaching-table .coach-inline-request:focus-visible{background:#fff7e8;color:#3e7649;outline:2px solid #d29a32;outline-offset:1px}
.coaching-table .coach-inline-request:disabled{opacity:.55;cursor:not-allowed}
.coaching-table .coach-progress-block{max-width:158px;margin:0;gap:0}
.coaching-table .coach-progress-track{height:19px}
@media (pointer:coarse){.coaching-table .coach-inline-request{min-height:38px;padding:5px 7px}}

/* Stored club history: six columns only in Detailed History. */
.team-history-detailed .team-history-head,.team-history-detailed .team-history-row{grid-template-columns:55px 45px minmax(95px,1fr) minmax(110px,1fr) 95px minmax(180px,2fr);gap:8px;align-items:start;padding:8px 0}
.team-history-content{overflow-x:auto}
.team-history-detailed{min-width:680px}
.team-transfer-history-pages{display:flex;gap:4px;padding:10px 14px;flex-wrap:wrap}

/* 2.75 Negotiations: owner-only cards, same green/white theme as player contract. */
.negotiations-card .negotiation-layout-full{display:block;min-width:0}
.negotiations-card .negotiation-offer-group{display:grid;gap:10px}
.negotiations-card .negotiation-offer-card{position:relative;display:grid;gap:10px;min-width:0;padding:14px;border:1px solid #dce8df;border-radius:7px;background:#fbfdfb;overflow-wrap:anywhere}
.negotiations-card .negotiation-offer-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}
.negotiations-card .negotiation-offer-head .negotiation-player-link{font-size:15px;font-weight:700;line-height:1.4}
.negotiations-card .negotiation-offer-status{border-radius:12px;padding:4px 9px;border:1px solid #cdddcf;background:#edf6f0;font-size:12px;font-weight:650}
.negotiations-card .negotiation-offer-club,.negotiations-card .negotiation-offer-terms{font-size:13px;line-height:1.5;color:#405449;overflow-wrap:anywhere}
.negotiations-card .negotiation-owner-actions,.contract-negotiations .current-negotiation-actions{display:flex;align-items:stretch;flex-wrap:wrap;gap:10px;min-width:0}
.negotiations-card .negotiation-owner-actions button,.contract-negotiations .current-negotiation-actions button{flex:1 1 135px;min-height:44px;box-sizing:border-box;padding:10px 18px;font-size:14px;line-height:1.3;font-weight:700;border-radius:6px;cursor:pointer;transition:background-color .12s ease,box-shadow .12s ease}
.negotiations-card .negotiation-accept-btn,.contract-negotiations .negotiation-accept-btn{border:1px solid #13743a;background:#168044;color:#fff}
.negotiations-card .negotiation-accept-btn:hover,.contract-negotiations .negotiation-accept-btn:hover{background:#0f6936}
.negotiations-card .negotiation-reject-btn,.contract-negotiations .negotiation-reject-btn{border:1px solid #b85a56;background:#fff2f1;color:#94362f}
.negotiations-card .negotiation-owner-actions button:disabled,.contract-negotiations .current-negotiation-actions button:disabled{opacity:.55;cursor:wait}
.negotiations-card .negotiation-owner-actions button:focus-visible,.contract-negotiations .current-negotiation-actions button:focus-visible{outline:3px solid #7bb79a;outline-offset:2px}
.negotiations-card .negotiation-offer-card>.negotiation-cancel{justify-self:end;width:28px;height:28px;font-size:19px;border-radius:6px}
@media(max-width:620px){.negotiations-card .negotiations-layout{padding:10px}.negotiations-card .negotiation-offer-card{padding:12px}.negotiations-card .negotiation-owner-actions button,.contract-negotiations .current-negotiation-actions button{flex-basis:120px}}

.negotiations-card .negotiation-offer-crest{display:inline-flex;vertical-align:middle;margin-right:7px}
