.overviewhead{display:flex;justify-content:space-between;align-items:start;gap:24px;margin:16px 0 24px}.overviewhead .brand{text-decoration:none;display:block;margin-bottom:20px}.overviewhead .eyebrow{margin-bottom:5px}.headbuttons{display:flex;gap:8px;flex-wrap:wrap;padding-top:12px}.overviewfilters{margin-top:18px}.filtertop{display:grid;grid-template-columns:2fr 1fr .7fr;gap:14px}.filtertop label,.sortlabel{font-size:13px;font-weight:650}.filtertop input,.filtertop select{display:block;width:100%;margin-top:6px}.filterbottom{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:18px}.phasefilters{display:flex;gap:4px;flex-wrap:wrap}.phasefilters button{border-color:transparent;font-size:14px;padding:8px 12px}.phasefilters button.active{background:var(--green);color:white}.actioncheck{display:flex;align-items:center;gap:8px;font-size:13px}.resultshead{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:24px 0 14px}.sortlabel{display:flex;align-items:center;gap:8px}.sortlabel select{font-size:13px;padding:8px}.weekcards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.weekcard{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:15px;min-width:0}.weekcard h3{font-size:23px;letter-spacing:-.5px;margin:5px 0}.weekcard .weekperiod{font-size:16px;font-weight:600}.weekdates{font-size:13px;color:var(--muted);margin-top:3px}.weektop{display:flex;align-items:center;justify-content:space-between;gap:8px}.phasebadge{font-size:12px;padding:4px 8px;background:#f0f1eb;border-radius:7px;color:var(--muted)}.phasebadge.current{color:var(--green);background:#e2f2e7}.phasebadge.upcoming{color:#315b8b;background:#e5eefb}.camplist{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:5px}.camplist li{font-size:14px;padding-left:12px;position:relative}.camplist li:before{content:'•';position:absolute;left:0;color:#749b80}.weeknumbers{display:flex;gap:20px;font-size:13px;color:var(--muted);padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.weeknumbers strong{font-size:20px;color:var(--ink);margin-right:4px}.weekactions{display:flex;flex-wrap:wrap;gap:8px}.weekactions a{text-decoration:none;font-size:12px;padding:7px 9px;background:#fff5e7;color:#8b510d;border:1px solid #ecd8b9;border-radius:8px}.weekactions .quiet{color:var(--muted);font-size:13px}.weekmeta{font-size:12px;color:var(--muted);line-height:1.7}.weekmeta strong{font-weight:650;color:var(--ink)}.weeklinks{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:auto}.weeklinks a{color:var(--green);font-size:13px;font-weight:650;text-decoration:none;border-radius:9px;padding:9px 12px;border:1px solid var(--line)}.weeklinks a.primary{background:var(--green);color:white;border-color:var(--green)}.weeklinks a:hover{filter:brightness(.97)}.weeklinks button{margin-left:auto;font-size:12px;padding:7px 8px}.overviewhelp{margin-top:25px;font-size:13px;color:var(--muted)}.overviewhelp p{margin-top:12px;max-width:850px}.overviewfooter{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:22px 0;font-size:12px;color:var(--muted)}.loginhint{margin-top:20px}.emptyoverview{grid-column:1/-1;background:white;border:1px dashed #bdcbbf;border-radius:16px;text-align:center;padding:40px}.emptyoverview p{color:var(--muted);margin-top:10px}.stats .stat small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.findform{display:flex;gap:8px;margin:16px 0}.findform input{min-width:0;flex:1}.findresult{padding:15px 0;border-top:1px solid var(--line)}.findresult a{color:var(--green);font-weight:650}.findresult p{font-size:13px;color:var(--muted)}#dialogerror{color:var(--red);font-size:14px}#admindialog .flex{margin-top:20px}.datefilterstatus{color:var(--green)}
@media(max-width:900px){.weekcards{grid-template-columns:1fr}.overviewhead{flex-direction:column;gap:10px}.overviewhead .brand{margin-bottom:12px}.headbuttons{padding-top:0}.filtertop{grid-template-columns:2fr 1fr}.filtertop label:first-child{grid-column:1/-1}.filterbottom{gap:12px}.resultshead{align-items:start}.sortlabel{flex-direction:column;align-items:start;gap:4px}.overviewfooter{align-items:start;flex-direction:column}.stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.overviewfilters{padding:15px}.phasefilters button{font-size:12px;padding:8px}.filtertop{grid-template-columns:1fr 1fr}.weekcard{padding:18px}.weeklinks button{margin-left:0}.resultshead{flex-direction:column}.sortlabel{flex-direction:row;align-items:center}.overviewhead h1{font-size:29px}.findform{flex-direction:column}}

.viewchoice{display:flex;gap:5px;margin:0 0 15px}.viewchoice button.active{background:var(--green);color:white}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin:24px 0;font-size:13px}.overviewtable{grid-column:1/-1;background:white;border:1px solid var(--line);border-radius:15px;padding:6px}.overviewtable table{white-space:normal;min-width:780px}.overviewtable td{vertical-align:top;max-width:240px;line-height:1.6}.overviewtable td:first-child{min-width:210px}.overviewtable a{color:var(--green);font-weight:650}.overviewtable .phasebadge{white-space:nowrap}

