.brand-mark-ouvi{font-weight:800;background:linear-gradient(145deg,#0ca4b7,#05717a)}
.ouvi-hero{background:radial-gradient(circle at 80% 10%,rgba(46,198,205,.26),transparent 32%),linear-gradient(135deg,#043f43 0%,#087985 65%,#0a8c98 100%)}
.ouvi-types{padding:4.5rem 0;background:#fff}.type-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;margin-top:2rem}
.type-grid>a{display:flex;min-height:185px;flex-direction:column;align-items:flex-start;gap:.65rem;padding:1.35rem;border:1px solid #d8e8eb;border-radius:20px;background:linear-gradient(160deg,#fff,#f5fbfc);color:#173b43;text-decoration:none;box-shadow:0 10px 30px rgba(5,77,84,.06);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.type-grid>a:hover,.type-grid>a:focus-visible{transform:translateY(-4px);border-color:#0b9bad;box-shadow:0 18px 38px rgba(5,77,84,.14)}
.type-grid>a>span{display:grid;width:48px;height:48px;place-items:center;border-radius:15px;background:#e7f8fa;color:#087d89;font-size:1.35rem;font-weight:900}.type-grid strong{font-size:1.05rem}.type-grid small{color:#61777c;line-height:1.55}
.manifestation-choices{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.7rem}.manifestation-choices label{position:relative;cursor:pointer}.manifestation-choices input{position:absolute;opacity:0;pointer-events:none}.manifestation-choices span{display:flex;min-height:112px;flex-direction:column;gap:.35rem;padding:1rem;border:2px solid #dbe8ea;border-radius:15px;background:#fff;transition:.18s ease}.manifestation-choices small{color:#677c81;line-height:1.4}.manifestation-choices input:checked+span{border-color:#0796a6;background:#eefbfd;box-shadow:0 0 0 3px rgba(7,150,166,.1)}.manifestation-choices input:focus-visible+span{outline:3px solid rgba(7,150,166,.28);outline-offset:2px}
.anonymous-box{padding:1.1rem;border:1px solid #c7e5e8;border-radius:16px;background:#f2fbfc}.anonymous-box .check-row{align-items:flex-start}.anonymous-box small{display:block;margin-top:.3rem;color:#597177;line-height:1.45}
.credential-box{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0}.credential-box>div{padding:1.25rem;border:1px solid #bfe1e5;border-radius:16px;background:#f2fbfc}.credential-box span{display:block;color:#597177;font-size:.82rem;text-transform:uppercase;letter-spacing:.06em}.credential-box strong{display:block;margin-top:.45rem;color:#065b65;font-size:1.35rem;letter-spacing:.04em}.success-badge{display:grid;width:64px;height:64px;place-items:center;margin:0 auto 1rem;border-radius:50%;background:#daf5e9;color:#138357;font-size:2rem;font-weight:900}.receipt-card{text-align:center}.receipt-card .alert{text-align:left}
.type-pill{display:inline-flex;align-items:center;padding:.28rem .62rem;border-radius:999px;background:#e6f7f9;color:#087783;font-size:.73rem;font-weight:800;white-space:nowrap}.type-praise{background:#fff1f5;color:#a33b60}.type-complaint{background:#fff4df;color:#8a6012}.type-denunciation{background:#ffecec;color:#9a3434}.type-request{background:#eef2ff;color:#4554a0}
.security-note{padding:1rem;border:1px solid #cfe4e7;border-radius:14px;background:#f4fafb;color:#415c62}.security-note p{margin:.35rem 0 0;font-size:.88rem;line-height:1.5}.choice-disabled{opacity:.58;cursor:not-allowed}.rating-row{display:flex;flex-wrap:wrap;gap:.6rem}.rating-row label{cursor:pointer}.rating-row input{position:absolute;opacity:0}.rating-row span{display:block;padding:.7rem .9rem;border:2px solid #d6e5e7;border-radius:12px;background:#fff;font-weight:800}.rating-row input:checked+span{border-color:#e0a000;background:#fff8dc;color:#8c6100}.panel-actions{display:flex;flex-wrap:wrap;gap:.6rem}
@media(max-width:1100px){.type-grid{grid-template-columns:repeat(3,1fr)}.manifestation-choices{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){.ouvi-types{padding:3rem 0}.type-grid,.manifestation-choices{grid-template-columns:1fr}.type-grid>a{min-height:auto}.credential-box{grid-template-columns:1fr}.credential-box strong{font-size:1.05rem;word-break:break-all}.panel-actions{width:100%}.panel-actions .button{width:100%}}@media(prefers-reduced-motion:reduce){.type-grid>a,.manifestation-choices span{transition:none}}
