/* RFIs module styles. Owned by the rfis module worker. Scoped under .gch-m-rfis (the tool root).
   Tokens and shared classes come from base.css; the list extras, the item page (.ip) and Configure (.cf) that RFIs
   share with Submittals are in submittals.css. */

.gch-m-rfis .rf-me{color:var(--o-txt);font-weight:700}
.gch-m-rfis .rf-late{color:var(--danger);font-weight:600}
.gch-m-rfis .gch-phead .rf-ai .i{color:var(--o-txt)}

/* list */
.gch-m-rfis td.c-number{white-space:nowrap}
.gch-m-rfis td.c-number .gch-marker{margin-left:2px;vertical-align:-1px}
.gch-m-rfis .rf-lock{display:inline-flex;margin-left:6px;color:var(--mid);vertical-align:-2px}
.gch-m-rfis .rf-lock .i{width:14px;height:14px}
.gch-m-rfis tr.is-void td.c-subject .cell-main{color:var(--mid);text-decoration:line-through;text-decoration-color:var(--line2)}
.gch-m-rfis tr.is-void td.c-number{color:var(--mid)}

/* impact: icon + word, cost then schedule */
.gch-m-rfis .rf-imps{display:inline-flex;align-items:center;gap:12px}
.gch-m-rfis .rf-imp{display:inline-flex;align-items:center;gap:3px;font-size:13px;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.gch-m-rfis .rf-imp .i{width:14px;height:14px;color:var(--ink2)}
.gch-m-rfis .rf-imp.is-tbd{color:var(--ink2)}
.gch-m-rfis .rf-imp.is-tbd .i{color:var(--mid)}
.gch-m-rfis .rf-imp.is-none{color:var(--mid)}
.gch-m-rfis .rf-tbd{color:var(--ink2)}
.gch-m-rfis .rf-priv{display:inline-flex;align-items:center;gap:4px}
.gch-m-rfis .rf-priv .i{width:14px;height:14px}

/* Replies: a thread; the official reply carries a green edge and the word Official */
.gch-m-rfis .rf-thread{display:flex;flex-direction:column}
.gch-m-rfis .rf-reply{padding:10px 0 12px;border-bottom:1px solid var(--line)}
.gch-m-rfis .rf-reply:first-child{padding-top:2px}
.gch-m-rfis .rf-reply header{display:flex;align-items:center;gap:var(--s2);margin-bottom:6px}
.gch-m-rfis .rf-reply .who{flex:1;min-width:0}
.gch-m-rfis .rf-reply .who b{display:block;font-weight:600;font-size:13.5px;line-height:1.3}
.gch-m-rfis .rf-reply .who small{display:block;font-size:12px;color:var(--mid);font-variant-numeric:tabular-nums}
.gch-m-rfis .rf-reply .gp-prose{padding-left:34px}
.gch-m-rfis .rf-reply.is-official{margin-left:-12px;padding-left:10px;box-shadow:inset 2px 0 0 var(--ok)}
.gch-m-rfis .rf-reply.is-child{margin-left:34px;padding-left:12px;border-left:1px solid var(--line2)}
.gch-m-rfis .rf-reply.is-child .gp-prose{padding-left:34px}
.gch-m-rfis .rf-ra{padding-left:28px;margin-top:4px}

.gch-m-rfis .rf-box{display:flex;flex-direction:column;gap:6px;margin-top:var(--s3)}
.gch-m-rfis .rf-box textarea{width:100%;min-height:80px;padding:8px 12px;resize:vertical;line-height:1.45}
.gch-m-rfis .rf-box-f{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap}
.gch-m-rfis .rf-box-f .rf-post{margin-left:auto}
.gch-m-rfis .rf-files{display:flex;flex-wrap:wrap;gap:6px}
.gch-m-rfis .rf-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;font-size:12.5px;background:var(--bg3);border:1px solid var(--line)}
.gch-m-rfis .rf-chip .i{width:14px;height:14px;color:var(--mid)}
.gch-m-rfis .rf-hint{font-size:12.5px;color:var(--mid)}
.gch-m-rfis .rf-attach{position:relative;cursor:pointer}
.gch-m-rfis .rf-attach:focus-within{outline:1px solid var(--o);outline-offset:2px}
.gch-m-rfis .rf-rm{margin-left:2px;padding:0 4px;background:none;border:0;color:var(--mid);font-size:15px;line-height:1;cursor:pointer}
.gch-m-rfis .rf-rm:hover{color:var(--ink)}
.gch-m-rfis .rf-rfiles{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}

