/* The trip intake, as a component both doors can wear.
 *
 * Why this file exists: /account grew its own parallel intake — a plain text box for the
 * destination and a plain text box for the dates, with "2026-09-12 to 2026-09-14" as the
 * placeholder. The founder opened it on an iPhone and reasonably thought he was on a
 * different product. One intake, not two.
 *
 * These rules are the component only (the suggestion dropdown, the calendar dialog, the
 * chips, the two-up row). They are written against the custom properties every
 * Rustichello page already defines — --paper, --rule, --field, --accent, --gold, --slate,
 * --ink — so the component takes on whatever skin the page it is mounted in wears.
 */

.intake .row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:520px){.intake .row2{grid-template-columns:1fr}}
.intake .field{position:relative}
.intake .hint{font-size:.78rem;color:var(--slate);margin-top:6px}
.intake .opt-note{font-weight:400;opacity:.6}

/* destination suggestions: a quiet dropdown under the field (tap to confirm the place) */
.intake .suggest{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:30;
  background:var(--paper);border:1px solid var(--rule);border-radius:10px;
  box-shadow:0 10px 30px rgba(0,0,0,.10);overflow:hidden}
.intake .suggest.hidden{display:none}
.intake .suggest .opt{padding:11px 14px;font-size:.9rem;cursor:pointer;display:flex;gap:8px;
  align-items:baseline}
.intake .suggest .opt+.opt{border-top:1px solid var(--rule)}
.intake .suggest .opt.sel,.intake .suggest .opt:hover{background:#f7f1e4}
.intake .suggest .opt .pin{opacity:.55;font-size:.85em}

/* date-range picker: one field, one calendar, tap start then end.
 * Bounded to the width of its own field so the dialog cannot push a 390px phone
 * screen sideways; the page body never scrolls horizontally because of it. */
.intake .datefield{display:flex;align-items:center;gap:8px;cursor:pointer}
.intake .cal{position:absolute;top:calc(100% + 4px);left:0;z-index:30;background:var(--paper);
  border:1px solid var(--rule);border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.12);
  padding:14px;width:280px;max-width:100%;user-select:none;box-sizing:border-box}
.intake .cal.hidden{display:none}
.intake .cal .cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.intake .cal .cal-head b{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:1.05rem}
.intake .cal .cal-nav{background:none;border:1px solid var(--rule);border-radius:8px;width:28px;
  height:28px;cursor:pointer;color:var(--slate);margin:0;padding:0;font:inherit}
.intake .cal .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center}
.intake .cal .dow{font-size:.62rem;letter-spacing:.08em;color:#a99f88;padding:4px 0;
  font-family:"JetBrains Mono",monospace}
.intake .cal .day{appearance:none;border:0;background:none;color:inherit;font:inherit;width:100%;
  padding:7px 0;font-size:.84rem;border-radius:8px;cursor:pointer;margin:0}
.intake .cal .day:hover{background:#f7f1e4}
.intake .cal .day:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.intake .cal .day.dis{opacity:.28;cursor:default;background:none}
.intake .cal .day.inrange{background:#f3e8d3;border-radius:0}
.intake .cal .day.edge{background:var(--accent);color:#fff}
.intake .cal .cal-hint{font-size:.7rem;color:#a99f88;margin-top:8px;text-align:center;min-height:1em}

/* anchor + intensity chips: tap targets, not a dropdown */
.intake .chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.intake .chip{border:1px solid var(--rule);border-radius:22px;padding:8px 15px;font-size:.84rem;
  cursor:pointer;background:var(--field);user-select:none;transition:.15s}
.intake .chip:hover{border-color:var(--accent)}
.intake .chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.intake .chip.on{background:var(--accent);color:#fff;border-color:var(--accent)}
.intake .chip.second{background:transparent;color:var(--accent);border-color:var(--accent);
  box-shadow:inset 0 0 0 1px var(--accent)}
.intake .chip.second::before{content:'+ '}
