.login-view{box-sizing: border-box;display: flex;flex-direction: column;align-items: center;justify-content: center;gap: clamp(1rem,2vw,1.4rem);min-height: 100%;padding: clamp(1rem,4vw,2.75rem);background: radial-gradient(circle at 15% 18%,rgba(47,111,159,0.18),transparent 28rem),linear-gradient(135deg,#eef4f8 0%,var(--aura-app-background,#f4f6fa) 52%,#e8eef3 100%)}.login-content-div{display: grid;grid-template-columns: minmax(17rem,1fr) minmax(21rem,27rem);align-items: stretch;width: min(62rem,100%);min-height: min(34rem,calc(100vh - 5rem));border: 1px solid var(--vaadin-border-color,#d6dde8);border-radius: clamp(18px,3vw,28px);background: var(--aura-surface-color,#ffffff);box-shadow: 0 24px 70px rgba(16,24,40,0.16);overflow: hidden}.login-brand-panel{box-sizing: border-box;display: flex;flex-direction: column;justify-content: center;min-width: 0;padding: clamp(2rem,5vw,4rem);background: linear-gradient(145deg,rgba(34,76,102,0.9),rgba(47,111,159,0.74)),radial-gradient(circle at 20% 20%,rgba(255,255,255,0.26),transparent 15rem);color: #ffffff}.login-logo-image{display: block;width: clamp(8rem,20vw,12rem);height: auto;max-height: 4rem;margin-bottom: clamp(1rem,2.5vw,1.65rem);object-fit: contain}.login-heading{max-width: 12ch;margin: 0;color: #ffffff;font-size: clamp(2.15rem,5vw,4rem);line-height: 0.95;letter-spacing: -0.045em}.login-description{max-width: 32rem;margin: clamp(1rem,2.5vw,1.35rem) 0 0;color: rgba(255,255,255,0.82);font-size: clamp(0.98rem,1.5vw,1.12rem);line-height: 1.55}.login-form-panel{box-sizing: border-box;display: flex;align-items: center;justify-content: center;min-width: 0;padding: clamp(1.25rem,3vw,2.25rem);background: linear-gradient(180deg,rgba(255,255,255,0.88),rgba(244,246,250,0.72))}.login-form-card{box-sizing: border-box;width: min(100%,24.5rem);padding: clamp(0.35rem,1.25vw,0.7rem);border: 1px solid color-mix(in srgb,var(--vaadin-border-color,#d6dde8) 80%,#ffffff);border-radius: 18px;background: var(--aura-surface-color,#ffffff);box-shadow: 0 14px 32px rgba(16,24,40,0.1)}.login-copyright{display: inline-flex;align-items: center;justify-content: center;gap: 0.55rem;flex-wrap: wrap;color: rgba(17,24,39,0.7);font-size: 0.8rem;line-height: 1.4;text-align: center}.login-copyright-separator{color: rgba(20,149,255,0.72);font-size: 0.9rem;line-height: 1}.login-copyright-link{color: #0f5fa8;text-decoration: none;font-weight: 600}.login-copyright-link:hover{text-decoration: underline}.login-view vaadin-login-form{--vaadin-login-form-width: 100%;--vaadin-login-form-padding: clamp(0.9rem,2vw,1.35rem);width: 100%}.set-password-view{box-sizing: border-box;display: flex;align-items: center;justify-content: center;min-height: 100%;padding: clamp(1rem,4vw,2.75rem);background: radial-gradient(circle at 15% 18%,rgba(47,111,159,0.18),transparent 28rem),linear-gradient(135deg,#eef4f8 0%,var(--aura-app-background,#f4f6fa) 52%,#e8eef3 100%)}.set-password-content-div{display: grid;grid-template-columns: minmax(14rem,18rem) minmax(26rem,1fr);align-items: stretch;width: min(74rem,100%);min-height: min(40rem,calc(100vh - 5rem));border: 1px solid var(--vaadin-border-color,#d6dde8);border-radius: clamp(18px,3vw,28px);background: var(--aura-surface-color,#ffffff);box-shadow: 0 24px 70px rgba(16,24,40,0.16);overflow: hidden}.set-password-brand-panel{box-sizing: border-box;display: flex;flex-direction: column;justify-content: center;min-width: 0;padding: clamp(1.75rem,4vw,2.75rem);background: linear-gradient(145deg,rgba(34,76,102,0.92),rgba(47,111,159,0.76)),radial-gradient(circle at 20% 20%,rgba(255,255,255,0.24),transparent 15rem);color: #ffffff}.set-password-brand-description{max-width: 18rem;margin: 0.9rem 0 0;color: rgba(255,255,255,0.82);font-size: 0.98rem;line-height: 1.6}.set-password-setup-panel{box-sizing: border-box;display: flex;flex-direction: column;gap: 1.1rem;min-width: 0;padding: clamp(1.35rem,3.6vw,2.4rem);background: linear-gradient(180deg,rgba(255,255,255,0.94),rgba(244,246,250,0.8))}.set-password-steps-card{display: flex;flex-direction: column;gap: 0.9rem;padding: clamp(0.95rem,2vw,1.2rem);border: 1px solid rgba(148,163,184,0.22);border-radius: 20px;background: rgba(15,23,42,0.04)}.set-password-steps-progress{color: #0f3e69;font-size: 0.82rem;font-weight: 700;letter-spacing: 0.06em;text-transform: uppercase}.set-password-steps-list{display: grid;grid-template-columns: repeat(auto-fit,minmax(12rem,1fr));gap: 0.75rem}.set-password-step-card{display: flex;align-items: flex-start;gap: 0.75rem;min-width: 0;padding: 0.85rem 0.95rem;border-radius: 16px;border: 1px solid rgba(148,163,184,0.2);background: rgba(255,255,255,0.82)}.set-password-step-card.current{border-color: rgba(20,149,255,0.24);background: linear-gradient(180deg,rgba(255,255,255,0.96),rgba(238,246,255,0.92))}.set-password-step-card.required{border-color: rgba(245,158,11,0.24);background: linear-gradient(180deg,rgba(255,251,235,0.96),rgba(255,247,237,0.92))}.set-password-step-card.complete{border-color: rgba(34,197,94,0.22);background: linear-gradient(180deg,rgba(240,253,244,0.96),rgba(236,252,243,0.92))}.set-password-step-card.upcoming{opacity: 0.82}.set-password-step-card.locked{opacity: 0.88;border-style: dashed}.set-password-step-badge{display: inline-flex;align-items: center;justify-content: center;min-width: 2rem;height: 2rem;border-radius: 999px;background: #0f5fa8;color: #ffffff;font-size: 0.92rem;font-weight: 700;line-height: 1;flex-shrink: 0}.set-password-step-card.upcoming .set-password-step-badge{background: rgba(100,116,139,0.18);color: #334155}.set-password-step-card.required .set-password-step-badge{background: #d97706}.set-password-step-card.complete .set-password-step-badge{background: #15803d}.set-password-step-card.locked .set-password-step-badge{background: rgba(100,116,139,0.18);color: #334155}.set-password-step-text{display: flex;flex-direction: column;gap: 0.18rem;min-width: 0}.set-password-step-title{color: #0f172a;font-size: 0.96rem;font-weight: 700;line-height: 1.4}.set-password-step-state{color: #64748b;font-size: 0.84rem;line-height: 1.35}.set-password-intro{display: flex;flex-direction: column;gap: 0.65rem}.set-password-welcome-eyebrow{color: #0f5fa8;font-size: 0.82rem;font-weight: 700;letter-spacing: 0.08em;text-transform: uppercase}.set-password-title{margin: 0;color: #0f172a;font-size: clamp(2rem,4vw,2.85rem);line-height: 0.98;letter-spacing: -0.04em}.set-password-description{max-width: 44rem;margin: 0;color: #475569;font-size: 1rem;line-height: 1.65}.set-password-section-card{display: flex;flex-direction: column;gap: 0.9rem;padding: clamp(1rem,2vw,1.25rem);border: 1px solid color-mix(in srgb,var(--vaadin-border-color,#d6dde8) 82%,#ffffff);border-radius: 20px;background: rgba(255,255,255,0.82);box-shadow: 0 10px 28px rgba(15,23,42,0.05)}.set-password-section-card-strong{border-color: rgba(20,149,255,0.2);background: linear-gradient(180deg,rgba(255,255,255,0.96),rgba(238,246,255,0.92));box-shadow: 0 14px 32px rgba(20,149,255,0.09)}.set-password-wizard-content{display: flex;flex-direction: column;gap: 1.25rem}.set-password-section-title{margin: 0;color: #0f172a;font-size: 1.08rem;line-height: 1.3}.set-password-section-description{margin: 0;color: #64748b;font-size: 0.94rem;line-height: 1.55}.set-password-details-grid{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 0.8rem}.set-password-detail-card{display: flex;flex-direction: column;gap: 0.35rem;min-width: 0;padding: 0.85rem 0.9rem;border: 1px solid rgba(148,163,184,0.2);border-radius: 16px;background: rgba(248,250,252,0.88)}.set-password-detail-label{color: #64748b;font-size: 0.8rem;font-weight: 700;letter-spacing: 0.04em;text-transform: uppercase}.set-password-detail-value{color: #0f172a;font-size: 0.98rem;font-weight: 600;line-height: 1.45;overflow-wrap: anywhere}.set-password-password-note{display: grid;gap: 0.5rem;padding: 0.95rem 1rem;border: 1px solid rgba(20,149,255,0.14);border-radius: 16px;background: rgba(20,149,255,0.06)}.set-password-password-summary,.set-password-password-rules{margin: 0;color: #1e3a5f;line-height: 1.55}.set-password-password-summary{font-weight: 600}.set-password-password-fields{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 0.85rem}.set-password-actions{display: flex;justify-content: flex-end}.set-password-submit-button{min-width: min(100%,14rem)}.set-password-feedback{min-height: 1.6rem;font-size: 0.95rem;line-height: 1.4}.reset-password-content-div{grid-template-columns: minmax(14rem,17rem) minmax(22rem,28rem);width: min(54rem,100%);min-height: min(32rem,calc(100vh - 5rem))}.reset-password-setup-panel{justify-content: center;gap: 1.35rem}.reset-password-form-card{width: min(100%,26rem)}.verify-school-email-card{width: 100%}.verify-school-email-setup-panel{padding-right: clamp(1.75rem,4.2vw,3rem)}.onboarding-dpa-section{gap: 1rem}.onboarding-dpa-admin-notice,.onboarding-customer-terms-notice,.onboarding-terms-notice{padding: 0.9rem 1rem;border: 1px solid rgba(245,158,11,0.18);border-radius: 16px;background: rgba(245,158,11,0.08)}.onboarding-dpa-scroll,.onboarding-customer-terms-scroll,.onboarding-terms-scroll{max-height: min(48vh,34rem);padding: 1rem;border: 1px solid rgba(148,163,184,0.2);border-radius: 18px;background: rgba(248,250,252,0.9)}.onboarding-dpa-checkbox,.onboarding-customer-terms-checkbox,.onboarding-terms-checkbox{align-items: flex-start;padding: 0.95rem 1rem;border: 1px solid rgba(20,149,255,0.16);border-radius: 16px;background: rgba(255,255,255,0.88)}.onboarding-dpa-checkbox label,.onboarding-customer-terms-checkbox label,.onboarding-terms-checkbox label{color: #0f172a;font-weight: 600;line-height: 1.55}.onboarding-customer-terms-section,.onboarding-terms-section{gap: 1rem}.onboarding-dpa-actions,.onboarding-customer-terms-actions,.onboarding-terms-actions{display: flex;justify-content: flex-end}.onboarding-dpa-proceed-button,.onboarding-customer-terms-proceed-button,.onboarding-terms-proceed-button{min-width: min(100%,16rem)}.privacy-view{box-sizing: border-box;display: flex;align-items: center;justify-content: center;min-height: 100%;padding: clamp(1rem,4vw,2.75rem);background: radial-gradient(circle at 15% 18%,rgba(47,111,159,0.18),transparent 28rem),linear-gradient(135deg,#eef4f8 0%,var(--aura-app-background,#f4f6fa) 52%,#e8eef3 100%)}.privacy-content-div{display: grid;grid-template-columns: minmax(16rem,19rem) minmax(24rem,42rem);align-items: stretch;width: min(72rem,100%);border: 1px solid var(--vaadin-border-color,#d6dde8);border-radius: clamp(18px,3vw,28px);background: var(--aura-surface-color,#ffffff);box-shadow: 0 24px 70px rgba(16,24,40,0.16);overflow: hidden}.privacy-brand-panel{box-sizing: border-box;display: flex;flex-direction: column;justify-content: space-between;gap: 1.4rem;min-width: 0;padding: clamp(1.8rem,4vw,3rem);background: linear-gradient(145deg,rgba(34,76,102,0.92),rgba(47,111,159,0.76)),radial-gradient(circle at 20% 20%,rgba(255,255,255,0.24),transparent 15rem);color: #ffffff}.privacy-brand-link{display: inline-flex;align-items: center;gap: 0.8rem;width: fit-content;color: inherit;text-decoration: none}.privacy-logo-image{display: block;width: clamp(8rem,15vw,10rem);height: auto;max-height: 3.25rem;object-fit: contain}.privacy-brand-note{margin: 0;color: rgba(255,255,255,0.84);font-size: 0.98rem;line-height: 1.6}.privacy-policy-panel{box-sizing: border-box;display: flex;flex-direction: column;gap: 1.4rem;min-width: 0;padding: clamp(1.5rem,4vw,2.6rem);background: linear-gradient(180deg,rgba(255,255,255,0.92),rgba(244,246,250,0.78))}.legal-document-header{display: flex;flex-direction: column;gap: 0.55rem}.legal-document-scroll{min-height: 0;max-height: min(62vh,44rem);overflow: auto;padding-right: 0.35rem}.legal-markdown-body{color: #334155;font-size: 0.98rem;line-height: 1.7}.legal-markdown-body>:first-child{margin-top: 0}.legal-markdown-body>:last-child{margin-bottom: 0}.legal-markdown-body h1,.legal-markdown-body h2,.legal-markdown-body h3,.legal-markdown-body h4,.legal-markdown-body h5,.legal-markdown-body h6{color: #0f172a;line-height: 1.2}.legal-markdown-body h1{font-size: 1.6rem}.legal-markdown-body h2{margin-top: 1.6rem;font-size: 1.25rem}.legal-markdown-body h3{margin-top: 1.25rem;font-size: 1.05rem}.legal-markdown-body p,.legal-markdown-body ul,.legal-markdown-body ol,.legal-markdown-body blockquote,.legal-markdown-body pre,.legal-markdown-body table{margin: 0.9rem 0}.legal-markdown-body ul,.legal-markdown-body ol{padding-left: 1.35rem}.legal-markdown-body li + li{margin-top: 0.3rem}.legal-markdown-body blockquote{margin-left: 0;padding: 0.8rem 1rem;border-left: 4px solid rgba(20,149,255,0.32);border-radius: 0 14px 14px 0;background: rgba(20,149,255,0.06);color: #1e3a5f}.legal-markdown-body a{color: #0f5fa8;font-weight: 600;text-decoration: none}.legal-markdown-body a:hover{text-decoration: underline}.legal-markdown-body hr{border: none;border-top: 1px solid rgba(148,163,184,0.28)}.legal-markdown-body code{padding: 0.08rem 0.35rem;border-radius: 999px;background: rgba(15,23,42,0.06);color: #0f3e69;font-family: Consolas,monospace;font-size: 0.92em}.legal-markdown-body pre{overflow: auto;padding: 0.95rem 1rem;border-radius: 16px;background: #0f172a;color: #e2e8f0}.legal-markdown-body pre code{padding: 0;background: transparent;color: inherit}.legal-documents-view{box-sizing: border-box;display: block;height: auto;min-height: 100%;padding: var(--vaadin-padding-l,1rem)}.legal-documents-shell{display: grid;gap: 1rem;max-width: 88rem;margin: 0 auto;min-height: 0}.legal-documents-hero{display: grid;gap: 0.55rem;padding: clamp(1.15rem,2.2vw,1.6rem);border: 1px solid color-mix(in srgb,var(--aura-accent-color,#3f6cf6) 16%,#ffffff);border-radius: 22px;background: linear-gradient(180deg,color-mix(in srgb,var(--aura-surface-color,#ffffff) 96%,#ffffff),color-mix(in srgb,var(--aura-app-background,#f4f6fa) 72%,#ffffff))}.legal-documents-hero-title{margin: 0;color: #0f172a;font-size: clamp(1.55rem,2.3vw,2.05rem);line-height: 1.1}.legal-documents-hero-description{max-width: 58rem;margin: 0;color: #475569;font-size: 0.98rem;line-height: 1.6}.legal-documents-layout{display: grid;grid-template-columns: minmax(15rem,18rem) minmax(0,1fr);gap: 1rem;align-items: start;min-height: 0}.legal-documents-nav-card,.legal-documents-detail-card{box-sizing: border-box;display: grid;gap: 1rem;min-width: 0;min-height: 0;padding: clamp(1rem,2vw,1.2rem);border: 1px solid color-mix(in srgb,var(--vaadin-border-color,#d6dde8) 88%,#ffffff);border-radius: 20px;background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 95%,var(--aura-app-background,#f4f6fa))}.legal-documents-nav-header,.legal-documents-detail-header{min-width: 0}.legal-documents-section-title,.legal-documents-document-title{margin: 0;color: #0f172a;font-size: 1.1rem;line-height: 1.2;overflow-wrap: anywhere}.legal-documents-section-description,.legal-documents-document-subtitle{margin: 0;color: #64748b;font-size: 0.92rem;line-height: 1.55;overflow-wrap: anywhere}.legal-documents-selector{display: grid;gap: 0.65rem}vaadin-button.legal-documents-nav-button{width: 100%;padding: 0;border-radius: 16px;border: 1px solid color-mix(in srgb,var(--vaadin-border-color,#d6dde8) 86%,#ffffff);background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 82%,var(--aura-app-background,#f4f6fa));box-shadow: none}vaadin-button.legal-documents-nav-button::part(label){width: 100%;justify-content: flex-start;padding: 0.9rem 0.95rem;white-space: normal}vaadin-button.legal-documents-nav-button.is-active{border-color: color-mix(in srgb,var(--aura-accent-color,#3f6cf6) 26%,#ffffff);background: linear-gradient(180deg,rgba(255,255,255,0.98),rgba(238,246,255,0.94))}.legal-documents-nav-button-text{display: flex;flex-direction: column;align-items: flex-start;gap: 0.2rem;min-width: 0;text-align: left}.legal-documents-nav-button-title{color: #0f172a;font-size: 0.95rem;font-weight: 600;line-height: 1.35;overflow-wrap: anywhere}.legal-documents-nav-button-meta{color: #64748b;font-size: 0.8rem;line-height: 1.4;overflow-wrap: anywhere}.legal-documents-detail-header{display: grid;gap: 0.35rem}.legal-documents-version-selector{display: grid;gap: 0.55rem;padding: 0.9rem 1rem;border: 1px solid color-mix(in srgb,var(--vaadin-border-color,#d6dde8) 88%,#ffffff);border-radius: 18px;background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 88%,var(--aura-app-background,#f4f6fa))}.legal-documents-version-title{color: #475569;font-size: 0.82rem;font-weight: 700;letter-spacing: 0.04em;line-height: 1.3;text-transform: uppercase}.legal-documents-version-buttons{display: flex;flex-wrap: wrap;gap: 0.55rem;align-items: center}vaadin-button.legal-documents-version-button{margin: 0;border-radius: 999px;border: 1px solid color-mix(in srgb,var(--vaadin-border-color,#d6dde8) 86%,#ffffff);background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 94%,var(--aura-app-background,#f4f6fa));box-shadow: none}vaadin-button.legal-documents-version-button::part(label){padding: 0.45rem 0.8rem;white-space: normal}vaadin-button.legal-documents-version-button.is-active{border-color: color-mix(in srgb,var(--aura-accent-color,#3f6cf6) 26%,#ffffff);background: linear-gradient(180deg,rgba(255,255,255,0.98),rgba(238,246,255,0.94))}.legal-documents-metadata-form{padding: 0.95rem 1rem 0.25rem;border: 1px solid color-mix(in srgb,var(--vaadin-border-color,#d6dde8) 88%,#ffffff);border-radius: 18px;background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 86%,var(--aura-app-background,#f4f6fa))}.legal-documents-hash-field input{font-family: Consolas,monospace;font-size: 0.88rem}.legal-documents-view-document-scroll{max-height: none;min-height: 0;overflow: visible;padding: 1rem 1.1rem;border: 1px solid color-mix(in srgb,var(--vaadin-border-color,#d6dde8) 88%,#ffffff);border-radius: 18px;background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 92%,var(--aura-app-background,#f4f6fa))}vaadin-markdown.legal-documents-view-markdown{display: block;width: 100%}.legal-documents-content-unavailable{margin: 0;color: #64748b;line-height: 1.6}.legal-documents-empty{display: grid;gap: 0.45rem;padding: 1.05rem 1.1rem;border: 1px dashed rgba(148,163,184,0.48);border-radius: 18px;background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 88%,var(--aura-app-background,#f4f6fa))}.legal-documents-empty-title{color: #0f172a;font-size: 0.98rem;font-weight: 600;line-height: 1.35}.legal-documents-empty-description{margin: 0;color: #64748b;line-height: 1.6}.privacy-panel-header{display: flex;align-items: flex-start;justify-content: space-between;gap: 1rem}.privacy-title{margin: 0;color: #0f172a;font-size: clamp(1.85rem,3.8vw,2.6rem);line-height: 1.02;letter-spacing: -0.03em}.privacy-language-toggle{display: inline-flex;gap: 0.35rem;padding: 0.25rem;border: 1px solid rgba(148,163,184,0.3);border-radius: 999px;background: rgba(226,232,240,0.55)}.privacy-language-button{min-width: 3rem;border: none;border-radius: 999px;padding: 0.45rem 0.8rem;background: transparent;color: #334155;font: inherit;font-size: 0.85rem;font-weight: 700;letter-spacing: 0.04em;cursor: pointer}.privacy-language-button[selected]{background: #ffffff;color: #0f172a;box-shadow: 0 6px 16px rgba(15,23,42,0.12)}.privacy-body{display: flex;flex-direction: column;gap: 1rem}.privacy-paragraph{margin: 0;color: #334155;font-size: 1rem;line-height: 1.7}.privacy-cookie-name{display: inline-block;margin: 0 0.2rem;border: 1px solid rgba(20,149,255,0.2);border-radius: 999px;padding: 0.08rem 0.48rem;background: rgba(20,149,255,0.1);color: #0f3e69;font-family: Consolas,monospace;font-size: 0.92em}@media (max-width: 760px){.login-view{align-items: flex-start;padding: 0;gap: 0;background: var(--aura-surface-color,#ffffff)}.login-content-div{grid-template-columns: 1fr;width: 100%;min-height: 100vh;border: none;border-radius: 0;box-shadow: none}.login-brand-panel{justify-content: flex-start;padding: max(1.2rem,env(safe-area-inset-top)) 1.25rem 1.15rem}.login-logo-image{width: min(10rem,70vw);max-height: 3.5rem;margin-bottom: 0.8rem}.login-heading{max-width: 14ch;font-size: clamp(2rem,11vw,3rem)}.login-description{margin-top: 0.75rem;font-size: 0.95rem}.login-form-panel{align-items: flex-start;padding: 1rem 1rem 1.5rem}.login-form-card{width: 100%;padding: 0;border: none;border-radius: 0;box-shadow: none}.login-copyright{width: 100%;padding: 0 1.25rem 1.5rem}.set-password-view{align-items: flex-start;padding: 0;background: var(--aura-surface-color,#ffffff)}.set-password-content-div{grid-template-columns: 1fr;width: 100%;min-height: 100vh;border: none;border-radius: 0;box-shadow: none}.set-password-brand-panel{justify-content: flex-start;padding: max(1.2rem,env(safe-area-inset-top)) 1.25rem 1rem}.set-password-setup-panel{padding: 1.15rem 1.25rem max(1.6rem,env(safe-area-inset-bottom))}.set-password-steps-list,.set-password-details-grid,.set-password-password-fields{grid-template-columns: 1fr}.onboarding-dpa-scroll,.onboarding-customer-terms-scroll,.onboarding-terms-scroll{max-height: none;padding: 0.9rem}.onboarding-dpa-actions,.onboarding-customer-terms-actions,.onboarding-terms-actions{justify-content: stretch}.onboarding-dpa-proceed-button,.onboarding-customer-terms-proceed-button,.onboarding-terms-proceed-button{width: 100%}.set-password-actions{justify-content: stretch}.set-password-submit-button{width: 100%}.privacy-view{align-items: flex-start;padding: 0;background: var(--aura-surface-color,#ffffff)}.privacy-content-div{grid-template-columns: 1fr;width: 100%;min-height: 100vh;border: none;border-radius: 0;box-shadow: none}.privacy-brand-panel{padding: max(1.2rem,env(safe-area-inset-top)) 1.25rem 1rem}.privacy-logo-image{width: min(9rem,65vw);max-height: 3rem}.privacy-policy-panel{padding: 1.15rem 1.25rem max(1.5rem,env(safe-area-inset-bottom))}.legal-document-scroll{max-height: none}.legal-documents-view{padding: 0;background: var(--aura-surface-color,#ffffff)}.legal-documents-shell{gap: 0;max-width: none}.legal-documents-hero{border: none;border-radius: 0;box-shadow: none;padding: max(1.15rem,env(safe-area-inset-top)) 1.25rem 1rem}.legal-documents-layout{grid-template-columns: 1fr;gap: 0.85rem;padding: 0 1rem max(1.5rem,env(safe-area-inset-bottom))}.legal-documents-view-document-scroll{max-height: none;padding: 0.95rem}.privacy-panel-header{flex-direction: column;align-items: stretch}.privacy-language-toggle{align-self: flex-start}}@media (min-width: 761px) and (max-width: 1040px){.login-content-div{grid-template-columns: minmax(16rem,0.9fr) minmax(20rem,24rem);width: min(55rem,100%)}.set-password-content-div{grid-template-columns: minmax(13rem,16rem) minmax(24rem,1fr);width: min(64rem,100%)}.privacy-content-div{grid-template-columns: minmax(15rem,17rem) minmax(22rem,1fr);width: min(64rem,100%)}.legal-documents-layout{grid-template-columns: minmax(14rem,16rem) minmax(0,1fr)}}.dev-login-view{box-sizing: border-box;display: flex;justify-content: center;align-items: center;min-height: 100%;padding: max(1.2rem,var(--vaadin-padding-l,1.2rem));background: var(--aura-app-background,#f4f6fa)}.dev-login-view .dev-content-div{display: grid;grid-template-columns: minmax(20rem,27rem) minmax(22rem,34rem);width: min(72rem,100%);border: 1px solid var(--vaadin-border-color,#d6dde8);border-radius: var(--vaadin-radius-l,14px);background: var(--aura-surface-color,#ffffff);box-shadow: var(--aura-shadow-m,0 10px 28px rgba(16,24,40,0.12));overflow: hidden}.dev-login-view vaadin-login-form{--vaadin-login-form-width: 100%;--vaadin-login-form-padding: clamp(1.1rem,2vw,1.8rem)}.dev-login-view .dev-users{display: flex;flex-direction: column;gap: var(--vaadin-gap-s,0.6rem);padding: clamp(1rem,2vw,1.5rem);border-left: 1px solid var(--vaadin-border-color-secondary,var(--vaadin-border-color,#d6dde8));background: color-mix(in srgb,var(--aura-surface-color,#fff) 70%,transparent);color: var(--vaadin-text-color-secondary,#5a6578)}.dev-login-view .dev-users>h3{margin: 0 0 0.2rem;color: var(--vaadin-text-color,#1f2937);font-size: 1.05rem;line-height: 1.25}.dev-login-view .dev-user-card{border: 1px solid var(--vaadin-border-color,#d6dde8);border-radius: var(--vaadin-radius-m,10px);background: var(--aura-surface-color,#ffffff);padding: 0.75rem 0.85rem}.dev-login-view .dev-user-row{display: flex;align-items: center;justify-content: space-between;gap: 0.9rem}.dev-login-view .dev-user-details{min-width: 0}.dev-login-view .dev-user-details>h4{margin: 0 0 0.3rem;color: var(--vaadin-text-color,#1f2937);font-size: 0.95rem;line-height: 1.2}.dev-login-view .dev-user-line{align-items: baseline;display: flex;flex-wrap: wrap;gap: 0.35rem;font-size: 0.82rem;line-height: 1.35}.dev-login-view .dev-user-label{color: var(--vaadin-text-color,#1f2937);font-weight: 600}.dev-login-view .dev-user-value{color: var(--vaadin-text-color-secondary,#5a6578);font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;overflow-wrap: anywhere}.dev-login-view .dev-user-row>vaadin-button{flex-shrink: 0}@media (max-width: 980px){.dev-login-view .dev-content-div{grid-template-columns: 1fr}.dev-login-view .dev-users{border-left: none;border-top: 1px solid var(--vaadin-border-color-secondary,var(--vaadin-border-color,#d6dde8))}}.navigation-header{margin-bottom: var(--vaadin-gap-m,0.75rem);display: flex;align-items: center;gap: var(--vaadin-gap-m,0.75rem)}.navigation-breadcrumb{overflow: hidden;white-space: nowrap;display: flex;align-items: center}.breadcrumb-container{display: flex;align-items: center;gap: var(--vaadin-gap-xs,0.25rem)}.breadcrumb-link:hover{background-color: var(--vaadin-background-container,color-mix(in srgb,var(--aura-surface-color,#ffffff) 84%,transparent));text-decoration: underline}.breadcrumb-separator{flex-shrink: 0;color: var(--vaadin-text-color-secondary,#5a6578);user-select: none}.navigation-back-mobile{flex-shrink: 0}@media (min-width: 768px){.navigation-header .navigation-back-mobile{display: none !important}.navigation-header .navigation-breadcrumb{display: flex !important;flex: 1}.breadcrumb-container{max-width: 100%}}@media (min-width: 768px) and (max-width: 1023px){.navigation-header .navigation-back-mobile{display: none !important}.navigation-header .navigation-breadcrumb{display: flex !important;flex: 1}.breadcrumb-container{max-width: 70%;text-overflow: ellipsis}}@media (max-width: 767px){.navigation-header .navigation-breadcrumb{display: none !important}.navigation-header .navigation-back-mobile{display: flex !important;font-size: var(--aura-font-size-m,0.875rem);padding: var(--vaadin-padding-s,0.5rem) var(--vaadin-padding-m,0.75rem);min-height: 44px;min-width: 44px}}.navigation-back-mobile:focus,.breadcrumb-link:focus{outline: 2px solid var(--vaadin-focus-ring-color,var(--aura-accent-color,#3f6cf6));outline-offset: 2px}.navigation-header{contain: layout style}.breadcrumb-container{will-change: transform}@keyframes lls-shimmer{0%{background-position: -200% 0}100%{background-position: 200% 0}}.lls-row{background-image: linear-gradient( 90deg,var(--vaadin-background-container-strong,color-mix(in srgb,var(--aura-surface-color,#ffffff) 74%,transparent)) 0%,var(--vaadin-background-container,color-mix(in srgb,var(--aura-surface-color,#ffffff) 84%,transparent)) 50%,var(--vaadin-background-container-strong,color-mix(in srgb,var(--aura-surface-color,#ffffff) 74%,transparent)) 100% );background-size: 200% 100%;animation: lls-shimmer 1.2s infinite linear;height: 24px;width: 100%;border-radius: 6px}.ag-row,.le-row{padding: var(--vaadin-padding-xs,0.25rem) var(--vaadin-padding-s,0.5rem);border-radius: var(--vaadin-radius-l,12px);margin-bottom: var(--vaadin-padding-xs,0.25rem)}.ag-row-disabled,.le-row-disabled{opacity: 0.72;border: 1px dashed var(--vaadin-contrast-30pct)}.ag-name,.le-name{white-space: nowrap;overflow: hidden;text-overflow: ellipsis;max-width: 520px;font-weight: 700}.ag-attendance-badge,.le-attendance-badge{display: inline-flex;align-items: center;justify-content: center;gap: 0.25rem;flex: 0 0 auto;width: 1.75rem;height: 1.75rem;border-radius: 999px;font-size: var(--vaadin-font-size-xs,0.75rem);font-weight: 800;line-height: 1.2;color: var(--vaadin-text-color);background: var(--vaadin-contrast-10pct)}.ag-row-actions .ag-attendance-badge,.le-row-actions .le-attendance-badge{margin-inline-end: 0.35rem}.ag-row-actions>*:not(:last-child):not(.ag-attendance-badge),.le-row-actions>*:not(:last-child):not(.le-attendance-badge){margin-inline-end: 0.5rem}.le-grade-selector{flex-wrap: wrap;gap: 0.22rem;justify-content: flex-end}.le-bulk-grade-selector{justify-content: flex-start}.le-row-actions .le-grade-selector{padding-left: 0.5rem}vaadin-button.le-grade-button{--vaadin-button-padding: 0.12rem 0.38rem;min-width: 2.8rem;min-height: 2.25rem}vaadin-button.le-grade-button::part(label){width: 100%}.le-grade-button-content{display: grid;gap: 0.02rem;justify-items: center;line-height: 1.05}.le-grade-button-value{font-size: 0.92rem;font-weight: 900}.le-grade-button-label{font-size: 0.58rem;font-weight: 800;letter-spacing: 0.02em;text-transform: uppercase}vaadin-button.le-grade-button[aria-pressed="true"]{color: #ffffff;border: 1px solid var(--le-grade-border,#4b5563);background: var(--le-grade-bg,#5f6875);box-shadow: 0 0 0 2px color-mix(in srgb,var(--le-grade-border,#4b5563) 28%,transparent)}vaadin-button.le-grade-button[aria-pressed="true"][data-grade="5"]{--le-grade-bg: #0f8f4d;--le-grade-border: #087f3f}vaadin-button.le-grade-button[aria-pressed="true"][data-grade="4"]{--le-grade-bg: #2f6f9f;--le-grade-border: #255f8a}vaadin-button.le-grade-button[aria-pressed="true"][data-grade="3"]{--le-grade-bg: #617231;--le-grade-border: #4e5f23}vaadin-button.le-grade-button[aria-pressed="true"][data-grade="2"]{--le-grade-bg: #b7791f;--le-grade-border: #975a16}vaadin-button.le-grade-button[aria-pressed="true"][data-grade="1"]{--le-grade-bg: #c92a2a;--le-grade-border: #a61e1e}.ag-attendance-present,.le-attendance-present{color: var(--aura-green-text,#0f8f4d);background: color-mix(in srgb,var(--aura-green,#0f8f4d) 12%,transparent)}.ag-attendance-late,.le-attendance-late{color: var(--aura-accent-text-color,#2f6f9f);background: var(--aura-accent-surface,rgba(47,111,159,0.12))}.ag-attendance-absent,.le-attendance-absent{color: var(--aura-red-text,#c92a2a);background: color-mix(in srgb,var(--aura-red,#c92a2a) 12%,transparent)}.ag-attendance-excused,.ag-attendance-unknown,.le-attendance-excused,.le-attendance-unknown{color: #4b5563;background: rgba(75,85,99,0.12)}.ae-row{padding: var(--vaadin-padding-xs,0.25rem) var(--vaadin-padding-s,0.5rem);border-radius: var(--vaadin-radius-l,12px);margin-bottom: var(--vaadin-padding-xs,0.25rem);border: 1px solid color-mix(in srgb,var(--vaadin-contrast-20pct) 65%,transparent)}.ae-name{white-space: nowrap;overflow: hidden;text-overflow: ellipsis;max-width: 520px;font-weight: 700}.ae-bulk-actions,.ae-status-group{flex-wrap: wrap}.ae-status-group{gap: 0.2rem}.ae-row-actions .ae-status-group{padding-left: 0.5rem}.ae-bulk-button vaadin-icon,.ae-bulk-button .ae-excused-glyph{margin-inline-end: 0.25rem}.ae-excused-glyph{display: inline-flex;align-items: center;justify-content: center;min-width: 1em;font-size: 0.82rem;font-weight: 900;line-height: 1}vaadin-text-field::part(input-field)::after{transition: none}vaadin-text-area::part(input-field)::after{transition: none}vaadin-email-field::part(input-field)::after{transition: none}:host{transition: none !important}:host([readonly]) [part="input-field"]{transition: none !important}:host([readonly]) [part="vaadin-email-field"]{transition: none !important}:host([readonly]) [part="vaadin-text-area"]{transition: none !important}:host([readonly]) [part="input"]{transition: none !important}vaadin-combo-box::part(input-field),vaadin-combo-box::part(value){transition: none !important}vaadin-dialog-overlay[theme~="responsive-dialog"]{width: 65vw;min-width: 300px;max-width: 1100px;max-height: 90vh}@media (max-width: 700px){vaadin-dialog-overlay[theme~="responsive-dialog"]{width: 90vw;max-width: 90vw}}vaadin-dialog-overlay[theme~="responsive-dialog"]::part(content){padding: var(--vaadin-padding-m,0.75rem)}vaadin-dialog-overlay[theme~="notification-bell-dialog"]{width: min(420px,calc(100vw - 1rem));max-width: calc(100vw - 1rem);max-height: min(680px,calc(100vh - 1rem))}vaadin-dialog-overlay[theme~="notification-bell-dialog"]::part(content){padding: var(--vaadin-padding-m,0.75rem)}@media (min-width: 960px){vaadin-dialog-overlay[theme~="notification-bell-dialog"]{align-items: flex-start;justify-content: flex-end;padding: 4rem 1rem 0.75rem;box-sizing: border-box}}.notification-bell{position: relative}.notification-bell-button{position: relative;overflow: visible}.notification-bell--has-unread .notification-bell-badge{box-shadow: 0 0 0 3px color-mix(in srgb,var(--aura-accent-color,#3f6cf6) 12%,transparent),0 6px 16px rgba(220,38,38,0.22)}.notification-bell--attention .notification-bell-button{animation: notification-bell-nudge 720ms cubic-bezier(0.2,0.8,0.2,1) 2}.notification-bell--attention .notification-bell-button::after{content: "";position: absolute;inset: -7px;border-radius: 1.1rem;border: 2px solid color-mix(in srgb,var(--aura-accent-color,#3f6cf6) 42%,#ffffff);opacity: 0;pointer-events: none;animation: notification-bell-ripple 1.9s ease-out 1}.notification-bell--attention .notification-bell-badge{animation: notification-bell-badge-pop 700ms cubic-bezier(0.2,0.8,0.2,1) 2}@keyframes notification-bell-nudge{0%,100%{transform: rotate(0deg) scale(1)}18%{transform: rotate(-10deg) scale(1.02)}36%{transform: rotate(9deg) scale(1.04)}54%{transform: rotate(-6deg) scale(1.02)}72%{transform: rotate(4deg) scale(1.01)}}@keyframes notification-bell-ripple{0%{opacity: 0;transform: scale(0.92)}16%{opacity: 0.9}100%{opacity: 0;transform: scale(1.2)}}@keyframes notification-bell-badge-pop{0%,100%{transform: scale(1)}35%{transform: scale(1.26)}60%{transform: scale(0.92)}}@media (prefers-reduced-motion: reduce){.notification-bell--attention .notification-bell-button,.notification-bell--attention .notification-bell-badge,.notification-bell--attention .notification-bell-button::after{animation: none !important}}vaadin-dialog-overlay[theme~="extra-lesson-notifications-dialog"]{width: min(760px,calc(100vw - 1rem));max-width: calc(100vw - 1rem);max-height: min(760px,calc(100vh - 1rem))}vaadin-dialog-overlay[theme~="extra-lesson-notifications-dialog"]::part(content){padding: var(--vaadin-padding-m,0.85rem)}.extra-lesson-notifications-dialog__content{gap: var(--vaadin-gap-m,1rem)}.extra-lesson-notifications-dialog__summary,.extra-lesson-notifications-dialog__section{box-sizing: border-box;display: grid;gap: 0.85rem;width: 100%;min-width: 0;padding: clamp(0.95rem,2vw,1.2rem);border: 1px solid color-mix(in srgb,var(--vaadin-border-color,#d6dde8) 88%,#ffffff);border-radius: 20px;background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 94%,var(--aura-app-background,#f4f6fa));box-shadow: 0 10px 28px rgba(15,23,42,0.05)}.extra-lesson-notifications-dialog__summary{background: radial-gradient(circle at top right,rgba(47,111,159,0.12),transparent 34%),linear-gradient(180deg,rgba(255,255,255,0.98),rgba(242,247,251,0.96));border-color: color-mix(in srgb,var(--aura-accent-color,#2f6f9f) 18%,#ffffff)}.extra-lesson-notifications-dialog__section--warning{background: linear-gradient(180deg,rgba(255,251,235,0.96),rgba(255,247,237,0.94));border-color: rgba(217,119,6,0.24)}.extra-lesson-notifications-dialog__summary-top{display: flex;align-items: flex-start;justify-content: space-between;gap: 0.65rem;flex-wrap: wrap}.extra-lesson-notifications-dialog__summary-title,.extra-lesson-notifications-dialog__section-title{margin: 0;color: #0f172a;line-height: 1.2}.extra-lesson-notifications-dialog__summary-title{font-size: clamp(1.2rem,2vw,1.45rem)}.extra-lesson-notifications-dialog__section-title{font-size: 1.02rem}.extra-lesson-notifications-dialog__summary-body,.extra-lesson-notifications-dialog__section-text{margin: 0;color: #475569;line-height: 1.6}.extra-lesson-notifications-dialog__detail-grid,.extra-lesson-notifications-dialog__metric-grid{display: grid;gap: 0.75rem}.extra-lesson-notifications-dialog__detail-grid{grid-template-columns: repeat(3,minmax(0,1fr))}.extra-lesson-notifications-dialog__metric-grid{grid-template-columns: repeat(3,minmax(0,1fr))}.extra-lesson-notifications-dialog__detail-card,.extra-lesson-notifications-dialog__metric-card{display: grid;gap: 0.28rem;min-width: 0;padding: 0.8rem 0.85rem;border-radius: 16px;border: 1px solid rgba(148,163,184,0.18);background: rgba(255,255,255,0.9)}.extra-lesson-notifications-dialog__detail-label,.extra-lesson-notifications-dialog__metric-label{color: #64748b;font-size: 0.8rem;font-weight: 700;letter-spacing: 0.03em;text-transform: uppercase}.extra-lesson-notifications-dialog__detail-value,.extra-lesson-notifications-dialog__metric-value{color: #0f172a;font-weight: 700;overflow-wrap: anywhere}.extra-lesson-notifications-dialog__detail-value{font-size: 1rem;line-height: 1.45}.extra-lesson-notifications-dialog__metric-value{font-size: clamp(1.25rem,2vw,1.55rem);line-height: 1.05}.extra-lesson-notifications-dialog__metric--student{border-color: rgba(14,116,144,0.14)}.extra-lesson-notifications-dialog__metric--guardian{border-color: rgba(22,163,74,0.14)}.extra-lesson-notifications-dialog__metric--teacher{border-color: rgba(217,119,6,0.14)}.extra-lesson-notifications-dialog__pill{display: inline-flex;align-items: center;justify-content: center;gap: 0.25rem;width: fit-content;max-width: 100%;padding: 0.28rem 0.72rem;border-radius: 999px;font-size: 0.79rem;font-weight: 800;line-height: 1.25;white-space: normal;text-align: center}.extra-lesson-notifications-dialog__pill--accent{background: rgba(47,111,159,0.12);color: #1d4f73}.extra-lesson-notifications-dialog__pill--muted{background: rgba(15,23,42,0.06);color: #475569}.extra-lesson-notifications-dialog__pill--warning{background: rgba(217,119,6,0.14);color: #9a5b00}.extra-lesson-notifications-dialog__pill--icon{min-width: 1.9rem;padding-inline: 0.55rem}.extra-lesson-notifications-dialog__issue-row{display: flex;align-items: flex-start;gap: 0.6rem;color: #7c3f00;line-height: 1.55}vaadin-dialog-overlay[theme~="attendance-notifications-dialog"]{width: min(720px,calc(100vw - 1rem));max-width: calc(100vw - 1rem);max-height: min(720px,calc(100vh - 1rem))}vaadin-dialog-overlay[theme~="attendance-notifications-dialog"]::part(content){padding: var(--vaadin-padding-m,0.85rem)}.attendance-notifications-dialog__content{gap: var(--vaadin-gap-m,1rem)}.attendance-notifications-dialog__summary,.attendance-notifications-dialog__section{box-sizing: border-box;display: grid;gap: 0.85rem;width: 100%;min-width: 0;padding: clamp(0.95rem,2vw,1.2rem);border: 1px solid color-mix(in srgb,var(--vaadin-border-color,#d6dde8) 88%,#ffffff);border-radius: 20px;background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 94%,var(--aura-app-background,#f4f6fa));box-shadow: 0 10px 28px rgba(15,23,42,0.05)}.attendance-notifications-dialog__summary{background: linear-gradient(180deg,rgba(255,255,255,0.98),rgba(242,247,251,0.96));border-color: color-mix(in srgb,var(--aura-accent-color,#2f6f9f) 12%,#ffffff)}.attendance-notifications-dialog__section--warning{background: linear-gradient(180deg,rgba(255,251,235,0.96),rgba(255,247,237,0.94));border-color: rgba(217,119,6,0.24)}.attendance-notifications-dialog__summary-top,.attendance-notifications-dialog__student-row{display: flex;align-items: flex-start;justify-content: space-between;gap: 0.65rem}.attendance-notifications-dialog__summary-top{flex-wrap: wrap}.attendance-notifications-dialog__summary-title,.attendance-notifications-dialog__section-title{margin: 0;color: #0f172a;line-height: 1.2}.attendance-notifications-dialog__summary-title{font-size: clamp(1.2rem,2vw,1.45rem)}.attendance-notifications-dialog__section-title{font-size: 1.02rem}.attendance-notifications-dialog__summary-body,.attendance-notifications-dialog__section-text,.attendance-notifications-dialog__student-meta{margin: 0;color: #475569;line-height: 1.6}.attendance-notifications-dialog__detail-grid{display: grid;gap: 0.75rem;grid-template-columns: repeat(2,minmax(0,1fr))}.attendance-notifications-dialog__detail-card,.attendance-notifications-dialog__student-row{border-radius: 16px;border: 1px solid rgba(148,163,184,0.18);background: rgba(255,255,255,0.9)}.attendance-notifications-dialog__detail-card{display: grid;gap: 0.28rem;min-width: 0;padding: 0.8rem 0.85rem}.attendance-notifications-dialog__detail-label{color: #64748b;font-size: 0.8rem;font-weight: 700;letter-spacing: 0.03em;text-transform: uppercase}.attendance-notifications-dialog__detail-value{color: #0f172a;font-size: clamp(1.25rem,2vw,1.55rem);font-weight: 700;line-height: 1.05}.attendance-notifications-dialog__student-list{display: grid;gap: 0.7rem}.attendance-notifications-dialog__student-row{padding: 0.85rem 0.95rem}.attendance-notifications-dialog__student-copy{display: grid;gap: 0.18rem;min-width: 0}.attendance-notifications-dialog__student-name{color: #0f172a;font-weight: 700;line-height: 1.45;overflow-wrap: anywhere}.attendance-notifications-dialog__student-meta{font-size: 0.92rem}.attendance-notifications-dialog__pill{display: inline-flex;align-items: center;justify-content: center;gap: 0.25rem;width: fit-content;max-width: 100%;padding: 0.28rem 0.72rem;border-radius: 999px;font-size: 0.79rem;font-weight: 800;line-height: 1.25;white-space: normal;text-align: center}.attendance-notifications-dialog__pill--accent{background: rgba(180,83,9,0.12);color: #92400e}.attendance-notifications-dialog__pill--muted{background: rgba(15,23,42,0.06);color: #475569}.attendance-notifications-dialog__pill--warning{background: rgba(217,119,6,0.14);color: #9a5b00}.attendance-notifications-dialog__pill--danger{background: rgba(185,28,28,0.12);color: #991b1b}.attendance-notifications-dialog__pill--icon{min-width: 1.9rem;padding-inline: 0.55rem}.attendance-notifications-dialog__issue-row{display: flex;align-items: flex-start;gap: 0.6rem;color: #7c3f00;line-height: 1.55}.notification-bell-footer{gap: var(--vaadin-gap-s,0.7rem);flex-wrap: wrap}.notification-bell-footer>*{min-width: 0}vaadin-button.notification-bell-action-button{min-width: 0;max-width: 100%}vaadin-button.notification-bell-action-button::part(label){white-space: normal;line-height: 1.2;text-align: center}vaadin-button.notification-bell-action-button--mark-all{margin-inline-end: auto}.notification-bell-preview-title,.notification-bell-preview-body{overflow-wrap: anywhere}@media (max-width: 520px){vaadin-button.notification-bell-action-button--mark-all{width: 100%;margin-inline-end: 0}.extra-lesson-notifications-dialog__detail-grid,.extra-lesson-notifications-dialog__metric-grid,.attendance-notifications-dialog__detail-grid{grid-template-columns: 1fr}.attendance-notifications-dialog__student-row{flex-direction: column}}.fc .fc-event.lesson--extra,.fc .fc-v-event.lesson--extra,.fc .fc-h-event.lesson--extra{border-color: #61ff69 !important;border-left: 0 !important;border-top: 5px dotted #61ff69 !important;border-right: 5px dotted #61ff69 !important}.fc .fc-event.lesson--extra .fc-event-main{position: relative}.fc .fc-event.lesson--cancelled .fc-event-main{background-image: repeating-linear-gradient( 135deg,rgba(255,255,255,0.22) 0 6px,rgba(255,255,255,0) 6px 12px );background-blend-mode: overlay}.vaadin-full-calendar.fc[theme~="vaadin"]{--fc-now-indicator-color: #ff2d2d}.fc .fc-timegrid-now-indicator-line{border-color: #ff2d2d !important;border-width: 2px !important;box-shadow: 0 0 10px rgba(255,45,45,0.38)}.fc .fc-timegrid-now-indicator-arrow{filter: drop-shadow(0 0 4px rgba(255,45,45,0.45))}.fc .fc-col-header-cell.fc-day-sat,.fc .fc-col-header-cell.fc-day-sun,.fc .fc-daygrid-day.fc-day-sat,.fc .fc-daygrid-day.fc-day-sun{background: color-mix(in srgb,var(--aura-app-background,#f4f6fa) 72%,#e4e7ed)}.fc .fc-timegrid-col.fc-day-sat .fc-timegrid-col-bg,.fc .fc-timegrid-col.fc-day-sun .fc-timegrid-col-bg{background: color-mix(in srgb,var(--aura-app-background,#f4f6fa) 72%,#e4e7ed)}.student-performance-tab{gap: var(--vaadin-gap-m,1rem)}.student-performance-empty,.student-performance-note,.student-performance-criterion-desc,.student-performance-metric-label,.student-performance-period-range{color: var(--vaadin-text-color-secondary,#5a6578)}.student-performance-top{gap: var(--vaadin-gap-s,0.7rem)}.student-performance-period-card{min-width: 15.5rem;display: grid;gap: 0.2rem;padding: max(0.5rem,var(--vaadin-padding-s,0.5rem));border-radius: var(--vaadin-radius-m,10px);border: 1px solid var(--vaadin-border-color,#d6dde8);background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 92%,var(--aura-app-background,#f4f6fa))}.student-performance-period-title{font-size: var(--vaadin-font-size-s,0.85rem);font-weight: 600}.student-performance-period-label{font-weight: 700;color: var(--vaadin-text-color,#1f2937)}.student-performance-summary-row{gap: var(--vaadin-gap-s,0.7rem)}.student-performance-summary-card{display: grid;gap: var(--vaadin-gap-s,0.7rem);flex: 1 1 17rem;min-width: 15rem;padding: max(0.65rem,var(--vaadin-padding-s,0.65rem));border-radius: var(--vaadin-radius-l,12px);border: 1px solid var(--vaadin-border-color,#d6dde8);overflow: hidden;background: linear-gradient(var(--sp-card-accent,var(--aura-accent-color,#3f6cf6)),var(--sp-card-accent,var(--aura-accent-color,#3f6cf6))) 0 0 / 100% 3px no-repeat,var(--aura-surface-color,#ffffff);box-shadow: var(--aura-shadow-xs,0 1px 3px rgba(16,24,40,0.08))}.student-performance-card--assessments{--sp-card-accent: var(--aura-accent-color,#3f6cf6)}.student-performance-card--assessments>.student-performance-metrics{margin-top: -3.2rem}.student-performance-card--attendance{--sp-card-accent: var(--aura-green,#2e7d32)}.student-performance-card--evaluations{--sp-card-accent: var(--aura-orange,#d97706)}.student-performance-summary-title{margin: 0;font-weight: 700;color: var(--vaadin-text-color,#1f2937)}.student-performance-section-title{margin: 0}.student-performance-metrics{gap: var(--vaadin-gap-s,0.7rem)}.student-performance-metric{display: grid;gap: 0.12rem;align-content: start;min-height: 0;min-width: 7rem;padding: 0.24rem 0.45rem 0.12rem 0.45rem;border-radius: var(--vaadin-radius-m,10px);border: 1px solid color-mix(in srgb,var(--vaadin-border-color,#d6dde8) 82%,#ffffff);background: linear-gradient( 180deg,color-mix(in srgb,var(--aura-surface-color,#ffffff) 92%,transparent) 0%,color-mix(in srgb,var(--aura-app-background,#f4f6fa) 56%,transparent) 100% );box-shadow: inset 0 1px 0 color-mix(in srgb,#ffffff 75%,transparent)}.student-performance-metric-label{font-size: var(--vaadin-font-size-xs,0.78rem);line-height: 1.15;text-transform: uppercase;letter-spacing: 0.02em}.student-performance-metric-value,.student-performance-criterion-name{font-weight: 700;color: var(--vaadin-text-color,#1f2937)}.student-performance-metric-value{font-size: 1.35rem;line-height: 1.1}vaadin-horizontal-layout.student-performance-metrics{width: 100%}vaadin-horizontal-layout.student-performance-metrics>.student-performance-metric{flex: 1 1 0}.student-performance-badges{gap: var(--vaadin-gap-xs,0.4rem)}.student-performance-badge{display: inline-flex;align-items: center;justify-content: center;padding: 0.2rem 0.55rem;border-radius: 999px;border: 1px solid var(--vaadin-border-color,#d6dde8);background: var(--aura-surface-color,#ffffff);color: var(--vaadin-text-color,#1f2937);font-size: var(--vaadin-font-size-xs,0.78rem);font-weight: 700;line-height: 1.25;white-space: nowrap}.student-performance-badge--success{background: color-mix(in srgb,var(--aura-green,#2e7d32) 14%,#ffffff);border-color: color-mix(in srgb,var(--aura-green,#2e7d32) 35%,#ffffff);color: var(--aura-green-text,#215f33)}.student-performance-badge--primary{background: color-mix(in srgb,var(--aura-accent-color,#3f6cf6) 14%,#ffffff);border-color: color-mix(in srgb,var(--aura-accent-color,#3f6cf6) 36%,#ffffff);color: var(--aura-accent-text-color,#244ecf)}.student-performance-badge--warning{background: color-mix(in srgb,var(--aura-orange,#d97706) 14%,#ffffff);border-color: color-mix(in srgb,var(--aura-orange,#d97706) 34%,#ffffff);color: var(--aura-orange-text,#8c5300)}.student-performance-badge--error{background: color-mix(in srgb,var(--aura-red,#dc2626) 14%,#ffffff);border-color: color-mix(in srgb,var(--aura-red,#dc2626) 34%,#ffffff);color: var(--aura-red-text,#a32020)}.student-performance-badge--contrast{background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 66%,var(--aura-app-background,#f4f6fa));border-color: var(--vaadin-border-color,#d6dde8);color: var(--vaadin-text-color-secondary,#5a6578)}vaadin-grid.student-performance-grid{border: 1px solid var(--vaadin-border-color,#d6dde8);border-radius: var(--vaadin-radius-m,10px);overflow: hidden}vaadin-grid.student-performance-grid::part(header-cell){background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 82%,var(--aura-app-background,#f4f6fa));color: var(--vaadin-text-color,#1f2937);font-weight: 700}vaadin-grid.student-performance-grid::part(body-cell){white-space: normal}vaadin-grid.student-performance-grid::part(row):hover{background: color-mix(in srgb,var(--aura-app-background,#f4f6fa) 45%,transparent)}@media (max-width: 860px){.student-performance-period-card{min-width: 13rem}.student-performance-summary-card{min-width: 100%}vaadin-horizontal-layout.student-performance-metrics{flex-wrap: wrap}vaadin-horizontal-layout.student-performance-metrics>.student-performance-metric{flex-basis: calc(50% - var(--vaadin-gap-s,0.7rem));min-width: 9rem}}@media (max-width: 560px){vaadin-horizontal-layout.student-performance-metrics>.student-performance-metric{flex-basis: 100%}}vaadin-grid.school-class-lessons-grid{border: 1px solid var(--vaadin-border-color,#d6dde8);border-radius: var(--vaadin-radius-m,10px);overflow: hidden}vaadin-grid.school-class-lessons-grid::part(header-cell){background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 82%,var(--aura-app-background,#f4f6fa));color: var(--vaadin-text-color,#1f2937);font-weight: 700}vaadin-grid.school-class-lessons-grid::part(body-cell){white-space: normal;line-height: 1.35}vaadin-grid.school-class-lessons-grid::part(row):hover{background: color-mix(in srgb,var(--aura-app-background,#f4f6fa) 45%,transparent)}.my-notifications-content-host{display: flex;flex-direction: column;width: 100%;min-width: 0;min-height: 26rem}.my-notifications-empty-state{box-sizing: border-box;width: 100%}vaadin-grid.my-notifications-grid{min-width: 0}vaadin-grid.my-notifications-grid::part(header-cell),vaadin-grid.my-notifications-grid::part(body-cell){white-space: normal;overflow-wrap: anywhere;line-height: 1.35}vaadin-grid.my-notifications-grid::part(header-cell){background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 82%,var(--aura-app-background,#f4f6fa));color: var(--vaadin-text-color,#1f2937);font-weight: 700}vaadin-grid.my-notifications-grid::part(body-cell){vertical-align: top}.my-notifications-grid__message-cell,.my-notifications-grid__message-title,.my-notifications-grid__message-body,.my-notifications-grid__date-cell{min-width: 0;overflow-wrap: anywhere}.my-notifications-grid__type-badge,.my-notifications-grid__state-badge{display: inline-flex;align-items: center;max-width: 100%;min-width: 0;white-space: nowrap;text-align: center;line-height: 1.2;justify-content: center;overflow: hidden;text-overflow: ellipsis}@media (max-width: 900px){vaadin-grid.my-notifications-grid{font-size: var(--vaadin-font-size-s,0.875rem)}}.school-class-lessons-flags{display: flex;flex-wrap: wrap;gap: var(--vaadin-gap-xs,0.35rem);align-items: center;align-content: flex-start}.school-class-lessons-flag{display: inline-flex;align-items: center;justify-content: center;padding: 0.15rem 0.5rem;border-radius: 999px;border: 1px solid var(--vaadin-border-color,#d6dde8);background: var(--aura-surface-color,#ffffff);color: var(--vaadin-text-color,#1f2937);font-size: var(--vaadin-font-size-xs,0.78rem);font-weight: 700;line-height: 1.2;white-space: nowrap}.school-class-lessons-flag--success{background: color-mix(in srgb,var(--aura-green,#2e7d32) 14%,#ffffff);border-color: color-mix(in srgb,var(--aura-green,#2e7d32) 35%,#ffffff);color: var(--aura-green-text,#215f33)}.school-class-lessons-flag--error{background: color-mix(in srgb,var(--aura-red,#dc2626) 14%,#ffffff);border-color: color-mix(in srgb,var(--aura-red,#dc2626) 34%,#ffffff);color: var(--aura-red-text,#a32020)}.school-class-lessons-flag--contrast{background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 66%,var(--aura-app-background,#f4f6fa));border-color: var(--vaadin-border-color,#d6dde8);color: var(--vaadin-text-color-secondary,#5a6578)}vaadin-button.lessons-filter-chip{border-radius: 999px;--vaadin-button-border-width: 1px;--vaadin-button-border-color: var(--vaadin-border-color,#d6dde8);--vaadin-button-background: var(--aura-surface-color,#ffffff);--vaadin-button-text-color: var(--vaadin-text-color,#1f2937);--vaadin-button-padding: 0.25rem 0.65rem;--vaadin-button-font-size: var(--vaadin-font-size-xs,0.78rem)}vaadin-button.lessons-filter-chip::part(label){font-weight: 700}vaadin-button.lessons-filter-chip[data-flag-theme="success"]{--vaadin-button-background: color-mix(in srgb,var(--aura-green,#2e7d32) 14%,#ffffff);--vaadin-button-border-color: color-mix(in srgb,var(--aura-green,#2e7d32) 35%,#ffffff);--vaadin-button-text-color: var(--aura-green-text,#215f33)}vaadin-button.lessons-filter-chip[data-flag-theme="error"]{--vaadin-button-background: color-mix(in srgb,var(--aura-red,#dc2626) 14%,#ffffff);--vaadin-button-border-color: color-mix(in srgb,var(--aura-red,#dc2626) 34%,#ffffff);--vaadin-button-text-color: var(--aura-red-text,#a32020)}vaadin-button.lessons-filter-chip[data-flag-theme="contrast"]{--vaadin-button-background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 66%,var(--aura-app-background,#f4f6fa));--vaadin-button-border-color: var(--vaadin-border-color,#d6dde8);--vaadin-button-text-color: var(--vaadin-text-color-secondary,#5a6578)}vaadin-button.lessons-filter-chip.lessons-filter-chip--selected{box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--vaadin-text-color,#1f2937) 22%,transparent)}.guardian-personal-details-tab{gap: var(--vaadin-gap-m,1rem)}vaadin-card.guardian-details-section-card{width: 100%;--vaadin-card-padding: max(0.75rem,var(--vaadin-padding-s,0.75rem));--vaadin-card-gap: var(--vaadin-gap-s,0.7rem);border-radius: var(--vaadin-radius-l,12px);background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 93%,var(--aura-app-background,#f4f6fa));box-shadow: var(--aura-shadow-xs,0 1px 3px rgba(16,24,40,0.08))}vaadin-card.guardian-details-section-card [slot="title"]{display: inline-flex;align-items: center;width: fit-content;margin-bottom: 0.1rem;padding: 0.18rem 0.6rem;border-radius: 999px;border: 1px solid color-mix(in srgb,var(--aura-accent-color,#3f6cf6) 26%,#ffffff);background: color-mix(in srgb,var(--aura-accent-color,#3f6cf6) 10%,#ffffff);color: var(--vaadin-text-color,#1f2937);font-size: var(--vaadin-font-size-s,0.85rem);font-weight: 700;line-height: 1.3}.invoice-editor-shell{gap: var(--vaadin-gap-m,1rem);align-items: flex-start}.invoice-editor-main{min-width: 0}.invoice-editor-side{position: sticky;top: var(--vaadin-gap-m,1rem);border: 1px solid var(--vaadin-border-color,#d6dde8);border-radius: var(--vaadin-radius-l,12px);padding: var(--vaadin-padding-m,1rem);background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 94%,var(--aura-app-background,#f4f6fa));box-shadow: var(--aura-shadow-xs,0 1px 3px rgba(16,24,40,0.08))}.invoice-editor-side-rail{width: 340px;min-width: 340px}.invoice-editor-side-card{width: 100%;box-sizing: border-box;border: 1px solid var(--vaadin-border-color,#d6dde8);border-radius: var(--vaadin-radius-l,12px);padding: var(--vaadin-padding-m,1rem);background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 94%,var(--aura-app-background,#f4f6fa));box-shadow: var(--aura-shadow-xs,0 1px 3px rgba(16,24,40,0.08))}.invoice-editor-side-title{margin: 0;font-size: var(--vaadin-font-size-m,1rem)}vaadin-details.invoice-editor-section-card{width: 100%;border: 1px solid var(--vaadin-border-color,#d6dde8);border-radius: var(--vaadin-radius-l,12px);background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 94%,var(--aura-app-background,#f4f6fa));box-shadow: var(--aura-shadow-xs,0 1px 3px rgba(16,24,40,0.08))}vaadin-details.invoice-editor-section-card::part(content){padding: 0.25rem 0.6rem 0.8rem 0.6rem}vaadin-details.invoice-editor-section-card::part(summary){font-weight: 700}.invoice-editor-empty-state{border: 1px dashed var(--vaadin-border-color,#d6dde8);border-radius: var(--vaadin-radius-m,10px);background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 88%,var(--aura-app-background,#f4f6fa))}.invoice-editor-empty-state-message{margin: 0;color: var(--vaadin-text-color-secondary,#5a6578)}.invoice-editor-bottom-actions{margin-top: var(--vaadin-gap-s,0.7rem);justify-content: flex-start;flex-wrap: wrap;gap: var(--vaadin-gap-s,0.7rem)}.invoice-editor-bottom-actions>vaadin-button{min-width: 10.25rem}.invoice-editor-readiness-card{border: 1px solid var(--vaadin-border-color,#d6dde8);border-radius: var(--vaadin-radius-m,10px);padding: 0.45rem 0.55rem;background: var(--aura-surface-color,#ffffff)}.invoice-editor-readiness-row{align-items: center;min-height: 1.6rem}.invoice-editor-readiness-row--ok{color: var(--aura-green-text,#215f33)}.invoice-editor-readiness-row--pending{color: var(--aura-red-text,#a32020)}.invoice-editor-readiness-icon{width: var(--vaadin-icon-size-s,0.95rem);height: var(--vaadin-icon-size-s,0.95rem)}.invoice-editor-readiness-row--warning{color: var(--aura-orange-text,#8c5300)}.invoice-editor-draft-status{display: inline-flex;align-items: center;width: fit-content;padding: 0.2rem 0.55rem;border-radius: 999px;border: 1px solid var(--vaadin-border-color,#d6dde8);font-size: var(--vaadin-font-size-s,0.85rem);font-weight: 700}.invoice-editor-draft-status--clean{background: color-mix(in srgb,var(--aura-green,#2e7d32) 14%,#ffffff);border-color: color-mix(in srgb,var(--aura-green,#2e7d32) 34%,#ffffff);color: var(--aura-green-text,#215f33)}.invoice-editor-draft-status--dirty{background: color-mix(in srgb,var(--aura-orange,#d97706) 14%,#ffffff);border-color: color-mix(in srgb,var(--aura-orange,#d97706) 34%,#ffffff);color: var(--aura-orange-text,#8c5300)}.invoice-editor-draft-status--neutral{background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 66%,var(--aura-app-background,#f4f6fa));border-color: var(--vaadin-border-color,#d6dde8);color: var(--vaadin-text-color-secondary,#5a6578)}@media (max-width: 1100px){.invoice-editor-shell{flex-direction: column}.invoice-editor-side-rail{width: 100%;min-width: 0}.invoice-editor-side{position: static;width: 100%}}span[theme~="badge"]{display: inline-flex;align-items: center;justify-content: center;padding: 0.2rem 0.55rem;border-radius: 999px;border: 1px solid var(--vaadin-border-color,#d6dde8);background: var(--aura-surface-color,#ffffff);color: var(--vaadin-text-color,#1f2937);font-size: var(--vaadin-font-size-xs,0.78rem);font-weight: 700;line-height: 1.25;white-space: nowrap}span[theme~="badge"][theme~="success"]{background: color-mix(in srgb,var(--aura-green,#2e7d32) 14%,#ffffff);border-color: color-mix(in srgb,var(--aura-green,#2e7d32) 35%,#ffffff);color: var(--aura-green-text,#215f33)}span[theme~="badge"][theme~="primary"]{background: color-mix(in srgb,var(--aura-accent-color,#3f6cf6) 14%,#ffffff);border-color: color-mix(in srgb,var(--aura-accent-color,#3f6cf6) 36%,#ffffff);color: var(--aura-accent-text-color,#244ecf)}span[theme~="badge"][theme~="error"]{background: color-mix(in srgb,var(--aura-red,#dc2626) 14%,#ffffff);border-color: color-mix(in srgb,var(--aura-red,#dc2626) 34%,#ffffff);color: var(--aura-red-text,#a32020)}span[theme~="badge"][theme~="warning"]{background: color-mix(in srgb,var(--aura-orange,#d97706) 14%,#ffffff);border-color: color-mix(in srgb,var(--aura-orange,#d97706) 34%,#ffffff);color: var(--aura-orange-text,#8c5300)}span[theme~="badge"][theme~="contrast"]{background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 66%,var(--aura-app-background,#f4f6fa));border-color: var(--vaadin-border-color,#d6dde8);color: var(--vaadin-text-color-secondary,#5a6578)}vaadin-grid.academic-period-grid::part(ap-row-year-cell),vaadin-tree-grid.academic-period-grid::part(ap-row-year-cell){font-weight: 600}vaadin-grid.academic-period-grid::part(ap-row-child-cell),vaadin-tree-grid.academic-period-grid::part(ap-row-child-cell){padding-inline-start: var(--vaadin-gap-l,1rem)}vaadin-grid.academic-period-grid .ap-badge,vaadin-tree-grid.academic-period-grid .ap-badge{border-radius: 999px;padding: 2px 10px;font-size: var(--aura-font-size-xs,0.75rem);font-weight: 600;display: inline-flex;align-items: center;gap: 6px;border: 1px solid var(--vaadin-border-color,#d6dde8);background: var(--vaadin-background-container,color-mix(in srgb,var(--aura-surface-color,#ffffff) 84%,transparent));color: var(--vaadin-text-color,#1f2937)}vaadin-grid.academic-period-grid .ap-badge.ap-badge--current,vaadin-tree-grid.academic-period-grid .ap-badge.ap-badge--current{border-color: color-mix(in srgb,var(--aura-green,#2e7d32) 34%,#ffffff);background: color-mix(in srgb,var(--aura-green,#2e7d32) 14%,#ffffff);color: var(--aura-green-text,#215f33)}vaadin-grid.academic-period-grid .ap-badge.ap-badge--current-term,vaadin-tree-grid.academic-period-grid .ap-badge.ap-badge--current-term{border-color: color-mix(in srgb,var(--aura-accent-color,#3f6cf6) 26%,#ffffff);background: color-mix(in srgb,var(--aura-accent-color,#3f6cf6) 10%,#ffffff);color: var(--vaadin-text-color,#1f2937)}vaadin-grid.academic-period-grid .ap-badge.ap-badge--future,vaadin-tree-grid.academic-period-grid .ap-badge.ap-badge--future{border-color: var(--aura-accent-border-color,color-mix(in srgb,var(--aura-accent-color,#3f6cf6) 26%,#ffffff));background: var(--aura-accent-surface,color-mix(in srgb,var(--aura-accent-color,#3f6cf6) 10%,#ffffff));color: var(--aura-accent-text-color,#244ecf)}vaadin-grid.academic-period-grid .ap-badge.ap-badge--past,vaadin-tree-grid.academic-period-grid .ap-badge.ap-badge--past{border-style: dashed;border-color: var(--vaadin-border-color-secondary,var(--vaadin-border-color,#d6dde8));background: var(--vaadin-background-container-strong,color-mix(in srgb,var(--aura-surface-color,#ffffff) 74%,transparent));color: var(--vaadin-text-color-secondary,#5a6578)}vaadin-grid.academic-period-grid .ap-badge.ap-badge--gap,vaadin-tree-grid.academic-period-grid .ap-badge.ap-badge--gap{border-color: color-mix(in srgb,var(--aura-orange,#d97706) 34%,#ffffff);background: color-mix(in srgb,var(--aura-orange,#d97706) 14%,#ffffff);color: var(--aura-orange-text,#8c5300)}vaadin-grid.academic-period-grid .ap-badge.ap-badge--locked,vaadin-tree-grid.academic-period-grid .ap-badge.ap-badge--locked{border-color: var(--vaadin-border-color-secondary,var(--vaadin-border-color,#d6dde8));background: var(--vaadin-background-container-strong,color-mix(in srgb,var(--aura-surface-color,#ffffff) 74%,transparent));color: var(--vaadin-text-color-secondary,#5a6578)}.report-card-criteria-year-label{font-weight: 600}.report-card-criteria-meta{font-size: var(--vaadin-font-size-s,0.875rem);color: var(--vaadin-text-color-secondary,#5a6578)}.report-card-criteria-current-year-pill{display: inline-flex;align-items: center;border-radius: 999px;padding: 2px 10px;font-size: var(--aura-font-size-xs,0.75rem);font-weight: 600;border: 1px solid color-mix(in srgb,var(--aura-green,#15803d) 32%,#ffffff);background: color-mix(in srgb,var(--aura-green,#15803d) 12%,#ffffff);color: var(--aura-green-text,#166534)}.report-card-criteria-limit-pill{display: inline-flex;align-items: center;border-radius: 999px;padding: 2px 10px;font-size: var(--aura-font-size-xs,0.75rem);font-weight: 600;border: 1px solid color-mix(in srgb,var(--aura-orange,#d97706) 34%,#ffffff);background: color-mix(in srgb,var(--aura-orange,#d97706) 14%,#ffffff);color: var(--aura-orange-text,#8c5300)}.rcc-list{min-width: 0}.student-report-card-editor-view{gap: var(--vaadin-gap-m,1rem)}.student-report-card-editor-actions{margin-top: 0.2rem;flex-wrap: wrap;gap: var(--vaadin-gap-s,0.7rem)}.student-report-card-editor-sidebar{min-width: 0}.student-report-card-evidence{gap: var(--vaadin-gap-s,0.7rem)}.student-report-card-evidence-title{font-weight: 700;font-size: var(--vaadin-font-size-l,1.1rem);color: var(--vaadin-text-color,#1f2937)}.student-report-card-evidence-dashboard-shortcut{display: flex;align-items: center;justify-content: space-between;gap: var(--vaadin-gap-s,0.7rem);padding: 0.42rem 0.55rem;border: 1px solid var(--vaadin-border-color,#d6dde8);border-radius: var(--vaadin-radius-m,10px);background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 92%,var(--aura-app-background,#f4f6fa))}.student-report-card-evidence-dashboard-hint{font-size: var(--vaadin-font-size-s,0.85rem);color: var(--vaadin-text-color-secondary,#5a6578)}.student-report-card-evidence-dashboard-button{flex-shrink: 0}vaadin-details.student-report-card-evidence-section{border: 1px solid var(--vaadin-border-color,#d6dde8);border-radius: var(--vaadin-radius-m,10px);background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 94%,var(--aura-app-background,#f4f6fa));box-shadow: var(--aura-shadow-xs,0 1px 3px rgba(16,24,40,0.08))}vaadin-details.student-report-card-evidence-section::part(content){padding: 0.1rem 0.7rem 0.7rem 0.7rem}vaadin-details.student-report-card-evidence-section::part(summary){font-weight: 700}.student-report-card-evidence-empty,.student-report-card-evidence-note,.student-report-card-evidence-distribution-stats{font-size: var(--vaadin-font-size-s,0.85rem);color: var(--vaadin-text-color-secondary,#5a6578)}.student-report-card-evidence-card{padding: 0.5rem 0.65rem;border-radius: var(--vaadin-radius-m,10px);border: 1px solid var(--vaadin-border-color,#d6dde8);background: var(--aura-surface-color,#ffffff);box-shadow: var(--aura-shadow-xs,0 1px 3px rgba(16,24,40,0.08))}.student-report-card-evidence-card-title,.student-report-card-evidence-latest-title,.student-report-card-evidence-latest-head{font-weight: 700;color: var(--vaadin-text-color,#1f2937)}.student-report-card-evidence-card-grade{font-size: var(--vaadin-font-size-s,0.85rem);color: var(--vaadin-text-color,#1f2937)}.student-report-card-evidence-latest-title{margin-top: 0.2rem}.student-report-card-evidence-grouped-performance{gap: var(--vaadin-gap-xs,0.4rem)}.student-report-card-evidence-grouped-badge{display: inline-flex;align-items: center;justify-content: center;padding: 0.18rem 0.55rem;border-radius: 999px;border: 1px solid var(--vaadin-border-color,#d6dde8);background: var(--aura-surface-color,#ffffff);color: var(--vaadin-text-color,#1f2937);font-size: var(--vaadin-font-size-xs,0.78rem);font-weight: 700;line-height: 1.2;white-space: nowrap}.student-report-card-evidence-grouped-badge--success{background: color-mix(in srgb,var(--aura-green,#2e7d32) 14%,#ffffff);border-color: color-mix(in srgb,var(--aura-green,#2e7d32) 35%,#ffffff);color: var(--aura-green-text,#215f33)}.student-report-card-evidence-grouped-badge--error{background: color-mix(in srgb,var(--aura-red,#dc2626) 14%,#ffffff);border-color: color-mix(in srgb,var(--aura-red,#dc2626) 34%,#ffffff);color: var(--aura-red-text,#a32020)}.student-report-card-evidence-grouped-badge--contrast{background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 66%,var(--aura-app-background,#f4f6fa));border-color: var(--vaadin-border-color,#d6dde8);color: var(--vaadin-text-color-secondary,#5a6578)}.student-report-card-evidence-distribution{display: grid;gap: 0.35rem}.student-report-card-evidence-distribution-row{display: grid;grid-template-columns: auto auto minmax(5.5rem,1fr);gap: 0.5rem;align-items: center}.student-report-card-evidence-grade-pill{display: inline-flex;align-items: center;justify-content: center;min-width: 4.2rem;padding: 0.16rem 0.45rem;border-radius: 999px;border: 1px solid var(--vaadin-border-color,#d6dde8);font-size: var(--vaadin-font-size-xs,0.78rem);font-weight: 700;line-height: 1.2}.student-report-card-evidence-grade-pill--success{background: color-mix(in srgb,var(--aura-green,#2e7d32) 14%,#ffffff);border-color: color-mix(in srgb,var(--aura-green,#2e7d32) 35%,#ffffff);color: var(--aura-green-text,#215f33)}.student-report-card-evidence-grade-pill--primary{background: color-mix(in srgb,var(--aura-accent-color,#3f6cf6) 14%,#ffffff);border-color: color-mix(in srgb,var(--aura-accent-color,#3f6cf6) 36%,#ffffff);color: var(--aura-accent-text-color,#244ecf)}.student-report-card-evidence-grade-pill--warning{background: color-mix(in srgb,var(--aura-orange,#d97706) 14%,#ffffff);border-color: color-mix(in srgb,var(--aura-orange,#d97706) 34%,#ffffff);color: var(--aura-orange-text,#8c5300)}.student-report-card-evidence-grade-pill--error{background: color-mix(in srgb,var(--aura-red,#dc2626) 14%,#ffffff);border-color: color-mix(in srgb,var(--aura-red,#dc2626) 34%,#ffffff);color: var(--aura-red-text,#a32020)}.student-report-card-evidence-grade-pill--contrast{background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 66%,var(--aura-app-background,#f4f6fa));border-color: var(--vaadin-border-color,#d6dde8);color: var(--vaadin-text-color-secondary,#5a6578)}.student-report-card-evidence-distribution-track{height: 0.42rem;border-radius: 999px;border: 1px solid var(--vaadin-border-color,#d6dde8);background: color-mix(in srgb,var(--aura-surface-color,#ffffff) 60%,var(--aura-app-background,#f4f6fa));overflow: hidden}.student-report-card-evidence-distribution-fill{height: 100%;min-width: 0;border-radius: inherit}.student-report-card-evidence-distribution-fill--success{background: color-mix(in srgb,var(--aura-green,#2e7d32) 70%,#ffffff)}.student-report-card-evidence-distribution-fill--primary{background: color-mix(in srgb,var(--aura-accent-color,#3f6cf6) 72%,#ffffff)}.student-report-card-evidence-distribution-fill--warning{background: color-mix(in srgb,var(--aura-orange,#d97706) 72%,#ffffff)}.student-report-card-evidence-distribution-fill--error{background: color-mix(in srgb,var(--aura-red,#dc2626) 72%,#ffffff)}.student-report-card-evidence-distribution-fill--contrast{background: color-mix(in srgb,var(--vaadin-text-color-secondary,#5a6578) 52%,#ffffff)}.student-report-card-evidence-latest-list{gap: 0}.student-report-card-evidence-latest-row{margin-bottom: 0.35rem;padding: 0.35rem 0.55rem;border-radius: var(--vaadin-radius-m,10px)}.student-report-card-evidence-latest-row--odd{background: var(--vaadin-background-container,color-mix(in srgb,var(--aura-surface-color,#ffffff) 84%,transparent))}.student-report-card-evidence-latest-row--even{background: var(--vaadin-background-container-strong,color-mix(in srgb,var(--aura-surface-color,#ffffff) 74%,transparent))}vaadin-custom-field.phone-number-field{width: 100%}vaadin-custom-field.phone-number-field::part(input-fields){display: flex;align-items: flex-start;gap: var(--vaadin-gap-xs,0.25rem);flex-wrap: nowrap;width: 100%;min-width: 0}vaadin-custom-field.phone-number-field>vaadin-combo-box:first-child{flex: 0 0 9.5rem;min-width: 8.5rem}vaadin-custom-field.phone-number-field>vaadin-text-field:last-child{flex: 1 1 auto;min-width: 0}.phone-country-flag-prefix{display: inline-flex;align-items: center;justify-content: center;width: 1.35rem;height: 1rem;min-width: 1.35rem;border-radius: 2px;object-fit: cover}vaadin-custom-field.phone-number-field--warning::part(helper-text){color: var( --vaadin-warning-text-color,var(--lumo-warning-text-color,currentColor) )}