.role-heading .page-title{margin-bottom:18px}.role-links{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0 22px}.role-links a{font-size:13px;font-weight:700;border:1px solid var(--line,#dce5e4);padding:10px 12px;border-radius:7px}.role-links a:hover,.role-links a:focus-visible{background:#e5f3ed}.role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}.role-tile{border:1px solid #d8e3df;background:#fff;border-radius:12px;padding:24px;display:flex;flex-direction:column}.role-tile h2{margin:12px 0 8px;font-size:28px}.role-tile p{font-size:14px;line-height:1.6;flex:1}.role-disclosure{margin-top:16px}.role-order-list{display:grid;gap:20px;margin:22px 0}.role-order-card{margin:0;min-width:0}.role-order-card .order-top{align-items:flex-start;gap:12px;flex-wrap:wrap}.role-order-card h2{font-size:23px}.role-order-card .receipt-row{gap:16px;padding:12px 0}.role-order-card .receipt-row strong{text-align:right;overflow-wrap:anywhere}.role-order-card .receipt-row span{max-width:65%}.role-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.role-actions button,.role-actions a{font-size:13px;min-height:44px}.role-clock{border:1px solid #d8e3df;padding:20px;border-radius:12px;background:#f5f8f5;margin-top:24px}.role-clock h2{font-size:22px;margin:0}.role-clock p{font-size:14px;line-height:1.5}.role-browse{margin:6px 0}.demo-route{margin:18px 0;background:#f1f6f2;border:1px solid #d8e3df;border-radius:12px;padding:14px}.demo-route svg{display:block;width:100%;height:auto}.route-endpoints{display:flex;justify-content:space-between;font-size:12px;font-weight:700;gap:16px}.demo-route figcaption{font-size:11px;color:#4e655d;line-height:1.5;margin-top:12px}.sample-contact{background:#f6f4ee;padding:14px;margin:16px 0;border-radius:8px}.sample-contact h3{margin:0;font-size:17px}.sample-contact p{font-size:14px;line-height:1.5}.role-order-card .receipt{margin-top:18px}.role-order-card .receipt-note{line-height:1.6;font-size:12px}@media(max-width:600px){.role-grid{grid-template-columns:1fr}.role-tile{padding:20px}.role-order-card{padding:18px}.role-order-card .order-top h2{font-size:21px}.role-links{gap:7px}.role-links a{font-size:12px;padding:10px}.role-order-card .status-pill{white-space:normal}.role-actions .primary{width:100%;justify-content:center}.role-heading .page-title{font-size:46px}}

/* These panels are light even when the surrounding app uses its dark theme. */
.role-tile,
.role-clock,
.sample-contact,
.demo-route {
  color: #0a1f2b;
  color-scheme: light;
}
.role-tile h2,
.role-clock h2,
.sample-contact h3,
.route-endpoints {
  color: #0a1f2b;
}
.role-tile p,
.role-tile .eyebrow,
.role-clock p,
.sample-contact p,
.sample-contact .receipt-note,
.demo-route figcaption {
  color: #425c66;
}
.role-links a {
  background: #122d3c;
  color: #f8f7f1;
  border-color: #526d7a;
}
.role-links a:hover,
.role-links a:focus-visible {
  background: #254451;
  color: #ffffff;
  border-color: #8ca3ae;
}
.role-links a:focus-visible {
  outline: 3px solid #ffda00;
  outline-offset: 3px;
}
/* The full wordmark fits the desktop rail; the collapsed rail retains its icon. */
@media (min-width: 1001px) {
  .sidebar .brand {
    min-width: 0;
    width: 100%;
    gap: 0;
    font-size: 30px;
    letter-spacing: 0;
    line-height: 1;
    white-space: nowrap;
  }
  .sidebar .brand-mark {
    display: none;
  }
}
@media (max-width: 700px) {
  .mobile-brand {
    font-size: clamp(22px, 6.7vw, 29px);
    white-space: nowrap;
    flex: 0 0 auto;
  }
}

/* Supplied printed menus retain the app's dark palette and source caveats. */
.supplied-menu-heading .restaurant-facts{flex-wrap:wrap;gap:8px}
.supplied-menu-cover{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:130px;border:1px solid #526d7a;border-radius:16px;background:#122d3c;color:#ffda00;text-align:center;padding:14px}
.supplied-menu-cover strong{font-family:var(--display);font-size:64px;line-height:1}
.supplied-menu-cover span{font-size:10px;line-height:1.5;color:#c0d0d8;letter-spacing:1px}
.supplied-category-picker{max-width:440px;margin:24px 0}
.supplied-source-notes{color:#c2cfd5;line-height:1.65}
.supplied-source-notes summary{color:#f8f7f1}
.supplied-source-notes ul{padding-left:20px}
.supplied-source-notes li{margin:9px 0;font-size:12px}
.supplied-category{margin:32px 0}
.supplied-category-heading{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:16px 0;border-bottom:2px solid #526d7a}
.supplied-category-heading h2{color:#f8f7f1;font-size:28px;scroll-margin-top:20px}
.supplied-category-heading>span{color:#c0d0d8;font-size:12px;white-space:nowrap}
.source-dietary{display:inline-block;border:1px solid #526d7a;border-radius:8px;padding:5px 8px;font-size:10px;line-height:1.4;margin-bottom:10px;color:#cbd8df;background:#203847}
.source-dietary.source-veg{color:#dbefbc;background:#304947;border-color:#6e8c76}
.source-dietary.source-nonveg{color:#ffd0bc;background:#542f32;border-color:#b57969}
.supplied-menu-item-copy{flex:1;min-width:0}
.supplied-menu-item .printed-restriction{font-size:12px;line-height:1.6;margin:10px 0;color:#ffdf8c}
.supplied-menu-item .allergens{line-height:1.6}
.supplied-menu-image{margin:0;flex:0 0 100px;text-align:center}
.supplied-menu-image img{display:block;width:100px;height:100px;object-fit:cover;border-radius:12px;background:#122d3c}
.supplied-menu-image figcaption{font-size:10px;color:#c0d0d8;margin-top:6px}
@media(max-width:600px){.supplied-menu-cover{min-height:110px;padding:10px}.supplied-menu-cover strong{font-size:48px}.supplied-menu-cover span{font-size:8px}.supplied-category-heading h2{font-size:25px}.supplied-menu-item{flex-wrap:wrap;align-items:flex-start}.supplied-menu-image{flex-basis:72px}.supplied-menu-image img{width:72px;height:72px}.supplied-menu-item .item-action{margin-left:auto}.supplied-menu-item-copy{min-width:140px}}
