/* ─────────────────────────────────────────────────────────────
   The rooms of the products beside the phone (28.10.2026; renamed 1.11.2026): «עונים לי במזכירה» and «שיחות בשבילכם».
   Built inside the dashboard's own components (app.css: the road and its stops, the sheet,
   .state, .next, .rowlist, .bubble, .seg, .chips, .plancard). This sheet only adds what those
   rooms need and the components lack; it changes nothing of the phone service's rooms.
   ───────────────────────────────────────────────────────────── */

/* the tab bar shows one product's rooms at a time (products.js): as many equal columns as keys */
.tabbar { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); }
@media (min-width: 900px) { .tabbar { grid-auto-columns: auto; } }
/* three products and up in the top switch: one word and a chevron, all of them in the sheet (products.js, as the iPhone's) */
.product-switch:not(.is-many) #family-pill, .product-switch.is-many a:not(#family-pill) { display: none; }
#family-pill { grid-auto-flow: column; gap: 6px; }
#family-pill .i { width: 14px; height: 14px; stroke-width: 2.6; transform: rotate(-90deg); }
/* the list in that sheet, the iPhone's ProductList (TopBar.swift): the name alone on a low leaf, the product you are in on yellow, one you don't have yet quiet */
.famlist { display: grid; gap: 10px; margin-top: 16px; }
.famrow { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 56px; padding: 12px 16px; background: var(--sheet); border: 1.5px solid var(--ink); border-radius: var(--leaf-xs); color: var(--ink); font: 17px/1.35 var(--f-ui); text-decoration: none; transition: transform 0.14s ease; -webkit-tap-highlight-color: transparent; }
.famrow[aria-current] { background: var(--yellow); }
.famrow:has(small) { border-color: var(--hair); }
.famrow small { font: 15px/1.4 var(--f-body); color: var(--ink-soft); }
.famrow:active { transform: scale(0.98); }
.famrow:focus-visible { outline: 3px solid var(--ink); outline-offset: 2px; }
@media (hover: hover) { .famrow:hover span { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 0.25em; } }

