/* Tourism Partner · Mesajlar · iki tarafta ortak (DESIGN.md 8.13). JS yok.
   Sıra: tokens.css, components.css, messages.css, taraf css.
   Yerleşim: nav altındaki yüksekliğin tamamı, üç sütun kendi içinde kaydırır, sayfa kaydırmaz. */

/* 1. Sayfa kabuğu */
.page--inbox .topnav .container{max-width:calc(1440px + 2 * var(--gutter))}
.inbox-page{
  display:grid;grid-template-columns:340px minmax(0,1fr) 320px;
  width:100%;max-width:1440px;margin:0 auto;
  height:calc(100vh - var(--nav-height) - 1px); /* 1 px: nav alt kenarı */
  height:calc(100dvh - var(--nav-height) - 1px);
  overflow:hidden;background:var(--bg-surface);
  border-inline:1px solid var(--border-default)
}
.inbox-page>*{min-width:0;min-height:0}
@media (min-width:768px){.page--inbox{overflow:hidden}}
@media (max-width:1099px){.inbox-page{grid-template-columns:340px minmax(0,1fr)}}
@media (max-width:767px){.inbox-page{grid-template-columns:minmax(0,1fr);border-inline:0}}

/* 2. Yazışma listesi */
.inbox-list{display:flex;flex-direction:column;overflow:auto;border-right:1px solid var(--border-default)}
.inbox-list__head{position:sticky;top:0;z-index:1;display:grid;gap:12px;padding:16px;background:var(--bg-surface);border-bottom:1px solid var(--border-default)}
.inbox-list__title{font-size:var(--font-size-h3)}
.inbox-filters{display:flex;flex-wrap:wrap;gap:6px}
.inbox-filters .chip{height:auto;min-height:36px;padding:0 10px;gap:5px}
.inbox-filters .chip:hover{text-decoration:none}
.inbox-threads{margin:0;padding:0;list-style:none}
.thread{display:grid;gap:4px;padding:14px 16px;border-bottom:1px solid var(--border-default);color:inherit;font-weight:var(--font-weight-regular)}
.thread:hover{background:var(--bg-subtle);text-decoration:none}
.thread.is-active{background:var(--bg-selected);box-shadow:inset 3px 0 0 var(--color-primary)}
.thread__top,.thread__bottom{display:flex;justify-content:space-between;align-items:center;gap:8px;min-width:0}
.thread__name{display:flex;align-items:center;gap:6px;min-width:0}
.thread__name .t1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.thread__top>.t3{flex:none}
.thread__text{flex:1;min-width:0;overflow:hidden;font-size:var(--font-size-small);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap}
.thread.is-unread .thread__text{color:var(--text-body);font-weight:var(--font-weight-medium)}
.thread__end{display:flex;align-items:center;gap:8px;flex:none}
.thread>.badge{justify-self:start;margin-top:4px}
.dot{width:8px;height:8px;flex:none;border-radius:50%;background:var(--color-primary)}
@media (max-width:767px){.inbox-filters .chip{min-height:var(--hit-target-min)}.inbox-list{border-right:0}}

