:root{--hunter-green:#0c3b2e;--cream:#e8dcc6;--soft-gold:#b89a58;--stone:#b9b0a2;--charcoal:#2f2f2f;--green-50:#e8f5f0;--green-100:#c5e6da;--green-200:#9dd4c2;--green-500:#0c3b2e;--green-600:#0c3b2e;--green-700:#082920;--green-800:#051c15;--green-900:#030e0b;--cream-light:#f3ece0;--cream-dark:#d4c8a8;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--amber-50:#faf7f0;--amber-100:#f5efe0;--amber-500:#b89a58;--amber-600:#9a7f47;--yellow-600:#b89a58;--red-100:#fee2e2;--red-500:#ef4444;--red-50:#fef2f2;--red-200:#fecaca;--red-700:#b91c1c;--blue-100:#dbeafe;--blue-500:#3b82f6;--blue-600:#2563eb;--font-sans:"Inter", "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-heading:"Cormorant Garamond", "Playfair Display", Georgia, serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background:var(--gray-50);color:var(--gray-900);min-height:100vh;line-height:1.5}a{color:inherit;text-decoration:none}h1,h2,h3,h4,h5,h6,.page-title,.card-title{font-family:var(--font-heading)}.app{grid-template-columns:260px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--charcoal);color:#fff;flex-direction:column;height:100vh;padding:1.5rem;display:flex;position:sticky;top:0;overflow:hidden}.logo{align-items:center;gap:.75rem;margin-bottom:2rem;display:flex}.logo-icon{background:var(--green-600);border-radius:.5rem;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.125rem;font-weight:700;display:flex}.logo-text{font-size:1.125rem;font-weight:700}.nav{flex-direction:column;flex:1;gap:.25rem;min-height:0;display:flex;overflow-y:auto}.nav-item{color:var(--gray-400);cursor:pointer;border-radius:.375rem;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500;transition:all .15s;display:flex}.nav-item:hover{background:var(--gray-800);color:#fff}.nav-item.active{background:var(--green-600);color:#fff}.nav-item svg{flex-shrink:0;width:20px;height:20px}.nav-section{color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;margin-top:2rem;margin-bottom:.75rem;padding-left:1rem;font-size:.75rem;font-weight:600}.nav-badge{background:var(--green-600);color:#fff;border-radius:9999px;margin-left:auto;padding:2px 8px;font-size:11px}.sidebar-footer{border-top:1px solid var(--gray-800);flex-shrink:0;margin-top:auto;padding-top:1.5rem}.user-info{align-items:center;gap:.75rem;display:flex}.user-avatar{background:var(--green-700);border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:.875rem;font-weight:600;display:flex}.user-name{font-size:.875rem;font-weight:600}.user-role{color:var(--gray-400);font-size:.75rem}.main-content{padding:2rem;overflow-y:auto}.page-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.page-title{color:var(--gray-900);font-size:1.5rem;font-weight:700}.header-actions{gap:.75rem;display:flex}.btn{cursor:pointer;border:none;border-radius:.375rem;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .15s;display:inline-flex}.btn-primary{color:#e8dcc6;background:#0c3b2e}.btn-primary:hover{background:#082920}.btn-secondary{color:#0c3b2e;background:#e8dcc6;border:1px solid #0c3b2e}.btn-secondary:hover{background:#d4c8a8}.btn-sm{padding:.25rem .75rem;font-size:.75rem}.btn svg{width:16px;height:16px}.card{border:1px solid var(--gray-200);background:#fff;border-radius:.75rem;box-shadow:0 1px 2px #0000000d}.card-header{border-bottom:1px solid var(--gray-100);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.card-title{color:var(--gray-900);font-size:1rem;font-weight:600}.card-action{color:var(--green-600);font-size:.875rem;font-weight:500}.card-action:hover{color:var(--green-700)}.stats-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-bottom:2rem;display:grid}.stat-card{border:1px solid var(--gray-200);background:#fff;border-radius:.75rem;padding:1.5rem;box-shadow:0 1px 2px #0000000d}.stat-header{justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;display:flex}.stat-label{color:var(--gray-500);font-size:.875rem;font-weight:500}.stat-icon{border-radius:.5rem;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.stat-icon svg{width:20px;height:20px}.stat-icon.green{background:var(--green-100);color:var(--green-600)}.stat-icon.amber{background:var(--amber-100);color:var(--amber-500)}.stat-icon.red{background:var(--red-100);color:var(--red-500)}.stat-icon.blue{background:var(--blue-100);color:var(--blue-500)}.stat-value{color:var(--gray-900);margin-bottom:.25rem;font-size:1.875rem;font-weight:700}.stat-change{align-items:center;gap:.25rem;font-size:.875rem;display:flex}.stat-change.positive{color:var(--green-600)}.stat-change.negative{color:var(--red-500)}.content-grid{grid-template-columns:1fr 380px;gap:1.5rem;display:grid}.table{border-collapse:collapse;width:100%}.table th{text-align:left;color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;background:var(--gray-50);border-bottom:1px solid var(--gray-200);padding:.75rem 1.5rem;font-size:.75rem;font-weight:600}.table td{border-bottom:1px solid var(--gray-100);vertical-align:middle;padding:1rem 1.5rem;font-size:.875rem}.table tr:last-child td{border-bottom:none}.table tbody tr:hover{background:var(--gray-50);cursor:pointer}.change-title{color:var(--gray-900);margin-bottom:.25rem;font-weight:500}.change-ref{color:var(--gray-500);font-size:.75rem}.badge{border-radius:9999px;align-items:center;padding:.25rem .5rem;font-size:.75rem;font-weight:500;display:inline-flex}.badge.material{background:var(--red-100);color:var(--red-500)}.badge.clarification{background:var(--amber-100);color:var(--amber-500)}.badge.administrative{background:var(--gray-100);color:var(--gray-600)}.status{align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.status-dot{border-radius:50%;width:8px;height:8px}.status-dot.new{background:var(--blue-500)}.status-dot.pending{background:var(--amber-500)}.status-dot.completed{background:var(--green-500)}.status-dot.overdue{background:var(--red-500)}.work-list{padding:.5rem 0}.work-item{border-bottom:1px solid var(--gray-100);align-items:center;gap:1rem;padding:1rem 1.5rem;display:flex}.work-item:last-child{border-bottom:none}.work-item:hover{background:var(--gray-50)}.work-priority{border-radius:2px;flex-shrink:0;width:4px;height:40px}.work-priority.high{background:var(--red-500)}.work-priority.medium{background:var(--amber-500)}.work-priority.low{background:var(--green-500)}.work-content{flex:1;min-width:0}.work-title{color:var(--gray-900);white-space:nowrap;text-overflow:ellipsis;margin-bottom:.25rem;font-size:.875rem;font-weight:500;overflow:hidden}.work-meta{color:var(--gray-500);font-size:.75rem}.activity-list{padding:1rem 0}.activity-item{gap:1rem;padding:1rem 1.5rem;display:flex}.activity-item:hover{background:var(--gray-50)}.activity-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.activity-icon svg{width:18px;height:18px}.activity-icon.review{background:var(--green-100);color:var(--green-600)}.activity-icon.change{background:var(--blue-100);color:var(--blue-500)}.activity-icon.alert{background:var(--red-100);color:var(--red-500)}.activity-text{color:var(--gray-700);margin-bottom:.25rem;font-size:.875rem}.activity-text strong{color:var(--gray-900)}.activity-time{color:var(--gray-400);font-size:.75rem}.loading{color:var(--gray-400);justify-content:center;align-items:center;padding:3rem;display:flex}.spinner{border:2px solid var(--gray-200);border-top-color:var(--green-600);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}input[type=checkbox]{appearance:none;cursor:pointer;background:#fff;border:2px solid #0c3b2e;border-radius:3px;width:18px;height:18px;position:relative}input[type=checkbox]:checked{background:#0c3b2e}input[type=checkbox]:checked:after{content:"";border:2px solid #e8dcc6;border-width:0 2px 2px 0;width:4px;height:8px;position:absolute;top:2px;left:5px;transform:rotate(45deg)}.error{text-align:center;color:var(--red-500);padding:2rem}@media (width<=1280px){.stats-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}}@media (width<=768px){.app-layout{grid-template-columns:1fr}.sidebar{display:none}.stats-grid{grid-template-columns:1fr}.main-content{padding:1rem}}
