:root { color-scheme: light; }
[hidden] { display:none!important; }
.shared-account { display:flex; align-items:center; gap:18px; padding:9px 24px; background:#12304a; color:white; font:13px/1.5 system-ui,sans-serif; }
.shared-account span { margin-right:auto; }
.shared-account a { color:#fff; text-decoration:underline; }
.shared-account button { border:1px solid #58718a; border-radius:6px; color:white; background:transparent; padding:6px 12px; cursor:pointer; }
.shared-alert { background:#fff2d6; color:#713e00; padding:18px; font:15px/1.5 system-ui; }
.auth-page { margin:0; min-height:100vh; background:#edf2f6; color:#19334a; font:15px/1.5 system-ui,sans-serif; }
.auth-wrap { max-width:430px; margin:8vh auto 40px; padding:32px; background:white; border-radius:16px; box-shadow:0 12px 50px #16324a13; }
.auth-wrap.wide { max-width:900px; margin-top:40px; }
.auth-logo { max-width:210px; max-height:90px; object-fit:contain; display:block; margin-bottom:28px; }
.auth-wrap h1 { margin:0 0 8px; font-size:25px; line-height:1.25; }
.auth-wrap p { color:#536577; }
.auth-wrap label { display:block; font-weight:600; margin-top:18px; }
.auth-wrap input,.auth-wrap select { display:block; width:100%; box-sizing:border-box; border:1px solid #c6d0da; border-radius:7px; background:white; font:inherit; padding:11px; margin-top:7px; }
.auth-wrap button { border:0; background:#14669c; color:white; font:600 15px system-ui; padding:12px 18px; border-radius:7px; margin-top:22px; cursor:pointer; }
.auth-wrap button:disabled { opacity:.5; cursor:wait; }
.auth-message { min-height:22px; color:#a23424!important; }
.auth-wrap a { color:#14669c; }
.users-list { padding:0; list-style:none; }
.users-list li { display:flex; align-items:center; gap:20px; border-bottom:1px solid #e3e8ed; padding:12px 0; }
.users-list span { flex:1; }
.users-list button { margin:0; font-size:13px; padding:8px 12px; background:#526a7d; }
.auth-note { font-size:13px; }
.shared-state-dialog { width:min(640px,calc(100vw - 48px)); box-sizing:border-box; border:0; border-radius:12px; padding:32px; box-shadow:0 20px 70px #14283f55; color:#19334a; font:15px/1.5 system-ui,sans-serif; }
.shared-state-dialog::backdrop { background:#14283f88; }
.shared-state-dialog h2 { font-size:22px; margin-top:0; }
.shared-state-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.shared-state-actions button,.shared-state-actions a { display:inline-block; border:1px solid #bdcbd6; border-radius:7px; padding:10px 14px; font:600 14px system-ui,sans-serif; text-decoration:none; background:#14669c; color:white; cursor:pointer; }
@media(max-width:600px) { .auth-wrap { margin:25px 12px; padding:24px; } .shared-account { padding:10px; flex-wrap:wrap; gap:10px; } .users-list li { flex-wrap:wrap; } }
@media print { .shared-account,.shared-alert { display:none!important; } }
