@font-face{font-family:Pretendard;src:url('/assets/PretendardVariable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{font-family:Pretendard,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#18202e;background:#f7f8fb;font-size:16px;--blue:#3155f5;--ink:#18202e;--muted:#667084;--line:#e4e8ef;--soft:#edf1ff}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #3155f5;outline-offset:4px}input{min-width:0}input[type=checkbox],input[type=radio]{accent-color:var(--blue)}.site-header{background:#fff;border-bottom:1px solid var(--line)}.header-inner{max-width:1216px;margin:auto;padding:22px 32px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:9px;align-items:center;text-decoration:none;font-size:29px;font-weight:850;letter-spacing:-1.3px}.brand-symbol{width:31px;height:33px;display:grid;place-items:center;border-radius:10px;background:var(--blue);color:#fff;font-size:23px}.brand-en{font-size:12px;letter-spacing:1.8px;color:#667084;margin-left:5px;font-weight:650}.text-button{border:0;background:none;font-size:14px;font-weight:600;color:#4d5869;padding:10px 0}.text-button span{margin-left:12px}.shell{max-width:1216px;margin:auto;padding:44px 32px 0}.intro{margin-bottom:32px}.eyebrow{font-size:12px;color:var(--blue);letter-spacing:1.6px;font-weight:750;margin:0 0 13px}h1{font-size:36px;font-weight:780;letter-spacing:-1.6px;margin:0;line-height:1.45;word-break:keep-all}.intro-copy{font-size:16px;color:var(--muted);line-height:1.7;margin:10px 0 0}.mobile-break{display:none}.workspace{display:grid;grid-template-columns:minmax(350px,.88fr) minmax(0,1.12fr);gap:28px;align-items:start}.planner{background:white;border:1px solid var(--line);border-radius:22px;padding:30px}.section-heading{display:flex;align-items:center;gap:12px;margin-bottom:28px}h2{font-size:21px;letter-spacing:-.6px;line-height:1.5;margin:0}.step{color:var(--blue);font-size:14px;font-weight:750;letter-spacing:.4px}fieldset{border:0;margin:0 0 25px;padding:0;min-width:0}legend{padding:0;margin-bottom:11px;font-size:15px;font-weight:700;width:100%;line-height:1.6}.optional{font-weight:400;color:var(--muted);font-size:12px;margin-left:6px}.segmented{display:flex;background:#f1f3f7;padding:4px;border-radius:11px;margin-bottom:12px}.segmented label{flex:1;position:relative}.segmented input,.chips input{position:absolute;opacity:0;width:1px;height:1px}.segmented span{display:block;padding:10px;text-align:center;font-size:14px;font-weight:600;color:#667084;border-radius:8px}.segmented input:checked+span{background:#fff;color:var(--blue);box-shadow:0 2px 5px #18202e0c}.segmented input:focus-visible+span,.chips input:focus-visible+span{outline:3px solid var(--blue);outline-offset:3px}input[type=text],input[type=date],input[type=number]{border:1px solid #dce1ea;background:#fff;color:var(--ink);border-radius:10px;padding:13px 14px;min-height:46px}input[type=text]{width:100%;font-size:15px}input::placeholder{color:#7a8495}.quick-picks{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.quick-picks button{padding:6px 13px;border:0;border-radius:7px;font-size:13px;color:#697388;background:#f4f6f9}.quick-picks button:hover{background:var(--soft);color:var(--blue)}.date-row{display:flex;align-items:end;gap:10px}.date-row label{flex:1;min-width:0;font-size:13px;color:var(--muted)}.date-row input{width:100%;padding:11px 8px;font-size:14px;margin-top:6px;min-width:0}.date-dash{align-self:end;margin-bottom:13px;color:#919aa9}.chips{display:flex;gap:8px;flex-wrap:wrap}.chips label{position:relative;cursor:pointer}.chips span{display:block;border:1px solid var(--line);border-radius:9px;padding:10px 13px;font-size:14px;color:#566174;transition:background .15s,border-color .15s}.chips input:checked+span{color:#2447d9;background:var(--soft);border-color:#b6c4ff;font-weight:600}.field-hint{font-size:12px;line-height:1.6;color:var(--muted);margin:10px 0 0}.laundry{display:flex;align-items:center;gap:8px;font-size:14px;margin:-2px 0 25px}.laundry input{width:17px;height:17px}.primary-button{background:var(--blue);color:#fff;border:0;border-radius:11px;min-height:52px;padding:15px 19px;width:100%;font-size:16px;font-weight:650;display:flex;justify-content:space-between;align-items:center;box-shadow:0 5px 14px #3155f522}.primary-button:hover{background:#2245e0}.form-footnote{text-align:center;color:var(--muted);font-size:12px;margin:13px 0 0}.travel-note{height:220px;overflow:hidden;position:relative;border-radius:22px;background:#144683}.travel-note img{width:100%;height:100%;object-fit:cover;object-position:center 57%;display:block}.travel-note:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#032b62b0,#032b6200)}.travel-note-copy{position:absolute;top:34px;left:30px;color:white;z-index:1}.travel-note-copy span{font-size:10px;letter-spacing:1.8px;font-weight:650}.travel-note-copy p{font-size:28px;line-height:1.5;font-weight:650;letter-spacing:-1px;margin:14px 0 0}.photo-credit{position:absolute;z-index:1;right:12px;bottom:10px;font-size:10px;color:white;text-decoration:none;background:#071a3a70;padding:4px 7px;border-radius:4px}.result-content{margin-top:22px;border:1px solid var(--line);border-radius:22px;background:#fff;overflow:hidden;min-height:400px}.empty-state{text-align:center;padding:55px 24px}.empty-mark{display:grid;place-items:center;width:60px;height:60px;margin:0 auto 24px;border:1px solid #cad4ff;color:var(--blue);border-radius:19px;font-size:29px;background:var(--soft);transform:rotate(-6deg)}.empty-state h2{font-size:28px;line-height:1.5;letter-spacing:-1px}.empty-state>p:not(.eyebrow){color:var(--muted);font-size:15px;line-height:1.8;margin:16px 0 28px}.empty-features{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;font-size:12px;color:#59667a}.empty-features span:before{content:'✓';color:var(--blue);margin-right:5px}.site-footer{padding:29px 0;margin-top:35px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px}.site-footer>div{display:flex;align-items:center;gap:14px}.site-footer strong{font-size:20px;letter-spacing:-1px}.site-footer span{font-size:12px;color:var(--muted)}.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}.error{color:#b22c32;background:#fff0f0;padding:12px;border-radius:8px;font-size:14px;line-height:1.6}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#18202e;color:white;border-radius:12px;padding:14px 20px;z-index:10;box-shadow:0 8px 30px #0002;font-size:14px;max-width:calc(100% - 32px);width:max-content}.toast[hidden]{display:none}dialog{border:1px solid var(--line);border-radius:20px;padding:28px;width:calc(100% - 32px);max-width:520px;color:var(--ink)}dialog::backdrop{background:#12203a66}.dialog-heading{display:flex;align-items:start;justify-content:space-between;gap:20px}dialog p{font-size:15px;line-height:1.8;color:var(--muted)}.icon-button{min-width:32px;min-height:32px;border:0;background:transparent;font-size:23px;color:#667084;border-radius:8px}.outline-button{background:#fff;color:#34405a;border:1px solid #dce1ea;border-radius:9px;min-height:40px;padding:9px 13px;font-size:14px}.outline-button:hover{background:#f3f5fa}
@media(min-width:1500px){.shell{padding-top:54px}.intro{margin-bottom:40px}}
@media(max-width:900px){.header-inner{padding:19px 22px}.shell{padding:30px 22px 0}.workspace{gap:18px;grid-template-columns:minmax(320px,1fr) minmax(0,1fr)}.planner{padding:24px}.travel-note-copy{left:23px}.travel-note-copy p{font-size:25px}h1{font-size:30px}.date-row{gap:6px}.optional{display:block;margin-left:0}}
@media(max-width:700px){.header-inner{padding:17px 20px}.brand{font-size:26px}.brand-en{font-size:10px}.shell{padding:28px 16px 0}.intro{padding:0 4px;margin-bottom:25px}.intro h1{font-size:29px;letter-spacing:-1.1px}.mobile-break{display:block}.intro-copy{font-size:15px;max-width:300px}.eyebrow{font-size:10px;letter-spacing:1.4px}.workspace{grid-template-columns:1fr;gap:24px}.planner{padding:25px 21px;border-radius:18px}.optional{display:inline;margin-left:5px}.travel-note{height:180px;border-radius:18px}.travel-note-copy{top:27px}.travel-note-copy p{font-size:25px}.result-content{border-radius:18px;margin-top:18px}.site-footer{align-items:start;flex-direction:column;gap:10px;padding:23px 4px}.site-footer>div{align-items:start;flex-direction:column;gap:8px}.empty-state{padding:40px 20px}.date-row input{font-size:15px}.field-hint{font-size:13px}.form-footnote{font-size:13px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.list-header{padding:27px 28px 20px}.list-eyebrow{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;color:var(--blue);font-size:10px;letter-spacing:1.2px;font-weight:750}.save-state{color:#667084;letter-spacing:0;font-weight:400;font-size:12px}.list-header h2{font-size:26px;word-break:keep-all;overflow-wrap:anywhere}.trip-meta{color:var(--muted);font-size:13px;margin:10px 0 24px;line-height:1.7}.trip-meta>span{margin:0 6px}.progress-copy{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:14px;margin-bottom:12px}.progress-copy strong{font-weight:600}.progress-copy>span{color:var(--blue);font-weight:750;white-space:nowrap}.progress-total{color:#949dac;font-weight:450}progress{display:block;width:100%;height:7px;border:0;border-radius:8px;background:#edf0f7;overflow:hidden;accent-color:var(--blue)}progress::-webkit-progress-bar{background:#edf0f7;border-radius:8px}progress::-webkit-progress-value{background:var(--blue);border-radius:8px}progress::-moz-progress-bar{background:var(--blue);border-radius:8px}.quantity-note{font-size:12px;color:var(--muted);line-height:1.6;margin:12px 0 0}.list-toolbar{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:13px 28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap}.filter-buttons{display:flex;gap:6px}.filter-buttons button{font-size:13px;background:none;border:0;padding:7px 9px;border-radius:7px;color:#667084}.filter-buttons button[aria-pressed=true]{background:var(--soft);color:var(--blue);font-weight:650}.export-buttons{display:flex;gap:15px}.export-buttons button{font-size:12px}.packing-groups{padding:5px 28px 0}.packing-group{margin:20px 0}.packing-group h3{margin:0 0 12px;font-size:15px;display:flex;gap:8px;align-items:center}.packing-group h3>span{font-size:12px;color:#8390a5;font-weight:500}.packing-item{padding:13px 0;border-bottom:1px solid #eef0f5}.packing-item:last-child{border-bottom:0}.item-main{display:flex;gap:8px;align-items:center}.check-label{display:flex;align-items:center;gap:10px;flex:1;cursor:pointer;font-size:15px;line-height:1.6;min-width:0;overflow-wrap:anywhere}.check-label input{width:18px;height:18px;flex-shrink:0;margin:0}.is-checked .check-label span{text-decoration:line-through;color:#939dad}.quantity{display:flex;align-items:center;gap:4px;font-size:12px;color:#737f92;flex-shrink:0}.quantity input{padding:4px!important;min-height:31px!important;width:44px;font-size:13px;text-align:center;border-color:#e5e9f0!important;border-radius:6px!important}.remove-item{background:none;border:0;min-width:28px;min-height:32px;color:#949dac;font-size:19px}.remove-item:hover{color:#bb303a}.item-reason{font-size:12px;line-height:1.7;color:#778297;margin:5px 32px 0 28px;word-break:keep-all;overflow-wrap:anywhere}.add-item-form{margin:20px 28px 22px;padding-top:20px;border-top:1px solid var(--line)}.add-item-form>label{font-size:14px;font-weight:650;display:block;margin-bottom:11px}.add-item-form>div{display:flex;gap:8px}.add-item-form input{min-width:0;flex:1;border:1px solid #dce1ea;border-radius:8px;padding:11px;font:inherit;font-size:14px}.add-item-form button{flex-shrink:0}.list-disclaimer{font-size:12px;line-height:1.8;background:#f7f9fc;color:#778297;margin:0;padding:18px 28px}.list-empty{font-size:15px;text-align:center;color:var(--muted);padding:38px 8px}#result-title:focus{outline:none}
@media(max-width:900px){.list-header{padding:23px 20px 18px}.list-eyebrow{flex-wrap:wrap;row-gap:6px}.list-header h2{font-size:23px}.packing-groups{padding:5px 20px 0}.list-toolbar{padding:12px 20px}.add-item-form{margin:20px}.item-reason{margin-right:0}.progress-copy{font-size:13px}.quantity-note{font-size:12px}}
@media(max-width:700px){.list-eyebrow{font-size:10px}.list-header h2{font-size:25px}.packing-group h3{font-size:16px}.item-reason,.quantity-note,.list-disclaimer{font-size:13px}.export-buttons button,.filter-buttons button{font-size:13px}.list-header{padding:25px 21px 20px}.packing-groups{padding:5px 21px 0}.packing-item{padding:16px 0}.check-label input{width:20px;height:20px}.list-toolbar{padding:12px 21px}.quantity input{min-height:36px!important}.remove-item{min-height:38px}.list-disclaimer{padding:18px 21px}}
@media print{body{background:white;color:black}.site-header,.intro,.planner,.travel-note,.site-footer,.list-toolbar,.add-item-form,.list-disclaimer,.toast,dialog,.remove-item,.save-state{display:none!important}.shell{padding:0;max-width:none}.workspace{display:block}.result-content{margin:0;border:0;overflow:visible}.list-header{padding:0 0 15px}.packing-groups{padding:0}.packing-item{break-inside:avoid;padding:7px 0}.packing-group h3{break-after:avoid}.quantity input{border:0!important;appearance:textfield}.quantity input::-webkit-inner-spin-button{display:none}.is-checked .check-label span{color:#555}progress{print-color-adjust:exact}.packing-group{margin:15px 0}.item-reason{font-size:10px}.check-label{font-size:12px}.quantity-note,.trip-meta{font-size:11px}}

/* Clearer labels, bigger touch targets, compact explanations. */
.destination-label{display:block;font-size:14px;font-weight:650;margin:17px 0 9px}.destination-label .optional{display:inline;margin-left:5px}.duration-presets{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:15px}.duration-presets button{border:1px solid var(--line);background:white;color:#48546b;padding:10px 11px;min-height:44px;border-radius:9px;font-size:14px}.duration-presets button[aria-pressed=true]{background:var(--soft);border-color:#b6c4ff;color:#2447d9;font-weight:650}.duration-custom{display:flex;gap:9px;align-items:center;font-size:14px}.duration-custom label{margin-right:auto;color:#566174}.duration-custom input{width:65px;padding:10px!important;min-height:44px!important;text-align:center}.duration-custom output{font-weight:650;color:var(--blue);min-width:70px}.field-hint,.form-footnote,.quantity-note{font-size:13px;color:#5e6b80}.check-label{min-height:44px;font-size:16px}.check-label input{width:22px;height:22px}.quantity input{min-height:40px!important;width:48px;font-size:14px}.remove-item{min-width:40px;min-height:44px;font-size:22px}.item-reason{color:#5e6b80;font-size:13px;margin:3px 0 0 32px}.item-reason summary{cursor:pointer;width:fit-content;padding:6px 0}.item-reason p{margin:3px 0 8px;line-height:1.8}.packing-item{padding:9px 0}.chips span{min-height:44px}.quick-picks button{min-height:40px;font-size:14px}.filter-buttons button,.export-buttons button{min-height:42px;font-size:14px}.list-toolbar{position:sticky;top:0;background:white;z-index:2}.brand-en{display:none}.brand{letter-spacing:-1.5px}.intro h1{font-size:34px}#mobile-list-button{display:none}.list-header,.result-content{scroll-margin-top:20px}
@media(max-width:700px){.intro h1{font-size:28px}.brand{font-size:26px}.site-footer{padding-bottom:85px}.duration-presets{gap:6px}.duration-presets button{flex:1;padding:10px 7px}.item-main{gap:5px}.quantity input{width:42px}.remove-item{min-width:34px}.item-reason{margin-left:32px}.save-state{font-size:12px}#mobile-list-button:not([hidden]){display:flex;align-items:center;justify-content:space-between;position:fixed;bottom:16px;left:20px;right:20px;z-index:5;background:#2447d9;color:white;border:0;border-radius:12px;min-height:48px;padding:12px 18px;font-size:15px;font-weight:650;box-shadow:0 5px 20px #17285830}.toast{bottom:80px}}
@media print{#mobile-list-button{display:none!important}.item-reason{display:none}.list-toolbar{display:none!important}.check-label{min-height:24px}.packing-item{padding:4px 0}}

.customize{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 0 20px}.customize>summary{padding:17px 0;font-size:15px;font-weight:650;cursor:pointer}.customize>summary>span{display:block;font-size:13px;font-weight:400;color:#667084;margin:6px 0 0 17px}.customize-content{padding:8px 0 20px}.optional-destination .destination-label{margin-top:0}.intro{margin-bottom:25px}.shell{padding-top:30px}.section-heading{margin-bottom:22px}.travel-note{height:185px}.empty-state{padding:32px 24px}.empty-state h2{font-size:25px}.result-content{min-height:0}.has-list .travel-note{height:110px}.has-list .travel-note-copy{top:18px}.has-list .travel-note-copy p{font-size:20px;margin-top:8px}.has-list .travel-note-copy p br{display:none}.has-list .travel-note-copy>span{display:none}.export-buttons{flex-wrap:wrap;gap:10px}.list-toolbar{row-gap:5px}.packing-guide{margin-top:42px;padding-top:30px;border-top:1px solid var(--line)}.packing-guide h2{font-size:22px;margin-bottom:18px}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-bottom:35px}.guide-grid h3{font-size:16px;line-height:1.6;margin:0 0 8px}.packing-guide p{font-size:14px;line-height:1.9;color:#566174;margin:0 0 15px;word-break:keep-all}.packing-guide>details{border-bottom:1px solid var(--line);padding:15px 0}.packing-guide>details summary{font-size:15px;font-weight:600;cursor:pointer;padding:5px 0}.packing-guide>details p{margin:12px 0 3px}.intro-copy{max-width:620px}
@media(max-width:700px){.shell{padding-top:22px}.intro{margin-bottom:18px}.intro h1{font-size:27px}.intro-copy{max-width:none;font-size:14px}.eyebrow{margin-bottom:8px}.planner{padding:21px}.section-heading{margin-bottom:18px}.has-list .travel-note{display:none}.has-list .result-content{margin-top:0}.guide-grid{grid-template-columns:1fr;gap:8px}.packing-guide{margin-top:30px;padding:25px 5px 0}.packing-guide h2{font-size:20px}.packing-guide>details summary{font-size:15px}.export-buttons{gap:14px}.list-toolbar{position:static}.customize>summary{padding:13px 0}}
@media print{.packing-guide{display:none!important}}
