/* Imanexia Éducation — visual identity derived from the supplied artwork. */
:root {
    --imanexia-navy: #0d407c;
    --imanexia-navy-dark: #09366a;
    --imanexia-blue: #175396;
    --imanexia-cyan: #c5e8e8;
    --imanexia-cyan-soft: #effafa;
    --imanexia-sky: #8ca8e8;
    --imanexia-coral: #ee7780;
    --imanexia-yellow: #f4c84e;
    --imanexia-orange: #f19a45;
    --ink: #103f76;
    --ink-2: #486a89;
    --deep: #0d407c;
    --purple: #175396;
    --purple-dark: #09366a;
    --lilac: #e2f4f3;
    --peach: #f8cfba;
    --orange: #ee7780;
    --yellow: #f4c84e;
    --mint: #cbeee9;
    --blue: #d9eafa;
    --cream: #f8fcfc;
    --paper: #ffffff;
    --line: #d7e8e9;
    --muted: #70869c;
    --shadow: 0 18px 60px rgba(13, 64, 124, .12);
}

body { background: #f8fcfc; }

/* Poppins carries the product voice across public pages, forms and ERP views. */
body,
button,
input,
select,
textarea,
.button,
.erp-body,
.auth-body { font-family: "Poppins", Arial, sans-serif !important; }
h1,
h2,
h3,
h4,
h5,
h6 { font-family: "Poppins", Arial, sans-serif !important; }

.site-header { background: rgba(255, 255, 255, .94); border-bottom-color: rgba(13, 64, 124, .1); }
.site-header.is-scrolled { box-shadow: 0 5px 28px rgba(13, 64, 124, .12); }
.site-nav { color: #385a7a; }
.site-nav>a:not(.button):after { background: var(--imanexia-orange); }

/* The supplied lock-up remains unaltered; its navy ground becomes the brand anchor. */
.brand.brand-logo {
    display: inline-flex;
    flex: 0 0 auto;
    gap: 0;
    width: 164px;
    height: 62px;
    padding: 0;
    overflow: hidden;
    border-radius: 12px;
    background: var(--imanexia-navy);
    box-shadow: 0 7px 18px rgba(13, 64, 124, .16);
}
.brand.brand-logo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.site-footer .brand.brand-logo,
.erp-sidebar .brand.brand-logo { box-shadow: none; }
.brand-logo-on-dark { border-radius: 9px; }

.button-primary { background: var(--imanexia-navy); box-shadow: 0 8px 18px rgba(13, 64, 124, .23); }
.button-primary:hover { background: var(--imanexia-navy-dark); box-shadow: 0 12px 26px rgba(13, 64, 124, .3); }
.button-dark { background: var(--imanexia-navy); }
.button-dark:hover { background: var(--imanexia-navy-dark); }
.button-light { color: var(--imanexia-navy); }
.button-secondary { color: var(--imanexia-navy); border-color: #c9dfe4; background: #fff; }
.button-secondary:hover { background: var(--imanexia-cyan-soft); }
.button-muted { background: #e8f4f4; color: var(--imanexia-navy); }
.eyebrow { color: var(--imanexia-blue); }
.eyebrow-light { color: #d9f5f2; }
.eyebrow-dot { background: var(--imanexia-yellow); box-shadow: 0 0 0 4px rgba(244, 200, 78, .17); }
.text-link { color: var(--imanexia-blue); }

/* A quiet graph-paper texture echoes the supplied learning designs without competing with content. */
.hero-section,
.services-hero-photo,
.about-photo-hero { isolation: isolate; }
.hero-section {
    background:
        radial-gradient(circle at 76% 27%, rgba(197, 232, 232, .28), transparent 31%),
        linear-gradient(121deg, #0d407c 0%, #104984 56%, #18599a 100%);
}
.hero-section::after,
.services-hero-photo::after,
.about-photo-hero::after {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    pointer-events: none;
    opacity: .42;
    background-image:
        linear-gradient(rgba(223, 248, 246, .15) 1px, transparent 1px),
        linear-gradient(90deg, rgba(223, 248, 246, .15) 1px, transparent 1px);
    background-size: 52px 52px;
    mask-image: linear-gradient(90deg, rgba(0, 0, 0, .18), rgba(0, 0, 0, .86));
}
.hero-aurora { background: radial-gradient(circle, rgba(197, 232, 232, .34), transparent 67%); }
.hero-grid-lines { background-image: linear-gradient(rgba(222, 248, 246, .08) 1px, transparent 1px), linear-gradient(90deg, rgba(222, 248, 246, .08) 1px, transparent 1px); }
.hero-copy h1 em { color: #a9dce0; }
.hero-photo-glow { background: radial-gradient(circle at 40% 30%, #c5e8e8 0, rgba(90, 161, 186, .3) 35%, transparent 68%); }
.hero-image-chip .material-symbols-rounded { color: var(--imanexia-blue); }
.hero-session-card { color: #254c73; box-shadow: 0 13px 31px rgba(13, 64, 124, .2); }
.hero-session-card small { color: #6d8499; }
.hero-doodles>* { color: var(--imanexia-sky); }
.hero-doodles b { color: var(--imanexia-yellow); }

.service-card:hover { box-shadow: 0 17px 28px rgba(13, 64, 124, .14); }
.service-card-purple { background: #dceef4; }
.service-card-yellow { background: #fff0ba; }
.service-card-mint { background: #d5f0eb; }
.service-card p { color: #496582; }
.service-icon { color: var(--imanexia-navy); }

.story-section { background: linear-gradient(135deg, #ecf8f7 0%, #fbfefe 54%, #fff8e7 100%); }
.story-stat { background: var(--imanexia-navy); box-shadow: 0 16px 35px rgba(13, 64, 124, .28); }
.story-stat .material-symbols-rounded { color: var(--imanexia-yellow); }
.story-stat small { color: #d2eeee; }
.check { background: var(--imanexia-cyan); color: #08745c; }

.results-banner { background: linear-gradient(112deg, #0d407c, #1a5794); }
.results-banner::after { border-color: rgba(197, 232, 232, .18); }
.quote-featured { background: #e9f7f6; border-color: #e9f7f6; }
.quote-purple { background: var(--imanexia-navy); border-color: var(--imanexia-navy); }
.quote-purple>span { color: #bfe8e5; }
.quote-purple .quote-person span:last-child { color: #c5e8e8; }
.final-cta { background: linear-gradient(125deg, #0d407c, #1b5997); }
.final-cta p { color: #d8f2f1; }

.services-hero-photo,
.about-photo-hero {
    background:
        radial-gradient(circle at 5% 12%, rgba(197, 232, 232, .38), transparent 30%),
        linear-gradient(118deg, #0d407c, #18599a);
}
.program-illustration { box-shadow: inset 0 0 0 1px rgba(13, 64, 124, .05); }
.illustration-home { background: #dceef4; color: var(--imanexia-blue); }
.illustration-online { background: #fff0c6; color: #db7b37; }
.illustration-exam { background: #d4f0eb; color: #177d68; }
.subjects-section,
.values-section { background: #eef8f8; }
.subject-grid>div { border-color: #dcebed; }
.subject-grid>div:hover { border-color: #91c9d1; }
.subject-grid .material-symbols-rounded { color: var(--imanexia-blue); }
.process-steps>div:not(:last-child)::after { border-color: #9dced2; }
.process-steps i { background: #d9f0ef; color: var(--imanexia-blue); }
.mission-symbol { background: #dceff0; color: var(--imanexia-blue); }
.mission-symbol i { color: var(--imanexia-coral); }
.about-stamp { background: var(--imanexia-yellow); color: var(--imanexia-navy); }

/* Tutor value badges must stay readable over the photography. */
.tutor-badges>div {
    background: #ffffff;
    border-color: rgba(197, 232, 232, .95);
    color: var(--imanexia-navy);
    box-shadow: 0 12px 28px rgba(6, 42, 81, .22);
}
.tutor-badges .material-symbols-rounded {
    background: #e0f1f2;
    color: var(--imanexia-blue);
}
.tutor-badges strong { color: var(--imanexia-navy); }
.tutor-badges small { color: #496987; }

.site-footer { background: var(--imanexia-navy); color: #c2dfed; }
.site-footer a:hover { color: var(--imanexia-yellow); }

/* ERP and CMS use the same calm, high-contrast operational palette. */
.auth-body { background: linear-gradient(135deg, #0d407c, #18599a); }
.auth-orb-one { background: #175396; }
.auth-orb-two { border-color: rgba(197, 232, 232, .2); }
.auth-top .text-link { color: #d7f0ef; }
.auth-card { box-shadow: 0 28px 62px rgba(6, 38, 76, .28); }
.form-icon,
.modal-icon { background: #e1f2f2; color: var(--imanexia-blue); }

.erp-body { background: #f5fbfb; }
.erp-sidebar { background: var(--imanexia-navy); color: #c3deec; }
.sidebar-user { background: rgba(197, 232, 232, .08); border-color: rgba(197, 232, 232, .14); }
.sidebar-user span { color: #bddbe9; }
.erp-nav a,
.sidebar-bottom>a,
.sidebar-bottom button { color: #c1dce9; }
.erp-nav a:hover,
.erp-nav a.is-active { background: rgba(197, 232, 232, .14); color: #fff; }
.erp-nav a.is-active { box-shadow: inset 2px 0 var(--imanexia-yellow); }
.erp-nav a b { background: var(--imanexia-coral); }
.erp-topbar { border-bottom-color: #dcebed; }
.erp-card,
.metric-card { border-color: #dcebed; box-shadow: 0 5px 18px rgba(13, 64, 124, .035); }
.metric-purple .metric-icon { color: var(--imanexia-blue); background: #e0f1f2; }
.metric-orange .metric-icon { color: #d87b40; background: #fff0d4; }
.metric-blue .metric-icon { color: #4d70b5; background: #e2ebfb; }
.metric-green .metric-icon { color: #218a73; background: #def4ee; }
.status-contacted,
.status-assessment,
.status-reviewing,
.status-interview { color: var(--imanexia-blue); background: #e0f1f2; }

.cms-intro-icon,
.cms-section-icon,
.cms-tip-card>span { background: #e0f1f2; color: var(--imanexia-blue); }
.cms-anchor-bar { background: #f5fbfb; }
.cms-anchor-bar a { border-color: #dcebed; color: #466481; }
.cms-anchor-bar a:hover { border-color: #8dc7d0; color: var(--imanexia-blue); }
.cms-anchor-bar .material-symbols-rounded { color: var(--imanexia-blue); }
.cms-section-head { border-bottom-color: #e2eeee; }
.cms-section-head h2 { color: #234d77; }
.cms-group { border-bottom-color: #e2eeee; }
.cms-group summary,
.cms-field>label,
.cms-field-label strong { color: #345d82; }
.cms-group summary i { color: #4f88a8; }
.cms-field input:not([type=checkbox]),
.cms-field textarea { border-color: #cfe1e4; color: #234e77; }
.cms-field input:focus,
.cms-field textarea:focus { border-color: #78b9c4; box-shadow: 0 0 0 3px rgba(90, 171, 182, .14); }
.cms-media-field { border-color: #d9e9eb; background: #fbfefe; }
.cms-media-preview { background: #e9f5f5; }
.cms-remove-media input { accent-color: var(--imanexia-blue); }
.cms-tip-card a { color: var(--imanexia-blue); }
.cms-save-bar { border-color: rgba(13, 64, 124, .2); box-shadow: 0 13px 35px rgba(13, 64, 124, .14); }

@media (max-width: 570px) {
    .brand.brand-logo { width: 142px; height: 54px; border-radius: 10px; }
}

/* Operational planning, conversations and finance modules. */
.calendar-module-header { align-items: center; }
.calendar-controls { min-height: 78px; padding: 14px 18px; display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 12px; }
.calendar-filter-form { display: flex; align-items: end; gap: 12px; }
.calendar-filter-form label { display: grid; gap: 4px; color: #496987; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .45px; }
.calendar-filter-form select, .calendar-filter-form input { min-width: 168px; padding: 8px 10px; border: 1px solid #cfe1e4; border-radius: 9px; background: #fff; color: var(--imanexia-navy); font-size: 12px; text-transform: none; letter-spacing: normal; }
.calendar-actions { display: flex; align-items: center; gap: 9px; color: var(--imanexia-navy); white-space: nowrap; }
.calendar-actions>strong { min-width: 140px; text-align: center; font-size: 14px; text-transform: capitalize; }
.calendar-arrow { width: 33px; height: 33px; border: 1px solid #d2e5e7; background: #fff; color: var(--imanexia-blue); }
.calendar-legend { display: flex; flex-wrap: wrap; gap: 14px; margin: 0 0 13px 3px; color: #5e7690; font-size: 10px; font-weight: 600; }
.calendar-legend span { display: inline-flex; align-items: center; gap: 5px; }
.legend-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; }
.legend-planned { background: #e8bb42; }.legend-confirmed { background: #4689bd; }.legend-completed { background: #2b9c79; }.legend-cancelled { background: #dc7180; }
.monthly-calendar { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); overflow: auto; padding: 0; border-color: #dcebed; }
.calendar-weekday { min-width: 138px; padding: 11px 10px; border-bottom: 1px solid #dcebed; background: #f1f9f9; color: #52718d; font-size: 10px; font-weight: 800; text-align: center; text-transform: uppercase; letter-spacing: .55px; }
.calendar-day { min-width: 138px; min-height: 153px; padding: 8px; border-right: 1px solid #e3eeee; border-bottom: 1px solid #e3eeee; background: #fff; }
.calendar-day:nth-child(7n) { border-right: 0; }
.calendar-day-empty { background: #fbfdfd; }
.calendar-day>time { display: grid; place-items: center; width: 25px; height: 25px; margin-bottom: 6px; border-radius: 50%; color: #56718b; font-size: 11px; font-weight: 700; }
.calendar-day.is-today>time { background: var(--imanexia-navy); color: #fff; }
.calendar-events { display: grid; gap: 5px; }
.calendar-event { position: relative; display: grid; gap: 2px; padding: 7px 7px 7px 9px; border-left: 3px solid #8baecc; border-radius: 7px; background: #eff7fb; color: #234e77; overflow: hidden; }
.calendar-event.event-planned { border-left-color: #e3ae33; background: #fff8df; }.calendar-event.event-confirmed { border-left-color: #498cbf; background: #eaf4fb; }.calendar-event.event-completed { border-left-color: #2b9b78; background: #e8f7f2; }.calendar-event.event-cancelled { border-left-color: #d97280; background: #fceff1; }.calendar-event.event-private { border-left-color: #8999a9; background: #f0f3f5; color: #63798d; }
.calendar-event .event-time { color: #597b96; font-size: 9px; font-weight: 800; }.calendar-event strong { font-size: 10px; line-height: 1.25; }.calendar-event small { color: #5e7892; font-size: 9px; line-height: 1.25; }.calendar-event .status { margin-top: 3px; padding: 2px 5px; font-size: 8px; }
.session-inline-editor { margin-top: 5px; }.session-inline-editor>summary { display: flex; align-items: center; gap: 3px; cursor: pointer; color: var(--imanexia-blue); font-size: 9px; font-weight: 800; list-style: none; }.session-inline-editor>summary::-webkit-details-marker { display: none; }.session-inline-editor>summary .material-symbols-rounded { font-size: 13px; }
.session-inline-editor form { display: grid; gap: 6px; margin-top: 7px; }.session-inline-editor label { display: grid; gap: 3px; color: #52718d; font-size: 9px; font-weight: 700; }.session-inline-editor input, .session-inline-editor select, .session-inline-editor textarea { width: 100%; padding: 6px; border: 1px solid #c7dfe4; border-radius: 6px; background: #fff; color: #264e74; font: 9px "Poppins", sans-serif; }.session-inline-editor textarea { resize: vertical; }.session-inline-editor .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 5px; }
.session-read-details p { margin: 4px 0; color: #51718b; font-size: 9px; line-height: 1.45; }.session-read-details b { color: #234e77; }
.session-owner-note { display: flex; align-items: center; gap: 8px; padding: 9px; border: 1px solid #cfe5e5; border-radius: 9px; background: #f1fafa; color: #426783; font-size: 10px; }.session-owner-note .material-symbols-rounded { color: var(--imanexia-blue); font-size: 20px; }.session-owner-note span:last-child { display: grid; }.session-owner-note strong { color: var(--imanexia-navy); }
.calendar-cancel-form { margin-top: 5px; }.mini-button-danger { color: #b74455; background: #fff0f2; }
.tutor-calendar-profile { display: flex; align-items: center; gap: 10px; padding: 13px 17px; margin-bottom: 12px; }.tutor-calendar-profile>div { display: grid; }.tutor-calendar-profile strong { color: var(--imanexia-navy); font-size: 13px; }.tutor-calendar-profile span:not(.avatar) { color: #66819a; font-size: 10px; }.tutor-calendar-profile p { display: flex; align-items: center; gap: 5px; margin: 0 0 0 auto; color: #597894; font-size: 11px; }.tutor-calendar-profile p .material-symbols-rounded { color: var(--imanexia-blue); font-size: 16px; }

.chat-module-header { margin-bottom: 18px; }.chat-shell { display: grid; grid-template-columns: 285px minmax(0, 1fr); min-height: 610px; overflow: hidden; padding: 0; }.chat-conversations { display: flex; flex-direction: column; border-right: 1px solid #dcebed; background: #fbfefe; }.chat-list-head { display: flex; align-items: center; justify-content: space-between; padding: 20px 18px 14px; }.chat-list-head>div { display: grid; }.chat-list-head strong { color: var(--imanexia-navy); font-size: 14px; }.chat-list-head span { color: #728aa0; font-size: 10px; }.chat-list-head>.material-symbols-rounded { color: var(--imanexia-blue); font-size: 21px; }.chat-search { display: flex; align-items: center; gap: 6px; margin: 0 13px 11px; padding: 0 9px; border: 1px solid #d4e6e8; border-radius: 9px; background: #fff; }.chat-search .material-symbols-rounded { color: #7892a5; font-size: 17px; }.chat-search input { width: 100%; min-width: 0; padding: 9px 0; border: 0; outline: 0; background: transparent; color: #244d73; font-size: 11px; }.chat-contact-list { display: grid; gap: 2px; overflow: auto; padding: 0 7px 12px; }.chat-contact { display: flex; align-items: center; gap: 9px; min-height: 57px; padding: 8px; border-radius: 10px; }.chat-contact:hover, .chat-contact.is-active { background: #e5f3f4; }.chat-contact.is-active { box-shadow: inset 3px 0 var(--imanexia-blue); }.chat-contact-copy { display: grid; min-width: 0; }.chat-contact-copy strong { overflow: hidden; color: #204a72; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }.chat-contact-copy small { color: #758da1; font-size: 9px; }.chat-contact>b { display: grid; place-items: center; min-width: 18px; height: 18px; margin-left: auto; border-radius: 99px; background: var(--imanexia-coral); color: #fff; font-size: 9px; }.chat-contact .avatar img, .chat-panel-head .avatar img { width: 100%; height: 100%; border-radius: inherit; object-fit: cover; }.chat-no-contact { padding: 28px 18px; color: #7590a4; text-align: center; font-size: 11px; }.chat-no-contact .material-symbols-rounded { color: #90bcc1; font-size: 28px; }.chat-panel { display: flex; flex-direction: column; min-width: 0; background: #f8fcfc; }.chat-panel-head { display: flex; align-items: center; gap: 10px; min-height: 73px; padding: 13px 20px; border-bottom: 1px solid #dcebed; background: #fff; }.chat-panel-head>div { display: grid; }.chat-panel-head strong { color: var(--imanexia-navy); font-size: 13px; }.chat-panel-head div span { color: #668197; font-size: 10px; }.chat-panel-head div span i { display: inline-block; width: 6px; height: 6px; margin: 0 4px 1px 0; border-radius: 50%; background: #39a886; }.chat-panel-head>.material-symbols-rounded { margin-left: auto; color: #6d899f; }.chat-history { display: flex; flex: 1; flex-direction: column; gap: 8px; overflow: auto; padding: 21px; }.chat-date { align-self: center; margin: 5px 0 7px; padding: 4px 9px; border-radius: 99px; background: #e7f2f3; color: #5d788e; font-size: 9px; font-weight: 700; }.chat-bubble { align-self: flex-start; max-width: min(76%, 520px); padding: 10px 12px 7px; border-radius: 4px 14px 14px; background: #fff; box-shadow: 0 4px 12px rgba(13,64,124,.07); color: #294f75; }.chat-bubble.is-mine { align-self: flex-end; border-radius: 14px 4px 14px 14px; background: var(--imanexia-navy); color: #fff; }.chat-bubble p { margin: 0; font-size: 11px; line-height: 1.55; }.chat-bubble>span { display: flex; align-items: center; justify-content: flex-end; gap: 2px; margin-top: 4px; color: #7990a3; font-size: 8px; }.chat-bubble.is-mine>span { color: #d1edec; }.chat-bubble .material-symbols-rounded { color: #93dbd4; font-size: 13px; }.chat-welcome, .chat-empty { display: grid; place-content: center; justify-items: center; flex: 1; color: #6f8aa0; text-align: center; }.chat-welcome .material-symbols-rounded, .chat-empty .material-symbols-rounded { color: var(--imanexia-blue); font-size: 39px; }.chat-welcome h2, .chat-empty h2 { margin: 11px 0 4px; color: var(--imanexia-navy); font-size: 19px; }.chat-welcome p, .chat-empty p { max-width: 310px; margin: 0; font-size: 11px; }.chat-composer { padding: 10px 15px 14px; border-top: 1px solid #dcebed; background: #fff; }.chat-quick-actions { display: flex; gap: 6px; margin-bottom: 8px; overflow: auto; }.chat-quick-actions button { padding: 4px 8px; border: 1px solid #d5e8ea; border-radius: 99px; background: #f4fbfb; color: #4a7191; font: 9px "Poppins", sans-serif; white-space: nowrap; }.chat-compose-row { display: flex; align-items: end; gap: 8px; }.chat-icon-button, .chat-send { display: grid; place-items: center; width: 35px; height: 35px; flex: 0 0 auto; border: 0; border-radius: 10px; }.chat-icon-button { background: #e7f3f4; color: var(--imanexia-blue); }.chat-send { background: var(--imanexia-navy); color: #fff; }.chat-compose-row textarea { flex: 1; max-height: 100px; padding: 9px 10px; border: 1px solid #cfe3e5; border-radius: 10px; outline: 0; resize: none; color: #254e75; font: 11px "Poppins", sans-serif; }.chat-compose-row textarea:focus { border-color: #79b9c2; box-shadow: 0 0 0 3px rgba(90,171,182,.12); }

.finance-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-bottom: 18px; }.finance-metrics article { display: flex; align-items: center; gap: 11px; min-height: 92px; padding: 16px; border: 1px solid #dcebed; border-radius: 15px; background: #fff; box-shadow: 0 5px 18px rgba(13,64,124,.035); }.finance-metrics article>span { display: grid; place-items: center; width: 37px; height: 37px; border-radius: 11px; background: #e2f1f2; color: var(--imanexia-blue); font-size: 20px; }.finance-metrics article>div { display: grid; }.finance-metrics small { color: #6d879c; font-size: 10px; }.finance-metrics strong { color: var(--imanexia-navy); font-size: 18px; letter-spacing: -.5px; }.finance-income>span, .cash-income { background: #def4eb!important; color: #218a70!important; }.finance-expense>span, .cash-expense { background: #fff0e7!important; color: #ce7142!important; }.finance-balance>span { background: #e5ebfb!important; color: #4d6daf!important; }.cash-type { display: inline-flex; align-items: center; gap: 4px; padding: 4px 7px; border-radius: 99px; font-size: 9px; font-weight: 800; }.cash-type .material-symbols-rounded { font-size: 13px; }.money-income { color: #19846a; }.money-expense { color: #c76643; }

@media (max-width: 900px) { .chat-shell { grid-template-columns: 230px minmax(0, 1fr); }.calendar-controls { align-items: flex-start; flex-direction: column; }.calendar-actions { width: 100%; }.calendar-filter-form { width: 100%; }.calendar-filter-form label { flex: 1; }.calendar-filter-form select, .calendar-filter-form input { width: 100%; min-width: 0; }.finance-metrics { grid-template-columns: 1fr; } }
@media (max-width: 650px) { .monthly-calendar { grid-template-columns: repeat(7, minmax(126px, 1fr)); }.calendar-weekday, .calendar-day { min-width: 126px; }.calendar-actions { flex-wrap: wrap; }.calendar-actions .button { margin-left: auto; }.chat-shell { grid-template-columns: 1fr; min-height: 690px; }.chat-conversations { max-height: 210px; border-right: 0; border-bottom: 1px solid #dcebed; }.chat-contact-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }.chat-contact { min-width: 0; }.chat-contact-copy { display: none; }.chat-contact>b { position: absolute; }.chat-panel { min-height: 480px; }.tutor-calendar-profile { align-items: flex-start; }.tutor-calendar-profile p { margin: 0; }.calendar-filter-form { align-items: stretch; flex-direction: column; }.calendar-actions>strong { min-width: 0; }.calendar-actions .button { order: 2; width: 100%; margin-left: 0; }.session-inline-editor .form-row { grid-template-columns: 1fr; } }
