:root {
  --bg: #1e1e1e;
  --fg: #f8f8f2;
  --accent: #569cd6;
  --border: #333;
  --ln: #777;
}

.body {
  background: #121212;
  color: #eee;
  font-family: Consolas, monospace;
  padding: 20px;
}

/* MAIN BOX */
.bro-box {
  position: relative;
  background: var(--bg);
  color: var(--fg);
  border-radius: 10px;
  margin: 25px 0;
  overflow: hidden;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.4);
  border: 1px solid var(--border);
  transition: transform .2s;
}
  
/* HEADER */
.bro-header{
  width:100%;
  background:#111;
  padding:6px 10px;
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:4px;
  border-bottom:1px solid #222;
}

.bro-btn{
  background:#fff;
  color:#222;
  border:0;
  padding:5px 8px;
  font-size:12px;
  border-radius:4px;
  cursor:pointer;
  opacity:1;
}
  
.bro-btn:hover{
  opacity:1; 
  color:#222;
  background:#fff;
}
  
.bro-btn svg {
  vertical-align: middle;
  margin-right: ;
  width: 16px;
  height: 16px;
  
}

/* FOLD BUTTON */
.fold-toggle{
  position:absolute;
  left:10px;
  top:8px;
  background:#444;
  color:#fff;
  border:0;
  padding:0px 8px;
  border-radius:4px;
  cursor:pointer;
  font-size:12px;
  opacity:.7;
}

.fold-toggle:hover{opacity:1}
  
/* LINE NUMBERS */
.bro-lines {
  user-select: none;
  background: #1c1f26;
  color: #858585;
  padding: 10px 16px 10px 16px;
  text-align: left;
  min-width: 40px;
  overflow: hidden;
  font-size: 14px;
  line-height: 20px;
  box-sizing: border-box;
  position: absolute;
  top: 39px;
  left: 0;
  z-index: 1;
}

.bro-lines div {
  height: 20px;
  line-height: 20px;
  padding: 0;
  margin: 0;
}

.bro-pre {
  margin: 0;
  padding: 10px 16px 10px 60px;
  overflow: auto;
  white-space: pre;
  color: #333;
  background: #fff;
  font-family: Consolas, monospace;
  font-size: 14px;
  line-height: 20px;
  text-align: left;
  box-sizing: border-box;
  position: relative;
  z-index: 0;
}

.bro-view-modal {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.7);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 99999;
}

.bro-view-content {
  background: #1e1e1e;
  padding: 20px;
  border-radius: 8px;
  width: 90%;
  max-width: 700px;
  max-height: 100vh;
  overflow: auto;
  position: relative;
  color: #fff;
  font-family: Consolas, monospace;
}

.bro-view-close {
  position: absolute;
  top: 8px;
  right: 10px;
  border: none;
  background: #ff5555;
  color: white;
  padding: 5px 8px;
  cursor: pointer;
  border-radius: 4px;
}
