/* v46 Plan with Claude: entry rows, the chat sheet, the draft preview, change cards, the owner screen.
   Theme tokens only (theme.css), so light (Oat Milk) and dark (charcoal) come from the same rules. Board: Plan-Chat.
   Owner: FE-CHAT. */

.ch-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.ch-sheet [hidden],.ch-entry [hidden],.ch-entry-slot[hidden],.oa-slot[hidden]{display:none!important;}

/* ---------- entry rows (5.1): each row IS the target ---------- */
.ch-entry{display:flex;flex-direction:column;gap:12px;margin:12px 0;}
.ch-entry .ob-aientry-wrap{margin:0;}
.ch-entry-slot{display:block;}
.ch-entry-row{margin-top:0;min-height:68px;text-align:left;}
/* flat: a plain note, no well and no edge, so it never reads as something to tap (ES-2) */
.ch-entry-flat{display:flex;align-items:flex-start;gap:12px;padding:4px 2px;background:transparent;box-shadow:none;color:var(--ink-2);font:600 var(--fs-body-sm)/1.4 var(--font);}
.ch-entry-flat .ob-slab-txt .d-t-body-sm{font-weight:400;}
.ch-entry-flat-ic{display:inline-flex;color:var(--ink-2);padding-top:1px;}
.ch-entries-top{margin:8px 0 4px;display:flex;flex-direction:column;gap:12px;}
.ch-entries-top .ob-aientry-wrap{margin:0;}

/* ---------- the sheet (5.6): header and composer pinned, the body the only scroller ---------- */
.ch-sheet .d-sheet-head{align-items:flex-start;padding-top:2px;}
.ch-head{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;}
.ch-privacy{display:flex;align-items:center;gap:6px;margin:0;color:var(--ink-2);}
.ch-privacy .d-ic{width:15px;height:15px;flex:none;}
.ch-sheet .d-sheet-body{display:flex;flex-direction:column;}
.ch-main{display:flex;flex-direction:column;flex:1 0 auto;}

/* draft strip: the one focal card */
.ch-draft{flex:none;margin-top:8px;border-radius:var(--r-lg);background:var(--card);box-shadow:var(--e2);padding:2px 14px 10px;}
.ch-draft-toggle{display:flex;align-items:center;gap:10px;width:100%;min-height:var(--tap);padding:0;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer;font:inherit;}
.ch-draft-title{flex:1;min-width:0;font:600 1rem/1.3 var(--font);}
.ch-changed{display:inline-flex;align-items:center;gap:6px;color:var(--sage-ink);}
.ch-quiet{color:var(--ink);font-weight:600;}
.ch-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--sage-ink);flex:none;}
.ch-draft-notes{margin:2px 0 6px;}
.ch-draft-notes p{margin:0 0 4px;}
.ch-days{position:relative;list-style:none;margin:2px 0 0;padding:0 0 0 18px;}
.ch-days::before{content:"";position:absolute;left:1px;top:6px;bottom:6px;width:8px;border-radius:4px;background:var(--well);box-shadow:var(--in-sm);}
.ch-days li{margin:0;}
.ch-day{position:relative;display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:8px;width:100%;min-height:var(--tap);padding:0 8px;margin:0 -8px;border:0;border-radius:10px;background:transparent;color:var(--ink-2);text-align:left;cursor:pointer;font:400 var(--fs-label)/1.4 var(--font);}
.ch-day::before{content:"";position:absolute;left:-11px;top:50%;width:6px;height:6px;margin-top:-3px;border-radius:50%;background:var(--ground);box-shadow:inset 0 0 0 1.5px var(--ink-2);}
.ch-day-when{color:var(--ink-2);white-space:nowrap;}
.ch-day-what{display:flex;align-items:center;gap:6px;min-width:0;color:var(--ink);}
.ch-day-what span{min-width:0;overflow-wrap:normal;}
.ch-day.is-changed .ch-day-what{font-weight:600;}
.ch-day.is-focus{background:var(--well);}
.ch-city{color:var(--brass-ink);max-width:96px;text-align:right;}
.ch-added{color:var(--sage-ink);font-weight:600;white-space:nowrap;}

