/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/invoices.css */
.invoice-page-head h1 {
  font-size: var(--text-xl);
  letter-spacing: -.5px;
  line-height: var(--leading-tight);
  max-width: 850px;
}
.invoice-page-head p {
  max-width: 710px;
  line-height: 1.75;
}
.invoice-page-head .badge {
  flex-shrink: 0;
  margin-top: var(--space-2);
}
.invoice-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(280px, .85fr);
  gap: var(--space-6);
  align-items: start;
}
.invoice-edit {
  min-width: 0;
  display: grid;
  gap: var(--space-5);
}
.invoice-source {
  display: flex;
  gap: var(--space-4);
  background: #edf1e7;
  padding: var(--space-5) var(--space-5);
  border: 1px solid #d8e1d2;
  border-radius: 12px;
}
.invoice-source svg {
  flex-shrink: 0;
  margin-top: var(--space-1);
  color: #526b45;
}
.invoice-source p {
  margin: var(--space-1) 0;
  font-size: var(--text-base);
}
.invoice-source small {
  color: #536458;
  line-height: 1.6;
}
.invoice-section-title {
  display: flex;
  gap: var(--space-4);
  align-items: start;
  margin-bottom: var(--space-5);
}
.invoice-section-title > span {
  background: #edf1e7;
  padding: var(--space-2) var(--space-3);
  border-radius: 8px;
  font-size: var(--text-xs);
  font-weight: 700;
  flex-shrink: 0;
}
.invoice-section-title h2 {
  font-size: var(--text-lg);
  letter-spacing: -.2px;
  margin: 2px 0 var(--space-2);
}
.invoice-section-title p {
  color: #536458;
  font-size: var(--text-sm);
  line-height: 1.7;
  margin: 0;
}
.invoice-edit fieldset {
  margin: 0;
  padding: 0;
  border: 0;
  min-width: 0;
  display: grid;
  gap: var(--space-4);
}
.invoice-edit input,
.invoice-edit textarea,
.invoice-edit select {
  min-width: 0;
}
.invoice-edit fieldset details .field {
  margin-top: var(--space-4);
}
.invoice-hint {
  font-size: var(--text-xs);
  color: #536458;
  line-height: 1.75;
  white-space: pre-wrap;
  margin: var(--space-4) 0 0;
}
.invoice-line-heading {
  display: flex;
  justify-content: space-between;
  gap: var(--space-3);
  padding-bottom: var(--space-3);
  border-bottom: 1px solid #dde2d9;
  font-size: var(--text-xs);
}
.invoice-line-heading span {
  color: #536458;
}
.invoice-lines {
  max-height: 580px;
  overflow: auto;
  overscroll-behavior: contain;
}
.invoice-lines > details {
  border-bottom: 1px solid #e8ece4;
}
.invoice-lines summary {
  display: flex;
  gap: var(--space-4);
  justify-content: space-between;
  align-items: start;
  padding: var(--space-3) 2px;
  list-style: none;
}
.invoice-lines summary:before {
  content: "+";
  font-size: var(--text-lg);
  line-height: 1.4;
  color: #526b45;
}
.invoice-lines details[open] > summary:before {
  content: "\2212";
}
.invoice-lines summary > span {
  flex: 1;
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: var(--text-sm);
  font-weight: 650;
}
.invoice-lines summary small {
  display: block;
  color: #536458;
  font-size: var(--text-xs);
  font-weight: 400;
  margin-top: var(--space-1);
}
.invoice-lines summary > strong {
  font-size: var(--text-sm);
  text-align: right;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.invoice-line-detail {
  padding: 0 0 var(--space-3) var(--space-5);
  font-size: var(--text-xs);
  line-height: 1.75;
  white-space: pre-wrap;
}
.invoice-hourly {
  display: flex;
  gap: var(--space-4);
  justify-content: space-between;
  align-items: center;
  padding: var(--space-3) 2px;
  border-bottom: 1px solid #e8ece4;
}
.invoice-hourly .field {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  margin: 0;
}
.invoice-hourly .field > span:first-child {
  flex: 1;
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: var(--text-sm);
  font-weight: 650;
}
.invoice-hourly .field small {
  display: block;
  color: #536458;
  font-size: var(--text-xs);
  font-weight: 400;
  margin-top: var(--space-1);
}
.invoice-hourly-input {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
.invoice-hourly-input input {
  width: 88px;
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.invoice-hourly-input small {
  margin: 0 !important;
}
.invoice-hourly input[aria-invalid] {
  border-color: var(--danger);
}
.invoice-units {
  margin-top: var(--space-5);
}
.invoice-units .field {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  padding: var(--space-3) 2px;
  border-bottom: 1px solid #e8ece4;
  margin: 0;
}
.invoice-units .field > span {
  flex: 1;
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: var(--text-sm);
  font-weight: 650;
}
.invoice-units .field small {
  display: block;
  color: #536458;
  font-size: var(--text-xs);
  font-weight: 400;
  margin-top: var(--space-1);
}
.invoice-units input {
  width: 120px;
}
.invoice-hourly > strong {
  min-width: 96px;
  font-size: var(--text-sm);
  text-align: right;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.invoice-aside {
  position: sticky;
  top: 22px;
  display: grid;
  gap: var(--space-5);
  min-width: 0;
}
.invoice-preview {
  border-top: 3px solid #879e76;
  overflow-wrap: anywhere;
}
.invoice-preview > svg {
  color: #526b45;
  margin-bottom: var(--space-5);
}
.invoice-preview .eyebrow {
  display: block;
}
.invoice-preview h2 {
  font-size: var(--text-lg);
  line-height: 1.3;
  letter-spacing: -.2px;
  margin-bottom: var(--space-3);
}
.invoice-preview > p {
  font-size: var(--text-sm);
  color: #536458;
  line-height: 1.75;
}
.invoice-preview dl {
  margin: var(--space-5) 0 0;
  display: grid;
  gap: var(--space-3);
  font-size: var(--text-xs);
}
.invoice-preview dl > div {
  display: flex;
  gap: var(--space-4);
  justify-content: space-between;
}
.invoice-preview dd {
  margin: 0;
  text-align: right;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.invoice-preview .invoice-grand {
  border-top: 1px solid #dde2d9;
  padding-top: var(--space-4);
  font-size: var(--text-lg);
  line-height: 1.5;
}
.invoice-preview .invoice-preview-note {
  white-space: pre-wrap;
  padding-top: var(--space-5);
  border-top: 1px solid #dde2d9;
  margin-top: var(--space-5);
}
.invoice-next {
  background: #edf1e7;
  padding: var(--space-5);
  border-radius: 14px;
  border: 1px solid #d8e1d2;
}
.invoice-next h2 {
  font-size: var(--text-lg);
  letter-spacing: -.2px;
  margin: var(--space-3) 0;
}
.invoice-next p,
.invoice-next li {
  font-size: var(--text-sm);
  line-height: 1.75;
}
.invoice-next ul {
  padding-left: var(--space-4);
  margin: var(--space-4) 0 var(--space-5);
}
.invoice-next li + li {
  margin-top: var(--space-2);
}
.invoice-save-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-4) 0;
}
.invoice-save-bar > span {
  font-size: var(--text-xs);
  color: #536458;
}
.invoice-connection {
  display: flex;
  gap: var(--space-5);
  max-width: 880px;
}
.invoice-connection > svg {
  flex-shrink: 0;
  color: #526b45;
  margin-top: var(--space-1);
}
.invoice-connection h2 {
  font-size: var(--text-lg);
  margin: var(--space-2) 0 var(--space-4);
}
.invoice-connection p {
  max-width: 660px;
  font-size: var(--text-base);
  line-height: var(--leading-normal);
  margin-top: var(--space-4);
}
.invoice-settings-form {
  margin-top: var(--space-5);
  max-width: 880px;
}
.invoice-entry {
  display: flex;
  gap: var(--space-5);
  align-items: center;
  justify-content: space-between;
  margin: var(--space-5) 0;
}
.invoice-entry h2 {
  font-size: var(--text-lg);
  margin: var(--space-2) 0;
  letter-spacing: -.2px;
}
.invoice-entry p {
  margin: 0;
  line-height: 1.7;
}
.invoice-entry .btn {
  flex-shrink: 0;
}
@media (max-width: 1024px) {
  .invoice-workspace {
    grid-template-columns: minmax(0, 1fr);
  }
  .invoice-aside {
    position: static;
    grid-template-columns: 1fr 1fr;
  }
  .invoice-entry {
    flex-wrap: wrap;
  }
}
@media (max-width: 767px) {
  .invoice-hourly {
    flex-wrap: wrap;
  }
  .invoice-hourly .field {
    flex-basis: 100%;
  }
  .invoice-aside {
    grid-template-columns: 1fr;
  }
  .invoice-page-head .badge {
    align-self: flex-start;
  }
  .invoice-section {
    padding: var(--space-4);
  }
  .invoice-section-title {
    gap: var(--space-3);
  }
  .invoice-lines summary {
    gap: var(--space-3);
  }
  .invoice-lines summary > strong {
    font-size: var(--text-xs);
  }
  .invoice-source {
    padding: var(--space-4);
  }
  .invoice-next {
    padding: var(--space-4);
  }
  .invoice-save-bar {
    flex-direction: column;
    align-items: stretch;
  }
  .invoice-save-bar .btn {
    width: 100%;
  }
  .invoice-entry .btn {
    width: 100%;
  }
  .invoice-connection {
    flex-direction: column;
    gap: var(--space-3);
  }
}
.fortnox-connect {
  margin-top: var(--space-2);
}
.fortnox-status {
  display: flex;
  gap: var(--space-3);
  align-items: flex-start;
  padding: var(--space-4) var(--space-4);
  border: 1px solid #c5d3b8;
  border-radius: 10px;
  background: #eaf0e1;
  margin-top: var(--space-3);
}
.fortnox-status svg {
  flex: none;
  margin-top: 2px;
  color: #3e5845;
}
.fortnox-status strong {
  display: block;
  font-size: var(--text-base);
}
.fortnox-status small {
  display: block;
  font-size: var(--text-xs);
  color: #58685b;
  margin-top: var(--space-1);
  line-height: 1.6;
}
.invoice-next .notice {
  display: flex;
  gap: var(--space-3);
  align-items: flex-start;
}
.invoice-next .notice svg {
  flex: none;
  margin-top: 2px;
  color: #3e5845;
}
.invoice-next .notice p {
  margin: 0;
}
.invoice-next .checkbox-label {
  display: flex;
  gap: var(--space-2);
  align-items: flex-start;
  font-size: var(--text-sm);
  margin: var(--space-3) 0;
}
.invoice-basis {
  display: grid;
  gap: var(--space-4);
}
.invoice-basis .page-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--space-3);
  flex-wrap: wrap;
}
.invoice-basis-row {
  justify-content: space-between;
  min-height: 44px;
}
.invoice-basis-text {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  flex: 1;
  min-width: 0;
}
.invoice-basis-text small,
.invoice-basis-list small {
  color: var(--muted, #5c6670);
}
.invoice-basis-reason {
  font-weight: 500;
}
.invoice-basis-amount {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.invoice-basis-sum {
  display: flex;
  justify-content: space-between;
  gap: var(--space-2);
  flex-wrap: wrap;
  font-variant-numeric: tabular-nums;
}
.invoice-basis-list {
  list-style: none;
  padding: 0;
  margin: var(--space-2) 0;
  display: grid;
  gap: var(--space-2);
}
.invoice-basis-list li {
  display: flex;
  flex-direction: column;
  gap: 2px;
  overflow-wrap: anywhere;
}
.invoice-basis-part {
  margin: var(--space-3) 0;
}
.invoice-basis-part summary {
  min-height: 44px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-1);
  cursor: pointer;
}
.invoice-basis-items {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--text-base);
  margin: var(--space-2) 0;
}
.invoice-basis-items th,
.invoice-basis-items td {
  text-align: left;
  padding: var(--space-2) var(--space-2);
  vertical-align: top;
  overflow-wrap: anywhere;
}
.invoice-basis-items th {
  font-size: var(--text-xs);
}
.invoice-basis-items td:nth-child(n+3),
.invoice-basis-items th:nth-child(n+3) {
  text-align: right;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.workspace-shell .invoice-basis .btn,
.workspace-shell .invoice-basis .btn.tertiary,
.workspace-shell .invoice-basis-entry .btn,
.workspace-shell .invoice-basis-entry .btn.tertiary,
.invoice-basis .btn,
.invoice-basis-entry .btn {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/platform.css */
.platform-shell {
  display: grid;
  grid-template-columns: 228px minmax(0, 1fr);
  min-height: 100dvh;
  background: #f5f7f2;
  color: #253c33;
  font-size: var(--text-base);
}
.platform-sidebar {
  padding: var(--space-6) var(--space-5);
  background: #fff;
  border-right: 1px solid #dce2d7;
  display: flex;
  flex-direction: column;
  position: sticky;
  top: 0;
  height: 100dvh;
}
.platform-sidebar .brand {
  font-size: var(--text-2xl);
  margin-bottom: var(--space-7);
}
.platform-side-label {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-xs);
  font-weight: 700;
  letter-spacing: .16em;
  color: #61735e;
  margin: 0 var(--space-3) var(--space-4);
}
.platform-sidebar nav {
  display: grid;
  gap: var(--space-1);
}
.platform-sidebar nav button {
  display: flex;
  gap: var(--space-3);
  align-items: center;
  border: 0;
  background: transparent;
  border-radius: var(--radius-control);
  padding: var(--space-2) var(--space-3);
  text-align: left;
  font: inherit;
  font-size: var(--text-sm);
  font-weight: 600;
  color: #536759;
  cursor: pointer;
  min-height: var(--control-md);
}
.platform-sidebar nav button[aria-current] {
  background: #e8eddf;
  color: #203e34;
}
.platform-sidebar nav button:hover {
  background: #f0f3e9;
}
.platform-side-foot {
  margin-top: auto;
  border-top: 1px solid #dce2d7;
  padding-top: var(--space-4);
  font-size: var(--text-xs);
  color: #536759;
}
.platform-side-foot a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: 700;
}
.platform-body {
  min-width: 0;
}
.platform-topbar {
  height: 68px;
  padding: 0 var(--space-6);
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #dce2d7;
  background: #fff;
}
.platform-topbar > span,
.platform-topbar > div {
  display: flex;
  gap: var(--space-3);
  align-items: center;
}
.platform-topbar > span {
  font-size: var(--text-xs);
  font-weight: 700;
}
.platform-live {
  font-size: var(--text-xs);
  color: #536759;
  display: flex;
  gap: var(--space-2);
  align-items: center;
}
.platform-live i {
  height: 6px;
  width: 6px;
  background: #497446;
  border-radius: 50%;
}
.platform-main {
  max-width: 1510px;
  margin: auto;
  padding: var(--space-6);
}
.platform-page-head {
  display: flex;
  gap: var(--space-5);
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--space-5);
}
.platform-page-head h1 {
  font-size: var(--text-xl);
  letter-spacing: -.5px;
  line-height: var(--leading-tight);
  margin: var(--space-2) 0;
  font-weight: 600;
}
.platform-page-head p {
  font-size: var(--text-base);
  max-width: 650px;
  line-height: 1.7;
  color: #536759;
  margin: 0;
}
.platform-page-head > a {
  white-space: nowrap;
}
.platform-main .eyebrow {
  font-size: var(--text-xs);
  letter-spacing: .13em;
}
.platform-controls {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-bottom: var(--space-5);
}
.platform-controls label {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  border: 1px solid #d6ded1;
  background: white;
  padding: 0 var(--space-3);
  border-radius: var(--radius-control);
  min-height: var(--control-md);
}
.platform-controls label > span {
  font-size: var(--text-xs);
  color: #536759;
}
.platform-controls select {
  border: 0;
  background: transparent;
  padding: var(--space-1) 2px;
  width: auto;
  font: inherit;
  min-height: var(--control-sm);
  color: #253c33;
}
.platform-controls > span {
  margin-left: auto;
  font-size: var(--text-xs);
  color: #536759;
}
.platform-refresh {
  background: none;
  border: 0;
  padding: var(--space-2) 0;
  font: inherit;
  font-size: var(--text-xs);
  text-decoration: underline;
  color: #253c33;
  cursor: pointer;
  min-height: var(--control-md);
}
.platform-note {
  display: flex;
  gap: var(--space-4);
  align-items: center;
  justify-content: space-between;
  border: 1px solid #dce2d7;
  background: #eef2e6;
  padding: var(--space-3) var(--space-4);
  border-radius: 9px;
  font-size: var(--text-xs);
  line-height: 1.7;
  margin: var(--space-4) 0;
}
.platform-note button,
.platform-panel-foot button,
.platform-footer button {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  background: none;
  border: 0;
  padding: var(--space-1) 0;
  color: #203e34;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
  min-height: var(--control-sm);
  white-space: nowrap;
}
.platform-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-4);
  margin: var(--space-5) 0;
}
.platform-stat {
  border: 1px solid #dce2d7;
  border-radius: 12px;
  padding: var(--space-5);
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
.platform-stat-label {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-xs);
  font-weight: 600;
  color: #536759;
}
.platform-stat strong {
  font-size: var(--text-xl);
  line-height: var(--leading-tight);
  font-weight: 600;
  letter-spacing: -.5px;
  font-variant-numeric: tabular-nums;
}
.platform-stat small {
  font-size: var(--text-xs);
  color: #536759;
  line-height: 1.6;
}
.platform-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
  gap: var(--space-5);
  margin: var(--space-5) 0;
}
.platform-panel {
  background: white;
  border: 1px solid #dce2d7;
  border-radius: 12px;
  padding: var(--space-5);
  min-width: 0;
}
.platform-panel h2 {
  font-size: var(--text-lg);
  line-height: 1.4;
  letter-spacing: -.035em;
  margin: var(--space-2) 0 var(--space-2);
  font-weight: 600;
}
.platform-panel-head {
  display: flex;
  justify-content: space-between;
  gap: var(--space-4);
  align-items: center;
}
.platform-muted {
  color: #536759;
  font-size: var(--text-xs);
  line-height: 1.8;
  margin: var(--space-2) 0 var(--space-4);
}
.platform-pipeline {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: var(--space-5) 0;
  gap: 2px;
}
.platform-pipeline > div {
  background: #f0f4e9;
  padding: var(--space-4);
  display: grid;
  gap: var(--space-2);
}
.platform-pipeline > div:first-child {
  border-radius: 9px 0 0 9px;
}
.platform-pipeline > div:last-child {
  background: #203e34;
  color: #fff;
  border-radius: 0 9px 9px 0;
}
.platform-pipeline span {
  font-size: var(--text-xs);
}
.platform-pipeline strong {
  font-size: var(--text-xl);
  font-weight: 600;
}
.platform-panel-foot {
  padding-top: var(--space-4);
  border-top: 1px solid #e2e7dd;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  font-size: var(--text-xs);
}
.platform-panel-foot > span {
  display: flex;
  gap: var(--space-2);
  align-items: center;
  color: #536759;
}
.platform-channels {
  display: grid;
  gap: var(--space-4);
  margin-top: var(--space-5);
}
.platform-channels > div > div:first-child {
  display: flex;
  justify-content: space-between;
  font-size: var(--text-xs);
  margin-bottom: var(--space-2);
}
.platform-bar {
  height: 5px;
  background: #edf1e7;
  border-radius: 3px;
  overflow: hidden;
}
.platform-bar i {
  display: block;
  height: 100%;
  background: #607950;
  border-radius: 3px;
}
.platform-attention {
  margin-top: var(--space-5);
}
.platform-attention > button,
.platform-attention > div {
  display: flex;
  align-items: center;
  width: 100%;
  gap: var(--space-4);
  background: transparent;
  border: 0;
  border-bottom: 1px solid #e2e7dd;
  padding: var(--space-3) 0;
  color: inherit;
  text-align: left;
  font: inherit;
}
.platform-attention > button {
  cursor: pointer;
}
.platform-attention > button:hover {
  background: #f8faf4;
}
.platform-attention > div:last-child {
  border: 0;
}
.platform-attention > button > div,
.platform-attention > div > div {
  flex: 1;
}
.platform-attention strong {
  display: block;
  font-size: var(--text-sm);
  font-weight: 600;
}
.platform-attention span {
  display: block;
  font-size: var(--text-xs);
  color: #536759;
  line-height: 1.7;
  margin-top: var(--space-1);
}
.platform-detail-list {
  margin-top: var(--space-5);
}
.platform-detail-list > div {
  display: flex;
  justify-content: space-between;
  gap: var(--space-3);
  padding: var(--space-3) 0;
  border-bottom: 1px solid #e2e7dd;
  font-size: var(--text-xs);
}
.platform-detail-list dt {
  color: #536759;
}
.platform-detail-list dd {
  margin: 0;
  font-weight: 700;
  white-space: nowrap;
}
.platform-table-tools {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-bottom: var(--space-3);
}
.platform-search {
  display: flex;
  gap: var(--space-3);
  align-items: center;
  border: 1px solid #d6ded1;
  border-radius: var(--radius-control);
  padding: 0 var(--space-3);
  flex: 1;
  min-width: 180px;
  min-height: var(--control-md);
}
.platform-search input {
  border: 0;
  background: transparent;
  padding: var(--space-2) 0;
  font: inherit;
  width: 100%;
  min-width: 0;
  min-height: var(--control-sm);
}
.platform-table-tools select,
.platform-classify select {
  font: inherit;
  font-size: var(--text-xs);
  min-height: var(--control-md);
  padding: var(--space-2);
  border: 1px solid #d6ded1;
  border-radius: var(--radius-control);
  background: white;
  color: #253c33;
}
.platform-table-tools > span {
  font-size: var(--text-xs);
  color: #536759;
}
.platform-table-scroll {
  overflow: auto;
  max-width: 100%;
  border-top: 1px solid #dce2d7;
  margin-top: var(--space-4);
}
.platform-table-scroll table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
  font-size: var(--text-xs);
  min-width: 740px;
}
.platform-table-scroll th {
  font-size: var(--text-xs);
  letter-spacing: .025em;
  text-transform: uppercase;
  color: #536759;
  padding: var(--space-3);
  background: #f5f7f1;
  font-weight: 600;
  white-space: nowrap;
}
.platform-table-scroll td {
  padding: var(--space-3);
  border-bottom: 1px solid #e2e7dd;
  vertical-align: top;
}
.platform-table-scroll td:first-child {
  max-width: 250px;
  overflow-wrap: anywhere;
}
.platform-table-scroll td strong {
  font-size: var(--text-sm);
  font-weight: 600;
  display: block;
}
.platform-table-scroll td small {
  display: block;
  font-size: var(--text-xs);
  color: #536759;
  margin-top: var(--space-1);
}
.platform-product {
  display: block;
  font-weight: 600;
  margin-bottom: var(--space-2);
}
.platform-status {
  display: inline-block;
  padding: var(--space-1) var(--space-2);
  background: #f0f2ec;
  border-radius: 4px;
  font-size: var(--text-xs);
}
.platform-status.trial {
  background: #e8efda;
  color: #3d5630;
}
.platform-classify {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  max-width: 180px;
}
.platform-classify button {
  font: inherit;
  font-size: var(--text-xs);
  border: 0;
  background: #203e34;
  color: #fff;
  border-radius: var(--radius-control);
  padding: var(--space-1) var(--space-2);
  cursor: pointer;
  min-height: var(--control-sm);
}
.platform-classify [role=alert] {
  display: block;
  font-size: var(--text-xs);
  color: #a23f2f;
  max-width: 180px;
}
.platform-pagination {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: var(--space-3);
  padding-top: var(--space-5);
  font-size: var(--text-xs);
}
.platform-pagination > span {
  margin-right: auto;
  color: #536759;
}
.platform-empty {
  padding: var(--space-6) var(--space-3);
  text-align: center;
  color: #536759;
  line-height: 1.7;
}
.platform-empty svg {
  margin: auto;
}
.platform-definition-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
}
.platform-definition-grid p {
  font-size: var(--text-sm);
  line-height: 1.8;
  color: #536759;
}
.platform-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-4);
  border-top: 1px solid #dce2d7;
  margin-top: var(--space-6);
  padding-top: var(--space-4);
  color: #536759;
  font-size: var(--text-xs);
  line-height: 1.7;
}
.platform-footer span {
  display: flex;
  align-items: flex-start;
  gap: var(--space-2);
}
.platform-footer svg {
  flex-shrink: 0;
  margin-top: 2px;
}
.platform-shell button:focus-visible,
.platform-shell a:focus-visible,
.platform-shell select:focus-visible,
.platform-shell input:focus-visible {
  outline: 2px solid #426732;
  outline-offset: 3px;
}
.platform-shell button:disabled {
  opacity: .45;
  cursor: default;
}
.platform-shell svg {
  flex-shrink: 0;
}
@media (min-width: 1650px) {
  .platform-main {
    padding: var(--space-6) var(--space-7);
  }
  .platform-grid {
    gap: var(--space-5);
  }
  .platform-panel {
    padding: var(--space-5);
  }
}
@media (max-width: 1024px) {
  .platform-shell {
    grid-template-columns: 195px minmax(0, 1fr);
  }
  .platform-main {
    padding: var(--space-6) var(--space-5);
  }
  .platform-topbar {
    padding: 0 var(--space-5);
  }
  .platform-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .platform-grid {
    grid-template-columns: 1fr;
  }
  .platform-sidebar {
    padding: var(--space-6) var(--space-4);
  }
  .platform-page-head {
    align-items: flex-start;
  }
  .platform-page-head > a {
    font-size: var(--text-xs);
    padding: var(--space-3);
  }
  .platform-definition-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767px) {
  .platform-shell {
    display: block;
  }
  .platform-sidebar {
    position: static;
    height: auto;
    padding: var(--space-4) var(--space-4);
    border-right: 0;
    border-bottom: 1px solid #dce2d7;
    display: block;
  }
  .platform-sidebar .brand {
    font-size: var(--text-xl);
    margin: 0;
    display: inline-flex;
  }
  .platform-side-label {
    display: inline-flex;
    margin: 0 0 0 var(--space-4);
    font-size: var(--text-xs);
  }
  .platform-sidebar nav {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--space-1);
    margin-top: var(--space-4);
  }
  .platform-sidebar nav button {
    flex-direction: column;
    gap: var(--space-2);
    padding: var(--space-2) var(--space-1);
    font-size: var(--text-xs);
    min-height: var(--control-lg);
  }
  .platform-side-foot {
    display: none;
  }
  .platform-topbar {
    height: 54px;
    padding: 0 var(--space-4);
  }
  .platform-topbar > span {
    font-size: var(--text-xs);
  }
  .platform-live {
    font-size: var(--text-xs);
  }
  .platform-topbar .btn {
    font-size: var(--text-xs);
    padding: var(--space-2);
  }
  .platform-main {
    padding: var(--space-5) var(--space-4);
  }
  .platform-page-head {
    display: block;
    margin-bottom: var(--space-5);
  }
  .platform-page-head > a {
    margin-top: var(--space-4);
    display: inline-flex;
  }
  .platform-page-head h1 {
    font-size: var(--text-xl);
  }
  .platform-page-head p {
    font-size: var(--text-sm);
  }
  .platform-controls {
    gap: var(--space-2);
  }
  .platform-controls label {
    flex: 1 1 calc(50% - 8px);
    min-width: 0;
    padding: 0 var(--space-2);
    gap: var(--space-1);
    min-height: var(--control-lg);
  }
  .platform-controls select {
    font-size: var(--text-xs);
    width: 100%;
    min-width: 0;
  }
  .platform-controls label > span {
    font-size: var(--text-xs);
  }
  .platform-controls > span {
    margin: 0;
    font-size: var(--text-xs);
  }
  .platform-refresh {
    margin-left: auto;
    font-size: var(--text-xs);
    min-height: var(--control-lg);
  }
  .platform-note {
    align-items: flex-start;
    flex-direction: column;
    font-size: var(--text-xs);
    gap: var(--space-1);
    padding: var(--space-3);
  }
  .platform-stats {
    gap: var(--space-3);
  }
  .platform-stat {
    padding: var(--space-4);
    gap: var(--space-3);
  }
  .platform-stat-label {
    font-size: var(--text-xs);
    align-items: flex-start;
    gap: var(--space-1);
  }
  .platform-stat-label svg {
    width: 14px;
  }
  .platform-stat strong {
    font-size: var(--text-xl);
  }
  .platform-stat small {
    font-size: var(--text-xs);
  }
  .platform-panel {
    padding: var(--space-4);
  }
  .platform-panel h2 {
    font-size: var(--text-md);
  }
  .platform-pipeline > div {
    padding: var(--space-4) var(--space-2);
  }
  .platform-pipeline span {
    font-size: var(--text-xs);
  }
  .platform-pipeline strong {
    font-size: var(--text-lg);
  }
  .platform-pipeline {
    margin: var(--space-5) 0;
  }
  .platform-table-scroll {
    margin-right: -4px;
  }
  .platform-search {
    min-width: 0;
    width: 100%;
    flex-basis: 100%;
    min-height: var(--control-lg);
  }
  .platform-pagination {
    gap: var(--space-2);
  }
  .platform-pagination .btn {
    font-size: var(--text-xs);
    padding: var(--space-3) var(--space-2);
  }
  .platform-footer {
    align-items: flex-start;
    flex-direction: column;
  }
  .platform-detail-list > div {
    font-size: var(--text-xs);
  }
  .platform-definition-grid {
    gap: var(--space-4);
  }
}
.platform-shell .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.platform-table-scroll {
  position: relative;
}
@media (max-width: 767px) {
  .platform-table-scroll {
    border: 0;
    margin-right: 0;
    overflow: visible;
  }
  .platform-table-scroll table {
    min-width: 0;
    display: block;
  }
  .platform-table-scroll thead {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    clip: rect(0, 0, 0, 0);
    overflow: hidden;
    white-space: nowrap;
  }
  .platform-table-scroll tbody {
    display: block;
  }
  .platform-table-scroll tr {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-4) var(--space-3);
    padding: var(--space-4) 0;
    border-top: 1px solid #dce2d7;
  }
  .platform-table-scroll td {
    display: block;
    padding: 0;
    border: 0;
    min-width: 0;
    overflow-wrap: anywhere;
    max-width: none !important;
  }
  .platform-table-scroll td:first-child,
  .platform-table-scroll td:last-child {
    grid-column: 1/-1;
  }
  .platform-table-scroll td[data-label]::before {
    content: attr(data-label);
    display: block;
    font-size: var(--text-xs);
    color: #536759;
    margin-bottom: var(--space-2);
    font-weight: 600;
  }
  .platform-classify {
    max-width: none;
  }
  .platform-classify button,
  .platform-classify select,
  .platform-table-tools select,
  .platform-note button,
  .platform-panel-foot button,
  .platform-footer button {
    min-height: var(--control-lg);
  }
  .platform-sidebar nav button {
    font-size: var(--text-xs);
  }
  .platform-pagination {
    flex-wrap: wrap;
  }
  .platform-pagination > span {
    flex-basis: 100%;
    margin-bottom: var(--space-1);
  }
}
.platform-notices {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: var(--space-3);
}
.platform-notices li {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) auto;
  gap: var(--space-4);
  align-items: start;
  padding: var(--space-4) var(--space-4);
  background: #fff;
  border: 1px solid var(--line);
  border-left: 3px solid #9baa91;
  border-radius: 10px;
}
.platform-notices li[data-severity=urgent] {
  border-left-color: #bc543e;
  background: #fdf6f4;
}
.platform-notices li[data-severity=attention] {
  border-left-color: #c79b4b;
  background: #fdfaf3;
}
.platform-notices li[data-read=true] {
  opacity: .62;
  background: #fbfbf7;
}
.platform-notices li svg {
  margin-top: 2px;
  color: #5a6b58;
}
.platform-notices li[data-severity=urgent] svg {
  color: #a5442f;
}
.platform-notices li[data-severity=attention] svg {
  color: #9a7327;
}
.platform-notices p {
  margin: 0;
  font-size: var(--text-sm);
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.platform-notices small {
  display: block;
  margin-top: var(--space-1);
  font-size: var(--text-xs);
  color: var(--muted);
}
@media (max-width: 767px) {
  .platform-notices li {
    grid-template-columns: 20px minmax(0, 1fr);
    gap: var(--space-3);
    padding: var(--space-3) var(--space-4);
  }
  .platform-notices li > .badge,
  .platform-notices li > .btn {
    grid-column: 2;
    justify-self: start;
    margin-top: var(--space-1);
  }
}
.platform-shell-single {
  grid-template-columns: minmax(0, 1fr);
}
.platform-back {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-weight: 600;
}
.platform-stalls {
  margin-bottom: var(--space-5);
}
.platform-stall-list {
  list-style: none;
  padding: 0;
  margin: var(--space-4) 0 0;
  display: grid;
  gap: var(--space-3);
}
.platform-stall-list li {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) auto;
  gap: var(--space-4);
  align-items: center;
  padding: var(--space-4) var(--space-4);
  background: #fdfaf3;
  border: 1px solid var(--line);
  border-left: 4px solid #c79b4b;
  border-radius: 10px;
}
.platform-stall-list li[data-reason=trial_ending] {
  background: #fdf6f4;
  border-left-color: #bc543e;
}
.platform-stall-list li svg {
  color: #9a7327;
}
.platform-stall-list li[data-reason=trial_ending] svg {
  color: #a5442f;
}
.platform-stall-list p {
  margin: 0;
  font-size: var(--text-sm);
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.platform-stall-list small {
  display: block;
  margin-top: var(--space-1);
  font-size: var(--text-xs);
  color: var(--muted);
}
.platform-steps {
  list-style: none;
  padding: 0;
  margin: var(--space-4) 0 0;
  display: grid;
  gap: var(--space-2);
}
.platform-steps li {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr) auto;
  gap: var(--space-3);
  align-items: center;
  padding: var(--space-2) 0;
  border-bottom: 1px solid #edf0e9;
  font-size: var(--text-sm);
}
.platform-steps li:last-child {
  border-bottom: 0;
}
.platform-steps li[data-done=true] svg {
  color: #2f7a4d;
}
.platform-steps li[data-done=false] {
  color: var(--muted);
}
.platform-steps small {
  font-size: var(--text-xs);
  color: var(--muted);
}
.platform-followup {
  margin-top: var(--space-3);
}
.platform-followups {
  list-style: none;
  padding: 0;
  margin: var(--space-4) 0 0;
  display: grid;
  gap: var(--space-2);
  font-size: var(--text-xs);
}
.platform-followups small {
  display: block;
  color: var(--muted);
}
.platform-day {
  margin-top: var(--space-4);
}
.platform-day h3 {
  font-size: var(--text-xs);
  letter-spacing: .8px;
  text-transform: uppercase;
  color: var(--muted);
  margin: 0 0 var(--space-2);
}
.platform-day ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.platform-day li {
  display: flex;
  justify-content: space-between;
  gap: var(--space-3);
  padding: var(--space-2) 0;
  border-bottom: 1px solid #edf0e9;
  font-size: var(--text-sm);
}
.platform-day li small {
  color: var(--muted);
  font-size: var(--text-xs);
  white-space: nowrap;
}
@media (max-width: 767px) {
  .platform-stall-list li {
    grid-template-columns: 20px minmax(0, 1fr);
  }
  .platform-stall-list li > .btn {
    grid-column: 2;
    justify-self: start;
  }
}
.platform-detail-list > div {
  align-items: flex-start;
}
.platform-detail-list dt small {
  display: block;
  font-weight: 400;
  font-size: var(--text-xs);
  color: #7a8a76;
  line-height: 1.5;
  margin-top: var(--space-1);
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/contact.css */
.contact-workspace {
  max-width: 1440px;
  margin: auto;
}
.contact-workspace .product-page-head h1 {
  font-size: var(--text-xl);
  letter-spacing: -.5px;
}
.contact-workspace .page-head > div:first-child {
  max-width: 760px;
}
.contact-workspace .sr-only,
.contact-start .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.contact-workspace button,
.contact-start button {
  cursor: pointer;
}
.contact-workspace button:disabled,
.contact-start button:disabled {
  cursor: not-allowed;
}
.contact-workspace :is(input, select, textarea, button, a):focus-visible,
.contact-start :is(input, button, a):focus-visible {
  outline: 3px solid #638b54;
  outline-offset: 3px;
}
.contact-workspace .panel {
  box-shadow: none;
  border-color: #dfe4d9;
  border-radius: 14px;
}
.contact-workspace p {
  line-height: 1.7;
}
.contact-start {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: var(--space-7);
  max-width: 1180px;
  margin: var(--space-6) auto;
}
.contact-intro h1 {
  font-size: clamp(var(--text-xl), 3vw, var(--text-2xl));
  line-height: var(--leading-tight);
  letter-spacing: -.02em;
  margin: var(--space-3) 0 var(--space-4);
}
.contact-intro > p {
  font-size: var(--text-md);
  line-height: 1.75;
  max-width: 540px;
}
.contact-start-steps {
  display: grid;
  gap: var(--space-5);
  margin-top: var(--space-7);
}
.contact-start-steps article {
  display: flex;
  gap: var(--space-4);
}
.contact-start-steps article > svg {
  flex-shrink: 0;
  margin-top: var(--space-1);
}
.contact-start-steps h2 {
  font-size: var(--text-md);
  margin: 0 0 var(--space-1);
}
.contact-start-steps p {
  font-size: var(--text-base);
  margin: 0;
  color: #52654f;
  line-height: 1.65;
}
.contact-connect {
  padding: var(--space-5);
  align-self: start;
}
.contact-connect h2 {
  font-size: var(--text-lg);
  margin: var(--space-2) 0;
}
.contact-connect h3 {
  font-size: var(--text-md);
  margin-top: var(--space-6);
}
.contact-connect form {
  display: grid;
  gap: var(--space-5);
  margin: var(--space-5) 0;
}
.contact-connect .check {
  display: block;
  font-size: var(--text-sm);
  line-height: 1.7;
}
.contact-connect .check input {
  margin-right: var(--space-3);
}
.contact-fine {
  font-size: var(--text-xs) !important;
  line-height: 1.7 !important;
  color: #53634e;
  margin: var(--space-4) 0 0;
}
.contact-metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border: 1px solid #dfe4d9;
  border-radius: 14px;
  background: #fff;
  margin-bottom: var(--space-5);
  overflow: hidden;
}
.contact-metrics a {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: var(--space-2);
  text-decoration: none;
  padding: var(--space-4) var(--space-5);
  border-right: 1px solid #e5e9e0;
  color: #263b33;
}
.contact-metrics a:last-child {
  border: 0;
}
.contact-metrics a:hover {
  background: #f0f4ea;
}
.contact-metrics span {
  font-size: var(--text-sm);
  grid-column: 1 / -1;
}
.contact-metrics strong {
  font-size: var(--text-xl);
  line-height: var(--leading-tight);
  letter-spacing: -.5px;
}
.contact-metrics svg {
  align-self: center;
  color: #617454;
}
.contact-trial {
  display: flex;
  justify-content: space-between;
  gap: var(--space-4);
  background: #eef2e7;
  border-radius: 9px;
  padding: var(--space-3) var(--space-4);
  font-size: var(--text-sm);
  margin: 0 0 var(--space-5);
}
.contact-inbox {
  padding: 0;
  overflow: hidden;
}
.contact-inbox-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-5);
  padding: var(--space-5);
}
.contact-inbox-top h2 {
  font-size: var(--text-lg);
  margin: 0;
}
.contact-inbox-top h2 span {
  display: inline-block;
  font-size: var(--text-xs);
  vertical-align: middle;
  padding: var(--space-1) var(--space-2);
  background: #edf1e6;
  border-radius: 5px;
  margin-left: var(--space-2);
}
.contact-inbox-top p {
  font-size: var(--text-sm);
  color: #52654f;
  margin: var(--space-2) 0 0;
}
.contact-filters {
  padding: 0 var(--space-5) var(--space-5);
  display: flex;
  align-items: flex-end;
  gap: var(--space-3);
}
.contact-filters > label {
  display: grid;
  gap: var(--space-2);
  font-size: var(--text-xs);
  font-weight: 600;
  min-width: 0;
}
.contact-filters input,
.contact-filters select,
.contact-status-control select {
  min-height: var(--control-md);
  border: 1px solid #a9b5a2;
  border-radius: var(--radius-control);
  background: white;
  font: inherit;
  padding: var(--space-2) var(--space-3);
  color: #263b33;
  width: 100%;
}
.contact-filters input {
  font-size: var(--text-sm);
}
.contact-filters .contact-search {
  position: relative;
  flex: 1;
}
.contact-search svg {
  position: absolute;
  left: var(--space-3);
  top: 50%;
  transform: translateY(-50%);
  color: #52654f;
}
.contact-search input {
  padding-left: calc(17px + 2 * var(--space-3));
}
.contact-filters .btn {
  min-height: var(--control-md);
}
.contact-row {
  display: flex;
  gap: var(--space-4);
  align-items: center;
  padding: var(--space-4) var(--space-5);
  border-top: 1px solid #e5e9e0;
  text-decoration: none;
  color: #263b33;
  transition: background .15s;
}
.contact-row:hover {
  background: #f5f7f0;
}
.contact-avatar {
  flex: 0 0 42px;
  height: 42px;
  display: grid;
  place-items: center;
  background: #f0f2eb;
  border: 1px solid #dce3d4;
  border-radius: 11px;
  font-size: var(--text-md);
  font-weight: 700;
}
.contact-avatar.fresh {
  background: #e3edd6;
  border-color: #cfddbF;
}
.contact-row-main {
  flex: 1;
  min-width: 0;
}
.contact-row-main > div {
  display: flex;
  align-items: center;
  gap: var(--space-3);
}
.contact-row-main strong {
  font-size: var(--text-base);
  overflow-wrap: anywhere;
}
.contact-row h3 {
  font-size: var(--text-base);
  font-weight: 500;
  margin: var(--space-1) 0;
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.contact-row p {
  font-size: var(--text-xs);
  color: #586a50;
  margin: 0;
}
.contact-row time {
  font-size: var(--text-xs);
  color: #586a50;
  white-space: nowrap;
}
.contact-state {
  font-size: var(--text-xs) !important;
  line-height: 1.5;
  padding: var(--space-1) var(--space-2);
  border-radius: 5px;
  background: #ecefe6;
  font-weight: 650;
  color: #41533b;
}
.contact-state.ny {
  background: #e1edce;
  color: #395621;
}
.contact-state.vunnen {
  background: #dfece5;
  color: #2e5140;
}
.contact-state.spam {
  background: #f5e7e2;
  color: #863d28;
}
.contact-pagination {
  display: flex;
  justify-content: space-between;
  gap: var(--space-3);
  padding: var(--space-4) var(--space-5);
  border-top: 1px solid #e5e9e0;
  font-size: var(--text-xs);
  color: #586a50;
  align-items: center;
}
.contact-pagination > div {
  display: flex;
  gap: var(--space-2);
}
.contact-empty {
  text-align: center;
  padding: var(--space-7) var(--space-5);
  border-top: 1px solid #e5e9e0;
}
.contact-empty > svg {
  color: #6a805b;
}
.contact-empty h3 {
  font-size: var(--text-lg);
  margin: var(--space-4) 0 var(--space-3);
}
.contact-empty p {
  max-width: 470px;
  margin: 0 auto var(--space-5);
  font-size: var(--text-base);
  color: #52654f;
}
.contact-detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: var(--space-5);
  align-items: start;
}
.contact-detail-main {
  display: grid;
  gap: var(--space-5);
  min-width: 0;
}
.contact-detail-main .panel,
.contact-quote-next,
.contact-install {
  padding: var(--space-5);
}
.contact-detail-aside {
  display: grid;
  gap: var(--space-4);
  position: sticky;
  top: 24px;
}
.contact-status-control {
  display: grid;
  gap: var(--space-2);
  font-size: var(--text-xs);
  min-width: 160px;
}
.contact-section-head {
  display: flex;
  justify-content: space-between;
  gap: var(--space-4);
  align-items: center;
  margin-bottom: var(--space-5);
}
.contact-section-head h2 {
  font-size: var(--text-lg);
  margin: var(--space-2) 0 0;
  letter-spacing: -.2px;
}
.contact-section-head .eyebrow {
  font-size: var(--text-xs);
}
.contact-section-head > svg {
  color: #667959;
  flex-shrink: 0;
}
.contact-person {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3) var(--space-5);
  padding-bottom: var(--space-4);
  border-bottom: 1px solid #e5e9e0;
}
.contact-person span {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-sm);
  overflow-wrap: anywhere;
  min-width: 0;
}
.contact-person svg {
  flex-shrink: 0;
}
.contact-original-text {
  font-size: var(--text-base);
  line-height: 1.85 !important;
  margin: var(--space-5) 0;
  overflow-wrap: anywhere;
  max-height: 500px;
  overflow: auto;
}
.contact-understanding {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-5);
  background: #f1f5ea;
  border-radius: 9px;
  padding: var(--space-4);
}
.contact-understanding h3 {
  font-size: var(--text-xs);
  margin: 0 0 var(--space-3);
}
.contact-understanding ul {
  font-size: var(--text-sm);
  line-height: 1.7;
  margin: 0;
  padding-left: var(--space-4);
}
.contact-understanding li + li {
  margin-top: var(--space-2);
}
.contact-fields {
  border: 0;
  margin: 0;
  padding: 0;
  min-width: 0;
  display: grid;
  gap: var(--space-4);
}
.contact-fields .field {
  margin: 0;
  font-size: var(--text-sm);
}
.contact-fields :is(input, textarea, select) {
  font-size: var(--text-base);
  background: #fff;
  border-color: #a9b5a2;
  border-radius: var(--radius-control);
  min-height: var(--control-md);
  padding: var(--space-2) var(--space-3);
  width: 100%;
  max-width: 100%;
  color: #263b33;
}
.contact-fields textarea {
  line-height: 1.8;
  resize: vertical;
}
.contact-reply > p {
  font-size: var(--text-base);
  color: #52654f;
  margin: -4px 0 var(--space-5);
}
.contact-actions {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  flex-wrap: wrap;
  border-top: 1px solid #e5e9e0;
  padding-top: var(--space-4);
}
.contact-actions .btn {
  font-size: var(--text-sm);
  padding: var(--space-2) var(--space-4);
  min-height: var(--control-md);
}
.contact-save-state {
  font-size: var(--text-xs);
  color: #52654f;
  margin-right: auto;
}
.contact-mail-review dl {
  display: grid;
  grid-template-columns: 70px 1fr;
  font-size: var(--text-sm);
  gap: var(--space-3);
  margin: 0;
  padding-bottom: var(--space-5);
  border-bottom: 1px solid #e5e9e0;
}
.contact-mail-review dd {
  margin: 0;
  overflow-wrap: anywhere;
}
.contact-mail-review > p {
  font-size: var(--text-base);
  line-height: 1.8;
  overflow-wrap: anywhere;
}
.contact-quote-next > svg {
  display: block;
  margin: var(--space-5) 0;
  color: #576e48;
}
.contact-quote-next h2 {
  font-size: var(--text-lg);
  line-height: var(--leading-tight);
  letter-spacing: -.2px;
  margin: 0 0 var(--space-3);
}
.contact-quote-next > p {
  font-size: var(--text-sm);
  line-height: 1.75;
}
.contact-quote-next .contact-fields {
  margin-top: var(--space-5);
}
.contact-quote-next .check {
  font-size: var(--text-xs);
  line-height: 1.6;
  display: flex;
  gap: var(--space-3);
  align-items: flex-start;
}
.contact-quote-next .check input {
  width: 18px;
  min-height: 18px;
  margin-top: var(--space-1);
  flex-shrink: 0;
}
.contact-help-note {
  display: flex;
  gap: var(--space-3);
  padding: 0 var(--space-3);
  color: #52654f;
}
.contact-help-note svg {
  flex-shrink: 0;
  margin-top: var(--space-1);
}
.contact-help-note p {
  font-size: var(--text-xs);
  margin: 0;
}
.contact-delivery {
  display: flex;
  gap: var(--space-3);
  padding: var(--space-4) 0;
  border-top: 1px solid #e5e9e0;
}
.contact-delivery > svg {
  margin-top: var(--space-1);
  flex-shrink: 0;
}
.contact-delivery strong {
  font-size: var(--text-sm);
}
.contact-delivery p,
.contact-delivery small {
  font-size: var(--text-xs);
  margin: var(--space-1) 0;
  color: #52654f;
  overflow-wrap: anywhere;
}
.contact-message {
  padding: var(--space-5);
  background: #f3f5ed;
  border: 1px solid #e1e7d8;
  border-radius: 10px;
  margin-top: var(--space-4);
}
.contact-message.inbound {
  background: #fff;
}
.contact-message header {
  display: flex;
  justify-content: space-between;
  gap: var(--space-3);
  font-size: var(--text-xs);
  color: #52654f;
}
.contact-message h3 {
  font-size: var(--text-base);
  margin-top: var(--space-4);
}
.contact-message p {
  font-size: var(--text-sm);
  overflow-wrap: anywhere;
}
.contact-install h2 {
  font-size: var(--text-lg);
  line-height: 1.3;
  overflow-wrap: anywhere;
}
.contact-install p {
  font-size: var(--text-base);
}
.contact-install pre {
  background: #f2f5ec;
  border: 1px solid #dce4d4;
  padding: var(--space-4);
  border-radius: 8px;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: var(--text-xs);
  line-height: 1.8;
}
@media (max-width: 1024px) {
  .contact-detail-grid {
    grid-template-columns: minmax(0, 1fr) 300px;
  }
  .contact-detail-main .panel,
  .contact-quote-next {
    padding: var(--space-5);
  }
  .contact-start {
    gap: var(--space-6);
  }
  .contact-metrics a {
    padding: var(--space-4);
  }
  .contact-filters {
    flex-wrap: wrap;
  }
  .contact-filters .contact-search {
    flex-basis: 100%;
  }
  .contact-filters > label {
    flex: 1;
  }
  .contact-filters > button {
    flex: 0 0 auto;
  }
}
@media (max-width: 1024px) {
  .contact-start {
    grid-template-columns: 1fr;
    gap: var(--space-6);
    margin: var(--space-3) 0;
  }
  .contact-intro h1 {
    max-width: 550px;
  }
  .contact-detail-grid {
    grid-template-columns: 1fr;
  }
  .contact-detail-aside {
    position: static;
  }
  .contact-quote-next .contact-fields {
    grid-template-columns: 1fr 1fr;
  }
  .contact-quote-next .contact-fields > .check,
  .contact-quote-next .contact-fields > .btn,
  .contact-quote-next .contact-fields > .field:first-child {
    grid-column: 1/-1;
  }
  .contact-metrics strong {
    font-size: var(--text-xl);
  }
  .contact-inbox-top {
    align-items: flex-start;
  }
  .contact-inbox-top .quiet-link {
    font-size: var(--text-xs);
  }
  .contact-row time {
    display: none;
  }
}
@media (max-width: 500px) {
  .contact-workspace .page-head {
    display: grid;
    gap: var(--space-5);
  }
  .contact-workspace .page-head .inline {
    gap: var(--space-2);
  }
  .contact-workspace .page-head .btn {
    font-size: var(--text-xs);
    padding: var(--space-3);
  }
  .contact-metrics a {
    padding: var(--space-4) var(--space-3);
    gap: var(--space-2);
  }
  .contact-metrics span {
    font-size: var(--text-xs);
    line-height: 1.6;
  }
  .contact-metrics strong {
    font-size: var(--text-xl);
  }
  .contact-metrics svg {
    display: none;
  }
  .contact-trial {
    display: block;
    font-size: var(--text-xs);
  }
  .contact-trial a {
    display: block;
    margin-top: var(--space-2);
  }
  .contact-inbox-top {
    display: grid;
    gap: var(--space-3);
    padding: var(--space-4);
  }
  .contact-filters {
    padding: 0 var(--space-4) var(--space-4);
    gap: var(--space-2);
  }
  .contact-filters > label {
    min-width: 95px;
  }
  .contact-filters .contact-search {
    min-width: 0;
  }
  .contact-filters select {
    padding: var(--space-2) var(--space-2);
    font-size: var(--text-xs);
  }
  .contact-row {
    gap: var(--space-3);
    padding: var(--space-3) var(--space-4);
  }
  .contact-avatar {
    flex-basis: 32px;
    height: 34px;
    border-radius: 8px;
    font-size: var(--text-sm);
  }
  .contact-row > svg {
    display: none;
  }
  .contact-row-main > div {
    flex-wrap: wrap;
    gap: var(--space-2) var(--space-3);
  }
  .contact-row-main strong {
    font-size: var(--text-sm);
  }
  .contact-row h3 {
    font-size: var(--text-xs);
  }
  .contact-row p {
    font-size: var(--text-xs);
  }
  .contact-pagination {
    padding: var(--space-4) var(--space-4);
  }
  .contact-detail-main .panel,
  .contact-quote-next,
  .contact-install,
  .contact-connect {
    padding: var(--space-4);
  }
  .contact-section-head h2 {
    font-size: var(--text-lg);
  }
  .contact-understanding {
    grid-template-columns: 1fr;
    padding: var(--space-4);
  }
  .contact-person {
    display: grid;
  }
  .contact-person span {
    font-size: var(--text-xs);
  }
  .contact-actions .btn {
    flex: 1;
    min-width: 110px;
  }
  .contact-save-state {
    flex-basis: 100%;
    margin-bottom: var(--space-2);
  }
  .contact-mail-review .contact-actions .btn {
    flex-basis: 100%;
    overflow-wrap: anywhere;
  }
  .contact-quote-next .contact-fields {
    grid-template-columns: 1fr;
  }
  .contact-message {
    padding: var(--space-4);
  }
  .contact-message header {
    display: grid;
    gap: var(--space-1);
  }
  .contact-status-control {
    max-width: 220px;
  }
  .contact-start-steps {
    margin-top: var(--space-6);
    gap: var(--space-5);
  }
  .contact-intro > p {
    font-size: var(--text-base);
  }
}
.contact-install-help {
  display: grid;
  gap: var(--space-3);
  padding: var(--space-4);
  border: 1px solid #c5d3b8;
  border-radius: 10px;
  background: #eaf0e1;
  margin: var(--space-4) 0;
}
.contact-install-help p {
  margin: 0;
  font-size: var(--text-sm);
}
.contact-install-help .btn {
  justify-self: start;
}
.contact-steps {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  list-style: none;
  margin: 0 0 var(--space-4);
  padding: 0;
}
.contact-steps button {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  min-height: var(--control-sm);
  padding: var(--space-1) var(--space-3) var(--space-1) var(--space-1);
  border: 1px solid #c9d3be;
  border-radius: 999px;
  background: #fff;
  font: inherit;
  font-size: var(--text-xs);
  color: #263b33;
  cursor: pointer;
}
.contact-steps button > span {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #e6ecdd;
  font-size: var(--text-xs);
  font-weight: 700;
}
.contact-steps li[data-done=true] button {
  background: #eaf0e1;
  border-color: #b9cba9;
}
.contact-steps li[data-done=true] button > span {
  background: #233d34;
  color: #fff;
}
.contact-steps li[aria-current=step] button {
  background: #233d34;
  border-color: #233d34;
  color: #fff;
  cursor: default;
}
.contact-steps li[aria-current=step] button > span {
  background: #fff;
  color: #233d34;
}
.contact-steps li:not([aria-current]) button:disabled {
  opacity: .6;
  cursor: default;
}
.contact-steps-other {
  display: inline-flex;
  align-items: center;
  min-height: var(--control-sm);
  padding: var(--space-1) var(--space-3);
  border-radius: 999px;
  background: #f2eee5;
  border: 1px solid #d5c9b3;
  font-size: var(--text-xs);
}
.contact-hub-nav {
  display: flex;
  gap: var(--space-1);
  flex-wrap: wrap;
  margin: 0 0 var(--space-5);
  padding: var(--space-1);
  border: 1px solid var(--border, #dce2d9);
  border-radius: 14px;
  background: #fff;
}
.contact-hub-nav a {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  min-height: var(--control-sm);
  padding: var(--space-1) var(--space-3);
  border-radius: var(--radius-control);
  font-size: var(--text-sm);
  color: inherit;
  text-decoration: none;
}
.contact-hub-nav a[aria-current=page] {
  background: #eaf0e3;
  font-weight: 700;
}
.contact-hub-nav a:focus-visible,
.contact-document:focus-visible {
  outline: 2px solid #375847;
  outline-offset: 3px;
}
.contact-hub-fields {
  border: 0;
  padding: 0;
  margin: 0;
  display: grid;
  gap: var(--space-4);
  min-width: 0;
}
.contact-hub-fields textarea {
  width: 100%;
  resize: vertical;
}
.contact-followup {
  margin: var(--space-5) 0;
}
.contact-followup .btn {
  margin-top: var(--space-4);
}
.contact-history {
  margin-top: var(--space-5);
  padding-top: var(--space-5);
  border-top: 1px solid #e2e6df;
}
.contact-history summary {
  cursor: pointer;
  font-weight: 700;
}
.contact-history ol {
  list-style: none;
  margin: var(--space-4) 0 0;
  padding: 0;
  display: grid;
  gap: var(--space-5);
}
.contact-history li {
  padding-left: var(--space-4);
  border-left: 2px solid #cedbc8;
}
.contact-history time,
.contact-history strong {
  display: block;
  font-size: var(--text-xs);
}
.contact-history p {
  white-space: pre-wrap;
  margin: var(--space-2) 0;
}
.contact-knowledge-grid {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(0, 2fr);
  gap: var(--space-5);
  align-items: start;
}
.contact-document-list {
  display: grid;
  gap: var(--space-2);
  margin: var(--space-5) 0;
}
.contact-document {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  border: 1px solid transparent;
  border-radius: 10px;
  padding: var(--space-3) var(--space-4);
  text-align: left;
  background: #f6f7f3;
  color: inherit;
  cursor: pointer;
  width: 100%;
}
.contact-document.selected {
  border-color: #69825b;
  background: #edf2e7;
}
.contact-document span {
  min-width: 0;
  overflow-wrap: anywhere;
}
.contact-document strong,
.contact-document small {
  display: block;
}
.contact-document small {
  margin-top: var(--space-1);
  color: #566253;
}
.contact-file {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  flex-wrap: wrap;
  border: 1px dashed #a2b197;
  border-radius: 12px;
  padding: var(--space-4);
  background: #f8faf5;
}
.contact-file small {
  display: block;
  font-size: var(--text-xs);
  margin-top: var(--space-1);
}
.contact-file input {
  max-width: 100%;
  font-size: var(--text-sm);
}
.contact-overdue {
  color: #a13d20;
  font-weight: 700;
}
.contact-filters {
  flex-wrap: wrap;
}
.contact-hub-fields select,
.contact-hub-fields input {
  max-width: 100%;
}
@media (max-width: 700px) {
  .contact-knowledge-grid {
    grid-template-columns: 1fr;
  }
  .contact-hub-nav {
    gap: var(--space-1);
  }
  .contact-hub-nav a {
    font-size: var(--text-xs);
    padding: var(--space-1) var(--space-3);
  }
  .contact-actions {
    flex-wrap: wrap;
  }
  .contact-hub-fields input,
  .contact-hub-fields textarea,
  .contact-hub-fields select {
    font-size: var(--text-md);
  }
}
.contact-booking-row {
  display: flex;
  justify-content: space-between;
  gap: var(--space-5);
  padding: var(--space-4) 0;
  border-bottom: 1px solid #e1e6dc;
}
.contact-booking-row p {
  margin: var(--space-2) 0;
}
.contact-booking-row:last-child {
  border-bottom: 0;
}
.contact-booking-row .contact-actions {
  align-self: center;
}
@media (max-width: 600px) {
  .contact-booking-row {
    flex-direction: column;
  }
  .contact-booking-row .contact-actions {
    align-self: start;
  }
}
.contact-hours {
  display: grid;
  gap: var(--space-3);
}
.contact-hours > div {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-2);
}
.contact-hours .check {
  min-width: 120px;
}
.contact-hours input[type=time] {
  width: 110px;
  min-width: 0;
}
.contact-plan-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin: var(--space-5) 0;
}
.contact-price strong {
  font-size: var(--text-xl);
}
.contact-plan-grid ul {
  padding-left: var(--space-5);
  line-height: 2;
}
@media (max-width: 750px) {
  .contact-plan-grid {
    grid-template-columns: 1fr;
  }
}
.contact-preview {
  max-width: 1240px;
  margin: 0 auto;
  padding: var(--space-5) clamp(var(--space-4), 4vw, var(--space-7)) var(--space-7);
}
.contact-preview-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  margin-bottom: var(--space-5);
}
.contact-preview-head .wordmark {
  font-size: var(--text-xl);
  font-weight: 700;
  text-decoration: none;
}
.contact-preview-notice {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2) var(--space-5);
  background: #eef1ec;
  border: 1px solid #dbe2d7;
  border-radius: 14px;
  padding: var(--space-4) var(--space-5);
  margin-bottom: var(--space-6);
  font-size: var(--text-sm);
}
.contact-preview-notice span {
  color: #536158;
}
.contact-assistant-booking {
  border-top: 1px solid var(--line, #dfe4dd);
  margin-top: var(--space-5);
  padding-top: var(--space-5);
  display: grid;
  gap: var(--space-3);
}
.contact-hub-nav {
  flex-wrap: wrap;
}
.contact-hub-nav a {
  white-space: nowrap;
}
.contact-preview .panel {
  min-width: 0;
}
.contact-preview li + li {
  margin-top: var(--space-3);
}
@media (max-width: 600px) {
  .contact-preview {
    padding-top: var(--space-4);
  }
  .contact-preview-notice {
    padding: var(--space-4);
    margin-bottom: var(--space-5);
  }
  .contact-hub-nav {
    gap: var(--space-2);
  }
  .contact-hub-nav a {
    font-size: var(--text-xs);
    padding: var(--space-3) var(--space-2);
    min-height: var(--control-lg);
  }
}
.contact-knowledge-grid > .contact-followup {
  margin: 0;
}
.contact-app-shell {
  min-height: 100dvh;
  background: var(--bg,#f7f8f3);
}
.contact-app-header {
  display: flex;
  align-items: center;
  gap: var(--space-6);
  padding: var(--space-4) clamp(var(--space-4), 4vw, var(--space-7));
  background: var(--surface,#fff);
  border-bottom: 1px solid var(--line,#dce2d6);
}
.contact-app-header > a {
  color: inherit;
  text-decoration: none;
  flex-shrink: 0;
}
.contact-app-company {
  display: grid;
  gap: var(--space-1);
  min-width: 0;
  margin-right: auto;
}
.contact-app-company strong {
  overflow-wrap: anywhere;
}
.contact-app-company a,
.contact-app-account a {
  font-size: var(--text-sm);
  text-underline-offset: 4px;
}
.contact-app-account {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-4);
  margin-left: auto;
}
.contact-app-content {
  max-width: 1380px;
  margin: 0 auto;
  padding: var(--space-6) clamp(var(--space-4), 4vw, var(--space-7)) var(--space-7);
}
.contact-team-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(300px, 1fr);
  gap: var(--space-5);
  align-items: start;
}
.contact-team-list {
  display: grid;
  gap: var(--space-5);
  min-width: 0;
}
.contact-team-section-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-4);
}
.contact-team-section-head h2 {
  margin: var(--space-2) 0 var(--space-3);
}
.contact-team-count {
  display: grid;
  grid-template-columns: auto auto;
  align-items: center;
  gap: var(--space-1) var(--space-3);
  padding: var(--space-4) var(--space-5);
  background: #ecf0e5;
  border-radius: 20px;
  flex-shrink: 0;
}
.contact-team-count strong {
  font-size: var(--text-xl);
  line-height: var(--leading-tight);
}
.contact-team-count strong span {
  font-size: var(--text-lg);
  font-weight: 400;
  color: #63725e;
}
.contact-team-count > span {
  grid-column: 1/-1;
  font-size: var(--text-xs);
}
.contact-team-people {
  list-style: none;
  padding: 0;
  margin: var(--space-3) 0 0;
}
.contact-team-people li {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3) 0;
  border-top: 1px solid #e3e7dd;
}
.contact-team-avatar {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  flex-shrink: 0;
  border-radius: 50%;
  background: #eef1e8;
  color: #36513d;
  font-weight: 700;
}
.contact-team-person {
  display: grid;
  gap: var(--space-1);
  flex: 1;
  min-width: 150px;
  overflow-wrap: anywhere;
}
.contact-team-person strong {
  font-size: var(--text-base);
}
.contact-team-person > span {
  font-size: var(--text-xs);
  color: #60715f;
}
.contact-team-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  max-width: 100%;
}
.contact-team-actions select {
  min-height: var(--control-md);
  max-width: 100%;
  font-size: var(--text-sm);
  padding: var(--space-2);
}
.contact-team-confirm {
  flex-basis: 100%;
  max-width: 340px;
}
.contact-team-confirm p {
  font-size: var(--text-sm);
}
.contact-team-empty {
  font-size: var(--text-base);
  color: #60715f;
  line-height: 1.7;
  padding: var(--space-2) 0;
}
.contact-team-invite {
  background: #f0f3ea !important;
  min-width: 0;
}
.contact-team-invite > h2 {
  font-size: var(--text-lg);
  margin: var(--space-4) 0 var(--space-2);
}
.contact-team-invite > p {
  font-size: var(--text-base);
  line-height: 1.7;
}
.contact-team-invite > small {
  display: block;
  margin-top: var(--space-4);
  line-height: 1.65;
  color: #52664f;
  font-size: var(--text-xs);
}
.contact-team-icon {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border: 1px solid #d5dfc9;
  border-radius: 16px;
  background: #fff;
  color: #425a3b;
}
.contact-team-role {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  border: 1px solid #d7dece;
  border-radius: 12px;
  padding: var(--space-4);
  cursor: pointer;
  background: #fff;
}
.contact-team-role.selected {
  border-color: #4e6745;
  box-shadow: 0 0 0 1px #4e6745;
}
.contact-team-role input {
  width: 18px;
  height: 18px;
  min-height: 0;
  flex-shrink: 0;
  margin: var(--space-1) 0 0;
  accent-color: #425a3b;
}
.contact-team-role span {
  display: grid;
  gap: var(--space-1);
}
.contact-team-role strong {
  font-size: var(--text-base);
}
.contact-team-role small {
  font-size: var(--text-xs);
  line-height: 1.6;
  color: #60715f;
}
.contact-team-note {
  display: flex;
  gap: var(--space-3);
  margin-top: var(--space-5);
  padding-top: var(--space-4);
  border-top: 1px solid #d5dfc9;
}
.contact-team-note svg {
  flex-shrink: 0;
  margin-top: var(--space-1);
}
.contact-team-note p {
  margin: 0;
  font-size: var(--text-xs);
  line-height: 1.7;
}
.contact-team-link {
  margin-top: var(--space-5);
  padding: var(--space-4);
  border: 1px solid #bacaad;
  border-radius: 12px;
  background: #fff;
}
.contact-team-link input {
  font-size: var(--text-xs);
  min-width: 0;
}
.contact-team-link p {
  font-size: var(--text-xs);
  line-height: 1.6;
}
.contact-company-picker {
  max-width: 760px;
  margin: 0 auto;
}
.contact-company-picker ul {
  list-style: none;
  padding: 0;
  margin-bottom: 0;
}
.contact-company-picker li {
  padding: var(--space-4) 0;
  border-top: 1px solid #e3e7dd;
  display: flex;
  gap: var(--space-5);
  justify-content: space-between;
  align-items: center;
}
.contact-company-picker li:last-child {
  padding-bottom: 0;
}
.contact-company-picker li > div {
  display: grid;
  gap: var(--space-2);
  overflow-wrap: anywhere;
  min-width: 0;
}
.contact-company-picker li span {
  font-size: var(--text-sm);
  color: #60715f;
}
.contact-invitation-page {
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-6);
  padding: var(--space-7) var(--space-4);
  background: #f4f6ef;
}
.contact-invitation-page > a {
  text-decoration: none;
  color: inherit;
}
.contact-invitation {
  max-width: 520px;
  width: 100%;
  display: grid;
  gap: var(--space-4);
}
.contact-invitation h1 {
  font-size: var(--text-xl);
  overflow-wrap: anywhere;
}
.contact-invitation p {
  line-height: 1.7;
  margin: 0;
}
@media (max-width: 900px) {
  .contact-team-grid {
    grid-template-columns: 1fr;
  }
  .contact-app-header {
    gap: var(--space-5);
    flex-wrap: wrap;
  }
  .contact-app-account {
    width: 100%;
    border-top: 1px solid #e3e7dd;
    padding-top: var(--space-4);
    justify-content: flex-end;
  }
}
@media (max-width: 540px) {
  .contact-app-header {
    gap: var(--space-4);
    padding: var(--space-4) var(--space-4);
  }
  .contact-app-company {
    flex: 1;
    font-size: var(--text-sm);
  }
  .contact-app-company .eyebrow {
    font-size: var(--text-xs);
  }
  .contact-app-content {
    padding-top: var(--space-5);
  }
  .contact-team-count {
    align-self: flex-start;
    padding: var(--space-3) var(--space-4);
  }
  .contact-team-people li {
    gap: var(--space-3);
  }
  .contact-team-actions {
    width: 100%;
    padding-left: 0;
  }
  .contact-team-actions select {
    flex: 1;
  }
  .contact-team-grid {
    gap: var(--space-4);
  }
  .contact-team-list {
    gap: var(--space-4);
  }
  .contact-company-picker li {
    align-items: stretch;
    flex-direction: column;
    gap: var(--space-3);
  }
}
@media (pointer: coarse), (max-width: 767px) {
  .contact-filters input,
  .contact-filters select,
  .contact-status-control select,
  .contact-filters .btn,
  .contact-fields :is(input:not([type=checkbox], [type=radio]), select),
  .contact-actions .btn,
  .contact-team-actions select,
  .contact-hub-nav a,
  .contact-steps button {
    min-height: var(--control-lg);
  }
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/node_modules/.pnpm/@fontsource+manrope@5.3.0/node_modules/@fontsource/manrope/400.css */
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url("./fonts/manrope-cyrillic-ext-400-normal.woff2") format("woff2"), url("./fonts/manrope-cyrillic-ext-400-normal.woff") format("woff");
  unicode-range:
    U+0460-052F,
    U+1C80-1C8A,
    U+20B4,
    U+2DE0-2DFF,
    U+A640-A69F,
    U+FE2E-FE2F;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url("./fonts/manrope-cyrillic-400-normal.woff2") format("woff2"), url("./fonts/manrope-cyrillic-400-normal.woff") format("woff");
  unicode-range:
    U+0301,
    U+0400-045F,
    U+0490-0491,
    U+04B0-04B1,
    U+2116;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url("./fonts/manrope-greek-400-normal.woff2") format("woff2"), url("./fonts/manrope-greek-400-normal.woff") format("woff");
  unicode-range:
    U+0370-0377,
    U+037A-037F,
    U+0384-038A,
    U+038C,
    U+038E-03A1,
    U+03A3-03FF;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url("./fonts/manrope-vietnamese-400-normal.woff2") format("woff2"), url("./fonts/manrope-vietnamese-400-normal.woff") format("woff");
  unicode-range:
    U+0102-0103,
    U+0110-0111,
    U+0128-0129,
    U+0168-0169,
    U+01A0-01A1,
    U+01AF-01B0,
    U+0300-0301,
    U+0303-0304,
    U+0308-0309,
    U+0323,
    U+0329,
    U+1EA0-1EF9,
    U+20AB;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url("./fonts/manrope-latin-ext-400-normal.woff2") format("woff2"), url("./fonts/manrope-latin-ext-400-normal.woff") format("woff");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url("./fonts/manrope-latin-400-normal.woff2") format("woff2"), url("./fonts/manrope-latin-400-normal.woff") format("woff");
  unicode-range:
    U+0000-00FF,
    U+0131,
    U+0152-0153,
    U+02BB-02BC,
    U+02C6,
    U+02DA,
    U+02DC,
    U+0304,
    U+0308,
    U+0329,
    U+2000-206F,
    U+20AC,
    U+2122,
    U+2191,
    U+2193,
    U+2212,
    U+2215,
    U+FEFF,
    U+FFFD;
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/node_modules/.pnpm/@fontsource+manrope@5.3.0/node_modules/@fontsource/manrope/500.css */
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url("./fonts/manrope-cyrillic-ext-500-normal.woff2") format("woff2"), url("./fonts/manrope-cyrillic-ext-500-normal.woff") format("woff");
  unicode-range:
    U+0460-052F,
    U+1C80-1C8A,
    U+20B4,
    U+2DE0-2DFF,
    U+A640-A69F,
    U+FE2E-FE2F;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url("./fonts/manrope-cyrillic-500-normal.woff2") format("woff2"), url("./fonts/manrope-cyrillic-500-normal.woff") format("woff");
  unicode-range:
    U+0301,
    U+0400-045F,
    U+0490-0491,
    U+04B0-04B1,
    U+2116;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url("./fonts/manrope-greek-500-normal.woff2") format("woff2"), url("./fonts/manrope-greek-500-normal.woff") format("woff");
  unicode-range:
    U+0370-0377,
    U+037A-037F,
    U+0384-038A,
    U+038C,
    U+038E-03A1,
    U+03A3-03FF;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url("./fonts/manrope-vietnamese-500-normal.woff2") format("woff2"), url("./fonts/manrope-vietnamese-500-normal.woff") format("woff");
  unicode-range:
    U+0102-0103,
    U+0110-0111,
    U+0128-0129,
    U+0168-0169,
    U+01A0-01A1,
    U+01AF-01B0,
    U+0300-0301,
    U+0303-0304,
    U+0308-0309,
    U+0323,
    U+0329,
    U+1EA0-1EF9,
    U+20AB;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url("./fonts/manrope-latin-ext-500-normal.woff2") format("woff2"), url("./fonts/manrope-latin-ext-500-normal.woff") format("woff");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url("./fonts/manrope-latin-500-normal.woff2") format("woff2"), url("./fonts/manrope-latin-500-normal.woff") format("woff");
  unicode-range:
    U+0000-00FF,
    U+0131,
    U+0152-0153,
    U+02BB-02BC,
    U+02C6,
    U+02DA,
    U+02DC,
    U+0304,
    U+0308,
    U+0329,
    U+2000-206F,
    U+20AC,
    U+2122,
    U+2191,
    U+2193,
    U+2212,
    U+2215,
    U+FEFF,
    U+FFFD;
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/node_modules/.pnpm/@fontsource+manrope@5.3.0/node_modules/@fontsource/manrope/600.css */
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url("./fonts/manrope-cyrillic-ext-600-normal.woff2") format("woff2"), url("./fonts/manrope-cyrillic-ext-600-normal.woff") format("woff");
  unicode-range:
    U+0460-052F,
    U+1C80-1C8A,
    U+20B4,
    U+2DE0-2DFF,
    U+A640-A69F,
    U+FE2E-FE2F;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url("./fonts/manrope-cyrillic-600-normal.woff2") format("woff2"), url("./fonts/manrope-cyrillic-600-normal.woff") format("woff");
  unicode-range:
    U+0301,
    U+0400-045F,
    U+0490-0491,
    U+04B0-04B1,
    U+2116;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url("./fonts/manrope-greek-600-normal.woff2") format("woff2"), url("./fonts/manrope-greek-600-normal.woff") format("woff");
  unicode-range:
    U+0370-0377,
    U+037A-037F,
    U+0384-038A,
    U+038C,
    U+038E-03A1,
    U+03A3-03FF;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url("./fonts/manrope-vietnamese-600-normal.woff2") format("woff2"), url("./fonts/manrope-vietnamese-600-normal.woff") format("woff");
  unicode-range:
    U+0102-0103,
    U+0110-0111,
    U+0128-0129,
    U+0168-0169,
    U+01A0-01A1,
    U+01AF-01B0,
    U+0300-0301,
    U+0303-0304,
    U+0308-0309,
    U+0323,
    U+0329,
    U+1EA0-1EF9,
    U+20AB;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url("./fonts/manrope-latin-ext-600-normal.woff2") format("woff2"), url("./fonts/manrope-latin-ext-600-normal.woff") format("woff");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url("./fonts/manrope-latin-600-normal.woff2") format("woff2"), url("./fonts/manrope-latin-600-normal.woff") format("woff");
  unicode-range:
    U+0000-00FF,
    U+0131,
    U+0152-0153,
    U+02BB-02BC,
    U+02C6,
    U+02DA,
    U+02DC,
    U+0304,
    U+0308,
    U+0329,
    U+2000-206F,
    U+20AC,
    U+2122,
    U+2191,
    U+2193,
    U+2212,
    U+2215,
    U+FEFF,
    U+FFFD;
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/node_modules/.pnpm/@fontsource+manrope@5.3.0/node_modules/@fontsource/manrope/700.css */
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url("./fonts/manrope-cyrillic-ext-700-normal.woff2") format("woff2"), url("./fonts/manrope-cyrillic-ext-700-normal.woff") format("woff");
  unicode-range:
    U+0460-052F,
    U+1C80-1C8A,
    U+20B4,
    U+2DE0-2DFF,
    U+A640-A69F,
    U+FE2E-FE2F;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url("./fonts/manrope-cyrillic-700-normal.woff2") format("woff2"), url("./fonts/manrope-cyrillic-700-normal.woff") format("woff");
  unicode-range:
    U+0301,
    U+0400-045F,
    U+0490-0491,
    U+04B0-04B1,
    U+2116;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url("./fonts/manrope-greek-700-normal.woff2") format("woff2"), url("./fonts/manrope-greek-700-normal.woff") format("woff");
  unicode-range:
    U+0370-0377,
    U+037A-037F,
    U+0384-038A,
    U+038C,
    U+038E-03A1,
    U+03A3-03FF;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url("./fonts/manrope-vietnamese-700-normal.woff2") format("woff2"), url("./fonts/manrope-vietnamese-700-normal.woff") format("woff");
  unicode-range:
    U+0102-0103,
    U+0110-0111,
    U+0128-0129,
    U+0168-0169,
    U+01A0-01A1,
    U+01AF-01B0,
    U+0300-0301,
    U+0303-0304,
    U+0308-0309,
    U+0323,
    U+0329,
    U+1EA0-1EF9,
    U+20AB;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url("./fonts/manrope-latin-ext-700-normal.woff2") format("woff2"), url("./fonts/manrope-latin-ext-700-normal.woff") format("woff");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url("./fonts/manrope-latin-700-normal.woff2") format("woff2"), url("./fonts/manrope-latin-700-normal.woff") format("woff");
  unicode-range:
    U+0000-00FF,
    U+0131,
    U+0152-0153,
    U+02BB-02BC,
    U+02C6,
    U+02DA,
    U+02DC,
    U+0304,
    U+0308,
    U+0329,
    U+2000-206F,
    U+20AC,
    U+2122,
    U+2191,
    U+2193,
    U+2212,
    U+2215,
    U+FEFF,
    U+FFFD;
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/node_modules/.pnpm/@fontsource+instrument-serif@5.3.0/node_modules/@fontsource/instrument-serif/400.css */
@font-face {
  font-family: "Instrument Serif";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url("./fonts/instrument-serif-latin-ext-400-normal.woff2") format("woff2"), url("./fonts/instrument-serif-latin-ext-400-normal.woff") format("woff");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: "Instrument Serif";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url("./fonts/instrument-serif-latin-400-normal.woff2") format("woff2"), url("./fonts/instrument-serif-latin-400-normal.woff") format("woff");
  unicode-range:
    U+0000-00FF,
    U+0131,
    U+0152-0153,
    U+02BB-02BC,
    U+02C6,
    U+02DA,
    U+02DC,
    U+0304,
    U+0308,
    U+0329,
    U+2000-206F,
    U+20AC,
    U+2122,
    U+2191,
    U+2193,
    U+2212,
    U+2215,
    U+FEFF,
    U+FFFD;
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/node_modules/.pnpm/@fontsource-variable+instrument-sans@5.3.0/node_modules/@fontsource-variable/instrument-sans/index.css */
@font-face {
  font-family: "Instrument Sans Variable";
  font-style: normal;
  font-display: swap;
  font-weight: 400 700;
  src: url("./fonts/instrument-sans-latin-ext-wght-normal.woff2") format("woff2-variations");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: "Instrument Sans Variable";
  font-style: normal;
  font-display: swap;
  font-weight: 400 700;
  src: url("./fonts/instrument-sans-latin-wght-normal.woff2") format("woff2-variations");
  unicode-range:
    U+0000-00FF,
    U+0131,
    U+0152-0153,
    U+02BB-02BC,
    U+02C6,
    U+02DA,
    U+02DC,
    U+0304,
    U+0308,
    U+0329,
    U+2000-206F,
    U+20AC,
    U+2122,
    U+2191,
    U+2193,
    U+2212,
    U+2215,
    U+FEFF,
    U+FFFD;
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/globals.css */
:root {
  --ink: #263b33;
  --text: #273c34;
  --muted: #58685b;
  --paper: #f6f5ef;
  --white: #fff;
  --line: #dde2d9;
  --accent: #d95b3d;
  --pale: #eaf0e7;
  --danger: #a83b31;
  --radius: 14px;
  --brand-ink: #263b33;
  --on-accent: #fff;
  --focus: #9a4b35;
  --font-ui: Manrope, sans-serif;
  --font-display: "Instrument Serif", serif;
  --font-display-weight: 400;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --text-xs: 12px;
  --text-sm: 13px;
  --text-base: 14px;
  --text-md: 16px;
  --text-lg: 18px;
  --text-xl: 24px;
  --text-2xl: 32px;
  --leading-tight: 1.25;
  --leading-normal: 1.5;
  --control-sm: 32px;
  --control-md: 40px;
  --control-lg: 44px;
  --control-field-touch: 48px;
  --radius-control: 8px;
}
* {
  box-sizing: border-box;
}
body {
  margin: 0;
  background: var(--paper);
  color: var(--text);
  font: 14px/1.5 var(--font-ui);
}
a {
  color: inherit;
  text-decoration: none;
}
button,
input,
select,
textarea {
  font: inherit;
}
button {
  cursor: pointer;
}
button:disabled {
  cursor: wait;
  opacity: 0.55;
}
a,
button,
input,
select,
textarea {
  outline-offset: 4px;
}
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible {
  outline: 3px solid var(--focus);
}
h1,
h2,
h3,
p {
  margin-top: 0;
}
h1,
h2,
h3 {
  text-wrap: balance;
}
h1 {
  font-size: var(--text-xl);
  line-height: var(--leading-tight);
  letter-spacing: -0.5px;
  margin-bottom: var(--space-2);
}
h2 {
  font-size: var(--text-lg);
  line-height: 1.3;
  letter-spacing: -0.2px;
}
h3 {
  font-size: var(--text-md);
  line-height: 1.35;
  margin-bottom: var(--space-2);
}
small {
  font-size: var(--text-xs);
}
.muted {
  color: var(--muted);
}
.eyebrow {
  font-size: var(--text-xs);
  font-weight: 600;
  color: var(--muted);
  margin-bottom: var(--space-2);
  line-height: 1.4;
}
.page-head .eyebrow {
  text-transform: uppercase;
  letter-spacing: 1.5px;
  font-size: var(--text-xs);
  font-weight: 700;
  margin-bottom: var(--space-3);
}
.serif {
  font-family: var(--font-display);
  font-weight: var(--font-display-weight);
}
.skip {
  position: fixed;
  top: -100px;
  left: 20px;
  z-index: 100;
  background: white;
  padding: var(--space-3);
}
.skip:focus {
  top: 10px;
}
.brand {
  font-size: var(--text-xl);
  font-weight: 700;
  letter-spacing: -0.06em;
  line-height: 1;
}
.brand i {
  display: inline-block;
  width: 7px;
  height: 7px;
  background: var(--accent);
  border-radius: 50%;
  margin-left: var(--space-1);
}
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  min-height: var(--control-md);
  border-radius: var(--radius-control);
  padding: var(--space-2) var(--space-4);
  border: 1px solid transparent;
  background: var(--ink);
  color: white;
  font-size: var(--text-sm);
  font-weight: 600;
  line-height: var(--leading-tight);
  transition: background 0.15s, transform 0.15s;
}
.btn:hover {
  background: #3b5446;
}
.btn.secondary {
  background: white;
  color: var(--ink);
  border-color: var(--line);
}
.btn.secondary:hover {
  background: var(--pale);
}
.btn.tertiary {
  background: transparent;
  color: var(--muted);
  padding: var(--space-2);
}
.btn.danger {
  background: var(--danger);
}
.btn.small {
  min-height: var(--control-sm);
  padding: var(--space-1) var(--space-3);
}
@media (pointer: coarse), (max-width: 767px) {
  .btn,
  .btn.small {
    min-height: var(--control-lg);
  }
}
.btn.full {
  width: 100%;
}
.inline {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  flex-wrap: wrap;
}
.stack {
  display: grid;
  gap: var(--space-4);
}
@media (min-width: 768px) {
  .form > .btn,
  .stack > .btn {
    justify-self: start;
  }
  .login-form .form > .btn,
  .login-form .stack > .btn {
    justify-self: stretch;
  }
}
.demo-pill {
  padding: var(--space-1) var(--space-2);
  border: 1px solid #d8dcd3;
  border-radius: 5px;
  font-size: var(--text-xs);
  letter-spacing: 1px;
  text-transform: uppercase;
}
.page-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--space-5);
  margin-bottom: var(--space-5);
}
.page-head > div:first-child {
  min-width: 0;
}
.page-head p {
  color: var(--muted);
  max-width: 68ch;
  margin-bottom: 0;
}
.panel {
  background: white;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: var(--space-5);
}
.panel > :last-child {
  margin-bottom: 0;
}
.panel[open] > summary {
  margin-bottom: var(--space-3);
}
.panel > dl + p {
  margin-top: var(--space-3);
}
.panel > .btn + p {
  margin-top: var(--space-4);
}
.content > section.panel.stack {
  max-width: 640px;
}
.panel-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  margin-bottom: var(--space-4);
}
.panel-heading h2 {
  margin: 0;
}
.summary-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-4);
  margin-bottom: var(--space-6);
}
.stat {
  padding: var(--space-5);
  border-bottom: 2px solid #d9e1d5;
  background: #f0f1e9;
}
.stat .value {
  font-size: var(--text-xl);
  letter-spacing: -0.5px;
  font-weight: 500;
  line-height: 1.3;
  margin: var(--space-3) 0;
}
.stat p {
  margin: 0;
  font-size: var(--text-xs);
  color: var(--muted);
}
.two-col {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(270px, 1fr);
  gap: var(--space-5);
}
.two-col > .panel > div + h2 {
  margin-top: var(--space-5);
}
.activity {
  display: grid;
  grid-template-columns: 40px 1fr auto;
  gap: var(--space-3);
  padding: var(--space-4) 0;
  border-bottom: 1px solid #edf0e9;
  align-items: start;
}
.activity:last-child {
  border: 0;
}
.activity-icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  background: var(--pale);
  border-radius: 8px;
}
.activity p {
  font-size: var(--text-xs);
  color: var(--muted);
  margin: var(--space-1) 0 0;
  white-space: pre-wrap;
}
.activity small {
  font-size: var(--text-xs);
  color: var(--muted);
}
.empty {
  padding: var(--space-6) var(--space-4);
  text-align: center;
}
.empty svg {
  color: #9aa791;
}
.empty h3 {
  margin: var(--space-4) 0 var(--space-2);
}
.empty p {
  color: var(--muted);
  max-width: 380px;
  margin: 0 auto var(--space-5);
}
.next-card {
  background: var(--ink);
  color: #f7f7ef;
  padding: var(--space-5);
  border-radius: var(--radius);
  margin-bottom: var(--space-5);
}
.next-card h2 {
  font-family: var(--font-display);
  font-size: var(--text-xl);
  font-weight: var(--font-display-weight);
  line-height: 1.2;
}
.next-card p {
  font-size: var(--text-xs);
  color: #d5dfd2;
}
.next-card .btn {
  background: #f4f0e5;
  color: var(--ink);
}
.data-table {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--text-xs);
}
.data-table th {
  text-align: left;
  color: var(--muted);
  font-size: var(--text-xs);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  border-bottom: 1px solid var(--line);
  padding: var(--space-3);
}
.data-table td {
  border-bottom: 1px solid #edf0e9;
  padding: var(--space-3) var(--space-3);
  vertical-align: middle;
}
.data-table tr:last-child td {
  border: 0;
}
.data-table td strong {
  display: block;
}
.data-table a:hover {
  text-decoration: underline;
}
.table-wrap {
  overflow: auto;
}
.badge {
  display: inline-block;
  border-radius: 5px;
  background: #eef1e8;
  color: #50604d;
  padding: var(--space-1) var(--space-2);
  font-size: var(--text-xs);
  font-weight: 600;
  white-space: nowrap;
}
.badge.warm {
  background: #fbefe5;
  color: #946145;
}
.badge.accepted {
  background: #e2f0e3;
  color: #376343;
}
.badge.declined {
  background: #f6e7e2;
  color: #954f42;
}
.badge.dialogue,
.badge.change_requested {
  background: #fbefdb;
  color: #8c6626;
}
.notice {
  background: #edf1e9;
  border-left: 3px solid #9baa91;
  padding: var(--space-4) var(--space-4);
  font-size: var(--text-xs);
  margin: var(--space-4) 0;
  border-radius: 0 7px 7px 0;
}
.notice.error {
  background: #fbede8;
  border-color: #bc543e;
  color: #863b2a;
}
.notice.warning {
  background: #fcf2df;
  border-color: #c79b4b;
}
.notice p:last-child {
  margin-bottom: 0;
}
.invite-other-account > p {
  margin-bottom: var(--space-3);
}
.invite-other-account .btn.tertiary {
  background: white;
  color: #863b2a;
  border-color: #bc543e;
  padding: var(--space-2) var(--space-4);
}
.invite-other-account .btn.tertiary:hover {
  background: #f6dcd3;
}
.invite-other-account small {
  display: block;
  margin-top: var(--space-2);
}
.form {
  display: grid;
  gap: var(--space-5);
}
.form > h2,
.form > p {
  margin-bottom: 0;
}
.form > .notice {
  margin-block: 0;
}
.form > h2 + p {
  margin-top: calc(var(--space-2) - var(--space-5));
}
.form > details > .field,
.form > details > .field-row {
  margin-top: var(--space-5);
}
.field {
  display: grid;
  gap: var(--space-2);
  font-size: var(--text-sm);
  font-weight: 600;
}
.field small {
  font-weight: 400;
  color: var(--muted);
}
input,
select,
textarea {
  width: 100%;
  border: 1px solid #71806f;
  border-radius: var(--radius-control);
  background: white;
  color: var(--text);
  padding: var(--space-2) var(--space-3);
  font-size: var(--text-base);
  min-height: var(--control-md);
}
textarea {
  resize: vertical;
  min-height: 96px;
  line-height: var(--leading-normal);
}
input[type=checkbox] {
  width: 17px;
  height: 17px;
  min-height: 0;
  accent-color: var(--ink);
}
.field-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4);
}
.field.place-housing {
  grid-column: 1 / -1;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
  gap: var(--space-2);
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
.place-housing legend {
  padding: 0 0 var(--space-2);
}
.place-choice {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  min-height: var(--control-md);
  padding: var(--space-2) var(--space-3);
  border: 1px solid #71806f;
  border-radius: var(--radius-control);
  background: white;
  color: var(--text);
  font-size: var(--text-sm);
  font-weight: 400;
  line-height: 1.45;
  cursor: pointer;
}
.place-choice:has(:checked) {
  border-color: var(--ink);
  box-shadow: inset 0 0 0 1px var(--ink);
}
.place-choice:has(:disabled) {
  background: #f2f3ef;
  color: #626b60;
  cursor: not-allowed;
}
.place-housing input[type=radio] {
  flex: none;
  width: 17px;
  height: 17px;
  min-height: 0;
  margin: 0;
  padding: 0;
  accent-color: var(--ink);
}
@media (pointer: coarse), (max-width: 767px) {
  .place-choice {
    min-height: var(--control-field-touch);
    font-size: var(--text-md);
  }
  .place-housing input[type=radio] {
    width: 22px;
    height: 22px;
  }
}
.form-footer {
  display: flex;
  justify-content: flex-end;
  gap: var(--space-3);
  align-items: center;
}
.form-section {
  padding-top: var(--space-5);
  border-top: 1px solid var(--line);
}
.two-col > .panel > .form-section:not(:last-child) {
  padding-bottom: var(--space-5);
}
.member-name + .form {
  margin-top: var(--space-4);
}
.quote-editor {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 295px;
  gap: var(--space-5);
  align-items: start;
}
.quote-aside {
  position: sticky;
  top: 20px;
}
.quote-line {
  padding: var(--space-4) 0;
  border-bottom: 1px solid var(--line);
}
.quote-line-fields {
  display: grid;
  grid-template-columns: 1.8fr 0.7fr 0.7fr 1fr 35px;
  gap: var(--space-3);
  align-items: end;
}
.quote-line-fields label {
  font-size: var(--text-xs);
}
.quote-line-title {
  font-size: var(--text-sm);
  font-weight: 600;
  margin-bottom: var(--space-3);
}
.line-details {
  margin-top: var(--space-3);
  font-size: var(--text-xs);
}
.line-details summary {
  cursor: pointer;
  color: var(--muted);
}
.totals {
  display: grid;
  gap: var(--space-3);
  font-size: var(--text-xs);
}
.total-row {
  display: flex;
  justify-content: space-between;
  gap: var(--space-5);
}
.total-row.grand {
  padding-top: var(--space-4);
  border-top: 1px solid var(--line);
  font-size: var(--text-lg);
  font-weight: 700;
  letter-spacing: -0.3px;
}
.findings {
  padding: 0;
  list-style: none;
  font-size: var(--text-xs);
  display: grid;
  gap: var(--space-2);
}
.findings li {
  padding: var(--space-3);
  border-radius: 6px;
  background: #fcf2df;
}
.findings li.blocking {
  background: #fbede8;
}
.finding-label {
  font-size: var(--text-xs);
  font-weight: 700;
  text-transform: uppercase;
  display: block;
  margin-bottom: var(--space-1);
}
.save-status {
  font-size: var(--text-xs);
  color: var(--muted);
}
.section-tabs {
  display: flex;
  gap: var(--space-5);
  border-bottom: 1px solid var(--line);
  margin-bottom: var(--space-5);
}
.section-tabs a,
.section-tabs button {
  padding: var(--space-3) 0;
  background: none;
  border: 0;
  color: var(--muted);
  font-size: var(--text-xs);
}
.section-tabs .active {
  color: var(--ink);
  border-bottom: 2px solid var(--ink);
}
.message {
  padding: var(--space-4) var(--space-4);
  border-radius: 9px;
  background: #f4f5ef;
  margin-bottom: var(--space-3);
  white-space: pre-wrap;
  font-size: var(--text-xs);
}
.message.company {
  background: #e9efe5;
}
.message-meta {
  font-size: var(--text-xs);
  color: var(--muted);
  display: flex;
  gap: var(--space-3);
  justify-content: space-between;
  margin-bottom: var(--space-2);
}
.dialogue-thread {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  margin: 0 0 var(--space-5);
  padding: var(--space-4);
  background: #f2f4ee;
  border-radius: 14px;
}
.dialogue-thread .message {
  max-width: 86%;
  margin: 0;
  align-self: flex-start;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 16px 16px 16px 5px;
  font-size: var(--text-sm);
  white-space: normal;
  box-shadow: 0 1px 2px #263b330f;
}
.dialogue-thread[data-me=company] .message.company,
.dialogue-thread[data-me=customer] .message.customer {
  align-self: flex-end;
  background: #e4ecdf;
  border-color: #cbd9c4;
  border-radius: 16px 16px 5px 16px;
}
.dialogue-thread .message-meta {
  font-size: var(--text-xs);
  font-weight: 650;
  margin-bottom: var(--space-2);
}
.dialogue-thread .message-meta strong {
  color: var(--ink);
}
.dialogue-thread .message > p {
  margin: 0;
}
.message-removed {
  margin: 0;
  color: var(--muted);
  font-style: italic;
}
.message-revised {
  display: block;
  margin-top: var(--space-2);
  font-size: var(--text-xs);
  color: var(--muted);
}
.message-revise {
  margin-top: var(--space-3);
  padding-top: var(--space-3);
  border-top: 1px solid #263b3314;
  display: grid;
  gap: var(--space-2);
}
.message-revise textarea {
  width: 100%;
  font: inherit;
  font-size: var(--text-sm);
  border: 1px solid var(--line);
  border-radius: var(--radius-control);
  padding: var(--space-2) var(--space-3);
  resize: vertical;
}
.message-revise .task-filters {
  align-items: center;
  gap: var(--space-2);
}
.message-revise small {
  color: var(--muted);
  font-size: var(--text-xs);
}
.dialogue-thread .message .form-footer {
  margin-top: var(--space-3);
  padding-top: var(--space-3);
  border-top: 1px solid #263b3314;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  align-items: center;
  justify-content: space-between;
}
.dialogue-reply-form {
  scroll-margin-top: 18px;
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: var(--space-4);
  background: var(--white);
}
.dialogue-reply-form > h2:first-child {
  margin-top: 0;
}
@media (max-width: 767px) {
  .dialogue-thread {
    padding: var(--space-3);
    gap: var(--space-3);
  }
  .dialogue-thread .message {
    max-width: 94%;
  }
}
.package-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-5);
}
.package {
  padding: var(--space-5);
}
.package.featured {
  border: 1px solid var(--ink);
  background: #f0f3eb;
}
.package .price {
  font-size: var(--text-2xl);
  letter-spacing: -0.5px;
  margin: var(--space-5) 0 var(--space-1);
}
.package ul {
  list-style: none;
  padding: 0;
  display: grid;
  gap: var(--space-4);
  margin: var(--space-5) 0;
}
.package li {
  font-size: var(--text-xs);
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
}
.package li svg {
  flex-shrink: 0;
  color: #6b7e5f;
}
.package [data-package-terms] {
  font-size: var(--text-xs) !important;
}
.login-page {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  min-height: 100dvh;
}
.login-story {
  background: var(--ink);
  color: var(--paper);
  padding: var(--space-7);
  display: flex;
  flex-direction: column;
}
.login-story .hero-text {
  margin: auto 0;
}
.login-story .login-slogan {
  font-family: var(--font-display);
  font-size: var(--text-2xl);
  line-height: var(--leading-tight);
  letter-spacing: -0.5px;
  font-weight: var(--font-display-weight);
  max-width: 530px;
}
.login-story p {
  color: #d1dbcb;
  max-width: 375px;
}
.login-form {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--space-7);
  max-width: 600px;
  width: 100%;
  margin: auto;
}
.login-form h1 {
  font-size: var(--text-xl);
}
.login-form .form {
  margin-top: var(--space-6);
}
.login-footer {
  font-size: var(--text-xs);
  color: var(--muted);
  margin-top: var(--space-6);
}
.portal {
  max-width: 890px;
  margin: 0 auto;
  padding: var(--space-6) var(--space-5) 80px;
}
.portal-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--space-6);
}
.portal-paper {
  background: white;
  border: 1px solid var(--line);
  padding: var(--space-7);
  border-radius: 5px;
  box-shadow: 0 15px 40px #253e3007;
}
.portal-paper > :last-child {
  margin-bottom: 0;
}
.portal-company {
  border-bottom: 1px solid var(--line);
  padding-bottom: var(--space-5);
  margin-bottom: var(--space-6);
  display: flex;
  justify-content: space-between;
  gap: var(--space-5);
}
.portal h1 {
  font-family: var(--font-display);
  font-size: var(--text-2xl);
  font-weight: var(--font-display-weight);
  letter-spacing: -0.5px;
}
.portal-section {
  margin: var(--space-6) 0;
}
.portal-section p {
  font-size: var(--text-sm);
  white-space: pre-wrap;
}
.portal-price {
  background: var(--pale);
  padding: var(--space-5);
  margin-top: var(--space-6);
}
.portal-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-3);
}
.portal-footer {
  margin-top: var(--space-6);
  text-align: center;
  font-size: var(--text-xs);
  color: var(--muted);
}
.back-link {
  display: inline-flex;
  gap: var(--space-2);
  align-items: center;
  font-size: var(--text-xs);
  color: var(--muted);
  margin-bottom: var(--space-5);
}
.error-page {
  max-width: 500px;
  margin: 15vh auto;
  padding: var(--space-6);
}
.checkbox-label {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  font-size: var(--text-xs);
  font-weight: 400;
}
label.check {
  display: inline-flex;
  align-items: flex-start;
  gap: var(--space-2);
  font-weight: 400;
}
label.check > input {
  flex-shrink: 0;
  margin: 2px 0 0;
}
@media (pointer: coarse), (max-width: 767px) {
  label.check > input {
    margin-top: 0;
  }
}
.quiet-box {
  background: #edece4;
  padding: var(--space-5);
  border-radius: 8px;
  font-size: var(--text-xs);
}
.quiet-box h3 {
  font-size: var(--text-base);
}
.quiet-box > :last-child {
  margin-bottom: 0;
}
.quiet-box > .eyebrow {
  display: block;
}
.panel .quiet-box {
  padding: var(--space-4);
}
.quiet-box > .btn:has(+ .btn),
.task-columns .panel > .btn:has(+ .btn) {
  margin: 0 var(--space-2) var(--space-2) 0;
}
.mono {
  font-variant-numeric: tabular-nums;
}
.icon-btn {
  border: 0;
  background: transparent;
  color: var(--muted);
  display: grid;
  place-items: center;
  min-width: var(--control-sm);
  min-height: var(--control-md);
  border-radius: var(--radius-control);
}
.icon-btn:hover {
  background: #f7e5de;
  color: var(--danger);
}
@media (min-width: 1500px) {
  .page-head {
    margin-bottom: var(--space-6);
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .two-col,
  .quote-editor {
    grid-template-columns: 1fr;
  }
  .quote-aside {
    position: static;
  }
  .quote-aside .panel {
    max-width: none;
  }
  .login-story {
    padding: var(--space-7);
  }
  .login-story .login-slogan {
    font-size: var(--text-2xl);
  }
}
@media (min-width: 1025px) and (max-width: 1200px) {
  .two-col,
  .quote-editor {
    grid-template-columns: 1fr;
  }
  .quote-aside {
    position: static;
  }
  .quote-aside .panel {
    max-width: none;
  }
}
@media (max-width: 767px) {
  .page-head {
    display: block;
  }
  .page-head .btn {
    margin-top: var(--space-4);
  }
  .page-head > .inline {
    margin-top: var(--space-4);
  }
  .page-head > .inline .btn {
    margin-top: 0;
  }
  .page-head > .badge {
    display: inline-block;
    margin-top: var(--space-3);
  }
  .page-head h1 {
    font-size: var(--text-xl);
  }
  .summary-grid {
    grid-template-columns: 1fr;
    gap: var(--space-3);
  }
  .stat {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--space-4);
    gap: var(--space-3);
  }
  .stat .value {
    font-size: var(--text-xl);
    margin: 0;
  }
  .stat .eyebrow {
    margin: 0;
  }
  .stat p {
    display: none;
  }
  .panel {
    padding: var(--space-4);
    border-radius: 10px;
  }
  .quiet-box {
    padding: var(--space-4);
  }
  .field-row {
    grid-template-columns: 1fr;
  }
  .quote-line-fields {
    grid-template-columns: 1fr 1fr;
  }
  .quote-line-fields .field:first-child {
    grid-column: span 2;
  }
  .quote-line-fields .icon-btn {
    justify-self: end;
  }
  .package-grid {
    grid-template-columns: 1fr;
  }
  .two-col,
  .quote-editor {
    grid-template-columns: 1fr;
  }
  .quote-aside {
    position: static;
  }
  .quote-aside .panel {
    max-width: none;
  }
  .login-page {
    display: block;
  }
  .login-story {
    padding: var(--space-5);
  }
  .login-story .hero-text {
    margin-top: var(--space-6);
  }
  .login-story .login-slogan {
    font-size: var(--text-2xl);
  }
  .login-story .hero-description,
  .login-story small {
    display: none;
  }
  .login-form {
    padding: var(--space-6) var(--space-5);
  }
  .portal {
    padding: var(--space-5) var(--space-4) calc(var(--space-5) + env(safe-area-inset-bottom));
  }
  .portal-paper {
    padding: var(--space-4);
  }
  .portal h1 {
    font-size: var(--text-xl);
  }
  .portal-company {
    display: block;
  }
  .portal-company small {
    display: block;
    margin-top: var(--space-3);
  }
  .portal-actions {
    grid-template-columns: 1fr;
  }
  .portal-price {
    padding: var(--space-4);
  }
  .activity {
    grid-template-columns: 32px 1fr;
  }
  .activity > .btn {
    grid-column: 2;
    justify-self: start;
  }
  .data-table th,
  .data-table td {
    padding: var(--space-3) var(--space-2);
  }
  .total-row.grand {
    font-size: var(--text-lg);
  }
}
@media (pointer: coarse) {
  input,
  select,
  textarea {
    font-size: var(--text-md);
    min-height: 48px;
  }
  input[type=checkbox] {
    width: 22px;
    height: 22px;
    min-height: 0;
  }
  textarea {
    min-height: 110px;
  }
  .btn {
    min-height: 48px;
  }
  .btn.small {
    min-height: 42px;
  }
  .icon-btn {
    min-width: var(--control-lg);
    min-height: var(--control-lg);
  }
  .section-tabs a,
  .section-tabs button {
    padding: var(--space-4) 0;
  }
  summary {
    min-height: 44px;
    display: flex;
    align-items: center;
    gap: var(--space-2);
  }
}
@media (prefers-reduced-motion: reduce) {
  * {
    transition: none !important;
    animation: none !important;
  }
}
.login-slogan {
  font-weight: 400;
  line-height: var(--leading-tight);
  letter-spacing: -0.5px;
  margin-bottom: var(--space-3);
}
.source-entry {
  padding: var(--space-4) 0;
  border-top: 1px solid var(--line);
}
.source-entry:first-of-type {
  border-top: 0;
}
.source-heading {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: var(--space-5);
}
.source-heading h3 {
  overflow-wrap: anywhere;
}
.source-heading p {
  font-size: var(--text-xs);
}
.source-text {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font: 12px/1.7 var(--font-ui);
  tab-size: 4;
  max-height: 420px;
  overflow: auto;
  background: var(--paper);
  padding: var(--space-4);
  border-radius: 8px;
}
input[type=file] {
  max-width: 100%;
  align-items: center;
  padding: var(--space-1);
  background: white;
  border: 1px solid var(--line);
  border-radius: var(--radius-control);
}
summary {
  cursor: pointer;
}
input::file-selector-button {
  font: inherit;
  border: 0;
  border-radius: 4px;
  padding: var(--space-1) var(--space-3);
  margin-right: var(--space-3);
  background: var(--pale);
  color: var(--ink);
  cursor: pointer;
}
@media (max-width: 767px) {
  .source-heading {
    display: block;
  }
  .source-heading .badge {
    margin-bottom: var(--space-3);
  }
}
.memory-details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5) var(--space-6);
  margin: var(--space-5) 0;
}
.memory-details dt {
  font-size: var(--text-xs);
  font-weight: 700;
  color: var(--muted);
  margin-bottom: var(--space-1);
}
.memory-details dd {
  margin: 0;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: var(--text-sm);
  line-height: 1.65;
}
.memory-diff {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--text-xs);
}
.memory-diff th,
.memory-diff td {
  padding: var(--space-3);
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--line);
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  min-width: 150px;
}
.memory-diff thead {
  background: var(--paper);
}
@media (max-width: 767px) {
  .memory-details {
    grid-template-columns: 1fr;
    gap: var(--space-4);
  }
}
.table-wrap {
  width: 100%;
  overflow-x: auto;
}
.total-row.grand {
  display: grid;
  gap: var(--space-2);
}
.total-row.grand span:first-child {
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: 0;
}
.total-row.grand span:last-child {
  text-align: right;
  font-size: var(--text-xl);
  line-height: var(--leading-tight);
  overflow-wrap: anywhere;
}
.summary-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: var(--space-4);
  padding: var(--space-3) 0;
  border-bottom: 1px solid var(--line);
  font-size: var(--text-sm);
}
.summary-row > span {
  flex: 1;
  min-width: 0;
  color: var(--muted);
}
.summary-row > strong {
  max-width: 62%;
  text-align: right;
  overflow-wrap: anywhere;
}
.summary-row.total {
  font-size: var(--text-md);
  border-bottom: 0;
  padding-bottom: var(--space-4);
}
.summary-row.total > span {
  color: var(--ink);
  font-weight: 600;
}
.btn:disabled {
  cursor: not-allowed;
}
.export-part {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-5);
  padding: var(--space-4) 0;
  border-top: 1px solid var(--line, #dce2da);
}
.export-part > div {
  min-width: 0;
  flex: 1;
}
.export-part .btn {
  flex-shrink: 0;
}
.export-status {
  font-size: var(--text-sm);
  margin-bottom: 0;
}
.export-part .notice {
  margin: var(--space-3) 0 0;
}
@media (max-width: 767px) {
  .export-part {
    flex-direction: column;
    gap: var(--space-3);
  }
  .export-part .btn {
    align-self: flex-start;
  }
}
.change-group {
  border: 1px solid var(--line, #dce2da);
  border-radius: 10px;
  padding: var(--space-4);
  margin-top: var(--space-4);
}
.change-group summary {
  font-weight: 650;
  cursor: pointer;
}
.change-fields {
  margin-top: var(--space-4);
}
.change-field {
  padding: var(--space-4) 0;
  border-top: 1px solid var(--line, #dce2da);
}
.change-field h4 {
  font-size: var(--text-sm);
  margin: 0 0 var(--space-3);
}
.change-values {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4);
}
.change-values > div {
  min-width: 0;
}
.change-values p,
.review-snapshot p {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  margin: var(--space-2) 0 0;
  font-size: var(--text-sm);
}
.change-values .eyebrow {
  font-size: var(--text-xs);
}
.change-values > div:first-child {
  color: var(--muted, #65746a);
}
.review-snapshot {
  padding-top: var(--space-4);
}
.review-snapshot h4 {
  font-size: var(--text-xs);
  margin-top: var(--space-5);
}
.review-line {
  border-top: 1px solid var(--line, #dce2da);
  padding: var(--space-4) 0;
}
.publication-review {
  scroll-margin-top: 20px;
}
@media (max-width: 767px) {
  .change-values {
    grid-template-columns: 1fr;
    gap: var(--space-4);
  }
  .change-group {
    padding: var(--space-3);
  }
}
.contract-total {
  font-size: var(--text-xl);
  font-weight: 700;
  letter-spacing: -0.5px;
  margin: var(--space-2) 0;
}
.amendment-amounts p {
  overflow-wrap: anywhere;
}
.contract-summary .activity {
  align-items: center;
  flex-wrap: wrap;
}
.handoff-records-table small {
  display: block;
  max-width: 280px;
  white-space: normal;
  margin-top: var(--space-1);
}
.handoff-records-mobile {
  display: none;
}
@media (max-width: 767px) {
  .handoff-records-table {
    display: none;
  }
  .handoff-records-mobile {
    display: grid;
    gap: 0;
    margin: var(--space-5) 0;
  }
  .handoff-records-mobile article {
    padding: var(--space-4) 0;
    border-top: 1px solid var(--line);
  }
  .handoff-records-mobile h3 {
    margin: 0 0 var(--space-2);
  }
  .handoff-records-mobile p {
    margin: 0 0 var(--space-2);
  }
  .handoff-records-mobile small {
    color: var(--muted);
  }
  .handoff-records-mobile dl {
    display: grid;
    gap: var(--space-3);
    margin: var(--space-4) 0;
  }
  .handoff-records-mobile dl > div {
    display: flex;
    justify-content: space-between;
    gap: var(--space-4);
    font-size: var(--text-xs);
  }
  .handoff-records-mobile dt {
    color: var(--muted);
  }
  .handoff-records-mobile dd {
    margin: 0;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
  }
}
.option-draft,
.option-catalog article,
.public-options article {
  border-top: 1px solid var(--line);
  padding: var(--space-4) 0;
  margin-top: var(--space-4);
}
.option-draft > .field,
.option-draft > details {
  margin: var(--space-4) 0;
}
.option-price-line {
  background: var(--pale);
  padding: var(--space-4);
  border-radius: 8px;
  margin: var(--space-4) 0;
}
.option-price-line h4 {
  margin: 0 0 var(--space-4);
}
.option-dependencies {
  border: 1px solid var(--line);
  padding: var(--space-4);
  margin: var(--space-4) 0;
  display: grid;
  gap: var(--space-3);
}
.option-dependencies legend {
  font-size: var(--text-xs);
}
.option-catalog,
.public-options,
.option-selection-review {
  font-size: var(--text-sm);
}
.option-catalog p,
.option-catalog li,
.public-options p,
.public-options li {
  white-space: pre-wrap;
}
.option-selection-review {
  background: var(--pale);
  border-radius: 8px;
  padding: var(--space-5);
  margin: var(--space-5) 0;
}
.option-selection-review > .btn {
  margin-top: var(--space-4);
}
.options-editor > .btn {
  margin: var(--space-3) 0;
}
.public-options .checkbox-label {
  align-items: flex-start;
}
.public-options input[type=checkbox] {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
}
.checklist-items {
  display: grid;
  gap: var(--space-5);
  margin-top: var(--space-5);
}
.checklist-item {
  background: white;
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: var(--space-5);
  min-width: 0;
}
.checklist-source {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: var(--text-base);
  line-height: 1.75;
  border-left: 3px solid var(--ink);
  margin: var(--space-4) 0;
  padding: 0 0 0 var(--space-4);
}
.checklist-reports {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4);
  margin-top: var(--space-5);
}
.checklist-report {
  background: var(--paper);
  padding: var(--space-4);
  min-width: 0;
  overflow-wrap: anywhere;
}
.checklist-report p {
  margin: var(--space-2) 0;
}
.checklist-report small {
  color: var(--muted);
}
.checklist-report.blocked {
  background: #fff0df;
}
.checklist-report.done {
  background: var(--pale);
}
.checklist-update {
  margin-top: var(--space-5);
  border-top: 1px solid var(--line);
  padding-top: var(--space-4);
}
.checklist-update > summary {
  font-weight: 700;
  cursor: pointer;
}
.checklist-form {
  padding-top: var(--space-5);
}
.checklist-form input,
.checklist-form textarea,
.checklist-form select {
  min-width: 0;
}
.portal .checklist-item {
  padding: var(--space-4) 0;
  border: 0;
  border-top: 1px solid var(--line);
  border-radius: 0;
}
.portal .checklist-item > .muted {
  font-size: var(--text-xs);
}
@media (max-width: 767px) {
  .checklist-reports {
    grid-template-columns: 1fr;
    gap: var(--space-3);
  }
  .checklist-item {
    padding: var(--space-4);
  }
  .option-selection-review {
    padding: var(--space-4);
  }
  .checklist-form .form-footer {
    align-items: stretch;
    flex-direction: column;
  }
}
.portal-company.checklist-company {
  display: flex;
  gap: var(--space-4);
  align-items: flex-start;
}
.checklist-company > .text-link {
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .portal-company.checklist-company {
    flex-direction: column;
    gap: var(--space-3);
  }
}
.start-planning {
  margin-bottom: var(--space-5);
  min-width: 0;
}
.start-facts {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4);
}
.start-fact {
  padding: var(--space-4) 0;
  border-top: 1px solid var(--line);
  min-width: 0;
}
.start-fact h3 {
  margin: 0 0 var(--space-3);
}
.start-fact strong {
  font-size: var(--text-base);
}
.start-fact small,
.start-history small {
  display: block;
  color: var(--muted);
  font-size: var(--text-xs);
  margin-top: var(--space-3);
}
.start-fact ul {
  padding-left: var(--space-5);
}
.start-fact li {
  margin-bottom: var(--space-3);
}
.start-shared-note {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.start-form {
  border-top: 1px solid var(--line);
  padding-top: var(--space-4);
  margin-top: var(--space-4);
}
.start-form > summary,
.start-history > summary {
  cursor: pointer;
  font-weight: 700;
}
.start-form > .form {
  margin-top: var(--space-5);
}
.start-week-field {
  display: flex;
  gap: var(--space-4);
  align-items: center;
}
.start-week-field > .field {
  flex: 1;
  min-width: 0;
}
.start-form input,
.start-form textarea {
  min-width: 0;
}
.start-history {
  margin-top: var(--space-5);
}
.start-history ol {
  padding-left: var(--space-5);
}
.start-history li {
  padding: var(--space-4) 0;
  border-bottom: 1px solid var(--line);
}
.start-history p {
  margin: var(--space-2) 0;
}
.start-form .notice > p {
  margin-top: var(--space-3);
}
.start-form .checkbox-label {
  font-size: var(--text-sm);
  line-height: 1.65;
  align-items: flex-start;
}
@media (max-width: 767px) {
  .start-facts {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .start-week-field {
    flex-wrap: wrap;
    gap: 0;
    margin-bottom: var(--space-4);
  }
  .start-week-field > .field {
    flex-basis: 100%;
  }
  .start-form .form-footer {
    align-items: stretch;
    flex-direction: column;
  }
}
.outcome-parts {
  display: flex;
  gap: var(--space-3);
  flex-wrap: wrap;
  margin: var(--space-5) 0;
}
.outcome-parts a {
  display: block;
  min-height: var(--control-md);
  padding: var(--space-2) var(--space-3);
  border: 1px solid var(--line);
  border-radius: var(--radius-control);
  background: white;
  font-size: var(--text-sm);
}
.outcome-parts a.active {
  border-color: var(--ink);
  background: var(--pale);
}
.outcome-parts small {
  display: block;
  color: var(--muted);
  font-size: var(--text-xs);
  margin-top: var(--space-1);
}
.outcome-comparison {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-6);
  margin: var(--space-5) 0;
}
.outcome-comparison > div {
  min-width: 0;
}
.outcome-comparison dl > div {
  padding: var(--space-3) 0;
  border-bottom: 1px solid var(--line);
  display: flex;
  justify-content: space-between;
  gap: var(--space-4);
}
.outcome-comparison dt {
  color: var(--muted);
  font-size: var(--text-xs);
}
.outcome-comparison dd {
  margin: 0;
  text-align: right;
  font-size: var(--text-sm);
  flex-shrink: 0;
}
.outcome-comparison small {
  display: block;
  color: var(--muted);
  font-size: var(--text-xs);
}
.outcome-differences,
.outcome-notes {
  padding: var(--space-5) 0;
  border-top: 1px solid var(--line);
}
.preserve-lines {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.outcome-form,
.outcome-history,
.outcome-evidence {
  margin-top: var(--space-5);
  padding-top: var(--space-5);
  border-top: 1px solid var(--line);
}
.outcome-form > summary,
.outcome-history > summary,
.outcome-evidence > summary {
  font-weight: 700;
  cursor: pointer;
}
.outcome-form > .form {
  margin-top: var(--space-5);
}
.outcome-form .form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4);
}
.outcome-metric {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: var(--space-5);
  min-width: 0;
}
.outcome-metric legend {
  font-weight: 700;
  padding: 0 var(--space-2);
}
.outcome-form input,
.outcome-form textarea,
.outcome-form select {
  min-width: 0;
}
.outcome-form .checkbox-label {
  align-items: flex-start;
  font-size: var(--text-sm);
  line-height: 1.65;
}
.outcome-metric details > .field {
  margin-top: var(--space-4);
}
.outcome-metric p {
  font-size: var(--text-xs);
}
@media (max-width: 767px) {
  .outcome-comparison,
  .outcome-form .form-grid {
    grid-template-columns: 1fr;
    gap: var(--space-4);
  }
  .outcome-metric {
    padding: var(--space-4);
  }
  .outcome-parts a {
    flex: 1;
  }
  .outcome-form .form-footer {
    align-items: stretch;
    flex-direction: column;
  }
}
.message-source {
  margin: var(--space-3) 0;
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  white-space: normal;
  overflow-wrap: anywhere;
  font-size: var(--text-xs);
}
.message-source summary {
  cursor: pointer;
  font-weight: 600;
}
.message-source[open] > div {
  padding-top: var(--space-3);
}
.message-source p:last-child {
  margin-bottom: 0;
}
.source-question-link {
  display: block;
  width: fit-content;
  min-height: 36px;
  padding-top: var(--space-3);
  font-size: var(--text-xs);
  text-decoration: underline;
  text-underline-offset: 3px;
}
#kunddialog,
#historik {
  scroll-margin-top: 24px;
}
#kunddialog .form-footer {
  flex-wrap: wrap;
}
#kunddialog .field select {
  min-width: 0;
  max-width: 100%;
  text-overflow: ellipsis;
}
.task-columns {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
  gap: var(--space-5);
  margin-top: var(--space-5);
  align-items: start;
}
.task-editor h2 {
  margin-top: 0;
}
.task-text {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.task-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
}
.task-facts dt {
  font-size: var(--text-xs);
  color: var(--muted);
  margin-bottom: var(--space-2);
}
.task-facts dd {
  margin: 0;
  overflow-wrap: anywhere;
}
.task-facts small {
  display: block;
  color: var(--muted);
}
.task-facts + h3 {
  margin-top: var(--space-5);
}
.task-filters {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin: var(--space-4) 0;
}
.task-excerpt {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  overflow-wrap: anywhere;
}
.task-event {
  border-bottom: 1px solid var(--line);
  padding: var(--space-4) 0;
  font-size: var(--text-xs);
  overflow-wrap: anywhere;
}
.task-event h3 {
  font-size: var(--text-sm);
  margin: 0 0 var(--space-2);
}
.task-event small {
  color: var(--muted);
}
.task-resolution {
  border-top: 1px solid var(--line);
  margin-top: var(--space-5);
  padding-top: var(--space-5);
}
.task-resolution .field {
  margin-top: var(--space-4);
}
.task-editor input,
.task-editor select,
.task-editor textarea {
  width: 100%;
  min-width: 0;
}
.task-editor input:read-only,
.task-editor textarea:read-only {
  background: var(--pale);
}
@media (max-width: 1024px) {
  .task-columns {
    grid-template-columns: 1fr;
  }
  .task-facts {
    grid-template-columns: 1fr;
  }
  .task-editor .btn {
    white-space: normal;
  }
}
.followup-plan-step {
  min-width: 0;
  margin: 0;
  padding: var(--space-5);
  border: 1px solid var(--line);
  border-radius: 12px;
  display: grid;
  gap: var(--space-4);
}
.followup-plan-step legend {
  padding: 0 var(--space-2);
  font-weight: 700;
}
.followup-plan-step input,
.followup-plan-step textarea,
.followup-plan-step select {
  max-width: 100%;
  min-width: 0;
}
.followup-plan-pause {
  margin-top: var(--space-6);
  padding-top: var(--space-5);
  border-top: 1px solid var(--line);
}
@media (max-width: 767px) {
  .followup-plan-step {
    padding: var(--space-4) var(--space-3);
  }
  .followup-plan-step .field-row {
    grid-template-columns: 1fr;
  }
  .followup-plan-step .task-filters {
    gap: var(--space-2);
  }
}
.followup-plan-start {
  margin-top: var(--space-6);
  padding-top: var(--space-5);
  border-top: 1px solid var(--line);
  display: grid;
  gap: var(--space-4);
}
.followup-plan-start h3,
.followup-plan-start p {
  margin-bottom: 0;
}
.followup-plan-start .checkbox-label {
  align-items: flex-start;
  min-height: 44px;
  padding: var(--space-3) 0;
  font-size: var(--text-sm);
}
.followup-plan-start .checkbox-label input {
  margin-top: var(--space-1);
  flex-shrink: 0;
}
.followup-plan-start .btn {
  justify-self: start;
}
.followup-plan-start .btn:disabled {
  cursor: not-allowed;
}
.notification-settings {
  border: 0;
  padding: 0;
  margin: var(--space-5) 0;
}
.notification-category {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) 130px 130px;
  align-items: center;
  gap: var(--space-4);
  border-bottom: 1px solid var(--line);
  padding: var(--space-3) 0;
}
.notification-category h3 {
  font-size: var(--text-base);
  margin: 0;
}
.notification-category .checkbox-label {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  min-height: var(--control-sm);
}
.notification-category input {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}
@media (pointer: coarse), (max-width: 767px) {
  .notification-category .checkbox-label {
    min-height: var(--control-lg);
  }
}
@media (max-width: 767px) {
  .notification-category {
    grid-template-columns: 1fr 1fr;
  }
  .notification-category h3 {
    grid-column: 1/-1;
  }
}
.notification-settings .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.call-section {
  margin-top: var(--space-5);
}
.statistics-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
}
.statistics-grid .value {
  overflow-wrap: anywhere;
  font-size: var(--text-xl);
}
.statistics-grid .statistics-amount {
  font-size: var(--text-xl);
}
@media (max-width: 767px) {
  .statistics-grid {
    grid-template-columns: 1fr;
  }
  .statistics-grid .value {
    font-size: var(--text-xl);
  }
}
.statistics-grid .stat {
  display: block;
  padding: var(--space-5);
}
.statistics-grid .stat p {
  display: block;
  font-size: var(--text-sm);
  line-height: 1.6;
  margin: var(--space-2) 0 0;
}
.statistics-grid .stat .value {
  margin: var(--space-3) 0;
}
.statistics-grid .stat .eyebrow {
  margin: 0;
}
@media (max-width: 767px) {
  .statistics-grid .stat {
    padding: var(--space-4);
  }
}
.customer-qr {
  margin: var(--space-5) 0 0;
  padding: var(--space-5);
  border: 1px solid var(--line);
  background: var(--paper);
  max-width: 440px;
}
.customer-qr figcaption p {
  font-size: var(--text-sm);
  line-height: 1.6;
  margin: var(--space-2) 0 var(--space-4);
}
.customer-qr canvas {
  display: block;
  width: 256px;
  max-width: 100%;
  height: auto;
  margin: 0 0 var(--space-4);
}
.customer-qr canvas[hidden] {
  display: none;
}
.company-presentation {
  min-width: 0;
  overflow-wrap: anywhere;
}
.company-banner,
.company-color-preview {
  border-radius: 6px;
  padding: var(--space-4) var(--space-5);
  font-size: var(--text-md);
  overflow-wrap: anywhere;
}
.company-contact {
  margin: var(--space-4) 0;
  font-size: var(--text-xs);
}
.company-contact p {
  margin: var(--space-1) 0;
}
.company-description {
  font-size: var(--text-sm);
}
.company-source {
  font-size: var(--text-xs);
  color: var(--muted);
  margin: var(--space-4) 0 0;
}
.company-editor {
  border-top: 1px solid var(--line);
  margin-top: var(--space-6);
  padding-top: var(--space-5);
}
.company-editor input,
.company-editor textarea {
  min-width: 0;
  max-width: 100%;
}
.company-editor .checkbox-label {
  align-items: flex-start;
  line-height: 1.65;
}
.company-editor input[type=checkbox] {
  flex-shrink: 0;
}
.company-color-row {
  display: flex;
  align-items: start;
  gap: var(--space-5);
}
.company-color-row > .field:first-child {
  flex: 1;
}
.company-color-row input[type=color] {
  width: 74px;
  height: var(--control-md);
  padding: var(--space-1);
}
.company-color-preview span {
  display: block;
  font-size: var(--text-xs);
  margin-top: var(--space-2);
}
.company-editor .btn {
  white-space: normal;
}
.portal-company > .company-presentation {
  flex: 1;
}
.portal-company > small {
  flex: 0 0 130px;
}
.review-snapshot .company-presentation {
  margin: var(--space-5) 0;
}
@media (max-width: 767px) {
  .customer-qr {
    padding: var(--space-4);
  }
  .company-banner,
  .company-color-preview {
    padding: var(--space-4);
  }
  .portal-company > .company-presentation {
    margin-bottom: var(--space-5);
  }
}
.company-logo-image {
  display: block;
  width: 180px;
  height: 80px;
  max-width: 100%;
  object-fit: contain;
  object-position: left center;
  background: #fff;
  margin: 0 0 var(--space-4);
}
.company-logo-error {
  font-size: var(--text-xs);
  color: var(--danger);
  margin: 0 0 var(--space-4);
}
.company-logo-picker {
  padding: var(--space-5) 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.company-logo-picker h3 {
  margin-top: 0;
}
.company-logo-picker > .field {
  margin-top: var(--space-5);
}
.company-logo-picker input[type=file] {
  width: 100%;
  font-size: var(--text-xs);
  padding: var(--space-1);
}
.company-logo-picker .notice {
  overflow-wrap: anywhere;
}
.company-logo-picker .notice p:last-child {
  margin-bottom: 0;
}
.reference-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
  margin-block: var(--space-5);
}
.reference-card,
.reference-details {
  min-width: 0;
  overflow-wrap: anywhere;
}
.reference-card h2 {
  margin-block: var(--space-4);
}
.reference-tags {
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-block: var(--space-4);
}
.reference-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(130px, 220px) auto;
  align-items: end;
  gap: var(--space-4);
}
.reference-search + .muted {
  margin: var(--space-5) 0 0;
}
.reference-search + .muted + .reference-grid {
  margin-top: var(--space-3);
}
.reference-editor input[type=date] {
  min-width: 0;
  max-width: 100%;
}
.reference-editor .form-footer {
  flex-wrap: wrap;
  gap: var(--space-3);
}
@media (max-width: 767px) {
  .reference-grid,
  .reference-search {
    grid-template-columns: minmax(0, 1fr);
  }
  .reference-editor .btn {
    white-space: normal;
    max-width: 100%;
  }
  .reference-editor .form-footer .btn {
    flex: 1 1 180px;
  }
}
.reference-heading {
  min-width: 0;
  max-width: 100%;
}
.reference-heading h1 {
  overflow-wrap: anywhere;
}
.reference-tags .badge {
  white-space: normal;
  max-width: 100%;
  overflow-wrap: anywhere;
}
.reference-selected {
  display: grid;
  gap: var(--space-3);
  margin-block: var(--space-5);
}
.reference-picker .reference-search {
  grid-template-columns: minmax(0, 1fr) auto;
}
.reference-picker .reference-card h3,
.public-references h3 {
  overflow-wrap: anywhere;
}
.public-references {
  margin-block: var(--space-6);
}
.reference-usage {
  margin-block: var(--space-5);
}
@media (max-width: 767px) {
  .reference-picker .reference-search {
    grid-template-columns: minmax(0, 1fr);
  }
}
.reference-picker,
.reference-selected,
.reference-selected > .quiet-box {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}
.reference-selected {
  grid-template-columns: minmax(0, 1fr);
}
.reference-picker .btn {
  white-space: normal;
  max-width: 100%;
}
.customer-rot,
.rot-heading,
.rot-source,
.rot-record,
.rot-summary > .panel {
  min-width: 0;
  overflow-wrap: anywhere;
}
.rot-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-4);
  margin-block: var(--space-5);
}
.rot-summary h2 {
  font-size: var(--text-base);
  margin-bottom: var(--space-2);
}
.rot-value {
  font-size: var(--text-lg);
  font-weight: 650;
  overflow-wrap: anywhere;
}
.rot-summary .rot-value {
  font-size: var(--text-xl);
  letter-spacing: -0.5px;
  margin-bottom: var(--space-2);
}
.rot-explanation,
.rot-list,
.rot-record {
  margin-block: var(--space-5);
}
.rot-list .btn,
.rot-heading .btn,
.rot-record .btn {
  white-space: normal;
  max-width: 100%;
}
.rot-source .panel-heading {
  flex-wrap: wrap;
}
.rot-source h3 {
  overflow-wrap: anywhere;
}
.rot-explanation p:last-child {
  margin-bottom: 0;
}
@media (max-width: 1024px) {
  .rot-summary {
    grid-template-columns: minmax(0, 1fr);
  }
}
.site-visit-editor,
.visit-heading,
.visit-card,
.visit-details,
.visit-preparation {
  min-width: 0;
  overflow-wrap: anywhere;
}
.visit-heading h1,
.visit-card h2 {
  overflow-wrap: anywhere;
}
.visit-fields {
  border: 0;
  padding: 0;
  margin: 0;
  min-width: 0;
  display: grid;
  gap: var(--space-5);
}
.visit-row {
  min-width: 0;
  max-width: 100%;
  border: 1px solid var(--line, #d9ddd8);
  padding: var(--space-4);
  border-radius: 12px;
}
.visit-row legend {
  font-weight: 700;
  padding: 0 var(--space-2);
}
.site-visit-editor .form-footer,
.site-visit-editor .task-filters {
  flex-wrap: wrap;
}
.site-visit-editor .btn {
  max-width: 100%;
  white-space: normal;
}
.visit-details .quiet-box {
  margin-block: var(--space-3);
}
.visit-details dd,
.visit-details p,
.visit-details h3,
.visit-details h4,
.visit-details strong {
  overflow-wrap: anywhere;
  min-width: 0;
}
.visit-comparison {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
}
.visit-comparison > section {
  min-width: 0;
}
@media (max-width: 767px) {
  .visit-comparison {
    grid-template-columns: minmax(0, 1fr);
  }
  .visit-row {
    padding: var(--space-3);
  }
  .site-visit-editor .form-footer .btn {
    flex: 1 1 180px;
  }
  .site-visit-editor .field-row {
    grid-template-columns: minmax(0, 1fr);
  }
}
.site-visit-photos,
.visit-photo-card,
.visit-photo-view,
.visit-photo-list {
  min-width: 0;
  overflow-wrap: anywhere;
}
.visit-photo-card {
  border: 1px solid var(--line, #d9ddd8);
  padding: var(--space-4);
  border-radius: 12px;
  margin: var(--space-4) 0;
  display: grid;
  gap: var(--space-4);
}
.visit-photo-image {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 65vh;
  object-fit: contain;
  margin: var(--space-4) auto;
  background: #f1f3ef;
}
.site-visit-photos .task-filters,
.visit-photo-view .task-filters {
  flex-wrap: wrap;
}
.site-visit-photos .btn,
.visit-photo-view .btn {
  max-width: 100%;
  white-space: normal;
}
@media (max-width: 767px) {
  .visit-photo-card {
    padding: var(--space-3);
  }
}
.internal-margin {
  margin-bottom: var(--space-5);
  min-width: 0;
  overflow-wrap: anywhere;
}
.internal-margin h2 {
  margin-bottom: var(--space-3);
}
.margin-totals {
  margin: var(--space-4) 0;
  display: grid;
  gap: var(--space-3);
}
.margin-totals > div {
  display: flex;
  justify-content: space-between;
  gap: var(--space-3);
  flex-wrap: wrap;
}
.margin-totals dt {
  color: var(--muted);
}
.margin-totals dd {
  margin: 0;
  font-weight: 650;
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
}
.margin-options {
  border: 0;
  padding: 0;
  margin: var(--space-4) 0;
  min-width: 0;
}
.internal-margin .quiet-box {
  margin-top: var(--space-4);
}
.internal-margin details > summary {
  cursor: pointer;
}
.internal-margin > h3 {
  margin-top: var(--space-5);
}
.internal-margin > h3 + .margin-totals {
  margin-top: var(--space-2);
}
[data-job-cost-rate] .form {
  max-width: 560px;
}
.site-visit-voice {
  min-width: 0;
  overflow-wrap: anywhere;
}
.site-visit-voice audio {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: var(--space-3) 0;
}
.voice-card {
  border-top: 1px solid var(--line);
  padding-top: var(--space-5);
  display: grid;
  gap: var(--space-4);
}
.voice-card h3 {
  margin: 0;
}
.site-visit-voice input[type=file] {
  max-width: 100%;
  min-width: 0;
}
.site-visit-voice .quiet-box {
  min-width: 0;
}
.price-fieldset {
  border: 0;
  padding: 0;
  margin: 0;
  min-width: 0;
  display: grid;
  gap: var(--space-5);
}
.price-fields {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr));
  gap: var(--space-3) var(--space-5);
  margin: var(--space-5) 0;
}
.price-fields div {
  min-width: 0;
  overflow-wrap: anywhere;
}
.price-fields dt {
  font-size: var(--text-xs);
  color: var(--muted);
  margin-bottom: var(--space-1);
}
.price-fields dd {
  margin: 0;
}
.price-amount {
  font-size: var(--text-lg);
  overflow-wrap: anywhere;
}
.price-source {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  overflow-wrap: anywhere;
}
[data-price-row] {
  overflow-wrap: anywhere;
  min-width: 0;
}
.inquiry-panel,
.inquiry-heading,
.inquiry-public {
  min-width: 0;
  overflow-wrap: anywhere;
}
.inquiry-panel .panel-heading h2,
.inquiry-heading > div {
  min-width: 0;
}
.inquiry-panel dd {
  margin-left: 0;
  margin-bottom: var(--space-3);
}
.inquiry-panel dt {
  color: var(--muted);
  font-size: var(--text-xs);
}
.inquiry-panel + p.muted {
  margin-top: var(--space-4);
}
.field-error {
  color: var(--danger);
  font-size: var(--text-xs);
  font-weight: 500;
}
.customer-home,
.customer-home section,
.customer-home article {
  min-width: 0;
  overflow-wrap: anywhere;
}
.customer-home .btn {
  max-width: 100%;
  white-space: normal;
}
@media (pointer: coarse) {
  .inquiry-panel input:not([type=checkbox]),
  .inquiry-panel textarea,
  .login-form input {
    font-size: var(--text-md);
  }
}
.login-story a:focus-visible,
.next-card a:focus-visible,
.next-card button:focus-visible {
  outline-color: #ffc0aa;
}
.import-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 320px);
  gap: var(--space-5);
  align-items: start;
}
.import-main,
.import-upload {
  min-width: 0;
}
.import-upload {
  padding: var(--space-5);
}
.import-upload > p {
  max-width: 60ch;
  line-height: 1.8;
}
.import-upload .form {
  margin: var(--space-5) 0;
}
.import-file-icon {
  display: inline-flex;
  background: var(--surface-alt, #edf1ea);
  color: var(--ink, #263d30);
  padding: var(--space-4);
  border-radius: 16px;
  flex: none;
}
.import-file-heading {
  display: flex;
  gap: var(--space-4);
  align-items: center;
  padding-bottom: var(--space-5);
  border-bottom: 1px solid var(--line, #dedfd7);
}
.import-file-heading h2 {
  font-size: var(--text-lg);
  overflow-wrap: anywhere;
  margin: var(--space-1) 0 var(--space-2);
}
.import-file-heading .text-link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
}
.import-intro,
.import-review-head {
  padding: var(--space-6) 0 var(--space-3);
}
.import-intro h2,
.import-ready h2 {
  font-size: var(--text-lg);
  line-height: var(--leading-tight);
}
.import-intro p,
.import-ready p {
  line-height: 1.75;
}
.import-aside h2 {
  line-height: 1.25;
}
.import-steps {
  list-style: none;
  counter-reset: step;
  padding: 0;
  margin: var(--space-5) 0;
}
.import-steps li {
  counter-increment: step;
  position: relative;
  padding: 0 0 var(--space-5) var(--space-6);
}
.import-steps li:before {
  content: counter(step);
  position: absolute;
  left: 0;
  top: 0;
  border: 1px solid var(--line, #b6bfb1);
  width: 25px;
  height: 25px;
  border-radius: 50%;
  text-align: center;
  line-height: 25px;
  font-size: var(--text-xs);
}
.import-steps strong,
.import-steps span {
  display: block;
}
.import-steps span {
  font-size: var(--text-sm);
  margin-top: var(--space-1);
  line-height: 1.6;
}
.import-benefits {
  list-style: none;
  padding: 0;
  margin: var(--space-5) 0;
}
.import-benefits li {
  display: flex;
  gap: var(--space-3);
  align-items: flex-start;
  padding: var(--space-3) 0;
  border-bottom: 1px solid var(--line, #d4dcd0);
  line-height: 1.6;
}
.import-benefits svg {
  flex: none;
  margin-top: var(--space-1);
}
.import-section {
  padding: var(--space-5) 0;
  border-bottom: 1px solid var(--line, #dedfd7);
}
.import-section h3 {
  font-size: var(--text-base);
  margin: 0 0 var(--space-3);
}
.import-prose {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: var(--text-base);
  line-height: 1.85;
}
.import-price-row {
  border: 1px solid var(--line, #dedfd7);
  border-radius: 12px;
  padding: var(--space-5);
  margin-top: var(--space-4);
}
.import-price-row h4 {
  margin: var(--space-2) 0 var(--space-3);
  font-size: var(--text-md);
  overflow-wrap: anywhere;
}
.import-price-row dl {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--space-4);
  margin: var(--space-4) 0;
}
.import-price-row dt {
  font-size: var(--text-xs);
  color: var(--muted, #5f675d);
}
.import-price-row dd {
  font-size: var(--text-base);
  margin: var(--space-1) 0 0;
  font-weight: 600;
}
.import-price-row summary {
  font-size: var(--text-xs);
}
.import-total {
  display: flex;
  justify-content: space-between;
  gap: var(--space-4);
  flex-wrap: wrap;
  margin: var(--space-5) 0 0;
  padding: var(--space-5) 0 0;
  border-top: 1px solid var(--line, #dedfd7);
}
.import-total strong {
  font-size: var(--text-xl);
}
.import-checks {
  margin: var(--space-5) 0;
}
.import-checks ul {
  padding-left: var(--space-5);
  line-height: 1.8;
}
.import-checks li + li {
  margin-top: var(--space-2);
}
.import-confirm {
  margin: var(--space-5) 0;
  align-items: flex-start;
  line-height: 1.7;
}
.import-confirm input {
  flex: none;
  margin-top: var(--space-2);
}
.import-original {
  margin-top: var(--space-5);
  max-height: 70vh;
  overflow: auto;
}
.import-original > div {
  border-top: 1px solid var(--line, #dedfd7);
  padding: var(--space-4) 0;
}
.import-ready {
  padding: var(--space-6) 0;
}
.import-spinner {
  animation: import-spin 1.4s linear infinite;
  vertical-align: middle;
  margin-right: var(--space-2);
}
@keyframes import-spin {
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .import-spinner {
    animation: none;
  }
}
@media (max-width: 1024px) {
  .import-workspace {
    grid-template-columns: 1fr;
  }
  .import-aside {
    order: 2;
  }
  .import-original {
    max-height: 400px;
  }
}
@media (max-width: 520px) {
  .import-upload {
    padding: var(--space-4);
  }
  .import-file-heading {
    align-items: flex-start;
    gap: var(--space-3);
  }
  .import-file-icon {
    padding: var(--space-3);
  }
  .import-price-row {
    padding: var(--space-4);
  }
  .import-total {
    display: block;
  }
  .import-total strong {
    display: block;
    margin-top: var(--space-2);
  }
}
.import-main select {
  min-height: var(--control-md);
  width: 100%;
  padding: var(--space-2) var(--space-3);
  border: 1px solid var(--line);
  border-radius: var(--radius-control);
  color: var(--ink);
  background: var(--white);
  font-size: var(--text-base);
  line-height: 1.4;
}
@media (pointer: coarse), (max-width: 767px) {
  .import-main select {
    min-height: var(--control-lg);
  }
}
.import-select {
  position: relative;
  display: block;
}
.table-wrap[tabindex]:focus-visible {
  outline: 3px solid var(--focus);
  outline-offset: 4px;
}
.feedback-dialog {
  width: min(560px, calc(100vw - 28px));
  max-height: calc(100dvh - 32px);
  overflow: auto;
  overscroll-behavior: contain;
  border: 1px solid #dce3d6;
  border-radius: 16px;
  padding: var(--space-5);
  background: #fffdf9;
  color: var(--brand-ink);
  box-shadow: 0 20px 90px #263b332e;
  margin: auto;
}
.feedback-dialog::backdrop {
  background: #263b3345;
}
.feedback-dialog-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
}
.feedback-dialog-head .eyebrow {
  font-size: var(--text-xs);
}
.feedback-dialog h2 {
  font-size: var(--text-lg);
  line-height: 1.3;
  margin: 0 0 var(--space-3);
}
.feedback-dialog p {
  font-size: var(--text-xs);
  line-height: 1.85;
}
.feedback-dialog fieldset {
  border: 0;
  padding: 0;
  margin: var(--space-5) 0;
  display: grid;
  gap: var(--space-4);
  min-width: 0;
}
.feedback-dialog .field {
  font-size: var(--text-xs);
}
.feedback-dialog .field small,
.feedback-history > small {
  font-size: var(--text-xs);
  line-height: 1.8;
  color: #526449;
}
.feedback-history {
  display: grid;
  justify-items: start;
  border-top: 1px solid #dce3d6;
  margin-top: var(--space-5);
  padding-top: var(--space-3);
}
.feedback-receipt > svg {
  color: #526449;
  margin-bottom: var(--space-4);
}
@media (max-width: 767px) {
  .feedback-dialog {
    padding: var(--space-4);
  }
  .feedback-dialog h2 {
    font-size: var(--text-lg);
  }
  .feedback-dialog .form-footer {
    flex-wrap: wrap;
  }
}
.followup-summary {
  display: flex;
  align-items: flex-start;
  gap: var(--space-4);
  margin-top: var(--space-5);
}
.followup-summary > svg {
  flex: none;
  margin-top: var(--space-1);
  color: var(--muted);
}
.followup-summary > div {
  flex: 1;
  min-width: 0;
}
.followup-summary h2 {
  font-size: var(--text-lg);
  margin: var(--space-2) 0;
}
.followup-summary p {
  margin: var(--space-2) 0;
  overflow-wrap: anywhere;
}
.followup-summary > .btn {
  flex: none;
  align-self: center;
}
@media (max-width: 767px) {
  .followup-summary {
    flex-wrap: wrap;
  }
  .followup-summary > div {
    flex-basis: calc(100% - 42px);
  }
  .followup-summary > .btn {
    width: 100%;
  }
}
.followup-quick-parts {
  display: grid;
  gap: var(--space-5);
}
.followup-quick-part {
  min-width: 0;
}
.followup-quick-part h3 {
  margin: 0 0 var(--space-2);
}
.followup-quick-part p,
.followup-quick-mail dd {
  overflow-wrap: anywhere;
}
.followup-quick-mail {
  display: grid;
  gap: var(--space-2);
  margin: 0 0 var(--space-3);
}
.followup-quick-mail dt {
  font-weight: 600;
}
.followup-quick-mail dd {
  margin: 0;
}
.followup-quick-open h4 {
  margin: var(--space-4) 0 var(--space-1);
}
.followup-quick-part .btn {
  max-width: 100%;
  white-space: normal;
  text-align: left;
}
@media (min-width: 900px) {
  .followup-quick-parts {
    grid-template-columns: 1fr 1fr;
  }
}
.creation-veil {
  position: fixed;
  inset: 0;
  z-index: 2147483646;
  display: grid;
  place-items: center;
  padding: var(--space-5);
  background: rgba(12, 17, 14, 0.72);
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
}
.creation-box {
  background: #161d18;
  color: #e8ede4;
  width: min(100%, 600px);
  max-height: calc(100dvh - 40px);
  overflow: auto;
  border-radius: 22px;
  border: 1px solid #27322b;
  padding: var(--space-5);
  display: grid;
  gap: var(--space-4);
  box-shadow: 0 30px 80px -30px rgba(0, 0, 0, 0.85);
}
.creation-head {
  display: flex;
  align-items: center;
  gap: var(--space-3);
}
.creation-head h2 {
  color: #fff;
  font-size: var(--text-lg);
  margin: 0;
}
.creation-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--accent);
  flex: none;
  animation: creation-pulse 1.2s infinite;
}
@keyframes creation-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.35;
  }
}
.creation-close {
  margin-left: auto;
  background: none;
  border: 0;
  color: #9fb0a4;
  font-size: var(--text-sm);
  text-decoration: underline;
  text-underline-offset: 3px;
  padding: var(--space-2) 0;
  cursor: pointer;
}
.creation-stream {
  display: grid;
  gap: var(--space-3);
  font-size: var(--text-base);
  line-height: 1.55;
}
.creation-stream p {
  color: #c3cec3;
  margin: 0;
  max-width: 60ch;
}
.creation-stream p.now {
  color: #fff;
  font-weight: 600;
}
.creation-question {
  background: #1f2822;
  border: 1px solid #2f3a34;
  border-left: 3px solid var(--accent);
  border-radius: 14px;
  padding: var(--space-4);
  display: grid;
  gap: var(--space-3);
}
.creation-question h3 {
  color: #fff;
  margin: 0;
  font-size: var(--text-md);
  line-height: 1.3;
}
.creation-why {
  color: #b9c5ba;
  font-size: var(--text-sm);
  line-height: 1.55;
  margin: 0;
}
.creation-why q {
  font-style: italic;
}
.creation-count {
  font-size: var(--text-xs);
  letter-spacing: 1.4px;
  text-transform: uppercase;
  font-weight: 700;
  color: #9fb0a4;
  margin: 0;
}
.creation-use {
  background: #f6f5ef;
  color: #1a231d;
  border: 0;
  border-radius: 10px;
  padding: var(--space-3) var(--space-4);
  text-align: left;
  cursor: pointer;
  display: grid;
  gap: 2px;
}
.creation-use strong {
  font-size: var(--text-base);
}
.creation-use small {
  font-size: var(--text-sm);
  opacity: 0.75;
}
.creation-own {
  display: flex;
  gap: var(--space-2);
  flex-wrap: wrap;
}
.creation-own input {
  flex: 1;
  min-width: 160px;
  background: #121815;
  color: #fff;
  border: 1px solid var(--accent);
  border-radius: 10px;
  padding: var(--space-3) var(--space-3);
  font: inherit;
}
.creation-box .btn.secondary {
  background: transparent;
  border-color: #3a463f;
  color: #e8ede4;
}
.creation-words {
  display: grid;
  gap: var(--space-2);
}
.creation-words textarea {
  background: #121815;
  color: #fff;
  border: 1px solid var(--accent);
  border-radius: 10px;
  padding: var(--space-3) var(--space-3);
  font: inherit;
  resize: vertical;
}
.creation-words small {
  color: #9fb0a4;
  font-size: var(--text-sm);
  line-height: 1.5;
}
.creation-words .creation-close {
  margin-left: 0;
}
.creation-words-toggle {
  justify-self: start;
  background: none;
  border: 0;
  color: #c3cec3;
  font-size: var(--text-sm);
  text-decoration: underline;
  text-underline-offset: 3px;
  padding: var(--space-1) 0;
  cursor: pointer;
}
.creation-box .notice {
  background: #2a211c;
  border-color: #5a3a2c;
  color: #f2d9cd;
}
.docedit-fixed-value {
  margin: var(--space-2) 0 0;
  padding: var(--space-3) var(--space-3);
  background: var(--pale);
  border-radius: 8px;
  font-weight: 600;
}
.field-help {
  position: relative;
  display: inline-flex;
  align-items: center;
  vertical-align: middle;
  margin-left: 2px;
}
.docedit-settings .field-help,
.docedit-check + .field-help {
  margin-left: 0;
}
.field-help-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: none;
  color: var(--muted);
  cursor: pointer;
}
.field-help-toggle:hover,
.field-help-toggle[aria-expanded=true] {
  background: var(--pale);
  color: var(--ink);
}
.field-help-body {
  position: absolute;
  top: 26px;
  left: -4px;
  z-index: 30;
  width: max(240px, min(320px, 72vw));
  padding: var(--space-3) var(--space-3);
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: 10px;
  box-shadow: 0 10px 30px #263b3320;
  font-size: var(--text-xs);
  font-weight: 400;
  line-height: 1.6;
  color: var(--text);
  white-space: normal;
  text-align: left;
  text-transform: none;
  letter-spacing: 0;
}
.field-help-body strong {
  font-weight: 600;
}
.docedit-wish {
  grid-column: 1/-1;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  align-items: baseline;
}
.docedit-sent {
  grid-column: 1/-1;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
  align-items: center;
  justify-content: space-between;
}
.docedit-sent p {
  margin: 0;
  flex: 1 1 340px;
  min-width: 0;
}
.docedit-sent .btn {
  flex: none;
}
.docedit-wish a {
  text-decoration: underline;
}
.change-actions {
  flex-wrap: wrap;
  gap: var(--space-2);
}
.line-group th,
.line-group td {
  background: var(--pale);
  background-clip: padding-box;
  font-weight: 700;
  color: var(--ink);
  border-bottom: 0;
  padding-top: var(--space-3);
  padding-bottom: var(--space-3);
}
.line-group th {
  font-size: var(--text-xs);
  letter-spacing: 0.5px;
}
.data-table tbody + tbody .line-group th,
.data-table tbody + tbody .line-group td {
  border-top: 16px solid transparent;
}
.payment-plan {
  margin: 0;
  padding-left: var(--space-5);
  display: grid;
  gap: var(--space-2);
}
.payment-plan small,
.rate-card small {
  display: block;
  color: var(--muted);
  font-size: var(--text-sm);
}
.rate-card {
  margin: 0;
  padding-left: var(--space-5);
  display: grid;
  gap: var(--space-2);
}
@media (max-width: 767px) {
  .creation-box {
    border-radius: 18px;
    padding: var(--space-5) var(--space-4);
  }
  .creation-head h2 {
    font-size: var(--text-lg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .creation-dot {
    animation: none;
  }
}
.editor-modes {
  display: flex;
  gap: var(--space-1);
  margin: var(--space-4) 0;
}
.editor-modes button {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  min-height: var(--control-sm);
  border: 1px solid var(--line);
  background: var(--white);
  border-radius: var(--radius-control);
  padding: var(--space-1) var(--space-3);
  font-weight: 600;
  font-size: var(--text-sm);
  color: var(--muted);
}
.editor-modes button.active {
  background: var(--ink);
  border-color: var(--ink);
  color: var(--paper);
}
.docedit {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: var(--space-5);
  align-items: start;
}
.docedit-paper {
  min-width: 0;
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: var(--space-6);
  display: grid;
  gap: var(--space-5);
}
.docedit-paper input,
.docedit-paper textarea,
.docedit-paper select {
  font: inherit;
  color: inherit;
  background: transparent;
  border: 1px solid transparent;
  border-radius: var(--radius-control);
  padding: var(--space-2) var(--space-2);
  width: 100%;
}
.docedit-paper input:hover,
.docedit-paper textarea:hover,
.docedit-paper select:hover {
  border-color: var(--line);
}
.docedit-paper input:focus,
.docedit-paper textarea:focus,
.docedit-paper select:focus {
  border-color: var(--ink);
  background: var(--paper);
  outline: none;
}
.docedit-paper input:disabled,
.docedit-paper textarea:disabled,
.docedit-paper select:disabled {
  border-color: transparent;
  color: var(--text);
}
.docedit-head {
  display: flex;
  justify-content: space-between;
  gap: var(--space-5);
  align-items: flex-start;
  border-bottom: 1px solid var(--line);
  padding-bottom: var(--space-4);
}
.docedit-head strong {
  display: block;
  font-size: var(--text-lg);
  letter-spacing: -0.3px;
}
.docedit-head .muted {
  font-size: var(--text-sm);
}
.docedit-valid {
  display: grid;
  gap: 2px;
  font-size: var(--text-xs);
  color: var(--muted);
  text-align: right;
  min-width: 170px;
}
.docedit-paper .docedit-valid input {
  text-align: right;
}
.docedit-customer {
  display: flex;
  gap: var(--space-4);
  align-items: center;
  flex-wrap: wrap;
  font-size: var(--text-base);
}
.docedit-customer label {
  display: flex;
  gap: var(--space-2);
  align-items: center;
  color: var(--muted);
  font-size: var(--text-sm);
}
.docedit-paper .docedit-customer select {
  width: auto;
  min-width: 220px;
  color: var(--text);
  font-size: var(--text-base);
}
.docedit-paper .docedit-title {
  font-family: var(--font-display);
  font-size: var(--text-xl);
  line-height: var(--leading-tight);
  letter-spacing: -0.5px;
}
.docedit-text {
  resize: none;
  overflow: hidden;
  line-height: 1.75;
}
.docedit-lede {
  resize: none;
  overflow: hidden;
  font-size: var(--text-base);
  line-height: 1.8;
  max-width: 66ch;
}
.docedit-lines {
  display: grid;
  gap: var(--space-4);
}
.docedit-lines-head {
  display: flex;
  justify-content: space-between;
  font-size: var(--text-xs);
  letter-spacing: 1.4px;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--muted);
  border-bottom: 1px solid var(--line);
  padding-bottom: var(--space-2);
}
.docedit-group {
  display: grid;
  gap: 2px;
}
.docedit-group-head {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  margin-top: var(--space-3);
}
.docedit-paper .docedit-group-head input {
  flex: 1 1 auto;
  width: auto;
  font-weight: 700;
  font-size: var(--text-sm);
  letter-spacing: 0.4px;
  text-transform: uppercase;
  color: var(--muted);
}
.docedit-group-head span {
  white-space: nowrap;
  font-size: var(--text-sm);
  color: var(--muted);
  font-variant-numeric: tabular-nums;
}
.docedit-row {
  border-bottom: 1px solid color-mix(in srgb, var(--line) 60%, transparent);
  padding: 2px 0;
}
.docedit-row.flagged {
  background: #f6ecd6;
}
.docedit-row.fresh {
  animation: rowFresh 2.6s ease-out;
}
@keyframes rowFresh {
  0% {
    background: #e2eddc;
  }
  70% {
    background: #eff5ec;
  }
  100% {
    background: transparent;
  }
}
.docedit-save {
  position: fixed;
  right: 22px;
  bottom: calc(80px + env(safe-area-inset-bottom));
  z-index: 39;
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin: 0;
  padding: var(--space-2) var(--space-4);
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--ink);
  font-size: var(--text-sm);
  font-weight: 600;
  box-shadow: 0 8px 26px #263b3326;
}
.docedit-save svg {
  color: #3d6650;
  flex: none;
}
.docedit-save b {
  font-weight: 700;
}
.docedit-save small {
  color: var(--muted);
  font-weight: 500;
}
.docedit-save-line {
  width: 1px;
  height: 14px;
  background: var(--line);
}
.docedit-save-spin {
  width: 13px;
  height: 13px;
  border-radius: 50%;
  border: 2px solid #c7d3c2;
  border-top-color: var(--ink);
  animation: wordsSpin 0.8s linear infinite;
  flex: none;
}
.content:has(.docedit-save) {
  padding-bottom: calc(140px + env(safe-area-inset-bottom));
}
@media (max-width: 767px) {
  .docedit-save {
    left: 12px;
    right: auto;
    bottom: calc(88px + env(safe-area-inset-bottom));
    font-size: var(--text-xs);
    padding: var(--space-2) var(--space-3);
  }
}
@media (max-width: 420px) {
  .docedit-save small {
    display: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .docedit-row.fresh {
    animation: none;
    background: #eff5ec;
  }
  .docedit-save-spin {
    animation-duration: 2.4s;
  }
}
.docedit-row-main {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
.docedit-paper .docedit-row-title {
  flex: 1 1 auto;
  min-width: 0;
  width: auto;
}
.docedit-paper .docedit-qty {
  flex: 0 0 64px;
  width: 64px;
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.docedit-paper .docedit-unit {
  flex: 0 0 74px;
  width: 74px;
}
.docedit-paper .docedit-price {
  flex: 0 0 104px;
  width: 104px;
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.docedit-price.missing {
  background: #f6ecd6;
  border-color: #e2c47a;
}
.docedit-amount {
  width: 110px;
  text-align: right;
  font-weight: 700;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.docedit-more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-1);
  min-width: var(--control-sm);
  min-height: var(--control-sm);
  border: 0;
  background: none;
  padding: var(--space-1) var(--space-2);
  border-radius: var(--radius-control);
  color: var(--muted);
  flex: none;
}
@media (pointer: coarse) {
  .docedit-more {
    min-width: var(--control-lg);
    min-height: var(--control-lg);
  }
}
.docedit-more:hover {
  background: var(--pale);
  color: var(--ink);
}
.docedit-row-note {
  margin: 0 0 var(--space-2) var(--space-2);
  font-size: var(--text-sm);
  color: var(--muted);
  max-width: 66ch;
}
.docedit-row-issue {
  margin: 0 0 var(--space-2) var(--space-2);
  font-size: var(--text-sm);
  color: #9a6a1f;
}
.docedit-row-open {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: var(--space-3);
  padding: var(--space-3) var(--space-2) var(--space-4);
  background: var(--paper);
  border-radius: 10px;
  margin: var(--space-1) 0 var(--space-3);
}
.docedit-row-open label {
  display: grid;
  gap: var(--space-1);
  font-size: var(--text-xs);
  color: var(--muted);
}
.docedit-paper .docedit-row-open input,
.docedit-paper .docedit-row-open select,
.docedit-paper .docedit-row-open textarea {
  width: 100%;
  border-color: var(--line);
  background: var(--white);
}
.docedit-row-open .docedit-wide {
  grid-column: 1/-1;
}
.docedit-check {
  display: flex !important;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-sm);
  color: var(--text);
}
.docedit-check input {
  width: auto;
}
.docedit-adds {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  align-items: flex-start;
}
.docedit-words {
  flex-basis: 100%;
  display: grid;
  gap: var(--space-3);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: var(--space-4);
  background: var(--surface, #fff);
}
.docedit-words textarea {
  width: 100%;
  font: inherit;
  border: 1px solid var(--line);
  border-radius: var(--radius-control);
  padding: var(--space-3) var(--space-3);
  resize: vertical;
}
.docedit-words .muted {
  margin: 0;
  font-size: var(--text-sm);
}
.docedit-words-result {
  display: grid;
  gap: var(--space-3);
  animation: wordsIn 0.3s ease-out;
}
@keyframes wordsIn {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.docedit-words-said {
  margin: 0;
  display: flex;
  align-items: baseline;
  gap: var(--space-2);
  flex-wrap: wrap;
  font-size: var(--text-sm);
  color: var(--muted);
}
.docedit-words-said q {
  color: var(--text);
}
.docedit-words-again {
  border: 0;
  background: none;
  padding: 0;
  font: inherit;
  font-size: var(--text-sm);
  font-weight: 600;
  color: var(--ink);
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.docedit-words-head {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin: var(--space-1) 0 0;
  font-size: var(--text-md);
}
.docedit-words-lead {
  margin: 0;
  font-size: var(--text-sm);
  color: var(--muted);
}
.docedit-words-none {
  margin: 0;
}
.docedit-words-result ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: var(--space-2);
}
.docedit-words-result label {
  display: flex;
  gap: var(--space-3);
  align-items: flex-start;
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--line);
  border-radius: 10px;
  cursor: pointer;
  background: var(--white);
  transition: border-color 0.15s, background 0.15s;
}
.docedit-words-result label:hover {
  border-color: #b9c5b4;
}
.docedit-words-result label.picked {
  border-color: var(--ink);
  background: var(--pale);
}
.docedit-words-result label input[type=checkbox] {
  width: 20px;
  height: 20px;
  min-height: 0;
  min-width: 0;
  flex: none;
  margin: 2px 0 0;
  padding: 0;
  accent-color: var(--ink);
}
.docedit-words-result label span {
  display: grid;
  gap: var(--space-1);
  min-width: 0;
}
.docedit-words-badge {
  justify-self: start;
  font-style: normal;
  font-size: var(--text-xs);
  font-weight: 700;
  letter-spacing: 0.9px;
  text-transform: uppercase;
  border-radius: 999px;
  padding: 2px var(--space-2);
  background: #e6ece2;
  color: #3d6650;
}
.docedit-words-badge.remove {
  background: #f4e3e0;
  color: var(--danger);
}
.docedit-words-badge.update {
  background: #e8e9e4;
  color: #4a5a4d;
}
.docedit-words-result small {
  color: var(--muted);
  font-size: var(--text-sm);
  line-height: 1.45;
}
.docedit-words-actions {
  margin-top: 2px;
  align-items: center;
}
.docedit-words-actions .btn {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
}
.docedit-words-working {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin: 0;
  font-size: var(--text-sm);
  color: var(--ink);
  font-weight: 600;
}
.docedit-words-spin {
  width: 15px;
  height: 15px;
  border-radius: 50%;
  border: 2px solid #c7d3c2;
  border-top-color: var(--ink);
  animation: wordsSpin 0.8s linear infinite;
  flex: none;
}
@keyframes wordsSpin {
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .docedit-words-result {
    animation: none;
  }
  .docedit-words-spin {
    animation-duration: 2.4s;
  }
}
.docedit-add {
  min-height: var(--control-sm);
  border: 1px dashed var(--line);
  background: none;
  border-radius: var(--radius-control);
  padding: var(--space-1) var(--space-3);
  font-size: var(--text-sm);
  font-weight: 600;
  color: var(--muted);
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  width: max-content;
}
.docedit-add:hover {
  border-color: var(--ink);
  color: var(--ink);
}
.docedit-totals {
  margin-left: auto;
  width: min(100%, 340px);
  display: grid;
  gap: var(--space-2);
  padding-top: var(--space-4);
  border-top: 2px solid var(--ink);
  font-variant-numeric: tabular-nums;
}
.docedit-totals div {
  display: flex;
  justify-content: space-between;
  gap: var(--space-4);
  font-size: var(--text-base);
}
.docedit-totals .rot {
  color: #3d6650;
}
.docedit-totals .big {
  font-family: var(--font-display);
  font-size: var(--text-xl);
  padding-top: var(--space-2);
  border-top: 1px solid var(--line);
  margin-top: var(--space-1);
  align-items: baseline;
}
.docedit-section h3,
.docedit-extra h3,
.docedit-terms h3 {
  font-family: var(--font-display);
  font-weight: var(--font-display-weight);
  font-size: var(--text-lg);
  margin: 0 0 var(--space-2);
}
.docedit-extra ul,
.docedit-extra ol {
  margin: 0;
  padding-left: var(--space-5);
  display: grid;
  gap: var(--space-2);
  font-size: var(--text-base);
}
.docedit-extra small {
  display: block;
  color: var(--muted);
  font-size: var(--text-sm);
}
.docedit-terms dl {
  display: grid;
  grid-template-columns: 150px 1fr;
  gap: var(--space-2) var(--space-4);
  align-items: start;
  font-size: var(--text-base);
}
.docedit-terms dt {
  color: var(--muted);
  font-size: var(--text-sm);
  padding-top: var(--space-2);
}
.docedit-terms dd {
  margin: 0;
}
.docedit-rail {
  position: sticky;
  top: 20px;
  display: grid;
  gap: var(--space-3);
}
.docedit-card {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: var(--space-4);
  display: grid;
  gap: var(--space-3);
}
.docedit-sum {
  display: grid;
  gap: 2px;
}
.docedit-sum span {
  font-size: var(--text-xs);
  letter-spacing: 1.4px;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--muted);
}
.docedit-sum strong {
  font-family: var(--font-display);
  font-size: var(--text-xl);
  font-variant-numeric: tabular-nums;
}
.docedit-sum small {
  color: var(--muted);
  font-size: var(--text-sm);
}
.docedit-todo {
  margin: 0;
  padding-left: var(--space-4);
  display: grid;
  gap: var(--space-1);
  font-size: var(--text-sm);
  color: #9a6a1f;
}
.docedit-status {
  font-size: var(--text-xs);
}
.docedit-card details summary {
  cursor: pointer;
  font-weight: 600;
  font-size: var(--text-sm);
  display: flex;
  justify-content: space-between;
  align-items: center;
  list-style: none;
}
.docedit-card details summary::-webkit-details-marker {
  display: none;
}
.docedit-card details[open] summary {
  margin-bottom: var(--space-3);
}
.docedit-card details label {
  margin-bottom: var(--space-2);
}
@media (max-width: 1024px) {
  .docedit {
    grid-template-columns: minmax(0, 1fr);
  }
  .docedit-paper {
    padding: var(--space-5) var(--space-4) var(--space-6);
    border-radius: 12px;
  }
  .docedit-title {
    font-size: var(--text-xl);
  }
  .docedit-rail {
    position: static;
    order: -1;
  }
  .docedit-row-main {
    flex-wrap: wrap;
  }
  .docedit-row-title {
    flex: 1 1 100%;
  }
  .docedit-amount {
    margin-left: auto;
  }
  .docedit-terms dl {
    grid-template-columns: 1fr;
  }
}
.portal-attachments {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: var(--space-3);
}
.portal-attachments li {
  display: grid;
  gap: 2px;
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--white);
}
.portal-attachments a {
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.portal-attachments small {
  color: var(--muted);
  font-size: var(--text-sm);
}
.docedit-files {
  display: grid;
  gap: var(--space-2);
}
.docedit-files li {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  justify-content: space-between;
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: var(--space-2) var(--space-3);
  font-size: var(--text-sm);
}
.docedit-files input[type=file] {
  font-size: var(--text-sm);
}
.docedit-rates {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: var(--space-2);
}
.docedit-extra .docedit-rates {
  padding-left: 0;
  margin-bottom: var(--space-3);
}
.docedit-rates li {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  border-bottom: 1px solid color-mix(in srgb, var(--line) 60%, transparent);
  padding: 2px 0;
}
.docedit-paper .docedit-rates li > input:first-child {
  flex: 0 0 150px;
  width: 150px;
  font-size: var(--text-sm);
  color: var(--muted);
}
.docedit-paper .docedit-rates li > input:nth-child(2) {
  flex: 1 1 auto;
  width: auto;
}
.docedit-plan-steps {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: var(--space-2);
  counter-reset: plan;
}
.docedit-plan-steps li {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  border-bottom: 1px solid color-mix(in srgb, var(--line) 60%, transparent);
  padding: 2px 0;
}
.docedit-paper .docedit-plan-steps li > input:first-child {
  flex: 1 1 auto;
  width: auto;
}
.docedit-share {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  font-size: var(--text-sm);
  color: var(--muted);
}
.docedit-paper .docedit-share input {
  width: 56px;
  text-align: right;
}
.docedit-plan-amount {
  min-width: 92px;
  text-align: right;
  font-variant-numeric: tabular-nums;
  font-size: var(--text-sm);
}
.docedit-plan-sum {
  margin: var(--space-2) 0 0;
  font-size: var(--text-sm);
  color: var(--muted);
}
.docedit-plan-sum.off {
  color: var(--danger, #9b2c1f);
  font-weight: 600;
}
.docedit-plan-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  margin-top: var(--space-2);
}
.docedit-totals .basis {
  color: var(--muted);
  font-size: var(--text-sm);
}
.missed-check .missed-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-3);
}
.missed-check .missed-head h3 {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin: 0;
}
.missed-list {
  list-style: none;
  padding: 0;
  margin: var(--space-3) 0;
  display: grid;
  gap: var(--space-2);
}
.missed-list li {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-3);
  border: 1px solid var(--line);
  border-radius: 10px;
}
.missed-list li small {
  display: block;
  color: var(--muted);
  margin-top: 2px;
}
.send-check {
  margin-bottom: var(--space-4);
}
.send-check .missed-list li {
  flex-wrap: wrap;
}
.send-check .missed-list li > div:first-child {
  flex: 1 1 260px;
  min-width: 0;
}
.send-check-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
}
.send-check .missed-list .notice {
  margin: var(--space-2) 0 0;
}
.send-check-review {
  border-top: 1px solid var(--line);
  margin-top: var(--space-4);
  padding-top: var(--space-3);
}
.send-check-review h3 {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin: 0 0 var(--space-2);
}
.review-suggestions h4 {
  margin: var(--space-3) 0 0;
}
.review-suggestions .missed-list li {
  flex-wrap: wrap;
}
.review-suggestions .missed-list li > div:first-child {
  flex: 1 1 260px;
  min-width: 0;
}
.review-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
}
.docedit-row-check {
  color: #8a5a00;
}
.creation-all {
  margin-top: var(--space-2);
}
.docedit-lines-head {
  align-items: center;
  gap: var(--space-3);
}
.docedit-words-round {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin-left: auto;
  margin-right: var(--space-3);
  border: 0;
  background: none;
  padding: 0;
  font: inherit;
  font-size: var(--text-sm);
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
  color: var(--ink);
  cursor: pointer;
}
.docedit-words-round:disabled {
  opacity: 0.5;
  cursor: default;
}
.docedit-words-dot {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--ink);
  color: #fff;
  flex: none;
}
.docedit-words-round[aria-expanded=true] .docedit-words-dot {
  background: #3d6650;
}
@media (max-width: 560px) {
  .docedit-words-round {
    font-size: var(--text-xs);
    margin-right: var(--space-2);
  }
}
.agreement-checkbox {
  display: flex;
  gap: var(--space-3);
  align-items: flex-start;
  font-size: var(--text-sm);
  line-height: 1.5;
  margin: var(--space-4) 0;
  cursor: pointer;
}
.agreement-checkbox input {
  margin-top: var(--space-1);
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
}
.agreement-checkbox span {
  flex: 1;
  min-width: 0;
}
.agreement-checkbox a {
  text-decoration: underline;
}
.google-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-3);
  width: 100%;
  min-height: var(--control-md);
  padding: var(--space-2) var(--space-4);
  border: 1px solid #747775;
  border-radius: var(--radius-control);
  background: #fff;
  color: #1f1f1f;
  font-size: var(--text-sm);
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0.1px;
  transition: background 0.15s, box-shadow 0.15s;
}
.google-btn:hover {
  background: #f2f2f2;
  box-shadow: 0 1px 2px #3c40431f;
}
.google-btn svg {
  flex: none;
}
.google-btn.small {
  width: auto;
  display: inline-flex;
  min-height: var(--control-sm);
  padding: var(--space-1) var(--space-3);
  font-size: var(--text-xs);
}
@media (pointer: coarse), (max-width: 767px) {
  .google-btn,
  .google-btn.small {
    min-height: var(--control-lg);
  }
}
.or-divider {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  margin: var(--space-5) 0;
  color: var(--muted);
  font-size: var(--text-xs);
}
.or-divider:before,
.or-divider:after {
  content: "";
  flex: 1;
  border-top: 1px solid var(--line);
}
.or-divider + .form {
  margin-top: 0;
}
.question-main {
  min-width: 0;
}
.question-history {
  margin-top: var(--space-6);
  padding-top: var(--space-5);
  border-top: 1px solid var(--line);
}
.question-history > .message {
  margin: var(--space-4) 0;
}
.dialogue-contact-details > summary {
  cursor: pointer;
  font-weight: 650;
}
.dialogue-contact-details {
  margin: 0 0 var(--space-5);
  padding: var(--space-4) var(--space-4);
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--pale);
}
.dialogue-contact-details[open] > summary {
  margin-bottom: var(--space-4);
}
.dialogue-contact-details .panel {
  margin: 0 !important;
}
.customer-message-options {
  margin: var(--space-2) 0 var(--space-4);
}
.customer-message-options > summary {
  cursor: pointer;
  font-size: var(--text-xs);
  color: var(--muted);
}
.customer-message-options[open] > summary {
  margin-bottom: var(--space-4);
}
.customer-message-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
}
.wish-context {
  margin-bottom: var(--space-5);
}
.wish-context blockquote {
  margin: var(--space-4) 0;
  white-space: pre-wrap;
}
@media (max-width: 800px) {
  .question-main {
    padding: var(--space-4);
  }
}
.question-main > .dialogue-reply-form {
  border: 0;
  padding: 0;
  margin: 0;
}
.customer-message-heading > button {
  border: 0;
  background: transparent;
  padding: var(--space-2) 0 var(--space-2) var(--space-3);
  min-height: 44px;
  color: var(--muted);
  font: inherit;
  font-size: var(--text-xs);
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.docedit-paper,
.docedit-lines,
.docedit-group {
  grid-template-columns: minmax(0, 1fr);
}
.docedit-paper > *,
.docedit-rail,
.docedit-card,
.docedit-group,
.docedit-row,
.docedit-terms dd {
  min-width: 0;
}
.docedit-paper input,
.docedit-paper textarea,
.docedit-paper select {
  min-width: 0;
  max-width: 100%;
}
.docedit-amount {
  white-space: normal;
  overflow-wrap: anywhere;
  flex-shrink: 0;
}
.docedit-save {
  pointer-events: none;
}
.docedit-line-field {
  display: contents;
}
.docedit-line-field > span {
  display: none;
}
.docedit-lines-head {
  flex-wrap: wrap;
}
.docedit-rail {
  overflow-wrap: anywhere;
}
.docedit-card .btn {
  white-space: normal;
  text-align: center;
}
.docedit-paper .docedit-group-head input {
  min-width: 0;
}
.docedit-add {
  max-width: 100%;
  text-align: left;
  white-space: normal;
}
.docedit-add svg {
  flex-shrink: 0;
}
@media (max-width: 1280px) {
  .docedit {
    grid-template-columns: minmax(0, 1fr);
  }
  .docedit-rail {
    position: static;
    order: -1;
  }
}
@media (max-width: 1024px) {
  .docedit-row-main {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.4fr);
    gap: var(--space-2);
    align-items: end;
    padding: var(--space-3) 0;
  }
  .docedit-paper .docedit-row-title {
    grid-column: 1/-1;
    width: 100%;
    font-weight: 600;
  }
  .docedit-line-field {
    display: grid;
    gap: var(--space-1);
    min-width: 0;
  }
  .docedit-line-field > span {
    display: block;
    font-size: var(--text-xs);
    font-weight: 600;
    color: var(--muted);
    padding-left: var(--space-2);
  }
  .docedit-paper .docedit-qty,
  .docedit-paper .docedit-unit,
  .docedit-paper .docedit-price {
    width: 100%;
    min-height: 44px;
    text-align: left;
    border-color: var(--line);
  }
  .docedit-price-field {
    grid-column: 3;
  }
  .docedit-amount {
    grid-column: 1/3;
    width: auto;
    min-width: 0;
    white-space: normal;
    text-align: left;
    margin-left: var(--space-2);
    align-self: center;
    overflow-wrap: anywhere;
  }
  .docedit-more {
    grid-column: 3;
    justify-self: end;
    min-width: 44px;
    min-height: 44px;
  }
  .docedit-row-open {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .docedit-paper .docedit-customer select {
    min-width: 0;
    max-width: 100%;
  }
  .docedit-customer label {
    min-width: 0;
    max-width: 100%;
  }
  .docedit-paper .docedit-title {
    font-size: var(--text-xl);
  }
  .docedit-head {
    flex-wrap: wrap;
  }
  .docedit-totals div {
    flex-wrap: wrap;
    gap: var(--space-1) var(--space-3);
  }
  .docedit-totals div > span:last-child {
    margin-left: auto;
  }
  .docedit-files li,
  .docedit-plan-steps li,
  .docedit-rates li {
    flex-wrap: wrap;
    min-width: 0;
  }
  .docedit-paper .docedit-rates li > input:nth-child(2),
  .docedit-paper .docedit-plan-steps li > input:first-child {
    min-width: 0;
  }
  .docedit-lines-head > span:last-child {
    width: 100%;
    font-size: var(--text-xs);
    letter-spacing: .7px;
  }
  .docedit-words-round {
    margin: 0;
    min-height: 44px;
  }
  .docedit-add {
    min-height: 44px;
  }
}
@media (max-width: 767px) {
  .docedit-paper input,
  .docedit-paper textarea,
  .docedit-paper select {
    font-size: var(--text-md);
  }
  .docedit-paper .docedit-row-title {
    font-size: var(--text-md);
  }
  .docedit-row-note {
    font-size: var(--text-sm);
    margin-left: 0;
  }
  .docedit-terms dt {
    padding-top: var(--space-3);
  }
  .docedit-row-open {
    grid-template-columns: minmax(0, 1fr);
  }
}
.communication-refresh {
  margin: var(--space-3) 0;
  font-size: var(--text-sm);
  color: var(--muted);
}
.communication-refresh p {
  margin: 0 0 var(--space-2);
}
.communication-queue {
  margin-bottom: var(--space-5);
}
.communication-work {
  padding: var(--space-4) 0;
  border-top: 1px solid var(--line);
}
.communication-work:first-of-type {
  margin-top: var(--space-4);
}
.communication-work details {
  margin-top: var(--space-3);
}
.communication-work summary {
  cursor: pointer;
  min-height: 44px;
  display: flex;
  align-items: center;
}
.communication-work p,
.dialogue-thread .message,
.draft-sync {
  overflow-wrap: anywhere;
  min-width: 0;
}
.dialogue-thread > div {
  min-width: 0;
}
.channel-label {
  display: block;
  margin-bottom: var(--space-3);
  color: var(--muted);
  font-weight: 600;
}
.draft-sync {
  border-top: 1px solid var(--line);
  padding-top: var(--space-3);
  font-size: var(--text-sm);
}
.draft-sync p {
  margin: var(--space-2) 0;
}
.communication-demo {
  max-width: 1000px;
  margin: 0 auto;
  padding: var(--space-6) var(--space-5);
}
.communication-demo .message .text-link,
.communication-demo .message .btn {
  display: none;
}
@media (max-width: 600px) {
  .communication-queue .actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2);
  }
  .communication-queue .actions .btn {
    flex: 1 1 130px;
    white-space: normal;
    min-height: 44px;
  }
}
.dialogue-thread > div {
  display: flex;
  flex-direction: column;
}
@media (max-width: 600px) {
  .dialogue-thread {
    padding: var(--space-3);
  }
  .dialogue-thread .message {
    max-width: 96%;
  }
  .message-meta {
    flex-wrap: wrap;
  }
}
.communication-history .message {
  font-size: var(--text-base);
  line-height: 1.6;
}
.communication-history .message-meta {
  font-size: var(--text-xs);
}
.communication-demo .panel-heading > .text-link {
  display: none;
}
.communication-demo .question-history {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/product.css */
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.demo-entry {
  display: block;
  font-size: var(--text-xs);
  text-align: center;
  padding: var(--space-3) var(--space-2);
  margin: var(--space-3) 0;
  border: 1px dashed #a1ae98;
  border-radius: 9px;
  color: #4b5b43;
}
.workspace-shell .btn {
  font-size: var(--text-sm);
  min-height: var(--control-md);
  border-radius: var(--radius-control);
  padding: var(--space-2) var(--space-4);
}
.workspace-shell .btn.small {
  min-height: var(--control-sm);
  padding: var(--space-1) var(--space-3);
}
.workspace-shell .btn.tertiary {
  min-height: var(--control-sm);
  padding: var(--space-1) var(--space-3);
}
.workspace-shell .btn:not(:disabled):active {
  transform: translateY(1px);
}
.workspace-shell .page-head h1 {
  font-size: var(--text-xl);
  font-weight: 700;
  letter-spacing: -.5px;
  line-height: var(--leading-tight);
  margin-bottom: var(--space-2);
  overflow-wrap: anywhere;
}
.workspace-shell .page-head p {
  font-size: var(--text-sm);
  line-height: var(--leading-normal);
}
.workspace-shell .page-head .eyebrow {
  font-size: var(--text-xs);
  letter-spacing: 1.5px;
  margin-bottom: var(--space-2);
  overflow-wrap: anywhere;
}
.workspace-shell .panel {
  box-shadow: 0 2px 3px #253c3002;
}
.workspace-shell .panel-heading h2 {
  font-size: var(--text-md);
  font-weight: 700;
  letter-spacing: -.45px;
}
.workspace-shell .badge {
  border-radius: 5px;
  font-size: var(--text-xs);
  line-height: 1.5;
  padding: var(--space-1) var(--space-2);
}
.badge.draft {
  background: #efeee9;
  color: #65604f;
}
.badge.waiting {
  background: #faf0dc;
  color: #7b5a1c;
}
.workspace-shell h1[tabindex="-1"]:focus,
.workspace-shell h2[tabindex="-1"]:focus {
  outline: none;
}
.product-page-head {
  align-items: center;
  margin-bottom: var(--space-5);
}
.product-page-head > .btn {
  flex-shrink: 0;
}
.quiet-link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-xs);
  font-weight: 600;
  color: #506447;
  line-height: 1.5;
}
.quiet-link:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
}
.dashboard-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-4);
  margin: 0 0 var(--space-5);
}
.dashboard-metrics > div {
  position: relative;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: var(--space-1) var(--space-3);
  background: white;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: var(--space-5) var(--space-5);
  min-width: 0;
}
.metric-icon {
  height: 34px;
  width: 34px;
  background: #f2f4ed;
  border-radius: 8px;
  display: grid;
  place-items: center;
}
.dashboard-metrics > div > div {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.dashboard-metrics > div > div > span {
  font-size: var(--text-xs);
  color: var(--muted);
}
.dashboard-metrics strong {
  font-size: var(--text-xl);
  letter-spacing: -.5px;
  font-weight: 600;
  line-height: 1.4;
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
}
.dashboard-metrics small {
  grid-column: 2;
  font-size: var(--text-xs);
  color: #63705c;
  line-height: 1.5;
}
.dashboard-tasks .panel-heading {
  margin-bottom: var(--space-3);
}
.dashboard-tasks .eyebrow {
  font-size: var(--text-xs);
  margin-bottom: var(--space-2);
  display: block;
}
.dashboard-tasks .activity {
  grid-template-columns: 34px minmax(0, 1fr) auto;
  gap: var(--space-3);
}
.dashboard-tasks .activity .btn {
  font-size: var(--text-xs);
  min-height: var(--control-sm);
  padding: var(--space-1) var(--space-3);
}
.dashboard-tasks .empty {
  padding: var(--space-6) var(--space-3);
}
.dashboard-tasks .empty p {
  font-size: var(--text-xs);
}
.dashboard-tasks .empty h3 {
  font-size: var(--text-base);
}
.continue-card {
  display: block;
  background: var(--ink);
  color: #f8f8ef;
  padding: var(--space-5);
  border-radius: 14px;
  overflow-wrap: anywhere;
}
.continue-card > .eyebrow {
  display: block;
  color: #c7d3bb;
  font-size: var(--text-xs);
}
.continue-card > svg {
  color: #c7d3bb;
  margin: var(--space-1) 0 var(--space-4);
}
.continue-card h2 {
  font-family: var(--font-display);
  font-weight: var(--font-display-weight);
  font-size: var(--text-xl);
  line-height: 1.15;
  margin-bottom: var(--space-5);
  letter-spacing: 0;
}
.continue-card > span:last-child {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: var(--text-xs);
}
.continue-card:hover {
  background: #314b3b;
}
.continue-card:focus-visible {
  outline-color: var(--focus);
}
.shortcut-panel {
  padding: var(--space-5);
}
.shortcut-panel h2 {
  font-size: var(--text-base);
  margin-bottom: var(--space-4);
}
.shortcut-panel > a {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  border-top: 1px solid #edf0e7;
  padding: var(--space-3) 0;
  font-size: var(--text-xs);
}
.shortcut-panel > a > span {
  flex: 1;
}
.shortcut-panel > a:hover > span {
  text-decoration: underline;
  text-underline-offset: 4px;
}
.recent-panel {
  margin-top: var(--space-5);
}
.recent-quote {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) auto minmax(100px, auto) 16px;
  gap: var(--space-4);
  align-items: center;
  padding: var(--space-4) 0;
  border-top: 1px solid #edf0e7;
  font-size: var(--text-xs);
}
.recent-quote > div {
  min-width: 0;
  overflow-wrap: anywhere;
}
.recent-quote small {
  display: block;
  color: var(--muted);
  margin-top: var(--space-1);
  font-size: var(--text-xs);
}
.recent-quote:hover {
  background: #fafbf6;
}
.record-icon {
  width: 36px;
  height: 40px;
  border: 1px solid #e3e7df;
  border-radius: 8px;
  background: #fafbf7;
  display: grid;
  place-items: center;
  color: #607554;
  flex-shrink: 0;
}
.record-amount {
  font-variant-numeric: tabular-nums;
  text-align: right;
  white-space: nowrap;
  font-size: var(--text-xs);
  font-weight: 600;
}
.welcome-strip {
  padding: var(--space-6) var(--space-6);
  margin-bottom: var(--space-5);
  background: #eaf0e4;
  border: 1px solid #dfe6d6;
  border-radius: 16px;
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: var(--space-6);
}
.welcome-strip h2 {
  font-size: var(--text-xl);
  letter-spacing: -.5px;
  line-height: 1.2;
  font-weight: 600;
}
.welcome-strip h2 em {
  font-family: var(--font-display);
  font-weight: var(--font-display-weight);
  font-style: normal;
  font-size: var(--text-xl);
}
.welcome-strip > div > p {
  font-size: var(--text-xs);
  color: var(--muted);
  max-width: 440px;
  margin-bottom: var(--space-5);
}
.welcome-demo {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
  margin: var(--space-3) 0 0 var(--space-3);
  font-size: var(--text-xs);
  text-decoration: underline;
  text-underline-offset: 4px;
}
.welcome-steps {
  align-self: center;
  display: grid;
  gap: var(--space-4);
}
.welcome-steps > div {
  display: flex;
  align-items: flex-start;
  gap: var(--space-4);
}
.welcome-steps > div > span {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 1px solid #a6b39b;
  flex-shrink: 0;
  font-size: var(--text-xs);
}
.welcome-steps p {
  margin: 0;
  font-size: var(--text-xs);
  color: var(--muted);
}
.welcome-steps strong {
  display: block;
  font-size: var(--text-xs);
  color: var(--ink);
  margin-bottom: var(--space-1);
}
.first-quote {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 60px;
  min-height: 390px;
  padding: var(--space-7);
}
.first-quote h2 {
  font-family: var(--font-display);
  font-size: var(--text-xl);
  font-weight: var(--font-display-weight);
  letter-spacing: -.5px;
  line-height: 1.15;
  margin: var(--space-3) 0 var(--space-4);
}
.first-quote p {
  font-size: var(--text-xs);
  max-width: 410px;
  color: var(--muted);
  margin-bottom: var(--space-5);
}
.first-quote .quiet-link {
  display: block;
  margin-top: var(--space-4);
}
.document-motif {
  width: 145px;
  height: 184px;
  background: #fffefa;
  border: 1px solid #d8dfd0;
  border-radius: 5px;
  box-shadow: 7px 8px 0 #e9eddf;
  transform: rotate(-7deg);
  padding: var(--space-6) var(--space-5);
  position: relative;
  flex-shrink: 0;
}
.document-motif span {
  display: block;
  height: 5px;
  background: #dfe5d7;
  margin-bottom: var(--space-3);
}
.document-motif span:first-child {
  height: 10px;
  width: 50%;
  background: #3e5844;
  margin-bottom: var(--space-5);
}
.document-motif span:nth-child(3) {
  width: 70%;
}
.document-motif i {
  position: absolute;
  right: -17px;
  bottom: 14px;
  width: 42px;
  height: 42px;
  border: 6px solid var(--paper);
  border-radius: 50%;
  background: #d8e5ca;
}
.document-motif i:after {
  content: "";
  display: block;
  width: 12px;
  height: 7px;
  border-left: 2px solid var(--ink);
  border-bottom: 2px solid var(--ink);
  transform: rotate(-45deg);
  margin: var(--space-2) auto;
}
.quote-register {
  padding: var(--space-5);
}
.register-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  flex-wrap: wrap;
}
.filter-pills {
  display: flex;
  gap: var(--space-1);
  flex-wrap: wrap;
}
.filter-pills > button {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  border: 1px solid transparent;
  background: transparent;
  border-radius: var(--radius-control);
  padding: var(--space-1) var(--space-3);
  min-height: var(--control-sm);
  font-size: var(--text-xs);
  font-weight: 600;
  color: #5a6753;
}
.filter-pills > button > span {
  font-size: var(--text-xs);
  border-radius: 4px;
  padding: 1px var(--space-1);
  background: #ecefe7;
}
.filter-pills > button[aria-pressed=true] {
  background: #edf2e7;
  color: #294330;
  border-color: #d7e1cf;
}
.filter-pills > button:hover {
  background: #f1f3ec;
}
.register-search {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  position: relative;
  min-width: 190px;
  max-width: 100%;
}
.register-search svg {
  position: absolute;
  left: 12px;
  pointer-events: none;
}
.register-search input {
  padding-left: var(--space-6);
  min-height: var(--control-md);
  font-size: var(--text-xs);
}
.register-count {
  font-size: var(--text-xs);
  color: var(--muted);
  margin: var(--space-4) 0 0;
}
.quote-row-labels {
  display: grid;
  grid-template-columns: minmax(200px, 1.65fr) 140px 120px 95px;
  gap: var(--space-4);
  padding: var(--space-4) var(--space-6) var(--space-3) 0;
  color: var(--muted);
  font-size: var(--text-xs);
  text-transform: uppercase;
  letter-spacing: .8px;
}
.quote-row-labels > span:nth-child(3) {
  text-align: right;
}
.quote-record {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(200px, 1.65fr) 140px 120px 95px 18px;
  gap: var(--space-4);
  align-items: center;
  border: 0;
  border-top: 1px solid #e9ede4;
  padding: var(--space-3) 0;
  background: transparent;
  color: var(--ink);
  text-align: left;
  min-width: 0;
}
.quote-record:hover {
  background: #fafbf6;
}
.quote-record-name {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  min-width: 0;
}
.quote-record-name > div {
  min-width: 0;
  overflow-wrap: anywhere;
}
.quote-record-name strong {
  display: block;
  font-size: var(--text-xs);
  font-weight: 600;
}
.quote-record-name > div > span {
  display: block;
  font-size: var(--text-xs);
  color: var(--muted);
  margin-top: var(--space-1);
}
.quote-record > .badge {
  justify-self: start;
}
.record-date {
  color: var(--muted);
  font-size: var(--text-xs);
}
.editor-jumps {
  display: flex;
  gap: var(--space-3) var(--space-5);
  flex-wrap: wrap;
  margin: 0 0 var(--space-5);
}
.editor-jumps a {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-xs);
  color: var(--muted);
  min-height: 36px;
}
.editor-jumps a span {
  display: grid;
  place-items: center;
  border: 1px solid #cbd5c0;
  border-radius: 50%;
  height: 24px;
  width: 24px;
  font-size: var(--text-xs);
}
.editor-jumps a:hover {
  color: var(--ink);
}
.workspace-shell .quote-editor {
  grid-template-columns: minmax(0, 1fr) 315px;
}
.workspace-shell .quote-aside {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  position: static;
  min-width: 0;
}
.quote-summary {
  order: -2;
}
.workspace-shell .quote-aside > .quiet-box {
  margin: 0 !important;
}
.workspace-shell .quote-aside > .panel {
  margin: 0;
}
.workspace-shell .quote-editor .field {
  font-size: var(--text-xs);
}
.workspace-shell .quote-editor input,
.workspace-shell .quote-editor textarea,
.workspace-shell .quote-editor select {
  font-size: var(--text-sm);
}
.workspace-shell .quote-line-fields {
  grid-template-columns: minmax(100px, 1.4fr) minmax(60px, .6fr) minmax(60px, .6fr) minmax(80px, .9fr) 32px;
}
.workspace-shell .quote-line-title {
  font-size: var(--text-xs);
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: .7px;
}
.workspace-shell .quote-editor .panel {
  padding: var(--space-5);
}
.workspace-shell .section-tabs {
  gap: var(--space-5);
  flex-wrap: wrap;
}
.workspace-shell .section-tabs button,
.workspace-shell .section-tabs a {
  font-size: var(--text-xs);
}
.optional-panel {
  border: 1px solid var(--line);
  border-radius: 12px;
  background: white;
  min-width: 0;
}
.optional-panel + p {
  margin-top: var(--space-4);
}
.optional-panel > summary {
  padding: var(--space-4) var(--space-5);
  cursor: pointer;
  font-size: var(--text-xs);
  font-weight: 600;
}
.optional-panel > summary > small {
  margin-left: var(--space-3);
  font-weight: 400;
  color: var(--muted);
  font-size: var(--text-xs);
}
.optional-panel > .panel {
  border: 0;
  box-shadow: none !important;
  border-top: 1px solid var(--line);
  border-radius: 0 0 12px 12px;
}
.optional-panel > .internal-margin {
  padding: 0 var(--space-5) var(--space-5);
}
.workspace-shell .quote-editor [id] {
  scroll-margin-top: 24px;
}
.workspace-shell .back-link,
.product-demo .back-link {
  border: 0;
  background: none;
  align-items: center;
  padding: 0;
  min-height: var(--control-sm);
  margin: 0 0 var(--space-4);
}
.portal {
  max-width: 940px;
  padding-top: var(--space-6);
}
.portal-paper {
  border-radius: 14px;
  padding: var(--space-7);
  box-shadow: 0 10px 38px #253e3007;
}
.portal .portal-top {
  margin-bottom: var(--space-5);
}
.portal-company {
  padding-bottom: var(--space-5);
  margin-bottom: var(--space-6);
}
.portal h1 {
  font-size: var(--text-2xl);
  line-height: var(--leading-tight);
  overflow-wrap: anywhere;
}
.portal .portal-section {
  margin: var(--space-6) 0;
}
.portal .portal-section:last-child,
.portal .portal-section:last-child > :last-child {
  margin-bottom: 0;
}
.portal .portal-section h2 {
  font-size: var(--text-lg);
  margin-bottom: var(--space-4);
}
.portal .portal-section p {
  font-size: var(--text-base);
  line-height: 1.8;
}
.portal .portal-price {
  border: 1px solid #dbe3d1;
  border-radius: 12px;
  background: #eef3e8;
  padding: var(--space-5);
}
.portal .portal-actions .btn {
  min-height: var(--control-lg);
  font-size: var(--text-sm);
}
.portal .portal-actions .btn:first-child {
  grid-column: 1/-1;
}
.portal .data-table th {
  padding-left: 0;
  padding-right: var(--space-4);
}
.portal .data-table td {
  padding-left: 0;
  padding-right: var(--space-4);
}
.portal .data-table td:first-child {
  min-width: 180px;
}
.portal .portal-footer {
  font-size: var(--text-xs);
  line-height: 1.8;
}
.portal .company-description {
  max-width: 560px;
}
.portal .company-source {
  font-size: var(--text-xs);
}
.portal .form-section {
  padding-top: var(--space-6);
}
.login-form .login-demo-link {
  margin-top: var(--space-5);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  padding: var(--space-4) var(--space-4);
  border: 1px solid var(--line);
  border-radius: 10px;
  background: white;
  font-size: var(--text-xs);
}
.login-demo-link strong {
  display: block;
}
.login-demo-link small {
  display: block;
  color: var(--muted);
  margin-top: var(--space-1);
}
.login-demo-link:hover {
  background: #eef3e8;
}
.product-demo .demo-top-label {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
.demo-status-dot {
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #5e7c49;
}
.demo-sidebar-note {
  margin: auto var(--space-3) var(--space-5);
  padding: var(--space-5) 0 0;
  border-top: 1px solid #d4ddcb;
}
.demo-sidebar-note > .eyebrow {
  font-size: var(--text-xs);
}
.demo-sidebar-note p {
  font-family: var(--font-display);
  font-size: var(--text-xl);
  line-height: 1.25;
  letter-spacing: -.3px;
  color: #3d5434;
}
.demo-sidebar-note > span:last-child {
  color: #58694e;
  font-size: var(--text-xs);
}
.product-demo .sidebar-bottom {
  margin-top: 0;
}
.product-demo .page-head h1 em {
  font-size: var(--text-xl);
  line-height: 1;
  font-style: normal;
  letter-spacing: -.5px;
}
.example-notice {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-xs);
  color: #58674d;
  border: 1px solid #dfe5d7;
  background: #f0f4e9;
  border-radius: 7px;
  padding: var(--space-2) var(--space-3);
  margin: -8px 0 var(--space-5);
}
.example-notice svg {
  flex-shrink: 0;
}
.demo-feedback:empty {
  display: none;
}
.demo-feedback {
  font-size: var(--text-xs);
  background: #e8f0df;
  color: #30472b;
  padding: var(--space-3) var(--space-4);
  border-radius: 8px;
  margin-bottom: var(--space-5);
}
.demo-overview-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.8fr) minmax(255px, 1fr);
  gap: var(--space-5);
  margin: 0 0 var(--space-5);
}
.demo-feature-card {
  background: #e8eedf;
  border: 1px solid #dce4d2;
  border-radius: 16px;
  min-width: 0;
  padding: var(--space-6) var(--space-6) var(--space-6) var(--space-6);
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(160px, .85fr);
  gap: var(--space-5);
  align-items: center;
  overflow: hidden;
}
.demo-feature-card h2 {
  font-size: var(--text-xl);
  font-weight: 600;
  letter-spacing: -.5px;
  line-height: 1.15;
  margin: var(--space-4) 0;
}
.demo-feature-card h2 em {
  font-family: var(--font-display);
  font-size: var(--text-xl);
  font-style: normal;
  font-weight: var(--font-display-weight);
  letter-spacing: -.5px;
}
.demo-feature-card p {
  font-size: var(--text-xs);
  color: #526449;
  line-height: 1.8;
  max-width: 280px;
  margin-bottom: var(--space-5);
}
.demo-feature-card .eyebrow {
  font-size: var(--text-xs);
  color: #4f6344;
}
.demo-feature-card .btn {
  font-size: var(--text-xs);
  white-space: normal;
}
.demo-duration {
  display: block;
  font-size: var(--text-xs);
  color: #54674a;
  margin-top: var(--space-3);
}
.mini-offer {
  padding: var(--space-5) var(--space-4) var(--space-4);
  background: #fffefa;
  border: 1px solid #d7ddcc;
  border-radius: 4px;
  transform: rotate(4deg);
  box-shadow: 0 15px 24px #31452415;
  color: #31452d;
  min-width: 0;
  pointer-events: none;
}
.mini-offer-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-2);
  margin-bottom: var(--space-5);
}
.mini-offer-top > span:first-child {
  font-family: var(--font-display);
  font-size: var(--text-xl);
}
.mini-offer-top > span:last-child {
  font-size: var(--text-xs);
  letter-spacing: 1.1px;
}
.mini-offer h3 {
  font-family: var(--font-display);
  font-size: var(--text-xl);
  line-height: 1.02;
  font-weight: var(--font-display-weight);
  letter-spacing: -.4px;
  margin-bottom: var(--space-3);
}
.mini-offer > p {
  font-size: var(--text-xs);
  margin-bottom: var(--space-5);
}
.mini-lines {
  display: grid;
  gap: var(--space-2);
  font-size: var(--text-xs);
}
.mini-lines span {
  padding-bottom: var(--space-2);
  border-bottom: 1px solid #e9eadd;
}
.mini-total {
  display: flex;
  flex-direction: column;
  padding: var(--space-4) 0;
  gap: var(--space-1);
}
.mini-total > span {
  font-size: var(--text-xs);
}
.mini-total strong {
  font-size: var(--text-xl);
  font-weight: 500;
  letter-spacing: -.5px;
}
.mini-accept {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-xs);
  background: #eef3e7;
  padding: var(--space-2) var(--space-2);
  border-radius: 4px;
}
.demo-next {
  padding: var(--space-5) var(--space-5);
}
.demo-next .panel-heading {
  margin-bottom: var(--space-6);
}
.demo-next .panel-heading h2 {
  font-size: var(--text-base);
}
.demo-next-step {
  display: flex;
  gap: var(--space-3);
  margin: var(--space-5) 0;
}
.demo-next-step > span {
  width: 27px;
  height: 27px;
  flex-shrink: 0;
  display: grid;
  place-items: center;
  border: 1px solid #d9e1d0;
  border-radius: 50%;
  color: #68785b;
  font-size: var(--text-xs);
}
.demo-next-step h3 {
  font-size: var(--text-xs);
  margin: 1px 0 var(--space-1);
}
.demo-next-step p {
  font-size: var(--text-xs);
  color: #5e6d55;
  line-height: 1.65;
  margin: 0;
}
.demo-next-note {
  display: flex;
  gap: var(--space-2);
  border-top: 1px solid #e7ebdf;
  padding-top: var(--space-5);
  margin-top: var(--space-5);
}
.demo-next-note > svg {
  flex-shrink: 0;
  color: #5e7250;
}
.demo-next-note p {
  font-size: var(--text-xs);
  color: #5d6c52;
  line-height: 1.8;
  margin: 0;
}
.demo-quote-record {
  grid-template-columns: minmax(160px, 1fr) 150px 120px 18px;
}
.demo-footer {
  font-size: var(--text-xs);
  justify-content: space-between;
}
.demo-footer small {
  flex: 1 0 100%;
  font-size: var(--text-xs);
}
.demo-steps {
  list-style: none;
  padding: 0;
  display: flex;
  gap: var(--space-6);
  margin: 0 0 var(--space-5);
}
.demo-steps li {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-xs);
  color: #626f59;
}
.demo-steps li > span {
  display: grid;
  place-items: center;
  height: 25px;
  width: 25px;
  border: 1px solid #b5c2a8;
  border-radius: 50%;
  font-size: var(--text-xs);
}
.demo-steps .current {
  font-weight: 700;
  color: var(--ink);
}
.demo-steps .current > span {
  background: var(--ink);
  border-color: var(--ink);
  color: white;
}
.demo-steps .done > span {
  background: #e4eedb;
  border-color: #c4d4b5;
  color: #38532b;
}
.demo-editor-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: var(--space-5);
  align-items: start;
}
.demo-fieldset {
  border: 0;
  padding: 0;
  margin: 0;
  min-width: 0;
  display: grid;
  gap: var(--space-5);
}
.demo-fieldset > .panel {
  display: grid;
  gap: var(--space-5);
  padding: var(--space-6);
}
.editor-section-title {
  display: flex;
  gap: var(--space-3);
  align-items: flex-start;
}
.editor-section-title > span {
  display: grid;
  place-items: center;
  height: 28px;
  width: 28px;
  border-radius: 7px;
  background: #edf2e6;
  flex-shrink: 0;
  font-size: var(--text-xs);
}
.editor-section-title h2 {
  font-size: var(--text-md);
  margin: 0 0 var(--space-1);
  line-height: 1.2;
}
.editor-section-title p {
  font-size: var(--text-xs);
  color: var(--muted);
  margin: 0;
}
.demo-line {
  display: grid;
  gap: var(--space-3);
  border-top: 1px solid #e3e9dc;
  padding-top: var(--space-4);
}
.demo-line-amounts {
  display: grid;
  grid-template-columns: .65fr 1fr;
  gap: var(--space-4);
}
.demo-line label {
  font-size: var(--text-xs);
}
.demo-terms {
  font-size: var(--text-xs);
  color: var(--muted);
  margin: 0;
  line-height: 1.8;
}
.demo-editor-aside {
  position: sticky;
  top: 24px;
}
.demo-cost-card h2 {
  font-size: var(--text-xl);
  font-family: var(--font-display);
  font-weight: var(--font-display-weight);
  margin-bottom: var(--space-5);
}
.demo-main-price {
  display: block;
  font-size: var(--text-2xl);
  font-weight: 600;
  letter-spacing: -.6px;
  overflow-wrap: anywhere;
}
.demo-cost-card > .muted {
  font-size: var(--text-xs);
}
.demo-cost-card dl {
  border-top: 1px solid var(--line);
  padding-top: var(--space-4);
  margin: var(--space-5) 0;
}
.demo-cost-card dl > div {
  display: flex;
  justify-content: space-between;
  gap: var(--space-3);
  font-size: var(--text-xs);
  margin: var(--space-2) 0;
}
.demo-cost-card dd {
  margin: 0;
  font-variant-numeric: tabular-nums;
  text-align: right;
}
.demo-cost-card > .btn + .btn {
  margin-top: var(--space-3);
}
.demo-fineprint {
  font-size: var(--text-xs) !important;
  line-height: 1.75 !important;
  color: #64715a;
  margin: var(--space-4) 0 0;
}
.demo-assurance {
  display: flex;
  gap: var(--space-3);
  padding: var(--space-5) var(--space-3);
  color: #586c4e;
}
.demo-assurance svg {
  flex-shrink: 0;
}
.demo-assurance p {
  font-size: var(--text-xs);
  line-height: 1.8;
  margin: 0;
}
.demo-customer-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: var(--space-5);
  align-items: start;
}
.offer-document {
  background: #fffefb;
  border: 1px solid #dde3d4;
  border-radius: 12px;
  padding: var(--space-6) var(--space-7);
  box-shadow: 0 8px 26px #263b3304;
  overflow-wrap: anywhere;
  min-width: 0;
}
.offer-document-company {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding-bottom: var(--space-5);
  border-bottom: 1px solid #e2e6db;
}
.example-company-mark {
  display: grid;
  place-items: center;
  font-family: var(--font-display);
  font-size: var(--text-xl);
  background: #eaf0e0;
  height: 46px;
  width: 46px;
  border-radius: 6px;
  flex-shrink: 0;
}
.offer-document-company > div {
  flex: 1;
  min-width: 0;
}
.offer-document-company strong {
  display: block;
  font-size: var(--text-xs);
}
.offer-document-company > div > span {
  display: block;
  font-size: var(--text-xs);
  color: #637157;
  margin-top: var(--space-1);
}
.offer-document-company > .badge {
  font-size: var(--text-xs);
  flex-shrink: 0;
}
.offer-document-intro {
  padding: var(--space-6) 0 var(--space-5);
}
.offer-document-intro h2 {
  font-family: var(--font-display);
  font-size: var(--text-2xl);
  font-weight: var(--font-display-weight);
  line-height: 1.05;
  letter-spacing: -.6px;
  margin-bottom: var(--space-4);
}
.offer-document-intro p {
  font-size: var(--text-xs);
  line-height: 1.8;
  white-space: pre-wrap;
}
.offer-document-intro .offer-address {
  font-size: var(--text-xs);
  color: var(--muted);
  margin-bottom: var(--space-5);
}
.offer-document-section {
  padding: var(--space-5) 0;
  border-top: 1px solid #e2e6db;
}
.offer-document-section:last-child {
  padding-bottom: 0;
}
.offer-document-section h3 {
  font-size: var(--text-base);
  margin-bottom: var(--space-4);
}
.offer-document-section > p {
  font-size: var(--text-xs);
  line-height: 1.8;
  white-space: pre-wrap;
}
.offer-document-line {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  padding: var(--space-4) 0;
  border-bottom: 1px solid #e9eddf;
  font-size: var(--text-xs);
}
.offer-document-line > div {
  min-width: 0;
}
.offer-document-line > div > strong {
  display: block;
}
.offer-document-line > div > span {
  display: block;
  color: var(--muted);
  font-size: var(--text-xs);
  margin-top: var(--space-1);
}
.offer-document-line > strong {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.offer-document-total {
  padding: var(--space-5) var(--space-5);
  background: #edf2e5;
  border: 1px solid #dce4d1;
  border-radius: 9px;
  margin-top: var(--space-5);
}
.offer-document-total > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
}
.offer-document-total span {
  font-size: var(--text-xs);
}
.offer-document-total strong {
  font-size: var(--text-xl);
  letter-spacing: -.5px;
  font-weight: 600;
  white-space: nowrap;
}
.offer-document-total p {
  font-size: var(--text-xs);
  margin: var(--space-3) 0 0;
  color: #59694d;
}
.offer-practical {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4);
}
.offer-practical span {
  font-size: var(--text-xs);
  color: var(--muted);
}
.offer-practical p {
  font-size: var(--text-xs);
  margin: var(--space-1) 0;
}
.demo-customer-decision {
  position: sticky;
  top: 24px;
  min-width: 0;
}
.demo-customer-decision h2 {
  font-family: var(--font-display);
  font-size: var(--text-xl);
  font-weight: var(--font-display-weight);
  letter-spacing: -.5px;
  margin: var(--space-5) 0 var(--space-4);
}
.demo-customer-decision p {
  font-size: var(--text-xs);
  line-height: 1.8;
}
.decision-icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: #eaf0e0;
  color: #476339;
}
.demo-customer-decision .checkbox-label {
  align-items: flex-start;
  font-size: var(--text-xs);
  line-height: 1.7;
}
.demo-customer-decision .checkbox-label input {
  flex-shrink: 0;
  margin-top: var(--space-1);
}
.demo-customer-caption {
  font-size: var(--text-xs) !important;
  text-align: center;
  color: var(--muted);
  padding: 0 var(--space-4);
  margin: var(--space-4) 0;
}
.demo-success > span {
  display: grid;
  place-items: center;
  width: 55px;
  height: 55px;
  border-radius: 50%;
  background: #e4eed8;
  margin-bottom: var(--space-5);
}
.demo-success .eyebrow {
  font-size: var(--text-xs);
}
.demo-success h2 {
  margin-top: var(--space-3);
}
.demo-receipt {
  display: grid;
  gap: var(--space-1);
  padding: var(--space-4) 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  margin: var(--space-5) 0;
}
.demo-receipt > span {
  font-size: var(--text-xs);
}
.demo-receipt > strong {
  font-size: var(--text-xl);
  font-weight: 600;
}
.demo-receipt > small {
  font-size: var(--text-xs);
  color: var(--muted);
}
@media (min-width: 1600px) {
  .demo-feature-card {
    padding: var(--space-7);
  }
  .mini-offer {
    margin: var(--space-1) var(--space-3);
  }
  .demo-feature-card h2 {
    font-size: var(--text-xl);
  }
  .demo-feature-card h2 em {
    font-size: var(--text-xl);
  }
}
@media (max-width: 1024px) {
  .demo-overview-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .demo-next {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0 var(--space-5);
    padding: var(--space-5);
  }
  .demo-next .panel-heading {
    grid-column: 1/-1;
    margin-bottom: 0;
  }
  .demo-next-step {
    margin: var(--space-5) 0;
  }
  .demo-next-note {
    grid-column: 1/-1;
    margin: 0;
    padding-top: var(--space-4);
  }
  .mini-offer {
    max-width: 240px;
    justify-self: center;
    width: 100%;
  }
  .demo-feature-card {
    grid-template-columns: 1.2fr .8fr;
  }
  .dashboard-metrics > div {
    padding: var(--space-4) var(--space-4);
  }
  .dashboard-metrics strong {
    font-size: var(--text-xl);
  }
  .workspace-shell .quote-editor {
    grid-template-columns: minmax(0, 1fr) 275px;
  }
  .workspace-shell .quote-line-fields {
    grid-template-columns: 1fr 1fr 1fr 32px;
  }
  .workspace-shell .quote-line-fields > .field:first-child {
    grid-column: 1/-1;
  }
  .demo-customer-layout {
    grid-template-columns: minmax(0, 1fr) 250px;
  }
  .offer-document {
    padding: var(--space-6);
  }
  .offer-document-company {
    flex-wrap: wrap;
  }
  .offer-document-company > .badge {
    margin-left: 59px;
  }
  .offer-document-total > div {
    display: block;
  }
  .offer-document-total strong {
    display: block;
    margin-top: var(--space-2);
  }
  .quote-record {
    grid-template-columns: minmax(160px, 1fr) 110px 100px 18px;
  }
  .record-date {
    display: none;
  }
  .quote-row-labels {
    display: none;
  }
  .demo-quote-record {
    grid-template-columns: minmax(160px, 1fr) 135px 110px 18px;
  }
  .welcome-strip {
    padding: var(--space-5);
    gap: var(--space-5);
  }
  .welcome-strip h2 {
    font-size: var(--text-xl);
  }
  .welcome-strip h2 em {
    font-size: var(--text-xl);
  }
  .welcome-demo {
    display: flex;
    margin-left: 0;
  }
}
@media (max-width: 1024px) {
  .demo-editor-layout {
    grid-template-columns: minmax(0, 1fr);
  }
  .demo-editor-aside {
    position: static;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(200px, .7fr);
    gap: var(--space-5);
  }
  .demo-assurance {
    align-items: flex-start;
  }
  .workspace-shell .quote-editor {
    grid-template-columns: minmax(0, 1fr);
  }
  .workspace-shell .quote-aside {
    position: static;
  }
  .workspace-shell .quote-line-fields {
    grid-template-columns: minmax(100px, 1.4fr) minmax(60px, .6fr) minmax(60px, .6fr) minmax(80px, .9fr) 32px;
  }
  .workspace-shell .quote-line-fields > .field:first-child {
    grid-column: auto;
  }
  .dashboard-metrics {
    gap: var(--space-3);
  }
  .dashboard-metrics > div {
    grid-template-columns: 1fr;
    gap: var(--space-2);
  }
  .dashboard-metrics .metric-icon {
    display: none;
  }
  .dashboard-metrics small {
    grid-column: 1;
  }
  .demo-customer-layout {
    grid-template-columns: minmax(0, 1fr);
  }
  .demo-customer-decision {
    position: static;
  }
  .demo-customer-decision > .panel {
    padding: var(--space-6);
  }
  .offer-document-company > .badge {
    margin-left: 0;
  }
  .offer-document-total > div {
    display: flex;
  }
  .offer-document-total strong {
    margin-top: 0;
  }
  .first-quote {
    gap: var(--space-6);
    padding: var(--space-6);
  }
  .document-motif {
    width: 115px;
    height: 150px;
    padding: var(--space-5) var(--space-5);
  }
  .first-quote h2 {
    font-size: var(--text-xl);
  }
  .recent-quote {
    grid-template-columns: 32px minmax(0, 1fr) auto 18px;
    gap: var(--space-3);
  }
  .recent-quote > .record-amount {
    grid-column: 2;
    grid-row: auto;
    text-align: left;
  }
  .recent-quote > svg {
    grid-column: 4;
    grid-row: 1;
  }
  .quote-record {
    grid-template-columns: minmax(100px, 1fr) 100px 18px;
    gap: var(--space-3);
  }
  .quote-record > .badge {
    grid-column: 2;
    grid-row: 1;
  }
  .quote-record > .record-amount {
    grid-column: 2;
    grid-row: 2;
  }
  .quote-record-name {
    grid-row: 1/3;
  }
  .quote-record > .record-chevron {
    grid-column: 3;
    grid-row: 1/3;
  }
  .quote-record > .badge {
    white-space: normal;
  }
  .welcome-strip {
    grid-template-columns: minmax(0, 1fr);
  }
  .welcome-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-4);
  }
  .welcome-steps > div {
    display: block;
  }
  .welcome-steps p {
    margin-top: var(--space-3);
  }
}
@media (max-width: 767px) {
  .workspace-shell .page-head h1 {
    font-size: var(--text-xl);
    letter-spacing: -.5px;
  }
  .workspace-shell .page-head p {
    font-size: var(--text-sm);
  }
  .workspace-shell .page-head {
    gap: var(--space-4);
    flex-wrap: wrap;
    margin-bottom: var(--space-5);
  }
  .workspace-shell .page-head .eyebrow {
    font-size: var(--text-xs);
    margin-bottom: var(--space-2);
  }
  .workspace-shell .page-head > .btn {
    width: auto;
  }
  .workspace-shell .panel {
    padding: var(--space-4);
  }
  .dashboard-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-2);
    margin-bottom: var(--space-5);
  }
  .dashboard-metrics > div:last-child {
    grid-column: 1/-1;
  }
  .dashboard-metrics > div:last-child > div {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: var(--space-3);
    flex-wrap: wrap;
  }
  .dashboard-metrics > div:last-child > div > span {
    min-height: 0;
  }
  .dashboard-metrics > div {
    padding: var(--space-3) var(--space-3);
    border-radius: 9px;
    gap: 0;
  }
  .dashboard-metrics > div > div > span {
    font-size: var(--text-xs);
    line-height: 1.5;
    min-height: 27px;
  }
  .dashboard-metrics strong {
    font-size: var(--text-xl);
    letter-spacing: -.5px;
    line-height: 1.5;
  }
  .dashboard-metrics small {
    font-size: var(--text-xs);
    margin-top: var(--space-1);
  }
  .dashboard-tasks .activity {
    grid-template-columns: 30px minmax(0, 1fr);
  }
  .dashboard-tasks .activity > .btn {
    grid-column: 2;
    justify-self: start;
  }
  .dashboard-tasks .activity h3 {
    font-size: var(--text-xs);
  }
  .dashboard-tasks .panel-heading {
    gap: var(--space-3);
  }
  .dashboard-tasks .quiet-link {
    font-size: var(--text-xs);
  }
  .dashboard-tasks .empty {
    padding: var(--space-4) 0;
  }
  .recent-quote {
    grid-template-columns: 30px minmax(0, 1fr) auto;
    gap: var(--space-3);
  }
  .recent-quote > .badge {
    grid-column: 3;
    grid-row: 1;
    font-size: var(--text-xs);
  }
  .recent-quote > svg {
    display: none;
  }
  .recent-quote > .record-amount {
    grid-column: 2/4;
    grid-row: 2;
    font-size: var(--text-xs);
  }
  .recent-quote > div > strong {
    font-size: var(--text-xs);
  }
  .welcome-strip {
    padding: var(--space-5);
    gap: var(--space-5);
  }
  .welcome-strip h2 {
    font-size: var(--text-xl);
  }
  .welcome-strip h2 em {
    font-size: var(--text-xl);
  }
  .welcome-strip .eyebrow {
    font-size: var(--text-xs);
  }
  .welcome-strip .welcome-demo {
    font-size: var(--text-xs);
    margin-top: var(--space-4);
  }
  .welcome-steps {
    border-top: 1px solid #cfd9c3;
    padding-top: var(--space-4);
    gap: var(--space-3);
  }
  .welcome-steps strong {
    font-size: var(--text-xs);
  }
  .welcome-steps p {
    font-size: var(--text-xs);
  }
  .welcome-steps > div > span {
    height: 24px;
    width: 24px;
    font-size: var(--text-xs);
  }
  .first-quote {
    min-height: 0;
    flex-direction: column;
    padding: var(--space-6) var(--space-5) !important;
    gap: var(--space-6);
    text-align: center;
  }
  .first-quote h2 {
    font-size: var(--text-xl);
  }
  .document-motif {
    width: 100px;
    height: 127px;
    margin: var(--space-3) 0 0;
    padding: var(--space-5) var(--space-4);
  }
  .document-motif span:first-child {
    margin-bottom: var(--space-4);
  }
  .document-motif i {
    width: 35px;
    height: 35px;
    border-width: 4px;
    bottom: 9px;
  }
  .document-motif i:after {
    margin-top: var(--space-2);
  }
  .register-toolbar {
    display: grid;
    gap: var(--space-4);
  }
  .register-search {
    width: 100%;
  }
  .register-search input {
    font-size: var(--text-sm);
  }
  .filter-pills {
    gap: var(--space-1);
  }
  .filter-pills > button {
    padding: var(--space-2);
    font-size: var(--text-xs);
  }
  .quote-register .panel-heading {
    align-items: flex-start;
  }
  .quote-record {
    padding: var(--space-3) 0;
    gap: var(--space-2) var(--space-3);
    grid-template-columns: minmax(0, 1fr) auto;
  }
  .quote-record-name {
    grid-column: 1/-1;
    grid-row: 1;
    padding-right: var(--space-4);
    gap: var(--space-3);
  }
  .quote-record > .badge {
    grid-column: 1;
    grid-row: 2;
    margin-left: var(--space-7);
  }
  .quote-record > .record-amount {
    grid-column: 2;
    grid-row: 2;
    font-size: var(--text-xs);
  }
  .quote-record > .record-chevron {
    display: none;
  }
  .quote-record-name strong {
    font-size: var(--text-xs);
  }
  .quote-record-name > div > span {
    font-size: var(--text-xs);
  }
  .quote-record .record-icon {
    height: 36px;
  }
  .workspace-shell .quote-editor .panel {
    padding: var(--space-4);
  }
  .workspace-shell .quote-line-fields {
    grid-template-columns: 1fr 1fr 1fr 30px;
    gap: var(--space-2);
  }
  .workspace-shell .quote-line-fields > .field:first-child {
    grid-column: 1/-1;
  }
  .workspace-shell .quote-line-fields input {
    padding: var(--space-3) var(--space-2);
  }
  .workspace-shell .quote-editor .field-row {
    grid-template-columns: minmax(0, 1fr);
  }
  .workspace-shell .section-tabs {
    gap: var(--space-4);
    margin: 0 calc(-1*var(--space-4)) var(--space-5);
    padding: 0 var(--space-4);
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .workspace-shell .section-tabs::-webkit-scrollbar {
    display: none;
  }
  .workspace-shell .section-tabs a,
  .workspace-shell .section-tabs button {
    flex-shrink: 0;
    white-space: nowrap;
  }
  .workspace-shell .section-tabs button,
  .workspace-shell .section-tabs a {
    font-size: var(--text-xs);
  }
  .editor-jumps {
    gap: var(--space-2);
    margin-bottom: var(--space-4);
  }
  .editor-jumps a {
    font-size: var(--text-xs);
    gap: var(--space-1);
    flex: 1;
    align-items: flex-start;
  }
  .editor-jumps a span {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    font-size: var(--text-xs);
  }
  .optional-panel > summary {
    padding: var(--space-4);
    font-size: var(--text-xs);
  }
  .optional-panel > summary > small {
    font-size: var(--text-xs);
  }
  .portal {
    padding: var(--space-5) var(--space-4) var(--space-7);
  }
  .portal-paper {
    padding: var(--space-5) var(--space-4);
    border-radius: 12px;
  }
  .portal h1 {
    font-size: var(--text-2xl);
  }
  .portal .portal-company {
    margin-bottom: var(--space-5);
    padding-bottom: var(--space-5);
    flex-wrap: wrap;
  }
  .portal .portal-company > small {
    flex-basis: 100%;
  }
  .portal .portal-section {
    margin: var(--space-5) 0;
  }
  .portal .portal-section p {
    font-size: var(--text-sm);
  }
  .portal .portal-section h2 {
    font-size: var(--text-md);
  }
  .portal .portal-price {
    padding: var(--space-4);
  }
  .portal .totals {
    font-size: var(--text-xs);
  }
  .portal .total-row.grand {
    font-size: var(--text-lg);
    flex-wrap: wrap;
    gap: var(--space-2);
  }
  .portal .portal-actions {
    grid-template-columns: minmax(0, 1fr);
  }
  .portal .portal-actions .btn {
    min-height: var(--control-lg);
  }
  .portal .portal-top .brand {
    font-size: var(--text-xl);
  }
  .portal .portal-footer {
    font-size: var(--text-xs);
  }
  .portal .portal-company .company-logo-image {
    max-width: 155px;
  }
  .login-form {
    padding: var(--space-6) var(--space-5);
  }
  .login-form .login-demo-link {
    font-size: var(--text-xs);
  }
  .login-form .login-demo-link small {
    font-size: var(--text-xs);
  }
  .product-demo .sidebar {
    grid-template-columns: 1fr;
    gap: var(--space-4);
  }
  .product-demo .nav {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .product-demo .demo-sidebar-note {
    display: none;
  }
  .product-demo .topbar {
    flex-wrap: nowrap;
    padding: var(--space-3) var(--space-4);
  }
  .product-demo .topbar > span {
    flex: 1;
    font-size: var(--text-xs);
  }
  .product-demo .topbar > .inline {
    width: auto;
    gap: var(--space-2);
  }
  .product-demo .topbar .btn {
    font-size: var(--text-xs);
    min-height: 35px;
    padding: var(--space-2);
  }
  .product-demo .topbar .btn.tertiary {
    gap: var(--space-1);
  }
  .product-demo .topbar .demo-status-dot {
    display: none;
  }
  .example-notice {
    font-size: var(--text-xs);
    align-items: flex-start;
    margin: -8px 0 var(--space-5);
    line-height: 1.65;
    padding: var(--space-3) var(--space-3);
  }
  .example-notice svg {
    margin-top: 1px;
    width: 14px;
  }
  .product-demo .page-head h1 {
    font-size: var(--text-xl);
    line-height: 1.15;
    max-width: 310px;
  }
  .product-demo .page-head h1 em {
    font-size: var(--text-xl);
    display: block;
    margin-top: 2px;
  }
  .demo-feature-card {
    padding: var(--space-5) var(--space-5);
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-6);
  }
  .demo-feature-card h2 {
    font-size: var(--text-xl);
    margin: var(--space-3) 0;
  }
  .demo-feature-card h2 em {
    font-size: var(--text-xl);
  }
  .demo-feature-card p {
    max-width: 290px;
  }
  .mini-offer {
    width: 200px;
    max-width: none;
    justify-self: center;
    margin: var(--space-1) 0 var(--space-3);
    padding: var(--space-5);
    transform: rotate(3deg);
  }
  .mini-offer h3 {
    font-size: var(--text-xl);
  }
  .demo-next {
    display: block;
    padding: var(--space-5);
  }
  .demo-next .panel-heading {
    margin-bottom: var(--space-5);
  }
  .demo-next-step {
    margin: var(--space-4) 0;
  }
  .demo-next h3 {
    font-size: var(--text-xs);
  }
  .demo-next p {
    font-size: var(--text-xs);
  }
  .demo-next-note {
    margin-top: var(--space-5);
    padding-top: var(--space-5);
  }
  .demo-next-note p {
    font-size: var(--text-xs);
  }
  .demo-overview-grid {
    gap: var(--space-4);
    margin-bottom: var(--space-5);
  }
  .demo-steps {
    gap: var(--space-3);
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: var(--space-5);
  }
  .demo-steps li {
    font-size: var(--text-xs);
    gap: var(--space-1);
  }
  .demo-steps li > span {
    width: 22px;
    height: 22px;
    font-size: var(--text-xs);
  }
  .demo-editor-layout,
  .demo-editor-aside {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-4);
  }
  .demo-fieldset > .panel {
    padding: var(--space-5);
    gap: var(--space-4);
  }
  .demo-fieldset .field-row {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-4);
  }
  .editor-section-title h2 {
    font-size: var(--text-md);
  }
  .demo-line-amounts {
    grid-template-columns: .65fr 1fr;
    gap: var(--space-3);
  }
  .demo-line-amounts label {
    font-size: var(--text-xs);
  }
  .demo-assurance {
    padding: var(--space-1) var(--space-3);
  }
  .offer-document {
    padding: var(--space-5) var(--space-5);
  }
  .offer-document-company {
    gap: var(--space-3);
    flex-wrap: wrap;
  }
  .offer-document-company > div {
    flex: 1;
  }
  .offer-document-company > .badge {
    margin-left: 57px;
  }
  .offer-document-intro {
    padding: var(--space-6) 0 var(--space-5);
  }
  .offer-document-intro h2 {
    font-size: var(--text-xl);
  }
  .offer-document-intro .eyebrow {
    font-size: var(--text-xs);
  }
  .offer-document-section {
    padding: var(--space-5) 0;
  }
  .offer-document-section h3 {
    font-size: var(--text-base);
  }
  .offer-document-line {
    display: block;
    font-size: var(--text-xs);
  }
  .offer-document-line > strong {
    display: block;
    margin-top: var(--space-2);
  }
  .offer-document-total {
    padding: var(--space-5);
  }
  .offer-document-total > div {
    display: block;
  }
  .offer-document-total strong {
    display: block;
    font-size: var(--text-xl);
    margin-top: var(--space-2);
  }
  .offer-practical {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-2);
  }
  .demo-customer-layout {
    gap: var(--space-5);
  }
  .demo-customer-decision > .panel {
    padding: var(--space-5);
  }
  .demo-customer-heading h1 {
    font-size: var(--text-xl) !important;
  }
  .demo-customer-caption {
    margin-bottom: 0;
  }
  .demo-footer {
    line-height: 1.7;
  }
  .demo-feedback {
    font-size: var(--text-xs);
  }
  .demo-footer small {
    font-size: var(--text-xs);
  }
}
@media (max-width: 360px) {
  .dashboard-metrics {
    grid-template-columns: minmax(0, 1fr);
  }
  .dashboard-metrics > div {
    padding: var(--space-3) var(--space-4);
  }
  .dashboard-metrics > div > div {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-4);
  }
  .dashboard-metrics > div > div > span {
    min-height: 0;
    font-size: var(--text-xs);
  }
  .dashboard-metrics strong {
    font-size: var(--text-xl);
  }
  .dashboard-metrics small {
    font-size: var(--text-xs);
    margin-top: 0;
  }
  .welcome-strip {
    padding: var(--space-5);
  }
  .welcome-steps {
    grid-template-columns: minmax(0, 1fr);
  }
  .welcome-steps > div {
    display: flex;
    gap: var(--space-3);
  }
  .welcome-steps p {
    margin: 0;
  }
  .welcome-steps strong {
    font-size: var(--text-xs);
  }
  .welcome-steps > div > span {
    flex-shrink: 0;
  }
  .product-demo .topbar > span {
    font-size: var(--text-xs);
  }
  .product-demo .topbar .btn {
    font-size: var(--text-xs);
  }
  .demo-steps {
    gap: var(--space-2);
  }
  .demo-steps li {
    font-size: var(--text-xs);
  }
  .portal-paper {
    padding: var(--space-5) var(--space-4);
  }
  .portal h1 {
    font-size: var(--text-2xl);
  }
}
@media (pointer: coarse) {
  .workspace-shell input:not([type=checkbox]):not(.docedit-title),
  .workspace-shell textarea,
  .workspace-shell select {
    font-size: var(--text-md) !important;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .product-demo .demo-feature-card,
  .product-demo .offer-document {
    animation: paper-appear .35s ease-out both;
  }
  @keyframes paper-appear {
    from {
      transform: translateY(6px);
    }
    to {
      transform: translateY(0);
    }
  }
}
@media print {
  .product-demo {
    display: block;
    background: white;
  }
  .product-demo .sidebar,
  .product-demo .topbar,
  .product-demo .example-notice,
  .product-demo .demo-feedback,
  .product-demo .back-link,
  .product-demo .page-head,
  .product-demo .demo-steps,
  .product-demo .demo-customer-decision,
  .product-demo .demo-footer,
  .skip {
    display: none !important;
  }
  .product-demo .content {
    padding: 0;
    max-width: none;
  }
  .product-demo .demo-customer-layout {
    display: block;
  }
  .product-demo .offer-document {
    padding: var(--space-5);
    border: 0;
    box-shadow: none;
    animation: none;
  }
  .product-demo .offer-document-section {
    break-inside: avoid;
  }
}
.workspace-loading > p {
  font-size: var(--text-xs);
  color: var(--muted);
}
.workspace-loading > div > span,
.loading-metrics > span,
.loading-panel > span {
  display: block;
  border-radius: 7px;
  background: #e8ece1;
}
.loading-title {
  height: 30px;
  width: 60%;
  max-width: 420px;
  margin: var(--space-5) 0 var(--space-4);
}
.loading-description {
  height: 12px;
  width: 80%;
  max-width: 500px;
}
.loading-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-4);
  margin: var(--space-6) 0 var(--space-5);
}
.loading-metrics > span {
  height: 100px;
  background: #eef1e9;
  border: 1px solid #e0e5d8;
}
.loading-panel {
  padding: var(--space-5);
  border: 1px solid var(--line);
  border-radius: 14px;
  background: white;
  display: grid;
  gap: var(--space-5);
}
.loading-panel > span {
  height: 15px;
}
.loading-panel > span:nth-child(2) {
  width: 85%;
}
.loading-panel > span:last-child {
  width: 65%;
}
.job-detail-heading > div:first-child {
  min-width: 0;
  flex: 1;
}
.job-detail-heading h1 {
  overflow-wrap: anywhere;
  max-width: 720px;
}
.job-detail-heading > div:last-child {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  flex-wrap: wrap;
}
@media (max-width: 767px) {
  .job-detail-heading > div:last-child {
    margin-top: var(--space-4);
  }
  .job-detail-heading .badge {
    font-size: var(--text-xs);
  }
}
@media (max-width: 767px) {
  .job-detail-heading > div:last-child {
    position: relative;
    width: 100%;
  }
}
.demo-import-entry {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-5);
  padding: var(--space-4) var(--space-5);
  margin: 0 0 var(--space-5);
  border: 1px solid #dce4d2;
  border-radius: 10px;
  background: #f5f7ef;
}
.demo-import-entry strong {
  display: block;
  font-size: var(--text-sm);
  color: #30452c;
}
.demo-import-entry p {
  font-size: var(--text-xs);
  line-height: 1.7;
  color: #526449;
  margin: var(--space-1) 0 0;
}
.demo-import-entry .btn {
  flex-shrink: 0;
  font-size: var(--text-xs);
}
@media (max-width: 767px) {
  .demo-import-entry {
    align-items: flex-start;
    flex-direction: column;
    gap: var(--space-3);
    padding: var(--space-4);
  }
  .demo-import-entry .btn {
    min-height: var(--control-lg);
  }
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/dashboard.css */
.quote-start-choices {
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  gap: var(--space-4);
  margin-bottom: var(--space-5);
}
.quote-start-choice {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: var(--space-4);
  padding: var(--space-5);
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  min-width: 0;
}
.quote-start-choice > div {
  min-width: 0;
}
.quote-start-choice .eyebrow {
  display: block;
  font-size: var(--text-xs);
  line-height: 1.6;
  margin: 0 0 var(--space-2);
  color: #50614b;
}
.quote-start-choice h2 {
  font-size: var(--text-lg);
  letter-spacing: -.2px;
  line-height: var(--leading-tight);
  margin: 0 0 var(--space-3);
}
.quote-start-choice p {
  font-size: var(--text-xs);
  line-height: 1.8;
  color: #53604e;
  margin: 0;
  max-width: 390px;
}
.start-choice-icon {
  width: 44px;
  height: 48px;
  display: grid;
  place-items: center;
  background: #f3f5ef;
  border: 1px solid #dbe2d3;
  border-radius: 9px;
  color: #304c39;
}
.import-choice {
  background: #eaf0e3;
  border-color: #d8e2cd;
}
.import-choice h2 {
  font-family: var(--font-display);
  font-size: var(--text-xl);
  font-weight: var(--font-display-weight);
  letter-spacing: -.4px;
  margin-top: -4px;
}
.import-choice .start-choice-icon {
  background: #f8faf2;
  border-color: #ced9c1;
  box-shadow: 3px 3px 0 #dbe5d0;
}
.start-choice-action {
  grid-column: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  border-top: 1px solid #dce3d4;
  padding-top: var(--space-4);
  margin-top: 2px;
  font-size: var(--text-xs);
  font-weight: 700;
  color: #2b4534;
}
.quote-start-choice:hover {
  border-color: #8c9f7f;
  background: #fbfcf8;
}
.import-choice:hover {
  background: #e4eddc;
}
.quote-start-choice:focus-visible {
  outline: 3px solid var(--focus);
  outline-offset: 4px;
}
.resume-row {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) auto auto;
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-3) 0;
  border-top: 1px solid #e8ece2;
  min-width: 0;
}
.resume-row > div {
  min-width: 0;
}
.resume-row strong {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  overflow-wrap: anywhere;
  font-size: var(--text-sm);
  font-weight: 600;
  line-height: 1.6;
}
.resume-row small {
  display: block;
  color: var(--muted);
  font-size: var(--text-xs);
  line-height: 1.6;
  margin-top: var(--space-1);
}
.resume-row:hover strong {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.quote-empty-readonly {
  padding: var(--space-7) var(--space-5);
  text-align: center;
}
.quote-empty-readonly > svg {
  color: #637558;
}
.quote-empty-readonly h2 {
  font-size: var(--text-lg);
  margin: var(--space-4) 0 var(--space-3);
}
.quote-empty-readonly p {
  font-size: var(--text-sm);
  color: var(--muted);
}
.quote-list-start {
  margin-bottom: var(--space-5);
}
.quote-list-start > p {
  font-size: var(--text-xs);
  color: var(--muted);
  margin: 0 0 var(--space-4);
}
@media (max-width: 1024px) {
  .quote-start-choice {
    padding: var(--space-5);
    gap: var(--space-4);
    grid-template-columns: 36px minmax(0, 1fr);
  }
  .start-choice-icon {
    width: 36px;
    height: 41px;
  }
  .quote-start-choice h2 {
    font-size: var(--text-lg);
  }
  .import-choice h2 {
    font-size: var(--text-xl);
  }
}
@media (max-width: 767px) {
  .quote-start-choices {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-4);
    margin-bottom: var(--space-5);
  }
  .quote-start-choice {
    padding: var(--space-4);
    gap: var(--space-4) var(--space-4);
  }
  .quote-start-choice .eyebrow {
    font-size: var(--text-xs);
    letter-spacing: 1px;
  }
  .quote-start-choice p {
    font-size: var(--text-xs);
  }
  .import-choice h2 {
    font-size: var(--text-xl);
  }
  .start-choice-action {
    font-size: var(--text-xs);
    padding-top: var(--space-3);
  }
  .resume-row {
    grid-template-columns: 28px minmax(0, 1fr);
    gap: var(--space-2) var(--space-3);
    padding: var(--space-3) 0;
  }
  .resume-row .record-icon {
    width: 28px;
    height: 34px;
    align-self: start;
    margin-top: 2px;
  }
  .resume-row strong {
    font-size: var(--text-xs);
  }
  .resume-row small {
    font-size: var(--text-xs);
  }
}
.compact-choices {
  grid-template-columns: 1fr 1fr;
  gap: var(--space-3);
  margin-bottom: var(--space-3);
}
.compact-choices .quote-start-choice {
  padding: var(--space-4) var(--space-5);
  grid-template-columns: 36px minmax(0, 1fr);
  gap: var(--space-3);
  align-items: center;
  border-radius: 11px;
}
.compact-choices .start-choice-icon {
  height: 36px;
  width: 36px;
}
.compact-choices .quote-start-choice .eyebrow,
.compact-choices .start-choice-action {
  display: none;
}
.compact-choices .quote-start-choice h2 {
  font-family: inherit;
  font-size: var(--text-base);
  font-weight: 650;
  letter-spacing: -.2px;
  margin: 0 0 var(--space-1);
}
.compact-choices .quote-start-choice p {
  font-size: var(--text-xs);
  line-height: 1.6;
  margin: 0;
}
.progress-status {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-xs);
  font-weight: 650;
  line-height: 1.5;
  color: #526254;
}
.progress-status:before {
  content: "";
  width: 5px;
  height: 5px;
  flex: none;
  border-radius: 50%;
  background: #7a8c74;
}
.progress-status.warning {
  color: #805120;
}
.progress-status.warning:before {
  background: #ad742f;
}
.progress-status.positive {
  color: #3c613b;
}
.progress-status.positive:before {
  background: #598151;
}
.quote-register-progress .quote-row-labels {
  grid-template-columns: minmax(180px, 1fr) minmax(160px, .85fr) 152px;
  padding-right: 0;
}
.quote-register-progress .quote-record {
  grid-template-columns: minmax(180px, 1fr) minmax(160px, .85fr) 152px;
  gap: var(--space-5);
  padding: var(--space-4) 0;
}
.quote-record-name small {
  display: block;
  font-size: var(--text-xs);
  font-weight: 400;
  color: var(--muted);
  margin-top: var(--space-2);
}
.quote-record-name:hover strong {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.quote-record-progress {
  min-width: 0;
  display: grid;
  justify-items: start;
  gap: var(--space-1);
}
.quote-record-progress > a {
  display: flex;
  align-items: center;
  gap: var(--space-1);
  font-size: var(--text-xs);
  min-height: 26px;
  text-decoration: underline;
  text-decoration-color: #b9c6b2;
  text-underline-offset: 4px;
}
.quote-record-progress > a:hover {
  text-decoration-color: currentColor;
}
.register-results {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  margin-top: var(--space-4);
}
.register-results .register-count {
  margin: 0;
}
.register-results button {
  border: 0;
  background: none;
  padding: var(--space-1) 0;
  min-height: 26px;
  color: #526254;
  font: inherit;
  font-size: var(--text-xs);
}
.quote-register-progress .register-toolbar {
  align-items: flex-start;
  gap: var(--space-4);
}
.quote-register-progress .filter-pills {
  flex: 1;
}
.quote-register-progress .register-search {
  width: 220px;
}
@media (max-width: 767px) {
  .compact-choices {
    grid-template-columns: 1fr;
    gap: var(--space-2);
  }
  .compact-choices .quote-start-choice {
    padding: var(--space-4);
    grid-template-columns: 32px minmax(0, 1fr);
    gap: var(--space-3);
  }
  .compact-choices .quote-start-choice p {
    font-size: var(--text-xs);
  }
  .quote-register-progress {
    padding: var(--space-4);
  }
  .quote-register-progress .quote-row-labels {
    display: none;
  }
  .quote-register-progress .quote-record {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--space-3) var(--space-3);
  }
  .quote-register-progress .quote-record-name {
    grid-column: 1/-1;
    gap: var(--space-3);
  }
  .quote-register-progress .quote-record-progress {
    grid-column: 1;
    grid-row: 2;
  }
  .quote-register-progress .record-amount {
    grid-column: 2;
    grid-row: 2;
    align-self: end;
    font-size: var(--text-xs);
  }
  .quote-register-progress .record-icon {
    width: 30px;
    height: 34px;
    flex-shrink: 0;
  }
  .quote-register-progress .register-search {
    width: 100%;
    max-width: none;
  }
  .quote-register-progress .filter-pills {
    flex-basis: 100%;
  }
  .quote-register-progress .filter-pills > button {
    font-size: var(--text-xs);
    padding: var(--space-2);
    min-height: var(--control-lg);
  }
}
.dashboard-onboarding ol {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: var(--space-2);
}
.dashboard-onboarding li {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-3);
  border: 1px solid var(--line);
  border-radius: 9px;
  background: #fff;
}
.dashboard-onboarding li[data-done=true] {
  opacity: .65;
}
.dashboard-onboarding li svg {
  flex: none;
  color: #3e5845;
}
.dashboard-onboarding li > span {
  flex: 1;
  font-size: var(--text-sm);
  font-weight: 600;
}
.dashboard-onboarding li > span small {
  display: block;
  font-weight: 400;
  color: #58685b;
  font-size: var(--text-xs);
  margin-top: 2px;
}
.workspace-shell .quote-tabs {
  flex-wrap: nowrap;
  gap: var(--space-5);
  margin: -8px 0 var(--space-5);
  overflow-x: auto;
  scrollbar-width: none;
}
.workspace-shell .quote-tabs::-webkit-scrollbar {
  display: none;
}
.workspace-shell .quote-tabs a {
  flex-shrink: 0;
  white-space: nowrap;
  font-weight: 600;
}
@media (max-width: 767px) {
  .workspace-shell .quote-tabs {
    gap: var(--space-4);
    margin: -4px -16px var(--space-5);
    padding: 0 var(--space-4);
  }
}
.quote-register-progress .register-toolbar {
  position: sticky;
  top: 0;
  z-index: 5;
  background: #fff;
  padding: var(--space-2) 0 var(--space-3);
  margin: -8px 0 0;
  border-bottom: 1px solid var(--line);
}
.quote-register-progress .quote-record {
  padding: var(--space-3) 0;
  gap: var(--space-4);
  align-items: center;
}
.quote-register-progress .quote-record-name {
  gap: var(--space-3);
}
.quote-register-progress .record-icon,
.quote-register-progress .quote-record .record-icon {
  width: 28px;
  height: 30px;
}
.quote-register-progress .quote-record-name strong {
  font-size: var(--text-sm);
  line-height: 1.35;
}
.quote-register-progress .quote-record-name > div > span {
  font-size: var(--text-xs);
  margin-top: 1px;
}
.quote-register-progress .quote-record-progress {
  grid-auto-flow: column;
  align-items: center;
  justify-content: start;
  gap: var(--space-1) var(--space-4);
}
.quote-register-progress .quote-record-progress > a {
  min-height: 0;
}
.quote-register-progress .record-amount {
  display: grid;
  justify-items: end;
  gap: 1px;
  font-size: var(--text-sm);
  line-height: 1.35;
}
.quote-register-progress .record-amount small {
  font-size: var(--text-xs);
  font-weight: 500;
  color: var(--muted);
  white-space: nowrap;
}
@media (max-width: 767px) {
  .quote-register-progress .register-toolbar {
    top: 56px;
    gap: var(--space-3);
    grid-template-columns: minmax(0, 1fr);
    justify-content: stretch;
  }
  .quote-register-progress .filter-pills {
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
    margin: 0 -16px;
    padding: 0 var(--space-4);
  }
  .quote-register-progress .filter-pills::-webkit-scrollbar {
    display: none;
  }
  .quote-register-progress .filter-pills > button {
    flex-shrink: 0;
  }
  .quote-register-progress .quote-record {
    padding: var(--space-3) 0;
    gap: var(--space-2) var(--space-3);
  }
  .quote-register-progress .quote-record-progress {
    grid-auto-flow: row;
    gap: var(--space-1);
  }
  .quote-register-progress .record-amount {
    justify-items: start;
  }
}
.month-chart {
  margin: var(--space-4) 0 var(--space-2);
}
.month-chart svg {
  width: 100%;
  max-width: 720px;
  height: auto;
  display: block;
}
.month-chart-axis {
  stroke: #cfd6c9;
  stroke-width: 1;
}
.month-chart-base {
  fill: #3b5446;
}
.month-chart-plus {
  fill: #9db393;
}
.month-chart-minus {
  fill: #c98a6a;
}
.month-chart-value {
  font-size: var(--text-xs);
  fill: #3b5446;
  font-weight: 600;
}
.month-chart-label {
  font-size: var(--text-xs);
  fill: #58685b;
}
.month-chart figcaption {
  font-size: var(--text-xs);
  margin-top: var(--space-2);
}
@media (max-width: 767px) {
  .month-chart {
    overflow-x: auto;
    overscroll-behavior-x: contain;
  }
  .month-chart svg {
    width: 720px;
    max-width: none;
  }
}
.job-next-steps,
.customer-jobs,
.customer-edit {
  margin: var(--space-5) 0;
}
.next-step-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-6);
  margin: var(--space-5) 0;
}
.next-step-facts > div {
  min-width: 0;
  overflow-wrap: anywhere;
}
.next-step-facts h3 {
  font-size: var(--text-base);
  margin: 0 0 var(--space-3);
}
.next-step-facts p {
  margin: 0 0 var(--space-3);
}
.next-step-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin: var(--space-4) 0;
}
.start-status {
  padding: var(--space-4) var(--space-4);
  background: var(--pale);
  border-radius: 12px;
  margin: var(--space-4) 0;
}
.start-status p {
  margin: var(--space-2) 0 0;
}
.customer-job {
  padding: var(--space-4) 0;
  border-top: 1px solid var(--line);
}
.customer-job-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--space-4);
}
.customer-job h3 {
  margin: 0 0 var(--space-3);
}
.customer-latest-dialogue {
  margin: var(--space-3) 0;
}
.customer-edit summary {
  cursor: pointer;
  font-weight: 700;
}
.customer-edit[open] summary {
  margin-bottom: var(--space-5);
}
.workspace-shell .quote-tabs {
  overflow: visible;
  flex-wrap: wrap;
  align-items: center;
}
.quote-more {
  position: relative;
  margin-left: auto;
}
.quote-more summary {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  cursor: pointer;
  list-style: none;
  font-size: var(--text-xs);
  font-weight: 600;
  padding: var(--space-3) 0;
}
.quote-more summary::-webkit-details-marker {
  display: none;
}
.quote-more summary.active {
  color: var(--ink);
}
.quote-more nav {
  position: absolute;
  z-index: 30;
  right: 0;
  top: 100%;
  min-width: 220px;
  padding: var(--space-3);
  background: var(--white,#fff);
  border: 1px solid var(--line);
  border-radius: 12px;
  box-shadow: 0 12px 30px #18372c18;
  display: grid;
}
.workspace-shell .quote-more nav a {
  padding: var(--space-3);
  border: 0;
  border-radius: 8px;
}
.quote-more nav a:hover,
.quote-more nav a[aria-current=page] {
  background: var(--pale);
}
#ansvarig,
#forberedelser,
#fortsatt-arbete {
  scroll-margin-top: 28px;
}
@media (max-width: 767px) {
  .next-step-facts {
    grid-template-columns: 1fr;
    gap: var(--space-5);
  }
  .next-step-facts > div + div {
    padding-top: var(--space-5);
    border-top: 1px solid var(--line);
  }
  .customer-job-heading {
    display: block;
  }
  .customer-job-heading .badge {
    margin-bottom: var(--space-3);
  }
  .next-step-actions .btn {
    min-height: var(--control-lg);
  }
  .workspace-shell .quote-tabs {
    margin-left: 0;
    margin-right: 0;
    padding: 0;
    gap: var(--space-5);
  }
}
@media (max-width: 767px) {
  .dashboard-start-links a {
    display: inline-flex;
    align-items: center;
    min-height: var(--control-lg);
  }
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/guide.css */
.guided-tour {
  position: fixed;
  inset: 0;
  margin: 0;
  padding: 0;
  border: 0;
  width: 100vw;
  height: 100dvh;
  max-width: none;
  max-height: none;
  background: transparent;
  color: #f7f9f2;
  overflow: hidden;
}
.guided-tour::backdrop {
  background: rgba(247, 248, 242, .24);
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
.tour-highlight {
  position: absolute;
  pointer-events: none;
  border: 1.5px solid #304e3c;
  border-radius: 15px;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, .9);
}
.tour-pointer {
  position: absolute;
  width: 10px;
  height: 10px;
  background: #243c30;
  transform: rotate(45deg);
  pointer-events: none;
}
.tour-card {
  position: absolute;
  z-index: 1;
  max-height: calc(100dvh - 28px);
  overflow: auto;
  overscroll-behavior: contain;
  padding: var(--space-4) var(--space-4) var(--space-4);
  border: 1px solid #243c30;
  border-radius: 12px;
  background: #243c30;
  box-shadow: 0 8px 24px rgba(14, 29, 19, .2);
  text-align: left;
}
.tour-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  margin-bottom: var(--space-1);
}
.tour-progress {
  margin: 0;
  color: #cad8c7;
  font-size: var(--text-xs);
  line-height: 1.5;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}
.tour-close {
  display: grid;
  place-items: center;
  width: var(--control-sm);
  height: var(--control-sm);
  flex: none;
  border: 0;
  border-radius: var(--radius-control);
  background: transparent;
  color: #e2ebda;
  cursor: pointer;
  margin-right: -8px;
}
.tour-close:hover,
.tour-back:hover:not(:disabled),
.tour-skip:hover {
  background: #ffffff12;
}
.tour-card h2 {
  font-family: var(--font-ui);
  font-size: var(--text-md);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: -.2px;
  color: #f7f9f2;
  margin: 0 0 var(--space-2);
  outline: none;
}
.tour-card p {
  font-size: var(--text-xs);
  line-height: 1.7;
  color: #e0e8da;
  margin: 0 0 var(--space-4);
}
.tour-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2);
}
.tour-navigation {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
.tour-skip,
.tour-back,
.tour-next {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-1);
  font-family: inherit;
  font-size: var(--text-xs);
  line-height: 1.5;
  min-height: var(--control-md);
  padding: var(--space-2);
  border: 0;
  border-radius: var(--radius-control);
  cursor: pointer;
  white-space: nowrap;
}
.tour-skip,
.tour-back {
  background: transparent;
  color: #d5e0cf;
}
.tour-skip {
  margin-left: -8px;
}
.tour-back:disabled {
  opacity: .4;
  cursor: default;
}
.tour-next {
  background: #f3f6ed;
  color: #243c30;
  font-weight: 700;
  padding-inline: var(--space-3);
  min-width: 59px;
}
.tour-next:hover {
  background: #e3ecd9;
}
.tour-card button:focus-visible {
  outline: 2px solid #efbc99;
  outline-offset: 2px;
}
.guide-save-message {
  font-size: var(--text-xs);
  line-height: 1.7;
  max-width: 370px;
  color: #4b5f3f;
}
.guide-save-message button {
  border: 0;
  background: none;
  font: inherit;
  text-decoration: underline;
  cursor: pointer;
  color: #243c30;
  margin-left: var(--space-2);
  padding: var(--space-2);
}
.demo-guide-entry {
  margin: 0 0 var(--space-4);
  display: flex;
  justify-content: flex-end;
}
@media (prefers-reduced-motion: reduce) {
  .guided-tour * {
    scroll-behavior: auto !important;
    animation: none !important;
    transition: none !important;
  }
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/quote-lines.css */
.compact-lines {
  container-type: inline-size;
  min-width: 0;
}
.line-list-meta {
  display: flex;
  justify-content: space-between;
  gap: var(--space-3);
  font-size: var(--text-xs);
  color: #526449;
  margin: 0 0 var(--space-3);
}
.line-list-meta > span:first-child {
  font-weight: 700;
  color: #30452c;
}
.line-list-scroll {
  max-height: 570px;
  overflow: auto;
  border: 1px solid #dce3d6;
  border-radius: 9px;
  scroll-padding: 45px;
  scrollbar-gutter: stable;
}
.line-column-head,
.line-item-main {
  display: grid;
  grid-template-columns: 24px minmax(130px, 1fr) 54px 48px 82px 96px 32px 32px;
  gap: var(--space-2);
  align-items: center;
  padding: var(--space-2);
}
.line-column-head {
  position: sticky;
  top: 0;
  z-index: 1;
  min-height: var(--control-sm);
  background: #f0f4e9;
  border-bottom: 1px solid #dce3d6;
  font-size: var(--text-xs);
  font-weight: 600;
  color: #506347;
}
.line-column-head > span:nth-child(5),
.line-column-head > span:nth-child(6) {
  text-align: right;
}
.line-item {
  border-bottom: 1px solid #e4e9df;
  background: #fff;
}
.line-item:last-child {
  border-bottom: 0;
}
.line-item[data-expanded=true] {
  background: #f8faf4;
}
.line-item-fields {
  display: contents;
}
.line-item-fields > label {
  min-width: 0;
}
.compact-lines .line-item-fields input {
  width: 100%;
  min-width: 0;
  border: 1px solid transparent;
  background: transparent;
  border-radius: 5px;
  padding: var(--space-1);
  font-size: var(--text-xs);
  line-height: 1.5;
  color: var(--brand-ink);
  min-height: var(--control-sm);
}
.compact-lines .line-item-fields input:hover:not(:disabled) {
  border-color: #c7d3bf;
  background: white;
}
.compact-lines .line-item-fields input:focus {
  border-color: #607854;
  background: white;
  outline-offset: 1px;
}
.compact-lines .line-item-fields input:disabled {
  opacity: 1;
  color: #526449;
  cursor: default;
}
.compact-lines .line-item-fields input[type=number] {
  appearance: textfield;
  -moz-appearance: textfield;
}
.compact-lines .line-item-fields input::-webkit-inner-spin-button,
.compact-lines .line-item-fields input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.line-item-fields > label:nth-child(4) > input {
  text-align: right;
}
.line-item-title input {
  font-weight: 600;
}
.line-index {
  font-size: var(--text-xs);
  color: #637458;
  text-align: center;
  font-variant-numeric: tabular-nums;
}
.line-subtotal {
  font-size: var(--text-xs);
  font-weight: 600;
  text-align: right;
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
  line-height: 1.5;
}
.line-expander summary,
.line-remove {
  display: grid;
  place-items: center;
  width: 32px;
  min-height: var(--control-sm);
  padding: 0;
  list-style: none;
  border: 0;
  border-radius: 5px;
  background: transparent;
  color: #506347;
  cursor: pointer;
}
.line-expander summary::-webkit-details-marker {
  display: none;
}
.line-expander summary:hover,
.line-remove:hover:not(:disabled) {
  background: #eaf0e2;
}
.line-expander[open] summary {
  background: #e3ecd9;
  color: #30452c;
}
.line-remove:disabled {
  cursor: default;
  opacity: .35;
}
.line-expander summary:focus-visible {
  outline: 3px solid var(--focus);
  outline-offset: 2px;
}
.line-detail-icon {
  display: flex;
}
.line-mobile-summary,
.line-mobile-chevron,
.line-field-label {
  display: none;
}
.line-note {
  font-size: var(--text-xs);
  color: #5a6e50;
  line-height: 1.6;
  margin: 0;
  padding: 0 var(--space-7) var(--space-2);
}
.line-item-details {
  padding: var(--space-4) var(--space-4) var(--space-5);
  border-top: 1px solid #e4e9df;
}
.line-item-details .field-row {
  gap: var(--space-4);
}
.line-item-details .field {
  font-size: var(--text-xs);
}
.line-item-details .notice {
  margin-top: 0;
}
.line-list-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  padding-top: var(--space-4);
}
.line-list-footer > span {
  font-size: var(--text-xs);
  color: #526449;
  max-width: 240px;
  text-align: right;
  line-height: 1.7;
}
.line-list-footer .btn {
  white-space: nowrap;
}
.editor-brand-link {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  border-top: 1px solid #dfe6d7;
  padding-top: var(--space-4);
  margin-top: var(--space-5);
}
.editor-brand-link > svg {
  flex: none;
  margin-top: var(--space-1);
}
.editor-brand-link strong {
  display: block;
  font-size: var(--text-xs);
}
.editor-brand-link p {
  font-size: var(--text-xs);
  line-height: 1.7;
  margin: var(--space-1) 0 var(--space-2);
}
.editor-brand-link a {
  font-size: var(--text-xs);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.compact-lines[data-details=false] .line-column-head,
.compact-lines[data-details=false] .line-item-main {
  grid-template-columns: 24px minmax(130px, 1fr) 54px 48px 82px 96px 32px;
}
.compact-lines[data-details=false] .line-column-head > span:nth-last-child(2),
.compact-lines[data-details=false] .line-expander {
  display: none;
}
@container (max-width:620px) {
  .compact-lines[data-details=false] .line-expander {
    display: block;
  }
  .compact-lines[data-details=false] .line-item-main {
    grid-template-columns: minmax(0, 1fr) 32px;
  }
  .line-column-head {
    display: none;
  }
  .line-list-scroll {
    max-height: none;
    overflow: visible;
    scrollbar-gutter: auto;
  }
  .line-item-main {
    grid-template-columns: minmax(0, 1fr) 32px;
    gap: var(--space-2);
    padding: var(--space-3);
  }
  .line-index {
    display: none;
  }
  .line-expander {
    grid-column: 1;
    grid-row: 1;
  }
  .line-expander summary {
    display: flex;
    width: 100%;
    gap: var(--space-3);
    min-height: var(--control-lg);
    justify-content: space-between;
    text-align: left;
    background: transparent !important;
  }
  .line-mobile-summary {
    display: grid;
    gap: var(--space-1);
    min-width: 0;
  }
  .line-mobile-summary strong {
    font-size: var(--text-xs);
    line-height: 1.5;
    overflow-wrap: anywhere;
  }
  .line-mobile-summary small {
    font-size: var(--text-xs);
    color: #526449;
    line-height: 1.7;
    overflow-wrap: anywhere;
  }
  .line-mobile-summary > span {
    font-size: var(--text-xs);
    font-weight: 600;
    font-variant-numeric: tabular-nums;
  }
  .line-mobile-chevron {
    display: block;
    flex: none;
  }
  .line-expander[open] .line-mobile-chevron {
    transform: rotate(180deg);
  }
  .line-detail-icon {
    display: none;
  }
  .line-remove {
    grid-column: 2;
    grid-row: 1;
    align-self: start;
    min-height: var(--control-md);
  }
  .line-item-fields {
    grid-column: 1/-1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-3);
    padding-top: var(--space-2);
  }
  .line-item-title {
    grid-column: 1/-1;
  }
  .line-field-label {
    display: block;
    font-size: var(--text-xs);
    font-weight: 500;
    color: #526449;
    margin-bottom: var(--space-1);
  }
  .compact-lines .line-item-fields input {
    font-size: var(--text-xs);
    background: white;
    border-color: #bdcbb2;
    padding: var(--space-2) var(--space-3);
    min-height: var(--control-md);
  }
  .line-item-fields > label:nth-child(4) {
    grid-column: 1/-1;
  }
  .line-item-fields > label:nth-child(4) > input {
    text-align: left;
  }
  .line-subtotal {
    grid-column: 1/-1;
    text-align: left;
    padding: var(--space-2) 0;
    font-size: var(--text-xs);
  }
  .line-item:not([data-expanded=true]) .line-item-fields,
  .line-item:not([data-expanded=true]) .line-subtotal {
    display: none;
  }
  .line-note {
    display: none;
  }
  .line-item-details {
    padding: var(--space-4) var(--space-3);
  }
  .line-item-details .field-row {
    grid-template-columns: 1fr;
  }
  .line-list-footer {
    align-items: flex-start;
    flex-direction: column;
    gap: var(--space-2);
  }
  .line-list-footer > span {
    text-align: left;
    max-width: none;
  }
}
.compact-lines > .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  clip-path: inset(50%);
  overflow: hidden;
  white-space: nowrap;
}
.line-details-heading h3 {
  font-size: var(--text-xs);
  margin-bottom: var(--space-1);
}
.line-details-heading p {
  font-size: var(--text-xs);
  line-height: 1.6;
  margin-bottom: var(--space-4);
}
.line-tools {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  margin: 0 0 var(--space-4);
  padding-bottom: var(--space-4);
  border-bottom: 1px solid #dce3d6;
}
.line-tools > small {
  flex-basis: 100%;
  font-size: var(--text-xs);
  color: #526449;
  line-height: 1.7;
}
.line-tools .btn {
  min-height: var(--control-sm);
}
@media (pointer: coarse) {
  .compact-lines .line-item-fields input {
    font-size: var(--text-md);
    min-height: var(--control-lg);
  }
  .line-mobile-summary strong {
    font-size: var(--text-base);
  }
  .line-mobile-summary small,
  .line-mobile-summary > span {
    font-size: var(--text-xs);
  }
  .line-expander summary {
    min-height: var(--control-lg);
  }
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/workspace-start.css */
.start-steps {
  list-style: none;
  padding: 0;
  margin: var(--space-7) 0 0;
  display: grid;
  gap: var(--space-5);
}
.start-steps li {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  color: #fff;
  font-size: var(--text-base);
  font-weight: 600;
}
.start-steps li > span {
  width: 32px;
  height: 32px;
  border: 1px solid #ffffff70;
  border-radius: 50%;
  display: grid;
  place-items: center;
  flex-shrink: 0;
}
.start-steps li[aria-current] > span {
  background: #e5ecd8;
  color: #243e32;
  border-color: #e5ecd8;
}
.start-steps li.complete > span {
  border-color: #b9cda4;
  color: #d4e8bd;
}
.start-steps small {
  display: block;
  font-size: var(--text-xs);
  font-weight: 400;
  color: #e3e9df;
  margin-top: var(--space-1);
}
.workspace-start-form {
  margin-top: var(--space-5);
}
.start-import-note {
  display: flex;
  gap: var(--space-4);
  background: #f4f6ef;
  border: 1px solid #dfe5d7;
  border-radius: 14px;
  padding: var(--space-5);
}
.start-import-note > svg {
  color: #48603b;
  flex-shrink: 0;
  margin-top: 2px;
}
.start-import-choice input {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  margin: 1px 0 0;
  accent-color: #48603b;
  cursor: pointer;
}
.start-import-choice label {
  cursor: pointer;
}
.start-import-note strong {
  font-size: var(--text-base);
}
.start-import-note p,
.start-access p {
  font-size: var(--text-sm);
  line-height: 1.7;
  margin: var(--space-2) 0 0;
  color: #526048;
}
.start-access {
  padding: var(--space-1) 2px;
}
.start-access strong {
  display: flex;
  gap: var(--space-2);
  align-items: center;
  font-size: var(--text-base);
}
.start-company {
  display: flex;
  gap: var(--space-3);
  align-items: center;
  padding-bottom: var(--space-2);
  overflow-wrap: anywhere;
}
.start-company small {
  display: block;
  color: #526048;
  font-size: var(--text-xs);
  margin-top: var(--space-1);
}
@media (max-width: 767px) {
  .workspace-start-page .login-story {
    display: none;
  }
  .workspace-start-page .login-form {
    padding-top: var(--space-7);
    padding-bottom: var(--space-7);
  }
  .start-import-note {
    padding: var(--space-4);
  }
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/editor-preview.css */
.workspace-shell .content:has(.split-editor) {
  max-width: 1800px;
  padding-left: var(--space-5);
  padding-right: var(--space-5);
}
.workspace-shell .quote-editor.split-editor {
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  gap: var(--space-5);
  align-items: start;
}
.editor-form-pane,
.editor-preview-pane {
  min-width: 0;
}
.editor-view-switch,
.editor-mobile-error {
  display: none;
}
.editor-part-nav {
  display: flex;
  gap: var(--space-1);
  padding: var(--space-1);
  background: #e9eee2;
  border: 1px solid #d9e1d1;
  border-radius: 10px;
  margin-bottom: var(--space-4);
}
.editor-part-nav button {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  min-height: var(--control-sm);
  padding: var(--space-1);
  border: 0;
  border-radius: 6px;
  background: transparent;
  font-size: var(--text-xs);
  font-weight: 600;
  color: #506046;
  white-space: nowrap;
}
.editor-part-nav button[aria-pressed=true] {
  background: white;
  color: #263b33;
  box-shadow: 0 1px 4px #263b3312;
}
.editor-part-nav button:hover {
  background: #f7f9f2;
}
.editor-part-nav button > span {
  font-size: var(--text-xs);
  background: #eef2e8;
  border-radius: 4px;
  padding: 1px var(--space-1);
  font-variant-numeric: tabular-nums;
}
.split-editor [data-editor-part][hidden] {
  display: none !important;
}
.workspace-shell .split-editor .panel {
  padding: var(--space-5);
}
.split-editor fieldset {
  gap: 0 !important;
}
.split-editor .field small {
  font-size: var(--text-xs);
  line-height: 1.6;
}
.editor-extra {
  display: grid;
  gap: var(--space-4);
}
.editor-customer-name {
  padding-bottom: var(--space-4);
  border-bottom: 1px solid var(--line);
  font-size: var(--text-xs);
}
.split-editor .form-footer {
  justify-content: space-between;
  gap: var(--space-3);
}
.split-editor .form-footer .save-status {
  font-size: var(--text-xs);
  flex: 1;
  min-width: 120px;
}
.editor-form-pane > .optional-panel {
  margin-top: var(--space-4);
}
.editor-checks-body,
.editor-internal-body {
  padding: 0 var(--space-5) var(--space-5);
  font-size: var(--text-xs);
}
.editor-internal-body {
  display: grid;
  gap: var(--space-4);
}
.editor-internal-body > .quiet-box {
  margin: 0 !important;
}
.editor-preview-pane {
  position: sticky;
  top: 18px;
  border: 1px solid #d5ddd0;
  border-radius: 13px;
  background: #e9ede4;
  overflow: clip;
}
.editor-preview-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--space-3);
  padding: var(--space-4) var(--space-4);
  border-bottom: 1px solid #d5ddd0;
  background: #f6f8f2;
}
.editor-preview-heading > div,
.editor-preview-heading > a {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
.editor-preview-heading h2 {
  font: 600 12px/1.5 Manrope, sans-serif;
  letter-spacing: 0;
  margin: 0;
}
.editor-preview-heading > div > span {
  font-size: var(--text-xs);
  padding: 2px var(--space-2);
  border-radius: 4px;
  background: #e6ecdd;
  color: #506046;
}
.editor-preview-heading > a {
  font-size: var(--text-xs);
  color: #506046;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.editor-preview-scroll {
  max-height: clamp(280px, calc(100dvh - 300px), 760px);
  min-height: 300px;
  overflow: auto;
  padding: var(--space-5);
  scrollbar-gutter: stable;
  overscroll-behavior: contain;
}
.editor-preview-scroll:focus-visible {
  outline-offset: -4px;
}
.draft-document {
  background: white;
  border: 1px solid #dce2d6;
  border-radius: 3px;
  box-shadow: 0 3px 16px #263b3309;
  padding: var(--space-5);
  color: #263b33;
  font-size: var(--text-xs);
  line-height: 1.7;
  overflow-wrap: anywhere;
}
.draft-document-company {
  position: relative;
  border-bottom: 1px solid #dce2d6;
  padding-bottom: var(--space-5);
  margin-bottom: var(--space-5);
}
.draft-document-company > span {
  display: block;
  margin-top: var(--space-4);
  color: #58685b;
  font-size: var(--text-xs);
  text-transform: uppercase;
  letter-spacing: 1px;
}
.draft-document .company-logo-image {
  max-width: 145px;
  max-height: 65px;
  width: auto;
  height: auto;
  object-fit: contain;
  margin-bottom: var(--space-3);
}
.draft-document .company-banner {
  padding: var(--space-2) var(--space-3);
  border-radius: 4px;
  font-size: var(--text-xs);
  line-height: 1.5;
  display: inline-block;
}
.draft-document .company-contact {
  margin-top: var(--space-3);
  display: grid;
  gap: 2px;
  font-size: var(--text-xs);
  line-height: 1.6;
}
.draft-document .company-contact p {
  margin: 0;
}
.draft-document .company-description {
  margin: var(--space-3) 0 0;
  font-size: var(--text-xs);
}
.draft-document .company-source {
  font-size: var(--text-xs);
  line-height: 1.6;
  color: #58685b;
  margin: var(--space-3) 0 0;
}
.draft-document h2 {
  font-family: "Instrument Serif", serif;
  font-weight: 400;
  font-size: var(--text-xl);
  line-height: var(--leading-tight);
  letter-spacing: -.4px;
  margin-bottom: var(--space-4);
}
.draft-document h3 {
  font-size: var(--text-xs);
  letter-spacing: -.1px;
  margin: 0 0 var(--space-3);
}
.draft-document h4 {
  font-size: var(--text-xs);
  margin: 0 0 var(--space-3);
}
.draft-document p {
  white-space: pre-wrap;
  margin-bottom: var(--space-3);
}
.draft-document p:last-child {
  margin-bottom: 0;
}
.draft-document-recipient {
  font-size: var(--text-xs);
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 600;
  color: #526449;
}
.draft-document-address {
  font-size: var(--text-xs);
  color: #58685b;
}
.draft-document-placeholder {
  font-size: var(--text-xs);
  color: #58685b;
}
.draft-document-intro {
  padding-bottom: var(--space-5);
}
.draft-document-section {
  border-top: 1px solid #dce2d6;
  padding-top: var(--space-5);
  margin-bottom: var(--space-5);
}
.draft-document-line {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 54px 85px;
  gap: var(--space-3);
  padding: var(--space-3) 0;
  border-bottom: 1px solid #e5e9e0;
  font-size: var(--text-xs);
  align-items: start;
}
.draft-document-line > span:last-child {
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.draft-document-line small {
  font-size: var(--text-xs);
  display: block;
  color: #58685b;
}
.draft-document-line p {
  font-size: var(--text-xs);
  margin-top: var(--space-1);
}
.draft-document-columns {
  font-size: var(--text-xs);
  font-weight: 600;
  color: #58685b;
  padding-top: 0;
}
.draft-document-price-note {
  font-size: var(--text-xs);
  color: #58685b;
  margin-top: var(--space-2);
}
.draft-document-totals {
  margin-top: var(--space-4);
  padding: var(--space-4);
  background: #f3f6ed;
  border: 1px solid #dfe6d6;
  border-radius: 6px;
}
.draft-document-totals p {
  font-size: var(--text-xs);
  margin: var(--space-2) 0 0;
}
.draft-document-totals > strong {
  font-size: var(--text-xs);
}
.draft-document .totals {
  font-size: var(--text-xs);
}
.draft-document .total-row {
  gap: var(--space-3);
  padding: var(--space-1) 0;
  flex-wrap: wrap;
}
.draft-document .total-row.grand {
  font-size: var(--text-lg);
  letter-spacing: -.4px;
  padding-top: var(--space-4);
  margin-top: var(--space-3);
}
.draft-document-option {
  margin-top: var(--space-4);
  padding-top: var(--space-4);
  border-top: 1px solid #dce2d6;
}
.draft-document-footer {
  border-top: 1px solid #dce2d6;
  padding-top: var(--space-4);
  font-size: var(--text-xs);
  color: #58685b;
}
.editor-preview-actions {
  position: relative;
  z-index: 2;
  isolation: isolate;
  padding: var(--space-4) var(--space-4);
  border-top: 1px solid #d5ddd0;
  background: #fff;
}
.editor-customer-path {
  display: flex;
  gap: var(--space-2);
  align-items: flex-start;
  font-size: var(--text-xs);
  line-height: 1.7;
  color: #506046;
  margin-bottom: var(--space-3);
}
.editor-customer-path svg {
  flex: none;
  margin-top: 1px;
}
.editor-primary-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}
.editor-primary-actions > .btn {
  flex: 1;
  width: auto;
  min-width: 145px;
  min-height: var(--control-md);
  font-size: var(--text-xs);
  margin: 0 !important;
}
.editor-primary-actions > .btn:first-child:not(:last-of-type) {
  background: white;
  color: #263b33;
  border: 1px solid #ccd7c3;
}
.editor-primary-actions > p,
.editor-primary-actions > .notice {
  flex-basis: 100%;
  margin: 2px 0 0 !important;
}
.editor-preview-actions > .save-status {
  font-size: var(--text-xs);
  line-height: 1.6;
  margin: var(--space-2) 0 0;
  color: #58685b;
}
.split-editor .line-item-details > .line-details-heading {
  margin-top: var(--space-5);
}
@media (min-width: 1200px) {
  .split-editor .line-column-head,
  .split-editor .line-item-main {
    display: grid;
    grid-template-columns: minmax(85px, 1fr) 42px 36px 68px 70px 28px 28px;
    gap: var(--space-1);
    padding: var(--space-2);
  }
  .split-editor .line-column-head > span:first-child,
  .split-editor .line-index,
  .split-editor .line-mobile-summary,
  .split-editor .line-mobile-chevron,
  .split-editor .line-field-label {
    display: none;
  }
  .split-editor .line-item-fields,
  .split-editor .line-item:not([data-expanded=true]) .line-item-fields {
    display: contents;
  }
  .split-editor .line-item-fields > label,
  .split-editor .line-expander,
  .split-editor .line-remove,
  .split-editor .line-subtotal {
    grid-column: auto;
    grid-row: auto;
  }
  .split-editor .line-item-title {
    grid-column: auto;
  }
  .split-editor .line-expander summary {
    width: 28px;
    min-height: var(--control-sm);
    justify-content: center;
  }
  .split-editor .line-detail-icon {
    display: flex;
  }
  .split-editor .line-remove {
    width: 28px;
    min-height: var(--control-sm);
    align-self: center;
  }
  .split-editor .compact-lines .line-item-fields input {
    padding: var(--space-1);
    border-color: transparent;
    background: transparent;
    font-size: var(--text-xs);
    min-height: var(--control-sm);
  }
  .split-editor .compact-lines .line-item-fields input:hover {
    border-color: #d5dfcc;
    background: white;
  }
  .split-editor .compact-lines .line-item-fields input:focus {
    border-color: #708766;
    background: white;
  }
  .split-editor .line-subtotal,
  .split-editor .line-item:not([data-expanded=true]) .line-subtotal {
    display: block;
    text-align: right;
    font-size: var(--text-xs);
    padding: 0;
    font-variant-numeric: tabular-nums;
  }
  .split-editor .line-item-fields > label:nth-child(4) > input {
    text-align: right;
  }
  .split-editor .line-note {
    display: block;
    padding-left: var(--space-3);
  }
  .split-editor .line-list-footer {
    flex-direction: row;
    align-items: center;
    gap: var(--space-3);
  }
  .split-editor .line-list-footer > span {
    max-width: 190px;
    text-align: right;
  }
  .split-editor .line-list-scroll {
    max-height: clamp(200px, calc(100dvh - 600px), 570px);
    min-height: 180px;
    overflow: auto;
    scrollbar-gutter: stable;
  }
}
@media (max-width: 1024px) {
  .workspace-shell .quote-editor.split-editor {
    grid-template-columns: minmax(0, 1fr);
  }
  .editor-mobile-error {
    display: block;
  }
  .editor-view-switch {
    display: flex;
    position: sticky;
    top: 0;
    z-index: 3;
    background: #f6f5ef;
    padding: var(--space-3) 0;
    margin: -12px 0 var(--space-4);
    gap: var(--space-2);
  }
  .editor-view-switch > button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-2);
    flex: 1;
    min-height: var(--control-md);
    padding: var(--space-2);
    border: 1px solid #d5ddd0;
    border-radius: var(--radius-control);
    background: transparent;
    font-size: var(--text-xs);
    color: #526449;
    font-weight: 600;
  }
  .editor-view-switch > button[aria-pressed=true] {
    background: #263b33;
    border-color: #263b33;
    color: white;
  }
  .split-editor[data-mobile-view=edit] > .editor-preview-pane,
  .split-editor[data-mobile-view=preview] > .editor-form-pane {
    display: none;
  }
  .editor-preview-pane {
    position: static;
    max-width: 700px;
    width: 100%;
    justify-self: center;
  }
  .editor-preview-scroll {
    max-height: none;
    min-height: 0;
    overflow: visible;
    scrollbar-gutter: auto;
    padding: var(--space-5);
  }
  .editor-preview-actions {
    position: sticky;
    bottom: 0;
    box-shadow: 0 -3px 16px #263b3309;
  }
  .editor-preview-pane {
    overflow: visible;
  }
}
@media (max-width: 767px) {
  .workspace-shell .content:has(.split-editor) {
    padding-left: var(--space-4);
    padding-right: var(--space-4);
  }
  .workspace-shell .split-editor .panel {
    padding: var(--space-4);
  }
  .editor-part-nav {
    gap: 2px;
    padding: var(--space-1);
  }
  .editor-part-nav button {
    font-size: var(--text-xs);
    gap: var(--space-1);
  }
  .editor-part-nav button > span {
    font-size: var(--text-xs);
    padding: 1px var(--space-1);
  }
  .split-editor .panel-heading {
    gap: var(--space-2);
    flex-wrap: wrap;
  }
  .split-editor .panel-heading h2 {
    font-size: var(--text-md);
  }
  .editor-preview-scroll {
    padding: var(--space-3);
  }
  .draft-document {
    padding: var(--space-5) var(--space-4);
  }
  .draft-document h2 {
    font-size: var(--text-xl);
  }
  .draft-document-line {
    grid-template-columns: minmax(0, 1fr) 38px 62px;
    gap: var(--space-2);
    font-size: var(--text-xs);
  }
  .draft-document-columns {
    font-size: var(--text-xs);
  }
  .draft-document-totals {
    padding: var(--space-3);
  }
  .draft-document .total-row.grand {
    font-size: var(--text-lg);
  }
  .editor-preview-heading {
    padding: var(--space-3);
  }
  .editor-preview-actions {
    padding: var(--space-3);
  }
  .editor-primary-actions > .btn {
    min-width: 120px;
    font-size: var(--text-xs);
  }
  .editor-checks-body,
  .editor-internal-body {
    padding: 0 var(--space-4) var(--space-4);
  }
  .editor-preview-heading > a {
    font-size: var(--text-xs);
  }
}
.editor-primary-actions[data-dirty=true] > .btn:first-child {
  background: #263b33;
  color: white;
  border-color: #263b33;
}
.editor-primary-actions[data-dirty=true] > .btn:nth-child(2) {
  background: white;
  color: #263b33;
  border-color: #ccd7c3;
}
.editor-work-status {
  display: grid;
  gap: var(--space-1);
  padding: var(--space-3) var(--space-4);
  background: #eef3e9;
  border: 1px solid #dce3d6;
  border-radius: 9px;
  margin-bottom: var(--space-3);
  font-size: var(--text-xs);
  color: #263b33;
}
.editor-work-status > span {
  font-weight: 700;
}
.editor-work-status > small {
  font-size: var(--text-xs);
  line-height: 1.6;
  color: #526449;
}
.editor-work-status[data-error=true] {
  background: #fff1ea;
  border-color: #daaa92;
}
.dashboard-start-links {
  display: flex;
  gap: var(--space-3) var(--space-5);
  flex-wrap: wrap;
  margin: -12px 0 var(--space-5);
  font-size: var(--text-xs);
}
.dashboard-start-links a {
  text-decoration: underline;
  text-underline-offset: 4px;
}
.dashboard-profile-start {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  margin-bottom: var(--space-5);
  padding: var(--space-5) var(--space-5);
  border: 1px solid #dce3d6;
  border-radius: 12px;
  background: #eef3e9;
}
.dashboard-profile-start > svg {
  flex: none;
}
.dashboard-profile-start h2 {
  font-size: var(--text-base);
  margin: 0 0 var(--space-2);
}
.dashboard-profile-start p {
  font-size: var(--text-xs);
  line-height: 1.8;
  margin: 0;
  color: #526449;
}
.dashboard-profile-start > .btn {
  flex: none;
  margin-left: auto;
}
@media (max-width: 767px) {
  .dashboard-profile-start {
    align-items: flex-start;
    flex-wrap: wrap;
    padding: var(--space-4);
    gap: var(--space-3);
  }
  .dashboard-profile-start > div {
    flex: 1;
    min-width: 160px;
  }
  .dashboard-profile-start > .btn {
    margin-left: var(--space-6);
  }
  .dashboard-start-links {
    gap: var(--space-3);
    margin-top: 0;
  }
}
.delivery-email-preview {
  margin: var(--space-4) 0;
}
.delivery-email-preview > div {
  padding: 0 var(--space-4) var(--space-4);
}
.delivery-email-preview iframe {
  width: 100%;
  height: 560px;
  border: 1px solid #dce3d6;
  border-radius: 8px;
  background: #f6f5ef;
}
.delivery-email-preview p {
  font-size: var(--text-xs);
  overflow-wrap: anywhere;
}
@media (max-width: 767px) {
  .delivery-email-preview iframe {
    height: 740px;
  }
  .delivery-email-preview > div {
    padding: 0 var(--space-2) var(--space-3);
  }
}
.draft-document .open-lines {
  margin: var(--space-3) 0 0;
  padding: var(--space-3) var(--space-3);
}
.draft-document .open-lines h3 {
  font-size: var(--text-xs);
}
.draft-document .open-lines h4,
.draft-document .open-lines li {
  font-size: var(--text-xs);
}
.draft-document .open-lines > p,
.draft-document .open-lines div > p,
.draft-document .open-lines li small {
  font-size: var(--text-xs);
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/offer-clarity.css */
.editor-journey-nav {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-1);
}
.editor-journey-nav button {
  flex-direction: column;
  gap: var(--space-1);
  min-width: 0;
  min-height: var(--control-md);
  padding: var(--space-2) var(--space-1);
  line-height: 1.4;
  text-align: center;
  white-space: normal;
}
.editor-journey-nav button > .editor-step-number {
  height: 19px;
  min-width: 19px;
  padding: 0;
  display: grid;
  place-items: center;
  background: none;
  color: inherit;
  font-size: var(--text-xs);
}
.editor-journey-nav button > span:not(.editor-step-number) {
  font-size: var(--text-xs);
  background: none;
  padding: 0;
  color: inherit;
}
.editor-part-help {
  padding: var(--space-4) 2px var(--space-5);
}
.editor-part-help h2 {
  font-size: var(--text-lg);
  line-height: var(--leading-tight);
  letter-spacing: -0.3px;
  margin: var(--space-2) 0 var(--space-2);
}
.editor-part-help h2:focus {
  outline: none;
}
.editor-part-help p {
  font-size: var(--text-xs);
  color: var(--muted);
  line-height: 1.8;
  margin: 0;
  max-width: 540px;
}
.editor-recipient-hint {
  padding: var(--space-4) var(--space-4);
  border-radius: 8px;
  border: 1px solid var(--line);
  background: #f7f9f4;
  margin: 0 0 var(--space-5);
  display: grid;
  gap: var(--space-1);
  overflow-wrap: anywhere;
}
.editor-recipient-hint span {
  font-size: var(--text-xs);
  color: var(--muted);
}
.editor-recipient-hint strong {
  font-size: var(--text-xs);
  font-weight: 600;
}
.editor-recipient-hint button {
  justify-self: start;
  border: 0;
  padding: var(--space-1) 0;
  background: none;
  font-size: var(--text-xs);
  color: #314c3e;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.editor-section-actions {
  gap: var(--space-3);
  justify-content: flex-end;
  flex-wrap: wrap;
}
.editor-section-actions .btn {
  font-size: var(--text-xs);
  white-space: normal;
}
.editor-basic-checks {
  margin: var(--space-1) 0 var(--space-5);
  padding-bottom: var(--space-4);
  border-bottom: 1px solid var(--line);
}
.editor-basic-checks > p {
  font-size: var(--text-xs);
  line-height: 1.8;
}
.editor-basic-checks ul {
  list-style: none;
  padding: 0;
  margin: var(--space-3) 0 0;
  display: grid;
  gap: var(--space-2);
}
.editor-basic-checks li > button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  text-align: left;
  background: #f7f9f4;
  border: 1px solid #dce4d6;
  border-radius: var(--radius-control);
  padding: var(--space-2) var(--space-3);
  font-family: inherit;
  font-size: var(--text-xs);
  color: #314c3e;
  width: 100%;
  min-height: var(--control-md);
  line-height: 1.6;
}
.editor-basic-checks li > button:hover {
  background: #edf3e6;
}
.editor-basic-checks li svg {
  flex: none;
}
.editor-basics-complete {
  display: flex;
  gap: var(--space-3);
  color: #3f613a;
}
.editor-basics-complete svg {
  flex: none;
  margin-top: var(--space-1);
}
.offer-at-a-glance {
  background: #eef3e8;
  border: 1px solid #d9e2d1;
  border-radius: 12px;
  padding: var(--space-5);
  margin: var(--space-5) 0;
  color: #263b33;
}
.offer-summary-heading > .eyebrow {
  font-size: var(--text-xs);
  color: #526749;
}
.offer-summary-heading > p {
  font-size: var(--text-xs);
  line-height: 1.8;
  max-width: 540px;
  margin: var(--space-2) 0 0;
  color: #50634a;
}
.offer-summary-price {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-4);
  margin: var(--space-5) 0 var(--space-5);
}
.offer-summary-price > div {
  min-width: 0;
}
.offer-summary-price > div > span {
  display: block;
  font-size: var(--text-xs);
  font-weight: 600;
  color: #50634a;
}
.offer-summary-price strong {
  display: block;
  font-size: var(--text-2xl);
  font-weight: 600;
  letter-spacing: -0.6px;
  line-height: var(--leading-tight);
  margin: var(--space-2) 0;
  overflow-wrap: anywhere;
}
.offer-summary-price small {
  display: block;
  font-size: var(--text-xs);
  color: #526749;
  line-height: 1.6;
}
.offer-price-type {
  background: white;
  border: 1px solid #d4dfcc;
  border-radius: 6px;
  padding: var(--space-2) var(--space-3);
  font-size: var(--text-xs);
  font-weight: 600;
  line-height: 1.5;
  flex-shrink: 0;
}
.offer-summary-rot {
  font-size: var(--text-xs);
  line-height: 1.8;
  color: #526749;
  margin: 0 0 var(--space-4);
}
.offer-summary-facts {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-5);
  border-top: 1px solid #d5dfcc;
  padding-top: var(--space-4);
  margin: 0;
}
.offer-summary-facts > div {
  min-width: 0;
}
.offer-summary-facts dt {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-xs);
  color: #526749;
}
.offer-summary-facts dd {
  font-size: var(--text-sm);
  font-weight: 600;
  line-height: 1.7;
  overflow-wrap: anywhere;
  margin: var(--space-2) 0 0;
}
.offer-summary-facts dd small {
  display: block;
  font-weight: 400;
  font-size: var(--text-xs);
  color: #526749;
  margin-top: var(--space-1);
}
.offer-summary-actions {
  display: flex;
  align-items: center;
  gap: var(--space-3) var(--space-5);
  flex-wrap: wrap;
  margin-top: var(--space-5);
}
.offer-summary-actions > .btn {
  font-size: var(--text-xs);
  white-space: normal;
}
.offer-summary-actions > .text-link {
  font-size: var(--text-xs);
  min-height: var(--control-md);
  display: flex;
  align-items: center;
}
.offer-summary-actions > small {
  flex: 1 0 100%;
  font-size: var(--text-xs);
  color: #526749;
  line-height: 1.7;
}
.offer-contents-nav {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-1) var(--space-4);
  border-bottom: 1px solid var(--line);
  padding: 2px 0 var(--space-5);
  margin-bottom: var(--space-3);
}
.offer-contents-nav a {
  font-size: var(--text-xs);
  color: #435d4e;
  display: flex;
  align-items: center;
  min-height: var(--control-sm);
  text-decoration: underline;
  text-decoration-color: #aabd9e;
  text-underline-offset: 5px;
}
.portal-section[id] {
  scroll-margin-top: 24px;
}
.offer-lines-explanation {
  font-size: var(--text-xs) !important;
  color: var(--muted);
  line-height: 1.8;
}
.customer-offer-lines .data-table td:first-child small {
  white-space: pre-wrap;
  line-height: 1.8;
}
.customer-offer-lines .data-table th {
  font-size: var(--text-xs);
}
.draft-at-a-glance {
  padding: var(--space-4);
  margin: 0 0 var(--space-5);
  border-radius: 7px;
}
.draft-at-a-glance .offer-summary-heading > .eyebrow {
  font-size: var(--text-xs);
}
.draft-at-a-glance .offer-summary-price {
  margin: var(--space-4) 0;
  gap: var(--space-3);
}
.draft-at-a-glance .offer-summary-price strong {
  font-size: var(--text-xl);
  letter-spacing: -0.5px;
}
.draft-at-a-glance .offer-summary-price > div > span {
  font-size: var(--text-xs);
}
.draft-at-a-glance .offer-price-type {
  font-size: var(--text-xs);
  padding: var(--space-1) var(--space-2);
}
.draft-at-a-glance .offer-summary-price small,
.draft-at-a-glance .offer-summary-rot {
  font-size: var(--text-xs);
}
.draft-at-a-glance .offer-summary-facts {
  gap: var(--space-3);
  padding-top: var(--space-4);
}
.draft-at-a-glance .offer-summary-facts dt {
  font-size: var(--text-xs);
  gap: var(--space-1);
}
.draft-at-a-glance .offer-summary-facts dt svg {
  width: 13px;
  height: 13px;
}
.draft-at-a-glance .offer-summary-facts dd {
  font-size: var(--text-xs);
}
.draft-at-a-glance .offer-summary-facts dd small {
  font-size: var(--text-xs);
}
@media (max-width: 767px) {
  .editor-journey-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .editor-journey-nav button {
    min-height: var(--control-lg);
    flex-direction: row;
    justify-content: flex-start;
    text-align: left;
    padding: var(--space-2) var(--space-2);
  }
  .editor-journey-nav button > span:not(.editor-step-number) {
    font-size: var(--text-xs);
  }
  .editor-part-help h2 {
    font-size: var(--text-lg);
  }
  .editor-part-help p {
    font-size: var(--text-xs);
  }
  .editor-section-actions .btn {
    flex: 1;
    min-width: 100px;
  }
  .editor-section-actions > .btn:last-child {
    flex-basis: 100%;
  }
  .offer-at-a-glance {
    padding: var(--space-4);
    margin: var(--space-5) 0;
  }
  .offer-summary-price {
    flex-direction: column;
    gap: var(--space-3);
    margin: var(--space-5) 0;
  }
  .offer-summary-price strong {
    font-size: var(--text-xl);
    letter-spacing: -0.5px;
  }
  .offer-summary-facts {
    gap: var(--space-4);
  }
  .offer-summary-facts dd {
    font-size: var(--text-xs);
  }
  .offer-summary-actions > .btn {
    width: 100%;
    justify-content: center;
    text-align: center;
    font-size: var(--text-xs);
  }
  .offer-summary-actions > .text-link {
    margin: auto;
  }
  .offer-contents-nav {
    gap: var(--space-1) var(--space-4);
  }
  .offer-contents-nav a {
    font-size: var(--text-xs);
  }
  .customer-offer-lines {
    overflow: visible;
  }
  .customer-offer-lines .data-table {
    min-width: 0;
    width: 100%;
    table-layout: fixed;
  }
  .customer-offer-lines thead {
    position: absolute;
    width: 1px;
    height: 1px;
    clip-path: inset(50%);
    overflow: hidden;
    white-space: nowrap;
  }
  .customer-offer-lines tbody {
    display: block;
  }
  .customer-offer-lines tr {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    padding: var(--space-4) 0;
    gap: var(--space-4) var(--space-4);
    border-bottom: 1px solid var(--line);
  }
  .customer-offer-lines .data-table td {
    display: block;
    min-width: 0;
    border: 0;
    padding: 0;
    font-size: var(--text-xs);
    overflow-wrap: anywhere;
    line-height: 1.6;
  }
  .customer-offer-lines td:first-child {
    grid-column: 1/-1;
  }
  .customer-offer-lines tr.line-group {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0 var(--space-3);
    padding: var(--space-3) var(--space-3);
    margin: var(--space-5) 0 2px;
    border-bottom: 0;
    align-items: baseline;
    background: var(--pale);
    border-radius: 8px;
  }
  .customer-offer-lines tr.line-group th,
  .customer-offer-lines tr.line-group td {
    background: none;
    padding: 0;
  }
  .customer-offer-lines tr.line-group td {
    text-align: right;
    font-size: var(--text-sm);
  }
  .customer-offer-lines tr.line-group td:before {
    content: none;
  }
  .customer-offer-lines tr:not(.line-group) td:last-child {
    grid-column: 1/-1;
    padding-top: var(--space-3);
    border-top: 1px solid var(--line);
    font-weight: 700;
  }
  .customer-offer-lines td[data-label]:before {
    content: attr(data-label);
    display: block;
    font-size: var(--text-xs);
    font-weight: 400;
    color: #58685b;
    margin-bottom: var(--space-1);
  }
  .customer-offer-lines td:last-child {
    text-align: right;
  }
  .customer-offer-lines td:first-child strong {
    font-size: var(--text-sm);
  }
  .customer-offer-lines td:first-child small {
    font-size: var(--text-xs);
  }
  .customer-offer-lines td button,
  .customer-offer-lines td a {
    font-size: var(--text-xs);
    white-space: normal;
    min-height: var(--control-sm);
  }
  .draft-at-a-glance {
    padding: var(--space-4);
    margin: 0 0 var(--space-5);
  }
  .draft-at-a-glance .offer-summary-price strong {
    font-size: var(--text-xl);
  }
  .draft-at-a-glance .offer-summary-price {
    margin: var(--space-3) 0;
    gap: var(--space-2);
  }
}
.original-price-note {
  padding: var(--space-5);
  margin: 0 0 var(--space-5);
  border: 1px solid var(--line, #dce2d7);
  border-radius: 12px;
  background: #f2f4ed;
  overflow-wrap: anywhere;
}
.original-price-note blockquote {
  margin: var(--space-3) 0;
  padding: 0 0 0 var(--space-4);
  border-left: 3px solid #758b65;
  font-size: var(--text-lg);
  font-weight: 650;
  white-space: pre-wrap;
}
.original-price-note p {
  margin: var(--space-3) 0;
}
.original-price-note a {
  color: inherit;
  text-decoration: underline;
}
.price-mode {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-2);
  margin: 0 0 var(--space-5);
  padding: var(--space-1);
  border-radius: 12px;
  background: #edf0e7;
}
.price-mode button {
  min-height: var(--control-md);
  padding: var(--space-2) var(--space-3);
  border: 1px solid transparent;
  border-radius: var(--radius-control);
  background: transparent;
  color: #30463b;
  font: inherit;
  font-size: var(--text-sm);
  font-weight: 650;
  cursor: pointer;
}
.price-mode button[aria-pressed=true] {
  background: white;
  border-color: #c3cebb;
  box-shadow: 0 1px 3px #263b3312;
}
.price-mode button:focus-visible {
  outline: 2px solid #30463b;
  outline-offset: 2px;
}
@media (pointer: coarse), (max-width: 767px) {
  .price-mode button {
    min-height: var(--control-lg);
  }
}
.total-price-editor {
  display: grid;
  gap: var(--space-5);
}
.total-price-editor input[aria-invalid=true],
.quote-editor [aria-invalid=true] {
  border: 2px solid #a43c23;
}
.total-price-result {
  padding: var(--space-4) var(--space-5);
  display: flex;
  justify-content: space-between;
  gap: var(--space-4);
  align-items: center;
  background: #f2f4ed;
  border-radius: 10px;
}
.total-price-result strong {
  font-size: var(--text-xl);
}
.total-price-result span {
  max-width: 60%;
  font-size: var(--text-base);
}
.send-review-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(310px, 370px);
  gap: var(--space-6);
  align-items: start;
}
.send-review-layout > * {
  min-width: 0;
}
.send-review-aside {
  position: sticky;
  top: 24px;
  scroll-margin-top: 100px;
}
.send-review-jump {
  display: none;
}
.send-review-aside:focus-visible {
  outline: 2px solid var(--ink,#263b33);
  outline-offset: 5px;
  border-radius: 12px;
}
.send-review-aside .panel {
  padding: var(--space-5);
}
.send-review-aside p {
  margin: var(--space-4) 0;
  overflow-wrap: anywhere;
}
.send-review-aside .btn {
  white-space: normal;
}
.send-review-aside .btn:not(.tertiary) {
  width: 100%;
}
.send-review-aside .panel > :is(.btn, .optional-panel) + :is(.btn, .optional-panel) {
  margin-top: var(--space-4);
}
.send-review-aside .panel > .btn.tertiary {
  display: flex;
  width: fit-content;
}
.send-review-aside h2 {
  font-size: var(--text-lg);
  line-height: var(--leading-tight);
}
.review-send-amount {
  font-size: var(--text-xl);
  font-weight: 700;
  letter-spacing: -0.5px;
}
.review-send-amount small {
  display: block;
  font-size: var(--text-sm);
  font-weight: 400;
  letter-spacing: 0;
}
.full-review-document {
  margin: 0 !important;
  width: 100% !important;
  max-width: none !important;
  border: 1px solid #dce2d7;
  border-radius: 10px;
  box-shadow: 0 6px 30px #263b3308;
}
.full-review-document p {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.full-review-document :is(h2, h3, h4, strong, li) {
  overflow-wrap: anywhere;
}
.full-review-document .draft-document-intro h2 {
  font-size: var(--text-2xl);
  line-height: var(--leading-tight);
}
.review-price-lines > div {
  padding: 0;
  border-bottom: 0;
}
.review-price-lines > div + div {
  margin-top: var(--space-4);
}
.review-price-lines p {
  margin: var(--space-2) 0;
  font-size: var(--text-base);
}
.review-price-lines strong {
  font-size: var(--text-md);
}
.review-option {
  padding: var(--space-5) 0;
  border-top: 1px solid #e1e6db;
}
@media (max-width: 1024px) {
  .send-review-jump {
    display: block;
    padding: var(--space-4) var(--space-4);
    margin-bottom: var(--space-5);
    border: 1px solid var(--line,#dce2d7);
    border-radius: 12px;
    background: var(--paper-soft,#f5f6f2);
  }
  .send-review-jump p {
    font-size: var(--text-sm);
    line-height: 1.65;
    margin: 0 0 var(--space-2);
  }
  .send-review-jump a {
    display: inline-flex;
    align-items: center;
    min-height: var(--control-lg);
    font-size: var(--text-sm);
    font-weight: 650;
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  .send-review-jump a:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 3px;
  }
  .send-review-layout {
    grid-template-columns: minmax(0, 1fr);
  }
  .send-review-aside {
    position: static;
  }
  .send-review-aside .panel {
    padding: var(--space-5);
  }
  .send-review-aside .btn:not(.tertiary) {
    max-width: 440px;
  }
}
@media (max-width: 550px) {
  .price-mode {
    grid-template-columns: 1fr;
  }
  .total-price-result {
    align-items: start;
    flex-direction: column;
  }
  .total-price-result span {
    max-width: none;
  }
  .full-review-document {
    padding: var(--space-4) !important;
  }
  .send-review-aside .panel {
    padding: var(--space-4);
  }
}
.open-lines {
  margin: var(--space-5) 0 0;
  padding: var(--space-4) var(--space-5);
  border: 1px solid var(--line, #d7dfd2);
  border-left: 3px solid var(--accent, #63774f);
  border-radius: 10px;
  background: var(--paper-soft, #f8f9f2);
}
.open-lines h3 {
  margin: 0 0 var(--space-1);
  font-size: var(--text-md);
}
.open-lines > p {
  margin: 0 0 var(--space-3);
  font-size: var(--text-base);
}
.open-lines h4 {
  margin: var(--space-4) 0 2px;
  font-size: var(--text-base);
}
.open-lines div > p {
  margin: 0 0 var(--space-2);
  font-size: var(--text-sm);
}
.open-lines ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.open-lines li {
  display: flex;
  justify-content: space-between;
  gap: var(--space-4);
  padding: var(--space-2) 0;
  border-top: 1px solid var(--line, #e5e8df);
  font-size: var(--text-base);
}
.open-lines li small {
  display: block;
  color: var(--muted, #53665b);
  font-size: var(--text-xs);
  margin-top: 2px;
}
.open-lines li .mono {
  white-space: nowrap;
  flex: none;
}
.line-excluded {
  display: block;
  color: var(--muted, #53665b);
  font-style: italic;
}
@media (max-width: 560px) {
  .open-lines {
    padding: var(--space-4) var(--space-4);
  }
  .open-lines li {
    flex-direction: column;
    gap: 2px;
  }
  .open-lines li .mono {
    white-space: normal;
  }
}
.offer-summary-open {
  margin: var(--space-3) 0 0;
  padding: var(--space-3) var(--space-3);
  border-radius: 8px;
  background: var(--paper-soft, #f8f9f2);
  font-size: var(--text-base);
  line-height: 1.6;
}
.line-labor {
  display: block;
  color: var(--muted, #53665b);
}
.total-row.basis {
  color: var(--muted, #53665b);
  font-size: var(--text-xs);
}
.reduction-denial {
  font-size: var(--text-xs);
  margin: var(--space-3) 0 0;
}
.decision-choices {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-3);
  margin-top: var(--space-4);
}
.decision-choices .btn.tertiary {
  grid-column: 1/-1;
  justify-self: center;
}
.decision-dialogue {
  margin-top: var(--space-1);
}
.decision-more-time {
  margin-top: var(--space-3);
}
.decision-more-time-panel {
  margin-top: var(--space-4);
  padding: var(--space-4) var(--space-5);
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #f8f9f2;
}
.decision-followup h3 {
  margin: 0 0 var(--space-2);
  font-size: var(--text-md);
}
.decision-followup-forms {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-5);
  margin-top: var(--space-3);
}
.decision-followup-forms h4 {
  font-size: var(--text-sm);
  margin: 0 0 var(--space-2);
}
.decision-followup-forms .form-footer {
  margin-top: var(--space-2);
}
.decision-followup-forms .muted {
  font-size: var(--text-xs);
}
.offer-summary-reply {
  display: flex;
  gap: var(--space-3);
  align-items: flex-start;
  margin-top: var(--space-4);
  padding: var(--space-3) var(--space-4);
  border-radius: 8px;
  background: #fff;
  border: 1px solid #cbd9c4;
  font-size: var(--text-xs);
  line-height: 1.6;
  color: #263b33;
}
.offer-summary-reply svg {
  flex: none;
  margin-top: 2px;
  color: #3b5446;
}
.offer-summary-reply strong {
  font-weight: 700;
}
.next-steps {
  list-style: none;
  padding: 0;
  margin: var(--space-4) 0 0;
  display: grid;
  gap: var(--space-3);
}
.next-steps li {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  gap: var(--space-3);
  align-items: start;
  font-size: var(--text-sm);
  line-height: 1.65;
}
.next-steps li > span {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--pale);
  font-size: var(--text-xs);
  font-weight: 700;
}
.next-steps li[data-done] > span {
  background: #dfeadb;
  color: #3c613b;
}
.next-steps a {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.reduction-note summary {
  font-size: var(--text-xs);
}
.reduction-note p {
  margin: var(--space-2) 0 0;
  font-size: var(--text-xs);
}
.portal-footer-links {
  margin: var(--space-4) 0 0;
  font-size: var(--text-xs);
}
.portal-footer-links a {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.decision-bar {
  display: none;
}
@media (max-width: 767px) {
  .decision-choices {
    grid-template-columns: 1fr;
  }
  .decision-followup-forms {
    grid-template-columns: 1fr;
    gap: var(--space-4);
  }
  .decision-more-time {
    width: 100%;
  }
  .offer-contents-nav {
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
    gap: var(--space-2);
    margin: 0 calc(-1 * var(--space-4)) var(--space-3);
    padding: 2px var(--space-4) var(--space-3);
  }
  .offer-contents-nav::-webkit-scrollbar {
    display: none;
  }
  .offer-contents-nav a {
    flex-shrink: 0;
    white-space: nowrap;
    text-decoration: none;
    border: 1px solid var(--line);
    border-radius: 20px;
    padding: 0 var(--space-3);
    min-height: var(--control-sm);
    font-size: var(--text-xs);
    background: #fff;
  }
  .decision-bar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 40;
    display: flex;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-2) var(--space-4) calc(var(--space-2) + env(safe-area-inset-bottom));
    background: #fffdf9f2;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    border-top: 1px solid var(--line);
    box-shadow: 0 -4px 20px #263b3314;
  }
  .decision-bar[hidden] {
    display: none;
  }
  .decision-bar > div {
    flex: 1;
    min-width: 0;
    display: grid;
    line-height: 1.25;
  }
  .decision-bar > div > span {
    font-size: var(--text-xs);
    color: var(--muted);
  }
  .decision-bar > div > strong {
    font-size: var(--text-md);
    letter-spacing: -0.3px;
    overflow-wrap: anywhere;
  }
  .decision-bar-ask {
    font-size: var(--text-xs);
    font-weight: 600;
    padding: var(--space-2) var(--space-2);
    color: var(--ink);
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  .decision-bar .btn {
    min-height: var(--control-lg);
    padding: var(--space-3) var(--space-4);
    font-size: var(--text-xs);
    white-space: nowrap;
  }
  .portal {
    padding-bottom: calc(92px + env(safe-area-inset-bottom));
  }
}
.offer-summary-brief {
  margin: var(--space-3) 0 0;
  font-size: var(--text-base);
  line-height: 1.7;
  color: #263b33;
  max-width: 60ch;
}
.question-suggestions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  align-items: center;
  margin: var(--space-4) 0 var(--space-1);
}
.question-suggestions > span {
  flex-basis: 100%;
  font-size: var(--text-xs);
  color: var(--muted);
}
.question-suggestions > button {
  border: 1px solid var(--line);
  background: #fff;
  border-radius: 20px;
  min-height: var(--control-sm);
  padding: var(--space-1) var(--space-3);
  font: inherit;
  font-size: var(--text-xs);
  color: var(--ink);
  text-align: left;
  cursor: pointer;
  line-height: 1.4;
}
.question-suggestions > button:hover {
  background: var(--pale);
}
.customer-eyes.compact {
  margin: 0 0 var(--space-4);
  padding: var(--space-4) var(--space-4);
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #f8f9f2;
}
.customer-eyes-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-3);
}
.customer-eyes-head h2 {
  font-size: var(--text-base);
  margin: 2px 0 0;
  line-height: 1.3;
}
.customer-eyes.compact .eyebrow {
  margin-bottom: 2px;
}
.customer-eyes > .muted,
.customer-eyes-done {
  font-size: var(--text-xs);
  margin: var(--space-2) 0 var(--space-3);
  line-height: 1.6;
}
.customer-eyes-done {
  color: #3c613b;
  font-weight: 600;
}
.customer-eyes-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: var(--space-2);
}
.customer-eyes-list li {
  display: grid;
  grid-template-columns: 16px minmax(0, 1fr);
  gap: var(--space-2);
  align-items: start;
  font-size: var(--text-xs);
  line-height: 1.5;
}
.customer-eyes-list li svg {
  margin-top: 2px;
  color: #9aa791;
}
.customer-eyes-list li[data-state=ok] svg {
  color: #3c613b;
}
.customer-eyes-list li[data-state=missing] svg {
  color: #ad742f;
}
.customer-eyes-list li strong {
  display: block;
}
.customer-eyes-list li span {
  color: var(--muted);
}
.customer-eyes-firm {
  margin-top: var(--space-3);
  padding-top: var(--space-3);
  border-top: 1px solid var(--line);
  font-size: var(--text-xs);
  display: grid;
  gap: var(--space-2);
}
.customer-eyes-firm a {
  text-decoration: underline;
  text-underline-offset: 3px;
  justify-self: start;
}
.customer-eyes-source {
  font-size: var(--text-xs);
  color: var(--muted);
  margin: var(--space-3) 0 0;
}
.trust-list {
  list-style: none;
  padding: 0;
  margin: 0 0 var(--space-3);
  display: grid;
  gap: var(--space-2);
}
.trust-list li {
  display: grid;
  grid-template-columns: 16px minmax(0, 1fr);
  gap: var(--space-3);
  align-items: start;
  font-size: var(--text-base);
  line-height: 1.5;
}
.trust-list li svg {
  margin-top: var(--space-1);
  color: #3b5446;
}
.trust-list a {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.extra-work .rate-card {
  margin-top: var(--space-2);
}
.offertkoll-page {
  max-width: 720px;
  margin: 0 auto;
  padding: var(--space-6) var(--space-5) var(--space-7);
}
.offertkoll-page .brand {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-weight: 700;
  text-decoration: none;
  color: inherit;
  margin-bottom: var(--space-5);
}
.offertkoll-page .page-head {
  margin-bottom: var(--space-5);
}
.offertkoll-page .page-head p {
  max-width: 56ch;
}
.offertkoll-form {
  background: var(--surface, #fff);
  border: 1px solid var(--line, #e5e7e3);
  border-radius: 12px;
  padding: var(--space-5);
}
.offertkoll-form input[type=file] {
  display: block;
  margin-top: var(--space-2);
}
.offertkoll-form small {
  display: block;
  margin-top: var(--space-2);
  color: var(--muted, #6b7280);
}
.offertkoll-form .notice {
  margin-top: var(--space-3);
}
.offertkoll-result {
  background: var(--surface, #fff);
  border: 1px solid var(--line, #e5e7e3);
  border-radius: 12px;
  padding: var(--space-5);
  display: grid;
  gap: var(--space-4);
}
.offertkoll-result h2 {
  margin: 0;
  font-size: var(--text-lg);
  line-height: 1.25;
}
.offertkoll-result h3 {
  margin: var(--space-2) 0 0;
  font-size: var(--text-base);
}
.offertkoll-result .muted {
  margin: 0;
  max-width: 60ch;
}
.offertkoll-list.customer-eyes-list {
  gap: var(--space-3);
}
.offertkoll-list.customer-eyes-list li {
  font-size: var(--text-base);
  grid-template-columns: 20px minmax(0, 1fr);
  gap: var(--space-3);
}
.offertkoll-list li strong {
  display: block;
}
.offertkoll-list li span {
  color: var(--muted, #6b7280);
}
.offertkoll-list li[data-state=ok] svg {
  color: #3f7d4e;
}
.offertkoll-list li[data-state=missing] svg {
  color: #b3261e;
}
.offertkoll-list li[data-state=unclear] svg {
  color: #a86a00;
}
.offertkoll-cta {
  display: grid;
  gap: var(--space-3);
  justify-items: start;
  padding-top: var(--space-2);
  border-top: 1px solid var(--line, #e5e7e3);
}
.offertkoll-cta p {
  margin: 0;
  max-width: 60ch;
}
.offertkoll-source {
  font-size: var(--text-xs);
  color: var(--muted, #6b7280);
  margin: 0;
}
.offertkoll-about {
  margin-top: var(--space-6);
}
.offertkoll-about h2 {
  font-size: var(--text-md);
}
.offertkoll-about p {
  max-width: 60ch;
}
@media (max-width: 600px) {
  .offertkoll-page {
    padding: var(--space-5) var(--space-4) var(--space-7);
  }
  .offertkoll-result {
    padding: var(--space-4);
  }
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/voice-start.css */
.voice-start-choices {
  grid-template-columns: 1.1fr 1fr 1fr;
}
.voice-start-choices .quote-start-choice {
  padding: var(--space-5);
  grid-template-columns: 34px minmax(0, 1fr);
  gap: var(--space-4);
}
.voice-start-choices .start-choice-icon {
  width: 34px;
  height: 39px;
}
.voice-start-choices .quote-start-choice h2 {
  font-size: var(--text-lg);
}
.voice-start-choices.compact-choices .quote-start-choice {
  padding: var(--space-4) var(--space-4);
}
.voice-start-choices.compact-choices .quote-start-choice h2 {
  font-size: var(--text-base);
  line-height: 1.5;
}
.voice-start-choices .quote-start-choice p {
  font-size: var(--text-sm);
  line-height: 1.7;
}
.voice-start-choices.compact-choices .quote-start-choice p {
  font-size: var(--text-xs);
  line-height: 1.65;
}
.voice-choice {
  background: #f6f7f1;
}
.voice-quote-page {
  max-width: 1050px;
}
.voice-quote-page .page-head h1 {
  font-size: var(--text-xl);
  max-width: 650px;
  line-height: var(--leading-tight);
}
.voice-quote-page .page-head p {
  max-width: 560px;
  line-height: var(--leading-normal);
}
.voice-quote-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  list-style: none;
  padding: 0 0 var(--space-5);
  margin: 0 0 var(--space-6);
  border-bottom: 1px solid var(--line);
}
.voice-quote-steps li {
  display: flex;
  gap: var(--space-3);
  min-width: 0;
}
.voice-quote-steps svg {
  flex: none;
  color: #49603c;
  margin-top: 2px;
}
.voice-quote-steps strong {
  display: block;
  font-size: var(--text-sm);
  font-weight: 650;
  line-height: 1.6;
}
.voice-quote-steps span {
  display: block;
  font-size: var(--text-xs);
  line-height: 1.8;
  color: #56634f;
  margin-top: var(--space-2);
}
.voice-quote-workflow {
  max-width: 760px;
}
.voice-quote-name {
  max-width: 600px;
  padding: var(--space-5);
}
.voice-quote-name h2 {
  font-size: var(--text-lg);
  letter-spacing: -.2px;
  margin: var(--space-2) 0 var(--space-3);
}
.voice-quote-name p {
  font-size: var(--text-sm);
  color: #53624d;
  line-height: 1.8;
  margin: 0;
}
.voice-quote-name .field {
  margin: var(--space-2) 0;
}
.voice-quote-name .btn {
  justify-self: start;
}
.voice-quote-name > small {
  font-size: var(--text-xs);
  line-height: 1.8;
  color: #53624d;
}
.voice-quote-saved {
  display: flex;
  gap: var(--space-4);
  align-items: center;
  justify-content: space-between;
  padding: var(--space-4) var(--space-5);
  background: #eef3e7;
  border: 1px solid #dce5d3;
  border-radius: 10px;
  margin: 0 0 var(--space-5);
}
.voice-quote-saved strong {
  display: block;
  font-size: var(--text-md);
  line-height: 1.6;
  overflow-wrap: anywhere;
  margin-top: var(--space-1);
}
.voice-quote-saved a {
  flex-shrink: 0;
  font-size: var(--text-xs);
  color: #334e3b;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.voice-quote-workflow .site-visit-voice {
  margin-top: 0;
}
.voice-quote-workflow .site-visit-voice > h2 {
  font-size: var(--text-lg);
  line-height: var(--leading-tight);
}
.voice-quote-workflow .site-visit-voice > p {
  font-size: var(--text-xs);
  line-height: 1.8;
}
.voice-quote-workflow .site-visit-voice .field {
  margin: var(--space-5) 0;
}
.voice-quote-workflow .site-visit-voice .field > small {
  line-height: 1.8;
}
.voice-quote-explainer {
  font-size: var(--text-xs);
  color: #58664f;
  max-width: 600px;
  line-height: 1.8;
  margin: var(--space-5) 0 var(--space-6);
}
.voice-quote-recent {
  max-width: 760px;
}
.voice-quote-recent h2 {
  font-size: var(--text-lg);
}
.voice-quote-recent p {
  font-size: var(--text-xs);
  color: #58664f;
  line-height: 1.8;
}
.voice-quote-recent ul {
  list-style: none;
  margin: var(--space-4) 0 0;
  padding: 0;
}
.voice-quote-recent li + li {
  border-top: 1px solid var(--line);
}
.voice-quote-recent a {
  display: block;
  padding: var(--space-4) 0;
  line-height: 1.6;
  font-size: var(--text-sm);
  color: #334e3b;
  text-decoration: underline;
  text-underline-offset: 4px;
  overflow-wrap: anywhere;
}
.voice-quote-editor-entry {
  display: flex;
  gap: var(--space-3);
  padding: var(--space-4);
  background: #f5f7f0;
  border: 1px solid var(--line);
  border-radius: 8px;
  margin-bottom: var(--space-5);
}
.voice-quote-editor-entry svg {
  flex: none;
  color: #4b643c;
  margin-top: var(--space-1);
}
.voice-quote-editor-entry strong {
  display: block;
  font-size: var(--text-xs);
  line-height: 1.7;
}
.voice-quote-editor-entry button {
  display: block;
  border: 0;
  background: none;
  padding: var(--space-1) 0;
  margin: var(--space-1) 0;
  color: #304a37;
  font-size: var(--text-xs);
  text-align: left;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.voice-quote-editor-entry small {
  font-size: var(--text-xs);
  color: #56634f;
  line-height: 1.8;
  display: block;
}
@media (max-width: 1024px) {
  .voice-start-choices,
  .voice-start-choices.compact-choices {
    grid-template-columns: 1fr;
  }
  .voice-quote-steps {
    gap: var(--space-4);
  }
  .voice-quote-page .page-head h1 {
    font-size: var(--text-xl);
  }
}
@media (max-width: 767px) {
  .voice-start-choices .quote-start-choice {
    padding: var(--space-4);
  }
  .voice-quote-page .page-head h1 {
    font-size: var(--text-xl);
  }
  .voice-quote-steps {
    grid-template-columns: 1fr;
    gap: var(--space-5);
    padding-bottom: var(--space-5);
    margin-bottom: var(--space-5);
  }
  .voice-quote-steps span {
    margin-top: 2px;
  }
  .voice-quote-name {
    padding: var(--space-4);
  }
  .voice-quote-name h2 {
    font-size: var(--text-lg);
  }
  .voice-quote-name .btn {
    width: 100%;
    white-space: normal;
  }
  .voice-quote-saved {
    flex-direction: column;
    align-items: flex-start;
    padding: var(--space-4);
  }
  .voice-quote-saved strong {
    font-size: var(--text-base);
  }
  .voice-quote-saved a {
    padding: var(--space-1) 0;
  }
  .voice-quote-workflow .site-visit-voice > h2 {
    font-size: var(--text-lg);
  }
  .voice-quote-workflow .site-visit-voice .task-filters {
    flex-wrap: wrap;
  }
  .voice-quote-workflow .site-visit-voice audio {
    max-width: 100%;
    width: 100%;
  }
  .voice-quote-workflow .site-visit-voice input[type=file] {
    max-width: 100%;
    min-width: 0;
  }
  .voice-quote-workflow .site-visit-voice .btn {
    white-space: normal;
    text-align: left;
  }
}
.notes-quote-page {
  max-width: 1080px;
  margin: 0 auto;
}
.notes-quote-page .page-head p {
  max-width: 710px;
}
.notes-quote-page .page-head h1 {
  max-width: 820px;
}
.notes-form .notes-customer-help {
  margin-top: -12px;
  font-size: var(--text-sm);
  line-height: 1.6;
}
.notes-form .notes-create-help {
  font-size: var(--text-sm);
  line-height: 1.65;
  margin: var(--space-3) 0;
}
.notes-form .notes-options > summary {
  min-height: var(--control-lg);
  align-content: center;
  cursor: pointer;
}
.notes-form :is(select, input, textarea) {
  max-width: 100%;
  min-width: 0;
}
.notes-form :is(.notes-options > summary, a):focus-visible {
  outline: 2px solid var(--ink,var(--brand-ink));
  outline-offset: 4px;
  border-radius: 3px;
}
.quote-input-methods {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-3);
  margin: var(--space-5) 0;
}
.quote-input-methods a {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  padding: var(--space-4) var(--space-5);
  border: 1px solid var(--line);
  border-radius: 12px;
  background: white;
  min-width: 0;
}
.quote-input-methods a[aria-current] {
  background: var(--ink);
  color: white;
  border-color: var(--ink);
}
.quote-input-methods span {
  font-size: var(--text-xs);
  opacity: .85;
}
.quote-input-methods strong {
  font-size: var(--text-base);
}
.notes-input-panel {
  border-top: 4px solid #899c72;
  padding: var(--space-6);
}
.notes-input-panel h2 {
  font-size: var(--text-lg);
}
.notes-field {
  margin: var(--space-5) 0 var(--space-4);
}
.notes-field textarea {
  font-size: var(--text-md);
  line-height: 1.8;
  min-height: 270px;
  resize: vertical;
  background: #fbfcf8;
}
.notes-field small {
  font-weight: 400;
  line-height: 1.7;
}
.notes-customer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--space-4);
  align-items: end;
  margin: var(--space-5) 0;
}
.notes-customer .field {
  margin: 0;
}
.notes-options {
  margin: var(--space-4) 0;
}
.notes-options summary {
  font-size: var(--text-sm);
  font-weight: 650;
  padding: var(--space-2) 0;
}
.notes-options .field {
  margin-top: var(--space-4);
}
.notes-actions {
  padding-top: var(--space-3);
}
.notes-actions .btn {
  font-size: var(--text-sm);
  min-height: var(--control-lg);
}
.notes-result {
  scroll-margin-top: 28px;
}
.notes-result > .quiet-box {
  margin: var(--space-5) 0;
}
.notes-result summary {
  font-weight: 700;
}
.notes-result .voice-card {
  margin: var(--space-4) 0;
}
.notes-manual {
  text-align: center;
  margin: var(--space-5) 0;
}
.notes-input-panel .customer-editor {
  background: var(--paper);
  margin: var(--space-5) 0;
}
.notes-input-panel .customer-editor summary {
  margin-bottom: var(--space-3);
}
@media (max-width: 767px) {
  .quote-input-methods {
    grid-template-columns: 1fr;
    gap: var(--space-2);
  }
  .quote-input-methods a {
    padding: var(--space-3) var(--space-4);
    gap: 2px;
  }
  .notes-input-panel {
    padding: var(--space-5) var(--space-4);
  }
  .notes-input-panel h2 {
    font-size: var(--text-lg);
  }
  .notes-customer {
    grid-template-columns: 1fr;
  }
  .notes-customer .btn {
    justify-self: start;
  }
  .notes-actions {
    align-items: stretch;
    flex-direction: column;
  }
  .notes-field textarea {
    min-height: 300px;
  }
  .notes-result .task-filters {
    flex-wrap: wrap;
  }
  .notes-quote-page .btn {
    white-space: normal;
  }
  .notes-quote-page .voice-card {
    padding: var(--space-4);
  }
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/reviews.css */
.review-page-head {
  margin-top: var(--space-6);
  gap: var(--space-5);
  align-items: flex-start;
}
.review-page-head h1 {
  max-width: 850px;
  font-size: var(--text-xl);
  letter-spacing: -.5px;
  line-height: var(--leading-tight);
}
.review-page-head p {
  max-width: 700px;
  line-height: 1.75;
}
.review-settings-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: var(--space-5);
  align-items: start;
}
.review-settings-form h2,
.review-profile-help h2 {
  font-size: var(--text-lg);
  line-height: var(--leading-tight);
  letter-spacing: -.2px;
  margin: var(--space-3) 0;
}
.review-settings-form > p,
.review-profile-help > p {
  line-height: 1.7;
  margin-bottom: var(--space-5);
}
.review-settings-form input {
  width: 100%;
  min-width: 0;
}
.review-settings-form .notice svg {
  vertical-align: middle;
}
.review-link-help {
  border-top: 1px solid var(--line,#dce1d8);
  margin-top: var(--space-5);
  padding-top: var(--space-5);
}
.review-link-help summary {
  font-weight: 700;
}
.review-link-help ol {
  padding-left: var(--space-5);
  line-height: 1.75;
  margin: var(--space-4) 0;
}
.review-link-help li + li {
  margin-top: var(--space-2);
}
.review-profile-help {
  border: 1px solid #d8e1d2;
  background: #edf1e7;
  border-radius: 18px;
  padding: var(--space-5);
  min-width: 0;
}
.review-help-icon {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  background: #fff;
  border: 1px solid #d8e1d2;
  border-radius: 12px;
  margin-bottom: var(--space-5);
  color: #344d39;
}
.review-profile-help > small {
  display: block;
  color: #536458;
  font-size: var(--text-sm);
  line-height: 1.7;
  margin-top: var(--space-5);
}
.review-help-form {
  margin-top: var(--space-5);
  padding-top: var(--space-5);
  border-top: 1px solid #d0dbc8;
}
.review-help-form fieldset,
.review-request fieldset {
  border: 0;
  padding: 0;
  margin: 0;
  min-width: 0;
  display: grid;
  gap: var(--space-4);
}
.review-help-form .field {
  min-width: 0;
}
.review-how {
  margin: var(--space-6) 0 var(--space-5);
  padding: var(--space-5) 0;
  border-top: 1px solid var(--line,#dce1d8);
}
.review-how h2 {
  font-size: var(--text-lg);
  letter-spacing: -.2px;
  margin-bottom: var(--space-5);
}
.review-how ol {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  padding: 0;
  list-style: none;
  counter-reset: review-step;
  margin: 0 0 var(--space-6);
}
.review-how li {
  counter-increment: review-step;
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}
.review-how li:before {
  content: counter(review-step, decimal-leading-zero);
  font-size: var(--text-xs);
  font-weight: 800;
  color: #536458;
  letter-spacing: .08em;
}
.review-how li span {
  color: #536458;
  font-size: var(--text-base);
  line-height: 1.7;
}
.review-section-heading {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  align-items: center;
  margin-bottom: var(--space-4);
}
.review-section-heading > div {
  display: contents;
}
.review-section-heading > svg {
  flex-shrink: 0;
  color: #526b45;
}
.review-section-heading .eyebrow {
  margin: 0;
}
.review-section-heading h2 {
  flex-basis: 100%;
  margin: 0;
  font-size: var(--text-lg);
  letter-spacing: -.2px;
  line-height: var(--leading-tight);
}
.job-completion p,
.review-request > p {
  line-height: 1.7;
}
.job-completion form {
  margin-top: var(--space-5);
}
.job-completion .field input {
  min-width: 0;
  max-width: 100%;
}
.job-completion details p {
  margin-top: var(--space-4);
}
.job-completion details .btn {
  margin-top: var(--space-4);
}
.review-recipient {
  display: grid;
  gap: var(--space-1);
  background: #f4f6f0;
  border-radius: 10px;
  padding: var(--space-4) var(--space-4);
  overflow-wrap: anywhere;
}
.review-recipient > span {
  font-size: var(--text-xs);
  color: #536458;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.review-recipient small {
  line-height: 1.5;
  color: #536458;
}
.review-request .form {
  margin-top: var(--space-5);
}
.review-request textarea {
  line-height: 1.7;
  min-height: 180px;
}
.review-request .form > small {
  color: #536458;
  line-height: 1.6;
}
.review-email-preview {
  margin-top: var(--space-3);
  border-top: 1px solid #dce1d8;
  padding-top: var(--space-5);
  display: grid;
  gap: var(--space-4);
}
.review-email-preview h3,
.review-email-preview p {
  margin: 0;
}
.review-email-preview iframe {
  width: 100%;
  height: 680px;
  border: 1px solid #dce1d8;
  border-radius: 10px;
  background: #f6f5ef;
  min-width: 0;
}
.review-url {
  font-size: var(--text-sm);
  line-height: 1.6;
  color: #536458;
  overflow-wrap: anywhere;
}
.review-delivery {
  display: grid;
  gap: var(--space-3);
  padding: var(--space-5);
  border-radius: 12px;
  background: #edf1e7;
  overflow-wrap: anywhere;
}
.review-delivery > strong {
  font-size: var(--text-lg);
}
.review-delivery > small {
  line-height: 1.7;
  color: #536458;
}
.review-delivery > .btn {
  justify-self: start;
}
.review-sent-copy {
  margin-top: var(--space-5);
}
.review-sent-copy summary {
  margin-bottom: var(--space-4);
}
.review-sent-copy p {
  line-height: 1.7;
}
.review-job-summary {
  display: flex;
  align-items: center;
  gap: var(--space-5);
  margin-top: var(--space-5);
}
.review-job-summary > svg {
  flex: 0 0 auto;
  color: #526b45;
}
.review-job-summary > div {
  flex: 1;
  min-width: 0;
}
.review-job-summary h2 {
  font-size: var(--text-lg);
  margin: var(--space-2) 0;
  letter-spacing: -.2px;
}
.review-job-summary p {
  margin: 0;
  line-height: 1.65;
}
.review-job-summary .btn {
  flex-shrink: 0;
}
.review-settings-entry {
  margin-top: var(--space-5);
  border-top: 1px solid #dce1d8;
  padding-top: var(--space-5);
}
@media (max-width: 1024px) {
  .review-settings-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .review-job-summary {
    flex-wrap: wrap;
  }
  .review-job-summary .btn {
    margin-left: var(--space-7);
  }
  .review-how ol {
    gap: var(--space-4);
  }
}
@media (max-width: 767px) {
  .review-profile-help {
    padding: var(--space-4);
  }
  .review-how ol {
    grid-template-columns: 1fr;
    gap: var(--space-5);
  }
  .review-page-head h1 {
    font-size: var(--text-xl);
  }
  .review-settings-form h2,
  .review-profile-help h2,
  .review-section-heading h2 {
    font-size: var(--text-lg);
  }
  .review-job-summary {
    gap: var(--space-4);
  }
  .review-job-summary > svg {
    display: none;
  }
  .review-job-summary .btn {
    margin-left: 0;
    width: 100%;
  }
  .review-email-preview iframe {
    height: 740px;
  }
  .review-recipient {
    padding: var(--space-4);
  }
  .review-delivery {
    padding: var(--space-4);
  }
  .review-page-head > .btn {
    width: 100%;
  }
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/mobile-app.css */
@media (max-width: 767px) {
  .portal {
    padding-bottom: calc(50px + env(safe-area-inset-bottom));
  }
}
@media (pointer: coarse), (max-width: 767px) {
  input,
  select,
  textarea,
  .workspace-shell input,
  .workspace-shell select,
  .workspace-shell textarea,
  .register-search input,
  .workspace-shell .quote-line-fields input {
    font-size: var(--text-md);
  }
  input,
  select,
  .workspace-shell input,
  .workspace-shell select {
    min-height: var(--control-field-touch);
  }
  textarea,
  .workspace-shell textarea {
    min-height: 110px;
  }
  input[type=checkbox],
  .workspace-shell input[type=checkbox] {
    width: 22px;
    height: 22px;
    min-height: 0;
  }
  .btn,
  .workspace-shell .btn,
  .workspace-shell .btn.tertiary {
    min-height: var(--control-lg);
  }
  .workspace-shell .btn.small {
    min-height: var(--control-lg);
  }
  .icon-btn {
    min-width: var(--control-lg);
    min-height: var(--control-lg);
  }
  .section-tabs a,
  .section-tabs button,
  .workspace-shell .section-tabs a,
  .workspace-shell .section-tabs button {
    padding: var(--space-4) 0;
    font-size: var(--text-xs);
  }
  .workspace-shell .filter-pills > button {
    min-height: var(--control-lg);
  }
  summary {
    min-height: var(--control-lg);
    display: flex;
    align-items: center;
    gap: var(--space-2);
  }
  .line-list-scroll summary {
    min-height: var(--control-lg);
  }
}
@media (display-mode: standalone) {
  .portal,
  .login-page {
    padding-top: calc(16px + env(safe-area-inset-top));
  }
}
@media (pointer: coarse), (max-width: 767px) {
  .workspace-shell .editor-modes button,
  .workspace-shell .editor-part-nav button,
  .workspace-shell .editor-view-switch > button {
    min-height: var(--control-lg);
  }
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/shell.css */
.layout {
  display: grid;
  grid-template-columns: 248px minmax(0, 1fr);
  min-height: 100dvh;
}
.workspace-shell {
  --paper:#f8f8f4;
  --line:#e0e4dc;
  --radius:16px;
  background: var(--paper);
}
.sidebar {
  background: #f0f2eb;
  border-right: 1px solid #e0e4da;
  padding: var(--space-6) var(--space-4) var(--space-5);
  position: sticky;
  top: 0;
  height: 100dvh;
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.sidebar .brand {
  padding: 0 var(--space-3);
  font-size: var(--text-xl);
  letter-spacing: -1.5px;
}
.workspace-name {
  font-size: var(--text-xs);
  letter-spacing: 1.5px;
  color: var(--muted);
  margin: var(--space-4) var(--space-3) var(--space-6);
  text-transform: uppercase;
}
.nav {
  display: grid;
  gap: var(--space-2);
}
.nav > .nav-section {
  padding: var(--space-4) var(--space-3) var(--space-1);
  color: var(--muted);
  font-size: var(--text-xs);
  font-weight: 700;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.nav > a,
.nav > button,
.nav > .workspace-more > summary {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  width: 100%;
  min-width: 0;
  padding: var(--space-2) var(--space-3);
  border: 1px solid transparent;
  border-radius: var(--radius-control);
  background: transparent;
  text-align: left;
  font: 600 var(--text-sm)/1.4 var(--font-ui);
  color: #5d6a5e;
  cursor: pointer;
}
.nav > a:hover,
.nav > button:hover,
.nav > .workspace-more > summary:hover {
  background: #e6ebdf;
}
.nav .active {
  background: #fff;
  border-color: #e0e5da;
  color: #243c30;
  box-shadow: 0 3px 8px #253c3004;
}
.nav .active svg {
  color: #324d3a;
}
.nav svg {
  flex-shrink: 0;
}
.nav a > span {
  display: flex;
  flex-direction: column;
  line-height: 1.25;
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}
.nav a small {
  font-size: var(--text-xs);
  font-weight: 500;
  color: #7c877c;
  letter-spacing: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.nav a.active small {
  color: #58685b;
}
.workspace-more {
  margin-top: var(--space-4);
}
.workspace-more > summary {
  list-style: none;
}
.workspace-more > summary::-webkit-details-marker {
  display: none;
}
.workspace-more > summary > svg:last-child {
  margin-left: auto;
  transition: transform .15s;
}
.workspace-more[open] > summary > svg:last-child {
  transform: rotate(180deg);
}
.more-short {
  display: none;
}
.workspace-more nav {
  display: grid;
  padding: var(--space-1) var(--space-3) 0;
  gap: 2px;
}
.workspace-more .nav-group {
  display: grid;
  align-content: start;
}
.workspace-more .nav-mobile-links {
  display: none;
}
.workspace-more .nav-group > span {
  font-size: var(--text-xs);
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--muted);
  padding: var(--space-3) 0 var(--space-1);
}
.workspace-more nav a {
  display: block;
  padding: var(--space-2) 0;
  font-size: var(--text-xs);
  color: #586550;
}
.workspace-more nav a[aria-current],
.workspace-more nav a:hover {
  color: var(--ink);
  text-decoration: underline;
  text-underline-offset: 4px;
}
.sidebar-bottom {
  margin-top: auto;
  display: grid;
  gap: var(--space-2);
  padding-top: var(--space-4);
}
.sidebar-plan {
  border-top: 1px solid #d3dbcf;
  padding: var(--space-4) var(--space-3) var(--space-1);
  margin-top: var(--space-3);
}
.sidebar-plan-trial {
  display: block;
  margin-top: var(--space-2);
  font-size: var(--text-xs);
  color: #58685b;
}
.avatar {
  background: #dce4d7;
  color: var(--ink);
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-weight: 700;
  flex-shrink: 0;
}
.topbar {
  height: 60px;
  border-bottom: 1px solid var(--line);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-4);
  padding: 0 var(--space-6);
  background: #fffdf9;
  font-size: var(--text-xs);
  color: var(--muted);
}
.topbar-brand {
  display: none;
}
.topbar-firm {
  min-width: 0;
  overflow-wrap: anywhere;
  font-weight: 600;
  color: var(--ink);
}
.topbar-actions {
  display: flex;
  align-items: center;
  gap: var(--space-1);
  flex-shrink: 0;
}
.topbar-notices {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  min-height: var(--control-sm);
  padding: var(--space-1) var(--space-3);
  border-radius: var(--radius-control);
  color: var(--muted);
  font-size: var(--text-xs);
  font-weight: 600;
}
.topbar-notices:hover,
.topbar .feedback-trigger:hover {
  background: #eef0e8;
  color: var(--ink);
}
.topbar-notices .count {
  min-width: 18px;
  height: 18px;
  padding: 0 var(--space-1);
  border-radius: 9px;
  background: var(--accent);
  color: var(--on-accent);
  font-size: var(--text-xs);
  font-weight: 700;
  display: grid;
  place-items: center;
  line-height: 1;
}
.feedback-trigger {
  white-space: nowrap;
}
.account-menu {
  position: relative;
}
.account-menu > summary {
  list-style: none;
  display: flex;
  align-items: center;
  gap: var(--space-1);
  padding: var(--space-1) var(--space-2) var(--space-1) var(--space-1);
  border-radius: 24px;
  cursor: pointer;
  color: var(--muted);
}
.account-menu > summary::-webkit-details-marker {
  display: none;
}
.account-menu > summary:hover,
.account-menu[open] > summary {
  background: #eef0e8;
}
.account-menu-panel {
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  width: 264px;
  background: #fffefb;
  border: 1px solid var(--line);
  border-radius: 12px;
  box-shadow: 0 12px 32px #263b331f;
  padding: var(--space-2);
  z-index: 35;
  display: grid;
  gap: 2px;
}
.account-menu-head {
  padding: var(--space-3) var(--space-3) var(--space-3);
  border-bottom: 1px solid var(--line);
  margin-bottom: var(--space-2);
  display: grid;
  gap: var(--space-1);
  font-size: var(--text-xs);
  color: var(--muted);
}
.account-menu-head strong {
  color: var(--ink);
  overflow-wrap: anywhere;
  font-size: var(--text-sm);
}
.account-menu-panel a,
.account-menu-panel button,
.account-menu-panel .btn.tertiary.small {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: var(--space-3);
  width: 100%;
  min-height: var(--control-md);
  padding: var(--space-2) var(--space-3);
  border: 0;
  border-radius: var(--radius-control);
  background: none;
  text-align: left;
  font-size: var(--text-xs);
  font-weight: 600;
  line-height: 1.35;
  color: var(--ink);
  transition: none;
}
.account-menu-panel a:hover,
.account-menu-panel button:hover,
.account-menu-panel .btn.tertiary.small:hover {
  background: #f0f2ea;
  color: var(--ink);
}
.account-menu-panel a svg,
.account-menu-panel button svg {
  color: var(--muted);
  flex-shrink: 0;
}
.account-menu-panel .install-app {
  display: contents;
}
.account-menu-panel .install-help {
  margin: 0;
  padding: 0 var(--space-3) var(--space-2);
  font-size: var(--text-xs);
  line-height: 1.5;
  color: var(--muted);
}
.account-menu-panel small[role=alert] {
  display: block;
  padding: var(--space-1) var(--space-3) var(--space-2);
  color: var(--danger);
}
.install-app {
  display: grid;
  gap: var(--space-2);
  justify-items: start;
}
.install-help {
  margin: 0;
  font-size: var(--text-xs);
  line-height: 1.5;
  color: var(--muted);
  max-width: 30ch;
}
.install-help svg {
  vertical-align: -2px;
}
.content {
  padding: var(--space-6) var(--space-6) var(--space-7);
  max-width: 1510px;
  margin: auto;
}
@media (min-width: 1600px) {
  .content {
    padding: var(--space-7) var(--space-7);
  }
}
@media (pointer: coarse) and (min-width: 1025px) {
  .nav > a,
  .nav > button,
  .nav > .workspace-more > summary {
    min-height: var(--control-lg);
  }
}
@media (min-width: 1025px) and (max-width: 1200px) {
  .layout {
    grid-template-columns: 200px minmax(0, 1fr);
  }
  .sidebar {
    padding-left: var(--space-3);
    padding-right: var(--space-3);
  }
  .content {
    padding: var(--space-6);
  }
  .topbar {
    padding: 0 var(--space-6);
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .layout {
    grid-template-columns: 76px minmax(0, 1fr);
  }
  .sidebar {
    padding: var(--space-5) var(--space-2) var(--space-4);
    align-items: center;
  }
  .sidebar .brand {
    font-size: 0;
    padding: 0;
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: var(--ink);
    display: grid;
    place-items: center;
  }
  .sidebar .brand i {
    margin: 0;
    width: 9px;
    height: 9px;
  }
  .workspace-name {
    display: none;
  }
  .nav {
    width: 100%;
    margin-top: var(--space-5);
  }
  .nav > .nav-section {
    display: none;
  }
  .nav > a,
  .nav > button,
  .nav > .workspace-more > summary {
    flex-direction: column;
    justify-content: center;
    gap: var(--space-1);
    padding: var(--space-3) var(--space-1);
    text-align: center;
    font-size: var(--text-xs);
    line-height: 1.25;
  }
  .nav a small {
    display: none;
  }
  .nav a > span {
    align-items: center;
  }
  .nav svg {
    width: 19px;
    height: 19px;
  }
  .workspace-more {
    margin-top: 0;
    position: relative;
  }
  .workspace-more > summary > svg:last-child {
    display: none;
  }
  .more-long {
    display: none;
  }
  .more-short {
    display: block;
  }
  .workspace-more:not([data-touched]) > nav {
    display: none;
  }
  .workspace-more nav {
    position: absolute;
    left: calc(100% + 10px);
    top: 0;
    min-width: 220px;
    padding: var(--space-3) var(--space-4) var(--space-4);
    background: #fffefb;
    border: 1px solid var(--line);
    border-radius: 12px;
    box-shadow: 0 12px 32px #263b331f;
    z-index: 35;
  }
  .sidebar-bottom .btn,
  .sidebar-plan {
    display: none;
  }
  .content {
    padding: var(--space-6) var(--space-5);
  }
  .topbar {
    padding: 0 var(--space-5);
  }
}
@media (max-width: 767px) {
  .nav > a.nav-desktop-link,
  .nav > .nav-section {
    display: none;
  }
  .workspace-more .nav-mobile-links {
    display: grid;
  }
  .workspace-more.mobile-route-active > summary {
    background: #fff;
    color: var(--ink);
  }
  .layout {
    display: block;
  }
  .workspace-shell:not(.product-demo) .sidebar {
    display: contents;
  }
  .workspace-shell:not(.product-demo) .sidebar > .brand,
  .workspace-shell:not(.product-demo) .workspace-name,
  .workspace-shell:not(.product-demo) .sidebar-bottom {
    display: none;
  }
  .topbar {
    position: sticky;
    top: 0;
    z-index: 30;
    height: 56px;
    padding: 0 var(--space-3) 0 var(--space-4);
    gap: var(--space-2);
    background: #f6f5efee;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
  }
  .topbar-brand {
    display: inline-block;
    font-size: var(--text-xl);
    letter-spacing: -1.5px;
    padding: 0;
  }
  .topbar-firm {
    display: none;
  }
  .topbar .feedback-trigger,
  .topbar-notices {
    justify-content: center;
    gap: 0;
    min-width: var(--control-lg);
    min-height: var(--control-lg);
    padding: var(--space-2);
    font-size: 0;
  }
  .topbar .feedback-trigger svg {
    width: 18px;
    height: 18px;
  }
  .topbar-notices svg {
    width: 19px;
    height: 19px;
  }
  .topbar-notices .count {
    position: absolute;
    top: 1px;
    right: 0;
    font-size: var(--text-xs);
  }
  .account-menu-panel {
    position: fixed;
    left: 10px;
    right: 10px;
    top: 64px;
    width: auto;
  }
  .nav {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 40;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(max-content, 1fr);
    gap: 0;
    margin: 0;
    background: #f2f4ee;
    border-top: 1px solid var(--line);
    padding: 6px 4px calc(6px + env(safe-area-inset-bottom));
    box-shadow: 0 -2px 14px #263b330f;
  }
  .nav > a,
  .nav > button,
  .nav > .workspace-more > summary {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: var(--space-1);
    min-height: 52px;
    padding: var(--space-2) var(--space-1);
    border: 0;
    border-radius: 9px;
    font-size: var(--text-xs);
    line-height: 1.2;
    white-space: nowrap;
    text-align: center;
  }
  .nav a small {
    display: none;
  }
  .nav a > span {
    align-items: center;
  }
  .nav svg {
    width: 20px;
    height: 20px;
  }
  .nav .active {
    background: #fff;
    box-shadow: none;
  }
  .workspace-more {
    margin: 0;
    position: static;
  }
  .workspace-more > summary {
    height: 100%;
  }
  .workspace-more > summary > svg:last-child {
    display: none;
  }
  .workspace-more[open] > summary {
    background: #fff;
  }
  .more-long {
    display: none;
  }
  .more-short {
    display: block;
  }
  .workspace-more:not([data-touched]) > nav {
    display: none;
  }
  .workspace-more nav {
    position: fixed;
    left: 10px;
    right: 10px;
    bottom: calc(74px + env(safe-area-inset-bottom));
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: start;
    gap: 0 var(--space-4);
    padding: var(--space-2) var(--space-4) var(--space-4);
    background: #fffefb;
    border: 1px solid var(--line);
    border-radius: 14px;
    box-shadow: 0 12px 32px #263b3326;
    z-index: 45;
    max-height: calc(100dvh - 150px - env(safe-area-inset-bottom));
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .workspace-more nav a {
    padding: var(--space-3) 0;
    font-size: var(--text-sm);
  }
  .content {
    padding: var(--space-4) max(var(--space-4), env(safe-area-inset-right)) calc(84px + env(safe-area-inset-bottom)) max(var(--space-4), env(safe-area-inset-left));
  }
  .product-demo .sidebar {
    position: relative;
    height: auto;
    padding: var(--space-4) var(--space-4) var(--space-3);
    border-right: 0;
    border-bottom: 1px solid var(--line);
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--space-4);
  }
  .product-demo .sidebar .brand {
    padding: 0;
    font-size: var(--text-xl);
  }
  .product-demo .workspace-name,
  .product-demo .sidebar-bottom {
    display: none;
  }
}
@media (max-width: 360px) {
  .content {
    padding-left: var(--space-4);
    padding-right: var(--space-4);
  }
  .nav > a,
  .nav > button,
  .nav > .workspace-more > summary {
    font-size: var(--text-xs);
  }
}
@media (display-mode: standalone) {
  .sidebar {
    padding-top: calc(16px + env(safe-area-inset-top));
  }
  @media (max-width: 767px) {
    .topbar {
      height: calc(56px + env(safe-area-inset-top));
      padding-top: env(safe-area-inset-top);
    }
    .account-menu-panel {
      top: calc(64px + env(safe-area-inset-top));
    }
  }
}
@media print {
  .sidebar,
  .topbar {
    display: none !important;
  }
  .layout {
    display: block;
  }
  .content {
    padding: 0;
    max-width: none;
  }
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/execution.css */
.execution-form {
  display: grid;
  gap: var(--space-4);
  margin-top: var(--space-5);
  max-width: 760px;
}
.execution-form label,
.execution-toolbar label {
  display: grid;
  gap: var(--space-2);
  font-size: var(--text-sm);
  font-weight: 600;
}
.execution-form input:not([type=checkbox]),
.execution-form select,
.execution-form textarea,
.execution-toolbar input,
.execution-toolbar select {
  width: 100%;
  min-width: 0;
  min-height: var(--control-md);
  padding: var(--space-2) var(--space-3);
  border: 1px solid #cbd3c9;
  border-radius: var(--radius-control);
  background: #fff;
  font: inherit;
  font-size: var(--text-base);
  color: #253a31;
}
.execution-form textarea {
  resize: vertical;
}
.execution-form fieldset {
  border: 1px solid #dbe0d8;
  border-radius: 10px;
  padding: var(--space-4);
}
.execution-form details > summary {
  margin-bottom: var(--space-4);
}
.execution-two {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4);
}
.execution-toolbar {
  display: flex;
  align-items: end;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin: var(--space-5) 0;
}
.execution-toolbar label {
  flex: 1;
  min-width: 140px;
  max-width: 300px;
}
.execution-job-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
}
.execution-job-card {
  display: block;
  text-decoration: none;
  color: inherit;
  transition: border-color 0.15s;
}
.execution-job-card:hover {
  border-color: #748b71;
}
.execution-job-card h2 {
  font-size: var(--text-md);
  margin: var(--space-3) 0;
}
.execution-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-4);
  margin: var(--space-5) 0;
}
.execution-stats > div {
  background: #eef2e8;
  border: 1px solid #dae2d2;
  padding: var(--space-5);
  border-radius: 12px;
  display: grid;
  gap: var(--space-2);
}
.execution-stats strong {
  font-size: var(--text-xl);
  font-weight: 600;
  line-height: var(--leading-tight);
}
.execution-stats span {
  font-size: var(--text-sm);
  color: #50634f;
}
.execution-check {
  display: flex !important;
  align-items: center;
  gap: var(--space-3) !important;
  font-weight: 400 !important;
  margin: var(--space-3) 0;
  overflow-wrap: anywhere;
}
.execution-check input {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}
.execution-journal {
  display: grid;
  gap: var(--space-4);
}
.execution-entry {
  min-width: 0;
}
.execution-entry h3 {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  margin: var(--space-4) 0;
}
.execution-entry p {
  overflow-wrap: anywhere;
}
.execution-entry .execution-mark {
  font-weight: 600;
}
.execution-entry details {
  margin-top: var(--space-4);
}
.execution-void {
  opacity: 0.65;
}
.execution-thumbnails {
  display: flex;
  gap: var(--space-3);
  flex-wrap: wrap;
  margin: var(--space-4) 0;
}
.execution-thumbnails:empty {
  display: none;
}
.execution-thumbnails a {
  display: grid;
  gap: var(--space-2);
  width: 140px;
  overflow-wrap: anywhere;
  font-size: var(--text-xs);
}
.execution-thumbnails img {
  width: 140px;
  height: 100px;
  object-fit: cover;
  border-radius: 8px;
}
.execution-week {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: var(--space-2);
  margin: var(--space-5) 0;
}
.execution-day {
  min-width: 0;
  background: #f1f3ed;
  border-radius: 10px;
  padding: var(--space-3);
  min-height: 220px;
}
.execution-day h2 {
  font-size: var(--text-sm);
  margin: var(--space-1) 0 var(--space-4);
}
.execution-slot {
  display: grid;
  gap: var(--space-2);
  background: #fff;
  border: 1px solid #d9e2d0;
  border-radius: 8px;
  padding: var(--space-3);
  font-size: var(--text-xs);
  margin-bottom: var(--space-3);
  overflow-wrap: anywhere;
}
.execution-slot a {
  font-weight: 650;
}
.execution-slot p {
  font-size: var(--text-xs);
  margin: 0;
}
.execution-slot button {
  font-size: var(--text-xs);
}
.execution-report {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  padding: var(--space-4) 0;
  border-bottom: 1px solid #dce3d7;
}
.execution-report p {
  flex-basis: 100%;
}
.execution-files {
  max-height: 260px;
  overflow: auto;
}
.execution-form button:disabled {
  opacity: 0.55;
}
.execution-form small {
  font-size: var(--text-xs);
  color: #576957;
}
.execution-entry .inline {
  flex-wrap: wrap;
}
.execution-form .inline {
  flex-wrap: wrap;
}
.execution-week + details {
  margin-top: var(--space-5);
}
@media (max-width: 1100px) {
  .execution-week {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .execution-day {
    min-height: 140px;
  }
}
@media (max-width: 650px) {
  .execution-job-grid,
  .execution-stats,
  .execution-two,
  .execution-week {
    grid-template-columns: 1fr;
  }
  .execution-stats {
    gap: var(--space-3);
  }
  .execution-stats > div {
    padding: var(--space-4);
    grid-template-columns: 100px 1fr;
    align-items: center;
  }
  .execution-stats strong {
    font-size: var(--text-lg);
  }
  .execution-day {
    min-height: 70px;
  }
  .execution-toolbar .btn {
    flex: 1;
    text-align: center;
  }
  #execution-reporting .btn {
    flex: 1 1 calc(50% - var(--space-3));
  }
  .execution-form input,
  .execution-form textarea,
  .execution-form select {
    font-size: var(--text-md) !important;
  }
  .execution-toolbar label {
    max-width: none;
  }
  .execution-report {
    flex-direction: column;
  }
  .execution-thumbnails a,
  .execution-thumbnails img {
    width: 110px;
  }
}
.execution-fields {
  border: 0;
  padding: 0;
  margin: 0;
  min-width: 0;
  display: grid;
  gap: var(--space-4);
}
.execution-fields:disabled {
  opacity: 0.7;
}
.execution-head {
  display: block;
}
.execution-head > .eyebrow {
  margin-top: var(--space-4);
}
.execution-head h1 {
  margin: var(--space-3) 0 var(--space-4);
}
.execution-head > .inline {
  justify-content: flex-start;
  gap: var(--space-4);
}
.execution-entry button.text-link,
.execution-slot button.text-link {
  appearance: none;
  border: 0;
  background: transparent;
  color: #355b43;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
  font: inherit;
  text-align: left;
  padding: var(--space-2) 0;
}
.execution-entry button.text-link:hover,
.execution-slot button.text-link:hover {
  color: #172f24;
}
.execution-check select {
  min-width: 0;
  max-width: 100%;
  flex: 1;
}
.execution-fields.execution-fields {
  border: 0;
  padding: 0;
}
.execution-next {
  margin-bottom: var(--space-6);
  border-top: 3px solid #557961;
}
.execution-next-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-4);
  flex-wrap: wrap;
}
.execution-next h2 {
  margin: var(--space-1) 0 0;
}
.execution-next-heading + p {
  margin-top: var(--space-2);
}
.execution-next-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-4);
  margin-top: var(--space-5);
}
.execution-next-card {
  background: #f6f8f4;
  border: 1px solid #dbe0d8;
  border-radius: 12px;
  padding: var(--space-5);
  min-width: 0;
  overflow-wrap: anywhere;
}
.execution-next-card h3 {
  font-size: var(--text-md);
  line-height: var(--leading-tight);
  margin: var(--space-3) 0;
}
.execution-next-card p,
.execution-next-card li {
  font-size: var(--text-base);
  line-height: 1.6;
}
.execution-next-items {
  padding: 0;
  list-style: none;
}
.execution-next-items > li {
  border-top: 1px solid #dbe0d8;
  padding: var(--space-4) 0;
  display: grid;
  gap: var(--space-2);
}
.execution-next-items span {
  color: #5c665d;
}
.execution-next-card .btn {
  white-space: normal;
  text-align: left;
}
.execution-next-footnote {
  margin-top: var(--space-5);
  font-size: var(--text-sm);
}
#execution-editor,
#execution-handoff,
#execution-reports {
  scroll-margin-top: 24px;
}
#execution-handoff > * {
  margin-block: 0;
}
#execution-handoff > * + * {
  margin-top: var(--space-3);
}
#execution-handoff > label:not(.execution-check) + p {
  margin-top: var(--space-2);
}
#execution-handoff > label:not(.execution-check) {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-2);
  font-size: var(--text-sm);
  font-weight: 600;
}
@media (max-width: 1100px) {
  .execution-next-grid {
    grid-template-columns: 1fr;
  }
}
.execution-assist {
  margin: var(--space-5) 0;
}
.execution-assist > summary {
  font-weight: 700;
}
.execution-voice {
  padding: var(--space-4);
  background: #f6f8f4;
  border-radius: 10px;
  margin: var(--space-5) 0;
}
.execution-voice audio {
  display: block;
  width: min(100%, 480px);
  margin: var(--space-4) 0;
}
.execution-voice input[type=file] {
  width: 180px;
  max-width: 100%;
  font-size: var(--text-xs);
}
.execution-assist .execution-fields {
  display: grid;
  gap: var(--space-4);
}
.execution-assist-result {
  margin-top: var(--space-5);
}
.execution-assist-row {
  padding: var(--space-5);
  border: 1px solid #dbe0d8;
  border-radius: 10px;
  margin: var(--space-4) 0;
}
.execution-assist-row blockquote {
  border-left: 3px solid #9caca0;
  margin: var(--space-4) 0;
  padding-left: var(--space-4);
  font-size: var(--text-base);
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.execution-assist-row .execution-form {
  border: 0;
  padding: 0;
  margin-top: var(--space-4);
}
.execution-source {
  white-space: pre-wrap;
}
.execution-assist label {
  overflow-wrap: anywhere;
}
.execution-assist details {
  margin-top: var(--space-5);
}
.execution-amendments {
  scroll-margin-top: var(--space-4);
}
.execution-amendment-item,
.execution-amendment-create {
  border-top: 1px solid var(--border);
  margin-top: var(--space-4);
  padding-top: var(--space-4);
}
.execution-amendment-choice {
  padding: var(--space-4) 0;
  border-bottom: 1px solid var(--border);
}
.execution-amendments fieldset {
  border: 0;
  padding: 0;
  min-width: 0;
}
.execution-amendments label {
  display: grid;
  gap: var(--space-2);
  margin: var(--space-4) 0;
}
.execution-amendments label.check {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
}
.execution-amendments label.check input {
  width: auto;
  flex: 0 0 auto;
  margin-top: var(--space-1);
}
.execution-amendments .preserve-lines {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.execution-amendments .text-link {
  margin: var(--space-2);
}
.execution-amendments input:not([type=checkbox]),
.execution-amendments textarea,
.execution-amendments select {
  min-width: 0;
  width: 100%;
  max-width: 760px;
  min-height: var(--control-md);
  padding: var(--space-2) var(--space-3);
  border: 1px solid #cbd3c9;
  border-radius: var(--radius-control);
  background: #fff;
  font: inherit;
  color: #253a31;
}
.execution-amendments .form-grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  gap: var(--space-4);
  max-width: 760px;
}
.execution-amendment-item,
.execution-amendment-choice {
  border-color: #dbe0d8;
}
@media (max-width: 600px) {
  .execution-amendments .form-grid {
    grid-template-columns: 1fr;
    gap: 0;
  }
}
.execution-week-nav {
  display: flex;
  align-items: stretch;
  gap: var(--space-2);
  flex-wrap: wrap;
}
.execution-week-nav .btn {
  min-height: var(--control-md);
}
.execution-week-title {
  font-size: var(--text-lg);
  line-height: var(--leading-tight);
  margin: var(--space-6) 0 var(--space-4);
}
.execution-week-title + .execution-week {
  margin-top: 0;
}
.execution-day {
  border: 1px solid transparent;
}
.execution-day h2 {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-2);
}
.execution-day-today {
  border-color: #6d8675;
  background: #edf2e9;
}
.execution-today-label {
  padding: 2px var(--space-2);
  border-radius: 5px;
  background: #354e40;
  color: #fff;
  font-size: var(--text-xs);
}
.execution-day-empty {
  font-size: var(--text-xs);
  line-height: 1.6;
  color: #58685b;
  margin: 0;
}
.execution-planner {
  scroll-margin-top: 80px;
}
.panel.execution-planner {
  padding-block: var(--space-3);
}
.panel.execution-planner[open] {
  padding-bottom: var(--space-5);
}
.execution-planner + .execution-planner {
  margin-top: var(--space-3);
}
.execution-planner > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  list-style: none;
  font-weight: 650;
  cursor: pointer;
  min-height: var(--control-md);
}
.execution-planner > summary::-webkit-details-marker {
  display: none;
}
.execution-planner > summary svg {
  flex-shrink: 0;
}
.execution-planner[open] > summary svg {
  transform: rotate(180deg);
}
@media (max-width: 767px) {
  .execution-week-nav {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .execution-week-nav .btn {
    padding: var(--space-3) var(--space-2);
    font-size: var(--text-xs);
    white-space: normal;
  }
  .execution-calendar-toolbar > label {
    max-width: none;
  }
  .execution-next-card,
  .execution-assist-row {
    padding: var(--space-4);
  }
  .panel.execution-planner[open] {
    padding-bottom: var(--space-4);
  }
  #execution-editor,
  #execution-handoff,
  #execution-reports,
  .execution-amendments {
    scroll-margin-top: 80px;
  }
}
@media (pointer: coarse), (max-width: 767px) {
  .execution-check {
    min-height: 44px;
  }
  .execution-check input {
    width: 22px;
    height: 22px;
  }
  .execution-toolbar input,
  .execution-toolbar select,
  .execution-amendments input:not([type=checkbox]),
  .execution-amendments select,
  .execution-amendments textarea {
    font-size: var(--text-md);
  }
  .execution-slot button.text-link,
  .execution-entry button.text-link {
    min-height: 44px;
  }
  .execution-form input:not([type=checkbox]),
  .execution-form select,
  .execution-form textarea,
  .execution-toolbar input,
  .execution-toolbar select,
  .execution-amendments input:not([type=checkbox]),
  .execution-amendments select,
  .execution-amendments textarea,
  .execution-week-nav .btn,
  .execution-planner > summary {
    min-height: var(--control-lg);
  }
}
.execution-job-card h3 {
  font-size: var(--text-md);
  margin: var(--space-3) 0;
}
[data-job-phase-group] > summary {
  cursor: pointer;
  margin: var(--space-5) 0 var(--space-3);
}
[data-job-phase-group] > summary h2 {
  display: inline;
  margin: 0;
}
.execution-form label,
.execution-toolbar label {
  grid-template-columns: minmax(0, 1fr);
}
.execution-form input[type=date],
.execution-toolbar input[type=date] {
  -webkit-appearance: none;
  appearance: none;
  display: block;
  max-width: 100%;
}
.execution-form input[type=date]::-webkit-date-and-time-value,
.execution-toolbar input[type=date]::-webkit-date-and-time-value {
  text-align: left;
}
.execution-form label.check {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  font-weight: 500;
}
.execution-form label.check input {
  width: auto;
  min-height: 0;
  flex: 0 0 auto;
  margin-top: var(--space-1);
}
.job-billing-line {
  margin: var(--space-2) 0 0;
  font-weight: 600;
  overflow-wrap: anywhere;
}
.job-billing-total h2 {
  overflow-wrap: anywhere;
}
.job-billing-total {
  margin-bottom: var(--space-6);
}
.job-billing-total:has(+ details.panel) {
  margin-bottom: var(--space-3);
}
.execution-demo-start + details.panel {
  margin-top: var(--space-3);
}
.job-billing-list {
  margin: var(--space-2) 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: var(--space-2);
}
.job-billing-list li {
  display: grid;
  gap: 2px;
  overflow-wrap: anywhere;
}
.job-billing-list a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}
.execution-schedule {
  display: none;
  margin: var(--space-5) 0;
}
@media (min-width: 1000px) {
  .execution-schedule {
    display: block;
  }
  .execution-schedule + .execution-week {
    display: none;
  }
}
.schedule-hint {
  font-size: var(--text-sm);
  color: #5b6660;
  margin: 0 0 var(--space-3);
}
.schedule-grid {
  display: grid;
  grid-template-columns: 52px repeat(7, minmax(0, 1fr));
  gap: 0 var(--space-2);
}
.schedule-head h3 {
  font-size: var(--text-sm);
  margin: 0 0 var(--space-2);
  padding: var(--space-2) var(--space-2);
  border-radius: 8px;
}
.schedule-head h3.schedule-today {
  background: var(--brand-ink);
  color: #fff;
}
.schedule-band {
  border-bottom: 1px solid #d9e2d0;
  padding-bottom: var(--space-2);
  margin-bottom: var(--space-2);
}
.schedule-band-day {
  display: grid;
  gap: var(--space-1);
  min-height: 28px;
  align-content: start;
}
.schedule-hour {
  font-size: var(--text-xs);
  color: #5b6660;
  text-align: right;
  padding-right: var(--space-2);
}
.schedule-hours {
  display: grid;
  align-content: start;
}
.schedule-hours .schedule-hour {
  transform: translateY(-7px);
}
.schedule-day {
  position: relative;
  background-color: #f6f7f2;
  background-image:
    linear-gradient(
      to bottom,
      #dfe5d8 1px,
      transparent 1px);
  border-radius: 8px;
}
.schedule-day.schedule-today {
  background-color: #eef3e6;
}
.schedule-pass {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-auto-rows: max-content;
  align-content: start;
  gap: 2px;
  overflow: hidden;
  background: #fff;
  border: 1px solid #c9d6bd;
  border-left: 3px solid var(--brand-ink);
  border-radius: 6px;
  padding: var(--space-1);
  font-size: var(--text-xs);
  line-height: 1.3;
  overflow-wrap: break-word;
  hyphens: auto;
}
.schedule-day .schedule-pass {
  position: absolute;
  box-sizing: border-box;
}
.schedule-pass a {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  font-weight: 650;
}
.schedule-pass small {
  color: #5b6660;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.schedule-pass button.text-link {
  appearance: none;
  border: 0;
  background: transparent;
  color: #355b43;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
  font: inherit;
  justify-self: start;
  padding: 2px 0;
}
.schedule-pass button.text-link:hover {
  color: #172f24;
}
.schedule-pass-movable {
  cursor: grab;
  touch-action: none;
  user-select: none;
}
.schedule-pass-dragging {
  cursor: grabbing;
  box-shadow: 0 6px 18px rgba(38, 59, 51, 0.25);
  opacity: 0.92;
}
.schedule-pass-saving {
  opacity: 0.6;
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/execution-documentation.css */
.documentation-nav {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin: var(--space-6) 0 var(--space-5);
  padding: var(--space-2);
  background: #edf1eb;
  border: 1px solid #d8dfd5;
  border-radius: 12px;
}
.documentation-nav button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  flex: 1;
  min-height: var(--control-md);
  padding: var(--space-2) var(--space-4);
  border: 1px solid transparent;
  border-radius: var(--radius-control);
  background: transparent;
  color: #34473b;
  font: inherit;
  font-size: var(--text-sm);
  font-weight: 600;
  cursor: pointer;
}
.documentation-nav button[aria-current] {
  background: var(--brand-ink);
  color: white;
  box-shadow: 0 2px 5px #263b3312;
}
.documentation-nav button:focus-visible,
.control-pack-card:focus-visible {
  outline: 3px solid #697d55;
  outline-offset: 3px;
}
.execution-documentation {
  margin: var(--space-5) 0 var(--space-6);
  min-width: 0;
}
.documentation-heading {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: var(--space-5);
  margin-bottom: var(--space-5);
}
.documentation-heading h2 {
  font-size: var(--text-lg);
  line-height: var(--leading-tight);
  margin: var(--space-2) 0 var(--space-3);
}
.documentation-heading p {
  max-width: 680px;
  line-height: 1.6;
}
.documentation-heading .btn {
  flex-shrink: 0;
}
.documentation-files {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-4);
  margin-top: var(--space-4);
}
.documentation-file {
  border: 1px solid #d9dfd5;
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
  min-width: 0;
}
.documentation-preview {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--space-3);
  background: #f0f1eb;
  min-height: 180px;
  color: #34473b;
  text-decoration: none;
}
.documentation-preview img {
  width: 100%;
  height: 210px;
  object-fit: contain;
  background: #e8ece5;
}
.documentation-preview span {
  padding: var(--space-3) var(--space-4);
  font-size: var(--text-base);
  overflow-wrap: anywhere;
}
.documentation-preview:has(img) {
  gap: 0;
}
.documentation-preview:focus-visible {
  outline: 3px solid #697d55;
  outline-offset: -3px;
}
.documentation-file-body {
  padding: var(--space-4);
}
.documentation-file-body small,
.documentation-source time {
  font-size: var(--text-xs);
  color: #586253;
}
.documentation-source {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  margin-top: var(--space-4);
  padding-top: var(--space-3);
  border-top: 1px solid #e6e9e0;
}
.documentation-source p {
  width: 100%;
  margin: 0;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.documentation-source .text-link {
  margin-left: auto;
  min-height: 44px;
}
.documentation-remove-button {
  min-height: 44px;
  margin-top: var(--space-3);
}
.documentation-remove {
  margin-top: var(--space-4);
}
.documentation-remove p {
  overflow-wrap: anywhere;
}
.documentation-remove .form-footer {
  flex-wrap: wrap;
}
.documentation-orphans {
  margin-top: var(--space-6);
}
.documentation-orphans > p {
  max-width: 750px;
  line-height: 1.6;
}
.documentation-check-counts {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin: var(--space-5) 0;
}
.documentation-check-counts button {
  padding: var(--space-2) var(--space-3);
  border: 1px solid #d9dfd5;
  border-radius: var(--radius-control);
  background: #f4f5ee;
  font-size: var(--text-sm);
}
.documentation-check-counts strong {
  font-size: var(--text-md);
  margin-right: var(--space-2);
}
.documentation-check-list {
  display: grid;
  gap: var(--space-4);
}
.documentation-check {
  margin: 0;
  border-left: 4px solid #c9d3c1;
}
.documentation-check.deviation {
  border-left-color: #ae6037;
  background: #fffcf4;
}
.documentation-check.done {
  border-left-color: #5f7d50;
}
.documentation-check h3 {
  font-size: var(--text-md);
  line-height: 1.35;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.documentation-check .text-link {
  min-height: 44px;
}
.documentation-days {
  display: grid;
  gap: var(--space-5);
}
.documentation-day {
  border: 1px solid #d7dfd2;
  border-radius: 12px;
  overflow: hidden;
  background: white;
}
.documentation-day > header {
  padding: var(--space-4) var(--space-5);
  background: #eef2e8;
  border-bottom: 1px solid #d7dfd2;
}
.documentation-day > header h3 {
  font-size: var(--text-base);
  font-weight: 700;
  margin: 0 0 var(--space-2);
  text-transform: capitalize;
}
.documentation-day > header p {
  font-size: var(--text-base);
  margin: 0;
}
.documentation-day-entry {
  padding: var(--space-4) var(--space-5);
  border-bottom: 1px solid #e5e9e1;
}
.documentation-day-entry:last-child {
  border-bottom: 0;
}
.documentation-day-entry h4 {
  margin: var(--space-3) 0 var(--space-2);
  font-size: var(--text-base);
  line-height: 1.5;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.documentation-day-entry p {
  font-size: var(--text-base);
}
.documentation-day-entry .text-link {
  min-height: 44px;
}
.control-packs > h3 {
  font-size: var(--text-md);
  margin-top: 0;
}
.control-pack-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-3);
  margin-top: var(--space-5);
}
.control-pack-card {
  display: grid;
  gap: var(--space-2);
  text-align: left;
  background: #fbfcf8;
  border: 1px solid #cbd5c4;
  border-radius: 10px;
  padding: var(--space-4);
  color: var(--brand-ink);
  font: inherit;
  cursor: pointer;
}
.control-pack-card strong {
  font-size: var(--text-md);
}
.control-pack-card span {
  font-size: var(--text-sm);
  line-height: 1.5;
  color: #52604b;
}
.control-pack-card[aria-pressed=true] {
  background: #edf3e4;
  border-color: #566e46;
  box-shadow: inset 0 0 0 1px #566e46;
}
.control-point-draft {
  display: grid;
  gap: var(--space-3);
  padding: var(--space-4);
  background: #f7f8f3;
  border: 1px solid #dce2d6;
  border-radius: 10px;
}
.control-pending li {
  margin: var(--space-4) 0;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.control-pending li strong {
  display: block;
  font-size: var(--text-sm);
}
.documentation-demo {
  max-width: 1120px;
  margin: 0 auto;
  padding: var(--space-7) var(--space-5) 80px;
}
.documentation-demo > h1 {
  font-size: clamp(var(--text-xl), 5vw, var(--text-2xl));
  line-height: var(--leading-tight);
  max-width: 750px;
}
.documentation-demo > p {
  max-width: 750px;
  line-height: 1.6;
}
@media (max-width: 1000px) {
  .documentation-files {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .documentation-heading {
    flex-direction: column;
  }
}
@media (max-width: 600px) {
  .documentation-nav button {
    flex: 1 1 40%;
    font-size: var(--text-xs);
    padding: var(--space-2) var(--space-2);
  }
  .documentation-files,
  .control-pack-grid {
    grid-template-columns: 1fr;
  }
  .documentation-day > header,
  .documentation-day-entry {
    padding: var(--space-4) var(--space-4);
  }
  .documentation-demo {
    padding: var(--space-6) var(--space-4) 64px;
  }
  .documentation-check-counts {
    gap: var(--space-2);
  }
  .documentation-check-counts button {
    padding: var(--space-3);
    font-size: var(--text-xs);
  }
}
.execution-documentation .documentation-check-counts button {
  color: #34473b;
  font: inherit;
  font-size: var(--text-sm);
  text-align: left;
  min-height: var(--control-md);
  cursor: pointer;
}
.execution-documentation .documentation-check-counts button[aria-pressed=true] {
  background: var(--brand-ink);
  border-color: var(--brand-ink);
  color: white;
}
.execution-documentation .documentation-check-counts button:hover:not([aria-pressed=true]) {
  background: #eaf0e3;
  border-color: #8d9f82;
}
.execution-documentation :focus-visible {
  outline: 3px solid #697d55;
  outline-offset: 3px;
}
.execution-documentation .documentation-result-count {
  color: #586253;
  font-size: var(--text-base);
  margin: 0 0 var(--space-4);
}
.execution-documentation .documentation-heading > div {
  min-width: 0;
}
.execution-documentation .execution-toolbar label {
  min-width: 0;
}
.execution-documentation .documentation-file-body small {
  overflow-wrap: anywhere;
}
@media (max-width: 600px) {
  .execution-documentation .documentation-check-counts {
    display: grid;
    grid-template-columns: 1fr;
  }
  .execution-documentation .documentation-check-counts button {
    display: flex;
    align-items: center;
    gap: var(--space-2);
  }
  .execution-documentation .documentation-check-counts strong {
    min-width: 1.8rem;
    margin: 0;
  }
  .execution-documentation input,
  .execution-documentation select {
    font-size: var(--text-md);
    min-height: var(--control-lg);
  }
}
@media (pointer: coarse), (max-width: 767px) {
  .documentation-nav button,
  .execution-documentation .documentation-check-counts button {
    min-height: var(--control-lg);
  }
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/work-order.css */
.work-order {
  margin: 0 0 var(--space-5);
}
.work-order-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
}
.work-order-block {
  margin-top: var(--space-5);
}
.work-order-grid > .work-order-block {
  margin-top: 0;
}
.work-order-block h3 {
  margin: 0 0 var(--space-2);
  font-size: var(--text-sm);
  font-weight: 700;
}
.work-order-heading {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  margin-bottom: var(--space-2);
}
.work-order-heading h3 {
  margin: 0;
}
.work-order-items .badge {
  white-space: normal;
  max-width: 100%;
  overflow-wrap: anywhere;
}
.work-order-address {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  margin: 0;
  font-size: var(--text-md);
  font-weight: 600;
}
.work-order-grid > .work-order-block {
  min-width: 0;
}
.work-order-address > span {
  min-width: 0;
  overflow-wrap: anywhere;
}
.work-order-text {
  margin: var(--space-2) 0 0;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.work-order-items,
.work-order-materials,
.work-order-bookings {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: var(--space-2);
}
.work-order-items {
  counter-reset: work-order;
}
.work-order-items > li {
  counter-increment: work-order;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  column-gap: var(--space-2);
  align-items: start;
  padding: var(--space-3) var(--space-3);
  border: 1px solid var(--line);
  border-radius: 10px;
  min-height: 44px;
}
.work-order-items > li::before {
  content: counter(work-order) ".";
  font-weight: 700;
  color: var(--muted);
}
.work-order-items > li > * {
  grid-column: 2;
}
.work-order-done {
  text-decoration: line-through;
  color: var(--muted);
}
.work-order-materials > li,
.work-order-bookings > li {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: var(--space-1) var(--space-4);
  padding: var(--space-2) 0;
  border-bottom: 1px solid var(--line);
}
.work-order-bookings > li > p {
  flex-basis: 100%;
}
@media (max-width: 767px) {
  .work-order-grid {
    grid-template-columns: 1fr;
  }
}
.work-order-tick {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  min-height: 44px;
  padding: var(--space-2) 0;
  cursor: pointer;
  font-weight: 500;
}
.work-order-tick input {
  flex: none;
  width: 24px;
  height: 24px;
  margin: 0;
  accent-color: var(--ink);
}
.work-order-row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-1) var(--space-3);
  margin: var(--space-1) 0 0 -12px;
  font-size: var(--text-sm);
}
.work-order-row-actions .link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: var(--control-sm);
  min-width: var(--control-sm);
  background: none;
  border: 0;
  padding: var(--space-1) var(--space-3);
  color: var(--muted);
  text-decoration: underline;
  cursor: pointer;
}
@media (pointer: coarse), (max-width: 767px) {
  .work-order-row-actions .link {
    min-height: var(--control-lg);
    min-width: var(--control-lg);
  }
}
.work-order-row-actions .link:disabled {
  opacity: 0.4;
  cursor: default;
}
.work-order-row-actions .link.danger {
  color: var(--danger);
}
.work-order-error {
  margin: var(--space-2) 0 0;
  color: var(--danger);
  font-weight: 600;
}
.work-order-add {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--space-3);
  align-items: end;
  margin-top: var(--space-4);
}
.work-order-add .work-order-error {
  grid-column: 1 / -1;
}
.work-order-edit,
.work-order-form form {
  display: grid;
  gap: var(--space-3);
  margin-top: var(--space-3);
}
.work-order-suggestions summary,
.work-order-form summary {
  cursor: pointer;
  font-weight: 700;
  font-size: var(--text-sm);
}
.work-order-suggestions ul {
  margin: var(--space-3) 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: var(--space-2);
}
.work-order-suggestions li {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2) var(--space-4);
  padding: var(--space-2) 0;
  border-bottom: 1px solid var(--line);
}
@media (max-width: 767px) {
  .work-order-add {
    grid-template-columns: 1fr;
  }
}
.work-order-tick > span,
.work-order-items > li > span,
.work-order-bookings > li > span,
.work-order-bookings > li > strong,
.work-order-materials > li > span,
.work-order-suggestions li > span {
  min-width: 0;
  overflow-wrap: anywhere;
}
.work-order-edit label,
.work-order-form label,
.work-order-add label {
  display: grid;
  gap: var(--space-2);
  font-size: var(--text-sm);
  font-weight: 600;
}
.work-order-suggestions > summary,
.work-order-form > summary {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  min-height: 44px;
  list-style: none;
}
.work-order-suggestions > summary::-webkit-details-marker,
.work-order-form > summary::-webkit-details-marker {
  display: none;
}
.work-order-suggestions > summary::after,
.work-order-form > summary::after {
  content: "";
  width: 9px;
  height: 9px;
  margin-left: auto;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
}
.work-order-suggestions[open] > summary::after,
.work-order-form[open] > summary::after {
  transform: rotate(-135deg);
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/field.css */
.field-home {
  display: grid;
  gap: var(--space-5);
  max-width: 720px;
}
.field-home h2 {
  margin: 0 0 var(--space-3);
  font-size: var(--text-base);
}
.field-hours-sums {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-3);
}
.field-hours-sums > div {
  display: grid;
  gap: 2px;
  padding: var(--space-4);
  border-radius: 12px;
  background: #eef2e8;
  border: 1px solid #dae2d2;
}
.field-hours-sums strong {
  font-size: var(--text-xl);
  font-weight: 600;
  line-height: var(--leading-tight);
}
.field-hours-sums span {
  font-size: var(--text-sm);
  color: #50634f;
}
.field-week {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: var(--space-2);
  margin: var(--space-4) 0 0;
  padding: 0;
  list-style: none;
  text-align: center;
  font-size: var(--text-xs);
}
.field-week > li {
  display: grid;
  align-content: start;
  gap: var(--space-1);
  justify-items: center;
  min-width: 0;
}
.field-week > li[aria-current] {
  font-weight: 700;
}
.field-week small {
  min-height: 16px;
  font-size: var(--text-xs);
  color: var(--muted);
  overflow-wrap: anywhere;
}
.field-hours > p {
  margin: var(--space-4) 0 0;
}
.field-week-bar {
  display: flex;
  align-items: flex-end;
  width: 100%;
  max-width: 26px;
  height: 44px;
  border-radius: 6px;
  background: #eef1e8;
  overflow: hidden;
}
.field-week-bar i {
  display: block;
  width: 100%;
  min-height: 0;
  background: var(--ink);
}
.field-jobs,
.field-upcoming {
  display: grid;
  gap: var(--space-3);
  margin: 0;
  padding: 0;
  list-style: none;
}
.field-job {
  display: grid;
  gap: var(--space-3);
  padding: var(--space-4);
}
.field-job-head,
.field-upcoming a {
  display: grid;
  gap: 2px;
  min-height: 44px;
  align-content: center;
  min-width: 0;
}
.field-job-head > *,
.field-upcoming a > * {
  min-width: 0;
  overflow-wrap: anywhere;
}
.field-job-time.none {
  color: var(--muted);
  font-weight: 600;
}
.field-job-head strong,
.field-upcoming strong {
  font-size: var(--text-md);
  line-height: 1.3;
  overflow-wrap: anywhere;
}
.field-job-time {
  font-size: var(--text-base);
  font-weight: 700;
  color: var(--focus);
}
.field-job-facts {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}
.field-job-facts .badge {
  white-space: normal;
  font-size: var(--text-xs);
  padding: var(--space-1) var(--space-3);
}
.field-job-note {
  margin: 0;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.field-job-address {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2) var(--space-3);
  margin: 0;
}
.field-job-address > span {
  min-width: 0;
  overflow-wrap: anywhere;
}
.field-upcoming > li {
  padding: var(--space-2) var(--space-4);
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
}
.field-empty {
  display: grid;
  gap: var(--space-3);
  justify-items: start;
}
.field-help {
  margin: 0;
}
.field-quick {
  display: grid;
  min-width: 0;
}
.field-quick-buttons {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-2);
}
@media (min-width: 360px) {
  .field-quick-buttons {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
.field-quick-button {
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 1px;
  min-width: 0;
  min-height: var(--control-lg);
  padding: var(--space-1) var(--space-1);
  border: 1px solid #cbd3c9;
  border-radius: var(--radius-control);
  background: #fff;
  color: var(--ink);
  font: inherit;
  font-size: var(--text-base);
  font-weight: 700;
  line-height: 1.25;
  cursor: pointer;
}
.field-quick-button[aria-expanded=true],
.field-quick-button[data-open] {
  border-color: var(--ink);
  background: var(--ink);
  color: #fff;
}
.field-quick-button:disabled,
.field-quick-button[aria-disabled=true] {
  opacity: 0.55;
  cursor: default;
}
label.field-quick-button {
  position: relative;
  text-align: center;
}
.field-quick-file {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.field-quick-button:has(.field-quick-file:focus-visible) {
  outline: 3px solid var(--focus);
  outline-offset: 4px;
}
.field-quick-mark {
  font-size: var(--text-xs);
  font-weight: 700;
  line-height: 1.2;
  color: var(--focus);
}
.field-quick-button[aria-expanded=true] .field-quick-mark,
.field-quick-button[data-open] .field-quick-mark {
  color: #ffd9cc;
}
.field-quick-status {
  margin: 0;
  font-size: var(--text-sm);
  font-weight: 600;
  overflow-wrap: anywhere;
}
.field-quick-status:not(:empty) {
  margin-top: var(--space-3);
}
.field-quick-status[data-quick-status=unsaved] {
  color: var(--focus);
}
.field-quick-status a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.field-quick-entry {
  min-width: 0;
  margin-bottom: var(--space-1);
  padding-bottom: var(--space-4);
  border-bottom: 1px solid var(--line);
}
.field-quick-entry .execution-form {
  margin-top: var(--space-4);
}
.field-quick-discard {
  margin: var(--space-4) 0 0;
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/offer-studio.css */
.proposal-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 290px;
  gap: var(--space-6);
  align-items: start;
  margin: var(--space-6) 0 var(--space-7);
}
.proposal-document {
  min-width: 0;
  background: #fff;
  border: 1px solid #dee2df;
  border-radius: 18px;
  box-shadow: 0 12px 38px #263b3308;
  overflow: hidden;
}
.proposal-document-head {
  padding: var(--space-6) var(--space-6);
  border-bottom: 1px solid #e7e9e6;
  background: #fcfcfa;
  position: relative;
}
.proposal-document-head .eyebrow,
.proposal-review > .eyebrow {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-xs);
  letter-spacing: .08em;
}
.proposal-document-head h2 {
  font-family:
    "Instrument Serif",
    Georgia,
    serif;
  font-weight: 400;
  font-size: clamp(var(--text-xl), 3.8vw, var(--text-2xl));
  line-height: var(--leading-tight);
  margin: var(--space-5) 0 var(--space-4);
  overflow-wrap: anywhere;
}
.proposal-document-head > p {
  max-width: 60ch;
  line-height: 1.8;
  color: #59645d;
}
.proposal-draft-label {
  display: inline-block;
  margin-top: var(--space-3);
  font-size: var(--text-xs);
  border: 1px solid #dce1d9;
  border-radius: 20px;
  padding: var(--space-1) var(--space-3);
  color: #526052;
}
.proposal-document-body {
  padding: var(--space-3) var(--space-6) var(--space-6);
}
.proposal-document-body > h3,
.proposal-scope h3 {
  font-size: var(--text-md);
  margin: var(--space-5) 0 var(--space-4);
}
.proposal-moment {
  padding: var(--space-4) 0;
  border-bottom: 1px solid #e7e9e6;
  scroll-margin-top: 100px;
}
.proposal-group {
  font-size: var(--text-xs);
  text-transform: uppercase;
  letter-spacing: .09em;
  color: #6b756e;
  margin: 0 0 var(--space-4);
}
.proposal-line {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(110px, 180px);
  gap: var(--space-5);
  align-items: start;
}
.proposal-line p {
  font-size: var(--text-sm);
  line-height: 1.65;
  margin: var(--space-2) 0;
  color: #606b63;
}
.proposal-line small {
  display: block;
  font-size: var(--text-xs);
  color: #606b63;
  margin-top: var(--space-2);
}
.proposal-line-price {
  text-align: right;
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
}
.proposal-line-price strong {
  font-size: var(--text-base);
}
.proposal-source {
  margin-top: var(--space-3);
  font-size: var(--text-xs);
  color: #59645d;
}
.proposal-source summary {
  cursor: pointer;
  min-height: var(--control-sm);
  display: flex;
  align-items: center;
}
.proposal-source blockquote {
  margin: var(--space-1) 0;
  padding: var(--space-2) var(--space-4);
  border-left: 2px solid #d8ded9;
}
.proposal-question {
  background: #faf8f2;
  border: 1px solid #e5dfce;
  border-radius: 12px;
  padding: var(--space-4);
  margin-top: var(--space-4);
  scroll-margin-top: 110px;
}
.proposal-question.answered {
  background: #f5f8f4;
  border-color: #dce5d8;
}
.proposal-question-title {
  display: flex;
  gap: var(--space-2);
  align-items: flex-start;
}
.proposal-question-title svg {
  flex-shrink: 0;
  margin-top: var(--space-1);
}
.proposal-question h4 {
  font-size: var(--text-base);
  line-height: 1.5;
  margin: 0;
}
.proposal-question p {
  font-size: var(--text-xs);
  line-height: 1.7;
  margin: var(--space-2) 0 var(--space-3);
}
.proposal-question fieldset {
  border: 0;
  padding: 0;
  min-width: 0;
  display: grid;
  gap: var(--space-3);
}
.proposal-question .btn {
  white-space: normal;
  text-align: left;
  justify-content: flex-start;
  font-size: var(--text-xs);
  line-height: 1.5;
}
.proposal-question details {
  font-size: var(--text-xs);
}
.proposal-question summary {
  padding: var(--space-2) 0;
  cursor: pointer;
}
.proposal-question small {
  display: block;
  margin-top: var(--space-2);
  line-height: 1.6;
}
.proposal-number {
  display: flex;
  align-items: end;
  gap: var(--space-3);
}
.proposal-number .field {
  flex: 1;
  min-width: 0;
}
.proposal-question .field {
  font-size: var(--text-xs);
}
.proposal-answer {
  font-weight: 600;
}
.proposal-scope {
  padding-top: var(--space-3);
}
.proposal-scope li {
  font-size: var(--text-base);
  line-height: 1.8;
  margin: var(--space-2) 0;
}
.proposal-scope p {
  font-size: var(--text-base);
  line-height: 1.8;
}
.proposal-review {
  position: sticky;
  top: 92px;
  padding: var(--space-5);
  background: #f5f6f2;
  border: 1px solid #dfe3d9;
  border-radius: 16px;
  min-width: 0;
}
.proposal-review h3 {
  font-size: var(--text-lg);
  line-height: 1.3;
  margin: var(--space-4) 0 var(--space-3);
}
.proposal-review p,
.proposal-review li {
  font-size: var(--text-xs);
  line-height: 1.75;
}
.proposal-review nav {
  display: grid;
  margin: var(--space-5) 0;
}
.proposal-review nav a {
  display: block;
  text-decoration: none;
  border-top: 1px solid #dce0d7;
  padding: var(--space-3) 0;
  font-size: var(--text-xs);
  line-height: 1.6;
}
.proposal-review nav a span {
  display: block;
  color: #64705f;
  font-size: var(--text-xs);
  text-transform: uppercase;
  letter-spacing: .06em;
  margin-bottom: var(--space-1);
}
.proposal-review .btn {
  width: 100%;
  white-space: normal;
  text-align: center;
}
.proposal-review > small {
  display: block;
  font-size: var(--text-xs);
  line-height: 1.7;
  margin: var(--space-3) 0 0;
  color: #636b60;
}
.proposal-assumptions {
  border-top: 1px solid #dce0d7;
  padding: var(--space-4) 0;
}
.proposal-assumptions h4 {
  font-size: var(--text-sm);
  margin: 0;
}
.proposal-assumptions ul {
  padding-left: var(--space-4);
}
.proposal-progress {
  margin: var(--space-5) 0;
}
.brief-files {
  padding: var(--space-4) 0;
  border-top: 1px solid #e1e5de;
  border-bottom: 1px solid #e1e5de;
  margin: var(--space-5) 0;
}
.brief-files > summary {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  font-weight: 600;
  cursor: pointer;
  min-height: var(--control-md);
}
.brief-files > p {
  font-size: var(--text-sm);
  line-height: 1.8;
}
.brief-file-review {
  margin-top: var(--space-4);
}
.brief-file-review > strong {
  display: block;
  margin-bottom: var(--space-4);
  overflow-wrap: anywhere;
}
.brief-files + .brief-files {
  border-top: 0;
  margin-top: calc(-1 * var(--space-5));
}
.edit-comparison {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-3);
  margin: var(--space-4) 0 var(--space-1);
}
.edit-comparison > span {
  padding: var(--space-3);
  border: 1px solid #dde2db;
  border-radius: 8px;
  font-size: var(--text-xs);
  line-height: 1.65;
  overflow-wrap: anywhere;
}
.edit-comparison b {
  display: block;
  font-size: var(--text-xs);
  text-transform: uppercase;
  letter-spacing: .08em;
  margin-bottom: var(--space-2);
}
.edit-comparison > span:last-child {
  background: var(--company-tint,#f3f6ef);
}
.edit-undo {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  margin: var(--space-4) 0;
  padding: var(--space-3) var(--space-4);
  border: 1px solid #dfe4db;
  border-radius: 10px;
  font-size: var(--text-xs);
}
.edit-undo p {
  margin: 0;
}
@media (max-width: 1050px) {
  .proposal-workspace {
    grid-template-columns: minmax(0, 1fr);
  }
  .proposal-review {
    position: static;
    display: block;
  }
  .proposal-review nav {
    grid-template-columns: 1fr 1fr;
    column-gap: var(--space-5);
  }
  .proposal-review .btn {
    max-width: 360px;
  }
}
@media (max-width: 600px) {
  .proposal-workspace {
    gap: var(--space-4);
    margin-top: var(--space-5);
  }
  .proposal-document-head {
    padding: var(--space-5) var(--space-5);
  }
  .proposal-document-body {
    padding: var(--space-2) var(--space-5) var(--space-5);
  }
  .proposal-line {
    grid-template-columns: 1fr;
    gap: var(--space-2);
  }
  .proposal-line-price {
    text-align: left;
  }
  .proposal-line-price small {
    display: inline;
    margin-left: var(--space-2);
  }
  .proposal-question {
    padding: var(--space-4);
  }
  .proposal-number {
    flex-direction: column;
    align-items: stretch;
  }
  .proposal-review {
    padding: var(--space-4);
  }
  .proposal-review nav {
    grid-template-columns: 1fr;
  }
  .edit-comparison {
    grid-template-columns: 1fr;
  }
  .edit-undo {
    align-items: flex-start;
    flex-direction: column;
  }
}
.studio-demo {
  max-width: 1240px;
  margin: 0 auto;
  padding: var(--space-7) var(--space-6) var(--space-7);
}
.studio-demo > header {
  max-width: 770px;
  margin: 0 0 var(--space-6);
}
.studio-demo > header > .eyebrow {
  margin-top: var(--space-6);
}
.studio-demo h1 {
  font-family:
    "Instrument Serif",
    Georgia,
    serif;
  font-size: var(--text-2xl);
  font-weight: 400;
  line-height: var(--leading-tight);
  letter-spacing: -.02em;
  margin: var(--space-4) 0;
}
.studio-demo > header > p:last-child {
  font-size: var(--text-md);
  line-height: 1.6;
  max-width: 60ch;
}
.studio-demo > .notice {
  font-size: var(--text-sm);
  line-height: 1.7;
}
.studio-demo .proposal-review {
  top: 24px;
}
@media (max-width: 600px) {
  .studio-demo {
    padding: var(--space-6) var(--space-4) var(--space-7);
  }
  .studio-demo > header {
    margin-bottom: var(--space-5);
  }
}
.studio-demo .docedit {
  grid-template-columns: minmax(0, 1fr);
}
.studio-demo .docedit-editing-help {
  padding: var(--space-4) var(--space-5);
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--paper-soft,#f5f6f2);
}
.studio-demo > .notice + .docedit,
.studio-demo > .docedit + p {
  margin-top: var(--space-5);
}
@media (max-width: 600px) {
  .studio-demo .docedit-editing-help {
    padding: var(--space-4);
  }
}
.proposal-workspace .sr-only,
.quote-memory-shortcut .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.proposal-question .notice.error {
  font-size: var(--text-xs);
  padding: var(--space-3) var(--space-3);
  margin: var(--space-3) 0;
}
.brief-source-preview {
  display: block;
  max-width: 100%;
  max-height: 340px;
  object-fit: contain;
  border-radius: 12px;
  background: #f5f5f1;
  margin: var(--space-3) 0;
}
.brief-image-analysis {
  border-top: 1px solid var(--border,#dce1d7);
  padding-top: var(--space-5);
  margin-top: var(--space-4);
}
.source-analysis-review {
  display: grid;
  gap: var(--space-5);
  min-width: 0;
}
.source-analysis-heading {
  display: flex;
  align-items: flex-start;
  gap: var(--space-4);
}
.source-analysis-heading h3 {
  margin: var(--space-1) 0 var(--space-2);
  font-size: var(--text-lg);
  line-height: var(--leading-tight);
}
.source-analysis-heading p {
  margin: 0;
}
.source-analysis-symbol {
  display: grid;
  place-items: center;
  flex: 0 0 46px;
  width: 46px;
  height: 46px;
  border-radius: 14px;
  background: #edf0e8;
  color: #425843;
}
.source-analysis-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4);
}
.source-analysis-columns section,
.source-analysis-measures {
  border: 1px solid #dce1d7;
  border-radius: 16px;
  padding: var(--space-5);
  min-width: 0;
  background: #fff;
}
.source-analysis-review h4 {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin: 0 0 var(--space-4);
  font-size: var(--text-md);
}
.source-analysis-columns ul {
  padding-left: var(--space-4);
  margin: var(--space-3) 0 0;
  display: grid;
  gap: var(--space-3);
}
.source-analysis-columns small,
.source-dimensions small {
  display: block;
  margin-top: var(--space-1);
  color: #5e695e;
  font-size: var(--text-xs);
  line-height: 1.5;
}
.source-analysis-columns .source-analysis-questions {
  background: #faf8f2;
  border-color: #e7dfcf;
}
.source-analysis-review p,
.source-analysis-review li {
  line-height: 1.6;
  overflow-wrap: anywhere;
}
.source-dimensions {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr));
  gap: var(--space-3);
}
.source-dimensions > div {
  border-radius: 10px;
  background: #f5f6f2;
  padding: var(--space-4);
  min-width: 0;
  overflow-wrap: anywhere;
}
.source-dimensions strong {
  font-size: var(--text-sm);
}
.source-dimensions b {
  display: block;
  font-size: var(--text-xl);
  font-variant-numeric: tabular-nums;
  margin: var(--space-2) 0;
}
.source-analysis-check {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  min-height: var(--control-md);
  cursor: pointer;
  line-height: 1.5;
  padding: var(--space-2) 0;
}
.source-analysis-check input {
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  margin: 2px 0 0;
}
.source-area {
  display: grid;
  gap: var(--space-4);
  border-top: 1px solid #dce1d7;
  padding-top: var(--space-4);
  margin-top: var(--space-2);
}
.source-area-fields {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--space-3);
}
.source-area-fields > *,
.source-analysis-review .field {
  min-width: 0;
}
.source-measure-picker {
  font-size: var(--text-xs);
  margin-top: var(--space-2);
}
.source-analysis-review select {
  max-width: 100%;
  width: 100%;
}
.source-area-result {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3) var(--space-5);
  padding: var(--space-4);
  border-radius: 12px;
  background: #edf0e8;
}
.source-area-result strong {
  font-size: var(--text-xl);
  letter-spacing: -0.5px;
  font-variant-numeric: tabular-nums;
}
.source-area-result span {
  font-size: var(--text-sm);
}
.source-analysis-review > .btn {
  justify-self: start;
}
@media (max-width: 640px) {
  .source-analysis-columns,
  .source-area-fields {
    grid-template-columns: 1fr;
  }
  .source-analysis-columns section,
  .source-analysis-measures {
    padding: var(--space-4);
  }
  .source-analysis-heading {
    gap: var(--space-3);
  }
  .source-analysis-review > .btn {
    width: 100%;
  }
  .source-analysis-review {
    gap: var(--space-4);
  }
  .source-analysis-symbol {
    flex-basis: 38px;
    width: 38px;
    height: 38px;
  }
}
.source-demo {
  max-width: 1080px;
}
.source-demo-drawing {
  max-width: 640px;
  margin: 0 auto var(--space-6);
}
.source-demo-drawing svg {
  display: block;
  width: 100%;
  height: auto;
}
.source-demo > .notice {
  margin-top: var(--space-6);
}
.source-area-fields {
  align-items: start;
}
.proposal-sync,
.proposal-sources {
  margin: var(--space-4) var(--space-5);
  color: var(--text,#273d35);
  font-size: var(--text-base);
}
.proposal-sync > p {
  display: flex;
  align-items: flex-start;
  gap: var(--space-2);
  margin: 0 0 var(--space-1);
  font-weight: 650;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
.proposal-sync > p > svg {
  flex-shrink: 0;
  margin-top: var(--space-1);
}
.proposal-sync > small,
.proposal-sources small {
  display: block;
  color: var(--muted,#59675e);
  line-height: 1.6;
}
.proposal-sources {
  border: 1px solid var(--border,#dce1d7);
  border-radius: 14px;
  background: var(--surface,#fff);
  overflow: hidden;
}
.proposal-sources > summary {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  cursor: pointer;
  min-height: var(--control-md);
  padding: var(--space-3) var(--space-4);
  font-weight: 700;
}
.proposal-sources > summary > span {
  flex: 1;
  min-width: 0;
  overflow-wrap: anywhere;
}
.proposal-sources > summary > svg {
  flex-shrink: 0;
}
.proposal-sources > summary small {
  font-weight: 400;
  font-size: var(--text-xs);
}
.proposal-sources > summary:after {
  content: "+";
  font-size: var(--text-lg);
  font-weight: 400;
}
.proposal-sources[open] > summary:after {
  content: "\2212";
}
.proposal-sources summary:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: -4px;
}
.proposal-sources-body {
  padding: 0 var(--space-4) var(--space-4);
  overflow-wrap: anywhere;
}
.proposal-sources-body > p {
  margin: 0 0 var(--space-4);
  line-height: 1.65;
}
.proposal-sources-body h4 {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin: var(--space-5) 0 var(--space-2);
  font-size: var(--text-base);
}
.proposal-sources-body section > p {
  font-size: var(--text-xs);
  color: var(--muted,#59675e);
  margin: 0 0 var(--space-3);
}
.proposal-sources ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.proposal-sources li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--space-2) var(--space-4);
  border-top: 1px solid var(--border,#dce1d7);
  padding: var(--space-3) 0;
}
.proposal-sources li strong {
  font-size: var(--text-base);
  font-weight: 650;
}
.proposal-sources li small {
  font-size: var(--text-xs);
}
.proposal-source-price {
  text-align: right;
  font-size: var(--text-sm);
  font-variant-numeric: tabular-nums;
}
.proposal-sources li a {
  grid-column: 1/-1;
  justify-self: start;
  min-height: var(--control-sm);
  display: inline-flex;
  align-items: center;
  text-decoration: underline;
  text-underline-offset: 3px;
  font-size: var(--text-sm);
}
.proposal-sources li a:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
  border-radius: 3px;
}
.proposal-answer-conflict {
  border: 1px solid #cab787;
  border-radius: 12px;
  background: #faf7ef;
  padding: var(--space-4);
  margin-top: var(--space-3);
}
.proposal-answer-conflict dl {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-3);
}
.proposal-answer-conflict dt {
  font-size: var(--text-xs);
  color: #61573f;
}
.proposal-answer-conflict dd {
  margin: var(--space-1) 0;
  overflow-wrap: anywhere;
}
.proposal-answer-conflict .actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}
@media (max-width: 600px) {
  .proposal-sync,
  .proposal-sources {
    margin: var(--space-4) var(--space-4);
  }
  .proposal-sources li {
    grid-template-columns: minmax(0, 1fr);
  }
  .proposal-source-price {
    text-align: left;
  }
  .proposal-answer-conflict dl {
    grid-template-columns: 1fr;
  }
  .proposal-answer-conflict .btn {
    width: 100%;
  }
}
dialog.proposal-progress {
  position: fixed;
  inset: 0;
  width: min(640px, calc(100% - 32px));
  max-height: calc(100dvh - 48px);
  margin: auto;
  padding: var(--space-5);
  border: 1px solid #dce1d7;
  border-radius: 18px;
  background: #fffefb;
  color: #273c34;
  overflow-y: auto;
  overscroll-behavior: contain;
  box-shadow: 0 24px 80px #172a2540;
}
dialog.proposal-progress::backdrop {
  background: #17251f99;
}
.proposal-progress-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-4);
  margin-bottom: var(--space-5);
}
.proposal-progress-head h2 {
  color: #263b33;
  font-family: inherit;
  font-size: var(--text-lg);
  line-height: var(--leading-tight);
  margin: 0;
  overflow-wrap: anywhere;
}
.proposal-progress-head .btn {
  flex-shrink: 0;
  white-space: normal;
}
dialog.proposal-progress p {
  font-size: var(--text-base);
  line-height: 1.7;
  overflow-wrap: anywhere;
}
.proposal-progress-status {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  font-weight: 650;
}
.proposal-progress-indicator {
  width: 18px;
  height: 18px;
  flex: none;
  border: 2px solid #dce4d5;
  border-top-color: #395940;
  border-radius: 50%;
  animation: proposal-progress-turn 1s linear infinite;
}
.proposal-result {
  scroll-margin-top: 96px;
  outline-offset: 5px;
}
@keyframes proposal-progress-turn {
  to {
    transform: rotate(360deg);
  }
}
@media (max-width: 600px) {
  dialog.proposal-progress {
    padding: var(--space-4);
    max-height: calc(100dvh - 32px);
  }
  .proposal-progress-head {
    flex-direction: column;
    gap: var(--space-3);
  }
  .proposal-progress-head h2 {
    font-size: var(--text-lg);
  }
  .proposal-progress-head .btn {
    align-self: flex-end;
  }
}
@media (prefers-reduced-motion: reduce) {
  .proposal-progress-indicator {
    animation: none;
  }
}
@media (pointer: coarse), (max-width: 767px) {
  .brief-files > summary,
  .source-analysis-check,
  .proposal-sources li a {
    min-height: var(--control-lg);
  }
}
.proposal-editing-guide {
  grid-column: 1/-1;
  padding: var(--space-5) var(--space-5);
  border: 1px solid #dce2d8;
  border-radius: 14px;
  background: #f4f7f1;
  display: flex;
  align-items: center;
  gap: var(--space-5);
}
.proposal-editing-guide strong {
  font-size: var(--text-base);
}
.proposal-editing-guide p {
  font-size: var(--text-sm);
  line-height: 1.7;
  margin: var(--space-2) 0 0;
  max-width: 65ch;
}
.proposal-guide-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  flex-shrink: 0;
}
.proposal-guide-actions .btn {
  white-space: normal;
}
.proposal-suggested-answer {
  padding: var(--space-4);
  background: #fff;
  border: 1px solid #d5dece;
  border-radius: 10px;
  display: grid;
  gap: var(--space-3);
}
.proposal-question .proposal-suggested-answer p {
  margin: 0;
}
.proposal-question .proposal-suggested-answer .btn {
  background: #e7eee1;
  border-color: #cad7c0;
  color: #263b33;
  font-weight: 700;
  gap: var(--space-2);
}
.proposal-question .proposal-suggested-answer small {
  margin: 0;
}
.proposal-answer-methods {
  display: flex;
  gap: var(--space-2);
  flex-wrap: wrap;
}
.proposal-question .proposal-number,
.proposal-words {
  display: grid;
  gap: var(--space-3);
  padding: var(--space-4);
  background: #fff;
  border: 1px solid #dce1d7;
  border-radius: 10px;
  min-width: 0;
}
.proposal-number > small,
.proposal-words > small {
  font-size: var(--text-xs);
  line-height: 1.6;
  margin: 0;
}
.proposal-number input,
.proposal-words textarea {
  width: 100%;
  font-size: var(--text-md);
  min-height: var(--control-lg);
}
.proposal-words textarea {
  min-height: 110px;
}
#proposal-next-step {
  scroll-margin-top: 96px;
}
.notes-manual small {
  display: block;
  font-size: var(--text-xs);
  line-height: 1.7;
  margin: var(--space-2) 0 0;
  color: #59645d;
}
@media (max-width: 1050px) {
  .proposal-editing-guide {
    align-items: flex-start;
    flex-direction: column;
    gap: var(--space-3);
  }
}
@media (max-width: 600px) {
  .proposal-editing-guide {
    padding: var(--space-4);
  }
  .proposal-answer-methods {
    display: grid;
  }
  .proposal-guide-actions {
    width: 100%;
  }
  .proposal-suggested-answer,
  .proposal-question .proposal-number,
  .proposal-words {
    padding: var(--space-3);
  }
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/company-theme.css */
.company-theme {
  --ink:#26282c;
  --text:#26282c;
  --muted:#60646b;
  --paper:#f6f6f5;
  --paper-soft:#f7f7f7;
  --white:#fff;
  --line:#dedfe2;
  --pale:#f3f4f5;
  --accent:var(--company-accent-text);
  color: var(--text);
}
body:has(.portal.company-theme) {
  background: #f6f6f5;
}
.company-theme .btn:not(.secondary):not(.tertiary):not(.danger),
.company-theme .editor-view-switch > button[aria-pressed=true],
.company-theme .editor-primary-actions[data-dirty=true] > .btn:first-child {
  background: var(--company-accent);
  color: var(--company-on-accent);
  border-color: var(--company-accent);
}
.company-theme .btn:not(.secondary):not(.tertiary):not(.danger):hover {
  filter: brightness(.96);
}
.company-theme .btn.secondary,
.company-theme .btn.tertiary {
  background: #fff;
  color: var(--text);
  border-color: var(--line);
}
.company-theme .btn.secondary:hover,
.company-theme .btn.tertiary:hover {
  background: var(--pale);
}
.company-theme :is(a, button, input, select, textarea, summary):focus-visible {
  outline-color: var(--company-accent-text);
}
.company-theme input[type=checkbox],
.company-theme input[type=radio] {
  accent-color: var(--company-accent-text);
}
.company-theme .text-link,
.company-theme .offer-contents-nav a {
  color: var(--company-accent-text);
}
.company-theme .editor-modes button.active {
  background: var(--company-tint);
  color: var(--company-accent-text);
  border-color: var(--company-accent-text);
}
.company-theme .section-tabs button.active {
  color: var(--company-accent-text);
  border-bottom-color: var(--company-accent-text);
}
.company-theme .company-banner {
  background: transparent;
  color: var(--text);
  padding: 0;
  font-size: var(--text-lg);
  line-height: 1.35;
}
.company-theme .company-logo-image {
  object-fit: contain;
  object-position: left center;
  width: auto;
  max-width: min(240px, 100%);
  height: auto;
  max-height: 88px;
  margin: 0 0 var(--space-4);
}
.company-theme .company-presentation {
  min-width: 0;
  overflow-wrap: anywhere;
}
.company-theme .company-source {
  color: var(--muted);
}
.company-theme .portal-company,
.company-theme .draft-document-company,
.company-theme .docedit-head {
  border-bottom: 2px solid var(--company-accent);
  padding-bottom: var(--space-5);
}
.company-theme .portal-company > small {
  flex-shrink: 0;
  max-width: 38%;
  text-align: right;
}
.company-portal-top {
  font-size: var(--text-xs);
  color: var(--muted);
  gap: var(--space-4);
  margin-bottom: var(--space-5);
}
.company-portal-top > span:first-child {
  font-weight: 600;
  color: var(--text);
}
.company-portal-top > span:last-child {
  text-align: right;
}
.company-theme .portal-paper {
  box-shadow: 0 12px 36px #191b2010;
  border-color: var(--line);
}
.company-theme .portal-price,
.company-theme .draft-document-totals,
.company-theme .offer-at-a-glance {
  background: var(--paper-soft);
  color: var(--text);
  border-color: var(--line);
}
.company-theme .offer-at-a-glance {
  border-top: 2px solid var(--company-accent);
}
.company-theme .offer-at-a-glance :is(.eyebrow, p, small, dt, .offer-summary-price > div > span),
.company-theme .draft-document :is(.company-source, .draft-document-recipient, .draft-document-address, .draft-document-placeholder, .draft-document-line small, .draft-document-columns, .draft-document-price-note, .draft-document-footer),
.company-theme .editor-preview-heading > div > span,
.company-theme .editor-preview-heading > a,
.company-theme .editor-customer-path,
.company-theme .editor-preview-actions > .save-status,
.company-theme .editor-work-status > small {
  color: var(--muted);
}
.company-theme .offer-summary-brief,
.company-theme .offer-summary-reply,
.company-theme .offer-summary-reply svg {
  color: var(--text);
}
.company-theme .offer-price-type,
.company-theme .offer-summary-facts,
.company-theme .offer-summary-reply {
  border-color: var(--line);
}
.company-theme .editor-part-nav,
.company-theme .editor-view-switch,
.company-theme .price-mode {
  background: var(--pale);
  border-color: var(--line);
}
.company-theme .editor-part-nav button,
.company-theme .price-mode button,
.company-theme .editor-view-switch > button {
  color: var(--text);
  border-color: var(--line);
}
.company-theme .editor-part-nav button[aria-pressed=true],
.company-theme .price-mode button[aria-pressed=true] {
  background: #fff;
  color: var(--company-accent-text);
  border-color: var(--line);
}
.company-theme .editor-part-nav button > span,
.company-theme .editor-preview-heading > div > span {
  background: #e9eaec;
}
.company-theme .editor-part-nav button:hover {
  background: #fff;
}
.company-theme .editor-preview-pane {
  background: #eeeff0;
  border-color: var(--line);
}
.company-theme .editor-preview-heading {
  background: #f7f7f7;
  border-color: var(--line);
}
.company-theme .draft-document {
  color: var(--text);
  border-color: var(--line);
}
.company-theme :is(.draft-document-section, .draft-document-line, .draft-document-option, .draft-document-footer, .review-price-lines > div, .review-option, .editor-preview-actions) {
  border-color: var(--line);
}
.company-theme :is(.editor-recipient-hint, .editor-basic-checks li > button, .original-price-note, .total-price-result, .decision-more-time-panel, .customer-eyes.compact) {
  background: var(--paper-soft);
  color: var(--text);
  border-color: var(--line);
}
.company-theme .editor-basic-checks li > button:hover {
  background: var(--pale);
}
.company-theme .editor-recipient-hint button {
  color: var(--company-accent-text);
}
.company-theme .editor-work-status:not([data-error=true]) {
  background: var(--paper-soft);
  color: var(--text);
  border-color: var(--line);
}
.company-theme .editor-primary-actions > .btn:first-child:not(:last-of-type) {
  color: var(--text);
  border-color: var(--line);
}
.company-theme .editor-primary-actions[data-dirty=true] > .btn:first-child {
  color: var(--company-on-accent);
}
.company-theme .editor-primary-actions[data-dirty=true] > .btn:nth-child(2) {
  color: var(--text);
  border-color: var(--line);
}
.company-theme .original-price-note blockquote {
  border-left-color: var(--company-accent);
}
.company-theme .decision-bar {
  background: #fffffff5;
  border-color: var(--line);
}
.company-theme .docedit-company-identity {
  min-width: 0;
  overflow-wrap: anywhere;
}
.company-theme .docedit-company-identity .company-logo-image {
  display: block;
  max-width: 220px;
  max-height: 76px;
}
.company-theme .docedit-paper :is(input, textarea, select):focus {
  border-color: var(--company-accent-text);
  background-color: #fafafa;
}
.company-identity-preview {
  padding: var(--space-5);
  margin: var(--space-5) 0;
  background: white;
  border: 1px solid var(--line);
  border-radius: 10px;
}
.company-identity-preview > strong {
  display: block;
  font-size: var(--text-lg);
}
.company-identity-preview .company-logo-image {
  display: block;
}
.company-identity-preview-rule {
  height: 2px;
  background: var(--company-accent);
  margin: var(--space-5) 0;
}
.company-identity-preview h3 {
  font-size: var(--text-lg);
  margin-bottom: var(--space-3);
}
.company-identity-preview p {
  color: var(--muted);
  line-height: 1.7;
}
.company-identity-preview-label {
  display: inline-block;
  padding: var(--space-2) var(--space-4);
  border-radius: 6px;
  color: var(--company-accent-text);
  background: var(--company-tint);
  font-size: var(--text-sm);
}
.logo-color-suggestions {
  margin: var(--space-4) 0;
}
.logo-color-suggestions > p:empty {
  display: none;
}
.brand-swatches {
  display: flex;
  gap: var(--space-3);
  flex-wrap: wrap;
  margin-top: var(--space-3);
}
.brand-swatches button {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  min-height: var(--control-md);
  padding: var(--space-2) var(--space-4);
  border: 1px solid #dedfe2;
  border-radius: var(--radius-control);
  background: white;
  color: #26282c;
  font-size: var(--text-sm);
}
.brand-swatches span {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  border: 1px solid #0002;
}
@media (max-width: 600px) {
  .company-theme .portal-company {
    flex-direction: column;
    gap: var(--space-4);
  }
  .company-theme .portal-company > small {
    max-width: none;
    text-align: left;
  }
  .company-theme .company-logo-image {
    max-width: 210px;
    max-height: 74px;
  }
  .company-theme .docedit-head {
    flex-wrap: wrap;
    gap: var(--space-4);
  }
  .company-theme .docedit-valid {
    text-align: left;
    min-width: 0;
  }
  .company-theme .docedit-paper .docedit-valid input {
    text-align: left;
  }
  .company-theme .company-banner {
    font-size: var(--text-lg);
  }
  .company-theme .portal-top {
    font-size: var(--text-xs);
  }
  .company-identity-preview {
    padding: var(--space-4);
  }
}
.company-theme .docedit-save {
  box-shadow: 0 8px 26px #17191d18;
}
.company-theme .docedit-save svg {
  color: var(--company-accent-text);
}
.company-theme .docedit-words-dot,
.company-theme .docedit-words-round[aria-expanded=true] .docedit-words-dot {
  background: var(--company-accent);
  color: var(--company-on-accent);
}
.company-theme .docedit-row[data-fresh=true] {
  animation-name: company-row-fresh;
}
@keyframes company-row-fresh {
  0%, 70% {
    background: var(--company-tint);
  }
  100% {
    background: transparent;
  }
}
.identity-demo-intro {
  margin-bottom: var(--space-6);
}
.identity-demo-intro h1 {
  font-family: inherit;
  font-size: var(--text-2xl);
  line-height: var(--leading-tight);
  font-weight: 600;
}
.identity-demo-intro > p {
  font-size: var(--text-md);
  line-height: 1.7;
  max-width: 640px;
}
.identity-demo-intro nav {
  display: flex;
  gap: var(--space-3);
  flex-wrap: wrap;
  margin-top: var(--space-5);
}
.identity-demo-intro nav > a {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  min-height: var(--control-md);
  padding: var(--space-2) var(--space-4);
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-control);
  font-size: var(--text-sm);
}
.identity-demo-intro nav > a[aria-current=page] {
  border-color: var(--company-accent-text);
  box-shadow: inset 0 0 0 1px var(--company-accent-text);
}
.identity-demo-intro nav span {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 1px solid #0002;
}
.identity-demo .full-review-document {
  max-width: none;
}
.identity-demo-footer {
  padding: var(--space-5) 0;
  color: var(--muted);
  font-size: var(--text-base);
}
@media (max-width: 600px) {
  .identity-demo-intro h1 {
    font-size: var(--text-xl);
  }
  .identity-demo .full-review-document {
    padding: var(--space-5) var(--space-4);
  }
  .identity-demo-intro nav > a {
    font-size: var(--text-sm);
  }
  .identity-demo-intro nav {
    gap: var(--space-2);
  }
}
.company-theme .portal-paper,
.company-theme.full-review-document {
  border-radius: 16px;
  background: #fff;
  padding: clamp(var(--space-5), 5vw, var(--space-7));
  box-shadow: 0 20px 65px #22262d09;
}
.company-theme .portal-company,
.company-theme .draft-document-company {
  padding-bottom: var(--space-6);
  margin-bottom: var(--space-6);
  border-bottom-width: 1px;
  align-items: flex-start;
  gap: var(--space-6);
}
.company-theme .portal-paper > h1,
.company-theme .draft-document-intro > h2 {
  font-family:
    "Instrument Serif",
    Georgia,
    serif;
  font-size: var(--text-2xl);
  font-weight: 400;
  line-height: var(--leading-tight);
  letter-spacing: -.015em;
  max-width: 22ch;
  overflow-wrap: anywhere;
  margin: var(--space-4) 0 var(--space-5);
}
.company-theme .draft-document-intro {
  padding: 0;
  margin-bottom: var(--space-6);
}
.company-theme .draft-document-intro > p:last-child {
  font-size: var(--text-base);
  line-height: 1.85;
  max-width: 65ch;
}
.company-theme .company-presentation .company-banner {
  font-weight: 600;
  font-size: var(--text-lg);
}
.company-theme .company-presentation > p {
  line-height: 1.7;
  max-width: 55ch;
}
.company-theme .company-source {
  font-size: var(--text-xs);
  line-height: 1.65;
}
.company-theme .offer-at-a-glance {
  border: 1px solid var(--line);
  border-radius: 12px;
  background:
    linear-gradient(
      115deg,
      #fbfbfa 60%,
      var(--company-tint));
  padding: var(--space-5);
  margin: var(--space-6) 0;
}
.company-theme .offer-summary-heading > .eyebrow {
  letter-spacing: .1em;
  font-size: var(--text-xs);
  text-transform: uppercase;
}
.company-theme .offer-summary-price {
  gap: var(--space-5);
  align-items: flex-start;
  margin: var(--space-4) 0 var(--space-5);
}
.company-theme .offer-summary-price strong {
  font-size: clamp(var(--text-xl), 4vw, var(--text-2xl));
  font-weight: 500;
  line-height: var(--leading-tight);
  letter-spacing: -.02em;
  font-variant-numeric: tabular-nums;
}
.company-theme .offer-price-type {
  border-radius: 100px;
  background: #fff;
  font-size: var(--text-xs);
  padding: var(--space-2) var(--space-3);
}
.company-theme .offer-summary-facts {
  padding-top: var(--space-5);
  margin-top: var(--space-5);
}
.company-theme .offer-summary-facts dd {
  font-size: var(--text-sm);
  line-height: 1.7;
  font-weight: 500;
}
.company-theme .offer-summary-actions {
  margin-top: var(--space-5);
  gap: var(--space-4);
}
.company-theme .offer-summary-actions .btn {
  border-radius: var(--radius-control);
}
.company-theme .draft-document-section,
.company-theme .portal-paper > section:not(.offer-at-a-glance):not(.notice):not(.offer-project-map) {
  margin-top: var(--space-6);
  padding-top: var(--space-5);
}
.company-theme .draft-document-section > h3,
.company-theme .portal-paper > section > h2 {
  font-size: var(--text-lg);
  font-weight: 600;
  letter-spacing: -.02em;
  margin-bottom: var(--space-4);
}
.company-theme .draft-document-section > p {
  font-size: var(--text-base);
  line-height: 1.85;
  max-width: 70ch;
}
.offer-project-map {
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  padding: var(--space-5) 0;
  margin: var(--space-6) 0;
}
.offer-project-map .eyebrow {
  font-size: var(--text-xs);
  letter-spacing: .09em;
}
.offer-project-map h3 {
  font-size: var(--text-lg);
  font-weight: 500;
  margin: var(--space-2) 0 var(--space-5);
}
.offer-project-map ol {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-4);
}
.offer-project-map li {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  min-width: 0;
}
.offer-project-map li > span {
  flex-shrink: 0;
  border-radius: 50%;
  width: 29px;
  height: 29px;
  display: grid;
  place-items: center;
  background: var(--company-tint);
  color: var(--company-accent-text);
  font-size: var(--text-xs);
}
.offer-project-map strong {
  font-size: var(--text-xs);
  line-height: 1.7;
  font-weight: 500;
  padding-top: var(--space-1);
  overflow-wrap: anywhere;
}
.company-theme .review-price-lines {
  margin: 0 0 var(--space-3);
}
.company-theme .review-price-lines > div > h4 {
  background: var(--paper-soft);
  border-radius: 6px;
  padding: var(--space-3);
  font-size: var(--text-xs);
  font-weight: 600;
  gap: var(--space-4);
  display: flex;
  justify-content: space-between;
}
.company-theme .review-price-lines > div > div {
  padding: var(--space-4) 0;
  border-bottom: 1px solid #eeeff0;
}
.company-theme .review-price-lines > div > div:first-child {
  padding-top: 0;
}
.company-theme .review-price-lines p {
  font-size: var(--text-xs);
  line-height: 1.75;
  margin-top: var(--space-2);
  color: var(--muted);
}
.company-theme .review-price-lines strong {
  font-size: var(--text-base);
  font-weight: 600;
}
.company-theme .draft-document-totals {
  margin-top: var(--space-5);
  border-radius: 9px;
  padding: var(--space-5);
}
.company-theme .docedit-paper {
  border-radius: 14px;
  box-shadow: 0 12px 40px #25293006;
}
.company-theme .docedit-head {
  border-bottom-width: 1px;
  margin-bottom: var(--space-5);
}
.company-theme .docedit-title {
  font-family:
    "Instrument Serif",
    Georgia,
    serif;
  font-size: clamp(var(--text-xl), 3.3vw, var(--text-2xl));
  font-weight: 400;
  letter-spacing: -.02em;
}
.company-theme .docedit-lede {
  font-size: var(--text-base);
  line-height: 1.85;
}
.company-theme .docedit-lines-head {
  padding-bottom: var(--space-4);
}
.company-theme .docedit-group-head {
  border-radius: 6px;
  background: var(--paper-soft);
  padding: var(--space-3) var(--space-3);
}
.company-theme .docedit-row {
  padding-top: var(--space-4);
  padding-bottom: var(--space-4);
  scroll-margin-top: 100px;
}
.company-theme .docedit-card {
  border-radius: 12px;
}
.company-theme .docedit-sum > strong {
  font-weight: 500;
  letter-spacing: -.025em;
}
.company-theme .docedit-todo button {
  font: inherit;
  color: inherit;
  text-align: left;
  background: transparent;
  border: 0;
  text-decoration: underline;
  text-underline-offset: 3px;
  padding: var(--space-1) 0;
  min-height: var(--control-sm);
}
.quote-memory-shortcut {
  border-top: 1px solid var(--line);
  margin-top: var(--space-4);
  padding-top: var(--space-3);
}
.quote-memory-shortcut > .btn {
  font-size: var(--text-xs);
  white-space: normal;
  text-align: left;
  justify-content: flex-start;
  padding-left: 0;
}
.quote-memory-form {
  padding-top: var(--space-3);
}
.quote-memory-form h3 {
  font-size: var(--text-md);
  line-height: 1.5;
}
.quote-memory-form p {
  font-size: var(--text-xs);
  line-height: 1.7;
}
.quote-memory-form fieldset {
  border: 0;
  margin: var(--space-4) 0;
  padding: 0;
  display: grid;
  gap: var(--space-4);
  min-width: 0;
}
.quote-memory-form .field {
  font-size: var(--text-xs);
}
.quote-memory-form .btn {
  white-space: normal;
}
@media (max-width: 600px) {
  .company-theme .portal-paper,
  .company-theme.full-review-document {
    padding: var(--space-5) var(--space-4);
    border-radius: 10px;
  }
  .company-theme .portal-company,
  .company-theme .draft-document-company {
    gap: var(--space-5);
    padding-bottom: var(--space-5);
    margin-bottom: var(--space-5);
  }
  .company-theme .offer-at-a-glance {
    padding: var(--space-4);
    margin: var(--space-5) 0;
  }
  .company-theme .offer-summary-price {
    flex-wrap: wrap;
    gap: var(--space-3);
  }
  .company-theme .offer-summary-facts {
    grid-template-columns: 1fr;
    gap: var(--space-4);
  }
  .offer-project-map ol {
    grid-template-columns: 1fr;
    gap: var(--space-3);
  }
  .company-theme .docedit-title {
    font-size: var(--text-xl);
  }
  .company-theme .docedit-group-head {
    padding: var(--space-2);
  }
  .company-theme .draft-document-section {
    margin-top: var(--space-5);
    padding-top: var(--space-5);
  }
  .company-theme .review-price-lines > div > h4 {
    flex-wrap: wrap;
    gap: var(--space-2);
  }
}
@media (pointer: coarse), (max-width: 767px) {
  .company-theme .docedit-todo button,
  .brand-swatches button,
  .identity-demo-intro nav > a {
    min-height: var(--control-lg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .proposal-workspace *,
  .company-theme * {
    scroll-behavior: auto !important;
  }
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/support.css */
.support-page {
  min-height: 100dvh;
  background: #f7f7f2;
  color: var(--brand-ink);
}
.support-page * {
  box-sizing: border-box;
}
.support-masthead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-5);
  max-width: 1280px;
  margin: auto;
  padding: var(--space-5) var(--space-6);
  border-bottom: 1px solid #dfe4d9;
}
.support-masthead nav,
.support-masthead nav a {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
.support-main {
  max-width: 1280px;
  margin: auto;
  padding: var(--space-7) var(--space-6) var(--space-6);
}
.support-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-6);
  margin-bottom: var(--space-6);
}
.support-heading h1 {
  font-family: var(--font-display);
  font-weight: var(--font-display-weight);
  font-size: var(--text-2xl);
  line-height: var(--leading-tight);
  letter-spacing: -0.02em;
  margin: var(--space-3) 0;
}
.support-heading p {
  color: #58675e;
  font-size: var(--text-base);
  line-height: 1.7;
  max-width: 620px;
}
.support-signature {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  flex-shrink: 0;
  font-size: var(--text-xs);
}
.support-signature small {
  display: block;
  margin-top: var(--space-1);
  color: #626e65;
}
.support-tabs {
  display: flex;
  gap: var(--space-2);
  margin-bottom: var(--space-5);
  border-bottom: 1px solid #dbe1d5;
}
.support-tabs button {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  min-height: var(--control-md);
  border: 0;
  border-bottom: 3px solid transparent;
  background: none;
  padding: var(--space-2) var(--space-4);
  color: #657066;
  font: inherit;
  font-size: var(--text-sm);
  font-weight: 600;
}
.support-tabs button[aria-pressed=true] {
  border-color: #34533b;
  color: var(--brand-ink);
}
.support-help-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.8fr) minmax(270px, 1fr);
  gap: var(--space-5);
}
.support-search-card,
.support-personal-card,
.support-article {
  padding: var(--space-5);
  border: 1px solid #dfe4d8;
  border-radius: 20px;
  background: white;
}
.support-search-card h2,
.support-personal-card h2 {
  font-family: var(--font-display);
  font-size: var(--text-xl);
  line-height: var(--leading-tight);
  font-weight: var(--font-display-weight);
  margin: var(--space-3) 0 var(--space-4);
}
.support-page label {
  display: grid;
  gap: var(--space-2);
  font-size: var(--text-sm);
  font-weight: 600;
}
.support-page input:not([type=checkbox]),
.support-page select,
.support-page textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid #cbd4c6;
  border-radius: var(--radius-control);
  padding: var(--space-2) var(--space-3);
  background: white;
  color: var(--brand-ink);
  font: inherit;
  font-size: var(--text-base);
}
.support-page textarea {
  resize: vertical;
  line-height: 1.7;
}
.support-search-input {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  border: 1px solid #cbd4c6;
  border-radius: var(--radius-control);
  margin-top: var(--space-3);
  padding: 0 var(--space-3);
  background: #fcfcf9;
}
.support-search-input input {
  border: 0 !important;
  background: none !important;
  padding-left: 0 !important;
  min-height: var(--control-md);
}
.support-search-input:focus-within {
  outline: 2px solid #34533b;
  outline-offset: 3px;
}
.support-search-actions {
  display: flex;
  gap: var(--space-4);
  align-items: center;
  margin-top: var(--space-4);
}
.support-search-actions small {
  max-width: 200px;
  color: #687167;
  line-height: 1.6;
  font-size: var(--text-xs);
}
.support-personal-card {
  background: #eaf0e2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.support-avatar {
  width: 56px;
  height: 56px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #dbe5cf;
  margin-bottom: var(--space-5);
}
.support-personal-card h2 {
  margin-bottom: var(--space-3);
}
.support-personal-card p {
  line-height: 1.8;
  color: #53624e;
  font-size: var(--text-sm);
  margin: 0 0 var(--space-5);
}
.support-personal-card > a {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin-top: var(--space-4);
  font-size: var(--text-sm);
}
.support-personal-card .btn {
  width: 100%;
}
.support-first {
  display: flex;
  align-items: center;
  gap: var(--space-5);
  margin: var(--space-5) 0 var(--space-6);
  padding: var(--space-4) var(--space-5);
  background: #fff;
  border: 1px solid #dfe4d8;
  border-radius: 14px;
}
.support-first-icon {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  background: #f0f2e9;
}
.support-first h2 {
  font-size: var(--text-lg);
  margin: 0 0 var(--space-2);
}
.support-first p {
  font-size: var(--text-sm);
  line-height: 1.7;
  color: #65705f;
  margin: 0;
}
.support-first .btn {
  margin-left: auto;
  flex-shrink: 0;
}
.support-section-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--space-5);
  gap: var(--space-5);
}
.support-section-heading h2 {
  font-size: var(--text-lg);
}
.support-section-heading > span {
  font-size: var(--text-xs);
  color: #65705f;
}
.support-guides {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-4);
}
.support-guide-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  text-align: left;
  padding: var(--space-5);
  border: 1px solid #dfe4d8;
  border-radius: 14px;
  background: white;
  color: inherit;
  font: inherit;
  transition: box-shadow 0.2s, border-color 0.2s;
}
.support-guide-card:hover {
  border-color: #8f9e86;
  box-shadow: 0 5px 18px #263b3309;
}
.support-guide-card strong {
  font-size: var(--text-md);
  line-height: 1.5;
}
.support-guide-card > span:not(.eyebrow):not(.support-guide-read) {
  font-size: var(--text-sm);
  color: #65705f;
  line-height: 1.7;
}
.support-guide-read {
  display: flex;
  align-items: center;
  justify-content: space-between;
  align-self: stretch;
  margin-top: auto;
  padding-top: var(--space-3);
  font-size: var(--text-xs);
  font-weight: 700;
}
.support-article {
  margin-top: var(--space-5);
  max-width: 850px;
}
.support-article > .eyebrow {
  display: block;
  margin-top: var(--space-5);
}
.support-article h2 {
  font-size: var(--text-xl);
}
.support-article ol {
  padding-left: var(--space-5);
  line-height: 1.9;
}
.support-article li {
  padding: var(--space-3) 0 var(--space-3) var(--space-3);
}
.support-article-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
}
.support-ai-answer {
  margin-top: var(--space-6);
  border-top: 1px solid #dfe4d8;
  padding-top: var(--space-5);
}
.support-pre {
  white-space: pre-wrap;
  line-height: 1.8;
  font-size: var(--text-base);
  overflow-wrap: anywhere;
}
.support-sources {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin: var(--space-4) 0;
}
.support-sources button {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  background: #f3f5ed;
  border: 1px solid #dfe4d8;
  border-radius: 7px;
  padding: var(--space-2) var(--space-3);
  color: #34533b;
  font-size: var(--text-xs);
}
.support-inbox {
  display: grid;
  grid-template-columns: 320px minmax(0, 1fr);
  border: 1px solid #dfe4d8;
  border-radius: 18px;
  background: white;
  overflow: hidden;
  min-height: 580px;
}
.support-queue {
  padding: var(--space-5);
  background: #f0f3eb;
  border-right: 1px solid #dfe4d8;
}
.support-queue-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.support-queue-heading h2 {
  font-size: var(--text-lg);
  margin: 0;
}
.support-filter {
  margin: var(--space-4) 0;
}
.support-filter select {
  font-size: var(--text-sm);
}
.support-new {
  width: 100%;
  margin-bottom: var(--space-4);
}
.support-thread-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
.support-thread {
  display: block;
  text-align: left;
  background: white;
  border: 1px solid #dce2d5;
  border-radius: 10px;
  padding: var(--space-4);
  color: inherit;
  font: inherit;
  width: 100%;
}
.support-thread.selected {
  border-color: #34533b;
  box-shadow: inset 3px 0 #34533b;
}
.support-thread strong {
  display: block;
  margin: var(--space-2) 0;
  font-size: var(--text-sm);
  overflow-wrap: anywhere;
}
.support-thread small {
  display: block;
  overflow-wrap: anywhere;
  font-size: var(--text-xs);
  margin: var(--space-2) 0;
}
.support-thread-top,
.support-thread-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-2);
}
.support-thread-bottom {
  font-size: var(--text-xs);
  color: #63705e;
}
.support-thread-bottom b {
  color: #8a482e;
}
.support-status {
  display: inline-flex;
  align-items: center;
  font-size: var(--text-xs);
  font-weight: 700;
  border-radius: 20px;
  padding: var(--space-1) var(--space-2);
  background: #f4eddf;
  color: #775525;
}
.support-status.waiting_customer {
  background: #e5ebf0;
  color: #354f6c;
}
.support-status.resolved {
  background: #e7efde;
  color: #365639;
}
.support-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  background: #b7603e;
  border-radius: 50%;
  flex-shrink: 0;
}
.support-conversation {
  min-width: 0;
}
.support-conversation-head {
  padding: var(--space-5);
  border-bottom: 1px solid #e4e7de;
}
.support-conversation-head h2 {
  font-size: var(--text-lg);
  line-height: var(--leading-tight);
  margin: var(--space-3) 0;
  overflow-wrap: anywhere;
}
.support-meta {
  display: flex;
  gap: var(--space-4);
  flex-wrap: wrap;
  font-size: var(--text-xs);
  color: #65705f;
}
.support-conversation-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-top: var(--space-5);
}
.support-messages {
  padding: var(--space-5);
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  max-height: 650px;
  overflow: auto;
}
.support-message {
  max-width: 92%;
  padding: var(--space-4) var(--space-5);
  border-radius: 14px;
  background: #f1f4ec;
  align-self: flex-start;
  border: 1px solid #e2e8da;
}
.support-message.from-customer {
  background: #fbfaf5;
  border-color: #eae6dc;
  align-self: flex-end;
}
.support-message > div {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
  align-items: center;
  justify-content: space-between;
  font-size: var(--text-xs);
}
.support-message time {
  font-size: var(--text-xs);
  color: #687263;
}
.support-message p {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: var(--text-base);
  line-height: 1.8;
  margin: var(--space-3) 0 0;
}
.support-system {
  text-align: center;
  color: #65705f;
  font-size: var(--text-xs);
}
.support-reply {
  padding: var(--space-4) var(--space-5);
  border-top: 1px solid #e4e7de;
}
.support-reply > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  margin-top: var(--space-4);
}
.support-reply small {
  font-size: var(--text-xs);
  color: #65705f;
}
.support-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--space-4);
  text-align: center;
  padding: var(--space-7) var(--space-5);
  min-height: 380px;
}
.support-inbox > .support-empty {
  grid-column: 1/-1;
}
.support-empty h2 {
  font-size: var(--text-lg);
  max-width: 400px;
  margin: 0;
}
.support-empty p {
  max-width: 410px;
  line-height: 1.8;
  color: #65705f;
  font-size: var(--text-base);
  margin: 0;
}
.support-compose {
  padding: var(--space-5);
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}
.support-compose h2 {
  font-size: var(--text-lg);
  margin: 0;
}
.support-compose p,
.support-compose small {
  font-size: var(--text-xs);
  color: #65705f;
  line-height: 1.7;
  margin: 0;
}
.support-compose .btn {
  align-self: flex-start;
}
.support-checkbox {
  display: flex !important;
  align-items: center;
  gap: var(--space-3) !important;
}
.support-checkbox input {
  width: 20px;
  height: 20px;
}
.support-error {
  padding: var(--space-4);
  background: #fff0e9;
  color: #873e27;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
.support-quiet {
  font-size: var(--text-sm);
  line-height: 1.8;
  color: #65705f;
}
.support-rating {
  margin: 0 var(--space-5) var(--space-5);
  padding: var(--space-5);
  background: #f3f5ed;
  border-radius: 12px;
}
.support-rating strong {
  font-size: var(--text-sm);
}
.support-rating > div {
  display: flex;
  gap: var(--space-2);
  margin: var(--space-3) 0;
}
.support-rating button {
  width: var(--control-md);
  min-height: var(--control-md);
  border: 1px solid #a6b49c;
  border-radius: 8px;
  background: white;
  color: #34533b;
}
.support-rating button[aria-pressed=true] {
  background: #34533b;
  color: white;
}
.support-rating small {
  font-size: var(--text-xs);
  color: #65705f;
}
.support-footer {
  display: flex;
  gap: var(--space-5);
  flex-wrap: wrap;
  margin-top: var(--space-7);
  border-top: 1px solid #dfe4d8;
  padding-top: var(--space-5);
  font-size: var(--text-xs);
  color: #65705f;
}
.support-footer span:last-child {
  margin-left: auto;
  max-width: 480px;
  text-wrap: balance;
}
.support-launcher {
  position: fixed;
  right: 22px;
  bottom: calc(20px + env(safe-area-inset-bottom));
  z-index: 35;
  display: flex;
  gap: var(--space-2);
  align-items: center;
  background: var(--brand-ink);
  color: white;
  padding: var(--space-3) var(--space-4);
  border-radius: 50px;
  text-decoration: none;
  font-size: var(--text-xs);
  font-weight: 700;
  box-shadow: 0 4px 16px #263b3326;
  border: 1px solid #ffffff60;
}
.support-page :focus-visible,
.support-launcher:focus-visible {
  outline: 3px solid #b86a48;
  outline-offset: 4px;
}
.support-page button {
  cursor: pointer;
}
.support-page button:disabled {
  cursor: wait;
  opacity: 0.6;
}
@media (max-width: 900px) {
  .support-signature {
    display: none;
  }
  .support-guides {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .support-inbox {
    grid-template-columns: 270px minmax(0, 1fr);
  }
  .support-first {
    flex-wrap: wrap;
  }
  .support-first .btn {
    margin-left: calc(48px + var(--space-5));
  }
  .support-help-grid {
    grid-template-columns: minmax(0, 1.4fr) minmax(240px, 1fr);
  }
}
@media (max-width: 650px) {
  .support-masthead {
    padding: var(--space-4) var(--space-5);
  }
  .support-masthead nav a {
    font-size: var(--text-xs);
  }
  .support-main {
    padding: var(--space-6) var(--space-4);
  }
  .support-heading {
    margin-bottom: var(--space-5);
  }
  .support-tabs button {
    padding: var(--space-3);
    font-size: var(--text-xs);
  }
  .support-help-grid,
  .support-guides,
  .support-inbox {
    grid-template-columns: minmax(0, 1fr);
  }
  .support-search-card,
  .support-personal-card,
  .support-article {
    padding: var(--space-4);
    border-radius: 16px;
  }
  .support-search-actions {
    align-items: flex-start;
    flex-direction: column;
    gap: var(--space-3);
  }
  .support-search-actions small {
    max-width: none;
  }
  .support-personal-card {
    position: relative;
  }
  .support-avatar {
    position: absolute;
    right: 20px;
    top: 18px;
    width: 42px;
    height: 42px;
  }
  .support-personal-card > .eyebrow {
    padding-right: var(--space-7);
  }
  .support-first {
    padding: var(--space-4);
    gap: var(--space-3);
  }
  .support-first-icon {
    display: none;
  }
  .support-first .btn {
    margin: var(--space-2) 0 0;
    width: 100%;
  }
  .support-section-heading h2 {
    font-size: var(--text-lg);
  }
  .support-guide-card {
    padding: var(--space-4);
  }
  .support-queue {
    border-right: 0;
    border-bottom: 1px solid #dfe4d8;
    padding: var(--space-4);
  }
  .support-thread-list {
    max-height: 230px;
    overflow: auto;
  }
  .support-conversation-head,
  .support-messages,
  .support-reply,
  .support-compose {
    padding: var(--space-4);
  }
  .support-message {
    max-width: 97%;
    padding: var(--space-4);
  }
  .support-reply > div {
    align-items: flex-start;
    flex-direction: column;
  }
  .support-reply .btn {
    width: 100%;
  }
  .support-footer {
    gap: var(--space-3);
  }
  .support-footer span:last-child {
    margin-left: 0;
  }
  .support-rating {
    margin: 0 var(--space-4) var(--space-4);
  }
  .support-page .btn {
    min-height: var(--control-lg);
  }
}
@media (max-width: 767px) {
  .support-launcher {
    right: 14px;
    bottom: calc(84px + env(safe-area-inset-bottom));
    padding: var(--space-3);
    border-radius: 50%;
    min-width: 44px;
    min-height: 44px;
  }
  .support-launcher span {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
  }
}
@media (pointer: coarse), (max-width: 767px) {
  .support-tabs button,
  .support-search-input input,
  .support-page input:not([type=checkbox]),
  .support-page select {
    min-height: var(--control-lg);
  }
  .support-page input:not([type=checkbox]),
  .support-page select,
  .support-page textarea {
    font-size: var(--text-md);
  }
  .support-rating button {
    width: var(--control-lg);
    min-height: var(--control-lg);
  }
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/usability.css */
.quote-mobile-filter {
  display: none;
}
.execution-jumps {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin: -8px 0 var(--space-5);
}
.execution-jumps a {
  display: inline-flex;
  align-items: center;
  min-height: var(--control-md);
  padding: var(--space-2) var(--space-4);
  border: 1px solid var(--line);
  border-radius: var(--radius-control);
  background: #fff;
  color: var(--ink);
  font-size: var(--text-xs);
  font-weight: 600;
}
.execution-jumps a:hover {
  background: var(--pale);
  border-color: #9ba994;
}
.execution-filter-status {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  justify-content: space-between;
  margin: -4px 0 var(--space-5);
  color: var(--muted);
  font-size: var(--text-xs);
}
.execution-saved-title {
  margin: var(--space-6) 0 var(--space-4);
}
.workspace-shell :is(#execution-reporting, #execution-assistance, #execution-saved, #execution-planning, #execution-handoff) {
  scroll-margin-top: 24px;
}
.nav a small {
  color: #596b5c;
}
.workspace-shell .sidebar {
  overflow-y: auto;
  overscroll-behavior: contain;
}
.account-menu > summary,
.topbar-notices {
  min-height: var(--control-sm);
}
.account-menu-panel a,
.account-menu-panel button {
  min-height: var(--control-md);
}
.account-menu-panel {
  max-height: calc(100dvh - 84px);
  overflow-y: auto;
  overscroll-behavior: contain;
}
@media (pointer: coarse), (max-width: 767px) {
  .execution-jumps a,
  .account-menu > summary,
  .topbar-notices,
  .account-menu-panel a,
  .account-menu-panel button,
  .account-menu-panel .btn.tertiary.small {
    min-height: var(--control-lg);
  }
}
.workspace-shell input[aria-invalid=true],
.workspace-shell textarea[aria-invalid=true],
.workspace-shell select[aria-invalid=true] {
  border-color: var(--danger);
}
.workspace-shell input:disabled,
.workspace-shell textarea:disabled,
.workspace-shell select:disabled {
  background: #f2f3ef;
  color: #626b60;
  cursor: not-allowed;
}
.workspace-shell .btn:disabled {
  cursor: not-allowed;
}
.workspace-shell [aria-busy=true] .btn:disabled {
  cursor: progress;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .workspace-shell .sidebar {
    overflow: visible;
  }
  .workspace-more nav {
    position: fixed;
    left: 86px;
    top: 80px;
    max-height: calc(100dvh - 100px);
    overflow-y: auto;
    overscroll-behavior: contain;
  }
}
@media (max-width: 767px) {
  .support-launcher-auth {
    position: static;
    width: fit-content;
    margin: 0 auto var(--space-5);
    border-radius: 24px;
    padding: var(--space-3) var(--space-4);
  }
  .support-launcher-auth span {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    clip-path: none;
  }
  .quote-register-progress .filter-pills {
    display: none;
  }
  .quote-mobile-filter {
    display: grid;
    width: 100%;
  }
  html {
    scroll-padding-top: 76px;
    scroll-padding-bottom: calc(100px + env(safe-area-inset-bottom));
  }
  .workspace-shell :is(#execution-reporting, #execution-assistance, #execution-saved, #execution-planning, #execution-handoff),
  .workspace-shell .quote-editor [id],
  #svara {
    scroll-margin-top: 16px;
  }
  .workspace-shell input:not([type=checkbox]):not([type=radio]):not(.docedit-title),
  .workspace-shell select,
  .workspace-shell textarea,
  .login-page input,
  .auth-page input {
    font-size: var(--text-md);
  }
  .workspace-shell .nav a > span {
    max-width: 100%;
    overflow-wrap: anywhere;
  }
  .execution-jumps {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-2);
  }
  .execution-jumps a {
    padding: var(--space-3) var(--space-3);
  }
  .execution-jumps a:last-child:nth-child(odd) {
    grid-column: 1 / -1;
  }
  .workspace-more nav a {
    display: flex;
    align-items: center;
    min-height: var(--control-lg);
    overflow-wrap: anywhere;
  }
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/select.css */
select:not([multiple]):not([size]) {
  -webkit-appearance: none;
  appearance: none;
  padding-right: var(--select-space, 40px);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%23263b33' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right var(--select-edge, 14px) center;
  background-size: 12px 8px;
}
select:not([multiple]):not([size]):disabled {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%238a948a' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");
}
@media (forced-colors: active) {
  select:not([multiple]):not([size]) {
    -webkit-appearance: auto;
    appearance: auto;
    background-image: none;
  }
}
@media (pointer: coarse), (max-width: 767px) {
  select:not([multiple]):not([size]) {
    font-size: var(--text-md);
  }
}
.platform-controls {
  --select-space: 24px;
  --select-edge: 2px;
}
@media (max-width: 500px) {
  .contact-filters {
    --select-space: 30px;
    --select-edge: 10px;
  }
}
.execution-check:has(> select) {
  flex-wrap: wrap;
}
.execution-check > select {
  flex: 1 1 12rem;
}
@media (max-width: 480px) {
  .execution-toolbar > label:has(> select),
  .platform-controls > label:has(> select) {
    flex-basis: 100%;
    max-width: none;
  }
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/brand-el.css */
html[data-brand=el] {
  --ink: #182c2c;
  --brand-ink: #182c2c;
  --text: #182c2c;
  --muted: #5d6d69;
  --paper: #f4f3ed;
  --white: #ffffff;
  --line: #d6ded7;
  --accent: #d9f279;
  --on-accent: #182c2c;
  --pale: #e5f1e8;
  --danger: #b02f38;
  --focus: #245c8a;
  --radius: 10px;
  --radius-control: 6px;
  --font-ui:
    "Instrument Sans Variable",
    "Instrument Sans",
    Arial,
    sans-serif;
  --font-display:
    "Instrument Sans Variable",
    "Instrument Sans",
    Arial,
    sans-serif;
  --font-display-weight: 600;
}
html[data-brand=el] .workspace-shell {
  --paper: #f4f3ed;
  --line: #d6ded7;
  --radius: 10px;
}
html[data-brand=el] .sidebar {
  background: #edf0ec;
  border-right-color: #d6ded7;
}
html[data-brand=el] .brand i {
  background: var(--ink);
}
html[data-brand=el] .login-story .brand i {
  background: var(--accent);
}
@media (min-width: 768px) and (max-width: 1024px) {
  html[data-brand=el] .sidebar .brand i {
    background: var(--accent);
  }
}
html[data-brand=el] .company-theme {
  --brand-ink: #263b33;
  --on-accent: #fff;
  --danger: #a83b31;
  --focus: #9a4b35;
  --radius: 14px;
  --radius-control: 8px;
  --font-ui: Manrope, sans-serif;
  --font-display: "Instrument Serif", serif;
  --font-display-weight: 400;
  font-family: var(--font-ui);
}
html[data-brand=el] .workspace-shell .company-theme {
  --radius: 16px;
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/grund-tokens.css */
:root,
.workspace-shell,
.company-theme {
  --background: var(--paper);
  --foreground: var(--text);
  --card: var(--white);
  --card-foreground: var(--text);
  --popover: var(--white);
  --popover-foreground: var(--text);
  --primary: var(--ink);
  --primary-foreground: var(--white);
  --secondary: var(--pale);
  --secondary-foreground: var(--ink);
  --muted-foreground: var(--muted);
  --accent-foreground: var(--ink);
  --destructive: var(--danger);
  --highlight: var(--ink);
  --highlight-foreground: var(--on-accent);
  --ring: var(--focus);
  --radius-panel: var(--radius);
}
:root {
  --signal: #be5b3f;
  --input: #71806f;
  --grund-muted: #f0f2eb;
  --grund-accent: #e6ebdf;
  --grund-surface: #f0f2eb;
  --danger-soft: #f8e6e3;
  --success: #2a6a45;
  --success-soft: #e3f0e6;
  --warning: #835300;
  --warning-soft: #fbf0cf;
  --info: #2c5a7a;
  --info-soft: #e3edf4;
  --chart-1: #1d8152;
  --chart-2: #3b73b6;
  --chart-3: #b57d0c;
  --chart-4: #9a55a6;
  --chart-5: #8a958c;
  --sidebar: #f0f2eb;
  --sidebar-foreground: #5d6a5e;
  --sidebar-primary: #263b33;
  --sidebar-primary-foreground: #ffffff;
  --sidebar-accent: #ffffff;
  --sidebar-accent-foreground: #243c30;
  --sidebar-border: #e0e4da;
  --sidebar-ring: #9a4b35;
  --duration-fast: 120ms;
  --duration-normal: 180ms;
  --ease: cubic-bezier(0.2, 0, 0, 1);
  --overlay-shadow: 0 12px 32px rgb(38 59 51 / 0.12);
}
html[data-brand=el],
html[data-brand=el] .workspace-shell,
html[data-brand=el] .company-theme {
  --signal: var(--ink);
  --highlight: var(--accent);
}
html[data-brand=el] {
  --input: #74847e;
  --grund-muted: #edf0ec;
  --grund-accent: #e2e8e3;
  --grund-surface: #edf0ec;
  --danger-soft: #fce8ea;
  --success: #176345;
  --success-soft: #e5f1e8;
  --warning: #835300;
  --warning-soft: #fff1cd;
  --info: #245c8a;
  --info-soft: #e7f0fa;
  --sidebar: #edf0ec;
  --sidebar-foreground: #4d5d59;
  --sidebar-primary: #182c2c;
  --sidebar-primary-foreground: #ffffff;
  --sidebar-accent: #ffffff;
  --sidebar-accent-foreground: #182c2c;
  --sidebar-border: #d6ded7;
  --sidebar-ring: #245c8a;
  --overlay-shadow: 0 8px 24px rgb(24 44 44 / 0.12);
}

/* ../../../../.codex/worktrees/produktvyer-granskning/kvota-demo/apps/app/app/grund.css */
@layer properties;
@layer theme, base, utilities;
@layer theme {
  :root,
  :host {
    --radius-md: calc(var(--radius-control) * 0.75);
    --color-chart-2: var(--chart-2);
    --color-chart-1: var(--chart-1);
    --color-border: var(--line);
    --color-popover: var(--popover);
  }
}
@layer utilities {
  .\@container\/card-header {
    container-type: inline-size;
    container-name: card-header;
  }
  .\@container\/field-group {
    container-type: inline-size;
    container-name: field-group;
  }
  .\@container\/schema {
    container-type: inline-size;
    container-name: schema;
  }
  .\@container {
    container-type: inline-size;
  }
  .pointer-events-auto {
    pointer-events: auto;
  }
  .pointer-events-none {
    pointer-events: none;
  }
  .invisible {
    visibility: hidden;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .sticky {
    position: sticky;
  }
  .inset-0 {
    inset: 0px;
  }
  .top-0 {
    top: 0px;
  }
  .top-1\/2 {
    top: calc(1 / 2 * 100%);
  }
  .top-2 {
    top: calc(0.25rem * 2);
  }
  .top-3 {
    top: calc(0.25rem * 3);
  }
  .top-10 {
    top: calc(0.25rem * 10);
  }
  .top-14 {
    top: calc(0.25rem * 14);
  }
  .right-0 {
    right: 0px;
  }
  .right-2 {
    right: calc(0.25rem * 2);
  }
  .right-3 {
    right: calc(0.25rem * 3);
  }
  .bottom-0 {
    bottom: 0px;
  }
  .bottom-1 {
    bottom: 0.25rem;
  }
  .bottom-20 {
    bottom: calc(0.25rem * 20);
  }
  .bottom-\[calc\(61px\+max\(8px\,env\(safe-area-inset-bottom\)\)\)\] {
    bottom: calc(61px + max(8px, env(safe-area-inset-bottom)));
  }
  .left-1\/2 {
    left: calc(1 / 2 * 100%);
  }
  .left-2 {
    left: calc(0.25rem * 2);
  }
  .left-3 {
    left: calc(0.25rem * 3);
  }
  .left-\[17\.5px\] {
    left: 17.5px;
  }
  .isolate {
    isolation: isolate;
  }
  .z-0 {
    z-index: 0;
  }
  .z-10 {
    z-index: 10;
  }
  .z-20 {
    z-index: 20;
  }
  .z-50 {
    z-index: 50;
  }
  .order-first {
    order: -9999;
  }
  .order-last {
    order: 9999;
  }
  .col-span-2 {
    grid-column: span 2 / span 2;
  }
  .col-span-full {
    grid-column: 1 / -1;
  }
  .col-start-2 {
    grid-column-start: 2;
  }
  .row-span-2 {
    grid-row: span 2 / span 2;
  }
  .row-start-1 {
    grid-row-start: 1;
  }
  .m-\(--drawer-inset\,0px\) {
    margin: var(--drawer-inset,0px);
  }
  .m-0 {
    margin: 0px;
  }
  .-mx-\(--card-spacing\) {
    margin-inline: calc(var(--card-spacing) * -1);
  }
  .-mx-1 {
    margin-inline: calc(0.25rem * -1);
  }
  .-mx-3 {
    margin-inline: calc(0.25rem * -3);
  }
  .-mx-4 {
    margin-inline: calc(0.25rem * -4);
  }
  .mx-0 {
    margin-inline: 0px;
  }
  .mx-auto {
    margin-inline: auto;
  }
  .-my-1 {
    margin-block: calc(0.25rem * -1);
  }
  .-my-2 {
    margin-block: calc(0.25rem * -2);
  }
  .my-0\.5 {
    margin-block: calc(0.25rem * 0.5);
  }
  .my-1 {
    margin-block: 0.25rem;
  }
  .my-2 {
    margin-block: calc(0.25rem * 2);
  }
  .my-4 {
    margin-block: calc(0.25rem * 4);
  }
  .my-5 {
    margin-block: calc(0.25rem * 5);
  }
  .my-6 {
    margin-block: calc(0.25rem * 6);
  }
  .-mt-1 {
    margin-top: calc(0.25rem * -1);
  }
  .-mt-2 {
    margin-top: calc(0.25rem * -2);
  }
  .mt-0\.5 {
    margin-top: calc(0.25rem * 0.5);
  }
  .mt-1 {
    margin-top: 0.25rem;
  }
  .mt-1\.5 {
    margin-top: calc(0.25rem * 1.5);
  }
  .mt-2 {
    margin-top: calc(0.25rem * 2);
  }
  .mt-2\.5 {
    margin-top: calc(0.25rem * 2.5);
  }
  .mt-3 {
    margin-top: calc(0.25rem * 3);
  }
  .mt-4 {
    margin-top: calc(0.25rem * 4);
  }
  .mt-5 {
    margin-top: calc(0.25rem * 5);
  }
  .mt-6 {
    margin-top: calc(0.25rem * 6);
  }
  .mt-8 {
    margin-top: calc(0.25rem * 8);
  }
  .mt-10 {
    margin-top: calc(0.25rem * 10);
  }
  .mt-auto {
    margin-top: auto;
  }
  .mt-px {
    margin-top: 1px;
  }
  .-mr-2 {
    margin-right: calc(0.25rem * -2);
  }
  .-mb-4 {
    margin-bottom: calc(0.25rem * -4);
  }
  .-mb-px {
    margin-bottom: -1px;
  }
  .mb-0 {
    margin-bottom: 0px;
  }
  .mb-1 {
    margin-bottom: 0.25rem;
  }
  .mb-1\.5 {
    margin-bottom: calc(0.25rem * 1.5);
  }
  .mb-2 {
    margin-bottom: calc(0.25rem * 2);
  }
  .mb-3 {
    margin-bottom: calc(0.25rem * 3);
  }
  .mb-4 {
    margin-bottom: calc(0.25rem * 4);
  }
  .mb-5 {
    margin-bottom: calc(0.25rem * 5);
  }
  .mb-6 {
    margin-bottom: calc(0.25rem * 6);
  }
  .-ml-1 {
    margin-left: calc(0.25rem * -1);
  }
  .-ml-3 {
    margin-left: calc(0.25rem * -3);
  }
  .ml-1 {
    margin-left: 0.25rem;
  }
  .ml-4 {
    margin-left: calc(0.25rem * 4);
  }
  .ml-8 {
    margin-left: calc(0.25rem * 8);
  }
  .ml-auto {
    margin-left: auto;
  }
  .line-clamp-2 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .line-clamp-3 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline-flex {
    display: inline-flex;
  }
  .table {
    display: table;
  }
  .table-caption {
    display: table-caption;
  }
  .table-cell {
    display: table-cell;
  }
  .table-row {
    display: table-row;
  }
  .field-sizing-content {
    field-sizing: content;
  }
  .aspect-\[4\/3\] {
    aspect-ratio: 4/3;
  }
  .aspect-auto {
    aspect-ratio: auto;
  }
  .aspect-square {
    aspect-ratio: 1 / 1;
  }
  .aspect-video {
    aspect-ratio: 16 / 9;
  }
  .size-1\.5 {
    width: calc(0.25rem * 1.5);
    height: calc(0.25rem * 1.5);
  }
  .size-2\.5 {
    width: calc(0.25rem * 2.5);
    height: calc(0.25rem * 2.5);
  }
  .size-3 {
    width: calc(0.25rem * 3);
    height: calc(0.25rem * 3);
  }
  .size-3\.5 {
    width: calc(0.25rem * 3.5);
    height: calc(0.25rem * 3.5);
  }
  .size-4 {
    width: calc(0.25rem * 4);
    height: calc(0.25rem * 4);
  }
  .size-5 {
    width: calc(0.25rem * 5);
    height: calc(0.25rem * 5);
  }
  .size-6 {
    width: calc(0.25rem * 6);
    height: calc(0.25rem * 6);
  }
  .size-8 {
    width: calc(0.25rem * 8);
    height: calc(0.25rem * 8);
  }
  .size-9 {
    width: calc(0.25rem * 9);
    height: calc(0.25rem * 9);
  }
  .size-10 {
    width: calc(0.25rem * 10);
    height: calc(0.25rem * 10);
  }
  .size-11 {
    width: calc(0.25rem * 11);
    height: calc(0.25rem * 11);
  }
  .size-12 {
    width: calc(0.25rem * 12);
    height: calc(0.25rem * 12);
  }
  .size-24 {
    width: calc(0.25rem * 24);
    height: calc(0.25rem * 24);
  }
  .size-full {
    width: 100%;
    height: 100%;
  }
  .h-\(--drawer-content-height\) {
    height: var(--drawer-content-height);
  }
  .h-1 {
    height: 0.25rem;
  }
  .h-2 {
    height: calc(0.25rem * 2);
  }
  .h-2\.5 {
    height: calc(0.25rem * 2.5);
  }
  .h-3 {
    height: calc(0.25rem * 3);
  }
  .h-3\.5 {
    height: calc(0.25rem * 3.5);
  }
  .h-4 {
    height: calc(0.25rem * 4);
  }
  .h-5 {
    height: calc(0.25rem * 5);
  }
  .h-6 {
    height: calc(0.25rem * 6);
  }
  .h-7 {
    height: calc(0.25rem * 7);
  }
  .h-8 {
    height: calc(0.25rem * 8);
  }
  .h-9 {
    height: calc(0.25rem * 9);
  }
  .h-10 {
    height: calc(0.25rem * 10);
  }
  .h-11 {
    height: calc(0.25rem * 11);
  }
  .h-12 {
    height: calc(0.25rem * 12);
  }
  .h-12\.75 {
    height: calc(0.25rem * 12.75);
  }
  .h-16 {
    height: calc(0.25rem * 16);
  }
  .h-20 {
    height: calc(0.25rem * 20);
  }
  .h-24 {
    height: calc(0.25rem * 24);
  }
  .h-28 {
    height: calc(0.25rem * 28);
  }
  .h-40 {
    height: calc(0.25rem * 40);
  }
  .h-44 {
    height: calc(0.25rem * 44);
  }
  .h-52 {
    height: calc(0.25rem * 52);
  }
  .h-60 {
    height: calc(0.25rem * 60);
  }
  .h-\[200px\] {
    height: 200px;
  }
  .h-\[calc\(100\%-1px\)\] {
    height: calc(100% - 1px);
  }
  .h-auto {
    height: auto;
  }
  .h-auto\! {
    height: auto !important;
  }
  .h-full {
    height: 100%;
  }
  .h-px {
    height: 1px;
  }
  .max-h-\(--available-height\) {
    max-height: var(--available-height);
  }
  .max-h-\(--drawer-content-max-height\,none\) {
    max-height: var(--drawer-content-max-height,none);
  }
  .max-h-96 {
    max-height: calc(0.25rem * 96);
  }
  .min-h-0 {
    min-height: 0px;
  }
  .min-h-8 {
    min-height: calc(0.25rem * 8);
  }
  .min-h-11 {
    min-height: calc(0.25rem * 11);
  }
  .min-h-12 {
    min-height: calc(0.25rem * 12);
  }
  .min-h-14 {
    min-height: calc(0.25rem * 14);
  }
  .min-h-16 {
    min-height: calc(0.25rem * 16);
  }
  .min-h-20 {
    min-height: calc(0.25rem * 20);
  }
  .min-h-24 {
    min-height: calc(0.25rem * 24);
  }
  .min-h-28 {
    min-height: calc(0.25rem * 28);
  }
  .min-h-dvh {
    min-height: 100dvh;
  }
  .w-\(--anchor-width\) {
    width: var(--anchor-width);
  }
  .w-\(--drawer-content-width\,auto\) {
    width: var(--drawer-content-width,auto);
  }
  .w-0 {
    width: 0px;
  }
  .w-1 {
    width: 0.25rem;
  }
  .w-1\/2 {
    width: calc(1 / 2 * 100%);
  }
  .w-1\/3 {
    width: calc(1 / 3 * 100%);
  }
  .w-2 {
    width: calc(0.25rem * 2);
  }
  .w-2\.5 {
    width: calc(0.25rem * 2.5);
  }
  .w-2\/3 {
    width: calc(2 / 3 * 100%);
  }
  .w-2\/5 {
    width: calc(2 / 5 * 100%);
  }
  .w-3\/4 {
    width: calc(3 / 4 * 100%);
  }
  .w-3\/5 {
    width: calc(3 / 5 * 100%);
  }
  .w-4\/5 {
    width: calc(4 / 5 * 100%);
  }
  .w-5 {
    width: calc(0.25rem * 5);
  }
  .w-5\/6 {
    width: calc(5 / 6 * 100%);
  }
  .w-10 {
    width: calc(0.25rem * 10);
  }
  .w-14 {
    width: calc(0.25rem * 14);
  }
  .w-16 {
    width: calc(0.25rem * 16);
  }
  .w-18 {
    width: calc(0.25rem * 18);
  }
  .w-20 {
    width: calc(0.25rem * 20);
  }
  .w-24 {
    width: calc(0.25rem * 24);
  }
  .w-28 {
    width: calc(0.25rem * 28);
  }
  .w-32 {
    width: calc(0.25rem * 32);
  }
  .w-36 {
    width: calc(0.25rem * 36);
  }
  .w-40 {
    width: calc(0.25rem * 40);
  }
  .w-44 {
    width: calc(0.25rem * 44);
  }
  .w-48 {
    width: calc(0.25rem * 48);
  }
  .w-52 {
    width: calc(0.25rem * 52);
  }
  .w-56 {
    width: calc(0.25rem * 56);
  }
  .w-60 {
    width: calc(0.25rem * 60);
  }
  .w-64 {
    width: calc(0.25rem * 64);
  }
  .w-72 {
    width: calc(0.25rem * 72);
  }
  .w-\[7\%\] {
    width: 7%;
  }
  .w-\[720px\] {
    width: 720px;
  }
  .w-auto {
    width: auto;
  }
  .w-fit {
    width: fit-content;
  }
  .w-full {
    width: 100%;
  }
  .w-px {
    width: 1px;
  }
  .max-w-2xl {
    max-width: 42rem;
  }
  .max-w-3xl {
    max-width: 48rem;
  }
  .max-w-5xl {
    max-width: 64rem;
  }
  .max-w-6xl {
    max-width: 72rem;
  }
  .max-w-8 {
    max-width: calc(0.25rem * 8);
  }
  .max-w-12 {
    max-width: calc(0.25rem * 12);
  }
  .max-w-\[70\%\] {
    max-width: 70%;
  }
  .max-w-\[85\%\] {
    max-width: 85%;
  }
  .max-w-\[calc\(100\%-2rem\)\] {
    max-width: calc(100% - 2rem);
  }
  .max-w-full {
    max-width: 100%;
  }
  .max-w-md {
    max-width: 28rem;
  }
  .max-w-none {
    max-width: none;
  }
  .max-w-sm {
    max-width: 24rem;
  }
  .max-w-xl {
    max-width: 36rem;
  }
  .max-w-xs {
    max-width: 20rem;
  }
  .min-w-0 {
    min-width: 0px;
  }
  .min-w-7 {
    min-width: calc(0.25rem * 7);
  }
  .min-w-8 {
    min-width: calc(0.25rem * 8);
  }
  .min-w-9 {
    min-width: calc(0.25rem * 9);
  }
  .min-w-32 {
    min-width: calc(0.25rem * 32);
  }
  .min-w-36 {
    min-width: calc(0.25rem * 36);
  }
  .min-w-40 {
    min-width: calc(0.25rem * 40);
  }
  .min-w-44 {
    min-width: calc(0.25rem * 44);
  }
  .min-w-56 {
    min-width: calc(0.25rem * 56);
  }
  .min-w-64 {
    min-width: calc(0.25rem * 64);
  }
  .min-w-\[96px\] {
    min-width: 96px;
  }
  .flex-1 {
    flex: 1;
  }
  .flex-none {
    flex: none;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .basis-36 {
    flex-basis: calc(0.25rem * 36);
  }
  .basis-48 {
    flex-basis: calc(0.25rem * 48);
  }
  .basis-full {
    flex-basis: 100%;
  }
  .table-fixed {
    table-layout: fixed;
  }
  .caption-bottom {
    caption-side: bottom;
  }
  .origin-\(--transform-origin\) {
    transform-origin: var(--transform-origin);
  }
  .-translate-x-1\/2 {
    --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .-translate-y-1\/2 {
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .-translate-y-20 {
    --tw-translate-y: calc(0.25rem * -20);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-\[calc\(-50\%-2px\)\] {
    --tw-translate-y: calc(-50% - 2px);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .rotate-45 {
    rotate: 45deg;
  }
  .transform-\[translate3d\(var\(--translate-x\,0px\)\,var\(--translate-y\,0px\)\,0\)_scale\(var\(--stack-scale\)\)\] {
    transform: translate3d(var(--translate-x,0px), var(--translate-y,0px), 0) scale(var(--stack-scale));
  }
  .animate-pulse {
    animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
  }
  .animate-spin {
    animation: spin 1s linear infinite;
  }
  .cursor-default {
    cursor: default;
  }
  .cursor-grab {
    cursor: grab;
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .cursor-text {
    cursor: text;
  }
  .resize-none {
    resize: none;
  }
  .scroll-my-1 {
    scroll-margin-block: 0.25rem;
  }
  .scroll-mt-4 {
    scroll-margin-top: calc(0.25rem * 4);
  }
  .scroll-mt-6 {
    scroll-margin-top: calc(0.25rem * 6);
  }
  .scroll-mt-20 {
    scroll-margin-top: calc(0.25rem * 20);
  }
  .scroll-mt-24 {
    scroll-margin-top: calc(0.25rem * 24);
  }
  .\[scrollbar-width\:none\] {
    scrollbar-width: none;
  }
  .list-decimal {
    list-style-type: decimal;
  }
  .list-disc {
    list-style-type: disc;
  }
  .list-none {
    list-style-type: none;
  }
  .appearance-none {
    appearance: none;
  }
  .auto-rows-min {
    grid-auto-rows: min-content;
  }
  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .grid-cols-7 {
    grid-template-columns: repeat(7, minmax(0, 1fr));
  }
  .grid-cols-\[4\.5rem_minmax\(0\,1fr\)\] {
    grid-template-columns: 4.5rem minmax(0, 1fr);
  }
  .grid-cols-\[10rem_repeat\(5\,minmax\(0\,1fr\)\)_repeat\(2\,minmax\(0\,0\.4fr\)\)\] {
    grid-template-columns: 10rem repeat(5, minmax(0, 1fr)) repeat(2, minmax(0, 0.4fr));
  }
  .grid-cols-\[auto_1fr\] {
    grid-template-columns: auto 1fr;
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-col-reverse {
    flex-direction: column-reverse;
  }
  .flex-row {
    flex-direction: row;
  }
  .flex-row-reverse {
    flex-direction: row-reverse;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .place-content-center {
    place-content: center;
  }
  .content-start {
    align-content: flex-start;
  }
  .items-baseline {
    align-items: baseline;
  }
  .items-center {
    align-items: center;
  }
  .items-end {
    align-items: flex-end;
  }
  .items-start {
    align-items: flex-start;
  }
  .items-stretch {
    align-items: stretch;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-end {
    justify-content: flex-end;
  }
  .justify-start {
    justify-content: flex-start;
  }
  .gap-\(--card-spacing\) {
    gap: var(--card-spacing);
  }
  .gap-0 {
    gap: 0px;
  }
  .gap-0\.5 {
    gap: calc(0.25rem * 0.5);
  }
  .gap-1 {
    gap: 0.25rem;
  }
  .gap-1\.5 {
    gap: calc(0.25rem * 1.5);
  }
  .gap-2 {
    gap: calc(0.25rem * 2);
  }
  .gap-2\.5 {
    gap: calc(0.25rem * 2.5);
  }
  .gap-3 {
    gap: calc(0.25rem * 3);
  }
  .gap-4 {
    gap: calc(0.25rem * 4);
  }
  .gap-5 {
    gap: calc(0.25rem * 5);
  }
  .gap-6 {
    gap: calc(0.25rem * 6);
  }
  .gap-\[--spacing\(var\(--gap\)\)\] {
    gap: calc(0.25rem * var(--gap));
  }
  :where(.space-y-1 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(0.25rem * var(--tw-space-y-reverse));
    margin-block-end: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));
  }
  :where(.space-y-1\.5 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(0.25rem * 1.5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(0.25rem * 1.5) * calc(1 - var(--tw-space-y-reverse)));
  }
  :where(.space-y-2 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(0.25rem * 2) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(0.25rem * 2) * calc(1 - var(--tw-space-y-reverse)));
  }
  :where(.space-y-3 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(0.25rem * 3) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(0.25rem * 3) * calc(1 - var(--tw-space-y-reverse)));
  }
  :where(.space-y-4 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(0.25rem * 4) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(0.25rem * 4) * calc(1 - var(--tw-space-y-reverse)));
  }
  :where(.space-y-5 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(0.25rem * 5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(0.25rem * 5) * calc(1 - var(--tw-space-y-reverse)));
  }
  :where(.space-y-6 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(0.25rem * 6) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(0.25rem * 6) * calc(1 - var(--tw-space-y-reverse)));
  }
  .gap-x-1\.5 {
    column-gap: calc(0.25rem * 1.5);
  }
  .gap-x-2 {
    column-gap: calc(0.25rem * 2);
  }
  .gap-x-3 {
    column-gap: calc(0.25rem * 3);
  }
  .gap-x-4 {
    column-gap: calc(0.25rem * 4);
  }
  .gap-x-5 {
    column-gap: calc(0.25rem * 5);
  }
  .gap-x-6 {
    column-gap: calc(0.25rem * 6);
  }
  :where(.-space-x-2 > :not(:last-child)) {
    --tw-space-x-reverse: 0;
    margin-inline-start: calc(calc(0.25rem * -2) * var(--tw-space-x-reverse));
    margin-inline-end: calc(calc(0.25rem * -2) * calc(1 - var(--tw-space-x-reverse)));
  }
  .gap-y-0\.5 {
    row-gap: calc(0.25rem * 0.5);
  }
  .gap-y-1 {
    row-gap: 0.25rem;
  }
  .gap-y-1\.5 {
    row-gap: calc(0.25rem * 1.5);
  }
  .gap-y-2 {
    row-gap: calc(0.25rem * 2);
  }
  :where(.divide-x > :not(:last-child)) {
    --tw-divide-x-reverse: 0;
    border-inline-style: var(--tw-border-style);
    border-inline-start-width: calc(1px * var(--tw-divide-x-reverse));
    border-inline-end-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
  }
  :where(.divide-y > :not(:last-child)) {
    --tw-divide-y-reverse: 0;
    border-bottom-style: var(--tw-border-style);
    border-top-style: var(--tw-border-style);
    border-top-width: calc(1px * var(--tw-divide-y-reverse));
    border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  }
  :where(.divide-border > :not(:last-child)) {
    border-color: var(--line);
  }
  .self-center {
    align-self: center;
  }
  .self-start {
    align-self: flex-start;
  }
  .justify-self-end {
    justify-self: flex-end;
  }
  .justify-self-start {
    justify-self: flex-start;
  }
  .truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .overflow-auto {
    overflow: auto;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-x-auto {
    overflow-x: auto;
  }
  .overflow-x-hidden {
    overflow-x: hidden;
  }
  .overflow-y-auto {
    overflow-y: auto;
  }
  .overscroll-contain {
    overscroll-behavior: contain;
  }
  .overscroll-x-contain {
    overscroll-behavior-x: contain;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-2xl {
    border-radius: calc(var(--radius-panel) + 4px);
  }
  .rounded-\[2px\] {
    border-radius: 2px;
  }
  .rounded-\[4px\] {
    border-radius: 4px;
  }
  .rounded-\[calc\(var\(--radius\)-3px\)\] {
    border-radius: calc(var(--radius) - 3px);
  }
  .rounded-\[inherit\] {
    border-radius: inherit;
  }
  .rounded-\[min\(var\(--radius-md\)\,10px\)\] {
    border-radius: min(var(--radius-md), 10px);
  }
  .rounded-\[min\(var\(--radius-md\)\,12px\)\] {
    border-radius: min(var(--radius-md), 12px);
  }
  .rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .rounded-lg {
    border-radius: var(--radius-control);
  }
  .rounded-md {
    border-radius: calc(var(--radius-control) * 0.75);
  }
  .rounded-none {
    border-radius: 0;
  }
  .rounded-sm {
    border-radius: calc(var(--radius-control) * 0.5);
  }
  .rounded-xl {
    border-radius: var(--radius-panel);
  }
  .rounded-t-xl {
    border-top-left-radius: var(--radius-panel);
    border-top-right-radius: var(--radius-panel);
  }
  .rounded-tl-md {
    border-top-left-radius: calc(var(--radius-control) * 0.75);
  }
  .rounded-r-lg {
    border-top-right-radius: var(--radius-control);
    border-bottom-right-radius: var(--radius-control);
  }
  .rounded-tr-md {
    border-top-right-radius: calc(var(--radius-control) * 0.75);
  }
  .rounded-b-xl {
    border-bottom-right-radius: var(--radius-panel);
    border-bottom-left-radius: var(--radius-panel);
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-0 {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }
  .border-2 {
    border-style: var(--tw-border-style);
    border-width: 2px;
  }
  .border-\[1\.5px\] {
    border-style: var(--tw-border-style);
    border-width: 1.5px;
  }
  .border-y {
    border-block-style: var(--tw-border-style);
    border-block-width: 1px;
  }
  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-b-2 {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 2px;
  }
  .border-l {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }
  .border-l-2 {
    border-left-style: var(--tw-border-style);
    border-left-width: 2px;
  }
  .border-l-3 {
    border-left-style: var(--tw-border-style);
    border-left-width: 3px;
  }
  .border-dashed {
    --tw-border-style: dashed;
    border-style: dashed;
  }
  .border-\(--color-border\) {
    border-color: var(--color-border);
  }
  .border-border {
    border-color: var(--line);
  }
  .border-border\/50 {
    border-color: var(--line);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--line) 50%, transparent);
    }
  }
  .border-destructive {
    border-color: var(--destructive);
  }
  .border-foreground {
    border-color: var(--foreground);
  }
  .border-input {
    border-color: var(--input);
  }
  .border-muted-foreground\/50 {
    border-color: var(--muted-foreground);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--muted-foreground) 50%, transparent);
    }
  }
  .border-primary {
    border-color: var(--primary);
  }
  .border-primary-foreground\/15 {
    border-color: var(--primary-foreground);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--primary-foreground) 15%, transparent);
    }
  }
  .border-success {
    border-color: var(--success);
  }
  .border-transparent {
    border-color: transparent;
  }
  .border-warning {
    border-color: var(--warning);
  }
  .border-warning\/40 {
    border-color: var(--warning);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--warning) 40%, transparent);
    }
  }
  .bg-\(--color-bg\) {
    background-color: var(--color-bg);
  }
  .bg-background {
    background-color: var(--background);
  }
  .bg-background\/15 {
    background-color: var(--background);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--background) 15%, transparent);
    }
  }
  .bg-background\/95 {
    background-color: var(--background);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--background) 95%, transparent);
    }
  }
  .bg-black\/10 {
    background-color: color-mix(in oklab, #000 10%, transparent);
  }
  .bg-border {
    background-color: var(--line);
  }
  .bg-card {
    background-color: var(--card);
  }
  .bg-chart-1 {
    background-color: var(--chart-1);
  }
  .bg-chart-2 {
    background-color: var(--chart-2);
  }
  .bg-current {
    background-color: currentcolor;
  }
  .bg-danger-soft {
    background-color: var(--danger-soft);
  }
  .bg-destructive\/10 {
    background-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--destructive) 10%, transparent);
    }
  }
  .bg-foreground {
    background-color: var(--foreground);
  }
  .bg-highlight {
    background-color: var(--highlight);
  }
  .bg-info-soft {
    background-color: var(--info-soft);
  }
  .bg-muted {
    background-color: var(--grund-muted);
  }
  .bg-muted\/40 {
    background-color: var(--grund-muted);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--grund-muted) 40%, transparent);
    }
  }
  .bg-muted\/50 {
    background-color: var(--grund-muted);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--grund-muted) 50%, transparent);
    }
  }
  .bg-muted\/60 {
    background-color: var(--grund-muted);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--grund-muted) 60%, transparent);
    }
  }
  .bg-popover {
    background-color: var(--popover);
  }
  .bg-primary {
    background-color: var(--primary);
  }
  .bg-primary-foreground {
    background-color: var(--primary-foreground);
  }
  .bg-secondary {
    background-color: var(--secondary);
  }
  .bg-secondary\/50 {
    background-color: var(--secondary);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--secondary) 50%, transparent);
    }
  }
  .bg-success-soft {
    background-color: var(--success-soft);
  }
  .bg-transparent {
    background-color: transparent;
  }
  .bg-warning-soft {
    background-color: var(--warning-soft);
  }
  .bg-clip-padding {
    background-clip: padding-box;
  }
  .fill-chart-1 {
    fill: var(--chart-1);
  }
  .fill-chart-2 {
    fill: var(--chart-2);
  }
  .fill-foreground {
    fill: var(--foreground);
  }
  .fill-muted-foreground {
    fill: var(--muted-foreground);
  }
  .stroke-border {
    stroke: var(--line);
  }
  .object-cover {
    object-fit: cover;
  }
  .p-\(--card-spacing\) {
    padding: var(--card-spacing);
  }
  .p-0 {
    padding: 0px;
  }
  .p-1 {
    padding: 0.25rem;
  }
  .p-1\.5 {
    padding: calc(0.25rem * 1.5);
  }
  .p-2 {
    padding: calc(0.25rem * 2);
  }
  .p-2\.5 {
    padding: calc(0.25rem * 2.5);
  }
  .p-3 {
    padding: calc(0.25rem * 3);
  }
  .p-4 {
    padding: calc(0.25rem * 4);
  }
  .p-5 {
    padding: calc(0.25rem * 5);
  }
  .p-\[3px\] {
    padding: 3px;
  }
  .px-\(--card-spacing\) {
    padding-inline: var(--card-spacing);
  }
  .px-0 {
    padding-inline: 0px;
  }
  .px-1 {
    padding-inline: 0.25rem;
  }
  .px-1\.5 {
    padding-inline: calc(0.25rem * 1.5);
  }
  .px-2 {
    padding-inline: calc(0.25rem * 2);
  }
  .px-2\.5 {
    padding-inline: calc(0.25rem * 2.5);
  }
  .px-3 {
    padding-inline: calc(0.25rem * 3);
  }
  .px-3\.5 {
    padding-inline: calc(0.25rem * 3.5);
  }
  .px-4 {
    padding-inline: calc(0.25rem * 4);
  }
  .px-5 {
    padding-inline: calc(0.25rem * 5);
  }
  .px-6 {
    padding-inline: calc(0.25rem * 6);
  }
  .py-\(--card-spacing\) {
    padding-block: var(--card-spacing);
  }
  .py-0\.5 {
    padding-block: calc(0.25rem * 0.5);
  }
  .py-1 {
    padding-block: 0.25rem;
  }
  .py-1\.5 {
    padding-block: calc(0.25rem * 1.5);
  }
  .py-2 {
    padding-block: calc(0.25rem * 2);
  }
  .py-2\.5 {
    padding-block: calc(0.25rem * 2.5);
  }
  .py-3 {
    padding-block: calc(0.25rem * 3);
  }
  .py-4 {
    padding-block: calc(0.25rem * 4);
  }
  .py-5 {
    padding-block: calc(0.25rem * 5);
  }
  .py-6 {
    padding-block: calc(0.25rem * 6);
  }
  .py-8 {
    padding-block: calc(0.25rem * 8);
  }
  .py-10 {
    padding-block: calc(0.25rem * 10);
  }
  .py-14 {
    padding-block: calc(0.25rem * 14);
  }
  .pt-0 {
    padding-top: 0px;
  }
  .pt-1 {
    padding-top: 0.25rem;
  }
  .pt-1\.5 {
    padding-top: calc(0.25rem * 1.5);
  }
  .pt-2 {
    padding-top: calc(0.25rem * 2);
  }
  .pt-3 {
    padding-top: calc(0.25rem * 3);
  }
  .pt-4 {
    padding-top: calc(0.25rem * 4);
  }
  .pt-5 {
    padding-top: calc(0.25rem * 5);
  }
  .pt-6 {
    padding-top: calc(0.25rem * 6);
  }
  .pr-1\.5 {
    padding-right: calc(0.25rem * 1.5);
  }
  .pr-2 {
    padding-right: calc(0.25rem * 2);
  }
  .pr-2\.5 {
    padding-right: calc(0.25rem * 2.5);
  }
  .pr-4 {
    padding-right: calc(0.25rem * 4);
  }
  .pr-8 {
    padding-right: calc(0.25rem * 8);
  }
  .pr-9 {
    padding-right: calc(0.25rem * 9);
  }
  .pb-0 {
    padding-bottom: 0px;
  }
  .pb-1 {
    padding-bottom: 0.25rem;
  }
  .pb-2 {
    padding-bottom: calc(0.25rem * 2);
  }
  .pb-3 {
    padding-bottom: calc(0.25rem * 3);
  }
  .pb-4 {
    padding-bottom: calc(0.25rem * 4);
  }
  .pb-5 {
    padding-bottom: calc(0.25rem * 5);
  }
  .pb-6 {
    padding-bottom: calc(0.25rem * 6);
  }
  .pb-16 {
    padding-bottom: calc(0.25rem * 16);
  }
  .pb-\[calc\(1rem\+env\(safe-area-inset-bottom\)\)\] {
    padding-bottom: calc(1rem + env(safe-area-inset-bottom));
  }
  .pl-1 {
    padding-left: 0.25rem;
  }
  .pl-1\.5 {
    padding-left: calc(0.25rem * 1.5);
  }
  .pl-2 {
    padding-left: calc(0.25rem * 2);
  }
  .pl-2\.5 {
    padding-left: calc(0.25rem * 2.5);
  }
  .pl-3 {
    padding-left: calc(0.25rem * 3);
  }
  .pl-4 {
    padding-left: calc(0.25rem * 4);
  }
  .pl-5 {
    padding-left: calc(0.25rem * 5);
  }
  .pl-9 {
    padding-left: calc(0.25rem * 9);
  }
  .pl-21 {
    padding-left: calc(0.25rem * 21);
  }
  .text-center {
    text-align: center;
  }
  .text-left {
    text-align: left;
  }
  .text-right {
    text-align: right;
  }
  .align-bottom {
    vertical-align: bottom;
  }
  .align-middle {
    vertical-align: middle;
  }
  .align-top {
    vertical-align: top;
  }
  .font-heading {
    font-family: var(--font-ui);
  }
  .font-mono {
    font-family:
      ui-monospace,
      SFMono-Regular,
      Menlo,
      Monaco,
      Consolas,
      "Liberation Mono",
      "Courier New",
      monospace;
  }
  .text-2xl {
    font-size: 1.5rem;
    line-height: var(--tw-leading, calc(2 / 1.5));
  }
  .text-base {
    font-size: 1rem;
    line-height: var(--tw-leading, calc(1.5 / 1));
  }
  .text-lg {
    font-size: 1.125rem;
    line-height: var(--tw-leading, calc(1.75 / 1.125));
  }
  .text-sm {
    font-size: 0.875rem;
    line-height: var(--tw-leading, calc(1.25 / 0.875));
  }
  .text-ui {
    font-size: 0.8125rem;
    line-height: var(--tw-leading, 1.25rem);
  }
  .text-xs {
    font-size: 0.75rem;
    line-height: var(--tw-leading, calc(1 / 0.75));
  }
  .text-\[0\.8rem\] {
    font-size: 0.8rem;
  }
  .text-\[0\.8125rem\] {
    font-size: 0.8125rem;
  }
  .text-\[0\.9375rem\] {
    font-size: 0.9375rem;
  }
  .leading-5 {
    --tw-leading: calc(0.25rem * 5);
    line-height: calc(0.25rem * 5);
  }
  .leading-6 {
    --tw-leading: calc(0.25rem * 6);
    line-height: calc(0.25rem * 6);
  }
  .leading-7 {
    --tw-leading: calc(0.25rem * 7);
    line-height: calc(0.25rem * 7);
  }
  .leading-8 {
    --tw-leading: calc(0.25rem * 8);
    line-height: calc(0.25rem * 8);
  }
  .leading-none {
    --tw-leading: 1;
    line-height: 1;
  }
  .leading-normal {
    --tw-leading: 1.5;
    line-height: 1.5;
  }
  .leading-snug {
    --tw-leading: 1.375;
    line-height: 1.375;
  }
  .leading-tight {
    --tw-leading: 1.25;
    line-height: 1.25;
  }
  .font-bold {
    --tw-font-weight: 700;
    font-weight: 700;
  }
  .font-medium {
    --tw-font-weight: 500;
    font-weight: 500;
  }
  .font-normal {
    --tw-font-weight: 400;
    font-weight: 400;
  }
  .font-semibold {
    --tw-font-weight: 600;
    font-weight: 600;
  }
  .tracking-\[-0\.02em\] {
    --tw-tracking: -0.02em;
    letter-spacing: -0.02em;
  }
  .tracking-tight {
    --tw-tracking: -0.025em;
    letter-spacing: -0.025em;
  }
  .tracking-widest {
    --tw-tracking: 0.1em;
    letter-spacing: 0.1em;
  }
  .text-balance {
    text-wrap: balance;
  }
  .text-pretty {
    text-wrap: pretty;
  }
  .\[overflow-wrap\:anywhere\] {
    overflow-wrap: anywhere;
  }
  .break-words {
    overflow-wrap: break-word;
  }
  .wrap-anywhere {
    overflow-wrap: anywhere;
  }
  .wrap-break-word {
    overflow-wrap: break-word;
  }
  .hyphens-auto {
    -webkit-hyphens: auto;
    hyphens: auto;
  }
  .whitespace-normal {
    white-space: normal;
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .whitespace-pre-line {
    white-space: pre-line;
  }
  .whitespace-pre-wrap {
    white-space: pre-wrap;
  }
  .text-background {
    color: var(--background);
  }
  .text-card-foreground {
    color: var(--card-foreground);
  }
  .text-current {
    color: currentcolor;
  }
  .text-destructive {
    color: var(--destructive);
  }
  .text-foreground {
    color: var(--foreground);
  }
  .text-foreground\/80 {
    color: var(--foreground);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--foreground) 80%, transparent);
    }
  }
  .text-highlight-foreground {
    color: var(--highlight-foreground);
  }
  .text-info {
    color: var(--info);
  }
  .text-muted-foreground {
    color: var(--muted-foreground);
  }
  .text-popover-foreground {
    color: var(--popover-foreground);
  }
  .text-primary {
    color: var(--primary);
  }
  .text-primary-foreground {
    color: var(--primary-foreground);
  }
  .text-secondary-foreground {
    color: var(--secondary-foreground);
  }
  .text-success {
    color: var(--success);
  }
  .text-warning {
    color: var(--warning);
  }
  .capitalize {
    text-transform: capitalize;
  }
  .italic {
    font-style: italic;
  }
  .tabular-nums {
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .tabular {
    font-variant-numeric: tabular-nums;
  }
  .line-through {
    text-decoration-line: line-through;
  }
  .underline {
    text-decoration-line: underline;
  }
  .decoration-border {
    text-decoration-color: var(--line);
  }
  .underline-offset-4 {
    text-underline-offset: 4px;
  }
  .opacity-50 {
    opacity: 50%;
  }
  .opacity-80 {
    opacity: 80%;
  }
  .opacity-\[max\(var\(--drawer-overlay-min-opacity\,0\)\,calc\(1-var\(--drawer-swipe-progress\)\)\)\] {
    opacity: max(var(--drawer-overlay-min-opacity,0), calc(1 - var(--drawer-swipe-progress)));
  }
  .bg-blend-color {
    background-blend-mode: color;
  }
  .shadow-lg {
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .shadow-md {
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .shadow-none {
    --tw-shadow: 0 0 #0000;
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .shadow-overlay {
    --tw-shadow: var(--overlay-shadow);
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .shadow-xl {
    --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .ring {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .ring-0 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .ring-1 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .ring-2 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .ring-background {
    --tw-ring-color: var(--background);
  }
  .ring-border {
    --tw-ring-color: var(--line);
  }
  .ring-foreground\/10 {
    --tw-ring-color: var(--foreground);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--foreground) 10%, transparent);
    }
  }
  .ring-primary {
    --tw-ring-color: var(--primary);
  }
  .outline-hidden {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .backdrop-blur {
    --tw-backdrop-blur: blur(8px);
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .transition {
    transition-property:
      color,
      background-color,
      border-color,
      outline-color,
      text-decoration-color,
      fill,
      stroke,
      --tw-gradient-from,
      --tw-gradient-via,
      --tw-gradient-to,
      opacity,
      box-shadow,
      transform,
      translate,
      scale,
      rotate,
      filter,
      -webkit-backdrop-filter,
      backdrop-filter,
      display,
      content-visibility,
      overlay,
      pointer-events;
    transition-timing-function: var(--tw-ease, cubic-bezier(0.4, 0, 0.2, 1));
    transition-duration: var(--tw-duration, 150ms);
  }
  .transition-\[border-color\,background-color\] {
    transition-property: border-color, background-color;
    transition-timing-function: var(--tw-ease, cubic-bezier(0.4, 0, 0.2, 1));
    transition-duration: var(--tw-duration, 150ms);
  }
  .transition-\[border-color\] {
    transition-property: border-color;
    transition-timing-function: var(--tw-ease, cubic-bezier(0.4, 0, 0.2, 1));
    transition-duration: var(--tw-duration, 150ms);
  }
  .transition-\[color\,background-color\,border-color\,box-shadow\,opacity\,transform\] {
    transition-property:
      color,
      background-color,
      border-color,
      box-shadow,
      opacity,
      transform;
    transition-timing-function: var(--tw-ease, cubic-bezier(0.4, 0, 0.2, 1));
    transition-duration: var(--tw-duration, 150ms);
  }
  .transition-\[color\,box-shadow\] {
    transition-property: color, box-shadow;
    transition-timing-function: var(--tw-ease, cubic-bezier(0.4, 0, 0.2, 1));
    transition-duration: var(--tw-duration, 150ms);
  }
  .transition-\[transform\,height\,opacity\,filter\] {
    transition-property:
      transform,
      height,
      opacity,
      filter;
    transition-timing-function: var(--tw-ease, cubic-bezier(0.4, 0, 0.2, 1));
    transition-duration: var(--tw-duration, 150ms);
  }
  .transition-colors {
    transition-property:
      color,
      background-color,
      border-color,
      outline-color,
      text-decoration-color,
      fill,
      stroke,
      --tw-gradient-from,
      --tw-gradient-via,
      --tw-gradient-to;
    transition-timing-function: var(--tw-ease, cubic-bezier(0.4, 0, 0.2, 1));
    transition-duration: var(--tw-duration, 150ms);
  }
  .transition-opacity {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, cubic-bezier(0.4, 0, 0.2, 1));
    transition-duration: var(--tw-duration, 150ms);
  }
  .transition-transform {
    transition-property:
      transform,
      translate,
      scale,
      rotate;
    transition-timing-function: var(--tw-ease, cubic-bezier(0.4, 0, 0.2, 1));
    transition-duration: var(--tw-duration, 150ms);
  }
  .transition-none {
    transition-property: none;
  }
  .duration-\(--duration-fast\) {
    --tw-duration: var(--duration-fast);
    transition-duration: var(--duration-fast);
  }
  .duration-\(--duration-normal\) {
    --tw-duration: var(--duration-normal);
    transition-duration: var(--duration-normal);
  }
  .duration-100 {
    --tw-duration: 100ms;
    transition-duration: 100ms;
  }
  .duration-150 {
    --tw-duration: 150ms;
    transition-duration: 150ms;
  }
  .duration-200 {
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .duration-300 {
    --tw-duration: 300ms;
    transition-duration: 300ms;
  }
  .duration-450 {
    --tw-duration: 450ms;
    transition-duration: 450ms;
  }
  .ease-\(--ease\) {
    --tw-ease: var(--ease);
    transition-timing-function: var(--ease);
  }
  .ease-\[cubic-bezier\(0\.22\,1\,0\.36\,1\)\] {
    --tw-ease: cubic-bezier(0.22,1,0.36,1);
    transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
  }
  .ease-\[cubic-bezier\(0\.32\,0\.72\,0\,1\)\] {
    --tw-ease: cubic-bezier(0.32,0.72,0,1);
    transition-timing-function: cubic-bezier(0.32, 0.72, 0, 1);
  }
  .ease-\[cubic-bezier\(0\.45\,1\.005\,0\,1\.005\)\] {
    --tw-ease: cubic-bezier(0.45,1.005,0,1.005);
    transition-timing-function: cubic-bezier(0.45, 1.005, 0, 1.005);
  }
  .ease-in-out {
    --tw-ease: cubic-bezier(0.4, 0, 0.2, 1);
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  }
  .will-change-transform {
    will-change: transform;
  }
  .outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }
  .select-none {
    -webkit-user-select: none;
    user-select: none;
  }
  .select-text {
    -webkit-user-select: text;
    user-select: text;
  }
  .\[--bleed\:3rem\] {
    --bleed: 3rem;
  }
  .\[--card-spacing\:--spacing\(4\)\] {
    --card-spacing: calc(0.25rem * 4);
  }
  .\[--drawer-content-height\:var\(--drawer-height\,auto\)\] {
    --drawer-content-height: var(--drawer-height,auto);
  }
  .\[--peek\:1rem\] {
    --peek: 1rem;
  }
  .\[--stack-height\:var\(--drawer-frontmost-height\,var\(--drawer-height\,0px\)\)\] {
    --stack-height: var(--drawer-frontmost-height,var(--drawer-height,0px));
  }
  .\[--stack-peek-offset\:max\(0px\,calc\(\(var\(--nested-drawers\)-var\(--stack-progress\)\)\*var\(--peek\)\)\)\] {
    --stack-peek-offset: max(0px, calc((var(--nested-drawers) - var(--stack-progress)) * var(--peek)));
  }
  .\[--stack-progress\:clamp\(0\,var\(--drawer-swipe-progress\)\,1\)\] {
    --stack-progress: clamp(0, var(--drawer-swipe-progress), 1);
  }
  .\[--stack-scale-base\:max\(0\,calc\(1-\(var\(--nested-drawers\)\*var\(--stack-step\)\)\)\)\] {
    --stack-scale-base: max(0, calc(1 - (var(--nested-drawers) * var(--stack-step))));
  }
  .\[--stack-scale\:clamp\(0\,calc\(var\(--stack-scale-base\)\+\(var\(--stack-step\)\*var\(--stack-progress\)\)\)\,1\)\] {
    --stack-scale: clamp(0, calc(var(--stack-scale-base) + (var(--stack-step) * var(--stack-progress))), 1);
  }
  .\[--stack-shrink\:calc\(1-var\(--stack-scale\)\)\] {
    --stack-shrink: calc(1 - var(--stack-scale));
  }
  .\[--stack-step\:0\.05\] {
    --stack-step: 0.05;
  }
  .\[interpolate-size\:allow-keywords\] {
    interpolate-size: allow-keywords;
  }
  .paused {
    animation-play-state: paused;
  }
  .running {
    animation-play-state: running;
  }
  :is(.\*\:w-full > *) {
    width: 100%;
  }
  .group-last\/item\:hidden:is(:where(.group\/item):last-child *) {
    display: none;
  }
  .group-open\:rotate-180:is(:where(.group):is([open], :popover-open, :open) *) {
    rotate: 180deg;
  }
  @media (hover: hover) {
    .group-hover\:translate-x-0\.5:is(:where(.group):hover *) {
      --tw-translate-x: calc(0.25rem * 0.5);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .group-hover\:bg-muted\/60:is(:where(.group):hover *) {
      background-color: var(--grund-muted);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .group-hover\:bg-muted\/60:is(:where(.group):hover *) {
        background-color: color-mix(in oklab, var(--grund-muted) 60%, transparent);
      }
    }
    .group-hover\:bg-warning-soft:is(:where(.group):hover *) {
      background-color: var(--warning-soft);
    }
    .group-hover\:underline:is(:where(.group):hover *) {
      text-decoration-line: underline;
    }
    .group-hover\/boka\:visible:is(:where(.group\/boka):hover *) {
      visibility: visible;
    }
  }
  .group-focus\/dropdown-menu-item\:text-accent-foreground:is(:where(.group\/dropdown-menu-item):focus *) {
    color: var(--accent-foreground);
  }
  .group-focus-visible\/boka\:visible:is(:where(.group\/boka):focus-visible *) {
    visibility: visible;
  }
  .group-has-disabled\/field\:opacity-50:is(:where(.group\/field):has(:disabled) *) {
    opacity: 50%;
  }
  .group-has-data-\[size\=lg\]\/avatar-group\:size-10:is(:where(.group\/avatar-group):has([data-size=lg]) *) {
    width: calc(0.25rem * 10);
    height: calc(0.25rem * 10);
  }
  .group-has-data-\[size\=sm\]\/avatar-group\:size-6:is(:where(.group\/avatar-group):has([data-size=sm]) *) {
    width: calc(0.25rem * 6);
    height: calc(0.25rem * 6);
  }
  .group-has-data-horizontal\/field\:text-balance:is(:where(.group\/field):has(:where([data-orientation=horizontal])) *) {
    text-wrap: balance;
  }
  .group-has-\[\:focus-visible\]\/field-label\:border-transparent:is(:where(.group\/field-label):has(:is(:focus-visible)) *) {
    border-color: transparent;
  }
  .group-has-\[\:focus-visible\]\/field-label\:ring-0:is(:where(.group\/field-label):has(:is(:focus-visible)) *) {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .group-has-\[\:focus-visible\]\/field-label\:not-data-checked\:border-input:is(:where(.group\/field-label):has(:is(:focus-visible)) *):not(:where([data-state=checked]), :where([data-checked]:not([data-checked=false]))) {
    border-color: var(--input);
  }
  .group-has-\[\>input\]\/input-group\:pt-2:is(:where(.group\/input-group):has(> input) *) {
    padding-top: calc(0.25rem * 2);
  }
  .group-has-\[\>input\]\/input-group\:pb-2:is(:where(.group\/input-group):has(> input) *) {
    padding-bottom: calc(0.25rem * 2);
  }
  .group-has-\[\>svg\]\/alert\:col-start-2:is(:where(.group\/alert):has(> svg) *) {
    grid-column-start: 2;
  }
  .group-data-nested-drawer-open\/drawer-popup\:opacity-0:is(:where(.group\/drawer-popup)[data-nested-drawer-open] *) {
    opacity: 0%;
  }
  .group-data-nested-drawer-swiping\/drawer-popup\:opacity-100:is(:where(.group\/drawer-popup)[data-nested-drawer-swiping] *) {
    opacity: 100%;
  }
  .group-data-swiping\/drawer-popup\:select-none:is(:where(.group\/drawer-popup)[data-swiping] *) {
    -webkit-user-select: none;
    user-select: none;
  }
  .group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *) {
    pointer-events: none;
  }
  .group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *) {
    opacity: 50%;
  }
  .group-data-\[disabled\=true\]\/field\:opacity-50:is(:where(.group\/field)[data-disabled=true] *) {
    opacity: 50%;
  }
  .group-data-\[disabled\=true\]\/input-group\:opacity-50:is(:where(.group\/input-group)[data-disabled=true] *) {
    opacity: 50%;
  }
  .group-data-\[panel-open\]\/trigger\:rotate-180:is(:where(.group\/trigger)[data-panel-open] *) {
    rotate: 180deg;
  }
  .group-data-\[size\=default\]\/avatar\:size-2\.5:is(:where(.group\/avatar)[data-size=default] *) {
    width: calc(0.25rem * 2.5);
    height: calc(0.25rem * 2.5);
  }
  .group-data-\[size\=default\]\/switch\:size-4:is(:where(.group\/switch)[data-size=default] *) {
    width: calc(0.25rem * 4);
    height: calc(0.25rem * 4);
  }
  .group-data-\[size\=lg\]\/avatar\:size-3:is(:where(.group\/avatar)[data-size=lg] *) {
    width: calc(0.25rem * 3);
    height: calc(0.25rem * 3);
  }
  .group-data-\[size\=sm\]\/avatar\:size-2:is(:where(.group\/avatar)[data-size=sm] *) {
    width: calc(0.25rem * 2);
    height: calc(0.25rem * 2);
  }
  .group-data-\[size\=sm\]\/avatar\:text-xs:is(:where(.group\/avatar)[data-size=sm] *) {
    font-size: 0.75rem;
    line-height: var(--tw-leading, calc(1 / 0.75));
  }
  .group-data-\[size\=sm\]\/card\:text-sm:is(:where(.group\/card)[data-size=sm] *) {
    font-size: 0.875rem;
    line-height: var(--tw-leading, calc(1.25 / 0.875));
  }
  .group-data-\[size\=sm\]\/switch\:size-3:is(:where(.group\/switch)[data-size=sm] *) {
    width: calc(0.25rem * 3);
    height: calc(0.25rem * 3);
  }
  .group-data-\[spacing\=0\]\/toggle-group\:rounded-none:is(:where(.group\/toggle-group)[data-spacing="0"] *) {
    border-radius: 0;
  }
  .group-data-\[spacing\=0\]\/toggle-group\:px-2:is(:where(.group\/toggle-group)[data-spacing="0"] *) {
    padding-inline: calc(0.25rem * 2);
  }
  .group-data-\[swipe-axis\=x\]\/drawer-popup\:h-full:is(:where(.group\/drawer-popup)[data-swipe-axis=x] *) {
    height: 100%;
  }
  .group-data-\[swipe-axis\=x\]\/drawer-popup\:w-3:is(:where(.group\/drawer-popup)[data-swipe-axis=x] *) {
    width: calc(0.25rem * 3);
  }
  .group-data-\[swipe-axis\=x\]\/drawer-popup\:items-center:is(:where(.group\/drawer-popup)[data-swipe-axis=x] *) {
    align-items: center;
  }
  .group-data-\[swipe-axis\=y\]\/drawer-popup\:h-3:is(:where(.group\/drawer-popup)[data-swipe-axis=y] *) {
    height: calc(0.25rem * 3);
  }
  .group-data-\[swipe-axis\=y\]\/drawer-popup\:w-full:is(:where(.group\/drawer-popup)[data-swipe-axis=y] *) {
    width: 100%;
  }
  .group-data-\[swipe-axis\=y\]\/drawer-popup\:justify-center:is(:where(.group\/drawer-popup)[data-swipe-axis=y] *) {
    justify-content: center;
  }
  .group-data-\[swipe-axis\=y\]\/drawer-popup\:text-center:is(:where(.group\/drawer-popup)[data-swipe-axis=y] *) {
    text-align: center;
  }
  .group-data-\[swipe-axis\=y\]\/drawer-popup\:text-left:is(:where(.group\/drawer-popup)[data-swipe-axis=y] *) {
    text-align: left;
  }
  .group-data-\[swipe-direction\=down\]\/drawer-popup\:items-end:is(:where(.group\/drawer-popup)[data-swipe-direction=down] *) {
    align-items: flex-end;
  }
  .group-data-\[swipe-direction\=left\]\/drawer-popup\:order-last:is(:where(.group\/drawer-popup)[data-swipe-direction=left] *) {
    order: 9999;
  }
  .group-data-\[swipe-direction\=left\]\/drawer-popup\:justify-start:is(:where(.group\/drawer-popup)[data-swipe-direction=left] *) {
    justify-content: flex-start;
  }
  .group-data-\[swipe-direction\=right\]\/drawer-popup\:justify-end:is(:where(.group\/drawer-popup)[data-swipe-direction=right] *) {
    justify-content: flex-end;
  }
  .group-data-\[swipe-direction\=up\]\/drawer-popup\:order-last:is(:where(.group\/drawer-popup)[data-swipe-direction=up] *) {
    order: 9999;
  }
  .group-data-\[swipe-direction\=up\]\/drawer-popup\:items-start:is(:where(.group\/drawer-popup)[data-swipe-direction=up] *) {
    align-items: flex-start;
  }
  .group-data-\[variant\=line\]\/tabs-list\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *) {
    background-color: transparent;
  }
  .group-data-\[variant\=outline\]\/field-group\:-mb-2:is(:where(.group\/field-group)[data-variant=outline] *) {
    margin-bottom: calc(0.25rem * -2);
  }
  .group-data-horizontal\/tabs\:h-10:is(:where(.group\/tabs):where([data-orientation=horizontal]) *) {
    height: calc(0.25rem * 10);
  }
  .group-data-vertical\/tabs\:h-fit:is(:where(.group\/tabs):where([data-orientation=vertical]) *) {
    height: fit-content;
  }
  .group-data-vertical\/tabs\:w-full:is(:where(.group\/tabs):where([data-orientation=vertical]) *) {
    width: 100%;
  }
  .group-data-vertical\/tabs\:flex-col:is(:where(.group\/tabs):where([data-orientation=vertical]) *) {
    flex-direction: column;
  }
  .group-data-vertical\/tabs\:justify-start:is(:where(.group\/tabs):where([data-orientation=vertical]) *) {
    justify-content: flex-start;
  }
  .peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled ~ *) {
    cursor: not-allowed;
  }
  .peer-disabled\:opacity-50:is(:where(.peer):disabled ~ *) {
    opacity: 50%;
  }
  .marker\:text-muted-foreground ::marker {
    color: var(--muted-foreground);
  }
  .marker\:text-muted-foreground::marker {
    color: var(--muted-foreground);
  }
  .marker\:text-muted-foreground ::-webkit-details-marker {
    color: var(--muted-foreground);
  }
  .marker\:text-muted-foreground::-webkit-details-marker {
    color: var(--muted-foreground);
  }
  .file\:inline-flex::file-selector-button {
    display: inline-flex;
  }
  .file\:h-6::file-selector-button {
    height: calc(0.25rem * 6);
  }
  .file\:border-0::file-selector-button {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }
  .file\:bg-transparent::file-selector-button {
    background-color: transparent;
  }
  .file\:text-sm::file-selector-button {
    font-size: 0.875rem;
    line-height: var(--tw-leading, calc(1.25 / 0.875));
  }
  .file\:font-medium::file-selector-button {
    --tw-font-weight: 500;
    font-weight: 500;
  }
  .file\:text-foreground::file-selector-button {
    color: var(--foreground);
  }
  .placeholder\:text-muted-foreground::placeholder {
    color: var(--muted-foreground);
  }
  .after\:pointer-events-none::after {
    content: var(--tw-content);
    pointer-events: none;
  }
  .after\:absolute::after {
    content: var(--tw-content);
    position: absolute;
  }
  .after\:inset-0::after {
    content: var(--tw-content);
    inset: 0px;
  }
  .after\:-inset-x-3::after {
    content: var(--tw-content);
    inset-inline: calc(0.25rem * -3);
  }
  .after\:inset-x-0::after {
    content: var(--tw-content);
    inset-inline: 0px;
  }
  .after\:inset-x-2::after {
    content: var(--tw-content);
    inset-inline: calc(0.25rem * 2);
  }
  .after\:-inset-y-2::after {
    content: var(--tw-content);
    inset-block: calc(0.25rem * -2);
  }
  .after\:bottom-0::after {
    content: var(--tw-content);
    bottom: 0px;
  }
  .after\:bottom-\[-5px\]::after {
    content: var(--tw-content);
    bottom: -5px;
  }
  .after\:block::after {
    content: var(--tw-content);
    display: block;
  }
  .after\:h-0\.5::after {
    content: var(--tw-content);
    height: calc(0.25rem * 0.5);
  }
  .after\:shrink-0::after {
    content: var(--tw-content);
    flex-shrink: 0;
  }
  .after\:rounded-full::after {
    content: var(--tw-content);
    border-radius: calc(infinity * 1px);
  }
  .after\:border::after {
    content: var(--tw-content);
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .after\:border-border::after {
    content: var(--tw-content);
    border-color: var(--line);
  }
  .after\:bg-\(--drawer-bleed-background\,var\(--color-popover\)\)::after {
    content: var(--tw-content);
    background-color: var(--drawer-bleed-background,var(--color-popover));
  }
  .after\:bg-foreground::after {
    content: var(--tw-content);
    background-color: var(--foreground);
  }
  .after\:bg-muted::after {
    content: var(--tw-content);
    background-color: var(--grund-muted);
  }
  .after\:opacity-0::after {
    content: var(--tw-content);
    opacity: 0%;
  }
  .after\:opacity-100::after {
    content: var(--tw-content);
    opacity: 100%;
  }
  .after\:mix-blend-darken::after {
    content: var(--tw-content);
    mix-blend-mode: darken;
  }
  .after\:transition-opacity::after {
    content: var(--tw-content);
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, cubic-bezier(0.4, 0, 0.2, 1));
    transition-duration: var(--tw-duration, 150ms);
  }
  .group-data-\[swipe-axis\=x\]\/drawer-popup\:after\:h-24:is(:where(.group\/drawer-popup)[data-swipe-axis=x] *)::after {
    content: var(--tw-content);
    height: calc(0.25rem * 24);
  }
  .group-data-\[swipe-axis\=x\]\/drawer-popup\:after\:w-1:is(:where(.group\/drawer-popup)[data-swipe-axis=x] *)::after {
    content: var(--tw-content);
    width: 0.25rem;
  }
  .group-data-\[swipe-axis\=y\]\/drawer-popup\:after\:h-1:is(:where(.group\/drawer-popup)[data-swipe-axis=y] *)::after {
    content: var(--tw-content);
    height: 0.25rem;
  }
  .group-data-\[swipe-axis\=y\]\/drawer-popup\:after\:w-24:is(:where(.group\/drawer-popup)[data-swipe-axis=y] *)::after {
    content: var(--tw-content);
    width: calc(0.25rem * 24);
  }
  .group-data-horizontal\/tabs\:after\:inset-x-0:is(:where(.group\/tabs):where([data-orientation=horizontal]) *)::after {
    content: var(--tw-content);
    inset-inline: 0px;
  }
  .group-data-horizontal\/tabs\:after\:bottom-\[-5px\]:is(:where(.group\/tabs):where([data-orientation=horizontal]) *)::after {
    content: var(--tw-content);
    bottom: -5px;
  }
  .group-data-horizontal\/tabs\:after\:h-0\.5:is(:where(.group\/tabs):where([data-orientation=horizontal]) *)::after {
    content: var(--tw-content);
    height: calc(0.25rem * 0.5);
  }
  .group-data-vertical\/tabs\:after\:inset-y-0:is(:where(.group\/tabs):where([data-orientation=vertical]) *)::after {
    content: var(--tw-content);
    inset-block: 0px;
  }
  .group-data-vertical\/tabs\:after\:-right-1:is(:where(.group\/tabs):where([data-orientation=vertical]) *)::after {
    content: var(--tw-content);
    right: calc(0.25rem * -1);
  }
  .group-data-vertical\/tabs\:after\:w-0\.5:is(:where(.group\/tabs):where([data-orientation=vertical]) *)::after {
    content: var(--tw-content);
    width: calc(0.25rem * 0.5);
  }
  .first\:pt-0:first-child {
    padding-top: 0px;
  }
  .last\:mt-0:last-child {
    margin-top: 0px;
  }
  .last\:border-0:last-child {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }
  .last\:pb-0:last-child {
    padding-bottom: 0px;
  }
  .empty\:hidden:empty {
    display: none;
  }
  @media (hover: hover) {
    .hover\:border-input:hover {
      border-color: var(--input);
    }
    .hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover {
      background-color: var(--secondary);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover {
        background-color: color-mix(in oklch, var(--secondary), var(--foreground) 5%);
      }
    }
    .hover\:bg-destructive\/20:hover {
      background-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-destructive\/20:hover {
        background-color: color-mix(in oklab, var(--destructive) 20%, transparent);
      }
    }
    .hover\:bg-muted:hover {
      background-color: var(--grund-muted);
    }
    .hover\:bg-muted\/50:hover {
      background-color: var(--grund-muted);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-muted\/50:hover {
        background-color: color-mix(in oklab, var(--grund-muted) 50%, transparent);
      }
    }
    .hover\:bg-muted\/60:hover {
      background-color: var(--grund-muted);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-muted\/60:hover {
        background-color: color-mix(in oklab, var(--grund-muted) 60%, transparent);
      }
    }
    .hover\:bg-muted\/70:hover {
      background-color: var(--grund-muted);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-muted\/70:hover {
        background-color: color-mix(in oklab, var(--grund-muted) 70%, transparent);
      }
    }
    .hover\:bg-primary-foreground\/10:hover {
      background-color: var(--primary-foreground);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-primary-foreground\/10:hover {
        background-color: color-mix(in oklab, var(--primary-foreground) 10%, transparent);
      }
    }
    .hover\:bg-primary\/80:hover {
      background-color: var(--primary);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-primary\/80:hover {
        background-color: color-mix(in oklab, var(--primary) 80%, transparent);
      }
    }
    .hover\:bg-secondary:hover {
      background-color: var(--secondary);
    }
    .hover\:bg-transparent:hover {
      background-color: transparent;
    }
    .hover\:text-foreground:hover {
      color: var(--foreground);
    }
    .hover\:text-muted-foreground:hover {
      color: var(--muted-foreground);
    }
    .hover\:text-primary:hover {
      color: var(--primary);
    }
    .hover\:no-underline:hover {
      text-decoration-line: none;
    }
    .hover\:underline:hover {
      text-decoration-line: underline;
    }
    .hover\:decoration-current:hover {
      text-decoration-color: currentcolor;
    }
  }
  .focus\:z-10:focus {
    z-index: 10;
  }
  .focus\:bg-accent:focus {
    background-color: var(--grund-accent);
  }
  .focus\:text-accent-foreground:focus {
    color: var(--accent-foreground);
  }
  :is(.focus\:\*\*\:text-accent-foreground:focus *) {
    color: var(--accent-foreground);
  }
  :is(.not-data-\[variant\=destructive\]\:focus\:\*\*\:text-accent-foreground:not([data-variant=destructive]):focus *) {
    color: var(--accent-foreground);
  }
  .focus-visible\:z-10:focus-visible {
    z-index: 10;
  }
  .focus-visible\:translate-y-0:focus-visible {
    --tw-translate-y: 0px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .focus-visible\:border-destructive\/40:focus-visible {
    border-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--destructive) 40%, transparent);
    }
  }
  .focus-visible\:border-ring:focus-visible {
    border-color: var(--ring);
  }
  .focus-visible\:ring-0:focus-visible {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .focus-visible\:ring-3:focus-visible {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .focus-visible\:ring-\[3px\]:focus-visible {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .focus-visible\:ring-destructive\/20:focus-visible {
    --tw-ring-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  .focus-visible\:ring-ring\/50:focus-visible {
    --tw-ring-color: var(--ring);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  .focus-visible\:outline-1:focus-visible {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .focus-visible\:outline-2:focus-visible {
    outline-style: var(--tw-outline-style);
    outline-width: 2px;
  }
  .focus-visible\:-outline-offset-2:focus-visible {
    outline-offset: calc(2px * -1);
  }
  .focus-visible\:-outline-offset-4\!:focus-visible {
    outline-offset: calc(4px * -1) !important;
  }
  .focus-visible\:outline-ring:focus-visible {
    outline-color: var(--ring);
  }
  .focus-visible\:outline-none:focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }
  .active\:cursor-grabbing:active {
    cursor: grabbing;
  }
  .active\:bg-muted:active {
    background-color: var(--grund-muted);
  }
  .active\:bg-primary-foreground\/15:active {
    background-color: var(--primary-foreground);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--primary-foreground) 15%, transparent);
    }
  }
  .active\:not-aria-\[haspopup\]\:translate-y-px:active:not([aria-haspopup]) {
    --tw-translate-y: 1px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .disabled\:pointer-events-none:disabled {
    pointer-events: none;
  }
  .disabled\:cursor-not-allowed:disabled {
    cursor: not-allowed;
  }
  .disabled\:bg-input\/50:disabled {
    background-color: var(--input);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--input) 50%, transparent);
    }
  }
  .disabled\:bg-transparent:disabled {
    background-color: transparent;
  }
  .disabled\:opacity-50:disabled {
    opacity: 50%;
  }
  :where([data-slot=button-group]) .in-data-\[slot\=button-group\]\:rounded-lg {
    border-radius: var(--radius-control);
  }
  :where([data-slot=combobox-content]) .in-data-\[slot\=combobox-content\]\:focus-within\:border-inherit:focus-within {
    border-color: inherit;
  }
  :where([data-slot=combobox-content]) .in-data-\[slot\=combobox-content\]\:focus-within\:ring-0:focus-within {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  :where(:where([data-state=active]), :where([data-active]:not([data-active=false]))) .in-data-active\:text-primary-foreground {
    color: var(--primary-foreground);
  }
  .has-disabled\:bg-input\/50:has(:disabled) {
    background-color: var(--input);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--input) 50%, transparent);
    }
  }
  .has-disabled\:opacity-50:has(:disabled) {
    opacity: 50%;
  }
  .has-aria-expanded\:bg-muted\/50:has([aria-expanded=true]) {
    background-color: var(--grund-muted);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--grund-muted) 50%, transparent);
    }
  }
  .has-data-\[icon\=inline-end\]\:pr-1:has([data-icon=inline-end]) {
    padding-right: 0.25rem;
  }
  .has-data-\[icon\=inline-end\]\:pr-1\.5:has([data-icon=inline-end]) {
    padding-right: calc(0.25rem * 1.5);
  }
  .has-data-\[icon\=inline-end\]\:pr-2:has([data-icon=inline-end]) {
    padding-right: calc(0.25rem * 2);
  }
  .group-data-\[spacing\=0\]\/toggle-group\:has-data-\[icon\=inline-end\]\:pr-1\.5:is(:where(.group\/toggle-group)[data-spacing="0"] *):has([data-icon=inline-end]) {
    padding-right: calc(0.25rem * 1.5);
  }
  .has-data-\[icon\=inline-start\]\:pl-1:has([data-icon=inline-start]) {
    padding-left: 0.25rem;
  }
  .has-data-\[icon\=inline-start\]\:pl-1\.5:has([data-icon=inline-start]) {
    padding-left: calc(0.25rem * 1.5);
  }
  .has-data-\[icon\=inline-start\]\:pl-2:has([data-icon=inline-start]) {
    padding-left: calc(0.25rem * 2);
  }
  .group-data-\[spacing\=0\]\/toggle-group\:has-data-\[icon\=inline-start\]\:pl-1\.5:is(:where(.group\/toggle-group)[data-spacing="0"] *):has([data-icon=inline-start]) {
    padding-left: calc(0.25rem * 1.5);
  }
  .has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]) {
    grid-template-columns: 1fr auto;
  }
  .has-data-\[slot\=card-description\]\:grid-rows-\[auto_auto\]:has([data-slot=card-description]) {
    grid-template-rows: auto auto;
  }
  .has-data-\[slot\=card-footer\]\:pb-0:has([data-slot=card-footer]) {
    padding-bottom: 0px;
  }
  .has-data-\[slot\=kbd\]\:pr-1\.5:has([data-slot=kbd]) {
    padding-right: calc(0.25rem * 1.5);
  }
  .has-data-checked\:border-primary\/30:has(:where([data-state=checked]), :where([data-checked]:not([data-checked=false]))) {
    border-color: var(--primary);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--primary) 30%, transparent);
    }
  }
  .has-data-checked\:bg-primary\/5:has(:where([data-state=checked]), :where([data-checked]:not([data-checked=false]))) {
    background-color: var(--primary);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--primary) 5%, transparent);
    }
  }
  .has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:border-ring:has(:is([data-slot=input-group-control]:focus-visible)) {
    border-color: var(--ring);
  }
  .has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-3:has(:is([data-slot=input-group-control]:focus-visible)) {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-ring\/50:has(:is([data-slot=input-group-control]:focus-visible)) {
    --tw-ring-color: var(--ring);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  .has-\[\[data-slot\]\[aria-invalid\=true\]\]\:border-destructive:has(:is([data-slot][aria-invalid=true])) {
    border-color: var(--destructive);
  }
  .has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-3:has(:is([data-slot][aria-invalid=true])) {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/20:has(:is([data-slot][aria-invalid=true])) {
    --tw-ring-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  .has-\[\>\[data-align\=block-end\]\]\:h-auto:has(> [data-align=block-end]) {
    height: auto;
  }
  .has-\[\>\[data-align\=block-end\]\]\:flex-col:has(> [data-align=block-end]) {
    flex-direction: column;
  }
  .has-\[\>\[data-align\=block-start\]\]\:h-auto:has(> [data-align=block-start]) {
    height: auto;
  }
  .has-\[\>\[data-align\=block-start\]\]\:flex-col:has(> [data-align=block-start]) {
    flex-direction: column;
  }
  .has-\[\>\[data-slot\=checkbox-group\]\]\:gap-3:has(> [data-slot=checkbox-group]) {
    gap: calc(0.25rem * 3);
  }
  .has-\[\>\[data-slot\=field-content\]\]\:items-start:has(> [data-slot=field-content]) {
    align-items: flex-start;
  }
  .has-\[\>\[data-slot\=field\]\]\:w-full:has(> [data-slot=field]) {
    width: 100%;
  }
  .has-\[\>\[data-slot\=field\]\]\:flex-col:has(> [data-slot=field]) {
    flex-direction: column;
  }
  .has-\[\>\[data-slot\=field\]\]\:rounded-lg:has(> [data-slot=field]) {
    border-radius: var(--radius-control);
  }
  .has-\[\>\[data-slot\=field\]\]\:border:has(> [data-slot=field]) {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  @media (hover: hover) {
    .has-\[\>\[data-slot\=field\]\]\:not-has-\[\:disabled\,\[data-disabled\]\]\:hover\:bg-muted\/50:has(> [data-slot=field]):not(:has(:is(:disabled, [data-disabled]))):hover {
      background-color: var(--grund-muted);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .has-\[\>\[data-slot\=field\]\]\:not-has-\[\:disabled\,\[data-disabled\]\]\:hover\:bg-muted\/50:has(> [data-slot=field]):not(:has(:is(:disabled, [data-disabled]))):hover {
        background-color: color-mix(in oklab, var(--grund-muted) 50%, transparent);
      }
    }
  }
  .has-\[\>\[data-slot\=field\]\]\:has-\[\:focus-visible\]\:border-ring:has(> [data-slot=field]):has(:is(:focus-visible)) {
    border-color: var(--ring);
  }
  .has-\[\>\[data-slot\=field\]\]\:has-\[\:focus-visible\]\:ring-3:has(> [data-slot=field]):has(:is(:focus-visible)) {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .has-\[\>\[data-slot\=field\]\]\:has-\[\:focus-visible\]\:ring-ring\/50:has(> [data-slot=field]):has(:is(:focus-visible)) {
    --tw-ring-color: var(--ring);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  .has-\[\>\[data-slot\=radio-group\]\]\:gap-3:has(> [data-slot=radio-group]) {
    gap: calc(0.25rem * 3);
  }
  .has-\[\>button\]\:mr-\[-0\.3rem\]:has(> button) {
    margin-right: -0.3rem;
  }
  .has-\[\>button\]\:ml-\[-0\.3rem\]:has(> button) {
    margin-left: -0.3rem;
  }
  .has-\[\>div\:empty\]\:hidden:has(> div:empty) {
    display: none;
  }
  .has-\[\>img\:first-child\]\:pt-0:has(> img:first-child) {
    padding-top: 0px;
  }
  .has-\[\>kbd\]\:mr-\[-0\.15rem\]:has(> kbd) {
    margin-right: -0.15rem;
  }
  .has-\[\>kbd\]\:ml-\[-0\.15rem\]:has(> kbd) {
    margin-left: -0.15rem;
  }
  .has-\[\>svg\]\:grid-cols-\[auto_minmax\(0\,1fr\)\]:has(> svg) {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .has-\[\>svg\]\:gap-x-3:has(> svg) {
    column-gap: calc(0.25rem * 3);
  }
  .has-\[\>svg\]\:p-0:has(> svg) {
    padding: 0px;
  }
  .has-\[\>textarea\]\:h-auto:has(> textarea) {
    height: auto;
  }
  .aria-disabled\:pointer-events-none[aria-disabled=true] {
    pointer-events: none;
  }
  .aria-disabled\:opacity-50[aria-disabled=true] {
    opacity: 50%;
  }
  .aria-expanded\:bg-muted[aria-expanded=true] {
    background-color: var(--grund-muted);
  }
  .aria-expanded\:bg-secondary[aria-expanded=true] {
    background-color: var(--secondary);
  }
  .aria-expanded\:text-foreground[aria-expanded=true] {
    color: var(--foreground);
  }
  .aria-expanded\:text-secondary-foreground[aria-expanded=true] {
    color: var(--secondary-foreground);
  }
  .aria-invalid\:border-destructive[aria-invalid=true] {
    border-color: var(--destructive);
  }
  .aria-invalid\:ring-0[aria-invalid=true] {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .aria-invalid\:ring-3[aria-invalid=true] {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .aria-invalid\:ring-destructive\/20[aria-invalid=true] {
    --tw-ring-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  .aria-invalid\:aria-checked\:border-primary[aria-invalid=true][aria-checked=true] {
    border-color: var(--primary);
  }
  .aria-pressed\:border-border[aria-pressed=true] {
    border-color: var(--line);
  }
  .aria-pressed\:bg-card[aria-pressed=true] {
    background-color: var(--card);
  }
  .aria-pressed\:bg-muted[aria-pressed=true] {
    background-color: var(--grund-muted);
  }
  .aria-pressed\:text-foreground[aria-pressed=true] {
    color: var(--foreground);
  }
  .aria-pressed\:shadow-sm[aria-pressed=true] {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .aria-\[current\=page\]\:border-primary[aria-current=page] {
    border-color: var(--primary);
  }
  .aria-\[current\=page\]\:bg-background[aria-current=page] {
    background-color: var(--background);
  }
  .aria-\[current\=page\]\:font-semibold[aria-current=page] {
    --tw-font-weight: 600;
    font-weight: 600;
  }
  .aria-\[current\=page\]\:text-foreground[aria-current=page] {
    color: var(--foreground);
  }
  .aria-\[current\=page\]\:shadow-sm[aria-current=page] {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .aria-\[current\=step\]\:border-primary[aria-current=step] {
    border-color: var(--primary);
  }
  .data-dragging\:border-primary[data-dragging] {
    border-color: var(--primary);
  }
  .data-dragging\:bg-secondary[data-dragging] {
    background-color: var(--secondary);
  }
  .data-ending-style\:pointer-events-none[data-ending-style] {
    pointer-events: none;
  }
  .data-ending-style\:transform-\(--closed-transform\)[data-ending-style] {
    transform: var(--closed-transform);
  }
  .data-ending-style\:opacity-0[data-ending-style] {
    opacity: 0%;
  }
  .data-ending-style\:opacity-\[0\.9999\][data-ending-style] {
    opacity: 0.9999;
  }
  .data-ending-style\:duration-\[calc\(var\(--drawer-swipe-strength\)\*400ms\)\][data-ending-style] {
    --tw-duration: calc(var(--drawer-swipe-strength) * 400ms);
    transition-duration: calc(var(--drawer-swipe-strength) * 400ms);
  }
  .data-inset\:pl-7[data-inset] {
    padding-left: calc(0.25rem * 7);
  }
  .data-nested-drawer-open\:overflow-hidden[data-nested-drawer-open] {
    overflow: hidden;
  }
  .data-nested-drawer-open\:brightness-95[data-nested-drawer-open] {
    --tw-brightness: brightness(95%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .data-nested-drawer-swiping\:duration-0[data-nested-drawer-swiping] {
    --tw-duration: 0ms;
    transition-duration: 0ms;
  }
  .data-ending-style\:data-nested-drawer-swiping\:duration-\[calc\(var\(--drawer-swipe-strength\)\*400ms\)\][data-ending-style][data-nested-drawer-swiping] {
    --tw-duration: calc(var(--drawer-swipe-strength) * 400ms);
    transition-duration: calc(var(--drawer-swipe-strength) * 400ms);
  }
  .data-placeholder\:text-muted-foreground[data-placeholder] {
    color: var(--muted-foreground);
  }
  .data-popup-open\:bg-accent[data-popup-open] {
    background-color: var(--grund-accent);
  }
  .data-popup-open\:text-accent-foreground[data-popup-open] {
    color: var(--accent-foreground);
  }
  .data-snap-points\:\[--drawer-overlay-min-opacity\:0\.5\][data-snap-points] {
    --drawer-overlay-min-opacity: 0.5;
  }
  .data-starting-style\:transform-\(--closed-transform\)[data-starting-style] {
    transform: var(--closed-transform);
  }
  .data-starting-style\:opacity-0[data-starting-style] {
    opacity: 0%;
  }
  .data-swiping\:duration-0[data-swiping] {
    --tw-duration: 0ms;
    transition-duration: 0ms;
  }
  .data-ending-style\:data-swiping\:duration-\[calc\(var\(--drawer-swipe-strength\)\*400ms\)\][data-ending-style][data-swiping] {
    --tw-duration: calc(var(--drawer-swipe-strength) * 400ms);
    transition-duration: calc(var(--drawer-swipe-strength) * 400ms);
  }
  .data-\[align-trigger\=true\]\:animate-none[data-align-trigger=true] {
    animation: none;
  }
  .data-\[invalid\=true\]\:text-destructive[data-invalid=true] {
    color: var(--destructive);
  }
  .data-\[modal\=true\]\:pointer-events-auto[data-modal=true] {
    pointer-events: auto;
  }
  .data-\[panel-open\]\:rounded-b-none[data-panel-open] {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
  }
  .data-\[side\=bottom\]\:inset-x-0[data-side=bottom] {
    inset-inline: 0px;
  }
  .data-\[side\=bottom\]\:top-1[data-side=bottom] {
    top: 0.25rem;
  }
  .data-\[side\=bottom\]\:bottom-0[data-side=bottom] {
    bottom: 0px;
  }
  .data-\[side\=bottom\]\:h-auto[data-side=bottom] {
    height: auto;
  }
  .data-\[side\=bottom\]\:border-t[data-side=bottom] {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom] {
    --tw-enter-translate-y: calc(2*var(--spacing)*-1);
  }
  .data-\[side\=bottom\]\:data-ending-style\:translate-y-\[2\.5rem\][data-side=bottom][data-ending-style] {
    --tw-translate-y: 2.5rem;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[side\=bottom\]\:data-starting-style\:translate-y-\[2\.5rem\][data-side=bottom][data-starting-style] {
    --tw-translate-y: 2.5rem;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[side\=inline-end\]\:top-1\/2\![data-side=inline-end] {
    top: calc(1 / 2 * 100%) !important;
  }
  .data-\[side\=inline-end\]\:-left-1[data-side=inline-end] {
    left: calc(0.25rem * -1);
  }
  .data-\[side\=inline-end\]\:-translate-y-1\/2[data-side=inline-end] {
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[side\=inline-end\]\:slide-in-from-left-2[data-side=inline-end] {
    --tw-enter-translate-x: calc(2*var(--spacing)*-1);
  }
  .data-\[side\=inline-start\]\:top-1\/2\![data-side=inline-start] {
    top: calc(1 / 2 * 100%) !important;
  }
  .data-\[side\=inline-start\]\:-right-1[data-side=inline-start] {
    right: calc(0.25rem * -1);
  }
  .data-\[side\=inline-start\]\:-translate-y-1\/2[data-side=inline-start] {
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[side\=inline-start\]\:slide-in-from-right-2[data-side=inline-start] {
    --tw-enter-translate-x: calc(2*var(--spacing));
  }
  .data-\[side\=left\]\:inset-y-0[data-side=left] {
    inset-block: 0px;
  }
  .data-\[side\=left\]\:top-1\/2\![data-side=left] {
    top: calc(1 / 2 * 100%) !important;
  }
  .data-\[side\=left\]\:-right-1[data-side=left] {
    right: calc(0.25rem * -1);
  }
  .data-\[side\=left\]\:left-0[data-side=left] {
    left: 0px;
  }
  .data-\[side\=left\]\:h-full[data-side=left] {
    height: 100%;
  }
  .data-\[side\=left\]\:w-3\/4[data-side=left] {
    width: calc(3 / 4 * 100%);
  }
  .data-\[side\=left\]\:-translate-y-1\/2[data-side=left] {
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[side\=left\]\:border-r[data-side=left] {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
  }
  .data-\[side\=left\]\:slide-in-from-right-2[data-side=left] {
    --tw-enter-translate-x: calc(2*var(--spacing));
  }
  .data-\[side\=left\]\:data-ending-style\:translate-x-\[-2\.5rem\][data-side=left][data-ending-style] {
    --tw-translate-x: -2.5rem;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[side\=left\]\:data-starting-style\:translate-x-\[-2\.5rem\][data-side=left][data-starting-style] {
    --tw-translate-x: -2.5rem;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[side\=right\]\:inset-y-0[data-side=right] {
    inset-block: 0px;
  }
  .data-\[side\=right\]\:top-1\/2\![data-side=right] {
    top: calc(1 / 2 * 100%) !important;
  }
  .data-\[side\=right\]\:right-0[data-side=right] {
    right: 0px;
  }
  .data-\[side\=right\]\:-left-1[data-side=right] {
    left: calc(0.25rem * -1);
  }
  .data-\[side\=right\]\:h-full[data-side=right] {
    height: 100%;
  }
  .data-\[side\=right\]\:w-3\/4[data-side=right] {
    width: calc(3 / 4 * 100%);
  }
  .data-\[side\=right\]\:-translate-y-1\/2[data-side=right] {
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[side\=right\]\:border-l[data-side=right] {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }
  .data-\[side\=right\]\:slide-in-from-left-2[data-side=right] {
    --tw-enter-translate-x: calc(2*var(--spacing)*-1);
  }
  .data-\[side\=right\]\:data-ending-style\:translate-x-\[2\.5rem\][data-side=right][data-ending-style] {
    --tw-translate-x: 2.5rem;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[side\=right\]\:data-starting-style\:translate-x-\[2\.5rem\][data-side=right][data-starting-style] {
    --tw-translate-x: 2.5rem;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[side\=top\]\:inset-x-0[data-side=top] {
    inset-inline: 0px;
  }
  .data-\[side\=top\]\:top-0[data-side=top] {
    top: 0px;
  }
  .data-\[side\=top\]\:-bottom-2\.5[data-side=top] {
    bottom: calc(0.25rem * -2.5);
  }
  .data-\[side\=top\]\:h-auto[data-side=top] {
    height: auto;
  }
  .data-\[side\=top\]\:border-b[data-side=top] {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top] {
    --tw-enter-translate-y: calc(2*var(--spacing));
  }
  .data-\[side\=top\]\:data-ending-style\:translate-y-\[-2\.5rem\][data-side=top][data-ending-style] {
    --tw-translate-y: -2.5rem;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[side\=top\]\:data-starting-style\:translate-y-\[-2\.5rem\][data-side=top][data-starting-style] {
    --tw-translate-y: -2.5rem;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[size\=default\]\:h-12[data-size=default] {
    height: calc(0.25rem * 12);
  }
  .data-\[size\=default\]\:h-\[18\.4px\][data-size=default] {
    height: 18.4px;
  }
  .data-\[size\=default\]\:w-\[32px\][data-size=default] {
    width: 32px;
  }
  .data-\[size\=lg\]\:size-10[data-size=lg] {
    width: calc(0.25rem * 10);
    height: calc(0.25rem * 10);
  }
  .data-\[size\=sm\]\:size-6[data-size=sm] {
    width: calc(0.25rem * 6);
    height: calc(0.25rem * 6);
  }
  .data-\[size\=sm\]\:h-7[data-size=sm] {
    height: calc(0.25rem * 7);
  }
  .data-\[size\=sm\]\:h-\[14px\][data-size=sm] {
    height: 14px;
  }
  .data-\[size\=sm\]\:w-\[24px\][data-size=sm] {
    width: 24px;
  }
  .data-\[size\=sm\]\:rounded-\[min\(var\(--radius-md\)\,10px\)\][data-size=sm] {
    border-radius: min(var(--radius-md), 10px);
  }
  .data-\[size\=sm\]\:\[--card-spacing\:--spacing\(3\)\][data-size=sm] {
    --card-spacing: calc(0.25rem * 3);
  }
  .data-\[size\=sm\]\:has-data-\[slot\=card-footer\]\:pb-0[data-size=sm]:has([data-slot=card-footer]) {
    padding-bottom: 0px;
  }
  :is(.\*\:data-\[slot\=alert-title\]\:text-destructive > *)[data-slot=alert-title] {
    color: var(--destructive);
  }
  :is(.\*\:data-\[slot\=alert-title\]\:text-success > *)[data-slot=alert-title] {
    color: var(--success);
  }
  :is(.\*\:data-\[slot\=alert-title\]\:text-warning > *)[data-slot=alert-title] {
    color: var(--warning);
  }
  :is(.\*\:data-\[slot\=avatar\]\:ring-2 > *)[data-slot=avatar] {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  :is(.\*\:data-\[slot\=avatar\]\:ring-background > *)[data-slot=avatar] {
    --tw-ring-color: var(--background);
  }
  :is(.\*\:data-\[slot\=button\]\:h-11 > *)[data-slot=button] {
    height: calc(0.25rem * 11);
  }
  .data-\[slot\=checkbox-group\]\:gap-3[data-slot=checkbox-group] {
    gap: calc(0.25rem * 3);
  }
  :is(.\*\:data-\[slot\=field\]\:p-2\.5 > *)[data-slot=field] {
    padding: calc(0.25rem * 2.5);
  }
  :is(.\*\:data-\[slot\=field-group\]\:gap-4 > *)[data-slot=field-group] {
    gap: calc(0.25rem * 4);
  }
  :is(.\*\:data-\[slot\=field-label\]\:flex-auto > *)[data-slot=field-label] {
    flex: auto;
  }
  :is(.\*\*\:data-\[slot\=kbd\]\:relative *)[data-slot=kbd] {
    position: relative;
  }
  :is(.\*\*\:data-\[slot\=kbd\]\:isolate *)[data-slot=kbd] {
    isolation: isolate;
  }
  :is(.\*\*\:data-\[slot\=kbd\]\:z-50 *)[data-slot=kbd] {
    z-index: 50;
  }
  :is(.\*\*\:data-\[slot\=kbd\]\:rounded-sm *)[data-slot=kbd] {
    border-radius: calc(var(--radius-control) * 0.5);
  }
  :is(.\*\:data-\[slot\=select-value\]\:line-clamp-1 > *)[data-slot=select-value] {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
  }
  :is(.\*\:data-\[slot\=select-value\]\:flex > *)[data-slot=select-value] {
    display: flex;
  }
  :is(.\*\:data-\[slot\=select-value\]\:items-center > *)[data-slot=select-value] {
    align-items: center;
  }
  :is(.\*\:data-\[slot\=select-value\]\:gap-1\.5 > *)[data-slot=select-value] {
    gap: calc(0.25rem * 1.5);
  }
  .group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:first\:rounded-l-lg:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"]:first-child {
    border-top-left-radius: var(--radius-control);
    border-bottom-left-radius: var(--radius-control);
  }
  .group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:first\:rounded-t-lg:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"]:first-child {
    border-top-left-radius: var(--radius-control);
    border-top-right-radius: var(--radius-control);
  }
  .group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:last\:rounded-r-lg:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"]:last-child {
    border-top-right-radius: var(--radius-control);
    border-bottom-right-radius: var(--radius-control);
  }
  .group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:last\:rounded-b-lg:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"]:last-child {
    border-bottom-right-radius: var(--radius-control);
    border-bottom-left-radius: var(--radius-control);
  }
  .data-\[state\=delayed-open\]\:animate-in[data-state=delayed-open] {
    animation: enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);
  }
  .data-\[state\=delayed-open\]\:fade-in-0[data-state=delayed-open] {
    --tw-enter-opacity: calc(0/100);
    --tw-enter-opacity: 0;
  }
  .data-\[state\=delayed-open\]\:zoom-in-95[data-state=delayed-open] {
    --tw-enter-scale: calc(95*1%);
    --tw-enter-scale: .95;
  }
  .data-\[state\=on\]\:bg-muted[data-state=on] {
    background-color: var(--grund-muted);
  }
  .data-\[state\=selected\]\:bg-muted[data-state=selected] {
    background-color: var(--grund-muted);
  }
  .data-\[swipe-axis\=x\]\:inset-y-0[data-swipe-axis=x] {
    inset-block: 0px;
  }
  .data-\[swipe-axis\=x\]\:flex-row[data-swipe-axis=x] {
    flex-direction: row;
  }
  .data-\[swipe-axis\=x\]\:\[--drawer-content-width\:75\%\][data-swipe-axis=x] {
    --drawer-content-width: 75%;
  }
  .data-\[swipe-axis\=x\]\:after\:inset-y-0[data-swipe-axis=x]::after {
    content: var(--tw-content);
    inset-block: 0px;
  }
  .data-\[swipe-axis\=x\]\:after\:w-\(--bleed\)[data-swipe-axis=x]::after {
    content: var(--tw-content);
    width: var(--bleed);
  }
  .data-\[swipe-axis\=y\]\:inset-x-0[data-swipe-axis=y] {
    inset-inline: 0px;
  }
  .data-\[swipe-axis\=y\]\:\[--drawer-content-max-height\:calc\(100dvh-6rem\)\][data-swipe-axis=y] {
    --drawer-content-max-height: calc(100dvh - 6rem);
  }
  .data-\[swipe-axis\=y\]\:after\:inset-x-0[data-swipe-axis=y]::after {
    content: var(--tw-content);
    inset-inline: 0px;
  }
  .data-\[swipe-axis\=y\]\:after\:h-\(--bleed\)[data-swipe-axis=y]::after {
    content: var(--tw-content);
    height: var(--bleed);
  }
  .data-\[swipe-axis\=y\]\:data-nested-drawer-open\:h-\(--stack-height\)[data-swipe-axis=y][data-nested-drawer-open] {
    height: var(--stack-height);
  }
  .data-\[swipe-axis\=y\]\:data-snap-points\:\[--drawer-content-height\:100dvh\][data-swipe-axis=y][data-snap-points] {
    --drawer-content-height: 100dvh;
  }
  .data-\[swipe-direction\=down\]\:bottom-0[data-swipe-direction=down] {
    bottom: 0px;
  }
  .data-\[swipe-direction\=down\]\:origin-bottom[data-swipe-direction=down] {
    transform-origin: bottom;
  }
  .data-\[swipe-direction\=down\]\:rounded-t-xl[data-swipe-direction=down] {
    border-top-left-radius: var(--radius-panel);
    border-top-right-radius: var(--radius-panel);
  }
  .data-\[swipe-direction\=down\]\:border-t[data-swipe-direction=down] {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .data-\[swipe-direction\=down\]\:\[--closed-transform\:translate3d\(0\,calc\(100\%\+var\(--drawer-inset\,0px\)\+2px\)\,0\)\][data-swipe-direction=down] {
    --closed-transform: translate3d(0,calc(100% + var(--drawer-inset,0px) + 2px),0);
  }
  .data-\[swipe-direction\=down\]\:\[--translate-y\:calc\(var\(--drawer-snap-point-offset\,0px\)\+var\(--drawer-swipe-movement-y\)-var\(--stack-peek-offset\)-\(var\(--stack-shrink\)\*var\(--stack-height\)\)\)\][data-swipe-direction=down] {
    --translate-y: calc(var(--drawer-snap-point-offset,0px) + var(--drawer-swipe-movement-y) - var(--stack-peek-offset) - (var(--stack-shrink) * var(--stack-height)));
  }
  .data-\[swipe-direction\=down\]\:after\:top-full[data-swipe-direction=down]::after {
    content: var(--tw-content);
    top: 100%;
  }
  .data-\[swipe-direction\=left\]\:left-0[data-swipe-direction=left] {
    left: 0px;
  }
  .data-\[swipe-direction\=left\]\:origin-left[data-swipe-direction=left] {
    transform-origin: 0;
  }
  .data-\[swipe-direction\=left\]\:rounded-r-xl[data-swipe-direction=left] {
    border-top-right-radius: var(--radius-panel);
    border-bottom-right-radius: var(--radius-panel);
  }
  .data-\[swipe-direction\=left\]\:border-r[data-swipe-direction=left] {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
  }
  .data-\[swipe-direction\=left\]\:\[--closed-transform\:translate3d\(calc\(-100\%-var\(--drawer-inset\,0px\)-2px\)\,0\,0\)\][data-swipe-direction=left] {
    --closed-transform: translate3d(calc(-100% - var(--drawer-inset,0px) - 2px),0,0);
  }
  .data-\[swipe-direction\=left\]\:\[--translate-x\:calc\(var\(--drawer-swipe-movement-x\)\+var\(--stack-peek-offset\)\+\(var\(--stack-shrink\)\*100\%\)\)\][data-swipe-direction=left] {
    --translate-x: calc(var(--drawer-swipe-movement-x) + var(--stack-peek-offset) + (var(--stack-shrink) * 100%));
  }
  .data-\[swipe-direction\=left\]\:after\:right-full[data-swipe-direction=left]::after {
    content: var(--tw-content);
    right: 100%;
  }
  .data-\[swipe-direction\=right\]\:right-0[data-swipe-direction=right] {
    right: 0px;
  }
  .data-\[swipe-direction\=right\]\:origin-right[data-swipe-direction=right] {
    transform-origin: 100%;
  }
  .data-\[swipe-direction\=right\]\:rounded-l-xl[data-swipe-direction=right] {
    border-top-left-radius: var(--radius-panel);
    border-bottom-left-radius: var(--radius-panel);
  }
  .data-\[swipe-direction\=right\]\:border-l[data-swipe-direction=right] {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }
  .data-\[swipe-direction\=right\]\:\[--closed-transform\:translate3d\(calc\(100\%\+var\(--drawer-inset\,0px\)\+2px\)\,0\,0\)\][data-swipe-direction=right] {
    --closed-transform: translate3d(calc(100% + var(--drawer-inset,0px) + 2px),0,0);
  }
  .data-\[swipe-direction\=right\]\:\[--translate-x\:calc\(var\(--drawer-swipe-movement-x\)-var\(--stack-peek-offset\)-\(var\(--stack-shrink\)\*100\%\)\)\][data-swipe-direction=right] {
    --translate-x: calc(var(--drawer-swipe-movement-x) - var(--stack-peek-offset) - (var(--stack-shrink) * 100%));
  }
  .data-\[swipe-direction\=right\]\:after\:left-full[data-swipe-direction=right]::after {
    content: var(--tw-content);
    left: 100%;
  }
  .data-\[swipe-direction\=up\]\:top-0[data-swipe-direction=up] {
    top: 0px;
  }
  .data-\[swipe-direction\=up\]\:origin-top[data-swipe-direction=up] {
    transform-origin: top;
  }
  .data-\[swipe-direction\=up\]\:rounded-b-xl[data-swipe-direction=up] {
    border-bottom-right-radius: var(--radius-panel);
    border-bottom-left-radius: var(--radius-panel);
  }
  .data-\[swipe-direction\=up\]\:border-b[data-swipe-direction=up] {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .data-\[swipe-direction\=up\]\:\[--closed-transform\:translate3d\(0\,calc\(-100\%-var\(--drawer-inset\,0px\)-2px\)\,0\)\][data-swipe-direction=up] {
    --closed-transform: translate3d(0,calc(-100% - var(--drawer-inset,0px) - 2px),0);
  }
  .data-\[swipe-direction\=up\]\:\[--translate-y\:calc\(var\(--drawer-snap-point-offset\,0px\)\+var\(--drawer-swipe-movement-y\)\+var\(--stack-peek-offset\)\+\(var\(--stack-shrink\)\*var\(--stack-height\)\)\)\][data-swipe-direction=up] {
    --translate-y: calc(var(--drawer-snap-point-offset,0px) + var(--drawer-swipe-movement-y) + var(--stack-peek-offset) + (var(--stack-shrink) * var(--stack-height)));
  }
  .data-\[swipe-direction\=up\]\:after\:bottom-full[data-swipe-direction=up]::after {
    content: var(--tw-content);
    bottom: 100%;
  }
  .data-\[variant\=destructive\]\:text-destructive[data-variant=destructive] {
    color: var(--destructive);
  }
  .data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus {
    background-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--destructive) 10%, transparent);
    }
  }
  .data-\[variant\=destructive\]\:focus\:text-destructive[data-variant=destructive]:focus {
    color: var(--destructive);
  }
  .data-\[variant\=label\]\:text-sm[data-variant=label] {
    font-size: 0.875rem;
    line-height: var(--tw-leading, calc(1.25 / 0.875));
  }
  .data-\[variant\=legend\]\:text-base[data-variant=legend] {
    font-size: 1rem;
    line-height: var(--tw-leading, calc(1.5 / 1));
  }
  .data-\[variant\=line\]\:rounded-none[data-variant=line] {
    border-radius: 0;
  }
  .group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:border-l-0:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"][data-variant=outline] {
    border-left-style: var(--tw-border-style);
    border-left-width: 0px;
  }
  .group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:border-t-0:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"][data-variant=outline] {
    border-top-style: var(--tw-border-style);
    border-top-width: 0px;
  }
  .group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:first\:border-l:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"][data-variant=outline]:first-child {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }
  .group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:first\:border-t:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"][data-variant=outline]:first-child {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .nth-last-2\:-mt-1:nth-last-child(2) {
    margin-top: calc(0.25rem * -1);
  }
  @supports (backdrop-filter: var(--tw)) {
    .supports-backdrop-filter\:backdrop-blur-xs {
      --tw-backdrop-blur: blur(4px);
      -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
      backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    }
  }
  @supports (-webkit-touch-callout:none) {
    .supports-\[-webkit-touch-callout\:none\]\:absolute {
      position: absolute;
    }
  }
  @media (width < 64rem) {
    .max-lg\:hidden {
      display: none;
    }
  }
  @media (width < 48rem) {
    .max-md\:order-first {
      order: -9999;
    }
    .max-md\:hidden {
      display: none;
    }
    .max-md\:h-11 {
      height: calc(0.25rem * 11);
    }
    .max-md\:h-12 {
      height: calc(0.25rem * 12);
    }
    .max-md\:h-auto {
      height: auto;
    }
    .max-md\:min-h-11 {
      min-height: calc(0.25rem * 11);
    }
    .max-md\:w-full {
      width: 100%;
    }
    .max-md\:flex-1 {
      flex: 1;
    }
    .max-md\:py-2 {
      padding-block: calc(0.25rem * 2);
    }
    .max-md\:whitespace-normal {
      white-space: normal;
    }
  }
  @media (width >= 40rem) {
    .sm\:col-span-1 {
      grid-column: span 1 / span 1;
    }
    .sm\:ml-0 {
      margin-left: 0px;
    }
    .sm\:block {
      display: block;
    }
    .sm\:flex {
      display: flex;
    }
    .sm\:hidden {
      display: none;
    }
    .sm\:inline {
      display: inline;
    }
    .sm\:inline-flex {
      display: inline-flex;
    }
    .sm\:size-28 {
      width: calc(0.25rem * 28);
      height: calc(0.25rem * 28);
    }
    .sm\:h-10 {
      height: calc(0.25rem * 10);
    }
    .sm\:w-auto {
      width: auto;
    }
    .sm\:max-w-2xl {
      max-width: 42rem;
    }
    .sm\:max-w-\[34rem\] {
      max-width: 34rem;
    }
    .sm\:max-w-md {
      max-width: 28rem;
    }
    .sm\:max-w-sm {
      max-width: 24rem;
    }
    .sm\:max-w-xs {
      max-width: 20rem;
    }
    .sm\:flex-none {
      flex: none;
    }
    .sm\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .sm\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .sm\:grid-cols-\[1fr_1fr_auto\] {
      grid-template-columns: 1fr 1fr auto;
    }
    .sm\:flex-row {
      flex-direction: row;
    }
    .sm\:flex-wrap {
      flex-wrap: wrap;
    }
    .sm\:items-center {
      align-items: center;
    }
    .sm\:items-start {
      align-items: flex-start;
    }
    .sm\:justify-between {
      justify-content: space-between;
    }
    .sm\:justify-center {
      justify-content: center;
    }
    .sm\:justify-end {
      justify-content: flex-end;
    }
    .sm\:gap-1 {
      gap: 0.25rem;
    }
    .sm\:gap-4 {
      gap: calc(0.25rem * 4);
    }
    .sm\:p-8 {
      padding: calc(0.25rem * 8);
    }
    .sm\:py-12 {
      padding-block: calc(0.25rem * 12);
    }
    .sm\:pt-4 {
      padding-top: calc(0.25rem * 4);
    }
    .sm\:text-right {
      text-align: right;
    }
    .data-\[side\=left\]\:sm\:max-w-sm[data-side=left] {
      max-width: 24rem;
    }
    .data-\[side\=right\]\:sm\:max-w-sm[data-side=right] {
      max-width: 24rem;
    }
    .data-\[swipe-axis\=x\]\:sm\:\[--drawer-content-width\:24rem\][data-swipe-axis=x] {
      --drawer-content-width: 24rem;
    }
  }
  @media (width >= 48rem) {
    .md\:top-16 {
      top: calc(0.25rem * 16);
    }
    .md\:bottom-4 {
      bottom: calc(0.25rem * 4);
    }
    .md\:col-span-2 {
      grid-column: span 2 / span 2;
    }
    .md\:-mx-8 {
      margin-inline: calc(0.25rem * -8);
    }
    .md\:mx-0 {
      margin-inline: 0px;
    }
    .md\:mt-0 {
      margin-top: 0px;
    }
    .md\:mt-6 {
      margin-top: calc(0.25rem * 6);
    }
    .md\:mb-0 {
      margin-bottom: 0px;
    }
    .md\:mb-4 {
      margin-bottom: calc(0.25rem * 4);
    }
    .md\:mb-6 {
      margin-bottom: calc(0.25rem * 6);
    }
    .md\:mb-8 {
      margin-bottom: calc(0.25rem * 8);
    }
    .md\:block {
      display: block;
    }
    .md\:flex {
      display: flex;
    }
    .md\:hidden {
      display: none;
    }
    .md\:inline {
      display: inline;
    }
    .md\:inline-flex {
      display: inline-flex;
    }
    .md\:table {
      display: table;
    }
    .md\:size-8 {
      width: calc(0.25rem * 8);
      height: calc(0.25rem * 8);
    }
    .md\:h-8 {
      height: calc(0.25rem * 8);
    }
    .md\:h-9 {
      height: calc(0.25rem * 9);
    }
    .md\:h-10 {
      height: calc(0.25rem * 10);
    }
    .md\:min-h-0 {
      min-height: 0px;
    }
    .md\:min-h-8 {
      min-height: calc(0.25rem * 8);
    }
    .md\:min-h-9 {
      min-height: calc(0.25rem * 9);
    }
    .md\:w-1\/4 {
      width: calc(1 / 4 * 100%);
    }
    .md\:w-2\/5 {
      width: calc(2 / 5 * 100%);
    }
    .md\:w-auto {
      width: auto;
    }
    .md\:max-w-sm {
      max-width: 24rem;
    }
    .md\:flex-1 {
      flex: 1;
    }
    .md\:flex-none {
      flex: none;
    }
    .md\:shrink-0 {
      flex-shrink: 0;
    }
    .md\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .md\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .md\:grid-cols-\[minmax\(0\,1fr\)_13rem\] {
      grid-template-columns: minmax(0, 1fr) 13rem;
    }
    .md\:flex-row {
      flex-direction: row;
    }
    .md\:flex-nowrap {
      flex-wrap: nowrap;
    }
    .md\:items-center {
      align-items: center;
    }
    .md\:items-end {
      align-items: flex-end;
    }
    .md\:items-start {
      align-items: flex-start;
    }
    .md\:justify-between {
      justify-content: space-between;
    }
    .md\:gap-0\.5 {
      gap: calc(0.25rem * 0.5);
    }
    .md\:gap-1 {
      gap: 0.25rem;
    }
    .md\:gap-1\.5 {
      gap: calc(0.25rem * 1.5);
    }
    .md\:gap-2 {
      gap: calc(0.25rem * 2);
    }
    .md\:gap-4 {
      gap: calc(0.25rem * 4);
    }
    .md\:gap-5 {
      gap: calc(0.25rem * 5);
    }
    .md\:gap-6 {
      gap: calc(0.25rem * 6);
    }
    .md\:gap-10 {
      gap: calc(0.25rem * 10);
    }
    .md\:p-4 {
      padding: calc(0.25rem * 4);
    }
    .md\:p-5 {
      padding: calc(0.25rem * 5);
    }
    .md\:p-6 {
      padding: calc(0.25rem * 6);
    }
    .md\:p-10 {
      padding: calc(0.25rem * 10);
    }
    .md\:px-0 {
      padding-inline: 0px;
    }
    .md\:px-0\.5 {
      padding-inline: calc(0.25rem * 0.5);
    }
    .md\:px-3 {
      padding-inline: calc(0.25rem * 3);
    }
    .md\:px-4 {
      padding-inline: calc(0.25rem * 4);
    }
    .md\:px-5 {
      padding-inline: calc(0.25rem * 5);
    }
    .md\:px-6 {
      padding-inline: calc(0.25rem * 6);
    }
    .md\:px-8 {
      padding-inline: calc(0.25rem * 8);
    }
    .md\:pt-10 {
      padding-top: calc(0.25rem * 10);
    }
    .md\:pb-5 {
      padding-bottom: calc(0.25rem * 5);
    }
    .md\:text-left {
      text-align: left;
    }
    .md\:text-right {
      text-align: right;
    }
    .md\:text-lg {
      font-size: 1.125rem;
      line-height: var(--tw-leading, calc(1.75 / 1.125));
    }
    .md\:text-sm {
      font-size: 0.875rem;
      line-height: var(--tw-leading, calc(1.25 / 0.875));
    }
    .md\:text-ui {
      font-size: 0.8125rem;
      line-height: var(--tw-leading, 1.25rem);
    }
    .md\:\[--card-spacing\:--spacing\(5\)\] {
      --card-spacing: calc(0.25rem * 5);
    }
    .md\:data-\[size\=default\]\:h-10[data-size=default] {
      height: calc(0.25rem * 10);
    }
    :is(.md\:\*\:data-\[slot\=button\]\:h-8 > *)[data-slot=button] {
      height: calc(0.25rem * 8);
    }
  }
  @media (width >= 64rem) {
    .lg\:static {
      position: static;
    }
    .lg\:col-start-1 {
      grid-column-start: 1;
    }
    .lg\:col-start-2 {
      grid-column-start: 2;
    }
    .lg\:row-start-1 {
      grid-row-start: 1;
    }
    .lg\:mx-0 {
      margin-inline: 0px;
    }
    .lg\:block {
      display: block;
    }
    .lg\:flex {
      display: flex;
    }
    .lg\:grid {
      display: grid;
    }
    .lg\:hidden {
      display: none;
    }
    .lg\:inline {
      display: inline;
    }
    .lg\:h-\[calc\(100dvh-16rem\)\] {
      height: calc(100dvh - 16rem);
    }
    .lg\:max-h-\[min\(40rem\,calc\(100dvh-12rem\)\)\] {
      max-height: min(40rem, calc(100dvh - 12rem));
    }
    .lg\:min-h-0 {
      min-height: 0px;
    }
    .lg\:min-h-\[32rem\] {
      min-height: 32rem;
    }
    .lg\:flex-1 {
      flex: 1;
    }
    .lg\:grid-cols-1 {
      grid-template-columns: repeat(1, minmax(0, 1fr));
    }
    .lg\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .lg\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .lg\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    .lg\:grid-cols-\[21rem_minmax\(0\,1fr\)\] {
      grid-template-columns: 21rem minmax(0, 1fr);
    }
    .lg\:grid-cols-\[minmax\(0\,1fr\)_18rem\] {
      grid-template-columns: minmax(0, 1fr) 18rem;
    }
    .lg\:grid-cols-\[minmax\(0\,1fr\)_20rem\] {
      grid-template-columns: minmax(0, 1fr) 20rem;
    }
    .lg\:grid-cols-\[minmax\(0\,1fr\)_22rem\] {
      grid-template-columns: minmax(0, 1fr) 22rem;
    }
    .lg\:grid-cols-\[minmax\(0\,3fr\)_minmax\(0\,2fr\)\] {
      grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
    }
    .lg\:grid-cols-\[minmax\(240px\,0\.65fr\)_minmax\(0\,1\.35fr\)\] {
      grid-template-columns: minmax(240px, 0.65fr) minmax(0, 1.35fr);
    }
    .lg\:items-start {
      align-items: flex-start;
    }
    .lg\:gap-3 {
      gap: calc(0.25rem * 3);
    }
    .lg\:gap-5 {
      gap: calc(0.25rem * 5);
    }
    .lg\:gap-6 {
      gap: calc(0.25rem * 6);
    }
    .lg\:overflow-hidden {
      overflow: hidden;
    }
    .lg\:overflow-y-auto {
      overflow-y: auto;
    }
    .lg\:rounded-none {
      border-radius: 0;
    }
    .lg\:rounded-xl {
      border-radius: var(--radius-panel);
    }
    .lg\:border {
      border-style: var(--tw-border-style);
      border-width: 1px;
    }
    .lg\:border-0 {
      border-style: var(--tw-border-style);
      border-width: 0px;
    }
    .lg\:border-l {
      border-left-style: var(--tw-border-style);
      border-left-width: 1px;
    }
    .lg\:border-border {
      border-color: var(--line);
    }
    .lg\:bg-background {
      background-color: var(--background);
    }
    .lg\:bg-card {
      background-color: var(--card);
    }
    .lg\:px-5 {
      padding-inline: calc(0.25rem * 5);
    }
    .lg\:py-3 {
      padding-block: calc(0.25rem * 3);
    }
    .lg\:pb-4 {
      padding-bottom: calc(0.25rem * 4);
    }
    .lg\:backdrop-blur-none {
      --tw-backdrop-blur: ;
      -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
      backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    }
  }
  @media (width >= 80rem) {
    .xl\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .xl\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    .xl\:grid-cols-\[minmax\(0\,1fr\)_22rem\] {
      grid-template-columns: minmax(0, 1fr) 22rem;
    }
  }
  @container (width >= 28rem) {
    .\@md\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  @container field-group (width >= 28rem) {
    .\@md\/field-group\:flex-row {
      flex-direction: row;
    }
    .\@md\/field-group\:items-center {
      align-items: center;
    }
    :is(.\@md\/field-group\:\*\:w-auto > *) {
      width: auto;
    }
    .\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:items-start:has(> [data-slot=field-content]) {
      align-items: flex-start;
    }
    :is(.\@md\/field-group\:\*\:data-\[slot\=field-label\]\:flex-auto > *)[data-slot=field-label] {
      flex: auto;
    }
  }
  @container schema (width >= 56rem) {
    .\@4xl\/schema\:block {
      display: block;
    }
    .\@4xl\/schema\:hidden {
      display: none;
    }
  }
  .dark\:border-input:is(.dark *) {
    border-color: var(--input);
  }
  .dark\:border-primary:is(.dark *) {
    border-color: var(--primary);
  }
  .dark\:bg-card:is(.dark *) {
    background-color: var(--card);
  }
  .dark\:bg-destructive\/20:is(.dark *) {
    background-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  .dark\:bg-input\/30:is(.dark *) {
    background-color: var(--input);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--input) 30%, transparent);
    }
  }
  .dark\:bg-transparent:is(.dark *) {
    background-color: transparent;
  }
  .dark\:text-foreground:is(.dark *) {
    color: var(--foreground);
  }
  .dark\:text-muted-foreground:is(.dark *) {
    color: var(--muted-foreground);
  }
  .dark\:after\:mix-blend-lighten:is(.dark *)::after {
    content: var(--tw-content);
    mix-blend-mode: lighten;
  }
  @media (hover: hover) {
    .dark\:hover\:bg-destructive\/30:is(.dark *):hover {
      background-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:hover\:bg-destructive\/30:is(.dark *):hover {
        background-color: color-mix(in oklab, var(--destructive) 30%, transparent);
      }
    }
    .dark\:hover\:bg-input\/50:is(.dark *):hover {
      background-color: var(--input);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:hover\:bg-input\/50:is(.dark *):hover {
        background-color: color-mix(in oklab, var(--input) 50%, transparent);
      }
    }
    .dark\:hover\:bg-muted\/50:is(.dark *):hover {
      background-color: var(--grund-muted);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:hover\:bg-muted\/50:is(.dark *):hover {
        background-color: color-mix(in oklab, var(--grund-muted) 50%, transparent);
      }
    }
    .dark\:hover\:text-foreground:is(.dark *):hover {
      color: var(--foreground);
    }
  }
  .dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible {
    --tw-ring-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 40%, transparent);
    }
  }
  .dark\:disabled\:bg-input\/80:is(.dark *):disabled {
    background-color: var(--input);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--input) 80%, transparent);
    }
  }
  .dark\:disabled\:bg-transparent:is(.dark *):disabled {
    background-color: transparent;
  }
  .dark\:has-disabled\:bg-input\/80:is(.dark *):has(:disabled) {
    background-color: var(--input);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--input) 80%, transparent);
    }
  }
  .dark\:has-data-checked\:border-primary\/20:is(.dark *):has(:where([data-state=checked]), :where([data-checked]:not([data-checked=false]))) {
    border-color: var(--primary);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--primary) 20%, transparent);
    }
  }
  .dark\:has-data-checked\:bg-primary\/10:is(.dark *):has(:where([data-state=checked]), :where([data-checked]:not([data-checked=false]))) {
    background-color: var(--primary);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--primary) 10%, transparent);
    }
  }
  .dark\:has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/40:is(.dark *):has(:is([data-slot][aria-invalid=true])) {
    --tw-ring-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 40%, transparent);
    }
  }
  .dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid=true] {
    border-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--destructive) 50%, transparent);
    }
  }
  .dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true] {
    --tw-ring-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 40%, transparent);
    }
  }
  .dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus {
    background-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  @media print {
    .print\:hidden {
      display: none;
    }
    .print\:min-h-0 {
      min-height: 0px;
    }
    .print\:max-w-none {
      max-width: none;
    }
    .print\:rounded-none {
      border-radius: 0;
    }
    .print\:border-0 {
      border-style: var(--tw-border-style);
      border-width: 0px;
    }
    .print\:bg-transparent {
      background-color: transparent;
    }
    .print\:p-0 {
      padding: 0px;
    }
    .print\:shadow-none {
      --tw-shadow: 0 0 #0000;
      box-shadow:
        var(--tw-inset-shadow),
        var(--tw-inset-ring-shadow),
        var(--tw-ring-offset-shadow),
        var(--tw-ring-shadow),
        var(--tw-shadow);
    }
  }
  .data-open\:animate-in:where([data-state=open]),
  .data-open\:animate-in:where([data-open]:not([data-open=false])) {
    animation: enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);
  }
  .data-open\:bg-accent:where([data-state=open]),
  .data-open\:bg-accent:where([data-open]:not([data-open=false])) {
    background-color: var(--grund-accent);
  }
  .data-open\:text-accent-foreground:where([data-state=open]),
  .data-open\:text-accent-foreground:where([data-open]:not([data-open=false])) {
    color: var(--accent-foreground);
  }
  .data-open\:fade-in-0:where([data-state=open]),
  .data-open\:fade-in-0:where([data-open]:not([data-open=false])) {
    --tw-enter-opacity: calc(0/100);
    --tw-enter-opacity: 0;
  }
  .data-open\:zoom-in-95:where([data-state=open]),
  .data-open\:zoom-in-95:where([data-open]:not([data-open=false])) {
    --tw-enter-scale: calc(95*1%);
    --tw-enter-scale: .95;
  }
  .data-closed\:animate-out:where([data-state=closed]),
  .data-closed\:animate-out:where([data-closed]:not([data-closed=false])) {
    animation: exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);
  }
  .data-closed\:overflow-hidden:where([data-state=closed]),
  .data-closed\:overflow-hidden:where([data-closed]:not([data-closed=false])) {
    overflow: hidden;
  }
  .data-closed\:fade-out-0:where([data-state=closed]),
  .data-closed\:fade-out-0:where([data-closed]:not([data-closed=false])) {
    --tw-exit-opacity: calc(0/100);
    --tw-exit-opacity: 0;
  }
  .data-closed\:zoom-out-95:where([data-state=closed]),
  .data-closed\:zoom-out-95:where([data-closed]:not([data-closed=false])) {
    --tw-exit-scale: calc(95*1%);
    --tw-exit-scale: .95;
  }
  .data-checked\:border-primary:where([data-state=checked]),
  .data-checked\:border-primary:where([data-checked]:not([data-checked=false])) {
    border-color: var(--primary);
  }
  .data-checked\:bg-primary:where([data-state=checked]),
  .data-checked\:bg-primary:where([data-checked]:not([data-checked=false])) {
    background-color: var(--primary);
  }
  .data-checked\:text-primary-foreground:where([data-state=checked]),
  .data-checked\:text-primary-foreground:where([data-checked]:not([data-checked=false])) {
    color: var(--primary-foreground);
  }
  .group-has-\[\:focus-visible\]\/field-label\:data-checked\:border-primary:is(:where(.group\/field-label):has(:is(:focus-visible)) *):where([data-state=checked]),
  .group-has-\[\:focus-visible\]\/field-label\:data-checked\:border-primary:is(:where(.group\/field-label):has(:is(:focus-visible)) *):where([data-checked]:not([data-checked=false])) {
    border-color: var(--primary);
  }
  .group-data-\[size\=default\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=default] *):where([data-state=checked]),
  .group-data-\[size\=default\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=default] *):where([data-checked]:not([data-checked=false])) {
    --tw-translate-x: calc(100% - 2px);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .group-data-\[size\=sm\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=sm] *):where([data-state=checked]),
  .group-data-\[size\=sm\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=sm] *):where([data-checked]:not([data-checked=false])) {
    --tw-translate-x: calc(100% - 2px);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .dark\:data-checked\:bg-primary:is(.dark *):where([data-state=checked]),
  .dark\:data-checked\:bg-primary:is(.dark *):where([data-checked]:not([data-checked=false])) {
    background-color: var(--primary);
  }
  .dark\:data-checked\:bg-primary-foreground:is(.dark *):where([data-state=checked]),
  .dark\:data-checked\:bg-primary-foreground:is(.dark *):where([data-checked]:not([data-checked=false])) {
    background-color: var(--primary-foreground);
  }
  .data-unchecked\:bg-input:where([data-state=unchecked]),
  .data-unchecked\:bg-input:where([data-unchecked]:not([data-unchecked=false])) {
    background-color: var(--input);
  }
  .group-data-\[size\=default\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=default] *):where([data-state=unchecked]),
  .group-data-\[size\=default\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=default] *):where([data-unchecked]:not([data-unchecked=false])) {
    --tw-translate-x: 0px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .group-data-\[size\=sm\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=sm] *):where([data-state=unchecked]),
  .group-data-\[size\=sm\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=sm] *):where([data-unchecked]:not([data-unchecked=false])) {
    --tw-translate-x: 0px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .dark\:data-unchecked\:bg-foreground:is(.dark *):where([data-state=unchecked]),
  .dark\:data-unchecked\:bg-foreground:is(.dark *):where([data-unchecked]:not([data-unchecked=false])) {
    background-color: var(--foreground);
  }
  .dark\:data-unchecked\:bg-input\/80:is(.dark *):where([data-state=unchecked]),
  .dark\:data-unchecked\:bg-input\/80:is(.dark *):where([data-unchecked]:not([data-unchecked=false])) {
    background-color: var(--input);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--input) 80%, transparent);
    }
  }
  .data-active\:border-primary:where([data-state=active]),
  .data-active\:border-primary:where([data-active]:not([data-active=false])) {
    border-color: var(--primary);
  }
  .data-active\:bg-background:where([data-state=active]),
  .data-active\:bg-background:where([data-active]:not([data-active=false])) {
    background-color: var(--background);
  }
  .data-active\:bg-primary:where([data-state=active]),
  .data-active\:bg-primary:where([data-active]:not([data-active=false])) {
    background-color: var(--primary);
  }
  .data-active\:text-foreground:where([data-state=active]),
  .data-active\:text-foreground:where([data-active]:not([data-active=false])) {
    color: var(--foreground);
  }
  .data-active\:text-primary-foreground:where([data-state=active]),
  .data-active\:text-primary-foreground:where([data-active]:not([data-active=false])) {
    color: var(--primary-foreground);
  }
  .group-data-\[variant\=default\]\/tabs-list\:data-active\:shadow-sm:is(:where(.group\/tabs-list)[data-variant=default] *):where([data-state=active]),
  .group-data-\[variant\=default\]\/tabs-list\:data-active\:shadow-sm:is(:where(.group\/tabs-list)[data-variant=default] *):where([data-active]:not([data-active=false])) {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  .group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),
  .group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])) {
    background-color: transparent;
  }
  .group-data-\[variant\=line\]\/tabs-list\:data-active\:shadow-none:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),
  .group-data-\[variant\=line\]\/tabs-list\:data-active\:shadow-none:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])) {
    --tw-shadow: 0 0 #0000;
    box-shadow:
      var(--tw-inset-shadow),
      var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow),
      var(--tw-shadow);
  }
  :is(.group-data-\[variant\=line\]\/tabs-list\:data-active\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]), .group-data-\[variant\=line\]\/tabs-list\:data-active\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])))::after {
    content: var(--tw-content);
    opacity: 100%;
  }
  @media (hover: hover) {
    :is(.data-active\:hover\:text-primary-foreground:where([data-state=active]), .data-active\:hover\:text-primary-foreground:where([data-active]:not([data-active=false]))):hover {
      color: var(--primary-foreground);
    }
  }
  .dark\:data-active\:border-input:is(.dark *):where([data-state=active]),
  .dark\:data-active\:border-input:is(.dark *):where([data-active]:not([data-active=false])) {
    border-color: var(--input);
  }
  .dark\:data-active\:border-primary:is(.dark *):where([data-state=active]),
  .dark\:data-active\:border-primary:is(.dark *):where([data-active]:not([data-active=false])) {
    border-color: var(--primary);
  }
  .dark\:data-active\:bg-input\/30:is(.dark *):where([data-state=active]),
  .dark\:data-active\:bg-input\/30:is(.dark *):where([data-active]:not([data-active=false])) {
    background-color: var(--input);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--input) 30%, transparent);
    }
  }
  .dark\:data-active\:bg-primary:is(.dark *):where([data-state=active]),
  .dark\:data-active\:bg-primary:is(.dark *):where([data-active]:not([data-active=false])) {
    background-color: var(--primary);
  }
  .dark\:data-active\:text-foreground:is(.dark *):where([data-state=active]),
  .dark\:data-active\:text-foreground:is(.dark *):where([data-active]:not([data-active=false])) {
    color: var(--foreground);
  }
  .dark\:data-active\:text-primary-foreground:is(.dark *):where([data-state=active]),
  .dark\:data-active\:text-primary-foreground:is(.dark *):where([data-active]:not([data-active=false])) {
    color: var(--primary-foreground);
  }
  .dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:border-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),
  .dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:border-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])) {
    border-color: transparent;
  }
  .dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),
  .dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])) {
    background-color: transparent;
  }
  @media (hover: hover) {
    :is(.dark\:data-active\:hover\:text-primary-foreground:is(.dark *):where([data-state=active]), .dark\:data-active\:hover\:text-primary-foreground:is(.dark *):where([data-active]:not([data-active=false]))):hover {
      color: var(--primary-foreground);
    }
  }
  .data-disabled\:pointer-events-none:where([data-disabled=true]),
  .data-disabled\:pointer-events-none:where([data-disabled]:not([data-disabled=false])) {
    pointer-events: none;
  }
  .data-disabled\:cursor-not-allowed:where([data-disabled=true]),
  .data-disabled\:cursor-not-allowed:where([data-disabled]:not([data-disabled=false])) {
    cursor: not-allowed;
  }
  .data-disabled\:opacity-50:where([data-disabled=true]),
  .data-disabled\:opacity-50:where([data-disabled]:not([data-disabled=false])) {
    opacity: 50%;
  }
  .data-horizontal\:h-px:where([data-orientation=horizontal]) {
    height: 1px;
  }
  .data-horizontal\:w-full:where([data-orientation=horizontal]) {
    width: 100%;
  }
  .data-horizontal\:flex-col:where([data-orientation=horizontal]) {
    flex-direction: column;
  }
  .data-vertical\:w-px:where([data-orientation=vertical]) {
    width: 1px;
  }
  .data-vertical\:flex-col:where([data-orientation=vertical]) {
    flex-direction: column;
  }
  .data-vertical\:items-stretch:where([data-orientation=vertical]) {
    align-items: stretch;
  }
  .data-vertical\:self-stretch:where([data-orientation=vertical]) {
    align-self: stretch;
  }
  .\[\&_\.docedit-company-identity\]\:flex .docedit-company-identity {
    display: flex;
  }
  .\[\&_\.docedit-company-identity\]\:flex-col .docedit-company-identity {
    flex-direction: column;
  }
  .\[\&_\.docedit-company-identity\]\:gap-1 .docedit-company-identity {
    gap: 0.25rem;
  }
  .\[\&_\.docedit-company-identity\]\:text-sm .docedit-company-identity {
    font-size: 0.875rem;
    line-height: var(--tw-leading, calc(1.25 / 0.875));
  }
  .\[\&_\.docedit-customer\]\:flex .docedit-customer {
    display: flex;
  }
  .\[\&_\.docedit-customer\]\:flex-col .docedit-customer {
    flex-direction: column;
  }
  .\[\&_\.docedit-customer\]\:gap-1 .docedit-customer {
    gap: 0.25rem;
  }
  .\[\&_\.docedit-title\]\:text-2xl .docedit-title {
    font-size: 1.5rem;
    line-height: var(--tw-leading, calc(2 / 1.5));
  }
  .\[\&_\.docedit-title\]\:font-semibold .docedit-title {
    --tw-font-weight: 600;
    font-weight: 600;
  }
  .\[\&_\.muted\]\:text-muted-foreground .muted {
    color: var(--muted-foreground);
  }
  .\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text {
    fill: var(--muted-foreground);
  }
  .\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"] {
    stroke: var(--line);
    @supports (color: color-mix(in lab, red, red)) {
      stroke: color-mix(in oklab, var(--line) 50%, transparent);
    }
  }
  .\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor {
    stroke: var(--line);
  }
  .\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke="#fff"] {
    stroke: transparent;
  }
  .\[\&_\.recharts-layer\]\:outline-hidden .recharts-layer {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  .\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke="#ccc"] {
    stroke: var(--line);
  }
  .\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector {
    fill: var(--grund-muted);
  }
  .\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor {
    fill: var(--grund-muted);
  }
  .\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke="#ccc"] {
    stroke: var(--line);
  }
  .\[\&_\.recharts-sector\]\:outline-hidden .recharts-sector {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  .\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke="#fff"] {
    stroke: transparent;
  }
  .\[\&_\.recharts-surface\]\:outline-hidden .recharts-surface {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  .\[\&_\.tabular\]\:\[overflow-wrap\:anywhere\] .tabular {
    overflow-wrap: anywhere;
  }
  .\[\&_a\]\:inline-flex a {
    display: inline-flex;
  }
  .\[\&_a\]\:min-h-11 a {
    min-height: calc(0.25rem * 11);
  }
  .\[\&_a\]\:items-center a {
    align-items: center;
  }
  .\[\&_a\]\:font-semibold a {
    --tw-font-weight: 600;
    font-weight: 600;
  }
  .\[\&_a\]\:text-foreground a {
    color: var(--foreground);
  }
  .\[\&_a\]\:underline a {
    text-decoration-line: underline;
  }
  .\[\&_a\]\:underline-offset-3 a {
    text-underline-offset: 3px;
  }
  .\[\&_a\]\:underline-offset-4 a {
    text-underline-offset: 4px;
  }
  @media (width >= 48rem) {
    .md\:\[\&_a\]\:min-h-8 a {
      min-height: calc(0.25rem * 8);
    }
  }
  .\[\&_a\:hover\]\:no-underline a:hover {
    text-decoration-line: none;
  }
  .\[\&_dd\]\:font-semibold dd {
    --tw-font-weight: 600;
    font-weight: 600;
  }
  .\[\&_dt\]\:text-sm dt {
    font-size: 0.875rem;
    line-height: var(--tw-leading, calc(1.25 / 0.875));
  }
  .\[\&_dt\]\:text-muted-foreground dt {
    color: var(--muted-foreground);
  }
  .\[\&_h1\]\:\[overflow-wrap\:anywhere\] h1 {
    overflow-wrap: anywhere;
  }
  .\[\&_header\]\:flex header {
    display: flex;
  }
  .\[\&_header\]\:flex-wrap header {
    flex-wrap: wrap;
  }
  .\[\&_header\]\:items-start header {
    align-items: flex-start;
  }
  .\[\&_header\]\:justify-between header {
    justify-content: space-between;
  }
  .\[\&_header\]\:gap-5 header {
    gap: calc(0.25rem * 5);
  }
  .\[\&_img\]\:h-10 img {
    height: calc(0.25rem * 10);
  }
  .\[\&_img\]\:max-h-10 img {
    max-height: calc(0.25rem * 10);
  }
  .\[\&_img\]\:w-auto img {
    width: auto;
  }
  .\[\&_img\]\:max-w-40 img {
    max-width: calc(0.25rem * 40);
  }
  .\[\&_img\]\:object-contain img {
    object-fit: contain;
  }
  .\[\&_input\]\:min-h-12 input {
    min-height: calc(0.25rem * 12);
  }
  .\[\&_input\]\:w-full input {
    width: 100%;
  }
  .\[\&_input\]\:rounded-md input {
    border-radius: calc(var(--radius-control) * 0.75);
  }
  .\[\&_input\]\:border input {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .\[\&_input\]\:border-input input {
    border-color: var(--input);
  }
  .\[\&_input\]\:bg-background input {
    background-color: var(--background);
  }
  .\[\&_input\]\:px-3 input {
    padding-inline: calc(0.25rem * 3);
  }
  .\[\&_input\]\:py-2 input {
    padding-block: calc(0.25rem * 2);
  }
  .\[\&_input\]\:text-base input {
    font-size: 1rem;
    line-height: var(--tw-leading, calc(1.5 / 1));
  }
  .\[\&_label\]\:grid label {
    display: grid;
  }
  .\[\&_label\]\:gap-2 label {
    gap: calc(0.25rem * 2);
  }
  .\[\&_label\]\:text-sm label {
    font-size: 0.875rem;
    line-height: var(--tw-leading, calc(1.25 / 0.875));
  }
  .\[\&_label\]\:font-medium label {
    --tw-font-weight: 500;
    font-weight: 500;
  }
  .\[\&_nav\]\:flex nav {
    display: flex;
  }
  .\[\&_nav\]\:flex-wrap nav {
    flex-wrap: wrap;
  }
  .\[\&_nav\]\:gap-3 nav {
    gap: calc(0.25rem * 3);
  }
  .\[\&_nav_a\]\:inline-flex nav a {
    display: inline-flex;
  }
  .\[\&_nav_a\]\:min-h-11 nav a {
    min-height: calc(0.25rem * 11);
  }
  .\[\&_nav_a\]\:items-center nav a {
    align-items: center;
  }
  .\[\&_nav_a\]\:font-semibold nav a {
    --tw-font-weight: 600;
    font-weight: 600;
  }
  .\[\&_nav_a\]\:underline nav a {
    text-decoration-line: underline;
  }
  .\[\&_nav_button\]\:min-h-11 nav button {
    min-height: calc(0.25rem * 11);
  }
  .\[\&_nav_button\]\:font-semibold nav button {
    --tw-font-weight: 600;
    font-weight: 600;
  }
  .\[\&_nav_button\]\:underline nav button {
    text-decoration-line: underline;
  }
  .\[\&_p\]\:text-muted-foreground p {
    color: var(--muted-foreground);
  }
  .\[\&_p\+p\]\:mt-2 p + p {
    margin-top: calc(0.25rem * 2);
  }
  .\[\&_select\]\:min-h-12 select {
    min-height: calc(0.25rem * 12);
  }
  .\[\&_select\]\:rounded-md select {
    border-radius: calc(var(--radius-control) * 0.75);
  }
  .\[\&_select\]\:border select {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .\[\&_select\]\:border-input select {
    border-color: var(--input);
  }
  .\[\&_select\]\:text-base select {
    font-size: 1rem;
    line-height: var(--tw-leading, calc(1.5 / 1));
  }
  .\[\&_strong\]\:font-semibold strong {
    --tw-font-weight: 600;
    font-weight: 600;
  }
  .\[\&_strong\]\:wrap-anywhere strong {
    overflow-wrap: anywhere;
  }
  .\[\&_strong\]\:text-foreground strong {
    color: var(--foreground);
  }
  .\[\&_svg\]\:pointer-events-none svg {
    pointer-events: none;
  }
  .\[\&_svg\]\:size-4 svg {
    width: calc(0.25rem * 4);
    height: calc(0.25rem * 4);
  }
  .\[\&_svg\]\:size-5 svg {
    width: calc(0.25rem * 5);
    height: calc(0.25rem * 5);
  }
  .\[\&_svg\]\:size-6 svg {
    width: calc(0.25rem * 6);
    height: calc(0.25rem * 6);
  }
  .\[\&_svg\]\:size-\[18px\] svg {
    width: 18px;
    height: 18px;
  }
  .\[\&_svg\]\:shrink-0 svg {
    flex-shrink: 0;
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]) {
    width: calc(0.25rem * 3);
    height: calc(0.25rem * 3);
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]) {
    width: calc(0.25rem * 3.5);
    height: calc(0.25rem * 3.5);
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]) {
    width: calc(0.25rem * 4);
    height: calc(0.25rem * 4);
  }
  .\[\&_tbody_tr\]\:border-t tbody tr {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .\[\&_tbody_tr\]\:border-border tbody tr {
    border-color: var(--line);
  }
  .\[\&_td\]\:p-3 td {
    padding: calc(0.25rem * 3);
  }
  .\[\&_textarea\]\:min-h-24 textarea {
    min-height: calc(0.25rem * 24);
  }
  .\[\&_textarea\]\:w-full textarea {
    width: 100%;
  }
  .\[\&_textarea\]\:rounded-md textarea {
    border-radius: calc(var(--radius-control) * 0.75);
  }
  .\[\&_textarea\]\:border textarea {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .\[\&_textarea\]\:border-input textarea {
    border-color: var(--input);
  }
  .\[\&_textarea\]\:bg-background textarea {
    background-color: var(--background);
  }
  .\[\&_textarea\]\:px-3 textarea {
    padding-inline: calc(0.25rem * 3);
  }
  .\[\&_textarea\]\:py-2 textarea {
    padding-block: calc(0.25rem * 2);
  }
  .\[\&_textarea\]\:text-base textarea {
    font-size: 1rem;
    line-height: var(--tw-leading, calc(1.5 / 1));
  }
  .\[\&_th\]\:p-3 th {
    padding: calc(0.25rem * 3);
  }
  .\[\&_tr\]\:border-b tr {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .\[\&_tr\:last-child\]\:border-0 tr:last-child {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }
  .\[\&\:\:-webkit-details-marker\]\:hidden::-webkit-details-marker {
    display: none;
  }
  .\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]) {
    padding-right: 0px;
  }
  .\[\.border-b\]\:pb-\(--card-spacing\):is(.border-b) {
    padding-bottom: var(--card-spacing);
  }
  .\[\.border-b\]\:pb-2:is(.border-b) {
    padding-bottom: calc(0.25rem * 2);
  }
  .\[\.border-t\]\:pt-2:is(.border-t) {
    padding-top: calc(0.25rem * 2);
  }
  :is(.\*\:\[a\]\:underline > *):is(a) {
    text-decoration-line: underline;
  }
  :is(.\*\:\[a\]\:underline-offset-3 > *):is(a) {
    text-underline-offset: 3px;
  }
  @media (hover: hover) {
    .\[a\]\:hover\:bg-destructive\/20:is(a):hover {
      background-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .\[a\]\:hover\:bg-destructive\/20:is(a):hover {
        background-color: color-mix(in oklab, var(--destructive) 20%, transparent);
      }
    }
    .\[a\]\:hover\:bg-muted:is(a):hover {
      background-color: var(--grund-muted);
    }
    .\[a\]\:hover\:bg-primary\/80:is(a):hover {
      background-color: var(--primary);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .\[a\]\:hover\:bg-primary\/80:is(a):hover {
        background-color: color-mix(in oklab, var(--primary) 80%, transparent);
      }
    }
    .\[a\]\:hover\:bg-secondary\/80:is(a):hover {
      background-color: var(--secondary);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .\[a\]\:hover\:bg-secondary\/80:is(a):hover {
        background-color: color-mix(in oklab, var(--secondary) 80%, transparent);
      }
    }
    .\[a\]\:hover\:text-muted-foreground:is(a):hover {
      color: var(--muted-foreground);
    }
    :is(.\*\:\[a\]\:hover\:text-foreground > *):is(a):hover {
      color: var(--foreground);
    }
  }
  :is(.\*\:\[img\:first-child\]\:rounded-t-xl > *):is(img:first-child) {
    border-top-left-radius: var(--radius-panel);
    border-top-right-radius: var(--radius-panel);
  }
  :is(.\*\:\[img\:last-child\]\:rounded-b-xl > *):is(img:last-child) {
    border-bottom-right-radius: var(--radius-panel);
    border-bottom-left-radius: var(--radius-panel);
  }
  :is(.\*\:\[span\]\:last\:flex > *):is(span):last-child {
    display: flex;
  }
  :is(.\*\:\[span\]\:last\:items-center > *):is(span):last-child {
    align-items: center;
  }
  :is(.\*\:\[span\]\:last\:gap-2 > *):is(span):last-child {
    gap: calc(0.25rem * 2);
  }
  :is(.\*\:\[svg\]\:row-span-2 > *):is(svg) {
    grid-row: span 2 / span 2;
  }
  :is(.\*\:\[svg\]\:shrink-0 > *):is(svg) {
    flex-shrink: 0;
  }
  :is(.\*\:\[svg\]\:text-destructive > *):is(svg) {
    color: var(--destructive);
  }
  :is(.\*\:\[svg\]\:text-muted-foreground > *):is(svg) {
    color: var(--muted-foreground);
  }
  :is(.\*\:\[svg\]\:text-success > *):is(svg) {
    color: var(--success);
  }
  :is(.\*\:\[svg\]\:text-warning > *):is(svg) {
    color: var(--warning);
  }
  :is(.data-\[variant\=destructive\]\:\*\:\[svg\]\:text-destructive[data-variant=destructive] > *):is(svg) {
    color: var(--destructive);
  }
  :is(.\*\:\[svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-5 > *):is(svg:not([class*=size-])) {
    width: calc(0.25rem * 5);
    height: calc(0.25rem * 5);
  }
  .\[\&\:not\(\:last-child\)\]\:border-r:not(:last-child) {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
  }
  .\[\&\:not\(\:last-child\)\]\:border-primary-foreground\/15:not(:last-child) {
    border-color: var(--primary-foreground);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--primary-foreground) 15%, transparent);
    }
  }
  .\[\&\>\.sr-only\]\:w-auto > .sr-only {
    width: auto;
  }
  .\[\&\>\.utan-grund\]\:p-4 > .utan-grund {
    padding: calc(0.25rem * 4);
  }
  @media (width >= 48rem) {
    .md\:\[\&\>\.utan-grund\]\:p-6 > .utan-grund {
      padding: calc(0.25rem * 6);
    }
  }
  .\[\&\>\[data-slot\=field-separator-content\]\]\:bg-card > [data-slot=field-separator-content] {
    background-color: var(--card);
  }
  .has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(> [data-slot=field-content]) > [role=checkbox],
  .has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(> [data-slot=field-content]) [role=radio] {
    margin-top: 1px;
  }
  @container field-group (width >= 28rem) {
    .\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(> [data-slot=field-content]) > [role=checkbox],
    .\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(> [data-slot=field-content]) [role=radio] {
      margin-top: 1px;
    }
  }
  .\[\&\>a\]\:underline > a {
    text-decoration-line: underline;
  }
  .\[\&\>a\]\:underline-offset-4 > a {
    text-underline-offset: 4px;
  }
  .\[\&\>a\:hover\]\:text-primary > a:hover {
    color: var(--primary);
  }
  .\[\&\>h2\]\:font-semibold > h2 {
    --tw-font-weight: 600;
    font-weight: 600;
  }
  .has-\[\>\[data-align\=block-end\]\]\:\[\&\>input\]\:pt-3:has(> [data-align=block-end]) > input {
    padding-top: calc(0.25rem * 3);
  }
  .has-\[\>\[data-align\=block-start\]\]\:\[\&\>input\]\:pb-3:has(> [data-align=block-start]) > input {
    padding-bottom: calc(0.25rem * 3);
  }
  .has-\[\>\[data-align\=inline-end\]\]\:\[\&\>input\]\:pr-1\.5:has(> [data-align=inline-end]) > input {
    padding-right: calc(0.25rem * 1.5);
  }
  .has-\[\>\[data-align\=inline-start\]\]\:\[\&\>input\]\:pl-1\.5:has(> [data-align=inline-start]) > input {
    padding-left: calc(0.25rem * 1.5);
  }
  .\[\&\>kbd\]\:rounded-\[calc\(var\(--radius\)-5px\)\] > kbd {
    border-radius: calc(var(--radius) - 5px);
  }
  .\[\&\>svg\]\:pointer-events-none > svg {
    pointer-events: none;
  }
  .\[\&\>svg\]\:size-3\! > svg {
    width: calc(0.25rem * 3) !important;
    height: calc(0.25rem * 3) !important;
  }
  .\[\&\>svg\]\:size-3\.5 > svg {
    width: calc(0.25rem * 3.5);
    height: calc(0.25rem * 3.5);
  }
  .\[\&\>svg\]\:size-4 > svg {
    width: calc(0.25rem * 4);
    height: calc(0.25rem * 4);
  }
  .\[\&\>svg\]\:h-2\.5 > svg {
    height: calc(0.25rem * 2.5);
  }
  .\[\&\>svg\]\:h-3 > svg {
    height: calc(0.25rem * 3);
  }
  .\[\&\>svg\]\:w-2\.5 > svg {
    width: calc(0.25rem * 2.5);
  }
  .\[\&\>svg\]\:w-3 > svg {
    width: calc(0.25rem * 3);
  }
  .\[\&\>svg\]\:text-muted-foreground > svg {
    color: var(--muted-foreground);
  }
  .group-has-data-\[size\=lg\]\/avatar-group\:\[\&\>svg\]\:size-5:is(:where(.group\/avatar-group):has([data-size=lg]) *) > svg {
    width: calc(0.25rem * 5);
    height: calc(0.25rem * 5);
  }
  .group-has-data-\[size\=sm\]\/avatar-group\:\[\&\>svg\]\:size-3:is(:where(.group\/avatar-group):has([data-size=sm]) *) > svg {
    width: calc(0.25rem * 3);
    height: calc(0.25rem * 3);
  }
  .group-data-\[size\=default\]\/avatar\:\[\&\>svg\]\:size-2:is(:where(.group\/avatar)[data-size=default] *) > svg {
    width: calc(0.25rem * 2);
    height: calc(0.25rem * 2);
  }
  .group-data-\[size\=lg\]\/avatar\:\[\&\>svg\]\:size-2:is(:where(.group\/avatar)[data-size=lg] *) > svg {
    width: calc(0.25rem * 2);
    height: calc(0.25rem * 2);
  }
  .group-data-\[size\=sm\]\/avatar\:\[\&\>svg\]\:hidden:is(:where(.group\/avatar)[data-size=sm] *) > svg {
    display: none;
  }
  .\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 > svg:not([class*=size-]) {
    width: calc(0.25rem * 3.5);
    height: calc(0.25rem * 3.5);
  }
  .\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 > svg:not([class*=size-]) {
    width: calc(0.25rem * 4);
    height: calc(0.25rem * 4);
  }
  .\[\&\>tr\]\:last\:border-b-0 > tr:last-child {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }
  [data-variant=legend] + .\[\[data-variant\=legend\]\+\&\]\:-mt-1\.5 {
    margin-top: calc(0.25rem * -1.5);
  }
}
@property --tw-animation-delay { syntax: "*"; inherits: false; initial-value: 0s; }
@property --tw-animation-direction { syntax: "*"; inherits: false; initial-value: normal; }
@property --tw-animation-duration { syntax: "*"; inherits: false; }
@property --tw-animation-fill-mode { syntax: "*"; inherits: false; initial-value: none; }
@property --tw-animation-iteration-count { syntax: "*"; inherits: false; initial-value: 1; }
@property --tw-enter-blur { syntax: "*"; inherits: false; initial-value: 0; }
@property --tw-enter-opacity { syntax: "*"; inherits: false; initial-value: 1; }
@property --tw-enter-rotate { syntax: "*"; inherits: false; initial-value: 0; }
@property --tw-enter-scale { syntax: "*"; inherits: false; initial-value: 1; }
@property --tw-enter-translate-x { syntax: "*"; inherits: false; initial-value: 0; }
@property --tw-enter-translate-y { syntax: "*"; inherits: false; initial-value: 0; }
@property --tw-exit-blur { syntax: "*"; inherits: false; initial-value: 0; }
@property --tw-exit-opacity { syntax: "*"; inherits: false; initial-value: 1; }
@property --tw-exit-rotate { syntax: "*"; inherits: false; initial-value: 0; }
@property --tw-exit-scale { syntax: "*"; inherits: false; initial-value: 1; }
@property --tw-exit-translate-x { syntax: "*"; inherits: false; initial-value: 0; }
@property --tw-exit-translate-y { syntax: "*"; inherits: false; initial-value: 0; }
@layer base {
  :is(:where(.grund) :where(:not(.utan-grund, .utan-grund *))),
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::before,
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::after,
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::backdrop,
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)) {
    border-color: var(--line);
    outline-color: var(--ring);
  }
  @supports (color: color-mix(in lab, red, red)) {
    :where(.grund) :where(:not(.utan-grund, .utan-grund *)) {
      outline-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(hr) {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(abbr[title]) {
    text-decoration: underline dotted;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(h1, h2, h3, h4, h5, h6) {
    font-size: inherit;
    font-weight: inherit;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(a) {
    color: inherit;
    text-decoration: inherit;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(b, strong) {
    font-weight: bolder;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(code, kbd, samp, pre) {
    font-family:
      ui-monospace,
      SFMono-Regular,
      Menlo,
      Monaco,
      Consolas,
      "Liberation Mono",
      "Courier New",
      monospace;
    font-feature-settings: normal;
    font-variation-settings: normal;
    font-size: 1em;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(small) {
    font-size: 80%;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(sub, sup) {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(sub) {
    bottom: -0.25em;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(sup) {
    top: -0.5em;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(table) {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(progress) {
    vertical-align: baseline;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(summary) {
    display: list-item;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(ol, ul, menu) {
    list-style: none;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(img, svg, video, canvas, audio, iframe, embed, object) {
    display: block;
    vertical-align: middle;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(img, video) {
    max-width: 100%;
    height: auto;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(button, input, select, optgroup, textarea),
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(select:is([multiple], [size]) optgroup) {
    font-weight: bolder;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(select:is([multiple], [size]) optgroup option) {
    padding-inline-start: 20px;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::file-selector-button {
    margin-inline-end: 4px;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {
    :where(.grund) :where(:not(.utan-grund, .utan-grund *))::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(textarea) {
    resize: vertical;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::-webkit-datetime-edit {
    display: inline-flex;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::-webkit-datetime-edit,
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::-webkit-datetime-edit-year-field,
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::-webkit-datetime-edit-month-field,
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::-webkit-datetime-edit-day-field,
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::-webkit-datetime-edit-hour-field,
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::-webkit-datetime-edit-minute-field,
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::-webkit-datetime-edit-second-field,
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::-webkit-datetime-edit-millisecond-field,
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):-moz-ui-invalid {
    box-shadow: none;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):-moz-focusring:where(:not(iframe)) {
    outline: auto;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(button, input:where([type=button], [type=reset], [type=submit])),
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::file-selector-button {
    appearance: button;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::-webkit-inner-spin-button,
  :where(.grund) :where(:not(.utan-grund, .utan-grund *))::-webkit-outer-spin-button {
    height: auto;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where([hidden]:not([hidden=until-found])) {
    display: none !important;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(svg.lucide) {
    stroke-width: 1.75;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(button:not(:disabled), [role=button]:not(:disabled), a[href]) {
    cursor: pointer;
  }
  :where(.grund) :where(:not(.utan-grund, .utan-grund *)):where(h1, h2, h3) {
    font-family: var(--font-ui);
    letter-spacing: -0.01em;
    text-wrap: balance;
  }
}
@layer utilities {
  :where(.grund) .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
  }
}
.grund:not(#_) :not(.utan-grund, .utan-grund *) {
  all: revert-layer;
}
.grund:not(#_) :not(.utan-grund, .utan-grund *)::before {
  all: revert-layer;
}
.grund:not(#_) :not(.utan-grund, .utan-grund *)::after {
  all: revert-layer;
}
.grund:not(#_) :not(.utan-grund, .utan-grund *)::placeholder {
  all: revert-layer;
}
.grund:not(#_) :not(.utan-grund, .utan-grund *)::marker {
  all: revert-layer;
}
.grund:not(#_) :focus-visible:not(.utan-grund, .utan-grund *) {
  outline: 3px solid var(--ring);
  outline-offset: 2px;
}
@property --tw-translate-x { syntax: "*"; inherits: false; initial-value: 0; }
@property --tw-translate-y { syntax: "*"; inherits: false; initial-value: 0; }
@property --tw-translate-z { syntax: "*"; inherits: false; initial-value: 0; }
@property --tw-rotate-x { syntax: "*"; inherits: false; }
@property --tw-rotate-y { syntax: "*"; inherits: false; }
@property --tw-rotate-z { syntax: "*"; inherits: false; }
@property --tw-skew-x { syntax: "*"; inherits: false; }
@property --tw-skew-y { syntax: "*"; inherits: false; }
@property --tw-space-y-reverse { syntax: "*"; inherits: false; initial-value: 0; }
@property --tw-space-x-reverse { syntax: "*"; inherits: false; initial-value: 0; }
@property --tw-divide-x-reverse { syntax: "*"; inherits: false; initial-value: 0; }
@property --tw-border-style { syntax: "*"; inherits: false; initial-value: solid; }
@property --tw-divide-y-reverse { syntax: "*"; inherits: false; initial-value: 0; }
@property --tw-leading { syntax: "*"; inherits: false; }
@property --tw-font-weight { syntax: "*"; inherits: false; }
@property --tw-tracking { syntax: "*"; inherits: false; }
@property --tw-ordinal { syntax: "*"; inherits: false; }
@property --tw-slashed-zero { syntax: "*"; inherits: false; }
@property --tw-numeric-figure { syntax: "*"; inherits: false; }
@property --tw-numeric-spacing { syntax: "*"; inherits: false; }
@property --tw-numeric-fraction { syntax: "*"; inherits: false; }
@property --tw-shadow { syntax: "*"; inherits: false; initial-value: 0 0 #0000; }
@property --tw-shadow-color { syntax: "*"; inherits: false; }
@property --tw-shadow-alpha { syntax: "<percentage>"; inherits: false; initial-value: 100%; }
@property --tw-inset-shadow { syntax: "*"; inherits: false; initial-value: 0 0 #0000; }
@property --tw-inset-shadow-color { syntax: "*"; inherits: false; }
@property --tw-inset-shadow-alpha { syntax: "<percentage>"; inherits: false; initial-value: 100%; }
@property --tw-ring-color { syntax: "*"; inherits: false; }
@property --tw-ring-shadow { syntax: "*"; inherits: false; initial-value: 0 0 #0000; }
@property --tw-inset-ring-color { syntax: "*"; inherits: false; }
@property --tw-inset-ring-shadow { syntax: "*"; inherits: false; initial-value: 0 0 #0000; }
@property --tw-ring-inset { syntax: "*"; inherits: false; }
@property --tw-ring-offset-width { syntax: "<length>"; inherits: false; initial-value: 0px; }
@property --tw-ring-offset-color { syntax: "*"; inherits: false; initial-value: #fff; }
@property --tw-ring-offset-shadow { syntax: "*"; inherits: false; initial-value: 0 0 #0000; }
@property --tw-outline-style { syntax: "*"; inherits: false; initial-value: solid; }
@property --tw-backdrop-blur { syntax: "*"; inherits: false; }
@property --tw-backdrop-brightness { syntax: "*"; inherits: false; }
@property --tw-backdrop-contrast { syntax: "*"; inherits: false; }
@property --tw-backdrop-grayscale { syntax: "*"; inherits: false; }
@property --tw-backdrop-hue-rotate { syntax: "*"; inherits: false; }
@property --tw-backdrop-invert { syntax: "*"; inherits: false; }
@property --tw-backdrop-opacity { syntax: "*"; inherits: false; }
@property --tw-backdrop-saturate { syntax: "*"; inherits: false; }
@property --tw-backdrop-sepia { syntax: "*"; inherits: false; }
@property --tw-duration { syntax: "*"; inherits: false; }
@property --tw-ease { syntax: "*"; inherits: false; }
@property --tw-content { syntax: "*"; initial-value: ""; inherits: false; }
@property --tw-blur { syntax: "*"; inherits: false; }
@property --tw-brightness { syntax: "*"; inherits: false; }
@property --tw-contrast { syntax: "*"; inherits: false; }
@property --tw-grayscale { syntax: "*"; inherits: false; }
@property --tw-hue-rotate { syntax: "*"; inherits: false; }
@property --tw-invert { syntax: "*"; inherits: false; }
@property --tw-opacity { syntax: "*"; inherits: false; }
@property --tw-saturate { syntax: "*"; inherits: false; }
@property --tw-sepia { syntax: "*"; inherits: false; }
@property --tw-drop-shadow { syntax: "*"; inherits: false; }
@property --tw-drop-shadow-color { syntax: "*"; inherits: false; }
@property --tw-drop-shadow-alpha { syntax: "<percentage>"; inherits: false; initial-value: 100%; }
@property --tw-drop-shadow-size { syntax: "*"; inherits: false; }
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}
@keyframes enter {
  from {
    opacity: var(--tw-enter-opacity,1);
    transform: translate3d(var(--tw-enter-translate-x,0), var(--tw-enter-translate-y,0), 0)scale3d(var(--tw-enter-scale,1), var(--tw-enter-scale,1), var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));
    filter: blur(var(--tw-enter-blur,0));
  }
}
@keyframes exit {
  to {
    opacity: var(--tw-exit-opacity,1);
    transform: translate3d(var(--tw-exit-translate-x,0), var(--tw-exit-translate-y,0), 0)scale3d(var(--tw-exit-scale,1), var(--tw-exit-scale,1), var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));
    filter: blur(var(--tw-exit-blur,0));
  }
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *,
    ::before,
    ::after,
    ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-space-y-reverse: 0;
      --tw-space-x-reverse: 0;
      --tw-divide-x-reverse: 0;
      --tw-border-style: solid;
      --tw-divide-y-reverse: 0;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-ordinal: initial;
      --tw-slashed-zero: initial;
      --tw-numeric-figure: initial;
      --tw-numeric-spacing: initial;
      --tw-numeric-fraction: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-duration: initial;
      --tw-ease: initial;
      --tw-content: "";
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-animation-delay: 0s;
      --tw-animation-direction: normal;
      --tw-animation-duration: initial;
      --tw-animation-fill-mode: none;
      --tw-animation-iteration-count: 1;
      --tw-enter-blur: 0;
      --tw-enter-opacity: 1;
      --tw-enter-rotate: 0;
      --tw-enter-scale: 1;
      --tw-enter-translate-x: 0;
      --tw-enter-translate-y: 0;
      --tw-exit-blur: 0;
      --tw-exit-opacity: 1;
      --tw-exit-rotate: 0;
      --tw-exit-scale: 1;
      --tw-exit-translate-x: 0;
      --tw-exit-translate-y: 0;
    }
  }
}

/* _underlag/arbetsmappar/produktforslag-2026-10-12/helhet/main-fixtures/styles.css */
/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
