@import url(https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=DM+Sans:wght@300;400;500;600&display=swap);:root{--navy:#1a2744;--navy-light:#243257;--gold:#c9a84c;--gold-light:#e8c96e;--cream:#f8f5ef;--white:#fff;--gray-50:#f9fafb;--gray-100:#f0ede8;--gray-200:#e2ddd6;--gray-400:#9e9890;--gray-600:#6b6560;--gray-800:#3a3530;--text:#1a1714;--status-scheduled:#3b82f6;--status-completed:#10b981;--status-cancelled:#ef4444;--status-locked:#6366f1;--status-ready:#f59e0b;--radius:10px;--radius-lg:16px;--shadow:0 2px 8px #1a274414;--shadow-md:0 4px 20px #1a27441f;--shadow-lg:0 8px 40px #1a274429;--transition:150ms ease}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;background:#f8f5ef;background:var(--cream);color:#1a1714;color:var(--text);font-family:DM Sans,sans-serif;line-height:1.5}h1,h2,h3{font-family:"DM Serif Display",serif}a{color:inherit;text-decoration:none}button{border:none;cursor:pointer;transition:all .15s ease;transition:all var(--transition)}button,input,select,textarea{font-family:inherit;outline:none}input,select,textarea{transition:border-color .15s ease,box-shadow .15s ease;transition:border-color var(--transition),box-shadow var(--transition)}.loading-screen{align-items:center;background:#f8f5ef;background:var(--cream);display:flex;justify-content:center;min-height:100vh}.spinner{animation:spin .8s linear infinite;border:3px solid #e2ddd6;border-top-color:#c9a84c;border:3px solid var(--gray-200);border-radius:50%;border-top-color:var(--gold);height:40px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.no-spin::-webkit-inner-spin-button,.no-spin::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.no-spin[type=number]{-moz-appearance:textfield}.layout{display:flex;min-height:100vh}.sidebar{background:#1a2744;background:var(--navy);display:flex;flex-direction:column;flex-shrink:0;height:100vh;left:0;padding:0;position:fixed;top:0;width:260px;z-index:100}.sidebar-logo{border-bottom:1px solid #ffffff14;padding:28px 24px 20px}.sidebar-logo h1{color:#c9a84c;color:var(--gold);font-family:"DM Serif Display",serif;font-size:1.6rem;letter-spacing:.02em}.sidebar-logo span{color:#fff6;font-family:DM Sans,sans-serif;font-size:.72rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase}.sidebar-nav{flex:1 1;padding:16px 0}.nav-link{align-items:center;color:#fff9;display:flex;font-size:.9rem;font-weight:500;gap:12px;padding:11px 24px;transition:all .15s ease;transition:all var(--transition)}.nav-link:hover{background:#ffffff0f;color:#fff}.nav-link.active{background:#c9a84c1f;color:#c9a84c;color:var(--gold)}.nav-icon{font-size:1.1rem}.sidebar-footer{border-top:1px solid #ffffff14;padding:16px 24px}.sidebar-user{gap:10px;margin-bottom:12px}.avatar,.sidebar-user{align-items:center;display:flex}.avatar{background:#c9a84c;background:var(--gold);border-radius:50%;color:#1a2744;color:var(--navy);flex-shrink:0;font-size:.85rem;font-weight:700;height:34px;justify-content:center;width:34px}.sidebar-user-info p{color:#fff;font-size:.82rem;font-weight:500}.sidebar-user-info span{color:#fff6;font-size:.72rem;text-transform:capitalize}.btn-signout{background:#ffffff0f;border-radius:10px;border-radius:var(--radius);color:#ffffff80;font-size:.82rem;padding:8px;text-align:center;width:100%}.btn-signout:hover{background:#ffffff1a;color:#fff}.main-content{flex:1 1;margin-left:260px;min-height:100vh;padding:36px 40px}.page-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:32px}.page-header h2{color:#1a2744;color:var(--navy);font-size:1.9rem;margin-bottom:4px}.page-header p{color:#6b6560;color:var(--gray-600);font-size:.9rem}.btn{align-items:center;border-radius:10px;border-radius:var(--radius);display:inline-flex;font-size:.875rem;font-weight:600;gap:8px;padding:10px 20px}.btn-primary{background:#1a2744;background:var(--navy);color:#fff}.btn-primary:hover{background:#243257;background:var(--navy-light)}.btn-gold{background:#c9a84c;background:var(--gold);color:#1a2744;color:var(--navy)}.btn-gold:hover{background:#e8c96e;background:var(--gold-light)}.btn-outline{background:#0000;border:1.5px solid #e2ddd6;border:1.5px solid var(--gray-200);color:#3a3530;color:var(--gray-800)}.btn-outline:hover{background:#f9fafb;background:var(--gray-50);border-color:#9e9890;border-color:var(--gray-400)}.btn-danger{background:#fee2e2;color:#dc2626}.btn-danger:hover{background:#fecaca}.btn-sm{font-size:.8rem;padding:6px 14px}.btn-xs{font-size:.75rem;padding:4px 10px}.btn:disabled{cursor:not-allowed;opacity:.5}.card{background:#fff;border:1px solid #f0ede8;border:1px solid var(--gray-100);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 2px 8px #1a274414;box-shadow:var(--shadow)}.card-header{align-items:center;border-bottom:1px solid #f0ede8;border-bottom:1px solid var(--gray-100);display:flex;justify-content:space-between;padding:20px 24px 16px}.card-body{padding:20px 24px}.badge{align-items:center;border-radius:999px;display:inline-flex;font-size:.72rem;font-weight:600;gap:5px;letter-spacing:.04em;padding:3px 10px;text-transform:uppercase}.badge-scheduled{background:#dbeafe;color:#1d4ed8}.badge-completed{background:#d1fae5;color:#065f46}.badge-cancelled{background:#fee2e2;color:#991b1b}.badge-locked{background:#ede9fe;color:#4c1d95}.badge-ready{background:#fef3c7;color:#92400e}.badge-active{background:#d1fae5;color:#065f46}.badge-stopped{background:#fee2e2;color:#991b1b}.form-group{margin-bottom:18px}.form-label{color:#3a3530;color:var(--gray-800);display:block;font-size:.82rem;font-weight:600;letter-spacing:.05em;margin-bottom:6px;text-transform:uppercase}.form-input,.form-select,.form-textarea{background:#fff;border:1.5px solid #e2ddd6;border:1.5px solid var(--gray-200);border-radius:10px;border-radius:var(--radius);color:#1a1714;color:var(--text);font-size:.9rem;padding:10px 14px;width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#1a2744;border-color:var(--navy);box-shadow:0 0 0 3px #1a274414}.form-textarea{min-height:100px;resize:vertical}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.modal-overlay{align-items:center;animation:fadeIn .15s ease;background:#00000073;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{animation:slideUp .2s ease;background:#fff;border-radius:16px;border-radius:var(--radius-lg);max-height:90vh;max-width:520px;overflow-y:auto;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.modal-header{align-items:center;border-bottom:1px solid #f0ede8;border-bottom:1px solid var(--gray-100);display:flex;justify-content:space-between;padding:24px 28px 16px}.modal-header h3{color:#1a2744;color:var(--navy);font-size:1.25rem}.modal-close{align-items:center;background:#f0ede8;background:var(--gray-100);border-radius:50%;color:#6b6560;color:var(--gray-600);display:flex;font-size:1.1rem;height:32px;justify-content:center;width:32px}.modal-close:hover{background:#e2ddd6;background:var(--gray-200);color:#1a1714;color:var(--text)}.modal-body{padding:24px 28px}.modal-footer{display:flex;gap:10px;justify-content:flex-end;padding:16px 28px 24px}.login-page{align-items:center;background:#1a2744;background:var(--navy);background-image:radial-gradient(ellipse at 20% 80%,#c9a84c26 0,#0000 60%);display:flex;justify-content:center;min-height:100vh}.login-card{background:#fff;border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 8px 40px #1a274429;box-shadow:var(--shadow-lg);max-width:420px;padding:48px 44px;width:100%}.login-logo{margin-bottom:32px;text-align:center}.login-logo h1{color:#1a2744;color:var(--navy);font-family:"DM Serif Display",serif;font-size:2.4rem}.login-logo p{color:#9e9890;color:var(--gray-400);font-size:.85rem;letter-spacing:.1em;text-transform:uppercase}.login-error{background:#fee2e2;border-radius:10px;border-radius:var(--radius);color:#dc2626;font-size:.85rem;margin-bottom:16px;padding:10px 14px}.groups-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.group-card{background:#fff;border:1px solid #f0ede8;border:1px solid var(--gray-100);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 2px 8px #1a274414;box-shadow:var(--shadow);cursor:pointer;padding:22px;transition:all .15s ease;transition:all var(--transition)}.group-card:hover{border-color:#c9a84c;border-color:var(--gold);box-shadow:0 4px 20px #1a27441f;box-shadow:var(--shadow-md);transform:translateY(-2px)}.group-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:14px}.group-card h3{color:#1a2744;color:var(--navy);font-size:1.05rem;margin-bottom:4px}.group-card-meta{color:#6b6560;color:var(--gray-600);font-size:.8rem}.group-progress{margin-top:14px}.progress-bar{background:#f0ede8;background:var(--gray-100);border-radius:999px;height:6px;margin-top:6px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#c9a84c,#e8c96e);background:linear-gradient(90deg,var(--gold),var(--gold-light));border-radius:999px;height:100%;transition:width .4s ease}.progress-labels{color:#9e9890;color:var(--gray-400);display:flex;font-size:.75rem;justify-content:space-between;margin-top:4px}.sessions-table{border-collapse:collapse;width:100%}.sessions-table th{border-bottom:1px solid #f0ede8;border-bottom:1px solid var(--gray-100);color:#9e9890;color:var(--gray-400);font-size:.72rem;font-weight:600;letter-spacing:.07em;padding:10px 16px;text-align:left;text-transform:uppercase}.sessions-table td{border-bottom:1px solid #f9fafb;border-bottom:1px solid var(--gray-50);font-size:.875rem;padding:14px 16px;vertical-align:middle}.sessions-table tr:last-child td{border-bottom:none}.sessions-table tr:hover td{background:#f9fafb;background:var(--gray-50)}.session-row-locked{opacity:.65}.session-actions{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.stats-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));margin-bottom:32px}.stat-card{background:#fff;border:1px solid #f0ede8;border:1px solid var(--gray-100);border-radius:16px;border-radius:var(--radius-lg);padding:20px}.stat-card .stat-value{color:#1a2744;color:var(--navy);font-family:"DM Serif Display",serif;font-size:2rem;line-height:1;margin-bottom:4px}.stat-card .stat-label{color:#9e9890;color:var(--gray-400);font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.alert{border-radius:10px;border-radius:var(--radius);font-size:.875rem;margin-bottom:20px;padding:12px 16px}.alert-success{background:#d1fae5;color:#065f46}.alert-error{background:#fee2e2;color:#991b1b}.alert-info{background:#dbeafe;color:#1e40af}.empty-state{color:#9e9890;color:var(--gray-400);padding:60px 20px;text-align:center}.empty-state .empty-icon{font-size:2.5rem;margin-bottom:12px}.empty-state p{font-size:.9rem}.back-link{align-items:center;color:#6b6560;color:var(--gray-600);display:inline-flex;font-size:.85rem;gap:6px;margin-bottom:20px}.back-link:hover{color:#1a2744;color:var(--navy)}.notes-preview{color:#6b6560;color:var(--gray-600);font-size:.82rem;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hamburger{align-items:center;background:#1a2744;background:var(--navy);border-radius:10px;border-radius:var(--radius);box-shadow:0 4px 20px #1a27441f;box-shadow:var(--shadow-md);color:#fff;display:none;font-size:1.2rem;height:40px;justify-content:center;left:14px;position:fixed;top:14px;width:40px;z-index:200}.sidebar-overlay{background:#0006;display:none;inset:0;position:fixed;z-index:99}@media (max-width:768px){.hamburger{display:flex}.sidebar{transform:translateX(-100%);transition:transform .25s ease;z-index:150}.sidebar.open{transform:translateX(0)}.sidebar-overlay.open{display:block}.main-content{margin-left:0;padding:72px 16px 24px}.form-row{grid-template-columns:1fr}.page-header{flex-direction:column;gap:12px;margin-bottom:20px}.page-header>div:last-child{display:flex;flex-wrap:wrap;gap:8px}.groups-grid{grid-template-columns:1fr}.stats-row{grid-template-columns:1fr 1fr}.modal{border-radius:10px;border-radius:var(--radius);max-height:95vh;max-width:100%}.sessions-table .col-hide-mobile{display:none}.session-actions{flex-wrap:wrap;gap:4px}.login-card{border-radius:10px;border-radius:var(--radius);padding:32px 24px}}
/*# sourceMappingURL=main.4fa70aa6.css.map*/