:root{--forest:#164a39;--forest-2:#245e45;--sage:#7eab8c;--mint:#b0eacb;--light:#f4faf5;--ink:#19362c;--border:#d9e8dd}
*{box-sizing:border-box}body{margin:0;background:var(--light);color:var(--ink);font:15px/1.5 system-ui,-apple-system,'Segoe UI',sans-serif}
header{background:var(--forest);color:white;padding:20px max(24px,calc((100vw - 1140px)/2));display:flex;gap:16px;align-items:center;box-shadow:0 2px 16px #164a3922}
header img{height:58px;width:58px;object-fit:contain}
header strong{font-size:20px;letter-spacing:.02em}header small{display:block;color:#c6e8d1}
header nav{margin-left:auto;display:flex;gap:14px;align-items:center}header a{color:#dcf3e1;text-decoration:none}
main{max-width:1140px;margin:30px auto;padding:0 24px}h1{font-size:25px;margin:0 0 20px}h2{font-size:18px;margin:0 0 12px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:16px}
.panel{background:white;border:1px solid var(--border);border-radius:15px;padding:22px;margin-bottom:18px;box-shadow:0 4px 20px #164a3909}
a{color:#236246}button,.button{background:var(--forest-2);border:0;border-radius:9px;color:white;padding:10px 16px;font:inherit;cursor:pointer;display:inline-block;text-decoration:none}
button:hover,.button:hover{background:#164a39}input,select,textarea{width:100%;border:1px solid #bbd4c2;border-radius:8px;padding:10px 12px;font:inherit;background:#fff;color:var(--ink)}
label{font-weight:600;display:block;margin:0 0 11px}label input,label select,label textarea{margin-top:5px;font-weight:400}
table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--border)}th{background:#edf6ef}
.scroll{overflow:auto}small,.muted{color:#607769}.tag{padding:4px 10px;background:#e0f2e7;border-radius:99px;font-weight:600;white-space:nowrap}
.error{background:#fff2ed;padding:12px;border-left:4px solid #bd5b37}.success{background:#e0f2e7;padding:12px;border-left:4px solid #245e45}
.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.actions form{display:inline}.actions button{padding:6px 11px}
.login{max-width:450px;margin:70px auto}footer{text-align:center;padding:20px;color:#718578}a.button{color:white}

.search-form{padding-bottom:16px;border-bottom:1px solid var(--border);margin-bottom:12px}.search-form .actions{margin-bottom:10px}
.secondary{background:#e7f2ea!important;color:#23513b!important}.secondary:hover{background:#d0e6d5!important}
.danger{background:#9b463d!important}.danger:hover{background:#762b25!important}.secondary-text{display:block;margin-top:2px}
.inactive-label{display:block;color:#9b463d;font-weight:700}.actions{min-width:130px}.actions button{white-space:nowrap}td{vertical-align:middle}

/* SIGMA RESPONSIVE NAVIGATION 2026-10-31 - mobile first, no horizontal overflow */
html{max-width:100%;overflow-x:clip}
body{min-width:0;max-width:100%;overflow-x:clip}
main, .grid, .panel, .scroll, .site-header, .header-inner{min-width:0;max-width:100%}
main{width:min(1140px,100%);margin:24px auto;padding:0 clamp(12px,3vw,24px)}
.grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:16px}
.panel{overflow-wrap:anywhere;min-width:0}
.scroll{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.scroll table{min-width:max-content}
input,select,textarea{max-width:100%;min-width:0}
.actions{min-width:0}
.site-header{display:block;background:transparent;color:var(--forest);padding:14px clamp(12px,3vw,24px) 0;box-shadow:none}
.header-inner{width:min(1140px,100%);margin:0 auto}
.topbar{display:flex;position:relative;align-items:center;gap:14px;background:linear-gradient(110deg,#114b37,#1a684a 72%,#104431);color:#fff;border-radius:20px;padding:14px 20px;box-shadow:0 12px 30px #164a3924;min-width:0}
.brand-area{display:flex;align-items:center;gap:12px;min-width:0;flex:1 1 auto}
.topbar .brand-logo{display:block;flex:0 0 auto;width:48px;height:48px;object-fit:contain}
.brand-copy{min-width:0;line-height:1.22}
.brand-copy strong{display:block;font-size:clamp(17px,2vw,23px);white-space:nowrap;letter-spacing:0}
.brand-copy small{display:block;font-size:11px;margin-top:4px;color:#d4f0e0}
.account-actions{display:flex;flex:0 1 auto;align-items:center;gap:10px;min-width:0}
.user-chip{display:flex;align-items:center;gap:7px;background:#ffffff15;border:1px solid #ffffff20;border-radius:30px;padding:7px 11px;font-weight:600;min-width:0;max-width:180px}
.user-chip span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.user-chip svg,.logout-btn svg,.mobile-menu svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.logout-form{margin:0;flex-shrink:0}
button.logout-btn{display:flex;align-items:center;gap:7px;color:#104632;background:#e1f5e9;border:1px solid #ffffff50;border-radius:13px;padding:10px 14px;font-weight:700;white-space:nowrap;min-height:42px}
button.logout-btn:hover{color:#0e4030;background:#c6edd7}
.desktop-nav{display:flex;flex-wrap:wrap;align-items:center;gap:9px;background:#fff;border:1px solid #deeee3;border-radius:18px;margin-top:12px;padding:9px;box-shadow:0 8px 24px #164a390f}
.desktop-nav .nav-link,.mobile-nav .nav-link{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:11px 16px;border-radius:13px;color:#20513e;font-weight:650;text-decoration:none;transition:background-color .17s ease,transform .17s ease;white-space:nowrap}
.desktop-nav .nav-link:hover,.mobile-nav .nav-link:hover{background:#e1f2e7;transform:translateY(-1px)}
.desktop-nav .nav-link.is-active,.mobile-nav .nav-link.is-active{background:#164b38;color:white;box-shadow:0 3px 12px #164a3920}
.nav-link svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.mobile-menu{display:none}
@media(max-width:720px){
 .site-header{padding:10px 10px 0}
 .topbar{gap:8px;flex-wrap:nowrap;padding:10px 12px;border-radius:16px}
 .topbar .brand-logo{width:36px;height:36px}
 .brand-area{gap:7px;flex:1;min-width:0}
 .brand-copy strong{font-size:17px}
 .brand-copy small{display:none}
 .account-actions{gap:6px;flex:0 0 auto}
 .user-chip{padding:8px;max-width:45px}
 .user-chip svg{width:19px;height:19px}
 .user-chip span{display:none}
 button.logout-btn{padding:9px;min-width:40px;min-height:40px;justify-content:center}
 button.logout-btn span{display:none}
 .desktop-nav{display:none}
 .mobile-menu{display:block;order:-1;flex:0 0 auto;position:relative}
 .mobile-menu summary{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:11px;background:#ffffff20;color:white;cursor:pointer;list-style:none;touch-action:manipulation}
 .mobile-menu summary::-webkit-details-marker{display:none}
 .mobile-menu summary:focus-visible{outline:3px solid #c7f2d6;outline-offset:2px}
 .mobile-menu summary:hover{background:#ffffff32}
 .mobile-menu .menu-label{display:none}
 .mobile-nav{position:absolute;top:calc(100% + 13px);left:-2px;z-index:99;display:flex;flex-direction:column;gap:5px;padding:10px;background:#fff;border:1px solid #d8e8dc;border-radius:15px;box-shadow:0 18px 34px #164a3933;width:min(280px,calc(100vw - 40px));max-width:calc(100vw - 40px)}
 .mobile-nav .nav-link{width:100%;white-space:normal}
 main{padding:0 12px;margin-top:20px}
 h1{font-size:22px}
 .panel{padding:16px}
 footer{padding:16px 12px}
}
@media(max-width:355px){
 .topbar{padding:8px;gap:5px}
 .topbar .brand-logo{width:30px;height:30px}
 .brand-copy strong{font-size:15px}
 .mobile-menu summary{width:36px;height:38px}
 .user-chip{display:none}
 button.logout-btn{min-width:36px;min-height:38px;padding:7px}
}
@media(prefers-reduced-motion:reduce){
 .nav-link{transition:none!important}
}
