:root{--dco-blue:#1356d8;--dco-ink:#0d1b32;--dco-muted:#64748b;--dco-line:#e1e8f1;--dco-bg:#f6f8fc;--dco-gold:#e59b16}
.dcs-opinions,.dcs-opinions-account,.dcs-opinion-login{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--dco-ink);box-sizing:border-box}.dcs-opinions *,.dcs-opinions-account *{box-sizing:border-box;min-width:0}
.dcs-opinions{margin-top:28px;padding:28px;border:1px solid var(--dco-line);border-radius:20px;background:#fff}.dcs-opinions-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;border-bottom:1px solid var(--dco-line);padding-bottom:22px}.dcs-opinions-head>div>span,.dcs-opinions-account-head>span{font-size:11px;font-weight:900;letter-spacing:.14em;color:var(--dco-blue)}.dcs-opinions-head h2{font-size:32px;margin:7px 0}.dcs-opinions-head p{margin:0;color:var(--dco-muted)}.dcs-rating-summary{display:flex;flex-direction:column;align-items:flex-end}.dcs-rating-summary>strong{font-size:42px;line-height:1}.dcs-rating-summary span,.dcs-opinion-card header span,.dcs-opinion-account-columns article>span span{color:var(--dco-gold);letter-spacing:2px}.dcs-rating-summary small{color:var(--dco-muted)}
.dcs-opinion-list{display:grid;gap:13px;margin-top:22px}.dcs-opinion-card{padding:20px;border:1px solid var(--dco-line);border-radius:15px;background:#fff}.dcs-opinion-card header{display:flex;gap:12px;align-items:center}.dcs-opinion-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e9f1ff;color:var(--dco-blue);font-weight:900}.dcs-opinion-card header>div:last-child{display:flex;flex-direction:column}.dcs-opinion-card header small{color:var(--dco-muted)}.dcs-opinion-card h3{margin:16px 0 5px}.dcs-opinion-card>p{line-height:1.65}.dcs-owner-reply{margin-top:15px;padding:15px;border-left:4px solid var(--dco-blue);border-radius:0 10px 10px 0;background:#f2f6ff}.dcs-owner-reply p{margin:5px 0 0}.dcs-opinion-card footer{display:flex;gap:10px;margin-top:14px}.dcs-opinion-card footer button{border:0;background:transparent;color:var(--dco-blue);font-weight:750;cursor:pointer;padding:0}
.dcs-opinion-mini-form,.dcs-opinion-form{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:15px;padding:18px;border-radius:14px;background:var(--dco-bg);border:1px solid var(--dco-line)}.dcs-opinion-mini-form{grid-template-columns:1fr}.dcs-opinion-form h3,.dcs-opinion-form>p,.dcs-opinion-form .full,.dcs-opinion-form>.cf-turnstile,.dcs-opinion-form>button{grid-column:1/-1}.dcs-opinion-form label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:800}.dcs-opinion-form input,.dcs-opinion-form select,.dcs-opinion-form textarea,.dcs-opinion-mini-form input,.dcs-opinion-mini-form select,.dcs-opinion-mini-form textarea{width:100%;border:1px solid #d5dfeb;border-radius:9px;padding:11px;background:#fff;font:inherit}.dcs-opinion-form button,.dcs-opinion-mini-form button{justify-self:start;border:0;border-radius:10px;background:var(--dco-blue);color:#fff;padding:12px 18px;font-weight:850;cursor:pointer}.dcs-opinion-form button[disabled]{opacity:.45}.dcs-opinion-notice{grid-column:1/-1;padding:11px;border-radius:9px;background:#fff4cf;color:#7a5800}.dcs-opinion-login,.dcs-opinion-empty{padding:22px;border:1px dashed #bac7d8;border-radius:14px;background:#fff;text-align:center}.dcs-opinion-login a{display:inline-flex;margin-left:10px;color:var(--dco-blue);font-weight:850}.dcs-opinion-global{width:min(1180px,calc(100% - 40px));margin:18px auto;padding:13px 16px;border-radius:10px}.dcs-opinion-global.success{background:#e4f8ef;color:#08714b}.dcs-opinion-global.error{background:#ffebee;color:#a41e35}
.dcs-opinions-account{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:48px 0 76px}.dcs-opinions-account-head{padding:34px 38px;border-radius:24px;background:linear-gradient(120deg,#08204d,#165edc);color:#fff;margin-bottom:26px}.dcs-opinions-account-head>span{color:#c9dcff}.dcs-opinions-account-head h1{font-size:clamp(38px,5vw,58px);margin:8px 0;color:#fff}.dcs-opinions-account-head p{color:rgba(255,255,255,.82)}.dcs-opinion-account-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.dcs-opinion-account-columns>div{padding:22px;border:1px solid var(--dco-line);border-radius:17px;background:#fff}.dcs-opinion-account-columns article{padding:14px 0;border-top:1px solid var(--dco-line)}.dcs-opinion-account-columns article:first-of-type{border-top:0}.dcs-opinion-account-columns article>span{display:block;color:var(--dco-muted);font-size:12px;margin-top:4px}
@media(max-width:680px){.dcs-opinions{padding:20px}.dcs-opinions-head{align-items:flex-start;flex-direction:column}.dcs-rating-summary{align-items:flex-start}.dcs-opinion-form,.dcs-opinion-account-columns{grid-template-columns:1fr}.dcs-opinion-form h3,.dcs-opinion-form>p,.dcs-opinion-form .full,.dcs-opinion-form>.cf-turnstile,.dcs-opinion-form>button{grid-column:auto}.dcs-opinions-account{width:min(100% - 28px,1180px)}.dcs-opinions-account-head{padding:28px 23px}}
.dcs-opinions{width:min(1180px,calc(100% - 40px));max-width:1180px;margin-left:auto;margin-right:auto}
@media(max-width:680px){.dcs-opinions{width:min(100% - 28px,1180px)}}

/* 0.2.1 — avisos visibles, formularios autenticados sin captcha y móvil. */
.dcs-opinions{scroll-margin-top:90px;max-width:100%;overflow:hidden}
.dcs-opinions>.dcs-opinion-global{width:100%;max-width:none;margin:0 0 20px}
.dcs-opinion-global{font-weight:750;line-height:1.45;overflow-wrap:anywhere}
.dcs-opinion-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.dcs-opinion-form,.dcs-opinion-mini-form,.dcs-opinion-form>*,.dcs-opinion-mini-form>*{min-width:0;max-width:100%;box-sizing:border-box}
.dcs-opinion-form input,.dcs-opinion-form select,.dcs-opinion-form textarea,.dcs-opinion-mini-form input,.dcs-opinion-mini-form select,.dcs-opinion-mini-form textarea{min-width:0;max-width:100%}
@media(max-width:680px){
  .dcs-opinions{width:calc(100% - 28px);padding:18px}
  .dcs-opinions-head h2{font-size:clamp(26px,9vw,32px)}
  .dcs-opinion-form,.dcs-opinion-mini-form{padding:15px}
  .dcs-opinion-form button,.dcs-opinion-mini-form button{width:100%;justify-self:stretch}
  .dcs-opinion-login a{display:flex;margin:10px 0 0;justify-content:center}
}
.dcs-opinions-honeypot{position:fixed!important;inset:0 auto auto 0!important;width:1px!important;height:1px!important;margin:0!important;padding:0!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}
.dcs-opinion-mini-form[hidden]{display:none!important}

/* 0.2.5 — acciones y paginación en opiniones recibidas. */
.dcs-opinion-account-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.dcs-opinion-account-meta time{flex:0 0 auto;color:var(--dco-muted);font-size:12px}
.dcs-opinion-account-actions{display:flex;gap:10px;margin-top:13px}
.dcs-opinion-account-actions button{border:1px solid #cbd8e8;border-radius:9px;background:#fff;color:var(--dco-blue);padding:8px 12px;font:inherit;font-size:13px;font-weight:800;cursor:pointer}
.dcs-opinion-account-actions button:first-child{border-color:var(--dco-blue);background:var(--dco-blue);color:#fff}
.dcs-opinion-received .dcs-opinion-mini-form label{display:grid;gap:6px;color:var(--dco-ink);font-size:13px;font-weight:800}
.dcs-opinion-pagination{display:flex;flex-wrap:wrap;gap:7px;padding-top:18px;border-top:1px solid var(--dco-line)}
.dcs-opinion-pagination .page-numbers{display:grid;min-width:38px;height:38px;place-items:center;padding:0 11px;border:1px solid #cbd8e8;border-radius:9px;color:var(--dco-blue);font-size:13px;font-weight:800;text-decoration:none}
.dcs-opinion-pagination .page-numbers.current{border-color:var(--dco-blue);background:var(--dco-blue);color:#fff}
.dcs-opinion-pagination .prev,.dcs-opinion-pagination .next{width:auto}
@media(max-width:680px){
  .dcs-opinion-account-meta{align-items:flex-start;flex-direction:column;gap:4px}
  .dcs-opinion-account-actions{display:grid;grid-template-columns:1fr 1fr}
  .dcs-opinion-account-actions button{width:100%}
}

/* 0.3.2 — normalización visual completa de formularios frente al CSS del tema. */
.dcs-opinions .dcs-opinion-form,
.dcs-opinions .dcs-opinion-mini-form {
  gap: 18px;
  padding: clamp(20px,3vw,28px);
}
.dcs-opinions .dcs-opinion-form h3 {
  margin: 0;
  color: var(--dco-ink);
  font-size: clamp(24px,3vw,32px);
  line-height: 1.2;
}
.dcs-opinions .dcs-opinion-form > p {
  margin: -4px 0 4px;
  color: var(--dco-muted);
  font-size: 16px;
  line-height: 1.55;
}
.dcs-opinions .dcs-opinion-form label,
.dcs-opinions .dcs-opinion-mini-form label {
  margin: 0;
  gap: 8px;
  color: var(--dco-ink);
  font-size: 14px;
  line-height: 1.35;
}
.dcs-opinions .dcs-opinion-form input,
.dcs-opinions .dcs-opinion-form select,
.dcs-opinions .dcs-opinion-mini-form input,
.dcs-opinions .dcs-opinion-mini-form select {
  width: 100%;
  height: 52px;
  min-height: 52px;
  margin: 0;
  padding: 0 16px;
  border: 1px solid #cbd8e8;
  border-radius: 11px;
  background-color: #fff;
  color: var(--dco-ink);
  font-family: inherit;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
}
.dcs-opinions .dcs-opinion-form select,
.dcs-opinions .dcs-opinion-mini-form select {
  padding-right: 42px;
}
.dcs-opinions .dcs-opinion-form textarea,
.dcs-opinions .dcs-opinion-mini-form textarea {
  width: 100%;
  min-height: 150px;
  margin: 0;
  padding: 14px 16px;
  border: 1px solid #cbd8e8;
  border-radius: 11px;
  background: #fff;
  color: var(--dco-ink);
  font-family: inherit;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.55;
  resize: vertical;
}
.dcs-opinions .dcs-opinion-form input:focus,
.dcs-opinions .dcs-opinion-form select:focus,
.dcs-opinions .dcs-opinion-form textarea:focus,
.dcs-opinions .dcs-opinion-mini-form input:focus,
.dcs-opinions .dcs-opinion-mini-form select:focus,
.dcs-opinions .dcs-opinion-mini-form textarea:focus {
  border-color: var(--dco-blue);
  outline: 0;
  box-shadow: 0 0 0 3px rgba(19,86,216,.14);
}
.dcs-opinions .dcs-opinion-form > button,
.dcs-opinions .dcs-opinion-mini-form > button {
  min-height: 48px;
  margin: 0;
  padding: 0 20px;
  border: 1px solid var(--dco-blue);
  border-radius: 11px;
  color: #fff;
  font-family: inherit;
  font-size: 14px;
  line-height: 1.2;
}
.dcs-opinions .dcs-opinion-form > button:hover,
.dcs-opinions .dcs-opinion-form > button:focus-visible,
.dcs-opinions .dcs-opinion-mini-form > button:hover,
.dcs-opinions .dcs-opinion-mini-form > button:focus-visible {
  border-color: #0b3eaa;
  background: #0b3eaa;
  color: #fff;
}
@media(max-width:680px) {
  .dcs-opinions .dcs-opinion-form,
  .dcs-opinions .dcs-opinion-mini-form {
    gap: 16px;
    padding: 18px;
  }
  .dcs-opinions .dcs-opinion-form input,
  .dcs-opinions .dcs-opinion-form select,
  .dcs-opinions .dcs-opinion-mini-form input,
  .dcs-opinions .dcs-opinion-mini-form select {
    height: 50px;
    min-height: 50px;
  }
}

/* 0.3.3 — gestión de opiniones propias. */
.dcs-opinion-written-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:13px}
.dcs-opinion-written-actions form{margin:0}
.dcs-opinion-written-actions a,.dcs-opinion-written-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;margin:0;padding:8px 13px;border:1px solid var(--dco-blue);border-radius:9px;background:var(--dco-blue);color:#fff;font:inherit;font-size:13px;font-weight:800;line-height:1.2;text-decoration:none;cursor:pointer}
.dcs-opinion-written-actions button{border-color:#d7aeb4;background:#fff;color:#a12437}
.dcs-opinion-written-actions a:hover,.dcs-opinion-written-actions a:focus-visible{border-color:#0b3eaa;background:#0b3eaa;color:#fff}
.dcs-opinion-written-actions button:hover,.dcs-opinion-written-actions button:focus-visible{border-color:#a12437;background:#fff1f3;color:#86172a}
@media(max-width:680px){.dcs-opinion-written-actions{display:grid;grid-template-columns:1fr 1fr}.dcs-opinion-written-actions a,.dcs-opinion-written-actions button,.dcs-opinion-written-actions form{width:100%}}
