.admin-layout{background:linear-gradient(#f8fbff,#eef6ff);min-height:100vh;display:flex}.admin-content{flex:1;min-width:0;margin-left:270px;padding:34px}.topbar{background:#fff;border-radius:24px;justify-content:space-between;align-items:center;margin-bottom:30px;padding:25px 30px;display:flex;box-shadow:0 10px 30px #3b82f614}.topbar-title{color:#0f172a;margin:0;font-size:30px;font-weight:700}.topbar-subtitle{color:#64748b;margin-top:6px;font-size:15px}.topbar-user{align-items:center;gap:15px;display:flex}.topbar-user h3{color:#0f172a;margin:0;font-size:16px}.topbar-user span{color:#64748b;font-size:13px}.user-avatar{color:#fff;background:linear-gradient(135deg,#60a5fa,#2563eb);border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;font-size:18px;font-weight:700;display:flex}.page-title{color:#0f172a;margin:0;font-size:28px;font-weight:700}.page-subtitle{color:#64748b;margin-top:8px;font-size:15px}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.card{background:#fff;border-radius:24px;padding:28px;box-shadow:0 10px 30px #3b82f614}.breadcrumb{color:#64748b;align-items:center;gap:10px;margin:14px 0 24px;font-size:14px;display:flex}.breadcrumb strong{color:#2563eb}.form-group{flex-direction:column;gap:10px;display:flex}.form-label{color:#0f172a;font-size:15px;font-weight:600}.helper-text{color:#64748b;font-size:13px;line-height:1.5}.reject-textarea{resize:vertical;background:#fff;border:1px solid #d1d5db;border-radius:12px;width:100%;min-height:180px;padding:16px;font-size:15px;line-height:1.6;transition:all .2s}.reject-textarea::placeholder{color:#94a3b8}.reject-textarea:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb1f}.form-action{justify-content:flex-end;align-items:center;gap:14px;margin-top:28px;display:flex}.secondary-btn,.danger-btn{cursor:pointer;border-radius:12px;justify-content:center;align-items:center;height:46px;padding:0 24px;font-size:15px;font-weight:600;transition:all .2s;display:flex}.secondary-btn{color:#374151;background:#fff;border:1px solid #d1d5db}.secondary-btn:hover{background:#f8fafc}.danger-btn{color:#fff;background:#dc2626;border:none}.danger-btn:hover{background:#b91c1c}.secondary-btn:disabled,.danger-btn:disabled{opacity:.6;cursor:not-allowed}.logout-overlay{z-index:99999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#11182773;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.logout-modal{background:#fff;border-radius:18px;width:420px;padding:32px;animation:.22s popup;box-shadow:0 20px 50px #0000002e}.logout-icon{background:#fef3c7;border-radius:50%;justify-content:center;align-items:center;width:82px;height:82px;margin:auto auto 24px;display:flex}.logout-modal h2{text-align:center;color:#111827;margin:0;font-size:28px;font-weight:700}.logout-modal p{text-align:center;color:#6b7280;margin-top:14px;margin-bottom:30px;font-size:15px;line-height:1.7}.logout-actions{gap:14px;display:flex}.logout-actions button{cursor:pointer;border-radius:10px;flex:1;height:46px;font-size:15px;font-weight:600;transition:all .2s}.btn-cancel{background:#fff;border:1px solid #d1d5db}.btn-cancel:hover{background:#f3f4f6}.btn-logout{color:#fff;background:#2563eb;border:none}.btn-logout:hover{background:#1d4ed8}@keyframes popup{0%{opacity:0;transform:translateY(-18px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.sidebar{flex-direction:column;height:100vh;display:flex}.sidebar-menu{flex:1}.sidebar-footer{border-top:1px solid #ffffff59;margin-top:auto;padding:16px}.logout-menu{cursor:pointer;color:#374151;background:0 0;border:none;border-radius:12px;align-items:center;gap:12px;width:100%;padding:12px 16px;font-family:inherit;font-size:15px;font-weight:500;transition:all .2s;display:flex}.logout-menu svg{color:#dc2626}.logout-menu:hover{color:#dc2626;background:#fee2e2}.logout-menu:hover svg{color:#dc2626}.sidebar-header{border-bottom:1px solid #ffffff59;flex-direction:column;align-items:center;margin-bottom:18px;padding:8px 22px;display:flex}.sidebar-logo{object-fit:contain;width:80px;height:80px;margin-bottom:8px}.sidebar-header h2{color:#0f172a;margin:0;font-size:30px;font-weight:700}.profile-section{background:#fff;border:1px solid #eef2f7;border-radius:22px;margin-bottom:24px;padding:28px;box-shadow:0 8px 25px #1e40af0f}.profile-section-header{align-items:center;gap:14px;margin-bottom:24px;display:flex}.profile-section-header h2{color:#1e3a5f;margin:0;font-size:20px;font-weight:700}.profile-section-header p{color:#64748b;margin:5px 0 0;font-size:13px}.profile-section-icon{color:#2563eb;background:#eff6ff;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.profile-info-list{background:#fff;border:1px solid #e5e7eb;border-radius:15px;overflow:hidden}.profile-info-item{border-bottom:1px solid #edf0f4;align-items:center;gap:18px;min-height:82px;padding:18px 20px;display:flex}.profile-info-item:last-child{border-bottom:none}.profile-info-icon{color:#4f46e5;background:#eef2ff;border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;display:flex}.profile-info-icon.periode{color:#16a34a;background:#ecfdf5}.profile-info-icon.nama{color:#2563eb;background:#eff6ff}.profile-info-content{flex-direction:column;gap:5px;display:flex}.profile-info-content span{color:#64748b;font-size:13px;font-weight:600}.profile-info-content strong{color:#1e293b;font-size:16px;font-weight:600}.signature-section{padding-bottom:28px}.signature-icon{color:#2563eb;background:#eff6ff}.signature-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.signature-column{min-width:0}.signature-label{color:#334155;margin-bottom:11px;font-size:14px;font-weight:700;display:block}.current-signature{background:#fafcff;border:1px solid #e2e8f0;border-radius:16px;justify-content:center;align-items:center;height:220px;display:flex;overflow:hidden}.current-signature img{object-fit:contain;max-width:90%;max-height:180px}.empty-signature{color:#94a3b8;flex-direction:column;align-items:center;gap:10px;display:flex}.empty-signature span{font-size:14px}.signature-status{color:#16a34a;margin:9px 0 0;font-size:12px;font-weight:600}.upload-box{cursor:pointer;color:#334155;background:#f8fbff;border:2px dashed #bfdbfe;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;height:220px;padding:24px;transition:border-color .2s,background .2s,transform .2s;display:flex}.upload-box:hover{background:#eff6ff;border-color:#3b82f6;transform:translateY(-1px)}.upload-box:disabled{opacity:.6;cursor:not-allowed;transform:none}.upload-icon,.upload-success-icon{border-radius:16px;justify-content:center;align-items:center;width:58px;height:58px;margin-bottom:5px;display:flex}.upload-icon{color:#2563eb;background:#dbeafe}.upload-success-icon{color:#16a34a;background:#dcfce7}.upload-box strong{color:#1e40af;text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:90%;font-size:14px;overflow:hidden}.upload-box span{color:#64748b;font-size:13px}.upload-box small{color:#94a3b8;text-align:center;margin-top:2px;font-size:11px}.upload-note{color:#2563eb;background:#eff6ff;border-radius:11px;align-items:flex-start;gap:9px;margin-top:12px;padding:11px 13px;display:flex}.upload-note span{font-size:15px;line-height:1.4}.upload-note p{color:#475569;margin:0;font-size:12px;line-height:1.5}.signature-action{margin-top:25px}.save-signature-btn{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:11px;justify-content:center;align-items:center;gap:9px;min-width:220px;padding:12px 20px;font-size:14px;font-weight:700;transition:background .2s,transform .2s,box-shadow .2s;display:inline-flex}.save-signature-btn:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 5px 14px #2563eb38}.save-signature-btn:disabled{cursor:not-allowed;box-shadow:none;background:#93c5fd;transform:none}@media (max-width:800px){.signature-grid{grid-template-columns:1fr}.profile-section{padding:20px}}@media (max-width:500px){.profile-info-item{gap:12px;padding:15px}.profile-info-icon{width:40px;height:40px}.profile-info-content strong{font-size:14px}.profile-section-header h2{font-size:18px}.save-signature-btn{width:100%}}
