/* ====== Account workflows, second round (workflows.js): offers & stay requests ======
   Same tokens as account-hub.css; dialogs also carry them, since they can open outside the account pages. */
dialog.ah-dialog, dialog.wf-dialog{
  --ah-navy:#203D4E; --ah-gold:#C7A250; --ah-gold-text:#7F6427; --ah-gold-soft:#FAF5EA;
  --ah-bg:#F5F7F9; --ah-card:#FFFFFF; --ah-line:#E1E7ED; --ah-line-strong:#CCD5DE; --ah-muted:#5A6B7B;
}

/* Tabs that are links to their own pages (title, sidebar and tab always agree) */
.ah-tabs{display:flex;gap:4px;border-bottom:1px solid var(--ah-line);margin:0 0 16px;overflow-x:auto;scrollbar-width:none}
.ah-tab{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;color:var(--ah-muted);text-decoration:none;font-weight:600;border-bottom:3px solid transparent;margin-bottom:-1px;white-space:nowrap}
.ah-tab span{background:#EEF1F4;color:var(--ah-muted);border-radius:999px;padding:1px 8px;font-size:.78rem}
.ah-tab.is-on{color:var(--ah-navy);border-bottom-color:var(--ah-gold)}
.ah-tab.is-on span{background:var(--ah-navy);color:#fff}
.ah-tab:focus-visible{outline:3px solid rgba(199,162,80,.5);outline-offset:-3px}

.wf-actions{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 12px}
.wf-actions .btn{min-height:44px;display:inline-flex;align-items:center;gap:8px}
.ah-empty .wf-actions{justify-content:center;margin-top:6px}
.wf-rules{margin:0 0 14px}
.wf-pay-note{margin-top:0}
.wf-notice h2{margin-bottom:6px}
.wf-notice p{margin:0 0 10px;color:var(--ah-muted)}
.wf-steps{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.wf-steps li{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-height:32px}
.wf-steps li > span:not(.ah-pill){flex:1;min-width:140px}
.wf-steps a{font-weight:700;color:var(--ah-navy)}
.wf-ok{color:var(--success-text,#1E6B3F)}
.wf-dot{width:12px;height:12px;border-radius:50%;border:2px solid var(--ah-gold);flex:none;margin:0 4px}

.wf-list{display:grid;gap:0}
.wf-offer, .wf-request{padding:16px 18px}
.wf-request .wf-offer{box-shadow:none;background:var(--ah-bg);margin:10px 0 0}
.wf-offer-top{display:flex;gap:12px;align-items:flex-start}
.wf-offer-pic{flex:none;width:72px;height:56px;border-radius:10px;overflow:hidden;background:#E9EEF2;display:block}
.wf-offer-pic img{width:100%;height:100%;object-fit:cover;display:block}
.wf-offer-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.wf-offer-title{color:var(--ah-navy);font-weight:700;text-decoration:none;overflow-wrap:anywhere}
.wf-offer-meta small{color:var(--ah-muted);font-size:.84rem}
.wf-lines{margin:10px 0 0;font-size:.9rem}
.wf-msg{margin:8px 0 0;color:var(--ah-muted);font-size:.9rem;overflow-wrap:anywhere}
.wf-timer{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:10px 0 6px;font-weight:600;color:var(--ah-navy)}
.wf-timer-hot{color:var(--ah-gold-text)}
.wf-countdown{font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate;background:var(--ah-gold-soft);border:1px solid #EFE3C6;border-radius:8px;padding:1px 8px}
.wf-counter{margin:10px 0 0;font-weight:600}
.wf-sub{font-size:1rem;color:var(--ah-navy);margin:14px 0 0}
.wf-history{margin-top:10px;font-size:.86rem}
.wf-history summary{cursor:pointer;color:var(--ah-navy);font-weight:600;min-height:32px;display:flex;align-items:center}
.wf-history ol{margin:6px 0 0;padding-inline-start:20px;display:grid;gap:4px}
.wf-history li{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.wf-history time{color:var(--ah-muted)}
.wf-offer .row-actions .btn, .wf-request .row-actions .btn{min-height:40px}

/* The offer form */
dialog.wf-dialog{width:min(640px,calc(100% - 24px));max-height:90dvh;padding:0}
dialog.wf-dialog .ah-dialog-body{display:flex;flex-direction:column;max-height:90dvh;box-sizing:border-box}
.wf-dialog-scroll{overflow:auto;flex:1;min-height:0;padding:2px 2px 0}
.wf-field{border:0;padding:0;margin:0 0 12px;min-width:0}
.wf-field legend{font-weight:600;font-size:.9rem;color:var(--ah-navy);margin-bottom:6px;padding:0}
.wf-picker input{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--ah-line-strong);border-radius:10px;font:inherit;box-sizing:border-box}
.wf-picker-list{display:grid;gap:6px;margin-top:8px;max-height:240px;overflow:auto}
.wf-cand{display:flex;gap:10px;align-items:center;text-align:start;width:100%;min-height:56px;padding:6px;border:1px solid var(--ah-line);border-radius:10px;background:#fff;cursor:pointer;font:inherit;color:inherit}
.wf-cand:hover, .wf-cand:focus-visible{border-color:var(--ah-navy)}
.wf-cand img, .wf-cand-ph{width:56px;height:44px;border-radius:8px;object-fit:cover;flex:none;background:#E9EEF2}
.wf-cand span{display:flex;flex-direction:column;min-width:0}
.wf-cand small, .wf-picked small{color:var(--ah-muted);font-size:.8rem}
.wf-picked{display:flex;gap:10px;align-items:center;border:1px solid var(--ah-line);border-radius:12px;padding:8px}
.wf-picked img{width:64px;height:48px;border-radius:8px;object-fit:cover;flex:none}
.wf-picked > div{flex:1;min-width:0;display:flex;flex-direction:column}
.wf-quote{margin:0 0 12px}
.wf-quote .lines{background:var(--ah-bg);border-radius:12px;padding:10px 12px}
@media (max-width:640px){
  dialog.wf-dialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;border-radius:0}
  dialog.wf-dialog .ah-dialog-body{height:100dvh;max-height:100dvh;padding:16px 16px calc(16px + env(safe-area-inset-bottom))}
  .wf-offer-pic{width:60px;height:48px}
  .wf-picker input, .ah-field input, .ah-field select, .ah-field textarea{font-size:16px}
}

/* Recently viewed */
.ah-saved-card{position:relative}
.wf-heart{position:absolute;top:10px;inset-inline-end:10px;width:40px;height:40px;border-radius:50%;border:0;background:rgba(255,255,255,.92);display:grid;place-items:center;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.18);color:var(--ah-navy)}
.wf-heart .ah-ic{width:20px;height:20px}
.wf-heart.is-on{color:#C8384E}
.wf-heart.is-on .ah-ic{fill:currentColor}
.wf-heart:focus-visible{outline:3px solid rgba(199,162,80,.6);outline-offset:2px}
.wf-gone{background:var(--ah-bg)}
.wf-recent-tools{justify-content:flex-end}

/* Saved lists: dates */
.wf-datebar{padding:14px 16px;margin:0 0 14px}
.wf-datebar p{margin:0 0 8px}
.wf-datebar-row{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}
.wf-datebar-row .ah-field{margin:0;flex:1;min-width:140px}
.wf-datebar-row .btn{min-height:44px}
.wf-avail{display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-size:.86rem;margin:4px 0}
.wf-avail a{font-weight:600;color:var(--ah-navy)}

/* Reviews */
.wf-stars{color:#C9CFD6;letter-spacing:1px;white-space:nowrap}
.wf-stars .on{color:var(--ah-gold)}
.wf-cat-scores{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:4px 16px;margin:10px 0 0;font-size:.86rem}
.wf-cat-scores div{display:flex;justify-content:space-between;gap:8px}
.wf-cat-scores dt{color:var(--ah-muted)}
.wf-cat-scores dd{margin:0}
.wf-overall{display:flex;gap:8px;align-items:center;flex-wrap:wrap;background:var(--ah-bg);border-radius:10px;padding:8px 12px}
.wf-rate-row{display:flex;gap:4px}
.wf-rate-row label{position:relative;cursor:pointer;font-size:1.7rem;line-height:1;color:#C9CFD6;min-width:44px;min-height:44px;display:grid;place-items:center}
.wf-rate-row label.on{color:var(--ah-gold)}
.wf-rate-row input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.wf-rate-row label:focus-within{outline:3px solid rgba(199,162,80,.5);border-radius:8px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Payments */
.wf-pay-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:0 0 16px}
.wf-stat{padding:14px 16px;display:flex;flex-direction:column;gap:4px}
.wf-stat b{font-size:1.3rem;color:var(--ah-navy);font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate;align-self:flex-start}
.wf-stat small{color:var(--ah-muted)}
.wf-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;padding:14px 16px;margin:0 0 14px;align-items:end}
.wf-filters .ah-field{margin:0}
.wf-filter-actions{display:flex;gap:8px}
.wf-filter-actions .btn{min-height:44px}
.wf-txn .wf-offer-top{justify-content:space-between}
.wf-txn-amt{display:flex;flex-direction:column;align-items:flex-end;gap:4px;text-align:end}
.wf-txn-amt b{direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums;color:var(--ah-navy)}
.wf-bad{color:#A3262F}
.wf-pager{display:flex;gap:12px;justify-content:center;align-items:center;margin:14px 0}
.wf-methods{padding:16px 18px;margin:0 0 14px}
.wf-methods-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.wf-methods-head .btn{min-height:44px;display:inline-flex;gap:6px;align-items:center}
.wf-cards{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
.wf-cards li{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border:1px solid var(--ah-line);border-radius:12px;padding:10px 12px}
.wf-cards li > span:nth-child(2){flex:1;min-width:140px;display:flex;flex-direction:column}
.wf-cards small{color:var(--ah-muted)}
.wf-card-brand{width:44px;height:30px;border-radius:6px;background:var(--ah-navy);color:#fff;font-size:.7rem;font-weight:800;display:grid;place-items:center;letter-spacing:.5px}

/* Messages: inbox beside the open conversation on desktop; inbox -> conversation on mobile */
.wf-inbox{display:grid;grid-template-columns:minmax(260px,340px) 1fr;gap:14px;align-items:start}
.wf-inbox-list{padding:12px;min-width:0}
.wf-inbox-tools{display:grid;gap:8px;margin-bottom:8px}
.wf-inbox-tools .btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:6px}
.wf-inbox-tools input{min-height:44px;padding:8px 12px;border:1px solid var(--ah-line-strong);border-radius:10px;font:inherit}
.wf-convs{list-style:none;margin:0;padding:0;display:grid;gap:4px;max-height:62vh;overflow:auto}
.wf-conv{display:flex;gap:10px;align-items:center;padding:8px;border-radius:12px;text-decoration:none;color:inherit;min-height:56px}
.wf-conv:hover{background:var(--ah-bg)}
.wf-conv.is-on{background:var(--ah-gold-soft);box-shadow:inset 3px 0 0 var(--ah-gold)}
[dir=rtl] .wf-conv.is-on{box-shadow:inset -3px 0 0 var(--ah-gold)}
.wf-conv .wf-offer-pic{width:52px;height:44px}
.wf-conv-main{flex:1;min-width:0;display:flex;flex-direction:column}
.wf-conv-main b{color:var(--ah-navy)}
.wf-conv-main small{color:var(--ah-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wf-conv.is-unread .wf-conv-last{color:var(--ah-navy);font-weight:700}
.wf-conv-side{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.wf-conv-side small{color:var(--ah-muted);font-size:.75rem;white-space:nowrap}
.wf-badge{background:var(--ah-navy);color:#fff;border-radius:999px;min-width:22px;height:22px;padding:0 6px;font-size:.75rem;font-weight:700;display:grid;place-items:center}
.wf-thread{display:flex;flex-direction:column;min-height:520px;max-height:78vh;padding:0;overflow:hidden;min-width:0}
.wf-thread-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--ah-muted);padding:24px;text-align:center}
.wf-thread-head{display:flex;gap:10px;align-items:center;padding:12px 14px;border-bottom:1px solid var(--ah-line);flex-wrap:wrap}
.wf-thread-head .wf-offer-meta small a{color:inherit}
.wf-back{display:none}
.wf-msgs{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:10px;background:var(--ah-bg);min-height:200px}
.wf-msg{display:flex;flex-direction:column;align-items:flex-start;max-width:78%}
.wf-msg.is-mine{align-self:flex-end;align-items:flex-end}
.wf-bubble{background:#fff;border:1px solid var(--ah-line);border-radius:14px;padding:8px 12px;white-space:pre-wrap;overflow-wrap:anywhere}
.wf-msg.is-mine .wf-bubble{background:var(--ah-navy);color:#fff;border-color:var(--ah-navy)}
.wf-msg.wf-st-held .wf-bubble, .wf-msg.wf-st-sending .wf-bubble{opacity:.7}
.wf-msg.wf-st-failed .wf-bubble{background:#fff;color:#A3262F;border-color:#E5B5B9}
.wf-msg small{color:var(--ah-muted);font-size:.75rem;margin-top:2px}
.wf-held-note{color:var(--ah-gold-text)!important}
.wf-link{background:none;border:0;padding:0;color:var(--ah-navy);text-decoration:underline;cursor:pointer;font:inherit}
.wf-more{text-align:center}
.wf-thread-start{text-align:center;margin:auto}
.wf-composer{border-top:1px solid var(--ah-line);padding:10px 12px;background:#fff;position:sticky;bottom:0}
.wf-compose-note{margin:0 0 6px;color:var(--ah-muted);font-size:.78rem}
.wf-compose-err{color:#A3262F;font-size:.88rem;font-weight:600}
.wf-compose-err:empty{display:none}
.wf-compose-row{display:flex;gap:8px;align-items:flex-end}
.wf-compose-row textarea{flex:1;min-height:48px;max-height:160px;resize:vertical;padding:10px 12px;border:1px solid var(--ah-line-strong);border-radius:12px;font:inherit;font-size:16px}
.wf-compose-row textarea.is-invalid{border-color:#A3262F;box-shadow:0 0 0 3px rgba(163,38,47,.15)}
.wf-compose-row .btn{min-height:48px}
@media (max-width:860px){
  .wf-inbox{grid-template-columns:1fr}
  .wf-inbox.has-thread .wf-inbox-list{display:none}
  .wf-inbox:not(.has-thread) .wf-thread{display:none}
  .wf-back{display:inline-flex}
  .wf-thread{min-height:calc(100dvh - 220px);max-height:none}
  .wf-msg{max-width:88%}
}
.wf-composer{min-width:0}
.wf-compose-err, .wf-compose-note{overflow-wrap:anywhere}
@media (max-width:860px){
  /* Above the bottom navigation, so the field and Send stay reachable while typing. */
  .wf-composer{bottom:calc(64px + env(safe-area-inset-bottom));box-shadow:0 -4px 12px rgba(32,61,78,.08)}
  .wf-thread{min-height:calc(100dvh - 260px)}
  .wf-thread-head .wf-offer-meta{min-width:120px}
}
@media (max-width:860px){ body:has(.wf-inbox.has-thread) .as-launch{display:none} }

/* ===== Third round: price alerts (account-more.js) ===== */
.am-alerts{display:grid;gap:14px;margin:0 0 18px}
.am-alert{background:var(--ah-card);border:1px solid var(--ah-line);border-radius:16px;padding:16px;box-shadow:var(--ah-shadow)}
.am-alert.is-off{opacity:.82}
.am-alert.is-hit{border-color:var(--ah-gold);box-shadow:0 0 0 2px var(--ah-gold-soft)}
.am-alert-top{display:flex;align-items:center;gap:12px}
.am-alert-pic{width:56px;height:56px;border-radius:12px;object-fit:cover;flex:none;background:#EEF1F4;display:inline-flex;align-items:center;justify-content:center;color:var(--ah-navy)}
.am-alert-what{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.am-alert-what a{color:var(--ah-navy);text-decoration:none}
.am-alert-what small{color:var(--ah-muted)}
.am-alert-figs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0 6px}
.am-alert-figs div{background:var(--ah-bg);border-radius:10px;padding:8px 10px}
.am-alert-figs dt{font-size:.75rem;color:var(--ah-muted);margin:0 0 2px}
.am-alert-figs dd{margin:0;font-weight:600;color:var(--ah-navy)}
.am-alert-note{margin:8px 0;color:var(--ah-muted);font-size:.9rem}
.am-alert-note.is-warn,.is-warn{color:#9A3412}
.am-channels{list-style:none;padding:0;margin:8px 0;display:grid;gap:6px}
.am-channels li{display:flex;align-items:center;gap:8px}
.am-seg{display:flex;gap:6px;margin:0 0 12px}
.am-seg label{flex:1}
.am-seg input{position:absolute;opacity:0}
.am-seg span{display:block;text-align:center;padding:10px;border:1px solid var(--ah-line-strong);border-radius:10px;font-weight:600;cursor:pointer}
.am-seg input:checked + span{background:var(--ah-navy);color:#fff;border-color:var(--ah-navy)}
.am-seg input:focus-visible + span{outline:2px solid var(--ah-gold);outline-offset:2px}
@media (max-width:640px){.am-alert-figs{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ===== Group trips (account-more.js) ===== */
.am-trips{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.am-trip-card{display:flex;flex-direction:column;gap:6px;background:var(--ah-card);border:1px solid var(--ah-line);border-radius:16px;padding:16px;text-decoration:none;color:inherit;box-shadow:var(--ah-shadow)}
.am-trip-card:hover{border-color:var(--ah-line-strong)}
.am-trip-card-top{display:flex;justify-content:space-between;gap:8px;align-items:flex-start;color:var(--ah-navy)}
.am-trip-card small{color:var(--ah-muted)}
.am-unread{align-self:flex-start;background:var(--ah-navy);color:#fff;border-radius:999px;padding:2px 10px;font-size:.78rem}
.am-trip-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.am-trip-desc{background:var(--ah-gold-soft);border-radius:12px;padding:10px 14px;margin:0 0 12px}
.am-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.am-places{display:grid;gap:14px}
.am-place{display:grid;grid-template-columns:180px 1fr;gap:14px;background:var(--ah-card);border:1px solid var(--ah-line);border-radius:16px;padding:12px}
.am-place.is-selected{border-color:var(--ah-gold)}
.am-place-pic{display:block;border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:#EEF1F4}
.am-place-pic img{width:100%;height:100%;object-fit:cover}
.am-place-body{display:flex;flex-direction:column;gap:6px;min-width:0}
.am-place-top{display:flex;justify-content:space-between;gap:8px}
.am-place-top a{color:var(--ah-navy);text-decoration:none}
.am-place-body small{color:var(--ah-muted)}
.am-comments summary{cursor:pointer;font-weight:600;color:var(--ah-navy);min-height:32px;display:flex;align-items:center}
.am-comments ul{list-style:none;padding:0;margin:6px 0;display:grid;gap:6px}
.am-comments li.is-held,.am-msg.is-held{opacity:.7}
.am-comment-form{display:flex;gap:8px}
.am-comment-form input{flex:1;min-width:0;min-height:40px;border:1px solid var(--ah-line-strong);border-radius:10px;padding:0 10px}
.am-compare-wrap{overflow-x:auto}
.am-compare{width:100%;border-collapse:collapse;background:var(--ah-card)}
.am-compare th,.am-compare td{border-bottom:1px solid var(--ah-line);padding:8px;text-align:start;vertical-align:top}
.am-chat{background:var(--ah-card);border:1px solid var(--ah-line);border-radius:16px;padding:12px}
.am-chat-list{max-height:420px;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:4px}
.am-msg{max-width:80%;align-self:flex-start;background:var(--ah-bg);border-radius:14px;padding:8px 12px}
.am-msg.is-mine{align-self:flex-end;background:#E6F2F6}
.am-msg-meta small{color:var(--ah-muted)}
.am-msg-body{white-space:pre-wrap;overflow-wrap:anywhere}
.am-msg-quote{border-inline-start:3px solid var(--ah-gold);padding-inline-start:8px;color:var(--ah-muted);font-size:.85rem;margin-bottom:4px}
.am-msg-reply{background:none;border:0;color:var(--ah-navy);font-weight:600;padding:4px 0;cursor:pointer}
.am-chat-form{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px;align-items:end}
.am-chat-form textarea{min-height:44px;border:1px solid var(--ah-line-strong);border-radius:12px;padding:8px 10px;resize:vertical}
.am-reply{grid-column:1/-1;background:var(--ah-gold-soft);border-radius:10px;padding:6px 10px;display:flex;justify-content:space-between;align-items:center;gap:8px}
.am-members{list-style:none;padding:0;margin:0 0 10px;display:grid;gap:8px}
.am-members li{display:flex;align-items:center;gap:10px;background:var(--ah-card);border:1px solid var(--ah-line);border-radius:12px;padding:10px}
.am-member-actions{margin-inline-start:auto;display:flex;gap:6px;flex-wrap:wrap}
.am-avatar{width:36px;height:36px;border-radius:50%;background:var(--ah-navy);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:700;flex:none}
.am-invites{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.am-invites li{display:grid;gap:4px}
.am-invites input{width:100%;min-height:40px;border:1px solid var(--ah-line-strong);border-radius:10px;padding:0 10px;font-size:.85rem}
.am-costs{display:grid;gap:6px;margin:8px 0}
.am-costs div{display:flex;justify-content:space-between;gap:10px}
.am-costs dt{color:var(--ah-muted)}
.am-costs dd{margin:0;font-weight:600}
.am-costs-total{border-top:1px solid var(--ah-line);padding-top:6px}
.am-costs-total dt,.am-costs-total dd{color:var(--ah-navy);font-weight:700}
.am-bookings{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.am-bookings li{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.am-bookings li>span:first-child{display:flex;flex-direction:column;flex:1;min-width:160px}
@media (max-width:640px){.am-place{grid-template-columns:1fr}.am-grid3{grid-template-columns:repeat(3,minmax(0,1fr))}.am-msg{max-width:92%}.am-trip-head{flex-direction:column}}

/* ===== AlameinGo Rewards (account-more.js) ===== */
.am-rcard{border-radius:20px;padding:22px;color:#fff;background:linear-gradient(135deg,#203D4E,#2C5468);box-shadow:0 10px 30px rgba(32,61,78,.18);margin:0 0 16px;max-width:520px}
.am-rcard.tier-silver{background:linear-gradient(135deg,#203D4E,#4B6474)}
.am-rcard.tier-gold{background:linear-gradient(135deg,#203D4E,#3A4F57);border:2px solid #C7A250}
.am-rcard-top{display:flex;justify-content:space-between;align-items:center}
.am-rcard-brand{font-weight:700;letter-spacing:.02em;opacity:.9}
.am-tier-ic{display:inline-flex;width:30px;height:30px;color:#C7A250}
.am-tier-ic svg{width:100%;height:100%}
.am-rcard-tier{font-size:1.8rem;font-weight:800;margin:18px 0 10px;color:#fff}
.am-rcard-meta{display:flex;justify-content:space-between;gap:10px;font-size:.88rem;opacity:.9;flex-wrap:wrap}
.am-progress p{margin:8px 0 0}
.am-bar{height:12px;border-radius:999px;background:#E1E7ED;overflow:hidden}
.am-bar span{display:block;height:100%;background:#C7A250;border-radius:999px}
.am-top{display:flex;align-items:center;gap:8px;font-weight:700;color:var(--ah-navy);margin:0}
.am-sumcards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 16px}
.am-sumcards .ah-card{margin:0;display:flex;flex-direction:column;gap:4px}
.am-sumcards b{font-size:1.4rem;color:var(--ah-navy)}
.am-sumcards .am-benefit-now{font-size:1rem}
.am-benefits{list-style:none;padding:0;margin:0 0 10px;display:grid;gap:10px}
.am-benefits li{display:flex;justify-content:space-between;gap:10px;align-items:center;border-bottom:1px solid var(--ah-line);padding-bottom:10px}
.am-tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.am-tier{border:1px solid var(--ah-line);border-radius:14px;padding:14px}
.am-tier.is-current{border-color:#C7A250;box-shadow:0 0 0 2px var(--ah-gold-soft)}
.am-tier-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.am-tier-head .am-tier-ic{color:var(--ah-gold-text);width:24px;height:24px}
.am-tier ul{margin:8px 0 0;padding-inline-start:18px;display:grid;gap:4px}
.am-sav{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.am-sav li{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.am-sav li>span:first-child{display:flex;flex-direction:column;flex:1;min-width:160px}
.am-terms summary{cursor:pointer;font-weight:700;color:var(--ah-navy)}
.am-terms ul{margin:10px 0 0;padding-inline-start:18px;display:grid;gap:6px;color:var(--ah-muted)}
.am-req-bar{background:var(--ah-gold-soft);padding:8px 12px;display:grid;gap:6px}
.am-req{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center}
.rewards-line span:first-child{color:var(--ah-gold-text,#7F6427)}
@media (max-width:720px){.am-sumcards,.am-tiers{grid-template-columns:1fr}}

/* ---------- Notifications page ---------- */
.am-nt-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin:0 0 8px}
.am-nt-filters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;max-width:100%}
.am-nt-filters .ah-chip{white-space:nowrap}
.am-nt-tools{display:flex;gap:6px;flex-wrap:wrap}
.am-nts{display:flex;flex-direction:column;gap:10px;margin-top:12px}
.am-nt{display:flex;gap:12px;align-items:flex-start;background:var(--ah-card);border:1px solid var(--ah-line);border-radius:14px;padding:14px 16px;box-shadow:var(--ah-shadow)}
.am-nt.is-unread{border-inline-start:4px solid #C7A250;background:linear-gradient(0deg,rgba(199,162,80,.06),rgba(199,162,80,.06)),var(--ah-card)}
.am-nt-ic{flex:0 0 40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#EAF0F3;color:#203D4E}
.am-nt-ic .ah-ic{width:20px;height:20px}
.am-nt-ic-security{background:#FBEFE6;color:#9A4B14}
.am-nt-ic-payments{background:#F4EEDD;color:#7A5E1E}
.am-nt-body{flex:1;min-width:0}
.am-nt-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.am-nt-top b{color:#203D4E;font-size:15px}
.am-nt-top time{margin-inline-start:auto;font-size:12.5px;color:var(--ah-muted,#5b6b75);white-space:nowrap}
.am-nt-dot{width:9px;height:9px;border-radius:50%;background:#C7A250;display:inline-block}
.am-nt-body p{margin:4px 0 10px;color:#2b3a43;line-height:1.5;font-size:14px;overflow-wrap:anywhere}
.am-nt-actions{display:flex;flex-wrap:wrap;gap:6px}
@media (max-width:640px){.am-nt{padding:12px}.am-nt-ic{flex-basis:34px;height:34px}.am-nt-top time{margin-inline-start:0;width:100%}}

/* ---------- Personal details / verification ---------- */
.ac-banner{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;justify-content:space-between;background:var(--ah-gold-soft,#FAF5EA);border:1px solid #E9D9B0;border-inline-start:4px solid #C7A250;border-radius:14px;padding:14px 16px;margin:0 0 16px}
.ac-banner-main{display:flex;gap:10px;align-items:flex-start;flex:1 1 320px;min-width:0}
.ac-banner-main .ah-ic{flex:0 0 22px;width:22px;height:22px;color:#203D4E;margin-top:2px}
.ac-banner-main b{color:#203D4E}
.ac-banner-main p{margin:2px 0 0;font-size:13.5px;color:#3c4b55;line-height:1.5}
.ac-banner-steps{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13.5px}
.ac-banner-steps li{display:flex;gap:6px;align-items:center}
.ac-steps{list-style:none;display:flex;gap:8px;padding:0;margin:0 0 16px;flex-wrap:wrap}
.ac-steps li{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ah-muted);background:#fff;border:1px solid var(--ah-line);border-radius:999px;padding:6px 12px 6px 6px}
.ac-steps li span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#EAF0F3;color:#203D4E;font-weight:700;font-size:12.5px}
.ac-steps li span .ah-ic{width:14px;height:14px}
.ac-steps li.is-done span{background:#203D4E;color:#fff}
.ac-steps li.is-now{border-color:#C7A250;color:#203D4E;font-weight:600}
.ac-steps li.is-now span{background:#C7A250;color:#fff}
.ac-sec-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.ac-sec-head h2{margin:0}
.ac-row-actions{display:flex;gap:6px;flex-wrap:wrap}
.ac-flash{box-shadow:0 0 0 3px rgba(199,162,80,.45)!important;transition:box-shadow .3s}
.ac-purpose{margin:10px 0;font-size:13.5px}
.ac-purpose summary{cursor:pointer;color:#203D4E;font-weight:600}
.ac-purpose ul{margin:8px 0 0;padding-inline-start:20px;line-height:1.55;color:#3c4b55}
.ac-docs{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin:12px 0}
.ac-doc{display:flex;gap:12px;border:1px dashed var(--ah-line-strong);border-radius:12px;padding:12px;background:#FBFCFD}
.ac-doc.has-file{border-style:solid;background:#fff}
.ac-doc-prev{flex:0 0 96px;height:66px;border-radius:8px;background:#EAF0F3;display:grid;place-items:center;overflow:hidden;color:#203D4E}
.ac-doc-prev img{width:100%;height:100%;object-fit:cover}
.ac-doc-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.ac-doc-body small{color:var(--ah-muted)}
.ac-doc-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.ac-doc-progress{height:4px;background:#EAF0F3;border-radius:4px;overflow:hidden}
.ac-doc-progress span{display:block;height:100%;width:0;background:#C7A250;transition:width .2s}
.ac-check{display:flex;gap:10px;align-items:flex-start;margin:10px 0;font-size:14px;line-height:1.5}
.ac-check input{margin-top:3px;flex:0 0 auto;width:18px;height:18px}
.ac-phone-row{display:grid;grid-template-columns:minmax(150px,1fr) 2fr;gap:10px}
.ac-comp-mini{list-style:none;padding:0;margin:6px 0 0;display:flex;flex-wrap:wrap;gap:6px}
.ac-comp-mini li{background:#EAF0F3;color:#203D4E;border-radius:999px;padding:3px 10px;font-size:13px}
.ac-comp-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}
.ac-comp-tools{display:flex;gap:8px;align-items:center}
.ac-comp-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.ac-comp{display:flex;align-items:center;gap:12px}
.ac-comp small{display:block;color:var(--ah-muted)}
.ac-comp-empty{text-align:center;padding:24px 16px}
.ac-comp-empty p{margin:0 0 12px;color:#3c4b55}
.ac-comp-privacy{display:flex;gap:6px;align-items:flex-start;margin-top:14px}
.ac-comp-privacy .ah-ic{flex:0 0 16px;width:16px;height:16px}
.ah-note.is-warn{background:#FBEFE6;border-color:#EDC9AE}
.b-travellers{margin:8px 0 4px}
.b-trav summary{cursor:pointer;font-weight:600;color:#203D4E;font-size:14px}
.b-trav-list{list-style:none;padding:0;margin:6px 0;display:flex;flex-direction:column;gap:4px}
.b-trav-list label{display:flex;gap:8px;align-items:center;font-size:14px}
.b-trav-list small{color:var(--ah-muted)}
.b-trav-extra{display:flex;justify-content:space-between;gap:8px;font-size:14px;padding:4px 0}
@media (max-width:640px){
  .ac-phone-row{grid-template-columns:1fr}
  dialog.ac-full-mobile{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border-radius:0}
  .ac-steps li{font-size:12.5px}
}

/* ===== Login & security page (account-security.js) ===== */
#ahPage .ah-card + .ah-card { margin-top: 16px; }
.as-h { font-size: 1.1rem; margin: 0 0 8px; }
.as-overview .ah-status-line { display: flex; align-items: center; gap: 10px; padding: 6px 0; }
.as-overview .ah-status-line > span { flex: 1; }
.as-toggle { display: flex; gap: 10px; align-items: flex-start; margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--line, #e5e7eb); cursor: pointer; }
.as-toggle input { margin-top: 4px; width: 18px; height: 18px; }
.as-toggle small { display: block; color: var(--muted, #6b7280); }
.as-pw { display: flex; align-items: center; gap: 8px; }
.as-pw input { flex: 1; }
.as-req { list-style: none; padding: 0; margin: 8px 0; font-size: .9rem; color: var(--muted, #6b7280); }
.as-req li::before { content: '○'; display: inline-block; width: 1.4em; }
.as-req li.ok { color: #0f7a4a; }
.as-req li.ok::before { content: '✓'; }
.as-warn { color: #9a5b00; background: #fff6e5; border-radius: 8px; padding: 8px 12px; }
.as-list { display: grid; gap: 8px; }
.as-row { display: flex; gap: 12px; align-items: flex-start; padding: 12px; border: 1px solid var(--line, #e5e7eb); border-radius: 12px; }
.as-row-main { flex: 1 1 200px; min-width: 0; }
.as-row-main small, .as-table td small { display: block; color: var(--muted, #6b7280); }
.as-table th { text-align: start; font-weight: 600; }
.as-notme { border: 2px solid #c0392b; }
.as-notme.as-done { border-color: #0f7a4a; }
#asActivity [data-more] { margin-top: 12px; }
@media (max-width: 720px) {
  .as-table thead { display: none; }
  .as-table, .as-table tbody, .as-table tr, .as-table td { display: block; width: 100%; }
  .as-table tr { border: 1px solid var(--line, #e5e7eb); border-radius: 12px; padding: 10px 12px; margin-bottom: 8px; }
  .as-table td { border: 0; padding: 2px 0; }
  .as-row { flex-wrap: wrap; }
}

/* ===== Preferences page (account-preferences.js) ===== */
.ap-channels { display: flex; flex-wrap: wrap; gap: 8px 16px; margin: 8px 0 12px; }
.ap-ch { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: .92rem; }
.ap-matrix td { text-align: center; }
.ap-matrix th small { display: block; font-weight: 400; color: var(--muted, #6b7280); }
.ap-matrix input[type=checkbox] { width: 22px; height: 22px; }
.ap-na { color: var(--muted, #9ca3af); }
.ap-quiet { border: 1px solid var(--line, #e5e7eb); border-radius: 12px; padding: 12px; margin-top: 12px; }
.ap-quiet-times { display: flex; flex-wrap: wrap; gap: 12px; margin: 8px 0; }
.ap-quiet-times .ah-field { min-width: 140px; }
#apForm .ah-switch { display: flex; gap: 10px; align-items: center; min-height: 44px; }
.ap-preview { background: #F5F7F9; border-radius: 10px; padding: 10px 12px; }
.ap-dev { display: flex; flex-wrap: wrap; gap: 8px; justify-content: space-between; align-items: flex-start; padding: 10px 0; border-top: 1px solid var(--line, #e5e7eb); }
.ap-dev > div { flex: 1 1 220px; display: grid; gap: 4px; }
.ap-help { background: #F5F7F9; border-radius: 10px; padding: 10px 12px; }
.ap-manual { display: flex; flex-wrap: wrap; gap: 8px; align-items: flex-end; }
.ap-manual .ah-field { flex: 1 1 200px; }
.ap-savebar { position: sticky; bottom: 72px; z-index: 30; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; justify-content: space-between;
  background: #203D4E; color: #fff; border-radius: 14px; padding: 10px 14px; margin-top: 16px; box-shadow: 0 6px 24px rgba(0,0,0,.18); }
.ap-savebar .btn-ghost { color: #fff; border-color: rgba(255,255,255,.5); }
.ap-savebar .btn-ink { background: #C7A250; color: #203D4E; }
@media (max-width: 720px) {
  .ap-matrix thead { display: none; }
  .ap-matrix, .ap-matrix tbody, .ap-matrix tr { display: block; }
  .ap-matrix tr { display: grid; grid-template-columns: repeat(4, 1fr); gap: 4px; border: 1px solid var(--line, #e5e7eb); border-radius: 12px; padding: 10px; margin-bottom: 8px; }
  .ap-matrix th[scope=row] { grid-column: 1 / -1; text-align: start; }
  .ap-matrix td { display: flex; flex-direction: column; align-items: center; gap: 2px; font-size: .8rem; }
  .ap-matrix td::before { content: attr(data-ch); color: var(--muted, #6b7280); }
}
.ap-savebar[hidden] { display: none; }

/* ===== Privacy & data page (account-privacy.js) ===== */
.pv-toc { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.pv-toc a { padding: 6px 12px; border-radius: 999px; background: #fff; border: 1px solid var(--line, #e5e7eb); color: #203D4E; text-decoration: none; font-size: .9rem; }
.pv-two { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px; margin: 14px 0; }
.pv-export { display: flex; flex-wrap: wrap; gap: 10px; justify-content: space-between; align-items: center; padding: 10px 12px; border: 1px solid var(--line, #e5e7eb); border-radius: 12px; margin: 10px 0; }
.pv-details, .pv-ret details { border: 1px solid var(--line, #e5e7eb); border-radius: 10px; padding: 8px 12px; margin: 8px 0; }
.pv-details summary, .pv-ret summary { cursor: pointer; min-height: 32px; }
.pv-ret dl { display: grid; grid-template-columns: max-content 1fr; gap: 6px 12px; margin: 8px 0 4px; }
.pv-ret dt { font-weight: 600; color: #203D4E; }
.pv-ret dd { margin: 0; }
.pv-h3 { font-size: 1rem; margin: 16px 0 6px; }
.pv-danger { border-inline-start: 4px solid #c0392b; }
.pv-consequences, .pv-blockers { background: #fff7f5; border-radius: 10px; padding: 10px 14px; margin: 10px 0; }
.pv-reauth-alt { display: flex; flex-wrap: wrap; gap: 4px 14px; }
@media (max-width: 560px) { .pv-ret dl { grid-template-columns: 1fr; } }
