/* Pack for a trip: the form, the live list and its print layout. */
.pk-page{max-width:1180px;margin:0 auto;padding:28px max(16px,env(safe-area-inset-left,0px)) 48px}
.pk-grid{display:grid;grid-template-columns:minmax(0,440px) minmax(0,1fr);gap:40px;align-items:start;margin-top:28px}
.pk-form{display:flex;flex-direction:column;gap:32px;min-width:0}
.pk-form fieldset{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;min-width:0;scroll-margin-top:90px}
.pk-form legend{padding:0;margin-bottom:12px}
.pk-step{display:block;font:700 13px/1 var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--garden);margin-bottom:4px}
.pk-h{display:block;font:500 24px/1.2 var(--display);color:var(--hyssop)}
.pk-help{font-size:15px;line-height:1.5;margin:0}
.pk-tiny{font-size:13px;line-height:1.5;margin:0}
.pk-form label,.pk-label{font-weight:700;font-size:15px}
.pk-field{display:flex;flex-direction:column;gap:6px}
.pk-form input[type=text],.pk-form input[type=number],.pk-form textarea,.pk-form select{
  width:100%;min-height:48px;padding:0 12px;border:1px solid var(--hyssop);border-radius:8px;background:#fff;color:var(--ink);font:400 16px var(--body)}
.pk-form textarea{padding:10px 12px;line-height:1.5;resize:vertical}
.pk-form input[type=checkbox],.pk-form input[type=radio]{width:22px;height:22px;accent-color:var(--hyssop);margin:0;flex-shrink:0}

.pk-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px;background:#fff;border:1px solid var(--line);border-radius:12px}
.pk-stepper{display:flex;align-items:center;gap:8px}
.pk-stepper button{width:44px;height:44px;border:1px solid var(--hyssop);border-radius:999px;background:#fff;color:var(--hyssop);font:400 22px/1 var(--body);cursor:pointer}
.pk-form .pk-stepper input{width:64px;text-align:center;font:500 22px var(--display);color:var(--hyssop);padding:0 4px}

.pk-toggle{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;background:#fff;border:1px solid var(--line);border-radius:12px;cursor:pointer}
.pk-toggle:has(input:checked){border:2px solid var(--hyssop);padding:11px 13px}
.pk-toggle > span{display:flex;flex-direction:column;gap:2px}
.pk-toggle b{font-size:15px}
.pk-toggle > span > span{font-weight:400;font-size:14px;line-height:1.45}
.pk-toggle input{margin-top:1px!important}

.pk-seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;border:1px solid var(--hyssop);border-radius:8px;overflow:hidden}
.pk-seg label{position:relative;min-height:44px;display:flex;align-items:center;justify-content:center;text-align:center;padding:4px 8px;font-size:15px;color:var(--hyssop);background:#fff;cursor:pointer}
.pk-seg label + label{border-left:1px solid var(--hyssop)}
.pk-seg input{position:absolute;opacity:0;width:1px;height:1px}
.pk-seg label:has(input:checked){background:var(--hyssop);color:var(--paper)}
.pk-seg label:has(input:focus-visible){outline:2px solid var(--hyssop-deep);outline-offset:-4px}

.pk-med{display:flex;flex-direction:column;gap:8px;padding-bottom:12px;border-bottom:1px dashed var(--petal)}
.pk-inline{display:flex;align-items:center;gap:10px;font-weight:400!important;font-size:14px!important;line-height:1.4}
.pk-form .pk-inline input{width:88px;flex-shrink:0}

.pk-bag{display:flex;flex-direction:column;background:#fff;border:2px dashed var(--hyssop);border-radius:12px;padding:6px 14px 12px}
.pk-bag-h{padding:8px 0 4px;font:500 20px/1.2 var(--display);color:var(--hyssop)}
.pk-ex{display:flex;flex-direction:column;gap:6px;padding:10px 0;border-top:1px solid var(--line)}
.pk-ex b{font-size:15px}
.pk-ex label{display:flex;align-items:center;gap:10px;padding-left:14px;border-left:2px solid var(--petal);font-weight:400;font-size:14px;color:var(--hyssop-deep)}
.pk-form .pk-ex select{width:auto;min-width:96px;font-weight:700}
.pk-pens{margin-top:8px;background:var(--paper)}
.pk-always{margin:10px 0 0;padding-top:10px;border-top:1px solid var(--line);font-size:14px;line-height:1.5}

.pk-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.pk-chip{display:flex;align-items:center;gap:10px;min-height:48px;padding:6px 10px;background:#fff;border:1px solid var(--line);border-radius:10px;font-weight:400!important;font-size:14px!important;line-height:1.25;cursor:pointer}
.pk-chip:has(input:checked){border-color:var(--hyssop)}
.pk-form .pk-chip input{width:20px;height:20px}
.pk-add{display:flex;gap:8px}
.pk-form .pk-add input{flex:1;min-width:0}
.pk-add button{min-height:48px;padding:0 18px;border:0;border-radius:10px;background:var(--hyssop);color:var(--paper);font:700 15px var(--body);cursor:pointer}
.pk-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.pk-looks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.pk-look{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px;background:#fff;border:1px solid var(--line);border-radius:10px;cursor:pointer}
.pk-look:has(input:checked){border:2px solid var(--hyssop);padding:9px 3px}
.pk-look:has(input:focus-visible){outline:2px solid var(--hyssop-deep);outline-offset:2px}
.pk-look input{position:absolute;opacity:0;width:1px;height:1px}
.pk-look b{font-size:13px}
.pk-sw{width:48px;height:36px;border-radius:6px;border:1px solid var(--ink);background:linear-gradient(var(--a) 0 55%,var(--b) 55% 72%,var(--c) 72%)}
.pk-btn{min-height:52px;border:0;border-radius:10px;background:var(--hyssop);color:var(--paper);font:700 17px var(--body);cursor:pointer}
.pk-reset{align-self:flex-start;border:0;background:none;color:var(--hyssop);font:700 15px var(--body);text-decoration:underline;cursor:pointer;padding:8px 0}

.pk-prev{position:sticky;top:76px;min-width:0}
.pk-prev-hd{margin-bottom:10px}
.pk-prev-hd span{font:700 13px/1 var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--garden)}
.pk-frame{border:1px solid var(--line);border-radius:12px;overflow:auto;max-height:calc(100vh - 140px);background:#fff;box-shadow:0 14px 30px rgba(47,38,34,.08)}
.pk-how{margin-top:48px;max-width:70ch}
.pk-how ul{padding-left:20px;margin:0}
.pk-how li{margin-bottom:6px}
[hidden]{display:none!important}

/* ---------- the list (screen preview and print) ---------- */
.pl{--top:#A3326F;--acc:#7E2154;--key:#3F6B3A;--disp:Fraunces,Georgia,serif;--dw:500;--line:#EBD9DE;--soft:#F296BD;
  color:#2F2622;font:400 15px/1.45 "Atkinson Hyperlegible",Arial,sans-serif;background:#fff}
.pl-ranger{--top:#2F5D3A;--acc:#B8461A;--key:#2F5D3A;--disp:"Zilla Slab",Rockwell,Georgia,serif;--dw:700;--line:#E2D8BF;--soft:#D9561E}
.pl-explorer{--top:#1E3F28;--acc:#7D6020;--key:#1E3F28;--disp:"Zilla Slab",Rockwell,Georgia,serif;--dw:700;--line:#ECE7DA;--soft:#B8913A}
.pl-daisy{--top:#A3326F;--acc:#7E2154;--key:#3F6B3A;--soft:#F5C22B}
.pl-juniper{--top:#7E2154;--acc:#7E2154;--key:#3F6B3A;--soft:#F296BD}
.pl-page{padding:36px 36px 28px;display:flex;flex-direction:column;gap:18px}
.pl-page + .pl-page{border-top:8px solid #F3EEEC}
.pl-hd{border-bottom:1px solid var(--top);padding-bottom:12px;display:flex;flex-direction:column;gap:4px}
.pl-ey{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--key)}
.pl-hd h2{margin:0;font:var(--dw) 30px/1.1 var(--disp);color:var(--top)}
.pl-trip{display:flex;gap:12px;align-items:baseline;margin-top:-6px;border:1px solid var(--line);border-radius:8px;padding:9px 14px;font-size:14px}
.pl-trip span:first-child{flex-shrink:0;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--key)}
.pl-trip span:last-child{white-space:pre-line;overflow-wrap:anywhere}
.pl-sec{display:flex;flex-direction:column}
.pl-sh{display:grid;grid-template-columns:26px 40px minmax(0,1fr);column-gap:12px;align-items:end;padding-bottom:6px;border-bottom:2px solid var(--top)}
.pl-sh.dash{border-bottom-style:dashed}
.pl-sh b{grid-column:3;font:var(--dw) 21px/1.2 var(--disp);color:var(--top)}
.pl-sh b small{font:700 11px/1 "Atkinson Hyperlegible",Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--key)}
.pl-it{display:grid;grid-template-columns:26px 40px minmax(0,1fr);column-gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.pl-it.has-sub{padding-bottom:3px;border-bottom:0}
.pl-box{width:20px;height:20px;border:1.5px solid var(--acc);border-radius:3px}
.pl-n{text-align:right;font:var(--dw) 21px/1 var(--disp);color:var(--acc)}
.pl-sub{display:grid;grid-template-columns:26px 40px minmax(0,1fr);column-gap:12px;padding:0 0 10px;border-bottom:1px solid var(--line);font-size:14px}
.pl-sub > span{grid-column:3;display:flex;align-items:center;gap:9px;padding-left:12px;border-left:2px solid var(--soft);color:var(--acc)}
.pl-sub i{width:16px;height:16px;flex-shrink:0;border:1.5px dashed var(--acc);border-radius:3px}
.pl-sub em{font-style:normal;color:#2F2622}
.pl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:20px;row-gap:10px;padding-top:8px;font-size:14px}
.pl-grid span{display:flex;gap:9px;align-items:center}
.pl-grid i{width:18px;height:18px;flex-shrink:0;border:1.5px solid var(--acc);border-radius:3px}
.pl-foot{display:flex;flex-direction:column;gap:6px;margin-top:auto}
.pl-dbl{border-top:1px solid var(--top);border-bottom:1px solid var(--top);height:4px}
.pl-mbh{font-size:12px}.pl-mbh span{color:var(--top)}
.pl-tb{display:flex;flex-direction:column}
.pl-tr{display:grid;grid-template-columns:minmax(0,1.3fr) 56px minmax(0,1.2fr) minmax(0,1.6fr);column-gap:14px;padding:8px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.4;align-items:baseline}
.pl-tr.th{padding:0 0 6px;border-bottom:2px solid var(--top);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--key)}
.pl-tr .pl-n{font-size:19px}
.pl-h3{margin:0;padding-bottom:6px;border-bottom:2px solid var(--top);font:var(--dw) 21px/1.2 var(--disp);color:var(--top)}
.pl-note{font-size:12px;line-height:1.45;margin:6px 0 0}
.pl-rights{background:#F4D6E2;border-radius:8px;padding:12px 14px;font-size:14px;line-height:1.5;color:#7E2154}
.pl-ranger .pl-rights,.pl-explorer .pl-rights{background:#F2EFE7;color:#2E2724}
.pl-tips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;row-gap:10px;font-size:14px;line-height:1.5}
.pl-src{font-size:12px;line-height:1.45;margin:0}

@media (max-width:960px){
  .pk-grid{grid-template-columns:minmax(0,1fr)}
  .pk-prev{position:static}
  .pk-frame{max-height:none}
}
@media (max-width:560px){
  .pl-page{padding:20px 14px}
  .pl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pl-tips{grid-template-columns:minmax(0,1fr)}
  .pl-tr{grid-template-columns:minmax(0,1.2fr) 40px minmax(0,1.5fr)}
  .pl-tr > :nth-child(3){display:none}
}

@media print{
  @page{size:letter;margin:0}
  html,body{background:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  body > *:not(main){display:none!important}
  .hm-skip,.hm-header,.hm-foot,.dl-hero,.pk-form,.pk-prev-hd,.pk-how{display:none!important}
  .pk-page{padding:0;max-width:none}
  .pk-grid{display:block;margin:0}
  .pk-prev{position:static}
  .pk-frame{border:0;box-shadow:none;overflow:visible;max-height:none;border-radius:0}
  .pl-page{min-height:11in;padding:.5in .55in .45in;break-after:page;gap:16px}
  .pl-page:last-child{break-after:auto}
  .pl-page + .pl-page{border-top:0}
  .pl-it,.pl-sub,.pl-tr,.pl-trip,.pl-rights{break-inside:avoid}
  .pl-page{gap:13px;height:11in;min-height:0}
  .pl-it{padding:7px 0}
  .pl-it.has-sub{padding-bottom:2px}
  .pl-sub{padding-bottom:7px}
  .pl-grid{row-gap:7px}
  .pl-hd{padding-bottom:9px}
}
