.family-tool {color:#1f1f1f;background:#f8f7f4;border:1px solid #c9c8c3;padding:clamp(1rem,3.5vw,2.5rem);margin:1.5rem 0 2.5rem;min-width:0;text-align:left;}
.family-tool [hidden]{display:none!important}
.family-tool h2,.family-tool h3,.family-tool p{margin:0 0 .7rem;line-height:1.4}
.family-tool h2{font-size:clamp(1.6rem,4vw,2.7rem);line-height:1.08;letter-spacing:-.035em}
.family-tool h3{font-size:1.22rem;letter-spacing:-.018em}
.family-tool p{font-size:1rem;max-width:76ch}
.family-tool .ft-bar{border-bottom:2px solid currentColor;margin-bottom:1.25rem;padding-bottom:.65rem}
.ft-label{display:block;font-size:.75rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.5rem}
.ft-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));gap:1rem;align-items:end;margin:1.25rem 0}
.ft-filters label{display:flex;flex-direction:column;gap:.35rem;font-size:.92rem;font-weight:650}
.ft-filters label.ft-wide{grid-column:1/-1}
.family-tool input:not([type=checkbox]),.family-tool select{border:1px solid #777;border-radius:.25rem;background:#fff;color:#1f1f1f;min-width:0;width:100%;font:inherit;font-weight:450;padding:.65rem;line-height:1.3;min-height:44px;box-sizing:border-box}
.family-tool button{width:fit-content;font:inherit;font-weight:650;color:#fff;background:#1f1f1f;border:1px solid #1f1f1f;padding:.6rem 1rem;border-radius:2rem;min-height:44px;cursor:pointer}
.family-tool button.ft-secondary{background:#fff;color:#1f1f1f}
.family-tool button.ft-secondary:hover{background:#a5d5c8}
.family-tool :is(a,input,select,button):focus-visible{outline:3px solid #8a3b00;outline-offset:3px}
.family-tool .ft-inline,.ft-compare-control,.ft-checklist label{display:flex;align-items:center;gap:.65rem;flex-direction:row;min-height:44px}
.family-tool input[type=checkbox]{accent-color:#1f1f1f;width:1.15rem;height:1.15rem;flex:0 0 auto}
.ft-results{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr))}
.ft-result{border-left:5px solid #a5d5c8;background:#fff;padding:1rem 1.25rem}
.ft-result:nth-child(3n+2){border-color:#f29596}.ft-result:nth-child(3n){border-color:#ed7d09}
.ft-result a,.ft-comparison a{color:#1f1f1f;text-decoration:underline;text-underline-offset:3px}
.family-tool .ft-meta,.family-tool .ft-note,.family-tool .ft-status{font-size:.9rem}
.ft-note{margin-top:.7rem!important}
.ft-comparison{margin-top:1rem}
.ft-overflow{max-width:100%;overflow-x:auto}
.ft-overflow table{border-collapse:collapse;font-size:.95rem;margin:0 0 .75rem;width:100%}
.ft-overflow th,.ft-overflow td{padding:.55rem;text-align:left;border:1px solid #b3b0a9;vertical-align:top;background:#fff;min-width:8rem}
.ft-overflow th{background:#e3eee9}
.ft-week{display:grid;gap:0;border-top:2px solid #1f1f1f}
.ft-day{display:grid;grid-template-columns:minmax(6.5rem,24%) 1fr;gap:.7rem;padding:.65rem 0;border-bottom:1px solid #cac9c4}
.family-tool .ft-day h3,.family-tool .ft-day p,.family-tool .ft-day ul{margin:0}
.ft-day ul{padding:0;list-style:none}
.ft-day li{display:flex;gap:.5rem;align-items:baseline;justify-content:space-between}
.ft-day li span{overflow-wrap:anywhere}
.ft-day .ft-link{border:0;background:transparent;color:#233d34;text-decoration:underline;font-size:.85rem;padding:.4rem}
.ft-checklist{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:.8rem}
.ft-checklist fieldset{min-width:0;background:#fff;border:1px solid #bbb;padding:.5rem .8rem}
.ft-checklist legend{font-weight:750;background:#a5d5c8;padding:.2rem .55rem}
.ft-checklist input:checked+span{text-decoration:line-through;color:#555}
.ft-material-output{border-left:5px solid #a5d5c8;background:#fff;padding:1rem}
.ft-material-output ul{margin:0;padding-left:1.35rem}
@media print{
    body:has([data-planner], [data-camping]) :is(header,footer,nav,aside,.reading-body,.prose,.collection-section,.related-section,.breadcrumbs){display:none!important}
    body:has([data-planner], [data-camping]) .family-tool{border:0;background:white;color:black;margin:0;padding:0}
    .family-tool .ft-filters,.family-tool button,.family-tool .ft-note{display:none!important}
    .ft-checklist fieldset,.ft-day{break-inside:avoid}
}
