@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&display=swap";:root{--color-primary: #0d9488;--color-primary-hover: #0f766e;--color-primary-light: #ccfbf1;--color-primary-muted: #99f6e4;--color-bg: #f0fdfa;--color-bg-card: #ffffff;--color-sidebar: #134e4a;--color-sidebar-hover: #115e59;--color-sidebar-active: #14b8a6;--color-text: #0f172a;--color-text-muted: #64748b;--color-text-inverse: #f8fafc;--color-border: #e2e8f0;--color-border-light: #f1f5f9;--color-error: #dc2626;--color-error-bg: #fef2f2;--color-success: #059669;--color-success-bg: #ecfdf5;--color-warning: #d97706;--color-warning-bg: #fffbeb;--font-sans: "DM Sans", system-ui, -apple-system, sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .05);--shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .08), 0 2px 4px -2px rgba(15, 23, 42, .05);--shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .08), 0 4px 6px -4px rgba(15, 23, 42, .05)}*{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);font-size:var(--text-base);line-height:1.5;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased}#root{min-height:100vh}h1,h2,h3,h4{margin:0 0 var(--space-4);font-weight:var(--font-semibold);color:var(--color-text)}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-medium);line-height:1.5;border:none;border-radius:var(--radius-md);cursor:pointer;transition:background .15s,color .15s,box-shadow .15s}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-table-action{white-space:nowrap;flex:1 1 0;min-width:0;font-size:var(--text-sm)}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--color-bg-card);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-border-light)}.btn-ghost{background:transparent;color:var(--color-text-muted);border:1px solid transparent}.btn-ghost:hover:not(:disabled){background:#0000000a;color:var(--color-text)}.btn-danger{background:var(--color-error);color:#fff}.btn-danger:hover:not(:disabled){filter:brightness(.95)}.input,.select,.textarea{width:100%;padding:var(--space-2) var(--space-3);font-family:var(--font-sans);font-size:var(--text-sm);line-height:1.5;color:var(--color-text);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color .15s,box-shadow .15s}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.input::placeholder,.textarea::placeholder{color:var(--color-text-muted)}.label{display:block;margin-bottom:var(--space-1);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text)}.form-group{margin-bottom:var(--space-4)}.form-error{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-error)}.card{background:var(--color-bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.card-body{padding:var(--space-6)}.table-wrap{background:var(--color-bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:auto}.table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.table th{padding:var(--space-3) var(--space-4);text-align:left;font-weight:var(--font-semibold);color:var(--color-text-muted);background:var(--color-border-light);border-bottom:1px solid var(--color-border);white-space:nowrap}.table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-light);white-space:nowrap}.table tbody tr:hover{background:var(--color-border-light)}.table tbody tr:last-child td{border-bottom:none}.page-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-6)}.page-title{margin:0;font-size:var(--text-2xl);font-weight:var(--font-semibold);color:var(--color-text)}.page-content{max-width:1600px}.sidebar{width:240px;min-height:100vh;background:var(--color-sidebar);color:var(--color-text-inverse);padding:var(--space-4) 0;display:flex;flex-direction:column;flex-shrink:0}.sidebar-brand{padding:0 var(--space-4) var(--space-4);border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:var(--space-2)}.sidebar-brand strong{font-size:var(--text-lg);font-weight:var(--font-bold);letter-spacing:-.02em}.sidebar-meta{font-size:var(--text-xs);color:#ffffffa6;margin-top:var(--space-1)}.sidebar-nav{display:flex;flex-direction:column;gap:2px;flex-shrink:0}.sidebar-nav a{display:block;padding:var(--space-2) var(--space-4);color:#ffffffd9;text-decoration:none;font-size:var(--text-sm);font-weight:var(--font-medium);border-radius:var(--radius-md);margin:0 var(--space-2);transition:background .15s,color .15s}.sidebar-nav a:hover{background:var(--color-sidebar-hover);color:#fff;text-decoration:none}.sidebar-nav a.active{background:var(--color-sidebar-active);color:#fff}.sidebar-footer{margin-top:var(--space-4);padding:var(--space-3) var(--space-4) 0;border-top:1px solid rgba(255,255,255,.1);flex-shrink:0}.main-content{flex:1;padding:var(--space-8);background:var(--color-bg);min-width:0}.login-card{max-width:400px;margin:var(--space-12) auto;padding:var(--space-8);background:var(--color-bg-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}.badge{display:inline-block;padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:var(--font-semibold);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.02em}.badge-success{background:var(--color-success-bg);color:var(--color-success)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge-error{background:var(--color-error-bg);color:var(--color-error)}.modal-overlay{position:fixed;inset:0;background:#0f172a66;display:flex;align-items:center;justify-content:center;z-index:50;overflow:auto;padding:var(--space-6)}.modal-content{background:var(--color-bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:320px;max-width:90vw;padding:var(--space-6);margin:auto}.pagination{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-4);font-size:var(--text-sm);color:var(--color-text-muted)}.empty-state{text-align:center;padding:var(--space-12);color:var(--color-text-muted);font-size:var(--text-sm)}.loading{padding:var(--space-8);text-align:center;color:var(--color-text-muted);font-size:var(--text-sm)}.settings-section{margin-bottom:var(--space-8)}.settings-section-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text-muted);margin:0 0 var(--space-4);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border)}@media(max-width:768px){.btn{min-height:44px;padding:var(--space-2) var(--space-4)}.sidebar-nav a{min-height:44px;display:flex;align-items:center;padding:var(--space-3) var(--space-4)}.input,.select,.textarea{min-height:44px;font-size:16px}.page-header{flex-wrap:wrap;gap:var(--space-3)}.form-row-mobile{flex-direction:column;align-items:stretch}.form-row-mobile .form-group{flex:none!important;width:100%!important}}@media(max-width:768px){.layout-wrap{display:flex;flex-direction:column;min-height:100vh}.mobile-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);background:var(--color-sidebar);color:var(--color-text-inverse);flex-shrink:0;position:sticky;top:0;z-index:40}.mobile-header .mobile-menu-btn{background:transparent;border:none;color:inherit;padding:var(--space-2);min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;cursor:pointer;border-radius:var(--radius-md)}.mobile-header .mobile-menu-btn:hover{background:var(--color-sidebar-hover)}.mobile-header .mobile-app-name{font-weight:var(--font-semibold);font-size:var(--text-lg)}.mobile-header .mobile-logout{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;padding:var(--space-2);font-size:var(--text-sm)}.sidebar-overlay{display:none;position:fixed;inset:0;background:#0006;z-index:45}.layout-wrap.sidebar-open .sidebar-overlay{display:block}.sidebar{position:fixed;top:0;left:0;bottom:0;width:min(280px,85vw);min-height:100vh;z-index:50;transform:translate(-100%);transition:transform .2s ease-out;overflow-y:auto}.layout-wrap.sidebar-open .sidebar{transform:translate(0)}.main-content{flex:1;padding:var(--space-4);min-width:0}.page-content{max-width:none}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.table{min-width:500px}.card{border-radius:var(--radius-md)}.login-card{margin:var(--space-6) var(--space-4);padding:var(--space-6)}}@media(min-width:769px){.mobile-header{display:none}.sidebar-overlay{display:none!important}}.meetings-two-rows{display:flex;flex-direction:column;gap:var(--space-8)}.calendar-list-mobile{display:none}@media(max-width:768px){.calendar-week-row{display:none!important}.calendar-list-mobile{display:block!important}}
