/* Phone layout: a compact club shell, thumb navigation and readable room cards. */
.phone-nav{display:none}.tournament-section{padding-top:16px}.tournament-section>.empty{margin-top:24px}
@media(min-width:851px){#mobile-list{display:none}}
@media(max-width:850px), (max-width:1100px) and (pointer:coarse){
 html{scroll-padding-top:88px}body{padding-bottom:calc(84px + env(safe-area-inset-bottom));font-size:16px}
 body>header{position:sticky;top:0;z-index:20;min-height:76px;height:auto;padding:10px max(18px,env(safe-area-inset-left));flex-wrap:nowrap;gap:12px;background:#090a09f5;backdrop-filter:blur(12px)}
 body>header nav,body>header .header-cta{display:none}body>header .brand-logo{width:52px;height:52px}body>header .brand{font-size:22px;gap:10px;flex-shrink:0}body>header .brand small{font-size:8px;letter-spacing:2px}body>header>.btn{font-size:12px;padding:10px;min-height:44px}body>header .buttons{gap:7px;flex-wrap:wrap;justify-content:end}body>header .buttons .btn{font-size:12px;padding:9px}
 .phone-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;position:fixed;inset:auto 0 0;z-index:40;background:#10110ff5;backdrop-filter:blur(16px);border-top:1px solid #b28b4659;padding:7px max(7px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(7px,env(safe-area-inset-left));box-shadow:0 -8px 25px #0005}
 .phone-nav a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;min-height:56px;padding:5px 2px;font-size:11px;letter-spacing:.1px;color:#c0b9a9;border:0;border-radius:5px}.phone-nav svg{width:23px;height:23px}.phone-nav a.active{color:#f0cf88;background:#b68e451c;border:0}.phone-nav a:focus-visible{outline-offset:-3px}
 main{min-height:65vh}h1,.page-top h1,.desk h1,.member-desk h1{font-size:clamp(40px,10vw,62px);line-height:1.04;letter-spacing:0;margin:16px 0 20px}h2,.section-head h2{font-size:32px;line-height:1.12;overflow-wrap:anywhere}h3{line-height:1.3}.eyebrow{font-size:10px;letter-spacing:1.7px}.eyebrow:before{width:18px}
 .hero{display:flex;flex-direction:column;padding:24px 20px 32px;min-height:0;gap:0}.hero:before{inset:10px}.hero>.logo-art{order:-1;min-height:0;margin:0 0 16px;transform:none;padding:0}.hero .hero-logo{width:150px;height:150px;max-width:100%;margin:0}.crest-heading,.crest-caption{display:none}.hero h1{font-size:54px;margin-top:18px}.intro{font-size:16px;line-height:1.7;max-width:none}.hero .buttons{display:grid;grid-template-columns:1fr;margin-top:22px;gap:10px}.hero-foot{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px;font-size:10px}.hero-foot span{margin:0}
 .btn,.filter,.month-btn{min-height:48px;font-size:14px;padding:12px 16px;touch-action:manipulation}.buttons{flex-wrap:wrap;gap:10px}.filter{padding:10px 13px}.text-link{font-size:14px;min-height:44px;display:inline-flex;align-items:center;white-space:normal}
 .ticker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:18px 20px;gap:16px;font-size:12px}.ticker .ticker-title{grid-column:1/-1;text-align:left}.ticker b{display:block;font-size:22px;margin:0 0 5px}.ticker>a{min-height:44px;display:flex;align-items:center}
 .section,.page-top,.desk{padding:28px 18px}.page-top p{font-size:16px;line-height:1.65}.section-head{align-items:start;flex-wrap:wrap;gap:12px;margin-bottom:18px}.section-head>.btn{width:100%;justify-content:center}.demo{font-size:13px;padding:12px;gap:3px;align-items:start;flex-direction:column;margin-bottom:18px}.demo strong{font-size:10px;letter-spacing:1.2px}.note,.hint,.refresh-note{font-size:13px;line-height:1.65}.empty{padding:28px 18px;font-size:15px;line-height:1.7}.empty .btn{margin-top:16px}.empty-caption{font-size:15px;line-height:1.7}
 .stats{grid-template-columns:repeat(2,minmax(0,1fr));margin:0 18px}.stat{padding:17px 12px;border-bottom:1px solid var(--line)}.stat:nth-child(2n){border-right:0}.stat:nth-last-child(-n+2){border-bottom:0}.stat small{font-size:12px}.flap-display{font-size:min(30px,calc((100cqw - 12px) / var(--digits)))}.flap-compact{font-size:23px}.big-number{margin-bottom:10px}
 .table-wrap{overflow:visible;border:0;background:none}.live-table,.live-table tbody{display:block;width:100%;white-space:normal}.live-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .live-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;background:linear-gradient(125deg,#1b1b17,#11120f);border:1px solid #51452f;margin-bottom:16px;box-shadow:0 3px 12px #0004}.live-table td,.live-table tr:last-child td{padding:15px;border:0;font-size:15px;min-width:0;overflow-wrap:anywhere}.live-table .game-title{grid-column:1/-1;border-bottom:1px solid #51452f55}.live-table .game-title strong{font-family:var(--serif);font-size:25px;line-height:1.2}.live-table td strong{font-size:16px}.live-table td small{font-size:12px;line-height:1.5;margin-top:7px}.live-table td[data-label]:before{content:attr(data-label);display:block;font:10px var(--terminal);letter-spacing:1.4px;text-transform:uppercase;color:#c9b78e;margin-bottom:10px}.live-table .status{font-size:12px;display:inline-block;line-height:1.5;white-space:normal}.seat-dots{gap:4px}.seat-dots span{width:10px;height:5px}
 .toolbar{gap:14px;margin-bottom:18px}.filters{gap:8px}.month-nav{gap:8px;width:100%;justify-content:space-between}.month-nav h2{font-size:26px;min-width:0}.month-btn{min-width:48px}.calendar,.view-toggle{display:none}#mobile-list{display:grid}.event-row{display:grid;grid-template-columns:48px minmax(0,1fr);padding:18px 14px;gap:12px;align-items:start}.event-row h3{font-size:18px;line-height:1.35}.event-row p{font-size:14px;line-height:1.6}.event-row .btn{grid-column:2;width:100%;margin:0;font-size:14px;padding:12px}.event-date{min-width:0;font-size:12px}.event-date b{font-size:34px}
 .promo-grid{grid-template-columns:1fr}.promo{padding:24px;min-height:0}.promo h3{font-size:32px}.promo p{font-size:15px;line-height:1.7}.tag{font-size:11px}.callout{margin:8px 18px 30px;flex-direction:column;align-items:stretch}.callout h2{font-size:33px}.callout p{font-size:15px}.callout .btn{justify-content:center}
 footer{padding:25px 18px;gap:20px;flex-wrap:wrap}footer .brand{display:none}footer>span{font-size:12px}footer>a{min-height:44px;display:flex;align-items:center}footer #install-help{font-size:14px}
 dialog{position:fixed;inset:auto 0 0;margin:0;width:100%;max-width:none;max-height:90dvh;overflow:auto;padding:32px 22px calc(24px + env(safe-area-inset-bottom));border-radius:16px 16px 0 0;border-bottom:0}dialog h2{font-size:34px;padding-right:22px}dialog p{font-size:15px}dialog .close{min-width:48px;min-height:48px;right:5px;top:5px}dialog>.btn,dialog #event-detail>.btn{width:100%;margin-top:12px;justify-content:center}dialog .buttons{display:grid;grid-template-columns:1fr 1fr}dialog::backdrop{background:#000c}
 .desk{max-width:100%}.desk>p{line-height:1.65}.login-box{padding:22px 18px;max-width:100%;width:100%}.login-box h2{font-size:29px}.login-box label,label{font-size:14px;line-height:1.4}input,select,textarea{font-size:16px;min-height:48px;padding:12px;max-width:100%}input[type=checkbox]{min-height:24px;width:24px;height:24px}.check{min-height:48px}.record{padding:18px 16px;display:flex;flex-direction:column;align-items:stretch;gap:15px}.record .body{min-width:0;flex-basis:auto}.record h3{font-size:20px;overflow-wrap:anywhere}.record p{font-size:14px;overflow-wrap:anywhere}.record .btn{min-height:48px;font-size:14px;justify-content:center}.record .status{font-size:12px}.quick button{min-width:48px;min-height:48px}.quick-group+.quick-group{margin-left:0}.quick small{font-size:12px}.member-events,.member-install{margin-top:32px}#edit-form{grid-template-columns:1fr}#edit-form label{min-width:0}.member-desk .toolbar .buttons{width:100%}.member-desk .toolbar .buttons>.btn{flex:1;justify-content:center}#roster-event{width:100%}#tabs{width:100%}
}
@media(max-width:850px), (max-width:1100px) and (pointer:coarse){
 .hero .intro{font-size:16px;line-height:1.7;max-width:none}.hero .btn{font-size:14px;min-height:48px;padding:14px 16px;gap:14px}.hero .eyebrow{font-size:10px;line-height:1.6;letter-spacing:1.2px}
}
