:root{--navy:#102f54;--navy-80:#2b4a70;--teal:#00acb8;--teal-dark:#00838c;--teal-50:#e8f7f8;--ink:#17212e;--muted:#5b6675;--faint:#8a94a1;--line:#e5e9ee;--soft:#f5f7f9;--bg:#f7f5f0;--warn:#9a5b00;--warn-bg:#fff6e5;--danger:#b42318;--danger-bg:#fdecea;--ok:#0f7a55;--ok-bg:#e7f6ef;--radius:14px;--radius-sm:10px;--tap:44px}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Pretendard,Noto Sans KR,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden;word-break:keep-all}a{color:inherit;text-decoration:none}button{cursor:pointer}button,input,select,textarea{font:inherit;color:inherit}img{max-width:100%;display:block}h1,h2,h3,h4{margin:0;line-height:1.3}p{margin:0}.container{width:100%;max-width:1080px;margin:0 auto;padding:0 16px}.page{padding-top:12px;padding-bottom:104px;min-height:calc(100vh - 60px)}.stack{gap:12px}.stack,.stack-lg{display:flex;flex-direction:column}.stack-lg{gap:24px}.row{display:flex;align-items:center;gap:8px}.row-wrap{display:flex;flex-wrap:wrap;gap:6px}.between{display:flex;align-items:center;justify-content:space-between;gap:12px}.grow{flex:1 1;min-width:0}.muted{color:var(--muted)}.faint{color:var(--faint)}.small{font-size:14px}.xs{font-size:13px}.bold{font-weight:700}.center{text-align:center}.hide-mobile{display:none}.header{position:-webkit-sticky;position:sticky;top:0;z-index:30;background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.header-inner{height:56px;display:flex;align-items:center;justify-content:space-between;gap:12px}.header-logo img{height:30px;width:auto}.header-nav{display:none;gap:4px}.header-nav a{padding:8px 12px;border-radius:999px;font-size:15px;color:var(--muted);font-weight:600}.header-nav a.active{color:var(--navy);background:var(--teal-50)}.back-btn{min-height:var(--tap);padding:0 8px 0 0;border:0;background:none;display:inline-flex;align-items:center;gap:4px;font-weight:600;color:var(--navy)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:40;background:#fff;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(2,1fr);padding-bottom:env(safe-area-inset-bottom)}.bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:58px;font-size:12px;font-weight:600;color:var(--faint)}.bottom-nav a.active{color:var(--navy)}.bottom-nav svg{width:22px;height:22px}@media (min-width:900px){.header-nav{display:flex}.bottom-nav{display:none}.page{padding-bottom:48px;padding-top:24px}.hide-mobile{display:initial}.hide-desktop{display:none!important}}.btn{min-height:var(--tap);padding:0 18px;border-radius:12px;border:1px solid var(--line);background:#fff;font-weight:700;font-size:15px;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:background .15s,border-color .15s}.btn:hover{border-color:#cfd6de}.btn-primary{background:var(--navy);border-color:var(--navy);color:#fff}.btn-primary:hover{background:var(--navy-80);border-color:var(--navy-80)}.btn-teal{background:var(--teal);border-color:var(--teal);color:#fff}.btn-teal:hover{background:var(--teal-dark);border-color:var(--teal-dark)}.btn-ghost{background:transparent;border-color:transparent;color:var(--navy)}.btn-soft{background:var(--teal-50);border-color:var(--teal-50);color:var(--teal-dark)}.btn-danger{color:var(--danger)}.btn-block{width:100%}.btn-lg{min-height:52px;font-size:16px;border-radius:14px}.btn-sm{min-height:36px;padding:0 12px;font-size:14px;border-radius:10px}.btn:disabled{opacity:.45;cursor:not-allowed}.icon-btn{width:var(--tap);height:var(--tap);border-radius:12px;border:1px solid var(--line);background:#fff;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.icon-btn.on{color:#e0a100;border-color:#f3dd9b;background:#fffaeb}.sticky-cta{position:-webkit-sticky;position:sticky;bottom:70px;z-index:20;padding:12px 0;background:linear-gradient(0deg,#fff 70%,rgba(255,255,255,0))}@media (min-width:900px){.sticky-cta{bottom:0}}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:16px}.card-soft{background:var(--soft);border:0;border-radius:var(--radius);padding:16px}.card-btn{width:100%;text-align:left;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:16px;display:block}.card-btn:hover{border-color:#cfd6de}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:6px;font-size:12px;font-weight:700;letter-spacing:.02em;white-space:nowrap}.badge-demo{background:var(--warn-bg);color:var(--warn)}.badge-premium{background:var(--navy);color:#fff}.badge-free{background:var(--teal-50);color:var(--teal-dark)}.badge-muted{background:var(--soft);color:var(--muted)}.badge-ok{background:var(--ok-bg);color:var(--ok)}.badge-warn{background:var(--warn-bg);color:var(--warn)}.chip{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:999px;background:var(--soft);font-size:14px;color:var(--ink);white-space:nowrap}.chip svg{width:15px;height:15px;color:var(--muted)}.chip-unknown{color:var(--faint);background:#fff;border:1px dashed var(--line)}.chip-ok{background:var(--ok-bg)}.chip-ok,.chip-ok svg{color:var(--ok)}.chip-no{background:#fff;border:1px solid var(--line);color:var(--muted)}.chip-teal{background:var(--teal-50);color:var(--teal-dark)}.toggle-chip{min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:15px;font-weight:600;color:var(--muted)}.toggle-chip.on{border-color:var(--navy);background:var(--navy);color:#fff}.seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;background:var(--soft);border-radius:12px;padding:4px;grid-gap:4px;gap:4px}.seg button{min-height:40px;border:0;border-radius:9px;background:transparent;font-weight:700;font-size:15px;color:var(--muted);padding:0 6px}.seg button.on{background:#fff;color:var(--navy);box-shadow:0 1px 2px rgba(16,47,84,.12)}.dots{display:inline-flex;gap:3px;vertical-align:middle}.dots i{width:8px;height:8px;border-radius:50%;background:var(--line);display:block}.dots i.on{background:var(--teal)}.dots.fatigue i.on{background:#e58a3a}.field{display:flex;flex-direction:column;gap:6px}.label{font-size:14px;font-weight:700;color:var(--muted)}.input{min-height:48px;padding:0 14px;border-radius:12px;border:1px solid var(--line);background:#fff;width:100%;font-size:16px}.input:focus{outline:2px solid var(--teal);outline-offset:-1px}.grid-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.stepper{justify-content:space-between;min-height:52px}.stepper,.stepper .ctrl{display:flex;align-items:center}.stepper .ctrl{gap:12px}.stepper .ctrl span{min-width:22px;text-align:center;font-weight:700;font-size:17px}.check{display:flex;align-items:center;gap:10px;min-height:44px;font-size:15px}.check input{width:20px;height:20px;accent-color:var(--navy)}.section-title{font-size:18px;font-weight:800;color:var(--ink)}.form-section{display:flex;flex-direction:column;gap:12px;padding:20px 0;border-bottom:1px solid var(--line)}.hero{padding:20px 0 8px}.hero h1{font-size:28px;font-weight:800;color:var(--navy);letter-spacing:-.02em}.hero p{margin-top:6px;color:var(--muted)}.cta-grid{display:grid;grid-gap:10px;gap:10px}.cta-main{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px;border-radius:var(--radius);background:var(--navy);color:#fff}.cta-main .t{font-size:18px;font-weight:800}.cta-main .s{font-size:14px;opacity:.8}.cta-sub{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;border-radius:var(--radius);border:1px solid var(--line);background:#fff}.cta-sub .t{font-weight:700}.h-scroll{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;margin:0 -16px;padding-left:16px;padding-right:16px;scrollbar-width:none}.h-scroll::-webkit-scrollbar{display:none}.mini-dest{flex:0 0 72%;max-width:280px;scroll-snap-align:start;border-radius:var(--radius);border:1px solid var(--line);overflow:hidden;background:#fff;text-align:left;padding:0}.mini-dest .img{height:120px;display:flex;align-items:flex-end;padding:12px}.mini-dest .img b{font-size:24px;color:var(--navy);letter-spacing:-.02em}.mini-dest .body{padding:12px}.theme-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.theme{padding:14px;border-radius:var(--radius);background:var(--soft);text-align:left;border:0;min-height:76px}.theme b{display:block;font-size:15px}.theme span{font-size:13px;color:var(--muted)}@media (min-width:900px){.home-grid{display:grid;grid-template-columns:1.1fr 1fr;grid-gap:32px;gap:32px;align-items:start}.hero h1{font-size:36px}.cta-grid{grid-template-columns:1fr}.theme-grid{grid-template-columns:repeat(4,1fr)}.h-scroll{overflow:visible;flex-wrap:wrap;margin:0;padding:0}.mini-dest{flex-grow:0;flex-shrink:0;flex-basis:calc(33.33% - 8px);max-width:none}}.flip-wrap{perspective:1400px}.flip{position:relative;width:100%;min-height:470px;transition:transform .55s cubic-bezier(.2,.7,.2,1);transform-style:preserve-3d}.flip.flipped{transform:rotateY(180deg)}.flip-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden;display:flex;flex-direction:column}.flip-back{transform:rotateY(180deg);padding:18px;gap:14px;overflow-y:auto}.dest-img{height:190px;position:relative;padding:16px;display:flex;flex-direction:column;justify-content:flex-end}.dest-img .nm{font-size:32px;font-weight:800;color:var(--navy);letter-spacing:-.02em;line-height:1.1}.dest-img .en{color:var(--navy-80);font-weight:600}.dest-img .tl{position:absolute;top:12px;left:12px;right:12px;display:flex;justify-content:space-between}.dest-img .ph{position:absolute;right:16px;bottom:14px;font-size:12px;color:var(--navy-80);opacity:.6}.dest-body{padding:16px;display:flex;flex-direction:column;gap:12px;flex:1 1}.reason{font-size:17px;font-weight:700;color:var(--ink)}.kv{display:grid;grid-template-columns:84px 1fr;grid-gap:6px 10px;gap:6px 10px;font-size:14px}.kv dt{color:var(--muted)}.kv dd{margin:0}.flip-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px}.progress-dots{display:flex;gap:6px;justify-content:center}.progress-dots i{width:7px;height:7px;border-radius:50%;background:var(--line)}.progress-dots i.on{background:var(--navy);width:18px;border-radius:4px}.flip-anim{animation:flipIn .42s ease}@keyframes flipIn{0%{transform:rotateY(-25deg) translateX(20px);opacity:0}to{transform:none;opacity:1}}@media (min-width:900px){.discover-layout{display:grid;grid-template-columns:420px 1fr;grid-gap:32px;gap:32px;align-items:start}}.crumbs{display:flex;flex-wrap:wrap;gap:4px;align-items:center;font-size:14px;color:var(--muted)}.crumbs button{border:0;background:none;padding:6px 4px;color:var(--teal-dark);font-weight:600}.list-btn{width:100%;min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;text-align:left}.trip-head{padding:4px 0 12px}.trip-head h1{font-size:22px;font-weight:800}.tabs{position:-webkit-sticky;position:sticky;top:56px;z-index:25;background:#fff;display:flex;border-bottom:1px solid var(--line);margin:0 -16px;padding:0 16px}.tabs button{flex:1 1;min-height:48px;border:0;background:none;font-weight:700;font-size:16px;color:var(--faint);border-bottom:2px solid transparent}.tabs button.on{color:var(--navy);border-bottom-color:var(--navy)}.tabs button:disabled{cursor:not-allowed}.day-pills{display:flex;gap:8px;overflow-x:auto;padding:12px 0 4px;scrollbar-width:none}.day-pills::-webkit-scrollbar{display:none}.day-pill{flex:0 0 auto;min-width:64px;min-height:52px;border-radius:12px;border:1px solid var(--line);background:#fff;padding:6px 12px;text-align:center}.day-pill b{display:block;font-size:15px}.day-pill span{display:block;font-size:12px;color:var(--muted)}.day-pill.on{background:var(--navy);border-color:var(--navy);color:#fff}.day-pill.on span{color:rgba(255,255,255,.75)}.day-head{padding:16px 0 8px}.day-head .dn{font-size:30px;font-weight:800;color:var(--navy);letter-spacing:-.02em}.day-head .dt{font-size:15px;color:var(--muted);font-weight:600}.weather{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border-radius:12px;background:var(--soft);font-size:14px}.weather.rain{background:#eaf2fb}.banner{padding:14px;border-radius:12px;display:flex;flex-direction:column;gap:10px}.banner-info{background:#eaf2fb;color:#1d3b5f}.banner-warn{background:var(--warn-bg);color:#6b4300}.banner-ok{background:var(--ok-bg);color:#0d5a3f}.timeline{display:flex;flex-direction:column}.tl-item{display:grid;grid-template-columns:54px 1fr;grid-gap:10px;gap:10px}.tl-time{padding-top:14px;font-size:14px;font-weight:700;color:var(--navy);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tl-time small{display:block;font-weight:500;color:var(--faint);font-size:12px}.tl-conn{display:grid;grid-template-columns:54px 1fr;grid-gap:10px;gap:10px}.tl-conn .line{display:flex;justify-content:center}.tl-conn .line i{width:2px;background:var(--line);min-height:34px}.tl-conn .txt{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted);padding:6px 0;flex-wrap:wrap}.it-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:hidden}.it-card.meal{border-left:4px solid #f0a35e}.it-card.place{border-left:4px solid var(--teal)}.it-card.rest{border-left:4px solid #a9b6c6;background:#fafbfc}.it-card.booked{border-left:4px solid var(--navy)}.it-card.fav{box-shadow:inset 0 0 0 1px #f3dd9b}.it-main{width:100%;text-align:left;background:none;border:0;padding:14px;display:flex;flex-direction:column;gap:8px}.it-title{font-size:17px;font-weight:800;color:var(--ink)}.it-sub{font-size:14px;color:var(--muted)}.it-reason{font-size:13px;color:var(--teal-dark);font-weight:600}.it-actions{display:flex;gap:6px;padding:0 14px 14px;flex-wrap:wrap}.hotel-row{padding:10px 0;display:flex;align-items:center;gap:8px;font-weight:700;color:var(--navy);font-size:15px}.gap-card{border:1.5px dashed #b9c4d0;border-radius:var(--radius);padding:14px;display:flex;flex-direction:column;gap:10px;background:#fbfcfd}.idle{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border-radius:10px;background:var(--teal-50);font-size:14px;color:var(--teal-dark)}.pcard{border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:hidden}.pcard-top{display:flex;gap:12px;padding:14px;width:100%;text-align:left;background:none;border:0}.pcard-thumb{width:64px;height:64px;border-radius:12px;background:var(--teal-50);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--teal-dark)}.pcard-thumb.r{background:#fdf0e3;color:#b8651b}.pcard-thumb svg{width:28px;height:28px}.pcard-name{font-size:17px;font-weight:800}.pcard-en{font-size:13px;color:var(--faint)}.pcard-detail{border-top:1px solid var(--line);padding:14px;display:flex;flex-direction:column;gap:12px;background:#fcfdfd}.attr-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.attr{padding:10px;border-radius:10px;background:#fff;border:1px solid var(--line)}.attr .k{font-size:12px;color:var(--muted)}.attr .v{font-size:14px;font-weight:700}.attr .v.unknown{color:var(--faint);font-weight:600}.cards-grid{display:grid;grid-gap:12px;gap:12px}@media (min-width:700px){.cards-grid{grid-template-columns:1fr 1fr}}@media (min-width:900px){.trip-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;grid-gap:28px;gap:28px;align-items:start}.trip-side{position:-webkit-sticky;position:sticky;top:120px}.tabs{margin:0;padding:0}}.sheet-backdrop{position:fixed;inset:0;background:rgba(16,27,40,.45);z-index:60;display:flex;align-items:flex-end;justify-content:center;animation:fade .15s}.sheet{max-height:88vh;overflow-y:auto;border-radius:20px 20px 0 0;padding:8px 16px calc(20px + env(safe-area-inset-bottom));animation:up .2s ease}.sheet-grip{width:40px;height:4px;border-radius:4px;background:var(--line);margin:6px auto 12px}@media (min-width:900px){.sheet-backdrop{align-items:center}.sheet{border-radius:20px;padding-bottom:20px}}@keyframes up{0%{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}@keyframes fade{0%{opacity:0}to{opacity:1}}.toast{position:fixed;left:16px;right:16px;bottom:84px;z-index:80;max-width:520px;margin:0 auto;background:var(--ink);color:#fff;padding:14px 16px;border-radius:12px;font-size:14px;animation:up .2s}@media (min-width:900px){.toast{bottom:24px}}.empty{text-align:center;padding:40px 16px;flex-direction:column;gap:10px}.empty,.empty .ico{display:flex;align-items:center}.empty .ico{width:56px;height:56px;border-radius:16px;background:var(--soft);justify-content:center;color:var(--faint)}.demo-note{font-size:13px;color:var(--warn);background:var(--warn-bg);padding:8px 12px;border-radius:10px}.plan-table{width:100%;border-collapse:collapse;font-size:14px}.plan-table td,.plan-table th{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.plan-table th{color:var(--muted);font-weight:600}.desktop-flex{display:none!important}@media (min-width:900px){.desktop-flex{display:flex!important}}.icon-btn.sm{width:38px;height:38px}.act,.icon-btn.sm{border-radius:10px}.act{min-height:38px;padding:0 10px;border:1px solid var(--line);background:#fff;font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:4px;color:var(--ink)}.act.danger{color:var(--danger)}@media (max-width:380px){.tl-conn,.tl-item{grid-template-columns:46px 1fr}}.dest-img{flex-shrink:0;height:170px}.flip{min-height:590px}.dest-img .tl{align-items:flex-start}.q-block{display:flex;flex-direction:column;gap:10px;padding:16px 0;border-bottom:1px solid var(--line)}.q-block h2{font-size:17px;font-weight:800}.chips{display:flex;flex-wrap:wrap;gap:8px}.chips .toggle-chip{min-height:38px;padding:0 13px;font-size:14px}.seg.sm button{min-height:36px;font-size:14px}.plane-overlay{position:fixed;inset:0;z-index:100;background:linear-gradient(160deg,#102f54,#00838c);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px}.plane-orbit{position:relative;width:150px;height:150px;border-radius:50%;border:2px dashed rgba(255,255,255,.35);animation:orbit 1.4s linear infinite}.plane-orbit .plane{position:absolute;top:-18px;left:calc(50% - 18px);transform:rotate(90deg)}.plane-overlay .globe{position:absolute;font-size:44px}@keyframes orbit{to{transform:rotate(1turn)}}.plane-overlay p{font-weight:700;font-size:17px;opacity:.95}.rank-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:16px;text-align:left;width:100%}.rank-card.first{border:2px solid var(--teal);box-shadow:0 6px 20px rgba(0,172,184,.15)}.rank-num{min-width:42px;height:42px;border-radius:12px;background:var(--navy);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:15px}.rank-score{font-size:32px;font-weight:900;color:var(--navy);line-height:1}.reason-list{margin:0;padding-left:18px;color:var(--muted);font-size:14px}.reveal{animation:reveal .45s ease both}@keyframes reveal{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.day-card{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;width:100%;text-align:left}.slot{display:grid;grid-template-columns:44px 1fr;grid-gap:8px;gap:8px;font-size:15px}.slot .k{color:var(--teal-dark);font-weight:800;font-size:13px;padding-top:2px}.tt{display:flex;flex-direction:column}.tt-row{display:grid;grid-template-columns:56px 14px 1fr;grid-gap:10px;gap:10px;min-height:52px}.tt-row .tm{font-weight:800;font-size:14px;color:var(--navy);padding-top:2px}.tt-row .ln{position:relative}.tt-row .ln:before{content:"";position:absolute;left:6px;top:0;bottom:0;width:2px;background:var(--line)}.tt-row .ln i{position:absolute;left:1px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--teal);border:2px solid #fff;box-shadow:0 0 0 1px var(--teal)}.tt-row.move .ln i{background:#fff;box-shadow:0 0 0 1px var(--faint)}.tt-row.meal .ln i{background:#f2994a;box-shadow:0 0 0 1px #f2994a}.tt-row .bd{padding-bottom:14px}.tt-row.move .bd b{font-weight:600;color:var(--muted)}.book-card{display:flex;flex-direction:column;gap:12px;border:1px solid var(--line);border-radius:var(--radius);padding:16px}.book-card.done{border-color:var(--ok);background:var(--ok-bg)}.check-row{display:flex;align-items:center;gap:10px;font-weight:700;min-height:44px}.check-row input{width:22px;height:22px;accent-color:var(--teal)}.board-ctl{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px}.board-ctl select{min-height:34px;border:1px solid var(--line);border-radius:8px;background:var(--soft);font-size:13px;padding:0 8px}.board-cell{display:grid;grid-template-columns:40px 1fr auto;grid-gap:8px;gap:8px;align-items:center;text-align:left;width:100%;min-height:44px;padding:6px 8px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:15px}.board-cell .k{color:var(--teal-dark);font-weight:800;font-size:13px}.board-cell .v{min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:4px}.board-cell.locked{border-color:#f3dd9b;background:#fffaeb}.fg{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 4px;border-radius:6px;font-size:12px;font-weight:900;color:#fff;flex-shrink:0}.fg-S{background:#e0a100}.fg-A{background:var(--teal)}.fg-B{background:#7a8aa0}.fg-C{background:#c4ccd6}.fg-불가{background:var(--danger);font-size:10px}.sheet-back{position:fixed;inset:0;z-index:90;background:rgba(16,47,84,.35);display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-width:560px;max-height:86vh;background:#fff;border-radius:18px 18px 0 0;padding:16px 16px calc(16px + env(safe-area-inset-bottom));animation:up .2s}.sheet,.sheet-list{display:flex;flex-direction:column}.sheet-list{overflow-y:auto;margin-top:8px;gap:6px}.pick-row{display:flex;gap:10px;align-items:center;text-align:left;width:100%;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff}.pick-row.on{border-color:var(--teal);background:var(--teal-50)}.pick-row.blocked{opacity:.45}.pick-score{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0}.pick-score b{font-size:18px;color:var(--navy)}.discovery-form .form-intro{margin:6px 0 20px}.discovery-form .q-block{border:1px solid var(--line);border-radius:18px;padding:18px;margin-top:12px;background:#fff;gap:12px}.discovery-form .q-block h2{font-size:16px;margin-bottom:2px}.discovery-form .label{font-size:12px;color:var(--muted);margin:0}.discovery-form .q-block .input{min-height:44px}.discovery-form .grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.discovery-form .field{min-width:0}.discovery-form input[type=date]{min-width:0;max-width:100%;font-size:14px;padding:0 9px}.discovery-form .sticky-cta{margin-top:12px;background:linear-gradient(to top,var(--bg) 72%,rgba(247,245,240,0))}.discovery-form .seg.sm button{font-size:12px;min-height:40px;padding:7px}.companion-presets{display:flex;flex-wrap:wrap;gap:7px}.companion-presets .toggle-chip{min-height:38px;padding:7px 12px;font-size:13px}.companion-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:left;padding:12px;background:var(--soft);border:0;border-radius:12px}.companion-summary>span:first-child{display:flex;flex-direction:column;gap:3px}.companion-summary>span:last-child{color:var(--teal-dark);font-weight:700}.text-button{background:none;border:0;padding:2px 0;text-align:left}.simple-dialog{width:min(560px,calc(100% - 24px));max-height:90dvh;margin:auto;padding:0;border:0;border-radius:20px;color:var(--ink);background:#fff}.simple-dialog::-webkit-backdrop{background:rgba(16,47,84,.42)}.simple-dialog::backdrop{background:rgba(16,47,84,.42)}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:18px;border-bottom:1px solid var(--line)}.dialog-header h2{font-size:19px}.dialog-content{padding:16px;overflow-y:auto;max-height:65dvh}.dialog-footer{padding:12px 16px;border-top:1px solid var(--line);background:#fff}.stay-select{display:grid;grid-template-columns:auto 1fr;grid-gap:16px;gap:16px;align-items:center}.stay-select select{text-align:right}.advanced-conditions{border-top:1px solid var(--line);padding-top:12px}.advanced-conditions summary{font-size:12px;color:var(--muted);cursor:pointer;min-height:28px}.advanced-body{display:flex;flex-direction:column;gap:12px;margin-top:12px}.form-total{margin-bottom:8px;text-align:center}.day-options summary{display:flex;align-items:center;gap:10px;color:var(--teal-dark);font-size:12px;font-weight:700;cursor:pointer;padding:5px 0}.day-options[open] .board-ctl{margin-top:10px}.day-options p{padding-top:8px}.choice-sheet{padding:20px 16px 12px;gap:12px;max-height:90dvh}.choice-title{font-size:20px}.choice-search{min-height:46px;flex-shrink:0}.choice-filters{display:flex;gap:6px;overflow-x:auto;flex-shrink:0;padding-bottom:2px}.choice-filters .toggle-chip{font-size:12px;min-height:36px;padding:6px 11px;white-space:nowrap;flex-shrink:0}.choice-footer,.choice-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-shrink:0}.choice-footer .text-button,.choice-meta .text-button{color:var(--teal-dark);font-weight:700;min-height:32px}.choice-list{gap:10px;margin-top:0;overscroll-behavior:contain}.choice-card{flex-shrink:0;border:1px solid var(--line);border-radius:14px;overflow:hidden}.choice-card.selected{border-color:var(--teal);background:var(--teal-50)}.choice-main{display:flex;align-items:center;gap:14px;width:100%;padding:14px;background:transparent;border:0;text-align:left}.choice-copy{display:flex;flex:1 1;min-width:0;flex-direction:column;gap:5px;overflow-wrap:anywhere}.choice-copy b{font-size:16px;line-height:1.4}.choice-select{border-radius:9px;padding:8px 10px;font-size:12px;font-weight:700;color:var(--teal-dark);background:var(--teal-50);white-space:nowrap}.choice-detail{padding:0 14px 10px}.choice-detail summary{color:var(--muted);font-size:11px;cursor:pointer;min-height:24px}.choice-detail p{margin:5px 0;line-height:1.6}.choice-detail a{color:var(--teal-dark);text-decoration:underline}.choice-footer{border-top:1px solid var(--line);padding-top:8px}.choice-footer a{text-align:right;font-size:10px}.choice-empty{padding:24px 12px;text-align:center}.party-editor{display:flex;flex-direction:column;gap:12px}.party-member{min-width:0;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff}.party-member-head{display:flex;align-items:flex-end;gap:8px}.party-number{display:flex;align-items:center;justify-content:center;width:26px;height:44px;flex-shrink:0;font-size:13px;font-weight:800;color:var(--teal-dark)}.party-relation{flex:1 1;min-width:0}.party-age,.party-relation{display:flex;flex-direction:column;gap:4px}.party-age{width:70px;flex-shrink:0}.party-member .input{width:100%;min-width:0;min-height:44px;padding:8px}.party-member-head .icon-btn{width:36px;min-width:36px;height:44px;font-size:24px}.party-details{margin-top:10px}.party-details summary{min-height:36px;padding:8px 0;color:var(--teal-dark);font-size:13px;cursor:pointer}.party-details-body{display:flex;flex-direction:column;gap:10px;padding-top:8px}.party-details-body>label:not(.check-row){display:flex;flex-direction:column;gap:5px}.party-details-body .check-row{font-weight:500}.party-add .toggle-chip,.party-pet{min-height:40px}.party-pet{align-self:flex-start}.budget-input{display:flex;align-items:center;gap:10px}.budget-input .input{max-width:180px;min-width:0}.budget-input>span{font-size:14px;white-space:nowrap}.form-error{color:var(--danger)}.rank-heading{gap:12px;align-items:flex-start}.rank-title{min-width:0;align-items:flex-start}.rank-title>div{min-width:0;overflow-wrap:anywhere}.rank-fit{text-align:right;gap:2px;flex-shrink:0}.rank-fit,.result-cost{display:flex;flex-direction:column}.result-cost{gap:3px;padding:9px 10px;border-radius:9px;background:var(--soft);width:100%}@media (max-width:380px){.party-member{padding:9px}.party-member-head{gap:5px}.party-number{width:18px}.party-age{width:58px}.party-member-head .icon-btn{min-width:28px;width:28px}}@media (prefers-reduced-motion:reduce){.reveal{animation:none}}.boarding-pass{background:#fff;border-radius:24px;box-shadow:0 16px 36px rgba(16,47,84,.12);overflow:hidden;border:1px solid rgba(16,47,84,.08);margin-top:14px}.ticket-top{background:linear-gradient(135deg,var(--navy) 0,#164678 58%,var(--teal-dark) 100%);color:#fff;padding:18px 18px 16px}.ticket-top-label{font-size:11px;font-weight:800;letter-spacing:.06em;color:rgba(255,255,255,.72)}.route-visualizer,.ticket-top-label{display:flex;justify-content:space-between}.route-visualizer{align-items:center;margin-top:10px}.airport-box{display:flex;flex-direction:column}.airport-code{font-size:26px;font-weight:900;line-height:1.05}.airport-name{font-size:12px;color:rgba(255,255,255,.8);font-weight:600;margin-top:3px}.flight-arc{flex:1 1;flex-direction:column;padding:0 10px;min-width:0}.flight-arc,.flight-arc-line{display:flex;align-items:center}.flight-arc-line{width:100%;gap:6px}.flight-arc-line i{flex:1 1;height:1.5px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.6) 0 4px,transparent 4px 8px)}.flight-arc small{font-size:11px;color:#8cf5ff;font-weight:800;margin-top:4px}.ticket-slots-grid{display:grid;grid-template-columns:1fr 1fr;border-bottom:2px dashed #dcd9d0;position:relative}.ticket-slots-grid:after,.ticket-slots-grid:before{content:"";position:absolute;bottom:-11px;width:20px;height:20px;border-radius:50%;background:var(--bg)}.ticket-slots-grid:before{left:-11px}.ticket-slots-grid:after{right:-11px}.ticket-slot{padding:13px 14px;text-align:left;border:0;border-right:1px solid #f0eee8;border-bottom:1px solid #f0eee8;background:#fff;min-width:0;display:flex;flex-direction:column}.ticket-slot:nth-child(2n){border-right:0}.ticket-slot:nth-child(n+3){border-bottom:0}.ticket-slot:active{background:var(--teal-50)}.slot-k{font-size:11px;font-weight:800;color:var(--muted)}.slot-v{font-size:15.5px;font-weight:900;color:var(--navy);margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slot-sub{font-size:11.5px;color:var(--teal-dark);font-weight:700;margin-top:2px}.ticket-hint{padding:10px 16px 12px;margin:0}.step-badge{align-self:flex-start;font-size:12px;font-weight:800;color:var(--teal-dark);background:var(--teal-50);border-radius:99px;padding:3px 10px}.discovery-form .q-block{box-shadow:0 8px 28px rgba(16,47,84,.06);border-color:#e8e6df;scroll-margin-top:72px}.discovery-form .seg button.on,.discovery-form .toggle-chip.on{box-shadow:0 3px 10px rgba(0,131,140,.25)}.sticky-cta{background:linear-gradient(to top,var(--bg) 70%,rgba(247,245,240,0))}.rank-card{padding:0;overflow:hidden;border-radius:22px;box-shadow:0 8px 28px rgba(16,47,84,.07);gap:10px}.rank-card>:not(.rank-hero):not(.rank-stats){margin:0 16px}.rank-card>:last-child{margin-bottom:16px}.rank-hero{width:100%;color:#fff;padding:14px 16px 16px;display:flex;flex-direction:column;gap:4px;min-height:132px;justify-content:space-between}.rank-pill{font-size:12px;background:rgba(0,0,0,.28)}.rank-match,.rank-pill{font-weight:800;border-radius:99px;padding:4px 10px}.rank-match{font-size:13px;background:var(--teal)}.rank-match .rank-score{font-size:15px;color:#fff}.rank-card.first .rank-match{background:#fff;color:var(--navy)}.rank-card.first .rank-match .rank-score{color:var(--navy)}.rank-hero-name{font-size:26px;font-weight:900;margin-top:14px}.rank-hero-sub{font-size:12.5px;opacity:.85}.rank-stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:6px;gap:6px;background:#f3f1ea;border-radius:14px;padding:10px 12px;margin:0 16px;width:calc(100% - 32px)}.rank-stats>div{display:flex;flex-direction:column;min-width:0}.rank-stats span{font-size:11px;color:var(--muted);font-weight:700}.rank-stats b{font-size:14px;color:var(--navy)}.rank-stats b.ok{color:var(--ok)}.rank-stats b.warn{color:var(--danger)}.day-jump{display:flex;gap:8px;overflow-x:auto;margin-top:12px;padding-bottom:4px;scrollbar-width:none}.day-jump::-webkit-scrollbar{display:none}.day-jump button{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;min-width:74px;padding:8px 10px;border-radius:14px;border:1px solid #e8e6df;background:#fff}.day-jump button b{font-size:14px;color:var(--navy)}.day-jump button span{font-size:11px;color:var(--muted)}.day-jump button:active{background:var(--navy)}.day-card{border-radius:18px;box-shadow:0 8px 28px rgba(16,47,84,.06);border-color:#e8e6df;scroll-margin-top:72px}.board-cell{border-left-width:4px}.board-cell.slot-sight{border-left-color:var(--teal)}.board-cell.slot-meal{border-left-color:#ff6b57}.board-cell.slot-meal .k{color:#d9482f}.board-cell.slot-dessert{border-left-color:#f59f00}.board-cell.slot-dessert .k{color:#b26f00}.board-cell.slot-night{border-left-color:#5b4fc4}.board-cell.slot-night .k{color:#4a3fb0}.board-cell.slot-rest{border-left-color:#b8c0ca}.board-cell.locked{border-left-color:#f2b705}.lock-badge{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:800;color:#9a6a00;background:#fff3cc;border-radius:99px;padding:2px 8px}.save-warning{position:-webkit-sticky;position:sticky;top:0;z-index:40;display:flex;gap:8px;align-items:flex-start;margin:0 auto;max-width:560px;padding:10px 14px;background:#fff4e5;border-bottom:1px solid #f0c48a;color:#6b3d00;font-size:13px;line-height:1.5}.save-warning p{margin:0;flex:1 1}.restore-preview{border:1px dashed var(--teal,#00acb8)}