@import url("/fonts.css");
:root{--white:#fff;--ink:#1d1d1f;--paper:#f5f5f7;--line:#e5e5ea;--muted:#6e6e73;--error:#b42318;font-family:var(--font-ui);color:var(--ink);background:var(--white);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait}h1,h2,p{margin:0}svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
:focus-visible{outline:3px solid #86868b;outline-offset:4px}[hidden]{display:none!important}
.login-page{height:100svh;height:100dvh;display:grid;grid-template-rows:72px minmax(0,1fr)}
.login-header{padding:0 clamp(24px,4vw,64px);display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;align-items:center;gap:10px;font-size:22px;font-weight:650;letter-spacing:-.8px}.brand-mark{width:34px;height:34px;display:grid;place-items:center;background:var(--ink);color:var(--white);border-radius:11px;font-size:26px;font-weight:700;line-height:1;padding-bottom:4px;letter-spacing:-1.5px}.header-note{font-size:13px;color:var(--muted)}
.login-layout{width:100%;max-width:1600px;height:100%;margin:0 auto;align-self:stretch;min-height:0;padding:0 24px 24px;display:grid;grid-template-columns:1.06fr 1fr;gap:24px}
.intro{min-height:0;padding:clamp(24px,3.5vw,56px);overflow:hidden;background:var(--paper);border-radius:28px;display:flex;flex-direction:column;justify-content:space-between;gap:24px}
.eyebrow{font-size:14px;line-height:1.4;font-weight:600;color:var(--muted);margin-bottom:16px}.intro h1{font-size:clamp(34px,3.5vw,54px);font-weight:650;line-height:1.07;letter-spacing:-1.8px;text-wrap:balance}.intro h1 span{color:var(--muted)}.intro-description{max-width:390px;font-size:15px;line-height:1.55;color:var(--muted);margin-top:18px;text-wrap:pretty}
.content-composition{position:relative;align-self:center;flex-shrink:0;width:252px;margin:8px 22px 4px 0;padding-bottom:27px;isolation:isolate}.paper{border:1px solid #dedee3;background:var(--white);border-radius:18px}.paper-back,.paper-middle{position:absolute;inset:0 0 27px;z-index:-1}.paper-back{transform:translate(23px,0) rotate(8deg);background:#e9e9ed}.paper-middle{transform:translate(12px,0) rotate(3deg)}.paper-front{position:relative;padding:21px;box-shadow:0 12px 35px #1d1d1f08}.paper-top,.paper-bottom{display:flex;justify-content:space-between;gap:12px;align-items:center}.paper-top{font-size:10px;font-weight:600;color:var(--muted)}.paper-top span:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}.paper-front>p{font-size:38px;font-weight:650;line-height:1.03;letter-spacing:-1.4px;padding:22px 0}.paper-front>p span{color:var(--muted)}.paper-bottom{border-top:1px solid var(--line);padding-top:12px;font-size:11px;line-height:1.45;font-weight:500}.paper-arrow{font-size:25px;line-height:1}.composition-caption{position:absolute;bottom:0;left:0;display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted)}.caption-line{width:22px;height:1px;background:#b4b4bc}
.access{min-height:0;padding:24px clamp(24px,4vw,64px);display:grid;grid-template-rows:minmax(0,1fr) auto;gap:20px;align-items:center;justify-items:center;overflow-y:auto;scrollbar-width:thin}.access-inner{width:100%;max-width:368px}.access-heading h2{font-size:32px;font-weight:650;letter-spacing:-1.1px;line-height:1.15}.access-heading p{margin-top:12px;font-size:15px;color:var(--muted);line-height:1.5}.login-form{margin-top:30px;display:grid;gap:20px}.login-field{display:grid;gap:8px}.login-field label{font-size:13px;font-weight:600}.login-field input{width:100%;min-width:0;height:52px;padding:14px 16px;border:1px solid #d2d2d7;border-radius:12px;background:var(--white);color:var(--ink);font-size:16px;line-height:1.4;transition:border-color .18s,box-shadow .18s}.login-field input::placeholder{color:#86868b;opacity:1}.login-field input:focus{border-color:#86868b;box-shadow:0 0 0 3px #1d1d1f08;outline:none}.login-field input:focus-visible{outline:2px solid #86868b;outline-offset:2px}.login-field input[aria-invalid=true]{border-color:var(--error)}.password-control{position:relative}.password-control input{padding-right:58px}.password-toggle{position:absolute;right:4px;top:4px;bottom:4px;width:44px;display:grid;place-items:center;border:0;border-radius:9px;background:transparent;color:var(--muted)}.password-toggle:hover{background:var(--paper);color:var(--ink)}.eye-closed,.password-toggle[aria-pressed=true] .eye-open{display:none}.password-toggle[aria-pressed=true] .eye-closed{display:block}
.login-submit{width:100%;min-height:52px;display:flex;justify-content:center;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--ink);border-radius:12px;background:var(--ink);color:var(--white);font-size:15px;font-weight:600;line-height:1.4;transition:background .18s,transform .18s}.login-submit:hover{background:#363638}.login-submit:active{transform:scale(.99)}.login-submit:disabled{opacity:.65}.login-error{font-size:13px;line-height:1.5;color:var(--error);border-radius:10px;background:#fff2f1;padding:10px 12px}.access-note{font-size:12px;line-height:1.5;text-align:center;color:var(--muted)}.access-footer{font-size:12px;color:var(--muted)}
@media(min-width:901px) and (max-height:780px){.intro{padding:28px 36px;gap:16px}.intro h1{font-size:42px}.intro-description{font-size:14px;margin-top:14px;max-width:365px}.eyebrow{margin-bottom:12px}.content-composition{width:218px;padding-bottom:24px;margin-top:0}.paper-front{padding:18px}.paper-front>p{font-size:31px;padding:18px 0}.paper-bottom{font-size:10px;padding-top:9px}.paper-back,.paper-middle{bottom:24px}}
@media(max-width:900px){.login-layout{gap:8px;padding:0 16px 16px;grid-template-columns:1fr 1fr}.intro{padding:28px 24px}.intro h1{font-size:36px;letter-spacing:-1.3px}.intro-description{font-size:14px}.content-composition{width:206px}.paper-front{padding:18px}.paper-front>p{font-size:30px}.access{padding:24px}.access-heading h2{font-size:28px}.header-note{display:none}}
@media(max-width:700px){.login-page{grid-template-rows:68px minmax(0,1fr)}.login-header{padding:0 24px}.login-layout{display:block;padding:0;max-width:500px}.intro{display:none}.access{height:100%;padding:24px 28px max(24px,env(safe-area-inset-bottom));gap:24px}.access-inner{max-width:368px}.access-heading h2{font-size:32px}.access-footer{align-self:end}}
@media(max-height:640px){.intro{justify-content:center}.content-composition{display:none}.access{gap:12px;padding-top:16px;padding-bottom:16px}.access-heading h2{font-size:28px}.access-heading p{margin-top:8px}.login-form{margin-top:22px;gap:16px}.access-footer{display:none}}
@media(max-height:480px){.login-page{grid-template-rows:52px minmax(0,1fr)}.login-header{padding-inline:24px}.brand{font-size:19px}.brand-mark{width:29px;height:29px;font-size:23px}.access{display:block;padding:12px 24px}.access-inner{margin:auto}.access-heading h2{font-size:24px}.access-heading p,.access-note{display:none}.login-form{margin-top:16px;gap:12px}.login-field{gap:5px}.login-field input{height:44px;padding:10px 14px}.login-submit{min-height:44px;padding:10px}.intro h1{font-size:34px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

@media(min-width:701px) and (max-width:900px) and (max-height:720px){.content-composition{display:none}.intro{justify-content:center}}
