/* Locally served, dependency-free UI. */
:root{--navy:#183653;--ink:#20374a;--muted:#6d7d8b;--blue:#247ca9;--sky:#edf6fa;--paper:#f5f7f8;--line:#dce5ea;--white:#fff;--danger:#b44b4b;--radius:18px;--shadow:0 6px 22px rgba(24,54,83,.035)}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Malgun Gothic","Apple SD Gothic Neo",system-ui,sans-serif;font-size:14px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #72b9de;outline-offset:4px}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(25px,2.4vw,34px);line-height:1.35;letter-spacing:-1.2px;margin-bottom:13px}h2{font-size:20px;letter-spacing:-.6px;line-height:1.5;margin-bottom:10px}h3{font-size:20px;letter-spacing:-.6px}.site-header{background:var(--white);border-bottom:1px solid var(--line)}.header-inner{max-width:1200px;margin:auto;min-height:88px;display:flex;align-items:center;gap:42px;padding:0 30px}.brand{display:flex;align-items:center;gap:0;font-size:23px;font-weight:800;letter-spacing:-.8px;white-space:nowrap}.brand>span:last-child{color:var(--blue)}.brand-mark{background:var(--navy);color:white;border-radius:11px;width:35px;height:35px;text-align:center;line-height:33px;margin-right:10px;font-size:25px;font-weight:400}.header-inner nav{display:flex;align-self:stretch;gap:30px;align-items:stretch}.header-inner nav a{display:flex;align-items:center;font-weight:600;font-size:13px;color:var(--muted);position:relative;white-space:nowrap}.header-inner nav a[aria-current]{color:var(--navy)}.header-inner nav a[aria-current]:after{content:"";height:3px;background:var(--blue);position:absolute;left:0;right:0;bottom:0;border-radius:3px}.account{margin-left:auto;display:flex;align-items:center;gap:16px;font-size:12px}.account>span{max-width:140px;overflow:hidden;text-overflow:ellipsis}.account form{margin:0}.text-button{border:0;background:transparent;color:var(--muted);padding:4px}.text-button:hover,.text-link:hover,.back-link:hover{color:var(--blue)}.personal-label{margin-left:auto;font-size:10px;color:var(--muted);letter-spacing:1.7px}.container{max-width:1200px;margin:0 auto;padding:42px 30px 70px;min-height:calc(100vh - 200px)}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}.page-heading>div{max-width:780px}.eyebrow{color:var(--blue);font-size:10px;font-weight:700;letter-spacing:2.1px;margin-bottom:12px}.subtitle{color:var(--muted);font-size:14px;margin-bottom:0;line-height:1.9}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border:1px solid transparent;border-radius:10px;font-weight:700;font-size:13px;white-space:nowrap;line-height:1.5;transition:background .15s,box-shadow .15s}.primary{background:var(--navy);color:white}.primary:hover{background:#274d70;box-shadow:0 3px 10px #18365320}.secondary{background:white;border-color:var(--line);color:var(--navy)}.secondary:hover{background:var(--sky)}.small{padding:8px 13px;font-size:12px}.danger{color:white;background:var(--danger)}.danger:hover{background:#953a3a}.text-link{font-size:13px;font-weight:600;color:var(--navy);white-space:nowrap}.danger-text{color:var(--danger)}.back-link{display:inline-block;color:var(--muted);font-size:13px;margin-bottom:24px}.stats-grid{display:grid;grid-template-columns:1fr 1fr 1.35fr;gap:18px;margin-bottom:28px}.stat-card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:21px 26px;display:flex;flex-direction:column;box-shadow:var(--shadow)}.stat-label{font-size:12px;color:var(--muted);font-weight:600}.stat-card strong{font-size:31px;line-height:1.45;letter-spacing:-1.2px;margin:5px 0}.stat-card small{font-size:13px;letter-spacing:0;font-weight:500;margin-left:7px}.stat-foot{font-size:11px;color:var(--muted)}.stat-foot span{margin-left:10px}.stat-accent{background:var(--sky);border-color:#d5e8f1}.stat-accent strong{color:var(--blue)}.panel{background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.search-panel{padding:26px 28px}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:19px}.panel-heading .eyebrow{font-size:9px;margin-bottom:5px}.panel-heading h2{font-size:18px;margin-bottom:0}.saved-chips{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid #edf1f4}.chip{font-size:12px;padding:5px 14px;border-radius:20px;border:1px solid var(--line);color:var(--muted)}.chip:hover{border-color:#96b8cc;color:var(--navy)}.chip.selected{background:var(--navy);border-color:var(--navy);color:white}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 24px}.filter-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px 18px}.field label{font-size:12px;display:block;font-weight:700;margin-bottom:7px}.field input:not([type=checkbox]),.field select,.field textarea,.sort-form select{width:100%;border:1px solid #d6e0e6;border-radius:8px;background:white;color:var(--ink);padding:10px 12px;line-height:1.5;min-height:43px}.field input::placeholder,.field textarea::placeholder{color:#96a3ae;font-size:12px}.field input:focus,.field select:focus,.field textarea:focus,.sort-form select:focus{border-color:#70aaca;outline:3px solid #e4f2fa}.field-check{display:flex;align-items:flex-start;padding-top:7px}.field .checkbox-label{display:flex;align-items:center;gap:9px;font-size:12px;cursor:pointer;margin:0}.field input[type=checkbox]{height:17px;width:17px;margin:0;accent-color:var(--navy)}.field-wide{grid-column:1/-1}.help{color:var(--muted);font-size:11px;margin:7px 0 0;line-height:1.7}.required{color:var(--blue)}.form-note{color:var(--muted);font-size:11px;margin-bottom:22px}.field-errors,.form-errors{color:#a33c3c;font-size:12px}.field-errors ul,.form-errors ul{padding:0;list-style:none;margin:6px 0}.invalid input,.invalid select,.invalid textarea{border-color:#c77d7d!important}.form-errors{background:#fff3f2;border:1px solid #edd0ce;border-radius:8px;padding:12px 15px;margin-bottom:20px;grid-column:1/-1}.filter-bottom{display:flex;justify-content:space-between;gap:15px;align-items:center;border-top:1px solid #edf1f4;margin-top:20px;padding-top:18px}.filter-bottom .help{margin:0}.actions{display:flex;align-items:center;gap:18px}.centered{justify-content:center}.results-section{margin-top:36px}.results-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:21px}.results-heading h2{font-size:20px;margin-bottom:5px}.count{font-size:12px;vertical-align:middle;padding:3px 8px;background:#e1edf4;border-radius:6px;color:var(--blue);margin-left:5px}.results-heading p{font-size:11px;color:var(--muted);margin:0}.sort-form{display:flex;gap:8px;align-items:center}.sort-form label{font-size:11px;color:var(--muted);white-space:nowrap}.sort-form select{width:auto;min-height:36px;padding:7px 9px;font-size:12px}.deals-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.deal-card{padding:22px 24px 16px;background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .15s,border-color .15s}.deal-card:hover{transform:translateY(-2px);border-color:#b6cddd}.deal-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.tags{display:flex;flex-wrap:wrap;gap:6px}.tag{background:#f1f4f6;color:#6b7d8a;border-radius:5px;padding:3px 7px;font-size:10px;font-weight:600}.tag-blue{background:#e6f2f9;color:#317fa7}.favorite-button{background:transparent;border:0;color:#90a0ad;font-size:25px;line-height:1;padding:3px}.favorite-button.active{color:#d7a043}.route-link{display:flex;align-items:center;justify-content:space-between;font-size:30px;letter-spacing:-.8px;font-weight:750}.route-link:hover{color:var(--blue)}.route-arrow{color:#91b2c5;font-size:26px;font-weight:400}.airline{font-size:11px;color:var(--muted);margin:4px 0 15px}.deal-dates{font-size:12px;display:flex;align-items:center;justify-content:space-between;gap:5px}.deal-dates span:last-child:not(:first-child){color:var(--muted);font-size:10px;white-space:nowrap}.baggage-line{font-size:11px;color:#7f8c96;margin:8px 0 24px}.baggage-included{color:#4e8a77}.deal-price{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:20px}.deal-price strong{font-size:28px;letter-spacing:-1.2px;line-height:1.2;color:var(--navy)}.deal-price small{font-size:13px;font-weight:500;letter-spacing:0;margin-left:4px}.deal-price>span{font-size:10px;color:var(--muted);white-space:nowrap}.deal-card-bottom{border-top:1px solid #edf1f4;padding-top:13px;display:flex;align-items:center;justify-content:space-between;font-size:10px;color:var(--muted)}.deal-card-bottom time{margin-left:9px}.stale-note{display:block;color:#ae7a35;font-size:10px;margin-top:3px}.detail-arrow{display:flex;align-items:center;justify-content:center;color:var(--blue);background:var(--sky);border-radius:50%;width:28px;height:28px;font-size:17px}.empty-state{border:1px dashed #c8d8e1;border-radius:var(--radius);text-align:center;background:linear-gradient(135deg,#fafdff,#fff);padding:55px 24px}.empty-icon{display:inline-block;background:var(--sky);color:var(--blue);width:58px;height:58px;line-height:58px;border-radius:18px;font-size:30px;margin-bottom:18px}.empty-state h3,.empty-state h2{margin-bottom:12px}.empty-state p{font-size:13px;color:var(--muted);line-height:1.9;margin-bottom:23px}.pagination{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:30px}.pagination>span{font-size:12px;color:var(--muted)}.narrow{max-width:820px;margin:auto}.editor-panel{padding:30px}.editor-footer{display:flex;justify-content:flex-end;gap:12px;border-top:1px solid #edf1f4;margin-top:27px;padding-top:23px}.confirmation{max-width:520px;margin:50px auto;text-align:center;padding:42px 30px}.confirmation h1{font-size:26px;margin-top:10px}.confirmation form{margin-top:26px}.detail-panel{padding:35px}.detail-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.detail-heading h1{font-size:38px;display:flex;gap:20px;align-items:center}.detail-heading .eyebrow{margin-bottom:7px}.detail-price{background:var(--sky);margin:28px 0;padding:22px 25px;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:15px}.detail-price>span{font-size:12px;color:var(--muted)}.detail-price strong{font-size:34px;color:var(--blue);letter-spacing:-1px}.detail-price small{font-size:16px;margin-left:6px;font-weight:500}.notice{background:#fff9ec;border:1px solid #efe3c8;border-radius:10px;padding:13px 16px;color:#88734e;font-size:12px;margin:20px 0;line-height:1.9}.notice p{margin:5px 0 0}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px 30px;margin:28px 0}.detail-grid dt{font-size:11px;color:var(--muted);margin-bottom:5px}.detail-grid dd{margin:0;font-size:14px;font-weight:600}.detail-notes{border-top:1px solid #edf1f4;padding-top:23px}.detail-notes h2{font-size:15px}.detail-notes p{font-size:13px;line-height:1.9;overflow-wrap:anywhere}.booking-box{background:#f7f9fa;border-radius:12px;padding:22px;margin-top:28px}.booking-box p{font-size:12px;color:var(--muted);margin-bottom:16px}.detail-actions{display:flex;justify-content:space-between;align-items:center;margin-top:27px}.search-list{display:flex;flex-direction:column;gap:18px}.saved-search-card{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:26px 30px}.saved-search-card h2{font-size:18px;margin-bottom:7px}.saved-search-card h2 a:hover{color:var(--blue)}.search-route{font-size:13px;color:var(--muted);margin:0 0 12px}.search-route span{color:#9fb6c6;margin:0 10px}.search-card-actions{display:flex;align-items:center;gap:17px;white-space:nowrap}.import-step{display:flex;gap:22px;padding:8px 0 30px;margin-bottom:26px;border-bottom:1px solid #edf1f4}.import-step:nth-child(2){border:0;padding-bottom:0}.step-number{font-size:12px;letter-spacing:.7px;color:var(--blue);background:var(--sky);height:36px;min-width:36px;display:flex;align-items:center;justify-content:center;border-radius:10px}.import-step h2{font-size:18px;margin-bottom:9px}.import-step p{font-size:12px;color:var(--muted);line-height:1.9;margin-bottom:16px}.import-step>div{min-width:0;flex:1}.upload-field{border:1px dashed #bdd2df;border-radius:10px;padding:18px;background:#f9fcfd;margin-bottom:20px}.field input[type=file]{max-width:100%;padding:8px;background:transparent;border:0;font-size:12px}.field input[type=file]::file-selector-button{border:1px solid var(--line);background:white;border-radius:5px;padding:7px 10px;color:var(--ink);margin-right:12px;cursor:pointer}.csv-help{font-size:12px;color:var(--muted)}.csv-help summary{cursor:pointer;color:var(--navy);padding:5px 0}.csv-help dl{display:grid;grid-template-columns:160px 1fr;gap:10px;padding-top:10px}.csv-help dt{font-size:11px;overflow-wrap:anywhere}.csv-help dd{margin:0}.messages{margin-bottom:22px}.message{padding:13px 18px;background:#eaf5ef;color:#33735b;border:1px solid #cce5d7;border-radius:10px;font-size:13px}.site-footer{max-width:1140px;margin:auto;border-top:1px solid var(--line);padding:24px 0 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--muted);font-size:10px}.site-footer>span{font-size:12px;font-weight:700;color:#8ba0ad}.site-footer p{margin:0}.mobile-only{display:none}.login-layout{display:grid;grid-template-columns:1fr 420px;gap:80px;align-items:center;max-width:1000px;margin:45px auto 20px}.login-intro h1{font-size:36px;line-height:1.6;letter-spacing:-1.5px}.login-intro>p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:2}.login-panel{padding:37px}.login-panel h2{font-size:22px;margin-bottom:10px}.login-panel .subtitle{font-size:12px;margin-bottom:27px}.login-panel .field{margin-bottom:18px}.login-submit{width:100%;margin-top:6px}.login-help{border-top:1px solid #edf1f4;margin-top:27px;padding-top:20px;font-size:11px}.login-help strong{color:var(--muted)}.login-help p{color:#8a98a4;margin-top:7px;margin-bottom:0}.login-illustration{position:relative;padding:30px 0 15px;max-width:375px}.ticket{position:relative;z-index:1;background:white;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:23px 25px;transform:rotate(-5deg);margin:20px}.ticket-brand{font-size:8px;color:var(--blue);letter-spacing:2px}.ticket-route{font-size:27px;font-weight:750;display:flex;justify-content:space-between;align-items:center;margin:17px 0 10px;letter-spacing:-1px}.ticket-route span{color:#91b2c5;font-size:29px}.ticket-caption{font-size:7px;color:#8fa4b2;letter-spacing:1px}.ticket-line{border-top:1px dashed #ccdbe3;margin-top:20px;padding-bottom:10px}.illustration-cloud{position:absolute;border-radius:50%;background:#e3f0f7;opacity:.7}.cloud-one{width:130px;height:130px;left:-5px;top:0}.cloud-two{width:75px;height:75px;right:8px;bottom:0}
@media(min-width:1000px){.filter-grid .field:nth-child(5),.filter-grid .field:nth-child(6),.filter-grid .field:nth-child(7),.filter-grid .field:nth-child(8){grid-column:auto}.filter-grid .field-check{padding-top:0}}
@media(max-width:1020px){.header-inner{gap:25px}.header-inner nav{gap:20px}.account>span{display:none}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.deals-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.login-layout{gap:35px;grid-template-columns:1fr 390px}.site-footer{margin:0 30px}}
@media(max-width:740px){.header-inner{padding:17px 20px 0;flex-wrap:wrap;gap:15px;min-height:auto}.brand{font-size:21px}.brand-mark{width:32px;height:32px;line-height:30px}.header-inner nav{order:3;width:100%;gap:26px;height:45px;overflow-x:auto}.header-inner nav a{font-size:12px}.account{font-size:11px}.personal-label{display:none}.container{padding:28px 20px 50px}.page-heading{align-items:flex-start;margin-bottom:23px;gap:15px}.page-heading .button{padding:10px 12px;font-size:11px;align-self:flex-start;margin-top:26px}.eyebrow{font-size:9px;letter-spacing:1.8px;margin-bottom:9px}.subtitle{font-size:12px}.stats-grid{gap:9px;grid-template-columns:1fr 1fr;margin-bottom:22px}.stat-card{padding:17px 16px;border-radius:13px}.stat-accent{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;align-items:center;gap:0 15px}.stat-accent strong{grid-column:2;grid-row:1/3;margin:0;font-size:28px}.stat-card strong{font-size:27px}.stat-label{font-size:11px}.stat-foot{font-size:10px}.stat-accent .stat-foot{grid-row:2}.search-panel{padding:21px 18px;border-radius:14px}.panel-heading{gap:10px;align-items:center}.panel-heading h2{font-size:16px}.panel-heading .text-link{font-size:11px}.filter-grid{gap:15px 12px}.field input:not([type=checkbox]),.field select,.field textarea{padding:10px;font-size:13px}.field label{font-size:11px}.filter-grid .help{font-size:10px}.filter-bottom{align-items:flex-start;flex-direction:column;gap:16px}.filter-bottom .actions{align-self:flex-end}.results-heading{align-items:flex-start;flex-direction:column;gap:13px}.results-heading p{font-size:10px}.sort-form{align-self:flex-end}.deals-grid{gap:15px}.deal-card{padding:18px 17px 14px}.route-link{font-size:26px}.route-arrow{font-size:23px}.deal-price{gap:7px}.deal-price strong{font-size:24px}.deal-dates{font-size:11px}.deal-dates span:last-child:not(:first-child){font-size:9px}.deal-price>span{font-size:9px}.deal-card-bottom time{display:block;margin:0}.empty-state{padding:38px 16px}.empty-state p{font-size:12px}.empty-state .actions{gap:10px;flex-wrap:wrap}.empty-state .button{font-size:12px;padding:11px 15px}.editor-panel{padding:23px 20px}.form-grid:not(.filter-grid){gap:20px 15px}.detail-panel{padding:25px 20px}.detail-heading{align-items:flex-start;flex-direction:column}.detail-heading h1{font-size:34px}.detail-heading .button{font-size:11px;padding:8px 12px}.detail-price{padding:18px;flex-direction:column;align-items:flex-start;gap:7px}.detail-price strong{font-size:31px}.detail-grid{gap:22px 17px}.detail-grid dd{font-size:12px}.saved-search-card{padding:23px 20px;flex-direction:column;align-items:flex-start;gap:20px}.search-card-actions{width:100%}.search-card-actions .button{margin-right:auto}.import-step{gap:14px}.csv-help dl{grid-template-columns:1fr;gap:4px}.csv-help dd{margin-bottom:10px}.site-footer{margin:0 20px;flex-direction:column;align-items:flex-start;gap:7px;line-height:1.9}.site-footer p{max-width:330px}.login-layout{display:flex;flex-direction:column;align-items:stretch;gap:25px;margin:15px auto 0;max-width:430px}.login-intro h1{font-size:29px;line-height:1.6;margin-bottom:12px}.login-intro>p:not(.eyebrow){font-size:12px;margin-bottom:0}.login-illustration{display:none}.login-panel{padding:28px 24px}.login-panel h2{font-size:20px}.login-panel .field label{font-size:12px}}
@media(max-width:470px){.deals-grid{grid-template-columns:1fr}.deal-card{padding:22px 23px 17px}.route-link{font-size:31px}.deal-card-top{margin-bottom:18px}.deal-price strong{font-size:29px}.deal-price>span{font-size:10px}.deal-card-bottom time{display:inline;margin-left:9px}.deal-dates{font-size:12px}.deal-dates span:last-child:not(:first-child){font-size:10px}.form-grid:not(.filter-grid){grid-template-columns:1fr}.mobile-only{display:block}.page-heading h1{font-size:25px}.page-heading .button{margin-top:25px;padding:10px}.page-heading .button span{display:none}.filter-grid .field input::placeholder{font-size:10px}.filter-grid .field-check{grid-column:auto}.filter-grid .checkbox-label{font-size:11px}.detail-grid{grid-template-columns:1fr}.personal-label{display:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}.deal-card:hover{transform:none}}
