:root {
  --bg: #f4f5f9;
  --panel: #ffffff;
  --panel2: #f8f7fc;
  --line: #eaeaf1;
  --text: #303346;
  --muted: #85889c;
  --accent: #9456cd;
  --green: #41b49e;
  --danger: #d4657c;
  font-family: Inter, "Segoe UI", Arial, sans-serif;
  color: var(--text);
  background: var(--bg);
  font-synthesis: none;
}
* {
  box-sizing: border-box;
}
body {
  margin: 0;
}
button,
input,
select,
textarea {
  font: inherit;
}
button,
.button {
  border: 1px solid #ffffff1e;
  background: #ffffff05;
  color: var(--text);
  border-radius: 9px;
  padding: 11px 15px;
  cursor: pointer;
  text-decoration: none;
  transition:
    background 0.15s,
    border 0.15s;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  font-size: 13px;
  font-weight: 550;
}
button:hover,
.button:hover {
  background: #ffffff0e;
  border-color: #ffffff40;
}
button:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
button.primary,
.primary {
  background: var(--accent);
  color: #21221b;
  border-color: transparent;
  font-weight: 650;
}
.primary:hover {
  background: #ffd397;
}
input,
textarea,
select {
  width: 100%;
  border: 1px solid #ffffff21;
  border-radius: 7px;
  padding: 11px 12px;
  background: #111918;
  color: var(--text);
  outline: none;
  font-size: 13px;
  min-width: 0;
}
input:focus,
select:focus,
textarea:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 2px #efb96b15;
}
input[type="color"] {
  height: 38px;
  padding: 4px;
}
input[type="checkbox"] {
  width: auto;
  accent-color: var(--accent);
}
textarea {
  resize: vertical;
  line-height: 1.5;
}
label {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: 12px;
  color: var(--muted);
  margin: 15px 0;
}
h1,
h2,
h3,
p {
  margin-top: 0;
}
h2 {
  font-size: 21px;
  font-weight: 550;
  letter-spacing: -0.5px;
}
p {
  line-height: 1.65;
  color: var(--muted);
}
.hidden {
  display: none !important;
}
.sidebar {
  position: fixed;
  width: 235px;
  inset: 0 auto 0 0;
  background: #131b1a;
  border-right: 1px solid var(--line);
  padding: 34px 19px;
  z-index: 5;
  display: flex;
  flex-direction: column;
}
.brand {
  display: flex;
  gap: 12px;
  align-items: center;
  color: var(--text);
  text-decoration: none;
  font-size: 13px;
  letter-spacing: 1.9px;
  font-weight: 650;
  padding: 0 5px;
}
.brand-sub {
  display: block;
  font-size: 8px;
  letter-spacing: 1.7px;
  margin-top: 6px;
  color: var(--muted);
}
.monogram {
  font-family: Georgia, serif;
  font-size: 27px;
  letter-spacing: -3px;
  border: 1px solid #efb96b70;
  border-radius: 50%;
  color: var(--accent);
  width: 47px;
  height: 47px;
  text-align: center;
  line-height: 43px;
  position: relative;
}
.monogram span {
  position: absolute;
  font-size: 9px;
  right: 2px;
  bottom: -19px;
  background: #131b1a;
  line-height: 15px;
  bottom: -5px;
  letter-spacing: 0;
}
.side-caption {
  color: #657b74;
  font-size: 9px;
  letter-spacing: 2px;
  margin: 55px 15px 15px;
}
.nav {
  width: 100%;
  justify-content: flex-start;
  border: 0;
  background: transparent;
  margin: 4px 0;
  padding: 14px 12px;
  color: #a7b3af;
  font-size: 12px;
}
.nav span {
  font-size: 18px;
  width: 23px;
}
.nav.active {
  background: #efb96b12;
  color: var(--accent);
}
.side-bottom {
  margin-top: auto;
  padding: 20px 12px 0;
  font-size: 11px;
  color: #a5b5ad;
}
.connection-dot {
  display: inline-block;
  background: var(--green);
  width: 6px;
  height: 6px;
  border-radius: 50%;
  margin-right: 7px;
  box-shadow: 0 0 12px #92bfa835;
}
.side-bottom p {
  font-size: 12px;
  margin: 20px 0 32px;
}
.version {
  font-size: 8px;
  letter-spacing: 2px;
  color: #5e756c;
}
.main {
  margin-left: 235px;
}
.topbar {
  height: 84px;
  border-bottom: 1px solid var(--line);
  padding: 0 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 12px;
  gap: 15px;
}
.breadcrumb {
  font-size: 8px;
  letter-spacing: 2px;
  color: #71867c;
  display: block;
  margin-bottom: 5px;
}
.top-actions {
  display: flex;
  align-items: center;
  gap: 20px;
}
.pill {
  display: inline-flex;
  padding: 7px 10px;
  border-radius: 20px;
  font-size: 10px;
  letter-spacing: 0.5px;
  background: #efb96b13;
  color: var(--accent);
  border: 1px solid #efb96b25;
}
.pill.live {
  background: #92bfa815;
  color: var(--green);
  border-color: #92bfa825;
}
#todayLabel {
  color: var(--muted);
  font-size: 11px;
}
.small {
  font-size: 11px;
  padding: 9px 12px;
}
.view {
  padding: 38px 42px 60px;
  max-width: 1800px;
  margin: auto;
}
.hero {
  display: flex;
  justify-content: space-between;
  padding: 12px 0 42px;
  align-items: center;
}
.eyebrow {
  font-size: 9px;
  letter-spacing: 2.3px;
  color: var(--accent);
  font-weight: 600;
}
.hero h1 {
  font-size: clamp(36px, 4vw, 63px);
  line-height: 1.07;
  letter-spacing: -2.3px;
  font-weight: 430;
  margin: 21px 0;
}
.hero h1 em {
  font-family: Georgia, serif;
  color: #d1d8c7;
  font-weight: 400;
}
.hero p {
  font-size: 13px;
  line-height: 1.9;
  margin: 0 0 24px;
}
.hero .primary {
  padding: 14px 20px;
}
.hero-mark {
  margin-right: 35px;
  width: 222px;
  height: 222px;
  border: 1px solid #efb96b28;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  outline: 1px solid #efb96b12;
  outline-offset: 12px;
  transform: rotate(-9deg);
  background: radial-gradient(circle, #28413745, transparent 70%);
}
.hero-mark > span {
  font-family: Georgia, serif;
  font-size: 66px;
  letter-spacing: -9px;
  color: var(--accent);
  margin-left: -8px;
}
.hero-mark small {
  text-align: center;
  font-size: 9px;
  letter-spacing: 3px;
  line-height: 1.8;
  margin-top: 5px;
  color: #d8dfd0;
}
.hero-mark i {
  font-style: normal;
  font-size: 7px;
  letter-spacing: 2px;
  margin-top: 15px;
  color: #809389;
}
.link-card {
  border: 1px solid #efb96b35;
  background: linear-gradient(110deg, #27332890, #1a2320);
  border-radius: 14px;
  padding: 26px 30px;
  display: flex;
  gap: 24px;
}
.link-icon {
  font-size: 27px;
  color: var(--accent);
  background: #efb96b10;
  width: 52px;
  height: 52px;
  border: 1px solid #efb96b20;
  border-radius: 12px;
  display: grid;
  place-items: center;
}
.link-content {
  flex: 1;
  min-width: 0;
}
.link-card h2 {
  font-size: 23px;
  margin: 9px 0 5px;
}
.link-card p {
  font-size: 12px;
  margin: 0 0 15px;
}
.copy-line {
  display: flex;
  gap: 10px;
}
.copy-line input {
  font-family: monospace;
  background: #0b141380;
  color: #becdb9;
  font-size: 12px;
}
.copy-line button {
  white-space: nowrap;
}
.section-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  margin: 31px 0 17px;
}
.section-heading h2 {
  font-size: 18px;
  margin: 0;
}
.section-heading > span {
  font-size: 10px;
  color: var(--muted);
}
.home-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.9fr) minmax(250px, 1fr);
  gap: 22px;
}
.preview-card,
.status-card {
  border: 1px solid var(--line);
  border-radius: 12px;
  overflow: hidden;
  background: #151d1c;
}
.preview-toolbar,
.preview-footer {
  padding: 12px 18px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 9px;
  letter-spacing: 1px;
  color: #9bb0a4;
}
.text-button {
  border: 0;
  background: none;
  padding: 3px;
  font-size: 11px;
  color: var(--accent);
}
.status-card {
  padding: 26px;
}
.status-card h2 {
  line-height: 1.4;
  margin: 16px 0 22px;
  font-size: 22px;
}
.source-row {
  border-bottom: 1px solid var(--line);
  padding: 11px 0;
  font-size: 12px;
  display: flex;
  justify-content: space-between;
  gap: 10px;
}
.source-row span:last-child {
  color: var(--accent);
  text-align: right;
}
.status-note {
  font-size: 11px;
  color: var(--muted);
  line-height: 1.8;
  margin: 20px 0;
}
.feature-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 25px;
}
.feature-row > div {
  border-top: 1px solid var(--line);
  padding-top: 22px;
}
.feature-row span {
  font-size: 9px;
  letter-spacing: 1.6px;
  color: #7e9789;
}
.feature-row h3 {
  font-size: 16px;
  font-weight: 500;
  margin: 15px 0 8px;
}
.feature-row p {
  font-size: 12px;
  max-width: 320px;
}
.canvas-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  overflow: hidden;
  background: #101818;
}
.canvas {
  position: absolute;
  top: 0;
  left: 0;
  width: 1920px;
  height: 1080px;
  transform-origin: top left;
  color: #f4f1e7;
  background: #101818;
  overflow: hidden;
  font-family: Inter, "Segoe UI", Arial, sans-serif;
}
.tv-heading {
  position: absolute;
  top: 39px;
  left: 48px;
  right: 48px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.tv-brand {
  font-size: 25px;
  font-weight: 550;
  letter-spacing: -0.5px;
}
.tv-brand small {
  display: block;
  font-weight: 400;
  color: #99ada4;
  font-size: 16px;
  margin-top: 7px;
  letter-spacing: 1px;
}
.tv-clock {
  font-size: 31px;
  letter-spacing: 1px;
  text-align: right;
}
.tv-clock small {
  display: block;
  font-size: 15px;
  color: #99ada4;
  letter-spacing: 1px;
  margin-top: 4px;
}
.tv-footer {
  position: absolute;
  bottom: 27px;
  left: 48px;
  right: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 17px;
  color: #a8b5ad;
  gap: 20px;
}
.tv-status {
  padding: 6px 12px;
  border-radius: 6px;
  background: #efb96b15;
  color: #efb96b;
  font-size: 15px;
  max-width: 1300px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.tv-status.bad {
  color: #ffb7a7;
  background: #a33c252a;
}
.tv-widget {
  position: absolute;
  padding: 26px 30px;
  overflow: hidden;
  border: 1px solid #ffffff0c;
  box-shadow: 0 7px 22px #00000013;
  display: flex;
  flex-direction: column;
}
.tv-widget h2 {
  font-size: 0.77em;
  margin: 0 0 18px;
  color: var(--widget-color);
  font-weight: 550;
  letter-spacing: 0.3px;
  flex-shrink: 0;
}
.widget-content {
  flex: 1;
  min-height: 0;
  overflow: hidden;
  position: relative;
}
.metric-value {
  font-size: 2.9em;
  font-weight: 420;
  line-height: 1.02;
  letter-spacing: -3px;
}
.metric-unit {
  font-size: 0.55em;
  color: #a9b8ac;
  margin-top: 9px;
  letter-spacing: 1px;
}
.metric-sub {
  font-size: 0.55em;
  color: #a9b8ac;
  position: absolute;
  right: 0;
  bottom: 4px;
}
.widget-empty {
  color: #9baea4;
  font-size: 0.72em;
  line-height: 1.6;
  padding: 10px 0;
}
.arrival-row {
  display: flex;
  gap: 22px;
  align-items: center;
  padding: 16px 0;
  border-bottom: 1px solid #ffffff10;
}
.arrival-time {
  color: var(--widget-color);
  font-size: 0.9em;
  min-width: 84px;
}
.arrival-info {
  flex: 1;
  min-width: 0;
}
.arrival-name {
  font-size: 0.85em;
  font-weight: 550;
}
.arrival-note {
  font-size: 0.58em;
  color: #b6c5b7;
  margin-top: 7px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.arrival-count {
  font-size: 0.8em;
  text-align: right;
  white-space: nowrap;
}
.arrival-count small {
  display: block;
  font-size: 0.66em;
  color: #9aada2;
  margin-top: 5px;
}
.feedback-entry {
  padding: 12px 0 17px;
  border-bottom: 1px solid #ffffff14;
}
.feedback-top {
  font-size: 0.8em;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}
.feedback-top strong {
  font-weight: 550;
}
.feedback-score {
  color: var(--widget-color);
  white-space: nowrap;
}
.feedback-message {
  font-family: Georgia, serif;
  font-size: 0.88em;
  line-height: 1.45;
  margin: 10px 0;
  color: #e4e6d9;
}
.feedback-meta {
  font-size: 0.53em;
  color: #a1b4a8;
  line-height: 1.6;
}
.alert-entry {
  border-left: 3px solid #e9a08b;
  padding: 0 0 0 19px;
  margin-bottom: 20px;
}
.alert-entry .feedback-message {
  font-size: 0.76em;
}
.regular-entry {
  padding: 13px 0;
  border-bottom: 1px solid #ffffff12;
  font-size: 0.8em;
}
.regular-entry small {
  display: block;
  color: #a8bdaa;
  font-size: 0.68em;
  margin-top: 6px;
}
.note-content {
  font-family: Georgia, serif;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: 1.04em;
  line-height: 1.5;
  color: #e2e4d4;
}
.text-content {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  line-height: 1.35;
}
.table-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}
.table-item {
  background: #ffffff08;
  border: 1px solid #ffffff0f;
  border-radius: 12px;
  padding: 13px 16px;
  font-size: 0.74em;
  min-width: 130px;
}
.table-item small {
  display: block;
  font-size: 0.7em;
  color: #a5b4aa;
  margin-top: 7px;
}
.widget-page {
  position: absolute;
  bottom: 0;
  right: 0;
  background: inherit;
  color: #91a599;
  font-size: 14px;
}
.editor-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  margin-bottom: 24px;
}
.editor-bar h1 {
  font-size: 25px;
  font-weight: 480;
  letter-spacing: -0.8px;
  margin: 0 0 8px;
}
.editor-bar > div > span {
  font-size: 11px;
  color: var(--muted);
}
.editor-actions {
  display: flex;
  gap: 7px;
}
.editor-actions button {
  padding: 10px;
  font-size: 11px;
}
#editor {
  max-width: none;
  padding: 28px 24px 40px;
}
.editor-workspace {
  display: grid;
  grid-template-columns: 185px minmax(300px, 1fr) 222px;
  gap: 19px;
}
.library,
.inspector {
  background: #151e1c;
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 18px 14px;
  align-self: start;
}
.library p {
  font-size: 11px;
  line-height: 1.6;
  margin: 11px 0 16px;
}
.widget-choice {
  width: 100%;
  justify-content: flex-start;
  margin-bottom: 7px;
  font-size: 11px;
  gap: 9px;
  padding: 10px;
}
.widget-choice span {
  font-size: 17px;
  color: var(--accent);
}
.library-divider {
  height: 1px;
  background: var(--line);
  margin: 23px 0;
}
.library label,
.inspector label {
  font-size: 10px;
}
.library input,
.inspector input,
.inspector select,
.inspector textarea {
  font-size: 11px;
  padding: 9px 8px;
}
.wide,
.import-button {
  width: 100%;
  font-size: 10px;
  margin: 5px 0;
}
.field-pair {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.field-triple {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.simulation {
  display: flex;
  gap: 12px;
  padding: 12px;
  background: #17201e;
  border: 1px solid var(--line);
  border-radius: 10px;
  margin-bottom: 22px;
}
.simulation label {
  margin: 0;
  font-size: 9px;
  flex: 1;
}
.simulation select,
.simulation input {
  font-size: 10px;
  padding: 8px;
}
.canvas-info {
  font-size: 8px;
  color: var(--muted);
  letter-spacing: 1px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}
.canvas-info label {
  flex-direction: row;
  margin: 0;
  font-size: 9px;
  align-items: center;
  letter-spacing: 0;
}
.editor-canvas-wrap {
  box-shadow: 0 15px 50px #0005;
  outline: 1px solid #ffffff1a;
}
.canvas.editing {
  background-image: radial-gradient(#ffffff18 1px, transparent 1px);
  background-size: 24px 24px;
}
.editing .tv-widget {
  cursor: move;
  touch-action: none;
}
.editing .tv-widget.selected {
  outline: 4px solid #efb96b;
  outline-offset: -1px;
}
.editing .tv-widget.locked {
  cursor: default;
}
.resize-handle {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 45px;
  height: 45px;
  background: linear-gradient(135deg, transparent 50%, #efb96b 50%);
  cursor: nwse-resize;
  z-index: 5;
  touch-action: none;
}
.selection-label {
  position: absolute;
  top: 2px;
  right: 8px;
  font-size: 15px;
  color: var(--accent);
  background: #101818b0;
  padding: 3px 5px;
}
.page-strip {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 7px;
  margin: 22px 0 12px;
}
.page-strip > div {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
}
.page-strip button {
  padding: 9px 11px;
  font-size: 10px;
}
.page-strip button.active {
  border-color: #efb96b80;
  color: var(--accent);
  background: #efb96b0b;
}
.page-settings {
  display: flex;
  align-items: end;
  gap: 9px;
  flex-wrap: wrap;
  border-top: 1px solid var(--line);
  padding-top: 8px;
}
.page-settings label {
  flex: 1;
  min-width: 65px;
  font-size: 9px;
  margin: 10px 0;
}
.page-settings input {
  font-size: 11px;
  padding: 8px;
}
.page-settings button {
  font-size: 9px;
  margin-bottom: 10px;
  padding: 8px;
}
.danger {
  color: var(--danger);
}
.canvas-help {
  font-size: 10px;
  margin-top: 17px;
}
.inspector h2 {
  font-size: 15px;
  margin: 10px 0 5px;
}
.inspector .empty-inspector {
  text-align: center;
  padding: 30px 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.8;
}
.inspector .empty-inspector span {
  display: block;
  font-size: 30px;
  color: var(--accent);
  margin-bottom: 15px;
}
.inspector .button-row {
  display: flex;
  gap: 6px;
  margin-top: 13px;
}
.inspector .button-row button {
  font-size: 10px;
  flex: 1;
  padding: 8px;
}
.check-label {
  flex-direction: row;
  align-items: center;
}
.section-intro h1 {
  font-size: 36px;
  font-weight: 450;
  letter-spacing: -1px;
  margin: 15px 0;
}
.section-intro p {
  font-size: 13px;
  margin-bottom: 30px;
}
.settings-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
}
.settings-card {
  background: var(--panel);
  border: 1px solid var(--line);
  padding: 28px;
  border-radius: 12px;
}
.settings-card h2 {
  font-size: 18px;
  line-height: 1.5;
  margin-bottom: 22px;
}
.help {
  font-size: 11px;
  line-height: 1.8;
  margin: 8px 0 15px;
}
.settings-card label {
  font-size: 11px;
  margin: 20px 0;
}
.settings-card small {
  font-size: 10px;
}
details {
  border-top: 1px solid var(--line);
  padding-top: 20px;
  margin-top: 20px;
}
summary {
  font-size: 12px;
  color: var(--accent);
  cursor: pointer;
}
.settings-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin: 24px 0;
}
.settings-footer > span {
  font-size: 11px;
  color: var(--muted);
}
.diagnostics {
  margin-top: 35px;
}
.diagnostics .section-heading {
  margin-top: 0;
}
#diagnostics {
  font-size: 12px;
  line-height: 1.9;
  color: var(--muted);
}
.diagnostic-error {
  color: var(--danger);
}
#toast {
  position: fixed;
  bottom: 25px;
  left: 50%;
  transform: translateX(-50%) translateY(100px);
  background: #e6c38a;
  color: #19211b;
  padding: 14px 24px;
  z-index: 100;
  border-radius: 10px;
  font-size: 13px;
  box-shadow: 0 10px 40px #0007;
  transition: transform 0.2s;
  max-width: 90vw;
}
#toast.visible {
  transform: translateX(-50%) translateY(0);
}
dialog {
  border: 1px solid var(--line);
  background: #101818;
  color: var(--text);
  border-radius: 12px;
  width: min(96vw, 1600px);
  padding: 0;
}
dialog::backdrop {
  background: #000c;
  backdrop-filter: blur(8px);
}
.preview-dialog-bar {
  padding: 14px 20px;
  display: flex;
  gap: 15px;
  align-items: center;
  font-size: 10px;
  letter-spacing: 1px;
}
.preview-dialog-bar > span {
  flex: 1;
}
.preview-dialog-bar button {
  font-size: 11px;
}
#tvRoot {
  width: 100vw;
  height: 100dvh;
  background: #101818;
  display: flex;
  align-items: center;
  justify-content: center;
}
#tvRoot .canvas-wrap {
  width: 100vw;
  height: 100dvh;
}
.phone-fullscreen{position:fixed;bottom:max(12px,env(safe-area-inset-bottom));right:max(12px,env(safe-area-inset-right));z-index:10000;background:#fff;color:#24443a;border-radius:24px;padding:12px 18px;box-shadow:0 3px 18px #0004;font-size:14px}
.beta-notice{position:absolute;top:115px;right:36px;z-index:100;width:min(440px,70%);padding:18px 22px;border-radius:16px;background:#fff;color:#24443a;box-shadow:0 8px 30px #0003;border:1px solid #dce8e0;pointer-events:none;font-size:20px;line-height:1.4}
.beta-notice strong{display:block;margin-bottom:5px;font-size:21px}
.beta-notice span{display:block}
.public-display {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  background: radial-gradient(ellipse at center, #2c423280, #101818 70%);
  padding: 150px;
}
.public-display .public-logo {
  font-size: 140px;
  color: #efb96b;
  font-family: Georgia, serif;
  letter-spacing: -15px;
  border: 1px solid #efb96b30;
  border-radius: 50%;
  width: 280px;
  height: 280px;
  display: grid;
  place-items: center;
  padding-right: 15px;
  margin-bottom: 50px;
}
.public-display h1 {
  font-size: 60px;
  font-weight: 450;
}
.public-display p {
  font-size: 38px;
  white-space: pre-wrap;
}
.tv-fatal {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100vh;
  font-size: 24px;
  text-align: center;
  padding: 50px;
  color: #efb96b;
}
.error-banner {
  background: #733c302e;
  color: #e5b09d;
  padding: 12px;
  border-radius: 8px;
  font-size: 12px;
  line-height: 1.6;
}
@media (min-width: 1800px) {
  .editor-workspace {
    grid-template-columns: 210px minmax(500px, 1fr) 250px;
  }
}
@media (max-width: 1280px) {
  .sidebar {
    width: 190px;
    padding: 25px 12px;
  }
  .main {
    margin-left: 190px;
  }
  .topbar {
    padding: 0 25px;
  }
  .view {
    padding: 28px 25px;
  }
  .editor-workspace {
    grid-template-columns: 155px minmax(250px, 1fr) 190px;
    gap: 12px;
  }
  .hero-mark {
    width: 180px;
    height: 180px;
    margin-right: 15px;
  }
  .top-actions {
    gap: 10px;
  }
  #todayLabel {
    display: none;
  }
  .editor-bar h1 {
    font-size: 20px;
  }
  .editor-actions {
    flex-wrap: wrap;
    justify-content: end;
  }
  .status-card {
    padding: 20px;
  }
  .library,
  .inspector {
    padding: 14px 10px;
  }
  .page-settings button {
    font-size: 8px;
  }
}
@media (max-width: 1000px) {
  .sidebar {
    width: 70px;
    padding: 25px 8px;
  }
  .brand > span:last-child,
  .brand-sub,
  .side-caption,
  .side-bottom,
  .nav {
    font-size: 0;
  }
  .brand {
    padding: 0;
  }
  .monogram {
    font-size: 27px;
    flex-shrink: 0;
  }
  .nav span {
    font-size: 23px;
  }
  .nav {
    justify-content: center;
    padding: 13px 0;
    margin-top: 15px;
  }
  .main {
    margin-left: 70px;
  }
  .hero-mark {
    display: none;
  }
  .home-grid {
    grid-template-columns: 1fr;
  }
  .status-card h2 br {
    display: none;
  }
  .status-card {
    display: none;
  }
  .editor-workspace {
    grid-template-columns: 145px minmax(280px, 1fr);
  }
  .inspector {
    grid-column: 1/-1;
    display: block;
  }
  .inspector form {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
  }
  .settings-grid {
    grid-template-columns: 1fr;
  }
  .editor-bar {
    align-items: start;
  }
  .editor-bar h1 {
    max-width: 230px;
  }
  .feature-row {
    gap: 15px;
  }
}
@media (max-width: 640px) {
  .topbar {
    padding: 0 15px;
    height: 70px;
  }
  .top-actions .pill {
    display: none;
  }
  .view {
    padding: 25px 16px;
  }
  .hero h1 {
    font-size: 36px;
  }
  .link-card {
    padding: 20px 16px;
  }
  .link-icon {
    display: none;
  }
  .copy-line {
    flex-direction: column;
  }
  .feature-row {
    grid-template-columns: 1fr;
  }
  .section-heading > span {
    display: none;
  }
  .editor-workspace {
    display: flex;
    flex-direction: column;
  }
  .library {
    width: 100%;
  }
  #widgetLibrary {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 5px;
  }
  .library-divider,
  .library > .eyebrow ~ label,
  .library > .field-pair,
  .library > .wide,
  .library > .import-button {
    display: none;
  }
  .workspace-center {
    width: 100%;
  }
  .inspector {
    width: 100%;
  }
  .editor-bar {
    flex-direction: column;
  }
  .editor-actions {
    justify-content: start;
  }
  .inspector form {
    grid-template-columns: 1fr 1fr;
  }
  .simulation {
    gap: 5px;
  }
  .simulation input,
  .simulation select {
    font-size: 9px;
  }
  .settings-card {
    padding: 20px;
  }
  .settings-footer {
    flex-direction: column;
    align-items: stretch;
  }
  .section-intro h1 {
    font-size: 28px;
  }
  .link-card h2 {
    font-size: 20px;
  }
  .preview-dialog-bar {
    flex-wrap: wrap;
  }
  .preview-dialog-bar > span {
    width: 100%;
    flex: auto;
  }
}
:root .tv-widget .metric-value {
  font-size: 2.3em;
}
.tv-widget[data-kind="metric"] {
  padding-top: 22px;
  padding-bottom: 22px;
}
#toast:not(.visible) {
  opacity: 0;
  pointer-events: none;
}
.widget-content .table-item {
  margin-bottom: 10px;
}
.widget-content {
  overflow-wrap: anywhere;
}
.inspector .fit-warning {
  font-size: 10px;
  color: #f3b3a1;
  line-height: 1.6;
  margin-top: 12px;
}


