/* Teacher-facing entry, login and inbox. Does not alter the teaching resource grid. */
dialog.bio-coop:not([open]){display:none!important}
.bio-coop{font-family:"Segoe UI","Microsoft YaHei","PingFang SC",sans-serif!important}.bio-coop :is(h1,h2,h3,h4,p,strong,button,input,textarea,select,span,small,label,summary){font-family:inherit!important;letter-spacing:normal}.bio-coop .member-icon{width:19px;height:19px;flex:none;display:inline-block;vertical-align:middle}.bio-coop .member-tabs button{display:flex;align-items:center;gap:9px}.bio-coop .numbered-image{min-width:0;max-width:100%}
.bio-coop .member-entry{padding:10px 12px;gap:10px;align-items:center;box-shadow:none}.bio-coop .entry-caption{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;min-width:0;line-height:1.5}.bio-coop .entry-caption strong{font-size:14px;overflow-wrap:anywhere}.bio-coop .entry-caption span{font-size:11px;color:#76622c}.bio-coop .entry-actions{display:flex;gap:4px}.bio-coop .entry-actions button{min-height:40px;padding:6px 10px;font-size:14px}.bio-coop .entry-actions .badge{margin-left:4px}.bio-coop .entry-login{font-weight:700;min-height:44px!important;padding:8px 14px!important;background:#fff!important;border:1px solid #cbd8d0!important}.bio-coop .member-entry.guest{background:#f1f5f2;border:1px solid #dce6df}.bio-coop .member-entry.guest small{color:#536b5c;font-size:12px;line-height:1.5}.sidebar-member-entry{padding:0 14px 12px;flex:none}.sidebar-member-entry .member-entry{display:block;margin:0;background:#fff7df;color:#304533}.sidebar-member-entry .entry-caption{margin-bottom:7px}.sidebar-member-entry .entry-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.sidebar-member-entry .entry-actions button{min-width:0;background:#ffffffb8;color:#264b36;padding:6px!important;min-height:44px}.sidebar-member-entry .member-entry.guest{padding:10px 12px}.sidebar-member-entry .member-entry.guest .entry-caption{font-size:12px;color:#536b5c}.sidebar-member-entry .entry-login{width:100%;margin-bottom:6px}.sidebar-member-entry .member-entry.guest small{display:block}
#bio-coop-dialog[data-screen=auth]{width:min(510px,calc(100vw - 24px));padding:28px}#bio-coop-dialog[data-screen=messages]{width:min(860px,calc(100vw - 24px))}#bio-coop-dialog[data-screen=conversation]{width:min(980px,calc(100vw - 24px))}.bio-coop[data-screen=auth] .toolbar h2{font-size:26px}.bio-coop[data-screen=auth]>form{margin:20px auto 10px;max-width:480px}.bio-coop .auth-intro{max-width:520px;margin:0 auto;color:#415e4c;font-size:15px;line-height:1.8}.bio-coop .auth-intro p{margin:4px 0}.bio-coop .auth-intro .muted{font-size:13px}.bio-coop .auth-links{justify-content:space-between!important;gap:8px!important;margin:12px 0!important}.bio-coop .auth-links button{background:transparent;border:0;color:#2b7252;font-size:14px;padding:8px 4px}.bio-coop .auth-note{border-top:1px solid #e1e9e3;padding-top:14px;color:#627567;font-size:12px;line-height:1.8}.coop-page #coop-center>section[data-screen=auth]{max-width:530px;margin:28px auto;min-height:0;padding:28px}.bio-coop .member-tabs{gap:8px}.bio-coop .member-tabs button{flex:0 0 auto;min-width:80px;font-size:15px}.bio-coop .member-tabs .badge{margin-left:6px}
.bio-coop .message-lead{color:#556d5e;font-size:14px;margin:0 0 16px;line-height:1.8}.bio-coop .message-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0 14px;flex-wrap:wrap}.bio-coop .message-filters{display:flex;gap:6px;flex-wrap:wrap}.bio-coop .message-filters button{font-size:13px;padding:7px 12px;background:#fff;border-color:#e0e7e2}.bio-coop .message-filters button[aria-pressed=true]{background:#e3f0e8;color:#1e6244;border-color:#bad6c5}.bio-coop .message-more{position:relative;font-size:12px}.bio-coop .message-more summary{color:#5a6e60;padding:8px 4px}.bio-coop .message-more[open]{padding:6px 10px;border:1px solid #d7e3db;border-radius:8px;background:#fff}.bio-coop .message-more button{display:block;width:100%;font-size:13px;margin:4px 0}.bio-coop .message-list{border:1px solid #dce6df;border-radius:12px;overflow:hidden;background:#fff}.bio-coop .message-row{width:100%;display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:14px;align-items:start;text-align:left;border:0;border-radius:0;border-bottom:1px solid #e5ece7;background:white;padding:18px;font-weight:400}.bio-coop .message-row:last-child{border-bottom:0}.bio-coop .message-row:hover{background:#f5f9f6}.bio-coop .message-row.is-unread{background:#f4faf6;box-shadow:inset 3px 0 #388e63}.bio-coop .message-row.is-unread .avatar{background:#d7ebdf;color:#195e3b}.bio-coop .message-row-content{min-width:0}.bio-coop .message-row-title{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.bio-coop .message-row-title strong{font-size:16px;line-height:1.65;font-weight:650;overflow-wrap:anywhere}.bio-coop .unread-label{font-size:11px;color:#98602d;background:#fff1d9;border:1px solid #ecd5ad;border-radius:4px;padding:1px 6px;white-space:nowrap}.bio-coop .message-row .message-preview{font-size:14px;margin:5px 0;line-height:1.7;color:#50685a}.bio-coop .message-row .message-meta{font-size:12px;display:block;line-height:1.8;color:#647869}.bio-coop .message-action{font-size:12px;color:#2d7651;align-self:center;white-space:nowrap}.bio-coop .message-empty{padding:36px 20px;text-align:center;background:#f8faf8}.bio-coop .message-empty strong{display:block;font-size:18px}.bio-coop .message-empty p{font-size:14px;color:#5a7161;margin:12px auto;max-width:420px}.bio-coop .message-empty button{margin:6px;font-size:14px}.bio-coop .message-footnote{font-size:12px;color:#677b6b;line-height:1.8;margin-top:14px}.bio-coop .single-conversation{display:block;min-height:0}.bio-coop .single-conversation>.conversation-list{display:none!important}.bio-coop .single-conversation>.chat-pane{display:block!important}.bio-coop .single-conversation .chat-heading{gap:10px}.bio-coop .single-conversation .chat-heading>button{margin-left:auto}.bio-coop .update-thread{margin:16px 0}.bio-coop .update-thread .message-bubble{margin:16px 0}
.bio-coop .account-summary{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:18px;background:#fff9e9;border:1px solid #e5d7b5;border-radius:12px;margin:12px 0 20px}.bio-coop .account-summary>button{margin-left:auto;font-size:13px}.bio-coop .account-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.bio-coop .account-menu-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;text-align:left;background:#fff;border-color:#dce6df;padding:18px}.bio-coop .account-menu-item strong{font-size:16px;line-height:1.6}.bio-coop .account-menu-item .muted{font-size:13px;font-weight:400;grid-column:1;line-height:1.8}.bio-coop .menu-arrow{grid-column:2;grid-row:1/3;align-self:center;color:#478561}.bio-coop .account-rules{border:1px solid #dce6df;border-radius:10px;padding:8px 16px;margin:16px 0}.bio-coop .account-rules>summary{font-size:15px}.bio-coop .account-rules .guide{margin-top:12px}
@media(max-width:760px){#bio-coop-dialog[data-screen=auth]{padding:22px 18px}.bio-coop .member-tabs{gap:3px}.bio-coop .member-tabs button{flex:1;min-width:0;padding:8px;font-size:14px}.bio-coop .message-row{grid-template-columns:32px minmax(0,1fr);gap:8px 10px;padding:15px 12px}.bio-coop .message-row .avatar{width:32px;height:32px;font-size:14px;border-radius:9px}.bio-coop .message-row-title strong{font-size:15px}.bio-coop .message-action{grid-column:2;font-size:12px}.bio-coop .message-controls{gap:4px}.bio-coop .message-filters{gap:4px}.bio-coop .message-filters button{padding:7px 9px;font-size:13px}.bio-coop .account-menu{grid-template-columns:1fr}.bio-coop .account-summary{padding:14px}.bio-coop .account-summary>button{margin-left:0}.coop-page #coop-center>section[data-screen=auth]{padding:22px 18px;margin:12px auto}.bio-coop .entry-caption strong{font-size:13px}.bio-coop .entry-actions button{min-height:44px}.bio-coop .single-conversation .chat-heading>div{order:0}}
/* Keep dialogs opaque and stationary; feedback never changes the target position. */
.bio-coop .entry-actions button,.bio-coop .message-row{transition:background-color .12s ease,border-color .12s ease}@media(prefers-reduced-motion:reduce){.bio-coop .entry-actions button,.bio-coop .message-row{transition:none}}

/* A compact software inbox, with navigation separated from message content. */
.bio-coop[data-screen=messages]:not(dialog),dialog.bio-coop[open][data-screen=messages]{display:grid;grid-template-columns:148px minmax(0,1fr);gap:0 24px;background:#fff;color:#243248}
#bio-coop-dialog[data-screen=messages]{width:min(1000px,calc(100vw - 32px));padding:26px;border:0;border-radius:20px;box-shadow:0 32px 110px #0e172b40}
.bio-coop[data-screen=messages]>.toolbar{grid-column:1/-1;border-bottom:1px solid #edf0f4;margin:0 0 22px;padding-bottom:18px}.bio-coop[data-screen=messages] .toolbar h2{font-size:28px;font-weight:700;color:#172338}.bio-coop[data-screen=messages] .workspace-kicker{color:#778293;font-size:11px;font-weight:500}.bio-coop[data-screen=messages]>.member-tabs{grid-column:1;grid-row:2/span 5;display:flex;flex-direction:column;align-self:start;border:0;margin:0;padding:8px 0;gap:8px}.bio-coop[data-screen=messages]>.member-tabs button{justify-content:start;padding:12px;min-height:46px;border-radius:9px;font-size:14px;background:transparent;color:#667386;font-weight:500}.bio-coop[data-screen=messages]>.member-tabs button[aria-current=page]{background:#e9f4ef;color:#147651;font-weight:650}.bio-coop[data-screen=messages]>:is(.message-lead,.message-controls,.message-list,.message-footnote,.status,.muted){grid-column:2}.bio-coop[data-screen=messages]>.message-lead{margin:2px 0 16px;font-size:13px;color:#6b7789}.bio-coop[data-screen=messages] .message-controls{margin:0 0 8px;border-bottom:1px solid #edf0f4;padding-bottom:8px}.bio-coop[data-screen=messages] .message-filters{gap:16px}.bio-coop[data-screen=messages] .message-filters button{border:0;background:transparent;border-radius:0;padding:8px 0;color:#7b8492;min-height:40px;font-size:13px;box-shadow:none}.bio-coop[data-screen=messages] .message-filters button[aria-pressed=true]{color:#172a40;box-shadow:inset 0 -2px #219369;font-weight:650}.bio-coop[data-screen=messages] .message-list{border:0;border-radius:0;overflow:visible}.bio-coop[data-screen=messages] .message-row{grid-template-columns:44px minmax(0,1fr) auto;gap:14px;padding:20px 10px;border-bottom:1px solid #edf0f4;background:white;box-shadow:none;border-radius:10px}.bio-coop[data-screen=messages] .message-row.is-unread{background:#f5faf8}.bio-coop[data-screen=messages] .message-row:hover{background:#f3f6fa}.bio-coop[data-screen=messages] .message-row-title strong{font-size:15px;font-weight:650;color:#273449;line-height:1.6}.bio-coop .message-project-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:#e9f0f7;overflow:hidden;color:#597087}.bio-coop .message-project-icon img{width:100%;height:100%;object-fit:cover}.bio-coop[data-screen=messages] .message-preview{color:#5b697c;font-size:14px;margin:6px 0}.bio-coop[data-screen=messages] .message-meta{color:#84909e;font-size:12px}.bio-coop .message-row-aside{display:flex;flex-direction:column;gap:18px;align-items:end;align-self:stretch;min-width:66px}.bio-coop .message-time{color:#8b95a1;font-size:11px;white-space:nowrap}.bio-coop .message-row-aside .message-action{color:#5d748b;font-size:11px;margin-top:auto}.bio-coop[data-screen=messages] .unread-label{font-size:10px;color:#16734e;background:#e7f4eb;border:0}.bio-coop[data-screen=messages] .message-footnote{font-size:11px;line-height:1.7;color:#87929d;padding-top:16px;margin-top:8px}.bio-coop[data-screen=messages] .message-empty{background:#f8fafc;border-radius:12px;color:#4b5c70}
.bio-coop .screenshot-hint{font-size:13px;line-height:1.8;color:#607187;flex-basis:100%;margin:0}.bio-coop .screenshot-hint strong{color:#314c66}.bio-coop .attachment-panel.attachment-always{flex-basis:100%;padding:0;margin:0}.bio-coop .attachment-always>label{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:13px;margin:4px 0}.bio-coop .attachment-always>.fieldhint{display:none}.bio-coop .numbered-image{margin:0;display:grid;gap:5px;align-content:start}.bio-coop .numbered-image figcaption{font-size:12px;font-weight:650;color:#42614f}.bio-coop .numbered-image button{font-size:12px;min-height:36px}.bio-coop .numbered-image img{border-radius:8px}
@media(max-width:760px){.bio-coop[data-screen=messages]:not(dialog),dialog.bio-coop[open][data-screen=messages]{display:block}#bio-coop-dialog[data-screen=messages]{padding:20px 14px;width:calc(100vw - 16px);border-radius:16px}.bio-coop[data-screen=messages]>.toolbar{margin-bottom:12px;padding-bottom:14px}.bio-coop[data-screen=messages]>.member-tabs{display:flex;flex-direction:row;gap:4px;margin-bottom:18px;padding:0}.bio-coop[data-screen=messages]>.member-tabs button{flex:1;min-width:0;justify-content:center;flex-direction:column;gap:4px;padding:8px 3px;font-size:12px}.bio-coop[data-screen=messages] .message-row{grid-template-columns:36px minmax(0,1fr);padding:16px 4px;gap:8px 10px}.bio-coop .message-project-icon{width:36px;height:36px;border-radius:10px}.bio-coop .message-row-aside{grid-column:2;flex-direction:row;align-items:center;justify-content:space-between;gap:10px}.bio-coop .message-row-aside .message-action{margin:0}.bio-coop[data-screen=messages] .message-filters{gap:14px}.bio-coop[data-screen=messages] .message-filters button{font-size:12px}.bio-coop[data-screen=messages] .message-more summary{font-size:11px}.bio-coop .member-tabs .member-icon{width:17px;height:17px}}
/* v5: restrained member identity, consistent saved library and readable inbox. */
.bio-coop .member-entry.welcome{background:#163c32;color:#f3f8f5;border:1px solid #406354;box-shadow:inset 0 1px #ffffff0d;border-radius:13px;padding:12px}
.bio-coop .entry-profile{display:flex;align-items:center;gap:10px;min-width:0}
.bio-coop .entry-avatar{width:36px;height:36px;display:grid;place-items:center;flex:none;border-radius:50%;background:#e9dfba;color:#3e4c35;font-size:17px;font-weight:650;box-shadow:0 0 0 3px #d5c78c14}
.bio-coop .entry-avatar.text-avatar{display:flex;width:42px;height:42px;padding:4px;line-height:1.15;align-items:center;justify-content:center}
.bio-coop .entry-avatar.text-avatar[data-letters="4"],.bio-coop .entry-avatar.text-avatar[data-letters="5"],.bio-coop .entry-avatar.text-avatar[data-letters="6"]{padding-inline:6px;font-size:11px!important}
.bio-coop .welcome .entry-caption{display:flex;flex-direction:column;align-items:start;gap:3px;margin:0;line-height:1.45}
.bio-coop .welcome .entry-caption strong{font-size:14px;color:#f3f8f5;font-weight:600}
.bio-coop .welcome .entry-caption .entry-role{font-size:10px;letter-spacing:.04em;color:#dfd1a1;background:transparent;border:0}
.bio-coop .welcome .entry-actions{gap:3px;margin-top:10px;padding-top:7px;border-top:1px solid #ffffff16}
.bio-coop .welcome .entry-actions button{display:flex;align-items:center;justify-content:center;gap:5px;background:transparent;color:#d8e6df;border:0;border-radius:7px;position:relative;font-size:12px;padding:8px!important;min-height:44px}
.bio-coop .welcome .entry-actions button:hover{background:#ffffff12;color:white}
.bio-coop .welcome .entry-actions .member-icon{width:16px;height:16px}
.bio-coop .welcome .entry-actions .badge{position:absolute;top:0;right:0;font-size:10px;min-width:16px;line-height:16px;padding:0 4px;background:#dfb958;color:#18352c;border:2px solid #163c32;margin:0}
.bio-coop .welcome:focus-within{border-color:#b7cbb8}
.bio-coop .account-summary{background:#f4f7f5;border-color:#e0e8e2}
.coop-card-favorite{position:absolute;right:7px;top:7px;z-index:3;width:44px;height:44px;padding:10px;display:grid;place-items:center;color:#466258;background:#fffffff2;border:1px solid #d5e1da;border-radius:11px;box-shadow:0 2px 8px #122c2017;cursor:pointer}
.coop-card-favorite .member-icon{width:21px;height:21px;display:block}
.coop-card-favorite[aria-pressed=true]{color:#146549;background:#e5f5ec;border-color:#a9d3bc}
.coop-card-favorite[aria-pressed=true] path{fill:#14654926}
.coop-card-favorite:hover{background:#f0f8f3;border-color:#699d80}
.coop-card-favorite:focus-visible{outline:3px solid #15775d;outline-offset:2px}
.coop-card-favorite:disabled{opacity:.65;cursor:wait}
.bio-coop.favorite-toast{position:fixed;z-index:11000;bottom:24px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 32px);padding:12px 18px;border:1px solid #d5e4db;border-radius:12px;box-shadow:0 8px 40px #172b3229;background:#fff;color:#244c3b;font-size:14px;pointer-events:none;overflow-wrap:anywhere}
.bio-coop.favorite-toast.is-error{color:#9d362a;border-color:#edc3bd}
.bio-coop.favorite-toast[hidden]{display:none}
.bio-coop[data-screen=favorites]:not(dialog),dialog.bio-coop[open][data-screen=favorites]{display:grid;grid-template-columns:148px minmax(0,1fr);gap:0 24px;background:#fff;color:#243248}
#bio-coop-dialog[data-screen=favorites],#bio-coop-dialog[data-screen=messages]{width:min(1060px,calc(100vw - 32px));padding:26px;border:1px solid #e0e8e4;border-radius:18px;box-shadow:0 32px 110px #0e172b40}
.bio-coop[data-screen=favorites]>.toolbar{grid-column:1/-1;border-bottom:1px solid #edf0f4;margin:0 0 22px;padding-bottom:18px}
.bio-coop[data-screen=favorites]>.member-tabs{grid-column:1;grid-row:2/span 5;display:flex;flex-direction:column;align-self:start;border:0;margin:0;padding:8px 0;gap:8px}
.bio-coop[data-screen=favorites]>.member-tabs button{justify-content:start;padding:12px;min-height:46px;border-radius:9px;font-size:14px;background:transparent;color:#667386;font-weight:500}
.bio-coop[data-screen=favorites]>.member-tabs button[aria-current=page]{background:#e9f4ef;color:#147651;font-weight:650}
.bio-coop[data-screen=favorites]>:is(.message-lead,.saved-tools,.saved-grid,.status){grid-column:2;min-width:0}
.bio-coop :is(.saved-tools){display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 18px}
.bio-coop .saved-tools input{flex:1;min-width:150px;width:auto;max-width:340px;background:#f7f9f8;border-color:#e1e7e3;font-size:14px}
.bio-coop .saved-count{font-size:12px;color:#78877f;line-height:1.7}
.bio-coop .saved-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-content:start}
.bio-coop .favorite-card{display:grid;grid-template-columns:104px minmax(0,1fr);gap:14px;border:1px solid #e0e7e2;border-radius:12px;background:#fff;padding:12px;min-width:0;align-items:start;transition:box-shadow .15s,border-color .15s}
.bio-coop .favorite-card:hover{box-shadow:0 4px 18px #123b2910;border-color:#afc9b9}
.bio-coop .saved-preview{width:104px;aspect-ratio:1;display:grid;place-items:center;overflow:hidden;border-radius:9px;background:#f0f4ee;align-self:start}
.bio-coop .saved-preview img{width:100%;height:100%;object-fit:cover}
.bio-coop .saved-content{min-width:0;display:flex;flex-direction:column;align-self:stretch}
.bio-coop .saved-title{font-size:15px;line-height:1.6;font-weight:650;text-decoration:none;color:#263e34;overflow-wrap:anywhere}
.bio-coop .saved-meta{font-size:11px;color:#77877e;margin:6px 0 10px;line-height:1.6}
.bio-coop .saved-actions{display:flex;flex-wrap:wrap;gap:4px;align-items:center;justify-content:space-between;margin-top:auto}
.bio-coop .saved-launch{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;color:#157255;font-size:13px;font-weight:600}
.bio-coop .saved-remove{width:44px;min-height:44px;display:grid;place-items:center;border:0;background:#f1f6f3;color:#38765c;padding:10px}
.bio-coop .saved-remove path{fill:#38765c20}
.bio-coop .saved-empty{grid-column:1/-1;text-align:center;padding:48px 24px;color:#63776b;background:#f6f9f7;border:1px dashed #d9e3dc;border-radius:14px}
.bio-coop .saved-empty>.member-icon{width:32px;height:32px;color:#6a9b80}
.bio-coop .saved-empty h3{font-size:18px;color:#355746;margin:16px 0 8px}
.bio-coop .saved-empty p{font-size:14px;line-height:1.8;max-width:400px;margin:auto}
.bio-coop[data-screen=messages] .message-row{grid-template-columns:64px minmax(0,1fr) auto;gap:16px;border-radius:0;padding:18px 12px;border-bottom:1px solid #e8eee9}
.bio-coop[data-screen=messages] .message-project-icon{width:64px;height:64px;border-radius:10px;background:#eef3ef}
.bio-coop[data-screen=messages] .message-row-title strong{font-size:16px;line-height:1.6}
.bio-coop[data-screen=messages] .message-row.is-unread{background:#f3f9f5}
.bio-coop[data-screen=messages] .message-row-aside{gap:12px}
.bio-coop[data-screen=messages] .message-action{background:#edf3ef;padding:5px 8px;border-radius:6px}
.bio-coop[data-screen=messages] .message-list{border:1px solid #e3eae5;border-radius:12px;overflow:clip}
.bio-coop :is(.saved-title,.saved-launch):hover{text-decoration:underline}
@media(max-width:1100px){.bio-coop .saved-grid{grid-template-columns:1fr}.bio-coop .favorite-card{grid-template-columns:90px minmax(0,1fr)}.bio-coop .saved-preview{width:90px}}
@media(max-width:760px){
 .bio-coop[data-screen=favorites]:not(dialog),dialog.bio-coop[open][data-screen=favorites]{display:block}
 #bio-coop-dialog[data-screen=favorites],#bio-coop-dialog[data-screen=messages]{width:calc(100vw - 16px);padding:18px 12px;border-radius:14px}
 .bio-coop[data-screen=favorites]>.member-tabs{display:flex;flex-direction:row;gap:4px;margin-bottom:18px;padding:0}
 .bio-coop[data-screen=favorites]>.member-tabs button{flex:1;min-width:0;justify-content:center;flex-direction:column;gap:4px;padding:8px 3px;font-size:12px}
 .bio-coop .favorite-card{padding:10px;gap:12px;grid-template-columns:80px minmax(0,1fr)}.bio-coop .saved-preview{width:80px}
 .bio-coop[data-screen=messages] .message-row{grid-template-columns:48px minmax(0,1fr);gap:8px 12px;padding:16px 10px}
 .bio-coop[data-screen=messages] .message-project-icon{width:48px;height:48px;border-radius:9px}
 .bio-coop .saved-tools input{max-width:none}.bio-coop .saved-count{flex-basis:100%}
 .bio-coop[data-screen=messages] .message-row-title strong{font-size:15px}
}
/* Discussion filters stay visible; books are not hidden in a select menu. */
.bio-coop .project-filters{border:1px solid #e0e8e3;background:#f8faf9;padding:14px 16px;border-radius:12px;margin:16px 0 8px}
.bio-coop .project-filter-row{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin:0 0 10px}
.bio-coop .project-filter-row .filter-label{font-size:12px;color:#708277;min-width:34px}
.bio-coop .project-filter-row button{min-height:44px;font-size:14px;padding:8px 12px;background:#fff;border:1px solid #dbe5de;color:#496458;text-align:left}
.bio-coop .project-filter-row button[aria-pressed=true]{background:#17694e;border-color:#17694e;color:#fff}
.bio-coop .project-filters input{font-size:14px;max-width:560px;background:white}
.bio-coop .project-result-count{font-size:13px;color:#6a7f72;margin:12px 0 0}
.bio-coop[data-screen=projects] .project-grid{margin-top:8px}
.bio-coop .project-empty{grid-column:1/-1;padding:24px}
.bio-coop .science-example{display:grid;gap:20px;padding:12px 0}
.bio-coop .science-example-pictures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.bio-coop .science-example-expand{display:block;width:100%;padding:0;border:0;border-radius:0;background:#0c1b2b;min-height:0;cursor:zoom-in}
.bio-coop .science-example-expand img{display:block;width:100%;height:auto}
.bio-coop .science-example .example-copy{padding:16px 18px;background:#f3f7f4;border-radius:10px}
.bio-coop .science-example figcaption{white-space:pre-wrap;line-height:1.7}
@media(max-width:600px){.bio-coop .project-filters{padding:12px}.bio-coop .project-filter-row .filter-label{width:100%}.bio-coop .project-filter-row button{font-size:13px}.bio-coop .science-example-pictures{grid-template-columns:1fr}.bio-coop .science-example .example-copy{padding:12px}}
@media(max-width:760px){
 .bio-coop[data-screen=projects]>.member-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(60px,1fr));gap:4px}
 .bio-coop[data-screen=projects]>.member-tabs button{display:flex;flex-direction:column;justify-content:center;gap:5px;padding:8px 2px;min-width:0;font-size:12px}
 .bio-coop[data-screen=projects]>.member-tabs button>span{word-break:keep-all;overflow-wrap:normal}
}
.bio-coop[data-screen=signup] .signup-form{width:min(100%,620px);margin:18px auto;display:block}
#bio-coop-dialog[data-screen=signup]{width:min(740px,calc(100vw - 24px));background:#fff}
.bio-coop[data-screen=signup]>.auth-intro{max-width:620px;font-size:14px;line-height:1.8}
.bio-coop .signup-optional,.bio-coop .signup-rules{border:1px solid #dfe7e2;border-radius:10px;padding:8px 14px;margin:16px 0;background:#f8faf9}
.bio-coop .signup-form label{font-size:14px;line-height:1.7}
.bio-coop .signup-form input{margin-top:5px;min-height:46px}
.bio-coop .signup-form .check{align-items:flex-start}.bio-coop .signup-form .check input{min-height:20px;margin-top:4px}
.bio-coop .signup-form>.primary{width:100%;margin-top:14px}
.bio-coop .signup-rules .guide{padding:12px}.bio-coop .signup-rules .guide-steps{grid-template-columns:1fr}
.bio-coop .signup-rules .science-example-pictures{grid-template-columns:1fr}
.bio-coop .signup-notice{padding:12px 14px;border-radius:8px;background:#edf6f0;font-size:14px;line-height:1.8}
.bio-coop .group-link-card input{font-size:13px;margin:12px 0}
.bio-coop .group-link-card .row{gap:8px}
.bio-coop .member-private-details{font-size:13px;line-height:1.8;padding:10px 0;border-top:1px solid #edf0ee}
@media(max-width:600px){.bio-coop .signup-optional,.bio-coop .signup-rules{padding:8px 10px}.bio-coop .signup-form{min-width:0}.bio-coop .signup-rules .guide-example{padding:6px}.bio-coop[data-screen=signup] .toolbar h2{font-size:23px}}
/* v0.9 enrollment: stable controls, legible type, explicit membership paths. */
#bio-coop-dialog:is([data-screen=auth],[data-screen=signup],[data-screen=activation]){width:min(1080px,calc(100vw - 32px));padding:28px;background:#f7faf8;border:1px solid #d4e1da;border-radius:22px;box-shadow:0 28px 90px #092e3040;font:18px/1.65 system-ui,sans-serif}
#bio-coop-dialog[data-screen=auth]{width:min(600px,calc(100vw - 32px))}
.bio-coop:is([data-screen=signup],[data-screen=auth],[data-screen=activation]){font-size:18px;line-height:1.65;color:#193d31}
.bio-coop:is([data-screen=signup],[data-screen=auth],[data-screen=activation]) .toolbar{position:static;background:transparent;padding:0 0 18px;margin-bottom:18px;align-items:start}
.bio-coop:is([data-screen=signup],[data-screen=auth],[data-screen=activation]) .toolbar h2{font-size:30px;line-height:1.35;font-weight:750;letter-spacing:-.02em}
.bio-coop:is([data-screen=signup],[data-screen=auth]) .workspace-kicker{font-size:14px;color:#567164}
.bio-coop .beta-notice{display:flex;gap:12px;align-items:start;border:1px solid #d3e4d8;background:#eaf4ee;border-radius:12px;padding:12px 16px;margin-bottom:20px}
.bio-coop .beta-notice p{font-size:16px;line-height:1.65;margin:0;color:#345d49}
.bio-coop .beta-badge{flex:none;font-size:14px;font-weight:700;white-space:nowrap;background:#d1e7d8;color:#245d3b;border-radius:6px;padding:2px 8px}
.bio-coop .enrollment-layout{display:grid;grid-template-columns:minmax(230px,.78fr) minmax(0,1.22fr);gap:26px;align-items:start}
.bio-coop .membership-guide{padding:8px 0;min-width:0}.bio-coop .membership-guide h3{font-size:21px;margin:0 0 16px}.bio-coop .membership-option{padding:16px 0;border-bottom:1px solid #dce5df}.bio-coop .membership-option strong{font-size:18px}.bio-coop .membership-option p,.bio-coop .membership-next{font-size:16px;line-height:1.8;color:#51675a}.bio-coop .membership-next{padding:16px;background:#fff;border:1px solid #dce5df;border-radius:12px;margin-top:18px}
.bio-coop .signup-form{margin:0;max-width:none;padding:24px;background:#fff;border:1px solid #d9e4dc;border-radius:16px;box-shadow:0 6px 24px #153d3005;min-width:0}
.bio-coop .signup-form h3{font-size:23px;margin:0 0 8px}.bio-coop .signup-form label{font-size:18px;font-weight:600;margin:18px 0 10px}.bio-coop .signup-form :is(input,select){font-size:18px;min-height:50px;border-radius:9px;background:#fcfefd;padding:10px 12px;margin-top:6px;font-weight:400}.bio-coop .signup-form input[type=checkbox]{min-height:22px;margin-top:3px;flex:none}.bio-coop .signup-form .check{font-size:16px;line-height:1.7;font-weight:400}.bio-coop .signup-form .primary{width:100%;min-height:52px;border:0;border-radius:10px;background:#17684c;font-size:19px;font-weight:700;box-shadow:0 3px 8px #17684c18}
.bio-coop .signup-form .auth-intro,.bio-coop:is([data-screen=auth],[data-screen=signup]) .auth-intro{font-size:17px;max-width:none;line-height:1.7;margin:0}.bio-coop .signup-form .fieldhint{font-size:15px;line-height:1.75;color:#51695a}.bio-coop .signup-form .send-code{margin:10px 0 0;min-height:48px;background:#edf6f0;border-color:#c4dbcc;color:#235e41;font-size:17px}
.bio-coop .account-identity-fields{min-width:0;margin:24px 0 12px;padding:10px 16px 14px;background:#f6f9f7;border:1px solid #dce7df;border-radius:12px}.bio-coop .account-identity-fields legend{padding:0 6px;font-size:18px;font-weight:700}.bio-coop .account-identity-fields label{margin-top:6px}.bio-coop .account-identity-fields [hidden]{display:none!important}
.bio-coop .password-control{display:flex;align-items:stretch;gap:6px;margin-top:6px}.bio-coop .password-control input{min-width:0;flex:1;margin:0}.bio-coop .password-control button{flex:none;min-width:64px;margin:0;font-size:16px;background:#f0f6f2;border-radius:9px;padding:8px}
.bio-coop .form-message:empty{display:none}.bio-coop .form-message{background:#fff4ec;color:#8c3d20;border:1px solid #edcdb8;border-radius:8px;padding:10px 12px;font-size:16px}
.bio-coop .signup-rules summary,.bio-coop .signup-optional summary{font-size:17px;padding:8px 0;font-weight:650}.bio-coop .auth-links button{font-size:17px;min-height:48px;padding:10px}.bio-coop .auth-note{font-size:15px}.bio-coop .entry-beta{display:block;font-size:12px;line-height:1.7;color:inherit;opacity:.85;padding-top:6px}.bio-coop .dock-beta{display:inline-block;margin-left:8px;border:1px solid currentColor;border-radius:4px;font-size:12px;padding:0 5px;vertical-align:middle}
.bio-coop:is([data-screen=auth],[data-screen=signup]) :is(input,select,button){transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.bio-coop:is([data-screen=auth],[data-screen=signup]) input:focus,.bio-coop:is([data-screen=auth],[data-screen=signup]) select:focus{border-color:#268365;box-shadow:0 0 0 3px #2683651c;outline:2px solid transparent}.bio-coop .enrollment-layout{animation:enrollment-enter .18s ease-out}@keyframes enrollment-enter{from{opacity:.3}to{opacity:1}}
@media(max-width:760px){#bio-coop-dialog:is([data-screen=auth],[data-screen=signup],[data-screen=activation]){width:calc(100vw - 16px);padding:18px 14px;border-radius:16px;max-height:calc(100dvh - 16px)}.bio-coop .enrollment-layout{grid-template-columns:1fr;gap:18px}.bio-coop .membership-guide{order:2}.bio-coop .signup-form{padding:18px 14px}.bio-coop .beta-notice{padding:10px;gap:8px}.bio-coop .beta-notice p{font-size:16px}.bio-coop:is([data-screen=auth],[data-screen=signup]) .toolbar h2{font-size:26px}.bio-coop .account-identity-fields{padding:8px 12px}.bio-coop .password-control button{min-width:58px}}
@media(prefers-reduced-motion:reduce){.bio-coop .enrollment-layout{animation:none}.bio-coop:is([data-screen=auth],[data-screen=signup]) *{transition:none!important}}
/* Compact inbox: visible bulk controls, grouped threads and comfortable text. */
.bio-coop[data-screen=messages]:not(dialog),dialog.bio-coop[open][data-screen=messages]{display:block}
#bio-coop-dialog[data-screen=messages]{width:min(1160px,calc(100vw - 24px));padding:20px 24px;border-radius:14px;max-height:calc(100dvh - 24px);overflow:auto}
.bio-coop[data-screen=messages]>.toolbar{margin:0 0 10px;padding:0 0 10px;position:static}.bio-coop[data-screen=messages] .toolbar h2{font-size:26px}
.bio-coop[data-screen=messages]>.member-tabs{flex-direction:row;flex-wrap:wrap;margin:0 0 10px;padding:0;border-bottom:1px solid #dce5df;gap:4px}
.bio-coop[data-screen=messages]>.member-tabs button{font-size:16px;min-height:44px;padding:8px 14px}
.bio-coop[data-screen=messages]>.message-lead{font-size:16px;margin:8px 0 12px;color:#51665b}
.bio-coop[data-screen=messages] .message-controls{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:10px;border:0}
.bio-coop[data-screen=messages] .message-filters{display:flex;flex-wrap:wrap;gap:12px}.bio-coop[data-screen=messages] .message-filters button{font-size:16px;min-height:44px}
.bio-coop .message-tools{display:flex;gap:8px;flex-wrap:wrap}.bio-coop .message-tools button{font-size:16px;min-height:44px}.bio-coop .mark-all-read{background:#e5f2e9;border:1px solid #b4d5c2;color:#185c3d}
.bio-coop[data-screen=messages] .message-list{border:0;overflow:visible;border-radius:0}.bio-coop .notice-project{border:1px solid #d6e1da;border-radius:9px;overflow:hidden;margin-bottom:12px}
.bio-coop .notice-project-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 12px;background:#f2f6f3}.bio-coop .notice-project-head h3{font-size:17px;margin:0;overflow-wrap:anywhere}.bio-coop .notice-project-head button{font-size:14px;min-height:40px;background:transparent;border:0;flex-shrink:0}
.bio-coop .notice-line{display:flex;border-top:1px solid #e2e9e4;align-items:center;background:#fff}.bio-coop .notice-line.is-unread{background:#f4faf6}
.bio-coop[data-screen=messages] .notice-line .message-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;padding:10px 12px;flex:1;min-width:0;border:0;background:transparent;border-radius:0;min-height:76px}
.bio-coop[data-screen=messages] .message-project-icon{width:44px;height:44px;border-radius:7px}.bio-coop[data-screen=messages] .message-row-title strong{font-size:18px;line-height:1.4;overflow-wrap:anywhere}.bio-coop[data-screen=messages] .message-preview{font-size:15px;line-height:1.5;margin:4px 0 0;color:#51665c;white-space:normal;overflow:visible}.bio-coop[data-screen=messages] .message-time{font-size:14px;color:#5a6d62}.bio-coop[data-screen=messages] .unread-label{font-size:12px}.bio-coop .notice-read{font-size:14px;min-height:44px;flex:none;margin-right:10px;background:transparent;border-color:#d2e0d7}.bio-coop .notice-read:disabled{opacity:.55}
.bio-coop[data-screen=messages] .message-footnote{font-size:14px;padding-top:4px;margin-top:0;color:#5a7062}
.coop-card-favorite[aria-pressed=true]{color:#936512;background:#fff8df;border-color:#ddc77f}.coop-card-favorite[aria-pressed=true] path,.bio-coop .saved-remove path{fill:#efc64e;stroke:#805d13}
@media(max-width:640px){#bio-coop-dialog[data-screen=messages]{padding:14px 10px}.bio-coop[data-screen=messages]>.member-tabs button{padding:7px 8px;flex-direction:row;flex:initial;font-size:15px}.bio-coop[data-screen=messages] .notice-line{flex-wrap:wrap}.bio-coop[data-screen=messages] .notice-line .message-row{grid-template-columns:36px minmax(0,1fr);gap:8px;flex-basis:100%;padding:10px}.bio-coop[data-screen=messages] .message-project-icon{width:36px;height:36px}.bio-coop[data-screen=messages] .message-time{grid-column:2}.bio-coop .notice-read{margin:0 10px 8px auto}.bio-coop .notice-project-head{flex-wrap:wrap;gap:0}.bio-coop .notice-project-head h3{font-size:16px}.bio-coop[data-screen=messages] .message-row-title strong{font-size:17px}}
.bio-coop[data-screen=messages]{font-family:system-ui,-apple-system,"Microsoft YaHei",sans-serif}
@media(max-width:640px){.bio-coop[data-screen=messages] .notice-line{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}.bio-coop[data-screen=messages] .notice-line .message-row{min-width:0;grid-template-columns:30px minmax(0,1fr)}.bio-coop[data-screen=messages] .message-project-icon{width:30px;height:30px}.bio-coop .notice-read{font-size:13px;margin:0 6px 0 0;padding:6px;max-width:62px;white-space:normal}.bio-coop[data-screen=messages] .message-time{white-space:normal}.bio-coop .notice-project-head button{font-size:13px}}
/* Project issue boards retain existing membership/privacy checks. */
.bio-coop[data-screen=forum-topic] .chat-message.own .message-content,.bio-coop[data-screen=forum-topic] .chat-message .message-content{display:block;align-items:stretch;text-align:left;width:100%;margin:0}.bio-coop[data-screen=forum-topic] .chat-message.own .message-meta{justify-content:flex-start;align-self:stretch}.bio-coop[data-screen=forum-topic] .chat-message .avatar.text-avatar{display:flex;align-items:center;justify-content:center;width:36px;height:36px;font-size:11px;line-height:1.15;padding:5px;word-break:break-all;text-align:center;margin:0}.bio-coop[data-screen=forum-topic] .chat-topic-title{display:none}
#bio-coop-dialog:is([data-screen=forum-list],[data-screen=forum-topic]){width:min(1120px,calc(100vw - 28px));background:#fff;padding:22px 26px;max-height:calc(100dvh - 32px);overflow:auto}.bio-coop:is([data-screen=forum-list],[data-screen=forum-topic])>.toolbar{background:#fff;position:static}.bio-coop .forum-intro{font-size:16px;color:#52695a;margin:16px 0}.bio-coop .forum-issue-list{border:1px solid #d6e1d9;border-radius:10px;overflow:hidden;margin:16px 0}.bio-coop button.forum-issue{display:flex;width:100%;gap:14px;align-items:center;text-align:left;border:0;border-bottom:1px solid #e0e8e2;border-radius:0;background:#fff;padding:18px;min-height:86px}.bio-coop button.forum-issue:last-child{border-bottom:0}.bio-coop button.forum-issue:hover{background:#f0f6ed}.bio-coop .forum-status{font-size:14px;border-radius:5px;padding:4px 8px;background:#e7f1df;color:#3c6438;flex:none}.bio-coop .forum-issue-copy{display:flex;flex-direction:column;gap:7px;min-width:0}.bio-coop .forum-issue-copy strong{font-size:19px;font-weight:650;overflow-wrap:anywhere}.bio-coop .forum-issue-copy .muted{font-size:14px;font-weight:400}.bio-coop .forum-empty{padding:28px;font-size:16px;color:#576e5d}.bio-coop[data-screen=forum-topic] .chat-heading{background:#f4f7f1;padding:16px;border:1px solid #d7e2d8;border-radius:10px;display:flex;align-items:start;justify-content:space-between;gap:16px;margin:10px 0 18px}.bio-coop[data-screen=forum-topic] .chat-heading h3{font-size:20px}.bio-coop[data-screen=forum-topic] .chat-topic-title{font-size:18px;margin:8px 0}.bio-coop[data-screen=forum-topic] .chat-stream{background:transparent;padding:0;overflow:visible;max-height:none;min-height:0;display:block;flex:none}.bio-coop[data-screen=forum-topic] .chat-message,.bio-coop[data-screen=forum-topic] .chat-message.own{display:flex;flex-direction:row;align-items:start;gap:12px;padding:18px 0;border-bottom:1px solid #e2e9e3;width:100%;margin:0}.bio-coop[data-screen=forum-topic] .chat-message .avatar{width:36px;height:36px;flex:none;background:#e9f0e2;color:#35543c}.bio-coop[data-screen=forum-topic] .message-content{max-width:none;min-width:0;flex:1}.bio-coop[data-screen=forum-topic] .message-meta{justify-content:flex-start;color:#55705e;font-size:14px;flex-wrap:wrap}.bio-coop[data-screen=forum-topic] .message-meta strong{font-size:16px;color:#254d36}.bio-coop[data-screen=forum-topic] .message-bubble,.bio-coop[data-screen=forum-topic] .own .message-bubble{background:transparent;color:#20372f;border:0;border-radius:0;padding:8px 0;box-shadow:none;max-width:none;min-width:0;font-size:18px}.bio-coop[data-screen=forum-topic] .message-bubble:before,.bio-coop[data-screen=forum-topic] .message-bubble:after{display:none}.bio-coop[data-screen=forum-topic] .images img{width:auto;max-width:min(180px,100%);max-height:140px;border:1px solid #d1dfd2;border-radius:8px;object-fit:contain}.bio-coop[data-screen=forum-topic] .chat-composer{position:static;display:block;border:1px solid #d6e2d8;border-radius:10px;background:#fafcf8;margin-top:16px;padding:18px}.bio-coop[data-screen=forum-topic] .chat-composer textarea{font-size:17px;min-height:100px}.bio-coop[data-screen=forum-topic] .history-panel{margin:16px 0;font-size:15px}.bio-coop[data-screen=forum-topic] .chat-composer .form-actions{justify-content:flex-end}
@media(max-width:640px){#bio-coop-dialog:is([data-screen=forum-list],[data-screen=forum-topic]){padding:14px;width:calc(100vw - 16px)}.bio-coop button.forum-issue{align-items:flex-start;gap:9px;padding:13px;flex-wrap:wrap}.bio-coop .forum-issue-copy{flex-basis:100%}.bio-coop .forum-issue-copy strong{font-size:18px}.bio-coop[data-screen=forum-topic] .chat-heading{flex-direction:column}.bio-coop[data-screen=forum-topic] .chat-message{gap:8px}.bio-coop[data-screen=forum-topic] .message-bubble{font-size:17px}.bio-coop[data-screen=forum-topic] .chat-message .avatar{width:28px;height:28px;font-size:12px}}
/* Project feedback is a single comment surface; existing topic/reply storage is retained. */
#bio-coop-dialog[data-screen=project-comments]{width:min(920px,calc(100vw - 24px));padding:24px;max-height:calc(100dvh - 36px)}
.bio-coop[data-screen=project-comments]>.toolbar{margin-bottom:14px}.bio-coop[data-screen=project-comments]>.toolbar h2{font-size:24px}.bio-coop[data-screen=project-comments]>.status:empty{display:none}
.bio-coop .project-comment-composer{margin:0 0 22px;padding:18px;border:1px solid #cddfd3;border-radius:12px;background:#f7faf6;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px}
.bio-coop .project-comment-composer>label,.bio-coop .project-comment-composer>.comment-reply-target{grid-column:1/-1;margin:0}.bio-coop .project-comment-composer>label{font-size:16px;font-weight:600}.bio-coop .project-comment-composer textarea{margin-top:7px;min-height:94px;max-height:260px;font-size:17px;background:#fff;line-height:1.6}
.bio-coop .comment-attachments{grid-column:1/-1;display:flex;align-items:center;gap:8px 14px;flex-wrap:wrap}.bio-coop .comment-attachments>label{margin:0}.bio-coop .comment-attachments .fieldhint{font-size:13px;margin:0}.bio-coop .comment-attachments>.images{flex-basis:100%;margin:0}.bio-coop .comment-attachments>.images:empty{display:none}
.bio-coop .comment-options{align-self:center;font-size:14px;margin:0}.bio-coop .comment-options[open]{grid-column:1/-1}.bio-coop .comment-options summary{cursor:pointer;color:#547360}.bio-coop .project-comment-composer>.primary{grid-column:2;grid-row:auto;justify-self:end;min-width:124px;background:#176a50;color:#fff;border-color:#176a50}.bio-coop .project-comment-composer>.form-message{grid-column:1/-1;grid-row:auto;font-size:14px;margin:0}.bio-coop .project-comment-composer>.form-message:empty{display:none}.bio-coop .comment-visibility{grid-column:1/-1;font-size:13px;color:#526b5b;margin:0}
.bio-coop .comment-reply-target{display:flex;gap:12px;align-items:center;justify-content:space-between;border-left:3px solid #43856a;padding:8px 12px;background:#eaf2e9;font-size:14px;min-width:0}.bio-coop .comment-reply-target span{overflow-wrap:anywhere;min-width:0}.bio-coop .comment-reply-target button{flex:none;font-size:13px}
.bio-coop .comment-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1px solid #dce5dd}.bio-coop .comment-filters{display:flex;gap:7px;flex:1}.bio-coop .comment-filters button[aria-pressed=true]{color:#fff;background:#245c47;border-color:#245c47}.bio-coop .comment-more{font-size:14px;position:relative}.bio-coop .comment-more summary{cursor:pointer;min-height:44px;display:flex;align-items:center;padding:0 8px}.bio-coop .comment-more-actions{display:flex;gap:7px;flex-wrap:wrap;padding:8px 0}.bio-coop .comment-more[open]{flex-basis:100%;order:3}
.bio-coop .project-comment-list{margin:0}.bio-coop .project-comment{padding:20px 0;border-bottom:1px solid #e2e8e1;outline-offset:4px}.bio-coop .project-comment.is-highlighted{background:#f1f8eb;border-radius:8px;padding:18px 12px}.bio-coop .comment-meta{display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:14px;color:#647a6c}.bio-coop .comment-meta .avatar{width:32px;height:32px;flex:none;background:#e8eee2;color:#365541;border-radius:6px;font-size:12px}.bio-coop .comment-meta strong{font-size:16px;color:#254c37}.bio-coop .comment-meta time{font-size:12px}.bio-coop .comment-badge{font-size:12px;color:#506c58;background:#edf2e9;padding:1px 6px;border-radius:4px}
.bio-coop .comment-text{font-size:18px;line-height:1.7;margin:10px 0 6px;white-space:pre-wrap}.bio-coop .comment-context{font-size:13px;color:#6b7b6e;border-left:2px solid #cddbd0;padding-left:10px;margin:9px 0}.bio-coop .comment-old-title{font-size:17px;margin:10px 0 0}.bio-coop .comment-row-actions{display:flex;gap:12px;align-items:center}.bio-coop button.comment-reply,.bio-coop button.comment-project-link{border:0;background:transparent;color:#246849;padding:5px 2px;text-align:left;font-size:14px}.bio-coop .comment-progress{font-size:13px;color:#527458}.bio-coop .comment-images{gap:10px}.bio-coop .comment-images img{width:auto;max-width:min(170px,100%);max-height:150px;object-fit:contain;border-radius:6px;border:1px solid #cedbd0}.bio-coop .comment-empty{padding:22px 0;color:#667e6a;font-size:16px}.bio-coop .comment-load-more{margin-top:16px;width:100%}
@media(max-width:640px){#bio-coop-dialog[data-screen=project-comments]{width:calc(100vw - 12px);max-height:calc(100dvh - 16px);padding:16px 12px}.bio-coop[data-screen=project-comments]>.toolbar h2{font-size:21px}.bio-coop .project-comment-composer{padding:13px;gap:8px}.bio-coop .project-comment-composer textarea{font-size:16px;min-height:96px}.bio-coop .comment-tools{gap:6px}.bio-coop .comment-tools>button{font-size:14px;padding-inline:8px}.bio-coop .comment-filters{gap:5px}.bio-coop .comment-filters button{padding:7px 10px;font-size:15px}.bio-coop .comment-text{font-size:17px}.bio-coop .comment-reply-target{align-items:flex-start}.bio-coop .comment-reply-target button{min-width:64px;padding-inline:6px}.bio-coop .comment-meta time{font-size:12px}}

.bio-coop .comment-meta .avatar{display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:1;white-space:nowrap;word-break:keep-all;overflow:hidden}

.bio-coop .project-comment-composer>.form-message[data-kind=success]{color:#2f673f;background:#edf6e8;border-color:#c7dec6}

/* Project controls occupy a compact corner, never an extra full-width lesson row. */
.bio-coop.project-member-tools{position:fixed;right:12px;bottom:12px;z-index:85;display:flex;align-items:center;gap:6px;max-width:calc(100vw - 24px);width:max-content}
.bio-coop.project-member-tools .dock{position:static!important;margin:0;min-height:40px;padding:7px 12px;box-shadow:0 2px 10px #102b2424;border-radius:20px;font-size:14px}
.bio-coop.project-member-tools .project-account{display:flex;align-items:center;gap:5px;min-height:40px;padding:7px 10px;border-radius:20px;font-size:14px;background:#fffef7;box-shadow:0 2px 10px #102b2418}
.bio-coop.project-member-tools .project-account .member-icon{width:17px;height:17px}
@media(max-width:600px){.bio-coop.project-member-tools{right:8px;max-width:calc(100vw - 16px)}.bio-coop.project-member-tools :is(.dock,.project-account){min-height:44px}}

.bio-coop.project-member-tools.is-inline{position:static;flex:0 0 auto;z-index:auto;max-width:100%;margin:0;align-self:center}.bio-coop.project-member-tools.is-inline :is(.dock,.project-account){box-shadow:none}

/* Teacher essentials: isolated proportions despite host pages' global toolbar/button styles. */
#bio-coop-dialog .toolbar.row.between{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;grid-template-columns:none!important;flex-wrap:nowrap!important;padding:0 0 16px!important;min-height:0!important;width:100%!important;background:transparent!important}
#bio-coop-dialog .toolbar>div{flex:1;min-width:0}#bio-coop-dialog .toolbar .member-close{width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;padding:0!important;flex:0 0 40px!important;font:24px/1 system-ui!important;border:1px solid #dbe4dd!important;border-radius:50%!important;align-self:flex-start!important;margin:0!important}
#bio-coop-dialog .toolbar h2{font-size:26px!important;line-height:1.3!important;margin:4px 0!important}
#bio-coop-dialog .member-tabs{display:flex!important;gap:6px;padding:5px;background:#eef3ed;border-radius:10px;grid-template-columns:none!important;flex-wrap:nowrap}
#bio-coop-dialog .member-tabs button{width:auto!important;flex:1!important;min-width:0!important;justify-content:center!important;min-height:44px!important;font-size:16px!important;border:0;background:transparent}
#bio-coop-dialog .member-tabs button[aria-current=page]{background:white;box-shadow:0 2px 6px #143d3012}
#bio-coop-dialog .account-core{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
#bio-coop-dialog .account-core .account-menu-item{display:grid;grid-template-columns:28px 1fr 24px;gap:4px 12px;align-items:center;padding:18px!important;min-height:84px!important;width:100%;text-align:left}
#bio-coop-dialog .account-core .account-menu-item>svg{grid-row:1/3;width:24px;height:24px}#bio-coop-dialog .account-core .account-menu-item>strong{font-size:19px!important}#bio-coop-dialog .account-core .account-menu-item>.muted{grid-column:2;font-size:15px!important}#bio-coop-dialog .account-core .menu-arrow{grid-column:3;grid-row:1/3}
#bio-coop-dialog .account-secondary{margin-top:20px;border-top:1px solid #dce5df;padding-top:14px;font-size:15px}#bio-coop-dialog .account-secondary button{margin:10px 8px 0 0;font-size:15px;width:auto}

#bio-coop-dialog[data-screen=account-home]{width:min(560px,calc(100vw - 24px))!important;min-width:0!important;min-height:0!important;padding:26px!important}#bio-coop-dialog[data-screen=account-home] .account-summary{margin:4px 0 18px;padding:12px;font-size:16px}

/* v129: a quiet, readable forum surface. Existing actions and permissions stay intact. */
.coop-page{background:#f6f5ef;color:#253a33;font-family:system-ui,'Microsoft YaHei',sans-serif}
.coop-page>header{max-width:1240px;padding:18px 22px;gap:16px;align-items:center;flex-wrap:wrap}
.coop-page>header>a{color:#536c60;font-size:14px}.coop-page>header>h1{font-size:21px;margin:0;color:#183f31}
.coop-page>main{max-width:1240px;padding:0 22px 28px}
.coop-page #coop-center>section{min-height:0;padding:22px 26px;border:1px solid #dce3dd;border-radius:8px;box-shadow:none;background:#fff}
.coop-page header .member-entry-wrap{margin-left:auto;width:auto;max-width:100%;padding:0}
.coop-page header .member-entry{background:transparent;border:0;color:#294c3b;padding:0;box-shadow:none;display:flex;align-items:center;gap:16px;border-radius:0;margin:0}
.coop-page header .entry-avatar{width:34px;height:34px;border-radius:50%;background:#dfe9dc;box-shadow:none}
.coop-page header .entry-caption strong{color:#253a33;font-size:14px}.coop-page header .entry-caption .entry-role{color:#6a7a6b;font-size:10px}
.coop-page header .entry-actions{border:0;padding:0;margin:0;gap:2px}.coop-page header .entry-actions button{color:#4e675a;min-height:38px;padding:7px!important}.coop-page header .entry-actions button:hover{color:#174a36;background:#eaf0e6}.coop-page header .member-entry>small{display:none}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop){--ink:#253a33;--paper:#fff;--gold:#47745e;color:#253a33;background:#fff;font:16px/1.65 system-ui,'Microsoft YaHei',sans-serif;box-shadow:0 18px 65px #102c2524;border:1px solid #d3dfd5;border-radius:10px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop)>.toolbar{position:static;background:#fff;border-bottom:0;padding:0;margin:0 0 12px;align-items:center;gap:12px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop)>.toolbar h2{font-size:25px;line-height:1.4;color:#203f31;margin:2px 0}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .workspace-kicker{font-size:12px;color:#718074;letter-spacing:0}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) button{background:#fff;color:#315b45;border:1px solid #cddbcf;border-radius:5px;min-height:40px;padding:7px 12px;font-size:15px;line-height:1.45;box-shadow:none}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) button:hover{background:#f0f5ec;border-color:#90ae98}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) button.primary{background:#19533d;color:#fff;border-color:#19533d}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .member-close{width:38px;min-width:38px;min-height:38px;height:38px;border-radius:6px;font-size:24px;padding:0;flex:none;margin-left:auto}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop)>.member-tabs{display:flex;flex-direction:row;border-bottom:1px solid #dce5dc;gap:3px;padding:0 0 8px;margin:0 0 14px;grid-column:1/-1;grid-row:auto}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop)>.member-tabs button{flex:none;flex-direction:row;min-width:90px;border:0;border-radius:4px;background:transparent;color:#65756a;padding:8px 16px;gap:7px;font-size:16px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop)>.member-tabs button[aria-current=page]{background:#e9f1e7;color:#1a543b;font-weight:700;box-shadow:inset 0 -2px #37785b}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop)[data-screen=messages]{display:block}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-lead{font-size:14px;color:#66796c;margin:0 0 10px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-controls{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;padding:0 0 10px;margin:0 0 4px;border-bottom:1px solid #e4eae1}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-filters{display:flex;gap:8px;flex-wrap:wrap}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-filters button{font-size:14px;border:0;min-height:38px;padding:6px 8px;border-radius:3px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-filters button[aria-pressed=true]{background:#edf4e9;color:#234b34;box-shadow:none}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-empty{padding:25px 18px;min-height:0;border:1px dashed #d4dfd0;border-radius:6px;background:#f8faf5;margin:14px 0;text-align:center;color:#627465}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-empty strong{font-size:18px;color:#4c6653}.message-empty p{margin:6px 0 12px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-footnote{font-size:12px;margin:10px 0 0;padding:0;color:#788373}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .notice-project{border:1px solid #e0e7dc;border-radius:6px;overflow:hidden;margin:12px 0}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .notice-project-head{padding:9px 14px;background:#f5f8f1}.notice-project-head h3{font-size:17px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .notice-line{border-top:1px solid #e6ebdf;padding:0 12px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-row{border:0;border-radius:0;background:transparent;padding:14px 0;min-height:0;grid-template-columns:38px minmax(0,1fr) auto;gap:12px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-row-title strong{font-size:17px;line-height:1.6;color:#2d4d39}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-preview{font-size:15px;color:#637366;margin:4px 0;line-height:1.6}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-time{font-size:12px;color:#7b877c}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-project-icon{width:38px;height:38px;background:#eaf0e2;border-radius:7px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-tools{padding:0 0 10px;margin:4px 0 0;gap:8px;border-bottom:1px solid #e3e9df}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-filters button[aria-pressed=true]{background:#e9f1e4;border-color:#96b195;color:#234c35}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment{padding:18px 16px;background:#fff;border:1px solid #dee6d9;border-radius:6px;margin:12px 0;overflow-wrap:anywhere}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment.is-reply{margin-left:28px;border-left:3px solid #a8bfaa;background:#f6f8f2}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-meta{gap:8px 10px;align-items:center;color:#71806f;font-size:14px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-meta .avatar{width:36px;height:36px;border-radius:50%;background:#e5eddc;color:#365d3d;display:grid;place-items:center;font-size:13px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-meta strong{font-size:16px;color:#304d37;font-weight:650}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-meta time{font-size:12px;color:#7b8977}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-text{font-size:18px;line-height:1.75;margin:8px 0 8px 46px;color:#253a2d;max-width:75ch;white-space:pre-wrap}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-project-link{font-size:13px;min-height:28px;padding:3px 8px;margin:4px 0 2px 46px;background:#edf3e6;border:0;color:#4f7450}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-old-title{font-size:17px;margin:6px 0 4px 46px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-context{font-size:14px;color:#697d64;border:0;border-left:2px solid #bacdb5;padding:6px 10px;background:#ecf1e5;margin:8px 0 6px 46px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-row-actions{display:flex;gap:12px;align-items:center;margin:8px 0 0 46px;font-size:13px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-reply{border:0;background:transparent;min-height:30px;padding:3px 0;font-size:14px;font-weight:600}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-progress{padding:2px 7px;border-radius:4px;color:#687762;background:#edf2e8;font-size:12px}
.bio-coop .project-comment[data-status=in_progress] .comment-progress{background:#e7f0f7;color:#3c617f}.bio-coop .project-comment[data-status=resolved] .comment-progress{background:#e8f3e7;color:#397444}.bio-coop .project-comment[data-status=declined] .comment-progress{background:#f4eae2;color:#926449}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-diagnostic{margin:6px 0 6px 46px;font-size:12px;color:#75826f}.comment-diagnostic summary{cursor:pointer}.comment-diagnostic pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.6 monospace;padding:10px;background:#f1f5eb;border-radius:4px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-images{margin:8px 0 4px 46px}.bio-coop .comment-images img{border-radius:5px;border-color:#d2dfc9;max-height:140px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment-composer{background:#f6f8f1;border:1px solid #d7e2ce;border-radius:6px;padding:14px;margin-bottom:16px;gap:8px 14px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment-composer textarea{font-size:17px;min-height:84px;border-radius:5px;border-color:#cfddc4;margin-top:6px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment-composer>label{font-size:16px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-attachments button{font-size:14px;min-height:36px;background:#fff}
@media(max-width:760px){.coop-page>header{padding:12px;gap:8px}.coop-page>header>h1{font-size:18px}.coop-page>main{padding:0 8px 18px}.coop-page header .member-entry-wrap{flex-basis:100%;margin:0}.coop-page header .member-entry{justify-content:space-between;gap:8px}.coop-page header .entry-caption .entry-role{display:none}.coop-page header .entry-actions button{font-size:13px}.coop-page #coop-center>section{padding:16px 12px}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop)>.toolbar h2{font-size:22px}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop)>.member-tabs button{flex:1;min-width:0;padding:8px;font-size:15px}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment{padding:14px 12px;margin:10px 0}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment.is-reply{margin-left:12px}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-text{font-size:17px;margin:8px 0;line-height:1.7}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) :is(.comment-project-link,.comment-old-title,.comment-context,.comment-row-actions,.comment-diagnostic,.comment-images){margin-left:0}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-meta{gap:6px 8px}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-controls{display:block}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-tools{margin-top:8px}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-row{grid-template-columns:32px minmax(0,1fr);gap:8px}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-time{grid-column:2}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-row-title strong{font-size:16px}.bio-coop .message-project-icon{width:32px;height:32px}}


.coop-page,.coop-page .bio-coop,#bio-coop-dialog{font-family:"Noto Sans SC","Microsoft YaHei UI","Microsoft YaHei",sans-serif!important}
.coop-page>header .bio-coop .member-entry.welcome{background:transparent;color:#294c3b;border:0;box-shadow:none;border-radius:0;display:flex;gap:16px;padding:0;margin:0}.coop-page>header .bio-coop .member-entry.welcome .entry-caption strong{color:#294c3b}.coop-page>header .bio-coop .member-entry.welcome .entry-actions{margin:0;padding:0;border:0;display:flex}.coop-page>header .bio-coop .member-entry.welcome .entry-actions button{color:#4e675a}.coop-page>header .bio-coop .member-entry>small{display:none!important}.coop-page>header .bio-coop .entry-caption .entry-role{color:#72806e}.coop-page>main>section{box-shadow:none!important}
@media(max-width:760px){.coop-page>header .bio-coop .member-entry.welcome{gap:8px;justify-content:space-between}.coop-page>header .bio-coop .entry-caption .entry-role{display:none}.coop-page>header .member-entry-wrap{width:100%}}

.coop-page>header .bio-coop .entry-profile{min-width:0;flex:0 1 auto}.coop-page>header .bio-coop .member-entry.welcome{flex-wrap:nowrap!important}.coop-page>header .bio-coop .entry-actions{flex-wrap:nowrap;flex:0 0 auto}.coop-page>header .bio-coop .member-entry.welcome>small,.coop-page>header .bio-coop .entry-beta-note{display:none!important}
@media(max-width:760px){.coop-page>header .bio-coop .entry-actions button{min-width:34px;min-height:40px;padding:7px!important}.coop-page>header .bio-coop .entry-actions button>span:not(.badge){display:none}.coop-page>header .bio-coop .entry-actions .member-icon{width:19px;height:19px}.coop-page>header .bio-coop .member-entry.welcome{display:flex!important}.coop-page>header .bio-coop .entry-caption strong{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

/* Compact discussion stream: identity, content and reply share one reading column. */
.coop-page>header,.coop-page>main{max-width:1120px;margin-left:auto;margin-right:auto}.coop-page #coop-center>section{padding:22px 28px}.coop-page>header{gap:18px;padding-top:18px;padding-bottom:18px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment{display:grid;grid-template-columns:36px minmax(0,1fr);column-gap:12px;row-gap:7px;padding:18px 0;margin:0;border:0;border-bottom:1px solid #e0e7df;border-radius:0;background:transparent}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment>*{grid-column:2;min-width:0}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment>.comment-avatar{grid-column:1;grid-row:1;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#e6eedf;color:#365d3d;font-size:13px;align-self:start;overflow:hidden}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-meta{display:flex;flex-wrap:wrap;gap:5px 10px;min-height:30px;margin:0;line-height:1.5}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-meta .comment-project-link{font-size:12px;min-height:26px;max-width:100%;margin:0 0 0 auto;padding:2px 7px;color:#35614a;border:1px solid #dce7d7;background:#f2f6ed;text-align:left}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment :is(.comment-text,.comment-old-title,.comment-context,.comment-row-actions,.comment-diagnostic,.comment-images){margin:0}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-text{font-size:17px;line-height:1.75;max-width:78ch}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-old-title{font-size:17px;line-height:1.5;font-weight:650}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment.is-reply{margin:0 0 0 48px;padding:14px 16px;background:#f3f6ef;border-left:2px solid #c8d7c2;border-radius:0 5px 5px 0}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-context{padding:6px 10px;border-left:2px solid #bacdb5;font-size:13px;background:#eaf0e4;line-height:1.65}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-row-actions{gap:14px;min-height:28px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-row-actions button{min-height:30px;padding:3px 0;font-size:14px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-badge{padding:1px 5px;font-size:11px;border-radius:3px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-images:empty{display:none}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-empty{padding:28px 18px;min-height:0;border:1px dashed #d5dfd0;border-radius:6px;background:#f8faf5}
@media(max-width:760px){.coop-page #coop-center>section{padding:16px 12px}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment{grid-template-columns:30px minmax(0,1fr);column-gap:9px;padding:15px 0}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment>.comment-avatar{width:30px;height:30px;font-size:11px}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment.is-reply{margin-left:15px;padding:12px 10px}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-meta .comment-project-link{margin-left:0}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-meta time{font-size:11px}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-text{font-size:16px}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-meta strong{font-size:15px}}

.coop-page>header .bio-coop .entry-beta{display:none!important}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-row-actions{flex-wrap:wrap}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-row-actions .comment-diagnostic{margin:0 0 0 auto}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-diagnostic summary{min-height:30px;padding:4px 0;font-size:12px;line-height:22px;font-weight:400}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-row-actions .comment-diagnostic[open]{flex-basis:100%;order:2}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment-composer{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:14px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment-composer>label{flex-basis:100%;order:1}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-reply-target{flex-basis:100%;order:0}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-attachments{flex:1 1 250px;order:2;margin:0}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-options{order:3;margin:0;font-size:13px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-options>summary{min-height:36px;padding:7px 0;font-size:13px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment-composer>button[type=submit]{order:4;margin:0 0 0 auto;min-height:40px;min-width:112px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment-composer>.form-message{order:5;flex-basis:100%;margin:0;font-size:14px;padding:7px 10px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .project-comment-composer>.form-message:empty{display:none}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-options[open]{flex-basis:100%;order:6}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .comment-visibility{flex-basis:100%;order:3;font-size:13px;margin:0}

/* Front member workspace: compact publisher-style navigation and resource rows. */
.coop-page{background:#f7f6ef}.coop-page>header{max-width:none;margin:0;padding:12px max(20px,calc((100vw - 1240px)/2));background:#123e32;color:#f8f7ed;border:0;min-height:64px;gap:20px}.coop-page>header>h1{order:-1;font-size:22px;white-space:nowrap}.coop-page>header>a{font-size:14px;color:#dce9db;text-decoration:none}.coop-page>header .bio-coop .member-entry.welcome .entry-caption strong,.coop-page>header .bio-coop .member-entry.welcome .entry-actions button{color:#f1f5e8}.coop-page>header .bio-coop .entry-caption .entry-role{color:#bdcdbb}.coop-page>main{max-width:1240px;margin:18px auto;padding:0 20px 24px}.coop-page #coop-center>section{padding:18px 22px;border-radius:8px;background:#fffefb;border-color:#d8dfd3;box-shadow:none!important}
:is(#bio-coop-dialog[open],.coop-page #coop-center>.bio-coop)[data-screen=favorites],:is(#bio-coop-dialog[open],.coop-page #coop-center>.bio-coop)[data-screen=messages]{display:block;min-height:0}
#bio-coop-dialog:is([data-screen=favorites],[data-screen=messages]){width:min(1080px,calc(100vw - 24px));padding:20px 24px;max-height:calc(100dvh - 24px);overflow-y:auto;background:#fffefb}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop)>.toolbar{margin-bottom:10px}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop)>.toolbar h2{font-size:24px;line-height:1.35;margin:2px 0}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .workspace-kicker{font-size:11px;color:#6f7c6d}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop)>.member-tabs{display:flex;flex-direction:row;gap:4px;align-items:center;margin:0 0 12px;padding:0 0 8px;border-bottom:1px solid #d7dfd1}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop)>.member-tabs button{min-width:100px;min-height:40px;justify-content:center;padding:8px 16px;font-size:16px;border-radius:5px;background:transparent;color:#546657;border:0;box-shadow:none}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop)>.member-tabs button[aria-current=page]{background:#173f30;color:#fff;font-weight:650}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-lead{font-size:14px;margin:0 0 10px;line-height:1.5;color:#637361}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .saved-tools{display:flex;gap:12px;margin:0 0 10px;align-items:center}.bio-coop .saved-tools input{min-height:40px;padding:8px 12px;font-size:15px;max-width:420px;border-radius:5px;background:white;border:1px solid #cdd8c8}.bio-coop .saved-count{font-size:13px;color:#62735e}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .saved-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .favorite-card{display:grid;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:12px;padding:10px;border:1px solid #dfe5d8;border-radius:6px;background:#fff;box-shadow:none;min-height:110px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .favorite-card:hover{border-color:#99b18d;background:#fbfcf7}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .saved-preview{width:88px;height:82px;aspect-ratio:auto;border-radius:4px;align-self:center}.bio-coop .saved-preview img{object-fit:cover}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .saved-title{font-size:17px;font-weight:650;line-height:1.45;color:#203f2f}.bio-coop .saved-meta{font-size:12px;margin:3px 0;color:#6c7b67}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .saved-actions{display:flex;gap:8px;justify-content:space-between;align-items:center;margin-top:4px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .saved-launch{min-height:32px;font-size:14px;font-weight:650;padding:3px 0;color:#245a3b}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .saved-remove{width:32px;min-height:32px;height:32px;padding:6px;border:0;background:#eff3e8;color:#7b792e;border-radius:4px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) :is(.saved-empty,.message-empty){grid-column:1/-1;min-height:0;padding:24px 18px;background:#f6f8f0;border:1px dashed #cedac5;border-radius:6px;text-align:center}.bio-coop .saved-empty h3{margin:8px 0;font-size:19px}.bio-coop .saved-empty p{font-size:15px;line-height:1.6}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-controls{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:0 0 8px;padding:0 0 8px}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-filters{display:flex;gap:4px;flex-wrap:wrap}.bio-coop .message-filters button{font-size:14px!important;min-height:34px!important;padding:5px 10px!important;border-radius:4px!important;box-shadow:none!important}.bio-coop .message-filters button[aria-pressed=true]{background:#eaf0df!important;color:#2c573d!important}.bio-coop .message-tools{display:flex;gap:7px}.bio-coop .message-tools button{font-size:13px!important;min-height:34px!important;padding:6px 10px!important}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .notice-project{border:1px solid #dce4d5;border-radius:6px;margin:0 0 10px;overflow:hidden;background:#fff}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .notice-project-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:7px 12px;background:#f2f5eb;border:0}.bio-coop .notice-project-head h3{font-size:15px;margin:0;line-height:1.4}.bio-coop .notice-project-head button{font-size:12px;min-height:28px;padding:3px 7px;border:0;background:transparent}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .notice-line{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;padding:0 10px;border-top:1px solid #e7ece2}.bio-coop .notice-line.is-unread{background:#fafcf5}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:10px;padding:10px 2px;border:0;border-radius:0;min-height:68px;box-shadow:none;text-align:left;background:transparent}.bio-coop .message-row-content{min-width:0}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-project-icon{width:36px;height:36px;border-radius:5px}.bio-coop .message-row-title strong{font-size:16px!important;line-height:1.45!important}.bio-coop .message-preview{font-size:14px!important;line-height:1.5!important;margin:3px 0 0!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.bio-coop .message-time{font-size:12px!important;color:#6f7c6c}.bio-coop .notice-read{min-height:32px!important;padding:4px 8px!important;font-size:12px!important}.bio-coop .message-footnote{font-size:12px!important;padding:4px 0!important;margin:5px 0!important}
:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop)[data-screen=auth]{max-width:490px;padding:24px;background:#fffefb;border-radius:9px}.coop-page #coop-center>[data-screen=auth]{margin:32px auto}
.bio-coop[data-screen=auth]>.auth-intro p{font-size:15px;line-height:1.6;margin:5px 0}.bio-coop[data-screen=auth]>.beta-notice{display:flex;align-items:start;gap:8px;padding:8px 10px;margin:12px 0;border:0;border-left:3px solid #a7bc7d;border-radius:0;background:#f0f4e7}.bio-coop[data-screen=auth]>.beta-notice p{font-size:12px;line-height:1.5;margin:0}.bio-coop[data-screen=auth] .beta-badge{font-size:11px;white-space:nowrap}.bio-coop[data-screen=auth]>form{padding:0;margin:12px 0}.bio-coop[data-screen=auth]>form>label:not(.check){display:block;font-size:15px;font-weight:600;margin:10px 0}.bio-coop[data-screen=auth]>form>label>input:not([type=checkbox]){min-height:44px;font-size:17px;border:1px solid #c2cfbb;border-radius:5px;background:#fff;padding:9px 11px}.bio-coop[data-screen=auth] .check{font-size:13px;line-height:1.6}.bio-coop[data-screen=auth]>form>button[type=submit]{width:100%;min-height:44px;font-size:17px;border-radius:5px}.bio-coop[data-screen=auth] .auth-links{gap:14px}.bio-coop[data-screen=auth] .auth-links button{border:0;padding:4px 0;font-size:14px;min-height:32px}.bio-coop[data-screen=auth] .auth-note{font-size:12px;line-height:1.6;margin:8px 0;color:#6a7964}
@media(max-width:650px){.coop-page>header{padding:12px;gap:8px}.coop-page>header>h1{font-size:19px}.coop-page>header>a{font-size:12px}.coop-page>main{margin:10px auto;padding:0 8px 16px}.coop-page #coop-center>section{padding:14px 12px}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop)>.member-tabs button{min-width:0;flex:1;padding:7px 10px}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .saved-grid{grid-template-columns:1fr}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .saved-tools{gap:7px}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .favorite-card{grid-template-columns:72px minmax(0,1fr);min-height:100px;padding:9px;gap:10px}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .saved-preview{width:72px;height:72px}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .saved-title{font-size:16px}#bio-coop-dialog:is([data-screen=favorites],[data-screen=messages]){padding:16px 12px}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-row{grid-template-columns:28px minmax(0,1fr)}:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) .message-row .message-time{grid-column:2}.bio-coop .message-row .message-project-icon{width:28px;height:28px}.bio-coop .notice-read{font-size:11px!important;padding:4px!important}.bio-coop .notice-project-head{flex-wrap:wrap}.bio-coop .message-tools{margin:0}}
@media(pointer:coarse){:is(#bio-coop-dialog,.coop-page #coop-center>.bio-coop) :is(.saved-launch,.saved-remove,.notice-read){min-height:44px!important}}
.coop-page>header>h1{color:#f4f7ed}.coop-page>header .bio-coop .member-entry.guest{background:transparent;border:0;color:#e0e9d9}.coop-page>header .bio-coop .guest>.entry-caption{display:none}.coop-page>header .bio-coop .guest .entry-login{margin:0}
