/* Rail and shell navigation. */

.shell-rail{
  grid-area:rail;
  min-height:0;
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:16px;
  border:1px solid rgba(61,48,33,.08);
  border-radius:28px;
  background:rgba(255,252,248,.7);
  box-shadow:0 20px 48px rgba(55,39,18,.05);
  overflow:auto;
}

.shell-rail::-webkit-scrollbar{width:0}

.new-thread{
  display:flex;
  align-items:center;
  gap:14px;
  width:100%;
  padding:14px;
  border:none;
  border-radius:22px;
  background:linear-gradient(135deg,#37281b,#6d4c32);
  color:#fffaf4;
  cursor:pointer;
  box-shadow:0 20px 36px rgba(55,39,18,.14);
}

.new-thread-icon{
  width:36px;
  height:36px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.14);
  font-size:22px;
  line-height:1;
}

.new-thread-copy{
  display:flex;
  flex-direction:column;
  gap:2px;
  align-items:flex-start;
  text-align:left;
}

.new-thread-copy strong{
  font-size:14px;
  font-weight:600;
}

.new-thread-copy span{
  font-size:12px;
  color:rgba(255,250,244,.78);
}

.rail-group{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.rail-label{
  padding-inline:6px;
  font-family:'IBM Plex Mono',monospace;
  font-size:10px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--muted);
}

.rail-tab{
  display:flex;
  align-items:flex-start;
  gap:12px;
  width:100%;
  padding:13px;
  border:none;
  border-radius:20px;
  background:transparent;
  color:var(--ink);
  text-align:left;
  cursor:pointer;
  transition:background .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease;
}

.rail-tab:hover{
  background:rgba(255,255,255,.56);
}

.rail-tab.on{
  background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(248,241,232,.74));
  box-shadow:0 12px 24px rgba(55,39,18,.08);
}

.rail-tab-icon{
  width:36px;
  height:36px;
  border-radius:14px;
  display:grid;
  place-items:center;
  flex-shrink:0;
  background:rgba(140,102,64,.08);
  color:var(--accent);
  font-size:16px;
}

.rail-tab.on .rail-tab-icon{
  background:rgba(140,102,64,.14);
}

.rail-tab-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:3px;
}

.rail-tab-title{
  font-size:14px;
  font-weight:600;
  color:var(--ink);
}

.rail-tab-sub{
  font-size:12px;
  line-height:1.5;
  color:var(--ink-soft);
}

.rail-link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  width:100%;
  padding:12px 14px;
  border:1px solid rgba(61,48,33,.08);
  border-radius:18px;
  background:rgba(255,255,255,.56);
  color:var(--ink);
  cursor:pointer;
}

.rail-link strong{
  font-family:'IBM Plex Mono',monospace;
  font-size:11px;
  color:var(--accent);
}

.rail-presence{
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:14px;
  border:1px solid rgba(61,48,33,.08);
  border-radius:22px;
  background:linear-gradient(180deg,rgba(255,255,255,.84),rgba(249,243,234,.72));
}

.rail-presence-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.presence-dot{
  width:9px;
  height:9px;
  border-radius:50%;
  background:var(--success);
  box-shadow:0 0 0 6px rgba(63,123,90,.12);
}

.summary-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 0;
  border-bottom:1px solid rgba(61,48,33,.08);
}

.summary-card:last-child{
  border-bottom:none;
  padding-bottom:0;
}

.summary-card span{
  font-size:12px;
  color:var(--muted);
}

.summary-card strong{
  font-size:13px;
  font-weight:600;
  color:var(--ink);
}

.compact-modes{
  padding:0;
  gap:6px;
}

.compact-modes .mp{
  padding:10px 8px;
  border-radius:14px;
  background:rgba(255,255,255,.44);
  color:var(--muted);
}

.compact-modes .mp.on{
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(248,241,232,.78));
  color:var(--accent);
  border-color:rgba(140,102,64,.14);
}
