/* Shared visual system for administration, finance and sales. */
@media screen {
    #content { --page-gap:20px; }
    #content > .hero-panel, #content .config-hero-card, #content .raffle-hero {
        background:var(--surface); color:var(--text); border:1px solid var(--border);
        border-radius:20px; padding:26px; box-shadow:none;
    }
    #content .hero-kicker, #content .section-kicker, #content .section-eyebrow { color:var(--primary); font-size:.66rem; letter-spacing:.1em; }
    #content .hero-title { color:var(--text); font-size:clamp(1.35rem,2.5vw,1.9rem); letter-spacing:-.035em; line-height:1.2; }
    #content .hero-copy, #content .config-hero-copy p, #content .raffle-hero p { color:var(--text-secondary); line-height:1.6; font-size:.88rem; max-width:720px; }
    #content .hero-panel .btn-ghost { color:var(--text-secondary); background:var(--surface-2); border-color:var(--border); }
    #content .app-section-card, #content .inventory-card, #content .card, #content .report-compare-card {
        background:var(--surface); border:1px solid var(--border); border-radius:18px; box-shadow:none;
    }
    #content .app-section-card { padding:22px; }
    #content .section-head { gap:14px; align-items:center; margin-bottom:18px; }
    #content .section-head h3, #content .section-header h3 { color:var(--text); font-size:1.08rem; letter-spacing:-.025em; }
    #content .form-control { border-radius:10px; background:var(--surface-2); border-color:var(--border); color:var(--text); min-height:44px; }
    #content .form-control:focus { border-color:var(--primary); box-shadow:0 0 0 3px var(--primary-glow); background:var(--surface); }
    #content .form-group label { color:var(--text-secondary); font-size:.8rem; font-weight:600; margin-bottom:7px; }
    #content .btn { border-radius:10px; }
    #content .btn-primary { background:var(--primary); box-shadow:none; }
    #content .btn-ghost { border:1px solid var(--border); background:var(--surface); color:var(--text-secondary); }
    #content .feed-item { border:1px solid var(--border); border-radius:12px; background:var(--surface-2); padding:14px; gap:16px; }
    #content .feed-meta { color:var(--text-secondary); line-height:1.55; }
    #content .feed-side { font-variant-numeric:tabular-nums; }
    #content .picker-empty, #content .empty-state { background:var(--surface-2); border:1px dashed var(--border); border-radius:12px; color:var(--text-secondary); padding:26px 18px; text-align:center; line-height:1.6; }
    #content .table-wrapper { border:1px solid var(--border); border-radius:12px; overflow:auto; }
    #content table { border-collapse:collapse; width:100%; }
    #content table th { background:var(--surface-2); color:var(--text-secondary); font-size:.68rem; letter-spacing:.05em; text-transform:uppercase; padding:12px 14px; }
    #content table td { padding:13px 14px; border-bottom:1px solid var(--border); font-size:.82rem; }
    #content table tbody tr:last-child td { border-bottom:0; }
    #content table tbody tr:hover { background:var(--surface-2); }
    #content .td-money { font-variant-numeric:tabular-nums; white-space:nowrap; }
    #content .metric-card { background:var(--surface); border:1px solid var(--border); color:var(--text); border-radius:16px; box-shadow:none; padding:18px; }
    #content .metric-label { color:var(--text-secondary); font-size:.73rem; }
    #content .metric-value { color:var(--text); font-variant-numeric:tabular-nums; }
    #content .metric-card-highlight { border-top:3px solid var(--success); }
    #content .metric-card-dark { background:#182c48; border-color:#182c48; }
    #content .metric-card-dark .metric-label { color:#bbcbe0; }
    #content .metric-card-dark .metric-value { color:#fff; }
    #content .summary-box { background:var(--surface-2); border:1px solid var(--border); border-radius:12px; }
    #content .summary-line { gap:12px; }
    #content .summary-line strong { font-variant-numeric:tabular-nums; white-space:nowrap; }
    #content :is(button,a,input,select,textarea):focus-visible { outline:2px solid var(--primary); outline-offset:3px; }
    #content .config-shell { max-width:1440px; margin:0 auto; gap:20px; }
    #content .config-tabbar { display:flex; gap:8px; padding:10px; background:var(--surface); border:1px solid var(--border); border-radius:14px; overflow-x:auto; }
    #content .config-tab-btn { border:0; border-radius:10px; background:transparent; color:var(--text-secondary); min-height:44px; text-align:left; padding:12px 16px; }
    #content .config-tab-btn.is-active { background:var(--primary-light); color:var(--primary-dark); font-weight:700; }
    #content .config-hero-pill { background:var(--surface-2); color:var(--text-secondary); border:1px solid var(--border); }
    #content .config-grid { align-items:start; gap:20px; }
    #content .config-card-accent { border-top:3px solid var(--primary); }
    #content .status-mini-card { background:var(--surface-2); border:1px solid var(--border); border-radius:12px; }
    #content .rpt-tab-bar { padding:8px; border:1px solid var(--border); border-radius:14px; background:var(--surface); gap:6px; }
    #content .rpt-tab-btn { min-height:44px; border-radius:10px; color:var(--text-secondary); }
    #content .rpt-tab-btn.is-active { color:var(--primary-dark); background:var(--primary-light); box-shadow:none; }
    #content .rpt-kpi-item { padding:12px 16px; border:1px solid var(--border); background:var(--surface-2); border-radius:12px; }
    #content .rpt-kpi-label { color:var(--text-secondary); }
    #content .rpt-kpi-value { color:var(--text); font-variant-numeric:tabular-nums; }
    #content .profit-positive { color:var(--success-dark); }
    #content .profit-negative { color:var(--danger); }
    #content .report-compare-grid { gap:14px; }
    #content .report-compare-card { padding:20px; }
    #content .report-inner-grid { gap:20px; align-items:start; }
    #content .inventory-filter-row { gap:12px; }
    #content .inventory-table-wrap { border:1px solid var(--border); border-radius:14px; overflow:auto; }
    #content .inventory-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr)); gap:14px; }
    #content .inventory-card { padding:20px; }
    #content .inventory-card-actions { flex-wrap:wrap; padding-top:12px; border-top:1px solid var(--border); }
    #content .inventory-card-actions .btn { min-height:40px; }
    #content .payment-tech-spotlight { border-top:3px solid var(--success); }
    #content .payment-tech-grid { gap:20px; align-items:start; }
    #content .withdrawal-card { border-radius:16px; background:var(--surface); border:1px solid var(--border); }
    #content .template-card { border-top:3px solid var(--primary); }
    #content .template-variable-chip { background:var(--surface-2); color:var(--primary); border:1px solid var(--border); border-radius:8px; }
    #content .tool-catalog-card.is-active { background:var(--surface); border-top:3px solid var(--primary); }
    #content .tool-upload-shell { background:var(--surface); }
    #content .tool-diagnosis-card { border-top:3px solid var(--primary); }
    #content .raffle-shell { gap:20px; }
    #content .raffle-hero { align-items:center; }
    #content .raffle-card { border-radius:16px; box-shadow:none; }
    #content .pdv-header { border:1px solid var(--border); background:var(--surface); padding:18px 22px; border-radius:16px; }
    #content .pdv-product-card { border-radius:14px; background:var(--surface); box-shadow:none; }
    #content .pdv-cart-item { background:var(--surface-2); border-radius:12px; border:1px solid var(--border); padding:14px; }
    #content .pdv-product-card:hover { border-color:var(--primary); }
    .catalog-search { margin:16px 0; max-width:520px; }
    .catalog-search label { display:block; margin-bottom:7px; font-size:.8rem; color:var(--text-secondary); }
    .catalog-filter-empty { margin-top:14px; }
    @media(min-width:1000px) {
        #content .config-shell { display:grid; grid-template-columns:190px minmax(0,1fr); grid-template-areas:'hero hero' 'tabs panels'; align-items:start; }
        #content .config-hero-card { grid-area:hero; }
        #content .config-tabbar { grid-area:tabs; flex-direction:column; position:sticky; top:0; }
        #content .config-panels { grid-area:panels; min-width:0; }
    }
    @media(max-width:767px) {
        #content > .hero-panel,#content .config-hero-card,#content .raffle-hero { padding:20px; }
        #content .app-section-card { padding:17px; }
        #content .section-head { flex-wrap:wrap; }
        #content .config-tabbar { flex-wrap:nowrap; }
        #content .config-tab-btn { flex-shrink:0; white-space:nowrap; }
        #content .rpt-hero-kpis { width:100%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
        #content .rpt-kpi-value { font-size:1.1rem; }
        #content .rpt-tab-bar { flex-wrap:nowrap; overflow-x:auto; }
        #content .rpt-tab-btn { flex-shrink:0; white-space:nowrap; }
        #content .feed-item { flex-wrap:wrap; }
        #content .pdv-header { padding:14px; flex-wrap:wrap; }
    }
    @media(prefers-reduced-motion:reduce) { #content *, .sidebar { scroll-behavior:auto; transition:none; } }
}
/* Compact shared page headings without touching receipts or modal layouts. */
@media screen {
    #content .hero-panel { gap:16px; padding:18px 20px; border-radius:16px; }
    #content .hero-panel > div { min-width:0; }
    #content .hero-panel .hero-title { font-size:clamp(1.15rem,2vw,1.5rem); overflow-wrap:anywhere; }
    #content .hero-panel .btn { min-height:44px; flex-shrink:0; }
    #content .team-toolbar { gap:12px; }
    #content .team-filters { min-width:0; }
    #content .table-wrapper { max-width:100%; overscroll-behavior-x:contain; }
}
@media screen and (max-width:767px) {
    #content .hero-panel { padding:14px; gap:12px; }
    #content .hero-panel .hero-title { font-size:1.15rem; }
    #content .hero-panel p { font-size:.8rem; margin-top:4px; }
    #content > .metric-strip { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
    #content > .metric-strip .metric-card { padding:12px; min-width:0; }
    #content > .metric-strip .metric-value { font-size:1.4rem; overflow-wrap:anywhere; }
    #content .team-toolbar { align-items:stretch; }
    #content .team-filters { flex:1 1 100%; max-width:none; display:grid; grid-template-columns:minmax(0,1fr) 100px; }
    #content .team-filters select { width:100%; }
    #content .team-card { padding:14px; }
    #content .team-identity { min-width:0; }
    #content .team-identity strong { overflow-wrap:anywhere; }
    #content .people-card-actions { flex-wrap:wrap; gap:6px; }
    #content .people-card-actions .btn { min-height:44px; flex:1 1 auto; }
}
@media screen { #catalogItems .inventory-card[hidden], .catalog-filter-empty[hidden] { display:none !important; } }
@media screen {
    #content .hero-panel { background:var(--surface); color:var(--text); border:1px solid var(--border); border-radius:20px; padding:26px; box-shadow:none; }
    #content .hero-panel .hero-title { color:var(--text); }
    #content .hero-panel .hero-copy { color:var(--text-secondary); }
    @media(max-width:767px) { #content .hero-panel { padding:20px; } }
}
@media screen {
    #content .config-grid > *, #content .form-group, #content .form-row > *, #content .report-inner-grid > * { min-width:0; }
    #content input[type=file] { width:100%; max-width:100%; }
    @media(max-width:767px) { #content .config-grid,#content .config-grid-wide { grid-template-columns:minmax(0,1fr); } }
}
/* Mobile UX: layouts start with a single column and touch-size controls. */
@media screen and (max-width:767px) {
    :root { --bottom-nav-h:64px; }
    .topbar { padding:0 12px; gap:8px; }
    .topbar-left,.topbar-right { min-width:0; gap:6px; }
    .topbar-user-name { display:none; }
    .topbar-user { padding:4px; }
    .topbar :is(button,.topbar-user) { min-width:44px; min-height:44px; }
    .sidebar { width:min(290px,calc(100vw - 44px)); }
    .sidebar .nav-item { min-height:48px; font-size:.86rem; }
    .sidebar-close { min-width:44px; min-height:44px; }
    .sidebar-footer { padding-bottom:max(12px,env(safe-area-inset-bottom)); }
    .content { padding:12px; padding-bottom:calc(84px + env(safe-area-inset-bottom)); }
    .bottom-nav { height:calc(64px + env(safe-area-inset-bottom)); padding-bottom:env(safe-area-inset-bottom); }
    .bottom-nav-item { min-height:48px; min-width:0; flex:1; }
    #content { max-width:100%; }
    #content :is(.config-shell,.config-panels,.report-page-shell,.report-scope-section,.raffle-shell,.pdv-shell,.team-page,.os-page) { min-width:0; max-width:100%; }
    #content :is(.dashboard-grid-simple,.report-inner-grid,.config-grid,.config-grid-wide,.config-grid-compact,.pdv-layout,.payment-tech-spotlight-grid,.raffle-layout) { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; }
    #content :is(.form-row,.form-row-3,.form-row-2) { display:grid; grid-template-columns:minmax(0,1fr); gap:14px; }
    #content .form-group { width:100%; min-width:0; }
    #content .form-control,.modal .form-control,.login-redesign .form-control { min-height:48px; font-size:16px; max-width:100%; }
    #content textarea.form-control { min-height:112px; resize:vertical; }
    #content .form-group label { font-size:.84rem; }
    #content :is(.btn,.os-tab,.os-date-mode-btn,.rpt-tab-btn,.config-tab-btn,.osc-cta,.osc-btn,.inventory-sort-button) { min-height:44px; }
    #content .hero-panel { display:flex; flex-direction:column; align-items:stretch; gap:18px; }
    #content .hero-actions { display:flex; flex-wrap:wrap; width:100%; gap:10px; }
    #content .hero-actions .btn { flex:1; }
    #content > .hero-panel > .btn { width:100%; }
    #content :is(.app-section-card,.card,.inventory-card,.people-card) { min-width:0; max-width:100%; }
    #content .feed-list { min-width:0; }
    #content .feed-item > * { min-width:0; overflow-wrap:anywhere; }
    #content .feed-badge-wrap { flex-wrap:wrap; }
    #content :is(.inventory-card-actions,.people-card-actions,.form-actions) { flex-wrap:wrap; gap:10px; }
    #content .form-actions .btn { flex:1; min-width:120px; }
    #content :is(.table-wrapper,.inventory-table-wrap,.report-table-wrap) { max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; -webkit-overflow-scrolling:touch; }
    #content .table-wrapper:focus-visible { outline:2px solid var(--primary); }
    #content :is(.report-compare-grid,.metric-strip,.status-summary-grid) { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
    #content :is(.metric-card,.report-compare-card,.status-summary-card) { min-width:0; padding:14px; }
    #content :is(.metric-value,.report-compare-value,.status-summary-card strong) { overflow-wrap:anywhere; font-size:1.2rem; }
    #content .rpt-hero { display:flex; flex-direction:column; align-items:stretch; }
    #content .rpt-hero-kpis { min-width:0; }
    #content .report-inner-grid .table-wrapper { margin-top:14px; }
    #content :is(.inventory-toolbar,.inventory-filters,.inventory-filter-row,.inventory-controls) { flex-wrap:wrap; gap:10px; }
    #content :is(.inventory-toolbar,.inventory-filters,.inventory-filter-row,.inventory-controls) > * { min-width:0; max-width:100%; }
    #content .inventory-search { width:100%; }
    #content .team-filters { display:grid; grid-template-columns:minmax(0,1fr); width:100%; }
    #content .team-filters select { width:100%; }
    #content .team-card .people-card-actions .btn { min-width:90px; }
    #content .os-page-header-top { flex-direction:column; align-items:stretch; gap:16px; }
    #content .os-page-actions { display:flex; width:100%; gap:10px; }
    #content .os-page-actions .btn { flex:1; }
    #content .os-filter-row { flex-wrap:wrap; }
    #content .os-date-inputs { width:100%; flex-wrap:wrap; }
    #content .os-search-input { font-size:16px; min-height:48px; }
    #content .os-tabs { scroll-snap-type:x proximity; }
    #content .os-tab { flex-shrink:0; scroll-snap-align:start; }
    #content .osc-footer { flex-wrap:wrap; gap:12px; }
    #content .osc-btns { display:flex; flex-wrap:wrap; gap:8px; }
    #content .osc-btn { min-width:44px; }
    #content .pdv-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
    #content .pdv-product-card { padding:12px; min-width:0; }
    #content .pdv-product-card .btn { width:100%; }
    .app.pdv-mode .content { padding:12px; padding-bottom:calc(96px + env(safe-area-inset-bottom)); }
    .pdv-floating-checkout { bottom:calc(12px + env(safe-area-inset-bottom)); left:12px; right:12px; width:calc(100% - 24px); min-height:56px; }
    .modal-dialog,.modal-content { width:100%; max-width:100%; max-height:calc(100dvh - 24px); }
    .modal { padding:12px; }
    .modal-body { overflow-y:auto; overscroll-behavior:contain; }
    .modal :is(button,.btn) { min-height:44px; }
    .modal .form-row { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; }
    .login-screen { padding:16px; overflow-y:auto; }
    .login-redesign .login-card { padding:26px 22px; }
}
@media screen and (max-width:359px) {
    .content { padding-left:10px; padding-right:10px; }
    #content .app-section-card { padding:14px; }
    #content .pdv-product-grid { grid-template-columns:minmax(0,1fr); }
    #content .people-card-actions .btn { flex-basis:100%; }
    #content .metric-value { font-size:1.05rem; }
}
@media screen {
    #content .inventory-card[hidden] { display:none !important; }
    #content .config-inline-toggle { min-width:0; flex-wrap:wrap; }
    #content .config-inline-toggle label { min-width:0; overflow-wrap:anywhere; }
}
@media screen and (max-width:767px) {
    #content .raffle-preview-zone { min-width:0; }
    #content .raffle-card-preview { width:100%; min-width:0; min-height:0; }
}
@media screen and (max-width:767px) {
    #wizardOS .form-control { min-height:48px; font-size:16px; }
    #wizardOS :is(button,.btn,.wizard-tech-option,.wizard-agend-toggle) { min-height:44px; }
    #wizardOS .wizard-item-inline-input { font-size:16px; }
    #wizardOS .wizard-footer { padding-bottom:max(12px,env(safe-area-inset-bottom)); }
}
@media screen {
    .dashboard-stock-result { display:grid; grid-template-columns:40px minmax(0,1fr) 80px 48px; gap:14px; align-items:center; }
    .dashboard-stock-result-copy { min-width:0; }
    .dashboard-stock-result-copy > strong { overflow-wrap:anywhere; }
    .dashboard-stock-result-box { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; min-height:76px; padding:10px; border-radius:14px; background:var(--primary); color:#fff; }
    .dashboard-stock-result-box > small { font-size:.65rem; font-weight:700; text-transform:uppercase; letter-spacing:.07em; }
    .dashboard-stock-result-box > strong { font-size:1.9rem; font-weight:900; line-height:1; }
    .dashboard-stock-result-box.is-unassigned { background:var(--surface-2); color:var(--text-secondary); border:1px dashed var(--border); }
    .dashboard-stock-result:focus-visible { outline:2px solid var(--primary); outline-offset:-2px; }
    .dashboard-stock-search-shell input { min-width:0; font-size:16px; }
    @media(max-width:767px) {
        .dashboard-stock-result { grid-template-columns:minmax(0,1fr) 64px 32px; gap:10px; padding:14px 10px; }
        .dashboard-stock-result-device { display:none; }
        .dashboard-stock-result-box { min-height:70px; padding:8px 5px; }
        .dashboard-stock-result-box > strong { font-size:1.65rem; }
        .dashboard-stock-result-qty { min-width:0; }
    }
}
@media screen and (min-width:768px) and (max-width:1100px) {
    #content :is(.dashboard-grid-simple,.report-inner-grid,.pdv-layout,.payment-tech-spotlight-grid,.raffle-layout) { grid-template-columns:minmax(0,1fr); }
    #content :is(.app-section-card,.card,.config-panels,.config-panel) { min-width:0; }
    #content .config-shell { grid-template-columns:minmax(0,1fr); grid-template-areas:'hero' 'tabs' 'panels'; }
    #content .config-tabbar { position:static; flex-direction:row; overflow-x:auto; }
    #content :is(.config-grid,.config-grid-wide,.config-grid-compact,.form-row-3) { grid-template-columns:minmax(0,1fr); }
    #content .feed-item { flex-wrap:wrap; }
    #content .feed-item > * { min-width:0; overflow-wrap:anywhere; }
}

@media screen and (max-width:1100px) {
    #content :is(.raffle-upload-grid,.raffle-grid,.voice-allowed-row) { grid-template-columns:minmax(0,1fr); }
    #content :is(.raffle-grid,.raffle-upload-grid,.raffle-money-input,.raffle-preview-zone,.voice-allowed-row) { min-width:0; max-width:100%; }
    #content .raffle-card-preview { width:100%; min-width:0; min-height:0; }
    #content .raffle-upload-grid > * { min-width:0; }
}
@media screen {
    .report-period-toolbar { display:flex; align-items:end; gap:12px; padding:18px; border:1px solid var(--border); border-radius:16px; background:var(--surface); }
    .report-period-toolbar label { display:block; font-size:.75rem; color:var(--text-secondary); margin-bottom:6px; }
    .report-period-toolbar .form-control { width:190px; }
    .report-period-toolbar .btn { min-height:48px; }
    .report-chart-scroll { max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; margin:18px 0; }
    .report-chart-scroll svg { display:block; width:100%; min-width:780px; height:auto; }
    .report-chart-grid { stroke:var(--border); stroke-dasharray:4 4; }
    .report-chart-baseline { stroke:var(--text-secondary); }
    .report-chart-label { fill:var(--text-secondary); font:11px sans-serif; }
    .report-chart-bar.faturamento,.report-chart-legend .faturamento { fill:#2563eb; background:#2563eb; }
    .report-chart-bar.lucro,.report-chart-legend .lucro { fill:#059669; background:#059669; }
    .report-chart-bar.negative,.report-chart-legend .negative { fill:#dc2626; background:#dc2626; }
    .report-chart-legend { display:flex; flex-wrap:wrap; gap:18px; font-size:.78rem; color:var(--text-secondary); }
    .report-chart-legend span { display:flex; align-items:center; gap:7px; }
    .report-chart-legend i { width:10px; height:10px; border-radius:3px; }
    @media(max-width:767px) { .report-period-toolbar { flex-wrap:wrap; gap:8px; padding:12px; } .report-period-toolbar > div { flex:1; min-width:0; } .report-period-toolbar .form-control { width:100%; min-width:0; } .report-period-toolbar > .btn:last-child { width:100%; } }
}
@media screen {
    #content .rpt-hero { flex-direction:column; align-items:stretch; gap:20px; }
    #content .rpt-hero-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); width:100%; }
    @media(max-width:767px) { #content .rpt-hero-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); } }
}
@media screen {
    .report-chart-details summary { cursor:pointer; min-height:44px; display:list-item; padding:14px 8px; font-weight:700; color:var(--primary); border-top:1px solid var(--border); }
    .report-chart-details summary:focus-visible,.report-chart-scroll:focus-visible { outline:2px solid var(--primary); outline-offset:2px; }
}

#fishTtsSettings[hidden], #content .form-group[hidden] { display:none !important; }
/* Compact service workspace: keep every action visible and the owner prominent. */
.os-page .os-page-header { padding:16px 18px; border-radius:14px; margin-bottom:10px; }
.os-page .os-page-header-top { gap:12px; margin-bottom:8px; }
.os-page .os-page-title { font-size:1.2rem; }
.os-page .os-page-title-wrap .os-page-title { margin:0; padding:0; }
.os-page .os-page-title-wrap .section-kicker { margin:0; }
.os-page .auto-refresh-note:empty { display:none; }
/* Creation remains in the header; avoid the duplicate floating button covering actions. */
.os-page + .os-fab { display:none; }
.os-page .section-kicker { font-size:.65rem; margin-bottom:2px; }
.os-page .os-page-description { font-size:.8rem; margin:3px 0; }
.os-page .os-filter-row { margin-top:10px; padding-top:10px; margin-bottom:6px; }
.os-page .os-filter-hint { font-size:.72rem; margin-bottom:6px; }
.os-page .os-stat-pill { padding:4px 9px; border-radius:6px; font-size:.72rem; }
.os-page .os-search-input { min-height:42px; padding-top:9px; padding-bottom:9px; border-radius:10px; }
.os-page .os-tab { min-height:40px; padding:7px 10px; font-size:.75rem; border-radius:8px; }
.os-page .os-tabs { flex-wrap:wrap; overflow:visible; }
.os-page .os-page-body { gap:8px; }
.os-page #servicosList { gap:10px; align-items:stretch; }
.os-page .osc-grp-lbl { padding:8px 0 2px; font-size:.75rem; }
.os-page .osc { border-radius:12px; box-shadow:none; }
.os-page .osc-body { padding:12px; gap:6px; }
.os-page .osc-row-top { gap:8px; flex-wrap:wrap; }
.os-page .osc-row-top-right { flex-wrap:wrap; }
.os-page .osc-name { font-size:1rem; white-space:normal; overflow-wrap:anywhere; }
.os-page .osc-device { font-size:.83rem; font-weight:650; overflow-wrap:anywhere; }
.osc-owner { display:flex; align-items:center; gap:8px; padding:7px 9px; border-radius:8px; background:var(--primary-light); border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border)); }
.osc-owner > svg { width:20px; height:20px; flex:0 0 auto; fill:none; stroke:var(--primary); stroke-width:1.8; }
.osc-owner > span { min-width:0; display:flex; align-items:baseline; gap:8px; flex-wrap:wrap; }
.osc-owner .osc-tec-label { color:var(--text-secondary); font-size:.6rem; }
.osc-owner .osc-tec { display:inline; background:none; border:0; padding:0; min-height:0; font-size:.84rem; color:var(--text); overflow-wrap:anywhere; }
[data-theme="dark"] .osc-owner { background:rgba(37,99,235,.16); }
[data-theme="dark"] .osc-owner > svg { stroke:#93c5fd; }
[data-theme="dark"] .os-page .os-tab:not(.active),[data-theme="dark"] .os-page .btn-ghost,[data-theme="dark"] .os-page .btn-osc-dim { background:var(--surface-2); color:var(--text-secondary); border-color:var(--border); }
.os-page .osc-prob { padding:6px 8px; font-size:.78rem; font-style:normal; white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; line-height:1.4; }
.os-page .osc-commission { padding:4px 7px; margin-top:0; border-radius:7px; font-size:.72rem; }
.os-page .osc-commission > span:last-child { display:flex; gap:6px; align-items:baseline; flex-wrap:wrap; }
.os-page .osc-commission-label { font-size:.6rem; }
.os-page .osc-commission strong { font-size:.8rem; }
.os-page .osc-commission-icon { width:18px; height:18px; font-size:.65rem; }
.os-page .osc-footer { padding-top:7px; gap:6px; flex-wrap:wrap; margin-top:auto; }
.os-page .osc-price { font-size:.92rem; }
.os-page .osc-btns { gap:5px; flex-wrap:wrap; margin-left:auto; }
.os-page .btn-osc { min-height:38px; font-size:.72rem; padding:6px 8px; }
.os-page .osc-cta { min-height:38px; padding:7px 10px; font-size:.8rem; margin-top:0; border-radius:8px; }
.os-page .osc-cta:focus-visible,.os-page .btn-osc:focus-visible { outline:2px solid var(--primary); outline-offset:2px; }
@media(min-width:1700px) {
    .os-page #servicosList { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
}
@media(max-width:767px) {
    .os-page .os-page-header { padding:12px; }
    .os-page .os-page-header-top { flex-wrap:wrap; }
    .os-page .os-page-actions { margin-left:auto; }
    .os-page .osc-body { padding:10px; }
    .os-page .btn-osc,.os-page .osc-cta,.os-page .os-tab,.os-page .os-date-mode-btn { min-height:44px; }
    .os-page .os-page-description { display:none; }
    .os-page .os-tabs { gap:5px; flex-wrap:nowrap; overflow-x:auto; scrollbar-width:thin; padding-bottom:5px; }
    .os-page .os-tab { padding:6px 8px; }
    .os-page .osc-owner > span { gap:3px 8px; }
    .os-page .osc-btns { flex:1 1 auto; justify-content:flex-end; }
}
/* Settings assistant: readable event cards and comfortable mobile controls. */
#content .voice-log-toolbar { display:grid; grid-template-columns:minmax(140px, .8fr) minmax(0, 1.2fr); gap:12px; margin:16px 0 10px; }
#content .voice-log-toolbar label { display:grid; gap:6px; font-size:13px; font-weight:600; color:var(--text-secondary); min-width:0; }
#content .voice-debug-list { display:grid; gap:12px; margin-top:14px; max-height:650px; overflow:auto; overscroll-behavior:contain; padding:2px; }
#content .voice-debug-item { border:1px solid var(--border-color, #e2e8f0); border-left:3px solid var(--primary); border-radius:12px; padding:16px; background:var(--bg-card, #fff); min-width:0; overflow-wrap:anywhere; }
#content .voice-debug-item[data-log-status="error"] { border-left-color:var(--danger, #dc2626); }
#content .voice-debug-item[data-log-status="success"] { border-left-color:var(--success, #16a34a); }
#content .voice-debug-head { display:flex; align-items:center; justify-content:space-between; gap:8px; flex-wrap:wrap; margin-bottom:8px; }
#content .voice-debug-text, #content .voice-debug-error { padding:12px; border-radius:8px; background:var(--bg-secondary, #f8fafc); margin-top:10px; font-size:14px; line-height:1.5; }
#content .voice-debug-error { color:var(--danger, #b91c1c); }
#content .voice-debug-item p { margin:5px 0 0; }
#content .voice-debug-item details { margin-top:10px; font-size:12px; }
#content .voice-debug-item summary { cursor:pointer; padding:8px 0; color:var(--text-secondary); }
#content .voice-debug-item pre { overflow:auto; max-height:220px; padding:12px; border-radius:8px; background:var(--bg-secondary, #f8fafc); white-space:pre-wrap; overflow-wrap:anywhere; }
#content .voice-log-empty { padding:30px 18px; text-align:center; border:1px dashed var(--border-color, #e2e8f0); border-radius:12px; }
#content .voice-log-empty p { color:var(--text-secondary); font-size:14px; max-width:450px; margin:8px auto 0; }
#content .config-tab-btn:focus-visible { outline:2px solid var(--primary); outline-offset:2px; }
@media(max-width:600px) {
    #content .voice-log-toolbar { grid-template-columns:minmax(0,1fr); }
    #content .voice-debug-item { padding:12px; }
    #content .voice-debug-head .badge { white-space:normal; }
    #content .voice-debug-list { max-height:70vh; }
}
@media screen {
    #content .inventory-sort-help { display:block; line-height:1.5; text-align:left; }
    #content .inventory-sort-help > span { display:inline; margin-right:4px; }
    #content .hero-panel { padding:18px 20px; }
}
@media screen and (max-width:767px) {
    #content .hero-panel { padding:14px; }
}
