.admin-login{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:var(--space-4)}.admin-login__container{background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:0 20px 60px #0000004d;padding:var(--space-8);width:100%;max-width:420px}.admin-login__loading{text-align:center;padding:var(--space-8)}.admin-login__loading p{margin-top:var(--space-4);color:var(--text-secondary);font-size:var(--text-base)}.admin-protected-route__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:var(--bg-tertiary);color:var(--text-secondary)}.admin-protected-route__loading p{margin-top:var(--space-4);font-size:var(--text-base)}.admin-protected-route__denied{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:var(--bg-tertiary);padding:var(--space-6);text-align:center}.admin-protected-route__denied-icon{font-size:64px;margin-bottom:var(--space-6)}.admin-protected-route__denied-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);margin:0 0 var(--space-4) 0}.admin-protected-route__denied-text{font-size:var(--text-lg);color:var(--text-secondary);margin:0 0 var(--space-3) 0;max-width:500px}.admin-protected-route__denied-details{font-size:var(--text-sm);color:var(--text-tertiary);margin:0 0 var(--space-6) 0;padding:var(--space-4);background:var(--bg-secondary);border-radius:var(--radius-md);max-width:500px}.admin-protected-route__denied-details strong{color:var(--text-primary);font-weight:var(--font-semibold)}@media (max-width: 640px){.admin-protected-route__denied-icon{font-size:48px}.admin-protected-route__denied-title{font-size:var(--text-2xl)}.admin-protected-route__denied-text{font-size:var(--text-base)}}:root{--eduq-blue: #0066FF;--eduq-cyan: #00D9B5;--eduq-blue-hover: #0052CC;--eduq-cyan-hover: #00B89A;--eduq-blue-active: #003D99;--bg-primary: #FFFFFF;--bg-secondary: #F9FAFB;--bg-tertiary: #F3F4F6;--bg-dark: #1F2937;--text-primary: #111827;--text-secondary: #6B7280;--text-tertiary: #9CA3AF;--text-inverse: #FFFFFF;--border-light: #E5E7EB;--border-medium: #D1D5DB;--border-dark: #9CA3AF;--success: #10B981;--warning: #F59E0B;--error: #EF4444;--info: #3B82F6;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--font-mono: "Courier New", Courier, monospace;--text-4xl: 1.75rem;--text-3xl: 1.5rem;--text-2xl: 1.25rem;--text-xl: 1.1rem;--text-lg: 1rem;--text-base: .875rem;--text-sm: .8125rem;--text-xs: .6875rem;--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 2;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 1px 3px rgba(0, 0, 0, .1);--shadow-lg: 0 4px 6px rgba(0, 0, 0, .1);--shadow-xl: 0 10px 15px rgba(0, 0, 0, .1);--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--z-base: 0;--z-dropdown: 10;--z-sticky: 20;--z-fixed: 30;--z-modal-backdrop: 40;--z-modal: 50;--z-popover: 60;--z-tooltip: 70}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-primary);background-color:var(--bg-tertiary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.admin-card{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-4);margin-bottom:var(--space-4)}.admin-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.admin-card__title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.admin-card__subtitle{font-size:var(--text-sm);color:var(--text-secondary);margin-top:var(--space-1)}.admin-card__body{color:var(--text-primary)}.admin-card__footer{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border-light)}.admin-grid{display:grid;gap:var(--space-4)}.admin-grid-2{grid-template-columns:repeat(2,1fr)}.admin-grid-3{grid-template-columns:repeat(3,1fr)}.admin-grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 1024px){.admin-grid-4,.admin-grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.admin-grid-4,.admin-grid-3,.admin-grid-2{grid-template-columns:1fr}}.admin-table{width:100%;border-collapse:collapse;background:var(--bg-primary);border-radius:var(--radius-lg);overflow:hidden}.admin-table__header{background:var(--bg-secondary)}.admin-table__header-cell{text-align:left;padding:var(--space-2) var(--space-3);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-light)}.admin-table__row{transition:background-color var(--transition-fast)}.admin-table__row:hover{background:var(--bg-secondary)}.admin-table__cell{padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--text-primary);border-bottom:1px solid var(--border-light)}.admin-table__row:last-child .admin-table__cell{border-bottom:none}.admin-badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:var(--font-semibold);border-radius:var(--radius-md);text-transform:uppercase;letter-spacing:.05em}.admin-badge--primary{background:#0066ff1a;color:var(--eduq-blue)}.admin-badge--secondary{background:#00d9b51a;color:var(--eduq-cyan)}.admin-badge--success{background:#10b9811a;color:var(--success)}.admin-badge--warning{background:#f59e0b1a;color:var(--warning)}.admin-badge--error{background:#ef44441a;color:var(--error)}.admin-badge--info{background:#3b82f61a;color:var(--info)}.admin-badge--gray{background:var(--bg-tertiary);color:var(--text-secondary)}.admin-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-medium);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-base);text-decoration:none}.admin-btn:disabled{opacity:.5;cursor:not-allowed}.admin-btn--primary{background:var(--eduq-blue);color:var(--text-inverse)}.admin-btn--primary:hover:not(:disabled){background:var(--eduq-blue-hover)}.admin-btn--primary:active:not(:disabled){background:var(--eduq-blue-active)}.admin-btn--secondary{background:var(--eduq-cyan);color:var(--text-inverse)}.admin-btn--secondary:hover:not(:disabled){background:var(--eduq-cyan-hover)}.admin-btn--success{background:var(--success);color:var(--text-inverse)}.admin-btn--success:hover:not(:disabled){background:#059669}.admin-btn--danger{background:var(--error);color:var(--text-inverse)}.admin-btn--danger:hover:not(:disabled){background:#dc2626}.admin-btn--outline{background:transparent;color:var(--eduq-blue);border:2px solid var(--eduq-blue)}.admin-btn--outline:hover:not(:disabled){background:var(--eduq-blue);color:var(--text-inverse)}.admin-btn--ghost{background:transparent;color:var(--text-secondary)}.admin-btn--ghost:hover:not(:disabled){background:var(--bg-secondary);color:var(--text-primary)}.admin-btn--sm{padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.admin-btn--lg{padding:var(--space-3) var(--space-6);font-size:var(--text-base)}.admin-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.admin-modal__backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:var(--z-modal-backdrop)}.admin-modal__content{position:relative;background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-width:600px;width:100%;max-height:90vh;overflow-y:auto;z-index:var(--z-modal)}.admin-modal__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);border-bottom:1px solid var(--border-light)}.admin-modal__title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.admin-modal__close{background:transparent;border:none;color:var(--text-secondary);font-size:var(--text-xl);cursor:pointer;padding:var(--space-2);border-radius:var(--radius-md);transition:all var(--transition-fast)}.admin-modal__close:hover{background:var(--bg-secondary);color:var(--text-primary)}.admin-modal__body{padding:var(--space-4)}.admin-modal__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4);border-top:1px solid var(--border-light)}.admin-form-group{margin-bottom:var(--space-4)}.admin-label{display:block;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);margin-bottom:var(--space-2)}.admin-input,.admin-textarea,.admin-select{width:100%;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-medium);border-radius:var(--radius-md);transition:all var(--transition-fast)}.admin-input:focus,.admin-textarea:focus,.admin-select:focus{outline:none;border-color:var(--eduq-blue);box-shadow:0 0 0 3px #0066ff1a}.admin-textarea{resize:vertical;min-height:100px}.admin-input--error,.admin-textarea--error,.admin-select--error{border-color:var(--error)}.admin-input--error:focus,.admin-textarea--error:focus,.admin-select--error:focus{box-shadow:0 0 0 3px #ef44441a}.admin-form-error{display:block;margin-top:var(--space-1);font-size:var(--text-xs);color:var(--error)}.admin-form-help{display:block;margin-top:var(--space-1);font-size:var(--text-xs);color:var(--text-secondary)}.admin-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12);color:var(--text-secondary)}.admin-spinner{width:32px;height:32px;border:3px solid var(--border-light);border-top-color:var(--eduq-blue);border-radius:var(--radius-full);animation:admin-spin 1s linear infinite;margin-bottom:var(--space-3)}@keyframes admin-spin{to{transform:rotate(360deg)}}.admin-empty{text-align:center;padding:var(--space-12);color:var(--text-secondary)}.admin-empty__icon{font-size:var(--text-4xl);margin-bottom:var(--space-4)}.admin-empty__title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-2)}.admin-empty__text{font-size:var(--text-sm);color:var(--text-secondary)}.admin-empty--compact{padding:var(--space-6);font-size:var(--text-sm);color:var(--text-secondary)}.admin-text-center{text-align:center}.admin-text-right{text-align:right}.admin-mt-4{margin-top:var(--space-4)}.admin-mb-4{margin-bottom:var(--space-4)}.admin-flex{display:flex}.admin-flex-center{display:flex;align-items:center;justify-content:center}.admin-flex-between{display:flex;align-items:center;justify-content:space-between}.admin-gap-2{gap:var(--space-2)}.admin-gap-4{gap:var(--space-4)}.admin-btn-group{display:flex;align-items:center;gap:var(--space-2)}.admin-btn-group--sm{gap:var(--space-1)}.admin-btn-group--lg{gap:var(--space-3)}.admin-page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.admin-page-header__title{font-size:var(--text-2xl);font-weight:var(--font-semibold);color:var(--text-primary)}.admin-page-header__actions{display:flex;align-items:center;gap:var(--space-2)}@media (max-width: 768px){.admin-page-header{flex-direction:column;align-items:flex-start;gap:var(--space-3)}}.admin-section-gap{margin-top:var(--space-6)}.admin-skeleton-gap{margin-bottom:var(--space-3)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.admin-data-table{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.admin-data-table__wrapper{overflow-x:auto}.admin-data-table__table{width:100%;border-collapse:collapse}.admin-data-table__header{background:var(--bg-secondary)}.admin-data-table__header .admin-data-table__cell{text-transform:uppercase;font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.05em}.admin-data-table__header-content{display:flex;align-items:center;gap:var(--space-2)}.admin-data-table__sort-icon{color:var(--text-secondary)}.admin-data-table__cell--sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.admin-data-table__cell--sortable:hover{background:var(--bg-tertiary)}.admin-data-table__row{transition:background-color var(--transition-fast)}.admin-data-table__row:nth-child(2n){background:var(--bg-secondary)}.admin-data-table__row:hover{background:var(--bg-tertiary)}.admin-data-table__row--selected{background:#0066ff1a}.admin-data-table__row--clickable{cursor:pointer}.admin-data-table__cell{padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--text-primary);border-bottom:1px solid var(--border-light)}.admin-data-table__row:last-child .admin-data-table__cell{border-bottom:none}.admin-data-table__cell--mono{font-family:var(--font-mono);font-weight:var(--font-medium)}.admin-data-table__cell--secondary{font-size:var(--text-xs);color:var(--text-secondary)}.admin-data-table__cell--checkbox{width:40px;padding:var(--space-3) var(--space-2)}.admin-data-table__cell--actions{text-align:right;white-space:nowrap}.admin-data-table__actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2)}.admin-data-table__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12);color:var(--text-secondary)}.admin-data-table__empty{text-align:center;padding:var(--space-12);color:var(--text-secondary)}.admin-data-table__pagination{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3);border-top:1px solid var(--border-light);background:var(--bg-primary)}.admin-data-table__pagination-info{font-size:var(--text-sm);color:var(--text-secondary)}.admin-data-table__pagination-controls{display:flex;align-items:center;gap:var(--space-2)}.admin-data-table__pagination-current{font-size:var(--text-sm);color:var(--text-primary);padding:var(--space-0) var(--space-2)}.admin-tabs{display:flex;gap:var(--space-1);border-bottom:2px solid var(--border-light);margin-bottom:var(--space-4);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.admin-tabs::-webkit-scrollbar{display:none}.admin-tab{position:relative;padding:var(--space-3) var(--space-5);border:none;background:transparent;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary);cursor:pointer;white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-2px;border-radius:var(--radius-md) var(--radius-md) 0 0;transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast)}.admin-tab:hover{color:var(--text-primary);background:var(--bg-secondary)}.admin-tab:focus-visible{outline:2px solid var(--eduq-blue);outline-offset:-2px}.admin-tab--active{color:var(--eduq-blue);font-weight:var(--font-semibold);border-bottom-color:var(--eduq-blue);background:transparent}.admin-tab--active:hover{background:transparent}.admin-tab__badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 var(--space-2);margin-left:var(--space-2);font-size:var(--text-xs);font-weight:var(--font-semibold);line-height:1;border-radius:var(--radius-full);background:var(--bg-tertiary);color:var(--text-secondary)}.admin-tab--active .admin-tab__badge{background:#0066ff1a;color:var(--eduq-blue)}@media (max-width: 640px){.admin-tab{padding:var(--space-2) var(--space-4);font-size:var(--text-xs)}}.admin-layout{display:flex;min-height:100vh;background:var(--bg-tertiary)}.admin-sidebar{width:260px;background:linear-gradient(180deg,#1e1b4b,#312e81);display:flex;flex-direction:column;transition:width var(--transition-slow);position:fixed;top:0;left:0;height:100vh;z-index:var(--z-fixed)}.sidebar-collapsed .admin-sidebar{width:72px}.admin-sidebar__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-4);border-bottom:1px solid rgba(255,255,255,.1)}.admin-logo{display:flex;align-items:center;gap:var(--space-3)}.admin-logo__text{color:#fff;font-size:var(--text-lg);font-weight:var(--font-bold);white-space:nowrap}.admin-logo__icon{font-size:var(--text-2xl)}.admin-sidebar__toggle{background:#ffffff1a;border:none;color:#fff;width:28px;height:28px;border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--transition-base)}.admin-sidebar__toggle:hover{background:#fff3}.admin-nav{flex:1;padding:var(--space-4) var(--space-3);overflow-y:auto}.admin-nav__item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);color:#ffffffb3;text-decoration:none;border-radius:var(--radius-lg);margin-bottom:var(--space-1);transition:all var(--transition-base)}.admin-nav__item:hover{background:#ffffff1a;color:#fff}.admin-nav__item--active{background:#6366f14d;color:#fff}.admin-nav__icon{font-size:var(--text-xl);width:24px;text-align:center;flex-shrink:0}.admin-nav__label{font-size:var(--text-sm);font-weight:var(--font-medium);white-space:nowrap}.sidebar-collapsed .admin-nav__item{justify-content:center;padding:var(--space-3)}.admin-sidebar__footer{padding:var(--space-4) var(--space-3);border-top:1px solid rgba(255,255,255,.1)}.admin-back-to-app{background:#22c55e33}.admin-back-to-app:hover{background:#22c55e4d}.admin-main{flex:1;margin-left:260px;display:flex;flex-direction:column;transition:margin-left var(--transition-slow)}.sidebar-collapsed .admin-main{margin-left:72px}.admin-header{background:var(--bg-primary);padding:var(--space-3) var(--space-4);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-light);position:sticky;top:0;z-index:var(--z-sticky)}.admin-header__left{display:flex;align-items:center;gap:var(--space-3)}.admin-page-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.admin-header__right{display:flex;align-items:center;gap:var(--space-4)}.admin-user-info{display:flex;align-items:center;gap:var(--space-2)}.admin-user-info__email{font-size:var(--text-sm);color:var(--text-secondary)}.admin-user-info__badge{font-size:var(--text-xs);font-weight:var(--font-semibold);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);text-transform:uppercase}.admin-user-info__badge--super{background:#fef3c7;color:#92400e}.admin-user-info__badge--admin{background:#dbeafe;color:#1e40af}.admin-logout-btn{background:var(--error);color:#fff;border:none;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:background var(--transition-base)}.admin-logout-btn:hover{background:#dc2626}.admin-content{flex:1;padding:var(--space-4);overflow-y:auto}.admin-stat-card{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-md)}.admin-stat-card__icon{width:40px;height:40px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:var(--text-xl);margin-bottom:var(--space-2)}.admin-stat-card__icon--blue{background:#dbeafe}.admin-stat-card__icon--green{background:#dcfce7}.admin-stat-card__icon--purple{background:#f3e8ff}.admin-stat-card__icon--orange{background:#ffedd5}.admin-stat-card__icon--red{background:#fee2e2}.admin-stat-card__value{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary);margin-bottom:var(--space-1)}.admin-stat-card__value--sm{font-size:var(--text-sm);text-transform:capitalize}.admin-stat-card__label{font-size:var(--text-sm);color:var(--text-secondary)}.admin-stat-card__change{font-size:var(--text-xs);margin-top:var(--space-2)}.admin-stat-card__change--positive{color:var(--success)}.admin-stat-card__change--negative{color:var(--error)}@media (max-width: 768px){.admin-sidebar{width:72px}.admin-main{margin-left:72px}.admin-logo__text,.admin-nav__label,.admin-sidebar__toggle{display:none}.admin-nav__item{justify-content:center;padding:var(--space-3)}.admin-header{padding:var(--space-3) var(--space-4)}.admin-user-info__email{display:none}.admin-content{padding:var(--space-4)}}@media (max-width: 640px){.admin-page-title{font-size:var(--text-lg)}}.admin-chart{position:relative;width:100%;padding:1rem}.admin-chart:focus{outline:2px solid var(--eduq-blue);outline-offset:2px;border-radius:.5rem}.admin-chart:focus:not(:focus-visible){outline:none}.admin-chart--loading{display:flex;align-items:center;justify-content:center;background-color:var(--bg-secondary, #F9FAFB);border-radius:.5rem}.admin-chart__loading{text-align:center}.admin-chart__loading p{margin-top:1rem;color:var(--text-secondary, #6B7280);font-size:.875rem}.admin-chart--empty{display:flex;align-items:center;justify-content:center;background-color:var(--bg-secondary, #F9FAFB);border-radius:.5rem;border:2px dashed var(--border-medium, #D1D5DB)}.admin-chart__empty{text-align:center}.admin-chart__empty p{color:var(--text-secondary, #6B7280);font-size:.875rem}@media (max-width: 768px){.admin-chart{padding:.5rem}}@media (prefers-contrast: high){.admin-chart:focus{outline-width:3px}}@media (prefers-reduced-motion: reduce){.admin-chart canvas{animation:none!important;transition:none!important}}.activity-trend-chart{background-color:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;padding:1.5rem;margin-bottom:2rem}.activity-trend-chart__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap}.activity-trend-chart__title{font-size:1.25rem;font-weight:600;color:#111827;margin:0}.activity-trend-chart__controls{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.activity-trend-chart__period-selector{display:flex;gap:.5rem;background-color:#f3f4f6;padding:.25rem;border-radius:.5rem}.activity-trend-chart__period-btn{padding:.5rem 1rem;border:none;background-color:transparent;color:#6b7280;font-size:.875rem;font-weight:500;border-radius:.375rem;cursor:pointer;transition:all .2s ease}.activity-trend-chart__period-btn:hover{background-color:#e5e7eb;color:#111827}.activity-trend-chart__period-btn:focus{outline:2px solid #0066FF;outline-offset:2px}.activity-trend-chart__period-btn--active{background-color:#06f;color:#fff}.activity-trend-chart__period-btn--active:hover{background-color:#0052cc}.activity-trend-chart__export-buttons{display:flex;gap:.5rem}.activity-trend-chart__export-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;border:1px solid #D1D5DB;background-color:#fff;color:#374151;font-size:.875rem;font-weight:500;border-radius:.375rem;cursor:pointer;transition:all .2s ease}.activity-trend-chart__export-btn:hover{background-color:#f9fafb;border-color:#9ca3af}.activity-trend-chart__export-btn:focus{outline:2px solid #0066FF;outline-offset:2px}.activity-trend-chart__export-btn svg{width:16px;height:16px}.activity-trend-chart__custom-range{display:flex;gap:1rem;align-items:flex-end;padding:1rem;background-color:#f9fafb;border-radius:.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.activity-trend-chart__custom-range label{display:flex;flex-direction:column;gap:.375rem;font-size:.875rem;font-weight:500;color:#374151}.activity-trend-chart__date-input{padding:.5rem .75rem;border:1px solid #D1D5DB;border-radius:.375rem;font-size:.875rem;background-color:#fff;transition:border-color .2s ease}.activity-trend-chart__date-input:focus{outline:none;border-color:#06f;box-shadow:0 0 0 3px #0066ff1a}.activity-trend-chart__apply-btn,.activity-trend-chart__cancel-btn{padding:.5rem 1rem;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.activity-trend-chart__apply-btn{background-color:#06f;color:#fff}.activity-trend-chart__apply-btn:hover:not(:disabled){background-color:#0052cc}.activity-trend-chart__apply-btn:disabled{background-color:#d1d5db;color:#9ca3af;cursor:not-allowed}.activity-trend-chart__cancel-btn{background-color:#fff;color:#374151;border:1px solid #D1D5DB}.activity-trend-chart__cancel-btn:hover{background-color:#f9fafb}.activity-trend-chart__apply-btn:focus,.activity-trend-chart__cancel-btn:focus{outline:2px solid #0066FF;outline-offset:2px}.activity-trend-chart__chart-container{position:relative;width:100%}.activity-trend-chart__chart-container:focus{outline:2px solid #0066FF;outline-offset:2px;border-radius:.375rem}.activity-trend-chart--loading .activity-trend-chart__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#6b7280;gap:1rem}.activity-trend-chart__loading p{margin:0;font-size:.875rem}.activity-trend-chart--error .activity-trend-chart__error{display:flex;align-items:center;justify-content:center;padding:2rem}.activity-trend-chart__error-message{color:#ef4444;font-size:.875rem;margin:0}.activity-trend-chart--empty .activity-trend-chart__empty{display:flex;align-items:center;justify-content:center;padding:2rem;color:#6b7280}.activity-trend-chart__empty p{margin:0;font-size:.875rem}.admin-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (max-width: 768px){.activity-trend-chart{padding:1rem}.activity-trend-chart__header,.activity-trend-chart__controls{flex-direction:column;align-items:stretch}.activity-trend-chart__period-selector{flex-wrap:wrap}.activity-trend-chart__period-btn{flex:1;min-width:calc(50% - .25rem)}.activity-trend-chart__export-buttons{width:100%}.activity-trend-chart__export-btn{flex:1}.activity-trend-chart__custom-range{flex-direction:column;align-items:stretch}.activity-trend-chart__custom-range label,.activity-trend-chart__date-input{width:100%}}@media (max-width: 480px){.activity-trend-chart__title{font-size:1.125rem}.activity-trend-chart__period-btn{padding:.375rem .75rem;font-size:.8125rem}.activity-trend-chart__export-btn{padding:.375rem .625rem;font-size:.8125rem}}@media (prefers-reduced-motion: reduce){.activity-trend-chart__period-btn,.activity-trend-chart__export-btn,.activity-trend-chart__apply-btn,.activity-trend-chart__cancel-btn,.activity-trend-chart__date-input{transition:none}}@media (prefers-contrast: high){.activity-trend-chart,.activity-trend-chart__period-btn--active,.activity-trend-chart__export-btn{border:2px solid #000000}}.cohort-retention-table{width:100%;margin:1.5rem 0}.cohort-retention-table__container{overflow-x:auto;border-radius:8px;border:1px solid var(--border-color, #e5e7eb);background:var(--card-background, #ffffff)}.cohort-retention-table__table{width:100%;border-collapse:collapse;font-size:.875rem;min-width:800px}.cohort-retention-table__header{padding:.75rem 1rem;text-align:left;font-weight:600;color:var(--text-primary, #111827);background:var(--table-header-bg, #f9fafb);border-bottom:2px solid var(--border-color, #e5e7eb);white-space:nowrap}.cohort-retention-table__header--cohort{position:sticky;left:0;z-index:2;background:var(--table-header-bg, #f9fafb);min-width:120px}.cohort-retention-table__header--size{text-align:center;min-width:80px}.cohort-retention-table__row{border-bottom:1px solid var(--border-color, #e5e7eb);transition:background-color .15s ease}.cohort-retention-table__row:hover{background-color:var(--table-row-hover, #f9fafb)}.cohort-retention-table__cell{padding:.75rem 1rem;text-align:center;border-right:1px solid var(--border-color-light, #f3f4f6);transition:all .15s ease}.cohort-retention-table__cell:last-child{border-right:none}.cohort-retention-table__cell--cohort{position:sticky;left:0;z-index:1;background:var(--card-background, #ffffff);font-weight:600;text-align:left;border-right:2px solid var(--border-color, #e5e7eb)}.cohort-retention-table__row:hover .cohort-retention-table__cell--cohort{background-color:var(--table-row-hover, #f9fafb)}.cohort-retention-table__cell--size{font-weight:500;color:var(--text-secondary, #6b7280)}.cohort-retention-table__cell--high{background-color:#10b9811a;color:#065f46;font-weight:600}.cohort-retention-table__cell--medium{background-color:#f59e0b1a;color:#92400e;font-weight:600}.cohort-retention-table__cell--low{background-color:#ef44441a;color:#991b1b;font-weight:600}.cohort-retention-table__cell--no-data{background-color:var(--table-no-data-bg, #f9fafb);color:var(--text-tertiary, #9ca3af);font-style:italic}.cohort-retention-table__cell--clickable{cursor:pointer;position:relative}.cohort-retention-table__cell--clickable:hover{opacity:.8;transform:scale(1.05)}.cohort-retention-table__cell--clickable:focus{outline:2px solid var(--focus-color, #3b82f6);outline-offset:2px}.cohort-retention-table__cell--clickable:active{transform:scale(.98)}.cohort-retention-table__legend{display:flex;align-items:center;gap:1rem;margin-top:1rem;padding:.75rem 1rem;background:var(--legend-bg, #f9fafb);border-radius:6px;font-size:.875rem;flex-wrap:wrap}.cohort-retention-table__legend-title{font-weight:600;color:var(--text-primary, #111827)}.cohort-retention-table__legend-items{display:flex;gap:1.5rem;flex-wrap:wrap}.cohort-retention-table__legend-item{display:flex;align-items:center;gap:.5rem}.cohort-retention-table__legend-color{width:16px;height:16px;border-radius:3px;border:1px solid var(--border-color, #e5e7eb)}.cohort-retention-table__legend-color--high{background-color:#10b9814d}.cohort-retention-table__legend-color--medium{background-color:#f59e0b4d}.cohort-retention-table__legend-color--low{background-color:#ef44444d}.cohort-retention-table__legend-color--no-data{background-color:var(--table-no-data-bg, #f9fafb)}.cohort-retention-table__legend-label{color:var(--text-secondary, #6b7280)}.cohort-retention-table--loading{display:flex;justify-content:center;align-items:center;min-height:300px;background:var(--card-background, #ffffff);border-radius:8px;border:1px solid var(--border-color, #e5e7eb)}.cohort-retention-table__loading{text-align:center}.cohort-retention-table__spinner{width:40px;height:40px;margin:0 auto 1rem;border:4px solid var(--spinner-track, #e5e7eb);border-top-color:var(--spinner-color, #3b82f6);border-radius:50%;animation:cohort-retention-table-spin .8s linear infinite}@keyframes cohort-retention-table-spin{to{transform:rotate(360deg)}}.cohort-retention-table__loading p{color:var(--text-secondary, #6b7280);font-size:.875rem}.cohort-retention-table--empty{display:flex;justify-content:center;align-items:center;min-height:300px;background:var(--card-background, #ffffff);border-radius:8px;border:1px solid var(--border-color, #e5e7eb)}.cohort-retention-table__empty{text-align:center;padding:2rem}.cohort-retention-table__empty p{color:var(--text-secondary, #6b7280);margin:.5rem 0}.cohort-retention-table__empty-hint{font-size:.875rem;color:var(--text-tertiary, #9ca3af)}@media (max-width: 768px){.cohort-retention-table__container{border-radius:6px}.cohort-retention-table__table{font-size:.8125rem}.cohort-retention-table__header,.cohort-retention-table__cell{padding:.5rem .75rem}.cohort-retention-table__legend{flex-direction:column;align-items:flex-start;gap:.75rem}.cohort-retention-table__legend-items{gap:1rem}}@media (max-width: 480px){.cohort-retention-table__table{font-size:.75rem;min-width:700px}.cohort-retention-table__header,.cohort-retention-table__cell{padding:.5rem}.cohort-retention-table__header--cohort{min-width:100px}.cohort-retention-table__header--size{min-width:60px}}@media (prefers-reduced-motion: reduce){.cohort-retention-table__cell--clickable,.cohort-retention-table__spinner{animation:none;transition:none}.cohort-retention-table__cell--clickable:hover{transform:none}}@media print{.cohort-retention-table__container{border:1px solid #000;overflow:visible}.cohort-retention-table__table{min-width:auto}.cohort-retention-table__cell--clickable{cursor:default}.cohort-retention-table__legend{page-break-before:avoid}}.engagement-score-histogram{background-color:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;padding:1.5rem;margin-bottom:1.5rem}.engagement-score-histogram__header{margin-bottom:1.5rem}.engagement-score-histogram__title{font-size:1.25rem;font-weight:600;color:#111827;margin:0 0 .5rem}.engagement-score-histogram__description{font-size:.875rem;color:#6b7280;margin:0}.engagement-score-histogram__chart{margin-bottom:1.5rem}.engagement-score-histogram__summary{display:flex;flex-wrap:wrap;gap:1.5rem;padding:1rem;background-color:#f9fafb;border-radius:.5rem;margin-bottom:1.5rem}.engagement-score-histogram__stat{display:flex;flex-direction:column;gap:.25rem}.engagement-score-histogram__stat-label{font-size:.75rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.engagement-score-histogram__stat-value{font-size:1.25rem;font-weight:600;color:#111827}.engagement-score-histogram__stat-value--warning{color:#f59e0b}.engagement-score-histogram__stat-value--success{color:#10b981}.engagement-score-histogram__legend{padding-top:1rem;border-top:1px solid #E5E7EB}.engagement-score-histogram__legend-title{font-size:.875rem;font-weight:600;color:#111827;margin:0 0 .75rem}.engagement-score-histogram__legend-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.engagement-score-histogram__legend-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#6b7280}.engagement-score-histogram__legend-color{width:1rem;height:1rem;border-radius:.25rem;flex-shrink:0}.engagement-score-histogram__legend-label{line-height:1.4}@media (min-width: 768px){.engagement-score-histogram{padding:2rem}.engagement-score-histogram__summary{gap:2rem}.engagement-score-histogram__legend-list{flex-direction:row;flex-wrap:wrap}.engagement-score-histogram__legend-item{flex:0 0 calc(50% - .5rem)}}@media (min-width: 1024px){.engagement-score-histogram__summary{justify-content:space-around}.engagement-score-histogram__legend-item{flex:0 0 auto}}.engagement-score-histogram__chart:focus-within{outline:2px solid #0066FF;outline-offset:2px;border-radius:.5rem}@media (prefers-contrast: high){.engagement-score-histogram,.engagement-score-histogram__legend-color{border:1px solid #111827}}@media (prefers-reduced-motion: reduce){.engagement-score-histogram *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{.engagement-score-histogram{box-shadow:none;border:1px solid #E5E7EB;page-break-inside:avoid}.engagement-score-histogram__chart{max-height:300px}}.feature-usage-chart{background:var(--color-white, #ffffff);border-radius:8px;padding:24px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px}.feature-usage-chart__header{margin-bottom:20px}.feature-usage-chart__title{font-size:20px;font-weight:600;color:var(--color-text-primary, #1f2937);margin:0 0 8px}.feature-usage-chart__subtitle{font-size:14px;color:var(--color-text-secondary, #6b7280);margin:0}.feature-usage-chart__chart-container{margin-bottom:24px;min-height:300px;position:relative}.feature-usage-chart__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--color-text-secondary, #6b7280)}.feature-usage-chart__spinner{width:40px;height:40px;border:4px solid var(--color-border, #e5e7eb);border-top-color:var(--eduq-blue, #3b82f6);border-radius:50%;animation:feature-usage-chart-spin .8s linear infinite;margin-bottom:16px}@keyframes feature-usage-chart-spin{to{transform:rotate(360deg)}}.feature-usage-chart__error{padding:20px;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;text-align:center}.feature-usage-chart__error-message{color:#dc2626;margin:0;font-size:14px}.feature-usage-chart__empty{padding:60px 20px;text-align:center;color:var(--color-text-secondary, #6b7280)}.feature-usage-chart__empty p{margin:0;font-size:14px}.feature-usage-chart__table-container{overflow-x:auto;margin-top:24px}.feature-usage-chart__table{width:100%;border-collapse:collapse;font-size:14px}.feature-usage-chart__table thead{background-color:var(--color-background-secondary, #f9fafb);border-bottom:2px solid var(--color-border, #e5e7eb)}.feature-usage-chart__table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--color-text-primary, #1f2937);font-size:13px;text-transform:uppercase;letter-spacing:.05em}.feature-usage-chart__table tbody tr{border-bottom:1px solid var(--color-border, #e5e7eb);transition:background-color .15s ease;cursor:pointer}.feature-usage-chart__table tbody tr:hover{background-color:var(--color-background-hover, #f3f4f6)}.feature-usage-chart__table tbody tr:focus{outline:2px solid var(--eduq-blue, #3b82f6);outline-offset:-2px;background-color:var(--color-background-hover, #f3f4f6)}.feature-usage-chart__row--selected{background-color:#3b82f61a!important}.feature-usage-chart__table td{padding:12px 16px;color:var(--color-text-primary, #1f2937)}.feature-usage-chart__rank{width:60px;text-align:center;font-weight:600}.feature-usage-chart__medal{font-size:20px;display:inline-block}.feature-usage-chart__rank-number{color:var(--color-text-secondary, #6b7280);font-size:14px}.feature-usage-chart__feature-name{font-weight:500;color:var(--color-text-primary, #1f2937);min-width:200px}.feature-usage-chart__count{text-align:right;font-weight:600;color:var(--eduq-blue, #3b82f6);min-width:100px}.feature-usage-chart__percentage{min-width:150px}.feature-usage-chart__percentage-bar{position:relative;height:24px;background-color:var(--color-background-secondary, #f3f4f6);border-radius:4px;overflow:hidden}.feature-usage-chart__percentage-fill{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,var(--eduq-blue, #3b82f6) 0%,var(--eduq-cyan, #06b6d4) 100%);transition:width .3s ease}.feature-usage-chart__percentage-text{position:relative;display:flex;align-items:center;justify-content:center;height:100%;font-size:12px;font-weight:600;color:var(--color-text-primary, #1f2937);z-index:1}.feature-usage-chart__hint{margin-top:16px;font-size:13px;color:var(--color-text-secondary, #6b7280);text-align:center;font-style:italic}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (max-width: 1023px){.feature-usage-chart{padding:20px}.feature-usage-chart__title{font-size:18px}.feature-usage-chart__table{font-size:13px}.feature-usage-chart__table th,.feature-usage-chart__table td{padding:10px 12px}.feature-usage-chart__feature-name{min-width:150px}}@media (max-width: 767px){.feature-usage-chart{padding:16px}.feature-usage-chart__title{font-size:16px}.feature-usage-chart__subtitle{font-size:13px}.feature-usage-chart__chart-container{margin-bottom:20px}.feature-usage-chart__table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.feature-usage-chart__table{font-size:12px;min-width:500px}.feature-usage-chart__table th,.feature-usage-chart__table td{padding:8px 10px}.feature-usage-chart__rank{width:50px}.feature-usage-chart__medal{font-size:16px}.feature-usage-chart__feature-name{min-width:120px}.feature-usage-chart__count{min-width:80px}.feature-usage-chart__percentage{min-width:120px}.feature-usage-chart__percentage-bar{height:20px}.feature-usage-chart__percentage-text{font-size:11px}.feature-usage-chart__hint{font-size:12px}}@media (prefers-reduced-motion: reduce){.feature-usage-chart__spinner{animation:none;border-top-color:transparent}.feature-usage-chart__percentage-fill,.feature-usage-chart__table tbody tr{transition:none}}@media (prefers-contrast: high){.feature-usage-chart{border:2px solid currentColor}.feature-usage-chart__table tbody tr:focus{outline-width:3px}.feature-usage-chart__percentage-fill{background:currentColor}}@media print{.feature-usage-chart{box-shadow:none;border:1px solid #000;page-break-inside:avoid}.feature-usage-chart__chart-container,.feature-usage-chart__hint{display:none}.feature-usage-chart__table tbody tr{cursor:default}.feature-usage-chart__table tbody tr:hover{background-color:transparent}}.retention-curve-chart{width:100%;margin:1.5rem 0}.retention-curve-chart__header{margin-bottom:1rem}.retention-curve-chart__title{font-size:1.125rem;font-weight:600;color:var(--text-primary, #111827);margin:0 0 .25rem}.retention-curve-chart__subtitle{font-size:.875rem;color:var(--text-secondary, #6b7280);margin:0}.retention-curve-chart__container{background:var(--card-background, #ffffff);border-radius:8px;border:1px solid var(--border-color, #e5e7eb);padding:1.5rem;height:450px}.retention-curve-chart__info{margin-top:1rem;padding:.75rem 1rem;background:var(--info-bg, #eff6ff);border-left:3px solid var(--info-border, #3b82f6);border-radius:4px}.retention-curve-chart__info-text{margin:0;font-size:.875rem;color:var(--text-secondary, #1e40af);line-height:1.5}.retention-curve-chart__info-text strong{font-weight:600;color:var(--text-primary, #1e3a8a)}.retention-curve-chart--loading{display:flex;justify-content:center;align-items:center;min-height:400px;background:var(--card-background, #ffffff);border-radius:8px;border:1px solid var(--border-color, #e5e7eb)}.retention-curve-chart__loading{text-align:center}.retention-curve-chart__spinner{width:40px;height:40px;margin:0 auto 1rem;border:4px solid var(--spinner-track, #e5e7eb);border-top-color:var(--spinner-color, #3b82f6);border-radius:50%;animation:retention-curve-chart-spin .8s linear infinite}@keyframes retention-curve-chart-spin{to{transform:rotate(360deg)}}.retention-curve-chart__loading p{color:var(--text-secondary, #6b7280);font-size:.875rem}.retention-curve-chart--empty{display:flex;justify-content:center;align-items:center;min-height:400px;background:var(--card-background, #ffffff);border-radius:8px;border:1px solid var(--border-color, #e5e7eb)}.retention-curve-chart__empty{text-align:center;padding:2rem}.retention-curve-chart__empty p{color:var(--text-secondary, #6b7280);margin:.5rem 0}.retention-curve-chart__empty-hint{font-size:.875rem;color:var(--text-tertiary, #9ca3af)}@media (max-width: 768px){.retention-curve-chart__container{padding:1rem;height:400px}.retention-curve-chart__title{font-size:1rem}.retention-curve-chart__subtitle{font-size:.8125rem}.retention-curve-chart__info{padding:.5rem .75rem}.retention-curve-chart__info-text{font-size:.8125rem}}@media (max-width: 480px){.retention-curve-chart__container{padding:.75rem;height:350px}.retention-curve-chart__title{font-size:.9375rem}.retention-curve-chart__info-text{font-size:.75rem}}@media (prefers-reduced-motion: reduce){.retention-curve-chart__spinner{animation:none}}@media print{.retention-curve-chart__container{border:1px solid #000;height:auto;min-height:400px}.retention-curve-chart__info{page-break-before:avoid}}.cohort-analysis{width:100%;padding:1.5rem 0}.cohort-analysis__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;gap:1.5rem;flex-wrap:wrap}.cohort-analysis__title-section{flex:1;min-width:250px}.cohort-analysis__title{font-size:1.5rem;font-weight:700;color:var(--text-primary, #111827);margin:0 0 .5rem}.cohort-analysis__subtitle{font-size:.9375rem;color:var(--text-secondary, #6b7280);margin:0}.cohort-analysis__controls{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.cohort-analysis__filter{display:flex;align-items:center;gap:.5rem}.cohort-analysis__filter-label{font-size:.875rem;font-weight:500;color:var(--text-secondary, #6b7280);white-space:nowrap}.cohort-analysis__filter-select{padding:.5rem .75rem;border:1px solid var(--border-color, #e5e7eb);border-radius:6px;background:var(--input-background, #ffffff);color:var(--text-primary, #111827);font-size:.875rem;cursor:pointer;transition:all .15s ease}.cohort-analysis__filter-select:hover:not(:disabled){border-color:var(--border-hover, #d1d5db)}.cohort-analysis__filter-select:focus{outline:none;border-color:var(--focus-color, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.cohort-analysis__filter-select:disabled{opacity:.5;cursor:not-allowed}.cohort-analysis__metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.cohort-analysis__metric-card{background:var(--card-background, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:1.5rem}.cohort-analysis__metric-card--success{border-left:4px solid var(--success-color, #10b981);background:linear-gradient(to right,rgba(16,185,129,.05),var(--card-background, #ffffff))}.cohort-analysis__metric-card--warning{border-left:4px solid var(--warning-color, #f59e0b);background:linear-gradient(to right,rgba(245,158,11,.05),var(--card-background, #ffffff))}.cohort-analysis__metric-title{font-size:.9375rem;font-weight:600;color:var(--text-secondary, #6b7280);margin:0 0 1rem;text-transform:uppercase;letter-spacing:.05em}.cohort-analysis__metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.cohort-analysis__metric-item{display:flex;justify-content:space-between;align-items:center}.cohort-analysis__metric-label{font-size:.875rem;color:var(--text-secondary, #6b7280)}.cohort-analysis__metric-value{font-size:1rem;font-weight:600;color:var(--text-primary, #111827)}.cohort-analysis__metric-highlight{display:flex;flex-direction:column;gap:.5rem}.cohort-analysis__metric-highlight-name{font-size:1.25rem;font-weight:700;color:var(--text-primary, #111827)}.cohort-analysis__metric-highlight-value{font-size:1rem;font-weight:600;color:var(--text-secondary, #6b7280)}.cohort-analysis__churn-warnings{display:flex;gap:1rem;padding:1rem 1.5rem;background:var(--warning-bg, #fef3c7);border:1px solid var(--warning-border, #fbbf24);border-radius:8px;margin-bottom:2rem}.cohort-analysis__churn-icon{font-size:1.5rem;flex-shrink:0}.cohort-analysis__churn-content{flex:1}.cohort-analysis__churn-title{font-size:1rem;font-weight:600;color:var(--warning-text, #92400e);margin:0 0 .5rem}.cohort-analysis__churn-text{font-size:.875rem;color:var(--warning-text, #92400e);margin:0 0 .75rem}.cohort-analysis__churn-list{display:flex;flex-wrap:wrap;gap:.5rem}.cohort-analysis__churn-badge{display:inline-block;padding:.25rem .75rem;background:var(--warning-badge-bg, #fbbf24);color:var(--warning-badge-text, #78350f);border-radius:12px;font-size:.8125rem;font-weight:600}.cohort-analysis__section{margin-bottom:2.5rem}.cohort-analysis__section-title{font-size:1.125rem;font-weight:600;color:var(--text-primary, #111827);margin:0 0 1rem}.cohort-analysis__selected-info{position:fixed;bottom:2rem;right:2rem;padding:1rem 1.5rem;background:var(--card-background, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;box-shadow:0 4px 6px #0000001a;z-index:1000;display:flex;align-items:center;gap:1rem}.cohort-analysis__selected-info p{margin:0;font-size:.875rem;color:var(--text-primary, #111827)}.cohort-analysis__close-button{padding:.25rem .75rem;background:var(--button-secondary-bg, #f3f4f6);border:1px solid var(--border-color, #e5e7eb);border-radius:4px;color:var(--text-primary, #111827);font-size:.8125rem;cursor:pointer;transition:all .15s ease}.cohort-analysis__close-button:hover{background:var(--button-secondary-hover, #e5e7eb)}@media (max-width: 1024px){.cohort-analysis__metrics{grid-template-columns:1fr}}@media (max-width: 768px){.cohort-analysis__header,.cohort-analysis__controls,.cohort-analysis__filter{flex-direction:column;align-items:stretch}.cohort-analysis__filter-select{width:100%}.cohort-analysis__title{font-size:1.25rem}.cohort-analysis__metric-grid{grid-template-columns:1fr}.cohort-analysis__churn-warnings{flex-direction:column;gap:.75rem}.cohort-analysis__selected-info{bottom:1rem;right:1rem;left:1rem;flex-direction:column;align-items:stretch}}@media (max-width: 480px){.cohort-analysis{padding:1rem 0}.cohort-analysis__title{font-size:1.125rem}.cohort-analysis__subtitle{font-size:.875rem}.cohort-analysis__metric-card{padding:1rem}.cohort-analysis__section{margin-bottom:2rem}}@media (prefers-reduced-motion: reduce){.cohort-analysis__filter-select,.cohort-analysis__close-button{transition:none}}@media print{.cohort-analysis__controls,.cohort-analysis__selected-info{display:none}.cohort-analysis__section{page-break-inside:avoid}.cohort-analysis__churn-warnings{page-break-before:avoid}}.comparison-metrics{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:2rem}@media (min-width: 768px){.comparison-metrics{grid-template-columns:repeat(3,1fr);gap:1.5rem}}.comparison-metrics__card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background-color:#fff;border-radius:.75rem;border:2px solid transparent;box-shadow:0 1px 3px #0000001a;transition:all .2s ease;position:relative}.comparison-metrics__card:hover{box-shadow:0 4px 6px #0000001a}.comparison-metrics__card--success{border-color:#10b98133;background-color:#10b98105}.comparison-metrics__card--error{border-color:#ef444433;background-color:#ef444405}.comparison-metrics__card--neutral{border-color:#9ca3af33;background-color:#9ca3af05}.comparison-metrics__icon{flex-shrink:0;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;border-radius:.5rem;transition:transform .2s ease}.comparison-metrics__card--success .comparison-metrics__icon{color:#10b981;background-color:#10b9811a}.comparison-metrics__card--error .comparison-metrics__icon{color:#ef4444;background-color:#ef44441a}.comparison-metrics__card--neutral .comparison-metrics__icon{color:#9ca3af;background-color:#9ca3af1a}.comparison-metrics__card:hover .comparison-metrics__icon{transform:scale(1.1)}.comparison-metrics__content{flex:1;min-width:0}.comparison-metrics__value{font-size:1.5rem;font-weight:700;line-height:1.2;margin-bottom:.25rem}.comparison-metrics__card--success .comparison-metrics__value{color:#10b981}.comparison-metrics__card--error .comparison-metrics__value{color:#ef4444}.comparison-metrics__card--neutral .comparison-metrics__value{color:#6b7280}.comparison-metrics__label{font-size:.875rem;color:#6b7280;line-height:1.4}.comparison-metrics__tooltip-trigger{flex-shrink:0;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;background:none;border:none;color:#9ca3af;cursor:help;border-radius:50%;transition:all .2s ease;padding:0}.comparison-metrics__tooltip-trigger:hover{color:#6b7280;background-color:#0000000d}.comparison-metrics__tooltip-trigger:focus{outline:2px solid var(--eduq-blue, #0066FF);outline-offset:2px;color:#6b7280}.comparison-metrics__tooltip-trigger svg{width:1rem;height:1rem}.comparison-metrics--loading{pointer-events:none}.comparison-metrics__card--skeleton{border-color:#e5e7eb80;background-color:#f9fafb}.comparison-metrics__skeleton-label,.comparison-metrics__skeleton-value{background:linear-gradient(90deg,#e5e7eb80,#e5e7ebcc,#e5e7eb80);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:.25rem}.comparison-metrics__skeleton-value{width:4rem;height:1.5rem;margin-bottom:.5rem}.comparison-metrics__skeleton-label{width:8rem;height:.875rem}@media (max-width: 767px){.comparison-metrics__card{padding:1rem}.comparison-metrics__icon{width:2rem;height:2rem;font-size:1.25rem}.comparison-metrics__value{font-size:1.25rem}.comparison-metrics__label{font-size:.8125rem}}@media (prefers-reduced-motion: reduce){.comparison-metrics__card,.comparison-metrics__icon,.comparison-metrics__tooltip-trigger{transition:none}.comparison-metrics__card:hover .comparison-metrics__icon{transform:none}@keyframes skeleton-loading{0%,to{background-position:0 0}}}@media print{.comparison-metrics__tooltip-trigger{display:none}.comparison-metrics__card{break-inside:avoid;box-shadow:none;border:1px solid #E5E7EB}}.engagement-metrics{margin-bottom:2rem;position:relative}.engagement-metrics__header{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:1.5rem}@media (min-width: 768px){.engagement-metrics__header{flex-direction:row;justify-content:space-between;align-items:flex-start}}.engagement-metrics__title{font-size:1.5rem;font-weight:600;color:var(--text-primary, #111827);margin:0}.engagement-metrics__filters{display:flex;flex-direction:column;gap:1rem}@media (min-width: 768px){.engagement-metrics__filters{flex-direction:row;gap:1.5rem}}.engagement-metrics__filter-group{display:flex;flex-direction:column;gap:.5rem}.engagement-metrics__filter-label{font-size:.875rem;font-weight:500;color:var(--text-secondary, #6B7280)}.engagement-metrics__period-buttons{display:flex;gap:.5rem;background-color:var(--bg-secondary, #F9FAFB);padding:.25rem;border-radius:.5rem}.engagement-metrics__period-button{flex:1;padding:.5rem 1rem;background-color:transparent;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;color:var(--text-secondary, #6B7280);cursor:pointer;transition:all .2s ease;white-space:nowrap}.engagement-metrics__period-button:hover{background-color:#0066ff0d;color:var(--eduq-blue, #0066FF)}.engagement-metrics__period-button:focus{outline:2px solid var(--eduq-blue, #0066FF);outline-offset:2px}.engagement-metrics__period-button--active{background-color:var(--eduq-blue, #0066FF);color:#fff}.engagement-metrics__period-button--active:hover{background-color:var(--eduq-blue-hover, #0052CC);color:#fff}.engagement-metrics__tier-select{padding:.5rem 2rem .5rem .75rem;background-color:#fff;border:1px solid var(--border-medium, #D1D5DB);border-radius:.5rem;font-size:.875rem;color:var(--text-primary, #111827);cursor:pointer;transition:border-color .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%236B7280' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center}.engagement-metrics__tier-select:hover{border-color:var(--eduq-blue, #0066FF)}.engagement-metrics__tier-select:focus{outline:none;border-color:var(--eduq-blue, #0066FF);box-shadow:0 0 0 3px #0066ff1a}.engagement-metrics__grid{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 640px){.engagement-metrics__grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.engagement-metrics__grid{grid-template-columns:repeat(4,1fr);gap:1.5rem}}.engagement-metrics__card{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem;background-color:#fff;border-radius:.75rem;border:1px solid var(--border-light, #E5E7EB);box-shadow:0 1px 3px #0000001a;transition:all .2s ease}.engagement-metrics__card:hover{box-shadow:0 4px 6px #0000001a;border-color:var(--eduq-blue, #0066FF)}.engagement-metrics__card-icon{flex-shrink:0;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;background-color:#0066ff1a;border-radius:.5rem;color:var(--eduq-blue, #0066FF)}.engagement-metrics__card-content{flex:1;min-width:0}.engagement-metrics__card-label{font-size:.875rem;font-weight:500;color:var(--text-secondary, #6B7280);margin-bottom:.5rem}.engagement-metrics__card-value{font-size:1.875rem;font-weight:700;color:var(--text-primary, #111827);line-height:1.2;margin-bottom:.25rem}.engagement-metrics__card-subtitle{font-size:.75rem;color:var(--text-tertiary, #9CA3AF)}.engagement-metrics__filters--loading{pointer-events:none}.engagement-metrics__skeleton-filter{width:10rem;height:2.5rem;background:linear-gradient(90deg,#e5e7eb80,#e5e7ebcc,#e5e7eb80);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:.5rem}.engagement-metrics__card--skeleton{border-color:#e5e7eb80;background-color:#f9fafb;pointer-events:none}.engagement-metrics__skeleton-label,.engagement-metrics__skeleton-value,.engagement-metrics__skeleton-subtitle{background:linear-gradient(90deg,#e5e7eb80,#e5e7ebcc,#e5e7eb80);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:.25rem}.engagement-metrics__skeleton-label{width:60%;height:.875rem;margin-bottom:.5rem}.engagement-metrics__skeleton-value{width:80%;height:1.875rem;margin-bottom:.25rem}.engagement-metrics__skeleton-subtitle{width:50%;height:.75rem}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.engagement-metrics__loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#fffc;display:flex;align-items:center;justify-content:center;border-radius:.75rem;z-index:10}.engagement-metrics__spinner{width:2rem;height:2rem;border:3px solid rgba(0,102,255,.2);border-top-color:var(--eduq-blue, #0066FF);border-radius:50%;animation:spinner-rotate .8s linear infinite}@keyframes spinner-rotate{to{transform:rotate(360deg)}}.engagement-metrics__error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center}.engagement-metrics__error-icon{color:var(--error, #EF4444);margin-bottom:1rem}.engagement-metrics__error-message{font-size:1rem;color:var(--text-secondary, #6B7280);margin-bottom:1.5rem}.engagement-metrics__retry-button{padding:.75rem 1.5rem;background-color:var(--eduq-blue, #0066FF);color:#fff;border:none;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:background-color .2s ease}.engagement-metrics__retry-button:hover{background-color:var(--eduq-blue-hover, #0052CC)}.engagement-metrics__retry-button:focus{outline:2px solid var(--eduq-blue, #0066FF);outline-offset:2px}.engagement-metrics__empty{display:flex;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center;color:var(--text-secondary, #6B7280)}@media (max-width: 639px){.engagement-metrics__card{padding:1rem}.engagement-metrics__card-icon{width:2rem;height:2rem}.engagement-metrics__card-icon svg{width:20px;height:20px}.engagement-metrics__card-value{font-size:1.5rem}.engagement-metrics__card-label{font-size:.8125rem}.engagement-metrics__period-button{padding:.5rem .75rem;font-size:.8125rem}}@media (prefers-reduced-motion: reduce){.engagement-metrics__card,.engagement-metrics__period-button,.engagement-metrics__tier-select,.engagement-metrics__retry-button{transition:none}.engagement-metrics__spinner{animation:none;border-top-color:transparent}@keyframes skeleton-loading{0%,to{background-position:0 0}}}@media print{.engagement-metrics__filters{display:none}.engagement-metrics__card{break-inside:avoid;box-shadow:none;border:1px solid var(--border-light, #E5E7EB)}.engagement-metrics__loading-overlay{display:none}}.export-button{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:var(--eduq-blue, #0066CC);color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.export-button:hover:not(:disabled){background-color:var(--eduq-blue-dark, #0052A3);transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.export-button:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 2px #0000001a}.export-button:disabled{background-color:#e5e7eb;color:#9ca3af;cursor:not-allowed;opacity:.6}.export-button:focus-visible{outline:2px solid var(--eduq-blue, #0066CC);outline-offset:2px}.export-button--loading{background-color:var(--eduq-blue-dark, #0052A3);cursor:wait}.export-button__icon{flex-shrink:0;width:1rem;height:1rem}.export-button__text{line-height:1}.export-button__spinner{display:inline-block;width:1rem;height:1rem;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:export-button-spin .6s linear infinite}@keyframes export-button-spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.export-button{padding:.5rem .75rem;font-size:.8125rem}.export-button__icon{width:.875rem;height:.875rem}}@media (prefers-reduced-motion: reduce){.export-button{transition:none}.export-button:hover:not(:disabled){transform:none}.export-button__spinner{animation:none;border-top-color:#ffffff4d;border-right-color:#fff}}@media (prefers-contrast: high){.export-button{border:2px solid currentColor}.export-button:focus-visible{outline-width:3px}}@media print{.export-button{display:none}}.low-engagement-users-list{background:var(--card-background, #ffffff);border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a}.low-engagement-users-list__header{margin-bottom:20px}.low-engagement-users-list__title{font-size:20px;font-weight:600;color:var(--text-primary, #1a1a1a);margin:0 0 8px}.low-engagement-users-list__subtitle{font-size:14px;color:var(--text-secondary, #666666);margin:0}.low-engagement-users-list__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary, #666666)}.low-engagement-users-list__spinner{width:40px;height:40px;border:4px solid var(--border-color, #e0e0e0);border-top-color:var(--eduq-blue, #3b82f6);border-radius:50%;animation:low-engagement-users-list-spin .8s linear infinite;margin-bottom:16px}@keyframes low-engagement-users-list-spin{to{transform:rotate(360deg)}}.low-engagement-users-list__empty{text-align:center;padding:60px 20px;color:var(--text-secondary, #666666)}.low-engagement-users-list__empty p{margin:0 0 8px;font-size:16px}.low-engagement-users-list__empty-hint{font-size:14px;color:var(--success-color, #10b981)}.low-engagement-users-list__table-container{overflow-x:auto;margin-bottom:20px}.low-engagement-users-list__table{width:100%;border-collapse:collapse;font-size:14px}.low-engagement-users-list__th{text-align:left;padding:12px 16px;border-bottom:2px solid var(--border-color, #e0e0e0);font-weight:600;color:var(--text-primary, #1a1a1a);background:var(--background-secondary, #f9fafb)}.low-engagement-users-list__th--actions{text-align:center;width:120px}.low-engagement-users-list__sort-button{background:none;border:none;padding:0;font:inherit;color:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-weight:600;transition:color .2s ease}.low-engagement-users-list__sort-button:hover{color:var(--eduq-blue, #3b82f6)}.low-engagement-users-list__sort-button:focus{outline:2px solid var(--eduq-blue, #3b82f6);outline-offset:2px;border-radius:4px}.low-engagement-users-list__sort-button--active{color:var(--eduq-blue, #3b82f6)}.low-engagement-users-list__sort-icon{font-size:12px;line-height:1}.low-engagement-users-list__row{transition:background-color .2s ease}.low-engagement-users-list__row:hover{background-color:var(--background-hover, #f9fafb)}.low-engagement-users-list__td{padding:12px 16px;border-bottom:1px solid var(--border-color, #e0e0e0);color:var(--text-primary, #1a1a1a)}.low-engagement-users-list__td--email{font-weight:500;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.low-engagement-users-list__td--actions{text-align:center}.low-engagement-users-list__score{display:inline-block;padding:4px 12px;border-radius:12px;font-weight:600;font-size:13px}.low-engagement-users-list__score--critical{background-color:#ef44441a;color:#dc2626}.low-engagement-users-list__score--warning{background-color:#f59e0b1a;color:#d97706}.low-engagement-users-list__score--low{background-color:#6b72801a;color:#4b5563}.low-engagement-users-list__contact-button{background:var(--eduq-blue, #3b82f6);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.low-engagement-users-list__contact-button:hover{background:var(--eduq-blue-dark, #2563eb);transform:translateY(-1px);box-shadow:0 2px 4px #3b82f64d}.low-engagement-users-list__contact-button:active{transform:translateY(0)}.low-engagement-users-list__contact-button:focus{outline:2px solid var(--eduq-blue, #3b82f6);outline-offset:2px}.low-engagement-users-list__pagination{display:flex;align-items:center;justify-content:space-between;padding-top:16px;border-top:1px solid var(--border-color, #e0e0e0)}.low-engagement-users-list__pagination-button{background:var(--background-secondary, #f9fafb);border:1px solid var(--border-color, #e0e0e0);padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;color:var(--text-primary, #1a1a1a);cursor:pointer;transition:all .2s ease}.low-engagement-users-list__pagination-button:hover:not(:disabled){background:var(--eduq-blue, #3b82f6);color:#fff;border-color:var(--eduq-blue, #3b82f6)}.low-engagement-users-list__pagination-button:disabled{opacity:.5;cursor:not-allowed}.low-engagement-users-list__pagination-button:focus{outline:2px solid var(--eduq-blue, #3b82f6);outline-offset:2px}.low-engagement-users-list__pagination-info{font-size:14px;color:var(--text-secondary, #666666);display:flex;flex-direction:column;align-items:center;gap:4px}.low-engagement-users-list__pagination-range{font-size:12px;color:var(--text-tertiary, #999999)}@media (max-width: 768px){.low-engagement-users-list{padding:16px}.low-engagement-users-list__title{font-size:18px}.low-engagement-users-list__subtitle,.low-engagement-users-list__table{font-size:13px}.low-engagement-users-list__th,.low-engagement-users-list__td{padding:10px 12px}.low-engagement-users-list__td--email{max-width:200px}.low-engagement-users-list__contact-button{padding:6px 12px;font-size:13px}.low-engagement-users-list__pagination{flex-direction:column;gap:12px}.low-engagement-users-list__pagination-button{width:100%}}@media (max-width: 480px){.low-engagement-users-list__table-container{margin:0 -16px;padding:0 16px}.low-engagement-users-list__th,.low-engagement-users-list__td{padding:8px 10px}.low-engagement-users-list__td--email{max-width:150px}.low-engagement-users-list__score{padding:3px 8px;font-size:12px}}@media (prefers-contrast: high){.low-engagement-users-list__score--critical{background-color:#fee;border:1px solid #dc2626}.low-engagement-users-list__score--warning{background-color:#fef3c7;border:1px solid #d97706}.low-engagement-users-list__score--low{background-color:#f3f4f6;border:1px solid #4b5563}}@media (prefers-reduced-motion: reduce){.low-engagement-users-list__spinner{animation:none}.low-engagement-users-list__contact-button:hover{transform:none}.low-engagement-users-list__row,.low-engagement-users-list__sort-button,.low-engagement-users-list__pagination-button,.low-engagement-users-list__contact-button{transition:none}}.support-tickets{padding:2rem}.support-tickets__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.support-tickets__title{font-size:2rem;font-weight:600;color:var(--eduq-text-primary);margin:0}.support-tickets__create-button{padding:.75rem 1.5rem;background-color:var(--eduq-blue);color:#fff;border:none;border-radius:.375rem;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.support-tickets__create-button:hover{background-color:var(--eduq-blue-dark)}.support-tickets__filters{margin-bottom:1.5rem}.support-tickets__filter-group{display:flex;gap:1rem;margin-top:1rem;flex-wrap:wrap}.support-tickets__filter-select{padding:.5rem 1rem;border:1px solid var(--eduq-border);border-radius:.375rem;font-size:.875rem;background-color:#fff;cursor:pointer}.support-tickets__filter-select:focus{outline:none;border-color:var(--eduq-blue);box-shadow:0 0 0 3px #0066ff1a}.support-tickets__ticket-id{font-family:monospace;font-size:.875rem;color:var(--eduq-text-secondary)}.support-tickets__unassigned{color:var(--eduq-text-muted);font-style:italic}.support-tickets__action--view{color:var(--eduq-blue)}.support-tickets__error{padding:2rem;text-align:center}.support-tickets__error p{color:var(--eduq-error);margin-bottom:1rem}.support-tickets__retry-button{padding:.5rem 1rem;background-color:var(--eduq-blue);color:#fff;border:none;border-radius:.375rem;cursor:pointer}.support-tickets__create-form{padding:1.5rem}.support-tickets__error-message{padding:.75rem;background-color:#fee;border:1px solid #fcc;border-radius:.375rem;color:var(--eduq-error);margin-bottom:1rem}.support-tickets__form-group{margin-bottom:1.5rem}.support-tickets__form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.support-tickets__label{display:block;font-weight:500;margin-bottom:.5rem;color:var(--eduq-text-primary)}.support-tickets__required{color:var(--eduq-error)}.support-tickets__input,.support-tickets__textarea,.support-tickets__select{width:100%;padding:.75rem;border:1px solid var(--eduq-border);border-radius:.375rem;font-size:1rem;font-family:inherit}.support-tickets__input:focus,.support-tickets__textarea:focus,.support-tickets__select:focus{outline:none;border-color:var(--eduq-blue);box-shadow:0 0 0 3px #0066ff1a}.support-tickets__textarea{resize:vertical;min-height:120px}.support-tickets__form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--eduq-border)}.support-tickets__button{padding:.75rem 1.5rem;border:none;border-radius:.375rem;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.support-tickets__button:disabled{opacity:.5;cursor:not-allowed}.support-tickets__button--primary{background-color:var(--eduq-blue);color:#fff}.support-tickets__button--primary:hover:not(:disabled){background-color:var(--eduq-blue-dark)}.support-tickets__button--secondary{background-color:var(--eduq-gray-light);color:var(--eduq-text-primary)}.support-tickets__button--secondary:hover:not(:disabled){background-color:var(--eduq-gray)}.support-tickets__detail{max-height:80vh;overflow-y:auto}.support-tickets__detail-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem;border-bottom:1px solid var(--eduq-border)}.support-tickets__detail-info{flex:1}.support-tickets__detail-title{font-size:1.5rem;font-weight:600;margin:0 0 .75rem;color:var(--eduq-text-primary)}.support-tickets__detail-meta{display:flex;gap:.75rem;align-items:center}.support-tickets__detail-category{padding:.25rem .75rem;background-color:var(--eduq-gray-light);border-radius:.25rem;font-size:.875rem;color:var(--eduq-text-secondary)}.support-tickets__detail-actions{display:flex;gap:.75rem;align-items:center}.support-tickets__status-select{padding:.5rem 1rem;border:1px solid var(--eduq-border);border-radius:.375rem;font-size:.875rem;background-color:#fff;cursor:pointer}.support-tickets__assign-button{padding:.5rem 1rem;background-color:var(--eduq-cyan);color:#fff;border:none;border-radius:.375rem;font-size:.875rem;cursor:pointer;white-space:nowrap}.support-tickets__assign-button:disabled{background-color:var(--eduq-gray);cursor:not-allowed}.support-tickets__detail-body{padding:1.5rem}.support-tickets__detail-description{margin-bottom:2rem}.support-tickets__detail-description h3{font-size:1.125rem;font-weight:600;margin:0 0 .75rem;color:var(--eduq-text-primary)}.support-tickets__detail-description p{color:var(--eduq-text-secondary);line-height:1.6;white-space:pre-wrap}.support-tickets__detail-metadata{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;padding:1rem;background-color:var(--eduq-gray-light);border-radius:.375rem;margin-bottom:2rem}.support-tickets__metadata-item{display:flex;flex-direction:column;gap:.25rem}.support-tickets__metadata-label{font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--eduq-text-muted);letter-spacing:.05em}.support-tickets__metadata-value{font-size:.875rem;color:var(--eduq-text-primary)}.support-tickets__messages{margin-top:2rem}.support-tickets__messages h3{font-size:1.125rem;font-weight:600;margin:0 0 1rem;color:var(--eduq-text-primary)}.support-tickets__message-list{max-height:400px;overflow-y:auto;margin-bottom:1.5rem;padding:1rem;background-color:var(--eduq-gray-light);border-radius:.375rem}.support-tickets__no-messages{text-align:center;color:var(--eduq-text-muted);font-style:italic}.support-tickets__message{padding:1rem;background-color:#fff;border-radius:.375rem;margin-bottom:1rem;border-left:3px solid var(--eduq-blue)}.support-tickets__message:last-child{margin-bottom:0}.support-tickets__message--internal{background-color:#fff9e6;border-left-color:orange}.support-tickets__message-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.support-tickets__message-author{font-weight:600;color:var(--eduq-text-primary)}.support-tickets__message-timestamp{font-size:.75rem;color:var(--eduq-text-muted)}.support-tickets__message-badge{padding:.125rem .5rem;background-color:orange;color:#fff;border-radius:.25rem;font-size:.75rem;font-weight:500}.support-tickets__message-content{color:var(--eduq-text-secondary);line-height:1.6;white-space:pre-wrap}.support-tickets__message-form{border-top:1px solid var(--eduq-border);padding-top:1rem}.support-tickets__message-input{width:100%;padding:.75rem;border:1px solid var(--eduq-border);border-radius:.375rem;font-size:1rem;font-family:inherit;resize:vertical;margin-bottom:.75rem}.support-tickets__message-input:focus{outline:none;border-color:var(--eduq-blue);box-shadow:0 0 0 3px #0066ff1a}.support-tickets__message-actions{display:flex;justify-content:space-between;align-items:center}.support-tickets__internal-checkbox{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--eduq-text-secondary);cursor:pointer}.support-tickets__internal-checkbox input[type=checkbox]{cursor:pointer}@media (max-width: 768px){.support-tickets{padding:1rem}.support-tickets__header{flex-direction:column;gap:1rem;align-items:stretch}.support-tickets__filter-group{flex-direction:column}.support-tickets__form-row{grid-template-columns:1fr}.support-tickets__detail-header{flex-direction:column;gap:1rem}.support-tickets__detail-actions{width:100%;justify-content:stretch}.support-tickets__detail-metadata{grid-template-columns:1fr}.support-tickets__message-actions{flex-direction:column;align-items:stretch;gap:.75rem}}.view-as-user{min-height:100vh;background-color:var(--bg-primary)}.view-as-user__banner{position:sticky;top:0;z-index:1000;background:linear-gradient(135deg,#ff6b6b,#ee5a6f);color:#fff;padding:var(--space-4);box-shadow:0 2px 8px #00000026}.view-as-user__banner-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:var(--space-4)}.view-as-user__banner-icon{font-size:var(--text-xl)}.view-as-user__banner-text{flex:1;display:flex;flex-direction:column;gap:var(--space-1)}.view-as-user__banner-text strong{font-size:var(--text-base);font-weight:600}.view-as-user__banner-user{font-size:var(--text-sm);opacity:.9}.view-as-user__exit-button{padding:var(--space-2) var(--space-6);background-color:#fff;color:#ff6b6b;border:none;border-radius:var(--space-1);font-weight:600;cursor:pointer;transition:all .2s}.view-as-user__exit-button:hover{background-color:var(--bg-secondary);transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.view-as-user__header{max-width:1200px;margin:var(--space-8) auto;padding:0 var(--space-4)}.view-as-user__title{font-size:var(--text-3xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--space-2)}.view-as-user__meta{display:flex;gap:var(--space-6);flex-wrap:wrap}.view-as-user__meta-item{font-size:var(--text-sm);color:var(--text-secondary)}.view-as-user__tabs{max-width:1200px;margin:0 auto var(--space-8);padding:0 var(--space-4);display:flex;gap:var(--space-2);border-bottom:2px solid var(--border-light)}.view-as-user__tab{padding:var(--space-2) var(--space-6);background:none;border:none;border-bottom:3px solid transparent;color:var(--text-secondary);font-weight:500;cursor:pointer;transition:all .2s;margin-bottom:-2px}.view-as-user__tab:hover{color:var(--text-primary);background-color:var(--bg-secondary)}.view-as-user__tab--active{color:var(--eduq-blue);border-bottom-color:var(--eduq-blue)}.view-as-user__content{max-width:1200px;margin:0 auto;padding:0 var(--space-4) var(--space-8)}.view-as-user__section{background-color:#fff;border-radius:var(--space-2);padding:var(--space-8);box-shadow:0 1px 3px #0000001a}.view-as-user__section-title{font-size:var(--text-xl);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-6)}.view-as-user__empty{text-align:center;color:var(--text-secondary);padding:var(--space-12);font-size:var(--text-base)}.view-as-user__chat-list{display:flex;flex-direction:column;gap:var(--space-6)}.view-as-user__chat-item{border:1px solid var(--border-light);border-radius:var(--space-2);padding:var(--space-4);background-color:var(--bg-secondary)}.view-as-user__chat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-light)}.view-as-user__chat-date{font-size:var(--text-sm);color:var(--text-secondary)}.view-as-user__chat-topic{font-size:var(--text-sm);font-weight:600;color:var(--eduq-blue);background-color:var(--bg-tertiary);padding:var(--space-1) var(--space-2);border-radius:var(--space-3)}.view-as-user__chat-messages{display:flex;flex-direction:column;gap:var(--space-2)}.view-as-user__message{padding:var(--space-2);border-radius:var(--space-1);line-height:1.5}.view-as-user__message--user{background-color:#e3f2fd;margin-left:var(--space-8)}.view-as-user__message--assistant{background-color:var(--bg-tertiary);margin-right:var(--space-8)}.view-as-user__message strong{color:var(--text-primary);margin-right:var(--space-2)}.view-as-user__settings{display:flex;flex-direction:column;gap:var(--space-8)}.view-as-user__setting-group h3{font-size:var(--text-lg);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-4)}.view-as-user__definition-list{display:grid;grid-template-columns:200px 1fr;gap:var(--space-2) var(--space-6);margin:0}.view-as-user__definition-term{font-weight:600;color:var(--text-secondary)}.view-as-user__definition-value{color:var(--text-primary);word-break:break-word}.view-as-user__readonly-notice{padding:var(--space-4);background-color:#fff3cd;border:1px solid #ffc107;border-radius:var(--space-1);color:#856404;font-size:var(--text-sm)}.view-as-user__mastery{display:flex;flex-direction:column;gap:var(--space-8)}.view-as-user__mastery-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4)}.view-as-user__stat-card{background-color:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--space-2);padding:var(--space-6);text-align:center}.view-as-user__stat-value{font-size:var(--text-3xl);font-weight:700;color:var(--eduq-blue);margin-bottom:var(--space-2)}.view-as-user__stat-label{font-size:var(--text-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.view-as-user__topic-list{display:flex;flex-direction:column;gap:var(--space-4)}.view-as-user__topic-list h3{font-size:var(--text-lg);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-2)}.view-as-user__topic-item{padding:var(--space-4);border:1px solid var(--border-light);border-radius:var(--space-1);background-color:#fff}.view-as-user__topic-name{font-weight:600;color:var(--text-primary);margin-bottom:var(--space-2)}.view-as-user__topic-progress{height:var(--space-2);background-color:var(--bg-secondary);border-radius:var(--space-1);overflow:hidden;margin-bottom:var(--space-2)}.view-as-user__topic-progress-bar{height:100%;background:linear-gradient(90deg,var(--eduq-blue),var(--eduq-cyan));transition:width .3s ease}.view-as-user__topic-meta{font-size:var(--text-sm);color:var(--text-secondary)}.view-as-user__uploads-list{display:flex;flex-direction:column;gap:var(--space-4)}.view-as-user__upload-item{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--border-light);border-radius:var(--space-2);background-color:var(--bg-secondary)}.view-as-user__upload-icon{font-size:var(--text-3xl)}.view-as-user__upload-info{flex:1}.view-as-user__upload-name{font-weight:600;color:var(--text-primary);margin-bottom:var(--space-1)}.view-as-user__upload-meta{font-size:var(--text-sm);color:var(--text-secondary)}.view-as-user__upload-view{padding:var(--space-2) var(--space-4);background-color:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:var(--space-1);color:var(--text-secondary);cursor:not-allowed;font-size:var(--text-sm)}.view-as-user__error{max-width:600px;margin:var(--space-16) auto;padding:var(--space-8);text-align:center;background-color:#fff;border-radius:var(--space-2);box-shadow:0 2px 8px #0000001a}.view-as-user__error h2{color:#dc3545;margin-bottom:var(--space-4)}.view-as-user__error p{color:var(--text-secondary);margin-bottom:var(--space-6)}.view-as-user__button{padding:var(--space-2) var(--space-6);background-color:var(--eduq-blue);color:#fff;border:none;border-radius:var(--space-1);font-weight:600;cursor:pointer;transition:all .2s}.view-as-user__button:hover{background-color:var(--eduq-blue-dark);transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}@media (max-width: 768px){.view-as-user__banner-content{flex-direction:column;text-align:center}.view-as-user__tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.view-as-user__definition-list{grid-template-columns:1fr;gap:var(--space-2)}.view-as-user__definition-term{font-weight:700}.view-as-user__mastery-stats{grid-template-columns:repeat(2,1fr)}.view-as-user__upload-item{flex-direction:column;text-align:center}}.content-management{padding:2rem;max-width:1400px;margin:0 auto}.content-management__header{margin-bottom:2rem}.content-management__title{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin-bottom:.5rem}.content-management__description{font-size:1rem;color:var(--color-text-secondary)}.content-management__library-selector{display:flex;gap:1rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--color-border)}.content-management__library-button{padding:.75rem 1.5rem;background-color:#fff;border:2px solid var(--color-border);border-radius:8px;color:var(--color-text-secondary);font-weight:600;cursor:pointer;transition:all .2s}.content-management__library-button:hover{border-color:var(--eduq-blue);color:var(--eduq-blue)}.content-management__library-button--active{background-color:var(--eduq-blue);border-color:var(--eduq-blue);color:#fff}.content-management__actions{display:flex;gap:1rem;margin-bottom:2rem}.content-management__upload-button{padding:.75rem 1.5rem;background-color:var(--eduq-blue);color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.content-management__upload-button:hover{background-color:var(--eduq-blue-hover);transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.content-management__refresh-button{padding:.75rem 1.5rem;background-color:#fff;color:var(--color-text-primary);border:2px solid var(--color-border);border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.content-management__refresh-button:hover:not(:disabled){border-color:var(--eduq-blue);color:var(--eduq-blue)}.content-management__refresh-button:disabled{opacity:.5;cursor:not-allowed}.content-management__content{background-color:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.content-management__error{padding:1rem;background-color:#fee;border:1px solid #fcc;border-radius:6px;color:#c33;margin-bottom:1rem}.content-management__empty{text-align:center;padding:3rem;color:var(--color-text-secondary)}.content-management__file-name{display:flex;align-items:center;gap:.5rem}.content-management__file-icon{font-size:1.25rem}.content-management__action-button{padding:.5rem 1rem;background-color:var(--eduq-cyan);color:#fff;border:none;border-radius:4px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.content-management__action-button:hover{background-color:var(--eduq-cyan-hover);transform:translateY(-1px)}.content-management__upload-modal{display:flex;flex-direction:column;gap:1.5rem}.content-management__upload-info{padding:1rem;background-color:#e3f2fd;border-radius:6px;color:#1565c0}.content-management__upload-info p{margin:0;font-size:.875rem}.content-management__file-input{position:relative}.content-management__file-input input[type=file]{position:absolute;opacity:0;width:0;height:0}.content-management__file-label{display:block;padding:.75rem 1rem;background-color:#fff;border:2px dashed var(--color-border);border-radius:6px;text-align:center;color:var(--color-text-secondary);cursor:pointer;transition:all .2s}.content-management__file-label:hover{border-color:var(--eduq-blue);color:var(--eduq-blue)}.content-management__upload-error{padding:.75rem;background-color:#fee;border:1px solid #fcc;border-radius:6px;color:#c33;font-size:.875rem}.content-management__progress{display:flex;align-items:center;gap:1rem}.content-management__progress-bar{flex:1;height:8px;background-color:var(--color-background);border-radius:4px;overflow:hidden}.content-management__progress-fill{height:100%;background:linear-gradient(90deg,var(--eduq-blue),var(--eduq-cyan));transition:width .3s ease}.content-management__progress-text{font-size:.875rem;font-weight:600;color:var(--color-text-secondary);min-width:3rem;text-align:right}.content-management__modal-actions{display:flex;justify-content:flex-end;gap:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.content-management__cancel-button{padding:.75rem 1.5rem;background-color:#fff;color:var(--color-text-primary);border:2px solid var(--color-border);border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.content-management__cancel-button:hover:not(:disabled){border-color:var(--color-text-secondary)}.content-management__cancel-button:disabled{opacity:.5;cursor:not-allowed}.content-management__submit-button{padding:.75rem 1.5rem;background-color:var(--eduq-blue);color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.content-management__submit-button:hover:not(:disabled){background-color:var(--eduq-blue-hover);transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.content-management__submit-button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.content-management{padding:1rem}.content-management__library-selector{flex-direction:column}.content-management__library-button{width:100%}.content-management__actions{flex-direction:column}.content-management__upload-button,.content-management__refresh-button{width:100%}.content-management__modal-actions{flex-direction:column}.content-management__cancel-button,.content-management__submit-button{width:100%}}.feature-flags{padding:var(--space-8);max-width:1400px;margin:0 auto}.feature-flags__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-8)}.feature-flags__header h1{font-size:var(--text-3xl);font-weight:600;color:var(--text-primary);margin:0}.feature-flags__create-btn{background:var(--eduq-blue);color:#fff;border:none;padding:var(--space-2) var(--space-6);border-radius:var(--space-2);font-size:var(--text-base);font-weight:500;cursor:pointer;transition:background .2s}.feature-flags__create-btn:hover{background:var(--eduq-blue-dark)}.feature-flags__alert{padding:var(--space-4);border-radius:var(--space-2);margin-bottom:var(--space-6);font-size:.95rem}.feature-flags__alert--error{background:#ef44441a;color:var(--error);border:1px solid rgba(239,68,68,.2)}.feature-flags__alert--success{background:#10b9811a;color:var(--success);border:1px solid rgba(16,185,129,.2)}.feature-flags__controls{margin-bottom:var(--space-8)}.feature-flags__list{display:grid;gap:var(--space-6)}.feature-flags__empty{text-align:center;padding:var(--space-12);color:var(--text-secondary);font-size:1.1rem}.feature-flag-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--space-3);padding:var(--space-6);transition:box-shadow .2s}.feature-flag-card:hover{box-shadow:0 4px 12px #00000014}.feature-flag-card__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4)}.feature-flag-card__title{flex:1}.feature-flag-card__title h3{font-size:var(--text-xl);font-weight:600;color:var(--text-primary);margin:0 0 var(--space-1) 0}.feature-flag-card__id{font-size:.85rem;color:var(--text-secondary);font-family:Courier New,monospace}.feature-flag-card__status{margin-left:var(--space-4)}.feature-flag-card__description{color:var(--text-secondary);margin:0 0 var(--space-4) 0;line-height:1.5}.feature-flag-card__details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin-bottom:var(--space-4);padding:var(--space-4);background:var(--bg-secondary);border-radius:var(--space-2)}.feature-flag-card__detail{display:flex;flex-direction:column;gap:var(--space-1)}.feature-flag-card__label{font-size:.85rem;color:var(--text-secondary);font-weight:500}.feature-flag-card__value{font-size:.95rem;color:var(--text-primary)}.feature-flag-card__variants{margin-bottom:var(--space-4);padding:var(--space-4);background:var(--bg-secondary);border-radius:var(--space-2)}.feature-flag-card__variants h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 var(--space-2) 0}.feature-flag-card__variants-list{display:flex;flex-wrap:wrap;gap:var(--space-2)}.variant-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2);background:#fff;border:1px solid var(--border-color);border-radius:var(--space-1);font-size:.9rem}.variant-item__name{color:var(--text-primary);font-weight:500}.variant-item__weight{color:var(--text-secondary);font-size:.85rem}.variant-item__remove{background:none;border:none;color:var(--error-color);cursor:pointer;padding:var(--space-1) var(--space-2);font-size:.85rem}.variant-item__remove:hover{text-decoration:underline}.feature-flag-card__actions{display:flex;gap:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--border-color)}.feature-flag-card__toggle{padding:var(--space-2) var(--space-4);border:1px solid var(--border-color);background:#fff;color:var(--text-primary);border-radius:var(--space-1);font-size:.9rem;cursor:pointer;transition:all .2s}.feature-flag-card__toggle:hover{background:var(--bg-secondary)}.feature-flag-card__toggle--enabled{background:var(--success-color);color:#fff;border-color:var(--success-color)}.feature-flag-card__toggle--enabled:hover{background:var(--success-color-dark)}.feature-flag-card__edit{padding:var(--space-2) var(--space-4);border:1px solid var(--eduq-blue);background:#fff;color:var(--eduq-blue);border-radius:var(--space-1);font-size:.9rem;cursor:pointer;transition:all .2s}.feature-flag-card__edit:hover{background:var(--eduq-blue);color:#fff}.feature-flag-card__delete{padding:var(--space-2) var(--space-4);border:1px solid var(--error-color);background:#fff;color:var(--error-color);border-radius:var(--space-1);font-size:.9rem;cursor:pointer;transition:all .2s;margin-left:auto}.feature-flag-card__delete:hover{background:var(--error-color);color:#fff}.flag-form{display:flex;flex-direction:column;gap:var(--space-6)}.flag-form__error{padding:var(--space-2);background:#ef44441a;color:var(--error);border:1px solid rgba(239,68,68,.2);border-radius:var(--space-1);font-size:.9rem}.flag-form__field{display:flex;flex-direction:column;gap:var(--space-2)}.flag-form__field label{font-size:.95rem;font-weight:500;color:var(--text-primary)}.flag-form__field input[type=text],.flag-form__field input[type=number],.flag-form__field textarea,.flag-form__field select{padding:var(--space-2);border:1px solid var(--border-color);border-radius:var(--space-1);font-size:.95rem;font-family:inherit}.flag-form__field input[type=text]:focus,.flag-form__field input[type=number]:focus,.flag-form__field textarea:focus,.flag-form__field select:focus{outline:none;border-color:var(--eduq-blue)}.flag-form__field input[type=text]:disabled{background:var(--bg-secondary);color:var(--text-secondary);cursor:not-allowed}.flag-form__field input[type=checkbox]{width:18px;height:18px;cursor:pointer}.flag-form__section{padding:var(--space-4);background:var(--bg-secondary);border-radius:var(--space-2)}.flag-form__section h4{font-size:var(--text-base);font-weight:600;color:var(--text-primary);margin:0 0 var(--space-4) 0}.flag-form__variants-list{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.flag-form__variant-input{display:grid;grid-template-columns:1fr 1fr 100px auto;gap:var(--space-2)}.flag-form__variant-input input{padding:var(--space-2);border:1px solid var(--border-color);border-radius:var(--space-1);font-size:.9rem}.flag-form__variant-input button{padding:var(--space-2) var(--space-4);background:var(--eduq-blue);color:#fff;border:none;border-radius:var(--space-1);font-size:.9rem;cursor:pointer;white-space:nowrap}.flag-form__variant-input button:hover{background:var(--eduq-blue-dark)}.flag-form__actions{display:flex;justify-content:flex-end;gap:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border-color)}.flag-form__cancel{padding:var(--space-2) var(--space-6);border:1px solid var(--border-color);background:#fff;color:var(--text-primary);border-radius:var(--space-1);font-size:.95rem;cursor:pointer}.flag-form__cancel:hover{background:var(--bg-secondary)}.flag-form__submit{padding:var(--space-2) var(--space-6);background:var(--eduq-blue);color:#fff;border:none;border-radius:var(--space-1);font-size:.95rem;font-weight:500;cursor:pointer}.flag-form__submit:hover{background:var(--eduq-blue-dark)}@media (max-width: 768px){.feature-flags{padding:var(--space-4)}.feature-flags__header{flex-direction:column;align-items:flex-start;gap:var(--space-4)}.feature-flag-card__header{flex-direction:column;gap:var(--space-4)}.feature-flag-card__status{margin-left:0}.feature-flag-card__details{grid-template-columns:1fr}.feature-flag-card__actions{flex-wrap:wrap}.flag-form__variant-input{grid-template-columns:1fr}}.monitoring{padding:2rem;max-width:1600px;margin:0 auto}.monitoring__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.monitoring__header h1{font-size:2rem;font-weight:600;color:var(--text-primary);margin:0}.monitoring__controls{display:flex;align-items:center;gap:1rem}.monitoring__refresh-control{display:flex;align-items:center;gap:.5rem}.monitoring__refresh-control label{display:flex;align-items:center;gap:.5rem;font-size:.95rem;color:var(--text-primary);cursor:pointer}.monitoring__refresh-control input[type=checkbox]{width:18px;height:18px;cursor:pointer}.monitoring__interval-select{padding:.5rem;border:1px solid var(--border-color);border-radius:6px;font-size:.9rem;background:#fff;cursor:pointer}.monitoring__refresh-btn{padding:.5rem 1rem;background:var(--eduq-blue);color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s}.monitoring__refresh-btn:hover:not(:disabled){background:var(--eduq-blue-dark)}.monitoring__refresh-btn:disabled{opacity:.6;cursor:not-allowed}.monitoring__last-updated{font-size:.85rem;color:var(--text-secondary);margin-bottom:1rem}.monitoring__alert{padding:1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.95rem}.monitoring__alert--error{background:#fee;color:#c33;border:1px solid #fcc}.monitoring__alert--warning{background:#fff3cd;color:#856404;border:1px solid #ffeaa7}.monitoring__alerts{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.monitoring__section{margin-bottom:3rem}.monitoring__section h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0 0 1.5rem}.monitoring__section h3{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.monitoring__empty{text-align:center;padding:2rem;color:var(--text-secondary);font-size:1rem}.monitoring__metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.metric-card{background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;display:flex;align-items:center;gap:1rem;transition:box-shadow .2s}.metric-card:hover{box-shadow:0 4px 12px #00000014}.metric-card--alert{border-color:#ffc107;background:#fff9e6}.metric-card__icon{font-size:2.5rem;line-height:1}.metric-card__content{flex:1}.metric-card__title{font-size:.85rem;color:var(--text-secondary);margin-bottom:.5rem;font-weight:500}.metric-card__value{font-size:2rem;font-weight:700;color:var(--text-primary);line-height:1}.metric-card__unit{font-size:.9rem;font-weight:400;color:var(--text-secondary);margin-left:.25rem}.metric-card__trend{font-size:.85rem;margin-top:.5rem;font-weight:500}.metric-card__trend--positive{color:#28a745}.metric-card__trend--negative{color:#dc3545}.metric-card__trend--neutral{color:var(--text-secondary)}.monitoring__lambda-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.lambda-card{background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;transition:box-shadow .2s}.lambda-card:hover{box-shadow:0 4px 12px #00000014}.lambda-card--alert{border-color:#dc3545;background:#fff5f5}.lambda-card__name{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem;word-break:break-word}.lambda-card__metrics{display:flex;flex-direction:column;gap:.75rem}.lambda-card__metric{display:flex;justify-content:space-between;align-items:center;padding:.5rem;background:var(--bg-secondary);border-radius:6px}.lambda-card__label{font-size:.9rem;color:var(--text-secondary);font-weight:500}.lambda-card__value{font-size:.95rem;color:var(--text-primary);font-weight:600}.lambda-card__value--alert{color:#dc3545}.monitoring__dynamodb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.dynamodb-card{background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;transition:box-shadow .2s}.dynamodb-card:hover{box-shadow:0 4px 12px #00000014}.dynamodb-card--alert{border-color:#ffc107;background:#fff9e6}.dynamodb-card__name{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem;word-break:break-word}.dynamodb-card__metrics,.dynamodb-card__capacity{display:flex;flex-direction:column;gap:1rem}.dynamodb-card__capacity-item{display:flex;flex-direction:column;gap:.5rem}.dynamodb-card__label{font-size:.9rem;color:var(--text-secondary);font-weight:500}.dynamodb-card__progress{width:100%;height:8px;background:var(--bg-secondary);border-radius:4px;overflow:hidden}.dynamodb-card__progress-bar{height:100%;background:linear-gradient(90deg,var(--eduq-cyan),var(--eduq-blue));transition:width .3s ease}.dynamodb-card__value{font-size:.9rem;color:var(--text-primary);font-weight:600}.dynamodb-card__alert{padding:.75rem;background:#fff3cd;color:#856404;border:1px solid #ffeaa7;border-radius:6px;font-size:.85rem;font-weight:500}.monitoring__charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem}.monitoring__chart{background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;height:350px}.monitoring__chart h3{margin-bottom:1rem}.monitoring__thresholds{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:1.5rem}.monitoring__threshold-item{display:flex;flex-direction:column;gap:.5rem}.monitoring__threshold-item label{font-size:.9rem;color:var(--text-secondary);font-weight:500}.monitoring__threshold-item input{padding:.5rem;border:1px solid var(--border-color);border-radius:6px;font-size:.95rem;font-family:inherit}.monitoring__threshold-item input:focus{outline:none;border-color:var(--eduq-blue)}@media (max-width: 1200px){.monitoring__charts{grid-template-columns:1fr}}@media (max-width: 768px){.monitoring{padding:1rem}.monitoring__header{flex-direction:column;align-items:flex-start;gap:1rem}.monitoring__controls{width:100%;flex-direction:column;align-items:stretch}.monitoring__refresh-control{justify-content:space-between}.monitoring__metrics-grid,.monitoring__lambda-grid,.monitoring__dynamodb-grid,.monitoring__charts{grid-template-columns:1fr}.monitoring__chart{height:300px}.monitoring__thresholds{grid-template-columns:1fr}}.notifications{padding:2rem;max-width:1400px;margin:0 auto}.notifications__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.notifications__title{font-size:2rem;font-weight:600;color:var(--text-primary);margin:0}.notifications__compose-btn{padding:.75rem 1.5rem;background:var(--eduq-blue);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s}.notifications__compose-btn:hover{background:var(--eduq-blue-dark)}.notifications__alert{padding:1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.95rem}.notifications__alert--error{background:#fee;color:#c33;border:1px solid #fcc}.notifications__alert--success{background:#efe;color:#3a3;border:1px solid #cfc}.notifications__history{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.notifications__section-title{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0 0 1.5rem}.notifications__empty{text-align:center;padding:3rem;color:var(--text-secondary);font-size:1rem}.notifications__list{display:flex;flex-direction:column;gap:1.5rem}.notifications__item{border:1px solid var(--border-color);border-radius:8px;padding:1.5rem;transition:box-shadow .2s}.notifications__item:hover{box-shadow:0 4px 12px #0000001a}.notifications__item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.notifications__item-title{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0;flex:1}.notifications__item-date{font-size:.875rem;color:var(--text-secondary);white-space:nowrap;margin-left:1rem}.notifications__item-content{color:var(--text-primary);line-height:1.6;margin:0 0 1rem}.notifications__item-meta{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);margin-bottom:1rem}.notifications__item-target{font-size:.9rem;color:var(--text-secondary)}.notifications__item-stats{display:flex;gap:1.5rem}.notifications__stat{font-size:.9rem;color:var(--text-secondary)}.notifications__stat strong{color:var(--text-primary);margin-right:.25rem}.notifications__item-footer{display:flex;justify-content:flex-end}.notifications__item-sender{font-size:.875rem;color:var(--text-secondary)}.notifications__form{display:flex;flex-direction:column;gap:1.5rem}.notifications__form-group{display:flex;flex-direction:column;gap:.5rem}.notifications__label{font-size:.95rem;font-weight:500;color:var(--text-primary)}.notifications__input,.notifications__textarea,.notifications__select{padding:.75rem;border:1px solid var(--border-color);border-radius:6px;font-size:1rem;font-family:inherit;transition:border-color .2s}.notifications__input:focus,.notifications__textarea:focus,.notifications__select:focus{outline:none;border-color:var(--eduq-blue)}.notifications__textarea{resize:vertical;min-height:120px}.notifications__form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem}.notifications__btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.notifications__btn:disabled{opacity:.6;cursor:not-allowed}.notifications__btn--primary{background:var(--eduq-blue);color:#fff}.notifications__btn--primary:hover:not(:disabled){background:var(--eduq-blue-dark)}.notifications__btn--secondary{background:var(--bg-secondary);color:var(--text-primary)}.notifications__btn--secondary:hover:not(:disabled){background:var(--border-color)}@media (max-width: 768px){.notifications{padding:1rem}.notifications__header{flex-direction:column;align-items:flex-start;gap:1rem}.notifications__compose-btn{width:100%}.notifications__item-header{flex-direction:column;gap:.5rem}.notifications__item-date{margin-left:0}.notifications__item-meta{flex-direction:column;align-items:flex-start;gap:1rem}.notifications__item-stats{flex-direction:column;gap:.5rem}}.data-export{padding:2rem;max-width:1400px;margin:0 auto}.data-export__header{margin-bottom:2rem}.data-export__title{font-size:2rem;font-weight:600;color:var(--text-primary);margin:0}.data-export__alert{padding:1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.95rem}.data-export__alert--error{background:#fee;color:#c33;border:1px solid #fcc}.data-export__alert--success{background:#efe;color:#3a3;border:1px solid #cfc}.data-export__active-job{background:#e3f2fd;border:1px solid #90caf9;border-radius:8px;padding:1.5rem;margin-bottom:2rem}.data-export__active-job h3{margin:0 0 1rem;color:var(--text-primary)}.data-export__active-job p{margin:.5rem 0;color:var(--text-secondary)}.data-export__progress{width:100%;height:8px;background:#ddd;border-radius:4px;overflow:hidden;margin:1rem 0}.data-export__progress-bar{height:100%;background:var(--eduq-blue);animation:progress-animation 2s ease-in-out infinite}@keyframes progress-animation{0%{width:0%}50%{width:70%}to{width:100%}}.data-export__progress-text{font-size:.9rem;color:var(--text-secondary);font-style:italic}.data-export__content{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.data-export__form-section,.data-export__history-section{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.data-export__section-title{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0 0 1.5rem}.data-export__form{display:flex;flex-direction:column;gap:1.5rem}.data-export__form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.data-export__form-group{display:flex;flex-direction:column;gap:.5rem}.data-export__label{font-size:.95rem;font-weight:500;color:var(--text-primary)}.data-export__input,.data-export__select{padding:.75rem;border:1px solid var(--border-color);border-radius:6px;font-size:1rem;font-family:inherit;transition:border-color .2s}.data-export__input:focus,.data-export__select:focus{outline:none;border-color:var(--eduq-blue)}.data-export__fields-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.data-export__fields-actions{display:flex;gap:.5rem}.data-export__field-action{padding:.25rem .75rem;background:transparent;color:var(--eduq-blue);border:1px solid var(--eduq-blue);border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .2s}.data-export__field-action:hover{background:var(--eduq-blue);color:#fff}.data-export__fields{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;padding:1rem;background:var(--bg-secondary);border-radius:6px}.data-export__field-option{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.95rem;color:var(--text-primary)}.data-export__checkbox{width:18px;height:18px;cursor:pointer}.data-export__form-actions{display:flex;justify-content:flex-end;margin-top:1rem}.data-export__btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.data-export__btn:disabled{opacity:.6;cursor:not-allowed}.data-export__btn--primary{background:var(--eduq-blue);color:#fff}.data-export__btn--primary:hover:not(:disabled){background:var(--eduq-blue-dark)}.data-export__btn--download{background:var(--eduq-cyan);color:#fff;padding:.5rem 1rem;font-size:.9rem}.data-export__btn--download:hover{background:var(--eduq-cyan-dark)}.data-export__empty{text-align:center;padding:3rem;color:var(--text-secondary);font-size:1rem}.data-export__jobs{display:flex;flex-direction:column;gap:1rem}.data-export__job{border:1px solid var(--border-color);border-radius:8px;padding:1.5rem;transition:box-shadow .2s}.data-export__job:hover{box-shadow:0 4px 12px #0000001a}.data-export__job-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.data-export__job-info{flex:1}.data-export__job-title{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 .25rem}.data-export__job-date{font-size:.875rem;color:var(--text-secondary)}.data-export__job-details{display:flex;flex-wrap:wrap;gap:1rem;padding:1rem 0;border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);margin-bottom:1rem}.data-export__job-detail{font-size:.9rem;color:var(--text-secondary)}.data-export__job-detail strong{color:var(--text-primary);margin-right:.25rem}.data-export__job-actions{display:flex;justify-content:flex-end}.data-export__job-error{padding:.75rem;background:#fee;color:#c33;border-radius:6px;font-size:.9rem}@media (max-width: 1024px){.data-export__content{grid-template-columns:1fr}}@media (max-width: 768px){.data-export{padding:1rem}.data-export__form-row,.data-export__fields{grid-template-columns:1fr}.data-export__job-header,.data-export__job-details{flex-direction:column;gap:.5rem}}.abuse-detection{padding:2rem;max-width:1600px;margin:0 auto}.abuse-detection__header{margin-bottom:2rem}.abuse-detection__title{font-size:2rem;font-weight:600;color:var(--text-primary);margin:0}.abuse-detection__alert{padding:1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.95rem}.abuse-detection__alert--error{background:#fee;color:#c33;border:1px solid #fcc}.abuse-detection__alert--success{background:#efe;color:#3a3;border:1px solid #cfc}.abuse-detection__thresholds{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000001a}.abuse-detection__thresholds-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.abuse-detection__section-title{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0}.abuse-detection__threshold-actions{display:flex;gap:.75rem}.abuse-detection__threshold-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.abuse-detection__threshold-item{display:flex;flex-direction:column;gap:.5rem}.abuse-detection__threshold-label{font-size:.9rem;font-weight:500;color:var(--text-secondary)}.abuse-detection__threshold-value{font-size:1.5rem;font-weight:600;color:var(--text-primary)}.abuse-detection__threshold-input{padding:.75rem;border:1px solid var(--border-color);border-radius:6px;font-size:1.25rem;font-weight:600;transition:border-color .2s}.abuse-detection__threshold-input:focus{outline:none;border-color:var(--eduq-blue)}.abuse-detection__flagged{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.abuse-detection__empty{text-align:center;padding:3rem;color:var(--text-secondary);font-size:1rem}.abuse-detection__violation{color:#d32f2f;font-weight:600}.abuse-detection__actions{display:flex;gap:.5rem}.abuse-detection__action-btn{padding:.4rem .75rem;border:none;border-radius:4px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.abuse-detection__action-btn--warning{background:#fff3cd;color:#856404}.abuse-detection__action-btn--warning:hover{background:#ffc107;color:#fff}.abuse-detection__action-btn--temp-ban{background:#ffe0b2;color:#e65100}.abuse-detection__action-btn--temp-ban:hover{background:#ff9800;color:#fff}.abuse-detection__action-btn--perm-ban{background:#ffcdd2;color:#c62828}.abuse-detection__action-btn--perm-ban:hover{background:#f44336;color:#fff}.abuse-detection__btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.abuse-detection__btn:disabled{opacity:.6;cursor:not-allowed}.abuse-detection__btn--primary{background:var(--eduq-blue);color:#fff}.abuse-detection__btn--primary:hover:not(:disabled){background:var(--eduq-blue-dark)}.abuse-detection__btn--secondary{background:var(--bg-secondary);color:var(--text-primary)}.abuse-detection__btn--secondary:hover:not(:disabled){background:var(--border-color)}.abuse-detection__btn--danger{background:#f44336;color:#fff}.abuse-detection__btn--danger:hover:not(:disabled){background:#d32f2f}.abuse-detection__action-form{display:flex;flex-direction:column;gap:1.5rem}.abuse-detection__user-info{padding:1rem;background:var(--bg-secondary);border-radius:6px}.abuse-detection__user-info p{margin:.5rem 0;font-size:.95rem;color:var(--text-primary)}.abuse-detection__form-group{display:flex;flex-direction:column;gap:.5rem}.abuse-detection__label{font-size:.95rem;font-weight:500;color:var(--text-primary)}.abuse-detection__textarea{padding:.75rem;border:1px solid var(--border-color);border-radius:6px;font-size:1rem;font-family:inherit;resize:vertical;min-height:100px;transition:border-color .2s}.abuse-detection__textarea:focus{outline:none;border-color:var(--eduq-blue)}.abuse-detection__form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem}@media (max-width: 1200px){.abuse-detection__threshold-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.abuse-detection{padding:1rem}.abuse-detection__thresholds-header{flex-direction:column;align-items:flex-start;gap:1rem}.abuse-detection__threshold-grid{grid-template-columns:1fr}.abuse-detection__actions{flex-direction:column}.abuse-detection__action-btn{width:100%}}.ai-config{padding:var(--space-6);max-width:1200px}.ai-config__header{margin-bottom:var(--space-8)}.ai-config__title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);margin-bottom:var(--space-2)}.ai-config__description{font-size:var(--text-base);color:var(--text-secondary)}.ai-config__grid{display:grid;grid-template-columns:1fr;gap:var(--space-6)}@media (min-width: 1024px){.ai-config__grid{grid-template-columns:1fr 1fr}}.ai-config__section{background-color:var(--bg-primary, #FFFFFF);border-radius:.75rem;box-shadow:0 1px 3px #0000001a;padding:var(--space-6)}.ai-config__section-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-4)}.ai-config__current{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-4)}.ai-config__current strong{color:var(--eduq-blue, #0066FF);font-weight:var(--font-semibold)}.ai-config__select{width:100%;padding:.75rem 1rem;border:1px solid var(--border-medium, #D1D5DB);border-radius:.5rem;font-size:var(--text-base);background-color:var(--bg-primary, #FFFFFF);color:var(--text-primary);margin-bottom:var(--space-4);transition:border-color .2s ease}.ai-config__select:focus{outline:none;border-color:var(--eduq-blue, #0066FF);box-shadow:0 0 0 3px #0066ff1a}.ai-config__info{display:flex;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap}.ai-config__badge{display:inline-block;padding:.25rem .75rem;border-radius:.375rem;font-size:var(--text-sm);font-weight:var(--font-medium)}.ai-config__badge--tier{background-color:var(--eduq-blue, #0066FF);color:#fff}.ai-config__badge--cost{background-color:var(--bg-secondary, #F9FAFB);color:var(--text-secondary);border:1px solid var(--border-light, #E5E7EB)}.ai-config__actions{display:flex;gap:var(--space-3)}.ai-config__save-button,.ai-config__reset-button{padding:.625rem 1.25rem;border-radius:.5rem;font-size:var(--text-sm);font-weight:var(--font-semibold);transition:all .2s ease;cursor:pointer;border:none}.ai-config__save-button{background-color:var(--eduq-blue, #0066FF);color:#fff}.ai-config__save-button:hover:not(:disabled){background-color:var(--eduq-blue-hover, #0052CC)}.ai-config__save-button:disabled{opacity:.5;cursor:not-allowed}.ai-config__reset-button{background-color:var(--bg-secondary, #F9FAFB);color:var(--text-primary);border:1px solid var(--border-medium, #D1D5DB)}.ai-config__reset-button:hover{background-color:var(--bg-tertiary, #F3F4F6)}.ai-config__toast{margin-top:var(--space-4);padding:.75rem 1rem;background-color:var(--success, #10B981);color:#fff;border-radius:.5rem;font-size:var(--text-sm);animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.ai-config__empty{padding:var(--space-6);text-align:center;color:var(--text-secondary);background-color:var(--bg-secondary, #F9FAFB);border-radius:.5rem;margin-bottom:var(--space-4)}.ai-config__table{width:100%;border-collapse:collapse;margin-bottom:var(--space-4)}.ai-config__table thead{background-color:var(--bg-secondary, #F9FAFB)}.ai-config__table th{padding:.75rem 1rem;text-align:left;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary);border-bottom:2px solid var(--border-medium, #D1D5DB)}.ai-config__table td{padding:.75rem 1rem;font-size:var(--text-sm);color:var(--text-primary);border-bottom:1px solid var(--border-light, #E5E7EB)}.ai-config__key-value{font-family:var(--font-mono, "Courier New", monospace);font-size:var(--text-xs);color:var(--text-secondary)}.ai-config__row-actions{display:flex;gap:var(--space-2)}.ai-config__icon-button{padding:.25rem .5rem;border:1px solid var(--border-medium, #D1D5DB);border-radius:.375rem;background-color:var(--bg-primary, #FFFFFF);color:var(--text-primary);font-size:var(--text-sm);cursor:pointer;transition:all .2s ease}.ai-config__icon-button:hover:not(:disabled){background-color:var(--bg-secondary, #F9FAFB);border-color:var(--eduq-blue, #0066FF)}.ai-config__icon-button:disabled{opacity:.3;cursor:not-allowed}.ai-config__icon-button--delete{color:var(--error, #EF4444)}.ai-config__icon-button--delete:hover:not(:disabled){background-color:#fee2e2;border-color:var(--error, #EF4444)}.ai-config__form{padding:var(--space-4);background-color:var(--bg-secondary, #F9FAFB);border-radius:.5rem;margin-bottom:var(--space-4)}.ai-config__form-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-4)}.ai-config__form-group{margin-bottom:var(--space-4)}.ai-config__form-label{display:block;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);margin-bottom:var(--space-2)}.ai-config__form-input{width:100%;padding:.625rem .875rem;border:1px solid var(--border-medium, #D1D5DB);border-radius:.5rem;font-size:var(--text-sm);background-color:var(--bg-primary, #FFFFFF);color:var(--text-primary);transition:border-color .2s ease}.ai-config__form-input:focus{outline:none;border-color:var(--eduq-blue, #0066FF);box-shadow:0 0 0 3px #0066ff1a}.ai-config__form-actions{display:flex;gap:var(--space-3)}.ai-config__form-save,.ai-config__form-cancel{padding:.625rem 1.25rem;border-radius:.5rem;font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all .2s ease;border:none}.ai-config__form-save{background-color:var(--eduq-blue, #0066FF);color:#fff}.ai-config__form-save:hover:not(:disabled){background-color:var(--eduq-blue-hover, #0052CC)}.ai-config__form-save:disabled{opacity:.5;cursor:not-allowed}.ai-config__form-cancel{background-color:var(--bg-primary, #FFFFFF);color:var(--text-primary);border:1px solid var(--border-medium, #D1D5DB)}.ai-config__form-cancel:hover{background-color:var(--bg-secondary, #F9FAFB)}.ai-config__add-button{width:100%;padding:.75rem 1rem;border:2px dashed var(--border-medium, #D1D5DB);border-radius:.5rem;background-color:transparent;color:var(--eduq-blue, #0066FF);font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all .2s ease;margin-bottom:var(--space-4)}.ai-config__add-button:hover{background-color:var(--bg-secondary, #F9FAFB);border-color:var(--eduq-blue, #0066FF)}.ai-config__note{font-size:var(--text-xs);color:var(--text-secondary);line-height:var(--leading-relaxed)}.ai-config__test-button{width:100%;padding:.75rem 1rem;border:none;border-radius:.5rem;background-color:var(--eduq-blue, #0066FF);color:#fff;font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all .2s ease;margin-bottom:var(--space-4)}.ai-config__test-button:hover:not(:disabled){background-color:var(--eduq-blue-hover, #0052CC)}.ai-config__test-button:disabled{opacity:.6;cursor:not-allowed}.ai-config__health-result{padding:var(--space-4);border-radius:.5rem;font-size:var(--text-sm);line-height:var(--leading-relaxed)}.ai-config__health-ok{background-color:#ecfdf5;border:1px solid #A7F3D0;color:var(--success, #10B981)}.ai-config__health-ok:before{content:"✅ "}.ai-config__health-error{background-color:#fef2f2;border:1px solid #FECACA;color:var(--error, #EF4444)}.ai-config__health-error:before{content:"❌ "}.ai-config__health-meta{font-size:var(--text-xs);color:var(--text-secondary);margin-top:var(--space-2)}.ai-config__spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-right:var(--space-2);vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.ai-config{padding:var(--space-4)}.ai-config__actions{flex-direction:column}.ai-config__save-button,.ai-config__reset-button{width:100%}.ai-config__table{font-size:var(--text-xs)}.ai-config__table th,.ai-config__table td{padding:.5rem}}.doc-mgmt{padding:var(--space-6);max-width:1400px;margin:0 auto}.doc-mgmt__header{margin-bottom:var(--space-6)}.doc-mgmt__title{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary);margin:0 0 var(--space-2) 0}.doc-mgmt__description{font-size:var(--text-base);color:var(--text-secondary);margin:0}.doc-mgmt__controls{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-6);padding:var(--space-5);background-color:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg)}.doc-mgmt__search{width:100%}.doc-mgmt__search-input{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:var(--text-base);color:var(--text-primary);background-color:var(--bg-primary);transition:border-color var(--transition-base);box-sizing:border-box}.doc-mgmt__search-input::placeholder{color:var(--text-tertiary)}.doc-mgmt__search-input:focus{outline:none;border-color:var(--eduq-blue);box-shadow:0 0 0 3px #0066ff1a}.doc-mgmt__filters{display:flex;flex-direction:column;gap:var(--space-3)}.doc-mgmt__filter-select{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-primary);background-color:var(--bg-primary);cursor:pointer;transition:border-color var(--transition-base);box-sizing:border-box}.doc-mgmt__filter-select:focus{outline:none;border-color:var(--eduq-blue);box-shadow:0 0 0 3px #0066ff1a}.doc-mgmt__actions{display:flex;gap:var(--space-3)}.doc-mgmt__search-btn{padding:var(--space-3) var(--space-6);background-color:var(--eduq-blue);color:var(--text-inverse);border:none;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:background-color var(--transition-base)}.doc-mgmt__search-btn:hover:not(:disabled){background-color:var(--eduq-blue-hover)}.doc-mgmt__search-btn:disabled{opacity:.5;cursor:not-allowed}.doc-mgmt__clear-btn{padding:var(--space-3) var(--space-6);background-color:transparent;color:var(--eduq-blue);border:2px solid var(--eduq-blue);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-base)}.doc-mgmt__clear-btn:hover{background-color:var(--eduq-blue);color:var(--text-inverse)}.doc-mgmt__error{padding:var(--space-4);background-color:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-md);color:var(--error);margin-bottom:var(--space-4);font-size:var(--text-sm)}.doc-mgmt__results{min-height:200px}.doc-mgmt__loading{text-align:center;padding:var(--space-12);color:var(--text-secondary);font-size:var(--text-base)}.doc-mgmt__list{display:grid;grid-template-columns:1fr;gap:var(--space-4)}.doc-mgmt__card{background-color:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-md);cursor:pointer;transition:box-shadow var(--transition-base),transform var(--transition-base)}.doc-mgmt__card:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.doc-mgmt__card:focus{outline:2px solid var(--eduq-blue);outline-offset:2px}.doc-mgmt__card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3)}.doc-mgmt__card-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.doc-mgmt__card-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.doc-mgmt__card-footer{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-sm);color:var(--text-secondary);padding-top:var(--space-3);border-top:1px solid var(--border-light)}.doc-mgmt__card-user{font-size:var(--text-sm);color:var(--text-secondary)}.doc-mgmt__card-user-id{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-primary)}.doc-mgmt__card-date{font-size:var(--text-xs);color:var(--text-tertiary)}.doc-mgmt__badge{display:inline-block;padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-medium);line-height:var(--leading-snug);white-space:nowrap;background-color:var(--bg-tertiary);color:var(--text-secondary)}.doc-mgmt__badge--subject{background-color:#3b82f61a;color:#1e40af}.doc-mgmt__badge--type{background-color:var(--bg-tertiary);color:var(--text-secondary)}.doc-mgmt__badge--success{background-color:#10b9811a;color:#065f46}.doc-mgmt__badge--error{background-color:#ef44441a;color:#991b1b}.doc-mgmt__badge--warning{background-color:#f59e0b1a;color:#92400e}.doc-mgmt__badge--info{background-color:#3b82f61a;color:#1e40af}.doc-mgmt__badge--readonly{background-color:#6b72801a;color:var(--text-secondary);border:1px solid var(--border-light)}.doc-mgmt__pagination{padding:var(--space-6) 0;text-align:center}.doc-mgmt__load-more-btn{padding:var(--space-3) var(--space-8);background-color:var(--bg-tertiary);color:var(--text-primary);border:none;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:background-color var(--transition-base)}.doc-mgmt__load-more-btn:hover:not(:disabled){background-color:var(--border-light)}.doc-mgmt__load-more-btn:disabled{opacity:.5;cursor:not-allowed}.doc-mgmt__empty{text-align:center;padding:var(--space-12);color:var(--text-secondary);font-size:var(--text-base)}.doc-mgmt__empty-hint{font-size:var(--text-sm);color:var(--text-tertiary);margin-top:var(--space-2)}.doc-mgmt__detail{max-width:900px}.doc-mgmt__back-btn{padding:var(--space-2) var(--space-4);background:none;border:none;color:var(--eduq-blue);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;margin-bottom:var(--space-4);transition:color var(--transition-base)}.doc-mgmt__back-btn:hover{color:var(--eduq-blue-hover)}.doc-mgmt__detail-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-6);flex-wrap:wrap}.doc-mgmt__detail-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4);margin-bottom:var(--space-6);padding:var(--space-5);background-color:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg)}.doc-mgmt__detail-field{display:flex;flex-direction:column;gap:var(--space-1)}.doc-mgmt__detail-label{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.doc-mgmt__detail-value{font-size:var(--text-base);color:var(--text-primary)}.doc-mgmt__detail-value--mono{font-family:var(--font-mono);font-size:var(--text-sm)}.doc-mgmt__detail-section{padding:var(--space-5);background-color:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);margin-bottom:var(--space-4)}.doc-mgmt__detail-section-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 var(--space-3) 0}.doc-mgmt__detail-text{font-size:var(--text-base);color:var(--text-secondary);line-height:var(--leading-relaxed);margin:0}@media (min-width: 768px){.doc-mgmt__controls{flex-direction:row;flex-wrap:wrap;align-items:flex-end}.doc-mgmt__search{flex:1 1 100%}.doc-mgmt__filters{flex-direction:row;flex:1 1 auto}.doc-mgmt__filter-select{width:auto;min-width:160px}.doc-mgmt__list,.doc-mgmt__detail-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.doc-mgmt__list,.doc-mgmt__detail-grid{grid-template-columns:repeat(3,1fr)}}@media (prefers-reduced-motion: reduce){.doc-mgmt__card,.doc-mgmt__search-btn,.doc-mgmt__clear-btn,.doc-mgmt__load-more-btn,.doc-mgmt__back-btn,.doc-mgmt__search-input,.doc-mgmt__filter-select{transition:none}.doc-mgmt__card:hover{transform:none}}.tts-generator{max-width:900px;margin:0 auto}.tts-generator__header{margin-bottom:var(--space-6)}.tts-generator__title{font-size:var(--text-2xl, 1.5rem);font-weight:var(--font-semibold, 600);color:var(--text-primary, #111827);margin:0 0 var(--space-2, .5rem) 0}.tts-generator__subtitle{font-size:var(--text-base, 1rem);color:var(--text-secondary, #6B7280);margin:0}.tts-generator__content{background:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;padding:var(--space-6, 1.5rem)}.tts-generator__controls{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4, 1rem);margin-bottom:var(--space-6, 1.5rem)}.tts-generator__control{display:flex;flex-direction:column;gap:var(--space-2, .5rem)}.tts-generator__label{font-size:var(--text-sm, .875rem);font-weight:var(--font-medium, 500);color:var(--text-primary, #111827)}.tts-generator__select{width:100%;padding:.75rem 1rem;border:1px solid var(--border-medium, #D1D5DB);border-radius:.5rem;font-size:var(--text-base, 1rem);color:var(--text-primary, #111827);background-color:#fff;cursor:pointer;transition:border-color .2s ease}.tts-generator__select:hover{border-color:var(--eduq-blue, #0066FF)}.tts-generator__select:focus{outline:none;border-color:var(--eduq-blue, #0066FF);box-shadow:0 0 0 3px #0066ff1a}.tts-generator__input-section{margin-bottom:var(--space-6, 1.5rem)}.tts-generator__textarea{width:100%;min-height:200px;padding:var(--space-4, 1rem);border:1px solid var(--border-medium, #D1D5DB);border-radius:.5rem;font-size:var(--text-base, 1rem);font-family:inherit;color:var(--text-primary, #111827);resize:vertical;transition:border-color .2s ease}.tts-generator__textarea:hover{border-color:var(--eduq-blue, #0066FF)}.tts-generator__textarea:focus{outline:none;border-color:var(--eduq-blue, #0066FF);box-shadow:0 0 0 3px #0066ff1a}.tts-generator__textarea::placeholder{color:var(--text-tertiary, #9CA3AF)}.tts-generator__char-count{margin-top:var(--space-2, .5rem);font-size:var(--text-sm, .875rem);color:var(--text-secondary, #6B7280);text-align:right}.tts-generator__error{display:flex;align-items:center;gap:var(--space-2, .5rem);padding:var(--space-3, .75rem) var(--space-4, 1rem);background-color:#fef2f2;border:1px solid #FECACA;border-radius:.5rem;color:#dc2626;font-size:var(--text-sm, .875rem);margin-bottom:var(--space-6, 1.5rem)}.tts-generator__error-icon{font-size:var(--text-lg, 1.125rem)}.tts-generator__actions{display:flex;gap:var(--space-3, .75rem);margin-bottom:var(--space-6, 1.5rem)}.tts-generator__button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2, .5rem);padding:.75rem 1.5rem;border-radius:.5rem;font-size:var(--text-base, 1rem);font-weight:var(--font-semibold, 600);cursor:pointer;transition:all .2s ease;border:none}.tts-generator__button:disabled{opacity:.5;cursor:not-allowed}.tts-generator__button--primary{background-color:var(--eduq-blue, #0066FF);color:#fff}.tts-generator__button--primary:hover:not(:disabled){background-color:var(--eduq-blue-hover, #0052CC)}.tts-generator__button--secondary{background-color:var(--bg-tertiary, #F3F4F6);color:var(--text-primary, #111827);border:1px solid var(--border-medium, #D1D5DB)}.tts-generator__button--secondary:hover:not(:disabled){background-color:var(--bg-secondary, #F9FAFB)}.tts-generator__button--download{background-color:var(--eduq-cyan, #00D9B5);color:#fff}.tts-generator__button--download:hover{background-color:var(--eduq-cyan-hover, #00B89A)}.tts-generator__button-icon{font-size:var(--text-lg, 1.125rem)}.tts-generator__spinner{width:16px;height:16px;border:2px solid #FFFFFF;border-top-color:transparent;border-radius:50%;animation:tts-spin .8s linear infinite}@keyframes tts-spin{to{transform:rotate(360deg)}}.tts-generator__result{padding:var(--space-6, 1.5rem);background-color:var(--bg-secondary, #F9FAFB);border-radius:.75rem;border:1px solid var(--border-light, #E5E7EB)}.tts-generator__result-title{font-size:var(--text-lg, 1.125rem);font-weight:var(--font-semibold, 600);color:var(--text-primary, #111827);margin:0 0 var(--space-4, 1rem) 0}.tts-generator__info{display:flex;flex-wrap:wrap;gap:var(--space-4, 1rem);margin-bottom:var(--space-4, 1rem);font-size:var(--text-sm, .875rem);color:var(--text-secondary, #6B7280)}.tts-generator__info-item{display:inline-flex;gap:var(--space-1, .25rem)}.tts-generator__info-item strong{color:var(--text-primary, #111827)}.tts-generator__audio{width:100%;margin-bottom:var(--space-4, 1rem);border-radius:.5rem}@media (max-width: 768px){.tts-generator__controls{grid-template-columns:1fr}.tts-generator__actions{flex-direction:column}.tts-generator__button{width:100%}.tts-generator__info{flex-direction:column;gap:var(--space-2, .5rem)}}.user-management{padding:var(--space-6)}.user-management__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6)}.user-management__title{font-size:var(--space-6);font-weight:600;color:var(--text-primary);margin:0}.user-management__super-badge{background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff;padding:var(--space-1) var(--space-3);border-radius:var(--space-5);font-size:var(--text-xs);font-weight:500}.user-management__mock-badge{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;padding:var(--space-1) var(--space-3);border-radius:var(--space-5);font-size:var(--text-xs);font-weight:500;cursor:help}.user-management__header-badges{display:flex;gap:var(--space-2);align-items:center}.user-management__user-cell{display:flex;align-items:center;gap:var(--space-3)}.user-management__avatar{width:var(--space-10);height:var(--space-10);border-radius:50%;background:linear-gradient(135deg,var(--eduq-blue),#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:var(--text-base);flex-shrink:0}.user-management__user-info{display:flex;flex-direction:column;min-width:0}.user-management__user-name{font-weight:500;color:var(--text-primary)}.user-management__user-email{font-size:var(--text-sm);color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-management__groups{display:flex;gap:var(--space-1);flex-wrap:wrap}.user-management__group-badge{padding:2px var(--space-2);border-radius:var(--space-1);font-size:11px;background:var(--border-light);color:var(--text-primary)}.user-management__group-badge--super{background:#fae8ff;color:#86198f}.user-management__group-badge--admin{background:#0066ff26;color:#1e40af}.user-management__no-groups{color:var(--text-tertiary)}.user-management__actions{display:flex;gap:var(--space-2)}.user-management__action-btn{padding:var(--space-1) var(--space-3);border:none;border-radius:var(--space-1);font-size:var(--text-xs);font-weight:500;cursor:pointer;text-decoration:none;transition:all .2s ease}.user-management__action-btn--view{background:#0066ff14;color:var(--eduq-blue)}.user-management__action-btn--view:hover{background:#0066ff26}.user-management__pagination{padding:var(--space-4);text-align:center;border-top:1px solid var(--bg-tertiary)}.user-management__load-more{padding:10px var(--space-6);background:var(--bg-tertiary);color:var(--text-primary);border:none;border-radius:var(--space-2);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:background-color .2s ease}.user-management__load-more:hover{background:var(--border-light)}.user-management__load-more:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.user-management{padding:var(--space-4)}.user-management__header{flex-direction:column;align-items:flex-start;gap:var(--space-3)}}.sed-panel{display:flex;flex-direction:column;gap:var(--space-6)}.sed-panel__body{padding:var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.sed-panel__loading{padding:var(--space-5) var(--space-6);color:var(--text-secondary);font-size:var(--text-sm)}.sed-panel__alert{margin:var(--space-4) var(--space-6)}.sed-panel__end-date{display:flex;flex-direction:column;gap:var(--space-3)}.sed-panel__info-row{display:flex;align-items:baseline;gap:var(--space-3);flex-wrap:wrap}.sed-panel__label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--text-secondary);min-width:140px;flex-shrink:0}.sed-panel__value{font-size:var(--text-base);font-weight:500;color:var(--text-primary)}.sed-panel__date{font-size:var(--text-base);font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.sed-panel__date--warning{color:#92400e}.sed-panel__date--expired{color:var(--error)}.sed-panel__indicator{font-size:var(--text-xs);font-weight:700;padding:2px var(--space-2);border-radius:var(--space-1)}.sed-panel__indicator--warning{background:#fef3c7;color:#92400e}.sed-panel__indicator--expired{background:#fee2e2;color:#991b1b}.sed-panel__days-remaining{font-size:var(--text-sm);font-weight:400;color:var(--text-secondary)}.sed-panel__promo-days{color:var(--eduq-cyan);font-weight:600}.sed-panel__lifetime{font-size:var(--text-base);font-weight:600;color:var(--eduq-blue);padding:var(--space-2) 0}.sed-panel__inactive{font-size:var(--text-base);color:var(--text-secondary);font-style:italic}.sed-panel__child-note{font-size:var(--text-sm);color:var(--text-secondary);background:var(--bg-secondary);border-radius:var(--space-2);padding:var(--space-3) var(--space-4);border-left:3px solid var(--border-medium)}.sed-panel__family-context{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding-bottom:var(--space-3);border-bottom:1px solid var(--border-light)}.sed-panel__family-badge{font-size:var(--text-xs);font-weight:700;padding:var(--space-1) var(--space-3);border-radius:var(--space-1)}.sed-panel__family-badge--parent{background:#dbeafe;color:#1e40af}.sed-panel__family-badge--child{background:#f3e8ff;color:#6b21a8}.sed-panel__family-note{font-size:var(--text-sm);color:var(--text-secondary)}.sed-panel__mono{font-family:var(--font-mono);font-size:var(--text-xs)}.sed-panel__timeline{display:flex;flex-direction:column;gap:0;position:relative;padding-left:var(--space-6)}.sed-panel__timeline:before{content:"";position:absolute;left:7px;top:8px;bottom:8px;width:2px;background:var(--border-light)}.sed-panel__timeline-item{position:relative;padding:var(--space-3) 0 var(--space-3) var(--space-4)}.sed-panel__timeline-dot{position:absolute;left:-13px;top:14px;width:10px;height:10px;border-radius:50%;background:var(--eduq-blue);border:2px solid var(--bg-primary);box-shadow:0 0 0 2px var(--border-light)}.sed-panel__timeline-body{background:var(--bg-secondary);border-radius:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--border-light)}.sed-panel__timeline-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-1)}.sed-panel__timeline-type{font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.sed-panel__timeline-time{font-size:var(--text-xs);color:var(--text-secondary);white-space:nowrap}.sed-panel__timeline-details{font-size:var(--text-sm);color:var(--text-secondary)}.sed-panel__empty{padding:var(--space-4) var(--space-6);color:var(--text-tertiary);font-size:var(--text-sm);font-style:italic}.sed-panel__adjust-section{border-top:1px solid var(--border-light);padding-top:var(--space-4);margin-top:var(--space-2)}.sed-panel__adjust-section h4{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);margin:0 0 var(--space-4) 0}.sed-panel__adjust-form{display:flex;flex-direction:column;gap:var(--space-4)}.sed-panel__form-row{display:flex;flex-direction:column;gap:var(--space-2)}.sed-panel__form-row label{font-size:var(--text-sm);font-weight:500;color:var(--text-primary)}.sed-panel__days-input{max-width:160px}.sed-panel__form-error{font-size:var(--text-sm);color:var(--error);background:#fee2e2;border-radius:var(--space-2);padding:var(--space-2) var(--space-3)}.sed-panel__adjust-success{font-size:var(--text-sm);color:var(--success);background:#d1fae5;border-radius:var(--space-2);padding:var(--space-3) var(--space-4);display:flex;align-items:center;gap:var(--space-3)}.sed-panel__link-btn{background:none;border:none;color:var(--eduq-blue);cursor:pointer;font-size:var(--text-sm);text-decoration:underline;padding:0}.sed-panel__link-btn:hover{color:var(--eduq-blue-hover)}.upgrade-history{display:flex;flex-direction:column;gap:var(--space-4)}.upgrade-history__loading{padding:var(--space-5);color:var(--text-secondary);font-size:var(--text-sm)}.upgrade-history__alert{margin:var(--space-4) var(--space-5)}.upgrade-history__body{padding:var(--space-2) 0}.upgrade-history__badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);background:#dbeafe;color:#1e40af;border-radius:var(--space-1);font-size:var(--text-xs);font-weight:600;margin-left:var(--space-3);white-space:nowrap}.upgrade-history__billing-card{margin-top:0}.upgrade-history__events{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5)}.upgrade-history__event-item{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--space-2);overflow:hidden}.upgrade-history__event-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-4);background:var(--bg-tertiary);border-bottom:1px solid var(--border-light)}.upgrade-history__event-type{font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.upgrade-history__event-time{font-size:var(--text-xs);color:var(--text-secondary)}.upgrade-history__event-details{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3);padding:var(--space-4)}.upgrade-history__detail-row{display:flex;flex-direction:column;gap:var(--space-1)}.upgrade-history__detail-label{font-size:11px;color:var(--text-secondary);font-weight:700;text-transform:uppercase;letter-spacing:.8px}.upgrade-history__detail-value{font-size:var(--text-sm);color:var(--text-primary);font-weight:500}.upgrade-history__detail-value--highlight{color:var(--eduq-blue);font-weight:600}@media (max-width: 768px){.upgrade-history__event-details{grid-template-columns:1fr}.upgrade-history__event-header{flex-direction:column;align-items:flex-start;gap:var(--space-1)}}.user-detail{padding:var(--space-6)}.user-detail__header{margin-bottom:var(--space-6)}.user-detail__back-btn{padding:var(--space-2) var(--space-4);background:var(--bg-tertiary);color:var(--text-primary);border:none;border-radius:var(--space-2);font-size:var(--text-sm);font-weight:500;cursor:pointer;margin-bottom:var(--space-4);transition:background-color .2s ease}.user-detail__back-btn:hover{background:var(--border-light)}.user-detail__title-row{display:flex;align-items:center;gap:var(--space-4)}.user-detail__avatar-large{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--eduq-blue),#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:28px;flex-shrink:0}.user-detail__title{font-size:var(--space-6);font-weight:600;color:var(--text-primary);margin:0}.user-detail__subtitle{font-size:var(--text-sm);color:var(--text-secondary);margin:var(--space-1) 0 0 0}.user-detail__tabs{display:flex;gap:var(--space-1);border-bottom:1px solid var(--border-light);margin-bottom:var(--space-6)}.user-detail__tab{padding:var(--space-3) var(--space-5);border:none;background:transparent;font-size:var(--text-sm);font-weight:500;cursor:pointer;color:var(--text-secondary);border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s ease}.user-detail__tab:hover{color:var(--text-primary)}.user-detail__tab--active{color:var(--eduq-blue);border-bottom-color:var(--eduq-blue)}.user-detail__content{margin-bottom:var(--space-6)}.user-detail__info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-5);padding:var(--space-6);background:var(--bg-primary)}.user-detail__info-item{display:flex;flex-direction:row;align-items:baseline;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--bg-secondary);border-radius:var(--space-2);border:1px solid var(--border-light);min-height:auto}.user-detail__info-item label{font-size:12px;color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:0;display:block;white-space:nowrap;flex-shrink:0}.user-detail__info-item label:after{content:":"}.user-detail__info-item span{font-size:14px;color:var(--text-primary);font-weight:500;line-height:1.4;display:block;word-break:break-word;min-width:0}.user-detail__mono{font-family:monospace;font-size:var(--text-xs);color:var(--text-secondary)}.user-detail__section{padding:var(--space-4) var(--space-5);border-top:1px solid var(--bg-tertiary)}.user-detail__section h4{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);margin:0 0 var(--space-3) 0}.user-detail__groups{display:flex;gap:var(--space-2);flex-wrap:wrap}.user-detail__group-badge{padding:var(--space-1) var(--space-3);border-radius:var(--space-1);font-size:var(--text-sm);background:var(--border-light);color:var(--text-primary)}.user-detail__group-badge--super{background:#fae8ff;color:#86198f}.user-detail__group-badge--admin{background:#dbeafe;color:#1e40af}.user-detail__no-data{color:var(--text-tertiary);font-size:var(--text-sm)}.user-detail__subscription{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}.user-detail__documents{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3)}.user-detail__document-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--bg-secondary);border-radius:var(--space-2);transition:background-color .2s ease}.user-detail__document-item:hover{background:var(--bg-tertiary)}.user-detail__document-icon{font-size:var(--space-6)}.user-detail__document-info{flex:1;min-width:0}.user-detail__document-name{font-size:var(--text-sm);font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-detail__document-meta{font-size:var(--text-xs);color:var(--text-secondary);margin-top:2px}.user-detail__conversations{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3)}.user-detail__conversation-item{padding:var(--space-3);background:var(--bg-secondary);border-radius:var(--space-2);transition:background-color .2s ease}.user-detail__conversation-item:hover{background:var(--bg-tertiary)}.user-detail__conversation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-1)}.user-detail__conversation-title{font-size:var(--text-sm);font-weight:500;color:var(--text-primary)}.user-detail__conversation-date{font-size:var(--text-xs);color:var(--text-secondary)}.user-detail__conversation-preview{font-size:var(--text-sm);color:var(--text-secondary)}.user-detail__mastery{padding:var(--space-5)}.user-detail__mastery-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.user-detail__mastery-stat{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4);background:var(--bg-secondary);border-radius:var(--space-2)}.user-detail__mastery-stat label{font-size:var(--text-xs);color:var(--text-secondary);font-weight:500;text-transform:uppercase}.user-detail__mastery-stat span{font-size:var(--space-6);font-weight:600;color:var(--text-primary)}.user-detail__actions{display:flex;gap:var(--space-3);padding:var(--space-5);flex-wrap:wrap}.admin-card-title{display:flex;align-items:center;gap:var(--space-2)}.user-detail__info-item span.user-detail__mono{font-family:var(--font-mono);font-size:var(--text-xs);background:var(--bg-tertiary);padding:var(--space-1) var(--space-2);border-radius:var(--space-1);display:inline-block}.admin-card[data-conditional=true]{border-left:3px solid var(--warning)}.user-detail__info-item a{color:var(--eduq-blue);text-decoration:none;transition:color .2s ease}.user-detail__info-item a:hover{color:var(--eduq-blue-hover);text-decoration:underline}@media (max-width: 1024px){.user-detail__info-grid,.user-detail__subscription,.user-detail__mastery-stats{grid-template-columns:1fr}}@media (max-width: 768px){.user-detail{padding:var(--space-4)}.user-detail__title-row{flex-wrap:wrap}.user-detail__tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.user-detail__tab{white-space:nowrap}}.promo-code-modal{max-width:520px;width:100%;background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--space-6);display:flex;flex-direction:column;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.promo-code-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:var(--space-8) var(--space-4);overflow-y:auto}.promo-code-modal__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.promo-code-modal__title{margin:0;font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary)}.promo-code-modal__close{background:none;border:none;font-size:var(--text-lg);cursor:pointer;color:var(--text-secondary);padding:var(--space-1);line-height:1;transition:color var(--transition-base)}.promo-code-modal__close:hover{color:var(--text-primary)}.promo-code-modal__form{display:flex;flex-direction:column;gap:var(--space-3)}.promo-code-modal__form-group{display:flex;flex-direction:column;gap:var(--space-1)}.promo-code-modal__label{font-weight:var(--font-medium);color:var(--text-primary);font-size:var(--text-sm)}.promo-code-modal__input,.promo-code-modal__select,.promo-code-modal__textarea{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:var(--text-base);font-family:var(--font-sans);color:var(--text-primary);background:var(--bg-primary);transition:border-color var(--transition-base)}.promo-code-modal__input:focus,.promo-code-modal__select:focus,.promo-code-modal__textarea:focus{outline:none;border-color:var(--eduq-blue);box-shadow:0 0 0 3px #0066ff1a}.promo-code-modal__textarea{resize:vertical;min-height:60px}.promo-code-modal__generated{display:flex;flex-direction:column;gap:var(--space-4)}.promo-code-modal__success-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-radius:var(--radius-lg);border:1px solid #6ee7b7}.promo-code-modal__success-icon{font-size:32px;line-height:1}.promo-code-modal__success-text{flex:1}.promo-code-modal__success-title{margin:0 0 var(--space-1) 0;font-size:var(--text-lg);font-weight:var(--font-semibold);color:#065f46}.promo-code-modal__success-subtitle{margin:0;font-size:var(--text-sm);color:#047857}.promo-code-modal__codes-container{display:flex;flex-direction:column;gap:var(--space-3);max-height:400px;overflow-y:auto;padding:var(--space-2)}.promo-code-card{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--space-4);transition:all .2s ease}.promo-code-card:hover{border-color:var(--eduq-blue);box-shadow:0 2px 8px #2563eb1a}.promo-code-card__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.promo-code-card__number{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--eduq-blue);color:#fff;border-radius:50%;font-size:var(--text-xs);font-weight:var(--font-semibold)}.promo-code-card__copy-btn{padding:var(--space-1) var(--space-3);background:#fff;border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.promo-code-card__copy-btn:hover{background:var(--eduq-blue);border-color:var(--eduq-blue);color:#fff}.promo-code-card__code{font-family:var(--font-mono);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--eduq-blue);padding:var(--space-3);background:#fff;border:2px dashed var(--border-medium);border-radius:var(--radius-md);text-align:center;margin-bottom:var(--space-3);letter-spacing:.5px}.promo-code-card__details{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-2)}.promo-code-card__detail{display:flex;flex-direction:column;gap:var(--space-1)}.promo-code-card__detail-label{font-size:var(--text-xs);color:var(--text-secondary);font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:.5px}.promo-code-card__detail-value{font-size:var(--text-sm);color:var(--text-primary);font-weight:var(--font-medium)}.promo-code-modal__actions{display:flex;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--border-light)}.promo-code-modal__actions .admin-btn{flex:1}.promo-code-modal__code-list{font-family:var(--font-mono);list-style:none;padding:0;margin:var(--space-4) 0 0 0}.promo-code-modal__code-item{padding:var(--space-2) 0;font-size:var(--text-sm);color:var(--text-primary);border-bottom:1px solid var(--border-light)}.promo-code-modal__code-item:last-child{border-bottom:none}.promo-code-modal__footer{margin-top:var(--space-4)}.promo-code-dashboard__super-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background:var(--eduq-blue);color:#fff;border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:var(--font-semibold)}.promo-code-dashboard__extension-badge{display:inline-block;margin-left:var(--space-2);padding:var(--space-1) var(--space-2);background:var(--eduq-cyan);color:#fff;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-semibold)}.promo-code-modal__help-text{font-size:var(--text-xs);color:var(--text-secondary);margin-top:var(--space-1);line-height:1.4}.promo-code-modal__help-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-left:var(--space-1);font-size:12px;cursor:help;position:relative}.promo-code-modal__help-icon:hover:after{content:attr(title);position:absolute;bottom:125%;left:50%;transform:translate(-50%);background:var(--text-primary);color:#fff;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-xs);white-space:nowrap;z-index:1000;box-shadow:0 2px 8px #00000026;pointer-events:none}.promo-code-modal__help-icon:hover:before{content:"";position:absolute;bottom:115%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--text-primary);z-index:1000;pointer-events:none}.promo-code-modal__select option{padding:var(--space-2);line-height:1.5}.promo-code-modal--wide{max-width:620px}.promo-code-modal__tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-4);border-bottom:2px solid var(--border-light)}.promo-code-modal__tab{flex:1;padding:var(--space-3) var(--space-4);background:none;border:none;border-bottom:3px solid transparent;font-size:var(--text-base);font-weight:var(--font-medium);color:var(--text-secondary);cursor:pointer;transition:all .2s ease;margin-bottom:-2px}.promo-code-modal__tab:hover{color:var(--text-primary);background:var(--bg-secondary)}.promo-code-modal__tab--active{color:var(--eduq-blue);border-bottom-color:var(--eduq-blue);font-weight:var(--font-semibold)}.promo-code-modal__section{padding:var(--space-4);background:var(--bg-secondary);border-radius:var(--radius-md);margin-bottom:var(--space-4)}.promo-code-modal__section-title{margin:0 0 var(--space-3) 0;font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary);display:flex;align-items:center;gap:var(--space-2)}.promo-code-modal__form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-3)}.promo-code-modal__input--error{border-color:var(--error);background:#ef44440d}.promo-code-modal__input--error:focus{border-color:var(--error);box-shadow:0 0 0 3px #ef44441a}.promo-code-modal__error-text{display:block;font-size:var(--text-xs);color:var(--error);margin-top:var(--space-1);font-weight:var(--font-medium)}.promo-code-modal__success-text{display:block;font-size:var(--text-xs);color:var(--success);margin-top:var(--space-1);font-weight:var(--font-medium)}.promo-code-modal__preview-container{display:flex;flex-direction:column;gap:var(--space-4)}.promo-code-modal__preview-title{margin:0;font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.promo-code-modal__preview-details{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-light)}.promo-code-modal__preview-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) 0;border-bottom:1px solid var(--border-light)}.promo-code-modal__preview-item:last-child{border-bottom:none}.promo-code-modal__preview-label{font-size:var(--text-sm);color:var(--text-secondary);font-weight:var(--font-medium)}.promo-code-modal__preview-value{font-size:var(--text-sm);color:var(--text-primary);font-weight:var(--font-semibold)}.promo-code-modal__preview-value--code{font-family:var(--font-mono);color:var(--eduq-blue);font-size:var(--text-base);letter-spacing:.5px}.promo-code-modal__preview{padding:var(--space-3);background:#fff;border:1px solid var(--border-light);border-radius:var(--radius-md);margin-top:var(--space-2)}.promo-code-modal__preview-label{font-size:var(--text-xs);color:var(--text-secondary);font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-2);display:block}.promo-code-modal__preview-codes{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.promo-code-modal__preview-code{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--eduq-blue);background:var(--bg-secondary);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-weight:var(--font-semibold);letter-spacing:.5px}.promo-code-modal__preview-more{font-size:var(--text-xs);color:var(--text-secondary);font-style:italic}.promo-analytics{padding:var(--space-6)}.promo-analytics__tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-6);border-bottom:2px solid var(--border-light)}.promo-analytics__tab{padding:var(--space-3) var(--space-6);background:transparent;border:none;border-bottom:3px solid transparent;color:var(--text-secondary);font-weight:500;cursor:pointer;transition:all .2s ease}.promo-analytics__tab:hover{color:var(--text-primary);background:var(--bg-secondary)}.promo-analytics__tab--active{color:var(--eduq-blue);border-bottom-color:var(--eduq-blue)}.promo-analytics__filters{display:flex;gap:var(--space-3);align-items:center}.promo-analytics__select{padding:var(--space-2) var(--space-4);border:1px solid var(--border-medium);border-radius:.375rem;font-size:.875rem;background:#fff}.promo-analytics__date-inputs{display:flex;gap:var(--space-2);align-items:center}.promo-analytics__input{padding:var(--space-2) var(--space-3);border:1px solid var(--border-medium);border-radius:.375rem;font-size:.875rem}.promo-analytics__table-container{overflow-x:auto;margin-bottom:var(--space-6)}.promo-analytics__table{width:100%;border-collapse:collapse}.promo-analytics__table thead{background:var(--bg-secondary)}.promo-analytics__table th{padding:var(--space-3) var(--space-4);text-align:left;font-weight:600;color:var(--text-primary);border-bottom:2px solid var(--border-medium)}.promo-analytics__table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-light)}.promo-analytics__row:hover{background:var(--bg-secondary)}.promo-analytics__campaign-name{font-weight:500;color:var(--text-primary)}.promo-analytics__conversion-rate{font-weight:600;color:var(--eduq-blue)}.promo-analytics__detail-row{background:var(--bg-tertiary)}.promo-analytics__detail-content{padding:var(--space-4)}.promo-analytics__codes-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-3);margin-top:var(--space-3)}.promo-analytics__code-item{display:flex;justify-content:space-between;padding:var(--space-2) var(--space-3);background:#fff;border-radius:.375rem;border:1px solid var(--border-light)}.promo-analytics__code{font-family:var(--font-mono);font-weight:500}.promo-analytics__code-usage{color:var(--text-secondary);font-size:.875rem}.promo-analytics__more{grid-column:1 / -1;text-align:center;color:var(--text-secondary);font-style:italic}.promo-analytics__channel-name{display:flex;align-items:center;gap:var(--space-2)}.promo-analytics__top-badge{display:inline-block;padding:.125rem var(--space-2);background:linear-gradient(135deg,gold,orange);color:#fff;font-size:.75rem;font-weight:600;border-radius:.25rem}.promo-analytics__chart-container{height:400px;padding:var(--space-6)}.promo-analytics__ab-list{display:flex;flex-direction:column;gap:var(--space-6)}.promo-analytics__ab-test{padding:var(--space-6);background:var(--bg-secondary);border-radius:.5rem}.promo-analytics__ab-campaign{margin-bottom:var(--space-4);font-size:1.25rem;color:var(--text-primary)}.promo-analytics__ab-variants{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-4);margin-bottom:var(--space-4)}.promo-analytics__variant{padding:var(--space-4);background:#fff;border-radius:.375rem;border:2px solid var(--border-light);transition:all .2s ease}.promo-analytics__variant--winner{border-color:var(--eduq-blue);box-shadow:0 4px 6px #0066ff1a}.promo-analytics__variant-header{margin-bottom:var(--space-3)}.promo-analytics__variant-name{display:flex;align-items:center;gap:var(--space-2);font-size:1rem;font-weight:600;color:var(--text-primary)}.promo-analytics__winner-badge{display:inline-block;padding:.125rem var(--space-2);background:linear-gradient(135deg,gold,orange);color:#fff;font-size:.75rem;font-weight:600;border-radius:.25rem}.promo-analytics__variant-stats{display:flex;flex-direction:column;gap:var(--space-2)}.promo-analytics__stat{display:flex;justify-content:space-between;align-items:center}.promo-analytics__stat-label{color:var(--text-secondary);font-size:.875rem}.promo-analytics__stat-value{font-weight:600;color:var(--text-primary)}.promo-analytics__ab-significance{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:#fff;border-radius:.375rem}.promo-analytics__significance-label{font-weight:500;color:var(--text-secondary)}.promo-analytics__significance-value{padding:var(--space-2) var(--space-3);border-radius:.25rem;font-weight:600}.promo-analytics__significance--yes{background:#10b9811a;color:var(--success)}.promo-analytics__significance--no{background:#ef44441a;color:var(--error)}.promo-analytics__significance--insufficient{background:#f59e0b1a;color:var(--warning)}.promo-analytics__significance-note{color:var(--text-tertiary);font-size:.75rem;font-style:italic}.promo-analytics__code-cell{font-family:var(--font-mono);font-weight:500}.promo-analytics__status{display:inline-block;padding:.25rem var(--space-3);border-radius:.25rem;font-size:.75rem;font-weight:600;text-transform:uppercase}.promo-analytics__status--active{background:#10b9811a;color:var(--success)}.promo-analytics__status--used{background:#6b72801a;color:var(--text-secondary)}.promo-analytics__status--revoked{background:#ef44441a;color:var(--error)}.promo-analytics__empty,.promo-analytics__loading{padding:var(--space-8);text-align:center;color:var(--text-secondary)}.promo-analytics__access-denied{padding:var(--space-8);text-align:center;font-size:1.125rem;color:var(--text-secondary)}.promo-analytics__last-update{font-size:.875rem;color:var(--text-tertiary)}@media (max-width: 768px){.promo-analytics{padding:var(--space-4)}.promo-analytics__tabs{overflow-x:auto}.promo-analytics__tab{white-space:nowrap}.promo-analytics__filters{flex-direction:column;align-items:stretch}.promo-analytics__ab-variants{grid-template-columns:1fr}.promo-analytics__chart-container{height:300px;padding:var(--space-4)}}.promo-analytics__metrics-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}.promo-analytics__metric-card{text-align:center;padding:var(--space-6) var(--space-4)}.promo-analytics__metric-card--action{display:flex;align-items:center;justify-content:center}.promo-analytics__metric-value{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);line-height:1.1;margin-bottom:var(--space-2)}.promo-analytics__metric-value--warning{color:var(--warning)}.promo-analytics__metric-label{font-size:var(--text-sm);color:var(--text-secondary)}.promo-analytics__two-col{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);margin-bottom:var(--space-6)}@media (max-width: 768px){.promo-analytics__two-col{grid-template-columns:1fr}}.promo-analytics__pie-container{height:280px;padding:var(--space-4);display:flex;align-items:center;justify-content:center}.promo-analytics__funnel{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.promo-analytics__funnel-step{display:grid;grid-template-columns:120px 1fr 100px;align-items:center;gap:var(--space-3)}.promo-analytics__funnel-label{font-weight:var(--font-medium);color:var(--text-secondary);font-size:var(--text-sm)}.promo-analytics__funnel-bar-wrap{background:var(--bg-tertiary);border-radius:.25rem;height:24px;overflow:hidden}.promo-analytics__funnel-bar{height:100%;background:linear-gradient(90deg,var(--eduq-blue),var(--eduq-cyan));border-radius:.25rem;transition:width .4s ease;min-width:4px}.promo-analytics__funnel-value{font-size:var(--text-sm);color:var(--text-secondary);text-align:right}.promo-analytics__downgrade-count{display:inline-block;padding:.125rem var(--space-3);border-radius:.25rem;font-weight:var(--font-semibold);background:#6b72801a;color:var(--text-secondary)}.promo-analytics__downgrade-count--high{background:#ef44441a;color:var(--error)}.promo-analytics__subscription-breakdown,.promo-analytics__downgrade,.promo-analytics__roi{display:flex;flex-direction:column;gap:var(--space-6)}.modal-info{display:flex;gap:.75rem;padding:1rem;background-color:#dbeafe;border-left:4px solid #3B82F6;border-radius:.5rem;margin-bottom:1.5rem}.modal-info__icon{font-size:1.5rem;flex-shrink:0}.modal-info__text{font-size:.875rem;color:#1e40af;line-height:1.5}.modal-info__text strong{font-weight:600}.modal-code-details{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding:1rem;background-color:#f9fafb;border-radius:.5rem;margin-bottom:1.5rem}.modal-code-details__item{display:flex;flex-direction:column;gap:.25rem}.modal-code-details__label{font-size:.75rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.modal-code-details__value{font-size:.875rem;font-weight:600;color:#111827}.modal-help-text{font-size:.75rem;color:#6b7280;margin-top:.25rem}.modal-new-code{padding:1.5rem;background:linear-gradient(135deg,#dbeafe,#e0e7ff);border-radius:.75rem;margin-bottom:1.5rem;text-align:center}.modal-new-code__label{font-size:.875rem;color:#1e40af;font-weight:500;margin-bottom:.75rem}.modal-new-code__value{display:flex;align-items:center;justify-content:center;gap:.75rem}.modal-new-code__code{font-size:1.5rem;font-weight:700;color:#06f;font-family:Courier New,monospace;letter-spacing:1px;padding:.5rem 1rem;background-color:#fff;border-radius:.5rem;border:2px dashed #0066FF}.modal-new-code__copy{background:#fff;border:1px solid #D1D5DB;border-radius:.5rem;padding:.5rem;font-size:1.25rem;cursor:pointer;transition:all .2s ease}.modal-new-code__copy:hover{background-color:#f3f4f6;border-color:#06f;transform:scale(1.05)}.modal-new-code__copy:active{transform:scale(.95)}@media (max-width: 640px){.modal-code-details{grid-template-columns:1fr}.modal-new-code__code{font-size:1.125rem}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:.75rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;animation:modalSlideIn .2s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #E5E7EB}.modal-title{margin:0;font-size:1.25rem;font-weight:600;color:#111827}.modal-close{background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:.375rem;transition:all .2s ease}.modal-close:hover{background-color:#f3f4f6;color:#111827}.modal-body{padding:1.5rem}.modal-warning{display:flex;gap:.75rem;padding:1rem;background-color:#fef3c7;border-left:4px solid #F59E0B;border-radius:.5rem;margin-bottom:1.5rem}.modal-warning__icon{font-size:1.5rem;flex-shrink:0}.modal-warning__text{font-size:.875rem;color:#78350f;line-height:1.5}.modal-warning__text strong{font-weight:600}.modal-code-info{display:flex;align-items:center;gap:.75rem;padding:1rem;background-color:#f9fafb;border:2px dashed #D1D5DB;border-radius:.5rem;margin-bottom:1.5rem}.modal-code-info__label{font-size:.875rem;color:#6b7280;font-weight:500}.modal-code-info__value{font-size:1.125rem;font-weight:600;color:#06f;font-family:Courier New,monospace;letter-spacing:.5px}.modal-usage-stats{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.modal-usage-stats__item{display:flex;flex-direction:column;gap:.25rem}.modal-usage-stats__label{font-size:.75rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.modal-usage-stats__value{font-size:1.125rem;font-weight:600;color:#111827}.modal-form-group{margin-bottom:1.5rem}.modal-label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.5rem}.modal-required{color:#ef4444}.modal-input,.modal-textarea{width:100%;padding:.75rem;border:1px solid #D1D5DB;border-radius:.5rem;font-size:.875rem;font-family:inherit;transition:all .2s ease}.modal-input:focus,.modal-textarea:focus{outline:none;border-color:#06f;box-shadow:0 0 0 3px #0066ff1a}.modal-input:disabled,.modal-textarea:disabled{background-color:#f3f4f6;cursor:not-allowed}.modal-textarea{resize:vertical;min-height:100px}.modal-char-count{font-size:.75rem;color:#6b7280;margin-top:.25rem;text-align:right}.modal-checkbox-group{margin-bottom:1.5rem}.modal-checkbox{display:flex;align-items:flex-start;gap:.5rem;cursor:pointer;font-size:.875rem;color:#374151}.modal-checkbox input[type=checkbox]{margin-top:.125rem;width:1rem;height:1rem;cursor:pointer;flex-shrink:0}.modal-checkbox input[type=checkbox]:disabled{cursor:not-allowed}.modal-error{padding:.75rem 1rem;background-color:#fee2e2;border-left:4px solid #EF4444;border-radius:.5rem;font-size:.875rem;color:#991b1b;margin-bottom:1rem}.modal-error strong{font-weight:600}.modal-success{padding:.75rem 1rem;background-color:#d1fae5;border-left:4px solid #10B981;border-radius:.5rem;font-size:.875rem;color:#065f46;margin-bottom:1rem}.modal-success strong{font-weight:600}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid #E5E7EB}.modal-button{padding:.75rem 1.5rem;border-radius:.5rem;font-size:.875rem;font-weight:600;border:none;cursor:pointer;transition:all .2s ease}.modal-button:disabled{opacity:.5;cursor:not-allowed}.modal-button--primary{background-color:#06f;color:#fff}.modal-button--primary:hover:not(:disabled){background-color:#0052cc}.modal-button--secondary{background-color:#f3f4f6;color:#374151}.modal-button--secondary:hover:not(:disabled){background-color:#e5e7eb}.modal-button--danger{background-color:#ef4444;color:#fff}.modal-button--danger:hover:not(:disabled){background-color:#dc2626}@media (max-width: 640px){.modal-content{max-width:100%;margin:0;border-radius:0;max-height:100vh}.modal-header,.modal-body,.modal-footer{padding:1rem}.modal-usage-stats{grid-template-columns:1fr}.modal-footer{flex-direction:column-reverse}.modal-button{width:100%}}.modal-content--fraud{border-top:4px solid #DC2626}.modal-header--fraud{background-color:#fef2f2;border-bottom-color:#fee2e2}.modal-danger{display:flex;gap:.75rem;padding:1rem;background-color:#fee2e2;border-left:4px solid #DC2626;border-radius:.5rem;margin-bottom:1.5rem}.modal-danger__icon{font-size:1.5rem;flex-shrink:0}.modal-danger__text{font-size:.875rem;color:#991b1b;line-height:1.5}.modal-danger__text strong{font-weight:600}.modal-code-info--fraud{border-color:#fca5a5;background-color:#fef2f2}.modal-code-info--fraud .modal-code-info__value{color:#dc2626}.modal-redemptions{margin-bottom:1.5rem}.modal-redemptions__title{font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.75rem}.modal-redemptions__list{max-height:200px;overflow-y:auto;border:1px solid #E5E7EB;border-radius:.5rem;background-color:#f9fafb}.modal-redemption-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid #E5E7EB}.modal-redemption-item:last-child{border-bottom:none}.modal-redemption-item__email{font-size:.875rem;font-weight:500;color:#111827}.modal-redemption-item__date{font-size:.75rem;color:#6b7280}.modal-checkbox__list{margin-top:.5rem;margin-left:1.5rem;font-size:.875rem;color:#6b7280}.modal-checkbox__list li{margin-bottom:.25rem}@media (max-width: 640px){.modal-redemption-item{flex-direction:column;align-items:flex-start;gap:.25rem}}.promo-usage-search{max-width:1200px;margin:0 auto;padding:24px}.promo-usage-search__header{margin-bottom:32px}.promo-usage-search__title{font-size:28px;font-weight:600;color:#1a202c;margin:0 0 8px}.promo-usage-search__description{font-size:14px;color:#718096;margin:0}.promo-usage-search__form{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:24px;margin-bottom:24px}.promo-usage-search__form-row{display:flex;flex-direction:column;gap:20px}.promo-usage-search__search-type{display:flex;flex-direction:column;gap:12px}.promo-usage-search__label{font-size:14px;font-weight:500;color:#2d3748}.promo-usage-search__radio-group{display:flex;gap:24px}.promo-usage-search__radio{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#4a5568}.promo-usage-search__radio input[type=radio]{cursor:pointer}.promo-usage-search__input-group{display:flex;gap:12px}.promo-usage-search__input{flex:1;padding:12px 16px;border:1px solid #cbd5e0;border-radius:6px;font-size:14px;transition:border-color .2s}.promo-usage-search__input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.promo-usage-search__input:disabled{background-color:#f7fafc;cursor:not-allowed}.promo-usage-search__button{padding:12px 32px;background-color:#2563eb;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s;white-space:nowrap}.promo-usage-search__button:hover:not(:disabled){background-color:#1d4ed8}.promo-usage-search__button:disabled{background-color:#cbd5e0;cursor:not-allowed}.promo-usage-search__error{background-color:#fee2e2;border:1px solid #fecaca;border-radius:6px;padding:12px 16px;color:#991b1b;font-size:14px;margin-bottom:24px}.promo-usage-search__results{margin-top:24px}.promo-usage-search__results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.promo-usage-search__results-title{font-size:20px;font-weight:600;color:#1a202c;margin:0}.promo-usage-search__count{font-size:16px;font-weight:400;color:#718096}.promo-usage-search__export-button{padding:8px 16px;background-color:#10b981;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.promo-usage-search__export-button:hover{background-color:#059669}.promo-usage-search__no-results{background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;padding:32px;text-align:center;color:#718096;font-size:14px}.promo-usage-search__cards{display:flex;flex-direction:column;gap:16px}.promo-code-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:20px;transition:box-shadow .2s}.promo-code-card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.promo-code-card__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.promo-code-card__code-info{display:flex;flex-direction:column;gap:4px}.promo-code-card__code{font-size:18px;font-weight:600;color:#1a202c;margin:0;font-family:Courier New,monospace}.promo-code-card__type{font-size:12px;color:#718096;font-weight:500}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500;text-transform:uppercase}.status-active{background-color:#d1fae5;color:#065f46}.status-exhausted{background-color:#fee2e2;color:#991b1b}.status-expired{background-color:#e5e7eb;color:#374151}.promo-code-card__meta{display:flex;gap:24px;margin-bottom:12px;flex-wrap:wrap}.promo-code-card__meta-item{display:flex;gap:8px;font-size:14px}.promo-code-card__meta-label{color:#718096;font-weight:500}.promo-code-card__meta-value{color:#2d3748}.promo-code-card__notes{background-color:#fef3c7;border-left:3px solid #f59e0b;padding:12px;margin-bottom:16px;font-size:13px;color:#78350f;border-radius:4px}.promo-code-card__redemptions{margin-top:16px;padding-top:16px;border-top:1px solid #e2e8f0}.promo-code-card__redemptions-title{font-size:14px;font-weight:600;color:#2d3748;margin:0 0 12px}.redemption-item{background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;padding:12px;margin-bottom:8px}.redemption-item:last-child{margin-bottom:0}.redemption-item__user{margin-bottom:8px}.redemption-item__email{font-size:14px;font-weight:500;color:#2d3748}.redemption-item__user-id{font-size:12px;color:#718096;font-family:Courier New,monospace}.redemption-item__details{display:flex;flex-direction:column;gap:4px}.redemption-item__detail{display:flex;gap:8px;font-size:13px}.redemption-item__label{color:#718096;font-weight:500;min-width:100px}.redemption-item__value{color:#2d3748}.redemption-item__warning{color:#dc2626;font-weight:500}.promo-code-card__actions{display:flex;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid #e2e8f0}.promo-code-card__action-button{flex:1;padding:8px 16px;border:1px solid #cbd5e0;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;background-color:#fff}.promo-code-card__action-button--regenerate{color:#2563eb;border-color:#2563eb}.promo-code-card__action-button--regenerate:hover{background-color:#2563eb;color:#fff}.promo-code-card__action-button--reset{color:#f59e0b;border-color:#f59e0b}.promo-code-card__action-button--reset:hover{background-color:#f59e0b;color:#fff}.promo-code-card__action-button--flag{color:#dc2626;border-color:#dc2626}.promo-code-card__action-button--flag:hover{background-color:#dc2626;color:#fff}@media (max-width: 768px){.promo-usage-search{padding:16px}.promo-usage-search__radio-group{flex-direction:column;gap:12px}.promo-usage-search__input-group{flex-direction:column}.promo-usage-search__button{width:100%}.promo-usage-search__results-header{flex-direction:column;align-items:flex-start;gap:12px}.promo-usage-search__export-button{width:100%}.promo-code-card__meta{flex-direction:column;gap:8px}.promo-code-card__actions{flex-direction:column}}.analytics-dashboard{padding:var(--space-6);max-width:var(--container-xl);margin:0 auto}.analytics-dashboard__header{margin-bottom:var(--space-8)}.analytics-dashboard__title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);margin:0 0 var(--space-2) 0}.analytics-dashboard__description{font-size:var(--text-base);color:var(--text-secondary);margin:0}.analytics-section{margin-bottom:var(--space-12)}.analytics-section__header{margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:2px solid var(--border-light)}.analytics-section__title{font-size:var(--text-2xl);font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 var(--space-2) 0}.analytics-section__description{font-size:var(--text-sm);color:var(--text-secondary);margin:0}.analytics-dashboard__footer{margin-top:var(--space-12);padding:var(--space-6);background-color:var(--bg-secondary);border-radius:.5rem;border-left:4px solid var(--eduq-blue)}.analytics-dashboard__note{font-size:var(--text-sm);color:var(--text-secondary);margin:0;line-height:var(--leading-relaxed)}@media (max-width: 768px){.analytics-dashboard{padding:var(--space-4)}.analytics-dashboard__title{font-size:var(--text-2xl)}.analytics-section__title{font-size:var(--text-xl)}.analytics-section{margin-bottom:var(--space-8)}}.analytics-dashboard--loading{opacity:.6;pointer-events:none}.analytics-dashboard .admin-empty--compact{padding:var(--space-8);text-align:center;color:var(--text-secondary);font-size:var(--text-sm);line-height:var(--leading-relaxed)}.analytics-section .admin-card{margin-bottom:var(--space-6)}.analytics-section .admin-card:last-child{margin-bottom:0}.analytics-section .admin-grid{gap:var(--space-6)}.analytics-section .admin-card-header{margin-bottom:var(--space-4)}.analytics-section .admin-card-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.analytics-dashboard .admin-alert{margin-bottom:var(--space-6)}.analytics-dashboard:focus-visible{outline:2px solid var(--eduq-blue);outline-offset:2px}@media (prefers-reduced-motion: reduce){.analytics-dashboard *{animation-duration:.01ms!important;transition-duration:.01ms!important}}.email-tracking{padding:var(--space-6)}.email-tracking__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6)}.email-tracking__header h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0}.email-tracking__refresh{padding:8px 16px;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:6px;cursor:pointer;font-size:.875rem;color:var(--text-primary);transition:background .2s}.email-tracking__refresh:hover{background:var(--bg-tertiary)}.email-tracking__error{background:#fef2f2;border:1px solid #FECACA;border-radius:8px;padding:12px 16px;margin-bottom:var(--space-4);color:#991b1b;display:flex;justify-content:space-between;align-items:center}.email-tracking__error button{padding:4px 12px;background:#991b1b;color:#fff;border:none;border-radius:4px;cursor:pointer}.email-tracking__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-6)}.stat-card{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:8px;padding:var(--space-5);text-align:center}.stat-card__value{font-size:2rem;font-weight:700;color:var(--text-primary);line-height:1;margin-bottom:4px}.stat-card__label{font-size:.875rem;font-weight:600;color:var(--text-secondary);margin-bottom:2px}.stat-card__sub{font-size:.75rem;color:var(--text-tertiary)}.stat-card--warning{border-left:4px solid #F59E0B}.stat-card--danger{border-left:4px solid #EF4444}.stat-card--success{border-left:4px solid #10B981}.email-tracking__tabs{display:flex;gap:4px;margin-bottom:var(--space-4);border-bottom:2px solid var(--border-light);padding-bottom:0}.tab-btn{padding:10px 20px;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--text-secondary);transition:all .2s}.tab-btn:hover{color:var(--text-primary);background:var(--bg-secondary)}.tab-btn--active{color:#06f;border-bottom-color:#06f;font-weight:600}.email-tracking__filter-bar{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-3);padding:8px 12px;background:var(--bg-secondary);border-radius:6px}.email-tracking__checkbox{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--text-secondary);cursor:pointer}.email-tracking__checkbox input{cursor:pointer}.email-tracking__table-wrap{overflow-x:auto}.email-tracking__table{width:100%;border-collapse:collapse;font-size:.875rem}.email-tracking__table th{text-align:left;padding:10px 12px;background:var(--bg-secondary);color:var(--text-secondary);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-light)}.email-tracking__table td{padding:10px 12px;border-bottom:1px solid var(--border-light);color:var(--text-primary)}.email-tracking__table tbody tr:hover{background:var(--bg-secondary)}.email-tracking__test-row{opacity:.5}.email-tracking__test-row:hover{opacity:.8}.email-tracking__email{font-size:.8rem;color:var(--text-secondary)}.email-tracking__user strong{display:block;font-weight:600}.email-tracking__days{text-align:center}.email-tracking__empty{text-align:center;padding:40px 20px;color:var(--text-tertiary);font-size:1rem}.email-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:.75rem;font-weight:600;white-space:nowrap}.badge--muted{background:#f3f4f6;color:#6b7280}.badge--warning{background:#fef3c7;color:#92400e}.badge--danger{background:#fee2e2;color:#991b1b}.badge--info{background:#dbeafe;color:#1e40af}.badge--success{background:#d1fae5;color:#065f46}.days-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-weight:700;font-size:.8rem}.days-badge--ok{background:#d1fae5;color:#065f46}.days-badge--warning{background:#fef3c7;color:#92400e}.days-badge--danger{background:#fee2e2;color:#991b1b}.email-tracking__placeholder{text-align:center;padding:60px 20px;background:var(--bg-secondary);border-radius:8px;border:1px dashed var(--border-medium)}.placeholder-icon{font-size:3rem;margin-bottom:12px}.email-tracking__placeholder h3{font-size:1.25rem;color:var(--text-primary);margin-bottom:8px}.email-tracking__placeholder p{color:var(--text-secondary);font-size:.875rem;max-width:500px;margin:0 auto 8px}.placeholder-metrics{display:flex;justify-content:center;gap:var(--space-4);margin-top:var(--space-6)}.placeholder-metric{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:6px;padding:12px 16px;text-align:left}.placeholder-metric__label{display:block;font-size:.7rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.placeholder-metric__value{display:block;font-size:.8rem;font-weight:600;color:var(--text-primary)}.email-tracking__loading{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.skeleton-card{height:120px;background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--bg-tertiary) 50%,var(--bg-secondary) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:8px}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 768px){.email-tracking__stats{grid-template-columns:repeat(2,1fr)}.placeholder-metrics{flex-direction:column;align-items:center}}
