:root {
  --lab-ink: #10253f;
  --lab-muted: #647081;
  --lab-paper: #f3efe5;
  --lab-panel: #fffdf8;
  --lab-line: #d9d5ca;
  --lab-orange: #ee5f3b;
  --lab-orange-dark: #c94022;
  --lab-mint: #dceee3;
  --lab-blue: #246b78;
  --lab-shadow: 0 18px 45px #10253f17;
}

body[data-page="editor"] {
  overflow: hidden;
  background: var(--lab-paper);
  color: var(--lab-ink);
  font-family: "Trebuchet MS", "Gill Sans", sans-serif;
}

body[data-page="editor"] .site-header,
body[data-page="editor"] .site-footer { display: none; }
body[data-page="editor"] main { min-height: 100vh; }
body[data-page="editor"] button,
body[data-page="editor"] input,
body[data-page="editor"] select { font-family: inherit; }

.lab {
  display: grid;
  grid-template-rows: 72px minmax(0, 1fr) auto;
  width: 100vw;
  height: 100vh;
  min-height: 0;
  background: var(--lab-paper);
}

.lab-header {
  z-index: 10;
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 10px 18px;
  border-bottom: 1px solid var(--lab-line);
  background: #fffdf9;
  box-shadow: 0 4px 18px #10253f0a;
}

