.is-hidden { display: none !important; }
.auth-alert { background: #fff1f2; border: 1px solid #fecdd3; border-radius: 7px; color: #9f1239; font-size: .82rem; margin-bottom: 12px; padding: 10px 12px; }
.auth-card .form-field small { color: var(--muted); font-size: .72rem; }
.auth-card button:disabled { cursor: wait; opacity: .65; }

.auth-page { min-height: calc(100dvh - 131px); padding: 34px 0 46px; }
.auth-layout { align-items: stretch; display: grid; grid-template-columns: minmax(280px, .82fr) minmax(360px, 1fr); max-width: 920px; }
.auth-layout--wide { max-width: 1040px; }
.auth-context { background: #17243a; color: #fff; padding: 42px; }
.auth-context h1 { font-size: 1.65rem; line-height: 1.25; margin: 12px 0 14px; max-width: 440px; }
.auth-context p, .auth-context small, .auth-context__stat span { color: #bdc9da; }
.auth-context .eyebrow { color: #8eb4ff; }
.auth-context__stat { border-top: 1px solid rgba(255,255,255,.14); display: grid; gap: 4px; margin-top: 30px; padding-top: 18px; }
.auth-context__stat span { font-size: .76rem; }
.auth-benefits { display: grid; gap: 17px; list-style: none; margin: 30px 0 0; padding: 0; }
.auth-benefits li { align-items: flex-start; display: grid; gap: 12px; grid-template-columns: 30px minmax(0, 1fr); }
.auth-benefits li > span { align-items: center; background: rgba(255,255,255,.1); border-radius: 5px; color: #a9c5ff; display: flex; font-size: .65rem; font-weight: 700; height: 30px; justify-content: center; }
.auth-benefits div { display: grid; gap: 2px; }
.auth-benefits strong { font-size: .8rem; }
.auth-benefits small { line-height: 1.45; }
.auth-form-panel { background: #fff; border: 1px solid var(--line); padding: 34px; }
.auth-form-head { margin-bottom: 22px; }
.auth-form-head h2 { font-size: 1.3rem; margin: 5px 0 5px; }
.auth-form-head p { font-size: .82rem; margin: 0; }
.auth-form-grid { display: grid; gap: 14px; grid-template-columns: 1fr 1fr; }
.auth-span-2 { grid-column: 1 / -1; }
.form-field label small { color: var(--muted); font-weight: 500; }
.password-field { position: relative; }
.password-field .input { padding-right: 58px; }
.password-field button { background: transparent; border: 0; color: var(--primary); font-size: .7rem; font-weight: 700; padding: 8px; position: absolute; right: 4px; top: 50%; transform: translateY(-50%); }
.auth-check { align-items: flex-start; color: #46556c; display: flex; font-size: .74rem; gap: 8px; }
.auth-check input { margin-top: 3px; }
.auth-submit { width: 100%; }
.auth-switch { font-size: .78rem; margin: 18px 0 0; text-align: center; }
.auth-alert--success { background: #ecfdf3; border-color: #b7e5cc; color: #087a4d; }
@media (max-width: 760px) { .auth-page { padding: 18px 0 30px; } .auth-layout { grid-template-columns: 1fr; } .auth-context { padding: 25px 22px; } .auth-context h1 { font-size: 1.3rem; } .auth-benefits { display: none; } .auth-context__stat { margin-top: 18px; } .auth-form-panel { padding: 24px 20px; } }
@media (max-width: 520px) { .auth-context { display: none; } .auth-form-grid { grid-template-columns: 1fr; } .auth-span-2 { grid-column: auto; } .auth-form-panel { border-radius: 7px; } }

/* Registration document uploads */
.registration-documents{background:#f8fbff;border:1px solid #dce6f3;border-radius:8px;display:grid;gap:12px;padding:14px}
.registration-documents__head{display:grid;gap:3px}
.registration-documents__head strong{font-size:.86rem}
.registration-documents__head span{color:var(--muted);font-size:.72rem;line-height:1.45}
.registration-documents__grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}
.auth-form-panel .media-field{background:#fff;border:1px solid #dce6f3;border-radius:7px;max-width:none;overflow:hidden}
.auth-form-panel .media-field__heading{border-bottom:1px solid #dce6f3;display:grid;gap:3px;padding:9px 11px}
.auth-form-panel .media-field__heading label{font-size:.75rem;font-weight:800}
.auth-form-panel .media-field__heading small{color:var(--muted);font-size:.64rem;line-height:1.4}
.auth-form-panel .media-field__compact{align-items:center;display:grid;gap:11px;grid-template-columns:88px minmax(0,1fr);padding:10px}
.auth-form-panel .media-field__compact>input[type=file]{height:1px;opacity:0;overflow:hidden;position:absolute;width:1px}
.auth-form-panel .media-tile{aspect-ratio:4/3;background:#fff;border:1px solid #cbd8e8;border-radius:6px;overflow:hidden;position:relative;width:88px}
.auth-form-panel .media-tile.is-empty{border:2px dashed #b9c3d1}
.auth-form-panel .media-tile>img{height:100%;object-fit:cover;width:100%}
.auth-form-panel .media-field[data-variant="document"] .media-tile{background:#fff}
.auth-form-panel .media-field[data-variant="document"] .media-tile>img{object-fit:contain}
.auth-form-panel .media-tile>img[hidden],.auth-form-panel .media-tile__actions[hidden],.auth-form-panel .media-tile__empty[hidden]{display:none}
.auth-form-panel .media-tile__empty{align-items:center;color:#42526a;cursor:pointer;display:flex;flex-direction:column;gap:5px;height:100%;justify-content:center;width:100%}
.auth-form-panel .media-tile__empty svg{color:var(--primary);fill:none;height:24px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;width:24px}
.auth-form-panel .media-tile__empty strong{font-size:.7rem}
.auth-form-panel .media-tile__actions{display:flex;gap:5px;position:absolute;right:6px;top:6px}
.auth-form-panel .media-action{align-items:center;border:0;border-radius:50%;box-shadow:0 2px 7px rgba(15,23,42,.18);color:#fff;cursor:pointer;display:inline-flex;height:28px;justify-content:center;padding:0;width:28px}
.auth-form-panel .media-action svg{fill:none;height:14px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;width:14px}
.auth-form-panel .media-action--view{background:#3168dc}
.auth-form-panel .media-action--delete{background:#b42318}
.auth-form-panel .media-field__meta{display:grid;gap:5px;min-width:0}
.auth-form-panel .media-field__meta strong{color:var(--muted);font-size:.65rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.auth-form-panel .media-field__choose{color:var(--primary);cursor:pointer;font-size:.7rem;font-weight:800}
.image-viewer{background:transparent;border:0;height:100%;margin:auto;max-height:none;max-width:none;padding:16px;width:100%}
.image-viewer::backdrop{background:rgba(15,23,42,.72)}
.image-viewer__panel{background:#fff;border-radius:7px;display:flex;flex-direction:column;margin:auto;max-height:calc(100vh - 32px);max-width:720px;overflow:hidden;width:min(720px,100%)}
.image-viewer__head{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:11px 14px}
.image-viewer__head strong{font-size:.78rem}
.image-viewer__head button{align-items:center;background:#fff;border:1px solid var(--line);border-radius:5px;cursor:pointer;display:flex;font-size:1.15rem;height:32px;justify-content:center;width:32px}
.image-viewer__canvas{align-items:center;background:#eef2f6;display:flex;justify-content:center;min-height:260px;padding:16px}
.image-viewer__canvas img{max-height:calc(100vh - 120px);max-width:100%;object-fit:contain}
@media(max-width:760px){.registration-documents__grid{grid-template-columns:1fr}.auth-form-panel .media-field__compact{grid-template-columns:82px minmax(0,1fr)}.auth-form-panel .media-tile{width:82px}}
