*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#f4f7ef;font:16px system-ui,sans-serif;background:radial-gradient(ellipse at top,#235b47,#0c2924 55%,#051310);min-height:100vh}.wrap{max-width:990px;margin:auto;padding:22px 16px 50px}header,nav,.stats{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}header{margin-bottom:25px}a{color:#f2bd49;text-decoration:none}nav{justify-content:flex-start;margin-bottom:20px}nav a,button,.button{display:inline-block;border:1px solid #ffffff44;background:#ffffff12;color:white;border-radius:9px;padding:11px 15px;font:inherit;cursor:pointer}.button{background:#f2bd49;color:#12261d;font-weight:800;border:0}.panel{background:#09221fe8;border:1px solid #ffffff26;border-radius:17px;padding:26px;margin-bottom:18px;box-shadow:0 16px 40px #0004}.hero{border-top:4px solid #f2bd49;padding:40px 28px}.hero small{color:#f2bd49;letter-spacing:.15em;font-weight:800}h1{font-size:clamp(30px,5vw,48px);margin:15px 0}h2{margin-top:0}p{line-height:1.6;color:#c4d2c9}.stats{margin-bottom:18px}.stats>div{flex:1;min-width:170px;padding:20px;background:#09221fe8;border:1px solid #ffffff26;border-radius:12px}.stats b{display:block;color:#f2bd49;font-size:32px}.stats small{color:#c4d2c9}.cols{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:block;font-weight:650;margin:14px 0}input,select,textarea{display:block;width:100%;padding:12px;margin-top:6px;background:#041b17;color:white;border:1px solid #ffffff55;border-radius:8px;font:inherit}button:disabled{opacity:.4}.line{border-top:1px solid #ffffff22;padding:16px 0}.alert{background:#f2bd4920;padding:12px;border-left:3px solid #f2bd49}footer{text-align:center;color:#b9c6bc}[hidden]{display:none!important}@media(max-width:650px){.cols{grid-template-columns:1fr}.panel{padding:19px}.hero{padding:26px 19px}}  /* STL APA Custom Theme Colors */
:root {
  --accent-color: #f2bd49;
}

a,
.hero small,
.stats b {
  color: var(--accent-color);
}

.button {
  background: var(--accent-color);
}

.hero {
  border-top-color: var(--accent-color);
}

.alert {
  border-left-color: var(--accent-color);
}
/* Director Dashboard Theme Colors */

a,
.hero small,
.stats b {
    color: var(--accent-color);
}

.button {
    background: var(--accent-color);
}

.hero {
    border-top-color: var(--accent-color);
}

.alert {
    border-left-color: var(--accent-color);
}

/* Public tournament design — scoped so director forms remain intact */
.public-site{background-color:#030c1b;color:#f5f8ff}
.public-site .wrap{max-width:1180px}
.public-site .site-topbar{position:sticky;top:0;z-index:20;background:#030c1bf5;border-bottom:1px solid #3c6384;margin:0;padding:0 18px;backdrop-filter:blur(12px)}
.public-site .topbar-inner{max-width:1180px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:82px}
.public-site .brand{display:flex;align-items:center;gap:18px;color:#fff;font-weight:850;min-width:0}
.public-site .brand img{max-height:60px;max-width:115px;object-fit:contain}
.public-site .brand span:last-child{font-size:clamp(14px,1.5vw,21px)}
.public-site .brand-mark{font-size:28px;color:#38b9ff}
.public-site .top-nav{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:0}
.public-site .top-nav a{border:0;background:transparent;border-radius:0;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:850;padding:13px 10px;color:#d8e6fa;white-space:nowrap}
.public-site .top-nav a:hover{color:#45c6ff}
.public-site .top-nav .nav-register{border:1px solid #39baff;border-radius:5px;color:#42c5ff;margin-left:10px}
.public-site .event-hero{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;min-height:450px;padding:42px 0}
.public-site .event-intro{padding:30px 6px}
.public-site .event-intro small,.public-site .event-details h2{color:#4ec8ff;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.public-site .event-intro h1{font-size:clamp(40px,5vw,66px);line-height:1.08;margin:20px 0 28px;letter-spacing:-.035em}
.public-site .event-intro h3{margin-bottom:3px}
.public-site .event-date{color:#52c6ff;font-weight:750}
.public-site .hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.public-site .button{background:var(--accent-color);color:#06182b;border-radius:7px}
.public-site .secondary-button{display:inline-block;border:1px solid #507899;color:#fff;padding:11px 15px;border-radius:7px;font-weight:750}
.public-site .event-details,.public-site .panel,.public-site .stats>div{background:#0a1830e8;border:1px solid #27425d;border-radius:14px}
.public-site .event-details{padding:30px}
.public-site .event-details h2{font-size:14px;margin-bottom:16px}
.public-site .event-details dl{margin:0}
.public-site .event-details dl>div{display:grid;grid-template-columns:120px 1fr;gap:16px;border-top:1px solid #28425e;padding:15px 0}
.public-site .event-details dt{color:#93accd;text-transform:uppercase;letter-spacing:.1em;font-size:12px;font-weight:750}
.public-site .event-details dd{margin:0;font-weight:700}
.public-site .stats b{color:var(--accent-color)}
.public-site .flyer-panel{text-align:center}
.public-site .flyer-panel img{display:block;max-width:620px;width:100%;height:auto;margin:auto;border-radius:10px}
.public-site .panel{scroll-margin-top:105px}
.public-site .event-hero{scroll-margin-top:105px}
@media(max-width:900px){.public-site .topbar-inner{flex-direction:column;padding:12px 0}.public-site .top-nav{justify-content:center;flex-wrap:wrap}.public-site .event-hero{grid-template-columns:1fr;gap:12px;padding:18px 0}.public-site .event-intro{padding:18px 0}}
@media(max-width:520px){.public-site .top-nav a{font-size:10px;padding:8px 5px;letter-spacing:.04em}.public-site .event-details{padding:18px}.public-site .event-details dl>div{grid-template-columns:90px 1fr}.public-site .event-intro h1{font-size:38px}}

/* Director-managed section order (Version 2) */
.customizable-sections { display:flex; flex-direction:column; gap:18px; }
.customizable-sections > .layout-section { width:100%; margin-top:0; margin-bottom:0; }
html { scroll-behavior:smooth; }
