:root{
  --forest:#173a2b;--forest2:#0e281d;--green:#4d963d;--green-dark:#35732c;
  --green-soft:#eaf3e6;--paper:#eef1ec;--white:#fff;--ink:#18211e;--muted:#65716b;
  --line:#dce3dd;--sand:#f8f7f1;--shadow:0 18px 48px rgba(7,35,23,.12);--radius:24px
}
*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth;scroll-padding-top:18px}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:linear-gradient(#e9eee8,#f5f5f1);line-height:1.45}
button,input{font:inherit}.hero{position:relative;min-height:330px;color:white;background:linear-gradient(180deg,rgba(4,21,16,.20),rgba(4,21,16,.78)),url("assets/paklist-hero.webp") center/cover}
.hero-shade{position:absolute;inset:0;background:radial-gradient(circle at 50% 0,transparent 0 22%,rgba(4,24,17,.15) 55%,rgba(4,24,17,.35))}
.hero-inner{position:relative;z-index:1;width:min(1180px,calc(100% - 32px));margin:auto;padding:30px 0 24px}
.brand-lockup{text-align:center}.header-logo{display:block;width:min(610px,84vw);height:auto;max-height:none;object-fit:contain;object-position:center;margin:0 auto 4px;overflow:visible}.brand-lockup p{margin:0;color:#eaf2ed;font-size:16px}.version{display:inline-block;margin-top:8px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;background:#ffffff17;border:1px solid #ffffff20;padding:4px 9px;border-radius:999px}
.steps{margin-top:28px;display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.steps a{text-decoration:none;color:#e5eee8;text-align:center;font-size:11px;opacity:.92}.steps a span{display:grid;place-items:center;margin:auto;width:47px;height:47px;border-radius:50%;background:#ffffff1a;border:1px solid #ffffff20;font-size:21px;transition:.18s}.steps a small{display:block;margin-top:7px}.steps a:hover span{background:var(--green);transform:translateY(-2px)}
.app-shell{width:min(1180px,calc(100% - 28px));margin:-24px auto 0;position:relative;z-index:2;padding-bottom:40px}
.panel{background:#fbfcfaff;border:1px solid #ffffffcc;border-radius:var(--radius);padding:28px;margin:0 0 18px;box-shadow:var(--shadow)}
.section-heading{display:flex;gap:13px;align-items:center;margin-bottom:22px}.section-icon{width:45px;height:45px;border-radius:14px;display:grid;place-items:center;background:var(--green-soft);font-size:22px;flex:none}.section-heading h2{margin:1px 0 3px;font-size:26px;line-height:1.15}.section-heading p{margin:0;color:var(--muted)}.eyebrow{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--green-dark)}
label{display:block;font-weight:800;color:#3d4c43;font-size:13px}input{width:100%;margin-top:7px;padding:14px 15px;border:1px solid #bec9c1;border-radius:13px;background:white;color:var(--ink);outline:none}input:focus{border-color:var(--green);box-shadow:0 0 0 4px rgba(77,150,61,.13)}
.field-help{color:var(--muted);font-size:12px;margin:8px 0 0}.where-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:22px}.autocomplete{position:relative}.suggestions{position:absolute;left:0;right:0;top:calc(100% + 5px);z-index:20;background:white;border:1px solid var(--line);border-radius:13px;box-shadow:0 16px 34px #1937272b;overflow:hidden}.suggestions button{width:100%;border:0;background:white;text-align:left;padding:12px 14px;cursor:pointer;border-bottom:1px solid #edf0ed}.suggestions button:hover{background:#f1f6ef}.suggestions button strong,.suggestions button span{display:block}.suggestions button span{font-size:12px;color:var(--muted)}
.segmented{display:inline-flex;background:#edf1ed;padding:4px;border-radius:12px;margin:16px 0 14px}.segmented button{border:0;background:transparent;padding:10px 15px;border-radius:9px;cursor:pointer;font-weight:850;color:#526158}.segmented button.active{background:#fff;color:var(--forest);box-shadow:0 2px 10px #cbd6ce}.date-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.days-label{max-width:190px;margin-top:14px}
.choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.choice-grid button{min-height:116px;border:1px solid var(--line);border-radius:17px;background:#fff;font-size:34px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;cursor:pointer;transition:.16s;color:var(--ink)}.choice-grid button span{font-size:14px;font-weight:850}.choice-grid button small{font-size:10px;color:var(--muted);font-weight:650;line-height:1.2}.choice-grid button:hover{transform:translateY(-2px);border-color:#9bb79f;box-shadow:0 9px 22px #0c291914}.choice-grid button.selected{background:var(--green-soft);border:2px solid var(--green);box-shadow:inset 0 0 0 2px #fff}.choice-grid.seasons button{min-height:94px}.compact-grid{grid-template-columns:repeat(4,1fr)}
.custom-pictogram{font-size:42px!important;line-height:1;color:var(--green-dark)}
.subchoices{display:grid;gap:10px;margin-top:18px}.subchoices fieldset{border:1px solid var(--line);border-radius:14px;padding:13px;background:#f8faf8}.subchoices legend{font-weight:900;padding:0 7px;color:#35493d}.chips{display:flex;flex-wrap:wrap;gap:8px}.chips button{border:1px solid #bdc9c0;background:#fff;padding:8px 13px;border-radius:999px;cursor:pointer;font-weight:800;font-size:12px}.chips button.selected{background:var(--forest);border-color:var(--forest);color:white}
.weather-card{height:100%;min-height:286px;background:linear-gradient(145deg,#edf5ed,#f7faf6);border:1px solid #ccdbcf;border-radius:19px;padding:18px}.weather-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.weather-kicker{font-size:10px;font-weight:900;letter-spacing:.08em;color:var(--green-dark)}.weather-card h3{margin:4px 0 5px;font-size:19px}.weather-card p{margin:0;color:#5d6d63;font-size:13px}.round-btn{width:38px;height:38px;border:1px solid #cbd7cd;border-radius:50%;background:#fff;cursor:pointer;font-size:17px}.weather-values{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:18px}.weather-values div{background:white;border:1px solid #dae3db;border-radius:14px;padding:13px;text-align:center}.weather-values span{display:block;font-size:24px}.weather-values strong{display:block;font-size:17px;margin:4px 0}.weather-values small{font-size:10px;color:var(--muted)}.weather-details{margin-top:11px;font-size:12px;color:#526158;background:#ffffffa6;border-radius:11px;padding:9px 11px}.weather-warning{margin-top:11px;border:1px solid #e5c36f;background:#fff5d9;border-radius:11px;padding:9px 11px;font-size:12px;color:#6e531d}.weather-card.error{background:#f9f3e8;border-color:#eadabc}.weather-card.loading{opacity:.76}
.people-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.people-card{text-align:center;background:#fff;border:1px solid var(--line);border-radius:17px;padding:16px}.people-card>span{display:block;font-size:33px}.people-card>b{display:block;margin:5px 0}.people-card input{max-width:110px;margin:5px auto 0;text-align:center}.child-age-wrap{margin-top:16px;padding:15px;background:#f5f8f4;border:1px solid var(--line);border-radius:15px}.child-age-title{font-weight:900;margin-bottom:10px}.child-age-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.child-age-card{background:white;border:1px solid var(--line);border-radius:12px;padding:10px}.child-age-card input{margin-top:5px}.inline-note{margin-top:14px;background:#f3f7f2;border:1px solid #dce7da;border-radius:12px;padding:11px 13px;color:#526158;font-size:12px}
.result-heading{position:relative;padding-right:190px}.primary{border:0;background:var(--green);color:#fff;border-radius:13px;padding:13px 17px;font-weight:900;cursor:pointer}.primary:hover{background:var(--green-dark)}.result-heading .primary{position:absolute;right:0;top:0}
.packing-layout{display:grid;grid-template-columns:1.7fr .72fr;gap:18px}
.packing-list{columns:2;column-gap:14px}
.pack-category{break-inside:avoid;margin:0 0 14px;border:1px solid var(--line);border-radius:15px;overflow:hidden;background:#fff}
.pack-category h3{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0;padding:12px 13px;background:#edf3ee;font-size:14px;color:#2f4437}
.category-title{display:flex;align-items:center;gap:8px}.category-icon{font-size:19px}.category-count{display:grid;place-items:center;min-width:25px;height:25px;padding:0 7px;border-radius:999px;background:#fff;font-size:10px}
.pack-category ul{list-style:none;padding:0;margin:0}
.pack-category li{display:grid;grid-template-columns:34px 1fr auto;gap:9px;align-items:start;padding:10px 11px;border-top:1px solid #edf0ed}
.list-item-icon{width:34px;height:34px;border-radius:10px;background:#f3f6f1;display:grid;place-items:center;font-size:20px}
.pack-category label{display:flex;align-items:flex-start;gap:7px;font-size:12px;font-weight:650;min-width:0}
.pack-category label input{width:auto;margin:2px 0 0;flex:none}
.pack-item-name{font-weight:750}
.pack-category strong{font-size:11px;text-align:right;color:#536158;max-width:105px;line-height:1.25}
.trip-summary{background:#f2f5f2;border:1px solid var(--line);border-radius:18px;padding:17px;height:max-content;position:sticky;top:16px}.trip-summary h3{margin:0 0 13px}.summary-line{display:flex;gap:9px;margin:10px 0;font-size:13px;color:#405048}.summary-line span:first-child{width:22px;text-align:center;flex:none}
footer{text-align:center;color:#657169;padding:4px 16px 35px;font-size:12px}
@media(max-width:900px){.steps{grid-template-columns:repeat(4,1fr);row-gap:14px}.where-grid,.packing-layout{grid-template-columns:1fr}.trip-summary{position:static}.choice-grid{grid-template-columns:repeat(3,1fr)}.packing-list{columns:1}}
@media(max-width:650px){.hero{min-height:280px}.hero-inner{padding-top:22px}.header-logo{width:85vw}.steps{display:none}.app-shell{margin-top:-18px;width:min(100% - 18px,1180px)}.panel{padding:20px 15px;border-radius:19px}.section-heading{align-items:flex-start}.section-heading h2{font-size:22px}.date-grid,.people-grid{grid-template-columns:1fr}.choice-grid,.compact-grid{grid-template-columns:repeat(2,1fr)}.choice-grid button{min-height:104px}.weather-values{grid-template-columns:1fr}.result-heading{padding-right:0;flex-wrap:wrap}.result-heading .primary{position:static;margin-left:auto;white-space:nowrap}.packing-list{columns:1}}
@media print{.hero,form,footer,.primary,.trip-summary{display:none!important}.app-shell{margin:0;width:100%}.panel{box-shadow:none;border:0;padding:0}.packing-list{columns:2}}


/* v1.0 – mad-info og vægtestimat */
.pack-right{position:relative;display:flex;flex-direction:column;align-items:flex-end;min-width:92px}
.pack-quantity-row{display:flex;align-items:center;justify-content:flex-end;gap:5px}
.food-info-btn{border:0;background:transparent;color:var(--green-dark);font-size:16px;line-height:1;cursor:pointer;padding:2px 1px}
.food-info-btn:hover{color:var(--forest)}
.food-info-popover{
  display:none;position:absolute;z-index:45;right:0;top:calc(100% + 7px);width:245px;
  padding:10px 12px;border-radius:11px;background:var(--forest);color:#fff;font-size:12px;
  font-weight:600;line-height:1.4;text-align:left;box-shadow:0 13px 30px rgba(5,28,19,.25)
}
.food-info-popover.show,.pack-category li:hover .food-info-popover.hover-show{display:block}
.weight-estimate{
  margin-top:16px;display:flex;gap:13px;align-items:center;border:1px solid #cbdacb;
  background:linear-gradient(145deg,#edf5ed,#f9fbf8);border-radius:16px;padding:16px 18px
}
.weight-icon{width:45px;height:45px;border-radius:13px;background:#fff;display:grid;place-items:center;font-size:23px;border:1px solid #d9e4da}
.weight-kicker{display:block;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--green-dark)}
.weight-estimate strong{display:block;font-size:24px;line-height:1.1;margin:3px 0}
.weight-estimate p{margin:0;color:var(--muted);font-size:11px;max-width:590px}

/* v1.1 – personer, eget udstyr og vægtfordeling */
select{font:inherit;color:var(--ink);background:#fff;border:1px solid #bec9c1;border-radius:11px;padding:10px 12px;outline:none}
select:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(77,150,61,.12)}
.participant-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:11px}.participant-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px}.participant-card-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.participant-card label+label{margin-top:9px}.participant-card input{padding:10px 11px;margin-top:4px}.diaper-toggle{display:flex;align-items:center;gap:8px;margin-top:11px!important;padding:9px 10px;border-radius:10px;background:#f4f7f3}.diaper-toggle input{width:auto!important;margin:0!important;box-shadow:none}.person-dot{display:inline-block;width:11px;height:11px;border-radius:50%;background:var(--pc,#4d963d);flex:none}
.pcolor-0{--pc:#4d963d}.pcolor-1{--pc:#3d7ea6}.pcolor-2{--pc:#b87932}.pcolor-3{--pc:#7b62a3}.pcolor-4{--pc:#27867d}.pcolor-5{--pc:#a75468}.pcolor-6{--pc:#77624b}.pcolor-7{--pc:#596d78}
.packing-controls{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:0 0 14px;padding:13px 14px;border:1px solid var(--line);border-radius:15px;background:#f5f8f4}.control-label{display:block;font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:var(--green-dark);margin-bottom:7px}.person-filters{display:flex;flex-wrap:wrap;gap:7px}.person-filter{border:1px solid #c7d1c9;background:#fff;border-radius:999px;padding:7px 11px;display:flex;align-items:center;gap:6px;cursor:pointer;font-size:12px;font-weight:850;color:#435149}.person-filter.pcolor-0,.person-filter.pcolor-1,.person-filter.pcolor-2,.person-filter.pcolor-3,.person-filter.pcolor-4,.person-filter.pcolor-5,.person-filter.pcolor-6,.person-filter.pcolor-7{border-color:color-mix(in srgb,var(--pc) 48%,white)}.person-filter.active{background:var(--forest);color:white;border-color:var(--forest)}.person-filter.active .person-dot{outline:2px solid #fff}.all-filter.active{background:var(--forest)}
.secondary,.ghost{border:1px solid #b9c8bb;background:#fff;color:var(--forest);border-radius:12px;padding:11px 14px;font-weight:900;cursor:pointer}.secondary:hover,.ghost:hover{border-color:var(--green);background:#f5f9f3}.ghost{padding:10px 13px;background:transparent}
.custom-item-form{margin:-2px 0 15px;padding:15px;border:1px solid #cddbcc;border-radius:15px;background:linear-gradient(145deg,#f1f7ef,#fbfcfa)}.custom-item-grid{display:grid;grid-template-columns:2fr 1.1fr .6fr 1fr 1fr;gap:10px}.custom-item-grid input,.custom-item-grid select{margin-top:5px;width:100%;padding:11px}.custom-form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:11px}
.packing-sidebar{height:max-content;position:sticky;top:16px;display:grid;gap:13px}.trip-summary{position:static;top:auto}.weight-dashboard{background:#f2f5f2;border:1px solid var(--line);border-radius:18px;padding:17px}.weight-dashboard-head{display:flex;align-items:flex-start;justify-content:space-between}.weight-dashboard h3{margin:1px 0 0;font-size:21px}.weight-badge{font-size:10px;font-weight:900;border:1px solid #c9d6ca;background:#fff;border-radius:999px;padding:4px 7px;color:#68756d}.weight-total-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:13px 0}.weight-total-grid>div{background:#fff;border:1px solid #d9e2da;border-radius:12px;padding:10px}.weight-total-grid small{display:block;color:var(--muted);font-size:10px}.weight-total-grid strong{display:block;font-size:18px;margin-top:2px}.weight-groups{display:grid;gap:6px;padding:10px 0;border-top:1px solid #d9e1da;border-bottom:1px solid #d9e1da}.weight-groups div{display:flex;justify-content:space-between;gap:10px;font-size:12px}.weight-groups span{color:#526158}.weight-groups strong{font-size:12px}.person-weight-title{font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:var(--green-dark);margin:12px 0 7px}.person-weight-list{display:grid;gap:6px}.person-weight-row{display:grid;grid-template-columns:12px 1fr auto;gap:7px;align-items:center;background:#fff;border:1px solid #dde4de;border-radius:10px;padding:8px 9px}.person-weight-name{font-size:12px;font-weight:850;min-width:0;overflow:hidden;text-overflow:ellipsis}.person-weight-row>span:last-child{text-align:right}.person-weight-row strong{display:block;font-size:11px}.person-weight-row small{display:block;font-size:9px;color:var(--muted)}.weight-note{font-size:10px;color:var(--muted);margin:10px 0 0;line-height:1.4}
.pack-category li{grid-template-columns:34px minmax(0,1fr) auto;gap:8px 9px;align-items:start}.pack-main{min-width:0}.pack-check-label{display:flex!important;align-items:flex-start!important;gap:7px!important;font-size:12px!important;font-weight:650!important;min-width:0}.pack-check-label input{width:auto!important;margin:2px 0 0!important;flex:none}.pack-item-name{font-weight:800;line-height:1.25}.optional-badge{font-size:9px;font-weight:900;color:#776235;background:#fff4ce;border:1px solid #ead796;border-radius:999px;padding:1px 5px;white-space:nowrap}.pack-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:4px}.quantity-edit{border:0;background:transparent;padding:0;color:#526158;font-size:10px;font-weight:800;cursor:pointer;text-align:left}.quantity-edit:not(.not-editable):hover{text-decoration:underline;color:var(--green-dark)}.quantity-edit.not-editable{cursor:default}.item-weight{font-size:10px;color:#718079}.pack-tools{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:2px}.weight-edit-btn,.delete-item-btn{border:0;background:transparent;cursor:pointer;border-radius:8px;padding:4px;font-size:15px}.weight-edit-btn:hover,.delete-item-btn:hover{background:#edf3ec}.delete-item-btn{font-size:20px;line-height:1;color:#855}.owner-row,.water-row{grid-column:2/-1;display:flex;align-items:center;gap:5px;flex-wrap:wrap}.owner-row{padding-top:1px}.owner-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:#7a867f;font-weight:900;margin-right:2px}.owner-chip{--chip:var(--pc,#4d963d);border:1px solid #d3dbd4;background:#fff;color:#536159;border-radius:999px;padding:3px 7px 3px 4px;display:flex;align-items:center;gap:4px;font-size:9px;font-weight:850;cursor:pointer}.owner-chip.selected{border-color:var(--pc);background:color-mix(in srgb,var(--pc) 10%,white);color:#26352c}.owner-box{width:14px;height:14px;border:1px solid var(--pc);border-radius:4px;display:grid;place-items:center;color:white;background:transparent;font-size:9px;line-height:1}.owner-chip.selected .owner-box{background:var(--pc)}.water-row{margin-top:1px;padding:7px 8px;border:1px solid #d9e5e3;border-radius:10px;background:#f3f8f7;font-size:10px;color:#53645e}.water-row>span{font-weight:900;margin-right:2px}.water-row label{display:flex!important;align-items:center!important;gap:5px!important;font-size:10px!important;font-weight:750!important}.water-row select{padding:4px 6px;border-radius:7px;font-size:10px}.filled-toggle input{width:auto!important;margin:0!important}.optional-item{background:#fffdf8}.food-info-popover{right:0;top:calc(100% + 6px)}
@media(max-width:900px){.packing-sidebar{position:static}.custom-item-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.packing-controls{align-items:stretch;flex-direction:column}.packing-controls .secondary{width:100%}.custom-item-grid{grid-template-columns:1fr}.owner-row,.water-row{grid-column:1/-1;margin-left:43px}.pack-category li{grid-template-columns:34px minmax(0,1fr) auto}.weight-total-grid{grid-template-columns:1fr 1fr}.person-filters{gap:5px}.person-filter{padding:6px 9px}.participant-grid{grid-template-columns:1fr}}

/* v1.1.2 – inline vægtredigering og ren personvisning */
.weight-edit-btn{font-size:13px;padding:2px 4px;line-height:1;vertical-align:middle}
.inline-weight-editor{display:inline-flex;align-items:center;gap:4px;padding:3px 5px;border:1px solid #d2ddd3;background:#f7faf6;border-radius:9px}
.inline-weight-editor[hidden]{display:none!important}
.inline-weight-input{width:74px!important;min-width:0;padding:5px 6px!important;margin:0!important;border-radius:7px!important;font-size:11px!important;text-align:right}
.inline-weight-unit{font-size:10px;color:#66736b;font-weight:800}
.inline-weight-save,.inline-weight-reset{border:0;border-radius:7px;padding:5px 7px;font-size:9px;font-weight:900;cursor:pointer}
.inline-weight-save{background:var(--green);color:#fff}
.inline-weight-reset{background:#e9efea;color:#526158}
.inline-weight-save:hover{background:var(--green-dark)}
.inline-weight-reset:hover{background:#dde6df}

/* v1.1.4 – blefelt vises kun for børn under 4 år */
.diaper-toggle[hidden]{display:none!important}

/* Vejrudvidelser */
@media(max-width:1050px){.weather-values{grid-template-columns:repeat(3,1fr)}}
@media(max-width:650px){.weather-values{grid-template-columns:repeat(2,1fr)}}

/* Valgfrit vægtsystem */
.packing-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.weight-toggle{display:flex;align-items:center;gap:8px;border:1px solid #c7d1c9;background:#fff;border-radius:12px;padding:9px 12px;cursor:pointer;font-size:12px;font-weight:850;color:#435149}
.weight-toggle input{width:auto!important;margin:0!important;box-shadow:none}
.weight-toggle:has(input:checked){border-color:var(--green);background:#eef6eb;color:var(--green-dark)}
.custom-item-form.weight-off .custom-item-grid{grid-template-columns:2fr 1.1fr .6fr}
#weight-dashboard[hidden],#custom-item-weight-label[hidden],#custom-item-weight-group-label[hidden]{display:none!important}
@media(max-width:650px){.packing-actions{align-items:stretch;flex-direction:column}.weight-toggle{justify-content:center}.packing-actions .secondary{width:100%}.custom-item-form.weight-off .custom-item-grid{grid-template-columns:1fr}}
