/* ============================================================
   YACHTWAVE — Compliance Section Styles
   Shared by compliance.php and all compliance-*.php statement pages.
   Layout mirrors the legal pages (terms.php / privacy-*.php).
   ============================================================ */

.compliance-content {
    max-width: 900px;
    margin: 0 auto;
    padding: 80px 38px;
}

.compliance-content h2 {
    font-size: 28px;
    font-weight: 700;
    color: #2D3748;
    margin: 40px 0 20px 0;
}

.compliance-content h2:first-of-type {
    margin-top: 0;
}

.compliance-content h3 {
    font-size: 20px;
    font-weight: 600;
    color: #0478CC;
    margin: 30px 0 15px 0;
}

.compliance-content p {
    font-size: 16px;
    line-height: 1.8;
    color: #4A5568;
    margin-bottom: 15px;
}

.compliance-content ul,
.compliance-content ol {
    margin: 15px 0 15px 30px;
    color: #4A5568;
}

.compliance-content li {
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 10px;
}

.compliance-content a {
    color: #0478CC;
    text-decoration: underline;
}

.compliance-content a:hover {
    color: #4AA6E8;
}

.compliance-meta {
    font-style: italic;
    color: #718096;
    margin-bottom: 30px;
}

/* ---- Draft / status banner (remove or swap to .issued at go-live) ---- */
.compliance-status {
    border-radius: 8px;
    padding: 18px 22px;
    margin: 0 0 34px 0;
    font-size: 15px;
    line-height: 1.7;
}

.compliance-status strong { font-weight: 700; }

.compliance-status--draft {
    background-color: #FCF0D7;         /* Yellow Light */
    border-left: 4px solid #F2B339;    /* Yellow */
    color: #744210;
}

.compliance-status--draft a { color: #744210; }

.compliance-status--issued {
    background-color: #D0F5E8;         /* Green Light */
    border-left: 4px solid #13CE8B;    /* Green */
    color: #0B4A34;
}

.compliance-status ul { margin: 10px 0 4px 22px; }
.compliance-status li { font-size: 15px; margin-bottom: 6px; color: inherit; }

/* ---- Callout for informational notes ---- */
.compliance-note {
    background-color: #D9EBF7;         /* Tertiary Blue */
    border-left: 4px solid #0478CC;    /* Primary Blue */
    padding: 15px 20px;
    margin: 20px 0;
}
.compliance-note p { margin: 0; color: #0B2239; }

/* ---- Placeholder tokens the owner must fill before issuing ---- */
.ph {
    background-color: #FEE7DB;
    color: #9C3D12;
    padding: 1px 6px;
    border-radius: 4px;
    font-weight: 600;
    font-style: normal;
    white-space: nowrap;
}

/* ---- Declaration data tables ---- */
.compliance-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 20px 0 25px 0;
    font-size: 15px;
}

.compliance-content th,
.compliance-content td {
    text-align: left;
    padding: 11px 14px;
    border: 1px solid #E2E8F0;
    vertical-align: top;
    line-height: 1.6;
    color: #4A5568;
}

.compliance-content th {
    background-color: #F7FAFC;
    color: #2D3748;
    font-weight: 600;
}

.compliance-content .table-scroll {
    overflow-x: auto;
    margin: 20px 0 25px 0;
}
.compliance-content .table-scroll table { margin: 0; }

/* Key/value spec table (no header row) */
.spec-table th {
    width: 34%;
    background-color: #F7FAFC;
    color: #2D3748;
}

/* ---- Signature block ---- */
.signature-block {
    margin-top: 40px;
    padding-top: 25px;
    border-top: 2px solid #E2E8F0;
}
.signature-block .sig-line {
    display: inline-block;
    min-width: 320px;
    border-bottom: 1px solid #718096;
    height: 34px;
    margin: 6px 0 4px 0;
}

/* Electronic signature notation, e.g. /john e. okeefe/ */
.signature-block .esign {
    display: inline-block;
    min-width: 320px;
    border-bottom: 1px solid #718096;
    padding: 2px 2px 8px 2px;
    margin: 6px 0 4px 0;
    font-size: 22px;
    font-style: italic;
    letter-spacing: 0.01em;
    color: #0B2239;
}
.signature-block .esign-label {
    font-size: 12px;
    color: #718096;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    margin: 2px 0 0 0;
}

/* ============================================================
   Index page — status board + statement cards
   ============================================================ */
.compliance-board {
    overflow-x: auto;
    margin: 25px 0 40px 0;
}
.compliance-board table { margin: 0; }

.badge {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.02em;
    white-space: nowrap;
    line-height: 1.5;
}
.badge--prep   { background:#FCF0D7; color:#8A6212; }   /* In preparation */
.badge--pending{ background:#FEE7DB; color:#9C3D12; }   /* Pending evidence */
.badge--issued { background:#D0F5E8; color:#0B4A34; }   /* Issued */
.badge--na     { background:#EDF2F7; color:#5A6A80; }   /* N/A */

.statement-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 18px;
    margin: 25px 0 40px 0;
}

.statement-card {
    display: block;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    padding: 22px;
    text-decoration: none !important;
    transition: border-color .2s, box-shadow .2s, transform .2s;
    background: #fff;
}
.statement-card:hover {
    border-color: #4AA6E8;
    box-shadow: 0 6px 18px rgba(4,120,204,0.10);
    transform: translateY(-2px);
}
.statement-card .sc-market {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #0478CC;
    margin-bottom: 6px;
}
.statement-card .sc-title {
    font-size: 18px;
    font-weight: 700;
    color: #2D3748;
    margin-bottom: 8px;
    text-decoration: none;
}
.statement-card .sc-desc {
    font-size: 14px;
    line-height: 1.6;
    color: #5A6A80;
    margin: 0;
}

@media (max-width: 768px) {
    .compliance-content { padding: 50px 25px; }
    .compliance-content h2 { font-size: 24px; }
    .compliance-content h3 { font-size: 18px; }
    .signature-block .sig-line { min-width: 100%; }
}