body{color-scheme:light}
button,.button{background:#fff;border-color:#e6e5ef;color:#676779;box-shadow:0 2px 3px #34315f03}
button:hover,.button:hover{background:#f7f2fc;border-color:#cbb4e2;color:#7950ad}
button.primary,.primary{background:linear-gradient(110deg,#a65bd4,#8a53c8);color:white;border-color:transparent;box-shadow:0 4px 10px #9950cf20}
.primary:hover{background:#8243bb;color:#fff}
input,select,textarea{background:#fafafe;border-color:#e8e6ef;color:#4a4b61}
input:focus,select:focus,textarea:focus{box-shadow:0 0 0 3px #a65bd410}
.sidebar{background:#ffffff;border-color:#edecf3;box-shadow:4px 0 20px #33315d02}
.brand{color:#414053;letter-spacing:1.3px}
.brand-sub{color:#9894a7}
.monogram{background:linear-gradient(135deg,#f6e8ff,#ece5fd);border:0;border-radius:13px;color:#9751cf;font-family:Arial,sans-serif;font-size:22px;letter-spacing:-2px;font-weight:650}
.monogram span{display:none}
.side-caption{color:#a4a1b2}
.nav{background:transparent;box-shadow:none;color:#8c899e}
.nav.active{background:#f0e5fa;color:#9456cd;border-radius:8px}
.nav:hover{background:#f8f3fc;border:0}
.side-bottom{color:#9792a5}
.side-bottom p{color:#aaa5b5;font-size:10px;line-height:1.9}
.version{color:#b1adbc}
.connection-dot{background:#43b39e;box-shadow:0 0 0 3px #43b39e0d}
.topbar{background:#ffffffa8;border-color:#e9e9f1;backdrop-filter:blur(12px)}
.breadcrumb{color:#b2adbf;letter-spacing:1.2px}
#viewTitle{font-weight:550;color:#777286}
.pill{background:#f3eafa;color:#a16bcc;border-color:#eddcf8}
.pill.live{background:#e7f7f0;color:#479b84;border-color:#d3eee2}
.hero{padding:0 0 25px;gap:20px}
.hero h1{font-size:30px;font-weight:650;letter-spacing:-.8px;line-height:1.2;margin:0 0 9px}
.hero p{font-size:12px;line-height:1.5;margin:0;color:#9491a5}
.hero .primary{padding:11px 17px;font-size:11px}
.eyebrow{font-size:9px;color:#a491b5;letter-spacing:1.5px}
.overview-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px;margin-bottom:27px}
.overview-card{background:#fff;border:1px solid #efedf5;border-radius:12px;box-shadow:0 5px 24px #43406b04;padding:23px 24px;position:relative;overflow:hidden;min-height:136px}
.overview-card>span{display:block;font-size:10px;color:#aaa4b5;padding-right:25px;line-height:1.6}
.overview-card>strong{display:block;font-size:29px;font-weight:600;letter-spacing:-1px;margin:10px 0 5px;color:#4a455b}
.overview-card>small{font-size:9px;color:#b0a9bb}
.overview-icon{position:absolute;right:20px;top:21px;border-radius:9px;width:31px;height:31px;display:grid;place-items:center;font-size:20px;background:#f2e8fd;color:#a26ad1}
.overview-card.mint .overview-icon{background:#e6f8f1;color:#57b59d}
.overview-card.blue .overview-icon{background:#eaf1ff;color:#7c9ddd}
.overview-card.peach .overview-icon{background:#fff0e5;color:#dca777}
.link-card{background:#fff;border-color:#e9e4f3;padding:23px 26px;border-radius:12px;box-shadow:0 4px 20px #66509304}
.link-icon{background:#f4eafa;color:#a064cf;border:0;width:45px;height:45px;border-radius:10px}
.link-card h2{font-size:20px;font-weight:550;letter-spacing:-.3px;margin:7px 0 5px}
.link-card p{font-size:11px;color:#a39aae}
.copy-line input{background:#faf8fd;color:#8d829d;border:1px solid #efebf6;font-size:11px}
.copy-line button{font-size:11px;padding:10px 18px}
.section-heading h2{font-size:17px;font-weight:600;color:#595067}
.section-heading>span{color:#aaa0b5;font-size:10px}
.preview-card,.status-card{background:white;border-color:#ebe7f1;border-radius:12px;box-shadow:0 5px 20px #64518303}
.preview-toolbar,.preview-footer{color:#a59bb0;background:#fff;letter-spacing:.6px}
.preview-toolbar{border-bottom:1px solid #eee9f4}
.preview-footer{border-top:1px solid #eee9f4}
.text-button{color:#a574ca;background:transparent;border:0;box-shadow:none}
.status-card h2{color:#655871;font-size:20px;font-weight:550;margin:11px 0 15px}
.source-row{font-size:11px;border-color:#f0ecf5;color:#a699af;padding:15px 0}
.source-row span:last-child{color:#8e6aac}
.status-note{font-size:10px;color:#aca0b6;line-height:1.8}
.status-card .button{font-size:11px;width:100%;margin-top:3px}
.editor-bar h1{font-size:25px;font-weight:600;color:#4e465b}
.library,.inspector{background:#fff;border-color:#e8e4ef;box-shadow:0 5px 20px #58407803}
.widget-choice{background:#fcfbfe;border-color:#f1ecf7;color:#9b8aa7;box-shadow:none;border-radius:7px}
.widget-choice span{color:#ae7bd3}
.widget-choice:hover{background:#f2e8fc}
.simulation{background:#fff;border-color:#eae5f2}
.canvas-info{color:#a798b2}
.editor-canvas-wrap{box-shadow:0 7px 24px #74588d0c;outline:1px solid #e5dfef;border-radius:6px}
.page-strip button.active{background:#f0e4fb;color:#9965c6;border-color:#e6d7f2}
.page-settings{border-color:#e7e0ef}
.editing .tv-widget.selected{outline-color:#ad69d5}
.resize-handle{background:linear-gradient(135deg,transparent 50%,#ad69d5 50%)}
.selection-label{color:#fff;background:#ad69d5;border-radius:3px}
.settings-card{background:#fff;box-shadow:0 4px 24px #68518103;border-color:#ebe6f2}
.section-intro h1{font-weight:600;font-size:30px;color:#504558}
.help{color:#a291ad}
.settings-card label{color:#93849f}
.settings-card h2{color:#62516f;font-size:17px;font-weight:600}
.diagnostic-error{color:#c56d85}
#toast{background:#8953bf;color:white;box-shadow:0 7px 26px #794da22b}
.error-banner{background:#fff0f2;color:#bf6b83}
dialog{background:#fff;color:#6b5d79;border-color:#e7dcf0;box-shadow:0 20px 80px #39294825}
dialog::backdrop{background:#4c3b5b55}
.light-canvas{color:#414056;background:#f4f5f9}
.light-canvas .tv-brand{color:#484359}
.light-canvas .tv-brand small,.light-canvas .tv-clock small{color:#9b93a9}
.light-canvas .tv-footer{color:#aaa0b5}
.light-canvas .tv-status{background:#ebe1f7;color:#9668bb}
.light-canvas .tv-status.bad{background:#fce8e8;color:#bb6872}
.light-canvas.editing{background-image:radial-gradient(#a99aba22 1px,transparent 1px)}
.light-widget{color:#4f445c;border-color:#ece7f3!important;box-shadow:0 5px 20px #69418d05}
.dark-widget{color:#f4f1e7}
.light-widget .metric-unit,.light-widget .metric-sub{color:#a99ab4}
.light-widget .widget-empty{color:#9e8daa}
.light-widget .arrival-row,.light-widget .feedback-entry,.light-widget .regular-entry{border-bottom-color:#eee8f5}
.light-widget .arrival-note,.light-widget .arrival-count small{color:#a596b0}
.light-widget .feedback-message,.light-widget .note-content{color:#71617e}
.light-widget .feedback-meta,.light-widget .regular-entry small{color:#a594b0}
.light-widget .alert-entry{border-color:#d599b4}
.light-widget .table-item{background:#f6f0fc;border-color:#eee2f9;color:#8b69a2}
.light-widget .table-item small{color:#b09bbc}
.light-widget .widget-page{color:#b8a5c5}
.public-display{background:radial-gradient(ellipse at top right,#edddfb55,#f8f7fb 60%);color:#70617f}
.public-display .public-logo{color:#a16dca;border-color:#e8d9f6}
.public-display p{color:#96869f}
@media(max-width:1000px){.overview-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.status-card{display:block}.hero h1{font-size:27px}}
@media(max-width:640px){.hero{align-items:start;flex-direction:column}.overview-metrics{gap:10px}.overview-card{padding:16px;min-height:120px}.overview-card>strong{font-size:24px}.overview-icon{right:12px;top:12px;width:24px;height:24px;font-size:16px}.overview-card>span{font-size:9px}.link-card{padding:20px 16px}}
:root{--muted:#77778c}
.overview-card>span,.overview-card>small,.hero p,.link-card p,.source-row,.status-note,.help,.settings-card label,.section-heading>span{color:#82768e}
.light-widget .feedback-meta,.light-widget .regular-entry small,.light-widget .arrival-note,.light-widget .arrival-count small,.light-widget .metric-unit,.light-widget .metric-sub,.light-widget .widget-empty{color:#83738e}
.club-logo{width:43px;height:54px;object-fit:contain;flex-shrink:0}
.tv-identity{display:flex;align-items:center;gap:19px}
.tv-identity>img{width:47px;height:60px;object-fit:contain}
.public-club-logo{width:200px;height:250px;object-fit:contain;margin-bottom:45px}
.pane-tabs{display:flex;gap:5px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid #ede7f4;flex-shrink:0}
.pane-tabs button{flex:1;padding:8px 4px;font-size:11px;background:#faf8fd;border:0;box-shadow:none}
.pane-tabs button.active{background:#efe3fa;color:#9358c0}
.library-pane{min-height:0}
.inspector-section{min-width:0}
@media(min-width:1001px){
  html,body{height:100%;overflow:hidden}
  #studio{height:100dvh}
  .sidebar{width:210px;padding:22px 15px}
  .main{margin-left:210px;height:100dvh;display:flex;flex-direction:column;min-width:0}
  .topbar{height:64px;min-height:64px;padding:0 24px}
  .view{width:100%;max-width:none;flex:1;min-height:0;margin:0;padding:20px 24px}
  #home{display:flex;flex-direction:column;overflow:hidden}
  .hero{padding:0;flex-shrink:0;margin:0 0 16px}
  .hero h1{font-size:26px;margin-bottom:5px}
  .hero p{font-size:11px}
  .overview-metrics{gap:16px;margin-bottom:16px;flex-shrink:0}
  .overview-card{min-height:96px;padding:15px 20px;border-radius:10px}
  .overview-card>strong{font-size:25px;margin:6px 0 2px}
  .overview-icon{top:15px;right:16px}
  .link-card{flex-shrink:0;padding:15px 20px;gap:16px}
  .link-card .eyebrow{display:none}
  .link-card h2{margin:0 0 4px;font-size:17px}
  .link-card p{margin-bottom:9px;font-size:10px}
  .copy-line input{padding:9px 12px}
  .copy-line button{padding:8px 15px}
  #home>.section-heading{margin:17px 0 12px;flex-shrink:0}
  .home-grid{flex:1;min-height:0;grid-template-columns:minmax(0,1fr) 290px;gap:18px}
  .preview-card{display:flex;flex-direction:column;min-height:0}
  .preview-toolbar,.preview-footer{padding:10px 15px;flex-shrink:0;min-height:34px}
  #homeCanvasWrap{aspect-ratio:auto;flex:1;min-height:0;background:#f4f5f9}
  .status-card{min-height:0;overflow:auto;padding:20px}
  .status-card h2{font-size:18px;margin:8px 0 12px}
  .source-row{padding:10px 0}
  .status-note{margin:13px 0;font-size:10px}
  #editor{display:flex;flex-direction:column;overflow:hidden;padding:18px 22px}
  .editor-bar{flex-shrink:0;margin-bottom:17px;min-height:45px}
  .editor-bar h1{font-size:23px;margin-bottom:5px}
  .editor-workspace{flex:1;min-height:0;grid-template-columns:188px minmax(0,1fr) 230px;gap:16px}
  .library,.inspector{height:100%;min-height:0;align-self:stretch;padding:14px 12px;display:flex;flex-direction:column;overflow:hidden}
  .library-pane{overflow:auto;flex:1;padding-right:2px}
  .library p{font-size:10px;margin:9px 0 12px}
  #widgetLibrary{display:flex;flex-direction:column;gap:5px}
  .widget-choice{padding:7px 9px;min-height:31px;margin:0;font-size:10px;line-height:1.2}
  .widget-choice span{font-size:16px}
  .library label{margin:11px 0;gap:5px}
  .library input{padding:8px}
  .library .wide,.library .import-button{font-size:10px;padding:8px;margin:4px 0;min-height:29px}
  .workspace-center{min-height:0;display:grid;grid-template-rows:auto 18px minmax(0,1fr) auto auto 16px;gap:8px;overflow:hidden}
  .simulation{margin:0;padding:9px 12px;gap:12px}
  .simulation label{gap:5px}
  .simulation input,.simulation select{padding:7px;font-size:10px}
  .canvas-info{margin:0}
  #editorCanvasWrap{height:100%;min-height:0;aspect-ratio:auto;background:#eeeaf4;outline:1px solid #e7dfef}
  .page-strip{margin:5px 0 0;min-height:31px}
  .page-strip>div{flex-wrap:nowrap;overflow-x:auto;min-width:0;max-width:calc(100% - 70px)}
  .page-strip button{padding:7px 9px;font-size:10px;white-space:nowrap}
  .page-settings{padding-top:3px;gap:8px;flex-wrap:nowrap}
  .page-settings label{margin:5px 0;gap:5px;min-width:0}
  .page-settings label:first-child{flex:1.6}
  .page-settings label:nth-child(2){max-width:100px}
  .page-settings input{padding:7px}
  .page-settings button{margin:0 0 5px;padding:7px;font-size:9px;white-space:nowrap}
  .canvas-help{font-size:9px;margin:0;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .inspector h2{font-size:14px;margin:9px 0 12px}
  .inspector .pane-tabs{margin-bottom:6px;padding-bottom:9px;gap:2px}
  .inspector .pane-tabs button{font-size:10px;padding:7px 3px}
  .inspector form{flex:1;overflow:auto;min-height:0;padding-right:3px}
  .inspector label{margin:11px 0;gap:6px}
  .inspector .field-pair{gap:9px}
  .inspector .field-pair label{margin:8px 0}
  .inspector .button-row{flex-shrink:0;margin-top:9px;gap:5px}
  .inspector .button-row button{padding:8px 4px;font-size:10px}
  #settings{overflow:auto}
  .settings-footer{position:sticky;bottom:0;background:#fff;padding:14px 18px;border:1px solid #eae3f0;border-radius:9px;box-shadow:0 -4px 20px #70588709;z-index:2}
}
@media(min-width:1001px) and (max-height:800px){
  .view{padding:15px 20px}.hero{margin-bottom:12px}.hero h1{font-size:24px}
  .overview-metrics{margin-bottom:12px}.overview-card{min-height:84px;padding:12px 16px}.overview-card>strong{font-size:22px}
  .link-card{padding:12px 18px}.link-card p{margin-bottom:7px}
  #home>.section-heading{margin:12px 0 9px}.status-card{padding:15px}.status-note{margin:10px 0}.source-row{padding:8px 0}
  #editor{padding:12px 18px}.editor-bar{margin-bottom:12px;min-height:42px}.editor-workspace{gap:12px;grid-template-columns:172px minmax(0,1fr) 216px}
  .library,.inspector{padding:12px 10px}.pane-tabs{margin-bottom:9px;padding-bottom:9px}.widget-choice{padding:6px 8px;min-height:28px;font-size:10px}
  #widgetLibrary{gap:4px}.library p{margin:8px 0}.library .eyebrow{font-size:8px}
  .workspace-center{gap:6px}.simulation{padding:8px}.inspector label{margin:8px 0}.inspector .field-pair label{margin:6px 0}
}
@media(max-width:1000px){.library-pane{width:100%}.club-logo{width:42px;height:53px}.pane-tabs button{font-size:11px}}
.sidebar .nav{height:44px;min-height:44px;display:flex;align-items:center;justify-content:flex-start;gap:11px;padding:0 13px;margin:5px 0;border-radius:11px;position:relative;white-space:nowrap;text-align:left;font-size:12px;line-height:1}
.sidebar .nav svg{width:18px;height:18px;min-width:18px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.sidebar .nav svg circle{fill:#fff}
.sidebar .nav.active svg circle{fill:#eee4f8}
.sidebar .nav .nav-label{width:auto;font-size:12px;letter-spacing:0;line-height:1;white-space:nowrap;flex:1}
.sidebar .nav.active{color:#9154c2;background:#f0e7fa}
.sidebar .nav.active:before{content:'';position:absolute;left:0;top:13px;bottom:13px;width:3px;border-radius:4px;background:#a16bc8}
.brand{gap:12px;letter-spacing:0;font-size:14px;font-weight:650;padding:0 9px}
.brand-sub{font-size:10px;letter-spacing:.1px;font-weight:400;margin-top:6px;line-height:1.2}
.side-caption{font-size:8px;letter-spacing:1.6px;margin:37px 13px 14px}
.side-bottom{padding:16px 6px 0}
.sidebar-summary{display:flex;align-items:center;gap:10px;padding:13px 10px;border:1px solid #eee8f5;background:#fcfaff;border-radius:12px;font-size:11px;color:#766980;margin-bottom:18px}
.sidebar-summary small{display:block;margin-top:5px;font-size:9px;color:#a493b0}
.sidebar-screen-icon{display:grid;place-items:center;width:29px;height:29px;border-radius:8px;background:#eee3f9;color:#a073c3;font-size:17px}
.sidebar-server{font-size:9px;padding:0 9px;color:#92849d;margin-bottom:10px;white-space:nowrap}
.side-bottom .version{display:block;font-size:9px;letter-spacing:0;padding:0 9px;color:#b4a7bd}
.home-information{display:flex;flex-direction:column;min-width:0;min-height:0;gap:13px}
.daily-card{border:1px solid #eae4f1;border-radius:14px;background:#fff;padding:17px;display:flex;flex-direction:column;min-height:0;overflow:hidden}
.daily-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:8px}
.daily-title h2{font-size:14px;margin:0;font-weight:600;color:#5c4d6a}
.daily-title>span{font-size:8px;color:#a583bd;background:#f4ebfb;padding:4px 6px;border-radius:5px;white-space:nowrap}
.daily-card .pane-tabs{margin-bottom:6px;padding-bottom:8px}
.daily-card .pane-tabs button{font-size:10px;padding:7px 3px}
#dailyInformation{min-height:0;flex:1;overflow:hidden}
.daily-row{display:flex;gap:11px;align-items:center;padding:11px 0;border-bottom:1px solid #f1edf6;font-size:11px}
.daily-row .time{color:#9b6bc0;font-size:11px;font-weight:600;min-width:35px}
.daily-row .guest{min-width:0;flex:1;overflow:hidden}
.daily-row strong{display:block;font-size:11px;font-weight:550;color:#746080;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.daily-row small{display:block;color:#ac9bb7;font-size:9px;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.daily-row .count{font-size:10px;color:#a38ab3;white-space:nowrap}
.daily-empty{font-size:11px;color:#9b85aa;line-height:1.7;margin-top:13px}
.daily-footer{display:flex;align-items:center;justify-content:space-between;padding-top:9px;flex-shrink:0;font-size:9px;color:#ab9ab7}
.daily-footer .text-button{font-size:10px}
.preview-toolbar>div{display:flex;flex-direction:column;gap:5px;min-width:0}
.preview-toolbar strong{font-size:13px;font-weight:600;color:#6a5878;letter-spacing:0}
#publicationStatus{font-size:9px;letter-spacing:0;color:#ad9cbb}
@media(min-width:1001px){
 .sidebar{width:220px;padding:22px 13px;border:0;box-shadow:none}
 .main{margin-left:220px;height:calc(100dvh - 16px);margin-top:8px;margin-right:8px;background:#f4f5f9;border:1px solid #e9e4f0;border-radius:22px;overflow:hidden}
 #studio{background:white}
 .topbar{background:#ffffffa0;border-color:#eae5f2}
 .home-grid{grid-template-columns:minmax(280px,340px) minmax(0,1fr);align-items:start;gap:18px;flex:1;min-height:0}
 .home-information{height:100%;gap:12px}
 .home-information .link-card{padding:16px;display:block;border-radius:14px}
 .home-information .link-icon{display:none}
 .home-information .link-card h2{font-size:14px;margin-bottom:6px}
 .home-information .link-card p{font-size:10px;line-height:1.5;margin-bottom:10px}
 .home-information .copy-line{flex-direction:column;gap:7px}
 .home-information .copy-line input{font-size:10px;padding:8px}
 .home-information .copy-line button{font-size:10px;padding:8px;width:100%}
 .daily-card{flex:1;padding:14px 16px;min-height:158px}
 .home-information .status-card{padding:13px 16px;flex-shrink:0;border-radius:14px;overflow:hidden}
 .home-information .status-card h2{font-size:12px;margin:0 0 8px}
 .home-information .source-row{font-size:9px;padding:6px 0}
 .home-information .status-card .text-button{font-size:9px;margin-top:8px}
 .home-grid>.preview-card{height:auto;align-self:start;max-height:100%;border-radius:14px}
 .home-grid>.preview-card .preview-toolbar{padding:15px 18px;height:57px}
 #homeCanvasWrap{width:100%;height:auto;aspect-ratio:16/9;flex:none;min-height:0;background:#f4f5f9}
 .home-grid>.preview-card .preview-footer{height:38px;padding:10px 17px}
}
@media(min-width:1001px) and (max-height:800px){
 .main{height:calc(100dvh - 12px);margin-top:6px;margin-right:6px;border-radius:19px}
 .home-grid{grid-template-columns:290px minmax(0,1fr);gap:14px}
 .home-information{gap:9px}.home-information .link-card{padding:12px 14px}.home-information .link-card p{display:none}
 .home-information .status-card{padding:10px 14px}.home-information .source-row{padding:5px 0}
 .daily-card{padding:11px 14px}.daily-title{margin-bottom:8px}.daily-row{padding:8px 0}.daily-title h2{font-size:12px}
}
@media(max-width:1000px){
 .sidebar .nav{padding:0;justify-content:center}.sidebar .nav .nav-label{display:none}.sidebar .nav svg{width:22px;height:22px}
 .sidebar .brand{padding:0}.sidebar .brand>span{display:none}.sidebar .side-bottom{display:none}
 .home-grid{display:flex;flex-direction:column}.home-information{width:100%}.home-grid>.preview-card{width:100%;order:-1}
 .home-information .status-card{display:block}.daily-card{min-height:240px}
}
.home-grid>.preview-card{min-width:0}


.login-page{display:grid;place-items:center;min-height:100dvh;background:#fff;padding:24px;isolation:isolate;overflow:hidden}
.login-pattern{position:fixed;inset:-200px;z-index:-2;background-image:url('/bgg-light.png');background-size:110px 140px;background-repeat:repeat;opacity:.08;transform:rotate(-18deg);pointer-events:none;will-change:background-position}
.login-brand{position:fixed;top:32px;left:38px;font-size:10px;font-weight:600;letter-spacing:2px;color:#82758e}
.login-page .login-card{width:min(100%,420px);padding:40px;background:#fffffff5;border:1px solid #ede8f1;border-radius:26px;box-shadow:0 25px 90px #3c245513;text-align:center;backdrop-filter:blur(12px)}
.login-kicker{margin-top:24px;font-size:9px;letter-spacing:2px;color:#9578af;font-weight:600}
.login-page .login-card h1{font-size:28px;letter-spacing:-.8px;margin:12px 0}
.login-page .login-card p{line-height:1.7;margin:16px auto 26px}
.login-card form{text-align:left}.login-page .login-card input{width:100%;height:48px;border-radius:11px;background:#faf9fc;border:1px solid #e5deed;padding:0 14px;font-size:14px}
.login-page .login-card button{height:47px;border-radius:11px;margin-top:16px;font-size:12px}
.login-page .login-card .login-footnote{margin:25px 0 0;padding-top:20px;border-top:1px solid #eeeaf3;font-size:10px;color:#a299ad}.login-footer{position:fixed;bottom:25px;font-size:8px;letter-spacing:2px;color:#a69dad}
@media(prefers-reduced-motion:no-preference){.login-pattern{animation:crest-drift 24s linear infinite}@keyframes crest-drift{from{background-position:0 0}to{background-position:220px -280px}}}
@media(max-width:500px){.login-brand{top:20px;left:24px;font-size:8px}.login-page .login-card{padding:28px}.login-footer{bottom:12px}}
.login-card{width:min(100%,380px);background:white;border:1px solid #e8e1f0;border-radius:22px;padding:32px;box-shadow:0 16px 55px #5540700b}
.login-card h1{font-size:23px;margin-top:20px}.login-card p{color:#867a95;font-size:12px;margin:12px 0 22px}.login-card label{display:flex;flex-direction:column;gap:8px;font-size:12px}.login-card button{width:100%;margin-top:18px}
@media(prefers-reduced-motion:no-preference){
 .login-card{animation:studio-enter .24s ease-out}
 #studio button,#studio .nav{transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease}
 #home:not(.hidden),#settings:not(.hidden),#documentation:not(.hidden){animation:studio-enter .18s ease-out}
 @keyframes studio-enter{from{opacity:.65;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
}
.library-pane{padding-left:3px;padding-right:3px}
#widgetLibrary .widget-choice:focus-visible{outline-offset:-2px!important}
.presentation-picker{margin:0 0 18px;padding-bottom:16px;border-bottom:1px solid #ece7f2}
.presentation-heading{font-size:11px;color:#6c617b;margin-bottom:10px}
.presentation-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.presentation-option{display:flex;flex-direction:column;gap:7px;padding:8px!important;background:#fff;border:1px solid #ebe5f1;border-radius:10px;font-size:10px;color:#746780;box-shadow:none}
.presentation-option[aria-pressed=true]{border-color:#9964cb;background:#f7f1fd;color:#8553c7;box-shadow:0 0 0 1px #9964cb}
.design-sample{position:relative;display:flex;flex-direction:column;gap:5px;width:100%;height:44px;background:#f4f1f8;border-radius:5px;padding:7px;overflow:hidden}
.design-sample i,.design-sample b,.design-sample em{display:block;height:3px;width:45%;background:#a88bc5;border-radius:2px}
.design-sample b{height:8px;width:65%;background:#d0c1df}.design-sample em{width:80%;background:#ddd4e7}
.design-accent{border-left:4px solid #9964cb}.design-editorial i{width:90%;border-bottom:1px solid #9964cb;padding-bottom:5px;background:none}.design-focus{align-items:center}.design-focus b{height:12px;width:45%}
.tv-widget[data-presentation=accent]{box-shadow:inset 7px 0 0 var(--widget-color)}
.tv-widget[data-presentation=accent]>h2{background:color-mix(in srgb,var(--widget-color) 12%,transparent);border-radius:8px;padding:7px 10px;margin-top:-7px;margin-bottom:14px}
.tv-widget[data-presentation=editorial]>h2{font-family:Georgia,serif;font-size:1.05em;border-bottom:2px solid var(--widget-color);padding-bottom:9px;letter-spacing:0}
.tv-widget[data-presentation=editorial] .feedback-message{font-style:italic}
.tv-widget[data-presentation=editorial] .arrival-time{font-family:monospace}
.tv-widget[data-presentation=focus]>h2{text-align:center;letter-spacing:.06em;text-transform:uppercase;font-size:.68em}
.tv-widget[data-presentation=focus] .widget-content{text-align:center}
.tv-widget[data-presentation=focus] .metric-sub{position:static;text-align:center;margin-top:6px}
.tv-widget[data-presentation=focus] .metric-value{font-weight:700;color:var(--widget-color)}
.tv-widget[data-presentation=focus] .arrival-row{grid-template-columns:80px 1fr 100px}
.tv-widget[data-presentation=focus] .feedback-top{justify-content:center;gap:20px}
.tv-widget[data-presentation=focus] .alert-entry{border-left:0;border-top:2px solid var(--widget-color);padding-top:10px}
.tv-widget[data-presentation=accent] .regular-entry,.tv-widget[data-presentation=accent] .feedback-entry{border-left:3px solid var(--widget-color);padding-left:12px}
#widgetLibrary{display:flex;flex-direction:column;gap:18px}
.widget-group h3{display:flex;align-items:center;justify-content:space-between;margin:0 2px 8px;font-size:10px;font-weight:600;color:#777184;letter-spacing:.02em}
.widget-group h3 span{font-size:9px;color:#a39bad;font-weight:500}
.widget-group-items{display:flex;flex-direction:column;gap:4px}
#widgetLibrary .widget-choice{display:flex;align-items:center;width:100%;min-height:37px;margin:0;padding:6px 7px;gap:8px;border:1px solid transparent;border-radius:9px;background:#fff;box-shadow:none;text-align:left;transition:background .15s,border-color .15s;cursor:grab}
#widgetLibrary .widget-choice:hover{background:#f7f3fc;border-color:#e8dcf6}
#widgetLibrary .widget-choice:focus-visible{outline:2px solid #9763ce;outline-offset:2px}
#widgetLibrary .widget-choice:active{cursor:grabbing;background:#efe5fa}
#widgetLibrary .widget-choice-icon{display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;border-radius:8px;background:#f3eef9;color:#9568bc}
#widgetLibrary .widget-choice-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
#widgetLibrary .widget-choice-label{flex:1;min-width:0;font-size:10px;line-height:1.35;font-weight:500;color:#625970}
#widgetLibrary .widget-choice-add{font-size:14px;font-weight:400;color:#b5a7c4;flex:0 0 8px}
.widget-group:nth-child(2) .widget-choice-icon{background:#edf6f3!important;color:#579a89!important}
.widget-group:nth-child(3) .widget-choice-icon{background:#f0f2fa!important;color:#788abe!important}
@media(max-height:850px) and (min-width:1001px){#widgetLibrary{gap:10px}#widgetLibrary .widget-choice{min-height:32px;padding:3px 5px}.widget-group h3{margin-bottom:5px}}
@media(min-width:1001px){.home-information .source-row{display:inline-flex;flex-direction:column;width:49%;align-items:flex-start;gap:3px;border:0;padding:6px 0}.home-information .source-row span:last-child{text-align:left}.home-information .status-card h2{margin-bottom:3px}.home-information .status-card{padding:12px 16px}.home-grid>.preview-card{width:100%;max-height:none}.home-information .link-card h2{font-size:15px}.home-information .copy-line{flex-direction:row}.home-information .copy-line input{flex:1;min-width:0}.home-information .copy-line button{width:auto;white-space:nowrap}.home-information .link-card p{display:block}.home-information .link-card{padding:16px}.daily-card{min-height:130px}}
#documentation{overflow:auto}
.doc-header h1{font-size:28px;font-weight:600;margin:12px 0 8px;color:#564762}
.doc-header p{font-size:12px;margin-bottom:25px}
.doc-layout{display:grid;grid-template-columns:225px minmax(0,1fr);gap:24px;align-items:start}
.doc-toc{position:sticky;top:0;display:flex;flex-direction:column;background:white;padding:13px;border:1px solid #eae2f1;border-radius:13px;gap:3px}
.doc-toc a{padding:9px 10px;font-size:11px;color:#92749f;text-decoration:none;border-radius:7px;line-height:1.4}
.doc-toc a:hover{background:#f4eafb;color:#9256b9}
.doc-article{background:white;border:1px solid #ebe3f2;border-radius:14px;padding:28px 34px;min-width:0;max-width:1000px}
.doc-article section{scroll-margin-top:20px;border-bottom:1px solid #eee7f4;padding-bottom:25px;margin-bottom:29px}
.doc-article section:last-child{border:0;margin-bottom:0}
.doc-article h2{font-size:21px;font-weight:600;margin:0 0 18px;color:#6b4b7e}
.doc-article h3{font-size:15px;color:#9166a7;margin:22px 0 10px;font-weight:600}
.doc-article p,.doc-article li{font-size:13px;line-height:1.85;color:#817089}
.doc-article li{margin-bottom:7px}
.doc-article pre{background:#f7f2fa;border:1px solid #ede2f4;border-radius:9px;padding:17px;overflow:auto;line-height:1.8;color:#8654a0;font-size:11px}
.doc-article code{font-size:.9em;color:#8b58a4;overflow-wrap:anywhere}
.doc-article table{border-collapse:collapse;width:100%;font-size:12px;margin:15px 0 22px}
.doc-article th{background:#faf6fc;text-align:left;color:#8c649e;font-weight:600}
.doc-article td,.doc-article th{padding:11px 13px;border:1px solid #eee5f4;line-height:1.65;color:#8a7795;vertical-align:top}
.doc-article a{color:#985bc0}
.meeting-card{margin:24px 0}.meeting-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.meeting-actions label{margin:0}
@media(max-width:1000px){.doc-layout{grid-template-columns:1fr}.doc-toc{position:static;display:grid;grid-template-columns:1fr 1fr}.doc-article{padding:22px}.doc-article table{font-size:10px}.doc-article td,.doc-article th{padding:8px}.doc-header h1{font-size:24px}}


.sidebar .brand{flex-shrink:0}
.sidebar-navigation{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;padding-top:30px;padding-bottom:14px;gap:24px}
.sidebar-navigation .navigation-group{flex:none;min-width:0}
.sidebar-navigation .side-caption{font-size:8px;font-weight:550;line-height:1.3;letter-spacing:1.7px;margin:0 13px 12px;color:#a397b1}
.sidebar-navigation .navigation-settings{margin-top:auto;padding-top:24px}
.sidebar-navigation .navigation-api{padding-top:4px}
.sidebar .nav .nav-soon{width:auto;flex:none;font-size:7px;font-weight:500;letter-spacing:0;line-height:1;border:1px solid #ece7f1;border-radius:4px;padding:4px;color:#aa9eb6;background:#faf8fc}
.sidebar .navigation-api .nav{gap:9px;padding-right:7px}
.sidebar .navigation-api .nav .nav-label{font-size:11px}
.sidebar .side-bottom{flex-shrink:0;margin-top:0;padding-top:10px}
@media(max-width:1000px){.sidebar-navigation{gap:20px;padding-top:24px;padding-bottom:0}.sidebar-navigation .side-caption{display:block;font-size:6px;letter-spacing:.2px;text-align:center;margin:0 0 9px}.sidebar .nav .nav-soon{display:none}.sidebar .navigation-api .nav{padding:0}.sidebar-navigation .navigation-settings{padding-top:14px}}
.editor-workspace{grid-template-columns:300px minmax(0,1fr);gap:18px}
.composer-panel{display:flex;flex-direction:column;min-width:0;min-height:0;align-self:stretch;background:#fff;border:1px solid #e6e2ed;border-radius:16px;overflow:hidden;box-shadow:0 6px 24px #49366004}
.composer-panel details{padding:0;margin-top:0}
.composer-heading{display:flex;align-items:center;gap:11px;flex:none;padding:20px 18px 17px}
.composer-heading>div{flex:1;min-width:0}
.composer-heading h2{font-size:15px;font-weight:650;letter-spacing:-.3px;color:#494355;margin:0 0 5px}
.composer-heading #composerCount{display:block;font-size:10px;color:#96909f}
.composer-mark,.inspector-symbol{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;flex:none;background:#f0e9f9;color:#9860c5}
.composer-panel svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex:none}
.composer-format{font-size:9px;font-weight:600;background:#f7f5fa;border:1px solid #eeeaf3;color:#9a8da7;border-radius:5px;padding:4px 5px}
.composer-tabs{display:flex;gap:3px;flex:none;margin:0 15px 15px;padding:4px;background:#f5f3f8;border:1px solid #efebf4;border-radius:10px}
.composer-tabs button{position:relative;display:flex;align-items:center;justify-content:center;flex:1;gap:5px;min-width:0;padding:9px 5px;font-size:11px;font-weight:550;border:1px solid transparent;box-shadow:none;color:#8e8499;background:none;border-radius:7px}
.composer-tabs button:hover:not(:disabled){background:#eee8f4}
.composer-tabs button.active{color:#8951bc;background:#fff;border-color:#ede4f4;box-shadow:0 2px 6px #57317608}
.composer-tabs button:disabled{opacity:.4;cursor:default}
.selection-dot{width:4px;height:4px;border-radius:50%;background:#9b67c4}
.composer-tabs button:disabled .selection-dot{display:none}
.composer-panel .composer-pane{flex:1;min-height:0;min-width:0;padding:0 17px 17px;overflow:auto;scrollbar-width:thin;scrollbar-color:#ddd5e6 transparent}
.composer-panel #libraryWidgets{display:flex;flex-direction:column;overflow:hidden;padding-bottom:10px}
.library-intro{flex:none;padding:0 1px}
.library-intro h3{font-size:12px;font-weight:600;color:#5a5266;margin:1px 0 6px}
.library-intro p{font-size:10px;line-height:1.6;color:#9c91a5;margin:0 0 13px}
.widget-search{position:relative;display:flex;align-items:center;gap:8px;flex:none;border:1px solid #ebe6f1;background:#fbfafc;border-radius:9px;padding:0 10px;margin:0 0 13px;min-height:37px;color:#a398ae}
.widget-search:focus-within{border-color:#b991d8;box-shadow:0 0 0 3px #f4edfa;background:white}
.widget-search svg{width:15px;height:15px}
.composer-panel .widget-search input{flex:1;min-width:0;width:100%;border:0!important;outline:0!important;box-shadow:none!important;background:none;padding:10px 0;margin:0;font-size:10px;color:#60556e}
.widget-search input::-webkit-search-cancel-button{display:none}
.widget-search input::placeholder{color:#b0a7ba}
.widget-search button{border:0;background:none;box-shadow:none;padding:3px;font-size:17px;color:#9d8eac;line-height:1;flex:none}
.composer-panel #widgetLibrary{display:flex;flex-direction:column;gap:9px;flex:1;min-height:0;overflow:auto;padding:0 3px 4px 0;scrollbar-width:thin;scrollbar-color:#ddd5e6 transparent}
.composer-panel .widget-group{flex:none;border-top:1px solid #f0edf5;padding-top:8px}
.composer-panel .widget-group:first-child{border-top:0;padding-top:0}
.composer-panel .widget-group>summary{display:flex;align-items:center;gap:8px;cursor:pointer;list-style:none;padding:5px 3px 9px;color:#a395af;border-radius:5px}
.composer-panel summary::-webkit-details-marker{display:none}
.composer-panel .widget-group>summary h3{flex:1;display:flex;align-items:center;justify-content:flex-start;gap:7px;font-size:10px;font-weight:650;letter-spacing:.01em;color:#83738e;margin:0}
.composer-panel .widget-group>summary h3 span{font-size:8px;font-weight:500;border:1px solid #eee8f4;border-radius:4px;padding:1px 4px;color:#ad9eba;background:#fbf9fd}
.category-chevron{font-size:14px;line-height:1;color:#b5a8c1;transition:transform .16s;flex:none}
details:not([open])>summary>.category-chevron{transform:rotate(-90deg)}
.composer-panel .widget-group-items{display:flex;flex-direction:column;gap:3px}
.composer-panel #widgetLibrary .widget-choice{min-height:45px;padding:7px 6px;gap:9px;cursor:grab;border:1px solid transparent;border-radius:10px;background:#fff;box-shadow:none;outline-offset:-2px!important}
.composer-panel #widgetLibrary .widget-choice:hover{background:#faf7fd;border-color:#ece3f5}
.composer-panel #widgetLibrary .widget-choice:active{background:#f2e9fb}
.composer-panel #widgetLibrary .widget-choice-icon{width:31px;height:31px;flex-basis:31px;border-radius:9px;color:#9b71bd;background:#f5f0fa}
.composer-panel #widgetLibrary .widget-choice-icon svg{width:16px;height:16px}
.composer-panel #widgetLibrary .widget-choice-label{font-size:11px;color:#665872;line-height:1.35;font-weight:550}
.composer-panel #widgetLibrary .widget-choice-label small{display:block;font-size:9px;color:#aba0b6;font-weight:400;margin-top:3px}
.composer-panel #widgetLibrary .widget-choice-add{font-size:16px;font-weight:400;flex-basis:12px;text-align:center;color:#c3b6d0}
.composer-panel #widgetLibrary .widget-choice:hover .widget-choice-add{color:#9760c5}
.search-empty{font-size:11px;line-height:1.7;text-align:center;border:1px dashed #e8dfee;border-radius:10px;padding:20px 12px;color:#a08cac}
.composer-panel #inspector{display:flex;flex-direction:column;grid-column:auto;height:auto;width:100%;align-self:auto;border:0;border-radius:0;box-shadow:none;background:none;padding:0 15px 13px;overflow:hidden}
.inspector-selection{display:flex;align-items:center;gap:9px;padding:12px 10px;border:1px solid #eee6f5;background:#fcfaff;border-radius:10px;flex:none;margin-bottom:14px}
.inspector-selection>div{flex:1;min-width:0}
.inspector-selection .inspector-symbol{width:30px;height:33px;border-radius:8px;background:#eee3f7}
.inspector-selection .inspector-symbol svg{width:16px;height:16px}
.inspector-selection .eyebrow{font-size:8px;letter-spacing:.04em;color:#a88bbd;margin:0 0 5px;line-height:1.3}
.composer-panel .inspector-selection h2{font-size:12px;line-height:1.35;font-weight:600;margin:0;color:#64516f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.selection-state{font-size:7px;font-weight:500;letter-spacing:.02em;padding:4px 5px;border-radius:4px;color:#aa8bbd;background:#f4ebfa;flex:none}
.composer-panel #inspector form{display:block;flex:1;min-height:0;overflow:auto;grid-template-columns:none;padding:0 3px 3px 0;scrollbar-width:thin;scrollbar-color:#ddd5e6 transparent}
.inspector-category{border:1px solid #eae5f0;border-radius:11px;overflow:hidden;margin:0 0 9px;background:#fff}
.inspector-category>summary{display:flex;align-items:center;gap:9px;padding:12px 11px;list-style:none;cursor:pointer;background:#fff}
.inspector-category[open]>summary{background:#faf8fc;border-bottom:1px solid #eee9f3}
.inspector-category>summary>span:nth-child(2){flex:1;min-width:0}
.inspector-category summary strong{display:block;color:#766180;font-size:11px;font-weight:600}
.inspector-category summary small{display:block;font-size:9px;color:#b09dbc;margin-top:4px}
.category-symbol{display:grid;place-items:center;color:#a583bd;flex:none}
.category-symbol svg{width:17px;height:17px}
.composer-panel .inspector-section{display:block;padding:3px 12px 13px}
.composer-panel label{font-size:10px;display:flex;flex-direction:column;gap:7px;margin:12px 0;color:#98859f;min-width:0}
.composer-panel input,.composer-panel select,.composer-panel textarea{width:100%;font-size:11px;padding:10px;border:1px solid #e7dfef;border-radius:7px;background:#fdfbff;color:#72607e;min-width:0}
.composer-panel textarea{min-height:120px;resize:vertical;line-height:1.65}
.composer-panel input[type=color]{height:36px;padding:5px;cursor:pointer}
.composer-panel input[type=checkbox]{width:13px;height:13px;margin:0;flex:none}
.composer-panel .check-label{flex-direction:row;align-items:center;font-size:10px;line-height:1.5}
.composer-panel .field-pair{gap:9px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.composer-panel .field-pair label{margin:10px 0}
.composer-panel .presentation-picker{margin:10px 0 13px;padding-bottom:14px;border-color:#efe6f6}
.composer-panel .presentation-heading{font-size:10px;margin-bottom:9px;color:#9981a7}
.composer-panel .presentation-grid{gap:7px}
.composer-panel .presentation-option{min-width:0;font-size:9px;padding:8px!important;border-radius:8px}
.composer-panel .design-sample{height:45px}
.composer-panel .inspector .button-row{display:flex;gap:7px;margin-top:10px;flex:none}
.composer-panel .inspector .button-row button{flex:1;font-size:10px;padding:9px 7px;min-width:0;white-space:nowrap;border-radius:8px}
.composer-panel .inspector .inspector-actions{padding-top:11px;margin:7px 0 0;border-top:1px solid #eee7f4}
.inspector-actions button>span{font-size:16px;font-weight:400;line-height:1}
.composer-panel .inspector-actions .danger{color:#cf718c;border-color:#f0e4ed;background:#fffafd}
.composer-panel .composition-category{border:1px solid #ebe5f1;border-radius:10px;margin:0 0 10px;overflow:hidden}
.composition-category>summary{font-size:11px;font-weight:550;color:#8b719a;background:#fcfaff;padding:13px 11px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:8px}
.composition-category>summary:after{content:'⌄';font-size:13px;color:#b59ec5}
.composition-category:not([open])>summary:after{transform:rotate(-90deg)}
.composition-category[open]>summary{border-bottom:1px solid #f0e9f5}
.category-fields{padding:0 12px 10px}
.composer-panel .wide,.composer-panel .import-button{font-size:10px;padding:10px 8px;margin:9px 0 0;min-height:32px;width:100%;border-radius:7px;line-height:1.5;text-align:center;justify-content:center}
.composer-panel summary:focus-visible,.composer-tabs button:focus-visible{outline:2px solid #ad82d1;outline-offset:-3px}
@media(min-width:1001px){.editor-workspace{grid-template-columns:300px minmax(0,1fr)}.composer-panel{height:100%}}
@media(min-width:1001px) and (max-height:800px){.editor-workspace{grid-template-columns:280px minmax(0,1fr);gap:14px}.composer-heading{padding:15px 15px 12px}.composer-tabs{margin:0 12px 12px}.composer-tabs button{padding:8px 4px}.composer-panel .composer-pane{padding-left:13px;padding-right:13px}.composer-panel #widgetLibrary .widget-choice{min-height:41px;padding:5px}.composer-panel #widgetLibrary .widget-choice-label{font-size:10px}.composer-panel #widgetLibrary .widget-choice-label small{font-size:8px}.composer-panel .widget-group{padding-top:6px}.composer-panel .widget-group>summary{padding-bottom:6px}}
@media(min-width:701px) and (max-width:1000px){.editor-workspace{display:grid;grid-template-columns:265px minmax(0,1fr);gap:13px;align-items:stretch}.composer-panel{height:720px;max-height:calc(100dvh - 190px);min-height:490px}.workspace-center{min-width:0;align-self:start}.simulation{flex-wrap:wrap}.simulation label{flex:1;min-width:120px}.page-settings{flex-wrap:wrap}.page-settings label{min-width:80px}.canvas-help{white-space:normal}}
@media(max-width:700px){.editor-workspace{display:flex;flex-direction:column;gap:15px}.workspace-center{order:-1}.composer-panel{width:100%;height:570px;min-height:440px}.composer-heading{padding:16px}.composer-panel .inspector-section{padding-left:14px;padding-right:14px}.composer-panel #widgetLibrary .widget-choice{min-height:48px}.composer-tabs button{min-height:38px}.inspector-category>summary{min-height:52px}.page-settings{gap:8px;flex-wrap:wrap}.page-settings button{white-space:normal}.composer-panel .selection-state{font-size:8px}.canvas-help{white-space:normal}}
@media(prefers-reduced-motion:reduce){.composer-panel *{transition:none!important}}

#streams{overflow:auto;min-height:0}
.stream-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,440px),1fr));gap:20px;padding-bottom:20px}
.stream-create{display:flex;align-items:end;flex-wrap:wrap;gap:18px;padding:20px;background:#fff;border:1px solid #e7e2ef;border-radius:18px;margin-bottom:24px}
.stream-create>label:first-child{flex:1;min-width:230px;margin:0}
.stream-create .stream-copy{display:flex;flex-direction:row;align-items:center;gap:8px;margin:0;padding-bottom:8px}
.stream-copy input{width:16px;height:16px}
.stream-card{padding:20px;border:1px solid #e7e2ef;border-radius:20px;background:#fff;min-width:0;box-shadow:0 4px 20px #35234e05}
.stream-card-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
.stream-card h2{font-size:19px;margin:6px 0 0}
.stream-state{border-radius:20px;background:#f2eafa;color:#8051bd;padding:6px 10px;font-size:11px}
.stream-card .stream-thumbnail{position:relative;width:100%;height:auto;aspect-ratio:16/9;border-radius:12px;overflow:hidden}
.stream-card p{font-size:12px;color:#797087;margin:14px 0}
.stream-card input{font-size:11px}
.stream-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:14px}
.stream-actions a{margin-left:auto;font-size:12px}
.editor-stream-heading{display:flex;align-items:center;gap:14px}
.editor-stream-heading h1{margin:0}
.request-entry{padding-bottom:18px}
.request-entry .feedback-top{font-size:18px;line-height:1.2;margin-bottom:5px}
.request-message{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.3;font-size:.85em}
.service-totals{display:flex;align-items:center;gap:16px;margin-bottom:16px}
.service-totals strong{font-size:2.2em;color:var(--widget-color)}
.service-totals span{font-size:.8em}
.service-totals small,.service-guest small{display:block;font-size:18px;margin-top:4px}
.service-guest{display:grid;gap:6px;padding:8px 0 20px;font-size:.85em}
.rush-content{display:flex;flex-direction:column;gap:14px;text-align:left}
.rush-top,.rush-top>div{display:flex;align-items:center;gap:16px}
.rush-top{justify-content:space-between}
.rush-number{font-size:2.6em;font-weight:650;letter-spacing:-.05em;line-height:1;color:var(--widget-color)}
.rush-unit{font-size:.85em;line-height:1.4}
.rush-unit small{display:block;font-size:16px;opacity:.7}
.rush-badge{font-size:12px;font-weight:700;padding:8px 10px;border:1px solid currentColor;border-radius:30px;color:var(--widget-color);white-space:nowrap}
.rush-badge.rush-warning{color:#ba6321;background:#fff3e5}
.rush-wave{display:grid;grid-template-columns:repeat(6,1fr);gap:15px;flex:1;min-height:110px;padding:6px 4px}
.rush-bin{display:flex;flex-direction:column;gap:5px;text-align:center;font-size:18px;min-height:0}
.rush-bin strong{font-size:24px}
.rush-bar-track{position:relative;flex:1;border-radius:7px;background:color-mix(in srgb,var(--widget-color) 7%,transparent);min-height:40px}
.rush-bar-track i{position:absolute;bottom:0;left:0;right:0;border-radius:7px;background:var(--widget-color);opacity:.3}
.rush-bin.near i{opacity:.85}
.rush-peak{font-size:.8em;color:var(--widget-color)}
.rush-details{display:flex;justify-content:space-between;gap:12px;font-size:18px;border-top:1px solid #8882;padding-top:10px}
.rush-groups{font-size:18px}
.rush-caution{font-size:16px;line-height:1.4;border-left:3px solid #d58b4c;padding-left:10px}
.rush-footnote{font-size:13px;opacity:.65}
.rush-compact{gap:7px}.rush-compact .rush-wave{min-height:90px}.rush-compact .rush-number{font-size:2em}
.tv-widget>h2,.tv-widget .widget-content *{font-family:inherit!important}
.tv-status:empty{visibility:hidden}
.tv-widget .note-content,.tv-widget .text-content,.tv-widget .request-message,.tv-widget .feedback-message{line-height:var(--lineHeight,1.4)}
.tv-widget .request-entry,.tv-widget .service-guest,.tv-widget .arrival-row,.tv-widget .regular-entry,.tv-widget .feedback-entry,.tv-widget .alert-entry{padding-bottom:var(--rowGap,6px)}
.tv-widget .request-entry .feedback-top{font-size:.62em;line-height:1.2;gap:8px}
.tv-widget .request-table{font-size:.58em;color:var(--widget-color);margin-bottom:3px}
.tv-widget .request-message{font-size:.72em;line-height:1.25}
.tv-widget .service-content{display:flex;flex-direction:column;gap:8px}
.tv-widget .service-totals{flex:none;margin:0 0 8px}
.tv-widget .service-totals small,.tv-widget .service-guest small{font-size:.75em}
.tv-widget .service-list{flex:1;min-height:0;overflow:hidden}
.tv-widget .service-caution{flex:none;font-size:.65em}
.tv-widget .paginated-content{display:flex;flex-direction:column;min-height:0}
.tv-widget .pagination-body{flex:1;min-height:0;overflow:hidden}
.tv-widget .pagination-counter{flex:none;min-height:22px;padding-top:4px;font-size:14px;line-height:18px;text-align:right;opacity:.75}
.tv-widget .pagination-counter[hidden]{display:none}
#home{overflow:hidden}
#home .home-grid{display:grid;grid-template-columns:minmax(280px,1fr) minmax(420px,1.15fr);align-items:stretch;gap:20px;height:calc(100vh - 475px);min-height:430px;overflow:hidden;flex:none}
#home .home-information{height:100%;min-width:0;min-height:0}
#home .daily-card{min-height:0;height:calc(100% - 112px);flex:1;overflow:hidden}
#home #dailyInformation{height:calc(100% - 90px);min-height:0;overflow:hidden;flex:none}
#home .dashboard-content{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);gap:18px;min-width:0;height:100%;min-height:0}
#home .team-card{background:#fff;border:1px solid #ece4f2;border-radius:14px;padding:18px;min-width:0;min-height:0;overflow:hidden}
#home .team-card h2{font-size:18px;margin:5px 0 10px;color:#62516e}
#home .team-card p{font-size:12px;line-height:1.6;color:#887793;margin:0 0 15px}
#home .team-card label{font-size:12px;color:#746380}
#home .team-card textarea{display:block;width:100%;height:calc(100% - 145px);min-height:80px;resize:vertical;font:inherit;font-size:14px;line-height:1.45;margin:8px 0 12px}
#home .team-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
#home .team-card [role=status]{font-size:11px;line-height:1.5;color:#806590}
#home .team-image-preview{margin-bottom:15px;border-radius:10px;overflow:hidden;background:#f8f5fa}
#home .team-image-preview img{display:block;width:100%;height:110px;object-fit:contain}
#home .team-image-preview span{display:block;padding:8px 12px;font-size:11px;overflow-wrap:anywhere}
#home .team-image-preview p{padding:18px;margin:0}
#home .team-upload{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}
#home .team-briefing-card{height:100%;display:flex;flex-direction:column}
#home .team-briefing-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.95fr);gap:22px;flex:1;min-height:0}
#home .team-briefing-grid form,#home .team-image-block{min-width:0;min-height:0;display:flex;flex-direction:column}
#home .team-briefing-grid textarea{height:auto;flex:1;min-height:80px;resize:none}
#home .team-image-block>label:first-child{margin:0 0 8px;line-height:16px}
#home .team-image-block .team-image-preview{flex:none;min-height:64px;margin-bottom:12px}
#home .team-image-block .team-image-preview img{height:80px;min-height:0}
#home .team-image-block .team-upload{margin:0 0 8px;line-height:16px;gap:6px}
#home .team-image-block .team-upload input{padding:7px;font-size:11px;height:36px}
#home .team-image-block .help{font-size:11px;line-height:16px;margin:0 0 6px}
#home .team-briefing-grid{grid-template-columns:minmax(0,1.2fr) minmax(200px,1fr);gap:18px}
#home .team-briefing-card [role=status]{overflow-wrap:anywhere}
.tv-widget .auto-service-label{flex:none;font-size:.65em;color:var(--widget-color);line-height:1.3}
.tv-widget .auto-service-label small{display:block;font-size:.8em;opacity:.8}
.tv-widget.compact-request-widget{padding-top:12px;padding-bottom:12px}
.tv-widget.compact-request-widget>h2{margin-bottom:6px;padding-top:4px;padding-bottom:4px}
.tv-widget.compact-request-widget .request-entry{padding-bottom:0}
.tv-widget.compact-request-widget .request-meta{display:flex;align-items:baseline;justify-content:space-between;gap:16px;font-size:.7em;line-height:1.2;margin-bottom:4px;overflow-wrap:anywhere}
.tv-widget.compact-request-widget .request-meta span{flex:none}
.tv-widget.compact-request-widget .request-message{font-size:1em;line-height:1.2;white-space:pre-wrap;overflow-wrap:anywhere}
.tv-widget.compact-request-widget .pagination-counter{min-height:18px;font-size:12px;line-height:14px}
@media(max-width:1000px){#home .team-briefing-grid{grid-template-columns:minmax(0,1fr)}#home .team-image-block{min-height:330px}}
@media(max-width:1000px){#home{overflow:visible}#home .home-grid{grid-template-columns:minmax(0,1fr);height:auto;min-height:0;overflow:visible}#home .dashboard-content{order:-1;grid-template-columns:minmax(0,1fr)}#home .daily-card{height:300px}#home #dailyInformation{height:220px}#home .team-card{min-height:330px}}
