.login-page{min-height:100vh;background:var(--page-bg,#f4f7f8);display:grid;place-items:center;padding:24px;color:var(--ink,#17324d)}
.login-shell{width:min(440px,100%)}
.login-card{background:#fff;border:1px solid var(--line,#d9e2e7);border-radius:16px;padding:32px;box-shadow:0 10px 30px rgba(23,50,77,.08)}
.login-brand{display:flex;align-items:center;gap:12px;font-weight:700;margin-bottom:28px}
.login-brand .mark{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--navy,#17324d);color:#fff}
.login-brand small{display:block;font-size:.72rem;font-weight:500;color:#6f7e87}
.login-card h1{margin:0 0 8px}
.login-card form,.form-stack{display:grid;gap:16px;margin-top:22px}
.login-card label,.form-stack label{display:grid;gap:7px;font-weight:600}
.login-card input,.form-stack input,.form-stack select{width:100%;box-sizing:border-box}
.form-stack input[type=checkbox]{width:auto;justify-self:start}
.login-card button{width:100%;margin-top:4px}
.notice{padding:12px 14px;border:1px solid var(--line,#d9e2e7);border-radius:10px;margin:16px 0;background:#f7f9fa}
.notice.error{color:#812d2d;border-color:#d9aaaa;background:#fff8f8}
.notice.success{color:#1f5d4f}
.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
@media(max-width:760px){.login-card{padding:24px}.account-grid{grid-template-columns:1fr}}
.admin-user-form{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:14px;align-items:end}
.admin-user-form label{display:grid;gap:6px}.inline-actions{display:flex;flex-wrap:wrap;gap:6px}.inline-actions form{margin:0}
.setup-link{display:block;padding:12px;overflow-wrap:anywhere;user-select:all}.table-wrap small{display:block;color:#6f7e87}
.membership-form{display:grid;gap:6px;min-width:190px}
.app-header{gap:16px;flex-wrap:wrap;height:auto;min-height:82px}.app-header .header-actions{flex-wrap:wrap;min-width:0;max-width:100%}.header-actions .tenant-context{min-width:0;overflow-wrap:break-word}.header-actions form{margin:0}
@media(max-width:760px){.app-header{align-items:flex-start}.app-header .header-actions{width:100%;padding-right:0}.header-actions .tenant-context{flex-basis:100%}.header-actions .button{max-width:100%;white-space:normal}}
@media(max-width:1100px){.admin-user-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.admin-user-form{grid-template-columns:1fr}}
.pagination{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;padding:.75rem 0}.pagination>span{color:var(--muted);font-size:.88rem}.pagination>div{display:flex;gap:.5rem;flex-wrap:wrap}@media(max-width:680px){.pagination{align-items:stretch;flex-direction:column}.pagination .button{width:100%;text-align:center}}
