.card{background:var(--color-white);border-radius:var(--radius-md);padding:var(--space-5);box-shadow:0 1px 3px #0000001a;height:100%;display:flex;flex-direction:column;transition:var(--transition-fast)}.card h3{margin:0 0 var(--space-4) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text)}.stat-card{background:var(--color-white);border-radius:var(--radius-md);padding:var(--space-5);text-align:left;border:1px solid var(--color-border-primary);transition:background .4s ease,border-color .4s ease;min-height:150px;display:flex;flex-direction:column;justify-content:center;position:relative}.stat-card-accent-green{border:2px solid #16a34a;background:var(--color-item-selected)}.stat-label{display:flex;align-items:center;justify-content:flex-start;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-2);font-weight:var(--font-weight-medium)}.stat-label svg{flex-shrink:0;width:16px;height:16px}.stat-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.chart-loading{height:300px;background:linear-gradient(90deg,var(--color-skeleton-base) 25%,var(--color-skeleton-highlight) 50%,var(--color-skeleton-base) 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:var(--radius-sm)}.stat-loading{height:3rem;width:60%;margin:0 auto;background:linear-gradient(90deg,var(--color-skeleton-base) 25%,var(--color-skeleton-highlight) 50%,var(--color-skeleton-base) 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:var(--radius-sm)}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.chart-loading.hidden,.stat-loading.hidden{display:none}.btn{display:inline-block;padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);text-align:center;transition:var(--transition-fast);cursor:pointer;border:none}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{opacity:.9;transform:translateY(-1px)}.btn-block{width:100%}.form-group{margin-bottom:var(--space-4)}.form-group label{display:block;margin-bottom:var(--space-2);font-size:var(--font-size-sm);font-weight:500;color:var(--color-text)}.form-group input,.form-group textarea,.form-group select{width:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-base);transition:border-color .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-primary)}.form-group .error{display:block;margin-top:var(--space-2);font-size:var(--font-size-sm);color:var(--chart-red)}.form-group-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-5)}.checkbox{display:flex;align-items:center;gap:var(--space-2);cursor:pointer}.checkbox input[type=checkbox]{width:auto;margin:0}.link{color:var(--color-primary);text-decoration:underline;font-size:var(--font-size-sm)}.link:hover{text-decoration:none}.alert{padding:var(--space-4);border-radius:var(--radius-sm);margin-bottom:var(--space-4);font-size:var(--font-size-sm)}.alert-success{background:#e8f5e9;color:#2e7d32;border:1px solid #a5d6a7}.alert-error{background:#ffebee;color:#c62828;border:1px solid #ef9a9a}.dashboard-logo img{height:40px;width:auto}
