@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;650;700;750;800&family=Noto+Sans+KR:wght@400;450;500;550;600;650;700;750;800&display=swap";.conversation-search{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:var(--radius-sm);padding:0 12px;height:38px;color:var(--muted);margin-bottom:10px}.conversation-search input{flex:1;border:0;outline:0;background:transparent;font-size:var(--font-xs);color:var(--text)}.conversation-search:focus-within{border-color:var(--brand-primary)}.conversation-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.conversation-chips>button{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:var(--radius-xs);background:var(--brand-soft);color:var(--brand-ink);font-size:var(--font-xs)}.conversation-pick{max-height:300px;overflow-y:auto}.conversation-pick>button.selected{background:var(--brand-soft)}.conversation-check{width:20px;height:20px;border:1px solid var(--line);border-radius:var(--radius-xs);display:inline-flex;align-items:center;justify-content:center;color:var(--on-brand);flex-shrink:0}.conversation-pick>button.selected .conversation-check{background:var(--brand-primary);border-color:var(--brand-primary)}.conversation-empty{padding:20px 8px;text-align:center;color:var(--muted);font-size:var(--font-xs)}.conversation-name,.conversation-rename label{display:block;font-size:var(--font-xs);color:var(--muted);margin-top:16px}.conversation-name>span{color:var(--muted)}.conversation-name input,.conversation-rename input{display:block;width:100%;margin-top:6px;height:38px;border:1px solid var(--line);border-radius:var(--radius-sm);padding:0 12px;font-size:var(--font-xs);background:var(--surface);color:var(--text)}.conversation-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:16px}.conversation-actions>span{margin-right:auto;font-size:var(--font-xs);color:var(--muted)}.conversation-rename{display:flex;align-items:flex-end;gap:8px}.conversation-rename label{flex:1;margin-top:0}.conversation-rename .secondary-btn{height:38px}.conversation-members{max-height:260px;overflow-y:auto}.conversation-member{display:flex;align-items:center;gap:12px;padding:8px}.conversation-member>div{flex:1}.conversation-add,.conversation-add-open{margin-top:10px}.conversation-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:16px;margin-top:16px;border-top:1px solid var(--line)}.conversation-footer .secondary-btn{gap:6px}.conversation-leave{color:var(--danger);gap:6px}.archived-toggle{display:flex;align-items:center;gap:6px;width:100%;padding:6px 10px;font-size:var(--font-xs);color:var(--muted);text-align:left}.archived-toggle:hover{color:var(--brand-ink)}.channel-link.archived{opacity:.72}.group-icon{width:22px;height:22px;border-radius:var(--radius-xs);background:var(--brand-soft);color:var(--brand-primary);display:inline-flex;align-items:center;justify-content:center;font-size:var(--font-xs);font-weight:600;flex-shrink:0}.message-broadcast{display:inline-flex;align-items:center;gap:4px;max-width:100%;margin-bottom:4px;padding:0;font-size:var(--font-xs);color:var(--muted);text-align:left}.message-broadcast>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-broadcast:hover{color:var(--brand-primary)}.thread-also{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:var(--font-xs);color:var(--muted);cursor:pointer}.thread-also input{accent-color:var(--brand-primary)}.notify-settings{display:flex;flex-direction:column;gap:10px}.notify-row{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-sm)}.notify-row>div{flex:1}.notify-row strong{display:block;font-size:var(--font-xs);font-weight:600;color:var(--brand-ink)}.notify-row small{display:block;margin-top:4px;font-size:var(--font-xs);line-height:1.7;color:var(--muted)}.notify-status.on{color:var(--brand-primary)}.notify-status.denied,.notify-status.unsupported{color:var(--danger)}.notify-icon{color:var(--brand-primary);margin-top:2px}.notify-switch{position:relative;width:38px;height:22px;border-radius:999px;background:var(--line);flex-shrink:0;padding:0;transition:background var(--motion-fast) var(--ease-standard)}.notify-switch:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--surface);transition:transform var(--motion-fast) var(--ease-standard)}.notify-switch.on{background:var(--brand-primary)}.notify-switch.on:after{transform:translate(16px)}.notify-switch:disabled{opacity:.5;cursor:default}.notify-note,.notify-error{font-size:var(--font-xs);line-height:1.7;color:var(--muted)}.notify-error{color:var(--danger)}.channel-link.unread{font-weight:600;color:var(--brand-ink)}.channel-link.unread .channel-unread+.subject-dot{margin-left:6px}.channel-badge{margin-left:auto;min-width:18px;height:18px;padding:0 6px;border-radius:999px;background:var(--brand-primary);color:var(--on-brand);font-size:var(--font-xs);font-weight:600;line-height:18px;text-align:center}.rail-unread{position:absolute;right:12px;top:10px;width:8px;height:8px;border-radius:50%;background:var(--brand-pale);box-shadow:0 0 0 2px var(--rail)}.unread-jump-wrap{position:sticky;top:0;height:0;z-index:6;display:flex;justify-content:center}.unread-jump{margin-top:8px;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 4px 0 12px;border-radius:999px;background:var(--brand-primary);color:var(--on-brand);box-shadow:var(--shadow-lg);font-size:var(--font-xs);white-space:nowrap}.unread-jump>button{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 10px;border-radius:999px;color:var(--on-brand);font-size:var(--font-xs);font-weight:600;background:#ffffff29}.unread-jump>button:hover{background:#ffffff47}.unread-divider{display:flex;align-items:center;gap:8px;margin:8px 28px;color:var(--danger);font-size:var(--font-xs);font-weight:600}.unread-divider:before,.unread-divider:after{content:"";flex:1;height:1px;background:var(--danger-line)}.unread-divider:after{flex:0 0 24px}.messages-scroll .message{scroll-margin-top:48px}.campus-navigation{display:grid;gap:4px}.campus-nav-group{border-radius:var(--radius-md)}.campus-nav-group summary{display:flex;align-items:center;gap:8px;padding:12px 10px;cursor:pointer;list-style:none;color:var(--text);font-size:var(--font-xs);font-weight:600;border-radius:var(--radius-md);transition:background var(--motion-fast) var(--ease-standard)}.campus-nav-group summary::-webkit-details-marker{display:none}.campus-nav-group summary>svg:first-child{color:var(--muted);flex-shrink:0}.campus-nav-group summary>svg:last-child{margin-left:auto;color:var(--muted);transition:transform var(--motion-enter) var(--ease-standard)}.campus-nav-group[open] summary>svg:last-child{transform:rotate(180deg)}.campus-nav-group.current summary{color:var(--brand-primary)}.campus-nav-group.current summary>svg:first-child{color:var(--brand-primary)}.campus-nav-group summary:hover{background:var(--brand-soft);border-radius:var(--radius-md)}.campus-nav-children{display:grid;gap:3px;margin:0 0 8px 20px;padding-left:10px;border-left:1px solid var(--line)}.campus-nav-children .sidebar-nav{min-height:34px;height:auto;padding:8px 10px;font-size:var(--font-xs)}.campus-section-links{display:flex;align-items:center;gap:24px;min-height:47px;padding:6px 24px;border-bottom:1px solid var(--line);background:var(--surface);min-width:0;flex-shrink:0}.campus-section-links>span{font-size:var(--font-xs);font-weight:600;color:var(--muted);flex-shrink:0}.campus-section-links>div{display:flex;align-items:center;gap:6px;overflow-x:auto;min-width:0;scrollbar-width:thin}.campus-section-links a{text-decoration:none;white-space:nowrap;font-size:var(--font-xs);color:var(--muted);padding:8px 12px;border-radius:var(--radius-sm);transition:background var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard)}.campus-section-links a:hover{background:var(--brand-soft)}.campus-section-links a[aria-current=page]{background:var(--brand-pale);color:var(--brand-primary);font-weight:600}.campus-utilities{margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}.campus-nav-children .sidebar-nav>svg:last-child{margin-left:auto}.nav-dot{width:7px;height:7px;margin-left:auto;border-radius:50%;background:var(--brand-primary);flex-shrink:0}.nav-dot+.nav-dot{margin-left:-4px}.nav-dot~svg:last-child{margin-left:6px}@media(max-width:760px){.campus-section-links{padding:6px 12px;gap:10px}.campus-section-links>span{display:none}.campus-section-links a{padding:8px 10px}}.inbox-preview{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px;padding:24px;background:linear-gradient(115deg,var(--brand-soft),var(--surface))}.inbox-preview h3{display:flex;align-items:center;gap:8px;margin:8px 0;color:var(--brand-ink)}.inbox-preview p{margin:0;color:var(--muted);font-size:var(--font-sm)}.inbox-learning-shortcuts{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.inbox-learning-shortcuts button{display:inline-flex;align-items:center;gap:8px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px 12px;font-size:var(--font-xs)}.inbox-learning-shortcuts button.selected{background:var(--brand-pale);color:var(--brand-primary);border-color:var(--brand-highlight)}.inbox-learning-shortcuts span{padding:2px 4px;border-radius:var(--radius-xs);background:var(--brand-soft);color:var(--muted);font-size:var(--font-xs)}.inbox-toolbar{margin-top:24px}.inbox-category{display:flex;align-items:center;gap:10px;font-size:var(--font-xs);color:var(--muted)}.inbox-category select{padding:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--brand-ink);max-width:180px}.inbox-bulk{display:flex;align-items:center;gap:20px;padding:12px 4px;font-size:var(--font-xs);flex-wrap:wrap}.inbox-bulk label{display:flex;align-items:center;gap:8px}.inbox-page input[type=checkbox]{accent-color:var(--brand-primary);width:16px;height:16px;flex-shrink:0}.inbox-list{display:grid;gap:12px}.inbox-item{display:flex;align-items:flex-start;gap:16px;padding:24px;min-width:0}.inbox-item>input{margin-top:4px}.inbox-item.is-read{background:var(--canvas)}.inbox-item-content{min-width:0;flex:1}.inbox-item-tags{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.inbox-item-tags span{background:var(--brand-soft);color:var(--brand-ink);border-radius:var(--radius-xs);padding:4px 8px;font-size:var(--font-xs)}.inbox-item-tags b{font-weight:500;font-size:var(--font-xs);color:var(--danger)}.inbox-item-tags small{color:var(--brand-primary);font-size:var(--font-xs)}.inbox-item h3{font-size:var(--font-lg);line-height:1.6;margin:8px 0 4px;overflow-wrap:anywhere}.inbox-item p{font-size:var(--font-xs);color:var(--muted);line-height:1.7;margin:0 0 8px}.inbox-item time{font-size:var(--font-xs);color:var(--muted)}.inbox-item-actions{display:flex;align-items:center;flex-direction:column;gap:12px;flex-shrink:0}.inbox-item-actions .text-link{font-size:var(--font-xs)}.inbox-item-actions .primary-btn{font-size:var(--font-xs);min-height:34px;padding:8px 12px}.inbox-wake{display:flex;align-items:center;gap:4px;margin-top:8px!important}.inbox-pagination{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:20px;font-size:var(--font-xs);color:var(--muted)}@media(max-width:700px){.inbox-toolbar{align-items:center;gap:10px;flex-direction:row;margin:16px 0 8px}.inbox-item{position:relative;padding:16px;gap:10px;flex-wrap:wrap}.inbox-item-content{flex-basis:calc(100% - 32px)}.inbox-item-tags{padding-right:80px;min-height:34px}.inbox-item-actions .primary-btn{position:absolute;top:16px;right:16px}.inbox-item-actions{flex-direction:row;flex-wrap:wrap;margin-left:24px;gap:16px}.inbox-preview{padding:20px;align-items:flex-start;flex-direction:column}.inbox-preview .primary-btn{align-self:flex-end}.inbox-bulk{gap:16px}.inbox-category{font-size:var(--font-xs);gap:4px}.inbox-category select{width:104px;max-width:104px;padding:8px 6px;font-size:var(--font-xs)}}.request-toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:20px}.request-toolbar .learning-field{margin:0;min-width:135px}.request-toolbar>.primary-btn{margin-left:auto}.request-toolbar input{max-width:180px}.request-workspace{display:grid;gap:20px;grid-template-columns:1fr;align-items:start}.request-workspace.has-detail{grid-template-columns:minmax(220px,.8fr) minmax(350px,1.6fr)}.request-list{padding:20px;overflow:hidden}.request-list .card-title>span{font-size:var(--font-xs);color:var(--brand-ink)}.request-list-item{display:block;width:100%;text-align:left;border:1px solid var(--line);border-radius:var(--radius-md);padding:16px;margin-top:12px;background:var(--surface)}.request-list-item:hover,.request-list-item.selected{border-color:var(--brand-highlight);background:var(--brand-soft)}.request-list-item>div{display:flex;justify-content:space-between;gap:8px;align-items:center}.request-list-item>strong{display:block;color:var(--brand-ink);font-size:var(--font-xs);margin-top:12px}.request-list-item>p{color:var(--muted);font-size:var(--font-xs);line-height:1.8;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.request-list-item small,.request-list-footer{font-size:var(--font-xs);color:var(--muted)}.request-list-footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.request-status{display:inline-flex;padding:4px 6px;border-radius:var(--radius-xs);font-size:var(--font-xs);background:var(--brand-soft);color:var(--muted);white-space:nowrap}.request-status.pending,.request-status.needs_revision{color:var(--warning);background:var(--warning-soft)}.request-status.approved{color:var(--muted);background:var(--brand-soft)}.request-status.rejected{color:var(--danger);background:var(--danger-soft)}.request-detail,.request-form-card{padding:24px;min-width:0}.request-form-card{margin-bottom:20px}.request-detail-title>small{font-size:var(--font-xs);color:var(--brand-ink);margin-left:10px}.request-detail-title h3{color:var(--brand-ink);font-size:var(--font-lg);margin:16px 0 8px}.request-detail-title>p{color:var(--brand-ink);font-size:var(--font-xs)}.request-reason{margin:20px 0;background:var(--brand-soft);border-left:3px solid var(--brand-highlight);padding:16px;font-size:var(--font-xs);line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted)}.request-records{display:flex;gap:16px;align-items:center;padding:16px 0;border-block:1px solid var(--line);flex-wrap:wrap}.request-records>div{display:flex;flex-direction:column;gap:6px}.request-records small{font-size:var(--font-xs);color:var(--muted)}.request-records strong{font-size:var(--font-sm);color:var(--brand-ink)}.request-records>svg{color:var(--muted)}.request-review{margin:24px 0;padding:20px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--canvas)}.request-review h4,.request-history h4{display:flex;gap:8px;align-items:center;color:var(--brand-ink);margin:0 0 16px;font-size:var(--font-xs)}.request-review-actions,.request-student-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.request-review-actions>.primary-btn{margin-left:auto}.request-ack{display:flex;gap:8px;align-items:flex-start;color:var(--warning);font-size:var(--font-xs);line-height:1.8;padding:12px;background:var(--warning-soft);border-radius:var(--radius-sm);margin:16px 0}.request-ack input{margin-top:4px;accent-color:var(--brand-primary)}.request-conflict{padding:12px;background:var(--warning-soft);border-radius:var(--radius-sm);color:var(--warning);margin-bottom:16px;font-size:var(--font-xs);line-height:1.9}.request-conflict p{margin-top:0}.request-success{display:flex;gap:6px;align-items:flex-start;color:var(--success);background:var(--success-soft);padding:12px;border-radius:var(--radius-sm);font-size:var(--font-xs);line-height:1.8}.request-success svg{flex-shrink:0;margin-top:2px}.request-history{margin-top:28px}.request-history h4 span{margin-left:auto;color:var(--brand-ink);font-size:var(--font-xs)}.request-history ol{list-style:none;padding:0;margin:0}.request-history li{padding:12px 0 12px 16px;border-left:2px solid var(--line);position:relative}.request-history li:before{content:"";position:absolute;left:-4px;top:18px;border-radius:50%;background:var(--brand-primary);width:6px;height:6px}.request-history li>div{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.request-history li strong{color:var(--brand-ink);font-size:var(--font-xs)}.request-history li span,.request-history li small{color:var(--muted);font-size:var(--font-xs)}.request-history li p{color:var(--muted);font-size:var(--font-xs);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.request-pagination{display:flex;gap:16px;align-items:center;justify-content:center;padding-top:20px;font-size:var(--font-xs);color:var(--muted)}.request-pagination button{padding:6px;border:1px solid var(--line);border-radius:var(--radius-xs)}.request-pagination button:disabled{opacity:.4}.request-empty{text-align:center;padding:40px 20px;color:var(--muted)}.request-empty h3{font-size:var(--font-sm)}.request-empty p{font-size:var(--font-xs);line-height:1.8}.request-attendance-link{margin:20px 0}@media(max-width:1100px){.request-workspace.has-detail{grid-template-columns:1fr}.request-workspace.has-detail .request-list{max-height:360px;overflow:auto}}@media(max-width:650px){.request-detail,.request-form-card,.request-list{padding:16px}.request-review{padding:12px}.request-review-actions>button{padding:8px 10px;font-size:var(--font-xs)}.request-toolbar{gap:8px}.request-toolbar .learning-field{min-width:115px;flex:1}.request-toolbar>.primary-btn{margin-left:0}.request-history li>div{flex-direction:column;align-items:flex-start;gap:4px}.request-detail-title>small{display:block;margin:8px 0 0}}.pending-messages{max-height:190px;overflow:auto;border:1px solid var(--line);background:var(--canvas);border-radius:var(--radius-md);margin-bottom:10px;padding:8px 12px}.pending-heading{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:var(--font-xs)}.delivery-item{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px;min-width:0}.delivery-item.compact-delivery{border:none;background:transparent;padding:10px 0 3px;border-radius:0}.delivery-item-heading{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.delivery-item-heading strong{color:var(--brand-ink);font-size:var(--font-xs)}.delivery-item-heading time{font-size:var(--font-xs);color:var(--muted);margin-left:auto}.delivery-state{display:flex;align-items:center;gap:4px;font-size:var(--font-xs);padding:4px 6px;border-radius:var(--radius-xs)}.delivery-state.waiting{color:var(--warning);background:var(--warning-soft)}.delivery-state.failed{color:var(--danger);background:var(--danger-soft)}.delivery-item>p{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted);line-height:1.8;font-size:var(--font-xs)}.compact-delivery>p{margin:6px 0;font-size:var(--font-xs);max-height:40px;overflow:auto}.delivery-file{display:flex;gap:6px;align-items:center;font-size:var(--font-xs);color:var(--muted);overflow-wrap:anywhere}.delivery-error{display:block;color:var(--warning);font-size:var(--font-xs);margin-top:6px;line-height:1.8}.delivery-actions{display:flex;gap:16px;align-items:center;margin-top:12px;flex-wrap:wrap}.delivery-actions button{display:flex;align-items:center;gap:4px;font-size:var(--font-xs);color:var(--brand-primary);padding:0}.delivery-actions button:disabled{color:var(--brand-primary)}.outbox-summary{display:flex;gap:16px;align-items:center;padding:24px;border:1px solid var(--line);background:var(--brand-soft);border-radius:var(--radius-lg);margin-top:24px;color:var(--muted)}.outbox-summary strong{color:var(--brand-ink);font-size:var(--font-lg)}.outbox-summary p{font-size:var(--font-xs);line-height:1.9;margin:8px 0 0}.outbox-summary>span{margin-left:auto;font-size:var(--font-xs);white-space:nowrap}.outbox-note,.delivery-offline{color:var(--muted);font-size:var(--font-xs);line-height:1.9;margin:16px 0}.delivery-offline{display:flex;align-items:center;gap:6px}.outbox-list{display:grid;gap:12px;margin-top:20px}.outbox-empty{padding:70px 20px;text-align:center;color:var(--muted)}.outbox-empty h3{font-size:var(--font-lg);font-weight:500}.outbox-empty p{font-size:var(--font-xs)}.draft-state{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:var(--font-xs);color:var(--muted);padding:8px 3px 0}.draft-state button{padding:0;color:var(--brand-primary);font-size:var(--font-xs)}.draft-state .temporary-only{color:var(--warning)}.composer button:disabled{cursor:default;opacity:.6}@media(max-width:650px){.outbox-summary{padding:16px;align-items:flex-start;flex-wrap:wrap}.outbox-summary>svg{width:19px}.outbox-summary>div{flex:1;min-width:0}.outbox-summary>span{width:100%;padding-left:32px}.delivery-item{padding:16px}.delivery-item-heading{gap:8px}.delivery-item-heading strong{font-size:var(--font-xs)}.pending-messages{max-height:135px}}.message-archive{min-width:0}.archive-shortcuts{display:flex;gap:8px;flex-wrap:wrap;padding:12px 24px;border-bottom:1px solid var(--line)}.archive-shortcuts button{background:var(--brand-soft);color:var(--brand-primary);border-radius:var(--radius-xs);padding:6px 8px;font-size:var(--font-xs)}.message-archive .search-input-wrap{margin:0}.message-archive .search-input-wrap input{min-width:0;width:100%}.archive-filters{display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;gap:10px;padding:16px 24px 12px;background:var(--canvas);border-bottom:1px solid var(--line)}.archive-filters label{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:var(--font-xs);font-weight:600;min-width:0}.archive-filters select,.archive-filters input{min-width:0;width:100%;padding:8px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--brand-ink);font-size:var(--font-xs);height:35px}.archive-reset{grid-column:1 / -1;justify-self:end;color:var(--brand-primary);font-size:var(--font-xs);padding:0}.archive-status{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 24px;color:var(--muted);font-size:var(--font-xs)}.archive-status>span{display:flex;gap:4px;align-items:center}.archive-status strong{color:var(--brand-primary);font-weight:600;white-space:nowrap}.message-archive .search-results{padding-top:0;max-height:min(48vh,480px)}.message-archive .search-section-title{margin:var(--space-2) var(--space-3) 0;color:var(--brand-ink);font-size:var(--font-sm);font-weight:600}.message-archive .search-result{align-items:flex-start;padding:16px 12px;border-bottom:1px solid var(--line);border-radius:var(--radius-sm)}.message-archive .search-result>div{min-width:0;flex:1}.message-archive .search-result strong{color:var(--brand-ink);flex-wrap:wrap;gap:6px;line-height:1.6}.message-archive .search-result strong span{color:var(--brand-ink);margin-left:4px}.message-archive .search-result time{font-size:var(--font-xs);font-weight:400;color:var(--muted);margin-left:auto}.message-archive .search-result p{white-space:pre-wrap;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;line-height:1.9;margin:6px 0 0;color:var(--muted)}.message-archive mark{background:var(--brand-pale);color:var(--brand-ink);padding:1px 2px;border-radius:var(--radius-xs)}.archive-avatar{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:var(--radius-lg);color:var(--muted);background:var(--brand-soft);font-size:var(--font-xs);margin-top:2px}.archive-file{display:flex;gap:4px;align-items:center;color:var(--brand-primary);font-size:var(--font-xs);margin-top:8px}.archive-error{padding:12px;color:var(--danger);font-size:var(--font-xs)}.archive-error button{text-decoration:underline;margin-left:10px}.archive-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);margin:10px 0;overflow:hidden}.archive-card>.saved-channel{padding:12px 20px 4px}.archive-results{padding:0 16px 16px}.history-controls{padding:6px 24px;text-align:center;color:var(--muted);font-size:var(--font-xs)}.history-more{display:block;margin:12px auto;padding:10px 20px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--brand-soft);color:var(--brand-ink);font-size:var(--font-xs);font-weight:600}.history-more:disabled{opacity:.6}.history-newer{position:sticky;bottom:0;background:#fffffff5;border-top:1px solid var(--line)}.history-newer .history-more{display:inline-block;margin-right:12px}.history-newer>button:last-child{color:var(--brand-primary);font-weight:600}.saved-list>.message-archive{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden}@media(max-width:650px){.archive-filters{grid-template-columns:1fr 1fr;padding:12px;gap:10px}.archive-status{padding:12px;font-size:var(--font-xs)}.message-archive .search-result{padding:12px 4px;gap:8px}.message-archive .search-results{max-height:43vh;padding:0 12px 12px}.message-archive .search-result strong span{margin-left:0}.message-archive .search-result time{width:100%;margin-left:0}}.institution-shell{height:100dvh;overflow-y:auto;background:var(--brand-soft);color:var(--brand-ink)}.institution-header{min-height:76px;padding:12px 40px;display:flex;align-items:center;gap:20px;background:var(--surface);border-bottom:1px solid var(--line)}.institution-header .auth-wordmark{margin-right:auto;color:var(--brand-ink)}.institution-header>span{display:flex;gap:6px;align-items:center;font-size:var(--font-xs);color:var(--muted)}.institution-header button{font-size:var(--font-xs)}.institution-main{max-width:1340px;margin:auto;padding:40px 40px 24px}.institution-intro{display:flex;gap:20px;justify-content:space-between;align-items:center;margin-bottom:28px}.institution-intro .eyebrow{color:var(--muted);font-size:var(--font-xs);letter-spacing:2px}.institution-intro h1{margin:16px 0 12px;font-size:var(--font-4xl);font-weight:600;letter-spacing:-1.2px;color:var(--brand-ink)}.institution-intro p{color:var(--muted);font-size:var(--font-xs);line-height:1.8;margin:0}.institution-toolbar{padding:16px 20px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.institution-toolbar label{display:flex;align-items:center;gap:10px;font-size:var(--font-xs)}.institution-toolbar input[type=date]{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--canvas);padding:8px 10px;color:var(--brand-ink);font:inherit}.institution-toolbar>form{display:flex;align-items:center;gap:8px;margin-left:auto}.institution-toolbar>form input{width:160px;min-width:0;border:0;background:transparent;outline:none;color:var(--brand-ink);font:inherit;font-size:var(--font-xs)}.institution-toolbar>form input::placeholder{color:var(--muted)}.institution-scope{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:var(--font-xs);color:var(--muted);margin:20px 0 12px}.institution-warning{background:var(--warning-soft);border:1px solid var(--warning-line);border-radius:var(--radius-md);padding:12px 16px;font-size:var(--font-xs);line-height:1.8;color:var(--warning)}.institution-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.institution-summary>div{display:flex;flex-direction:column;gap:10px;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.institution-summary-icon{color:var(--muted);margin-bottom:3px}.institution-summary>div>span:not(.institution-summary-icon){color:var(--muted);font-size:var(--font-xs)}.institution-summary strong{font-size:var(--font-4xl);font-weight:600;letter-spacing:-.7px}.institution-summary small{color:var(--muted);font-size:var(--font-xs);line-height:1.8}.institution-top-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.institution-shell .white-card{border:1px solid var(--line)}.institution-trend,.institution-priorities,.institution-cohorts{padding:24px}.institution-shell .card-title{margin-bottom:12px;display:flex;gap:12px;align-items:center;justify-content:space-between}.institution-shell .card-title h2{display:flex;gap:8px;align-items:center;font-size:var(--font-lg);font-weight:600;margin:0}.institution-shell .card-title>span{font-size:var(--font-xs);color:var(--brand-ink)}.institution-trend>p{font-size:var(--font-xs);color:var(--muted);line-height:1.8}.institution-bars{display:flex;height:207px;gap:8px;margin:20px 0 16px;align-items:stretch}.institution-bars>button{border:0;background:transparent;font:inherit;flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;padding:6px 2px;cursor:pointer;border-radius:var(--radius-sm);color:var(--brand-primary);gap:6px}.institution-bars>button:hover,.institution-bars>button[aria-pressed=true]{background:var(--brand-soft)}.institution-bars strong{font-size:var(--font-xs);font-weight:500}.institution-bars small{font-size:var(--font-xs);color:var(--muted)}.institution-bars em{font-size:var(--font-xs);font-style:normal;color:var(--muted)}.institution-bar-track{width:55%;max-width:32px;flex:1;min-height:80px;background:var(--brand-soft);border-radius:var(--radius-sm) var(--radius-sm) var(--radius-xs) var(--radius-xs);display:flex;align-items:flex-end}.institution-bar-track i{width:100%;border-radius:inherit;min-height:2px;background:var(--brand-primary);transition:height var(--motion-enter) var(--ease-standard)}.institution-bars>button[aria-pressed=true] i{background:var(--brand-primary)}.institution-note{color:var(--muted);font-size:var(--font-xs);line-height:1.9;margin:12px 0 0}.institution-priority-list{max-height:288px;overflow-y:auto}.institution-priority-list>button{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:transparent;border:0;border-bottom:1px solid var(--line);padding:12px 0;color:var(--brand-primary);font:inherit;cursor:pointer}.institution-priority-list>button:disabled{cursor:default;opacity:.6}.institution-work-icon{display:flex;align-items:center;justify-content:center;width:33px;height:33px;border-radius:var(--radius-md);background:var(--brand-soft);flex-shrink:0}.institution-work-icon.requests,.institution-work-icon.overdue{color:var(--warning);background:var(--warning-soft)}.institution-work-icon.reviews{color:var(--info);background:var(--info-soft)}.institution-priority-list>button>span:nth-child(2){flex:1;min-width:0}.institution-priority-list strong{display:block;font-size:var(--font-xs);font-weight:500}.institution-priority-list small{display:block;margin-top:4px;font-size:var(--font-xs);color:var(--muted);overflow-wrap:anywhere}.institution-priority-list b{font-size:var(--font-lg);font-weight:500}.institution-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px;text-align:center;color:var(--muted);font-size:var(--font-xs);line-height:1.9}.institution-empty h3{color:var(--brand-ink);font-size:var(--font-md)}.institution-filters{display:flex;gap:6px;margin-bottom:20px}.institution-filters button{border:0;border-radius:var(--radius-sm);background:transparent;padding:8px 12px;font:inherit;font-size:var(--font-xs);color:var(--brand-primary);cursor:pointer}.institution-filters button.active{background:var(--brand-soft);color:var(--brand-primary);font-weight:600}.institution-cohort{border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px;margin-bottom:16px}.institution-cohort-title{display:flex;align-items:center;gap:12px}.institution-cohort-title>span{display:flex;align-items:center;justify-content:center;background:var(--brand-soft);width:43px;height:43px;border-radius:var(--radius-lg);color:var(--brand-ink);flex-shrink:0}.institution-cohort-title>div{flex:1;min-width:0}.institution-cohort-title h3{margin:0;font-size:var(--font-md);color:var(--brand-ink);overflow-wrap:anywhere}.institution-cohort-title p{margin:6px 0 0;font-size:var(--font-xs);line-height:1.8;color:var(--brand-ink);overflow-wrap:anywhere}.institution-cohort-title button{font-size:var(--font-xs)}.institution-cohort-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--brand-soft);border-radius:var(--radius-md);margin:16px 0 12px;padding:16px 0}.institution-cohort-metrics>div{padding:0 16px;display:flex;flex-direction:column;gap:8px;border-right:1px solid var(--line)}.institution-cohort-metrics>div:last-child{border:0}.institution-cohort-metrics span{font-size:var(--font-xs);color:var(--muted)}.institution-cohort-metrics strong{font-size:var(--font-xl);font-weight:500}.institution-cohort-metrics small{font-size:var(--font-xs);color:var(--muted)}.institution-work-links{display:flex;flex-wrap:wrap;gap:8px}.institution-work-links button{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius-sm);font:inherit;font-size:var(--font-xs);color:var(--brand-primary);cursor:pointer}.institution-work-links button strong{font-size:var(--font-xs);font-weight:600;color:var(--brand-ink)}.institution-work-links button:disabled{opacity:.5;cursor:default}.institution-pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:10px 0}.institution-pagination>span{font-size:var(--font-xs);color:var(--muted);margin-right:auto}.institution-pagination button{font-size:var(--font-xs)}.institution-footer{text-align:center;padding:28px 0 0;color:var(--muted);font-size:var(--font-xs)}@media(max-width:1000px){.institution-main{padding:28px 24px}.institution-header{padding:16px 24px;gap:12px;flex-wrap:wrap}.institution-summary{gap:12px}.institution-summary>div{padding:16px}.institution-top-grid{gap:16px}}@media(max-width:700px){.institution-header{padding:16px 20px;gap:12px}.institution-header>span{font-size:var(--font-xs)}.institution-header .auth-wordmark{min-width:145px}.institution-main{padding:28px 16px 16px}.institution-intro{align-items:flex-start;flex-direction:column;gap:16px}.institution-intro h1{font-size:var(--font-3xl)}.institution-intro p{font-size:var(--font-xs)}.institution-intro .eyebrow{letter-spacing:1.1px;font-size:var(--font-xs)}.institution-toolbar{padding:16px;gap:10px}.institution-toolbar label{font-size:var(--font-xs);gap:6px}.institution-toolbar>form{margin-left:0;width:100%}.institution-toolbar>form input{flex:1}.institution-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.institution-summary>div{padding:16px;gap:8px}.institution-summary strong{font-size:var(--font-3xl)}.institution-top-grid{grid-template-columns:1fr}.institution-trend,.institution-priorities,.institution-cohorts{padding:16px 12px}.institution-shell .card-title{gap:10px;flex-wrap:wrap}.institution-shell .card-title h2{font-size:var(--font-sm)}.institution-shell .card-title>span{font-size:var(--font-xs)}.institution-bars{gap:4px}.institution-cohort{padding:16px 12px}.institution-cohort-title{flex-wrap:wrap;gap:10px}.institution-cohort-title h3,.institution-cohort-title p{font-size:var(--font-xs)}.institution-cohort-title button{margin-left:56px}.institution-cohort-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 0}.institution-cohort-metrics>div{padding:0 12px}.institution-cohort-metrics>div:nth-child(2){border:0}.institution-work-links button{font-size:var(--font-xs);padding:6px 8px}.institution-pagination{flex-wrap:wrap;gap:6px}.institution-pagination>span{font-size:var(--font-xs)}}.oc-landing-title{margin:14px 0 32px}.oc-landing-title p{color:#58718f;font-size:13px}.oc-landing-title h1{margin:6px 0 12px;font-size:30px;color:#1d2b42}.oc-landing-title>span{color:#637184}.oc-landing-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:30px 0}.oc-landing-steps article{background:#fff;padding:26px;border:1px solid #e2e7ee;border-radius:10px}.oc-landing-steps svg{color:#42699a}.oc-landing-steps span{float:right;color:#8b9aaf}.oc-landing-steps h2{font-size:18px;margin-top:22px}.oc-landing-steps p,.oc-landing-guide p{color:#647286;line-height:1.8}.oc-landing-guide details{border-bottom:1px solid #e4e9f0;padding:18px 0}.oc-landing-guide summary{cursor:pointer;font-weight:600}.oc-landing-guide>button{margin-top:24px}.oc-access-notice{border:1px solid #d6e0ee;background:#ecf2fa;padding:18px;border-radius:8px;line-height:1.7}.oc-auth-back{position:fixed;z-index:10;top:14px;left:16px;padding:8px 14px;border:1px solid #d6e0ee;background:#fff;color:#304b70;border-radius:6px}@media(max-width:650px){.oc-landing .oc-main-nav{display:block;overflow-x:auto}.oc-landing .oc-main-nav>div{width:max-content;min-width:100%}.oc-landing .oc-main-nav button{padding:16px 18px}.oc-landing .oc-header>div{align-items:flex-start}.oc-landing .oc-account{align-items:flex-end;flex-direction:column;gap:7px}.oc-landing-steps{grid-template-columns:1fr;gap:12px}.oc-landing-steps article{padding:20px}.oc-landing-title h1{font-size:26px}}:root{font-family:DM Sans,Noto Sans KR,sans-serif;color:var(--text);background:var(--canvas);font-synthesis:none;font-size:14px;--brand-signature: #0040ff;--brand-primary: #365dad;--brand-primary-hover: #294c94;--brand-ink: #243248;--brand-navy: #222e40;--brand-highlight: #728bb9;--brand-pale: #eaf0fb;--brand-soft: #f1f4f8;--on-brand: #ffffff;--text: #344054;--muted: #606e82;--line: #e2e7ee;--canvas: #f4f6f9;--surface: #ffffff;--rail: var(--brand-navy);--rail-hover: #343e49;--rail-active: #3d4d63;--rail-text: #c3cbd1;--sidebar: #f9fafc;--soft: var(--brand-soft);--success: #23754b;--success-soft: #edf8f1;--success-line: #d3e7da;--warning: #7a5d2c;--warning-soft: #fbf4e5;--warning-line: #ebdfc3;--danger: #94503f;--danger-soft: #faeeea;--danger-line: #ecd8cd;--info: #48647d;--info-soft: #edf2f6;--info-line: #d9e3ec;--violet: #6d5a85;--violet-soft: #f1edf6;--overlay: #17283f59;--font-xs: 12px;--font-sm: 13px;--font-md: 14px;--font-lg: 16px;--font-xl: 18px;--font-2xl: 20px;--font-3xl: 24px;--font-4xl: 28px;--font-5xl: 32px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-card: 14px;--radius-xl: 20px;--radius-full: 999px;--shadow-sm: 0 1px 3px #2432480f;--shadow-md: 0 6px 20px #2432481a;--shadow-lg: 0 20px 60px #24324829;--content-width: 1200px;--control-height: 40px;--control-height-touch: 44px;--motion-fast: .15s;--motion-enter: .25s;--motion-exit: .2s;--motion-surface-enter: .3s;--motion-surface-exit: .25s;--ease-standard: cubic-bezier(.2, 0, 0, 1);--ease-enter: cubic-bezier(.05, .7, .1, 1);--ease-exit: cubic-bezier(.3, 0, .8, .15)}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{border:0;background:none;color:inherit}button:disabled{cursor:default}a{color:var(--brand-primary);text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid var(--brand-highlight);outline-offset:3px}input:focus,textarea:focus,select:focus{outline:none}input::placeholder,textarea::placeholder{color:var(--muted)}svg{flex-shrink:0;vertical-align:middle}h1,h2,h3,h4,p{margin:0}::selection{background:var(--brand-pale)}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-thumb{background:var(--brand-pale);border-radius:var(--radius-xs)}::-webkit-scrollbar-track{background:transparent}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes loading-slide{0%{transform:translate(-100%)}to{transform:translate(350%)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-in{0%{opacity:0;bottom:20px}to{opacity:1;bottom:30px}}@keyframes menu-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}details::details-content{opacity:0;transition:opacity var(--motion-exit) var(--ease-exit),content-visibility var(--motion-exit) var(--ease-exit) allow-discrete}details[open]::details-content{opacity:1;transition-duration:var(--motion-enter);transition-timing-function:var(--ease-enter)}@supports (interpolate-size: allow-keywords){details{interpolate-size:allow-keywords}details::details-content{block-size:0;overflow:clip;overflow-clip-margin:8px;transition:block-size var(--motion-exit) var(--ease-exit),opacity var(--motion-exit) var(--ease-exit),content-visibility var(--motion-exit) var(--ease-exit) allow-discrete}details[open]::details-content{block-size:auto}}@media(prefers-reduced-motion:reduce){details::details-content{transition:none!important}}.icon-btn{width:29px;height:29px;display:inline-flex;align-items:center;justify-content:center;padding:0;border-radius:var(--radius-xs);flex-shrink:0;color:var(--brand-primary);transition:background var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard)}.icon-btn:hover{background:var(--brand-soft);color:var(--brand-ink)}.icon-btn.active{color:var(--brand-primary);background:var(--brand-soft)}.avatar{width:35px;height:35px;border-radius:var(--radius-lg);background:#eadfd5;display:inline-flex;align-items:center;justify-content:center;position:relative;font-size:var(--font-md);font-weight:600;color:#715e56;flex-shrink:0;letter-spacing:-1px;line-height:1}.avatar:before{content:"";position:absolute;top:4px;left:5px;width:45%;height:45%;background:#ffffff24;border-radius:50%}.avatar.peach{background:#eeded0;color:#775d4b}.avatar.sage{background:var(--brand-pale);color:var(--muted)}.avatar.blue{background:#dce3ed;color:#53657c}.avatar.lavender{background:#e2dcee;color:#695a79}.avatar.rose{background:#eddbdf;color:#755a60}.avatar.sand{background:#ebe3cb;color:#706243}.avatar.teal{background:var(--brand-pale);color:var(--muted)}.avatar.small{width:31px;height:31px;font-size:var(--font-xs);border-radius:var(--radius-lg)}.avatar.tiny{width:29px;height:29px;font-size:var(--font-xs);border-radius:var(--radius-lg)}.avatar.mini{width:23px;height:23px;border-radius:var(--radius-md);font-size:var(--font-xs)}.avatar.micro{width:18px;height:18px;font-size:var(--font-xs);border-radius:var(--radius-sm)}.avatar .online-dot{position:absolute;width:7px;height:7px;background:var(--success);border:2px solid var(--surface);border-radius:50%;right:-1px;bottom:-1px}.avatar.mini .online-dot{width:6px;height:6px;border-width:1.5px}.eyebrow{font-size:var(--font-xs);letter-spacing:1.9px;font-family:DM Sans,sans-serif;font-weight:600;color:var(--muted)}.progress-track{height:4px;background:var(--brand-soft);border-radius:var(--radius-xs);overflow:hidden}.progress-track>span{height:100%;background:var(--brand-primary);display:block;border-radius:inherit;transition:width var(--motion-surface-enter) var(--ease-standard)}.page-scroll{background:var(--canvas);flex:1;min-height:0;overflow:auto;padding:32px 40px 48px}.standard-page{width:100%;max-width:var(--content-width);margin-inline:auto;min-width:0}.today-chip{display:flex;align-items:center;gap:6px;color:var(--brand-primary);font-size:var(--font-xs)}.primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--brand-primary);color:var(--on-brand);border-radius:var(--radius-sm);min-height:37px;padding:0 16px;font-size:var(--font-xs);font-weight:500;transition:background var(--motion-fast) var(--ease-standard)}.primary-btn:hover{background:var(--brand-primary-hover)}.primary-btn:disabled{background:var(--brand-pale);color:var(--muted);cursor:default}.secondary-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;border:1px solid var(--line);background:var(--surface);color:var(--text);height:30px;padding:0 10px;font-size:var(--font-xs);border-radius:var(--radius-xs)}.secondary-btn:hover{background:var(--brand-soft)}.text-link{display:inline-flex;align-items:center;gap:4px;font-size:var(--font-xs);color:var(--brand-primary);padding:0}.white-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);padding:20px}.card-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px}.card-title h3{font-size:var(--font-sm);letter-spacing:-.4px;font-weight:600;color:var(--brand-ink);display:flex;align-items:center;gap:8px}.subject-tag{font-size:var(--font-xs);padding:3px 6px;background:var(--brand-soft);color:var(--brand-primary);border-radius:var(--radius-xs);white-space:nowrap}.subject-경찰학{background:var(--info-soft);color:var(--info)}.subject-형사법{background:var(--warning-soft);color:var(--warning)}.subject-헌법{background:var(--brand-soft);color:var(--muted)}.subject-체력{background:var(--danger-soft);color:var(--danger)}.progress-track.big{height:6px;border-radius:0 0 var(--radius-md) var(--radius-md);background:var(--brand-pale);margin-bottom:24px}.progress-track.big>span{background:var(--brand-primary)}.admin-table td:first-child>.avatar{margin-right:10px}.modal-backdrop{position:fixed;inset:0;z-index:100;background:var(--overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:28px;animation:fade-in var(--motion-surface-enter) var(--ease-standard)}.modal{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);padding:24px;width:510px;max-width:100%;max-height:calc(100dvh - 60px);overflow:auto;box-shadow:var(--shadow-lg);animation:slide-in var(--motion-surface-enter) var(--ease-enter)}.modal-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.modal-top h2{font-size:var(--font-xl);font-weight:600;letter-spacing:-.6px;color:var(--brand-ink);display:flex;align-items:center;gap:8px}.modal-top .icon-btn{color:var(--brand-primary)}.modal-description{font-size:var(--font-xs);color:var(--muted);line-height:1.95;margin-bottom:20px}.search-modal .modal-top{padding:16px 20px;margin:0}.search-modal .modal-top h2{font-size:var(--font-sm);color:var(--brand-ink)}.full-width{width:100%}.guide-modal .modal-top{padding:20px 24px;margin:0}.guide-modal .modal-top h2{font-size:var(--font-lg)}@media(max-width:1250px){.page-scroll{padding:28px 28px 48px}.white-card{padding:20px}}@media(max-width:800px){.page-scroll{padding:28px 20px}.today-chip{display:none}}@media(max-width:600px){.page-scroll{padding:24px 16px 32px}.card-title h3{font-size:var(--font-xs)}.white-card{padding:20px}.subject-tag,.muted-text{font-size:var(--font-xs)}.modal-backdrop{padding:16px}.modal{padding:24px 20px;border-radius:var(--radius-lg);max-height:calc(100dvh - 36px)}.modal-top{margin-bottom:20px}.modal-top h2{font-size:var(--font-lg)}.search-modal .modal-top{padding:16px}.guide-modal .modal-top{padding:20px}.guide-modal .modal-top h2{font-size:var(--font-lg)}}.card-title h3{color:var(--brand-ink);font-size:var(--font-md)}.text-link{color:var(--brand-primary);font-size:var(--font-xs)}.subject-tag{font-size:var(--font-xs)}.muted-text{font-size:var(--font-xs);color:var(--muted)}.secondary-btn{font-size:var(--font-xs);color:var(--text)}.modal-top h2{color:var(--brand-ink)}.modal-description{color:var(--muted);font-size:var(--font-xs)}@media(max-width:800px){.card-title h3{font-size:var(--font-xs)}}@media(max-width:600px){.modal-description{font-size:var(--font-xs)}}.page-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:var(--space-2);margin:0 0 var(--space-5)}.page-actions-context{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);margin-right:auto;min-width:0;color:var(--muted);font-size:var(--font-sm)}.callout{display:flex;align-items:flex-start;gap:var(--space-2);margin:0 0 var(--space-5);padding:var(--space-3) var(--space-4);border:1px solid var(--info-line);border-radius:var(--radius-lg);background:var(--info-soft);color:var(--text);font-size:var(--font-sm);line-height:1.6}.callout>svg{flex-shrink:0;margin-top:3px;color:var(--info)}.callout.warning{border-color:var(--warning-line);background:var(--warning-soft)}.callout.warning>svg{color:var(--warning)}.callout.danger{border-color:var(--danger-line);background:var(--danger-soft)}.callout.danger>svg{color:var(--danger)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);min-height:180px;margin:0 0 var(--space-5);padding:var(--space-10) var(--space-6);border:1px dashed var(--line);border-radius:var(--radius-card);background:var(--surface);color:var(--muted);text-align:center}.empty-state>svg{width:28px;height:28px;color:var(--brand-primary)}.empty-state :is(h3,strong){color:var(--brand-ink);font-size:var(--font-lg);font-weight:600;line-height:1.5;word-break:keep-all}.empty-state p{max-width:460px;color:var(--muted);font-size:var(--font-sm);line-height:1.7;word-break:keep-all}.empty-state :is(.primary-btn,.secondary-btn){margin-top:var(--space-1)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-3);margin:0 0 var(--space-5)}.stat-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);min-width:0;padding:var(--space-4) var(--space-5);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);color:var(--text);text-align:left}button.stat-card:hover{border-color:var(--brand-highlight)}button.stat-card:disabled{cursor:default;opacity:1}.stat-card-label{display:flex;align-items:center;gap:var(--space-2);color:var(--muted);font-size:var(--font-sm)}.stat-card-label>svg{flex-shrink:0;color:var(--brand-primary)}.stat-card-value{color:var(--brand-ink);font-size:var(--font-3xl);font-weight:700;line-height:1.2;letter-spacing:-.5px}.stat-card-value small{margin-left:var(--space-1);color:var(--muted);font-size:var(--font-sm);font-weight:500;letter-spacing:0}.stat-card-note{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--muted);font-size:var(--font-xs);line-height:1.6}.stat-card.warning .stat-card-value,.stat-card.warning .stat-card-label>svg{color:var(--warning)}.stat-card.danger .stat-card-value,.stat-card.danger .stat-card-label>svg{color:var(--danger)}.stat-card.success .stat-card-label>svg{color:var(--success)}@media(max-width:600px){.page-actions{margin-bottom:var(--space-4)}.page-actions>:is(.primary-btn,.secondary-btn){flex:1 1 auto}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.stat-card{padding:var(--space-3) var(--space-4)}.stat-card-value{font-size:var(--font-2xl)}.empty-state{min-height:0;padding:var(--space-8) var(--space-4)}}.app-shell{height:100dvh;min-height:600px;display:grid;grid-template-columns:72px 244px minmax(0,1fr);grid-template-rows:57px minmax(0,1fr);overflow:hidden}.global-header{grid-column:1/-1;display:grid;grid-template-columns:316px minmax(240px,1fr) auto;align-items:center;border-bottom:1px solid var(--line);background:var(--surface);padding-right:24px;z-index:20;gap:24px}.wordmark{display:flex;align-items:center;gap:8px;padding-left:24px;justify-self:start}.wordmark>span:nth-child(2){font-weight:700;font-size:var(--font-4xl);letter-spacing:-1.5px;line-height:1}.wordmark-dot{color:var(--muted)}.wordmark em{font-size:var(--font-xs);letter-spacing:2px;color:var(--muted);font-weight:600;font-style:normal;margin-top:8px;margin-left:3px}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:var(--radius-card);background:var(--rail);color:var(--brand-pale)}.brand-mark svg{width:33px;height:33px}.brand-mark.small{background:none;color:var(--brand-primary);width:25px;height:30px;border-radius:0}.brand-mark.small svg{width:25px;height:25px}.global-search{max-width:576px;width:100%;justify-self:center}.global-search>button{height:34px;border:1px solid var(--line);background:var(--brand-soft);border-radius:var(--radius-sm);display:flex;gap:10px;align-items:center;color:var(--muted);padding:0 10px;width:100%;text-align:left;font-size:var(--font-xs)}.global-search>button:hover{border-color:var(--brand-highlight)}.global-search kbd{margin-left:auto;border:1px solid var(--line);background:var(--surface);font-family:inherit;font-size:var(--font-xs);border-radius:var(--radius-xs);line-height:19px;padding:0 4px;color:var(--muted)}.header-right{display:flex;align-items:center;gap:12px}.demo-label{font-size:var(--font-xs);letter-spacing:.2px;color:var(--muted);border:1px solid var(--line);padding:4px 8px;border-radius:var(--radius-xs);background:var(--brand-soft)}.header-profile{padding:0;margin-left:1px}.workspace-rail{grid-column:1;grid-row:2;background:var(--rail);display:flex;align-items:center;flex-direction:column;padding:20px 0 16px;color:var(--brand-pale);gap:6px;position:relative;overflow-y:auto;scrollbar-width:none}.workspace-icon{width:43px;height:43px;border-radius:var(--radius-lg);background:var(--brand-primary);display:flex;align-items:center;justify-content:center;color:var(--on-brand);margin:0 0 4px;position:relative}.rail-indicator{position:absolute;width:3px;height:27px;background:var(--brand-primary);left:-14px;border-radius:0 var(--radius-xs) var(--radius-xs) 0}.rail-divider{width:24px;height:1px;background:var(--rail-hover);margin:1px 0 10px}.rail-btn{position:relative;display:flex;align-items:center;flex-direction:column;width:59px;gap:4px;padding:8px 0;border-radius:var(--radius-md);color:var(--brand-pale);font-size:var(--font-xs);letter-spacing:-.2px;flex-shrink:0}.rail-btn:hover{background:var(--rail-hover);color:var(--brand-pale)}.rail-btn.selected{color:var(--brand-pale);background:var(--rail-active)}.rail-btn.selected svg{stroke:var(--brand-pale)}.rail-live{position:absolute;right:12px;top:10px;width:6px;height:6px;border-radius:50%;background:var(--success-soft)}.rail-bottom{margin-top:auto;display:flex;align-items:center;flex-direction:column;gap:20px}.rail-small{color:var(--rail-text);padding:4px}.rail-avatar{padding:0}.channel-sidebar{grid-column:2;grid-row:2;background:var(--sidebar);border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0}.workspace-title{height:80px;min-height:80px;display:flex;align-items:center;text-align:left;padding:0 16px;gap:8px}.academy-icon{width:29px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--muted);background:var(--brand-soft);border-radius:var(--radius-sm)}.workspace-title strong{font-size:var(--font-md);font-weight:700;letter-spacing:-.5px;display:block;color:var(--brand-ink)}.workspace-title small{font-size:var(--font-xs);color:var(--brand-ink);display:block;margin-top:3px;letter-spacing:.2px}.workspace-title>svg{margin-left:auto;color:var(--brand-ink)}.sidebar-scroll{overflow:auto;flex:1;padding:0 12px 12px}.cohort-label{display:flex;align-items:center;gap:6px;font-size:var(--font-xs);color:var(--muted);margin:2px 4px 20px;font-weight:500}.cohort-dot{height:5px;width:5px;border-radius:100%;background:var(--brand-primary)}.cohort-badge{margin-left:auto;font-size:var(--font-xs);color:var(--brand-primary);background:var(--brand-soft);border-radius:var(--radius-xs);padding:2px 4px}.sidebar-section{display:flex;flex-direction:column;gap:3px}.primary-nav{padding-bottom:20px;border-bottom:1px solid var(--line);margin-bottom:16px}.sidebar-nav{height:35px;display:flex;align-items:center;gap:10px;border-radius:var(--radius-sm);text-align:left;padding:0 10px;font-size:var(--font-xs);color:var(--muted);font-weight:500;transition:background var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard)}.sidebar-nav svg{color:var(--muted);stroke-width:1.7}.sidebar-nav:hover,.channel-link:hover{background:var(--brand-soft)}.sidebar-nav.active{background:var(--brand-pale);color:var(--brand-ink)}.sidebar-nav.active svg{color:var(--brand-primary)}.nav-counter{margin-left:auto;font-size:var(--font-xs);color:var(--muted);font-weight:600}.tiny-badge{font-family:DM Sans,sans-serif;color:var(--brand-primary);background:var(--brand-soft);border-radius:var(--radius-xs);padding:2px 4px;font-size:var(--font-xs);margin-left:auto;letter-spacing:.5px;font-weight:700}.nav-check{margin-left:auto}.section-heading{display:flex;align-items:center;justify-content:space-between;height:26px;padding:0 6px;color:var(--muted);font-size:var(--font-xs);font-weight:500;margin-bottom:6px}.section-heading>span:first-child{display:flex;align-items:center;gap:4px}.section-heading .icon-btn{height:22px;width:22px}.section-hint{font-family:DM Sans,sans-serif;font-size:var(--font-xs);letter-spacing:1px;color:var(--muted)}.channel-list{display:flex;flex-direction:column;gap:2px;margin-bottom:20px}.channel-link{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:0 10px;height:33px;border-radius:var(--radius-xs);color:var(--text);font-size:var(--font-xs);position:relative}.channel-link>svg{color:var(--muted);stroke-width:1.65}.channel-link.active{background:var(--brand-pale);color:var(--brand-ink);font-weight:600}.channel-link.active>svg{color:var(--brand-ink);stroke-width:2}.channel-link.active:before{content:"";height:15px;width:3px;position:absolute;left:0;top:9px;background:var(--brand-primary);border-radius:0 var(--radius-xs) var(--radius-xs) 0}.channel-count{font-size:var(--font-xs);color:var(--muted);background:var(--brand-soft);min-width:17px;text-align:center;margin-left:auto;border-radius:var(--radius-xs);padding:1px 0}.channel-unread{height:5px;width:5px;background:var(--brand-primary);border-radius:50%;margin-left:auto}.subject-dot{height:5px;width:5px;border-radius:50%;margin-left:auto;margin-right:3px}.subject-dot.police{background:#9aa7cf}.subject-dot.criminal{background:#d2b08a}.subject-dot.constitution{background:var(--brand-primary)}.dm-heading{margin-top:3px}.dm-link{height:36px;gap:8px}.dm-role{font-size:var(--font-xs);color:var(--muted);margin-left:auto}.sidebar-footer{border-top:1px solid var(--line);min-height:72px;display:flex;align-items:center;padding:0 16px;gap:8px;background:var(--brand-soft)}.sidebar-footer>button:not(.icon-btn){padding:0;text-align:left;flex:1}.sidebar-footer strong{font-size:var(--font-xs);display:flex;align-items:center;gap:6px;font-weight:600}.sidebar-footer strong>span{font-size:var(--font-xs);color:var(--brand-ink);font-weight:400}.sidebar-footer small{font-size:var(--font-xs);display:flex;align-items:center;gap:4px;color:var(--muted);margin-top:4px}.connection-dot{width:4px;height:4px;border-radius:50%;background:var(--success)}.connection-dot.offline{background:#c8a77d}.sidebar-footer .icon-btn{width:24px}.main-workspace{grid-column:3;grid-row:2;background:var(--surface);min-width:0;min-height:0;display:flex;flex-direction:column}.channel-header{height:80px;min-height:80px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 28px;gap:12px}.channel-title{display:flex;align-items:center;gap:12px;min-width:0}.header-channel-icon{color:var(--muted)}.channel-title>div{min-width:0}.channel-title h1{font-size:var(--font-lg);font-weight:700;letter-spacing:-.6px;display:flex;align-items:center;gap:10px;color:var(--brand-ink)}.channel-star{stroke:var(--muted);stroke-width:1.4}.channel-title p{font-size:var(--font-xs);letter-spacing:-.15px;color:var(--brand-ink);margin-top:6px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:580px}.channel-header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.member-stack-button{display:flex;align-items:center;gap:8px;color:var(--brand-primary);font-size:var(--font-xs)}.avatar-stack{display:flex;padding-left:6px}.avatar-stack .avatar{margin-left:-6px;outline:2px solid white}.header-separator{height:18px;width:1px;background:var(--brand-soft);margin-right:0}.mobile-menu{display:none}.help-hero .brand-mark{width:46px;height:46px;border-radius:var(--radius-card)}.help-hero .brand-mark svg{width:29px}.toast{position:fixed;left:50%;bottom:30px;transform:translate(-50%);z-index:200;display:flex;align-items:center;gap:10px;padding:12px 16px;border:1px solid var(--rail-hover);background:var(--brand-navy);color:var(--on-brand);border-radius:var(--radius-md);font-size:var(--font-xs);box-shadow:0 6px 30px #19251725;max-width:calc(100vw - 30px);animation:toast-in var(--motion-enter) var(--ease-enter)}.toast>svg{color:#bcd5c8}.toast>span{line-height:1.7}.toast>button{margin-left:6px;color:var(--brand-pale);padding:0}.loading-screen{height:100dvh;display:flex;align-items:center;justify-content:center;flex-direction:column;background:var(--brand-soft)}.loading-screen h1{font-size:var(--font-2xl);letter-spacing:-1px;color:var(--brand-ink);margin-top:20px;font-weight:600}.loading-screen p{color:var(--muted);font-size:var(--font-xs);margin:16px 0 24px}.loading-line{width:120px;height:3px;border-radius:var(--radius-xs);background:var(--brand-pale);overflow:hidden;position:relative}.loading-line:after{content:"";position:absolute;left:0;top:0;bottom:0;width:40%;background:var(--brand-primary);animation:loading-slide 1.2s ease infinite}.sidebar-scrim{display:none}@media(min-width:1650px){.app-shell{grid-template-columns:76px 266px minmax(0,1fr)}.global-header{grid-template-columns:342px minmax(240px,1fr) auto}.channel-sidebar .sidebar-nav,.channel-sidebar .channel-link{font-size:var(--font-xs)}.sidebar-nav{height:38px}.channel-link{height:36px}.section-heading{font-size:var(--font-xs)}.workspace-title strong{font-size:var(--font-lg)}.cohort-label{font-size:var(--font-xs)}}@media(max-width:1250px){.app-shell{grid-template-columns:64px 221px minmax(0,1fr)}.global-header{grid-template-columns:285px minmax(220px,1fr) auto;gap:16px;padding-right:16px}.workspace-rail{padding-top:16px}.workspace-icon{height:40px;width:40px}.rail-indicator{left:-12px}.rail-btn{width:52px}.workspace-title{padding:0 12px;gap:6px}.workspace-title strong{font-size:var(--font-sm)}.sidebar-scroll{padding-left:8px;padding-right:8px}.channel-header{padding:0 20px}.channel-title p{max-width:350px;font-size:var(--font-xs)}}@media(max-width:1080px){.channel-title p{max-width:430px}.channel-header-actions{gap:8px}}@media(max-width:800px){.app-shell{grid-template-columns:58px 198px minmax(0,1fr)}.global-header{grid-template-columns:244px minmax(150px,1fr) auto;gap:12px;padding-right:12px}.wordmark{padding-left:16px;gap:6px}.wordmark>span:nth-child(2){font-size:var(--font-3xl)}.wordmark em{font-size:var(--font-xs)}.header-right{gap:8px}.demo-label{display:none}.header-right>.icon-btn:first-of-type{display:none}.global-search>button>span{font-size:var(--font-xs)}.global-search kbd{display:none}.workspace-title{padding:0 10px}.workspace-title strong,.workspace-title small{font-size:var(--font-xs)}.academy-icon{width:25px;height:29px}.workspace-title>svg{width:12px}.cohort-label,.cohort-badge{font-size:var(--font-xs)}.sidebar-nav,.channel-link{font-size:var(--font-xs);padding:0 8px;gap:8px}.sidebar-footer{padding:0 12px;gap:6px}.sidebar-footer strong{font-size:var(--font-xs)}.workspace-icon{width:36px;height:36px;border-radius:var(--radius-lg)}.workspace-icon>svg{width:23px}.rail-indicator{left:-11px}.rail-btn{width:48px;font-size:var(--font-xs)}.rail-btn>svg{width:21px}.channel-header{padding:0 20px;height:72px;min-height:72px}.channel-title h1{font-size:var(--font-lg)}.channel-title p{font-size:var(--font-xs);max-width:220px}.member-stack-button,.header-separator{display:none}}@media(max-width:600px){.app-shell{grid-template-columns:1fr;grid-template-rows:51px minmax(0,1fr);min-height:450px}.global-header{grid-template-columns:auto 1fr auto;gap:12px;padding-right:12px;height:51px}.wordmark{padding-left:16px;gap:4px}.wordmark>span:nth-child(2){font-size:var(--font-3xl)}.wordmark .brand-mark{width:22px}.wordmark .brand-mark svg{width:23px}.wordmark em{display:none}.global-search{justify-self:stretch;max-width:none}.global-search>button{height:30px;padding:0 8px;border-radius:var(--radius-sm);gap:6px;font-size:var(--font-xs)}.global-search>button>span{font-size:var(--font-xs)}.global-search svg{width:13px}.header-right{gap:6px}.header-right>.icon-btn{display:none}.header-profile .avatar{width:27px;height:27px}.workspace-rail{display:none}.channel-sidebar{position:fixed;left:-270px;top:51px;bottom:0;width:245px;z-index:65;transition:left var(--motion-surface-exit) var(--ease-exit),box-shadow var(--motion-surface-exit) var(--ease-exit);border-right:1px solid var(--line);box-shadow:none}.channel-sidebar.mobile-open{left:0;box-shadow:var(--shadow-lg);transition-duration:var(--motion-surface-enter);transition-timing-function:var(--ease-enter)}.sidebar-scrim{display:block;position:fixed;inset:51px 0 0;background:var(--overlay);z-index:60;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);opacity:0;visibility:hidden;transition:opacity var(--motion-surface-exit) var(--ease-standard),visibility var(--motion-surface-exit)}.sidebar-scrim.open{opacity:1;visibility:visible;transition-duration:var(--motion-surface-enter)}.sidebar-scroll{padding:0 12px 16px}.workspace-title strong{font-size:var(--font-md)}.workspace-title small{font-size:var(--font-xs)}.workspace-title{padding:0 20px;height:78px;min-height:78px}.academy-icon{width:30px;height:34px}.sidebar-nav{font-size:var(--font-xs);height:37px;gap:10px}.channel-link{font-size:var(--font-xs);height:35px;gap:10px}.cohort-label{font-size:var(--font-xs);margin-bottom:20px}.cohort-badge{font-size:var(--font-xs)}.sidebar-footer{padding:0 16px}.sidebar-footer strong,.sidebar-footer small{font-size:var(--font-xs)}.main-workspace{grid-column:1;grid-row:2}.channel-header{height:72px;min-height:72px;padding:0 16px;gap:6px}.channel-title{gap:8px}.channel-title h1{font-size:var(--font-lg);gap:6px}.channel-star{width:13px}.channel-title p{font-size:var(--font-xs);max-width:230px;margin-top:4px}.mobile-menu{display:flex;margin-left:-4px;width:25px;color:var(--muted)}.header-channel-icon{display:none}.channel-header-actions{gap:3px}.channel-header-actions .icon-btn{width:26px}.channel-header-actions .icon-btn:last-child{display:none}.toast{bottom:24px;font-size:var(--font-xs);padding:12px;gap:8px;min-width:250px;max-width:calc(100vw - 30px)}.toast>svg{width:16px}}.global-search>button{font-size:var(--font-xs);color:var(--muted)}.global-search>button>span{font-size:var(--font-xs)}.sidebar-nav,.channel-link{font-size:var(--font-xs);color:var(--text)}.section-heading{font-size:var(--font-xs);color:var(--muted)}.cohort-label{font-size:var(--font-xs)}.channel-title h1{font-size:var(--font-xl)}.channel-title p{font-size:var(--font-xs);color:var(--muted)}@media(max-width:1250px){.channel-title p{font-size:var(--font-xs)}}@media(max-width:800px){.sidebar-nav,.channel-link{font-size:var(--font-xs)}.channel-title h1{font-size:var(--font-lg)}.channel-title p{font-size:var(--font-xs)}}@media(max-width:600px){.global-search>button>span{font-size:var(--font-xs)}.channel-title h1{font-size:var(--font-lg)}.channel-title p,.sidebar-nav,.channel-link{font-size:var(--font-xs)}}.search-backdrop{align-items:flex-start;padding-top:11vh}.search-modal{padding:0;width:620px}.search-input-wrap{padding:16px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;color:var(--muted)}.search-input-wrap input{flex:1;border:0;font-size:var(--font-lg);color:var(--muted);min-width:0;background:none}.search-input-wrap input::placeholder{color:var(--muted);font-size:var(--font-sm)}.search-input-wrap kbd{color:var(--muted);font-size:var(--font-xs);border:1px solid var(--line);border-radius:var(--radius-xs);padding:3px 4px}.search-results{padding:12px;max-height:52vh;overflow:auto}.search-results h4{font-size:var(--font-xs);color:var(--brand-ink);margin:10px 12px;font-weight:500;display:flex;align-items:center;gap:8px}.search-results h4>span{font-size:var(--font-xs);color:var(--brand-ink)}.search-channel{display:flex;align-items:center;width:100%;gap:10px;padding:12px;border-radius:var(--radius-sm);color:var(--muted);text-align:left;font-size:var(--font-xs)}.search-channel>svg:last-child{margin-left:auto;color:var(--muted)}.search-channel:hover,.search-result:hover{background:var(--brand-soft)}.search-result{display:flex;align-items:flex-start;gap:10px;width:100%;padding:12px;text-align:left;border-radius:var(--radius-sm)}.search-result>div{flex:1;min-width:0}.search-result strong{font-size:var(--font-xs);color:var(--brand-ink);display:flex;align-items:center;gap:8px;font-weight:600}.search-result strong>span{font-size:var(--font-xs);color:var(--brand-ink);font-weight:400}.search-result p{font-size:var(--font-xs);color:var(--muted);margin-top:6px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.9;white-space:pre-wrap}.search-result>svg{color:var(--muted);margin-top:10px}.search-empty{padding:28px 10px;text-align:center;color:var(--muted);font-size:var(--font-xs)}.search-help{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:var(--font-xs);padding:16px 12px 12px}.member-list{display:flex;flex-direction:column;gap:3px}.member-list>button{display:flex;align-items:center;text-align:left;gap:12px;padding:12px 8px;border-radius:var(--radius-sm);width:100%}.member-list>button:enabled:hover{background:var(--brand-soft)}.member-list>button>div{flex:1}.member-list strong{display:flex;align-items:center;gap:6px;font-size:var(--font-xs);font-weight:500;color:var(--brand-ink)}.member-list strong>span{font-size:var(--font-xs);font-weight:400;color:var(--brand-ink)}.member-list small{display:block;font-size:var(--font-xs);color:var(--muted);margin-top:4px}.member-list>button>svg{color:var(--brand-primary)}.profile-summary{display:flex;align-items:center;gap:12px;padding:10px 0 24px}.profile-summary>.avatar{width:50px;height:50px;font-size:var(--font-2xl);border-radius:var(--radius-card)}.profile-summary h3{font-size:var(--font-xl);font-weight:600;color:var(--brand-ink);display:flex;align-items:center;gap:8px}.profile-summary p{font-size:var(--font-xs);color:var(--muted);margin-top:6px}.profile-campus{margin-left:auto;display:flex;align-items:center;gap:4px;color:var(--muted);font-size:var(--font-xs)}.demo-notice{display:flex;align-items:flex-start;gap:10px;background:var(--brand-soft);padding:16px;border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--muted)}.demo-notice>svg{margin-top:3px}.demo-notice p{font-size:var(--font-xs);line-height:1.9;color:var(--muted)}.demo-notice strong{display:block;font-size:var(--font-xs);color:var(--brand-ink);font-weight:600;margin-bottom:3px}.settings-label{font-size:var(--font-xs);color:var(--muted);font-weight:500;margin:24px 0 12px}.account-options{display:flex;flex-direction:column;gap:8px}.account-options>button{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px;width:100%}.account-options>button.selected{background:var(--brand-soft);border-color:var(--line)}.account-options>button>div{flex:1}.account-options strong{font-size:var(--font-xs);font-weight:500;color:var(--brand-ink);display:block}.account-options small{font-size:var(--font-xs);color:var(--muted);display:block;margin-top:4px}.account-options>button>svg{color:var(--brand-primary)}.settings-footer{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-xs);color:var(--muted);padding-top:24px;gap:10px}.settings-footer button{display:flex;align-items:center;gap:4px;font-size:var(--font-xs);color:var(--brand-primary);padding:0}.channel-form>label{display:block;font-size:var(--font-xs);color:var(--muted);margin:20px 0}.channel-form>label>span{color:var(--muted);margin-left:4px}.input-icon{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:var(--radius-sm);padding:0 12px;margin-top:10px;color:var(--muted)}.input-icon input{border:0;flex:1;height:39px;font-size:var(--font-xs);min-width:0;color:var(--muted)}.input-icon input::placeholder{font-size:var(--font-xs);color:var(--muted)}.channel-form textarea{margin-top:10px;border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;padding:12px;font-size:var(--font-xs);min-height:85px;resize:vertical;color:var(--muted)}.channel-form textarea::placeholder{color:var(--muted)}.channel-visibility{display:flex;align-items:flex-start;gap:10px;padding:16px 0 20px;color:var(--muted)}.channel-visibility strong{font-size:var(--font-xs);color:var(--brand-ink);font-weight:500}.channel-visibility p{font-size:var(--font-xs);color:var(--muted);margin-top:6px;line-height:1.9}.guide-modal{padding:0}.guide-cover{background:var(--brand-soft);padding:28px;position:relative;overflow:hidden}.guide-cover>.eyebrow{color:var(--muted);letter-spacing:2px}.guide-cover h3{font-size:var(--font-4xl);color:var(--brand-ink);font-weight:500;letter-spacing:-1.2px;line-height:1.55;margin:16px 0 20px;position:relative;z-index:2}.guide-cover>span:last-of-type{font-size:var(--font-xs);color:var(--muted)}.guide-cover>svg{position:absolute;right:30px;bottom:52px;color:var(--muted);transform:rotate(-15deg)}.guide-body{padding:24px 28px 28px}.guide-example-label{font-size:var(--font-xs);color:var(--warning);background:var(--warning-soft);border-radius:var(--radius-xs);padding:8px 10px;margin-bottom:24px}.guide-body h4{font-size:var(--font-sm);letter-spacing:-.3px;color:var(--brand-ink);font-weight:500;margin-bottom:8px}.guide-subject{display:flex;align-items:flex-start;gap:12px;border-bottom:1px solid var(--line);padding:16px 0}.guide-subject>span{font-family:DM Sans,sans-serif;color:var(--muted);font-size:var(--font-xl);font-weight:400;margin-top:1px}.guide-subject strong{font-size:var(--font-xs);color:var(--brand-ink);font-weight:500}.guide-subject p{font-size:var(--font-xs);line-height:1.9;color:var(--muted);margin-top:6px}.guide-schedule{display:flex;align-items:flex-start;gap:12px;background:var(--brand-soft);padding:16px;border-radius:var(--radius-sm);color:var(--muted);margin:20px 0}.guide-schedule strong{font-size:var(--font-xs);color:var(--brand-ink);font-weight:500}.guide-schedule p{font-size:var(--font-xs);line-height:1.9;color:var(--muted);margin-top:6px}.help-hero{padding:16px 0 24px;text-align:center}.help-hero h3{font-size:var(--font-3xl);letter-spacing:-1px;color:var(--brand-ink);line-height:1.6;font-weight:500;margin:20px 0 12px}.help-hero p{font-size:var(--font-xs);color:var(--muted)}.help-steps{display:flex;flex-direction:column;gap:24px;margin:12px 0 24px}.help-steps>div{display:flex;align-items:flex-start;gap:12px}.help-steps>div>span{width:34px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--brand-soft);border-radius:var(--radius-md);color:var(--muted)}.help-steps h4{font-size:var(--font-xs);color:var(--brand-ink);font-weight:500;margin:1px 0 6px}.help-steps p{font-size:var(--font-xs);color:var(--muted);line-height:1.8}.help-note{font-size:var(--font-xs);line-height:1.9;background:var(--brand-soft);color:var(--muted);padding:12px;border-radius:var(--radius-xs);margin-bottom:20px}@media(max-width:600px){.search-backdrop{padding-top:8vh}.search-modal{padding:0}.search-input-wrap{padding:16px}.search-input-wrap input{font-size:var(--font-sm)}.search-input-wrap input::placeholder{font-size:var(--font-xs)}.search-result p{font-size:var(--font-xs)}.search-result strong>span{font-size:var(--font-xs)}.member-list>button{padding:12px 2px}.member-list strong,.member-list small,.demo-notice p{font-size:var(--font-xs)}.profile-summary h3{font-size:var(--font-xl)}.profile-summary p,.profile-campus,.settings-footer{font-size:var(--font-xs)}.guide-modal{padding:0}.guide-cover{padding:28px}.guide-cover h3{font-size:var(--font-4xl)}.guide-cover>svg{width:59px;right:26px}.guide-body{padding:20px}.help-hero h3{font-size:var(--font-3xl)}.help-hero p,.help-steps p{font-size:var(--font-xs)}}.search-input-wrap input{color:var(--muted)}.search-input-wrap input::placeholder{color:var(--muted)}.search-results h4{color:var(--brand-ink);font-size:var(--font-xs)}.search-channel{color:var(--muted);font-size:var(--font-xs)}.search-result strong{color:var(--brand-ink);font-size:var(--font-xs)}.search-result p{color:var(--muted);font-size:var(--font-xs)}.search-result strong>span{color:var(--brand-ink);font-size:var(--font-xs)}.search-empty,.search-help{color:var(--muted);font-size:var(--font-xs)}.member-list strong{color:var(--brand-ink);font-size:var(--font-sm)}.member-list small{color:var(--muted);font-size:var(--font-xs)}.member-list strong>span{color:var(--brand-ink)}.profile-summary h3{color:var(--brand-ink)}.profile-summary p,.profile-campus{color:var(--muted)}.demo-notice p{color:var(--muted);font-size:var(--font-xs)}.demo-notice strong{color:var(--brand-ink);font-size:var(--font-xs)}.settings-label{color:var(--muted);font-size:var(--font-xs)}.account-options strong{color:var(--brand-ink);font-size:var(--font-xs)}.account-options small{color:var(--muted);font-size:var(--font-xs)}.settings-footer,.settings-footer button{color:var(--brand-primary)}.channel-form>label{color:var(--muted);font-size:var(--font-xs)}.input-icon input,.channel-form textarea{color:var(--muted)}.channel-visibility strong{color:var(--brand-ink);font-size:var(--font-xs)}.channel-visibility p{color:var(--muted);font-size:var(--font-xs)}.guide-cover h3{color:var(--brand-ink)}.guide-cover>span:last-of-type{color:var(--muted)}.guide-example-label{color:var(--warning)}.guide-body h4{color:var(--brand-ink)}.guide-subject strong{color:var(--brand-ink);font-size:var(--font-xs)}.guide-subject p{color:var(--muted);font-size:var(--font-xs)}.guide-schedule strong{color:var(--brand-ink);font-size:var(--font-xs)}.guide-schedule p{color:var(--muted);font-size:var(--font-xs)}.help-hero h3{color:var(--brand-ink)}.help-hero p{color:var(--muted);font-size:var(--font-xs)}.help-steps h4{color:var(--brand-ink);font-size:var(--font-xs)}.help-steps p,.help-note{color:var(--muted);font-size:var(--font-xs)}.chat-and-info{display:flex;flex:1;min-height:0;min-width:0}.chat-column{min-width:0;flex:1;display:flex;flex-direction:column;background:var(--surface)}.conversation-tabs{height:46px;min-height:46px;display:flex;align-items:stretch;gap:24px;padding:0 28px;border-bottom:1px solid var(--line)}.conversation-tabs>button{display:flex;align-items:center;gap:6px;position:relative;padding:0;font-size:var(--font-xs);color:var(--brand-primary)}.conversation-tabs>button svg{stroke-width:1.6}.conversation-tabs>button.active{font-weight:600;color:var(--brand-ink)}.conversation-tabs>button.active:after{content:"";height:2px;position:absolute;bottom:-1px;left:0;right:0;background:var(--brand-primary)}.conversation-tabs>button>span{font-family:DM Sans,sans-serif;padding:1px 4px;background:var(--brand-soft);border-radius:var(--radius-xs);color:var(--brand-primary);font-size:var(--font-xs)}.tab-right{margin-left:auto;align-self:center;display:flex;align-items:center;gap:4px;font-size:var(--font-xs);letter-spacing:.1px;color:var(--muted)}.live-dot{width:5px;height:5px;display:inline-block;background:var(--success);border-radius:50%;flex-shrink:0}.idle-dot{width:5px;height:5px;display:inline-block;background:var(--brand-pale);border-radius:50%;flex-shrink:0}.messages-scroll{flex:1;overflow:auto;padding-bottom:12px;scroll-behavior:smooth;position:relative}.channel-welcome{position:relative;display:flex;align-items:center;min-height:141px;margin:24px 28px 20px;border-radius:var(--radius-lg);background:var(--brand-soft);overflow:hidden;padding:24px 20px 24px 16px;gap:20px}.welcome-art{width:70px;height:70px;position:relative;display:flex;justify-content:center;align-items:center;flex-shrink:0}.welcome-sprout{background:var(--brand-pale);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-xl);width:48px;height:48px;color:var(--muted);transform:rotate(-9deg);position:relative;z-index:2}.welcome-sprout svg{transform:rotate(9deg)}.welcome-orbit{position:absolute;border:1px solid var(--line);border-radius:50%;width:72px;height:72px;transform:rotate(-35deg) scaleX(1.17);z-index:1}.welcome-orbit.orbit-two{width:90px;height:38px;transform:rotate(-25deg)}.welcome-star{color:var(--muted);position:absolute;font-size:var(--font-sm);z-index:3}.star-one{top:-6px;right:0}.star-two{bottom:-3px;left:-6px;font-size:var(--font-xl)}.welcome-art-dot{position:absolute;width:5px;height:5px;border-radius:50%;background:var(--brand-primary);top:9px;left:3px;z-index:3}.welcome-copy h2{font-size:var(--font-2xl);font-weight:600;letter-spacing:-1px;color:var(--brand-ink);margin:10px 0 8px;line-height:1.35}.welcome-copy p{font-size:var(--font-xs);color:var(--muted);letter-spacing:-.2px}.welcome-mini-label{position:absolute;display:flex;align-items:center;gap:4px;right:12px;top:10px;color:var(--muted);font-size:var(--font-xs)}.pinned-banner{display:flex;align-items:center;margin:0 28px 16px;padding:8px 10px;background:var(--warning-soft);border:1px solid var(--warning-line);width:calc(100% - 56px);border-radius:var(--radius-sm);gap:8px;font-size:var(--font-xs);text-align:left;color:var(--warning)}.pin-badge{color:var(--warning);width:15px}.pinned-banner strong{font-size:var(--font-xs);font-weight:600;color:var(--warning);white-space:nowrap}.pinned-banner>span:nth-last-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--warning)}.pinned-banner>svg{margin-left:auto;flex-shrink:0;color:var(--warning)}.day-divider{position:relative;margin:16px 28px;display:flex;align-items:center;gap:12px;color:var(--muted);font-size:var(--font-xs)}.day-divider:before,.day-divider:after{content:"";height:1px;flex:1;background:var(--brand-soft)}.day-divider>span{flex-shrink:0;background:var(--surface);padding:0 1px;font-weight:500}.message{position:relative;display:flex;gap:10px;padding:8px 28px 12px;transition:background var(--motion-fast) var(--ease-standard);scroll-margin-top:16px}.message:hover{background:var(--canvas)}.message-highlight{background:var(--brand-soft)!important}.message>.avatar{margin-top:2px}.message-body{min-width:0;flex:1}.message-meta{display:flex;align-items:center;gap:6px;min-height:18px;margin-bottom:4px}.message-meta>strong{font-size:var(--font-xs);font-weight:700;color:var(--brand-ink)}.message-meta time{font-family:DM Sans,sans-serif;font-size:var(--font-xs);color:var(--muted);font-weight:400;margin-left:1px}.role-label{font-size:var(--font-xs);border-radius:var(--radius-xs);padding:1px 4px;background:var(--brand-soft);color:var(--muted);display:inline-block;line-height:1.6;font-style:normal;letter-spacing:-.2px;font-weight:400}.role-label.teacher{background:var(--info-soft);color:var(--info)}.role-label.student{background:var(--brand-soft);color:var(--muted)}.message-text{font-size:var(--font-xs);line-height:1.95;color:var(--muted);white-space:pre-wrap;word-break:break-word;letter-spacing:-.14px}.message-text strong{color:var(--brand-ink);font-weight:600}.inline-channel{display:inline;padding:0 3px;color:var(--muted);border-radius:var(--radius-xs);background:var(--brand-soft);font-size:inherit}.message-pin{color:var(--warning);margin-left:2px}.message-saved{color:var(--muted)}.message-actions{position:absolute;right:22px;top:-13px;display:flex;align-items:center;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:var(--radius-sm);padding:2px;opacity:0;pointer-events:none;transition:opacity var(--motion-fast) var(--ease-standard);z-index:4}.message:hover>.message-actions,.message:focus-within>.message-actions{opacity:1;pointer-events:auto}.message-actions .icon-btn{width:28px;height:26px}.message-bottom{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:8px}.reactions{display:flex;align-items:center;gap:4px}.reaction{font-family:DM Sans,sans-serif;border:1px solid var(--line);border-radius:var(--radius-xs);background:var(--brand-soft);height:23px;display:flex;align-items:center;gap:4px;padding:0 6px;font-size:var(--font-xs);color:var(--muted);min-width:35px;justify-content:center}.reaction.mine{border-color:var(--brand-primary);background:var(--brand-pale);color:var(--brand-ink);font-weight:600;box-shadow:inset 0 0 0 1px var(--brand-primary)}.reaction.mine:hover{background:var(--brand-pale)}.reaction:hover{background:var(--brand-soft)}.reaction-add{display:flex;align-items:center;color:var(--muted);padding:3px 2px}.thread-link{display:flex;align-items:center;gap:4px;font-size:var(--font-xs);color:var(--brand-primary);padding:0}.thread-link strong{font-size:var(--font-xs);font-weight:500;color:var(--brand-ink)}.thread-link>span:not(.reply-avatar-stack){color:var(--brand-primary)}.reply-avatar-stack{display:flex;margin-right:2px;padding-left:3px}.reply-avatar-stack .avatar{margin-left:-3px;outline:2px solid white}.reaction-picker{position:absolute;top:14px;right:20px;background:var(--surface);padding:6px;border:1px solid var(--line);box-shadow:var(--shadow-lg);border-radius:var(--radius-md);display:flex;gap:3px;z-index:6;animation:menu-in var(--motion-enter) var(--ease-enter)}.reaction-picker>button{font-size:var(--font-xl);line-height:1;padding:4px;border-radius:var(--radius-xs)}.reaction-picker>button:hover{background:var(--brand-soft)}.guide-attachment{margin-top:10px;display:block;text-align:left;border:1px solid var(--line);border-radius:var(--radius-sm);width:320px;max-width:100%;overflow:hidden;padding:0;transition:border var(--motion-fast) var(--ease-standard)}.guide-attachment:hover{border-color:var(--brand-highlight)}.guide-preview{display:block;position:relative;background:var(--brand-soft);height:140px;overflow:hidden;padding:16px 20px}.guide-preview-top{font-family:DM Sans,sans-serif;font-size:var(--font-xs);letter-spacing:1.8px;color:var(--muted);display:flex;align-items:center;justify-content:space-between}.guide-preview>strong{font-size:var(--font-2xl);font-weight:500;color:var(--brand-ink);letter-spacing:-.8px;line-height:1.5;display:block;margin-top:12px;position:relative;z-index:2}.guide-preview-bottom{display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2;color:var(--muted);font-family:DM Sans,sans-serif;font-size:var(--font-xs);letter-spacing:1.6px;margin-top:16px}.guide-preview-bottom>span{font-size:var(--font-xs);letter-spacing:1px}.guide-preview-orbit{border:1px solid var(--line);border-radius:50%;position:absolute;width:165px;height:165px;right:-45px;bottom:-65px}.guide-preview-orbit:after{content:"";border:1px solid var(--line);position:absolute;inset:17px;border-radius:50%}.guide-preview-leaf{position:absolute;right:25px;bottom:24px;color:var(--muted);transform:rotate(-22deg)}.guide-caption{display:flex;align-items:center;padding:10px;background:var(--surface);gap:8px}.guide-caption>span:nth-child(2){min-width:0;flex:1}.guide-caption strong{display:block;font-size:var(--font-xs);font-weight:600;color:var(--brand-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.guide-caption small{display:block;font-size:var(--font-xs);margin-top:3px;color:var(--muted)}.file-icon-small{display:flex;align-items:center;justify-content:center;background:var(--brand-soft);color:var(--muted);flex-shrink:0;width:28px;height:30px;border-radius:var(--radius-xs)}.guide-caption>svg{color:var(--muted)}.file-attachment{display:flex;align-items:center;border:1px solid var(--line);border-radius:var(--radius-sm);gap:12px;padding:12px;margin-top:10px;background:var(--canvas);max-width:330px}.file-attachment>img{width:60px;height:50px;object-fit:cover;border-radius:var(--radius-xs)}.file-attachment>span{flex:1;min-width:0}.file-attachment strong{font-size:var(--font-xs);display:block;word-break:break-word}.file-attachment small{font-size:var(--font-xs);color:var(--muted);display:block;margin-top:4px}.dm-welcome{padding:28px 28px 10px}.dm-welcome>.avatar{width:50px;height:50px;font-size:var(--font-2xl);border-radius:var(--radius-card)}.dm-welcome h2{font-size:var(--font-2xl);color:var(--brand-ink);margin:12px 0 8px;letter-spacing:-.8px}.dm-welcome p{font-size:var(--font-xs);color:var(--muted)}.composer-container{padding:10px 28px 0;background:var(--surface);flex-shrink:0}.composer{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);position:relative;box-shadow:var(--shadow-sm)}.composer:focus-within{border-color:var(--brand-highlight);box-shadow:0 0 0 2px var(--line)}.composer-format{height:30px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 8px;gap:3px;background:var(--canvas);border-radius:var(--radius-md) var(--radius-md) 0 0}.composer-format .icon-btn{width:21px;height:23px;color:var(--brand-primary)}.format-divider{height:11px;width:1px;background:var(--brand-pale);margin:0 6px}.format-hint{font-size:var(--font-xs);color:var(--muted)}.composer-safe{display:flex;align-items:center;gap:4px;margin-left:auto;color:var(--muted);font-size:var(--font-xs)}.composer textarea{padding:10px 12px 2px;width:100%;resize:none;border:0;min-height:45px;max-height:140px;background:transparent;font-size:var(--font-xs);color:var(--muted);line-height:1.9;display:block}.composer textarea::placeholder{color:var(--muted);font-size:var(--font-xs)}.composer-tools{height:36px;display:flex;align-items:center;justify-content:space-between;padding:0 10px 8px}.composer-tools>div:first-child{display:flex;align-items:center;gap:6px}.composer-tools .icon-btn{height:23px;width:23px;color:var(--brand-primary)}.composer-tools .attach-button{background:var(--brand-soft);color:var(--brand-primary)}.attachment-help{font-size:var(--font-xs);color:var(--muted);margin-left:3px}.send-button{width:29px;height:25px;background:var(--brand-primary);color:var(--on-brand);border-radius:var(--radius-xs);display:flex;align-items:center;justify-content:center;transition:background var(--motion-fast) var(--ease-standard)}.send-button:hover{background:var(--brand-primary-hover)}.send-button:disabled{background:var(--brand-pale);color:var(--brand-primary)}.composer-footer{height:27px;display:flex;align-items:center;justify-content:space-between;font-size:var(--font-xs);color:var(--muted);gap:8px}.composer-footer>span{display:flex;align-items:center;gap:4px}.composer-footer kbd{font-family:inherit;font-size:var(--font-xs);color:var(--muted)}.composer-emojis{position:absolute;bottom:35px;left:7px;display:flex;align-items:center;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-md);border-radius:var(--radius-sm);padding:6px;z-index:6;gap:2px}.composer-emojis button{padding:4px;font-size:var(--font-xl);border-radius:var(--radius-xs)}.composer-emojis button:hover{background:var(--brand-soft)}.pending-attachment{display:flex;align-items:center;gap:6px;font-size:var(--font-xs);border:1px solid var(--line);padding:6px 8px;margin:8px 10px 0;border-radius:var(--radius-xs);background:var(--brand-soft);color:var(--muted)}.pending-attachment>span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pending-attachment>button{padding:0;color:var(--brand-primary)}.readonly-channel{height:77px;background:var(--brand-soft);border:1px solid var(--line);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:var(--font-xs);gap:8px;padding:12px;color:var(--muted);line-height:1.8}.sending-spinner{height:13px;width:13px;border:1.5px solid var(--line);border-top-color:var(--surface);border-radius:50%;animation:spin .7s linear infinite}.context-panel{width:271px;flex-shrink:0;border-left:1px solid var(--line);background:var(--canvas);display:flex;flex-direction:column;min-height:0}.context-heading{min-height:46px;height:46px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid var(--line)}.context-heading h3{font-size:var(--font-xs);font-weight:600;letter-spacing:-.3px;color:var(--brand-ink);display:flex;align-items:center;gap:6px}.context-heading .icon-btn{color:var(--brand-primary);width:20px}.context-scroll{overflow:auto;padding:20px 20px 0;flex:1}.daily-card{border:1px solid var(--line);background:var(--brand-soft);border-radius:var(--radius-md);padding:12px}.daily-card-top{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-xs);color:var(--muted)}.daily-card-top>span:first-child{display:flex;align-items:center;gap:4px}.daily-card-top>span:last-child{font-size:var(--font-xs);font-family:DM Sans,sans-serif;letter-spacing:1px}.sun-icon{font-size:var(--font-lg);line-height:15px;color:var(--warning)}.daily-card h3{font-size:var(--font-lg);letter-spacing:-.7px;font-weight:600;color:var(--brand-ink);margin:12px 0 6px}.checkin-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;height:32px;margin-top:16px;background:var(--brand-primary);color:var(--on-brand);border-radius:var(--radius-xs);font-size:var(--font-xs);font-weight:500}.checkin-btn>svg:last-child{margin-left:auto}.checkin-btn>svg:first-child{margin-left:4px}.checkin-btn:not(:has(svg:last-child:nth-child(2))){justify-content:center}.checkin-btn:hover{background:var(--brand-primary-hover)}.checkin-btn.done{background:var(--brand-pale);color:var(--brand-primary)}.checkin-btn.done>svg{margin:0}.context-section{padding:20px 0;border-bottom:1px solid var(--line)}.section-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.section-title-row h3{font-size:var(--font-xs);font-weight:600;color:var(--brand-ink);display:flex;align-items:center;gap:6px}.section-title-row>button{padding:0;font-size:var(--font-xs);color:var(--brand-ink);display:flex;align-items:center;gap:3px;font-family:DM Sans,Noto Sans KR,sans-serif}.section-title-row>button>span{color:var(--brand-ink)}.mini-tasks{margin:12px 0 8px;display:flex;flex-direction:column;gap:10px}.mini-task{display:flex;align-items:center;gap:8px;text-align:left;font-size:var(--font-xs);letter-spacing:-.2px;color:var(--muted);padding:0;line-height:1.5}.task-checkbox{height:14px;width:14px;border:1px solid var(--line);border-radius:var(--radius-xs);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--on-brand);transition:background var(--motion-fast) var(--ease-standard)}.complete .task-checkbox{background:var(--success);border-color:var(--line)}.mini-task.complete>span:last-child,.task-row.complete .task-row-title{color:var(--brand-ink);text-decoration:line-through}.add-plan-link{display:flex;align-items:center;gap:6px;font-size:var(--font-xs);color:var(--brand-primary);padding:3px 0}.members-preview{padding-top:20px;padding-bottom:20px}.soft-count{font-size:var(--font-xs);color:var(--muted);font-family:DM Sans,sans-serif}.online-caption{display:flex;align-items:center;gap:4px;font-size:var(--font-xs);color:var(--muted);margin-top:-3px;margin-bottom:12px}.online-caption .live-dot{width:4px;height:4px}.member-preview{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:0;margin:0 0 12px}.member-preview:last-child{margin-bottom:0}.member-preview strong{font-size:var(--font-xs);font-weight:500;color:var(--brand-ink);display:flex;align-items:center;gap:6px}.member-preview small{display:block;font-size:var(--font-xs);color:var(--muted);margin-top:3px;letter-spacing:-.2px}.member-preview .role-label{font-size:var(--font-xs);padding:0 4px}.encouragement-card{position:relative;display:flex;align-items:flex-start;flex-direction:column;width:100%;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--warning-soft);overflow:hidden;text-align:left;padding:16px 12px;margin-top:20px}.encouragement-card>.eyebrow{font-size:var(--font-xs);letter-spacing:1.6px;color:var(--muted);position:relative;z-index:2}.encouragement-card>strong{font-size:var(--font-md);font-weight:500;letter-spacing:-.5px;line-height:1.7;color:var(--brand-ink);margin-top:8px;position:relative;z-index:2}.encouragement-link{display:flex;align-items:center;gap:6px;margin-top:16px;font-size:var(--font-xs);color:var(--brand-primary);position:relative;z-index:2}.encouragement-orbit{position:absolute;width:125px;height:125px;border:1px solid var(--line);border-radius:50%;right:-27px;bottom:-34px}.encouragement-orbit:before{content:"";position:absolute;inset:12px;border:1px solid var(--line);border-radius:50%}.encouragement-leaf{position:absolute;right:16px;top:44px;color:var(--muted);transform:rotate(-17deg)}.context-footnote{display:flex;align-items:center;justify-content:center;gap:4px;color:var(--muted);font-size:var(--font-xs);margin:20px 0 16px}.thread-panel{width:330px;background:var(--surface)}.thread-messages{flex:1;overflow:auto;padding:16px 0}.thread-messages .message{padding:12px 16px;gap:8px}.thread-messages .avatar{width:28px;height:28px;font-size:var(--font-xs);border-radius:var(--radius-md)}.thread-messages .message-text{font-size:var(--font-xs);line-height:1.9}.thread-messages .message-meta>strong{font-size:var(--font-xs)}.thread-divider{margin:8px 20px;border-top:1px solid var(--line);padding-top:12px;color:var(--muted);font-size:var(--font-xs)}.thread-composer{padding:12px 16px 16px}.small-composer .composer-format,.small-composer .composer-safe{display:none}.small-composer textarea{min-height:60px}.small-composer .composer-tools{padding-top:3px;height:33px}.compact .message-actions{right:10px}.compact .message-bottom{gap:4px}.task-row>.task-checkbox{width:18px;height:18px;border-radius:var(--radius-xs)}.saved-list{max-width:950px}.saved-card{padding:12px 0 10px;margin-bottom:16px}.saved-card .message{padding:12px 24px}.saved-channel{display:flex;align-items:center;gap:6px;font-size:var(--font-xs);color:var(--muted);padding:0 24px;margin-bottom:4px}.saved-channel>svg:last-child{margin-left:4px}.content-scroll{flex:1;min-height:0;overflow:auto;padding:28px 0}.content-heading{padding:0 28px 24px}.content-heading h2{font-size:var(--font-2xl);letter-spacing:-.7px;color:var(--brand-ink);font-weight:600}.content-heading p{font-size:var(--font-xs);color:var(--muted);margin-top:10px}.shared-file-row{display:flex;align-items:center;gap:12px;padding:16px 28px;border-bottom:1px solid var(--line)}.file-type-icon{background:var(--brand-soft);color:var(--muted);width:40px;height:45px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm)}.shared-file-row>div{flex:1;min-width:0}.shared-file-row strong{font-size:var(--font-xs);color:var(--brand-ink);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shared-file-row small{font-size:var(--font-xs);color:var(--muted);display:block;margin-top:6px}@media(min-width:1650px){.context-panel{width:300px}.thread-panel{width:370px}.message-text{font-size:var(--font-xs)}.message-meta>strong{font-size:var(--font-xs)}.message{padding-top:10px;padding-bottom:16px}.channel-welcome{min-height:160px}.welcome-copy h2{font-size:var(--font-3xl)}.welcome-copy p{font-size:var(--font-xs)}.context-scroll{padding:24px 24px 0}.daily-card{padding:16px}.daily-card h3{font-size:var(--font-xl)}.daily-card p{font-size:var(--font-xs)}.context-section{padding-top:28px;padding-bottom:24px}.mini-task{font-size:var(--font-xs)}.member-preview{margin-bottom:16px}.member-preview strong{font-size:var(--font-xs)}.encouragement-card{padding:20px 16px}.encouragement-card>strong{font-size:var(--font-lg)}}@media(max-width:1250px){.context-panel{width:240px}.context-scroll{padding:16px 12px 0}.context-heading{padding:0 12px}.context-section{padding-top:20px;padding-bottom:16px}.daily-card{padding:12px}.daily-card h3{font-size:var(--font-lg)}.daily-card p{font-size:var(--font-xs)}.encouragement-card{margin-top:16px;padding:16px 12px}.encouragement-card>strong{font-size:var(--font-sm)}.encouragement-link{font-size:var(--font-xs)}.conversation-tabs{padding:0 20px;gap:20px}.channel-welcome{margin:20px 20px 16px;padding:24px 16px;gap:16px;min-height:128px}.welcome-art{width:52px;height:60px;transform:scale(.8)}.welcome-copy h2{font-size:var(--font-xl);letter-spacing:-.9px}.welcome-copy p{font-size:var(--font-xs)}.welcome-copy .eyebrow{font-size:var(--font-xs);letter-spacing:1.3px}.welcome-mini-label{font-size:var(--font-xs)}.message{padding-left:20px;padding-right:20px}.pinned-banner{margin-left:20px;margin-right:20px;width:calc(100% - 44px)}.pinned-banner>span:nth-last-child(2){max-width:240px}.composer-container{padding-left:20px;padding-right:20px}.tab-right,.composer-footer,.composer-footer kbd{font-size:var(--font-xs)}.composer-footer>span:last-child{font-size:var(--font-xs)}.thread-panel{width:310px}.thread-panel .message{padding-left:12px;padding-right:12px}}@media(max-width:1080px){.context-panel:not(.thread-panel){display:none}.channel-welcome{padding:24px;gap:24px;min-height:143px}.welcome-copy h2{font-size:var(--font-2xl)}.welcome-copy p{font-size:var(--font-xs)}.welcome-art{width:70px;height:70px;transform:scale(1)}.message-text{font-size:var(--font-xs)}.conversation-tabs{gap:24px}.thread-panel{width:300px}.thread-panel .message-text{font-size:var(--font-xs)}.thread-panel .guide-preview>strong{font-size:var(--font-xl)}.thread-panel .guide-preview{height:130px}.chat-column:has(+.thread-panel) .channel-welcome{padding:20px 16px;gap:10px}.chat-column:has(+.thread-panel) .welcome-art{display:none}.chat-column:has(+.thread-panel) .welcome-copy h2{font-size:var(--font-xl)}.chat-column:has(+.thread-panel) .welcome-copy p{font-size:var(--font-xs)}.chat-column:has(+.thread-panel) .tab-right{display:none}.chat-column:has(+.thread-panel) .conversation-tabs{gap:16px}.chat-column:has(+.thread-panel) .conversation-tabs>button{font-size:var(--font-xs)}.chat-column:has(+.thread-panel) .composer-footer>span:last-child{display:none}.chat-column:has(+.thread-panel) .composer-safe{display:none}.chat-column:has(+.thread-panel) .message{padding-left:16px;padding-right:16px;gap:8px}.chat-column:has(+.thread-panel) .message>.avatar{width:29px;height:29px;font-size:var(--font-xs);border-radius:var(--radius-md)}.chat-column:has(+.thread-panel) .message-text{font-size:var(--font-xs)}}@media(max-width:800px){.channel-welcome{padding:24px 16px;gap:16px}.welcome-copy h2{font-size:var(--font-xl)}.welcome-copy p{font-size:var(--font-xs);line-height:1.8}.welcome-art{transform:scale(.85);width:52px}.welcome-copy .eyebrow,.message-text{font-size:var(--font-xs)}.message{gap:8px}.message>.avatar{width:31px;height:31px;font-size:var(--font-xs);border-radius:var(--radius-lg)}.conversation-tabs{gap:20px}.tab-right{display:none}.pinned-banner>span:nth-last-child(2){max-width:150px}.thread-panel{position:absolute;right:0;top:129px;bottom:0;width:min(370px,calc(100vw - 58px));z-index:30;box-shadow:var(--shadow-lg)}.chat-column:has(+.thread-panel) .channel-welcome{padding:24px 16px;gap:16px}.chat-column:has(+.thread-panel) .welcome-art{display:flex}.composer-footer>span:last-child{display:none}.message-actions{opacity:1;pointer-events:auto;position:static;border:0;box-shadow:none;padding:0;background:transparent;align-self:flex-start;margin-left:-4px;gap:0}.message-actions .icon-btn{width:22px;height:24px}.message-actions .icon-btn svg{width:13px}.message{flex-wrap:wrap}.message>.message-body{min-width:calc(100% - 43px)}.message>.message-actions{margin:0 0 0 40px}.message-meta{margin-top:1px}.message-actions .icon-btn.active{background:transparent}.message-bottom{margin-bottom:1px}.thread-panel .message-actions{margin-left:40px}.thread-panel .message>.message-body{min-width:calc(100% - 39px)}}@media(max-width:600px){.conversation-tabs{height:43px;min-height:43px;padding:0 20px;gap:24px}.conversation-tabs>button{font-size:var(--font-xs)}.channel-welcome{margin:20px 16px 16px;padding:24px 16px;gap:16px;min-height:127px}.welcome-art{width:43px;transform:scale(.75)}.welcome-copy h2{font-size:var(--font-xl);letter-spacing:-.8px;line-height:1.55;margin:8px 0 4px}.welcome-copy h2>span{display:block}.welcome-copy p{font-size:var(--font-xs);max-width:230px;word-break:keep-all}.welcome-copy .eyebrow{font-size:var(--font-xs);letter-spacing:1.25px}.welcome-mini-label{display:none}.pinned-banner{margin:0 16px 12px;width:calc(100% - 32px);padding:8px 10px;gap:6px}.pinned-banner>span:nth-last-child(2){font-size:var(--font-xs);max-width:160px}.pinned-banner>strong{font-size:var(--font-xs)}.day-divider{margin-left:20px;margin-right:20px;font-size:var(--font-xs)}.message{padding:10px 16px 12px;gap:8px}.message-text{font-size:var(--font-xs);line-height:1.95}.message-meta>strong{font-size:var(--font-xs)}.message-meta{gap:6px}.message-meta time{font-size:var(--font-xs)}.guide-attachment{width:285px}.guide-preview{height:135px;padding:16px}.guide-preview>strong{font-size:var(--font-xl)}.guide-caption strong,.guide-caption small,.guide-preview-bottom{font-size:var(--font-xs)}.message-actions{opacity:1;pointer-events:auto}.composer-container{padding:8px 16px 0}.composer-format{height:28px}.format-hint,.composer-safe{font-size:var(--font-xs)}.composer textarea{font-size:var(--font-xs);padding:10px 12px 4px;min-height:51px}.composer textarea::placeholder{font-size:var(--font-xs)}.composer-tools{height:38px;padding:0 10px 8px}.composer-footer{height:24px;font-size:var(--font-xs)}.attachment-help{font-size:var(--font-xs)}.thread-panel{position:fixed;top:123px;bottom:0;right:0;width:100%;box-shadow:none;z-index:40}.thread-messages .message-text{font-size:var(--font-xs)}.thread-panel .message{padding:12px 20px}.thread-panel .guide-preview>strong{font-size:var(--font-2xl)}.thread-composer{padding:10px 16px 16px}.chat-column:has(+.thread-panel) .welcome-art{display:flex}.chat-column:has(+.thread-panel) .channel-welcome{gap:16px;padding:24px 16px}.chat-column:has(+.thread-panel) .conversation-tabs{gap:24px}.chat-column:has(+.thread-panel) .conversation-tabs>button{font-size:var(--font-xs)}.chat-column:has(+.thread-panel) .message{padding:10px 16px 12px}.chat-column:has(+.thread-panel) .message-text{font-size:var(--font-xs)}.chat-column:has(+.thread-panel) .welcome-copy p{font-size:var(--font-xs)}.task-row>.task-checkbox{width:17px;height:17px}.readonly-channel{font-size:var(--font-xs);height:85px;align-items:flex-start;padding-top:20px}.readonly-channel svg{margin-top:2px}}.conversation-tabs>button{font-size:var(--font-xs);color:var(--muted)}.tab-right{font-size:var(--font-xs)}.conversation-tabs>button>span{font-size:var(--font-xs)}.channel-welcome{min-height:124px;margin-top:20px;margin-bottom:16px;padding-top:20px;padding-bottom:20px}.welcome-copy h2{font-size:var(--font-3xl);letter-spacing:-1.1px;color:var(--brand-ink)}.welcome-copy h2 span{color:var(--brand-ink)}.welcome-copy p{font-size:var(--font-xs);color:var(--muted)}.welcome-copy .eyebrow,.pinned-banner,.pinned-banner strong,.day-divider{font-size:var(--font-xs)}.message{padding-top:10px;padding-bottom:16px}.message-meta>strong{font-size:var(--font-xs);color:var(--brand-ink)}.message-meta time{font-size:var(--font-xs);color:var(--muted)}.message-text{font-size:var(--font-sm);color:var(--muted);line-height:1.85}.role-label{font-size:var(--font-xs)}.reaction{font-size:var(--font-xs);height:25px;min-width:38px}.reaction>span{font-size:var(--font-xs)}.thread-link,.thread-link strong{font-size:var(--font-xs)}.guide-preview{height:121px;padding-top:12px}.guide-preview>strong{font-size:var(--font-xl);margin-top:10px}.guide-preview-bottom{margin-top:10px}.guide-caption strong{font-size:var(--font-xs);color:var(--brand-ink)}.guide-caption small{font-size:var(--font-xs);color:var(--muted)}.composer textarea,.composer textarea::placeholder{font-size:var(--font-xs)}.composer textarea{padding-top:12px;min-height:51px}.format-hint,.composer-safe,.attachment-help,.composer-footer,.composer-footer kbd{font-size:var(--font-xs)}.composer-format{height:29px}.context-heading h3{font-size:var(--font-xs);color:var(--brand-ink)}.daily-card-top{font-size:var(--font-xs);color:var(--muted)}.daily-card h3{font-size:var(--font-xl);color:var(--brand-ink)}.daily-card p{font-size:var(--font-xs);color:var(--muted)}.checkin-btn{font-size:var(--font-xs);height:34px;background:var(--brand-primary)}.section-title-row h3{font-size:var(--font-xs);color:var(--brand-ink)}.section-title-row>button{font-size:var(--font-xs)}.mini-task{font-size:var(--font-xs);color:var(--muted)}.mini-tasks{gap:12px;margin-top:12px}.add-plan-link{font-size:var(--font-xs);color:var(--brand-primary)}.online-caption{font-size:var(--font-xs)}.member-preview strong{font-size:var(--font-xs);color:var(--brand-ink)}.member-preview small{font-size:var(--font-xs);color:var(--muted)}.encouragement-card>strong{color:var(--brand-ink);font-size:var(--font-lg)}.encouragement-link{font-size:var(--font-xs);color:var(--brand-primary)}.context-footnote{font-size:var(--font-xs)}.content-heading h2{color:var(--brand-ink)}.content-heading p{color:var(--muted)}.shared-file-row strong{color:var(--brand-ink);font-size:var(--font-xs)}@media(max-width:1250px){.channel-welcome{gap:16px;padding-left:16px;padding-right:16px}.welcome-copy h2{font-size:var(--font-2xl)}.welcome-copy p{font-size:var(--font-xs)}.welcome-art{width:52px;transform:scale(.85)}.mini-task,.member-preview small,.daily-card p,.context-heading h3{font-size:var(--font-xs)}.daily-card h3{font-size:var(--font-lg)}}@media(max-width:800px){.welcome-copy h2{font-size:var(--font-xl)}.welcome-copy p,.message-text,.composer-safe,.format-hint{font-size:var(--font-xs)}}@media(max-width:600px){.welcome-copy h2{font-size:var(--font-xl)}.welcome-copy p,.welcome-copy .eyebrow{font-size:var(--font-xs)}.channel-welcome{min-height:129px;gap:16px}.welcome-art{width:42px;transform:scale(.75)}.pinned-banner,.pinned-banner strong{font-size:var(--font-xs)}.pinned-banner>span:nth-last-child(2){font-size:var(--font-xs)}.conversation-tabs>button{font-size:var(--font-xs)}.message-text{font-size:var(--font-xs)}.message-meta>strong{font-size:var(--font-xs)}.composer textarea,.composer textarea::placeholder{font-size:var(--font-xs)}.composer-footer,.composer-footer kbd,.guide-caption strong,.guide-caption small{font-size:var(--font-xs)}}.dashboard-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:20px}.task-row{width:100%;display:flex;align-items:center;text-align:left;gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}.task-row:last-child{border-bottom:none}.task-row-title{font-size:var(--font-xs);letter-spacing:-.3px;color:var(--brand-ink);flex:1;line-height:1.7}.task-done-icon{color:var(--muted)}.dashed-add{height:36px;border:1px dashed var(--line);color:var(--muted);display:flex;align-items:center;justify-content:center;gap:6px;font-size:var(--font-xs);width:100%;border-radius:var(--radius-sm);margin-top:20px}.dashed-add:hover{background:var(--brand-soft)}.notice-summary{display:flex;align-items:flex-start;gap:8px;width:100%;flex-wrap:wrap;text-align:left;padding:12px 0;border-bottom:1px solid var(--line)}.notice-tag{font-size:var(--font-xs);color:var(--info);background:var(--info-soft);border-radius:var(--radius-xs);padding:1px 4px;line-height:1.8}.notice-summary strong{font-size:var(--font-xs);font-weight:500;color:var(--brand-ink);flex:1;line-height:1.8}.notice-summary small{font-size:var(--font-xs);color:var(--muted);margin-left:40px;display:flex;align-items:center;justify-content:space-between;width:100%}.dashboard-tip{margin-top:20px;padding:12px;display:flex;align-items:flex-start;gap:8px;border-radius:var(--radius-sm);background:var(--brand-soft);color:var(--muted)}.dashboard-tip>svg{margin-top:3px}.dashboard-tip p{font-size:var(--font-xs);line-height:1.9;color:var(--muted)}.dashboard-tip button{font-size:var(--font-xs);color:var(--brand-primary);padding:0;display:flex;align-items:center;gap:4px}@media(max-width:1250px){.dashboard-grid{gap:16px}}@media(max-width:1080px){.dashboard-grid{grid-template-columns:1fr}}@media(max-width:800px){.dashboard-grid .white-card{padding:20px}.task-row-title{font-size:var(--font-xs)}.focus-side .task-row{gap:8px}}@media(max-width:600px){.dashboard-grid{gap:16px}.task-row-title{font-size:var(--font-xs)}.task-row{gap:10px;padding:16px 0}.task-done-icon{display:none}}.task-row-title{color:var(--brand-ink);font-size:var(--font-sm)}.dashed-add{font-size:var(--font-xs);color:var(--muted)}.notice-summary strong{color:var(--brand-ink);font-size:var(--font-xs)}.notice-summary small,.dashboard-tip p{font-size:var(--font-xs);color:var(--muted)}.dashboard-tip button{font-size:var(--font-xs);color:var(--brand-primary)}@media(max-width:800px){.task-row-title{font-size:var(--font-xs)}}@media(max-width:600px){.task-row-title,.notice-summary strong{font-size:var(--font-xs)}}.planner-summary{display:flex;align-items:center;gap:16px;background:var(--brand-soft);border:1px solid var(--line);border-bottom:none;border-radius:var(--radius-md) var(--radius-md) 0 0;padding:24px}.planner-progress-icon{height:49px;width:49px;display:flex;align-items:center;justify-content:center;background:var(--brand-pale);border-radius:var(--radius-card);color:var(--muted)}.planner-summary h3{font-size:var(--font-md);letter-spacing:-.5px;color:var(--brand-ink);font-weight:600}.planner-summary p{font-size:var(--font-xs);color:var(--muted);margin-top:8px}.planner-summary>strong{margin-left:auto;color:var(--brand-ink);font-size:var(--font-5xl);font-weight:600;letter-spacing:-1px}.planner-summary>strong>span{font-size:var(--font-xl)}.planner-card{padding:24px 28px}@media(max-width:1250px){.planner-card{padding:20px}}.task-form{display:flex;align-items:center;gap:8px;border-top:1px solid var(--line);padding-top:24px;margin-top:16px}.task-form select{height:37px;border:1px solid var(--line);border-radius:var(--radius-xs);color:var(--muted);background:var(--canvas);padding:0 10px;font-size:var(--font-xs);max-width:110px}.task-form input{height:37px;flex:1;border:1px solid var(--line);border-radius:var(--radius-xs);background:var(--surface);padding:0 10px;font-size:var(--font-xs);color:var(--muted);min-width:0}.task-form input:focus{border-color:var(--brand-highlight)}.task-form input::placeholder{color:var(--muted);font-size:var(--font-xs)}.task-form .primary-btn{font-size:var(--font-xs)}.gentle-note{display:flex;align-items:center;gap:8px;justify-content:center;color:var(--muted);font-size:var(--font-xs);margin-top:28px;line-height:1.8}@media(max-width:800px){.planner-summary{padding:20px;gap:12px}.planner-summary h3,.planner-summary p{font-size:var(--font-xs)}.planner-summary>strong{font-size:var(--font-3xl)}.planner-progress-icon{width:40px;height:40px;border-radius:var(--radius-lg)}.planner-progress-icon svg{width:24px}.planner-card{padding:20px}.task-form{flex-wrap:wrap;gap:6px}.task-form input{flex-basis:60%}.task-form .primary-btn{margin-left:auto}.gentle-note{font-size:var(--font-xs);text-align:left;align-items:flex-start}}@media(max-width:600px){.task-form{display:grid;grid-template-columns:1fr auto}.task-form select{grid-column:1/-1;max-width:110px;font-size:var(--font-xs)}.task-form input{height:39px;width:100%}.task-form .primary-btn{height:39px;padding:0 12px}.planner-summary{padding:20px 16px;gap:10px}.planner-summary h3{font-size:var(--font-xs);line-height:1.9;max-width:200px}.planner-summary p{font-size:var(--font-xs);margin-top:4px}.planner-summary>strong{font-size:var(--font-3xl)}.planner-summary>strong>span{font-size:var(--font-md)}.planner-progress-icon{width:35px;height:39px;border-radius:var(--radius-lg)}.planner-progress-icon svg{width:22px}.gentle-note{font-size:var(--font-xs);line-height:1.9;padding:0 4px}}.planner-summary h3{color:var(--brand-ink);font-size:var(--font-lg)}.planner-summary p{color:var(--muted);font-size:var(--font-xs)}.task-form input{font-size:var(--font-xs);color:var(--muted)}.task-form input::placeholder{font-size:var(--font-xs);color:var(--muted)}.gentle-note{font-size:var(--font-xs);color:var(--muted)}@media(max-width:800px){.planner-summary h3,.planner-summary p{font-size:var(--font-xs)}}@media(max-width:600px){.task-form input,.gentle-note,.planner-summary h3{font-size:var(--font-xs)}}.standard-page .attendance-layout,.standard-page .saved-list{max-width:none;width:100%}.attendance-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:24px;max-width:1050px}.calendar-card{padding:28px}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.calendar-header h3{font-size:var(--font-lg);font-weight:600;letter-spacing:-.5px;color:var(--brand-ink)}.calendar-header>div{display:flex;gap:4px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;text-align:center}.calendar-day-label{font-size:var(--font-xs);color:var(--muted);height:30px}.calendar-day{display:flex;align-items:center;justify-content:center;flex-direction:column;border-radius:var(--radius-md);aspect-ratio:1;color:var(--muted);font-size:var(--font-xs);gap:4px;border:1px solid transparent}.calendar-day.today{border-color:var(--brand-highlight);color:var(--brand-primary);background:var(--brand-soft)}.calendar-day.attended{background:var(--success-soft);color:var(--success)}.calendar-legend{border-top:1px solid var(--line);margin-top:20px;padding-top:20px;display:flex;align-items:center;justify-content:center;gap:20px;font-size:var(--font-xs);color:var(--muted)}.calendar-legend>span{display:flex;align-items:center;gap:6px}.calendar-legend i{width:10px;height:10px;background:var(--brand-pale);border-radius:var(--radius-xs);display:inline-block}.calendar-legend>span:last-child>i{background:var(--brand-soft);border:1px solid var(--brand-highlight)}.attendance-summary{text-align:center;padding:28px 24px}@media(max-width:1250px){.attendance-summary{padding:20px}}.attendance-symbol{width:70px;height:70px;border-radius:var(--radius-xl);background:var(--brand-soft);color:var(--muted);display:inline-flex;align-items:center;justify-content:center}.attendance-summary h3{font-size:var(--font-lg);color:var(--brand-ink);letter-spacing:-.5px;margin:20px 0 10px;font-weight:600}.attendance-summary>p{font-size:var(--font-xs);color:var(--muted)}.attendance-summary>.primary-btn{width:100%;margin:24px 0;background:var(--brand-primary);height:39px}.attendance-summary>.primary-btn:disabled{color:var(--brand-primary);background:var(--brand-pale)}.attendance-total{display:flex;align-items:center;justify-content:space-between;text-align:left;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;color:var(--muted);font-size:var(--font-xs)}.attendance-total>strong{font-size:var(--font-4xl);font-weight:600;color:var(--brand-ink)}.attendance-total small{font-size:var(--font-xs);margin-left:4px}.attendance-history{padding-top:12px}.attendance-history>div{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-xs);color:var(--muted);padding:8px 0}.attendance-history strong{display:flex;align-items:center;gap:6px;color:var(--brand-ink);font-size:var(--font-xs);font-weight:500}.attendance-history>p{font-size:var(--font-xs);color:var(--muted);margin-top:20px}@media(max-width:1250px){.calendar-card{padding:20px}}@media(max-width:1080px){.attendance-layout{grid-template-columns:1fr 1fr;gap:16px}.calendar-grid{gap:4px}}@media(max-width:800px){.attendance-layout{grid-template-columns:1fr}.calendar-card{padding:20px}}@media(max-width:600px){.calendar-card{padding:24px 20px}.calendar-day{font-size:var(--font-xs)}.calendar-grid{gap:8px}}.calendar-header h3{color:var(--brand-ink)}.calendar-day-label{font-size:var(--font-xs);color:var(--muted)}.calendar-day{color:var(--muted);font-size:var(--font-md)}.calendar-day.today{color:var(--brand-primary)}.calendar-day.attended{color:var(--success)}.calendar-legend{font-size:var(--font-xs);color:var(--muted)}.attendance-summary h3{color:var(--brand-ink)}.attendance-summary>p{color:var(--muted);font-size:var(--font-xs)}.attendance-total{color:var(--muted)}.attendance-history>div{font-size:var(--font-xs);color:var(--muted)}.attendance-history strong{color:var(--brand-ink);font-size:var(--font-xs)}@media(max-width:600px){.calendar-day{font-size:var(--font-md)}}.focus-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:1100px}.focus-card{text-align:center;padding:28px 24px;background:var(--brand-soft);border:1px solid var(--line);border-radius:var(--radius-lg)}.focus-label{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-xs);color:var(--muted)}.focus-ring{width:250px;height:250px;margin:32px auto 24px;padding:4px;border-radius:50%;background:conic-gradient(var(--brand-primary) var(--progress),var(--brand-pale) 0);position:relative}.focus-ring>div{height:100%;width:100%;border-radius:50%;background:var(--brand-soft);display:flex;align-items:center;justify-content:center;flex-direction:column}.focus-ring svg{color:var(--muted);margin-bottom:16px}.focus-ring strong{font-size:50px;letter-spacing:2px;color:var(--brand-ink);font-weight:500;font-variant-numeric:tabular-nums}.focus-ring strong>span{color:var(--brand-ink);margin:0 4px}.focus-ring small{font-size:var(--font-xs);color:var(--muted);margin-top:12px}.focus-presets{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:24px}.focus-presets button{padding:6px 16px;border-radius:var(--radius-xs);border:1px solid var(--line);color:var(--brand-primary);font-size:var(--font-xs)}.focus-presets button.active{background:var(--brand-pale);border-color:var(--line);color:var(--brand-primary)}.focus-controls{display:flex;align-items:center;justify-content:center;gap:8px}.focus-controls .primary-btn{background:var(--brand-primary);min-width:155px}.focus-controls .icon-btn{color:var(--brand-primary);border:1px solid var(--line);width:37px;height:37px}.focus-note{font-size:var(--font-xs);color:var(--muted);margin-top:20px}.focus-side h3{font-size:var(--font-md);font-weight:600;color:var(--brand-ink);margin-bottom:10px}.focus-side>p{font-size:var(--font-xs);color:var(--muted);margin-bottom:24px}.focus-quote{margin-top:32px;padding:24px 0 0;border-top:1px solid var(--line);color:var(--muted);text-align:center}.focus-quote>span{font-family:Georgia,serif;font-size:55px;color:var(--muted);line-height:1}.focus-quote blockquote{margin:0;line-height:2;font-size:var(--font-xs);color:var(--muted);font-weight:400;letter-spacing:-.3px}.focus-quote small{display:block;margin-top:16px;font-size:var(--font-xs);color:var(--muted)}.all-done{display:flex;align-items:center;gap:10px;justify-content:center;padding:28px 0}@media(max-width:1250px){.focus-ring{width:220px;height:220px}}@media(max-width:1080px){.focus-layout{grid-template-columns:1fr}.focus-card{max-width:600px;width:100%}.focus-side{max-width:600px}}@media(max-width:800px){.focus-card{padding:24px 16px}.focus-ring{width:200px;height:200px}.focus-ring strong{font-size:43px}}@media(max-width:600px){.focus-card{padding:28px 20px}.focus-ring{width:245px;height:245px}.focus-ring strong{font-size:48px}.focus-layout{gap:20px}}.focus-label{color:var(--muted);font-size:var(--font-xs)}.focus-ring strong{color:var(--brand-ink)}.focus-ring small,.focus-note{color:var(--muted)}.focus-side h3{color:var(--brand-ink)}.focus-side>p{color:var(--muted);font-size:var(--font-xs)}.focus-quote blockquote,.focus-quote small{color:var(--muted)}.admin-table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse;text-align:left}.admin-table th{font-weight:500;font-size:var(--font-xs);color:var(--muted);background:var(--brand-soft);padding:12px 16px}.admin-table td{font-size:var(--font-xs);color:var(--muted);padding:20px 16px;border-bottom:1px solid var(--line)}.admin-table td:first-child>strong{font-size:var(--font-xs);font-weight:500}.attendance-pill{background:var(--brand-soft);color:var(--muted);font-size:var(--font-xs);border-radius:var(--radius-xs);padding:4px 6px}.attendance-pill.yes{background:var(--brand-soft);color:var(--muted)}.table-progress{height:3px;background:var(--brand-soft);max-width:90px;border-radius:var(--radius-xs);overflow:hidden;margin-top:8px}.table-progress>i{display:block;height:3px;background:var(--brand-primary)}@media(max-width:800px){.admin-table-wrap{padding:20px 12px}.admin-table{min-width:500px}}@media(max-width:600px){.admin-table-wrap{padding:20px 12px}}.admin-table th,.admin-table td{color:var(--muted);font-size:var(--font-xs)}.admin-table td:first-child>strong{font-size:var(--font-xs)}.attendance-pill{font-size:var(--font-xs);color:var(--muted)}.attendance-pill.yes{color:var(--muted)}.learning-page{max-width:var(--content-width);margin:0 auto;color:var(--brand-ink)}.learning-toolbar{display:flex;align-items:center;justify-content:flex-start;gap:12px;margin:20px 0;flex-wrap:wrap}.learning-toolbar>:last-child:not(:first-child){margin-left:auto}.date-toolbar{padding:12px 16px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius-md);margin:0 0 24px}.date-toolbar>span{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:var(--font-xs)}.day-navigation{display:flex;align-items:center;gap:6px}.day-navigation input{border:1px solid var(--line);background:var(--canvas);border-radius:var(--radius-xs);height:32px;padding:0 8px;color:var(--brand-ink);font-size:var(--font-xs);max-width:150px}.day-navigation .icon-btn{color:var(--brand-primary)}.day-navigation .icon-btn:disabled{opacity:.3}.day-navigation .secondary-btn{height:30px;color:var(--brand-primary);font-size:var(--font-xs)}.day-navigation .secondary-btn:disabled{opacity:.4}.learning-note{font-size:var(--font-xs);color:var(--muted);line-height:1.9;margin-top:16px}.learning-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:190px;padding:28px 20px;text-align:center;color:var(--muted);gap:12px;font-size:var(--font-xs)}.learning-empty h3{font-size:var(--font-md);color:var(--brand-ink);font-weight:500;letter-spacing:-.4px;line-height:1.8}.learning-empty p{font-size:var(--font-xs);color:var(--muted);line-height:1.9;max-width:400px;word-break:keep-all}.learning-error{background:var(--danger-soft);border:1px solid var(--danger-line);border-radius:var(--radius-sm);padding:16px;color:var(--danger);font-size:var(--font-xs);line-height:1.8;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0}.learning-error button{font-size:var(--font-xs);text-decoration:underline;flex-shrink:0}.learning-filters{display:flex;gap:4px;align-items:center;flex-wrap:wrap;background:var(--brand-soft);padding:4px;border:1px solid var(--line);border-radius:var(--radius-sm)}.learning-filters button{padding:6px 12px;font-size:var(--font-xs);color:var(--brand-primary);border-radius:var(--radius-xs);white-space:nowrap;line-height:1.6}.learning-filters button.active{color:var(--brand-ink);background:var(--surface);box-shadow:var(--shadow-sm);font-weight:600}.learning-summary-icon{width:37px;height:37px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:var(--radius-lg);background:var(--brand-soft);color:var(--muted)}.learning-summary-icon.amber{background:var(--warning-soft);color:var(--warning)}.learning-summary-icon.blue{background:var(--info-soft);color:var(--info)}.learning-count{background:var(--brand-soft);color:var(--muted);font-size:var(--font-xs);border-radius:var(--radius-xs);padding:2px 6px;margin-left:4px}.learning-page .text-link,.learning-page .secondary-btn{color:var(--brand-primary)}.learning-status{display:inline-flex;align-items:center;font-size:var(--font-xs);line-height:1.5;border-radius:var(--radius-xs);padding:3px 6px;background:var(--brand-soft);color:var(--muted);white-space:nowrap;width:fit-content}.learning-status.accepted{background:var(--brand-soft);color:var(--brand-ink)}.learning-status.submitted{background:var(--info-soft);color:var(--info)}.learning-status.revision{background:var(--warning-soft);color:var(--warning)}.learning-status.overdue{background:var(--danger-soft);color:var(--danger)}.learning-field{display:flex;flex-direction:column;gap:8px;font-size:var(--font-xs);color:var(--muted);margin-bottom:20px;line-height:1.6;min-width:0}.learning-field input,.learning-field select,.learning-field textarea,.learning-select{border:1px solid var(--line);background:var(--canvas);border-radius:var(--radius-sm);padding:8px 10px;font-size:var(--font-xs);color:var(--brand-ink);min-width:0;width:100%;line-height:1.8}.learning-field textarea{resize:vertical;min-height:88px}.learning-field input::placeholder,.learning-field textarea::placeholder{color:var(--muted);font-size:var(--font-xs)}.learning-field input:focus,.learning-field select:focus,.learning-field textarea:focus,.learning-select:focus{border-color:var(--brand-highlight);box-shadow:0 0 0 2px var(--line)}.learning-field textarea:read-only{background:var(--brand-soft);color:var(--muted)}.learning-select{width:auto;height:35px;font-size:var(--font-xs);padding:4px 10px}.learning-form-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.learning-form-footer p{font-size:var(--font-xs);line-height:1.8;color:var(--muted);flex:1;min-width:180px}.learning-form-footer .primary-btn{flex-shrink:0;background:var(--brand-primary)}.learning-user-icon{width:27px;height:27px;display:flex;align-items:center;justify-content:center;background:var(--brand-soft);border-radius:var(--radius-md);color:var(--muted);font-size:var(--font-xs);flex-shrink:0}.submission-row>.learning-status{margin-left:auto}.late-label{font-size:var(--font-xs);line-height:1.6;color:var(--warning);white-space:nowrap}.submission-form .learning-field{margin-bottom:16px}.learning-search{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px 10px;background:var(--canvas);color:var(--muted)}.learning-search input{border:0;background:none;font-size:var(--font-xs);color:var(--muted);max-width:145px;min-width:0}.learning-search input::placeholder{font-size:var(--font-xs);color:var(--muted)}@media(max-width:1250px){.learning-summary-icon{width:31px;height:31px;border-radius:var(--radius-md)}.learning-summary-icon svg{width:18px}.assignment-form-grid>.learning-field:first-child{grid-column:1/-1}}@media(max-width:1000px){.learning-toolbar.date-toolbar{gap:12px}}@media(max-width:600px){.learning-summary-icon{width:31px;height:31px}.learning-toolbar{gap:12px}.learning-filters{padding:3px;gap:2px}.learning-filters button{font-size:var(--font-xs);padding:6px 8px}.learning-toolbar>.text-link{font-size:var(--font-xs)}.learning-field,.learning-field input,.learning-field textarea,.learning-field select{font-size:var(--font-xs)}.learning-form-footer{gap:12px}.learning-form-footer p{font-size:var(--font-xs);flex-basis:100%}.learning-form-footer>.primary-btn{margin-left:auto}.assignment-form-grid>.learning-field:first-child{grid-column:auto}.assignment-form-grid .learning-field{margin-bottom:6px}.submission-row .learning-status{font-size:var(--font-xs);padding:3px 4px}.late-label{font-size:var(--font-xs)}.learning-user-icon{width:25px;height:25px}.date-toolbar{padding:12px;gap:12px}.date-toolbar>span{font-size:var(--font-xs)}.day-navigation{gap:4px}.day-navigation input{font-size:var(--font-xs);padding:0 6px;width:126px}.day-navigation .icon-btn{width:24px}.day-navigation .secondary-btn{padding:0 8px;font-size:var(--font-xs)}.date-toolbar .day-navigation{margin-left:auto}.date-toolbar>.text-link{margin-left:auto}.learning-empty{padding:24px 12px;min-height:180px}.learning-empty h3{font-size:var(--font-sm)}.learning-empty p,.learning-note{font-size:var(--font-xs)}.learning-search{width:100%}.learning-search input{max-width:none;width:100%;font-size:var(--font-xs)}.learning-error{font-size:var(--font-xs)}}.assignment-create{margin:24px 0;padding:24px}.assignment-form-grid{display:grid;grid-template-columns:1.5fr .65fr 1.2fr;gap:16px}.assignment-create .card-title{margin-bottom:24px}.assignment-create .card-title h3{color:var(--brand-ink)}.assignment-recipients{border:1px solid var(--line);border-radius:var(--radius-sm);padding:16px;margin:0 0 20px;background:var(--canvas)}.assignment-recipients legend{font-size:var(--font-xs);color:var(--muted);padding:0 6px}.assignment-recipients legend svg{margin-right:4px}.assignment-recipients>label{font-size:var(--font-xs);color:var(--muted)}.assignment-recipients label{display:inline-flex;align-items:center;gap:6px;line-height:1.7;cursor:pointer}.assignment-recipients input{accent-color:var(--brand-primary);width:14px;height:14px;margin:0;flex-shrink:0}.assignment-recipients>div{display:flex;gap:12px 24px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.assignment-recipients>div>label{font-size:var(--font-xs);color:var(--muted)}.assignment-layout{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.5fr);gap:20px;align-items:start}.assignment-list{display:flex;flex-direction:column;gap:12px;max-height:75vh;overflow:auto;padding:1px}.assignment-list-card{padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);text-align:left;display:flex;flex-direction:column;align-items:flex-start;gap:10px;transition:border-color var(--motion-fast) var(--ease-standard),background var(--motion-fast) var(--ease-standard)}.assignment-list-card:hover{border-color:var(--brand-highlight)}.assignment-list-card.selected{background:var(--brand-soft);border-color:var(--brand-highlight);box-shadow:var(--shadow-sm)}.assignment-list-card>strong{font-size:var(--font-sm);font-weight:600;letter-spacing:-.3px;color:var(--brand-ink);line-height:1.7;overflow-wrap:anywhere}.assignment-list-card>small{font-size:var(--font-xs);color:var(--muted);display:flex;align-items:center;gap:4px;line-height:1.8}.assignment-card-bottom{display:flex;align-items:center;gap:4px;font-size:var(--font-xs);color:var(--muted);width:100%;border-top:1px solid var(--line);padding-top:12px;margin-top:1px}.assignment-card-bottom>svg:last-child{margin-left:auto}.assignment-detail{padding:28px;min-width:0}.assignment-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.assignment-detail>h3{font-size:var(--font-2xl);font-weight:600;color:var(--brand-ink);letter-spacing:-.7px;line-height:1.6;overflow-wrap:anywhere}.assignment-deadline{font-size:var(--font-xs);color:var(--muted);display:flex;align-items:center;gap:6px;margin-top:10px;line-height:1.8}.assignment-instructions{font-size:var(--font-xs);color:var(--muted);line-height:2;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--brand-soft);border:1px solid var(--line);border-radius:var(--radius-sm);padding:16px;margin-top:20px}.assignment-author{font-size:var(--font-xs);color:var(--muted);margin:12px 0 24px;text-align:right}.submission-roster{border-top:1px solid var(--line);padding-top:20px;margin-top:10px}.submission-roster .card-title h4,.submission-review>h4,.review-history>h4{font-size:var(--font-xs);font-weight:500;color:var(--brand-ink);margin:0}.submission-row{display:flex;align-items:center;gap:8px;border:1px solid transparent;border-bottom-color:var(--line);width:100%;padding:10px 8px;text-align:left;border-radius:var(--radius-xs)}.submission-row:hover{background:var(--brand-soft)}.submission-row.selected{background:var(--brand-soft);border-color:var(--line)}.submission-row>strong{font-size:var(--font-xs);font-weight:500;color:var(--brand-ink);min-width:40px}.submission-row>svg{color:var(--muted)}.submission-review{border-top:1px solid var(--line);padding-top:24px;margin-top:24px}.submission-meta{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-xs);color:var(--muted);margin:12px 0;gap:10px;flex-wrap:wrap}.submission-text{border:1px solid var(--line);border-radius:var(--radius-sm);padding:16px;font-size:var(--font-xs);color:var(--muted);background:var(--canvas);line-height:2;white-space:pre-wrap;overflow-wrap:anywhere;margin-bottom:20px}.review-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px}.review-actions .secondary-btn{height:37px;padding:0 12px;background:var(--warning-soft);color:var(--warning);border-color:var(--warning-line)}.submission-form{border-top:1px solid var(--line);padding-top:20px}.review-history{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}.review-history>div{margin-top:16px;background:var(--brand-soft);padding:12px;border-radius:var(--radius-sm);border:1px solid var(--line)}.review-history>div>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.review-history small{font-size:var(--font-xs);color:var(--muted)}.review-history p{font-size:var(--font-xs);color:var(--muted);line-height:1.95;white-space:pre-wrap;margin-top:8px;overflow-wrap:anywhere}@media(max-width:1250px){.assignment-layout{grid-template-columns:minmax(200px,.7fr) minmax(0,1.3fr);gap:16px}.assignment-list-card{padding:16px}.assignment-detail{padding:20px}.assignment-form-grid{grid-template-columns:1fr 1fr}}@media(max-width:1000px){.assignment-layout{grid-template-columns:1fr}.assignment-list{display:grid;grid-template-columns:1fr 1fr;max-height:370px;gap:12px}.assignment-detail>h3{font-size:var(--font-2xl)}}@media(max-width:600px){.assignment-layout{gap:16px}.assignment-list{display:flex;flex-direction:column;max-height:310px}.assignment-list-card{gap:8px;padding:16px}.assignment-list-card>strong{font-size:var(--font-sm)}.assignment-list-card>small{font-size:var(--font-xs)}.assignment-detail{padding:20px 16px}.assignment-detail>h3{font-size:var(--font-2xl)}.assignment-instructions{padding:12px;font-size:var(--font-xs)}.assignment-deadline{font-size:var(--font-xs);line-height:1.8}.assignment-create{padding:20px 16px}.assignment-create .card-title{align-items:flex-start;flex-wrap:wrap;gap:10px}.assignment-form-grid{grid-template-columns:1fr}.assignment-form-grid{gap:12px;margin-bottom:20px}.assignment-recipients{padding:12px}.assignment-recipients>div{gap:12px 20px}.review-history small{font-size:var(--font-xs)}.submission-row{padding:10px 6px;gap:6px}.submission-row>strong{min-width:36px;font-size:var(--font-xs)}}.operations-students{margin-bottom:24px}.operations-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0;flex-wrap:wrap}.operations-table-scroll{overflow:auto}.operations-page .admin-table th,.operations-page .admin-table td{color:var(--muted);font-size:var(--font-xs)}.operations-page .admin-table td:first-child>strong{font-size:var(--font-xs)}.no-plan-label{font-size:var(--font-xs);margin-left:6px;color:var(--muted)}.operations-page .attendance-pill{font-size:var(--font-xs);color:var(--warning)}.operations-page .attendance-pill.yes{color:var(--muted)}.operations-page .secondary-btn{font-size:var(--font-xs)}.operations-page .card-title h3{color:var(--brand-ink)}.operations-questions{padding-bottom:12px}.question-queue-item{display:flex;flex-direction:column;gap:12px;text-align:left;width:100%;padding:20px 0;border-bottom:1px solid var(--line)}.question-queue-item:last-child{border-bottom:0}.question-queue-item:hover p{color:var(--muted)}.question-queue-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.question-queue-meta small{font-size:var(--font-xs);color:var(--muted);margin-left:auto}.question-queue-item>p{font-size:var(--font-xs);line-height:1.9;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere}.question-queue-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:var(--font-xs);color:var(--muted);line-height:1.8}.question-queue-footer>span{display:flex;align-items:center;gap:4px;color:var(--muted);white-space:nowrap}@media(max-width:1000px){.operations-students>.card-title{align-items:flex-start;flex-wrap:wrap}.operations-students .admin-table{min-width:520px}}@media(max-width:600px){.operations-students,.operations-questions{padding:20px 16px}.operations-page .card-title h3,.operations-students .secondary-btn{font-size:var(--font-xs)}.operations-students .admin-table{min-width:490px}.operations-controls{gap:12px}.operations-questions .card-title{align-items:flex-start;flex-wrap:wrap}.operations-questions .muted-text{font-size:var(--font-xs)}.question-queue-meta small{width:100%;margin-left:0;font-size:var(--font-xs)}.question-queue-item>p{font-size:var(--font-xs)}.question-queue-footer{font-size:var(--font-xs);flex-wrap:wrap}.question-queue-footer>span{margin-left:auto}}.auth-shell{display:grid;grid-template-columns:minmax(350px,.92fr) minmax(480px,1.08fr);min-height:100dvh;background:var(--canvas);color:var(--brand-ink)}.auth-story{position:relative;background:var(--brand-navy);color:var(--brand-pale);padding:48px 56px;overflow:hidden;display:flex;flex-direction:column;min-height:100dvh}.auth-wordmark{display:flex;align-items:center;gap:8px;color:var(--brand-pale)}.auth-wordmark strong{font-size:var(--font-4xl);letter-spacing:-1.3px;font-weight:700}.auth-wordmark strong>span{color:var(--rail-text)}.auth-wordmark em{font-style:normal;font-size:var(--font-xs);letter-spacing:2px;margin:8px 0 0 3px;color:var(--rail-text)}.auth-eyebrow{font-size:var(--font-xs);letter-spacing:2.3px;color:var(--rail-text);margin-top:105px;font-family:DM Sans,sans-serif}.auth-story h1{font-size:47px;line-height:1.55;letter-spacing:-2px;font-weight:500;margin:24px 0 20px;position:relative;z-index:2}.auth-story h1>span{color:var(--rail-text)}.auth-story>p{font-size:var(--font-sm);line-height:2.2;color:var(--brand-pale);position:relative;z-index:2}.auth-story>small{font-size:var(--font-xs);letter-spacing:.2px;color:var(--rail-text);margin-top:32px;position:relative;z-index:2}.auth-story-points{display:flex;gap:16px;margin-top:auto;padding-top:70px;position:relative;z-index:2;flex-wrap:wrap}.auth-story-points>span{display:flex;align-items:center;gap:6px;font-size:var(--font-xs);color:var(--brand-pale)}.auth-art{height:245px;position:relative;display:flex;align-items:center;justify-content:center;margin-top:32px;width:330px;max-width:100%;align-self:center}.auth-art>span{width:230px;height:230px;border:1px solid var(--rail-hover);border-radius:50%;position:absolute;transform:rotate(-20deg) scaleX(1.3)}.auth-art>span:nth-child(2){height:140px;width:300px;border-color:var(--rail-hover);transform:rotate(-32deg)}.auth-art>svg{color:var(--rail-text);transform:rotate(-19deg);z-index:2}.auth-art>i{font-style:normal;position:absolute;top:10px;right:39px;font-size:var(--font-2xl);color:var(--brand-pale)}.auth-main{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;background:var(--canvas);position:relative;min-width:0}.auth-card{width:100%;max-width:410px;padding:10px 0 48px}.auth-kicker{display:flex;align-items:center;gap:6px;font-size:var(--font-xs);color:var(--muted)}.auth-card>h2{font-size:var(--font-4xl);font-weight:600;letter-spacing:-1.3px;color:var(--brand-ink);line-height:1.55;margin:20px 0 12px}.auth-card>p{font-size:var(--font-xs);color:var(--muted);line-height:1.9}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);margin:28px 0}.auth-tabs button{padding:12px 4px;font-size:var(--font-xs);color:var(--brand-primary);position:relative}.auth-tabs button.active{color:var(--brand-primary);font-weight:600}.auth-tabs button.active:after{content:"";height:2px;position:absolute;bottom:-1px;left:0;right:0;background:var(--brand-primary)}.auth-input-icon{display:flex;align-items:center;position:relative;gap:10px}.auth-input-icon>svg{position:absolute;left:12px;pointer-events:none;color:var(--muted)}.auth-input-icon>input{padding-left:40px;width:100%;height:43px}.auth-card .learning-field{margin-bottom:20px;color:var(--muted);font-size:var(--font-xs)}.auth-card .learning-field input{height:43px}.auth-submit{height:43px;margin-top:6px;background:var(--brand-primary);font-size:var(--font-xs)}.auth-card>p.auth-footnote{font-size:var(--font-xs);color:var(--muted);text-align:center;margin-top:24px;line-height:1.9;word-break:keep-all}.auth-main>footer{display:flex;align-items:center;gap:6px;font-size:var(--font-xs);color:var(--muted);margin-top:20px}.auth-field-hint{font-size:var(--font-xs);color:var(--muted);line-height:1.9;margin:-4px 0 20px}.auth-error{padding:12px;font-size:var(--font-xs);line-height:1.9;color:var(--danger);background:var(--danger-soft);border:1px solid var(--danger-line);border-radius:var(--radius-sm);margin:16px 0}.auth-notice{padding:12px 16px;font-size:var(--font-xs);line-height:1.9;color:var(--warning);background:var(--warning-soft);border:1px solid var(--warning-line);border-radius:var(--radius-sm);margin-bottom:24px}.cohort-shell{min-height:100dvh;background:var(--brand-soft);color:var(--brand-ink)}.cohort-shell>header{background:var(--surface);border-bottom:1px solid var(--line);min-height:68px;padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:16px}.cohort-shell .auth-wordmark{color:var(--brand-ink)}.cohort-shell>header>span{display:flex;align-items:center;gap:20px;font-size:var(--font-xs);color:var(--muted)}.cohort-shell>header .text-link{font-size:var(--font-xs);display:flex;align-items:center;gap:6px}.cohort-shell>main{max-width:1120px;padding:48px 28px;margin:0 auto}.cohort-intro{margin-bottom:32px}.cohort-intro h1{font-size:var(--font-4xl);letter-spacing:-1.2px;line-height:1.6;color:var(--brand-ink);margin:12px 0 10px;font-weight:600}.cohort-intro p{font-size:var(--font-xs);color:var(--muted);line-height:1.9}.cohort-intro .secondary-btn{margin-top:20px}.cohort-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:28px}.cohort-card{position:relative;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);display:flex;flex-direction:column;align-items:flex-start}.cohort-card-symbol{width:48px;height:48px;border-radius:var(--radius-card);background:var(--brand-soft);color:var(--muted);display:flex;align-items:center;justify-content:center;margin-bottom:20px}.cohort-card>.learning-status{position:absolute;top:25px;right:22px;background:var(--brand-soft);color:var(--muted)}.cohort-card h2{font-size:var(--font-xl);color:var(--brand-ink);letter-spacing:-.5px;line-height:1.7;font-weight:500;margin-bottom:10px;overflow-wrap:anywhere}.cohort-card>p{font-size:var(--font-xs);line-height:1.9;color:var(--muted);flex:1;margin-bottom:12px;white-space:pre-wrap;overflow-wrap:anywhere}.cohort-card>small{font-size:var(--font-xs);color:var(--muted);margin:4px 0 24px}.cohort-card>.primary-btn{width:100%;background:var(--brand-primary);font-size:var(--font-xs);justify-content:space-between}.cohort-card.unavailable{background:var(--brand-soft);border-color:var(--line)}.cohort-card.unavailable>h2{color:var(--brand-ink)}.cohort-card>p.cohort-access-reason{background:var(--brand-soft);color:var(--muted);display:flex;align-items:center;gap:6px;padding:10px;border-radius:var(--radius-xs);width:100%;font-size:var(--font-xs);margin:0;flex:0}.cohort-card-grid>.learning-empty{grid-column:1/-1}.cohort-create{margin-bottom:24px}.cohort-create>.card-title h3,.cohort-accept>.card-title h3{color:var(--brand-ink)}.cohort-create form{margin-top:24px;max-width:670px}.cohort-accept>p{font-size:var(--font-xs);color:var(--muted);line-height:1.9;margin-bottom:16px}.cohort-accept>p strong{font-weight:500;color:var(--brand-ink)}.cohort-accept form{display:flex;align-items:center;gap:10px}.cohort-accept input{flex:1;min-width:0;height:37px;border:1px solid var(--line);border-radius:var(--radius-xs);padding:0 10px;color:var(--muted);background:var(--canvas);font-size:var(--font-xs)}.cohort-accept input::placeholder{color:var(--muted);font-size:var(--font-xs)}.cohort-accept .primary-btn{font-size:var(--font-xs);white-space:nowrap}.cohort-portal-note{font-size:var(--font-xs);color:var(--muted);display:block;text-align:center;margin-top:28px}.account-email{display:flex;align-items:center;gap:8px;font-size:var(--font-xs);color:var(--muted);margin-bottom:20px}.account-enrollment{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);background:var(--brand-soft);border-radius:var(--radius-sm);padding:16px;color:var(--muted)}.account-enrollment>svg{margin-top:2px}.account-enrollment strong{font-size:var(--font-xs);color:var(--brand-ink);font-weight:500;line-height:1.8}.account-enrollment p{font-size:var(--font-xs);color:var(--muted);line-height:1.9;margin-top:4px}.account-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.account-actions .secondary-btn{font-size:var(--font-xs);color:var(--brand-primary)}.account-password-form{border-top:1px solid var(--line);padding-top:24px;margin-top:24px}.account-password-form .learning-note{font-size:var(--font-xs);margin-bottom:16px}.account-logout{display:flex;align-items:center;gap:6px;font-size:var(--font-xs);color:var(--muted);padding:0;margin-top:24px}.account-logout:hover{color:var(--muted)}.demo-login-notice{display:flex;align-items:baseline;gap:8px}.demo-login-notice>strong{flex:none;padding:0 8px;border:1px solid var(--warning-line);border-radius:var(--radius-full);background:var(--surface);font-weight:600}.demo-login-accounts{display:grid;gap:16px}.demo-login-accounts h3{grid-column:1 / -1;margin:0;font-size:var(--font-xs);font-weight:600;color:var(--muted)}.demo-login-accounts section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.demo-login-account{display:flex;align-items:center;gap:10px;min-width:0;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--brand-ink);text-align:left;transition:border-color var(--motion-fast) var(--ease-standard),background-color var(--motion-fast) var(--ease-standard)}.demo-login-account:hover:not(:disabled){border-color:var(--brand-highlight);background:var(--brand-soft)}.demo-login-account:disabled{cursor:progress;opacity:.7}.demo-login-account>span:nth-child(2){flex:1;min-width:0}.demo-login-account strong,.demo-login-account small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.demo-login-account strong{font-size:var(--font-sm);font-weight:600}.demo-login-account small{font-size:var(--font-xs);color:var(--muted)}.demo-login-account>svg{flex:none;color:var(--muted)}.demo-login-account code,.demo-login .auth-field-hint code{padding:0 4px;border-radius:var(--radius-xs);background:var(--brand-soft);color:var(--brand-ink);font-weight:600}.demo-login-account code{margin-left:2px;font-size:var(--font-xs);font-weight:500;color:var(--muted)}@media(max-width:480px){.demo-login-accounts section{grid-template-columns:minmax(0,1fr)}}.membership-invite-form,.membership-edit{margin:24px 0;padding:24px}.membership-date-fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.membership-invite-form .assignment-form-grid{grid-template-columns:1.5fr 1fr}.membership-invite-form .assignment-form-grid>.learning-field:first-child{grid-column:auto}.membership-invite-form .membership-date-fields{grid-template-columns:1fr 1fr}.membership-page .learning-field{color:var(--muted)}.membership-page .card-title h3{color:var(--brand-ink)}.membership-page .admin-table th{font-size:var(--font-xs);color:var(--muted)}.membership-page .admin-table td{font-size:var(--font-xs);color:var(--muted);line-height:1.9}.membership-table td:first-child strong{display:block;font-size:var(--font-xs);color:var(--brand-ink)}.membership-table td:first-child small{display:block;font-size:var(--font-xs);color:var(--muted);margin-top:4px;overflow-wrap:anywhere}.membership-table .secondary-btn:disabled{opacity:.4}.membership-roster,.membership-invites,.membership-audit{margin-bottom:24px}.membership-roster .admin-table{min-width:700px}.membership-invites .card-title{margin-bottom:10px}.invitation-row{display:flex;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}.invitation-row:last-child{border-bottom:0}.invitation-row>div{flex:1;min-width:0}.invitation-row strong{font-size:var(--font-xs);color:var(--brand-ink);font-weight:500;display:block;overflow-wrap:anywhere}.invitation-row small{display:block;font-size:var(--font-xs);color:var(--muted);margin-top:6px;line-height:1.9}.invitation-row .text-link{font-size:var(--font-xs);color:var(--warning)}.issued-invite{margin:24px 0;background:var(--brand-soft);border:1px solid var(--line);border-radius:var(--radius-md);padding:20px;color:var(--muted)}.issued-invite>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.issued-invite>div>span{display:flex;align-items:center;gap:6px;font-size:var(--font-xs);color:var(--muted)}.issued-invite>strong{display:block;font-size:var(--font-md);letter-spacing:-.3px;color:var(--brand-ink);margin:10px 0}.issued-invite>p{font-size:var(--font-xs);line-height:1.9;color:var(--muted);margin-bottom:12px}.issued-invite>code{display:block;font-size:var(--font-sm);font-family:monospace;background:var(--canvas);padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--muted);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;line-height:1.8;margin-bottom:12px}.issued-invite small{font-size:var(--font-xs);color:var(--muted)}.issued-invite .secondary-btn{font-size:var(--font-xs);color:var(--brand-primary)}.membership-audit>div:not(.card-title){display:flex;align-items:flex-start;gap:10px;padding:12px 0;border-bottom:1px solid var(--line)}.membership-audit>div:last-child{border-bottom:0}.audit-dot{height:5px;width:5px;background:var(--brand-primary);border-radius:50%;margin-top:6px;flex-shrink:0}.membership-audit strong{font-size:var(--font-xs);font-weight:500;color:var(--brand-ink);display:block}.membership-audit small{font-size:var(--font-xs);color:var(--muted);margin-top:4px;display:block;line-height:1.9}@media(min-width:1550px){.auth-story{padding:56px 75px}.auth-story h1{font-size:56px}.auth-art{margin-top:48px;height:290px}.auth-art>span{width:270px;height:270px}.auth-art>span:nth-child(2){width:340px;height:160px}.auth-main{padding:56px}.auth-card{max-width:435px}.auth-eyebrow{margin-top:130px}.auth-card>h2{font-size:var(--font-5xl)}}@media(max-width:1100px){.auth-shell{grid-template-columns:1fr 1.15fr}.auth-story{padding:40px 32px}.auth-story h1{font-size:37px}.auth-story>p{font-size:var(--font-xs)}.auth-eyebrow{font-size:var(--font-xs);margin-top:85px}.auth-art{height:210px;width:250px}.auth-art>span{width:200px;height:200px}.auth-art>span:nth-child(2){width:240px;height:110px}.auth-art>svg{width:80px}.auth-story-points{gap:12px}.auth-story-points>span{font-size:var(--font-xs)}.auth-main{padding:40px 32px}.auth-card>h2{font-size:var(--font-3xl)}.auth-card>p{font-size:var(--font-xs)}.cohort-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.membership-date-fields{gap:12px}.membership-date-fields input{font-size:var(--font-xs);padding:8px}.membership-date-fields{grid-template-columns:1fr 1fr}.membership-edit .membership-date-fields>.learning-field:last-child{grid-column:1/-1}}@media(max-width:700px){.auth-shell{display:block}.auth-story{min-height:0;padding:24px 24px 28px}.auth-wordmark strong{font-size:var(--font-3xl)}.auth-wordmark>svg{width:23px}.auth-wordmark em{font-size:var(--font-xs)}.auth-eyebrow{margin-top:28px;font-size:var(--font-xs)}.auth-story h1{font-size:var(--font-5xl);line-height:1.55;margin:12px 0;letter-spacing:-1.3px}.auth-story h1 br{display:none}.auth-story h1>span{display:block;margin-left:0;white-space:nowrap}.auth-story>p{font-size:var(--font-xs);line-height:1.9;max-width:260px}.auth-story>p br{display:initial}.auth-art{position:absolute;right:5px;top:84px;width:100px;height:115px;margin:0;opacity:.5}.auth-art>span{width:90px;height:90px}.auth-art>span:nth-child(2){width:110px;height:48px}.auth-art>svg{width:45px}.auth-art>i{font-size:var(--font-xs);top:7px;right:11px}.auth-story-points,.auth-story>small{display:none}.auth-main{padding:32px 24px 24px;min-height:calc(100dvh - 215px);justify-content:flex-start}.auth-card{padding-bottom:24px;max-width:430px}.auth-kicker{font-size:var(--font-xs)}.auth-card>h2{font-size:var(--font-3xl);margin-top:12px;letter-spacing:-1px}.auth-card>p{font-size:var(--font-xs)}.auth-tabs{margin:24px 0}.auth-tabs button{font-size:var(--font-xs)}.auth-card .learning-field{font-size:var(--font-xs);margin-bottom:20px}.auth-card .learning-field input{height:43px;font-size:var(--font-xs)}.auth-card>p.auth-footnote{font-size:var(--font-xs)}.auth-main>footer{font-size:var(--font-xs);line-height:1.9;text-align:center;align-items:flex-start;margin-top:4px;max-width:350px}.auth-main>footer>svg{margin-top:2px}.cohort-shell>header{padding:0 20px;height:61px;min-height:61px}.cohort-shell>header>span{gap:10px;font-size:var(--font-xs)}.cohort-shell>header .text-link{font-size:var(--font-xs)}.cohort-shell .auth-wordmark em{display:none}.cohort-shell>main{padding:32px 20px}.cohort-intro{margin-bottom:28px}.cohort-intro h1{font-size:var(--font-3xl);line-height:1.6;letter-spacing:-1px}.cohort-intro p{font-size:var(--font-xs)}.cohort-card-grid{grid-template-columns:1fr;gap:16px}.cohort-card{padding:24px}.cohort-card h2{font-size:var(--font-xl)}.cohort-card>p{font-size:var(--font-xs)}.cohort-card>small{font-size:var(--font-xs)}.cohort-card>.primary-btn{font-size:var(--font-xs)}.cohort-create,.cohort-accept{padding:20px}.cohort-create .card-title{align-items:flex-start;gap:10px}.cohort-create .card-title h3,.cohort-accept .card-title h3{font-size:var(--font-xs)}.cohort-accept>p{font-size:var(--font-xs)}.cohort-accept form{flex-wrap:wrap;gap:10px}.cohort-accept input{flex-basis:100%;width:100%;font-size:var(--font-xs)}.cohort-accept .primary-btn{margin-left:auto;height:35px}.cohort-portal-note{font-size:var(--font-xs);line-height:1.9}.membership-invite-form,.membership-edit{padding:20px 16px}.membership-invite-form .assignment-form-grid{grid-template-columns:1fr}.membership-invite-form .membership-date-fields,.membership-date-fields{grid-template-columns:1fr;gap:0}.membership-edit .membership-date-fields>.learning-field:last-child{grid-column:auto}.membership-date-fields input{font-size:var(--font-xs);width:100%;min-width:0}.membership-roster,.membership-invites,.membership-audit{padding:20px 16px}.membership-invite-form .card-title{flex-wrap:wrap;gap:8px;align-items:flex-start}.membership-invite-form .muted-text{font-size:var(--font-xs)}.issued-invite{padding:16px}.issued-invite>strong{font-size:var(--font-sm)}.issued-invite>p{font-size:var(--font-xs)}.issued-invite>code{font-size:var(--font-xs)}.issued-invite>div:last-child{flex-wrap:wrap}.issued-invite .secondary-btn{margin-left:auto}.invitation-row{gap:8px;flex-wrap:wrap}.invitation-row>div{flex-basis:100%}.invitation-row small{font-size:var(--font-xs)}.invitation-row .text-link{margin-left:auto}.account-actions .secondary-btn,.account-enrollment strong,.account-enrollment p,.account-email,.account-password-form .learning-field{font-size:var(--font-xs)}}.record-status{display:inline-flex;align-items:center;padding:4px 8px;border-radius:var(--radius-xs);font-size:var(--font-xs);font-weight:600;white-space:nowrap;background:var(--brand-soft);color:var(--muted)}.record-status.present{background:var(--brand-soft);color:var(--brand-ink)}.record-status.late{background:var(--warning-soft);color:var(--warning)}.record-status.excused{background:var(--info-soft);color:var(--info)}.record-status.absent{background:var(--danger-soft);color:var(--danger)}.attendance-original-time{display:block;margin-top:6px;color:var(--muted);font-size:var(--font-xs);white-space:nowrap}.operations-row-actions{display:flex;gap:6px;flex-wrap:wrap}.operations-row-actions .secondary-btn{padding:6px 8px;font-size:var(--font-xs)}.attendance-policy-card{margin:0 0 20px;padding:20px 24px}.policy-heading{display:flex;align-items:center;gap:12px}.policy-heading h3{margin:0 0 4px;font-size:var(--font-md);color:var(--brand-ink)}.policy-heading p{margin:0;color:var(--muted);font-size:var(--font-xs);line-height:1.7}.policy-heading>.secondary-btn{margin-left:auto;white-space:nowrap}.policy-form{display:flex;align-items:center;gap:16px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.policy-form .learning-field{width:160px;margin:0}.policy-form p{font-size:var(--font-xs);color:var(--muted);max-width:340px;line-height:1.8}.policy-form>.primary-btn{margin-left:auto}.attendance-editor{padding:24px;margin:20px 0;scroll-margin-top:22px;border-color:var(--brand-highlight)}.attendance-editor>.learning-note{margin:0 0 20px}.attendance-editor .assignment-form-grid{grid-template-columns:minmax(130px,.4fr) minmax(220px,1fr)}.attendance-editor .learning-form-footer>p{display:flex;align-items:center;gap:6px}.attendance-audit{margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}.attendance-audit h4{display:flex;align-items:center;gap:8px;font-size:var(--font-xs);margin:0 0 16px;color:var(--brand-ink)}.attendance-audit h4>span{margin-left:auto;color:var(--brand-ink);font-size:var(--font-xs);font-weight:400}.attendance-audit ol,.support-timeline{list-style:none;padding:0;margin:0}.attendance-audit li{position:relative;border-left:2px solid var(--line);padding:0 0 20px 16px;margin-left:4px}.attendance-audit li:before{content:"";position:absolute;left:-5px;top:10px;width:8px;height:8px;border-radius:50%;background:var(--brand-primary)}.attendance-audit li:last-child{padding-bottom:4px}.attendance-audit li p{font-size:var(--font-xs);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;color:var(--muted);margin:10px 0 4px}.attendance-audit small{font-size:var(--font-xs);color:var(--muted)}.personal-attendance-records{padding:24px;margin-top:20px}.personal-attendance-records .card-title>input{border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px 10px;color:var(--brand-ink);background:var(--canvas);font:inherit;font-size:var(--font-xs);max-width:160px}.personal-attendance-detail{font-size:var(--font-xs);color:var(--muted)}.personal-attendance-detail p{margin:12px 0}.personal-attendance-detail blockquote{margin:12px 0 0;border-left:3px solid var(--brand-highlight);background:var(--brand-soft);padding:16px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}.notice-board>.learning-toolbar{justify-content:space-between}.notice-card-list{display:grid;gap:20px}.notice-card{overflow:hidden;min-width:0}.notice-card .message{padding:24px}.notice-card .message:hover{background:transparent}.notice-card .message-body{max-width:none}.notice-confirmation{padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line);background:var(--canvas);font-size:var(--font-xs)}.notice-confirmation>span{display:flex;align-items:center;gap:8px}.notice-confirmation strong{font-size:var(--font-xs);font-weight:500;color:var(--brand-ink)}.notice-acknowledged{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:var(--font-xs)}.notice-receipts{padding:20px 24px;border-top:1px solid var(--line)}.notice-receipts h4{margin:0;color:var(--brand-ink);font-size:var(--font-sm)}.receipt-filter{display:flex;align-items:center;gap:6px;font-size:var(--font-xs);color:var(--muted);margin-bottom:12px}.receipt-filter input{accent-color:var(--brand-primary)}.notice-receipt-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}.notice-receipt-row>strong{font-size:var(--font-xs);color:var(--brand-ink);font-weight:500}.notice-receipt-row>strong>small{display:block;font-size:var(--font-xs);color:var(--warning);margin-top:4px}.support-toolbar{gap:12px}.support-toolbar>.text-link{margin-left:auto}.support-toolbar .learning-select{max-width:240px}.support-create{padding:24px;margin-bottom:24px}.support-create .learning-field{margin-bottom:16px}.support-create .learning-form-footer .learning-field{margin-bottom:0;max-width:200px}.support-create .card-title{gap:12px;flex-wrap:wrap}.support-create .card-title .muted-text{font-size:var(--font-xs)}.support-filters{margin-bottom:20px}.support-workspace{display:grid;gap:20px;align-items:start;min-width:0}.support-workspace.has-selection{grid-template-columns:minmax(220px,.8fr) minmax(340px,1.2fr)}.support-case-list{display:grid;gap:12px;min-width:0}.support-case-card{width:100%;text-align:left;padding:20px;cursor:pointer;color:inherit;min-width:0}.support-case-card:hover,.support-case-card.selected{border-color:var(--brand-highlight);background:var(--canvas)}.support-case-card.selected{box-shadow:inset 3px 0 0 var(--brand-highlight)}.support-case-card>span{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.support-case-card>span>strong{font-size:var(--font-sm);color:var(--brand-ink)}.support-case-card>span>small{font-size:var(--font-xs);color:var(--muted)}.support-case-card>span>.learning-status{margin-left:auto}.support-case-card>p{font-size:var(--font-xs);line-height:1.9;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.support-case-card footer{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted)}.support-case-card footer>small{font-size:var(--font-xs)}.support-details{min-width:0;padding:24px}.support-details .card-title h3{font-size:var(--font-md)}.support-original{background:var(--brand-soft);padding:16px;border-radius:var(--radius-sm);margin-bottom:16px}.support-original p,.support-timeline p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9;color:var(--muted);font-size:var(--font-xs);margin:0 0 12px}.support-original small,.support-timeline small{font-size:var(--font-xs);line-height:1.7;color:var(--muted)}.support-details>.text-link{margin:0 0 20px}.support-timeline{margin:4px 0 24px}.support-timeline li{border-left:2px solid var(--line);margin-left:4px;padding:0 0 20px 16px;position:relative}.support-timeline li:before{content:"";position:absolute;left:-5px;top:9px;width:8px;height:8px;background:var(--brand-primary);border-radius:50%}.support-timeline p{margin:10px 0 8px}.support-details form{padding-top:16px;border-top:1px solid var(--line)}.support-details h4{font-size:var(--font-xs);color:var(--brand-ink);margin:0 0 20px}.support-details form>.learning-field{margin-bottom:16px}.support-details .assignment-form-grid{gap:12px;margin-bottom:20px;grid-template-columns:repeat(2,minmax(0,1fr))}.support-create .assignment-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.support-create .assignment-form-grid>.learning-field:first-child,.support-details .assignment-form-grid>.learning-field:first-child,.attendance-editor .assignment-form-grid>.learning-field:first-child{grid-column:auto}.support-details form>.primary-btn{margin-left:auto}@media(max-width:1100px){.support-workspace.has-selection{grid-template-columns:1fr}.operations-row-actions{min-width:190px}.policy-heading{flex-wrap:wrap}.policy-heading>.secondary-btn{margin-left:auto}.policy-form>.primary-btn{margin-left:0}.policy-form p{max-width:none;width:100%}}@media(max-width:700px){.attendance-policy-card{padding:16px;margin-bottom:16px}.policy-heading{gap:10px}.policy-heading>.learning-summary-icon{width:35px;height:35px}.policy-heading h3,.policy-heading p{font-size:var(--font-xs)}.policy-heading>.secondary-btn{font-size:var(--font-xs);margin-left:48px}.policy-form{gap:12px}.policy-form p{font-size:var(--font-xs)}.attendance-editor,.personal-attendance-records{padding:16px}.attendance-editor .assignment-form-grid{grid-template-columns:1fr}.attendance-editor .learning-form-footer{align-items:stretch;gap:16px}.attendance-editor .learning-form-footer>p{font-size:var(--font-xs)}.attendance-audit h4{font-size:var(--font-xs)}.attendance-audit h4>span{font-size:var(--font-xs)}.attendance-audit li p{font-size:var(--font-xs)}.personal-attendance-records .card-title{flex-wrap:wrap;gap:12px}.personal-attendance-records .card-title>input{font-size:var(--font-xs);padding:6px;max-width:145px}.record-status{font-size:var(--font-xs)}.notice-card .message{padding:20px 16px}.notice-confirmation{padding:12px 16px;flex-wrap:wrap;gap:12px}.notice-confirmation .primary-btn{margin-left:auto;font-size:var(--font-xs)}.notice-confirmation .muted-text{font-size:var(--font-xs)}.notice-receipts{padding:16px}.notice-receipt-row>strong{font-size:var(--font-xs)}.notice-receipt-row>span{font-size:var(--font-xs)}.notice-acknowledged{font-size:var(--font-xs)}.support-toolbar{flex-wrap:wrap;gap:12px}.support-toolbar .learning-select{max-width:none;flex:1}.support-toolbar .learning-search{width:100%;order:3}.support-create,.support-details{padding:20px 16px}.support-create .card-title h3{font-size:var(--font-sm)}.support-case-card{padding:16px}.support-case-card>span>strong{font-size:var(--font-xs)}.support-case-card>p,.support-original p,.support-timeline p{font-size:var(--font-xs)}.support-case-card footer>small{font-size:var(--font-xs)}.support-details .assignment-form-grid,.support-create .assignment-form-grid{grid-template-columns:1fr}.support-details .learning-field input{min-width:0;width:100%}.support-filters{flex-wrap:wrap}.support-case-card .learning-status{font-size:var(--font-xs)}.operations-students .operations-controls{gap:12px}.operations-students .learning-filters{flex-wrap:wrap}.operations-students .admin-table,.operations-students .admin-table tbody{display:block;width:100%;min-width:0}.operations-students .admin-table thead{display:none}.operations-students .admin-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px 12px;padding:20px 0;border-bottom:1px solid var(--line)}.operations-students .admin-table td{display:block;border:0;padding:0;min-width:0}.operations-students .admin-table td:first-child{grid-column:1/-1;display:flex;align-items:center;gap:10px;white-space:nowrap}.operations-students .admin-table td:first-child .avatar{margin:0;flex-shrink:0}.operations-students .admin-table td:first-child strong{display:inline;font-size:var(--font-xs)}.operations-students .admin-table td:nth-child(2):before,.operations-students .admin-table td:nth-child(3):before{content:attr(data-label);display:block;font-size:var(--font-xs);color:var(--muted);margin-bottom:8px}.operations-students .admin-table td:last-child{grid-column:1/-1}.operations-row-actions{min-width:0;flex-wrap:wrap;gap:6px}.operations-row-actions .secondary-btn{flex:1;justify-content:center;white-space:nowrap;min-width:78px}}.platform-performance{margin-bottom:24px;padding:24px}.performance-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:20px 0;background:var(--brand-soft);border:1px solid var(--line);border-radius:var(--radius-lg)}.performance-summary>div{padding:20px;display:grid;gap:8px;min-width:0}.performance-summary svg{color:var(--muted)}.performance-summary span{font-size:var(--font-xs);color:var(--muted)}.performance-summary strong{font-size:var(--font-2xl);font-weight:600;color:var(--brand-ink)}.performance-summary small{font-size:var(--font-xs);line-height:1.7;color:var(--muted)}.performance-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:12px}.performance-toolbar>div{display:flex;gap:4px;flex-wrap:wrap}.performance-toolbar button{border:0;border-radius:var(--radius-sm);padding:8px 12px;background:transparent;color:var(--brand-primary);font:inherit;font-size:var(--font-xs);cursor:pointer}.performance-toolbar button.selected{background:var(--brand-soft);color:var(--brand-ink);font-weight:600}.performance-toolbar>span{font-size:var(--font-xs);color:var(--muted)}.performance-table-wrap{overflow-x:auto}.performance-table{width:100%;border-collapse:collapse;font-size:var(--font-xs);text-align:left}.performance-table thead th{font-size:var(--font-xs);color:var(--muted);font-weight:500;padding:12px;background:var(--canvas)}.performance-table tbody th,.performance-table td{padding:16px 12px;border-bottom:1px solid var(--line)}.performance-table tbody th{width:40%;font-weight:400}.performance-table th>strong{font-weight:500}.performance-table code{display:block;margin-top:6px;font-size:var(--font-xs);font-weight:400;color:var(--muted);overflow-wrap:anywhere}.performance-table td{white-space:nowrap}.performance-table td strong{font-weight:600}.performance-table td small{display:block;margin-top:6px;color:var(--muted);font-size:var(--font-xs)}.performance-table .slow td:nth-child(4){color:var(--warning)}.performance-bar{display:block;margin-top:6px;height:3px;background:var(--brand-soft);border-radius:var(--radius-xs);width:70px}.performance-bar i{display:block;height:100%;background:var(--brand-primary);border-radius:inherit}.slow .performance-bar i{background:#c99a6f}.performance-empty{text-align:center;color:var(--muted);padding:24px;font-size:var(--font-xs)}.performance-guide{margin-top:16px;border-top:1px solid var(--line);padding-top:16px;color:var(--muted);font-size:var(--font-xs);line-height:1.9}.performance-guide summary{cursor:pointer;color:var(--muted)}.performance-guide ol{padding-left:20px}.performance-guide li{margin:8px 0}.performance-guide p{font-size:var(--font-xs);color:var(--muted)}@media(max-width:700px){.platform-performance{padding:16px 12px;margin-bottom:16px}.platform-performance .card-title{gap:10px;flex-wrap:wrap}.performance-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:16px 0}.performance-summary>div{padding:12px}.performance-summary strong{font-size:var(--font-2xl)}.performance-table{min-width:580px}.performance-toolbar button{font-size:var(--font-xs);padding:8px}}.platform-shell{background:var(--brand-soft);min-height:100dvh;height:100dvh;overflow-y:auto;color:var(--brand-ink)}.platform-header{min-height:76px;display:flex;align-items:center;gap:24px;padding:0 48px;border-bottom:1px solid var(--line);background:var(--surface)}.platform-header>.auth-wordmark{margin-right:auto;color:var(--brand-ink)}.platform-header>span{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:var(--font-xs)}.platform-header .secondary-btn,.platform-logout{font-size:var(--font-xs)}.platform-main{max-width:1340px;margin:auto;padding:40px 40px 28px}.platform-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.platform-intro .eyebrow{font-size:var(--font-xs);letter-spacing:2px;color:var(--muted)}.platform-intro h1{font-size:var(--font-4xl);letter-spacing:-1.3px;color:var(--brand-ink);margin:16px 0 12px;font-weight:600}.platform-intro p{font-size:var(--font-xs);line-height:1.9;color:var(--muted);margin:0}.platform-health{display:flex;gap:16px;align-items:center;padding:24px;background:var(--brand-soft);border:1px solid var(--line);border-radius:var(--radius-lg);color:var(--muted)}.platform-health>div{display:flex;flex-direction:column;gap:8px}.platform-health strong{font-size:var(--font-lg);font-weight:600;color:var(--brand-ink)}.platform-health>div>span{font-size:var(--font-xs);color:var(--muted)}.platform-health.attention{background:var(--warning-soft);border-color:var(--warning-line);color:var(--warning)}.platform-health.critical{background:var(--danger-soft);border-color:var(--danger-line);color:var(--danger)}.platform-live{display:flex;align-items:center;gap:6px;margin-left:auto;font-size:var(--font-xs);white-space:nowrap;color:var(--muted)}.platform-live i{width:6px;height:6px;border-radius:50%;background:var(--brand-primary)}.platform-alerts{display:flex;gap:10px 24px;flex-wrap:wrap;padding:12px 2px 0}.platform-alerts p{margin:0;display:flex;gap:6px;align-items:center;font-size:var(--font-xs);color:var(--warning)}.platform-alerts p.error{color:var(--danger)}.platform-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}.platform-metrics>div{padding:24px 20px 20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);position:relative;display:flex;flex-direction:column;min-width:0}.platform-metrics>div>span:not(.platform-metric-icon){font-size:var(--font-xs);color:var(--muted)}.platform-metric-icon{position:absolute;right:20px;top:19px;color:var(--muted)}.platform-metrics strong{font-size:var(--font-3xl);color:var(--brand-ink);font-weight:600;margin:16px 0 12px;letter-spacing:-.6px}.platform-metrics small{font-size:var(--font-xs);line-height:1.8;color:var(--muted)}.platform-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}.platform-backup-card,.platform-storage,.platform-recovery,.platform-jobs,.platform-events{padding:24px}.platform-shell .card-title{gap:16px}.platform-shell .card-title h2{display:flex;gap:10px;align-items:center;font-size:var(--font-lg);color:var(--brand-ink);margin:0;font-weight:600}.platform-description{font-size:var(--font-xs);line-height:1.9;margin:0 0 20px;color:var(--muted)}.platform-policy{display:flex;align-items:center;gap:12px;background:var(--brand-soft);border:1px solid var(--line);padding:16px;border-radius:var(--radius-md);margin:20px 0}.platform-policy-icon{width:37px;height:37px;background:var(--brand-pale);color:var(--muted);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.platform-policy>div{flex:1;min-width:0}.platform-policy strong{font-size:var(--font-xs);color:var(--brand-ink);font-weight:600}.platform-policy p{font-size:var(--font-xs);color:var(--muted);margin:6px 0}.platform-policy small{font-size:var(--font-xs);line-height:1.7;color:var(--muted)}.platform-policy>.text-link{font-size:var(--font-xs)}.platform-policy-form{padding:20px;border:1px solid var(--line);border-radius:var(--radius-md);margin-bottom:20px}.platform-toggle{display:flex;gap:8px;align-items:center;font-size:var(--font-xs);color:var(--muted);margin-bottom:20px}.platform-toggle input{accent-color:var(--brand-primary)}.platform-policy-form>div{display:grid;grid-template-columns:1fr 1fr;gap:16px}.platform-policy-form .learning-field{margin:0}.platform-policy-form>p{font-size:var(--font-xs);line-height:1.9;color:var(--muted)}.platform-policy-form>.primary-btn{margin-left:auto}.platform-info{background:var(--brand-soft);padding:16px;font-size:var(--font-xs);line-height:1.9;color:var(--muted);border-radius:var(--radius-sm)}.platform-running{display:flex;gap:8px;align-items:center;padding:16px;background:var(--info-soft);color:var(--info);font-size:var(--font-xs);line-height:1.8;border-radius:var(--radius-sm);margin-bottom:16px}.platform-running>svg{flex-shrink:0;animation:platform-spin 3s linear infinite}@keyframes platform-spin{to{transform:rotate(360deg)}}.backup-entry{padding:20px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;min-width:0}.backup-entry-icon{color:var(--muted);background:var(--brand-soft);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0;width:39px;height:44px}.backup-entry-summary{flex:1;min-width:0}.backup-entry-summary>strong{font-size:var(--font-xs);color:var(--brand-ink);font-weight:500;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.backup-entry-summary p{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:var(--font-xs);color:var(--muted);margin:8px 0 6px}.backup-entry-summary small{font-size:var(--font-xs);line-height:1.8;color:var(--muted)}.backup-id-line{display:flex;align-items:center;gap:4px;min-width:0;overflow-wrap:anywhere}.backup-id-line>code{font-size:var(--font-xs);-webkit-user-select:all;user-select:all;overflow-wrap:anywhere;min-width:0}.backup-id-line>.icon-btn{width:24px;height:24px;flex-shrink:0}.backup-drill-date{display:block}.backup-state{display:inline-flex;align-items:center;white-space:nowrap;font-size:var(--font-xs);padding:4px 6px;border-radius:var(--radius-xs);font-weight:500;background:var(--brand-soft);color:var(--muted)}.backup-state.failed{background:var(--danger-soft);color:var(--danger)}.backup-state.running{background:var(--info-soft);color:var(--info)}.backup-entry-actions{display:flex;gap:6px;flex-shrink:0}.backup-entry-actions .secondary-btn{font-size:var(--font-xs);padding:8px}.platform-footnote{display:flex;align-items:flex-start;gap:6px;font-size:var(--font-xs);line-height:1.9;color:var(--muted);margin:20px 0 0}.platform-footnote svg{flex-shrink:0;margin-top:2px}.platform-side{display:grid;gap:20px;min-width:0}.platform-storage .card-title h2{font-size:var(--font-md)}.platform-storage .learning-note{font-size:var(--font-xs);line-height:1.9;margin:20px 0 0}.storage-row{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:16px 0;border-top:1px solid var(--line);font-size:var(--font-xs);color:var(--muted)}.storage-row>strong{font-size:var(--font-xs);font-weight:500;color:var(--brand-ink)}.platform-storage>.secondary-btn{margin-top:16px;font-size:var(--font-xs)}.platform-recovery{background:var(--brand-soft);border-color:var(--line)}.platform-recovery-icon{width:45px;height:45px;display:flex;align-items:center;justify-content:center;background:var(--brand-pale);color:var(--muted);border-radius:var(--radius-lg);margin-bottom:20px}.platform-recovery h2{font-size:var(--font-xl);color:var(--brand-ink);margin:0 0 12px;font-weight:600;letter-spacing:-.4px}.platform-recovery p{font-size:var(--font-xs);color:var(--muted);line-height:1.9}.platform-recovery ol{list-style:none;padding:8px 0 10px;margin:0}.platform-recovery li{display:flex;gap:8px;align-items:center;font-size:var(--font-xs);color:var(--muted);margin:16px 0}.platform-recovery>small{display:block;font-size:var(--font-xs);line-height:1.9;color:var(--muted);padding-top:16px;border-top:1px solid var(--line)}.platform-jobs,.platform-events{margin-top:24px}.platform-shell .card-title .muted-text{font-size:var(--font-xs)}.platform-job{display:flex;align-items:center;gap:16px;padding:16px 0;border-top:1px solid var(--line)}.platform-job>div{flex:1;min-width:0}.platform-job strong{font-size:var(--font-xs);color:var(--brand-ink);font-weight:500;display:block}.platform-job small{font-size:var(--font-xs);color:var(--muted);display:block;margin-top:6px}.platform-job p{font-size:var(--font-xs);line-height:1.8;margin:8px 0 0;color:var(--warning)}.platform-job>code{font-size:var(--font-xs);color:var(--muted)}.platform-event{display:flex;align-items:flex-start;gap:10px;padding:12px 0;border-top:1px solid var(--line);font-size:var(--font-xs);color:var(--muted)}.platform-event>i{width:6px;height:6px;border-radius:50%;margin-top:4px;background:var(--brand-primary);flex-shrink:0}.platform-event.warning>i{background:#d8c992}.platform-event.error>i{background:#d3a185}.platform-event small{display:block;font-size:var(--font-xs);color:var(--muted);margin-top:6px;overflow-wrap:anywhere;line-height:1.8}.platform-event time{margin-left:auto;flex-shrink:0;font-size:var(--font-xs);color:var(--muted)}.platform-footer{text-align:center;color:var(--muted);font-size:var(--font-xs);padding-top:28px}.platform-toast{max-width:calc(100vw - 40px)}@media(max-width:1100px){.platform-main{padding:32px 28px}.platform-header{padding:0 28px;gap:16px}.platform-layout{grid-template-columns:minmax(0,1fr) 270px;gap:16px}.platform-backup-card,.platform-storage,.platform-recovery{padding:20px}.platform-metrics{gap:12px}.platform-metrics>div{padding:20px 16px}.platform-metrics strong{font-size:var(--font-2xl)}.backup-entry{flex-wrap:wrap}.backup-entry-actions{margin-left:48px}.platform-header>span{font-size:var(--font-xs)}.platform-logout{display:none}}@media(max-width:800px){.platform-layout{grid-template-columns:1fr}.platform-side{grid-template-columns:1fr 1fr;align-items:start}.platform-metrics{grid-template-columns:1fr 1fr}.platform-live{display:none}.platform-health{padding:20px}.platform-header>span{display:none}.backup-entry{flex-wrap:nowrap}.backup-entry-actions{margin-left:0}}@media(max-width:600px){.platform-header{min-height:66px;padding:0 20px;gap:12px}.platform-header .auth-wordmark strong{font-size:var(--font-3xl)}.platform-header .auth-wordmark>svg{width:23px}.platform-header .auth-wordmark em{display:none}.platform-header .secondary-btn{font-size:var(--font-xs);padding:8px}.platform-header .secondary-btn svg{width:13px}.platform-main{padding:28px 16px 20px}.platform-intro{align-items:flex-start;flex-wrap:wrap;gap:16px;margin-bottom:24px}.platform-intro .eyebrow{font-size:var(--font-xs);letter-spacing:1.5px}.platform-intro h1{font-size:var(--font-3xl);margin:12px 0;letter-spacing:-1px}.platform-intro p{font-size:var(--font-xs);line-height:1.9}.platform-intro>.secondary-btn{font-size:var(--font-xs);margin-left:auto}.platform-health{gap:12px;padding:16px}.platform-health>svg{flex-shrink:0;width:21px}.platform-health strong{font-size:var(--font-xs)}.platform-health>div>span{font-size:var(--font-xs);line-height:1.8}.platform-alerts{gap:10px;padding:16px 3px 0}.platform-alerts p{font-size:var(--font-xs);align-items:flex-start;line-height:1.8}.platform-alerts p svg{flex-shrink:0;margin-top:2px}.platform-metrics{gap:10px;margin:20px 0}.platform-metrics>div{padding:20px 16px 16px}.platform-metric-icon{right:15px;top:15px}.platform-metric-icon svg{width:17px}.platform-metrics>div>span:not(.platform-metric-icon){font-size:var(--font-xs)}.platform-metrics strong{font-size:var(--font-2xl);margin-top:20px}.platform-metrics small{font-size:var(--font-xs)}.platform-layout{gap:16px}.platform-backup-card,.platform-storage,.platform-recovery,.platform-jobs,.platform-events{padding:20px 16px}.platform-shell .card-title{flex-wrap:wrap;gap:12px}.platform-shell .card-title h2{font-size:var(--font-md)}.platform-shell .card-title>.primary-btn{font-size:var(--font-xs);padding:10px 12px}.platform-description{font-size:var(--font-xs);line-height:1.9}.platform-policy{padding:16px 12px;gap:10px;align-items:flex-start}.platform-policy-icon{width:31px;height:31px;border-radius:var(--radius-md)}.platform-policy-icon svg{width:17px}.platform-policy strong{font-size:var(--font-xs)}.platform-policy p{font-size:var(--font-xs);line-height:1.8}.platform-policy small{font-size:var(--font-xs)}.platform-policy>.text-link{font-size:var(--font-xs)}.platform-policy-form{padding:16px 12px}.platform-policy-form>div{gap:12px}.platform-policy-form .learning-field{font-size:var(--font-xs)}.platform-policy-form>p{font-size:var(--font-xs)}.backup-entry{flex-wrap:wrap;padding:20px 0;gap:12px}.backup-entry-icon{width:32px;height:38px}.backup-entry-summary>strong{font-size:var(--font-xs)}.backup-entry-summary p{font-size:var(--font-xs);gap:6px}.backup-entry-summary small{font-size:var(--font-xs)}.backup-entry-actions{margin-left:40px;gap:8px}.backup-entry-actions .secondary-btn{font-size:var(--font-xs)}.platform-side{grid-template-columns:1fr}.platform-footnote{font-size:var(--font-xs)}.platform-job{gap:12px;align-items:flex-start}.platform-job strong{font-size:var(--font-xs)}.platform-job small{font-size:var(--font-xs);line-height:1.8}.platform-job p{font-size:var(--font-xs)}.platform-job>code{display:none}.platform-event{font-size:var(--font-xs);gap:8px}.platform-event time{font-size:var(--font-xs);line-height:1.8;max-width:90px;text-align:right}.platform-event small{font-size:var(--font-xs)}.platform-shell .card-title .muted-text{font-size:var(--font-xs);line-height:1.9}.platform-jobs,.platform-events{margin-top:16px}.platform-running,.platform-recovery p{font-size:var(--font-xs)}}.archive-panel{margin-top:28px;padding-top:24px;border-top:1px solid var(--line);min-width:0}.archive-panel .card-title{flex-wrap:wrap;gap:12px}.archive-panel .card-title h2{display:flex;align-items:center;gap:10px}.archive-policy{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0}.archive-policy strong{color:var(--brand-ink);font-size:var(--font-sm)}.archive-policy p,.archive-policy small{font-size:var(--font-xs);color:var(--muted);overflow-wrap:anywhere}.archive-policy-form{background:var(--brand-soft);border:1px solid var(--line);border-radius:var(--radius-md);padding:16px;margin-bottom:16px}.archive-policy-form p{font-size:var(--font-xs);color:var(--muted);line-height:1.8}.archive-notice{background:var(--warning-soft);color:var(--warning);padding:16px;border-radius:var(--radius-md);font-size:var(--font-xs);line-height:1.9;margin:12px 0}.archive-notice p{margin:6px 0 0;font-size:var(--font-xs)}.archive-create{display:flex;gap:12px;align-items:end;margin:20px 0}.archive-create label{display:grid;gap:8px;flex:1;min-width:0;font-size:var(--font-xs);color:var(--muted)}.archive-create select{width:100%;min-width:0;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--muted);background:var(--surface);font-size:var(--font-xs)}.archive-entry{padding:16px 0;border-top:1px solid var(--line);display:flex;align-items:start;gap:16px;justify-content:space-between}.archive-entry-summary{min-width:0;display:grid;gap:6px;overflow-wrap:anywhere}.archive-entry-summary strong{font-size:var(--font-sm);color:var(--brand-ink)}.archive-entry-summary p{margin:0;font-size:var(--font-xs);color:var(--muted)}.archive-entry-summary small,.archive-entry-summary code{font-size:var(--font-xs);color:var(--muted)}.archive-entry-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:end;align-items:center;max-width:200px;flex-shrink:0}.archive-entry-actions .secondary-btn{text-decoration:none}@media(max-width:700px){.archive-policy,.archive-create,.archive-entry{align-items:stretch;flex-direction:column}.archive-entry-actions{max-width:none;justify-content:start}.archive-entry-actions .secondary-btn{flex-grow:1;justify-content:center}.archive-create>button{justify-content:center}}.wordmark .brand-mark.small{color:var(--brand-signature)}:is(.cohort-shell,.platform-shell,.institution-shell)>header .auth-wordmark :is(em,strong>span){color:var(--muted)}.app-shell{line-height:1.6}.app-shell .channel-header{height:72px;min-height:72px;padding-inline:28px}.app-shell .channel-title h1{font-size:var(--font-xl);font-weight:700}.app-shell .channel-title p{font-size:var(--font-xs);color:var(--muted);line-height:1.6;margin-top:3px}.app-shell .global-search>button{height:38px;background:var(--canvas);color:var(--muted);border-color:transparent;border-radius:var(--radius-md)}.app-shell .global-search>button>span{font-size:var(--font-sm)}.app-shell .workspace-title{height:82px;min-height:82px}.app-shell .sidebar-scroll{padding-inline:12px;scrollbar-gutter:stable}.app-shell .sidebar-nav,.app-shell .channel-link{min-height:38px;height:auto;padding-block:8px;border-radius:var(--radius-md);font-size:var(--font-sm)}.app-shell .sidebar-nav.active,.app-shell .channel-link.active{color:var(--brand-primary);background:var(--brand-pale);font-weight:600}.app-shell .campus-navigation{gap:3px}.app-shell .campus-nav-group summary{min-height:44px;padding:10px;font-size:var(--font-sm)}.app-shell .campus-nav-group.current summary{color:var(--brand-primary)}.app-shell .campus-nav-children{margin-left:16px;margin-bottom:10px;padding-left:12px}.workspace-toolbar{position:relative;display:flex;align-items:stretch;gap:12px;border-bottom:1px solid var(--line);background:var(--surface);flex-shrink:0;min-width:0;padding-inline:20px}.workspace-toolbar .campus-section-links{flex:1;gap:16px;min-height:52px;padding:0;border:0}.workspace-toolbar .campus-section-links>span{display:none}.workspace-toolbar .campus-section-links>div{align-self:stretch;gap:16px;scrollbar-width:thin}.workspace-toolbar .campus-section-links a{display:inline-flex;align-items:center;padding:10px 3px;border-radius:0;border-bottom:2px solid transparent;font-size:var(--font-sm)}.workspace-toolbar .campus-section-links a[aria-current=page]{background:transparent;color:var(--brand-primary);border-bottom-color:var(--brand-primary)}.workspace-toolbar .study-quick-bar{border:0;background:transparent;padding:4px 0 4px 12px;min-height:52px;gap:8px;margin-left:auto}.workspace-toolbar .study-quick-bar[data-active=false]>span,.workspace-toolbar .study-quick-record{display:none}.workspace-toolbar .study-quick-bar>svg{display:none}.workspace-toolbar .study-quick-bar button{min-height:36px;min-width:36px;padding:6px 10px;border-radius:var(--radius-md);background:var(--brand-pale);font-size:var(--font-xs)}.workspace-toolbar .study-quick-bar>strong{font-size:var(--font-lg)}.workspace-toolbar .study-quick-error{position:absolute;top:100%;right:0;z-index:6;max-width:100%}.app-shell .page-scroll{padding:28px 32px 48px;scrollbar-gutter:stable both-edges}.page-scroll>:where(.page-actions,.stat-grid,.calendar-upcoming,.inbox-preview,.live-lectures,.dashboard-grid,.planner-summary,.planner-card,.gentle-note){width:100%;max-width:var(--content-width);margin-inline:auto}.app-shell :is(.learning-insights,.question-board-page){padding-top:0}.app-shell .page-scroll>.learning-center{width:100%;max-width:var(--content-width);margin-inline:auto}.app-shell .page-scroll h2{word-break:keep-all;overflow-wrap:anywhere}.app-shell .eyebrow{font-size:var(--font-xs);line-height:1.5;font-weight:600;letter-spacing:1.4px;color:var(--muted)}.app-shell :is(.primary-btn,.secondary-btn){min-height:40px;height:auto;padding:8px 16px;font-size:var(--font-sm);font-weight:600;line-height:1.5;border-radius:var(--radius-md)}.app-shell .secondary-btn{background:var(--surface);color:var(--text)}.app-shell .secondary-btn:hover{background:var(--brand-soft)}.app-shell .text-link{min-height:32px;font-size:var(--font-sm);line-height:1.5;gap:6px}.app-shell .white-card{border-radius:var(--radius-card);box-shadow:none}.app-shell .card-title h3{font-size:var(--font-lg)}.app-shell .attendance-layout>section{min-width:0}.app-shell .calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.app-shell .attendance-history>div{flex-wrap:wrap;gap:6px}.app-shell .attendance-history strong{flex-wrap:wrap}.app-shell .learning-field{font-size:var(--font-sm)}.app-shell .learning-field :is(input,select,textarea),.app-shell .channel-form :is(input,select,textarea){min-height:42px;font-size:var(--font-md);border-radius:var(--radius-md)}:where(input,textarea,select):focus-visible{outline:2px solid var(--brand-highlight);outline-offset:2px}:where(input,textarea,select){accent-color:var(--brand-primary)}.app-shell .center-action-card>p,.app-shell .cycle-overview>p,.app-shell .exam-explanation{font-size:var(--font-md)}.app-shell .center-tabs>button{min-height:40px;font-size:var(--font-sm)}.app-shell .showcase-controls{background:var(--surface);padding-block:6px}.app-shell .showcase-control-toggle{display:none}.app-shell .showcase-control-actions :is(button,select){min-height:32px}.app-shell .showcase-heading{margin-bottom:16px}.app-shell .showcase-heading h2{font-size:var(--font-3xl);letter-spacing:-.7px;margin:4px 0}.app-shell .showcase-heading p{font-size:var(--font-sm)}.app-shell .message-text{color:var(--text);font-size:var(--font-md);line-height:1.85}.app-shell .message-meta>strong{font-size:var(--font-md)}.app-shell .composer textarea,.app-shell .composer textarea::placeholder{font-size:var(--font-md)}.app-shell .conversation-tabs>button{font-size:var(--font-sm);min-height:44px}.app-shell .conversation-tabs>button.active{color:var(--brand-primary)}.app-shell .channel-welcome,.recruitment-terms{border-radius:var(--radius-card)}@media(min-width:1001px){.app-shell{grid-template-columns:64px 252px minmax(0,1fr)}}@media(min-width:601px)and (max-width:1000px){.app-shell{grid-template-columns:56px 224px minmax(0,1fr)}.app-shell .global-header{grid-template-columns:280px minmax(150px,1fr) auto}.app-shell .page-scroll{padding-inline:20px}.workspace-toolbar{padding-inline:16px}}@media(max-width:800px){.app-shell .showcase-identity>span:not(:first-child),.app-shell .showcase-identity small{display:none}.app-shell .showcase-control-actions{gap:4px}}@media(max-width:600px){.app-shell{grid-template-rows:56px minmax(0,1fr)}.app-shell .global-header{height:56px;gap:10px;padding-right:12px}.app-shell .global-search>button{height:36px;padding-inline:8px}.app-shell .global-search>button>span{font-size:var(--font-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-shell .channel-sidebar{top:56px;left:-310px;width:min(292px,calc(100vw - 40px))}.app-shell .channel-sidebar.mobile-open{left:0}.app-shell .sidebar-scrim{inset-block-start:56px;background:var(--overlay)}.app-shell .sidebar-nav,.app-shell .channel-link,.app-shell .campus-nav-group summary{min-height:44px;font-size:var(--font-md)}.app-shell .channel-header{height:58px;min-height:58px;padding-inline:12px}.app-shell .channel-title h1{font-size:var(--font-xl)}.app-shell .channel-title p{display:none}.workspace-toolbar{padding-inline:12px;gap:10px}.workspace-toolbar .campus-section-links{min-height:52px}.workspace-toolbar .campus-section-links>div{gap:16px}.workspace-toolbar .campus-section-links a{font-size:var(--font-sm)}.workspace-toolbar .study-quick-bar{padding-left:0}.workspace-toolbar .study-quick-bar>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.workspace-toolbar .study-quick-bar button{min-height:44px;min-width:40px;padding-inline:8px}.app-shell .showcase-controls{min-height:44px;padding:0 12px;gap:0}.app-shell .showcase-control-toggle{display:inline-flex;align-items:center;gap:4px;min-height:44px;padding-inline:6px;color:var(--muted);font-size:var(--font-xs)}.app-shell .showcase-controls[data-expanded=false] .showcase-control-actions{display:none}.app-shell .showcase-controls[data-expanded=true] .showcase-control-actions{flex-basis:100%;padding-bottom:10px;gap:6px;flex-wrap:wrap}.app-shell .showcase-control-actions :is(button,select){min-height:44px;font-size:var(--font-xs)}.app-shell .page-scroll{padding:20px 16px 40px}.app-shell :is(.primary-btn,.secondary-btn){min-height:44px;font-size:var(--font-sm)}.app-shell .learning-field :is(input,select,textarea),.app-shell .composer textarea{font-size:var(--font-lg)}.app-shell .showcase-heading h2{font-size:var(--font-2xl);line-height:1.45}.app-shell .showcase-fiction{white-space:normal}.app-shell .channel-welcome{margin:16px;padding:16px;min-height:0}.app-shell .attendance-summary{order:-1}.app-shell .welcome-art,.app-shell .welcome-copy .eyebrow{display:none}.app-shell .welcome-copy h2{font-size:var(--font-xl);line-height:1.5;margin:0 0 4px}.app-shell .welcome-copy h2>span{display:inline}.app-shell .welcome-copy p{max-width:none;font-size:var(--font-xs)}.app-shell .composer-format{height:36px}.app-shell .composer-format .icon-btn{width:36px;height:32px}.app-shell .format-hint{display:none}.app-shell .composer-tools{height:50px;padding:4px 8px 6px}.app-shell .composer-tools .icon-btn,.app-shell .send-button{width:40px;height:40px;border-radius:var(--radius-md)}.app-shell .composer-footer>span:last-child{display:none}.app-shell .composer-footer{flex-wrap:wrap;gap:4px}}.app-shell .shell-switch{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--brand-primary);font-size:var(--font-sm);font-weight:600;white-space:nowrap}.app-shell .shell-switch:hover{border-color:var(--brand-highlight);background:var(--brand-pale)}.admin-shell .admin-label{background:var(--brand-ink);color:var(--on-brand)}.admin-shell .workspace-rail{background:var(--brand-ink)}.admin-shell .channel-sidebar .workspace-title small{color:var(--brand-primary);font-weight:600}.admin-shell .channel-sidebar .academy-icon{background:var(--brand-ink);color:var(--on-brand)}@media(max-width:600px){.app-shell .shell-switch{min-height:36px;padding:0 var(--space-2)}.app-shell .shell-switch svg{display:none}}
