:root{--primary-color: #6c3461;--primary-hover: #0056b3;--success-color: #28a745;--success-hover: #218838;--warning-color: #ffc107;--warning-hover: #ffca2c;--danger-color: #dc3545;--danger-hover: #c82333;--secondary-color: #6c757d;--secondary-hover: #5a6268;--bg-color: #f5f5f5;--card-bg: #ffffff;--text-color: #333333;--text-muted: #666666;--text-light: #888888;--border-color: #dee2e6;--border-radius: 8px;--shadow: 0 2px 10px rgba(0, 0, 0, .1);--shadow-hover: 0 4px 20px rgba(0, 0, 0, .15);--container-max-width: 1200px;--container-padding: 20px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg-color);color:var(--text-color);line-height:1.6}.container{max-width:var(--container-max-width);margin:0 auto;padding:var(--container-padding)}.card{background:var(--card-bg);border-radius:var(--border-radius);padding:20px;box-shadow:var(--shadow);transition:box-shadow .3s ease}.card:hover{box-shadow:var(--shadow-hover)}.btn{display:inline-block;padding:10px 20px;border:none;border-radius:5px;font-size:14px;font-weight:500;text-decoration:none;cursor:pointer;transition:all .3s ease;text-align:center;line-height:1}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-success{background:var(--success-color);color:#fff}.btn-success:hover:not(:disabled){background:var(--success-hover)}.btn-warning{background:var(--warning-color);color:#212529}.btn-warning:hover:not(:disabled){background:var(--warning-hover)}.btn-danger{background:var(--danger-color);color:#fff}.btn-danger:hover:not(:disabled){background:var(--danger-hover)}.btn-secondary{background:var(--secondary-color);color:#fff}.btn-secondary:hover:not(:disabled){background:var(--secondary-hover)}.alert{padding:15px;border-radius:var(--border-radius);margin:15px 0}.alert-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.alert-error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.alert-info{background:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.loading{display:flex;justify-content:center;align-items:center;padding:40px;color:var(--text-muted)}.loading:after{content:"";width:20px;height:20px;border:2px solid var(--primary-color);border-top:2px solid transparent;border-radius:50%;margin-left:10px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.form-group{margin-bottom:20px}.form-label{display:block;margin-bottom:5px;font-weight:500;color:var(--text-color)}.form-control{width:100%;padding:10px;border:1px solid var(--border-color);border-radius:5px;font-size:14px;background:#fff;color:var(--text-color)}.form-control:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #007bff40}.nav{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.nav-link{padding:10px 15px;color:var(--primary-color);text-decoration:none;background:var(--card-bg);border-radius:5px;border:1px solid var(--border-color);transition:all .3s ease}.nav-link:hover{background:#e9ecef}.nav-link.active{background:var(--primary-color);color:#fff}.grid{display:grid;gap:20px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}@media (max-width: 768px){.container{padding:10px}.card{padding:15px}.btn{padding:8px 16px;font-size:13px}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}
