:root{--green:#80bd54;--bg:#101917;--panel:#182522;--text:#f5f8f2;--muted:#a6b9ad}*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif}.tv-body{background:var(--bg);color:var(--text);min-height:100vh;overflow:hidden}.tv-shell{width:100vw;height:100vh;min-height:600px;display:flex;flex-direction:column;padding:2.1vw 3.1vw 1.6vw;background:radial-gradient(circle at 8% 40%,#253b2b 0%,transparent 36%),#101917}.tv-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:1.7vw;border-bottom:1px solid #3a4d42}.brand{display:flex;align-items:center;gap:1vw}.mark{width:4.4vw;height:4.4vw;color:var(--green);display:grid;place-items:center}.mark svg{width:100%}.brand-name{font-size:2.5vw;font-weight:900;letter-spacing:-.07em;line-height:1}.brand-subtitle{font-size:1.02vw;letter-spacing:.45em;margin-top:.4vw;color:var(--green);font-weight:700}.header-right{text-align:right}.today-date{font-size:1.13vw;color:#c9d8c9;text-transform:uppercase;letter-spacing:.13em}.clock{font-size:2.8vw;font-weight:700;letter-spacing:-.06em;margin-top:.2vw}.tv-main{flex:1;min-height:0;display:grid;grid-template-columns:1.05fr 1.05fr .85fr;grid-template-rows:1fr 1fr;gap:1.45vw;padding:1.65vw 0}.feature{grid-row:1/3;display:flex;flex-direction:column;justify-content:center;padding:2.5vw 1.1vw 2.5vw 0}.eyebrow,.kicker{font-size:.9vw;letter-spacing:.18em;color:var(--green);font-weight:800}.eyebrow{display:flex;align-items:center;gap:.6vw}.dot,.footer-led{width:.55vw;height:.55vw;background:var(--green);border-radius:50%;box-shadow:0 0 12px #80bd5490}.feature h1{font-size:clamp(36px,4.2vw,95px);line-height:1.04;letter-spacing:-.07em;font-weight:900;margin:1.5vw 0 1vw}.feature h1 em{font-style:normal;color:var(--green)}.feature p{font-size:1.25vw;line-height:1.5;color:var(--muted);max-width:28vw}.feature-bottom{display:flex;gap:.5vw;margin-top:2vw;flex-wrap:wrap}.feature-chip{border:1px solid #4a684a;border-radius:100px;color:#c7e4b9;padding:.65vw .85vw;font-size:.76vw;letter-spacing:.1em;font-weight:800}.card{min-height:0;background:linear-gradient(140deg,#1c2d27,#18231f);border:1px solid #365044;border-radius:1.3vw;padding:1.45vw 1.55vw;overflow:hidden;display:flex;flex-direction:column}.schedule{grid-row:1/3}.events{grid-column:3;grid-row:1}.announcements{grid-column:3;grid-row:2}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:.5vw;padding-bottom:1vw;border-bottom:1px solid #365044}.section-heading h2{font-size:1.75vw;letter-spacing:-.04em;margin:.37vw 0 0}.live-pill{background:#2a4b35;color:#b8e3a5;font-size:.6vw;letter-spacing:.1em;font-weight:800;padding:.45vw .6vw;border-radius:40px;white-space:nowrap}.schedule-list,.event-list{flex:1;min-height:0;overflow:hidden}.schedule-item{display:grid;grid-template-columns:5.2vw 1fr;gap:.8vw;padding:1.2vw 0;border-bottom:1px solid #2e4138;align-items:center}.schedule-item:last-child,.event-item:last-child{border-bottom:0}.time{font-size:1.06vw;font-weight:800;color:var(--green)}.schedule-title{font-size:1.12vw;font-weight:800;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.schedule-meta{font-size:.85vw;color:var(--muted);margin-top:.4vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-item{display:flex;gap:.9vw;align-items:center;padding:1vw 0;border-bottom:1px solid #2e4138}.event-date{flex:none;display:flex;flex-direction:column;justify-content:center;align-items:center;width:3.4vw;height:3.4vw;border:1px solid #4e7546;border-radius:.6vw;color:var(--green);background:#24412c}.event-date b{font-size:1.27vw}.event-date span{font-size:.66vw;font-weight:800}.event-details{min-width:0}.event-title{font-weight:800;font-size:1vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-meta{font-size:.8vw;color:var(--muted);margin-top:.35vw}.event-icon{font-size:1.8vw;color:var(--green)}.announcements h3{font-size:1.4vw;line-height:1.2;margin:1.2vw 0 .6vw}.announcements p{font-size:1.04vw;line-height:1.55;color:#d0dccf;margin:0}.announcement-dots{display:flex;gap:.4vw;margin-top:auto;padding-top:1vw}.announcement-dots span{width:.45vw;height:.45vw;background:#506452;border-radius:20px}.announcement-dots span.active{background:var(--green);width:1.2vw}.empty{padding:2vw 0;color:#a5b6aa;font-size:1vw;line-height:1.5}.card-footer{font-size:.75vw;color:#91a694;padding-top:.8vw;border-top:1px solid #365044}.tv-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #3a4d42;padding-top:1vw;font-size:.78vw;letter-spacing:.06em;font-weight:700;color:#b7c6ba;gap:1vw}.footer-left{display:flex;align-items:center;gap:.6vw}.separator{color:var(--green)}.footer-right span{color:var(--green);padding:0 .5vw}.music-panel{display:flex;align-items:center;gap:.5vw}.music-panel[hidden]{display:none}.music-icon{font-size:1.6vw;color:var(--green)}.music-panel strong,.music-panel small{display:block;font-size:.7vw}.music-panel small{color:var(--muted);margin-top:.12vw}@media(max-aspect-ratio:1/1){.tv-body{overflow:auto}.tv-shell{height:auto;min-height:100vh}.tv-main{display:block}.card,.feature{margin-bottom:20px;padding:24px}.feature h1{font-size:40px}.feature p,.section-heading h2{font-size:20px}.eyebrow,.kicker,.schedule-title,.schedule-meta,.time,.event-title,.event-meta,.announcements h3,.announcements p,.empty{font-size:15px}.schedule-item{grid-template-columns:85px 1fr;padding:14px 0}.event-item{padding:15px 0}.event-date{width:55px;height:55px}.event-date b{font-size:20px}.event-date span{font-size:12px}.tv-footer{flex-wrap:wrap}}
.admin-body{background:#edf1ec;color:#17231c;min-height:100vh;padding:30px 15px}.admin-panel{max-width:760px;margin:auto;background:white;padding:35px;border-radius:16px;box-shadow:0 6px 40px #2233221a}.admin-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.admin-top h1{font-size:28px;margin:0}.admin-panel h2{border-top:1px solid #e2e9e0;padding-top:24px;margin-top:30px}.admin-panel p{line-height:1.5;color:#516356}.admin-panel a{color:#346d2c}.admin-panel label{display:block;font-weight:700;margin:16px 0 8px;font-size:14px}.admin-panel input:not([type=checkbox]),.admin-panel textarea{width:100%;border:1px solid #c5d0c2;border-radius:7px;padding:12px;margin-top:7px;font:inherit;background:#fff}.admin-panel input[type=color]{height:48px;padding:5px}.admin-panel .check{display:flex;align-items:center;gap:10px}.admin-panel button{background:#377c39;border:0;border-radius:7px;padding:12px 22px;color:white;font-weight:700;font-size:15px;cursor:pointer;margin-top:12px}.admin-panel button.secondary{background:#e8eee6;color:#23402a}.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.announcement-edit{padding:8px 18px;margin:10px 0;background:#f5f8f4;border-radius:9px}.notice{padding:12px;border-radius:7px}.notice.error{background:#ffe8e8;color:#8c1d1d}.notice.success{background:#e5f6e6;color:#205929}@media(max-width:550px){.two{grid-template-columns:1fr}.admin-panel{padding:20px}.admin-top{display:block}}
