/* Shared studio typography and interactions. Font is served with the site. */
@font-face{font-family:Manrope;src:url('/vendor/fonts/manrope-variable.woff') format('woff');font-style:normal;font-weight:200 800;font-display:swap}
:root{--studio-font:Manrope,system-ui,-apple-system,'Segoe UI',sans-serif;--studio-ease:cubic-bezier(.2,.7,.2,1)}
body{font-family:var(--studio-font);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}
button,input,select,textarea,.button{font-family:var(--studio-font)}
h1,h2,h3{font-family:var(--studio-font);line-height:1.25;letter-spacing:-.035em}
body>header .brand{font-family:var(--studio-font);font-size:22px;font-weight:750;letter-spacing:-.6px;gap:11px}
body>header .mark{font-family:var(--studio-font);font-size:14px;font-weight:750;letter-spacing:1px;border-radius:11px;padding:8px 9px;transition:border-color .2s,box-shadow .2s,background-color .2s}
body>header nav{gap:8px}
body>header nav>a,body>header .manage-button,body>header .session-control{font-family:var(--studio-font);font-size:13px;font-weight:650;letter-spacing:0;line-height:20px;min-height:38px;padding:9px 12px;border-radius:10px;position:relative;transition:background-color .2s,color .2s,box-shadow .2s,transform .2s var(--studio-ease)}
body>header nav>a.button{border-radius:10px}
body>header nav>a::after{content:'';position:absolute;left:12px;right:12px;bottom:4px;height:2px;background:#e6c47f;border-radius:4px;transform:scaleX(0);transform-origin:left;transition:transform .22s var(--studio-ease)}
body>header nav>a.home-active{border:0;color:#f6dca2!important;background:#ffffff0a!important}
body>header nav>a.home-active::after{transform:scaleX(1)}
body>header .manage-button{background:linear-gradient(135deg,#f0d49b,#dfbd79);color:#173e3f;box-shadow:0 2px 8px #001b1b25}
body>header .session-control{border:1px solid #ffffff24;background:#ffffff06;color:#f2f6f4;padding:8px 12px}
body .hero h2#tagline{font-family:var(--studio-font);font-style:normal;font-weight:600;font-size:32px;letter-spacing:-1px;line-height:1.25}
#dailySpotlight h2{font-family:var(--studio-font);font-weight:750;font-size:27px;letter-spacing:-.8px}
#dailySpotlight>.section-head p{font-family:var(--studio-font);font-size:13px;line-height:1.6;color:#68807d}
.award-label,.performer-name h3,.performer-name small,.performer-name .avatar,.performer-value,.performer-card>p,.performer-detail,.performer-detail b,.daily-stat small,.daily-stat strong,.report-date{font-family:var(--studio-font)}
.award-label{font-size:11px;font-weight:750;letter-spacing:.7px}
.performer-name h3{font-size:15px;font-weight:750;letter-spacing:-.3px;line-height:1.4}
.performer-name small{font-size:11px;font-weight:500;letter-spacing:0}
.performer-name .avatar{font-size:17px;letter-spacing:-.4px}
.performer-value{font-size:38px;font-weight:800;letter-spacing:-1.6px;font-variant-numeric:tabular-nums;line-height:1.12}
.performer-card>p,.performer-detail{font-size:11px;letter-spacing:0}
.performer-detail b{font-size:14px;font-weight:750}
.daily-stat small{font-size:11px;font-weight:600;letter-spacing:0}
.daily-stat strong{font-size:23px;font-weight:800;letter-spacing:-.7px;font-variant-numeric:tabular-nums}
.report-date{font-size:11px;font-weight:650;letter-spacing:0}
.performer-card,.daily-stat,.card{transition:transform .24s var(--studio-ease),box-shadow .24s var(--studio-ease),border-color .24s,background-color .24s}
.performer-card{box-shadow:0 4px 18px #173e3f08;border-radius:16px}
.daily-stat{border-radius:13px}
button,.button{transition:transform .2s var(--studio-ease),box-shadow .2s,background-color .2s,color .2s}
input,select,textarea{transition:border-color .2s,box-shadow .2s}
input:focus,select:focus,textarea:focus{border-color:#098679;box-shadow:0 0 0 3px #09867918;outline:0}
a:focus-visible,button:focus-visible{outline:2px solid #c29b52;outline-offset:4px}
.mobile-nav a{font-family:var(--studio-font);font-weight:650}
.mobile-nav a svg{transition:transform .2s var(--studio-ease)}
.mobile-nav a:active svg{transform:scale(.9)}
.excel-preview,.monthly-sheet table{font-family:var(--studio-font)}
@media(hover:hover) and (pointer:fine){
 body>header .brand:hover .mark{border-color:#f4d795;background:#244d49;box-shadow:0 0 0 4px #e6c47f0d}
 body>header nav>a:hover{background:#ffffff0c!important;color:#f8deaa!important}
 body>header nav>a:hover::after{transform:scaleX(1)}
 button:not(:disabled):hover,.button:hover{transform:translateY(-2px);box-shadow:0 5px 14px #087d7324}
 body>header .manage-button:hover{box-shadow:0 5px 18px #e6c47f35;background:linear-gradient(135deg,#f8e2b4,#e9c987)}
 body>header .session-control:hover{background:#ffffff10;box-shadow:0 4px 14px #001b1b20}
 .performer-card:not(.loading-card):hover{transform:translateY(-4px);border-color:#c6a664;box-shadow:0 12px 28px #173e3f15,0 0 0 1px #c6a66418}
 .performer-card.sheet:not(.loading-card):hover{border-color:#159b8b;box-shadow:0 12px 28px #087d731c,0 0 0 1px #159b8b18}
 .daily-stat:not(.loading-card):hover,.card:hover{transform:translateY(-3px);border-color:#99c1b5;box-shadow:0 9px 24px #173e3f10}
 .photo img{transition:transform .35s var(--studio-ease)}
 .photo:hover img{transform:scale(1.025)}
 .mobile-nav a:hover svg{transform:translateY(-2px)}
}
button:not(:disabled):active,.button:active{transform:scale(.97);box-shadow:none}
@media(min-width:801px) and (max-width:1100px){body>header .brand{font-size:20px}body>header nav{gap:4px}body>header nav>a,body>header .manage-button,body>header .session-control{font-size:12px;padding-inline:10px}}
@media(max-width:800px){
 body>header .brand{font-size:17px;gap:8px;letter-spacing:-.4px}
 body>header .mark{font-size:12px;padding:7px 8px}
 body>header nav{gap:6px}
 body>header .manage-button,body>header .session-control{font-size:11px;min-height:34px;padding:7px 9px;border-radius:9px}
 body .hero h2#tagline{font-size:25px;letter-spacing:-.6px}
 #dailySpotlight h2{font-size:23px;letter-spacing:-.6px}
 #dailySpotlight>.section-head p{font-size:11px;line-height:1.5}
 .award-label{font-size:9px;letter-spacing:.5px}
 .performer-name h3{font-size:12px;line-height:1.4}
 .performer-name small{font-size:10px}
 .performer-value{font-size:32px;letter-spacing:-1.2px}
 .performer-card>p{font-size:10px}.performer-detail{font-size:9px}.performer-detail b{font-size:12px}
 .daily-stat small{font-size:10px}.daily-stat strong{font-size:21px}
 .performer-card{border-radius:15px}
}
@media(max-width:350px){.performer-value{font-size:27px}.performer-name h3{font-size:11px}.daily-stat strong{font-size:19px}#dailySpotlight h2{font-size:20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important}button:hover,.button:hover,.performer-card:hover,.daily-stat:hover,.card:hover,.photo:hover img{transform:none!important}}
@media print{.performer-card,.daily-stat,.card{box-shadow:none;transform:none}}
