/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}.work-workspace{background:radial-gradient(circle at 78% 3%,#f5a8000d,#0000 24%),#fff}.work-tabs{border:1px solid var(--border);background:#f7f9fc;border-radius:13px;gap:7px;margin:0 0 16px;padding:6px;display:flex}.work-tabs a{min-height:38px;color:var(--body);border-radius:9px;align-items:center;gap:8px;padding:0 14px;font-size:11px;font-weight:600;text-decoration:none;display:flex}.work-tabs a.active,.work-tabs a:hover{color:var(--navy);background:#fff;box-shadow:0 3px 12px #0017370d}.work-tabs b{min-width:21px;color:var(--blue);text-align:center;background:#eaf2ff;border-radius:20px;padding:3px 6px;font-size:9px}.work-layout{grid-template-columns:1fr;gap:16px;display:grid}.work-create-disclosure{grid-row:1}.work-list{grid-row:2;padding:0;overflow:hidden}.work-list .panel-heading{padding:21px 22px 6px}.work-row{border-top:1px solid var(--border);grid-template-columns:10px minmax(0,1fr) auto auto;align-items:center;gap:13px;min-height:78px;padding:12px 22px;display:grid}.work-priority{background:#aebaca;border-radius:50%;width:9px;height:9px}.work-priority.low{background:#8ba4c5}.work-priority.normal{background:var(--blue)}.work-priority.high{background:var(--orange)}.work-priority.urgent{background:var(--coral)}.work-copy small,.work-copy strong{display:block}.work-copy small{color:var(--muted);margin-top:4px;font-size:10px}.work-copy p{color:var(--body);margin:8px 0 0;font-size:11px;line-height:1.45}.work-tags{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.work-tags span{border-left:3px solid var(--tag-color,var(--blue));color:var(--body);background:#f3f6fa;border-radius:6px;padding:4px 7px;font-size:9px;font-weight:600}.work-tags span.collaborator-tag{--tag-color:var(--violet);color:#5640ae;background:#f0ecff}.complete-work{width:34px;height:34px;color:var(--teal);background:#effbf8;border:1px solid #a8dfd5;border-radius:9px;font-weight:700}.complete-work:hover{color:#fff;background:var(--teal)}.work-create-disclosure>summary,.work-edit-disclosure>summary{cursor:pointer;align-items:center;gap:13px;list-style:none;display:flex}.work-create-disclosure>summary::-webkit-details-marker,.work-edit-disclosure>summary::-webkit-details-marker{display:none}.work-create-disclosure>summary>span:nth-child(2),.work-edit-disclosure>summary>span{gap:3px;display:grid}.work-create-disclosure>summary strong,.work-edit-disclosure>summary strong{color:var(--ink);font-size:14px}.work-create-disclosure>summary small,.work-edit-disclosure>summary small{color:var(--muted);font-size:10px;font-weight:500}.work-create-disclosure>summary>i,.work-edit-disclosure>summary>i{color:var(--muted);margin-left:auto;font-style:normal;transition:transform .18s}.work-create-disclosure[open]>summary>i,.work-edit-disclosure[open]>summary>i{transform:rotate(180deg)}.work-create-icon{color:#fff;background:var(--blue);border-radius:12px;flex:0 0 42px;place-items:center;width:42px;height:42px;font-size:24px;font-weight:500;display:grid}.work-create-disclosure[open]>summary{border-bottom:1px solid var(--border);padding-bottom:18px}.create-work h2{margin:8px 0 20px}.create-work form{gap:14px;margin-top:18px;display:grid}.create-work label{color:var(--body);gap:6px;font-size:10px;font-weight:600;display:grid}.create-work input,.create-work select,.create-work textarea{width:100%;min-height:41px;color:var(--ink);font:inherit;background:#fff;border:1px solid #d3dce8;border-radius:9px;padding:9px 11px;font-size:11px}.create-work textarea{resize:vertical;min-height:82px}.create-work input:focus,.create-work select:focus,.create-work textarea:focus{border-color:var(--blue);outline:0;box-shadow:0 0 0 3px #1769e818}.create-work form>button{color:#fff;background:var(--navy);border:0;border-radius:10px;min-height:43px;font-weight:600}.collaborator-picker{border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;gap:6px;margin:0;padding:10px;display:flex}.collaborator-picker legend{color:var(--body);padding:0 5px;font-size:10px;font-weight:600}.collaborator-picker label{display:block;position:relative}.collaborator-picker input{opacity:0;width:1px;height:1px;position:absolute}.collaborator-picker span{border:1px solid var(--border);color:var(--body);background:#fff;border-radius:8px;padding:7px 9px;font-size:9px;display:block}.collaborator-picker input:checked+span{color:#fff;border-color:var(--violet);background:var(--violet)}.collaborator-picker input:focus-visible+span{outline:3px solid #6748d730}.new-category{padding:0 2px}.new-category summary{color:var(--blue);cursor:pointer;font-size:10px;font-weight:600}.new-category label{margin-top:9px}.feed-empty,.work-empty{text-align:center;color:var(--muted);padding:58px 22px}.feed-empty>span,.work-empty>span{color:var(--teal);font-size:32px;display:block}.feed-empty strong,.work-empty strong{color:var(--ink);margin-top:10px;display:block}.feed-empty p,.work-empty p{max-width:480px;margin:7px auto 0;font-size:12px;line-height:1.5}.feed-workspace{background:radial-gradient(circle at 72% 2%,#6748d710,#0000 24%),#fff}.feed-search{grid-template-columns:minmax(230px,1.7fr) repeat(4,minmax(120px,.72fr)) auto;align-items:end;gap:11px;margin-bottom:16px;padding:18px 20px;display:grid}.feed-search label{gap:6px;display:grid}.feed-search label>span{color:var(--body);text-transform:uppercase;letter-spacing:.07em;font-size:9px;font-weight:600}.feed-search input,.feed-search select{width:100%;height:40px;color:var(--ink);font:inherit;background:#fff;border:1px solid #d3dce8;border-radius:9px;padding:0 10px;font-size:10px}.feed-search input:focus,.feed-search select:focus{border-color:var(--blue);outline:0;box-shadow:0 0 0 3px #1769e815}.feed-search-actions{gap:7px;display:flex}.feed-search-actions a,.feed-search-actions button{border-radius:9px;place-items:center;height:40px;padding:0 14px;font-size:10px;font-weight:600;text-decoration:none;display:grid}.feed-search-actions button{color:#fff;background:var(--navy);border:0}.feed-search-actions a{border:1px solid var(--border);color:var(--body);background:#fff}.feed-privacy{color:var(--muted);grid-column:1/-1;margin:0;font-size:9px}.feed-panel{padding:0;overflow:hidden}.feed-panel .panel-heading{padding:22px 24px 8px}.feed-event{border-top:1px solid var(--border);grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:82px;padding:13px 24px;display:grid}.feed-marker{width:38px;height:38px;color:var(--blue);background:#eaf2ff;border-radius:12px;font-size:15px;font-weight:700}.feed-marker.quiet{color:var(--teal);background:#e1f7f2}.feed-marker.attention{color:var(--coral);background:#fdecec}.feed-event small,.feed-event strong{display:block}.feed-event strong{margin-top:4px}.feed-event small{color:var(--muted);margin-top:5px;font-size:10px}.feed-kind{color:#365676;text-transform:uppercase;letter-spacing:.04em;background:#f0f4f9;border-radius:5px;padding:3px 6px;font-size:8px;font-weight:600;display:inline-block}.feed-kind.families{color:#b1432a;background:#fff0ea}.feed-kind.books{color:#5c45b7;background:#f0ecff}.feed-kind.teaching{color:#087c6a;background:#e1f7f2}.feed-status{color:var(--blue);background:#eaf2ff;border-radius:20px;padding:6px 9px;font-size:9px;font-weight:600}.feed-status.completed{color:#087c6a;background:#e1f7f2}@media (max-width:1200px){.feed-search{grid-template-columns:1.4fr repeat(2,1fr)}.feed-search-actions{align-self:end}.feed-privacy{grid-column:1/-1}}@media (max-width:1050px){.work-layout{grid-template-columns:1fr}.create-work{grid-row:1}}@media (max-width:760px){.work-tabs{overflow-x:auto}.work-tabs a{flex:none}.work-row{grid-template-columns:9px 1fr auto;padding:13px 16px}.work-row>.badge{display:none}.work-row form{grid-area:1/3/3}.feed-search,.form-pair{grid-template-columns:1fr}.feed-privacy{grid-column:1}.feed-search-actions>*{flex:1}.feed-event{grid-template-columns:38px 1fr;padding:13px 16px}.feed-status{grid-column:2;justify-self:start}}.review-workspace{background:radial-gradient(circle at 74% 2%,#6748d710,#0000 24%),#fff}.review-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:16px;display:grid}.review-summary article{align-items:center;gap:14px;min-height:94px;padding:17px 19px;display:flex}.review-summary small,.review-summary strong{display:block}.review-summary strong{font-size:24px}.review-summary small{color:var(--muted);margin-top:3px;font-size:10px}.review-tabs{border:1px solid var(--border);background:#f7f9fc;border-radius:13px;gap:7px;margin-bottom:16px;padding:6px;display:flex}.review-tabs a{min-height:38px;color:var(--body);border-radius:9px;align-items:center;gap:8px;padding:0 14px;font-size:11px;font-weight:600;text-decoration:none;display:flex}.review-tabs a.active,.review-tabs a:hover{color:var(--navy);background:#fff;box-shadow:0 3px 12px #0017370d}.review-tabs b{min-width:21px;color:var(--violet);text-align:center;background:#f0ecff;border-radius:20px;padding:3px 6px;font-size:9px}.review-list{gap:14px;display:grid}.review-card{padding:22px}.review-card>header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.review-card h2{margin:0 0 5px}.review-card header small{color:var(--muted);font-size:10px}.original-note{color:var(--body);background:#f7f9fc;border-radius:11px;margin:18px 0;padding:15px}.original-note strong{font-size:10px}.original-note p{margin:7px 0 0;line-height:1.55}.review-card form label{color:var(--body);gap:7px;font-size:10px;font-weight:600;display:grid}.review-card textarea{resize:vertical;min-height:90px;color:var(--ink);font:inherit;background:#fff;border:1px solid #d3dce8;border-radius:10px;padding:12px;font-size:12px;line-height:1.5}.review-card textarea:focus{border-color:var(--violet);outline:0;box-shadow:0 0 0 3px #6748d718}.review-card footer{justify-content:flex-end;gap:8px;margin-top:13px;display:flex}.review-card footer button{border:1px solid var(--border);min-height:38px;color:var(--body);background:#fff;border-radius:9px;padding:0 13px;font-size:10px;font-weight:600}.review-card footer button.primary{color:#fff;border-color:var(--violet);background:var(--violet)}.book-review-card{grid-template-columns:1fr auto;align-items:center;display:grid}.book-review-card form footer{margin:0}.review-empty{text-align:center;color:var(--muted);padding:60px}.review-empty>span{color:var(--teal);font-size:32px;display:block}.review-empty strong{color:var(--ink);margin-top:10px;display:block}.review-empty p{margin:6px 0 0}@media (max-width:760px){.review-summary{grid-template-columns:1fr}.review-tabs{overflow-x:auto}.review-tabs a{flex:none}.book-review-card,.review-card>header{display:flex}.book-review-card,.review-card footer,.review-card>header{flex-direction:column;align-items:stretch}.review-card footer button{width:100%}}.work-copy{color:inherit;text-decoration:none}.work-copy:hover strong{color:var(--blue)}.work-copy:focus-visible{outline-offset:5px;border-radius:5px;outline:3px solid #1769e824}.feed-event{grid-template-columns:42px minmax(0,1fr) auto auto}.feed-detail-link{color:var(--blue);background:#f7faff;border:1px solid #cddcf3;border-radius:8px;padding:7px 10px;font-size:9px;font-weight:600;text-decoration:none}.feed-detail-link:hover{color:#fff;border-color:var(--blue);background:var(--blue)}.work-detail-workspace{background:radial-gradient(circle at 79% 3%,#f25f5c0d,#0000 25%),#fff}.work-detail-hero{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:18px;padding:25px 27px;display:grid}.work-detail-hero h1{margin:5px 0 8px;font-size:28px;line-height:1.12}.work-detail-hero p:last-child{max-width:780px;color:var(--body);margin:0;font-size:12px;line-height:1.6}.work-detail-priority{width:43px;height:43px;color:var(--blue);background:#eaf2ff;border-radius:13px;place-items:center;font-size:20px;font-weight:700;display:grid}.work-detail-priority.low{color:#607c9f;background:#edf2f8}.work-detail-priority.high{color:var(--orange);background:#fff2e8}.work-detail-priority.urgent{color:var(--coral);background:#fdecec}.work-detail-status{color:var(--blue);background:#eaf2ff;border-radius:20px;padding:7px 11px;font-size:9px;font-weight:600}.work-detail-status.in_progress{color:#5c45b7;background:#f0ecff}.work-detail-status.action_required,.work-detail-status.pending_decision,.work-detail-status.waiting{color:#b55b00;background:#fff2e1}.work-detail-status.completed,.work-detail-status.decided{color:#087c6a;background:#e1f7f2}.work-detail-status.dismissed{color:#607086;background:#edf1f5}.work-detail-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0;display:grid}.work-detail-summary article{min-height:100px;padding:19px 20px;position:relative;overflow:hidden}.work-detail-summary small,.work-detail-summary span{color:var(--muted);font-size:9px;display:block}.work-detail-summary strong{color:var(--ink);margin-top:9px;font-size:13px;line-height:1.35;display:block}.work-detail-summary small{margin-top:7px}.work-detail-summary i{background:var(--category-color);border-radius:50%;width:8px;height:8px;position:absolute;bottom:14px;right:14px}.work-detail-grid{grid-template-columns:minmax(0,1.15fr) minmax(350px,.85fr);gap:14px;display:grid}.work-detail-main{align-content:start;gap:14px;display:grid}.work-edit-card,.work-history,.work-progress-card{padding:23px}.work-edit-card form,.work-progress-card form{gap:13px;margin-top:18px;display:grid}.work-edit-disclosure[open]>summary{border-bottom:1px solid var(--border);padding-bottom:16px}.work-save-message{margin-top:-4px}.work-edit-card label{color:var(--body);gap:6px;font-size:10px;font-weight:600;display:grid}.work-edit-card input,.work-edit-card select,.work-edit-card textarea,.work-progress-card textarea{width:100%;min-height:42px;color:var(--ink);font:inherit;background:#fff;border:1px solid #d3dce8;border-radius:9px;padding:10px 11px;font-size:11px}.work-edit-card textarea,.work-progress-card textarea{resize:vertical;min-height:91px}.work-edit-card input:focus,.work-edit-card select:focus,.work-edit-card textarea:focus,.work-progress-card textarea:focus{border-color:var(--blue);outline:0;box-shadow:0 0 0 3px #1769e818}.work-edit-card form>button,.work-progress-card button{color:#fff;background:var(--navy);border:0;border-radius:10px;min-height:43px;font-weight:600}.work-history h2,.work-progress-card h2{margin:7px 0 0}.work-timeline{margin-top:20px;display:grid}.work-timeline article{grid-template-columns:16px minmax(0,1fr);gap:10px;padding:0 0 20px;display:grid;position:relative}.work-timeline article:not(:last-child):before{content:"";background:#dfe6ef;width:1px;position:absolute;top:12px;bottom:0;left:5px}.timeline-dot{z-index:1;background:var(--blue);border:3px solid #dbe8fc;border-radius:50%;width:11px;height:11px;margin-top:3px}.timeline-dot.quiet{background:var(--teal);border-color:#d8f2ec}.timeline-dot.attention{background:var(--coral);border-color:#fde0df}.work-timeline small,.work-timeline time{color:var(--muted);font-size:8px;display:block}.work-timeline p{color:var(--body);margin:5px 0 7px;font-size:11px;line-height:1.5}.work-timeline article.note p{color:var(--ink);font-weight:600}@media (max-width:1050px){.work-detail-summary{grid-template-columns:repeat(2,1fr)}.work-detail-grid{grid-template-columns:1fr}.work-history{grid-row:2}}@media (max-width:760px){.feed-detail-link{grid-column:2;justify-self:start}.work-detail-hero{grid-template-columns:auto 1fr;padding:20px}.work-detail-status{grid-column:2;justify-self:start}.work-detail-summary{grid-template-columns:1fr}.work-detail-grid{display:block}.work-history{margin-top:14px}}.review-summary.weekly-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.weekly-review-list{gap:11px}.weekly-work-card{grid-template-columns:10px minmax(0,1fr);gap:15px;padding:21px 23px;display:grid;position:relative;overflow:hidden}.weekly-work-card.attention{border-color:#f0d7c7}.weekly-work-card.attention:before{content:"";background:linear-gradient(var(--coral),var(--orange));width:3px;position:absolute;inset:0 auto 0 0}.weekly-work-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.weekly-work-heading h2{margin:5px 0 0}.weekly-work-copy>p{max-width:900px;color:var(--body);margin:10px 0 0;font-size:11px;line-height:1.5}.weekly-work-meta{flex-wrap:wrap;gap:7px;margin-top:13px;display:flex}.weekly-work-meta span{color:var(--muted);background:#f4f7fa;border-radius:7px;padding:5px 8px;font-size:9px}.weekly-work-meta span.overdue{color:#b73532;background:#fdecec}.weekly-review-actions{border-top:1px solid var(--border);grid-column:2;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;display:flex}.weekly-review-actions>a{color:var(--blue);font-size:10px;font-weight:600;text-decoration:none}.weekly-review-actions form{flex-wrap:wrap;gap:7px;display:flex}.weekly-review-actions button{border:1px solid var(--border);min-height:36px;color:var(--body);background:#fff;border-radius:8px;padding:0 11px;font-size:9px;font-weight:600}.weekly-review-actions button:hover{border-color:#aebdd0}.weekly-review-actions button.primary{color:#fff;border-color:var(--teal);background:var(--teal)}@media (max-width:1050px){.review-summary.weekly-summary{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.review-summary.weekly-summary{grid-template-columns:1fr}.weekly-work-card{padding:18px}.weekly-review-actions,.weekly-work-heading{flex-direction:column;align-items:stretch}.weekly-review-actions form{grid-template-columns:1fr;display:grid}.weekly-review-actions button{width:100%}}.assignment-picker{gap:13px;display:grid}.group-project-toggle{cursor:pointer;background:#f8fafc;border:1px solid #d8e1ec;border-radius:10px;align-items:flex-start;padding:12px;grid-template-columns:none!important;gap:10px!important;display:flex!important}.group-project-toggle input{margin:2px 0 0;width:17px!important;height:17px!important;min-height:0!important}.group-project-toggle small,.group-project-toggle span,.group-project-toggle strong{display:block}.group-project-toggle small{color:var(--muted);margin-top:4px;font-weight:600;line-height:1.4}.group-project-toggle:has(input:checked){background:#f4f1ff;border-color:#bfb0f0}.scalable-picker{display:grid}.scalable-picker .role-filter{margin:2px 0 8px;display:grid;position:static}.scalable-picker .role-filter select{min-height:36px}.staff-choice-grid{flex-wrap:wrap;gap:6px;display:flex}.staff-choice-grid label.filtered-out{display:none}.staff-choice-grid span small,.staff-choice-grid span strong{display:block}.staff-choice-grid span small{color:inherit;opacity:.72;margin-top:2px;font-size:7px}.work-tags span.group-project-tag{--tag-color:var(--violet);color:#5640ae;background:#f0ecff}.staff-choice-grid input:disabled+span{cursor:not-allowed;opacity:.62;border-style:dashed}.work-governance-card{padding:22px}.work-governance-card h2{margin:7px 0 16px}.project-member-list{border:1px solid var(--border);border-radius:11px;display:grid;overflow:hidden}.project-member-row{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:11px 12px;display:flex}.project-member-row:first-child{border-top:0}.project-member-row small,.project-member-row span,.project-member-row strong{display:block}.project-member-row small{max-width:420px;color:var(--muted);margin-top:3px;font-size:9px;line-height:1.35}.pending-removal-request button,.project-member-row button,.request-removal-form button{color:#fff;background:var(--navy);border:0;border-radius:8px;min-height:34px;padding:0 11px;font-size:9px;font-weight:600}.request-removal-form{grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:14px;display:grid}.request-removal-form input{border:1px solid var(--border);border-radius:8px;min-height:38px;padding:8px 10px}.removal-request-status{color:#725200;background:#fff7d9;border-radius:8px;margin:14px 0 0;padding:10px 12px;font-size:10px;font-weight:600}.pending-removal-request{background:#fffbf1;border:1px solid #f0d9ab;border-radius:10px;justify-content:space-between;align-items:center;gap:14px;margin-top:12px;padding:12px;display:flex}.pending-removal-request p{color:var(--body);margin:4px 0 0;font-size:10px}.pending-removal-request form{gap:6px;display:flex}.pending-removal-request button.secondary{color:var(--navy);border:1px solid var(--border);background:#fff}.scalable-picker{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:9px}.scalable-picker .staff-choice-grid,.scalable-picker legend{grid-column:1/-1}.scalable-picker .name-filter,.scalable-picker .role-filter{margin:2px 0 8px;display:grid;position:static}.scalable-picker .name-filter input,.scalable-picker .role-filter select{min-height:36px}@media (max-width:560px){.scalable-picker{grid-template-columns:1fr}.scalable-picker .staff-choice-grid,.scalable-picker legend{grid-column:1}}.work-attachments-card h2{margin:.35rem 0 1rem}.work-attachment-upload{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.work-attachment-upload input[type=file]{border:1px dashed var(--border);background:#f9fbff;border-radius:12px;flex:1;min-width:0;padding:.7rem}.work-attachment-upload button{color:#fff;background:var(--navy);border:0;border-radius:11px;padding:.75rem 1rem;font-weight:600}.work-attachments-card>small{color:var(--muted);margin-top:.65rem;display:block}.work-attachment-list{gap:.55rem;margin-top:1rem;display:grid}.work-attachment-list form{margin:0}.work-attachment-list button{border:1px solid var(--border);width:100%;color:var(--ink);text-align:left;background:#fff;border-radius:11px;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem .85rem;display:flex}.work-attachment-list button:hover{background:#f8fbff;border-color:#b8c9e4}.work-attachment-list button span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.work-attachment-list button small{color:var(--muted);flex:none}.work-attachment-list>p{color:var(--muted);margin:0}@media (max-width:600px){.work-attachment-upload{display:grid}.work-attachment-upload button{width:100%}}.focus-launcher{background:linear-gradient(120deg,#fff 55%,#f4f0ff);border-color:#d9d0f7;grid-template-columns:minmax(0,1fr) auto;gap:1rem;margin:0 0 18px;padding:20px 22px;display:grid}.focus-launcher h2{margin:5px 0 4px}.focus-launcher p{color:var(--muted);margin:0}.focus-launcher>button,.focus-start{color:#fff;background:var(--violet);border:0;border-radius:11px;align-self:center;padding:.8rem 1rem;font-weight:600}.focus-launcher button:disabled{opacity:.45}.focus-setup{border-top:1px solid var(--border);grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding-top:18px;display:grid}.focus-setup fieldset{border:0;gap:7px;max-height:250px;padding:0;display:grid;overflow:auto}.focus-duration>strong,.focus-setup legend{margin-bottom:9px;font-weight:600}.focus-setup label{border:1px solid var(--border);background:#fff;border-radius:9px;align-items:flex-start;gap:9px;padding:9px;display:flex}.focus-setup label small,.focus-setup label span,.focus-setup label strong{display:block}.focus-setup label small{color:var(--muted);margin-top:2px}.focus-duration div{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.focus-duration button{border:1px solid var(--border);background:#fff;border-radius:8px;padding:8px}.focus-duration button.selected{color:#fff;border-color:var(--violet);background:var(--violet)}.focus-start{grid-column:1/-1;justify-self:end}.focus-overlay{z-index:500;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#071936d9;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.focus-session{background:#fbfcff;border-radius:24px;gap:22px;width:min(720px,100%);max-height:calc(100dvh - 40px);padding:28px;display:grid;overflow:auto;box-shadow:0 30px 100px #0006}.focus-session header{justify-content:space-between;gap:20px;display:flex}.focus-session h1{margin:5px 0 0}.focus-session header>button{background:#edf1f7;border:0;border-radius:50%;width:42px;height:42px;font-size:24px}.focus-clock{background:linear-gradient(135deg,#e7faf6,#f0ecff);border-radius:18px;place-items:center;padding:24px;display:grid}.focus-clock strong{letter-spacing:-.05em;font-size:clamp(48px,10vw,82px);font-weight:600}.focus-clock small{color:var(--muted);font-weight:600}.focus-clock.paused{background:#f1f3f6}.focus-selected-list{gap:9px;display:grid}.focus-selected-list article{border:1px solid var(--border);background:#fff;border-radius:12px;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.focus-selected-list article div small,.focus-selected-list article div strong{display:block}.focus-selected-list article div small{color:var(--muted);margin-top:3px}.focus-selected-list button,.focus-session footer button{color:#fff;background:var(--teal);border:0;border-radius:9px;padding:.65rem .8rem;font-weight:600}.focus-session footer{justify-content:flex-end;gap:8px;display:flex}.focus-session footer .secondary{background:var(--navy)}@media (max-width:650px){.focus-launcher{grid-template-columns:1fr}.focus-launcher>button{width:100%}.focus-setup{grid-template-columns:1fr}.focus-start{justify-self:stretch;width:100%}.focus-session{border-radius:18px;padding:20px}.focus-selected-list article{grid-template-columns:7px minmax(0,1fr)}.focus-selected-list article form{grid-column:2}.focus-session footer{display:grid}.focus-session footer button{width:100%}}.focus-team-presence{background:#f3fbf8;border:1px solid #cce7df;border-radius:13px;gap:9px;margin:-4px 0 18px;padding:14px 16px;display:grid}.focus-team-presence>strong{color:#176f67}.focus-team-presence>div{flex-wrap:wrap;gap:7px;display:flex}.focus-team-presence span{color:var(--body);background:#fff;border-radius:9px;gap:2px;padding:7px 10px;font-size:10px;display:grid}.focus-team-presence span b{color:var(--teal)}.focus-team-presence>small{color:var(--muted)}.work-layout>.work-list{grid-row:auto}.work-layout>.focus-launcher{margin:0}.work-layout>.work-create-disclosure{grid-row:auto}.work-delete-card{justify-self:start;width:auto;padding:0 2px}.work-delete-card>summary{cursor:pointer;color:#9a3f3f;font-size:11px;font-weight:600;list-style:none}.work-delete-card>summary:before{content:"×";margin-right:7px}.work-delete-card>p{max-width:520px;color:var(--muted);margin:10px 0;font-size:10px}.work-delete-card button{color:#a52e2e;background:#fff5f5;border:1px solid #efcaca;border-radius:8px;padding:8px 10px;font-size:10px;font-weight:600}.review-schedule{justify-content:space-between;align-items:center;gap:24px;margin-bottom:16px;padding:18px 20px;display:flex}.review-schedule h2,.review-schedule p{margin:4px 0 0}.review-schedule p{color:var(--muted);font-size:11px}.review-schedule details{position:relative}.review-schedule summary{border:1px solid var(--border);cursor:pointer;border-radius:10px;align-items:center;min-height:40px;padding:0 14px;font-size:11px;font-weight:600;list-style:none;display:flex}.review-schedule details[open] summary{border-color:var(--blue)}.review-schedule form{z-index:8;border:1px solid var(--border);background:#fff;border-radius:14px;grid-template-columns:1fr 1fr;gap:12px;width:360px;padding:16px;display:grid;position:absolute;top:48px;right:0;box-shadow:0 18px 40px #13213a20}.review-schedule label{gap:6px;display:grid}.review-schedule label span,.review-schedule small{color:var(--muted);font-size:9px;font-weight:600}.review-schedule input,.review-schedule select{border:1px solid var(--border);min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:9px;padding:0 10px}.review-schedule button{background:var(--navy);color:#fff;border:0;border-radius:9px;min-height:40px;font-weight:600}.review-schedule small{align-self:center;line-height:1.35}.review-schedule{gap:16px;padding:12px 16px}.review-schedule h2{font-size:16px}.review-schedule p{font-size:10px}.review-schedule summary{border-radius:8px;min-height:32px;padding:0 10px;font-size:10px}.review-schedule form{padding:14px;top:40px}@media (max-width:760px){.review-schedule{flex-direction:column;align-items:stretch}.review-schedule details,.review-schedule summary{width:100%}.review-schedule form{width:100%;box-shadow:none;grid-template-columns:1fr;margin-top:10px;position:static}}.work-create-primary{margin:-6px 0 16px;padding:12px 16px}.work-create-primary>summary{min-height:44px}.work-create-primary .work-create-icon{border-radius:10px;flex-basis:36px;width:36px;height:36px;font-size:20px}.work-create-primary[open]{padding:18px 20px}.work-timeline p{white-space:pre-wrap;overflow-wrap:anywhere}.feed-search{grid-template-columns:minmax(230px,1fr) auto auto}.feed-more-filters{align-self:end}.feed-more-filters summary{border:1px solid var(--border);min-height:40px;color:var(--body);cursor:pointer;background:#fff;border-radius:9px;align-items:center;padding:0 13px;font-size:10px;font-weight:700;list-style:none;display:flex}.feed-more-filters summary::-webkit-details-marker{display:none}.feed-more-filters summary:after{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:7px;height:7px;margin:-3px 2px 0 10px;transition:transform .18s;transform:rotate(45deg)}.feed-more-filters[open] summary:after{transform:rotate(225deg)}.feed-more-filters[open]{grid-column:1/-1}.feed-advanced-fields{grid-template-columns:repeat(4,minmax(120px,1fr));gap:11px;margin-top:11px;display:grid}.feed-filter-chips{flex-wrap:wrap;grid-column:1/-1;gap:6px;display:flex}.feed-filter-chips span{color:#365676;background:#edf3fb;border-radius:20px;padding:5px 8px;font-size:9px;font-weight:700}.status-pill.warning{color:#8a5b00;background:#fff3d6}.weekly-review-actions form{align-items:center}.review-more-actions{position:relative}.review-more-actions>summary{border:1px solid var(--border);width:36px;height:36px;color:var(--body);cursor:pointer;background:#fff;border-radius:8px;place-items:center;list-style:none;display:grid}.review-more-actions>summary::-webkit-details-marker{display:none}.review-more-actions>div{z-index:10;border:1px solid var(--border);background:#fff;border-radius:10px;gap:5px;width:210px;padding:7px;display:grid;position:absolute;top:42px;right:0;box-shadow:0 14px 30px #142f4a1f}.review-more-actions>div button{text-align:left;justify-content:flex-start;width:100%}.review-more-actions>div button.destructive{color:#a52626;background:#fff8f8}.feed-event{position:relative}.feed-event-copy{min-width:0}.feed-detail-link{background:0 0;border-color:#0000;justify-content:center;width:34px;height:34px;padding:0}.feed-event:has(.feed-detail-link):hover{background:#fbfcfe}.feed-event:has(.feed-detail-link):focus-within{outline-offset:-3px;outline:3px solid #1769e81f}.feed-detail-link:after{content:"";position:absolute;inset:0}.feed-event .feed-status{z-index:1;position:relative}@media (max-width:760px){.feed-search{grid-template-columns:1fr auto;padding:14px}.feed-filter-chips,.feed-more-filters,.feed-more-filters[open],.feed-privacy,.feed-query{grid-column:1/-1}.feed-advanced-fields{grid-template-columns:1fr 1fr}.feed-search-actions{align-self:end}.feed-search-actions a{display:none}.feed-search:has(.feed-more-filters[open]) .feed-search-actions a,.feed-search:has(input[name=q]:not(:placeholder-shown)) .feed-search-actions a{display:grid}.review-summary.weekly-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.review-summary.weekly-summary article{min-height:82px;padding:13px}.review-tabs{scrollbar-width:none;overflow-x:auto}.review-tabs::-webkit-scrollbar{display:none}.review-tabs a{flex:none}.weekly-review-actions{flex-direction:row;align-items:center}.weekly-review-actions form{display:flex}.weekly-review-actions button.primary{width:auto;min-width:104px}.review-more-actions>div{width:calc(100vw - 32px);position:fixed;top:auto;bottom:84px;right:16px}.feed-event{grid-template-columns:32px minmax(0,1fr) auto}.feed-marker{border-radius:9px;width:32px;height:32px}.feed-status{grid-column:2}.feed-detail-link{grid-area:1/3/3}}.login-form-area{position:relative}.login-language{border:1px solid var(--border);background:#fff;border-radius:11px;gap:5px;padding:4px;display:flex;position:absolute;top:26px;right:32px}.login-language a{color:var(--muted);border-radius:8px;padding:7px 10px;font-size:11px;font-weight:600;text-decoration:none}.login-language a.selected{color:#fff;background:var(--navy)}.language-options{grid-template-columns:1fr 1fr;gap:6px;padding:0 14px 12px!important;display:grid!important}.language-options button{border:1px solid var(--border)!important;min-height:34px!important;color:var(--body)!important;background:#fff!important;border-radius:8px!important}.language-options button.selected{color:#fff!important;border-color:var(--blue)!important;background:var(--blue)!important}@media (max-width:760px){.login-language{top:16px;right:16px}.login-form-area{padding-top:85px}}.attention-card,.class-card,.login-card,.panel,.people-summary article,.role-menu,.schedule-card{border-color:var(--border);border-width:1.5px}.class-card:focus-visible,.panel:focus-within,.schedule-card:focus-within{border-color:var(--border-strong)}input,select,textarea{accent-color:var(--teal)}main[class*=-preview-shell],main[class*=-preview_shell],main[class*=preview-shell]{background:var(--surface-soft)!important;color:var(--ink)!important}@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.isolate{isolation:isolate}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.h-full{height:100%}.min-h-full{min-height:100%}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.lowercase{text-transform:lowercase}.italic{font-style:italic}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--navy:#082b3d;--navy2:#032131;--ink:#092b3d;--body:#285365;--muted:#4e7380;--canvas:#f7fcfb;--surface-soft:#fbfefd;--border:#8fcbbf;--border-strong:#48a895;--teal:#159987;--blue:#287da2;--violet:#7654a7;--amber:#edae26;--orange:#e1774e;--coral:#da5d62}*{box-sizing:border-box}body,html{background:var(--canvas);min-height:100%;color:var(--ink);margin:0}button{font:inherit;cursor:pointer}.app-shell{grid-template-columns:232px 1fr;min-height:100vh;padding:18px;display:grid}.sidebar{color:#fff;background:linear-gradient(165deg,var(--navy),#00122c);border-radius:22px 0 0 22px;flex-direction:column;min-height:calc(100vh - 36px);padding:25px 18px 18px;display:flex;box-shadow:0 16px 45px #00173729}.brand{text-align:center;padding:2px 0 25px}.brand-mark{letter-spacing:-8px;color:#0000;background:linear-gradient(105deg,#19b9dd,#1769e8 30%,#f04f4f 60%,#f5a800);-webkit-background-clip:text;background-clip:text;font-size:61px;font-weight:600;line-height:.75}.brand-name{letter-spacing:-1.5px;margin-top:9px;font-size:28px;font-weight:600}nav{gap:5px;display:grid}.nav-item{color:#eef5ff;text-align:left;background:0 0;border:0;border-radius:11px;align-items:center;gap:12px;width:100%;min-height:48px;padding:0 13px;font-weight:600;display:flex}.nav-item.active,.nav-item:hover{background:var(--navy2)}.nav-icon{border:1.5px solid #ffffffb3;border-radius:7px;place-items:center;width:25px;height:25px;font-size:14px;display:grid}.ai-entry{color:#fff;text-align:left;background:#102e58;border:1px solid #ffffff0f;border-radius:14px;grid-template-columns:34px 1fr 12px;align-items:center;gap:10px;min-height:92px;margin-top:auto;padding:13px;display:grid}.ai-entry small,.sidebar-person small{color:#b8c8df;margin-top:4px;font-size:11px;display:block}.ai-orb{width:33px;height:33px;color:var(--violet);background:#f0ecff;border-radius:50%;place-items:center;display:grid}.sidebar-person{grid-template-columns:36px 1fr 24px;align-items:center;gap:9px;padding:18px 4px 0;display:grid}.sidebar-person button{color:#fff;background:0 0;border:0}.avatar{color:#0b3f39;background:linear-gradient(145deg,#f9d0b6,#77d8c6);border:3px solid #fff;border-radius:50%;flex:none;place-items:center;width:46px;height:46px;font-weight:600;display:grid;box-shadow:0 3px 10px #00173724}.workspace{background:radial-gradient(circle at 60% 6%,#f04f4f13,#0000 24%),#fff;border-radius:0 22px 22px 0;min-width:0;padding:42px 44px;box-shadow:0 16px 45px #00173714}.topbar{justify-content:space-between;align-items:flex-start;gap:30px;margin-bottom:28px;display:flex}.eyebrow,.section-kicker{color:var(--muted);letter-spacing:.1em;margin:0 0 7px;font-size:11px;font-weight:600}.topbar h1{letter-spacing:-1.2px;margin:0;font-size:34px;line-height:1.15}.topbar h1 span{color:#f7b32b}.topbar p:last-child{color:var(--body);margin:9px 0 0}.header-actions{align-items:center;gap:10px;display:flex}.header-actions button{width:44px;height:44px;color:var(--body);background:#fff;border:0;border-radius:12px;font-size:25px;position:relative}.notification b{color:#fff;background:var(--coral);border-radius:20px;place-items:center;min-width:19px;height:19px;font-size:10px;display:grid;position:absolute;top:0;right:0}.attention-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.attention-card,.panel{border:1px solid var(--border);background:#fffffff5;border-radius:16px;box-shadow:0 8px 24px #0017370e}.attention-card{grid-template-columns:46px 1fr;gap:13px;min-height:135px;padding:20px;display:grid}.attention-card p{color:var(--body);margin:1px 0 7px;font-size:13px;font-weight:700}.attention-card strong{letter-spacing:-.5px;font-size:28px;display:block}.attention-card small{color:var(--muted);margin-top:5px;font-size:11px;display:block}.attention-card button{color:var(--blue);background:0 0;border:0;grid-column:2;justify-self:start;padding:0;font-size:12px;font-weight:600}.card-icon{border-radius:12px;place-items:center;width:46px;height:46px;font-size:20px;font-weight:600;display:grid}.card-icon.violet{color:var(--violet);background:#f0ecff}.main-grid{grid-template-columns:1.25fr 1fr;gap:18px;display:grid}.panel{min-width:0;padding:23px}.panel-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:14px;display:flex}.panel h2{margin:0;font-size:20px}.ai-actions button,.panel-heading button{border:1px solid var(--border);min-height:36px;color:var(--body);background:#fff;border-radius:9px;padding:0 14px;font-size:12px;font-weight:600}.schedule-row{border-bottom:1px solid var(--border);grid-template-columns:60px 10px 1fr auto;align-items:center;gap:11px;min-height:61px;display:grid}.schedule-row:last-child,.task-row:last-child{border-bottom:0}.schedule-row time{text-align:center;background:#f1f5fa;border-radius:8px;padding:7px 8px;font-size:13px;font-weight:600}.dot{border-radius:50%;width:8px;height:8px}.dot.teal{background:var(--teal)}.dot.blue{background:var(--blue)}.dot.amber{background:var(--amber)}.dot.violet{background:var(--violet)}.schedule-copy small,.schedule-copy strong{display:block}.schedule-copy strong{font-size:14px}.schedule-copy small{color:var(--muted);margin-top:3px;font-size:11px}.people-chip{color:var(--blue);background:#eaf2ff;border-radius:8px;padding:5px 8px;font-size:11px;font-weight:600}.task-row{border:0;border-bottom:1px solid var(--border);width:100%;min-height:61px;color:var(--ink);text-align:left;background:0 0;grid-template-columns:23px 1fr auto;align-items:center;gap:12px;padding:0;display:grid}.task-row.done>span:nth-child(2){color:var(--muted);text-decoration:line-through}.task-row.done .check{color:#fff;background:var(--teal);border-color:var(--teal)}.check{border:1.5px solid #b9c5d4;border-radius:5px;place-items:center;width:20px;height:20px;font-size:12px;display:grid}.badge{border-radius:8px;padding:6px 9px;font-size:11px;font-weight:600}.badge.coral{color:#c42f2f;background:#fdecec}.badge.orange{color:#d74813;background:#fff0e7}.badge.blue{color:var(--blue);background:#eaf2ff}.team-list{gap:4px;display:grid}.team-list>div{border-bottom:1px solid var(--border);align-items:center;gap:12px;min-height:62px;display:flex}.team-list>div:last-child{border:0}.team-list p{flex:1;margin:0}.team-list small,.team-list strong{display:block}.team-list small{color:var(--muted);margin-top:3px;font-size:11px}.team-list .avatar{border-width:2px;width:38px;height:38px}.avatar-carmen{background:linear-gradient(145deg,#ffd6c9,#ff9b7a)}.avatar-natalia{background:linear-gradient(145deg,#d8d0ff,#9a83ef)}.avatar-almudena{background:linear-gradient(145deg,#c7eff7,#64c5d8)}.presence{border-radius:20px;padding:5px 8px;font-size:10px;font-weight:600}.presence.online{color:#087c6a;background:#e1f7f2}.presence.focus{color:#5640ae;background:#f0ecff}.ai-panel{background:linear-gradient(145deg,#fcfbff,#f6f3ff);border-color:#e5ddff}.ai-heading{align-items:center;gap:13px;display:flex}.ai-orb.large{width:48px;height:48px;font-size:20px}.ai-insight{color:var(--body);margin:18px 0;line-height:1.55}.ai-actions{gap:9px;display:flex}.ai-actions button.primary{color:#fff;border-color:var(--violet);background:var(--violet)}button:focus-visible{outline-offset:2px;outline:3px solid #1769e840}@media (max-width:1100px){.attention-grid{grid-template-columns:repeat(2,1fr)}.main-grid{grid-template-columns:1fr}.workspace{padding:30px}.app-shell{grid-template-columns:205px 1fr}}@media (max-width:760px){.app-shell{padding:0;display:block}.sidebar{border-radius:0;grid-template-columns:auto 1fr auto;align-items:center;min-height:auto;padding:15px;display:grid}.brand{text-align:left;padding:0}.brand-mark{font-size:41px}.ai-entry,.brand-name,.sidebar nav{display:none}.sidebar-person{grid-template-columns:36px 1fr 20px;padding:0}.workspace{border-radius:0;padding:24px 18px}.topbar h1{font-size:27px}.topbar{align-items:center}.header-actions button{display:none}.attention-grid,.main-grid{grid-template-columns:1fr}.panel{padding:18px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.login-page{background:#fff;grid-template-columns:minmax(340px,.9fr) 1.1fr;min-height:100vh;display:grid}.login-brand{color:#fff;background:linear-gradient(160deg,#001737,#031d42);flex-direction:column;padding:54px;display:flex;position:relative;overflow:hidden}.login-brand:after{content:"";color:#ffffff0b;font-size:430px;font-weight:700;line-height:1;position:absolute;bottom:-110px;right:-90px}.login-logo-mark{letter-spacing:-10px;color:#0000;background:linear-gradient(105deg,#19b9dd,#1769e8 30%,#f04f4f 60%,#f5a800);-webkit-background-clip:text;background-clip:text;width:max-content;font-size:75px;font-weight:700;line-height:.7}.login-logo-name{letter-spacing:-1.5px;margin-top:16px;font-size:31px;font-weight:600}.login-copy{z-index:1;max-width:540px;margin:auto 0;position:relative}.login-copy span{color:#9db4d2;letter-spacing:.12em;font-size:12px;font-weight:600}.login-copy h1{letter-spacing:-1.7px;max-width:460px;margin:18px 0;font-size:48px;line-height:1.08}.login-copy p{color:#c9d6e7;max-width:500px;font-size:17px;line-height:1.7}.login-form-area{background:radial-gradient(circle at 70% 18%,#fff0e7,#0000 28%),#f7f9fc;place-items:center;padding:40px;display:grid}.login-card{border:1px solid var(--border);background:#fff;border-radius:20px;width:min(100%,460px);padding:38px;box-shadow:0 18px 55px #00173712}.login-card h2{letter-spacing:-.8px;margin:0;font-size:30px}.login-help{color:var(--muted);margin:10px 0 25px;line-height:1.5}.login-card form{gap:18px;display:grid}.login-card label{color:var(--body);gap:7px;font-size:13px;font-weight:600;display:grid}.login-card input{width:100%;height:48px;color:var(--ink);background:#fff;border:1px solid #cfd8e5;border-radius:10px;padding:0 14px;font-size:15px}.login-card input:focus{border-color:var(--blue);outline:0;box-shadow:0 0 0 3px #1769e826}.login-primary{color:#fff;background:var(--navy);border:0;border-radius:10px;height:48px;font-weight:600}.login-switch{color:var(--muted);text-align:center;margin-top:22px;font-size:13px}.login-switch a{color:var(--blue);font-weight:600;text-decoration:none}.form-message{border-radius:10px;margin:0 0 18px;padding:12px 14px;font-size:13px;line-height:1.45}.form-message.error{color:#a52626;background:#fdecec}.form-message.success{color:#087260;background:#e1f7f2}@media (max-width:800px){.login-page{grid-template-columns:1fr}.login-brand{min-height:260px;padding:34px}.login-copy{margin:50px 0 0}.login-copy h1{font-size:34px}.login-copy p{font-size:14px}.login-form-area{padding:24px}.login-card{padding:28px}}.login-method-divider{color:var(--muted);align-items:center;gap:12px;margin:20px 0;font-size:12px;display:flex}.login-method-divider:after,.login-method-divider:before{content:"";background:var(--border);flex:1;height:1px}.login-google{height:48px;color:var(--ink);background:#fff;border:1px solid #cfd8e5;border-radius:10px;justify-content:center;align-items:center;gap:11px;font-weight:600;display:flex}.login-google:hover{background:#f8fafc;border-color:#9eabbc}.login-google:focus-visible{border-color:var(--blue);outline:0;box-shadow:0 0 0 3px #1769e826}.login-google span{color:#1769e8;background:#eef4ff;border-radius:50%;place-items:center;width:23px;height:23px;font-size:14px;font-weight:700;display:grid}.login-method-help{color:var(--muted);text-align:center;margin:10px 8px 0;font-size:11px;line-height:1.45}.role-switcher{position:relative}.role-switcher summary{cursor:pointer;list-style:none}.role-switcher summary::-webkit-details-marker{display:none}.role-switcher:not(.compact) summary{border-radius:50%}.role-switcher.compact summary{color:#fff;border-radius:12px;grid-template-columns:36px 1fr 20px;align-items:center;gap:9px;padding:8px 4px;display:grid}.role-switcher.compact summary:hover{background:#ffffff0b}.role-switcher.compact .avatar{border-width:2px;width:36px;height:36px}.role-summary-copy small,.role-summary-copy strong{display:block}.role-summary-copy small{color:#b8c8df;margin-top:3px;font-size:11px}.role-chevron{text-align:center}.role-menu{z-index:30;border:1px solid var(--border);width:300px;color:var(--ink);background:#fff;border-radius:15px;padding:10px;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 18px 50px #0017372b}.compact .role-menu{inset:auto auto calc(100% + 8px) 0}.role-menu-heading{border-bottom:1px solid var(--border);padding:10px 10px 13px}.role-menu-heading small,.role-menu-heading strong{display:block}.role-menu-heading small{color:var(--muted);margin-top:3px}.role-menu>p{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:12px 10px 7px;font-size:10px;font-weight:600}.role-menu>a{color:var(--ink);border-radius:10px;grid-template-columns:36px 1fr 20px;align-items:center;gap:10px;padding:10px;text-decoration:none;display:grid}.role-menu>a.selected,.role-menu>a:hover{background:#f2f6fc}.role-menu>a small,.role-menu>a strong{display:block}.role-menu>a small{color:var(--muted);margin-top:2px;font-size:10px}.role-menu>a>b{color:var(--teal)}.role-menu-icon{width:34px;height:34px;color:var(--blue);background:#eaf2ff;border-radius:9px;place-items:center;font-weight:600;display:grid}.role-menu form{border-top:1px solid var(--border);margin-top:8px;padding-top:8px}.role-menu form button{color:#b92d2d;text-align:left;background:0 0;border:0;border-radius:9px;width:100%;padding:10px;font-weight:700}.role-menu form button:hover{background:#fff0f0}.teacher-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.teacher-grid{grid-template-columns:minmax(0,1.5fr) minmax(280px,.75fr);gap:18px;display:grid}.teacher-grid .panel{padding:24px}.class-card-list{gap:9px;display:grid}.class-card{border:1px solid var(--border);width:100%;color:var(--ink);text-align:left;background:#fff;border-radius:13px;grid-template-columns:64px 1fr auto 22px;align-items:center;gap:14px;padding:16px;display:grid}.class-card:hover{background:#fafdff;border-color:#9dbbea}.class-card time{font-weight:600}.class-card span small,.class-card span strong{display:block}.class-card span small{color:var(--muted);margin-top:4px}.class-card>b{color:var(--blue);background:#eaf2ff;border-radius:20px;padding:5px 9px;font-size:10px}.class-card i{color:var(--blue);font-size:18px;font-style:normal}.teacher-ready{background:linear-gradient(145deg,#fcfbff,#f4f0ff);border-color:#e4dcff}.teacher-ready h2{margin:8px 0}.teacher-ready p{color:var(--body);line-height:1.6}.teacher-ready .primary{color:#fff;background:var(--violet);border:0;border-radius:10px;margin-top:12px;padding:11px 15px;font-weight:600}@media (max-width:1100px){.teacher-grid,.teacher-summary{grid-template-columns:1fr}}.sidebar a.nav-item{text-decoration:none}.people-workspace,.profile-workspace{background:radial-gradient(circle at 72% 3%,#f04f4f10,#0000 23%),#fff}.people-topbar{margin-bottom:22px}.people-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px;display:grid}.people-summary article{border:1px solid var(--border);background:#fff;border-radius:15px;align-items:center;gap:14px;min-height:92px;padding:17px 19px;display:flex;box-shadow:0 7px 22px #0017370b}.people-summary small,.people-summary strong{display:block}.people-summary strong{font-size:23px}.people-summary small{color:var(--muted);margin-top:2px;font-size:11px}.card-icon.blue{color:var(--blue);background:#eaf2ff}.people-panel{padding:0;overflow:hidden}.people-tools{border-bottom:1px solid var(--border);gap:16px;padding:18px 20px}.people-search,.people-tools{align-items:center;display:flex}.people-search{max-width:600px;height:44px;color:var(--muted);background:#f9fbfd;border:1px solid #ccd7e5;border-radius:11px;flex:1;gap:10px;padding:0 14px}.people-search:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #1769e81a}.people-search input{width:100%;color:var(--ink);font:inherit;background:0 0;border:0;outline:0}.results-count{color:var(--muted);margin-left:auto;font-size:12px;font-weight:700}.people-row,.people-table-head{grid-template-columns:minmax(210px,1.15fr) minmax(155px,.9fr) minmax(210px,1.15fr) minmax(130px,.8fr) 24px;align-items:center;gap:18px;display:grid}.people-table-head{min-height:42px;color:var(--muted);letter-spacing:.07em;text-transform:uppercase;background:#f7f9fc;padding:0 20px;font-size:10px;font-weight:600}.people-row{border-top:1px solid var(--border);min-height:72px;color:var(--ink);padding:10px 20px;text-decoration:none}.people-row:hover{background:#f9fbff}.people-row>span{min-width:0;font-size:12px;line-height:1.35}.person-cell{align-items:center;gap:11px;display:flex}.person-cell>span:last-child{min-width:0}.person-cell small,.person-cell strong{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.person-cell strong{font-size:13px}.person-cell small{color:var(--muted);margin-top:3px;font-size:10px}.person-cell .warning-copy{color:#d74813}.student-avatar{color:#0b4f75;background:linear-gradient(145deg,#d8f2fa,#a7d8eb);border-radius:11px;flex:none;place-items:center;width:38px;height:38px;font-size:11px;font-weight:600;display:grid}.people-row em{color:#8b98aa;font-style:normal}.contact-cell{text-overflow:ellipsis;overflow:hidden}.row-arrow{color:var(--blue);text-align:right;font-size:18px!important}.people-empty{text-align:center;color:var(--muted);padding:60px 20px}.people-empty>span{font-size:30px;display:block}.people-empty strong{color:var(--ink);margin-top:10px;display:block}.people-empty p{margin:6px 0 0}.profile-nav{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.profile-nav>a{color:var(--blue);font-size:13px;font-weight:600;text-decoration:none}.student-hero{grid-template-columns:76px 1fr auto;align-items:center;gap:20px;margin-bottom:16px;padding:24px;display:grid}.profile-avatar{border-radius:20px;width:76px;height:76px;font-size:20px}.student-hero h1{letter-spacing:-.8px;margin:0;font-size:30px}.student-hero p:last-child{color:var(--muted);margin:7px 0 0}.status-pill{color:#087c6a;background:#e1f7f2;border-radius:20px;padding:7px 11px;font-size:11px;font-weight:600}.profile-alert{color:#9b3a13;background:#fff7f1;border:1px solid #ffd7bd;border-radius:13px;margin-bottom:16px;padding:16px 18px}.profile-alert strong{font-size:12px}.profile-alert p{margin:5px 0 0;font-size:13px;line-height:1.5}.profile-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.profile-card{min-height:230px}.profile-list-item{border-bottom:1px solid var(--border);align-items:center;gap:12px;min-height:68px;display:flex}.profile-list-item:last-child{border-bottom:0}.profile-list-item>div{flex:1;min-width:0}.profile-list-item small,.profile-list-item strong{display:block}.profile-list-item small{color:var(--muted);margin-top:4px;font-size:11px}.profile-icon{border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.profile-icon.blue{color:var(--blue);background:#eaf2ff}.family-avatar{color:#5941aa;background:#f0ecff;border-radius:50%}.detail-list{margin:0}.detail-list>div{border-bottom:1px solid var(--border);grid-template-columns:145px 1fr;gap:14px;padding:13px 0;display:grid}.detail-list>div:last-child{border-bottom:0}.detail-list dt{color:var(--muted);font-size:11px}.detail-list dd{margin:0;font-size:12px;font-weight:700}.integration-card{background:linear-gradient(145deg,#fbfffe,#f3fbf9)}.integration-status{align-items:center;gap:13px;display:flex}.integration-status small,.integration-status strong{display:block}.integration-status small{color:var(--muted);margin-top:4px}.integration-note{color:var(--body);background:#fff;border-radius:10px;margin:18px 0 0;padding:13px;font-size:12px;line-height:1.5}.student-current-class{border-top:1px solid var(--border);padding:16px 0}.student-current-class:first-of-type{border-top:0;padding-top:0}.student-current-class>header{align-items:center;gap:11px;margin-bottom:12px;display:flex}.student-current-class>header>div{min-width:0}.student-current-class>header small,.student-current-class>header strong{display:block}.student-current-class>header small{color:var(--muted);margin-top:3px;font-size:10px}.student-class-facts{grid-template-columns:1fr 1fr;gap:9px;margin:0;display:grid}.student-class-facts>div{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;padding:10px 11px}.student-class-facts dt{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:700}.student-class-facts dd{margin:4px 0 0;font-size:11px;font-weight:700;line-height:1.4}.profile-empty-state{border:1px dashed var(--border-strong);color:var(--muted);background:var(--surface-soft);border-radius:11px;padding:18px}@media (max-width:1180px){.people-row,.people-table-head{grid-template-columns:minmax(190px,1fr) minmax(140px,.8fr) minmax(180px,1fr) 22px}.people-row>.contact-cell,.people-table-head>span:nth-child(4){display:none}.people-summary{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.people-summary,.profile-grid{grid-template-columns:1fr}.people-summary article{min-height:78px}.people-table-head{display:none}.people-row{grid-template-columns:1fr 22px;gap:8px;padding:14px 16px}.people-row>.contact-cell,.people-row>span:nth-child(2),.people-row>span:nth-child(3){grid-column:1;margin-left:49px}.people-tools{flex-direction:column;align-items:stretch}.results-count{margin:0}.student-hero{grid-template-columns:58px 1fr}.profile-avatar{width:58px;height:58px}.student-hero .status-pill{grid-column:2}.profile-workspace{padding-top:18px}.profile-nav .role-switcher{display:none}.student-class-facts{grid-template-columns:1fr}}.classes-workspace,.group-workspace{background:radial-gradient(circle at 78% 3%,#1769e80d,#0000 23%),#fff}.groups-tools{align-items:center;gap:14px;margin-bottom:17px;padding:14px 16px;display:flex}.groups-search{min-width:250px;max-width:430px}.day-filters{flex-wrap:wrap;gap:5px;display:flex}.day-filters button{border:1px solid var(--border);min-height:34px;color:var(--body);background:#fff;border-radius:9px;padding:0 11px;font-size:11px;font-weight:600}.day-filters button.selected,.day-filters button:hover{color:#fff;border-color:var(--blue);background:var(--blue)}.group-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.group-card{min-height:278px;color:var(--ink);flex-direction:column;padding:20px;text-decoration:none;transition:border-color .15s,transform .15s,box-shadow .15s;display:flex}.group-card:hover{border-color:#a7c4ee;transform:translateY(-2px);box-shadow:0 12px 30px #00173717}.group-card-top{justify-content:space-between;align-items:center;display:flex}.group-icon{width:42px;height:42px;color:var(--blue);background:#eaf2ff;border-radius:11px;place-items:center;font-size:18px;display:grid}.group-icon.large{border-radius:18px;width:70px;height:70px;font-size:26px}.group-card h2{margin:17px 0 9px;font-size:20px}.group-schedule{color:var(--body);flex-wrap:wrap;gap:8px;margin:0;font-size:12px;display:flex}.group-schedule span{color:var(--muted)}.group-meta{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:1fr .65fr;gap:14px;margin:21px 0;padding:15px 0;display:grid}.group-meta small,.group-meta strong{display:block}.group-meta small{color:var(--muted);letter-spacing:.07em;margin-bottom:5px;font-size:9px;font-weight:600}.group-meta strong{font-size:11px;line-height:1.4}.group-card footer{align-items:center;gap:10px;margin-top:auto;font-size:11px;display:flex}.group-card footer>span:first-child{color:var(--body)}.group-card footer i{color:var(--blue);margin-left:auto;font-size:18px;font-style:normal}.group-warning{color:#c2471b;background:#fff0e7;border-radius:7px;padding:5px 7px;font-weight:600}.group-calm{color:#087c6a;font-weight:600}.groups-empty{text-align:center;color:var(--muted);padding:55px}.groups-empty span{font-size:28px;display:block}.groups-empty strong{color:var(--ink);margin-top:10px;display:block}.groups-empty p{margin:6px 0 0}.group-hero{grid-template-columns:70px 1fr auto;align-items:center;gap:20px;margin-bottom:15px;padding:23px;display:grid}.group-hero h1{margin:0;font-size:30px}.group-hero p:last-child{color:var(--body);margin:6px 0 0}.group-overview{grid-template-columns:.65fr 1.35fr .8fr .9fr;gap:13px;margin-bottom:16px;display:grid}.group-overview article{flex-direction:column;justify-content:center;min-height:112px;padding:18px;display:flex}.group-overview small,.group-overview strong{display:block}.group-overview strong{font-size:27px}.group-overview strong.overview-text{font-size:14px;line-height:1.4}.group-overview small{color:var(--muted);margin-top:5px;font-size:10px}.overview-warning{background:#fffaf6;border-color:#ffd6ba}.overview-warning strong{color:var(--orange)}.group-main-grid{grid-template-columns:minmax(0,1.7fr) minmax(280px,.72fr);gap:16px;display:grid}.roster-panel{padding:0;overflow:hidden}.roster-panel .panel-heading{padding:20px 21px 5px}.roster-count{color:var(--blue);background:#eaf2ff;border-radius:8px;padding:6px 9px;font-size:10px;font-weight:600}.roster-head,.roster-row{grid-template-columns:minmax(230px,1.2fr) 100px minmax(160px,.8fr) 22px;align-items:center;gap:14px;display:grid}.roster-head{min-height:38px;color:var(--muted);letter-spacing:.07em;text-transform:uppercase;background:#f7f9fc;padding:0 21px;font-size:9px;font-weight:600}.roster-row{border-top:1px solid var(--border);min-height:68px;color:var(--ink);padding:9px 21px;text-decoration:none}.roster-row:hover{background:#f9fbff}.roster-row .student-avatar{border-radius:50%}.roster-warning{color:#c2471b;font-size:10px}.roster-clear{color:#087c6a;font-size:10px;font-weight:600}.group-side-stack{align-content:start;gap:16px;display:grid}.next-step-card{background:linear-gradient(145deg,#fcfbff,#f5f2ff);border-color:#e4dcff}.group-context-card h2,.next-step-card h2{margin:10px 0}.next-step-card p{color:var(--body);font-size:12px;line-height:1.6}.next-step-card button{color:#8478ab;cursor:not-allowed;background:#e9e4f8;border:0;border-radius:9px;width:100%;min-height:40px;margin-top:8px;font-size:11px;font-weight:600}.group-context-card ul{color:var(--body);gap:11px;margin:16px 0 0;padding:0;font-size:12px;list-style:none;display:grid}.group-context-card li span{color:var(--teal);margin-right:7px;font-weight:700}@media (max-width:1220px){.group-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.groups-tools{flex-wrap:wrap;align-items:stretch}.groups-tools .results-count{width:100%;margin:0}.group-overview{grid-template-columns:repeat(2,1fr)}.group-main-grid{grid-template-columns:1fr}}@media (max-width:760px){.group-card-grid,.group-overview{grid-template-columns:1fr}.groups-tools{display:block}.day-filters{margin-top:12px}.groups-tools .results-count{margin-top:12px;display:block}.group-card{min-height:260px}.group-hero{grid-template-columns:56px 1fr}.group-icon.large{width:56px;height:56px}.group-hero .status-pill{grid-column:2}.roster-head{display:none}.roster-row{grid-template-columns:1fr 22px;gap:7px;padding:13px 16px}.roster-row>span:nth-child(2),.roster-row>span:nth-child(3){grid-column:1;justify-self:start;margin-left:49px}}.attendance-launch{color:#fff;background:var(--violet);border-radius:9px;place-items:center;width:100%;min-height:42px;margin-top:12px;font-size:11px;font-weight:600;text-decoration:none;display:grid}.attendance-launch:hover{background:#5539bf}.attendance-workspace{background:radial-gradient(circle at 76% 2%,#00a88f0d,#0000 24%),#fff}.attendance-hero{grid-template-columns:70px 1fr auto;align-items:center;gap:20px;margin-bottom:16px;padding:22px;display:grid}.attendance-hero h1{margin:0;font-size:29px}.attendance-hero p:last-child{color:var(--body);margin:6px 0 0}.status-pill.saved{color:#5640ae;background:#f0ecff}.attendance-layout{grid-template-columns:minmax(0,1.8fr) minmax(280px,.7fr);gap:16px;display:grid}.attendance-panel{padding:0;overflow:hidden}.attendance-toolbar{justify-content:space-between;align-items:center;gap:16px;padding:20px;display:flex}.attendance-toolbar h2{margin:0}.attendance-toolbar button{color:#087c6a;background:#effbf8;border:1px solid #a8dfd5;border-radius:9px;min-height:38px;padding:0 13px;font-size:11px;font-weight:600}.attendance-toolbar button:hover{background:#e1f7f2}.attendance-head,.attendance-row{grid-template-columns:minmax(220px,1fr) minmax(245px,.95fr) minmax(170px,.75fr);align-items:center;gap:14px;display:grid}.attendance-head{min-height:39px;color:var(--muted);letter-spacing:.07em;text-transform:uppercase;background:#f7f9fc;padding:0 20px;font-size:9px;font-weight:600}.attendance-row{border-top:1px solid var(--border);min-height:76px;padding:10px 20px}.attendance-row .student-avatar{border-radius:50%}.attendance-options{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.attendance-options button{border:1px solid var(--border);min-height:34px;color:var(--muted);background:#fff;border-radius:8px;font-size:10px;font-weight:600}.attendance-options button.present.selected{color:#087c6a;background:#e1f7f2;border-color:#8bd8c9}.attendance-options button.absent.selected{color:#b92d2d;background:#fdecec;border-color:#f5b8b8}.attendance-options button.late.selected{color:#c2471b;background:#fff0e7;border-color:#ffc9a9}.attendance-row>input{width:100%;height:37px;color:var(--ink);font:inherit;background:#fff;border:1px solid #d3dce8;border-radius:8px;padding:0 10px;font-size:11px}.attendance-row>input:focus{border-color:var(--blue);outline:0;box-shadow:0 0 0 3px #1769e818}.attendance-side{align-content:start;gap:16px;display:grid}.attendance-summary h2{margin:7px 0 16px}.attendance-summary>div{border-bottom:1px solid var(--border);grid-template-columns:10px 36px 1fr;align-items:center;gap:10px;min-height:40px;display:grid}.attendance-summary>div small{color:var(--muted)}.summary-dot{border-radius:50%;width:9px;height:9px}.summary-dot.present{background:var(--teal)}.summary-dot.absent{background:var(--coral)}.summary-dot.late{background:var(--orange)}.attendance-summary>button{color:#fff;background:var(--navy);border:0;border-radius:10px;width:100%;min-height:44px;margin-top:18px;font-weight:600}.attendance-summary>button:disabled{opacity:.65;cursor:wait}.save-result{border-radius:8px;margin:11px 0 0;padding:10px;font-size:11px;line-height:1.45}.save-result.success{color:#087260;background:#e1f7f2}.save-result.error{color:#a52626;background:#fdecec}.attendance-help{background:linear-gradient(145deg,#fbfffe,#f1faf8);gap:11px;display:flex}.attendance-help strong{font-size:12px}.attendance-help p{color:var(--body);margin:6px 0 0;font-size:11px;line-height:1.55}@media (max-width:1500px){.attendance-layout{grid-template-columns:1fr}.attendance-side{grid-template-columns:1fr 1fr}.attendance-head,.attendance-row{grid-template-columns:minmax(190px,.72fr) minmax(350px,1.25fr) minmax(250px,1fr)}}@media (max-width:760px){.attendance-hero{grid-template-columns:56px 1fr}.attendance-hero .status-pill{grid-column:2}.attendance-head{display:none}.attendance-row{grid-template-columns:1fr;gap:10px;padding:14px 16px}.attendance-options,.attendance-row>input{width:calc(100% - 49px);margin-left:49px}.attendance-side{grid-template-columns:1fr}.attendance-toolbar{flex-direction:column;align-items:flex-start}.attendance-toolbar button{width:100%}}.attendance-head,.attendance-row{grid-template-columns:minmax(190px,.75fr) minmax(330px,1.35fr) minmax(250px,1fr)}.attendance-row{align-items:start;min-height:170px;padding-top:16px}.class-controls{gap:8px;display:grid}.attendance-options{grid-template-columns:1fr 1fr}.book-options,.observation-options{flex-wrap:wrap;gap:6px;display:flex}.book-options button,.observation-options button,.student-comment button{border:1px solid var(--border);min-height:30px;color:var(--muted);background:#fff;border-radius:8px;padding:0 9px;font-size:9px;font-weight:600}.observation-options button.selected{color:#b24318;background:#fff0e7;border-color:#ffc5a2}.book-options button.selected,.book-options button[aria-pressed=true]{color:#087c6a;background:#e1f7f2;border-color:#8bd8c9}.book-options button.review{color:#b24318}.book-ready{color:#087c6a;background:#e1f7f2;border-radius:8px;align-items:center;min-height:30px;padding:0 10px;font-size:10px;font-weight:600;display:inline-flex}.student-comment{gap:7px;display:grid}.student-comment textarea{resize:vertical;width:100%;min-height:78px;color:var(--ink);font:inherit;border:1px solid #d3dce8;border-radius:9px;padding:10px;font-size:11px}.student-comment textarea:focus{border-color:var(--blue);outline:0;box-shadow:0 0 0 3px #1769e818}.student-comment>div{gap:5px;display:flex}.student-comment button.selected{color:#fff;border-color:var(--navy);background:var(--navy)}.student-comment button.family.selected{border-color:var(--violet);background:var(--violet)}.absence-confirm{background:#fff7f7;border-radius:10px;margin:12px 0;border:1px solid #f5b8b8!important;padding:12px!important;display:block!important}.absence-confirm strong{display:block}.absence-confirm p{color:var(--body);margin:5px 0 10px;font-size:10px;line-height:1.45}.absence-confirm span{gap:6px;display:flex}.absence-confirm button{border:1px solid var(--border);background:#fff;border-radius:7px;flex:1;min-height:32px;font-size:9px;font-weight:600}.absence-confirm button.danger{color:#fff;border-color:var(--coral);background:var(--coral)}@media (max-width:1220px){.attendance-head,.attendance-row{grid-template-columns:minmax(170px,.65fr) minmax(300px,1.2fr) minmax(220px,1fr)}}@media (max-width:860px){.attendance-head{display:none}.attendance-row{grid-template-columns:1fr;min-height:0}.class-controls,.student-comment{margin-left:49px}.attendance-options{width:100%;margin-left:0}}.teacher-classes .panel-heading>a{border:1px solid var(--border);min-height:36px;color:var(--body);background:#fff;border-radius:9px;place-items:center;padding:0 14px;font-size:12px;font-weight:600;text-decoration:none;display:grid}.class-card{text-decoration:none}.class-card.attendance-complete{background:#f8fdfc;border-color:#b8e5dc}.class-card.attendance-complete>b{color:#087c6a;background:#e1f7f2}.teacher-primary-link{text-decoration:none;display:inline-block}.teacher-empty{text-align:center;color:var(--muted);padding:42px 20px}.teacher-empty>span{font-size:30px}.teacher-empty strong{color:var(--ink);margin-top:10px;display:block}.teacher-empty p{max-width:430px;margin:7px auto 0;line-height:1.5}.books-workspace{background:radial-gradient(circle at 77% 3%,#f5a80012,#0000 25%),#fff}.books-content-grid,.books-setup-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.book-form-card h2{margin:0 0 18px}.book-form-card form{gap:14px;display:grid}.book-form-card label{color:var(--body);gap:6px;font-size:11px;font-weight:600;display:grid}.book-form-card input,.book-form-card select{width:100%;min-height:42px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cfd8e5;border-radius:9px;padding:0 11px;font-size:12px}.book-form-card input:focus,.book-form-card select:focus{border-color:var(--blue);outline:0;box-shadow:0 0 0 3px #1769e818}.form-pair{grid-template-columns:1fr 1fr;gap:12px;display:grid}.book-primary{color:#fff;background:var(--navy);border:0;border-radius:10px;min-height:43px;font-weight:600}.book-primary:disabled{opacity:.45;cursor:not-allowed}.book-help{color:var(--body);background:#f5f2ff;border-radius:9px;margin:14px 0 0;padding:11px;font-size:10px;line-height:1.55}.book-catalog-card,.group-book-sets{padding:0;overflow:hidden}.book-catalog-card .panel-heading,.group-book-sets .panel-heading{padding:21px 21px 7px}.book-catalog-list,.group-book-list{display:grid}.book-catalog-row{border-top:1px solid var(--border);grid-template-columns:40px 1fr auto;align-items:center;gap:12px;min-height:70px;padding:11px 21px;display:grid}.book-cover{color:#fff;background:linear-gradient(145deg,var(--blue),var(--violet));border-radius:6px 9px 9px 6px;place-items:center;width:38px;height:45px;display:grid;box-shadow:inset 3px 0 #ffffff2e}.book-catalog-row small,.book-catalog-row strong{display:block}.book-catalog-row small{color:var(--muted);margin-top:3px;font-size:9px}.book-catalog-row>b{color:var(--body);font-size:11px}.books-empty{color:var(--muted);text-align:center;padding:30px 21px}.group-book-list>section{border-top:1px solid var(--border);padding:15px 21px}.group-book-list>section>header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.group-book-list>section>header small{color:var(--muted);font-size:9px}.group-book-list>section>div{background:#f8faff;border-radius:9px;grid-template-columns:28px 1fr auto;align-items:center;gap:9px;min-height:49px;margin-top:5px;padding:8px 10px;display:grid}.group-book-list>section>div>span:first-child{color:var(--blue)}.group-book-list small,.group-book-list strong{display:block}.group-book-list>section>div small{color:var(--muted);margin-top:2px;font-size:8px}.group-book-list>section>p{color:var(--muted);margin:7px 0;font-size:10px}.group-book-list form button{color:#a52626;background:0 0;border:0;font-size:9px;font-weight:600}@media (max-width:1050px){.books-content-grid{grid-template-columns:1fr}.books-setup-grid{grid-template-columns:1fr 1fr}}@media (max-width:700px){.books-setup-grid,.form-pair{grid-template-columns:1fr}.book-catalog-row{grid-template-columns:40px 1fr}.book-catalog-row>b{grid-column:2}.group-book-list>section{padding:14px}}.group-book-set{border-top:1px solid var(--border)}.group-book-set>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;min-height:62px;padding:12px 21px;list-style:none;display:flex}.group-book-set>summary::-webkit-details-marker{display:none}.group-book-set>summary span{min-width:0}.group-book-set>summary small,.group-book-set>summary strong{display:block}.group-book-set>summary small{color:var(--muted);margin-top:3px;font-size:9px}.group-book-set>summary>svg{color:var(--muted);transition:transform .18s}.group-book-set[open]>summary>svg{transform:rotate(180deg)}.group-book-set[open]>summary{background:#fbfcfe}.group-book-items{padding:0 21px 13px}.group-book-item{background:#f8faff;border-radius:9px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:49px;margin-top:5px;padding:8px 10px;display:grid;position:relative}.group-book-item>span:first-child{color:var(--blue)}.group-book-item small,.group-book-item strong{display:block}.group-book-item small{color:var(--muted);margin-top:2px;font-size:8px}.book-item-actions{position:relative}.book-item-actions>summary{width:34px;height:34px;color:var(--muted);cursor:pointer;border-radius:8px;place-items:center;list-style:none;display:grid}.book-item-actions>summary::-webkit-details-marker{display:none}.book-item-actions>form{z-index:8;border:1px solid var(--border);background:#fff;border-radius:9px;width:150px;padding:6px;position:absolute;top:38px;right:0;box-shadow:0 12px 28px #142f4a1c}.book-item-actions form button{color:#a52626;text-align:left;background:#fff8f8;border-radius:6px;align-items:center;gap:7px;width:100%;min-height:34px;padding:0 9px;display:flex}.module-primary{gap:7px}@media (max-width:760px){.books-workspace .people-summary{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-flow:row!important;gap:7px!important;overflow:visible!important}.books-workspace .people-summary article{text-align:center;justify-items:center;gap:7px;padding:11px 7px;display:grid}.books-workspace .people-summary .card-icon{width:30px;height:30px}.group-book-set>summary{padding:12px 14px}.group-book-items{padding:0 14px 12px}.book-item-actions>form{z-index:80;width:calc(100vw - 32px);position:fixed;top:auto;bottom:84px;right:16px}.module-tabs{scrollbar-width:none}.module-tabs::-webkit-scrollbar{display:none}}.staff-workspace{background:radial-gradient(circle at 74% 3%,#6748d70d,#0000 24%),#fff}.staff-tools{align-items:center;gap:16px;margin-bottom:16px;padding:15px 17px;display:flex}.staff-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.staff-card{padding:21px}.staff-card>header{grid-template-columns:52px 1fr auto;align-items:center;gap:13px;display:grid}.staff-avatar{color:#254270;background:linear-gradient(145deg,#e7f0ff,#bfd4f4);border-radius:15px;place-items:center;width:52px;height:52px;font-size:13px;font-weight:600;display:grid}.staff-card h2{margin:0;font-size:18px}.staff-card header p{color:var(--muted);margin:4px 0 0;font-size:11px}.account-chip{white-space:nowrap;border-radius:20px;padding:6px 8px;font-size:9px;font-weight:600}.account-chip.linked{color:#087c6a;background:#e1f7f2}.account-chip.pending{color:#7258c5;background:#f0ecff}.staff-stats{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:19px 0;padding:15px 0;display:grid}.staff-stats small,.staff-stats strong,.staff-stats>span{display:block}.staff-stats strong{font-size:17px}.staff-stats small{color:var(--muted);margin-top:3px;font-size:9px}.staff-groups{gap:6px;display:grid}.staff-groups>.section-kicker{margin-bottom:2px}.staff-groups>a{min-height:54px;color:var(--ink);background:#f8faff;border-radius:10px;align-items:center;gap:10px;padding:9px 11px;text-decoration:none;display:flex}.staff-groups>a:hover{background:#f0f5fd}.staff-groups>a>span{flex:1;min-width:0}.staff-groups small,.staff-groups strong{display:block}.staff-groups strong{font-size:11px}.staff-groups small{color:var(--muted);margin-top:3px;font-size:9px}.staff-groups i{color:var(--blue);font-style:normal}.staff-groups>p{color:var(--muted);margin:4px 0;font-size:11px}@media (max-width:1000px){.staff-card-grid{grid-template-columns:1fr}}@media (max-width:760px){.staff-tools{flex-direction:column;align-items:stretch}.staff-card>header{grid-template-columns:45px 1fr}.staff-avatar{width:45px;height:45px}.account-chip{grid-column:2;justify-self:start}.staff-stats{grid-template-columns:1fr}}.nav-icon{flex:none}.nav-label{min-width:0;color:inherit;opacity:1;visibility:visible;white-space:nowrap;display:block}.mobile-app-bar,.mobile-bottom-nav,.mobile-drawer-heading,.mobile-nav-scrim{display:none}@media (max-width:900px){.app-shell{padding:0;display:block}.workspace{border-radius:0;min-height:100vh;padding:86px 28px 34px}.mobile-app-bar{z-index:45;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff2;justify-content:space-between;align-items:center;height:64px;padding:0 20px;display:flex;position:fixed;inset:0 0 auto}.mobile-app-bar>button{border:1px solid var(--border);width:44px;height:44px;color:var(--navy);background:#fff;border-radius:11px;font-size:20px}.mobile-brand{color:var(--navy);align-items:center;gap:9px;display:flex}.mobile-brand b{color:#0000;background:linear-gradient(105deg,#19b9dd,#1769e8 30%,#f04f4f 60%,#f5a800);-webkit-background-clip:text;background-clip:text;font-size:32px;line-height:1}.mobile-brand strong{letter-spacing:-.8px;font-size:20px}.mobile-nav-scrim{z-index:48;pointer-events:none;opacity:0;background:#00173766;border:0;transition:opacity .2s;display:block;position:fixed;inset:0}.mobile-nav-scrim.visible{pointer-events:auto;opacity:1}.sidebar{z-index:50;border-radius:0 20px 20px 0;width:min(340px,88vw);min-height:100vh;padding:18px;transition:transform .22s;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto;transform:translate(-105%)}.sidebar.mobile-open{transform:translate(0)}.sidebar .brand{padding:4px 0 20px}.sidebar nav{display:grid}.sidebar .brand-name{display:block}.sidebar .ai-entry{display:grid}.mobile-drawer-heading{color:#b8c8df;letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:6px;font-size:11px;font-weight:600;display:flex}.mobile-drawer-heading button{color:#fff;background:#ffffff0d;border:0;border-radius:10px;width:40px;height:40px;font-size:24px}.role-menu{width:auto;max-height:70vh;position:fixed;bottom:18px;left:18px;right:18px;overflow:auto}.topbar{gap:14px}.header-actions{flex:none}.attention-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-detail-grid,.work-layout{grid-template-columns:1fr}.work-tabs{scrollbar-width:none;overflow-x:auto}.work-tabs a{flex:none}}.admissions-workspace{background:#fbfefc}.admissions-tabs{flex-wrap:wrap;gap:7px;margin:0 0 16px;display:flex}.admissions-tabs a{color:#17324d;background:#fff;border:1.5px solid #a9cfc6;border-radius:999px;padding:8px 11px;font-size:11px;text-decoration:none}.admissions-tabs a.primary{color:#fff;background:#1c8278;border-color:#1c8278;margin-left:auto}.admissions-alert{border:1.5px solid;border-radius:11px;padding:11px 14px}.admissions-alert.success{color:#12695f;background:#eaf8f3;border-color:#72bbae}.admissions-alert.error{color:#962e42;background:#fff1f3;border-color:#e7a1ad}.admissions-form,.admissions-inline-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.admissions-form label,.admissions-inline-form label{color:#42566c;gap:5px;font-size:10px;font-weight:750;display:grid}.admissions-form input,.admissions-form select,.admissions-form textarea,.admissions-inline-form input,.admissions-inline-form select,.admissions-inline-form textarea{color:#102b47;width:100%;min-height:39px;font:inherit;background:#fff;border:1.5px solid #aecdc6;border-radius:9px;padding:8px 10px}.admissions-form textarea,.admissions-inline-form textarea{resize:vertical;min-height:72px}.admissions-form .wide,.admissions-inline-form button,.admissions-inline-form p{grid-column:1/-1}.admissions-denied button,.admissions-form button,.admissions-inline-form button{color:#fff;background:#1c8278;border:0;border-radius:9px;min-height:39px;padding:8px 13px;font-weight:750}.admissions-inline-form{background:#f7fcfa;border:1px solid #c8ded8;border-radius:11px;margin:12px 0;padding:12px}.admissions-queue header{justify-content:space-between;display:flex}.admissions-case-list{display:grid}.admissions-case-list>a{color:#102b47;border-top:1px solid #d1e2de;justify-content:space-between;align-items:center;gap:18px;padding:14px 2px;text-decoration:none;display:flex}.admissions-case-list>a:hover{background:#f1faf7}.admissions-case-list b,.admissions-case-list small,.admissions-case-list span{display:block}.admissions-case-list small{color:#526b7e;margin-top:4px}.admissions-dimensions{text-align:right;grid-template-columns:repeat(4,auto);gap:5px 10px;display:grid!important}.admissions-dimensions em{color:#16746b;grid-column:1/-1;font-size:10px;font-weight:800}.admissions-denied,.admissions-empty{text-align:center;padding:36px}.admissions-loading{gap:12px;margin:30px;display:grid}.admissions-loading span{background:linear-gradient(90deg,#edf6f3,#fff,#edf6f3) 0 0/200% 100%;border-radius:10px;height:58px;animation:admissions-shimmer 1.2s infinite}.admissions-status-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:15px;display:grid}.admissions-status-grid article{background:#fff;border:1.5px solid #9fc9c0;border-radius:12px;padding:13px}.admissions-status-grid b,.admissions-status-grid em,.admissions-status-grid small{display:block}.admissions-status-grid small{color:#526b7e}.admissions-status-grid b{margin-top:5px}.admissions-status-grid em{color:#a33c50;margin-top:5px;font-size:10px}.admissions-columns{grid-template-columns:1fr 1fr;gap:15px;display:grid}.admissions-columns>div{align-content:start;gap:15px;display:grid}.admissions-columns .panel{margin:0}.admissions-person{border:1px solid #cfdfdc;border-radius:10px;padding:10px}.admissions-note{color:#55466f;background:#f6f0ff;border-left:3px solid #8d6bc4;padding:9px 11px;font-size:11px}.admissions-checks{gap:7px;padding:0;list-style:none;display:grid}.admissions-checks li:before{content:"○";margin-right:8px}.admissions-checks li.ok:before{content:"✓";color:#168276;font-weight:900}.admissions-history{gap:8px;padding-left:20px;display:grid}.admissions-history li{background:#f7fcfa;border-left:2px solid #8fc7bc;padding:9px}.admissions-history span{color:#617486;font-size:10px;display:block}@keyframes admissions-shimmer{to{background-position:-200% 0}}@media (max-width:900px){.admissions-status-grid{grid-template-columns:repeat(2,1fr)}.admissions-columns{grid-template-columns:1fr}}@media (max-width:600px){.admissions-tabs a.primary{margin-left:0}.admissions-form,.admissions-inline-form{grid-template-columns:1fr}.admissions-case-list>a{flex-direction:column;align-items:flex-start}.admissions-dimensions{text-align:left!important}.admissions-status-grid{grid-template-columns:1fr 1fr}.admissions-status-grid article:last-child{grid-column:1/-1}}.timetable-scroll{border-top:1px solid var(--border);max-height:720px;overflow:auto}.timetable{background:#fff;grid-template-columns:64px repeat(7,minmax(125px,1fr));align-items:start;min-width:940px;display:grid}.timetable-corner,.timetable-day-header{z-index:6;border-bottom:1px solid var(--border);background:#f7f9fc;height:54px;position:sticky;top:0}.timetable-corner{z-index:8;left:0}.timetable-day-header{text-align:center;text-transform:capitalize;border-left:1px solid var(--border);place-content:center;display:grid}.timetable-day-header span{color:var(--muted);font-size:8px;font-weight:600}.timetable-day-header b{font-size:15px}.timetable-hours{z-index:5;border-right:1px solid var(--border);background:#fff;position:sticky;left:0}.timetable-hours span{color:var(--muted);font-size:8px;font-weight:600;position:absolute;right:9px;transform:translateY(-50%)}.timetable-day{border-right:1px solid var(--border);cursor:crosshair;background:#fafbfe;position:relative;overflow:hidden}.timetable-day:last-child{border-right:0}.hour-line{z-index:1;background:#dfe5ee;height:1px;left:0;right:0}.hour-line,.working-period{pointer-events:none;position:absolute}.working-period{z-index:0;background:#e7f7f1;border-radius:6px;left:3px;right:3px;box-shadow:inset 3px 0 #61b9a6}.working-period span{color:#4d887d;font-size:7px;font-weight:600;position:absolute;top:4px;right:5px}.timetable-event{z-index:3;border:1px solid #9bd3c8;border-left:3px solid var(--teal);background:#fff;border-radius:7px;min-height:24px;padding:5px 6px;position:absolute;left:4px;right:4px;overflow:hidden;box-shadow:0 4px 12px #00173712}.timetable-event.online{border-color:#c4b6ef;border-left-color:var(--violet);background:#faf8ff}.timetable-event.movable{cursor:grab}.timetable-event.movable:active{cursor:grabbing}.timetable-event.locked{opacity:.78;cursor:default}.timetable-event strong{font-size:8px;display:block}.timetable-event p{text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:8px;overflow:hidden}.timetable-settings{margin-bottom:14px;padding:0}.timetable-settings>summary{cursor:pointer;padding:14px 18px;font-size:11px;font-weight:600}.timetable-settings>div{border-top:1px solid var(--border);background:#fbfcff;grid-template-columns:.7fr 1.3fr;gap:14px;padding:16px;display:grid}.timetable-settings form{grid-template-columns:1fr 1fr;align-content:start;gap:9px;display:grid}.timetable-settings .working-hours-list,.timetable-settings h3,.timetable-settings p{grid-column:1/-1}.timetable-settings h3{margin:0;font-size:13px}.timetable-settings p{color:var(--muted);margin:0;font-size:8px}.timetable-settings label>span{margin-bottom:5px;font-size:8px;font-weight:600;display:block}.timetable-settings input,.timetable-settings select{border:1px solid var(--border);width:100%;height:36px;font:inherit;background:#fff;border-radius:8px;padding:0 8px;font-size:9px}.timetable-settings button{color:#fff;background:var(--navy);border:0;border-radius:8px;grid-column:1/-1;min-height:36px;font-size:9px;font-weight:600}.working-hours-list{gap:5px;display:grid}.working-hours-list>div{grid-template-columns:54px 1fr 1fr;gap:6px;display:grid}.working-hours-list label{align-items:center;gap:5px;display:flex}.working-hours-list label input{width:15px;height:15px}.working-hours-list label span{margin:0}@media (max-width:1000px){.timetable-scroll{max-height:640px}.calendar-layout,.timetable-settings>div{grid-template-columns:1fr}.calendar-side{grid-template-columns:1fr 1fr}}@media (max-width:760px){.timetable{grid-template-columns:58px repeat(7,minmax(108px,1fr));min-width:820px}.timetable-scroll{max-height:580px}.calendar-side{grid-template-columns:1fr}}.quarter-line{z-index:1;pointer-events:none;background:#e9edf3;height:1px;position:absolute;left:0;right:0}.timetable-navigation{align-items:center;gap:5px;margin-left:auto;display:flex}.timetable-navigation button{border:1px solid var(--border);min-width:34px;height:32px;color:var(--body);font:inherit;cursor:pointer;background:#fff;border-radius:8px;padding:0 9px;font-size:9px;font-weight:600}.timetable-navigation button:first-child,.timetable-navigation button:last-child{font-size:18px}.timetable-drop-preview{z-index:4;border:2px dashed var(--blue);pointer-events:none;background:#dce9ff99;border-radius:7px;position:absolute;left:3px;right:3px}.timetable-drop-preview strong{color:#174f9e;padding:4px;font-size:8px;display:block}.timetable-event.touch-dragging{opacity:.28}.timetable-event.movable{touch-action:none}@media (max-width:760px){.schedule-week-board>header{flex-wrap:wrap}.timetable-navigation{order:3;justify-content:flex-end;width:100%}}.visible-weekdays{border:1px solid var(--border);border-radius:8px;grid-column:1/-1;gap:5px;margin:2px 0 0;padding:9px;display:flex}.visible-weekdays legend{color:var(--body);padding:0 4px;font-size:8px;font-weight:600}.visible-weekdays label{position:relative}.visible-weekdays label input{opacity:0;position:absolute}.visible-weekdays label span{border:1px solid var(--border);background:#fff;border-radius:7px;place-items:center;width:29px;height:29px;margin:0;display:grid}.visible-weekdays label input:checked+span{color:#fff;border-color:var(--blue);background:var(--blue)}.calendar-filters{grid-template-columns:minmax(150px,1.2fr) repeat(5,minmax(105px,1fr)) auto;gap:9px;margin-bottom:14px;padding:14px;display:grid}.calendar-filters>div strong{margin-top:4px;font-size:11px;display:block}.calendar-filters label>span{color:var(--body);margin-bottom:5px;font-size:8px;font-weight:600;display:block}.calendar-filters select{width:100%;font:inherit;padding:0 8px;font-size:9px}.calendar-filters select,.calendar-filters>button{border:1px solid var(--border);height:36px;background:#fff;border-radius:8px}.calendar-filters>button{color:var(--muted);padding:0 11px;font-size:8px;font-weight:600}@media (max-width:1100px){.calendar-filters{grid-template-columns:repeat(3,1fr)}.calendar-filters>div{grid-column:1/-1}}@media (max-width:760px){.calendar-filters{grid-template-columns:1fr 1fr}.calendar-filters>button{grid-column:1/-1}}@media (max-width:640px){body:has(.app-shell){padding-bottom:70px}.workspace{padding:80px 15px 24px}.mobile-app-bar{height:60px;padding:0 14px}.mobile-bottom-nav{z-index:44;min-height:66px;padding:6px 6px max(6px,env(safe-area-inset-bottom));border-top:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff7;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;inset:auto 0 0;box-shadow:0 -8px 24px #0017370d}.mobile-bottom-nav a,.mobile-bottom-nav button{min-width:0;color:var(--muted);background:0 0;border:0;border-radius:9px;align-content:center;place-items:center;gap:2px;text-decoration:none;display:grid}.mobile-bottom-nav a.active{color:var(--blue);background:#eef4ff}.mobile-bottom-nav span{font-size:18px;line-height:1}.mobile-bottom-nav small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:8px;font-weight:600;overflow:hidden}.topbar{flex-direction:column;align-items:flex-start;margin-bottom:20px}.topbar h1{font-size:26px}.header-actions{align-self:flex-end;margin-top:-54px}.header-actions .role-switcher{display:block}.attention-grid{grid-template-columns:1fr}.attention-card{min-height:116px}.panel-heading{flex-direction:column;align-items:stretch}.form-pair{grid-template-columns:1fr}.work-row{grid-template-columns:10px minmax(0,1fr) auto;padding:12px 14px}.work-row>a{grid-column:2}.work-detail-summary{grid-template-columns:1fr}.pending-removal-request,.project-member-row{flex-direction:column;align-items:stretch}.request-removal-form{grid-template-columns:1fr}.pending-removal-request form{grid-template-columns:1fr 1fr;display:grid}.class-card{grid-template-columns:52px 1fr 18px;gap:10px;padding:13px}.class-card>b{grid-column:2;justify-self:start}.class-card i{grid-area:1/3/3}.attendance-row{padding:14px 12px}.class-controls,.student-comment{margin-left:0}.attendance-options,.attendance-row>input{width:100%;margin-left:0}.attendance-options button,.book-options button,.observation-options button,.student-comment button{min-height:44px}}.student-book-components{background:#fafcff;border:1px solid #e4e9f1;border-radius:10px;gap:5px;padding:9px 10px;display:grid}.student-book-components>small{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:8px;font-weight:600}.book-component-row{border-top:1px solid var(--border);grid-template-columns:minmax(170px,1fr) auto;align-items:center;gap:12px;min-height:40px;padding-top:5px;display:grid}.book-component-row>strong{font-size:10px;line-height:1.35}.book-component-row .book-options{justify-content:flex-end}.book-component-row .book-ready{justify-self:end}@media (max-width:640px){.book-component-row{grid-template-columns:1fr}.book-component-row .book-options{justify-content:flex-start}.book-component-row .book-ready{justify-self:start}}.operations-workspace{background:radial-gradient(circle at 78% 2%,#00a88f10,#0000 25%),#fff}.operations-grid,.operations-main{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.operations-form h2{margin:0 0 16px}.improvements-panel form,.operations-form form{gap:11px;display:grid}.improvements-panel input,.improvements-panel select,.improvements-panel textarea,.operations-form input,.operations-form select,.operations-form textarea,.request-card select{width:100%;min-height:41px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cfd8e5;border-radius:9px;padding:0 11px;font-size:11px}.improvements-panel textarea,.operations-form textarea{resize:vertical;min-height:70px;padding-top:10px}.improvements-panel form>button,.operations-form button,.request-card form button{color:#fff;background:var(--navy);border:0;border-radius:9px;min-height:41px;font-weight:600}.inventory-panel,.requests-panel{padding:0;overflow:hidden}.inventory-panel .panel-heading,.requests-panel .panel-heading{padding:20px 21px 6px}.inventory-list>div{border-top:1px solid var(--border);grid-template-columns:10px 1fr auto;align-items:center;gap:12px;min-height:63px;padding:9px 21px;display:grid}.stock-dot{background:var(--teal);border-radius:50%;width:9px;height:9px}.stock-dot.low{background:var(--orange);box-shadow:0 0 0 5px #fff0e7}.inventory-list small,.inventory-list strong,.request-card small,.request-card strong{display:block}.inventory-list small,.request-card small{color:var(--muted);margin-top:3px;font-size:9px}.inventory-list form{gap:5px;display:flex}.inventory-list form button{border:1px solid var(--border);width:32px;height:32px;color:var(--navy);background:#fff;border-radius:8px;font-weight:600}.request-card{border-top:1px solid var(--border);grid-template-columns:38px 1fr minmax(230px,.7fr);align-items:center;gap:12px;min-height:82px;padding:12px 21px;display:grid}.request-kind{width:37px;height:37px;color:var(--orange);background:#fff0e7;border-radius:10px;place-items:center;font-weight:700;display:grid}.request-kind.broken{color:var(--coral);background:#fdecec}.request-card form{grid-template-columns:1fr auto;gap:6px;display:grid}.request-card form button{min-height:38px;padding:0 12px}.operations-empty{color:var(--muted);text-align:center;padding:35px 21px}.improvements-panel{margin-bottom:16px}.improvements-layout{grid-template-columns:minmax(280px,.75fr) 1.25fr;gap:24px;display:grid}.improvement-list{align-content:start;gap:8px;display:grid}.improvement-list article{border:1px solid var(--border);background:#faf8ff;border-radius:10px;gap:3px;padding:13px 15px;display:grid}.improvement-list article>span{color:var(--violet);text-transform:uppercase;font-size:8px;font-weight:600}.improvement-list small{color:var(--muted);font-size:9px}.module-tabs{scroll-snap-type:x proximity;scrollbar-width:none;gap:7px;margin:18px 0;display:flex;overflow-x:auto}.module-tabs::-webkit-scrollbar{display:none}.module-tabs a{scroll-snap-align:start;border:1px solid var(--border);color:var(--body);background:#fff;border-radius:10px;flex:none;padding:9px 13px;font-size:11px;font-weight:650;text-decoration:none}.module-tabs a.active{border-color:var(--teal);color:var(--navy);background:#ecfaf7}.module-heading{justify-content:space-between;align-items:end;gap:16px;margin:20px 0 10px;display:flex}.module-heading h2{margin:3px 0 0}.module-primary{color:#fff;background:var(--navy);white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;min-height:39px;padding:0 14px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.module-drawer{border-color:#b7d9d1;max-width:720px;margin:0 0 16px auto;position:relative;box-shadow:0 16px 40px #17324d17}.drawer-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.drawer-heading h2{margin:0}.drawer-heading>a{border:1px solid var(--border);width:34px;height:34px;color:var(--body);background:#fff;border-radius:9px;place-items:center;font-size:20px;text-decoration:none;display:grid}.books-content-grid.single{grid-template-columns:1fr}.books-review-empty{text-align:center;justify-items:center;gap:8px;padding:40px;display:grid}.books-review-empty h2,.books-review-empty p{margin:0}.books-review-empty>strong{color:var(--orange);font-size:34px}.notes-content-first,.notices-content-first{grid-template-columns:1fr}.notice-actions{margin-top:14px}.email-sync-banner{color:var(--body);background:#f2faf8;border:1px solid #c8ded8;border-radius:10px;align-items:center;gap:9px;margin:14px 0;padding:10px 13px;font-size:11px;line-height:1.4;display:flex}.email-sync-banner>span:first-child{color:var(--teal);font-size:16px}.email-channel-picker,.email-reader-actions{display:none}.google-sync-choice.unavailable{background:#f7f9f8;border-color:#d9e0df}.google-sync-choice.unavailable b{color:var(--muted)}@media (max-width:1050px){.improvements-layout,.operations-grid,.operations-main{grid-template-columns:1fr}}@media (max-width:650px){.request-card{grid-template-columns:38px 1fr}.request-card form{grid-column:2}.improvements-panel .form-pair,.operations-form .form-pair,.request-card form{grid-template-columns:1fr}}.sidebar>nav{align-content:start}.nav-section{gap:3px;display:grid}.nav-section-toggle{color:#cfdbec;text-align:left;background:0 0;border:0;border-radius:10px;grid-template-columns:25px 1fr 18px;align-items:center;gap:12px;width:100%;min-height:42px;padding:0 13px;font-weight:600;display:grid}.nav-section-toggle:hover,.nav-section.contains-active>.nav-section-toggle{color:#fff;background:#ffffff0a}.nav-section-icon{color:#9db4d3;place-items:center;width:25px;height:25px;display:grid}.nav-chevron{text-align:center;color:#8fa7c7;font-size:12px}.nav-children{border-left:1px solid #ffffff1a;gap:2px;margin:0 0 3px 17px;padding-left:10px;display:grid}.nav-item.nav-child{min-height:40px;padding:0 9px;font-size:12px}.nav-child .nav-icon{color:#a9bdd7;border:0;width:22px;height:22px;font-size:12px}.nav-item.future{cursor:not-allowed;opacity:.58}.nav-future{color:#aebed4;text-transform:uppercase;letter-spacing:.04em;background:#ffffff0d;border-radius:10px;margin-left:auto;padding:3px 6px;font-size:7px;font-weight:600}.nav-divider{background:#ffffff14;height:1px;margin:6px 11px}.staff-create-panel{margin-bottom:16px;padding:0;overflow:hidden}.staff-create-panel>summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:74px;padding:16px 20px;list-style:none;display:flex}.staff-create-panel>summary::-webkit-details-marker,.staff-edit>summary::-webkit-details-marker{display:none}.staff-create-panel>summary>span{grid-template-columns:38px 1fr;column-gap:12px;display:grid}.staff-create-panel>summary b{color:#fff;background:var(--blue);border-radius:11px;grid-row:1/3;place-items:center;width:38px;height:38px;font-size:20px;display:grid}.staff-create-panel>summary small,.staff-create-panel>summary strong{display:block}.staff-create-panel>summary small{color:var(--muted);margin-top:3px;font-size:10px}.staff-create-panel>summary i{color:var(--blue);font-style:normal}.staff-management-form{border-top:1px solid var(--border);background:#fbfcff;gap:13px;padding:20px;display:grid}.staff-management-form label>span,.staff-management-form label>span>b{display:block}.staff-management-form label>span:first-child,.staff-management-form legend{color:var(--body);margin-bottom:6px;font-size:10px;font-weight:600}.staff-management-form input,.staff-management-form textarea{width:100%;min-height:41px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cfd8e5;border-radius:9px;padding:0 11px;font-size:11px}.staff-management-form textarea{resize:vertical;min-height:70px;padding-top:10px}.staff-management-form fieldset{border:0;grid-template-columns:repeat(3,1fr);gap:9px;margin:0;padding:0;display:grid}.staff-management-form legend{grid-column:1/-1}.staff-area-option{border:1px solid var(--border);background:#fff;border-radius:10px;grid-template-columns:20px 1fr;align-items:start;gap:8px;padding:11px;display:grid!important}.staff-area-option>input{width:17px;height:17px;min-height:0;margin-top:2px}.staff-area-option>span>b{margin-bottom:7px;font-size:11px}.staff-management-form>button{color:#fff;background:var(--navy);border:0;border-radius:9px;min-height:43px;font-weight:600}.staff-contact{color:var(--muted);margin-top:4px;font-size:9px;display:block}.staff-card.inactive{opacity:.68}.staff-edit{border-top:1px solid var(--border);margin-top:14px}.staff-edit>summary{color:var(--blue);cursor:pointer;justify-content:space-between;padding:13px 0 0;font-size:10px;font-weight:600;display:flex}.staff-edit .staff-management-form{border:1px solid var(--border);border-radius:10px;margin-top:12px;padding:14px}.compact-form fieldset{grid-template-columns:1fr}.staff-status-form{padding-top:8px}.staff-status-form button{color:#9e3f28;background:0 0;border:0;font-size:9px;font-weight:600}.staff-status-form button:hover{text-decoration:underline}@media (max-width:850px){.staff-management-form fieldset{grid-template-columns:1fr}}@media (max-width:640px){.staff-create-panel>summary,.staff-management-form{padding:14px}.staff-area-option{grid-template-columns:22px 1fr}}.staff-access{border-top:1px solid var(--border);margin-top:10px}.staff-access>summary{color:#5d42bd;cursor:pointer;justify-content:space-between;padding:13px 0 0;font-size:10px;font-weight:600;list-style:none;display:flex}.staff-access>summary::-webkit-details-marker{display:none}.staff-access-intro{background:#f7f5ff;border-radius:10px;margin-top:13px;padding:13px}.staff-access-intro strong{font-size:11px}.access-warning,.staff-access-intro p{color:var(--muted);margin:5px 0 0;font-size:10px;line-height:1.55}.access-role-form{gap:11px;margin-top:10px;display:grid}.access-role-form fieldset{border:0;gap:7px;margin:0;padding:0;display:grid}.access-role-form legend{color:var(--body);margin-bottom:2px;font-size:9px;font-weight:600}.access-role-option{border:1px solid var(--border);background:#fff;border-radius:10px;grid-template-columns:18px 1fr;align-items:start;gap:8px;padding:10px;display:grid}.access-role-option>input{width:16px;height:16px;margin-top:2px}.access-role-option b,.access-role-option small{display:block}.access-role-option b{font-size:11px}.access-role-option small{color:var(--muted);margin-top:3px;font-size:8px;line-height:1.45}.access-role-form>button{color:#fff;background:#6748d7;border:0;border-radius:9px;min-height:39px;font-size:10px;font-weight:600}.access-warning{color:#905224;background:#fff4e9;border-radius:9px;padding:11px}.activation-ready{background:#effbf8;border:1px solid #bce6dc;border-radius:10px;grid-template-columns:28px 1fr;gap:9px;margin-top:11px;padding:11px;display:grid}.activation-ready>span{color:#fff;background:#0aad8d;border-radius:50%;place-items:center;width:28px;height:28px;font-weight:600;display:grid}.activation-ready strong{font-size:10px}.activation-ready p{color:var(--muted);margin:3px 0;font-size:9px;line-height:1.45}.activation-ready a{color:var(--blue);font-size:9px;font-weight:600}.staff-access-status{margin-top:8px}.staff-access-status button{color:#9e3f28;background:0 0;border:0;font-size:9px;font-weight:600}.staff-access-status button:hover{text-decoration:underline}.staff-access-action-row{align-items:center;gap:9px;margin-top:11px;display:flex}.staff-access-action-row>button,.staff-password-resend-form button{border-radius:9px;min-height:39px;padding:0 15px;font-size:10px;font-weight:600}.staff-access-action-row>button{color:#fff;background:#6748d7;border:0;flex:1}.staff-password-resend-form{margin:0}.staff-password-resend-form button{color:var(--navy);white-space:nowrap;background:#fff;border:1px solid #cfd8e5}.staff-password-resend-form button:hover{background:#f7f9fc;border-color:#9baac0}@media (max-width:640px){.staff-access-action-row{flex-direction:column;align-items:stretch}.staff-access-action-row>button,.staff-password-resend-form,.staff-password-resend-form button{width:100%}}.saved-access-summary{gap:7px;margin-bottom:16px;display:grid}.saved-access-summary>div{flex-wrap:wrap;gap:6px;display:flex}.saved-access-summary>div>span{color:#5538ba;background:#f0ecff;border-radius:20px;padding:6px 9px;font-size:9px;font-weight:600}.role-settings-workspace{background:radial-gradient(circle at 80% 0,#6748d70c,#0000 26%),#fff}.role-explainer{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px;display:grid}.role-explainer article{grid-template-columns:34px 1fr;align-items:center;gap:11px;padding:16px;display:grid}.role-explainer article>span{color:#fff;background:#6748d7;border-radius:11px;place-items:center;width:34px;height:34px;font-weight:600;display:grid}.role-explainer strong{font-size:11px}.role-explainer p{color:var(--muted);margin:3px 0 0;font-size:9px}.role-create-panel{margin-bottom:16px;padding:0;overflow:hidden}.role-create-panel>summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:72px;padding:15px 20px;list-style:none;display:flex}.role-config-card details>summary::-webkit-details-marker,.role-create-panel>summary::-webkit-details-marker{display:none}.role-create-panel>summary>span{grid-template-columns:38px 1fr;column-gap:11px;display:grid}.role-create-panel>summary b{color:#fff;background:var(--blue);border-radius:11px;grid-row:1/3;place-items:center;width:38px;height:38px;font-size:20px;display:grid}.role-create-panel>summary small,.role-create-panel>summary strong{display:block}.role-create-panel>summary small{color:var(--muted);margin-top:3px;font-size:9px}.role-create-panel>summary i{font-style:normal}.role-card-list{gap:13px;display:grid}.role-config-card{padding:18px}.role-config-card.inactive{opacity:.68}.role-config-card>header{justify-content:space-between;gap:18px;display:flex}.role-config-card h2{margin:5px 0 0;font-size:18px}.role-config-card header p{color:var(--muted);margin:5px 0 0;font-size:10px}.role-card-meta{justify-items:end;gap:4px;min-width:140px;display:grid}.role-card-meta span{border-radius:20px;padding:5px 8px;font-size:8px;font-weight:600}.role-card-meta span.active{color:#087c6a;background:#e1f7f2}.role-card-meta span.inactive{color:#7a6472;background:#eee9ed}.role-card-meta small{color:var(--muted);font-size:8px}.role-config-card details{border-top:1px solid var(--border);margin-top:12px}.role-config-card details>summary{color:var(--blue);cursor:pointer;justify-content:space-between;padding-top:12px;font-size:10px;font-weight:600;display:flex}.role-config-form{border:1px solid var(--border);background:#fbfcff;border-radius:11px;gap:14px;margin-top:12px;padding:16px;display:grid}.role-config-form label>span,.role-config-form legend{color:var(--body);margin-bottom:6px;font-size:9px;font-weight:600;display:block}.role-config-form input,.role-config-form select{width:100%;min-height:41px;font:inherit;background:#fff;border:1px solid #cfd8e5;border-radius:9px;padding:0 10px;font-size:10px}.role-config-form label>small{color:var(--muted);margin-top:5px;font-size:8px;line-height:1.4;display:block}.role-config-form fieldset{border:0;margin:0;padding:0}.permission-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:430px;padding-right:4px;display:grid;overflow:auto}.permission-choice-grid>label{border:1px solid var(--border);background:#fff;border-radius:9px;grid-template-columns:17px 1fr;gap:8px;padding:9px;display:grid}.permission-choice-grid input{width:15px;height:15px;min-height:0}.permission-choice-grid b,.permission-choice-grid small{display:block}.permission-choice-grid b{font-size:9px}.permission-choice-grid small{color:var(--muted);margin-top:2px;font-size:7px;line-height:1.35}.role-config-form>button{color:#fff;background:var(--navy);border:0;border-radius:9px;min-height:42px;font-weight:600}.role-status-form{padding-top:8px}.role-status-form button{color:#9e3f28;background:0 0;border:0;font-size:9px;font-weight:600}@media (max-width:760px){.permission-choice-grid,.role-explainer{grid-template-columns:1fr}.role-config-card>header{flex-direction:column;align-items:flex-start}.role-card-meta{justify-items:start}.role-create-panel>summary{padding:14px}.role-config-form{padding:12px}}.calendar-message{border-radius:10px;margin:-4px 0 16px;padding:11px 14px;font-size:11px;font-weight:600}.calendar-message.success{color:#087260;background:#e1f7f2}.calendar-message.error{color:#a52626;background:#fdecec}.schedule-create-panel{margin-bottom:18px;padding:0;overflow:hidden}.schedule-create-panel>summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:74px;padding:16px 20px;list-style:none;display:flex}.participant-outcome>summary::-webkit-details-marker,.schedule-create-panel>summary::-webkit-details-marker{display:none}.schedule-admin-actions summary::-webkit-details-marker{display:none}.schedule-create-panel>summary>span{align-items:center;gap:12px;display:flex}.schedule-create-panel>summary>span>b{color:#fff;background:var(--blue);border-radius:11px;place-items:center;width:39px;height:39px;font-size:20px;display:grid}.schedule-create-panel small,.schedule-create-panel strong{display:block}.schedule-create-panel small{color:var(--muted);margin-top:3px;font-size:9px}.schedule-create-panel i{font-style:normal}.schedule-form{border-top:1px solid var(--border);background:#fbfcff;gap:14px;padding:20px;display:grid}.participant-outcome label>span,.schedule-form label>span,.schedule-form legend{color:var(--body);margin-bottom:6px;font-size:9px;font-weight:600;display:block}.participant-outcome input,.participant-outcome textarea,.schedule-admin-actions input,.schedule-form input,.schedule-form select,.schedule-form textarea{width:100%;min-height:41px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cfd8e5;border-radius:9px;padding:0 10px;font-size:10px}.participant-outcome textarea,.schedule-form textarea{resize:vertical;min-height:68px;padding-top:10px}.schedule-location-row,.schedule-type-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.google-sync-choice,.schedule-location-row>label,.schedule-type-row>label{border:1px solid var(--border);background:#fff;border-radius:10px;grid-template-columns:20px 1fr;align-items:start;gap:9px;padding:12px;display:grid!important}.google-sync-choice input,.schedule-location-row input,.schedule-type-row input{width:17px;height:17px;min-height:0}.google-sync-choice b,.google-sync-choice small,.schedule-type-row b,.schedule-type-row small{display:block}.google-sync-choice small,.schedule-type-row small{color:var(--muted);margin-top:3px;font-size:8px;line-height:1.4}.schedule-date-grid{grid-template-columns:1fr 1fr .7fr 1fr;gap:10px;display:grid}.recurrence-box{border:1px solid var(--border);border-radius:10px;grid-template-columns:1fr 180px;align-items:end;gap:12px;margin:0;padding:13px;display:grid}.recurrence-box legend{padding:0 5px}.recurrence-box>div{gap:5px;display:flex}.recurrence-box label{position:relative}.recurrence-box label input{opacity:0;position:absolute}.recurrence-box label span{border:1px solid var(--border);background:#fff;border-radius:8px;place-items:center;width:34px;height:34px;margin:0;display:grid}.recurrence-box label input:checked+span{color:#fff;border-color:var(--violet);background:var(--violet)}.schedule-form>button{color:#fff;background:var(--navy);border:0;border-radius:10px;min-height:44px;font-weight:600}.calendar-layout{grid-template-columns:minmax(0,1.7fr) minmax(260px,.55fr);gap:17px;display:grid}.calendar-agenda{align-content:start;gap:18px;display:grid}.calendar-day>header{color:var(--body);text-transform:capitalize;justify-content:space-between;align-items:center;margin-bottom:8px;padding:0 4px;display:flex}.calendar-day>header span{font-size:13px;font-weight:600}.calendar-day>header small{font-size:9px}.schedule-card{border:1px solid var(--border);background:#fff;border-radius:14px;grid-template-columns:70px 1fr;gap:12px;margin-bottom:9px;padding:17px;display:grid;box-shadow:0 8px 24px #00173708}.schedule-card.cancelled{opacity:.6}.schedule-time{color:#0b7163;background:#e1f7f2;border-radius:11px;grid-row:1/8;align-self:start;place-items:center;padding:10px 4px;display:grid}.schedule-time.meeting{color:#5c42bb;background:#f0ecff}.schedule-time small,.schedule-time strong{display:block}.schedule-time small{margin-top:3px;font-size:8px}.schedule-main{justify-content:space-between;gap:14px;display:flex}.schedule-main h2{margin:4px 0;font-size:17px}.schedule-main p{color:var(--muted);margin:0;font-size:9px}.schedule-status{border-radius:20px;align-self:start;padding:5px 8px;font-size:8px;font-weight:600}.schedule-status.scheduled{color:#1760cc;background:#eaf1ff}.schedule-status.cancelled{color:#9e3f28;background:#fdecec}.schedule-status.completed{color:#087260;background:#e1f7f2}.schedule-context{background:#f8faff;border-radius:9px;margin-top:4px;padding:10px}.schedule-context p{color:var(--body);margin:3px 0;font-size:9px;line-height:1.5}.join-class-link{color:#fff;background:var(--blue);border-radius:9px;justify-self:start;place-items:center;min-height:35px;margin-top:3px;padding:0 12px;font-size:9px;font-weight:600;text-decoration:none;display:inline-grid}.access-code{color:var(--muted);margin-top:4px}.schedule-participants{gap:6px;margin-top:6px;display:grid}.participant-outcome{border:1px solid var(--border);border-radius:10px;overflow:hidden}.participant-outcome.no_show{border-color:#f5b8b8}.participant-outcome.attended{border-color:#a8dfd5}.participant-outcome>summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:46px;padding:8px 11px;display:flex}.participant-outcome b,.participant-outcome small{display:block}.participant-outcome b{font-size:10px}.participant-outcome small{color:var(--muted);margin-top:2px;font-size:8px}.participant-outcome i{font-style:normal}.participant-outcome form{border-top:1px solid var(--border);background:#fbfcff;gap:8px;padding:11px;display:grid}.outcome-buttons{grid-template-columns:1fr 1fr;gap:7px;display:grid}.outcome-buttons button,.schedule-admin-actions button{color:#087260;background:#effbf8;border:1px solid #a8dfd5;border-radius:8px;min-height:36px;font-size:9px;font-weight:600}.outcome-buttons button.no-show{color:#a52626;background:#fdecec;border-color:#f5b8b8}.check-line{align-items:center;gap:7px;display:flex!important}.check-line input{width:16px;height:16px;min-height:0}.check-line span{margin:0!important}.schedule-admin-actions{gap:12px;margin-top:7px;display:flex}.schedule-admin-actions details{position:relative}.schedule-admin-actions summary{color:var(--blue);cursor:pointer;font-size:9px;font-weight:600}.schedule-admin-actions form{z-index:3;border:1px solid var(--border);background:#fff;border-radius:10px;gap:7px;width:245px;padding:11px;display:grid;position:absolute;top:24px;left:0;box-shadow:0 14px 35px #00173724}.calendar-side{align-content:start;gap:14px;display:grid}.calendar-side h2{margin:8px 0 12px;font-size:18px}.calendar-side ul{color:var(--body);gap:8px;margin:0;padding-left:17px;font-size:10px;line-height:1.4;display:grid}.calendar-sync-note{background:linear-gradient(145deg,#fbfaff,#f3f0ff);grid-template-columns:35px 1fr;gap:10px;display:grid}.calendar-sync-note>span{color:#fff;background:var(--violet);border-radius:10px;place-items:center;width:35px;height:35px;font-weight:700;display:grid}.calendar-sync-note strong{font-size:10px}.calendar-sync-note p{color:var(--muted);margin:5px 0 0;font-size:9px;line-height:1.5}.calendar-empty{text-align:center;padding:50px}.calendar-empty>span{font-size:30px}.calendar-empty h2{margin:10px 0 5px}.calendar-empty p{color:var(--muted);margin:0}.schedule-form .field-help{color:var(--muted);margin-top:5px;font-size:8px;line-height:1.4;display:block}.schedule-card.online{border-left:4px solid var(--violet);background:linear-gradient(105deg,#faf8ff,#fff 34%)}.schedule-card.online .schedule-time{color:#5c42bb;background:#f0ecff}.schedule-card.in-person{border-left:4px solid var(--teal)}.schedule-create-panel>summary>span>b{font-size:0;display:block;position:relative}.schedule-create-panel>summary>span>b:after,.schedule-create-panel>summary>span>b:before{content:"";background:currentColor;border-radius:2px;width:12px;height:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.schedule-create-panel>summary>span>b:after{transform:translate(-50%,-50%)rotate(90deg)}@media (max-width:1050px){.calendar-layout{grid-template-columns:1fr}.calendar-side,.schedule-date-grid{grid-template-columns:1fr 1fr}}@media (max-width:680px){.schedule-form{padding:14px}.calendar-side,.recurrence-box,.schedule-date-grid,.schedule-location-row,.schedule-type-row{grid-template-columns:1fr}.recurrence-box>div{flex-wrap:wrap}.schedule-card{grid-template-columns:52px 1fr;padding:12px}.schedule-main{flex-direction:column;align-items:flex-start}.schedule-admin-actions{flex-wrap:wrap}.schedule-admin-actions form{width:auto;position:fixed;inset:auto 14px 82px}.outcome-buttons,.participant-outcome .form-pair,.schedule-form .form-pair{grid-template-columns:1fr}}.teacher-appointments{margin-top:16px;padding:0;overflow:hidden}.teacher-appointments .panel-heading{padding:20px 21px 8px}.teacher-appointments .panel-heading>a{border:1px solid var(--border);min-height:35px;color:var(--blue);border-radius:9px;place-items:center;padding:0 12px;font-size:9px;font-weight:600;text-decoration:none;display:grid}.teacher-appointments>div:last-child{display:grid}.teacher-appointments article{border-top:1px solid var(--border);grid-template-columns:62px 1fr auto;align-items:center;gap:12px;min-height:62px;padding:10px 21px;display:grid}.teacher-appointments article.online{border-left:4px solid var(--violet);background:#fbf9ff}.teacher-appointments article.in-person{border-left:4px solid var(--teal)}.teacher-appointments time{font-weight:600}.teacher-appointments small,.teacher-appointments strong{display:block}.teacher-appointments small{color:var(--muted);margin-top:3px;font-size:9px}.teacher-appointments article>a{color:#fff;background:var(--blue);border-radius:8px;padding:8px 10px;font-size:9px;font-weight:600;text-decoration:none}.schedule-week-board{margin-bottom:18px;padding:0;overflow:hidden}.schedule-week-board>header{justify-content:space-between;align-items:flex-start;gap:14px;padding:18px 20px;display:flex}.schedule-week-board h2{margin:5px 0;font-size:19px}.schedule-week-board header p{color:var(--muted);margin:0;font-size:9px}.schedule-week-board>header>small{color:#087260;background:#e1f7f2;border-radius:20px;padding:6px 9px;font-size:8px;font-weight:600}.week-board-scroll{overflow-x:auto}.week-board-grid{border-top:1px solid var(--border);grid-template-columns:repeat(7,minmax(125px,1fr));min-width:920px;display:grid}.week-day-column{border-right:1px solid var(--border);background:#fbfcff;min-height:170px}.week-day-column:last-child{border-right:0}.week-day-column>header{color:var(--body);text-transform:capitalize;background:#f6f8fc;justify-content:space-between;align-items:center;padding:10px;display:flex}.week-day-column>header span{font-size:9px;font-weight:600}.week-day-column>header b{font-size:14px}.week-day-column>div{gap:6px;padding:7px;display:grid}.week-day-column article{border:1px solid var(--border);border-left:3px solid var(--teal);background:#fff;border-radius:9px;grid-template-columns:12px 1fr;gap:2px 6px;padding:8px;display:grid;box-shadow:0 4px 12px #00173708}.week-day-column article.online{border-left-color:var(--violet);background:#faf8ff}.week-day-column article.movable{cursor:grab}.week-day-column article.movable:active{cursor:grabbing}.week-day-column article.locked{opacity:.72}.week-day-column article>span{color:var(--muted);grid-row:1/3}.week-day-column article>strong{font-size:10px}.week-day-column article>p{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:8px;font-weight:600;overflow:hidden}.week-day-column details{grid-column:2;margin-top:4px}.week-day-column summary{color:var(--blue);cursor:pointer;font-size:7px;font-weight:600}.week-day-column form{grid-template-columns:1fr auto;gap:4px;margin-top:5px;display:grid}.week-day-column input{border:1px solid var(--border);border-radius:6px;width:100%;min-width:0;height:30px;padding:0 5px;font-size:8px}.week-day-column button{color:#fff;background:var(--blue);border:0;border-radius:6px;font-size:7px;font-weight:600}.schedule-week-board>footer{border-top:1px solid var(--border);color:var(--muted);background:#fafbfe;padding:10px 20px;font-size:8px;line-height:1.45}.calendar-connections-panel{margin:0 0 22px;overflow:hidden}.calendar-connections-panel>summary{cursor:pointer;justify-content:space-between;align-items:center;padding:22px 26px;list-style:none;display:flex}.calendar-connections-panel>summary>span{align-items:center;gap:14px;display:flex}.calendar-connections-panel>summary>span>b{color:#1460e8;background:#eef4ff;border-radius:14px;justify-content:center;align-items:center;width:46px;height:46px;font-size:20px;display:flex}.calendar-connection-list span,.calendar-connections-panel summary span span{flex-direction:column;gap:3px;display:flex}.calendar-connection-list small,.calendar-connections-panel summary small{color:var(--muted);font-weight:500}.calendar-privacy-note{background:#f1fbf8;border:1px solid #cfeee5;border-radius:14px;margin:0 26px 18px;padding:14px 16px}.calendar-privacy-note p{color:var(--muted);margin:5px 0 0}.calendar-connection-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;padding:0 26px 24px;display:grid}.calendar-connection-grid form{gap:12px;display:grid}.calendar-connection-grid label,.manual-busy-form label{gap:6px;display:grid}.calendar-connection-grid input,.calendar-connection-grid select,.manual-busy-form input,.manual-busy-form select{border:1px solid var(--line);border-radius:10px;min-height:42px;padding:0 12px}.calendar-connection-grid .field-help{color:var(--muted);font-size:9px;line-height:1.45}.calendar-people-dropdown{border:1px solid var(--line);background:#fff;border-radius:10px;overflow:hidden}.calendar-people-dropdown>summary{color:var(--body);cursor:pointer;padding:12px;font-size:10px;font-weight:600;list-style:none}.calendar-people-dropdown>summary::-webkit-details-marker{display:none}.calendar-people-dropdown>summary:after{content:"";float:right;border-bottom:1.5px solid;border-right:1.5px solid;width:7px;height:7px;margin:3px 2px 0 10px;transform:rotate(45deg)}.calendar-people-dropdown[open]>summary:after{transform:rotate(180deg)}.calendar-people-dropdown .calendar-people-access{border:0;border-top:1px solid var(--line);border-radius:0;margin:0;padding:12px}.calendar-connection-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.calendar-connection-list li{border:1px solid var(--line);border-radius:12px;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.calendar-connection-list em{color:#9c6500;background:#fff5df;border-radius:999px;padding:5px 9px;font-size:12px;font-style:normal}.calendar-connection-list em.connected{color:#087260;background:#e1f7f2}.calendar-connection-list a{color:#fff;background:var(--blue);border-radius:8px;padding:7px 10px;font-size:9px;font-weight:600;text-decoration:none}.calendar-connection-list .connection-error{color:#a52626}.calendar-connection-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.calendar-connection-actions form{margin:0}.calendar-connection-actions button{color:#fff;background:var(--navy);border:0;border-radius:8px;min-height:34px;padding:0 10px;font-size:9px;font-weight:600}.calendar-connection-actions .calendar-reauthorize{color:var(--body);border:1px solid var(--line);background:#fff}.calendar-connection-actions button.disconnect{color:#a52626;background:#fff;border:1px solid #f2c9c9}.manual-busy-form{border-top:1px solid var(--line);grid-template-columns:1.4fr repeat(4,minmax(120px,.7fr)) auto;align-items:end;gap:12px;padding:20px 26px 26px;display:grid}.manual-busy-form h3,.manual-busy-form p{margin:0}.manual-busy-form p{color:var(--muted);margin-top:4px;font-size:13px}.week-day-column article.unavailable{color:#5f6878;background:#f1f3f6;border-color:#c9ced8}@media (max-width:1100px){.manual-busy-form{grid-template-columns:repeat(2,minmax(0,1fr))}.manual-busy-form>button,.manual-busy-form>div{grid-column:1/-1}}@media (max-width:720px){.calendar-connection-grid,.manual-busy-form{grid-template-columns:1fr}.manual-busy-form>button,.manual-busy-form>div{grid-column:auto}}.appointment-dialog-backdrop{z-index:70;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#14181e61;justify-content:flex-end;display:flex;position:fixed;inset:0}.appointment-dialog{background:#fff;width:min(440px,100%);height:100%;padding:26px;overflow:auto;box-shadow:-12px 0 40px #14181e2e}.appointment-dialog>header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.appointment-dialog>header small{color:#718078;letter-spacing:.12em;font-weight:600}.appointment-dialog>header h2{margin:4px 0 0}.appointment-dialog>header button{cursor:pointer;background:#f0f3f1;border:0;border-radius:50%;width:36px;height:36px;font-size:24px}.appointment-private-note,.appointment-purpose{color:#52605a;background:#f3f5f4;border-radius:14px;padding:16px;line-height:1.5}.appointment-detail-grid{grid-template-columns:1fr 1fr;gap:14px;margin:0 0 18px;display:grid}.appointment-detail-grid div{border:1px solid #e4e9e6;border-radius:12px;padding:12px}.appointment-detail-grid dt{color:#718078;margin-bottom:4px;font-size:12px}.appointment-detail-grid dd{margin:0;font-weight:700}.appointment-join-button{text-align:center;background:#216c55;border-radius:12px;margin:16px 0;padding:12px;font-weight:600;text-decoration:none;display:block;color:#fff!important}.appointment-edit-form{border-top:1px solid #e4e9e6;grid-template-columns:1fr 1fr 90px;gap:10px;padding-top:18px;display:grid}.appointment-edit-form label span{color:#718078;margin-bottom:4px;font-size:12px;display:block}.appointment-cancel-form input,.appointment-edit-form input{box-sizing:border-box;width:100%}.appointment-edit-form button{grid-column:1/-1}.appointment-attendance{border-top:1px solid #e4e9e6;margin-top:22px;padding-top:18px}.appointment-attendance>div{justify-content:space-between;align-items:center;gap:10px;padding:10px 0;display:flex}.appointment-attendance form{gap:6px;display:flex}.appointment-attendance button{padding:7px 9px}.appointment-cancel-form{border-top:1px solid #e4e9e6;gap:8px;margin-top:22px;padding-top:18px;display:flex}.appointment-cancel-form button{background:#8a4747}@media (max-width:700px){.appointment-dialog-backdrop{align-items:flex-end}.appointment-dialog{border-radius:20px 20px 0 0;width:100%;height:min(82vh,720px);padding:20px}.appointment-detail-grid{grid-template-columns:1fr}.appointment-edit-form{grid-template-columns:1fr 1fr}.appointment-edit-form label:last-of-type{grid-column:1/-1}.appointment-attendance>div{flex-direction:column;align-items:flex-start}.appointment-cancel-form{flex-direction:column}}.appointment-edit-form button{border:0;border-radius:10px;font-weight:700;color:#fff!important;background:#16213a!important}.appointment-edit-form button:disabled{opacity:.58}.appointment-form-section{border:1px solid var(--border);background:#fff;border-radius:11px;overflow:hidden}.appointment-form-section>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;min-height:48px;padding:0 14px;font-weight:650;list-style:none;display:flex}.appointment-form-section>summary::-webkit-details-marker{display:none}.appointment-form-section>summary:after{content:"";border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);width:7px;height:7px;margin-left:auto;transition:transform .18s;transform:rotate(45deg)}.appointment-form-section[open]>summary:after{transform:rotate(225deg)}.appointment-form-section>summary small{color:var(--muted);margin:0;font-size:9px;font-weight:500}.appointment-form-section-body{border-top:1px solid var(--border);background:#fbfcff;gap:12px;padding:14px;display:grid}.schedule-date-grid.essentials{grid-template-columns:1.2fr 1fr 1fr}.schedule-form>button{justify-self:end;min-width:190px;padding:0 20px}body{font-family:var(--font-ui)}.calendar-workspace{background:radial-gradient(circle at 82% 0,#7467c72e,#0000 27%),linear-gradient(145deg,#f7f8ff,#e3e5ff)}.calendar-workspace .panel{background:#fff;border-color:#dce2ec;border-radius:18px;box-shadow:0 10px 28px #16213a14}.calendar-workspace .eyebrow,.calendar-workspace .section-kicker{color:#5671d8}.calendar-filters{grid-template-columns:minmax(170px,.8fr) repeat(3,minmax(220px,1fr));align-items:end;padding:18px}.calendar-filters>label{min-width:150px}.calendar-filter-choices legend,.calendar-filters label>span{color:#667085;margin:0 0 7px;font-size:11px;font-weight:600;display:block}.calendar-filter-choices{border:0;min-width:0;margin:0;padding:0}.calendar-filter-choices>div{background:#f7f8fc;border:1px solid #dce2ec;border-radius:12px;gap:5px;padding:4px;display:flex}.calendar-filter-choices button{color:#667085;white-space:normal;background:0 0;border:0;border-radius:9px;flex:1;min-height:36px;padding:6px 10px;font-size:12px;font-weight:600}.calendar-filter-choices button[aria-pressed=true]{background:#24a79a;box-shadow:0 3px 9px #24a79a38}.calendar-filters select{border-color:#dce2ec;border-radius:11px;height:44px;padding:0 12px;font-size:12px}.calendar-filters>button{border-radius:11px;height:44px;font-size:11px}.schedule-week-board>header{padding:22px 24px}.schedule-week-board h2{font-size:22px}.schedule-week-board header p{font-size:12px}.timetable-day-header span,.timetable-event p,.timetable-event strong,.timetable-hours span{font-size:10px}.timetable-event{border-radius:9px}.working-period{background:#24a79a1a;box-shadow:inset 3px 0 #24a79a8c}.timetable-event.online{background:#f8f7ff;border-color:#c9c3eb #c9c3eb #c9c3eb #7467c7}.timetable-event.unavailable{background:repeating-linear-gradient(135deg,#f2f4f8,#f2f4f8 6px,#fafbfc 6px 12px);border-color:#dce2ec #dce2ec #dce2ec #9aa5b5}.appointment-dialog{font-family:var(--font-ui)}.appointment-join-button{background:#5671d8}.appointment-dialog>header button{min-width:44px;min-height:44px}.appointment-edit-form button{background:#16213a;min-height:44px}@media (max-width:1280px){.calendar-filters{grid-template-columns:1fr 1fr}.calendar-filters>div{grid-column:1/-1}}@media (max-width:700px){.calendar-filters{grid-template-columns:1fr}.calendar-filter-choices button{min-height:44px}.calendar-filters>button{grid-column:auto}}.brand{padding:6px 6px 24px}.brand-logo{width:100%;height:auto;max-height:62px;display:block}.nav-icon{border:0;border-radius:0}.nav-icon svg,.nav-section-icon svg{display:block}.nav-icon img,.nav-section-icon img{width:20px;height:20px;display:block}.nav-chevron{place-items:center;transition:transform .18s;display:grid}.nav-chevron.expanded{transform:rotate(180deg)}.ai-orb{background:0 0}.ai-orb img{width:28px;height:28px}.mobile-brand img{object-fit:contain;width:122px;height:34px;display:block}.mobile-bottom-nav img,.mobile-bottom-nav svg{width:20px;height:20px;display:block}.appointment-dialog>header button,.timetable-navigation button{place-items:center;display:grid}.timetable{grid-template-columns:64px repeat(var(--visible-days,7),minmax(144px,1fr))}.timetable-day{background:#f7f8ff}.working-period{box-shadow:none;background:#fff;border-radius:0;left:0;right:0}.quarter-line{background:#edf0f7}.hour-line{background:#dce2ec}.calendar-filter-choices button[aria-pressed=true]{color:#fff;box-shadow:none;background:#16213a}.calendar-filter-choices button:hover:not([aria-pressed=true]){color:#5671d8;background:#5671d81a;border-color:#5671d8}.calendar-filter-choices button:focus-visible,.calendar-filters select:focus-visible,.timetable-navigation button:focus-visible{outline-offset:2px;outline:3px solid #5671d873}.timetable-event{box-shadow:none;border-width:1px 1px 1px 3px;border-radius:8px;padding:6px}.timetable-event.private-lesson{color:#16213a;background:#e9f7f5;border-color:#24a79a}.timetable-event.meeting{color:#16213a;background:#edf0ff;border-color:#5671d8}.timetable-event.online{color:#16213a;background:#f0edff;border-color:#7467c7}.timetable-event.unavailable{color:#667085;background:#f1f3f8;border-color:#aab2c5}.timetable-event:hover{outline-offset:1px;outline:2px solid #5671d8a6}.timetable-event.selected{outline-offset:1px;outline:2px solid}.timetable-event.touch-dragging{opacity:.55;background:#fff;box-shadow:0 10px 22px #16213a2e}.timetable-event p{text-overflow:clip;margin:0;font-size:12px;font-weight:600;line-height:1.2}.timetable-event strong{margin-top:2px;font-size:11px;font-weight:500}.timetable-event small{color:#667085;white-space:nowrap;margin-top:2px;font-size:10px;display:block;overflow:hidden}.timetable-event .event-owner-line{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.event-lock{color:#16213a;display:grid;position:absolute;top:4px;right:4px}.timetable-drop-preview{background:#e9f7f5c7;border:3px solid #24a79a}.current-time-line{z-index:4;pointer-events:none;background:#db6877;height:2px;position:absolute;left:0;right:0}.current-time-line span{background:#db6877;border-radius:50%;width:8px;height:8px;position:absolute;top:-3px;left:-4px}.appointment-dialog{width:min(384px,100%)}.appointment-cancel-area{border-top:1px solid #dce2ec;margin-top:22px;padding-top:18px}.appointment-cancel-area>button{color:#db6877;background:0 0;border:0;padding:0;font-weight:600}.appointment-cancel-form{border:0;margin:0;padding:0;display:grid}.appointment-cancel-form label span{color:#667085;margin-bottom:6px;font-size:12px;display:block}.appointment-cancel-form button{min-height:44px}.appointment-cancel-form button:last-child{color:#db6877;background:#fff;border:1px solid #db6877}@media (max-width:900px){.timetable{grid-template-columns:56px repeat(var(--visible-days,7),minmax(120px,1fr))}.appointment-dialog{width:min(352px,100%)}}@media (max-width:700px){.appointment-dialog{height:min(88vh,760px)}}@media (prefers-reduced-motion:reduce){.nav-chevron,.timetable-event{transition:none}}.brand{justify-items:center;gap:8px;padding:8px 16px 26px;display:grid}.brand-symbol{object-fit:contain;width:118px;height:80px;display:block}.brand-word{color:#fff;letter-spacing:-.7px;font-size:22px;font-weight:600;line-height:1}.mobile-brand img{width:52px;height:40px}.nav-item{color:#ffffffe0;min-height:52px;position:relative}.nav-item .nav-icon{color:#aab7d3}.nav-item .nav-icon img{filter:brightness(0)saturate()invert(78%)sepia(12%)saturate(606%)hue-rotate(184deg)brightness(91%)}.nav-item:hover{color:#fff;background:#1e2c4a}.nav-item.active:before{content:"";background:#22a99a;border-radius:0 3px 3px 0;width:3px;position:absolute;top:9px;bottom:9px;left:0}.nav-item.active .nav-icon img{filter:brightness(0)saturate()invert(60%)sepia(56%)saturate(622%)hue-rotate(123deg)brightness(84%)}.nav-item:focus-visible,.nav-section-toggle:focus-visible{outline-offset:2px;outline:2px solid #536fe5}.nav-item:disabled{opacity:.38}.nav-section-toggle{min-height:52px}.nav-section-icon{color:#aab7d3}.nav-section-icon img{filter:brightness(0)saturate()invert(78%)sepia(12%)saturate(606%)hue-rotate(184deg)brightness(91%)}.utility-button{place-items:center;display:grid;position:relative;color:#16213a!important;width:48px!important;height:48px!important;font-size:medium!important;background:#fff!important;border:1px solid #dce2ec!important;border-radius:12px!important}.utility-button:focus-visible{outline-offset:2px;outline:3px solid #536fe566}.card-icon{width:56px;height:56px}.card-icon svg{display:block}.people-summary article.zero-state{color:#667085}.people-summary article.zero-state .card-icon{color:#5671d8;background:#edf0ff}.notification b{background:#de6878;min-width:20px;height:20px;padding:0 6px}@media (max-width:900px){.brand-word{display:none}.brand-symbol{width:76px;height:54px}.nav-item{min-height:48px}.card-icon{width:48px;height:48px}.utility-button{min-width:44px!important;min-height:44px!important}}.login-brand:after{content:none}.login-logo-lockup{z-index:2;width:210px;position:relative}.login-logo-symbol{width:160px;height:74px;overflow:hidden}.login-logo-symbol img{width:100%;height:auto;display:block;transform:translateY(-38.9px)}.login-logo-wordmark{width:205px;height:37px;margin-top:13px;overflow:hidden}.login-logo-wordmark img{width:100%;height:auto;display:block;transform:translateY(-41.7px)}.login-brand-shadow{opacity:.075;filter:saturate(.35)brightness(1.35);pointer-events:none;width:560px;height:260px;position:absolute;bottom:-70px;right:-120px;overflow:hidden}.login-brand-shadow img{width:100%;height:auto;display:block;transform:translateY(-136.2px)}.login-copy span{color:var(--teal);font-size:13px}.login-forgot{text-align:right;margin-top:-8px}.login-forgot a{color:var(--blue);font-size:13px;font-weight:600;text-decoration:none}.login-forgot a:hover{text-decoration:underline}@media (max-width:800px){.login-logo-lockup{width:175px}.login-logo-symbol{width:132px;height:61px}.login-logo-symbol img{transform:translateY(-32.1px)}.login-logo-wordmark{width:170px;height:31px;margin-top:10px}.login-logo-wordmark img{transform:translateY(-34.6px)}.login-brand-shadow{width:390px;height:181px;bottom:-55px;right:-90px}.login-brand-shadow img{transform:translateY(-94.8px)}}.sidebar{z-index:20;min-width:0;position:relative;overflow:visible}.sidebar>nav{min-width:0;min-height:0;overflow:hidden auto}.sidebar .nav-item,.sidebar .nav-section{min-width:0}.sidebar .nav-label{text-overflow:ellipsis;overflow:hidden}.sidebar-secondary{border-top:1px solid #ffffff1a;gap:4px;margin-top:auto;padding-top:14px;display:grid}.sidebar-secondary .nav-item{min-height:44px}.ai-entry{background:#192b4a;min-height:72px;margin-top:8px}.ai-orb img{object-fit:contain;width:32px;height:24px}.ai-orb.large img{width:46px;height:34px}.role-switcher.compact{margin-top:8px}.attention-card{grid-template-columns:56px minmax(0,1fr);align-content:start;gap:10px 18px;min-height:150px;padding:24px}.attention-card>div{min-width:0;padding-top:2px}.attention-card p{margin:0 0 9px;line-height:1.3}.attention-card strong{line-height:1.05}.attention-card small{margin-top:9px;line-height:1.45}.attention-card button{margin-top:2px}.teacher-summary .attention-card{min-height:140px}.role-menu{width:292px;padding:12px}.role-menu-heading{padding:8px 8px 12px}.role-menu>p{margin:11px 8px 6px}.role-menu>a{padding:9px 8px}.role-menu .language-options{gap:6px;border-top:0!important;margin:0!important;padding:0 8px 10px!important;display:flex!important}.role-menu .language-options input{display:none}.role-menu .language-options button{color:#667085!important;text-align:center!important;background:#fff!important;border:1px solid #dce2ec!important;border-radius:9px!important;width:auto!important;min-width:48px!important;min-height:34px!important;padding:6px 12px!important;font-size:12px!important}.role-menu .language-options button.selected{color:#fff!important;background:#16213a!important;border-color:#16213a!important}.role-menu>form:last-child{margin:0 8px;padding:10px 0 2px}.role-menu>form:last-child button{color:#667085;border-radius:8px;width:auto;padding:8px 10px;font-size:12px;font-weight:700}.role-menu>form:last-child button:hover{color:#a52626;background:#fff3f3}.calendar-workspace{flex-direction:column;display:flex}.calendar-workspace>.topbar{order:0}.calendar-workspace>.calendar-message{order:1}.calendar-workspace>.schedule-create-panel{order:10}.calendar-workspace>.schedule-week-board{order:20;margin-bottom:18px}.calendar-workspace>.calendar-layout{order:30}.calendar-workspace>.calendar-filters-panel{order:40;margin-top:18px}.calendar-workspace>.calendar-connections-panel{order:50}.calendar-workspace>.timetable-settings{order:60}.calendar-filters-panel{padding:0;overflow:hidden}.calendar-filters-panel>summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:62px;padding:14px 20px;list-style:none;display:flex}.calendar-filters-panel>summary::-webkit-details-marker{display:none}.calendar-filters-panel>summary small,.calendar-filters-panel>summary strong{display:block}.calendar-filters-panel>summary small{color:#667085;margin-top:4px;font-size:10px}.calendar-filters-panel>summary>span:last-child{place-items:center;transition:transform .18s;display:grid}.calendar-filters-panel[open]>summary>span:last-child{transform:rotate(180deg)}.calendar-filters-panel .calendar-filters{box-shadow:none;border:0;border-top:1px solid #dce2ec;border-radius:0;margin:0}.calendar-connections-panel>summary>i,.participant-outcome>summary>i,.schedule-create-panel>summary>i{font-size:0}.calendar-connections-panel>summary>i:after,.participant-outcome>summary>i:after,.schedule-create-panel>summary>i:after{content:"";border-bottom:2px solid;border-right:2px solid;width:7px;height:7px;transition:transform .18s;display:block;transform:rotate(45deg)}.calendar-connections-panel[open]>summary>i:after,.schedule-create-panel[open]>summary>i:after{transform:rotate(225deg)}.schedule-card{grid-template-columns:1fr;gap:10px;padding:18px 20px}.schedule-time{background:#effaf8;border:1px solid #bfe8e1;border-radius:9px;grid-row:auto;justify-content:flex-start;align-items:baseline;gap:7px;width:max-content;padding:7px 10px;display:flex}.schedule-time.meeting{background:#f5f2ff;border-color:#d8d1f3}.schedule-time strong{font-size:13px}.schedule-time small{color:inherit;margin:0;font-size:10px}.schedule-time small:before{content:"";background:currentColor;width:8px;height:1px;margin:0 7px 3px 0;display:inline-block}.schedule-main h2{font-size:18px}.schedule-card .section-kicker{font-size:9px}@media (max-width:1250px) and (min-width:901px){.teacher-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.teacher-summary .attention-card{grid-template-columns:48px minmax(0,1fr);gap:14px;padding:20px}.teacher-summary .card-icon{width:48px;height:48px}}@media (max-width:1100px){.app-shell{grid-template-columns:minmax(190px,205px) minmax(0,1fr)}.sidebar{padding-left:14px;padding-right:14px}.nav-item,.nav-section-toggle{padding-left:10px;padding-right:10px}.attention-card{padding:20px}}@media (max-width:900px){.sidebar-secondary{border-top:0;padding-top:0}.calendar-workspace>.calendar-layout{order:30}.calendar-filters{grid-template-columns:1fr 1fr}.teacher-summary{grid-template-columns:1fr}}@media (max-width:700px){.calendar-filters{grid-template-columns:1fr}.calendar-filters-panel>summary{min-height:58px;padding:12px 16px}.schedule-card{padding:15px}.sidebar-secondary{margin-top:0}}.calendar-workspace>.calendar-connections-panel{margin-top:18px}.attention-card>a{color:var(--blue);grid-column:2;justify-self:start;font-size:12px;font-weight:600;text-decoration:none}.attention-card>a:hover{text-decoration:underline}.panel-heading>a{border:1px solid var(--border);min-height:36px;color:var(--body);background:#fff;border-radius:9px;place-items:center;padding:0 14px;font-size:12px;font-weight:600;text-decoration:none;display:inline-grid}.dashboard-empty{min-height:150px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:10px;display:grid}.dashboard-empty p{max-width:320px;margin:0;font-size:12px;line-height:1.5}.dashboard-link-row{color:var(--ink);grid-template-columns:60px 10px 1fr;text-decoration:none}.dashboard-link-row:hover{background:#f8faff}.dashboard-task-link{color:var(--ink);text-decoration:none}.dashboard-task-link>span:nth-child(2) small,.dashboard-task-link>span:nth-child(2) strong{display:block}.dashboard-task-link>span:nth-child(2) small{color:var(--muted);margin-top:4px;font-size:10px}.dashboard-task-link:hover{background:#f8faff}.ai-actions a{color:#fff;background:var(--navy);border-radius:10px;place-items:center;min-height:40px;padding:0 15px;font-size:12px;font-weight:600;text-decoration:none;display:inline-grid}.teacher-empty svg{color:var(--teal);margin:0 auto}.workspace{z-index:1;position:relative}.role-menu{z-index:100}.role-menu>form:has(.role-option){border:0;margin:0;padding:0}.role-menu .role-option{width:100%;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:10px;grid-template-columns:36px 1fr 20px;align-items:center;gap:10px;padding:9px 8px;display:grid}.role-menu .role-option.selected,.role-menu .role-option:hover{background:#f2f6fc}.role-menu .role-option small,.role-menu .role-option strong{display:block}.role-menu .role-option small{color:var(--muted);margin-top:2px;font-size:10px}.role-menu .role-option b{color:var(--teal)}.nav-unread{color:#fff;background:#e66478;border-radius:999px;justify-content:center;align-items:center;min-width:1.45rem;height:1.45rem;margin-left:auto;padding:0 .4rem;font-size:.72rem;font-weight:600;display:inline-flex}.calendar-layout{grid-template-columns:minmax(0,1fr)}.calendar-workspace>.calendar-connections-panel,.calendar-workspace>.calendar-filters-panel{margin-top:12px}.calendar-connections-panel>summary,.calendar-filters-panel>summary{min-height:56px;padding:12px 18px}.calendar-connection-editor{position:relative}.calendar-connection-editor>summary{border:1px solid var(--line);min-height:34px;color:var(--body);cursor:pointer;background:#fff;border-radius:8px;place-items:center;padding:0 10px;font-size:9px;font-weight:600;list-style:none;display:grid}.calendar-connection-editor>summary::-webkit-details-marker{display:none}.calendar-connection-editor>form{z-index:30;border:1px solid var(--line);background:#fff;border-radius:14px;gap:11px;width:min(430px,100vw - 48px);max-height:min(680px,100vh - 72px);padding:16px;display:grid;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 18px 50px #00173724}.calendar-connection-editor>form>label>span{color:var(--body);margin-bottom:5px;font-size:9px;font-weight:600;display:block}.calendar-connection-editor>form input,.calendar-connection-editor>form select{width:100%;min-height:40px;font:inherit;background:#fff;border:1px solid #cfd8e5;border-radius:9px;padding:0 10px;font-size:10px}.calendar-connection-editor>form>button{color:#fff;background:var(--navy);border:0;border-radius:9px;min-height:40px;font-size:10px;font-weight:600}.calendar-connection-editor .calendar-people-dropdown{border:1px solid var(--line);border-radius:10px;overflow:hidden}.calendar-connection-editor .calendar-people-dropdown>summary{cursor:pointer;padding:10px 12px;font-size:10px;font-weight:600}@media (max-width:700px){.calendar-connection-list li{align-items:flex-start}.calendar-connection-actions{justify-content:flex-start}.calendar-connection-editor>form{width:auto;max-height:68vh;position:fixed;inset:auto 14px 86px;overflow:auto;transform:none}}.communication-workspace{min-width:0}.chat-layout{grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:1.25rem;min-height:650px;display:grid}.chat-inbox,.chat-thread{padding:0;overflow:hidden}.chat-inbox{flex-direction:column;display:flex}.chat-inbox-heading{border-bottom:1px solid var(--line);padding:1.4rem 1.35rem 1rem}.chat-inbox-heading>div{justify-content:space-between;align-items:center;gap:1rem;display:flex}.chat-conversation-list{flex:0 auto;max-height:360px;padding:.65rem;overflow-y:auto}.chat-conversation{color:var(--ink);border-radius:16px;grid-template-columns:2.75rem minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.8rem;text-decoration:none;display:grid}.chat-conversation.active,.chat-conversation:hover{background:#eef4fb}.chat-conversation>span:nth-child(2){gap:.2rem;min-width:0;display:grid}.chat-conversation small,.chat-conversation strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-conversation small{color:var(--muted)}.chat-conversation>i{background:var(--teal);border-radius:50%;width:.55rem;height:.55rem}.chat-avatar{color:#118f89;background:#e8f7f5;border-radius:14px;flex:none;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;font-style:normal;font-weight:600;display:inline-flex}.chat-avatar.channel{color:#6c5bd5;background:#eeeaff}.chat-list-empty,.chat-thread-empty{text-align:center;color:var(--muted);padding:2rem 1.25rem}.chat-list-empty strong{color:var(--ink)}.chat-new-control{border-top:1px solid var(--line);padding:.9rem 1.15rem}.chat-new-control summary{cursor:pointer;color:#516ce4;font-weight:600;list-style:none}.chat-new-control form{gap:.8rem;padding-top:.9rem;display:grid}.chat-new-control fieldset,.chat-new-control label{gap:.4rem;display:grid}.chat-new-control label>span,.chat-new-control legend{color:var(--muted);font-size:.78rem;font-weight:700}.chat-new-control input:not([type=checkbox]),.chat-new-control select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:12px;padding:.72rem}.chat-new-control fieldset{border:0;max-height:140px;margin:0;padding:0;overflow-y:auto}.chat-new-control .chat-member-choice{grid-template-columns:auto 1fr;align-items:center;gap:.55rem;display:flex}.chat-composer button,.chat-new-control button{background:var(--navy);color:#fff;cursor:pointer;border:0;border-radius:12px;padding:.75rem 1rem;font-weight:600}.chat-thread{grid-template-rows:auto minmax(0,1fr) auto;min-width:0;display:grid}.chat-thread>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:1.15rem 1.35rem;display:flex}.chat-thread>header>div{align-items:center;gap:.85rem;display:flex}.chat-thread h2,.chat-thread header p{margin:0}.chat-thread header p{color:var(--muted);font-size:.85rem}.chat-messages{background:#f8faff;flex-direction:column;gap:.85rem;padding:1.25rem;display:flex;overflow-y:auto}.chat-message{align-self:flex-start;max-width:min(72%,620px)}.chat-message>div{align-items:center;gap:.6rem;padding:0 .25rem .3rem;display:flex}.chat-message strong{font-size:.78rem}.chat-message time{color:var(--muted);font-size:.72rem}.chat-message p{white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;border-radius:5px 18px 18px;margin:0;padding:.75rem .9rem;box-shadow:0 7px 24px #1930530f}.chat-message.mine{align-self:flex-end}.chat-message.mine>div{justify-content:flex-end}.chat-message.mine p{background:#dff5f2;border-radius:18px 5px 18px 18px}.chat-delete-message,.chat-hide-button{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:.75rem;font-weight:700}.chat-delete-message:hover,.chat-hide-button:hover{color:#a93636}.chat-delete-message{margin:.25rem .25rem 0 auto;padding:.2rem;display:block}.chat-message p.chat-message-deleted{color:var(--muted);box-shadow:none;background:#eef1f5;font-style:italic}.chat-composer{border-top:1px solid var(--line);background:#fff;gap:.65rem;padding:1rem;display:grid}.chat-composer textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:58px;max-height:130px;color:var(--ink);font:inherit;border-radius:14px;padding:.8rem 1rem}.chat-composer-actions{align-items:center;gap:.65rem;min-width:0;display:flex}.chat-file-control{min-height:38px;color:var(--blue);cursor:pointer;background:#f8fbff;border:1px solid #cfdbe9;border-radius:10px;align-items:center;gap:.4rem;padding:0 .75rem;font-size:.75rem;display:inline-flex}.chat-file-control:hover{border-color:var(--blue);background:#f1f5ff}.chat-file-control input{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.chat-file-control strong{font-size:.75rem}.chat-selected-file{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.72rem;overflow:hidden}.chat-attachment{margin:.35rem 0 0}.chat-attachment button{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border:1px solid #cfdbe9;border-radius:11px;justify-content:space-between;align-items:center;gap:1rem;padding:.55rem .7rem;display:flex}.chat-attachment button span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.chat-attachment button small{color:var(--muted);flex:none}.chat-composer-actions>button{min-height:40px;margin-left:auto;padding:.65rem 1.15rem}.chat-thread-empty{margin:auto}.chat-thread-empty span{color:var(--teal);font-size:3rem;display:block}.chat-no-access{padding:2rem}@media (max-width:900px){.chat-layout{grid-template-columns:minmax(220px,34%) minmax(0,1fr);min-height:600px}.chat-message{max-width:86%}}@media (max-width:700px){.chat-layout{grid-template-columns:1fr;min-height:auto}.chat-inbox{max-height:430px}.chat-thread{min-height:560px}}.chat-back{display:none}@media (max-width:700px){.communication-workspace{min-height:100dvh;overflow-x:hidden}.communication-workspace .topbar{margin-bottom:14px}.chat-layout{min-height:0;display:block}.chat-layout.has-thread .chat-inbox,.chat-layout.no-thread .chat-thread{display:none}.chat-inbox{min-height:calc(100dvh - 220px)}.chat-conversation-list,.chat-inbox{max-height:none}.chat-thread{height:calc(100dvh - 190px);min-height:480px}.chat-thread>header{align-items:flex-start;padding:.8rem}.chat-hide-button{text-align:right;max-width:90px;padding:.35rem}.chat-back{border:1px solid var(--line);width:2.5rem;height:2.5rem;color:var(--ink);border-radius:12px;flex:none;place-items:center;font-size:1.25rem;text-decoration:none;display:inline-grid}.chat-messages{padding:.85rem}.chat-message{max-width:90%}.chat-composer{padding:.7rem}.chat-composer textarea{min-height:46px;max-height:110px}.chat-file-control strong{display:none}.chat-file-control{justify-content:center;width:42px;padding:0}.chat-composer-actions>button{padding-inline:1rem}}@media (max-width:900px){.mobile-app-bar{z-index:800}.mobile-nav-scrim{z-index:900}.mobile-nav-scrim.visible,.sidebar{pointer-events:auto}.sidebar{z-index:1000;overscroll-behavior:contain;will-change:transform;width:min(340px,88vw);height:100dvh;min-height:0;position:fixed;inset:0 auto 0 0;overflow-y:auto;transform:translate(-105%)}.sidebar.mobile-open{transform:translate(0)}.mobile-bottom-nav{z-index:800}}@media (max-width:640px){.workspace{padding-top:76px}.teacher-workspace>.topbar{margin-top:0}.mobile-brand{width:88px;height:42px;overflow:visible}.mobile-brand img{object-fit:contain;width:88px;height:40px;transform:none}.sidebar .brand-symbol{object-fit:cover;width:118px;height:82px}.login-page{min-height:100dvh;display:block}.login-brand{min-height:250px;padding:28px 24px}.login-copy{margin:28px 0 0}.login-copy h1{font-size:34px}.login-form-area{padding:22px 14px 36px}.login-card{padding:26px 22px}.login-language{top:14px;right:14px}}@media (max-width:900px){body:has(.app-shell),html:has(.app-shell){background:#fff;overflow-x:hidden}.sidebar{contain:layout paint;align-items:stretch;width:min(300px,82vw);height:auto;min-height:0;max-height:100dvh}.mobile-drawer-heading{flex:none;width:100%}.mobile-app-bar>button,.mobile-drawer-heading button{place-items:center;padding:0;line-height:0;display:grid}.mobile-app-bar>button svg,.mobile-drawer-heading button svg{margin:auto;display:block}}@media (max-width:640px){.sidebar .brand{padding:4px 10px 18px}.sidebar .brand-symbol{width:92px;height:64px}.sidebar .brand-word{font-size:19px}.sidebar .nav-item{min-height:46px}.sidebar .ai-entry{min-height:64px}}.onboarding-panel[open]>summary{border-bottom:1px solid var(--line)}.onboarding-form{gap:18px;padding-top:22px}.onboarding-step{align-items:center;gap:12px;margin-top:4px;display:flex}.onboarding-step>span{color:#0d8f87;background:#e7f8f5;border-radius:50%;flex:0 0 34px;place-items:center;width:34px;height:34px;font-weight:600;display:grid}.onboarding-step div{gap:2px;display:grid}.onboarding-step strong{color:var(--navy);font-size:17px}.onboarding-privacy,.onboarding-step small{color:var(--muted)}.onboarding-areas,.onboarding-roles{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.onboarding-areas legend,.onboarding-roles legend{grid-column:1/-1;margin-bottom:2px}.onboarding-roles .access-role-option{height:100%}.onboarding-send{background:#f3fbfa;border:1px solid #bde5df;border-radius:14px;align-items:flex-start;gap:12px;padding:16px;display:flex}.onboarding-send>input{accent-color:#14a69d;width:20px;height:20px;margin-top:2px}.onboarding-send>span{gap:3px;display:grid}.onboarding-send b{color:var(--navy)}.onboarding-send small{color:var(--muted)}.onboarding-privacy{text-align:center;margin:-8px 0 0;font-size:13px}@media (max-width:760px){.onboarding-areas,.onboarding-roles{grid-template-columns:1fr}}.work-filter-bar{grid-template-columns:repeat(3,minmax(140px,1fr)) auto auto;align-items:end;gap:10px;margin-bottom:16px;padding:16px;display:grid}.work-filter-bar label{gap:5px;display:grid}.work-filter-bar label>span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:600}.work-filter-bar select{border:1px solid var(--line);width:100%;height:40px;color:var(--ink);background:#fff;border-radius:9px;padding:0 10px}.work-filter-bar button,.work-filter-bar>a{border-radius:9px;place-items:center;height:40px;padding:0 14px;font-size:11px;font-weight:600;text-decoration:none;display:grid}.work-filter-bar button{background:var(--navy);color:#fff;border:0}.work-filter-bar>a{border:1px solid var(--line);color:var(--muted);background:#fff}@media (max-width:760px){.work-filter-bar{grid-template-columns:1fr}.work-filter-bar button,.work-filter-bar>a{width:100%}}.work-row-actions{align-items:center;gap:7px;display:flex}.work-row-actions form{margin:0}.resume-work,.wait-work,.work-waiting-toggle button{color:#644e91;background:#f7f3ff;border:1px solid #d6c9ee;border-radius:9px;padding:8px 10px;font-size:10px;font-weight:600}.resume-work:hover,.wait-work:hover,.work-waiting-toggle button:hover{background:#eee7fb;border-color:#9c84cd}.waiting-work-list{opacity:.92;grid-column:1/-1}.work-waiting-toggle{justify-content:flex-end;margin:-7px 0 14px;display:flex}.work-waiting-toggle button{font-size:11px}@media (max-width:760px){.work-row-actions{grid-column:2/-1;justify-content:flex-end}.resume-work,.wait-work{white-space:normal}.work-waiting-toggle button{width:100%}}.finance-workspace{background:#fbfefd}.finance-context{background:#fff;border:1px solid #a9cfc8;border-radius:14px;justify-content:space-between;align-items:end;gap:16px;margin-bottom:14px;padding:14px 16px;display:flex}.finance-context form{align-items:end;gap:10px;display:flex}.finance-context label{color:var(--muted);gap:4px;font-size:10px;font-weight:600;display:grid}.finance-context button,.finance-context input,.finance-context select,.finance-empty button,.finance-empty input,.finance-form button,.finance-form input,.finance-form select,.finance-form textarea{min-height:40px;color:var(--ink);font:inherit;background:#fff;border:1px solid #9fc7c0;border-radius:9px;padding:8px 10px}.finance-context button,.finance-empty button,.finance-form button{border-color:var(--navy);background:var(--navy);color:#fff;font-weight:600}.finance-context>span{font-size:11px;font-weight:600}.finance-kpis{grid-template-columns:repeat(5,1fr);gap:11px;margin-bottom:15px;display:grid}.finance-kpis article{background:#fff;border:1px solid #a9cfc8;border-radius:14px;min-height:105px;padding:17px;box-shadow:0 7px 18px #053a3510}.finance-kpis b,.finance-kpis em,.finance-kpis small{display:block}.finance-kpis small{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:600}.finance-kpis b{margin:8px 0 5px;font-size:20px}.finance-kpis em{color:var(--muted);font-size:10px;font-style:normal}.finance-tabs{gap:6px;margin-bottom:15px}.finance-tabs a{border:1px solid #a9cfc8;padding:10px 12px;font-weight:600}.finance-debt-grid,.finance-overview-grid,.finance-package-grid,.finance-record-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.finance-overview-grid dl{margin:0}.finance-overview-grid dl div{border-bottom:1px solid #cfe2de;justify-content:space-between;padding:10px 0;display:flex}.finance-overview-grid dd{font-weight:700}.finance-explainer{background:#f3edfb;border-radius:10px;padding:12px}.finance-upload{margin-bottom:15px}.finance-drop{text-align:center;background:#f7fcfb;border:2px dashed #79b9ae;border-radius:16px;place-items:center;gap:7px;min-height:155px;padding:22px;display:grid}.finance-drop.dragging{border-color:var(--blue);background:#eef6ff}.finance-drop label{background:var(--navy);color:#fff;cursor:pointer;border-radius:9px;padding:9px 13px;font-size:11px;font-weight:600}.finance-drop input{opacity:0;width:1px;height:1px;position:absolute}.finance-upload-progress{gap:6px;margin:10px 0 0;padding:0;list-style:none;display:grid}.finance-upload-progress li{background:#fff;border:1px solid #b6d6d0;border-radius:10px;grid-template-columns:1fr auto auto;gap:8px;padding:10px 12px;font-size:10px;display:grid}.finance-upload-progress li.failed{background:#fff8f7;border-color:#e3aaa5}.finance-document-layout{grid-template-columns:minmax(240px,.72fr) minmax(0,1.7fr);gap:15px;display:grid}.finance-document-list{padding:0;overflow:hidden}.finance-document-list h2{padding:17px}.finance-document-list a{color:var(--ink);border-top:1px solid #cfe2de;gap:3px;padding:12px 15px;text-decoration:none;display:grid}.finance-document-list a.active{border-left:4px solid var(--teal);background:#f1faf8}.finance-document-list small{color:var(--muted);font-size:9px}.finance-document-detail>header{justify-content:space-between;align-items:start;gap:12px;margin-bottom:15px;display:flex}.finance-document-detail>header a,.finance-package-row>a{color:#17675f;border:1px solid #8bbdb5;border-radius:9px;padding:8px 10px;font-size:10px;font-weight:600;text-decoration:none}.finance-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.finance-form label{gap:5px;font-size:10px;font-weight:600;display:grid}.finance-form label.wide,.finance-form>button{grid-column:1/-1}.finance-form textarea{resize:vertical;min-height:70px}.finance-verify{background:var(--teal);color:#fff;border:0;border-radius:9px;margin-top:10px;padding:10px 13px;font-weight:600}.finance-package-row,.finance-record{border-top:1px solid #cfe2de;justify-content:space-between;align-items:center;gap:10px;padding:11px 0;display:flex}.finance-package-row span,.finance-record b,.finance-record span{gap:3px;display:grid}.finance-package-row small,.finance-record span{color:var(--muted);font-size:9px}.finance-package-row form{margin:0}.finance-package-row button{background:#fff;border:1px solid #9fc7c0;border-radius:8px;padding:8px}.finance-record{margin:0}.finance-record-grid h3{margin-top:22px}.finance-check{align-items:center;grid-template-columns:auto 1fr!important;display:flex!important}.finance-check input{min-height:0}.finance-debt{border-top:1px solid #cfe2de;padding:11px 0}.finance-debt summary{cursor:pointer;justify-content:space-between;align-items:center;display:flex}.finance-debt summary span{display:grid}.finance-debt summary small{color:var(--muted)}.finance-month-review{max-width:820px}.finance-empty form{gap:8px;display:flex}.finance-empty input{flex:1}@media (max-width:1050px){.finance-kpis{grid-template-columns:repeat(2,1fr)}.finance-kpis article:last-child{grid-column:1/-1}.finance-debt-grid,.finance-document-layout,.finance-overview-grid,.finance-package-grid,.finance-record-grid{grid-template-columns:1fr}}@media (max-width:760px){.finance-context,.finance-context form{flex-direction:column;align-items:stretch}.finance-kpis{grid-template-columns:1fr 1fr}.finance-kpis article{min-height:92px}.finance-kpis article:last-child{grid-column:1/-1}.finance-document-layout{grid-template-columns:1fr}.finance-document-list{max-height:300px}.finance-form{grid-template-columns:1fr}.finance-form label.wide,.finance-form>button{grid-column:1}.finance-document-detail>header,.finance-package-row{flex-direction:column;align-items:stretch}.finance-upload-progress li{grid-template-columns:1fr}.finance-tabs{padding-bottom:4px}}.user-avatar{--avatar-bg:#b9eee5;--avatar-hair:#0d706b;--avatar-skin:#f4c9aa;--avatar-shirt:#16a69c;background:var(--avatar-bg);border:3px solid #fff;border-radius:50%;flex:none;place-items:center;display:inline-grid;position:relative;overflow:hidden;box-shadow:0 4px 14px #00173725}.user-avatar svg{width:100%;height:100%}.user-avatar>span{width:34%;height:34%;color:var(--navy);background:#fffd;border:1px solid #fff;border-radius:50%;place-items:center;font-size:8px;font-weight:700;display:grid;position:absolute;bottom:1px;right:1px}.avatar-small{border-width:2px;width:38px;height:38px}.avatar-medium{width:48px;height:48px}.avatar-large{width:76px;height:76px}.avatar-head{fill:var(--avatar-skin)}.avatar-hair{fill:var(--avatar-hair)}.avatar-body{fill:var(--avatar-shirt)}.avatar-accent{fill:#ffffff50}.avatar-teal{--avatar-bg:#c9f2eb;--avatar-hair:#075b57;--avatar-skin:#efc3a4;--avatar-shirt:#11a99e}.avatar-coral{--avatar-bg:#ffe0d7;--avatar-hair:#682d35;--avatar-skin:#c98767;--avatar-shirt:#ec6573}.avatar-violet{--avatar-bg:#e6e0ff;--avatar-hair:#35245f;--avatar-skin:#8c563f;--avatar-shirt:#7964d7}.avatar-sun{--avatar-bg:#fff0b9;--avatar-hair:#744214;--avatar-skin:#f1bd8d;--avatar-shirt:#f0a81b}.avatar-ocean{--avatar-bg:#d4ebff;--avatar-hair:#173f6a;--avatar-skin:#c77f5d;--avatar-shirt:#357ac5}.avatar-mint{--avatar-bg:#d9f5dc;--avatar-hair:#244b35;--avatar-skin:#6f412e;--avatar-shirt:#5ba66c}.avatar-rose{--avatar-bg:#f8dceb;--avatar-hair:#8a4b25;--avatar-skin:#e2a376;--avatar-shirt:#c95c91}.avatar-navy{--avatar-bg:#dce5f3;--avatar-hair:#061b36;--avatar-skin:#b66e4b;--avatar-shirt:#17345d}.role-switcher summary>.user-avatar{width:46px;height:46px}.role-switcher.compact summary>.user-avatar{width:38px;height:38px}.role-menu .profile-settings-link{border-bottom:1px solid var(--line);border-radius:0;margin-top:7px}.profile-settings-workspace{background:radial-gradient(circle at 72% 3%,#6748d710,#0000 25%),#fff}.avatar-settings-card{gap:28px;padding:26px;display:grid}.avatar-preview{background:linear-gradient(120deg,#effbf8,#f3efff);border-radius:18px;align-items:center;gap:20px;padding:20px;display:flex}.avatar-preview h2,.avatar-preview p{margin:4px 0 0}.avatar-preview p{color:var(--muted)}.avatar-preview div>span{color:var(--violet);letter-spacing:.08em;font-size:11px;font-weight:600}.avatar-settings-card form{gap:20px;display:grid}.avatar-settings-card fieldset{border:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;padding:0;display:grid}.avatar-settings-card legend{grid-column:1/-1;margin-bottom:5px;font-weight:600}.avatar-settings-card label{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:15px;justify-items:center;gap:8px;padding:17px;display:grid;position:relative}.avatar-settings-card label:hover{background:#f8f9ff;border-color:#aab9e9}.avatar-settings-card input{opacity:0;width:1px;height:1px;position:absolute}.avatar-settings-card label>span{color:var(--muted);font-size:11px;font-weight:600}.avatar-settings-card form>button{background:var(--navy);color:#fff;border:0;border-radius:11px;justify-self:start;padding:12px 18px;font-weight:600}@media (max-width:760px){.avatar-settings-card fieldset{grid-template-columns:repeat(2,minmax(0,1fr))}.avatar-preview{align-items:flex-start}.avatar-settings-card form>button{width:100%}}.communication-tabs{border:1px solid var(--line);background:#fff;border-radius:14px;gap:5px;width:max-content;margin:0 0 22px;padding:5px;display:flex;box-shadow:0 8px 24px #1930530d}.communication-tabs a{color:var(--muted);border-radius:10px;padding:10px 16px;font-weight:600;text-decoration:none}.communication-tabs a.active{background:var(--navy)}.channels-workspace{display:block}.channel-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:18px;display:grid}.channel-summary .panel{gap:5px;padding:22px;display:grid}.channel-summary strong{color:var(--navy);font-size:32px;line-height:1}.channel-summary span{color:var(--muted);font-weight:700}.channel-empty{text-align:center;justify-items:center;gap:8px;padding:42px 24px;display:grid}.channel-empty-symbol{width:58px;height:58px;color:var(--teal);background:#e7f8f5;border-radius:18px;place-items:center;font-size:30px;display:grid}.channel-empty h2,.channel-empty p{margin:0}.channel-empty p{max-width:640px;color:var(--muted);line-height:1.55}.channel-connectors{margin-top:28px}.channel-connectors .panel-heading{margin-bottom:14px}.channel-connectors h2{margin:4px 0 0}.connector-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.connector-card{grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px;display:grid}.connector-card>span{color:#516ce4;background:#edf3ff;border-radius:14px;place-items:center;width:48px;height:48px;font-size:20px;font-weight:700;display:grid}.connector-card>div{gap:3px;min-width:0;display:grid}.connector-card small{color:var(--muted)}.connector-card button,.connector-card>a{border:1px solid var(--line);color:#8a96a8;background:#f6f8fb;border-radius:10px;padding:8px 11px;font-weight:600;text-decoration:none}.connector-card>a{color:#516ce4;background:#f1f4ff;border-color:#cfd8fa}.configured-channels{margin-bottom:20px;padding:22px}.configured-channel-list{gap:10px;display:grid}.configured-channel-list article{border:1px solid var(--line);background:#fbfcff;border-radius:14px;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.configured-channel-list article>div{gap:3px;min-width:0;display:grid}.configured-channel-list small{color:var(--muted);text-overflow:ellipsis;overflow:hidden}.configured-channel-icon{color:#516ce4;background:#edf3ff;border-radius:13px;place-items:center;width:46px;height:46px;font-weight:700;display:grid}.connection-status{color:#9b6a08;background:#fff4dc;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:600}.connection-status.connected{color:#087b72;background:#e2f7f1}.channel-setup{margin-top:18px;scroll-margin-top:20px}.channel-setup>summary{cursor:pointer;color:var(--navy);padding:20px 22px;font-size:18px;font-weight:600;list-style:none}.channel-setup>summary:before{content:"+";color:#516ce4;background:#eaf0ff;border-radius:10px;place-items:center;width:30px;height:30px;margin-right:10px;display:inline-grid}.channel-setup[open]>summary{border-bottom:1px solid var(--line)}.channel-setup[open]>summary:before{content:"−"}.channel-setup form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:22px;display:grid}.channel-setup form>label{gap:6px;display:grid}.channel-setup form>label span,.channel-setup legend{color:var(--muted);font-size:13px;font-weight:600}.channel-setup input:not([type=radio]),.channel-setup select{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:12px;padding:12px}.channel-setup fieldset{border:0;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;display:grid}.channel-setup legend{grid-column:1/-1;margin-bottom:2px}.channel-setup fieldset label{border:1px solid var(--line);background:#fbfcff;border-radius:13px;align-items:flex-start;gap:10px;padding:14px;display:flex}.channel-setup fieldset input{accent-color:var(--teal);margin-top:3px}.channel-setup fieldset label>span{gap:3px;display:grid}.channel-setup fieldset b{color:var(--ink)}.channel-setup fieldset small{color:var(--muted)}.channel-setup form>p{color:var(--muted);grid-column:1/-1;margin:0;font-size:13px}.channel-setup form>button{background:var(--navy);color:#fff;cursor:pointer;border:0;border-radius:12px;grid-column:1/-1;justify-self:start;padding:12px 17px;font-weight:600}.whatsapp-readiness{gap:12px;padding:22px 22px 0;display:grid}.whatsapp-readiness h2,.whatsapp-readiness p{margin:0}.whatsapp-readiness>div{gap:6px;display:grid}.whatsapp-readiness ol{border:1px solid var(--line);background:#fbfcff;border-radius:13px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px;margin:0;padding:14px 14px 14px 36px;display:grid}.whatsapp-readiness .connection-note{color:#75520c;background:#fff8e8;border-radius:12px;padding:12px 14px}.whatsapp-foundation-status{border:1px solid var(--line);background:#f8fbff;border-radius:13px;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:4px;padding:10px;display:grid}.whatsapp-foundation-status>div{background:#fff;border-radius:10px;gap:3px;padding:10px 12px;display:grid}.whatsapp-foundation-status span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.whatsapp-foundation-status strong{color:var(--navy);font-size:15px}.whatsapp-foundation-status small{color:var(--muted);line-height:1.35}.coexistence-checklist{background:#f3fbf9;border:1px solid #bfe8df;border-radius:13px;padding:14px;gap:8px!important;display:grid!important}.coexistence-checklist ul{gap:6px;margin:0;padding-left:20px;display:grid}.coexistence-checklist p{color:var(--muted)}@media (max-width:760px){.communication-tabs{width:100%}.communication-tabs a{text-align:center;flex:1}.channel-summary{grid-template-columns:1fr}.channel-summary .panel{grid-template-columns:auto 1fr;align-items:center}.connector-grid{grid-template-columns:1fr}.connector-card{grid-template-columns:44px minmax(0,1fr)}.connector-card>span{width:44px;height:44px}.connector-card button,.connector-card>a{grid-column:2;width:max-content}.configured-channel-list article{grid-template-columns:42px minmax(0,1fr)}.configured-channel-icon{width:42px;height:42px}.connection-status{grid-column:2;width:max-content}.channel-setup form{padding:18px}.channel-setup fieldset,.channel-setup form{grid-template-columns:1fr}.whatsapp-readiness{padding:18px 18px 0}.whatsapp-foundation-status,.whatsapp-readiness ol{grid-template-columns:1fr}}.admissions-tabs,.communication-tabs,.day-filters,.finance-tabs,.work-tabs{scrollbar-width:none;-ms-overflow-style:none;scroll-snap-type:x proximity}.day-filters::-webkit-scrollbar,.work-tabs::-webkit-scrollbar{width:0;height:0;display:none}.communication-tabs::-webkit-scrollbar,.finance-tabs::-webkit-scrollbar{width:0;height:0;display:none}.admissions-tabs::-webkit-scrollbar{width:0;height:0;display:none}.admissions-tabs>a,.communication-tabs>a,.day-filters>button,.finance-tabs>a,.work-tabs>a{scroll-snap-align:start}.group-exception{color:#9a5b08;background:#fff4d8;border-radius:999px;align-items:center;min-height:26px;padding:4px 8px;font-size:10px;font-weight:700;display:inline-flex}.group-card-top:empty{display:none}.people-tools{z-index:4;background:#fff;position:sticky;top:0}@media (max-width:760px){.attention-grid,.finance-kpis,.people-summary{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-columns:auto;grid-auto-flow:row;gap:9px;padding:0;overflow:visible}.attention-card,.attention-card:nth-child(n),.finance-kpis article,.finance-kpis article.debt,.finance-kpis article:last-child,.people-summary article{border:1px solid var(--border);border-radius:14px;min-width:0;min-height:82px}.attention-card{align-items:flex-start;gap:10px;padding:13px;display:flex}.attention-card .card-icon{flex:none;width:32px;height:32px}.attention-card strong{font-size:20px}.attention-card small{font-size:9px}.finance-kpis article,.people-summary article{padding:13px}.people-summary .card-icon{width:32px;height:32px}.schedule-week-board{display:none}.calendar-layout{display:block}.calendar-agenda{gap:12px}.calendar-day>header{z-index:3;background:var(--canvas);padding:8px 4px;position:sticky;top:0}.timetable-help{display:none}.group-card-grid{grid-template-columns:1fr;gap:9px;display:grid}.group-card{grid-template-columns:1fr auto;gap:5px 12px;min-height:104px;padding:14px 15px;display:grid}.group-card-top{grid-area:1/2/3;align-self:start}.group-card h2{grid-column:1;margin:0;font-size:16px}.group-schedule{grid-column:1;margin:0;font-size:11px}.group-meta{border:0;grid-column:1/-1;gap:14px;padding:5px 0;display:flex}.group-meta>span{background:0 0;border:0;padding:0}.group-meta small{display:none}.group-meta strong{font-size:10px;font-weight:600}.group-card footer{border-top:1px solid var(--border);grid-column:1/-1;min-height:0;padding-top:4px}.group-calm,.group-card footer i,.group-icon{display:none}.people-row{min-height:64px}.people-row .contact-cell{display:none!important}.person-cell small:not(.warning-copy){display:none}.work-filter-disclosure:not([open]){padding:0}.work-filter-disclosure:not([open])>summary{min-height:48px;padding:10px 13px}.work-filter-disclosure:not([open])>summary small,.work-row .collaborator-tag,.work-row .work-copy p{display:none}}@media (min-width:761px) and (max-width:900px){.attention-grid,.people-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-primary-grid{grid-template-columns:1fr 1fr}}.notes-layout,.notices-layout{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);align-items:start;gap:18px;margin-top:18px;display:grid}.notice-inbox>header,.shared-note-list>header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.note-compose h2,.notice-compose h2,.notice-inbox>header h2,.shared-note-list>header h2{margin:3px 0 0;font-size:22px}.notice-inbox>header>b,.shared-note-list>header>b{min-width:30px;height:30px;color:var(--accent);background:#edf2ff;border-radius:50%;place-items:center;font-size:13px;display:grid}.notice-list,.shared-note-list>div{gap:10px;display:grid}.direct-notice,.shared-note{background:#fff;border:1px solid var(--line);border-left:4px solid #6177d8;border-radius:13px;padding:15px}.direct-notice.important{border-left-color:#d58c2a}.direct-notice.urgent{border-left-color:#d65a68}.shared-note.visibility-private{border-left-color:#7b8798}.shared-note.visibility-management{border-left-color:#815ed4}.direct-notice header,.shared-note header{color:var(--muted);justify-content:space-between;gap:12px;font-size:11px;display:flex}.direct-notice header span,.shared-note header span{color:var(--ink);font-weight:750}.direct-notice h3,.shared-note h3{margin:10px 0 5px;font-size:16px}.direct-notice p,.shared-note p{white-space:pre-wrap;color:var(--muted);margin:0;line-height:1.55}.direct-notice small{color:var(--muted);margin-top:10px;display:block}.direct-notice form{margin-top:12px}.direct-notice form button,.note-compose button,.notice-compose button{background:var(--ink);color:#fff;width:auto;min-height:36px;font:inherit;cursor:pointer;border:0;border-radius:9px;padding:7px 13px;font-weight:750}.note-compose,.notice-compose{padding:20px}.note-compose header p,.notice-compose header p{margin-bottom:0}.note-compose header>p:last-child,.notice-compose header>p:last-child{color:var(--muted);line-height:1.5}.note-compose form,.notice-compose form{gap:12px;margin-top:16px;display:grid}.note-compose label,.notice-compose label{color:var(--ink);gap:6px;font-size:12px;font-weight:700;display:grid}.note-compose input,.note-compose textarea,.notice-compose input,.notice-compose select,.notice-compose textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:9px;padding:10px}.note-compose textarea,.notice-compose textarea{resize:vertical}.note-empty,.notice-empty{border:1px dashed var(--line);color:var(--muted);text-align:center;border-radius:12px;padding:22px}.notes-privacy{background:#f0faf7;border-color:#bfe7da;align-items:flex-start;gap:14px;margin-top:16px;padding:14px 16px;display:flex}.notes-privacy p{color:var(--muted);margin:0;line-height:1.5}.note-compose fieldset{border:1px solid var(--line);border-radius:10px;margin:0;padding:12px}.note-compose legend{padding:0 5px;font-size:12px;font-weight:750}.note-compose fieldset>p{color:var(--muted);margin:0 0 9px;font-size:11px}.note-recipient-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:154px;display:grid;overflow:auto}.note-recipient-list label{background:#f7f9fd;border-radius:7px;align-items:center;gap:7px;padding:6px;font-size:12px;font-weight:600;display:flex}.note-recipient-list input{width:auto;padding:0}@media (max-width:900px){.notes-layout,.notices-layout{grid-template-columns:1fr}.note-compose,.notice-compose{order:-1}}@media (max-width:560px){.notes-privacy{display:block}.notes-privacy strong{margin-bottom:5px;display:block}.note-recipient-list{grid-template-columns:1fr}.direct-notice,.shared-note{padding:12px}}.work-filter-disclosure{margin-bottom:16px;padding:0;overflow:hidden}.work-filter-disclosure>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;list-style:none;display:flex}.work-filter-disclosure>summary::-webkit-details-marker{display:none}.work-filter-disclosure>summary>span{color:var(--ink);align-items:center;gap:9px;font-weight:600;display:flex}.work-filter-disclosure>summary small{color:var(--muted)}.work-filter-disclosure[open]>summary{border-bottom:1px solid var(--line)}.work-filter-disclosure .work-filter-bar{box-shadow:none;border:0;border-radius:0;margin:0}.role-menu .role-option{min-height:54px}.role-menu .role-option strong{font-size:14px!important;line-height:1.2!important}.role-menu .role-option small{line-height:1.3;font-size:10px!important}.role-menu .role-option b{font-size:18px;line-height:1}.connection-status{text-decoration:none}.channel-connection-help{background:#fffdf7;border-color:#ecd9a8;margin-bottom:20px;padding:22px;scroll-margin-top:20px}.channel-connection-help h2{margin:6px 0 9px}.channel-connection-help>p{max-width:800px;color:var(--body);line-height:1.55}.channel-connection-help ol{color:var(--body);gap:8px;margin:16px 0;padding-left:20px;display:grid}.channel-connection-help .connection-note{color:#765413;background:#fff3d8;border-radius:10px;margin:16px 0 0;padding:12px;font-weight:700}.connection-location{color:var(--body);background:#f4f7ff;border-radius:12px;gap:5px;margin:16px 0;padding:14px 16px;display:grid}.connection-location strong{color:var(--ink)}.imap-connection-form{border:1px solid var(--line);background:#fff;border-radius:16px;grid-template-columns:minmax(0,2fr) minmax(130px,1fr);gap:16px;margin-top:18px;padding:20px;display:grid}.imap-connection-form label{align-content:start;gap:6px;display:grid}.imap-connection-form label>span{color:var(--ink);font-size:14px;font-weight:600}.imap-connection-form input{border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);font:inherit;background:#fff;border-radius:12px;padding:12px}.imap-connection-form small{color:var(--muted);font-size:12px}.connection-submit{grid-column:1/-1;align-items:center;gap:16px;display:flex}.connection-submit button{background:var(--navy);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:12px;flex:none;padding:13px 18px;font-weight:600}.connection-submit p{color:var(--muted);margin:0;font-size:13px}@media (max-width:680px){.imap-connection-form{grid-template-columns:1fr;padding:16px}.connection-submit{flex-direction:column;align-items:stretch}.connection-submit button{width:100%}}.email-workspace{background:radial-gradient(circle at 76% 2%,#11a99e12,#0000 24%),#fff}.email-toolbar{justify-content:space-between;align-items:center;gap:18px;margin:18px 0;padding:13px 16px;display:flex}.email-toolbar>nav{flex-wrap:wrap;gap:8px;display:flex}.email-toolbar>nav a{border:1px solid var(--line);min-width:150px;color:var(--ink);border-radius:11px;gap:2px;padding:10px 13px;text-decoration:none;display:grid}.email-toolbar>nav a.active{border-color:var(--teal);background:#ecfbf8}.email-toolbar>nav small{color:var(--muted);font-size:10px}.email-toolbar-actions,.email-toolbar-actions form{justify-content:flex-end;align-items:center;gap:10px;display:flex}.email-compose-panel button,.email-reply-form>button,.email-thread-controls button,.email-toolbar button{background:var(--navy);color:#fff;border:0;border-radius:10px;padding:10px 14px;font-weight:600}.email-toolbar-actions form>small{max-width:180px;color:var(--muted);font-size:10px}.email-compose-button{color:#fff;background:var(--blue);white-space:nowrap;border-radius:10px;align-items:center;min-height:40px;padding:0 14px;font-weight:600;text-decoration:none;display:flex}.email-layout{grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:16px;height:clamp(570px,100dvh - 330px,760px);min-height:0;display:grid}.email-reader,.email-thread-list{min-height:0;padding:0;overflow:hidden}.email-thread-list{overscroll-behavior:contain;overflow-y:auto}.email-thread-list>header{z-index:2;border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;padding:18px;display:flex;position:sticky;top:0}.email-thread-list>header span{color:var(--muted);font-size:11px}.email-thread-list>a{border-bottom:1px solid var(--line);color:var(--ink);grid-template-columns:42px 1fr auto;align-items:center;gap:11px;padding:13px 15px;text-decoration:none;display:grid}.email-thread-list>a.active,.email-thread-list>a:hover{background:#f3faf9}.email-thread-list>a.unread{background:#f3f7ff}.email-thread-list>a>span:nth-child(2){gap:3px;min-width:0;display:grid}.email-thread-list>a b,.email-thread-list>a small,.email-thread-list>a strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.email-thread-list>a strong{font-size:12px}.email-thread-list>a b{font-size:11px}.email-thread-list>a small{color:var(--muted);font-size:9px}.email-thread-list>a i{background:var(--blue);color:#fff;border-radius:12px;place-items:center;min-width:22px;height:22px;font-size:9px;font-style:normal;font-weight:600;display:grid}.email-contact-avatar{color:#087c6a;background:#e5f7f4;border-radius:13px;place-items:center;width:42px;height:42px;font-weight:600;display:grid}.email-empty{color:var(--muted);text-align:center;padding:40px 18px;font-size:12px}.email-reader{flex-direction:column;min-width:0;display:flex}.email-reader>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:22px;padding:18px 20px;display:flex}.email-reader>header>div:first-child{flex:1;align-items:flex-start;gap:10px;min-width:0;display:flex}.email-reader>header>div:first-child>div{min-width:0}.email-reader h2{overflow-wrap:anywhere;margin:0;font-size:clamp(17px,1.7vw,22px);line-height:1.28}.email-reader header p{color:var(--muted);margin:5px 0 0;font-size:11px}.email-back{color:var(--blue);font-weight:700;text-decoration:none;display:none}.email-thread-controls{flex:none;align-items:flex-end;gap:8px;display:flex}.email-thread-controls form{align-items:end;gap:7px;display:flex}.email-thread-controls label{gap:3px;display:grid}.email-thread-controls label span{color:var(--muted);font-size:9px}.email-thread-controls select{border:1px solid var(--line);max-width:165px;color:var(--ink);background:#fff;border-radius:9px;padding:8px}.email-workflow-bar{background:linear-gradient(105deg,#f3fbfa,#fff);border-color:#d7e8e5;justify-content:space-between;align-items:center;gap:24px;margin-bottom:16px;padding:14px 18px;display:flex}.email-workflow-bar>div{gap:3px;display:grid}.email-workflow-bar .section-kicker{color:var(--teal);margin:0}.email-workflow-bar small{color:var(--muted);font-size:10px}.email-assignment-control{flex:none;align-items:end;gap:8px;display:flex}.email-assignment-control label{gap:3px;display:grid}.email-assignment-control label span{color:var(--blue);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:600}.email-assignment-control select{min-width:190px;color:var(--ink);background:#fff;border:1px solid #cfdcea;border-radius:9px;padding:9px}.email-assignment-control button{color:#fff;background:var(--navy);border:0;border-radius:9px;min-height:38px;padding:0 13px;font-weight:600}.email-messages{overscroll-behavior:contain;background:#f8faff;flex:1;align-content:start;gap:14px;min-height:0;padding:20px;display:grid;overflow:auto}.email-message{border:1px solid var(--line);background:#fff;border-radius:14px;min-width:0;max-width:88%;padding:15px 16px;overflow:hidden}.email-message.outbound{background:#effbf8;border-color:#bfe8df;justify-self:end}.email-message>header{justify-content:space-between;align-items:start;gap:16px;display:flex}.email-message>header>div{gap:2px;min-width:0;display:grid}.email-message>header small,.email-message>header strong{overflow-wrap:anywhere}.email-message>header strong{font-size:12px}.email-message time,.email-message>header small{color:var(--muted);font-size:9px}.email-message>p{color:var(--body);white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0 0;font-size:12px;line-height:1.55}.email-attachment{border:1px solid var(--line);min-width:0;color:var(--blue);background:#fff;border-radius:9px;align-items:center;gap:7px;margin-top:10px;padding:9px 10px;text-decoration:none;display:flex}.email-attachment span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.email-attachment small{color:var(--muted);flex:none;margin-left:auto}.email-reply-form{border-top:1px solid var(--line);background:#fff;flex:none;gap:10px;padding:15px 20px;display:grid}.email-reply-form label{gap:6px;display:grid}.email-reply-form label>span{color:var(--muted);font-size:11px;font-weight:600}.email-reply-form textarea{resize:vertical;border:1px solid var(--line);width:100%;max-height:130px;color:var(--ink);font:inherit;border-radius:11px;padding:12px}.email-file-input input{font-size:11px}.email-reply-form>button{justify-self:start}.email-reader-empty{text-align:center;flex:1;place-content:center;display:grid}.email-reader-empty p{color:var(--muted)}.email-compose-panel{margin-bottom:16px}.email-compose-panel>header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px;display:flex}.email-compose-panel h2{margin:0}.email-compose-panel header small{color:var(--muted)}.email-compose-panel header>a{color:var(--muted);font-weight:600;text-decoration:none}.email-compose-panel form{grid-template-columns:1fr 1fr;gap:13px;display:grid}.email-compose-panel label{gap:6px;display:grid}.email-compose-panel label>span{color:var(--muted);font-size:11px;font-weight:600}.email-compose-panel input,.email-compose-panel textarea{border:1px solid var(--line);min-width:0;color:var(--ink);font:inherit;border-radius:11px;padding:11px 12px}.email-compose-panel .email-file-input,.email-compose-panel label:nth-of-type(3){grid-column:1/-1}.email-compose-panel button{justify-self:start}@media (max-width:1050px){.email-toolbar{flex-direction:column;align-items:stretch}.email-toolbar-actions{justify-content:space-between}.email-workflow-bar{flex-direction:column;align-items:stretch}.email-assignment-control{align-items:end}}@media (max-width:900px){.email-layout{grid-template-columns:280px minmax(0,1fr);height:clamp(570px,100dvh - 300px,720px)}.email-reader>header{flex-direction:column;align-items:stretch}.email-thread-controls{flex-direction:row;align-items:stretch}.email-thread-controls form{align-items:stretch}.email-thread-controls label{flex:1}.email-compose-panel form{grid-template-columns:1fr}.email-compose-panel label{grid-column:1!important}}@media (max-width:680px){.email-toolbar>nav{grid-template-columns:1fr;display:grid}.email-toolbar-actions,.email-toolbar-actions form{flex-direction:column;align-items:stretch}.email-toolbar-actions form>small{max-width:none}.email-compose-button{justify-content:center}.email-workflow-bar{padding:14px}.email-assignment-control{grid-template-columns:1fr;align-items:stretch;display:grid}.email-assignment-control button,.email-assignment-control select{width:100%}.email-layout{height:auto;min-height:0;display:block}.email-layout.has-thread .email-thread-list,.email-layout:not(.has-thread) .email-reader{display:none}.email-thread-list{height:min(68dvh,620px);min-height:430px}.email-back{display:block}.email-reader{height:auto;min-height:540px}.email-reader>header{padding:15px}.email-messages{max-height:60dvh;padding:14px}.email-message{max-width:96%}.email-thread-controls{flex-direction:column}.email-thread-controls form{grid-template-columns:1fr auto;display:grid}.email-thread-controls form label{grid-column:1/-1}.email-reply-form{padding:15px}.email-compose-panel button,.email-reply-form>button{width:100%}.module-heading{align-items:center}.module-heading .section-kicker{display:none}.module-heading h2{font-size:18px}.module-primary{min-height:38px}.module-drawer{border-radius:14px;max-width:none;margin:0 -14px 16px}.books-setup-grid.module-drawer{display:block}.books-setup-grid.module-drawer>.drawer-heading{grid-column:1/-1}.notes-privacy{font-size:11px}.email-sync-banner{margin:10px 0;line-height:1.3}.email-toolbar{grid-template-columns:1fr auto;align-items:center;display:grid}.email-toolbar>nav{display:none}.email-channel-picker{display:block;position:relative}.email-channel-picker summary{border:1px solid var(--line);cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;min-height:42px;padding:8px 11px;list-style:none;display:flex}.email-channel-picker summary::-webkit-details-marker{display:none}.email-channel-picker div a small,.email-channel-picker div a strong,.email-channel-picker summary small,.email-channel-picker summary strong{display:block}.email-channel-picker div a small,.email-channel-picker summary small{color:var(--muted);font-size:9px}.email-channel-picker>div{z-index:20;border:1px solid var(--border);background:#fff;border-radius:10px;min-width:100%;padding:5px;position:absolute;top:calc(100% + 5px);left:0;box-shadow:0 14px 30px #142f4a22}.email-channel-picker>div a{color:var(--ink);border-radius:7px;padding:8px;text-decoration:none;display:block}.email-channel-picker>div a.active{background:#edf8f5}.email-toolbar-actions{display:block}.email-compose-button{width:42px;min-width:42px;padding:0;font-size:0}.email-compose-button:before{content:"+";font-size:22px}.email-toolbar-actions form{display:none}.email-reader-assignment{display:none!important}.email-reader-actions{display:block;position:relative}.email-reader-actions>summary{border:1px solid var(--border);cursor:pointer;border-radius:9px;place-items:center;width:38px;height:38px;list-style:none;display:grid}.email-reader-actions>summary::-webkit-details-marker{display:none}.email-reader-actions>form{z-index:10;border:1px solid var(--border);background:#fff;border-radius:11px;gap:9px;width:min(280px,80vw);padding:12px;display:grid;position:absolute;top:44px;right:0;box-shadow:0 14px 30px #142f4a22}.email-reader-actions label{gap:5px;display:grid}.email-reader-actions select{border:1px solid var(--border);border-radius:8px;width:100%;min-height:40px;padding:0 8px}.email-reader-actions button{color:#fff;background:var(--navy);border:0;border-radius:8px;min-height:38px}.email-reader{min-height:calc(100dvh - 150px)}.email-reply-form{z-index:5;position:sticky;bottom:0;box-shadow:0 -8px 24px #17324d0d}.email-reply-form textarea{min-height:78px;max-height:120px}}.communication-tabs a{justify-content:center;align-items:center;gap:8px;display:flex}.communication-tabs a svg{flex:none}.communication-tabs a.team:not(.active){color:#7565cf}.communication-tabs a.email:not(.active){color:var(--teal)}.communication-tabs a.channels:not(.active){color:#e06377}.communication-tabs a.active{color:#fff}.sidebar .nav-item[href*="/workspace/communication"] .nav-icon{color:#c9d5e6}.email-toolbar-actions button{justify-content:center;align-items:center;gap:8px;display:flex}.communication-empty-illustration{aspect-ratio:1;background:url(/communication/illustrations/no-conversation-selected-compact.svg) 50%/contain no-repeat;width:min(210px,58%);margin:0 auto 8px;display:block}.email-reader-empty{justify-items:center}@media (max-width:760px){.work-filter-disclosure>summary{flex-direction:column;align-items:flex-start;gap:4px}.role-menu .role-option{min-height:50px}.role-menu .role-option strong{font-size:13px!important}}.people-load-more{border-top:1px solid var(--line);background:#fbfcff;justify-items:center;gap:7px;padding:18px;display:grid}.people-load-more button{color:#fff;background:var(--navy);border:0;border-radius:11px;min-height:42px;padding:0 18px;font-weight:600}.people-load-more small{color:var(--muted);font-size:10px}@media (max-width:700px){.workspace{padding-bottom:88px;padding-left:15px;padding-right:15px}.topbar{margin-bottom:18px;display:block}.topbar>div:first-child{min-width:0}.topbar h1{max-width:none;font-size:clamp(25px,7.2vw,30px);line-height:1.08}.topbar>div:first-child>p:last-child{max-width:none;line-height:1.45}.topbar .header-actions{justify-content:flex-end;gap:8px;width:100%;height:auto;margin-top:12px;display:flex;position:static}.topbar .header-actions>.role-switcher,.topbar>.role-switcher{display:none}.topbar .header-actions .utility-button{width:42px;height:42px;min-width:42px!important;min-height:42px!important}.topbar .header-actions .notification b{top:-5px;right:-5px}.work-tabs{scroll-snap-type:x proximity;max-width:100%;padding-right:28px;position:relative}.work-tabs a{scroll-snap-align:start}.work-tabs:after{content:"›";width:28px;min-width:28px;color:var(--muted);background:linear-gradient(90deg,#f5f7fc00,#f5f7fc 45%);place-items:center;display:grid;position:sticky;right:0}.classes-tools input,.people-search input,.staff-tools input{font-size:14px}.people-tools{gap:9px;padding:14px}.people-search{width:100%;max-width:none;padding-inline:11px}.mobile-bottom-nav{min-height:70px;padding-top:7px}.mobile-bottom-nav span{font-size:20px}.mobile-bottom-nav small{font-size:9.5px}.chat-thread{height:calc(100dvh - 172px);min-height:0}.chat-messages{overscroll-behavior:contain}}@media (max-width:680px){.email-toolbar{gap:12px;padding:12px}.email-toolbar>nav{scrollbar-width:none;flex-wrap:nowrap;display:flex;overflow-x:auto}.email-toolbar>nav a{flex:0 0 180px;min-width:180px}.email-toolbar-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.email-toolbar-actions form{display:contents}.email-toolbar-actions form>small{grid-column:1/-1}.email-compose-button,.email-toolbar-actions button{justify-content:center;width:100%}.email-workflow-bar{gap:12px;margin-bottom:12px}}@media (max-width:640px){.mobile-brand{width:92px;height:46px;overflow:hidden}.mobile-brand img{object-fit:cover;object-position:center 47%;width:92px;height:64px}}.header-actions a.utility-button{text-decoration:none;display:grid}.search-workspace{background:radial-gradient(circle at 74% 2%,#23b5a50e,#0000 25%),#fff}.global-search-form{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:18px;padding:14px 16px;display:grid}.global-search-form>svg{color:var(--muted)}.global-search-form input{min-width:0;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;font-size:16px}.global-search-form button{color:#fff;background:var(--navy);border:0;border-radius:10px;padding:11px 16px;font-weight:600}.global-search-empty{color:var(--muted);text-align:center;justify-items:center;gap:7px;padding:54px 20px;display:grid}.global-search-empty strong{color:var(--ink);font-size:18px}.global-search-empty p{margin:0}.global-search-results{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.search-result-group{padding:18px}.search-result-group h2{margin:0 0 10px}.search-result-group>a{border-top:1px solid var(--line);color:var(--ink);grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 4px;text-decoration:none;display:grid}.search-result-group>a:hover strong{color:var(--blue)}.search-result-group>a small,.search-result-group>a span:nth-child(2),.search-result-group>a strong{min-width:0;display:block}.search-result-group>a small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:10px;overflow:hidden}.search-result-group>a>b{color:var(--teal);font-size:20px}.search-result-icon{width:38px;height:38px;color:var(--blue);background:#edf3ff;border-radius:10px;place-items:center;display:grid}.route-state{border:1px solid var(--border);background:#fff;border-radius:18px;max-width:760px;min-height:360px;margin:40px auto;padding:42px}.route-state h1{margin:0;font-size:28px}.route-state p:last-of-type{color:var(--muted);line-height:1.6}.route-state a,.route-state button{color:#fff;background:var(--navy);border:0;border-radius:10px;margin-top:12px;padding:11px 15px;font-weight:700;text-decoration:none;display:inline-flex}@media (max-width:760px){.global-search-results{grid-template-columns:1fr}.global-search-form{grid-template-columns:auto minmax(0,1fr)}.global-search-form button{grid-column:1/-1}.global-search-form input{font-size:14px}}.character-avatar{isolation:isolate;background:#e3e5ff}.character-avatar img{z-index:1;object-fit:contain}.staff-meme-avatar{isolation:isolate;background:0 0}.staff-meme-avatar img{z-index:1;object-fit:contain;object-position:center}.staff-avatar-preview .avatar-large{border-width:0;width:132px;height:132px}.avatar-settings-card .staff-avatar-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.avatar-settings-card .staff-avatar-grid label{min-height:132px;padding:10px}.avatar-settings-card .staff-avatar-grid .avatar-large{border-width:0;width:104px;height:104px}.character-avatar.selected,.staff-meme-avatar.selected{outline:3px solid var(--teal);outline-offset:2px}.character-avatar-preview .avatar-large{border-width:5px;width:132px;height:132px}.avatar-settings-card .character-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.avatar-settings-card .character-grid label{min-height:154px;padding:12px}.avatar-settings-card .character-grid .avatar-large{width:96px;height:96px}.avatar-settings-card .character-grid label>span{color:var(--ink);text-align:center;line-height:1.25}.avatar-settings-card label:has(input:checked){border-color:var(--teal);box-shadow:0 0 0 3px #11a99e20}.avatar-settings-card label>b{color:#fff;background:var(--teal);border-radius:50%;place-items:center;width:24px;height:24px;font-size:13px;display:grid;position:absolute;top:8px;right:8px}.avatar-background-grid{grid-template-columns:repeat(8,minmax(0,1fr))!important}.avatar-background-grid label{min-height:96px;padding:10px}.avatar-background-grid label>i{width:46px;height:46px;box-shadow:0 0 0 1px var(--line);border:2px solid #fff;border-radius:50%}.avatar-background-grid label>span{color:var(--ink);text-align:center;line-height:1.25}.avatar-settings-card input:focus-visible+*{outline:3px solid var(--blue);outline-offset:4px}@media (prefers-reduced-motion:reduce){.avatar-settings-card *{scroll-behavior:auto!important;transition:none!important}}@media (max-width:1050px){.avatar-settings-card .character-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.avatar-background-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}}@media (max-width:600px){.avatar-settings-card{padding:18px}.character-avatar-preview,.staff-avatar-preview{display:grid}.character-avatar-preview .avatar-large,.staff-avatar-preview .avatar-large{width:112px;height:112px}.avatar-settings-card .character-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.avatar-settings-card .character-grid label{min-height:138px}.avatar-settings-card .character-grid .avatar-large{width:82px;height:82px}.avatar-settings-card .staff-avatar-grid label{min-height:118px}.avatar-settings-card .staff-avatar-grid .avatar-large{width:92px;height:92px}.avatar-background-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}.login-preview{text-align:center;background:#f3fbf9;border:1px solid #d9e6e4;border-radius:12px;gap:7px;margin-top:20px;padding:16px;display:grid}.login-preview>span{color:var(--body);font-size:12px;font-weight:600}.login-preview>a{color:#076e62;background:#fff;border:1px solid #70cfc2;border-radius:9px;justify-content:center;align-items:center;gap:8px;height:44px;font-size:13px;font-weight:600;text-decoration:none;display:flex}.login-preview>a:hover{background:#e6f8f4}.login-preview>small{color:var(--muted);font-size:10px}.brand-name,.brand-word,.mobile-brand strong{font-family:var(--font-logo);letter-spacing:-1.7px;font-size:31px;font-weight:700;line-height:.95}.uploaded-avatar{background:#edf2f8;position:relative;overflow:hidden}.uploaded-avatar img{object-fit:cover}.initials-avatar{color:#fff;letter-spacing:-.04em;place-items:center;font-weight:600;display:grid}.initials-avatar.avatar-small{font-size:11px}.initials-avatar.avatar-medium{font-size:15px}.initials-avatar.avatar-large{font-size:30px}.initials-teal{background:linear-gradient(145deg,#4fcdbd,#147b72)}.initials-coral{background:linear-gradient(145deg,#f08b98,#b94052)}.initials-violet{background:linear-gradient(145deg,#9a8ae8,#5846aa)}.initials-sun{color:#5b4400;background:linear-gradient(145deg,#ffe586,#e5ad24)}.initials-ocean{background:linear-gradient(145deg,#65a9ef,#275ea8)}.initials-mint{color:#205d55;background:linear-gradient(145deg,#c8f4e9,#75c8b4)}.initials-rose{background:linear-gradient(145deg,#ed9dc6,#a83f77)}.initials-navy{background:linear-gradient(145deg,#3e547b,#15223f)}.avatar-policy-card{margin-bottom:18px;padding:0;overflow:hidden}.avatar-policy-card summary{cursor:pointer;justify-content:space-between;align-items:center;padding:20px 22px;list-style:none;display:flex}.avatar-policy-card summary::-webkit-details-marker{display:none}.avatar-policy-card summary small,.avatar-policy-card summary strong{display:block}.avatar-policy-card summary small{color:var(--muted);margin-top:4px;font-size:10px}.avatar-policy-card summary i{font-style:normal}.avatar-policy-card form{grid-template-columns:repeat(3,1fr);gap:10px;padding:0 22px 22px;display:grid}.avatar-mode-options label,.avatar-policy-card form label{border:1px solid var(--line);background:#fbfcff;border-radius:11px;align-items:flex-start;gap:10px;padding:13px;display:flex}.avatar-mode-options label b,.avatar-mode-options label small,.avatar-policy-card form label b,.avatar-policy-card form label small{display:block}.avatar-mode-options label small,.avatar-policy-card form label small{color:var(--muted);margin-top:3px;font-size:9px;line-height:1.4}.avatar-policy-card form>button{color:#fff;background:var(--navy);border:0;border-radius:10px;grid-column:1/-1;justify-self:start;padding:11px 15px;font-weight:600}.avatar-choice-form{gap:20px;display:grid}.avatar-mode-options{border:0;grid-template-columns:repeat(3,1fr);gap:10px;padding:0;display:grid}.avatar-colour-grid legend,.avatar-mode-options legend{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:9px;font-size:10px;font-weight:600}.avatar-mode-options label:has(input:checked){border-color:var(--teal);background:#f0fbf9;box-shadow:0 0 0 2px #24a79a18}.avatar-upload-control{background:#fafcff;border:1px dashed #aebbd0;border-radius:13px;gap:8px;padding:20px;display:grid}.avatar-upload-control>span{font-weight:600}.avatar-upload-control input{font-size:12px}.avatar-upload-control small{color:var(--muted)}.avatar-colour-grid{border:0;flex-wrap:wrap;gap:12px;padding:0;display:flex}.avatar-colour-grid label{position:relative}.avatar-colour-grid input{opacity:0;pointer-events:none;position:absolute}.avatar-colour-grid .user-avatar{cursor:pointer}.avatar-colour-grid .selected{outline:3px solid var(--teal);outline-offset:3px}.avatar-choice-form>button{color:#fff;background:var(--navy);border:0;border-radius:10px;justify-self:start;padding:12px 18px;font-weight:600}@media (max-width:760px){.avatar-mode-options,.avatar-policy-card form{grid-template-columns:1fr}.avatar-choice-form>button,.avatar-policy-card form>button{width:100%}}.mobile-scroll-hint{display:none}@media (max-width:900px){.mobile-scroll-hint{z-index:2;color:#d8e4f3;background:linear-gradient(#14213d00,#14213d 38%);flex:none;justify-content:center;align-items:center;gap:5px;min-height:34px;margin-top:5px;font-size:10px;font-weight:600;display:flex;position:sticky;bottom:0}.sidebar .role-switcher.compact[open]{padding-bottom:10px}.sidebar .role-switcher.compact .role-menu{width:100%;max-height:none;margin-top:8px;position:static;overflow:visible}}@media (max-width:680px){.workspace{padding-top:92px}.email-toolbar>nav{grid-template-columns:repeat(auto-fit,minmax(135px,1fr));width:100%;display:grid;overflow:visible}.email-toolbar>nav a{width:100%;min-width:0}.email-back{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:6px;min-height:40px;padding:0 10px;font-size:11px;display:inline-flex!important}}.inactive-staff-archive{background:#f7f8fb;margin-top:22px;padding:0;overflow:hidden}.inactive-staff-archive>summary{cursor:pointer;grid-template-columns:1fr auto 20px;align-items:center;gap:12px;padding:18px 21px;list-style:none;display:grid}.inactive-staff-archive>summary::-webkit-details-marker{display:none}.inactive-staff-archive>summary small,.inactive-staff-archive>summary strong{display:block}.inactive-staff-archive>summary small{color:var(--muted);margin-top:4px;font-size:10px}.inactive-staff-archive>summary>b{color:#6a7383;text-align:center;background:#e7eaf0;border-radius:9px;min-width:28px;padding:5px 8px;font-size:11px}.inactive-staff-archive>summary>i{font-style:normal;transition:transform .2s}.inactive-staff-archive[open]>summary>i{transform:rotate(180deg)}.inactive-staff-archive>.staff-card-grid{padding:0 18px 18px}.archived-staff-card{box-shadow:none}.archived-staff-card .staff-status-form{margin-top:13px}.welcome-mark{vertical-align:-5px;display:inline-flex!important}.welcome-mark img{display:block}.calendar-empty-mark{background:linear-gradient(145deg,#eef2ff,#e8faf6);border-radius:16px;place-items:center;width:52px;height:52px;margin:0 auto;display:grid!important}.calendar-empty-mark img{display:block}@media (max-width:700px){.appointment-dialog-backdrop{padding-top:max(28px,env(safe-area-inset-top));align-items:flex-end}.appointment-dialog{width:100%;height:auto;max-height:calc(100dvh - max(28px,env(safe-area-inset-top)));padding:0 18px max(22px,env(safe-area-inset-bottom));border-radius:22px 22px 0 0}.appointment-dialog>header{z-index:2;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;align-items:center;margin:0 -18px 18px;padding:16px 18px 14px;position:sticky;top:0}.appointment-dialog>header h2{font-size:22px}.appointment-detail-grid{border:1px solid var(--line);border-radius:15px;grid-template-columns:1fr;gap:0;margin-bottom:16px;overflow:hidden}.appointment-detail-grid div{border:0;border-bottom:1px solid var(--line);border-radius:0;grid-template-columns:105px minmax(0,1fr);gap:12px;padding:12px 14px;display:grid}.appointment-detail-grid div:last-child{border-bottom:0}.appointment-detail-grid dt{margin:0}.appointment-detail-grid dd{overflow-wrap:anywhere;min-width:0}.appointment-purpose{border-left:3px solid var(--teal);background:#f4f8f7;border-radius:0 12px 12px 0;margin:0 0 16px;padding:13px 14px}.appointment-edit-form{grid-template-columns:1fr;gap:12px;padding-top:16px}.appointment-edit-form label:last-of-type{grid-column:auto}.appointment-cancel-form input,.appointment-edit-form input{border:1px solid var(--line);min-height:44px;font:inherit;background:#fff;border-radius:10px;padding:0 11px}.appointment-attendance>div{gap:9px;padding:14px 0}.appointment-attendance form{grid-template-columns:1fr 1fr;width:100%;display:grid}.appointment-attendance button{border:1px solid var(--line);background:#fff;border-radius:10px;min-height:44px;font-weight:600}.appointment-cancel-form>div{grid-template-columns:1fr;display:grid}.appointment-cancel-form button{border-radius:10px;width:100%}}.work-approval-card{border-color:#6f5bd33d;margin-top:18px}.work-approval-card summary{cursor:pointer;color:var(--navy);font-weight:600}.work-approval-card form{gap:12px;margin-top:14px;display:grid}.work-approval-card textarea{resize:vertical;min-height:96px}.work-approval-card form>div{flex-wrap:wrap;gap:10px;display:flex}.work-approval-card button{width:auto}.work-approval-card.approval-pending{background:linear-gradient(135deg,#f5f2fff5,#fffffffa)}@media (max-width:700px){.work-approval-card button,.work-approval-card form>div{width:100%}}.undo-toast{z-index:1200;color:#fff;background:#132342;border:1px solid #ffffff29;border-radius:16px;align-items:center;gap:18px;min-width:min(360px,100vw - 32px);padding:14px 16px;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 18px 44px #0e1e3a3d}.undo-toast button{color:#77ddd0;background:0 0;border:0;padding:8px 12px;font-weight:600}.undo-toast>a{color:#fff;background:#ffffff14;border-radius:50%;place-items:center;width:26px;height:26px;font-size:18px;line-height:1;text-decoration:none;display:grid}@media (max-width:700px){.undo-toast{bottom:92px;right:16px}}.work-quick-actions{justify-content:flex-end;align-items:flex-start;gap:8px;margin:-7px 0 14px;display:flex}.work-quick-actions .work-waiting-toggle{margin:0}.team-review-request{position:relative}.team-review-request>summary{color:#365f92;cursor:pointer;background:#f2f7ff;border:1px solid #c9d7ef;border-radius:9px;padding:8px 10px;font-size:11px;font-weight:600;list-style:none}.team-review-request>summary::-webkit-details-marker{display:none}.team-review-request>form{z-index:12;border:1px solid var(--border);background:#fff;border-radius:14px;gap:10px;width:min(360px,100vw - 40px);margin-top:7px;padding:16px;display:grid;position:absolute;right:0;box-shadow:0 16px 36px #11223d24}.team-review-request label{gap:5px;font-size:11px;font-weight:600;display:grid}.team-review-request select,.team-review-request textarea{border:1px solid var(--border);background:#fff;border-radius:9px;width:100%;padding:9px}.team-review-request textarea{resize:vertical;min-height:84px}.team-review-request button,.team-review-row button{color:#fff;background:var(--navy);border:0;border-radius:9px;padding:9px 12px;font-size:11px;font-weight:600}.team-review-list{background:#f9fdff;border-color:#cfe3ee;margin-bottom:14px}.team-review-list h2{margin:5px 0 12px}.team-review-row{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:11px 0;display:flex}.team-review-row p{white-space:pre-wrap;color:var(--body);margin:4px 0 0}.team-review-row small{color:var(--muted)}@media (max-width:760px){.work-quick-actions{justify-content:stretch;display:grid}.team-review-request>summary{text-align:center}.team-review-request>form{width:100%;position:static}.team-review-row{flex-direction:column;align-items:flex-start}.team-review-row button,.team-review-row form{width:100%}}.event-source{color:#365f92;background:#eef4ff;border-radius:4px;padding:2px 4px;font-size:7px;font-weight:600;line-height:1;position:absolute;top:4px;right:4px}.appointment-external-note{color:#365f92;background:#f2f7ff;border-radius:10px;margin:0 0 14px;padding:10px 12px;font-size:11px;line-height:1.45}.timetable-event .event-lock{display:none}.dashboard-updates{margin:0 0 22px;padding:22px 26px}.dashboard-updates-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.dashboard-updates-heading h2{margin:5px 0 4px}.dashboard-updates-heading p{color:var(--muted);margin:0}.dashboard-updates-heading button{border:1px solid var(--line);color:var(--navy);cursor:pointer;background:0 0;border-radius:12px;padding:10px 14px;font-weight:700}.dashboard-update-list{gap:2px;margin-top:16px;display:grid}.dashboard-update-list a{border-top:1px solid var(--line);color:inherit;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:13px 2px;text-decoration:none;display:grid}.dashboard-update-list small,.dashboard-update-list strong{display:block}.dashboard-update-list small{color:var(--muted);margin-top:3px}@media (max-width:700px){.dashboard-updates{padding:19px}.dashboard-updates-heading{flex-direction:column;align-items:flex-start}}.calendar-choice-group,.calendar-people-access{border:1px solid var(--line);border-radius:14px;gap:10px;margin:0;padding:14px;display:grid}.calendar-choice-group legend,.calendar-people-access legend{padding:0 6px;font-weight:600}.calendar-choice-group>label{align-items:flex-start;gap:10px;display:flex}.calendar-choice-group small{color:var(--muted);margin-top:3px;font-weight:400;line-height:1.4;display:block}.calendar-people-access>p{color:var(--muted);margin:0 0 4px;font-size:13px;line-height:1.45}.calendar-people-access>div{border-top:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding-top:10px;display:grid}.calendar-people-access>div label{align-items:center;gap:6px;font-size:13px;display:flex}@media (max-width:700px){.calendar-people-access>div{grid-template-columns:1fr;align-items:flex-start}}.appointment-edit-form select{width:100%;min-height:41px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cfd8e5;border-radius:9px;padding:0 10px}.appointment-colour-field{grid-column:1/-1}.appointment-colour-field>span{color:var(--body);margin-bottom:6px;font-size:9px;font-weight:600;display:block}.calendar-colour-picker{position:relative}.calendar-colour-picker>summary{cursor:pointer;background:#fff;border:1px solid #cfd8e5;border-radius:9px;grid-template-columns:22px 1fr 18px;align-items:center;gap:9px;min-height:42px;padding:0 11px;list-style:none;display:grid}.calendar-colour-picker>summary::-webkit-details-marker{display:none}.calendar-colour-picker>summary>i{border:2px solid #fff;border-radius:50%;width:18px;height:18px;box-shadow:0 0 0 1px #cfd8e5}.calendar-colour-picker>summary>b{font-size:11px;font-weight:600}.calendar-colour-picker>summary>svg{transition:transform .18s}.calendar-colour-picker[open]>summary>svg{transform:rotate(180deg)}.calendar-colour-popover{z-index:12;background:#fff;border:1px solid #dce2ec;border-radius:13px;grid-template-columns:repeat(6,34px);justify-content:center;gap:10px;width:min(310px,100%);padding:16px;display:grid;position:absolute;top:calc(100% + 7px);left:0;box-shadow:0 16px 38px #00173726}.calendar-colour-popover button{color:#fff;cursor:pointer;border:2px solid #fff;border-radius:50%;place-items:center;width:32px;height:32px;padding:0;display:grid;position:relative;box-shadow:0 0 0 1px #d0d7e2}.calendar-colour-popover button[aria-selected=true]{box-shadow:0 0 0 3px #16213a}.calendar-colour-popover button span{text-shadow:0 1px 2px #0008;font-size:14px;font-weight:800}.calendar-colour-popover button:after{content:attr(data-label);z-index:2;color:#fff;white-space:nowrap;opacity:0;pointer-events:none;background:#16213a;border-radius:6px;padding:5px 7px;font-size:9px;font-weight:600;transition:all .15s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,4px)}.calendar-colour-popover button:focus-visible:after,.calendar-colour-popover button:hover:after{opacity:1;transform:translate(-50%)}.calendar-colour-popover{width:min(276px,100%)}.appointment-edit-form .calendar-colour-popover button{border:0;border-radius:50%;grid-column:auto;width:18px;min-width:18px;height:18px;min-height:18px;padding:0;box-shadow:0 0 0 1px #d7dde6;background:var(--swatch-colour)!important}.appointment-edit-form .calendar-colour-popover button[aria-selected=true]{box-shadow:0 0 0 2px #fff,0 0 0 4px #263550}.calendar-colour-popover button:after{bottom:calc(100% + 6px)}.event-resize-handle{z-index:3;cursor:ns-resize;position:absolute;bottom:1px;left:22%;right:22%;background:0 0!important;border:0!important;height:9px!important;min-height:9px!important;padding:0!important}.event-resize-handle span{opacity:.48;background:currentColor;border-radius:999px;width:30px;height:3px;margin:auto;display:block}.appointment-dialog{overscroll-behavior:contain;scrollbar-gutter:stable}.appointment-dialog form{padding-bottom:max(8px,env(safe-area-inset-bottom))}.calendar-colour-popover{overscroll-behavior:contain;grid-template-columns:repeat(8,18px);justify-content:start;align-items:center;gap:10px 12px;width:min(260px,100vw - 48px);max-height:190px;padding:14px;overflow:auto}.appointment-edit-form .calendar-colour-popover button,.calendar-colour-popover button{grid-column:auto;background:var(--swatch-colour)!important;border:0!important;border-radius:50%!important;width:18px!important;min-width:18px!important;height:18px!important;min-height:18px!important;padding:0!important;box-shadow:0 0 0 1px #d7dde6!important}.appointment-edit-form .calendar-colour-popover button[aria-selected=true],.calendar-colour-popover button[aria-selected=true]{box-shadow:0 0 0 2px #fff,0 0 0 4px #263550!important}.calendar-colour-popover button span{font-size:9px;line-height:1}.appointment-edit-form>button{color:#fff!important;background:#16213a!important}.appointment-edit-form>button:hover{background:#233455!important}@media (max-width:700px){.calendar-colour-popover{z-index:90;top:auto;left:50%;bottom:max(18px,env(safe-area-inset-bottom));grid-template-columns:repeat(8,18px);width:min(292px,100vw - 32px);position:fixed;transform:translate(-50%)}.appointment-dialog{-webkit-overflow-scrolling:touch;overflow-y:auto}.schedule-date-grid.essentials{grid-template-columns:1fr 1fr}.schedule-date-grid.essentials label:first-child{grid-column:1/-1}.schedule-form>button{justify-self:stretch;width:100%}}.calendar-connection-colours{border:1px solid #dce2ec!important;border-radius:10px!important;grid-template-columns:repeat(8,18px)!important;gap:10px 12px!important;margin:0!important;padding:12px!important;display:grid!important}.calendar-connection-colours legend{color:var(--body);padding:0 5px;font-size:11px;font-weight:650}.calendar-connection-colours label{cursor:pointer;width:18px;height:18px;position:relative;margin:0!important;display:block!important}.calendar-connection-colours input{opacity:0;pointer-events:none;position:absolute}.calendar-connection-colours span{background:var(--swatch-colour);border-radius:50%;width:18px;height:18px;display:block;box-shadow:0 0 0 1px #d7dde6}.calendar-connection-colours input:checked+span{box-shadow:0 0 0 2px #fff,0 0 0 4px #263550}.calendar-connection-colours em{z-index:3;color:#fff;white-space:nowrap;opacity:0;pointer-events:none;background:#16213a;border-radius:6px;padding:5px 7px;font-size:9px;font-style:normal;transition:all .15s;position:absolute;bottom:calc(100% + 7px);left:50%;transform:translate(-50%,4px)}.calendar-connection-colours input:focus-visible~em,.calendar-connection-colours label:hover em{opacity:1;transform:translate(-50%)}@media (max-width:680px){.schedule-date-grid.essentials{grid-template-columns:1fr}.schedule-form>button{justify-self:stretch;width:100%;min-width:0}}.calendar-topbar{grid-template-columns:minmax(0,1fr) auto auto;align-items:start;gap:12px;display:grid}.calendar-create-shortcut{color:#16213a;background:#fff;border:1px solid #cfd8e5;border-radius:9px;align-items:center;gap:7px;min-height:38px;margin-top:4px;padding:0 12px;font-size:10px;font-weight:700;text-decoration:none;display:inline-flex}.calendar-create-shortcut span{color:#fff;background:#5671d8;border-radius:6px;place-items:center;width:20px;height:20px;font-size:16px;display:grid}.schedule-create-panel{border-radius:12px}.schedule-create-panel>summary{min-height:52px;padding:10px 14px}.schedule-create-panel>summary>span>b{border-radius:8px;width:30px;height:30px}.schedule-create-panel>summary small,.schedule-form:has(.schedule-type-row input[value=meeting]:checked) .private-student-field{display:none}.timetable-event.touch-dragging{opacity:.86!important;background:var(--event-accent,#5671d8)!important}@supports (color:color-mix(in lab,red,red)){.timetable-event.touch-dragging{background:color-mix(in srgb,var(--event-accent,#5671d8) 11%,white)!important}}.timetable-event.touch-dragging{outline:2px solid var(--event-accent,#5671d8);box-shadow:0 12px 28px #16213a30}.timetable-event.movable{padding-bottom:15px}.event-resize-handle{height:16px!important;min-height:16px!important;bottom:0!important;left:12%!important;right:12%!important}.event-resize-handle span{opacity:.72!important;width:34px!important;height:4px!important}.appointment-dialog{flex-direction:column;max-height:100dvh;display:flex;overflow-y:auto}.appointment-dialog>header{z-index:4;background:#fff;position:sticky;top:0}.appointment-cancel-area{padding-bottom:max(18px,env(safe-area-inset-bottom))}.appointment-cancel-form>div{flex-wrap:wrap}.calendar-colour-popover{align-content:start;grid-template-columns:repeat(8,18px)!important}.calendar-colour-popover button{aspect-ratio:1!important;place-self:center!important}.undo-toast{border-radius:12px;gap:10px;min-width:0;max-width:min(390px,100vw - 32px);padding:10px 12px;font-size:11px}.undo-toast button{padding:5px 7px}.calendar-agenda .schedule-card{padding:12px}.calendar-agenda .schedule-time{padding:7px 4px}.calendar-agenda .schedule-main h2{font-size:14px}@media (max-width:760px){.calendar-topbar{grid-template-columns:1fr auto}.calendar-topbar>.calendar-create-shortcut{grid-column:1/-1;justify-self:start}.schedule-create-panel>summary{min-height:48px}.undo-toast{max-width:none;bottom:84px;left:12px;right:12px}.appointment-dialog{max-height:100dvh}}@media (min-width:681px){.email-layout{align-items:start;height:auto;min-height:680px}.email-thread-list{width:100%;height:clamp(570px,100dvh - 150px,820px);max-height:calc(100dvh - 36px);position:sticky;top:18px;overflow-y:auto}.email-reader{min-height:680px;overflow:visible}.email-messages{flex:none;min-height:340px;max-height:none;overflow:visible}.email-reply-form textarea{min-height:150px;max-height:320px}}.schedule-form:has(.schedule-type-row input[value=meeting]:checked) .schedule-type-row+label+.form-pair>label:first-child{display:none}.schedule-form:has(.schedule-type-row input[value=meeting]:checked) .schedule-type-row+label+.form-pair>label:last-child{grid-column:1/-1}.calendar-create-shortcut{cursor:pointer;font-family:inherit}.timetable-event[style*=--event-accent]{border-color:var(--event-accent);background:var(--event-accent)}@supports (color:color-mix(in lab,red,red)){.timetable-event[style*=--event-accent]{background:color-mix(in srgb,var(--event-accent) 11%,white)}}.schedule-create-panel:not([open]),.schedule-create-panel[open]>summary{display:none}.schedule-create-panel[open]{padding:14px 16px}.appointment-edit-form .calendar-colour-popover,.calendar-colour-popover{grid-template-columns:repeat(8,18px)!important;gap:10px 12px!important;width:272px!important;max-width:calc(100vw - 48px)!important;max-height:none!important;padding:14px!important;overflow:visible!important}.appointment-edit-form .calendar-colour-popover button,.calendar-colour-popover button{border:1.5px solid #17233b!important;outline:0!important;box-shadow:0 0 0 1px #fff!important}.appointment-edit-form .calendar-colour-popover button[aria-selected=true],.calendar-colour-popover button[aria-selected=true]{border-color:#101b33!important;box-shadow:0 0 0 1.5px #fff,0 0 0 3px #101b33!important}.sidebar-collapse{aspect-ratio:1!important;border-radius:50%!important;width:28px!important;min-width:28px!important;max-width:28px!important;height:28px!important;min-height:28px!important;max-height:28px!important;padding:0!important;line-height:1!important}.calendar-create-shortcut>span{flex:0 0 20px!important}.schedule-create-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;margin:0 0 14px;padding:0 0 12px;display:flex}.schedule-create-heading small,.schedule-create-heading strong{display:block}.schedule-create-heading strong{font-size:15px}.schedule-create-heading small{color:var(--muted);margin-top:3px;font-size:11px}.schedule-create-close{border:1px solid var(--line);min-height:32px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:6px;padding:0 9px;font-size:10px;display:inline-flex}.schedule-create-close span{font-size:17px;line-height:1}.schedule-create-close b{font-weight:650}.calendar-create-shortcut>span{text-align:center!important;place-items:center!important;padding:0!important;line-height:1!important;display:inline-grid!important}.appointment-cancel-form label{gap:6px;display:grid}.appointment-cancel-form input{background:#fff!important;border:1px solid #c7d1df!important;border-radius:9px!important;min-height:40px!important;padding:0 10px!important}.appointment-cancel-form>div{justify-content:flex-end!important;gap:7px!important;display:flex!important}.appointment-cancel-form button{border-radius:8px!important;width:auto!important;min-height:34px!important;padding:6px 10px!important;font-size:10px!important}.appointment-cancel-form .appointment-cancel-back{color:var(--ink)!important;border:1px solid var(--line)!important;background:#fff!important}.appointment-cancel-form .appointment-cancel-confirm{color:#fff!important;background:#b83f51!important;border:1px solid #b83f51!important}.undo-toast{animation:calendar-toast-dismiss .2s 9.8s forwards;border-radius:10px!important;gap:7px!important;width:max-content!important;min-width:0!important;max-width:calc(100vw - 32px)!important;padding:8px 9px 8px 11px!important;font-size:10px!important}.undo-toast form{margin-left:4px!important}.undo-toast button{padding:4px 5px!important;font-size:10px!important}.undo-toast>a{width:22px!important;height:22px!important;font-size:15px!important}@keyframes calendar-toast-dismiss{to{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(7px)}}@media (max-width:760px){.schedule-create-heading{align-items:flex-start}.schedule-create-heading small{max-width:220px}.undo-toast{max-width:calc(100vw - 24px)!important;bottom:84px!important;left:auto!important;right:12px!important}}.pilot-feature-legend{flex-wrap:wrap;gap:8px;margin:0 0 18px;display:flex}.pilot-feature-grid article>span,.pilot-feature-legend span{letter-spacing:.07em;border-radius:999px;width:max-content;padding:5px 8px;font-size:9px;font-weight:800;display:inline-flex}.pilot-feature-grid .live,.pilot-feature-legend .live{color:#12695f;background:#dff5ef}.pilot-feature-grid .local,.pilot-feature-legend .local{color:#765300;background:#fff4d6}.pilot-feature-grid .pilot,.pilot-feature-legend .pilot{color:#4e3c8a;background:#eee8ff}.pilot-feature-grid .prototype,.pilot-feature-legend .prototype{color:#855400;background:#fff0bd}.pilot-feature-grid{grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:15px;display:grid}.pilot-feature-grid article{border:1px solid var(--line);background:#fff;border-radius:16px;flex-direction:column;min-height:210px;padding:19px;display:flex;box-shadow:0 8px 24px #17233b0b}.pilot-feature-grid h2{margin:14px 0 7px;font-size:17px}.pilot-feature-grid p{color:var(--muted);margin:0;font-size:12px;line-height:1.55}.pilot-feature-grid footer{flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:17px;display:flex}.pilot-feature-grid footer a{color:#fff;background:#17324d;border-radius:8px;align-items:center;min-height:34px;padding:0 11px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.pilot-feature-grid footer a.secondary{color:#31445a;background:#e9eef4}.authenticated-prototype-banner{z-index:100;color:#5d4300;background:#fff0b8;border-bottom:1px solid #e3c96c;justify-content:space-between;align-items:center;gap:16px;min-height:46px;padding:8px 18px;font-size:11px;display:flex;position:sticky;top:0}.authenticated-prototype-banner a{color:inherit;font-weight:800}@media (max-width:700px){.authenticated-prototype-banner{flex-direction:column;align-items:flex-start;position:relative}.pilot-feature-grid{grid-template-columns:1fr}}.finance-tabs{background:#f7fcfb;border:1px solid #a9cfc8;border-radius:15px;grid-template-columns:repeat(6,minmax(112px,1fr));gap:8px;margin-bottom:18px;padding:8px;display:grid;overflow:auto}.finance-tabs a{min-height:48px;color:var(--body);text-align:center;white-space:nowrap;background:#fff;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;padding:9px 12px;font-size:10px;font-weight:700;text-decoration:none;display:flex;box-shadow:0 2px 8px #123c3610}.finance-tabs a:hover{background:#f1faf8;border-color:#79b9ae}.finance-tabs a.active{border-color:var(--navy);background:var(--navy);color:#fff;box-shadow:0 7px 16px #14213d24}.reports-workspace{background:#fbfefd}.reports-hero{align-items:center;gap:16px;margin-bottom:16px;padding:18px;display:flex}.reports-hero-icon{color:#fff;background:var(--navy);border-radius:15px;flex:none;place-items:center;width:54px;height:54px;display:grid}.reports-hero span{color:#18756c;letter-spacing:.09em;font-size:9px;font-weight:800}.reports-hero h2{margin:4px 0;font-size:19px}.reports-hero p{color:var(--muted);margin:0;font-size:11px}.reports-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.reports-grid>a{min-height:175px;color:var(--ink);background:#fff;border:1.5px solid #9fc7c0;border-radius:15px;flex-direction:column;padding:19px;text-decoration:none;display:flex;box-shadow:0 7px 18px #053a3510}.reports-grid span{color:#4d6864;text-transform:uppercase;font-size:10px;font-weight:800}.reports-grid strong{margin:13px 0 7px;font-size:29px}.reports-grid p{color:var(--muted);margin:0;font-size:11px;line-height:1.45}.reports-grid em{color:#18756c;margin-top:auto;padding-top:15px;font-size:10px;font-style:normal;font-weight:800}.reports-notes{padding:17px}.reports-notes h2{margin-top:0}.reports-notes p{color:var(--muted);margin-bottom:0}@media (max-width:900px){.reports-grid{grid-template-columns:1fr 1fr}.finance-tabs{grid-template-columns:repeat(6,minmax(126px,1fr))}}@media (max-width:560px){.reports-grid{grid-template-columns:1fr}.reports-hero{align-items:flex-start}.reports-grid>a{min-height:145px}}:root{--ui-page:#f7f8fc;--ui-text:#0b2345;--ui-secondary:#66738f;--ui-border:#dce3ef;--ui-disabled:#f1f3f7;--ui-navy:#0b2345;--ui-periwinkle:#596bff;--ui-teal-soft:#edf9f7;--ui-blue-soft:#f0f2ff;--ui-coral-soft:#fff1f2;--ui-amber-soft:#fff8ea;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--radius-control:10px;--radius-card:16px;--control-height:42px;--focus-ring:0 0 0 3px #596bff33;--elevation-priority:0 5px 14px #0b23450d;--content-max:1440px;--transition-fast:.16s ease}body,html{background:var(--ui-page);color:var(--ui-text)}body{line-height:1.5}.workspace{background:var(--ui-page);box-shadow:none}.workspace>*{width:min(100%,var(--content-max));margin-left:auto;margin-right:auto}.topbar h1{color:var(--ui-text);letter-spacing:-.035em;font-size:clamp(30px,3vw,38px);font-weight:650}.topbar p:last-child{max-width:780px}.eyebrow,.section-kicker,.topbar p:last-child{color:var(--ui-secondary)}.attention-card,.panel{border:1px solid var(--ui-border);border-radius:var(--radius-card);background:var(--ui-card)}.panel{padding:var(--space-6)}.panel .panel{border-color:var(--ui-divider)}.attention-card{min-height:0;padding:var(--space-4)}.attention-card:has(.coral),.attention-card:has(.orange){box-shadow:var(--elevation-priority)}.attention-card:has(.coral){background:var(--ui-coral-soft);border-color:#f3b2b8}.attention-card:has(.orange){background:var(--ui-amber-soft);border-color:#ebcd8d}.attention-card:has(.teal){background:var(--ui-teal-soft);border-color:#9bdcd5}.attention-card:has(.violet){background:var(--ui-blue-soft);border-color:#c7ceff}a,button,input,select,textarea{transition:border-color var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}:where(button,a,input,select,textarea):focus-visible{outline:2px solid var(--ui-periwinkle);outline-offset:2px;box-shadow:var(--focus-ring)}:where(input,select,textarea){border-color:var(--ui-border)!important;border-radius:var(--radius-control)!important}:where(input,select,textarea):focus{border-color:var(--ui-periwinkle)!important}:where(button):disabled{cursor:not-allowed;opacity:.62}.admissions-form>button,.admissions-inline-form>button,.finance-context button,.finance-form>button,.primary,.primary-action{min-height:var(--control-height);font-weight:650;border-radius:var(--radius-control)!important;background:var(--ui-navy)!important;color:#fff!important}.secondary,.secondary-action{min-height:var(--control-height);border:1px solid var(--ui-border)!important;border-radius:var(--radius-control)!important;color:var(--ui-navy)!important;background:#fff!important}.sidebar{background:var(--ui-navy);box-shadow:none}.nav-item,.nav-section-toggle{transition:background-color var(--transition-fast),color var(--transition-fast)}.nav-item:hover,.nav-section-toggle:hover{background:#ffffff0d}.nav-item.active,.nav-section.contains-active>.nav-section-toggle{color:#fff;background:#12a89d22}.nav-item.active{box-shadow:inset 3px 0 var(--ui-teal)}.nav-item:focus-visible,.nav-section-toggle:focus-visible{outline-color:#9ca7ff}.nav-future{color:#cbd4e1;background:#ffffff12}.badge,.nav-future,.status-pill{border-radius:999px}.finance-kpis article,.reports-grid>a{box-shadow:none}.finance-kpis article{min-height:0;padding:var(--space-4);border-color:var(--ui-border)}.finance-kpis article.debt{background:var(--ui-blue-soft);border-color:#c7ceff}.finance-tabs{border-color:var(--ui-border);background:#fff}.finance-tabs a{border-color:var(--ui-divider)}.finance-tabs a.active{border-color:var(--ui-periwinkle);background:var(--ui-navy);box-shadow:none}.reports-grid>a{border-color:var(--ui-border);min-height:150px}.reports-grid>a:hover{border-color:var(--ui-periwinkle);transform:translateY(-1px)}@media (max-width:700px){.workspace{padding:24px 18px}.topbar{margin-bottom:var(--space-4)}.panel{padding:var(--space-4)}.attention-grid{gap:var(--space-3)}}:root{--surface-soft:#fbfcff;--border:#dce3ef;--border-strong:#b8c7dc;--ink:#0b2345;--body:#40516f;--muted:#66738f;--focus:#7587d8}.app-shell,body,html{background:var(--canvas)}.people-workspace,.profile-workspace,.workspace{background:var(--canvas);box-shadow:none}.attention-card,.panel{box-shadow:none;background:#fff}.panel{border-radius:16px}.topbar{margin-bottom:20px}.topbar h1{color:var(--ink)}.topbar p:last-child{color:var(--muted)}.dashboard-updates-heading button,.panel-heading a{color:#315d9b;border-radius:10px;align-items:center;min-height:40px;font-weight:700;text-decoration:none;display:inline-flex}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus)}@supports (color:color-mix(in lab,red,red)){a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--focus) 38%,transparent)}}.dashboard-primary-grid{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:18px;margin-bottom:18px;display:grid}.priority-surface{background:#fffdf7;border-color:#e9bd62}.attention-grid{border:1px solid var(--border);background:#fff;border-radius:16px;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-bottom:18px;display:grid;overflow:hidden}.attention-card{border:0;border-right:1px solid var(--border);border-radius:0;min-height:108px;padding:17px 18px}.attention-card:last-child{border-right:0}.attention-card .card-icon{border-radius:10px;width:38px;height:38px}.attention-card strong{font-size:24px}.attention-card.calm strong{margin-top:7px;font-size:15px}.dashboard-secondary-grid{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:18px;display:grid}.dashboard-secondary-grid .dashboard-updates{margin:0;padding:22px 23px}.quick-action-list{grid-template-columns:1fr 1fr;gap:10px;display:grid}.quick-action-list a{border:1px solid var(--border);min-height:54px;color:var(--ink);background:var(--surface-soft);border-radius:12px;align-items:center;gap:10px;padding:11px 13px;font-size:13px;font-weight:700;text-decoration:none;display:flex}.quick-action-list a:hover{border-color:var(--border-strong);background:#f4f7fc}.quick-action-list svg{color:#315d9b}.dashboard-empty.compact{min-height:82px;padding:14px}.finance-kpis,.people-summary{border:1px solid var(--border);background:#fff;border-radius:16px;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;display:grid;overflow:hidden}.finance-kpis article,.finance-kpis article.debt,.people-summary article{border:0;border-right:1px solid var(--border);min-height:88px;box-shadow:none;background:#fff;border-radius:0;margin:0;padding:15px 17px}.finance-kpis article:last-child,.people-summary article:last-child{border-right:0}.people-summary .card-icon{width:38px;height:38px}.people-summary article.zero-state{color:var(--muted);background:#fff}.finance-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}.finance-kpis b{font-size:18px}.finance-tabs{z-index:5;border-color:var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff0;gap:4px;padding:6px;display:flex;position:sticky;top:0}.finance-tabs a{min-height:42px;box-shadow:none;border:0;flex:1}.finance-context{z-index:6;border-color:var(--border);box-shadow:none;position:sticky;top:0}.finance-document-list a,.people-row,.roster-row{transition:background-color .15s,border-color .15s}.finance-document-list a:hover,.people-row:hover,.roster-row:hover{background:#f5f8fc}@media (max-width:1100px){.dashboard-primary-grid,.dashboard-secondary-grid{grid-template-columns:1fr}.attention-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:760px){.workspace{padding:20px 16px 92px}.topbar{align-items:flex-start;margin-bottom:16px}.topbar h1{font-size:26px}.dashboard-primary-grid{flex-direction:column;gap:14px;display:flex}.priorities-panel{order:1}.agenda-panel{order:2}.attention-grid{scroll-snap-type:x proximity;background:0 0;border:0;border-radius:0;grid-template-columns:none;grid-auto-columns:minmax(150px,74%);grid-auto-flow:column;gap:10px;padding-bottom:4px;display:grid;overflow-x:auto}.attention-card,.attention-card:nth-child(n){border:1px solid var(--border);scroll-snap-align:start;border-radius:14px;min-height:100px;padding:15px}.dashboard-secondary-grid{gap:14px}.quick-action-list{grid-template-columns:1fr}.quick-action-list a{min-height:48px}.panel{padding:17px}.finance-kpis,.people-summary{scroll-snap-type:x proximity;background:0 0;border:0;border-radius:0;grid-template-columns:none;grid-auto-columns:minmax(148px,72%);grid-auto-flow:column;gap:9px;overflow-x:auto}.finance-kpis article,.finance-kpis article.debt,.finance-kpis article:last-child,.people-summary article{border:1px solid var(--border);scroll-snap-align:start;border-radius:14px;min-height:82px}.finance-tabs{scroll-snap-type:x proximity;display:flex;position:sticky;overflow-x:auto}.finance-tabs a{scroll-snap-align:start;flex:none;min-width:128px}}.tester-sandbox-bar{z-index:120;color:#164f49;background:#e9faf6;border-bottom:1px solid #88cfc3;justify-content:center;align-items:center;gap:14px;min-height:42px;padding:7px 16px;font-size:12px;display:flex;position:relative}.tester-sandbox-bar>button{color:#12695f;background:#fff;border:1px solid #278b7d;border-radius:8px;padding:7px 11px;font-weight:750}.tester-sandbox-bar>small{font-weight:700}.tester-sandbox-bar>small.error{color:#a13939}.tester-sandbox-bar>small.success{color:#12695f}.tester-feedback-backdrop{z-index:500;background:#14233a66;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.tester-feedback-dialog{background:#fff;border:1px solid #8abeb6;border-radius:18px;width:min(520px,100%);padding:22px;box-shadow:0 22px 60px #12243a33}.tester-feedback-dialog footer,.tester-feedback-dialog header{justify-content:space-between;align-items:center;gap:12px;display:flex}.tester-feedback-dialog header p{color:#278478;letter-spacing:.08em;margin:0;font-size:10px;font-weight:800}.tester-feedback-dialog header h2{margin:4px 0 0}.tester-feedback-dialog header>button{background:0 0;border:0;font-size:27px}.tester-feedback-dialog form{gap:14px;margin-top:18px;display:grid}.tester-feedback-dialog label{gap:6px;font-size:12px;font-weight:750;display:grid}.tester-feedback-dialog select,.tester-feedback-dialog textarea{width:100%;font:inherit;background:#fff;border:1px solid #8fb8b2;border-radius:10px;padding:10px 12px}.tester-feedback-dialog form>p{color:#526a70;margin:0;font-size:11px}.tester-feedback-dialog footer{justify-content:flex-end}.tester-feedback-dialog footer button{background:#fff;border:1px solid #278b7d;border-radius:9px;min-height:38px;padding:0 14px;font-weight:750}.tester-feedback-dialog footer button[type=submit]{color:#fff;background:#197f72}@media (max-width:700px){.tester-sandbox-bar{flex-direction:column;align-items:flex-start}.tester-feedback-dialog{padding:18px}}:root{--canvas:#f8fafc;--surface-soft:#fff;--navy:#10213f;--navy2:#0b2345;--ink:#10213f;--body:#667085;--muted:#8994aa;--border:#d7e0ef;--border-strong:#d7e0ef;--teal:#12a89d;--blue:#596ff6;--violet:#596ff6;--coral:#e95b67;--amber:#e5a43a;--ui-page:#f8fafc;--ui-card:#fff;--ui-text:#10213f;--ui-secondary:#667085;--ui-muted:#8994aa;--ui-border:#d7e0ef;--ui-divider:#e8edf5;--ui-navy:#10213f;--ui-teal:#12a89d;--ui-periwinkle:#596ff6;--ui-coral:#e95b67;--ui-amber:#e5a43a;--focus:#596ff6}.sidebar{background:#0b2345}.nav-icon,.nav-section-icon{color:#c9d5e6;background:0 0;border:0;border-radius:0}.nav-item:hover .nav-icon,.nav-section-toggle:hover .nav-section-icon{color:#fff}.nav-item.active .nav-icon{color:var(--teal)}.nav-section.contains-active>.nav-section-toggle .nav-section-icon{color:#8de0d8}.nav-item.active{color:#fff;background:#12a89d1f}.nav-section.contains-active>.nav-section-toggle{color:#e8fffc;background:#12a89d12}.sidebar-collapse{min-width:40px!important;min-height:40px!important}.ai-orb{color:#d5cbff;background:#ffffff12}.sidebar .nav-item:not(.active) .nav-icon img,.sidebar .nav-section:not(.contains-active)>.nav-section-toggle .nav-section-icon img{filter:brightness(0)saturate()invert(89%)sepia(7%)saturate(562%)hue-rotate(178deg)brightness(97%)contrast(84%)}:where(.primary,.primary-action,.module-primary,.people-primary,.calendar-create-trigger,.admissions-form>button,.finance-form>button){min-height:40px;border:1px solid var(--navy)!important;color:#fff!important;background:var(--navy)!important;box-shadow:none!important;border-radius:10px!important}:where(.secondary,.secondary-action,.module-secondary){min-height:40px;border:1px solid var(--border)!important;color:var(--navy)!important;box-shadow:none!important;background:#fff!important;border-radius:10px!important}:where(.tertiary,.tertiary-action){min-height:40px;color:var(--blue)!important;box-shadow:none!important;background:0 0!important;border:0!important}:where(.destructive,.danger,.disconnect,.chat-delete-message){min-height:40px;color:#b92f3c!important;box-shadow:none!important;background:#fff!important;border:1px solid #f2b4ba!important;border-radius:10px!important}a{color:var(--blue)}button{color:var(--navy)}a svg,button svg{flex:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #596ff638}.attention-card,.panel{border-color:var(--border)}input[type=checkbox],input[type=radio]{accent-color:var(--teal);width:19px!important;height:19px!important;min-height:19px!important}label:has(>input[type=checkbox]),label:has(>input[type=radio]){min-height:40px}.icon-button,.utility-button{min-width:40px;min-height:40px}.card-icon.blue,.card-icon.violet{color:var(--blue);background:#eef0ff}.card-icon.teal{color:var(--teal);background:#e9f9f7}.card-icon.coral{color:var(--coral);background:#fff0f2}.card-icon.orange{color:#9b650c;background:#fff7e8}@media (pointer:coarse){.chat-message-menu>summary,.icon-button,.sidebar-collapse,.utility-button{min-width:44px!important;min-height:44px!important}}.resume-work,.wait-work,.work-waiting-toggle button{color:#865c10;background:#fff8e9;border-color:#efd39b}.resume-work:hover,.wait-work:hover,.work-waiting-toggle button:hover{border-color:var(--amber);background:#fff3d8}.work-priority.waiting{background:var(--amber)}.badge.waiting{color:#865c10;background:#fff3d8}.waiting-row{background:#fffdf8}.badge.normal,.priority-normal,.priority-pill.normal,.work-priority.normal{color:var(--body);border-color:var(--border);background:#f2f5f9}.feed-marker{place-items:center;display:grid}.feed-detail-link{align-items:center;gap:4px;display:inline-flex}.roster-clear,.roster-warning{align-items:center;gap:5px;display:inline-flex}.roster-clear svg,.roster-warning svg{flex:none}.pilot-honesty-banner{color:#173f49;background:#f5fffc;border:1px solid #88cfc3;border-radius:14px;align-items:center;gap:12px;margin:0 0 18px;padding:13px 16px;display:flex}.pilot-honesty-banner strong{white-space:nowrap}.process-alert{border:1px solid;border-radius:12px;margin:0 0 18px;padding:12px 15px;font-weight:700}.process-alert.success{color:#0d665c;background:#f1fffb;border-color:#76c8b8}.process-alert.error{color:#9d2f3b;background:#fff5f5;border-color:#ef9d9d}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0;display:grid}.process-panel{margin:18px 0;padding:22px}.process-panel h2{margin:0 0 8px}.process-panel form{gap:11px;margin-top:16px;display:grid}.process-panel input,.process-panel select,.process-panel textarea{color:#06254d;width:100%;font:inherit;background:#fff;border:1.5px solid #a9c9c5;border-radius:10px;padding:11px 13px}.process-panel textarea{resize:vertical;min-height:88px}.process-panel button{color:#fff;background:#143653;border:0;border-radius:10px;justify-self:start;padding:11px 16px;font-weight:750}.process-panel label{gap:6px;font-weight:650;display:grid}.process-panel label:has(input[type=checkbox]){align-items:center;display:flex}.process-panel input[type=checkbox]{width:auto}.process-records{gap:12px;display:grid}.process-panel>article,.process-records article{background:#fbfffe;border:1px solid #bad8d4;border-radius:12px;gap:6px;padding:14px;display:grid}.process-records article form{grid-template-columns:1fr auto;align-items:end}.process-panel article small,.process-records small{color:#526f76}.exam-state-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.exam-state-controls form{background:#fff;border:1px solid #d2e4e2;border-radius:10px;margin-top:0;padding:10px}@media (max-width:800px){.exam-state-controls,.process-grid{grid-template-columns:1fr}.pilot-honesty-banner{flex-direction:column;align-items:flex-start}.process-records article form{grid-template-columns:1fr}}.owner-calendar-dot{box-shadow:0 0 0 3px #fff,0 0 0 4px #d7dde6}@media (max-width:900px){body:has(.app-shell),html:has(.app-shell){height:100%;min-height:0;overflow:hidden}.app-shell{overflow:hidden}.app-shell,.workspace{height:100dvh;min-height:0}.workspace{overscroll-behavior-y:auto;touch-action:pan-y;-webkit-overflow-scrolling:touch;overflow:hidden auto}.mobile-nav-scrim{visibility:hidden;pointer-events:none!important}.mobile-nav-scrim.visible{visibility:visible;pointer-events:auto!important}.sidebar{visibility:hidden;pointer-events:none;contain:none;will-change:auto}.sidebar.mobile-open{visibility:visible;pointer-events:auto;contain:layout paint;will-change:transform}}.timetable-event{touch-action:pan-y}.event-resize-handle{touch-action:none}.student-character-avatar{padding:4px;overflow:hidden}.student-character-avatar img{object-fit:contain;width:100%;height:100%;display:block}.student-avatar-editor{grid-column:1/-1}.student-avatar-choice-form{gap:1rem;display:grid}.student-avatar-preview{border-radius:1.25rem;justify-content:center;align-items:center;width:7rem;height:7rem;display:flex}.student-avatar-preview img{object-fit:contain;width:6rem;height:6rem}.student-background-grid,.student-character-grid{border:0;grid-template-columns:repeat(auto-fit,minmax(5.5rem,1fr));gap:.65rem;margin:0;padding:0;display:grid}.student-background-grid legend,.student-character-grid legend{margin-bottom:.7rem;font-weight:700}.student-background-grid label,.student-character-grid label{cursor:pointer;gap:.35rem;display:grid}.student-background-grid input,.student-character-grid input{opacity:0;pointer-events:none;position:absolute}.student-character-grid span{border:2px solid #0000;border-radius:1rem;justify-content:center;align-items:center;min-height:4.5rem;padding:.25rem;display:flex}.student-character-grid input:checked+span,.student-character-grid input:focus-visible+span{border-color:var(--purple-600,#6657d9);box-shadow:0 0 0 2px #fff,0 0 0 4px var(--purple-200,#cbc7f7)}.student-background-grid span{text-align:center;border:2px solid #0000;border-radius:.75rem;min-height:2.75rem;padding:.65rem;font-size:.82rem}.student-background-grid input:checked+span,.student-background-grid input:focus-visible+span{border-color:var(--purple-600,#6657d9)}.settings-section-nav{gap:7px;margin:-4px 0 16px;display:flex}.settings-section-nav a{border:1px solid var(--border);color:var(--body);background:#fff;border-radius:9px;padding:9px 13px;font-size:10px;font-weight:600;text-decoration:none}.settings-section-nav a.active{border-color:var(--navy);color:#fff;background:var(--navy)}.integration-settings-workspace{background:radial-gradient(circle at 80% 0,#11a99e0c,#0000 28%),#fff}.integration-safety-banner{color:#087260;background:#f1fbf8;border-color:#bfe7da;align-items:flex-start;gap:13px;margin-bottom:16px;padding:18px;display:flex}.integration-safety-banner strong{display:block}.integration-safety-banner p{color:#3e6d65;margin:4px 0 0;font-size:10px;line-height:1.5}.integration-readiness-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.integration-readiness-card{gap:10px;padding:19px;display:grid}.integration-readiness-card>header{justify-content:space-between;align-items:center;display:flex}.integration-readiness-card h2,.integration-readiness-card p{margin:0}.integration-readiness-card h2{font-size:17px}.integration-readiness-card>div p,.integration-readiness-card>p,.integration-readiness-card>small{color:var(--muted);font-size:9px;line-height:1.55}.integration-readiness-card>small{display:block}.integration-readiness-card>div{border-top:1px solid var(--border);padding-top:10px}.integration-readiness-card>div strong{font-size:9px}.integration-readiness-card>div p{margin:4px 0 0}.integration-status{border-radius:20px;padding:5px 8px;font-size:8px;font-weight:600}.integration-status.configured{color:#087260;background:#e1f7f2}.integration-status.local_ready{color:#315fa8;background:#eaf2ff}.integration-status.awaiting_owner{color:#8a5d00;background:#fff4d4}.integration-status.parked{color:#667085;background:#eef1f5}.integration-release-order{margin-top:16px;padding:20px}.integration-release-order h2{margin:0 0 12px;font-size:17px}.integration-release-order ol{color:var(--body);gap:8px;margin:0;padding-left:22px;font-size:10px;display:grid}.integration-release-order li::marker{color:var(--teal);font-weight:700}@media (max-width:760px){.settings-section-nav{overflow-x:auto}.settings-section-nav a{white-space:nowrap}.integration-readiness-grid{grid-template-columns:1fr}.integration-safety-banner{padding:15px}}.legal-review-page{background:#f7f9fc;min-height:100dvh;padding:32px}.legal-review-page>header{justify-content:space-between;align-items:center;gap:18px;width:min(920px,100%);margin:0 auto 20px;display:flex}.legal-review-page>header>a{color:var(--navy);align-items:center;gap:4px;font-size:23px;text-decoration:none;display:flex}.legal-review-page>header>a img{object-fit:cover;object-position:top;width:54px;height:42px}.legal-review-page>header>span{color:#8a5d00;background:#fff4d4;border-radius:20px;padding:6px 9px;font-size:9px;font-weight:600}.legal-review-page>article{border:1px solid var(--border);background:#fff;border-radius:18px;width:min(920px,100%);margin:auto;padding:42px;box-shadow:0 18px 50px #0017370c}.legal-review-page h1{margin:8px 0 10px;font-size:38px}.legal-review-intro{max-width:720px;color:var(--muted);line-height:1.65}.legal-review-page aside{color:#714d00;background:#fffaf0;border:1px solid #efd48c;border-radius:12px;margin:24px 0;padding:17px}.legal-review-page aside p{margin:5px 0 0;font-size:11px;line-height:1.55}.legal-review-page article>section{border-top:1px solid var(--border);padding:18px 0}.legal-review-page h2{font-size:18px}.legal-review-page li{color:var(--body);margin:7px 0;font-size:11px;line-height:1.55}.legal-review-page footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;padding-top:20px;font-size:10px;display:flex}.legal-review-page footer a{color:var(--blue)}@media (max-width:680px){.legal-review-page{padding:16px}.legal-review-page>header{display:grid}.legal-review-page>header>span{justify-self:start}.legal-review-page>article{padding:24px 20px}.legal-review-page h1{font-size:30px}.legal-review-page footer{display:grid}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}