@import "https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600&family=Plus+Jakarta+Sans:wght@600;700;800&display=swap";@font-face{font-family:GyeonggiMillenniumTitle;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/2410-3@1.0/Title_Light.woff)format("woff");font-weight:300;font-display:swap}@font-face{font-family:GyeonggiMillenniumTitle;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/2410-3@1.0/Title_Medium.woff)format("woff");font-weight:500;font-display:swap}@font-face{font-family:GyeonggiMillenniumTitle;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/2410-3@1.0/Title_Bold.woff)format("woff");font-weight:700;font-display:swap}@font-face{font-family:GyeonggiMillenniumTitle;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/2410-3@1.0/TitleV.woff)format("woff");font-weight:800;font-display:swap}:root{--color-primary:#ae3115;--color-primary-container:#ff6b4a;--color-brand-navy:#1e2c4a;--color-brand-ivory:#faf7f2;--color-surface-lowest:#fff;--color-secondary:#505e7f;color:#0b1c30;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background-color:#faf7f2;font-family:Be Vietnam Pro,Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background-color:#faf7f2;min-width:320px;min-height:100vh;margin:0}button,a,input,select{font:inherit}.preferred-region-page .preference-dropdown-button{justify-content:space-between;align-items:center;min-height:3rem;line-height:1;display:inline-flex}.preferred-region-page .preference-dropdown-value{flex:auto;min-width:0;line-height:1.25;display:block}.preferred-region-page .preference-dropdown-leading-icon{flex:0 0 1.75rem;justify-content:center;align-items:center;line-height:1;display:inline-flex}.preferred-region-page .preference-dropdown-icon{flex-shrink:0;justify-content:center;align-items:center;line-height:1;display:inline-flex}.preferred-region-page .selected-region-summary{align-items:center;display:flex}.preferred-region-page .selected-region-summary-content{flex-direction:column;justify-content:center;min-width:0;display:flex}.glass-nav{-webkit-backdrop-filter:blur(20px);background:#ffffffd9}.btn-primary{color:#fff;cursor:pointer;background-color:#ff6b4a;border:none;font-weight:600;transition:all .2s}.btn-primary:hover{transform:scale(1.02);box-shadow:0 8px 24px #ff6b4a4d}.btn-primary:active{transform:scale(.98)}.btn-secondary{color:#1e2c4a;cursor:pointer;background:#fff;border:1px solid #1e2c4a29;font-weight:600;transition:background-color .2s,border-color .2s,box-shadow .2s,transform .2s;box-shadow:0 3px 10px #1e2c4a0d}.btn-secondary:hover{background:#f4f6fa;border-color:#1e2c4a47;transform:translateY(-1px);box-shadow:0 8px 18px #1e2c4a14}.btn-action-chat,.btn-action-location,.btn-action-revoke,.btn-action-logout{cursor:pointer;border-style:solid;border-width:1px;justify-content:center;align-items:center;gap:.375rem;font-weight:700;transition:background-color .2s,border-color .2s,box-shadow .2s,transform .2s;display:inline-flex}.btn-action-chat{color:#fff;background:#1e2c4a;border-color:#1e2c4a;box-shadow:0 8px 18px #1e2c4a2e}.btn-action-chat:hover{background:#2a3d64;border-color:#2a3d64;transform:translateY(-1px);box-shadow:0 12px 24px #1e2c4a38}.btn-action-location{color:#ae3115;background:#fff2ed;border-color:#ffd2c6;box-shadow:0 5px 14px #ff6b4a17}.btn-action-location:hover{color:#8f2711;background:#ffe7df;border-color:#ffb8a8;transform:translateY(-1px);box-shadow:0 10px 20px #ff6b4a24}.btn-action-revoke{color:#b42318;background:#fff1f0;border-color:#efb8af}.btn-action-revoke:hover{color:#921d14;background:#ffe3e0;border-color:#df8f84;transform:translateY(-1px);box-shadow:0 8px 18px #b423181f}.btn-action-logout{color:#505e7f;background:#f4f6fa;border-color:#dce3ef}.btn-action-logout:hover{color:#1e2c4a;background:#eaf0f8;border-color:#c8d2e2;transform:translateY(-1px);box-shadow:0 8px 18px #1e2c4a14}.btn-action-chat:focus-visible,.btn-action-location:focus-visible,.btn-action-revoke:focus-visible,.btn-action-logout:focus-visible{outline-offset:2px;outline:3px solid #ff6b4a57}@media (width<=640px){.header-logged-in .btn-action-revoke,.header-logged-in .btn-action-logout{width:40px;height:40px;padding:0}.header-logged-in .header-action-label{display:none}}.btn-kakao{color:#000000d9;cursor:pointer;background-color:#fee500;border:none;font-weight:700;transition:all .2s;box-shadow:0 4px 14px #fee5004d}.btn-kakao:hover{transform:scale(1.02);box-shadow:0 6px 18px #fee50066}.btn-google{color:#3c4043;cursor:pointer;background-color:#fff;border:1px solid #dadce0;font-weight:600;transition:all .2s;box-shadow:0 2px 8px #0000000f}.btn-google:hover{background-color:#f8f9fa;transform:scale(1.02);box-shadow:0 4px 12px #0000001a}.card-hover{transition:all .3s cubic-bezier(.16,1,.3,1)}.card-hover:hover{transform:translateY(-4px)scale(1.01);box-shadow:0 20px 48px #1e2c4a1a}.chip{color:#ff6b4a;background:#ff6b4a1a}.pulse-ring{animation:2.5s cubic-bezier(.215,.61,.355,1) infinite pulse-ring}@keyframes pulse-ring{0%{transform:scale(.98);box-shadow:0 0 #ff6b4a99}70%{transform:scale(1);box-shadow:0 0 0 12px #ff6b4a00}to{transform:scale(.98);box-shadow:0 0 #ff6b4a00}}.page-shell{background:radial-gradient(circle at 12% 10%,#ff6b4a14,#0000 32%),radial-gradient(circle at 88% 88%,#1e2c4a0f,#0000 34%),#faf7f2;place-items:center;min-height:calc(100vh - 88px);padding:32px 16px;display:grid}.auth-card{text-align:center;background:#fff;border:1px solid #e1bfb866;border-radius:28px;width:min(100%,460px);padding:40px 32px;box-shadow:0 24px 60px #1e2c4a1a}.brand-mark{background:#faf7f2;border:1px solid #e1bfb866;border-radius:20px;place-items:center;width:64px;height:64px;margin:0 auto 20px;display:grid;overflow:hidden;box-shadow:0 8px 24px #1e2c4a1f}.brand-mark img{object-fit:cover;width:100%;height:100%}.eyebrow{color:#ff6b4a;letter-spacing:.15em;text-transform:uppercase;margin:0 0 10px;font-size:12px;font-weight:800}.auth-card h1{color:#1e2c4a;letter-spacing:-.03em;margin:0;font-size:clamp(22px,5vw,28px);font-weight:800;line-height:1.3}.auth-card .description{color:#505e7f;margin:12px 0 0;font-size:14px;line-height:1.6}.primary-link,.secondary-link{cursor:pointer;border-radius:9999px;justify-content:center;align-items:center;width:100%;min-height:50px;margin-top:24px;font-size:15px;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex}.primary-link{color:#fff;background:#ff6b4a;border:none;box-shadow:0 8px 24px #ff6b4a40}.primary-link:hover{transform:scale(1.02);box-shadow:0 10px 28px #ff6b4a59}.secondary-link{color:#1e2c4a;background:0 0;border:2px solid #1e2c4a}.secondary-link:hover{background:#1e2c4a0d;transform:scale(1.02)}.status-icon{color:#ff6b4a;background:#eff4ff;border-radius:50%;place-items:center;width:56px;height:56px;margin:0 auto 24px;display:grid}.status-icon.is-loading{background:0 0;border:4px solid #e5eeff;border-top-color:#ff6b4a;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(8px);opacity:0;pointer-events:none;background-color:#0b1c3073;place-items:center;padding:16px;transition:opacity .25s;display:grid;position:fixed;inset:0}.modal-backdrop.is-open{opacity:1;pointer-events:auto}.modal-card{background:#fff;border:1px solid #e1bfb866;border-radius:28px;width:min(100%,460px);max-height:90vh;padding:36px 28px;transition:transform .25s cubic-bezier(.16,1,.3,1);position:relative;overflow-y:auto;transform:translateY(12px)scale(.98);box-shadow:0 24px 60px #1e2c4a33}.modal-backdrop.is-open .modal-card{transform:translateY(0)scale(1)}.matching-page{background:radial-gradient(circle at 8% 4%,#ff6b4a14,#0000 28%),radial-gradient(circle at 94% 78%,#1e2c4a12,#0000 30%),#faf7f2;min-height:calc(100vh - 88px)}.matching-page .matching-card{border:1px solid #e1bfb88c;box-shadow:0 16px 40px #1e2c4a0f}.matching-page .matching-control{color:#0b1c30;background:#fff;border:1px solid #e1bfb8cc;min-height:48px;transition:border-color .16s,box-shadow .16s}.matching-page .matching-control:focus{border-color:#ff6b4a;outline:none;box-shadow:0 0 0 3px #ff6b4a29}.matching-page .matching-tag{color:#1e2c4a;background:#fff;border:1px solid #e1bfb8;min-height:44px;transition:background-color .16s,border-color .16s,color .16s,transform .16s}.matching-page .matching-tag:hover{border-color:#ff6b4a;transform:translateY(-1px)}.matching-page .matching-tag.is-selected{color:#fff;background:#ff6b4a;border-color:#ff6b4a;box-shadow:0 6px 16px #ff6b4a33}.matching-page .matching-stepper{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.matching-page .matching-stepper-item{color:#505e7f;align-items:center;gap:.5rem;min-width:0;display:flex}.matching-page .matching-stepper-node{color:#505e7f;background:#fff;border:1px solid #8d716a73;border-radius:999px;flex-shrink:0;place-items:center;width:2rem;height:2rem;font-size:.75rem;font-weight:800;display:inline-grid}.matching-page .matching-stepper-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.75rem;font-weight:700;overflow:hidden}.matching-page .matching-stepper-item.is-current{color:#ae3115}.matching-page .matching-stepper-item.is-current .matching-stepper-node{color:#fff;background:#ff6b4a;border-color:#ff6b4a;box-shadow:0 4px 12px #ff6b4a33}.matching-page .matching-stepper-item.is-complete{color:#1e2c4a}.matching-page .matching-stepper-item.is-complete .matching-stepper-node{color:#ae3115;background:#ffe4de;border-color:#ff6b4a}.matching-page .matching-step-progress{background:#eff4ff;border-radius:999px;height:.375rem;margin-top:.75rem;overflow:hidden}.matching-page .matching-step-progress>span{border-radius:inherit;background:linear-gradient(90deg,#ff6b4a,#ffad98);height:100%;transition:width .24s;display:block}.matching-page .matching-selection-summary{border-bottom:1px solid #e1bfb859;padding-bottom:1rem}.matching-page .matching-summary-chip{max-width:100%}.matching-page .matching-form-actions>div:last-child{min-width:0}.matching-page .matching-tag:focus-visible,.matching-page button:focus-visible,.matching-page a:focus-visible,.matching-page input:focus-visible,.matching-page textarea:focus-visible,.matching-page select:focus-visible{outline-offset:2px;outline:3px solid #ff6b4a57}.matching-page .matching-status-orbit{place-items:center;display:grid;position:relative}.matching-page .matching-status-orbit:before,.matching-page .matching-status-orbit:after{content:"";border:1px solid #ff6b4a4d;border-radius:999px;animation:2.8s ease-out infinite matching-orbit;position:absolute}.matching-page .matching-status-orbit:before{inset:-10px}.matching-page .matching-status-orbit:after{animation-delay:.9s;inset:-22px}.matching-page .matching-avatar-fallback{color:#fff;background:linear-gradient(135deg,#ff6b4a,#1e2c4a);place-items:center;width:100%;height:100%;font-family:Plus Jakarta Sans,Pretendard,sans-serif;font-size:2rem;font-weight:800;display:grid}.matching-page .matching-avatar img.is-hidden{display:none}.matching-page .matching-progress{background:#eff4ff;border-radius:999px;height:8px;overflow:hidden}.matching-page .matching-progress>span{border-radius:inherit;background:linear-gradient(90deg,#ff6b4a,#ffad98);width:42%;height:100%;animation:2.4s ease-in-out infinite matching-progress;display:block}.matching-page .matching-skeleton{background:linear-gradient(90deg,#eff4ff 25%,#fff 50%,#eff4ff 75%) 0 0/200% 100%;animation:1.4s ease-in-out infinite matching-skeleton}@keyframes matching-orbit{0%{opacity:.8;transform:scale(.82)}70%,to{opacity:0;transform:scale(1.08)}}@keyframes matching-progress{0%{transform:translate(-130%)}50%{transform:translate(110%)}to{transform:translate(260%)}}@keyframes matching-skeleton{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.matching-page .matching-status-orbit:before,.matching-page .matching-status-orbit:after,.matching-page .matching-progress>span,.matching-page .matching-skeleton,.matching-page .matching-step-progress>span{transition:none;animation:none}}@media (width<=640px){.matching-page .matching-stepper,.matching-page .matching-stepper-item{gap:.375rem}.matching-page .matching-stepper-node{width:1.75rem;height:1.75rem}.matching-page .matching-stepper-label{font-size:.6875rem}.matching-page .matching-form-actions>div:last-child,.matching-page .matching-form-actions>div:last-child>button{width:100%}}
