.dba-rv,.dba-rv *{font-family:var(--font,"Plus Jakarta Sans",sans-serif);box-sizing:border-box}
.dba-rv{color:var(--ink,#0B0D0C)}

/* ---- card, shared with [dba_reviews_home] ---- */
.dba-rv-card{background:#fff;border:1px solid var(--line,#E5E7EB);border-radius:var(--r-l,28px)!important;padding:28px;display:flex;flex-direction:column;gap:14px;transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s}
.dba-rv-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(11,13,12,.08)}
.dba-rv-head{display:flex;align-items:center;gap:12px}
.dba-rv-avatar{width:40px;height:40px;border-radius:50%;background:var(--tint,#EDF5F0);color:var(--green-d,#236E3F);font:700 13px/1 var(--font);display:flex;align-items:center;justify-content:center;flex:none}
.dba-rv-who{display:flex;flex-direction:column;gap:2px}
.dba-rv-who strong{font-size:15px;font-weight:700}
.dba-rv-who span{font-size:12px;color:var(--muted,#6B7280)}
.dba-rv-stars{color:#FBBC05;font-size:16px;letter-spacing:2px;line-height:1}
.dba-rv-title{font-size:16px;font-weight:800;letter-spacing:-.01em;margin:0}
.dba-rv-body{font-size:14px;line-height:1.65;color:var(--body,#4B5563);margin:0}
.dba-rv-photos{display:flex;gap:8px;flex-wrap:wrap}
.dba-rv-photos img{width:64px;height:64px;object-fit:cover;border-radius:10px}

.dba-rv-home{margin-top:8px}
.dba-rv-homewrap{margin-top:16px;padding-top:36px;border-top:1px solid var(--line,#E5E7EB)}
.dba-rv-homehead{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.dba-rv-kicker{font:700 13px/1.3 var(--font);letter-spacing:.1em;text-transform:uppercase;color:var(--green-d,#236E3F)}
.dba-rv-alllink{font:700 13px/1 var(--font);color:var(--ink,#0B0D0C);text-decoration:none;border:1px solid var(--line-2,#D1D5DB);border-radius:999px;padding:10px 18px;transition:border-color .2s,background .2s}
.dba-rv-alllink:hover{border-color:var(--green,#338d5b);background:var(--tint,#EDF5F0)}

/* ---- summary header ---- */
.dba-rv-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:40px;padding-bottom:32px;border-bottom:1px solid var(--line,#E5E7EB)}
.dba-rv-score{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.dba-rv-score strong{font-size:40px;font-weight:800;letter-spacing:-.02em}
.dba-rv-score .dba-rv-stars{font-size:20px}
.dba-rv-score span{font-size:13px;color:var(--muted,#6B7280);font-weight:600;width:100%}
.dba-rv-writebtn{border:0;border-radius:999px;background:var(--ink,#0B0D0C);color:#fff;font:800 13px/1 var(--font);letter-spacing:.03em;padding:16px 26px;cursor:pointer;transition:background .2s}
.dba-rv-writebtn:hover{background:#1F2937}

/* ---- list ---- */
.dba-rv-list{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.dba-rv-empty{grid-column:1/-1;text-align:center;color:var(--muted,#6B7280);padding:40px 0}
@media(max-width:767px){.dba-rv-list{grid-template-columns:1fr}}

/* ---- modal ---- */
html.dba-rv-lock,body.dba-rv-lock{overflow:hidden!important;height:100%!important}
.dba-rv-modal[hidden]{display:none}
.dba-rv-modal{position:fixed;inset:0;z-index:9998;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:40px 16px}
.dba-rv-modalbg{position:fixed;inset:0;background:rgba(11,13,12,.55);backdrop-filter:blur(2px);z-index:-1}
.dba-rv-modalcard{position:relative;background:#fff;border-radius:28px;max-width:520px;width:100%;margin:0 auto;padding:36px;box-shadow:0 30px 80px rgba(0,0,0,.3)}
.dba-rv-modalcard h3{font-size:24px;font-weight:800;letter-spacing:-.01em;margin:0}
.dba-rv-sub{font-size:14px;color:var(--muted,#6B7280);margin:4px 0 24px}
.dba-rv-close{position:absolute;right:18px;top:16px;border:0;background:none;font-size:24px;line-height:1;cursor:pointer;color:var(--muted,#6B7280)}

/* ---- form ---- */
.dba-rv-form{display:flex;flex-direction:column;gap:16px}
.dba-rv-form label{display:block;font:700 12px/1.3 var(--font);letter-spacing:.02em;color:var(--ink,#0B0D0C);margin-bottom:6px}
.dba-rv-form label span{font-weight:500;color:var(--muted,#6B7280);text-transform:none}
.dba-rv-form input[type=text],.dba-rv-form input[type=email],.dba-rv-form textarea{width:100%;border:1px solid var(--line-2,#D1D5DB);border-radius:12px;padding:13px 15px;font:500 14px/1.4 var(--font);color:var(--ink,#0B0D0C);outline:0;transition:border-color .2s}
.dba-rv-form input:focus,.dba-rv-form textarea:focus{border-color:var(--green,#338d5b)}
.dba-rv-form input[type=file]{font:500 13px/1.4 var(--font);color:var(--body,#4B5563)}
.dba-rv-grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.dba-rv-grid2 small{display:block;color:var(--muted,#6B7280);font-size:11px;margin-top:5px}
@media(max-width:560px){.dba-rv-grid2{grid-template-columns:1fr}}
.dba-rv-step1{background:var(--surface,#F6F7F6);border-radius:var(--r-m,16px);padding:20px;text-align:center}
.dba-rv-step1 label{text-align:center;font-size:13px}
.dba-rv-picker{display:flex;gap:4px;justify-content:center}
.dba-rv-picker button{background:none;border:0;font-size:34px;line-height:1;color:var(--line-2,#D1D5DB);cursor:pointer;padding:8px;min-width:44px;min-height:44px;transition:color .15s,transform .15s}
.dba-rv-picker button:hover{transform:scale(1.12)}
.dba-rv-picker button.is-on{color:#FBBC05}
.dba-rv-picklabel{display:block;margin-top:8px;font:700 13px/1.3 var(--font);color:var(--muted,#6B7280)}
.dba-rv-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.dba-rv-note{font-size:12.5px;color:var(--muted,#6B7280);margin:0}
.dba-rv-submit{border:0;border-radius:999px;background:var(--green,#338d5b);color:#fff;font:800 14px/1 var(--font);padding:16px 24px;cursor:pointer;box-shadow:0 10px 24px rgba(51,141,91,.3);transition:background .2s}
.dba-rv-submit:hover{background:var(--green-d,#236E3F)}.dba-rv-submit[disabled]{opacity:.65;cursor:wait}
.dba-rv-err{background:#fef2f2;color:#dc2626;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:600;margin:0}

.dba-rv-ok{text-align:center;padding:12px 0}
.dba-rv-okicon{width:60px;height:60px;border-radius:50%;background:var(--green,#338d5b);color:#fff;font-size:26px;display:flex;align-items:center;justify-content:center;margin:0 auto 18px}
.dba-rv-ok h3{font-size:22px;font-weight:800;margin:0 0 8px}
.dba-rv-ok p{font-size:14px;color:var(--body,#4B5563);margin:0}
