.entry-content > .osotec-pp { max-width: var(--maxw, 1180px); }
.osotec-pp section { margin-bottom: 40px; }
.osotec-pp-bar { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding: 14px 18px; background: var(--soft, #f4f5f8); border-left: 4px solid var(--red, #9e303d); margin-bottom: 24px; }
.osotec-pp-nav { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 8px; }
.osotec-pp-nav a { padding: 6px 14px; border: 1px solid var(--line, #dcdfe5); border-radius: 3px; text-decoration: none; font-weight: 600; }
.osotec-pp-nav a:hover { border-color: var(--red, #9e303d); }
.osotec-pp-table { width: 100%; border-collapse: collapse; }
.osotec-pp-table th { text-align: left; background: var(--navy, #24293b); color: #fff; padding: 10px 12px; font-size: .9rem; }
.osotec-pp-table td { padding: 12px; border-bottom: 1px solid var(--line, #dcdfe5); vertical-align: top; }
.osotec-pp-desc { font-size: .9rem; color: #555; }
.osotec-pp-desc p { margin: .3em 0 0; }
.osotec-pp-badge { font-size: .75rem; background: var(--slate, #516790); color: #fff; padding: 2px 8px; border-radius: 10px; vertical-align: middle; }
.osotec-pp-btn { display: inline-block; background: var(--red, #9e303d); color: #fff !important; padding: 8px 16px; border-radius: 3px; text-decoration: none; font-weight: 600; white-space: nowrap; }
.osotec-pp-btn:hover { background: var(--navy, #24293b); }
.osotec-pp-empty, .osotec-pp-hint { color: #666; }
.osotec-pp-error { background: #fbeaea; border-left: 4px solid #b32d2e; padding: 10px 14px; }
.osotec-pp-login { max-width: 460px; }
.osotec-pp-login label { display: block; font-weight: 600; margin-bottom: 4px; }
.osotec-pp-login input[type=text], .osotec-pp-login input[type=password] { width: 100%; padding: 10px; border: 1px solid var(--line, #dcdfe5); border-radius: 3px; font: inherit; }
.osotec-pp-login input[type=submit] { background: var(--red, #9e303d); color: #fff; border: 0; padding: 10px 22px; border-radius: 3px; font: inherit; font-weight: 600; cursor: pointer; }
@media (max-width: 700px) {
  .osotec-pp-table thead { display: none; }
  .osotec-pp-table tr { display: block; border-bottom: 2px solid var(--line, #dcdfe5); padding: 8px 0; }
  .osotec-pp-table td { display: block; border: 0; padding: 4px 12px; }
}
