/* Ghost Profile v4.0.2 — compact personal system console. */
[hidden]{display:none!important}

*{box-sizing:border-box}
html{scroll-padding-top:24px}
.account-body{
  min-height:100vh;
  margin:0;
  background:var(--bg,#080b10)!important;
  color:var(--text,#f2f5f7);
}
.account-body .ambient-grid{
  opacity:.014;
  background-size:64px 64px;
  mask-image:linear-gradient(to bottom,#000,transparent 58%);
}
.account-header{
  width:calc(100% - clamp(28px,4vw,80px));
  max-width:1500px;
  min-height:76px;
}
.account-page{
  width:calc(100% - clamp(28px,6vw,112px));
  max-width:1500px;
  margin:0 auto;
  padding:38px 0 88px;
}
.account-hero{
  display:grid;
  grid-template-columns:minmax(230px,.62fr) minmax(320px,1.38fr);
  align-items:end;
  gap:48px;
  padding:18px 0 30px;
  margin-bottom:22px;
  border-bottom:1px solid var(--line,#242f3d);
}
.account-hero h1{
  margin:7px 0 0;
  font-size:clamp(2.8rem,5vw,4.8rem);
  line-height:.92;
  letter-spacing:-.055em;
  font-weight:680;
}
.account-hero>p{
  max-width:620px;
  margin:0 0 5px;
  color:var(--muted,#91a0ae);
  font-size:1rem;
}
.eyebrow,.section-code{
  color:var(--accent,#78d6ff);
  font-size:.69rem;
  font-weight:760;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.account-message{
  min-height:22px;
  margin:0 0 10px;
  color:#8ce9d0;
  font-size:.86rem;
}
.account-message.error{color:#ff9fae}

/* Authentication stays direct and deliberate, without landing-page cards. */
.auth-grid{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:1px;
  overflow:hidden;
  border:1px solid var(--line,#242f3d);
  background:var(--line,#242f3d);
}
.auth-card{
  min-height:420px;
  padding:34px;
  background:var(--panel,#0f141b);
}
.auth-card h2{margin:10px 0 24px;font-size:1.7rem;letter-spacing:-.035em}

/* Signed-in console. */
.account-console{
  display:grid;
  grid-template-columns:250px minmax(0,1fr);
  gap:54px;
  align-items:start;
}
.account-rail{
  position:sticky;
  top:22px;
  min-width:0;
  border-top:2px solid var(--accent,#78d6ff);
}
.account-identity{
  padding:22px 0 24px;
  border-bottom:1px solid var(--line,#242f3d);
}
.account-identity h2{
  margin:8px 0 2px;
  overflow:hidden;
  text-overflow:ellipsis;
  font-size:1.65rem;
  letter-spacing:-.035em;
}
.account-identity p{
  margin:0;
  overflow:hidden;
  color:var(--muted,#91a0ae);
  font-size:.84rem;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.identity-status{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:17px;
  color:var(--soft,#cbd4dc);
  font-size:.75rem;
}
.identity-status i{width:7px;height:7px;background:#8ce9d0;border-radius:50%}
.account-section-nav{display:grid;margin-top:14px}
.account-section-nav a{
  display:grid;
  grid-template-columns:30px 1fr;
  gap:12px;
  align-items:center;
  padding:11px 8px;
  border-bottom:1px solid color-mix(in srgb,var(--line,#242f3d) 70%,transparent);
  color:var(--soft,#cbd4dc);
  font-size:.86rem;
  text-decoration:none;
}
.account-section-nav a span{color:#60707e;font:700 .67rem/1 ui-monospace,SFMono-Regular,Consolas,monospace}
.account-section-nav a:hover,.account-section-nav a:focus-visible{color:var(--text,#f2f5f7);background:color-mix(in srgb,var(--accent,#78d6ff) 6%,transparent)}
.account-section-nav a:hover span,.account-section-nav a:focus-visible span{color:var(--accent,#78d6ff)}
.account-rail-actions{display:grid;gap:2px;margin-top:20px}
.account-rail-actions a,.account-rail-actions button{
  width:100%;
  padding:9px 8px;
  border:0;
  background:transparent;
  color:var(--muted,#91a0ae);
  font:inherit;
  font-size:.79rem;
  text-align:left;
  text-decoration:none;
  cursor:pointer;
}
.account-rail-actions a{display:flex;justify-content:space-between}
.account-rail-actions a:hover,.account-rail-actions button:hover{color:var(--text,#f2f5f7)}
.account-console-main{min-width:0;border-top:1px solid var(--line,#242f3d)}

/* Zones replace the repeated rounded-card stack. */
.settings-zone{
  scroll-margin-top:22px;
  padding:34px 0 46px;
  border-bottom:1px solid var(--line,#242f3d);
}
.settings-zone-head{
  display:grid;
  grid-template-columns:minmax(190px,.48fr) minmax(260px,1.52fr);
  column-gap:30px;
  align-items:baseline;
  margin-bottom:26px;
}
.settings-zone-head .section-code{grid-column:1}
.settings-zone-head h2{
  grid-column:2;
  grid-row:1;
  margin:0;
  font-size:clamp(1.65rem,2.6vw,2.55rem);
  line-height:1;
  letter-spacing:-.05em;
}
.settings-zone-head p{
  grid-column:2;
  margin:10px 0 0;
  max-width:720px;
  color:var(--muted,#91a0ae);
  font-size:.9rem;
  line-height:1.55;
}
.settings-surface,.account-card,.starter-row{
  background:transparent;
  border:0;
  border-radius:0;
}
.account-card{padding:0}
.account-card h3,.profile-card h3{margin:7px 0 8px;font-size:1.22rem;letter-spacing:-.025em}
.card-help,.starter-row span,.security-note,.language-note{
  color:var(--muted,#91a0ae);
  line-height:1.5;
}
.card-help{margin:0 0 18px;font-size:.83rem}

/* Controls. */
.account-card label,.settings-surface label{
  display:grid;
  gap:7px;
  margin:13px 0;
  color:var(--soft,#cbd4dc);
  font-size:.82rem;
}
.account-card input,.settings-surface input,.setting-select,.source-select,.add-source-form input{
  width:100%;
  min-height:41px;
  padding:9px 11px;
  border:1px solid #2b3c4a;
  border-radius:5px;
  background:#090f15;
  color:#eef4f8;
  font:inherit;
}
.account-card input:focus,.settings-surface input:focus,.setting-select:focus,.source-select:focus,.add-source-form input:focus{
  outline:2px solid color-mix(in srgb,var(--accent,#78d6ff) 72%,white);
  outline-offset:1px;
}
.primary-btn,.secondary-btn,.danger-btn{
  display:inline-flex;
  min-height:39px;
  align-items:center;
  justify-content:center;
  padding:8px 14px;
  border-radius:5px;
  font:inherit;
  font-size:.82rem;
  font-weight:700;
  text-decoration:none;
  cursor:pointer;
}
.primary-btn{border:1px solid var(--accent,#78d6ff);background:var(--accent,#78d6ff);color:#061018}
.secondary-btn{border:1px solid #334757;background:#101820;color:#dce7ee}
.danger-btn{border:1px solid #613944;background:#1a1115;color:#efb7c2}
.optional{color:#718391;font-weight:400}
.security-note{max-width:680px;margin:18px 0 0;font-size:.77rem}

/* Appearance and video settings. */
.appearance-controls{
  display:grid;
  grid-template-columns:repeat(3,minmax(110px,.48fr)) minmax(210px,1.35fr);
  gap:1px;
  border:1px solid var(--line,#242f3d);
  background:var(--line,#242f3d);
}
.appearance-controls label{
  min-height:88px;
  justify-content:space-between;
  margin:0;
  padding:14px;
  background:var(--panel,#0f141b);
}
.appearance-controls .color-setting input[type="color"]{
  width:52px;
  min-height:32px;
  height:32px;
  padding:2px;
  cursor:pointer;
}
.language-note{margin:12px 0 0;font-size:.76rem}
.zirvue-settings-card .check-list{
  display:grid;
  grid-template-columns:repeat(5,minmax(110px,1fr));
  gap:1px;
  border:1px solid var(--line,#242f3d);
  background:var(--line,#242f3d);
}
.check-row{
  display:grid!important;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:9px!important;
  min-height:42px;
  margin:0!important;
  padding:10px 12px;
  background:var(--panel,#0f141b);
}
.check-row input[type="checkbox"]{width:17px;height:17px;min-height:0;margin:0;accent-color:var(--accent,#78d6ff)}
.zirvue-recent-row{margin-top:12px!important;border:1px solid var(--line,#242f3d)}

/* ZIRFLO settings. */
.starter-row{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:18px;
  margin-bottom:28px;
  padding:13px 0;
  border-top:1px solid var(--line,#242f3d);
  border-bottom:1px solid var(--line,#242f3d);
}
.starter-row span{font-size:.79rem}
.profile-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0;
  border-top:1px solid var(--line,#242f3d);
  border-bottom:1px solid var(--line,#242f3d);
}
.profile-grid>.account-card{padding:24px 24px 26px 0}
.profile-grid>.account-card+.account-card{padding-left:24px;border-left:1px solid var(--line,#242f3d)}
.settings-list,.check-list{display:grid;gap:0}
.setting-row,.source-row{
  display:grid;
  align-items:center;
  gap:12px;
  min-height:48px;
  padding:8px 0;
  border-bottom:1px solid color-mix(in srgb,var(--line,#242f3d) 72%,transparent);
}
.setting-row{grid-template-columns:minmax(140px,1fr) minmax(150px,210px)}
.source-row{grid-template-columns:minmax(170px,1fr) minmax(160px,220px)}
.setting-row:last-child,.source-row:last-child{border-bottom:0}
.setting-label,.source-label{font-size:.86rem;font-weight:650}
.setting-help,.source-help{display:block;margin-top:2px;color:#718391;font-size:.71rem}
.briefing-settings-card,.catalog-card,.custom-source-card,.source-card{
  margin-top:28px;
  padding-top:26px;
  border-top:1px solid var(--line,#242f3d);
}
.briefing-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.briefing-settings-grid label{margin-bottom:0}
.source-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:30px}
.builtin-source-entry{min-width:0;padding-bottom:10px;border-bottom:1px solid #1d2a34}
.builtin-source-entry .source-row{border-bottom:0}
.builtin-interests{margin:0 0 0 8px}

/* Source catalog and custom sources. */
.catalog-toolbar{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  margin-top:12px;
}
.catalog-toolbar label{flex:1 1 280px;max-width:460px;margin:0}
.catalog-selected-count{padding-bottom:10px;color:#8ce9d0;font-size:.78rem;font-weight:700}
.catalog-status{min-height:20px;margin:12px 0;color:var(--muted,#91a0ae);font-size:.78rem;line-height:1.5}
.catalog-status.error,.custom-source-status.error{color:#ff9fae}
.catalog-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:start}
.catalog-group{min-width:0;border:1px solid #2b3c4a;border-radius:4px;background:#0b1219}
.catalog-group>summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:12px 14px;
  color:#eef4f8;
  font-size:.84rem;
  font-weight:700;
  list-style:none;
  cursor:pointer;
}
.catalog-group>summary::-webkit-details-marker{display:none}
.catalog-group>summary::after{content:"+";margin-left:10px;color:var(--accent,#78d6ff);font-size:1.1rem;font-weight:400}
.catalog-group[open]>summary::after{content:"−"}
.catalog-group small{margin-left:7px;color:#8297a6;font-size:.7rem;font-weight:400}
.catalog-group-body{padding:9px 10px 12px;border-top:1px solid #21303d}
.catalog-select-all{
  margin-bottom:7px;
  padding:6px 9px;
  border:1px solid #365062;
  border-radius:4px;
  background:#101c25;
  color:#a8e6ff;
  font:inherit;
  font-size:.73rem;
  font-weight:700;
  cursor:pointer;
}
.catalog-select-all:hover,.catalog-select-all:focus-visible{border-color:var(--accent,#78d6ff);color:#fff}
.catalog-source-grid{display:grid;gap:3px}
.account-card label.catalog-source{
  display:flex;
  align-items:flex-start;
  gap:9px;
  min-width:0;
  margin:0;
  padding:8px;
  border-radius:3px;
  background:#0e1820;
  cursor:pointer;
}
.catalog-source:hover{background:#13232e!important}
.catalog-source input[type="checkbox"]{flex:0 0 17px;width:17px;height:17px;min-height:0;margin:2px 0 0;accent-color:var(--accent,#78d6ff)}
.catalog-source-copy{display:grid;min-width:0;gap:2px;line-height:1.3}
.catalog-source-copy strong{color:#f2f7fa;font-size:.81rem}
.catalog-source-address{overflow-wrap:anywhere;color:#a1b3be;font-size:.71rem}
.catalog-feed-status{font-size:.68rem}.catalog-feed-status.verified{color:#8ce9d0}.catalog-feed-status.unverified{color:#edc892}.catalog-feed-status.blocked{color:#ff9fae}
.add-source-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:9px;margin:14px 0}
.custom-source-status{min-height:20px;color:#8ce9d0;font-size:.78rem}
.custom-source-settings{display:grid;gap:8px;margin-top:8px}
.custom-source-row{
  display:grid;
  grid-template-columns:minmax(190px,1.2fr) minmax(150px,.55fr) minmax(260px,1.1fr) auto;
  gap:9px;
  align-items:start;
  padding:11px 0;
  border-top:1px solid #1d2a34;
}
.custom-source-row>.source-select,.custom-source-row>.remove-source{margin-top:2px}
.custom-source-name{font-weight:700}.custom-source-url{display:block;max-width:100%;overflow:hidden;color:#718391;font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}
.remove-source{min-height:39px;padding:8px 10px;border:1px solid #54323b;border-radius:5px;background:#1b1216;color:#efb7c2;cursor:pointer}
.source-interests{border:1px solid #2b3c4a;border-radius:5px;background:#0a1016;color:#eef4f8}
.source-interests summary{min-height:41px;padding:10px 11px;cursor:pointer}
.source-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px;padding:4px 10px 11px}
.source-topic-grid label{display:flex;align-items:center;gap:7px;margin:0;padding:4px 2px;font-size:.77rem}
.source-topic-grid input{width:16px;height:16px;min-height:0;margin:0;accent-color:var(--accent,#78d6ff)}

/* Save state is visible without becoming a floating glass card. */
.save-row{
  position:sticky;
  bottom:12px;
  z-index:8;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin:18px 0 4px;
  padding:12px 14px;
  border:1px solid #314352;
  border-left:3px solid var(--accent,#78d6ff);
  background:#0c131a;
  box-shadow:0 10px 30px rgba(0,0,0,.28);
}
.save-row>div{display:grid;gap:2px}.save-row strong{font-size:.79rem}.save-row span{color:#768a99;font-size:.74rem}
.lower-grid{margin:0}

@media(max-width:1100px){
  .account-console{grid-template-columns:215px minmax(0,1fr);gap:34px}
  .appearance-controls{grid-template-columns:repeat(3,minmax(100px,1fr))}
  .appearance-controls label:nth-child(4),.appearance-controls #custom-language-row{grid-column:1/-1}
  .zirvue-settings-card .check-list{grid-template-columns:repeat(3,minmax(110px,1fr))}
  .custom-source-row{grid-template-columns:1fr 1fr}.custom-source-row>div:first-child{grid-column:1/-1}
}
@media(max-width:820px){
  .account-body .site-header{flex-wrap:wrap;min-height:0;padding:12px 0;gap:8px}
  .account-body .top-nav{flex:0 0 100%;justify-content:space-between;margin-left:0}
  .account-body .top-nav a{padding:8px 9px}
  .account-page{padding-top:24px}
  .account-hero{grid-template-columns:1fr;gap:12px}
  .account-console{grid-template-columns:1fr;gap:20px}
  .account-rail{position:static;display:grid;grid-template-columns:1fr;}
  .account-identity{display:grid;grid-template-columns:1fr auto;column-gap:14px;align-items:end}
  .account-identity .section-code,.account-identity .identity-status{grid-column:1/-1}
  .account-identity p{grid-column:2;grid-row:2}
  .account-section-nav{grid-template-columns:repeat(5,minmax(120px,1fr));overflow-x:auto}
  .account-section-nav a{grid-template-columns:24px auto;border-right:1px solid var(--line,#242f3d)}
  .account-rail-actions{display:flex;flex-wrap:wrap;margin-top:8px}
  .account-rail-actions a,.account-rail-actions button{width:auto}
  .settings-zone-head{grid-template-columns:1fr}
  .settings-zone-head h2,.settings-zone-head p{grid-column:1;grid-row:auto}
  .settings-zone-head h2{margin-top:7px}
  .profile-grid,.auth-grid{grid-template-columns:1fr}
  .profile-grid>.account-card{padding:22px 0}
  .profile-grid>.account-card+.account-card{padding-left:0;border-top:1px solid var(--line,#242f3d);border-left:0}
  .source-settings,.catalog-groups{grid-template-columns:1fr}
}
@media(max-width:600px){
  .account-page{width:calc(100% - 24px)}
  .account-hero h1{font-size:2.8rem}
  .auth-card{min-height:0;padding:24px 18px}
  .appearance-controls,.zirvue-settings-card .check-list,.briefing-settings-grid,.custom-source-row,.source-topic-grid{grid-template-columns:1fr}
  .appearance-controls label:nth-child(4),.appearance-controls #custom-language-row{grid-column:auto}
  .starter-row,.add-source-form{grid-template-columns:1fr}
  .setting-row,.source-row{grid-template-columns:1fr}
  .save-row{bottom:6px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}

/* Source library and profile controls; article wall styles are untouched. */
.color-palettes{display:grid;grid-template-columns:repeat(auto-fit,minmax(94px,1fr));gap:10px;margin-top:18px}
.color-palette{background:var(--palette-bg);color:var(--palette-text);border:1px solid var(--palette-accent);padding:12px;cursor:pointer;text-align:left}
.color-palette span{font-size:22px}.color-palette i{display:inline-block;background:var(--palette-accent);width:16px;height:16px;border-radius:50%;margin-left:10px}.color-palette small{display:block;margin-top:8px}
.language-choices,#zirvue-language-settings{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));max-height:240px;overflow:auto}
.country-settings{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));max-height:240px;overflow:auto;margin-top:12px}.country-settings [hidden]{display:none}
.catalog-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:16px 0}.catalog-filters label{flex:1;min-width:130px}.catalog-filters select{width:100%}
.catalog-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:14px}
.catalog-result{padding:16px;border-bottom:1px solid var(--line,#26333e);min-width:0}.catalog-result h4{margin:0 0 8px}.catalog-result p{font-size:14px;margin:8px 0;overflow-wrap:anywhere}.catalog-result a{overflow-wrap:anywhere}.catalog-result .catalog-meta{opacity:.7;font-size:12px}.catalog-result button{margin-top:8px}
.account-page textarea{width:100%;box-sizing:border-box;background:var(--user-bg,#080b10);color:var(--user-text,#f2f5f7);border:1px solid #314553;padding:12px;font:inherit}
#source-settings .builtin-source-entry{min-width:0}#source-settings .source-row a{overflow-wrap:anywhere}
