/* Horse Travel — private authenticated checklist, print-safe */
.ht-shell{max-width:1120px;margin:0 auto;padding:24px clamp(14px,3vw,32px) 60px;color:var(--text,#2b332f)}
.ht-kicker{font-size:12px;font-weight:800;letter-spacing:.14em;color:#756048;margin-bottom:8px}
.ht-shell h1{font-size:clamp(28px,4vw,44px);line-height:1.15;margin:0 0 12px}
.ht-sub{max-width:730px;opacity:.83;margin-bottom:24px}
.ht-grid{background:var(--surface,#fffdf9);border:1px solid #d7d0c5;border-radius:18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:20px}
.ht-grid label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:650}
.ht-grid select,.ht-grid input[type=date]{font:inherit;max-width:100%;min-width:0;padding:11px 9px;border:1px solid #bfb7ab;border-radius:8px;color:#27342f;background:#fff}
.ht-grid .ht-festival{display:flex;flex-direction:row;align-items:center;gap:10px;line-height:1.4}
.ht-festival input{width:18px;height:18px;flex-shrink:0}
.ht-progress{margin:20px 0;font-size:14px}
.ht-progress strong{font-size:20px}
.ht-alert{padding:16px 18px;background:#fff5df;color:#553b18;border-left:4px solid #b68842;border-radius:7px;line-height:1.55}
.ht-shell h2{font-size:23px;margin:26px 0 14px}
.ht-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.ht-task{background:#fffdf9;border:1px solid #dad4ca;border-radius:12px;padding:16px;color:#30352e}
.ht-task>label{display:flex;gap:12px;align-items:flex-start;cursor:pointer;line-height:1.5;font-size:15px}
.ht-task input[type=checkbox]{height:20px;width:20px;flex-shrink:0;margin:2px 0 0}
.ht-task em{display:inline-block;font:600 11px/1.3 inherit;font-style:normal;padding:3px 8px;margin:3px 0 0 9px;border-radius:6px;background:#f6e2bd;color:#6a4013}
.ht-sources{margin:10px 0 0 32px;display:flex;flex-wrap:wrap;gap:8px 15px}
.ht-sources a,.ht-details a{font-size:12px;color:#245c63;text-decoration:underline;text-underline-offset:2px}
.ht-buttons{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}
.ht-buttons button{border:1px solid #a99c8a;border-radius:9px;background:#fffdf9;color:#2d332e;padding:10px 16px;cursor:pointer}
.ht-buttons button:first-child{background:#29483c;color:#fff}
.ht-details{border-top:1px solid #c9c2b5;border-bottom:1px solid #c9c2b5;padding:15px 0}
.ht-details summary{cursor:pointer;font-weight:700}
.ht-details li{margin:8px 0}
.ht-note{font-size:12px;opacity:.74;line-height:1.6;margin-top:24px}
@media(max-width:680px){.ht-grid{grid-template-columns:1fr 1fr}.ht-grid label:first-child,.ht-festival{grid-column:1/-1}.ht-shell{padding:20px 13px 40px}}
@media(max-width:400px){.ht-grid{grid-template-columns:1fr}.ht-grid label{grid-column:1/-1}}
@media print{.ht-shell{max-width:none;color:#000;padding:0}.ht-grid{border:1px solid #999}.ht-buttons,.ht-note,.ht-details{display:none}.ht-task{break-inside:avoid;border-color:#aaa}.ht-alert{background:none;color:#000;border-color:#777}.ht-sources a{color:#000}}
