.import-groups{margin:20px 0;padding:16px;border:1px solid var(--line);border-radius:var(--radius-card,12px);color:var(--brand-navy);background:var(--brand-white);min-width:0}
.import-groups *{box-sizing:border-box}.import-groups summary{font-size:16px;font-weight:700;cursor:pointer;min-height:44px;align-content:center}
/* 27 Sep: a group's places are the catalogue's own cards (renderCards). These generic
   rules are for the group's own controls, so each is fenced off the cards — unfenced,
   .import-groups button (0,1,1) out-ranked the cards' Manage, Save to collection and
   photo tag and turned them into these pills.
   30 Sep: and off the trip search (assets/trip-search.js), for the same reason. Unfenced,
   `input` took its text padding from 39px to 12px, so its luggage icon sat on "Choose",
   and `button` drew each trip in its list as a pill (the owner's screenshot). */
.import-groups p:not(.cai-card-list *):not(.ww-trip-search *){font-size:14px;line-height:1.6;overflow-wrap:anywhere}.import-groups h3:not(.cai-card-list *){font:500 28px/1.2 var(--font-display);margin:24px 0 12px}
.import-groups label:not(.cai-card-list *):not(.ww-trip-search *){display:grid;gap:8px;font-size:14px;min-width:0}.import-groups input:not(.cai-card-list *):not(.ww-trip-search *){font:inherit;padding:12px;border:1px solid var(--brand-gray);border-radius:8px;min-width:0;max-width:100%}
.import-groups form:not(.cai-card-list *){display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:16px 0}.import-groups form:not(.cai-card-list *) label{flex:1 1 240px}
.import-groups select:not(.cai-card-list *){font:inherit;padding:12px;border:1px solid var(--brand-gray);border-radius:8px;min-width:0;max-width:100%;background:var(--brand-white);color:inherit}
.ig-upload{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1.4fr) minmax(0,1fr);gap:20px;padding:20px 0;border-top:1px solid var(--line);align-items:start}.ig-upload>*{min-width:0}.ig-upload a{display:inline-block}.ig-upload p{margin:8px 0}.ig-upload time{display:block}
/* DESIGN.md, one button shape: the 44px pill at 13.5px/700, an ink outline for a secondary.
   Fenced off Delete group… too: it is the shared danger button, which ui.css paints and a page never repaints. */
