.auth-page{min-height:100dvh;background:#fff}.auth-portrait{height:43dvh;min-height:285px;max-height:470px;background:url(assets/login-photo.webp) center 37%/cover;position:relative}.auth-portrait:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 65%,#fff 100%)}.auth-wordmark{position:absolute;left:20px;top:20px;width:139px;z-index:2}.brand-lockup{display:block;width:100%;height:auto}.auth-content{position:relative;z-index:2;padding:0 24px 22px;margin-top:-5px;text-align:center}.auth-content h1{font-size:25px;letter-spacing:-1px;font-weight:800}.auth-subtitle{font-size:14px;line-height:1.8;color:#ad8e9c;margin:7px 0 20px}.auth-content>.btn{margin-top:9px;min-height:48px;border-radius:15px;font-size:14px}.auth-content>.btn-outline{min-height:44px;font-size:14px;font-weight:500}.auth-divider{height:42px;display:flex;align-items:center;gap:13px;color:#b1a0aa;font-size:14px}.auth-divider:before,.auth-divider:after{content:'';height:1px;background:#eee8ec;flex:1}.social-row{display:flex;justify-content:center;gap:29px}.social-button{display:flex;flex-direction:column;align-items:center;gap:7px;padding:0;min-width:48px}.social-button small{font-size:14px;color:#998a96}.social-circle{width:45px;height:45px;border-radius:50%;display:grid;place-items:center;border:1px solid #e6e0e5;position:relative;font-family:Arial,sans-serif}.social-circle.google b{font-size:31px;background:conic-gradient(#4285f4 0deg 90deg,#34a853 90deg 165deg,#fbbc05 165deg 220deg,#ea4335 220deg 285deg,#4285f4 285deg);background-clip:text;-webkit-text-fill-color:transparent}.social-circle.kakao{background:#fee500;border-color:#fee500;color:#211b12}.social-circle.kakao svg{fill:#211b12;stroke:none;width:26px;height:26px}.social-circle.apple{background:#151515;border-color:#151515;color:white;font-size:37px;line-height:1}.social-circle.apple:before{content:'';position:absolute;background:#151515;width:11px;height:12px;top:11px;right:7px;border-radius:50%}.social-circle.apple i{position:absolute;top:6px;left:24px;width:7px;height:4px;border-radius:6px 0 6px 0;background:white;transform:rotate(-30deg)}.auth-browse{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;min-height:43px;font-size:14px;color:#aa909f;margin-top:13px;text-decoration:underline;text-underline-offset:4px}.auth-browse svg{height:13px;width:13px}.auth-legal{font-size:14px;color:#b5a6af;line-height:1.8;margin-top:10px}.inline-link{font-size:inherit;text-decoration:underline;padding:1px;color:inherit}.auth-form-page{min-height:100dvh;background:#fff}.auth-form-content{padding:28px 23px}.auth-form-content h2{font-size:27px;line-height:1.45;letter-spacing:-1px}.auth-form-content form{margin-top:25px}.auth-input-row{display:flex;gap:8px}.auth-input-row input{min-width:0;flex:1}.auth-code-btn{border:1px solid #f2d3df;border-radius:12px;color:#df5c80;padding:0 12px;white-space:nowrap;font-size:14px;min-height:46px;background:#fff6f9}.password-wrap{position:relative}.password-wrap input{padding-right:50px}.password-toggle{position:absolute;right:8px;top:0;height:100%;font-size:14px;color:#b38ba1;min-width:36px}.auth-consents{padding:5px 0 16px}.auth-consents .consent{font-size:14px;margin:11px 0}.auth-form-note{font-size:14px;color:#b59ba9;line-height:1.8;text-align:center;margin-top:14px}.welcome-gift{height:80px;position:relative;display:grid;place-items:center;font-size:47px;margin-top:10px}.welcome-gift span{font-size:17px;color:#ffa3be;position:absolute;left:61%;top:11px}.welcome-copy{text-align:center;font-size:14px!important;color:#9d7a8e!important;line-height:1.9!important}.referral-benefit{padding:13px 10px;display:flex;align-items:center;justify-content:center;gap:8px;background:#fff1f6;color:#b85a80;border-radius:13px;font-size:14px;margin-top:13px}.referral-benefit svg{height:18px;width:18px}.referral-benefit strong{font-size:15px;color:#ed527a}.auth-profile-cta{margin-top:15px}.auth-profile-cta .btn{min-height:40px;font-size:14px}.app-shell:has(.auth-page),.app-shell:has(.auth-form-page){padding-bottom:0}@media(max-height:740px){.auth-portrait{height:36dvh;min-height:240px}.auth-content h1{font-size:22px}.auth-subtitle{margin-bottom:13px}.auth-divider{height:35px}.auth-browse{margin-top:7px;min-height:34px}.auth-content{padding-bottom:13px}}@media(min-width:650px){.auth-page{min-height:100vh}}

.auth-portrait{height:51dvh;min-height:320px}.auth-first-benefit{font-size:14px;color:#b38d9f}.auth-first-benefit strong{color:#ec6686;font-size:14px}.auth-error{font-size:14px;line-height:1.8;color:#c85c80;margin:8px 0 13px}.header-brand{height:40px;width:133px;display:block}.wordmark{padding:0}.account-strip{margin-top:17px;display:flex;gap:10px;flex-wrap:wrap;align-items:center;font-size:14px;color:#b27e99}.account-strip span{font-size:14px;color:#e2678b}.account-strip small{font-size:14px;color:#b599a9}.search-submit{font-size:14px;color:#df6487;background:white;border-radius:10px;padding:8px;white-space:nowrap;min-width:41px}.recent-searches{font-size:14px;color:#aa8a9e;margin-bottom:12px}.recent-searches>div:first-child{display:flex;justify-content:space-between;margin-bottom:8px}.recent-searches button{font-size:14px}
#referral-code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-variant-numeric:slashed-zero tabular-nums;letter-spacing:1px}.referral-feedback{font-size:14px!important;line-height:1.7!important;text-align:left;margin:8px 0}.referral-feedback.valid{color:#43896d!important;background:#edf9f1;border-radius:12px;padding:10px 12px}.referral-feedback.invalid{color:#cf456a!important;background:#fff0f5;border-radius:12px;padding:10px 12px}

.google-login-box{margin:13px auto 3px;min-height:46px;width:100%;display:flex;align-items:center;flex-direction:column;gap:7px}.google-login-slot{min-height:44px;font-size:14px;color:#a08b98;display:flex;align-items:center;justify-content:center;max-width:100%}.google-login-error{font-size:14px;color:#c83d67;line-height:1.6;margin:0}.google-login-busy{opacity:.65;pointer-events:none}.google-canonical-link{display:block;padding:12px 20px;background:#fff;border:1px solid #dfd8df;border-radius:24px;color:#554550;font-size:15px;text-decoration:none}.onboarding-placeholder{min-height:100dvh;display:grid;align-content:center;padding:32px;text-align:center;background:radial-gradient(#fff,#fff0f6);color:#805b70}.onboarding-placeholder h1{font-size:24px}.onboarding-placeholder p{font-size:16px;line-height:1.8}

.kakao-login-button{width:100%;background:#fee500;color:#251b12;border:0;margin:10px 0}.kakao-login-button span{font-size:20px;margin-right:10px}.provider-error,.provider-status{font-size:14px;line-height:1.7;text-align:left;overflow-wrap:anywhere;color:#9c4969}.sms-verification{padding:12px 0}.sms-code-row{display:flex;align-items:flex-end;gap:10px;margin-top:12px}.sms-code-row[hidden]{display:none}.sms-code-row label{flex:1;min-width:0;font-size:15px}.sms-code-row input{width:100%;font-size:16px;min-height:48px;border:1px solid #eddbe3;border-radius:14px;padding:10px 12px}.sms-code-row .btn{width:auto;min-width:64px}
/* Login: keep the portrait clear and restore compact, honest provider icons. */
.auth-social-row{display:flex;justify-content:center;align-items:flex-start;gap:28px;margin:20px auto 7px;max-width:100%}.auth-social-item{position:relative;display:flex;flex-direction:column;align-items:center;gap:7px;min-width:52px;width:58px;flex:0 0 58px}.auth-social-row .google-login-box{margin:0;min-height:0;width:58px;gap:7px}.auth-social-row .google-login-slot{height:48px;min-height:48px;width:48px;max-width:48px;color:#4285f4;font:700 23px Arial,sans-serif}.auth-provider-circle{width:48px;height:48px;min-height:48px;padding:0;display:grid;place-items:center;border-radius:50%;border:1px solid #e8e1e6;background:white;text-decoration:none}.auth-provider-circle svg{width:27px;height:27px;fill:currentColor}.auth-provider-circle.kakao{background:#fee500;border-color:#fee500;color:#211b12}.auth-provider-circle.apple{background:#17151a;border-color:#17151a;color:white}.auth-provider-circle.google{color:#4285f4;font:700 23px Arial,sans-serif}.auth-provider-circle:disabled{opacity:1;cursor:default}.auth-provider-circle:focus-visible{outline:3px solid #ff83a8;outline-offset:4px}.auth-social-label{font-size:14px;line-height:1.4;color:#67535f;white-space:nowrap}.auth-provider-note{font-size:12px;line-height:1.3;color:#917d89;white-space:nowrap}.auth-social-row .google-login-error,.auth-social-row .provider-error{position:relative;width:100px;max-width:100px;font-size:12px;line-height:1.5;text-align:center;overflow-wrap:anywhere;margin:0}.auth-social-row .google-canonical-link{padding:0}.auth-social-row [hidden]{display:none!important}@media(max-width:319px){.auth-content{padding-left:16px;padding-right:16px}.auth-social-row{gap:20px}.auth-content h1{font-size:22px}.auth-content>.btn{font-size:14px}}

/* Short password actions stay on one line on Fold cover screens. */
.password-toggle{width:auto!important;min-width:48px!important;max-width:none;white-space:nowrap!important;word-break:keep-all!important;overflow-wrap:normal!important;writing-mode:horizontal-tb;line-height:1.3;padding:0 8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.password-wrap{min-width:0}.password-wrap input{width:100%;min-width:0;padding-right:66px!important}

/* Match the official 40px GIS circle while retaining 48px touch targets. */
.auth-provider-circle{position:relative;isolation:isolate;border:0!important;background:transparent!important}.auth-provider-circle::before{content:"";position:absolute;inset:4px;border-radius:50%;background:#fff;border:1px solid #e8e1e6;z-index:-1;pointer-events:none}.auth-provider-circle.kakao::before{background:#fee500;border-color:#fee500}.auth-provider-circle.apple::before{background:#17151a;border-color:#17151a}.auth-provider-circle svg{width:23px;height:23px}.auth-provider-note{font-size:14px;line-height:1.4}.auth-social-label{min-height:20px}
