:root {
  --bg:#f6f1e8;
  --ink:#0a1a1c;
  --nav:#001b1f;
  --nav-2:#02262b;
  --panel:#062d31;
  --panel-2:#093b3c;
  --line:#1e5554;
  --line-soft:rgba(210,181,106,.22);
  --gold:#dcb56a;
  --gold-2:#f0ce86;
  --green:#08734f;
  --green-2:#0f9469;
  --cream:#f6f1e8;
  --muted:#97aaa6;
  --text:#f7f5ef;
  --danger:#e24949;
  --cyan:#24d7c7;
  --shadow:0 18px 45px rgba(0,0,0,.20);
  --shadow-soft:0 8px 24px rgba(0,0,0,.14);
  --radius:18px;
  --radius-sm:12px;
  --sidebar:230px;
  --rightbar:250px;
}
*{box-sizing:border-box}
html{min-width:320px;min-height:100%;background:var(--bg)}
body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);font-family:Tahoma,Arial,"Segoe UI",sans-serif;overflow-x:hidden}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
svg{display:block}
button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:2px}

/* SVG icon system */
.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.icon--sm{width:17px;height:17px}.icon--lg{width:29px;height:29px}

.shell{min-height:100vh;display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);background:var(--bg);direction:ltr}
.sidebar{direction:rtl;position:sticky;top:0;height:100vh;background:linear-gradient(180deg,#00191e,#001218 68%,#071b20);color:var(--text);display:flex;flex-direction:column;border-left:1px solid rgba(220,181,106,.16);overflow:hidden;z-index:20}
.sidebar::after{content:"";position:absolute;inset:auto 0 0;height:44%;background:radial-gradient(ellipse at 50% 100%,rgba(220,181,106,.16),transparent 58%);pointer-events:none}
.sidebar-brand{height:84px;display:flex;align-items:center;gap:12px;padding:0 20px;border-bottom:1px solid rgba(255,255,255,.05);position:relative;z-index:1}
.logo-mark{width:52px;height:52px;border:2px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:31px;box-shadow:inset 0 0 0 4px rgba(220,181,106,.05)}
.brand-title{font-size:20px;font-weight:800;color:#f4d58f}.brand-sub{font-size:11px;color:#d8b66d;margin-top:4px;direction:ltr;text-align:right}
.nav-list{display:grid;gap:6px;padding:18px 13px;position:relative;z-index:1}
.nav-section{font-size:10px;color:#6f8d8c;padding:13px 13px 5px}
.nav-item{display:flex;align-items:center;gap:12px;min-height:48px;padding:0 14px;border:0;border-radius:11px;background:transparent;color:#e9f0ed;text-align:right;transition:.18s ease}
.nav-item:hover{background:#082b30}.nav-item.is-active{background:linear-gradient(90deg,#08714f,#0b805b);box-shadow:inset 0 0 0 1px rgba(255,255,255,.10),0 8px 20px rgba(0,0,0,.15)}
.nav-item__label{flex:1}.nav-badge{min-width:20px;height:20px;border-radius:10px;background:#e74343;color:#fff;display:grid;place-items:center;font-size:10px;padding:0 5px}
.sidebar-art{margin-top:auto;min-height:260px;position:relative;z-index:1;background:linear-gradient(180deg,transparent,rgba(0,0,0,.36)),url("assets/city-line.svg") bottom center/145% auto no-repeat;display:flex;align-items:flex-end;justify-content:center;padding:28px 18px}
.sidebar-art p{margin:0;color:#d6c4a0;font-size:12px;text-align:center;line-height:2}

.main-wrap{direction:rtl;min-width:0;background:radial-gradient(circle at 72% -8%, rgba(28, 87, 119, .16), transparent 33%), radial-gradient(circle at 18% 100%, rgba(17, 111, 83, .10), transparent 30%), linear-gradient(180deg, #081725 0%, #06131f 48%, #05111b 100%);}
.topbar{height:74px;background:linear-gradient(90deg,#001a20,#012c31 52%,#00191f);display:grid;grid-template-columns:minmax(280px,360px) 1fr auto;align-items:center;gap:24px;padding:0 28px;color:white;border-bottom:1px solid rgba(220,181,106,.15);position:sticky;top:0;z-index:15;direction:ltr}
.search{position:relative;direction:rtl}.search input{width:100%;height:40px;border-radius:11px;border:1px solid #285155;background:#092f35;color:#e8f2ef;padding:0 43px 0 14px;outline:none}.search input::placeholder{color:#779392}.search .icon{position:absolute;right:13px;top:10px;color:#8eaaa9}
.city-line{height:58px;background:url("assets/city-line.svg") center/contain no-repeat;opacity:.55;min-width:340px}
.top-user{direction:rtl;display:flex;align-items:center;gap:12px}.top-user__avatar{width:42px;height:42px;border-radius:50%;border:2px solid var(--gold);background:url("assets/avatar.svg") center/cover}.top-user__name{font-size:13px;font-weight:800}.top-user__id{font-size:9px;color:#9bb0ae;margin-top:4px}.top-icon{position:relative;width:40px;height:40px;border:0;background:transparent;color:#d4dfdd;display:grid;place-items:center}.top-icon .badge{position:absolute;top:2px;right:1px;width:17px;height:17px;background:#e24444;color:white;border-radius:50%;font-size:9px;display:grid;place-items:center}

.content{padding:18px 20px 84px;max-width:1540px;margin:0 auto}
.page-grid{display:grid;grid-template-columns:minmax(0,1fr) var(--rightbar);gap:16px;align-items:start;direction:ltr}.page-main,.page-side{direction:rtl}.page-main{min-width:0}.page-side{display:grid;gap:14px}

.card{background:linear-gradient(180deg,#073238,#05272d);color:var(--text);border:1px solid #1b5656;border-radius:14px;box-shadow:var(--shadow-soft);position:relative;overflow:hidden}
.card--light{background:#fff;color:var(--ink);border-color:#e4ded2}.card--gold{border-color:rgba(220,181,106,.42)}
.card-title{margin:0;font-size:15px;font-weight:800}.card-sub{color:var(--muted);font-size:11px;line-height:1.8}
.section-head{display:flex;align-items:center;justify-content:space-between;margin:16px 0 10px}.section-head h2{font-size:15px;margin:0;color:#173338}.section-head a,.link{font-size:10px;color:#356c6b}.dark-section .section-head h2{color:white}

.hero{height:198px;border-radius:14px;border:1px solid #1b5656;background:linear-gradient(90deg,rgba(0,24,29,.96) 0 47%,rgba(0,24,29,.35) 70%,rgba(0,24,29,.74)),radial-gradient(circle at 28% 42%,rgba(220,181,106,.52),transparent 13%),linear-gradient(120deg,#0e302f,#8b5a2f 45%,#111f20);color:#fff;display:flex;align-items:center;position:relative;overflow:hidden;padding:0 42px;box-shadow:var(--shadow)}
.hero::before{content:"♞";position:absolute;left:110px;bottom:-34px;font-size:230px;color:#080e0d;text-shadow:8px 0 0 #c18c42,0 20px 40px rgba(0,0,0,.48);transform:rotate(-5deg);opacity:.92}.hero::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 33%,rgba(255,224,168,.25),transparent 17%),linear-gradient(90deg,transparent 50%,rgba(0,0,0,.16));pointer-events:none}
.hero-copy{position:relative;z-index:2;margin-right:auto;max-width:57%;text-align:right}.hero h1{margin:0 0 12px;font-size:27px}.hero p{margin:0 0 18px;color:#d4dfdb;font-size:13px}.btn{border:0;border-radius:10px;min-height:40px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800}.btn--gold{background:linear-gradient(180deg,#eac374,#d4a853);color:#172020;box-shadow:0 8px 22px rgba(193,142,66,.18)}.btn--green{background:linear-gradient(180deg,#0d8a5d,#06714e);color:#fff;border:1px solid rgba(255,255,255,.10)}.btn--outline{background:#082a30;color:#e9f1ed;border:1px solid #235559}.btn--danger{background:rgba(199,49,49,.13);color:#ff8f8f;border:1px solid rgba(226,73,73,.35)}
.hero-dots{position:absolute;bottom:12px;left:50%;display:flex;gap:6px;z-index:2}.hero-dots i{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.35)}.hero-dots i:first-child{background:#f0d7a4}

.quick-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}.quick-card{min-height:112px;border-radius:13px;padding:18px;display:flex;align-items:center;gap:15px;color:#fff;border:1px solid rgba(255,255,255,.10);position:relative;overflow:hidden;box-shadow:var(--shadow-soft)}.quick-card::after{content:"";position:absolute;width:110px;height:110px;border-radius:50%;right:-48px;top:-48px;background:rgba(255,255,255,.06)}.quick-card--green{background:linear-gradient(135deg,#075b4b,#087f58)}.quick-card--blue{background:linear-gradient(135deg,#063c5b,#0c6690)}.quick-card--purple{background:linear-gradient(135deg,#38265f,#62429b)}.quick-card--navy{background:linear-gradient(135deg,#132b40,#1c405d)}.quick-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;border:2px solid rgba(255,255,255,.15);background:rgba(0,0,0,.10);font-size:26px}.quick-copy{flex:1}.quick-copy strong{display:block;font-size:16px;margin-bottom:7px}.quick-copy small{font-size:10px;color:#d0dcda;line-height:1.6}.quick-arrow{font-size:25px;opacity:.8}

.dashboard-grid{display:grid;grid-template-columns:1.1fr .95fr .85fr;gap:12px;margin-top:14px;direction:ltr}.dashboard-grid>*{direction:rtl}.match-card{min-height:300px;padding:18px;background:linear-gradient(rgba(2,30,34,.76),rgba(2,30,34,.90)),url("../assets/board-scene.png") center 24%/cover no-repeat}.match-card__tag{display:inline-flex;padding:5px 9px;border-radius:7px;background:rgba(220,181,106,.92);color:#13201f;font-size:9px;font-weight:800}.match-card h3{font-size:19px;margin:12px 0 3px}.match-meta{display:flex;gap:15px;color:#c8d5d2;font-size:10px;margin:16px 0}.countdown{font-size:26px;color:#f0cd82;direction:ltr;text-align:center;padding:14px;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);margin:10px 0 14px}.rank-list,.hall-list{padding:14px}.list-row{display:grid;grid-template-columns:26px 36px 1fr auto;align-items:center;gap:8px;min-height:42px;border-bottom:1px solid rgba(255,255,255,.06);font-size:11px}.list-row:last-child{border-bottom:0}.mini-avatar{width:29px;height:29px;border-radius:50%;background:url("assets/avatar.svg") center/cover;border:1px solid rgba(220,181,106,.38)}.rank-num{font-weight:900;color:#eef7f4}.rank-num.top{width:24px;height:24px;border-radius:7px;background:#e2b85e;color:#1f2119;display:grid;place-items:center}.score{direction:ltr;color:#d9e5e2}.score.up{color:#47e39b}.score.down{color:#ff7878}

.news-list{padding:14px}.news-item{display:grid;grid-template-columns:1fr 70px;gap:10px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.06)}.news-item:last-child{border-bottom:0}.news-thumb{height:52px;border-radius:7px;background:linear-gradient(135deg,#8c663c,#102d30);position:relative;overflow:hidden}.news-thumb::after{content:"♞";position:absolute;font-size:47px;color:#d6af68;left:12px;bottom:-9px;opacity:.65}.news-item strong{font-size:10px;line-height:1.7;display:block}.news-item small{color:#759390;font-size:8px}

.profile-panel{padding:14px;text-align:center;background:linear-gradient(180deg,rgba(10,51,56,.98),rgba(4,33,38,.96))}.profile-cover{height:105px;margin:-14px -14px 0;background:linear-gradient(rgba(0,35,39,.28),rgba(0,25,29,.68)),radial-gradient(circle at 75% 28%,rgba(220,181,106,.52),transparent 12%),linear-gradient(135deg,#316d74,#8e683a 55%,#263733);position:relative}.profile-cover::after{content:"";position:absolute;inset:0;background:url("assets/city-line.svg") center bottom/110% auto no-repeat;opacity:.55}.profile-panel .profile-avatar{width:74px;height:74px;border-radius:50%;margin:-37px auto 8px;border:3px solid #d9b76b;background:url("assets/avatar.svg") center/cover;position:relative;z-index:2;box-shadow:0 8px 25px rgba(0,0,0,.3)}.profile-name{font-size:17px;font-weight:900}.profile-id{color:#9fb2af;font-size:10px;margin:4px 0 14px;direction:ltr}.rank-pair{display:grid;grid-template-columns:1fr 1fr;border:1px solid #1b5052;border-radius:10px;overflow:hidden}.rank-box{padding:10px}.rank-box+ .rank-box{border-right:1px solid #1b5052}.rank-box span{font-size:9px;color:#9db0ad}.rank-box strong{display:block;font-size:17px;margin-top:5px}.rating-row{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06)}.rating-row strong{font-size:22px}.tier-chip{padding:7px 10px;border:1px solid rgba(220,181,106,.26);border-radius:9px;background:rgba(126,85,24,.15);color:#f0ce86;font-size:10px}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.08);margin-top:10px}.profile-stats div{background:#062a30;padding:9px 3px}.profile-stats strong{display:block;font-size:14px}.profile-stats span{font-size:8px;color:#9fb2af}

.notice-card{padding:14px}.notice-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.notice-head h3{font-size:13px;margin:0}.notice-head a{color:#8fc8c1;font-size:9px}.notice-item{display:grid;grid-template-columns:1fr 33px;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.06)}.notice-item:last-child{border-bottom:0}.notice-item__icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:rgba(220,181,106,.09);color:var(--gold)}.notice-item strong{display:block;font-size:10px;line-height:1.6}.notice-item small{font-size:8px;color:#789795}

/* generic page */
.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.page-header h1{font-size:21px;margin:0}.page-header p{font-size:11px;color:#6e8582;margin:5px 0 0}.page-actions{display:flex;gap:8px}.surface{background:#fff;border:1px solid #e1dbcf;border-radius:14px;padding:16px;box-shadow:0 10px 28px rgba(27,41,43,.06)}.surface.dark{background:linear-gradient(180deg,#063239,#05262b);border-color:#1c5658;color:white}.tabs{display:flex;gap:4px;padding:4px;background:#ecf0ec;border-radius:10px;margin-bottom:14px}.dark .tabs{background:#08252b}.tab{flex:1;border:0;background:transparent;border-radius:8px;height:34px;color:#617875}.tab.is-active{background:#fff;color:#173537;box-shadow:0 3px 10px rgba(0,0,0,.07)}.dark .tab{color:#a9bfbc}.dark .tab.is-active{background:#0b3940;color:#fff}

.table{width:100%;border-collapse:collapse}.table th,.table td{padding:11px 9px;text-align:right;border-bottom:1px solid #ece7de;font-size:11px}.table th{font-size:9px;color:#7b8b88}.dark .table th,.dark .table td{border-bottom-color:rgba(255,255,255,.07)}.dark .table th{color:#8ca5a2}.table tr:last-child td{border-bottom:0}

.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.stat-card{padding:16px}.stat-card__top{display:flex;justify-content:space-between;align-items:center}.stat-card__icon{width:43px;height:43px;border-radius:12px;display:grid;place-items:center;background:rgba(220,181,106,.13);color:var(--gold)}.stat-card strong{display:block;font-size:22px;margin:10px 0 3px}.stat-card span{font-size:10px;color:var(--muted)}

.league-card{padding:15px;display:flex;align-items:center;justify-content:space-between;gap:12px}.league-badge{width:54px;height:54px;clip-path:polygon(50% 0,90% 22%,90% 72%,50% 100%,10% 72%,10% 22%);display:grid;place-items:center;color:#fff;font-weight:900;background:linear-gradient(145deg,#bd743b,#7b421e)}.league-card:nth-child(2) .league-badge{background:linear-gradient(145deg,#c4cbd0,#69757a)}.league-card:nth-child(3) .league-badge{background:linear-gradient(145deg,#e7ac38,#986213)}.league-card:nth-child(4) .league-badge{background:linear-gradient(145deg,#3a8ed0,#205783)}.league-card:nth-child(5) .league-badge{background:linear-gradient(145deg,#755398,#3a2b55)}.league-copy{flex:1}.league-copy strong{display:block;font-size:13px}.league-copy small{color:#91aaa6;font-size:9px}.league-range{font-size:10px;color:#c8d5d2;direction:ltr}

.medal-list{display:grid;gap:10px}.medal-item{display:grid;grid-template-columns:46px 1fr auto;align-items:center;gap:12px;padding:12px;border-radius:11px;background:#082e34;border:1px solid #174d4e;color:white}.medal-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#efc66e 0 38%,#b26d2d 41% 65%,transparent 67%);color:#1c271f;font-weight:900}.medal-item strong{font-size:12px}.medal-item small{display:block;color:#8fa8a5;font-size:9px;margin-top:3px}.medal-count{font-size:11px;color:#f1d28d}

.settings-list{display:grid;gap:9px}.settings-row{display:grid;grid-template-columns:42px 1fr auto;gap:11px;align-items:center;padding:12px;border-radius:11px;border:1px solid #e5dfd4;background:#fff}.settings-row__icon{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:#eef4f1;color:#28645e}.settings-row strong{font-size:12px}.settings-row small{display:block;font-size:9px;color:#7d8d8a;margin-top:3px}.chev{font-size:20px;color:#9aaba7}

.auth-shell{min-height:100vh;background:linear-gradient(180deg,#001d20,#002b2a 52%,#f6f1e8 52%);display:grid;place-items:center;padding:24px}.auth-card{width:min(430px,100%);background:#fff;border-radius:24px;padding:28px;box-shadow:0 28px 80px rgba(0,0,0,.28);color:#173233}.auth-logo{display:grid;place-items:center;margin-bottom:20px}.auth-logo .logo-mark{background:#06262b}.auth-card h1{text-align:center;font-size:22px;margin:0 0 7px}.auth-card>p{text-align:center;font-size:11px;color:#6e8380;margin:0 0 20px}.segmented{display:flex;background:#edf1ed;border-radius:10px;padding:4px;margin-bottom:16px}.segmented button{flex:1;height:35px;border:0;border-radius:8px;background:transparent;color:#5c7470}.segmented button.active{background:#fff;color:#173233;box-shadow:0 2px 8px rgba(0,0,0,.08)}.field{display:grid;gap:6px;margin-bottom:11px}.field label{font-size:10px;color:#536966}.field input,.field select{height:42px;border-radius:9px;border:1px solid #d7dfda;background:#fbfcfb;padding:0 12px;outline:none;color:#1b3737}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.social-row{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:10px}.social-btn{height:39px;border-radius:9px;border:1px solid #dbe2dd;background:white;color:#4d6461}.auth-foot{text-align:center;font-size:9px;color:#7c908d;margin-top:14px}

.splash{min-height:100vh;background:radial-gradient(circle at 50% 18%,#07514c,#002a2d 34%,#00181e 72%);display:grid;place-items:center;color:#f6d895;position:relative;overflow:hidden}.splash::before{content:"";position:absolute;inset:0;background:url("assets/city-line.svg") center bottom/90% auto no-repeat;opacity:.23}.splash-center{text-align:center;position:relative;z-index:1}.splash-center .logo-mark{width:96px;height:96px;font-size:60px;margin:0 auto 14px}.splash-center h1{font-size:30px;margin:0}.splash-center p{font-size:12px;color:#d8c28f;margin-top:7px}.splash-center .line{width:110px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:28px auto}

.admin-layout{display:grid;grid-template-columns:190px 1fr;min-height:720px;background:#f4f0e8;border-radius:16px;overflow:hidden;border:1px solid #ddd6c9}.admin-side{background:#05272d;color:white;padding:14px}.admin-side h3{margin:0 0 14px;color:#e4c377}.admin-nav{display:grid;gap:5px}.admin-nav button{border:0;background:transparent;color:#c2d1cd;border-radius:8px;text-align:right;height:38px;padding:0 10px}.admin-nav button.active{background:#0a4b52;color:#fff}.admin-content{padding:18px}.admin-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.admin-card{background:#fff;border-radius:11px;padding:14px;border:1px solid #e0dbd1}.admin-card span{font-size:9px;color:#71847f}.admin-card strong{display:block;font-size:20px;margin-top:6px}

.bottom-nav{display:none}
.mobile-top{display:none}
.toast-root{position:fixed;bottom:22px;left:22px;z-index:100;display:grid;gap:8px}.toast{background:#062d31;color:white;border:1px solid #2f6865;border-radius:11px;padding:11px 14px;box-shadow:var(--shadow);font-size:11px;animation:toastIn .25s ease}
@keyframes toastIn{from{transform:translateY(8px);opacity:0}to{transform:none;opacity:1}}

@media(max-width:1180px){:root{--sidebar:200px;--rightbar:220px}.quick-row{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr 1fr}.dashboard-grid>*:last-child{grid-column:1/-1}.city-line{min-width:250px}.hero-copy{max-width:68%}}
@media(max-width:940px){.shell{display:block}.sidebar{display:none}.main-wrap{min-height:100vh}.topbar{display:none}.mobile-top{display:flex;height:64px;background:#002529;color:#fff;align-items:center;justify-content:space-between;padding:0 14px;position:sticky;top:0;z-index:15;border-bottom:1px solid rgba(220,181,106,.18)}.mobile-brand{display:flex;align-items:center;gap:9px}.mobile-brand .logo-mark{width:38px;height:38px;font-size:22px}.mobile-title{font-size:15px;font-weight:800;color:#f3d18b}.content{padding:12px 12px 82px}.page-grid{display:block}.page-side{margin-top:12px}.bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);height:66px;position:fixed;bottom:0;left:0;right:0;background:#00262a;color:#c8d7d3;z-index:30;border-top:1px solid rgba(220,181,106,.18);padding:5px 6px calc(5px + env(safe-area-inset-bottom))}.bottom-nav button{border:0;background:transparent;color:inherit;display:grid;place-items:center;align-content:center;gap:3px;font-size:8px}.bottom-nav button.is-active{color:#f0c875}.bottom-nav .icon{width:20px;height:20px}.hero{height:175px;padding:0 24px}.hero h1{font-size:22px}.hero::before{font-size:170px;left:50px}.quick-row{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.dashboard-grid>*:last-child{grid-column:auto}.grid-4{grid-template-columns:1fr 1fr}.admin-layout{grid-template-columns:1fr}.admin-side{display:none}}
@media(max-width:560px){body{background:#f7f3eb}.content{padding:10px 10px 78px}.mobile-top{height:58px}.hero{height:150px;border-radius:12px;padding:0 16px}.hero-copy{max-width:78%}.hero h1{font-size:17px;margin-bottom:8px}.hero p{font-size:9px;margin-bottom:12px}.hero .btn{min-height:34px;padding:0 15px;font-size:10px}.hero::before{font-size:125px;left:14px;bottom:-20px}.quick-row{grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}.quick-card{min-height:100px;padding:12px;gap:9px}.quick-icon{width:43px;height:43px;font-size:20px}.quick-copy strong{font-size:12px}.quick-copy small{font-size:8px}.quick-arrow{display:none}.dashboard-grid{gap:9px;margin-top:9px}.match-card{min-height:250px}.page-side .notice-card{display:none}.page-header h1{font-size:17px}.page-header p{font-size:9px}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.field-row{grid-template-columns:1fr}.surface{padding:12px}.table th,.table td{padding:9px 5px;font-size:9px}.admin-cards{grid-template-columns:1fr 1fr}}

/* =========================================================
   HOME V2 — visual match for supplied desktop reference
   Scoped to .home-shell so chess/game page remains untouched.
   ========================================================= */
.home-shell{
  --sidebar:270px;
  --rightbar:332px;
  min-height:100vh;
  background:#071321;
}
.home-shell .main-wrap{
  background:
    radial-gradient(circle at 55% -10%,rgba(36,91,123,.14),transparent 32%),
    linear-gradient(180deg,#071523 0%,#06121f 100%);
  color:#eef5f6;
}
.home-shell .topbar{
  height:74px;
  grid-template-columns:378px 1fr auto;
  background:linear-gradient(90deg,#081522,#0b1d2e 55%,#07131f);
  border-bottom:1px solid #173147;
  box-shadow:0 7px 24px rgba(0,0,0,.16);
  padding:0 26px 0 22px;
}
.home-shell .topbar .city-line{display:none}
.home-shell .search input{
  height:46px;
  border-radius:14px;
  background:#0d2031;
  border:1px solid #1b374c;
  color:#dbe8ed;
  padding-right:50px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.015);
}
.home-shell .search input::placeholder{color:#73889a}
.home-shell .search .icon{right:17px;top:12px;color:#91a6b6;width:24px;height:24px}
.home-shell .top-user__avatar{width:45px;height:45px;border:2px solid #4b6d85;box-shadow:0 0 0 3px rgba(255,255,255,.03)}
.home-shell .top-user__name{font-size:14px}.home-shell .top-user__id{font-size:10px;color:#7f96a6}
.home-shell .top-icon{color:#a8bdd0}

.home-shell .sidebar{
  background:linear-gradient(180deg,#06131f 0%,#06111d 68%,#071521 100%);
  border-left:1px solid #173044;
  box-shadow:10px 0 34px rgba(0,0,0,.14);
}
.home-shell .sidebar::after{display:none}
.home-shell .sidebar-brand{height:96px;padding:0 28px;border-bottom:0;gap:16px}
.home-shell .logo-mark{width:62px;height:62px;border-color:#e8bd66;color:#f0c973;font-size:36px;background:rgba(8,19,29,.65);box-shadow:inset 0 0 0 4px rgba(232,189,102,.035)}
.home-shell .brand-title{font-size:24px;color:#f2d07f;white-space:nowrap}.home-shell .brand-sub{font-size:12px;color:#e4b95e}
.home-shell .nav-list{padding:12px 16px;gap:5px}
.home-shell .nav-item{min-height:50px;border-radius:11px;padding:0 17px;color:#e1e7e9;font-size:14px;gap:15px}
.home-shell .nav-item:hover{background:#0a1d2b}
.home-shell .nav-item.is-active{
  color:#fff;
  background:linear-gradient(100deg,#997234,#ddb86d 65%,#e2c17c);
  box-shadow:inset 0 0 0 1px rgba(255,238,194,.24),0 10px 26px rgba(147,102,41,.18);
}
.home-shell .nav-item.is-active .icon{stroke:#fff}
.home-shell .nav-section{height:26px;padding:0;margin:10px 10px 2px;border-top:1px solid #284254;font-size:0}
.home-shell .nav-badge{background:#ef454b;font-size:10px}
.home-shell .sidebar-art{
  min-height:370px;
  padding:0;
  align-items:flex-end;
  background:
    linear-gradient(180deg,rgba(6,17,29,1) 0%,rgba(6,17,29,.16) 13%,rgba(6,17,29,.10) 62%,rgba(6,17,29,.98) 100%),
    url("assets/city-photo.jpg") center 18%/cover no-repeat;
}
.home-shell .sidebar-art p{font-size:0;padding:0 20px 42px;color:#d8bd82;line-height:1.9}
.home-shell .sidebar-art p::before{content:"نیشابور";display:block;font-size:17px;color:#e8c56f;margin-bottom:3px}
.home-shell .sidebar-art p::after{content:"شهر ادب، علم و شطرنج";display:block;font-size:12px;color:#81939e}

.home-shell .content{max-width:none;padding:18px 20px 28px;background:transparent}
.home-dashboard.page-grid{grid-template-columns:minmax(0,1fr) var(--rightbar);gap:18px;direction:ltr}
.home-dashboard .page-main,.home-dashboard .page-side{direction:rtl}
.home-dashboard .page-side{gap:18px}

.home-hero{
  height:220px;
  position:relative;
  overflow:hidden;
  border-radius:14px;
  border:1px solid #26425b;
  background:#0a1a29;
  box-shadow:0 14px 32px rgba(0,0,0,.20);
}
.home-hero__media{position:absolute;inset:0;left:0;width:63%;background:url("assets/hero-photo.jpg") left center/cover no-repeat;transform:scale(1.01)}
.home-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,15,24,.03) 0%,rgba(5,15,24,.14) 40%,rgba(5,15,24,.88) 65%,#071522 82%,#071522 100%)}
.home-hero__copy{position:absolute;right:34px;top:32px;width:54%;z-index:3;text-align:right}
.home-hero__copy h1{font-size:27px;line-height:1.45;margin:0 0 9px;color:#fff;font-weight:900}
.home-hero__copy p{margin:0;color:#c5d0d6;font-size:14px}
.home-hero__button{margin-top:28px;min-width:186px;height:48px;font-size:15px;border-radius:11px}
.home-arrow{font-size:24px;line-height:1;transform:translateY(-1px)}
.home-hero__nav{position:absolute;left:19px;top:50%;transform:translateY(-50%);z-index:4;width:36px;height:46px;border:0;background:transparent;color:#fff;font-size:42px;font-weight:200;text-shadow:0 1px 8px #000}
.home-shell .hero-dots{bottom:9px;left:50%;transform:translateX(-50%);gap:7px}
.home-shell .hero-dots i{width:8px;height:8px}.home-shell .hero-dots i:first-child{background:#fff}

.home-quick-row{margin-top:17px;gap:15px}
.home-quick-row .quick-card{height:126px;min-height:126px;border-radius:12px;padding:15px 18px;gap:14px;border-color:rgba(110,171,208,.25);box-shadow:0 9px 24px rgba(0,0,0,.16);text-align:right}
.home-quick-row .quick-card--green{background:linear-gradient(135deg,#075147,#064239 65%,#06332e)}
.home-quick-row .quick-card--blue{background:linear-gradient(135deg,#0c3c67,#0b3158 67%,#0a2847)}
.home-quick-row .quick-card--purple{background:linear-gradient(135deg,#3a245f,#392457 65%,#28203f)}
.home-quick-row .quick-card--navy{background:linear-gradient(135deg,#172e45,#14273b 65%,#102132)}
.home-quick-row .quick-icon{width:72px;height:72px;flex:0 0 72px;border:2px solid currentColor;background:rgba(3,12,20,.23);font-size:31px;box-shadow:inset 0 0 26px rgba(255,255,255,.05),0 0 20px rgba(14,216,175,.11)}
.home-quick-row .quick-copy strong{font-size:17px;margin-bottom:7px}.home-quick-row .quick-copy small{font-size:10px;color:#d0d9df}
.home-quick-row .quick-arrow{font-size:30px;color:#d5e0e5}

.home-mid-grid{display:grid;grid-template-columns:1.06fr 1fr;gap:16px;margin-top:18px;direction:ltr}.home-mid-grid>*{direction:rtl}
.home-shell .card{background:linear-gradient(180deg,#0a1d2b,#081824);border:1px solid #244158;border-radius:14px;box-shadow:0 10px 28px rgba(0,0,0,.14)}
.target-card-head{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 14px 0 16px}
.target-card-head h3{font-size:14px;margin:0;color:#eef4f6}.target-card-head a{font-size:9px;color:#8fa6b5;cursor:pointer}
.target-match-card{min-height:326px;padding:0;overflow:hidden}
.target-match-body{margin:0 12px 12px;height:270px;border:1px solid #29465b;border-radius:11px;overflow:hidden;background:linear-gradient(90deg,rgba(7,20,32,.96) 0%,rgba(7,20,32,.80) 47%,rgba(7,20,32,.18)),url("assets/city-photo.jpg") right 34%/cover no-repeat;position:relative}
.target-match-body::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(6,17,29,.75));pointer-events:none}
.target-match-copy{position:relative;z-index:2;padding:21px 20px;width:72%}
.target-match-title{display:flex;align-items:center;gap:13px}.target-cup{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;font-size:28px;background:rgba(169,106,24,.20);border:1px solid rgba(229,175,76,.55);box-shadow:0 0 24px rgba(214,157,56,.14)}
.target-match-title strong{font-size:19px}.target-match-title small{display:block;font-size:11px;color:#c5d1d6;margin-top:5px}
.target-match-meta{display:flex;gap:19px;margin-top:18px;color:#c1ced4;font-size:10px}
.target-countdown{margin-top:16px;width:235px;height:64px;border:1px solid #345066;border-radius:11px;display:grid;place-items:center;align-content:center;direction:ltr;background:rgba(6,21,31,.45)}
.target-countdown strong{font-size:23px;letter-spacing:2px;color:#f0c877}.target-countdown span{font-size:8px;color:#9cabb5;direction:rtl;margin-top:4px}
.target-register{position:absolute;right:20px;bottom:18px;width:270px;height:42px}

.target-ranking-card{min-height:326px;padding:0 12px 11px}
.target-ranking-card .target-card-head{padding:0 2px}
.target-tabs{height:31px;border:1px solid #29465a;border-radius:7px;display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;margin:2px 0 5px}
.target-tabs button{border:0;background:#0b1d2a;color:#a8b8c2;font-size:9px;border-left:1px solid #223e53}.target-tabs button:first-child{border-left:0}.target-tabs button.is-active{background:#112b40;color:#fff;box-shadow:inset 0 0 0 1px #355b76}
.target-table-head{display:grid;grid-template-columns:28px 1fr 65px;align-items:center;padding:8px 5px 5px;color:#8499a8;font-size:8px;border-bottom:1px solid #1f3545}
.target-rank-row{display:grid;grid-template-columns:28px 32px 1fr 65px;align-items:center;gap:6px;height:47px;border-bottom:1px solid rgba(255,255,255,.05);font-size:10px}.target-rank-row:last-child{border-bottom:0}.target-rank-row strong{font-weight:600;color:#edf3f5}.target-rating{text-align:left;color:#e7eef0;direction:ltr}.target-rank-no{font-size:11px;text-align:center}.target-rank-no.podium{width:23px;height:23px;display:grid;place-items:center;border-radius:7px;background:linear-gradient(180deg,#e4bf68,#a56c25);color:#1d2022;font-weight:900}

.today-card{margin-top:18px;padding:0 14px 15px;min-height:170px}.today-card .target-card-head{padding:0 0}.today-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.today-event{height:112px;border-radius:10px;padding:11px 12px;border:1px solid #294356;background:#0b1d2b;display:flex;flex-direction:column;justify-content:space-between}.today-event__top{display:flex;gap:9px;align-items:center}.today-badge{width:37px;height:37px;border-radius:50%;display:grid;place-items:center;background:#152d41}.today-event strong{display:block;font-size:12px}.today-event small{display:block;font-size:8px;color:#9eb0bb;margin-top:3px}.today-time{font-size:8px;color:#c5d0d6}.today-event button{height:25px;border-radius:5px;border:1px solid currentColor;color:#cbd6dc;background:rgba(255,255,255,.03);font-size:9px}.today-event--green{border-color:#11664f}.today-event--green .today-badge,.today-event--green button{color:#48d39e;background:rgba(7,118,82,.28)}.today-event--purple{border-color:#4b3c72}.today-event--purple .today-badge,.today-event--purple button{color:#c69cf5;background:rgba(93,56,143,.26)}.today-event--gold{border-color:#614f2e}.today-event--gold .today-badge,.today-event--gold button{color:#ebc46e;background:rgba(123,87,24,.27)}.today-event--blue{border-color:#1c5971}.today-event--blue .today-badge,.today-event--blue button{color:#60cce8;background:rgba(17,94,121,.28)}

.target-profile-card{padding:0 13px 15px;text-align:center;overflow:hidden}.target-profile-cover{height:125px;margin:0 -13px;background:url("assets/profile-cover.jpg") center/cover no-repeat;border-bottom:1px solid #29465a}.target-profile-name{font-size:17px;font-weight:800;margin-top:9px}.target-profile-id{font-size:9px;color:#92a6b3;direction:ltr;margin-top:4px}.target-profile-ranks{display:grid;grid-template-columns:1fr 1fr;margin-top:15px;border:1px solid #29475a;border-radius:11px;overflow:hidden}.target-profile-ranks>div{padding:11px 5px}.target-profile-ranks>div+div{border-right:1px solid #29475a}.target-profile-ranks span,.target-profile-rating span{display:block;font-size:8px;color:#93a5af}.target-profile-ranks strong{display:block;font-size:17px;color:#e8eff1;margin-top:5px}.target-profile-rating{display:flex;align-items:center;justify-content:space-between;margin-top:12px;text-align:right}.target-profile-rating strong{display:block;font-size:19px;margin-top:4px;direction:ltr}.target-profile-rating small{font-size:10px;color:#36d68c}.target-tier{padding:8px 11px;border:1px solid #2f4556;border-radius:9px;background:#0b1f2d;text-align:center}.target-tier strong{font-size:12px;color:#e6bc65;direction:rtl}

.champions-card{padding:0 12px 12px}.champions-card .target-card-head{padding:0 2px}.champ-row{width:100%;height:64px;border-radius:10px;border:1px solid #2a4458;background:#0b1e2b;color:#edf4f6;margin-bottom:8px;display:grid;grid-template-columns:47px 1fr 38px 16px;align-items:center;gap:8px;padding:0 10px;text-align:right}.champ-row:last-child{margin-bottom:0}.champ-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-size:22px;background:#172b3d;border:1px solid currentColor}.champ-row strong{display:block;font-size:12px}.champ-row small{display:block;font-size:8px;color:#9eb0ba;margin-top:4px}.champ-avatar{width:34px;height:34px;border-radius:50%;background:url("assets/avatar.svg") center/cover;border:2px solid #d6b160}.champ-chevron{font-size:24px;color:#c8d3d9}.champ-row--gold{background:linear-gradient(90deg,#29241d,#151d26)}.champ-row--gold .champ-icon{color:#eab85a}.champ-row--blue{background:linear-gradient(90deg,#0c304b,#101d2a)}.champ-row--blue .champ-icon{color:#63aef3}.champ-row--purple{background:linear-gradient(90deg,#322142,#141b28)}.champ-row--purple .champ-icon{color:#c07de8}.champ-row--green{background:linear-gradient(90deg,#0a3b36,#111d28)}.champ-row--green .champ-icon{color:#58d1a1}

.hall-banner{height:140px;padding:20px;display:flex;align-items:center;gap:13px;cursor:pointer;background:linear-gradient(90deg,#0b1b28,#0b1a26 55%,#161a20)!important}.hall-pieces{font-size:31px;color:#6a5631;letter-spacing:-8px;opacity:.78;align-self:flex-end}.hall-banner>div:nth-child(2){flex:1}.hall-banner strong{display:block;font-size:14px;margin-bottom:10px}.hall-banner span{display:block;font-size:10px;color:#e0e6e9}.hall-banner small{display:block;font-size:8px;color:#8397a4;margin-top:6px}.hall-arrow{font-size:26px!important;color:#e9eef0!important}

@media(max-width:1320px){
  .home-shell{--sidebar:235px;--rightbar:290px}.home-shell .sidebar-brand{padding:0 18px}.home-shell .brand-title{font-size:20px}.home-shell .logo-mark{width:54px;height:54px}.home-hero__copy{width:57%}.home-hero__copy h1{font-size:23px}.home-quick-row .quick-icon{width:58px;height:58px;flex-basis:58px}.home-quick-row .quick-copy strong{font-size:14px}.target-match-copy{width:78%}.target-register{width:230px}.today-grid{grid-template-columns:1fr 1fr}.today-card{min-height:290px}
}
@media(max-width:1180px){
  .home-shell{--rightbar:260px}.home-dashboard.page-grid{grid-template-columns:minmax(0,1fr) var(--rightbar)}.home-quick-row{grid-template-columns:1fr 1fr}.home-mid-grid{grid-template-columns:1fr}.today-grid{grid-template-columns:1fr 1fr}.home-hero__media{width:70%}.target-match-card,.target-ranking-card{min-height:315px}
}
@media(max-width:940px){
  .home-shell .content{padding:12px 12px 82px}.home-dashboard.page-grid{display:block}.home-dashboard .home-side{display:grid;grid-template-columns:1fr 1fr;margin-top:12px}.home-dashboard .home-side .hall-banner{grid-column:1/-1}.home-hero{height:190px}.home-hero__copy{right:22px;top:25px;width:65%}.home-hero__copy h1{font-size:20px}.home-hero__button{margin-top:20px}.home-shell .mobile-top{background:#071521;border-bottom-color:#173247}.home-shell .mobile-title{color:#efc66b}
}
@media(max-width:620px){
  .home-dashboard .home-side{grid-template-columns:1fr}.home-dashboard .home-side .hall-banner{grid-column:auto}.home-hero{height:175px}.home-hero__media{width:100%;opacity:.7}.home-hero__shade{background:linear-gradient(90deg,rgba(5,15,24,.25),rgba(5,15,24,.9) 72%)}.home-hero__copy{right:16px;top:22px;width:82%}.home-hero__copy h1{font-size:17px}.home-hero__copy p{font-size:10px}.home-hero__button{height:36px;min-width:145px;font-size:11px;margin-top:17px}.home-quick-row{grid-template-columns:1fr 1fr;gap:8px}.home-quick-row .quick-card{height:104px;min-height:104px;padding:10px}.home-quick-row .quick-icon{width:44px;height:44px;flex-basis:44px;font-size:20px}.home-mid-grid{margin-top:10px}.target-match-body{height:250px}.target-match-copy{width:100%;padding:18px 14px}.target-register{right:14px;width:220px}.today-grid{grid-template-columns:1fr 1fr;gap:8px}.today-event{height:105px;padding:9px}.target-ranking-card{padding-left:9px;padding-right:9px}
}

/* =========================================================
   QUICK GAME FLOW — visual match to supplied reference
   This is portal-only UI. The real chess page is untouched.
   ========================================================= */
.quick-game-shell{
  --sidebar:245px;
  min-height:100vh;
  background:#04111b;
}
.quick-game-shell .main-wrap{
  background:
    radial-gradient(circle at 50% 12%,rgba(0,142,115,.10),transparent 34%),
    radial-gradient(circle at 82% 70%,rgba(27,93,125,.09),transparent 32%),
    linear-gradient(180deg,#061622 0%,#04111a 100%);
  min-height:100vh;
}
.quick-game-shell .topbar{
  background:linear-gradient(90deg,#06141f,#071b29 58%,#05131d);
  border-bottom-color:#18354a;
}
.quick-game-shell .city-line{opacity:.18}
.quick-game-shell .sidebar{
  background:linear-gradient(180deg,#04131d,#031019 72%,#061822);
  border-left-color:#183547;
}
.quick-game-shell .sidebar::after{display:none}
.quick-game-shell .sidebar-art{background:linear-gradient(180deg,transparent,rgba(3,13,20,.92)),url("assets/city-photo.jpg") center/cover no-repeat;opacity:.72}
.quick-game-shell .nav-item.is-active{
  background:linear-gradient(90deg,#087a57,#079467);
  color:#fff;
  box-shadow:0 8px 28px rgba(0,136,93,.20),inset 0 0 0 1px rgba(255,255,255,.09);
}
.quick-game-shell .content{max-width:none;padding:0;min-height:calc(100vh - 74px)}
.quick-game-page{
  min-height:calc(100vh - 74px);
  position:relative;
  display:grid;
  place-items:center;
  padding:44px 24px 56px;
  overflow:hidden;
  isolation:isolate;
}
.quick-game-page::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(4,17,27,.48),rgba(4,17,27,.94)),
    url("../assets/board-scene.png") center 70%/cover no-repeat;
  opacity:.14;
  filter:blur(1px) saturate(.8);
  transform:scale(1.03);
  z-index:-3;
}
.quick-game-page::after{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at center,transparent 0 24%,rgba(2,11,17,.33) 62%,rgba(2,10,15,.74) 100%);
  z-index:-2;
  pointer-events:none;
}
.qg-ambient{position:absolute;border-radius:50%;filter:blur(90px);pointer-events:none;z-index:-1;opacity:.22}
.qg-ambient--one{width:420px;height:420px;background:#00a879;top:-160px;right:13%}
.qg-ambient--two{width:390px;height:390px;background:#12618e;bottom:-180px;left:10%}
.qg-stage{width:100%;display:grid;place-items:center;position:relative;z-index:2}
.qg-card{
  width:min(100%,560px);
  min-height:565px;
  position:relative;
  border-radius:22px;
  border:1px solid #28516a;
  background:
    radial-gradient(circle at 50% 0%,rgba(10,93,89,.13),transparent 32%),
    linear-gradient(180deg,rgba(4,25,35,.98),rgba(3,18,27,.99));
  color:#eef6f6;
  box-shadow:0 26px 75px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.025),0 0 0 1px rgba(7,46,62,.30);
  padding:38px 42px 34px;
  overflow:hidden;
  direction:rtl;
}
.qg-card::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  box-shadow:inset 0 0 70px rgba(0,0,0,.12);
}
.qg-back{
  position:absolute;
  top:24px;
  left:24px;
  width:40px;
  height:40px;
  border:0;
  border-radius:10px;
  color:#d8e7e8;
  background:transparent;
  font-size:24px;
  display:grid;
  place-items:center;
  z-index:3;
  transition:.18s ease;
}
.qg-back:hover{background:#0b2a38;color:#fff;transform:translateX(-2px)}
.qg-heading{display:flex;align-items:center;justify-content:center;gap:16px;margin:10px auto 39px;text-align:right}
.qg-heading h1{margin:0;color:#fff;font-size:27px;font-weight:900;letter-spacing:-.3px}
.qg-heading p{margin:5px 0 0;color:#a6b9bf;font-size:12px}
.qg-bolt{
  width:66px;
  height:66px;
  flex:0 0 66px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#dffef2;
  font-size:31px;
  background:radial-gradient(circle,#0c715c,#07473f 64%,#06332f);
  border:1px solid #0b6f5d;
  box-shadow:0 0 35px rgba(0,219,157,.13),inset 0 0 22px rgba(255,255,255,.04);
}
.qg-section-title{font-size:13px;color:#dce8e9;font-weight:800;margin-bottom:12px}
.qg-section-title--mode{margin-top:28px}
.qg-time-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;direction:ltr}
.qg-time{
  height:84px;
  border-radius:12px;
  border:1px solid #244861;
  color:#edf4f5;
  background:linear-gradient(180deg,#0a2130,#081b28);
  display:grid;
  place-items:center;
  align-content:center;
  gap:6px;
  transition:.18s ease;
}
.qg-time:hover{border-color:#3a6e87;background:#0b2636;transform:translateY(-1px)}
.qg-time strong{font-size:18px;direction:ltr}.qg-time span{font-size:10px;color:#9eb1bb}
.qg-time.is-active{border-color:#00dd9c;background:linear-gradient(180deg,#08382f,#092b2c);box-shadow:0 0 0 1px rgba(0,221,156,.22),0 0 28px rgba(0,205,146,.12)}
.qg-time.is-active span{color:#c9f7e7}
.qg-mode-box{border:1px solid #22485d;border-radius:13px;overflow:hidden;background:#071b27}
.qg-mode{
  width:100%;height:72px;border:0;background:transparent;color:#e8f0f1;display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:11px;padding:0 17px;text-align:right;position:relative
}
.qg-mode+.qg-mode{border-top:1px solid #173848}
.qg-mode:hover{background:#092330}
.qg-radio{width:18px;height:18px;border:1px solid #587286;border-radius:50%;position:relative;display:block}
.qg-mode.is-active .qg-radio{border-color:#82f4ce;box-shadow:0 0 0 3px rgba(0,211,147,.10)}
.qg-mode.is-active .qg-radio::after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:#83f3ce;left:4px;top:4px;box-shadow:0 0 12px rgba(0,255,180,.35)}
.qg-mode-copy strong{display:block;font-size:13px}.qg-mode-copy small{display:block;margin-top:5px;color:#8199a4;font-size:9px}
.qg-mode em{font-style:normal;font-size:9px;color:#849aa5}.qg-mode.is-active em{color:#41dba5}
.qg-primary{
  width:100%;height:52px;border:1px solid rgba(92,255,190,.18);border-radius:10px;margin-top:27px;color:#fff;font-size:16px;font-weight:900;background:linear-gradient(180deg,#08a76e,#078858);box-shadow:0 9px 28px rgba(0,151,102,.22),inset 0 1px 0 rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;gap:10px;transition:.18s ease
}
.qg-primary:hover{transform:translateY(-1px);filter:brightness(1.07);box-shadow:0 13px 32px rgba(0,151,102,.28)}
.qg-primary:active{transform:translateY(0)}
.qg-secondary{width:180px;height:44px;border-radius:10px;border:1px solid #2c5368;background:#09202d;color:#e7efef;font-weight:800;margin:32px auto 0;display:block}
.qg-secondary:hover{background:#0c2938}
.qg-link{display:block;margin:17px auto 0;border:0;background:transparent;color:#82a7b7;font-size:10px}.qg-link:hover{color:#d7e6eb}

/* searching */
.qg-card--search{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:42px;text-align:center}
.qg-radar{width:220px;height:220px;position:relative;display:grid;place-items:center;margin:10px auto 30px}
.qg-radar i{position:absolute;border:1px solid rgba(0,221,156,.32);border-radius:50%;animation:qgPulse 2.1s ease-out infinite}
.qg-radar i:nth-child(1){width:96px;height:96px;animation-delay:0s}.qg-radar i:nth-child(2){width:145px;height:145px;animation-delay:.2s}.qg-radar i:nth-child(3){width:205px;height:205px;animation-delay:.4s}
.qg-radar::before,.qg-radar::after{content:"";position:absolute;background:linear-gradient(90deg,transparent,rgba(0,221,156,.22),transparent)}
.qg-radar::before{width:220px;height:1px}.qg-radar::after{height:220px;width:1px;background:linear-gradient(180deg,transparent,rgba(0,221,156,.22),transparent)}
.qg-radar span{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;font-size:43px;color:#fff;background:radial-gradient(circle,#0a866a 0%,#075344 58%,#062f31 100%);border:1px solid #0bcf91;box-shadow:0 0 35px rgba(0,222,155,.28),inset 0 0 18px rgba(255,255,255,.08);z-index:2}
.qg-radar b{position:absolute;width:190px;height:190px;border-radius:50%;background:conic-gradient(from 0deg,transparent 0 68%,rgba(0,240,168,.18) 82%,transparent 100%);animation:qgSpin 2.8s linear infinite}
@keyframes qgSpin{to{transform:rotate(360deg)}}
@keyframes qgPulse{0%{transform:scale(.82);opacity:.2}55%{opacity:.75}100%{transform:scale(1.08);opacity:.12}}
.qg-search-title{font-size:25px;margin:0;color:#fff}.qg-search-sub{font-size:11px;color:#8fa6b1;margin:9px 0 25px}
.qg-search-info{width:100%;max-width:390px;height:84px;border:1px solid #20465a;background:#082332;border-radius:13px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden}
.qg-search-info>div{display:grid;place-items:center;align-content:center;gap:6px}.qg-search-info>div+div{border-right:1px solid #183c4d}.qg-search-info span{font-size:10px;color:#91a7b2}.qg-search-info strong{font-size:19px;color:#fff;direction:ltr}
.qg-search-note{margin-top:18px;font-size:9px;color:#5e7884;display:flex;gap:7px;align-items:center}.qg-search-note span{width:6px;height:6px;border-radius:50%;background:#05bf84;box-shadow:0 0 9px rgba(5,191,132,.7);animation:qgBlink 1s infinite alternate}@keyframes qgBlink{to{opacity:.25}}

/* found opponent */
.qg-card--found{min-height:565px;text-align:center;display:flex;flex-direction:column;align-items:center;padding-top:48px;background:linear-gradient(180deg,rgba(3,28,34,.97),rgba(3,19,28,.99))}
.qg-card--found::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,25,31,.24),rgba(2,16,24,.92)),url("../assets/board-scene.png") center bottom/cover no-repeat;opacity:.22;filter:blur(.4px);z-index:0}
.qg-card--found>*{position:relative;z-index:2}
.qg-found-glow{position:absolute!important;z-index:1!important;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(0,197,140,.13),transparent 66%);top:-60px;left:50%;transform:translateX(-50%)}
.qg-card--found h1{font-size:28px;margin:8px 0 33px;color:#fff}
.qg-vs{width:100%;display:grid;grid-template-columns:1fr 70px 1fr;align-items:center;gap:8px;direction:ltr}
.qg-player{display:flex;flex-direction:column;align-items:center;gap:7px;direction:rtl}.qg-player strong{font-size:14px;color:#fff}.qg-player>span{font-size:10px;color:#89a2ac;direction:ltr}.qg-player small{color:#20d395;font-size:8px}
.qg-avatar{width:92px;height:92px;border-radius:50%;background:url("assets/avatar.svg") center/cover no-repeat;border:3px solid #d7ad5b;box-shadow:0 0 0 4px rgba(216,175,92,.08),0 9px 24px rgba(0,0,0,.30)}
.qg-avatar--opponent{filter:hue-rotate(14deg) saturate(.92)}
.qg-vs-mark{font-size:25px;font-weight:900;color:#ecbd59;text-shadow:0 0 20px rgba(236,189,89,.16);direction:ltr}
.qg-time-summary{width:200px;height:77px;border-radius:12px;border:1px solid #214a5b;background:#082533;display:grid;place-items:center;align-content:center;gap:6px;margin:26px auto 0}.qg-time-summary span{font-size:10px;color:#91a4ad}.qg-time-summary strong{font-size:20px;direction:ltr;color:#fff}
.qg-found-pieces{position:absolute!important;bottom:87px;left:0;right:0;font-size:90px;color:#081a21;opacity:.72;letter-spacing:-18px;z-index:1!important;direction:ltr;pointer-events:none}
.qg-enter{margin-top:32px;position:relative;z-index:3}.qg-enter span{font-size:20px}
.qg-confetti{position:absolute!important;inset:0;z-index:1!important;pointer-events:none}.qg-confetti i{position:absolute;width:5px;height:14px;border-radius:2px;background:#06cb8f;opacity:.9;animation:qgFloat 2.2s ease-in-out infinite alternate}.qg-confetti i:nth-child(1){top:35px;left:70px;transform:rotate(25deg)}.qg-confetti i:nth-child(2){top:80px;left:35px;background:#e5a63b;transform:rotate(-20deg);animation-delay:.3s}.qg-confetti i:nth-child(3){top:42px;right:68px;background:#12d5a0;transform:rotate(48deg);animation-delay:.5s}.qg-confetti i:nth-child(4){top:95px;right:25px;background:#f0b547;transform:rotate(-42deg);animation-delay:.8s}.qg-confetti i:nth-child(5){top:158px;left:22px;background:#1b8fe4;animation-delay:1s}.qg-confetti i:nth-child(6){top:160px;right:26px;background:#0ac68f;animation-delay:.65s}@keyframes qgFloat{to{transform:translateY(9px) rotate(80deg)}}

@media(max-width:940px){
  .quick-game-shell .content{padding:0 0 76px;min-height:calc(100vh - 58px)}
  .quick-game-page{min-height:calc(100vh - 58px - 66px);padding:24px 12px 28px}
  .qg-card{width:min(100%,520px)}
}
@media(max-width:560px){
  .quick-game-shell body{background:#04111b}
  .quick-game-page{padding:12px 10px 18px;place-items:start center}
  .qg-card{min-height:0;border-radius:16px;padding:30px 18px 24px}
  .qg-back{top:15px;left:14px;width:36px;height:36px}
  .qg-heading{margin:13px auto 30px;gap:12px}.qg-bolt{width:54px;height:54px;flex-basis:54px;font-size:25px}.qg-heading h1{font-size:21px}.qg-heading p{font-size:10px}
  .qg-time-grid{gap:7px}.qg-time{height:70px}.qg-time strong{font-size:15px}.qg-time span{font-size:8px}
  .qg-mode{height:65px;padding:0 11px;grid-template-columns:23px 1fr auto;gap:8px}.qg-mode-copy strong{font-size:11px}.qg-mode-copy small{font-size:7.5px}.qg-mode em{font-size:8px}.qg-primary{height:48px;font-size:14px;margin-top:20px}
  .qg-card--search,.qg-card--found{min-height:540px;padding-top:34px}.qg-radar{width:185px;height:185px;margin-bottom:21px}.qg-radar i:nth-child(1){width:84px;height:84px}.qg-radar i:nth-child(2){width:125px;height:125px}.qg-radar i:nth-child(3){width:175px;height:175px}.qg-radar::before{width:185px}.qg-radar::after{height:185px}.qg-radar span{width:72px;height:72px;font-size:36px}.qg-radar b{width:170px;height:170px}.qg-search-title{font-size:20px}.qg-search-info{height:76px}.qg-avatar{width:76px;height:76px}.qg-card--found h1{font-size:23px}.qg-vs{grid-template-columns:1fr 54px 1fr}.qg-vs-mark{font-size:20px}.qg-found-pieces{font-size:70px;bottom:72px}
}

/* =========================================================
   TOURNAMENT REGISTRATION V1
   Front-end UI only. Chess board and engine are untouched.
   ========================================================= */
.tournament-page-head{align-items:center}.tournament-head-status{display:flex;align-items:center}.tournament-status-pill{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 13px;border-radius:999px;border:1px solid #2a4558;background:#0a1d2a;color:#a9bbc6;font-size:10px;font-weight:700}.tournament-status-pill.is-ok{border-color:rgba(33,191,123,.35);background:rgba(8,105,73,.18);color:#56d99d}.tournament-status-pill.is-live{border-color:rgba(255,176,61,.35);background:rgba(146,86,8,.16);color:#f3bd61}.btn--registered{background:linear-gradient(180deg,#0c513e,#0a3f32);border:1px solid rgba(63,215,155,.28);color:#79e8b7;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.tournament-featured{position:relative;min-height:285px;display:flex;align-items:center;gap:28px;padding:28px 34px;overflow:hidden;border-color:#34536a;background:radial-gradient(circle at 16% 50%,rgba(210,159,72,.14),transparent 24%),linear-gradient(120deg,#071825,#0a1b27 58%,#07141f)}.tournament-featured::after{content:"♟  ♜  ♛";position:absolute;left:24px;bottom:-35px;font-size:115px;letter-spacing:-28px;color:#b4833e;opacity:.055;direction:ltr}.tournament-featured__glow{position:absolute;right:-70px;top:-100px;width:330px;height:330px;border-radius:50%;background:rgba(26,177,125,.09);filter:blur(20px)}.tournament-trophy{position:relative;z-index:1;width:118px;height:118px;flex:0 0 118px;border-radius:32px;display:grid;place-items:center;font-size:62px;background:linear-gradient(145deg,#272116,#0d1b22);border:1px solid rgba(223,177,89,.36);box-shadow:0 22px 60px rgba(0,0,0,.3),inset 0 0 32px rgba(227,172,71,.06)}.tournament-featured__copy{position:relative;z-index:1;flex:1}.tournament-kicker{color:#d9ad5f;font-size:10px;font-weight:800;letter-spacing:.2px}.tournament-featured h2,.tournament-detail-hero h2{font-size:28px;margin:5px 0 5px}.tournament-featured p,.tournament-detail-hero p{margin:0;color:#92a7b4;font-size:11px}.tournament-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(100px,1fr));gap:9px;margin-top:22px;max-width:740px}.tournament-meta-grid>div,.tournament-modal__facts>div{border:1px solid #29475b;border-radius:10px;background:#0a1d2a;padding:10px 12px}.tournament-meta-grid span,.tournament-modal__facts span{display:block;color:#8197a5;font-size:8px;margin-bottom:4px}.tournament-meta-grid strong,.tournament-modal__facts strong{font-size:11px;color:#eef4f5}.tournament-actions{display:flex;gap:9px;margin-top:18px}.tournament-registered-inline{display:flex;align-items:center;gap:9px;margin-top:14px;min-height:38px;padding:0 12px;border:1px solid rgba(35,186,125,.25);border-radius:10px;background:rgba(5,87,62,.14);font-size:9px;color:#a4b9b2}.tournament-registered-inline strong{color:#e2bb66;font-size:12px}.tournament-registered-inline b{font-size:13px;color:#69e0ac;margin-right:auto}.competition-layout{display:grid;grid-template-columns:1.4fr .8fr;gap:14px;margin-top:14px}.competition-row{display:grid;grid-template-columns:46px minmax(0,1fr) 70px 84px;align-items:center;gap:10px;padding:11px 4px;border-bottom:1px solid rgba(255,255,255,.055)}.competition-row:last-child{border-bottom:0}.competition-row__icon{width:40px;height:40px;border:1px solid #315067;border-radius:12px;display:grid;place-items:center;background:#102535}.competition-row__copy strong{display:block;font-size:11px}.competition-row__copy small{display:block;color:#879ca8;font-size:8px;margin-top:4px}.competition-time{color:#e3bd6d;font-size:10px;text-align:center}.competition-row .btn{min-height:32px;padding:0 12px;font-size:9px}.tournament-calendar h3{margin-top:0}
.modal-layer{position:fixed;inset:0;z-index:1000;background:rgba(1,8,13,.78);backdrop-filter:blur(10px);display:grid;place-items:center;padding:18px;animation:modalFade .18s ease both}.tournament-modal{position:relative;width:min(430px,100%);border:1px solid #36576d;border-radius:20px;padding:28px;background:radial-gradient(circle at top,rgba(25,114,93,.16),transparent 35%),linear-gradient(180deg,#0b1f2d,#071722);box-shadow:0 35px 110px rgba(0,0,0,.65),inset 0 1px 0 rgba(255,255,255,.045);text-align:center;animation:modalPop .22s ease both}.modal-close{position:absolute;left:14px;top:12px;width:32px;height:32px;border:1px solid #2a485b;border-radius:9px;background:#0b1c29;color:#9db0bc;font-size:20px}.tournament-modal__icon{width:76px;height:76px;margin:0 auto 10px;border-radius:24px;display:grid;place-items:center;font-size:42px;border:1px solid rgba(221,177,87,.28);background:rgba(95,68,18,.16)}.tournament-modal h2{margin:0;font-size:22px}.tournament-modal__sub{margin:7px 0 18px;color:#90a4af;font-size:10px}.tournament-modal__facts{display:grid;grid-template-columns:1fr 1fr;gap:8px;text-align:right}.tournament-modal__facts>div{padding:11px 12px}.tournament-rules-check{display:flex;align-items:center;gap:9px;margin:17px 0 12px;padding:12px;border:1px solid #294659;border-radius:10px;background:#081a27;color:#c8d4d9;text-align:right;font-size:9px;cursor:pointer}.tournament-rules-check input{position:absolute;opacity:0;pointer-events:none}.check-ui{width:21px;height:21px;border:1px solid #3e6073;border-radius:6px;display:grid;place-items:center;color:transparent;background:#0d2130;transition:.18s}.tournament-rules-check input:checked+.check-ui{background:#0e9c69;border-color:#1fc98d;color:#fff}.tournament-modal__submit{width:100%;min-height:45px}.tournament-modal__submit:disabled{opacity:.38;filter:saturate(.35);cursor:not-allowed}.tournament-rules-link{border:0;background:transparent;color:#7f9baa;font-size:9px;margin-top:12px}.success-check{width:74px;height:74px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#16b879,#087653);box-shadow:0 0 0 8px rgba(26,188,126,.08),0 15px 40px rgba(0,132,88,.22);font-size:34px}.tournament-modal--success h2{font-size:18px}.success-registration-no{display:flex;align-items:center;justify-content:center;gap:9px;margin:16px auto 12px;min-height:50px;border:1px solid rgba(224,178,89,.26);border-radius:12px;background:rgba(96,67,17,.12)}.success-registration-no span{font-size:9px;color:#a2b2bb}.success-registration-no strong{font-size:19px;color:#e8bd68}.tournament-modal--success p{color:#a0b1ba;font-size:10px;margin-bottom:17px}.tournament-modal--success p b{color:#68e0ac;font-size:13px}.modal-action-row{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:18px}
.competition-detail-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}.tournament-detail-hero{min-height:245px;display:flex;align-items:center;gap:24px;padding:28px;background:radial-gradient(circle at 18% 50%,rgba(215,165,70,.13),transparent 28%),linear-gradient(120deg,#071824,#0a1c28)}.tournament-detail-trophy{width:104px;height:104px;flex:0 0 104px;border-radius:28px;display:grid;place-items:center;font-size:55px;background:#151d1e;border:1px solid rgba(226,180,89,.25)}.tournament-detail-count{margin-right:auto;text-align:center;border-right:1px solid #284252;padding-right:24px}.tournament-detail-count span{display:block;font-size:8px;color:#8fa3af}.tournament-detail-count strong{display:block;margin-top:5px;color:#68dfaa;font-size:19px}.tournament-detail-facts h3,.tournament-rules-panel h3{margin-top:0}.tournament-prize{display:flex;justify-content:space-between;align-items:center;margin:12px 0;border-radius:10px;padding:13px;background:linear-gradient(90deg,rgba(112,78,18,.16),rgba(34,28,18,.17));border:1px solid rgba(215,168,78,.22)}.tournament-prize span{font-size:9px;color:#9cacb4}.tournament-prize strong{font-size:12px;color:#e4bb69}.tournament-wide-action{width:100%;margin-top:10px}.tournament-rules-panel{margin-top:14px}.rules-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.rules-grid>div{padding:12px;border-radius:9px;background:#0a1d2a;border:1px solid #284354;color:#b7c5cc;font-size:9px}
.tournament-waiting-hero{position:relative;text-align:center;padding:32px;overflow:hidden}.tournament-waiting-hero .tournament-detail-trophy{margin:0 auto 11px}.tournament-waiting-glow{position:absolute;inset:-40px;background:radial-gradient(circle at center,rgba(10,174,115,.12),transparent 45%);pointer-events:none}.tournament-main-countdown{font-size:42px;font-weight:900;letter-spacing:3px;color:#f0c46e;margin:5px 0 7px}.tournament-waiting-hero p{font-size:9px;color:#93a6b0}.tournament-personal-grid{margin-top:14px}.tournament-player-card{display:grid;grid-template-columns:62px 1fr auto;align-items:center;gap:12px;padding:14px;border:1px solid #29485c;border-radius:12px;background:#0a1d2a}.tournament-player-avatar{width:58px;height:58px;margin:0}.tournament-player-card strong{display:block;font-size:13px}.tournament-player-card span{display:block;font-size:8px;color:#8fa3af;margin-top:4px}.tournament-player-rating{text-align:left}.tournament-player-rating strong{font-size:21px}.tournament-info-rows{margin-top:10px}.tournament-info-rows>div{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.055);padding:10px 2px;font-size:9px}.ok-text{color:#4ed39b}.participant-number{display:flex;align-items:baseline;justify-content:center;gap:5px;padding:18px 0 12px}.participant-number strong{font-size:38px;color:#f0c46e}.participant-number span{font-size:15px;color:#7f94a0}.participant-progress{height:7px;background:#07151f;border-radius:999px;overflow:hidden}.participant-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0b7e59,#24c989)}
.tournament-matchmaking,.tournament-opponent-found{min-height:350px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px}.matchmaking-rings{position:relative;width:145px;height:145px;margin-bottom:19px}.matchmaking-rings::before,.matchmaking-rings::after,.matchmaking-rings i{content:"";position:absolute;inset:0;border-radius:50%;border:1px solid rgba(31,211,143,.3);animation:matchPulse 2.2s ease-out infinite}.matchmaking-rings::after{inset:18px;animation-delay:.45s}.matchmaking-rings i:nth-child(1){inset:36px;animation-delay:.9s}.matchmaking-rings i:nth-child(2){inset:54px;animation-delay:1.25s}.matchmaking-rings span{position:absolute;inset:52px;display:grid;place-items:center;border-radius:50%;background:#0c8d62;color:#fff;font-size:27px;box-shadow:0 0 35px rgba(19,204,137,.28)}.tournament-matchmaking h2{margin:0 0 5px;font-size:22px}.tournament-matchmaking>p{margin:0;color:#91a5af;font-size:10px}.matchmaking-user{margin-top:21px;display:flex;align-items:center;gap:10px;padding:9px 15px;border:1px solid #29495d;border-radius:999px;background:#0a1d2a;text-align:right}.matchmaking-user .profile-avatar{width:38px;height:38px;margin:0}.matchmaking-user strong,.matchmaking-user span{display:block}.matchmaking-user strong{font-size:10px}.matchmaking-user span{font-size:8px;color:#8fa3ad}.opponent-kicker{color:#5ee0a8;font-size:10px;margin-bottom:17px}.tournament-versus{display:grid;grid-template-columns:160px 72px 160px;align-items:center;justify-content:center}.vs-player .profile-avatar{width:82px;height:82px;margin:0 auto 9px}.vs-player strong{display:block;font-size:14px}.vs-player span{display:block;color:#8ea2ad;font-size:9px;margin-top:5px;direction:ltr}.vs-mark{font-size:25px;font-weight:900;color:#e2b863}.tournament-enter-game{min-width:260px;margin-top:22px}.tournament-opponent-found>p{font-size:8px;color:#758c99;margin-top:10px}.tournament-standings{margin-top:14px;padding-top:15px}.tournament-section-title{display:flex;justify-content:space-between;align-items:center}.tournament-section-title span{font-size:8px;color:#8ba0ac}.tournament-section-title h3{margin:3px 0 10px}.tournament-live-dot{color:#59dda7!important}.standings-head,.standing-row{display:grid;grid-template-columns:45px 1fr 90px;align-items:center}.standings-head{height:30px;color:#718894;font-size:8px;border-bottom:1px solid #294356}.standing-row{min-height:45px;border-bottom:1px solid rgba(255,255,255,.05);font-size:10px}.standing-row>span:nth-child(2){display:flex;align-items:center;gap:8px}.standing-row .mini-avatar{width:27px;height:27px}.standing-row strong{text-align:left}.standing-row.is-you{background:rgba(16,133,91,.09);color:#6fe3ae}.tournament-scoring-note{display:flex;gap:9px;flex-wrap:wrap;padding-top:13px}.tournament-scoring-note span{padding:7px 9px;border-radius:8px;background:#0a1d2a;border:1px solid #284455;color:#889da9;font-size:8px}.tournament-scoring-note b{color:#e4bd6b}
@keyframes modalFade{from{opacity:0}to{opacity:1}}@keyframes modalPop{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}@keyframes matchPulse{0%{transform:scale(.85);opacity:.7}70%,100%{transform:scale(1.12);opacity:0}}
@media(max-width:980px){.competition-layout,.competition-detail-grid{grid-template-columns:1fr}.tournament-featured{padding:22px}.tournament-meta-grid{grid-template-columns:1fr 1fr}.tournament-detail-count{margin-right:0}.tournament-versus{grid-template-columns:1fr 55px 1fr}}
@media(max-width:620px){.tournament-page-head{align-items:flex-start}.tournament-head-status{margin-top:8px}.tournament-featured{min-height:0;display:block;padding:18px}.tournament-trophy{width:76px;height:76px;flex-basis:76px;border-radius:22px;font-size:39px;margin-bottom:14px}.tournament-featured h2{font-size:21px}.tournament-meta-grid{grid-template-columns:1fr 1fr;margin-top:15px}.tournament-actions{display:grid;grid-template-columns:1fr 1fr}.competition-row{grid-template-columns:40px 1fr 55px}.competition-row .btn{grid-column:2/4}.tournament-detail-hero{display:block;padding:20px}.tournament-detail-trophy{width:76px;height:76px;font-size:39px;margin-bottom:13px}.tournament-detail-count{border-right:0;border-top:1px solid #284252;padding:13px 0 0;margin-top:15px;text-align:right}.rules-grid{grid-template-columns:1fr}.tournament-main-countdown{font-size:32px}.tournament-player-card{grid-template-columns:50px 1fr auto}.tournament-player-avatar{width:48px;height:48px}.tournament-versus{grid-template-columns:1fr 40px 1fr}.vs-player .profile-avatar{width:64px;height:64px}.tournament-modal{padding:24px 18px}.tournament-modal__facts{grid-template-columns:1fr 1fr}}

/* =========================================================
   TOURNAMENTS V2 — featured + other tournaments
   Calendar removed, layout rebalanced, secondary details live.
   ========================================================= */
.tournament-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:24px 2px 12px}.tournament-section-heading--featured{margin-top:4px}.tournament-section-heading h2{margin:2px 0 3px;font-size:19px;color:#eef5f7}.tournament-section-heading p{margin:0;color:#8299a6;font-size:9px}.section-eyebrow{display:inline-block;color:#dcb35f;font-size:8px;font-weight:800;letter-spacing:.2px}.other-count{min-height:29px;padding:0 10px;border:1px solid #294557;border-radius:999px;display:inline-flex;align-items:center;color:#8fa5b1;background:#081925;font-size:8px;white-space:nowrap}
.other-tournaments-section{margin-top:28px}.other-tournaments-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.other-tournament-card{position:relative;min-height:270px;padding:19px;border-radius:16px;border:1px solid #29485c;background:linear-gradient(180deg,#0a1c29,#071722);overflow:hidden;box-shadow:0 16px 34px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.025);transition:.22s ease}.other-tournament-card:hover{transform:translateY(-3px);border-color:#3b6076;box-shadow:0 20px 45px rgba(0,0,0,.28),0 0 0 1px rgba(255,255,255,.02)}.other-tournament-card::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.23}.other-tournament-card--gold::before{background:radial-gradient(circle at 10% 0%,rgba(221,177,87,.25),transparent 33%)}.other-tournament-card--green::before{background:radial-gradient(circle at 10% 0%,rgba(40,210,145,.20),transparent 35%)}.other-tournament-card--blue::before{background:radial-gradient(circle at 10% 0%,rgba(66,154,221,.20),transparent 35%)}.other-tournament-card>*{position:relative;z-index:1}.other-tournament-card__top{display:flex;align-items:center;justify-content:space-between}.other-tournament-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;font-size:25px;background:#101f2b;border:1px solid #314c5f}.other-tournament-card--gold .other-tournament-icon{color:#e7ba62;border-color:rgba(224,179,88,.28);background:rgba(107,76,20,.14)}.other-tournament-card--green .other-tournament-icon{border-color:rgba(64,213,156,.25);background:rgba(11,112,76,.13)}.other-tournament-card--blue .other-tournament-icon{border-color:rgba(81,159,217,.25);background:rgba(20,91,140,.14)}.other-tournament-status{padding:6px 9px;border-radius:999px;border:1px solid #324c5c;background:#0b1d29;color:#8da2ae;font-size:7.5px}.other-tournament-status.is-open{color:#60dba7;border-color:rgba(57,205,147,.25);background:rgba(12,107,75,.13)}.other-tournament-copy{margin-top:17px}.other-tournament-copy h3{margin:0 0 6px;font-size:15px;color: white;}.other-tournament-copy p{margin:0;min-height:31px;color:#879da9;font-size:8.5px;line-height:1.8}.other-tournament-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:15px}.other-tournament-meta>div{min-height:53px;border:1px solid rgba(53,78,93,.78);background:rgba(5,21,31,.68);border-radius:9px;padding:8px}.other-tournament-meta span{display:block;color:#718a97;font-size:7px;margin-bottom:4px}.other-tournament-meta strong{display:block;color:#dce7eb;font-size:9px}.other-tournament-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:17px;padding-top:14px;border-top:1px solid rgba(255,255,255,.055)}.other-tournament-prize small,.other-tournament-prize strong{display:block}.other-tournament-prize small{color:#728b97;font-size:7px;margin-bottom:3px}.other-tournament-prize strong{color:#e0b967;font-size:10px}.other-tournament-detail{min-width:118px;height:34px;font-size:8px}
.competition-info-head .inline-back{border:0;background:transparent;color:#7f99a7;padding:0;margin:0 0 8px;font-size:8.5px;cursor:pointer}.competition-info-head .inline-back:hover{color:#e5bd6b}.secondary-detail-hero{position:relative;min-height:225px;padding:28px 30px;display:grid;grid-template-columns:96px minmax(0,1fr) 140px;align-items:center;gap:22px;overflow:hidden}.secondary-detail-hero::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.18}.secondary-detail-hero--gold::after{background:radial-gradient(circle at 20% 50%,rgba(224,174,77,.28),transparent 28%)}.secondary-detail-hero--green::after{background:radial-gradient(circle at 20% 50%,rgba(46,205,146,.24),transparent 28%)}.secondary-detail-hero--blue::after{background:radial-gradient(circle at 20% 50%,rgba(61,151,215,.24),transparent 28%)}.secondary-detail-hero>*{position:relative;z-index:1}.secondary-detail-icon{width:92px;height:92px;border-radius:25px;display:grid;place-items:center;font-size:49px;background:#111e27;border:1px solid #355062}.secondary-detail-copy h2{font-size:24px;margin:3px 0 8px}.secondary-detail-copy p{margin:0;color:#91a4ae;font-size:9px;line-height:1.9;max-width:560px}.secondary-detail-remaining{border-right:1px solid #2d485a;padding-right:24px;text-align:center}.secondary-detail-remaining span,.secondary-detail-remaining small{display:block;color:#8398a4;font-size:8px}.secondary-detail-remaining strong{display:block;color:#6de0ae;font-size:34px;margin:4px 0}.secondary-detail-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:14px;margin-top:14px}.secondary-facts-card,.secondary-rules-card{min-height:265px}.secondary-facts-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:11px}.secondary-facts-grid>div{padding:11px 12px;border:1px solid #29485b;border-radius:10px;background:#091b28}.secondary-facts-grid span{display:block;color:#7d94a0;font-size:7px}.secondary-facts-grid strong{display:block;color:#dce5e9;font-size:10px;margin-top:4px}.secondary-rules-list{display:grid;gap:9px;margin-top:12px}.secondary-rules-list>div{display:flex;align-items:center;gap:9px;min-height:43px;border:1px solid #294657;border-radius:9px;background:#091b27;padding:9px 11px}.secondary-rules-list span{width:21px;height:21px;flex:0 0 21px;border-radius:50%;display:grid;place-items:center;background:rgba(20,154,105,.15);color:#61dda7;font-size:9px}.secondary-rules-list p{margin:0;color:#a5b6be;font-size:8.5px}
@media(max-width:1120px){.other-tournaments-grid{grid-template-columns:1fr 1fr}.secondary-detail-grid{grid-template-columns:1fr}.secondary-detail-hero{grid-template-columns:82px minmax(0,1fr) 120px}.secondary-detail-icon{width:78px;height:78px;font-size:41px}}
@media(max-width:760px){.other-tournaments-grid{grid-template-columns:1fr}.tournament-section-heading{align-items:flex-start}.other-count{margin-top:3px}.secondary-detail-hero{display:block;padding:22px}.secondary-detail-icon{margin-bottom:15px}.secondary-detail-remaining{border-right:0;border-top:1px solid #294658;margin-top:17px;padding:14px 0 0;text-align:right}.secondary-detail-remaining strong{font-size:26px}.other-tournament-meta{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:520px){.tournament-section-heading{display:block}.other-count{margin-top:10px}.other-tournament-card{padding:16px}.other-tournament-footer{align-items:stretch;flex-direction:column}.other-tournament-detail{width:100%}.secondary-facts-grid{grid-template-columns:1fr}.secondary-detail-copy h2{font-size:20px}}

/* =========================================================
   PROFILE V3 + NEYSHABUR V3
   Premium dark UI, scoped only to these portal pages.
   Chess board / game core is intentionally untouched.
   ========================================================= */
.profile-v3-shell,
.city-v3-shell{
  --sidebar:250px;
  min-height:100vh;
  background:#06131f;
}
.profile-v3-shell .main-wrap,
.city-v3-shell .main-wrap{
  min-height:100vh;
  color:#eef5f6;
  background:
    radial-gradient(circle at 72% -8%,rgba(28,87,119,.16),transparent 33%),
    radial-gradient(circle at 18% 100%,rgba(17,111,83,.10),transparent 30%),
    linear-gradient(180deg,#081725 0%,#06131f 48%,#05111b 100%);
}
.profile-v3-shell .topbar,
.city-v3-shell .topbar{
  background:linear-gradient(90deg,#071521,#0a1d2d 58%,#07131f);
  border-bottom-color:#173248;
  box-shadow:0 8px 26px rgba(0,0,0,.18);
}
.profile-v3-shell .topbar .city-line,
.city-v3-shell .topbar .city-line{opacity:.22}
.profile-v3-shell .search input,
.city-v3-shell .search input{
  background:#0d2030;
  border-color:#1c3a4e;
  color:#dce8ed;
}
.profile-v3-shell .sidebar,
.city-v3-shell .sidebar{
  background:linear-gradient(180deg,#06131f 0%,#06111c 67%,#071722 100%);
  border-left-color:#173247;
}
.profile-v3-shell .sidebar::after,
.city-v3-shell .sidebar::after{display:none}
.profile-v3-shell .sidebar-art,
.city-v3-shell .sidebar-art{
  min-height:320px;
  background:
    linear-gradient(180deg,rgba(5,16,27,1) 0%,rgba(5,16,27,.18) 20%,rgba(5,16,27,.2) 70%,rgba(5,16,27,.98) 100%),
    url("assets/city-photo.jpg") center/cover no-repeat;
  opacity:.82;
}
.profile-v3-shell .sidebar-art p,
.city-v3-shell .sidebar-art p{color:#e2c887}
.profile-v3-shell .nav-item.is-active,
.city-v3-shell .nav-item.is-active{
  background:linear-gradient(100deg,#9d7537,#dfbb70 65%,#e7ca85);
  color:#fff;
  box-shadow:0 10px 28px rgba(165,119,45,.18),inset 0 0 0 1px rgba(255,239,199,.25);
}
.profile-v3-shell .content,
.city-v3-shell .content{max-width:1500px;padding:22px 24px 90px}

/* ----- profile ----- */
.profile-v3{display:grid;gap:16px}
.profile-hero-v3{
  height:260px;
  position:relative;
  overflow:hidden;
  border-radius:21px;
  border:1px solid #29465b;
  box-shadow:0 24px 55px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.025);
}
.profile-hero-v3__cover{
  position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(5,17,28,.18),rgba(5,17,28,.08)),
    url("assets/profile-cover.jpg") center 43%/cover no-repeat;
  transform:scale(1.12);
  filter:saturate(.88) contrast(1.04);
}
.profile-hero-v3__overlay{
  position:absolute;inset:0;
  background:
    radial-gradient(circle at 50% 46%,transparent 0 13%,rgba(4,15,24,.08) 34%,rgba(4,15,24,.72) 90%),
    linear-gradient(180deg,rgba(4,14,23,.10) 20%,rgba(4,14,23,.92) 100%);
}
.profile-hero-v3__identity{
  position:absolute;right:28px;bottom:26px;left:220px;
  display:flex;align-items:flex-end;gap:18px;z-index:2;
}
.profile-photo-v3{
  width:104px;height:104px;flex:0 0 104px;border-radius:50%;position:relative;
  border:3px solid #e0bb70;background:#0b1e2b;
  box-shadow:0 15px 34px rgba(0,0,0,.4),0 0 0 5px rgba(7,21,33,.72);
  overflow:visible;
}
.profile-photo-v3 span{position:absolute;inset:3px;border-radius:50%;background:url("assets/profile-cover.jpg") center/cover no-repeat}
.profile-photo-v3 i{position:absolute;right:4px;bottom:7px;width:17px;height:17px;border-radius:50%;background:#22cf82;border:3px solid #071521;box-shadow:0 0 14px rgba(34,207,130,.5)}
.profile-identity-copy{padding-bottom:5px}.profile-name-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.profile-name-line h1{font-size:27px;margin:0;color:#fff}.profile-name-line span{font-size:8px;padding:5px 8px;border:1px solid rgba(78,206,158,.25);background:rgba(32,146,105,.13);color:#6fe0ae;border-radius:999px}.profile-identity-copy>p{margin:7px 0 10px;color:#a4b6c0;font-size:10px;direction:ltr;text-align:right}.profile-mini-tags{display:flex;gap:7px;flex-wrap:wrap}.profile-mini-tags span{padding:6px 9px;border:1px solid #365164;border-radius:8px;background:rgba(5,22,33,.65);color:#c8d6dc;font-size:8px}.profile-mini-tags span:first-child{color:#e6bd6a;border-color:rgba(227,184,101,.28);background:rgba(98,68,19,.18)}.profile-mini-tags span:last-child{color:#67dda9}
.profile-hero-actions{position:absolute;left:24px;bottom:28px;z-index:3;display:flex;gap:8px}.profile-edit-btn,.profile-icon-btn{height:38px;border:1px solid rgba(236,198,119,.33);border-radius:10px;background:rgba(7,23,34,.76);color:#e9c878;backdrop-filter:blur(12px);font-weight:800}.profile-edit-btn{padding:0 17px}.profile-icon-btn{width:38px;font-size:17px}.profile-edit-btn:hover,.profile-icon-btn:hover{background:#d8b367;color:#101b20}

.profile-top-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.profile-top-stats section{min-height:100px;padding:15px 17px;border-radius:14px;border:1px solid #29465a;background:linear-gradient(180deg,#0a1f2e,#081927);box-shadow:0 12px 30px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.02)}.profile-top-stats section>span{display:block;color:#8fa3af;font-size:8px}.profile-top-stats section>div{display:flex;align-items:baseline;gap:8px;margin-top:7px}.profile-top-stats strong{font-size:23px;color:#f1f5f6;direction:ltr}.profile-top-stats em{font-size:8px;font-style:normal;color:#52dc9f}.profile-top-stats small{display:block;margin-top:5px;color:#6f8795;font-size:7px}
.profile-v3-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:14px;align-items:start;direction:ltr}.profile-v3-main,.profile-v3-side{direction:rtl}.profile-v3-main,.profile-v3-side{display:grid;gap:14px}.profile-card-v3{border:1px solid #29475b;border-radius:16px;background:linear-gradient(180deg,#0a1d2b,#071722);box-shadow:0 17px 38px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.02);padding:18px;color:#edf4f6}.profile-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px}.profile-section-head>div>span{display:block;color:#7893a1;font-size:7.5px;margin-bottom:3px}.profile-section-head h2{font-size:15px;margin:0;color:#f0f5f6}.profile-section-head>button{border:0;background:transparent;color:#d9b86c;font-size:8px}.profile-section-head.compact{margin-bottom:10px}.profile-period-tabs{display:flex!important;gap:3px;padding:3px;border:1px solid #294457;border-radius:9px;background:#071723}.profile-period-tabs button{height:27px;padding:0 12px;border:0;border-radius:6px;background:transparent;color:#7891a0;font-size:7px}.profile-period-tabs button.active{background:#102c3d;color:#e5bd6a;box-shadow:inset 0 0 0 1px #345268}
.rating-chart-v3{height:215px;display:grid;grid-template-columns:36px minmax(0,1fr);gap:8px}.chart-y{display:flex;flex-direction:column;justify-content:space-between;padding:6px 0 24px;color:#617b8b;font-size:7px;text-align:left;direction:ltr}.chart-area{position:relative;min-width:0}.chart-grid-lines{position:absolute;inset:5px 0 24px;display:flex;flex-direction:column;justify-content:space-between}.chart-grid-lines i{height:1px;background:#1d3547}.chart-area svg{position:absolute;inset:5px 0 24px;width:100%;height:calc(100% - 29px);overflow:visible}.chart-line{fill:none;stroke:#39d49a;stroke-width:3;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 7px rgba(57,212,154,.32))}.chart-fill{fill:url(#profileChartFill)}.chart-point--last{position:absolute;top:8px;right:0;width:10px;height:10px;border-radius:50%;background:#48dda2;border:2px solid #0a1c29;box-shadow:0 0 0 5px rgba(72,221,162,.12),0 0 18px rgba(72,221,162,.42)}.chart-point--last b{position:absolute;top:-29px;right:-18px;background:#123426;border:1px solid #2c805f;color:#79e7b5;border-radius:7px;padding:4px 7px;font-size:7px;direction:ltr}.chart-labels{position:absolute;right:0;bottom:0;left:0;display:flex;justify-content:space-between;color:#5f7887;font-size:6.5px}.performance-summary-v3{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #1d3445;margin-top:10px;padding-top:13px}.performance-summary-v3 div{text-align:center;border-left:1px solid #193242}.performance-summary-v3 div:last-child{border-left:0}.performance-summary-v3 span{display:block;color:#78909d;font-size:7px}.performance-summary-v3 strong{display:block;margin-top:4px;color:#eef4f5;font-size:14px;direction:ltr}
.recent-game-list-v3{display:grid}.recent-game-row-v3{min-height:61px;display:grid;grid-template-columns:minmax(0,1fr) 72px 54px 64px;align-items:center;gap:10px;border-top:1px solid #173243}.recent-game-row-v3:first-child{border-top:0}.recent-opponent-v3{display:flex;align-items:center;gap:9px}.recent-opponent-v3 .mini-avatar{width:34px;height:34px}.recent-opponent-v3 strong,.recent-opponent-v3 small{display:block}.recent-opponent-v3 strong{font-size:9px}.recent-opponent-v3 small{font-size:6.5px;color:#6f8794;margin-top:3px}.game-result-v3{height:25px;border-radius:7px;display:grid;place-items:center;font-size:7px;border:1px solid}.game-result-v3--win{color:#67dfa8;background:rgba(23,145,97,.12);border-color:rgba(58,204,147,.22)}.game-result-v3--draw{color:#e7c46f;background:rgba(145,109,36,.13);border-color:rgba(220,180,94,.21)}.game-result-v3--loss{color:#ff8e8e;background:rgba(185,57,57,.11);border-color:rgba(224,79,79,.2)}.game-rating-v3{font-size:9px;text-align:center;direction:ltr}.game-rating-v3.up{color:#55dca0}.game-rating-v3.down{color:#ef7979}.recent-game-row-v3>button{height:29px;border:1px solid #29485b;background:#0b2130;color:#9db1bc;border-radius:7px;font-size:7px}
.profile-league-v3{text-align:center;padding-top:23px}.league-orbit-v3{width:90px;height:90px;border-radius:50%;margin:0 auto 12px;display:grid;place-items:center;position:relative;background:radial-gradient(circle,#1e442d 0 31%,#102b2b 33% 47%,transparent 49%);border:1px solid rgba(223,184,104,.25)}.league-orbit-v3::before,.league-orbit-v3::after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(224,184,101,.13)}.league-orbit-v3::before{inset:-8px}.league-orbit-v3::after{inset:10px}.league-orbit-v3 span{font-size:37px;color:#e3ba68;filter:drop-shadow(0 5px 8px rgba(0,0,0,.35))}.league-orbit-v3 i{position:absolute;width:8px;height:8px;border-radius:50%;background:#e4bd6b;top:3px;right:16px;box-shadow:0 0 13px #dfb966}.profile-side-kicker{color:#7f96a3;font-size:7px}.profile-league-v3 h3,.profile-goal-v3 h3{font-size:16px;margin:4px 0 7px}.profile-league-v3 p,.profile-goal-v3 p{color:#7e95a2;font-size:7.5px;line-height:1.8;margin:0}.profile-league-v3 p b{color:#e0b968}.league-progress-v3{height:7px;background:#102b39;border-radius:999px;overflow:hidden;margin:14px 0 5px}.league-progress-v3 i{display:block;height:100%;background:linear-gradient(90deg,#a66f27,#e4bd69);border-radius:inherit}.league-progress-label{display:flex;justify-content:space-between;color:#66808e;font-size:6.5px;direction:ltr}.profile-league-v3>button,.city-hall-v3>button{margin-top:14px;border:0;background:transparent;color:#e2bd70;font-size:8px}
.achievement-grid-v3{display:grid;grid-template-columns:1fr 1fr;gap:8px}.achievement-grid-v3>div{min-height:83px;border:1px solid #294558;border-radius:11px;background:#091a27;padding:11px;text-align:center}.achievement-grid-v3 span{display:block;font-size:23px}.achievement-grid-v3 strong{display:block;margin-top:4px;font-size:14px}.achievement-grid-v3 small{display:block;margin-top:2px;color:#758e9b;font-size:6.5px}.profile-goal-v3{text-align:center}.goal-ring-v3{width:92px;height:92px;margin:14px auto;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#39d49b 0 72%,#132d3b 72% 100%);position:relative}.goal-ring-v3::after{content:"";position:absolute;inset:8px;border-radius:50%;background:#081a27}.goal-ring-v3 span{position:relative;z-index:1;font-size:17px;font-weight:900;direction:ltr;color:#66e0ae}.profile-goal-v3 .btn{width:100%;margin-top:13px;height:37px;min-height:37px;font-size:9px}

/* ----- city / Neyshabur ----- */
.city-v3{display:grid;gap:16px}.city-hero-v3{height:300px;position:relative;overflow:hidden;border-radius:21px;border:1px solid #304b5d;box-shadow:0 24px 60px rgba(0,0,0,.30)}.city-hero-v3__media{position:absolute;inset:0;background:url("assets/city-photo.jpg") center 55%/cover no-repeat;transform:scale(1.12);filter:saturate(.84) contrast(1.08)}.city-hero-v3__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,16,26,.25),rgba(5,16,26,.64) 45%,rgba(5,16,26,.96) 92%),linear-gradient(180deg,rgba(3,12,19,.10),rgba(3,12,19,.45))}.city-hero-v3__content{position:absolute;right:38px;top:50%;transform:translateY(-54%);z-index:2;max-width:560px}.city-eyebrow{display:inline-flex;padding:6px 10px;border-radius:999px;background:rgba(210,171,89,.13);border:1px solid rgba(224,184,101,.30);color:#e4bd6c;font-size:8px}.city-hero-v3__content h1{font-size:30px;line-height:1.5;margin:10px 0 5px;color:#fff}.city-hero-v3__content p{margin:0;color:#afbec5;font-size:10px;line-height:1.9}.city-hero-actions{display:flex;gap:8px;margin-top:19px}.city-ghost-btn{height:40px;padding:0 17px;border-radius:10px;border:1px solid #3a5263;background:rgba(7,22,32,.63);color:#d4e0e4;font-size:9px}.city-hero-stats{position:absolute;left:20px;bottom:18px;display:grid;grid-template-columns:repeat(3,1fr);min-width:360px;z-index:2;border:1px solid #395165;border-radius:13px;background:rgba(5,18,28,.73);backdrop-filter:blur(15px);overflow:hidden}.city-hero-stats div{text-align:center;padding:12px 10px;border-left:1px solid #304858}.city-hero-stats div:last-child{border-left:0}.city-hero-stats strong,.city-hero-stats span{display:block}.city-hero-stats strong{font-size:17px;color:#f0f5f6;direction:ltr}.city-hero-stats span{font-size:7px;color:#8298a4;margin-top:2px}
.city-v3-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:14px;align-items:start;direction:ltr}.city-v3-main,.city-v3-side{direction:rtl;display:grid;gap:14px}.city-section-card,.city-side-card{border:1px solid #29475a;border-radius:16px;background:linear-gradient(180deg,#0a1e2c,#071722);box-shadow:0 16px 36px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.02);padding:18px;color:#eef5f6}.city-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}.city-section-head>div>span{display:block;font-size:7px;color:#7d94a1;margin-bottom:3px}.city-section-head h2{font-size:15px;margin:0}.city-section-head>button{border:0;background:transparent;color:#d9b86b;font-size:7.5px}.city-section-head.compact{margin-bottom:8px}
.champion-v3-body{display:grid;grid-template-columns:92px minmax(0,1fr) 110px;gap:16px;align-items:center;min-height:140px;padding:10px 2px}.champion-v3-avatar{width:86px;height:86px;border-radius:50%;position:relative;border:3px solid #dab465;box-shadow:0 0 0 5px #0a1b27,0 12px 28px rgba(0,0,0,.3)}.champion-v3-avatar span{position:absolute;inset:3px;border-radius:50%;background:url("assets/profile-cover.jpg") center/cover no-repeat}.champion-v3-avatar i{position:absolute;left:-7px;top:-6px;width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(180deg,#f1cb78,#b87929);color:#132022;font-size:11px;font-style:normal;font-weight:900;border:3px solid #0a1b27}.champion-v3-badge{display:inline-flex;padding:5px 8px;border-radius:999px;background:rgba(156,109,31,.15);border:1px solid rgba(225,184,99,.25);color:#e5bd69;font-size:7px}.champion-v3-copy h3{font-size:20px;margin:7px 0 2px}.champion-v3-copy>p{font-size:7.5px;color:#8197a3;margin:0}.champion-v3-metrics{display:flex;gap:22px;margin-top:13px}.champion-v3-metrics span,.champion-v3-metrics strong{display:block}.champion-v3-metrics span{font-size:6.5px;color:#728a98}.champion-v3-metrics strong{font-size:11px;margin-top:3px;direction:ltr}.champion-v3-rating{text-align:center;border-right:1px solid #243e50;padding-right:18px}.champion-v3-rating small,.champion-v3-rating strong,.champion-v3-rating span{display:block}.champion-v3-rating small{font-size:6.5px;color:#728a97}.champion-v3-rating strong{font-size:25px;color:#55dda2;margin:4px 0;direction:ltr}.champion-v3-rating span{font-size:7px;color:#4bcf97}
.neighborhood-grid-v3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.neighborhood-v3{min-height:92px;display:grid;grid-template-columns:47px minmax(0,1fr) 28px;align-items:center;gap:10px;padding:11px;border:1px solid #294659;border-radius:12px;background:#091b28;color:#edf4f6;text-align:right;position:relative;overflow:hidden}.neighborhood-v3::before{content:"";position:absolute;inset:0;opacity:.15;pointer-events:none}.neighborhood-v3--gold::before{background:radial-gradient(circle at 0 0,#e3b962,transparent 50%)}.neighborhood-v3--blue::before{background:radial-gradient(circle at 0 0,#3d9ad9,transparent 50%)}.neighborhood-v3--purple::before{background:radial-gradient(circle at 0 0,#9664d9,transparent 50%)}.neighborhood-v3--green::before{background:radial-gradient(circle at 0 0,#36d59b,transparent 50%)}.neighborhood-v3--navy::before{background:radial-gradient(circle at 0 0,#4d759d,transparent 50%)}.neighborhood-v3--amber::before{background:radial-gradient(circle at 0 0,#cf8a39,transparent 50%)}.neighborhood-v3>*{position:relative;z-index:1}.neighborhood-v3-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:#102536;border:1px solid #36546a;font-size:20px}.neighborhood-v3-copy span,.neighborhood-v3-copy strong,.neighborhood-v3-copy small{display:block}.neighborhood-v3-copy span{font-size:7px;color:#8097a4}.neighborhood-v3-copy strong{font-size:9px;margin:3px 0}.neighborhood-v3-copy small{font-size:6.5px;color:#65808e;direction:ltr;text-align:right}.neighborhood-v3-rank{width:27px;height:27px;border-radius:8px;display:grid;place-items:center;background:#102737;border:1px solid #314e62;color:#dab565;font-size:8px;direction:ltr}.neighborhood-v3:hover{border-color:#466a80;transform:translateY(-1px)}
.city-events-list{display:grid;gap:7px}.city-events-list>button{min-height:62px;display:grid;grid-template-columns:50px minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px 11px;border:1px solid #284658;border-radius:11px;background:#091a27;color:#eef4f5;text-align:right}.city-event-date{width:45px;height:45px;border-radius:10px;background:#102636;border:1px solid #375166;display:grid;place-items:center;align-content:center;color:#879eaa;font-size:6px}.city-event-date b{display:block;font-size:14px;color:#e3bd6d;line-height:1}.city-events-list strong,.city-events-list small{display:block}.city-events-list strong{font-size:9px}.city-events-list small{margin-top:4px;font-size:6.5px;color:#748d9a}.city-events-list em{font-size:7px;font-style:normal;padding:6px 9px;border-radius:7px;background:#0d2c30;color:#58d69f;border:1px solid rgba(64,205,150,.16)}
.city-rank-card-v3{text-align:center}.city-side-kicker{color:#78919e;font-size:7px}.city-user-rank strong,.city-user-rank span{display:block}.city-user-rank strong{font-size:48px;line-height:1;margin:12px 0 5px;color:#efc76f;direction:ltr}.city-user-rank span{font-size:7px;color:#748c99}.city-rank-progress{height:7px;border-radius:999px;background:#102a38;overflow:hidden;margin:15px 0 8px}.city-rank-progress i{display:block;height:100%;background:linear-gradient(90deg,#1ba876,#4be0a5);border-radius:inherit}.city-rank-card-v3 p{font-size:7px;line-height:1.8;color:#788f9c}.city-rank-card-v3 .btn{width:100%;height:36px;min-height:36px;margin-top:7px;font-size:8px}.city-hall-v3{text-align:center;background:radial-gradient(circle at 50% 0,rgba(197,146,57,.15),transparent 42%),linear-gradient(180deg,#0a1d2b,#071722)}.city-hall-icon{width:72px;height:72px;border-radius:50%;margin:0 auto 11px;display:grid;place-items:center;font-size:35px;color:#e5bc68;background:radial-gradient(circle,#2b2a22,#151f25 70%);border:1px solid rgba(225,184,99,.22);box-shadow:0 0 30px rgba(208,154,62,.08)}.city-hall-v3>span{font-size:7px;color:#b9a472}.city-hall-v3 h3{font-size:14px;margin:5px 0}.city-hall-v3 p{font-size:7px;line-height:1.9;color:#728a97}.city-community-v3{display:grid;gap:5px}.community-row{display:grid;grid-template-columns:36px 1fr;gap:9px;align-items:center;padding:9px;border-top:1px solid #1b3445}.community-row:first-of-type{border-top:0}.community-row>span{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:#0e2837;color:#e0b868}.community-row strong,.community-row small{display:block}.community-row strong{font-size:8.5px}.community-row small{font-size:6.5px;color:#718997;margin-top:2px}

@media(max-width:1180px){
  .profile-v3-grid,.city-v3-grid{grid-template-columns:minmax(0,1fr) 270px}
  .profile-top-stats{grid-template-columns:1fr 1fr}
  .neighborhood-grid-v3{grid-template-columns:1fr 1fr}
  .city-hero-stats{min-width:320px}
}
@media(max-width:940px){
  .profile-v3-shell .content,.city-v3-shell .content{padding:14px 14px 82px}
  .profile-v3-grid,.city-v3-grid{grid-template-columns:1fr}
  .profile-v3-side,.city-v3-side{grid-template-columns:repeat(3,1fr)}
  .profile-hero-v3{height:235px}.profile-hero-v3__identity{left:18px}
  .city-hero-v3{height:280px}.city-hero-stats{left:15px;bottom:14px;min-width:310px}
}
@media(max-width:700px){
  .profile-v3-side,.city-v3-side{grid-template-columns:1fr}
  .profile-hero-v3{height:285px}.profile-hero-v3__identity{right:18px;left:18px;bottom:62px;align-items:center}.profile-photo-v3{width:82px;height:82px;flex-basis:82px}.profile-name-line h1{font-size:21px}.profile-hero-actions{right:18px;left:auto;bottom:15px}.profile-top-stats{grid-template-columns:1fr 1fr}.performance-summary-v3{grid-template-columns:repeat(3,1fr);row-gap:12px}.recent-game-row-v3{grid-template-columns:minmax(0,1fr) 55px 45px}.recent-game-row-v3>button{display:none}
  .city-hero-v3{height:360px}.city-hero-v3__shade{background:linear-gradient(180deg,rgba(5,16,26,.3),rgba(5,16,26,.94) 76%)}.city-hero-v3__content{right:20px;left:20px;top:22px;transform:none}.city-hero-v3__content h1{font-size:23px}.city-hero-stats{right:16px;left:16px;bottom:15px;min-width:0}.champion-v3-body{grid-template-columns:75px 1fr}.champion-v3-avatar{width:70px;height:70px}.champion-v3-rating{grid-column:1/-1;border-right:0;border-top:1px solid #243e50;padding:10px 0 0;display:flex;align-items:center;justify-content:space-between}.champion-v3-rating small,.champion-v3-rating strong,.champion-v3-rating span{display:inline}.champion-v3-metrics{gap:14px}.neighborhood-grid-v3{grid-template-columns:1fr}
}
@media(max-width:480px){
  .profile-v3-shell .content,.city-v3-shell .content{padding:10px 10px 76px}
  .profile-hero-v3{height:295px;border-radius:16px}.profile-hero-v3__identity{display:block;bottom:60px}.profile-photo-v3{width:72px;height:72px;float:right;margin-left:12px}.profile-name-line h1{font-size:18px}.profile-name-line span{font-size:6px}.profile-mini-tags span{font-size:6px;padding:5px 6px}.profile-top-stats{gap:7px}.profile-top-stats section{padding:12px;min-height:88px}.profile-top-stats strong{font-size:19px}.profile-card-v3{padding:13px}.profile-period-tabs button{padding:0 8px}.rating-chart-v3{height:180px}.performance-summary-v3{grid-template-columns:repeat(3,1fr)}
  .city-hero-v3{height:390px;border-radius:16px}.city-hero-v3__content h1{font-size:20px}.city-hero-actions .btn,.city-ghost-btn{font-size:7px;padding:0 10px}.city-hero-stats{grid-template-columns:1fr 1fr}.city-hero-stats div:nth-child(3){grid-column:1/-1;border-top:1px solid #304858}.city-section-card,.city-side-card{padding:13px}.champion-v3-metrics{display:grid;grid-template-columns:1fr 1fr}.city-events-list>button{grid-template-columns:45px 1fr}.city-events-list em{display:none}
}

/* ===== Friendly game flow ===== */
.friendly-game-shell .sidebar-art{opacity:.58}
.friendly-game-page::before{background:radial-gradient(circle at 50% 30%,rgba(14,115,148,.16),transparent 33%),radial-gradient(circle at 60% 68%,rgba(0,193,135,.08),transparent 28%)}
.fg-card{width:min(100%,610px)}
.fg-card--setup{min-height:570px}
.fg-icon{background:linear-gradient(145deg,#0b4b61,#082b39);border-color:#2d718a;color:#e9f8ff;box-shadow:0 10px 28px rgba(0,109,146,.20)}
.fg-time-grid{grid-template-columns:repeat(4,1fr)}
.fg-time-grid .qg-time{min-width:0}
.fg-mode-box{overflow:visible}
.fg-fixed-mode{border-radius:13px!important;border:1px solid rgba(72,131,151,.55)!important;background:linear-gradient(180deg,#092b38,#071f2b)!important;cursor:default!important}
.fg-primary{background:linear-gradient(135deg,#05b47e,#058d67 52%,#087755);box-shadow:0 14px 30px rgba(0,139,97,.18)}
.fg-join-link{font-size:11px}.fg-join-link b{color:#e8c472;font-weight:800}

.fg-room-card,.fg-join-card,.fg-invite-confirm,.fg-result-card{min-height:570px;text-align:center;display:flex;flex-direction:column;align-items:center;padding-top:46px}
.fg-room-status,.fg-invite-badge,.fg-ready-badge{display:inline-flex;align-items:center;gap:8px;height:30px;padding:0 13px;border-radius:999px;border:1px solid rgba(57,157,134,.35);background:rgba(5,74,66,.35);color:#92e4c9;font-size:10px;font-weight:800}
.fg-live-dot,.fg-ready-badge span{width:7px;height:7px;border-radius:50%;background:#22dfa4;box-shadow:0 0 12px rgba(34,223,164,.8);animation:qgBlink 1s infinite alternate}
.fg-room-symbol{width:76px;height:76px;border-radius:23px;display:grid;place-items:center;margin:18px auto 13px;background:radial-gradient(circle at 35% 25%,#15657b,#073142 72%);border:1px solid #28677d;color:#f5d181;font-size:40px;box-shadow:0 18px 45px rgba(0,0,0,.28),0 0 28px rgba(13,113,141,.15)}
.fg-room-card h1,.fg-invite-confirm h1,.fg-result-card h1{margin:0;color:#fff;font-size:25px}.fg-muted{max-width:440px;margin:9px auto 20px;color:#829aa5;font-size:10px;line-height:2}
.fg-code-box{width:min(100%,430px);height:82px;border-radius:14px;border:1px solid #2c5c70;background:linear-gradient(180deg,#0a2b3b,#08222f);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;padding:0 16px;text-align:right}.fg-code-box span{font-size:9px;color:#809aa6}.fg-code-box strong{direction:ltr;font-size:24px;letter-spacing:2px;color:#f0c86f;text-align:center}.fg-code-box button,.fg-invite-box button{border:1px solid #345e70;background:#0b3344;color:#dcebf0;border-radius:9px;height:34px;padding:0 12px;font-size:9px;font-weight:800}.fg-code-box button:hover,.fg-invite-box button:hover{background:#104359}
.fg-invite-box{width:min(100%,430px);margin-top:10px;border:1px solid #173e50;background:#071c28;border-radius:12px;padding:10px 11px;display:grid;gap:9px}.fg-invite-url{font-size:8px;color:#63818e;direction:ltr;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fg-invite-box>div{display:flex;gap:7px;justify-content:center}
.fg-room-meta,.fg-ready-settings,.fg-result-stats{width:min(100%,430px);display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:12px}.fg-room-meta>div,.fg-ready-settings>div,.fg-result-stats>div{min-height:67px;border:1px solid #183e50;border-radius:11px;background:#08212e;display:grid;place-items:center;align-content:center;gap:4px}.fg-room-meta span,.fg-ready-settings span,.fg-result-stats span{font-size:8px;color:#7e98a4}.fg-room-meta strong,.fg-ready-settings strong,.fg-result-stats strong{font-size:14px;color:#fff;direction:ltr}.fg-room-meta small,.fg-ready-settings small{font-size:7px;color:#5fd1ab}
.fg-waiting{width:min(100%,430px);min-height:92px;margin-top:11px;border:1px dashed rgba(41,111,132,.55);border-radius:13px;display:flex;align-items:center;justify-content:center;gap:15px;background:rgba(8,34,45,.64);text-align:right}.fg-waiting>div:last-child{display:grid;gap:5px}.fg-waiting strong{font-size:11px;color:#dce9ec}.fg-waiting small{font-size:8px;color:#708a96}.fg-waiting-rings{width:55px;height:55px;position:relative;display:grid;place-items:center}.fg-waiting-rings i{position:absolute;border:1px solid rgba(23,213,158,.28);border-radius:50%;animation:qgPulse 1.8s infinite}.fg-waiting-rings i:first-child{width:42px;height:42px}.fg-waiting-rings i:nth-child(2){width:55px;height:55px;animation-delay:.25s}.fg-waiting-rings span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#0b574c;color:#fff;z-index:2}.fg-cancel{margin-top:16px}

.fg-code-label{width:min(100%,420px);font-size:10px;color:#c9d8dd;text-align:right;margin-top:8px}.fg-code-input-wrap{width:min(100%,420px);height:64px;border:1px solid #2a5a70;border-radius:13px;background:#071f2b;margin-top:8px;display:grid;grid-template-columns:1fr 52px;align-items:center;overflow:hidden}.fg-code-input{height:100%;border:0;outline:0;background:transparent;color:#fff;font:800 20px/1 sans-serif;direction:ltr;letter-spacing:1.7px;padding:0 18px}.fg-code-input::placeholder{color:#345567}.fg-code-input-wrap>span{font-size:25px;color:#ddb85e;border-right:1px solid #1b4558;height:100%;display:grid;place-items:center}.fg-input-hint{width:min(100%,420px);text-align:right;font-size:8px;color:#667f8a;margin:8px 0 24px}

.fg-invite-confirm{padding-top:40px}.fg-host-card{width:min(100%,390px);height:96px;border-radius:15px;border:1px solid #28576b;background:linear-gradient(180deg,#0a2b39,#071e2a);display:grid;grid-template-columns:68px 1fr auto;align-items:center;gap:12px;padding:0 14px;text-align:right}.fg-host-card .qg-avatar{width:58px;height:58px;border-width:2px}.fg-host-card strong{display:block;color:#fff;font-size:13px}.fg-host-card span{display:block;color:#86a1ad;font-size:9px;direction:ltr;margin-top:3px}.fg-host-card b{font-size:8px;color:#e9bf63;background:#3a2d12;border:1px solid #6b5220;padding:5px 8px;border-radius:999px}.fg-unrated-note{width:min(100%,430px);border:1px solid rgba(39,126,119,.3);background:rgba(8,74,68,.24);color:#81cabb;border-radius:10px;padding:10px 12px;font-size:8.5px;margin-top:11px;line-height:1.8}.fg-unrated-note--compact{margin-top:11px}.fg-invite-confirm .fg-primary{margin-top:19px}

.fg-ready-card{min-height:570px!important;padding-top:37px!important}.fg-ready-card h1{margin:15px 0 26px!important;font-size:24px!important}.fg-vs{max-width:450px}.fg-vs .qg-player small{color:#6e8d99;font-size:8px}.fg-ready-settings{grid-template-columns:1fr 1fr;margin-top:24px}.fg-start{margin-top:18px!important}.fg-ready-badge{color:#8de4c6}

.fg-result-card{padding-top:38px}.fg-result-trophy{font-size:50px;filter:drop-shadow(0 10px 18px rgba(224,175,67,.25))}.fg-result-kicker{font-size:9px;color:#7f9ba6;margin-top:8px}.fg-result-card h1{color:#f0c56a;font-size:30px;margin-top:6px}.fg-result-card>p{font-size:9px;color:#7e98a3;margin:8px 0 21px}.fg-result-vs{max-width:430px}.fg-result-stats{grid-template-columns:repeat(3,1fr);margin-top:20px}.fg-result-stats>div{min-height:62px}.fg-result-actions{display:flex;gap:8px;margin-top:10px}.fg-result-actions button{height:38px;border-radius:9px;border:1px solid #294e60;background:#082432;color:#b9ced6;padding:0 14px;font-size:9px}.fg-result-actions button:hover{background:#0b3243}

@media(max-width:720px){
  .fg-time-grid{grid-template-columns:repeat(2,1fr)}
  .fg-room-card,.fg-join-card,.fg-invite-confirm,.fg-result-card{padding:34px 16px 22px;min-height:0}
  .fg-code-box{grid-template-columns:1fr auto;min-height:92px;height:auto;padding:12px}.fg-code-box span{grid-column:1/-1;text-align:right}.fg-code-box strong{text-align:right;font-size:20px}
  .fg-room-meta,.fg-ready-settings{grid-template-columns:1fr 1fr}.fg-result-stats{grid-template-columns:1fr 1fr 1fr}
  .fg-host-card{grid-template-columns:55px 1fr auto}.fg-host-card .qg-avatar{width:48px;height:48px}
}
@media(max-width:430px){
  .fg-room-meta,.fg-ready-settings{grid-template-columns:1fr}.fg-result-stats{gap:5px}.fg-result-stats strong{font-size:12px}.fg-result-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.fg-result-actions button{padding:0 8px}
}

/* =========================================================
   HOME V4 — requested cleanup/fixes
   1) hero media anchored to LEFT correctly in RTL
   2) Nishabur Cup CTA no longer overlaps countdown
   3) Today matches + Hall of Fame removed; grid rebalanced
   ========================================================= */

/* `inset:0` + fixed width was over-constraining the media in RTL and could
   anchor it to the right. Explicit edges keep the artwork where intended. */
.home-hero__media{
  top:0;
  bottom:0;
  left:0;
  right:auto;
  width:66%;
  height:100%;
  background-position:left center;
  background-size:cover;
  background-repeat:no-repeat;
  transform:none;
}
.home-hero__shade{
  background:linear-gradient(90deg,
    rgba(5,15,24,.02) 0%,
    rgba(5,15,24,.08) 36%,
    rgba(5,15,24,.58) 55%,
    rgba(7,21,34,.94) 72%,
    #071522 88%,
    #071522 100%);
}

/* Let the match content flow naturally instead of absolutely positioning
   the CTA over the timer. */
.target-match-card{min-height:344px}
.target-match-body{height:288px}
.target-match-copy{
  width:74%;
  height:100%;
  padding:18px 20px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.target-match-meta{margin-top:13px}
.target-countdown{margin-top:12px}
.target-register{
  position:static;
  right:auto;
  bottom:auto;
  width:270px;
  height:42px;
  margin-top:12px;
  flex:0 0 auto;
}

/* With the lower promotional sections removed, keep the remaining dashboard
   visually balanced and aligned. */
.home-dashboard .page-main{align-self:start}
.home-dashboard .home-side{align-self:start}
.home-mid-grid{align-items:stretch}
.target-ranking-card{min-height:344px}
.champions-card{margin-bottom:0}

@media(max-width:1320px){
  .target-register{width:230px}
  .target-match-copy{width:80%}
}
@media(max-width:1180px){
  .home-hero__media{width:68%}
  .target-match-card,.target-ranking-card{min-height:330px}
  .target-match-body{height:274px}
}
@media(max-width:940px){
  .home-dashboard .home-side{grid-template-columns:1fr 1fr;align-items:start}
  .home-dashboard .home-side .target-profile-card,
  .home-dashboard .home-side .champions-card{height:100%}
}
@media(max-width:620px){
  .home-dashboard .home-side{grid-template-columns:1fr}
  .home-hero__media{left:0;right:auto;width:100%;height:100%;background-position:left center;opacity:.72}
  .target-match-card{min-height:0}
  .target-match-body{height:auto;min-height:302px}
  .target-match-copy{width:100%;height:auto;min-height:302px;padding:17px 14px}
  .target-register{width:100%;margin-top:13px}
  .target-ranking-card{min-height:315px}
}

/* === Stage 1: real authentication / user profile === */
.auth-loading{min-height:100vh;display:grid;place-items:center;align-content:center;gap:14px;background:radial-gradient(circle at 50% 35%,rgba(33,205,147,.12),transparent 28%),#04171c;color:#dcebea;font-size:13px}.auth-loading .logo-mark{width:62px;height:62px;font-size:30px;box-shadow:0 0 30px rgba(28,207,145,.18)}
.auth-card--real{width:min(620px,100%)}
.auth-form-real{display:grid;gap:4px}.auth-submit{width:100%;margin-top:4px;min-height:44px}.auth-submit[disabled]{opacity:.65;cursor:not-allowed}
.auth-field-error{display:block;color:#cf4b4b;font-size:9px;margin-top:1px;line-height:1.7}.auth-server-warning{background:#fff2d8;border:1px solid #ecd49c;color:#785913;padding:10px 12px;border-radius:10px;font-size:10px;line-height:1.8;margin-bottom:14px}.auth-server-warning small{display:block;color:#8b7441;margin-top:3px}.field textarea{width:100%;border-radius:9px;border:1px solid #d7dfda;background:#fbfcfb;padding:10px 12px;outline:none;color:#1b3737;resize:vertical;font:inherit}.field-hint{font-size:8px;color:#82938f}
.auth-avatar{display:block;object-fit:cover}.auth-avatar--fallback{display:grid;place-items:center;background:linear-gradient(135deg,#0d5a52,#123348);color:#f6d58a;font-weight:900;letter-spacing:-1px;text-transform:uppercase}
.auth-avatar-wrap{background:none!important;overflow:hidden}.auth-avatar--top{width:100%;height:100%;border-radius:50%}
.auth-profile-photo{overflow:visible}.auth-profile-photo .auth-avatar--profile{position:absolute!important;inset:3px!important;width:calc(100% - 6px)!important;height:calc(100% - 6px)!important;border-radius:50%!important;background:linear-gradient(135deg,#0d5a52,#123348)!important;color:#f6d58a!important;display:grid!important;place-items:center!important;font-size:28px;font-weight:900;object-fit:cover;z-index:1}.auth-profile-photo i{z-index:2;background:#687b7a}.auth-profile-photo i.is-online{background:#22cf82}
.auth-secure-dot{color:#27d592;font-size:18px}
.edit-profile-grid{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.45fr);gap:14px;align-items:start}.auth-profile-editor{display:grid;gap:18px}.avatar-editor{display:flex;align-items:center;gap:14px}.avatar-editor__image{width:88px;height:88px;border-radius:50%;overflow:hidden;flex:0 0 88px;border:3px solid rgba(212,175,92,.72);box-shadow:0 10px 34px rgba(0,0,0,.18)}.auth-avatar--editor{width:100%;height:100%;border-radius:50%;font-size:25px}.avatar-editor>div:last-child{display:grid;gap:4px}.avatar-editor strong{font-size:16px;color:#173233}.avatar-editor span{font-size:10px;color:#617774}.avatar-editor small{font-size:8px;color:#879895}.avatar-actions{display:flex;gap:8px;flex-wrap:wrap}.auth-upload-label{cursor:pointer}.auth-profile-form{display:grid;gap:5px}.profile-form-meta{display:flex;gap:9px;flex-wrap:wrap;margin:4px 0 10px}.profile-form-meta span{background:#f2f5f2;border:1px solid #dde5df;padding:7px 9px;border-radius:8px;font-size:9px;color:#5a716e}.profile-form-meta .online{color:#118c5e}.profile-form-meta .offline{color:#7d8b89}
@media(max-width:760px){.auth-card--real{padding:20px}.edit-profile-grid{grid-template-columns:1fr}.avatar-editor__image{width:72px;height:72px;flex-basis:72px}.auth-avatar--editor{font-size:22px}}

/* =========================================================
   UI POLISH V5 — guide, account/logout, premium play,
   profile/city imagery, competition contrast, mobile type.
   ========================================================= */

/* Sidebar account / logout */
.sidebar{overflow-y:auto;scrollbar-width:none}.sidebar::-webkit-scrollbar{display:none}
.sidebar-bottom{margin-top:auto;position:relative;z-index:2;padding:0 13px 13px}
.sidebar-bottom .sidebar-art{margin:10px -13px -13px;min-height:170px;padding:24px 16px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.45)),url("assets/neyshabur-city-premium.jpg") center/cover no-repeat}
.sidebar-logout{width:100%;min-height:44px;border:1px solid rgba(231,82,82,.28);border-radius:11px;background:rgba(161,38,38,.10);color:#ff9a9a;display:flex;align-items:center;gap:11px;padding:0 14px;text-align:right;font-weight:700;transition:.18s ease}
.sidebar-logout:hover{background:rgba(188,44,44,.20);border-color:rgba(231,82,82,.45)}
.sidebar-logout .icon{width:19px;height:19px}

/* Account menu in desktop topbar */
.top-actions{display:flex;align-items:center;gap:5px;direction:rtl}
.account-dropdown{position:relative}.account-dropdown>summary{list-style:none;cursor:pointer;min-width:165px;padding:5px 8px;border-radius:12px;transition:.18s}.account-dropdown>summary::-webkit-details-marker{display:none}.account-dropdown[open]>summary,.account-dropdown>summary:hover{background:rgba(255,255,255,.055)}
.account-caret{color:#8fa7ae;font-size:14px;transition:.18s}.account-dropdown[open] .account-caret{transform:rotate(180deg)}
.account-menu{position:absolute;top:calc(100% + 11px);left:0;width:205px;padding:8px;border:1px solid #27475a;border-radius:14px;background:linear-gradient(180deg,#0a1d2a,#071722);box-shadow:0 24px 65px rgba(0,0,0,.45);z-index:90;display:grid;gap:3px;direction:rtl}
.account-menu button{height:42px;border:0;border-radius:9px;background:transparent;color:#dce8eb;display:flex;align-items:center;gap:10px;padding:0 11px;text-align:right}.account-menu button:hover{background:#102d3d}.account-menu .icon{width:18px;height:18px;color:#89aab3}.account-menu__sep{height:1px;background:#243e4e;margin:4px 3px}.account-menu .account-menu__logout{color:#ff9696}.account-menu .account-menu__logout .icon{color:#ff7c7c}
.mobile-top-actions{display:flex;align-items:center;gap:2px}

/* New imagery. The profile banner contains no person; user avatar stays independent. */
.profile-hero-v3__cover{background-image:url("assets/profile-chess-banner.jpg")!important;background-position:center 52%!important;background-size:cover!important;filter:saturate(.92) contrast(1.05)}
.profile-hero-v3__overlay{background:linear-gradient(90deg,rgba(4,14,22,.18),rgba(4,14,22,.58) 43%,rgba(4,14,22,.94) 96%),linear-gradient(180deg,rgba(3,12,19,.10),rgba(3,12,19,.46))!important}
/* Generic sample/champion avatars must not reuse the profile cover. */
.champion-v3-avatar span{background:url("assets/avatar.svg") center/cover no-repeat!important}
.city-hero-v3__media{background-image:url("assets/neyshabur-city-premium.jpg")!important;background-position:center 48%!important;transform:scale(1.035)!important;filter:saturate(.94) contrast(1.07)!important}
.target-match-body{background-image:linear-gradient(90deg,rgba(7,20,32,.97) 0%,rgba(7,20,32,.83) 47%,rgba(7,20,32,.20)),url("assets/neyshabur-city-premium.jpg")!important;background-position:center!important}
.quick-game-shell .sidebar-art{background-image:linear-gradient(180deg,transparent,rgba(3,13,20,.94)),url("assets/neyshabur-city-premium.jpg")!important}

/* Guide */
.guide-shell .main-wrap{background:radial-gradient(circle at 58% -5%,rgba(28,112,106,.12),transparent 32%),linear-gradient(180deg,#071522,#06121f);color:#edf4f5}
.guide-page{display:grid;gap:16px}.guide-hero{position:relative;min-height:180px;border:1px solid #2e4d60;border-radius:21px;padding:28px 30px;display:grid;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:19px;overflow:hidden;background:radial-gradient(circle at 12% 30%,rgba(218,177,91,.13),transparent 29%),linear-gradient(120deg,#091c29,#08212d 56%,#071621)}
.guide-hero::after{content:"♞";position:absolute;left:6%;bottom:-58px;color:#d9af58;font-size:180px;opacity:.055;transform:rotate(-10deg)}.guide-hero>*{position:relative;z-index:1}.guide-hero__icon{width:68px;height:68px;border-radius:20px;display:grid;place-items:center;color:#f0c873;border:1px solid rgba(224,181,93,.30);background:rgba(103,73,20,.14)}.guide-hero__icon .icon{width:31px;height:31px}.guide-hero span{font-size:10px;color:#e1b967;font-weight:800}.guide-hero h1{font-size:25px;margin:5px 0 5px}.guide-hero p{margin:0;color:#9eb0b8;font-size:11px;line-height:1.8}
.guide-shortcuts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.guide-shortcuts button{min-height:82px;border:1px solid #294658;border-radius:14px;background:#0a1c29;color:#dfe9ec;padding:14px;display:flex;align-items:center;gap:12px;text-align:right}.guide-shortcuts button:hover{border-color:#45677b;background:#0d2635}.guide-shortcuts .icon{width:27px;height:27px;color:#ddb765}.guide-shortcuts span{display:grid;gap:3px}.guide-shortcuts strong{font-size:13px}.guide-shortcuts small{font-size:10px;color:#8299a5}
.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.guide-item{border:1px solid #294658;border-radius:14px;background:#091b28;overflow:hidden}.guide-item summary{min-height:62px;display:grid;grid-template-columns:40px 1fr 28px;align-items:center;gap:10px;padding:0 14px;cursor:pointer;list-style:none;color:#eaf0f2}.guide-item summary::-webkit-details-marker{display:none}.guide-item[open] summary{border-bottom:1px solid #253f50;background:#0b2230}.guide-item__icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#102c3c;color:#ddb867}.guide-item__icon .icon{width:19px;height:19px}.guide-plus{font-size:20px;color:#6f8996;transition:.18s}.guide-item[open] .guide-plus{transform:rotate(45deg);color:#e1bd6d}.guide-item__body{padding:14px 16px 16px}.guide-item__body p{margin:0;color:#a4b5bd;font-size:11px;line-height:2}.guide-league-strip{display:flex;align-items:center;gap:7px;margin-top:12px}.guide-league-strip span{padding:5px 8px;border-radius:999px;background:#102b38;color:#d9e5e8;font-size:9px}.guide-league-strip i{height:1px;flex:1;background:#29495a}.guide-prize-note{margin-top:11px;padding:9px 11px;border-radius:9px;border:1px solid rgba(222,178,88,.19);background:rgba(105,75,20,.10);color:#aab9bf;font-size:9.5px;line-height:1.8}.guide-prize-note b{color:#e2ba66}.guide-support{border:1px solid #2c4a5b;border-radius:15px;background:linear-gradient(90deg,#091c29,#0b2230);padding:15px 17px;display:flex;align-items:center;justify-content:space-between;gap:14px}.guide-support>div{display:flex;align-items:center;gap:12px}.guide-support .icon{width:26px;height:26px;color:#dfb968}.guide-support span{display:grid;gap:3px}.guide-support strong{font-size:13px}.guide-support small{font-size:9.5px;color:#8298a4}

/* Premium Play landing */
.play-premium-shell .main-wrap{background:radial-gradient(circle at 62% 3%,rgba(31,104,102,.13),transparent 35%),linear-gradient(180deg,#071421,#06111d);color:#eef5f6}.play-premium{display:grid;gap:15px}.play-premium-hero{height:235px;position:relative;overflow:hidden;border-radius:21px;border:1px solid #304f62;box-shadow:0 20px 55px rgba(0,0,0,.25)}.play-premium-hero__visual{position:absolute;inset:0;background:url("assets/play-premium-bg.jpg") center 48%/cover no-repeat;transform:scale(1.02)}.play-premium-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,15,24,.22),rgba(5,15,24,.66) 47%,rgba(5,15,24,.96) 91%),linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.25))}.play-premium-hero__copy{position:absolute;right:34px;top:50%;transform:translateY(-50%);max-width:540px}.play-premium-hero__copy>span{display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(220,181,106,.13);border:1px solid rgba(220,181,106,.26);color:#e4bc69;font-size:9px}.play-premium-hero__copy h1{margin:8px 0 5px;font-size:29px}.play-premium-hero__copy p{margin:0;color:#adbbc2;font-size:11px;line-height:1.9}.play-premium-hero__piece{position:absolute;left:55px;bottom:-31px;font-size:178px;color:#e1b85e;opacity:.13;text-shadow:0 18px 45px rgba(0,0,0,.6)}
.play-mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.play-mode-card{position:relative;min-height:230px;padding:24px;border-radius:18px;border:1px solid #2c4d60;color:#fff;text-align:right;display:grid;grid-template-columns:70px minmax(0,1fr) 38px;align-items:center;gap:18px;overflow:hidden;transition:.22s;box-shadow:0 15px 34px rgba(0,0,0,.17)}.play-mode-card:hover{transform:translateY(-3px);border-color:#4a6c7c}.play-mode-card--quick{background:radial-gradient(circle at 10% 15%,rgba(34,213,144,.18),transparent 35%),linear-gradient(135deg,#07342e,#0a1d29 58%,#071723)}.play-mode-card--friendly{background:radial-gradient(circle at 10% 15%,rgba(72,141,221,.18),transparent 35%),linear-gradient(135deg,#0b2944,#0a1d2b 58%,#071723)}.play-mode-card::after{content:"";position:absolute;width:210px;height:210px;border-radius:50%;left:-75px;bottom:-110px;border:1px solid rgba(255,255,255,.055)}.play-mode-icon{width:68px;height:68px;border-radius:21px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.13);background:rgba(6,18,25,.40)}.play-mode-icon .icon{width:31px;height:31px}.play-mode-card--quick .play-mode-icon{color:#69e0ad}.play-mode-card--friendly .play-mode-icon{color:#7dc4f5}.play-mode-copy{position:relative;z-index:2}.play-mode-copy>span{font-size:9px;color:#8299a4}.play-mode-copy h2{font-size:22px;margin:4px 0 6px}.play-mode-copy p{font-size:10px;line-height:1.9;color:#99abb4;margin:0;max-width:460px}.play-mode-features{display:flex;gap:6px;margin-top:14px;flex-wrap:wrap}.play-mode-features b{padding:5px 8px;border-radius:7px;border:1px solid #2c4b5b;background:rgba(5,18,26,.44);color:#c9d7dc;font-size:8px;font-weight:700}.play-mode-arrow{font-size:25px;color:#8da4ae}.play-tip-bar{border:1px solid #294759;border-radius:14px;background:#091c29;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.play-tip-bar>div{display:flex;align-items:center;gap:12px}.play-tip-bar .icon{color:#dcb76a}.play-tip-bar span{display:grid;gap:3px}.play-tip-bar strong{font-size:12px}.play-tip-bar small{font-size:9px;color:#8297a2}.play-tip-bar button{height:36px;padding:0 13px;border-radius:9px;border:1px solid #315166;background:#0d2a3b;color:#dce8eb;font-size:9px}

/* Competition legibility & visual cleanup */
.tournament-page-head h1,.competition-info-head h1{color:#f3f7f8}.tournament-page-head p,.competition-info-head p{color:#9fb0b9!important}.tournament-section-heading h2{color:#f2f6f7!important}.tournament-section-heading p{color:#9caeb7!important;font-size:10.5px}.section-eyebrow{color:#edc870!important}.other-count{color:#b8c9d0!important}.tournament-featured p,.tournament-detail-hero p{color:#a9bac2!important;font-size:11px}.tournament-meta-grid span,.tournament-modal__facts span{color:#9fb1ba!important;font-size:9px}.tournament-meta-grid strong,.tournament-modal__facts strong{color:#f3f7f8!important;font-size:11.5px}.other-tournament-status{color:#afc1c9!important;font-size:8.5px}.other-tournament-copy p{color:#a9bac2!important;font-size:10px;min-height:36px}.other-tournament-meta span{color:#92a8b3!important;font-size:8px}.other-tournament-meta strong{color:#eef4f5!important;font-size:10px}.other-tournament-prize small{color:#91a6b1!important;font-size:8px}.other-tournament-prize strong{font-size:11px}.other-tournament-detail{font-size:9.5px}.secondary-detail-copy p{color:#a8bac2!important;font-size:10px}.secondary-facts-grid span{color:#98acb6!important;font-size:8px}.secondary-facts-grid strong{color:#eef4f6!important;font-size:10.5px}.secondary-rules-list p{color:#bac8ce!important;font-size:9.5px}.rules-grid>div{color:#c9d5da!important;font-size:9.5px}.tournament-rules-check{color:#d4dfe3!important;font-size:10px}.tournament-waiting-hero p,.tournament-opponent-found>p{color:#9eb0b9!important;font-size:9.5px}.standing-row{color:#dbe5e9;font-size:10.5px}.standings-head{color:#98acb7;font-size:9px}.tournament-scoring-note span{color:#a9bbc4;font-size:9px}

/* Accessibility / mobile typography and tap targets */
@media(max-width:940px){
  .mobile-top-actions .top-icon{width:42px;height:42px}
  .bottom-nav button{font-size:10px;min-height:48px}
  .bottom-nav{height:72px}
  .content{padding-bottom:90px}
  .guide-shortcuts{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  body{font-size:14px}
  .content{padding:12px 11px 92px}
  .mobile-title{font-size:16px}.mobile-top{height:62px}
  .page-header{align-items:flex-start;gap:8px}.page-header h1{font-size:20px!important}.page-header p{font-size:12px!important;line-height:1.75}
  .btn{min-height:44px;font-size:12px;padding:0 15px}.tab{height:42px;font-size:12px}
  .card-sub{font-size:12px!important}.quick-copy strong{font-size:14px!important}.quick-copy small{font-size:11.5px!important}.quick-card{min-height:112px}.quick-icon{width:48px;height:48px}.quick-icon .icon{width:23px;height:23px}
  .target-card-head h3{font-size:15px}.target-card-head a{font-size:11px}.target-match-meta,.target-profile-id,.target-profile-ranks span,.target-profile-rating span{font-size:10.5px!important}.target-profile-rating small{font-size:11px!important}
  .tournament-section-heading h2{font-size:18px}.tournament-section-heading p{font-size:11.5px!important}.section-eyebrow{font-size:10px}.tournament-kicker{font-size:11px}.tournament-featured p{font-size:11.5px!important}.tournament-meta-grid span{font-size:10px!important}.tournament-meta-grid strong{font-size:12px!important}.tournament-status-pill{font-size:11px}.other-tournament-status{font-size:10px!important}.other-tournament-copy h3{font-size:17px}.other-tournament-copy p{font-size:11.5px!important;min-height:0}.other-tournament-meta{grid-template-columns:1fr 1fr!important}.other-tournament-meta>div:last-child{grid-column:1/-1}.other-tournament-meta span{font-size:10px!important}.other-tournament-meta strong{font-size:11.5px!important}.other-tournament-prize small{font-size:10px!important}.other-tournament-prize strong{font-size:12px!important}.other-tournament-detail{height:44px!important;font-size:11px!important}.secondary-detail-copy p,.secondary-rules-list p{font-size:11.5px!important}.secondary-facts-grid span{font-size:10px!important}.secondary-facts-grid strong{font-size:12px!important}
  .profile-name-line h1{font-size:20px!important}.profile-name-line span,.profile-mini-tags span{font-size:10px!important}.profile-identity-copy>p{font-size:11px!important}.profile-top-stats section>span,.profile-top-stats small{font-size:10px!important}.profile-card-v3 p,.profile-side-kicker,.league-progress-label,.profile-section-head>div>span{font-size:10.5px!important}.achievement-grid-v3 small{font-size:10px!important}.recent-opponent-v3 small{font-size:10px!important}
  .city-eyebrow{font-size:10px}.city-hero-v3__content p{font-size:11.5px!important}.city-hero-actions .btn,.city-ghost-btn{font-size:11px!important;min-height:44px}.city-hero-stats span{font-size:10px!important}.champion-v3-badge{font-size:9.5px}.champion-v3-copy>p,.champion-v3-metrics span,.champion-v3-rating small,.champion-v3-rating span{font-size:10px!important}.champion-v3-metrics strong{font-size:12px}.neighborhood-v3-copy small,.city-events-list small,.community-row small{font-size:10px!important}
  .settings-row{min-height:58px}.settings-row strong{font-size:13px}.settings-row small{font-size:11px!important}.field label{font-size:11px}.field input,.field select{height:46px}.auth-card>p{font-size:12px}.auth-foot{font-size:11px}
  .guide-hero{display:block;padding:21px}.guide-hero__icon{width:55px;height:55px;margin-bottom:12px}.guide-hero h1{font-size:21px}.guide-hero p{font-size:12px}.guide-hero .btn{margin-top:16px;width:100%}.guide-shortcuts{grid-template-columns:1fr 1fr;gap:8px}.guide-shortcuts button{min-height:76px;padding:11px}.guide-shortcuts strong{font-size:13px}.guide-shortcuts small{font-size:11px}.guide-grid{grid-template-columns:1fr}.guide-item summary{min-height:58px}.guide-item__body p{font-size:12px}.guide-support{display:block}.guide-support .btn{width:100%;margin-top:12px}
  .play-premium-hero{height:220px}.play-premium-hero__copy{right:20px;left:20px;max-width:none}.play-premium-hero__copy h1{font-size:22px}.play-premium-hero__copy p{font-size:12px}.play-premium-hero__piece{font-size:120px;left:14px}.play-mode-grid{grid-template-columns:1fr}.play-mode-card{min-height:200px;padding:19px;grid-template-columns:58px minmax(0,1fr) 24px;gap:13px}.play-mode-icon{width:56px;height:56px}.play-mode-copy>span{font-size:10px}.play-mode-copy h2{font-size:19px}.play-mode-copy p{font-size:11.5px}.play-mode-features b{font-size:10px;padding:6px 8px}.play-tip-bar{display:block}.play-tip-bar small{font-size:10.5px}.play-tip-bar button{width:100%;height:44px;margin-top:12px;font-size:11px}
}
@media(max-width:430px){
  .guide-shortcuts{grid-template-columns:1fr}
  .tournament-meta-grid{grid-template-columns:1fr 1fr!important}.tournament-actions{grid-template-columns:1fr!important}.tournament-actions .btn{width:100%}
  .profile-hero-v3{height:320px!important}.profile-hero-v3__identity{bottom:68px!important}.profile-mini-tags{clear:both;padding-top:7px}
  .city-hero-v3{height:420px!important}.city-hero-stats{grid-template-columns:1fr 1fr!important}
}
