/* v25 — calendar-first, quiet layout, usable forms on narrow screens. */
#view-calendar .week-page-head{margin-bottom:10px;max-width:none}
#view-calendar .week-page-head h1{margin:0 0 2px;font-size:clamp(26px,3.6vw,40px)}
#view-calendar .week-page-head>p{margin:2px 0 9px;font-size:12px}
#view-calendar .cal-top{padding:15px 17px;margin-bottom:12px}
#view-calendar .cal-toolbar{gap:12px}
#view-calendar .cal-toolbar h2{font-size:clamp(16px,2vw,22px);margin:0}
#view-calendar .cal-toolbar .eyebrow{font-size:10px}
#view-calendar #calBlockInfo:empty{display:none}
#view-calendar .week-main-actions{align-items:center;margin-top:10px}
#view-calendar .week-add-btn,#view-calendar .v25-log-action{min-height:39px;padding:8px 13px;font-size:12px}
#view-calendar .week-more-actions summary{min-height:39px;font-size:12px;padding:8px 12px}
#view-calendar .week-calendar-heading{margin:8px 2px 9px}
#view-calendar .week-calendar-heading h2{margin:0;font-size:18px}
#view-calendar .week-calendar-heading p{margin:2px 0 0}
#view-calendar .v25-calendar-intro{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;padding:0 2px}
#view-calendar .v25-week-status{font-size:12px;color:#c2d7e1;font-weight:700}
#view-calendar .v25-calendar-legend{display:flex;gap:12px;color:#a7c2cf;font-size:11px}
#view-calendar .v25-calendar-legend span:last-child{color:#c5e9a2}
#view-calendar .cal-grid{margin-bottom:0}
#view-calendar .v24-week-tap-hint{margin:7px 2px 16px;font-size:11px}
#view-calendar .week-overview-expandable{margin-top:8px}
#view-calendar .v25-week-overview-content{padding:14px 15px 16px;min-width:0}
#view-calendar .v25-week-overview-content .cal-stats{margin:0 0 13px}
#view-calendar .v25-week-overview-content .week-essentials{margin:0 0 13px}
#view-calendar .v25-week-overview-content .v24-coach{margin:10px 0 0}
#view-calendar .week-overview-expandable>summary{min-height:61px;padding:13px 15px}
#view-calendar .v25-actual-list{display:grid;gap:7px;padding-top:8px}
#view-calendar .v25-actual-heading{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#b8e89f;font-weight:800}
#view-calendar button.v25-actual-session{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 9px;width:100%;min-width:0;position:relative;align-items:start;cursor:pointer;text-align:left;padding:10px 28px 9px 10px;color:#effaf8;background:#173e43;border:1px solid rgba(160,220,186,.36);border-radius:9px}
#view-calendar button.v25-actual-session:hover{background:#20504e;border-color:#badea2}
#view-calendar button.v25-actual-session:focus-visible{outline:3px solid #ccf185;outline-offset:2px}
#view-calendar .v25-actual-session strong{grid-column:1/-1;white-space:normal;overflow-wrap:anywhere;font-size:12px;line-height:1.4}
#view-calendar .v25-actual-session small{grid-column:1/-1;color:#c1d5de;font-size:11px;line-height:1.4}
#view-calendar .v25-actual-open{position:absolute;top:8px;right:9px;font-size:17px;color:#c5eaa2}
#view-calendar .v25-actual-session .cal-actual{padding:0}
#view-calendar .cal-day{min-width:0}
#view-calendar .cal-actual{overflow-wrap:anywhere}
#view-calendar .week-calendar-heading .week-calendar-hint{max-width:190px}
/* Activity logger: consistent width and legible, finger-friendly controls. */
#dialogBackdrop:has(#logForm) .dialog{width:min(680px,100%);max-width:100%;min-width:0}
#logForm,#logForm .formgrid,#logForm .field{min-width:0;max-width:100%;width:100%}
#logForm .formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
#logForm .field{margin-bottom:11px;gap:5px;display:flex;flex-direction:column}
#logForm .field label{display:block;max-width:100%;white-space:normal;overflow-wrap:break-word;line-height:1.4;font-size:12px}
#logForm .field :is(input,select,textarea){display:block;box-sizing:border-box;max-width:100%;width:100%;min-width:0;min-height:43px;padding:10px 11px;border-radius:10px;line-height:1.35;font-size:15px}
#logForm .field input[type="date"]{-webkit-appearance:auto;appearance:auto}
#logForm .field input[type="number"]{font-variant-numeric:tabular-nums}
#logForm .field input[type="file"]{height:auto;max-width:100%;font-size:12px;padding:8px}
#logForm .field textarea{min-height:99px;resize:vertical}
#logForm .field .hint{margin:1px 0;font-size:11px;line-height:1.5;overflow-wrap:anywhere}
#logForm .dialog-footer{gap:9px;justify-content:flex-end;align-items:stretch}
#dialogBackdrop:has(#logForm){overflow-y:auto}
@media(max-width:780px){
 #view-calendar .week-page-head{margin-bottom:8px}
 #view-calendar .v25-calendar-legend{display:none}
 #view-calendar .week-overview-expandable>summary small{font-size:10px}
 #dialogBackdrop:has(#logForm){padding:10px}
 #dialogBackdrop:has(#logForm) .dialog{max-height:calc(100dvh - 20px);padding:17px 15px;border-radius:15px}
}
@media(max-width:540px){
 #view-calendar .cal-top{padding:13px}
 #view-calendar .week-main-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 #view-calendar .week-more-actions{grid-column:1/-1}
 #view-calendar .week-more-actions summary{width:100%;min-height:34px}
 #view-calendar .v25-log-action,#view-calendar .week-add-btn{width:100%;min-width:0;font-size:12px;padding:8px 7px}
 #view-calendar .cal-toolbar .cal-actions{margin-top:5px}
 #view-calendar .v25-week-overview-content{padding:10px}
 #logForm .formgrid{grid-template-columns:minmax(0,1fr);gap:0}
 #logForm .field :is(input,select,textarea){font-size:16px}
 #logForm .dialog-footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 #logForm .dialog-footer button{min-height:43px;padding:9px 10px}
 #logForm .dialog-footer button[type="submit"]{grid-column:1/-1;grid-row:1}
}
