@import url('./brand-surfaces.css?v=20261011b');
@import url('./site-responsive.css?v=20261018a');
/* SIETEC — shared identity. Loaded after each page's structural styles.
   Sidebar offsets, permission states and sport-specific layouts stay in their own files. */
:root {
  --brand-font: 'Segoe UI', system-ui, -apple-system, sans-serif;
  --brand-bg: #fff; --brand-surface: #fff; --brand-inset: #e9ebec;
  --brand-text: #202427; --brand-muted: #5b6268; --brand-line: #d9dde0;
  --brand-orange: #c83a0b; --brand-hover: #ab3008; --brand-tint: #fbeae3;
  --brand-radius: 12px;
  --font-body: var(--brand-font); --font-display: var(--brand-font);
}
:root[data-theme='dark'], :root[data-brand-surface='auth'], :root[data-brand-surface='public'] {
  --brand-bg: #101010; --brand-surface: #202020; --brand-inset: #292929;
  --brand-text: #f4f5f6; --brand-muted: #b8b8b8; --brand-line: #383838;
  --brand-orange: #ff784a; --brand-hover: #ff956f; --brand-tint: #38251f;
}
:root {
  --bg: var(--brand-bg); --bg-base: var(--brand-bg); --bg-card: var(--brand-surface);
  --bg-elevated: var(--brand-surface); --text: var(--brand-text); --text-primary: var(--brand-text);
  --text-muted: var(--brand-muted); --text-secondary: var(--brand-muted); --text-tertiary: var(--brand-muted);
  --border: var(--brand-line); --line: var(--brand-line); --accent: var(--brand-orange);
  --accent-hover: var(--brand-hover); --accent-soft: var(--brand-tint);
  --radius-card: var(--brand-radius); --radius-btn: 8px; --radius-md: 12px; --radius-lg: 16px;
  --glass-fill: var(--brand-surface); --nav-fill: var(--brand-surface); --nav-border: var(--brand-line);
  --glass-border: var(--brand-line); --shadow-soft: 0 2px 8px #00000006;
}
body { font-family: var(--brand-font); -webkit-font-smoothing: antialiased; }
button, input, select, textarea { font-family: inherit; }
h1,h2,h3,h4 { font-family: var(--brand-font); text-wrap: balance; }
h1,h2 { letter-spacing: -.035em; }
p { line-height: 1.6; }
:where(a,button,input,select,textarea,summary):focus-visible { outline: 3px solid var(--brand-orange); outline-offset: 4px; }
:where(button,.btn,.button,.icon-btn) { touch-action: manipulation; }
:where(button,.btn,.button):disabled { cursor: not-allowed; opacity: .55; }
:where(.btn,.button,.icon-btn) i { flex-shrink: 0; line-height: 1; vertical-align: middle; }
:where(.btn-primary,.btn-submit,.button--primary) { background: #c83a0b; color: #fff; box-shadow: none; }
:where(.btn-primary,.btn-submit,.button--primary):hover { background: #ab3008; }
.brand-wordmark { display: block; margin-top: 5px; text-align: center; font-family: var(--brand-font); font-style: italic; font-weight: 900; font-size: 1.25rem; line-height: 1; letter-spacing: -.06em; color: inherit; }
img[src*='sietec-athlete'] { object-fit: contain; }
.brand-lockup { display: inline-flex; flex-direction: column; align-items: center; color: inherit; text-decoration: none; }
.brand-lockup img { display: block; }
/* Administration: one clear reading edge; no ornamental rule touching titles. */
.main-content .section-title { margin-block: 6px 28px; padding-top: 8px; line-height: 1.15; }
.section-title::after { display: none; }
.events-block__label::before { display: none; }
.main-content::before { display: none; }
.main-content :where(.page-header,.page-heading,.section-header,.dashboard-heading) { gap: 20px; padding-block: 16px 24px; margin-bottom: 28px; }
.main-content :where(.page-header,.page-heading,.section-header,.dashboard-heading) h1 { font-size: clamp(1.8rem,3vw,2.55rem); }
.main-content :where(.form-section,.dashboard-panel,.account-card,.news-card) { border: 1px solid var(--brand-line); border-radius: 12px; box-shadow: none; }
.dashboard-metric { border-radius: 10px; border: 1px solid var(--brand-line); box-shadow: none; border-top: 3px solid var(--brand-line); }
.dashboard-metric strong { font-size: 2.3rem; letter-spacing: -.05em; font-variant-numeric: tabular-nums; }
.dashboard-metric:hover { border-top-color: var(--brand-orange); }
.dashboard-panel { margin-bottom: 24px; }
.dashboard-panel h2 { font-size: 1.25rem; }
.dashboard-school { border-radius: 8px; box-shadow: none; }
.dashboard-heading p { color: var(--brand-muted); max-width: 65ch; }
.input-group label { color: var(--brand-text); font-size: .875rem; font-weight: 600; }
.input-group :is(input:not([type='checkbox']):not([type='radio']),select,textarea) { background: var(--brand-surface); color: var(--brand-text); border: 1px solid var(--brand-line); border-radius: 8px; font-size: 1rem; min-height: 46px; }
.input-group select { appearance: auto; padding-right: 12px; }
.input-group :is(input,select,textarea):focus { border-color: var(--brand-orange); }
:where(input,textarea)::placeholder { color: var(--brand-muted); opacity: 1; }
:where(input[type='checkbox'],input[type='radio']) { accent-color: #c83a0b; }
.main-content :where(th,td) { padding-block: 14px; }
.main-content th { font-size: .75rem; letter-spacing: .035em; color: var(--brand-muted); }
.main-content tbody tr:hover { background: var(--brand-tint); }
.main-content :where(.empty-state,.no-results) { border: 1px dashed var(--brand-line); border-radius: 12px; background: transparent; padding: 36px 24px; }
/* Existing rail toggle behavior is unchanged. Symbol only while collapsed. */
#sidebar .sietec-brand { flex-direction: column; gap: 0; padding: 6px 0 10px; min-height: 82px; margin-inline: 8px; }
#sidebar .sietec-brand__logo { width: 44px; height: 57px; filter: drop-shadow(0 0 1px #b9c0c7); }
#sidebar .sietec-brand__copy { display: none; }
#sidebar.open-sidebar .sietec-brand__copy { display: flex; width: auto; opacity: 1; align-items: center; }
#sidebar.open-sidebar .sietec-brand__copy strong { font-size: 1.0625rem; font-style: italic; letter-spacing: -.05em; }
#sidebar.open-sidebar .sietec-brand__copy small { display: none; }
.topbar-brand { border-radius: 4px; box-shadow: none; }
.btn-create,.btn-submit,.btn-createequip,.topbar-sidebar-btn,.mobile-sidebar-toggle,.btn-back,.btn-primary { background: #c83a0b; color: #fff; box-shadow: none; }
.btn-create:hover,.btn-submit:hover,.btn-createequip:hover,.topbar-sidebar-btn:hover,.mobile-sidebar-toggle:hover,.btn-back:hover,.btn-primary:hover { background: #ab3008; }
.event-card__badge--live,.chip.is-active { background: #c83a0b; color: #fff; }
.main-content .cards-grid { gap: 24px; }
.main-content .event-card { border-radius: 12px; box-shadow: none; }
.main-content .event-card__info { padding: 22px; gap: 10px; }
.main-content .event-card__name { font-size: 1.2rem; white-space: normal; line-height: 1.25; overflow-wrap: anywhere; }
.main-content .event-card__school { font-size: .7rem; letter-spacing: .025em; }
.main-content .team-card { padding: 20px; border-radius: 10px; box-shadow: none; }
.main-content .team-info { min-width: 0; }
.main-content .team-name { font-size: 1rem; overflow-wrap: anywhere; }
.main-content .team-btns .btn { min-height: 44px; padding-inline: 14px; }
.main-content .btn-visualize { background: var(--brand-inset); color: var(--brand-text); border: 1px solid var(--brand-line); }
.main-content .btn-edit { background: var(--brand-tint); color: var(--brand-orange); border: 1px solid var(--brand-line); }
.main-content .stat-card { text-align: left; padding: 22px; border-radius: 10px; }
.main-content .stat-card b { font-size: 2rem; color: var(--brand-text); font-variant-numeric: tabular-nums; }
.main-content .score-card,.main-content .panel { border-color: var(--brand-line); box-shadow: none; }
.main-content .score-team-btn { border-radius: 8px; min-height: 60px; }
/* Student portal: quieter surfaces and room for real team names. */
.sidebar__brand { display: flex; flex-direction: column; align-items: center; padding-block: 20px; }
.sidebar__brand .brand-logo { width: 76px; height: 94px; filter: drop-shadow(0 0 1px #aeb8bf); }
.top-bar__brand .brand-logo { width: 42px; height: 48px; }
.sidebar__brand .brand-wordmark { font-size: 1.375rem; }
.sidebar__nav .nav-item { border-radius: 8px; min-height: 46px; }
.sidebar__nav .nav-item.is-active { background: var(--brand-tint); color: var(--brand-orange); box-shadow: inset 3px 0 var(--brand-orange); }
.bottom-nav { background: var(--brand-surface); border: 1px solid var(--brand-line); box-shadow: 0 4px 20px #0002; }
.app :where(.event-card,.match-card,.game-card,.news-card,.modalidade-card,.champion-card) { border: 1px solid var(--brand-line); border-radius: 12px; box-shadow: none; }
.app :where(.match-score,.score,.placar) { font-variant-numeric: tabular-nums; font-weight: 800; }
.app :where(.team-name,.team__name,.match-team-name) { overflow-wrap: anywhere; min-width: 0; line-height: 1.3; }
.app :where(.page-title,.section-title) { padding-top: 12px; margin-bottom: 24px; }
.app :where(.chip,.badge) { border-radius: 6px; }
.app .section-heading { padding-block: 16px 24px; gap: 20px; }
.app .section-heading h1::after { display: none; }
.app .game-card__score { font-size: 1.65rem; font-variant-numeric: tabular-nums; }
.app .game-card__matchup { padding-block: 14px; }
.app .champion-mini-card { background: var(--brand-surface); border-color: var(--brand-line); border-left: 3px solid #b38626; border-radius: 10px; }
.app .championship-record { border-radius: 12px; }
.app .record-main { padding: 28px; }
.app .game-card[data-status='finished'],.app .event-card[data-status='finished'],.event-card--done { opacity: 1; }
@media(max-width:768px) {
  .main-content :where(.page-header,.page-heading,.section-header,.dashboard-heading) { align-items: flex-start; flex-wrap: wrap; padding-block: 10px 18px; }
  .main-content :where(.form-section,.dashboard-panel) { padding: 20px 16px; }
  .main-content :where(.btn,.btn-primary,.btn-secondary) { min-height: 44px; }
  .main-content .dashboard-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .main-content .dashboard-metric { min-width: 0; padding: 14px; }
  .main-content .team-card { flex-wrap: wrap; padding: 16px; }
  .main-content .team-btns { width: 100%; padding-top: 12px; border-top: 1px solid var(--brand-line); }
  .app .record-main { padding: 20px 16px; }
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation-duration: .01ms!important; transition-duration: .01ms!important; scroll-behavior: auto!important; } }
html[data-contrast='high'] { --brand-muted: var(--brand-text); --brand-line: var(--brand-text); }
@media print { :root { --brand-text:#111; --brand-muted:#333; --brand-bg:#fff; --brand-surface:#fff; } }

/* SIETEC glass system 2026-09-23 */
/* Shared visual layer for the existing PHP pages. All navigation and actions stay intact. */
:root{
  --glass-fill:rgba(255,255,255,.58);
  --glass-raised:rgba(255,255,255,.7);
  --glass-line:rgba(255,255,255,.72);
  --glass-shadow:0 16px 42px rgba(25,25,25,.10),inset 0 1px 0 rgba(255,255,255,.9);
  --glass-radius:22px
}
:root[data-theme=dark]{
  --glass-fill:rgba(255,255,255,.075);
  --glass-raised:rgba(255,255,255,.12);
  --glass-line:rgba(255,255,255,.18);
  --glass-shadow:0 18px 48px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.18)
}
:root{
  --brand-radius:22px;
  --radius-card:22px;
  --radius-md:18px;
  --radius-lg:24px;
  --radius-btn:14px
}
body{
  background:var(--brand-bg)
}
.main-content :where(.event-card,.panel,.dashboard-panel,.form-section,.account-card,.news-card,.team-card,.stat-card,.championship-card),
.app :where(.event-card,.modality-card,.game-card,.match-card,.news-card,.champion-mini-card,.guest-box){
  border:1px solid var(--glass-line);
  border-radius:var(--glass-radius);
  background:var(--glass-fill);
  box-shadow:var(--glass-shadow);
  -webkit-backdrop-filter:blur(18px) saturate(1.25);
  backdrop-filter:blur(18px) saturate(1.25);
}
.main-content .event-card,.app .event-card,.app .modality-card{overflow:hidden}
.main-content .event-card,.app .event-card{
  transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .22s ease
}
.main-content .event-card:hover,.app .event-card:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 48px rgba(0,0,0,.17)
}
.main-content .event-card__banner,.app .event-card__banner{
  overflow:hidden;
  border-radius:calc(var(--glass-radius) - 1px) calc(var(--glass-radius) - 1px) 0 0
}
.main-content :where(.btn-preview,.btn-create,.btn-encerrar-evento,.btn-back,.btn-primary,.btn-edit,.btn-visualize),
.app :where(.chip,.icon-btn,.login-cta){
  border-radius:999px;
  min-height:42px
}
.main-content :where(input,select,textarea),.app :where(input,select,textarea){
  border-radius:14px
}
.main-content :where(.empty-state,.events-empty,.no-results),.app .empty-state{
  border-radius:20px
}
.main-content .cards-grid{
  gap:18px;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),420px))
}
.app .event-list{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));
  gap:18px
}
.app .event-card{
  color:var(--text-primary);
  text-decoration:none
}
.app .event-card__banner{
  height:185px
}
.app .event-card__content{
  display:flex;
  flex-direction:column;
  flex:1
}
.app .event-card__info{
  padding:22px
}
.app .event-card__title{
  font-size:1.28rem;
  line-height:1.18
}
.app .event-card__eyebrow{
  color:var(--accent);
  font-size:.75rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.035em
}
.app .event-card__meta{
  margin-top:12px;
  gap:8px 18px
}
.app .event-card__footer{
  padding:16px 22px
}
.app .event-card__footer-label{
  color:var(--text-secondary);
  font-size:.76rem
}
.app .event-badge{
  top:14px;
  left:14px;
  padding:7px 12px;
  border-radius:999px
}
.app .modality-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));
  gap:16px
}
.app .modality-card{
  color:var(--text-primary);
  text-decoration:none
}
.app .modality-card__thumb{
  aspect-ratio:16/10
}
.app .modality-card__name{
  padding:18px;
  font-size:1rem
}
.app .modality-card__icon{
  border-radius:18px
}
.app .search-field{
  min-height:48px;
  padding:7px 16px;
  border:1px solid var(--glass-line);
  border-radius:999px;
  background:var(--glass-fill);
  color:var(--text-secondary);
  -webkit-backdrop-filter:blur(16px);
  backdrop-filter:blur(16px)
}
.app .search-field:focus-within{
  outline:2px solid var(--accent);
  outline-offset:2px
}
.app .search-field input{
  min-width:0
}
.app .toolbar{
  gap:10px;
  margin-bottom:12px
}
.school-filter-button{
  min-height:48px;
  padding:0 17px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  border:1px solid var(--glass-line);
  border-radius:999px;
  background:var(--glass-fill);
  color:var(--text-primary);
  font-weight:700;
  cursor:pointer;
  white-space:nowrap;
  -webkit-backdrop-filter:blur(16px);
  backdrop-filter:blur(16px)
}
.school-filter-button i{
  color:var(--accent)
}
.school-filter-button.is-active{
  border-color:var(--accent);
  background:color-mix(in srgb,var(--accent) 15%,var(--glass-fill))
}
.event-date-strip{
  display:flex;
  align-items:stretch;
  gap:8px;
  overflow-x:auto;
  scrollbar-width:thin;
  margin:0 0 14px;
  padding:4px 2px 10px
}
.date-chip{
  flex:none;
  min-width:78px;
  min-height:58px;
  padding:8px 14px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  border:1px solid var(--glass-line);
  border-radius:17px;
  background:var(--glass-fill);
  color:var(--text-primary);
  cursor:pointer;
  transition:background .18s ease,transform .18s ease
}
.date-chip:first-child{
  min-width:110px
}
.date-chip small{
  color:var(--text-secondary);
  font-size:.68rem;
  text-transform:uppercase
}
.date-chip strong{
  font-size:.82rem
}
.date-chip:hover{
  transform:translateY(-2px)
}
.date-chip.is-active{
  background:var(--accent);
  border-color:var(--accent);
  color:#fff
}
.date-chip.is-active small{
  color:#fff
}
.app .filter-chips{
  margin-bottom:20px
}
.app .chip{
  padding:9px 16px;
  background:var(--glass-fill);
  border-color:var(--glass-line);
  color:var(--text-primary)
}
.app .chip.is-active{
  background:var(--accent);
  border-color:var(--accent);
  color:#fff
}
.school-filter-dialog{
  width:min(440px,calc(100% - 24px));
  max-height:calc(100dvh - 40px);
  padding:22px;
  border:1px solid var(--glass-line);
  border-radius:24px;
  background:var(--glass-raised);
  color:var(--text-primary);
  box-shadow:0 30px 80px rgba(0,0,0,.35);
  -webkit-backdrop-filter:blur(25px);
  backdrop-filter:blur(25px)
}
.school-filter-dialog::backdrop{
  background:rgba(0,0,0,.58);
  -webkit-backdrop-filter:blur(3px);
  backdrop-filter:blur(3px)
}
.school-filter-dialog__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px
}
.school-filter-dialog h2{
  margin:0;
  font-size:1.3rem
}
.school-filter-dialog p{
  margin:6px 0 18px;
  color:var(--text-secondary);
  font-size:.82rem
}
.school-filter-options{
  display:grid;
  gap:8px;
  max-height:55dvh;
  overflow:auto
}
.school-filter-options label{
  min-height:47px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:9px 13px;
  border:1px solid var(--glass-line);
  border-radius:14px;
  background:var(--glass-fill);
  cursor:pointer
}
.school-filter-options input{
  accent-color:var(--accent)
}
.modality-search{
  max-width:480px;
  margin-bottom:18px
}
.app .bottom-nav,.bottom-nav{
  border-radius:999px;
  background:var(--glass-raised);
  border:1px solid var(--glass-line);
  box-shadow:var(--glass-shadow);
  -webkit-backdrop-filter:blur(20px);
  backdrop-filter:blur(20px)
}
.main-content .home-school-filter select{
  border-radius:14px;
  background:var(--glass-raised)
}
.main-content .event-card__actions{
  padding:0 18px 18px
}
.main-content .event-card__badge{
  border-radius:999px
}
.admin-event-controls{
  margin:0 0 30px
}
.admin-event-search{
  width:min(100%,560px);
  min-height:48px;
  margin-bottom:14px;
  padding:7px 16px;
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid var(--glass-line);
  border-radius:999px;
  background:var(--glass-fill);
  color:var(--brand-muted);
  -webkit-backdrop-filter:blur(16px);
  backdrop-filter:blur(16px)
}
.admin-event-search i{
  color:var(--accent)
}
.admin-event-search input{
  width:100%;
  min-width:0;
  border:0!important;
  outline:0;
  background:transparent!important;
  color:var(--brand-text)
}
.admin-event-search:focus-within{
  outline:2px solid var(--accent);
  outline-offset:2px
}
.main-content .event-card[hidden],.admin-filter-empty[hidden]{
  display:none!important
}
.admin-filter-empty{
  padding:20px;
  border:1px dashed var(--glass-line);
  border-radius:18px;
  color:var(--brand-muted)
}
@media(max-width:700px){
  .app .toolbar{
    align-items:stretch
  }
  .school-filter-button{
    font-size:0;
    min-width:48px;
    padding:0 12px
  }
  .school-filter-button i{
    font-size:1rem
  }
  .app .event-list{
    grid-template-columns:1fr
  }
  .main-content .cards-grid{
    grid-template-columns:1fr
  }
  .app .modality-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px
  }
}
@media(prefers-reduced-motion:reduce){
  .main-content .event-card,.app .event-card,.date-chip{
    transition:none
  }
}
:root[data-reduce-motion=true] .main-content .event-card,:root[data-reduce-motion=true] .app .event-card,:root[data-reduce-motion=true] .date-chip{
  transition:none
}
