:root{ --s-bg:#fff; --s-card:#f8fafc; --s-border:#e5e7eb; --s-text:#0f172a; --s-accent:#111827; --s-accent2:#2563eb; --s-chip:#eef2ff; --s-chip-text:#1f2937; }
.senn-survey, .senn-results{ background:var(--s-bg); border:1px solid var(--s-border); border-radius:16px; padding:24px; box-shadow:0 4px 16px rgba(0,0,0,.05); }
.senn-step{ display:none; } .senn-step.active{ display:block; }
.senn-question{ margin:18px 0; } .senn-question h4{ margin:0 0 8px; }
.senn-nav{ display:flex; gap:12px; margin-top:16px; align-items:center; flex-wrap:wrap; }
.senn-nav button{ appearance:none; border:0; background:var(--s-accent); color:#fff; padding:12px 18px; border-radius:12px; font-weight:600; cursor:pointer; }
.senn-nav .senn-submit{ background:var(--s-accent2); }
.senn-global-warn{ display:none; width:100%; background:#fff7ed; color:#9a3412; border:1px solid #fed7aa; border-radius:10px; padding:8px 12px; font-weight:600; }
.senn-progress{ width:100%; height:10px; background:#eef2f7; border-radius:999px; overflow:hidden; margin-bottom:16px; }
.senn-progress-bar{ height:100%; width:0%; background:linear-gradient(90deg,var(--s-accent2),#06b6d4); transition:width .25s ease; }
.senn-success{ background:#e6fbe6; border:1px solid #abefab; border-radius:12px; padding:14px; margin-top:14px; }
.senn-choice label, .senn-answer-filters label{ display:flex; gap:5px; align-items:center; }
.senn-choice label > input[type=checkbox], .senn-choice label > input[type=radio],
.senn-answer-filters label > input[type=checkbox], .senn-answer-filters label > input[type=radio]{ margin:0; line-height:1; }
.senn-freechips{ display:flex; flex-wrap:wrap; gap:8px; padding:8px; border:1px solid var(--s-border); border-radius:10px; background:#fff; margin-top:8px; }
.senn-freechips input{ border:0; outline:none; min-width:160px; padding:6px 4px; }
.senn-chip{ background:var(--s-chip); color:var(--s-chip-text); border:1px solid #e0e7ff; border-radius:999px; padding:6px 10px; display:inline-flex; align-items:center; gap:6px; }
.senn-chip .x{ cursor:pointer; font-weight:700; line-height:1; }
.senn-free-help{ font-size:.85rem; opacity:.7; margin-top:4px; }
.senn-results-header{ display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:12px; }
.senn-results-actions{ display:flex; gap:8px; align-items:center; }
.senn-results-actions .senn-fullscreen-toggle, .senn-results-actions .senn-mode-toggle{ background:#fff; color:#111827; border:1px solid var(--s-border); border-radius:10px; padding:8px 10px; cursor:pointer; }
.senn-results--fullscreen{ position:fixed !important; inset:0; z-index:99999; background:var(--s-bg); border-radius:0; border:0; padding:24px; overflow:auto; }
.senn-results--fullscreen .senn-results-header{ position:sticky; top:0; background:var(--s-bg); padding:8px 0; z-index:2; border-bottom:1px solid var(--s-border); }
.senn-filters-card{ background:var(--s-card); border:1px solid var(--s-border); border-radius:12px; padding:12px; margin-bottom:14px; }
.senn-answer-filters{ display:grid; grid-template-columns:1fr; gap:12px; }
.senn-answer-filters .qfilter{ background:#fff; border:1px solid var(--s-border); border-radius:12px; padding:10px 12px; }
.senn-answer-filters .qfilter h5{ margin:0 0 8px; font-size:0.95rem; }
.senn-answer-filters .opts{ display:flex; flex-wrap:wrap; gap:8px; }
.senn-answer-filters .opts label{ background:var(--s-chip); color:var(--s-chip-text); border:1px solid #e0e7ff; border-radius:999px; padding:6px 10px; font-size:.92rem; }
.senn-answer-filters .opts input{ transform:translateY(1px); }
.senn-filter-actions{ display:flex; gap:8px; margin-top:10px; }
.senn-results-list{ display:flex; flex-direction:column; gap:16px; }
.senn-step-heading{ font-size:1.1rem; font-weight:700; margin:8px 0; color:#0f172a; }
.senn-q-card{ background:var(--s-card); border:1px solid var(--s-border); border-radius:12px; padding:14px; }
.senn-q-meta{ font-size:.85rem; opacity:.7; margin-top:4px; }
.senn-bar-chart{ --bar-h:36px; --gap:10px; display:grid; grid-template-columns: 1fr 4fr; row-gap:var(--gap); column-gap:12px; align-items:center; }
.senn-bar-chart .bar-wrap{ background:#fff; border:1px solid var(--s-border); border-radius:10px; overflow:hidden; position:relative; height:var(--bar-h); }
.senn-bar-chart .bar{ height:100%; width: calc(var(--size, 0) * 100%); background:linear-gradient(90deg,var(--s-accent2), #06b6d4); }
.senn-bar-chart .pct{ position:absolute; right:8px; top:50%; transform:translateY(-50%); font-weight:600; }
.senn-table-wrap{ overflow-x:auto; border:1px solid var(--s-border); border-radius:12px; background:#fff; }
.senn-table-wrap table{ min-width:720px; width:100%; border-collapse:collapse; }
.senn-table-wrap th, .senn-table-wrap td{ padding:8px 10px; border-bottom:1px solid var(--s-border); white-space:nowrap; }
.senn-cloud-echarts{ width:100%; min-height:240px; height: clamp(240px, 35vw, 420px); }
@media(min-width:900px){ .senn-answer-filters{ grid-template-columns:1fr 1fr; } }
