.sf-auth-container{max-width:560px;margin:30px auto;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:24px;box-shadow:0 8px 24px rgba(0,0,0,.05)}
.sf-auth-tabs{display:flex;border-bottom:1px solid #e5e7eb;margin-bottom:18px}
.sf-tab{flex:1;padding:12px;background:none;border:none;cursor:pointer;font-weight:700;text-align:center;text-decoration:none;color:inherit}
.sf-tab.active{border-bottom:3px solid #111827}
.sf-auth-panel{display:none}.sf-auth-panel.active{display:block}
.sf-auth-container input{width:100%;padding:10px;border:1px solid #d1d5db;border-radius:8px;margin-top:6px}
.sf-auth-notice{padding:12px 14px;border-radius:10px;margin:0 0 16px}.sf-auth-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.sf-auth-ok{background:#ecfdf5;color:#166534;border:1px solid #bbf7d0}

.sf-dashboard-basic{max-width:1120px;margin:20px auto;background:#fff;padding:24px;border:1px solid #e5e7eb;border-radius:18px;box-shadow:0 14px 36px rgba(0,0,0,.06)}
.sf-dashboard-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap;margin-bottom:18px;padding:24px;border:1px solid #e5e7eb;border-radius:18px;background:linear-gradient(180deg,#ffffff 0%,#fafafa 100%)}
.sf-dashboard-hero-copy{flex:1 1 420px;min-width:0}
.sf-dashboard-eyebrow{display:inline-block;margin-bottom:10px;padding:7px 11px;border:1px solid #e5e7eb;border-radius:999px;background:#fff;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#475569}
.sf-dashboard-hero h2{margin:0 0 8px;font-size:clamp(28px,3vw,38px);line-height:1.08}
.sf-dashboard-hero p{margin:0;color:#666;max-width:760px}
.sf-dashboard-links{display:flex;flex-wrap:wrap;gap:10px}
.sf-dashboard-links-top{align-self:stretch;justify-content:flex-end;align-content:flex-start;flex:0 1 360px}
.sf-dashboard-links .button,.sf-dashboard-internal-nav a,.sf-client-nav a{border-radius:12px}
.sf-dashboard-links .button{padding:10px 16px}

.sf-client-nav{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid #eee}
.sf-client-nav a,.sf-dashboard-internal-nav a{text-decoration:none;font-weight:600;padding:10px 14px;border:1px solid #e5e7eb;background:#fff;color:inherit;display:inline-flex;align-items:center;gap:6px}
.sf-client-nav a:hover,.sf-dashboard-internal-nav a:hover{background:#f9fafb}
.sf-dashboard-internal-nav{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px 0;padding:14px;border:1px solid #e5e7eb;border-radius:14px;background:rgba(250,250,250,.92);position:sticky;top:16px;z-index:10;box-shadow:0 8px 24px rgba(0,0,0,.04);backdrop-filter:saturate(180%) blur(8px)}

.sf-dashboard-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:18px 0}
.sf-dashboard-card,.sf-dashboard-mini-card,.sf-dashboard-section,.sf-dashboard-panel{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 8px 24px rgba(0,0,0,.04)}
.sf-dashboard-card{padding:18px;display:flex;flex-direction:column;align-items:flex-start;min-height:180px}
.sf-dashboard-card-highlight{background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%)}
.sf-dashboard-card-label,.sf-dashboard-mini-card span{display:block;color:#666;margin-bottom:6px}
.sf-dashboard-mini-card strong,.sf-dashboard-card strong{font-size:1.22rem}
.sf-dashboard-card strong{font-size:1.7rem;line-height:1}
.sf-dashboard-card small{display:block;margin-top:10px;color:#667085;line-height:1.4}

.sf-dashboard-cards-overview{align-items:stretch}
.sf-dashboard-cards-overview > .sf-dashboard-card{height:100%;min-height:190px}
.sf-dashboard-cards-overview .sf-dashboard-card-label{min-height:52px;line-height:1.3}
.sf-dashboard-cards-overview .sf-dashboard-card strong{margin:0 0 14px}
.sf-dashboard-cards-overview .sf-dashboard-card small{margin-top:auto}

.sf-dashboard-sections{display:grid;grid-template-columns:1fr;gap:20px;margin-top:24px}
.sf-dashboard-section{padding:22px;scroll-margin-top:90px}
.sf-dashboard-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:14px}
.sf-dashboard-section h3,.sf-dashboard-section h4{margin:0}
.sf-section-subtitle{margin:6px 0 0;color:#667085;line-height:1.5;max-width:780px}
.sf-dashboard-inline-stats,.sf-dashboard-profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-top:14px}
.sf-dashboard-mini-card{padding:16px}

.sf-dashboard-split-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.sf-dashboard-panel{padding:18px}
.sf-dashboard-panel-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}
.sf-dashboard-badge{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 10px;border-radius:999px;background:#111827;color:#fff;font-size:.95rem;font-weight:700}
.sf-dashboard-empty{margin:0;padding:16px;border:1px dashed #d1d5db;border-radius:14px;background:#f9fafb;color:#475569}

.sf-dashboard-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid #eef2f7;border-radius:14px}
.sf-dashboard-table{width:100%;border-collapse:collapse;min-width:640px}
.sf-dashboard-table th,.sf-dashboard-table td{padding:12px 14px;border-bottom:1px solid #ececec;text-align:left;vertical-align:top}
.sf-dashboard-table th{font-weight:700;background:#fafafa}
.sf-dashboard-table tbody tr:last-child td{border-bottom:none}
.sf-room-link-button{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}

.sf-status-pill{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#f3f4f6;border:1px solid #e5e7eb;font-size:.9rem;font-weight:600;line-height:1.2;white-space:nowrap}

.menu-item-studioflow-client-area{position:relative;padding-bottom:12px;margin-bottom:-12px}
.menu-item-studioflow-client-area > a{display:inline-flex;align-items:center;gap:8px}
.menu-item-studioflow-client-area > a::after{content:"▾";font-size:.82em;line-height:1;opacity:.72;transform:translateY(1px)}
.menu-item-studioflow-client-area::after{content:"";position:absolute;left:0;right:0;top:100%;height:14px}
.menu-item-studioflow-client-area > .sub-menu{display:none;position:absolute;top:100%;right:0;min-width:240px;background:#ffffff;border:1px solid #d9dee7;border-radius:14px;box-shadow:0 18px 40px rgba(17,24,39,.14);padding:10px 0;z-index:9999;transform:translate(-18px,6px)}
.menu-item-studioflow-client-area:hover > .sub-menu,.menu-item-studioflow-client-area:focus-within > .sub-menu{display:block}
.menu-item-studioflow-client-area > .sub-menu::before{content:"";position:absolute;top:-7px;right:26px;width:12px;height:12px;background:#fff;border-left:1px solid #d9dee7;border-top:1px solid #d9dee7;transform:rotate(45deg)}
.menu-item-studioflow-client-area > .sub-menu li{list-style:none;margin:0;padding:0}
.menu-item-studioflow-client-area > .sub-menu a{display:block;padding:12px 18px;text-decoration:none;color:#1f2937 !important;font-size:15px;font-weight:600;line-height:1.35;background:transparent;transition:background .18s ease,color .18s ease,padding-left .18s ease}
.menu-item-studioflow-client-area > .sub-menu a:hover,.menu-item-studioflow-client-area > .sub-menu a:focus{background:#f5f7fb;color:#111827 !important;padding-left:22px;outline:none}
.menu-item-studioflow-client-area > .sub-menu .menu-item-studioflow-logout a{color:#b45309 !important}
.menu-item-studioflow-client-area > .sub-menu .menu-item-studioflow-logout a:hover,.menu-item-studioflow-client-area > .sub-menu .menu-item-studioflow-logout a:focus{background:#fff7ed;color:#92400e !important}
.menu-item-studioflow-client-area > .sub-menu,
.menu-item-studioflow-client-area::after{pointer-events:auto}

.sf-auth-page-wrap{max-width:1120px;margin:0 auto;padding:40px 20px 60px}
.sf-auth-page-inner{max-width:760px;margin:0 auto}
.sf-auth-page-hero{margin:0 auto 20px;text-align:center}
.sf-auth-page-hero h1{margin:0 0 10px;font-size:clamp(32px,4vw,46px);line-height:1.05}
.sf-auth-page-hero p{margin:0 auto;max-width:640px;color:#666;font-size:1.05rem}
.sf-auth-container .button.button-primary,.sf-auth-container button.button.button-primary{width:100%;padding:12px 16px;border-radius:10px}
.sf-auth-container p{margin:0 0 14px}
.sf-auth-container h3{margin:0 0 16px}

.sf-profile-form{margin-top:18px;padding-top:14px;border-top:1px solid #ececec}
.sf-profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.sf-profile-form label{display:block;font-weight:600;margin-bottom:6px}
.sf-profile-form input{width:100%;padding:11px 12px;border:1px solid #d1d5db;border-radius:10px;background:#fff}
.sf-profile-actions{margin:8px 0 0}
.sf-profile-actions .button{padding:10px 16px;border-radius:12px}

@media (max-width: 1080px){
  .sf-dashboard-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sf-dashboard-split-grid{grid-template-columns:1fr}
}

@media (max-width: 768px){
  .menu-item-studioflow-client-area > .sub-menu{right:auto;left:0;transform:none}
  .menu-item-studioflow-client-area > .sub-menu::before{left:24px;right:auto}
  .sf-dashboard-basic{padding:16px;border-radius:16px}
  .sf-dashboard-hero{padding:18px;border-radius:16px}
  .sf-dashboard-links-top{justify-content:flex-start;flex:1 1 100%}
  .sf-dashboard-links .button,.sf-dashboard-internal-nav a,.sf-client-nav a{width:100%;justify-content:center}
  .sf-dashboard-internal-nav{position:static;top:auto;padding:12px}
  .sf-dashboard-cards{grid-template-columns:1fr 1fr;gap:12px}
  .sf-dashboard-section,.sf-dashboard-panel,.sf-dashboard-card,.sf-dashboard-mini-card{padding:16px}
  .sf-dashboard-section-head{margin-bottom:12px}
  .sf-dashboard-table-wrap{overflow:visible;border:none;border-radius:0}
  .sf-dashboard-table{min-width:0;border-collapse:separate;border-spacing:0 12px}
  .sf-dashboard-table thead{display:none}
  .sf-dashboard-table tbody,.sf-dashboard-table tr,.sf-dashboard-table td{display:block;width:100%}
  .sf-dashboard-table tr{background:#fff;border:1px solid #e5e7eb;border-radius:14px;overflow:hidden;box-shadow:0 6px 18px rgba(0,0,0,.04)}
  .sf-dashboard-table td{display:flex;justify-content:space-between;gap:14px;padding:12px 14px;border-bottom:1px solid #f0f2f5;text-align:right}
  .sf-dashboard-table td:last-child{border-bottom:none}
  .sf-dashboard-table td::before{content:attr(data-label);font-weight:700;color:#111827;text-align:left;flex:0 0 42%}
  .sf-room-link-button{width:100%}
}

@media (max-width: 560px){
  .sf-dashboard-cards-overview > .sf-dashboard-card{min-height:auto}
  .sf-dashboard-cards{grid-template-columns:1fr}
  .sf-dashboard-hero h2{font-size:clamp(24px,8vw,32px)}
  .sf-dashboard-table td{flex-direction:column;align-items:flex-start;text-align:left}
  .sf-dashboard-table td::before{flex:none}
  .sf-profile-grid{grid-template-columns:1fr}
}


.sf-dashboard-basic,.sf-dashboard-hero,.sf-dashboard-internal-nav,.sf-dashboard-cards,.sf-dashboard-sections,.sf-dashboard-section,.sf-dashboard-inline-stats,.sf-dashboard-split-grid,.sf-dashboard-panel,.sf-dashboard-table-wrap{box-sizing:border-box;width:100%;max-width:100%;min-width:0}
.sf-dashboard-basic{overflow:hidden;border:1px solid #e5e7eb;box-shadow:none}
.sf-dashboard-hero,.sf-dashboard-section,.sf-dashboard-panel,.sf-dashboard-card,.sf-dashboard-mini-card,.sf-dashboard-internal-nav{box-shadow:none}
.sf-dashboard-hero,.sf-dashboard-section,.sf-dashboard-panel,.sf-dashboard-card,.sf-dashboard-mini-card{border-color:#e6e8ee}
.sf-dashboard-hero{align-items:center;padding:20px 22px}
.sf-dashboard-hero h2{margin:0 0 6px;font-size:clamp(26px,3vw,36px)}
.sf-dashboard-hero p{max-width:620px;font-size:.98rem}
.sf-dashboard-links-top{flex:0 1 auto;justify-content:flex-end}
.sf-dashboard-links .button{padding:10px 14px}
.sf-dashboard-internal-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch}
.sf-dashboard-internal-nav a{justify-content:center;text-align:center;min-height:48px}
.sf-dashboard-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
.sf-dashboard-card,.sf-dashboard-mini-card,.sf-dashboard-panel{height:100%}
.sf-dashboard-inline-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
.sf-dashboard-inline-stats > .sf-dashboard-mini-card,.sf-dashboard-split-grid > .sf-dashboard-panel{min-width:0}
.sf-dashboard-section-head > *{min-width:0}
.sf-dashboard-section-head .button{align-self:center;white-space:nowrap}
.sf-dashboard-table th,.sf-dashboard-table td{word-break:break-word}
.sf-dashboard-eyebrow{display:none}
.sf-dashboard-basic::before,.sf-dashboard-basic::after,.sf-dashboard-section::before,.sf-dashboard-section::after,.sf-dashboard-panel::before,.sf-dashboard-panel::after{content:none !important;display:none !important;border:none !important}

@media (max-width: 1080px){
  .sf-dashboard-internal-nav{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media (max-width: 768px){
  .sf-dashboard-hero{padding:16px 18px}
  .sf-dashboard-internal-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .sf-dashboard-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sf-dashboard-inline-stats{grid-template-columns:1fr}
}

@media (max-width: 520px){
  .sf-dashboard-cards,.sf-dashboard-internal-nav{grid-template-columns:1fr}
}

/* Astra layout cleanup for StudioFlow dashboard/account pages */
body .ast-container,
body .site-content > .ast-container,
body .content-area,
body .site-main,
body #primary,
body #secondary{
  border:none !important;
  box-shadow:none !important;
}

body.ast-right-sidebar #primary,
body.ast-left-sidebar #primary,
body.ast-separate-container #primary,
body.ast-separate-container.ast-right-sidebar #primary,
body.ast-separate-container.ast-left-sidebar #primary,
body.ast-page-builder-template #primary,
body.page-template-default #primary{
  border:none !important;
  box-shadow:none !important;
  background:transparent !important;
}

body.ast-right-sidebar #secondary,
body.ast-left-sidebar #secondary{
  border:none !important;
  box-shadow:none !important;
}

body .widget-area,
body .sidebar-main,
body aside.widget-area{
  border:none !important;
  box-shadow:none !important;
  background:transparent !important;
}

body .sf-auth-page-wrap,
body .sf-auth-page-inner,
body .sf-dashboard-basic{
  position:relative;
  z-index:2;
}


/* v1.18.9 dashboard appointments readability */
.sf-dashboard-online-callout{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:0 0 18px;padding:18px 20px;border:1px solid #e5e7eb;border-radius:16px;background:#fff7ed}
.sf-dashboard-online-label{display:inline-block;margin-bottom:8px;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#9a3412}
.sf-dashboard-online-callout h4{margin:0 0 6px;font-size:1.25rem}
.sf-dashboard-online-callout p{margin:0;color:#6b7280}
.sf-dashboard-online-actions{display:flex;align-items:center;justify-content:flex-end;flex:0 0 auto}
.sf-dashboard-table-appointments{min-width:0}
.sf-dashboard-table-appointments th:nth-child(1),.sf-dashboard-table-appointments td:nth-child(1){width:40%}
.sf-dashboard-table-appointments th:nth-child(2),.sf-dashboard-table-appointments td:nth-child(2){width:24%;white-space:nowrap}
.sf-dashboard-table-appointments th:nth-child(3),.sf-dashboard-table-appointments td:nth-child(3){width:16%}
.sf-dashboard-table-appointments th:nth-child(4),.sf-dashboard-table-appointments td:nth-child(4){width:20%}
.sf-dashboard-table-appointments td:nth-child(4){white-space:nowrap}

@media (max-width: 1080px){
  .sf-dashboard-split-grid{grid-template-columns:1fr;gap:16px}
}

@media (max-width: 768px){
  .sf-dashboard-online-callout{flex-direction:column;align-items:flex-start}
  .sf-dashboard-online-actions{width:100%}
  .sf-dashboard-online-actions .sf-room-link-button{width:100%}
}


/* v1.18.11 appointments compact columns */
.sf-dashboard-table-appointments{table-layout:auto !important;min-width:0 !important;width:100% !important}
.sf-dashboard-table-appointments th,.sf-dashboard-table-appointments td{white-space:normal !important;word-break:normal !important;overflow-wrap:break-word;vertical-align:middle}
.sf-dashboard-table-appointments th:nth-child(1),.sf-dashboard-table-appointments td:nth-child(1){width:44% !important;min-width:220px}
.sf-dashboard-table-appointments th:nth-child(2),.sf-dashboard-table-appointments td:nth-child(2){width:23% !important;min-width:165px;white-space:nowrap !important}
.sf-dashboard-table-appointments th:nth-child(3),.sf-dashboard-table-appointments td:nth-child(3){width:15% !important;min-width:120px}
.sf-dashboard-table-appointments th:nth-child(4),.sf-dashboard-table-appointments td:nth-child(4){width:18% !important;min-width:170px}
.sf-dashboard-table-appointments .sf-room-link-button{min-width:150px}
.sf-dashboard-split-grid > .sf-dashboard-panel{min-width:0}

@media (max-width: 1280px){
  .sf-dashboard-split-grid{grid-template-columns:1fr !important;}
}

@media (max-width: 768px){
  .sf-dashboard-table-appointments th:nth-child(1),.sf-dashboard-table-appointments td:nth-child(1),
  .sf-dashboard-table-appointments th:nth-child(2),.sf-dashboard-table-appointments td:nth-child(2),
  .sf-dashboard-table-appointments th:nth-child(3),.sf-dashboard-table-appointments td:nth-child(3),
  .sf-dashboard-table-appointments th:nth-child(4),.sf-dashboard-table-appointments td:nth-child(4){width:auto !important;min-width:0 !important;white-space:normal !important}
}


/* v1.18.11 appointments without status column */
.sf-dashboard-table-appointments{table-layout:fixed !important;min-width:0 !important;width:100% !important}
.sf-dashboard-table-appointments th,.sf-dashboard-table-appointments td{white-space:normal !important;word-break:normal !important;overflow-wrap:break-word;vertical-align:middle}
.sf-dashboard-table-appointments th:nth-child(1),.sf-dashboard-table-appointments td:nth-child(1){width:48% !important;min-width:0 !important}
.sf-dashboard-table-appointments th:nth-child(2),.sf-dashboard-table-appointments td:nth-child(2){width:28% !important;min-width:0 !important;white-space:nowrap !important}
.sf-dashboard-table-appointments th:nth-child(3),.sf-dashboard-table-appointments td:nth-child(3){width:24% !important;min-width:0 !important;white-space:nowrap !important}
.sf-dashboard-table-appointments td:nth-child(3),.sf-dashboard-table-appointments td[data-label="Accesso online"]{text-align:left}
.sf-dashboard-table-appointments .sf-room-link-button{min-width:0;width:auto;display:inline-flex;align-items:center;justify-content:center}
@media (max-width: 980px){
  .sf-dashboard-table-appointments th:nth-child(1),.sf-dashboard-table-appointments td:nth-child(1),
  .sf-dashboard-table-appointments th:nth-child(2),.sf-dashboard-table-appointments td:nth-child(2),
  .sf-dashboard-table-appointments th:nth-child(3),.sf-dashboard-table-appointments td:nth-child(3){width:auto !important;white-space:normal !important}
}


/* v1.18.13 remote mix room mobile layout */


/* v1.18.15 stacked appointments panels */
.sf-dashboard-split-grid{grid-template-columns:1fr !important;gap:24px !important;}
.sf-dashboard-table-appointments th:nth-child(1),.sf-dashboard-table-appointments td:nth-child(1){width:48% !important;min-width:260px !important;}
.sf-dashboard-table-appointments th:nth-child(2),.sf-dashboard-table-appointments td:nth-child(2){width:28% !important;min-width:220px !important;white-space:nowrap !important;}
.sf-dashboard-table-appointments th:nth-child(3),.sf-dashboard-table-appointments td:nth-child(3){width:24% !important;min-width:180px !important;}
.sf-dashboard-table-appointments .sf-room-link-button{display:inline-flex;align-items:center;justify-content:center;min-width:160px;white-space:nowrap;}
@media (max-width: 768px){
  .sf-dashboard-split-grid{gap:16px !important;}
  .sf-dashboard-table-appointments th:nth-child(1),.sf-dashboard-table-appointments td:nth-child(1),
  .sf-dashboard-table-appointments th:nth-child(2),.sf-dashboard-table-appointments td:nth-child(2),
  .sf-dashboard-table-appointments th:nth-child(3),.sf-dashboard-table-appointments td:nth-child(3){width:auto !important;min-width:0 !important;white-space:normal !important;}
}


/* v1.19.2 admin console */
.sf-admin-console-table th,.sf-admin-console-table td{vertical-align:middle}
.sf-admin-console-table th:nth-child(1),.sf-admin-console-table td:nth-child(1){width:10%;white-space:nowrap}
.sf-admin-console-table th:nth-child(2),.sf-admin-console-table td:nth-child(2){width:8%;white-space:nowrap}
.sf-admin-console-table th:nth-child(3),.sf-admin-console-table td:nth-child(3){width:20%}
.sf-admin-console-table th:nth-child(4),.sf-admin-console-table td:nth-child(4){width:20%}
.sf-admin-console-table th:nth-child(5),.sf-admin-console-table td:nth-child(5){width:10%;white-space:nowrap}
.sf-admin-console-table th:nth-child(6),.sf-admin-console-table td:nth-child(6){width:12%;white-space:nowrap}
.sf-admin-console-table th:nth-child(7),.sf-admin-console-table td:nth-child(7){width:20%}
.sf-admin-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.sf-admin-online-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.sf-admin-online-card{display:flex;flex-direction:column;gap:8px;padding:18px}
.sf-admin-quick-links{flex-wrap:wrap}
@media (max-width: 1100px){.sf-admin-online-grid{grid-template-columns:1fr}}
@media (max-width: 980px){.sf-admin-console-table{table-layout:auto !important}.sf-admin-console-table th:nth-child(1),.sf-admin-console-table td:nth-child(1),.sf-admin-console-table th:nth-child(2),.sf-admin-console-table td:nth-child(2),.sf-admin-console-table th:nth-child(3),.sf-admin-console-table td:nth-child(3),.sf-admin-console-table th:nth-child(4),.sf-admin-console-table td:nth-child(4),.sf-admin-console-table th:nth-child(5),.sf-admin-console-table td:nth-child(5),.sf-admin-console-table th:nth-child(6),.sf-admin-console-table td:nth-child(6),.sf-admin-console-table th:nth-child(7),.sf-admin-console-table td:nth-child(7){width:auto !important;min-width:0 !important;white-space:normal !important}}

/* v1.19.3 admin console google calendar */
.sf-dashboard-cards-overview{grid-template-columns:repeat(5,minmax(0,1fr));}
.sf-admin-console-table th:nth-child(1),.sf-admin-console-table td:nth-child(1){width:10%;white-space:nowrap}
.sf-admin-console-table th:nth-child(2),.sf-admin-console-table td:nth-child(2){width:8%;white-space:nowrap}
.sf-admin-console-table th:nth-child(3),.sf-admin-console-table td:nth-child(3){width:22%}
.sf-admin-console-table th:nth-child(4),.sf-admin-console-table td:nth-child(4){width:22%}
.sf-admin-console-table th:nth-child(5),.sf-admin-console-table td:nth-child(5){width:12%;white-space:nowrap}
.sf-admin-console-table th:nth-child(6),.sf-admin-console-table td:nth-child(6){width:12%;white-space:nowrap}
.sf-admin-console-table th:nth-child(7),.sf-admin-console-table td:nth-child(7){width:14%}
@media (max-width: 1280px){.sf-dashboard-cards-overview{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (max-width: 900px){.sf-dashboard-cards-overview{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width: 560px){.sf-dashboard-cards-overview{grid-template-columns:1fr;}}

.sf-hp-field{position:absolute !important;left:-9999px !important;top:auto !important;width:1px !important;height:1px !important;overflow:hidden !important;opacity:0 !important;pointer-events:none !important;}

.sf-forgot{margin:12px 0 0;text-align:left}
.sf-forgot-inline{margin:8px 0 14px}
.sf-forgot a{display:inline-block;font-weight:700;text-decoration:none;color:#111827;border-bottom:1px solid currentColor;padding-bottom:2px}
.sf-forgot a:hover{opacity:.78}

/* Hide duplicate forgot-password link outside the login form */
.sf-auth-panel#sf-login > .sf-forgot, .sf-auth-panel#sf-login > p.sf-forgot{display:none !important;}

/* Admin console frontend nav buttons */
.sf-admin-console-top-actions,
.sf-admin-quick-links{display:flex;flex-wrap:wrap;gap:12px}
.sf-admin-console-nav-form{margin:0}
.sf-admin-console-nav-form .button{appearance:none;-webkit-appearance:none;cursor:pointer}


/* === Auth / Dashboard Polish Safe v1.19.8.27 === */
.sf-auth-container,
.sf-dashboard-basic{
  max-width:1100px;
}
.sf-auth-panel,
.sf-dashboard-section{
  border-radius:24px !important;
}
.sf-dashboard-section-head{
  gap:16px;
}
.sf-dashboard-card-highlight{
  box-shadow:0 16px 36px rgba(0,0,0,.08);
}
.sf-dashboard-internal-nav a{
  border-radius:999px;
  padding:.7em 1.05em;
  background:rgba(15,23,42,.04);
}
.sf-dashboard-internal-nav a:hover{
  background:rgba(15,23,42,.08);
}



/* Google login */
.sf-google-auth-wrap{margin-top:16px;width:100%;max-width:100%;overflow:visible}
.sf-google-auth-divider{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;max-width:100%;margin:14px 0 16px;overflow:visible;box-sizing:border-box}
.sf-google-auth-divider:before,.sf-google-auth-divider:after{content:"";display:block;flex:1 1 0;min-width:0;border-top:1px solid #e5e7eb}
.sf-google-auth-divider span{position:static;display:block;flex:0 0 auto;max-width:none;min-width:max-content;margin:0;padding:0 2px;background:transparent;color:#6b7280;font-size:13px;line-height:1.4;white-space:nowrap;overflow:visible;clip:auto}
.sf-google-button-slot{display:flex;justify-content:center;width:100%;max-width:100%;min-height:44px;padding:0 20px;overflow:visible;box-sizing:border-box}
.sf-google-button-slot > div,.sf-google-button-slot iframe{display:block!important;max-width:100%!important;margin:0 auto!important;box-sizing:border-box!important;overflow:visible!important}
.sf-auth-google-dynamic{margin-bottom:16px}

/* StudioFlow customer dashboard accordions */
.sf-dashboard-accordion{display:block}
.sf-dashboard-accordion > summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;font-weight:800;font-size:1.05rem;padding:0;margin:0 0 12px 0}
.sf-dashboard-accordion > summary::-webkit-details-marker{display:none}
.sf-dashboard-accordion > summary::after{content:'Apri';font-size:.82rem;font-weight:700;color:#475569;background:#f8fafc;border:1px solid #e5e7eb;border-radius:999px;padding:7px 12px;margin-left:auto}
.sf-dashboard-accordion[open] > summary::after{content:'Chiudi'}
.sf-dashboard-accordion.sf-dashboard-panel > summary{margin-bottom:0}
.sf-dashboard-accordion.sf-dashboard-panel[open] > summary{margin-bottom:12px}
.sf-dashboard-table-open-rooms{min-width:420px}
@media (max-width: 680px){
  .sf-dashboard-accordion > summary{align-items:flex-start;flex-wrap:wrap}
  .sf-dashboard-accordion > summary::after{margin-left:0}
  .sf-dashboard-table-open-rooms{min-width:0}
}

/* StudioFlow engineer frontend dashboard */
.sf-engineer-dashboard .sf-dashboard-hero{border-left:4px solid #111827}
.sf-engineer-cards{grid-template-columns:repeat(3,minmax(0,1fr));}
.sf-engineer-table th,.sf-engineer-table td{vertical-align:middle}
.sf-engineer-table .button{white-space:nowrap}
@media (max-width: 760px){
  .sf-engineer-cards{grid-template-columns:1fr;}
  .sf-engineer-table{min-width:0;}
  .sf-engineer-table thead{display:none;}
  .sf-engineer-table tr{display:block;border:1px solid #e5e7eb;border-radius:18px;padding:12px;margin:0 0 12px;background:#fff;}
  .sf-engineer-table td{display:flex;justify-content:space-between;gap:14px;border:0 !important;padding:8px 0 !important;text-align:right;}
  .sf-engineer-table td::before{content:attr(data-label);font-weight:800;color:#475569;text-align:left;}
  .sf-engineer-table td[data-label="Apri"],.sf-engineer-table td[data-label="Link"]{display:block;text-align:left;}
  .sf-engineer-table td[data-label="Apri"]::before,.sf-engineer-table td[data-label="Link"]::before{display:block;margin-bottom:8px;}
  .sf-engineer-table .button{width:100%;text-align:center;}
}


/* ==========================================================
   StudioGaudio — LINEE GUIDA GRAFICHE UFFICIALI
   SOLO STILE — nessuna modifica funzionale
   Titoli: Impact / Arial Narrow / Helvetica Neue
   Testi/UI: Arial / Helvetica
   Accent: #FBB03A
   Testi: #FFFFFF
   Mai grigio
   ========================================================== */

:root{
  --sg-brand:#FBB03A!important;
  --ssf-orange:#FBB03A!important;
  --ssf-orange2:#FBB03A!important;
  --accent:#FBB03A!important;
  --sf-accent:#FBB03A!important;
  --studioflow-accent:#FBB03A!important;
}

/* Base StudioFlow */
body .studioflow-wrap,
body .studioflow-booking,
body [class*="studioflow-"],
body [class*="sfb-"],
body [class*="sf-"]{
  font-family:Arial,Helvetica,sans-serif!important;
}

/* Titoli */
body .studioflow-wrap h1,
body .studioflow-wrap h2,
body .studioflow-wrap h3,
body .studioflow-booking h1,
body .studioflow-booking h2,
body .studioflow-booking h3,
body [class*="studioflow-"] h1,
body [class*="studioflow-"] h2,
body [class*="studioflow-"] h3{
  font-family:Impact,'Arial Narrow','Helvetica Neue',Arial,sans-serif!important;
  font-weight:900!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}

/* Testi e UI */
body .studioflow-wrap p,
body .studioflow-wrap li,
body .studioflow-wrap span,
body .studioflow-wrap small,
body .studioflow-wrap label,
body .studioflow-booking p,
body .studioflow-booking li,
body .studioflow-booking span,
body .studioflow-booking small,
body .studioflow-booking label,
body [class*="studioflow-"] p,
body [class*="studioflow-"] li,
body [class*="studioflow-"] span,
body [class*="studioflow-"] small,
body [class*="studioflow-"] label{
  font-family:Arial,Helvetica,sans-serif!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}

/* Input / select / textarea */
body .studioflow-wrap input,
body .studioflow-wrap select,
body .studioflow-wrap textarea,
body .studioflow-booking input,
body .studioflow-booking select,
body .studioflow-booking textarea,
body [class*="studioflow-"] input,
body [class*="studioflow-"] select,
body [class*="studioflow-"] textarea{
  font-family:Arial,Helvetica,sans-serif!important;
}

/* Placeholder: bianco, non grigio */
body .studioflow-wrap input::placeholder,
body .studioflow-wrap textarea::placeholder,
body .studioflow-booking input::placeholder,
body .studioflow-booking textarea::placeholder,
body [class*="studioflow-"] input::placeholder,
body [class*="studioflow-"] textarea::placeholder{
  color:#FFFFFF!important;
  opacity:.72!important;
}

/* Elementi accent */
body .studioflow-wrap [class*="badge"],
body .studioflow-wrap [class*="kicker"],
body .studioflow-wrap [class*="label"],
body .studioflow-booking [class*="badge"],
body .studioflow-booking [class*="kicker"],
body .studioflow-booking [class*="label"]{
  color:#FBB03A!important;
}

/* Pulsanti */
body .studioflow-wrap button,
body .studioflow-wrap .button,
body .studioflow-booking button,
body .studioflow-booking .button,
body [class*="studioflow-"] button,
body [class*="studioflow-"] .button{
  font-family:Arial,Helvetica,sans-serif!important;
  font-weight:900!important;
}

/* Regola finale: niente testi grigi nelle aree StudioFlow */
body .studioflow-wrap,
body .studioflow-booking,
body [class*="studioflow-"]{
  --text-color:#FFFFFF!important;
  --muted-color:#FFFFFF!important;
  --secondary-text:#FFFFFF!important;
}


/* ==========================================================
   v1.30.7.71 — AREA CLIENTI: SOLO LINEE GUIDA STUDIOGAUDIO
   Nessuna modifica strutturale o funzionale.
   ========================================================== */
.sf-auth-page-wrap,
.sf-auth-page-inner,
.sf-auth-container,
.sf-dashboard-basic{
  font-family:Arial,Helvetica,sans-serif!important;
  color:#FFFFFF!important;
}

/* Main surfaces */
.sf-auth-container,
.sf-dashboard-basic,
.sf-dashboard-hero,
.sf-dashboard-section,
.sf-dashboard-panel,
.sf-dashboard-card,
.sf-dashboard-mini-card,
.sf-dashboard-internal-nav,
.sf-dashboard-table-wrap{
  background:#0A0A0A!important;
  border-color:rgba(255,255,255,.14)!important;
  box-shadow:none!important;
}

/* Headings */
.sf-auth-page-hero h1,
.sf-auth-container h1,
.sf-auth-container h2,
.sf-auth-container h3,
.sf-dashboard-basic h1,
.sf-dashboard-basic h2,
.sf-dashboard-basic h3,
.sf-dashboard-basic h4,
.sf-dashboard-hero h2,
.sf-dashboard-section h3,
.sf-dashboard-section h4{
  font-family:Impact,'Arial Narrow','Helvetica Neue',Arial,sans-serif!important;
  font-weight:900!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}

/* All normal and secondary text: WHITE, never gray */
.sf-auth-page-hero p,
.sf-auth-container p,
.sf-auth-container label,
.sf-dashboard-basic p,
.sf-dashboard-basic li,
.sf-dashboard-basic span,
.sf-dashboard-basic small,
.sf-dashboard-basic label,
.sf-dashboard-card-label,
.sf-dashboard-mini-card span,
.sf-section-subtitle,
.sf-dashboard-empty,
.sf-dashboard-online-callout p,
.sf-dashboard-table th,
.sf-dashboard-table td,
.sf-profile-form label{
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  opacity:1!important;
}

/* Brand/accent elements */
.sf-dashboard-online-label,
.sf-dashboard-eyebrow{
  color:#FBB03A!important;
  -webkit-text-fill-color:#FBB03A!important;
}
.sf-dashboard-badge{
  background:#FBB03A!important;
  color:#080808!important;
  -webkit-text-fill-color:#080808!important;
}

/* Tabs */
.sf-auth-tabs,
.sf-client-nav{
  border-color:rgba(255,255,255,.14)!important;
}
.sf-tab{
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  font-family:Arial,Helvetica,sans-serif!important;
}
.sf-tab.active{
  color:#FFFFFF!important;
  border-bottom-color:#FBB03A!important;
}

/* Inputs */
.sf-auth-container input,
.sf-profile-form input{
  background:#080808!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  border-color:rgba(255,255,255,.20)!important;
  font-family:Arial,Helvetica,sans-serif!important;
}
.sf-auth-container input::placeholder,
.sf-profile-form input::placeholder{
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  opacity:.72!important;
}
.sf-auth-container input:focus,
.sf-profile-form input:focus{
  border-color:#FBB03A!important;
  outline:none!important;
  box-shadow:0 0 0 1px #FBB03A!important;
}

/* Navigation */
.sf-client-nav a,
.sf-dashboard-internal-nav a{
  background:#080808!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  border-color:rgba(255,255,255,.18)!important;
  border-radius:3px!important;
}
.sf-client-nav a:hover,
.sf-dashboard-internal-nav a:hover{
  background:#FBB03A!important;
  color:#080808!important;
  -webkit-text-fill-color:#080808!important;
  border-color:#FBB03A!important;
}

/* Cards */
.sf-dashboard-card-highlight{
  background:#0A0A0A!important;
}
.sf-dashboard-card strong,
.sf-dashboard-mini-card strong{
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}

/* Empty / online callout */
.sf-dashboard-empty,
.sf-dashboard-online-callout{
  background:#0D0D0D!important;
  color:#FFFFFF!important;
  border-color:rgba(251,176,58,.35)!important;
}
.sf-dashboard-online-label{
  font-weight:900!important;
}

/* Tables */
.sf-dashboard-table th{
  background:#0D0D0D!important;
  color:#FFFFFF!important;
}
.sf-dashboard-table td{
  background:#0A0A0A!important;
}
.sf-dashboard-table th,
.sf-dashboard-table td{
  border-color:rgba(255,255,255,.11)!important;
}

/* Status pill */
.sf-status-pill{
  background:#0D0D0D!important;
  border-color:#FBB03A!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}

/* Buttons: typography + official accent */
.sf-auth-container .button.button-primary,
.sf-auth-container button.button.button-primary,
.sf-dashboard-basic .button,
.sf-room-link-button,
.sf-profile-actions .button{
  background:#FBB03A!important;
  border-color:#FBB03A!important;
  color:#080808!important;
  -webkit-text-fill-color:#080808!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-weight:900!important;
  border-radius:3px!important;
  box-shadow:none!important;
}

/* Account menu dropdown */
.menu-item-studioflow-client-area > .sub-menu{
  background:#0A0A0A!important;
  border-color:rgba(255,255,255,.16)!important;
  border-radius:4px!important;
}
.menu-item-studioflow-client-area > .sub-menu::before{
  background:#0A0A0A!important;
  border-color:rgba(255,255,255,.16)!important;
}
.menu-item-studioflow-client-area > .sub-menu a{
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  background:transparent!important;
}
.menu-item-studioflow-client-area > .sub-menu a:hover,
.menu-item-studioflow-client-area > .sub-menu a:focus{
  background:#FBB03A!important;
  color:#080808!important;
  -webkit-text-fill-color:#080808!important;
}
.menu-item-studioflow-client-area > .sub-menu .menu-item-studioflow-logout a{
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}
.menu-item-studioflow-client-area > .sub-menu .menu-item-studioflow-logout a:hover,
.menu-item-studioflow-client-area > .sub-menu .menu-item-studioflow-logout a:focus{
  background:#FBB03A!important;
  color:#080808!important;
  -webkit-text-fill-color:#080808!important;
}

/* Mobile table cards */
@media(max-width:768px){
  .sf-dashboard-table tr{
    background:#0A0A0A!important;
    border-color:rgba(255,255,255,.14)!important;
    box-shadow:none!important;
  }
  .sf-dashboard-table td::before{
    color:#FFFFFF!important;
    -webkit-text-fill-color:#FFFFFF!important;
  }
}

/* v1.30.7.83 - registration readability and password validation */
.sf-auth-container textarea,
.sf-profile-form textarea{
  background:#080808!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  caret-color:#FFFFFF!important;
  border-color:rgba(255,255,255,.20)!important;
  font-family:Arial,Helvetica,sans-serif!important;
}
.sf-auth-container textarea::placeholder,
.sf-profile-form textarea::placeholder{
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  opacity:.72!important;
}
.sf-auth-container textarea:focus,
.sf-profile-form textarea:focus{
  border-color:#FBB03A!important;
  outline:none!important;
  box-shadow:0 0 0 1px #FBB03A!important;
}
.sf-password-field{display:flex;align-items:stretch;gap:8px;width:100%}
.sf-password-field input{flex:1;min-width:0}
.sf-password-toggle{
  flex:0 0 auto;
  padding:0 14px;
  border:1px solid #FBB03A!important;
  border-radius:3px;
  background:#080808!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  font:700 13px Arial,Helvetica,sans-serif;
  cursor:pointer;
}
.sf-password-toggle:hover,.sf-password-toggle:focus{
  background:#FBB03A!important;
  color:#080808!important;
  -webkit-text-fill-color:#080808!important;
  outline:none;
}
.sf-registration-extra{margin:4px 0 16px!important}
.sf-registration-extra label{display:flex!important;align-items:flex-start;gap:10px;line-height:1.45;cursor:pointer}
.sf-registration-extra input[type="checkbox"]{width:auto!important;flex:0 0 auto;margin:3px 0 0!important;accent-color:#FBB03A}
.sf-registration-extra a{color:#FBB03A!important;-webkit-text-fill-color:#FBB03A!important;text-decoration:underline}
