/* Next Kopi · round 26 · Road Trip (additions, after r23.css)
   Tokens first; every one an alias of a patterns.css token or of rounds 15–21's. No new hex values, no new faces.
   Hard rule: no dashboards. The trip page and the money are sentences and faces: no tiles, no bars, no tables, no big totals. */
:root,[data-theme]{
--rt26-rule:var(--run15-rule);--rt26-head:var(--run15-head);--rt26-on:var(--gb21-on);--rt26-wait:var(--gb21-says);--rt26-quiet:var(--gb21-private);
}
/* 1 · ✦'s draft: the days as empty stops */
.ln15 .dd26{display:flex;flex-direction:column}
.ln15 .dd26 p{display:flex;justify-content:space-between;flex-wrap:wrap;gap:2px 10px;padding:8px 0;border-bottom:1px solid var(--rt26-rule);font-size:15px;line-height:1.4}
.dd26 em{font-style:normal;font-size:14px;color:var(--ink-3)}
/* 2 · the trip, day by day: one column, a day heading in the display face, each stop a face and a sentence */
.dys26{display:flex;flex-direction:column}
.dy26{display:flex;flex-direction:column;padding:14px 0 8px;border-top:1px solid var(--rt26-rule)}
.dy26 h2{font:500 21px/1.3 var(--font-display);color:var(--ink);text-wrap:pretty}
.dr26{font-size:14px;line-height:1.4;color:var(--ink-2);padding-bottom:2px}
.sp26{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;align-items:start;padding:8px 0}.sp26 .av{margin:0}
.sp26 b{font:600 16px/1.35 var(--font-body);color:var(--ink);text-wrap:pretty}.sp26 .col{gap:2px;min-width:0}.sp26 .col>span{font-size:14px;line-height:1.4;color:var(--ink-2)}
.tn26{font:400 16px/1.45 var(--font-display);color:var(--ink);padding:4px 0 2px;text-wrap:pretty}
.ne26{font-size:15px;line-height:1.45;color:var(--ink-3);padding:6px 0}.ne26 .pk15{margin-left:4px}
/* 3 · a stop: which day of the trip, and its host */
.dl26{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;font:600 14px/1.4 var(--font-body);color:var(--ink-2)}
.hs26{display:flex;align-items:center;gap:8px;font-size:15px;line-height:1.4;color:var(--ink)}.hs26 .av{margin:0;flex:none}
/* 4 · who looks after what: one face, one sentence */
.pts26{display:flex;flex-direction:column}
.pt26{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:start;padding:12px 0;border-top:1px solid var(--rt26-rule)}.pt26 .av{margin:0}
.pt26 b{font:500 19px/1.35 var(--font-display);color:var(--ink);text-wrap:pretty}.pt26 .col{gap:3px;min-width:0}.pt26 .col>span{font-size:14px;line-height:1.4;color:var(--ink-2)}
/* 5 · what we need: the thing, then who · its state in words · the amount · its confirmation */
.nds26{display:flex;flex-direction:column}
.nd26{display:flex;flex-direction:column;gap:3px;padding:10px 0;border-top:1px solid var(--rt26-rule)}
.nd26>b{font:600 16px/1.35 var(--font-body);color:var(--ink);text-wrap:pretty}
.mt26{display:flex;flex-wrap:wrap;align-items:center;gap:2px 6px;font-size:14px;line-height:1.4;color:var(--ink-2)}.mt26>i{font-style:normal;color:var(--ink-3)}
.nm26{display:inline-flex;align-items:center;gap:6px}.nm26 .av{margin:0}.nm26>span{color:var(--ink);font-weight:600}
.nb26{font-style:normal;font-weight:600;color:var(--rt26-wait)}
.w26{display:inline-flex;align-items:center;gap:3px}.w26.booked{color:var(--rt26-on);font-weight:600}.w26.done{color:var(--ink-2)}.w26 .ic{width:14px;height:14px}
.am26{font-variant-numeric:tabular-nums;color:var(--ink);white-space:nowrap}
.fi26{display:inline-flex}.fi26 .ic{width:15px;height:15px}
.nds26 .bk22{margin-top:6px}
.ad26{display:flex;flex-wrap:wrap;gap:4px 10px;padding-top:12px}.ad26 i{font-style:normal;color:var(--ink-3)}
.it26{display:flex;flex-direction:column}.it26 p{font-size:16px;line-height:1.45;color:var(--ink);padding:8px 0;border-bottom:1px solid var(--rt26-rule);text-wrap:pretty}
.fx26{padding:0}
/* 6 · 7 · the rate kept with each spend */
.rt26{font-size:14px;line-height:1.4;color:var(--ink-2);font-variant-numeric:tabular-nums;text-wrap:pretty}
/* 7 · the money: each person in one sentence beside their face; each spend a sentence and its rate */
.pm26{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:start;padding:10px 0;border-top:1px solid var(--rt26-rule)}.pm26 .av{margin:0}
.pm26 p{font-size:16px;line-height:1.5;color:var(--ink);text-wrap:pretty}
.sx26{display:flex;flex-direction:column;gap:2px;padding:9px 0;border-top:1px solid var(--rt26-rule)}.sx26 p{font-size:16px;line-height:1.45;color:var(--ink);text-wrap:pretty}
/* 9 · settle up: two faces and the sentence; the state under it */
.trs26{display:flex;flex-direction:column;padding-top:6px}
.tr26{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;padding:12px 0;border-top:1px solid var(--rt26-rule)}
.tr26 .col{gap:6px;min-width:0}.tr26 .col>p:first-child{font:500 19px/1.35 var(--font-display);color:var(--ink)}
.sy26{font-style:normal;font-size:14px;font-weight:600;color:var(--rt26-wait)}
.tk26{display:inline-flex;align-items:center;gap:4px;font-size:14px;font-weight:600;color:var(--rt26-on)}.tk26 .ic{width:14px;height:14px}
.tq26{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--ink)}
:lang(my) :is(.sp26 .col>span,.mt26,.rt26,.pm26 p,.sx26 p,.it26 p,.dl26,.hs26,.ne26,.dr26,.pt26 .col>span,.dd26 p){line-height:1.8}
:lang(my) :is(.dy26 h2,.pt26 b,.tr26 .col>p:first-child,.tn26){font-size:18px;line-height:1.6}
/* the trip head (round 16 .ch16, not yet in the app) */
.ch16{display:flex;align-items:center;gap:14px}.ch16 .stk{flex:none}
/* ✦'s trip draft rows (Road Trip S1.3): the days as empty stops, in the helper's draft */
.hrows .dd26{display:flex;flex-direction:column}
.hrows .dd26 p{display:flex;justify-content:space-between;flex-wrap:wrap;gap:2px 10px;padding:6px 0;border-bottom:1px solid var(--rt26-rule)}
