.dc-petition-page{max-width:800px;margin:0 auto;padding:0 16px}
.dc-petition-list{display:flex;flex-direction:column;gap:12px}
.dc-petition-card{display:block;padding:20px;background:white;border-radius:12px;box-shadow:0 2px 12px rgba(0,0,0,.06);text-decoration:none;transition:transform .15s,box-shadow .15s}
.dc-petition-card:hover{transform:translateY(-2px);box-shadow:0 6px 24px rgba(0,51,102,.1)}
.dc-petition-card h3{font-size:16px;font-weight:700;color:var(--dc-secondary, var(--dc-secondary, #003366));margin:0}
.dc-petition-bar{background:#eae8e5;border-radius:6px;height:10px;overflow:hidden;margin-bottom:6px}
.dc-petition-bar-fill{background:linear-gradient(90deg,var(--dc-primary, var(--dc-primary, #e27d60)),var(--dc-primary-dk, var(--dc-primary-dk, #c4633a)));height:100%;border-radius:6px;transition:width .6s ease}
.dc-petition-counts{font-size:13px;color:#566573}
.dc-petition-progress{margin:24px 0}
.dc-petition-form-wrap{background:#f8f7f5;border-radius:12px;padding:24px;margin-top:24px}
.dc-petition-form-wrap h3{font-size:16px;font-weight:700;color:var(--dc-secondary, var(--dc-secondary, #003366));margin:0 0 16px}

/* === Petition view classes (migrated from inline styles) === */
.dc-pet-back { color: var(--dc-primary, var(--dc-primary, var(--dc-primary, #e27d60))); font-size: 13px; font-weight: 600; text-decoration: none; }
.dc-pet-back:hover { color: var(--dc-primary-dk, var(--dc-primary-dk, var(--dc-primary-dk, #c4633a))); }
.dc-pet-title { font-size: 24px; font-weight: 800; color: var(--dc-blue, var(--dc-secondary, var(--dc-secondary, #003366))); margin: 12px 0 8px; }
.dc-pet-desc { line-height: 1.7; color: #333; }
.dc-pet-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.dc-pet-form-row-wide { grid-template-columns: 2fr 1fr; }
.dc-pet-list-header { text-align: center; padding: 32px 0 24px; }
.dc-pet-list-title { font-size: 28px; font-weight: 800; color: var(--dc-blue, var(--dc-secondary, var(--dc-secondary, #003366))); margin: 0 0 8px; }
.dc-pet-list-sub { color: var(--dc-gray, #566573); }
.dc-pet-card-desc { font-size: 13px; color: #555; margin: 6px 0 12px; }
.dc-pet-input { width: 100%; padding: 10px 14px; border: 1px solid #e2dfdc; border-radius: 8px; font-size: 14px; font-family: inherit; margin-bottom: 8px; }
.dc-pet-input:focus { border-color: var(--dc-primary, var(--dc-primary, var(--dc-primary, #e27d60))); outline: none; box-shadow: 0 0 0 3px rgba(226,125,96,.15); }
.dc-pet-btn { display: inline-flex; align-items: center; gap: 6px; padding: 10px 20px; background: var(--dc-primary, var(--dc-primary, var(--dc-primary, #e27d60))); color: #fff; border: none; border-radius: 8px; font-weight: 700; font-size: 14px; cursor: pointer; font-family: inherit; }
.dc-pet-btn:hover { background: var(--dc-primary-dk, var(--dc-primary-dk, var(--dc-primary-dk, #c4633a))); }
.dc-pet-sig-count { color: var(--dc-primary, var(--dc-primary, var(--dc-primary, #e27d60))); font-size: 20px; }