/* ── shared bits of the new editors ── */
.edsub { margin-top: 18px; font: 15px/1.35 var(--f-ui); color: var(--ink-2); }
.edtabs { margin-bottom: 4px; }
.edtabs span { min-height: 42px; padding: 7px 14px; }
.editor .edpart > label:first-child, .editor .edpart > .toggle:first-child { margin-top: 12px; }
.edtoggle { margin-top: 16px; }
.editor .checkline, .checkline { display: flex; align-items: center; gap: 10px; margin: 14px 0 0; font: 16px/1.4 var(--f-ui); cursor: pointer; }
.checkline input { flex: none; width: 22px; height: 22px; margin: 0; accent-color: var(--ink); }
.editor [aria-invalid="true"] { border-color: var(--err) !important; box-shadow: 0 0 0 3px rgba(179, 38, 30, 0.18); }
.dateadd { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; align-items: center; }
.editor .dateadd label { margin: 0; }
.secretbox { margin-top: 14px; padding: 12px 14px; background: var(--ivory); border: 2px dashed var(--ink); border-radius: var(--leaf-xs); }
.secretbox .edsub { margin-top: 0; }
.secretbox input { direction: ltr; font-family: ui-monospace, "SF Mono", Menlo, monospace; }
.itemlist { display: grid; gap: 10px; margin-top: 12px; }
.itemlist:empty { display: none; }
/* a record (a stage, a fact, an answer): a white card on a hairline, and open, a soft lift (2.11.2026, the calm settings) */
.item { background: var(--field-white, #fff); border-radius: 18px; box-shadow: 0 0 0 1px var(--hair); }
.item[open] { box-shadow: 0 0 0 1px var(--hair), 0 10px 30px rgba(27, 26, 23, 0.07); }
.item > summary { display: flex; align-items: center; gap: 8px; min-height: 52px; padding: 10px 14px; font: 16px/1.3 var(--f-ui); cursor: pointer; list-style: none; }
.item > summary::-webkit-details-marker { display: none; }
.item > summary::after { content: ""; flex: none; width: 9px; height: 9px; margin-inline-start: auto; border: solid var(--ink-soft); border-width: 0 0 2px 2px; transform: rotate(-45deg); transition: transform 0.18s ease; }
.item[open] > summary::after { transform: rotate(135deg); }
.item__n { display: grid; place-items: center; flex: none; width: 26px; height: 26px; background: var(--calm-fill); border-radius: 50%; font: 13.5px/1 var(--f-ui); }
.item__t { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.item__t:empty::before { content: "חדש"; color: var(--ink-soft); }
.item__sub { flex: none; font-size: 14px; color: var(--ink-soft); }
.item__body { padding: 0 14px 16px; }
.item__acts { display: flex; flex-wrap: wrap; gap: 4px 16px; margin-top: 10px; }
.pair { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 44px; gap: 6px; align-items: center; margin-top: 8px; }
.editor .pair input { padding: 10px 10px; font-size: 15.5px; }
.xbtn { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; background: none; border: 0; border-radius: 50%; color: var(--ink-soft); cursor: pointer; }
.xbtn .i { width: 18px; height: 18px; }
.xbtn:hover { color: var(--ink); background: var(--ivory); }
.chip .xmark { margin-inline-start: 6px; font-size: 16px; line-height: 1; }

/* ── «עונים לי במזכירה»: her state, the toggle, the new-rep form, the road's foot ── */
#agent-pick { margin-top: 14px; }
.agentlive { max-width: 540px; margin-top: 18px; padding: 12px 16px; background: var(--sheet); border: 2px solid var(--ink); border-radius: var(--leaf-sm); }
.agentnew { max-width: 540px; margin-top: 26px; }
.agentnew__lead { font: 17px/1.4 var(--f-ui); }
.tplseg { margin-top: 12px; }
.tplseg span { min-height: 52px; padding: 8px 10px; text-align: center; line-height: 1.25; }
.agentroad { margin-top: 18px; }
.agentfoot { display: flex; flex-wrap: wrap; gap: 4px 20px; max-width: 540px; margin-top: 6px; padding-inline-start: var(--hang, 96px); }
@media (max-width: 400px) { .agentfoot { padding-inline-start: 0; } }
#agent-next .msg { grid-column: 1 / -1; }
#agent-next .msg:empty { display: none; }
/* the processing agreement: the same card as the next step, with its fields under the line */
.agree__body { grid-column: 1 / -1; display: grid; justify-items: start; gap: 0; margin-top: 6px; }
.agree__read { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; color: var(--ink); font: 16px/1.3 var(--f-ui); }
.agree__read .i { width: 16px; height: 16px; }
.agree__body > label:not(.checkline) { margin-top: 10px; font: 15px/1.35 var(--f-ui); color: var(--ink-2); }
.agree__body input[type="text"] { width: 100%; max-width: 420px; margin-top: 6px; padding: 12px 14px; background: var(--field-white, #fff); border: 2px solid var(--ink); border-radius: var(--leaf-xs); color: var(--ink); font: 17px/1.4 var(--f-body); }
.agree__body .checkline a { color: var(--ink); }
.agree__body .help { margin-top: 4px; padding-inline-start: 32px; }
.agree [aria-invalid="true"] { outline: 3px solid var(--err); outline-offset: 2px; }
.agree .btn:disabled { opacity: 0.5; cursor: not-allowed; }

/* «לנסות בכתב»: the rep in writing, at the end of her road */
.trychat__log { max-height: min(56vh, 460px); overflow-y: auto; overscroll-behavior: contain; scroll-padding-bottom: 12px; }
.trychat__log:empty { display: none; }
.trychat__ideas { margin-top: 10px; }
.trychat__form { display: grid; grid-template-columns: minmax(0, 1fr) 50px; gap: 8px; align-items: center; margin-top: 12px; }
.trychat__form input { width: 100%; min-width: 0; min-height: 50px; padding: 10px 16px; background: var(--field-white, #fff); border: 2px solid var(--ink); border-radius: 999px; color: var(--ink); font: 17px/1.4 var(--f-body); }
.trychat__form input:focus-visible { outline: 3px solid var(--ink); outline-offset: 2px; }
.trychat__form input::placeholder { color: #6c675c; opacity: 1; }
.trychat__send { display: grid; place-items: center; width: 50px; height: 50px; padding: 0; background: var(--yellow); border: 2px solid var(--ink); border-radius: 50%; color: #1b1a17; box-shadow: 2px 3px 0 rgba(27, 26, 23, 0.86); cursor: pointer; }
.trychat__send .i { width: 22px; height: 22px; transform: scaleX(-1); }   /* the plane flies the way Hebrew reads */
.trychat__send:active { transform: translateY(1px); box-shadow: none; }
.trychat__send:disabled { opacity: 0.55; cursor: progress; }
.trychat__msg { min-height: 1.4em; margin-top: 6px; font: 14.5px/1.5 var(--f-ui); color: var(--ink-soft); }
.trychat__msg.is-err { color: var(--err); }
.bubble.is-typing { letter-spacing: 0.2em; color: var(--on-band-2); }
.trydid { justify-self: end; display: inline-flex; align-items: center; gap: 6px; max-width: 96%; padding: 5px 12px; border: 1.5px dashed var(--line-strong); border-radius: 999px; font: 13.5px/1.3 var(--f-ui); color: var(--ink-soft); }
.trydid .i { width: 15px; height: 15px; }

/* the rep's editors */
/* the week (2.11.2026, the calm settings approved in עונים לי בהודעות): a day is one line, its name, its hours as words
   you tap and its switch («סגור» only when off); a break's hours under them, across the line; «+ הפסקה · לכל הימים»
   under the first open day and under a day being set (products.js paintWeek). Rows apart by air, not lines */
.weekrows { display: grid; gap: 0; margin-top: 8px; }
.weekrow { display: grid; grid-template-columns: 5.6rem minmax(0, 1fr) auto; align-items: center; gap: 2px 8px; padding-block: 8px; }
.weekrow__day { grid-area: 1 / 1; font: 17px/1.25 var(--f-ui); }
.weekrow.is-closed .weekrow__day { color: var(--ink-soft); }
.weekrow__ranges { display: contents; }
.weekrow .range { grid-column: 2; }
.weekrow .range + .range, .weekrow__tools { grid-column: 2 / -1; }
.editor .weekrow__open { grid-area: 1 / 3; display: flex; gap: 10px; margin: 0; }
.weekrow__closed { font: 15px/1.3 var(--f-body); color: var(--ink-soft); }
.weekrow__tools { display: flex; flex-wrap: wrap; gap: 0 18px; }
.weekrow:not(.is-first, .is-editing) .weekrow__tools { display: none; }
.range { display: flex; align-items: center; gap: 6px; }
.editor .range input[type="time"], html.lg .editor .range input[type="time"] { width: 4.3rem; min-height: 44px; padding: 0 2px; -webkit-appearance: none; appearance: none; color: var(--ink); background: none;
  border: 0; border-bottom: 1.5px dotted var(--ink-soft); border-radius: 0; box-shadow: none; font: 17px/1.3 var(--f-body); font-variant-numeric: tabular-nums; text-align: center; }
.editor .range input[type="time"]::-webkit-date-and-time-value { text-align: center; }
html.lg .editor .range input[type="time"]:focus-visible { outline: 3px solid var(--ink); outline-offset: 2px; box-shadow: none; }
html.lg .editor .range input[type="time"][aria-invalid="true"] { border-bottom: 2px solid var(--err); }
@media (max-width: 719.98px) { .editor .range input[type="time"]::-webkit-calendar-picker-indicator { display: none; } }
@media (min-width: 720px) { .editor .range input[type="time"], html.lg .editor .range input[type="time"] { width: 5.6rem; } }   /* the clock icon takes the first digit's room */
.range .xbtn { width: 40px; height: 40px; }
.weekrow .linkbtn { font-size: 14.5px; white-space: nowrap; }
.slotchips .chip { min-height: 40px; font-variant-numeric: tabular-nums; }
/* a chosen time or state: the yellow of a chosen key (app.css .callchips), also under glass.css's white chips */
:is(.slotchips, .apptacts) .chip[aria-pressed="true"], html.lg :is(.slotchips, .apptacts) .chip[aria-pressed="true"] { background: var(--yellow); color: var(--ink); }
.slotchips:empty { display: none; }
.slotnote { margin-top: 8px; font-size: 14.5px; color: var(--ink-soft); }
.connrow { display: flex; align-items: center; gap: 10px; margin-top: 12px; font: 16px/1.4 var(--f-ui); }
.connrow .i { width: 22px; height: 22px; }
.hookevents { margin-top: 4px; }
.hookevents .checkline { min-height: 52px; margin: 0; padding: 8px 14px; border-top: 1px solid var(--hair); }
.hookevents .checkline:first-child { border-top: 0; }
.hookmore { margin-top: 14px; }
.deliveries, .versions, .learned { display: grid; gap: 10px; margin: 8px 0 0; padding: 0; list-style: none; }
.learned li { justify-content: flex-start; }
.learned li span { flex: 1; min-width: 0; }
.memsearch { width: 100%; margin-top: 12px; padding: 12px 14px; background: var(--field-white, #fff); border: 2px solid var(--ink); border-radius: var(--leaf-xs); color: var(--ink); font: 17px/1.45 var(--f-body); }
.memadd { margin-top: 16px; }
.memadd > summary { min-height: 44px; padding: 10px 0; font: 16px/1.3 var(--f-ui); cursor: pointer; text-decoration: underline; text-underline-offset: 0.25em; }

/* ── שיחות הנציג, תורים: lists of rows, a day's heading over its appointments ── */
.acalls, .tasklist { max-width: 640px; margin-top: 20px; }
.rowlist.is-empty { background: none; border: 0; box-shadow: none; }
:is(.acalls, .tasklist) > .callrow { cursor: pointer; -webkit-tap-highlight-color: transparent; }
:is(.acalls, .tasklist) > .callrow:hover { background: rgba(246, 240, 223, 0.6); }
:is(.acalls, .tasklist) > .callrow:focus-visible { outline: 3px solid var(--ink); outline-offset: -3px; }
:is(.acalls, .tasklist) > .callrow:first-child { border-radius: 19px 6px 0 0; }
:is(.acalls, .tasklist) > .callrow:last-child { border-radius: 0 0 19px 6px; }
:is(.acalls, .tasklist) > .callrow:only-child { border-radius: 19px 6px 19px 6px; }
.slotchips span.chip { display: inline-flex; align-items: center; cursor: default; }
.slotchips span.chip:hover { background: #fff; }
.row__when { font: 14px/1.2 var(--f-ui); color: var(--ink-soft); white-space: nowrap; }
.row__side { display: grid; justify-items: end; gap: 4px; }
.row.is-live .row__ic { background: var(--yellow); border-color: var(--ink); color: #1b1a17; }
.callrow.is-gone .callrow__what { font-style: italic; color: var(--ink-soft); }
.apptbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; max-width: 640px; margin-top: 18px; }
#appts-chips { margin-top: 0; }
.apptday { max-width: 640px; margin: 22px 0 8px; font: 16px/1.3 var(--f-ui); color: var(--ink-2); }
#appts-list .rowlist { max-width: 640px; }
.row__time { display: grid; place-items: center; width: 54px; height: 38px; font: 17px/1 var(--f-ui); font-variant-numeric: tabular-nums; }
.row--appt { grid-template-columns: 54px minmax(0, 1fr) auto; }
.apptstate { margin-top: 2px; }
.apptacts { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 16px; padding-top: 14px; border-top: 1px dashed var(--line-strong); }
.verdictbox { margin-top: 18px; padding-top: 14px; border-top: 1px dashed var(--line-strong); }
.verdictbox .edsub { margin-top: 0; }
.callsum { display: grid; gap: 12px; }
.callsum__out { display: inline-flex; align-items: center; gap: 8px; font: 18px/1.3 var(--f-ui); }
.callsum__out .i { width: 20px; height: 20px; }

/* ── שיחות בשבילכם: the list, a running call, the question that waits for the owner ── */
.tasknew { margin-top: 18px; }
.tstate { display: inline-flex; align-items: center; gap: 4px; min-height: 26px; padding: 2px 10px; background: var(--ivory); border: 1.5px solid var(--hair); border-radius: 999px; font: 13px/1.2 var(--f-ui); color: var(--ink-2); white-space: nowrap; }
.tstate--now { background: var(--yellow); border-color: var(--ink); color: #1b1a17; }
.tstate--ok { background: var(--sheet); border-color: var(--ink); color: var(--ink); }
.tstate--ask { background: var(--yellow); border-color: var(--ink); color: #1b1a17; box-shadow: 2px 2px 0 rgba(27, 26, 23, 0.86); }
.taskview__goal { font: 19px/1.45 var(--f-ui); }
.taskroad { margin-top: 16px; }
.consult { margin-top: 16px; padding: 16px; background: var(--yellow); border: 2px solid #1b1a17; border-radius: var(--leaf-sm); box-shadow: 3px 4px 0 rgba(27, 26, 23, 0.86); color: #1b1a17; }
.consult__q { font: 19px/1.4 var(--f-ui); }
.consult__left { margin-top: 4px; font: 14.5px/1.3 var(--f-ui); font-variant-numeric: tabular-nums; }
.consult__keys { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 12px; }
.consult .btn--ghost { background: #fff; color: #1b1a17; border-color: #1b1a17; }
.consult .btn--primary { background: #1b1a17; color: #fff; border-color: #1b1a17; }
.consult .chip { border-color: #1b1a17; color: #1b1a17; background: #fff; }
.consult__say { display: grid; grid-template-columns: minmax(0, 1fr) 50px; gap: 8px; margin-top: 12px; }
.consult__say input { width: 100%; min-width: 0; min-height: 50px; padding: 10px 14px; background: #fff; border: 2px solid #1b1a17; border-radius: 999px; color: #1b1a17; font: 16px/1.4 var(--f-body); }
.taskresult { display: grid; gap: 12px; margin-top: 16px; }
.taskresult__head { display: flex; align-items: center; gap: 10px; font: 20px/1.3 var(--f-ui); }
.taskresult__mark { display: grid; place-items: center; flex: none; width: 36px; height: 36px; border: 2px solid var(--ink); border-radius: 50%; font: 20px/1 var(--f-ui); }
.taskresult__mark.is-yes { background: var(--yellow); color: #1b1a17; }
.taskresult__mark .i { width: 20px; height: 20px; stroke-width: 3; }
.taskview__talk { margin-top: 12px; padding-inline: 0; }
.taskview__talk:empty { display: none; }
.taskview__tell { margin-top: 10px; }

/* ── חשבון: each new product's own card above the phone service's ── */
.ppplans { display: grid; gap: 16px; margin-top: 26px; }
.ppplans:empty { display: none; }
.ppplans .plancard { margin: 0; }
.ppplans + .plancard { margin-top: 16px; }
.pplist { display: grid; gap: 8px; margin-top: 12px; }
.ppitem { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 4px 12px; width: 100%; min-height: 60px; padding: 10px 14px; background: var(--field-white, #fff); border: 2px solid var(--ink); border-radius: var(--leaf-xs); color: var(--ink); font: 16px/1.3 var(--f-ui); text-align: start; cursor: pointer; }
.ppitem small { grid-column: 1; font: 14px/1.3 var(--f-body); color: var(--ink-soft); }
.ppitem b { grid-row: 1 / span 2; grid-column: 2; font: 19px/1 var(--f-display); white-space: nowrap; }
.ppitem:hover { background: var(--ivory); }
.ppitem[aria-busy="true"] { opacity: 0.6; cursor: progress; }
.ppitem.is-picked { box-shadow: 3px 3px 0 var(--ink); }
.ppplans .plancard__state { margin-top: 10px; }
.ppplans .plancard__state a, .ppplans .plancard__state .linkbtn { color: var(--ink); }
.ppplans .msg:empty { display: none; }

/* an account of the new products only: none of the phone service's rows, card or nags in «חשבון» (products.js phoneOff).
   «תחום העסק» (#row-trade) stays on purpose: it picks his new agent's kind, and his chat changes it too (2.11.2026) */
html.no-phone :is(#plan, #tour-again, #row-channel, #row-notify, #record-row, #row-friend) { display: none !important; }
/* in a sheet (wave 2, 1.11.2026, «חשבון קצר»): a product's card right under the sheet's title, the help lines without their rule */
.sheet .ppplans { margin-top: 12px; }
.sheet .helpline { margin-top: 6px; padding-top: 0; border-top: 0; }

@media (prefers-color-scheme: dark) {
  /* on the dial's yellow the words and the edges stay ink (night.css's rule, for these rooms' yellow) */
  html:not(.a11y-contrast) :is(.trychat__send, .tstate--now, .tstate--ask, .row.is-live .row__ic, .taskresult__mark.is-yes, .famrow[aria-current]) { color: #1b1a17; border-color: #1b1a17; }
  html:not(.a11y-contrast) .consult .btn--primary { background: #1b1a17; color: #fff; }
}
@media (prefers-reduced-motion: reduce) { .item > summary::after, .famrow { transition: none; } }

/* «מערכות נוספות» (products.js apps*; the bot's approved screen, app-rooms.css): each system one line with its sentence, the rules
   as sentences on hairlines with a switch, nothing louder. The new rule sits on the ivory block. */
#ed-apps .apps { display: grid; gap: 14px; }
#ed-apps .apps-note:empty, #ed-apps .apps-mine:empty, #ed-apps .apps-list:empty { display: none; }
#ed-apps .apps-note[data-state="bad"] { color: var(--err); }
#ed-apps .apps-mine, #ed-apps .apps-list, #ed-apps .apps-rules { margin: 0; padding: 0; list-style: none; }
#ed-apps .apps-mine { display: grid; gap: 22px; }
#ed-apps .apps-list, #ed-apps .apps-rules { display: grid; border-top: 1px solid var(--hair); }
#ed-apps .apps-item { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 6px 14px; min-height: 64px; padding: 10px 0; border-bottom: 1px solid var(--hair); }
#ed-apps .apps-item__text, #ed-apps .apps-rule__text { display: grid; min-width: 0; gap: 2px; }
#ed-apps .apps-item__name { font: 17px/1.3 var(--f-ui); }
#ed-apps .apps-item__say { color: var(--ink-2); font-size: 16px; line-height: 1.5; }
#ed-apps .apps-item__hint { grid-column: 1 / -1; }
#ed-apps .apps-sys { display: grid; gap: 10px; }
#ed-apps .apps-sys__head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 12px; }
#ed-apps .apps-sys__name { font: 19px/1.35 var(--f-ui); }
#ed-apps .apps-sys__state { color: var(--ink-2); font-size: 16px; line-height: 1.5; }
#ed-apps .apps-sys__state[data-state="expired"], #ed-apps .apps-rule__state[data-state="bad"] { color: var(--err); }
#ed-apps .apps-rule { display: flex; align-items: center; gap: 8px 12px; min-height: 60px; padding: 8px 0; border-bottom: 1px solid var(--hair); }
#ed-apps .apps-rule__text { flex: 1 1 auto; }
#ed-apps .apps-rule__say { font-size: 17px; line-height: 1.45; overflow-wrap: anywhere; }
#ed-apps .apps-rule[data-on="false"] .apps-rule__say, #ed-apps .apps-rule__state { color: var(--ink-soft); }
#ed-apps .apps-rule__state { font-size: 15px; line-height: 1.4; }
#ed-apps .apps-rule .toggle { flex: none; }
#ed-apps .apps-new { display: grid; gap: 10px; padding: 14px 16px; background: var(--ivory); border-radius: var(--leaf-sm); }
#ed-apps .apps-new textarea { width: 100%; min-height: 4.4em; resize: vertical; }
#ed-apps .apps-new .editor__acts { margin-top: 0; }
#ed-apps .apps-draft { font: 19px/1.45 var(--f-ui); overflow-wrap: anywhere; }
#ed-apps .apps-sys__foot { display: flex; flex-wrap: wrap; gap: 10px; }
#ed-apps .apps-search { max-width: 34rem; }
