@font-face{font-family:"SignIn Cairo";src:url("../fonts/Cairo-Regular.woff2") format("woff2");font-weight:400 500;font-style:normal;font-display:swap}
@font-face{font-family:"SignIn Cairo";src:url("../fonts/Cairo-Bold.woff2") format("woff2");font-weight:600 800;font-style:normal;font-display:swap}
/* Login, deletion and privacy screens intentionally use one palette for every tenant. */
:root{--login-primary:#0b6b70;--login-accent:#14a39a;--login-deep:#08474d;--login-muted:#6b7c80;--login-border:#e1e7e9;--login-background:#f6f8f9;--login-text:#18292c}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0;min-height:100%;background:var(--login-background)}
body,button,input{font-family:"SignIn Cairo",sans-serif}
button,input,a,summary{-webkit-tap-highlight-color:transparent}
button,a,summary{touch-action:manipulation}
button{cursor:pointer}
button:disabled{cursor:wait}
a{color:inherit;text-decoration:none}
a:hover,.sign-in-link:hover{text-decoration:underline}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #14a39a;outline-offset:4px}
button,input{font-size:inherit}
.sign-in-page{--login-action-gradient:linear-gradient(90deg,var(--login-accent),var(--login-primary));height:100dvh;overflow:clip}
.sign-in-shell{display:grid;grid-template-columns:minmax(0,1fr) min(calc((100% - 16px)/2),880px);direction:ltr;gap:16px;height:100dvh;min-height:0;padding:16px 16px 16px 0}
.sign-in-main{flex:1 1 0;min-width:0;min-height:0;height:100%;position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:84px minmax(0,1fr) 84px;padding:0 24px;overflow:clip}
.sign-in-stage{grid-row:2;min-width:0;min-height:0;width:100%;display:flex;align-items:center;justify-content:center}
html[dir=rtl] .sign-in-main,html[dir=rtl] .sign-in-visual{direction:rtl}
.sign-in-glow{width:800px;height:800px;position:absolute;left:-340px;top:-376px;z-index:-1;pointer-events:none}
.sign-in-card{position:relative;flex:none;width:460px;max-width:100%;max-height:100%;overflow-y:auto;scrollbar-width:thin;padding:40px;border:1px solid var(--login-border);border-radius:24px;background:#fff;box-shadow:0 24px 56px #08474d12;display:flex;flex-direction:column;gap:22px;color:var(--login-text)}
.sign-in-logos{display:flex;direction:ltr;align-items:center;justify-content:center;gap:24px;min-height:72px}
.is-password .sign-in-logos{min-height:67.476px}
.cap-logo{position:relative;flex:none}
.cap-logo-large{width:163.385px;height:72px}
.cap-logo-small{width:108.923px;height:48px}
.cap-logo img{display:block;width:100%;height:auto}
.sign-in-logo-divider{width:1px;height:44px;background:var(--login-border);flex:none}
.sign-in-company{display:flex;align-items:center;justify-content:center;max-width:140px;min-height:59.476px;color:var(--login-primary);font-size:13px;font-weight:600;text-align:center;overflow-wrap:anywhere}
/* Uploaded logos previously sat on a dark surface; white artwork needs that contrast. */
.sign-in-company:has(img:not([hidden])){background:var(--login-deep);border-radius:10px;box-shadow:0 0 0 4px var(--login-deep)}
.sign-in-company img{width:auto;height:auto;max-width:140px;max-height:60px;object-fit:contain}
.sign-in-heading{text-align:center}
.sign-in-heading h1{margin:0;font-size:26px;font-weight:700;line-height:49px;color:var(--login-primary)}
.sign-in-heading p{font-size:14px;line-height:1.7;color:var(--login-muted);margin:6px 0 0}
.sign-in-step{display:flex;flex-direction:column;gap:22px}
.sign-in-field{display:flex;flex-direction:column;gap:8px}
.sign-in-field label{font-size:14px;font-weight:600;line-height:26px;color:var(--login-primary)}
.sign-in-input{width:100%;height:54px;padding:0 16px;border:1px solid var(--login-border);border-radius:14px;background:#fff;color:var(--login-text);font-size:15px;transition:border-color .15s,box-shadow .15s}
.sign-in-input:focus{outline:none;border-color:var(--login-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--login-accent) 14%,transparent)}
.sign-in-input[aria-invalid=true]{border-color:#cf4d4d}
.sign-in-input::placeholder{color:#a3b0b3;opacity:1}
.sign-in-primary{width:100%;min-height:54px;display:flex;align-items:center;justify-content:center;padding:10px 16px;border:0;border-radius:14px;color:#fff;background:linear-gradient(90deg,var(--login-accent),var(--login-primary));box-shadow:0 8px 20px #14a39a40;font-size:17px;font-weight:600;line-height:1.8;transition:filter .15s,opacity .15s}
.sign-in-primary:hover{filter:brightness(1.06)}
.sign-in-primary:disabled{opacity:.65}
.sign-in-privacy{align-self:center;font-size:14px;line-height:26px;font-weight:600;color:var(--login-muted)}
.sign-in-account{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:58px;padding:10px 14px 10px 10px;border:1px solid var(--login-border);border-radius:14px;background:var(--login-background)}
.sign-in-account-user{display:flex;align-items:center;gap:10px;min-width:0}
.sign-in-account-user bdi{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sign-in-avatar{display:flex;flex:none;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:linear-gradient(90deg,var(--login-accent),var(--login-primary));color:white;font-size:15px;font-weight:700}
/* Keep both login steps and the account initial on the page-level gradient. */
#loginCard .sign-in-primary,#loginCard .sign-in-avatar{background:var(--login-action-gradient)}
.sign-in-link{border:0;padding:0;background:transparent;color:var(--login-accent);font-weight:600;font-size:14px;line-height:26px}
.sign-in-account .sign-in-link{font-size:13px;flex:none}
.sign-in-password{position:relative}
.sign-in-password input{padding-inline-end:50px}
.sign-in-eye{position:absolute;inset-inline-end:9px;top:5px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:10px;background:transparent}
.sign-in-eye[aria-pressed=true]{background:var(--login-background)}
.sign-in-options{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:26px;font-size:14px}
.sign-in-remember{display:flex;align-items:center;gap:8px;cursor:pointer}
.sign-in-remember input{appearance:none;flex:none;width:20px;height:20px;margin:0;border:1px solid var(--login-border);border-radius:5px;background:#fff;cursor:pointer}
.sign-in-remember input:checked{border:0;background:transparent url("../img/account/icons.png") -96px 0 / 512px 32px no-repeat}
.sign-in-error,.sign-in-notice{font-size:13px;line-height:1.8;padding:12px 14px;border-radius:12px;margin:0;overflow-wrap:anywhere}
.sign-in-error{background:#fff0ec;border:1px solid #ffd4c9;color:#a83425}
.sign-in-error ul{padding-inline-start:18px;margin:0}
.sign-in-error p{margin:0}
.sign-in-notice{background:#e4f4f3;color:#08474d}
.sign-in-language{position:absolute;left:48px;top:20px;z-index:5;font-size:13px;color:var(--login-primary)}
.sign-in-language summary{display:flex;align-items:center;gap:8px;direction:rtl;cursor:pointer;list-style:none;border:1px solid var(--login-border);border-radius:100px;background:white;padding:8px 14px 8px 12px;font-weight:600;min-height:42px}
.sign-in-language summary::-webkit-details-marker{display:none}
.sign-in-language img{display:block;flex:none}
.sign-in-language-list{position:absolute;top:calc(100% + 10px);left:0;width:240px;padding:12px;background:#fff;border:1px solid var(--login-border);border-radius:16px;box-shadow:0 16px 40px #08474d1a}
.sign-in-language-heading{display:block;color:var(--login-muted);padding:6px 10px 12px}
.sign-in-language-list button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px;border:0;border-radius:10px;color:var(--login-text);background:transparent;text-align:start;font-size:14px}
.sign-in-language-list button:hover,.sign-in-language-list button.is-current{background:#e4f4f3;color:#0b6b70}
.sign-in-language-list button span{font-size:11px;color:var(--login-muted)}
.sign-in-footer{position:absolute;bottom:26px;left:24px;right:24px;display:flex;flex-wrap:wrap;justify-content:center;gap:6px;color:var(--login-muted);font-size:12px;line-height:22px;text-align:center}
.sign-in-visual{position:relative;flex:1 1 0;max-width:880px;min-width:0;height:100%;min-height:0;overflow:hidden;border-radius:28px;background:linear-gradient(180deg,#0b6b70,#08474d)}
.sign-in-map{position:absolute;width:1600px;height:1200px;left:50%;top:50%;transform:translate(-50%,-50%);overflow:hidden;direction:ltr}
.sign-in-map-artwork{display:block;width:1600px;height:1200px}
.map-destination{position:absolute;left:908px;top:316px;display:flex;direction:rtl;align-items:center;gap:8px;padding:8px 14px;background:white;border-radius:100px;color:#0b6b70;font-size:12px;font-weight:600;box-shadow:0 6px 16px #0000002e;white-space:nowrap}
.sign-in-glass{position:absolute;bottom:32px;left:32px;right:32px;display:flex;flex-direction:column;gap:12px;padding:28px;border:1px solid #ffffff38;border-radius:22px;background:#ffffff1a;backdrop-filter:blur(12px);color:#fff}
.sign-in-glass h2{font-size:24px;font-weight:700;line-height:1.9;margin:0}
.sign-in-glass p{font-size:15px;line-height:1.7;color:#ffffffcc;margin:0}
.sign-in-features{display:flex;flex-wrap:wrap;gap:8px}
.sign-in-features span{padding:6px 14px;border-radius:100px;background:#ffffff24;font-size:13px;font-weight:500}
.sign-in-help{max-width:440px;width:calc(100% - 32px);border:1px solid var(--login-border);border-radius:24px;padding:32px;color:var(--login-text)}
.sign-in-help::backdrop{background:#08474d66;backdrop-filter:blur(4px)}
.sign-in-help h2{font-size:22px;color:var(--login-deep);margin:0 0 12px}
.sign-in-help p{font-size:14px;line-height:1.8;margin:0 0 24px}
@media(min-width:1800px) and (min-height:900px){.sign-in-card{width:634px;min-height:674px;justify-content:center}}
@media(max-width:1100px) and (min-width:992px){.sign-in-card{padding:32px}.sign-in-glass{left:24px;right:24px;padding:22px}.sign-in-glass h2{font-size:22px}}
@media(max-width:991px){.sign-in-shell{grid-template-columns:minmax(0,1fr);padding:16px 0}.sign-in-visual{display:none}.sign-in-main{padding:0 24px}}
@media(max-width:520px){.sign-in-shell{padding:0}.sign-in-main{padding:0 16px;grid-template-rows:80px minmax(0,1fr) 70px}.sign-in-card{padding:28px 24px;border-radius:22px}.sign-in-heading h1{font-size:24px}.sign-in-heading p{font-size:13px}.sign-in-language{left:24px;top:24px}.sign-in-footer{bottom:28px;font-size:11px}.sign-in-logos{gap:16px}.sign-in-company{min-width:0;max-width:110px;flex:0 1 110px}.sign-in-company img{max-width:100%;max-height:54px}.sign-in-options{gap:8px}.sign-in-options,.sign-in-options .sign-in-link{font-size:12px}.sign-in-account{gap:8px}.sign-in-account-user{gap:6px}.sign-in-account-user bdi{font-size:12px}.sign-in-account .sign-in-link{font-size:11px}}
@media(max-height:800px){.sign-in-card.is-password:not(.deletion-login):not(.deletion-confirm):not(.deletion-success){padding:28px 32px;gap:18px}.sign-in-card.is-password:not(.deletion-login):not(.deletion-confirm):not(.deletion-success) .sign-in-step{gap:18px}}
@media(max-height:700px){.sign-in-main{grid-template-rows:70px minmax(0,1fr) 56px}.sign-in-card{padding:24px;gap:16px}.sign-in-step{gap:16px}.sign-in-heading h1{line-height:38px;font-size:24px}.sign-in-logos{min-height:60px}.cap-logo-large{width:136.154px;height:60px}.sign-in-primary{min-height:48px}.sign-in-input{height:48px}.sign-in-eye{top:2px}.sign-in-footer{bottom:16px}.sign-in-language{top:14px}.sign-in-glass{padding:20px;bottom:24px}.sign-in-glass h2{font-size:20px}}
@media(max-height:600px){.sign-in-main{grid-template-rows:58px minmax(0,1fr) 54px}.sign-in-card,.sign-in-card.is-password:not(.deletion-login):not(.deletion-confirm):not(.deletion-success){padding:18px 22px;gap:12px}.sign-in-step,.sign-in-card.is-password:not(.deletion-login):not(.deletion-confirm):not(.deletion-success) .sign-in-step{gap:12px}.sign-in-logos,.is-password .sign-in-logos{min-height:48px}.cap-logo-large,.cap-logo-small{width:108.923px;height:48px}.sign-in-company{min-height:48px}.sign-in-company img{max-height:48px}.sign-in-heading h1{font-size:22px;line-height:32px}.sign-in-heading p{font-size:12px;line-height:1.55;margin-top:4px}.sign-in-field{gap:4px}.sign-in-field label{line-height:22px}.sign-in-account{min-height:46px;padding-block:5px}.sign-in-options,.sign-in-link,.sign-in-privacy{line-height:22px}.sign-in-error{padding:6px 10px;font-size:12px}.sign-in-footer{font-size:10px;line-height:18px;bottom:10px}.sign-in-language{top:8px}.sign-in-language summary{min-height:36px;padding-block:5px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
