    .service-score-card {
      background: linear-gradient(135deg, #111827, #334155);
      color: #fff;
      border: 0;
    }

    .service-score-card .section-subtitle,
    .service-score-card .muted {
      color: rgba(255,255,255,.74);
    }

    .service-score-main {
      display: grid;
      grid-template-columns: 120px 1fr;
      gap: 18px;
      align-items: center;
    }

    .service-score-number {
      width: 112px;
      height: 112px;
      border-radius: 34px;
      background: rgba(255,255,255,.12);
      display: grid;
      place-items: center;
      font-size: 42px;
      font-weight: 950;
      border: 1px solid rgba(255,255,255,.16);
    }

    .service-score-text h2 {
      margin: 0 0 8px;
      font-size: 24px;
      color: #fff;
    }

    .service-score-text p {
      margin: 0;
      line-height: 1.5;
      color: rgba(255,255,255,.82);
      font-size: 15px;
    }

    .service-pill-row {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: 16px;
    }

    .service-pill {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      border-radius: 999px;
      padding: 8px 11px;
      background: rgba(255,255,255,.12);
      border: 1px solid rgba(255,255,255,.16);
      color: #fff;
      font-weight: 900;
      font-size: 12px;
    }

    .service-toolbar {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
      margin-bottom: 16px;
    }

    .service-time-block {
      margin-bottom: 18px;
    }

    .service-time-title {
      display: flex;
      align-items: center;
      gap: 10px;
      margin: 0 0 10px;
      font-size: 18px;
    }

    .service-time-title::before {
      content: "";
      width: 10px;
      height: 10px;
      border-radius: 999px;
      background: var(--primary);
      display: inline-block;
    }

    .service-card-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
      gap: 12px;
    }

    .service-booking-card {
      background: #fff;
      border: 1px solid var(--border);
      border-radius: 18px;
      padding: 15px;
      box-shadow: 0 12px 28px rgba(15,23,42,.06);
      display: grid;
      gap: 12px;
    }

    .service-booking-card.cancelled {
      opacity: .62;
      background: #f8fafc;
    }

    .service-booking-top {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 12px;
    }

    .service-customer {
      font-size: 18px;
      font-weight: 950;
      margin: 0;
    }

    .service-meta {
      display: flex;
      flex-wrap: wrap;
      gap: 7px;
    }

    .service-tag {
      display: inline-flex;
      align-items: center;
      border-radius: 999px;
      padding: 6px 9px;
      background: var(--soft);
      border: 1px solid var(--border);
      font-size: 12px;
      font-weight: 900;
      color: var(--text);
    }

    .service-tag.success {
      background: #dcfce7;
      border-color: #bbf7d0;
      color: #166534;
    }

    .service-tag.danger {
      background: #fee2e2;
      border-color: #fecaca;
      color: #991b1b;
    }

    .service-comment {
      background: #fffbeb;
      border: 1px solid #fde68a;
      color: #92400e;
      border-radius: 14px;
      padding: 10px 11px;
      line-height: 1.4;
      font-weight: 700;
    }

    .service-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    .friendly-empty {
      border: 1px dashed var(--border);
      background: #fff;
      border-radius: 18px;
      padding: 22px;
      text-align: center;
      color: var(--muted);
      font-weight: 800;
      line-height: 1.5;
    }

    @media (max-width: 780px) {
      .service-score-main {
        grid-template-columns: 1fr;
      }

      .service-score-number {
        width: 92px;
        height: 92px;
        border-radius: 28px;
        font-size: 34px;
      }
    }

    .service-op-buttons {
      display: flex;
      flex-wrap: wrap;
      gap: 7px;
    }

    .service-op-btn {
      border: 1px solid var(--border);
      background: #fff;
      color: var(--text);
      border-radius: 999px;
      padding: 7px 10px;
      font-size: 12px;
      font-weight: 950;
      cursor: pointer;
    }

    .service-op-btn:hover {
      background: var(--soft);
    }

    .service-op-btn.active {
      background: var(--primary);
      border-color: var(--primary);
      color: #fff;
    }

    .service-op-btn.no-show.active {
      background: var(--danger);
      border-color: var(--danger);
      color: #fff;
    }

    .service-internal-note {
      background: #f8fafc;
      border: 1px solid var(--border);
      border-radius: 14px;
      padding: 10px 11px;
      line-height: 1.4;
      color: var(--text);
      font-weight: 700;
    }

    body.service-fullscreen-active {
      background: #f8fafc;
      overflow: hidden;
    }

    body.service-fullscreen-active .app {
      display: block;
      min-height: 100vh;
    }

    body.service-fullscreen-active .sidebar,
    body.service-fullscreen-active .topbar {
      display: none !important;
    }

    body.service-fullscreen-active .main {
      min-height: 100vh;
    }

    body.service-fullscreen-active .content {
      max-width: none;
      width: 100%;
      height: 100vh;
      overflow: auto;
      padding: 18px;
      margin: 0;
    }

    body.service-fullscreen-active .view {
      display: none !important;
    }

    body.service-fullscreen-active .service-score-card {
      position: sticky;
      top: 0;
      z-index: 30;
      margin-bottom: 16px;
    }

    body.service-fullscreen-active .service-booking-card {
      border-radius: 22px;
      padding: 18px;
      min-height: 190px;
    }

    body.service-fullscreen-active .service-customer {
      font-size: 22px;
    }

    body.service-fullscreen-active .service-tag,
    body.service-fullscreen-active .service-op-btn,
    body.service-fullscreen-active .btn.small {
      font-size: 14px;
      padding: 9px 12px;
    }

    body.service-fullscreen-active .service-card-grid {
      grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
      gap: 16px;
    }

    .service-fullscreen-bar {
      display: none;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      margin-bottom: 14px;
      background: #fff;
      border: 1px solid var(--border);
      border-radius: 18px;
      padding: 12px 14px;
      box-shadow: 0 12px 26px rgba(15,23,42,.06);
    }

    body.service-fullscreen-safe-active {
      overflow: hidden;
    }

    @media (max-width: 780px) {
    }

    body.service-fullscreen-active .service-fullscreen-bar {
      display: flex;
      position: sticky;
      top: 0;
      z-index: 40;
    }

    body.service-fullscreen-active .service-score-card {
      top: 74px;
    }

    .service-fullscreen-title {
      display: flex;
      flex-direction: column;
      gap: 2px;
    }

    .service-fullscreen-title strong {
      font-size: 18px;
    }

    .service-fullscreen-title span {
      color: var(--muted);
      font-size: 13px;
      font-weight: 800;
    }

    @media (max-width: 780px) {
      body.service-fullscreen-active .content {
        padding: 10px;
      }

      body.service-fullscreen-active .service-card-grid {
        grid-template-columns: 1fr;
      }

      body.service-fullscreen-active .service-booking-card {
        min-height: auto;
      }

      .service-fullscreen-bar {
        align-items: flex-start;
        flex-direction: column;
      }
    }

    .service-slot-section {
      border: 1px solid var(--border);
      border-radius: 24px;
      padding: 14px;
      margin-bottom: 18px;
      background: #fff;
    }

    .service-slot-section.alt {
      background: #f8fafc;
    }

    .service-slot-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 14px;
      margin-bottom: 12px;
      padding: 8px 4px 12px;
      border-bottom: 1px solid rgba(148, 163, 184, .25);
    }

    .service-slot-time {
      display: flex;
      align-items: center;
      gap: 10px;
      font-size: 22px;
      font-weight: 1000;
      letter-spacing: -0.04em;
      color: var(--text);
    }

    .service-slot-pill {
      font-size: 12px;
      font-weight: 950;
      color: var(--muted);
      background: #fff;
      border: 1px solid var(--border);
      border-radius: 999px;
      padding: 7px 10px;
      white-space: nowrap;
    }

    .service-slot-section.alt .service-slot-pill {
      background: #fff;
    }

    .service-card-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(285px, 1fr));
      gap: 14px;
      align-items: stretch;
    }

    .service-booking-card {
      display: flex;
      flex-direction: column;
      gap: 12px;
      min-height: 245px;
      background: #fff;
      border: 1px solid rgba(148, 163, 184, .32);
      border-radius: 22px;
      padding: 15px;
      box-shadow: 0 14px 30px rgba(15, 23, 42, .055);
    }

    .service-booking-card.is-cancelled {
      opacity: .62;
      background: #fafafa;
    }

    .service-card-main {
      display: flex;
      flex-direction: column;
      gap: 11px;
      flex: 1;
    }

    .service-card-topline {
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      gap: 12px;
    }

    .service-customer-block {
      min-width: 0;
    }

    .service-customer {
      font-size: 18px;
      font-weight: 1000;
      color: var(--text);
      line-height: 1.1;
      word-break: break-word;
    }

    .service-meta-line {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 7px;
      margin-top: 7px;
    }

    .service-people-badge,
    .service-group-badge,
    .service-source-badge {
      display: inline-flex;
      align-items: center;
      gap: 5px;
      border-radius: 999px;
      padding: 6px 9px;
      font-size: 12px;
      font-weight: 950;
      border: 1px solid var(--border);
      background: #f8fafc;
      color: var(--text);
      white-space: nowrap;
    }

    .service-group-badge {
      background: #fff7ed;
      border-color: #fed7aa;
      color: #9a3412;
    }

    .service-source-badge {
      color: var(--muted);
      background: #fff;
    }

    .service-status-main {
      flex: 0 0 auto;
      display: inline-flex;
      justify-content: center;
      align-items: center;
      border-radius: 999px;
      padding: 8px 11px;
      font-size: 12px;
      font-weight: 1000;
      border: 1px solid var(--border);
      background: #f8fafc;
      color: var(--text);
      white-space: nowrap;
    }

    .service-status-main.success {
      background: #ecfdf5;
      border-color: #bbf7d0;
      color: #166534;
    }

    .service-status-main.danger {
      background: #fef2f2;
      border-color: #fecaca;
      color: #991b1b;
    }

    .service-info-stack {
      display: flex;
      flex-direction: column;
      gap: 8px;
    }

    .service-info-box {
      border: 1px solid var(--border);
      border-radius: 16px;
      padding: 10px 11px;
      font-size: 13px;
      line-height: 1.42;
      font-weight: 750;
      color: var(--text);
      background: #f8fafc;
    }

    .service-info-box.client {
      background: #f9fafb;
    }

    .service-info-box.internal {
      background: #fffbeb;
      border-color: #fde68a;
    }

    .service-empty-note {
      color: var(--muted);
      font-size: 13px;
      font-weight: 750;
      border: 1px dashed var(--border);
      border-radius: 16px;
      padding: 10px 11px;
      background: #fff;
    }

    .service-card-bottom {
      margin-top: auto;
      display: flex;
      flex-direction: column;
      gap: 10px;
      padding-top: 12px;
      border-top: 1px solid rgba(148, 163, 184, .22);
    }

    .service-op-buttons {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 7px;
    }

    .service-op-btn {
      min-height: 38px;
      border: 1px solid var(--border);
      background: #fff;
      color: var(--text);
      border-radius: 13px;
      padding: 8px 9px;
      font-size: 12px;
      font-weight: 950;
      cursor: pointer;
      text-align: center;
    }

    .service-op-btn:hover {
      background: var(--soft);
    }

    .service-op-btn.active {
      background: var(--primary);
      border-color: var(--primary);
      color: #fff;
    }

    .service-op-btn.no-show.active {
      background: var(--danger);
      border-color: var(--danger);
      color: #fff;
    }

    .service-actions {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 7px;
    }

    .service-actions .btn,
    .service-actions a.btn {
      width: 100%;
      justify-content: center;
      min-height: 38px;
      padding-left: 8px;
      padding-right: 8px;
    }

    .service-actions .btn.danger,
    .service-actions .btn[data-cancel-reservation] {
      grid-column: 1 / -1;
    }

    body.service-fullscreen-active .service-slot-section {
      padding: 18px;
      margin-bottom: 22px;
    }

    body.service-fullscreen-active .service-slot-time {
      font-size: 26px;
    }

    body.service-fullscreen-active .service-card-grid {
      grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
      gap: 16px;
    }

    body.service-fullscreen-active .service-booking-card {
      min-height: 275px;
      padding: 18px;
    }

    body.service-fullscreen-active .service-customer {
      font-size: 23px;
    }

    body.service-fullscreen-active .service-op-btn,
    body.service-fullscreen-active .service-actions .btn {
      min-height: 44px;
      font-size: 14px;
    }

    @media (max-width: 780px) {
      .service-slot-header {
        align-items: flex-start;
        flex-direction: column;
      }

      .service-card-grid {
        grid-template-columns: 1fr;
      }

      .service-card-topline {
        flex-direction: column;
      }

      .service-status-main {
        align-self: flex-start;
      }

      .service-op-buttons,
      .service-actions {
        grid-template-columns: 1fr 1fr;
      }

      .service-actions .btn[data-cancel-reservation] {
        grid-column: 1 / -1;
      }

      body.service-fullscreen-active .service-card-grid {
        grid-template-columns: 1fr;
      }
    }

    .service-score-summary {
      display: grid;
      grid-template-columns: minmax(180px, 1.2fr) repeat(4, minmax(90px, 1fr));
      gap: 10px;
      margin-bottom: 14px;
    }

    .service-score-main,
    .service-score-mini {
      border: 1px solid var(--border);
      border-radius: 18px;
      background: #fff;
      padding: 13px 14px;
    }

    .service-score-main {
      background: linear-gradient(135deg, #111827, #374151);
      color: #fff;
    }

    .service-score-kicker {
      font-size: 12px;
      font-weight: 900;
      opacity: .75;
      margin-bottom: 5px;
    }

    .service-score-value {
      font-size: 30px;
      font-weight: 1000;
      letter-spacing: -0.06em;
      line-height: 1;
    }

    .service-score-label {
      margin-top: 7px;
      font-size: 12px;
      font-weight: 850;
      opacity: .82;
    }

    .service-score-mini strong {
      display: block;
      font-size: 22px;
      font-weight: 1000;
      letter-spacing: -0.04em;
      color: var(--text);
      line-height: 1;
    }

    .service-score-mini span {
      display: block;
      margin-top: 7px;
      color: var(--muted);
      font-size: 12px;
      font-weight: 850;
    }

    .service-status-main.status-expected,
    .service-op-btn.status-expected.active {
      background: #f8fafc;
      border-color: #cbd5e1;
      color: #334155;
    }

    .service-status-main.status-partial,
    .service-op-btn.status-partial.active {
      background: #fff7ed;
      border-color: #fed7aa;
      color: #9a3412;
    }

    .service-status-main.status-seated,
    .service-op-btn.status-seated.active {
      background: #ecfdf5;
      border-color: #bbf7d0;
      color: #166534;
    }

    .service-status-main.status-noshow,
    .service-op-btn.status-noshow.active {
      background: #fef2f2;
      border-color: #fecaca;
      color: #991b1b;
    }

    .service-status-main.status-cancelled {
      background: #f1f5f9;
      border-color: #cbd5e1;
      color: #64748b;
    }

    .service-op-btn.active {
      box-shadow: 0 8px 18px rgba(15,23,42,.08);
    }

    @media (max-width: 980px) {
      .service-score-summary {
        grid-template-columns: 1fr 1fr;
      }

      .service-score-main {
        grid-column: 1 / -1;
      }
    }

    @media (max-width: 560px) {
      .service-score-summary {
        grid-template-columns: 1fr;
      }
    }

    .service-score-hidden-legacy {
      display: none !important;
    }

    .service-score-v3 {
      display: grid;
      grid-template-columns: minmax(220px, 1.35fr) repeat(4, minmax(105px, 1fr));
      gap: 12px;
      margin-bottom: 16px;
    }

    .service-score-v3-main,
    .service-score-v3-item {
      border-radius: 20px;
      padding: 15px;
      border: 1px solid rgba(148, 163, 184, .28);
      box-shadow: 0 12px 26px rgba(15, 23, 42, .055);
    }

    .service-score-v3-main {
      background: linear-gradient(135deg, #111827, #334155);
      color: #fff;
    }

    .service-score-v3-kicker {
      font-size: 12px;
      font-weight: 950;
      opacity: .72;
      margin-bottom: 6px;
    }

    .service-score-v3-value {
      font-size: 34px;
      line-height: 1;
      font-weight: 1000;
      letter-spacing: -0.07em;
    }

    .service-score-v3-label {
      margin-top: 8px;
      font-size: 13px;
      font-weight: 850;
      opacity: .85;
    }

    .service-score-v3-item {
      background: #fff;
    }

    .service-score-v3-item strong {
      display: block;
      font-size: 25px;
      line-height: 1;
      font-weight: 1000;
      letter-spacing: -0.05em;
      color: var(--text);
    }

    .service-score-v3-item span {
      display: block;
      margin-top: 8px;
      font-size: 12px;
      font-weight: 850;
      color: var(--muted);
    }

    .service-status-main.status-expected {
      background: #e2e8f0 !important;
      border-color: #94a3b8 !important;
      color: #334155 !important;
    }

    .service-status-main.status-partial {
      background: #fed7aa !important;
      border-color: #fb923c !important;
      color: #7c2d12 !important;
    }

    .service-status-main.status-seated {
      background: #bbf7d0 !important;
      border-color: #22c55e !important;
      color: #14532d !important;
    }

    .service-status-main.status-noshow {
      background: #fecaca !important;
      border-color: #ef4444 !important;
      color: #7f1d1d !important;
    }

    .service-status-main.status-cancelled {
      background: #f1f5f9 !important;
      border-color: #cbd5e1 !important;
      color: #64748b !important;
    }

    .service-op-btn.status-expected {
      background: #f1f5f9 !important;
      border-color: #cbd5e1 !important;
      color: #334155 !important;
    }

    .service-op-btn.status-partial {
      background: #fff7ed !important;
      border-color: #fdba74 !important;
      color: #9a3412 !important;
    }

    .service-op-btn.status-seated {
      background: #f0fdf4 !important;
      border-color: #86efac !important;
      color: #166534 !important;
    }

    .service-op-btn.status-noshow {
      background: #fef2f2 !important;
      border-color: #fca5a5 !important;
      color: #991b1b !important;
    }

    .service-op-btn.status-expected.active {
      background: #475569 !important;
      border-color: #475569 !important;
      color: #fff !important;
    }

    .service-op-btn.status-partial.active {
      background: #f97316 !important;
      border-color: #f97316 !important;
      color: #fff !important;
    }

    .service-op-btn.status-seated.active {
      background: #16a34a !important;
      border-color: #16a34a !important;
      color: #fff !important;
    }

    .service-op-btn.status-noshow.active {
      background: #dc2626 !important;
      border-color: #dc2626 !important;
      color: #fff !important;
    }

    .service-booking-card:has(.service-status-main.status-expected) {
      border-left: 7px solid #94a3b8;
    }

    .service-booking-card:has(.service-status-main.status-partial) {
      border-left: 7px solid #f97316;
    }

    .service-booking-card:has(.service-status-main.status-seated) {
      border-left: 7px solid #16a34a;
    }

    .service-booking-card:has(.service-status-main.status-noshow) {
      border-left: 7px solid #dc2626;
    }

    .service-booking-card:has(.service-status-main.status-cancelled) {
      border-left: 7px solid #cbd5e1;
    }

    @media (max-width: 980px) {
      .service-score-v3 {
        grid-template-columns: 1fr 1fr;
      }

      .service-score-v3-main {
        grid-column: 1 / -1;
      }
    }

    @media (max-width: 560px) {
      .service-score-v3 {
        grid-template-columns: 1fr;
      }
    }

    .service-booking-card.status-card-expected {
      border-left: 8px solid #64748b !important;
    }

    .service-booking-card.status-card-partial {
      border-left: 8px solid #f97316 !important;
      background: linear-gradient(90deg, rgba(249,115,22,.09), #fff 28%) !important;
    }

    .service-booking-card.status-card-seated {
      border-left: 8px solid #16a34a !important;
      background: linear-gradient(90deg, rgba(22,163,74,.09), #fff 28%) !important;
    }

    .service-booking-card.status-card-noshow {
      border-left: 8px solid #dc2626 !important;
      background: linear-gradient(90deg, rgba(220,38,38,.10), #fff 28%) !important;
    }

    .service-booking-card.status-card-cancelled {
      border-left: 8px solid #cbd5e1 !important;
      background: #f8fafc !important;
      opacity: .72;
    }

    .service-status-main.status-expected {
      background: #475569 !important;
      border-color: #475569 !important;
      color: #fff !important;
    }

    .service-status-main.status-partial {
      background: #f97316 !important;
      border-color: #f97316 !important;
      color: #fff !important;
    }

    .service-status-main.status-seated {
      background: #16a34a !important;
      border-color: #16a34a !important;
      color: #fff !important;
    }

    .service-status-main.status-noshow {
      background: #dc2626 !important;
      border-color: #dc2626 !important;
      color: #fff !important;
    }

    .service-status-main.status-cancelled {
      background: #94a3b8 !important;
      border-color: #94a3b8 !important;
      color: #fff !important;
    }

    .service-controls-soft-v4 {
      display: none;
    }

    @media (max-width: 780px) {
    }

    .tabliva-source-field-v1 {
      margin-top: 12px;
    }

    .tabliva-source-field-v1 label {
      display: block;
      margin-bottom: 7px;
      font-size: 13px;
      font-weight: 900;
      color: var(--text);
    }

    .tabliva-source-field-v1 select {
      width: 100%;
      min-height: 42px;
      border-radius: 14px;
      border: 1px solid var(--border);
      background: #fff;
      padding: 9px 12px;
      font-weight: 850;
      color: var(--text);
    }

    .source-badge-admin {
      background: #eef2ff !important;
      border-color: #c7d2fe !important;
      color: #3730a3 !important;
    }

    .source-badge-phone {
      background: #ecfdf5 !important;
      border-color: #bbf7d0 !important;
      color: #166534 !important;
    }

    .source-badge-walkin {
      background: #fff7ed !important;
      border-color: #fed7aa !important;
      color: #9a3412 !important;
    }

    .source-badge-instagram,
    .source-badge-facebook {
      background: #fdf2f8 !important;
      border-color: #fbcfe8 !important;
      color: #9d174d !important;
    }

    .source-badge-google {
      background: #eff6ff !important;
      border-color: #bfdbfe !important;
      color: #1d4ed8 !important;
    }

    .tabliva-source-hint-v1 {
      margin-top: 6px;
      color: var(--muted);
      font-size: 12px;
      font-weight: 750;
      line-height: 1.35;
    }

    @media (max-width: 780px) {
    }
