.amcc { position: fixed; z-index: 100000; left: 0; right: 0; bottom: 0; padding: 16px; pointer-events: none; font-family: var(--body, Georgia, serif); }
.amcc[hidden] { display: none; }
.amcc__box { position: relative; pointer-events: auto; max-width: 980px; margin: 0 auto; background: #faf6ef; color: #2a2220; border: 1px solid #e2d9ca; border-top: 3px solid #5e0f1a; box-shadow: 0 10px 40px rgba(42,34,32,.28); padding: 22px 28px 20px; font-size: 16px; line-height: 1.55; }
.amcc h2 { margin: 0 0 .35em; font-family: var(--serif, Georgia, serif); font-weight: 500; font-size: 1.5rem; line-height: 1.2; color: #2a2220; }
.amcc p { margin: 0 0 14px; }
.amcc a { color: #5e0f1a; text-underline-offset: 3px; }
.amcc__x { position: absolute; top: 8px; right: 12px; border: 0; background: none; font-size: 28px; line-height: 1; color: #6d625c; cursor: pointer; padding: 4px 8px; }
.amcc__x:hover { color: #5e0f1a; }
.amcc__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; }
.amcc__btn { font: inherit; font-size: .8rem; letter-spacing: .14em; text-transform: uppercase; font-weight: 600; cursor: pointer; padding: 13px 24px; border: 1px solid #5e0f1a; background: #5e0f1a; color: #fff; transition: background .2s, color .2s; }
.amcc__btn:hover { background: #45090f; border-color: #45090f; }
.amcc__btn--link { background: none; color: #5e0f1a; border-color: transparent; text-decoration: underline; text-underline-offset: 4px; padding-inline: 10px; }
.amcc__btn--link:hover { background: none; color: #45090f; border-color: transparent; }
.amcc__btn:focus-visible, .amcc__x:focus-visible, .amcc a:focus-visible { outline: 3px solid #b08a4e; outline-offset: 2px; }
.amcc__panel { border-top: 1px solid #e2d9ca; margin: 4px 0 16px; padding-top: 14px; display: grid; gap: 10px; }
.amcc__opt { display: flex; gap: 12px; align-items: flex-start; cursor: pointer; }
.amcc__opt input { margin-top: 5px; width: 18px; height: 18px; accent-color: #5e0f1a; flex: none; }
.amcc__inline { display: inline-block; margin: 4px 0 8px; }
.amcc-table-wrap { overflow-x: auto; margin: 0 0 1.4em; }
.amcc-table { border-collapse: collapse; width: 100%; font-size: .95rem; min-width: 560px; }
.amcc-table th, .amcc-table td { text-align: left; vertical-align: top; padding: 10px 12px; border: 1px solid #e2d9ca; }
.amcc-table th { background: #f1ebe0; font-weight: 600; }
.amcc-table code { font-size: .85em; background: #f1ebe0; padding: 1px 5px; word-break: break-all; }
@media (max-width: 640px) { .amcc { padding: 8px; } .amcc__box { padding: 18px 16px 16px; font-size: 15px; max-height: 88vh; overflow-y: auto; } .amcc__btn--main { flex: 1 1 40%; padding-inline: 12px; } }
@media (prefers-reduced-motion: no-preference) { .amcc:not([hidden]) .amcc__box { animation: amcc-in .3s ease-out; } @keyframes amcc-in { from { transform: translateY(20px); opacity: 0; } } }
.amcc [hidden] { display: none !important; }
