/* ================================================================
   Frontend V12 — light editorial football research system
   Reference direction: white navigation, dark stadium hero, generous
   spacing, fine borders, restrained green, verifiable records.
   Public frontend only. Admin/expert consoles are untouched.
   ================================================================ */
.front-site{
  --v12-green:#24b45a;
  --v12-green-dark:#139447;
  --v12-green-soft:#effaf3;
  --v12-green-pale:#f5fbf7;
  --v12-ink:#161d18;
  --v12-text:#313a33;
  --v12-muted:#89938c;
  --v12-line:#e8eee9;
  --v12-line-strong:#dfe8e1;
  --v12-bg:#ffffff;
  --v12-soft:#fafcfb;
  --v12-shadow:0 14px 34px rgba(24,54,33,.055);
  --v12-shadow-soft:0 8px 24px rgba(24,54,33,.04);
  margin:0;
  color:var(--v12-text);
  background:#fff;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Arial,sans-serif;
  line-height:1.7;
}
.front-site *{box-sizing:border-box}
.front-site .container{max-width:1160px;padding-left:24px;padding-right:24px}
.front-site .page-main{padding-top:0;padding-bottom:84px;min-height:calc(100vh - 180px)}
.front-site .full-bleed-section{width:100vw;margin-left:calc(50% - 50vw)}
.front-site a{color:inherit;text-decoration:none;transition:.18s ease}
.front-site .muted{color:var(--v12-muted)}
.front-site .empty{padding:28px 22px;border:1px dashed var(--v12-line-strong);border-radius:12px;background:#fbfdfb;color:#929a94;text-align:center}
.front-site .alert{margin:18px 0 0;border:1px solid var(--v12-line)!important;border-radius:10px!important;background:#fff!important;box-shadow:var(--v12-shadow-soft)!important;color:var(--v12-text)!important}
.front-site .alert.success{border-left:3px solid var(--v12-green)!important}
.front-site .alert.warning{border-left:3px solid #e8a63d!important}
.front-site .alert.danger{border-left:3px solid #e05b5b!important}

/* Header */
.front-site .site-header,
.front-site.route-home .site-header{
  position:sticky!important;
  top:0;
  z-index:100;
  background:rgba(255,255,255,.98)!important;
  color:var(--v12-ink)!important;
  border:0!important;
  border-bottom:1px solid #edf1ee!important;
  box-shadow:0 5px 22px rgba(26,52,33,.035)!important;
  backdrop-filter:blur(16px);
}
.front-site .v12-nav-wrap,
.front-site.route-home .v12-nav-wrap{min-height:64px!important;display:flex;align-items:center;gap:24px;padding-top:0!important;padding-bottom:0!important}
.front-site .v12-brand,
.front-site.route-home .v12-brand{display:flex;align-items:center;gap:9px;color:var(--v12-ink)!important;min-width:max-content;padding:0!important}
.front-site .v12-brand .brand-logo{width:31px!important;height:31px!important;filter:none!important}
.front-site .v12-brand .brand-copy{display:block!important;line-height:1!important}
.front-site .v12-brand .brand-copy b{color:#121714!important;font-size:18px!important;font-weight:900!important;letter-spacing:.2px}
.front-site .v12-main-nav,
.front-site.route-home .v12-main-nav{height:64px!important;display:flex;align-items:stretch;gap:2px;margin:auto!important}
.front-site .v12-main-nav a,
.front-site.route-home .v12-main-nav a{display:flex;align-items:center;position:relative;padding:0 17px!important;color:#2f3832!important;background:transparent!important;font-size:13px!important;font-weight:700!important;white-space:nowrap}
.front-site .v12-main-nav a::after,
.front-site.route-home .v12-main-nav a::after{content:"";position:absolute;left:17px;right:17px;bottom:0;height:2px;background:var(--v12-green);transform:scaleX(0);border-radius:2px;transition:.18s ease}
.front-site .v12-main-nav a:hover,
.front-site .v12-main-nav a.active,
.front-site.route-home .v12-main-nav a:hover,
.front-site.route-home .v12-main-nav a.active{color:var(--v12-green-dark)!important}
.front-site .v12-main-nav a:hover::after,
.front-site .v12-main-nav a.active::after{transform:scaleX(1)}
.front-site .v12-header-actions{display:flex;align-items:center;gap:12px}
.front-site .header-login-link{font-size:12px;font-weight:700;color:#69726c!important}
.front-site .header-login-link:hover{color:var(--v12-green-dark)!important}
.front-site .header-register,
.front-site.route-home .header-register{display:inline-flex;align-items:center;justify-content:center;min-width:78px;height:32px;padding:0 15px;border:1px solid #9ddbb1!important;border-radius:18px!important;background:#fbfffc!important;color:var(--v12-green-dark)!important;box-shadow:0 5px 16px rgba(36,180,90,.06)!important;font-size:11px!important;font-weight:800!important}
.front-site .header-register:hover{border-color:var(--v12-green)!important;background:var(--v12-green-soft)!important;transform:translateY(-1px)}
.front-site .header-user{display:flex!important;align-items:center;gap:8px;color:#222b25!important;white-space:nowrap}
.front-site .header-user>span{width:31px!important;height:31px!important;display:grid;place-items:center;border:1px solid #cfe8d7!important;border-radius:50%!important;background:var(--v12-green-soft)!important;color:var(--v12-green-dark)!important;font-size:12px;font-weight:900}
.front-site .header-user b{color:#29312b!important;font-size:11px!important;max-width:80px;overflow:hidden;text-overflow:ellipsis}
.front-site .header-logout{color:#9aa19c!important;font-size:10px!important}
.front-site .mobile-nav-toggle{display:none;width:38px;height:36px;margin-left:auto;border:1px solid var(--v12-line-strong)!important;border-radius:8px;background:#fff!important;padding:8px;cursor:pointer}
.front-site .mobile-nav-toggle span{display:block;height:2px;margin:4px 0;border-radius:2px;background:#303832!important}

/* shared buttons/cards */
.front-site .btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 18px;border:1px solid var(--v12-green)!important;border-radius:7px!important;background:var(--v12-green)!important;color:#fff!important;font-weight:800!important;box-shadow:none!important}
.front-site .btn:hover{background:var(--v12-green-dark)!important;border-color:var(--v12-green-dark)!important;color:#fff!important;transform:translateY(-1px)}
.front-site .btn.secondary{background:#fff!important;color:#3b453e!important;border-color:var(--v12-line-strong)!important}
.front-site .btn.secondary:hover{background:#fbfdfb!important;color:var(--v12-green-dark)!important;border-color:#b7d9c2!important}
.front-site .btn.small{min-height:34px;padding:7px 14px;font-size:11px}
.front-site .card{border:1px solid var(--v12-line)!important;border-radius:12px!important;background:#fff!important;box-shadow:var(--v12-shadow-soft)!important}
.front-site input,.front-site select,.front-site textarea{border-color:var(--v12-line-strong)!important;border-radius:7px!important;background:#fff!important;color:var(--v12-text)!important;box-shadow:none!important}
.front-site input:focus,.front-site select:focus,.front-site textarea:focus{outline:none;border-color:#9bd4ad!important;box-shadow:0 0 0 3px rgba(36,180,90,.08)!important}

/* Homepage hero */
.v12-home-hero{position:relative;overflow:hidden;min-height:420px;background:
  linear-gradient(90deg,rgba(5,19,13,.88) 0%,rgba(5,19,13,.75) 50%,rgba(4,15,10,.48) 100%),
  radial-gradient(circle at 65% 20%,rgba(73,149,94,.28),transparent 24%),
  url('../img/home-hero-stadium-v12.svg') center 54%/cover no-repeat #0c2015;
}
.v12-home-hero::after{content:"";position:absolute;inset:auto 0 0;height:135px;background:linear-gradient(180deg,transparent,rgba(0,8,4,.55));pointer-events:none}
.v12-home-hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(1,10,5,.20));pointer-events:none}
.v12-home-hero-inner{position:relative;z-index:2;min-height:420px;display:grid;grid-template-columns:minmax(0,1fr) 245px;align-items:center;gap:72px;padding-top:56px;padding-bottom:56px;color:#fff}
.v12-home-hero-copy{max-width:735px}
.v12-hero-eyebrow{display:block;margin-bottom:13px;color:rgba(222,239,228,.72);font-size:9px;font-weight:900;letter-spacing:1.7px}
.v12-home-hero h1{margin:0;color:#fff;font-size:42px;line-height:1.3;letter-spacing:-1px;font-weight:950;text-shadow:0 3px 22px rgba(0,0,0,.22)}
.v12-home-hero h1 em{display:inline-block;color:#56ce79;font-style:normal}
.v12-home-hero-copy>p{max-width:660px;margin:14px 0 0;color:rgba(255,255,255,.78);font-size:14px;line-height:1.9}
.v12-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:23px}
.v12-btn{display:inline-flex;align-items:center;justify-content:center;min-width:125px;height:42px;padding:0 19px;border:1px solid transparent;border-radius:6px;font-size:12px;font-weight:850;transition:.18s ease}
.v12-btn:hover{transform:translateY(-1px)}
.v12-btn-green{background:#19b957;color:#fff!important;border-color:#19b957;box-shadow:0 9px 20px rgba(8,130,55,.18)}
.v12-btn-green:hover{background:#12a64c;color:#fff!important}
.v12-btn-white{background:#fff;color:#202822!important;border-color:#fff}
.v12-btn-white:hover{background:#f4f7f5;color:var(--v12-green-dark)!important}
.v12-focus-card{align-self:end;margin-bottom:16px;padding:16px 17px;border:1px solid rgba(255,255,255,.13);border-radius:9px;background:linear-gradient(135deg,rgba(49,92,53,.55),rgba(32,63,38,.32));box-shadow:0 14px 34px rgba(0,0,0,.13);backdrop-filter:blur(8px);color:#fff}
.v12-focus-card header{display:flex;align-items:center;justify-content:space-between;color:rgba(255,255,255,.86);font-size:11px}
.v12-focus-card header i{font-style:normal;color:#9de3af;font-size:10px}
.v12-focus-card>strong{display:block;margin-top:8px;font-size:12px;line-height:1.5}.v12-focus-card>strong small{font-weight:500;color:rgba(255,255,255,.58)}
.v12-focus-card>p{height:34px;margin:5px 0 7px;overflow:hidden;color:rgba(255,255,255,.57);font-size:9px;line-height:1.8}
.v12-focus-card>a{display:inline-block;color:#60da80!important;font-size:10px;font-weight:900;border-bottom:1px solid rgba(96,218,128,.5)}

/* homepage feature row */
.v12-feature-section{padding:47px 0 8px}
.v12-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.v12-feature-grid article{min-height:116px;display:flex;align-items:center;gap:14px;padding:22px 18px;border:1px solid var(--v12-line);border-radius:8px;background:#fff;box-shadow:var(--v12-shadow-soft)}
.v12-feature-grid article>i{width:42px;height:42px;display:grid;place-items:center;flex:none;border:1px solid #dfe8e2;border-radius:50%;background:#fbfdfb;color:#8ca098;font-style:normal;font-size:18px}
.v12-feature-grid article:nth-child(2)>i,.v12-feature-grid article:nth-child(4)>i{color:var(--v12-green-dark);background:var(--v12-green-pale)}
.v12-feature-grid div{display:grid}.v12-feature-grid b{color:#28302b;font-size:14px}.v12-feature-grid span{margin-top:4px;color:#a0a7a2;font-size:9px}

/* homepage sections */
.v12-home-section{padding:73px 0 0}
.v12-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:13px}
.v12-section-head>div>span{display:block;margin-bottom:2px;color:#9aa49d;font-size:8px;font-weight:900;letter-spacing:1.5px}
.v12-section-head h2{margin:0;color:#222a24;font-size:22px;line-height:1.4;font-weight:900;letter-spacing:-.25px}
.v12-section-head p{margin:6px 0 0;color:#8c968f;font-size:11px}
.v12-section-head>a{color:#9aa39d!important;font-size:9px;font-weight:700}.v12-section-head>a:hover{color:var(--v12-green-dark)!important}
.v12-section-head>a i{font-style:normal;font-size:10px}
.v12-free-strip{display:flex;align-items:center;gap:8px;height:28px;padding:0 11px;margin-bottom:10px;border:1px solid #e0f1e5;border-radius:4px;background:#f3fbf5;color:#8a978d;font-size:8px}
.v12-free-strip i{color:#d5b64f;font-style:normal}
.v12-analyst-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}
.v12-analyst-card{position:relative;overflow:hidden;border:1px solid var(--v12-line);border-radius:8px;background:#fff;box-shadow:var(--v12-shadow-soft)}
.v12-analyst-profile{display:flex;flex-direction:column;align-items:center;padding:16px 10px 7px;text-align:center}
.v12-analyst-profile .avatar{width:48px!important;height:48px!important;border-radius:50%!important;overflow:hidden;background:#f0f4f1;border:1px solid #eef1ef}
.v12-analyst-profile strong{max-width:100%;margin-top:9px;color:#313933;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v12-analyst-profile small{max-width:100%;height:15px;margin-top:2px;color:#9da59f;font-size:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v12-today-analysis{display:flex;align-items:center;justify-content:center;height:26px;margin:0 10px 9px;border:1px solid #e5ece7;border-radius:2px;background:#fff;color:#69a77d!important;font-size:8px}.v12-today-analysis:hover{border-color:#b9dbc4;background:#f8fcf9;color:var(--v12-green-dark)!important}.v12-today-analysis.is-empty{color:#b3bbb5!important}
.v12-analyst-rate{height:31px;display:flex;align-items:center;justify-content:center;gap:5px;border-top:1px solid #eef1ef;background:#fcfdfc;color:#a0a8a2}.v12-analyst-rate b{color:#87918a;font-size:9px}.v12-analyst-rate span{font-size:7px}

/* stats */
.v12-stats-head{margin-bottom:16px}
.v12-filter-pills{display:flex;gap:6px;align-items:center}.v12-filter-pills span{padding:5px 10px;border:1px solid #eef1ef;border-radius:4px;background:#fbfcfb;color:#b0b6b2;font-size:7px}.v12-filter-pills span.active{border-color:#d9eddf;background:#f1faf4;color:#63a877}
.v12-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.v12-stat-card{padding:20px 16px 16px;border:1px solid var(--v12-line);border-radius:10px;background:#fff;box-shadow:var(--v12-shadow-soft)}
.v12-stat-main{display:flex;align-items:flex-start;justify-content:space-between}.v12-stat-main>div:first-child>span{display:block;color:#626c65;font-size:10px;font-weight:800}.v12-stat-main strong{display:block;margin-top:12px;color:var(--v12-green);font-size:27px;line-height:1}.v12-stat-main strong small{font-size:10px}.v12-donut{--rate:0;width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(#c9d2cc calc(var(--rate)*1%),#edf1ee 0);position:relative}.v12-donut::after{content:"";position:absolute;inset:7px;border-radius:50%;background:#fff}.v12-donut span{position:relative;z-index:2;color:#9ba49e;font-size:7px}
.v12-stat-mini{display:grid;grid-template-columns:repeat(4,1fr);margin-top:16px;border-top:1px solid #eff2f0;border-bottom:1px solid #eff2f0}.v12-stat-mini span{padding:8px 3px;text-align:center;border-left:1px solid #f0f2f1}.v12-stat-mini span:first-child{border-left:0}.v12-stat-mini small{display:block;color:#a5aca7;font-size:7px}.v12-stat-mini b{display:block;margin-top:2px;color:#606a63;font-size:9px}
.v12-progress{display:grid;grid-template-columns:40px minmax(0,1fr) 34px;gap:8px;align-items:center;margin-top:12px}.v12-progress>span,.v12-progress>b{color:#a0a9a3;font-size:7px}.v12-progress>b{text-align:right}.v12-progress i{height:3px;border-radius:3px;background:#eef2ef;overflow:hidden}.v12-progress i em{display:block;height:100%;border-radius:3px;background:var(--v12-green)}

/* history */
.v12-history-table{overflow:hidden;border:1px solid var(--v12-line);border-radius:9px;background:#fff;box-shadow:var(--v12-shadow-soft)}
.v12-history-row{display:grid;grid-template-columns:70px 90px minmax(0,1fr) 80px 70px 70px;align-items:center;gap:10px;min-height:54px;padding:0 14px;border-top:1px solid #eff2f0;color:#5e6861;font-size:9px}.v12-history-row:first-child{border-top:0}.v12-history-row.is-head{min-height:38px;background:#fbfcfb;color:#a3aaa5;font-size:7px}.v12-history-row:not(.is-head):hover{background:#fbfefc}.v12-history-row span:nth-child(3){min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v12-history-row span:nth-child(3) b{color:#4e5851;font-weight:700}.v12-history-row span:nth-child(3) i{margin:0 5px;color:#aeb5b0;font-style:normal;font-size:7px}.v12-history-row>span:last-child{justify-self:end;color:#57a66e}.v12-result{display:inline-flex;min-width:34px;height:20px;align-items:center;justify-content:center;border-radius:3px;background:#f2f5f3;color:#8c958f;font-style:normal;font-size:7px}.v12-result.hit{background:#eef9f1;color:#3d9d5a}.v12-result.miss{background:#fff2f2;color:#d87979}.v12-result.push{background:#fff8eb;color:#c2913e}

/* free flow */
.v12-free-panel{padding:20px 18px 18px;border:1px solid #e1eee5;border-radius:9px;background:linear-gradient(135deg,#f7fcf8,#f0faf4)}
.v12-free-panel .v12-section-head{margin-bottom:12px}.v12-free-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;gap:8px;align-items:center}.v12-free-flow article{min-height:76px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #e8eeea;border-radius:6px;background:#fff;text-align:center}.v12-free-flow article i{width:24px;height:24px;display:grid;place-items:center;margin-bottom:5px;border-radius:50%;background:#eaf8ef;color:#64a878;font-style:normal;font-size:8px;font-weight:900}.v12-free-flow article b{color:#515b54;font-size:9px}.v12-free-flow article span{margin-top:3px;color:#a4aba6;font-size:7px}.v12-free-flow>strong{color:#b6beb8;font-size:11px;font-weight:500}

/* bottom CTA */
.v12-bottom-cta{position:relative;overflow:hidden;margin-top:66px;background:
  linear-gradient(90deg,rgba(2,18,12,.92),rgba(3,25,15,.83),rgba(10,61,30,.76)),
  url('../img/home-hero-stadium-v12.svg') center 66%/cover no-repeat #06150d;
}
.v12-bottom-cta::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 105%,rgba(40,194,86,.32),transparent 38%)}
.v12-bottom-cta-inner{position:relative;z-index:2;min-height:205px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;padding-top:36px;padding-bottom:36px}.v12-bottom-cta-inner>span{color:#78a888;font-size:7px;font-weight:900;letter-spacing:1.7px}.v12-bottom-cta h2{margin:7px 0 5px;color:#fff;font-size:24px;font-weight:900}.v12-bottom-cta p{margin:0;color:rgba(255,255,255,.70);font-size:10px}.v12-bottom-cta-inner>div{display:flex;gap:10px;margin-top:18px}.v12-bottom-cta .v12-btn{height:38px;min-width:120px;font-size:10px}

/* footer */
.front-site .v12-site-footer,.front-site.route-home .v12-site-footer{padding:0;background:#fff!important;color:#8b948e!important;border-top:1px solid #edf1ee!important}
.v12-footer-row{min-height:65px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;font-size:8px}.v12-footer-brand{display:flex;align-items:center;gap:7px}.v12-footer-brand img{width:22px;height:22px}.v12-footer-brand strong{color:#5a645d;font-size:9px}.v12-footer-brand span{color:#b2b8b4}.v12-footer-center{color:#a8afa9;text-align:center}.v12-footer-links{display:flex;justify-content:flex-end;gap:13px}.v12-footer-links a{color:#929a94!important}.v12-footer-links a:hover{color:var(--v12-green-dark)!important}.v12-footer-notice{padding:0 24px 13px;color:#c1c6c2;font-size:7px;text-align:center;line-height:1.6}

/* inner page shared visual language */
.front-site:not(.route-home) .v12-page-main{padding-top:36px}
.v12-inner-hero{padding:30px 0 22px;border-bottom:1px solid var(--v12-line)}
.v12-inner-hero>span,.v12-expert-profile-main>div>span{display:block;color:#9ca59f;font-size:8px;font-weight:900;letter-spacing:1.6px}.v12-inner-hero h1{margin:3px 0 8px;color:#202721;font-size:30px;line-height:1.3}.v12-inner-hero p{max-width:720px;margin:0;color:#87918a;font-size:12px}.v12-inner-note{display:flex;align-items:center;gap:8px;margin:18px 0 14px;padding:9px 12px;border:1px solid #e2f0e7;border-radius:5px;background:#f5fbf7;color:#87938a;font-size:9px}.v12-inner-note i{color:#d6b83f;font-style:normal}
.front-site .page-title{margin:0 0 22px!important;padding:30px 0 20px!important;border:0!important;border-bottom:1px solid var(--v12-line)!important;background:transparent!important;box-shadow:none!important;text-align:left!important}
.front-site .page-title::before{content:none;display:block;margin-bottom:4px;color:#9fa8a2;font-size:8px;font-weight:900;letter-spacing:1.5px}
.front-site .page-title h1{margin:0!important;color:#202721!important;font-size:29px!important;line-height:1.35!important;font-weight:900!important}
.front-site .page-title p{max-width:820px;margin:7px 0 0!important;color:#88928b!important;font-size:11px!important;line-height:1.8!important}
.front-site .section-head{display:flex;align-items:center;justify-content:space-between;margin:30px 0 12px}.front-site .section-head h2{margin:0;color:#252d27;font-size:20px}.front-site .section-head>span{color:#a2aaa4;font-size:9px}

/* Experts */
.v12-experts-page-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:18px}.v12-expert-page-card{padding:20px;border:1px solid var(--v12-line);border-radius:9px;background:#fff;box-shadow:var(--v12-shadow-soft)}.v12-expert-page-profile{display:flex;align-items:center;gap:12px}.v12-expert-page-profile .avatar{width:52px!important;height:52px!important;border-radius:50%!important;overflow:hidden;flex:none}.v12-expert-page-profile>div{min-width:0}.v12-expert-page-profile h2{margin:0;color:#29312b;font-size:15px}.v12-expert-page-profile p{height:34px;margin:4px 0 0;overflow:hidden;color:#919a94;font-size:9px;line-height:1.8}.v12-expert-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}.v12-expert-tags span{padding:3px 7px;border:1px solid #e6ece8;border-radius:4px;background:#fbfdfb;color:#8d9690;font-size:7px}.v12-expert-tags span:nth-child(2){border-color:#dcefe2;background:#f3fbf5;color:#5ea474}.v12-expert-page-stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:14px;border-top:1px solid #eef1ef;border-bottom:1px solid #eef1ef}.v12-expert-page-stats span{padding:10px 4px;text-align:center;border-left:1px solid #eef1ef}.v12-expert-page-stats span:first-child{border-left:0}.v12-expert-page-stats small{display:block;color:#a0a8a2;font-size:7px}.v12-expert-page-stats strong{display:block;margin-top:2px;color:#536057;font-size:12px}.v12-card-link{display:inline-block;margin-top:13px;color:#5aa471!important;font-size:9px;font-weight:800}
.v12-expert-profile-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:center;margin-top:6px;padding:28px;border:1px solid var(--v12-line);border-radius:10px;background:#fff;box-shadow:var(--v12-shadow-soft)}.v12-expert-profile-main{display:flex;align-items:center;gap:18px}.v12-expert-profile-main>.avatar{width:74px!important;height:74px!important;border-radius:50%!important;overflow:hidden;flex:none}.v12-expert-profile-main h1{margin:3px 0 6px;color:#242c26;font-size:26px}.v12-expert-profile-main p{max-width:650px;margin:0;color:#8c958f;font-size:10px}.v12-expert-hero-stats{display:grid;grid-template-columns:repeat(3,95px);border:1px solid #ebefec;border-radius:8px;overflow:hidden}.v12-expert-hero-stats span{padding:13px 8px;text-align:center;border-left:1px solid #ebefec}.v12-expert-hero-stats span:first-child{border-left:0}.v12-expert-hero-stats small{display:block;color:#a4aca6;font-size:7px}.v12-expert-hero-stats strong{display:block;margin-top:3px;color:var(--v12-green-dark);font-size:14px}.v12-inner-section{padding-top:44px}.v12-table-wrap{border:1px solid var(--v12-line)!important;border-radius:9px!important;box-shadow:var(--v12-shadow-soft);overflow:hidden}

/* match list */
.front-site .match-date-nav-wrap{margin:0 0 14px!important;padding:0!important;background:transparent!important;border:0!important}.front-site .match-date-nav{display:flex!important;gap:7px!important}.front-site .match-date-tab{min-width:82px!important;padding:8px 12px!important;border:1px solid var(--v12-line)!important;border-radius:6px!important;background:#fff!important;box-shadow:none!important;color:#7e8881!important;text-align:center!important}.front-site .match-date-tab.active{border-color:#b9dbc3!important;background:#f5fbf7!important;color:var(--v12-green-dark)!important}.front-site .match-date-tab strong{font-size:10px!important}.front-site .match-date-tab small{font-size:7px!important;color:#a7aea9!important}.front-site .filter-bar{display:flex!important;align-items:flex-end!important;gap:10px!important;margin:0 0 16px!important;padding:13px!important;border:1px solid var(--v12-line)!important;border-radius:8px!important;background:#fbfcfb!important;box-shadow:none!important}.front-site .filter-bar label{color:#7d8780!important;font-size:9px!important}.front-site .filter-bar input,.front-site .filter-bar select{height:34px!important;font-size:10px!important}.front-site .match-table-head{border:1px solid var(--v12-line)!important;border-bottom:0!important;border-radius:8px 8px 0 0!important;background:#fafcfa!important;color:#a1a9a3!important;font-size:8px!important}.front-site .match-accordion-list{border-radius:0 0 8px 8px!important}.front-site .match-accordion{border-color:var(--v12-line)!important;background:#fff!important;box-shadow:none!important}.front-site .match-accordion:hover{background:#fbfdfb!important}.front-site .match-toggle{color:#48534b!important}.front-site .match-toggle .status-badge,.front-site .status-badge{border-radius:3px!important;font-size:8px!important}.front-site .match-expanded{background:#fbfcfb!important;border-top-color:#eef1ef!important}

/* Match detail */
.front-site .match-data-v2{padding:0!important;overflow:hidden}.front-site .match-data-titlebar{padding:22px 24px!important;background:#fff!important;border-bottom:1px solid var(--v12-line)!important;color:#2b342e!important}.front-site .match-data-titlebar h2{color:#28312b!important}.front-site .match-data-titlebar p{color:#929a94!important}.front-site .match-data-titlebar>span{background:#f0faf3!important;color:#5ea374!important;border:1px solid #dcefe2!important}.front-site .team-vs-title .team-logo,.front-site .team-vs-title .team-logo-fallback{border-color:#eef1ef!important;background:#fff!important}.front-site .match-basic-strip,.front-site .match-score-strip{background:#fbfcfb!important;border-color:#eef1ef!important}.front-site .match-basic-item,.front-site .match-score-strip>div{border-color:#eef1ef!important}.front-site .match-basic-item span,.front-site .match-score-strip span{color:#a0a8a2!important}.front-site .match-basic-item strong,.front-site .match-score-strip strong{color:#48534b!important}.front-site .match-context-block{background:#fff!important;border-color:#eef1ef!important}.front-site .match-odds-board{background:#fff!important}.front-site .match-odds-group{border-color:#eef1ef!important;background:#fbfcfb!important}.front-site .match-odds-group h3{color:#5e6961!important}.front-site .match-odds-values span{border-color:#edf1ee!important;background:#fff!important}.front-site .match-risk-note{margin:0!important;padding:12px 22px!important;border-top:1px solid #eef1ef!important;background:#fafcfa!important;color:#a2aaa4!important;font-size:8px!important}.front-site .prediction-card{border-color:var(--v12-line)!important;box-shadow:none!important}.front-site .prediction-top{gap:15px!important}.front-site .prediction-main h3{color:#303932!important}.front-site .stats-inline span{background:#f8fbf9!important;color:#78837b!important;border-color:#e8eeea!important}.front-site .points-price{color:#5ca873!important}.front-site .red-order-ribbon{background:#5caf74!important}
.front-site .match-comments-card{margin-top:28px!important}.front-site .member-section-title h2{color:#2c342e!important}.front-site .match-comment-form{background:#fbfcfb!important;border-color:#eef1ef!important}.front-site .match-comment-item{border-color:#eef1ef!important}.front-site .comment-avatar{background:#eef9f2!important;color:#5aa270!important}.front-site .comment-body header em{background:#eef9f2!important;color:#5aa270!important}

/* Prediction page */
.front-site .prediction-detail-hero{padding:26px 0 0!important;border-bottom:0!important}.front-site .prediction-detail-hero::before{content:none}.front-site .prediction-hero-grid{gap:22px!important}.front-site .prediction-hero-copy{padding:24px!important;border:1px solid var(--v12-line)!important;border-radius:10px!important;background:#fff!important;box-shadow:var(--v12-shadow-soft)!important}.front-site .prediction-author-line strong{color:#343d36!important}.front-site .prediction-author-line span{color:#9ca49f!important}.front-site .prediction-detail-hero h1{margin-top:15px!important;color:#242c26!important;font-size:27px!important}.front-site .prediction-meta-pills span{border-color:#e6ece8!important;background:#fafcfa!important;color:#87918a!important}.front-site .prediction-author-intro{color:#89928c!important}.front-site .prediction-match-card{border:1px solid var(--v12-line)!important;border-radius:10px!important;background:#fff!important;box-shadow:var(--v12-shadow-soft)!important}.front-site .prediction-match-card-head{border-color:#eef1ef!important;background:#fbfcfb!important}.front-site .prediction-match-card-head span{color:#5f6a62!important}.front-site .prediction-match-card-head em{color:#67a779!important}.front-site .prediction-match-score b{color:#4e5a51!important}.front-site .prediction-stats-bar{margin-top:12px!important;border:1px solid var(--v12-line)!important;border-radius:9px!important;background:#fbfcfb!important;box-shadow:none!important}.front-site .prediction-stats-bar span{border-color:#edf1ee!important}.front-site .prediction-stats-bar em{color:#9ca49f!important}.front-site .prediction-stats-bar strong{color:#56625a!important}.front-site .prediction-content-shell{max-width:900px!important;margin:24px auto 0!important}.front-site .prediction-reading-card{padding:28px!important}.front-site .viewpoint-section-title>span{background:#eef9f2!important;color:#5ca973!important}.front-site .viewpoint-section-title h2{color:#2d352f!important}.front-site .viewpoint-section-title p{color:#a0a8a2!important}.front-site .viewpoint-prose{color:#515c54!important}.front-site .viewpoint-section{border-color:#eef1ef!important}.front-site .viewpoint-direction-value{border-color:#dfeee4!important;background:#f5fbf7!important;color:#4e9d67!important}.front-site .ended-open-note{border-color:#dfeee4!important;background:#f5fbf7!important;color:#629272!important}.front-site .redesigned-paywall{border:1px solid #dceee2!important;background:#f6fbf7!important;box-shadow:none!important}.front-site .paywall-copy>span{background:#eaf8ef!important;color:#5ba571!important}.front-site .paywall-copy h3{color:#303a32!important}.front-site .paywall-main-copy,.front-site .paywall-sub-copy{color:#7f8a82!important}

/* Rankings + generic tables */
.front-site .table-wrap{border:1px solid var(--v12-line)!important;border-radius:9px!important;background:#fff!important;box-shadow:var(--v12-shadow-soft)!important;overflow:hidden}.front-site table{width:100%;border-collapse:collapse!important}.front-site table thead th{padding:11px 13px!important;border-color:#edf1ee!important;background:#fafcfa!important;color:#929b95!important;font-size:8px!important;font-weight:800!important}.front-site table tbody td{padding:12px 13px!important;border-color:#eef1ef!important;color:#5a655d!important;font-size:9px!important}.front-site table tbody tr:hover{background:#fbfdfb!important}.front-site table a{color:#55a26d!important;font-weight:800}.front-site .rank-expert-cell strong{color:#374139!important}

/* Article */
.front-site .article-detail{max-width:880px!important;margin:0 auto!important;padding:30px!important}.front-site .article-detail h1{color:#242c26!important;font-size:29px!important}.front-site .article-detail-author{border-color:#edf1ee!important;background:#fbfcfb!important}.front-site .article-summary{border-left:3px solid #a8d9b7!important;background:#f8fcf9!important;color:#69746c!important}.front-site .article-content{color:#4a554d!important;font-size:14px!important;line-height:2!important}

/* Auth */
.front-site .auth-panel{max-width:930px!important;margin:42px auto 0!important;border:1px solid var(--v12-line)!important;border-radius:12px!important;background:#fff!important;box-shadow:var(--v12-shadow)!important;overflow:hidden}.front-site .auth-visual{background:linear-gradient(145deg,#0b2215,#153b22)!important;color:#fff!important}.front-site .auth-visual::before{background:radial-gradient(circle at 70% 35%,rgba(76,194,105,.24),transparent 33%)!important}.front-site .auth-badge{border-color:rgba(255,255,255,.18)!important;background:rgba(255,255,255,.06)!important;color:#85d79d!important}.front-site .auth-visual h1{color:#fff!important}.front-site .auth-visual p{color:rgba(255,255,255,.68)!important}.front-site .auth-form-card{border:0!important;background:#fff!important;box-shadow:none!important}.front-site .auth-form-card h2{color:#2a332c!important}.front-site .auth-form-card label{color:#737d76!important}.front-site .auth-link a{color:#54a36c!important}

/* User center */
.front-site .member-page-hero{margin-top:-36px!important;background:linear-gradient(135deg,#f8fcf9,#f0faf4)!important;color:#2d372f!important;border-bottom:1px solid #e6eee8!important}.front-site .member-page-hero::before{display:none!important}.front-site .member-page-hero-inner{padding-top:34px!important;padding-bottom:34px!important}.front-site .member-page-hero-inner>span{color:#7daa8a!important}.front-site .member-page-hero h1{color:#2a332c!important}.front-site .member-page-hero p{color:#7c8880!important}.front-site .member-layout-v9{gap:14px!important}.front-site .member-sidebar-v9,.front-site .member-profile-card-v9,.front-site .member-content-card-v9,.front-site .member-quick-card-v9,.front-site .member-notice-card-v9,.front-site .member-security-card-v9,.front-site .member-signin-card-v9{border:1px solid var(--v12-line)!important;border-radius:9px!important;background:#fff!important;box-shadow:var(--v12-shadow-soft)!important}.front-site .member-side-profile{background:#fbfcfb!important;border-color:#eef1ef!important}.front-site .member-side-profile>span,.front-site .member-profile-avatar{background:#eef9f2!important;color:#5ca773!important}.front-site .member-sidebar-v9 nav a{color:#6d7870!important;border-color:transparent!important}.front-site .member-sidebar-v9 nav a.active,.front-site .member-sidebar-v9 nav a:hover{background:#f3faf5!important;color:#4c9c65!important;border-color:#e1efe5!important}.front-site .member-profile-card-v9{background:#fff!important}.front-site .member-profile-main h2{color:#2e3831!important}.front-site .member-status-badge{background:#eef9f2!important;color:#5aa270!important}.front-site .member-stat-grid-v9>div{border:1px solid var(--v12-line)!important;background:#fff!important;box-shadow:var(--v12-shadow-soft)!important}.front-site .member-stat-grid-v9 i{color:#66a97a!important}.front-site .member-stat-grid-v9 strong{color:#4e5b52!important}.front-site .member-signin-card-v9{background:linear-gradient(135deg,#f7fcf8,#f1faf4)!important}.front-site .signin-calendar{background:#fff!important;border-color:#dcebe1!important}.front-site .signin-calendar strong{color:#5da773!important}.front-site .signin-content h2,.front-site .member-section-head-v9 h2{color:#2f3932!important}.front-site .signin-label,.front-site .member-section-head-v9 span{color:#65a979!important}.front-site .member-task-grid-v9>div{border-color:#e8eeea!important;background:#fbfcfb!important}.front-site .member-task-grid-v9 i{background:#eef9f2!important;color:#60a675!important}.front-site .member-comment-history-v9 a{border-color:#edf1ee!important}.front-site .comment-match-icon{background:#eef9f2!important;color:#5ca773!important}.front-site .unlock-state{background:#eef9f2!important;color:#5aa270!important}

/* old premium classes: force them into the new visual system if any remain */
.front-site .experts-premium-hero,.front-site .featured-analyst-board,.front-site .premium-analyst-card,.front-site .expert-premium-hero-card,.front-site .expert-history-board,.front-site .expert-side-board{border-color:var(--v12-line)!important;background:#fff!important;color:var(--v12-text)!important;box-shadow:var(--v12-shadow-soft)!important}.front-site .experts-premium-hero h1,.front-site .featured-analyst-board h2,.front-site .premium-analyst-card h3,.front-site .expert-premium-hero-card h1,.front-site .expert-premium-aside h3{color:#29322b!important}.front-site .experts-premium-hero p,.front-site .featured-analyst-board p,.front-site .premium-analyst-card p,.front-site .expert-premium-hero-card p,.front-site .expert-premium-aside p{color:#8c958f!important}

@media(max-width:1100px){
  .v12-home-hero-inner{grid-template-columns:minmax(0,1fr) 220px;gap:36px}
  .v12-home-hero h1{font-size:38px}
  .v12-experts-page-grid{grid-template-columns:repeat(2,1fr)}
  .v12-expert-profile-hero{grid-template-columns:1fr}.v12-expert-hero-stats{justify-self:start}
}
@media(max-width:900px){
  .front-site .v12-main-nav a,.front-site.route-home .v12-main-nav a{padding:0 10px!important;font-size:11px!important}.front-site .v12-main-nav a::after{left:10px;right:10px}
  .v12-home-hero-inner{grid-template-columns:1fr;min-height:430px}.v12-focus-card{width:270px;justify-self:end;margin-top:-84px}
  .v12-feature-grid{grid-template-columns:repeat(2,1fr)}
  .v12-analyst-grid{grid-template-columns:repeat(3,1fr)}
  .v12-stats-grid{grid-template-columns:1fr}
  .v12-history-row{grid-template-columns:60px 70px minmax(0,1fr) 60px 55px 62px}
  .v12-free-flow{grid-template-columns:repeat(5,1fr)}.v12-free-flow>strong{display:none}
}
@media(max-width:760px){
  .front-site .v12-nav-wrap{min-height:58px!important;padding-top:8px!important;padding-bottom:8px!important;flex-wrap:wrap}.front-site .v12-brand .brand-logo{width:29px!important;height:29px!important}.front-site .v12-brand .brand-copy b{font-size:16px!important}
  .front-site .mobile-nav-toggle{display:block}.front-site .v12-main-nav,.front-site.route-home .v12-main-nav{display:none!important;order:10;width:100%;height:auto!important;margin:0!important;padding-top:5px}.front-site .site-header.nav-open .v12-main-nav{display:grid!important;grid-template-columns:repeat(2,1fr);gap:6px}.front-site .v12-main-nav a{min-height:38px!important;padding:0 10px!important;border:1px solid #edf1ee!important;border-radius:6px;background:#fff!important}.front-site .v12-main-nav a::after{display:none}.front-site .v12-header-actions{margin-left:0}.front-site .header-user b,.front-site .header-logout,.front-site .header-login-link{display:none}
  .v12-home-hero{min-height:475px}.v12-home-hero-inner{min-height:475px;padding-top:44px;padding-bottom:44px}.v12-home-hero h1{font-size:32px}.v12-home-hero-copy>p{font-size:12px}.v12-focus-card{width:230px;margin-top:-55px}
  .v12-home-section{padding-top:56px}.v12-section-head{align-items:flex-start;flex-direction:column;gap:8px}.v12-filter-pills{flex-wrap:wrap}.v12-analyst-grid{grid-template-columns:repeat(2,1fr)}
  .v12-history-table{overflow-x:auto}.v12-history-row{min-width:660px}
  .v12-free-flow{grid-template-columns:repeat(2,1fr)}.v12-free-flow article:last-child{grid-column:1/-1}
  .v12-experts-page-grid{grid-template-columns:1fr}.v12-expert-profile-main{align-items:flex-start}.v12-expert-hero-stats{grid-template-columns:repeat(3,1fr);width:100%}
  .front-site .filter-bar{align-items:stretch!important;flex-direction:column!important}.front-site .match-table-head{display:none!important}
  .front-site .prediction-hero-grid{grid-template-columns:1fr!important}.front-site .prediction-stats-bar{grid-template-columns:repeat(2,1fr)!important}
  .v12-footer-row{grid-template-columns:1fr;text-align:center;padding-top:14px;padding-bottom:14px}.v12-footer-brand,.v12-footer-links{justify-content:center}.v12-footer-center{order:3}
}
@media(max-width:520px){
  .front-site .container{padding-left:16px;padding-right:16px}
  .front-site .header-register{min-width:72px;height:30px;padding:0 11px;font-size:10px!important}
  .v12-home-hero{background-position:60% 54%}.v12-home-hero-inner{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:18px}.v12-hero-eyebrow{font-size:7px}.v12-home-hero h1{font-size:27px;line-height:1.42}.v12-home-hero-copy>p{font-size:11px}.v12-hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.v12-btn{min-width:0;width:100%;font-size:10px}.v12-focus-card{align-self:flex-end;width:220px;margin:0}.v12-feature-section{padding-top:30px}.v12-feature-grid{grid-template-columns:1fr 1fr;gap:8px}.v12-feature-grid article{min-height:92px;padding:14px 10px;gap:9px}.v12-feature-grid article>i{width:34px;height:34px;font-size:14px}.v12-feature-grid b{font-size:11px}.v12-feature-grid span{font-size:7px}.v12-section-head h2{font-size:19px}.v12-home-section{padding-top:48px}.v12-analyst-grid{grid-template-columns:1fr 1fr}.v12-stat-card{padding:16px 13px}.v12-free-panel{padding:16px 12px}.v12-free-flow{grid-template-columns:1fr}.v12-free-flow article:last-child{grid-column:auto}.v12-bottom-cta h2{font-size:20px}.v12-bottom-cta-inner>div{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .v12-expert-profile-hero{padding:20px}.v12-expert-profile-main{flex-direction:column}.v12-expert-hero-stats{grid-template-columns:1fr 1fr 1fr}.v12-expert-hero-stats span{padding:10px 4px}.front-site .page-title h1{font-size:24px!important}
  .front-site .article-detail{padding:20px!important}.front-site .prediction-reading-card{padding:20px!important}
}
