@import"https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700;800&display=swap";:root{--primary: #6366f1;--primary-hover: #4f46e5;--bg-body: #f3f4f6;--bg-surface: #ffffff;--text-main: #111827;--text-secondary: #6b7280;--border-color: #e5e7eb;--success: #10b981;--error: #ef4444;--warning: #f59e0b;--info: #3b82f6;--bg-body-dark: #0f172a;--bg-surface-dark: #1e293b;--text-main-dark: #f8fafc;--text-secondary-dark: #94a3b8;--border-color-dark: #334155;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-active: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-glow: 0 0 20px rgba(99, 102, 241, .25);--sidebar-width: 250px;--header-height: 72px;--transition-fast: .2s ease;--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .4s cubic-bezier(.175, .885, .32, 1.275)}body.dark{--bg-body: var(--bg-body-dark);--bg-surface: var(--bg-surface-dark);--text-main: var(--text-main-dark);--text-secondary: var(--text-secondary-dark);--border-color: var(--border-color-dark)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Montserrat,Plus Jakarta Sans,Inter,system-ui,-apple-system,sans-serif;background-color:var(--bg-body);color:var(--text-main);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}button{cursor:pointer;font-family:inherit}a{text-decoration:none;color:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:99px;border:2px solid var(--bg-body)}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.form-error{color:var(--error);font-size:.75rem;margin-top:4px;display:flex;align-items:center;gap:4px;animation:fadeIn .2s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.fade-in{animation:fadeIn .4s cubic-bezier(.16,1,.3,1) forwards}input,select,textarea{transition:all var(--transition-fast)}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #6366f126;outline:none;background-color:#fff}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.full-width{grid-column:span 2}@media(max-width:768px){.form-grid{grid-template-columns:1fr}.full-width{grid-column:span 1}.primary-btn,.secondary-btn,.action-btn,.modal-footer button{width:100%;justify-content:center}.modal-footer{flex-direction:column-reverse;gap:8px}.page-header{flex-direction:column;align-items:flex-start;gap:12px}.page-header .primary-btn{width:100%}}@media(max-width:768px){.modal-container{width:100%!important;height:100%!important;max-height:100vh!important;border-radius:0!important;margin:0!important;display:flex;flex-direction:column}.modal-body{flex:1;overflow-y:auto}.modal-footer{border-radius:0!important}}.table-wrapper{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.app-shell{display:flex;min-height:100vh}.main-content{flex:1;display:flex;flex-direction:column;overflow-x:hidden;width:100%}.page-wrapper{padding:20px;width:100%;max-width:100vw}.sidebar{width:250px;height:100vh;background-color:var(--bg-surface);border-right:1px solid var(--border-color);transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:50;position:sticky;top:0;flex-shrink:0}.sidebar-overlay{display:none;position:fixed;inset:0;background:#00000059;z-index:40;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@media(max-width:1024px){.sidebar{position:fixed;left:0;top:var(--header-height);width:min(86vw,320px);max-width:320px;height:calc(100dvh - var(--header-height));overflow-y:auto;overscroll-behavior:contain;transform:translate(-100%);box-shadow:var(--shadow-lg)}.sidebar.open{transform:translate(0)}.sidebar-overlay.open{display:block}.main-content{width:100%}}.common-table{min-width:900px}.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}@media(max-width:768px){.modal-container{width:95%!important;max-width:520px!important;height:auto!important;max-height:90vh!important;margin:auto!important;border-radius:12px!important}}.page-header{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}@media(max-width:600px){.page-wrapper{padding:10px}.page-header button{width:100%}.page-header{flex-direction:row}}
