/* Ratnagiri Chess Events — ChessDotes look (cream / navy / orange) */
.rce-wrap{
	--rce-cream:#fcf4ea; --rce-navy:#171a4a; --rce-navy2:#22266a; --rce-orange:#f58220; --rce-orange-d:#b85a0c;
	--rce-ink:#161936; --rce-muted:#646884; --rce-line:#ecdfcf; --rce-card:#fff;
	--rce-w:min(var(--rce-max,1080px),calc(100vw - 32px));
	color:var(--rce-ink); box-sizing:border-box; padding:8px 0 48px;
	/* Break out of the theme's narrow content column: same width as the site header
	   (logo on the left … Contact button on the right), centred on the page. */
	position:relative; width:var(--rce-w) !important; max-width:none !important;
	margin-left:0 !important; margin-right:0 !important; /* front.js centres it on the page */
}
.rce-wrap .rce-h,.rce-wrap .rce-year-h,.rce-wrap .rce-title,.rce-wrap h3,.rce-wrap h4{margin-top:0 !important}
.rce-wrap p{margin-top:0}
.rce-wrap *,.rce-wrap *::before,.rce-wrap *::after{box-sizing:border-box}
.rce-head{margin:8px 0 28px}
.rce-kicker{margin:0 0 6px;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--rce-orange-d)}
.rce-h{margin:0 0 8px;font-size:clamp(28px,4vw,40px);line-height:1.1;font-weight:800;color:var(--rce-navy)}
.rce-intro{margin:0 0 14px;max-width:62ch;color:var(--rce-muted);font-size:16px;line-height:1.55}
.rce-totals{display:flex;flex-wrap:wrap;gap:8px 22px;margin:0 0 18px;font-size:15px;color:var(--rce-muted)}
.rce-totals strong{color:var(--rce-navy);font-size:20px;margin-right:4px}
.rce-years{display:flex;flex-wrap:wrap;gap:8px}
.rce-years button{appearance:none;border:1px solid var(--rce-line);background:#fff;color:var(--rce-navy);border-radius:999px;padding:7px 14px;font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.rce-years button:hover{border-color:var(--rce-orange)}
.rce-years button.is-on{background:var(--rce-navy);border-color:var(--rce-navy);color:#fff}

.rce-year{margin:0 0 40px}
.rce-year[hidden]{display:none}
.rce-year-h{display:flex;align-items:baseline;gap:12px;margin:0 0 16px;padding-bottom:10px;border-bottom:2px solid var(--rce-line);font-size:28px;font-weight:800;color:var(--rce-navy)}
.rce-year-h small{font-size:14px;font-weight:600;color:var(--rce-muted)}
.rce-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
/* Same specificity for every rule below, so the phone/tablet rules win over the columns= choice. */
[class*="rce-cols-"].rce-cols-4 .rce-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
[class*="rce-cols-"].rce-cols-3 .rce-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
[class*="rce-cols-"].rce-cols-2 .rce-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:1000px){[class*="rce-cols-"].rce-cols-4 .rce-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:880px){[class*="rce-cols-"][class*="rce-cols-"] .rce-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Phones: one card per row */
@media (max-width:640px){
	[class*="rce-cols-"][class*="rce-cols-"] .rce-grid{grid-template-columns:1fr;gap:16px}
	.rce-banner{min-height:130px}
	.rce-year-h{font-size:24px}
}

.rce-card{display:flex;flex-direction:column;background:var(--rce-card);border:1px solid var(--rce-line);border-radius:14px;overflow:hidden;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;outline:none}
.rce-card:hover,.rce-card:focus-visible{transform:translateY(-3px);box-shadow:0 12px 28px rgba(23,26,74,.14)}
.rce-card:focus-visible{box-shadow:0 0 0 3px var(--rce-orange)}
.rce-banner{display:grid;grid-template-columns:1fr 38%;min-height:150px}
.rce-banner-l{display:flex;flex-direction:column;gap:10px;padding:14px 14px 14px 16px}
.rce-banner-r{display:flex;flex-direction:column;align-items:center;justify-content:center;border-left:4px solid var(--rce-orange);
	background-color:var(--rce-navy);
	background-image:linear-gradient(45deg,rgba(255,255,255,.05) 25%,transparent 25%,transparent 75%,rgba(255,255,255,.05) 75%),linear-gradient(45deg,rgba(255,255,255,.05) 25%,transparent 25%,transparent 75%,rgba(255,255,255,.05) 75%);
	background-size:22px 22px;background-position:0 0,11px 11px}
.rce-light .rce-banner-l{background:var(--rce-cream);color:var(--rce-navy)}
.rce-dark .rce-banner-l{background:var(--rce-navy);color:#fff}
.rce-dark .rce-banner-r{background-color:var(--rce-cream);background-image:linear-gradient(45deg,rgba(23,26,74,.06) 25%,transparent 25%,transparent 75%,rgba(23,26,74,.06) 75%),linear-gradient(45deg,rgba(23,26,74,.06) 25%,transparent 25%,transparent 75%,rgba(23,26,74,.06) 75%)}
.rce-tag{align-self:flex-start;white-space:nowrap;background:var(--rce-orange);color:#fff;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700;letter-spacing:.02em}
.rce-bn-date{font-size:34px;line-height:1;font-weight:800;letter-spacing:-.01em;margin-top:auto}
.rce-bn-venue{font-size:12px;line-height:1.3;opacity:.8;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rce-big{font-size:40px;line-height:1;font-weight:800;color:var(--rce-orange)}
.rce-big-l{margin-top:4px;font-size:12px;font-weight:600;color:#fff;opacity:.9}
.rce-dark .rce-big-l{color:var(--rce-navy)}
.rce-body{display:flex;flex-direction:column;flex:1;padding:16px 16px 14px}
.rce-date{margin:0 0 6px;font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--rce-orange-d)}
.rce-title{margin:0 0 6px;font-size:17px;line-height:1.3;font-weight:750;color:var(--rce-navy)}
.rce-orig{margin:0 0 8px;font-size:13px;line-height:1.45;color:var(--rce-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rce-stats{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:auto 0 12px;padding:10px 0 0}
.rce-stats li{margin:0;padding:8px 4px;background:var(--rce-cream);border-radius:8px;text-align:center;font-size:11.5px;line-height:1.25;color:var(--rce-muted)}
.rce-stats strong{display:block;font-size:18px;color:var(--rce-navy);font-variant-numeric:tabular-nums}
.rce-foot span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.rce-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:0;font-size:12.5px;color:var(--rce-muted)}
.rce-cta{font-weight:700;color:var(--rce-navy);white-space:nowrap}
.rce-card:hover .rce-cta{color:var(--rce-orange-d)}

/* Modal */
.rce-modal[hidden]{display:none}
.rce-modal{position:fixed;inset:0;z-index:99999}
.rce-backdrop{position:absolute;inset:0;background:rgba(15,17,48,.62)}
.rce-dialog{position:relative;margin:4vh auto;width:min(1040px,94vw);max-height:92vh;overflow:auto;background:#fff;border-radius:16px;box-shadow:0 24px 64px rgba(0,0,0,.35)}
.rce-x{position:sticky;top:10px;float:right;margin:10px 10px 0 0;width:38px;height:38px;border-radius:50%;border:0;background:var(--rce-cream);color:var(--rce-navy);font-size:24px;line-height:1;cursor:pointer;z-index:3}
.rce-m-head{background:var(--rce-navy);color:#fff;padding:22px 24px 0;border-bottom:4px solid var(--rce-orange)}
.rce-m-head .rce-date{color:#ffb36b}
.rce-m-head h3{margin:0 0 6px;font-weight:800;font-size:clamp(20px,3vw,26px);line-height:1.2;color:#fff}
.rce-m-sub{margin:0 0 4px;font-size:14px;opacity:.85}
.rce-tabs{display:flex;gap:4px;margin-top:16px;overflow-x:auto}
.rce-tabs button{appearance:none;border:0;background:transparent;color:#fff;opacity:.75;padding:10px 16px;font:inherit;font-size:15px;font-weight:700;border-radius:10px 10px 0 0;cursor:pointer;white-space:nowrap}
.rce-tabs button.is-on{background:#fff;color:var(--rce-navy);opacity:1}
.rce-pane{padding:20px 24px 28px}
.rce-pane[hidden]{display:none}
.rce-secbar{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.rce-secbar button{appearance:none;border:1px solid var(--rce-line);background:#fff;color:var(--rce-navy);padding:6px 12px;border-radius:999px;font:inherit;font-size:13.5px;font-weight:600;cursor:pointer}
.rce-secbar button.is-on{background:var(--rce-orange);border-color:var(--rce-orange);color:#fff}
.rce-sec-meta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:0 0 10px;font-size:13.5px;color:var(--rce-muted)}
.rce-search{padding:8px 12px;border:1px solid var(--rce-line);border-radius:8px;font:inherit;font-size:14px;min-width:200px}
.rce-tablewrap{overflow-x:auto;border:1px solid var(--rce-line);border-radius:10px}
.rce-table{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}
.rce-table th{position:sticky;top:0;background:var(--rce-cream);color:var(--rce-navy);text-align:left;font-weight:700;padding:9px 10px;border-bottom:1px solid var(--rce-line);white-space:nowrap}
.rce-table td{padding:8px 10px;border-bottom:1px solid #f3ece3;white-space:nowrap}
.rce-table td.rce-name{white-space:normal;min-width:180px;font-weight:600;color:var(--rce-navy)}
.rce-table td.rce-num,.rce-table th.rce-num{text-align:right}
.rce-table tr.rce-p1 td{background:#fff4e6}.rce-table tr.rce-p2 td{background:#fbf8f3}.rce-table tr.rce-p3 td{background:#fbf8f3}
.rce-medal{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--rce-orange);color:#fff;font-weight:800;font-size:12px}
.rce-p2 .rce-medal,.rce-p3 .rce-medal{background:var(--rce-navy)}
.rce-note{margin:10px 0 0;font-size:12.5px;color:var(--rce-muted)}
.rce-empty{padding:28px;text-align:center;color:var(--rce-muted);background:var(--rce-cream);border-radius:12px}
.rce-btn{display:inline-block;font-size:15px;line-height:1.3;background:var(--rce-orange);color:#fff !important;text-decoration:none !important;padding:10px 18px;border-radius:10px;font-weight:700}
.rce-btn.alt{background:var(--rce-navy)}
.rce-fb{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.rce-fb iframe{border:0;max-width:100%;background:#fff}
.rce-pdf{width:100%;height:70vh;border:1px solid var(--rce-line);border-radius:10px}
.rce-loading{padding:40px;text-align:center;color:var(--rce-muted)}
@media (max-width:560px){.rce-pane{padding:16px 14px 22px}.rce-m-head{padding:18px 16px 0}.rce-dialog{margin:0;width:100vw;max-height:100vh;height:100vh;border-radius:0}}

.rce-banner-r.has-cover{background-size:cover !important;background-position:center !important}
.rce-banner-r.has-cover .rce-big-l{color:#fff}
.rce-gp{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:18px;padding:16px;border:1px solid var(--rce-line);border-radius:12px;background:var(--rce-cream)}
.rce-gp img{display:block;max-width:100%;max-height:360px;border-radius:10px;object-fit:cover}
.rce-gp h4{margin:0;font-size:17px;color:var(--rce-navy)}
.rce-bn-sec{font-size:14px;line-height:1.25;font-weight:800;color:var(--rce-orange);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rce-dark .rce-bn-sec{color:#ffb36b}
.rce-meta{margin:2px 0 10px;padding:0;display:grid;gap:4px}
.rce-meta div{display:grid;grid-template-columns:68px 1fr;gap:6px;align-items:baseline}
.rce-meta dt{margin:0;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--rce-orange-d)}
.rce-meta dd{margin:0;font-size:12.5px;line-height:1.35;color:var(--rce-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* ================================================================== v1.5: hub, press, people */
.rce-embedded{position:static;width:auto;padding:0}
.rce-embedded .rce-head{margin:4px 0 22px}
.rce-hub-tabs{display:flex;gap:6px;margin:0 0 26px;padding:6px;background:var(--rce-cream);border-radius:14px;overflow-x:auto;scrollbar-width:thin}
.rce-hub-tabs button{appearance:none;flex:1 0 auto;display:flex;align-items:center;justify-content:center;gap:8px;border:0;background:transparent;color:var(--rce-navy);padding:12px 18px;border-radius:10px;font:inherit;font-size:15.5px;font-weight:750;cursor:pointer;white-space:nowrap}
.rce-hub-tabs button small{font-size:12px;font-weight:700;background:#fff;color:var(--rce-muted);border-radius:999px;padding:2px 8px}
.rce-hub-tabs button:hover{background:#fff}
.rce-hub-tabs button.is-on{background:var(--rce-navy);color:#fff;box-shadow:inset 0 -3px 0 var(--rce-orange)}
.rce-hub-tabs button.is-on small{background:var(--rce-orange);color:#fff}
.rce-hub-pane[hidden]{display:none}
.rce-p-top{margin:0 0 22px}
.rce-p-tools{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;margin:0 0 14px}
.rce-chips{display:flex;flex-wrap:wrap;gap:6px}
.rce-chips button{appearance:none;border:1px solid var(--rce-line);background:#fff;color:var(--rce-navy);border-radius:999px;padding:6px 13px;font:inherit;font-size:13.5px;font-weight:650;cursor:pointer}
.rce-chips button small{color:var(--rce-muted);font-weight:600}
.rce-chips button.is-on{background:var(--rce-orange);border-color:var(--rce-orange);color:#fff}
.rce-chips button.is-on small{color:#fff}

/* Press: a wall of clippings, year by year */
.rce-pyear{margin:0 0 44px}
.rce-pyear[hidden],.rce-story[hidden],.rce-pcard[hidden]{display:none}
.rce-pyear-h{display:flex;align-items:baseline;gap:14px;margin:0 0 18px !important;padding-bottom:8px;border-bottom:2px solid var(--rce-line)}
.rce-pyear-h span{font-size:clamp(40px,6vw,64px);line-height:.9;font-weight:900;letter-spacing:-.02em;color:transparent;-webkit-text-stroke:2px var(--rce-navy)}
.rce-pyear-h small{font-size:14px;font-weight:700;color:var(--rce-orange-d);text-transform:uppercase;letter-spacing:.08em}
.rce-stories{column-count:4;column-gap:20px}
.rce-cols-3 .rce-stories{column-count:3}
.rce-stories-sm{column-count:3}
@media (max-width:1000px){.rce-stories{column-count:3}}
@media (max-width:760px){.rce-stories,.rce-stories-sm{column-count:2;column-gap:12px}}
@media (max-width:460px){.rce-stories,.rce-stories-sm{column-count:1}}
.rce-story{break-inside:avoid;display:block;margin:0 0 20px;background:#fff;border:1px solid var(--rce-line);border-radius:12px;overflow:hidden;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;outline:none}
.rce-story:hover,.rce-story:focus-visible{transform:translateY(-3px) rotate(-.3deg);box-shadow:0 14px 30px rgba(23,26,74,.16)}
.rce-story:focus-visible{box-shadow:0 0 0 3px var(--rce-orange)}
.rce-story-img{position:relative;display:block;background:#fff;padding:10px 10px 0}
.rce-story-img img{display:block;width:100%;height:auto;border-radius:3px;box-shadow:0 1px 3px rgba(0,0,0,.18)}
.rce-story-img.is-tall{max-height:440px;overflow:hidden}
.rce-story-img.is-tall::after{content:"";position:absolute;left:0;right:0;bottom:0;height:70px;background:linear-gradient(rgba(255,255,255,0),#fff)}
.rce-story-img.is-empty{min-height:150px;display:flex;align-items:center;justify-content:center;padding:18px;background:var(--rce-cream)}
.rce-story-ph{font-size:17px;line-height:1.35;font-weight:800;color:var(--rce-navy);text-align:center}
.rce-story-n{position:absolute;z-index:1;right:16px;top:16px;background:var(--rce-navy);color:#fff;font-size:11.5px;font-weight:700;border-radius:999px;padding:3px 9px;box-shadow:0 2px 6px rgba(0,0,0,.25)}
.rce-story-b{padding:12px 14px 14px}
.rce-story-date{margin:0 0 6px;font-size:11.5px;font-weight:750;letter-spacing:.07em;text-transform:uppercase;color:var(--rce-orange-d)}
.rce-story-en{margin:0 0 6px;font-family:Georgia,"Times New Roman",serif;font-size:16.5px;line-height:1.3;font-weight:700;color:var(--rce-ink)}
.rce-story-ev{margin:0;font-size:12.5px;line-height:1.4;color:var(--rce-muted)}
.rce-admin-hint{background:#fff8e6;border:1px dashed #e6b04a;border-radius:8px;padding:8px 12px}

/* Viewer (lightbox) */
.rce-viewer[hidden]{display:none}
.rce-viewer{position:fixed;inset:0;z-index:100000}
.rce-v-backdrop{position:absolute;inset:0;background:rgba(12,14,38,.82)}
.rce-v-dialog{position:relative;margin:3vh auto;width:min(1240px,96vw);max-height:94vh;overflow:auto;background:#fff;border-radius:16px;box-shadow:0 30px 80px rgba(0,0,0,.45)}
.rce-v-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr);min-height:60vh}
.rce-v-img{margin:0;padding:22px;background:#fff;display:flex;align-items:flex-start;justify-content:center;overflow:auto;max-height:94vh}
.rce-v-img img{display:block;max-width:100%;height:auto;box-shadow:0 2px 10px rgba(0,0,0,.18);cursor:zoom-in}
.rce-v-img.is-zoom{justify-content:flex-start}
.rce-v-img.is-zoom img{max-width:none;width:170%;cursor:zoom-out}
.rce-v-side{padding:26px 26px 28px;border-left:1px solid var(--rce-line);background:#fff}
.rce-v-nav{display:flex;align-items:center;gap:12px;margin:0 0 14px;font-weight:700;color:var(--rce-muted);font-size:14px}
.rce-v-nav button{appearance:none;width:38px;height:38px;border-radius:50%;border:1px solid var(--rce-line);background:var(--rce-cream);color:var(--rce-navy);font-size:22px;line-height:1;cursor:pointer}
.rce-v-nav button:hover{background:var(--rce-orange);border-color:var(--rce-orange);color:#fff}
.rce-v-h{margin:6px 0 8px !important;font-size:22px;line-height:1.35;font-weight:800;color:var(--rce-navy)}
.rce-v-hen{margin:0 0 14px;font-family:Georgia,"Times New Roman",serif;font-size:17px;font-style:italic;color:var(--rce-ink)}
.rce-v-sum{margin:0 0 14px;font-size:15px;line-height:1.6;color:var(--rce-ink)}
.rce-v-ev{margin:0 0 6px;font-size:15px !important;line-height:1.4}
.rce-v-ev a{font-size:15px;font-weight:750;color:var(--rce-orange-d);text-decoration:none}
.rce-v-win h5{margin:16px 0 6px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--rce-muted)}
.rce-v-win ul{list-style:none;margin:0;padding:0;columns:2;column-gap:16px;font-size:13.5px}
.rce-v-win li{break-inside:avoid;margin:0 0 6px;color:var(--rce-navy);font-weight:600}
.rce-v-win li span{display:block;font-size:11px;font-weight:600;color:var(--rce-muted)}
.rce-v-photo{margin:0;padding:18px;text-align:center}
.rce-v-photo img{max-width:100%;max-height:82vh;height:auto}
.rce-v-photo figcaption{margin-top:10px;color:var(--rce-muted)}
@media (max-width:820px){.rce-v-grid{grid-template-columns:1fr}.rce-v-side{border-left:0;border-top:1px solid var(--rce-line)}.rce-v-dialog{margin:0;width:100vw;max-height:100vh;height:100vh;border-radius:0}.rce-v-win ul{columns:1}}

/* Event modal additions */
.rce-m-off{display:flex;flex-wrap:wrap;gap:4px 16px;margin:4px 0 0;font-size:13px;opacity:.85}
.rce-tabs button small{font-size:11px;background:var(--rce-orange);color:#fff;border-radius:999px;padding:1px 7px;margin-left:4px}
.rce-frompress{max-width:760px}
.rce-fp-badge{display:inline-block;margin:0 0 12px;background:var(--rce-cream);color:var(--rce-orange-d);border-radius:999px;padding:4px 12px;font-size:12px;font-weight:750;letter-spacing:.03em}
.rce-fp-sum{font-size:15.5px;line-height:1.6;margin:0 0 16px}

/* People: titled players, arbiters, rated players */
.rce-pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(172px,1fr));gap:18px}
.rce-pcard{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:20px 12px 16px;background:#fff;border:1px solid var(--rce-line);border-radius:14px;text-decoration:none !important;color:inherit;transition:transform .15s ease,box-shadow .15s ease}
.rce-pcard:hover,.rce-pcard:focus-visible{transform:translateY(-3px);box-shadow:0 12px 26px rgba(23,26,74,.14)}
.rce-av{position:relative;display:flex;align-items:center;justify-content:center;width:108px;height:108px;border-radius:50%;background:var(--rce-navy);color:#fff;font-size:34px;font-weight:800;letter-spacing:.02em;box-shadow:0 0 0 4px #fff,0 0 0 6px var(--rce-ring,var(--rce-orange));margin-bottom:10px}
.rce-av img{width:100%;height:100%;border-radius:50%;object-fit:cover}
.rce-av-xl{width:170px;height:170px;font-size:54px}
.rce-ti{position:absolute;left:50%;bottom:-11px;transform:translateX(-50%);background:var(--rce-ring,var(--rce-orange));color:#fff;border-radius:999px;padding:2px 10px;font-size:12.5px;font-weight:850;letter-spacing:.04em;border:2px solid #fff;white-space:nowrap}
.rce-ti-gm,.rce-ti-wgm{--rce-ring:#c8961e}.rce-av:has(.rce-ti-gm),.rce-av:has(.rce-ti-wgm){--rce-ring:#c8961e}
.rce-av:has(.rce-ti-im),.rce-av:has(.rce-ti-wim){--rce-ring:#6b7a99}
.rce-av:has(.rce-ti-fm),.rce-av:has(.rce-ti-wfm){--rce-ring:#a0623a}
.rce-av:has(.rce-ti-cm),.rce-av:has(.rce-ti-wcm){--rce-ring:#2f7d6d}
.rce-av:has(.rce-ti-ia){--rce-ring:#171a4a}.rce-av:has(.rce-ti-fa){--rce-ring:#3a3f8f}
.rce-av:has(.rce-ti-sna),.rce-av:has(.rce-ti-na),.rce-av:has(.rce-ti-sa){--rce-ring:#5d6aa8}
.rce-role-rated .rce-av{background:var(--rce-cream);color:var(--rce-navy)}
.rce-pname{font-size:15.5px;line-height:1.3;font-weight:800;color:var(--rce-navy)}
.rce-pmeta{font-size:12.5px;line-height:1.4;color:var(--rce-muted)}
.rce-online{font-style:normal;background:var(--rce-cream);color:var(--rce-orange-d);border-radius:999px;padding:1px 7px;font-size:11px;font-weight:700}
.rce-peaks{display:flex;gap:6px;justify-content:center}
.rce-peaks span{display:flex;flex-direction:column;min-width:48px;padding:5px 4px;background:var(--rce-cream);border-radius:8px;font-size:10.5px;color:var(--rce-muted);text-transform:uppercase;letter-spacing:.04em}
.rce-peaks b{font-size:15px;color:var(--rce-navy);letter-spacing:0}

/* Profile page */
.rce-back{display:inline-block;margin:0 0 14px;font-weight:700;color:var(--rce-orange-d) !important;text-decoration:none !important}
.rce-ph{display:flex;flex-wrap:wrap;align-items:center;gap:28px 36px;padding:30px;background:var(--rce-navy);color:#fff;border-radius:18px;border-bottom:5px solid var(--rce-orange);margin:0 0 22px}
.rce-ph .rce-av{box-shadow:0 0 0 5px var(--rce-navy),0 0 0 8px var(--rce-ring,var(--rce-orange))}
.rce-ph .rce-ti{border-color:var(--rce-navy);font-size:15px}
.rce-ph-t{flex:1;min-width:240px}
.rce-ph .rce-kicker{color:#ffb36b}
.rce-ph-name{margin:0 0 14px !important;font-size:clamp(26px,4vw,38px);line-height:1.1;font-weight:850;color:#fff}
.rce-ph-facts{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:0 0 16px;padding:0}
.rce-ph-facts li{margin:0;padding:8px 14px;background:rgba(255,255,255,.08);border-radius:10px;font-size:17px;font-weight:800}
.rce-ph-facts span{display:block;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;opacity:.7}
.rce-bio{font-size:16px;line-height:1.65;margin:0 0 24px;max-width:72ch}
.rce-psec{margin:0 0 30px}
.rce-psec h3{margin:0 0 12px !important;font-size:21px;font-weight:800;color:var(--rce-navy)}
.rce-apps a{color:var(--rce-navy);text-decoration:none;border-bottom:1px dashed var(--rce-orange)}
.rce-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.rce-gal-a img{display:block;width:100%;height:180px;object-fit:cover;border-radius:10px}
@media (max-width:560px){.rce-ph{padding:22px}.rce-av-xl{width:130px;height:130px;font-size:42px}.rce-hub-tabs button{padding:10px 12px;font-size:14px}}
@media (max-width:640px){.rce-p-years{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}.rce-p-years button{flex:0 0 auto}.rce-pyear-h span{-webkit-text-stroke-width:1.5px}}
/* FIDE rated events */
.rce-fide-badge{display:inline-block;align-self:flex-start;padding:1px 8px;border:1.5px solid currentColor;border-radius:999px;font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;line-height:1.6;opacity:.9}
.rce-fide-intro{margin:0 0 6px;color:var(--rce-muted);font-size:15px}

/* ---------- Arbiter profile (dark hero card in ChessDotes navy / orange) */
.rce-ah{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:28px;align-items:center;margin:6px 0 30px;padding:30px;border-radius:18px;background:var(--rce-navy);color:#fff;isolation:isolate}
.rce-ah::after{content:"";position:absolute;z-index:-1;top:-120px;right:-120px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(245,130,32,.45),rgba(245,130,32,0) 68%)}
.rce-ah-l{display:flex;gap:22px;align-items:flex-start;min-width:0}
.rce-ah .rce-av-xl{flex:none;width:118px;height:118px;margin:6px;font-size:38px;background:var(--rce-navy2);box-shadow:0 0 0 4px var(--rce-navy),0 0 0 6px var(--rce-orange)}
.rce-ah-t{min-width:0}
.rce-ah-k{margin:4px 0 8px;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--rce-orange)}
.rce-ah-name{margin:0 0 10px;font-size:30px;line-height:1.15;font-weight:800;color:#fff}
.rce-ah-bio{font-size:15px;line-height:1.6;color:rgba(255,255,255,.74)}
.rce-ah-bio p{margin:0 0 8px}
.rce-ah-r{display:grid;gap:12px;min-width:0}
.rce-ah-tile{display:flex;align-items:center;gap:14px;padding:13px 16px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.13);color:#fff;text-decoration:none;min-width:0;transition:border-color .15s ease,background .15s ease}
a.rce-ah-tile:hover,a.rce-ah-tile:focus-visible{border-color:var(--rce-orange);background:rgba(255,255,255,.08)}
.rce-ah-ico{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:9px;background:var(--rce-orange)}
.rce-ah-ico svg{width:20px;height:20px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.rce-ah-tile small{display:block;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--rce-orange)}
.rce-ah-tile b{display:block;font-size:16px;font-weight:700;overflow-wrap:anywhere}
.rce-ar-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}
.rce-ar-stats div{padding:16px 18px;border-radius:14px;background:var(--rce-cream);border:1px solid var(--rce-line)}
.rce-ar-stats b{display:block;font-size:32px;line-height:1.1;font-weight:800;color:var(--rce-orange-d);font-variant-numeric:tabular-nums}
.rce-ar-stats span{font-size:13px;font-weight:600;color:var(--rce-muted)}
.rce-ar-stats div:first-child{background:var(--rce-navy);border-color:var(--rce-navy)}
.rce-ar-stats div:first-child b{color:var(--rce-orange)}
.rce-ar-stats div:first-child span{color:rgba(255,255,255,.75)}
.rce-ar-table tbody td,.rce-ar-table tfoot td{font-variant-numeric:tabular-nums}
.rce-ar-table tfoot td{font-weight:800;color:var(--rce-navy);border-top:2px solid var(--rce-line)}
.rce-ar-table tr.is-zero td{color:var(--rce-muted)}
.rce-ar-role{display:inline-block;width:10px;height:10px;margin-right:9px;border-radius:3px;vertical-align:0}
.rce-ar-ca{background:var(--rce-orange)}
.rce-ar-dca{background:var(--rce-navy2)}
.rce-ar-arb{background:#9aa0bf}
.rce-gal-f{margin:0}
.rce-gal-f figcaption{margin-top:6px;font-size:13px;color:var(--rce-muted)}
@media (max-width:860px){.rce-ah{grid-template-columns:1fr;padding:24px}.rce-ar-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.rce-ah-l{flex-direction:column}.rce-ah .rce-av-xl{width:96px;height:96px}.rce-ah-name{font-size:25px}}
.rce-ar-table .rce-sm{display:none}
@media (max-width:560px){.rce-ar-table td.rce-name{min-width:0;font-size:13px}.rce-ar-table .rce-lg{display:none}.rce-ar-table .rce-sm{display:inline}.rce-ar-table th,.rce-ar-table td{padding-left:6px;padding-right:6px}.rce-ar-table .rce-ar-role{margin-right:6px}}
