.page-policy .app-content{width:100%;}
.policy-shell{width:min(100%, 960px);margin:0 auto;display:flex;flex-direction:column;gap:16px;}
.policy-hero{background:var(--card);border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow);padding:24px;}
.policy-title{margin:0;font-size:28px;font-weight:900;letter-spacing:-.02em;}
.policy-desc{margin:8px 0 0;color:var(--muted);line-height:1.7;}
.policy-card{background:var(--card);border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow);padding:24px;}
.policy-card h2{margin:0 0 12px;font-size:20px;font-weight:900;}
.policy-card h3{margin:18px 0 8px;font-size:16px;font-weight:900;}
.policy-card p, .policy-card li{color:var(--muted);line-height:1.8;font-size:14px;}
.policy-card ul{margin:8px 0 0;padding-left:20px;}
.policy-table{width:100%;border-collapse:collapse;margin-top:12px;overflow:hidden;border-radius:16px;}
.policy-table th{border:1px solid var(--border);padding:12px;text-align:left;vertical-align:top;line-height:1.7;font-size:13px;width:160px;background:var(--surface);color:var(--text);font-weight:900;}
.policy-table td{border:1px solid var(--border);padding:12px;text-align:left;vertical-align:top;line-height:1.7;font-size:13px;}
.policy-note{margin-top:16px;padding:12px 14px;border:1px solid rgba(59,130,246,.22);border-radius:16px;background:rgba(59,130,246,.08);color:var(--text);line-height:1.7;font-size:13px;font-weight:700;}
.policy-actions{display:flex;justify-content:flex-end;gap:10px;}
@media (max-width:640px){
  .policy-hero{padding:18px;border-radius:20px;}
  .policy-card{padding:18px;border-radius:20px;}
  .policy-title{font-size:24px;}
  .policy-table th{display:block;width:100%;}
  .policy-table td{display:block;width:100%;}
}
