/*
 * OceanEye Nimble (0.3.0): the cam-down apology, in the player's place. Mobile first,
 * the site palette: a sand panel, ink text, the deep-ocean button.
 */
.oe-camdown { display: block; width: 100%; margin: 0 0 12px; color: #07191D; font-family: var(--e-global-typography-text-font-family, "Nunito Sans"), system-ui, sans-serif; text-align: center; }
.oe-camdown[hidden] { display: none; }
.oe-camdown .oe-camdown__inner { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; min-height: 220px; padding: 24px 18px; border-radius: 14px; background-color: #F4E7C7; }
.oe-camdown .oe-camdown__mascot { display: block; width: 92px; margin: 0 auto 4px; }
.oe-camdown .oe-camdown__mascot svg { display: block; width: 100%; height: auto; }
.oe-camdown h2.oe-camdown__title { margin: 0; padding: 0; color: #07191D; font-family: inherit; font-size: 1.3rem; line-height: 1.2; font-weight: 800; text-transform: none; letter-spacing: 0; text-wrap: balance; }
.oe-camdown p.oe-camdown__lede { margin: 0; max-width: 46ch; color: #07191D; font-size: 0.95rem; line-height: 1.45; }
.oe-camdown p.oe-camdown__note { margin: 6px 0 0; max-width: 46ch; padding: 8px 12px; border-radius: 10px; background-color: #FDF8EC; color: #44565A; font-size: 0.9rem; line-height: 1.4; }
.oe-camdown p.oe-camdown__acts { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 12px 0 0; }
.oe-camdown a.oe-camdown__btn { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 18px; border: 2px solid #005F80; border-radius: 999px; background-color: #005F80; color: #FFFFFF; font-size: 0.9rem; font-weight: 800; text-decoration: none; }
.oe-camdown a.oe-camdown__btn--ghost { background-color: transparent; color: #07191D; border-color: #07191D; }
.oe-camdown a.oe-camdown__btn:focus-visible { outline: 3px solid #005F80; outline-offset: 2px; }
/* The player it stands in for, while the cam is down (oe-cam-down.js marks it). */
[data-oe-cam-hidden] { display: none; }
@media (min-width: 768px) {
	.oe-camdown .oe-camdown__inner { aspect-ratio: 16 / 9; min-height: 0; padding: 28px; }
	.oe-camdown .oe-camdown__mascot { width: 110px; }
	.oe-camdown h2.oe-camdown__title { font-size: 1.5rem; }
}
/* 0.4.0: the cam is up but this viewer can't play it: the same panel, with a checklist. */
.oe-camhelp { display: block; width: 100%; margin: 0 0 12px; color: #07191D; font-family: var(--e-global-typography-text-font-family, "Nunito Sans"), system-ui, sans-serif; }
.oe-camhelp[hidden], .oe-camhelp .oe-camhelp__kind[hidden] { display: none; }
.oe-camhelp .oe-camhelp__inner { display: flex; flex-direction: column; justify-content: center; gap: 8px; min-height: 220px; padding: 22px 18px; border-radius: 14px; background-color: #F4E7C7; }
.oe-camhelp h2.oe-camhelp__title { margin: 0; padding: 0; color: #07191D; font-family: inherit; font-size: 1.2rem; line-height: 1.25; font-weight: 800; text-transform: none; letter-spacing: 0; text-wrap: balance; }
.oe-camhelp p.oe-camhelp__lede { margin: 4px 0 0; max-width: 52ch; color: #07191D; font-size: 0.95rem; line-height: 1.45; }
.oe-camhelp ul.oe-camhelp__tips { margin: 8px 0 0; padding: 0 0 0 20px; max-width: 52ch; color: #07191D; font-size: 0.92rem; line-height: 1.45; list-style: disc; }
.oe-camhelp ul.oe-camhelp__tips li { margin: 0 0 4px; }
.oe-camhelp p.oe-camhelp__acts { margin: 10px 0 0; }
.oe-camhelp a.oe-camdown__btn { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 18px; border: 2px solid #005F80; border-radius: 999px; background-color: #005F80; color: #FFFFFF; font-size: 0.9rem; font-weight: 800; text-decoration: none; }
.oe-camhelp a.oe-camdown__btn:focus-visible { outline: 3px solid #005F80; outline-offset: 2px; }
/* Too slow: a note above the player, which stays. */
.oe-camhelp.oe-camhelp--note .oe-camhelp__inner { min-height: 0; padding: 14px 16px; }
@media (min-width: 768px) {
	.oe-camhelp .oe-camhelp__inner { aspect-ratio: 16 / 9; min-height: 0; padding: 28px 36px; }
	.oe-camhelp.oe-camhelp--note .oe-camhelp__inner { aspect-ratio: auto; padding: 14px 18px; }
	.oe-camhelp h2.oe-camhelp__title { font-size: 1.4rem; }
}
/* 0.7.0: the cam status note editor, administrators only. A quiet strip above the player. */
.oe-camnote { display: block; margin: 0 0 12px; padding: 10px 14px; border: 1px dashed #005F80; border-radius: 12px; background-color: #FDF8EC; color: #07191D; font-family: var(--e-global-typography-text-font-family, "Nunito Sans"), system-ui, sans-serif; font-size: 0.92rem; }
.oe-camnote summary.oe-camnote__summary { cursor: pointer; font-weight: 800; color: #005F80; }
.oe-camnote .oe-camnote__who { font-weight: 400; color: #44565A; }
.oe-camnote p.oe-camnote__hint { margin: 8px 0 6px; color: #44565A; font-size: 0.85rem; }
.oe-camnote textarea.oe-camnote__text { display: block; width: 100%; min-height: 64px; padding: 8px 10px; border: 1px solid #E8DCC0; border-radius: 8px; background-color: #FFFFFF; color: #07191D; font: inherit; }
.oe-camnote p.oe-camnote__acts { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 8px 0 0; }
.oe-camnote button.oe-camdown__btn { display: inline-flex; align-items: center; min-height: 40px; padding: 6px 16px; border: 2px solid #005F80; border-radius: 999px; background-color: #005F80; color: #FFFFFF; font-family: inherit; font-size: 0.88rem; font-weight: 800; text-transform: none; letter-spacing: 0; cursor: pointer; }
.oe-camnote button.oe-camdown__btn.oe-camdown__btn--ghost { background-color: transparent; color: #005F80; }
.oe-camnote button.oe-camdown__btn:disabled { opacity: 0.6; cursor: default; }
.oe-camnote button.oe-camdown__btn:focus-visible { outline: 3px solid #005F80; outline-offset: 2px; }
.oe-camnote .oe-camnote__msg { color: #44565A; font-size: 0.85rem; }
