:root{--cit-primary:#63326e;--cit-primary-dark:#4e2558;--cit-primary-light:#9b5aa8;--cit-primary-50:#63326e1a;--cit-primary-100:#63326e33;--cit-accent:#60a38e;--cit-accent-dark:#4d8272;--cit-accent-light:#7db9a5;--cit-success:#60a38e;--cit-success-dark:#4d8272;--cit-info:#5c98b8;--cit-info-dark:#4a7a94;--cit-warning:#f6c23e;--cit-warning-dark:#dda20a;--cit-danger:#d11116;--cit-danger-dark:#be2617;--cit-text-primary:#545f7d;--cit-text-dark:#2e3a59;--cit-text-light:#8e92a4;--cit-text-white:#fff;--cit-bg-primary:#f5f4f8;--cit-bg-white:#fff;--cit-bg-light:#f5f7fa;--cit-bg-dark:#1a1a2e;--cit-border:#e1e4ed;--cit-border-dark:#d1d3e2;--cit-border-light:#f0f1f5;--cit-font-primary:var(--font-inter),"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--cit-font-secondary:var(--font-roboto),"Roboto",-apple-system,BlinkMacSystemFont,sans-serif;--cit-font-mono:"SFMono-Regular","Consolas","Liberation Mono",monospace;--cit-spacing-xs:.25rem;--cit-spacing-sm:.5rem;--cit-spacing-md:1rem;--cit-spacing-lg:1.5rem;--cit-spacing-xl:2rem;--cit-spacing-2xl:3rem;--cit-radius-xs:.125rem;--cit-radius-sm:.25rem;--cit-radius-md:.375rem;--cit-radius-lg:.5rem;--cit-radius-xl:.75rem;--cit-radius-2xl:1rem;--cit-radius-full:9999px;--cit-shadow-xs:0 1px 3px #0000000a;--cit-shadow-sm:0 2px 6px #0000000d;--cit-shadow-md:0 4px 12px #0000000f;--cit-shadow-lg:0 8px 24px #00000014;--cit-shadow-xl:0 16px 40px #00000014;--cit-shadow-card:0 8px 30px #0000000a;--cit-shadow-hover:0 10px 20px #63326e1f;--cit-transition-fast:.15s cubic-bezier(.4,0,.2,1);--cit-transition-base:.2s cubic-bezier(.4,0,.2,1);--cit-transition-slow:.3s cubic-bezier(.4,0,.2,1)}*{box-sizing:border-box}body{font-family:var(--cit-font-primary);color:var(--cit-text-primary);background-color:var(--cit-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:.875rem;font-weight:400;line-height:1.5}h1,h2,h3,h4,h5,h6{font-family:var(--cit-font-primary);color:var(--cit-text-dark);margin-top:0;margin-bottom:.5rem;font-weight:700;line-height:1.3}h1{font-size:1.75rem;font-weight:800}h2{font-size:1.5rem;font-weight:700}h3{font-size:1.25rem;font-weight:700}h4{font-size:1.125rem;font-weight:600}h5{font-size:1rem;font-weight:600}h6{font-size:.875rem;font-weight:600}.cit-heading-primary{color:var(--cit-primary);font-weight:800}.cit-heading-accent{color:var(--cit-accent-dark);font-weight:800}.cit-text-xs{font-size:.75rem;line-height:1.5}.cit-text-sm{font-size:.875rem;line-height:1.5}.cit-text-base{font-size:1rem;line-height:1.5}.cit-text-lg{font-size:1.125rem;line-height:1.5}.cit-text-xl{font-size:1.25rem;line-height:1.4}.cit-text-2xl{font-size:1.5rem;line-height:1.3}p{font-family:var(--cit-font-secondary);margin-top:0;margin-bottom:1rem;font-size:.875rem;line-height:1.6}@layer base{a{color:var(--cit-primary);transition:color var(--cit-transition-base);text-decoration:none}a:hover{color:var(--cit-primary-dark);text-decoration:underline}}.sidebar{background:var(--cit-bg-white);border-right:1px solid var(--cit-border)}.sidebar-item{color:var(--cit-text-primary);transition:all var(--cit-transition-base);font-family:var(--cit-font-primary);font-size:.875rem;font-weight:600}.sidebar-item:hover{background-color:var(--cit-bg-light);color:var(--cit-primary)}.sidebar-item-active{background-color:var(--cit-primary-50);color:var(--cit-primary);font-weight:700}.sidebar-group-label{color:var(--cit-text-light);text-transform:uppercase;letter-spacing:.05em;font-size:.625rem;font-weight:700}.cit-card{background:var(--cit-bg-white);border:1px solid var(--cit-border);border-radius:var(--cit-radius-lg);box-shadow:var(--cit-shadow-card);transition:all var(--cit-transition-base);overflow:hidden}.cit-card:hover{box-shadow:var(--cit-shadow-md)}.cit-card-header{background:linear-gradient(135deg,var(--cit-primary)0%,var(--cit-primary-dark)100%);color:var(--cit-text-white);border-bottom:3px solid var(--cit-accent);font-size:1rem;font-weight:700;font-family:var(--cit-font-primary);padding:.875rem 1.25rem}.cit-card-body{padding:1.5rem}.cit-stat-card{background:var(--cit-bg-white);border-radius:var(--cit-radius-lg);box-shadow:var(--cit-shadow-card);transition:all var(--cit-transition-base);border-left:4px solid;padding:1.5rem}.cit-stat-card:hover{box-shadow:var(--cit-shadow-hover);transform:translateY(-4px)}.cit-stat-card-primary{border-left-color:var(--cit-primary)}.cit-stat-card-accent{border-left-color:var(--cit-accent)}.cit-stat-card-success{border-left-color:var(--cit-success)}.cit-stat-card-danger{border-left-color:var(--cit-danger)}.cit-stat-card-warning{border-left-color:var(--cit-warning)}.cit-stat-card-info{border-left-color:var(--cit-info)}.cit-card-dashed{border:2px dashed var(--cit-primary);box-shadow:var(--cit-shadow-card);border-radius:var(--cit-radius-xl);background:var(--cit-bg-white);transition:all var(--cit-transition-slow)}.cit-card-dashed:hover{border-color:var(--cit-accent);box-shadow:var(--cit-shadow-md);transform:translateY(-2px)}.cit-btn{font-family:var(--cit-font-primary);border-radius:var(--cit-radius-md);transition:all var(--cit-transition-base);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;line-height:1.5;text-decoration:none;display:inline-flex}.cit-btn:hover{box-shadow:var(--cit-shadow-sm);transform:translateY(-1px)}.cit-btn-primary{background:linear-gradient(135deg,var(--cit-primary)0%,var(--cit-primary-dark)100%);color:var(--cit-text-white);border-color:var(--cit-primary)}.cit-btn-primary:hover{background:linear-gradient(135deg,var(--cit-primary-dark)0%,#5a7059 100%);box-shadow:0 4px 12px #86a1854d}.cit-btn-accent{background:linear-gradient(135deg,var(--cit-accent)0%,var(--cit-accent-dark)100%);color:var(--cit-text-dark);border-color:var(--cit-accent);font-weight:700}.cit-btn-accent:hover{background:linear-gradient(135deg,var(--cit-accent-dark)0%,#9d9a1f 100%);box-shadow:0 4px 12px #cecb2a4d}.cit-btn-success{background:linear-gradient(135deg,var(--cit-success)0%,var(--cit-success-dark)100%);color:var(--cit-text-white)}.cit-btn-danger{background:linear-gradient(135deg,var(--cit-danger)0%,var(--cit-danger-dark)100%);color:var(--cit-text-white)}.cit-btn-outline{border:2px solid var(--cit-primary);color:var(--cit-primary);background:0 0}.cit-btn-outline:hover{background:var(--cit-primary);color:var(--cit-text-white)}.cit-badge{border-radius:var(--cit-radius-full);font-size:.75rem;font-weight:600;line-height:1;font-family:var(--cit-font-primary);text-transform:uppercase;letter-spacing:.5px;align-items:center;padding:.25rem .75rem;display:inline-flex}.cit-badge-primary{background-color:var(--cit-primary);color:var(--cit-text-white)}.cit-badge-accent{background-color:var(--cit-accent);color:var(--cit-text-dark)}.cit-badge-success{background-color:var(--cit-success);color:var(--cit-text-white)}.cit-badge-danger{background-color:var(--cit-danger);color:var(--cit-text-white)}.cit-badge-warning{background-color:var(--cit-warning);color:var(--cit-text-dark)}.cit-badge-info{background-color:var(--cit-info);color:var(--cit-text-white)}.cit-badge-outline{border:1px solid var(--cit-primary);color:var(--cit-primary);background:0 0}.cit-table{width:100%;font-family:var(--cit-font-secondary);border-collapse:collapse;font-size:.875rem}.cit-table thead{background:linear-gradient(135deg,var(--cit-primary)0%,var(--cit-primary-dark)100%);color:var(--cit-text-white)}.cit-table thead th{text-transform:uppercase;letter-spacing:.05em;text-align:left;border-bottom:3px solid var(--cit-accent);padding:.75rem .875rem;font-size:.75rem;font-weight:700}.cit-table tbody tr{border-bottom:1px solid var(--cit-border-light);transition:background-color var(--cit-transition-fast)}.cit-table tbody tr:hover{background-color:var(--cit-primary-50)}.cit-table tbody td{vertical-align:middle;color:var(--cit-text-primary);padding:.75rem .875rem;font-size:.875rem}.cit-table tbody tr:last-child{border-bottom:none}.cit-table-striped tbody tr:nth-child(2n){background-color:var(--cit-bg-light)}.cit-form-label{color:var(--cit-text-dark);font-size:.9rem;font-weight:600;font-family:var(--cit-font-primary);margin-bottom:.5rem;display:block}.cit-form-input,.cit-form-select,.cit-form-textarea{width:100%;font-size:.95rem;font-family:var(--cit-font-secondary);color:var(--cit-text-dark);background-color:var(--cit-bg-white);border:1px solid var(--cit-border);border-radius:var(--cit-radius-sm);transition:all var(--cit-transition-base);padding:.625rem .875rem}.cit-form-input:focus,.cit-form-select:focus,.cit-form-textarea:focus{border-color:var(--cit-primary);box-shadow:0 0 0 3px var(--cit-primary-50);outline:none}.cit-form-input::placeholder{color:var(--cit-text-light)}.cit-tabs{border-bottom:2px solid var(--cit-border)}.cit-tab{background-color:var(--cit-bg-light);color:var(--cit-text-primary);font-weight:600;font-family:var(--cit-font-primary);transition:all var(--cit-transition-base);cursor:pointer;border:none;border-bottom:3px solid #0000;margin-right:.25rem;padding:.75rem 1.5rem}.cit-tab:hover{background-color:var(--cit-bg-primary);color:var(--cit-text-dark)}.cit-tab-active{background-color:var(--cit-bg-white);color:var(--cit-primary);border-bottom-color:var(--cit-accent);font-weight:700}.cit-bg-primary{background-color:var(--cit-primary)}.cit-bg-accent{background-color:var(--cit-accent)}.cit-bg-success{background-color:var(--cit-success)}.cit-bg-danger{background-color:var(--cit-danger)}.cit-bg-warning{background-color:var(--cit-warning)}.cit-bg-info{background-color:var(--cit-info)}.cit-bg-light{background-color:var(--cit-bg-light)}.cit-bg-white{background-color:var(--cit-bg-white)}.cit-text-primary{color:var(--cit-primary)}.cit-text-accent{color:var(--cit-accent)}.cit-text-success{color:var(--cit-success)}.cit-text-danger{color:var(--cit-danger)}.cit-text-warning{color:var(--cit-warning)}.cit-text-info{color:var(--cit-info)}.cit-text-dark{color:var(--cit-text-dark)}.cit-text-muted{color:var(--cit-text-primary)}.cit-text-white{color:var(--cit-text-white)}.cit-border-primary{border-color:var(--cit-primary)}.cit-border-accent{border-color:var(--cit-accent)}.cit-gradient-primary{background:linear-gradient(135deg,var(--cit-primary)0%,var(--cit-primary-dark)100%)}.cit-gradient-accent{background:linear-gradient(135deg,var(--cit-accent)0%,var(--cit-accent-dark)100%)}.cit-gradient-success{background:linear-gradient(135deg,var(--cit-success)0%,var(--cit-success-dark)100%)}.cit-round-circle{background-color:var(--cit-bg-white);text-align:center;width:50px;height:50px;box-shadow:var(--cit-shadow-sm);border-radius:50px;justify-content:center;align-items:center;margin:auto;line-height:50px;display:inline-flex}.cit-hover-lift{transition:transform var(--cit-transition-base),box-shadow var(--cit-transition-base)}.cit-hover-lift:hover{box-shadow:var(--cit-shadow-hover);transform:translateY(-3px)}.cit-shadow-sm{box-shadow:var(--cit-shadow-sm)}.cit-shadow-md{box-shadow:var(--cit-shadow-md)}.cit-shadow-lg{box-shadow:var(--cit-shadow-lg)}.cit-shadow-card{box-shadow:var(--cit-shadow-card)}.cit-p-xs{padding:var(--cit-spacing-xs)}.cit-p-sm{padding:var(--cit-spacing-sm)}.cit-p-md{padding:var(--cit-spacing-md)}.cit-p-lg{padding:var(--cit-spacing-lg)}.cit-p-xl{padding:var(--cit-spacing-xl)}.cit-m-xs{margin:var(--cit-spacing-xs)}.cit-m-sm{margin:var(--cit-spacing-sm)}.cit-m-md{margin:var(--cit-spacing-md)}.cit-m-lg{margin:var(--cit-spacing-lg)}.cit-m-xl{margin:var(--cit-spacing-xl)}@keyframes cit-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.cit-fade-in{animation:.3s ease-out cit-fade-in}@keyframes cit-slide-in{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.cit-slide-in{animation:.4s ease-out cit-slide-in}.cit-spinner{border:3px solid var(--cit-bg-light);border-top:3px solid var(--cit-primary);border-radius:50%;width:40px;height:40px;animation:1s linear infinite cit-spin}@keyframes cit-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width:768px){h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}.cit-card-header{padding:.75rem 1rem;font-size:.95rem}.cit-table{font-size:.85rem}.cit-table thead th,.cit-table tbody td{padding:.625rem .75rem}.cit-btn{padding:.5rem 1rem;font-size:.8125rem}.cit-stat-card{padding:1rem}}@media (max-width:480px){.cit-card-body{padding:1rem}.cit-round-circle{width:40px;height:40px;line-height:40px}}
