/* Shared website surfaces. Discord profiles and message previews keep their own palette. */
:root{--page-radius:14px;--page-gap:24px;--page-ink:#f4effa;--page-copy:#bcb2c9;--page-edge:#ad86d52e;--page-card:#14111c;--page-focus:#bd9aef}
.main-site #main-content{min-width:0;padding-bottom:48px}
.main-site #main-content :is(.docs-heading,.reviews-title,.status-heading,.catalog-heading,.os-store-heading,.profile-heading){gap:20px;min-width:0}
.main-site #main-content :is(.docs-heading,.reviews-title,.status-heading,.catalog-heading,.os-store-heading,.profile-heading) h1{font-size:clamp(30px,3.6vw,44px);line-height:1.16;letter-spacing:-.035em;text-wrap:balance}
.main-site #main-content :is(.eyebrow,.status-kicker,.os-kicker){font-size:11px;font-weight:650;letter-spacing:.15em;text-transform:uppercase;line-height:1.6}
.main-site #main-content :is(.docs-heading,.reviews-title,.status-heading,.catalog-heading,.os-store-heading,.profile-heading)>p{max-width:65ch;line-height:1.75;color:var(--page-copy)}
.main-site #main-content :is(.auth-content .panel,.panel.narrow,.review-summary,.review-empty,.catalog-empty,.cart-items,.shard-empty){border:1px solid var(--page-edge);border-radius:var(--page-radius);background:var(--page-card);box-shadow:none}
.main-site #main-content :is(.auth-content,.panel.narrow,.cart-items) h1{font-size:clamp(28px,3vw,36px);line-height:1.2;letter-spacing:-.03em;margin-top:0}
.main-site #main-content :is(.auth-content,.panel.narrow) p{line-height:1.7}
.main-site #main-content :is(.auth-content,.panel.narrow) label{font-size:13px;line-height:1.6}
.main-site #main-content :is(.auth-content,.panel.narrow) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){min-height:44px;border-radius:8px}
.main-site #main-content :is(.error,[role=alert]){overflow-wrap:anywhere}
.main-site #main-content :is(p.error,.profile-notice,.review-success,.status-notice){padding:14px 16px;border-radius:10px;line-height:1.65}
.main-site #main-content :is(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--page-focus);outline-offset:3px}
.main-site #main-content :is(.docs-article,.product-overview,.review-entry,.cart-row,.legal){overflow-wrap:anywhere}
.main-site #main-content :is(.review-empty,.catalog-empty,.shard-empty){padding:clamp(24px,4vw,40px);text-align:center}
.main-site #main-content :is(.review-empty,.catalog-empty,.shard-empty)>p{color:var(--page-copy);line-height:1.7;max-width:48ch;margin-inline:auto}
.main-site #main-content :is(.review-empty,.catalog-empty,.shard-empty)>h2{font-size:20px;line-height:1.35;letter-spacing:-.02em}
.page-state{width:min(100%,640px);margin:40px auto;padding:clamp(28px,5vw,48px);border:1px solid var(--page-edge);border-radius:var(--page-radius);background:var(--page-card);text-align:center;min-width:0}
.page-state .page-state-icon{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 24px;border:1px solid var(--page-edge);border-radius:14px;background:#bd9aef0d;color:var(--page-focus)}
.page-state .page-state-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7}
.page-state :is(h1,h2){color:var(--page-ink);font-size:clamp(24px,3vw,30px);line-height:1.25;letter-spacing:-.025em;margin:0 0 14px;text-wrap:balance}
.page-state>p:not(.eyebrow){max-width:46ch;margin:0 auto 24px;color:var(--page-copy);font-size:14px;line-height:1.8}
.page-state .page-state-actions{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px;margin-top:24px}
.page-state .page-state-actions :is(a,button){width:auto;min-height:44px;margin:0;font-size:13px}
.main-site #main-content .blogs-empty{margin-top:40px}
@media(max-width:600px){
 :root{--page-gap:18px}
 .main-site #main-content{padding-bottom:28px}
 .main-site #main-content :is(.reviews-title,.catalog-heading){align-items:flex-start;flex-direction:column}
 .main-site #main-content :is(.review-summary,.cart-items){padding:22px 18px}
 .main-site #main-content :is(.auth-content,.panel.narrow) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){font-size:16px}
 .page-state{margin:24px auto;padding:28px 20px}
 .page-state .page-state-actions{gap:10px}
 .page-state .page-state-actions :is(a,button){flex:1 1 140px}
}

/* Supplied artwork keeps a consistent size in page and card headings. */
body :is(.page-heading,.profile-heading,.status-heading,.catalog-heading,.os-store-heading) h1>img.button-icon{display:inline-block;width:32px;height:32px;min-width:32px;object-fit:contain;vertical-align:middle;margin:0 10px 4px 0}
body .config-feature-top h2>img.button-icon,body .status-support h2>img.button-icon{display:inline-block;width:24px;height:24px;object-fit:contain;vertical-align:middle;margin-right:8px}
body .support-author-artwork{display:inline-block;width:18px;height:18px;object-fit:contain;vertical-align:middle;margin-right:6px}
@media(max-width:600px){body :is(.page-heading,.profile-heading,.status-heading,.catalog-heading,.os-store-heading) h1>img.button-icon{width:28px;height:28px;min-width:28px;margin-right:8px}}

/* Supplied server and permission artwork aligns with the labels it accompanies. */
body .overview-permissions h2>img.button-icon{width:24px;height:24px;min-width:24px;flex:none;object-fit:contain}
body :is(.network-summary,.server-result-metrics,.shard-card) dt>img.button-icon,body .overview-metrics>div>span>img.button-icon{width:16px;height:16px;min-width:16px;flex:none;object-fit:contain}
body .server-choice .server-symbol>img.button-icon{width:30px;height:30px;object-fit:contain}
body .server-license-symbol>img.button-icon{width:22px;height:22px;object-fit:contain}

/* Status panel metrics use white icons; other page details follow the selected accent. */
body .shard-status-page :is(.network-summary,.server-result-metrics,.shard-card,.shard-detail-metrics) svg.button-icon{color:#fff;stroke:currentColor}
body .shard-status-page :is(.network-summary,.server-result-metrics,.shard-card,.shard-detail-metrics) img.button-icon{filter:brightness(0) invert(1);background:transparent;padding:0}
body :is(.dashboard-card-heading,.config-card-top,.config-feature-top,.dashboard-metric,.ticket-stat-label,.command-field-icon,.overview-metrics,.overview-permissions-heading) svg.button-icon,body :is(.page-heading,.profile-heading,.catalog-heading,.os-store-heading,.brand-heading,.editor-heading) :is(h1,h2)>svg.button-icon{color:var(--accent);stroke:currentColor}

/* Match the supplied ticket artwork backing, independent of the accent hue. */
body .button-icon.custom-icon-background{background:rgba(107,107,107,.4)}
html.simple-background,html.simple-background body{background:#050507!important;background-image:none!important}
html.simple-background .site-background{display:none!important}

html.simple-background body>header{background:#050507!important}
