/* BSG Hadamar · UI 2026. Presentation only; original application styles retained. */
:root{--bg:#f2f5f4;--card:#fff;--text:#182d29;--muted:#697d76;--line:#e1e9e5;--primary:#088442;--sidebar:#102a24;--ui-soft:#eaf5ee;--ui-shadow:0 8px 32px rgba(24,55,43,.045)}
body{font-family: 'Segoe UI',system-ui,sans-serif;line-height:1.5;background:radial-gradient(ellipse at 100% 0, #e3efe7 0,transparent 42%),var(--bg);font-size:14px;-webkit-font-smoothing:antialiased}
::selection{background:#b8e7c8;color:#102a24}
.sidebar{width:264px;padding:24px 18px 18px;background:linear-gradient(160deg,#173a30,#102820 65%,#0c211b);border-right:1px solid #244539;box-shadow:8px 0 40px #122d2209;display:flex;flex-direction:column;z-index:40}
.sidebar .brandbox{padding:14px 12px;border-radius:16px;background:#fff;margin:0 0 8px;flex-shrink:0;box-shadow:0 6px 20px #0001}
.sidebar .brandbox img{width:100%;max-width:210px;transform:none;margin:auto}
.sidebar .brandbox:after{content:'MITARBEITERPORTAL';display:block;text-align:center;font-size:9px;font-weight:700;letter-spacing:2.6px;color:#597369;margin-top:9px;border-top:1px solid #e9efeb;padding-top:8px}
.sidebar nav{margin-top:16px;gap:5px;min-height:0;overflow-y:auto;flex:1;padding-bottom:16px;scrollbar-width:thin;scrollbar-color:#426553 transparent}
.sidebar nav a{padding:11px 13px;border:1px solid transparent;border-radius:11px;font-size:13px;font-weight:600;color:#b9cec4;gap:12px;transition:background .18s,color .18s,transform .18s}
.sidebar nav a:hover{background:#ffffff0b;color:#fff;transform:translateX(2px)}
.sidebar nav a[aria-current=page]{background:linear-gradient(100deg,#13804c,#17603f);color:#fff;border-color:#329363;box-shadow:0 5px 18px #0001}
.ui-nav-icon{width:19px;height:19px;flex:0 0 19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.sidebar .navlabel{color:#7ea28f;letter-spacing:2px;font-size:9px;margin:23px 13px 9px}
.ui-sidebar-foot{border-top:1px solid #ffffff16;padding:14px 12px 0;font-size:10px;color:#8eaf9d;letter-spacing:.6px;flex-shrink:0}.ui-sidebar-foot strong{display:block;color:#d5e5dc;font-size:12px;margin-bottom:3px}
.main{margin-left:264px;min-width:0;background:transparent}
.main>.topbar{height:88px;padding:0 38px;background:#ffffffd9;border-bottom:1px solid var(--line);backdrop-filter:blur(16px);position:relative;z-index:20}
.eyebrow{text-transform:uppercase;font-size:9px;letter-spacing:1.8px;font-weight:700;color:var(--muted)}
.topbar>div:first-child>strong{font-size:16px;letter-spacing:-.3px}.topbar-userarea{gap:12px}
.userchip{border:1px solid var(--line);background:var(--card);padding:6px 12px!important;border-radius:12px}.userchip-avatar{width:36px!important;height:36px!important}.userchip-avatar img{object-fit:cover}
.topbar-logout{border:1px solid var(--line)!important;background:var(--card)!important;color:var(--muted)!important;border-radius:12px!important;box-shadow:none!important}.topbar-logout:hover{color:#b64040!important;background:#fff3f3!important}
.notification-bell{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:none}.notification-dropdown{border-radius:18px;box-shadow:0 20px 65px #112c2426}
.main>.content{max-width:1580px!important;padding:34px 38px!important;gap:0}
.pagehead{gap:18px;margin-bottom:28px}.pagehead h1{font-size:30px;font-weight:750;letter-spacing:-1px;line-height:1.2}.pagehead .muted{font-size:13px;margin-top:7px}
h2,h3{letter-spacing:-.45px}h3{font-size:16px;margin-top:0}.grid{gap:20px;min-width:0}.grid>*{min-width:0}
.card{border:1px solid var(--line);border-radius:19px;background:var(--card);padding:24px;box-shadow:var(--ui-shadow)}
.stat{position:relative;overflow:hidden;padding:23px!important;min-height:148px}.stat:before{content:'';display:block;width:24px;height:3px;background:#14894c;border-radius:4px;margin-bottom:14px}.stat .label{font-size:12px;font-weight:600;color:var(--muted)}.stat .num{font-size:37px;font-weight:750;letter-spacing:-1.6px;line-height:1.2;margin:8px 0}.stat .sub{font-size:11px;line-height:1.5}.stat:nth-child(4){background:linear-gradient(135deg,#0c7642,#164c36);color:#fff;border-color:#176741}.stat:nth-child(4) .label,.stat:nth-child(4) .sub{color:#c5e7d3}.stat:nth-child(4):before{background:#91deac}
.btn{font-family:inherit;font-size:12px;border-radius:10px;padding:11px 17px;line-height:1.5;box-shadow:0 4px 12px #087f3518;transition:transform .18s,box-shadow .18s,background .18s;vertical-align:middle}.btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 7px 18px #087f3523}.btn.secondary{background:var(--ui-soft);color:#246343;box-shadow:none;border:1px solid #cfe6d7}.btn.danger{box-shadow:none}.btn.small{padding:7px 11px;font-size:11px}
:focus-visible{outline:3px solid #3da76c;outline-offset:3px}input,select,textarea,button{font-family:inherit}input[type=checkbox],input[type=radio]{accent-color:var(--primary)}
.field label{font-size:12px;color:var(--text);font-weight:650}.field input,.field select,.field textarea,.searchbar-form input[type=search],.searchbar-form input[type=text]{border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--text);padding:12px 13px;transition:border-color .2s,box-shadow .2s;min-width:0}.field input:focus,.field select:focus,.field textarea:focus,.searchbar-form input:focus{border-color:#37a167;box-shadow:0 0 0 4px #14894c12;outline:0}.fieldhint{font-size:11px;line-height:1.6}.formgrid{gap:19px 20px}
.tablewrap{border-radius:12px;scrollbar-width:thin}.table th{background:var(--bg);padding:13px 15px;color:var(--muted);font-size:10px;letter-spacing:1px;border-bottom:1px solid var(--line)}.table td{padding:16px 15px;font-size:12px;border-color:var(--line)}.table tr:last-child td{border-bottom:0}.table tr:hover td{background:var(--ui-soft)}.badge{font-size:10px;letter-spacing:.15px;padding:5px 10px;font-weight:700}.badge.pending{background:#fff2d4;color:#896018}.badge.approved,.badge.present{background:#e6f5eb;color:#217046}.badge.rejected,.badge.cancelled{background:#fce9e9;color:#a33c3c}.badge.holiday{background:#eaf0fc;color:#4d6691}
.notice,.flash{border-radius:12px;border:1px solid #cfdfd5;font-size:13px}.notice{background:var(--ui-soft);color:#32664a}.employee{padding:16px 0;font-size:13px}.employee:last-child{border-bottom:0}.searchbar-card{padding:17px 20px;margin-bottom:20px}.filterbar{gap:8px}.team-view-switch{padding:7px;border-radius:13px}.team-view-tab{border-radius:9px}.calendar{border-radius:14px;border-color:var(--line)}.dow{background:var(--bg);padding:13px;font-size:10px;color:var(--muted);letter-spacing:1px}.day{background:var(--card);border-color:var(--line);padding:10px}.day.outside{background:var(--bg)}.day.today{background:var(--ui-soft)!important;box-shadow:inset 0 3px 0 var(--primary)!important}.daynum{font-size:11px}.event{border-radius:6px}.calendarcontrols{flex-wrap:wrap}.mp-corner,.mp-week,.mp-dayhead{background:var(--bg);color:var(--text)}
.profilehero{padding:28px;background:linear-gradient(110deg,var(--card),var(--ui-soft));border-radius:20px}.profileavatar{border-radius:18px;border:4px solid var(--card);box-shadow:0 5px 18px #193d2412}.detailgrid>div{background:var(--bg);border:1px solid var(--line);padding:14px;border-radius:10px}.rich-editor,.editor-toolbar{background:var(--card);color:var(--text);border-color:var(--line)}.editor-toolbar button{background:var(--card);color:var(--text)}.newsitem,.boardnote{border-top:3px solid var(--primary)}.postbody{line-height:1.8}.classic-node,.orgbox{background:var(--card);border-color:var(--line);border-radius:17px;box-shadow:var(--ui-shadow)}.classic-person,.orgperson{background:var(--card);color:var(--text);border-color:var(--line)}.orgtitle{background:var(--ui-soft);color:var(--text)}
.app-legal-footer-inner{background:transparent!important;border-top:1px solid var(--line)!important;border-radius:0!important;padding:20px 0!important;box-shadow:none!important}.app-legal-mark{background:var(--ui-soft)!important;color:var(--primary)!important}
.loginbody{min-height:100svh;padding:40px;display:grid;place-items:center;background:radial-gradient(ellipse at 10% 10%,#245741 0,transparent 55%),radial-gradient(ellipse at 90% 90%,#154532 0,transparent 50%),#0e251e;position:relative;isolation:isolate}.loginbody:before{content:'';position:fixed;inset:0;z-index:-1;background-image:linear-gradient(#ffffff04 1px,transparent 1px),linear-gradient(90deg,#ffffff04 1px,transparent 1px);background-size:64px 64px;pointer-events:none}.loginbody .login{width:min(1040px,100%);min-height:600px;border:0;border-radius:26px;padding:55px 52px 40px 58%;position:relative;overflow:hidden;box-shadow:0 40px 100px #0004;background:#fff}.loginbody .login:before{content:'BSG HADAMAR\A Gemeinsam.\A Mehr bewegen.';white-space:pre;position:absolute;left:0;top:0;bottom:0;width:50%;padding:100px 42px;color:#fff;background:radial-gradient(circle at 0 100%,#2e9961 0,transparent 60%),linear-gradient(135deg,#214c38,#0d2e23);font-size:38px;font-weight:750;letter-spacing:-1.3px;line-height:1.65;pointer-events:none}.loginbody .login:after{content:'DEIN TEAM. DEIN PORTAL.\A Urlaub · Neuigkeiten · Alles im Blick';white-space:pre;position:absolute;bottom:62px;left:42px;color:#c3dccd;font-size:11px;letter-spacing:1px;line-height:2.1;pointer-events:none}.loginlogo{justify-content:flex-start;margin-bottom:30px}.loginlogo img{width:215px}.login h1{font-size:29px;letter-spacing:-.9px}.login>.muted{font-size:13px;line-height:1.7;margin-bottom:24px}.login .field input{background:#f6f8f6}.login .btn{padding:13px 18px}.login .public-legal-links{position:relative;margin-top:25px}.login .password-toggle-wrap{width:100%}
.ui-mobile-menu{display:none}.ui-hero{border-radius:20px;padding:27px 30px;margin-bottom:24px;border:1px solid #d8e7dd;background:linear-gradient(110deg,#e3f0e7,#f8faf7);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px}.ui-hero:after{content:'';position:absolute;width:220px;height:220px;border:40px solid #16894408;border-radius:50%;right:-60px;top:-90px;pointer-events:none}.ui-hero h2{font-size:24px;margin:5px 0 7px;letter-spacing:-.8px}.ui-hero p{margin:0;color:var(--muted);font-size:12px}.ui-hero-tag{font-size:10px;font-weight:700;letter-spacing:1.6px;color:#347b4e}.ui-hero-link{white-space:nowrap;position:relative;z-index:1}
body[data-theme=dark]{--bg:#101d18;--card:#192923;--text:#e5efe9;--muted:#a0b5a9;--line:#2b4035;--primary:#27a563;--ui-soft:#203c2c;background:#101d18!important;--ui-shadow:0 8px 32px #0001}
body[data-theme=dark] .main{background:transparent!important}body[data-theme=dark] .sidebar{background:linear-gradient(160deg,#163426,#0b2018)!important}body[data-theme=dark] .sidebar a[aria-current=page]{background:#226746!important;color:#fff!important}body[data-theme=dark] .main>.topbar{background:#192923eb!important;border-color:var(--line)!important}body[data-theme=dark] .card{background:var(--card)!important;border-color:var(--line)!important}body[data-theme=dark] .stat:nth-child(4){background:linear-gradient(135deg,#176b42,#174531)!important}body[data-theme=dark] .ui-hero{background:linear-gradient(120deg,#224331,#1a2e23);border-color:var(--line)}body[data-theme=dark] .ui-hero-tag{color:#8dd9ab}body[data-theme=dark] .btn.secondary{background:var(--ui-soft)!important;color:#a3dfbb!important;border-color:#355a43}body[data-theme=dark] .table th,body[data-theme=dark] .table tr:hover td{background:var(--ui-soft)!important}body[data-theme=dark] .table td{border-color:var(--line)!important}body[data-theme=dark] .day{background:var(--card)!important}body[data-theme=dark] .day.today{background:var(--ui-soft)!important}body[data-theme=dark] .topbar-logout{background:var(--card)!important;color:var(--muted)!important;border-color:var(--line)!important}
@keyframes uiEnter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.pagehead,.ui-hero{animation:uiEnter .35s ease both}
@media(min-width:1700px){.main>.content{padding:42px 48px!important}}
@media(max-width:1150px){.sidebar{width:230px}.main{margin-left:230px}.main>.content{padding:26px!important}.main>.topbar{padding:0 26px}.loginbody .login{padding-right:35px;padding-left:56%}.loginbody .login:before{font-size:30px;padding-left:30px}.loginbody .login:after{left:30px}}
@media(min-width:761px) and (max-width:900px){.sidebar{width:84px;padding:16px 10px}.main{margin-left:84px}.sidebar .brandbox{padding:5px;border-radius:9px}.sidebar .brandbox img{width:100%;max-width:100%;transform:none}.sidebar .brandbox:after,.sidebar .navlabel,.sidebar nav a span,.ui-sidebar-foot{display:none}.sidebar nav a{justify-content:center;padding:13px 10px}.ui-nav-icon{display:block}.userchip{max-width:180px}}
@media(max-width:760px){.sidebar{width:270px;transform:translateX(-100%);transition:transform .22s;box-shadow:15px 0 60px #0004}.ui-nav-open .sidebar{transform:translateX(0)}.sidebar .brandbox img{width:100%;max-width:210px;transform:none}.sidebar span,.sidebar .navlabel{display:initial}.sidebar nav a{justify-content:flex-start;padding:12px 13px}.main{margin-left:0}.main>.content{padding:22px 16px!important}.main>.topbar{height:76px;padding:0 16px;gap:10px}.topbar>div:first-child{margin-right:auto}.topbar>div:first-child>strong{font-size:13px}.ui-mobile-menu{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--text);cursor:pointer}.topbar-userarea{gap:7px}.userchip{border:0;padding:0!important;background:transparent}.userchip>div,.topbar-logout-text{display:none}.topbar-logout{padding:9px!important}.pagehead h1{font-size:26px}.card{padding:19px;border-radius:16px}.grid2,.grid3,.grid4,.formgrid{grid-template-columns:1fr}.grid5{grid-template-columns:repeat(2,minmax(0,1fr))}.ui-hero{padding:22px;align-items:flex-start;flex-direction:column;gap:15px}.ui-hero h2{font-size:22px}.ui-hero-link{font-size:12px}.loginbody{padding:22px 15px}.loginbody .login{padding:30px 25px;min-height:auto;max-width:470px;border-radius:22px}.loginbody .login:before,.loginbody .login:after{display:none}.loginlogo{justify-content:center}.login h1{font-size:28px}.notification-dropdown{position:fixed;top:70px;right:12px;left:12px;width:auto;max-width:none}.searchbar-form input[type=search]{min-width:0;width:100%;max-width:none}.app-legal-footer-inner{flex-wrap:wrap;gap:14px}.calendarcontrols{gap:8px}.pagehead{gap:15px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.sidebar,.topbar,.ui-hero{display:none!important}.main{margin-left:0}.card{box-shadow:none!important}body{background:#fff!important}}
.legalbody{background:var(--bg)}.legal-card{border:1px solid var(--line);border-radius:22px;box-shadow:var(--ui-shadow)}.legal-internal{background:var(--ui-soft);border-radius:12px}.personal-calendar-dialog,.idle-session-dialog{border:1px solid var(--line);border-radius:22px;box-shadow:0 25px 90px #102b2430}.personal-calendar-header{border-color:var(--line)}
/* Revision 2: percentages in padding resolve against the containing block.
   A real two-column grid keeps the form centered in the right half. */
@media(min-width:761px){
 .loginbody .login{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:80px;align-content:center;padding:48px;min-height:650px;width:min(1040px,100%)}
 .loginbody .login>*{grid-column:2;min-width:0;position:relative;z-index:1}
 .loginbody .login:before{width:50%;box-sizing:border-box;font-size:clamp(27px,2.8vw,38px);padding:95px 38px;line-height:1.65}
 .loginbody .login:after{left:38px;bottom:55px;font-size:10px;letter-spacing:.6px;max-width:calc(50% - 60px)}
 .loginbody .loginlogo{justify-content:center;margin-bottom:24px}
 .loginbody .loginlogo img{width:210px;max-width:100%}
 .loginbody .login h1{text-align:center;margin:0 0 10px}
 .loginbody .login>.muted{text-align:center;margin-top:0;margin-bottom:22px}
 .loginbody .login form{width:100%}
 .loginbody .login .public-legal-links{justify-content:center;flex-wrap:wrap;gap:12px}
}
@media(min-width:761px) and (max-width:1000px){
 .loginbody{padding:28px}
 .loginbody .login{padding:35px;column-gap:64px;min-height:620px}
 .loginbody .login:before{padding:90px 28px;font-size:27px}
 .loginbody .login:after{left:28px;letter-spacing:0;font-size:9px}
}
@media(max-width:760px){.loginbody .login{display:block}.loginbody .loginlogo{justify-content:center}.loginbody .login h1,.loginbody .login>.muted{text-align:center}}
/* Graceful fallback: mobile navigation stays visible without JavaScript. */
@media(max-width:760px){body:not(.ui-enhanced) .sidebar{position:relative;transform:none;width:100%;box-shadow:none}body:not(.ui-enhanced) .sidebar nav{max-height:240px}body:not(.ui-enhanced) .ui-sidebar-foot{display:none}}
/* BSG Hadamar · Motion Edition */
:root{--bg:#edf2ef;--text:#183127;--muted:#718378;--line:#dce7df;--primary:#128449;--ui-soft:#e4f1e8;--ui-shadow:0 12px 40px #12312208}
body{background:radial-gradient(ellipse at 85% 0,#dcece1,transparent 48%),var(--bg)}
.sidebar{background:linear-gradient(155deg,#132e23,#0b1d16 75%);padding:22px 16px;border-right:1px solid #274637}.sidebar .brandbox{border-radius:18px;padding:17px 14px;box-shadow:0 10px 30px #0002}.sidebar nav a{border-radius:13px;padding:12px 14px}.sidebar nav a[aria-current=page]{background:linear-gradient(105deg,#228f52,#166b40);border:1px solid #4ca56b;box-shadow:0 8px 25px #0002}.sidebar nav a:hover{transform:translateX(4px)}
.main>.topbar{margin:18px 24px 0;border:1px solid var(--line);border-radius:18px;height:76px;background:#ffffffc9;box-shadow:0 8px 30px #153a2005}.main>.content{padding-top:28px!important}
.pagehead h1{font-size:32px;letter-spacing:-1.3px}.card{border-radius:22px;box-shadow:var(--ui-shadow);transition:box-shadow .25s,border-color .25s,transform .25s}.card:hover{border-color:#bfd7c7;box-shadow:0 18px 45px #183c2510}.stat{min-height:166px!important}.stat .num{font-size:42px;letter-spacing:-2px}.stat:before{width:30px;height:4px;background:linear-gradient(90deg,#158449,#70ba89)}.stat:after{content:'';position:absolute;right:-22px;bottom:-35px;width:120px;height:120px;border:22px solid #238d5107;border-radius:50%;pointer-events:none}.stat:nth-child(4){background:linear-gradient(135deg,#19894b,#154a32);box-shadow:0 14px 35px #1c77432a}.stat:nth-child(4):after{border-color:#ffffff0c}.btn{position:relative;overflow:hidden;border-radius:12px;transition:transform .2s,box-shadow .2s}.btn:after{content:'';position:absolute;inset:-100% -80%;background:linear-gradient(100deg,transparent 45%,#ffffff28 50%,transparent 55%);transform:translateX(-55%);pointer-events:none}.btn:hover:after{animation:bsgShine .7s ease}.btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 9px 24px #12844927}.btn:active:not(:disabled){transform:translateY(0) scale(.98)}
.ui-hero{background:linear-gradient(115deg,#163d2a,#226b42);border-color:#306b48;color:#fff;min-height:178px;padding:32px 35px;box-shadow:0 14px 38px #245e3824}.ui-hero h2{font-size:32px;color:#fff;letter-spacing:-1px}.ui-hero p{color:#bfd8c7;font-size:13px}.ui-hero-tag{color:#93d4a8;font-size:9px}.ui-hero .btn.secondary{background:#ffffff12;border-color:#ffffff30;color:#e6f5eb;backdrop-filter:blur(12px)}.ui-hero:after{width:310px;height:310px;right:8%;top:-130px;border:55px solid #ffffff06;animation:bsgHalo 10s ease-in-out infinite}.ui-hero:before{content:'';position:absolute;width:180px;height:180px;border:1px solid #ffffff12;border-radius:50%;right:4%;bottom:-130px;pointer-events:none}
.table th{font-size:9px;letter-spacing:1.4px}.table td{padding-top:18px;padding-bottom:18px}.profilehero{border-radius:22px}.profileavatar{border-radius:21px}.notification-dropdown{box-shadow:0 22px 80px #102f2829}.classic-node{transition:transform .25s,box-shadow .25s}.classic-node:hover{transform:translateY(-3px);box-shadow:0 14px 32px #173c2513}.day{transition:background .2s}.day:hover{background:var(--ui-soft)}
/* Floating centered login; brand artwork lives behind the functional form. */
.loginbody{padding:45px 20px;background:#0b1d15;overflow-x:hidden}.loginbody:before{background-image:radial-gradient(ellipse at 15% 20%,#26794978,transparent 45%),radial-gradient(ellipse at 85% 80%,#3094614a,transparent 45%),linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:auto,auto,70px 70px,70px 70px;animation:bsgAmbient 14s ease-in-out infinite alternate}
.loginbody:after{content:'';position:fixed;left:50%;top:50%;width:720px;height:720px;border:1px solid #8ed9a514;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 70px #78c49304,0 0 0 140px #78c49303;pointer-events:none;z-index:-1;animation:bsgOrbit 18s linear infinite}
.loginbody .login{display:block!important;padding:36px 40px 30px!important;min-height:0!important;width:min(455px,100%)!important;max-width:455px;border:1px solid #ffffff35;border-top:1px solid #ffffff70;border-radius:27px;background:linear-gradient(160deg,#ffffff,#f4f8f4);box-shadow:0 35px 100px #0005,0 1px 0 #fff8 inset;overflow:visible;animation:bsgLogin .7s cubic-bezier(.2,.8,.2,1) both}
.loginbody .login:before{display:block!important;content:'BSG HADAMAR · MITARBEITERPORTAL';position:static!important;width:auto!important;padding:0!important;background:none!important;color:#52755e;font-size:9px!important;letter-spacing:2px!important;font-weight:700;text-align:center;white-space:normal;line-height:1.5;margin:0 0 24px;pointer-events:none}
.loginbody .login:after{display:none!important}.loginbody .loginlogo{justify-content:center!important;padding:0;margin:0 0 24px}.loginbody .loginlogo img{width:225px!important;max-width:100%;filter:drop-shadow(0 6px 8px #1a48250b)}.loginbody .login h1{text-align:center;margin:0 0 9px;font-size:30px;letter-spacing:-1px}.loginbody .login>.muted{text-align:center;margin:0 0 24px;font-size:12px}.loginbody .login form{width:100%}.loginbody .login .field input{background:#edf3ee;border-color:#dbe6de;border-radius:12px;padding:13px 14px}.loginbody .login .btn{background:linear-gradient(110deg,#1c914c,#126b3e);padding:14px;border-radius:12px;box-shadow:0 8px 20px #1d824327}.loginbody .login .public-legal-links{justify-content:center;flex-wrap:wrap;margin-top:24px;font-size:11px}.loginbody .login .flash{font-size:12px;overflow-wrap:anywhere}
@keyframes bsgLogin{from{opacity:0;transform:translateY(22px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes bsgAmbient{from{filter:hue-rotate(-5deg);transform:scale(1)}to{filter:hue-rotate(6deg);transform:scale(1.04)}}
@keyframes bsgOrbit{from{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.08)}to{transform:translate(-50%,-50%) scale(1)}}
@keyframes bsgHalo{0%,100%{transform:translate(0,0)}50%{transform:translate(25px,15px)}}
@keyframes bsgShine{to{transform:translateX(55%)}}
.ui-motion-ready{opacity:0;transform:translateY(16px)}.ui-motion-ready.ui-motion-visible{opacity:1;transform:translateY(0);transition:opacity .55s ease,transform .55s cubic-bezier(.2,.8,.2,1);transition-delay:var(--ui-delay,0ms)}
body[data-theme=dark]{--bg:#0d1c14;--card:#172c20;--line:#294633;--ui-soft:#213d2a;--ui-shadow:0 15px 45px #0001}body[data-theme=dark] .main>.topbar{background:#172c20d9!important}body[data-theme=dark] .ui-hero{background:linear-gradient(115deg,#19472e,#25633d)}body[data-theme=dark] .ui-hero .btn.secondary{background:#ffffff10!important;color:#dcf1e2!important;border-color:#ffffff25}body[data-theme=dark] .card:hover{border-color:#43694c!important}body[data-theme=dark] .stat:nth-child(4){background:linear-gradient(135deg,#21874a,#1a4c30)!important}
@media(max-width:1150px){.main>.topbar{margin:15px 18px 0}.ui-hero h2{font-size:28px}}
@media(max-width:760px){.main>.topbar{margin:12px 12px 0;height:70px;padding:0 12px}.main>.content{padding:22px 15px!important}.ui-hero{min-height:0;padding:25px;gap:20px}.ui-hero h2{font-size:27px}.pagehead h1{font-size:27px}.loginbody{padding:28px 18px}.loginbody .login{padding:30px 25px!important;border-radius:23px}.loginbody .loginlogo img{width:200px!important}.loginbody:after{width:520px;height:520px}.card{border-radius:18px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.ui-motion-ready{opacity:1;transform:none}}
@media print{.ui-motion-ready{opacity:1!important;transform:none!important}.main>.topbar{display:none!important}}
