:root{
  --bg: #fafafa; --card:#ffffff; --muted:#666; --accent:#0b5fff;
  --agree: #16a34a; --pass: #f59e0b; --disagree: #ef4444; --empty: #ffffff;
  --radius: 8px; --gap: 12px;
}
html,body{height:100%;}
body{font-family: Inter, Roboto, system-ui, -apple-system, 'Segoe UI', Arial; background:var(--bg); margin:0; padding:24px; color:#0f172a}
h1{margin:0 0 8px 0; font-size:20px}
p.lead{margin:0 0 18px 0; color:var(--muted)}

/* container */
.panel{max-width:1100px; margin:0 auto;}
details{background:var(--card); border:1px solid #e6e9ef; padding:14px; border-radius:var(--radius); margin-bottom:14px}
summary{font-weight:600; cursor:pointer}

.row{display:flex; gap:var(--gap); align-items:flex-start}
.col{flex:1}
.col.small{flex:0 0 260px}

label{font-size:13px;color:var(--muted)}

/* Add space below the Response Distribution label */
/* .slider-wrapper label{margin-top:10px; display:block;} */
input[type="text"]{width:100%; padding:8px;border-radius:6px;border:1px solid #dde3ef}
.btn{background:var(--accent); color:white; border:none; padding:8px 12px;border-radius:6px; cursor:pointer}
.links{display:flex; gap:8px; margin-top:8px}
.link{font-size:13px; color:var(--accent); text-decoration:none}

.textarea-container{display:flex; gap:12px}
textarea{width:100%; min-height:120px; padding:10px; border-radius:6px; border:1px solid #e6e9ef; font-family: monospace; font-size:13px}

.controls{background:var(--card); border:1px solid #e6e9ef; padding:14px; border-radius:var(--radius); margin-bottom:14px}
.slider-wrapper{margin-bottom:12px; padding:40px 20px 20px 20px; border:1px solid #e6e9ef; border-radius:var(--radius);}
.output{background:var(--card); border:1px solid #e6e9ef; padding:12px; border-radius:6px}

/* Slider with input layout */
.slider-with-input{display:flex; align-items:flex-start; gap:20px;}
.slider-container{flex:1;}
.n-total-input{flex:0 0 120px; display:flex; flex-direction:column; align-items:center; margin-top:-13px;}
.n-total-input label{font-size:12px; color:var(--muted); margin-bottom:4px; text-align:center;}
.n-total-input input{width:80px; padding:6px 8px; border:1px solid #e6e9ef; border-radius:4px; text-align:center; font-size:13px;}
.n-total-input input:focus{outline:none; border-color:var(--accent); box-shadow:0 0 0 2px rgba(11, 95, 255, 0.1);}

/* Add extra space above slider for tooltips */
#multiSlider, #extremitySlider {margin-bottom:20px}

/* comments table visible below */
.comments-table{background:var(--card); border:1px solid #e6e9ef; border-radius:6px; overflow:auto; max-height:320px}
table{width:100%; border-collapse:collapse}
th,td{padding:8px 10px; border-bottom:1px solid #f2f4f7; text-align:left; font-size:13px; word-wrap:break-word; word-break:break-word; max-width:300px}
tr:hover{background:#f8fafc; cursor:pointer}
td.small{width:90px; font-variant-numeric:tabular-nums}

/* slider connect colors */
.noUi-connect.c-empty{background:var(--empty) !important}
.noUi-connect.c-agree{background:var(--agree) !important}
.noUi-connect.c-pass{background:var(--pass) !important}
.noUi-connect.c-disagree{background:var(--disagree) !important}

footer{margin-top:18px; color:var(--muted); font-size:13px}

/* Preset buttons styling */
.preset-buttons{
  display:flex;
  gap:8px;
  margin-top:12px;
  flex-wrap:wrap;
}
.preset-btn{
  background:#f8fafc;
  color:#475569;
  border:1px solid #e2e8f0;
  padding:6px 12px;
  border-radius:6px;
  cursor:pointer;
  font-size:12px;
  font-weight:500;
  transition:all 0.2s ease;
}
.preset-btn:hover{
  background:#e2e8f0;
  border-color:#cbd5e1;
}
.preset-btn:active{
  background:#cbd5e1;
  transform:translateY(1px);
}

/* Statement Cards Styles */
.statement-cards{display:flex; flex-direction:column; gap:12px}
.statement-card{
  background:var(--card);
  border:1px solid #e6e9ef;
  border-radius:var(--radius);
  padding:16px;
  position:relative;
  transition: all 0.2s ease;
  cursor: pointer;
}
.statement-card:hover{
  border-color: var(--accent);
  box-shadow: 0 2px 8px rgba(11, 95, 255, 0.1);
}
.statement-card-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  margin-bottom:8px;
}
.statement-id{
  font-size:12px;
  color:var(--muted);
  background:#f8fafc;
  padding:2px 6px;
  border-radius:4px;
  font-weight:500;
}
.statement-priority{
  font-size:11px;
  color:var(--muted);
  background:#f0f9ff;
  padding:2px 6px;
  border-radius:4px;
}
.statement-text{
  font-size:15px;
  line-height:1.4;
  color:#0f172a;
  margin-bottom:8px;
}
.statement-stats{
  display:flex;
  gap:12px;
  font-size:12px;
  color:var(--muted);
}
.stat-item{
  display:flex;
  align-items:center;
  gap:4px;
}
.stat-agree{color:var(--agree)}
.stat-disagree{color:var(--disagree)}
.stat-pass{color:var(--pass)}

@media (max-width:880px){ .row{flex-direction:column} .col.small{flex:1} .textarea-container{flex-direction:column} }