/* the conversation */
.ch-thread{display:flex;flex-direction:column;gap:12px;padding:14px 0 8px;}
.ch-msg{margin:0;max-width:330px;font:400 var(--fs-body-sm)/1.45 var(--font);color:var(--ink);}
.ch-claude p{margin:0 0 8px;}
.ch-claude p:last-child{margin-bottom:0;}
.ch-me{align-self:flex-end;max-width:300px;padding:9px 14px;border-radius:18px 18px 6px 18px;background:var(--ground);box-shadow:var(--e1);overflow-wrap:anywhere;}
.ch-changes{display:grid;grid-template-columns:52px 1fr;column-gap:8px;row-gap:2px;margin:6px 0 0;font:400 var(--fs-label)/1.4 var(--font);}
.ch-changes dt{font-weight:600;color:var(--ink);}
.ch-changes dd{margin:0;color:var(--ink-2);}
/* v46.2: one live line that updates in place; the server keeps it short enough for two lines at 390 px, whole words */
.ch-status{margin:0;max-width:330px;color:var(--ink-2);overflow-wrap:normal;word-break:normal;hyphens:none;}
.ch-line{margin:0;}
/* v46.2.1: three quiet dots after the live line while Claude works (still, at a mid tone, for reduced motion) */
.ch-dots{display:inline-flex;align-items:center;gap:4px;margin-inline-start:8px;vertical-align:middle;}
.ch-dots i{display:block;width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.25;animation:ch-dot 1.2s ease-in-out infinite;}
.ch-dots i:nth-child(2){animation-delay:.2s;}
.ch-dots i:nth-child(3){animation-delay:.4s;}
@keyframes ch-dot{0%,80%,100%{opacity:.25;}40%{opacity:1;}}
@media (prefers-reduced-motion:reduce){.ch-dots i{animation:none;opacity:.6;}}
.ch-err{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin:0;color:var(--terra-ink);}
.ch-retry{min-height:var(--tap);padding:10px 4px;color:var(--ink);}
.ch-ask{display:flex;flex-direction:column;gap:8px;}
.ch-chips{display:flex;flex-wrap:wrap;gap:8px;}
.ch-chips .d-chip{min-height:var(--tap);}
.ch-chips .d-chip:disabled{cursor:default;}
.ch-chips .d-chip:disabled:not([aria-pressed="true"]){opacity:.62;}
.ch-starter{margin-top:6px;}

/* change cards (live mode) */
.ch-card{border-radius:var(--r-md);background:var(--card);box-shadow:var(--e2);padding:14px 16px;}
.ch-card.is-flat{background:transparent;box-shadow:var(--in-sm);}
.ch-card-title{margin:0;font:600 var(--fs-body)/1.35 var(--font);color:var(--ink);}
.ch-card-lines{list-style:none;margin:6px 0 0;padding:0;color:var(--ink-2);}
.ch-card-lines li{margin:2px 0 0;}
.ch-card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:12px;}
.ch-card-actions .d-btn{white-space:normal;text-align:center;}
.ch-card-actions .ch-yes{min-width:88px;}
.ch-card-actions .d-btn-quiet{padding-inline:8px;}
.ch-card-state{margin:8px 0 0;color:var(--ink-2);}
.ch-card-state.is-applied{color:var(--sage-ink);font-weight:600;}
/* v46.2.2: a suggestion passed on ("Nah, another idea") stays in the thread, muted */
.ch-card.is-skipped .ch-card-title,.ch-card.is-skipped .ch-card-lines{color:var(--ink-2);}
.ch-card.is-skipped .ch-card-title{font-weight:500;}
/* the place's name links to Google Maps: underlined subtly in the text color; the tap area reaches above and below */
.ch-place{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;
  text-decoration-color:color-mix(in srgb,currentColor 40%,transparent);padding:6px 0;margin:-6px 0;-webkit-tap-highlight-color:transparent;}
.ch-place:active{opacity:.7;}
.ch-site{color:var(--ink-2);font-weight:500;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;
  text-decoration-color:color-mix(in srgb,currentColor 40%,transparent);padding:10px 2px;white-space:nowrap;}