.discoverypanel h2{font-size:18px;margin-bottom:8px}.discoverypanel p{font-size:14px;margin:8px 0}.discoverypanel details{margin-top:12px}.discoverypanel summary{cursor:pointer;font-size:14px;font-weight:650}.discoverypanel a{color:var(--green)}.discoverypanel .data{padding:12px 0;border-top:1px solid var(--line)}

#teamlink{width:100%;font-size:13px}#copyteamlink{margin-top:8px}.accessstatus{font-weight:650;color:var(--green)}#teamexpires,#teampassword{display:block;width:100%;margin:7px 0}#revoketeam{color:var(--red);margin-top:12px}

.backuppanel h2{font-size:20px;margin-bottom:10px}.backuppanel p{margin:10px 0;font-size:14px}.backuppanel details{margin-top:14px}.backuppanel summary{cursor:pointer;font-size:14px;font-weight:650}.backuppanel .backupstate{font-weight:650}.backuppanel .backupgood{color:var(--green)}.backuppanel .tablewrap{margin-top:12px}.backuppanel .tablewrap table{min-width:600px}

.campoccupancy{display:flex;gap:5px 14px;flex-wrap:wrap;align-items:baseline;justify-content:space-between}.campname{flex:1 1 220px;overflow-wrap:anywhere}.occupancy{display:flex;gap:9px;flex-wrap:wrap;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.occupancy>span{white-space:nowrap}.occupancy strong{color:var(--ink);font-weight:650}.occupancyhint{margin-top:-9px;font-size:11px;color:var(--muted)}.overviewtable .campoccupancy+.campoccupancy{margin-top:12px}.overviewtable .occupancy{gap:7px}.backupdetails>summary .backupstate{font-size:12px;font-weight:500}.backupstate.good{color:var(--green)}.backupstate.warning{background:transparent;color:#98510a}.backupbody{padding-top:6px}@media(max-width:480px){.campname{flex-basis:100%}}

.discoverystate{font-size:12px;font-weight:500}.discoverystate.good{color:var(--green)}.discoverystate.warning{background:transparent;color:#98510a}.discoverybody{padding-top:12px}#discoveryalert{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}#discoveryalert.hidden{display:none}

@media(max-width:1024px){.headbuttons button,.viewchoice button,.phasefilters button,.weeklinks button,.overviewfooter button{min-height:44px;min-width:44px}.filtertop label{min-width:0}.filtertop select,.sortlabel select{min-height:44px;font-size:16px;max-width:100%}.sortlabel{min-width:0;max-width:100%}.actioncheck{min-height:44px}.weeknumbers{flex-wrap:wrap;gap:10px 20px}.weeklinks a,.weekactions a,.overviewtable a,.findresult a{min-height:44px;display:inline-flex;align-items:center}.overviewhelp summary,.backupdetails>summary,.discoverydetails>summary{min-height:44px}.overviewhead,.weekcard,.findresult,.discoverybody,.backupbody{overflow-wrap:anywhere}.overviewtable .small{min-height:44px}.sortlabel select{min-width:0;flex:1}}

/* Shared closed-row dimensions for the three administration disclosures. */
.overviewhelp,.discoverypanel,.backuppanel{padding:12px 16px}
.discoverypanel>.discoverydetails,.backuppanel>.backupdetails{margin:0}
.overviewhelp>summary,.discoverydetails>summary,.backupdetails>summary{display:grid;grid-template-columns:14px minmax(0,1fr) auto;align-items:center;column-gap:10px;min-height:44px;font-size:13px;font-weight:650;color:var(--ink);cursor:pointer;list-style:none}
.overviewhelp>summary::-webkit-details-marker,.discoverydetails>summary::-webkit-details-marker,.backupdetails>summary::-webkit-details-marker{display:none}
.overviewhelp>summary:before,.discoverydetails>summary:before,.backupdetails>summary:before{content:'▸';margin:0}
.overviewhelp[open]>summary:before,.discoverydetails[open]>summary:before,.backupdetails[open]>summary:before{content:'▾'}
.overviewhelp>summary>span,.discoverydetails>summary>span,.backupdetails>summary>span{min-width:0;overflow-wrap:anywhere}
@media(max-width:600px){
.overviewhelp>summary,.discoverydetails>summary,.backupdetails>summary{grid-template-columns:14px minmax(0,1fr);grid-template-rows:22px minmax(24px,auto);row-gap:4px;min-height:50px}
.overviewhelp>summary:before,.discoverydetails>summary:before,.backupdetails>summary:before{grid-column:1;grid-row:1}
.overviewhelp>summary>span:first-child,.discoverydetails>summary>span:first-child,.backupdetails>summary>span:first-child{grid-column:2;grid-row:1}
.discoverystate,.backupdetails>summary .backupstate{grid-column:2;grid-row:2;margin:0}
}

.archiveentry{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.archiveentry h3{font-size:15px}.archivepreview{min-width:680px;table-layout:fixed}.archivepreview td{overflow-wrap:anywhere}.archivecamp+.archivecamp{margin-top:8px}