.lab-brand {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 154px;
  color: var(--lab-ink);
  text-decoration: none;
}
.lab-brand > span {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 50%;
  background: var(--lab-ink);
  color: #fff;
  font: 700 1.45rem Georgia, serif;
}
.lab-brand strong { font-size: 1rem; line-height: 1; }
.lab-brand small {
  display: block;
  margin-top: 4px;
  color: var(--lab-orange);
  font-size: .58rem;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.project-identity { min-width: 150px; flex: 1; }
.project-identity .title-input {
  width: min(100%, 420px);
  min-height: 30px;
  padding: 0 4px;
  border: 0;
  border-bottom: 1px solid transparent;
  border-radius: 0;
  background: transparent;
  color: var(--lab-ink);
  font: 600 1.15rem Georgia, serif;
}
.project-identity .title-input:hover,
.project-identity .title-input:focus { border-bottom-color: var(--lab-line); outline: 0; }
.project-identity .save-state { display: block; padding-left: 4px; color: var(--lab-muted); font-size: .68rem; }

.history-actions,
.file-actions { display: flex; align-items: center; gap: 6px; }
.lab-header button {
  min-height: 38px;
  padding: .45rem .75rem;
  border-color: transparent;
  background: transparent;
  color: var(--lab-ink);
  font-size: .76rem;
}
.lab-header button:hover { border-color: var(--lab-line); background: var(--lab-paper); }
.history-actions button { width: 38px; padding: 0; font-size: 1.25rem; }
.solve-button {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 46px !important;
  padding: .65rem 1rem !important;
  border-color: var(--lab-orange) !important;
  border-radius: 12px !important;
  background: var(--lab-orange) !important;
  color: #fff !important;
  box-shadow: 0 7px 16px #ee5f3b38;
  font-size: .86rem !important;
}
.solve-button:hover { background: var(--lab-orange-dark) !important; transform: translateY(-1px); }
.solve-button kbd { padding: 2px 5px; border: 1px solid #ffffff66; border-radius: 4px; font: 700 .62rem ui-monospace, monospace; }

.lab-shell {
  display: grid;
  grid-template-columns: 214px minmax(360px, 1fr) 294px;
  min-height: 0;
}

.toolbox {
  display: flex;
  min-height: 0;
  flex-direction: column;
  padding: 15px 12px 12px;
  border-right: 1px solid var(--lab-line);
  background: #f8f4ea;
  overflow-y: auto;
}
.toolbox-head { display: flex; justify-content: space-between; align-items: baseline; margin: 0 6px 10px; }
.toolbox-head span { font: 600 1.05rem Georgia, serif; }
.toolbox-head small { color: var(--lab-muted); font-size: .57rem; }
.tool-group { padding: 10px 0; border-top: 1px solid var(--lab-line); }
.tool-group h2 {
  margin: 0 7px 5px;
  color: #8b8375;
  font: 700 .58rem/1.2 "Trebuchet MS", sans-serif;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.tool-button {
  display: flex;
  width: 100%;
  min-height: 42px;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  padding: 7px 9px;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: #39495b;
  font-size: .78rem;
  font-weight: 700;
}
.tool-button:hover { border: 0; background: #ebe6da; }
.tool-icon {
  display: block;
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.tool-button > span { display: flex; min-width: 0; flex: 1; align-items: center; justify-content: space-between; font-size: inherit; }
.tool-button small { color: #9a9388; font: 700 .58rem ui-monospace, monospace; }
.tool-button.is-active,
.tool-button[aria-pressed="true"] {
  border: 0;
  background: var(--lab-ink);
  color: #fff;
  box-shadow: 0 7px 15px #10253f24;
}
.tool-button.is-active small { color: #ffffff9e; }
.tool-group-secondary { margin-top: auto; }
.tool-danger { margin-top: 4px; color: #a33a2b; }
.tool-danger.is-active,
.tool-danger[aria-pressed="true"] { background: #a33a2b; color: #fff; box-shadow: none; }

.drawing-area { min-width: 0; min-height: 0; display: flex; flex-direction: column; background: var(--lab-panel); }
.learning-path {
  display: flex;
  min-height: 48px;
  align-items: center;
  gap: 18px;
  padding: 6px 16px;
  border-bottom: 1px solid var(--lab-line);
  background: var(--lab-mint);
}
.learning-path > strong { font: 600 .86rem Georgia, serif; white-space: nowrap; }
.learning-path ol { display: flex; margin: 0; padding: 0; list-style: none; }
.learning-path li {
  display: flex;
  align-items: center;
  gap: 5px;
  color: #66756d;
  font-size: .67rem;
  font-weight: 700;
  white-space: nowrap;
}
.learning-path li:not(:last-child)::after { content: ""; width: clamp(10px, 2.5vw, 38px); height: 1px; margin: 0 7px; background: #aec9bb; }
.learning-path li span { display: grid; width: 22px; height: 22px; place-items: center; border: 1px solid #9fb7aa; border-radius: 50%; font-size: .62rem; }
.learning-path li.is-complete { color: var(--lab-blue); }
.learning-path li.is-complete span { border-color: var(--lab-blue); background: var(--lab-blue); color: #fff; }
.learning-path li.is-current { color: var(--lab-ink); }
.learning-path li.is-current span { border: 2px solid var(--lab-orange); background: #fff; color: var(--lab-orange); }

.canvas-toolbar {
  display: flex;
  min-height: 58px;
  align-items: center;
  gap: 16px;
  padding: 8px 16px;
  border-bottom: 1px solid var(--lab-line);
  background: #fffdf8;
  overflow-x: auto;
}
.canvas-toolbar h1 { margin: 0 auto 0 0; font: 600 1rem Georgia, serif; white-space: nowrap; }
.model-presets,
.view-actions { display: flex; align-items: center; gap: 8px; }
.model-presets label { display: flex; align-items: center; gap: 6px; color: var(--lab-muted); font-size: .65rem; font-weight: 700; }
.canvas-toolbar select { width: auto; min-width: 88px; min-height: 34px; padding: .3rem 1.55rem .3rem .55rem; border-color: var(--lab-line); background: #fff; font-size: .74rem; }
.view-actions { padding-left: 10px; border-left: 1px solid var(--lab-line); }
.view-actions label { display: flex; align-items: center; gap: 4px; color: var(--lab-muted); font-size: .65rem; }
.view-actions input { width: 15px; height: 15px; min-height: 15px; margin: 0; accent-color: var(--lab-orange); }
.view-actions button { min-height: 34px; padding: .35rem .55rem; font-size: .68rem; }

.canvas-stage { position: relative; min-height: 0; flex: 1; overflow: hidden; background: #fffdf8; }
.canvas-stage svg { display: block; width: 100%; height: 100%; min-height: 360px; color: var(--lab-blue); cursor: crosshair; touch-action: none; user-select: none; }
.canvas-stage:focus-within { box-shadow: inset 0 0 0 2px var(--lab-orange); }
.axes path { stroke: #8c9a9b; stroke-opacity: .2; }
.structural-element { stroke: var(--lab-ink); }
.structural-node { stroke: var(--lab-blue); }
.load-arrow, .moment-symbol { stroke: var(--lab-orange); }

.canvas-welcome {
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(88%, 460px);
  padding: 27px 30px 25px;
  transform: translate(-50%, -50%);
  border: 1px solid #d8d2c5;
  border-radius: 18px;
  background: #fffdf9f2;
  box-shadow: var(--lab-shadow);
  text-align: center;
  backdrop-filter: blur(5px);
}
.welcome-number { position: absolute; top: -20px; left: 22px; color: var(--lab-orange); font: italic 600 3.2rem Georgia, serif; }
.canvas-welcome .eyebrow { margin: 0 0 4px; color: var(--lab-blue); font-size: .62rem; }
.canvas-welcome h2 { margin: 0 0 8px; color: var(--lab-ink); font: 600 1.75rem/1.1 Georgia, serif; }
.canvas-welcome > p:not(.eyebrow) { max-width: 340px; margin: 0 auto 18px; color: var(--lab-muted); font-size: .84rem; }
.canvas-welcome div { display: flex; justify-content: center; gap: 8px; }
.canvas-welcome button { min-height: 40px; padding: .5rem .8rem; font-size: .74rem; }
.canvas-welcome .button-start { border-color: var(--lab-orange); background: var(--lab-orange); color: #fff; }
.canvas-welcome > small { display: block; margin-top: 12px; color: #8b8375; font-size: .65rem; }
.canvas-tip { position: absolute; right: 12px; bottom: 12px; padding: 7px 10px; border: 1px solid var(--lab-line); border-radius: 8px; background: #fffdf8dd; color: var(--lab-muted); font-size: .62rem; pointer-events: none; }

.status-bar { display: flex; min-height: 32px; align-items: center; gap: 8px; padding: 6px 12px; border-top: 1px solid var(--lab-line); background: #fffdf8; color: var(--lab-muted); font: 600 .65rem/1.4 "Trebuchet MS", sans-serif; }
.status-bar [data-status] { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.status-bar [data-coordinates] { margin-left: auto; font-family: ui-monospace, monospace; white-space: nowrap; }
.status-dot { width: 7px; height: 7px; flex: 0 0 auto; border-radius: 50%; background: #50a279; box-shadow: 0 0 0 3px #50a27920; }

.inspector {
  display: flex;
  min-width: 0;
  min-height: 0;
  flex-direction: column;
  border-left: 1px solid var(--lab-line);
  background: #f8f4ea;
  overflow: hidden;
}
.inspector-head { display: flex; min-height: 74px; align-items: center; justify-content: space-between; gap: 10px; padding: 13px 16px; border-bottom: 1px solid var(--lab-line); }
.inspector-head div { min-width: 0; }
.inspector-head span { display: block; color: var(--lab-orange); font-size: .58rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.inspector-head strong { display: block; overflow: hidden; color: var(--lab-ink); font: 600 .95rem Georgia, serif; text-overflow: ellipsis; white-space: nowrap; }
.inspector-head > small { color: #958e82; font-size: .58rem; white-space: nowrap; }
.inspector .properties-panel { flex: 1; min-height: 0; padding: 15px; border: 0; background: transparent; overflow-y: auto; }
.properties-empty { min-height: 190px; display: grid; place-items: center; align-content: center; gap: 7px; text-align: center; }
.properties-empty span { display: grid; width: 46px; height: 46px; place-items: center; border: 1px dashed #a9a295; border-radius: 50%; color: var(--lab-orange); font-size: 1.3rem; }
.properties-empty h2 { margin: 3px 0 0; color: var(--lab-ink); font: 600 1.05rem Georgia, serif; }
.properties-empty p { max-width: 220px; margin: 0; color: var(--lab-muted); font-size: .72rem; }
.property-form { display: grid; gap: .7rem; }
.property-form label { display: grid; gap: .3rem; color: var(--lab-muted); font-size: .68rem; font-weight: 800; }
.property-form input, .property-form select { min-height: 39px; border-color: var(--lab-line); border-radius: 8px; font-size: .8rem; }
.property-info { margin: 0; padding: 8px 10px; border-radius: 8px; background: var(--lab-mint); color: var(--lab-blue); font-size: .7rem; }
.property-delete { min-height: 38px; margin-top: 6px; border-color: #e4b8ad; background: #fff5f2; color: #a33a2b; font-size: .72rem; }
.model-tree { padding: 0; border: 0; border-top: 1px solid var(--lab-line); background: #f4efe4; }
.model-tree summary { display: flex; min-height: 42px; align-items: center; justify-content: space-between; padding: 8px 14px; cursor: pointer; color: var(--lab-ink); font-size: .7rem; font-weight: 800; list-style: none; }
.model-tree summary::-webkit-details-marker { display: none; }
.model-tree[open] summary span:last-child { transform: rotate(180deg); }
.model-tree .entity-list { max-height: 160px; margin: 0; padding: 0 12px 10px; overflow-y: auto; }
.model-tree .entity-list li { border-color: var(--lab-line); font-size: .67rem; }
.model-tree .entity-list button { min-height: 32px; padding: 4px 2px; border: 0; background: transparent; color: var(--lab-ink); text-align: left; }
.quick-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; padding: 10px 12px; border-top: 1px solid var(--lab-line); }
.quick-actions button { min-height: 36px; padding: .35rem; background: #fffdf8; font-size: .66rem; }

.lab > .results-panel { z-index: 8; max-height: min(62vh, 560px); margin: 0; padding: 0; border: 0; border-top: 1px solid var(--lab-line); border-radius: 0; background: #fffdf9; overflow: auto; }
.lab > .results-panel > summary { display: flex; min-height: 54px; align-items: center; gap: 10px; padding: 8px 18px; cursor: pointer; background: var(--lab-ink); color: #fff; list-style: none; }
.lab > .results-panel > summary::-webkit-details-marker { display: none; }
.lab > .results-panel > summary > span:nth-child(2) { display: flex; align-items: baseline; gap: 10px; }
.lab > .results-panel > summary strong { font-size: .8rem; }
.lab > .results-panel > summary small { color: #c4d0db; font-size: .65rem; }
.result-pulse { width: 9px; height: 9px; border-radius: 50%; background: #efbd4b; box-shadow: 0 0 0 4px #efbd4b22; }
.result-chevron { margin-left: auto; transition: transform .2s; }
.results-panel[open] .result-chevron { transform: rotate(180deg); }
.results-content { padding: 16px 18px 22px; }
.results-head { display: flex; justify-content: flex-end; gap: 7px; }
.results-head button { min-height: 36px; padding: .35rem .7rem; font-size: .7rem; }
.diagnostics { margin: .6rem 0; }
.diagnostic { border-radius: 0 8px 8px 0; font-size: .76rem; }
.calculation-empty { padding: 18px 10px 8px; text-align: center; }
.calculation-empty h2 { margin: 0 0 4px; color: var(--lab-ink); font: 600 1.35rem Georgia, serif; }
.calculation-empty p { margin: 0 auto 12px; max-width: 580px; color: var(--lab-muted); font-size: .78rem; }
.result-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 12px; }
.result-card { border: 1px solid var(--lab-line); border-top: 4px solid var(--lab-blue); border-radius: 10px; background: #fbfaf6; }
.result-card table { width: 100%; border-collapse: collapse; font-size: .72rem; }
.result-card th, .result-card td { padding: .45rem .5rem; border-bottom: 1px solid var(--lab-line); text-align: right; }
.result-card th:first-child, .result-card td:first-child { text-align: left; }
.result-card details > summary { cursor: pointer; font-weight: 700; }
.result-card pre { white-space: pre-wrap; font-size: .72rem; }
.result-diagram { width: 100%; min-height: 180px; background: #fff; }
.diagram-axis { stroke: #aab3c0; stroke-width: 1; }
.diagram-label { fill: var(--lab-ink); font-size: 12px; }

dialog[data-example-dialog] { width: min(92vw, 540px); border-radius: 18px; color: var(--lab-ink); font-family: "Trebuchet MS", sans-serif; }
dialog[data-example-dialog] .dialog-head { align-items: flex-start; }
dialog[data-example-dialog] h2 { margin: 0; font: 600 1.7rem Georgia, serif; }
dialog[data-example-dialog] .eyebrow { margin: 0 0 3px; color: var(--lab-orange); }
.example-list { display: grid; gap: 7px; max-height: 55vh; overflow-y: auto; }
.example-list button { position: relative; min-height: 52px; padding: 10px 38px 10px 14px; background: #fbf8f0; color: var(--lab-ink); text-align: left; }
.example-list button::after { content: "→"; position: absolute; right: 14px; color: var(--lab-orange); }

@media (max-width: 1180px) {
  .lab-shell { grid-template-columns: 80px minmax(360px, 1fr) 270px; }
  .toolbox { padding: 11px 7px; }
  .toolbox-head, .tool-group h2 { display: none; }
  .tool-group { padding: 5px 0; }
  .tool-button { min-height: 48px; justify-content: center; padding: 5px; }
  .tool-button > span { display: none; }
  .tool-icon { width: 25px; height: 25px; }
  .file-actions [data-save-json] { display: none; }
  .model-presets label > span, .view-actions label > span { display: none; }
}

@media (max-width: 1000px) {
  .file-actions { display: none; }
}

@media (max-width: 860px) {
  body[data-page="editor"] { overflow: auto; }
  .lab { height: auto; min-height: 100vh; grid-template-rows: auto auto auto; }
  .lab-header { position: sticky; top: 0; flex-wrap: wrap; gap: 8px; padding: 8px 10px; }
  .lab-brand { min-width: 42px; }
  .lab-brand strong { display: none; }
  .project-identity { min-width: 130px; }
  .file-actions { display: none; }
  .solve-button { margin-left: auto; }
  .lab-shell { grid-template-columns: 68px minmax(0, 1fr); }
  .toolbox { grid-column: 1; grid-row: 1; }
  .drawing-area { grid-column: 2; grid-row: 1; min-height: 650px; }
  .inspector { grid-column: 1 / -1; grid-row: 2; min-height: 320px; border-top: 1px solid var(--lab-line); border-left: 0; }
  .inspector .properties-panel { min-height: 220px; }
  .learning-path { overflow-x: auto; }
  .learning-path > strong { display: none; }
  .canvas-toolbar h1, .model-presets label > span, .view-actions label > span { display: none; }
  .canvas-toolbar { gap: 7px; padding: 7px 9px; }
  .model-presets { margin-right: auto; }
  .canvas-welcome { padding: 25px 17px 20px; }
}

@media (max-width: 560px) {
  .lab-header { grid-template-columns: auto 1fr auto; }
  .history-actions { display: none; }
  .solve-button span { font-size: 0; }
  .solve-button span::after { content: "Calcular"; font-size: .78rem; }
  .solve-button kbd { display: none; }
  .learning-path li { font-size: 0; }
  .learning-path li span { font-size: .62rem; }
  .learning-path li:not(:last-child)::after { width: 18px; }
  .lab-shell { grid-template-columns: 58px minmax(0, 1fr); }
  .tool-button { min-height: 44px; }
  .tool-icon { width: 22px; height: 22px; }
  .canvas-stage svg { min-height: 430px; }
  .canvas-welcome div { flex-direction: column; }
  .canvas-tip { display: none; }
  .status-bar [data-coordinates] { display: none; }
  .lab > .results-panel > summary small { display: none; }
  .results-content { padding: 12px; }
}

@media print {
  .lab-header, .toolbox, .canvas-toolbar, .learning-path, .inspector, .status-bar, .results-panel > summary, .results-head { display: none !important; }
  body[data-page="editor"], .lab { overflow: visible; height: auto; background: #fff; }
  .lab-shell { display: block; }
  .drawing-area { min-height: 500px; }
  .lab > .results-panel { display: block; max-height: none; overflow: visible; }
  .results-content { padding: 20px; }
}
.quota-dialog{width:min(510px,calc(100vw - 32px));border:1px solid #dce5f2;border-radius:12px;padding:28px;color:#10203c;background:white}
.quota-dialog::backdrop{background:#10203c80}
.quota-dialog h2{font-size:23px;margin:0 0 16px}
.quota-dialog p{line-height:1.65;margin:0;color:#52617b}
.quota-actions{display:flex;gap:12px;align-items:center;margin-top:24px;flex-wrap:wrap}
.quota-actions button,.quota-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 16px;border:1px solid #b4c3d8;border-radius:7px;background:white;color:#10203c;text-decoration:none;font:inherit;font-size:14px;cursor:pointer}
.quota-actions a{background:#0058ef;color:white;border-color:#0058ef}
.quota-actions :focus-visible{outline:3px solid #e08a13;outline-offset:3px}
@media(max-width:480px){.quota-actions{flex-direction:column;align-items:stretch}.quota-dialog{padding:23px}}

/* Comprimento digitado da barra em criação. */
.length-entry { position: absolute; z-index: 5; left: 50%; bottom: 12px; transform: translateX(-50%); display: flex; align-items: center; gap: 10px;
  padding: 6px 8px 6px 12px; border: 1px solid #d6dfec; border-radius: 10px; background: #fff; color: #23324d; box-shadow: 0 10px 26px #0b18331f;
  font: 13px/1.3 Inter, "Segoe UI", system-ui, sans-serif; white-space: nowrap; }
.length-entry[hidden] { display: none; }
.length-entry label { display: flex; align-items: center; gap: 6px; }
.length-entry input { width: 74px; min-height: 32px; padding: 0 8px; border: 1px solid #c9d3e3; border-radius: 7px; font: 600 14px Inter, "Segoe UI", system-ui, sans-serif; text-align: right; }
.length-entry input:focus { outline: 2px solid var(--lab-orange, #e08a13); outline-offset: 1px; }
.length-directions { display: flex; gap: 4px; }
.length-directions button { width: 32px; height: 32px; border: 1px solid #c9d3e3; border-radius: 7px; background: #f5f8fc; color: #17243a; font-size: 15px; cursor: pointer; }
.length-directions button:hover { background: #e8eef9; }
body.structcalc-dark .length-entry { background: #17243a; border-color: #2b3b57; color: #dbe5f5; }
body.structcalc-dark .length-entry input, body.structcalc-dark .length-directions button { background: #10203c; border-color: #33476a; color: #e8eef9; }
#editor-app.is-mobile .length-entry { top: 58px; bottom: auto; max-width: calc(100% - 20px); }
#editor-app.is-mobile .length-entry input { width: 64px; min-height: 38px; font-size: 16px; }
#editor-app.is-mobile .length-directions button { width: 38px; height: 38px; }
@media print { .length-entry { display: none; } }
.length-toggle { display: none; }
.length-entry.is-collapsed { left: auto; right: 10px; transform: none; padding: 4px; gap: 0; }
.length-entry.is-collapsed label, .length-entry.is-collapsed .length-directions { display: none; }
.length-entry.is-collapsed .length-toggle { display: inline-flex; align-items: center; min-height: 36px; padding: 0 12px; border: 0;
  border-radius: 7px; background: #f5f8fc; color: #17243a; font: 600 13px Inter, "Segoe UI", system-ui, sans-serif; cursor: pointer; }
#editor-app.is-mobile .length-entry.is-collapsed { top: auto; bottom: 74px; right: 10px; max-width: none; }
body.structcalc-dark .length-entry.is-collapsed .length-toggle { background: #10203c; color: #e8eef9; }
/* Inspetor: título curto e legível em painel estreito; a dica some quando há seleção. */
.inspector-head strong { font: 700 1rem/1.3 Inter, "Segoe UI", system-ui, sans-serif; white-space: normal; overflow-wrap: anywhere; }
.inspector-head[data-selected] > small { display: none; }
.property-info { margin: -.2rem 0 .1rem; padding: .45rem .6rem; border-radius: 7px; background: #f1f5fb; color: #34465f; font-size: .78rem; }
.property-form select { width: 100%; min-width: 0; text-overflow: ellipsis; }
.property-form input { width: 100%; min-width: 0; }
body.structcalc-dark .property-info { background: #1d2c45; color: #dbe5f5; }

.property-form label:has(> input[type="checkbox"]) { display: flex; flex-direction: row; justify-content: flex-start; align-items: center;
  gap: .55rem; min-height: 32px; color: var(--lab-ink, #17243a); font-size: .8rem; font-weight: 600; }
.property-form input[type="checkbox"] { flex: none; width: 18px; height: 18px; min-height: 0; margin: 0; accent-color: var(--lab-blue, #075bff); }
/* Seleção de vários objetos e cargas unificadas */
.selection-box { fill: rgba(7, 91, 255, .08); stroke: #075bff; stroke-width: 1; stroke-dasharray: 4 3; pointer-events: none; }
.property-form .primary-action { min-height: 38px; border: 0; border-radius: 8px; background: var(--lab-blue, #075bff); color: #fff; font-weight: 700; cursor: pointer; }
.property-form .select-more { min-height: 36px; border: 1px dashed #9db4d6; border-radius: 8px; background: #f5f8fc; color: #1d4f9a; font-weight: 600; cursor: pointer; }
.property-form .group-note { border-left: 3px solid var(--lab-blue, #075bff); }

