/* FTK Junior demo v6.3: read first, edit on demand. */
main{max-width:1260px;margin-inline:auto;padding-inline:28px}
header{max-width:1260px}
.team-form,.generation-form,.activity-form,.v6-form,.v6-contact-settings,
.v6-join,.v6-invite,.v6-create{max-width:950px}
body[data-view="feedback"] #content form.trip.compact{width:100%;max-width:none;padding:22px 24px;margin-inline:0}
body[data-view="feedback"] #content form.trip.compact>label{display:block;margin:0 0 14px}
body[data-view="feedback"] #content form.trip.compact>label>input,
body[data-view="feedback"] #content form.trip.compact>label>select,
body[data-view="feedback"] #content form.trip.compact>label>textarea{margin:5px 0 0}
body[data-view="feedback"] #content form.trip.compact>p.small{margin:0 0 14px}
body:not([data-view="teams"]):not([data-view="rides"]) #practical-section{display:none!important}
#connection{display:none}
body:not([data-view="rides"]) #past-section{display:none!important}
.nav-desktop .logout-button,.nav-mobile .logout-button{background:transparent;color:var(--muted);border:1px solid var(--line)}
.nav-desktop .logout-button:hover,.nav-mobile .logout-button:hover{background:#edf2e8;color:var(--ink)}
.message-badge{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;margin-left:5px;padding:0 5px;border-radius:12px;background:#e2edaa;color:#294737;font-size:11px;font-weight:800}
.family-row .family-team{margin:4px 0;padding-left:10px;border-left:2px solid #d9e4d6;font-size:14px}
.v64-week-summary{display:grid;grid-template-columns:195px minmax(0,1fr) 145px;align-items:center;gap:10px;padding:8px 12px}
.v64-week-date{font-weight:700;white-space:nowrap}
.v64-week-children{display:grid;gap:4px;min-width:0}
.v64-week-child{display:grid;grid-template-columns:85px 130px minmax(0,1fr);align-items:start;gap:8px;min-width:0}
.v64-week-name{min-width:0!important;white-space:normal!important}
.v64-week-attendance{color:#365b46;white-space:nowrap}
.v64-week-transport{color:var(--muted);min-width:0;overflow-wrap:anywhere}
.v64-week-transport>span{display:block}
.v64-week-summary>.week-need,.v64-week-summary>.week-done{justify-self:end;text-align:right;margin:0}
.nav-button[aria-current="page"]{background:var(--green);color:#fff}
.planning-tab[aria-pressed="false"]{background:#fff;color:var(--ink);border-color:var(--line)}
.v63-segments{display:flex;flex-wrap:wrap;gap:4px;margin:5px 0 9px}
.v63-segment{display:inline-flex!important;min-width:0!important;margin:0!important;cursor:pointer}
.v63-segment input{position:absolute;opacity:0;width:1px;height:1px}
.v63-segment span{display:block;border:1px solid var(--line);background:#fff;border-radius:8px;padding:7px 10px;font-size:13px;font-weight:650;white-space:nowrap}
.v63-segment input:checked+span{background:#315942;color:white;border-color:#315942}
.v63-segment input:focus-visible+span{outline:3px solid #b7c970;outline-offset:2px}
.v63-segment input:disabled+span{opacity:.5;cursor:default}
.v63-transport-editor{padding:10px 2px 3px}
.v63-transport-editor strong,.v63-directions strong{display:block;font-size:13px;margin:3px 0}
.v63-transport-editor>button{min-height:40px;padding:7px 12px}
.v63-attendance-row{display:grid;grid-template-columns:minmax(230px,1fr) auto auto;align-items:center;gap:8px 14px;padding:8px 0;border-bottom:1px solid var(--line)}
.v63-attendance-row h3{margin:0;font-size:14px}
.v63-attendance-top{display:flex;align-items:baseline;gap:12px;min-width:0}
.v63-attendance-state{white-space:nowrap;color:#365b46;font-size:13px;font-weight:700}
.v63-attendance-row .attendance-buttons{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}
.v63-attendance-row .attendance-buttons button{min-height:40px}
.v63-attendance-row .attendance-buttons [aria-pressed="true"],
.v63-plan-editor .attendance-buttons [aria-pressed="true"]{background:#315942;color:#fff}
.v63-attendance-row .transport-choice{grid-column:1/-1;margin:0;max-width:870px}
.v63-attendance-row .activity-change{grid-column:1/-1}
.v63-matrix-scroll{overflow-x:auto;margin-top:11px;border:1px solid var(--line);border-radius:10px;background:#fff}
.v63-attendance-matrix{width:100%;border-collapse:collapse;font-size:13px;min-width:570px}
.v63-attendance-matrix th,.v63-attendance-matrix td{text-align:left;padding:9px 11px;border-bottom:1px solid var(--line);vertical-align:middle}
.v63-attendance-matrix tr:first-child{background:#edf2e8}
.v63-attendance-matrix tr:last-child>*{border-bottom:0}
.v63-attendance-matrix th:first-child{min-width:170px;white-space:nowrap}
.v63-attendance-matrix td .text-button{margin-left:8px}
.v63-expanded-row td{background:#fbfcf8}
.v63-plan-editor{max-width:850px;padding:9px 4px}
.v63-plan-editor>strong{display:block;margin-bottom:5px}
.v63-plan-editor .attendance-buttons{display:flex;gap:5px;flex-wrap:wrap}
.v63-plan-editor .attendance-buttons button{min-height:40px}
.v63-plan-editor .v63-transport-editor{margin-top:9px;border-top:1px solid var(--line)}
.plan-summary{align-items:start;min-height:47px}
@media(min-width:651px){.plan-head,.plan-summary{grid-template-columns:170px 145px minmax(0,1fr)}}
.plan-rides{display:block;line-height:1.45;overflow-wrap:anywhere}
.plan-rides>span{display:block}
.plan-rides>span+span:before{content:none}
.plan-rides .plan-item:first-child{font-weight:600}
.v63-legend{font-size:11px;color:var(--muted);margin:6px 2px 12px}
.v63-gap-filter{margin:0 0 5px}
.v63-planning-panel{padding:13px 16px;margin-bottom:10px}
.v63-planning-panel>h3{margin:0 0 4px;font-size:17px}
.v63-planning-panel>p.small{margin:0 0 8px}
.v63-availability{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;margin-top:10px}
.v63-availability-row{display:grid;grid-template-columns:minmax(180px,1.4fr) 105px minmax(240px,1.4fr) 70px;align-items:center;gap:10px;padding:7px 10px;border-bottom:1px solid var(--line)}
.v63-availability-row:last-child{border-bottom:0}
.v63-availability-head{background:#edf2e8;font-size:12px}
.v63-availability-row .availability-date{font-size:13px}
.v63-drive-check{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:650;margin:0}
.v63-drive-check input{width:auto;margin:0}
.v63-availability-row .v63-segments{margin:0;gap:2px}
.v63-availability-row .v63-segment span{font-size:11px;padding:5px 7px}
.v63-seats{width:65px;min-width:0;padding:6px;font-size:14px}
.v63-availability-row.saving{opacity:.65}
.v63-proposal-dates{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:4px;max-height:250px;overflow:auto;border:1px solid var(--line);border-radius:8px;padding:8px;margin:8px 0}
.v63-date-choice,.v63-proposal-select{display:flex;align-items:center;gap:6px;font-size:12px;margin:0}
.v63-date-choice input,.v63-proposal-select input{width:auto;margin:0}
.v63-proposal-card{border:1px solid var(--line);border-radius:9px;background:#fff;padding:8px 10px;margin:6px 0;font-size:13px}
.v63-proposal-card p{margin:4px 0}
.v63-proposal-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.v63-proposal-actions{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}
.v63-proposal-actions button{min-height:40px;padding:7px 12px}
@media(max-width:900px){
 main{padding-inline:18px}
 .v64-week-summary{grid-template-columns:160px minmax(0,1fr) 130px}
 .v64-week-child{grid-template-columns:70px 125px minmax(0,1fr)}
 .v63-attendance-row{grid-template-columns:1fr}
 .v63-attendance-row .attendance-buttons{justify-content:flex-start}
 .v63-attendance-top{justify-content:space-between}
}
@media(max-width:650px){
 main{padding-inline:13px}
 .v64-week-summary{display:block;padding:9px 10px}
 .v64-week-date{display:block;margin-bottom:4px}
 .v64-week-child{grid-template-columns:70px minmax(0,1fr);gap:2px 6px}
 .v64-week-transport{grid-column:1/-1;display:block;margin:2px 0}
 .v64-week-summary>.week-need,.v64-week-summary>.week-done{display:block;text-align:left;margin-top:3px}
 body[data-view="feedback"] #content form.trip.compact{padding:16px}
 .v63-attendance-row{gap:6px}
 .v63-attendance-top{display:block}
 .v63-attendance-state{display:block}
 .v63-attendance-row .attendance-buttons button{flex:1;white-space:nowrap}
 .plan-summary{grid-template-columns:1fr auto}
 .v63-availability-head{display:none}
 .v63-availability-row{grid-template-columns:1fr auto;gap:6px;padding:9px}
 .v63-availability-row .availability-date{grid-column:1/-1}
 .v63-availability-row .v63-segments{grid-column:1/-1;grid-row:3}
 .v63-availability-row .v63-segment span{font-size:12px;padding:7px 8px}
 .v63-seats{grid-column:2;grid-row:2}
 .v63-proposal-actions button{width:100%}
}
