@import"https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable-dynamic-subset.min.css";@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--c-primary: #1E2A3A;--c-secondary: #5B6B7A;--c-tertiary: #2563EB;--c-neutral: #F5F7FA;--c-surface: #FFFFFF;--c-background: #EEF2F6;--c-border: #D7DEE7;--c-text-primary: #111827;--c-text-secondary: #4B5563;--c-text-muted: #6B7280;--c-success: #15803D;--c-warning: #B45309;--c-danger: #B91C1C;--c-info: #0369A1;--c-status-reserved: #1D4ED8;--c-status-checked-in: #15803D;--c-status-checked-out: #6B7280;--c-status-cleaning: #C2410C;--c-status-inspection: #7C3AED;--c-status-blocked: #B91C1C;--c-badge-info-bg: #DBEAFE;--c-badge-info-fg: #1D4ED8;--c-badge-success-bg: #DCFCE7;--c-badge-success-fg: #166534;--c-badge-warning-bg: #FED7AA;--c-badge-warning-fg: #9A3412;--c-badge-danger-bg: #FEE2E2;--c-badge-danger-fg: #991B1B;--c-badge-purple-bg: #E9D5FF;--c-badge-purple-fg: #7C3AED;--c-badge-gray-bg: #E5E7EB;--c-badge-gray-fg: #6B7280;--sp-xs: 4px;--sp-sm: 8px;--sp-md: 12px;--sp-lg: 16px;--sp-xl: 24px;--sp-xxl: 32px;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--sidebar-w: 248px;--topbar-h: 56px;--font-sans: "Pretendard Variable", "Pretendard", "Noto Sans KR", sans-serif;--font-mono: "JetBrains Mono", "D2Coding", monospace}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;font-family:var(--font-sans);font-size:15px;color:var(--c-text-primary);background:var(--c-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{overflow:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--c-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--c-secondary)}.font-mono{font-family:var(--font-mono)}.text-muted{color:var(--c-text-muted)}.text-secondary{color:var(--c-text-secondary)}.text-sm{font-size:.875rem}.text-xs{font-size:.8125rem}.fw-600{font-weight:600}.fw-500{font-weight:500}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.self-checkin-page,.self-checkin-page *{box-sizing:border-box;letter-spacing:0}.self-checkin-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(120deg,#0d1c2edb,#0f172a9e),url(https://images.unsplash.com/photo-1564013799919-ab600027ffc6?auto=format&fit=crop&w=1600&q=80) center/cover;color:#111827;font-family:Inter,Noto Sans KR,system-ui,-apple-system,sans-serif}.self-checkin-panel{width:min(100%,460px);padding:28px;border-radius:8px;background:#fffffff0;box-shadow:0 22px 70px #0f172a47}.self-checkin-header{margin-bottom:24px}.self-checkin-header span,.self-checkin-result>span,.self-checkin-code span{display:block;color:#64748b;font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.self-checkin-header h1{margin:6px 0 0;color:#0f172a;font-size:2rem;line-height:1.15}.self-checkin-form{display:grid;gap:14px}.self-checkin-form label{display:grid;gap:7px;color:#334155;font-size:.875rem;font-weight:700}.self-checkin-form input{width:100%;min-height:46px;padding:0 13px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#0f172a;font:inherit}.self-checkin-form input:focus{outline:3px solid rgba(37,99,235,.16);border-color:#2563eb}.self-checkin-submit{min-height:48px;border:0;border-radius:8px;background:#0f766e;color:#fff;cursor:pointer;font:inherit;font-weight:800}.self-checkin-submit:disabled{cursor:wait;opacity:.65}.self-checkin-error{padding:11px 12px;border-radius:8px;background:#fef2f2;color:#b91c1c;font-size:.875rem;font-weight:700}.self-checkin-result{margin-top:22px;padding-top:22px;border-top:1px solid #e2e8f0}.self-checkin-result h2{margin:4px 0 14px;color:#0f172a;font-size:1.25rem}.self-checkin-result dl{display:grid;gap:8px;margin:0}.self-checkin-result dl div{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid #f1f5f9}.self-checkin-result dt{color:#64748b;font-size:.8125rem;font-weight:700}.self-checkin-result dd{margin:0;color:#0f172a;text-align:right;font-weight:800}.self-checkin-code{margin-top:18px;padding:16px;border-radius:8px;background:#ecfdf5;border:1px solid #99f6e4}.self-checkin-code strong{display:block;margin-top:5px;color:#064e3b;font-family:SFMono-Regular,Consolas,monospace;font-size:2rem;letter-spacing:0}@media(max-width:560px){.self-checkin-page{align-items:stretch;padding:14px}.self-checkin-panel{align-self:center;padding:22px}.self-checkin-header h1,.self-checkin-code strong{font-size:1.65rem}}.public-booking-page,.public-booking-page *{letter-spacing:0}.public-booking-page{min-height:100vh;height:100%;overflow:auto;background:#f3f6f8;color:#172033}.public-booking-hero{min-height:430px;padding:clamp(16px,2.5vw,30px);background-position:center;background-size:cover;color:#fff}.public-booking-hero-inner{width:min(1160px,100%);min-height:382px;margin:0 auto;display:flex;flex-direction:column;justify-content:space-between;gap:42px}.public-booking-topline{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#ffffffd1;font-size:.875rem;overflow-wrap:anywhere}.public-booking-brand{display:inline-flex;min-height:36px;align-items:center;padding:0 12px;border:1px solid rgba(255,255,255,.32);border-radius:8px;background:#ffffff1f;color:#fff;font-weight:800;text-decoration:none}.public-booking-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,420px);gap:clamp(20px,4vw,54px);align-items:end}.public-booking-property{min-width:0;display:grid;gap:18px}.public-booking-eyebrow{width:fit-content;padding:7px 10px;border-radius:8px;background:#ffffff29;color:#ffffffe6;font-size:.78rem;font-weight:800}.public-booking-property h1{max-width:720px;color:#fff;font-size:clamp(2.15rem,5vw,4.6rem);line-height:1.03;font-weight:900;word-break:keep-all}.public-booking-property p{max-width:620px;color:#ffffffd1;font-size:1rem;line-height:1.6;word-break:keep-all}.public-booking-policy{display:flex;flex-wrap:wrap;gap:10px}.public-booking-policy div{min-width:112px;padding:12px 14px;border:1px solid rgba(255,255,255,.22);border-radius:8px;background:#ffffff1f}.public-booking-policy dt{margin-bottom:5px;color:#ffffffad;font-size:.75rem;font-weight:700}.public-booking-policy dd{color:#fff;font-size:1rem;font-weight:800}.public-booking-search-card,.public-booking-reservation-box{border:1px solid #dbe3ec;border-radius:8px;background:#fffffff7;color:#172033;box-shadow:0 18px 50px #0c18262e}.public-booking-search-card{display:grid;gap:18px;padding:22px}.public-booking-card-title{min-width:0;display:grid;gap:6px}.public-booking-card-title span,.public-booking-content-header span{color:#6a7685;font-size:.78rem;font-weight:800}.public-booking-card-title strong{color:#172033;font-size:1.12rem;line-height:1.35;word-break:keep-all}.public-booking-search-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.public-booking-search-grid label:last-child{grid-column:1 / -1}.public-booking-search-grid label,.public-booking-guest-fields label{min-width:0;display:grid;gap:7px;color:#4d5a6b;font-size:.82rem;font-weight:800}.public-booking-search-grid input,.public-booking-guest-fields input,.public-booking-guest-fields textarea{width:100%;min-height:42px;border:1px solid #cdd7e2;border-radius:8px;background:#fff;color:#172033;font:inherit;font-weight:600;padding:10px 12px;outline:none}.public-booking-guest-fields textarea{min-height:84px;resize:vertical;line-height:1.5}.public-booking-search-grid input:focus,.public-booking-guest-fields input:focus,.public-booking-guest-fields textarea:focus{border-color:#176b63;box-shadow:0 0 0 3px #176b6324}.public-booking-primary{width:100%;min-height:46px;border:0;border-radius:8px;background:#176b63;color:#fff;cursor:pointer;font:inherit;font-size:.95rem;font-weight:900}.public-booking-primary:disabled{background:#9aa8b4;cursor:not-allowed}.public-booking-inline-error,.public-booking-alert{border-radius:8px;background:#fff1f2;color:#b91c1c;font-size:.84rem;font-weight:700;line-height:1.45}.public-booking-inline-error{padding:10px 12px}.public-booking-alert{margin-bottom:18px;padding:14px 16px;border:1px solid #fecdd3}.public-booking-content{width:min(1160px,calc(100% - 32px));margin:0 auto;padding:28px 0 54px}.public-booking-content-header{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:18px}.public-booking-content-header h2{margin-top:6px;color:#172033;font-size:1.45rem;line-height:1.25;font-weight:900}.public-booking-content-header strong{flex:0 0 auto;padding:8px 12px;border-radius:8px;background:#e5f6f3;color:#176b63;font-size:.86rem;font-weight:900}.public-booking-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,390px);gap:20px;align-items:start}.public-booking-room-list{display:grid;gap:12px}.public-booking-room-card{width:100%;min-height:142px;display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,auto);gap:18px;align-items:stretch;padding:18px;border:1px solid #dbe3ec;border-radius:8px;background:#fff;color:#172033;cursor:pointer;font:inherit;text-align:left;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.public-booking-room-card:hover:not(:disabled){border-color:#176b63;box-shadow:0 14px 32px #0c182617;transform:translateY(-1px)}.public-booking-room-card.is-selected{border-color:#176b63;box-shadow:0 0 0 3px #176b6321}.public-booking-room-card.is-unavailable{cursor:not-allowed;opacity:.68}.public-booking-room-main{min-width:0;display:grid;align-content:start;gap:8px}.public-booking-room-status{width:fit-content;padding:5px 8px;border-radius:8px;background:#e6efff;color:#1d4ed8;font-size:.74rem;font-weight:900}.public-booking-room-card.is-unavailable .public-booking-room-status{background:#eef1f5;color:#66758a}.public-booking-room-main h3{color:#172033;font-size:1.2rem;line-height:1.25;font-weight:900;word-break:keep-all}.public-booking-room-main p,.public-booking-room-main small{color:#647184;font-size:.86rem;line-height:1.45;word-break:keep-all}.public-booking-room-price{min-width:148px;display:grid;align-content:center;justify-items:end;gap:6px;text-align:right}.public-booking-room-price strong{color:#172033;font-family:var(--font-mono);font-size:1.2rem;font-weight:900;white-space:nowrap}.public-booking-room-price span,.public-booking-room-price em{color:#6a7685;font-size:.8rem;font-style:normal;font-weight:700}.public-booking-reservation-box{position:sticky;top:18px;display:grid;gap:16px;padding:20px}.public-booking-reservation-box form{display:grid;gap:16px}.public-booking-summary,.public-booking-result dl{display:grid;gap:10px}.public-booking-summary div,.public-booking-result dl div{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.public-booking-summary dt,.public-booking-result dt{flex:0 0 auto;color:#6a7685;font-size:.8rem;font-weight:800}.public-booking-summary dd,.public-booking-result dd{min-width:0;color:#172033;font-size:.88rem;font-weight:800;text-align:right;overflow-wrap:anywhere}.public-booking-payment-options{display:grid;gap:8px;border:0}.public-booking-payment-options legend{margin-bottom:8px;color:#4d5a6b;font-size:.82rem;font-weight:900}.public-booking-payment-options button{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid #dbe3ec;border-radius:8px;background:#fff;color:#172033;cursor:pointer;font:inherit;text-align:left}.public-booking-payment-options button.is-selected{border-color:#176b63;background:#f2fbf9}.public-booking-payment-options strong{color:#172033;font-size:.9rem;font-weight:900}.public-booking-payment-options span{color:#6a7685;font-size:.78rem;font-weight:700;text-align:right}.public-booking-guest-fields{display:grid;gap:12px}.public-booking-result{display:grid;gap:10px;padding:15px;border:1px solid #bbf7d0;border-radius:8px;background:#f0fdf4}.public-booking-result>span{color:#15803d;font-size:.82rem;font-weight:900}.public-booking-result>strong{color:#172033;font-family:var(--font-mono);font-size:1.08rem;font-weight:900}.public-booking-empty{min-height:132px;display:grid;place-items:center;padding:24px;border:1px dashed #cdd7e2;border-radius:8px;background:#fff;color:#6a7685;font-weight:800;text-align:center}@media(max-width:920px){.public-booking-hero{min-height:auto}.public-booking-hero-inner{min-height:0}.public-booking-hero-grid,.public-booking-workspace{grid-template-columns:1fr}.public-booking-reservation-box{position:static}}@media(max-width:620px){.public-booking-hero{padding:16px}.public-booking-topline{align-items:flex-start;flex-direction:column}.public-booking-policy{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.public-booking-policy div{min-width:0;padding:10px}.public-booking-search-card,.public-booking-reservation-box{padding:16px}.public-booking-search-grid,.public-booking-room-card{grid-template-columns:1fr}.public-booking-search-grid label:last-child{grid-column:auto}.public-booking-content{width:calc(100% - 24px);padding-top:20px}.public-booking-content-header{align-items:flex-start;flex-direction:column}.public-booking-room-price{justify-items:start;text-align:left}.public-booking-payment-options button,.public-booking-summary div,.public-booking-result dl div{align-items:flex-start;flex-direction:column}.public-booking-summary dd,.public-booking-result dd,.public-booking-payment-options span{text-align:left}}.legacy-login-page,.legacy-login-page *{letter-spacing:0}.legacy-login-page{min-height:100vh;overflow:auto;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,480px);gap:clamp(20px,3vw,44px);padding:clamp(20px,3vw,48px);background:linear-gradient(135deg,#eff3f8eb,#e6edf6fa),#eef2f6;color:#26364d}.legacy-login-brand-panel{position:relative;min-height:calc(100vh - clamp(40px,6vw,96px));overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;gap:32px;padding:clamp(34px,5vw,68px);border-radius:8px;background:linear-gradient(140deg,#121f33eb,#1d4a82c2),url(https://images.unsplash.com/photo-1566073771259-6a8506099945?auto=format&fit=crop&w=1600&q=80) center / cover;color:#fff;box-shadow:0 24px 60px #11182724}.legacy-login-brand-panel:after{content:"";position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(0deg,#0913227a,#09132200);pointer-events:none}.legacy-login-copy,.legacy-login-feature-grid{position:relative;z-index:1}.legacy-login-copy{max-width:680px}.legacy-login-copy h1{max-width:560px;margin:0 0 18px;font-size:4rem;line-height:1.04;font-weight:800;word-break:keep-all}.legacy-login-copy p{max-width:560px;color:#ffffffd1;font-size:1.08rem;line-height:1.75;word-break:keep-all}.legacy-login-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.legacy-login-feature-grid>div{min-height:132px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:8px;padding:18px;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#ffffff1f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.legacy-login-feature-icon{display:inline-flex;min-width:38px;height:28px;align-items:center;justify-content:center;padding:0 9px;border-radius:6px;background:#fff3;color:#fff;font-size:.75rem;font-weight:800}.legacy-login-feature-grid strong{color:#fff;font-size:1rem;font-weight:800}.legacy-login-feature-grid span:last-child{color:#ffffffbd;font-size:.84rem;line-height:1.45}.legacy-login-card{align-self:center;justify-self:center;width:min(100%,420px);padding:34px;border:1px solid #d4dae6;border-radius:8px;background:#fff;box-shadow:0 18px 46px #16223321}.legacy-login-card-header{display:grid;gap:18px;margin-bottom:28px}.legacy-login-mobile-brand{display:flex;align-items:center;gap:10px;color:#26364d}.legacy-login-brand-mark{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:#2f68d8;color:#fff;font-weight:800}.legacy-login-card-header h2{margin:0;color:#17233a;font-size:1.82rem;line-height:1.16;font-weight:800}.legacy-login-form{display:grid;gap:16px}.legacy-login-form label{display:grid;gap:8px;color:#38475f;font-size:.9rem;font-weight:700}.legacy-login-input{height:48px;display:flex;align-items:center;gap:10px;padding:0 14px;border:1px solid #d4dae6;border-radius:8px;background:#f8fafc;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.legacy-login-input:focus-within{border-color:#2f68d8;background:#fff;box-shadow:0 0 0 3px #2f68d824}.legacy-login-input>span{width:26px;flex:0 0 26px;color:#6b778a;font-family:var(--font-mono);font-size:.72rem;font-weight:800}.legacy-login-input input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:#17233a;font:inherit;font-weight:600}.legacy-login-input input:disabled{color:#7b8797}.legacy-login-error{padding:11px 13px;border-radius:8px;background:#fee2e2;color:#b91c1c;font-size:.86rem;font-weight:700;line-height:1.5}.legacy-login-primary{height:50px;display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;border:0;border-radius:8px;background:#2f68d8;color:#fff;cursor:pointer;font:inherit;font-size:.96rem;font-weight:800;transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.legacy-login-primary:hover:not(:disabled){background:#2557bb;box-shadow:0 12px 24px #2f68d83d;transform:translateY(-1px)}.legacy-login-primary:disabled,.legacy-login-demo-list button:disabled{cursor:not-allowed;opacity:.72}.legacy-login-spinner{width:17px;height:17px;border:2px solid rgba(255,255,255,.42);border-top-color:#fff;border-radius:50%;animation:legacy-login-spin .75s linear infinite}.legacy-login-demo-list{display:grid;gap:10px;margin-top:28px}.legacy-login-eyebrow{color:#6b778a;font-size:.76rem;font-weight:800;text-transform:uppercase}.legacy-login-demo-list button{display:flex;align-items:center;gap:12px;width:100%;min-height:68px;padding:12px 14px;border:1px solid #dbe2ee;border-radius:8px;background:#fff;color:#26364d;cursor:pointer;text-align:left;font:inherit;transition:border-color .16s ease,background .16s ease,transform .16s ease}.legacy-login-demo-list button:hover:not(:disabled){border-color:#9db6e8;background:#f6f9ff;transform:translateY(-1px)}.legacy-login-account-icon{width:34px;height:34px;flex:0 0 34px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:#edf4ff;color:#2f68d8;font-size:.82rem;font-weight:800}.legacy-login-demo-list button div{min-width:0;display:grid;gap:4px}.legacy-login-demo-list button strong{color:#1e2a3a;font-size:.94rem;font-weight:800}.legacy-login-demo-list button div span{color:#66758a;font-size:.8rem;line-height:1.35}@keyframes legacy-login-spin{to{transform:rotate(360deg)}}@media(max-width:1120px){.legacy-login-page{grid-template-columns:minmax(0,1fr) minmax(340px,420px);gap:24px}.legacy-login-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.legacy-login-copy h1{font-size:3.1rem}}@media(max-width:860px){.legacy-login-page{display:block;padding:0;background:#fff}.legacy-login-brand-panel{min-height:340px;border-radius:0;padding:34px 24px}.legacy-login-copy h1{font-size:2.7rem}.legacy-login-card{width:100%;max-width:none;border:0;border-radius:0;box-shadow:none;padding:30px 24px 42px}}@media(max-width:520px){.legacy-login-brand-panel{min-height:420px}.legacy-login-feature-grid{grid-template-columns:1fr}.legacy-login-feature-grid>div{min-height:98px}.legacy-login-copy h1{font-size:2.35rem}.legacy-login-copy p{font-size:1rem}}
