/* TY Life administrator design, 2026-10-01. Presentation only; business rules stay in the API. */
body:has(.workspace), body:has(.ty-login) {
  --background: #f5f7fb;
  --foreground: #172033;
  --border: #dce4ef;
  --sidebar: #fff;
  --sidebar-foreground: #475569;
  --sidebar-border: #e2e8f0;
  --sidebar-accent: #eff6ff;
  --sidebar-accent-foreground: #2563eb;
  --sidebar-primary: #2563eb;
  --sidebar-primary-foreground: #fff;
  --work-padding: 20px;
  --work-title: 28px;
  --work-text: 14px;
  --work-control-height: 40px;
  --work-gap: 20px;
  color: #172033;
  background: #f5f7fb;
  font-family: 'Noto Sans KR', 'Apple SD Gothic Neo', 'Malgun Gothic', sans-serif;
}
[data-slot="sidebar-wrapper"]:has(.workspace) { background: #f5f7fb; }
[data-slot="sidebar-inner"]:has(.brand), [data-slot="sidebar"]:has(.brand) {
  background: #fff; color: #475569;
}
[data-slot="sidebar-container"]:has(.brand) { border-right: 1px solid #e2e8f0; }
.brand { padding: 24px 20px; }
.nav-label { padding: 12px 24px 8px; color: #94a3b8; font-size: 11px; letter-spacing: .04em; }
.work-groups .nav-item { margin: 2px 12px; padding: 11px 14px; color: #475569; font-size: 13px; border-radius: 6px; }
.work-groups .nav-item:hover { background: #f1f5f9; color: #1d4ed8; }
.work-groups .nav-item.active { background: #eff6ff; color: #2563eb; font-weight: 700; box-shadow: inset 3px 0 #2563eb; }
[data-sidebar="sidebar"] .work-groups .nav-item.active { background: #eff6ff; color: #2563eb; }
.work-group-links { border-color: #e2e8f0; }
.nav-item svg { width: 17px; height: 17px; }
.sidebar-guide { margin: 20px 16px; padding: 16px; border-color: #e2e8f0; background: #f8fafc; color: #64748b; }
[data-slot="sidebar-content"] .sidebar-guide { background: #f8fafc; border-color: #e2e8f0; }
[data-sidebar="sidebar"] .sidebar-guide strong { color: #334155; }
[data-sidebar="sidebar"] .sidebar-guide p { color: #64748b; }
.sidebar-guide strong { color: #334155; font-size: 12px; }
.sidebar-guide p, .sidebar-guide svg { color: #64748b; }
.profile { padding: 16px 20px; border-color: #e2e8f0; color: #334155; font-size: 13px; }
.profile > span { background: #eff6ff; color: #2563eb; border-radius: 8px; }
.profile small { color: #94a3b8; font-size: 11px; }
.workspace .topbar { height: 56px; min-height: 56px; padding: 0 32px; color: #64748b; font-size: 12px; border-color: #e2e8f0; }
.workspace .content { max-width: none; width: 100%; padding: 28px 32px 40px; box-sizing: border-box; }
.workspace .workspace-session-bar { margin-bottom: 16px; }
.workspace .content :is(h1,.page-heading h1,.admin-heading h1) { color: #172033; font-size: var(--work-title); letter-spacing: -.04em; }
.workspace .content :is(h2,h3) { color: #1e293b; }
.workspace .content :is(.page-heading p,.admin-heading p,.eyebrow,.admin-eyebrow) { color: #718096; }
.workspace .content :is(.panel,.admin-card,.consultation-card,.request-link-card) {
  border: 1px solid #dce4ef; border-radius: 8px; box-shadow: none; background: #fff;
}
.workspace .content :is(.panel,.admin-card) { padding: 20px; }
.workspace .content :is(.primary,button.primary) { background: #2563eb; border-color: #2563eb; color: #fff; border-radius: 6px; }
.workspace .content .primary:hover { background: #1d4ed8; border-color: #1d4ed8; }
.workspace .content .secondary { border-color: #dce4ef; background: #fff; color: #475569; border-radius: 6px; }
.workspace .content .secondary:hover:not(:disabled) { background: #f8fafc; border-color: #b9c8dc; }
.workspace .content :is(button,a,input,select,textarea):focus-visible { outline-color: #2563eb; }
.workspace .content :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select,textarea) {
  border: 1px solid #dce4ef; border-radius: 6px; background: #fff; color: #334155; padding: 8px 12px;
}
.workspace .content :is(input,select,textarea):focus { border-color: #93b4fa; }
.workspace .content .employee-search input { border: 0; background: transparent; }
.workspace .content :is(.employee-toolbar,.admin-card-title,.admin-filters) { gap: 12px; }
.workspace .content .employee-toolbar { padding: 12px 0; font-size: 12px; border-color: #e2e8f0; }
.workspace .content nav.employee-toolbar { flex-direction: row; justify-content: flex-start; gap: 8px; }
.workspace .content .employee-section-title { padding: 12px 0; font-size: 16px; border-color: #e2e8f0; }
.workspace .content .admin-table-wrap { margin-inline: 0; }
.workspace .content :is([data-slot="table-container"],.admin-table-wrap) { border: 1px solid #e2e8f0; border-radius: 4px; }
.workspace .content :is(table,[data-slot="table"]) { width: 100%; border-collapse: collapse; font-size: 12px; line-height: 18px; text-align: left; }
.workspace .content :is(th,td,[data-slot="table-head"],[data-slot="table-cell"]) {
  box-sizing: border-box; padding: 6px 10px; border: 1px solid #e2e8f0; height: 32px; vertical-align: middle;
}
.workspace .content :is(th,[data-slot="table-head"]) { height: 36px; background: #edf2f8; color: #475569; font-size: 12px; font-weight: 700; white-space: nowrap; }
.workspace .content tbody tr:nth-child(even) { background: #f8fafd; }
.workspace .content tbody tr:hover { background: #eff6ff; }
.workspace .content tbody tr:hover td { background: inherit; }
.workspace .content tr[data-state="selected"] { background: #eff6ff; }
.workspace .content td .text-link { color: #2563eb; font-size: 12px; min-height: 18px; white-space: nowrap; }
.workspace .content :is(.employee-status,.admin-state) { padding: 2px 6px; border-radius: 4px; font-size: 11px; line-height: 16px; white-space: nowrap; }
.workspace .content :is(.employee-summary,.admin-stats,.stats) { gap: 12px; }
.workspace .content :is(.employee-summary>div,.admin-stats>div,.stat) { border: 1px solid #dce4ef; border-radius: 8px; padding: 16px 20px; background: #fff; }
.workspace .content :is(.employee-summary strong,.admin-stats strong) { font-size: 26px; color: #172033; margin-top: 6px; }
.workspace .content :is(.employee-tabs,.work-tabs) { gap: 4px; border-bottom: 1px solid #e2e8f0; }
.workspace .content .employee-tabs :is(a,button) { border-radius: 6px 6px 0 0; font-size: 13px; padding: 9px 14px; }
.workspace .content .employee-tabs :is(.active,[aria-selected="true"]) { background: #eff6ff; border-color: #93b4fa; color: #2563eb; }
.workspace .content :is(.employee-footer,.admin-table-footer) { color: #718096; font-size: 12px; padding: 12px 0 0; }
.workspace .content :is(.work-scope,.admin-selected) { background: #f8fafc; border-color: #e2e8f0; border-radius: 6px; }
.workspace .content .customer-list-layout { display: grid; grid-template-columns: minmax(0,1fr); gap: 20px; align-items: start; }
.workspace .content .customer-list-layout.has-selection { grid-template-columns: minmax(0,1fr) 340px; }
.workspace .content .customer-list-layout > .panel { margin: 0; min-width: 0; }
.workspace .content .customer-select { min-height: 18px; padding: 0; background: none; border: 0; text-align: left; font-size: 12px; line-height: 18px; }
.workspace .content tr:has(.customer-select.is-selected) { background: #eff6ff; }
.workspace .content .customer-summary-panel { position: sticky; top: 16px; display: grid; gap: 16px; }
.workspace .content .customer-summary-panel header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.workspace .content .customer-summary-panel header h2 { font-size: 18px; }
.workspace .content .customer-summary-panel p { margin: 0; }
.workspace .content .customer-summary-help { color: #718096; font-size: 12px; line-height: 1.6; }
.workspace .content .customer-summary-counts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin: 0; }
.workspace .content .customer-summary-counts > div { background: #f8fafc; padding: 12px; border-radius: 6px; }
.workspace .content .customer-summary-counts dt { font-size: 12px; color: #64748b; }
.workspace .content .customer-summary-counts dd { margin: 4px 0 0; font-weight: 700; font-size: 20px; }
.workspace .content .customer-summary-panel ul { list-style: none; margin: 8px 0 0; padding: 0; }
.workspace .content .customer-summary-panel li { padding: 10px 0; border-bottom: 1px solid #e2e8f0; display: flex; align-items: center; justify-content: space-between; gap: 8px; font-size: 12px; }
.workspace .content .customer-summary-panel li strong { max-width: 60%; overflow-wrap: anywhere; }
.workspace .content .calendar-day { border-color: #e2e8f0; border-radius: 4px; background: #fff; }
.workspace .content .calendar-day.selected { border-color: #2563eb; background: #eff6ff; color: #1d4ed8; }
.workspace .content .consultation-month-header { color: #334155; }
.workspace .content .consultation-dialog { border: 1px solid #dce4ef; border-radius: 12px; background: #f8fafc; }
.workspace .content dialog::backdrop { background: rgb(15 23 42 / 32%); }
.workspace .content .consultation-card { padding: 16px; }
.workspace .content .consultation-dialog-footer { background: #fff; border-color: #e2e8f0; }
.ty-login { background: #f5f7fb; }
.ty-login .ty-login-card { border: 1px solid #dce4ef; border-radius: 12px; box-shadow: 0 8px 32px rgb(15 23 42 / 5%); }
.ty-login .ty-login-button { border-radius: 6px; }
/* Keep dense records inside their scroll container on small screens. */
@media (min-width: 1001px) {
  .workspace .content :is(td,[data-slot="table-cell"]) { white-space: nowrap; }
  .workspace .content td :is(small,.employee-body) { white-space: normal; max-width: 320px; }
}
@media (max-width: 1000px) {
  .workspace .content { padding: 24px; }
  .workspace .content :is(.employee-columns,.consultation-layout) { grid-template-columns: minmax(0,1fr); }
  .workspace .content .work-scope { display: grid; grid-template-columns: minmax(0,1fr); align-items: start; padding: 16px; }
  .workspace .content .work-scope > :is(label,p,a) { width: 100%; min-width: 0; flex: initial; margin: 0; white-space: normal; overflow-wrap: anywhere; }
  .workspace .content .customer-list-layout.has-selection { grid-template-columns: minmax(0,1fr); }
  .workspace .content .customer-summary-panel { position: static; grid-row: 1; }
}
@media (max-width: 767px) {
  .workspace .content { padding: 16px 12px 32px; --work-title: 24px; --work-control-height: 44px; --work-gap: 16px; }
  .workspace .topbar { padding-inline: 12px; }
  .workspace .content :is(.panel,.admin-card) { padding: 16px; }
  .workspace .content :is(.employee-info,.employee-summary,.admin-stats) { gap: 8px; }
  .workspace .content :is(.page-heading,.admin-heading) { flex-direction: column; align-items: stretch; }
  .workspace .content table { min-width: 640px; }
  .workspace .content .shipment-responsive table { min-width: 0; }
  .workspace .content :is(.employee-toolbar,.admin-filters) { flex-wrap: wrap; }
  .workspace .content .employee-search { width: 100%; }
  .workspace .content .employee-search input { min-width: 0; width: 100%; }
  .workspace .content td .text-link { display: inline-flex; align-items: center; min-height: 32px; }
}

/* Figma layout release. Real records, existing routes and API permissions are retained. */
.ty-admin-shell { --sidebar-width:240px; --work-control-height:44px; --work-gap:20px; --work-padding:16px; }
.ty-admin-shell .workspace { background:#f5f7fb; min-width:0; }
.ty-admin-shell [data-slot="sidebar-header"] { padding:0; }
.ty-admin-shell .brand { display:flex; flex-direction:column; align-items:flex-start; gap:10px; padding:24px 24px 14px; }
.ty-admin-shell .brand strong { color:#2563eb; font-size:26px; line-height:39px; letter-spacing:-.04em; }
.ty-admin-shell .brand small { color:#64748b; font-size:12px; font-weight:400; }
.ty-admin-shell .nav-label { padding:8px 24px 12px; }
.ty-admin-shell .work-groups { display:grid; gap:12px; padding:0 24px; }
.ty-admin-shell .work-group .nav-item { margin:0; width:100%; min-height:44px; padding:12px; font-size:14px; border-radius:4px; box-shadow:none; gap:8px; }
.ty-admin-shell .work-group-toggle { display:flex; align-items:center; justify-content:space-between; }
.ty-admin-shell .work-group-indicator { font-size:14px; color:#94a3b8; }
.ty-admin-shell .work-group-links { margin:4px 0 0; padding:0 0 0 8px; border:0; display:grid; gap:2px; }
.ty-admin-shell .work-group-links .nav-item { font-size:12px; min-height:36px; padding:8px 12px; }
.ty-admin-shell .work-group-links .nav-item.active { color:#1d4ed8; background:#eff6ff; }
.ty-admin-shell .profile { border:0; padding:24px; font-size:12px; color:#64748b; }
.ty-admin-shell .profile small { margin-top:4px; }
.ty-admin-shell .topbar { background:#f5f7fb; border:0; height:76px; min-height:76px; padding:24px 40px 16px; }
.ty-admin-shell .workspace-session-actions { margin-left:auto; display:flex; align-items:center; gap:16px; font-size:13px; }
.ty-admin-shell .workspace-session-actions a,.ty-admin-shell .session-logout { color:#64748b; padding:4px 0; background:none; border:0; font-size:13px; cursor:pointer; }
.ty-admin-shell .workspace-session-actions :is(a,button):hover { color:#2563eb; }
.ty-admin-shell .content { padding:8px 40px 40px; max-width:none; width:100%; }
.ty-admin-shell .content :is(.page-heading,.admin-heading) { align-items:flex-start; padding:0; }
.ty-admin-shell .content :is(h1,.page-heading h1) { color:#0f172a; line-height:42px; font-size:28px; }
.ty-admin-shell .content .page-heading p { margin:6px 0 0; color:#64748b; font-size:13px; line-height:20px; }
.ty-admin-shell .content :is(.panel,.admin-card) { border-color:#dce3ee; padding:16px; border-radius:8px; margin:0; }
.ty-admin-shell .content :is(.panel h2,.admin-card h2) { font-size:16px; line-height:24px; margin:0 0 12px; }
.ty-admin-shell .content :is(.primary,.secondary) { min-height:44px; border-radius:8px; padding:10px 18px; font-size:14px; }
.ty-admin-shell .content .page-actions { display:flex; gap:8px; flex-wrap:wrap; }
.ty-admin-shell .content :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select) { min-height:44px; }
.ty-admin-shell .content :is(.employee-tabs,.work-tabs,.customer-section-nav) { background:#fff; display:flex; flex-wrap:nowrap; overflow-x:auto; gap:8px; padding:0; border-bottom:1px solid #e3e8ef; }
.ty-admin-shell .content .employee-tabs :is(a,button) { flex:none; font-size:13px; min-height:44px; padding:12px 8px; border:0; border-radius:0; background:transparent; color:#64748b; white-space:nowrap; }
.ty-admin-shell .content .employee-tabs :is([aria-current="page"],[aria-selected="true"],.active) { color:#2563eb; font-weight:700; background:transparent; box-shadow:inset 0 -2px #2563eb; }
.ty-admin-shell .content .employee-toolbar { margin:0; }
.ty-admin-shell .content :is(.employee-summary,.admin-stats,.inbox-metrics) { gap:16px; }
.ty-admin-shell .content :is(.employee-summary>div,.admin-stats>div,.inbox-metric) { padding:20px 24px; border:1px solid #e4e9f0; border-radius:12px; background:#fff; box-shadow:none; }
.ty-admin-shell .content :is(.employee-summary strong,.admin-stats strong,.inbox-metric strong) { color:#0f172a; font-size:28px; }
.ty-admin-shell .content :is(.work-scope,.work-preview-note) { padding:12px 16px; font-size:12px; background:#f8fafc; }
.ty-admin-shell .content .work-scope { border:1px solid #dce3ee; }
.ty-admin-shell .content .work-intake { max-width:none; }
.ty-admin-shell .content .work-intake .work-inline-help { padding:0; }
.ty-admin-shell .content :is(.employee-info,.employee-columns,.admin-grid) { gap:20px; }
.ty-admin-shell .content .employee-info { margin:0; }
.ty-admin-shell .content .employee-info>div { background:#f8fafc; border:1px solid #e3e8ef; padding:12px; border-radius:4px; }
.ty-admin-shell .content :is([data-slot="table-container"],.admin-table-wrap,.inbox-table-wrap) { max-width:100%; overflow:auto; border:1px solid #e3e8ef; border-radius:0; margin:0; }
.ty-admin-shell .content :is(table,[data-slot="table"]) { border-collapse:collapse; font-size:12px; line-height:18px; width:100%; }
.ty-admin-shell .content :is(th,[data-slot="table-head"]) { height:36px; padding:8px; background:#eef2f7; color:#475569; font-weight:700; }
.ty-admin-shell .content :is(td,[data-slot="table-cell"]) { height:32px; padding:6px 8px; border:1px solid #e3e8ef; color:#475569; vertical-align:middle; }
.ty-admin-shell .content tbody tr:nth-child(even) { background:#fafbfd; }
.ty-admin-shell .content tbody tr:hover { background:#eff6ff; }
.ty-admin-shell .content td :is(.text-link,.secondary) { display:inline-flex; align-items:center; min-height:18px; height:auto; margin:0; padding:0; font-size:12px; line-height:18px; background:none; border:0; color:#2563eb; border-radius:0; }
.ty-admin-shell .content .employee-section-title { padding:0 0 12px; border:0; }
.ty-admin-shell .content .admin-empty { padding:16px 0; text-align:left; }
.ty-admin-shell .content .admin-empty p { margin:4px 0 0; }
.ty-admin-shell .content .staff-roles-card { display:grid; gap:12px; }
.ty-admin-shell .content .staff-roles-table td form { display:block; min-width:0; }
.ty-admin-shell .content .staff-roles-table select { min-height:28px; height:28px; padding:2px 8px; font-size:12px; }
.ty-admin-shell .content .staff-roles-table td { padding:2px 8px; }
.ty-admin-shell .content .request-links { max-width:none; margin:0; }
.ty-admin-shell .content .request-links-grid { grid-template-columns:minmax(0,1fr); }
.ty-admin-shell .content .request-link-card { display:grid; gap:12px; grid-template-columns:minmax(0,1fr) auto; }
.ty-admin-shell .content .request-link-card>:is(label,.request-link-description) { grid-column:1/-1; }
.ty-admin-shell .content .request-link-title { color:#2563eb; }
.ty-admin-shell .content .request-link-title svg { display:none; }
.ty-admin-shell .content .request-link-title h2 { margin:0; }
.ty-admin-shell .content .request-link-card>.text-link { justify-self:end; align-self:center; }
.ty-admin-shell .content .request-links-notice:empty { display:none; }
.ty-admin-shell .content .customer-db-summary { display:flex; align-items:center; flex-wrap:wrap; gap:8px; font-size:12px; }
.ty-admin-shell .content .customer-db-summary>span { padding:8px 12px; background:#fff; border:1px solid #dbe3ed; border-radius:4px; }
.ty-admin-shell .content .customer-db-summary strong { color:#2563eb; }
.ty-admin-shell .content .customer-db-filters { display:flex; flex-wrap:wrap; gap:8px; padding:0 0 16px; }
.ty-admin-shell .content .customer-db-filters .employee-search { flex:1; min-width:180px; max-width:420px; }
.ty-admin-shell .content .customer-db-filters>span { margin-left:auto; }
.ty-admin-shell .content .customer-list-layout.has-selection { grid-template-columns:minmax(0,1fr) 390px; gap:16px; }
.ty-admin-shell .content .customer-grid-panel { padding:16px; }
.ty-admin-shell .content .customer-grid-panel table { table-layout:fixed; }
.ty-admin-shell .content .customer-grid-panel th:nth-child(1) { width:90px; }
.ty-admin-shell .content .customer-grid-panel th:nth-child(2) { width:130px; }
.ty-admin-shell .content .customer-grid-panel th:nth-child(4) { width:96px; }
.ty-admin-shell .content .customer-grid-panel td { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ty-admin-shell .content .customer-grid-panel th:nth-child(-n+2),.ty-admin-shell .content .customer-grid-panel td:nth-child(-n+2) { position:sticky; left:0; z-index:1; background:#fff; }
.ty-admin-shell .content .customer-grid-panel th:nth-child(2),.ty-admin-shell .content .customer-grid-panel td:nth-child(2) { left:90px; border-right:1px solid #cbd5e1; }
.ty-admin-shell .content .customer-grid-panel th:nth-child(-n+2) { background:#eef2f7; z-index:2; }
.ty-admin-shell .content .customer-grid-panel tr:has(.is-selected) td { background:#eff6ff; }
.ty-admin-shell .content .customer-summary-panel { gap:12px; border-radius:6px; }
.ty-admin-shell .content .customer-section-nav { background:transparent; }
.ty-admin-shell .content .customer-contract-section { margin-top:-20px; }
.ty-admin-shell .content .customer-page [id^="customer-"] { scroll-margin-top:20px; }
.ty-admin-shell .content .consultation-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.ty-admin-shell .content .summary-card { display:flex; flex-direction:column; align-items:flex-start; gap:12px; text-align:left; padding:24px; border-radius:12px; color:#64748b; font-size:13px; }
.ty-admin-shell .content .summary-card strong { color:#0f172a; font-size:28px; }
.ty-admin-shell .content .summary-card small { color:#94a3b8; font-size:11px; }
.ty-admin-shell .content .summary-card.is-active { border-color:#93b4fa; }
.ty-admin-shell .content .consultation-list-panel { display:grid; gap:16px; padding:24px; border-radius:12px; }
.ty-admin-shell .content .consultation-controls { display:flex; flex-wrap:wrap; align-items:flex-end; gap:12px; padding:16px; background:#f8fafc; margin:0; }
.ty-admin-shell .content .consultation-controls label { display:grid; gap:6px; min-width:140px; font-size:12px; }
.ty-admin-shell .content .consultation-controls input { width:auto; }
.ty-admin-shell .content .employee-page.consultation-list-page .consultation-controls button { width:auto; }
.ty-admin-shell .content .employee-page.consultation-list-page .consultation-pagination button { width:auto; }
.ty-admin-shell .content .list-result-bar { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.ty-admin-shell .content .list-result-bar h2 { margin:0; font-size:14px; }
.ty-admin-shell .content .list-result-bar :is(span,small) { color:#64748b; font-size:12px; }
.ty-admin-shell .content .consultation-spreadsheet { min-width:0; }
.ty-admin-shell .content .consultation-spreadsheet table { min-width:840px; }
.ty-admin-shell .content .receipt-row-details summary { cursor:pointer; white-space:nowrap; font-size:11px; }
.ty-admin-shell .content .receipt-row-details[open] { min-width:220px; white-space:normal; }
.ty-admin-shell .content .consultation-pagination { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; padding-top:4px; }
.ty-admin-shell .content .consultation-pagination>div { display:flex; gap:8px; }
.ty-admin-shell .content .consultation-calendar-disclosure>summary { cursor:pointer; color:#2563eb; font-weight:650; }
.ty-admin-shell .content .consultation-calendar-disclosure .consultation-calendar { border:0; padding:20px 0 0; max-width:760px; }
.ty-admin-shell .content .inbox-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
.ty-admin-shell .content .inbox-table { min-width:760px; table-layout:auto; }
.ty-admin-shell .content .inbox-table td { padding:6px 8px; white-space:nowrap; }
.ty-admin-shell .content .inbox-title { display:block; font-size:12px; margin:0; max-width:360px; overflow:hidden; text-overflow:ellipsis; }
.ty-admin-shell .content .inbox-filters { padding:0 0 16px; border:0; }
.ty-admin-shell .content .inbox-count { padding:0 0 12px; }
.ty-admin-shell .content .complaint-table { min-width:840px; table-layout:auto; }
.ty-admin-shell .content .complaint-table :is(th,td) { font-size:12px; }
.ty-admin-shell .content .complaint-table td small { display:inline; margin-left:6px; font-size:11px; }
.ty-admin-shell .content .complaint-table :is(th,td):nth-child(n) { width:auto; min-width:0; max-width:none; }
.ty-admin-shell .content .complaint-table .complaint-status-select { min-height:28px; height:28px; padding:2px 6px; font-size:12px; }
.ty-admin-shell .content .complaint-table td:has(.complaint-status-select) { padding-block:2px; }
.ty-admin-shell .content .complaint-table .inbox-category { margin:0; padding:0; font-size:12px; color:#475569; background:none; }
.ty-admin-shell .content .template-catalog-layout { grid-template-columns:minmax(0,1fr) 340px; align-items:start; }
.ty-admin-shell .content .template-preview { position:sticky; top:16px; }
.ty-admin-shell .content .contract-source-page { display:grid; gap:20px; }
.ty-login .ty-login-card { border-color:#dce3ee; box-shadow:none; }
@media (max-width:1199px) {
  .ty-admin-shell .content { padding:8px 24px 32px; }
  .ty-admin-shell .topbar { padding-inline:24px; }
  .ty-admin-shell .content .customer-list-layout.has-selection { grid-template-columns:minmax(0,1fr) 320px; }
  .ty-admin-shell .content .template-catalog-layout { grid-template-columns:minmax(0,1fr); }
  .ty-admin-shell .content .template-preview { position:static; }
}
@media (max-width:1000px) {
  .ty-admin-shell .content .customer-list-layout.has-selection { grid-template-columns:minmax(0,1fr); }
  .ty-admin-shell .content .customer-summary-panel { position:static; grid-row:1; }
  .ty-admin-shell .content .consultation-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ty-admin-shell .content .complaint-adaptive-wrap { overflow:auto; }
  .ty-admin-shell .content .complaint-table :is(thead,tbody) { display:table-row-group; }
  .ty-admin-shell .content .complaint-table thead { display:table-header-group; }
  .ty-admin-shell .content .complaint-table tr { display:table-row; padding:0; }
  .ty-admin-shell .content .complaint-table :is(th,td) { display:table-cell; }
  .ty-admin-shell .content .complaint-table td::before { content:none; }
}
@media (max-width:767px) {
  .ty-admin-shell .topbar { height:64px; min-height:64px; padding:16px 12px; }
  .ty-admin-shell .content { padding:8px 12px 32px; }
  .ty-admin-shell .content :is(h1,.page-heading h1) { font-size:24px; line-height:32px; }
  .ty-admin-shell .content .page-heading { gap:12px; }
  .ty-admin-shell .content .page-actions { width:100%; }
  .ty-admin-shell .content .consultation-summary { gap:8px; }
  .ty-admin-shell .content .summary-card { padding:16px; gap:8px; }
  .ty-admin-shell .content .summary-card strong { font-size:24px; }
  .ty-admin-shell .content .consultation-list-panel { padding:16px; }
  .ty-admin-shell .content .consultation-controls { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); padding:12px; }
  .ty-admin-shell .content .consultation-controls label { grid-column:1/-1; min-width:0; }
  .ty-admin-shell .content .consultation-controls :is(select,input,button) { width:100%; font-size:16px; }
  .ty-admin-shell .content .employee-page.consultation-list-page .consultation-controls button { width:100%; }
  .ty-admin-shell .content .customer-db-filters>span { width:100%; margin:0; }
  .ty-admin-shell .content .customer-grid-panel table { min-width:640px; }
  .ty-admin-shell .content .request-link-card { grid-template-columns:minmax(0,1fr); }
  .ty-admin-shell .content .request-link-card>.text-link { justify-self:start; }
  .ty-admin-shell .content .employee-info { grid-template-columns:minmax(0,1fr); }
  .ty-admin-shell .content .list-result-bar { align-items:flex-start; flex-direction:column; }
  .ty-admin-shell .content .staff-roles-table select { min-height:44px; height:44px; font-size:16px; }
  .ty-admin-shell .content :is(.employee-summary>div,.admin-stats>div,.inbox-metric) { padding:16px; }
}

/* Multiple contracts remain one complaint, with a readable selection table. */
.ty-admin-shell .complaint-contract-tools { display:flex;flex-wrap:wrap;gap:12px;align-items:end; }
.ty-admin-shell .complaint-contract-tools label { flex:1;min-width:220px; }
.ty-admin-shell .complaint-contract-tools strong { padding:12px 0;white-space:nowrap; }
.ty-admin-shell .complaint-contract-table-wrap { overflow-x:auto;max-height:360px; }
.ty-admin-shell .complaint-contract-table { width:100%;min-width:680px;border-collapse:collapse;background:white;font-size:12px; }
.ty-admin-shell .complaint-contract-table :is(th,td) { padding:8px 10px;height:44px;border:1px solid #dce3ee;text-align:left; }
.ty-admin-shell .complaint-contract-table th { position:sticky;top:0;background:#f5f7fb;z-index:1; }
.ty-admin-shell .complaint-contract-table tr.is-selected { background:#eff6ff; }
.ty-admin-shell .complaint-contract-table input[type=checkbox] { min-height:0;width:18px;height:18px;accent-color:#2563eb;cursor:pointer; }
.ty-admin-shell .complaint-contract-selection,.ty-admin-shell .complaint-linked-contracts { padding:16px;border-radius:8px;background:#eff6ff; }
.ty-admin-shell .complaint-contract-selection>div { display:flex;flex-wrap:wrap;gap:8px;margin-top:10px; }
.ty-admin-shell .complaint-contract-selection button { white-space:normal;text-align:left; }
.ty-admin-shell .complaint-confirmation ul { margin:0;padding-left:20px; }
.ty-admin-shell .complaint-contract-section p { margin:0;color:#64748b;font-size:13px; }
@media(max-width:767px){.ty-admin-shell .complaint-contract-tools label{flex-basis:100%;}.ty-admin-shell .complaint-contract-tools button{flex:1;}}

/* Figma 37:610: paired complaint intake fields and text areas. */
.ty-admin-shell .work-subsection.complaint-intake-content {
 display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;
 padding:20px;border:1px solid #dce3ee;border-radius:8px;background:#fff;
}
.ty-admin-shell .complaint-intake-content h3 {grid-column:1/-1;margin:0;font-size:16px;line-height:1.6;color:#172033;}
.ty-admin-shell .complaint-intake-content>label {display:flex;flex-direction:column;align-items:stretch;gap:6px;min-width:0;font-size:12px;line-height:1.6;color:#172033;}
.ty-admin-shell .complaint-intake-content>label.complaint-wide {grid-column:1/-1;}
.ty-admin-shell .complaint-intake-content :is(input,select,textarea) {box-sizing:border-box;width:100%;border:1px solid #dce3ee;border-radius:6px;padding:12px;font-size:13px;line-height:1.6;}
.ty-admin-shell .complaint-intake-content textarea {height:88px;min-height:88px;resize:vertical;}
.ty-admin-shell .complaint-intake-content .complaint-required {display:inline;font-size:11px;color:#64748b;}
@media(max-width:767px){.ty-admin-shell .work-subsection.complaint-intake-content {grid-template-columns:minmax(0,1fr);padding:16px;}.ty-admin-shell .complaint-intake-content :is(input,select,textarea){font-size:16px;}}
.ty-admin-shell .complaint-intake-content>label {position:relative;}
.ty-admin-shell .complaint-intake-content .complaint-required {position:absolute;top:0;right:0;}
.ty-admin-shell .complaint-intake-content :is(output,.complaint-staff-results):empty {display:none;}

/* Complaint detail: the existing application navigation surrounds this full view. */
.ty-admin-shell .complaint-detail {display:grid;gap:24px;min-width:0;color:#172033;outline:none;}
.ty-admin-shell .complaint-detail-breadcrumb {margin:0;font-size:12px;color:#64748b;}
.ty-admin-shell .complaint-detail .page-heading {margin:0;padding-bottom:0;border:0;align-items:flex-start;}
.ty-admin-shell .complaint-detail .employee-toolbar {display:flex;gap:12px;align-items:center;}
.ty-admin-shell .complaint-detail .page-heading h1 {font-size:28px;line-height:1.65;}
.ty-admin-shell .complaint-detail .page-heading p {margin:4px 0 0;font-size:14px;}
.ty-admin-shell .complaint-detail-card {display:flex;flex-direction:column;gap:16px;min-width:0;padding:24px;border:1px solid #dce3ee;border-radius:12px;background:#fff;}
.ty-admin-shell .complaint-detail-card h2 {margin:0;font-size:16px;font-weight:700;line-height:26px;}
.ty-admin-shell .complaint-detail-card p {margin:0;font-size:13px;line-height:22px;white-space:pre-wrap;overflow-wrap:anywhere;}
.ty-admin-shell .complaint-detail-summary {display:flex;align-items:center;flex-wrap:wrap;gap:12px;}
.ty-admin-shell .complaint-detail-summary>span:not([data-slot]) {font-size:12px;color:#64748b;}
.ty-admin-shell .complaint-detail-badge {height:auto;min-height:24px;border:0;border-radius:6px;padding:4px 8px;background:#f1f5f9;color:#475569;font-size:12px;line-height:18px;font-weight:500;}
.ty-admin-shell .complaint-detail-badge.is-warning {background:#fff3d6;color:#825400;}
.ty-admin-shell .complaint-detail-badge.is-overdue {background:#fee2e2;color:#b4232a;}
.ty-admin-shell .complaint-detail-badge:is(.is-complete,.status-completed) {background:#ecfdf5;color:#047857;}
.ty-admin-shell .complaint-detail-columns {display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);align-items:start;gap:24px;}
.ty-admin-shell :is(.complaint-detail-main,.complaint-detail-side) {display:grid;align-content:start;gap:12px;min-width:0;}
.ty-admin-shell .complaint-detail-card dl {display:grid;gap:12px;margin:0;}
.ty-admin-shell .complaint-detail-value {display:grid;gap:6px;min-width:0;}
.ty-admin-shell .complaint-detail-value dt {font-size:12px;font-weight:600;line-height:20px;color:#64748b;}
.ty-admin-shell .complaint-detail-value dd {margin:0;font-size:14px;line-height:23px;white-space:pre-wrap;overflow-wrap:anywhere;}
.ty-admin-shell .complaint-detail-card .complaint-detail-muted {font-size:12px;line-height:20px;color:#64748b;}
.ty-admin-shell .complaint-detail-inset {display:grid;gap:6px;min-width:0;padding:16px;background:#f5f7fb;border-radius:8px;}
.ty-admin-shell .complaint-detail-inset dt {color:#172033;}
.ty-admin-shell .complaint-detail-card .complaint-detail-customer {font-size:18px;font-weight:700;line-height:30px;}
.ty-admin-shell .complaint-detail-customer span {font-weight:500;}
.ty-admin-shell .complaint-detail-customers {display:grid;gap:8px;margin:0;padding:0;list-style:none;font-size:13px;line-height:22px;}
.ty-admin-shell .complaint-detail-customers li {display:flex;gap:12px;flex-wrap:wrap;overflow-wrap:anywhere;}
.ty-admin-shell .complaint-detail-customers span {color:#64748b;}
.ty-admin-shell .complaint-detail-contract-wrap {max-width:100%;overflow-x:auto;}
.ty-admin-shell .complaint-detail .complaint-detail-contract-table {width:100%;min-width:480px;font-size:12px;line-height:20px;border-collapse:collapse;}
.ty-admin-shell .complaint-detail .complaint-detail-contract-table :is(th,td) {height:auto;padding:10px 12px;border:0;border-bottom:1px solid #edf2f8;vertical-align:top;white-space:normal;overflow-wrap:anywhere;}
.ty-admin-shell .complaint-detail .complaint-detail-contract-table th {font-weight:600;background:#f5f7fb;}
.ty-admin-shell .complaint-detail .complaint-detail-contract-table tr:nth-child(even) {background:#fff;}
.ty-admin-shell .complaint-detail-deadline {font-size:18px;line-height:30px;overflow-wrap:anywhere;}
.ty-admin-shell .complaint-detail-history {display:grid;gap:20px;margin:0;padding:0;list-style:none;}
.ty-admin-shell .complaint-detail-history li {display:grid;grid-template-columns:112px minmax(0,1fr);gap:16px;}
.ty-admin-shell .complaint-detail-history time {font-size:12px;line-height:20px;color:#64748b;}
.ty-admin-shell .complaint-detail-history strong {font-size:13px;line-height:22px;}
.ty-admin-shell .complaint-detail-history p {color:#64748b;font-size:12px;line-height:20px;}
.ty-admin-shell .complaint-detail-side :is(form,fieldset) {display:grid;gap:16px;min-width:0;margin:0;padding:0;border:0;}
.ty-admin-shell .complaint-detail-side label {display:grid;gap:6px;font-size:12px;font-weight:600;color:#64748b;}
.ty-admin-shell .complaint-detail-side :is(input,select,textarea) {width:100%;min-width:0;box-sizing:border-box;border:1px solid #dce3ee;border-radius:6px;padding:12px;font:inherit;font-size:13px;line-height:20px;color:#172033;background:#fff;}
.ty-admin-shell .complaint-detail-side textarea {min-height:88px;resize:vertical;field-sizing:fixed;}
.ty-admin-shell .complaint-detail-side select {background:#f5f7fb;}
.ty-admin-shell .complaint-detail-side :is(input,select,textarea):focus-visible {outline:2px solid #93b4fa;outline-offset:2px;}
.ty-admin-shell .complaint-detail-side .primary {width:100%;min-height:42px;}
.ty-admin-shell .complaint-detail-delivery {display:grid;gap:12px;}
.ty-admin-shell .complaint-detail-feedback {display:grid;gap:8px;padding:12px;background:#eff6ff;border-radius:8px;}
.ty-admin-shell .complaint-detail details {font-size:12px;line-height:22px;overflow-wrap:anywhere;}
.ty-admin-shell .complaint-detail details[open]>dl {margin-top:12px;}
@media(max-width:1100px){.ty-admin-shell .complaint-detail-columns {grid-template-columns:minmax(0,1fr);}.ty-admin-shell .complaint-detail-side {grid-template-columns:repeat(2,minmax(0,1fr));}.ty-admin-shell .complaint-detail-side>.complaint-detail-card:first-child {grid-column:1/-1;}}
@media(max-width:767px){.ty-admin-shell .complaint-detail {gap:16px;}.ty-admin-shell .complaint-detail .page-heading {display:grid;gap:12px;}.ty-admin-shell .complaint-detail .page-heading h1 {font-size:24px;}.ty-admin-shell .complaint-detail-card {padding:16px;}.ty-admin-shell .complaint-detail-columns {gap:16px;}.ty-admin-shell .complaint-detail-side {grid-template-columns:minmax(0,1fr);}.ty-admin-shell .complaint-detail-side :is(input,select,textarea) {font-size:16px;}.ty-admin-shell .complaint-detail-history li {grid-template-columns:minmax(0,1fr);gap:4px;}.ty-admin-shell .complaint-detail .employee-toolbar {flex-wrap:wrap;}}

.public-happycall {
--background:#f3f5f7;--foreground:#202733;--primary:#c05b28;--primary-foreground:#fff;--input:#d8dce2;--ring:#c05b28;
* {
  box-sizing: border-box;
}
& {
  margin: 0;
  background: var(--background);
  color: var(--foreground);
  font-family:
    -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo', 'Malgun Gothic',
    sans-serif;
  font-size: 16px;
  line-height: 1.6;
}
button,
input {
  font: inherit;
}
button,
label,
summary {
  -webkit-tap-highlight-color: transparent;
}
button,
summary {
  cursor: pointer;
}
& {
  padding: 0 24px 36px;
}
.preview {
  background: #e7ebef;
  text-align: center;
  font-size: 13px;
  color: #54606d;
  padding: 9px;
  margin: 0 -24px;
}
.brand {
  max-width: 760px;
  margin: 30px auto 24px;
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 750;
}
.brand-mark {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  background: #c05b28;
  color: white;
  border-radius: 9px;
  font-size: 19px;
}
.brand-note {
  margin-left: auto;
  font-size: 12px;
  letter-spacing: 2px;
  color: #7d8791;
}
.card {
  max-width: 760px;
  margin: auto;
  padding: 44px 52px 30px;
  background: white;
  border: 1px solid #e4e7eb;
  border-radius: 20px;
  box-shadow: 0 12px 38px #1e283408;
}
.eyebrow {
  color: #b55325;
  font-size: 14px;
  font-weight: 650;
}
h1 {
  font-size: 34px;
  line-height: 1.3;
  letter-spacing: -1.2px;
  margin: 9px 0 15px;
  font-weight: 750;
}
.intro p {
  color: #67707c;
  margin: 0;
  font-size: 16px;
}
.intro {
  padding-bottom: 30px;
  border-bottom: 1px solid #eceef1;
}
.form-section {
  margin-top: 28px;
}
h2 {
  font-size: 18px;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 23px;
}
h2 > span {
  font-size: 12px;
  color: #b45428;
  background: #fff1e9;
  padding: 3px 7px;
  border-radius: 5px;
}
.contact {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
label,
.time-label {
  font-size: 15px;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 9px;
}
em {
  font-style: normal;
  color: #c05b28;
}
input:not([type='hidden']) {
  width: 100%;
  min-width: 0;
  height: 54px;
  border: 1px solid #d8dce2;
  border-radius: 9px;
  background: #fff;
  padding: 0 15px;
  color: #202733;
  outline: none;
}
input::placeholder {
  color: #9199a3;
  font-size: 15px;
}
input:focus {
  border-color: #c05b28;
  box-shadow: 0 0 0 3px #c05b2815;
}
input[aria-invalid='true'] {
  border-color: #b72b24;
}
.error {
  display: block;
  font-size: 13px;
  color: #b72b24;
  margin-top: 5px;
}
.error:empty {
  display: none;
}
.hint {
  font-size: 13px;
  color: #7a838e;
  margin: 8px 0 0;
}
.time-label {
  margin-top: 24px;
}
.times {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}
.time {
  position: relative;
  cursor: pointer;
  border: 1px solid #dce0e5;
  border-radius: 9px;
  padding: 13px 5px;
  display: flex;
  justify-content: center;
  gap: 3px;
  font-size: 14px;
  font-weight: 500;
  margin: 0;
  white-space: nowrap;
}
.time [data-slot='radio-group-item'] {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  background: transparent !important;
  border-radius: 9px;
  aspect-ratio: auto;
}
.time [data-slot='radio-group-indicator'] {
  display: none;
}
.time.selected {
  border-color: #c05b28;
  background: #fff6f0;
  color: #a8491e;
}
.time:has([data-disabled]) {
  opacity: 0.4;
  cursor: not-allowed;
}
.schedule-note {
  display: flex;
  align-items: center;
  gap: 9px;
  background: #f6f7f9;
  border-radius: 8px;
  padding: 12px;
  font-size: 14px;
  margin-top: 18px;
  color: #525d6b;
}
.agreement {
  margin-top: 29px;
  padding: 24px 0 21px;
  border-top: 1px solid #eceef1;
}
.consent {
  display: flex;
  gap: 10px;
  align-items: center;
}
.consent label {
  margin: 0;
  font-size: 14px;
}
.consent [data-slot='checkbox'] {
  width: 20px;
  height: 20px;
}
.agreement details {
  margin: 9px 0 0 30px;
  color: #7a838e;
  font-size: 13px;
}
.agreement details p {
  background: #f6f7f9;
  padding: 14px;
  border-radius: 8px;
}
.submit {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  padding: 16px 20px;
  background: #c05b28;
  border: none;
  border-radius: 10px;
  color: white;
  font-weight: 700;
  font-size: 17px;
  transition: background 0.15s;
}
.submit:hover {
  background: #a94d21;
}
.submit:focus-visible,
summary:focus-visible {
  outline: 3px solid #e6a985;
  outline-offset: 4px;
}
.safe {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
  color: #7a838e;
  font-size: 12px;
  margin: 13px 0 0;
}
footer {
  text-align: center;
  font-size: 13px;
  color: #687481;
  line-height: 1.9;
  margin: 23px auto 0;
}
footer span {
  font-size: 12px;
  color: #89939e;
}
.done {
  text-align: center;
  padding: 35px 0;
}
.done h2 {
  justify-content: center;
  margin: 20px 0;
}
.done p {
  color: #687481;
}
.done-icon {
  display: inline-flex;
  padding: 18px;
  border-radius: 50%;
  background: #fff1e9;
  color: #c05b28;
}
.done .submit {
  margin-top: 28px;
}
@media (max-width: 600px) {
  & {
    padding: 0 16px 28px;
  }
  .preview {
    margin: 0 -16px;
    font-size: 12px;
  }
  .brand {
    margin: 23px auto 19px;
  }
  .card {
    padding: 30px 22px 24px;
    border-radius: 15px;
  }
  .contact {
    grid-template-columns: 1fr;
    gap: 17px;
  }
  .times {
    grid-template-columns: repeat(2, 1fr);
  }
  h1 {
    font-size: 29px;
  }
  .intro p {
    font-size: 15px;
  }
  .brand-note {
    font-size: 10px;
  }
  .safe {
    font-size: 12px;
  }
  .time {
    padding: 14px 7px;
  }
  .consent label {
    font-size: 13px;
  }
  .form-section {
    margin-top: 25px;
  }
}
@media (prefers-reduced-motion: reduce) {
  * {
    transition: none !important;
  }
}
output.done {
  display: block;
}

.company-logo {
  width: 200px;
  height: auto;
  display: block;
  max-width: 65%;
}
.brand {
  background: #fff;
  padding: 15px 20px;
  border-radius: 12px;
}
.times {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
footer strong {
  font-size: 15px;
  color: #424d59;
}
footer p {
  margin: 5px 0;
}
footer a {
  color: #8b6d25;
  font-size: 19px;
  font-weight: 700;
  margin-left: 10px;
  text-decoration: none;
}
footer a:hover {
  text-decoration: underline;
}
footer address {
  font-style: normal;
  font-size: 13px;
  margin-top: 8px;
}
@media (max-width: 600px) {
  .company-logo {
    width: 170px;
  }
  .times {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.request-fields {
  border: 0;
  padding: 0;
  margin: 0;
  min-width: 0;
}
.submit:disabled {
  opacity: 0.55;
  cursor: wait;
}
.age-check {
  margin: 0 0 8px;
}
.age-check ~ .hint {
  margin-bottom: 20px;
}
.consent-copy strong {
  color: #303945;
}
.consent-copy p {
  font-size: 14px;
}
.agreement details {
  margin-left: 0;
}
.consent-copy {
  line-height: 1.8;
}
.request-fields > p[role='status'] {
  color: #67707c;
}

.submit-feedback{margin:16px 0;padding:16px;border:1px solid #d35b42;border-radius:10px;background:#fff5f2;color:#96371f;font-size:14px;line-height:1.6}.submit-feedback ul{padding-left:20px;margin:8px 0 0}.submit-feedback:focus{outline:2px solid #96371f;outline-offset:3px}

.phone-auth{margin-top:12px;display:grid;gap:10px}.phone-auth-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;width:100%;padding:12px 16px;border:1px solid #155a50;border-radius:8px;background:#155a50;color:#fff;font-size:15px;font-weight:700;cursor:pointer}.phone-auth-button:disabled{background:#e7ecea;color:#53665f;border-color:#c6d0cc;cursor:not-allowed;opacity:1}.phone-auth p,.phone-auth output{font-size:13px;line-height:1.6}.phone-auth a{color:#155a50;text-decoration:underline}.phone-auth-button:focus-visible{outline:3px solid #ad8b45;outline-offset:3px}

.phone-agreement{margin-top:14px;padding:14px;border:1px solid #e2e7e5;border-radius:8px;background:#f8faf9}.phone-agreement .consent{align-items:flex-start}.phone-agreement .consent label{font-size:14px;line-height:1.5}.phone-agreement .consent [data-slot='checkbox']{flex-shrink:0;margin-top:1px}.phone-agreement details{margin:8px 0 0 30px;font-size:14px}.phone-agreement summary{cursor:pointer;color:#155a50}.phone-agreement .consent-copy{max-height:280px;overflow:auto;overflow-wrap:anywhere}.phone-agreement .consent-copy p{padding:10px;margin:8px 0}.phone-agreement+.phone-auth{margin-top:10px}

.general-inquiry{padding:16px;margin:20px 0;border:1px solid #dde3e6;border-radius:10px;background:#f7f9fa;font-size:14px;line-height:1.6}.general-inquiry p{margin:6px 0}.general-inquiry a{display:inline-block;color:#155a50;text-decoration:underline;padding:8px 0;font-weight:700}.product-entry{display:grid;gap:16px}.product-entry a{padding:24px;border:1px solid #d6dfdd;border-radius:12px;display:grid;gap:12px;color:#233b37;text-decoration:none;min-height:100px}.product-entry a:hover{border-color:#155a50;background:#f6f9f8}.product-entry strong{font-size:20px}.product-entry span{color:#155a50}.product-entry a:focus-visible{outline:3px solid #ad8b45;outline-offset:3px}

}
.public-happycall .brand-note {font-size:10px;letter-spacing:1px;background:none;padding:0;min-width:0;}
.public-happycall {width:100%;overflow-wrap:anywhere;}
