/* SMMTrusted: shared light palettes; loaded after Bootstrap/platform styles. */
:root { color-scheme:light; --st-bg:#f4f6f9; --st-surface:#fff; --st-soft:#f7f9fc; --st-ink:#202c3e; --st-muted:#637087; --st-border:#e1e6ed; --st-accent:#245fce; --st-active:#edf3ff; --st-button:#245fce; --st-button-text:#fff; --st-good:#22664b; --st-good-bg:#edf7f1; --st-shadow:0 5px 24px rgba(32,44,62,.035); }
html[data-palette="champagne"] { --st-bg:#f6f3ed; --st-surface:#fffefa; --st-soft:#f6f3ec; --st-ink:#2c2e2c; --st-muted:#6d7068; --st-border:#e3dfd4; --st-accent:#80622e; --st-active:#f0e7d6; --st-button:#303b35; --st-button-text:#fffefa; --st-shadow:0 5px 24px rgba(70,57,35,.035); }
.st-theme { padding-bottom:0; background:var(--st-bg); color:var(--st-ink); font:14px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; overflow-wrap:anywhere; }
.st-theme a { color:var(--st-accent); }
.st-theme a:hover { color:var(--st-ink); }
.st-theme h1,.st-theme h2,.st-theme h3,.st-theme h4 { color:var(--st-ink); font-family:inherit; font-weight:650; }
.st-theme [hidden] { display:none !important; }
.st-theme :focus-visible { outline:3px solid var(--st-accent); outline-offset:3px; }
.st-skip-link { position:fixed; top:-80px; inset-inline-start:16px; z-index:2000; padding:10px 16px; background:var(--st-surface); border:1px solid var(--st-accent); border-radius:8px; }
.st-skip-link:focus { top:10px; }
.st-sidebar { position:fixed; inset-block:0; inset-inline-start:0; width:226px; z-index:1030; display:flex; flex-direction:column; background:var(--st-surface); border-inline-end:1px solid var(--st-border); }
.st-brand { min-height:92px; padding:24px 22px; display:flex; gap:10px; align-items:center; font-size:16px; font-weight:750; letter-spacing:-.5px; color:var(--st-ink) !important; text-decoration:none !important; overflow-wrap:anywhere; }
.st-brand img { max-width:180px; max-height:44px; object-fit:contain; }
.st-brand-mark { display:grid; flex:0 0 34px; height:34px; place-items:center; background:var(--st-button); color:var(--st-button-text); border-radius:10px; font-size:19px; }
.st-sidebar nav { padding:10px 14px; overflow-y:auto; }
.st-navigation { list-style:none; padding:0; margin:0; }
.st-navigation li { margin-bottom:5px; }
.st-navigation a { display:flex; align-items:center; gap:13px; min-height:46px; border-radius:10px; padding:11px 14px; font-weight:550; color:var(--st-muted); text-decoration:none; }
.st-navigation a:hover { background:var(--st-soft); }
.st-navigation .active a { color:var(--st-accent); background:var(--st-active); font-weight:650; }
.st-navigation .navbar-icon { width:18px; text-align:center; font-size:17px; }
.st-nav-dot { width:14px; height:14px; border:1.5px solid currentColor; border-radius:4px; flex-shrink:0; opacity:.7; }
.st-navigation .active .st-nav-dot { box-shadow:inset 0 0 0 3px var(--st-active); background:currentColor; }
.st-sidebar-foot { padding:22px 28px; margin-top:auto; border-top:1px solid var(--st-border); color:var(--st-muted); overflow-wrap:anywhere; }
.st-status-dot { display:inline-block; width:7px; height:7px; border-radius:50%; background:var(--st-good); margin-inline-end:10px; }
.st-topbar { min-height:74px; margin-inline-start:226px; padding:12px 34px; display:flex; justify-content:space-between; align-items:center; gap:20px; background:var(--st-surface); border-bottom:1px solid var(--st-border); }
.st-breadcrumb { display:flex; gap:12px; align-items:center; color:var(--st-muted); font-size:12px; min-width:0; }
.st-breadcrumb strong { color:var(--st-ink); font-weight:550; }
.st-topbar-actions { display:flex; align-items:center; gap:14px; flex-shrink:0; }
.st-account-menu { display:flex; float:none; align-items:center; margin:0; gap:2px; }
.st-account-menu > li { float:none; }
.st-account-menu > li > a { color:var(--st-muted); padding:8px 10px; border-radius:8px; cursor:pointer; }
.st-account-menu > li > a:hover,.st-account-menu > li > a:focus,.st-account-menu > .open > a { background:var(--st-soft); color:var(--st-ink); }
.st-account-menu .badge { padding:7px 10px; color:var(--st-good); background:var(--st-good-bg); font-size:13px; font-weight:650; border-radius:7px; }
.st-account-menu .dropdown-menu { inset-inline-start:auto; inset-inline-end:0; }
.st-palette-toggle { position:relative; display:inline-flex; align-items:center; justify-content:center; flex:0 0 34px; width:34px; height:34px; padding:0; border:1px solid var(--st-border); border-radius:10px; background:var(--st-surface); cursor:pointer; vertical-align:middle; }
.st-palette-toggle:hover { border-color:var(--st-accent); background:var(--st-soft); }
.st-swatch { width:12px; height:12px; border-radius:50%; border:2px solid var(--st-surface); }
.st-swatch-blue { background:#497dce; z-index:1; }
.st-swatch-gold { background:#bd9b5e; margin-inline-start:-3px; }
[data-palette="champagne"] .st-swatch-gold { z-index:2; }
.st-main { margin-inline-start:226px; padding:32px 34px 60px; min-height:calc(100vh - 74px); }
.st-main > .container,.st-main > .container-fluid { width:100%; max-width:1440px; padding-inline:0; }
.st-page-heading { max-width:1440px; margin:0 auto 28px; }
.st-eyebrow { color:var(--st-muted); font-size:10px; text-transform:uppercase; letter-spacing:1.6px; font-weight:650; }
.st-page-heading h1 { margin:5px 0 0; font-size:clamp(26px,2.2vw,34px); line-height:1.25; letter-spacing:-.9px; }
.st-theme .well,.st-theme .panel,.st-theme .modal-content { background:var(--st-surface); border:1px solid var(--st-border); border-radius:16px; box-shadow:var(--st-shadow); }
.st-theme .well { padding:26px; margin-bottom:24px; min-width:0; }
.st-theme .panel-heading,.st-theme .panel-footer,.st-theme .modal-header,.st-theme .modal-footer { border-color:var(--st-border); background:var(--st-soft); }
.st-theme .panel-heading,.st-theme .modal-header { border-radius:15px 15px 0 0; }
.st-theme .panel-footer,.st-theme .modal-footer { border-radius:0 0 15px 15px; }
.st-theme label { margin-bottom:8px; font-size:12px; font-weight:600; color:var(--st-ink); }
.st-theme .form-group { margin-bottom:22px; }
.st-theme .forgot-password { position:static; display:block; margin-top:8px; text-align:end; font-size:12px; }
.st-theme .form-control { min-height:46px; height:auto; padding:11px 13px; background:var(--st-surface); border:1px solid var(--st-border); border-radius:9px; box-shadow:none; color:var(--st-ink); font-size:14px; line-height:1.55; }
.st-theme .form-control:focus { border-color:var(--st-accent); box-shadow:0 0 0 3px var(--st-active); }
.st-theme .form-control::placeholder { color:var(--st-muted); opacity:.8; }
.st-theme .form-control[readonly],.st-theme .form-control[disabled] { background:var(--st-soft); }
.st-theme textarea.form-control { resize:vertical; }
.st-theme .help-block { color:var(--st-muted); font-size:12px; margin-top:7px; }
.st-theme input[type="checkbox"],.st-theme input[type="radio"] { accent-color:var(--st-accent); }
.st-theme .btn { border-radius:9px; font-size:13px; font-weight:600; padding:11px 18px; min-height:42px; line-height:1.5; white-space:normal; }
.st-theme .btn-primary { background:var(--st-button); border-color:var(--st-button); color:var(--st-button-text); }
.st-theme .btn-primary:hover,.st-theme .btn-primary:focus,.st-theme .btn-primary:active { background:var(--st-button); border-color:var(--st-button); color:var(--st-button-text); filter:brightness(.93); }
.st-theme .btn-default { background:var(--st-surface); border-color:var(--st-border); color:var(--st-ink); }
.st-theme .btn-default:hover { background:var(--st-soft); border-color:var(--st-accent); }
.st-theme .btn-xs,.st-theme .btn-sm { min-height:34px; padding:7px 11px; font-size:12px; }
.st-theme .input-group .form-control { border-start-end-radius:0; border-end-end-radius:0; }
.st-theme .input-group-btn .btn { min-height:46px; border-start-start-radius:0; border-end-start-radius:0; }
.st-theme .dropdown-menu { background:var(--st-surface); border:1px solid var(--st-border); border-radius:12px; padding:6px; box-shadow:0 12px 35px rgba(20,30,50,.12); }
.st-theme .dropdown-menu > li > a { color:var(--st-ink); padding:9px 13px; border-radius:6px; white-space:normal; }
.st-theme .dropdown-menu > li > a:hover,.st-theme .dropdown-menu > .active > a { background:var(--st-active); color:var(--st-accent); }
.st-theme .nav-pills { margin-bottom:20px; display:flex; flex-wrap:wrap; align-items:center; gap:6px; }
.st-theme .nav-pills:before,.st-theme .nav-pills:after { display:none; }
.st-theme .nav-pills > li { float:none; margin:0; }
.st-theme .nav-pills > li > a { padding:9px 13px; color:var(--st-muted); border-radius:8px; font-weight:550; }
.st-theme .nav-pills > li > a:hover { background:var(--st-surface); }
.st-theme .nav-pills > li.active > a { background:var(--st-active); color:var(--st-accent); }
.st-theme .nav-pills .search { margin-inline-start:auto; min-width:240px; }
.st-theme .table { margin-bottom:0; color:var(--st-ink); font-size:13px; }
.st-theme .table > thead > tr > th { background:var(--st-soft); color:var(--st-muted); font-size:11px; font-weight:650; border-bottom:1px solid var(--st-border); padding:13px 14px; vertical-align:middle; }
.st-theme .table > tbody > tr > td { border-color:var(--st-border); padding:17px 14px; vertical-align:middle; }
.st-theme .table > tbody > tr:hover { background:var(--st-soft); }
.st-theme .well-float { float:none; width:100%; min-width:0; max-width:100%; overflow-x:auto; }
.st-orders-page .table { min-width:1060px; }
.st-orders-page .table td:nth-child(2) { min-width:130px; }
.st-orders-page .table td:nth-child(3) { min-width:170px; max-width:240px; overflow-wrap:anywhere; }
.st-orders-page .table td:nth-child(7) { min-width:220px; max-width:300px; }
.st-theme .table .nowrap { white-space:nowrap; }
.st-theme .pagination > li > a,.st-theme .pagination > li > span { background:var(--st-surface); color:var(--st-ink); border-color:var(--st-border); }
.st-theme .pagination > .active > a { background:var(--st-button); color:var(--st-button-text); }
.st-theme .alert { border-radius:10px; font-size:13px; overflow-wrap:anywhere; }
.st-theme .alert-success { background:var(--st-good-bg); color:var(--st-good); border-color:#c9dfd2; }
.st-theme .text-muted { color:var(--st-muted); }
.st-theme .select2-container { max-width:100%; }
.st-theme .select2-container--default .select2-selection--single { height:auto; min-height:48px; border:1px solid var(--st-border); border-radius:9px; background:var(--st-surface); }
.st-theme .select2-container--default .select2-selection--single .select2-selection__rendered { padding:12px 34px 12px 13px; line-height:1.65; white-space:normal; color:var(--st-ink); overflow-wrap:anywhere; }
.st-theme .select2-container--default .select2-selection--single .select2-selection__arrow { top:50%; transform:translateY(-50%); inset-inline-end:10px; }
.st-theme .select2-dropdown { border:1px solid var(--st-border); border-radius:9px; background:var(--st-surface); overflow:hidden; box-shadow:var(--st-shadow); }
.st-theme .select2-results__option { padding:10px 13px; font-size:13px; }
.st-theme .select2-container--default .select2-results__option--highlighted[aria-selected] { background:var(--st-active); color:var(--st-accent); }
.st-theme .select2-container--default .select2-search--dropdown .select2-search__field { border:1px solid var(--st-border); border-radius:6px; padding:8px; background:var(--st-surface); color:var(--st-ink); }
/* Keep form columns stable when a service has no description; only viewport size changes the layout. */
.st-order-grid { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr); gap:24px; align-items:start; }
.st-order-card { padding:28px !important; }
.st-order-page #template-input { padding-inline-start:40px; background:var(--st-soft); }
.st-service-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:-3px 0 25px; padding:14px 16px; border:1px solid var(--st-border); border-radius:10px; background:var(--st-soft); }
.st-metric-label { display:block; margin-bottom:5px; font-size:11px; color:var(--st-muted); }
.st-service-metric strong { display:block; font-size:14px; color:var(--st-accent); font-weight:650; overflow-wrap:anywhere; }
.st-time-metric { padding-inline-start:16px; border-inline-start:1px solid var(--st-border); }
.st-time-metric strong { color:var(--st-ink); }
.st-average-promoted { display:none !important; }
.st-detail-card { position:sticky; top:24px; padding:24px !important; }
.st-detail-title { font-size:16px; margin:0 0 18px; }
.st-detail-card .panel-body { border:0; padding:0; background:transparent; font-size:13px; line-height:1.85; overflow-wrap:anywhere; color:var(--st-muted); }
.st-detail-card .form-group { margin-bottom:0; }
.st-detail-card img { max-width:100%; height:auto; }
.st-charge { display:flex; align-items:center; gap:20px; padding-top:21px; border-top:1px solid var(--st-border); }
.st-charge label { margin:0; flex:1; font-size:13px; }
.st-charge #charge { width:55%; min-height:0; padding:0; background:transparent; border:0; box-shadow:none; text-align:end; font-size:27px; line-height:1.4; font-weight:650; letter-spacing:-.8px; }
.st-order-submit { width:100%; min-height:48px !important; }
.st-theme .st-service-table-wrap { padding:0; }
.st-service-toolbar .dropdown-menu { max-height:360px; max-width:min(430px,85vw); overflow-y:auto; min-width:240px; }
.st-service-toolbar > li:first-child .btn { background:var(--st-surface); color:var(--st-ink); border-color:var(--st-border); }
.st-service-toolbar [data-filter-active-category] { display:inline-block; max-width:260px; vertical-align:middle; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.st-guest .st-main { margin-inline-start:0; max-width:1240px; margin-inline:auto; }
.st-guest .navbar-default { background:var(--st-surface); border-color:var(--st-border); padding:10px 0; margin-bottom:0; }
.st-guest .navbar-brand { color:var(--st-ink); font-size:18px; font-weight:700; }
.st-guest .navbar-brand img { max-height:35px; max-width:180px; }
.st-guest .navbar-nav > li > a { color:var(--st-muted); border-radius:8px; }
.st-guest .navbar-nav > .active > a { background:var(--st-active); color:var(--st-accent); }
.st-guest .navbar-header .st-palette-toggle { float:right; margin:8px; }
.st-guest .navbar-toggle { border:1px solid var(--st-border); border-radius:8px; }
[dir="rtl"] .st-theme .select2-selection__rendered { padding-inline:13px 34px; text-align:right; }
[dir="rtl"] .st-theme .select2-selection__arrow { left:10px; right:auto; }
@media (min-width:1200px) { .st-main > .container > .row > .col-md-8.col-md-offset-2 { max-width:800px; width:75%; margin-inline:auto; float:none; } }
@media (max-width:1199px) {
  .st-sidebar { width:200px; } .st-brand { padding-inline:18px; font-size:14px; } .st-brand img { max-width:164px; }
  .st-main,.st-topbar { margin-inline-start:200px; padding-inline:24px; }
  .st-breadcrumb > span:first-child { display:none; } .st-order-grid { grid-template-columns:minmax(0,1fr); } .st-detail-card { position:static; }
}
@media (max-width:991px) {
  .st-sidebar { position:relative; width:100%; border-inline-end:0; border-bottom:1px solid var(--st-border); }
  .st-brand,.st-sidebar-foot { display:none; } .st-sidebar nav { padding:8px 18px; overflow:auto; }
  .st-navigation { display:flex; gap:5px; width:max-content; min-width:100%; } .st-navigation li { margin:0; }
  .st-navigation a { min-height:40px; padding:9px 13px; gap:8px; white-space:nowrap; font-size:12px; } .st-nav-dot { width:12px; height:12px; }
  .st-topbar { margin-inline-start:0; padding:12px 24px; min-height:64px; } .st-main { margin-inline-start:0; padding:26px 24px 40px; }
  .st-breadcrumb > span:first-child { display:block; } .st-page-heading { margin-bottom:24px; }
}
@media (max-width:600px) {
  .st-topbar { gap:8px; padding:10px 16px; } .st-breadcrumb { display:none; } .st-topbar-actions { width:100%; justify-content:space-between; gap:10px; }
  .st-account-menu > li > a { padding-inline:8px; font-size:12px; }
  .st-account-menu .dropdown-menu { position:absolute; background:var(--st-surface); inset-inline-start:0; inset-inline-end:auto; }
  .st-main { padding:24px 16px 40px; } .st-theme .well { padding:20px; border-radius:13px; } .st-order-card { padding:20px !important; }
  .st-theme .form-control { font-size:16px; } .st-theme .nav-pills .search { width:100%; min-width:0; margin-top:6px; }
  .st-service-summary { gap:8px; padding:12px; } .st-service-metric strong { font-size:13px; } .st-time-metric { padding-inline-start:12px; }
  .st-detail-card { padding:20px !important; } .st-theme .st-service-table-wrap { padding:0; }
  .st-service-toolbar [data-filter-active-category] { max-width:200px; } .st-guest .navbar-brand { font-size:16px; }
}
@media (prefers-reduced-motion:reduce) { .st-theme * { scroll-behavior:auto !important; transition:none !important; } }
@media print { .st-sidebar,.st-topbar,.st-palette-toggle { display:none; } .st-main { margin:0; padding:0; } }

/* Match the approved service picker: name first, price + time before selection. */
#orderform-service + .select2-container .select2-selection--single { min-height:68px; background:var(--st-soft); }
.st-service-option { display:grid; gap:5px; min-width:0; white-space:normal; }
.st-service-option-name { font-size:13px; font-weight:550; line-height:1.65; overflow-wrap:anywhere; }
.st-option-facts { display:flex; flex-wrap:wrap; align-items:center; gap:5px 16px; font-size:11px; line-height:1.65; }
.st-option-id { color:var(--st-muted); }
.st-option-price { color:var(--st-accent); font-weight:600; }
.st-option-time { color:var(--st-ink); font-weight:550; }
.st-theme .st-service-dropdown .select2-results > .select2-results__options { max-height:360px; padding:5px; }
.st-theme .st-service-dropdown .select2-results__option { padding:11px; margin:2px 0; border-radius:6px; }
.st-theme .st-service-dropdown .select2-results__option[aria-selected="true"],
.st-theme .st-service-dropdown .select2-results__option--selected,
.st-theme .st-service-dropdown .select2-results__option--highlighted[aria-selected] { background:var(--st-active); color:var(--st-accent); }
.st-theme .st-service-dropdown .select2-search--dropdown { padding:9px; border-bottom:1px solid var(--st-border); }
.st-theme .st-service-dropdown .select2-search__field { min-height:38px; }
.st-service-selection .st-option-id { font-size:11px; }
.st-order-card { padding:23px !important; }
@media (min-width:768px) { .st-order-grid { grid-template-columns:minmax(0,1fr) 250px; gap:18px; } }
@media (max-width:767px) {
  .st-order-grid { grid-template-columns:minmax(0,1fr); }
  .st-theme .st-service-dropdown .select2-search__field { font-size:16px; }
}

/* One native service table: aligned comparisons on desktop, labeled cards on mobile. */
.st-platform-filter { margin:0 0 12px; }
.st-filter-label { display:block; margin-bottom:9px; font-size:11px; font-weight:600; color:var(--st-muted); }
.st-platform-buttons { display:flex; flex-wrap:wrap; gap:7px; }
.st-platform-buttons button { min-height:40px; padding:8px 14px; border:1px solid var(--st-border); border-radius:8px; background:var(--st-surface); color:var(--st-muted); font-family:inherit; font-size:12px; font-weight:600; line-height:1.5; cursor:pointer; }
.st-platform-buttons button:hover { border-color:var(--st-accent); color:var(--st-accent); }
.st-platform-buttons button[aria-pressed="true"] { border-color:var(--st-accent); background:var(--st-active); color:var(--st-accent); }
.st-theme .st-platform-select { display:none; }
.st-filter-status { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:30px; margin-bottom:12px; color:var(--st-muted); font-size:12px; }
.st-filter-reset { min-height:36px; padding:6px 0; border:0; background:transparent; color:var(--st-accent); font:inherit; cursor:pointer; text-decoration:underline; text-underline-offset:3px; }
.st-filter-empty { text-align:center; padding-block:32px !important; }
.st-filter-empty p { margin-bottom:16px; color:var(--st-muted); }
.st-order-platform-filter { margin-bottom:22px; }
.st-order-platform-empty { padding:16px; margin-bottom:20px; border:1px solid var(--st-border); border-radius:9px; background:var(--st-soft); color:var(--st-muted); }
.st-order-platform-empty p { margin-bottom:12px; }
.st-theme .st-platform-hidden { display:none !important; }
@media (max-width:767px) {
  .st-platform-buttons { display:none; }
  .st-theme .st-platform-select { display:block; width:100%; }
  .st-filter-status { margin-bottom:10px; }
  .st-filter-reset { min-height:44px; }
}
.st-theme .st-service-table-wrap { overflow:hidden; }
#service-table { width:100%; table-layout:fixed; }
#service-table .st-service-favorite-heading { width:54px; }
#service-table .st-service-price-heading { width:110px; }
#service-table .st-service-time-heading { width:148px; }
#service-table .st-service-limits-heading { width:128px; }
#service-table .st-service-actions-heading { width:108px; }
#service-table .st-category-row td { padding:12px 16px; background:var(--st-active); color:var(--st-accent); overflow-wrap:anywhere; }
#service-table .st-service-row > td { padding:18px 14px; vertical-align:middle; overflow-wrap:anywhere; }
#service-table .service-name { max-width:none; font-size:13px; }
#service-table .st-service-title { display:block; font-weight:600; line-height:1.7; }
#service-table .st-service-id { display:block; margin-top:5px; color:var(--st-muted); font-size:11px; font-weight:400; }
#service-table .st-service-price { color:var(--st-accent); font-size:14px; font-weight:650; font-variant-numeric:tabular-nums; }
#service-table .st-service-time > span { background:transparent; color:var(--st-ink); font-size:13px; border-radius:0; padding:0; font-weight:550; }
#service-table .st-service-limits { color:var(--st-muted); font-size:12px; font-variant-numeric:tabular-nums; }
#service-table .st-service-min,#service-table .st-service-max { display:inline-block; }
#service-table .st-service-actions .btn { display:block; width:100%; margin:0; min-height:36px; padding:8px 7px; }
#service-table .st-service-actions button { margin-top:4px; border-color:transparent; background:transparent; color:var(--st-muted); }
#service-table .st-service-actions button:hover { border-color:var(--st-border); background:var(--st-surface); color:var(--st-accent); }
#service-table .st-service-favorite [data-favorite-icon] { display:none; }
#service-table .st-service-favorite [role="button"] { display:grid; place-items:center; width:32px; height:36px; color:var(--st-accent); cursor:pointer; border-radius:7px; }
#service-table [data-favorite-icon].fas + .st-favorite-symbol { fill:var(--st-accent); }
@media (min-width:768px) and (max-width:1199px) {
  #service-table .st-service-favorite-heading { width:44px; }
  #service-table .st-service-price-heading { width:88px; }
  #service-table .st-service-time-heading { width:120px; }
  #service-table .st-service-limits-heading { width:108px; }
  #service-table .st-service-actions-heading { width:90px; }
  .st-theme #service-table > thead > tr > th,#service-table .st-service-row > td { padding-inline:10px; }
  #service-table .st-service-favorite { padding-inline:6px; }
}
@media (max-width:767px) {
  .st-theme .st-service-table-wrap { border:0; background:transparent; box-shadow:none; overflow:visible; }
  #service-table { display:block; }
  #service-table thead { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); }
  #service-table tbody { display:grid; gap:12px; }
  #service-table .st-category-row { display:block; }
  #service-table .st-category-row td { display:block; padding:10px 2px; border:0; background:transparent; color:var(--st-muted); }
  #service-table .st-service-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 18px; padding:18px; border:1px solid var(--st-border); border-radius:12px; background:var(--st-surface); }
  #service-table .st-service-row > td { display:block; border:0; padding:0; min-width:0; }
  #service-table .st-service-row > [data-label]:before { content:attr(data-label); display:block; color:var(--st-muted); font-size:11px; font-weight:400; margin-bottom:5px; }
  #service-table .service-name { grid-column:1 / -1; grid-row:1; font-size:14px; }
  #service-table.st-has-favorites .service-name { padding-inline-end:40px; }
  #service-table .st-service-favorite { grid-column:2; grid-row:1; justify-self:end; align-self:start; }
  #service-table .st-service-favorite [role="button"] { position:relative; width:40px; height:44px; }
  #service-table .st-service-price { grid-column:1; grid-row:2; font-size:15px; }
  #service-table.st-no-average .st-service-price { grid-column:1 / -1; }
  #service-table .st-service-time { grid-column:2; grid-row:2; }
  #service-table .st-service-time > span { font-size:14px; font-weight:600; }
  #service-table .st-service-limits { grid-column:1 / -1; grid-row:3; font-size:13px; }
  #service-table .st-service-actions { grid-column:1 / -1; grid-row:4; display:flex !important; align-items:start; gap:10px; padding-top:14px !important; border-top:1px solid var(--st-border) !important; }
  #service-table .st-service-actions .btn { width:auto; min-height:44px; margin:0; padding:11px 16px; }
  #service-table .st-service-actions > a { flex:1; }
}

/* Full theme: page composition, content hierarchy and native form states. */
.st-main .st-page { max-width:1280px; }
.st-page-heading { max-width:1280px; }
.st-main:has(> .st-auth-page) > .st-page-heading { max-width:520px; }
.st-main:has(> .st-reading-page) > .st-page-heading,.st-main:has(> .st-form-page) > .st-page-heading { max-width:900px; }
.st-main:has(> .st-settings-page) > .st-page-heading { max-width:960px; }
.st-main:has(> .st-conversation-page) > .st-page-heading { max-width:1000px; }
.st-page-intro { max-width:780px; margin:-12px 0 25px; color:var(--st-muted); font-size:14px; line-height:1.8; }
.st-section-title { margin:0 0 22px; font-size:18px; line-height:1.4; letter-spacing:-.3px; }
.st-section-title a { color:inherit; }
.st-section-head { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; margin-bottom:20px; }
.st-section-head .st-section-title { margin:0; }
.st-card-description { margin:-10px 0 26px; color:var(--st-muted); }
.st-theme .st-page > .row > .col-md-12 { min-width:0; }
.st-theme .st-empty { display:grid; justify-items:center; align-content:center; gap:12px; min-height:160px; padding:28px 20px; text-align:center; color:var(--st-muted); }
.st-empty p { margin:0; max-width:390px; }
.st-empty-icon { display:grid; place-items:center; width:42px; height:42px; border:1px solid var(--st-border); border-radius:12px; background:var(--st-soft); color:var(--st-accent); font-size:20px; }
.st-theme .close { opacity:.65; color:inherit; text-shadow:none; min-width:28px; min-height:28px; }
.st-theme .alert .close { top:-5px; }
.st-theme .alert-info { background:var(--st-active); color:var(--st-ink); border-color:var(--st-border); }
.st-theme .alert-danger { background:#fff3f1; color:#a53b34; border-color:#f1d5d0; }
.st-theme .alert-warning { background:#fff8e7; color:#785614; border-color:#eadcbb; }
.st-theme .has-error .form-control { border-color:#b74840; }
.st-theme .has-error .help-block,.st-theme .has-error .control-label { color:#a53b34; }
.st-theme .btn[disabled],.st-theme .btn.disabled { opacity:.5; cursor:not-allowed; }
.st-theme .btn { white-space:normal; overflow-wrap:anywhere; }
.st-theme .modal-title { font-size:18px; }
.st-theme .modal-body { padding:24px; overflow-wrap:anywhere; }
.st-theme .modal-header,.st-theme .modal-footer { padding:18px 24px; }
.st-theme .modal-dialog { max-width:calc(100% - 24px); margin-inline:auto; }
.st-theme .modal-body .form-group:last-child { margin-bottom:0; }
.st-theme .modal-footer { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:8px; }
.st-theme .modal-footer:before,.st-theme .modal-footer:after { display:none; }
.st-theme .modal-footer .btn + .btn { margin:0; }
.st-theme #notify-wrapper { position:fixed; inset-block-start:20px; inset-inline-end:20px; z-index:1100; max-width:calc(100vw - 40px); box-shadow:var(--st-shadow); }
.st-back-link { display:inline-block; margin-bottom:20px; font-size:13px; font-weight:600; }

/* Mobile navigation expands in document flow; no offscreen or duplicated menu. */
.st-mobile-brand { display:none; }
.st-sidebar nav { min-height:0; }
.st-topbar-actions,.st-account-menu { flex-wrap:wrap; }
.st-account-menu { max-width:100%; }
.st-account-menu a { overflow-wrap:anywhere; }
.st-menu-toggle { display:none; align-items:center; gap:8px; border:1px solid var(--st-border); border-radius:9px; padding:9px 12px; min-height:44px; color:var(--st-ink); background:var(--st-surface); font-family:inherit; font-size:12px; font-weight:600; line-height:1.5; }
.st-nav-ready .st-menu-toggle { display:inline-flex; }

/* Histories retain their native tables/actions on desktop and labeled cards on mobile. */
.st-theme .st-record-panel { padding:20px; overflow-x:auto; }
.st-record-table { width:100%; }
.st-history-page .st-record-table { min-width:860px; }
.st-orders-page .st-record-table,.st-subscriptions-page .st-record-table,.st-drip-feed-page .st-record-table { min-width:1080px; }
.st-refunds-page .st-record-table,.st-updates-page .st-record-table { min-width:600px; }
.st-theme .st-record-table td { overflow-wrap:normal; min-width:80px; }
.st-theme .st-record-table td:first-child { min-width:70px; }
.st-drip-feed-page .st-record-table td:nth-child(2),.st-refill-page .st-record-table td:nth-child(2),.st-updates-page .st-record-table td:nth-child(2) { min-width:130px; }
.st-theme .st-record-table .width-40 { width:auto !important; word-break:normal; }
.st-theme .st-record-table td.st-cell-wide { min-width:180px; max-width:320px; overflow-wrap:anywhere; }
.st-record-table .st-status { white-space:nowrap; }
.st-theme .st-record-table td[data-label] { font-variant-numeric:tabular-nums; }
.st-theme .st-record-table .order-actions { display:flex; align-items:center; gap:6px; flex-wrap:wrap; min-width:110px; }
.st-status { display:inline-block; padding:4px 9px; border-radius:6px; background:var(--st-active); color:var(--st-accent); font-size:11px; line-height:1.5; font-weight:650; white-space:normal; }
.st-order-detail-link { display:inline-flex; align-items:center; gap:5px; margin-top:7px; font-size:11px; }
.st-theme .st-empty-row td { border:0; }
.st-theme .pagination { display:flex; flex-wrap:wrap; gap:5px; }
.st-theme .pagination > li > a { border-radius:7px; margin:0; min-width:38px; min-height:38px; display:grid; place-items:center; }
.st-history-page .nav-pills { gap:4px; }
.st-history-page .nav-pills > li > a { font-size:12px; padding:10px 12px; }
.st-history-page .nav-pills.pull-right { float:none !important; justify-content:flex-end; }
.st-history-page .nav-pills .search { flex:1 1 230px; max-width:340px; }
.st-table-scroll { overflow-x:auto; max-width:100%; }

/* Desktop columns depend on the table schema, not on the rows currently visible. */
@media (min-width:768px) {
  .st-theme .st-record-table { table-layout:fixed; }
  .st-theme .st-record-table td { min-width:0; overflow-wrap:anywhere; }
  .st-record-table .nowrap,.st-record-table .st-status { white-space:normal; }
  .st-orders-page .st-record-table { min-width:1280px; }
  .st-subscriptions-page .st-record-table { min-width:1320px; }
  .st-drip-feed-page .st-record-table { min-width:1220px; }
  .st-orders-page th:first-child,.st-subscriptions-page th:first-child,.st-drip-feed-page th:first-child,.st-refill-page th:first-child,.st-ticket-history th:first-child,.st-funds-history-page th:first-child { width:70px; }
  .st-orders-page th:nth-child(2) { width:145px; }
  .st-orders-page th:nth-child(3) { width:200px; }
  .st-orders-page th:nth-child(7) { width:260px; }
  .st-orders-page th:nth-child(8) { width:130px; }
  .st-orders-page th:last-child { width:110px; }
  .st-subscriptions-page th:nth-child(2) { width:170px; }
  .st-subscriptions-page th:nth-child(7) { width:230px; }
  .st-subscriptions-page th:nth-child(8) { width:120px; }
  .st-subscriptions-page th:nth-child(n+9),.st-drip-feed-page th:nth-child(2),.st-refill-page th:nth-child(2) { width:130px; }
  .st-drip-feed-page th:nth-child(3) { width:190px; }
  .st-drip-feed-page th:nth-child(6) { width:230px; }
  .st-drip-feed-page th:last-child,.st-refill-page th:last-child { width:140px; }
  .st-refill-page th:nth-child(3) { width:100px; }
  .st-refill-page th:nth-child(4) { width:180px; }
  .st-refunds-page th:first-child { width:100px; }
  .st-refunds-page th:last-child { width:160px; }
  .st-updates-page th:first-child { width:40%; }
  .st-updates-page th:nth-child(2) { width:150px; }
  .st-theme .st-ticket-history .st-record-table { min-width:580px; }
  .st-ticket-history th:nth-child(3) { width:120px; }
  .st-ticket-history th:last-child { width:140px; }
  .st-funds-history-page .st-record-table { min-width:760px; }
  .st-funds-history-page th:nth-child(2),.st-funds-history-page th:nth-child(4) { width:145px; }
  .st-funds-history-page th:last-child { width:120px; }
  .st-child-panel-page .st-record-table { min-width:760px; }
  .st-child-panel-page th:nth-child(2) { width:120px; }
  .st-child-panel-page th:nth-child(3),.st-child-panel-page th:nth-child(4) { width:130px; }
  .st-child-panel-page th:last-child { width:180px; }
}

/* Wallet and referral dashboard. */
.st-funds-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr); align-items:start; gap:24px; }
.st-funds-grid > *,.st-funds-aside { min-width:0; }
.st-balance-card { background:var(--st-active) !important; box-shadow:none !important; }
.st-balance-card strong { display:block; margin-top:10px; color:var(--st-accent); font-size:32px; line-height:1.5; letter-spacing:-.8px; overflow-wrap:anywhere; }
.st-referral-card { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr); align-items:center; gap:24px; }
.st-referral-card strong { font-size:20px; }
.st-referral-link { min-width:0; }
.st-referral-link input { font-size:13px; }
.st-stats-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-bottom:24px; }
.st-theme .st-stat { margin:0; padding:22px; }
.st-stat > span { display:block; margin-bottom:12px; color:var(--st-muted); font-size:12px; }
.st-stat > strong { display:block; color:var(--st-ink); font-size:26px; font-weight:650; letter-spacing:-.6px; overflow-wrap:anywhere; }
.st-stat:last-child { background:var(--st-active); }
.st-stat:last-child strong { color:var(--st-accent); }

/* Account sections do not combine independent forms or change their submissions. */
.st-settings-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; align-items:start; }
.st-theme .st-settings-card { margin:0; }
.st-settings-card form > p { font-size:13px; color:var(--st-muted); }
.st-settings-card input[readonly] { text-overflow:ellipsis; }
.st-main .st-settings-page { max-width:960px; }
.st-notifications-table th:not(:first-child),.st-notifications-table td:not(:first-child) { text-align:center; }
.st-notifications-table td:first-child { min-width:190px; }
.st-notifications-table input[type=checkbox] { width:20px; height:20px; vertical-align:middle; cursor:pointer; }
.st-notifications-table input[disabled] { cursor:not-allowed; }
.st-notifications-table + input + .btn { margin-top:20px; }
.st-settings-page form > .st-table-scroll { margin-bottom:22px; }

/* Authentication pages. */
.st-main > .st-auth-page { max-width:520px; }
.st-main > .st-auth-page .row > .col-md-12 { width:100%; }
.st-auth-page .st-auth-card { padding:32px; }
.st-auth-card > h3,.st-auth-card > h4,.st-auth-card form > h3 { margin:0 0 24px; font-size:22px; letter-spacing:-.4px; }
.st-auth-actions { display:flex; flex-direction:column; gap:4px; margin:0; }
.st-auth-actions:before,.st-auth-actions:after { display:none; }
.st-auth-actions > .col-md-6 { width:100%; float:none; padding:0; text-align:center; }
.st-auth-actions .form-inline .form-group { display:block; margin:0 0 18px; }
.st-auth-actions .btn-primary { width:100%; }
.st-auth-actions .pull-right-middle { position:static; display:block; padding:0; transform:none; margin:4px 0 0; font-size:12px; color:var(--st-muted); }
.st-auth-actions .g_id_signin { display:flex; justify-content:center; }
.st-auth-back { margin:22px 0 0; font-size:13px; }
.st-auth-page .checkbox label { font-weight:400; line-height:1.8; }
.st-auth-page .confirm-email__description { margin:8px 0 24px; overflow-wrap:anywhere; color:var(--st-muted); }
.st-auth-page .confirm-email__action { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; padding:0 15px; }
.st-auth-page #code { font-size:24px; letter-spacing:6px; }

/* Forms and support conversations. */
.st-main .st-form-page { max-width:900px; }
.st-code-help { padding:13px 16px; border-radius:8px; background:var(--st-soft); overflow-wrap:anywhere; white-space:pre-wrap; }
.st-massorder-page #links { font:13px/1.85 ui-monospace,SFMono-Regular,Consolas,monospace; min-height:320px; }
.st-nameservers { padding-inline-start:20px; margin:12px 0 0; font:13px/1.9 ui-monospace,Consolas,monospace; }
.st-support-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:24px; align-items:start; }
.st-support-grid:before,.st-support-grid:after { display:none; }
.st-ticket-compose { margin:0 !important; }
.st-ticket-history { min-width:0; }
.st-ticket-history .nav-pills { margin-bottom:20px; }
.st-ticket-history > .well { padding:16px; overflow-x:auto; }
.st-ticket-history .st-record-table { min-width:440px; }
.st-main .st-conversation-page { max-width:1000px; }
.st-conversation-page .titcket-title { padding-bottom:22px; border-bottom:1px solid var(--st-border); overflow-wrap:anywhere; }
.st-theme .ticket-message-block { display:flex; margin:22px 0; }
.st-theme .ticket-message-block:before,.st-theme .ticket-message-block:after { display:none; }
.st-message-inner { max-width:85%; min-width:0; }
.st-theme .ticket-message-right { justify-content:flex-end; }
.st-theme .ticket-message-left { justify-content:flex-start; }
.st-theme .ticket-message { background:var(--st-soft); border:1px solid var(--st-border); border-radius:14px 14px 14px 3px; padding:16px 19px; line-height:1.8; overflow-wrap:anywhere; }
.st-theme .ticket-message-right .ticket-message { background:var(--st-active); border-color:transparent; border-radius:14px 14px 3px 14px; }
.st-theme .ticket-message .message img { max-width:100%; height:auto; }
.st-theme .ticket-message-block .info { margin:8px 2px 0; display:flex; flex-wrap:wrap; gap:8px; color:var(--st-muted); font-size:11px; }
.st-theme .ticket-message-right .info { justify-content:flex-end; }
.st-ticket-reply { border-top:1px solid var(--st-border); padding-top:26px; margin-top:28px; }
.st-conversation-closed { padding:15px; margin-top:24px; border-radius:9px; text-align:center; color:var(--st-muted); background:var(--st-soft); }
.st-theme .tickets-uploader { max-width:100%; overflow-wrap:anywhere; }

/* API, editorial pages and arbitrary admin-managed rich text. */
.st-api-grid { display:grid; grid-template-columns:200px minmax(0,1fr); gap:24px; align-items:start; }
.st-api-nav { position:sticky; top:24px; padding:18px !important; }
.st-api-nav .st-eyebrow { display:block; margin:4px 8px 15px; }
.st-api-nav a { display:block; padding:9px; border-radius:7px; font-size:12px; font-weight:550; }
.st-api-nav a:hover { background:var(--st-active); text-decoration:none; }
.st-api-content .center-big-content-block { width:auto; padding:0; }
.st-theme .st-api-content .table-bordered { border-color:var(--st-border); }
.st-api-content td,.st-api-content th { overflow-wrap:anywhere; white-space:normal; }
.st-api-content .table { table-layout:fixed; }
.st-api-content .width-40 { width:35% !important; min-width:0; word-break:normal; }
.st-api-method { font-size:20px; border-top:1px solid var(--st-border); padding-top:28px; margin:32px 0 22px; scroll-margin-top:24px; }
.st-api-type { margin:10px 0 20px; }
.st-theme pre { max-width:100%; padding:18px; margin:15px 0 26px; border:1px solid var(--st-border); border-radius:9px; background:var(--st-soft); color:var(--st-ink); font:12px/1.9 ui-monospace,SFMono-Regular,Consolas,monospace; direction:ltr; text-align:left; overflow:auto; }
.st-api-content pre { white-space:pre; }
.st-main > .st-reading-page { max-width:900px; }
.st-prose { line-height:1.9; overflow-wrap:anywhere; }
.st-prose > :first-child { margin-top:0; }
.st-prose > :last-child { margin-bottom:0; }
.st-prose h2 { margin:28px 0 16px; font-size:23px; }
.st-prose h3 { margin:24px 0 12px; font-size:18px; }
.st-prose h4 { margin:20px 0 12px; font-size:16px; }
.st-prose p,.st-prose ul,.st-prose ol { margin-bottom:18px; }
.st-prose ul,.st-prose ol { padding-inline-start:24px; }
.st-prose img,.st-prose video,.st-prose iframe { max-width:100%; }
.st-prose img,.st-prose video { height:auto; border-radius:10px; }
.st-prose table { display:block; width:100%; max-width:100%; overflow-x:auto; }
.st-prose blockquote { border-inline-start:3px solid var(--st-accent); background:var(--st-soft); font-size:15px; padding:16px 20px; border-radius:0 9px 9px 0; }
.st-blog-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.st-theme .st-blog-card { display:flex; flex-direction:column; margin:0; }
.st-blog-card > p img { width:100%; aspect-ratio:16/9; object-fit:cover; border-radius:9px; }
.st-blog-excerpt { flex:1; margin-bottom:22px; }
.st-blog-card > .btn { align-self:flex-start; }
.st-theme .st-article-title { margin:16px 0 24px; font-size:30px; line-height:1.4; letter-spacing:-.5px; }

@media (max-width:1199px) {
  .st-support-grid { grid-template-columns:minmax(0,1fr); }
  .st-api-grid { grid-template-columns:170px minmax(0,1fr); gap:18px; }
}
@media (max-width:991px) {
  .st-mobile-brand { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 24px; }
  .st-mobile-brand > a { color:var(--st-ink); font-size:17px; font-weight:700; letter-spacing:-.5px; overflow-wrap:anywhere; }
  .st-sidebar nav { padding:0 18px 16px; overflow:auto; }
  .st-navigation { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px; width:100%; }
  .st-navigation a { white-space:normal; min-height:44px; }
  .st-nav-ready .st-sidebar nav { display:none; }
  .st-nav-ready.st-menu-open .st-sidebar nav { display:block; }
  .st-topbar { min-height:56px; }
  .st-topbar-actions { gap:10px; }
  .st-funds-grid { gap:18px; }
}
@media (max-width:767px) {
  .st-theme .st-record-panel { padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; overflow:visible; }
  .st-theme .st-record-panel > .st-section-title,.st-theme .st-record-panel > .st-section-head { margin:0 0 18px; }
  .st-theme .st-record-table { display:block; min-width:0; width:100%; }
  .st-theme .st-record-table > thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
  .st-theme .st-record-table > tbody { display:grid; gap:14px; }
  .st-theme .st-record-table > tbody > tr { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; padding:20px; background:var(--st-surface); border:1px solid var(--st-border); border-radius:13px; }
  .st-theme .st-record-table > tbody > tr > td { display:block; padding:0; border:0; min-width:0; max-width:none; width:auto; white-space:normal; }
  .st-record-table .st-status { white-space:normal; }
  .st-theme .st-record-table > tbody > tr > td.st-cell-wide { grid-column:1/-1; min-width:0; max-width:none; }
  .st-theme .st-record-table > tbody > tr > td[data-label]:before { content:attr(data-label); display:block; font-size:10px; font-weight:550; color:var(--st-muted); margin-bottom:5px; }
  .st-theme .st-record-table .nowrap { white-space:normal; }
  .st-theme .st-record-table .text-right { text-align:start; }
  .st-theme .st-record-table .st-empty-row { display:block; }
  .st-theme .st-record-table .order-actions { min-width:0; }
  .st-theme .st-record-table .btn-xs { min-height:40px; padding:9px 12px; }
  .st-history-page .nav-pills .search { max-width:none; flex-basis:100%; }
  .st-settings-grid,.st-funds-grid,.st-blog-grid { grid-template-columns:minmax(0,1fr); gap:18px; }
  .st-referral-card { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
  .st-referral-link { grid-column:1/-1; }
  .st-api-grid { grid-template-columns:minmax(0,1fr); gap:0; }
  .st-api-nav { position:static; display:flex; flex-wrap:wrap; gap:3px; padding:13px !important; }
  .st-api-nav .st-eyebrow { flex-basis:100%; margin:0 9px 6px; }
  .st-ticket-history > .well { padding:0; border:0; background:transparent; box-shadow:none; overflow:visible; }
  .st-funds-aside .well { margin-bottom:18px; }
  .st-funds-grid > .well { margin-bottom:0; }
  .st-message-inner { max-width:94%; }
}
@media (max-width:600px) {
  .st-mobile-brand { padding:12px 16px; }
  .st-navigation { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .st-theme .st-page-intro { font-size:13px; margin-top:-10px; margin-bottom:22px; }
  .st-theme .st-section-title { font-size:17px; }
  .st-theme .st-auth-card { padding:24px 20px; }
  .st-stats-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .st-theme .st-stat { padding:17px; }
  .st-stat > strong { font-size:22px; }
  .st-theme .st-record-table > tbody > tr { padding:17px; gap:14px; }
  .st-theme .st-article-title { font-size:24px; }
  .st-guest .navbar-header { margin-inline:0; }
  .st-theme .st-massorder-page #links { font-size:16px; }
  .st-theme .modal-body { padding:20px; }
  .st-theme .modal-header,.st-theme .modal-footer { padding:16px 20px; }
  .st-theme .select2-search__field { font-size:16px; }
}
@media (prefers-reduced-motion:no-preference) { .st-theme .btn,.st-palette-toggle { transition:background-color .15s,border-color .15s; } }
