/* AjiraPlex interface palette. Document artwork keeps its own template colours. */
:root {
    --ink: #18344b;
    --text: #344b60;
    --muted: #526477;
    --primary: #0b6b62;
    --primary-hover: #08574f;
    --teal: #0b6b62;
    --surface: #fff;
    --paper: #f8faf9;
    --border: #dce5e6;
    --line: #dce5e6;
    --mint: #eaf5f1;
    --soft-blue: #edf3f7;
    --control-border: #7f969e;
    --orange: #a34e23;
    --shadow: 0 12px 36px #18344b0a;
}

body { background: var(--paper); color: var(--text); }
h1, h2, h3, h4, .brand { color: var(--ink); }
::selection { color: var(--ink); background: #cce9df; }
::placeholder { color: var(--muted); opacity: 1; }
.site-header { border-color: var(--border); }
.nav nav a, .workspace-nav > a, .panel label { color: var(--text); }
.nav nav a:hover, .quiet-link:hover, .text-button:hover { color: var(--primary-hover); }
.btn { color: #fff; background: var(--primary); border-color: var(--primary); }
.btn:hover { color: #fff; background: var(--primary-hover); border-color: var(--primary-hover); }
.btn-light { color: var(--ink); background: #fff; border-color: var(--control-border); }
.btn-light:hover { color: var(--primary-hover); background: var(--mint); border-color: var(--primary); }
.btn-danger { color: #9e2438; background: #fff1f2; border-color: #ca7c88; }
.btn-danger:hover { color: #851d2e; background: #ffe4e8; border-color: #9e2438; }
.menu-toggle { color: var(--ink); border-color: var(--control-border); background: #fff; }
.text-button, .quiet-link, .eyebrow { color: var(--primary); }

.career-hero {
    background: radial-gradient(ellipse at 90% 25%, #d8eee6 0, transparent 52%), var(--paper);
    border-bottom: 1px solid var(--border);
}
.hero-search { box-shadow: var(--shadow); }
.hero-proof, .demo-label { color: var(--muted); }
.live-dot { background: var(--primary); box-shadow: 0 0 0 5px #d8eee6; }
.illustration-orbit { background: #e1efe9; border-color: #c1dcd2; }
.mock-cv { border-color: var(--border); box-shadow: 0 24px 70px #18344b16; }
.mock-avatar, .mock-tags b { background: var(--mint); }
.mock-line { background: #e1e9ea; }
.float-label, .float-status, .float-alert { box-shadow: var(--shadow); }
.status-icon { background: var(--mint); color: var(--primary); }

.category-tile > span, .pill, .arrow-link, .empty-icon,
.admin-links a, .posting-step, .contact-symbol, .hub-link-strip a,
.social-channel-icon, .social-workspace .status.Queued {
    color: var(--primary);
    background: var(--mint);
}
.category-tile > b { color: var(--muted); }
.category-tile:hover, .job-card:hover { border-color: #7cae9f; box-shadow: var(--shadow); }
.job-card.is-featured { border-color: #9bc6b8; background: linear-gradient(150deg, #fff, #f2f9f5); }
.company-icon { color: var(--ink); background: var(--soft-blue); }
.tag-row span { color: var(--muted); background: #f1f5f6; border-color: var(--border); }
.empty-state { border-color: var(--control-border); }
.tools-feature, .search-band, .sidebar-promo { background: var(--mint); border-color: #c6ded5; }
.tools-grid article { border-color: var(--border); }
.employer-banner { background: var(--soft-blue); border-color: #cbdce5; }
.workspace-nav > a:hover, .workspace-nav > a.active { background: var(--mint); color: var(--primary); }
.panel, .template-card { border-color: var(--border); }
.career-table th { background: #f1f5f6; color: var(--ink); }
.detail-grid .panel p { color: var(--text); }
.notice, .cv-ai-intro { background: var(--mint); border-color: #b9d7ca; color: #205348; }
.status { background: var(--soft-blue); color: #38546c; }
.status.Published, .status.Approved, .status.Sent, .status.Hired { background: #e5f3e9; color: #22633b; }
.status.Rejected, .status.Failed { background: #ffeded; color: #9e2438; }
.status.Pending, .status.Shortlisted, .status.Interview { background: #fff3dc; color: #79530e; }

input, textarea, select,
.panel input:not([type=checkbox]):not([type=radio]), .panel select, .panel textarea {
    color: var(--ink); background: #fff; border-color: var(--control-border);
}
input[type=checkbox], input[type=radio] { accent-color: var(--primary); }
.posting-form input[readonly] { color: var(--text); background: #f0f4f4; }
.form-card .builder-template-option { border-color: var(--control-border); }
.builder-template-option:has(input:checked) {
    border-color: var(--primary); background: var(--mint);
    box-shadow: 0 0 0 1px var(--primary); outline: 2px solid var(--primary); outline-offset: 2px;
}
.builder-template-image, .document-preview { background: var(--soft-blue); border-color: var(--border); }
.preview-icon { background: var(--mint); color: var(--primary); }
.template-workflow { color: var(--primary); }
.template-workflow span { color: var(--primary); background: var(--mint); border-color: #b9d7ca; }
.posting-aside { background: linear-gradient(150deg, var(--mint), #f8faf9); }
.posting-form small, .help, .lead, .muted { color: var(--muted); }
.posting-received .panel a, .information-copy a, .hub-advice a { color: var(--primary); text-decoration: underline; text-underline-offset: 3px; }
.generation-error { background: #fff3dc; border-color: #c6a460; color: #79530e; }

.site-footer { background: #fff; }
.site-footer .footer-column a, .contact-offices address { color: var(--muted); }
.site-footer .footer-column a { font-size: 13px; }
.site-footer .footer-column h2 { color: var(--ink); }
.footer-bottom, .site-footer .footer-brand p { color: var(--muted); }
.footer-bottom a, .site-footer .footer-brand > a:last-child { color: var(--primary); }
.social-hero { background: var(--ink); }
.social-hero h1 { color: #fff; }
.social-hero-mark { color: #9fddcc; }
.social-stats .stat-card b, .social-platform-label, .social-optional-tools > summary,
.social-formats button.is-selected { color: var(--primary); }
.social-formats { background: var(--soft-blue); }
.social-formats button, .social-caption-footer, .social-post-row small { color: var(--muted); }
.quick-share-native { color: var(--primary); background: var(--mint); border-color: #a4cbbb; }
.quick-share-button:hover { background: #f1f5f6; border-color: var(--primary); }

a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible,
textarea:focus-visible, summary:focus-visible, .ai-button:focus-visible,
.builder-tabs button:focus-visible, .builder-template-option:focus-within,
.quick-share-button:focus-visible {
    outline: 3px solid var(--primary); outline-offset: 3px;
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
