﻿:root,[data-theme="emerald"]{--p:38% .075 165;--pc:99% .003 150;--rounded-box:1rem;--rounded-btn:.65rem;--b1:100% 0 0;--b2:97% .006 90;--b3:92% .009 150;--bc:28% .025 165}
body{font-family:Inter,"Segoe UI",sans-serif;color:#243e35;background:#f6f7f3;line-height:1.6}.app-sidebar{position:fixed;inset:0 auto 0 0;width:244px;background:#fff;border-right:1px solid #e1e7df;padding:30px 20px;display:flex;flex-direction:column;z-index:40}.brand{display:flex;align-items:center;gap:12px;font-size:19px;font-weight:750;letter-spacing:-.6px}.brand-mark{display:grid;place-items:center;width:40px;height:44px;background:#235744;color:#fff;border-radius:12px;font-size:27px}.brand small{display:block;font-size:10px;font-weight:500;letter-spacing:1px;color:#7b887e}.nav-caption{font-size:10px;letter-spacing:1.7px;font-weight:700;color:#849086;margin:38px 12px 12px}.app-nav{display:grid;gap:6px}.app-nav a{padding:11px 14px;border-radius:9px;font-size:14px;display:flex;align-items:center;gap:12px}.app-nav a:hover{background:#f1f5ef}.app-nav a[aria-current=page]{background:#e9f1e7;color:#235744;font-weight:700}.nav-icon{font-size:18px;width:23px;text-align:center}.sidebar-help{margin-top:auto;padding:18px 12px;background:#f6f7f3;border-radius:12px;font-size:12px;color:#657369}.sidebar-help strong{display:block;color:#294537;margin-bottom:5px}
.app-shell{margin-left:244px;min-height:100vh;display:flex;flex-direction:column}.app-topbar{min-height:78px;display:flex;align-items:center;justify-content:space-between;padding:12px 38px;border-bottom:1px solid #e1e7df;background:#fff}.app-topbar .eyebrow{margin:0}.app-main{width:100%;max-width:1500px;margin:auto;padding:34px 38px;flex:1}.app-footer{display:flex;justify-content:space-between;padding:20px 38px;color:#7c887e;font-size:11px;border-top:1px solid #e1e7df}.mobile-nav{display:none}.eyebrow{text-transform:uppercase;font-size:10px;font-weight:750;letter-spacing:1.8px;color:#718273;margin-bottom:12px}h1,h2,h3{letter-spacing:-.6px}h1{line-height:1.2}.card,.stat{border:1px solid #e2e8df;box-shadow:0 2px 5px #213d2c03!important}.card-body{gap:1rem}.btn{text-transform:none;font-weight:600;box-shadow:none;min-height:42px}.btn-sm{min-height:34px}.btn-primary{background:#265b46;color:white;border-color:#265b46}.btn-primary:hover{background:#194633;border-color:#194633}.input,.select,.textarea{background:white;border-color:#d9e1d7}.input:focus,.select:focus,.textarea:focus{outline:2px solid #709979;outline-offset:2px}.label-text{font-weight:600;color:#405345}.table th{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:#7b887e;background:#f7f9f5}.table td{padding-top:17px;padding-bottom:17px}.stat-value{font-size:32px;margin-top:8px}.badge{height:auto;min-height:22px;white-space:normal}.skip-link{position:fixed;left:12px;top:-60px;z-index:100;background:white;padding:12px}.skip-link:focus{top:12px}a:focus-visible,button:focus-visible{outline:2px solid #567d59;outline-offset:4px}
.welcome-panel{display:grid;grid-template-columns:1.7fr 1fr;background:#eaf0e5;border:1px solid #dce5d5;border-radius:18px;overflow:hidden;margin-bottom:28px}.welcome-copy{padding:38px}.welcome-copy h1{font-size:38px;font-weight:650;max-width:570px;margin-bottom:16px}.welcome-copy p{max-width:530px;color:#63725e;font-size:14px}.welcome-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.welcome-art{display:grid;place-items:center;min-height:240px;background:linear-gradient(135deg,#eaf0e5,#d7e2ca)}.room-illustration{width:190px;height:155px;border:2px solid #82957a;border-radius:90px 90px 5px 5px;background:#f8faef;position:relative;box-shadow:16px 18px 0 #c7d4bb}.room-illustration:before{content:"";position:absolute;inset:32px 62px 0;border:2px solid #8a9e7c;border-bottom:0;border-radius:40px 40px 0 0;background:#d6e1c9}.room-illustration:after{content:"✦";position:absolute;top:60px;left:-35px;font-size:40px;color:#839b71}.journey-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px}.journey-card{padding:20px;border:1px solid #e1e7dc;border-radius:12px;background:#fff;font-size:13px;color:#71806f}.journey-card strong{display:block;color:#354d3d;margin-bottom:6px;font-size:14px}.step-number{float:left;margin-right:12px;width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:#edf2e8;color:#496543;font-weight:700}.workflow-panel{padding:22px 24px;background:#edf3e9;border:1px solid #dce7d5;border-radius:12px;margin-bottom:24px}.workflow-panel p{font-size:13px;color:#5b705b;margin-top:6px}.workflow-steps{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px;font-size:11px;color:#627760}.workflow-steps span{padding:5px 10px;border-radius:6px;background:#ffffff9c}.workflow-steps span[aria-current=step]{background:#265b46;color:#fff}.fc{--fc-border-color:#e4e9e0;--fc-today-bg-color:#eef4e6;--fc-button-bg-color:#fff;--fc-button-text-color:#405e43;--fc-button-border-color:#dce4d7;--fc-button-hover-bg-color:#edf3e8;--fc-button-hover-border-color:#c5d3bf;--fc-button-active-bg-color:#265b46;--fc-button-active-border-color:#265b46;font-size:12px}.fc .fc-toolbar-title{font-size:20px;font-weight:650}.fc .fc-button-active{color:#fff!important}.fc .fc-col-header-cell{padding:10px 0;background:#f7f9f4}.fc .fc-daygrid-day-number{padding:8px 12px}.fc .fc-event{border-radius:5px;padding:3px}.portal-layout main{max-width:1060px}.portal-header{background:#265b46;color:white;padding:22px}.portal-layout{display:flex;flex-direction:column;min-height:100vh}.portal-layout main{flex:1}
@media(max-width:1100px){.app-sidebar{width:210px}.app-shell{margin-left:210px}.app-main{padding:24px}.welcome-copy h1{font-size:31px}.welcome-copy{padding:28px}}
@media(max-width:767px){.app-sidebar{display:none}.app-shell{margin-left:0}.app-topbar{min-height:66px;padding:12px 18px}.app-main{padding:22px 16px}.mobile-nav{display:block;position:relative}.mobile-nav nav{position:absolute;top:40px;left:0;width:230px;background:#fff;box-shadow:0 10px 30px #22332222;padding:16px;border:1px solid #dce4d7;border-radius:12px;z-index:50}.welcome-panel{grid-template-columns:1fr}.welcome-art{display:none}.welcome-copy{padding:25px}.welcome-copy h1{font-size:30px}.journey-grid{grid-template-columns:1fr;gap:8px}.journey-card{padding:15px}.app-footer{padding:18px;display:block}.fc .fc-toolbar{flex-wrap:wrap;gap:12px}.fc .fc-toolbar-title{font-size:17px}.workflow-panel{padding:18px}.app-main>.card{min-width:0}.table{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
[hidden]{display:none!important}
