/* Main-portal launcher only. Billing, documents and mobile services are untouched. */
.system-menu {
    --menu-ink: #edf1f7;
    --menu-muted: #b8c4d6;
    --menu-line: #3c4659;
    --menu-surface: #1b2433;
    margin-block: 2rem;
    color: var(--menu-ink);
}
.system-menu__heading { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1rem; }
.system-menu__heading h2 { margin:0; color:var(--menu-ink); font-size:1.25rem; line-height:1.5; font-weight:600; }
.system-menu__tools { display:flex; align-items:center; gap:1rem; color:var(--menu-muted); font-size:.8125rem; }
.system-menu__refresh { display:inline-flex; align-items:center; justify-content:center; gap:.5rem; min-height:44px; padding:.5rem .75rem; border:1px solid #647187; border-radius:6px; color:var(--menu-ink); background:transparent; cursor:pointer; font:inherit; transition:background-color 160ms ease-out; }
.system-menu__refresh svg { width:1rem; height:1rem; }
.system-menu__refresh:hover { background:#2b3749; }
.system-menu__refresh:disabled { cursor:wait; color:var(--menu-muted); }
.system-menu-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1px; padding:1px; margin:0; list-style:none; background:var(--menu-line); border-radius:12px; overflow:hidden; }
.system-menu-grid > li { min-width:0; display:flex; }
.system-card { --accent:#d4deeb; display:flex; flex-direction:column; width:100%; min-width:0; padding:1.5rem; border:0; border-radius:0; color:var(--menu-ink); background:var(--menu-surface); text-align:left; cursor:pointer; font:inherit; touch-action:manipulation; transition:background-color 160ms ease-out; }
.system-card--xgl { --accent:#ccb5ed; }
.system-card--tel { --accent:#e0c28a; }
.system-card__content { display:flex; flex-direction:column; flex:1; width:100%; }
.system-card__title { display:block; font-size:1.125rem; line-height:1.5; font-weight:600; color:var(--accent); }
.system-card__meta { display:block; margin-top:.375rem; color:var(--menu-muted); font-size:.8125rem; line-height:1.6; }
.system-card__summary { display:flex; flex-direction:column; gap:.75rem; margin-top:1.5rem; flex:1; }
.system-card__metrics { display:flex; flex-direction:column; gap:.5rem; color:var(--menu-muted); font-size:.8125rem; line-height:1.5; }
.system-card__metrics[hidden] { display:none; }
.system-card__metrics > span { display:flex; align-items:baseline; gap:.6rem; }
.system-card__metrics b { min-width:1.4ch; color:var(--menu-ink); font-size:1.25rem; line-height:1.3; font-weight:600; font-variant-numeric:tabular-nums; }
.system-card__scope { display:block; margin-top:auto; padding-top:.25rem; color:var(--menu-muted); font-size:.75rem; line-height:1.6; overflow-wrap:anywhere; }
.system-card[data-summary-state="unavailable"] .system-card__scope { margin-top:0; color:#e3c99e; }
.system-card__action { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:1.25rem; padding-top:1rem; border-top:1px solid var(--menu-line); color:var(--menu-ink); font-size:.8125rem; line-height:1.5; font-weight:500; }
.system-card__action svg { width:1.125rem; height:1.125rem; flex-shrink:0; }
.system-card:focus-visible { outline:3px solid #c0d5fc; outline-offset:-4px; }
.system-menu__refresh:focus-visible { outline:3px solid #c0d5fc; outline-offset:3px; }
.system-card:active { background:#303d51; }
.system-menu__sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.system-menu ::selection { color:#172132; background:#d3deee; }
@media (hover:hover) and (pointer:fine) { .system-card:hover { background:#253247; } }
@media (max-width:1200px) and (min-width:761px) { .system-card { padding:1.125rem .875rem; } }
@media (max-width:1000px) and (min-width:761px) {
    .system-menu-grid { grid-template-columns:repeat(6,minmax(0,1fr)); }
    .system-menu-grid > li { grid-column:span 2; }
    .system-menu-grid > li:nth-last-child(-n+2) { grid-column:span 3; }
}
@media (max-width:760px) {
    .system-menu__heading { flex-direction:column; align-items:stretch; gap:.75rem; }
    .system-menu__tools { justify-content:space-between; gap:.75rem; }
    .system-menu-grid { grid-template-columns:1fr; }
    .system-card { padding:1.25rem; }
    .system-card__content { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:.25rem 1rem; }
    .system-card__title { grid-column:1; align-self:end; }
    .system-card__meta { grid-column:1; margin:0; }
    .system-card__summary { grid-column:2; grid-row:1 / 3; margin:0; gap:.5rem; }
    .system-card__metrics { gap:.35rem; }
    .system-card__metrics b { font-size:1.125rem; }
    .system-card__scope { margin:0; padding:0; }
    .system-card__action { margin-top:1rem; padding-top:.75rem; }
}
@media (max-width:380px) {
    .system-card { padding:1rem; }
    .system-card__content { grid-template-columns:1fr; gap:.25rem; }
    .system-card__summary { grid-column:1; grid-row:auto; margin-top:.75rem; }
    .system-card__metrics { flex-direction:row; flex-wrap:wrap; gap:.5rem 1rem; }
    .system-menu__tools { font-size:.75rem; }
}
@media (prefers-reduced-motion:reduce) { .system-card,.system-menu__refresh { transition:none; } }
@media (forced-colors:active) {
    .system-menu-grid { background:Canvas; border:1px solid ButtonText; }
    .system-card { border:1px solid ButtonText; color:ButtonText; }
    .system-card__title,.system-card__meta,.system-card__metrics,.system-card__metrics b,.system-card__scope,.system-card__action { color:ButtonText; }
    .system-card__action,.system-menu__refresh { border-color:ButtonText; }
    .system-card:focus-visible,.system-menu__refresh:focus-visible { outline-color:Highlight; }
}
