/* Scoped exclusively to the unified Crew workspace; no Chart Room selectors. */
#portal.v020-active #crew.crew-v020-unified{max-width:1500px;padding:20px 0;margin:0 auto;border:0;border-radius:0;background:transparent}
#crew.crew-v020-unified>:not(#crew-v020-layout){display:none!important}
#crew-v020-layout{display:grid;grid-template-columns:205px minmax(0,1fr) 265px;gap:20px;align-items:start;color:#dce9f0}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) [hidden]{display:none!important}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) h2,:is(#crew-v020-layout,#cv-manifest,#cv-discussions) h3,:is(#crew-v020-layout,#cv-manifest,#cv-discussions) h4{font-family:Georgia,'Times New Roman',serif;text-align:left;margin:0}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) h2{font-size:30px;line-height:1.2}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) h3{font-size:22px}:is(#crew-v020-layout,#cv-manifest,#cv-discussions) h4{font-size:17px}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) p{line-height:1.55;overflow-wrap:anywhere}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .meta,:is(#crew-v020-layout,#cv-manifest,#cv-discussions) small{color:#a9c2d0;font-size:12px}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) button,:is(#crew-v020-layout,#cv-manifest,#cv-discussions) input,:is(#crew-v020-layout,#cv-manifest,#cv-discussions) select,:is(#crew-v020-layout,#cv-manifest,#cv-discussions) textarea{font-size:13px;box-sizing:border-box}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) button{min-height:36px;border-radius:6px;padding:8px 11px}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) button[aria-pressed=true]{color:#9ae7ff;border-color:#67c7e5;background:#163c4f}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .cv-avatar{width:38px;height:38px;min-width:38px;border-radius:50%;object-fit:cover;display:inline-flex;align-items:center;justify-content:center;background:#183747;color:#d9f4ff}
#cv-manifest{display:block;min-width:0;position:sticky;top:12px;max-height:calc(100vh - 35px);overflow-y:auto}
#cv-manifest>h3,#cv-discussions>h3{font:11px -apple-system,BlinkMacSystemFont,sans-serif;letter-spacing:1.3px;color:#a0bdcd;margin:0 0 14px}
#cv-manifest>button{display:flex;align-items:center;gap:10px;text-align:left;width:100%;border:1px solid transparent;background:transparent;margin:0 0 7px;padding:10px 8px}
#cv-manifest>button[aria-current=true]{border-color:#67c7e5;background:#143747;box-shadow:inset 3px 0 #6dd9f5}
#cv-manifest strong,#cv-manifest small{display:block}#cv-manifest strong{font:15px Georgia,serif;overflow-wrap:anywhere}#cv-manifest small{margin-top:5px}
#cv-center{padding:0;min-width:0;overflow:visible}
.cv-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.cv-heading input{width:40%;min-width:190px;max-width:330px;margin:0;background:#112936}
#cv-tabs{display:flex;gap:10px;border-bottom:1px solid #2d4656;margin:16px 0 12px;flex-wrap:wrap}
#cv-tabs button{border:0;background:transparent;border-radius:0;color:#b5cddc;padding:10px 13px}
#cv-tabs button[aria-pressed=true]{background:transparent;box-shadow:inset 0 -3px #72d5f4}
#cv-status:empty{display:none}#cv-status{font-size:13px;color:#9cdcf0}
#cv-member,#cv-invitations{border:1px solid #2d4656;border-radius:9px;background:#10212c;padding:20px}
.cv-member-heading{display:flex;align-items:center;gap:14px;border-bottom:1px solid #2d4656;padding-bottom:18px;margin-bottom:18px}
.cv-member-heading>.cv-avatar{width:54px;height:54px}.cv-member-heading p{margin:4px 0}.cv-state{margin-left:auto;font-size:12px;border:1px solid #38705d;border-radius:20px;padding:4px 10px;color:#9ce5b5}
.cv-profile dl{display:grid;grid-template-columns:125px minmax(0,1fr);gap:10px;font-size:13px;line-height:1.5}
.cv-profile dt{color:#a9c2d0}.cv-profile dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.cv-permissions{margin-top:20px;border-top:1px solid #2d4656;padding-top:18px}
.cv-section-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .permission-row{display:flex;flex-direction:column;align-items:stretch;background:transparent;border:0;padding:0;margin:0;gap:14px;min-width:0}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .permission-row>div:first-child{display:none}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .permission-row>label{max-width:340px}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .permission-row>details{background:#0b1821;padding:12px;border:1px solid #2d4656;border-radius:7px;margin:0}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .permission-row>details[open]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .permission-row>details>summary,:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .permission-row>details>small{grid-column:1/-1}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .permission-row fieldset{display:grid;grid-template-columns:minmax(0,1fr);border:1px solid #2d4656;gap:9px;padding:12px;margin:0;min-width:0}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .permission-row label{font-size:13px;margin:0!important}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .permission-row .capability-choice{display:flex;align-items:flex-start;gap:8px;line-height:1.4}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) input[type=checkbox]{width:16px;height:16px;min-width:16px;accent-color:#72d5f4;margin:1px 0 0}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .permission-row>button{align-self:flex-end;background:#185168;color:#e9faff}
.cv-history{border-top:1px solid #2d4656;margin-top:20px;padding-top:12px}.cv-history section{padding:10px 0;border-bottom:1px solid #2d4656;font-size:12px}.cv-history p{margin:5px 0}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .cv-revoke{display:block;margin:14px 0 0 auto;color:#ecb6af;background:transparent;border-color:transparent}
#cv-discussions{position:sticky;top:12px;max-height:calc(100vh - 35px);overflow-y:auto;background:#10212c;border:1px solid #2d4656;border-radius:9px;padding:16px}
#cv-discussions nav{display:flex;gap:5px;flex-wrap:wrap;margin:15px 0}#cv-discussions nav button{padding:6px 9px;min-height:32px}
#cv-discussions article{padding:17px 0;border-top:1px solid #2d4656}#cv-discussions article h4{margin-top:10px}#cv-discussions article p{font-size:13px;white-space:pre-wrap}
#cv-discussions article>button{border:0;background:transparent;color:#79d7f1;padding:4px 0;font-size:12px}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) #crew-requests-admin>h3{display:none}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) #crew-requests-admin .inquiry-workspace{display:block}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) #crew-request-list{display:flex;gap:8px;overflow-x:auto;padding:12px 0;margin-bottom:12px}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) #crew-request-list>.inquiry-list-item{min-width:210px;max-width:280px;flex-shrink:0;font-size:12px;text-align:left}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) #crew-request-detail{padding:18px;border:1px solid #2d4656;background:#10212c;border-radius:8px}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) #crew-request-detail:empty{display:none}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) #crew-request-filters{display:flex;gap:6px;flex-wrap:wrap}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) #captain-tools form{max-width:none}
@media(max-width:1200px){#crew-v020-layout{grid-template-columns:170px minmax(0,1fr) 235px;gap:16px}.cv-heading input{width:100%;max-width:none}}
@media(max-width:1000px){#crew-v020-layout{grid-template-columns:155px minmax(0,1fr)}#cv-discussions{position:static;grid-column:2;max-height:500px}.cv-profile dl{grid-template-columns:100px minmax(0,1fr)}}
@media(max-width:650px){#portal.v020-active #crew.crew-v020-unified{padding:14px 0}#crew-v020-layout{display:block}#cv-manifest{position:static;max-height:220px;margin-bottom:20px}#cv-manifest>button{display:inline-flex;width:auto;margin-right:6px}#cv-manifest>h3{display:block}#cv-discussions{margin-top:18px}.cv-heading input{width:100%;min-width:0}#cv-member,#cv-invitations{padding:14px}:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .permission-row>details[open]{grid-template-columns:minmax(0,1fr)}}

:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .permission-row>details>fieldset{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .cv-rights-group{padding:10px;border:1px solid #2d4656;border-radius:5px;font-size:12px;min-width:0}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .cv-rights-group fieldset{margin-top:10px;border:0;padding:0}
@media(max-width:650px){:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .permission-row>details>fieldset{grid-template-columns:minmax(0,1fr)}}

:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .permission-row>details,:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .permission-row>details[open]{display:block;width:100%;max-width:none;box-sizing:border-box}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .cv-rights-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .cv-rights-body>fieldset,:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .cv-rights-body>small{grid-column:1/-1;width:100%;box-sizing:border-box}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .cv-rights-body>fieldset{grid-template-columns:repeat(2,minmax(0,1fr))}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .cv-rights-group{max-width:none;width:100%;box-sizing:border-box}
:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .cv-rights-group fieldset{grid-template-columns:minmax(0,1fr);width:100%;box-sizing:border-box}
@media(max-width:650px){:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .cv-rights-body,:is(#crew-v020-layout,#cv-manifest,#cv-discussions) .cv-rights-body>fieldset{grid-template-columns:minmax(0,1fr)}}

/* Crew occupies the authoritative shared frame, rather than nesting a second grid. */
#portal.crew-framed #crew-v020-layout{display:block}
#portal.crew-framed #cv-manifest{position:static;max-height:calc(100dvh - 250px);width:100%;min-width:0}
#portal.crew-framed #cv-center{min-width:0;width:100%}
#portal.crew-framed #cv-discussions{border:0;padding:0;margin:0;background:transparent;min-width:0}
#portal.crew-framed #cv-center h2{font:600 31px/1.15 Georgia,serif;letter-spacing:.2px}
#portal.crew-framed #cv-discussions h4{font:600 18px/1.3 Georgia,serif}
#portal.crew-framed #cv-manifest>h3,#portal.crew-framed #cv-discussions>h3{font:400 11px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:1.2px;color:#9bbfd2}
#portal.crew-framed #cv-manifest>button{display:flex;flex-direction:row;min-width:0;width:100%;box-sizing:border-box}
#portal.crew-framed #cv-manifest>button>div{min-width:0;overflow-wrap:anywhere}
@media(max-width:760px){
 #portal.crew-framed.v020-active.v020-workspace>.portal-layout>.v020-context-left,
 #portal.crew-framed.v020-active.v020-workspace>.portal-layout>.v020-context-right{display:block!important;position:static;margin:0 0 16px}
 #portal.crew-framed #cv-manifest{max-height:220px}
 #portal.crew-framed #cv-center h2{font-size:26px}
}

/* Workspace-level views belong in the shared left rail, above member selection. */
#cv-manifest #cv-tabs{display:flex;flex-direction:column;gap:6px;margin:0 0 20px;padding:0 0 16px;border-bottom:1px solid #2d4656}
#cv-manifest #cv-tabs button{width:100%;min-height:44px;text-align:left;padding:10px 12px;border:1px solid transparent;border-radius:6px;background:transparent;box-shadow:none;font-size:13px}
#cv-manifest #cv-tabs button[aria-pressed=true]{background:#193b4d;border-color:#558ba3;box-shadow:inset 3px 0 #72d5f4;color:#e0f5ff}
#cv-manifest #cv-tabs button:hover{background:#142e3d}

/* Access to top-level workspaces precedes detailed action permissions. */
#cv-member .cv-tab-access{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border:1px solid #34566b;border-radius:7px;padding:16px;background:#0d202c}
#cv-member .cv-tab-access legend{font:600 16px/1.4 Georgia,serif;color:#e0edf4;padding:0 5px}
#cv-member .cv-tab-access>small{grid-column:1/-1}
@media(max-width:650px){#cv-member .cv-tab-access{grid-template-columns:minmax(0,1fr)}}

.cv-member-heading .cv-state{white-space:nowrap;flex-shrink:0}
.cv-member-heading .cv-state[data-status=revoked]{color:#f0b7af;border-color:#8a554f}

.cv-member-badges{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-left:auto}
.cv-member-badges .cv-state{margin-left:0}
.cv-position{font-size:12px;line-height:1.4;border:1px solid #527a97;border-radius:20px;padding:4px 10px;color:#b7d9f2;background:#142c3c;white-space:nowrap}
@media(max-width:650px){.cv-member-heading{flex-wrap:wrap}.cv-member-badges{gap:6px}}

.cv-position-section{margin-top:20px;border-top:1px solid #2d4656;padding-top:18px}
.cv-position-section form{display:flex;gap:12px;align-items:end;flex-wrap:wrap}
.cv-position-section label{display:flex;flex-direction:column;gap:8px;flex:1;max-width:340px;font-size:13px}
.cv-position-section form>p{flex-basis:100%;margin:0}
.cv-position-section button{min-height:44px}

/* Compact position assignment; align control and action on one baseline. */
#cv-member .cv-position-section{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:16px;padding:18px 0;margin-top:20px}
#cv-member .cv-position-section>h3{font:600 18px/1.4 Georgia,serif;margin:0}
#cv-member .cv-position-section form{display:grid;grid-template-columns:minmax(140px,340px) auto;align-items:center;gap:10px;margin:0;max-width:480px}
#cv-member .cv-position-section label{display:block;margin:0!important;max-width:none}
#cv-member .cv-position-section select,#cv-member .cv-position-section button{height:44px;min-height:44px;margin:0;box-sizing:border-box}
#cv-member .cv-position-section select{width:100%}
#cv-member .cv-position-section form>p{grid-column:1/-1;margin:0;font-size:12px}
#cv-member .cv-position-section form>p:empty{display:none}
:is(#cv-member,#cv-discussions) select{appearance:none;-webkit-appearance:none;padding-right:42px;background-image:linear-gradient(45deg,transparent 50%,#b5cddc 50%),linear-gradient(135deg,#b5cddc 50%,transparent 50%);background-repeat:no-repeat;background-position:right 20px center,right 15px center;background-size:5px 5px,5px 5px}
@media(max-width:650px){#cv-member .cv-position-section{grid-template-columns:minmax(0,1fr);gap:10px}#cv-member .cv-position-section form{grid-template-columns:minmax(0,1fr) auto;max-width:none}}

/* Member profile and tab access in center; detailed grants in right rail. */
#cv-discussions .permission-row{display:flex;flex-direction:column;gap:14px}
#cv-discussions .permission-row>label{display:flex;flex-direction:column;gap:7px;max-width:none}
#cv-discussions .permission-row select{width:100%;min-height:44px}
#cv-discussions .cv-rights-body{display:flex;flex-direction:column;gap:10px}
#cv-discussions .cv-rights-body>fieldset,#cv-discussions .cv-rights-group fieldset{display:flex;flex-direction:column;gap:10px}
#cv-discussions .permission-row>details{padding:10px}
#cv-discussions .permission-row>details>summary{font-size:13px}
#cv-discussions .permission-row>button{width:100%;min-height:44px}
#cv-discussions .cv-participation{border-top:1px solid #2d4656;margin-top:20px;padding-top:16px;font-size:13px}
#cv-discussions .cv-participation>div{margin-top:16px}
#cv-member .cv-permissions .cv-tab-access{max-width:none;margin:12px 0 0}

/* Position actions share one line; revocation is the trailing destructive action. */
#cv-member .cv-position-section{grid-template-columns:150px minmax(0,1fr) auto}
#cv-member .cv-position-section .cv-revoke{margin:0 0 0 8px;min-height:44px;padding:10px 14px;border:1px solid #a64949;border-radius:7px;background:#752e35;color:#fff1ef;white-space:nowrap;font-size:12px}
#cv-member .cv-position-section .cv-revoke:hover{background:#913c43;border-color:#db7777}
@media(max-width:1000px){#cv-member .cv-position-section{grid-template-columns:minmax(0,1fr) auto}#cv-member .cv-position-section>h3{grid-column:1/-1}#cv-member .cv-position-section form{grid-template-columns:minmax(100px,1fr) auto}}
@media(max-width:650px){#cv-member .cv-position-section{grid-template-columns:minmax(0,1fr)}#cv-member .cv-position-section .cv-revoke{justify-self:end;margin:0}}

/* Flat permission groups: one rail, headings and separators, no nested boxes. */
#cv-discussions .cv-flat-rights{display:flex;flex-direction:column;gap:0}
#cv-discussions .cv-access-group{display:flex;flex-direction:column;gap:11px;border:0;border-top:1px solid #2d4656;border-radius:0;background:none;padding:16px 0;margin:0}
#cv-discussions .cv-access-group h4{font:600 14px/1.4 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;margin:0 0 2px;color:#b5dbea}
#cv-discussions .cv-access-group label{display:flex;align-items:flex-start;gap:8px;line-height:1.45;font-size:13px;margin:0}
#cv-discussions .cv-access-group input{flex:0 0 16px;margin-top:2px}

/* Right rail is an unboxed detail list; participation belongs with center data. */
#portal.crew-framed .v020-context-right:has(#cv-discussions){background:transparent;border:0;border-radius:0;box-shadow:none}
#portal.crew-framed #cv-discussions{background:transparent;border:0;border-radius:0;box-shadow:none}
#cv-center .cv-participation{border-top:1px solid #2d4656;padding:18px 0;margin:20px 0 0;font-size:14px}
#cv-center .cv-participation>div{padding-top:14px}
#cv-center .cv-participation h3{display:none}
#cv-center .cv-participation nav{display:flex;gap:6px;margin-bottom:14px}
#cv-center .cv-participation article{border-top:1px solid #2d4656;padding:14px 0}
#cv-center .cv-participation article p{font-size:13px;line-height:1.5;white-space:pre-wrap}
