/* My Trips: matches the approved app mockup. Uses the Cuxton theme variables with safe fallbacks. */
.cxt-app{--cx-ink:var(--ink,#1a2332);--cx-muted:var(--muted,#6b7789);--cx-paper:var(--paper,#fff);--cx-teal:var(--teal-dark,#15555c);--cx-line:var(--line,rgba(26,35,50,.1));max-width:640px;margin:0 auto;color:var(--cx-ink)}
.cxt-app h2,.cxt-app h3{font-family:var(--display,Georgia,serif);font-weight:600;line-height:1.2}
.cxt-top{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin:0 0 1.2rem}
.cxt-title{font-size:1.6rem;margin:0}
.cxt-back{display:inline-block;font-size:.85rem;font-weight:700;margin-bottom:.35rem}
.cxt-user{text-align:right;font-size:.85rem;color:var(--cx-muted);white-space:nowrap}
.cxt-user span{display:block;font-weight:700;color:var(--cx-ink)}
.cxt-section{margin:0 0 1.4rem}
.cxt-section h3{font-size:1.05rem;margin:0 0 .8rem}
.cxt-trip{background:var(--cx-paper);border-radius:16px;padding:1rem;display:grid;grid-template-columns:88px 1fr;gap:.9rem;align-items:center;box-shadow:0 8px 20px rgba(26,35,50,.06);margin-bottom:.75rem;color:var(--cx-ink);text-decoration:none!important}
a.cxt-trip:hover{box-shadow:0 10px 26px rgba(26,35,50,.12);color:var(--cx-ink)}
.cxt-trip img,.cxt-thumb-fallback{width:88px;height:88px;border-radius:12px;object-fit:cover}
.cxt-thumb-fallback{display:grid;place-items:center;background:linear-gradient(135deg,#1f6f78,#c4a35a);color:#fff;font-size:1.8rem}
.cxt-tag{display:inline-block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;background:#e4f3f1;color:var(--cx-teal);padding:.15rem .45rem;border-radius:999px;margin-bottom:.25rem}
.cxt-tag-past{background:#ece9e2;color:#5b6472}
.cxt-trip-name{display:block;font-size:1.05rem;font-family:var(--display,Georgia,serif)}
.cxt-trip-meta{color:var(--cx-muted);font-size:.84rem;margin-top:.25rem;line-height:1.45}
.cxt-box{background:var(--cx-paper);border-radius:16px;overflow:hidden;margin-bottom:.75rem}
.cxt-row-item{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;border-bottom:1px solid var(--cx-line);font-size:.92rem;color:var(--cx-ink);text-decoration:none!important}
.cxt-row-item:last-child{border-bottom:none}
a.cxt-row-item:hover{background:#faf8f3}
.cxt-link{color:var(--cx-teal);font-weight:700}
.cxt-status-paid{color:#1b7a45;font-weight:700}
.cxt-status-due{color:#9a5a0c;font-weight:700}
.cxt-day{background:var(--cx-paper);border-radius:14px;padding:.9rem 1rem;margin-bottom:.55rem}
.cxt-day strong{display:block;margin-bottom:.2rem}
.cxt-day span{color:var(--cx-muted);font-size:.88rem}
.cxt-content{padding:1rem 1.1rem}
.cxt-content img{border-radius:12px;height:auto}
.cxt-content figure{margin:1rem 0}
.cxt-notes{padding:.4rem 1.1rem}
.cxt-empty{background:var(--cx-paper);border-radius:16px;padding:1.4rem;text-align:center;color:var(--cx-muted)}
.cxt-help{text-align:center;color:var(--cx-muted);font-size:.88rem;margin-top:1.5rem}
.cxt-alert{border-radius:12px;padding:.8rem 1rem;font-weight:600;font-size:.92rem}
.cxt-alert.err{background:#fdecea;color:#7f1d1d}
.cxt-alert.ok{background:#e4f3ec;color:#14532d}
.cxt-alert.info{background:#f0e2bf;color:#5b430f}
.cxt-auth{background:var(--cx-paper);border-radius:22px;padding:1.6rem 1.4rem;box-shadow:0 18px 50px rgba(26,35,50,.12);max-width:440px;margin:0 auto}
.cxt-auth h2{font-size:1.45rem;margin:0 0 .35rem}
.cxt-muted{color:var(--cx-muted)}
.cxt-small{font-size:.85rem}
.cxt-form p{margin:0 0 .85rem}
.cxt-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.88rem}
.cxt-check{display:flex!important;align-items:center;gap:.4rem;font-weight:600;margin:0!important}
.cxt-app .btn-block{width:100%}
/* Themes often pad every <section>; My Trips sections are compact cards. */
.cxt-app section.cxt-section{padding:0}
