/* GermanStep v15 — global readability + certificate premium finish */

/* Public portal readability floor. No intentionally microscopic text. */
body{font-size:16px;line-height:1.55}
p,li,dd,.consultation-copy,.footer-about{font-size:16px!important;line-height:1.65!important}
small,.eyebrow,.section-label,.footer-bottom,.footer-links a,
[class*="meta"],[class*="kicker"],[class*="note"],[class*="label"],
[class*="caption"],[class*="hint"],[class*="status"]{
  font-size:13px!important;
  line-height:1.5!important;
}
input,select,textarea,button{font-size:15px!important}
.desktop-nav a{font-size:13px!important}
.mobile-menu a{font-size:15px!important}
.company-trust dt,.company-trust dd{font-size:14px!important}
.company-social a{font-size:14px!important}
.gschat-brand small,.gschat-msg small,.gschat-suggestions button,.gschat-note{font-size:13px!important}
.gschat-bubble{font-size:14px!important}
.gschat-compose textarea{font-size:15px!important}

/* Exam — large, low-fatigue text on both desktop and mobile. */
.official-exam-v14-mobilebar small{font-size:12px!important}
.official-exam-v14-mobilebar>div:first-child b{font-size:15px!important}
.official-exam-v14-grid button{font-size:13px!important}
.official-question-v14 .official-question-v13-top{font-size:13px!important}
.official-question-v14 .official-question-v13-top>span:first-child b{font-size:15px!important}
.official-question-v14 .official-question-v13-diff{font-size:12px!important;padding:7px 11px!important}
.official-question-v14 h2{font-size:27px!important;line-height:1.34!important}
.official-question-v14-options b{font-size:16px!important;line-height:1.5!important}
.official-question-v14-options .official-option-v13-letter{font-size:13px!important}
.official-exam-v13-brand small,
.official-exam-v13-session small,
.official-exam-v13-nav-title>span,
.official-exam-v13-nav-title>small,
.official-exam-v13-summary small,
.official-exam-v13-nav>p{font-size:12px!important;line-height:1.45!important}
.official-exam-v13-session b,.official-exam-v13-summary b{font-size:13px!important}
.official-exam-v14-finish{font-size:15px!important}

