:root{--navy:#0b2948;--blue:#1769aa;--sky:#e9f4ff;--line:#dfe7ef;--muted:#68788a}
*{box-sizing:border-box}body{background:#f3f6fa;color:#16324f;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}.sidebar{position:fixed;inset:0 auto 0 0;width:260px;background:linear-gradient(180deg,#092641,#0e3a62);color:#fff;padding:22px 14px;z-index:1040;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;padding:0 8px 22px}.brand-mark{width:42px;height:42px;border-radius:12px;background:#fff2;display:grid;place-items:center;font-size:1.4rem}.brand small{display:block;color:#b9d1e5;font-size:.7rem}.sidebar nav{gap:5px}.sidebar nav a{color:#d9e8f5;text-decoration:none;padding:10px 12px;border-radius:9px;display:flex;align-items:center;gap:11px}.sidebar nav a:hover,.sidebar nav a.active{background:#ffffff18;color:white}.sidebar-user{margin-top:auto;border-top:1px solid #ffffff20;padding:16px 10px 0;display:flex;flex-direction:column}.sidebar-user small{color:#adc7da}.app-main{margin-left:260px;min-height:100vh}.app-main>.navbar{min-height:72px}.page-owner-identity{margin:auto;text-align:center;line-height:1.15;padding:0 12px}.page-owner-identity strong,.page-owner-identity small{display:block}.page-owner-identity strong{font-size:.86rem;color:#163f65}.page-owner-identity small{font-size:.68rem;color:#6b7f92;letter-spacing:.04em}.stat-card{border:0;border-radius:14px;box-shadow:0 3px 14px #17324d0b}.stat-icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--sky);color:var(--blue);font-size:1.25rem}.card{border:1px solid var(--line);border-radius:16px;box-shadow:0 8px 24px rgba(15,41,68,.04)}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px}.page-heading h2{font-size:1.65rem;margin:.15rem 0}.page-heading p{margin:0;color:var(--muted)}.eyebrow{color:var(--blue);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.btn-action{display:flex;align-items:center;gap:8px;padding:.65rem 1rem}.data-card{overflow:hidden}.toolbar{padding:14px 16px;border-bottom:1px solid var(--line);background:#fff}.toolbar .input-group-text{background:white;border-right:0;color:#789}.toolbar .input-group .form-control{border-left:0}.table>:not(caption)>*>*{padding:.82rem 1rem;vertical-align:middle}.table thead th{background:#f7f9fc;color:#53667a;font-size:.75rem;text-transform:uppercase;letter-spacing:.055em;white-space:nowrap;border-bottom-color:var(--line)}.table tbody tr:last-child td{border-bottom:0}.list-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;background:white;color:var(--muted);font-size:.86rem;padding:12px 16px}.empty-state{display:flex;min-height:220px;flex-direction:column;align-items:center;justify-content:center;color:#8391a2;gap:7px}.empty-state i{font-size:2.2rem;color:#afbdca}.empty-state strong{font-size:1rem;color:#53667a}.form-label{font-weight:650;font-size:.84rem;color:#334b62}.required:after{content:" *";color:#dc3545}.modal-content{border:0;border-radius:18px;overflow:hidden}.modal-header{padding:18px 22px}.modal-body{padding:22px;background:#f8fafc}.modal-footer{padding:14px 22px}.form-section{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px}.form-section-title{display:flex;align-items:center;gap:8px;font-weight:700;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:16px}.tool-summary{background:linear-gradient(135deg,#e9f4ff,#f7fbff);border:1px solid #cfe5f8;border-radius:12px;padding:14px}.tool-metric{border-left:1px solid #cfe0ef;padding-left:14px}.spreadsheet-wrap{max-height:62vh;overflow:auto}.spreadsheet{min-width:1450px}.spreadsheet thead{position:sticky;top:0;z-index:4}.spreadsheet th:first-child,.spreadsheet td:first-child{position:sticky;left:0;background:white;z-index:3}.spreadsheet input{min-width:88px}.spreadsheet .soil{min-width:145px}.spreadsheet .note{min-width:165px}.sticky-actions{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line);padding:12px;z-index:5}.login-page{min-height:100vh;background:radial-gradient(circle at 15% 15%,#1d6ba7,#081f36 65%);display:grid;place-items:center;padding:20px}.login-card{width:min(920px,100%);overflow:hidden;border:0;border-radius:22px;box-shadow:0 22px 70px #00102066}.login-side{background:linear-gradient(150deg,#0b2b4a,#155e93);color:white;min-height:520px;padding:48px}.login-form{padding:48px;background:white}@media(max-width:991px){.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.show{transform:none}.app-main{margin-left:0}.page-heading{align-items:flex-start}.list-footer{align-items:flex-start}.page-owner-identity{margin-left:auto}.page-owner-identity small{display:none}}@media(max-width:576px){.page-heading{flex-direction:column}.page-heading .btn{width:100%;justify-content:center}.toolbar .col{flex:0 0 100%}.list-footer{flex-direction:column}.modal-body{padding:12px}.form-section{padding:14px}.page-owner-identity{display:none}}@media print{.sidebar,.navbar,.no-print{display:none!important}.app-main{margin:0}.container-fluid{padding:0!important}body{background:white}}
.sidebar nav{min-height:0;overflow-y:auto;overflow-x:hidden;flex-wrap:nowrap;scrollbar-width:thin}.sidebar-user{flex-shrink:0}.sidebar-menu-group{margin:0;border:0}.sidebar-menu-group summary{list-style:none;color:#d9e8f5;padding:10px 12px;border-radius:9px;display:flex;align-items:center;gap:11px;cursor:pointer;user-select:none}.sidebar-menu-group summary::-webkit-details-marker{display:none}.sidebar-menu-group summary:hover,.sidebar-menu-group[open] summary{background:#ffffff18;color:#fff}.sidebar-menu-group summary>i:first-child{width:16px}.sidebar-menu-chevron{margin-left:auto;font-size:.72rem;transition:transform .18s}.sidebar-menu-group[open] .sidebar-menu-chevron{transform:rotate(180deg)}.sidebar-submenu{margin:2px 0 5px 22px;padding-left:9px;border-left:1px solid #ffffff2b}.sidebar .sidebar-submenu a{padding:8px 9px;font-size:.88rem;gap:9px}.sidebar .sidebar-submenu a i{font-size:.82rem}
