/* Canonical Portal navigation. Geometry is shared by Home and module menus. */
.portal-menu-page .portal-menu-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; align-items:stretch; }
.portal-menu-page .portal-menu-card { display:flex; flex-direction:row; align-items:center; gap:16px; min-width:0; min-height:88px; padding:20px 22px; border:1px solid transparent; border-radius:var(--portal-radius,8px); background:var(--portal-surface); color:var(--portal-text); box-shadow:var(--portal-shadow); text-decoration:none; cursor:pointer; transition:transform .18s ease,box-shadow .18s ease; }
.portal-menu-card[hidden] { display:none !important; }
.portal-menu-page .portal-menu-icon { display:flex; align-items:center; justify-content:center; flex:0 0 46px; width:46px; height:46px; border-radius:50%; color:#fff; }
.portal-menu-page .portal-menu-text { display:block; min-width:0; }
.portal-menu-page .portal-menu-text h3 { margin:0 0 4px; font-size:17px; font-weight:600; line-height:1.3; letter-spacing:0; color:var(--portal-text); }
.portal-menu-page .portal-menu-text p { margin:0; font-size:13px; font-weight:400; line-height:1.35; color:var(--portal-muted); overflow-wrap:anywhere; }
.portal-menu-page .portal-menu-card:focus-visible { outline:3px solid var(--portal-blue); outline-offset:3px; }
.portal-menu-page .portal-menu-card:hover { transform:translateY(-2px); box-shadow:var(--portal-shadow-hover); }
.portal-menu-page .portal-menu-card.is-launching { opacity:.72; pointer-events:none; }
.portal-menu-page .portal-menu-card.has-inline-actions { cursor:default; }
.portal-menu-page .portal-menu-card.has-inline-actions:hover { transform:none; }
.portal-menu-page .portal-menu-card[data-portal-card="notion"] .portal-menu-icon { background:var(--portal-text); color:var(--portal-surface) !important; }
.portal-menu-page .portal-menu-card[data-portal-card="health"] .portal-menu-icon { background:linear-gradient(135deg,#0891b2,#06b6d4); }
.portal-menu-page .portal-menu-card[data-portal-card="calendar"] .portal-menu-icon { background:linear-gradient(135deg,#7c3aed,#a855f7); }
@media (max-width:768px) { .portal-menu-page .portal-menu-grid { grid-template-columns:minmax(0,1fr); } }
@media (prefers-reduced-motion:reduce) { .portal-menu-page .portal-menu-card { transition:none; } .portal-menu-page .portal-menu-card:hover { transform:none; } }

/* Keep the canonical menu geometry independent of legacy mobile card overrides. */
.portal-menu-page .portal-menu-card .portal-menu-icon { width:46px !important; height:46px !important; flex-basis:46px !important; }
.portal-menu-page .portal-menu-card .portal-menu-text h3 { font-size:17px !important; font-weight:600 !important; }
.portal-menu-page .portal-menu-card .portal-menu-text p { font-size:13px !important; }
