/* PaidCall foundation. Loaded after legacy styles; page-specific styles use these tokens. */
:root {
 --pc-canvas:#f5f4f0; --pc-surface:#fff; --pc-soft:#eeeee8; --pc-ink:#202b27;
 --pc-muted:#596760; --pc-border:#d8ddd5; --pc-accent:#205c46; --pc-accent-hover:#174534;
 --pc-accent-soft:#e8f0ea; --pc-danger:#a52e3e; --pc-warning:#765015;
 --pc-font:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
 --pc-radius:10px; --pc-shadow:0 3px 12px #26382b08,0 1px 2px #26382b06;
 --pc-space-1:4px; --pc-space-2:8px; --pc-space-3:12px; --pc-space-4:16px;
 --pc-space-6:24px; --pc-space-8:32px; --pc-space-12:48px;
 --pc-motion:160ms; --bs-body-font-family:var(--pc-font); --bs-body-color:var(--pc-ink);
 --bs-border-color:var(--pc-border); --bs-primary:#205c46; --bs-primary-rgb:32,92,70;
}
body.public-body,body.dashboard-body {font-family:var(--pc-font);background:var(--pc-canvas);color:var(--pc-ink);-webkit-font-smoothing:antialiased;}
::selection {background:#d2e5d9;color:#14291e;}
main :is(h1,h2,h3) {letter-spacing:-.035em;font-weight:700;text-wrap:balance;}
main h1 {font-size:clamp(28px,3vw,38px);}
main h2 {font-size:23px;}
main a:not(.btn):not(.agent-card-main):not(.conversation-row) {text-underline-offset:4px;}
.eyebrow {color:var(--pc-accent);font-size:11px;font-weight:750;letter-spacing:.14em;margin-bottom:12px;}
:is(a,button,input,select,textarea,summary):focus-visible {outline:2px solid #3a8060;outline-offset:2px;}
button,.btn,a,input,select,textarea,summary {transition:background-color var(--pc-motion),border-color var(--pc-motion),box-shadow var(--pc-motion),color var(--pc-motion);}
main .btn,.public-nav .btn {border-radius:6px;font-weight:650;box-shadow:none;}
.btn-primary {--bs-btn-bg:var(--pc-accent);--bs-btn-border-color:var(--pc-accent);--bs-btn-hover-bg:var(--pc-accent-hover);--bs-btn-hover-border-color:var(--pc-accent-hover);--bs-btn-active-bg:var(--pc-accent-hover);--bs-btn-active-border-color:var(--pc-accent-hover);--bs-btn-disabled-bg:var(--pc-accent);--bs-btn-disabled-border-color:var(--pc-accent);--bs-btn-focus-shadow-rgb:32,92,70;}
.btn-outline-dark {--bs-btn-color:var(--pc-ink);--bs-btn-border-color:#a9b5ac;--bs-btn-hover-bg:var(--pc-ink);--bs-btn-hover-border-color:var(--pc-ink);}
main :is(.call-panel>button,.search-form>button,.room-message-form>button,.billing-action):not(.danger) {background-color:var(--pc-accent);color:#fff;}
main :is(input,select,textarea) {border-color:var(--pc-border);color:var(--pc-ink);border-radius:6px;}
main .form-control:focus,main :is(input,select,textarea):focus-visible {border-color:var(--pc-accent);box-shadow:0 0 0 2px #205c4618;outline:none;}
main label {font-weight:600;}
.public-brand {display:inline-flex;align-items:center;gap:10px;letter-spacing:-.055em;font-size:24px;color:var(--pc-ink);}
.public-brand::before {content:"";display:block;width:25px;height:27px;border:6px solid var(--pc-accent);border-radius:9px 9px 9px 2px;}
.public-nav {height:80px;background:var(--pc-canvas);border-color:var(--pc-border);gap:22px;}
.public-nav-links {gap:22px;}
.public-nav-links a {font-size:13px;font-weight:550;}
.public-nav-links a:hover {color:var(--pc-accent);}
.public-footer {background:var(--pc-soft);border-color:var(--pc-border);padding-block:36px;}
.public-hero {background:var(--pc-canvas);min-height:570px;padding:80px max(24px,7vw);position:relative;overflow:hidden;border-bottom:1px solid var(--pc-border);}
.public-hero-content {position:relative;z-index:1;max-width:760px;}
.public-hero h1 {font-size:clamp(44px,6vw,78px);line-height:1.04;letter-spacing:-.055em;max-width:740px;}
.public-hero-content>p:not(.eyebrow) {font-size:19px;line-height:1.7;color:var(--pc-muted);max-width:560px;}
.hero-actions {flex-wrap:wrap;gap:10px;margin-top:32px;}
.hero-actions .btn {padding:12px 20px;}
.hero-assurance {display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:30px;color:var(--pc-muted);font-size:12px;}
.hero-assurance span {display:inline-flex;align-items:center;gap:7px;}
.hero-assurance svg {width:15px;height:15px;color:var(--pc-accent);}
.public-hero::after {content:"";position:absolute;width:310px;height:380px;right:-150px;top:100px;border:1px solid #a6b6a9;border-radius:160px;transform:rotate(25deg);box-shadow:0 0 0 40px #205c4605,0 0 0 80px #205c4604;pointer-events:none;}
.public-band {padding-block:64px;}
.category-links {border:none;gap:0;grid-template-columns:repeat(4,minmax(0,1fr));}
.category-links a {border:0;border-bottom:1px solid var(--pc-border);min-height:105px;padding:20px 12px;gap:14px;}
.category-links a:hover {background:var(--pc-accent-soft);}
.category-links strong {font-weight:600;}
.how-summary {background:var(--pc-soft);}
.how-summary ol {counter-reset:steps;gap:36px;margin:28px 0;}
.how-summary li {counter-increment:steps;border-top:1px solid #b6c3b9;padding-top:20px;}
.how-summary li::before {content:"0" counter(steps);color:var(--pc-accent);font-size:12px;font-weight:700;margin-bottom:12px;}
.agent-card {padding:22px;border-color:var(--pc-border);border-radius:var(--pc-radius);box-shadow:var(--pc-shadow);transition:border-color var(--pc-motion),box-shadow var(--pc-motion);}
.agent-card:hover {border-color:#9ab6a5;box-shadow:0 6px 20px #26382b0d;}
.agent-card h3 {font-size:18px;letter-spacing:-.025em;}
.agent-avatar {background:var(--pc-accent-soft);color:var(--pc-accent);font-weight:650;}
.agent-card .rate-list {background:var(--pc-canvas);border:0;border-radius:6px;padding:12px;}
.agent-card-meta .availability {font-size:12px;}
.browse-heading {padding-top:48px;}
.browse-heading h1 {font-size:40px;}
.marketplace-filters,.browse-filters {background:var(--pc-canvas);}
.more-filters {border-radius:6px;background:var(--pc-surface);}
.public-agent-profile .consultation-panel {background:var(--pc-surface);border:1px solid var(--pc-border);border-top:3px solid var(--pc-accent);border-radius:6px;padding:22px;box-shadow:var(--pc-shadow);}
.agent-profile-photo img,.agent-profile-photo>span {border-radius:12px;}
.profile-proof {flex-wrap:wrap;font-size:14px;}
.content-page>h1 {font-size:clamp(32px,4vw,48px);}
.content-page .lead {color:var(--pc-muted);line-height:1.7;}
.process-grid,.support-grid,.journey-grid>a {background:var(--pc-surface);border-color:var(--pc-border);}
.process-grid section>strong {color:var(--pc-accent);}
.auth-page {border-color:var(--pc-border);border-radius:12px;box-shadow:0 12px 40px #23382b09;padding:32px;margin-block:64px;}
.auth-page::before {content:"PAIDCALL / ACCOUNT";display:block;font-size:10px;letter-spacing:.13em;font-weight:700;color:var(--pc-accent);margin-bottom:24px;}
.profile-form {background:var(--pc-surface);border:1px solid var(--pc-border);border-radius:var(--pc-radius);padding:32px;box-shadow:var(--pc-shadow);}
.profile-sections a {border-radius:6px;font-size:12px;}
.dashboard-topbar {background:var(--pc-canvas);border-color:var(--pc-border);}
.dashboard-topbar .profile-shortcut {font-size:13px;padding:8px 12px;border:1px solid var(--pc-border);border-radius:6px;background:var(--pc-surface);}
.dashboard-sidebar {background:#1c2d25;padding:24px 12px 14px;}
.sidebar-label {color:#b3c4b8;font-size:10px;letter-spacing:.12em;font-weight:600;}
.sidebar-section {color:#b3c4b8;letter-spacing:.12em;font-size:10px;padding:20px 12px 8px;}
.dashboard-sidebar nav a {font-size:13px;font-weight:500;padding:10px 12px;min-height:40px;border-radius:5px;border:1px solid transparent;}
.dashboard-sidebar nav a[aria-current=page] {background:#334d3e;border-color:#456553;color:#fff;box-shadow:inset 3px 0 #a6c8b1;}
.dashboard-sidebar nav a:hover {background:#2d4437;}
.sidebar-logout {padding-top:14px;}
.sidebar-logout button {font-size:13px;color:#c1d0c6;}
.dashboard-main {padding-top:104px;}
.dashboard-heading {margin-bottom:32px;}
.dashboard-heading p:not(.eyebrow) {color:var(--pc-muted);font-size:14px;}
.dashboard-metrics {gap:0;background:var(--pc-surface);border:1px solid var(--pc-border);border-radius:var(--pc-radius);overflow:hidden;box-shadow:var(--pc-shadow);}
.dashboard-metrics>a,.dashboard-metrics>div {border:0;border-right:1px solid var(--pc-border);border-radius:0;padding:24px;gap:16px;min-height:132px;}
.dashboard-metrics>:last-child {border-right:0;}
.dashboard-metrics>a:hover {background:var(--pc-accent-soft);}
.dashboard-metrics span {color:var(--pc-muted);font-size:12px;font-weight:550;}
.dashboard-metrics strong {font-size:30px;letter-spacing:-.04em;font-weight:650;font-variant-numeric:tabular-nums;}
.dashboard-section {border-color:var(--pc-border);padding-top:28px;margin:32px 0;}
.dashboard-section .section-heading h2 {font-size:20px;}
.section-heading>a {font-size:13px;font-weight:600;color:var(--pc-accent);}
.table-responsive {border:1px solid var(--pc-border);border-radius:8px;background:var(--pc-surface);box-shadow:var(--pc-shadow);}
.dashboard-table {--bs-table-bg:var(--pc-surface);--bs-table-border-color:#e5e8e1;--bs-table-color:var(--pc-ink);font-size:13px;margin:0;}
.dashboard-table th {background:#eeeee8;color:#4d5b53;font-size:10px;letter-spacing:.075em;font-weight:700;padding:14px 16px;}
.dashboard-table td {padding:15px 16px;line-height:1.6;}
.dashboard-table tbody tr:hover>* {background:#f6f8f3;}
.dashboard-table :is(td,th):has(.money) {font-variant-numeric:tabular-nums;}
.empty-state,.browse-empty {border:1px dashed #b8c6bc;border-radius:8px;padding:32px 24px;background:#f9faf6;color:var(--pc-muted);}
.empty-cell {padding:40px 16px!important;color:var(--pc-muted);}
.agent-recent-calls {max-width:960px;padding-top:16px;margin:24px 0;}
.agent-recent-calls .section-heading {margin-bottom:12px;}
.agent-recent-calls .dashboard-table {display:table;width:100%;}
.agent-recent-calls .dashboard-table th {padding:10px 12px;}
.agent-recent-calls .dashboard-table td {padding:10px 12px;}
.agent-recent-calls .empty-cell {padding:18px 12px!important;}
.settings-page section {border-color:var(--pc-border);padding:28px 0;}
.settings-page section h2 {font-size:20px;}
.settings-page form,.weekly-schedule-form {padding-bottom:8px;}
.admin-agent-row,.client-list article {border-color:var(--pc-border);border-radius:8px;box-shadow:var(--pc-shadow);}
:is(.billing-section,.receipt-summary,.payment-method-list,.number-results) {border-color:var(--pc-border);}
.payment-method-list,.number-results {background:var(--pc-surface);box-shadow:var(--pc-shadow);}
.payment-method-row {padding:22px;}
.credit-balance strong,.receipt-total,#timer,.video-session-meta strong {font-variant-numeric:tabular-nums;letter-spacing:-.04em;}
.call-panel {border:1px solid var(--pc-border);border-top:3px solid var(--pc-accent);border-radius:8px;padding:28px;background:var(--pc-surface);box-shadow:var(--pc-shadow);}
.call-panel .pricebox {background:var(--pc-canvas);padding:16px;border-radius:6px;}
.video-workspace {border-radius:12px;overflow:hidden;box-shadow:0 12px 36px #132a1c14;border-color:var(--pc-border);}
.video-stage {background:#14231c;}
.video-session-meta {background:var(--pc-surface);border:1px solid var(--pc-border);padding:12px 18px;border-radius:8px;}
main .video-controls button:not(.leave-video) {background:#f4f7f5;color:#17231d;}
.video-controls button:hover {box-shadow:0 0 0 4px #ffffff30;}
.video-chat-heading {background:#f6f7f2;}
.local-media {border-radius:8px;}
.message-directory {background:var(--pc-soft);border-radius:8px;}
.conversation-list {border-radius:8px;box-shadow:var(--pc-shadow);}
.thread-heading {border-radius:8px 8px 0 0;}
.message-thread {background:#eeeee8;}
.message-bubble {border-radius:10px 10px 10px 2px;box-shadow:0 1px 2px #26382b06;}
.message-bubble.mine {background:#e0ede3;border-radius:10px 10px 2px 10px;}
.message-compose {border-radius:0 0 8px 8px;}
.notification-item {background:var(--pc-surface);border-color:var(--pc-border);}
.notification-item:hover {background:#f9faf6;}
.alert {border-radius:6px;font-size:14px;padding:16px 20px;}
.alert-success {background:#e8f2e9;color:#214d32;border-color:#b8d2bf;}
.alert-warning {background:#faf2df;color:#684914;border-color:#dbc795;}
.alert-danger {background:#f9e9e9;color:#812a36;border-color:#e0b5bc;}
.error-page {max-width:700px;margin:64px auto;padding:40px;border:1px solid var(--pc-border);border-top:3px solid var(--pc-danger);border-radius:8px;background:var(--pc-surface);}
.error-page h1 {margin-bottom:20px;}
.error-page p {color:var(--pc-muted);}
@media(min-width:1100px) {.public-hero-content {padding-left:26px;border-left:2px solid #a4bcae;} }
@media(max-width:1000px) {.public-nav {gap:12px;padding-inline:24px;} .public-nav-links {gap:12px;} }
@media(max-width:900px) {.public-nav-links {background:var(--pc-canvas);} .dashboard-metrics>:nth-child(2) {border-right:0;} .dashboard-metrics>:nth-child(n+3) {border-top:1px solid var(--pc-border);} .category-links {grid-template-columns:repeat(2,minmax(0,1fr));} }
@media(max-width:700px) {.public-nav {height:68px;padding-inline:16px;} .public-brand {font-size:21px;gap:7px;} .public-brand::before {width:21px;height:23px;border-width:5px;} .public-hero {padding:52px 22px;min-height:480px;} .public-hero-content {padding:0;background:transparent;} .public-hero h1 {font-size:46px;} .public-hero::after {display:none;} .hero-actions .btn {padding:10px 14px;} .public-band {padding:40px 20px;} .dashboard-main {padding:92px 18px 40px;} .dashboard-metrics>a,.dashboard-metrics>div {padding:18px;min-height:110px;} .dashboard-metrics strong {font-size:25px;} .dashboard-heading {gap:14px;} .auth-page {margin:32px 16px;padding:24px;} .profile-form {padding:22px 18px;} .video-room-header {align-items:flex-start;flex-wrap:wrap;} .video-session-meta {align-items:flex-start;} .error-page {padding:24px;margin:32px 16px;} .section-heading {align-items:flex-start;flex-wrap:wrap;} }
@media(max-width:380px) {.public-nav {padding-inline:10px;gap:7px;} .public-nav-actions {gap:6px;} .public-brand {font-size:18px;} .public-brand::before {display:none;} .public-hero h1 {font-size:40px;} .category-links {grid-template-columns:1fr;} }
@media(prefers-reduced-motion:reduce) {*,*::before,*::after {animation:none!important;transition:none!important;scroll-behavior:auto!important;} }
@media print {.dashboard-sidebar,.dashboard-topbar,.public-nav,.public-footer {display:none;} .dashboard-main {margin:0;padding:0;} body.dashboard-body {background:white;} }
.sidebar-group {margin-top:12px;}
.sidebar-group summary {display:flex;align-items:center;justify-content:space-between;padding:8px 12px;color:#b3c4b8;font-size:10px;text-transform:uppercase;letter-spacing:.12em;cursor:pointer;list-style:none;}
.sidebar-group summary::-webkit-details-marker {display:none;}
.sidebar-group summary::after {content:"+";font-size:15px;}
.sidebar-group[open] summary::after {content:"−";}
.sidebar-group summary:hover {color:#fff;}
/* Secondary copy remains readable on the warm canvas and white surfaces. */
:root {--bs-link-color:var(--pc-accent);--bs-link-hover-color:var(--pc-accent-hover);}
.profile-handle {color:var(--pc-accent);}
:is(.category-links span,.receipt-reference,.receipt-summary small,.receipt-summary span,.audit-list time,.audit-list span,.review-list time,.agent-card-tags,.form-note,.muted,.live-rate,.footer) {color:var(--pc-muted);}
.review-score span {color:var(--pc-muted);}
.video-session-meta .session-rate {padding-top:6px;margin-top:6px;border-top:1px solid var(--pc-border);color:var(--pc-accent);font-size:12px;font-weight:650;}
:root {--bs-link-color-rgb:32,92,70;--bs-link-hover-color-rgb:23,69,52;}

/* Compact controls: borders are included in the height, with a single focus ring. */
:root {--control-height:36px;--pc-control-height:36px;--pc-button-height:34px;}
main input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),
main select:not([size]):not([multiple]) {height:var(--pc-control-height);min-height:var(--pc-control-height);padding:6px 10px;font-size:14px;line-height:22px;border-width:1px;border-radius:5px;}
main textarea {padding:8px 10px;font-size:14px;line-height:1.5;border-width:1px;border-radius:5px;}
main input[type=file] {padding:5px 8px;font-size:13px;line-height:24px;}
main .btn,main .btn-sm,main .auth-page form>.btn,.public-nav .public-nav-actions .btn,
.dashboard-topbar .btn,main .hero-actions .btn,main .marketplace-filters .btn,
main .history-filters .btn,main .report-filters .btn {
 min-height:var(--pc-button-height);height:auto;padding:6px 12px;font-size:13px;line-height:20px;border-width:1px;border-radius:5px;
}
main .btn-sm {min-height:30px;padding:4px 9px;font-size:12px;}
main .btn-outline {background:transparent;color:var(--pc-accent);border:1px solid #a9b5ac;}
main .btn-outline:hover {background:var(--pc-accent-soft);border-color:var(--pc-accent);}
main .btn:focus-visible,.public-nav .btn:focus-visible,.dashboard-topbar .btn:focus-visible {outline:2px solid var(--pc-accent);outline-offset:2px;box-shadow:none;}
main label {margin-top:12px;margin-bottom:5px;font-size:13px;}
main .input-prefix {border-width:1px;border-radius:5px;overflow:visible;}
main .input-prefix input {height:calc(var(--pc-control-height) - 2px);min-height:calc(var(--pc-control-height) - 2px);border:0;}
main .input-prefix:focus-within {border-color:var(--pc-accent);box-shadow:0 0 0 2px #205c4618;}
main .input-prefix input:focus-visible {outline:none;box-shadow:none;}
main .input-prefix span {padding-inline:10px;font-size:13px;}
main .password-field input {padding-right:40px!important;}
main .password-field .password-visibility {width:32px;height:32px;min-height:32px;padding:0;border-radius:4px;}
main .password-visibility svg {width:18px;height:18px;}
main .language-picker summary,main .timezone-picker summary {min-height:var(--pc-control-height);padding:6px 10px;font-size:13px;}
main .message-compose textarea,main .support-form textarea {min-height:88px;}
main .room-message-form textarea {min-height:36px;}
@media(max-width:700px),(pointer:coarse) {
 :root {--control-height:40px;--pc-control-height:40px;--pc-button-height:40px;}
 main input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),
 main select:not([size]):not([multiple]),main textarea {font-size:16px;}
 main input[type=file] {font-size:13px;}
 main .btn-sm {min-height:36px;}
 main .password-field .password-visibility {width:36px;height:36px;min-height:36px;}
}
@media(max-width:700px) {
 .dashboard-topbar .call-sound-slot .call-sound-enable {padding:4px;font-size:11px;line-height:14px;min-height:36px;white-space:normal;}
}
