[hidden]{display:none!important}html{scroll-behavior:smooth}.btn:hover{transform:translateY(-2px)}.portal-card{background:white;border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:0 12px 36px #0e2f630c}.portal-head,.portal-tabs,.children,.filters{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.portal-head{justify-content:space-between;margin-bottom:20px}.portal-head h2{margin:0}.portal-tabs,.children{margin:16px 0}.portal-tabs button[aria-pressed=true],.children button[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}.portal-card label{display:block;font-weight:700;margin-bottom:6px}.portal-card input,.portal-card select{font:inherit;width:100%;padding:12px;border:1px solid #bacbe0;border-radius:10px;background:white;color:var(--ink)}.login-form{max-width:420px;margin:auto}.login-form>div{margin-bottom:18px}.login-form .btn{width:100%}.portal-message{padding:16px;background:var(--panel);border-radius:12px}.portal-error{color:#9c2222;background:#fff1f1}.portal-grid,.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.datum,.stat{padding:16px;background:var(--panel);border-radius:12px;overflow-wrap:anywhere}.datum span,.stat span{display:block;color:var(--ink2)}.stat strong{font-size:24px;color:var(--navy)}.table-scroll{overflow:auto;margin-top:20px}table{width:100%;border-collapse:collapse;text-align:right}th,td{padding:13px;border-bottom:1px solid var(--line);white-space:nowrap}th{background:var(--panel)}.filters{margin-bottom:18px}.filters>div{flex:1 1 150px}.portal-body{animation:appear .25s ease}.portal-card :focus-visible{outline:3px solid var(--gold);outline-offset:3px}.portal-card button:disabled{opacity:.6;cursor:wait}.portal-note{color:var(--ink2);font-size:14px}@keyframes appear{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media(max-width:560px){.portal-card{padding:16px}.portal-tabs .btn{flex:1 1 100%;white-space:normal}.portal-head .btn{padding:12px 18px}.portal-grid,.stats{grid-template-columns:1fr}.children .btn{white-space:normal}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

.login-form form>div{margin-bottom:18px}
