/* Shell + design-system component styles for the secondary (main.php) layout.
   Externalized from views/partials/minimal-site-shell-style.php on 2026-06-20
   so it is HTTP-cached across pages instead of re-inlined on every request. */
:root{
    --sm-road:var(--ink);
    --sm-road-soft:var(--ink-2);
    --sm-mile:var(--muted);
    --sm-muted:var(--muted-dk);
    --sm-start:var(--card);
    --sm-cloud:var(--paper);
    --sm-sky:var(--paper-2);
    --sm-cream:var(--paper-2);
    --sm-teal:var(--volt-deep);
    --sm-teal-dark:var(--volt-deep);
    --sm-teal-soft:var(--volt-soft);
    --sm-route:var(--volt-deep);
    --sm-route-soft:var(--volt-soft);
    --sm-gold:var(--gold);
    --sm-gold-soft:var(--gold-soft);
    --sm-clay:var(--volt-deep);
    --sm-clay-soft:var(--volt-soft);
    --sm-red:var(--danger);
    --sm-border:var(--line);
    --sm-border-strong:var(--line-dk);
    --sm-surface:var(--card);
    --sm-surface-soft:var(--paper-2);
    --sm-radius:8px;
    --sm-radius-sm:6px;
    --sm-shadow:0 14px 34px rgba(14,23,38,.08);
    --sm-shadow-soft:0 8px 20px rgba(14,23,38,.06);
    --sm-focus:0 0 0 3px rgba(8,122,117,.18);
}
html,body{background:var(--sm-cloud);color:var(--sm-road);overflow-wrap:anywhere;}
body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
img,picture,video{max-width:100%;height:auto;}
svg{max-width:100%;}
strong{color:var(--sm-road);}
a{color:var(--sm-teal-dark);}
.site-skip{position:absolute;left:12px;top:8px;z-index:40;padding:8px 11px;background:var(--sm-start);border:1px solid var(--sm-road);border-radius:var(--sm-radius-sm);transform:translateY(-56px);}
.site-skip:focus{transform:none;outline:0;box-shadow:var(--sm-focus);}
.site-shell{max-width:1120px;margin:0 auto;padding:14px 20px;}
.site-header{position:sticky;top:0;z-index:18;border-bottom:1px solid rgba(215,225,234,.9);background:rgba(255,255,255,.93);backdrop-filter:blur(16px);box-shadow:0 8px 24px rgba(14,23,38,.04);}
.site-header-shell{position:relative;display:flex;gap:20px;align-items:center;justify-content:space-between;min-height:48px;}
.site-brand{display:inline-flex;align-items:center;gap:10px;color:var(--sm-road);text-decoration:none;line-height:1.1;}
.site-brand:hover{color:var(--sm-road);text-decoration:none;}
.site-brand-mark{display:inline-flex;width:38px;height:38px;align-items:center;justify-content:center;border:1px solid var(--sm-border);border-radius:50%;background:linear-gradient(180deg,#fff,var(--sm-sky));box-shadow:var(--sm-shadow-soft);}
.site-brand-mark img{display:block;width:27px;height:27px;}
.site-brand-copy{display:flex;flex-direction:column;gap:2px;min-width:0;}
.site-brand-name{font-weight:850;letter-spacing:0;font-size:1.02rem;}
.site-brand-tagline{display:block;color:var(--sm-mile);font-size:.78rem;font-weight:700;line-height:1.15;}
.site-header-nav{display:flex;gap:16px;align-items:center;}
.site-nav{display:flex;gap:12px;align-items:center;flex-wrap:wrap;}
.site-nav a:not(.site-nav-submit),.site-submit-link,.site-nav-submit{color:var(--sm-road);text-decoration:none;border-radius:var(--sm-radius-sm);font-weight:750;}
.site-nav a{padding:7px 2px;border-bottom:2px solid transparent;font-size:.96rem;}
.site-nav a:hover,.site-nav a:focus-visible{color:var(--sm-teal-dark);text-decoration:none;border-bottom-color:rgba(8,122,117,.38);}
.site-nav a:not(.site-nav-submit)[aria-current="page"]{font-weight:850;color:var(--sm-road);text-decoration:none;border-bottom-color:var(--sm-teal);}
.site-submit-link[aria-current="page"],.site-nav-submit[aria-current="page"]{font-weight:850;}
.site-submit-link,.site-nav-submit{display:inline-flex;align-items:center;min-height:38px;padding:8px 12px;border:1px solid var(--sm-teal);background:var(--sm-start);color:var(--sm-teal-dark);text-decoration:none;font-size:.95rem;box-shadow:0 1px 0 rgba(255,255,255,.9);}
.site-submit-link:hover,.site-nav-submit:hover{background:var(--sm-teal-soft);color:var(--sm-teal-dark);text-decoration:none;}
.site-nav-heading{display:block;font-weight:850;margin:0 0 8px;color:var(--sm-road);}
.site-menu{display:none;}
.site-content{max-width:1120px;margin:0 auto;padding:30px 20px 58px;line-height:1.55;}
.site-content a,.site-footer a{color:var(--sm-road);text-decoration-color:rgba(8,122,117,.55);text-decoration-thickness:1px;text-underline-offset:3px;}
.site-content a:hover,.site-content a:focus-visible,.site-footer a:hover,.site-footer a:focus-visible{color:var(--sm-teal-dark);text-decoration-color:var(--sm-teal);}
.site-content a:focus-visible,.site-footer a:focus-visible,.site-nav a:focus-visible,.site-submit-link:focus-visible,.site-nav-submit:focus-visible{outline:0;box-shadow:var(--sm-focus);border-radius:var(--sm-radius-sm);}
.site-content h1,.site-content h2,.site-content h3{color:var(--sm-road);letter-spacing:0;margin-top:0;}
.site-content h1{margin-bottom:12px;font-size:clamp(2rem,4vw,3.45rem);line-height:1.02;font-weight:850;max-width:820px;}
.site-content h2{font-size:clamp(1.35rem,2.2vw,2rem);line-height:1.16;}
.site-content h3{font-size:1.05rem;line-height:1.25;}
.site-content p{color:var(--sm-road);}
.smui-page-intro{max-width:780px;margin:0 0 20px;color:var(--sm-mile);font-size:1.08rem;line-height:1.55;}
.smui-page-hero{position:relative;margin:-6px 0 26px;padding:28px;border:1px solid var(--sm-border);border-radius:var(--sm-radius);background:linear-gradient(135deg,#fff 0%,#fff 54%,var(--sm-route-soft) 100%);box-shadow:var(--sm-shadow-soft);overflow:hidden;}
.smui-page-hero::after{position:absolute;right:22px;bottom:16px;width:210px;height:42px;border-bottom:2px solid rgba(216,94,50,.32);border-radius:50%;content:"";transform:rotate(-5deg);pointer-events:none;}
.smui-page-hero h1{margin-bottom:10px;}
.smui-page-hero p{max-width:740px;margin:0;color:var(--sm-road-soft);font-size:1.08rem;}
.smui-page-hero-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:18px;}
.smui-section{margin:30px 0 0;padding-top:24px;border-top:1px solid var(--sm-border);}
.smui-section > h2:first-child{margin-bottom:10px;}
.site-content table,.smui-table,.race-comparison{width:100%;border-collapse:separate;border-spacing:0;margin:18px 0;border:1px solid var(--sm-border);border-radius:var(--sm-radius);background:var(--sm-surface);box-shadow:0 1px 0 rgba(255,255,255,.9);overflow:hidden;}
.site-content th,.site-content td,.smui-table th,.smui-table td,.race-comparison th,.race-comparison td{padding:12px 14px;border:0;border-bottom:1px solid var(--sm-border);text-align:left;vertical-align:top;}
.site-content tr:last-child th,.site-content tr:last-child td,.smui-table tr:last-child th,.smui-table tr:last-child td,.race-comparison tr:last-child th,.race-comparison tr:last-child td{border-bottom:0;}
.site-content th,.smui-table th,.race-comparison th{font-weight:850;background:var(--sm-surface-soft);color:var(--sm-road);}
.site-content caption,.smui-table caption{padding:0 0 8px;text-align:left;font-weight:850;color:var(--sm-road);}
.site-content form{max-width:760px;margin:18px 0;}
.site-content label{display:block;margin:0 0 6px;font-weight:800;color:var(--sm-road);}
.site-content input,.site-content select,.site-content textarea{box-sizing:border-box;width:100%;max-width:100%;min-height:42px;padding:10px 11px;border:1px solid var(--sm-border-strong);border-radius:var(--sm-radius-sm);background:var(--sm-surface);color:var(--sm-road);font:inherit;line-height:1.25;}
.site-content input::placeholder,.site-content textarea::placeholder{color:var(--sm-muted);}
.site-content input:focus,.site-content select:focus,.site-content textarea:focus{outline:0;border-color:var(--sm-teal);box-shadow:var(--sm-focus);}
.site-content textarea{min-height:128px;resize:vertical;}
.site-content button,.site-content input[type="submit"],.site-content input[type="button"],.site-content .button,.smui-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:auto;min-height:42px;padding:10px 14px;border:1px solid var(--volt);border-radius:var(--sm-radius-sm);background:var(--volt);color:var(--ink);font:inherit;font-weight:850;line-height:1.2;text-decoration:none;cursor:pointer;box-shadow:0 8px 18px rgba(8,122,117,.14);}
.site-content button:hover,.site-content input[type="submit"]:hover,.site-content input[type="button"]:hover,.site-content .button:hover,.smui-button:hover{background:var(--volt-deep);border-color:var(--volt-deep);color:var(--ink);text-decoration:none;}
.site-content button:focus-visible,.site-content input[type="submit"]:focus-visible,.site-content input[type="button"]:focus-visible,.site-content .button:focus-visible,.smui-button:focus-visible{outline:0;box-shadow:var(--sm-focus);}
.site-content button:disabled,.site-content input[type="submit"]:disabled,.site-content input[type="button"]:disabled,.smui-button[aria-disabled="true"],.smui-button:disabled{background:var(--sm-surface-soft);border-color:var(--sm-border);color:var(--sm-mile);cursor:not-allowed;box-shadow:none;}
.site-content a.smui-button,.home-page a.smui-button{color:var(--paper);text-decoration:none;}
.smui-button--secondary,.site-content .button-secondary{background:var(--sm-surface);border-color:var(--sm-border-strong);color:var(--sm-road);box-shadow:none;}
.smui-button--secondary:hover,.site-content .button-secondary:hover{background:var(--sm-route-soft);border-color:var(--sm-route);color:var(--sm-road);}
.site-content a.smui-button--secondary,.home-page a.smui-button--secondary{color:var(--sm-road);}
.smui-button--quiet{background:transparent;border-color:transparent;color:var(--sm-road);padding-left:7px;padding-right:7px;box-shadow:none;}
.smui-button--quiet:hover{background:var(--sm-cloud);border-color:var(--sm-border);color:var(--sm-road);}
.site-content input[type="checkbox"],.site-content input[type="radio"]{width:auto;min-height:0;margin-right:6px;accent-color:var(--sm-teal);}
.site-content dl{display:grid;grid-template-columns:minmax(120px,220px) 1fr;gap:8px 16px;margin:18px 0;}
.site-content dt{font-weight:850;color:var(--sm-road);}
.site-content dd{margin:0;color:var(--sm-road);}
.site-content .pagination{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:22px 0;}
.site-content .pagination a,.site-content .pagination span{display:inline-flex;min-height:44px;align-items:center;padding:6px 10px;border:1px solid var(--sm-border);border-radius:var(--sm-radius-sm);color:var(--sm-road);background:var(--sm-surface);text-decoration:none;}
.site-content .pagination a:hover,.site-content .pagination a:focus-visible{border-color:var(--sm-teal);color:var(--sm-teal-dark);text-decoration:none;}
.site-content .pagination .current{border-color:var(--sm-teal);background:var(--sm-teal-soft);font-weight:850;}
.site-content .alert,.site-content .notice,.site-content .message,.smui-notice,.smui-empty{padding:14px 16px;border:1px solid var(--sm-border);border-left:4px solid var(--sm-route);border-radius:var(--sm-radius);background:var(--sm-surface);color:var(--sm-road);box-shadow:var(--sm-shadow-soft);}
.smui-empty h2{margin:0 0 8px;font-size:1.35rem;}
.smui-empty p{max-width:760px;}
.smui-empty p:last-child{margin-bottom:0;}
.smui-empty--recovery{margin:14px 0 20px;padding:18px;background:#fff;}
.smui-notice--success{border-left-color:var(--sm-teal);}
.smui-notice--warning{border-left-color:var(--sm-gold);background:linear-gradient(90deg,#fff,var(--sm-gold-soft));}
.smui-notice--error{border-left-color:var(--sm-red);}
.smui-muted{color:var(--sm-mile);}
.smui-panel{margin:18px 0;padding:16px;border:1px solid var(--sm-border);border-left:4px solid var(--sm-route);border-radius:var(--sm-radius);background:var(--sm-surface);box-shadow:var(--sm-shadow-soft);}
.smui-panel--trust{border-left-color:var(--sm-teal);}
.smui-panel--warning{border-left-color:var(--sm-gold);}
.smui-panel--action{display:flex;gap:16px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;}
.smui-panel h2,.smui-panel h3{margin-top:0;}
.smui-panel p:last-child{margin-bottom:0;}
.smui-action-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:16px 0;}
.smui-action-row a:not(.smui-button):not(.button){font-weight:800;}
.smui-link-list{display:flex;gap:8px 14px;flex-wrap:wrap;margin:14px 0;padding:0;list-style:none;}
.smui-link-list li{margin:0;}
.smui-recovery-links{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0;padding:0;list-style:none;}
.smui-recovery-links li{margin:0;}
.smui-recovery-links a{display:inline-flex;min-height:44px;align-items:center;padding:8px 10px;border:1px solid var(--sm-border-strong);border-radius:var(--sm-radius-sm);background:#fff;color:var(--sm-road);font-weight:850;text-decoration:none;}
.smui-recovery-links a:hover,.smui-recovery-links a:focus-visible{border-color:var(--sm-teal);color:var(--sm-teal-dark);text-decoration:none;}
.smui-item-list{display:grid;gap:10px;margin:16px 0;padding:0;list-style:none;}
.smui-item-list li{padding:14px;border:1px solid var(--sm-border);border-radius:var(--sm-radius);background:var(--sm-surface);box-shadow:var(--sm-shadow-soft);}
.smui-item-list a{font-weight:850;}
.smui-item-meta{display:block;margin-top:3px;color:var(--sm-mile);font-size:.93rem;}
.smui-fact-list{display:grid;grid-template-columns:minmax(150px,230px) 1fr;gap:8px 16px;margin:18px 0;padding:14px;border:1px solid var(--sm-border);border-radius:var(--sm-radius);background:var(--sm-surface);box-shadow:var(--sm-shadow-soft);}
.smui-fact-list dt{font-weight:850;color:var(--sm-road);}
.smui-fact-list dd{margin:0;color:var(--sm-road);}
.smui-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0;}
.smui-stat{padding:16px;border:1px solid var(--sm-border);border-radius:var(--sm-radius);background:linear-gradient(180deg,#fff,var(--sm-surface-soft));box-shadow:var(--sm-shadow-soft);}
.smui-stat strong{display:block;font-size:1.35rem;line-height:1.15;}
.smui-stat span{display:block;margin-top:4px;color:var(--sm-mile);font-size:.92rem;}
.smui-directory-table{table-layout:fixed;}
.smui-directory-table th:last-child,.smui-directory-table td:last-child{width:180px;text-align:right;white-space:nowrap;}
.smui-directory-table td:first-child a{font-weight:850;}
.smui-status-chip,.smui-trust-label{display:inline-flex;align-items:center;gap:5px;min-height:25px;padding:3px 8px;border:1px solid var(--sm-border);border-radius:999px;background:var(--sm-surface);color:var(--sm-road);font-size:.86rem;font-weight:800;line-height:1.2;}
.smui-status-chip--success,.smui-trust-label--success{border-color:rgba(8,122,117,.35);background:var(--sm-teal-soft);color:var(--sm-teal-dark);}
.smui-status-chip--warning{border-color:rgba(246,184,69,.65);background:var(--sm-gold-soft);color:#724B00;}
.smui-status-chip--danger{border-color:rgba(201,54,45,.32);background:#FEF2F2;color:#991B1B;}
.smui-status-chip--info{border-color:rgba(46,111,143,.32);background:var(--sm-route-soft);color:var(--sm-route);}
.smui-status-chip--neutral{border-color:var(--sm-border);background:var(--sm-cloud);color:var(--sm-mile);}
.smui-trust-strip{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 0 12px;}
.smui-form{max-width:820px;margin:18px 0;padding:18px;border:1px solid var(--sm-border);border-radius:var(--sm-radius);background:var(--sm-surface);box-shadow:var(--sm-shadow-soft);}
.smui-form h2,.smui-form h3{margin-top:18px;}
.smui-form h2:first-child,.smui-form h3:first-child{margin-top:0;}
.smui-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;}
.smui-form-grid p{margin:0;}
.smui-form-grid .smui-form-wide{grid-column:1/-1;}
.smui-form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:16px 0 0;}
.smui-form-actions p{margin:0;}
.smui-planning-table{table-layout:fixed;}
.smui-planning-table th:first-child,.smui-planning-table td:first-child{width:32%;}
.smui-planning-table ol{margin:0;padding-left:20px;}
.smui-planning-table li+li{margin-top:6px;}
.smui-planning-table form{max-width:none;margin:0;}
.smui-planning-table form p{margin:0 0 10px;}
.smui-planning-table form p:last-child{margin-bottom:0;}
.site-content .plain-flow-table th,.site-content .plain-flow-table td{white-space:normal;}
.breadcrumbs{border-bottom:1px solid var(--sm-border);background:rgba(255,255,255,.72);}
.breadcrumbs-shell{padding-top:9px;padding-bottom:9px;}
.breadcrumb-list{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:0;padding:0;list-style:none;font-size:.91rem;color:var(--sm-mile);}
.breadcrumb-item{display:inline-flex;gap:6px;align-items:center;}
.breadcrumb-item::after{content:"/";color:#8B95A1;}
.breadcrumb-item:last-child::after{content:"";}
.breadcrumb-item a{color:var(--sm-road);text-decoration-color:rgba(8,122,117,.55);text-underline-offset:3px;}
.breadcrumb-item.active{color:var(--sm-mile);}
.race-filter-form{display:grid;grid-template-columns:1.3fr repeat(3,minmax(120px,.7fr)) auto;gap:12px;align-items:end;max-width:none;padding:14px;border:1px solid var(--sm-border);border-radius:var(--sm-radius);background:var(--sm-surface);box-shadow:var(--sm-shadow-soft);}
.race-filter-form p{margin:0;}
.race-filter-form .race-filter-query{grid-column:auto;}
.race-filter-form fieldset{grid-column:1/-1;margin:0;padding:12px;border:1px solid var(--sm-border);border-radius:var(--sm-radius-sm);background:var(--sm-surface-soft);}
.race-filter-form legend{font-weight:850;padding:0 4px;color:var(--sm-road);}
.race-filter-advanced{margin:0;padding:0;}
.race-filter-advanced[open]{grid-column:1/-1;}
.race-filter-advanced summary{display:inline-block;padding:7px 0;cursor:pointer;font-weight:850;color:var(--sm-teal-dark);text-decoration:underline;text-decoration-color:rgba(8,122,117,.55);text-underline-offset:3px;}
.race-filter-advanced[open] summary{margin-bottom:10px;}
.race-filter-advanced-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end;}
.race-filter-checks{display:flex;gap:10px 16px;flex-wrap:wrap;}
.race-filter-check{display:inline-flex;gap:6px;align-items:center;font-weight:650;color:var(--sm-road);}
.race-filter-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.race-comparison{table-layout:fixed;margin:14px 0 20px;}
.race-comparison th:first-child,.race-comparison td:first-child{width:132px;}
.race-comparison th:nth-child(4),.race-comparison td:nth-child(4){width:190px;}
.race-comparison th:nth-child(5),.race-comparison td:nth-child(5){width:150px;}
.race-comparison th:last-child,.race-comparison td:last-child{width:150px;}
.race-comparison-race{font-weight:850;}
.race-comparison-plan{display:inline-block;margin-top:4px;font-size:.92rem;font-weight:750;color:var(--sm-teal-dark);}
.race-comparison-organizer-update{display:inline-block;margin-top:4px;font-size:.92rem;font-weight:800;color:var(--sm-teal-dark);}
.race-comparison-correction{display:inline-block;margin-top:4px;font-size:.92rem;color:var(--sm-clay);}
.race-comparison-muted{color:var(--sm-mile);}
.race-comparison .smui-status-chip{margin-top:5px;}
.race-list-countdown{display:block;margin-top:4px;color:var(--sm-mile);font-size:.89rem;font-variant-numeric:tabular-nums;}
.race-comparison-empty{padding:14px;border:1px solid var(--sm-border);border-left:4px solid var(--sm-route);border-radius:var(--sm-radius);background:var(--sm-surface);box-shadow:var(--sm-shadow-soft);}
.ad-slot{margin:24px 0;padding:10px 0;border-top:1px solid rgba(203,216,226,.75);border-bottom:1px solid rgba(203,216,226,.75);background:#fff;min-height:92px;}
.ad-slot ins{max-width:100%;}
.site-footer{border-top:1px solid var(--sm-border);margin-top:44px;background:#fff;}
.site-footer-grid{display:grid;grid-template-columns:minmax(240px,1.6fr) repeat(3,minmax(140px,1fr));gap:28px;align-items:start;}
.site-footer-brand strong{display:block;margin:0 0 8px;font-size:1.08rem;}
.site-footer-brand p{margin:0;max-width:420px;color:var(--sm-mile);}
.site-footer-links{display:flex;flex-direction:column;gap:8px;align-items:flex-start;}
.site-footer-links h2{margin:0 0 4px;font-size:1rem;line-height:1.2;color:var(--sm-road);}
.site-footer-bottom{display:flex;gap:12px;justify-content:space-between;align-items:baseline;flex-wrap:wrap;margin-top:26px;padding-top:14px;border-top:1px solid var(--sm-border);}
.site-footer-bottom small{display:block;}
.site-footer-bottom span{color:var(--sm-mile);font-size:.92rem;}
@media (max-width:920px){
    .site-header-nav{gap:12px;}
    .site-nav{gap:9px;}
    .site-nav a{font-size:.92rem;}
    .race-filter-form{grid-template-columns:repeat(2,minmax(0,1fr));}
    .race-filter-form .race-filter-query{grid-column:1/-1;}
    .race-filter-actions{grid-column:1/-1;}
    .race-filter-advanced-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:760px){
    .smui-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
    .smui-form-grid{grid-template-columns:1fr;}
    .smui-panel--action{display:block;}
    .smui-planning-table,.smui-planning-table tbody,.smui-planning-table tr,.smui-planning-table td{display:block;width:100%;}
    .smui-planning-table{border:0;background:transparent;box-shadow:none;}
    .smui-planning-table thead{display:none;}
    .smui-planning-table tr{box-sizing:border-box;border:1px solid var(--sm-border);border-radius:var(--sm-radius);margin:0 0 12px;padding:10px;background:var(--sm-surface);}
    .smui-planning-table td{box-sizing:border-box;border:0;padding:6px 0;white-space:normal;}
    .smui-planning-table td:first-child{width:100%;}
    .smui-planning-table td::before{display:block;color:var(--sm-mile);font-size:.9rem;font-weight:800;}
    .smui-planning-table td:first-child::before{content:"Race";}
    .smui-planning-table[data-profile-race-reminders] td:nth-child(2)::before{content:"Reminder dates";}
    .smui-planning-table[data-profile-race-booking] td:nth-child(2)::before{content:"Before booking";}
    .smui-planning-table[data-profile-race-checklist] td:nth-child(2)::before{content:"Next checks";}
    .smui-planning-table[data-profile-race-plans] td:nth-child(2)::before{content:"Plan";}
    .race-filter-form{grid-template-columns:1fr;padding:12px;}
    .race-filter-form .race-filter-query{grid-column:auto;}
    .race-filter-actions{grid-column:auto;}
    .race-filter-advanced-grid{grid-template-columns:1fr;}
    .race-comparison,.race-comparison tbody,.race-comparison tr,.race-comparison td{display:block;width:100%;}
    .race-comparison{border:0;background:transparent;box-shadow:none;}
    .race-comparison thead{display:none;}
    .race-comparison tr{border:1px solid var(--sm-border);border-radius:var(--sm-radius);margin:0 0 12px;padding:10px 12px;background:var(--sm-surface);box-shadow:var(--sm-shadow-soft);}
    .race-comparison td{border:0;padding:6px 0;white-space:normal;}
    .race-comparison td::before{content:attr(data-label);display:block;color:var(--sm-mile);font-size:.9rem;font-weight:800;}
    .race-comparison th:first-child,.race-comparison td:first-child,.race-comparison th:nth-child(4),.race-comparison td:nth-child(4),.race-comparison th:nth-child(5),.race-comparison td:nth-child(5),.race-comparison th:last-child,.race-comparison td:last-child{width:100%;}
}
@media (max-width:640px){
    .site-header{backdrop-filter:none;-webkit-backdrop-filter:none;}
    .site-shell{padding:10px 12px;}
    .site-header-shell{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:nowrap;}
    .site-brand{position:absolute;left:50%;transform:translateX(-50%);align-items:center;text-align:center;white-space:nowrap;}
    .site-brand-tagline{display:none;}
    .site-brand-mark{width:34px;height:34px;}
    .site-brand-mark img{width:24px;height:24px;}
    .site-header-nav{display:none;}
    .site-nav--desktop{display:none;}
    .site-menu{display:block;}
    .site-menu-toggle{display:inline-flex;align-items:center;min-height:44px;border:1px solid var(--sm-border-strong);border-radius:var(--sm-radius-sm);background:var(--sm-surface);color:var(--sm-road);padding:6px 10px;cursor:pointer;font-weight:850;}
    .site-menu-toggle::-webkit-details-marker{display:none;}
    .site-menu-toggle::marker{content:"";}
    .site-menu-close{display:none;}
    .site-menu[open] .site-menu-open{display:none;}
    .site-menu[open] .site-menu-close{display:inline;}
    .site-menu[open]::before{content:"";position:fixed;inset:0;background:rgba(14,23,38,.28);z-index:20;}
    .site-menu[open] .site-menu-toggle{position:fixed;top:10px;left:12px;z-index:32;background:var(--sm-start);}
    .site-nav--drawer{position:fixed;top:0;left:0;bottom:0;z-index:31;box-sizing:border-box;width:min(304px,84vw);height:100vh;max-height:100vh;padding:58px 18px 18px;background:var(--sm-start);border-right:1px solid var(--sm-border);box-shadow:var(--sm-shadow);display:flex;flex-direction:column;flex-wrap:nowrap;align-items:flex-start;gap:14px;overflow-y:auto;}
    .site-nav--drawer a{display:block;}
    .site-content{padding:22px 14px 40px;}
    .smui-page-hero{padding:22px 18px;margin-top:0;}
    .smui-page-hero::after{display:none;}
    .site-content table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;}
    .site-content th,.site-content td{white-space:nowrap;}
    .site-content .plain-flow-table,.site-content .plain-flow-table tbody,.site-content .plain-flow-table tr,.site-content .plain-flow-table th,.site-content .plain-flow-table td{display:block;width:100%;box-sizing:border-box;}
    .site-content .plain-flow-table{border:0;background:transparent;box-shadow:none;overflow:visible;}
    .site-content .plain-flow-table tr{margin:0 0 10px;border:1px solid var(--sm-border);border-radius:var(--sm-radius);background:var(--sm-surface);box-shadow:var(--sm-shadow-soft);}
    .site-content .plain-flow-table th,.site-content .plain-flow-table td{border:0;padding:10px 12px;white-space:normal;overflow-wrap:normal;word-break:normal;}
    .site-content .plain-flow-table th{border-bottom:1px solid var(--sm-border);background:#f7fbfd;}
    .site-content .smui-directory-table{display:block;overflow:visible;table-layout:auto;border:0;background:transparent;box-shadow:none;}
    .site-content .smui-directory-table th,.site-content .smui-directory-table td{white-space:normal;}
    .smui-directory-table thead{display:none;}
    .smui-directory-table tbody,.smui-directory-table tr,.smui-directory-table td{display:block;width:100%;}
    .smui-directory-table tr{box-sizing:border-box;margin:0 0 10px;padding:12px;border:1px solid var(--sm-border);border-radius:var(--sm-radius);background:var(--sm-surface);box-shadow:var(--sm-shadow-soft);}
    .smui-directory-table td{box-sizing:border-box;border:0;padding:4px 0;text-align:left;}
    .smui-directory-table th:last-child,.smui-directory-table td:last-child{width:100%;text-align:left;white-space:normal;}
    .smui-directory-table td::before{display:block;color:var(--sm-mile);font-size:.9rem;font-weight:800;}
    .smui-directory-table td:first-child::before{content:"Country";}
    .smui-directory-table td:last-child::before{content:"Marathons";}
    .site-content .race-comparison td,.site-content .smui-planning-table td{white-space:normal;}
    .site-content .smui-fact-list{display:block;}
    .site-content .smui-fact-list dt{margin-top:10px;}
    .site-content .smui-fact-list dt:first-child{margin-top:0;}
    .site-content dl{display:block;}
    .site-content dt{margin-top:10px;}
    .smui-stat-grid{grid-template-columns:1fr;}
    .site-footer{margin-top:24px;}
    .site-footer-grid{grid-template-columns:1fr;gap:20px;}
    .site-footer-brand p{max-width:none;}
    .site-footer-bottom{display:block;}
    .site-footer-bottom span{display:block;margin-top:8px;}
}
html{background:#fff;}
body{background:linear-gradient(180deg,#f6fbff 0,#fff 320px);color:var(--sm-road);}
.site-header{border-bottom:1px solid rgba(203,216,226,.72);background:rgba(255,255,255,.9);box-shadow:0 10px 30px rgba(14,23,38,.05);}
.site-brand-mark{border-color:rgba(8,122,117,.18);background:#fff;box-shadow:0 8px 22px rgba(8,122,117,.1);}
.site-brand-name{color:var(--ink);}
.site-brand-tagline{color:var(--muted);}
.site-nav a:not(.site-nav-submit){color:var(--ink);font-size:.93rem;}
.site-submit-link,.site-nav-submit{border-color:var(--volt);background:var(--volt);color:var(--ink);box-shadow:0 8px 18px rgba(8,122,117,.16);}
.site-submit-link:hover,.site-nav-submit:hover{background:var(--volt-deep);color:var(--ink);}
.site-content{max-width:1180px;padding-top:32px;}
.smui-page-hero{border-color:rgba(203,216,226,.9);background:linear-gradient(135deg,#fff 0%,#fff 58%,var(--volt-soft) 100%);box-shadow:0 18px 48px rgba(8,37,63,.08);}
.smui-page-hero::after{display:none;}
.smui-page-hero-kicker,.location-kicker{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border:1px solid rgba(8,122,117,.18);border-radius:999px;background:var(--volt-soft);color:var(--ink);font-size:.84rem;font-weight:850;text-decoration:none;}
.smui-section{border-top-color:rgba(203,216,226,.72);}
.site-content table,.smui-table,.race-comparison{border-color:rgba(203,216,226,.86);box-shadow:0 16px 40px rgba(8,37,63,.06);}
.site-content th,.smui-table th,.race-comparison th{background:#f7fbfd;color:var(--ink);font-size:.82rem;text-transform:uppercase;letter-spacing:.03em;}
.site-content td,.site-content th,.smui-table td,.smui-table th,.race-comparison td,.race-comparison th{border-bottom-color:rgba(203,216,226,.72);}
.race-date-card{display:inline-grid;width:58px;min-width:58px;place-items:center;overflow:hidden;border:1px solid rgba(8,122,117,.2);border-radius:8px;background:#fff;box-shadow:0 8px 20px rgba(8,37,63,.07);vertical-align:top;}
.race-date-card__month{width:100%;padding:4px 3px;background:var(--volt);color:var(--ink);font-size:.72rem;font-weight:900;line-height:1;text-align:center;}
.race-date-card__day{padding:5px 3px 1px;color:var(--ink);font-size:1.38rem;font-weight:900;line-height:1;}
.race-date-card__year{padding:0 3px 6px;color:var(--muted);font-size:.72rem;font-weight:800;line-height:1;}
.race-comparison td:first-child,.location-table td:first-child{display:table-cell;}
.race-comparison .race-date-card,.location-table .race-date-card{margin:0 0 7px;}
.race-comparison-date-text,.location-date-text,.home-date-text{font-weight:850;color:var(--ink);}
.race-comparison-date-text,.location-date-text{display:block;font-size:.84rem;line-height:1.2;overflow-wrap:normal;word-break:normal;}
.race-comparison .race-list-countdown,.location-table .race-list-countdown{font-size:.78rem;line-height:1.25;overflow-wrap:normal;word-break:normal;}
.home-table .home-date-text{display:none;}
.race-comparison tr:hover,.location-table tr:hover,.smui-directory-table tr:hover{background:#fbfdff;}
.race-comparison-race,.location-race-link,.smui-directory-table td:first-child a{color:var(--ink);font-weight:900;text-decoration:none;}
.race-comparison-plan,.race-comparison-organizer-update,.location-plan-link,.home-plan-link{color:var(--volt-text);text-decoration:none;}
.race-list-countdown{color:#6b7e91;}
.site-content .race-filter-form{max-width:none;}
.race-filter-form{padding:16px;border-color:rgba(203,216,226,.9);background:#fff;box-shadow:0 18px 44px rgba(8,37,63,.07);}
.race-filter-form button,.race-filter-actions .smui-button{white-space:nowrap;min-width:118px;}
.race-filter-form input,.race-filter-form select,.location-search input,.location-search select,.calendar-filter input,.calendar-filter select{border-color:#c8d6e2;background:#fbfdff;}
.race-filter-actions .smui-button,.location-search button,.calendar-filter button,.home-hero-search button{background:var(--volt);border-color:var(--volt);}
.race-filter-actions .smui-button:hover,.location-search button:hover,.calendar-filter button:hover,.home-hero-search button:hover{background:var(--volt-deep);border-color:var(--volt-deep);}
.smui-stat{border-color:rgba(203,216,226,.82);background:#fff;box-shadow:0 14px 34px rgba(8,37,63,.06);}
.smui-stat strong{color:var(--ink);}
.site-content .smui-directory-table{display:block;border:0;background:transparent;box-shadow:none;overflow:visible;}
.smui-directory-table thead{display:none;}
.smui-directory-table tbody{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.smui-directory-table tr{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px;border:1px solid rgba(203,216,226,.86);border-radius:8px;background:#fff;box-shadow:0 12px 30px rgba(8,37,63,.05);}
.smui-directory-table td{display:block;width:auto;border:0;padding:0;white-space:normal;}
.smui-directory-table td:last-child{width:auto;text-align:right;color:var(--muted);font-weight:900;white-space:nowrap;}
.smui-panel,.smui-form,.smui-empty,.smui-item-list li,.smui-fact-list{border-color:rgba(203,216,226,.86);background:#fff;box-shadow:0 14px 34px rgba(8,37,63,.06);}
.site-footer{background:#fbfdff;}
@media (max-width:760px){
    .race-comparison tr{padding:12px;}
    .race-comparison td:first-child,.location-table td:first-child{display:block;width:100%;}
    .smui-directory-table tbody{grid-template-columns:1fr;}
    .smui-directory-table tr{display:flex;}
    .race-filter-actions .smui-button,.race-filter-form button{width:100%;min-width:0;white-space:normal;}
}
