/* Profilo e collegamento: token Segno, stessi componenti nei due client. */
.account-page { max-width:780px; margin:0 auto; color:var(--text-primary); font:15px/1.6 var(--font-sans); padding-bottom:28px; }
.account-page * { box-sizing:border-box; }
.account-page [hidden] { display:none !important; }
.account-page h2 { font:25px/1.3 var(--font-display); font-synthesis:none; margin:0 0 14px; }
.account-page h3 { font:600 15px/1.4 var(--font-sans); margin:0; }
.account-page p { color:var(--text-muted); margin:0 0 20px; }
.account-page a { color:var(--ember-300); text-underline-offset:3px; }
.account-personal { margin:6px 0 28px; }
.account-identity { display:flex; align-items:center; gap:14px; margin-bottom:20px; }
.account-identity h2 { margin:0 0 6px; overflow-wrap:anywhere; }
.account-identity p { margin:0; }
.account-monogram { display:grid; place-items:center; flex:none; width:54px; height:54px; border:1px solid var(--border-strong); border-radius:var(--radius-md); color:var(--ember-300); font:500 20px var(--font-sans); }
.account-facts { display:flex; flex-wrap:wrap; gap:20px 48px; margin:0 0 14px; }
.account-facts dt { color:var(--text-muted); font-size:13px; }
.account-facts dd { margin:2px 0 0; }
.account-profile-details { font-size:14px; }
.account-profile-details summary { cursor:pointer; width:fit-content; min-height:44px; padding:10px 0; color:var(--text-muted); }
.account-profile-details p { margin:4px 0 10px; }
.account-connect-card { border:1px solid var(--border-strong); border-radius:var(--radius-lg); background:var(--surface-card); padding:28px; }
.account-connect-mark { display:flex; gap:14px; align-items:center; color:var(--ember-300); margin-bottom:20px; }
.account-connect-mark img { object-fit:contain; }
.account-card-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px 20px; margin-top:20px; }
.account-btn { display:inline-flex; justify-content:center; align-items:center; min-height:46px; padding:11px 16px; border:1px solid var(--border-strong); border-radius:var(--radius-sm); background:var(--surface-inset); color:var(--text-primary); font:600 15px/1.4 var(--font-sans); cursor:pointer; text-decoration:none; }
.account-btn:hover { background:var(--coffee-750); }
.account-btn.primary { background:var(--action); color:var(--on-action); border-color:var(--action); }
.account-btn.primary:hover { background:var(--action-hover); border-color:var(--action-hover); }
.account-back { display:inline-flex; align-items:center; min-height:44px; padding:10px 0; background:none; border:0; color:var(--text-muted); font:500 14px/1.4 var(--font-sans); cursor:pointer; text-align:left; text-decoration:none; }
.account-back:hover { color:var(--text-primary); text-decoration:underline; text-underline-offset:3px; }
.account-page .danger { color:var(--danger-400); }
.account-page .account-exit { margin-top:20px; }
.account-page :is(button,a,input,textarea,summary):focus-visible { outline:2px solid var(--ember-400); outline-offset:3px; }
.account-page [data-title]:focus { outline:0; }
.account-page :disabled { opacity:.55; cursor:not-allowed; }
.account-connection { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:18px 0; border-top:1px solid var(--border-default); }
.account-connection > div { min-width:0; }
.account-connection h3 { overflow-wrap:anywhere; }
.account-connection p { margin:4px 0; font-size:14px; }
.account-connection small { color:var(--text-muted); font-size:12px; }
.account-connection button { flex:none; }
.account-page .account-status { color:var(--text-primary); margin:10px 0 0; font-size:14px; }
.account-status:empty { display:none; }
.account-flow > [data-back] { margin-bottom:14px; }
.account-page .account-step { color:var(--ember-300); font:500 12px/1.5 var(--font-mono); margin:0 0 10px; }
.account-page .account-intro { max-width:640px; }
.account-choice { border:0; padding:0; margin:24px 0; min-width:0; }
.account-choice legend { font-weight:600; padding:0; margin-bottom:10px; }
.account-environments { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.account-targets { grid-template-columns:repeat(2,minmax(0,1fr)); }
.account-modes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.account-option { display:flex; gap:10px; align-items:center; padding:16px 12px; background:var(--surface-card); border:1px solid var(--border-strong); border-radius:var(--radius-md); cursor:pointer; min-height:72px; }
.account-option:has(input:checked) { border-color:var(--ember-400); background:var(--ember-tint); }
.account-option input { accent-color:var(--accent); width:18px; height:18px; margin:0; flex:none; }
.account-option > svg { flex:none; color:var(--text-primary); }
.account-option > span { min-width:0; }
.account-option strong { display:block; font-weight:600; font-size:15px; }
.account-option small { display:block; color:var(--text-muted); font-size:12px; line-height:1.4; margin-top:4px; }
.account-page [data-plugin-settings] .account-label:not(:first-child) { margin-top:24px; }
.account-page a[aria-disabled=true] { opacity:.55; cursor:wait; }
.account-page .account-hint { font-size:13px; margin:10px 0 0; }
.account-flow-actions { display:flex; flex-wrap:wrap; align-items:center; gap:20px; margin-top:20px; }
.account-help { border-top:1px solid var(--border-default); margin-top:20px; }
.account-help summary { min-height:48px; padding:14px 0; font-weight:500; font-size:14px; cursor:pointer; }
.account-help ol { padding-left:20px; margin:0 0 14px; color:var(--text-muted); font-size:14px; }
.account-help ol > li { margin-bottom:12px; }
.account-help p { font-size:14px; margin:0 0 14px; }
.account-help .account-option { margin:10px 0; }
.account-handoff { padding:24px; background:var(--surface-card); border:1px solid var(--border-strong); border-radius:var(--radius-lg); }
.account-short-steps { padding:0; margin:0 0 24px; list-style:none; counter-reset:connect; }
.account-short-steps > li { position:relative; padding-left:42px; margin:0 0 20px; counter-increment:connect; }
.account-short-steps > li:last-child { margin:0; }
.account-short-steps > li::before { content:counter(connect); position:absolute; left:0; top:0; width:28px; height:28px; display:grid; place-items:center; border:1px solid var(--border-strong); border-radius:50%; font:13px var(--font-mono); color:var(--ember-300); }
.account-short-steps > li > strong { display:block; font-weight:600; }
.account-short-steps > li > span { display:block; color:var(--text-muted); font-size:14px; margin-top:4px; }
.account-short-steps .account-btn { margin-top:14px; }
.account-copy-main { width:100%; }
.account-label { display:block; font-size:14px; margin-bottom:10px; }
.account-page input[type=text] { width:100%; min-height:46px; padding:10px 12px; border:1px solid var(--border-strong); border-radius:var(--radius-sm); background:var(--surface-inset); color:var(--text-primary); font:16px/1.4 var(--font-sans); margin-bottom:4px; }
.account-page textarea { width:100%; min-height:180px; padding:12px; border:1px solid var(--border-strong); border-radius:var(--radius-sm); background:var(--surface-inset); color:var(--text-primary); font:14px/1.5 var(--font-sans); resize:vertical; }
.account-page .account-watch { border-left:2px solid var(--ember-500); padding:4px 0 4px 14px; margin:24px 0 6px; color:var(--text-muted); font-size:14px; }
.account-page .account-sources { font-size:12px; margin:14px 0; }
.account-mono { font:13px/1.5 var(--font-mono); overflow-wrap:anywhere; }
.account-success { display:flex; align-items:center; gap:14px; background:var(--surface-card); padding:20px; margin:24px 0; border:1px solid var(--border-strong); border-radius:var(--radius-md); }
.account-success p { margin:4px 0 0; }
.account-success svg { color:var(--success-400); flex:none; }
.account-page .account-connection-name { font-size:13px; overflow-wrap:anywhere; }
.account-disconnect { padding-top:20px; margin-top:28px; border-top:1px solid var(--border-default); }
.account-disconnect p { margin:10px 0; }
.account-disconnect [data-confirm] > button { margin-right:14px; }
@media(max-width:600px) {
  .account-connect-card,.account-handoff { padding:20px 16px; }
  .account-environments { grid-template-columns:1fr; }
  .account-option { padding:14px 12px; min-height:68px; }
  .account-targets { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .account-targets .account-option { flex-wrap:wrap; gap:8px; min-height:98px; padding:12px; }
  .account-targets .account-option > span { flex-basis:100%; }
  .account-targets small { display:none; }
  .account-modes { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .account-modes .account-option { align-items:flex-start; flex-wrap:wrap; gap:8px; }
  .account-modes .account-option > span { flex-basis:100%; }
  .account-card-actions > .primary { width:100%; }
  .account-connection { gap:10px; }
  .account-connection button { padding:10px; font-size:14px; }
  .account-page h2 { font-size:23px; }
  .account-short-steps > li { padding-left:38px; }
}
