
/* AllStoic code viewer v2 — line numbers + reliable block folding */
.cl-editor{
  border:1px solid var(--border,#2a2e3d);
  border-radius:12px;
  overflow:hidden;
  background:#090b10;
  margin-top:6px
}
.cl-toolbar{
  display:flex;
  align-items:center;
  gap:8px;
  padding:7px 9px;
  border-bottom:1px solid var(--border,#2a2e3d);
  background:#11131b;
  font-size:12px;
  color:var(--muted,#a9b0c3)
}
.cl-toolbar button{
  padding:5px 9px!important;
  min-height:0!important;
  border-radius:7px!important;
  border:1px solid var(--border,#2a2e3d)!important;
  background:#171a24!important;
  color:var(--text,#f6f7fb)!important;
  font-size:11px!important;
  line-height:1.2!important;
  cursor:pointer!important
}
.cl-editwrap{
  display:grid;
  grid-template-columns:auto 1fr;
  max-height:420px;
  overflow:hidden
}
.cl-gutter{
  min-width:45px;
  padding:12px 8px;
  background:#0d0f16;
  color:#687083;
  text-align:right;
  white-space:pre;
  font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  user-select:none;
  overflow:hidden;
  border-right:1px solid var(--border,#2a2e3d)
}
.cl-editor textarea{
  border:0!important;
  border-radius:0!important;
  resize:vertical;
  min-height:170px!important;
  margin:0!important;
  outline:none!important;
  line-height:1.55!important;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;
  tab-size:2
}
.cl-view{
  font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  overflow:auto;
  max-height:460px;
  background:#090b10
}
.cl-line{
  display:grid;
  grid-template-columns:30px 42px minmax(0,1fr) 30px;
  min-height:22px;
  align-items:start
}
.cl-line:hover{background:rgba(255,255,255,.025)}

.cl-fold-cell{
  width:30px;
  min-height:22px;
  display:flex;
  align-items:center;
  justify-content:center
}
.cl-fold{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:24px!important;
  height:20px!important;
  min-width:24px!important;
  min-height:20px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:4px!important;
  background:transparent!important;
  color:#8fa7d8!important;
  font:11px/20px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;
  text-align:center!important;
  cursor:pointer!important
}
.cl-fold:hover{
  background:rgba(139,92,246,.14)!important;
  color:#c4b5fd!important
}
.cl-fold[aria-expanded="false"]{
  color:#a78bfa!important;
  background:rgba(139,92,246,.10)!important
}
.cl-hide{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:24px!important;
  height:20px!important;
  min-width:24px!important;
  min-height:20px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:4px!important;
  background:transparent!important;
  color:#778096!important;
  font:12px/20px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;
  cursor:pointer!important
}
.cl-hide:hover{
  background:rgba(239,68,68,.10)!important;
  color:#fda4af!important
}
.cl-ln{
  color:#687083;
  text-align:right;
  padding:1px 9px 1px 3px;
  border-right:1px solid rgba(120,128,150,.18);
  user-select:none
}
.cl-code{
  white-space:pre;
  overflow:visible;
  padding:1px 10px;
  color:var(--text,#f6f7fb)
}
.cl-hidden-gap{
  display:flex;
  align-items:center;
  min-height:25px;
  padding:2px 8px 2px 72px;
  color:#8b93a7;
  background:rgba(139,92,246,.055);
  border-top:1px dashed rgba(139,92,246,.2);
  border-bottom:1px dashed rgba(139,92,246,.2)
}
.cl-show-gap{
  appearance:none!important;
  -webkit-appearance:none!important;
  border:0!important;
  background:transparent!important;
  color:#a78bfa!important;
  padding:2px 6px!important;
  margin:0!important;
  min-height:0!important;
  border-radius:5px!important;
  font:11px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;
  cursor:pointer!important
}
.cl-show-gap:hover{
  background:rgba(139,92,246,.12)!important;
  color:#c4b5fd!important
}
.cl-fold-gap{background:rgba(139,92,246,.035)}
.cl-output-shell{
  margin-top:12px;
  border:1px solid var(--border,#2a2e3d);
  border-radius:12px;
  overflow:hidden;
  background:#090b10
}
.cl-output-shell>.cl-toolbar{margin:0}
.cl-source-hidden{display:none!important}
