/* Sportech visual layer. Existing maintenance controls remain unchanged. */
.sportech-header{background:#fff;box-shadow:0 3px 14px #00000014;position:relative;z-index:2}
.sportech-header-inner{max-width:1840px;margin:auto;min-height:96px;padding:8px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.sportech-header nav{padding:0;border:0;justify-content:flex-start;gap:0;background:transparent}
.sportech-header nav a{font-size:16px;padding:12px 10px;border-radius:0;color:#626262}
.sportech-header nav a span{display:none}
.sportech-header nav a.active,.sportech-header nav a[aria-current=page]{color:#deaa00;background:transparent;box-shadow:inset 0 -1px #d7dfe8}
.sportech-header nav a:hover{background:#edf8fb;color:#237a96}
.sportech-account{display:flex;align-items:center;gap:16px;flex-shrink:0;direction:ltr}
.sportech-brand img{width:78px;height:78px;object-fit:contain;display:block}
.sportech-account .user{direction:rtl;flex-direction:column;gap:2px;font-size:13px}
.sportech-account .button{font-size:12px;min-height:30px;padding:3px 9px}
body[data-page="school_maintenance_website"]{background:#f8f9fa url('schoollogo.jpg') center 120px/630px no-repeat;background-blend-mode:screen}
body[data-page="school_maintenance_website"] main{max-width:none;padding:0;position:relative}
.sportech-stage{max-width:1545px;margin:0 auto 36px;padding:0 7% 64px;background:#7fb9cb;position:relative;isolation:isolate}
.sportech-stage:before{content:'';position:absolute;inset:0;background:url('schoollogo.jpg') center/760px no-repeat;opacity:.055;z-index:-1}
.sportech-banner{min-height:690px;display:grid;grid-template-columns:44% 56%;background:#fff;box-shadow:3px 5px 8px #315c7059;border-radius:0 0 10px 0;overflow:hidden;position:relative;isolation:isolate}
.sportech-banner:before{content:'';position:absolute;inset:0;background:url('schoollogo.jpg') 35% 62%/650px no-repeat;opacity:.07;z-index:-1}
.sportech-art{position:relative;display:flex;align-items:center;justify-content:center;background:linear-gradient(120deg,#b9edf2d9,#a3e2efd9);border-left:2px solid #83c0d2;min-width:0;padding:38px;isolation:isolate}
.sportech-art>img{width:90%;max-width:350px;height:auto;border-radius:50%;mix-blend-mode:multiply;position:relative;z-index:1}
.gear{position:absolute;color:#ffffffb5;line-height:1;font-family:'Segoe UI Symbol',sans-serif;font-weight:normal;pointer-events:none}
.gear-one{font-size:260px;top:35px;left:-90px;color:#f7fcfd;filter:drop-shadow(1px 2px 2px #4d94ac)}
.gear-two{font-size:210px;bottom:20px;left:-75px;color:#f9fcfd;filter:drop-shadow(1px 2px 2px #4d94ac)}
.gear-three{font-size:250px;right:-125px;top:-80px;opacity:.5}
.circuit-lines{position:absolute;inset:40px 24px;border-top:3px dashed #ffffffa1;border-bottom:3px dashed #ffffffa1;transform:skewY(-3deg);pointer-events:none}
.sportech-copy{position:relative;padding:30px 46px 56px;display:flex;flex-direction:column;min-width:0}
.sportech-logos{display:flex;justify-content:center;align-items:center;gap:58px;direction:rtl}
.sportech-logos img{width:132px;height:132px;object-fit:contain;mix-blend-mode:multiply}
.sportech-greeting{margin:auto 0;text-align:center;padding:62px 0 40px}
.sportech-greeting p{font-family:"Segoe UI", Tahoma, Arial, sans-serif;font-size:clamp(32px,3.1vw,53px);font-weight:700;color:#f3ad71;line-height:1.9;margin:0 0 20px}
.sportech-greeting h1{font-family:"Segoe UI", Tahoma, Arial, sans-serif;font-size:clamp(32px,3vw,51px);font-weight:700;color:#79b8cb;line-height:1.8;margin:0}
.home-content{max-width:1264px;margin:auto;padding:0 28px 40px}
@media(min-width:1500px){.sportech-stage{padding-right:7%;padding-left:7%}.sportech-banner{min-height:690px}}
@media(max-width:1200px){.sportech-header-inner{flex-wrap:wrap;gap:8px;padding:8px 20px}.sportech-header nav{flex:1}.sportech-header nav a{font-size:14px}.sportech-stage{padding:0 35px 40px}.sportech-copy{padding:28px}.sportech-logos{gap:25px}.sportech-logos img{width:105px;height:105px}.sportech-banner{min-height:580px}}
@media(max-width:700px){.sportech-header-inner{padding:8px 14px}.sportech-account{width:100%;justify-content:space-between;order:-1}.sportech-brand img{width:60px;height:60px}.sportech-account .user{flex-direction:row;gap:10px}.sportech-header nav{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;width:100%;flex-basis:100%}.sportech-header nav a{white-space:nowrap;padding:10px;font-size:14px}.sportech-stage{padding:0 16px 26px;margin-bottom:24px}.sportech-banner{display:flex;flex-direction:column}.sportech-copy{order:0;padding:24px 20px}.sportech-art{order:1;min-height:240px;padding:20px;border-left:0;border-top:1px solid #83c0d2}.sportech-art>img{width:190px}.sportech-logos img{width:85px;height:85px}.sportech-greeting{padding:40px 0}.sportech-greeting p{font-size:29px;margin-bottom:12px}.sportech-greeting h1{font-size:31px}.gear-one{font-size:170px;left:-35px;top:10px}.gear-two{display:none}.home-content{padding:0 16px 30px}}
@media print{.sportech-stage{display:none}.home-content{padding:0}}

/* Shared phone and tablet layouts. */
@media screen and (max-width:900px) {
 .sportech-header-inner { flex-wrap:wrap!important; gap:12px; }
 .sportech-header-inner > nav { flex:0 0 100%!important; width:100%; order:2!important; overflow-x:auto; flex-wrap:nowrap; -webkit-overflow-scrolling:touch; }
 .sportech-header nav a { flex-shrink:0; min-height:44px; }
 main, main > *, .grid > *, .request-grid > *, .report-summary > * { min-width:0; }
 .table-scroll { max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
 dialog { width:calc(100% - 24px)!important; max-width:720px!important; max-height:calc(100dvh - 32px); overflow-y:auto; box-sizing:border-box; }
}
@media screen and (max-width:600px) {
 main { padding:20px 12px 32px!important; }
 .sportech-header-inner { padding:10px 12px; }
 .sportech-header-inner > .sportech-account { flex:1; min-width:0; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
 .signed-in-user { white-space:normal!important; overflow-wrap:anywhere; }
 .sportech-brand img { width:54px; height:54px; }
 .sportech-account .logout-button { min-height:44px; }
 .grid.two,.grid.three,.grid.four,.facilities-grid,.about-values,.request-grid,.report-summary,.report-filter-fields,.schedule-filter-fields,.maintenance-statistics-page .metrics { grid-template-columns:minmax(0,1fr)!important; gap:16px!important; }
 .filters,.report-search,.report-export,.report-results-heading,.schedule-top { flex-direction:column!important; align-items:stretch!important; gap:14px!important; }
 .filters > *, .report-search > * { width:100%; min-width:0!important; }
 .page-heading { align-items:flex-start!important; gap:12px!important; }
 .page-heading > div,.facilities-header-text { min-width:0; }
 .page-heading h2,.facilities-title { font-size:32px!important; overflow-wrap:break-word; }
 .panel,.request-body,.request-card-heading,.report-filter-heading,.report-filter-fields,.schedule-filter-heading,.schedule-filter-fields,.report-export,.report-results-heading { padding:18px!important; }
 .buttons { display:flex; flex-wrap:wrap; gap:10px; }
 .buttons > button,.buttons > a,.export-actions > button { width:100%; min-height:48px; text-align:center; }
 input,select,textarea { max-width:100%; min-width:0; font-size: max(16px,1em); }
 input:not([type=checkbox]):not([type=radio]),select,button { min-height:44px; }
 .about-intro { grid-template-columns:1fr!important; padding:20px!important; }
 .sportech-stage { padding:0 12px 24px!important; }
 .sportech-banner { min-height:0!important; }
 .sportech-copy { padding:24px 16px!important; }
 .sportech-greeting p,.sportech-greeting h1 { font-size:34px!important; line-height:1.6!important; }
 .sportech-logos { gap:24px; }
 .sportech-logos img { width:80px; height:80px; }
 footer.school-copyright { padding:22px 12px; }
}