*{margin:0;padding:0;box-sizing:border-box}
:root{--primary:#6c4df6;--primary-dark:#5638db;--bg:#f6f7fb;--surface:#fff;--sidebar:#11131a;--text:#171923;--muted:#777b89;--border:#e7e8ee;--success:#18a56d;--warning:#f3a620;--danger:#e34d59;--info:#4388ff}
body{font-family:"Inter",sans-serif;background:var(--bg);color:var(--text)}
button,input,select,textarea{font-family:inherit}button{cursor:pointer}.app{display:flex;min-height:100vh}
.sidebar{width:260px;background:var(--sidebar);color:#fff;padding:24px 18px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;z-index:100}
.brand{display:flex;align-items:center;gap:12px;padding:0 8px 25px}.brand-logo{width:43px;height:43px;background:var(--primary);border-radius:12px;display:grid;place-items:center;font-weight:800;font-size:22px}.brand h2{font-size:18px}.brand span{font-size:11px;color:#9094a3}
.nav{flex:1;overflow-y:auto}.nav-title{font-size:10px;letter-spacing:1.3px;color:#6e7280;padding:18px 12px 8px}.nav-item{width:100%;background:transparent;border:0;color:#a6a9b4;padding:11px 12px;border-radius:9px;text-align:left;display:flex;align-items:center;gap:11px;font-size:13px;margin-bottom:3px}.nav-item:hover,.nav-item.active{background:#222531;color:#fff}.nav-item.active{border-left:3px solid var(--primary)}
.sidebar-user{border-top:1px solid #292c36;padding-top:17px;display:flex;align-items:center;gap:10px}.avatar{width:36px;height:36px;border-radius:50%;background:#312968;display:grid;place-items:center;font-size:11px;font-weight:700}.sidebar-user strong{display:block;font-size:12px}.sidebar-user small{color:#808493;font-size:10px}
.main{margin-left:260px;width:calc(100% - 260px);padding:0 30px 50px}.topbar{height:90px;display:flex;justify-content:space-between;align-items:center}.topbar h1{font-size:22px}.topbar p{font-size:12px;color:var(--muted);margin-top:3px}.top-actions{display:flex;gap:10px;align-items:center}.top-actions input{width:220px;border:1px solid var(--border);padding:10px 13px;border-radius:9px;outline:none;background:#fff}.notification-btn{border:1px solid var(--border);width:40px;height:40px;border-radius:9px;background:#fff;position:relative}.notification-btn span{position:absolute;top:-5px;right:-5px;width:17px;height:17px;font-size:9px;background:var(--danger);color:#fff;border-radius:50%;display:grid;place-items:center}
.btn{border:none;border-radius:9px;padding:11px 16px;font-size:12px;font-weight:600}.btn.primary{background:var(--primary);color:#fff}.btn.primary:hover{background:var(--primary-dark)}.btn.full{width:100%}.link-btn{border:0;background:transparent;color:var(--primary);font-weight:600}
.page{display:none}.page.active{display:block}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:20px}.stat-card{background:#fff;padding:19px;border-radius:14px;display:flex;align-items:center;gap:14px;border:1px solid var(--border)}.stat-icon{width:46px;height:46px;border-radius:11px;display:grid;place-items:center}.stat-icon.purple{background:#eee9ff}.stat-icon.blue{background:#e7f0ff}.stat-icon.green{background:#e5f8ef}.stat-icon.red{background:#fdebed}.stat-card span{font-size:11px;color:var(--muted)}.stat-card h2{font-size:23px;margin-top:4px}
.panel{background:#fff;border:1px solid var(--border);border-radius:14px;padding:20px}.panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.panel-header h3{font-size:15px}.panel-header p{color:var(--muted);font-size:11px;margin-top:4px}.dashboard-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:20px;margin-bottom:20px}
.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th{text-align:left;color:#858997;font-size:10px;text-transform:uppercase;font-weight:600;padding:11px;border-bottom:1px solid var(--border)}td{font-size:12px;padding:13px 11px;border-bottom:1px solid #f0f1f4}tbody tr:hover{background:#fafaff}
.badge{display:inline-block;border-radius:20px;padding:5px 9px;font-size:10px;font-weight:600}.badge.completed,.badge.paid,.badge.active,.badge.approved{background:#e4f8ef;color:#15845a}.badge.pending,.badge.sent,.badge.partially-paid{background:#fff5da;color:#a26f00}.badge.in-progress{background:#e8f0ff;color:#3568cf}.badge.urgent,.badge.overdue,.badge.unpaid,.badge.rejected{background:#fdebed;color:#c53a48}.badge.revision,.badge.draft{background:#eeeaff;color:#5f46bd}
.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header h2{font-size:20px}.section-header p{font-size:12px;color:var(--muted);margin-top:4px}.filters{display:flex;gap:10px;margin-bottom:15px}.filters select{padding:9px 12px;border:1px solid var(--border);border-radius:8px;background:#fff}
.content-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.content-card{border-radius:14px;background:#fff;border:1px solid var(--border);padding:20px}.content-card h3{margin-bottom:4px}.content-card small{color:var(--muted)}.content-row{margin-top:20px}.content-row-head{display:flex;justify-content:space-between;font-size:11px;margin-bottom:7px}.progress{width:100%;background:#eff0f4;height:8px;border-radius:20px;overflow:hidden}.progress-bar{height:100%;background:var(--primary);border-radius:20px}
.renewal-item{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #f0f1f4}.renewal-item strong{font-size:12px}.renewal-item small{display:block;color:var(--muted);margin-top:3px}
.team-grid,.schedule-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.team-card,.schedule-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:20px}.team-avatar{width:44px;height:44px;border-radius:50%;background:#eeeaff;color:var(--primary);display:grid;place-items:center;font-weight:700;margin-bottom:12px}.team-card h3,.schedule-card h3{font-size:14px}.team-card p,.schedule-card small{font-size:11px;color:var(--muted);margin-top:3px}.team-stats{display:flex;justify-content:space-between;margin-top:20px}.team-stats div{text-align:center}.team-stats strong{display:block;font-size:18px}.team-stats span{font-size:9px;color:var(--muted)}
.schedule-task{margin-top:15px;padding-left:10px;border-left:3px solid var(--primary)}.schedule-task strong{font-size:11px;display:block}.schedule-task small{color:var(--muted);font-size:10px}
.finance-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:18px}.finance-card{background:#fff;border:1px solid var(--border);padding:18px;border-radius:12px}.finance-card span{color:var(--muted);font-size:11px}.finance-card h3{font-size:19px;margin-top:8px}
.modal-overlay{display:none;position:fixed;inset:0;background:rgba(18,20,28,.55);backdrop-filter:blur(3px);z-index:900}.modal-overlay.active{display:block}.modal{display:none;position:fixed;z-index:1000;width:510px;max-width:calc(100% - 30px);background:#fff;border-radius:16px;left:50%;top:50%;transform:translate(-50%,-50%);padding:24px;max-height:90vh;overflow-y:auto}.modal.active{display:block}.modal-header{display:flex;justify-content:space-between;margin-bottom:20px}.modal-header h3{font-size:18px}.modal-header p{font-size:11px;color:var(--muted);margin-top:4px}.modal-header button{border:0;background:transparent;font-size:27px;color:#777}
.form-group{margin-bottom:15px}.form-group label{display:block;font-size:11px;font-weight:600;margin-bottom:7px}.form-group input,.form-group select,.form-group textarea{width:100%;border:1px solid var(--border);border-radius:8px;padding:11px;outline:none;font-size:12px}.form-group textarea{height:90px;resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.dashboard-content-row,.performance-row{margin-bottom:15px}.dashboard-content-row strong{display:block;font-size:11px;margin-bottom:6px}.performance-head{display:flex;justify-content:space-between;font-size:11px;margin-bottom:7px}.delete-btn{border:0;background:#fdebed;color:var(--danger);padding:6px 9px;border-radius:6px;font-size:10px}
