/* Correo — el buzón de booking@ en /ops. Hoja aparte, como Contenido:
   usa los tokens de portal.css (--ink, --ink2, --cream, --orange, --line). */

.cr-badge{ display:inline-block; min-width:18px; margin-left:6px; padding:1px 6px; border-radius:999px;
	background:var(--orange); color:var(--ink); font-size:10px; font-weight:800; text-align:center; line-height:16px; }
.po-nav-link.is-active .cr-badge{ background:var(--ink); color:var(--orange); }
.cr-badge[hidden]{ display:none; }

.cr-cabeza{ flex-wrap:wrap; align-items:center; }
.cr-cuenta{ font-size:11px; }
.cr-cabeza .po-search{ margin-left:auto; }

.cr-aviso{ margin:0 0 14px; padding:10px 14px; border-radius:8px; font-size:13px;
	background:rgba(21,128,61,.14); border:1px solid rgba(21,128,61,.4); color:#b7f0c8; }
.cr-aviso.mal, .cr-form-aviso.mal{ background:rgba(220,38,38,.14); border-color:rgba(220,38,38,.4); color:#ffb4b4; }
.cr-aviso[hidden], .cr-form-aviso[hidden]{ display:none; }

/* ---------- configuración ---------- */
.cr-config{ max-width:620px; background:var(--ink2); border:1px solid var(--line); border-radius:12px; padding:24px; margin-bottom:20px; }
.cr-config h2{ margin:0 0 6px; font-weight:400; font-size:22px; }
.cr-config p{ font-size:13px; margin:0 0 16px; }
.cr-config label{ display:block; flex:1; font-size:12px; font-weight:600; color:var(--muted); margin-bottom:12px; }
.cr-config input{ display:block; width:100%; margin-top:6px; padding:10px 12px; border-radius:8px; background:var(--ink);
	border:1px solid var(--line); color:var(--cream); font-family:var(--sans); font-size:14px; }
.cr-config input:focus{ outline:none; border-color:var(--orange); }
.cr-config .cr-puerto{ flex:0 0 110px; }
.cr-config-estado{ font-size:13px; }
.cr-aviso-fijo{ color:#ffb4b4; }

/* ---------- carpetas ---------- */
.cr-carpetas{ align-items:center; }
.cr-carpetas .cr-n{ font-weight:800; }
.cr-recargar{ margin-left:auto; padding:6px 13px; }

/* ---------- dos columnas: bandeja y lector ---------- */
.cr-cols{ display:grid; grid-template-columns:minmax(260px,380px) minmax(0,1fr); gap:16px; align-items:start; }
.cr-lista{ background:var(--ink2); border:1px solid var(--line); border-radius:12px; overflow:hidden; transition:opacity .15s; }
.cr-lista[aria-busy="true"]{ opacity:.5; }
.cr-items{ list-style:none; margin:0; padding:0; max-height:calc(100vh - 250px); overflow:auto; }
.cr-items li + li{ border-top:1px solid var(--line); }
.cr-item{ display:grid; grid-template-columns:minmax(0,1fr) auto; gap:3px 10px; width:100%; padding:12px 14px; text-align:left;
	background:transparent; border:0; border-left:3px solid transparent; color:var(--muted); font-family:var(--sans); cursor:pointer; }
.cr-item:hover{ background:rgba(242,240,234,.04); }
.cr-item.on{ background:rgba(253,142,37,.08); border-left-color:var(--orange); }
.cr-item:focus-visible{ outline:2px solid var(--orange); outline-offset:-2px; }
.cr-de{ font-size:13px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; color:var(--cream); }
.cr-fecha{ font-size:10.5px; white-space:nowrap; }
.cr-tema{ grid-column:1 / -1; font-size:12.5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.cr-item.nuevo .cr-de, .cr-item.nuevo .cr-tema{ font-weight:700; color:var(--cream); }
.cr-item.nuevo .cr-de::before{ content:""; display:inline-block; width:7px; height:7px; border-radius:50%; background:var(--orange); margin-right:7px; vertical-align:1px; }
.cr-marca{ margin-right:5px; font-size:11px; }
.cr-nada{ padding:26px 14px; text-align:center; font-size:13px; }
.cr-pie{ display:flex; align-items:center; justify-content:space-between; gap:8px; padding:10px 12px; border-top:1px solid var(--line); }
.cr-pie .po-btn{ padding:5px 13px; }
.cr-cuantos{ font-size:11px; }

.cr-vacio{ padding:60px 20px; text-align:center; border:1px dashed var(--line); border-radius:12px; font-size:13px; }
.cr-lector{ background:var(--ink2); border:1px solid var(--line); border-radius:12px; padding:18px 20px 20px; min-width:0; }
.cr-lector[aria-busy="true"]{ opacity:.6; }
.cr-barra{ display:flex; flex-wrap:wrap; gap:7px; align-items:center; margin-bottom:16px; }
.cr-barra .po-btn{ padding:7px 14px; font-size:12.5px; }
.cr-hueco{ flex:1; }
.cr-volver{ display:none; }
.cr-asunto{ margin:0 0 10px; font-weight:400; font-size:24px; letter-spacing:-.01em; overflow-wrap:anywhere; }
.cr-meta{ font-size:12.5px; line-height:1.7; overflow-wrap:anywhere; }
.cr-meta .po-dim{ display:inline-block; min-width:44px; font-family:var(--mono); font-size:10.5px; text-transform:uppercase; letter-spacing:.06em; }
.cr-contacto{ display:flex; flex-wrap:wrap; gap:7px; margin:12px 0 0; }
.cr-contacto:empty{ display:none; }
.cr-ficha{ text-transform:none; }
.cr-adjuntos{ list-style:none; margin:14px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:7px; }
.cr-adjuntos:empty{ display:none; }
.cr-adj{ font-size:12px; padding:6px 13px; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cr-imagenes{ margin-top:14px; font-size:12px; padding:6px 13px; }
.cr-cuerpo{ display:block; width:100%; height:420px; margin-top:16px; border:0; border-radius:8px; background:#fff; }
.cr-cuerpo[hidden]{ display:none; }
.cr-texto{ margin:16px 0 0; padding:16px; border-radius:8px; background:var(--ink); white-space:pre-wrap; overflow-wrap:anywhere;
	font-family:var(--sans); font-size:14px; line-height:1.6; color:var(--cream); }

/* ---------- redactar ---------- */
.cr-panel{ width:min(680px,94vw); }
.cr-panel h2{ margin:0 0 16px; font-weight:400; font-size:22px; }
.cr-form label{ display:block; font-size:12px; font-weight:600; color:var(--muted); margin-bottom:11px; }
.cr-form input[type="text"], .cr-form textarea{ display:block; width:100%; margin-top:5px; padding:10px 12px; border-radius:8px;
	background:var(--ink); border:1px solid var(--line); color:var(--cream); font-family:var(--sans); font-size:14px; }
.cr-form textarea{ resize:vertical; line-height:1.55; }
.cr-form input:focus, .cr-form textarea:focus{ outline:none; border-color:var(--orange); }
.cr-idioma{ display:flex; align-items:center; gap:10px; margin-bottom:11px; font-size:12px; color:var(--muted); }
.cr-cita{ margin:-4px 0 12px; font-size:12px; }
.cr-previa{ margin-top:12px; }
.cr-previa-marco{ display:block; width:100%; height:520px; border:0; border-radius:8px; background:#fff; }
.cr-form-aviso{ margin:12px 0 0; padding:9px 12px; border-radius:8px; font-size:13px; border:1px solid var(--line); }

/* ---------- tablet y teléfono: una columna ---------- */
@media (max-width:900px){
	.cr-cols{ grid-template-columns:1fr; }
	.cr-cols.leyendo .cr-lista, .cr-cols .cr-vacio{ display:none; }
	.cr-volver{ display:inline-block; }
	.cr-items{ max-height:none; }
}
@media (max-width:640px){
	.cr-cabeza .po-search{ order:3; flex-basis:100%; min-width:0; }
	.cr-carpetas{ flex-wrap:nowrap; overflow-x:auto; padding-bottom:4px; -webkit-overflow-scrolling:touch; }
	.cr-carpetas .po-fchip{ flex:none; }
	.cr-lector{ padding:14px; }
	.cr-asunto{ font-size:19px; }
	.cr-todos{ display:none; }
	.cr-config .po-row{ flex-direction:column; gap:0; }
	.cr-config .cr-puerto{ flex:auto; }
	.cr-previa-marco{ height:420px; }
}
