:root{--primary-color: #3c8dbc;--primary-dark: #2a6496;--primary-light: #f0f7fc;--secondary-color: #f39c12;--text-dark: #333;--text-medium: #666;--text-light: #999;--background-light: #f5f7fa;--background-white: #ffffff;--success-color: #4caf50;--error-color: #f44336;--border-color: #e0e0e0;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-xxl: 3rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-round: 50px;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .05);--shadow-md: 0 4px 8px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .1);--shadow-xl: 0 12px 24px rgba(0, 0, 0, .15)}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--font-family);font-size:16px;line-height:1.5;color:var(--text-dark);background-color:var(--background-light);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{line-height:1.2;margin-bottom:.5em}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}p{margin-bottom:1rem}a{color:var(--primary-color);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto}button,input,select,textarea{font-family:inherit;font-size:inherit}button{background:none;border:none;cursor:pointer}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media (max-width: 768px){::-webkit-scrollbar{width:4px}}.text-center{text-align:center}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.admin-dashboard{padding:2rem;max-width:1200px;margin:0 auto}.admin-stats{display:flex;gap:1.5rem;margin:2rem 0}.stat-card{background-color:#f5f5f5;border-radius:8px;padding:1.5rem;flex:1;box-shadow:0 2px 4px #0000001a;text-align:center}.stat-number{font-size:2.5rem;font-weight:700;color:#4a5568}.admin-navigation{margin:2rem 0}.admin-nav-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;margin-top:1rem}.admin-nav-card{background-color:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 4px #0000001a;transition:transform .2s,box-shadow .2s;text-decoration:none;color:inherit}.admin-nav-card:hover{transform:translateY(-5px);box-shadow:0 4px 8px #00000026}.admin-nav-card h3{margin-top:0;color:#3182ce}.admin-content{display:grid;grid-template-columns:1fr;gap:2rem}@media (min-width: 768px){.admin-content{grid-template-columns:1fr 1fr}}.admin-loading{display:flex;justify-content:center;align-items:center;height:200px;font-size:1.2rem;color:#718096}.message{padding:1rem;border-radius:4px;margin-bottom:1.5rem}.message.success{background-color:#c6f6d5;color:#276749;border:1px solid #9ae6b4}.message.error{background-color:#fed7d7;color:#c53030;border:1px solid #feb2b2}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#4a5568}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid #e2e8f0;border-radius:4px;background-color:#fff;font-size:1rem}.form-group small{display:block;margin-top:.25rem;color:#718096;font-size:.875rem}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem}.primary-button,.secondary-button,.action-button{padding:.75rem 1.5rem;border-radius:4px;font-weight:500;cursor:pointer;transition:background-color .2s;border:none;font-size:1rem}.primary-button{background-color:#3182ce;color:#fff}.primary-button:hover{background-color:#2c5282}.primary-button:disabled{background-color:#a0aec0;cursor:not-allowed}.secondary-button{background-color:#e2e8f0;color:#4a5568}.secondary-button:hover{background-color:#cbd5e0}.lessons-table-container,.invites-table,.categories-table{overflow-x:auto;margin-top:1.5rem}table{width:100%;border-collapse:collapse;border:1px solid #e2e8f0}thead th{background-color:#f7fafc;padding:.75rem;text-align:left;border-bottom:2px solid #e2e8f0;font-weight:600;color:#4a5568}tbody td{padding:.75rem;border-bottom:1px solid #e2e8f0}tbody tr:nth-child(2n){background-color:#f7fafc}tbody tr:hover{background-color:#edf2f7}.action-button{padding:.25rem .5rem;margin-right:.5rem;font-size:.875rem}.action-button.edit{background-color:#ecc94b;color:#744210}.action-button.edit:hover{background-color:#d69e2e}.action-button.publish{background-color:#48bb78;color:#fff}.action-button.publish:hover{background-color:#38a169}.action-button.unpublish{background-color:#ed8936;color:#fff}.action-button.unpublish:hover{background-color:#dd6b20}.action-button.renew{background-color:#805ad5;color:#fff}.action-button.renew:hover{background-color:#6b46c1}.action-button.view{background-color:#4299e1;color:#fff}.action-button.view:hover{background-color:#3182ce}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:500}.status-badge.published{background-color:#c6f6d5;color:#276749}.status-badge.unpublished{background-color:#fed7d7;color:#c53030}.emoji-selector{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.emoji-option{font-size:1.5rem;padding:.5rem;border-radius:4px;border:1px solid #e2e8f0;background-color:#fff;cursor:pointer;transition:background-color .2s}.emoji-option.selected{background-color:#ebf8ff;border-color:#4299e1}.exercises-list{margin-bottom:1.5rem}.exercise-item{border:1px solid #e2e8f0;border-radius:4px;margin-bottom:1rem}.exercise-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background-color:#f7fafc;border-bottom:1px solid #e2e8f0}.exercise-type{font-weight:500;color:#4a5568}.remove-exercise{border:none;background:none;font-size:1.5rem;color:#e53e3e;cursor:pointer}.exercise-content{padding:.75rem}.exercise-content p{margin:.5rem 0}.options-list ul{margin-top:.5rem;padding-left:1.5rem}.add-exercise-button{display:inline-block;padding:.5rem 1rem;background-color:#edf2f7;color:#4a5568;border:1px dashed #cbd5e0;border-radius:4px;cursor:pointer;font-weight:500;margin-bottom:1.5rem}.add-exercise-button:hover{background-color:#e2e8f0}.exercise-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem}.option-input{margin-bottom:.5rem}.category-icon{font-size:1.5rem;text-align:center}.app-container{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1;padding-bottom:2rem}.loading-screen{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100vh;background-color:#f5f7fa}.loading-screen h1{color:#3c8dbc;font-size:2.5rem;margin-bottom:2rem}.loading-indicator{width:40px;height:40px;border:4px solid rgba(60,141,188,.3);border-top:4px solid #3c8dbc;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}button{cursor:pointer;font-family:inherit}.fade-enter{opacity:0}.fade-enter-active{opacity:1;transition:opacity .3s}.fade-exit{opacity:1}.fade-exit-active{opacity:0;transition:opacity .3s}@media (max-width: 768px){.main-content{padding:0 1rem 2rem}}
