.app-layout{display:grid;grid-template-areas:"sidebar header" "sidebar main";grid-template-columns:260px 1fr;grid-template-rows:80px 1fr;height:100vh;width:100%;max-width:100vw;overflow-x:hidden}.sidebar{grid-area:sidebar;background-color:var(--bg-sidebar);border-right:1px solid var(--border-color);display:flex;flex-direction:column;padding:14px 12px 16px}.sidebar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-left:12px}.logo{font-family:Outfit,sans-serif;font-weight:700;font-size:1.5rem;color:var(--text-main)}.sidebar-close-btn{display:none;background:transparent;border:none;color:var(--text-main);cursor:pointer;padding:var(--space-2);border-radius:var(--radius-md)}.sidebar-close-btn:hover{background:var(--bg-surface-hover);color:var(--color-red)}.nav-links{display:flex;flex-direction:column;gap:6px;flex:1;min-height:0;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:9px;padding:8px 11px;color:var(--text-muted);border-radius:var(--radius-md);font-weight:500;font-size:.875rem;transition:all var(--transition-fast);white-space:nowrap;text-decoration:none;border:none;background:transparent;cursor:pointer;width:100%;text-align:left}.nav-item:hover{background-color:var(--bg-surface-hover);color:var(--text-main)}.nav-item.active{background-color:#eef2ff;color:var(--primary);font-weight:600}[data-theme=dark] .nav-item.active{background-color:#244a66;color:#fff}.nav-item svg{stroke-width:2px;flex-shrink:0}.nav-item span{white-space:nowrap}.notification-badge{margin-left:auto;background:var(--color-red);color:#fff;font-size:10px;font-weight:700;height:18px;width:18px;display:flex;align-items:center;justify-content:center;border-radius:50%}.header{grid-area:header;background-color:var(--bg-sidebar);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-6);position:sticky;top:0;z-index:10}.header-search{background:var(--bg-surface);border:1px solid var(--border-color);padding:10px 16px;border-radius:var(--radius-lg);display:flex;align-items:center;gap:var(--space-2);color:var(--text-muted);flex:1 1 400px;width:100%;max-width:420px;min-width:240px;box-shadow:var(--shadow-sm)}.header-search.search-hidden{visibility:hidden;pointer-events:none}.header-search input{background:transparent;border:none;outline:none;font-size:.875rem;width:100%;color:var(--text-main)}.header-search input::placeholder{color:var(--text-muted)}.header-actions{display:flex;align-items:center;gap:var(--space-4);height:100%}.toggle-switch{background:var(--bg-surface);padding:4px;border-radius:30px;display:flex;border:1px solid var(--border-color);cursor:pointer;height:44px;align-items:center}.toggle-option{padding:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-muted);transition:all var(--transition-fast)}.toggle-option.active{background:var(--primary);color:#fff;box-shadow:var(--shadow-sm)}.notification-btn{background:var(--bg-surface);border:1px solid var(--border-color);width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-muted);transition:all var(--transition-fast)}.notification-btn:hover{background:var(--bg-surface-hover);color:var(--text-main)}.user-pill{background:var(--bg-surface);border:1px solid var(--border-color);padding:4px 16px 4px 6px;border-radius:40px;display:flex;align-items:center;gap:12px;cursor:pointer;height:44px;transition:all var(--transition-fast)}.user-pill:hover{background:var(--bg-surface-hover)}.user-pill .avatar{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex:0 0 32px;overflow:hidden;border-radius:50%}.user-pill .avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}.main-content{grid-area:main;padding:var(--space-4) var(--space-6) var(--space-6) var(--space-4);overflow-y:auto;min-width:0}.dashboard-title-area{margin-bottom:var(--space-8)}.dashboard-grid-top{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-6);margin-bottom:var(--space-6)}.dashboard-grid-middle{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-6);margin-bottom:var(--space-6)}.dashboard-grid-bottom{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-6)}@media(max-width:1200px){.dashboard-grid-top,.dashboard-grid-bottom{grid-template-columns:repeat(2,1fr)}.dashboard-grid-middle{grid-template-columns:1fr}}.mobile-menu-btn{display:none;background:transparent;border:none;color:var(--text-main);cursor:pointer;padding:var(--space-2);border-radius:var(--radius-md)}.mobile-menu-btn:hover{background:var(--bg-surface-hover)}.header-left{display:none;align-items:center;gap:var(--space-2)}.mobile-app-name{display:none;font-family:Outfit,sans-serif;font-weight:700;font-size:1.25rem;color:var(--text-main)}.mobile-overlay{display:none;position:fixed;inset:0;background-color:#00000080;z-index:40;transition:opacity .3s ease}@media(max-width:1024px){.mobile-menu-btn{display:flex;align-items:center;justify-content:center}.header-left{display:flex}.sidebar-close-btn{display:flex;align-items:center;justify-content:center}.mobile-app-name{display:block}.app-layout{display:flex;flex-direction:column}.sidebar{position:fixed;left:0;top:0;bottom:0;width:100%;z-index:50;transform:translate(-100%);transition:transform .3s ease;box-shadow:var(--shadow-xl)}.app-layout:not(.collapsed) .sidebar{transform:translate(0)}.app-layout:not(.collapsed) .mobile-overlay{display:block;opacity:1}.header{position:sticky;top:0;width:100%;height:auto;padding:max(env(safe-area-inset-top),16px) var(--space-4) 12px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;z-index:30;flex-shrink:0;column-gap:var(--space-3);row-gap:10px;min-height:calc(max(env(safe-area-inset-top),16px) + 52px)}.header-left{grid-column:1;grid-row:1;min-width:0}.header .header-actions{grid-column:2;grid-row:1;justify-self:end;gap:var(--space-2);height:auto;margin-top:0}.header-search{grid-column:1 / -1;grid-row:2;width:100%;max-width:none;min-width:0;margin:0;padding:8px 14px}.header-search.search-hidden{display:none;margin:0;padding:0;border:0}.main-content{flex:1;padding:var(--space-4) var(--space-4) var(--space-4)}}@media(max-width:768px){.header{padding-top:max(env(safe-area-inset-top),24px);min-height:calc(max(env(safe-area-inset-top),24px) + 52px)}.header .header-actions{margin-top:0}.user-pill span{display:none}.user-pill{padding:4px;gap:0;width:44px;justify-content:center}.role-switcher-btn{padding:0!important;gap:0!important;width:44px!important;height:44px!important;justify-content:center!important}.role-label,.role-chevron{display:none}.dashboard-grid-top,.dashboard-grid-bottom,.dashboard-grid-middle{grid-template-columns:1fr;gap:1rem}}.admin-dashboard{display:flex;flex-direction:column;gap:1rem}.admin-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.admin-stat-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:14px;padding:1.25rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;transition:box-shadow .2s}.admin-stat-card:hover{box-shadow:0 4px 16px #00000012}.admin-stat-left{display:flex;flex-direction:column;gap:.25rem}.admin-stat-label{font-size:.8rem;color:var(--text-muted);font-weight:500}.admin-stat-value{font-size:2rem;font-weight:700;color:var(--text-main);line-height:1.1}.admin-stat-subtext{font-size:.72rem;color:var(--text-muted);max-width:160px;line-height:1.4}.admin-stat-icon-wrap{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:inherit}.admin-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.admin-section-title{font-size:1rem;font-weight:600;color:var(--text-main);margin:0 0 1.25rem}.admin-overview-panel{padding:1.5rem}.admin-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.admin-overview-card{border:1px solid var(--border-color);border-radius:12px;padding:1.1rem 1.25rem;display:flex;flex-direction:column;gap:.35rem}.admin-overview-value{font-size:1.75rem;font-weight:700;color:var(--text-main)}.admin-overview-label{font-size:.78rem;color:var(--text-muted)}.admin-quick-actions-panel{padding:1.5rem}.admin-quick-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.admin-quick-action{height:100%;flex-direction:column;gap:.6rem}@media(max-width:1100px){.admin-stats-grid{grid-template-columns:repeat(2,1fr)}.admin-bottom-grid{grid-template-columns:1fr}}@media(max-width:768px){.admin-stats-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.admin-stats-grid .glass-panel{padding:1rem!important;min-height:140px!important}.admin-stats-grid h3{font-size:1.5rem!important}.admin-stats-grid p,.admin-stats-grid .text-muted.text-xs{font-size:.7rem!important}.admin-bottom-grid{gap:1rem}.admin-overview-panel,.admin-quick-actions-panel{padding:1rem}.admin-section-title{margin-bottom:1rem}.admin-overview-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.admin-overview-card{padding:.85rem}.admin-overview-value{font-size:1.4rem}.admin-overview-label{font-size:.7rem}.admin-quick-actions-grid{grid-template-columns:1fr;gap:.75rem}}@media(max-width:480px){.admin-stats-grid,.admin-overview-grid{grid-template-columns:1fr}}.skeleton-line{height:12px;background:#ffffff14;border-radius:4px;animation:pulse 1.4s ease-in-out infinite}.shared-stat-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-6);display:flex;flex-direction:column;justify-content:space-between;min-height:118px;box-shadow:var(--shadow-card);gap:var(--space-3)}.shared-stat-card__header{display:flex;justify-content:space-between;align-items:flex-start}.shared-stat-card__label{font-size:.875rem;color:var(--text-muted);font-weight:500;line-height:1.4}.shared-stat-card__icon{width:36px;height:36px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.bg-green-100{background-color:var(--color-green-bg)}.shared-stat-card__value{font-size:2rem;font-weight:600;color:var(--text-main);font-family:Outfit,sans-serif;line-height:1}.shared-stat-card__subtext{font-size:.8125rem;color:var(--text-muted);margin:0}.shared-stat-card .skeleton-line{height:28px;width:60px;background:var(--border-color);border-radius:4px;animation:statPulse 1.4s ease-in-out infinite}@keyframes statPulse{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}.sa-dashboard-layout{display:flex;flex-direction:column;gap:1.5rem;margin-top:1.25rem}.sa-dashboard-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.sa-dashboard-charts-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:1rem}.sa-dashboard-panel{padding:1.25rem}.sa-dashboard-panel-header{margin-bottom:1rem}.sa-panel-title{margin:0 0 1rem}.sa-chart-area{height:300px}.sa-section-title{margin:.2rem 0 .25rem;font-size:1.35rem;font-weight:700;line-height:1.2}.sa-dashboard-quick-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.sa-quick-stats-section{display:flex;flex-direction:column;gap:.3rem}@media(max-width:1200px){.sa-dashboard-stats-grid,.sa-dashboard-quick-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sa-dashboard-charts-grid{grid-template-columns:1fr}}@media(max-width:768px){.sa-dashboard-layout{gap:1rem;margin-top:1rem}.sa-dashboard-panel{padding:1rem}.sa-section-title{font-size:1.2rem;margin:.1rem 0 .2rem}.sa-chart-area{height:260px}}@media(max-width:560px){.sa-dashboard-stats-grid,.sa-dashboard-quick-stats-grid{grid-template-columns:1fr}}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);margin-bottom:1.25rem;margin-top:1.5rem}.users-table-container{display:block!important;width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}.users-table{width:100%!important;table-layout:auto;border-collapse:collapse}.users-table th{text-align:left;padding:.875rem .75rem;color:var(--text-muted);font-weight:500;font-size:.85rem;border-bottom:1px solid var(--border-color);white-space:nowrap}.users-table td{padding:.875rem .75rem;border-bottom:1px solid var(--border-color);color:var(--text-main);font-size:.85rem;vertical-align:middle;white-space:nowrap}.users-table tr:last-child td{border-bottom:none}.user-info-cell{display:flex;align-items:center;gap:.75rem}.user-name{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-info{display:flex;flex-direction:column;gap:2px}.contact-info .email,.contact-info .phone{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-avatar-sm{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0}.status-badge{display:inline;padding:0;border-radius:0;font-size:.85rem;font-weight:500;background:none!important}.status-active{color:var(--color-green);background:none!important}.status-inactive{color:var(--color-red, #dc2626)!important;background:none!important}.action-buttons-cell{display:flex;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap}.action-icon-btn{width:36px;height:36px;min-width:36px;min-height:36px;border-radius:8px;padding:0;display:flex;align-items:center;justify-content:center;background:var(--bg-surface-hover);color:var(--text-muted);border:1px solid var(--border-color);cursor:pointer;transition:all .2s ease;flex-shrink:0}.action-icon-btn svg{width:16px;height:16px;min-width:16px;min-height:16px;display:block}.action-icon-btn:hover{background:var(--color-blue-bg);color:var(--primary);border-color:var(--color-blue);transform:translateY(-1px)}.action-icon-btn:active{transform:scale(.95)}.users-col-professional,.users-col-contact{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.admin-role-chip{color:#244a66}[data-theme=dark] .admin-role-chip{color:#fff}.users-tabs{display:flex;gap:2rem;border-bottom:1px solid var(--border-color);margin-bottom:1rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-top:-.5rem}.users-tabs::-webkit-scrollbar{display:none}.users-tab{display:inline-flex;align-items:center;position:relative;width:fit-content;padding:0 0 .75rem;font-size:.9375rem;font-weight:500;color:var(--text-muted);background:transparent;border:none;cursor:pointer;white-space:nowrap;transition:color .2s;margin-bottom:-1px}.users-tab:hover{color:var(--text-main)}.users-tab.active{color:var(--primary)}.users-tab.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:999px;background:currentColor}[data-theme=dark] .users-tab.active{color:#fff}.table-container{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden;margin-top:0}.users-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.error-alert{color:var(--color-red);background:var(--color-red-bg);padding:.75rem 1rem;border-radius:var(--radius-md);margin-bottom:1rem;font-size:.875rem}.skeleton-line{height:10px;background:var(--border-color);border-radius:4px;animation:usersPulse 1.4s ease-in-out infinite}.skeleton-badge{width:70px;height:22px;border-radius:999px;background:var(--border-color);animation:usersPulse 1.4s infinite}@keyframes usersPulse{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}@media(max-width:768px){.stats-grid{grid-template-columns:1fr;gap:var(--space-4)}.users-tabs{gap:1.5rem}.users-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.users-table{width:max-content;min-width:1200px;table-layout:auto}.users-table th,.users-table td{padding:.85rem 1rem;white-space:nowrap;vertical-align:middle}.users-table th:first-child,.users-table td:first-child{min-width:240px}.users-table th:nth-child(2),.users-table td:nth-child(2){min-width:290px}.users-table th:nth-child(3),.users-table td:nth-child(3){min-width:220px}.users-table th:nth-child(4),.users-table td:nth-child(4){min-width:140px}.users-table th:nth-child(5),.users-table td:nth-child(5){min-width:120px}.users-table th:nth-child(6),.users-table td:nth-child(6){min-width:190px}.user-info-cell{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;min-width:0;column-gap:.75rem}.user-name{width:auto;max-width:none;overflow:visible;text-overflow:clip}.contact-info{min-width:0;gap:.2rem}.contact-info .email,.contact-info .phone{overflow:visible;text-overflow:clip}.table-footer{flex-direction:column;gap:1rem;align-items:center}}@media(max-width:768px){.stats-grid{grid-template-columns:1fr!important;gap:var(--space-4)}}@media(max-width:480px){.stats-grid{grid-template-columns:1fr!important}}.status-deleted{background-color:#fee2e2;color:#991b1b}.user-modal-content{width:650px;max-width:95%}.user-modal-body{gap:.5rem!important;padding:1rem 1.25rem!important}.user-modal-body .divider{margin:.75rem 0}.user-modal-body .modal-section-title{margin-bottom:.5rem}.user-modal-body .tight-divider{margin:.75rem 0}.user-modal-body .tight-title{margin-bottom:.5rem}.user-modal-body .tight-info{margin-bottom:.25rem}.user-modal-body .info-grid{gap:.75rem}.user-modal-body .info-item{gap:.2rem}.user-modal-body .info-item .info-value{display:inline-flex;align-items:center;min-height:1.35rem}.user-modal-body .info-item .status-badge{display:inline-flex;align-items:center;justify-content:flex-start;line-height:1.2;white-space:nowrap;padding:0!important;margin:0;border-radius:0;background:none!important}.user-modal-body .info-item .status-active{color:var(--color-green)}.user-modal-body .info-item .status-inactive{color:var(--color-red, #dc2626)!important}.activity-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:.25rem}.activity-card{border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1rem .75rem;text-align:center;background:var(--bg-body);display:flex;flex-direction:column;align-items:center;gap:.35rem}.activity-value{font-size:1.5rem;font-weight:600;color:var(--text-main)}.activity-label{font-size:.75rem;color:var(--text-muted);line-height:1.3}.user-modal-footer{display:flex;gap:.75rem;padding:0;margin-top:.75rem}.btn-modal{flex:1;padding:.625rem 1rem;border-radius:var(--radius-md);font-weight:500;font-size:.9rem;text-align:center;cursor:pointer;transition:all .2s;display:flex;justify-content:center;align-items:center}.btn-outline-red{background:transparent;border:1px solid var(--color-red);color:var(--color-red)}.btn-outline-red:hover{background:var(--color-red-bg)}.btn-solid-blue{background:var(--primary);border:1px solid var(--primary);color:#fff}.btn-solid-blue:hover{background:var(--primary-hover)}.btn-solid-red{background:var(--color-red);border:1px solid var(--color-red);color:#fff}.btn-solid-red:hover{opacity:.9}.btn-outline-gray{background:transparent;border:1px solid var(--border-color);color:var(--text-main)}.btn-outline-gray:hover{background:var(--bg-surface-hover)}.user-modal-body .form-input,.user-modal-body .form-select{margin-top:.15rem;width:100%;padding:8px 10px;border-radius:8px;background-color:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-main);font-size:14px;outline:none;transition:all .2s}.user-modal-body .form-input::placeholder{color:var(--text-muted)}.user-modal-body .form-input:focus,.user-modal-body .form-select:focus{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.user-modal-body .select-wrapper{position:relative;display:flex;align-items:center}.user-modal-body .select-wrapper .form-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer;padding-right:2rem}.user-modal-body .form-select option{font-size:12px;line-height:1.1;padding:2px 6px;background-color:var(--bg-surface);color:var(--text-main)}[data-theme=light] .user-modal-body .form-input,[data-theme=light] .user-modal-body .form-select{background-color:#fff;color:#111827;border-color:#d1d5db}[data-theme=light] .user-modal-body .form-select option{background-color:#fff;color:#111827}[data-theme=dark] .user-modal-body .form-select option{background-color:#1f2a37;color:#fff}.user-modal-body select[name=countryCode].form-select{padding-top:6px;padding-bottom:6px;font-size:13px;max-height:2.25rem}.user-modal-body select[name=countryCode].form-select option{max-height:180px;overflow-y:auto;overscroll-behavior:contain;scroll-behavior:smooth}.user-modal-body .select-caret{position:absolute;right:.7rem;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none;flex-shrink:0}@media(max-width:768px){.user-modal-overlay{padding:0}.user-modal-content{width:100vw;height:100vh;max-width:none;max-height:none;border-radius:0}.user-modal-body{flex:1}.activity-cards{grid-template-columns:1fr}.user-modal-footer{flex-direction:column;margin-top:1rem}}.country-code-dropdown{position:relative;width:100%}.country-code-dropdown-trigger{display:flex;align-items:center;justify-content:space-between;gap:.5rem;text-align:left}.country-code-dropdown-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.country-code-dropdown-caret{color:var(--text-muted);flex-shrink:0;pointer-events:none}.country-code-dropdown-menu{z-index:2200;max-height:208px;overflow-y:auto;overscroll-behavior:contain;scroll-behavior:smooth;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-surface);box-shadow:0 12px 24px #00000024}.country-code-dropdown-option{width:100%;border:none;background:transparent;text-align:left;color:var(--text-main);padding:.45rem .625rem;font-size:12px;line-height:1.2;cursor:pointer}.country-code-dropdown-option:hover{background:var(--bg-surface-hover)}.country-code-dropdown-option.active{background:var(--color-blue-bg, rgba(59, 130, 246, .12));color:var(--primary)}.country-code-dropdown-menu::-webkit-scrollbar{width:6px}.country-code-dropdown-menu::-webkit-scrollbar-track{background:transparent}.country-code-dropdown-menu::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:999px}.country-code-dropdown-menu::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}:root{--primary-h: 204;--primary-s: 47%;--primary-l: 28%;--primary: #244A66;--primary-light: hsl(var(--primary-h), var(--primary-s), 96%);--primary-hover: #1d3f56;--bg-body: hsl(210, 20%, 98%);--bg-surface: hsl(0, 0%, 100%);--bg-surface-hover: hsl(210, 20%, 96%);--bg-sidebar: hsl(0, 0%, 100%);--text-main: hsl(205, 30%, 15%);--text-muted: hsl(215, 10%, 55%);--text-light: hsl(0, 0%, 100%);--btn-cancel-text: #000;--border-color: hsl(215, 20%, 92%);--color-green: hsl(150, 60%, 45%);--color-green-bg: hsl(150, 60%, 95%);--color-yellow: hsl(40, 90%, 50%);--color-yellow-bg: hsl(40, 90%, 95%);--color-red: hsl(0, 80%, 60%);--color-red-bg: hsl(0, 80%, 95%);--color-blue: hsl(205, 80%, 60%);--color-blue-bg: hsl(205, 80%, 95%);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--radius-sm: .375rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .05), 0 2px 4px -2px rgb(0 0 0 / .05);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .05), 0 4px 6px -4px rgb(0 0 0 / .05);--shadow-card: 0 0 0 1px rgb(0 0 0 / .03), 0 1px 3px rgb(0 0 0 / .08);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--chart-primary: #244A66;--chart-secondary: #5683a6;--chart-tertiary: #9bc2e0}[data-theme=dark]{--bg-body: hsl(215, 28%, 10%);--bg-surface: hsl(215, 25%, 15%);--bg-sidebar: hsl(215, 25%, 15%);--bg-surface-hover: hsl(215, 25%, 20%);--text-main: hsl(210, 40%, 98%);--text-muted: hsl(215, 20%, 65%);--btn-cancel-text: #fff;--border-color: hsl(215, 25%, 22%);--shadow-card: 0 0 0 1px rgb(255 255 255 / .05), 0 4px 6px rgb(0 0 0 / .3);--color-green: hsl(150, 60%, 50%);--color-green-bg: hsl(150, 60%, 15%);--color-yellow: hsl(40, 90%, 55%);--color-yellow-bg: hsl(40, 90%, 15%);--color-red: hsl(0, 80%, 60%);--color-red-bg: hsl(0, 80%, 15%);--color-blue: hsl(205, 80%, 60%);--color-blue-bg: hsl(205, 80%, 15%);--chart-primary: hsl(205, 70%, 60%);--chart-secondary: hsl(205, 60%, 45%);--chart-tertiary: hsl(205, 50%, 30%);--dark-surface-deep: #0f172a;--dark-surface: #1e293b;--dark-surface-raised: #334155;--dark-border: #334155;--dark-border-strong: #475569}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-overlay,.user-modal-overlay,.create-group-modal-overlay,.delete-group-modal-overlay,.edit-message-modal-overlay,.escalate-modal-overlay,.remove-message-modal-overlay,.remove-user-modal-overlay,.group-details-modal-overlay,.assign-modal-overlay{position:fixed;inset:0;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out;padding:1rem}.modal-container,.modal-content,.user-modal-content,.delete-modal-container,.details-modal-container,.create-group-modal-content,.delete-group-modal-content,.edit-message-modal-content,.escalate-modal-content,.remove-message-modal-content,.remove-user-modal-content,.student-details-modal,.approve-modal,.reject-modal,.group-details-modal-content,.assign-modal-content{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;display:flex;flex-direction:column;animation:slideUp .3s ease-out;border:1px solid var(--border-color);overflow:hidden;max-height:90vh;width:600px;max-width:95%}.modal-sm{width:90%;max-width:450px}.modal-md{width:90%;max-width:600px;max-height:90vh}.modal-lg{width:90%;max-width:800px;max-height:90vh}.modal-xl{width:95%;max-width:900px;max-height:90vh}.modal-content-large{max-width:800px;width:95%;height:85vh}.modal-content-medium{max-width:900px;width:90%;max-height:75vh}.modal-content-small{max-width:800px;width:90%}.modal-header,.user-modal-header,.delete-modal-header,.details-modal-header,.create-group-modal-header,.delete-group-modal-header,.edit-message-modal-header,.edit-message-header,.escalate-modal-header,.remove-message-modal-header,.remove-user-modal-header,.group-details-modal-header,.assign-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.125rem 1.25rem;border-bottom:1px solid var(--border-color);flex-shrink:0}.modal-title,.user-modal-title,.delete-modal-title,.create-group-modal-title-row,.delete-group-modal-title-row,.edit-message-title-row,.escalate-title-row,.remove-message-title-row,.remove-user-title-row,.group-details-title-row,.assign-modal-title-row,.header-title{display:flex;align-items:center;gap:.75rem;font-size:1.125rem;font-weight:600;color:var(--text-main);margin:0}.modal-title h2,.modal-title h3{font-size:1.125rem;font-weight:600;color:var(--text-main);margin:0}.close-btn,.modal-close-btn,.user-modal-close,.create-group-modal-close,.delete-group-modal-close,.edit-message-close,.escalate-close,.remove-message-close,.remove-user-close,.group-details-close,.assign-modal-close{background:transparent;border:none;color:var(--text-muted);cursor:pointer;width:32px;height:32px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);flex-shrink:0;padding:0}.close-btn:hover,.modal-close-btn:hover,.user-modal-close:hover,.create-group-modal-close:hover,.delete-group-modal-close:hover,.edit-message-close:hover,.escalate-close:hover,.remove-message-close:hover,.remove-user-close:hover,.group-details-close:hover,.assign-modal-close:hover{background:var(--bg-surface-hover);color:var(--text-main)}.close-btn-circle{width:36px;height:36px;border-radius:50%;background:transparent;border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.close-btn-circle:hover{background:var(--bg-surface-hover);color:var(--text-main)}.modal-container form,.modal-content form{display:flex;flex-direction:column;flex:1;min-height:0}.modal-body,.user-modal-body,.delete-modal-body,.details-modal-body,.create-group-modal-body,.delete-group-modal-body,.edit-message-body,.escalate-modal-body,.remove-message-modal-body,.remove-user-modal-body,.group-details-body,.assign-modal-body{padding:1.25rem;display:flex;flex-direction:column;gap:1rem;overflow-y:auto;flex:1}.modal-footer,.user-modal-footer,.delete-modal-footer,.details-modal-footer,.create-group-modal-footer,.delete-group-modal-footer,.edit-message-footer,.escalate-modal-footer,.remove-message-modal-footer,.remove-user-modal-footer,.group-details-footer,.assign-modal-footer,.approve-modal-footer,.reject-modal-footer{display:flex;gap:.75rem;padding:1rem 1.25rem 1.25rem;border-top:1px solid var(--border-color);background:transparent;flex-shrink:0}.modal-body::-webkit-scrollbar,.modal-form::-webkit-scrollbar,.user-modal-body::-webkit-scrollbar{width:6px}.modal-body::-webkit-scrollbar-track,.modal-form::-webkit-scrollbar-track,.user-modal-body::-webkit-scrollbar-track{background:transparent}.modal-body::-webkit-scrollbar-thumb,.modal-form::-webkit-scrollbar-thumb,.user-modal-body::-webkit-scrollbar-thumb{background-color:var(--border-color);border-radius:20px}.modal-body::-webkit-scrollbar-thumb:hover,.modal-form::-webkit-scrollbar-thumb:hover,.user-modal-body::-webkit-scrollbar-thumb:hover{background-color:var(--text-muted)}.btn-cancel,.btn-submit,.btn-create,.btn-cancel-delete,.btn-confirm-approve,.assign-btn-cancel,.assign-btn-submit{flex:1;padding:.625rem 1.25rem;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;transition:all var(--transition-fast);cursor:pointer;border:none;text-align:center;min-height:40px;display:inline-flex;align-items:center;justify-content:center}.btn-cancel,.btn-cancel-delete,.assign-btn-cancel{background:transparent;border:1px solid var(--border-color);color:var(--text-main)}.btn-cancel:hover,.btn-cancel-delete:hover,.assign-btn-cancel:hover{background:var(--bg-surface-hover);border-color:var(--text-muted)}.btn-submit,.btn-create,.assign-btn-submit{background:var(--primary);color:#fff}.btn-submit:hover:not(:disabled),.btn-create:hover:not(:disabled),.assign-btn-submit:hover:not(:disabled){background:var(--primary-hover)}.btn-submit:disabled,.btn-create:disabled,.assign-btn-submit:disabled{opacity:.5;cursor:not-allowed}.btn-delete-confirm{flex:1;padding:.625rem 1.25rem;border:none;border-radius:var(--radius-md);background:var(--color-red);color:#fff;font-weight:500;font-size:.875rem;cursor:pointer;transition:opacity .2s;min-height:40px;display:inline-flex;align-items:center;justify-content:center}.btn-delete-confirm:hover{opacity:.9}.modal-icon-wrapper{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.modal-icon-wrapper.danger{background:var(--color-red-bg);color:var(--color-red)}.modal-icon-wrapper.warning{background:var(--color-yellow-bg);color:var(--color-yellow)}.modal-icon-wrapper.info{background:var(--color-blue-bg);color:var(--color-blue)}.divider{height:1px;background:var(--border-color);margin:1.5rem 0}.modal-card{border:1px solid var(--border-color);padding:1rem;border-radius:.75rem}@media(max-width:768px){.modal-overlay,.user-modal-overlay,.create-group-modal-overlay,.delete-group-modal-overlay,.edit-message-modal-overlay,.escalate-modal-overlay,.remove-message-modal-overlay,.remove-user-modal-overlay,.group-details-modal-overlay,.assign-modal-overlay{padding:0}.modal-container,.modal-content,.user-modal-content,.details-modal-container,.student-details-modal,.group-details-modal-content,.assign-modal-content{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;border-radius:0;border:none}.delete-modal-container,.delete-group-modal-content,.edit-message-modal-content,.escalate-modal-content,.remove-message-modal-content,.remove-user-modal-content,.approve-modal,.reject-modal,.modal-sm{width:100%!important;height:auto!important;max-width:none!important;max-height:100vh!important;border-radius:0;border:none;align-self:flex-end}.create-group-modal-content{width:100%!important;max-width:none!important;max-height:100vh!important;border-radius:0;border:none;display:flex;flex-direction:column;overflow:hidden}.modal-body,.user-modal-body,.delete-modal-body,.details-modal-body,.create-group-modal-body,.delete-group-modal-body,.edit-message-body,.escalate-modal-body,.remove-message-modal-body,.remove-user-modal-body,.group-details-body,.assign-modal-body{flex:1}.modal-footer,.user-modal-footer,.delete-modal-footer,.details-modal-footer,.create-group-modal-footer,.delete-group-modal-footer,.edit-message-footer,.escalate-modal-footer,.remove-message-modal-footer,.remove-user-modal-footer,.group-details-footer,.assign-modal-footer,.approve-modal-footer,.reject-modal-footer{flex-direction:column;margin-top:auto}.btn-cancel,.btn-submit,.btn-create,.btn-delete-confirm{width:100%}}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-group label{font-size:.875rem;font-weight:500;color:var(--text-main)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:768px){.form-row{grid-template-columns:1fr}}.form-input,.form-select,.form-textarea,.form-group input,.form-group select,.form-group textarea{width:100%;padding:.625rem .875rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.9375rem;color:var(--text-main);background-color:var(--bg-body);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);font-family:Inter,sans-serif;outline:none}.form-input:focus,.form-select:focus,.form-textarea:focus,.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px hsla(var(--primary-h),var(--primary-s),var(--primary-l),.1)}.form-input::placeholder,.form-textarea::placeholder,.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-textarea{resize:vertical;min-height:80px;line-height:1.6}.form-select{cursor:pointer}.form-label{font-size:.875rem;font-weight:500;color:var(--text-main)}.modal-section-title{font-size:.85rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem;font-weight:500}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.info-grid.three-col{grid-template-columns:repeat(3,1fr)}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-label,.info-item label{font-size:.8125rem;color:var(--text-muted);font-weight:500}.info-value{font-size:.9375rem;font-weight:500;color:var(--text-main)}.section-title{font-size:.75rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin:0}.search-input-wrapper{position:relative;width:100%}.search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.search-input{width:100%;padding:.625rem .75rem .625rem 2.5rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.875rem;background:var(--bg-body);color:var(--text-main);outline:none;transition:border-color .2s}@media(max-width:768px){.info-grid,.info-grid.three-col{grid-template-columns:1fr}}.table-container{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card)}.data-table{width:100%;border-collapse:collapse}.data-table thead{background:var(--bg-surface-hover);border-bottom:1px solid var(--border-color)}.data-table th{padding:.875rem 1rem;text-align:left;font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.data-table tbody tr{border-bottom:1px solid var(--border-color);transition:background var(--transition-fast)}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody tr:hover{background:var(--bg-surface-hover)}.data-table td{padding:1rem;font-size:.875rem;color:var(--text-main)}.stat-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem;display:flex;flex-direction:column;gap:.5rem;box-shadow:var(--shadow-card)}.stat-label{font-size:.875rem;color:var(--text-muted);font-weight:500}.stat-value{font-size:2rem;font-weight:600;color:var(--text-main);font-family:Outfit,sans-serif}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2rem}.stats-grid-4{grid-template-columns:repeat(4,1fr)}.stats-grid-2{grid-template-columns:repeat(2,1fr)}.status-badge{padding:.25rem .625rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:500;display:inline-block}.status-badge.inactive{background-color:var(--color-red-bg);color:var(--color-red)}.status-badge.pending{background-color:var(--color-yellow-bg);color:var(--color-yellow)}.table-footer{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-top:1px solid var(--border-color)}.showing-text{font-size:.85rem;color:var(--text-muted)}.pagination-btn{width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-body);color:var(--text-main);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:700}.action-btn{width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:transparent;display:flex;align-items:center;justify-content:center;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast)}.action-btn:hover{background:var(--bg-surface-hover);color:var(--text-main);border-color:var(--text-muted)}.action-btn.delete{color:var(--color-red)}.action-btn.delete:hover{background:var(--color-red-bg);border-color:var(--color-red)}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4);flex-shrink:0}.page-header>h1:not(.page-title){font-size:1.5rem;font-weight:600;color:var(--text-main);margin:0 0 .25rem}.page-header>p:not(.page-subtitle){font-size:.875rem;color:var(--text-muted);margin:0}@media(max-width:1024px){.stats-grid,.stats-grid-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.stats-grid,.stats-grid-4,.stats-grid-2{grid-template-columns:1fr;gap:1rem}.page-header{flex-direction:column;gap:1rem}.table-container{overflow-x:auto}.table-footer{flex-direction:column;gap:1rem}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,sans-serif;background-color:var(--bg-body);color:var(--text-main);line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:Outfit,sans-serif;font-weight:600;color:var(--text-main)}button{cursor:pointer;border:none;background:none;font-family:inherit}a{text-decoration:none;color:inherit}.glass-panel{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.table-container,[class*=-table-container],[class*=-table-wrapper]{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}table{min-width:max-content;width:100%}.bg-green-100,.bg-green-50{background-color:var(--color-green-bg)}.bg-yellow-100{background-color:var(--color-yellow-bg)}.bg-red-100{background-color:var(--color-red-bg)}.bg-blue-100{background-color:var(--color-blue-bg)}.bg-slate-800{background-color:var(--primary)}.text-green-600{color:var(--color-green)}.text-yellow-600{color:var(--color-yellow)}.text-red-600{color:var(--color-red)}.text-blue-600{color:var(--color-blue)}.text-main{color:var(--text-main)}.text-white{color:#fff}.rounded{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-3{gap:.75rem}.gap-4{gap:var(--space-4)}.w-full{width:100%}.h-full{height:100%}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.text-muted{color:var(--text-muted)}.text-success{color:var(--color-green)}.text-error{color:var(--color-red)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:var(--border-color);border-radius:20px}::-webkit-scrollbar-thumb:hover{background-color:var(--text-muted)}.p-2{padding:var(--space-2)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mb-4{margin-bottom:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.6rem 1.25rem;font-size:.875rem;font-weight:500;border-radius:var(--radius-md);transition:all var(--transition-fast);cursor:pointer;font-family:Inter,sans-serif;border:1px solid transparent;height:40px;line-height:1;box-sizing:border-box;align-self:center}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover)}.btn-secondary{background-color:var(--bg-surface-hover);color:var(--text-main);border-color:var(--border-color)}.btn-secondary:hover:not(:disabled){background-color:var(--border-color)}.btn-outline{background-color:transparent;color:var(--text-main);border-color:var(--border-color)}.btn-outline:hover:not(:disabled){background-color:var(--bg-surface-hover);border-color:var(--text-muted)}.btn-ghost{background-color:transparent;color:var(--text-muted)}.btn-ghost:hover:not(:disabled){background-color:var(--bg-surface-hover);color:var(--text-main)}.btn-vertical{flex-direction:column;height:auto!important;padding:2rem 1.5rem!important;gap:1rem!important;text-align:center;min-width:140px}.btn-vertical span{font-size:.9rem;font-weight:500;color:var(--text-muted)}.btn-vertical:hover span{color:var(--text-main)}.btn-icon{width:36px;height:36px;padding:0!important;border-radius:50%!important;display:inline-flex;align-items:center;justify-content:center;background-color:transparent;color:var(--text-muted);border:1px solid transparent}.btn-icon:hover{background-color:var(--bg-surface-hover);color:var(--text-main)}.btn-icon.delete:hover{background-color:var(--color-red-bg);color:var(--color-red)}.btn-sm{padding:0 .75rem;font-size:.8125rem;border-radius:var(--radius-sm);height:32px}.btn-md{height:40px}.btn-lg{padding:0 1.5rem;font-size:1rem;border-radius:var(--radius-lg);height:48px}.rounded-lg{border-radius:var(--radius-sm)}.page-container{padding:24px;width:100%}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6)}.page-header h1{font-size:1.75rem;font-weight:600;color:var(--text-main);margin:0 0 .25rem}.page-header p{font-size:.875rem;color:var(--text-muted);margin:0}.page-title{font-size:1.75rem;font-weight:600;margin:0;color:var(--text-main)}.page-subtitle{font-size:.875rem;color:var(--text-muted);margin-top:.25rem}.panel-page{display:flex;flex-direction:column;gap:var(--space-6)}.panel-page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4)}.panel-page-title{font-size:1.75rem;font-weight:600;color:var(--text-main);margin:0}.panel-page-subtitle{font-size:.875rem;color:var(--text-muted);margin:.25rem 0 0}.page-actions{display:flex;align-items:center;gap:10px}.page-content{margin-top:0}.app-loader{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.625rem;color:var(--text-muted)}.app-loader-spinner{width:32px;height:32px;border-radius:50%;border:3px solid color-mix(in srgb,var(--border-color) 75%,transparent);border-top-color:var(--primary);animation:appLoaderSpin .8s linear infinite}.app-loader-label{font-size:.875rem;color:var(--text-muted)}@keyframes appLoaderSpin{to{transform:rotate(360deg)}}.skeleton-card{animation:pulse 1.5s infinite}.skeleton-header{height:40px;width:40px;border-radius:50%;background:#2a2a2a;margin-bottom:10px}.skeleton-line{height:12px;background:#2a2a2a;margin-bottom:8px;border-radius:4px}.skeleton-line.short{width:60%}.chat-list-item.skeleton{display:flex;gap:10px;padding:10px;opacity:.7}.skeleton-avatar{width:38px;height:38px;border-radius:50%;background:#2a2a2a}.skeleton-line{height:10px;background:#2a2a2a;border-radius:4px;animation:pulse 1.5s infinite}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.app-header,.topbar{background-color:var(--bg-sidebar);border-bottom:1px solid var(--border-color)}[data-theme=dark]{--bg-sidebar: hsl(215, 25%, 15%)}.app-header,.topbar{height:auto;min-height:56px;padding:0 16px;display:flex;align-items:center;margin-bottom:1rem}.login-container{display:flex;min-height:100vh;min-height:100dvh;width:100vw;overflow:auto;background-color:var(--bg-surface)}.login-left{display:none;width:50%;background-color:#204560;position:relative;align-items:center;justify-content:center;padding:3rem}[data-theme=dark] .login-left{background-color:#204560}.login-left-content{width:100%;max-width:800px}.login-left-content img{width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 25px 50px -12px rgba(0,0,0,.15))}[data-theme=dark] .login-left-content img{filter:brightness(.72) contrast(1.06) saturate(.85) drop-shadow(0 25px 50px -12px rgba(0,0,0,.55))}.login-bg-pattern{position:absolute;top:0;left:0;width:100%;height:100%;opacity:.1;pointer-events:none;background-image:radial-gradient(circle at 20% 20%,#244B66 1px,transparent 1px);background-size:40px 40px}[data-theme=dark] .login-bg-pattern{opacity:.16;background-image:radial-gradient(circle at 20% 20%,#93b4ca 1px,transparent 1px)}.login-right{width:100%;display:flex;align-items:center;justify-content:center;padding:2rem;overflow-y:auto}.login-card{width:100%;max-width:440px;padding:2.25rem 2.25rem 2rem;background:var(--bg-surface);border-radius:1rem;border:1px solid var(--border-color);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.signup-page .login-right{align-items:flex-start;padding-top:1.25rem;padding-bottom:1.25rem}.signup-page .login-card{max-width:520px;max-height:calc(100dvh - 2.5rem);overflow-y:auto}.login-header{text-align:center;margin-bottom:1.75rem}.login-header h1{font-size:1.5rem;font-weight:700;color:var(--text-main);margin-bottom:.5rem}.form-group{display:flex;flex-direction:column;gap:.375rem;margin-bottom:1.05rem}.form-label{font-size:.875rem;font-weight:500;color:var(--text-main);margin-left:.25rem}.input-wrapper{display:flex;align-items:center;gap:.5rem;width:100%;border:1px solid var(--border-color);border-radius:999px;background-color:var(--bg-surface);min-height:48px;padding:.5rem .85rem .5rem 1.3rem}.input-wrapper:focus-within{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.input-icon{color:var(--text-muted);display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:1.25rem;margin-left:.1rem}.login-card .input-wrapper .form-input{flex:1;min-width:0;appearance:none;-webkit-appearance:none;border:none!important;outline:none!important;box-shadow:none!important;background:transparent!important;padding:0!important;line-height:1.35;font-size:.875rem}.login-card .input-wrapper .form-input:focus,.login-card .input-wrapper .form-input:active{border:none!important;outline:none!important;box-shadow:none!important;background:transparent!important}.login-card .input-wrapper input[type=password]::-ms-reveal,.login-card .input-wrapper input[type=password]::-ms-clear{display:none}select.form-input{appearance:none!important;-webkit-appearance:none!important;-moz-appearance:none!important;cursor:pointer!important;background-image:none!important;padding-right:2rem}.login-btn-primary{width:100%;margin-top:1.5rem;padding:.75rem 1rem;background-color:var(--primary);color:#fff;font-weight:500;border-radius:.5rem;box-shadow:0 10px 15px -3px #244b6633;transition:background-color .2s;border:none;cursor:pointer}.login-btn-primary:hover{background-color:var(--primary-hover)}@media(min-width:1024px){.login-left{display:flex}.login-right{width:50%}.signup-page .login-right{align-items:center}}.form-input:-webkit-autofill,.form-input:-webkit-autofill:hover,.form-input:-webkit-autofill:focus,.form-input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px var(--bg-surface, #ffffff) inset!important;-webkit-text-fill-color:var(--text-main, #000000)!important;border-radius:.5rem;transition:background-color 5000s ease-in-out 0s}.password-toggle-btn{background:none;border:none;cursor:pointer;color:var(--text-muted);display:flex;align-items:center;justify-content:center;padding:0;margin-left:.15rem;width:1.25rem;height:1.25rem;flex:0 0 auto}.password-toggle-btn:hover{color:var(--text-main)}.password-toggle-btn:active{transform:scale(.92)}@media(max-width:480px){.login-right{padding:1.25rem 1rem;align-items:center}.login-card{padding:1.6rem 1.15rem;border-radius:.75rem}.login-header{margin-bottom:1.5rem}.login-header h1{font-size:1.3rem}.login-btn-primary{margin-top:1.25rem;padding:.8rem 1rem}}@media(max-width:360px){.login-right{padding:1rem .75rem;align-items:center}.login-card{padding:1.5rem 1rem}}[data-theme=dark] .password-toggle-btn{color:#ffffffa6}[data-theme=dark] .password-toggle-btn:hover{color:#fff}.signup-page .login-right{align-items:center;padding:1rem 1.25rem}.signup-page .login-card{max-width:520px;max-height:none;overflow:visible;padding:1.5rem 1.45rem 1.25rem}.signup-page .login-header{margin-bottom:1rem}.signup-page .login-header h1{font-size:1.32rem;margin-bottom:.25rem}.signup-page .login-header .text-sm{font-size:.82rem}.signup-page .signup-form{display:flex;flex-direction:column}.signup-page .signup-form-grid{display:flex;flex-direction:column;gap:.65rem}.signup-page .invite-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.signup-page .invite-summary-card{padding:.8rem .85rem;border:1px solid var(--border-color);border-radius:.9rem;background:var(--bg-body);min-width:0}.signup-page .invite-summary-note{grid-column:1 / -1}.signup-page .invite-summary-label{margin-bottom:.25rem;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.signup-page .invite-summary-value{font-size:.88rem;font-weight:600;color:var(--text-main);word-break:break-word}.signup-page .signup-form-grid .form-group{margin-bottom:0;align-self:start;width:100%}.signup-page .signup-form-grid .signup-full{width:100%}.signup-page .form-label{font-size:.83rem}.signup-page .input-wrapper{height:44px;min-height:44px;padding:.4rem .8rem .4rem 1.05rem;gap:.4rem}.signup-page .phone-input-wrapper{display:flex;align-items:center}.signup-page .phone-country-select{border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-main);border-radius:.6rem;padding:.38rem .45rem;font-size:.79rem;min-width:130px;max-width:145px;outline:none}.signup-page .phone-country-select:focus{border-color:var(--primary)}.signup-page .input-icon{width:1.1rem;margin-left:0}.signup-page .login-card .input-wrapper .form-input{font-size:.84rem;line-height:1.2}.signup-page .signup-submit-btn{margin-top:.75rem}.signup-page .signup-link-btn{width:100%;margin-top:.7rem;padding:.72rem 1rem;border-radius:.9rem;border:1px solid var(--border-color);background:transparent;color:var(--text-main);font-size:.9rem;font-weight:600;transition:background-color .15s ease,border-color .15s ease}.signup-page .signup-link-btn:hover:not(:disabled){background:var(--bg-body);border-color:var(--text-muted)}@media(max-width:1024px){.signup-page .login-right{align-items:flex-start}.signup-page .login-card{max-width:500px;margin:0 auto}.signup-page .signup-form-grid{gap:.7rem}}@media(max-width:480px){.signup-page .login-right{padding:.9rem .85rem 1.1rem}.signup-page .login-card{padding:1.15rem .95rem .95rem;border-radius:.75rem}.signup-page .login-header{margin-bottom:.95rem}.signup-page .login-header h1{font-size:1.25rem}.signup-page .input-wrapper{height:42px;min-height:42px}.signup-page .phone-country-select{min-width:112px;max-width:120px;font-size:.75rem}.signup-page .signup-submit-btn{margin-top:.8rem}.signup-page .invite-summary-grid{grid-template-columns:1fr}}.modal-container .form-input{width:100%;padding:8px 10px;border-radius:10px;background-color:#1f2a37!important;border:1px solid #374151!important;color:#fff!important;font-size:14px;outline:none}.modal-container .form-input::placeholder{color:#9ca3af}.modal-container .form-input:focus{border-color:#3b82f6!important;box-shadow:0 0 0 1px #3b82f6}.modal-container select.form-input{appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer}.modal-container select.form-input option{background-color:#1f2a37;color:#fff;font-size:12px;line-height:1.1;padding:2px 6px}.modal-container .select-wrapper{position:relative}.modal-container .supervisor-select{padding-right:2rem;background-image:none!important}.modal-container select[name=countryCode].supervisor-select{padding-top:6px;padding-bottom:6px;font-size:13px;max-height:2.25rem}.modal-container select[name=countryCode].supervisor-select option{max-height:180px;overflow-y:auto;overscroll-behavior:contain;scroll-behavior:smooth}.modal-container .select-caret{position:absolute;right:.7rem;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.modal-container .form-group{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.modal-container .form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}[data-theme=light] .modal-container .form-input{background-color:#fff!important;border:1px solid #d1d5db!important;color:#111827!important}[data-theme=light] .modal-container .form-input::placeholder{color:#6b7280!important}[data-theme=light] .modal-container .supervisor-select{background-image:none!important}[data-theme=light] .modal-container select.form-input option{background-color:#fff;color:#111827}[data-theme=light] .modal-container .select-caret{color:#6b7280}[data-theme=light] .modal-container label{color:#374151!important}.status-badge.active,.status-badge.accepted,.status-badge.status-accepted{background-color:transparent;color:var(--color-green, #16a34a)}.dark .status-badge.active,.dark .status-badge.accepted,.dark .status-badge.status-accepted,[data-theme=dark] .status-badge.active,[data-theme=dark] .status-badge.accepted,[data-theme=dark] .status-badge.status-accepted{background-color:transparent!important;color:#4ade80!important}.invitations-page{display:flex;flex-direction:column;gap:1rem}.invitations-section-title{font-size:1.125rem;margin-bottom:.25rem}.invitations-form{display:flex;flex-direction:column;gap:1rem}.invitations-role-field{max-width:320px}.invitations-role-field-full{max-width:100%}.invitations-form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.invitations-empty-row{text-align:center;color:var(--text-muted)}.invitations-role-cell{text-transform:capitalize}.invitations-modal-body{padding:1.25rem}.invitations-modal-footer{padding:1rem 1.25rem;border-top:1px solid var(--border-color)}@media(max-width:768px){.invitations-form-actions{justify-content:stretch}.invitations-form-actions .btn{flex:1}}.action-btn{width:36px;height:36px;min-width:36px;min-height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:transparent;color:inherit;border:1px solid var(--border-color, #e5e7eb);cursor:pointer;transition:all .2s ease;flex-shrink:0;padding:0}.action-btn:hover:not(:disabled){background:var(--bg-surface-hover, #f3f4f6);border-color:var(--border-color, #d1d5db);color:inherit;transform:translateY(-1px)}.action-btn:active:not(:disabled){transform:scale(.95)}.action-btn:disabled{color:#6b7280!important;border-color:transparent!important;background:transparent!important;opacity:.5;cursor:not-allowed}.action-btn.delete:hover:not(:disabled){background:var(--color-red-bg, #fee2e2);border-color:var(--color-red, #ef4444);color:var(--color-red, #ef4444)}.delete-modal-container{width:460px;max-width:95%}.delete-modal-header{padding:1.25rem 1.25rem 1rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color)}.delete-modal-body{padding:1.5rem 1.25rem 1rem!important;color:var(--text-muted);font-size:.9375rem;line-height:1.5}.delete-modal-body p:first-child{margin-top:0}.delete-modal-footer{padding:.75rem 1.25rem 1.25rem;display:flex;justify-content:space-between;gap:1rem}.modal-content{border-radius:16px;overflow:hidden}.aum-professional-info{padding:20px;margin:16px;border-radius:14px;background:var(--bg-surface);border:1px solid var(--border-color);box-shadow:0 4px 20px #0000000d}.aum-professional-header{display:flex;align-items:center;gap:16px;margin-bottom:20px}.aum-professional-avatar{width:60px;height:60px;border-radius:50%;object-fit:cover}.aum-professional-details{flex:1}.aum-professional-name{font-size:1.1rem;font-weight:600;color:var(--text-main);margin-bottom:4px}.aum-professional-rating{display:flex;align-items:center;gap:6px;font-size:.85rem}.aum-sessions-count{color:var(--text-muted)}.aum-status-badge{padding:6px 14px;border-radius:999px;font-size:12px;font-weight:500}.aum-status-badge.active{background:#d1fae5;color:#059669}.aum-status-badge.inactive{background:#fee2e2;color:#dc2626}.aum-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.aum-stat-item{border-radius:12px;padding:14px;background:var(--bg-body);border:1px solid var(--border-color);display:flex;flex-direction:column;gap:6px;transition:all .2s ease}.aum-stat-item:hover{transform:translateY(-2px)}.aum-stat-label{font-size:.75rem;color:var(--text-muted)}.aum-stat-value{font-size:1.1rem;font-weight:700;color:var(--text-main)}.aum-users-table-container{padding:0 16px;margin-top:16px}.aum-users-table{width:100%;border-collapse:collapse;border-radius:12px;overflow:hidden}.aum-users-table th{font-size:.75rem;font-weight:500;color:var(--text-muted);text-align:left;padding:12px;border-bottom:1px solid var(--border-color)}.aum-users-table td{padding:14px 12px;font-size:.9rem;border-bottom:1px solid var(--border-color)}.aum-users-table tbody tr{transition:background .2s}.aum-users-table tbody tr:hover{background:#3b82f60d}.aum-user-cell{display:flex;align-items:center;gap:10px}.aum-user-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover}.aum-btn-remove{background:#fee2e2;border:none;color:#dc2626;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:8px;cursor:pointer;transition:all .2s ease}.aum-btn-remove:hover{background:#fecaca;transform:scale(1.05)}.modal-footer{display:flex;gap:12px;padding:16px}.modal-footer button{flex:1;border-radius:10px}[data-theme=dark] .aum-professional-info,[data-theme=dark] .aum-stat-item{background:#1e293b;border-color:#334155}[data-theme=dark] .aum-users-table th,[data-theme=dark] .aum-users-table td{border-color:#334155}[data-theme=dark] .aum-users-table tbody tr:hover{background:#ffffff0a}[data-theme=dark] .aum-btn-remove{background:#dc262633}[data-theme=dark] .aum-btn-remove:hover{background:#dc26264d}@media(max-width:768px){.aum-stats-row{grid-template-columns:repeat(2,1fr)}.aum-users-table{display:block;overflow-x:auto}}.anum-professional-info{padding:var(--space-4) var(--space-6);background:var(--bg-body);border-bottom:1px solid var(--border-color);font-size:.9rem;color:var(--text-muted);display:flex;gap:var(--space-2)}.anum-professional-info strong{color:var(--text-main)}.anum-search-box{padding:var(--space-5) var(--space-6);position:relative}.anum-search-icon{position:absolute;left:calc(var(--space-6) + 14px);top:50%;transform:translateY(-50%);color:var(--text-muted)}.anum-search-input{width:100%;padding:.875rem 1rem .875rem 2.75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.9rem;background:var(--bg-body);color:var(--text-main);outline:none;transition:border-color .2s}.anum-search-input:focus{border-color:var(--primary)}.anum-search-input::placeholder{color:var(--text-muted)}.anum-users-list{flex:1;overflow-y:auto;max-height:350px;padding:var(--space-2) var(--space-6)}.anum-user-item{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:var(--space-3);cursor:pointer;transition:all .2s}.anum-user-item:hover{background:var(--bg-body);border-color:var(--primary)}.anum-user-item.selected{background:var(--primary-light);border-color:var(--primary)}.anum-user-checkbox{width:24px;height:24px;border:2px solid var(--border-color);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s}.anum-user-item.selected .anum-user-checkbox{background:var(--primary);border-color:var(--primary);color:#fff}.anum-user-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;flex-shrink:0}.anum-user-details{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.anum-user-name{font-weight:600;font-size:.95rem;color:var(--text-main)}.anum-user-email{font-size:.8rem;color:var(--text-muted)}.anum-user-date{font-size:.8rem;color:var(--text-muted);flex-shrink:0}.anum-no-users{text-align:center;padding:var(--space-8);color:var(--text-muted);font-size:.95rem}.anum-selected-count{padding:var(--space-3) var(--space-6);background:var(--primary-light);color:var(--primary);font-size:.875rem;font-weight:500;text-align:center}[data-theme=dark] .anum-professional-info{background:var(--dark-surface-deep)}[data-theme=dark] .anum-search-input{background:var(--dark-surface-deep);border-color:var(--dark-border)}[data-theme=dark] .anum-user-item{border-color:var(--dark-border)}[data-theme=dark] .anum-user-item:hover{background:var(--dark-surface-raised);border-color:var(--primary)}[data-theme=dark] .anum-user-item.selected{background:rgba(var(--primary-rgb),.2)}[data-theme=dark] .anum-user-checkbox{border-color:var(--dark-border-strong)}@media(max-width:768px){.anum-search-box{padding:var(--space-4)}.anum-search-icon{left:calc(var(--space-4) + 14px)}.anum-users-list{padding:var(--space-2) var(--space-4)}.anum-user-item{padding:var(--space-3);gap:var(--space-3)}.anum-user-date{display:none}}.professionals-page{display:flex;flex-direction:column}.professionals-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-8);gap:1rem}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem}.add-professional-btn:hover{background-color:var(--primary-hover)}.professionals-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-6);margin-bottom:1rem;flex-shrink:0;margin-top:1.5rem}.empty-state-container{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:2rem;text-align:center;background:transparent;min-height:400px}.empty-state-illustration{width:280px;height:auto;margin-bottom:var(--space-6);opacity:.9}.empty-state-title{font-size:1.25rem;font-weight:600;color:var(--text-main);margin-bottom:var(--space-2)}.empty-state-description{color:var(--text-muted);max-width:400px;margin-bottom:var(--space-6);font-size:.875rem;line-height:1.5}.professionals-grid-container{padding-bottom:1rem}.professionals-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6);margin-bottom:var(--space-8)}.professional-card{padding:1.25rem;display:flex;flex-direction:column;gap:1rem;transition:transform var(--transition-fast),box-shadow var(--transition-fast);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:14px;box-shadow:0 1px 2px #0000000a}.professional-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.professional-card .card-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:.75rem}.professional-card .header-info{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:.75rem;min-width:0;text-align:left;flex:1}.professional-card .avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;flex-shrink:0}.professional-card .info-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.professional-card .info-text h3{font-size:1rem;font-weight:600;color:var(--text-main);margin:0;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rating{display:flex;align-items:center;gap:4px;font-size:.8rem;color:var(--text-muted)}.rating svg{fill:var(--color-yellow);color:var(--color-yellow)}.status-badge{padding:2px 8px;border-radius:var(--radius-full);font-size:.75rem;font-weight:500}.status-badge.active{background-color:var(--color-green-bg);color:var(--color-green)}.card-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-3)}.stat-box{background:var(--bg-body);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);border:1px solid var(--border-color);display:flex;flex-direction:column;justify-content:space-between;gap:.25rem;min-height:78px}.stat-box.clickable{cursor:pointer;transition:all .2s ease}.stat-box.clickable:hover{border-color:var(--primary);background:var(--bg-surface-hover)}.stat-label{display:block;font-size:.75rem;color:var(--text-muted);margin-bottom:4px}.stat-value{font-size:1.125rem;font-weight:600;color:var(--text-main);white-space:nowrap}.status-badge{padding:6px 14px;border-radius:var(--radius-full);font-size:.75rem;font-weight:600;display:inline-block;white-space:nowrap}.status-badge.status-available{background-color:var(--color-green-bg);color:var(--color-green)}.status-badge.status-offline{background-color:var(--color-red-bg);color:var(--color-red)}.card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:.25rem;border-top:1px solid var(--border-color);gap:.75rem}.contact-info{font-size:.8rem;color:var(--text-muted);line-height:1.6;min-width:0}.contact-info p{margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.actions{display:flex;gap:.375rem;flex-shrink:0}.actions .button-icon-only{width:36px;height:36px;padding:0;border-radius:8px}.icon-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:12px;border:1px solid var(--border-color);color:var(--text-main);background:transparent;transition:all var(--transition-fast)}.icon-btn:hover{color:var(--primary);border-color:var(--primary);background:var(--bg-surface-hover)}.icon-btn.delete{color:var(--color-red)}.icon-btn.delete:hover{color:#fff;border-color:var(--color-red);background:var(--color-red)}.pagination-container{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-4);border-top:1px solid var(--border-color)}.pagination-controls{display:flex;gap:var(--space-2)}.pagination-btn{width:36px;height:36px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-body);color:var(--text-main);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);cursor:pointer}@media(max-width:1024px){.professionals-stats-grid{grid-template-columns:repeat(2,1fr)}.professionals-grid{grid-template-columns:1fr}}@media(max-width:768px){.professionals-header{flex-direction:column;align-items:flex-start;gap:1rem}.professionals-header button{align-self:flex-start}.professionals-stats-grid{grid-template-columns:1fr}.card-header{gap:.75rem}.status-badge{flex-shrink:0}.card-footer{flex-direction:column;align-items:flex-start;gap:1.5rem}.actions{width:100%;justify-content:flex-start}.pagination-container{flex-direction:column;gap:1rem}.page-header{flex-direction:column;align-items:flex-start;gap:.75rem;margin-bottom:0}.page-header button{width:100%;justify-content:center}}@media(max-width:480px){.card-stats{grid-template-columns:1fr}}.card-stats-modern{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem;margin-top:.25rem}.card-stats-modern .shared-stat-card{padding:.75rem .875rem;min-height:auto;min-width:0;border-radius:10px;box-shadow:none;gap:4px;background:var(--bg-body);border:1px solid var(--border-color);overflow:hidden}.card-stats-modern .shared-stat-card__label{font-size:.7rem;font-weight:500;text-transform:none;letter-spacing:0;color:var(--text-muted);opacity:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-stats-modern .shared-stat-card__value{font-size:1.25rem;font-weight:600;line-height:1.2;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.card-stats-modern .shared-stat-card__subtext{font-size:.62rem;opacity:.6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-stats-modern .shared-stat-card__icon{width:26px;height:26px}.card-stats-modern .shared-stat-card__icon svg{width:14px;height:14px}@media(prefers-color-scheme:light){.card-stats-modern .shared-stat-card{background:#00000006;border-color:#0000000f}}[data-theme=light] .card-stats-modern .shared-stat-card{background:#00000006;border-color:#0000000f}@media(max-width:640px){.card-stats-modern{grid-template-columns:repeat(2,1fr);gap:.4rem;overflow:hidden}.card-stats-modern .shared-stat-card__value{font-size:.78rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.card-stats-modern .shared-stat-card{padding:.5rem;min-width:0;overflow:hidden}.card-stats-modern .shared-stat-card__label,.card-stats-modern .shared-stat-card__subtext{font-size:.6rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-header .header-info .info-text h3{font-size:.95rem;line-height:1.2}.card-footer{flex-direction:column!important;align-items:flex-start!important;gap:1rem}.contact-info{text-align:left!important;width:100%}.actions{width:100%;justify-content:flex-start}}.chat-page{display:flex;flex-direction:column;height:calc(100vh - 110px)}.chat-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);display:flex;flex-direction:column;flex:1;overflow:hidden;box-shadow:var(--shadow-sm)}.chat-header{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--border-color);background:var(--bg-surface)}.header-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover}.back-btn{width:36px;height:36px;border:none;background:transparent;display:flex;align-items:center;justify-content:center;color:var(--text-muted);cursor:pointer;transition:all .2s}.back-btn:hover{color:var(--text-main);background:var(--bg-surface-hover)}.chat-header-info h2{font-size:1.125rem;font-weight:600;color:var(--text-main);margin-bottom:2px}.chat-header-info p{font-size:.875rem;color:var(--text-muted)}.message-list{flex:1;overflow-y:auto;padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-6);background:transparent}.message-item{display:flex;flex-direction:column;max-width:65%}.message-item.sent{align-self:flex-end;align-items:flex-end}.message-item.received{align-self:flex-start;align-items:flex-start}.sender-name{font-size:.75rem;color:var(--text-muted);margin-bottom:4px;margin-left:2px}.message-item.sent .message-bubble{background-color:var(--primary);color:#fff;border-bottom-right-radius:2px}.message-item.received .message-bubble{background-color:var(--bg-surface-hover);color:var(--text-main);border-bottom-left-radius:2px;border:1px solid var(--border-color)}.message-time{font-size:.7rem;margin-top:4px;color:var(--text-muted);opacity:.8;text-align:right;display:block}.chat-input-area{padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-color);background:var(--bg-surface);display:flex;align-items:center;gap:var(--space-3)}.input-wrapper{flex:1;display:flex;align-items:center;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-full);padding:0 var(--space-4);transition:border-color .2s}.input-wrapper:focus-within{border-color:var(--primary)}.attach-btn{color:var(--text-muted);background:transparent;border:none;cursor:pointer;padding:0;margin-right:var(--space-2);display:flex;align-items:center}.chat-input{flex:1;border:none;background:transparent;padding:.75rem 0;font-size:.95rem;color:var(--text-main);outline:none}.send-btn{width:44px;height:44px;border-radius:12px;background:var(--primary);color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity .2s}.send-btn:hover{background:var(--primary-dark)}.send-btn:disabled{background:var(--color-gray-300);cursor:not-allowed}@media(max-width:1024px){.chat-page{margin:calc(-1 * var(--space-2)) calc(-1 * var(--space-4)) calc(-1 * var(--space-4));height:calc(100vh - 80px)}.chat-card{border-radius:0;border-left:none;border-right:none;border-bottom:none}}@media(max-width:768px){.message-list{padding:var(--space-4) var(--space-3);gap:var(--space-4)}.message-item{max-width:85%}.chat-header{padding:var(--space-3) var(--space-4)}.chat-input-area{padding:var(--space-3) var(--space-3)}}.create-group-modal-content{width:90%;max-width:500px}.form-input[type=number]{appearance:textfield}.form-input::-webkit-outer-spin-button,.form-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.form-input{background-color:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-main);height:44px}.form-textarea{min-height:90px;resize:none}.modal-body{display:flex;flex-direction:column;gap:18px}.form-group label{font-size:14px;color:var(--text-muted);margin-bottom:6px}.modal-footer{display:flex;gap:12px}.btn-cancel,.btn-submit{flex:1}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.form-select{height:44px;background-color:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-main)}.modal-content .form-input{height:44px;padding:10px 12px;line-height:normal!important;display:block!important}.modal-content .form-input::placeholder{line-height:normal}.modal-content input{display:block!important}.modal-content .form-group{display:flex;flex-direction:column}.checkbox-inline{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-inline input{width:16px;height:16px;cursor:pointer}.delete-warning-text{font-size:.875rem;color:var(--text-main);line-height:1.6;margin:0}.delete-note-text{font-size:.875rem;color:var(--text-muted);margin:0}.delete-note-text strong{color:var(--text-main);font-weight:600}.group-details-modal-content{width:90%;max-width:800px}.group-details-badge{font-size:.75rem;padding:.25rem .75rem;border-radius:999px;font-weight:500;margin-left:.5rem;background:var(--bg-surface-hover);color:var(--text-muted)}.group-details-badge.theme-anxiety{background:#ebf5ff;color:#0073e6}.group-details-badge.theme-stress{background:#ffebeb;color:#e60000}.group-details-badge.theme-coping{background:#ebfff5;color:#00b359}.group-details-info-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;padding:1.25rem;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:1.5rem}.group-info-item{display:flex;flex-direction:column;gap:.5rem}.group-info-label{font-size:.75rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.025em}.group-info-value{font-size:1rem;font-weight:600;color:var(--text-main)}.group-members-section{border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.group-members-header{display:flex;padding:1rem;background:var(--bg-body);border-bottom:1px solid var(--border-color);font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase}.group-members-list{max-height:300px;overflow-y:auto}.group-member-row{display:flex;align-items:center;padding:1rem;border-bottom:1px solid var(--border-color);transition:background .1s}.group-member-row:last-child{border-bottom:none}.group-member-row:hover{background:var(--bg-surface-hover)}.col-user{flex:2;display:flex;align-items:center;gap:.75rem}.col-sessions,.col-join{flex:1;text-align:center}.col-status{flex:1;text-align:right;display:flex;justify-content:flex-end}.member-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.member-name{font-size:.875rem;font-weight:500;color:var(--text-main)}.member-status{font-size:.75rem;padding:.25rem .75rem;border-radius:999px;font-weight:600}.member-status.active{background:var(--color-green-bg);color:var(--color-green)}.member-status.inactive{background:var(--color-red-bg);color:var(--color-red)}@media(max-width:768px){.group-details-info-row{grid-template-columns:1fr;gap:1rem}.hide-mobile{display:none!important}}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:-1rem;gap:1rem}.groups-page{display:flex;flex-direction:column;gap:0;padding-top:0}.groups-header{display:flex;justify-content:space-between;align-items:flex-start}.btn-create-group{background:var(--primary);color:#fff;padding:.625rem 1.25rem;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;border:none;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn-create-group:hover{background:var(--primary-hover)}.groups-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);margin-bottom:1rem;margin-top:1.5rem}.groups-table-container{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card)}.groups-table{width:100%;min-width:900px;border-collapse:collapse}.groups-table thead{background:var(--bg-surface-hover);border-bottom:1px solid var(--border-color)}.groups-table th{padding:.875rem 1rem;text-align:left;font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.groups-table th:last-child,.groups-table td:last-child{text-align:center}.groups-table tbody tr{border-bottom:1px solid var(--border-color);transition:background var(--transition-fast)}.groups-table tbody tr:hover{background:var(--bg-surface-hover)}.groups-table tbody tr:last-child{border-bottom:none}.groups-table td{padding:1rem;font-size:.875rem;color:var(--text-main)}.group-name-cell{display:flex;align-items:center;gap:.75rem;font-weight:500}.group-icon{width:32px;height:32px;background:var(--bg-surface-hover);border:1px solid var(--border-color);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-muted);flex-shrink:0}.active-count{color:var(--color-green);font-weight:500}.action-buttons{display:flex;gap:.5rem;align-items:center;justify-content:center}.action-btn{width:36px;height:36px;min-width:36px;min-height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:var(--bg-surface-hover);color:var(--text-muted);border:1px solid var(--border-color);cursor:pointer;transition:all .2s ease;flex-shrink:0}.action-btn:hover{background:var(--color-blue-bg);color:var(--primary);border-color:var(--color-blue);transform:translateY(-1px)}.table-footer{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-top:1px solid var(--border-color);background:var(--bg-surface)}.pagination-btn{width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-main);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;font-size:.875rem}.pagination-btn:hover{background:var(--bg-surface-hover);border-color:var(--primary);color:var(--primary)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.error{color:var(--color-red);background:var(--color-red-bg);padding:.75rem 1rem;border-radius:var(--radius-md);margin-bottom:1rem;font-size:.875rem}.skeleton-line{height:10px;background:var(--border-color);border-radius:4px;animation:groupsPulse 1.4s ease-in-out infinite}.skeleton-badge{width:80px;height:20px;border-radius:999px;background:var(--border-color);animation:groupsPulse 1.4s infinite}.skeleton-btn{width:90px;height:32px;border-radius:6px;background:var(--border-color);animation:groupsPulse 1.4s infinite}@keyframes groupsPulse{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}@media(max-width:1200px){.groups-table{font-size:.8125rem}.groups-table th,.groups-table td{padding:.75rem}}@media(max-width:768px){.groups-stats{grid-template-columns:1fr}.groups-header{flex-direction:column;gap:1rem}.btn-create-group{width:100%}.groups-table-container{overflow-x:auto}.groups-table{min-width:1000px}}.chat-info-header{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.25rem;border-bottom:1px solid var(--border-color);flex-shrink:0;min-width:0}@media(max-width:768px){.chat-page{padding:0;overflow:hidden}.chat-container{border-radius:var(--radius-lg);padding:0;width:100%;overflow:hidden}.chat-info-header{padding:.6rem .75rem;gap:.4rem;overflow:hidden}.chat-info-header>div:last-child{display:none}.message-wrapper{max-width:88%}.chat-messages{padding:.75rem;gap:.75rem}.chat-input-area{padding:.6rem .75rem}}@media(max-width:480px){.message-wrapper{max-width:92%}}.chat-page{height:100%;display:flex;flex-direction:column;padding:0 var(--space-6) var(--space-6) var(--space-6);overflow:hidden;background-color:var(--bg-body);--members-toggle-active-bg: #244A66;--members-toggle-active-text: #fff}[data-theme=dark] .chat-container,[data-theme=dark] .input-wrapper{background:#1e293b!important;border-color:#334155!important}[data-theme=dark] .btn-back{background:#1e293b!important;border-color:#334155;color:#f1f5f9}[data-theme=dark] .chat-page{--members-toggle-active-text: #fff}.chat-header{margin-bottom:1rem;display:flex;align-items:center}.btn-back{width:40px;height:40px;border-radius:50%;border:1px solid var(--border-color);background:var(--bg-surface);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-main);transition:all .2s}.btn-back:hover{background:var(--bg-surface-hover)}.chat-container{background:var(--bg-surface)!important;border-radius:var(--radius-lg);flex:1;display:flex;flex-direction:column;overflow:hidden;padding:1.5rem 2rem;box-shadow:var(--shadow-sm)}.chat-info-header{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.25rem;border-bottom:1px solid var(--border-color);margin-bottom:0;flex-shrink:0}.chat-title{font-size:1.5rem;font-weight:700;color:var(--text-main);margin:0 0 .25rem}.chat-subtitle{font-size:.875rem;color:var(--text-muted);margin:0}.live-session-banner{background:linear-gradient(90deg,#2a6f9e,#174263);border-radius:var(--radius-md);padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;color:#fff;margin-bottom:2rem}.live-indicator{display:flex;align-items:center;gap:1rem}.dot{width:8px;height:8px;background:#ff5252;border-radius:50%;box-shadow:0 0 0 2px #ff52524d}.live-text{display:flex;flex-direction:column}.live-title{font-weight:500;font-size:.875rem;opacity:.9}.live-time{font-weight:600;font-size:.95rem}.join-link{color:#fff;text-decoration:underline;font-size:.875rem;font-weight:500}.chat-messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:1.5rem;padding-right:.5rem;margin-bottom:1.5rem}.message-wrapper{display:flex;flex-direction:column;gap:.25rem;max-width:60%}.other-message{align-self:flex-start}.my-message{align-self:flex-end;align-items:flex-end}.message-user{font-size:.75rem;color:var(--primary);font-weight:500;margin-left:.5rem}.message-bubble{padding:.75rem 1rem;border-radius:12px;font-size:.95rem;line-height:1.5;position:relative}.other-message .message-bubble{background:#eff6ff;color:var(--text-main);border-top-left-radius:2px}[data-theme=dark] .other-message .message-bubble{background:var(--bg-surface-hover);color:var(--text-main)}.my-message .message-bubble{background:var(--primary);color:#fff;border-bottom-right-radius:2px}.message-time{font-size:.7rem;color:var(--text-muted);margin:0 .5rem}.my-message .message-time{text-align:right}.chat-input-area{padding-top:1rem;border-top:1px solid var(--border-color)}.input-wrapper{display:flex;align-items:center;gap:.75rem;background:var(--bg-surface)!important;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.5rem}.chat-input{flex:1;border:none;outline:none;font-size:.95rem;padding:.5rem;color:var(--text-main)}.btn-attach,.btn-send{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);border:none;background:transparent;cursor:pointer;color:var(--text-muted);transition:all .2s}.btn-attach:hover{background:var(--bg-surface-hover);color:var(--text-main)}.btn-send{background:var(--primary);color:#fff;border-radius:var(--radius-md)}.btn-send:hover{opacity:.9}.live-session-banner{background:linear-gradient(90deg,#3b82f6,#2563eb);color:#fff;padding:16px;border-radius:14px;margin:12px;display:flex;justify-content:space-between;align-items:center}.live-left{display:flex;gap:12px;align-items:center}.live-dot{width:8px;height:8px;background:#ff3b30;border-radius:50%;animation:pulse 2s infinite}.live-title{font-weight:600;font-size:14px}.live-time{font-size:12px;opacity:.9}.join-btn{background:#fff;color:#2563eb;border:none;padding:6px 14px;border-radius:8px;font-weight:600;cursor:pointer}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4);gap:1.5rem}.page-header p{font-size:.9rem;color:var(--text-muted);margin-top:12px;line-height:1.5}.moderation-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);margin-bottom:var(--space-4);margin-top:1.5rem;margin-bottom:1.5rem}.moderation-controls{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:0 1.5rem;box-shadow:var(--shadow-card);margin-bottom:var(--space-4);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;border-bottom:none}.moderation-controls::-webkit-scrollbar{display:none}.moderation-tabs{display:flex;gap:2rem;border-bottom:1px solid var(--border-color)}.moderation-tab{display:inline-flex;align-items:center;width:fit-content;padding:.875rem 0;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);font-size:.875rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:color .15s ease,border-color .15s ease;margin-bottom:-1px}.moderation-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.moderation-cards{display:flex;flex-direction:column;gap:1rem}.moderation-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.25rem 1.5rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;box-shadow:var(--shadow-card);transition:background .15s ease}.moderation-card:hover{background:var(--bg-surface-hover)}.card-left{display:flex;align-items:flex-start;gap:1rem;flex:1;min-width:0}.card-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.card-icon.alert-icon{background:var(--color-yellow-bg);color:var(--color-yellow)}.card-icon.message-icon{background:var(--color-red-bg);color:var(--color-red)}.card-info{display:flex;flex-direction:column;gap:.375rem;min-width:0;overflow:hidden}.moderation-card-header{display:flex;flex-direction:column;gap:.2rem}.card-user{font-size:1rem;font-weight:600;color:var(--text-main);margin:0}.card-source{font-size:.8125rem;color:var(--text-muted);margin:0}.moderation-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem 1rem;margin-top:.25rem}.moderation-card-field{display:flex;flex-direction:column;gap:.1rem}.moderation-card-label{font-size:.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.moderation-card-value{font-size:.875rem;color:var(--text-main);font-weight:500}.card-details{margin:.35rem 0 0;font-size:.8125rem;color:var(--text-main);line-height:1.45;word-break:break-word}.card-actions{display:flex;flex-direction:row;gap:.5rem;flex-shrink:0;flex-wrap:wrap;align-items:flex-start}.card-actions-col{display:flex;flex-direction:column;gap:.5rem;min-width:200px}.action-btn-row{display:flex;gap:.5rem}.card-actions .btn-crisis,.card-actions .btn-review-chat,.card-actions .btn-mark-reviewed,.card-actions .btn-edit,.card-actions .btn-remove-message,.card-actions .btn-discard-report,.card-actions .btn-remove-user{padding:.5rem .875rem;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .15s ease}.btn-crisis{background:var(--color-red);color:#fff;border:none;width:100%}.btn-crisis:hover{opacity:.9}.btn-review-chat{background:var(--primary);color:#fff;border:none;flex:1}.btn-review-chat:hover{opacity:.9}.btn-mark-reviewed{background:transparent;color:var(--text-main);border:1px solid var(--border-color);flex:1}.btn-mark-reviewed:hover:not(:disabled){background:var(--bg-surface-hover);border-color:var(--text-muted)}.btn-mark-reviewed:disabled{opacity:.55;cursor:not-allowed}.btn-edit{background:var(--primary);color:#fff;border:none}.btn-edit:hover{opacity:.9}.btn-remove-message{background:transparent;color:var(--text-main);border:1px solid var(--border-color)}.btn-remove-message:hover{background:var(--bg-surface-hover);border-color:var(--text-muted)}.btn-remove-user{background:transparent;color:var(--color-red);border:1px solid var(--color-red)}.btn-remove-user:hover{background:var(--color-red-bg)}.btn-discard-report{background:transparent;color:var(--text-muted);border:1px solid var(--border-color)}.btn-discard-report:hover:not(:disabled){background:var(--bg-surface-hover);color:var(--text-main)}.btn-discard-report:disabled{opacity:.55;cursor:not-allowed}.card-actions .btn-remove-message:disabled{opacity:.55;cursor:not-allowed}.moderation-footer{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);margin-top:var(--space-4)}.moderation-footer .showing-text{font-size:.875rem;color:var(--text-muted)}.moderation-footer .pagination-buttons{display:flex;gap:.5rem}.moderation-footer .pagination-btn{width:32px;height:32px;border:1px solid var(--border-color);background:var(--bg-surface);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-main);transition:all .15s ease}.moderation-footer .pagination-btn:hover{background:var(--bg-surface-hover);border-color:var(--primary);color:var(--primary)}.moderation-footer .pagination-btn:disabled{opacity:.5;cursor:not-allowed}.skeleton-line{height:10px;background:var(--border-color);border-radius:4px;animation:modPulse 1.4s ease-in-out infinite}@keyframes modPulse{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}.moderation-session-modal{max-width:720px}.moderation-session-body{gap:1rem}.moderation-session-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem}.moderation-session-grid p,.moderation-session-note p{margin:0;color:var(--text-main);font-size:.9rem}.moderation-session-label{display:block;font-size:.72rem;color:var(--text-muted);margin-bottom:.2rem;text-transform:uppercase;letter-spacing:.03em}.moderation-session-note{padding:.75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-body)}.moderation-reason-body{gap:.75rem}.moderation-reason-body p{margin:0;color:var(--text-muted)}.moderation-reason-input{width:100%;min-height:96px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-main);padding:.625rem .75rem;resize:vertical;font-size:.875rem;font-family:inherit}.moderation-reason-input:focus{outline:none;border-color:var(--primary)}@media(max-width:1200px){.moderation-stats{grid-template-columns:repeat(2,1fr)}.moderation-card{flex-direction:column;align-items:flex-start}.card-actions{width:100%}.card-actions-col{width:100%;min-width:unset}.moderation-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.moderation-stats{grid-template-columns:1fr;gap:1rem}.moderation-controls{padding:0 1rem}.moderation-tabs{gap:1.25rem}.moderation-card{padding:1rem;gap:1rem}.moderation-card-grid{grid-template-columns:1fr}.card-actions button{width:100%}.moderation-session-grid{grid-template-columns:1fr}}.moderation-controls{display:none}.moderation-tabs-bar{display:flex;gap:2rem;border-bottom:1px solid var(--border-color);margin-bottom:1rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.moderation-tabs-bar::-webkit-scrollbar{display:none}.moderation-tab{display:inline-flex;align-items:center;width:fit-content;padding:0 0 .75rem;font-size:.9375rem;font-weight:500;color:var(--text-muted);background:transparent;border:none;cursor:pointer;white-space:nowrap;transition:color .2s,border-color .2s;margin-bottom:-1px;position:relative}.moderation-tab:hover{color:var(--text-main)}.moderation-tab.active{color:var(--primary)}[data-theme=dark] .moderation-tab.active{color:#fff}.moderation-tab.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:999px;background:currentColor}.edit-message-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.edit-message-modal-content{background:var(--bg-surface);border-radius:var(--radius-lg);width:600px;max-width:90%;max-height:90vh;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);animation:slideUp .3s ease-out;border:1px solid var(--border-color)}.edit-message-modal-header{padding:1.5rem 1.5rem 1rem;display:flex;align-items:flex-start;justify-content:space-between}.edit-message-title-row{display:flex;align-items:center;gap:1rem}.edit-message-icon-wrapper{width:48px;height:48px;background:#e0e7ff;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--primary);flex-shrink:0}.edit-message-title{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-main)}.edit-message-close{width:36px;height:36px;border-radius:50%;background:transparent;border:1px solid var(--border-color);cursor:pointer;color:var(--text-muted);transition:all .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.edit-message-close:hover{background:var(--bg-surface-hover);color:var(--text-main)}.edit-message-body{padding:1rem 1.5rem 1.5rem;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:1.25rem}.edit-message-info-row{display:flex;gap:3rem}.info-column{display:flex;flex-direction:column;gap:.25rem}.edit-message-subtitle{font-size:.875rem;color:var(--text-muted);margin:0;line-height:1.5}.original-message-box{background:var(--bg-body);padding:1rem 1.25rem;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-muted);font-style:italic;font-size:.9375rem;line-height:1.6}.guidelines-list{padding:1rem;background:var(--bg-body);border-radius:var(--radius-md);border:1px solid var(--border-color)}.guidelines-list ul{margin:0;padding-left:1.25rem;color:var(--text-muted);font-size:.8125rem;line-height:1.6}.guidelines-list li{margin-bottom:.375rem}.guidelines-list li:last-child{margin-bottom:0}.edit-message-footer{padding:1.25rem 1.5rem;display:flex;justify-content:center;gap:1rem;border-top:1px solid var(--border-color)}.btn-save{padding:.75rem 1.5rem;border-radius:var(--radius-sm);font-weight:500;cursor:pointer;font-size:.9375rem;min-width:140px;text-align:center;transition:all .15s ease;background:var(--primary);color:#fff;border:none}.btn-save:hover{opacity:.9}[data-theme=dark] .edit-message-icon-wrapper{background:#6366f133}[data-theme=dark] .original-message-box,[data-theme=dark] .guidelines-list{background:var(--dark-surface-deep);border-color:var(--dark-border)}@media(max-width:768px){.edit-message-modal-content{width:95%;margin:1rem;max-height:85vh}.edit-message-info-row{flex-direction:column;gap:1rem}.edit-message-footer{flex-direction:column}.btn-cancel,.btn-save{width:100%}}.remove-message-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.remove-message-modal-content{background:var(--bg-surface);border-radius:var(--radius-lg);width:500px;max-width:90%;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);animation:slideUp .3s ease-out;border:1px solid var(--border-color)}.remove-message-modal-header{padding:1.5rem 1.5rem 1rem;display:flex;align-items:flex-start;justify-content:space-between}.remove-message-title-row{display:flex;align-items:center;gap:1rem}.remove-message-icon-wrapper{width:48px;height:48px;background:var(--color-red-bg);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--color-red);flex-shrink:0}.remove-message-title{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-main)}.remove-message-close{width:36px;height:36px;border-radius:50%;background:transparent;border:1px solid var(--border-color);cursor:pointer;color:var(--text-muted);transition:all .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.remove-message-close:hover{background:var(--bg-surface-hover);color:var(--text-main)}.remove-message-modal-body{padding:1rem 1.5rem 1.5rem;display:flex;flex-direction:column;gap:1rem}.remove-message-description{font-size:.9375rem;color:var(--text-main);line-height:1.6;margin:0}.remove-message-description strong{font-weight:600}.message-preview{padding:1rem;background:var(--bg-body);border-radius:var(--radius-md);border:1px solid var(--border-color)}.preview-label{font-size:.8125rem;font-weight:500;color:var(--text-muted);display:block;margin-bottom:.5rem}.preview-text{font-size:.9375rem;color:var(--text-main);line-height:1.5;margin:0;font-style:italic}.remove-message-note{font-size:.875rem;color:var(--text-muted);line-height:1.5;margin:0}.remove-message-modal-footer{padding:1.25rem 1.5rem;display:flex;justify-content:center;gap:1rem;border-top:1px solid var(--border-color)}.remove-message-modal-footer .btn-cancel,.remove-message-modal-footer .btn-remove{padding:.75rem 1.5rem;border-radius:var(--radius-sm);font-weight:500;cursor:pointer;font-size:.9375rem;min-width:140px;text-align:center;transition:all .15s ease}.remove-message-modal-footer .btn-cancel{background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-main)}.remove-message-modal-footer .btn-cancel:hover{background:var(--bg-surface-hover)}.remove-message-modal-footer .btn-remove{background:var(--color-red);color:#fff;border:none}.remove-message-modal-footer .btn-remove:hover{opacity:.9}@media(max-width:768px){.remove-message-modal-content{width:95%;margin:1rem}.remove-message-modal-footer{flex-direction:column}.remove-message-modal-footer .btn-cancel,.remove-message-modal-footer .btn-remove{width:100%}}.payments-page{padding:0}.payments-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.payments-header h1{font-size:1.25rem;margin-bottom:.25rem;font-family:Outfit,sans-serif;font-weight:600}.payments-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:2rem;margin-top:1.5rem}.stat-card-large{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:2rem;display:flex;flex-direction:column;gap:.75rem}.stat-label{color:var(--text-muted);font-size:.875rem;font-weight:500}.stat-value-large{font-size:2.5rem;font-weight:600;font-family:Outfit,sans-serif;color:var(--text-main)}.payments-charts{display:grid;grid-template-columns:1.5fr 1fr;gap:1.5rem;margin-bottom:2rem}.chart-card{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:1.5rem}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.chart-header h3{font-size:1rem;font-weight:600;color:var(--text-main);margin-bottom:.5rem}.growth-badge{display:inline-flex;align-items:center;padding:.25rem .625rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500}.growth-badge.positive{background:var(--color-green-bg);color:var(--color-green)}.period-selector{display:flex;gap:.5rem;background:var(--bg-body);padding:.25rem;border-radius:var(--radius-md)}.period-selector button{padding:.375rem .75rem;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.period-selector button:hover{color:var(--text-main)}.period-selector button.active{background:var(--primary);color:#fff}.custom-tooltip{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.75rem;box-shadow:var(--shadow-md)}.tooltip-value{font-size:1rem;font-weight:600;color:var(--text-main);margin-bottom:.25rem}.tooltip-change{font-size:.75rem;color:var(--color-green)}.pie-legend{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem}.legend-item{display:flex;align-items:center;gap:.75rem}.legend-color{width:12px;height:12px;border-radius:50%;flex-shrink:0}.legend-text{display:flex;justify-content:space-between;align-items:center;flex:1}.legend-name{font-size:.875rem;color:var(--text-main)}.legend-value{font-size:.875rem;font-weight:600;color:var(--text-main)}.transactions-table-container{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:1.5rem}.transactions-table{width:100%;border-collapse:collapse}.transactions-table thead{border-bottom:1px solid var(--border-color)}.transactions-table th{text-align:left;padding:1rem .75rem;font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.transactions-table tbody tr{border-bottom:1px solid var(--border-color);transition:background var(--transition-fast)}.transactions-table tbody tr:last-child{border-bottom:none}.transactions-table tbody tr:hover{background:var(--bg-surface-hover)}.transactions-table td{padding:1rem .75rem;font-size:.875rem;color:var(--text-main)}.transaction-id{font-family:Courier New,monospace;color:var(--text-muted);font-size:.8125rem}.user-name{font-weight:500}.phone-number{color:var(--text-muted)}.plan-badge{display:inline-block;padding:.25rem .75rem;background:var(--bg-body);border-radius:var(--radius-sm);font-size:.8125rem;color:var(--text-main)}.amount{font-weight:600;color:var(--text-main)}.method-badge{display:inline-block;padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:500}.method-badge.method-upi{background:var(--color-blue-bg);color:var(--color-blue)}.method-badge.method-card{background:var(--color-yellow-bg);color:var(--color-yellow)}.date-time{color:var(--text-muted);font-size:.8125rem}.table-footer{display:flex;justify-content:space-between;align-items:center;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.pagination-buttons{display:flex;gap:.5rem}@media(max-width:1024px){.payments-charts{grid-template-columns:1fr}}@media(max-width:768px){.payments-header{flex-direction:column;gap:1rem}.btn-export{width:100%;justify-content:center}.payments-stats{grid-template-columns:1fr}.transactions-table-container{overflow-x:auto}.transactions-table{min-width:800px}}.add-psychologist-modal{padding:0}.header-title{display:flex;align-items:center;gap:.75rem}.header-icon{color:var(--primary)}.modal-form{display:flex;flex-direction:column;padding:1.5rem 2rem;gap:1.25rem;overflow-y:auto;flex:1}.delete-modal-container{width:500px;max-width:95%}.delete-modal-header{padding:1.5rem 1.5rem .5rem}.delete-modal-title{display:flex;align-items:center;gap:.75rem}.delete-modal-title h3{font-size:1.125rem;font-weight:600;color:var(--text-main);margin:0}.icon-wrapper{display:flex;align-items:center;justify-content:center;color:var(--text-main)}.delete-modal-body{padding:0 1.5rem 1.5rem;color:var(--text-muted);font-size:.9375rem;line-height:1.5}.delete-modal-body p{margin-bottom:.5rem}.delete-warning{margin-top:1rem;font-size:.875rem;color:var(--text-muted);font-style:normal}.delete-modal-footer{padding:1.5rem;display:flex;justify-content:space-between;gap:1rem}.details-modal-container{width:700px;max-width:95%}.details-modal-header{padding:1.5rem 1.5rem .5rem;flex-shrink:0}.icon-wrapper-blue{display:flex;align-items:center;justify-content:center;color:var(--primary)}.details-modal-header h2{font-size:1.125rem;font-weight:600;color:var(--text-main);margin:0}.details-modal-body{padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.details-section{display:flex;flex-direction:column;gap:.75rem}.rating-value{display:flex;align-items:center;gap:.25rem;color:#facc15}.price-value{font-size:1.125rem;font-weight:600}.info-note{font-size:.75rem;color:var(--text-muted);margin-top:.25rem}.details-modal-footer{padding:1.5rem;display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--border-color);background:var(--bg-surface)}.psychologists-page{display:flex;flex-direction:column}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0rem;flex-shrink:0}.page-header h1{font-size:1.75rem;font-weight:600;color:var(--text-main);margin-bottom:0}.page-header p{color:var(--text-muted);font-size:.875rem;margin-top:4px}.summary-boxes{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);margin-bottom:1rem;flex-shrink:0;margin-top:1.5rem}.dashboard-table-container{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm);flex:1}.table-responsive-wrapper{width:100%;overflow-x:auto}.dashboard-table{width:100%;border-collapse:collapse;min-width:900px}.dashboard-table th{text-align:center;padding:var(--space-4);color:var(--text-muted);font-size:.875rem;font-weight:500;border-bottom:1px dashed var(--border-color)}.dashboard-table th:nth-child(1),.dashboard-table th:nth-child(2),.dashboard-table th:nth-child(3){text-align:left}.dashboard-table td{padding:var(--space-4);font-size:.9375rem;color:var(--text-main);border-bottom:none;text-align:center;vertical-align:middle}.dashboard-table tbody tr{border-bottom:1px solid var(--border-color)}.dashboard-table td:nth-child(1){text-align:left;font-weight:600}.dashboard-table td:nth-child(2),.dashboard-table td:nth-child(3){text-align:left}.dashboard-table tbody tr:last-child td{border-bottom:none}.dashboard-table tbody tr:last-child{border-bottom:none}.table-actions{display:flex;justify-content:center;align-items:center;gap:.5rem}.action-buttons-container{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;min-height:36px}.actions-header,.actions-cell{text-align:center;vertical-align:middle}.action-btn{width:36px;height:36px;min-width:36px;min-height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:var(--bg-surface-hover);color:inherit;border:1px solid var(--border-color);cursor:pointer;transition:all .2s ease;flex-shrink:0}.action-btn svg{width:16px;height:16px;min-width:16px;min-height:16px}.action-btn:hover{background:var(--color-blue-bg);border-color:var(--color-blue);color:var(--primary);transform:translateY(-1px)}.action-btn:active{transform:scale(.95)}.action-btn.delete{color:inherit}.action-btn.delete:hover{background:var(--color-blue-bg);border-color:var(--color-blue);color:var(--primary)}.status-badge{padding:6px 14px;border-radius:var(--radius-full);font-size:.75rem;font-weight:500;display:inline-block;white-space:nowrap}.status-badge.status-available{background-color:var(--color-green-bg, #dcfce7);color:var(--color-green, #16a34a)}.status-badge.status-offline{background-color:var(--color-red-bg, #fee2e2);color:var(--color-red, #ef4444)}.status-badge.status-busy{background-color:var(--color-yellow-bg, #fef9c3);color:var(--color-yellow, #eab308)}.pagination-container{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-6);margin-top:var(--space-4);border-top:1px solid var(--border-color)}.showing-text{color:var(--text-muted);font-size:.875rem}.pagination-buttons{display:flex;gap:var(--space-2)}.pagination-buttons .btn-outline{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--border-color);color:var(--text-muted);background:transparent;transition:all .2s;cursor:pointer}.pagination-buttons .btn-outline:hover{color:var(--primary);border-color:var(--primary);background:var(--bg-surface-hover)}@media(max-width:1024px){.summary-boxes{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.page-header{flex-direction:column;gap:var(--space-4);align-items:flex-start}.summary-boxes{grid-template-columns:1fr}.dashboard-table-container{padding:var(--space-4)}}.w-180{width:180px}.skeleton-badge{width:80px;height:20px;border-radius:999px;background:#ffffff14;animation:pulse 1.4s infinite}.skeleton-btn{width:90px;height:32px;border-radius:6px;background:#ffffff14;animation:pulse 1.4s infinite}.sm-overlay{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1.5rem}.sm-modal{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);width:100%;max-width:1100px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border-color)}.sm-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color);gap:1rem}.sm-title{font-size:1.125rem;font-weight:600;color:var(--text-main);margin:0 0 .25rem}.sm-subtitle{font-size:.8125rem;color:var(--text-muted);margin:0}.sm-close{background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.sm-close:hover{background:var(--bg-surface-hover);color:var(--text-main)}.sm-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color)}.sm-stat{background:var(--bg-surface-hover);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.625rem .875rem;display:flex;flex-direction:column;gap:.25rem}.sm-stat span{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.sm-stat strong{font-size:1.25rem;font-weight:600;color:var(--text-main);font-family:Outfit,sans-serif}.sm-filters{display:flex;flex-wrap:wrap;gap:.75rem;padding:.875rem 1.5rem;border-bottom:1px solid var(--border-color);align-items:flex-end}.sm-select,.sm-date-field input{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.5rem .625rem;font-size:.85rem;color:var(--text-main);height:36px}.sm-select:focus,.sm-date-field input:focus{outline:none;border-color:var(--primary)}.sm-date-field{display:flex;flex-direction:column;gap:.25rem}.sm-date-field span{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.sm-clear{background:transparent;border:1px solid var(--border-color);color:var(--text-muted);border-radius:var(--radius-sm);padding:0 .875rem;height:36px;cursor:pointer;font-size:.8125rem}.sm-clear:hover{background:var(--bg-surface-hover);color:var(--text-main)}.sm-table-wrap{flex:1;overflow:auto;padding:.5rem 0}.sm-table{width:100%;border-collapse:collapse;min-width:900px;table-layout:fixed}.sm-table th,.sm-table td{text-align:left;padding:.75rem 1rem;border-bottom:1px solid var(--border-color);font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}.sm-table th:nth-child(1),.sm-table td:nth-child(1){width:18%}.sm-table th:nth-child(2),.sm-table td:nth-child(2){width:16%}.sm-table th:nth-child(3),.sm-table td:nth-child(3){width:12%}.sm-table th:nth-child(4),.sm-table td:nth-child(4){width:10%}.sm-table th:nth-child(5),.sm-table td:nth-child(5){width:10%}.sm-table th:nth-child(6),.sm-table td:nth-child(6){width:10%}.sm-table th:nth-child(7),.sm-table td:nth-child(7){width:24%}.sm-table th{color:var(--text-muted);font-weight:500;background:var(--bg-surface-hover);position:sticky;top:0;z-index:1}.sm-table tbody tr:hover{background:var(--bg-surface-hover)}.sm-empty{text-align:center;padding:3rem 1rem;color:var(--text-muted);font-size:.9rem}.sm-error{color:var(--color-red)}.sm-badge{display:inline-block;padding:.125rem .5rem;border-radius:999px;font-size:.7rem;font-weight:500;text-transform:capitalize}.sm-badge-blue{background:var(--color-blue-bg, #dbeafe);color:var(--color-blue, #2563eb)}.sm-badge-yellow{background:var(--color-yellow-bg, #fef3c7);color:var(--color-yellow, #b45309)}.sm-badge-green{background:var(--color-green-bg, #dcfce7);color:var(--color-green, #16a34a)}.sm-badge-red{background:var(--color-red-bg, #fee2e2);color:var(--color-red, #dc2626)}.sm-badge-gray{background:var(--bg-surface-hover);color:var(--text-muted)}.sm-rating{display:inline-flex;align-items:center;gap:4px;color:var(--color-yellow, #b45309);font-weight:500}.sm-notes-pill{display:inline-flex;align-items:center;gap:4px;color:var(--primary);font-weight:500}.sm-cancel-info{color:var(--text-muted);font-size:.8rem}.sm-pagination{display:flex;justify-content:space-between;align-items:center;padding:.875rem 1.5rem;border-top:1px solid var(--border-color)}.sm-page-info{font-size:.8125rem;color:var(--text-muted)}.sm-page-buttons{display:flex;gap:.5rem}.sm-page-btn{width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-main);cursor:pointer;transition:all var(--transition-fast)}.sm-page-btn:hover:not(:disabled){background:var(--bg-surface-hover);border-color:var(--primary);color:var(--primary)}.sm-page-btn:disabled{opacity:.4;cursor:not-allowed}@media(max-width:768px){.sm-stats{grid-template-columns:repeat(2,1fr)}.sm-filters{flex-direction:column;align-items:stretch}.sm-modal{max-height:95vh}}.psm-page{padding-bottom:2rem}.psm-table-container{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);margin-top:1rem;overflow:hidden}.psm-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.psm-table{width:100%;min-width:0;border-collapse:collapse;table-layout:fixed}.psm-table th:nth-child(1),.psm-table td:nth-child(1){width:30%}.psm-table th:nth-child(2),.psm-table td:nth-child(2){width:22%}.psm-table th:nth-child(3),.psm-table td:nth-child(3){width:12%}.psm-table th:nth-child(4),.psm-table td:nth-child(4){width:10%}.psm-table th:nth-child(5),.psm-table td:nth-child(5){width:12%}.psm-table th:nth-child(6),.psm-table td:nth-child(6){width:14%}.psm-table th,.psm-table td{padding:.875rem 1rem;border-bottom:1px solid var(--border-color);font-size:.85rem;text-align:left;vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.psm-table th{color:var(--text-muted);font-weight:500;background:var(--bg-surface-hover)}.psm-row{cursor:pointer;transition:background var(--transition-fast)}.psm-row:hover{background:var(--bg-surface-hover)}.psm-user-info{display:flex;align-items:center;gap:.75rem;min-width:0}.psm-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0}.psm-user-meta{display:flex;flex-direction:column;min-width:0}.psm-name{color:var(--text-main);font-weight:500;overflow:hidden;text-overflow:ellipsis}.psm-email{color:var(--text-muted);font-size:.75rem;overflow:hidden;text-overflow:ellipsis}.psm-specialization{color:var(--text-muted)}.psm-num{color:var(--text-main);font-weight:500}.psm-status{display:inline-block;padding:.125rem .5rem;border-radius:999px;font-size:.7rem;font-weight:500}.psm-status.is-available{background:var(--color-green-bg, #dcfce7);color:var(--color-green, #16a34a)}.psm-status.is-offline{background:var(--bg-surface-hover);color:var(--text-muted)}.psm-status.is-inactive{background:var(--color-red-bg, #fee2e2);color:var(--color-red, #dc2626)}.psm-view-btn{display:inline-flex;align-items:center;gap:4px;padding:.4rem .75rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-main);font-size:.8125rem;cursor:pointer;transition:all var(--transition-fast)}.psm-view-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.psm-empty{text-align:center;padding:3rem 1rem;color:var(--text-muted);font-size:.9rem}.psm-footer{display:flex;justify-content:space-between;align-items:center;padding:.875rem 1.25rem;border-top:1px solid var(--border-color)}.psm-page-info{font-size:.8125rem;color:var(--text-muted)}.psm-page-buttons{display:flex;gap:.5rem}.psm-page-btn{width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-main);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.psm-page-btn:hover:not(:disabled){background:var(--bg-surface-hover);border-color:var(--primary);color:var(--primary)}.psm-page-btn:disabled{opacity:.4;cursor:not-allowed}.skeleton-line{height:10px;background:var(--border-color);border-radius:4px;animation:psmPulse 1.4s ease-in-out infinite}@keyframes psmPulse{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}@media(max-width:768px){.psm-table{display:block;table-layout:auto}.psm-table thead{display:none}.psm-table tbody{display:block}.psm-table tr{display:block;padding:.75rem 1rem;border-bottom:1px solid var(--border-color)}.psm-table tr:last-child{border-bottom:none}.psm-table td{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.4rem 0;border-bottom:none;white-space:normal;overflow:visible;text-overflow:clip;width:auto}.psm-table td:nth-child(1),.psm-table td:nth-child(2),.psm-table td:nth-child(3),.psm-table td:nth-child(4),.psm-table td:nth-child(5),.psm-table td:nth-child(6){width:auto}.psm-table td:nth-child(1){display:flex;justify-content:flex-start;padding-bottom:.6rem;margin-bottom:.3rem;border-bottom:1px solid var(--border-color)}.psm-name{font-size:.95rem;white-space:normal}.psm-email{font-size:.78rem;white-space:normal}.psm-table td:nth-child(2):before{content:"Specialization"}.psm-table td:nth-child(3):before{content:"Total sessions"}.psm-table td:nth-child(4):before{content:"Rating"}.psm-table td:nth-child(5):before{content:"Status"}.psm-table td:nth-child(2):before,.psm-table td:nth-child(3):before,.psm-table td:nth-child(4):before,.psm-table td:nth-child(5):before{color:var(--text-muted);font-size:.78rem;font-weight:500}.psm-table td:nth-child(6){padding-top:.6rem;margin-top:.3rem;border-top:1px solid var(--border-color);text-align:center!important}.psm-view-btn{width:100%;justify-content:center;padding:.55rem .75rem;font-size:.875rem}.psm-footer{flex-direction:column;gap:.5rem;padding:.875rem}}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-8);gap:1rem;flex-wrap:wrap}.page-header .header-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.chat-center-page{height:100%;display:flex;flex-direction:column;gap:0rem;overflow:hidden;background:transparent}.main-content:has(.chat-center-page){overflow:hidden;display:flex;flex-direction:column}.chat-center-container{display:flex;flex:1;gap:1.5rem;min-height:0;overflow:hidden;background:transparent;margin-top:1.5rem}.conversations-panel{width:420px;min-width:340px;max-width:460px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);display:flex;flex-direction:column;overflow:hidden;flex-shrink:0}.search-box{padding:.75rem 1rem .5rem;flex-shrink:0;width:100%}.search-input-wrapper{position:relative;width:100%;display:block}.search-input{width:100%;height:40px;padding:0 18px 0 44px;border-radius:999px;background:var(--bg-surface);font-size:.9rem;color:var(--text-main);outline:none;transition:all .2s ease}.search-input:focus{box-shadow:0 0 0 3px hsl(var(--primary-h),var(--primary-s),90%)}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted)}.search-input:focus{border-color:var(--primary)}.search-input::placeholder{color:var(--text-muted)}.chat-tabs{display:flex;align-items:center;gap:2px;margin:0 1rem .75rem;padding:3px;border:1px solid var(--border-color);border-radius:999px;background:var(--bg-body);overflow-x:auto;overflow-y:hidden;scrollbar-width:none;flex-shrink:0;-webkit-overflow-scrolling:touch}.chat-tabs::-webkit-scrollbar{display:none}.chat-tab{padding:.4rem .7rem;flex:1 1 auto;min-width:fit-content;text-align:center;border:none;background:transparent;color:var(--text-muted);font-size:.78rem;font-weight:500;cursor:pointer;border-radius:999px;transition:all .2s;white-space:nowrap;font-family:inherit}.chat-tab:hover{background:var(--bg-surface-hover);color:var(--text-main)}.chat-tab.active{background:var(--primary);color:#fff}.chat-new-contacts-panel{max-height:260px;overflow-y:auto;flex-shrink:0}.chat-new-contacts-header{justify-content:space-between;padding:.5rem 1rem!important;position:sticky;top:0;z-index:1;background:var(--bg-body)!important}.chat-close-contacts-btn{width:24px;height:24px;border-radius:50%;border:1px solid var(--border-color);color:var(--text-muted);background:var(--bg-surface);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;flex-shrink:0}.chat-close-contacts-btn:hover{color:var(--text-main);background:var(--bg-surface-hover)}.conversations-list{flex:1;overflow-y:auto;padding:0 .75rem .75rem;min-height:0}.conversation-item{display:flex;align-items:center;gap:.875rem;padding:.85rem .55rem;cursor:pointer;transition:background .2s;position:relative;border-bottom:1px solid var(--border-color);border-radius:8px}.conversation-item:last-child{border-bottom:none}.conversation-item:hover,.conversation-item.selected{background:var(--bg-surface-hover)}[data-theme=dark] .conversation-item{border-color:#334155}.conversation-content{flex:1;min-width:0}.conversation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.2rem;gap:.5rem}.conversation-name{font-weight:600;font-size:.875rem;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-time{font-size:.7rem;color:var(--text-muted);flex-shrink:0}.conversation-preview{font-size:.78rem;color:var(--text-muted);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-panel{flex:.92;min-width:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);display:flex;flex-direction:column;overflow:hidden}.chat-panel-header{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.25rem;border-bottom:1px solid var(--border-color);flex-shrink:0;min-width:0}.btn-back-chat{width:34px;height:34px;border-radius:50%;border:1px solid var(--border-color);background:var(--bg-surface);display:none;align-items:center;justify-content:center;cursor:pointer;color:var(--text-main);transition:all .2s;flex-shrink:0}.btn-back-chat:hover{background:var(--bg-body)}.chat-header-info{flex:1;min-width:0}.chat-header-name{font-size:.975rem;font-weight:600;color:var(--text-main);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-header-action{display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:7px;font-size:.78rem;cursor:pointer;font-family:inherit;white-space:nowrap}.btn-label-hide-sm{display:inline}.chat-messages-container{flex:1;overflow-y:auto;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:1rem;background:var(--bg-body);min-height:0}.chat-message{max-width:62%;display:flex;flex-direction:column;gap:.2rem}.chat-message.sent{align-self:flex-end;align-items:flex-end}.chat-message.received{align-self:flex-start;align-items:flex-start}.message-sender{font-size:.75rem;color:var(--text-main);font-weight:500;margin-bottom:.2rem}.message-content{padding:.75rem .9rem;border-radius:12px;font-size:.875rem;line-height:1.5;word-break:break-word}.chat-message.sent .message-content{background:var(--primary);color:#fff;border-bottom-right-radius:4px}.chat-message.received .message-content{background:var(--bg-surface-hover);color:var(--text-main);border-top-left-radius:4px}.message-timestamp{font-size:.68rem;color:var(--text-muted);display:flex;align-items:center;gap:.25rem;margin-top:2px}.message-status{color:var(--primary);font-size:.625rem}.chat-input-container{display:flex;align-items:center;gap:.65rem;padding:.875rem 1.25rem;background:var(--bg-surface);border-top:1px solid var(--border-color);flex-shrink:0}.message-input{flex:1;min-width:0;padding:.72rem .9rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.875rem;background:var(--bg-body);color:var(--text-main);outline:none;transition:border-color .2s;font-family:inherit}.message-input:focus{border-color:var(--primary)}.message-input::placeholder{color:var(--text-muted)}.btn-send-message{width:42px;height:42px;border-radius:50%;padding:0;flex-shrink:0;display:flex;align-items:center;justify-content:center;cursor:pointer}.btn-send-message:disabled{opacity:.5;cursor:not-allowed}.no-chat-selected{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:.9375rem;background:var(--bg-body);text-align:center;padding:2rem}[data-theme=dark] .conversations-panel,[data-theme=dark] .chat-panel{background:var(--bg-surface);border-color:var(--border-color)}[data-theme=dark] .search-input,[data-theme=dark] .message-input{background:var(--bg-body);border-color:var(--border-color)}[data-theme=dark] .conversation-item:hover,[data-theme=dark] .conversation-item.selected{background:var(--bg-surface-hover)}[data-theme=dark] .chat-messages-container,[data-theme=dark] .no-chat-selected{background:var(--bg-body)}[data-theme=dark] .btn-back-chat{background:var(--bg-surface);border-color:var(--border-color)}@media(max-width:1024px){.conversations-panel{width:320px;min-width:280px;max-width:340px}.chat-message{max-width:72%}.btn-label-hide-sm{display:none}.btn-header-action{padding:6px 8px}}@media(max-width:768px){.chat-center-page{gap:0;height:100%;min-height:0;overflow:hidden;box-sizing:border-box}.page-header{margin-bottom:0rem;padding:0 .25rem;flex-wrap:wrap;gap:.5rem}.page-header h1{font-size:1.35rem}.page-header p{font-size:.8rem}.header-actions .btn{font-size:.78rem;padding:.42rem .85rem}.chat-center-container{flex-direction:column;gap:0;position:relative;flex:1;min-height:0;height:100%;margin-top:0}.conversations-panel{width:100%;min-width:unset;max-width:unset;border-radius:var(--radius-lg);flex:1;min-height:0;border-right:none;transition:opacity .2s ease,transform .25s ease}.chat-panel{display:none;width:100%;flex:1;min-height:0;border-radius:var(--radius-lg);position:absolute;inset:0;z-index:10}.chat-center-page.has-active-chat .page-header,.chat-center-page.has-active-chat .conversations-panel{display:none}.chat-center-page.has-active-chat .chat-panel{display:flex;flex-direction:column;position:relative;inset:unset;z-index:auto;border-radius:var(--radius-lg)}.btn-back-chat{display:flex!important}.chat-message{max-width:82%}.chat-messages-container{padding:.75rem .875rem;gap:.75rem}.chat-input-container{padding:.75rem .875rem;gap:.5rem}.chat-panel-header{padding:.75rem 1rem}.chat-tabs{margin:0 .75rem .6rem;padding:2px;gap:1px}.chat-tab{font-size:.72rem;padding:.38rem .6rem}.search-box{padding:.75rem .75rem .5rem}.chat-new-contacts-panel{max-height:220px}.btn-label-hide-sm{display:none}.chat-panel-header .btn-header-action{padding:5px 8px;font-size:.72rem}}@media(max-width:480px){.page-header h1{font-size:1.2rem}.chat-message{max-width:88%}.message-content{padding:.65rem .75rem;font-size:.84rem}.chat-tab{font-size:.68rem;padding:.35rem .5rem}.conversation-name{font-size:.84rem}.conversation-preview{font-size:.75rem}.chat-header-name{font-size:.9rem}.message-input{font-size:.84rem;padding:.65rem .75rem}.btn-send-message{width:38px;height:38px}}@media(max-width:768px){.chat-center-page{min-height:0;height:100%}.chat-center-container{flex:1;min-height:0;height:100%;margin-top:0}.conversations-panel{height:100%;min-height:0;flex:1}.chat-center-page.has-active-chat{height:100%;min-height:0}.chat-center-page.has-active-chat .chat-center-container{height:100%;margin-top:0}.chat-center-page.has-active-chat .chat-panel{height:100%}}.message-content img{max-width:260px;max-height:260px;width:auto;height:auto;border-radius:8px;display:block;object-fit:contain}.chat-panel-mobile-header{display:none}@media(max-width:768px){.page-header--desktop{display:none!important}.chat-center-container{margin-top:0!important}.chat-panel-mobile-header{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem .4rem;flex-shrink:0;gap:.5rem}.chat-panel-mobile-header h1{font-size:1.2rem;font-weight:700;color:var(--text-main);margin:0;line-height:1.2}.chat-panel-mobile-header p{font-size:.72rem;color:var(--text-muted);margin:2px 0 0}}@keyframes typingBounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-5px);opacity:1}}.help-page{display:flex;flex-direction:column;height:100vh;overflow:hidden}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-8);gap:1rem;flex-shrink:0;padding:var(--space-6)}.typing-dots-wrapper{display:flex;align-items:center;gap:4px;padding:10px 14px;background:var(--bg-body);border:1px solid var(--border-color);border-radius:12px 12px 12px 3px;width:fit-content}.typing-dot{width:7px;height:7px;border-radius:50%;background:var(--text-muted);display:block;animation:typingBounce 1.2s ease-in-out infinite}.message-bubble-wrapper{display:flex;flex-direction:column;max-width:65%}.message-bubble-wrapper.me{align-self:flex-end;align-items:flex-end}.message-bubble-wrapper.other{align-self:flex-start;align-items:flex-start}.message-sender-name{font-size:12px;color:var(--text-muted);margin-bottom:3px;font-weight:500}.message-bubble{padding:10px 14px;font-size:14px;line-height:1.55;word-break:break-word;white-space:pre-line}.message-bubble.me{border-radius:14px 14px 3px;background:#244a66;color:#fff;border:none}.message-bubble.other{border-radius:14px 14px 14px 3px;background:var(--bg-body);color:var(--text-main);border:1px solid var(--border-color)}.message-meta{font-size:11px;color:var(--text-muted);margin-top:3px;display:flex;align-items:center;gap:3px}.message-tick{opacity:.7}.modal-overlay{position:fixed;inset:0;background:#00000080;z-index:1000;display:flex;align-items:center;justify-content:center}.claim-modal{background:var(--bg-surface);border-radius:16px;padding:32px 28px 28px;width:380px;border:1px solid var(--border-color);position:relative}.modal-close-btn{position:absolute;top:14px;right:14px;background:var(--bg-body);border:1px solid var(--border-color);border-radius:50%;width:28px;height:28px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.modal-title{margin:0 0 6px;font-size:19px;font-weight:700;color:var(--text-main);text-align:center}.modal-subtitle{margin:0 0 20px;color:var(--text-muted);font-size:13px;text-align:center;line-height:1.5}.claim-modal-info-row{display:flex;gap:10px;margin-bottom:16px}.claim-modal-info-card{flex:1;background:var(--bg-body);border:1px solid var(--border-color);border-radius:10px;padding:10px 14px}.claim-modal-info-label{font-size:11px;color:var(--text-muted);margin-bottom:3px;font-weight:500}.claim-modal-info-value{font-size:13px;font-weight:600;color:var(--text-main)}.modal-note{margin:0 0 22px;color:var(--text-muted);font-size:12px;text-align:center;line-height:1.6}.modal-actions{display:flex;gap:10px}.modal-btn{flex:1;padding:11px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer}.modal-btn.cancel{border:1.5px solid var(--border-color);background:var(--bg-surface);color:var(--text-main)}.modal-btn.primary{border:none;background:var(--color-primary, #1e2d3d);color:#fff}.modal-btn.danger{border:none;background:#e53e3e;color:#fff}.end-chat-modal{background:var(--bg-surface);border-radius:16px;padding:32px 28px 28px;width:360px;border:1px solid var(--border-color);position:relative}.avatar{border-radius:50%;background:#244a66;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.chat-list-item{display:flex;align-items:center;gap:10px;padding:12px 16px;cursor:pointer;border-bottom:1px solid var(--border-color);transition:background .15s}.chat-list-item:hover,.chat-list-item.selected{background:var(--bg-body)}.chat-list-item-body{flex:1;min-width:0}.chat-list-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.chat-list-item-name{font-size:14px;font-weight:600;color:var(--text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-list-item-time{font-size:11px;color:var(--text-muted);flex-shrink:0}.chat-list-item-preview{font-size:12px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-list-item-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.chat-pending-badge{font-size:11px;font-weight:600;padding:2px 7px;border-radius:999px;background:var(--bg-warning, #fff7ed);color:#f97316}.chat-unread-badge{width:18px;height:18px;border-radius:50%;background:var(--color-primary, #1e2d3d);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.request-row{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 140px;align-items:center;padding:16px 24px;border-bottom:1px solid var(--border-color);transition:background .15s}.request-row.last{border-bottom:none}.request-row:hover{background:var(--bg-body)}.request-row-username{font-size:14px;font-weight:600;color:var(--text-main)}.request-row-userid,.request-row-wait{font-size:13px;color:var(--text-muted)}.request-row-status{font-size:13px;font-weight:600}.request-row-status.long-wait{color:#e53e3e}.request-row-status.new{color:#f97316}.request-row-actions{text-align:right}.claim-btn{padding:8px 18px;background:var(--color-primary, #1e2d3d);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:opacity .15s}.claim-btn:hover{opacity:.85}.stat-card{flex:1;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;padding:14px 18px;display:flex;align-items:center;gap:12px}.stat-card-value{font-size:22px;font-weight:700;color:var(--text-main);line-height:1}.stat-card-label{font-size:12px;color:var(--text-muted);margin-top:2px}.table-view{padding:var(--space-5, 24px);display:flex;flex-direction:column;gap:var(--space-4, 16px);flex:1;box-sizing:border-box;overflow:auto;scrollbar-gutter:stable}.table-view-header h1{margin:0;font-size:22px;font-weight:700;color:var(--text-main)}.table-view-header p{margin:4px 0 0;font-size:14px;color:var(--text-muted)}.stat-cards-row{display:flex;gap:var(--space-4, 16px)}.tab-search-row{display:flex;align-items:center;gap:12px}.tab-group{display:flex;gap:4px}.tab-btn{padding:7px 14px;border:none;border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;display:flex;align-items:center;gap:6px;transition:all .15s}.tab-btn.active{background:var(--color-primary, #1e2d3d);color:#fff}.tab-btn.inactive{background:var(--bg-body);color:var(--text-muted)}.tab-badge{background:#f97316;color:#fff;font-size:11px;font-weight:700;padding:1px 6px;border-radius:999px}.search-wrapper{margin-left:auto;position:relative}.search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.search-input{padding:7px 12px 7px 30px;border:1px solid var(--border-color);border-radius:8px;font-size:13px;background:var(--bg-body);color:var(--text-main);outline:none;width:200px}.table-box{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;overflow:hidden;flex:1;margin-top:1.5rem}.table-header-row{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 140px;padding:12px 24px;border-bottom:1px solid var(--border-color)}.table-header-cell{font-size:12px;font-weight:600;color:var(--text-muted);letter-spacing:.02em}.table-header-cell.right{text-align:right}.table-empty{padding:40px;text-align:center;color:var(--text-muted);font-size:14px}.pagination-row{display:flex;justify-content:space-between;align-items:center}.pagination-info{font-size:13px;color:var(--text-muted)}.pagination-btns{display:flex;gap:8px}.pagination-btn{width:32px;height:32px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-body);display:flex;align-items:center;justify-content:center;color:var(--text-main);font-weight:700;transition:all .15s ease}.pagination-btn:not(:disabled){cursor:pointer}.pagination-btn:hover:not(:disabled){background:var(--bg-surface-hover);border-color:var(--primary);color:var(--primary)}.pagination-btn:disabled{cursor:not-allowed;opacity:.4}.chat-view{display:flex;flex:1;overflow:hidden;background:var(--bg-surface)}.chat-left-panel{width:320px;min-width:320px;display:flex;flex-direction:column;border-right:1px solid var(--border-color);background:var(--bg-surface);overflow:hidden}.chat-search-bar{padding:12px 14px;border-bottom:1px solid var(--border-color);position:relative}.chat-search-icon{position:absolute;left:26px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.chat-search-input{width:100%;box-sizing:border-box;padding:8px 12px 8px 30px;border:1px solid var(--border-color);border-radius:8px;font-size:13px;background:var(--bg-body);color:var(--text-main);outline:none}.chat-tabs{display:flex;border-bottom:1px solid var(--border-color)}.chat-tab-btn{flex:1;padding:10px 6px;border:none;background:transparent;cursor:pointer;font-size:12px;font-weight:500;display:flex;align-items:center;justify-content:center;gap:5px;transition:all .15s}.chat-tab-btn.active{border-bottom:2px solid var(--color-primary, #1e2d3d);color:var(--color-primary, #1e2d3d)}.chat-tab-btn.inactive{border-bottom:2px solid transparent;color:var(--text-muted)}.chat-tab-badge{background:#f97316;color:#fff;font-size:10px;font-weight:700;padding:1px 5px;border-radius:999px}.chat-list-scroll{flex:1;overflow-y:auto}.chat-list-loading{padding:24px;text-align:center;color:var(--text-muted);font-size:13px}.back-to-queue-btn{margin:12px 14px;padding:9px 14px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-body);color:var(--text-muted);font-size:13px;cursor:pointer;display:flex;align-items:center;gap:6px}.chat-right-panel{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-surface)}.chat-conv-header{display:flex;align-items:center;gap:10px;padding:12px 20px;border-bottom:1px solid var(--border-color);flex-shrink:0}.chat-conv-header-info{flex:1}.chat-conv-username{font-size:15px;font-weight:700;color:var(--text-main)}.chat-conv-membership{font-size:12px;color:var(--text-muted);text-transform:capitalize}.chat-conv-actions{display:flex;gap:8px}.conv-action-btn{padding:8px 16px;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer}.conv-action-btn.primary{background:var(--color-primary, #1e2d3d);color:#fff}.conv-action-btn.danger{background:#e53e3e;color:#fff}.messages-area{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:8px;scrollbar-gutter:stable}.load-more-btn{align-self:center;padding:6px 16px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-body);color:var(--text-muted);font-size:12px;cursor:pointer;margin-bottom:4px}.chat-ended-banner{text-align:center;padding:10px 16px;background:#fff5f5;border:1px solid #fecaca;border-radius:8px;color:#e53e3e;font-size:13px;font-weight:500}.message-input-bar{display:flex;align-items:center;gap:8px;padding:12px 20px;border-top:1px solid var(--border-color);flex-shrink:0}.attach-btn{background:none;border:none;cursor:pointer;color:var(--text-muted);display:flex;padding:4px;transition:opacity .2s,color .2s}.attach-btn:hover:not(:disabled){color:var(--color-primary, #1e2d3d)}.attach-btn:disabled{opacity:.6;cursor:not-allowed}.message-text-input{flex:1;border:none;outline:none;font-size:14px;background:transparent;color:var(--text-main);padding:4px 0}.send-btn{width:40px;height:40px;border-radius:10px;border:none;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s}.send-btn.active{background:var(--color-primary, #1e2d3d);color:#fff;cursor:pointer}.send-btn.inactive{background:var(--border-color);color:var(--text-muted);cursor:not-allowed}.empty-conv-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-muted)}.empty-conv-state p{font-size:14px;margin:0}.request-row.skeleton{display:grid;grid-template-columns:repeat(5,1fr);padding:12px 16px;gap:12px;align-items:center}.skeleton-box{height:14px;border-radius:6px;background:linear-gradient(90deg,var(--bg-body) 25%,var(--bg-surface-hover) 50%,var(--bg-body) 75%);background-size:200% 100%;animation:shimmer 1.2s infinite}.w-16{width:60px}.w-20{width:100px}.w-24{width:140px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(max-width:768px){.page-header{padding:var(--space-4) var(--space-4) 0!important;margin-bottom:.75rem!important}.page-header h1{font-size:1.35rem!important}.table-box{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}.table-header-row,.request-row,.request-row.skeleton{min-width:600px!important}.pagination-row{flex-wrap:wrap!important;gap:8px!important;padding:.75rem 0!important}.chat-view{flex-direction:column!important;overflow-y:auto!important;overflow-x:hidden!important}.chat-left-panel{width:100%!important;min-width:unset!important;max-height:none!important;height:auto!important;border-right:none!important;border-bottom:1px solid var(--border-color)!important;flex-shrink:0!important}.chat-list-scroll{max-height:180px!important;overflow-y:auto!important}.chat-right-panel{width:100%!important;min-width:unset!important;min-height:0!important;flex:1!important}.messages-area{flex:1!important;min-height:0!important;overflow-y:auto!important;padding:10px 12px!important}.message-bubble-wrapper{max-width:85%!important}.chat-conv-header{padding:10px 12px!important}.message-input-bar{padding:8px 12px!important;position:sticky!important;bottom:0!important;background:var(--bg-surface)!important;z-index:10!important}}.user-chats-page{display:flex;flex-direction:column;gap:1.5rem}.user-info{display:flex;align-items:center;gap:.75rem}.user-avatar-sm{width:32px;height:32px;border-radius:50%;object-fit:cover}.status-badge{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;display:inline-block}.status-waiting{background-color:var(--color-orange-bg, #FFF7ED);color:var(--color-orange, #F97316)}.status-assigned{background-color:var(--color-green-bg, #ECFDF5);color:var(--color-green, #10B981)}.btn-open-chat{padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-main);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-open-chat:hover{background:var(--bg-surface-hover);border-color:var(--text-muted)}.chat-session-container{display:flex;flex-direction:column;height:calc(100vh - 80px);width:100%;margin-top:-1.5rem}.session-header{display:flex;align-items:center;padding:1.5rem 0 2rem;gap:1rem}.back-btn{background:var(--bg-surface);border:1px solid var(--border-color);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-main);transition:all .2s}.back-btn:hover{background:var(--bg-surface-hover)}.header-info h1{font-size:1.25rem;font-weight:600;margin:0;color:var(--text-main)}.subtitle{font-size:.875rem;color:var(--text-muted);margin:0}.user-badge{margin-left:auto;background:#e5e7eb;padding:.5rem 1rem;border-radius:9999px;font-size:.875rem;font-weight:500;color:#374151}.session-content{flex:1;background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);display:flex;flex-direction:column;overflow:hidden;padding:1.5rem}.messages-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:1.5rem;padding:1rem}.messages-list::-webkit-scrollbar{width:6px}.messages-list::-webkit-scrollbar-track{background:transparent}.messages-list::-webkit-scrollbar-thumb{background-color:var(--border-color);border-radius:20px}.chat-line{display:flex;flex-direction:column;max-width:65%;gap:.25rem}.chat-line.received{align-self:flex-end}.chat-line.received{align-self:flex-start;align-items:flex-start}.chat-line.sent{align-self:flex-end;align-items:flex-end}.bubble{padding:1rem 1.5rem;border-radius:var(--radius-lg);line-height:1.5;white-space:pre-line;font-size:.95rem}.bubble.client{background-color:#244b66;color:#fff;border-top-right-radius:0}.bubble.psychologist{background-color:var(--bg-surface-hover, #EBF5FF);color:var(--text-main);border-top-left-radius:0}.message-meta{font-size:.75rem;color:var(--text-muted);margin-top:.25rem;display:flex;gap:.25rem;align-items:center}.session-end-message{text-align:center;margin:2rem 0;color:var(--text-muted)}.session-end-message p{margin:.25rem 0}.sub-msg{font-size:.85rem}.session-input-area{margin-top:auto;display:flex;align-items:center;gap:1rem;padding:1rem;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-surface);color:var(--text-main);margin:0 1.5rem 1.5rem}.session-input-area input{flex:1;border:none;outline:none;font-size:.95rem;background:transparent;color:var(--text-main)}.session-input-area input::placeholder{color:var(--text-muted)}.attach-btn,.send-btn{background:none;border:none;cursor:pointer;color:var(--text-muted);transition:all .2s;display:flex;align-items:center;justify-content:center}.send-btn{color:var(--primary);background:var(--primary);color:#fff;width:36px;height:36px;border-radius:4px}.send-btn:hover{opacity:.9}[data-theme=dark] .session-add-note-btn{background:#244a66;border-color:#244a66;color:#fff}.session-timer{font-size:1.4rem;font-weight:700;font-family:Courier New,monospace;padding:.4rem .875rem;border:2px solid;border-radius:var(--radius-md);letter-spacing:2px;transition:color .5s,border-color .5s;flex-shrink:0}.bubble-sender{font-size:.72rem;font-weight:600;color:var(--text-muted);margin-bottom:3px;display:block}.typing-dots-wrapper{display:inline-flex;align-items:center;gap:4px;padding:.6rem .875rem;background:var(--bg-surface-hover, #f0f9ff);border-radius:12px 12px 12px 3px}.typing-dots-wrapper span{width:7px;height:7px;border-radius:50%;background:var(--text-muted);display:inline-block;animation:tdot 1.2s ease-in-out infinite}.typing-dots-wrapper span:nth-child(2){animation-delay:.2s}.typing-dots-wrapper span:nth-child(3){animation-delay:.4s}@keyframes tdot{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-5px);opacity:1}}[data-theme=dark] .btn-outline{color:#fff}.professionals-chat-page{padding:1.5rem;height:100%;overflow-y:auto}.professionals-chat-page .page-header{margin-bottom:2rem}.professionals-chat-page h1{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.professionals-chat-page .subtitle{color:var(--text-secondary);font-size:.9rem}.professionals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1.5rem}.professional-card{background:var(--bg-card);border-radius:1rem;padding:1.5rem;box-shadow:0 2px 8px #0000000d;display:flex;flex-direction:column;gap:1.5rem;border:1px solid var(--border-color)}.card-header{display:flex;justify-content:space-between;align-items:flex-start}.professional-info{display:flex;gap:1rem;align-items:center}.professional-info .avatar{width:48px;height:48px;border-radius:50%;object-fit:cover}.professional-info h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.professional-info .role{font-size:.8rem;color:var(--text-secondary)}.status-badge{padding:.25rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:500}.status-badge.available{background-color:#22c55e1a;color:#22c55e}.card-footer{display:flex;justify-content:space-between;align-items:flex-end;margin-top:auto}.card-stats{display:flex;gap:3rem}.stat-item{display:flex;flex-direction:column;gap:.25rem}.stat-label{font-size:.8rem;color:var(--text-secondary)}.stat-value{font-size:1rem;font-weight:600;color:var(--text-primary)}.start-chat-btn{background-color:#1e293b;color:#fff;border:none;padding:.5rem 1.5rem;border-radius:.5rem;font-size:.9rem;font-weight:500;cursor:pointer;transition:background-color .2s}.start-chat-btn:hover{background-color:#334155}@media(max-width:768px){.professionals-grid{grid-template-columns:1fr}}.student-details-modal{width:100%;max-width:560px}.info-section{margin-bottom:var(--space-6)}.info-section:last-of-type{margin-bottom:var(--space-5)}.info-hint{font-size:.75rem;color:var(--text-muted);font-style:italic;margin-top:.25rem}.student-details-modal .info-item .status-badge{display:inline;padding:0;border:0;border-radius:0;background:transparent;font-size:.9375rem;font-weight:500;letter-spacing:normal;text-transform:none;color:var(--text-main)}.student-details-modal .info-item .status-badge.status-approved{color:var(--color-green)}.student-details-modal .info-item .status-badge.status-pending{color:var(--color-yellow)}.student-details-modal .info-item .status-badge.status-rejected{color:var(--color-red)}.id-preview{margin-top:var(--space-3)}.id-preview-media{position:relative;width:256px;height:160px;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--border-color)}.id-card-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.id-expand-btn{position:absolute;top:.6rem;right:.6rem;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border:0;border-radius:9999px;background:#1118278c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);color:#fff;cursor:pointer;transition:transform .2s ease,opacity .2s ease;z-index:2}.id-expand-btn:hover{transform:scale(1.06);opacity:.92}.id-lightbox-overlay{position:fixed;inset:0;z-index:1400;background:#000000c7;display:flex;align-items:center;justify-content:center;padding:1.25rem}.id-lightbox-image{max-width:min(95vw,1200px);max-height:90vh;width:auto;height:auto;object-fit:contain;border-radius:var(--radius-md);box-shadow:0 24px 60px #00000059}.id-lightbox-close{position:absolute;top:1rem;right:1rem;width:2.25rem;height:2.25rem;border:0;border-radius:9999px;display:flex;align-items:center;justify-content:center;background:#111827b3;color:#fff;cursor:pointer;transition:transform .2s ease,opacity .2s ease}.id-lightbox-close:hover{transform:scale(1.06);opacity:.92}.verification-options{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-5)}.radio-option{display:flex;align-items:center;gap:var(--space-3);cursor:pointer;padding:var(--space-3) var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all .2s}.radio-option:hover{background:var(--bg-body)}.radio-option input[type=radio]{display:none}.radio-custom{display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.radio-custom .checked{color:var(--primary)}.radio-label{font-size:.95rem;color:var(--text-main)}[data-theme=dark] .id-preview{background:transparent;border:none}[data-theme=dark] .id-preview-media{border-color:var(--dark-border)}[data-theme=dark] .id-expand-btn,[data-theme=dark] .id-lightbox-close{background:#0000009e}[data-theme=dark] .radio-option{border-color:var(--dark-border)}[data-theme=dark] .radio-option:hover{background:var(--dark-surface-raised)}.btn-confirm-approve{background:#059669;color:#fff}.btn-confirm-approve:hover{background:#047857}[data-theme=dark] .approve-modal{background:var(--dark-surface)}.reject-modal-container{overflow:visible!important}.reject-modal-content{text-align:left;overflow:visible!important}.rejection-reason-field{text-align:left}.field-label{display:block;font-size:.85rem;font-weight:500;color:var(--text-main);margin-bottom:var(--space-2)}.custom-dropdown{position:relative}.dropdown-trigger{width:100%;padding:.75rem 1rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface);display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:border-color .2s}.dropdown-trigger:hover,.dropdown-trigger:focus{border-color:var(--primary)}.placeholder{color:var(--text-muted);font-size:.9rem}.selected-value{color:var(--text-main);font-size:.9rem}.dropdown-icon{color:var(--text-muted);transition:transform .2s}.dropdown-icon.open{transform:rotate(180deg)}.dropdown-menu{position:absolute;bottom:calc(100% + 4px);left:0;right:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 10px 25px -5px #0000001a;z-index:10;max-height:200px;overflow-y:auto}.dropdown-item{width:100%;padding:.75rem 1rem;border:none;background:transparent;text-align:left;font-size:.9rem;color:var(--text-main);cursor:pointer;transition:background .2s}.dropdown-item:hover{background:var(--bg-body)}.dropdown-item.selected{background:var(--primary-light);color:var(--primary)}.btn-delete-confirm:disabled{background:#f87171;border-color:#f87171;cursor:not-allowed;opacity:.7}[data-theme=dark] .dropdown-trigger,[data-theme=dark] .dropdown-menu{background:#1e293b;border-color:#334155}[data-theme=dark] .dropdown-item:hover{background:#334155}* Student Verification Page */ .student-verification-page{display:flex;flex-direction:column;height:100%;overflow-y:auto}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:0;gap:1rem}.student-verification-page .stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);margin-bottom:2rem;flex-shrink:0}.student-verification-page .table-container{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow-x:auto;display:flex;flex-direction:column;padding:var(--space-3)}.student-verification-page .verification-tabs{display:flex;gap:2rem;border-bottom:1px solid var(--border-color);margin-bottom:1rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-shrink:0;padding:0 var(--space-4)}.student-verification-page .verification-tabs::-webkit-scrollbar{display:none}.student-verification-page .verification-tab{display:inline-flex;align-items:center;width:fit-content;padding:0 0 .75rem;font-size:.9375rem;font-weight:500;color:var(--text-muted);background:transparent;border:none;cursor:pointer;white-space:nowrap;transition:color .2s,border-color .2s;margin-bottom:-1px;position:relative}.student-verification-page .verification-tab:hover{color:var(--text-main)}.student-verification-page .verification-tab.active{color:var(--primary)}[data-theme=dark] .student-verification-page .verification-tab.active{color:#fff}.student-verification-page .verification-tab.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:999px;background:currentColor}.student-verification-page .verification-table{width:100%;border-collapse:collapse;margin-top:var(--space-1)}.student-verification-page .verification-table th{text-align:left;padding:var(--space-3) var(--space-4);font-size:.875rem;font-weight:500;color:var(--text-muted);border-bottom:1px solid var(--border-color)}.student-verification-page .verification-table tbody tr{border-bottom:1px solid var(--border-color);transition:background .15s ease}.student-verification-page .verification-table tbody tr:last-child{border-bottom:none}.student-verification-page .verification-table tbody tr:hover{background:var(--bg-surface-hover)}.student-verification-page .verification-table td{padding:var(--space-4);font-size:.875rem;color:var(--text-main);vertical-align:middle}.student-verification-page .user-cell{font-weight:500}.table-empty{text-align:center;padding:3rem;color:var(--text-muted);font-size:.9rem}.student-verification-page .status-text{font-size:.875rem;font-weight:500;background:none!important;padding:0;border-radius:0}.student-verification-page .status-text.status-pending{color:var(--color-yellow)}.student-verification-page .status-text.status-approved{color:var(--color-green)}.student-verification-page .status-text.status-rejected{color:var(--color-red)}.student-verification-page .btn-view-details{padding:.5rem var(--space-4);border:1px solid var(--border-color);background:transparent;color:var(--text-main);font-size:.8125rem;font-weight:500;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.student-verification-page .btn-view-details:hover{color:var(--primary);border-color:var(--primary);background:var(--bg-surface-hover)}.skeleton-line{height:10px;background:var(--border-color);border-radius:4px;animation:svPulse 1.5s ease-in-out infinite}.w-160{width:160px}.skeleton-badge{width:80px;height:20px;border-radius:12px;background:var(--border-color);animation:svPulse 1.5s infinite}.skeleton-btn{width:100px;height:32px;border-radius:6px;background:var(--border-color);animation:svPulse 1.5s infinite}@keyframes svPulse{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}@media(max-width:1024px){.student-verification-page .stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.student-verification-page .stats-grid{grid-template-columns:1fr;gap:var(--space-4)}.student-verification-page .table-container{padding:var(--space-4);overflow-x:auto}.student-verification-page .verification-table{min-width:600px}.student-verification-page .verification-tabs{gap:1.5rem}}.supervision-page{gap:0;display:flex;flex-direction:column}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-6);gap:0rem}.page-header h1{font-size:1.75rem;font-weight:700;color:var(--text-main);margin:0;line-height:1.2}.page-header p{font-size:.9rem;color:var(--text-muted);margin-top:6px;line-height:1.5;max-width:520px}.page-header .header-actions{display:flex;gap:8px;align-items:center}.supervision-page .table-container{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden;border:1px solid var(--border-color);margin-top:var(--space-6)}.supervision-table{width:100%;min-width:900px;border-collapse:collapse}.supervision-table thead{background:var(--bg-surface-hover);border-bottom:1px solid var(--border-color)}.supervision-table th{padding:.875rem 1.5rem;text-align:left;font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.supervision-table tbody tr{border-bottom:1px solid var(--border-color);transition:background .15s ease}.supervision-table tbody tr:last-child{border-bottom:none}.supervision-table tbody tr:hover{background:var(--bg-surface-hover)}.supervision-table td{padding:1.25rem 1.5rem;font-size:.875rem;color:var(--text-main)}.name-cell{font-weight:500}.btn-view-chat{padding:.5rem 1rem;border:1px solid var(--border-color);background:transparent;color:var(--text-main);font-size:.875rem;font-weight:500;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.btn-view-chat:hover{background:var(--bg-surface-hover);border-color:var(--text-muted)}.supervision-page .pagination{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-top:1px solid var(--border-color);background:var(--bg-surface)}.supervision-page .pagination-info{font-size:.875rem;color:var(--text-muted)}.supervision-page .pagination-buttons{display:flex;gap:.5rem}.supervision-page .pagination-btn{width:32px;height:32px;border:1px solid var(--border-color);background:var(--bg-surface);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-main);transition:all .15s ease}.supervision-page .pagination-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.supervision-page{padding:var(--space-4);gap:1rem}.supervision-table th,.supervision-table td{padding:1rem}.supervision-page .table-container{margin-top:0rem}}.supervision-page .pagination-row{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-top:1px solid var(--border-color)}.supervision-page .pagination-info{font-size:13px;color:#9ca3af}.supervision-page .pagination-btns{display:flex;gap:8px}.supervision-page .pagination-btn{width:32px;height:32px;border-radius:6px;background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-main);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:all .15s ease}.supervision-page .pagination-btn:hover:not(:disabled){background:var(--bg-surface-hover);border-color:var(--primary);color:var(--primary)}.supervision-page .pagination-btn:disabled{opacity:.35;cursor:not-allowed}.supervision-chat-page{height:100%;display:flex;flex-direction:column;padding:var(--space-5);overflow:hidden}.supervision-chat-page .chat-container{flex:1;display:flex;flex-direction:column;background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);border:1px solid var(--border-color);overflow:hidden}.supervision-chat-page .chat-header{display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:10px 16px;min-height:auto;border-bottom:1px solid var(--border-color);background:var(--bg-surface)}.supervision-chat-page .btn-back{width:44px;height:44px;border:none;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-main);transition:all .2s;flex-shrink:0}.header-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0}.header-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:.15rem}.header-title{font-size:.875rem;font-weight:600;color:var(--text-main);margin:0;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-subtitle{font-size:.72rem;color:var(--text-muted);margin:0;line-height:1.3}.header-readonly-badge{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;color:#fef3c7;flex-shrink:0}.messages-container{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:0;padding:var(--space-6);background:var(--bg-body)}.message{max-width:60%;display:flex;flex-direction:column;gap:.375rem}.messages-container .message+.message{margin-top:.95rem}.message.sent{align-self:flex-end;align-items:flex-end}.message.received{align-self:flex-start;align-items:flex-start}.message-sender{font-size:.8rem;color:var(--text-muted);margin:0 .75rem;font-weight:500}.message-bubble{padding:var(--space-3) var(--space-4);border-radius:12px;font-size:.95rem;line-height:1.5;position:relative;box-shadow:var(--shadow-sm)}.message.sent .message-bubble{background:var(--primary);color:#fff;border-bottom-right-radius:2px}.message.received .message-bubble{background:var(--bg-surface-hover);color:var(--text-main);border-bottom-left-radius:2px;border:1px solid var(--border-color)}.message-time{font-size:.75rem;color:var(--text-muted);display:flex;align-items:center;gap:.375rem;margin:.35rem .75rem 0}.message-status{color:var(--primary)}.supervision-chat-page .chat-input-container{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-surface);border-top:1px solid var(--border-color)}.supervision-chat-page .input-wrapper{flex:1;display:flex;align-items:center;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-full);padding:0 var(--space-4);transition:border-color .2s}.supervision-chat-page .input-wrapper:focus-within{border-color:var(--primary)}.btn-attach{background:transparent;border:none;cursor:pointer;color:var(--text-muted);padding:0;margin-right:var(--space-2);display:flex;align-items:center;transition:color .2s}.btn-attach:hover{color:var(--text-main)}.supervision-chat-page .message-input{flex:1;border:none;background:transparent;padding:.5rem 0;font-size:.875rem;color:var(--text-main);outline:none}.supervision-chat-page .message-input::placeholder{color:var(--text-muted)}.btn-send{width:44px;height:44px;border-radius:50%;border:none;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;flex-shrink:0}.btn-send:hover{background:var(--primary-dark)}[data-theme=dark] .supervision-chat-page .chat-container,[data-theme=dark] .supervision-chat-page .chat-header,[data-theme=dark] .supervision-chat-page .chat-input-container{background:var(--bg-surface);border-color:var(--border-color)}[data-theme=dark] .supervision-chat-page .messages-container{background:var(--bg-body)}[data-theme=dark] .supervision-chat-page .message.received .message-bubble{background:var(--bg-surface-hover);border-color:var(--border-color)}[data-theme=dark] .supervision-chat-page .btn-back{background:var(--bg-surface);border-color:var(--border-color)}[data-theme=dark] .supervision-chat-page .btn-back:hover{background:var(--bg-surface-hover)}[data-theme=dark] .supervision-chat-page .input-wrapper{background:var(--bg-body);border-color:var(--border-color)}@media(max-width:768px){.supervision-chat-page{padding:8px}.message{max-width:88%}.supervision-chat-page .chat-header{padding:8px 10px;gap:8px}.header-title{font-size:.6rem;padding-left:1%}.header-subtitle{font-size:.68rem}.header-avatar{width:30px;height:30px}.supervision-chat-page .btn-back{width:28px;height:28px}.messages-container{padding:10px}.supervision-chat-page .chat-input-container{padding:6px 10px;gap:6px}.btn-send{width:36px;height:36px}.eye{margin-left:1.2rem}}.skeleton-line{height:10px;background:#ffffff14;border-radius:4px;animation:pulse 1.4s ease-in-out infinite}.w-40{width:40px}.w-80{width:80px}.w-120{width:120px}.w-140{width:140px}@media(max-width:640px){.supervision-chat-header{flex-direction:column;align-items:flex-start;gap:8px}.supervision-chat-header h2{font-size:1rem}}.notif-tab-bar{display:flex;border-bottom:1px solid var(--border-color);margin-bottom:1.5rem;overflow-x:auto}.notif-tab{padding:.7rem 1.15rem;border:none;background:transparent;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--text-muted);white-space:nowrap;transition:all .15s;display:flex;align-items:center;gap:6px}.notif-tab--active{border-bottom-color:var(--primary);font-weight:700;color:var(--primary)}.notif-tab-bar{display:flex;align-items:center;gap:6px;border-bottom:1px solid var(--border-color);margin-bottom:1.2rem;padding-bottom:2px;overflow-x:auto}.notif-tab-bar::-webkit-scrollbar{display:none}.notif-tab{position:relative;padding:.55rem 1rem;border:none;background:transparent;cursor:pointer;font-size:.82rem;font-weight:500;color:var(--text-muted);border-radius:6px;transition:all .2s ease;display:flex;align-items:center;gap:6px}.notif-tab:hover{color:var(--text-primary);background:var(--hover-bg)}.notif-tab--active{color:#fff}.notif-tab--active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:999px;background:#fff}.notif-tab span{background:#ef4444;color:#fff;border-radius:9999px;font-size:.6rem;font-weight:700;padding:1px 6px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:1rem}.page-header>div:first-child{display:flex;flex-direction:column}.action-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 12px;font-size:.8rem;font-weight:500;border-radius:6px;border:1px solid var(--border-color);background:var(--card-bg);color:var(--text-primary);cursor:pointer;transition:all .2s ease}.action-btn.primary{background:var(--primary);color:#fff;border:none}.action-btn.primary:hover{opacity:.9}.action-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;border:1px solid var(--border-color);background:var(--card-bg);color:var(--text-primary);cursor:pointer;transition:all .2s ease}.action-icon-btn:hover{background:var(--hover-bg)}.action-btn:hover,.action-icon-btn:hover{transform:translateY(-1px)}.btn-outline{background:var(--bg-surface);border:1px solid var(--border-color);color:var(--primary)}.btn-danger{background:#fff1f2;border:1px solid #fecaca;color:#dc2626}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:-2rem;margin-top:-1rem}.page-header-left{display:flex;flex-direction:column}.page-header-left h1{margin:0}.page-header-left p{margin:2px 0 0}.notif-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}@media(max-width:600px){.page-header{flex-direction:column;align-items:flex-start;gap:.75rem;margin-bottom:1rem;padding:.5rem}.notif-actions{width:100%;justify-content:flex-start;flex-wrap:wrap;gap:8px;margin-bottom:1.5rem;margin-top:-1rem;padding:.5em}.notif-actions button{flex-shrink:0}}.users-tabs{margin-bottom:12px;display:flex;gap:15px;flex-wrap:wrap}.btn{display:flex;align-items:center;gap:6px;padding:.45rem .875rem;border-radius:var(--radius-md);font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s ease;border:none}.btn-secondary{background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-muted)}.btn-primary{background:var(--primary);color:#fff}.btn-success{background:#22c55e;color:#fff}.btn:disabled{opacity:.6;cursor:not-allowed}.skeleton-line{height:12px;background:#ffffff14;border-radius:4px;animation:pulse 1.4s infinite}.w-60{width:60px}.w-100{width:100px}.skeleton-input{height:38px;width:100%;background:#ffffff14;border-radius:6px;animation:pulse 1.4s infinite}.skeleton-textarea{height:320px;width:100%;background:#ffffff14;border-radius:6px;animation:pulse 1.4s infinite}@keyframes pulse{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}.terms-page .btn{display:flex;align-items:center;gap:6px;padding:.45rem .875rem;border-radius:var(--radius-md);font-size:.82rem;font-weight:600;cursor:pointer}.terms-page .btn-secondary{background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-muted)}.terms-page .btn-primary{background:var(--primary);color:#fff}.terms-page .btn-success{background:#22c55e;color:#fff}.terms-page .page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:.75rem!important}.terms-page .header-actions{display:flex;gap:8px;flex-wrap:wrap}.terms-page,[data-theme=dark] .terms-page{--terms-tab-active-bg: #244A66;--terms-tab-active-color: #fff}.terms-page .glass-panel{padding:1.5rem}.terms-page textarea{min-height:300px}.terms-page .skeleton-line{height:12px;background:#ffffff14}.terms-page .terms-layout{display:grid;grid-template-columns:220px 1fr;gap:20px;margin-top:.25rem}@media(max-width:600px){.terms-page .terms-layout{display:flex!important;flex-direction:column!important;gap:16px}.terms-page .terms-sidebar{display:block;width:100%}.terms-page .terms-sidebar button{width:100%;text-align:left}.terms-page .glass-panel{width:100%}.terms-page textarea{width:100%;min-height:220px}}.sessions-page{display:flex;flex-direction:column;gap:1.5rem}.sessions-stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}@media(max-width:768px){.sessions-stats-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.sessions-stats-row{grid-template-columns:1fr}}.sessions-table-wrapper{border-radius:14px;overflow:hidden;border:1px solid var(--border-color);padding:0;margin-top:-1.5rem;width:100%;overflow-x:auto}.sessions-table{border-collapse:collapse;min-width:700px}.sessions-table thead tr{border-bottom:1px solid var(--border-color)}.sessions-table th{padding:.9rem 1.25rem;text-align:left;font-size:.78rem;font-weight:500;color:var(--text-muted)}.sessions-table td{padding:.75rem 1.25rem;font-size:.875rem;color:var(--text-main);border-bottom:1px solid var(--border-color);vertical-align:middle;line-height:1.35}.sessions-table tbody tr:last-child td{border-bottom:none}.sessions-table tbody tr:hover{background:var(--hover-bg, rgba(0, 0, 0, .02))}.sessions-user-cell{display:flex;align-items:center;gap:.75rem;font-weight:500}.sessions-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;background:#eee}.sessions-muted{color:var(--text-muted)!important;font-size:.82rem!important}.sessions-filter-row{display:flex;gap:.5rem;flex-wrap:wrap}.sessions-avatar-initials{width:32px;height:32px;border-radius:50%;background:#6366f1;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.85rem;flex-shrink:0}.sessions-stat-card{display:flex;align-items:center;gap:.75rem}.sessions-status-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500}.sessions-stats-row .stat-icon{width:34px!important;height:34px!important;font-size:14px!important;border-radius:8px}.sessions-stats-row .stat-icon{background:transparent!important}.status-scheduled{color:#3b82f6}.status-in-progress{color:#a16207}.status-completed{color:#1d4ed8}.status-cancelled{color:#ef4444}.btn-start-session{display:inline-flex;align-items:center;gap:5px;padding:.45rem 1rem;background:#6366f1;color:#fff;border-radius:var(--radius-md);font-size:.8rem;font-weight:500;border:none;cursor:pointer;transition:background .2s}.btn-start-session:hover{background:#4f46e5}.sess-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;width:fit-content;height:fit-content;background:transparent!important}.sess-badge.badge-blue{background:transparent!important;color:#1d4ed8}.sess-badge.badge-green{background:transparent!important;color:#15803d}.sess-badge.badge-yellow{background:transparent!important;color:#a16207}.sess-badge.badge-yellow-bright{background:transparent!important;color:#facc15}.sess-badge.badge-gray{background:transparent!important;color:#6b7280}.sess-badge.badge-red{background:transparent!important;color:#dc2626}.sessions-filters{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem;color:var(--text-muted)}.sess-filter-btn{padding:.35rem .875rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-muted);font-size:.8rem;cursor:pointer;transition:all .15s}.sess-filter-btn.active,.sess-filter-btn:hover{background:#244a66;color:#fff;border-color:#244a66}.sessions-actions{display:flex;gap:6px;align-items:center;flex-wrap:nowrap}.sessions-actions-cell{min-width:210px}.sessions-table th:nth-child(4),.sessions-table td:nth-child(4){width:200px}.sessions-table th:nth-child(5),.sessions-table td:nth-child(5){width:250px}.sessions-table th:nth-child(2),.sessions-table td:nth-child(2){min-width:170px;white-space:normal;word-break:break-word}.sessions-empty,.sessions-error{padding:1.5rem;text-align:center;font-size:.875rem;color:var(--text-muted)}.sessions-error{color:#dc2626}.sessions-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1rem;font-size:.875rem;color:var(--text-muted)}@media(max-width:768px){.sessions-header{flex-direction:column;align-items:flex-start}.sessions-table{min-width:620px}.sessions-table th,.sessions-table td{padding:.65rem .75rem}.sessions-table th:nth-child(2),.sessions-table td:nth-child(2){min-width:150px}}.sess-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.sess-modal{background:var(--bg-surface);border-radius:var(--radius-lg);padding:1.5rem;width:480px;max-width:90vw;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:.875rem}.sess-modal h3{margin:0;font-size:1.1rem;font-weight:600}.sess-modal-sub{margin:0;font-size:.875rem;color:var(--text-muted)}.sess-note-input{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-body);color:var(--text-main);font-size:.875rem;font-family:inherit;resize:vertical;outline:none;transition:border-color .2s}.sess-note-input:focus{border-color:#6366f1}.sess-private-check{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-main);cursor:pointer}.sess-err{color:#dc2626;font-size:.8rem;margin:0}.sess-modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.25rem}.sessions-tabs{display:flex;gap:2rem;border-bottom:1px solid var(--border-color);margin-bottom:1rem;overflow-x:auto;scrollbar-width:none}.sessions-tabs::-webkit-scrollbar{display:none}.sessions-tab{display:inline-flex;align-items:center;width:fit-content;padding:0 0 .75rem;font-size:.9375rem;font-weight:500;color:var(--text-muted);background:transparent;border:none;cursor:pointer;white-space:nowrap;transition:all .2s;margin-bottom:-1px;position:relative}.sessions-tab:hover{color:var(--text-main)}.sessions-tab.active{color:var(--primary)}[data-theme=dark] .active{color:#fff}.sessions-tab.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:999px;background:currentColor}.smm-overlay{position:fixed;inset:0;z-index:9999;background:#0000008c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:1rem;overflow-y:auto;-webkit-overflow-scrolling:touch}.smm-modal{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:14px;width:540px;max-width:96vw;max-height:calc(100dvh - 2rem);overflow-y:auto;display:flex;flex-direction:column;box-shadow:0 0 0 1px var(--border-color),0 24px 60px #00000040;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent;margin:auto}.smm-modal--narrow{width:400px}.smm-header{display:flex;align-items:center;justify-content:space-between;padding:1.125rem 1.5rem;border-bottom:1px solid var(--border-color);flex-shrink:0}.smm-header h2{font-size:1rem;font-weight:700;margin:0;color:var(--text-main)}.smm-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--text-main);color:var(--bg-surface);border:none;cursor:pointer;transition:opacity .15s}.smm-close:hover{opacity:.72}.smm-pro-banner{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.5rem;background:var(--bg-body);border-bottom:1px solid var(--border-color)}.smm-pro-avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;border:2px solid var(--border-color)}.smm-pro-name{display:block;font-weight:700;font-size:.9rem;color:var(--text-main)}.smm-pro-role{display:block;font-size:.72rem;color:var(--text-muted)}.smm-body{display:grid;grid-template-columns:1.35fr 1fr;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color)}.smm-cal-section{padding-right:1rem;border-right:1px solid var(--border-color)}.smm-cal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.875rem}.smm-cal-title{font-weight:700;font-size:.875rem;color:var(--text-main)}.smm-nav-btn{background:none;border:none;cursor:pointer;color:var(--text-muted);padding:4px;border-radius:6px;display:flex;align-items:center;transition:background .15s}.smm-nav-btn:hover{background:var(--bg-body)}.smm-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.smm-cal-dayname{text-align:center;font-size:.63rem;font-weight:600;color:var(--text-muted);padding:3px 0 5px;text-transform:uppercase}.smm-cal-cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:.78rem;cursor:pointer;background:none;border:none;color:var(--text-main);transition:background .12s;font-family:inherit}.smm-cal-cell:hover:not(.smm-cal-cell--past):not(.smm-cal-cell--empty){background:var(--bg-surface-hover)}.smm-cal-cell--selected{background:var(--primary)!important;color:#fff!important;font-weight:700}.smm-cal-cell--today:not(.smm-cal-cell--selected){border:2px solid var(--primary);color:var(--primary);font-weight:700}.smm-cal-cell--past{color:var(--text-muted);cursor:not-allowed;opacity:.38}.smm-cal-cell--empty{cursor:default}.smm-time-section{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding-left:1rem}.smm-time-display{font-size:1.4rem;font-weight:700;color:var(--text-main);letter-spacing:.04em;text-align:center}.smm-time-drums{display:flex;border:1px solid var(--border-color);border-radius:10px;overflow:hidden;height:160px;width:100%;background:var(--bg-surface)}.smm-drum{flex:1;overflow-y:auto;display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent;border-right:1px solid var(--border-color)}.smm-drum:last-child{border-right:none}.smm-drum-item{flex-shrink:0;padding:7px 4px;text-align:center;font-size:.82rem;background:none;border:none;cursor:pointer;color:var(--text-muted);transition:background .12s;font-family:inherit}.smm-drum-item:hover:not(.smm-drum-item--active){background:var(--bg-surface-hover)}.smm-drum-item--active{background:var(--primary)!important;color:#fff;font-weight:700}.smm-zoom-row{padding:.875rem 1.5rem;border-bottom:1px solid var(--border-color)}.smm-zoom-label{display:flex;align-items:center;gap:.375rem;font-size:.825rem;font-weight:600;color:var(--text-main);margin-bottom:.5rem}.smm-zoom-input{width:100%;padding:.6rem .875rem;border:1px solid var(--border-color);border-radius:8px;font-size:.85rem;background:var(--bg-surface);color:var(--text-main);outline:none;box-sizing:border-box;font-family:inherit;transition:border-color .15s}.smm-zoom-input:focus{border-color:var(--primary)}.smm-zoom-input::placeholder{color:var(--text-muted)}.smm-footer{display:flex;gap:.75rem;padding:1rem 1.5rem;flex-shrink:0}.smm-btn-outline{flex:1;padding:.65rem 1rem;border:1.5px solid var(--border-color);border-radius:8px;background:transparent;cursor:pointer;font-size:.875rem;color:var(--text-main);font-weight:500;font-family:inherit;transition:background .15s}.smm-btn-outline:hover:not(:disabled){background:var(--bg-body)}.smm-btn-outline:disabled{opacity:.5;cursor:not-allowed}.smm-btn-primary{flex:1.5;padding:.65rem 1rem;border:none;border-radius:8px;background:var(--primary);color:#fff;cursor:pointer;font-size:.875rem;font-weight:700;font-family:inherit;transition:opacity .15s}.smm-btn-primary:hover:not(:disabled){opacity:.88}.smm-btn-primary:disabled{opacity:.55;cursor:not-allowed}.smm-confirm-screen{padding:2rem 1.5rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.875rem}.smm-confirm-icon{font-size:2.5rem;line-height:1}.smm-confirm-screen h3{font-size:1.05rem;font-weight:700;margin:0;color:var(--text-main)}.smm-confirm-screen p{font-size:.875rem;color:var(--text-muted);max-width:300px;margin:0;line-height:1.6}.smm-confirm-actions{display:flex;gap:.75rem;width:100%;margin-top:.5rem}@media(max-height:780px){.smm-overlay{align-items:flex-start}.smm-modal{max-height:calc(100dvh - 2rem);margin:1rem auto}}@media(max-width:768px){.smm-overlay{align-items:flex-start}.smm-modal{max-height:calc(100dvh - 1.5rem);margin:.75rem auto}}.pdm-overlay{position:fixed;inset:0;z-index:9000;background:#00000085;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:1rem}.pdm-modal{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:14px;width:500px;max-width:96vw;max-height:88vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 0 0 1px var(--border-color),0 20px 48px #00000038}.pdm-header{display:flex;align-items:center;justify-content:space-between;padding:1.125rem 1.375rem;border-bottom:1px solid var(--border-color);flex-shrink:0}.pdm-title{margin:0;font-size:1rem;font-weight:700;color:var(--text-main)}.pdm-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--text-main);color:var(--bg-surface);border:none;cursor:pointer;transition:opacity .15s;flex-shrink:0}.pdm-close:hover{opacity:.75}.pdm-profile-row{display:flex;align-items:center;gap:1rem;padding:1.125rem 1.375rem;border-bottom:1px solid var(--border-color)}.pdm-avatar{width:56px;height:56px;border-radius:50%;object-fit:cover;border:2px solid var(--border-color);flex-shrink:0}.pdm-profile-info{flex:1;display:flex;flex-direction:column;gap:.3rem}.pdm-pro-name{font-size:1rem;font-weight:700;color:var(--text-main)}.pdm-rating-row{display:flex;align-items:center;gap:.3rem}.pdm-star{color:#f59e0b;fill:#f59e0b}.pdm-rating-text{font-size:.825rem;font-weight:600;color:var(--text-main)}.pdm-rating-count{font-weight:400;color:var(--text-muted);margin-left:3px}.pdm-status-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:.75rem;font-weight:600;flex-shrink:0}.pdm-status-active{background:var(--color-green-bg);color:var(--color-green)}.pdm-status-inactive{background:var(--color-red-bg);color:var(--color-red)}.pdm-stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;padding:1rem 1.375rem;border-bottom:1px solid var(--border-color)}.pdm-stat-box{border:1px solid var(--border-color);border-radius:10px;padding:.75rem .875rem;display:flex;flex-direction:column;gap:.375rem;background:var(--bg-body)}.pdm-stat-label{font-size:.7rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.pdm-stat-value{font-size:1.25rem;font-weight:700;color:var(--text-main)}.pdm-table-wrap{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent}.pdm-table{width:100%;border-collapse:collapse;font-size:.85rem}.pdm-table thead tr{border-bottom:1px solid var(--border-color);background:var(--bg-body)}.pdm-table th{padding:.625rem 1.375rem;text-align:left;font-size:.75rem;font-weight:600;color:var(--text-muted);white-space:nowrap}.pdm-table th:not(:first-child){text-align:center}.pdm-table tbody tr{border-bottom:1px solid var(--border-color);transition:background .12s}.pdm-table tbody tr:last-child{border-bottom:none}.pdm-table tbody tr:hover{background:var(--bg-surface-hover)}.pdm-table td{padding:.75rem 1.375rem;color:var(--text-main);vertical-align:middle}.pdm-td-center{text-align:center}.pdm-user-cell{display:flex;align-items:center;gap:.625rem}.pdm-user-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0;border:1.5px solid var(--border-color)}.pdm-username{font-weight:500;color:var(--text-main)}.pdm-loading-row,.pdm-empty-row{text-align:center;padding:2rem 1rem;color:var(--text-muted);font-size:.875rem}.pdm-footer{display:flex;gap:.75rem;padding:1rem 1.375rem;border-top:1px solid var(--border-color);flex-shrink:0}.pdm-btn-close{flex:1;padding:.65rem 1.25rem;border:1.5px solid var(--border-color);border-radius:8px;background:transparent;color:var(--text-main);font-size:.875rem;font-weight:500;cursor:pointer;font-family:inherit;transition:background .15s}.pdm-btn-close:hover{background:var(--bg-body)}.pdm-btn-schedule{flex:1.6;padding:.65rem 1.25rem;border:none;border-radius:8px;background:var(--primary);color:#fff;font-size:.875rem;font-weight:700;cursor:pointer;font-family:inherit;transition:opacity .15s}.pdm-btn-schedule:hover{opacity:.88}.ps-dashboard{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}@media(min-width:769px){.ps-dashboard{gap:1rem}.ps-header-actions{margin-top:.35rem}}.ps-dashboard-header h1{font-size:1.75rem;font-weight:600;margin:0 0 .25rem;color:var(--text-main)}.ps-dashboard-header p{font-size:.875rem;color:var(--text-muted);margin:0}.ps-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.ps-content-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:1.25rem;align-items:start}.ps-table-panel{padding:1.5rem;min-width:0}.ps-table-container{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.ps-supervision-table{width:100%;border-collapse:collapse;min-width:650px}.ps-right-col{display:flex;flex-direction:column;gap:16px;position:sticky;top:24px}.ps-section-title{font-size:1rem;font-weight:600;color:var(--text-main);margin:0 0 1.25rem}.ps-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;width:100%}.ps-section-header .ps-section-title{margin-bottom:0}.ps-section-actions{display:flex;gap:.75rem;align-items:center;justify-content:flex-end}.ps-section-actions .btn{margin:0}.ps-supervision-table th{text-align:left;padding:12px;color:var(--text-muted);font-size:.85rem;font-weight:600;border-bottom:1px solid var(--border-color)}.ps-supervision-table th:last-child{text-align:center}.ps-supervision-table td{padding:16px 12px;color:var(--text-main);font-size:.95rem;border-bottom:1px solid var(--border-color);vertical-align:middle}.ps-supervision-table tr:last-child td{border-bottom:none}.ps-table-actions{display:flex;align-items:center;justify-content:center;gap:10px;min-width:120px}.ps-qa-panel{padding:1.25rem;overflow:hidden}.ps-quick-actions-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;width:100%;box-sizing:border-box}.ps-quick-action{width:100%!important;max-width:100%;box-sizing:border-box;padding:1rem .5rem!important}.ps-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:.35rem}.ps-availability-switch{position:relative;width:44px;height:24px;border:none;background:transparent;padding:0;cursor:pointer}.ps-availability-switch:disabled{opacity:.6;cursor:not-allowed}.ps-availability-switch-track{position:absolute;inset:0;border-radius:999px;background:#d1d5db;transition:background-color .2s}.ps-availability-switch-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .2s}.ps-availability-switch.is-on .ps-availability-switch-track{background:#22c55e}.ps-availability-switch.is-on .ps-availability-switch-thumb{transform:translate(20px)}.ps-avail-badge{display:flex;align-items:center;gap:6px;padding:5px 12px;border-radius:20px;font-size:13px;font-weight:500}.avail-on{background:#22c55e1f;color:#16a34a}.avail-off{background:#ef44441f;color:#dc2626}.ps-avail-dot{width:8px;height:8px;border-radius:50%}.avail-on .ps-avail-dot{background:#16a34a}.avail-off .ps-avail-dot{background:#dc2626}.ps-error-banner{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#dc2626;padding:10px 16px;border-radius:8px;margin-bottom:0}.ps-upcoming-banner{display:flex;align-items:center;gap:12px;padding:10px 16px;border-left:3px solid var(--primary, #6366f1);margin-bottom:0;flex-wrap:wrap}.ps-upcoming-banner span{flex:1;font-size:14px}.ps-pro-cell{display:flex;align-items:center;gap:12px;white-space:nowrap}.ps-pro-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0}.ps-muted{color:var(--text-muted, #94a3b8);font-size:13px}.ps-attendance-badge{padding:3px 10px;border-radius:20px;font-size:12px;font-weight:600}.badge-green{background:#22c55e1f;color:#16a34a}.badge-amber{background:#f59e0b1f;color:#d97706}.ps-mini-stats{padding:20px}.ps-mini-stat-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:14px}.ps-mini-stat-row:last-child{border-bottom:none}.ps-mini-stat-row strong{font-size:16px}.ps-empty-state{text-align:center;padding:40px;color:var(--text-muted, #94a3b8)}@media(max-width:1300px){.ps-quick-actions-list{grid-template-columns:1fr}}@media(max-width:1100px){.ps-stats-grid{grid-template-columns:repeat(2,1fr)}.ps-content-grid{grid-template-columns:1fr}.ps-right-col{position:static}}@media(max-width:768px){.ps-stats-grid{grid-template-columns:1fr;gap:.75rem}.ps-stat-card{padding:1rem}.ps-stat-value{font-size:1.5rem}.ps-stat-subtext{font-size:.7rem}.ps-content-grid{gap:1rem}.ps-table-panel,.ps-qa-panel{padding:1rem}.ps-section-header{flex-direction:column;align-items:flex-start;gap:1rem}.ps-supervision-table th,.ps-supervision-table td{padding:8px 4px;font-size:.8rem}}@media(max-width:480px){.ps-stats-grid{grid-template-columns:1fr}}.ps-dashboard .page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:0}.ps-dashboard .page-header h1{font-size:1.75rem;font-weight:600;margin:0 0 .25rem;color:var(--text-main)}.ps-dashboard .page-header p{font-size:.875rem;color:var(--text-muted);margin:0}.session-item{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--border-color);transition:background-color .2s;cursor:pointer}.session-item:hover{background-color:var(--bg-surface-hover)}.session-icon-wrapper{display:flex;align-items:center;padding:.75rem;background-color:var(--bg-body);border-radius:.5rem;color:var(--text-muted)}.dashboard-grid-top{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:0rem}@media(max-width:1100px){.dashboard-grid-top{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.dashboard-grid-top{grid-template-columns:1fr}}.upcoming-sessions-panel{overflow:hidden;display:flex;flex-direction:column;height:100%}.upcoming-sessions-header{padding:1rem 1.25rem;border-bottom:1px solid var(--border-color)}.upcoming-sessions-list{overflow-y:auto;max-height:600px}.dashboard-grid-middle{grid-template-columns:1fr;align-items:stretch;margin-bottom:0}@media(max-width:768px){.session-item{padding:.875rem}}[data-theme=dark] .session-item a{color:#fff!important;border-color:#fff!important}.modal-table-wrapper{max-height:60vh;overflow-y:auto;margin-bottom:1.5rem;padding:0 1.5rem}.modal-table{width:100%;border-collapse:collapse}.modal-table th{padding:.75rem;text-align:left;font-size:.75rem;font-weight:500;color:var(--text-muted);letter-spacing:.05em;border-bottom:1px dotted var(--border-color)}.modal-table td{padding:1rem .75rem;border-bottom:1px dotted var(--border-color);font-size:.875rem;color:var(--text-main)}.question-card{margin-bottom:1.5rem}.question-label{font-size:.75rem;font-weight:400;color:var(--text-muted);margin-bottom:.5rem}.question-text{font-size:.85rem;font-weight:300;color:var(--text-main);margin-bottom:.5rem}.modal-input{font-weight:300;background-color:var(--bg-body);padding:.75rem;border-radius:.5rem;border:.5px solid var(--border-color);color:var(--text-muted);font-size:.875rem;width:100%}.dual-pane-container{display:flex;flex:1;overflow:hidden}.pane{flex:1;display:flex;flex-direction:column;padding:1.5rem;overflow:hidden}.pane-left{border-right:1px solid var(--border-color)}.btns{display:flex;gap:.75rem;align-items:center;width:300px}.dropdown-item{transition:background-color .2s;padding:.75rem 1rem;cursor:pointer;font-size:.75rem;color:var(--text-main);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-color)}.dropdown-item:hover{background-color:var(--bg-surface-hover)}.user-list-item{display:flex;align-items:center;padding:.75rem;border-radius:.5rem;border:1px solid var(--border-color);margin-bottom:.5rem;cursor:pointer;transition:background-color .2s}.user-list-item.selected{background-color:var(--bg-surface-hover)}.checkbox-visual{width:18px;height:18px;border-radius:4px;border:1px solid var(--border-color);margin-right:.75rem;display:flex;align-items:center;justify-content:center}.checkbox-visual.checked{border:none;background-color:var(--primary)}.group-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.group-selection-card{padding:1rem;border-radius:.75rem;cursor:pointer;transition:all .2s;border:1px solid var(--border-color);background-color:transparent}.group-selection-card.selected{border:1px solid var(--primary);background-color:var(--bg-surface-hover);box-shadow:0 0 0 1px var(--primary)}.custom-scrollbar::-webkit-scrollbar{width:6px}.custom-scrollbar::-webkit-scrollbar-track{background:var(--bg-body);border-radius:4px}.custom-scrollbar::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.users-table-container{padding:0;overflow:hidden}.users-table-wrapper{overflow-x:auto}.users-table{width:100%;border-collapse:collapse}.users-table-row{border-bottom:1px dotted var(--border-color);transition:background-color .2s}.users-table-row:hover{background-color:var(--bg-surface-hover)}.users-table-header{padding:1.25rem 1.5rem;font-size:.75rem;font-weight:500;color:var(--text-muted);letter-spacing:.05em}.users-table-cell{padding:1rem 1.5rem;color:var(--text-main);font-size:.9rem}.pu-page{display:flex;flex-direction:column;gap:var(--space-6)}.pu-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:0;flex-shrink:0}.pu-title{font-size:1.25rem;font-weight:600;color:var(--text-main);margin-bottom:2px}.pu-subtitle{font-size:.875rem;color:var(--text-muted)}.pu-stats{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);margin-bottom:-.5rem;flex-shrink:0}.pu-stat-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3)}.pu-stat-label{font-size:.8rem;color:var(--text-muted);font-weight:400}.pu-stat-value{font-size:2rem;font-weight:700;color:var(--text-main);line-height:1;font-family:Outfit,sans-serif}.pu-tabs{display:flex;gap:0;border-bottom:1px solid var(--border-color);margin-bottom:var(--space-4);flex-shrink:0}.pu-tab{padding:.6rem 1.25rem;font-size:.875rem;font-weight:500;color:var(--text-muted);background:transparent;border:none;cursor:pointer;transition:all var(--transition-fast);margin-bottom:-1px;position:relative}.pu-tab:hover{color:var(--text-main)}.pu-tab.active{color:var(--primary)}[data-theme=dark] .pu-tab.active,[data-theme=dark] .moderation-tab.active{color:#fff}.pu-tab.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:999px;background:currentColor}.pu-table-wrapper{flex:1;overflow-y:auto;overflow-y:visible}.pu-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.pu-name{font-weight:500;font-size:.875rem;color:var(--text-main)}.pu-badge{font-size:.75rem;padding:.2rem .65rem;border-radius:var(--radius-full);font-weight:500;display:inline-block}.pu-badge-pending{color:#ca8a04}.pu-badge-active{color:var(--color-green)}.pu-badge-inactive{color:var(--text-muted)}.pu-actions-cell{display:flex;align-items:center;justify-content:center;gap:.5rem}@media(max-width:768px){.pu-stats{grid-template-columns:1fr;gap:var(--space-4)}}.table-container-users{margin-top:-1.5rem;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden}.table-footer{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1.25rem;background:transparent;margin-top:0}.showing-text{font-size:.875rem;color:var(--text-muted)}.pagination-buttons{display:flex;align-items:center;gap:.5rem}.pagination-btn{width:32px;height:32px;border-radius:8px;border:1px solid var(--border-color);background:transparent;color:var(--text-main);display:flex;align-items:center;justify-content:center;transition:all .2s ease}.pagination-btn:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.users-table tr:last-child .users-table-cell{border-bottom:none;padding-bottom:.5rem}.pu-table-wrapper .users-table-cell{padding-top:.4rem!important;padding-bottom:.4rem!important}.users-table{width:100%;table-layout:fixed}.pu-user-cell{display:flex;align-items:center;gap:.75rem}.simple-stat-card{padding:1rem;display:flex;flex-direction:column;justify-content:center}.stat-card-title{color:var(--text-muted);font-size:.875rem;font-weight:500;margin-bottom:.5rem}.stat-card-value{font-size:2.5rem;font-weight:600;margin:0}.pending-users-header{display:flex;justify-content:space-between;align-items:center}.btn-assign-users{background-color:var(--primary);color:#fff;padding:1rem;height:2.75rem;border-radius:.75rem;display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:300;border:none;cursor:pointer}.stats-grid{display:grid;grid-template-columns:1fr 1fr 1fr;margin-bottom:2rem;gap:1rem}.user-cell{display:flex;align-items:center;gap:.75rem}.user-avatar{width:32px;height:32px;border-radius:50%}.user-name{font-weight:500;font-size:.875rem;color:var(--text-main)}.status-pending{font-size:.75rem;padding:.25rem .75rem;border-radius:999px;font-weight:500;background-color:#fef9c3;color:#ca8a04}.actions-cell{display:flex;align-items:center;justify-content:flex-end;gap:.5rem}.btn-review{padding:.5rem 1rem;border:1px solid var(--text-main);border-radius:.5rem;font-size:.875rem;font-weight:500;color:var(--text-main);background-color:transparent;cursor:pointer}.btn-assign-action{padding:.5rem 1rem;background-color:var(--primary);color:#fff;border-radius:.5rem;font-size:.875rem;font-weight:500;border:none;cursor:pointer}.sgs-modal{width:520px;max-width:96vw;max-height:92vh;display:flex;flex-direction:column}.sgs-cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.sgs-cal-label{display:flex;gap:.4rem;align-items:center;font-weight:600;font-size:.9rem}.sgs-select{background:transparent;border:none;font-size:.9rem;font-weight:600;color:var(--text-main);font-family:Inter,sans-serif;cursor:pointer;outline:none}.sgs-nav-btn{background:none;border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.2rem .4rem;cursor:pointer;display:inline-flex;align-items:center;color:var(--text-muted);transition:background var(--transition-fast)}.sgs-nav-btn:hover{background:var(--bg-surface-hover)}.sgs-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:.25rem}.sgs-wd{text-align:center;font-size:.7rem;font-weight:600;color:var(--text-muted);padding:.25rem 0}.sgs-week{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:2px}.sgs-day{text-align:center;padding:.35rem 0;font-size:.8rem;border:none;background:none;cursor:pointer;border-radius:var(--radius-sm);color:var(--text-main);transition:background var(--transition-fast)}.sgs-day:hover:not(.sgs-day-other){background:var(--bg-surface-hover)}.sgs-day-other{color:var(--text-muted);opacity:.4;cursor:default}.sgs-day-selected{background:var(--primary)!important;color:#fff!important;border-radius:var(--radius-sm)}.sgs-time-picker{display:flex;gap:.25rem;align-items:center;justify-content:center;padding-top:2rem}.sgs-time-col{display:flex;flex-direction:column;align-items:center;gap:.25rem}.sgs-time-scroll{display:flex;flex-direction:column;align-items:center;gap:.2rem}.sgs-time-item{font-size:.85rem;color:var(--text-muted);width:40px;text-align:center;padding:.2rem 0;border-radius:var(--radius-sm)}.sgs-time-item.active{font-size:1.1rem;font-weight:700;color:var(--text-main);background:var(--bg-surface-hover)}.sgs-time-btn{background:none;border:none;font-size:.6rem;cursor:pointer;color:var(--text-muted);padding:2px 8px;transition:color var(--transition-fast)}.sgs-time-btn:hover{color:var(--text-main)}.sgs-zoom-label{display:block;font-size:.8rem;font-weight:500;color:var(--text-muted);margin-bottom:.4rem}.ss-modal-overlay{overflow-y:auto;-webkit-overflow-scrolling:touch}.ss-modal-content{max-height:calc(100dvh - 2rem);margin:1rem auto;display:flex;flex-direction:column;overflow:hidden}.ss-modal-body{flex:1;min-height:0;overflow-y:auto}.ss-modal-footer{flex-shrink:0}@media(max-height:780px){.ss-modal-overlay{align-items:flex-start}.ss-modal-content{max-height:calc(100dvh - 1.5rem);margin:.75rem auto}}@media(max-width:768px){.ss-modal-overlay{align-items:flex-start}.ss-modal-content{max-height:calc(100dvh - 1rem);margin:.5rem auto}}.ss-label{display:block;font-size:.8rem;font-weight:500;color:var(--text-muted);margin-bottom:.4rem}.modal-header{position:relative}.modal-close-btn{position:absolute;top:12px;right:12px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:transparent;border:1px solid var(--border-color);cursor:pointer;transition:all .2s ease}.ss-field{display:flex;flex-direction:column}.ss-input{width:100%;padding:.6rem .875rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-body);color:var(--text-main);font-size:.875rem;font-family:Inter,sans-serif;outline:none;transition:border-color var(--transition-fast)}.ss-input:focus{border-color:var(--primary)}.ss-input::placeholder{color:var(--text-muted);font-weight:300}.ss-datetime{color-scheme:light}[data-theme=dark] .ss-datetime{color-scheme:dark}.ss-dropdown-wrapper{position:relative;display:flex;align-items:center;justify-content:space-between;padding:.6rem .875rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-body);cursor:pointer;transition:border-color var(--transition-fast);-webkit-user-select:none;user-select:none}.ss-dropdown-wrapper:hover{border-color:var(--text-muted)}.ss-placeholder{font-size:.875rem;color:var(--text-muted);font-weight:300}.ss-select-value{font-size:.875rem;color:var(--text-main)}.ss-chevron{color:var(--text-muted);flex-shrink:0}.ss-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);z-index:200;overflow:hidden}.ss-dropdown-item{padding:.65rem .875rem;font-size:.875rem;color:var(--text-main);cursor:pointer;transition:background var(--transition-fast);border-bottom:1px solid var(--border-color)}.ss-dropdown-item:last-child{border-bottom:none}.ss-dropdown-item:hover{background:var(--bg-surface-hover)}.groups-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6);margin-bottom:var(--space-6)}@media(max-width:1200px){.groups-grid{grid-template-columns:1fr}}.group-card{display:flex;flex-direction:column;gap:1rem;padding:1rem;min-width:10px}.group-header h3{font-size:1.125rem;font-weight:600;margin-bottom:.25rem}.group-header p{font-size:.875rem}.group-progress-info{display:flex;justify-content:space-between;font-size:.875rem;margin-bottom:.5rem}.group-progress-bar{width:100%;height:6px;background-color:var(--border-color);border-radius:3px;overflow:hidden}.group-progress-fill{height:100%;background-color:var(--primary);border-radius:3px}.group-session-info{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:var(--text-muted)}.group-session-time{font-weight:500;color:var(--text-main)}.group-actions{display:flex;gap:.5rem;margin-top:auto;flex-wrap:wrap}.btn-schedule-session{flex:1;min-width:fit-content;padding:.6rem;background-color:var(--primary);color:#fff;border-radius:.5rem;font-size:.8rem;font-weight:500;border:none;cursor:pointer}.btn-view-members,.btn-open-chat{flex:1;min-width:fit-content;padding:.6rem;border:1px solid var(--border-color);border-radius:.5rem;font-size:.8rem;font-weight:500;color:var(--text-main);background-color:transparent;cursor:pointer}.my-groups-header{margin-bottom:2rem}.my-groups-title{font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.my-groups-page{padding:0;display:flex;flex-direction:column;gap:var(--space-6)}.my-groups-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:0}.my-groups-header h1{margin:0 0 4px;font-size:1.75rem;font-weight:600;color:var(--text-main)}.my-groups-header p{margin:0;color:var(--text-muted, #94a3b8);font-size:.875rem}.myg-status-dot{width:8px;height:8px;border-radius:50%}.dot-on{background:#22c55e}.dot-off{background:#94a3b8}.myg-edit-btn{background:transparent;border:none;cursor:pointer;color:var(--text-muted, #94a3b8);padding:4px}.myg-edit-btn:hover{color:var(--primary, #6366f1)}.myg-desc{font-size:12px;margin-top:4px}.myg-error{background:#ef44441a;color:#dc2626;padding:10px 16px;border-radius:8px;margin-bottom:16px}.myg-empty{text-align:center;padding:50px;color:var(--text-muted, #94a3b8)}.myg-skeleton-card{padding:20px;display:flex;flex-direction:column;gap:12px}.myg-sk{border-radius:6px;background:#ffffff14;animation:shimmer 1.4s infinite}.myg-sk-title{height:18px;width:70%}.myg-sk-sub{height:12px;width:40%}.myg-sk-bar{height:8px;width:100%;border-radius:10px}.myg-sk-actions{height:36px;width:100%;border-radius:8px}.myg-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.myg-modal{background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-main);border-radius:12px;padding:28px;width:460px;max-width:95vw}.myg-modal h3{margin:0 0 4px;font-size:18px;color:var(--text-main)}.myg-modal-sub{font-size:13px;color:var(--text-muted, #94a3b8);margin-bottom:20px}.myg-form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.myg-form-group label{font-size:12px;font-weight:600;color:var(--text-muted, #94a3b8);text-transform:uppercase}.myg-form-row{display:flex;gap:12px}.myg-form-row .myg-form-group{flex:1}.myg-select,.myg-textarea{background:var(--bg-body);border:1px solid var(--border-color);border-radius:8px;padding:9px 12px;color:inherit;font-size:14px;width:100%;box-sizing:border-box}.myg-select:focus,.myg-textarea:focus{outline:none;border-color:var(--primary)}.myg-textarea{resize:vertical}.myg-err{color:#dc2626;font-size:13px;margin-bottom:8px}.myg-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.btn-view-members,.btn-open-chat{display:inline-flex;align-items:center;gap:5px}@keyframes shimmer{0%,to{opacity:.5}50%{opacity:1}}.myg-message-bubble{word-break:break-word;overflow-wrap:break-word;white-space:pre-wrap;max-width:100%}.user-cell{display:flex;align-items:center;gap:1rem}.user-avatar{width:40px;height:40px;border-radius:50%}.user-name{font-weight:500;font-size:.9rem;color:var(--text-main)}.status-badge{font-size:.75rem;padding:.25rem .75rem;border-radius:999px;font-weight:500}.status-active{background-color:var(--color-green-light, #dcfce7);color:var(--color-green, #16a34a)}.status-inactive{background-color:var(--color-gray-light, #f3f4f6);color:var(--text-muted)}.btn-open-chat-small{padding:.5rem 1rem;background-color:#1f3a52;color:#fff;border-radius:.5rem;font-size:.8rem;font-weight:500;border:none;cursor:pointer;min-width:100px}.ps-page{display:flex;flex-direction:column;gap:var(--space-6)}.ps-header{flex-shrink:0}.ps-title{font-size:1.25rem;font-weight:600;color:var(--text-main);margin-bottom:.25rem}.ps-subtitle{font-size:.875rem;color:var(--text-muted)}.ps-stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);flex-shrink:0;width:100%;box-sizing:border-box}.ps-stat-card{padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-2)}.ps-stat-label{font-size:.8rem;color:var(--text-muted);font-weight:400}.ps-stat-value{font-size:2rem;font-weight:700;color:var(--text-main);font-family:Outfit,sans-serif;line-height:1}.ps-feedback-section{padding:var(--space-6);flex:1}.ps-feedback-title{font-size:1rem;font-weight:600;color:var(--text-main);margin-bottom:var(--space-4)}.ps-feedback-list{display:flex;flex-direction:column;gap:var(--space-4)}.ps-feedback-card{padding:var(--space-4);display:flex;flex-direction:column;gap:.6rem}.ps-card-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-width:0}.ps-reviewer-info{display:flex;align-items:center;gap:.6rem;min-width:0;flex:1}.ps-reviewer-avatar{width:34px;height:34px;border-radius:50%;object-fit:cover;flex-shrink:0}.ps-reviewer-name{font-size:.875rem;font-weight:500;color:var(--text-main)}.ps-review-date{font-size:.65rem;color:var(--text-muted);margin-top:1px}.ps-rating{display:flex;align-items:center;gap:.3rem;flex-shrink:0}.ps-rating-text{font-size:.8rem;font-weight:600;color:#ca8a04}.ps-feedback-text{font-size:.8rem;color:var(--text-main);line-height:1.55}.ps-tags{display:flex;flex-wrap:wrap;gap:.5rem}.ps-tag{font-size:.72rem;padding:.2rem .65rem;border-radius:999px;border:1px solid var(--border-color);color:var(--text-muted);background:transparent}@media(max-width:768px){.ps-stats-grid{grid-template-columns:1fr}}.profile-page{max-width:100%;padding:1.5rem}.profile-page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.5rem}.profile-page-header h1{font-size:1.5rem;font-weight:700;color:var(--text-main);margin:0 0 .25rem}.profile-page-header .text-muted{font-size:.85rem;color:var(--text-muted);margin:0}.profile-section{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg, 12px);padding:1.5rem;margin-bottom:1.25rem}.profile-section-title{font-size:.85rem;font-weight:600;color:var(--text-muted);margin:0 0 1.25rem;text-transform:uppercase;letter-spacing:.04em}.profile-avatar-wrapper{position:relative;width:88px;height:88px;margin-bottom:1.5rem;cursor:pointer;border-radius:50%}.profile-avatar{width:88px;height:88px;border-radius:50%;object-fit:cover;border:3px solid var(--border-color)}.profile-avatar-overlay{position:absolute;bottom:0;right:0;width:28px;height:28px;border-radius:50%;background:var(--primary, #244A66);color:#fff;display:flex;align-items:center;justify-content:center;border:2px solid var(--bg-surface);transition:transform .15s}.profile-avatar-wrapper:hover .profile-avatar-overlay{transform:scale(1.1)}.profile-avatar-loading{position:absolute;inset:0;border-radius:50%;background:#00000059;display:flex;align-items:center;justify-content:center}.profile-avatar-loading:after{content:"";width:24px;height:24px;border:2px solid #fff;border-top-color:transparent;border-radius:50%;animation:profile-spin .6s linear infinite}@keyframes profile-spin{to{transform:rotate(360deg)}}.profile-field{margin-bottom:1.25rem}.profile-field:last-child{margin-bottom:0}.profile-field label{display:block;font-size:.82rem;font-weight:600;color:var(--text-main);margin-bottom:.4rem}.profile-input{width:100%;padding:.65rem .85rem;border:1px solid var(--border-color);border-radius:var(--radius-md, 8px);background:var(--bg-body);color:var(--text-main);font-size:.88rem;outline:none;transition:border-color .15s}.profile-input:focus{border-color:var(--primary, #244A66)}.profile-input:read-only{opacity:.7;cursor:default}.profile-textarea{width:100%;padding:.65rem .85rem;border:1px solid var(--border-color);border-radius:var(--radius-md, 8px);background:var(--bg-body);color:var(--text-main);font-size:.88rem;outline:none;resize:vertical;min-height:80px;font-family:inherit;transition:border-color .15s}.profile-textarea:focus{border-color:var(--primary, #244A66)}.profile-select{width:100%;padding:.65rem .85rem;border:1px solid var(--border-color);border-radius:var(--radius-md, 8px);background:var(--bg-body);color:var(--text-main);font-size:.88rem;outline:none;cursor:pointer;transition:border-color .15s}.profile-select:focus{border-color:var(--primary, #244A66)}.profile-input-locked{display:flex;align-items:center;justify-content:space-between;padding:.65rem .85rem;border:1px solid var(--border-color);border-radius:var(--radius-md, 8px);background:var(--bg-body);color:var(--text-main);font-size:.88rem;opacity:.7}.profile-lock-icon{color:var(--text-muted);flex-shrink:0}.profile-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}.profile-tag{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .65rem;background:#244a661a;color:var(--primary, #244A66);border-radius:20px;font-size:.78rem;font-weight:500}[data-theme=dark] .profile-tag{background:#244a664d;color:#93c5fd}.profile-tag button{background:none;border:none;color:inherit;cursor:pointer;font-size:1rem;line-height:1;padding:0;opacity:.7;transition:opacity .12s}.profile-tag button:hover{opacity:1}.profile-password-row{display:flex;align-items:center;gap:.75rem}.profile-password-row .profile-input{flex:1}.profile-change-pw-btn{padding:.6rem 1.2rem;border:1px solid var(--border-color);border-radius:var(--radius-md, 8px);background:var(--bg-surface);color:var(--text-main);font-size:.82rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s}.profile-change-pw-btn:hover{background:var(--bg-body);border-color:var(--text-muted)}.profile-pw-form{display:flex;flex-direction:column;gap:0}.profile-pw-input-wrap{position:relative}.profile-pw-input-wrap .profile-input{padding-right:2.5rem}.profile-pw-toggle{position:absolute;right:.65rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);cursor:pointer;padding:0;display:flex;align-items:center}.profile-pw-toggle:hover{color:var(--text-main)}.profile-pw-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1rem}.profile-cancel-btn{padding:.55rem 1.2rem;border:1px solid var(--border-color);border-radius:var(--radius-md, 8px);background:transparent;color:var(--text-main);font-size:.82rem;font-weight:600;cursor:pointer;transition:background .15s}.profile-cancel-btn:hover{background:var(--bg-body)}.profile-save-btn{padding:.6rem 1.5rem;border:none;border-radius:var(--radius-md, 8px);background:var(--primary, #244A66);color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;transition:opacity .15s;white-space:nowrap}.profile-save-btn:hover:not(:disabled){opacity:.9}.profile-save-btn:disabled{opacity:.6;cursor:not-allowed}.profile-skeleton{height:300px;border-radius:var(--radius-md, 8px);background:var(--bg-body);animation:profile-pulse 1.5s ease-in-out infinite}@keyframes profile-pulse{0%,to{opacity:.5}50%{opacity:.8}}@media(max-width:640px){.profile-page{padding:1rem}.profile-page-header{flex-direction:column;gap:1rem}.profile-save-btn{width:100%}.profile-password-row{flex-direction:column}.profile-change-pw-btn{width:100%}}.cal-page{display:flex;flex-direction:column;gap:1.25rem;min-height:100%;box-sizing:border-box}.cal-header-actions{display:flex;gap:8px;align-items:center}.cal-card{background:var(--bg-surface, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:16px;overflow:hidden;box-shadow:0 1px 4px #0000000f}.cal-grid-scroll{overflow:visible}.cal-month-nav{display:flex;align-items:center;gap:16px;padding:18px 24px 14px;border-bottom:1px solid var(--border-color, #e5e7eb)}.cal-month-title{margin:0;font-size:1rem;font-weight:600;color:var(--text-main, #111827);flex:1;text-align:center}.cal-nav-btn{background:transparent;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:5px 8px;cursor:pointer;color:var(--text-muted, #6b7280);display:flex;align-items:center;justify-content:center;transition:background .13s;flex-shrink:0}.cal-nav-btn:hover{background:var(--bg-surface-hover, #f3f4f6)}.cal-weekday-row{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--border-color, #e5e7eb);background:var(--bg-body, #f9fafb)}.cal-weekday-header{padding:10px 14px;font-size:11px;font-weight:600;color:var(--text-muted, #9ca3af);letter-spacing:.06em;text-transform:uppercase}.cal-weeks{display:flex;flex-direction:column}.cal-week-row{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--border-color, #e5e7eb)}.cal-week-row:last-child{border-bottom:none}.cal-day-cell{min-height:110px;border-right:1px solid var(--border-color, #e5e7eb);padding:10px 10px 8px;cursor:pointer;background:var(--bg-surface, #ffffff);transition:background .12s;box-sizing:border-box;display:flex;flex-direction:column;gap:4px;overflow:hidden;position:relative}.cal-day-cell:last-child{border-right:none}.cal-day-cell:hover{background:var(--bg-surface-hover, #f9fafb)}.cal-day-other{min-height:110px;border-right:1px solid var(--border-color, #e5e7eb);background:var(--bg-body, #f9fafb);opacity:.45}.cal-day-other:last-child{border-right:none}.cal-day-today .cal-day-number{background:#244a66;color:#fff!important;border-radius:50%}[data-theme=dark] .cal-day-today .cal-day-number{background:#fff;color:#111!important}.cal-day-selected{background:#244a660f!important}.cal-day-number{font-size:13px;font-weight:500;color:var(--text-main, #374151);width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0;line-height:1;margin-bottom:2px}.cal-chip{display:flex;align-items:center;gap:5px;padding:3px 6px;border-radius:5px;cursor:pointer;transition:background .12s;width:100%;box-sizing:border-box;overflow:hidden}.cal-chip:hover{background:var(--bg-surface-hover, rgba(0,0,0,.04))}.cal-chip-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.cal-chip-text{font-size:11.5px;font-weight:500;color:var(--text-main, #374151);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.cal-more-badge{display:inline-flex;align-items:center;justify-content:center;background:#244a66;color:#fff;font-size:10px;font-weight:700;border-radius:999px;padding:2px 7px;align-self:flex-start;margin-top:2px;cursor:pointer;transition:background .13s}.cal-more-badge:hover{background:#1a3a52}.cal-dot{display:inline-flex;align-items:center;justify-content:center;border-radius:999px}.cal-dot-free{position:absolute;top:8px;right:8px;width:20px;height:20px;background:#244a66;color:#fff;border-radius:50%;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center}.cal-dot-booked{width:7px;height:7px;background:#374151;border-radius:50%}.cal-event-badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:.7rem;font-weight:600;white-space:nowrap}.cal-badge-scheduled{background:#dcfce7;color:#15803d}.cal-badge-in-progress{background:#fef9c3;color:#a16207}.cal-badge-completed{background:#dbeafe;color:#1d4ed8}.cal-badge-cancelled{background:#fee2e2;color:#dc2626}[data-theme=dark] .cal-badge-scheduled{background:#22c55e2e;color:#4ade80}[data-theme=dark] .cal-badge-in-progress{background:#facc1538;color:#facc15}[data-theme=dark] .cal-badge-completed{background:#3b82f62e;color:#60a5fa}[data-theme=dark] .cal-badge-cancelled{background:#ef44442e;color:#f87171}.cal-popup-overlay{position:fixed;inset:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:500;padding:16px}.cal-popup{background:var(--bg-surface, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:14px;padding:18px 20px 16px;width:340px;max-width:95vw;box-shadow:0 12px 40px #0000002e;animation:popupIn .16s ease-out}@keyframes popupIn{0%{opacity:0;transform:scale(.96) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.cal-popup-toprow{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.cal-popup-nav{display:flex;align-items:center;gap:4px}.cal-popup-nav-count{font-size:.75rem;color:var(--text-muted);min-width:32px;text-align:center}.cal-popup-navbtn{background:transparent;border:1px solid var(--border-color, #e5e7eb);border-radius:6px;padding:4px 6px;cursor:pointer;color:var(--text-muted);display:flex;align-items:center;transition:background .12s}.cal-popup-navbtn:hover{background:var(--bg-surface-hover)}.cal-popup-actions{display:flex;align-items:center;gap:4px}.cal-popup-iconbtn{background:transparent;border:1px solid var(--border-color, #e5e7eb);border-radius:7px;padding:5px 7px;cursor:pointer;color:var(--text-muted);display:flex;align-items:center;transition:background .12s,color .12s}.cal-popup-iconbtn:hover{background:var(--bg-surface-hover);color:var(--text-main)}.cal-popup-iconbtn--del:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}.cal-popup-iconbtn:disabled{opacity:.5;cursor:not-allowed}.cal-popup-title{font-size:1rem;font-weight:700;color:var(--text-main);line-height:1.3;margin-bottom:4px}.cal-popup-datetime{font-size:.78rem;color:var(--text-muted);font-weight:500;line-height:1.4}.cal-popup-dur{font-size:.75rem;color:var(--text-muted);margin-top:4px}.cal-popup-zoom{margin-top:10px;padding:10px 12px;background:var(--bg-body, #f9fafb);border:1px solid var(--border-color);border-radius:9px}.cal-popup-zoom-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cal-popup-zoom-link{flex:1;font-size:.75rem;color:var(--text-muted);text-decoration:none;word-break:break-all;min-width:0}.cal-popup-zoom-link:hover{color:var(--text-main);text-decoration:underline}.cal-popup-join-btn{background:#244a66;color:#fff;border:none;border-radius:7px;padding:6px 14px;font-size:.75rem;font-weight:600;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .13s;display:inline-flex;align-items:center}.cal-popup-join-btn:hover{background:#1a3a52}.btn-cancel-session{padding:8px 14px;border:1px solid #fca5a5;border-radius:8px;background:#fff1f2;color:#dc2626;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .15s}.btn-cancel-session:hover:not(:disabled){background:#fee2e2}.btn-cancel-session:disabled{opacity:.5;cursor:not-allowed}.cal-slots-popup{width:400px;max-width:95vw;padding-bottom:4px}.cal-slots-tabs{display:inline-flex;align-items:center;gap:4px;background:var(--bg-body, #f3f4f6);border-radius:10px;padding:3px;margin-bottom:10px}.cal-slots-tab{border:none;background:transparent;color:var(--text-muted, #6b7280);font-size:.8rem;font-weight:600;padding:6px 12px;border-radius:8px;cursor:pointer;transition:background .12s,color .12s}.cal-slots-tab.is-active{background:#244a66;color:#fff;box-shadow:0 1px 2px #00000014}.cal-slots-tab:focus-visible{outline:2px solid rgba(36,74,102,.35);outline-offset:1px}.cal-slots-body{max-height:420px;overflow-y:auto;padding:4px 0 8px;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent}.cal-slots-body::-webkit-scrollbar{width:5px}.cal-slots-body::-webkit-scrollbar-track{background:transparent}.cal-slots-body::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.cal-slots-section{margin-top:14px}.cal-slots-section-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin:0 0 8px}.cal-slots-empty{font-size:.8rem;color:var(--text-muted);font-style:italic;margin:0;padding:8px 0}.cal-slots-session-row{display:grid;grid-template-columns:minmax(132px,auto) minmax(0,1fr);align-items:start;gap:10px 14px;padding:10px 0;border-bottom:1px solid var(--border-color)}.cal-slots-session-row:last-child{border-bottom:none}.cal-slots-session-primary{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}.cal-slots-session-title{font-size:.82rem;font-weight:600;color:var(--text-main);line-height:1.35;text-align:right;justify-self:end;word-break:break-word;min-width:0}.cal-slots-session-time{font-size:.75rem;color:var(--text-muted);font-weight:500;line-height:1.3}.cal-slots-row{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;border-radius:8px;margin-bottom:6px;font-size:.83rem}.cal-slots-row:last-child{margin-bottom:0}.slot-free{background:#244a6612;border:1px solid rgba(36,74,102,.15)}.slot-booked{background:#ef44440f;border:1px solid rgba(239,68,68,.2)}.cal-slot-time{font-weight:500;color:var(--text-main)}.cal-slot-booked-label{font-size:12px;color:#dc2626;font-weight:600}.cal-slot-delete{background:transparent;border:none;cursor:pointer;color:var(--text-muted);padding:4px 6px;border-radius:4px;font-size:12px;transition:color .12s}.cal-slot-delete:hover{color:#dc2626}.cal-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:600}.cal-modal{background:var(--bg-surface, #fff);border-radius:14px;padding:28px;width:440px;max-width:95vw;box-shadow:0 20px 60px #0003}.cal-modal h3{margin:0 0 4px;font-size:1.1rem;font-weight:700;color:var(--text-main)}.cal-modal-sub{font-size:13px;color:var(--text-muted);margin-bottom:20px}.cal-slot-row{display:flex;align-items:flex-end;gap:10px;margin-bottom:12px}.cal-slot-inputs{display:flex;gap:12px;flex:1}.cal-time-group{display:flex;flex-direction:column;gap:4px;flex:1}.cal-time-group label{font-size:12px;color:var(--text-muted);font-weight:500}.cal-time-input{background:var(--bg-body, #f9fafb);border:1px solid var(--border-color);border-radius:8px;padding:8px 10px;color:var(--text-main);font-size:14px;width:100%;box-sizing:border-box}.cal-time-input::-webkit-calendar-picker-indicator{cursor:pointer}[data-theme=dark] .cal-time-input::-webkit-calendar-picker-indicator{filter:invert(1) brightness(1.3)}.cal-remove-slot{background:transparent;border:none;color:#ef4444;cursor:pointer;padding:6px;border-radius:6px;font-size:14px}.cal-add-slot-btn{background:transparent;border:1px dashed var(--border-color);border-radius:8px;padding:8px 16px;color:var(--text-muted);cursor:pointer;width:100%;font-size:13px;margin-bottom:16px;transition:all .15s}.cal-add-slot-btn:hover{border-color:#244a66;color:#244a66}.cal-err{color:#dc2626;font-size:13px;margin-bottom:8px}.cal-modal-actions{display:flex;justify-content:flex-end;gap:8px}[data-theme=dark] .cal-add-slots-cancel{color:#fff!important}[data-theme=dark] .cal-add-slot-btn:hover{border-color:#fff;color:#fff}[data-theme=dark] .cal-card{border-color:var(--border-color)}[data-theme=dark] .cal-day-cell{background:var(--bg-surface)}[data-theme=dark] .cal-day-cell:hover{background:var(--bg-surface-hover)}[data-theme=dark] .cal-day-other,[data-theme=dark] .cal-weekday-row{background:var(--bg-body)}[data-theme=dark] .cal-popup{background:var(--bg-surface);border-color:var(--border-color);box-shadow:0 12px 40px #00000080}[data-theme=dark] .cal-popup-zoom{background:var(--bg-body)}[data-theme=dark] .cal-chip:hover{background:var(--bg-surface-hover)}[data-theme=dark] .cal-chip-text{color:var(--text-main)}[data-theme=dark] .slot-free{background:#244a6633;border-color:#244a6659}[data-theme=dark] .slot-booked{background:#ef44441a;border-color:#ef444440}[data-theme=dark] .btn-cancel-session{background:#ef44441a}@media(max-width:860px){.cal-day-cell,.cal-day-other{min-height:80px}}@media(max-width:768px){.cal-page{gap:1rem}.cal-grid-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.cal-month-nav{position:sticky;top:0;z-index:2;background:var(--bg-surface, #ffffff)}.cal-weekday-row,.cal-week-row{min-width:560px;grid-template-columns:repeat(7,minmax(80px,1fr))}.cal-day-cell,.cal-day-other{min-height:72px;padding:6px}.cal-day-number{width:22px;height:22px;font-size:12px}.cal-chip-text{font-size:10.5px}.cal-month-nav{padding:14px 16px 12px}.cal-popup,.cal-slots-popup{width:300px}.cal-slots-body{max-height:340px}.cal-slots-session-row{grid-template-columns:minmax(110px,auto) minmax(0,1fr);gap:8px 10px}}@media(max-width:520px){.cal-weekday-row,.cal-week-row{min-width:490px;grid-template-columns:repeat(7,minmax(70px,1fr))}.cal-day-cell,.cal-day-other{min-height:64px;padding:5px}.cal-slots-session-row{grid-template-columns:1fr;gap:8px}.cal-slots-session-title{text-align:left;justify-self:start}}.legal-page{min-height:100vh;background:var(--bg-primary, #0d1117);color:var(--text-primary, #e6edf3);padding:48px 16px;-webkit-font-smoothing:antialiased}.legal-container{max-width:760px;margin:0 auto;line-height:1.7;font-size:15px}.legal-header{margin-bottom:32px;padding-bottom:20px;border-bottom:1px solid var(--border-color, #30363d)}.legal-header h1{font-size:28px;font-weight:700;margin:0 0 6px;color:var(--text-primary, #e6edf3)}.legal-updated{margin:0;font-size:13px;color:var(--text-muted, #8b949e)}.legal-container section{margin-top:32px}.legal-container h2{font-size:19px;font-weight:600;margin:0 0 12px;color:var(--text-primary, #e6edf3)}.legal-container h3{font-size:15px;font-weight:600;margin:18px 0 6px;color:var(--text-secondary, #c9d1d9)}.legal-container p{margin:0 0 12px;color:var(--text-secondary, #c9d1d9)}.legal-container ul{margin:0 0 12px;padding-left:22px;color:var(--text-secondary, #c9d1d9)}.legal-container li{margin-bottom:4px}.legal-container a{color:var(--accent, #4e9ac9);text-decoration:none}.legal-container a:hover{text-decoration:underline}.legal-shortform{margin-top:40px;padding:24px;background:var(--bg-secondary, #161b22);border:1px solid var(--border-color, #30363d);border-radius:12px}.legal-footer{margin-top:48px;padding-top:20px;border-top:1px solid var(--border-color, #30363d);text-align:center}.legal-footer p{font-size:13px;color:var(--text-muted, #8b949e);margin:0}@media(max-width:600px){.legal-page{padding:28px 4px}.legal-header h1{font-size:23px}.legal-container{font-size:14px}}