/* 3. Sohbet: başlık, bağlam şeridi, gövde, aksiyon çubuğu, yazma alanı */
.chat{display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto auto;overflow:hidden}
.chat__head{grid-row:1}.chat__tabs{grid-row:2}.chat__strip{grid-row:3}.chat__body{grid-row:4}.chat__actions{grid-row:5}.chat>:last-child{grid-row:6} /* şerit ya da çubuk gizlenince gövde 1fr satırında kalır */
.chat__head{display:flex;align-items:center;gap:12px;padding:8px 16px;border-bottom:1px solid var(--border-default)}
.chat__who{display:grid;gap:2px;flex:1;min-width:0}
.chat__who .row{flex-wrap:nowrap;min-width:0}
.chat__who .t1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat__back{display:grid;place-items:center;width:44px;height:44px;margin-left:-12px;flex:none;border-radius:var(--radius-control);color:var(--color-ink)}
.chat__back:hover{background:var(--bg-subtle)}
/* talep sekmeleri: karşı taraf başına tek yazışma, her açık talep bir sekme (8.13) */
.chat__tabs{flex-wrap:nowrap;gap:4px;height:40px;padding:0 16px;overflow-x:auto;overflow-y:hidden;background:var(--bg-surface)}
.chat__tabs .tabs__tab{min-height:40px;font-size:13px}
.chat__strip{display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px;padding:8px 16px;border-bottom:1px solid var(--border-default);background:var(--bg-surface)}
.chat__strip .t1--num{font-size:16px}
.chat__strip-link{margin-left:auto;font-size:var(--font-size-small)}
@media (min-width:1100px){.chat .chat__strip,.chat .chat__actions{display:none}} /* panel görünürken şerit ve karar çubuğu panelde */
.chat__body{display:flex;flex-direction:column-reverse;overflow:auto;background:var(--bg-subtle)} /* ters akış: kaydırma en yeni mesajdan başlar */
.chat__log{display:flex;flex-direction:column;padding:12px 16px 16px}
.chat__actions{display:flex;align-items:center;gap:8px;padding:12px 24px;border-top:1px solid var(--border-default);background:var(--bg-surface)}
.chat__actions .btn--danger{margin-left:auto}
@media (max-width:767px){
  .chat__head{padding:8px 16px}
  .chat__strip{padding:8px 16px}
  .chat__log{padding:12px 16px 16px}
  .chat__actions{flex-wrap:nowrap;overflow-x:auto;padding:8px 16px}
  .chat__actions .btn{flex:none}
}

/* 4. Mesajlar */
.msg{display:grid;gap:4px;max-width:72%;margin-top:10px;align-self:flex-start}
.msg--me{align-self:flex-end;justify-items:end}
.msg--follow{margin-top:4px}
.msg--card{width:400px;max-width:80%}
.msg--card.msg--me{justify-items:stretch}
.msg__sender{padding:0 4px}
.bubble{display:grid;gap:2px;padding:6px 10px;border:1px solid var(--border-default);border-radius:12px 12px 12px 4px;background:var(--bg-surface);font-size:var(--font-size-small);line-height:1.45;color:var(--text-body)}
.bubble--me{border-color:transparent;border-radius:12px 12px 4px 12px;background:var(--bg-selected)}
.bubble__meta{display:inline-flex;align-items:center;justify-self:end;gap:4px;font-size:11px;line-height:1.3;color:var(--text-muted);font-variant-numeric:var(--numeric);white-space:nowrap}
.bubble__meta .icon{width:14px;height:14px}
.msg-date{display:flex;justify-content:center;margin:16px 0 4px}
.msg-date:first-child{margin-top:8px}
.msg-date span{padding:4px 12px;border-radius:var(--radius-pill);background:var(--bg-surface);box-shadow:inset 0 0 0 1px var(--border-default);font-size:var(--font-size-caption);color:var(--text-muted);font-variant-numeric:var(--numeric)}
.msg-system{margin:12px 0 0;text-align:center}
@media (max-width:767px){.msg{max-width:84%}.msg--card{max-width:92%}}

/* 5. Teklif kartı mesajı */
.msg-card{display:grid;gap:8px;padding:10px 12px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-card)}
.msg-card__head{display:flex;align-items:center;gap:10px}
.msg-card__icon{width:28px;height:28px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--color-primary-tint);color:var(--color-ink)}
.msg-card__icon .icon{width:14px;height:14px}
.msg-card__icon--accepted{background:var(--color-success-50);color:var(--color-success-700)}
.msg-card .kv{gap:4px 12px}
.msg-card__total{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px}
.msg-card__old{text-decoration:line-through}
.msg-card__list{display:grid;gap:4px;margin:0;padding-left:20px;font-size:var(--font-size-small);color:var(--text-body)}
.msg-card__note{padding-top:8px;border-top:1px solid var(--border-default)}
.msg-card__foot{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:var(--font-size-small)}

