/* Artisa complaints: the public form steps, the anonymous code, the status page.
   Builds on artisa-forms' aff.css (the same ivory and gold) following docs/house-style.md. */
.aff:is(#artisa-complaint,#artisa-status) .aff-group{background:linear-gradient(180deg,#FFFDF8 0%,#FBF5E8 100%);border:1px solid #C9AF7E;border-radius:14px;box-shadow:0 2px 6px -2px rgba(74,52,16,.18),inset 0 1px 0 #fff;padding:22px 22px 10px;margin:0 0 18px}
.aff:is(#artisa-complaint,#artisa-status) .aff-group>legend{float:left;width:100%;margin:0 0 14px;font-family:"Cormorant Garamond",Georgia,serif;font-size:24px;font-weight:600;color:#7A5E2E}
.aff:is(#artisa-complaint,#artisa-status) .aff-group>legend::before{content:"";display:inline-block;width:10px;height:10px;margin:0 10px 2px 0;border-radius:50%;background:linear-gradient(160deg,#C9AF7E 0%,#A6864B 45%,#7A5E2E 100%)}
.aff:is(#artisa-complaint,#artisa-status) .aff-group>.aff-grid{clear:both}
/* Tiles: the forms plugin draws each choice as a house tile (its .aff-chip span); here only the grid and the set-apart urgent choice. */
.aff:is(#artisa-complaint) .aff-tiles .aff-opts{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
.aff:is(#artisa-complaint) .aff-tiles .aff-chip{display:flex}
.aff:is(#artisa-complaint) .aff-tiles .aff-chip span{width:100%;justify-content:flex-start;text-align:left;padding:.7rem 2.2rem .7rem 1rem;min-height:3.2rem}
.aff:is(#artisa-complaint) .aff-tiles .aff-chip input:checked+span::after{top:8px;right:8px}
.aff:is(#artisa-complaint) .aff-tiles .aff-chip-apart{grid-column:1/-1;margin-top:6px}
.aff:is(#artisa-complaint) .aff-tiles .aff-chip-apart span{border-color:#E6B9A6;background:#FDF0EC;color:#8A4322}
.aff:is(#artisa-complaint) .aff-tiles .aff-chip-apart input:checked+span{background:linear-gradient(160deg,#C9AF7E 0%,#A6864B 45%,#7A5E2E 100%);border-color:#7A5A22;color:#fff}
.aff:is(#artisa-complaint) .aff-hint{margin:12px 0 0;padding:12px 16px;border-left:6px solid;border-image:linear-gradient(180deg,#C9AF7E,#7A5E2E) 1;background:linear-gradient(180deg,#FFFBEF,#F6E9CC);border-radius:0 12px 12px 0;color:#2E2A24;font-size:14px;line-height:1.55}
.aff:is(#artisa-complaint) .acx-signed-in-note{margin:0 0 14px;padding:10px 14px;border:1px dashed #C9AF7E;border-radius:10px;color:#6B6154}
/* The thank-you: the reference, or the code shown once. */
.aff:is(#artisa-complaint) .acx-ref{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.35em;color:#7A5E2E;letter-spacing:.04em}
.aff:is(#artisa-complaint) .acx-code{margin:18px auto;max-width:460px;padding:22px 18px;border:1px dashed #A6864B;border-radius:14px;background:#fff;text-align:center}
.aff:is(#artisa-complaint) .acx-code span{display:block;font-family:"Cormorant Garamond",Georgia,serif;font-size:44px;font-weight:600;letter-spacing:.12em;color:#7A5E2E;white-space:nowrap}
.aff:is(#artisa-complaint) .acx-code-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:center;margin:0 0 16px}
.aff:is(#artisa-complaint) .acx-code-actions .aff-submit{width:auto;margin:0}
.aff:is(#artisa-complaint,#artisa-status) .acx-btn2{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 22px;border:1.5px solid #C9AF7E;border-radius:999px;background:#FFFDF8;color:#7A5E2E;font:inherit;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.aff:is(#artisa-complaint,#artisa-status) .acx-btn2:hover{background:#F6E9CC}
.aff:is(#artisa-complaint,#artisa-status) .acx-btn2:focus-visible{outline:3px solid rgba(166,134,75,.45);outline-offset:2px}
/* The status page. */
.aff:is(#artisa-status) #acx-code{font-family:"Cormorant Garamond",Georgia,serif;font-size:26px;letter-spacing:.1em;text-transform:uppercase}
.acx-status-view{max-width:700px;margin:22px auto 0;padding:24px;background:linear-gradient(180deg,#FFFDF8 0%,#FBF5E8 100%);border:1px solid #C9AF7E;border-radius:14px;box-shadow:0 2px 6px -2px rgba(74,52,16,.18);color:#2E2A24;font-family:Jost,sans-serif}
.acx-status-view:focus{outline:3px solid rgba(166,134,75,.45);outline-offset:2px}
.acx-status-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 16px}
.acx-status-meta{color:#6B6154;font-size:14px}
.acx-pill{display:inline-block;padding:4px 12px;border-radius:999px;border:1px solid #C9AF7E;background:#F7F1E5;color:#7A5E2E;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.acx-pill-replied{background:#EEF6EE;border-color:#B8D8B8;color:#2C5F2C}.acx-pill-closed{background:#EFE6D4;color:#6B6154}.acx-pill-looking{background:linear-gradient(180deg,#FFFBEF,#F6E9CC)}
.acx-thread{display:grid;gap:12px;margin:0 0 18px}
.acx-msg{padding:14px 16px;border-radius:12px;border:1px solid rgba(166,134,75,.28);background:#fff}
.acx-msg.is-ours{background:linear-gradient(180deg,#FFFBEF,#F6E9CC);border-left:6px solid;border-image:linear-gradient(180deg,#C9AF7E,#7A5E2E) 1}
.acx-msg-from{display:block;margin:0 0 6px;color:#7A5E2E;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.acx-msg-body{margin:0;white-space:pre-wrap;line-height:1.6}
.acx-status-note{margin:0 0 12px;color:#6B6154}
.acx-reply-form label{display:block;margin:0 0 6px;color:#7A5E2E;font-weight:600}
.acx-reply-form textarea{width:100%;box-sizing:border-box;padding:12px 14px;border:1.5px solid #C9AF7E;border-radius:10px;background:#fff;color:#2E2A24;font:inherit;box-shadow:inset 0 1px 2px rgba(74,52,16,.06)}
.acx-reply-form textarea:focus{outline:none;border-color:#7A5E2E;box-shadow:0 0 0 3px rgba(166,134,75,.2)}
.acx-reply-form .aff-actions{margin:12px 0 0}
@media (max-width:640px){.aff:is(#artisa-complaint,#artisa-status) .aff-group{padding:16px 14px 6px}.aff:is(#artisa-complaint) .aff-tiles .aff-opts{grid-template-columns:1fr}.aff:is(#artisa-complaint) .acx-code span{font-size:28px;letter-spacing:.08em}.acx-status-view{padding:16px}}
@media (prefers-reduced-motion:reduce){.aff:is(#artisa-complaint) .aff-tiles .aff-chip span{transition:none}.aff:is(#artisa-complaint) .aff-tiles .aff-chip:hover span{transform:none}}
