:root{color-scheme:light;--ink:#111513;--muted:#66706b;--paper:#f4f1e8;--surface:#fffdf6;--forest:#183b2b;--green:#2d6a4f;--copper:#b8683a;--blue:#244f6a;--gold:#d9b45f;--line:rgba(17,21,19,0.14);--shadow:0 24px 70px rgba(16,22,18,0.18);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{background:var(--paper)}body{min-width:320px;margin:0;color:var(--ink)}a{color:inherit}.cms-shell-header-fragment{display:contents}.cms-shell-header-stack{position:sticky;z-index:50;top:0}.cms-shell-header{display:flex;min-height:72px;align-items:center;justify-content:space-between;gap:20px;padding:16px clamp(18px,5vw,72px);border-bottom:1px solid rgba(255,253,246,.12);background:rgba(17,21,19,.96);color:var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.cms-shell-header-main{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:clamp(12px,2vw,20px)}.cms-shell-brand,.cms-shell-nav,.cms-shell-nav-group,.cms-shell-nav-item>a,.cms-shell-subnav,.cms-shell-subnav a{color:inherit;text-decoration:none}.cms-shell-brand{display:inline-flex;align-items:center;gap:12px;font-weight:820;white-space:nowrap}.cms-shell-brand-group{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px}.cms-shell-brand-mark{display:grid;width:44px;height:38px;place-items:center;border:1px solid rgba(255,253,246,.28);border-radius:8px;background:rgba(255,253,246,.08);color:var(--gold);font-size:.78rem;letter-spacing:0;text-transform:uppercase}.cms-shell-profile-link{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(255,253,246,.28);border-radius:999px;background:rgba(255,253,246,.1);color:var(--surface);text-decoration:none}.cms-shell-profile-link:focus-visible,.cms-shell-profile-link:hover{border-color:rgba(217,180,95,.78);outline:none}.cms-shell-profile-link img{width:100%;height:100%;display:block;object-fit:cover}.cms-shell-profile-initials{font-size:.72rem;font-weight:850;letter-spacing:0;line-height:1}.cms-shell-context{min-width:0;display:grid;gap:3px;padding-left:clamp(12px,2vw,20px);border-left:1px solid rgba(255,253,246,.18)}.cms-shell-section{color:var(--gold);font-size:.68rem;font-weight:850;letter-spacing:.12em;line-height:1;text-transform:uppercase}.cms-shell-context-single .cms-shell-section{letter-spacing:0;text-transform:none}.cms-shell-context-single .cms-shell-section,.cms-shell-title{color:var(--surface);font-size:clamp(1rem,1.6vw,1.28rem);line-height:1.12}.cms-shell-title{max-width:min(34vw,520px);overflow:hidden;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.cms-shell-nav{flex:0 1 auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}.cms-shell-nav-group{flex:0 0 auto;display:inline-flex;align-items:center;gap:3px;padding:3px;border:1px solid rgba(255,253,246,.16);border-radius:8px}.cms-shell-nav-group .cms-shell-nav-item>a{border-color:transparent;padding-inline:9px}.cms-shell-nav-group .cms-shell-nav-item-root>a{border-color:rgba(255,253,246,.16)}.cms-shell-actions{flex:0 1 auto;display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0}.cms-shell-search{position:relative;flex:0 0 auto}.cms-shell-search summary{width:38px;min-height:38px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,253,246,.16);border-radius:8px;background:rgba(255,253,246,.06);color:rgba(255,253,246,.9);cursor:pointer;list-style:none}.cms-shell-search summary::-webkit-details-marker{display:none}.cms-shell-search svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.cms-shell-search summary:focus-visible,.cms-shell-search summary:hover,.cms-shell-search[open] summary{background:var(--surface);color:var(--ink);outline:none}.cms-shell-search-panel{position:absolute;z-index:80;top:calc(100% + 8px);right:0;width:min(430px,calc(100vw - 28px));border:1px solid rgba(17,21,19,.16);border-radius:8px;padding:10px;background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.cms-shell-search-form{display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:8px}.cms-shell-search-form label{min-width:0;display:grid;gap:4px}.cms-shell-search-form span,.cms-shell-search-group h2{color:var(--muted);font-size:.68rem;font-weight:850;letter-spacing:.08em;line-height:1;text-transform:uppercase}.cms-shell-search-form input{width:100%;height:38px;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--ink);font:inherit;font-size:.92rem;padding:0 10px}.cms-shell-search-form button{width:38px;height:38px;align-self:end;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:7px;background:var(--ink);color:var(--surface);cursor:pointer}.cms-shell-search-results{max-height:min(54vh,430px);overflow:auto;margin-top:10px;padding-top:8px;border-top:1px solid var(--line)}.cms-shell-search-group+.cms-shell-search-group{margin-top:10px}.cms-shell-search-group h2{margin:0 0 6px}.cms-shell-search-group a{display:grid;grid-template-columns:100px minmax(0,1fr);gap:8px;align-items:baseline;border-radius:7px;padding:8px;color:inherit;text-decoration:none}.cms-shell-search-group a:focus-visible,.cms-shell-search-group a:hover{background:rgba(24,59,43,.08);outline:none}.cms-shell-search-result-type{color:var(--muted);font-size:.68rem;font-weight:850;line-height:1;text-transform:uppercase}.cms-shell-search-group strong{font-size:.9rem;line-height:1.18}.cms-shell-search-group small,.cms-shell-search-group strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cms-shell-search-group small{grid-column:2;color:var(--muted);font-size:.76rem;line-height:1.2}.cms-shell-language-switch{flex:0 0 auto;display:inline-flex;gap:4px;padding:3px;border:1px solid rgba(255,253,246,.16);border-radius:8px;background:rgba(255,253,246,.06)}.cms-shell-language-switch a{position:relative;min-width:32px;min-height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;color:rgba(255,253,246,.78);font-size:1.08rem;font-weight:880;line-height:1;text-decoration:none}.cms-shell-language-name{position:absolute;top:calc(100% + 8px);left:50%;z-index:2;width:max-content;max-width:160px;transform:translateX(-50%);border:1px solid rgba(255,253,246,.18);border-radius:6px;padding:6px 8px;background:var(--surface);color:var(--ink);font-size:.76rem;font-weight:780;line-height:1;opacity:0;pointer-events:none;white-space:nowrap;box-shadow:0 10px 24px rgba(0,0,0,.18)}.cms-shell-language-switch a:focus-visible .cms-shell-language-name,.cms-shell-language-switch a:hover .cms-shell-language-name{opacity:1}.cms-shell-language-switch a:focus-visible,.cms-shell-language-switch a:hover,.cms-shell-language-switch a[aria-current=page]{background:var(--surface);color:var(--ink);outline:none}.cms-shell-nav-item{flex:0 0 auto}.cms-shell-nav-item>a{min-height:34px;display:inline-flex;align-items:center;border:1px solid rgba(255,253,246,.16);border-radius:8px;padding:8px 12px;color:rgba(255,253,246,.88);font-size:.9rem;font-weight:760;line-height:1;white-space:nowrap}.cms-shell-nav-item>a:focus-visible,.cms-shell-nav-item>a:hover,.cms-shell-nav-item>a[aria-current=page]{background:rgba(255,253,246,.1);outline:none}.cms-shell-subnav{display:flex;gap:5px;overflow-x:auto;flex-wrap:nowrap;align-items:center;padding:7px clamp(18px,4vw,56px);border-bottom:1px solid rgba(255,250,240,.12);background:rgba(37,44,40,.98);color:rgba(255,250,240,.86);scrollbar-width:thin}.cms-shell-subnav a{flex:0 0 auto;min-height:28px;display:inline-flex;align-items:center;gap:3px;border:1px solid rgba(255,250,240,.14);border-radius:7px;padding:6px 8px;background:rgba(255,250,240,.04);color:currentColor;font-size:.76rem;font-weight:780;line-height:1;text-decoration:none;white-space:nowrap}.cms-shell-subnav a:focus-visible,.cms-shell-subnav a:hover,.cms-shell-subnav a[aria-current=page]{background:var(--surface);color:var(--ink);outline:none}.search-page-main{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:42px 0 72px}.search-page-heading{display:grid;gap:16px;margin-bottom:28px}.search-page-heading h1{margin:0;font-size:clamp(2.2rem,8vw,4.8rem);line-height:.95}.search-page-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;max-width:760px;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 14px 34px rgba(16,22,18,.1)}.search-page-form input{min-width:0;height:46px;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--ink);font:inherit;padding:0 12px}.search-page-form button{height:46px;border:0;border-radius:7px;padding:0 18px;background:var(--ink);color:var(--surface);font:inherit;font-weight:820;cursor:pointer}.search-results-section{display:grid;gap:22px}.search-results-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:10px}.search-results-title p{margin:0;color:var(--muted)}.search-results-title span{color:var(--muted);font-weight:820}.search-result-group{display:grid;gap:10px}.search-result-group h2{margin:0;color:var(--muted);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.search-result-list{display:grid;gap:8px}.search-result-card{display:grid;grid-template-columns:108px minmax(0,1fr);gap:12px;align-items:start;border:1px solid var(--line);border-radius:8px;padding:13px;background:var(--surface);color:inherit;text-decoration:none}.search-result-card:focus-visible,.search-result-card:hover{border-color:rgba(24,59,43,.36);outline:none;box-shadow:0 12px 26px rgba(16,22,18,.1)}.search-result-type{width:fit-content;border:1px solid var(--line);border-radius:7px;padding:5px 7px;color:var(--muted);font-size:.68rem;font-weight:850;line-height:1;text-transform:uppercase}.search-result-main{min-width:0;display:grid;gap:4px}.search-result-main strong{font-size:1rem;line-height:1.2}.search-empty-state,.search-result-main small,.search-result-main span{color:var(--muted)}.search-result-main span{font-size:.9rem;line-height:1.35}.search-result-main small{font-size:.78rem;line-height:1.35}.search-empty-state{margin:0;border:1px solid var(--line);border-radius:8px;padding:18px;background:var(--surface)}.hero-section{min-height:calc(82svh - 72px);display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,520px);gap:clamp(32px,7vw,92px);align-items:center;padding:clamp(46px,7vw,92px) clamp(20px,6vw,86px);background:radial-gradient(circle at 82% 22%,rgba(217,180,95,.18),transparent 34%),linear-gradient(135deg,#12241c,#183b2b 48%,#f4f1e8 48.2%,#f4f1e8);color:var(--surface)}.hero-copy{max-width:780px}.portal-home{background:linear-gradient(180deg,#0f1412,#0f1412 420px,#f3efe4 421px,#f3efe4);color:var(--ink)}.portal-hero{position:relative;min-height:calc(84svh - 72px);display:grid;grid-template-columns:minmax(0,.98fr) minmax(340px,.48fr);gap:clamp(28px,5vw,68px);justify-items:stretch;align-items:center;overflow:hidden;padding:clamp(58px,7vw,96px) clamp(20px,6vw,86px) clamp(54px,7vw,92px);background:linear-gradient(90deg,rgba(10,12,11,.96),rgba(10,12,11,.86) 43%,rgba(10,12,11,.28) 72%,rgba(10,12,11,.7)),linear-gradient(180deg,rgba(10,12,11,.06),rgba(10,12,11,.95)),url(/assets/home/luxembourg-chess-hero.webp) 50% /cover no-repeat;color:var(--surface)}.portal-hero:after{content:"";position:absolute;inset:auto 0 0;height:34%;background:linear-gradient(180deg,rgba(15,20,18,0),#0f1412 94%);pointer-events:none}.portal-hero-copy{position:relative;z-index:1;max-width:820px}.portal-hero h1{max-width:760px;font-size:clamp(3.25rem,5.8vw,5.9rem);line-height:.94;text-wrap:balance}.portal-hero .eyebrow{color:#f2cf7a}.portal-hero .hero-summary{max-width:590px;color:rgba(255,253,246,.78);font-size:clamp(1rem,1.2vw,1.16rem);line-height:1.58}.portal-hero .hero-actions{gap:10px}.portal-hero .hero-actions .button,.portal-hero .hero-actions .button-primary,.portal-hero .hero-actions .button-secondary,.portal-hero .hero-actions .button-tertiary{min-width:150px;border-color:rgba(255,253,246,.28);background:rgba(255,253,246,.11);color:var(--surface);box-shadow:inset 0 1px 0 rgba(255,253,246,.16)}.portal-hero .hero-actions .button:focus-visible,.portal-hero .hero-actions .button:hover{border-color:rgba(242,207,122,.62);background:rgba(242,207,122,.16);outline:none}.portal-live-panel{position:relative;z-index:1;width:min(100%,460px);justify-self:end;display:grid;gap:14px;padding:clamp(16px,2.2vw,24px);border:1px solid rgba(255,253,246,.22);border-radius:8px;background:linear-gradient(180deg,rgba(255,253,246,.12),rgba(255,253,246,.045)),rgba(12,15,14,.78);box-shadow:0 34px 90px rgba(0,0,0,.34);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.portal-live-panel-header{display:grid;gap:5px}.portal-live-panel-header .eyebrow{margin:0;color:#f2cf7a}.portal-live-panel-header strong{color:var(--surface);font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.1}.portal-live-archive,.portal-live-next,.portal-live-tile{min-width:0;color:var(--surface);text-decoration:none}.portal-live-next{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:stretch;padding:15px;border:1px solid rgba(242,207,122,.28);border-radius:8px;background:linear-gradient(135deg,rgba(242,207,122,.18),rgba(143,183,208,.08)),rgba(255,253,246,.08)}.portal-live-archive,.portal-live-next>div,.portal-live-tile{display:grid;gap:7px;align-content:start}.portal-live-archive span,.portal-live-next span,.portal-live-tile span{color:#8fb7d0;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.portal-live-next strong,.portal-live-tile strong{color:var(--surface);font-size:clamp(1rem,1.6vw,1.28rem);line-height:1.18}.portal-live-archive small,.portal-live-next small,.portal-live-tile small{color:rgba(255,253,246,.66);line-height:1.42}.portal-live-date{display:grid;align-content:center;justify-items:center;min-width:76px;padding:10px;border-radius:8px;background:rgba(255,253,246,.12);box-shadow:inset 0 0 0 1px rgba(255,253,246,.13)}.portal-live-date span{color:#f2cf7a;font-size:2.1rem;font-weight:920;line-height:.9}.portal-live-date strong{color:var(--surface);font-size:.78rem;font-weight:920;line-height:1;text-transform:uppercase}.portal-live-date small{color:rgba(255,253,246,.66);font-size:.7rem;font-weight:820;line-height:1}.portal-live-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.portal-live-tile{min-height:128px;padding:14px;background:rgba(255,253,246,.07)}.portal-live-archive,.portal-live-tile{border:1px solid rgba(255,253,246,.13);border-radius:8px}.portal-live-archive{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:13px 14px;background:rgba(255,253,246,.06)}.portal-live-archive strong{grid-column:2;grid-row:1/span 2;color:#f2cf7a;font-size:1.85rem;line-height:1}.portal-live-archive small,.portal-live-archive span{grid-column:1}.portal-hero-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));max-width:720px;gap:1px;overflow:hidden;margin-top:clamp(22px,4vw,38px);border:1px solid rgba(255,253,246,.16);border-radius:8px;background:rgba(255,253,246,.16)}.portal-hero-stats a{min-width:0;padding:15px 16px;background:rgba(255,253,246,.08);color:inherit;text-decoration:none}.portal-hero-stats strong{display:block;color:#f2cf7a;font-size:clamp(1.45rem,2.3vw,2.15rem);line-height:1}.portal-hero-stats span{display:block;margin-top:7px;color:rgba(255,253,246,.72);font-size:.7rem;font-weight:880;letter-spacing:.08em;text-transform:uppercase}.portal-activity-band,.portal-announcement,.portal-events-band,.portal-stats-band,.portal-way-band{padding:clamp(46px,6vw,78px) clamp(20px,6vw,86px)}.portal-announcement{display:grid;gap:8px;border-bottom:1px solid var(--line);background:var(--surface)}.portal-announcement p{max-width:980px;margin:0 auto;color:var(--muted);line-height:1.65}.portal-announcement .eyebrow{width:100%;color:var(--copper)}.portal-stats-band{background:linear-gradient(180deg,#f3efe4,#fffaf0)}.portal-activity-band{background:linear-gradient(180deg,rgba(255,250,240,.96),rgba(232,238,234,.98)),#eef2ee}.portal-events-band{background:linear-gradient(135deg,rgba(36,79,106,.1),rgba(184,104,58,.08)),#f8f2e7}.portal-way-band{background:linear-gradient(180deg,#141916,#1a241f);color:var(--surface)}.portal-activity-grid,.portal-announcement>*,.portal-event-list,.portal-section-heading,.portal-stats-grid,.portal-way-grid{max-width:1180px;margin-inline:auto}.portal-section-heading{display:grid;gap:8px}.portal-section-heading h2{max-width:760px;color:var(--ink);font-size:clamp(1.45rem,2.25vw,2.25rem);line-height:1.12;text-wrap:balance}.portal-way-band .portal-section-heading h2{color:var(--surface)}.portal-way-band .portal-section-heading .eyebrow{color:#f2cf7a}.portal-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;overflow:hidden;margin-top:24px;border:1px solid var(--line);border-radius:8px;background:rgba(17,21,19,.16);box-shadow:0 24px 70px rgba(17,21,19,.08)}.portal-stats-grid a{min-width:0;padding:clamp(20px,3vw,32px);background:var(--surface);text-decoration:none}.portal-stats-grid strong{display:block;color:var(--forest);font-size:clamp(2rem,4vw,3.9rem);line-height:1}.portal-stats-grid span{display:block;margin-top:8px;color:var(--muted);font-size:.74rem;font-weight:860;text-transform:uppercase}.portal-activity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,3vw,32px);align-items:start;margin-top:30px}.portal-list-section{min-width:0;padding:clamp(18px,2vw,24px);border:1px solid rgba(17,21,19,.1);border-radius:8px;background:rgba(255,253,246,.7);box-shadow:0 18px 48px rgba(17,21,19,.06)}.portal-list-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.portal-list-heading h3{font-size:1.18rem}.portal-list-heading span{min-width:32px;min-height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:var(--ink);color:var(--surface);font-size:.78rem;font-weight:860}.portal-event-list,.portal-tournament-list,.portal-way-grid{display:grid;gap:14px}.portal-event-card,.portal-tournament-card,.portal-way-card{min-width:0;display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);text-decoration:none;box-shadow:0 12px 34px rgba(17,21,19,.07);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.portal-tournament-card{padding:18px}.portal-event-card:focus-visible,.portal-event-card:hover,.portal-tournament-card:focus-visible,.portal-tournament-card:hover,.portal-way-card:focus-visible,.portal-way-card:hover{border-color:rgba(36,79,106,.34);outline:none;transform:translateY(-1px);box-shadow:0 18px 46px rgba(17,21,19,.12)}.portal-event-card .portal-event-type,.portal-tournament-card span,.portal-way-card span{color:var(--blue);font-size:.74rem;font-weight:900;text-transform:uppercase}.portal-event-card>strong,.portal-tournament-card strong,.portal-way-card strong{font-size:1rem;line-height:1.25}.portal-event-card>small,.portal-tournament-card small,.portal-way-card small{color:var(--muted);font-size:.84rem;line-height:1.45}.portal-empty{margin:0;padding:18px;border:1px dashed var(--line);border-radius:8px;background:rgba(255,253,246,.74);color:var(--muted);line-height:1.55}.portal-event-list{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin-top:30px}.portal-event-card{min-height:238px;display:flex;flex-direction:column;align-content:stretch;padding:16px;background:linear-gradient(180deg,rgba(255,253,246,.98),rgba(255,250,240,.92)),var(--surface)}.portal-event-date{margin-top:auto;display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;align-items:end;min-height:68px;padding:12px;border:1px solid rgba(36,79,106,.16);border-radius:8px;background:linear-gradient(135deg,rgba(36,79,106,.12),rgba(242,207,122,.22)),#fff7e7;color:var(--ink)}.portal-event-date span{grid-row:1/span 2;color:var(--forest);font-size:2.15rem;font-weight:900;line-height:.92}.portal-event-date strong{color:var(--ink);font-size:.88rem;font-weight:920;line-height:1;text-transform:uppercase}.portal-event-date small{color:var(--muted);font-size:.72rem;font-weight:820;line-height:1}.portal-way-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:30px}.portal-way-card{min-height:210px;align-content:start;padding:22px;border-color:rgba(255,253,246,.14);background:linear-gradient(180deg,rgba(255,253,246,.08),rgba(255,253,246,.035)),#202923;color:var(--surface);box-shadow:none}.portal-way-card span{color:#f2cf7a}.portal-way-card small{color:rgba(255,253,246,.68)}.portal-way-card:focus-visible,.portal-way-card:hover{border-color:rgba(242,207,122,.38);box-shadow:0 22px 54px rgba(0,0,0,.18)}.eyebrow{margin:0 0 14px;color:var(--copper);font-size:.76rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}h1,h2,h3,p{overflow-wrap:break-word}h1,h2,h3{margin:0;letter-spacing:0}h1{max-width:760px;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.4rem,8vw,7.6rem);font-weight:680;line-height:.96}h2{max-width:720px;font-size:clamp(2rem,4vw,4rem);line-height:1.02}h3{font-size:1.08rem;line-height:1.2}.hero-summary{max-width:620px;margin:24px 0 0;color:rgba(255,253,246,.8);font-size:clamp(1.05rem,2vw,1.32rem);line-height:1.55}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:8px;padding:12px 18px;font-weight:820;text-decoration:none}.button-primary{background:var(--surface);color:var(--ink)}.button-secondary{border-color:rgba(255,253,246,.36);color:var(--surface)}.button-tertiary{border-color:rgba(217,180,95,.6);background:rgba(217,180,95,.12);color:var(--surface)}.button-secondary.light{border-color:var(--line);color:var(--ink)}.text-link{color:var(--blue);font-weight:820;text-decoration-thickness:2px;text-underline-offset:4px}.board-visual{width:min(100%,520px);justify-self:center;padding:clamp(12px,3vw,24px);border:1px solid rgba(17,21,19,.16);border-radius:8px;background:rgba(255,253,246,.68);box-shadow:var(--shadow)}.board-grid{display:grid;aspect-ratio:1;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(8,minmax(0,1fr));overflow:hidden;border:10px solid #4b382a}.square{position:relative;display:grid;min-width:0;min-height:0;place-items:center}.light-square{background:#e5d2ad}.dark-square{background:#557552}.piece{position:relative;width:46%;background:#161b18;box-shadow:inset 0 0 0 5px rgba(255,253,246,.14),0 8px 18px rgba(17,21,19,.25)}.piece,.piece:after{aspect-ratio:1;border-radius:50%}.piece:after{content:"";position:absolute;width:18%;background:var(--gold);transform:translateY(-4px)}.piece.king,.piece.queen{background:var(--surface);box-shadow:inset 0 0 0 5px rgba(17,21,19,.14),0 8px 18px rgba(17,21,19,.22)}.piece.king:after,.piece.queen:after{background:var(--copper)}.content-band{padding:clamp(52px,8vw,104px) clamp(20px,6vw,86px)}.content-band>*,.results-band>*{max-width:1180px;margin-inline:auto}.results-band{padding:clamp(48px,7vw,86px) clamp(20px,6vw,86px);background:linear-gradient(180deg,#fffdf6 0,rgba(255,253,246,.86) 100%),var(--surface)}.results-heading{display:flex;gap:18px;align-items:end;justify-content:space-between}.results-heading h2{color:var(--ink);font-size:clamp(2rem,4vw,3.7rem)}.results-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;overflow:hidden;margin-top:28px;border:1px solid var(--line);border-radius:8px;background:var(--line)}.results-stats a{min-width:0;padding:clamp(16px,2.5vw,24px);background:var(--surface);text-decoration:none}.results-stats strong{display:block;color:var(--forest);font-size:clamp(1.7rem,3vw,2.7rem);line-height:1}.results-stats span{display:block;margin-top:9px;color:var(--muted);font-size:.74rem;font-weight:860;text-transform:uppercase}.results-layout{display:grid;grid-template-columns:minmax(260px,.82fr) minmax(320px,1.18fr);gap:clamp(22px,4vw,46px);align-items:start;margin-top:28px}.results-copy{display:grid;gap:20px}.results-copy p{margin:0;color:var(--muted);font-size:1.02rem;line-height:1.7}.results-actions{display:flex;flex-wrap:wrap;gap:10px}.results-actions a{min-height:40px;display:inline-flex;align-items:center;padding:8px 12px;color:var(--ink);font-size:.88rem;font-weight:820;text-decoration:none}.result-tournament-list,.results-actions a{border:1px solid var(--line);border-radius:8px;background:var(--surface)}.result-tournament-list{display:grid;box-shadow:0 12px 38px rgba(17,21,19,.08)}.result-tournament{display:grid;grid-template-columns:minmax(86px,.24fr) minmax(0,1fr);gap:8px 16px;align-items:center;min-width:0;padding:16px 18px;border-bottom:1px solid var(--line);text-decoration:none}.result-tournament:last-child{border-bottom:0}.result-tournament:hover{background:rgba(36,79,106,.06)}.result-tournament span{color:var(--blue);font-size:.78rem;font-weight:900}.result-tournament strong{min-width:0;font-size:1rem;line-height:1.3}.result-tournament small{grid-column:2;color:var(--muted);font-size:.82rem}.results-empty{padding:22px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 12px 38px rgba(17,21,19,.08)}.results-empty p{margin:10px 0 18px;color:var(--muted);line-height:1.6}.section-heading{display:grid;gap:10px}.intro-text{max-width:820px;margin-top:24px;color:var(--muted);font-size:1.08rem;line-height:1.7}.feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:34px}.feature-grid article{min-height:210px;padding:22px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 12px 38px rgba(17,21,19,.08)}.feature-grid span{display:inline-flex;margin-bottom:26px;color:var(--blue);font-size:.78rem;font-weight:880}.feature-grid p{margin:12px 0 0;color:var(--muted);line-height:1.6}.auth-shell{min-height:calc(100svh - 72px);display:grid;grid-template-columns:minmax(0,.92fr) minmax(320px,520px);gap:clamp(28px,6vw,82px);align-items:center;padding:clamp(42px,7vw,92px) clamp(20px,6vw,86px);background:linear-gradient(135deg,rgba(24,59,43,.96),rgba(17,21,19,.98)),repeating-linear-gradient(45deg,rgba(217,180,95,.08) 0 16px,transparent 16px 32px);color:var(--surface)}.auth-copy{max-width:760px}.auth-copy p:not(.eyebrow){max-width:540px;color:rgba(255,253,246,.76);font-size:1.08rem;line-height:1.7}.auth-panel{width:100%;padding:clamp(20px,4vw,32px);border:1px solid rgba(255,253,246,.18);border-radius:8px;background:rgba(255,253,246,.94);color:var(--ink);box-shadow:var(--shadow)}.auth-submit,.google-button{width:100%}.google-button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font-weight:820;text-decoration:none}.google-button span{display:grid;width:24px;height:24px;place-items:center;border-radius:50%;background:#ffffff;color:#244f6a;font-weight:900;box-shadow:inset 0 0 0 1px rgba(17,21,19,.14)}.google-button.disabled{cursor:not-allowed;opacity:.56;pointer-events:none}.auth-message,.auth-note,.auth-switch{margin:14px 0 0;color:var(--muted);font-size:.9rem;line-height:1.5}.auth-divider{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;margin:22px 0;color:var(--muted);font-size:.78rem;font-weight:850;text-transform:uppercase}.auth-divider span{height:1px;background:var(--line)}.auth-divider p{margin:0}.auth-form{display:grid;gap:16px}.auth-form label{display:grid;gap:8px;color:var(--ink);font-size:.92rem;font-weight:800}.auth-form input{min-height:46px;width:100%;border:1px solid var(--line);border-radius:8px;background:#ffffff;color:var(--ink);font:inherit;padding:10px 12px}.auth-form input:focus{border-color:var(--green);outline:3px solid rgba(45,106,79,.18)}.auth-submit{margin-top:4px;border:0;cursor:pointer}.auth-submit:disabled{cursor:wait;opacity:.7}.auth-message.error{color:#9f2d20}.auth-message.success{color:var(--green)}.auth-switch a{color:var(--blue);font-weight:820}.account-shell{min-height:calc(100svh - 72px);display:grid;align-content:center;padding:clamp(52px,8vw,110px) clamp(20px,6vw,86px);background:linear-gradient(135deg,#f4f1e8,#f4f1e8 58%,rgba(36,79,106,.14) 58.2%,rgba(45,106,79,.24))}.account-shell>*{max-width:760px}.account-shell h1{color:var(--ink)}.account-email{margin:20px 0 0;color:var(--muted);font-size:1.16rem}.account-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.account-actions button{cursor:pointer}.calendar-page{min-height:calc(100svh - 72px);padding:clamp(10px,2vw,18px) clamp(20px,6vw,86px) clamp(42px,7vw,86px);background:linear-gradient(180deg,#fffdf6 0,#f4f1e8 380px),var(--paper)}.calendar-page>*{max-width:1180px;margin-inline:auto}.calendar-heading{margin-bottom:26px}.calendar-heading h1{color:var(--ink);font-size:clamp(2.4rem,5vw,5rem)}.calendar-heading p:not(.eyebrow){max-width:720px;color:var(--muted);font-size:1.08rem;line-height:1.6}.chess-shell-page{min-height:calc(100svh - 72px);padding:clamp(10px,2vw,18px) clamp(20px,6vw,86px) clamp(42px,7vw,86px);background:linear-gradient(180deg,var(--surface) 0,var(--paper) 380px),var(--paper)}.chess-shell-page>*{max-width:1180px;margin-inline:auto}.chess-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px;color:var(--muted);font-size:.85rem;font-weight:720}.chess-breadcrumbs a{color:var(--green);text-decoration:none}.chess-breadcrumbs a:focus-visible,.chess-breadcrumbs a:hover{color:var(--forest);outline:none;text-decoration:underline}.chess-section-tabs{display:flex;gap:6px;overflow-x:auto;margin-bottom:24px;padding:5px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 12px 38px rgba(17,21,19,.08);scrollbar-width:thin}.chess-section-tabs a{flex:0 0 auto;min-height:38px;display:inline-flex;align-items:center;border-radius:7px;padding:8px 12px;color:var(--muted);font-size:.86rem;font-weight:820;line-height:1;text-decoration:none;white-space:nowrap}.chess-section-tabs a:focus-visible,.chess-section-tabs a:hover,.chess-section-tabs a[aria-current=page]{background:var(--forest);color:var(--surface);outline:none}.chess-content-panel{padding:clamp(24px,5vw,54px);border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.chess-page-heading{display:grid;gap:12px}.chess-page-heading h1{color:var(--ink);font-size:clamp(2.4rem,5vw,5rem)}.chess-page-heading p:not(.eyebrow){max-width:760px;margin:0;color:var(--muted);font-size:1.08rem;line-height:1.6}.chess-section-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-top:28px}.chess-section-card{min-height:136px;display:grid;align-content:start;gap:10px;padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);text-decoration:none}.chess-section-card strong{color:var(--forest);font-size:1.08rem}.chess-section-card span{color:var(--muted);font-size:.94rem;line-height:1.5}.chess-section-card:focus-visible,.chess-section-card:hover{border-color:var(--green);outline:none}.chess-native-stack{display:grid;gap:22px;margin-top:26px}.chess-view-switch{display:inline-flex;width:fit-content;max-width:100%;gap:4px;overflow-x:auto;padding:4px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.chess-view-switch a{min-height:38px;display:inline-flex;align-items:center;border-radius:7px;padding:8px 12px;color:var(--muted);font-size:.86rem;font-weight:850;text-decoration:none;white-space:nowrap}.chess-view-switch a:focus-visible,.chess-view-switch a:hover,.chess-view-switch a[aria-current=page]{background:var(--forest);color:var(--surface);outline:none}.chess-tournament-page{display:grid;gap:24px}.chess-tournament-header{display:grid;gap:16px;padding-bottom:20px;border-bottom:1px solid var(--line)}.chess-tournament-header .chess-page-heading h1{font-size:clamp(2rem,4vw,3.8rem)}.chess-back-link{width:fit-content;min-height:40px;display:inline-flex;align-items:center;justify-content:center;padding:8px 13px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--forest);font-size:.9rem;font-weight:820;text-decoration:none}.chess-back-link:focus-visible,.chess-back-link:hover{border-color:var(--green);outline:none}.chess-filter-bar,.chess-round-nav,.chess-stack{display:grid;gap:16px}.chess-filter-bar{margin:24px 0 18px}.chess-pill-nav{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.chess-pill-nav a{min-height:34px;display:inline-flex;align-items:center;justify-content:center;padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--muted);font-size:.83rem;font-weight:820;line-height:1.1;text-decoration:none}.chess-pill-nav a:focus-visible,.chess-pill-nav a:hover,.chess-pill-nav a[aria-current=page]{border-color:var(--forest);background:var(--forest);color:var(--surface);outline:none}.chess-filter-form{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr)) auto;gap:10px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.chess-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.chess-detail-grid div,.chess-metric,.chess-result-section{border:1px solid var(--line);border-radius:8px;background:var(--paper)}.chess-filter-form label{min-width:0;display:grid;gap:5px}.chess-detail-grid div{min-height:88px;padding:14px}.chess-detail-grid dt,.chess-metric span,.chess-section-heading .eyebrow{color:var(--muted);font-size:.74rem;font-weight:820;letter-spacing:0;text-transform:uppercase}.chess-detail-grid dd{margin:7px 0 0;color:var(--ink);font-size:.95rem;font-weight:720;overflow-wrap:anywhere}.chess-inline-links{display:flex;flex-wrap:wrap;gap:8px}.chess-result-section{display:grid;gap:14px;padding:18px}.chess-section-heading{display:grid;gap:5px}.chess-filter-form span,.chess-rating-card span,.chess-stat-grid dt{color:var(--muted);font-size:.68rem;font-weight:850;letter-spacing:.08em;line-height:1;text-transform:uppercase}.chess-section-heading h2{margin:0;color:var(--ink);font-size:clamp(1.25rem,2vw,1.8rem)}.chess-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.chess-data-table{color:var(--ink);font-size:.89rem}.chess-data-table td,.chess-data-table th{padding:10px 11px}.chess-data-table th{background:var(--paper);color:var(--muted);font-size:.74rem;font-weight:820;letter-spacing:0;text-transform:uppercase;white-space:nowrap}.chess-data-table tbody tr:last-child td{border-bottom:0}.chess-data-table .is-numeric{text-align:right;white-space:nowrap}.chess-data-table a,.chess-inline-links a{color:var(--green);font-weight:820;text-decoration:none}.chess-data-table a:focus-visible,.chess-data-table a:hover,.chess-inline-links a:focus-visible,.chess-inline-links a:hover{color:var(--forest);outline:none;text-decoration:underline}.chess-empty-state{padding:14px;background:var(--surface);font-size:.94rem;line-height:1.5}.chess-list-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:26px;padding-top:18px;border-top:1px solid var(--line)}.chess-list-toolbar p,.chess-muted{margin:0;color:var(--muted);line-height:1.5}.chess-club-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:14px}.chess-club-card{min-height:172px;display:grid;align-content:start;gap:8px;padding:17px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);text-decoration:none}.chess-club-card:focus-visible,.chess-club-card:hover{border-color:var(--green);outline:none;box-shadow:0 12px 28px rgba(17,21,19,.1)}.chess-club-code{width:fit-content;border:1px solid var(--line);border-radius:7px;padding:5px 7px;color:var(--green);font-size:.72rem;font-weight:850;line-height:1;text-transform:uppercase}.chess-filter-form input,.chess-filter-form select{width:100%;min-width:0;height:40px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);font:inherit;padding:0 10px}.chess-filter-form button{min-height:40px;border:0;border-radius:7px;padding:0 16px;background:var(--forest);color:var(--surface);font:inherit;font-weight:850;cursor:pointer}.chess-filter-form button:focus-visible,.chess-filter-form button:hover{background:var(--green);outline:none}.chess-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:0}.chess-rating-card,.chess-stat-grid>div{min-width:0;display:grid;gap:7px;align-content:start;min-height:108px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.chess-club-card strong{color:var(--forest);font-size:1.12rem;line-height:1.2}.chess-club-card small,.chess-club-card span:not(.chess-club-code){color:var(--muted);line-height:1.4}.chess-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:28px}.chess-metric{min-height:92px;display:grid;align-content:center;gap:6px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.chess-metric strong{color:var(--forest);font-size:clamp(1.35rem,2vw,2rem);line-height:1}.chess-metric-card{display:grid;gap:6px;min-height:116px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.chess-stat-grid dd{margin:0;color:var(--forest);font-size:1.75rem;font-weight:900;line-height:1}.chess-data-table small,.chess-rating-card small,.chess-stat-grid small{color:var(--muted);font-size:.78rem;line-height:1.35}.chess-table-scroll{overflow-x:auto}.chess-metric-card small,.chess-metric-card span{color:var(--muted);line-height:1.3}.chess-metric-card span{font-size:.72rem;font-weight:850;text-transform:uppercase}.chess-metric-card strong{color:var(--forest);font-size:clamp(1.35rem,2.2vw,2rem);line-height:1}.chess-dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-top:14px}.chess-dashboard-panel{padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.chess-accordion-stack summary,.chess-dashboard-panel h2{margin:0;color:var(--forest);font-size:1rem;font-weight:850}.chess-rating-spread{display:grid;gap:9px;margin-top:15px}.chess-rating-row{display:grid;grid-template-columns:84px minmax(0,1fr) 34px;gap:10px;align-items:center;color:var(--muted);font-size:.88rem}.chess-rating-row meter{width:100%;height:12px}.chess-rating-row b{color:var(--ink);text-align:right}.chess-accordion-stack{display:grid;gap:10px;margin-top:14px}.chess-accordion-stack details{border:1px solid var(--line);border-radius:8px;background:var(--surface)}.chess-data-table{width:100%;min-width:760px;border-collapse:collapse;font-size:.9rem}.chess-data-table td,.chess-data-table th{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.chess-data-table thead th{background:var(--paper);color:var(--muted);font-size:.68rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.chess-data-table tbody tr:last-child td,.chess-data-table tbody tr:last-child th{border-bottom:0}.chess-data-table tbody th{min-width:220px;font-weight:820}.chess-data-table tbody th a{color:var(--forest);text-decoration:none}.chess-data-table tbody th a:focus-visible,.chess-data-table tbody th a:hover{color:var(--green);outline:none;text-decoration:underline}.chess-data-table tbody th small{display:block;margin-top:4px;font-weight:600}.chess-empty-state{margin:0;border:1px solid var(--line);border-radius:8px;padding:18px;background:var(--paper);color:var(--muted)}.chess-player-profile{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,420px);gap:22px;align-items:start}.chess-player-profile h1{margin:0;color:var(--ink);font-size:clamp(2.2rem,4.8vw,4.6rem);line-height:.98}.chess-player-profile p:not(.eyebrow){max-width:720px;margin:12px 0 0;color:var(--muted);font-size:1.04rem;line-height:1.55}.chess-player-profile dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.chess-accordion-stack summary{min-height:48px;display:flex;align-items:center;padding:13px 16px;cursor:pointer}.chess-detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0 16px 16px}.chess-player-profile dl>div{gap:6px;padding:14px}.chess-detail-list div,.chess-player-profile dl>div{min-width:0;display:grid;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.chess-detail-list div{gap:4px;padding:12px}.chess-player-profile dt,.chess-subsection-heading p{color:var(--muted);font-size:.78rem;font-weight:760}.chess-player-profile dd{margin:0;color:var(--forest);font-size:1.15rem;font-weight:880}.chess-subsection{display:grid;gap:12px}.chess-subsection-heading{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:baseline;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:9px}.chess-subsection-heading h2{margin:0;color:var(--ink);font-size:clamp(1.25rem,2vw,1.7rem)}.chess-subsection-heading p{margin:0}.chess-rating-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.chess-rating-card strong{color:var(--forest);font-size:1.6rem;line-height:1}@media (max-width:860px){.chess-filter-form,.chess-player-profile{grid-template-columns:1fr}.chess-filter-form button{width:100%}}.chess-detail-list dt{color:var(--muted);font-size:.72rem;font-weight:850;text-transform:uppercase}.chess-detail-list dd{min-width:0;margin:0;overflow-wrap:anywhere}.chess-compact-list{display:grid;gap:8px;padding:0 16px 16px}.chess-dashboard-panel .chess-compact-list{margin-top:15px;padding:0}.chess-compact-list a{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:inherit;text-decoration:none}.chess-compact-list a:focus-visible,.chess-compact-list a:hover{border-color:var(--green);outline:none}.chess-compact-list span{min-width:0;display:grid;gap:3px}.chess-compact-list strong{overflow:hidden;color:var(--ink);text-overflow:ellipsis;white-space:nowrap}.chess-compact-list small{color:var(--muted);line-height:1.35}.chess-compact-list b{color:var(--green);font-size:.88rem;white-space:nowrap}[data-large-team-event-layout]{gap:18px}@media (max-width:720px){.chess-content-panel{padding:20px}.chess-tournament-header .chess-page-heading h1{font-size:2rem}.chess-data-table{min-width:680px}.chess-dashboard-grid,.chess-detail-list{grid-template-columns:1fr}}.calendar-actions,.event-actions,.form-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.calendar-actions{margin-top:22px}.calendar-section-switch{display:inline-grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:4px;margin-bottom:18px;padding:4px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 12px 38px rgba(17,21,19,.08)}.calendar-section-switch a{min-height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;padding:9px 13px;color:var(--muted);font-size:.9rem;font-weight:850;text-align:center;text-decoration:none}.calendar-section-switch a[aria-current=page]{background:var(--ink);color:var(--surface)}.calendar-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch;margin-bottom:14px}.calendar-filter{display:grid;align-content:center;justify-self:stretch;width:100%}.calendar-filter,.calendar-view-switch{padding:2px;border:1px solid var(--line);border-radius:7px;background:var(--surface);box-shadow:0 12px 38px rgba(17,21,19,.08)}.calendar-view-switch{display:inline-grid;grid-template-columns:minmax(64px,1fr);align-self:stretch;gap:2px}.calendar-view-switch a{min-height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:5px;padding:2px 8px;color:var(--muted);font-size:.74rem;font-weight:850;line-height:1;text-decoration:none}.calendar-view-switch a[aria-current=page]{background:var(--ink);color:var(--surface)}.calendar-filter-fieldset{min-inline-size:0;margin:0;padding:0;border:0}.calendar-filter-fieldset legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.calendar-filter-list{display:flex;flex-wrap:wrap;gap:2px;align-items:center}.calendar-filter-option{min-height:22px;display:inline-flex;align-items:center;gap:5px;border:1px solid transparent;border-radius:5px;padding:2px 7px;color:var(--muted);cursor:pointer;font-size:.72rem;font-weight:850;line-height:1;-webkit-user-select:none;user-select:none}.calendar-filter-option input{width:12px;height:12px;flex:0 0 auto;margin:0;accent-color:var(--ink)}.calendar-filter-option[data-selected=true]{border-color:var(--ink);background:var(--ink);color:var(--surface)}.calendar-filter[aria-busy=true]{opacity:.72}.month-picker{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:8px;align-items:stretch}.month-arrow{min-height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 12px 38px rgba(17,21,19,.08);color:var(--ink);font-size:1.65rem;font-weight:850;line-height:1;text-decoration:none}.month-arrow:hover{background:#ffffff}.month-picker-form{display:grid;grid-template-columns:minmax(170px,1fr) minmax(112px,160px) auto;gap:8px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 12px 38px rgba(17,21,19,.08)}.month-picker-form label{display:grid;gap:6px;min-width:0}.month-picker-form label span{color:var(--muted);font-size:.72rem;font-weight:850;text-transform:uppercase}.calendar-event-form label{display:grid;min-width:0;gap:6px}.calendar-event-form label span{color:var(--muted);font-size:.72rem;font-weight:850;text-transform:uppercase}.calendar-event-form input,.calendar-event-form select,.calendar-event-form textarea,.month-picker-form select{width:100%;min-height:38px;border:1px solid var(--line);border-radius:8px;background:#ffffff;color:var(--ink);font:inherit;padding:8px 10px}.calendar-notice{display:flex;justify-content:space-between;gap:16px;margin-bottom:18px;padding:14px 16px;border:1px solid rgba(45,106,79,.26);border-radius:8px;background:var(--surface);color:var(--green)}.calendar-month{margin-top:28px}.calendar-month h2{color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:clamp(1.35rem,2.4vw,2.2rem)}.calendar-board{display:grid;gap:28px}.calendar-grid-scroll{overflow-x:auto;margin-top:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 12px 38px rgba(17,21,19,.08)}.month-grid{min-width:820px}.month-grid-body,.month-grid-header{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.month-grid-header{border-bottom:1px solid var(--line);background:rgba(24,59,43,.06)}.month-grid-header span{padding:10px 8px;color:var(--muted);font-size:.72rem;font-weight:880;text-align:center;text-transform:uppercase}.month-grid-day{min-height:128px;min-width:0;padding:8px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#ffffff}.month-grid-day:nth-child(7n){border-right:0}.month-grid-day.is-empty{background:rgba(17,21,19,.03)}.month-grid-day-number{color:var(--ink);font-size:.88rem}.month-grid-events{display:grid;gap:5px;margin-top:8px}.month-grid-event{--event-accent:var(--blue);min-width:0;display:block;border-left:4px solid var(--event-accent);border-radius:6px;background:rgba(244,241,232,.84);color:var(--ink);font-size:.76rem;font-weight:780;line-height:1.25;padding:6px 7px;text-decoration:none}.month-grid-event span{display:block;overflow-wrap:anywhere}.event-card-list{display:grid;gap:6px;margin-top:8px}.event-card{--event-accent:var(--blue);display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px 9px;border:1px solid var(--line);border-left:4px solid var(--event-accent);border-radius:7px;background:var(--surface);box-shadow:0 6px 18px rgba(17,21,19,.06)}.event-group-team_championship{--event-accent:var(--green)}.event-group-cup{--event-accent:var(--copper)}.event-group-national_championship{--event-accent:var(--blue)}.event-group-rapid{--event-accent:#7a5b2f}.event-group-blitz{--event-accent:#7b3f54}.event-group-youth{--event-accent:#5c6d3d}.event-group-veteran{--event-accent:#8a6846}.event-group-flde_notification{--event-accent:#6c6376}.event-date-block{min-height:78px;display:grid;align-content:center;justify-items:center;border:1px solid var(--line);border-radius:8px;background:#ffffff}.event-date-block span{color:var(--muted);font-size:.72rem;font-weight:850;text-transform:uppercase}.event-date-block strong{font-size:1.75rem;line-height:1}.event-card .event-date-block{width:50px;min-height:44px;align-self:stretch;border-radius:6px}.event-card .event-date-block span{font-size:.58rem;line-height:1}.event-card .event-date-block strong{font-size:1.22rem}.event-card-body{min-width:0;display:grid;gap:2px}.event-card .eyebrow{margin:0;font-size:.6rem;line-height:1}.event-card h2{margin:0;font-size:.98rem;line-height:1.1}.event-card h2 a{color:inherit;text-decoration:none}.event-card h2 a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}.event-card p{margin:0;color:var(--muted);line-height:1.22}.event-card-meta{min-width:0;display:grid;gap:2px;font-size:.76rem}.event-card-meta span{min-width:0}.event-card .event-time{color:var(--blue);font-weight:820}.event-card .event-location{max-width:min(62vw,680px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-card .event-location:before{content:"Address: ";color:var(--muted);font-weight:820}.event-actions{margin-top:12px}.calendar-add-menu{position:relative;display:inline-flex}.calendar-add-popover{position:absolute;z-index:30;top:calc(100% + 6px);right:0;min-width:190px;display:grid;gap:3px;padding:6px;border:1px solid var(--line);border-radius:8px;background:#ffffff;box-shadow:0 18px 42px rgba(17,21,19,.16)}.calendar-add-popover a{min-height:30px;display:flex;align-items:center;border-radius:6px;padding:7px 9px;color:var(--ink);font-size:.82rem;font-weight:820;line-height:1.1;text-decoration:none}.calendar-add-popover a:hover{background:rgba(13,42,71,.08)}.event-card .event-actions{max-width:410px;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px;margin-top:0}.event-actions .button,.form-actions .button,.month-picker-form .button{min-height:34px;padding:7px 11px;font-size:.82rem}.event-card .event-actions .button{min-height:24px;padding:3px 7px;border-radius:6px;font-size:.7rem;line-height:1}.calendar-event-form{padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 12px 38px rgba(17,21,19,.08)}.subscription-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:18px;align-items:start}.subscription-panel{display:grid;gap:16px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 12px 38px rgba(17,21,19,.08)}.subscription-panel label{display:grid;gap:6px}.subscription-panel label>span,.subscription-panel legend{color:var(--muted);font-size:.72rem;font-weight:850;text-transform:uppercase}.subscription-panel select{width:100%;min-height:38px;border:1px solid var(--line);border-radius:8px;background:#ffffff;color:var(--ink);font:inherit;padding:8px 10px}.subscription-panel fieldset{min-width:0;margin:0;padding:0;border:0}.subscription-group-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:8px}.subscription-summary h2{color:var(--ink);font-size:1.25rem}.subscription-summary p{margin:0;color:var(--muted);line-height:1.55}.subscription-note{font-size:.9rem}.subscription-actions{margin-top:2px}.subscription-actions .button{min-height:38px;padding:8px 12px;font-size:.84rem}.subscription-feed-url{display:grid;gap:7px}.subscription-feed-url-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.subscription-feed-url input{min-width:0;width:100%;min-height:38px;border:1px solid var(--line);border-radius:8px;background:#ffffff;color:var(--muted);font:inherit;padding:8px 10px}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.form-wide{grid-column:1/-1}.calendar-event-form textarea{resize:vertical}.checkbox-label{min-height:38px;display:flex;flex-direction:row;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#ffffff}.checkbox-label input{width:auto;min-height:0}.event-detail-page{display:grid;gap:22px}.event-detail-hero{--event-accent:var(--blue);display:grid;grid-template-columns:96px minmax(0,1fr);gap:clamp(18px,4vw,34px);padding:clamp(18px,4vw,32px);border:1px solid var(--line);border-left:6px solid var(--event-accent);border-radius:8px;background:var(--surface);box-shadow:0 18px 48px rgba(17,21,19,.1)}.event-detail-hero h1{max-width:900px;color:var(--ink);font-size:clamp(2rem,4.5vw,4.2rem)}.event-detail-hero .event-location,.event-detail-hero .event-time{margin:8px 0 0;color:var(--muted);font-size:1.05rem;line-height:1.5}.event-detail-hero .event-time{color:var(--blue);font-weight:820}.event-detail-date{min-height:96px}.event-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:18px}.event-detail-panel{padding:clamp(18px,3vw,26px);border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 12px 38px rgba(17,21,19,.08)}.event-detail-panel h2{color:var(--ink);font-size:1.25rem}.event-detail-panel p{margin-top:12px;color:var(--muted);font-size:1.02rem;line-height:1.65}.event-description{display:grid;gap:14px;margin-top:14px}.event-description .event-description-lead{max-width:74ch;margin:0;color:var(--ink);font-size:clamp(1.08rem,1vw + .9rem,1.24rem);font-weight:760;line-height:1.58}.event-description-list{display:grid;gap:10px;max-width:82ch;margin:2px 0 0;padding:0;list-style:none}.event-description-list li{position:relative;padding-left:24px;color:var(--muted);font-size:1rem;line-height:1.62}.event-description-list li:before{content:"";position:absolute;top:.72em;left:4px;width:8px;height:8px;border-radius:999px;background:var(--event-accent,var(--blue));box-shadow:0 0 0 4px rgba(47,94,160,.1)}.event-description .event-description-note{max-width:78ch;margin:2px 0 0;border-left:4px solid var(--event-accent,var(--blue));border-radius:0 8px 8px 0;padding:11px 13px;background:#f6f3ed;color:#4c463d;font-size:.98rem;font-weight:720;line-height:1.5}.event-detail-panel .event-flyer-callout{margin-top:18px}.event-flyer-callout a{display:inline-flex;min-height:42px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:9px 13px;background:#ffffff;color:var(--blue);font-size:.94rem;font-weight:820;line-height:1.2;text-decoration:none}.event-flyer-callout a:hover{border-color:rgba(47,94,160,.35);text-decoration:underline;text-underline-offset:3px}.event-detail-meta dl{display:grid;gap:14px;margin:16px 0 0}.event-detail-meta div{display:grid;gap:4px;padding-bottom:12px;border-bottom:1px solid var(--line)}.event-detail-meta div:last-child{padding-bottom:0;border-bottom:0}.event-detail-meta dt{color:var(--muted);font-size:.72rem;font-weight:850;text-transform:uppercase}.event-detail-meta dd{margin:0;color:var(--ink);line-height:1.45}.event-detail-meta a{color:var(--blue);font-weight:760;text-decoration:none}.event-detail-meta a:hover{text-decoration:underline;text-underline-offset:3px}.form-actions{margin-top:14px}.empty-calendar{padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted)}@media (max-width:920px){.cms-shell-header-stack{position:static}.cms-shell-header{align-items:flex-start;flex-wrap:wrap;gap:12px}.cms-shell-header-main{width:100%}.cms-shell-context{flex:1 1}.cms-shell-title{max-width:none}.cms-shell-actions,.cms-shell-nav{width:100%}.cms-shell-actions{justify-content:space-between}.cms-shell-nav{justify-content:flex-start}.cms-shell-actions{flex-wrap:wrap}.cms-shell-subnav{padding-inline:18px}.hero-section{background:linear-gradient(180deg,#12241c,#183b2b 70%,#f4f1e8 70.2%,#f4f1e8)}.hero-section,.portal-hero{min-height:auto;grid-template-columns:1fr}.portal-hero{align-items:start;padding-bottom:clamp(46px,7vw,72px)}.portal-hero h1{font-size:3.15rem}.portal-live-panel{width:min(100%,680px);justify-self:start}.portal-activity-grid,.portal-event-list,.portal-hero-stats,.portal-way-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.board-visual{width:min(100%,420px)}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.results-heading{align-items:start;flex-direction:column}.results-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-shell,.calendar-section-switch,.chess-dashboard-grid,.chess-detail-list,.chess-metric-grid,.event-detail-layout,.form-grid,.month-picker-form,.results-layout,.subscription-layout{grid-template-columns:1fr}.calendar-controls{grid-template-columns:minmax(0,1fr) auto}.calendar-section-switch,.calendar-view-switch{width:100%}.subscription-group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.subscription-feed-url-row{grid-template-columns:1fr}.month-picker{grid-template-columns:44px minmax(0,1fr) 44px}}@media (max-width:620px){.cms-shell-header{position:static}.cms-shell-nav-item>a{padding-inline:10px}.search-page-form,.search-result-card{grid-template-columns:1fr}.search-page-form button{width:100%}.hero-section{padding-top:38px}h1{font-size:clamp(3rem,18vw,4.8rem)}.hero-actions{display:grid}.feature-grid{grid-template-columns:1fr}.portal-hero h1{font-size:2.55rem}.portal-section-heading h2{font-size:1.7rem}.portal-hero{padding-top:46px;padding-bottom:36px}.portal-live-panel{padding:14px}.portal-live-archive,.portal-live-grid,.portal-live-next{grid-template-columns:1fr}.portal-live-archive small,.portal-live-archive span,.portal-live-archive strong{grid-column:auto;grid-row:auto}.portal-activity-grid,.portal-event-list,.portal-hero-stats,.portal-stats-grid,.portal-way-grid{grid-template-columns:1fr}.portal-live-tile{min-height:auto}.portal-stats-grid strong{font-size:2rem}.result-tournament,.subscription-group-grid{grid-template-columns:1fr}.result-tournament small{grid-column:auto}.calendar-controls{grid-template-columns:1fr}.calendar-filter{width:100%}.event-card{grid-template-columns:50px minmax(0,1fr);gap:6px}.event-card .event-actions{grid-column:1/-1;justify-content:flex-start}.event-card .event-location{max-width:100%}.event-detail-hero{grid-template-columns:1fr}.chess-content-panel{padding:20px}.chess-rating-row{grid-template-columns:76px minmax(0,1fr) 28px}.chess-compact-list a{grid-template-columns:1fr}.chess-compact-list strong{white-space:normal}.event-date-block{min-height:64px}.event-date-block strong{font-size:1.45rem}}