.svc-grid,.svc-roster,.svc-due-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.svc-reminder{display:flex;justify-content:space-between;align-items:center;gap:20px;background:linear-gradient(120deg,#23422d,#182a1d);border:1px solid #4a7654;border-radius:18px;padding:18px 22px;margin-bottom:22px}
.svc-reminder span,.svc-reminder small{display:block;color:#bcd3bf;font-size:.78rem}
.svc-reminder b{display:block;font-size:1rem}
.svc-reminder strong{color:var(--mint2)}
.svc-grid{margin:18px 0}.svc-grid .panel{height:100%}.svc-grid .panel-body{padding:22px}.svc-documents{margin-top:0}
.svc-progress-card{margin-bottom:20px;background:linear-gradient(130deg,#142b1d,#132318)}
.svc-progress-head,.svc-person-head{display:flex;align-items:center;justify-content:space-between;gap:20px}
.svc-progress-head span{font-size:.85rem;color:var(--muted);display:block}
.svc-progress-head strong{font-size:1.75rem;line-height:1.15;letter-spacing:-.04em}
.svc-progress-head small{color:var(--mint2);font-weight:700;text-align:right}
.svc-progress,.svc-progress span{height:12px;display:block;border-radius:999px}
.svc-progress{margin:14px 0;background:#27362a;overflow:hidden}
.svc-progress span{background:linear-gradient(90deg,#a2c967,#50d79a);transition:width 800ms cubic-bezier(.18,.79,.28,1)}
.svc-checklist{display:flex;flex-wrap:wrap;gap:8px}
.svc-check{padding:5px 10px;border:1px solid var(--line2);border-radius:999px;color:#adbbb0;font-size:.76rem}
.svc-check.done{border-color:rgba(86,214,154,.33);background:rgba(86,214,154,.1);color:var(--mint2)}
.svc-private{padding:16px 18px;border:1px solid rgba(86,214,154,.24);background:#12251a;border-radius:14px;color:#d0e7d6;margin:0 0 18px}
.svc-hint{font-size:.83rem;color:var(--muted);margin:15px 0;max-width:85ch}
.svc-grid .field textarea{min-height:95px}
.svc-person h2{margin:6px 0 0;font-size:1.2rem}
.svc-person p{margin:2px 0;color:var(--muted);font-size:.84rem}
.svc-person-head strong{color:var(--mint2);font-size:1.7rem;white-space:nowrap}
.svc-person .kicker{font-size:.7rem}
.svc-missing{min-height:42px;line-height:1.45}
.svc-person .actions{align-items:stretch;margin-top:18px}
.svc-person .actions button{font-size:.82rem;min-height:44px}
.svc-due-summary{margin-bottom:20px}
.svc-amount-card{min-height:175px;border:1px solid rgba(86,214,154,.25);border-radius:22px;padding:25px;background:linear-gradient(130deg,#173723,#112319);display:flex;flex-direction:column}
.svc-amount-card.pending{background:#18251b;border-color:rgba(215,182,83,.3)}
.svc-amount-card>span{color:var(--mint2);font-size:.9rem;font-weight:750}
.svc-amount-card.pending>span{color:var(--gold)}
.svc-amount-card strong{display:block;font-size:clamp(2rem,3vw,2.8rem);line-height:1.12;letter-spacing:-.04em;margin:15px 0}
.svc-amount-card small{color:#bfcec1;max-width:35ch}
.svc-data{margin-top:20px}.svc-data .panel-head{align-items:center}.svc-data .panel-head select{max-width:300px}
.svc-data .table-wrap{overflow-x:auto}
.svc-data table{width:100%;white-space:normal}
.svc-data table small{display:block;color:var(--muted);line-height:1.4;margin-top:4px}
.svc-data table td{vertical-align:top}
.svc-state{display:inline-block;border:1px solid var(--line2);padding:5px 9px;border-radius:999px;white-space:nowrap;font-size:.78rem;color:var(--mint2)}
.svc-empty{color:var(--muted);padding:20px;text-align:left}
.svc-mini{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;padding:0 0 17px}
.svc-mini b{margin-right:auto}
.svc-mini strong{color:var(--mint2)}
.svc-fiscal-result{margin-top:18px;display:grid;gap:8px;word-break:break-word}
.svc-fiscal-result strong{font-size:1.15rem;letter-spacing:.03em}
@media(max-width:1050px){.svc-grid,.svc-roster{grid-template-columns:1fr}}
@media(max-width:700px){
 .svc-reminder{align-items:stretch;flex-direction:column}
 .svc-due-summary{grid-template-columns:1fr}
 .svc-progress-head{align-items:flex-start}
 .svc-progress-head small{font-size:.72rem}
 .svc-data .panel-head{align-items:flex-start;flex-direction:column}
 .svc-data .panel-head select{max-width:none;width:100%}
 .svc-amount-card{min-height:145px}
 .svc-person .actions>*{width:100%}
}
@media(prefers-reduced-motion:reduce){.svc-progress span{transition:none}}
