@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary: #4f46e5;--color-primary-dark: #3730a3;--color-primary-soft: #eef2ff;--color-secondary: #06b6d4;--color-secondary-soft: #ecfeff;--color-success: #10b981;--color-success-soft: #ecfdf5;--color-warning: #f59e0b;--color-warning-soft: #fffbeb;--color-danger: #ef4444;--color-danger-soft: #fef2f2;--color-bg: #f6f8fc;--color-surface: #ffffff;--color-surface-soft: #f8fafc;--color-text: #0f172a;--color-text-muted: #64748b;--color-border: #e2e8f0;--shadow-sm: 0 4px 14px rgba(15, 23, 42, .06);--shadow-md: 0 12px 30px rgba(15, 23, 42, .1);--shadow-lg: 0 24px 60px rgba(15, 23, 42, .14);--radius-sm: 10px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 32px;--transition: .18s ease;--color-primary-hover: var(--color-primary-dark);--color-primary-light: var(--color-primary-soft);--color-white: var(--color-surface);--color-success-bg: var(--color-success-soft);--color-error: var(--color-danger);--color-error-bg: var(--color-danger-soft);--color-student: #0ea5e9;--color-teacher: #8b5cf6;--radius: var(--radius-md);--shadow: var(--shadow-sm);--max-width: 1180px;--navbar-height: 64px}html{font-size:16px;scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background-color:var(--color-bg);color:var(--color-text);line-height:1.6;min-height:100vh;margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--color-primary);text-decoration:none;transition:color .15s}a:hover{color:var(--color-primary-hover)}img{max-width:100%;display:block}.container{width:min(100% - 32px,1180px);margin-inline:auto;padding:0}.app-layout{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding:2rem 1.25rem 3rem}.navbar{position:sticky;top:0;z-index:100;background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.navbar__inner{display:flex;align-items:center;justify-content:space-between;height:var(--navbar-height);gap:1rem}.navbar__logo{font-size:1.15rem;font-weight:700;color:var(--color-text);white-space:nowrap}.navbar__logo:hover{color:var(--color-primary)}.navbar__links{display:flex;align-items:center;gap:.25rem 1rem;flex-wrap:wrap;justify-content:flex-end}.navbar__links a{font-size:.9rem;font-weight:500;color:var(--color-text-muted);padding:.35rem .5rem;border-radius:var(--radius-sm)}.navbar__links a:hover{color:var(--color-primary);background:var(--color-primary-light)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:.65rem 1.35rem;font-size:.95rem;font-weight:700;font-family:inherit;border:2px solid transparent;border-radius:999px;cursor:pointer;transition:background var(--transition),color var(--transition),border-color var(--transition),box-shadow var(--transition),transform var(--transition);text-decoration:none;line-height:1.4}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:var(--color-white);box-shadow:0 4px 14px #4f46e538}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark);color:var(--color-white);box-shadow:0 6px 20px #4f46e547}.btn-outline{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}.btn-outline:hover:not(:disabled){background:var(--color-primary-soft);border-color:#4f46e540;color:var(--color-primary-dark)}.btn-ghost{background:transparent;color:var(--color-text-muted);border:none;padding:.45rem .85rem}.btn-ghost:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-soft)}.btn-danger{background:var(--color-danger);color:var(--color-white);box-shadow:0 4px 14px #ef444433}.btn-danger:hover:not(:disabled){background:#dc2626;color:var(--color-white)}.btn-sm{padding:.45rem 1rem;font-size:.85rem}.btn-lg{padding:.85rem 1.75rem;font-size:1rem}.btn-block{width:100%}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition),transform var(--transition)}.card:hover{box-shadow:var(--shadow-md)}.card-soft{background:var(--color-surface-soft);border-color:var(--color-border)}.card-highlight{background:linear-gradient(135deg,var(--color-surface) 0%,var(--color-primary-soft) 100%);border-color:#4f46e52e}.card-danger{background:var(--color-danger-soft);border-color:#ef444447}.card-warning{background:var(--color-warning-soft);border-color:#f59e0b52}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.form{display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.45rem}.form-label,.form-group label{font-size:.875rem;font-weight:700;color:var(--color-text)}.form-help{font-size:.82rem;color:var(--color-text-muted);margin-top:.15rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.input-shell{display:flex;flex-direction:column;gap:.45rem}input,textarea,select,.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 14px;font-size:.95rem;font-family:inherit;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface);color:var(--color-text);transition:border-color var(--transition),box-shadow var(--transition)}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}input:focus,textarea:focus,select:focus,.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #4f46e524}.form-group textarea,textarea{resize:vertical;min-height:100px}.alert{padding:.85rem 1rem;border-radius:var(--radius-md);font-size:.9rem;margin-bottom:1rem}.alert-error,.error-message{background:var(--color-danger-soft);color:#991b1b;border:1px solid rgba(239,68,68,.28);padding:.85rem 1rem;border-radius:var(--radius-md);font-size:.9rem}.alert-success{background:var(--color-success-soft);color:var(--color-success);border:1px solid rgba(16,185,129,.28)}.loading,.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:3rem 1rem;color:var(--color-text-muted);font-size:.92rem}.loading-spinner{width:32px;height:32px;border:2.5px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.page-header{margin-bottom:24px;display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:24px}.page-header h1{font-size:clamp(2rem,4vw,3rem);font-weight:800;line-height:1.05;margin:.15rem 0 .35rem;color:var(--color-text)}.page-header p,.page-header__meta{color:var(--color-text-muted);margin-top:.35rem}.eyebrow{display:inline-flex;margin-bottom:.5rem;color:var(--color-primary);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.back-link{display:inline-block;margin-bottom:1.25rem;font-size:.9rem;font-weight:500}.role-badge{display:inline-block;padding:.3rem .75rem;border-radius:999px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.role-badge--student{background:#e0f2fe;color:var(--color-student)}.role-badge--teacher{background:#ede9fe;color:var(--color-teacher)}.badge{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:700;line-height:1.2;white-space:nowrap}.badge-primary{background:var(--color-primary-soft);color:var(--color-primary-dark)}.badge-success{background:var(--color-success-soft);color:#047857}.badge-warning{background:var(--color-warning-soft);color:#b45309}.badge-danger{background:var(--color-danger-soft);color:#b91c1c}.badge-muted{background:var(--color-surface-soft);color:var(--color-text-muted);border:1px solid var(--color-border)}.status-badge{display:inline-block;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:700;text-transform:capitalize;background:var(--color-primary-soft);color:var(--color-primary-dark)}.empty-state{text-align:center;padding:3rem 2rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);max-width:520px;margin-inline:auto}.empty-state h3{font-size:1.2rem;font-weight:700;margin-bottom:.5rem;color:var(--color-text)}.empty-state__icon{display:block;font-size:2.5rem;margin-bottom:.75rem;line-height:1}.empty-state p{color:var(--color-text-muted);margin-bottom:1.25rem;font-size:.95rem}.hero{text-align:center;padding:3rem 0 4rem}.hero h1{font-size:clamp(1.75rem,5vw,2.75rem);font-weight:800;line-height:1.15;max-width:700px;margin:0 auto 1rem}.hero__subtitle{font-size:clamp(1rem,2.5vw,1.2rem);color:var(--color-text-muted);max-width:560px;margin:0 auto 2rem}.hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.steps{padding:2rem 0}.steps h2{text-align:center;font-size:1.5rem;margin-bottom:2rem}.steps__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem}.step-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius);padding:1.75rem 1.5rem;text-align:center;box-shadow:var(--shadow)}.step-card__number{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--color-primary);color:var(--color-white);border-radius:50%;font-weight:700;font-size:1.1rem;margin-bottom:1rem}.step-card h3{font-size:1.05rem;margin-bottom:.5rem}.step-card p{font-size:.9rem;color:var(--color-text-muted)}.auth-page{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - var(--navbar-height) - 4rem);width:100%}.auth-shell__main .auth-page{min-height:calc(100vh - 140px)}.auth-card{width:100%;max-width:420px}.auth-card h1{font-size:1.5rem;margin-bottom:.35rem}.auth-card__subtitle{color:var(--color-text-muted);font-size:.95rem;margin-bottom:1.5rem}.auth-card__footer{text-align:center;margin-top:1.25rem;font-size:.9rem;color:var(--color-text-muted)}.dashboard__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem;margin-bottom:2rem}.dashboard-card{text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s}.dashboard-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);color:inherit}.dashboard-card h3{font-size:1.1rem;margin-bottom:.5rem;color:var(--color-primary)}.dashboard-card p{font-size:.9rem;color:var(--color-text-muted)}.teacher-card__header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.75rem}.teacher-card__header h3{font-size:1.1rem}.teacher-card__subject{display:inline-block;padding:.2rem .6rem;background:var(--color-primary-light);color:var(--color-primary);border-radius:999px;font-size:.78rem;font-weight:600}.teacher-card__price{font-size:1.1rem;font-weight:700;color:var(--color-primary);margin-bottom:.75rem}.teacher-card__bio{font-size:.9rem;color:var(--color-text-muted);margin-bottom:1.25rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.teacher-detail__content h1{font-size:1.75rem;margin-bottom:.25rem}.teacher-detail__email{color:var(--color-text-muted);margin-bottom:1rem}.teacher-detail__meta{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.25rem}.teacher-detail__bio{color:var(--color-text);line-height:1.7;margin-bottom:1.5rem}.booking-section{border-top:1px solid var(--color-border);padding-top:1.5rem;margin-top:.5rem}.booking-section h2{font-size:1.15rem;margin-bottom:1rem}.booking-success{display:flex;flex-direction:column;gap:1rem}.class-card__row{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem 0;border-bottom:1px solid var(--color-border);font-size:.9rem}.class-card__row:last-of-type{margin-bottom:1rem}.class-card__label{color:var(--color-text-muted);font-weight:500}.classroom__info,.classroom__video{margin-bottom:1.25rem}.classroom__row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.6rem 0;border-bottom:1px solid var(--color-border)}.classroom__row:last-child{border-bottom:none}.classroom__video h2{font-size:1.1rem;margin-bottom:1rem}.classroom__room-name{background:var(--color-primary-light);color:var(--color-primary);font-family:Courier New,monospace;font-size:1rem;font-weight:600;padding:1rem 1.25rem;border-radius:var(--radius-sm);text-align:center;margin-bottom:1rem;word-break:break-all}.classroom__placeholder{font-size:.9rem;color:var(--color-text-muted);text-align:center}.page-form .form-card{max-width:560px}.app-shell{min-height:100vh}.muted{color:var(--color-text-muted)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid var(--color-border);border-radius:var(--radius);padding:1.25rem;box-shadow:var(--shadow)}.stat-card span{display:block;color:var(--color-text-muted);font-size:.85rem;margin-bottom:.4rem}.stat-card strong{font-size:2rem;color:var(--color-text)}.dashboard-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:1.25rem}.quick-actions{display:grid;gap:.75rem}.quick-action{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;border-radius:var(--radius-sm);background:var(--color-primary-light);color:var(--color-primary);font-weight:700;border:none;cursor:pointer;font-family:inherit;font-size:inherit;text-align:left}.quick-action:hover{color:var(--color-primary-hover)}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:.85rem 1rem;border-bottom:1px solid var(--color-border);text-align:left}.data-table th{color:var(--color-text-muted);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;background:var(--color-surface-soft)}.data-table tbody tr{transition:background var(--transition)}.data-table tbody tr:hover{background:var(--color-surface-soft)}.data-table tbody tr:last-child td{border-bottom:none}.table-card{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm)}.class-card__actions{display:grid;gap:.5rem;margin-top:1rem}.class-card h3{margin-bottom:.75rem}.next-class h3{margin-bottom:.35rem}.next-class p{color:var(--color-text-muted);margin-bottom:.25rem}.next-class .btn{margin-top:.75rem}.next-class__actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.dashboard-page,.dashboard-pro{display:grid;gap:1.5rem}.dashboard-hero{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;overflow:hidden;border:1px solid var(--color-border);padding:1.75rem 1.75rem 1.75rem 1.5rem}.dashboard-hero:after{content:"";position:absolute;top:-40px;right:-40px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(6,182,212,.18) 0%,transparent 70%);pointer-events:none}.dashboard-hero--teacher{background:linear-gradient(135deg,#fff,#eef2ff 55%,#ecfeff)}.dashboard-hero--student{background:linear-gradient(135deg,#fff,#ecfeff 45%,#eef2ff)}.dashboard-hero__content{position:relative;z-index:1;flex:1;min-width:0}.dashboard-hero__content h1{font-size:clamp(1.65rem,4vw,2.35rem);font-weight:800;line-height:1.12;margin:.25rem 0 .5rem;color:var(--color-text)}.dashboard-hero__content p{color:var(--color-text-muted);margin:0;max-width:560px;font-size:.98rem}.dashboard-hero__actions{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:.65rem;flex-shrink:0;align-items:flex-start}.dashboard-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.stat-card,.dashboard-stat-card{position:relative;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.15rem 1.15rem 1rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.2rem;min-height:118px}.stat-card__icon{display:grid;place-items:center;width:40px;height:40px;margin-bottom:.35rem;border-radius:50%;background:var(--color-surface-soft);font-size:1.1rem}.stat-card__value,.dashboard-stat-card__value{font-size:2rem;line-height:1.05;font-weight:800;color:var(--color-text)}.stat-card__label,.dashboard-stat-card__label{color:var(--color-text);font-size:.88rem;font-weight:700}.stat-card__hint,.dashboard-stat-card__hint{font-size:.78rem;color:var(--color-text-muted)}.stat-card--warning,.dashboard-stat-card--warning{border-color:#f59e0b59;background:var(--color-warning-soft)}.stat-card--danger,.dashboard-stat-card--danger{border-color:#ef444459;background:var(--color-danger-soft)}.stat-card--success,.dashboard-stat-card--success{border-color:#10b98159;background:var(--color-success-soft)}.stat-card--info{border-color:#06b6d459;background:var(--color-secondary-soft)}.dashboard-main-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:1.25rem;align-items:start}.dashboard-column{display:grid;gap:1.25rem;align-content:start}.dashboard-section-card,.dashboard-section{padding:1.35rem}.dashboard-section-card__header,.dashboard-section__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.dashboard-section-card__header h2,.dashboard-section__header h2{font-size:1.05rem;font-weight:800;margin:0;color:var(--color-text)}.dashboard-section-card__body{display:grid;gap:.75rem}.next-class-card{display:grid;gap:1rem;padding:1.1rem 1.1rem 1.1rem 1.25rem;border-radius:var(--radius-md);border:1px solid rgba(79,70,229,.18);border-left:4px solid var(--color-primary);background:linear-gradient(135deg,var(--color-surface) 0%,var(--color-primary-soft) 100%)}.next-class-card h3{margin:0 0 .35rem;font-size:1.15rem;font-weight:800;color:var(--color-text)}.next-class-card__meta{display:grid;gap:.25rem;margin-bottom:.65rem;font-size:.88rem;color:var(--color-text-muted)}.next-class-card__actions{display:flex;flex-wrap:wrap;gap:.5rem}.student-next-class{padding:1.5rem;border:1px solid rgba(79,70,229,.2);background:linear-gradient(135deg,#fff,#eef2ff 60%,#ecfeff);box-shadow:var(--shadow-md)}.student-next-class h2{margin:.35rem 0 .75rem;font-size:clamp(1.35rem,3vw,1.75rem);font-weight:800;line-height:1.15;color:var(--color-text)}.student-next-class__meta{display:grid;gap:.3rem;margin-bottom:.75rem;font-size:.92rem;color:var(--color-text-muted)}.student-next-class__actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}.dashboard-list{list-style:none;display:grid;gap:.75rem;margin:0;padding:0}.dashboard-list-item{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.5rem .75rem;padding:.9rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft)}.dashboard-list-item__main{flex:1 1 180px;min-width:0}.dashboard-list-item__title{font-size:.95rem;font-weight:700;margin:0 0 .2rem;color:var(--color-text)}.dashboard-list-item__meta{font-size:.82rem;color:var(--color-text-muted);margin:0;word-break:break-word}.dashboard-list-item__badge{flex-shrink:0}.dashboard-list-item__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.78rem}.dashboard-list-item__tags{display:flex;flex-wrap:wrap;gap:.35rem .65rem;font-size:.78rem}.dashboard-list-item__time{font-size:.78rem;white-space:nowrap}.assignment-attention-item,.student-task-item{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.95rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft)}.assignment-attention-item__title,.student-task-item__title{margin:0 0 .25rem;font-size:.95rem;font-weight:700;color:var(--color-text)}.assignment-attention-item__meta,.student-task-item__meta{margin:0 0 .55rem;font-size:.82rem;color:var(--color-text-muted)}.assignment-attention-item__tags,.student-task-item__badges{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.assignment-attention-item__action{flex-shrink:0;align-self:center}.quick-actions{display:grid;gap:.65rem}.quick-action-button,.dashboard-quick-card{display:flex;align-items:center;gap:.75rem;min-height:52px;padding:.85rem 1rem;border-radius:var(--radius-md);background:var(--color-surface-soft);color:var(--color-text);font-weight:700;font-size:.92rem;text-decoration:none;border:1px solid var(--color-border);transition:background var(--transition),border-color var(--transition),transform var(--transition),box-shadow var(--transition)}.quick-action-button__icon{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--color-primary-soft);font-size:1rem;flex-shrink:0}.quick-action-button:hover,.dashboard-quick-card:hover{color:var(--color-primary-dark);background:var(--color-primary-soft);border-color:#4f46e533;transform:translateY(-1px);box-shadow:var(--shadow-sm)}.dashboard-quick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}.dashboard-empty-inline{padding:1.25rem 1rem;border:1px dashed var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);text-align:center}.dashboard-empty-inline h3{margin:0 0 .35rem;font-size:1rem;font-weight:800;color:var(--color-text)}.dashboard-empty-inline p{color:var(--color-text-muted);margin:0 0 .85rem;font-size:.9rem}.dashboard-empty-inline .btn{margin-top:0}.dashboard-warning-inline{padding:.75rem 1rem;border-radius:var(--radius-md);background:var(--color-warning-soft);border:1px solid rgba(245,158,11,.35);color:#92400e;font-size:.88rem;margin:0}.dashboard-notifications-summary{display:grid;gap:.65rem;padding:.85rem 1rem;border-radius:var(--radius-md);background:var(--color-secondary-soft);border:1px solid rgba(6,182,212,.25)}.dashboard-notifications-summary p{margin:0;font-size:.9rem;color:var(--color-text)}.dashboard-today-list{list-style:none;display:grid;gap:.65rem;margin:0;padding:0}.dashboard-today-list li{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem .85rem;border-radius:var(--radius-md);background:var(--color-surface-soft);border:1px solid var(--color-border)}.dashboard-today-list__label{font-size:.88rem;color:var(--color-text-muted);font-weight:600}.dashboard-today-list strong{font-size:1.15rem;color:var(--color-text)}.dashboard-list--feedback{gap:.85rem}.dashboard-feedback-card{padding:1rem;border-radius:var(--radius-md);background:var(--color-success-soft);border:1px solid rgba(16,185,129,.25)}.dashboard-feedback-card__title{margin:0 0 .35rem;font-size:.92rem;font-weight:800;color:var(--color-text)}.dashboard-feedback-card__comment{margin:0 0 .45rem;font-size:.88rem;color:var(--color-text);line-height:1.55}.dashboard-feedback-card__date{font-size:.78rem}.dashboard-activity-block+.dashboard-activity-block{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--color-border)}.dashboard-activity-block__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.dashboard-activity-block__header h3{font-size:.92rem;margin:0;color:var(--color-text-muted);font-weight:700}@media(max-width:1024px){.dashboard-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.dashboard-hero{flex-direction:column;align-items:stretch}.dashboard-hero__actions{flex-direction:column;width:100%}.dashboard-hero__actions .btn{width:100%}.dashboard-main-grid,.dashboard-stats-grid{grid-template-columns:1fr}.next-class-card__actions,.student-next-class__actions{flex-direction:column}.next-class-card__actions .btn,.student-next-class__actions .btn{width:100%}.assignment-attention-item,.student-task-item{flex-direction:column}.assignment-attention-item__action,.student-task-item .btn{width:100%}}@media(max-width:480px){.dashboard-stats-grid{grid-template-columns:1fr}}.hero-saas{text-align:center;padding:3rem 0 2.5rem}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin-bottom:2rem}.feature-card h3{margin-bottom:.5rem;font-size:1.05rem}.feature-card p{color:var(--color-text-muted);font-size:.92rem}.cta-section{text-align:center;padding:2rem;margin-bottom:1rem}.cta-section h2{margin-bottom:.5rem}.cta-section p{color:var(--color-text-muted);margin-bottom:1rem}.messages-shell__sidebar,.messages-shell__panel{min-height:420px}.messages-shell__conversation{padding:.75rem 0}.messages-shell__empty{min-height:280px;display:grid;place-content:center;text-align:center;gap:.5rem}.messages-shell__composer{display:flex;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.messages-shell__composer input{flex:1;padding:.65rem .85rem;border:1px solid var(--color-border);border-radius:var(--radius-sm)}.classroom-pro{display:grid;gap:1rem}.classroom__meta{margin-bottom:.5rem}.classroom__actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.classroom-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:1rem;align-items:start}.classroom-video-shell{position:relative;width:100%;height:100%;min-height:680px;background:#020617;border-radius:22px;overflow:hidden;border:1px solid var(--color-border)}.bridgecall-room{position:relative;width:100%;height:100%;min-height:680px;background:#020617;overflow:hidden}.bridgecall-room__container{width:100%;height:100%;min-height:680px}.bridgecall-room__container iframe{display:block;width:100%!important;height:100%!important;min-height:680px;border:0}.bridgecall-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:grid;place-items:center;background:#020617db;color:#fff;font-weight:700;text-align:center;padding:24px}.bridgecall-overlay--error{background:#7f1d1deb;color:#fecaca}.classroom-tools-panel{display:grid;gap:1rem}.whiteboard-placeholder{border:1px dashed rgba(255,255,255,.35);border-radius:var(--radius-sm);padding:.75rem;background:#0f172aeb;color:#e2e8f0}.classroom-video-shell .whiteboard-coming-soon{position:absolute;left:1rem;right:1rem;bottom:1rem;z-index:4}.whiteboard-placeholder__toolbar{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.whiteboard-placeholder__toolbar button{padding:.45rem .7rem;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-sm);background:#ffffff14;color:#cbd5e1}.whiteboard-placeholder p{font-size:.85rem;margin:0}.mini-calendar__days{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:.5rem;margin-bottom:1rem}.mini-calendar__day{padding:.6rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;cursor:pointer;font-family:inherit}.mini-calendar__day.active{background:var(--color-primary);color:#fff}.mini-calendar__day.has-class{border-color:var(--color-primary)}.mini-calendar__item{display:flex;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--color-border)}@media(max-width:900px){.dashboard-layout,.dashboard-main-grid,.classroom-layout{grid-template-columns:1fr}.dashboard-hero{flex-direction:column}.dashboard-hero__actions{width:100%}.documents-form__row{grid-template-columns:1fr}}.documents-form__row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.documents-list{display:grid;gap:1rem;margin-top:1rem}.document-item{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--color-border)}.document-item:last-child{border-bottom:none}.document-item h3{font-size:1.05rem;margin-bottom:.35rem}.document-item__desc{color:var(--color-text-muted);font-size:.9rem;margin-bottom:.5rem}.document-item__meta{display:flex;flex-wrap:wrap;gap:.35rem 1rem;font-size:.82rem;color:var(--color-text-muted)}.document-item__actions{display:flex;flex-wrap:wrap;gap:.5rem}.assignments-page{display:grid;gap:1.5rem}.assignments-grid{display:grid;gap:1rem}.assignment-card{padding:1.25rem}.assignment-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.assignment-card__header h3{font-size:1.05rem;margin:0}.assignment-card__desc{color:var(--color-text-muted);font-size:.9rem;margin-bottom:.75rem}.assignment-card__notice{margin-top:.75rem;font-size:.85rem}.assignment-card__actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.assignment-form,.assignment-submit-form,.assignment-review-form{margin-top:.5rem}.assignment-submit-form,.assignment-review-form{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.assignment-status{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;font-size:.72rem;font-weight:700;white-space:nowrap}.assignment-status--pending{background:#fef3c7;color:#92400e}.assignment-status--submitted{background:#dbeafe;color:#1e40af}.assignment-status--reviewed{background:#dcfce7;color:#166534}.assignment-status--cancelled{background:#f3f4f6;color:#4b5563}.assignment-status--overdue,.agenda-status--overdue{background:#ef44441f;color:#b91c1c;border:1px solid rgba(239,68,68,.35)}.assignment-status--submitted-late,.agenda-status--submitted-late{background:#f59e0b24;color:#92400e;border:1px solid rgba(245,158,11,.35)}.assignment-status-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.assignment-warning,.agenda-event-warning{margin:.4rem 0 0;font-size:.85rem;color:#b45309;font-weight:600}.assignment-file-block{margin-top:.85rem;padding:.85rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-white)}.assignment-file-block strong{display:block;font-size:.82rem;margin-bottom:.35rem}.assignment-file-name{font-size:.85rem;color:var(--color-text-muted);margin:0 0 .65rem;word-break:break-word}.assignment-material{background:var(--color-primary-light)}.assignment-submission{background:#f8fafc}.agenda-page{display:grid;gap:1.5rem}.agenda-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.agenda-summary-card{display:flex;flex-direction:column;gap:.35rem;padding:1rem 1.1rem}.agenda-summary-card span{font-size:.82rem;color:var(--color-text-muted)}.agenda-summary-card strong{font-size:1.6rem;line-height:1}.agenda-summary-card--overdue strong{color:#b91c1c}.agenda-filters{display:flex;flex-wrap:nowrap;gap:.5rem;overflow-x:auto;padding-bottom:.25rem}.agenda-filter-button{flex:0 0 auto;border:1px solid var(--color-border);background:var(--color-white);color:var(--color-text);border-radius:999px;padding:.45rem .9rem;font-size:.82rem;font-weight:600;cursor:pointer;font-family:inherit}.agenda-filter-button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.agenda-month{padding:1rem;overflow:hidden}.agenda-month__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.agenda-month__header h2{margin:0;font-size:1.15rem;text-transform:capitalize}.agenda-month__nav{display:flex;align-items:center;gap:.35rem}.agenda-month__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem}.agenda-month__weekday{text-align:center;font-size:.72rem;font-weight:700;color:var(--color-text-muted);padding:.35rem 0}.agenda-month__day{min-height:92px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-white);padding:.45rem;text-align:left;cursor:pointer;font-family:inherit;display:flex;flex-direction:column;gap:.35rem}.agenda-month__day.outside{opacity:.45;background:#fafafa}.agenda-month__day.past-day{background:#22c55e0b;border-color:#22c55e2e}.agenda-month__day.past-day .agenda-month__day-number{color:#166534}.agenda-month__day.past-day:hover{background:#22c55e17;border-color:#22c55e52}.agenda-month__day.past-day.today{background:#4f46e50f}.agenda-month__day.today{background:#4f46e50f;border-color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary)}.agenda-month__day.selected{background:var(--color-primary-light);border-color:var(--color-primary)}.agenda-month__day-number{font-size:.82rem;font-weight:700;color:var(--color-text)}.agenda-month__events{display:flex;flex-direction:column;gap:.2rem;width:100%}.agenda-month__event{display:block;width:100%;padding:.12rem .3rem;border-radius:999px;font-size:.64rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agenda-month__event--class{background:#dbeafe;color:#1e40af}.agenda-month__event--assignment{background:#ffedd5;color:#9a3412}.agenda-month__event--overdue{background:#ef44441f;color:#991b1b;border:1px solid rgba(239,68,68,.3)}.agenda-month__event--submitted-late{background:#f59e0b24;color:#92400e;border:1px solid rgba(245,158,11,.35)}.agenda-month__more{font-size:.64rem;font-weight:700;color:var(--color-text-muted)}.agenda-selected-day{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-white)}.agenda-selected-day h2{margin:0;font-size:1rem}.agenda-timeline{display:grid;gap:1.5rem}.agenda-day-group{display:grid;gap:.85rem}.agenda-day-heading{font-size:1rem;margin:0;padding-bottom:.35rem;border-bottom:1px solid var(--color-border)}.agenda-day-events{display:grid;gap:.85rem}.agenda-event-card{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-white);box-shadow:var(--shadow-sm)}.agenda-event-card--class{border-left:4px solid #2563eb}.agenda-event-card--assignment{border-left:4px solid #d97706}.agenda-event-card--overdue{border-left-color:#ef4444}.agenda-month__event--past{background:#22c55e24;color:#166534;border:1px solid rgba(34,197,94,.35)}.agenda-event-card--past{background:#22c55e0f;border-left-color:#22c55e}.agenda-status--past{background:#22c55e24;color:#166534;border:1px solid rgba(34,197,94,.35)}.agenda-past-section{margin-top:2rem}.agenda-past-heading{font-size:1.1rem;color:#166534;margin-bottom:1rem}.agenda-event-warning--past{color:#166534}.agenda-event-main{flex:1 1 280px;min-width:0}.agenda-event-main h3{font-size:1rem;margin:.35rem 0}.agenda-event-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .85rem;font-size:.82rem;color:var(--color-text-muted);margin:.15rem 0}.agenda-event-desc{margin:.5rem 0 0;font-size:.88rem;color:var(--color-text)}.agenda-event-time{font-weight:700;color:var(--color-text)}.agenda-event-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.agenda-event-badge{display:inline-flex;align-items:center;padding:.15rem .55rem;border-radius:999px;font-size:.72rem;font-weight:700}.agenda-event-badge--class{background:#dbeafe;color:#1e40af}.agenda-event-badge--assignment{background:#ffedd5;color:#9a3412}.agenda-status{display:inline-flex;align-items:center;padding:.15rem .5rem;border-radius:999px;font-size:.72rem;font-weight:700}.agenda-status--pending{background:#fef3c7;color:#92400e}.agenda-status--submitted{background:#dbeafe;color:#1e40af}.agenda-status--reviewed{background:#dcfce7;color:#166534}.agenda-status--cancelled{background:#f3f4f6;color:#4b5563}.agenda-status--scheduled{background:#dbeafe;color:#1e40af}.agenda-status--completed{background:#dcfce7;color:#166534}.classroom-panel__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.classroom-panel__header h2{margin:0}.classroom-panel__link{font-size:.82rem;font-weight:600}.classroom-documents-list{list-style:none;display:grid;gap:.75rem}.classroom-documents-list__item{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border)}.classroom-documents-list__item:last-child{border-bottom:none;padding-bottom:0}.classroom-documents-list__item strong{display:block;font-size:.92rem;margin-bottom:.2rem}.classroom-documents-list__item p{font-size:.8rem;margin:0}.messages-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:1rem;min-height:560px}.messages-sidebar h2,.messages-chat-header h2{font-size:1.05rem;margin-bottom:.75rem}.messages-sidebar__list{display:grid;gap:.5rem;max-height:520px;overflow-y:auto}.messages-conversation{width:100%;text-align:left;padding:.85rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-white);cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}.messages-conversation:hover{border-color:var(--color-primary);box-shadow:var(--shadow)}.messages-conversation.active{border-color:var(--color-primary);background:var(--color-primary-light)}.messages-conversation__top{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.35rem}.messages-conversation__preview{font-size:.85rem;color:var(--color-text-muted);margin-bottom:.25rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.messages-conversation__time{font-size:.75rem;color:var(--color-text-muted)}.messages-unread-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 .4rem;border-radius:999px;background:var(--color-primary);color:#fff;font-size:.72rem;font-weight:700}.messages-chat{display:flex;flex-direction:column;min-height:560px}.messages-chat-header{padding-bottom:.75rem;border-bottom:1px solid var(--color-border);margin-bottom:.75rem}.messages-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;padding-right:.25rem;margin-bottom:1rem;min-height:360px}.message-bubble{max-width:78%;padding:.75rem .9rem;border-radius:var(--radius);box-shadow:var(--shadow)}.message-bubble p{margin-bottom:.35rem;word-break:break-word}.message-bubble span{font-size:.72rem;color:var(--color-text-muted)}.message-bubble.mine{align-self:flex-end;background:var(--color-primary-light);border:1px solid rgba(79,70,229,.15)}.message-bubble.other{align-self:flex-start;background:var(--color-white);border:1px solid var(--color-border)}.messages-form{display:flex;gap:.75rem;padding-top:.75rem;border-top:1px solid var(--color-border)}.messages-form input{flex:1;padding:.65rem .85rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:inherit}@media(max-width:900px){.messages-layout{grid-template-columns:1fr}.messages-sidebar__list{max-height:240px}.messages-chat{min-height:480px}.messages-list{min-height:280px}.agenda-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.agenda-event-card{flex-direction:column}.agenda-month{overflow-x:auto}.agenda-month__grid{min-width:640px}.agenda-month__day{min-height:78px}}.notification-bell{position:relative;display:inline-flex;align-items:center}.notification-bell--pulse .notification-bell__button{animation:notification-pulse 1.2s ease}@keyframes notification-pulse{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}.notification-bell__button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-white);cursor:pointer;font-size:1.1rem;line-height:1}.notification-bell__badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--color-error);color:#fff;font-size:.68rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.notification-dropdown{position:absolute;top:calc(100% + .5rem);right:0;width:min(360px,calc(100vw - 2rem));max-height:420px;overflow:hidden;background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:300}.notification-dropdown__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1rem;border-bottom:1px solid var(--color-border)}.notification-dropdown__header h3{font-size:.95rem}.notification-dropdown__error{padding:.75rem 1rem;color:var(--color-error);font-size:.82rem}.notification-dropdown__empty{padding:1.25rem 1rem;color:var(--color-text-muted);font-size:.9rem}.notification-dropdown__list{list-style:none;max-height:340px;overflow-y:auto}.notification-item{border-bottom:1px solid var(--color-border)}.notification-item:last-child{border-bottom:none}.notification-item.unread{background:var(--color-primary-light)}.notification-item__content{width:100%;text-align:left;padding:.85rem 1rem .35rem;border:none;background:transparent;cursor:pointer;font-family:inherit}.notification-item__title{display:block;font-size:.9rem;font-weight:700;color:var(--color-text);margin-bottom:.2rem}.notification-item__message{display:block;font-size:.82rem;color:var(--color-text-muted);margin-bottom:.25rem}.notification-item__date{display:block;font-size:.72rem;color:var(--color-text-muted)}.notification-item__actions{display:flex;gap:.25rem;padding:0 .75rem .75rem}@media(max-width:768px){.form-grid{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:stretch}.page-header .btn,.page-header .btn-block,.auth-card .btn-block{width:100%}}@media(max-width:640px){.navbar__inner{flex-direction:column;height:auto;padding:.75rem 0}.navbar__links{width:100%;justify-content:center}.hero{padding:2rem 0 3rem}.main-content{padding:1.5rem 1rem 2.5rem}.classroom__row,.class-card__row{flex-direction:column;align-items:flex-start}.notification-dropdown{position:fixed;top:auto;right:1rem;left:1rem;width:auto;max-height:min(70vh,420px)}.agenda-summary-grid{grid-template-columns:1fr}.dashboard-stats-grid,.dashboard-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.agenda-event-actions{width:100%}.agenda-selected-day{flex-direction:column;align-items:flex-start}.agenda-month__grid{min-width:560px}.agenda-month__day{min-height:70px;padding:.35rem}}@media(max-width:420px){.dashboard-stats-grid,.dashboard-quick-grid{grid-template-columns:1fr}}.classroom-workspace{display:flex;flex-direction:column;gap:1rem;padding:1rem}.classroom-workspace__toolbar{display:flex;flex-direction:column;gap:.75rem}.classroom-mode-tabs{display:flex;gap:8px;background:var(--color-surface-soft);padding:6px;border-radius:999px;width:fit-content;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.classroom-mode-tab{border:none;border-radius:999px;padding:10px 16px;font-family:inherit;font-weight:700;color:var(--color-text-muted);background:transparent;cursor:pointer;white-space:nowrap;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.classroom-mode-tab:hover:not(.active){color:var(--color-primary);background:#4f46e514}.classroom-mode-tab.active{background:var(--color-primary);color:#fff;box-shadow:0 4px 14px #4f46e547}.classroom-mode-description{margin:0;font-size:.92rem;color:var(--color-text-muted);line-height:1.5}.classroom-workspace .classroom-stage{position:relative;width:100%;min-height:680px;height:min(72vh,760px);overflow:hidden;border-radius:24px}.classroom-live-layout{width:100%;height:100%;min-height:680px}.classroom-video-shell--main,.classroom-stage--live .classroom-video-shell--main,.classroom-stage--call .classroom-video-shell--main,.classroom-video-shell--main .bridgecall-room,.classroom-video-shell--main .bridgecall-room__container,.classroom-video-shell--main .bridgecall-room__container iframe{height:100%;min-height:680px}.classroom-whiteboard-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;min-height:620px;height:100%}.classroom-whiteboard-main{min-height:620px;background:#fff;border-radius:20px;overflow:hidden}.classroom-whiteboard-main .whiteboard-room{min-height:620px;height:100%}.classroom-mini-call{min-height:260px;max-height:360px;background:#020617;border-radius:20px;overflow:hidden;display:flex;flex-direction:column}.classroom-video-shell--mini{min-height:0;flex:1;height:100%;border-radius:0;border:none}.classroom-video-shell--mini .bridgecall-room,.classroom-video-shell--mini,.classroom-video-shell--mini .bridgecall-room__container,.classroom-video-shell--mini .bridgecall-room__container iframe,.classroom-mini-call .classroom-video-shell,.classroom-mini-call .bridgecall-room,.classroom-mini-call .bridgecall-room__container,.classroom-mini-call .bridgecall-room__container iframe{min-height:0;height:100%}.classroom-annotation-layout{position:relative;width:100%;height:100%;min-height:680px;display:flex;flex-direction:column;gap:.75rem}.classroom-annotation-notice{margin:0;padding:.65rem 1rem;border-radius:999px;background:var(--color-primary-light, #eef2ff);color:var(--color-primary);font-size:.88rem;font-weight:700;text-align:center}.classroom-video-shell--annotation{position:relative;flex:1;width:100%;height:100%;min-height:680px}.classroom-video-shell--annotation .bridgecall-room,.classroom-video-shell--annotation .bridgecall-room__container,.classroom-video-shell--annotation .bridgecall-room__container iframe{height:100%;min-height:680px}.classroom-quick-actions{display:flex;flex-direction:column;gap:.5rem}.classroom-workspace__tabs{display:flex;flex-wrap:wrap;gap:.5rem}.classroom-workspace__tab{border:1px solid var(--color-border);background:var(--color-white);color:var(--color-text-muted);border-radius:var(--radius-sm);padding:.55rem 1rem;font-family:inherit;font-weight:700;cursor:pointer;transition:all .15s ease}.classroom-workspace__tab:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light)}.classroom-workspace__tab.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-white)}.classroom-stage__call,.classroom-stage__whiteboard{min-width:0}.classroom-stage--call{grid-template-columns:1fr}.classroom-stage--call .classroom-stage__whiteboard{display:none}.classroom-stage--call .classroom-video-shell,.classroom-stage--call .bridgecall-room,.classroom-stage--call .bridgecall-room__container,.classroom-stage--call .bridgecall-room__container iframe{min-height:680px;height:100%}.classroom-stage--whiteboard{grid-template-columns:1fr}.classroom-stage--whiteboard .classroom-stage__whiteboard{min-height:640px}.classroom-stage--whiteboard .classroom-stage__call{position:absolute;right:1rem;bottom:1rem;z-index:20;width:min(360px,38vw);height:220px;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-lg);background:#000}.classroom-stage--whiteboard .classroom-video-shell,.classroom-stage--whiteboard .bridgecall-room,.classroom-stage--whiteboard .bridgecall-room__container{height:100%;min-height:0}.classroom-stage--split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch}.classroom-stage--split .classroom-video-shell,.classroom-stage--split .bridgecall-room,.classroom-stage--split .classroom-stage__whiteboard .whiteboard-room{min-height:560px;height:100%}.classroom-stage--annotation{grid-template-columns:1fr}.classroom-stage--annotation .classroom-stage__whiteboard{display:none}.classroom-stage--annotation .classroom-stage__call{position:relative;min-height:640px}.classroom-stage--annotation .classroom-video-shell,.classroom-stage--annotation .bridgecall-room,.classroom-stage--annotation .bridgecall-room__container,.classroom-stage--annotation .bridgecall-room__container iframe{min-height:680px;height:100%}.classroom-annotation-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:auto}.classroom-annotation-layer .whiteboard-room{height:100%}.whiteboard-room{display:flex;flex-direction:column;gap:.75rem;min-height:620px}.whiteboard-room--transparent{position:absolute;top:0;right:0;bottom:0;left:0;min-height:0;height:100%;pointer-events:none}.whiteboard-room--transparent .whiteboard-toolbar{position:absolute;top:.75rem;left:.75rem;right:.75rem;z-index:5;pointer-events:auto;background:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.whiteboard-room--transparent .whiteboard-canvas-shell{position:absolute;top:0;right:0;bottom:0;left:0;min-height:0;border:0;border-radius:0;background:transparent;box-shadow:none;pointer-events:none}.whiteboard-room--transparent .whiteboard-canvas{background:transparent}.whiteboard-room--compact .whiteboard-toolbar{padding:.5rem}.whiteboard-room--compact .whiteboard-toolbar__group{gap:.35rem}.whiteboard-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-white)}.whiteboard-toolbar__group{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.5rem}.whiteboard-toolbar label{font-size:.82rem;font-weight:700;color:var(--color-text-muted)}.whiteboard-toolbar input[type=range]{width:130px}.whiteboard-toolbar input[type=color]{width:42px;height:34px;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:transparent;cursor:pointer}.whiteboard-readonly-badge{display:inline-flex;align-items:center;padding:.45rem .75rem;border-radius:999px;background:var(--color-primary-light);color:var(--color-primary);font-size:.82rem;font-weight:700}.whiteboard-canvas-shell{position:relative;flex:1;min-height:560px;border:1px solid var(--color-border);border-radius:var(--radius);background:linear-gradient(rgba(15,23,42,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.035) 1px,transparent 1px),#fff;background-size:24px 24px;overflow:hidden;box-shadow:inset 0 0 0 1px #0f172a05}.whiteboard-canvas-shell--transparent{border:0;border-radius:0;background:transparent;box-shadow:none}.whiteboard-canvas{width:100%;height:100%;display:block;touch-action:none;cursor:crosshair}.whiteboard-canvas--readonly{cursor:default}.whiteboard-canvas--passthrough{pointer-events:none}.whiteboard-room--transparent .whiteboard-canvas:not(.whiteboard-canvas--passthrough){pointer-events:auto}.whiteboard-status{margin:0;font-size:.82rem;color:var(--color-text-muted)}@media(max-width:1000px){.classroom-stage--split{grid-template-columns:1fr}.classroom-stage--whiteboard .classroom-stage__call{width:260px;height:160px;right:.75rem;bottom:.75rem}}@media(max-width:900px){.classroom-workspace .classroom-stage,.classroom-live-layout,.classroom-video-shell--main,.classroom-video-shell--annotation,.classroom-stage--live .classroom-video-shell--main,.classroom-stage--call .classroom-video-shell--main,.classroom-video-shell--main .bridgecall-room,.classroom-video-shell--main .bridgecall-room__container,.classroom-video-shell--main .bridgecall-room__container iframe,.classroom-video-shell--annotation .bridgecall-room,.classroom-video-shell--annotation .bridgecall-room__container,.classroom-video-shell--annotation .bridgecall-room__container iframe{min-height:520px;height:520px}.classroom-whiteboard-layout{grid-template-columns:1fr}.classroom-whiteboard-main{order:1;min-height:460px}.classroom-mini-call{order:2;max-height:220px;min-height:200px}.classroom-mode-tabs{width:100%}.whiteboard-room{min-height:500px}.whiteboard-canvas-shell{min-height:420px}.whiteboard-toolbar{align-items:flex-start;justify-content:flex-start}}@media(max-width:600px){.classroom-workspace .classroom-stage,.classroom-live-layout,.classroom-video-shell--main,.classroom-video-shell--annotation,.classroom-stage--live .classroom-video-shell--main,.classroom-stage--call .classroom-video-shell--main,.classroom-video-shell--main .bridgecall-room,.classroom-video-shell--main .bridgecall-room__container,.classroom-video-shell--main .bridgecall-room__container iframe,.classroom-video-shell--annotation .bridgecall-room,.classroom-video-shell--annotation .bridgecall-room__container,.classroom-video-shell--annotation .bridgecall-room__container iframe{min-height:460px;height:460px}}@media(max-width:640px){.classroom-workspace{padding:.75rem}.classroom-mode-tab{flex:1 1 auto;text-align:center}.whiteboard-toolbar__group{width:100%}.whiteboard-toolbar input[type=range]{flex:1;width:100%}}.private-shell{min-height:100vh;background:var(--color-bg)}.private-shell__overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:190;border:none;background:#0f172a66;cursor:pointer}.private-sidebar{position:fixed;top:0;left:0;z-index:200;display:flex;flex-direction:column;width:280px;height:100vh;padding:20px;background:var(--color-surface);border-right:1px solid var(--color-border);overflow-y:auto}.private-brand{display:flex;align-items:center;gap:12px;margin-bottom:28px;text-decoration:none;color:inherit}.private-brand--compact{justify-content:center}.private-brand__icon{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:#fff;font-weight:800;font-size:1rem;box-shadow:0 4px 14px #4f46e540}.private-brand__icon--sm{width:34px;height:34px;font-size:.85rem}.private-brand__text{display:flex;flex-direction:column;gap:2px;min-width:0}.private-brand__text strong{font-size:1.05rem;font-weight:800;color:var(--color-text);line-height:1.2}.private-brand__text span{font-size:.78rem;color:var(--color-text-muted)}.private-nav{display:flex;flex-direction:column;gap:6px;flex:1}.private-nav-link{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;color:var(--color-text-muted);font-weight:700;font-size:.92rem;text-decoration:none;transition:background var(--transition),color var(--transition),box-shadow var(--transition)}.private-nav-link__icon{width:1.25rem;text-align:center;font-size:1rem;line-height:1}.private-nav-link:hover{background:var(--color-surface-soft);color:var(--color-text)}.private-nav-link.active{background:var(--color-primary-soft);color:var(--color-primary);box-shadow:inset 0 0 0 1px #4f46e51f}.private-user-card{margin-top:auto;padding-top:16px;border-top:1px solid var(--color-border)}.private-user-card__profile{display:flex;align-items:center;gap:12px;margin-bottom:12px}.private-user-card__info{display:flex;flex-direction:column;gap:2px;min-width:0}.private-user-card__info strong{font-size:.92rem;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.private-user-card__info span{font-size:.78rem;color:var(--color-text-muted)}.private-user-card__logout{justify-content:center}.private-avatar{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:50%;background:var(--color-primary-soft);color:var(--color-primary-dark);font-weight:800;font-size:.95rem}.private-avatar--sm{width:36px;height:36px;font-size:.85rem}.private-main{min-height:100vh;margin-left:280px;display:flex;flex-direction:column}.private-topbar{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px;padding:12px 24px;background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border)}.private-topbar__left,.private-topbar__right{display:flex;align-items:center;gap:12px;min-width:0}.private-topbar__right{flex-shrink:0}.private-topbar__title{margin:0;font-size:1.25rem;font-weight:800;color:var(--color-text);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.private-topbar__brand-mobile{display:none;align-items:center;gap:8px;font-size:.95rem}.private-topbar__brand-mobile strong{font-weight:800;color:var(--color-text)}.private-topbar__user{display:flex;align-items:center;gap:10px}.private-topbar__user-text{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.private-topbar__user-text strong{font-size:.88rem;color:var(--color-text);max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-menu-button{display:none;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);color:var(--color-text);font-weight:700;font-size:.85rem;font-family:inherit;cursor:pointer;transition:background var(--transition),border-color var(--transition)}.mobile-menu-button:hover{background:var(--color-surface-soft);border-color:#4f46e533}.private-content{flex:1;padding:24px;width:min(100%,1180px);margin-inline:auto}.auth-shell{min-height:100vh;display:flex;flex-direction:column;background:var(--color-bg)}.auth-shell__header{display:flex;justify-content:center;padding:24px 16px 8px}.auth-shell__main{flex:1;display:flex;flex-direction:column;align-items:center;padding:0 16px 32px}@media(min-width:900px){.mobile-menu-button,.private-topbar__brand-mobile{display:none!important}.private-shell__overlay{display:none}}@media(max-width:899px){.private-sidebar{transform:translate(-100%);transition:transform var(--transition);box-shadow:var(--shadow-lg)}.private-sidebar.is-open{transform:translate(0)}.private-main{margin-left:0}.mobile-menu-button,.private-topbar__brand-mobile{display:inline-flex}.private-topbar__title,.private-topbar__user-text,.private-topbar__logout{display:none}.private-content{padding:16px}.private-topbar{padding:12px 16px}}@media(max-width:480px){.private-topbar__right .notification-bell{margin-left:auto}}.workspace-page{display:grid;gap:1.5rem}.workspace-section-title{margin:0;font-size:1.05rem;font-weight:800;color:var(--color-text)}.workspace-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.workspace-toolbar__action{flex-shrink:0}.filter-pills{display:flex;flex-wrap:wrap;gap:.5rem}.filter-pill,.agenda-filter-button{flex:0 0 auto;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);border-radius:999px;padding:.5rem .95rem;font-size:.85rem;font-weight:700;cursor:pointer;font-family:inherit;transition:background var(--transition),color var(--transition),border-color var(--transition)}.filter-pill:hover,.agenda-filter-button:hover{background:var(--color-surface-soft);color:var(--color-text)}.filter-pill.active,.agenda-filter-button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.class-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem}.class-card{display:flex;flex-direction:column;gap:.75rem;padding:1.25rem;border-radius:20px;background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition),transform var(--transition)}.class-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.class-card--scheduled{border-top:3px solid var(--color-primary)}.class-card--completed{border-top:3px solid var(--color-success)}.class-card--cancelled{border-top:3px solid var(--color-danger);opacity:.92}.class-card--past{background:var(--color-surface-soft)}.class-card--past .class-card__title{color:var(--color-text-muted)}.class-card__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.class-card__date{font-size:.78rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.class-card__title{margin:0;font-size:1.1rem;font-weight:800;color:var(--color-text);line-height:1.25}.class-card__desc{margin:0;font-size:.88rem;color:var(--color-text-muted);line-height:1.5}.class-card__meta{display:grid;gap:.45rem;margin:0}.class-card__meta-row{display:flex;justify-content:space-between;gap:.75rem;font-size:.85rem}.class-card__meta-row dt{color:var(--color-text-muted);font-weight:600}.class-card__meta-row dd{margin:0;color:var(--color-text);font-weight:600;text-align:right}.class-card__past-note{margin:0;font-size:.82rem}.class-card__actions{display:grid;gap:.5rem;margin-top:auto;padding-top:.5rem}.form-section{border:none;margin:0;padding:0 0 1rem}.form-section__title{margin:0 0 .85rem;font-size:.92rem;font-weight:800;color:var(--color-primary-dark)}.form-actions{display:grid;gap:.65rem;margin-top:.5rem}.file-input{padding:.75rem;background:var(--color-surface-soft);border-style:dashed}.upload-card{max-width:720px}.assignment-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.assignment-card{display:grid;gap:.85rem;padding:1.25rem;border-radius:var(--radius-lg)}.assignment-card--submitted{border:2px solid rgba(79,70,229,.35);background:linear-gradient(180deg,var(--color-surface) 0%,var(--color-primary-soft) 100%)}.assignment-card--overdue{border-color:#ef444459;background:var(--color-danger-soft)}.assignment-card--pending{border-left:4px solid var(--color-warning)}.assignment-card--reviewed{border-left:4px solid var(--color-success)}.assignment-card__review-banner{margin:0;padding:.45rem .75rem;border-radius:999px;background:var(--color-primary-soft);color:var(--color-primary-dark);font-size:.78rem;font-weight:800;text-align:center}.assignment-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.assignment-card__header h3{margin:0;font-size:1.05rem;font-weight:800}.assignment-card__desc{margin:0;color:var(--color-text-muted);font-size:.9rem;line-height:1.5}.assignment-meta{display:flex;flex-wrap:wrap;gap:.35rem 1rem;font-size:.82rem;color:var(--color-text-muted)}.assignment-feedback{padding:.85rem 1rem;border-radius:var(--radius-md);background:var(--color-success-soft);border:1px solid rgba(16,185,129,.28)}.assignment-feedback strong{display:block;margin-bottom:.35rem;font-size:.82rem;color:#047857}.assignment-feedback p{margin:0;font-size:.9rem;color:var(--color-text);line-height:1.5}.documents-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.document-card{display:flex;flex-direction:column;gap:.65rem;padding:1.25rem;border-radius:var(--radius-lg);transition:box-shadow var(--transition),transform var(--transition)}.document-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.document-card__icon{font-size:2rem;line-height:1}.document-card h3{margin:0;font-size:1.05rem;font-weight:800}.document-card__desc{margin:0;font-size:.88rem;color:var(--color-text-muted);line-height:1.5}.document-card__meta{display:grid;gap:.25rem;font-size:.82rem;color:var(--color-text-muted)}.document-card__actions{display:grid;gap:.5rem;margin-top:auto;padding-top:.5rem}.agenda-month{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.agenda-month__event--class{background:var(--color-primary-soft);color:var(--color-primary-dark)}.agenda-month__event--assignment{background:var(--color-warning-soft);color:#b45309}.agenda-month__event--overdue{background:var(--color-danger-soft);color:#b91c1c}.agenda-month__event--past{background:var(--color-surface-soft);color:var(--color-text-muted)}.agenda-month__day.today{background:var(--color-primary-soft);border-color:var(--color-primary);box-shadow:inset 0 0 0 2px #4f46e526}.agenda-month__day.selected{background:var(--color-surface);border-color:var(--color-primary);box-shadow:0 0 0 2px #4f46e533}.agenda-event-card{border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}@media(max-width:768px){.workspace-toolbar{flex-direction:column;align-items:stretch}.workspace-toolbar__action{width:100%}.filter-pills{overflow-x:auto;flex-wrap:nowrap;padding-bottom:.15rem}.class-card__actions .btn,.document-card__actions .btn,.assignment-card__actions .btn,.form-actions .btn{width:100%}.assignment-board{grid-template-columns:1fr}.agenda-month{overflow-x:auto}.agenda-month__grid{min-width:640px}}:root{--amb-blue: var(--color-primary, #4f46e5);--amb-blue-dark: var(--color-primary-dark, #3730a3);--amb-blue-light: var(--color-primary-soft, #eef2ff);--amb-mint: var(--color-secondary, #06b6d4);--amb-mint-soft: var(--color-secondary-soft, #ecfeff);--amb-orange: var(--color-warning, #f59e0b);--amb-orange-soft: var(--color-warning-soft, #fffbeb);--amb-white: var(--color-surface, #ffffff);--amb-gray-50: var(--color-bg, #f6f8fc);--amb-gray-100: var(--color-surface-soft, #f8fafc);--amb-gray-500: var(--color-text-muted, #64748b);--amb-gray-800: var(--color-text, #0f172a);--amb-shadow: var(--shadow-sm, 0 4px 14px rgba(15, 23, 42, .06));--amb-shadow-lg: var(--shadow-lg, 0 24px 60px rgba(15, 23, 42, .14));--amb-radius: var(--radius-md, 16px);--amb-radius-sm: var(--radius-sm, 10px);--amb-header-h: 72px;--amb-max: 1180px;--amb-transition: var(--transition, .18s ease)}.amb-page{background:var(--amb-white);color:var(--amb-gray-800);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;-webkit-font-smoothing:antialiased}.amb-page a{transition:color var(--amb-transition),background var(--amb-transition),transform var(--amb-transition),box-shadow var(--amb-transition)}.amb-container{width:min(100% - 32px,var(--amb-max));margin-inline:auto;padding:0}.amb-header{position:sticky;top:0;z-index:200;background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border, #e2e8f0)}.amb-header__inner{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:var(--amb-header-h);gap:1rem}.amb-logo{display:inline-flex;align-items:center;gap:.6rem;font-weight:800;font-size:1.15rem;color:var(--amb-blue);text-decoration:none}.amb-logo--light{color:var(--amb-white)}.amb-logo__mark{display:grid;place-items:center;width:36px;height:36px;border-radius:var(--amb-radius-sm);background:linear-gradient(135deg,var(--amb-blue),var(--amb-mint));color:#fff;font-size:1rem;box-shadow:0 4px 14px #4f46e540}.amb-header__toggle{display:none;flex-direction:column;gap:5px;padding:.5rem;background:none;border:none;cursor:pointer}.amb-header__toggle span{display:block;width:22px;height:2px;background:var(--amb-blue);border-radius:2px}.amb-nav{display:flex;align-items:center;gap:.35rem 1rem;flex-wrap:wrap;justify-content:flex-end}.amb-nav a{color:var(--amb-gray-800);text-decoration:none;font-size:.88rem;font-weight:600;padding:.35rem .65rem;border-radius:999px}.amb-nav a:hover{color:var(--amb-blue);background:var(--amb-blue-light)}.amb-nav__login{color:var(--amb-gray-500)!important;font-size:.82rem!important}.amb-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:.7rem 1.35rem;border-radius:999px;font-weight:700;font-size:.92rem;text-decoration:none;border:2px solid transparent;cursor:pointer;font-family:inherit;transition:all var(--amb-transition)}.amb-btn:hover{transform:translateY(-1px);box-shadow:var(--amb-shadow)}.amb-btn--primary{background:var(--amb-blue);color:#fff;box-shadow:0 4px 14px #4f46e538}.amb-btn--primary:hover{color:#fff;background:var(--amb-blue-dark)}.amb-btn--outline{background:#fff;color:var(--amb-blue);border-color:var(--color-border, #e2e8f0)}.amb-btn--outline:hover{color:var(--amb-blue-dark);border-color:#4f46e540;background:var(--amb-blue-light)}.amb-btn--ghost{background:var(--amb-blue-light);color:var(--amb-blue)}.amb-btn--ghost:hover{color:var(--amb-blue-dark);background:#e0e7ff}.amb-btn--whatsapp{background:#25d366;color:#fff}.amb-btn--whatsapp:hover{color:#fff;background:#1fb855}.amb-btn--sm{padding:.5rem 1rem;font-size:.82rem}.amb-btn--lg{padding:.9rem 1.5rem;font-size:1rem}.amb-btn--block{width:100%}.amb-hero{padding:3.5rem 0 4rem;background:radial-gradient(circle at 90% 10%,rgba(6,182,212,.12),transparent 40%),radial-gradient(circle at 10% 90%,rgba(79,70,229,.08),transparent 35%),linear-gradient(180deg,var(--amb-gray-50) 0%,var(--amb-white) 100%)}.amb-hero__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:2.5rem;align-items:center}.amb-eyebrow{display:inline-block;margin-bottom:.75rem;padding:5px 12px;border-radius:999px;background:var(--amb-mint-soft);color:#0e7490;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.amb-eyebrow--light{background:#ffffff26;color:#fff}.amb-hero h1{font-size:clamp(2rem,4.5vw,3rem);line-height:1.08;color:var(--amb-gray-800);margin-bottom:1rem;font-weight:800}.amb-hero__subtitle{font-size:clamp(1rem,2vw,1.12rem);color:var(--amb-gray-500);margin-bottom:1.5rem;max-width:560px}.amb-hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}.amb-hero__tags{display:flex;flex-wrap:wrap;gap:.5rem 1rem;list-style:none;font-size:.82rem;color:var(--amb-gray-500)}.amb-hero__tags li:before{content:"✓ ";color:var(--amb-mint);font-weight:700}.amb-mockup{background:#fff;border-radius:var(--radius-lg, 24px);box-shadow:var(--amb-shadow-lg);border:1px solid var(--color-border, #e2e8f0);overflow:hidden;transform:perspective(1000px) rotateY(-3deg) rotateX(2deg);transition:transform var(--amb-transition)}.amb-mockup:hover{transform:perspective(1000px) rotateY(0) rotateX(0)}.amb-mockup__topbar{display:flex;align-items:center;gap:.4rem;padding:.75rem 1rem;background:var(--amb-gray-100);border-bottom:1px solid var(--color-border, #e2e8f0)}.amb-mockup__dot{width:10px;height:10px;border-radius:50%}.amb-mockup__dot--red{background:#f87171}.amb-mockup__dot--yellow{background:#fbbf24}.amb-mockup__dot--green{background:#34d399}.amb-mockup__title{margin-left:.5rem;font-size:.78rem;font-weight:700;color:var(--amb-gray-500)}.amb-mockup__body{padding:1.25rem}.amb-mockup__label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--amb-gray-500);margin-bottom:.35rem}.amb-mockup__class{color:var(--amb-blue);font-size:1.1rem;margin-bottom:1rem;font-weight:700}.amb-mockup__row{display:flex;justify-content:space-between;padding:.45rem 0;border-bottom:1px solid var(--amb-gray-100);font-size:.88rem}.amb-mockup__row span{color:var(--amb-gray-500)}.amb-mockup__body .amb-btn{margin-top:1rem}.amb-mockup__materials{margin-top:1rem;padding:.85rem;background:var(--amb-blue-light);border-radius:var(--amb-radius-sm)}.amb-mockup__materials p{font-size:.78rem;font-weight:700;color:var(--amb-blue);margin-bottom:.5rem}.amb-mockup__materials ul{list-style:none;font-size:.82rem;color:var(--amb-gray-500)}.amb-mockup__materials li{padding:.2rem 0}.amb-mockup__materials li:before{content:"📄 "}.amb-section{padding:4rem 0}.amb-section--dark{background:linear-gradient(135deg,var(--amb-blue),var(--amb-blue-dark));color:#fff}.amb-section__header{text-align:center;max-width:760px;margin:0 auto 2.5rem}.amb-section__header h2{font-size:clamp(1.5rem,3.5vw,2.25rem);line-height:1.2;margin-bottom:.75rem;font-weight:800}.amb-section--dark .amb-section__header h2{color:#fff}.amb-section__subtitle{color:var(--amb-gray-500);font-size:1.05rem}.amb-section--dark .amb-section__subtitle{color:#fffc}.amb-section--dark .amb-eyebrow{background:#ffffff1f;color:var(--amb-mint)}.amb-cards-grid{display:grid;gap:1.25rem}.amb-cards-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.amb-cards-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.amb-cards-grid--5{grid-template-columns:repeat(5,minmax(0,1fr))}.amb-info-card{background:#fff;border:1px solid var(--color-border, #e2e8f0);border-radius:var(--radius-lg, 24px);padding:1.5rem;box-shadow:var(--amb-shadow);transition:transform var(--amb-transition),box-shadow var(--amb-transition)}.amb-info-card:hover,.amb-info-card--hover:hover{transform:translateY(-3px);box-shadow:var(--amb-shadow-lg)}.amb-info-card h3{color:var(--amb-blue);margin-bottom:.5rem;font-size:1.05rem;font-weight:700}.amb-info-card p{color:var(--amb-gray-500);font-size:.92rem}.amb-info-card--dark{background:#ffffff14;border-color:#ffffff1f}.amb-info-card--dark h3{color:#fff}.amb-info-card--dark p{color:#ffffffd1}.amb-card{background:#fff;border-radius:var(--radius-lg, 24px);padding:1.75rem;border:1px solid var(--color-border, #e2e8f0);box-shadow:var(--amb-shadow);height:100%;display:flex;flex-direction:column;transition:transform var(--amb-transition),box-shadow var(--amb-transition)}.amb-card:hover{transform:translateY(-3px);box-shadow:var(--amb-shadow-lg)}.amb-card h3{color:var(--amb-blue);margin-bottom:.65rem;font-weight:700}.amb-card--mint h3{color:#0e7490}.amb-card--orange h3{color:#b45309}.amb-card__desc{color:var(--amb-gray-500);margin-bottom:1rem;flex:1}.amb-card__list{list-style:none;margin-bottom:1.25rem}.amb-card__list li{padding:.35rem 0;font-size:.9rem;color:var(--amb-gray-800)}.amb-card__list li:before{content:"✓ ";color:var(--amb-mint);font-weight:700}.amb-card--orange .amb-card__list li:before{color:var(--amb-orange)}.amb-malaga{padding:4rem 0;background:linear-gradient(135deg,#06b6d4 0%,var(--amb-blue) 55%,var(--amb-blue-dark) 100%);color:#fff}.amb-malaga__grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:center}.amb-malaga__content h2{font-size:clamp(1.5rem,3vw,2rem);margin-bottom:1rem;font-weight:800}.amb-malaga__content p{color:#ffffffe0;margin-bottom:.75rem}.amb-malaga__scene{position:relative;height:280px;border-radius:var(--radius-lg, 24px);overflow:hidden;background:linear-gradient(180deg,#67e8f9,#22d3ee 45%,#0891b2);box-shadow:var(--amb-shadow-lg)}.amb-malaga__sun{position:absolute;top:24px;right:32px;width:64px;height:64px;border-radius:50%;background:radial-gradient(circle,#fde68a,#f59e0b);box-shadow:0 0 40px #f59e0b80}.amb-malaga__sea{position:absolute;bottom:0;left:0;right:0;height:38%;background:linear-gradient(180deg,#fff3,#0891b266)}.amb-malaga__city{position:absolute;bottom:28%;left:50%;transform:translate(-50%);padding:.75rem 1.5rem;background:#ffffffeb;border-radius:var(--amb-radius-sm);color:var(--amb-blue);font-weight:800;font-size:1.1rem;box-shadow:var(--amb-shadow)}.amb-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem}.amb-step{text-align:center;padding:1.5rem 1rem;background:var(--amb-gray-50);border-radius:var(--radius-lg, 24px);border:1px solid var(--color-border, #e2e8f0);transition:transform var(--amb-transition)}.amb-step:hover{transform:translateY(-2px)}.amb-step__num{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--amb-blue),var(--amb-mint));color:#fff;font-weight:800;margin-bottom:.75rem}.amb-step h3{color:var(--amb-blue);font-size:1rem;margin-bottom:.4rem;font-weight:700}.amb-step p{font-size:.88rem;color:var(--amb-gray-500)}.amb-price-card{background:#fff;border-radius:var(--radius-lg, 24px);padding:1.75rem;border:1px solid var(--color-border, #e2e8f0);box-shadow:var(--amb-shadow);transition:transform var(--amb-transition),box-shadow var(--amb-transition)}.amb-price-card:hover{transform:translateY(-3px);box-shadow:var(--amb-shadow-lg)}.amb-price-card--featured{border-color:var(--amb-blue);box-shadow:var(--amb-shadow-lg);transform:scale(1.02)}.amb-price-card h3{color:var(--amb-blue);margin-bottom:.35rem;font-weight:700}.amb-price-card__price{font-size:1.5rem;font-weight:800;color:var(--amb-blue);margin-bottom:1rem}.amb-price-card ul{list-style:none;margin-bottom:1.25rem}.amb-price-card li{padding:.35rem 0;font-size:.9rem;color:var(--amb-gray-500)}.amb-price-card li:before{content:"✓ ";color:var(--amb-mint);font-weight:700}.amb-cta-final{padding:4rem 0;background:linear-gradient(135deg,var(--amb-blue-light),var(--amb-mint-soft))}.amb-cta-final__inner{text-align:center;max-width:720px;margin-inline:auto}.amb-cta-final h2{color:var(--amb-gray-800);font-size:clamp(1.5rem,3vw,2.1rem);margin-bottom:.75rem;font-weight:800}.amb-cta-final p{color:var(--amb-gray-500);margin-bottom:1.5rem}.amb-cta-final__actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.amb-footer{background:var(--amb-blue-dark);color:#ffffffd9;padding-top:3rem}.amb-footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2rem;padding-bottom:2rem}.amb-footer h4{color:#fff;margin-bottom:.75rem;font-size:.95rem}.amb-footer__brand p{margin-top:.75rem;font-size:.9rem;line-height:1.6}.amb-footer__links{list-style:none}.amb-footer__links li{margin-bottom:.4rem}.amb-footer__links a{color:#ffffffbf;text-decoration:none;font-size:.88rem}.amb-footer__links a:hover{color:var(--amb-mint)}.amb-footer__bottom{border-top:1px solid rgba(255,255,255,.1);padding:1.25rem 0 1.5rem;text-align:center;font-size:.82rem;color:#ffffff8c}@media(min-width:900px){.amb-hero__grid{gap:3rem}}@media(max-width:1024px){.amb-hero__grid,.amb-malaga__grid{grid-template-columns:1fr}.amb-hero__visual{order:-1;max-width:420px;margin:0 auto}.amb-mockup{transform:none}.amb-cards-grid--4,.amb-cards-grid--5,.amb-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.amb-footer__grid{grid-template-columns:1fr 1fr}}@media(max-width:768px){.amb-header__toggle{display:flex}.amb-nav{display:none;position:absolute;top:var(--amb-header-h);left:0;right:0;flex-direction:column;align-items:stretch;padding:1rem 1.25rem 1.5rem;background:#fff;border-bottom:1px solid var(--color-border, #e2e8f0);box-shadow:var(--amb-shadow-lg)}.amb-nav--open{display:flex}.amb-nav a{padding:.65rem .5rem}.amb-cards-grid--3,.amb-cards-grid--4,.amb-cards-grid--5,.amb-steps,.amb-footer__grid{grid-template-columns:1fr}.amb-price-card--featured{transform:none}.amb-hero__actions .amb-btn,.amb-cta-final__actions .amb-btn{width:100%}}.classroom-pro .classroom-mode-tabs{background:var(--amb-gray-100)}.classroom-pro .classroom-mode-tab.active{background:var(--amb-blue);box-shadow:0 4px 14px #4f46e540}.classroom-pro .classroom-annotation-notice{background:var(--amb-blue-light);color:var(--amb-blue-dark)}.classroom-pro .classroom-whiteboard-main{border:1px solid var(--color-border, #e2e8f0);box-shadow:var(--amb-shadow)}
