/* Дополнения для отдельной программы: вход, меню пользователя, окна. Цвета берутся из переменных основной страницы. */
#a1-login{position:fixed;inset:0;z-index:50;background:var(--bg,#ECEEF0);display:grid;place-items:center;padding:16px}
.a1-login-card{background:var(--surface,#fff);border:1px solid var(--line,#D5DADF);border-radius:8px;padding:28px 26px;width:100%;max-width:340px;display:flex;flex-direction:column;gap:12px}
.a1-login-brand{font-family:var(--f-disp,inherit);font-weight:600;font-size:22px}
.a1-login-sub{color:var(--muted,#5D6670);font-size:13px;margin:-8px 0 6px}
.a1-login-card label,.a1-form label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted,#5D6670)}
.a1-login-card input,.a1-form input,.a1-form select{font:inherit;color:var(--ink,#1A1F24);background:var(--surface,#fff);border:1px solid var(--line,#D5DADF);border-radius:5px;padding:8px 10px}
.a1-login-card .btn{padding:9px 13px;margin-top:4px}
.a1-login-err{color:var(--crit,#B83A26);font-size:13px;min-height:1em}
#a1-user{order:1;margin-left:4px}
.a1-menu{position:relative}
.a1-menu summary{list-style:none;cursor:pointer;font-size:13px;font-weight:500;padding:3px 10px;border:1px solid var(--line,#D5DADF);border-radius:20px;background:var(--surface,#fff);white-space:nowrap}
.a1-menu summary::-webkit-details-marker{display:none}
.a1-menu-body{position:absolute;right:0;top:calc(100% + 6px);z-index:30;background:var(--surface,#fff);border:1px solid var(--line,#D5DADF);border-radius:6px;padding:6px;min-width:200px;display:flex;flex-direction:column;align-items:stretch;box-shadow:0 6px 20px rgba(0,0,0,.08)}
.a1-menu-body .btn{text-align:left}
.top .wrap>nav.tabs{order:2}
.a1-dialog{border:1px solid var(--line,#D5DADF);border-radius:8px;padding:0;max-width:min(760px,calc(100% - 32px));width:100%;background:var(--surface,#fff);color:var(--ink,#1A1F24)}
.a1-dialog::backdrop{background:rgba(20,24,28,.35)}
.a1-form{padding:20px 22px;display:flex;flex-direction:column;gap:12px}
.a1-form h3{margin:0;font-size:17px}.a1-form h4{margin:8px 0 0;font-size:14px}
.a1-uadd{display:flex;flex-wrap:wrap;gap:8px}.a1-uadd input{flex:1 1 150px}
.a1-utable{width:100%;border-collapse:collapse;font-size:13px}
.a1-utable th{text-align:left;color:var(--muted,#5D6670);font-weight:500;padding:4px 6px;border-bottom:1px solid var(--line,#D5DADF)}
.a1-utable td{padding:4px 6px;border-bottom:1px solid var(--line-2,#E6E9EC)}
.a1-ulist{max-height:50vh;overflow:auto}
@media (max-width:640px){#a1-user{margin-left:0}}