.import-groups button:not(.cai-card-list *):not(.ww-trip-search *):not([data-ig-delete]),.import-groups a:not(.cai-card-list *):not(.ww-trip-search *){font:700 13.5px/1.3 var(--font-body);color:var(--brand-navy);background:var(--brand-white);border:1px solid var(--brand-navy);border-radius:999px;padding:10px 16px;min-height:44px;cursor:pointer;white-space:normal;overflow-wrap:anywhere;display:inline-flex;align-items:center;gap:6px;text-decoration:none}
.import-groups button:not(.cai-card-list *):not(.ww-trip-search *):not([data-ig-delete]):hover,.import-groups a:not(.cai-card-list *):not(.ww-trip-search *):hover{background:var(--brand-ice)}.import-groups button:not(.cai-card-list *):disabled{opacity:.55;cursor:default}.import-groups :focus-visible{outline:3px solid var(--brand-navy);outline-offset:3px}
/* the one filled primary in the group's view: Save all to a collection */
#importGroups .ig-primary:not(:disabled){background:var(--brand-navy);color:var(--brand-white)}#importGroups .ig-primary:not(:disabled):hover{background:var(--brand-navy);color:var(--brand-white);filter:brightness(1.18)}
#importGroups .ig-quiet{border-color:transparent;text-decoration:underline;text-underline-offset:4px}
/* the group's page of cards: the catalogue's own two-up grid */
/* #importGroups .ig-cards: curation.js makes any .cai-result card list one column with an id-level :is() (1,1,0); a group's page is the catalogue's two-up grid */
.ig-cards{margin:8px 0 4px}#importGroups .ig-cards .ig-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:stretch}
@media(max-width:900px){#importGroups .ig-cards .ig-card-grid{grid-template-columns:minmax(0,1fr)}}
.import-groups .ig-missing{color:var(--muted-ink,rgba(41,54,74,.74))}
.ig-actions{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.ig-actions:empty{display:none}
/* a row is the door (DESIGN.md): the whole row opens the group */
[data-ig-list]{display:grid;gap:8px}.ig-row-wrap{display:flex;gap:8px;align-items:stretch;min-width:0}#importGroups [data-ig-list] .ig-manage{flex:none;align-self:center}
#importGroups [data-ig-list] .ig-row{flex:1 1 auto;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 16px;justify-items:start;text-align:left;border-radius:10px;border-color:var(--line);padding:12px 16px}
.ig-row-title{font-size:15px;font-weight:700}.ig-row-meta{grid-column:1;font-size:13.5px;font-weight:400;color:var(--muted-ink,#29364a)}
.ig-row-tag{grid-column:2;grid-row:1/span 2;align-self:center;font-size:12.5px;font-weight:700;background:var(--brand-ice);border-radius:999px;padding:4px 10px}
/* one group, as its own view */
#importGroups .ig-back{margin:6px 0 4px;border-color:transparent;padding-left:8px}#importGroups .ig-back::before{content:"‹";font-size:20px;line-height:1;margin-right:2px}
.ig-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;margin:6px 0 4px}.ig-head-actions{display:flex;gap:16px;flex-wrap:wrap}.ig-title{min-width:0}#importGroups .ig-title h3{margin:0 0 4px}
#importGroups p.ig-meta{margin:0;color:var(--muted-ink,#29364a);font-size:14px}
.ig-trips{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:18px 0 6px}.ig-trips-label{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-right:4px}
.ig-chips{display:contents;list-style:none;margin:0;padding:0}.ig-chip{display:inline-flex;align-items:center;gap:2px;background:var(--brand-ice);border-radius:999px;padding:2px 2px 2px 12px;font-size:13.5px;font-weight:600;min-height:36px;max-width:100%;overflow-wrap:anywhere}
#importGroups .ig-chip button{min-height:32px;width:32px;padding:0;justify-content:center;border-color:transparent;background:transparent}#importGroups .ig-chip button:hover{background:rgba(41,54,74,.12)}
#importGroups .ig-suggest{border-style:dashed}
.ig-picker{max-width:520px;margin:4px 0 8px}.ig-picker[hidden]{display:none}
#importGroups p.ig-status{margin:4px 0 10px;font-size:14px;font-weight:600}#importGroups p.ig-status[data-ww-tone="error"]{color:var(--ink,#29364a);background:var(--danger-fill,#edc7d4);border-radius:8px;padding:6px 10px;display:inline-block}
#importGroups p.ig-status .ww-feedback-next{min-height:36px;padding:4px 10px;margin-left:4px}
#importGroups p.ig-note{margin:4px 0 8px;font-size:13.5px;color:var(--muted-ink,#29364a)}
[data-ig-items] article{border-top:1px solid var(--line);padding:18px 0}[data-ig-detail]{min-width:0}.import-groups .ig-check{display:flex;gap:12px;align-items:center}.ig-check input{width:20px;height:20px;flex:0 0 20px;accent-color:var(--brand-navy)}
.ij-steps{display:flex;gap:16px;flex-wrap:wrap;padding:12px 0;list-style:none;font-size:14px}.ij-steps [aria-current]{font-weight:700;text-decoration:underline;text-underline-offset:5px}.ij-review{scroll-margin-top:24px}
@media(max-width:600px){.import-groups{padding:12px}.import-groups form>button{width:100%}[data-ig-list]>button{display:grid;gap:4px}}
@media(max-width:700px){.ig-upload{grid-template-columns:1fr;gap:4px}}
