:root{color-scheme:light;--secondary-ink:#424b46;--feature-ink:#38433c;--step-ink:#62685f;--step-line:#c9cbbb;--step-fill:#efede3;--hover:#eef0e6;--primary-hover:#355246;--track:#d0d7c6;--input-line:#818b7b;--selected-control:var(--ink)}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.55 var(--font-body)}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}a{color:inherit;text-underline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--rust);outline-offset:5px}h1:focus{outline:none}h1,h2,p{margin:0}h1,h2{font-family:var(--font-display);font-weight:400}button{border:0}button:disabled{cursor:default}img{max-width:100%}[hidden]{display:none!important}.wrap{width:calc(100% - 104px);max-width:1383px;margin-inline:auto}.topbar{border-bottom:1px solid var(--line)}.header-inner{height:80px;display:flex;align-items:center;justify-content:space-between}.brand{font:38px/1 var(--font-display);letter-spacing:-2px;text-decoration:none}.header-inner>span{font-size:18px;font-weight:500}.steps{margin:24px 0 64px}.steps ol{display:flex;list-style:none;margin:0;padding:0;gap:24px}.steps li{display:flex;flex:1;align-items:center;gap:24px}.steps li:not(:last-child)::after{content:'';height:1px;flex:1;background:var(--line)}.steps button{display:flex;align-items:center;gap:15px;background:transparent;white-space:nowrap;padding:0;color:var(--step-ink);font-size:17px;min-height:40px}.step-number{display:grid;place-items:center;border:1px solid var(--step-line);border-radius:50%;width:37px;height:37px;background:var(--step-fill);flex-shrink:0}.steps [aria-current=step]{color:var(--ink);font-weight:600}.steps [aria-current=step] .step-number{background:var(--ink);border-color:var(--ink);color:var(--white)}.heading-row{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:36px}h1{font-size:62px;line-height:1.12;letter-spacing:-2.5px}.intro{font-size:22px;margin-top:16px;color:var(--secondary-ink)}.text-button{background:transparent;padding:10px 0;text-decoration:underline;text-underline-offset:6px;font-size:18px;white-space:nowrap}.heading-row>.text-button{margin-top:16px}.bag-options{border:0;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;min-width:0}.bag-card{display:block;position:relative;min-width:0;padding:0 30px 28px;border-radius:5px;cursor:pointer;transition:background .15s}.bag-card+.bag-card::before{content:'';position:absolute;left:-17px;top:6px;bottom:6px;width:1px;background:var(--line)}.bag-card.selected{background:var(--sage)}.bag-card:hover{background:var(--hover)}.bag-card:focus-within{outline:2px solid var(--ink);outline-offset:3px}.bag-image{display:block;width:100%;height:350px;object-fit:contain;mix-blend-mode:multiply;margin:0 auto 16px}.bag-title{display:flex;gap:20px;align-items:center;font:30px/1.25 var(--font-display);letter-spacing:-.7px;margin-bottom:22px}.bag-title input{appearance:none;flex:0 0 34px;width:34px;height:34px;border:1px solid var(--ink);border-radius:50%;margin:0;background:transparent;cursor:pointer}.bag-title input:checked{background:var(--selected-control) url('assets/icons/check-white.svg') center/23px no-repeat}.bag-feature{display:flex;align-items:center;gap:22px;font-size:18px;color:var(--feature-ink);min-height:40px;margin-top:12px}.bag-feature img{width:30px;height:30px;opacity:.85}.action-bar{margin-top:26px;border-top:1px solid var(--line);padding-block:30px;display:flex;align-items:center;justify-content:space-between;gap:24px}.action-bar p{font-size:17px;color:var(--secondary-ink)}.primary{background:var(--ink);color:var(--white);border-radius:4px;padding:16px 27px;min-height:60px;display:inline-flex;align-items:center;justify-content:center;gap:20px;font-size:19px;font-weight:500;text-decoration:none}.primary:hover{background:var(--primary-hover)}.primary img{width:24px;height:24px;filter:invert(1)}.footnote{font-size:13px;color:var(--muted);padding-bottom:22px}.footnote a{margin-left:8px}.skip{position:absolute;top:-100px;left:16px;background:var(--paper);z-index:3;padding:12px}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.packing-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:70px}.check-group{border:0;border-top:1px solid var(--line);padding:22px 0;margin:0}.check-group legend{font:29px/1.3 var(--font-display);padding:0 16px 0 0}.check-row{display:flex;align-items:flex-start;gap:18px;border-bottom:1px solid var(--line);padding:18px 0;cursor:pointer;font-size:18px}.check-row input{width:24px;height:24px;flex:0 0 24px;margin:2px 0 0;accent-color:var(--ink)}.check-row input:checked+span{color:var(--muted);text-decoration:line-through}.packing-aside{background:var(--sage);padding:28px;align-self:start;border-radius:4px;position:sticky;top:24px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.12em}.chosen-image{display:block;width:100%;height:180px;object-fit:contain;mix-blend-mode:multiply;margin:8px 0}.packing-aside h2{font-size:29px;margin:12px 0}.packing-aside p,.packing-aside>a{font-size:15px}.save-note{color:var(--muted);font-size:14px}.meter-label{display:block;margin-top:25px;font-size:16px;font-weight:600}progress{appearance:none;display:block;width:100%;height:8px;margin-top:12px;border:0;background:var(--track);border-radius:8px;overflow:hidden}progress::-webkit-progress-bar{background:var(--track)}progress::-webkit-progress-value{background:var(--ink)}progress::-moz-progress-bar{background:var(--ink)}.aside-note{margin:24px 0 12px}.review-summary{padding-top:24px}.review-summary h2{font-size:30px;margin-bottom:16px}.review-summary p{margin-top:10px}.saved-screen{padding-bottom:90px;max-width:820px}.saved-screen h1{margin-top:24px}.saved-screen .save-note{margin:20px 0 32px}
@media(min-width:1600px){.wrap{max-width:1383px}}@media(max-width:1180px){.wrap{width:calc(100% - 64px)}h1{font-size:50px}.steps{margin-bottom:44px}.steps ol,.steps li{gap:15px}.steps button{font-size:14px;gap:10px}.bag-card{padding-inline:20px}.bag-image{height:290px}.bag-title{font-size:25px;gap:12px}.bag-feature{font-size:15px;gap:14px}.bag-options{gap:24px}.bag-card+.bag-card::before{left:-13px}.packing-layout{gap:35px;grid-template-columns:minmax(0,1fr) 260px}.action-bar p{font-size:15px}.primary{font-size:17px;padding-inline:22px}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.header-inner{height:70px}.brand{font-size:30px}.header-inner>span{font-size:14px}.steps{margin:22px 0 34px}.steps ol{gap:6px}.steps li{justify-content:center}.steps li:not(:last-child)::after{display:none}.steps button{flex-direction:column;gap:8px;white-space:normal;font-size:11px;text-align:center}.step-number{width:30px;height:30px;font-size:14px}.heading-row{display:block;margin-bottom:24px}h1{font-size:40px;letter-spacing:-1.6px}.intro{font-size:17px;margin-top:15px}.heading-row>.text-button{margin-top:12px;font-size:16px}.bag-options{grid-template-columns:1fr;gap:16px}.bag-card{display:grid;grid-template-columns:112px minmax(0,1fr);grid-template-rows:auto auto auto;column-gap:16px;padding:20px 16px;border:1px solid var(--line)}.bag-card+.bag-card::before{display:none}.bag-image{grid-column:1;grid-row:1/4;width:112px;height:145px;margin:0;align-self:center}.bag-title{grid-column:2;gap:10px;font-size:24px;margin:0 0 8px}.bag-title input{width:23px;height:23px;flex-basis:23px;background-size:16px!important}.bag-feature{grid-column:2;font-size:13px;line-height:1.45;gap:8px;min-height:34px;margin:0}.bag-feature img{width:22px;height:22px;flex-shrink:0}.action-bar{align-items:stretch;flex-direction:column;gap:18px;padding-block:22px}.action-bar p{font-size:14px}.primary{width:100%;font-size:16px;min-height:54px}.footnote{font-size:12px}.footnote a{display:block;margin:8px 0 0}.packing-layout{display:flex;flex-direction:column;gap:24px}.packing-aside{position:static;width:100%;order:-1;padding:20px}.packing-aside .chosen-image{width:85px;height:85px;float:right;margin:0}.packing-aside h2{font-size:24px;margin:8px 0}.packing-aside .aside-note{clear:both}.meter-label{margin-top:18px}.check-group legend{font-size:26px}.check-row{font-size:16px;gap:13px}.review-summary h2{font-size:27px}.saved-screen h1{font-size:40px}}
@media(max-width:360px){.bag-card{grid-template-columns:82px minmax(0,1fr);padding:16px 12px;gap:8px 12px}.bag-image{width:82px;height:120px}.bag-title{font-size:21px}.bag-feature{font-size:12px}.bag-feature img{width:19px;height:19px}h1{font-size:35px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Match the selected comparison layout and blend the genuine felt image backgrounds. */
@media(min-width:1181px){.steps li:last-child{flex:0 0 220px}h1{font-size:66px}.heading-row{margin-bottom:30px}.action-bar .primary{min-width:340px}}
.bag-image,.chosen-image{filter:brightness(1.1) contrast(1.15)}

/* Rounded image backgrounds requested during preview review. */
.bag-image{height:auto;aspect-ratio:1;border-radius:var(--radius-image)}
@media(min-width:1181px){h1{font-size:62px}.bag-image{max-width:350px}}
.chosen-image{border-radius:var(--radius-image);aspect-ratio:1;height:auto;max-width:180px;margin-inline:auto}

/* Each checklist choice has its own tactile felt illustration. */
.check-row:has(.check-image){display:grid;grid-template-columns:24px 88px minmax(0,1fr);align-items:center;gap:20px;padding-block:16px}
.check-image{display:block;width:88px;height:88px;object-fit:contain;border-radius:var(--radius-image);mix-blend-mode:multiply}
.check-row:has(.check-image) input{margin:0}
.check-row input:checked~span{color:var(--muted);text-decoration:line-through}
@media(max-width:760px){.check-row:has(.check-image){grid-template-columns:24px 72px minmax(0,1fr);gap:12px;padding-block:14px}.check-image{width:72px;height:72px}}
@media(max-width:360px){.check-row:has(.check-image){grid-template-columns:24px 64px minmax(0,1fr);gap:10px}.check-image{width:64px;height:64px}}
.packing-subgroup{margin:12px 0 30px}.subgroup-heading{display:flex;align-items:center;gap:18px;margin-bottom:4px}.subgroup-heading h3{margin:0;font:25px/1.3 var(--font-display);font-weight:400}.subgroup-items{margin-left:106px}.subgroup-items .check-row{padding:13px 0}.packing-subgroup:last-child{margin-bottom:0}
@media(max-width:760px){.subgroup-heading{gap:12px}.subgroup-heading h3{font-size:23px}.subgroup-items{margin-left:0}.packing-subgroup{margin-bottom:24px}}
.subgroup-heading h3{flex:1;min-width:0}.edit-contents{font-size:15px;margin-left:auto;min-height:44px}.contents-editor{margin:12px 0 0 106px;padding:20px;background:var(--sage);border-radius:4px}.contents-hint{font-size:15px;color:var(--secondary-ink);margin:8px 0 16px}.content-choices{border:0;padding:0;margin:0;min-width:0}.content-choices legend,.own-contents h4{font:600 16px/1.4 var(--font-body);margin:0 0 8px;padding:0}.content-choice{display:flex;align-items:flex-start;gap:12px;padding:10px 0;cursor:pointer;font-size:17px}.content-choice input{width:24px;height:24px;flex:0 0 24px;margin:1px 0 0;accent-color:var(--ink)}.own-contents:has(.own-content){border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.own-content{display:flex;align-items:center;gap:14px;justify-content:space-between;font-size:17px}.own-content span,.check-row span{overflow-wrap:anywhere}.own-content .text-button{font-size:14px;min-height:44px}.add-content{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:20px}.add-content label{grid-column:1/-1;font-size:16px;font-weight:600}.add-content input{width:100%;min-width:0;border:1px solid var(--input-line);background:var(--paper);color:var(--ink);border-radius:4px;padding:10px 12px}.secondary{background:var(--paper);border:1px solid var(--ink);border-radius:4px;padding:10px 16px;min-height:44px;font-size:16px}.secondary:hover{background:var(--hover)}.done-contents{margin-top:20px}.subgroup-items .contents-hint{padding-top:12px}
@media(max-width:760px){.contents-editor{margin-left:0;padding:16px}.subgroup-heading{flex-wrap:wrap}.subgroup-heading .edit-contents{margin-left:0}.subgroup-heading h3{flex-basis:calc(100% - 100px)}.subgroup-heading .edit-contents{margin-left:84px}.subgroup-items .check-row{font-size:17px}}
@media(max-width:360px){.subgroup-heading .edit-contents{margin-left:76px}.add-content{grid-template-columns:1fr}.add-content .secondary{justify-self:start}}
.account-bar{border-bottom:1px solid var(--line);padding:12px 0;font-size:15px}.account-bar>div{display:flex;align-items:center;flex-wrap:wrap;gap:10px 24px}.account-bar .text-button{font-size:15px;white-space:normal}.account-bar span{overflow-wrap:anywhere}dialog{width:min(560px,calc(100% - 36px));max-height:85vh;overflow:auto;border:1px solid var(--line);border-radius:8px;padding:30px;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#152e25a8}dialog h2{font-size:32px;line-height:1.2}dialog p{font-size:16px;margin:18px 0}dialog .text-button{font-size:15px;white-space:normal;display:block}dialog .secondary{white-space:normal}.list-choice{border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.list-choice h3{font-size:18px;margin:0}.list-choice p{margin:8px 0 14px}#signin-error:empty{display:none}

#account-status{flex-basis:100%;font-size:14px;color:var(--muted)}

/* Appearance stays separate from the checklist and account preferences. */
.header-inner{min-height:80px;height:auto;gap:16px;padding-block:16px;flex-wrap:wrap}
.header-tools{display:flex;align-items:center;gap:28px}
.header-tools>span{font-size:16px}
.appearance-control{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--muted)}
.appearance-control select{min-height:44px;max-width:130px;padding:8px 10px;border:1px solid var(--input-line);border-radius:6px;background:var(--paper);color:var(--ink);cursor:pointer}
:root[data-theme="dark"]{color-scheme:dark;--paper:#18241f;--ink:#e9eddf;--muted:#b9c4b8;--line:#48594e;--sage:#24382e;--rust:#eea38b;--white:#18241f;--secondary-ink:#d0d8ca;--feature-ink:#d0d8ca;--step-ink:#b9c4b8;--step-line:#718273;--step-fill:#24382e;--hover:#304738;--primary-hover:#c8d9bd;--track:#506453;--input-line:#879886;--selected-control:#3c6550}
:root[data-theme="dark"] .bag-image,:root[data-theme="dark"] .chosen-image,:root[data-theme="dark"] .check-image{mix-blend-mode:normal;filter:none}
:root[data-theme="dark"] .bag-feature img{filter:invert(1);opacity:.85}
:root[data-theme="dark"] .primary img{filter:none}

.profile{position:relative}
.profile-toggle{display:flex;align-items:center;justify-content:center;gap:7px;min-width:58px;min-height:46px;padding:10px;border:1px solid var(--line);border-radius:24px;background:var(--sage)}
.profile-toggle:hover,.profile-toggle[aria-expanded="true"]{background:var(--hover);border-color:var(--input-line)}
.profile-toggle[aria-expanded="true"] .profile-chevron{transform:rotate(180deg)}
.profile-panel{position:absolute;z-index:20;right:0;top:calc(100% + 12px);width:330px;max-width:calc(100vw - 36px);max-height:calc(100dvh - 100px);overflow:auto;padding:22px;border:1px solid var(--line);border-radius:14px;background:var(--paper);box-shadow:0 12px 36px #0003}
.profile-panel h2{font-size:25px;line-height:1.25}
.profile-panel .account-bar{padding:18px 0;margin-bottom:18px}
.profile-panel .account-bar>div{display:flex;flex-direction:column;align-items:stretch;gap:8px}
.profile-panel .account-bar .text-button{text-align:left;align-self:flex-start;min-height:44px}
.profile-panel .appearance-control{justify-content:space-between;color:var(--ink);font-size:16px;gap:16px;margin-top:18px}
.profile-panel .account-bar+.appearance-control{margin-top:0}
@media(max-width:600px){.header-tools{gap:14px}.header-tools>span{font-size:13px}.header-inner{gap:10px;flex-wrap:nowrap}.brand{font-size:28px}.profile-panel{padding:20px}}
@media(max-width:360px){.header-tools{gap:8px}.header-tools>span{max-width:48px;line-height:1.2}.brand{font-size:26px}}


.statistics-preference{border-top:1px solid var(--line);margin-top:20px;padding-top:20px;font-size:15px}.statistics-preference label{display:flex;align-items:flex-start;gap:12px;cursor:pointer}.statistics-preference input{width:22px;height:22px;margin:0;flex-shrink:0;accent-color:var(--ink)}.statistics-preference p{margin-top:10px;font-size:13px;color:var(--muted)}

/* Main sections share the same profile, theme and saved checklist. */
.site-navigation{display:flex;align-items:center;gap:24px;font-size:16px}
.site-navigation a{display:flex;align-items:center;min-height:44px;text-decoration:none;color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap}
.site-navigation a:hover{color:var(--ink)}
.site-navigation [aria-current="page"]{color:var(--ink);border-bottom-color:var(--ink)}
.library-screen{padding-block:44px 30px}
.library-intro{max-width:850px;margin-bottom:34px}
.library-intro h1{margin-top:14px}
.library-destination{font-size:15px;color:var(--muted);margin-top:16px}
.library-controls{display:flex;align-items:end;justify-content:space-between;gap:24px;border-block:1px solid var(--line);padding-block:22px}
.library-filters{display:flex;gap:8px;flex-wrap:wrap}
.library-filters button{font-size:16px;padding:10px 17px;min-height:44px;border:1px solid var(--line);border-radius:24px;background:transparent}
.library-filters button:hover{background:var(--hover)}
.library-filters [aria-pressed="true"]{background:var(--ink);color:var(--white);border-color:var(--ink)}
.library-search{width:270px;max-width:100%}
.library-search label{display:block;font-size:14px;margin-bottom:7px;color:var(--muted)}
.library-search input{width:100%;min-width:0;min-height:46px;padding:10px 14px;border:1px solid var(--input-line);border-radius:6px;background:var(--paper);color:var(--ink);font-size:16px}
.library-results{font-size:14px;color:var(--muted);margin:22px 0 18px}
.library-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.library-card{min-width:0;border:1px solid var(--line);border-radius:14px;background:var(--sage)}
.library-card>a{display:block;height:100%;border-radius:14px;text-decoration:none}
.library-card>a:hover{background:var(--hover)}
.library-card img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:13px 13px 0 0}
.library-card-copy{padding:22px}
.library-card h2{font-size:28px;line-height:1.2;margin:10px 0 20px}
.library-watch{font-size:15px;text-decoration:underline;text-underline-offset:5px}
.library-watch>span{margin-left:8px}
.library-empty{padding:35px 0}
.library-empty h2{font-size:30px}
.library-empty p{margin:12px 0 20px}
.library-footer{margin-top:36px;padding-top:24px;border-top:1px solid var(--line);font-size:16px;color:var(--muted)}
@media(max-width:1000px){.library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.library-controls{flex-wrap:wrap}.site-navigation{gap:18px;font-size:15px}}
@media(max-width:760px){.header-inner{flex-wrap:wrap;gap:8px}.header-tools{display:contents}.header-inner>.brand{order:1}.profile{order:2;margin-left:auto}.site-navigation{order:3;width:100%;justify-content:center;gap:28px;margin-top:6px}.library-screen{padding-top:28px}.library-intro{margin-bottom:26px}.library-search{width:100%}.library-controls{gap:18px}.library-filters button{font-size:14px;padding-inline:13px}.library-card-copy{padding:18px}.library-card h2{font-size:25px}}
@media(max-width:520px){.library-grid{grid-template-columns:1fr}.library-card h2{font-size:29px}.library-card-copy{padding:22px}.site-navigation{font-size:14px;gap:24px}}


.list-choice ul{padding-left:22px;font-size:15px;margin:12px 0 20px}.list-choice li{margin-block:7px;overflow-wrap:anywhere}#conflict-heading:focus{outline:2px solid var(--rust);outline-offset:6px}.profile-help{font-size:13px;margin-top:18px;color:var(--muted)}.site-footer{border-top:1px solid var(--line);margin-top:40px;padding-block:28px;font-size:14px;color:var(--muted)}.site-footer nav{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;margin-top:12px}.site-footer .text-button{font-size:14px;min-height:44px}#statistics-choice{position:fixed;inset:0;width:100%;max-width:none;height:100%;height:100dvh;max-height:none;margin:0;border:0;border-radius:0;padding:clamp(24px,6vw,80px);background:var(--paper);color:var(--ink);overflow-y:auto;overscroll-behavior:contain}#statistics-choice[open]{display:flex;align-items:safe center;justify-content:center}body:has(#statistics-choice[open]){overflow:hidden}.statistics-content{width:100%;max-width:720px;margin-block:auto}.statistics-eyebrow{font-size:14px!important;letter-spacing:.08em;text-transform:uppercase;color:var(--secondary-ink)}#statistics-choice h2{font-size:clamp(34px,5vw,58px);line-height:1.12;letter-spacing:-1px;margin:16px 0 24px}#statistics-heading:focus{outline:none}#statistics-choice p{font-size:18px;line-height:1.6;margin:16px 0}.statistics-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.statistics-actions .secondary{flex:1;min-height:52px;white-space:normal;text-align:center}#decline-statistics{border:0;border-radius:0;background:transparent;text-decoration:underline;text-underline-offset:5px}#decline-statistics:hover{text-decoration-thickness:2px}@media(max-width:480px){#statistics-choice p{font-size:16px}.statistics-actions{flex-direction:column}.statistics-actions .secondary{width:100%}}

.information-page{max-width:850px;padding-block:46px}.information-page h1{font-size:48px;margin-bottom:24px}.information-page h2{font-size:30px;margin:36px 0 16px}.information-page p{margin:16px 0;overflow-wrap:anywhere}.information-page .information-date{font-size:14px;color:var(--muted)}.information-page .secondary{display:inline-block;text-decoration:none}@media(max-width:760px){.information-page h1{font-size:38px}.information-page{font-size:17px;padding-block:30px}}

#delete-account-dialog{max-width:620px}#delete-account-dialog p{margin-block:16px}#delete-account-confirmation{display:block;width:100%;padding:12px;margin-top:8px;background:var(--paper);color:var(--ink);border:1px solid var(--input-line);border-radius:6px;font:inherit}.deletion-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.account-deleted-notice{padding:24px;margin-top:24px;border:1px solid var(--line);border-radius:8px;background:var(--sage)}.account-deleted-notice h2{font-size:28px}.account-deleted-notice p{margin-block:12px}#delete-account-identity{overflow-wrap:anywhere}

.contact-form{max-width:640px;padding:24px;border:1px solid var(--line);border-radius:10px;background:var(--sage)}.contact-form h2{margin-top:0}.contact-form>label{display:block;margin:22px 0 8px;font-size:16px}.contact-form input,.contact-form textarea,.contact-form select{width:100%;min-width:0;padding:12px;border:1px solid var(--input-line);border-radius:6px;background:var(--paper);color:var(--ink);font:inherit;font-size:16px}.contact-form textarea{resize:vertical}.contact-form .field-help{font-size:14px;margin:8px 0 18px;color:var(--muted)}.contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#contact-form-status:empty{display:none}#contact-form-status{font-size:16px}#contact-form-status:focus{outline:2px solid var(--rust);outline-offset:5px}@media(max-width:520px){.contact-form{padding:18px}.contact-form h2{font-size:28px}}

/* Shared layout rhythm across the checklist, library and information pages. */
:root {
  --layout-width: 78rem;
  --page-gutter: clamp(1.125rem, 3.5vw, 3rem);
  --section-space: clamp(1.75rem, 4vw, 3rem);
  --panel-radius: .75rem;
  --control-radius: .5rem;
  --title-size: clamp(2.5rem, 4.5vw, 3.875rem);
}
body { font-size: 1.125rem; }
button, input, select, textarea { font-family: var(--font-body); }
textarea:focus-visible { outline: 3px solid var(--rust); outline-offset: 5px; }
.wrap { width: calc(100% - 2 * var(--page-gutter)); max-width: var(--layout-width); }
h1, .information-page h1, .saved-screen h1 {
  font-size: var(--title-size);
  line-height: 1.12;
  letter-spacing: -.04em;
  overflow-wrap: break-word;
}
.intro { max-width: 44rem; font-size: clamp(1.0625rem, 1.6vw, 1.25rem); line-height: 1.6; }
.heading-row { align-items: flex-start; gap: 1.5rem; margin-bottom: var(--section-space); }
.heading-row > .text-button { margin-top: .5rem; flex-shrink: 0; }
.header-inner { min-height: 5.25rem; padding-block: 1rem; }
.brand { font-size: clamp(1.875rem, 3vw, 2.375rem); letter-spacing: -.055em; }
.header-tools { gap: 2rem; }
.site-navigation { gap: 1.75rem; font-size: 1rem; }
.site-navigation a { min-height: 2.75rem; text-align: center; }
.profile-toggle { min-height: 2.875rem; }
.profile-panel { border-radius: var(--panel-radius); }
.profile-panel h2 { font-size: 1.625rem; }
.profile-help, .statistics-preference p { font-size: .875rem; line-height: 1.6; }
.steps { margin-block: 1.75rem var(--section-space); }
.steps ol { padding: 0; gap: 1.5rem; }
.steps li, .steps li:last-child { flex: 1 1 0; min-width: 0; }
.steps button { min-height: 2.75rem; font-size: 1rem; gap: .75rem; }
.primary, .secondary { border-radius: var(--control-radius); font-size: 1rem; }
.primary { min-height: 3.5rem; padding: .875rem 1.5rem; }
.text-button { min-height: 2.75rem; font-size: 1rem; white-space: normal; }
.action-bar { margin-top: var(--section-space); padding-block: 1.5rem; }
.action-bar p { max-width: 36rem; font-size: 1rem; }
.footnote { font-size: .875rem; line-height: 1.6; }
.eyebrow { font-size: .875rem; letter-spacing: .08em; }
.bag-options { gap: 1.5rem; }
.bag-card { border: 1px solid var(--line); border-radius: var(--panel-radius); padding: 1.5rem; }
.bag-card + .bag-card::before { display: none; }
.bag-card.selected { border-color: var(--input-line); }
.bag-title { font-size: clamp(1.5rem, 2.2vw, 1.875rem); gap: .875rem; }
.bag-feature { font-size: 1rem; gap: .875rem; }
.packing-layout { grid-template-columns: minmax(0, 1fr) 18rem; gap: clamp(2rem, 4vw, 3.5rem); }
.packing-aside, .contents-editor, .account-deleted-notice { border-radius: var(--panel-radius); }
.packing-aside { padding: 1.5rem; }
.packing-aside h2, .review-summary h2, .information-page h2 { font-size: 1.875rem; line-height: 1.25; }
.packing-aside p, .packing-aside > a { font-size: 1rem; }
.save-note, #account-status { font-size: .875rem; line-height: 1.6; }
.subgroup-heading h3 { font-size: 1.5rem; }
.contents-hint, .content-choice, .own-content { font-size: 1rem; }
.library-screen { padding-block: var(--section-space) 1.5rem; }
.library-intro { max-width: 48rem; margin-bottom: var(--section-space); }
.library-destination { font-size: 1rem; }
.library-controls { gap: 1.5rem; padding-block: 1.5rem; }
.library-filters button { font-size: 1rem; }
.library-search { width: 18rem; }
.library-search input, .appearance-control select, .add-content input,
.contact-form input, .contact-form textarea, .contact-form select {
  border-radius: var(--control-radius);
  font-size: 1rem;
  min-height: 3rem;
}
.library-grid { gap: 1.5rem; }
.library-card, .library-card > a { border-radius: var(--panel-radius); }
.library-card > a { display: flex; flex-direction: column; }
.library-card img { border-radius: calc(var(--panel-radius) - 1px) calc(var(--panel-radius) - 1px) 0 0; }
.library-card-copy { display: flex; flex: 1; flex-direction: column; padding: 1.5rem; }
.library-card h2 { font-size: 1.75rem; line-height: 1.25; margin: .625rem 0 1.5rem; }
.library-watch { margin-top: auto; font-size: 1rem; }
.information-page { max-width: 48rem; padding-block: var(--section-space); }
.information-page h1 { margin-bottom: 1.5rem; }
.information-page h2 { margin-block: 2rem 1rem; }
.information-page p { line-height: 1.7; }
.contact-form { max-width: none; margin-top: 2rem; padding: clamp(1.125rem, 3vw, 2rem); border-radius: var(--panel-radius); }
.contact-form h2 { margin-top: 0; }
.contact-form > label { font-size: 1rem; font-weight: 500; margin-top: 1.5rem; }
.contact-form .field-help { font-size: .875rem; }
.contact-form .secondary { min-height: 3rem; padding-inline: 1.5rem; }
.site-footer { margin-top: var(--section-space); padding-block: 1.5rem 2rem; font-size: .875rem; }
.site-footer nav { gap: .5rem 1.5rem; }
.site-footer nav a, .site-footer .text-button { display: inline-flex; align-items: center; min-height: 2.75rem; font-size: .875rem; }
.site-footer [aria-current="page"] { color: var(--ink); font-weight: 600; }
dialog:not(#statistics-choice) { padding: clamp(1.25rem, 3vw, 2rem); border-radius: var(--panel-radius); }
dialog:not(#statistics-choice) h2 { font-size: 2rem; }
@media (max-width: 1000px) {
  .header-tools { gap: 1.25rem; }
  .site-navigation { gap: 1.25rem; }
  .steps button { font-size: .875rem; white-space: normal; text-align: left; }
  .bag-card { padding: 1.125rem; }
  .bag-title { gap: .625rem; }
  .bag-feature { font-size: .875rem; }
  .packing-layout { grid-template-columns: minmax(0, 1fr) 15rem; gap: 1.75rem; }
}
@media (max-width: 760px) {
  .header-inner { padding-block: .875rem .5rem; gap: .5rem; }
  .header-tools { display: contents; }
  .site-navigation { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; font-size: .875rem; }
  .site-navigation a { justify-content: center; white-space: normal; line-height: 1.4; }
  .steps { margin-top: 1.25rem; }
  .steps ol { gap: .5rem; }
  .steps button { align-items: center; font-size: .875rem; line-height: 1.4; text-align: center; }
  .step-number { width: 2rem; height: 2rem; font-size: .875rem; }
  .heading-row > .text-button { margin-top: 1rem; }
  .bag-card { grid-template-columns: 6rem minmax(0, 1fr); gap: .25rem 1rem; padding: 1rem; }
  .bag-image { width: 6rem; height: auto; }
  .bag-title { font-size: 1.5rem; }
  .bag-feature { font-size: .875rem; gap: .5rem; }
  .action-bar { gap: 1.25rem; }
  .packing-layout { gap: 1.5rem; }
  .packing-aside .chosen-image { width: 5.5rem; height: auto; }
  .library-controls { gap: 1.25rem; }
  .library-filters button { padding: .625rem .875rem; font-size: .875rem; }
  .library-search { width: 100%; }
  .library-card-copy { padding: 1.25rem; }
  .information-page { font-size: 1rem; }
  .information-page h2, .contact-form h2 { font-size: 1.75rem; }
  .contact-form .secondary { width: 100%; }
}
@media (max-width: 360px) {
  .bag-card { grid-template-columns: 4.5rem minmax(0, 1fr); gap: .25rem .75rem; padding: .875rem; }
  .bag-image { width: 4.5rem; }
  .bag-title { font-size: 1.375rem; }
}
