/* LustWire 1.22 social profiles. Counts reflect only the current public view. */
.profile-dialog {
  --profile-ink:#27212d; --profile-muted:#68606e; --profile-line:#ddd6dc;
  --profile-paper:#f3f1ed; --profile-accent:#75405b;
  width:1080px; max-width:calc(100vw - 64px); padding:0; color:var(--profile-ink);
  background:var(--profile-paper); border:1px solid #d1c6d0; border-radius:var(--radius-lg,14px);
  box-shadow:0 30px 110px #1715205c; font-family:var(--sans,'DM Sans',sans-serif);
}
.profile-dialog>.dialog-close { position:sticky; display:grid; top:16px; right:16px; width:44px; height:44px; margin:16px 16px -60px auto; background:#fff; color:var(--profile-ink); border:1px solid #ffffffa6; box-shadow:0 3px 15px #1813191f; z-index:4; }
.profile-dialog>.dialog-close:hover { background:#f5f3f1; }
.profile-dialog .social-profile-cover { position:relative; height:300px; min-height:200px; overflow:hidden; background:#282932; }
.profile-dialog .social-profile-cover>img { position:absolute; top:0; right:0; width:57%; height:100%; object-fit:cover; display:block; }
.profile-dialog .social-profile-cover-custom>img { width:100%; }
.profile-dialog .social-profile-cover-custom .social-profile-cover-monogram { display:none; }
.profile-dialog .social-profile-cover-label { position:absolute; bottom:20px; right:28px; color:#fff; background:#24212cdb; border:1px solid #ffffff24; padding:7px 10px; font-size:11px; font-weight:500; letter-spacing:.25px; border-radius:4px; }
.profile-dialog .social-profile-cover-monogram { position:absolute; inset:0 auto 0 0; width:43%; display:grid; place-items:center; font:400 clamp(106px,12vw,158px)/1 var(--serif,'Instrument Serif',serif); letter-spacing:-5px; color:#d6b1c057; }
.profile-dialog .social-profile-body { padding:0 32px 28px; }
.profile-dialog .social-profile-identity { position:relative; display:grid; grid-template-columns:148px minmax(0,1fr); column-gap:25px; align-items:start; padding:0 32px 22px; margin-inline:-32px; background:#fff; }
.profile-dialog .social-profile-avatar { position:relative; width:148px; height:148px; margin-top:-51px; display:block; border:5px solid #fff; border-radius:50%; overflow:hidden; background:#dfd5dc; box-shadow:0 0 0 1px #27212d0c,0 5px 15px #27212d12; }
.profile-dialog .social-profile-initials { position:absolute; inset:0; display:grid; place-items:center; font:500 36px/1 var(--sans,'DM Sans',sans-serif); color:#713b53; }
.profile-dialog .social-profile-avatar>img,.profile-dialog .social-profile-small-avatar>img { position:relative; width:100%; height:100%; display:block; object-fit:cover; }
.profile-dialog .social-profile-identity-copy { padding-top:21px; min-width:0; }
.profile-dialog .social-profile-kind { display:block; font-size:11px; font-weight:600; color:var(--profile-accent); letter-spacing:.9px; text-transform:uppercase; }
.profile-dialog .social-profile-name { margin:7px 0 3px; color:var(--profile-ink); font:600 clamp(27px,3vw,36px)/1.15 var(--sans,'DM Sans',sans-serif); letter-spacing:-1.1px; overflow-wrap:anywhere; }
.profile-dialog .social-profile-handle { margin:0; color:var(--profile-muted); font-size:13px; overflow-wrap:anywhere; }
.profile-dialog .social-profile-summary { max-width:650px; margin:12px 0 0; font-size:14px; line-height:1.8; color:#5a4e5c; overflow-wrap:anywhere; white-space:pre-wrap; }
.profile-dialog .social-profile-actions { grid-column:2; margin:18px 0 0; padding-top:15px; border-top:1px solid #ece4eb; display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.profile-dialog .social-profile-actions>.button { padding:11px 17px; font-size:13px; font-weight:600; min-height:44px; border-radius:var(--radius-sm,6px); box-shadow:none; }
.profile-dialog .social-profile-actions>.button-primary { background:var(--profile-accent); border:1px solid var(--profile-accent); color:#fff; }
.profile-dialog .social-profile-actions>.button-primary:hover { background:#5c2c41; }
.profile-dialog .social-profile-actions>.button-secondary,.profile-dialog .social-profile-about .button-secondary { background:#fff; border:1px solid #d7d0d2; color:var(--profile-ink); }
.profile-dialog .social-profile-actions>.button-secondary:hover,.profile-dialog .social-profile-about .button-secondary:hover { background:#eae5e4; }
.profile-dialog .social-profile-support { min-height:44px; padding:8px 3px 8px 8px; margin-left:auto; background:none; color:var(--profile-accent); font-size:12px; text-decoration:underline; text-underline-offset:4px; }
.profile-dialog .social-profile-sample-note { margin:20px 0; padding:12px 15px; border-left:2px solid #a58a9b; background:#eae5e7; color:#5e525f; font-size:12px; line-height:1.75; }
.profile-dialog .social-profile-tabs { display:flex; align-items:center; gap:8px; border-top:1px solid var(--profile-line); border-bottom:1px solid var(--profile-line); padding:11px 32px; margin:0 -32px 24px; background:#fff; }
.profile-dialog .social-profile-tab { position:relative; display:flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:9px 18px; background:none; color:var(--profile-muted); font-size:13px; font-weight:500; border:1px solid transparent; border-radius:var(--radius-sm,6px); }
.profile-dialog .social-profile-tab:hover { background:#f7f1f5; color:#623c56; }
.profile-dialog .social-profile-tab[aria-selected=true] { color:#633a51; background:#f0e6ed; border-color:#ddcbd7; font-weight:600; }
.profile-dialog .social-profile-tab[aria-selected=true]::after { display:none; }
.profile-dialog .social-profile-tab-count { color:#73546a; font-size:11px; font-weight:500; padding:2px 6px; line-height:1.5; border-radius:4px; background:#fff; border:1px solid #e3d6de; }
.profile-dialog .social-profile-timeline { display:grid; grid-template-columns:280px minmax(0,1fr); gap:24px; align-items:start; }
.profile-dialog .social-profile-sidebar { display:grid; gap:18px; }
.profile-dialog .social-profile-panel,.profile-dialog .social-profile-post { background:#fff; border:1px solid var(--profile-line); border-radius:var(--radius-md,10px); overflow:hidden; box-shadow:var(--surface-shadow,0 2px 5px #211d2404); }
.profile-dialog .social-profile-panel { padding:22px; }
.profile-dialog .social-profile-section-heading { margin:0; color:var(--profile-ink); font:600 16px/1.4 var(--sans,'DM Sans',sans-serif); letter-spacing:-.2px; }
.profile-dialog .social-profile-copy { margin:12px 0 0; color:#5e555f; font-size:14px; line-height:1.8; overflow-wrap:anywhere; white-space:pre-wrap; }
.profile-dialog .social-profile-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 14px; margin:18px 0 0; }
.profile-dialog .social-profile-facts>div { min-width:0; padding:12px 0; border-top:1px solid #eee7ec; }
.profile-dialog .social-profile-facts dt { color:#6d6070; font-size:12px; line-height:1.5; margin:0 0 3px; }
.profile-dialog .social-profile-facts dd { color:#39313b; margin:0; font-size:13px; font-weight:500; line-height:1.6; overflow-wrap:anywhere; }
.profile-dialog .social-profile-section-row { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:15px; }
.profile-dialog .social-profile-sidebar .social-profile-section-row { margin-bottom:16px; }
.profile-dialog .social-profile-inline-link { min-height:44px; padding:6px 0; background:none; color:var(--profile-accent); font-size:12px; font-weight:600; text-align:left; }
.profile-dialog .social-profile-inline-link:hover { text-decoration:underline; text-underline-offset:3px; }
.profile-dialog .social-profile-view-count { font-size:12px; color:var(--profile-muted); }
.profile-dialog .social-profile-preview-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
.profile-dialog .social-profile-thumbnail { min-width:0; width:100%; aspect-ratio:1; border:0; border-radius:5px; padding:0; overflow:hidden; background:#e9e3e5; color:var(--profile-accent); display:grid; place-items:center; }
.profile-dialog .social-profile-thumbnail>img { width:100%; height:100%; object-fit:cover; display:block; }
.profile-dialog .social-profile-thumbnail>.icon { width:25px; height:25px; }
.profile-dialog .social-profile-post { margin-bottom:20px; }
.profile-dialog .social-profile-post-header { display:flex; gap:11px; align-items:center; padding:19px 20px 13px; }
.profile-dialog .social-profile-small-avatar { position:relative; flex-shrink:0; width:43px; height:43px; display:block; border-radius:50%; background:#eee8eb; overflow:hidden; }
.profile-dialog .social-profile-small-avatar .social-profile-initials { font-size:13px; }
.profile-dialog .social-profile-post-byline { display:flex; flex-direction:column; min-width:0; gap:5px; }
.profile-dialog .social-profile-post-byline>strong { color:#2f2831; font-size:14px; font-weight:600; line-height:1.4; overflow-wrap:anywhere; }
.profile-dialog .social-profile-post-byline>span { color:#6f6270; font-size:12px; line-height:1.6; }
.profile-dialog .social-profile-post-options { color:#625064; margin-left:auto; flex-shrink:0; width:44px; min-width:44px; height:44px; min-height:44px; border:0; background:none; }
.profile-dialog .social-profile-post-caption { margin:0; padding:0 20px 19px; font-size:14px; color:#49414c; line-height:1.8; white-space:pre-wrap; overflow-wrap:anywhere; }
.profile-dialog .social-profile-post-media { display:block; width:100%; min-width:0; border:0; padding:0; background:#e9e4e5; overflow:hidden; color:var(--profile-accent); }
.profile-dialog .social-profile-post-media>img { display:block; width:100%; height:auto; max-height:440px; object-fit:cover; }
.profile-dialog .social-profile-no-media { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; min-height:190px; padding:25px; background:#efebe9; }
.profile-dialog .social-profile-no-media>.icon { width:27px; height:27px; }
.profile-dialog .social-profile-no-media>span { font-size:15px; font-weight:500; }
.profile-dialog .social-profile-no-media>small { font-size:12px; color:#82747f; line-height:1.7; }
.profile-dialog .social-profile-post-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:9px 20px; border-top:1px solid var(--profile-line); }
.profile-dialog .social-profile-post-footer>span { color:#6f6171; font-size:12px; }
.profile-dialog .social-profile-about { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:24px; align-items:start; }
.profile-dialog .social-profile-about .button { margin-top:20px; font-size:13px; border-radius:6px; }
.profile-dialog .social-profile-fine-print { font-size:12px; line-height:1.8; color:#7c707a; margin-bottom:0; }
.profile-dialog .social-profile-media-heading { margin:0 0 20px; color:var(--profile-ink); font:600 22px/1.3 var(--sans,'DM Sans',sans-serif); letter-spacing:-.5px; }
.profile-dialog .social-profile-gallery { grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:24px; }
.profile-dialog .social-profile-media-item { height:auto; aspect-ratio:1; padding:0; border:1px solid #d9cdd6; border-radius:var(--radius-md,10px); background:#eae4e6; color:var(--profile-accent); box-shadow:0 2px 4px #31223806; }
.profile-dialog .social-profile-media-item:hover { border-color:#aa8da0; }
.profile-dialog .social-profile-media-item:focus-visible { outline:2px solid #75405b; outline-offset:3px; }
.profile-dialog .social-profile-media-item>img { display:block; width:100%; height:100%; object-fit:cover; }
.profile-dialog .social-profile-media-item>.icon { width:35px; height:35px; }
.profile-dialog .social-profile-media-item>.social-profile-media-label { bottom:10px; left:10px; right:10px; background:#fffffff2; border:1px solid #ffffff80; color:#43303e; padding:8px 10px; border-radius:5px; font-size:12px; font-weight:500; text-align:left; }
.profile-dialog .social-profile-gallery>.social-profile-panel { grid-column:1/-1; }
.profile-dialog .profile-share { margin:24px 0 0; padding:17px; border:1px solid var(--profile-line); border-radius:var(--radius-md,10px); background:#fff; color:#625664; }
.profile-dialog .profile-share label { color:#625664; font-size:12px; }
.profile-dialog .profile-share input { background:#fff; color:#5a4a58; border:1px solid #ded7db; border-radius:5px; font-size:13px; }
.profile-dialog .profile-share>.button { border:1px solid #d7d0d2; background:#fff; color:#4b3b48; border-radius:5px; font-size:12px; }
.profile-dialog .profile-share .small-note { color:#786c76; font-size:12px; }
.profile-dialog .profile-live-alerts { margin:18px 0 0; padding-top:18px; border-top:1px solid var(--profile-line); }
.profile-dialog .profile-live-alerts>.small-note { color:#756773; font-size:12px; }
.profile-dialog [role=tabpanel]:focus-visible { outline-offset:6px; }
@media(max-width:960px) {
  .profile-dialog { max-width:calc(100vw - 36px); }
  .profile-dialog .social-profile-timeline { grid-template-columns:245px minmax(0,1fr); gap:18px; }
  .profile-dialog .social-profile-body { padding-inline:24px; }
  .profile-dialog .social-profile-identity { margin-inline:-24px; padding-inline:24px; }
  .profile-dialog .social-profile-tabs { margin-inline:-24px; padding-inline:24px; }
  .profile-dialog .social-profile-identity { grid-template-columns:126px minmax(0,1fr); gap:0 20px; }
  .profile-dialog .social-profile-avatar { width:126px; height:126px; margin-top:-42px; }
  .profile-dialog .social-profile-cover { height:270px; }
  .profile-dialog .social-profile-actions { gap:8px; }
  .profile-dialog .social-profile-actions>.button { padding-inline:13px; }
  .profile-dialog .social-profile-panel { padding:18px; }
}
@media(max-width:720px) {
  .profile-dialog { width:100%; max-width:calc(100vw - 20px); max-height:calc(100dvh - 20px); border-radius:12px; }
  .profile-dialog>.dialog-close { top:12px; right:12px; margin:12px 12px -56px auto; }
  .profile-dialog .social-profile-cover { height:230px; min-height:0; }
  .profile-dialog .social-profile-cover>img { width:100%; }
  .profile-dialog .social-profile-cover-monogram { display:none; }
  .profile-dialog .social-profile-cover-label { bottom:14px; right:16px; font-size:10px; }
  .profile-dialog .social-profile-body { padding:0 20px 24px; }
  .profile-dialog .social-profile-identity { grid-template-columns:102px minmax(0,1fr); column-gap:16px; padding-bottom:20px; }
  .profile-dialog .social-profile-avatar { width:102px; height:102px; margin-top:-36px; border-width:4px; }
  .profile-dialog .social-profile-identity-copy { padding-top:17px; }
  .profile-dialog .social-profile-name { font-size:27px; letter-spacing:-.7px; }
  .profile-dialog .social-profile-kind { font-size:10px; letter-spacing:.6px; }
  .profile-dialog .social-profile-summary { font-size:14px; margin-top:10px; }
  .profile-dialog .social-profile-actions { grid-column:1/-1; margin-top:20px; }
  .profile-dialog .social-profile-actions>.button { flex:1; font-size:12px; padding-inline:12px; min-width:100px; }
  .profile-dialog .social-profile-support { width:100%; min-height:44px; margin-left:0; padding:8px 0; text-align:left; }
  .profile-dialog .social-profile-sample-note { font-size:12px; margin-block:18px; padding:11px 12px; }
  .profile-dialog .social-profile-tabs { gap:6px; margin-bottom:20px; padding-block:10px; }
  .profile-dialog .social-profile-tab { flex:1; min-width:0; min-height:44px; padding:9px 6px; gap:6px; }
  .profile-dialog .social-profile-timeline { grid-template-columns:1fr; gap:20px; }
  .profile-dialog .social-profile-sidebar { grid-template-columns:1fr; }
  .profile-dialog .social-profile-sidebar>.social-profile-panel+.social-profile-panel { display:none; }
  .profile-dialog .social-profile-sidebar .social-profile-facts { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 20px; }
  .profile-dialog .social-profile-copy { font-size:14px; margin-top:10px; }
  .profile-dialog .social-profile-about { grid-template-columns:1fr; gap:16px; }
  .profile-dialog .social-profile-post-header { padding:16px 16px 12px; gap:10px; }
  .profile-dialog .social-profile-post-caption { padding:0 16px 16px; }
  .profile-dialog .social-profile-post-footer { padding-inline:16px; }
  .profile-dialog .social-profile-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .profile-dialog .social-profile-media-item>.social-profile-media-label { left:7px; right:7px; bottom:7px; padding:6px 8px; font-size:11px; }
  .profile-dialog .profile-share { display:flex; flex-wrap:wrap; gap:10px; padding:15px; margin-top:20px; }
  .profile-dialog .profile-share>label { flex:1 1 100%; }
  .profile-dialog .profile-share input { font-size:16px; min-height:44px; }
  .profile-dialog .social-profile-identity { margin-inline:-20px; padding-inline:20px; }
  .profile-dialog .social-profile-tabs { margin-inline:-20px; padding-inline:20px; }
}
@media(max-width:400px) {
  .profile-dialog .social-profile-body { padding-inline:15px; }
  .profile-dialog .social-profile-cover { height:205px; }
  .profile-dialog .social-profile-identity { display:block; }
  .profile-dialog .social-profile-avatar { margin-top:-42px; }
  .profile-dialog .social-profile-identity-copy { padding-top:12px; }
  .profile-dialog .social-profile-actions { margin-top:16px; }
  .profile-dialog .social-profile-actions>.button { flex:1 1 calc(50% - 9px); }
  .profile-dialog .social-profile-sidebar .social-profile-facts { gap:0 12px; }
  .profile-dialog .social-profile-identity { margin-inline:-15px; padding-inline:15px; }
  .profile-dialog .social-profile-tabs { margin-inline:-15px; padding-inline:15px; }
}
@media(prefers-reduced-motion:reduce) {
  .profile-dialog * { scroll-behavior:auto; transition:none!important; }
}

/* The owner's portrait and cover editor uses explicit save controls. */
.profile-photo-dialog {
  width:900px; max-width:calc(100vw - 40px); padding:34px; border-radius:16px;
  background:#f3f1ed; color:#30252e; border:1px solid #d6cbd4;
  font-family:var(--sans,'DM Sans',sans-serif);
}
.profile-photo-dialog>.dialog-close { position:sticky; display:grid; width:44px; height:44px; top:12px; right:auto; margin:-18px -18px -26px auto; color:#624459; background:#fff; border:1px solid #e7dde3; z-index:5; }
.profile-photo-dialog>.eyebrow { color:#815d72; }
.profile-photo-dialog>h2 { color:#33242f; margin:12px 45px 13px 0; font:400 37px/1.15 var(--serif,'Instrument Serif',serif); letter-spacing:-.6px; }
.profile-photo-dialog .profile-photo-intro { max-width:640px; color:#695b69; font-size:14px; line-height:1.8; margin:0 0 25px; }
.profile-photo-dialog .profile-photo-notice { color:#604856; border:1px solid #d9cbd4; border-radius:6px; padding:14px 16px; font-size:13px; line-height:1.8; background:#eae4e8; }
.profile-photo-dialog .profile-photo-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:20px; align-items:start; }
.profile-photo-dialog .profile-photo-section { min-width:0; padding:22px; background:#fff; border:1px solid #e5dce1; border-radius:11px; }
.profile-photo-dialog .profile-photo-heading>h3 { font:600 17px/1.3 var(--sans,'DM Sans',sans-serif); color:#493443; margin:0 0 8px; }
.profile-photo-dialog .profile-photo-heading>p { color:#70616e; font-size:13px; line-height:1.7; min-height:44px; margin:0 0 18px; }
.profile-photo-dialog .profile-photo-preview { display:grid; place-items:center; position:relative; overflow:hidden; background:#f1e9ee; border:1px solid #e9dfe5; }
.profile-photo-dialog .profile-photo-preview-portrait { width:156px; aspect-ratio:1; margin:0 auto; border-radius:50%; }
.profile-photo-dialog .profile-photo-preview-cover { width:100%; height:156px; border-radius:7px; }
.profile-photo-dialog .profile-photo-preview>img { position:absolute; inset:0; width:100%; height:100%; display:block; object-fit:cover; }
.profile-photo-dialog .profile-photo-preview>img[hidden],.profile-photo-dialog .profile-photo-empty[hidden] { display:none; }
.profile-photo-dialog .profile-photo-empty { font-size:13px; color:#80687a; }
.profile-photo-dialog .profile-photo-state { margin:13px 0 20px; min-height:40px; color:#74596b; font-size:12px; line-height:1.7; }
.profile-photo-dialog .profile-photo-form { gap:15px; }
.profile-photo-dialog .profile-photo-form label { gap:8px; font-size:13px; color:#614758; line-height:1.7; }
.profile-photo-dialog .profile-photo-form input[type=file] { padding:10px; width:100%; max-width:100%; min-width:0; font-size:11px; color:#77596e; }
.profile-photo-dialog .profile-photo-form input[type=file]::file-selector-button { min-height:44px; padding:9px 10px; margin:0 8px 0 0; border:0; border-radius:4px; background:#eae1e7; color:#5b364e; font:500 12px/1.3 var(--sans,'DM Sans',sans-serif); cursor:pointer; }
.profile-photo-dialog .profile-photo-form .check-row { align-items:start; gap:10px; font-size:13px!important; line-height:1.8; }
.profile-photo-dialog .profile-photo-form .check-row input { flex-shrink:0; width:17px; height:17px; margin-top:3px; accent-color:#784b65; }
.profile-photo-dialog .profile-photo-form .small-note { font-size:12px; line-height:1.8; margin:0; color:#756370; }
.profile-photo-dialog .profile-photo-actions { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.profile-photo-dialog .profile-photo-actions>.button { width:auto; min-height:44px; padding:11px 13px; font:500 12px/1.5 var(--sans,'DM Sans',sans-serif); border-radius:6px; box-shadow:none; }
.profile-photo-dialog .profile-photo-actions>.button-primary { color:#fff; border:1px solid #784b65; background:#784b65; }
.profile-photo-dialog .profile-photo-actions>.button-secondary { color:#785d70; border:1px solid #e0d4dc; background:#fff; }
.profile-photo-dialog .profile-photo-remove { padding:10px 0; min-height:44px; color:#785165; background:none; font-size:12px; text-decoration:underline; text-underline-offset:3px; text-align:left; }
.profile-photo-dialog .profile-photo-remove:hover { color:#643d51; }
.profile-photo-dialog .profile-photo-position { margin:22px -1px 0; padding-top:21px; border-top:1px solid #eee6eb; gap:12px; }
.profile-photo-dialog .profile-photo-position>h4 { color:#66485c; font:600 13px/1.5 var(--sans,'DM Sans',sans-serif); margin:0; }
.profile-photo-dialog .profile-photo-range-label { display:flex; justify-content:space-between; align-items:center; gap:12px; font-size:13px; color:#6e5163; }
.profile-photo-dialog .profile-photo-position-value { color:#784b65; font-variant-numeric:tabular-nums; }
.profile-photo-dialog .profile-photo-position input[type=range] { display:block; width:100%; min-height:44px; padding:0; border:0; box-shadow:none; accent-color:#784b65; background:transparent; cursor:pointer; }
.profile-photo-dialog .profile-photo-position .small-note,.profile-photo-dialog .profile-photo-position-status { margin:0; font-size:12px; line-height:1.8; color:#775f70; }
.profile-photo-dialog .profile-photo-position-status { min-height:20px; color:#78526b; }
.profile-photo-dialog .profile-photo-position .profile-photo-actions { margin-top:2px; }
.profile-photo-dialog button:disabled,.profile-photo-dialog input:disabled { opacity:.5; cursor:default; }
.profile-photo-dialog [hidden] { display:none!important; }
.profile-photo-dialog :is(button,input):focus-visible { outline:2px solid #784b65; outline-offset:4px; }
@media(max-width:720px) {
  .profile-photo-dialog { width:100%; max-width:calc(100vw - 20px); padding:25px 18px; border-radius:12px; max-height:calc(100dvh - 20px); }
  .profile-photo-dialog>.dialog-close { top:11px; right:auto; margin:-14px -7px -30px auto; }
  .profile-photo-dialog>h2 { font-size:32px; margin-top:15px; }
  .profile-photo-dialog .profile-photo-intro { font-size:13px; margin-bottom:20px; }
  .profile-photo-dialog .profile-photo-grid { grid-template-columns:1fr; gap:16px; }
  .profile-photo-dialog .profile-photo-section { padding:20px 18px; }
  .profile-photo-dialog .profile-photo-heading>p { min-height:0; }
  .profile-photo-dialog .profile-photo-preview-cover { height:auto; aspect-ratio:2.1; min-height:125px; }
  .profile-photo-dialog .profile-photo-state { min-height:0; }
  .profile-photo-dialog .profile-photo-form input[type=file] { font-size:12px; }
  .profile-photo-dialog .profile-photo-actions>.button { flex:1 1 auto; font-size:12px; }
  .profile-photo-dialog .profile-photo-remove { flex-basis:100%; }
}
