/* Reception — design system.
   Layout: barra superiore bianca + tab sottolineati, contenuto su colonna 1120px, schede bianche con bordo sottile.
   Una sola famiglia di colore per sezione (verde = arrivi, blu = pagamenti, bordeaux = Questura), usata solo su sottolineatura, pulsante principale e punti di stato. */
body.rx {
  --bg: #f5f6f7; --ink: #14181b; --ink-soft: #3b444a; --muted: #667078; --line: #e4e7ea; --line-strong: #d3d9de;
  --brand: #1e5d53; --brand-hover: #174b43; --brand-soft: #e9f1ee; --brand-line: #cfe0da;
  --pay: #1d5f8a; --pay-hover: #174e72; --pay-soft: #e8f1f7;
  --pol: #9a2c4e; --pol-hover: #802340; --pol-soft: #f8eaee;
  --ok: #1b6b43; --ok-soft: #e4f3ea; --warn: #8a5a00; --warn-soft: #fcf1d9; --danger: #a12b2b; --danger-soft: #fbe9e9;
  --r-btn: 10px; --r-card: 14px; --r-panel: 14px;
  --shadow: 0 1px 2px rgba(20,24,27,.04);
  --ui: "Instrument Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --display: "Newsreader", Georgia, "Times New Roman", serif;
  --sec: var(--brand);
  font-family: var(--ui); background: var(--bg); color: var(--ink); font-size: 15px; line-height: 1.5; -webkit-font-smoothing: antialiased;
}
body.rx .demobar { background: #14181b; font-size: 12.5px; padding: 6px 12px; }
body.rx .demobar b { background: #e9d9a6; color: #3b2d05; font-size: 10.5px; padding: 1px 8px; }

/* ---------- barra superiore ---------- */
.rx-top { position: sticky; top: 0; z-index: 30; background: #fff; border-bottom: 1px solid var(--line); }
.rx-in, .rx-tabs-in { max-width: 1120px; margin: 0 auto; padding: 0 20px; }
.rx-in { display: flex; justify-content: space-between; align-items: center; gap: 12px; min-height: 64px; }
.rx-brand { display: flex; align-items: center; gap: 12px; min-width: 0; }
.rx-mark { flex: none; width: 36px; height: 36px; border-radius: 10px; background: var(--brand); color: #fff; display: grid; place-items: center; font: 600 15px var(--display); letter-spacing: .02em; }
.rx-name { font: 600 19px/1.15 var(--display); letter-spacing: -.005em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rx-role { font-size: 12.5px; color: var(--muted); margin-top: 1px; }
.rx-out { display: inline-flex; align-items: center; gap: 8px; height: 38px; padding: 0 14px; border-radius: 10px; border: 1px solid var(--line-strong); background: #fff; color: var(--ink-soft); font-weight: 600; font-size: 13.5px; cursor: pointer; }
.rx-out:hover { background: #f5f6f7; }
.rx-tabs { border-top: 1px solid var(--line); }
.rx-tabs-in { display: flex; gap: 4px; overflow-x: auto; scrollbar-width: none; }
.rx-tabs-in::-webkit-scrollbar { display: none; }
.rx-tab { --c: var(--brand); position: relative; flex: none; display: inline-flex; align-items: center; gap: 8px; height: 48px; padding: 0 14px; border: 0; background: none; color: var(--muted); font-weight: 600; font-size: 14.5px; cursor: pointer; }
.rx-tab.pay { --c: var(--pay); } .rx-tab.pol { --c: var(--pol); } .rx-tab.guide { --c: var(--ink); }
.rx-tab:hover { color: var(--ink); }
.rx-tab.on { color: var(--c); }
.rx-tab.on::after { content: ""; position: absolute; left: 10px; right: 10px; bottom: 0; height: 2px; border-radius: 2px 2px 0 0; background: var(--c); }
.rx-tab em { font-style: normal; font-size: 11.5px; font-weight: 700; min-width: 20px; height: 20px; padding: 0 6px; border-radius: 99px; display: inline-grid; place-items: center; background: color-mix(in srgb, var(--c) 12%, #fff); color: var(--c); font-variant-numeric: tabular-nums; }
.rx-main { padding: 24px 0 72px; }
body.rx .wrap-wide { max-width: 1120px; padding: 0 20px; }

/* ---------- elementi base ---------- */
body.rx .btn { min-height: 42px; padding: 0 16px; border-radius: var(--r-btn); font-weight: 600; font-size: 14.5px; background: #fff; border: 1px solid var(--line-strong); color: var(--ink); box-shadow: none; gap: 8px; }
body.rx .btn:hover { background: #f5f6f7; }
body.rx .btn.sm { min-height: 36px; padding: 0 12px; font-size: 13.5px; }
body.rx .btn.pri, body.rx .btn-primary, body.rx .btn.bordo-fill, body.rx .btn.bluebtn { color: #fff; border-color: transparent; }
body.rx .btn.pri, body.rx .btn-primary { background: var(--brand); }
body.rx .btn.pri:hover, body.rx .btn-primary:hover { background: var(--brand-hover); }
body.rx .btn.bluebtn { background: var(--pay); } body.rx .btn.bluebtn:hover { background: var(--pay-hover); }
body.rx .btn.bordo-fill { background: var(--pol); } body.rx .btn.bordo-fill:hover { background: var(--pol-hover); }
body.rx .btn.bordo { color: var(--pol); border-color: #e2c3cd; } body.rx .btn.bordo:hover { background: var(--pol-soft); }
body.rx .btn.amber { background: var(--warn-soft); border-color: #ecd49a; color: var(--warn); }
body.rx .btn.dng { color: var(--danger); border-color: #ecc4c4; } body.rx .btn.dng:hover { background: var(--danger-soft); }
body.rx .btn.wa { background: #1f9d55; border-color: transparent; color: #fff; } body.rx .btn.wa:hover { background: #198a49; }
body.rx .btn-lg { min-height: 48px; font-size: 15.5px; }
body.rx .btn:disabled, body.rx .btn[disabled] { opacity: .45; cursor: not-allowed; }
body.rx .field { min-height: 44px; font-size: 15px; padding: 0 12px; border: 1px solid var(--line-strong); border-radius: 10px; background: #fff; }
body.rx textarea.field { padding: 10px 12px; }
body.rx .field:focus { outline: none; border-color: var(--sec); box-shadow: 0 0 0 3px color-mix(in srgb, var(--sec) 18%, transparent); }
body.rx .label { font-size: 13px; font-weight: 600; color: var(--ink-soft); margin-bottom: 6px; }
body.rx .hint { font-size: 13px; color: var(--muted); margin-top: 4px; }
body.rx :focus-visible { outline: 2px solid var(--sec); outline-offset: 2px; }
body.rx .card { border: 1px solid var(--line); box-shadow: var(--shadow); border-radius: var(--r-card); }
body.rx .chips { gap: 6px; }
body.rx .chips span { min-height: 38px; padding: 0 14px; border-radius: 99px; font-weight: 600; font-size: 14px; border: 1px solid var(--line-strong); }
body.rx .chips input:checked + span { background: var(--ink); border-color: var(--ink); color: #fff; }
body.rx .pill { font-size: 12px; font-weight: 600; padding: 3px 10px; border-radius: 99px; letter-spacing: .005em; }
body.rx .pill.ok { background: var(--ok-soft); color: var(--ok); } body.rx .pill.warn { background: var(--warn-soft); color: var(--warn); }
body.rx .pill.soft { background: #eef0f2; color: var(--ink-soft); } body.rx .pill.plain { background: #fff; color: var(--muted); border: 1px solid var(--line); }
body.rx .errbox, body.rx .err { background: var(--danger-soft); color: var(--danger); border: 1px solid #efc7c7; border-radius: 10px; padding: 10px 12px; font-size: 14px; font-weight: 500; }
body.rx .okbox { background: var(--ok-soft); color: var(--ok); border: 1px solid #bfe2cc; border-radius: 10px; padding: 10px 12px; font-size: 14px; }
body.rx .warnbox { background: var(--warn-soft); color: var(--warn); border: 1px solid #ecd49a; border-radius: 10px; padding: 10px 12px; font-size: 14px; margin-top: 12px; }

/* ---------- sezione Arrivi ---------- */
body.rx .stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; margin: 0 0 20px; background: #fff; border: 1px solid var(--line); border-radius: var(--r-card); overflow: hidden; }
body.rx .stat { border: 0; border-radius: 0; box-shadow: none; padding: 16px 20px; border-right: 1px solid var(--line); background: none; }
body.rx .stat:last-child { border-right: 0; }
body.rx .stat b { font: 600 30px/1.1 var(--ui); color: var(--ink); letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
body.rx .stat span { display: block; margin-top: 4px; font-size: 13px; font-weight: 500; color: var(--muted); }
body.rx .panel { border: 1px solid var(--line); border-radius: var(--r-panel); background: #fff; box-shadow: var(--shadow); overflow: hidden; }
body.rx .panel.g1, body.rx .panel.g2, body.rx .panel.arrivals { border: 1px solid var(--line); }
body.rx .panel > .head { min-height: 56px; padding: 0 20px; background: #fff !important; color: var(--ink); font: 600 16px var(--ui); border-bottom: 1px solid transparent; }
body.rx .panel > .head[aria-expanded="true"], body.rx .panel.arrivals > .head { border-bottom-color: var(--line); }
body.rx .panel.arrivals > .head { cursor: default; }
body.rx .panel > .head span:last-child { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 8px; background: #f0f2f4; color: var(--ink-soft); font-size: 16px; }
body.rx .panel .body { padding: 18px 20px; }
body.rx .arrivals { margin-bottom: 20px !important; }
body.rx .cols { gap: 20px; }
body.rx .stay { background: none; border: 0; box-shadow: none; border-radius: 0; padding: 0; margin: 0; }
body.rx .arrivals .stay { padding: 4px 0; }
body.rx .stay .who { font-size: 15.5px; font-weight: 600; }
body.rx .stay .meta { font-size: 13.5px; color: var(--muted); margin-top: 2px; }
body.rx .stay > .row { padding: 12px 0; min-height: 56px; align-items: center; }
body.rx .acts { margin-top: 10px; gap: 8px; }
body.rx .acts .btn { border-radius: 10px; box-shadow: none; padding: 0 12px; min-height: 36px; font-size: 13.5px; border: 1px solid var(--line-strong); color: var(--ink); background: #fff; }
body.rx .acts .btn.pri { background: var(--brand); color: #fff; border-color: transparent; }
body.rx .acts .btn.amber { background: var(--warn-soft); color: var(--warn); border-color: #ecd49a; }
body.rx .acts .btn.dng { color: var(--danger); border-color: #ecc4c4; }
body.rx li:has(> .stay) + li:has(> .stay) .stay { border-top: 1px solid var(--line); }
body.rx .day { font-size: 12px; font-weight: 600; letter-spacing: .06em; color: var(--muted); margin: 18px 0 4px; }
body.rx .note { background: #f5f6f7; border-radius: 10px; font-size: 13.5px; color: var(--ink-soft); }
body.rx .sub-box { background: #f5f6f7; border-radius: 10px; }
body.rx .result { padding: 28px 20px; }
body.rx .msg { background: #e8f5ec; border-radius: 12px 12px 12px 3px; box-shadow: none; }
body.rx .stay > .row .who { gap: 8px; }

/* ---------- Pagamenti e Questura ---------- */
.rx-page { max-width: 760px; margin: 0 auto; display: grid; gap: 16px; }
body.rx .msecs { max-width: 760px; margin: 0 auto; gap: 16px; }
body.rx .msec { border: 1px solid var(--line); border-radius: var(--r-panel); box-shadow: var(--shadow); background: #fff; }
body.rx .msec-h { min-height: 60px; padding: 0 20px; background: #fff !important; color: var(--ink); font: 600 16px var(--ui); gap: 12px; }
body.rx .msec-h > span { display: inline-flex; align-items: center; gap: 10px; }
body.rx .msec-h > span::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--pay); }
body.rx .msec.blue2 .msec-h > span::before { background: #78a9c6; }
body.rx .msec-h b { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 8px; background: #f0f2f4; color: var(--ink-soft); font-weight: 600; }
body.rx .msec-h[aria-expanded="true"] { border-bottom: 1px solid var(--line); }
body.rx .msec-body { padding: 20px; gap: 16px; }
body.rx .msec { --sec: var(--pay); }
body.rx .chips.blue input:checked + span { background: var(--pay); border-color: var(--pay); }
body.rx .resbox { max-width: 560px; margin: 0 auto; padding: 24px; }
body.rx .msgpre { background: #e8f5ec; border-radius: 12px 12px 12px 3px; padding: 12px 14px; font-size: 14.5px; margin: 14px 0; }
body.rx .dayh { font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); margin: 8px 0 2px; }
body.rx .plist { gap: 0; border: 1px solid var(--line); border-radius: 12px; overflow: hidden; }
body.rx .pitem { border: 0; border-radius: 0; box-shadow: none; padding: 14px 16px; border-top: 1px solid var(--line); background: #fff; }
body.rx .pitem:first-child { border-top: 0; }
body.rx .prow b { font-weight: 600; font-size: 15px; }
body.rx .prow .hint { margin-top: 2px; font-variant-numeric: tabular-nums; }
body.rx .stbadge { font-size: 12px; font-weight: 600; padding: 3px 10px; background: var(--pay-soft); color: var(--pay); }
body.rx .stbadge.paid { background: var(--ok-soft); color: var(--ok); }
body.rx .stbadge.expired, body.rx .stbadge.failed { background: var(--danger-soft); color: var(--danger); }
body.rx .stbadge.cancelled { background: #eef0f2; color: var(--muted); }
body.rx .qsec { max-width: 760px; margin: 0 auto 20px; padding: 0; --sec: var(--pol); }
body.rx .qsec .qh { font: 600 26px/1.2 var(--display); color: var(--ink); letter-spacing: -.01em; }
body.rx .qh2 { font: 600 20px/1.2 var(--display); color: var(--ink); }
body.rx .qdet { border: 1px solid var(--line); border-radius: var(--r-panel); background: #fff; margin-top: 12px; }
body.rx .qdet summary { color: var(--ink); font-weight: 600; font-size: 15.5px; padding: 16px 20px; align-items: center; }
body.rx .qdet summary span { width: 28px; height: 28px; display: grid; place-items: center; background: #f0f2f4; border-radius: 8px; color: var(--ink-soft); font-size: 14px; }
body.rx .qdet[open] summary { border-bottom: 1px solid var(--line); }
body.rx .qdet-b { padding: 18px 20px 20px; }
body.rx .qdl { gap: 0; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; }
body.rx .qdl div { padding: 10px 14px; border-top: 1px solid var(--line); } body.rx .qdl div:first-child { border-top: 0; }
body.rx .qdl dd { font-variant-numeric: tabular-nums; }
body.rx .qlist { gap: 0; margin-top: 16px; border: 1px solid var(--line); border-radius: var(--r-panel); background: #fff; overflow: hidden; }
body.rx .qitem { border: 0; border-radius: 0; box-shadow: none; padding: 16px 20px; border-top: 1px solid var(--line); }
body.rx .qitem:first-child { border-top: 0; }
body.rx .qitem.done { background: #f7fbf8; }
body.rx .qn { font-weight: 600; font-size: 15.5px; }
body.rx .okline { font-size: 13.5px; } body.rx .warnline { font-size: 13.5px; }
body.rx .latebadge { background: var(--danger-soft); color: var(--danger); font-size: 11.5px; font-weight: 600; }
body.rx .qprep { margin-top: 14px; padding-top: 16px; }
body.rx .gitem { border-radius: 10px; padding: 12px 14px; }
body.rx .gitem.sent { background: var(--ok-soft); border-color: #bfe2cc; }
body.rx .selpill { border-color: var(--line-strong); color: var(--ink-soft); font-weight: 600; background: #fff; }
body.rx .selpill:has(input:checked) { background: var(--pol-soft); border-color: #e2c3cd; color: var(--pol); }
body.rx .askbox { background: var(--pol-soft); border: 1px solid #e2c3cd; border-radius: 12px; }
body.rx .bordotxt { color: var(--ok); }

/* ---------- Guida (editor) ---------- */
body.rx .sectabs button { border-radius: 10px; min-height: 40px; font-size: 14px; font-weight: 600; border-color: var(--line-strong); }
body.rx .sectabs button.on { background: var(--ink); border-color: var(--ink); }
body.rx .edbody { padding: 20px; }
body.rx .edtop h3 { font: 600 22px var(--display); }
body.rx .edrow { background: #fff; border-radius: 12px; }
body.rx .lang2 button { border-radius: 8px; min-height: 36px; }
body.rx .lang2 button.on { background: var(--ink); border-color: var(--ink); }
body.rx .switch input:checked + span { background: var(--brand); }
body.rx .edprev { top: 150px; }

/* ---------- mobile ---------- */
@media (max-width: 720px) {
  .rx-in, .rx-tabs-in, body.rx .wrap-wide { padding: 0 16px; }
  .rx-in { min-height: 58px; } .rx-name { font-size: 17px; }
  .rx-out span { display: none; } .rx-out { padding: 0 11px; }
  .rx-tab { padding: 0 12px; }
  .rx-main { padding: 16px 0 56px; }
  body.rx .stats { grid-template-columns: 1fr 1fr; }
  body.rx .stat { padding: 14px 16px; border-bottom: 1px solid var(--line); }
  body.rx .stat:nth-child(2n) { border-right: 0; } body.rx .stat:nth-last-child(-n+2) { border-bottom: 0; }
  body.rx .stat b { font-size: 26px; }
  body.rx .msec-body, body.rx .qdet-b, body.rx .panel .body { padding: 16px; }
  body.rx .qitem { padding: 14px 16px; }
  body.rx .qtop > .btn { width: 100%; }
  body.rx .qsec .qh { font-size: 23px; }
}
@media (prefers-reduced-motion: reduce) { body.rx * { transition: none !important; animation: none !important; } }

/* =====================================================================
   Livello colore: ogni voce di menu ha il suo fondo, come nella Reception di Max Apartments.
   arrivi = verde, pagamenti = blu, Questura = amaranto, guida = avorio/verde scuro con oro.
   ===================================================================== */
body.rx[data-sec="arrival"] { --sec:#1e5d53; --sec2:#3f8a78; --sec-deep:#123d38; --bgc:#d6e6e0; --rowbg:#e6efec; --sec-soft:#e3f0ec; }
body.rx[data-sec="pay"]     { --sec:#1e6a96; --sec2:#4189b0; --sec-deep:#134863; --bgc:#d3e6f2; --rowbg:#e3eef6; --sec-soft:#e0eef7; }
body.rx[data-sec="pol"]     { --sec:#a3294f; --sec2:#c15a7b; --sec-deep:#741d38; --bgc:#f0d9e1; --rowbg:#f7e6ec; --sec-soft:#f8e6ec; }
body.rx[data-sec="guide"]   { --sec:#123d38; --sec2:#b8923f; --sec-deep:#0e2f2b; --bgc:#e9e2cc; --rowbg:#f2ecdb; --sec-soft:#efe8d3; }
body.rx { background: var(--bgc); --brand: var(--sec); --brand-hover: var(--sec-deep); --brand-soft: var(--sec-soft); --pay: var(--sec); --pay-hover: var(--sec-deep); --pol: var(--sec); --pol-hover: var(--sec-deep); }

/* barra superiore colorata + tab "a cartella" che si fondono con la pagina */
.rx-top { background: linear-gradient(var(--sec-deep), var(--sec)); border-bottom: 0; box-shadow: 0 6px 20px rgba(0,0,0,.14); }
.rx-name { color: #fff; } .rx-role { color: rgba(255,255,255,.78); }
.rx-mark { background: #fff; color: var(--sec); }
.rx-out { background: transparent; color: #fff; border-color: rgba(255,255,255,.45); } .rx-out:hover { background: rgba(255,255,255,.12); }
.rx-tabs { border-top: 1px solid rgba(255,255,255,.14); }
.rx-tab { height: 46px; margin-top: 6px; border-radius: 12px 12px 0 0; color: rgba(255,255,255,.88); background: rgba(255,255,255,.1); }
.rx-tab:hover { background: rgba(255,255,255,.18); color: #fff; }
.rx-tab.on { background: var(--bgc); color: var(--sec); }
.rx-tab.on::after { display: none; }
.rx-tab em { background: rgba(255,255,255,.22); color: #fff; }
.rx-tab.on em { background: var(--sec); color: #fff; }
.rx-tabs-in { gap: 6px; }

/* pulsanti a pillola con anello bianco, come nell'originale */
body.rx .btn { border-radius: 999px; }
body.rx .btn.pri, body.rx .btn-primary, body.rx .btn.bluebtn, body.rx .btn.bordo-fill, body.rx .btn.wa, body.rx .acts .btn.pri {
  background: var(--sec); color: #fff; border: 2px solid #fff; box-shadow: 0 0 0 1px rgba(0,0,0,.16); }
body.rx .btn.wa { background: #1f9d55; }
body.rx .btn.pri:hover, body.rx .btn-primary:hover, body.rx .btn.bluebtn:hover, body.rx .btn.bordo-fill:hover { background: var(--sec-deep); }
body.rx .btn.bordo { color: var(--sec); border: 2px solid var(--sec); background: #fff; }
body.rx .acts .btn { border-radius: 999px; background: var(--sec2); color: #fff; border: 2px solid #fff; box-shadow: 0 0 0 1px rgba(0,0,0,.16); }
body.rx .acts .btn.amber { background: #b8923f; color: #1b1405; }
body.rx .acts .btn.dng, body.rx .btn.dng { background: #c0392b; color: #fff; border: 2px solid #fff; box-shadow: 0 0 0 1px rgba(0,0,0,.16); }
body.rx .btn:not(.pri):not(.bluebtn):not(.bordo-fill):not(.wa):not(.bordo):not(.amber):not(.dng) { border-color: var(--sec); color: var(--sec); background: #fff; }
body.rx .acts .btn:not(.pri):not(.amber):not(.dng) { background: var(--sec2); color: #fff; border-color: #fff; }
body.rx .btn:disabled { opacity: .5; }

/* schede con intestazione colorata */
body.rx .panel, body.rx .msec, body.rx .qdet { border: 2px solid var(--sec); box-shadow: 0 4px 14px rgba(0,0,0,.08); }
body.rx .panel > .head, body.rx .msec-h, body.rx .qdet summary { background: var(--sec) !important; color: #fff; font-weight: 700; font-size: 17px; min-height: 60px; }
body.rx .panel.g2 { border-color: var(--sec2); } body.rx .panel.g2 > .head, body.rx .msec.blue2 { }
body.rx .panel.g2 > .head { background: var(--sec2) !important; }
body.rx .msec.blue2 { border-color: var(--sec2); } body.rx .msec.blue2 .msec-h { background: var(--sec2) !important; }
body.rx .panel.arrivals { border-color: #b8923f; } body.rx .panel.arrivals > .head { background: #b8923f !important; color: #1b1405; }
body.rx .panel > .head span:last-child, body.rx .msec-h b, body.rx .qdet summary span { background: rgba(255,255,255,.22); color: inherit; }
body.rx .msec-h > span::before { display: none; }
body.rx .panel > .head[aria-expanded="true"], body.rx .msec-h[aria-expanded="true"], body.rx .qdet[open] summary { border-bottom: 0; }
body.rx .qdet { border-radius: 16px; overflow: hidden; } body.rx .qdet + .qdet summary { background: var(--sec2) !important; }
body.rx .qdet + .qdet { border-color: var(--sec2); }

/* righe: riquadro colorato chiaro con bordo bianco */
body.rx .stay { background: var(--rowbg); border: 2px solid #fff; box-shadow: 0 0 0 1px rgba(0,0,0,.12); border-radius: 16px; padding: 10px 14px; margin-bottom: 12px; }
body.rx .arrivals .stay { padding: 10px 14px; }
body.rx li:has(> .stay) + li:has(> .stay) .stay { border-top: 2px solid #fff; }
body.rx .stay > .row { padding: 4px 0; }
body.rx .plist, body.rx .qlist { border: 0; background: none; gap: 12px; overflow: visible; margin-top: 14px; }
body.rx .pitem, body.rx .qitem { background: var(--rowbg); border: 2px solid #fff; box-shadow: 0 0 0 1px rgba(0,0,0,.12); border-radius: 16px; padding: 12px 14px; }
body.rx .pitem:first-child, body.rx .qitem:first-child { border: 2px solid #fff; }
body.rx .qitem.done { background: #e2f1e8; }
body.rx .gitem { background: #fff; }

/* statistiche: schede separate, numeri nel colore di sezione */
body.rx .stats { background: none; border: 0; gap: 12px; overflow: visible; }
body.rx .stat { background: #fff; border: 2px solid #fff; box-shadow: 0 0 0 1px rgba(0,0,0,.1); border-radius: 16px; }
body.rx .stat:last-child { border-right: 2px solid #fff; }
body.rx .stat b { color: var(--sec); font-family: var(--display); font-weight: 600; font-size: 34px; }

/* testi e controlli nel colore di sezione */
body.rx .qsec .qh, body.rx .qh2 { color: var(--sec-deep); }
body.rx .chips input:checked + span, body.rx .chips.blue input:checked + span { background: var(--sec); border-color: var(--sec); color: #fff; }
body.rx .selpill:has(input:checked) { background: var(--sec-soft); border-color: var(--sec); color: var(--sec-deep); }
body.rx .day, body.rx .dayh { color: var(--sec-deep); font-weight: 700; }
body.rx .note, body.rx .sub-box { background: #fff; }
body.rx .sectabs button.on { background: var(--sec); border-color: var(--sec); color: #fff; }
body.rx .lang2 button.on { background: var(--sec); border-color: var(--sec); }
body.rx .switch input:checked + span { background: var(--sec); }
body.rx .stbadge { background: var(--sec-soft); color: var(--sec-deep); }
body.rx .stbadge.paid { background: var(--ok-soft); color: var(--ok); }
body.rx .stbadge.expired, body.rx .stbadge.failed { background: var(--danger-soft); color: var(--danger); }
body.rx .stbadge.cancelled { background: #eceeef; color: var(--muted); }
body.rx .edwrap .card, body.rx .edbody { background: #fff; }
body.rx .edwrap .card { border: 2px solid var(--sec); }
@media (max-width: 720px) { body.rx .stat b { font-size: 28px; } body.rx .stat { border-bottom: 2px solid #fff; } body.rx .stat:nth-last-child(-n+2) { border-bottom: 2px solid #fff; } }
