/* v1.0.2: honor the HTML hidden attribute even when layout classes set display:grid/flex. */
[hidden]{display:none!important}

*{box-sizing:border-box}
.account-body{margin:0;background:#080b10;color:#f5f7fa;min-height:100vh}
.account-header{width:calc(100% - clamp(24px,4vw,96px));max-width:none}
.account-page{width:calc(100% - clamp(24px,6vw,140px));max-width:1500px;margin:0 auto;padding:82px 0 90px}
.account-hero{max-width:860px;margin-bottom:32px}
.account-hero h1{font-size:clamp(3rem,8vw,7rem);line-height:.88;letter-spacing:-.07em;margin:.18em 0}
.account-hero p,.profile-intro p,.card-help,.starter-row span,.security-note{color:#8fa1b1;line-height:1.55}
.auth-grid,.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.account-card,.account-strip,.profile-intro,.starter-row{border:1px solid #21303d;background:#10171f;border-radius:18px}
.account-card{padding:24px}
.account-card h2,.profile-intro h2,.account-strip h2{margin:8px 0 12px;letter-spacing:-.035em}
.account-card label{display:grid;gap:7px;margin:14px 0;color:#c7d1da;font-size:.9rem}
.account-card input,.setting-select,.source-select{width:100%;background:#0a1016;color:#eef4f8;border:1px solid #2b3c4a;border-radius:10px;padding:11px 12px;font:inherit}
.account-card input:focus,.setting-select:focus,.source-select:focus{outline:2px solid #73d8ff;outline-offset:1px}
.primary-btn,.secondary-btn,.danger-btn{min-height:42px;border-radius:999px;padding:10px 16px;font:inherit;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.primary-btn{border:1px solid #7edcff;background:#7edcff;color:#061018}
.secondary-btn{border:1px solid #334757;background:#111a22;color:#dce7ee}
.danger-btn{border:1px solid #5b3740;background:#1b1216;color:#efb7c2}
.optional{color:#718391;font-weight:400}
.security-note{font-size:.82rem;margin:16px 0 0}
.account-message{min-height:24px;margin:0 0 14px;color:#8ce9d0}
.account-message.error{color:#ff9fae}
.account-strip{padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}
.account-strip-actions,.save-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.profile-intro{padding:22px 24px;margin-bottom:18px;display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.5fr);gap:24px}
.profile-intro p{margin:0}
.starter-row{padding:14px 18px;margin-bottom:18px;display:flex;align-items:center;gap:14px}
.settings-list,.check-list{display:grid;gap:9px}
.setting-row,.source-row,.check-row{display:grid;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid #1d2a34}
.setting-row{grid-template-columns:minmax(140px,1fr) minmax(160px,220px)}
.source-row{grid-template-columns:minmax(170px,1fr) minmax(170px,230px)}
.setting-row:last-child,.source-row:last-child,.check-row:last-child{border-bottom:0}
.setting-label,.source-label{font-weight:650}
.setting-help,.source-help{display:block;color:#718391;font-size:.74rem;margin-top:2px}
.check-row{grid-template-columns:auto 1fr}
.check-row input{width:18px;height:18px;margin:0}
.source-card{margin-top:18px}
.source-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}
.save-row{margin:18px 0 30px}
#save-state{color:#768a99}
.lower-grid{margin-top:18px}
.eyebrow{letter-spacing:.18em;font-size:.68rem;font-weight:800;color:#6fd6ff}
@media(max-width:850px){
  .auth-grid,.profile-grid,.profile-intro,.source-settings{grid-template-columns:1fr}
  .account-strip,.starter-row{align-items:flex-start;flex-direction:column}
}
@media(max-width:520px){
  .account-page{width:calc(100% - 24px);padding-top:56px}
  .setting-row,.source-row{grid-template-columns:1fr}
}

/* v1.1 profile additions */
.appearance-card{margin-bottom:18px;display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1.7fr);gap:26px}
.appearance-copy h2{margin:8px 0 10px}
.appearance-controls{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:12px}
.appearance-controls label{margin:0}
.appearance-controls input[type="color"]{height:44px;padding:4px;cursor:pointer}
.language-note{grid-column:1/-1;margin:0;color:#718391;font-size:.78rem;line-height:1.5}
.custom-source-card{margin-top:18px}
.add-source-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:10px;margin:15px 0}
.add-source-form input{margin:0}
.custom-source-status{min-height:20px;color:#8ce9d0;font-size:.82rem}
.custom-source-status.error{color:#ff9fae}
.custom-source-settings{display:grid;gap:10px;margin-top:8px}
.custom-source-row{display:grid;grid-template-columns:minmax(220px,1.3fr) minmax(150px,.6fr) minmax(150px,.6fr) auto;gap:10px;align-items:center;padding:12px 0;border-top:1px solid #1d2a34}
.custom-source-name{font-weight:700}
.custom-source-url{display:block;color:#718391;font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.remove-source{border:1px solid #54323b;background:#1b1216;color:#efb7c2;border-radius:10px;min-height:40px;padding:8px 11px;cursor:pointer}
@media(max-width:1000px){
  .appearance-card{grid-template-columns:1fr}
  .appearance-controls{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .custom-source-row{grid-template-columns:1fr}
  .add-source-form{grid-template-columns:1fr}
}
@media(max-width:520px){
  .appearance-controls{grid-template-columns:1fr}
}

/* v1.2: Ghost Identity remains the shared account/profile surface. */
