.miromax-cp {
    --mmx-border: #e5e7eb;
    --mmx-text: #111827;
    --mmx-muted: #667085;
    --mmx-bg: #ffffff;
    --mmx-soft: #f9fafb;
    --mmx-accent: #1f2937;
    color: var(--mmx-text);
}
.miromax-cp * { box-sizing: border-box; }
.miromax-cp a { text-decoration: none; }
.miromax-cp-hero {
    display: grid;
    grid-template-columns: 1fr minmax(180px, 260px);
    gap: 18px;
    align-items: stretch;
    padding: 22px;
    border: 1px solid var(--mmx-border);
    border-radius: 18px;
    background: var(--mmx-bg);
    margin: 18px 0;
}
.miromax-cp-eyebrow {
    margin: 0 0 6px;
    color: var(--mmx-muted);
    text-transform: uppercase;
    letter-spacing: .04em;
    font-size: 12px;
    font-weight: 700;
}
.miromax-cp-hero h3 { margin: 0 0 8px; font-size: 28px; line-height: 1.2; }
.miromax-cp-hero p { margin: 0; color: var(--mmx-muted); }
.miromax-cp-status-box,
.miromax-cp-card,
.miromax-cp-section {
    border: 1px solid var(--mmx-border);
    border-radius: 16px;
    background: var(--mmx-bg);
}
.miromax-cp-status-box {
    padding: 16px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: var(--mmx-soft);
}
.miromax-cp-status-box span,
.miromax-cp-card span,
.miromax-cp-section .miromax-cp-grid span {
    display: block;
    color: var(--mmx-muted);
    font-size: 12px;
    margin-bottom: 4px;
}
.miromax-cp-status-box strong { font-size: 18px; }
.miromax-cp-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}
.miromax-cp-summary-grid { margin: 16px 0; }
.miromax-cp-card { padding: 14px; }
.miromax-cp-card strong { display: block; }
.miromax-cp-timeline {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 8px;
    margin: 16px 0;
}
.miromax-cp-step {
    padding: 12px 8px;
    border: 1px solid var(--mmx-border);
    border-radius: 14px;
    background: var(--mmx-soft);
    text-align: center;
    color: var(--mmx-muted);
}
.miromax-cp-step span {
    display: inline-flex;
    width: 24px;
    height: 24px;
    border-radius: 999px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--mmx-border);
    margin-bottom: 5px;
    background: #fff;
}
.miromax-cp-step strong { display: block; font-size: 12px; }
.miromax-cp-step.is-done { color: var(--mmx-text); background: #fff; }
.miromax-cp-section {
    padding: 18px;
    margin: 16px 0;
}
.miromax-cp-section h4 { margin-top: 0; margin-bottom: 10px; font-size: 21px; }
.miromax-cp-section p:last-child { margin-bottom: 0; }
.miromax-cp-button,
.miromax-cp button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 10px 14px;
    border-radius: 999px;
    border: 1px solid var(--mmx-border);
    background: #fff;
    color: var(--mmx-text);
    cursor: pointer;
    font-weight: 700;
}
.miromax-cp-button-primary,
.miromax-cp button.miromax-cp-button-primary {
    background: var(--mmx-accent);
    color: #fff;
    border-color: var(--mmx-accent);
}
.miromax-cp-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 12px; }
.miromax-cp-decision-form label,
.miromax-cp-access-form label { display: block; margin: 10px 0; font-weight: 700; }
.miromax-cp-decision-form textarea,
.miromax-cp-access-form input {
    width: 100%;
    margin-top: 4px;
    padding: 10px;
    border: 1px solid var(--mmx-border);
    border-radius: 12px;
}
.miromax-cp-alert {
    padding: 12px 14px;
    border-radius: 12px;
    margin: 12px 0;
}
.miromax-cp-alert-ok { background: #ecfdf3; border: 1px solid #abefc6; }
.miromax-cp-small { color: var(--mmx-muted); font-size: 13px; }
.miromax-cp-table-wrap { overflow-x: auto; }
.miromax-cp-table {
    width: 100%;
    border-collapse: collapse;
}
.miromax-cp-table th,
.miromax-cp-table td {
    padding: 10px;
    border-bottom: 1px solid var(--mmx-border);
    text-align: left;
    vertical-align: top;
}
.miromax-cp-table th { font-size: 12px; color: var(--mmx-muted); text-transform: uppercase; }
.miromax-cp-access {
    padding: 18px;
    border: 1px solid var(--mmx-border);
    border-radius: 16px;
    background: var(--mmx-bg);
}
@media (max-width: 900px) {
    .miromax-cp-hero,
    .miromax-cp-grid,
    .miromax-cp-timeline { grid-template-columns: 1fr; }
}