/* ------------------------------------------------------------------ the RFI page (round 3; the shared item page is .ip, in submittals.css) */
.gch-m-rfis .rf-ptag{gap:4px}
.gch-m-rfis .rf-ptag .i{width:12px;height:12px}
.gch-m-rfis .rf-cfglink .i{color:var(--ink2)}
/* where the question is: sheet, detail, spec section, location */
.gch-m-rfis .rf-where{display:flex;flex-wrap:wrap;gap:var(--s2);margin-bottom:var(--s4)}
.gch-m-rfis .rf-wc{display:inline-flex;align-items:baseline;gap:6px;max-width:100%;min-height:32px;padding:5px 10px;background:var(--bg2);border:1px solid var(--line);font-size:13.5px;line-height:1.35;text-decoration:none;color:var(--ink)}
.gch-m-rfis a.rf-wc:hover{border-color:var(--edge);background:var(--bg3)}
.gch-m-rfis a.rf-wc b{text-decoration:underline;text-decoration-color:var(--edge);text-underline-offset:3px}
.gch-m-rfis .rf-wc .k{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--mid)}
.gch-m-rfis .rf-wc b{font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.gch-m-rfis .rf-wc .d{color:var(--ink2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gch-m-rfis .rf-by{margin-top:var(--s3);font-size:13px;color:var(--mid)}
.gch-m-rfis .rf-sub{display:flex;align-items:baseline;gap:var(--s2);margin:var(--s4) 0 var(--s2);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--mid)}
.gch-m-rfis .rf-sub .n{font-variant-numeric:tabular-nums}
.gch-m-rfis .rf-suggest{padding:var(--s1) 0 var(--s1) var(--s4);border-left:2px solid var(--line2)}
.gch-m-rfis .rf-suggest .gp-prose{max-width:76ch;font-size:15px;line-height:1.6}
/* the official answer: the green edge and the word Official */
.gch-m-rfis .rf-official{padding:var(--s3) var(--s4);background:var(--bg2);box-shadow:inset 2px 0 0 var(--ok)}
.gch-m-rfis .rf-official .gp-resp .by{font-size:13px;color:var(--ink2)}
.gch-m-rfis .rf-official .gp-resp .by b{color:var(--ink);font-weight:600}
.gch-m-rfis .rf-official .gp-prose{max-width:76ch;font-size:15px;line-height:1.6}
.gch-m-rfis .rf-noans{font-size:14px;color:var(--ink2);line-height:1.5}
.gch-m-rfis .rf-noans .mid{color:var(--mid)}
.gch-m-rfis .rf-noans .btn{margin-left:var(--s2);vertical-align:middle}
.gch-m-rfis .rf-rimp{margin-top:6px;font-size:13px;color:var(--ink2);font-variant-numeric:tabular-nums}
.gch-m-rfis .rf-hidden{margin-top:var(--s2);font-size:13px}
.gch-m-rfis .ip-main .rf-reply .gp-prose{max-width:76ch;font-size:14.5px;line-height:1.55}
.gch-m-rfis .ip-main .rf-box{max-width:76ch}
.gch-m-rfis .ip-main .rf-thread + .rf-box,.gch-m-rfis .ip-main .rf-hidden + .rf-box{margin-top:var(--s4)}

/* dialogs (outside the tool root) */
.gch-dlg.rf-dlg .rf-qprev{margin-top:var(--s2);padding:var(--s2) var(--s3);background:var(--bg3);border-left:2px solid var(--line2);font-size:13.5px;line-height:1.5}
.gch-dlg.rf-dlg .rf-qprev p + p{margin-top:6px}

@media (max-width:759px){
  .gch-m-rfis .rf-reply .gp-prose,.gch-m-rfis .rf-reply.is-child .gp-prose{padding-left:0}
  .gch-m-rfis .rf-reply.is-child{margin-left:16px}
  .gch-m-rfis .rf-ra{padding-left:0}
}

/* FX2: an amount typed into the prose is pointed at Cost impact (a hint, not an error) */
.rf-amt-hint{margin:4px 0 0;padding-left:8px;border-left:2px solid var(--o);font-size:12.5px;line-height:1.4;color:var(--ink2)}

/* FX2 laptop band. A 1366px window with the rail open leaves a list 1134px (1280px: 1048px), just above the width at
   which the shared list drops its fourth-priority columns, so the title was squeezed to its minimum and the table
   scrolled inside the pane. In this tool the columns that give way first go at 1220px, and the due date stacks (the
   date over "in 3 days"), so the title keeps the width. */
@container gchlist (max-width:1220px){
  .gch-m-rfis .gch-list .p4,.gch-m-rfis .gch-list .c-impact{display:none}
  .gch-m-rfis .gch-pane td .due{display:inline-flex;flex-direction:column;line-height:1.25;vertical-align:middle}
  .gch-m-rfis .gch-pane td .due .sep{display:none}
  .gch-m-rfis .gch-pane td .due .r{font-size:12.5px}
}

/* FX3 (H1): an answer the reviewer submitted that is not official yet waits on the RFI manager: it is drawn where the
   official answer will be, in the info colour instead of the ok bar, with who has to act. */
.gch-m-rfis .rf-official.is-pending{box-shadow:inset 2px 0 0 var(--line2)}
.gch-m-rfis .rf-official.is-pending .rf-wait{color:var(--ink2)}
.gch-m-rfis .rf-official.is-pending .rf-ra{padding-left:0;margin-top:var(--s3);display:flex;flex-wrap:wrap;gap:var(--s2)}
.gch-m-rfis .rf-reply .rf-sb{margin-left:auto;font-size:12.5px}
.gch-m-rfis .rf-box-f .rf-post + .rf-answer{margin-left:0}
