.admin-shell{min-height:100vh;display:flex}.admin-sidebar{background:var(--color-primary);color:#fff;z-index:40;flex-direction:column;width:230px;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.admin-sidebar-logo{border-bottom:1px solid #ffffff14;align-items:center;gap:12px;padding:20px 18px;display:flex}.admin-sidebar-logo-icon{letter-spacing:-.5px;background:#ffffff1f;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:14px;font-weight:800;display:flex}.admin-sidebar-logo-title{font-size:14px;font-weight:700;line-height:1.2}.admin-sidebar-logo-subtitle{opacity:.5;font-size:11px;line-height:1.2}.admin-sidebar-nav{flex:1;padding:12px 0}.admin-sidebar-section{margin-bottom:6px;padding:0 10px}.admin-sidebar-section-label{text-transform:uppercase;letter-spacing:1px;color:#ffffff59;padding:8px 12px 4px;font-size:10px;font-weight:700}.admin-nav-item{color:#ffffffa6;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;width:100%;padding:9px 12px;font-size:13px;font-weight:500;text-decoration:none;transition:all .12s;display:flex}.admin-nav-item:hover{color:#fff;background:#ffffff14}.admin-nav-item--active{color:#fff;background:#ffffff24;font-weight:600}.admin-nav-item svg{opacity:.5;flex-shrink:0}.admin-nav-item--active svg,.admin-nav-item:hover svg{opacity:.9}.admin-sidebar-divider{background:#ffffff14;height:1px;margin:6px 16px}.admin-sidebar-footer{border-top:1px solid #ffffff14;padding:12px 10px}.admin-sidebar-footer .admin-nav-item{color:#ffffff73;padding:7px 12px;font-size:12px}.admin-sidebar-footer .admin-nav-item:hover{color:#fffc}.admin-sidebar-footer .admin-nav-item--danger:hover{color:#e74c3c;background:#e74c3c1f}.admin-content{background:var(--color-surface);flex:1;min-height:100vh;margin-left:230px}.admin-page-header{border-bottom:1px solid var(--color-primary-pale);z-index:10;background:#fff;justify-content:space-between;align-items:center;gap:16px;padding:18px 28px;display:flex;position:sticky;top:0}.admin-page-header h1{color:var(--color-primary);margin:0;font-size:18px;font-weight:700;line-height:1}.admin-page-header-sub{color:var(--color-primary-light);margin-top:2px;font-size:12px;font-weight:400}.admin-inline-stats{align-items:center;gap:20px;display:flex}.admin-inline-stat{background:var(--color-surface);border:1px solid var(--color-primary-pale);border-radius:8px;align-items:baseline;gap:6px;padding:4px 12px;display:flex}.admin-inline-stat-number{color:var(--color-primary);font-size:18px;font-weight:800;line-height:1}.admin-inline-stat-label{color:var(--color-primary-light);text-transform:uppercase;letter-spacing:.3px;font-size:10px;font-weight:600}.admin-page-body{padding:24px 28px;animation:.15s adminFadeIn}@keyframes adminFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.admin-page-body .layout-two-pane{height:calc(100vh - 62px);margin:-24px -28px}.admin-page-body .layout-sidebar{width:300px;padding:0}.admin-page-body .layout-main{padding:20px}.candidate-list-header{border-bottom:1px solid var(--color-primary-pale);z-index:5;background:#fff;padding:12px;position:sticky;top:0}.candidate-search-wrap{margin-bottom:8px;position:relative}.candidate-search-input{border:1px solid var(--color-primary-pale);background:var(--color-surface);width:100%;color:var(--color-black);border-radius:6px;outline:none;padding:7px 28px 7px 10px;font-size:12px;transition:border-color .15s}.candidate-search-input:focus{border-color:var(--color-primary-mid);box-shadow:0 0 0 2px #2e7dbf1a}.candidate-search-input::placeholder{color:#aab5c2}.candidate-search-clear{color:#aab5c2;cursor:pointer;min-height:unset;background:0 0;border:none;padding:2px;font-size:12px;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.candidate-filters{gap:4px;margin-bottom:8px;display:flex}.candidate-filter{border:1px solid var(--color-primary-pale);color:#89a;cursor:pointer;text-align:center;min-height:unset;background:#fff;border-radius:4px;flex:1;padding:4px 6px;font-size:10px;font-weight:600;transition:all .12s}.candidate-filter:hover{border-color:var(--color-primary-mid);color:var(--color-primary)}.candidate-filter--active{background:var(--color-primary-mid);color:#fff;border-color:var(--color-primary-mid)}.candidate-bulk-bar{justify-content:space-between;align-items:center;display:flex}.candidate-select-all{color:#89a;cursor:pointer;align-items:center;gap:4px;font-size:10px;display:flex}.candidate-select-all input{cursor:pointer}.candidate-export-btn{background:var(--color-primary-mid);color:#fff;cursor:pointer;min-height:unset;border:none;border-radius:4px;padding:3px 8px;font-size:10px;font-weight:600;transition:opacity .15s}.candidate-export-btn:hover{opacity:.85}.candidate-card{border-bottom:1px solid var(--color-primary-pale);cursor:pointer;padding:10px 14px;transition:background .1s}.candidate-card:hover{background:var(--color-primary-pale)}.candidate-card--selected{background:var(--color-primary-pale);border-left:3px solid var(--color-primary-mid)}.candidate-card-top{align-items:center;gap:8px;display:flex}.candidate-card-name{flex:1;min-width:0;overflow:hidden}.candidate-card-fullname{color:var(--color-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;line-height:1.3;display:block;overflow:hidden}.candidate-card-dui{color:var(--color-primary-light);font-size:11px;font-weight:500;display:block}.candidate-card-meta{color:#89a;white-space:nowrap;text-overflow:ellipsis;gap:8px;margin-top:4px;padding-left:26px;font-size:11px;display:flex;overflow:hidden}.candidate-card-sup{color:var(--color-primary-mid);font-weight:500}.candidate-card-bottom{justify-content:space-between;align-items:center;margin-top:4px;padding-left:26px;display:flex}.candidate-card-date{color:#aab5c2;font-size:10px}.candidate-card-delete{cursor:pointer;opacity:0;min-height:unset;background:0 0;border:none;border-radius:4px;padding:2px 4px;font-size:12px;transition:opacity .15s}.candidate-card:hover .candidate-card-delete{opacity:.5}.candidate-card-delete:hover{background:#e74c3c1a;opacity:1!important}.btn-icon{cursor:pointer;min-height:unset;background:0 0;border:none;border-radius:4px;padding:4px 6px;font-size:16px;line-height:1;transition:background .15s}.btn-icon:hover{background:var(--color-surface)}.btn-save{color:var(--color-accent);font-size:18px;font-weight:700}.btn-cancel{color:var(--color-danger);font-size:18px}.actions-cell{white-space:nowrap;text-align:right}.loading-msg{text-align:center;color:#888;padding:30px;font-size:15px}.empty-msg{text-align:center;color:#bbb;padding:24px 0;font-size:14px}