/* Premium certificate frame */
.compact-certificate-v15{
  background:
    radial-gradient(circle at 50% 45%,rgba(181,151,83,.055),transparent 43%),
    linear-gradient(180deg,#fff 0%,#fffefa 100%)!important;
}
.cert-frame-v15{position:absolute;pointer-events:none;z-index:1}
.cert-frame-v15-outer{inset:8px;border:2px solid #202327}
.cert-frame-v15-middle{inset:13px;border:1px solid #b69a63}
.cert-frame-v15-inner{inset:18px;border:1px solid #ddd2b9}
.cert-corner-v15{position:absolute;z-index:2;width:30px;height:30px;pointer-events:none}
.cert-corner-v15::before,.cert-corner-v15::after{content:"";position:absolute;background:#9f8452}
.cert-corner-v15::before{width:24px;height:1px;top:0;left:0}
.cert-corner-v15::after{width:1px;height:24px;top:0;left:0}
.cert-corner-v15.tl{left:22px;top:22px}
.cert-corner-v15.tr{right:22px;top:22px;transform:rotate(90deg)}
.cert-corner-v15.br{right:22px;bottom:22px;transform:rotate(180deg)}
.cert-corner-v15.bl{left:22px;bottom:22px;transform:rotate(270deg)}
.compact-certificate-v15-line{left:22px!important;right:22px!important;top:22px!important;height:4px!important}

/* Certificate readability: 11.5–13px is the minimum for secondary text. */
.compact-certificate-v14-brand small{font-size:13px!important}
.compact-certificate-v14-id small{font-size:13px!important}
.compact-certificate-v14-id b{font-size:14px!important}
.compact-certificate-v14-title{font-size:14px!important;line-height:1.35!important}
.compact-certificate-v14-body>p{font-size:15px!important;line-height:1.5!important}
.compact-certificate-v14-data small{font-size:13px!important}
.compact-certificate-v14-data b{font-size:14px!important}
.compact-certificate-v14-sign b{font-size:13.5px!important}
.compact-certificate-v14-sign small{font-size:12.5px!important}
.compact-certificate-v14-qr small{font-size:12.5px!important}
.compact-certificate-v14-disclaimer{font-size:12.5px!important;line-height:1.45!important}

/* Elegant organisational seal simulation — explicitly GermanStep internal assessment. */
.certificate-seal-v15{
  width:76px;height:76px;margin:auto;
  transform:rotate(-5deg);
  filter:drop-shadow(0 2px 2px rgba(100,20,30,.10));
  opacity:.92;
}
.certificate-seal-v15 svg{display:block;width:100%;height:100%;overflow:visible}
.certificate-seal-v15 .seal-ring-outer{fill:rgba(151,34,48,.025);stroke:#8d2433;stroke-width:2.2}
.certificate-seal-v15 .seal-ring-inner{fill:none;stroke:#8d2433;stroke-width:1}
.certificate-seal-v15 .seal-ring-text{fill:#8d2433;font-size:8px;font-family:Arial,sans-serif;font-weight:700;letter-spacing:1.05px}
.certificate-seal-v15 .seal-gs{fill:#8d2433;font-family:Arial,sans-serif;font-size:25px;font-weight:900;letter-spacing:-1px}
.certificate-seal-v15 .seal-check{fill:none;stroke:#8d2433;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round}
.certificate-seal-v15 .seal-year{fill:#8d2433;font-family:Arial,sans-serif;font-size:7px;font-weight:800;letter-spacing:1px}

@media(max-width:760px){
  body{font-size:16px}
  p,li,dd{font-size:15px!important}
  small,.eyebrow,.section-label,[class*="meta"],[class*="note"],[class*="label"]{font-size:12.5px!important}
  input,select,textarea,button{font-size:16px!important}

  .official-exam-v14-mobilebar small{font-size:12.5px!important}
  .official-exam-v14-mobilebar>div:first-child b{font-size:15.5px!important}
  .official-exam-v14-mobilebar>div:last-child b{font-size:23px!important}
  .official-exam-v14-grid button{font-size:13px!important}
  .official-question-v14 .official-question-v13-top{font-size:13px!important}
  .official-question-v14 .official-question-v13-diff{font-size:12.5px!important}
  .official-question-v14 h2{font-size:24px!important;line-height:1.36!important}
  .official-question-v14-options b{font-size:17px!important;line-height:1.48!important}
  .official-question-v14-options .official-option-v13-letter{font-size:13px!important}
  .official-exam-v14-finish{font-size:16px!important}

  .compact-certificate-v14-brand small,
  .compact-certificate-v14-id small,
  .compact-certificate-v14-data small,
  .compact-certificate-v14-sign small,
  .compact-certificate-v14-qr small,
  .compact-certificate-v14-disclaimer{font-size:11.5px!important}
  .compact-certificate-v14-id b,.compact-certificate-v14-data b,.compact-certificate-v14-sign b{font-size:12px!important}
  .compact-certificate-v14-body>p{font-size:13px!important}
  .certificate-seal-v15{width:66px;height:66px}
}

/* Print also remains comfortably readable. */
@media print{
  .compact-certificate-v14-brand small,
  .compact-certificate-v14-id small,
  .compact-certificate-v14-data small,
  .compact-certificate-v14-sign small,
  .compact-certificate-v14-qr small,
  .compact-certificate-v14-disclaimer{font-size:9pt!important}
  .compact-certificate-v14-body>p{font-size:11pt!important}
  .certificate-seal-v15{width:22mm;height:22mm}
}


/* Premium frame refinement + internal company seal finish. */
.compact-certificate-v15::after{
  content:"";position:absolute;inset:25px;pointer-events:none;z-index:1;
  border:1px solid rgba(159,132,82,.28);
  box-shadow:inset 0 0 0 4px rgba(255,255,255,.72),inset 0 0 28px rgba(151,121,65,.045);
}
.certificate-seal-v15{position:relative}
.certificate-seal-v15::before,.certificate-seal-v15::after{content:"★";position:absolute;top:28px;color:#8d2433;font-size:9px;font-weight:900}
.certificate-seal-v15::before{left:8px}.certificate-seal-v15::after{right:8px}

/* Post-exam review — answer snapshot stored at submission time. */
.exam-review-v15{max-width:860px;margin:22px auto 0;padding:24px;border:1px solid #d9dee3;border-radius:15px;background:#fff;box-shadow:0 16px 48px rgba(17,24,39,.045)}
.exam-review-v15-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:18px}
.exam-review-v15-head h2{margin:0;font-size:28px;letter-spacing:-.7px}
.exam-review-v15-head p{margin:6px 0 0!important;color:#6f7780;font-size:15px!important}
.exam-review-v15-score{min-width:105px;padding-left:18px;border-left:1px solid #dce1e6;text-align:right}
.exam-review-v15-score b,.exam-review-v15-score span{display:block}.exam-review-v15-score b{font-size:22px}.exam-review-v15-score span{margin-top:2px;color:#858d96;font-size:14px}
.exam-review-v15-list{border-top:1px solid #dce1e6}
.exam-review-v15-item{border-bottom:1px solid #e3e7ea;background:#fff}
.exam-review-v15-item summary{list-style:none;display:grid;grid-template-columns:86px minmax(0,1fr) 88px 100px;gap:12px;align-items:center;padding:15px 4px;cursor:pointer}
.exam-review-v15-item summary::-webkit-details-marker{display:none}
.exam-review-v15-number{font-size:13px;font-weight:850;color:#6e7680}
.exam-review-v15-question{font-size:15px;font-weight:720;line-height:1.45;color:#24292f}
.exam-review-v15-difficulty{font-size:13px;color:#777f88}
.exam-review-v15-status{justify-self:end;min-width:88px;text-align:center;padding:6px 8px;border-radius:999px;font-size:13px;font-weight:850}
.exam-review-v15-item.correct .exam-review-v15-status{background:#edf7f2;color:#267052}
.exam-review-v15-item.wrong .exam-review-v15-status{background:#fff0f2;color:#973442}
.exam-review-v15-body{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 4px 16px 102px}
.exam-review-v15-answer{padding:11px 12px;border:1px solid #dce1e6;border-radius:9px;background:#fafbfc}
.exam-review-v15-answer small,.exam-review-v15-answer b{display:block}.exam-review-v15-answer small{font-size:13px!important;color:#79818a}.exam-review-v15-answer b{margin-top:4px;font-size:14.5px;line-height:1.45}
.exam-review-v15-answer.correct{border-color:#cbe4d8;background:#f3faf6}.exam-review-v15-answer.wrong{border-color:#eccbd0;background:#fff7f8}
.exam-review-v15-legacy p{font-size:15px!important;color:#727a83}

@media(max-width:760px){
  p,li,dd{font-size:16px!important}
  small,.eyebrow,.section-label,[class*="meta"],[class*="note"],[class*="label"]{font-size:13.5px!important}
  .exam-review-v15{padding:17px 11px;margin-top:16px;border-radius:12px}
  .exam-review-v15-head{align-items:flex-start}.exam-review-v15-head h2{font-size:24px}.exam-review-v15-score{min-width:76px;padding-left:10px}.exam-review-v15-score b{font-size:18px}
  .exam-review-v15-item summary{grid-template-columns:62px minmax(0,1fr) 78px;gap:8px;padding:14px 2px}
  .exam-review-v15-number{font-size:13px}.exam-review-v15-question{font-size:15px}.exam-review-v15-difficulty{display:none}.exam-review-v15-status{min-width:74px;font-size:12.5px}
  .exam-review-v15-body{grid-template-columns:1fr;padding:0 2px 14px 70px}.exam-review-v15-answer small{font-size:13px!important}.exam-review-v15-answer b{font-size:15px}
  .compact-certificate-v14-brand small,.compact-certificate-v14-id small,.compact-certificate-v14-data small,.compact-certificate-v14-sign small,.compact-certificate-v14-qr small,.compact-certificate-v14-disclaimer{font-size:12.5px!important}
  .compact-certificate-v14-id b,.compact-certificate-v14-data b,.compact-certificate-v14-sign b{font-size:13px!important}
  .compact-certificate-v14-body>p{font-size:14px!important}
}


/* v23 mobile answer review redesign */
@media(max-width:720px){
  .exam-review-v15{padding:16px 12px 14px;margin-top:16px;border-radius:14px}
  .exam-review-v15-head{display:block;margin-bottom:12px}
  .exam-review-v15-head h2{font-size:22px;line-height:1.2}
  .exam-review-v15-head p{font-size:14px!important;line-height:1.55}
  .exam-review-v15-score{min-width:0;padding:10px 0 0;border-left:none;border-top:1px solid #e0e5e9;text-align:left;margin-top:10px}
  .exam-review-v15-score b{font-size:20px}.exam-review-v15-score span{font-size:13px}
  .exam-review-v15-list{border-top:none}
  .exam-review-v15-item{margin-top:10px;border:1px solid #e2e7eb;border-radius:14px;overflow:hidden;box-shadow:0 10px 26px rgba(17,24,39,.04)}
  .exam-review-v15-item summary{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:14px 14px 12px}
  .exam-review-v15-number{font-size:12px;letter-spacing:.3px;text-transform:uppercase}
  .exam-review-v15-question{font-size:15px;line-height:1.5}
  .exam-review-v15-difficulty{display:inline-flex;padding:6px 10px;border-radius:999px;background:#f5f7f8;font-size:12px;color:#5d6670}
  .exam-review-v15-status{justify-self:start;align-self:flex-start;min-width:0;padding:7px 11px;font-size:12px}
  .exam-review-v15-body{grid-template-columns:1fr;gap:10px;padding:0 14px 14px}
  .exam-review-v15-answer{padding:12px 12px;border-radius:12px}
  .exam-review-v15-answer small{font-size:12px!important}.exam-review-v15-answer b{font-size:14px;line-height:1.55}
}
@media(max-width:440px){
  .exam-review-v15{padding:14px 10px 12px}
  .exam-review-v15-item summary{padding:13px 12px 11px}
  .exam-review-v15-question{font-size:14px}
  .exam-review-v15-body{padding:0 12px 12px}
}
