.auth-page{place-items:center;min-height:100dvh;padding:38px 24px;display:grid}.auth-shell{background:var(--paper);border:1px solid #c7b590;border-radius:9px;grid-template-columns:.95fr 1.05fr;width:min(100%,980px);display:grid;overflow:hidden;box-shadow:0 12px 42px #372a1212}.auth-story{color:#fff8e9;background:#253145;flex-direction:column;min-width:0;padding:35px;display:flex}.auth-brand{color:#ecd8ad;align-items:center;gap:11px;width:fit-content;text-decoration:none;display:flex}.auth-brand>span{letter-spacing:.045em;font-family:Noto Serif KR,Batang,Georgia,serif;font-size:1.125rem}.auth-brand small{letter-spacing:.13em;margin-top:2px;font-family:Georgia,serif;font-size:.75rem;display:block}.auth-story-body{margin:auto 0;padding:45px 0 35px}.auth-story .eyebrow{color:#ccb585;letter-spacing:.11em;font-size:.75rem}.auth-story h1{letter-spacing:-.035em;font-family:Noto Serif KR,Batang,Georgia,serif;font-size:1.95rem;font-weight:400;line-height:1.65}.auth-card-images{justify-content:center;align-items:center;gap:7px;margin:37px 0;display:flex}.auth-card-images img{aspect-ratio:.59;object-fit:contain;background:#e5d6b8;border:1px solid #c6ae7d;border-radius:3px;width:32%;height:auto;padding:4px;box-shadow:0 9px 18px #0003}.auth-card-images img:first-child{transform:rotate(-8deg)translateY(12px)}.auth-card-images img:last-child{transform:rotate(8deg)translateY(12px)}.auth-story-body>p:last-child{color:#d4c5a6;text-align:center;font-size:.9375rem}.auth-story-footer{color:#c8b898;border-top:1px solid #526071;padding-top:18px;font-size:.8125rem}.auth-form-panel{min-width:0;padding:38px 37px}.auth-form-heading{margin-bottom:23px}.auth-form-heading h2,.recovery-result h2{font-family:Noto Serif KR,Batang,Georgia,serif;font-size:1.6rem;font-weight:500;line-height:1.5}.auth-form-heading p{color:var(--muted-foreground);margin-top:8px;font-size:.9375rem}.auth-tabs{width:100%;height:45px;margin-bottom:17px}.auth-tabs [data-slot=tabs-trigger]{min-height:38px;font-size:.9375rem}.auth-form{flex-direction:column;gap:17px;display:flex}.auth-field{flex-direction:column;gap:8px;font-size:.9375rem;display:flex}.auth-field>input,.auth-password{border:1px solid var(--input);background:#fcfaf5;border-radius:4px;width:100%}.auth-field input{min-height:46px;padding:10px 12px;font-size:1rem}.auth-password{align-items:center;display:flex}.auth-password input{background:0 0;border:0;flex:1;width:100%;min-width:0}.auth-password button{flex-shrink:0;margin-right:4px}.auth-submit{width:100%;min-height:48px;margin-top:4px;font-size:1rem}.auth-help{color:var(--muted-foreground);font-size:.875rem;line-height:1.75}.auth-forgot{min-height:42px;margin:12px auto 0;font-size:.875rem;display:flex}.auth-bottom-links{border-top:1px solid var(--border);color:#806a46;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:23px;padding-top:24px;font-size:.8125rem;display:flex}.auth-bottom-links a{text-underline-offset:4px;min-height:30px;text-decoration:underline}.auth-link-note{background:#eee5d2;border:1px solid #d5c3a0;margin-bottom:20px;padding:13px;font-size:.875rem}.auth-back{margin:-8px 0 12px;padding-left:0}.recovery-result{flex-direction:column;align-items:flex-start;gap:20px;padding-block:12px;display:flex}.recovery-result>svg{color:var(--gold)}.recovery-result>p{font-size:1rem}.recovery-card{background:#f0e8d8;border:1px solid #bdab87;border-radius:5px;flex-direction:column;gap:11px;width:100%;padding:18px;display:flex}.recovery-card>span,.recovery-card label{color:#766448;font-size:.875rem}.recovery-card strong{color:var(--ink);margin-left:7px}.recovery-card textarea{resize:none;background:var(--paper);border:1px solid var(--border);width:100%;padding:8px;font-family:monospace;font-size:1rem;line-height:1.7}.recovery-card button{white-space:normal;min-height:42px}.recovery-confirm{cursor:pointer;align-items:center;gap:10px;min-height:44px;font-size:.9375rem;display:flex}@media (max-width:740px){.auth-page{padding:18px 14px}.auth-shell{grid-template-columns:1fr;max-width:480px}.auth-story{padding:21px 25px}.auth-story-body,.auth-story-footer{display:none}.auth-form-panel{padding:27px 24px}.auth-form-heading h2,.recovery-result h2{font-size:1.45rem}}
