.insync-signin-page { background:#fff; }
.insync-signin-page .si-layout { display:grid;grid-template-columns:1fr 1fr;min-height:100svh; }
.insync-signin-page .si-brand-panel { position:relative;background:var(--charcoal);color:white;overflow:hidden;min-height:800px; }
.insync-signin-page .si-photo { position:absolute;inset:auto 0 0;width:100%;height:56%;object-fit:cover;object-position:center; }
.insync-signin-page .si-brand-panel:after { content:'';position:absolute;inset:0;background:linear-gradient(180deg,#17191c 0%,#17191c 43%,#17191cb8 59%,#17191c00 85%);pointer-events:none; }
.insync-signin-page .si-brand-copy { position:relative;z-index:1;padding:56px 64px; }
.insync-signin-page .si-desktop-brand { margin:0 0 54px;font-size:42px;gap:14px; }
.insync-signin-page .si-brand-copy h2 { font-size:56px;line-height:1.08;letter-spacing:-.035em;font-weight:750; }
.insync-signin-page .si-brand-copy em { color:var(--orange);font-style:normal; }
.insync-signin-page .si-brand-copy>p { font-size:20px;line-height:1.5;max-width:430px;margin-top:18px; }
.insync-signin-page .si-form-panel { padding:42px 48px 28px;min-width:0; }
.insync-signin-page .si-back { display:inline-flex;align-items:center;gap:10px;min-height:44px;color:var(--action);font-size:14px; }
.insync-signin-page .si-back .icon { transform:rotate(180deg); }
.insync-signin-page .si-form-content { max-width:480px;margin:42px auto 0; }
.insync-signin-page h1 { font-size:36px;line-height:1.25;letter-spacing:-.035em; }
.insync-signin-page .si-form-content header>p { font-size:18px;line-height:1.6;color:var(--text-secondary);margin-top:4px; }
.insync-signin-page .si-form { margin-top:32px;display:grid;gap:18px; }
.insync-signin-page .si-field label { font-size:14px;display:block;line-height:1.6;margin-bottom:6px; }
.insync-signin-page .si-field input { width:100%;min-width:0;min-height:48px;padding:11px 14px;border:1px solid #d0d5dd;border-radius:8px;background:white;font:inherit;font-size:16px;color:var(--text);caret-color:var(--action); }
.insync-signin-page .si-field input::placeholder { color:var(--text-secondary);opacity:1; }
.insync-signin-page .si-password-heading { display:flex;align-items:center;justify-content:space-between;gap:12px; }
.insync-signin-page .si-link { color:var(--action);text-decoration:underline;text-underline-offset:3px;font-size:14px; }
.insync-signin-page .si-password-heading .si-link { min-height:44px;display:flex;align-items:center; }
.insync-signin-page .si-password-wrap { position:relative; }
.insync-signin-page .si-password-wrap input { padding-right:50px; }
.insync-signin-page .si-reveal { position:absolute;inset:2px 2px auto auto;width:44px;height:44px;border-radius:6px;display:grid;place-items:center;color:var(--text-secondary); }
.insync-signin-page .si-reveal:hover { background:#f5f6f7; }
.insync-signin-page .si-remember { display:flex;align-items:center;gap:10px;color:var(--text-secondary);min-height:44px;cursor:pointer; }
.insync-signin-page .si-remember input { width:22px;height:22px;accent-color:var(--action);margin:0; }
.insync-signin-page .si-submit { width:100%;min-height:50px;padding:12px 20px;border-radius:8px;background:var(--action);color:white;font-size:16px;font-weight:650; }
.insync-signin-page .si-submit:hover { background:var(--action-hover); }
.insync-signin-page .si-submit:disabled { cursor:wait;opacity:.7; }
.insync-signin-page .si-submit-status { font-size:13px;line-height:1.6;color:var(--text-secondary); }
.insync-signin-page .si-submit-status:empty { display:none; }
.insync-signin-page .si-field-errors { color:#962820;font-size:13px;line-height:1.5; }
.insync-signin-page .si-field-errors:empty { display:none; }
.insync-signin-page .si-field-errors ul { margin:6px 0 0;padding-left:18px; }
.insync-signin-page .si-errors-summary { padding:12px 14px;border-radius:8px;background:#fff1ed;color:#962820;line-height:1.6;margin-top:22px; }
.insync-signin-page .si-errors-summary a { text-decoration:underline; }
.insync-signin-page .si-field [aria-invalid=true] { border-color:#962820; }
.insync-signin-page .si-or { display:flex;align-items:center;gap:14px;margin:24px 0 16px;color:var(--text-secondary);font-size:13px; }
.insync-signin-page .si-or:before,.insync-signin-page .si-or:after { content:'';flex:1;height:1px;background:#d9dde3; }
.insync-signin-page .si-create { text-align:center;line-height:1.6; }
.insync-signin-page .si-create a { display:inline-flex;align-items:center;min-height:44px; }
.insync-signin-page .si-support { color:var(--text-secondary);font-size:12px;line-height:1.6;text-align:center;margin-top:12px;scroll-margin:20px; }
.insync-signin-page .si-footer { border-top:1px solid var(--border);padding-top:20px;margin-top:24px;text-align:center;color:var(--text-secondary);font-size:13px;line-height:1.6; }
.insync-signin-page .si-footer-links { display:flex;gap:14px;justify-content:center;margin-top:6px; }
.insync-signin-page .si-footer-links a { min-height:44px;display:flex;align-items:center; }
.insync-signin-page .si-footer-links span { align-self:center; }
.insync-signin-page .si-mobile-brand { display:none; }
.insync-signin-page :is(a,button,input,[tabindex]):focus-visible { outline:3px solid var(--focus);outline-offset:3px; }
.insync-signin-page ::selection { background:#ffe2cd;color:#17191c; }
@media(min-width:761px) and (max-width:1100px) {
 .insync-signin-page .si-brand-copy { padding:44px 32px; }
 .insync-signin-page .si-brand-copy h2 { font-size:44px; }
 .insync-signin-page .si-brand-copy>p { font-size:18px; }
 .insync-signin-page .si-form-panel { padding-inline:28px; }
 .insync-signin-page h1 { font-size:30px; }
 .insync-signin-page .si-form-content header>p { font-size:16px; }
}
@media(max-width:760px) {
 .insync-signin-page .si-layout { display:block; }
 .insync-signin-page .si-brand-panel { display:none; }
 .insync-signin-page .si-form-panel { padding:32px 24px calc(24px + env(safe-area-inset-bottom)); }
 .insync-signin-page .si-mobile-brand { display:flex;margin:0 0 12px;font-size:32px;gap:10px; }
 .insync-signin-page .si-back { font-size:13px; }
 .insync-signin-page .si-form-content { margin-top:28px; }
 .insync-signin-page h1 { font-size:30px; }
 .insync-signin-page .si-form-content header>p { font-size:16px; }
 .insync-signin-page .si-form { margin-top:24px;gap:14px; }
 .insync-signin-page .si-field label,.insync-signin-page .si-link,.insync-signin-page .si-remember { font-size:13px; }
 .insync-signin-page .si-footer { font-size:12px; }
}