/* 6. Yazma alanı ve yapılandırılmış kart */
.composer{display:grid;gap:6px;padding:12px 24px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--border-default);background:var(--bg-surface)}
.composer__row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:end;gap:8px}
.composer__input{min-height:44px;height:44px;resize:none;padding:10px 12px;font-size:var(--font-size-body)}
textarea.composer__input{min-height:44px;resize:none}
.composer__send{width:44px;height:44px;min-height:44px;padding:0;border-radius:50%}
.composer__note{padding-left:52px}
.composer-card{display:grid;gap:16px;max-height:60vh;overflow:auto;padding:16px 24px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--border-default);background:var(--bg-surface)}
.composer-card__head{display:grid;gap:2px}
.composer-card__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
.composer-card textarea.input{min-height:68px;resize:none}
.composer-card__actions{display:flex;flex-wrap:wrap;gap:8px}
.field__suffix{position:absolute;right:12px;font-size:var(--font-size-body);color:var(--text-muted);pointer-events:none}
.field__control--suffix .input{padding-right:36px}
.field__control select.input{padding-right:40px;cursor:pointer}
@media (max-width:767px){
  .composer{padding:8px 16px calc(8px + env(safe-area-inset-bottom))}
  .composer__note{padding-left:0;text-align:center}
  .composer-card{max-height:58dvh;padding:16px 16px calc(16px + env(safe-area-inset-bottom))}
  .composer-card__grid{grid-template-columns:minmax(0,1fr)}
  .composer-card__actions .btn{flex:1}
}

/* 7. Bağlam paneli: Bu yazışma */
.ctx{display:flex;flex-direction:column;overflow:auto;border-left:1px solid var(--border-default)}
.ctx__title{padding:10px 16px;font-family:var(--font-body);font-size:16px;font-weight:var(--font-weight-semibold);border-bottom:1px solid var(--border-default)}
.ctx__block{display:grid;gap:6px;padding:12px 16px;border-bottom:1px solid var(--border-default)}
.ctx__block:last-child{border-bottom:0}
.ctx__block>.badge{justify-self:start}
.ctx__block>a{justify-self:start;font-size:var(--font-size-small)}
.ctx__block>.btn{justify-self:start;margin-left:-16px}
.ctx__block .kv{gap:4px 12px}
.ctx__block .eyebrow{font-size:10px}
.ctx__actions{display:grid;gap:6px;padding-top:6px}
.ctx__actions-row{display:flex;justify-content:space-between;gap:4px}
.ctx__actions-row .btn--danger{margin-left:auto}
.ctx__price{display:grid;gap:2px}
.ctx__versions{display:grid;gap:2px;margin:0;padding:0;list-style:none}
.ctx__history{display:grid;gap:6px;margin:0;padding:0;list-style:none}
.ctx__history a{display:grid;gap:1px;color:inherit;text-decoration:none}
.ctx__history a:hover .t2{text-decoration:underline}
.ctx__party{display:flex;align-items:flex-start;gap:12px}
.ctx__party .row{flex-wrap:nowrap}
@media (max-width:1099px){.ctx{display:none}}

/* 8. Onay penceresi (statik: modal açık hali ayrı dosyada çizilir) */
.modal{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:16px;background:color-mix(in srgb,var(--color-ink) 48%,transparent)}
.modal__dialog{display:grid;gap:20px;width:100%;max-width:520px;max-height:calc(100dvh - 32px);overflow:auto;padding:24px;background:var(--bg-surface);border-radius:var(--radius-modal);box-shadow:var(--shadow-overlay)}
.modal__head{display:flex;align-items:flex-start;gap:12px}
.modal__head h2{flex:1;font-size:var(--font-size-h3);padding-top:6px}
.modal__icon{width:36px;height:36px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--color-primary-tint);color:var(--color-ink)}
.modal__close{margin:-6px -10px 0 0}
.modal__summary{padding:16px;border-radius:var(--radius-control);background:var(--bg-subtle)}
.modal__summary dd .t1--num{display:inline}
.modal__actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}
@media (max-width:767px){
  .modal{align-items:end;padding:0}
  .modal__dialog{max-width:none;max-height:92dvh;padding:20px 16px calc(20px + env(safe-area-inset-bottom));border-radius:var(--radius-modal) var(--radius-modal) 0 0}
  .modal__actions{flex-direction:column-reverse}
  .modal__actions .btn{width:100%}
}
