.child-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}
.child-info{flex:1;min-width:0}.activation-count{display:block;font-size:11px;line-height:1.4;margin-top:3px;overflow-wrap:anywhere}
header{flex-wrap:wrap}header .brand{margin-right:auto}.help-button{margin-left:0}
.help-button{flex-shrink:0;min-height:44px}header{gap:10px}.help-dialog{max-height:85dvh;overflow-y:auto;padding:22px}.help-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;top:-22px;background:white;padding:10px 0;z-index:1}.help-heading h2{margin:0}.help-dialog button{margin-top:0}.help-audience{display:flex;gap:8px;margin:15px 0}.help-audience button{flex:1;padding:10px;font-size:14px}.help-audience [aria-pressed=true]{background:var(--ink);color:white}.help-dialog details p{margin:12px 0}.help-dialog summary{min-height:36px}.help-dialog .notice{font-size:14px}.help-dialog .meta{margin-top:18px}
@media(max-width:360px){header .brand{font-size:13px;gap:7px}header .brand b{width:32px;height:32px}.help-dialog{padding:18px}.help-heading{top:-18px}}
/* Native date/time controls must not impose their intrinsic width on mobile. */
input[type="date"],input[type="time"]{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;-webkit-appearance:none;appearance:none}
input[type="date"]::-webkit-date-and-time-value,input[type="time"]::-webkit-date-and-time-value{min-width:0;text-align:left}
input[type="date"]::-webkit-datetime-edit,input[type="time"]::-webkit-datetime-edit{min-width:0;padding:0}
.admin-settings,.admin-settings form,.admin-settings .card,.two>div{min-width:0}
.admin-top{margin:8px 0 18px}.admin-top h1{font-size:clamp(1.5rem,4vw,2.2rem);overflow-wrap:anywhere;margin:6px 0 8px}.admin-top p{font-size:14px;margin:0}
.admin-shell{max-width:800px;margin:auto}.admin-nav{position:sticky;top:0;z-index:5;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:8px 0;background:var(--paper);margin-bottom:12px}.admin-nav button{padding:10px 4px;min-height:48px;font-size:14px;border-radius:10px}.admin-nav [aria-current=page]{background:var(--ink);color:white;border-color:var(--ink)}
.admin-content h2{margin-bottom:10px}.admin-content .card{box-shadow:none}.admin-schedule .date{max-width:none}.admin-schedule .share-schedule{width:100%;margin-top:18px;gap:10px}.share-schedule svg{width:21px;height:21px}.response-count{display:block;padding:14px 0}.setup-note{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.setup-note span{font-size:14px}.date-overview{display:flex;flex-direction:column;align-items:flex-start;text-align:left;width:100%;gap:4px;margin-top:8px}.date-overview span{font-size:13px;font-weight:400;color:var(--muted)}
.admin-settings{max-width:650px;margin:auto}.admin-settings .actions{margin-top:0}.children-panel .row{margin-bottom:12px}.admin-content p{overflow-wrap:anywhere}
@media(max-width:420px){.admin-nav button{font-size:12px}.admin-content .card{padding:16px}.admin-top .eyebrow{font-size:12px}.admin-top{margin-top:0}.admin-schedule .spacer{margin-top:16px}.admin-content .tag{font-size:12px}}
.ride-summary{padding:22px 24px;border-radius:18px;background:#e2f3ef;border:2px solid #087c74;margin:0 0 20px}
.ride-summary.ride-due{background:#fff2cd;border-color:#e3aa22}
.ride-summary .eyebrow{color:var(--ink);font-size:15px;margin-bottom:9px}
.ride-summary h2{font-size:clamp(1.6rem,4vw,2.2rem);line-height:1.15;margin-bottom:14px}
.ride-summary p{margin-bottom:9px}.ride-summary small{display:block;font-size:12px}.ride-note{font-size:15px}
.family-top h1{font-size:1.6rem}.family-top{margin:18px 0}
.child-name{flex:1;min-width:0;overflow-wrap:anywhere;color:var(--ink);font-weight:700;text-decoration:none}
.child-name:hover{text-decoration:underline}
.child-actions{display:flex;gap:4px;flex-shrink:0}
.icon-action{flex-direction:column;gap:3px;min-width:48px;min-height:48px;padding:7px 6px;border-color:transparent;font-size:11px;border-radius:10px}
.icon-action svg{width:21px;height:21px;pointer-events:none}
.icon-action span{pointer-events:none}
@media(max-width:420px){.child-row{gap:6px}.child-actions{gap:1px}.icon-action{padding:7px 3px;font-size:10px;min-width:44px}.child-name{font-size:14px}}
