/* Shared finishing rules, derived from the existing home page.
   Loaded after each page's layout. The home page is deliberately untouched. */
body.fd-brand {
  --bg-1:#060a14; --bg-2:#0a1020;
  --surface-solid:#0c1424; --surface-solid-2:#101a2e;
  --text:#eef2f9; --text-secondary:#9fadc6; --muted:#7c8aa6;
  --accent-1:#1160e0; --accent-2:#0a3f9e; --accent-3:#2f7bf5;
  --border:rgba(120,160,235,.16); --border-strong:rgba(120,160,235,.32);
  --r-xs:4px; --r-sm:6px; --r:8px; --r-lg:12px;
  --cui-radius-sm:6px; --cui-radius:8px; --cui-radius-lg:12px;
  --cui-panel:var(--surface-solid); --cui-well:#080f1d;
  --cui-shadow:0 2px 8px #0003; --cui-shadow-lg:0 16px 40px #0008;
  --admin-bg:var(--surface-solid); --admin-text:var(--text); --admin-muted:var(--text-secondary);
  --domains-muted:var(--text-secondary); --domains-border:var(--border);
  color-scheme:dark;
  background:linear-gradient(180deg,#0a1020,#070c18);
  background-attachment:fixed;
  color:var(--text);
  font-family:'Poppins',system-ui,-apple-system,sans-serif;
}
/* Titles carry the hierarchy; decorative frames do not. */
.fd-brand :is(h1,h2,h3) { text-wrap:balance; }
.fd-brand :is(h1,h2) { letter-spacing:-.035em; }
.fd-brand :is(button,input,select,textarea) { font-family:inherit; }
.fd-brand :is(.btn,.cui-btn,.button,.mobile-sidebar-toggle,.sidebar-collapse-btn) {
  border-radius:6px; box-shadow:none; text-shadow:none;
}
.fd-brand :is(.btn,.cui-btn,.button):hover { transform:none; }
.fd-brand :is(.btn-primary,.cui-btn--primary) { background:#1160e0; border-color:#1160e0; color:#fff; }
.fd-brand :is(.btn-primary,.cui-btn--primary):hover { background:#0d51c4; border-color:#2f7bf5; }
.fd-brand :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea) {
  border-radius:6px; border-color:var(--border-strong); box-shadow:none;
}
.fd-brand :is(button,a,input,select,textarea,[tabindex]):focus-visible {
  outline:2px solid #79aaff; outline-offset:3px;
}
.fd-brand :is(.service-card,.billing-card,.profile-card,.mailspace-panel,.mailspace-detail-panel,
 .vpsd-card,.card-lite,.adm2-quick-card,.card,.fin-card,.login-container,.order-card,.pay-card,
 .cmd-created-card,.offer-card,.pack-card,.plan,.mail-price-card,.mail-adv-card,.dp-feature-card,
 .art-card,.team-card,.timeline-card) {
  border-radius:8px; border-color:var(--border); background:var(--surface-solid);
  box-shadow:none; backdrop-filter:none;
}
.fd-brand :is(.service-card,.offer-card,.pack-card,.plan,.mail-price-card,.mail-adv-card,.dp-feature-card,.art-card,.team-card):hover {
  transform:none; box-shadow:none; border-color:var(--border-strong);
}
.fd-brand :is(.cui-modal-card,.admin-modal__card,.mailspace-modal-card,.mailspace-create-modal-card,
 .svc-modal-card,.delete-modal-card,.vps-modal-card,.panel-credentials-card) {
  border-radius:12px; background:#101a2e; border-color:var(--border-strong);
  box-shadow:0 16px 40px #0009;
}
/* Client navigation keeps its existing fixed/mobile behavior. */
.fd-brand :is(.client-nav-card,.client-sidebar) {
  background:#0c1424; border-color:var(--border); border-radius:0; box-shadow:none;
}
.fd-brand :is(.client-nav-link,.client-nav-group-toggle,.admin-sec-list .nav-btn) {
  border-radius:4px; border-color:transparent; background:transparent;
  box-shadow:none; font-weight:600; transform:none;
}
.fd-brand :is(.client-nav-link,.admin-sec-list .nav-btn):hover { background:#ffffff06; transform:none; }
.fd-brand :is(.client-nav-link.is-active,.client-nav-link.active,.admin-sec-list .nav-btn.active) {
  background:#1160e01f; border-color:transparent; box-shadow:inset 3px 0 #2f7bf5; color:#f3f6ff;
}
.fd-brand :is(.services-hero,.billing-hero,.domains-hero) {
  background:transparent; box-shadow:none; border:0; border-bottom:1px solid var(--border);
  border-radius:0; padding:0 0 1.5rem; margin-bottom:1.5rem;
}
.fd-brand :is(.services-content,.billing-content,.domains-content,.mailspace-content,.client-content) { min-width:0; }
.fd-brand :is(.service-name,.profile-card h2,.mailspace-panel h2) { font-weight:600; }
.fd-brand .service-card { padding:1.25rem; gap:1rem; }
.fd-brand .service-cover { border-radius:6px; background:#ffffff03; }
.fd-brand .service-details { gap:0; border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.fd-brand .service-info { background:transparent; border:0; border-radius:0; padding:.75rem .75rem .75rem 0; box-shadow:none; }
.fd-brand .service-actions { border:0; padding-top:.5rem; }
.fd-brand .services-hero { text-align:left; }
.fd-brand :is(.wd-bar,.vpsd-head) { border-radius:0; background:transparent; border:0; border-bottom:1px solid var(--border); box-shadow:none; }
.fd-brand :is(.wd-rail,.wd-placeholder,.info-item,.account-service,.account-custom,.glass) { border-radius:8px; box-shadow:none; border-color:var(--border); }
.fd-brand .info-item { background:transparent; border:0; border-bottom:1px solid var(--border); border-radius:0; min-height:0; padding:.8rem 0; }
.fd-brand .profile-top-tabs { flex-wrap:wrap; overflow:visible; }
.fd-brand .profile-tab-btn { border-radius:4px; font-weight:600; box-shadow:none; }
/* Public introductions share the home page's left edge and reading rhythm. */
.fd-public :is(.mail-page,.dp-page,.faq-page,.payment-page,.arts,.page) {
  max-width:1240px; margin-left:auto; margin-right:auto;
  padding-left:clamp(20px,4vw,32px); padding-right:clamp(20px,4vw,32px);
}
.fd-public :is(.mail-hero,.dp-hero,.faq-hero,.payment-hero,.intro) {
  text-align:left; background:transparent; border-radius:0; box-shadow:none;
}
.fd-public :is(.mail-hero,.dp-hero,.faq-hero,.payment-hero,.intro) h1 {
  font-size:clamp(2rem,3.8vw,3.4rem); line-height:1.12; max-width:24ch;
  margin-left:0; margin-bottom:1rem; color:var(--text); -webkit-text-fill-color:currentColor;
}
.fd-public :is(.mail-hero,.dp-hero,.faq-hero,.payment-hero,.intro)>p {
  max-width:66ch; margin-left:0; color:var(--text-secondary); line-height:1.75;
}
.fd-public :is(.mail-kicker,.dp-kicker,.eyebrow,.order-kicker) {
  background:transparent; border:0; padding:0; border-radius:0; color:var(--accent-3);
}
.fd-public :is(.mail-price-card.reco,.pack-card.featured,.plan.featured) { border-color:var(--accent-1); transform:none; }
.fd-public :is(.mail-price-tag,.offer-card-pill) { border-radius:4px; box-shadow:none; }
.fd-public :is(.faq-group,.faq-item) { border-radius:6px; box-shadow:none; }
.fd-public .mail-adv-card { background:transparent; border-width:0 0 1px; border-radius:0; }
.fd-public :is(.panel-input,.panel-methods,.method-card) { border-radius:8px; box-shadow:none; background:var(--surface-solid); }
.fd-public .mail-hero { border:0; padding-left:0; padding-right:0; }
.fd-public .mail-promo-bubble { border-radius:4px; background:#1160e00d; border-color:var(--border); box-shadow:none; font-weight:600; }
.fd-public .mail-promo-bubble::before { display:none; }
.fd-public .stripe-btn,.fd-public .stripe-btn:hover:not(:disabled) { background:#1160e0; border-radius:6px; box-shadow:none; transform:none; }
.fd-public .stripe-save-label input[type=checkbox] { accent-color:#1160e0; }
/* These three information-dialog controls have legacy inline purple styles. */
.fd-public :is(#min-amount-close,#auto-renewal-info-close,#saved-card-info-close) { background:#1160e0!important; border-radius:6px!important; }
/* Long guides read as articles, with separators rather than a card per paragraph. */
.fd-legal main { max-width:960px; background:transparent; border:0; box-shadow:none; border-radius:0; }
.fd-legal main section { background:transparent; border:0; border-top:1px solid var(--border); box-shadow:none; border-radius:0; padding:1.75rem 0; }
.fd-legal main h1 { text-align:left; max-width:28ch; font-size:clamp(1.8rem,3vw,2.7rem); line-height:1.2; }
.fd-legal main :is(p,ul,ol) { text-align:left; line-height:1.8; color:#b9c5d9; }
.fd-legal nav.toc { border-radius:0; border:0; border-left:2px solid var(--accent-1); background:#1160e008; padding:1rem 1.25rem; }
/* Authentication remains a compact form, with the same mark and materials. */
.fd-auth { box-sizing:border-box; padding:24px; }
.fd-auth #stars-container { display:none; }
.fd-auth .login-container { width:100%; max-width:440px; padding:clamp(24px,5vw,36px); border:1px solid var(--border); border-top:3px solid var(--accent-1); }
.fd-auth .login-container :is(input:not([type=checkbox]),button) { box-sizing:border-box; max-width:100%; }
.fd-auth .login-container button { border-radius:6px; box-shadow:none; }
/* Administration: one workspace, fewer nested frames. */
.fd-admin .admin-dashboard { background:transparent; border:0; border-radius:0; box-shadow:none; backdrop-filter:none; padding:clamp(16px,2.2vw,32px); }
.fd-admin .panel { background:transparent; border:0; border-radius:0; padding:0; box-shadow:none; }
.fd-admin .client-shell .client-nav-card { background:#0c1424; border-radius:0; box-shadow:none; }
.fd-admin .admin-sec-foot a { border-radius:4px; }
.fd-admin :is(#list-panel > .card,#services-panel > .card,#dns-panel) { overflow-x:auto; max-width:100%; }
.fd-admin :is(.account-shortcuts a,.account-service,.account-custom) { border-radius:6px; background:var(--surface-solid); }
.fd-admin .admin-hero { padding-bottom:1.25rem; gap:1rem; }
.fd-admin .admin-hero h1 { font-size:clamp(1.6rem,2.5vw,2.2rem); }
.fd-admin :is(.admin-hero,.panel-header,.fin-heading) { text-align:left; }
.fd-admin .panel-header { margin-bottom:1.25rem; }
.fd-admin :is(.card-lite,.fin-card) { padding:1.15rem; }
.fd-admin .fin-eyebrow { color:var(--accent-3); letter-spacing:.07em; }
.fd-admin .fin-heading>div>p { color:var(--text-secondary); }
.fd-admin #fin-status { background:#1160e012; border-left:2px solid #2f7bf5; border-radius:0; color:#bac9de; }
.fd-admin #fin-status[data-error=true] { background:#ff4d4d0d; border-color:#ff4d4d; color:#ffb7b7; }
.fd-admin .fin-kpis { gap:0; border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.fd-admin .fin-kpis article { background:transparent; border:0; border-right:1px solid var(--border); border-radius:0; padding:1.1rem; }
.fd-admin .fin-kpis article:last-child { border-right:0; }
.fd-admin .fin-kpis strong { font-weight:600; }
.fd-admin :is(.fin-in,.fin-tooltip .fin-in) { color:#35c96b; }
.fd-admin :is(.fin-out,.fin-tooltip .fin-out) { color:#ffb020; }
.fd-admin #finance-panel button { border-radius:6px; background:#101a2e; border-color:var(--border-strong); font-weight:600; }
.fd-admin #finance-panel #fin-refresh { background:#1160e0; border-color:#1160e0; }
.fd-admin .fin-tooltip { border-radius:8px; background:#101a2e; border-color:var(--border-strong); font-family:inherit; }
.fd-admin #finance-panel th { background:#101a2e; }
.fd-admin :is(.fin-filters input,.fin-filters select) { background:#080f1d; }
@media(max-width:700px) {
  .fd-public :is(.mail-page,.dp-page,.faq-page,.payment-page,.arts,.page) { padding-left:20px; padding-right:20px; }
  .fd-brand :is(.service-card,.profile-card,.billing-card) { padding:1rem; }
  .fd-brand .service-info { padding:.65rem .4rem .65rem 0; }
  .fd-client .service-card { display:grid; grid-template-columns:48px minmax(0,1fr); align-items:start; gap:.9rem; }
  .fd-client .service-body { display:contents; }
  .fd-client .service-cover { grid-column:1; grid-row:1; }
  .fd-client .service-top { grid-column:2; flex-direction:column; align-items:flex-start; gap:.45rem; }
  .fd-client :is(.service-status,.service-details,.service-actions) { grid-column:1 / -1; }
  .fd-client .service-details { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .fd-client .service-info { min-width:0; overflow-wrap:anywhere; }
  .fd-client .service-info span { font-size:.6rem; letter-spacing:.02em; }
  .fd-client .service-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fd-client .service-actions>:first-child { grid-column:1 / -1; }
  .fd-client .service-actions>* { min-width:0; min-height:42px; display:flex; justify-content:center; align-items:center; font-size:.73rem; }
  .fd-brand .profile-top-tabs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fd-brand .profile-tab-btn { min-width:0; min-height:40px; white-space:normal; text-align:left; }
  .fd-admin .admin-dashboard { padding:16px; }
  .fd-admin .fin-kpis article { padding:.85rem; }
  .fd-admin .fin-kpis article:nth-child(2) { border-right:0; }
  .fd-admin .fin-kpis article:nth-child(-n+2) { border-bottom:1px solid var(--border); }
  .fd-admin .fin-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fd-brand :is(.panel-header,.fin-heading) { gap:.75rem; }
  .fd-legal main { padding-left:20px; padding-right:20px; }
}
@media(prefers-reduced-motion:reduce) {
  .fd-brand *, .fd-brand *::before, .fd-brand *::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
}

/* Readable, touch-friendly controls without increasing the size of every card. */
.fd-brand .client-nav-link { min-height:44px; }
.fd-brand :is(input,select,textarea) { accent-color:var(--accent-3); }
.fd-brand :is(.service-info strong,.fin-kpis strong) { font-variant-numeric:tabular-nums; }
@media(max-width:700px) {
  .fd-brand :is(main.services-page,main.mailspace-page,main.domains-page,main.billing-page,main.client-page) { padding-top:1rem; }
  .fd-brand :is(.services-hero,.billing-hero,.domains-hero) { margin-bottom:1rem; padding-bottom:1rem; }
  .fd-brand :is(.services-hero,.billing-hero,.domains-hero,.svc-head) h1 { font-size:1.7rem; line-height:1.2; }
  .fd-brand :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]),select,textarea) { font-size:16px; }
  .fd-brand :is(.cui-btn,.btn,.sd-btn,.profile-tab-btn,.mailspace-tab-btn) { min-height:44px; }
  .fd-brand :is(.cui-modal-card,.admin-modal__card,.mailspace-modal-card,.mailspace-create-modal-card,.svc-modal-card,.delete-modal-card,.vps-modal-card,.panel-credentials-card) { max-width:calc(100vw - 24px); max-height:calc(100dvh - 32px); overflow-y:auto; box-sizing:border-box; padding:1rem; }
  .fd-brand :is(.mailspace-panel,.mailspace-detail-panel,.profile-card,.billing-card) { padding:1rem; }
}
