/* Circle Metro account and profile surfaces. Scrolling remains native. */
.jc-account { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:32px; max-width:1080px!important; margin:0 auto!important; align-items:start; }
.jc-account-story { background:var(--cm-color-tile); color:var(--cm-color-on-tile); padding:40px; border-radius:var(--cm-radius-tile); min-height:480px; display:flex; flex-direction:column; align-items:flex-start; }
.jc-account-story>.jc-icon { width:48px; height:48px; margin-bottom:48px; }
.jc-account-story h2 { color:inherit; font-size:clamp(36px,4vw,56px); line-height:1.05; font-weight:400; letter-spacing:-.045em; margin:0 0 24px; }
.jc-account-story p { color:inherit; }.jc-account-story a { color:inherit; margin-top:24px; min-height:48px; display:inline-flex; align-items:center; gap:8px; }
.jc-account .jc-account-card { padding:32px; background:var(--cm-color-surface); border:1px solid var(--cm-color-outline); border-radius:var(--cm-radius-card); }
.jc-account h1 { font-size:clamp(30px,3vw,40px); font-weight:400; line-height:1.1; letter-spacing:-.04em; margin:24px 0 12px; }
.jc-account-card>p { color:var(--cm-color-text-secondary); margin:0 0 24px; }
.jc-account-tabs { display:grid; grid-template-columns:1fr 1fr; gap:8px; border-bottom:1px solid var(--cm-color-outline); padding-bottom:16px; }
.jc-account-tabs a { padding:12px 8px; min-height:48px; text-align:center; color:var(--cm-color-text-secondary); border-radius:var(--cm-radius-control); text-decoration:none; }
.jc-account-tabs a.active { background:var(--cm-color-accent-soft); color:var(--cm-color-accent-text); }
.jc-account fieldset,.jc-profile fieldset { border:0; padding:0; margin:0; min-width:0; }
:is(.jc-account,.jc-profile) label:not(.jc-account-terms):not(.jc-file-picker) { display:block; margin:18px 0 8px; font-size:14px; font-weight:500; }
:is(.jc-account,.jc-profile) input:not([type=checkbox]),.jc-profile select { width:100%; }
.jc-account-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.jc-password-field { display:flex; gap:8px; align-items:stretch; }.jc-password-field input { flex:1; min-width:0; }.jc-password-field button { flex-shrink:0; padding:10px 14px!important; }
.jc-account small,.jc-profile small { display:block; margin-top:8px; color:var(--cm-color-text-secondary); font-size:13px; }
:is(.jc-account,.jc-profile) .jc-account-terms { display:flex; align-items:flex-start; gap:12px; margin:20px 0; font-size:14px; line-height:1.6; min-height:48px; }
.jc-account-terms input { margin-top:2px; }.jc-account-submit { width:100%; display:flex; justify-content:space-between; align-items:center; gap:16px; margin:24px 0; }
.jc-account-primary { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:48px; padding:12px 20px; background:var(--cm-color-accent); color:var(--cm-color-on-accent)!important; border:1px solid transparent; border-radius:var(--cm-radius-control); text-decoration:none; }
.jc-account-success { border:1px solid var(--cm-color-positive); padding:16px; border-radius:var(--cm-radius-control); }
:is(.jc-account,.jc-profile) .validation-message { color:var(--cm-color-critical); font-size:14px; margin-top:8px; }
:is(.jc-account,.jc-profile) input.invalid { border-color:var(--cm-color-critical); }
.jc-profile-grid { display:grid; grid-template-columns:280px minmax(0,1fr); gap:24px; align-items:start; }
.jc-profile-sidebar,.jc-profile-main { display:flex; flex-direction:column; gap:20px; }.jc-profile-main form fieldset { display:flex; flex-direction:column; gap:20px; }
.jc-profile-panel { background:var(--cm-color-surface); border:1px solid var(--cm-color-outline); padding:24px; border-radius:var(--cm-radius-card); }
.jc-profile-panel h2 { margin:0 0 12px; }.jc-profile-panel p { color:var(--cm-color-text-secondary); line-height:1.6; }.jc-profile-panel :is(p,h2) { overflow-wrap:anywhere; }
.jc-profile-identity { text-align:center; }.jc-profile-avatar { width:88px; height:88px; background:var(--cm-color-tile); color:var(--cm-color-on-tile); display:grid; place-items:center; font-size:32px; border-radius:var(--cm-radius-tile); overflow:hidden; margin:0 auto 20px; }.jc-profile-avatar img { width:100%; height:100%; object-fit:cover; }
.jc-profile progress { width:100%; height:10px; accent-color:var(--cm-color-accent); }
.jc-file-picker { display:flex; position:relative; align-items:center; justify-content:center; cursor:pointer; min-height:48px; padding:12px 16px; border:1px solid var(--cm-color-outline-strong); border-radius:var(--cm-radius-control); margin-top:16px; overflow:hidden; color:var(--cm-color-text-primary); background:var(--cm-color-surface); }
.jc-file-picker input { position:absolute; inset:0; opacity:0; cursor:pointer; width:100%; height:100%; }.jc-file-picker:focus-within { outline:3px solid var(--cm-color-accent-text); outline-offset:3px; }
.jc-profile-save { display:flex; justify-content:flex-end; gap:12px; flex-wrap:wrap; }.jc-profile-main>section textarea { margin-bottom:16px; }
.jc-profile input[readonly] { background:var(--cm-color-surface-raised); color:var(--cm-color-text-secondary); }
@media(max-width:760px) { .jc-account { display:block; }.jc-account-story { display:none; }.jc-account .jc-account-card { padding:24px; }.jc-profile-grid { grid-template-columns:1fr; }.jc-profile-sidebar { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }.jc-profile-identity { grid-column:1/-1; display:grid; grid-template-columns:72px minmax(0,1fr); text-align:left; gap:0 16px; }.jc-profile-avatar { width:72px; height:72px; grid-row:span 3; margin:0; }.jc-profile-identity .jc-file-picker,.jc-profile-identity small,.jc-profile-identity .form-error { grid-column:1/-1; }.jc-profile-identity p { margin:4px 0; }.jc-profile .page-header .jc-eyebrow { display:none; } }
@media(max-width:480px) { .jc-account .jc-account-card { padding:20px; }.jc-account-row { grid-template-columns:1fr; gap:0; }.jc-profile-sidebar { display:flex; }.jc-profile-panel { padding:20px; }.jc-profile-save { display:grid; grid-template-columns:1fr 1fr; }.jc-account h1 { font-size:30px; } }

@media(max-width:760px) {
 .jc-profile-grid { display:flex; flex-direction:column; align-items:stretch; }
 .jc-profile-sidebar { display:contents; }
 .jc-profile-sidebar>.jc-profile-panel { order:2; }
 .jc-profile-sidebar>.jc-profile-identity { order:0; }
 .jc-profile-main { order:1; }
 .jc-profile .jc-workspace-nav { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:4px; }
 .jc-profile .jc-workspace-nav a { padding:8px 4px; font-size:13px; }
}

:is(.jc-account,.jc-profile) .validation-summary-errors { color:var(--cm-color-critical); padding:12px; border:1px solid var(--cm-color-critical); border-radius:var(--cm-radius-control); }
.jc-profile-feedback:empty { display:none; }
