@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#102d4f;--navy-deep:#0a2039;--green:#14966b;--green-dark:#087b58;--ink:#182b43;--muted:#718096;--line:#e3eaf1;--paper:#fff;--bg:#f4f7fa}*{box-sizing:border-box}body{margin:0;font:15px/1.55 'DM Sans',Arial,sans-serif;background:var(--bg);color:var(--ink)}h1,h2,h3,.brand{font-family:'Manrope','DM Sans',Arial,sans-serif;letter-spacing:-.035em}.top{min-height:72px;background:var(--navy);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 28px;box-shadow:0 3px 14px #0a20391a}.brand{font-weight:800;font-size:18px;letter-spacing:-.02em}.logout{color:#d9f7e9;margin-left:14px;text-decoration:none}.logout:hover{text-decoration:underline}.layout{display:flex;min-height:calc(100vh - 120px)}.sidebar{width:246px;background:#fff;border-right:1px solid var(--line);padding:20px 13px;flex-shrink:0}.sidebar a{display:flex;align-items:center;text-decoration:none;color:#4b6077;padding:11px 14px;border-radius:9px;margin-bottom:4px;font-weight:600;font-size:14px;transition:background .15s,color .15s}.sidebar a:hover,.sidebar a:focus{background:#eaf7f1;color:var(--green-dark)}.main{padding:30px;width:calc(100% - 246px);overflow:auto}.main h1{font-size:28px;margin:0 0 7px;color:var(--navy)}.main h2{font-size:19px;margin-top:0;color:var(--navy)}.muted{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;margin:22px 0}.card,.panel{background:#fff;border:1px solid var(--line);border-radius:15px;padding:21px;box-shadow:0 5px 20px #18324a08;margin-bottom:18px}.card{transition:transform .15s,box-shadow .15s}.card:hover{transform:translateY(-2px);box-shadow:0 10px 26px #18324a10}.card strong{font-size:29px;display:block;color:var(--green-dark);font-family:'Manrope',sans-serif;letter-spacing:-.04em;margin:7px 0}.btn,button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:9px;background:var(--green-dark);color:#fff;padding:11px 16px;text-decoration:none;cursor:pointer;font:600 14px 'DM Sans',sans-serif;transition:background .15s,transform .15s}.btn:hover,button:hover{background:#066748}.btn.secondary{background:#edf2f7;color:#20364d}.btn.secondary:hover{background:#dfe8f0}.btn.danger{background:#b42318}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field{min-width:0}.field label{display:block;font-weight:700;margin-bottom:7px;font-size:13px;color:#344a61}.field input,.field select,.field textarea,input,select,textarea{max-width:100%;padding:12px 13px;border:1px solid #d6e0e9;border-radius:9px;background:#fff;width:100%;font:inherit;color:var(--ink);outline:none;transition:border-color .15s,box-shadow .15s}.field input:focus,.field select:focus,.field textarea:focus,input:focus,select:focus,textarea:focus{border-color:#239c75;box-shadow:0 0 0 3px #14966b1a}.field textarea{min-height:100px}.actions{display:flex;gap:9px;flex-wrap:wrap;margin:14px 0}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:12px}table{width:100%;border-collapse:collapse;min-width:700px}th,td{text-align:left;padding:13px 15px;border-bottom:1px solid #eaf0f5;vertical-align:top}th{background:#f5f8fb;font-size:12px;color:#52677e;text-transform:uppercase;letter-spacing:.05em}tbody tr:hover{background:#fbfdfc}tbody tr:last-child td{border-bottom:0}.flash{padding:12px 15px;border-radius:10px;margin-bottom:17px;background:#e1f7ec;color:#166344;border:1px solid #c5ecd9}.flash.error{background:#fff0f0;color:#a22b31;border-color:#ffd6d6}.pill{display:inline-block;border-radius:30px;padding:4px 10px;background:#e5f5ee;color:#087b54;font-size:12px;font-weight:700}footer{text-align:center;color:#8795a5;padding:18px;font-size:12px}
/* Sign-in experience */
.login-page{min-height:100vh;background:#f5f7fa;display:grid;place-items:center;padding:28px}.login-shell{width:min(1120px,100%);min-height:690px;display:grid;grid-template-columns:1fr 1fr;background:#fff;border:1px solid #e5eaf0;border-radius:24px;overflow:hidden;box-shadow:0 28px 90px #0b234013}.login-visual{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:42px 46px;color:#fff;background:linear-gradient(145deg,#153c60 0%,#102d4f 48%,#0a243e 100%)}.login-visual:before{content:"";position:absolute;z-index:-1;width:440px;height:440px;border:1px solid #ffffff12;border-radius:50%;right:-190px;top:105px;box-shadow:0 0 0 38px #ffffff06,0 0 0 78px #ffffff04}.login-brand,.mobile-brand{display:flex;align-items:center;gap:13px;position:relative;z-index:2}.brand-mark{height:47px;width:49px;border-radius:13px;background:#fff;color:var(--navy);display:grid;place-items:center;font:800 16px 'Manrope',sans-serif;letter-spacing:-.08em;box-shadow:0 8px 22px #06182a30}.brand-mark span{color:var(--green);padding:0 1px}.login-brand strong,.mobile-brand strong{display:block;font:800 14px 'Manrope',sans-serif;letter-spacing:.035em}.login-brand small,.mobile-brand small{display:block;color:#b9d4e5;font-size:10px;letter-spacing:.19em;font-weight:700;margin-top:3px}.visual-copy{position:relative;z-index:2;max-width:440px;margin-top:-10px}.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:10px;font-weight:700;letter-spacing:.17em;color:#b8d8d7}.eyebrow i{width:7px;height:7px;border-radius:50%;background:#47d5a0;box-shadow:0 0 0 5px #47d5a01e}.visual-copy h1{font-size:clamp(36px,4vw,53px);line-height:1.13;letter-spacing:-.055em;margin:23px 0 18px;font-weight:700}.visual-copy h1 em{font-style:normal;color:#6fe0b4}.visual-copy p{font-size:15px;line-height:1.8;color:#c2d4e2;max-width:360px;margin:0}.visual-footer{display:flex;align-items:center;gap:12px;color:#c4d6e4;font-size:12px;position:relative;z-index:2}.visual-symbol{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:#ffffff12;color:#78e3bb;font-size:19px}.visual-orb{position:absolute;z-index:-1;border-radius:50%;pointer-events:none}.orb-one{width:240px;height:240px;right:-75px;bottom:100px;background:radial-gradient(circle at 35% 30%,#24a77b55,transparent 68%)}.orb-two{width:150px;height:150px;right:80px;top:115px;border:1px solid #ffffff0c;box-shadow:0 0 0 24px #ffffff04}.login-panel{display:flex;align-items:center;justify-content:center;padding:54px 50px}.login-panel-inner{width:100%;max-width:390px}.mobile-brand{display:none}.welcome-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#eaf7f1;color:#13875f;margin-bottom:25px}.welcome-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.form-kicker{font-size:10px;letter-spacing:.18em;font-weight:800;color:var(--green-dark);margin:0 0 7px}.login-panel h2{font-size:26px;letter-spacing:-.045em;line-height:1.25;margin:0 0 9px;color:#132d49}.form-subtitle{font-size:13px;color:#7b8999;margin:0 0 27px}.login-form .field{margin:0 0 19px}.login-form .field label{font-size:12px;margin-bottom:8px;color:#344b63}.input-wrap{position:relative;display:flex;align-items:center}.input-wrap>svg{position:absolute;left:13px;width:17px;height:17px;fill:none;stroke:#8293a5;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.input-wrap input{height:48px;padding:0 14px 0 41px;border-color:#dfe6ed;border-radius:9px;font-size:12px}.input-wrap input::placeholder{color:#9aa7b5}.input-wrap input:focus{border-color:#15966b;box-shadow:0 0 0 3px #14966b16}.password-toggle{position:absolute;right:7px;padding:7px 9px;color:#527087;background:transparent;font-size:11px}.password-toggle:hover{background:#edf4f5;color:#126b51}.login-submit{width:100%;height:49px;border-radius:9px;margin-top:5px;background:linear-gradient(100deg,#128b64,#087b58);font-size:13px;box-shadow:0 7px 16px #07855b24}.login-submit span{font-size:18px;font-weight:400;transition:transform .15s}.login-submit:hover{background:linear-gradient(100deg,#0c7d59,#066a4b)}.login-submit:hover span{transform:translateX(3px)}.secure-note{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:22px;color:#82909e;font-size:10px}.secure-note svg{width:15px;height:15px;fill:none;stroke:#1b9a70;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.account-note{text-align:center;font-size:11px;color:#8492a0;margin:24px 0 0}.account-note strong{color:#4d6378;font-weight:700}.login-bottom{border-top:1px solid #edf0f4;margin-top:31px;padding-top:18px;text-align:center;color:#9aa5b1;font-size:9px}.login-bottom span{padding:0 4px;color:#c3ccd4}
@media(max-width:900px){.login-page{padding:18px}.login-shell{max-width:600px;min-height:0;grid-template-columns:1fr}.login-visual{display:none}.login-panel{padding:42px 34px}.mobile-brand{display:flex;margin-bottom:35px}.mobile-brand .brand-mark{background:var(--navy);color:white}.mobile-brand small{color:#8193a5}.welcome-icon{margin-bottom:20px}.login-bottom{margin-top:26px}}@media(max-width:760px){.top{align-items:flex-start;flex-direction:column;padding:15px 18px;gap:8px}.layout{display:block}.sidebar{width:100%;display:flex;overflow:auto;border-right:0;border-bottom:1px solid var(--line);gap:4px;padding:9px}.sidebar a{white-space:nowrap;padding:9px 12px}.main{width:100%;padding:17px}.main h1{font-size:24px}.form-grid{grid-template-columns:1fr}.grid{gap:11px}.card,.panel{padding:16px;border-radius:12px}.login-page{padding:0;background:#fff}.login-shell{border:0;border-radius:0;box-shadow:none;min-height:100vh}.login-panel{padding:28px 24px}.mobile-brand{margin-bottom:42px}.login-panel h2{font-size:24px}.welcome-icon{width:44px;height:44px}}@media(min-width:901px) and (max-height:760px){.login-shell{min-height:620px}.login-visual{padding:32px 40px}.login-panel{padding:35px 42px}.login-bottom{margin-top:20px}}
/* Updated C&C Life Sciences sign-in page styles are scoped in login.php. */
