/* Owner Access home (cloud-ui.js ownerHome): four main cards, a quieter Administration list, and "Enter an area" kept apart.
   Navy, warm white, restrained gold. Loaded after the other style sheets. */
.od { max-width: 1040px; }
.od-head h1 { margin: 0 0 4px; }
.od-head .lede { margin: 0 0 20px; color: #3B434C; }
.od-main { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 0 0 32px; }
.od-card { display: flex; flex-direction: column; gap: 8px; background: #FFFDF6; border: 1px solid #DCD3BD; border-top: 3px solid var(--navy, #0E2B3E); border-radius: 14px; padding: 18px 20px 20px; }
.od-card.od-lessons { border-top-color: var(--brass, #E9A92B); }
.od-card-top { display: flex; align-items: center; gap: 12px; }
.od-card h2 { font-size: 1.3rem; margin: 0; color: var(--navy, #0E2B3E); }
.od-ic { flex: none; display: inline-grid; place-items: center; width: 40px; height: 40px; border-radius: 10px; background: #EEF2F6; color: var(--navy, #0E2B3E); }
.od-ic svg { width: 22px; height: 22px; }
.od-lessons .od-ic { background: #FCF1D8; color: #7A5408; }
.od-desc { margin: 0; font-size: 1.02rem; line-height: 1.45; color: #2B323A; }
.od-meta { margin: 0; font-size: .95rem; color: #55606C; font-weight: 600; }
.od-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: auto; padding-top: 6px; }
.od-actions .btn { min-height: 46px; }
.od h2#od-admin-h, .od h2#od-enter-h { font-size: 1.15rem; margin: 0 0 10px; color: var(--navy, #0E2B3E); }
.od-admin { margin: 0 0 32px; }
.od-rows { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.od-row { display: flex; align-items: center; gap: 12px; min-height: 64px; padding: 10px 14px; background: #FFFDF6; border: 1px solid #DCD3BD; border-radius: 12px; color: #1d2430; text-decoration: none; }
.od-row:hover, .od-area:hover { border-color: var(--navy, #0E2B3E); }
.od-row .od-ic { width: 36px; height: 36px; }
.od-row-text { display: grid; gap: 2px; flex: 1 1 auto; min-width: 0; }
.od-row-text b { font-size: 1rem; }
.od-row-text span { font-size: .92rem; color: #55606C; }
.od-count { flex: none; min-width: 28px; height: 28px; padding: 0 8px; display: inline-grid; place-items: center; border-radius: 99px; background: var(--brass, #E9A92B); color: #1d2430; font-weight: 800; }
.od-chev { flex: none; width: 20px; height: 20px; color: #6B7580; }
.od-enter { padding: 18px 20px 20px; border-radius: 14px; background: var(--navy, #0E2B3E); color: #F6F3EA; }
.od-enter h2#od-enter-h { color: #fff; }
.od-enter-note { margin: 0 0 14px; color: #D5DCE3; line-height: 1.45; }
.od-enter-note b { color: #fff; }
.od-areas { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.od-area { display: flex; flex-direction: column; gap: 4px; padding: 14px 16px; border-radius: 12px; border: 1px solid rgba(255,255,255,.22); background: rgba(255,255,255,.05); color: #F6F3EA; text-decoration: none; }
.od-area b { font-size: 1.05rem; color: #fff; }
.od-area span { font-size: .95rem; line-height: 1.4; color: #D5DCE3; }
.od-area .od-area-go { margin-top: 6px; color: var(--brass-light, #F4C95A); font-weight: 700; }
.od-area:hover, .od-area:focus-visible { border-color: var(--brass-light, #F4C95A); background: rgba(255,255,255,.09); }
.od a:focus-visible { outline: 3px solid var(--brass, #E9A92B); outline-offset: 2px; }
@media (max-width: 720px) {
  .od-main, .od-rows, .od-areas { grid-template-columns: 1fr; }
  .od-main { gap: 12px; margin-bottom: 26px; }
  .od-card { padding: 16px; }
  .od-actions .btn { flex: 1 1 auto; text-align: center; justify-content: center; }
  .od-enter { padding: 16px; }
}
/* one gold call to action per screen; the other main cards use navy so the page does not shout */
.od-card:not(.od-lessons) .btn-brass { background: var(--navy, #0E2B3E); border-color: var(--navy, #0E2B3E); color: #fff; }
.od-card:not(.od-lessons) .btn-brass:hover { background: var(--navy-2, #153A52); }
.od-actions .btn-quiet { background: transparent; border: 1.5px solid #9AA5B1; color: var(--navy, #0E2B3E); }

/* Quieter top bar on signed-in pages: warm white with navy text, so the page content leads.
   The public entry pages (door-mode) keep their navy bar. */
body:not(.door-mode) .sitebar { background: #FBF7EA; color: var(--navy, #0E2B3E); border: 1px solid #E2DAC6; box-shadow: none; }
body:not(.door-mode) .sitebar .menu-btn, body:not(.door-mode) .sitebar .sb-home, body:not(.door-mode) .sitebar .sb-owner {
  background: transparent; color: var(--navy, #0E2B3E); border: 1px solid transparent; font-weight: 600; font-size: 14px; min-height: 40px; padding: 0 10px; border-radius: 8px; }
body:not(.door-mode) .sitebar .sb-owner { border-color: #CFC6B1; }
body:not(.door-mode) .sitebar .menu-btn:hover, body:not(.door-mode) .sitebar .sb-home:hover, body:not(.door-mode) .sitebar .sb-owner:hover,
body:not(.door-mode) .sitebar .menu-btn:focus-visible, body:not(.door-mode) .sitebar .sb-home:focus-visible, body:not(.door-mode) .sitebar .sb-owner:focus-visible { background: #F1EBDB; border-color: #B9AF97; }
body:not(.door-mode) .sitebar .sb-home svg { stroke: currentColor; }
