/* #443: Regain's public identity on both sign-in screens. */
@font-face{font-family:'Regain Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('/client/inter-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Regain Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('/client/inter-latin-ext.woff2') format('woff2');unicode-range:U+0100-02FF,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@layer components{
.session-login-page{display:block;width:100%;max-width:none;min-height:100svh;margin:0;padding:0;background:var(--regain-paper);color:var(--regain-ink);color-scheme:light}
.session-login{display:flex;flex-direction:column;min-height:100svh;width:min(1280px,calc(100% - 112px));margin:0 auto;font-family:var(--regain-font);font-size:var(--fs-10);line-height:1.55;-webkit-font-smoothing:antialiased}
.session-login-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-24);min-height:112px}
.session-login-brand{display:flex;align-items:center;flex:none;min-height:44px;text-decoration:none}
.session-login-logo{display:block;width:160px;height:auto}
.session-login-product{color:var(--regain-soft);font-size:var(--fs-10)}
.session-login .session-login-main{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:clamp(2rem,6vw,6rem);flex:1;width:100%;padding:var(--sp-48) 0}
.session-login .session-login-headline{margin:0;font-size:var(--fs-17);font-weight:600;line-height:1.15;letter-spacing:-.025em;color:var(--regain-ink)}
.session-login-headline span{display:block;color:var(--regain-primary)}
.session-login .session-login-lead{max-width:400px;margin:var(--sp-24) 0 0;color:var(--regain-soft);font-size:var(--fs-12);line-height:1.55}
.session-login-illustration{display:block;width:min(100%,400px);height:auto;margin:var(--sp-32) 0 0}
.session-login .session-login-form{width:100%;max-width:440px;padding:var(--sp-16) 0 var(--sp-16) var(--sp-48);border-left:1px solid var(--regain-line)}
.session-login .session-login-eyebrow{margin:0 0 var(--sp-16);font-size:var(--fs-7);font-weight:600;letter-spacing:.08em;color:var(--regain-primary)}
.session-login h1{margin:0;font-size:var(--fs-16);font-weight:600;line-height:1.2;letter-spacing:-.025em;color:var(--regain-ink)}
.session-login .session-login-description{margin:var(--sp-16) 0 var(--sp-32);color:var(--regain-soft);font-size:var(--fs-10)}
.session-login-actions{display:grid;gap:var(--sp-16)}
.session-login button{display:flex;align-items:center;justify-content:center;gap:var(--sp-12);width:100%;min-height:52px;padding:var(--sp-14) var(--sp-20);border:1px solid var(--regain-primary);border-radius:var(--r-sm);background:var(--regain-primary);color:var(--regain-paper);font:inherit;font-size:var(--fs-11);font-weight:600;line-height:1.5;text-align:center;white-space:normal;height:auto;cursor:pointer;box-shadow:none;transition:background-color .2s,border-color .2s,color .2s}
.session-login button:not(:disabled):hover{background:var(--regain-primary-dark);border-color:var(--regain-primary-dark);color:var(--regain-paper)}
.session-login button:not(:disabled):active{transform:translateY(1px)}
.session-login button.ghost{background:transparent;color:var(--regain-primary)}
.session-login button.ghost:not(:disabled):hover{background:var(--regain-tint);color:var(--regain-ink)}
.session-login button:disabled{opacity:.55;cursor:default}
.session-login .session-login-error:empty{display:none}
.session-login .session-login-error{margin:0;padding:var(--sp-16);border-left:3px solid var(--regain-primary);background:var(--regain-tint);color:var(--regain-ink);font-size:var(--fs-10);overflow-wrap:anywhere}
.session-login .session-login-help{margin:var(--sp-16) 0 0;padding-top:var(--sp-24);border-top:1px solid var(--regain-line);color:var(--regain-soft);font-size:var(--fs-8)}
.session-login form{display:grid;gap:var(--sp-20)}
.session-login-providers{display:grid;gap:var(--sp-12)}
.session-login label{display:grid;gap:var(--sp-8);color:var(--regain-ink);font-size:var(--fs-10)}
.session-login input{width:100%;min-height:52px;padding:var(--sp-12);border:1px solid var(--regain-line-strong);border-radius:var(--r-sm);background:var(--regain-paper);color:var(--regain-ink);font:inherit}
.session-login input:focus{border-color:var(--regain-primary);box-shadow:none}
.session-login :is(a,button,input):focus-visible{outline:3px solid var(--regain-primary);outline-offset:4px;box-shadow:none}
.session-login-footer{display:flex;justify-content:space-between;gap:var(--sp-24);margin:0;padding:var(--sp-24) 0;border-top:1px solid var(--regain-line);color:var(--regain-soft);font-size:var(--fs-8)}
.session-logout{margin:var(--sp-12)}
@media(max-width:860px){
  .session-login{width:calc(100% - 64px)}
  .session-login .session-login-main{grid-template-columns:minmax(0,1fr);gap:var(--sp-40);padding:var(--sp-32) 0 var(--sp-48)}
  .session-login-intro{max-width:540px}
  .session-login-illustration{display:none}
  .session-login .session-login-form{max-width:540px;padding:var(--sp-32) 0 0;border-left:0;border-top:1px solid var(--regain-line)}
}
@media(max-width:600px){
  .session-login{width:calc(100% - 40px)}
  .session-login-header{min-height:88px;gap:var(--sp-16)}
  .session-login-logo{width:128px}
  .session-login-product{max-width:130px;font-size:var(--fs-8);text-align:right}
  .session-login .session-login-headline{font-size:var(--fs-15)}
  .session-login .session-login-lead{margin-top:var(--sp-16);font-size:var(--fs-10)}
  .session-login .session-login-main{gap:var(--sp-32);padding-top:var(--sp-24)}
  .session-login h1{font-size:var(--fs-15)}
  .session-login-footer{gap:var(--sp-16)}
}
@media(prefers-reduced-motion:reduce){.session-login button{transition:none}}
/* #208: file inputs drawn as a Czech button (web/session.js); the real input stays in place, 1 px small, for focus and labels. */
.file-picker-native{position:absolute!important;width:1px!important;min-width:0!important;max-width:1px!important;height:1px!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}
.file-picker{display:inline-flex;align-items:center;gap:var(--sp-10);flex-wrap:wrap;max-width:100%;cursor:pointer;font:inherit}
.file-picker-button{display:inline-flex;align-items:center;min-height:34px;padding:var(--sp-6) var(--sp-14);border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font-weight:600;white-space:nowrap}
.file-picker-name{overflow-wrap:anywhere;color:var(--text-2)}
.file-picker-native:focus-visible+.file-picker .file-picker-button{box-shadow:var(--focus)}
.file-picker-native:disabled+.file-picker{opacity:.5;cursor:not-allowed}
}