/* footer: accept row, composer, cap line */
.ch-sheet .d-sheet-foot{border-top:1px solid var(--line);background:var(--ground);display:flex;flex-direction:column;gap:10px;}
.ch-accept{display:flex;gap:12px;}
.ch-accept .d-btn{flex:1;padding-left:12px;padding-right:12px;}
.ch-accept .d-btn-quiet{flex:0 0 auto;}
.ch-composer{display:flex;align-items:center;gap:10px;margin:0;}
.ch-input{min-height:var(--tap);height:48px;border-radius:var(--r-pill);padding:0 18px;}
.ch-input::placeholder{color:var(--ink-2);opacity:1;}
.ch-send{flex:none;}
.ch-composer-wrap{display:flex;flex-direction:column;gap:6px;}
.ch-offline{margin:0;}
.ch-capline{margin:0;color:var(--ink);}
.ch-byo{margin-top:0;min-height:60px;text-align:left;}

/* ---------- the day preview (5.7) ---------- */
.ch-preview{padding-top:8px;}
.ch-pv h2{margin:4px 0 0;}
.ch-pv>.ch-added{margin:4px 0 0;}
.ch-pv>.ch-err{margin-top:8px;}
.ch-pv-road{list-style:none;margin:16px 0 0;padding-top:0;}
.ch-pv-item{padding:6px 0 10px;}
.ch-pv-item .d-pebble{top:16px;margin-top:0;}
.ch-pv-top{display:flex;align-items:center;gap:10px;min-height:20px;}
.ch-new{color:var(--sage-ink);font-weight:600;}
.ch-pv-name{margin:2px 0 0;font:500 var(--fs-body)/1.35 var(--font);color:var(--ink);}
.ch-why{margin:2px 0 0;color:var(--ink-2);}
.ch-ticket{margin:4px 0 0;color:var(--brass-ink);}
.ch-book{margin-top:8px;min-height:var(--tap);padding:8px 16px;font-size:.9375rem;text-decoration:none;}
.ch-whybtn{min-height:var(--tap);padding:10px 4px;margin-top:2px;font-size:var(--fs-label);color:var(--ink);}
.ch-whymore{list-style:none;margin:0;padding:0;}
.ch-whymore li{margin:0 0 2px;}
.ch-hop{min-height:28px;display:flex;align-items:center;}
.ch-free{margin-top:8px;}
.ch-pv-note{margin:8px 0 0;}
.ch-coverage{margin:10px 0 0;color:var(--ink);}
.ch-musttry{margin-top:16px;padding:14px 16px;}
.ch-musttry h3{margin:0 0 6px;}
.ch-musttry ul{list-style:none;margin:0;padding:0;}
.ch-musttry li{margin:0 0 4px;color:var(--ink);}
.ch-musttry b{font-weight:600;}

/* ---------- the owner screen (5.9) ---------- */
.oa-group{margin-top:20px;}
.oa-group:first-child{margin-top:4px;}
.oa-alert{margin:6px 0 0;color:var(--terra-ink);}
.oa-peoplehead{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 4px;}
.oa-peoplehead .sh-group-head{margin:0;}
.oa-person{gap:12px;}
.oa-person .sh-row-text{flex:1;min-width:0;display:flex;flex-direction:column;}
.oa-person .sh-row-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.oa-person .d-help{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0;}
.oa-person-toggle{flex:none;display:inline-flex;}
.oa-use .sh-row-text{flex:1;min-width:0;display:flex;flex-direction:column;}
.oa-use .d-help{margin:0;}
.oa-use[aria-expanded="true"] .sh-row-chev{transform:rotate(90deg);}
.oa-days{list-style:none;margin:0 0 8px;padding:0 0 0 4px;}
.oa-days>li{margin:6px 0 0;}
.oa-days p{margin:0;}
.oa-recs{list-style:none;margin:2px 0 0;padding:0;}
.oa-total{margin:12px 0 0;font-weight:600;}
.oa-toggle .sh-row-text{flex:1;min-width:0;display:flex;flex-direction:column;}
.oa-toggle .d-help{margin:0;}

/* the tray: "Keep the rest as ideas" at the foot of the draft card */
.ch-tray{display:inline-flex;align-items:center;min-height:var(--tap);margin:4px 0 0;padding:10px 4px;color:var(--ink);font-size:var(--fs-label);}
p.ch-tray{margin:8px 0 2px;padding:0;min-height:0;}
