:root{--bg-primary: #f8fafc;--bg-secondary: #ffffff;--text-primary: #1e293b;--text-secondary: #64748b;--text-heading: #0f172a;--border-light: #e2e8f0;--border-muted: #cbd5e1;--input-bg: #e8f0fe;--button-primary-start: #2d4059;--button-primary-end: #1e2d3f;--button-radius: 8px;--card-radius: 8px;--shadow-sm: rgba(45, 64, 89, .25) 0 2px 8px;--shadow-md: rgba(45, 64, 89, .15) 0 4px 12px;--shadow-lg: rgba(45, 64, 89, .1) 0 8px 24px}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%}body{font-family:Inter,-apple-system,"system-ui",Segoe UI,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);font-size:15.2px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;height:100%}h1,h2,h3,h4,h5,h6{color:var(--text-heading);font-weight:600;line-height:1.3}h1{font-size:32px}h2{font-size:24px}h3{font-size:20px}h4{font-size:16px}h5{font-size:14px}h6{font-size:13px}p{color:var(--text-primary);margin-bottom:1rem}a{color:var(--button-primary-start);text-decoration:none;transition:color .2s ease}a:hover{color:var(--button-primary-end)}button,.button{background:linear-gradient(135deg,var(--button-primary-start) 0%,var(--button-primary-end) 100%);color:#fff;border:none;border-radius:var(--button-radius);padding:12px 16px;font-weight:600;font-size:14px;cursor:pointer;box-shadow:var(--shadow-sm);transition:all .2s ease;font-family:inherit}button:hover,.button:hover{transform:translateY(-1px);box-shadow:#2d405959 0 4px 12px}button:active,.button:active{transform:translateY(0);box-shadow:var(--shadow-sm)}button:disabled,.button:disabled{opacity:.6;cursor:not-allowed;transform:none}button.secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-light);box-shadow:none}button.secondary:hover{background:#f1f5f9;box-shadow:none}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=search],textarea,select{background-color:var(--input-bg);border:1px solid var(--border-light);border-radius:var(--button-radius);padding:10px 12px;font-size:15.2px;font-family:inherit;color:var(--text-primary);transition:all .2s ease}input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,input[type=number]:focus,input[type=date]:focus,input[type=search]:focus,textarea:focus,select:focus{outline:none;border-color:var(--button-primary-start);box-shadow:0 0 0 3px #2d40591a}textarea{resize:vertical;min-height:100px}select{cursor:pointer}.form-group{margin-bottom:1.5rem;display:flex;flex-direction:column}label{color:var(--text-heading);font-weight:500;margin-bottom:.5rem;font-size:14px}.form-group.required label:after{content:" *";color:#ef4444}.form-help{color:var(--text-secondary);font-size:12px;margin-top:.25rem}.form-error{color:#ef4444;font-size:12px;margin-top:.25rem}.card{background-color:var(--bg-secondary);border-radius:var(--card-radius);box-shadow:var(--shadow-sm);padding:1.5rem;transition:all .2s ease}.card:hover{box-shadow:var(--shadow-md)}.card-header{border-bottom:1px solid var(--border-light);margin-bottom:1.5rem;padding-bottom:1rem}.card-header h2{margin:0}.card-body{margin-bottom:1.5rem}.card-footer{border-top:1px solid var(--border-light);padding-top:1rem;display:flex;gap:1rem;justify-content:flex-end}table{width:100%;border-collapse:collapse;background:var(--bg-secondary);border-radius:var(--card-radius);overflow:hidden;box-shadow:var(--shadow-sm)}thead{background:#f1f5f9;border-bottom:2px solid var(--border-light)}th{padding:12px 16px;text-align:left;font-weight:600;color:var(--text-heading);font-size:13px}td{padding:12px 16px;border-bottom:1px solid var(--border-light);color:var(--text-primary)}tbody tr:hover{background-color:#f8fafc}tbody tr:last-child td{border-bottom:none}nav{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-light);padding:0 2rem;display:flex;align-items:center;height:60px}nav a{color:var(--text-primary);margin:0 1.5rem;font-size:14px;font-weight:500;transition:color .2s ease}nav a:hover{color:var(--button-primary-start)}nav a.active{color:var(--button-primary-start);border-bottom:2px solid var(--button-primary-start);padding-bottom:18px}.sidebar{width:250px;background-color:var(--bg-secondary);border-right:1px solid var(--border-light);padding:2rem 0;height:100vh;overflow-y:auto;box-shadow:var(--shadow-sm)}.sidebar-logo{padding:0 1.5rem;margin-bottom:2rem;color:var(--button-primary-start);font-size:20px;font-weight:700;letter-spacing:-.5px}.sidebar-nav{list-style:none}.sidebar-nav li{margin:0}.sidebar-nav a{display:block;padding:12px 1.5rem;color:var(--text-primary);font-size:14px;transition:all .2s ease;border-left:3px solid transparent}.sidebar-nav a:hover{background-color:#f1f5f9;color:var(--button-primary-start)}.sidebar-nav a.active{background-color:#f1f5f9;color:var(--button-primary-start);border-left-color:var(--button-primary-start)}.layout{display:flex;height:100vh;width:100%}.layout-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.layout-content{flex:1;overflow-y:auto;padding:2rem}.grid{display:grid;gap:1.5rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}@media (max-width: 768px){.grid-2,.grid-3{grid-template-columns:1fr}}.section{background:var(--bg-secondary);border-radius:var(--card-radius);padding:1.5rem;margin-bottom:1.5rem;box-shadow:var(--shadow-sm)}.section-title{font-size:18px;font-weight:600;color:var(--text-heading);margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-light)}.section-subtitle{font-size:13px;color:var(--text-secondary);margin-top:.5rem;margin-bottom:1rem}.form-section{background:var(--bg-secondary);border-radius:var(--card-radius);padding:2rem;margin-bottom:2rem;box-shadow:var(--shadow-sm)}.form-section-title{font-size:18px;font-weight:600;color:var(--text-heading);margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-light)}.form-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.tabs{display:flex;border-bottom:2px solid var(--border-light);margin-bottom:2rem}.tab-button{background:none;border:none;padding:12px 16px;color:var(--text-secondary);font-weight:500;font-size:14px;cursor:pointer;border-bottom:3px solid transparent;transition:all .2s ease;margin-bottom:-2px;box-shadow:none}.tab-button:hover{color:var(--text-primary);box-shadow:none;transform:none}.tab-button.active{color:var(--button-primary-start);border-bottom-color:var(--button-primary-start)}.tab-content{display:none}.tab-content.active{display:block}.badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.badge-primary{background-color:#2d40591a;color:var(--button-primary-start)}.badge-success{background-color:#22c55e1a;color:#22c55e}.badge-warning{background-color:#fb923c1a;color:#fb923c}.badge-error{background-color:#ef44441a;color:#ef4444}.alert{padding:12px 16px;border-radius:var(--card-radius);margin-bottom:1rem;font-size:14px}.alert-info{background-color:#3b82f61a;color:#3b82f6;border-left:4px solid #3b82f6}.alert-success{background-color:#22c55e1a;color:#22c55e;border-left:4px solid #22c55e}.alert-warning{background-color:#fb923c1a;color:#fb923c;border-left:4px solid #fb923c}.alert-error{background-color:#ef44441a;color:#ef4444;border-left:4px solid #ef4444}.text-muted{color:var(--text-secondary)}.text-heading{color:var(--text-heading)}.text-center{text-align:center}.text-right{text-align:right}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.5rem}.gap-4{gap:2rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.flex-1{flex:1}.spinner{display:inline-block;width:16px;height:16px;border:2px solid var(--border-light);border-top-color:var(--button-primary-start);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.sidebar{width:200px}.layout-content{padding:1rem}.form-section{padding:1.5rem}.form-columns{grid-template-columns:1fr}h1{font-size:24px}h2{font-size:20px}body{font-size:14px}}@media (max-width: 640px){.sidebar{position:absolute;width:200px;z-index:100}.layout{flex-direction:column}nav{padding:0 1rem}nav a{margin:0 .75rem}}
