:root{--surface:#fff;--canvas:#f7f7f3;--ink:#172f3e;--muted:#687782;--line:#dce2e5;--soft:#f0f3f5;--accent:#0b4565}
.team-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem}.section-tabs{display:flex;gap:.65rem;flex-wrap:wrap;margin:1rem 0 1.5rem}.section-tabs .button{min-height:44px}.section-mode{margin:1rem 0}.section-mode form{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.section-mode .checkbox,.section-mode button{grid-column:1/-1}.team-scope{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin:1.2rem 0}.team-board-help{color:var(--muted);font-size:.95rem}.team-workbench{display:grid;grid-template-columns:minmax(235px,280px) minmax(0,1fr);gap:1rem;align-items:start}.team-workbench:not(:has(.unassigned-pool)){grid-template-columns:1fr}.unassigned-pool{position:sticky;top:1rem;max-height:75vh;overflow:auto;padding:1rem!important}.group-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;min-width:0}.group-card{padding:1.1rem!important;min-width:0;margin:0!important}.group-card h3{margin:.5rem 0}.group-card .card-top img{width:48px;height:48px;object-fit:cover;border-radius:12px}.group-members{display:grid;gap:.4rem;min-height:72px;margin:.8rem 0}.team-person{display:flex;gap:.55rem;align-items:center;background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:.65rem;margin:.45rem 0;min-width:0;color:var(--ink)}.team-person[draggable=true]{cursor:grab}.person-mark{width:30px;height:30px;display:grid;place-items:center;flex:none;border-radius:50%;background:var(--surface);font-size:.8rem}.person-copy{min-width:0;flex:1}.person-copy strong{font-size:.85rem;line-height:1.4;display:block;overflow-wrap:anywhere}.person-copy small{font-size:.72rem;color:var(--muted);display:block}.move-person{font-size:.75rem!important;min-height:40px;padding:.35rem .55rem!important;flex:none}.is-dragging{opacity:.45}.drop-ready{outline:3px solid var(--accent);outline-offset:2px;background:var(--soft)!important}.empty-team{margin:0;border:1px dashed var(--line);border-radius:10px;text-align:center;padding:1.2rem .5rem;color:var(--muted);font-size:.85rem}.team-brand{border-top:1px solid var(--line);margin-top:1rem;padding-top:.8rem}.team-brand summary{font-size:.9rem}.team-brand form{margin-top:1rem}.group-card>.button,.group-card>form>button{width:100%;margin:.4rem 0}.request-row small{display:block;color:var(--muted)}.team-board-status:empty{display:none}
@media(max-width:1000px){.team-workbench{grid-template-columns:230px minmax(0,1fr)}.group-cards{grid-template-columns:1fr}}
@media(max-width:680px){.team-heading{display:block}.team-workbench{display:flex;flex-direction:column}.unassigned-pool{position:static;width:100%;max-height:330px}.group-cards{width:100%;grid-template-columns:1fr}.section-mode form{grid-template-columns:1fr}.section-tabs .button{flex:1;text-align:center}.group-card{overflow-wrap:anywhere}.team-person .move-person{min-width:48px}.request-row{flex-wrap:wrap}}
html[data-theme=dark]{color-scheme:dark;--surface:#20272d;--canvas:#151a1f;--ink:#ecf0f3;--muted:#b0bcc5;--line:#3b4650;--soft:#2b343c;--accent:#99cee8}
body{background:var(--canvas);color:var(--ink)}a{color:var(--accent)}.topbar,.panel,.mobile-bottom,dialog{background:var(--surface);color:var(--ink);border-color:var(--line)}.layout{max-width:1500px}main{width:100%}.topbar{padding:16px max(20px,calc((100vw - 1430px)/2));gap:20px}.top-actions{flex-wrap:wrap}.brand strong{font-size:16px}.account-shortcut{display:flex;align-items:center;gap:10px;color:var(--ink);font-size:13px}.avatar{border-radius:50%;object-fit:cover;flex-shrink:0;background:var(--soft);color:var(--ink)}.brand img{background:white;border-radius:6px}.theme-toggle{font-size:22px;min-width:44px}.hub-navigation{position:relative;display:flex;justify-content:center;gap:10px;background:var(--surface);border-bottom:1px solid var(--line);padding:0 20px;z-index:40}.nav-group{border:0;padding:0}.nav-group>summary{list-style:none;display:flex;align-items:center;gap:14px;padding:14px 20px;border-bottom:3px solid transparent;font-weight:600}.nav-group>summary::-webkit-details-marker{display:none}.nav-group[open]>summary{border-color:#be3856;background:var(--soft)}.nav-group>summary .en{font-size:11px}.mega-panel{position:absolute;top:100%;inset-inline:3%;background:var(--surface);border:1px solid var(--line);border-radius:0 0 22px 22px;box-shadow:0 22px 35px #0002;padding:26px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.mega-link{display:flex;gap:14px;align-items:flex-start;color:var(--ink);padding:15px;border-radius:14px}.menu-icon{display:grid;place-items:center;min-width:44px;height:44px;border-radius:12px;background:var(--soft)}.mega-link small{display:block;margin-top:5px;color:var(--muted)}.mega-link:hover,.mega-link[aria-current]{background:var(--soft)}.people-filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:16px;align-items:end}.people-filters label{margin:0}.person-row{display:grid;grid-template-columns:minmax(230px,2fr) 1fr 1fr auto;align-items:center;gap:18px;padding:22px 0;border-top:1px solid var(--line)}.person-identity{display:flex;align-items:center;gap:14px;min-width:0}.person-identity>div{min-width:0}.person-identity a{display:block;overflow-wrap:anywhere;font-size:13px;color:var(--muted);margin-top:5px}.person-actions{display:flex;gap:8px}.person-actions form{margin:0}.person-row small{display:block;font-size:11px;margin-top:8px}.status-chip{display:inline-block;padding:4px 12px;border-radius:20px;background:#e3f4ec;color:#176143;font-size:12px}.status-chip.inactive{background:#fae9eb;color:#9c273f}.role-chip{font-size:12px;color:var(--accent)}.account-dialog{border:1px solid var(--line);border-radius:20px;padding:26px;width:min(720px,calc(100vw - 28px));max-height:88dvh;overflow-y:auto;box-shadow:0 24px 90px #0004}.account-dialog::backdrop{background:#14202b99;backdrop-filter:blur(4px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.dialog-heading h2{margin:0}.account-dialog details form{max-width:none}.profile-layout{display:grid;grid-template-columns:minmax(220px,1fr) 2fr;gap:24px}.profile-summary{text-align:center}.profile-summary>.avatar{width:100px;height:100px;margin:0 auto 20px;font-size:36px}.profile-summary h3{margin-top:30px}.profile-summary p{overflow-wrap:anywhere}.permissions-table td,.permissions-table th{white-space:normal;min-width:115px}.permissions-table th:first-child{min-width:210px}.permissions-table td{text-align:center}.permission-guide{overflow:hidden}button,.button{border-color:var(--line);background:var(--surface);color:var(--ink);border-radius:12px}button.primary,.primary.button{background:#0b4565;color:white}input,textarea,select{background:var(--surface);color:var(--ink);border-color:var(--line)}.muted,.page-heading p,.site-footer{color:var(--muted)}
html[data-theme=dark] .languages,html[data-theme=dark] .languages button[aria-pressed=true],html[data-theme=dark] .badge,html[data-theme=dark] .idea,html[data-theme=dark] .empty,html[data-theme=dark] .stage-counts a,html[data-theme=dark] .meeting-next,html[data-theme=dark] .message-bubble,html[data-theme=dark] .notification.unread,html[data-theme=dark] nav a[aria-current]{background:var(--soft);color:var(--ink);border-color:var(--line)}html[data-theme=dark] .team-card p,html[data-theme=dark] time,html[data-theme=dark] .entry-comment time,html[data-theme=dark] .message-bubble small{color:var(--muted)}html[data-theme=dark] .notice{background:#21382b;color:#c0e9ce;border-color:#456550}html[data-theme=dark] .notice.error{background:#45262c;color:#ffd0d6;border-color:#88515b}html[data-theme=dark] fieldset:disabled input,html[data-theme=dark] fieldset:disabled textarea,html[data-theme=dark] fieldset:disabled select{background:var(--soft);color:var(--ink)}html[data-theme=dark] .notification-shortcut{color:var(--accent)}th,td,details,.card-bottom{border-color:var(--line)}
@media(max-width:1000px){.brand strong,.account-shortcut>span{display:none}.person-row{grid-template-columns:minmax(200px,2fr) 1fr 1fr}.person-actions{grid-column:1/-1}.mega-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.people-filters{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.topbar{padding:10px 14px}.topbar .brand img{width:122px}.account-shortcut .avatar{width:34px;height:34px}.top-actions{gap:4px}.topbar .mobile-menu-toggle{min-width:44px}.theme-toggle{padding:6px}.hub-navigation{display:none!important}.menu-open #hub-navigation{display:block!important;padding:8px 14px;max-height:calc(100dvh - 160px);overflow-y:auto}.nav-group>summary{padding:12px}.mega-panel{position:static;display:grid;grid-template-columns:1fr;border:0;padding:8px;box-shadow:none}.mega-link{padding:12px}.nav-group{border-bottom:1px solid var(--line)}.person-row{grid-template-columns:1fr 1fr;gap:14px;padding:20px 0}.person-identity{grid-column:1/-1}.person-actions{grid-column:1/-1;justify-content:flex-end}.person-actions button{min-width:90px}.people-filters{grid-template-columns:1fr 1fr;gap:10px}.people-filters>label:first-of-type{grid-column:1/-1}.people-filters>button{grid-column:1/-1}.profile-layout{grid-template-columns:1fr;gap:0}.account-dialog{padding:20px;max-height:90dvh}.account-dialog .form-grid{grid-template-columns:1fr;gap:0}.account-dialog button.primary{width:100%}.permissions-table{font-size:12px}.permission-guide .table-scroll{border:1px solid var(--line);border-radius:10px}.page-heading>button{width:100%}.topbar{position:relative}.top-actions .theme-toggle{display:inline-flex}.profile-summary .button{margin:5px}.mobile-bottom{background:var(--surface)}}
@media print{.hub-navigation,.theme-toggle,.account-dialog{display:none!important}}

.team-logo{width:72px;height:72px;object-fit:cover;border-radius:16px;margin-top:18px}.student-class-field[hidden]{display:none}
.page-heading.section-title p .ar,.page-heading.section-title p .en,.people-filters+p .ar,.people-filters+p .en{display:inline;margin-inline:4px}.page-heading.section-title{margin-top:0}.page-heading.section-title h1{margin-bottom:12px}.person-row .badge{margin-inline:8px}.person-actions .ar,.person-actions .en{display:block}
.account-shortcut>.avatar{display:grid}

/* Learning library: quiet neutral surfaces, REA accents and explicit contrast. */
.workshop-banner .button,.workshop-banner .button:hover{background:#fff;color:#163c53;border-color:#fff}.workshop-banner .button .en{opacity:1}
.inspiration-filter{display:grid;grid-template-columns:2fr 1fr auto;align-items:end;gap:16px;margin:24px 0}.inspiration-filter label{margin:0}.inspiration-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.inspiration-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);overflow:hidden;transition:transform .18s,border-color .18s}.inspiration-card:hover{transform:translateY(-2px);border-color:var(--accent)}.inspiration-art{display:block;width:100%;height:auto;aspect-ratio:340/230}.inspiration-card-copy{padding:22px;display:flex;flex-direction:column;flex:1}.inspiration-meta{font:12px system-ui,sans-serif;color:var(--muted);margin-bottom:12px;direction:ltr;text-align:start}.inspiration-card h2{font-size:20px;line-height:1.8;margin-bottom:10px}.inspiration-card p{font-size:14px;color:var(--muted)}.inspiration-open{margin-top:auto;padding-top:12px;font-weight:700;color:var(--accent)}.inspiration-intro{display:grid;grid-template-columns:3fr 2fr;align-items:center;gap:36px;margin-bottom:36px}.inspiration-intro .inspiration-art{border-radius:14px}.inspiration-reading{max-width:850px;margin-inline:auto}.inspiration-reading section{padding:24px 0;border-bottom:1px solid var(--line)}.inspiration-reading p{font-size:17px;line-height:1.95}.inspiration-reading h2{font-size:23px}.inspiration-question{background:var(--surface);border:1px solid var(--line);border-inline-start:4px solid #9c4c49;border-radius:12px;padding:24px!important;margin:24px 0}.inspiration-question h3{font-size:17px;margin-top:24px}.inspiration-reading .button{margin:5px 0}.inspiration-reading>.small{margin-top:24px;font-size:12px}
@media(max-width:1000px){.inspiration-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.inspiration-grid{grid-template-columns:1fr;gap:18px}.inspiration-filter{grid-template-columns:1fr}.inspiration-intro{grid-template-columns:1fr;gap:18px}.inspiration-intro .inspiration-art{max-height:260px}.inspiration-reading p{font-size:16px}.inspiration-card-copy{padding:20px}.bank-actions{display:flex;flex-wrap:wrap;gap:8px}.bank-actions .button{flex:1 1 auto}.inspiration-reading .button{width:100%}}@media(prefers-reduced-motion:reduce){.inspiration-card{transition:none}.inspiration-card:hover{transform:none}}
/* Arabic marks need natural shaping, no tracking and sufficient line boxes. */
@font-face{font-family:Cairo;src:url('/file.php?path=assets/cairo-ar.woff2');font-style:normal;font-weight:200 1000;font-display:swap}
html[lang=ar] body{line-height:1.85}.ar,[lang=ar]{letter-spacing:normal;font-feature-settings:normal}.ar{line-height:1.85;padding-block:.06em}.en{line-height:1.55;opacity:1}h1,h2,h3,button,.button{overflow:visible}input,textarea{line-height:1.85}.inspiration-card{overflow:hidden}

/* Conversation workspace: compact roster, readable bubbles, mobile drill-in. */
.chat-page-heading{margin-bottom:20px}.chat-page-heading h1{font-size:28px;margin-bottom:4px}.chat-page-heading p{margin:0;font-size:14px}.chat-workspace{display:grid;grid-template-columns:minmax(280px,330px) minmax(0,1fr);height:min(760px,75dvh);min-height:500px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface)}.chat-sidebar{display:flex;flex-direction:column;border-inline-end:1px solid var(--line);min-height:0}.chat-sidebar-heading{padding:16px;display:flex;align-items:center;justify-content:space-between;gap:8px}.chat-sidebar-heading h2{font-size:18px;margin:0}.chat-sidebar-heading .button{padding:6px 10px}.chat-search{display:flex;align-items:end;gap:6px;padding:0 14px 14px;border-bottom:1px solid var(--line)}.chat-search label{font-size:12px;margin:0;flex:1;min-width:0}.chat-search button{padding:8px}.chat-search input{font-size:13px;min-height:44px}.chat-list{overflow-y:auto;min-height:0;flex:1}.chat-row{display:flex;align-items:center;gap:12px;padding:16px 14px;border-bottom:1px solid var(--line);color:var(--ink);min-width:0}.chat-row:hover,.chat-row[aria-current]{background:var(--soft)}.chat-row[aria-current]{border-inline-start:3px solid var(--accent)}.chat-row-copy{display:flex;flex:1;flex-direction:column;min-width:0;gap:3px}.chat-row strong{font-size:14px}.chat-subject,.chat-preview{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.9;padding-block:2px}.chat-unread{background:#9b334c;color:white;border-radius:15px;min-width:24px;text-align:center;font:12px/24px system-ui}.chat-main{display:flex;flex-direction:column;min-height:0;min-width:0;background:var(--canvas)}.chat-welcome{margin:auto;padding:30px;text-align:center;max-width:520px}.chat-welcome-mark{font-size:52px;color:var(--muted)}.chat-welcome h2{font-size:23px}.chat-welcome p{color:var(--muted)}.chat-thread-heading{padding:14px 20px;display:flex;align-items:center;gap:14px;background:var(--surface);border-bottom:1px solid var(--line)}.chat-thread-heading>div{flex:1;min-width:0}.chat-thread-heading h2{font-size:18px;margin:0;overflow-wrap:anywhere}.chat-thread-heading p{font-size:12px;color:var(--muted);margin:0}.chat-back{display:none}.chat-transcript{flex:1;min-height:0;overflow-y:auto;padding:22px;display:flex;flex-direction:column;gap:12px;scrollbar-gutter:stable}.chat-bubble{align-self:flex-start;max-width:80%;background:var(--surface);border:1px solid var(--line);border-radius:14px 14px 2px 14px;padding:12px 16px;overflow-wrap:anywhere}.chat-bubble.mine{align-self:flex-end;background:#e5eee8;border-color:#c2d2c7;border-radius:14px 14px 14px 2px;color:#203a2b}.chat-bubble strong{font-size:12px}.chat-bubble p{white-space:pre-wrap;font-size:15px;margin:6px 0;line-height:1.9}.chat-bubble time{font:11px/1.5 system-ui;color:var(--muted);display:block}.chat-day{align-self:center;color:var(--muted);font:12px system-ui;background:var(--surface);border-radius:8px;padding:6px 10px;margin:4px}.chat-compose{border-top:1px solid var(--line);padding:12px 18px;background:var(--surface)}.chat-compose label{font-size:12px;margin-bottom:4px}.chat-compose-row{display:flex;gap:10px;align-items:end}.chat-compose-row textarea{min-height:56px;max-height:150px;flex:1;min-width:0;resize:vertical;font-size:15px}.chat-compose-row button{min-height:56px}.chat-empty-list{padding:24px;font-size:14px;color:var(--muted)}html[data-theme=dark] .chat-bubble.mine{background:#2d4239;border-color:#476251;color:#ecf4ee}html[data-theme=dark] .chat-bubble.mine time{color:#c3d1c8}
@media(max-width:760px){.chat-workspace{display:block;height:calc(100dvh - 260px);min-height:440px;border-radius:12px}.chat-sidebar{height:100%;border:0}.chat-main{display:none;height:100%}.has-conversation .chat-sidebar{display:none}.has-conversation .chat-main{display:flex}.chat-back{display:inline-flex}.chat-thread-heading{padding:12px;gap:8px}.chat-thread-heading .button{padding:7px 10px;min-width:44px}.chat-transcript{padding:12px;gap:10px}.chat-bubble{max-width:90%;padding:10px 12px}.chat-compose{padding:10px}.chat-compose-row{gap:6px}.chat-compose-row button{padding:8px 12px}.chat-compose .small{font-size:10px}.chat-page-heading p{display:none}.chat-page-heading h1{font-size:23px}.chat-workspace .en{font-size:.8em}}
html[data-theme=dark] .eyebrow{color:#e5a4ae}
main:has(.chat-workspace){padding-top:20px}.chat-page-heading h1{display:flex;align-items:baseline;gap:12px}.chat-page-heading h1 .en{font-size:16px}.chat-sidebar-heading .button{flex-wrap:wrap}.chat-sidebar-heading .button .ar,.chat-sidebar-heading .button .en{display:inline}
@media(max-width:760px){main:has(.chat-workspace){padding:12px 12px 105px}.chat-page-heading{margin-bottom:12px}.chat-page-heading h1{font-size:22px;margin:0}.chat-workspace{height:calc(100dvh - 290px);min-height:350px}.chat-compose .small{display:none}.chat-thread-heading h2{font-size:16px}.chat-thread-heading p .en{display:none}}

.team-heading{padding-block:0;margin-bottom:20px}.team-heading h1{font-size:clamp(1.65rem,3vw,2.4rem);margin:8px 0}.team-heading p{margin:8px 0}.requests-panel{padding:18px 22px}.requests-panel h3{margin:0 0 8px}.requests-panel p{margin:4px 0}.member-responsibility{color:var(--accent);font-weight:600}

.project-picker,.directory-filter{display:flex;align-items:end;flex-wrap:wrap;gap:14px;margin-bottom:22px}.project-picker label{flex:1;min-width:200px}.directory-filter label{flex:1;min-width:180px}.recipient-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:340px;overflow:auto;margin-bottom:20px}.recipient-card{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--soft);cursor:pointer;min-width:0}.recipient-card input{width:18px;flex:none}.recipient-card span{min-width:0;overflow-wrap:anywhere}.recipient-card small,.history-row span,.history-row small{display:block;color:var(--muted)}.recipient-card:has(input:checked){outline:2px solid var(--accent)}.history-row{padding:16px 0;border-bottom:1px solid var(--line)}.project-team-summary{padding:18px;border:1px solid var(--line);border-radius:14px}.project-team-summary small{display:block;margin:8px 0}.project-card h2{font-size:1.35rem}.project-card .bank-excerpt{max-height:6em;overflow:hidden}@media(max-width:680px){.recipient-grid{grid-template-columns:1fr}.project-picker,.directory-filter{display:grid;grid-template-columns:minmax(0,1fr)}.project-picker label,.directory-filter label{min-width:0}.project-picker .button{width:100%}}

.enrollment-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:1rem 0}.enrollment-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;max-height:380px;overflow:auto}.enrollment-person{display:flex!important;align-items:center;gap:.7rem;padding:.8rem;border:1px solid var(--line);border-radius:12px;background:var(--surface);margin:0!important;min-width:0}.enrollment-person input{width:20px;min-width:20px;height:20px;margin:0}.enrollment-person>span:first-of-type{flex:1;min-width:0;overflow-wrap:anywhere}.enrollment-person small{display:block;color:var(--muted)}.enrollment-person .badge{font-size:.7rem}.enrollment-toolbar output{white-space:nowrap;direction:ltr}@media(max-width:640px){.enrollment-list{grid-template-columns:1fr}.enrollment-person{flex-wrap:wrap}}

.staff-class-card{margin:1rem 0!important;padding:1rem!important}.staff-class-options{display:flex;flex-wrap:wrap;gap:.75rem}.staff-class-options .checkbox{border:1px solid var(--line);border-radius:8px;padding:.6rem 1rem}.staff-class-card fieldset{border:0;padding:0;margin:0 0 1rem}.staff-class-card form{max-width:none}.staff-class-card h4{margin:0 0 1rem}@media(max-width:640px){.staff-class-options{display:grid;grid-template-columns:1fr}.staff-class-card button{width:100%}}
.staff-class-card button{flex-direction:column;gap:.2rem}
.guide-shortcut{min-height:44px;white-space:nowrap;border:1px solid var(--accent);color:var(--text);display:inline-flex;gap:.4rem;align-items:center}.guide-page{max-width:920px;margin:auto}.guide-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.guide-actions a{min-height:48px;justify-content:center}.guide-topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:28px 0}.guide-topics>a{display:flex;flex-direction:column;gap:12px;padding:20px;border:1px solid var(--line);border-radius:12px;text-decoration:none;background:var(--surface);color:var(--text)}.guide-topics>a>span{font-size:14px;color:var(--muted)}@media(max-width:640px){.guide-shortcut{padding:8px 12px!important}.guide-shortcut .en{display:none!important}.guide-actions{display:grid;grid-template-columns:1fr}.guide-topics{grid-template-columns:1fr}.guide-topics>a{padding:16px}.guide-page h1{font-size:28px}}

.responsibility-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.role-person,.role-explainer{border:1px solid var(--line);border-radius:16px;padding:20px;min-width:0}.role-choice{display:flex;align-items:center;gap:12px;min-height:48px;cursor:pointer}.role-choice input{width:20px;height:20px;flex:none}.role-person fieldset{border:0;padding:0;margin:14px 0}.role-person h3,.member-responsibility{overflow-wrap:anywhere}.role-person button{min-height:48px}.role-guide li{margin-block:12px}@media(max-width:680px){.responsibility-grid{grid-template-columns:1fr}.role-person,.role-explainer{padding:16px}.role-person button{width:100%}}

.presence-status{display:block;font-size:.78rem;line-height:1.5;overflow-wrap:anywhere}.presence-status.is-online{color:#23784b}.presence-status.is-online:before,.presence-person:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#35a56a;margin-inline-end:6px}.presence-panel [data-presence-list]{display:flex;flex-wrap:wrap;gap:10px}.presence-person{border:1px solid var(--line);padding:7px 12px;border-radius:20px;font-size:.9rem}.chat-row>.presence-status{max-width:110px}[data-theme="dark"] .presence-status.is-online{color:#80d9a6}@media(max-width:680px){.chat-row>.presence-status{max-width:80px;font-size:.7rem}}
.role-person .role-choice{flex-direction:row;flex-wrap:wrap;justify-content:flex-start;gap:8px;text-align:start}.role-person .role-choice .en{font-size:.8rem}

.presence-person{position:relative;max-width:100%;padding:0;overflow-wrap:anywhere}.presence-person:before{display:none}.presence-person summary{cursor:pointer;min-height:46px;padding:10px 14px;list-style:none}.presence-person summary:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#35a56a;margin-inline-end:7px}.presence-person summary:after{content:"⌄";margin-inline-start:10px}.presence-person[open]{border-radius:16px}.presence-actions{display:grid;gap:4px;padding:0 8px 8px}.presence-actions a{display:flex;align-items:center;min-height:46px;padding:8px 12px;border-radius:8px;text-decoration:none;color:inherit}.presence-actions a:hover,.presence-actions a:focus-visible{background:var(--line)}.presence-person summary:focus-visible{outline:2px solid currentColor;border-radius:16px}.person-profile>.avatar{display:flex;margin-block:20px;width:72px;height:72px;font-size:1.6rem}

[data-message-count]{display:inline-grid;place-items:center;min-width:21px;height:21px;padding:0 5px;background:#b72a46;color:#fff;border-radius:14px;font:700 11px system-ui}[data-message-count][hidden],[data-chat-unread][hidden]{display:none}.message-shortcut{position:relative;gap:6px;min-height:44px}.message-shortcut svg{width:22px;height:22px}.mobile-bottom a{position:relative}.mobile-bottom [data-message-count]{position:absolute;top:3px;inset-inline-end:12px}.chat-receipt{display:block;color:var(--muted);font-size:11px;line-height:1.6}.chat-receipt.is-read{color:#137391}[data-theme=dark] .chat-receipt.is-read{color:#80d9e8}.chat-toast{position:fixed;bottom:24px;inset-inline-end:24px;z-index:200;max-width:min(360px,calc(100vw - 24px));padding:16px 20px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--text);box-shadow:0 8px 30px #0002;display:flex;align-items:center;gap:12px}.chat-toast a{color:inherit;min-height:44px;display:flex;align-items:center;text-decoration:none;overflow-wrap:anywhere}.chat-toast button{min-width:44px;min-height:44px}.chat-compose [role=status]{display:block!important}@media(max-width:760px){.chat-toast{bottom:90px;inset-inline-end:12px}.top-actions .message-shortcut{padding:8px}.chat-receipt{font-size:10px}}

.message-shortcut{display:inline-flex!important;flex-direction:row!important;align-items:center}@media(max-width:760px){.top-actions{gap:4px}.top-actions .guide-shortcut{font-size:12px;padding:8px}.top-actions .message-shortcut{padding:8px!important}}

.guest .brand strong,.guest .theme-toggle{display:none}.guest .topbar{padding:12px 24px}.guest .login-main{grid-template-columns:1fr minmax(320px,420px);gap:70px;min-height:calc(100dvh - 150px);padding:40px 24px;max-width:1060px}.login-panel{order:2;border-radius:24px;padding:28px;margin:0;box-shadow:0 12px 40px #00000004}.login-story{order:1}.login-wave{display:grid;place-items:center;width:42px;height:42px;margin-bottom:14px;border-radius:14px;background:var(--bg)}.login-panel h1{font-size:26px;margin:0 0 8px}.login-panel h1 .en{font-size:15px;margin-top:4px}.login-subtitle{font-size:13px;margin-bottom:22px}.login-subtitle .en{margin-top:4px}.microsoft-signin{min-height:56px;border-radius:15px;display:flex;gap:12px;padding:10px 14px;text-align:start}.microsoft-signin svg{flex-shrink:0}.microsoft-signin>span:nth-child(2){flex:1}.microsoft-signin .en{font-size:11px;margin-top:3px}.school-login{margin-bottom:10px}.email-login{border:1px solid var(--line);border-radius:15px;padding:0}.email-login summary{list-style:none;display:flex;gap:12px;align-items:center;min-height:56px;padding:10px 14px;font-size:14px;font-weight:700}.email-login summary::-webkit-details-marker{display:none}.email-login summary>svg{width:21px;height:21px;flex-shrink:0}.email-login summary>span:nth-child(2){flex:1}.email-login summary .en{font-size:11px;margin-top:3px}.email-login[open] .login-chevron{transform:rotate(180deg)}.email-login form{padding:0 16px 16px;margin:12px 0 0}.email-login input{min-height:46px;border-radius:12px}.email-login button{min-height:46px;border-radius:12px}.login-help{border-top:1px solid var(--line);padding-top:18px;margin:18px 0 0;font-size:11px;line-height:1.9}.login-help .en{font-size:10px;margin-top:4px}.login-story h2{font-size:34px;margin-bottom:16px}.login-story h2 .en{font-size:20px;margin-top:6px}.login-story .journey{gap:8px;margin:0}.login-story .journey>span{display:flex;gap:5px;align-items:center;min-width:0;border:1px solid var(--line);border-radius:30px;padding:7px 11px;background:var(--surface);font-size:11px}.login-story .journey .en{font-size:10px}@media(max-width:760px){.guest .topbar{padding:10px 15px;gap:12px}.guest .brand img{width:145px;height:42px}.guest .top-actions{gap:0}.guest .languages{padding:3px}.guest .languages button{padding:9px 8px;min-height:38px}.guest .login-main{display:flex;flex-direction:column;gap:34px;padding:16px 15px 40px;min-height:0;width:100%}.guest .login-panel{order:0;width:100%;max-width:430px;padding:22px 20px;border-radius:24px}.guest .login-story{order:1;text-align:center;padding:0 8px 12px}.login-story h2{font-size:28px}.login-story .journey{justify-content:center}.login-story h2 .en{font-size:16px}.guest .site-footer{padding:22px 16px;font-size:10px}}

.guest .mobile-menu-toggle{display:none!important}.guest .languages{display:flex!important}.guest .topbar .top-actions{margin:0}.login-wave{font-size:22px}.email-login summary svg{stroke:currentColor;fill:none}
