/* Ausbau 2 — geometry and colors follow the supplied GFU design boards. */
.badge-page{--badge-navy:#0b152d;--badge-petrol:#0b6e8c}.badge-hero,.badge-profile{position:relative;isolation:isolate;background:radial-gradient(120% 90% at 0% 0%,#123a5c,#0b152d 60%);color:#fff;border-radius:28px 160px 28px 28px;padding:40px;overflow:hidden}.badge-hero::before,.badge-profile::before{content:"";position:absolute;inset:0;z-index:-1;background-image:radial-gradient(rgba(255,255,255,.08) 1px,transparent 1.2px);background-size:22px 22px}.badge-hero h1{font-size:clamp(32px,4vw,52px);line-height:1.1;margin:8px 0 18px}.badge-hero>p{max-width:65ch;color:#d3dfeb}.badge-kicker{font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:700}.badge-hero .badge-kicker{color:#85def5}.gradient-word{position:relative;display:inline-block;padding-bottom:8px}.gradient-word::after{content:"";position:absolute;height:4px;bottom:0;left:0;right:0;background:linear-gradient(90deg,#9ad65a,#0fc1f3);border-radius:4px}.badge-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:26px 0 30px}.badge-metrics>div{display:flex;flex-direction:column;gap:8px}.badge-metrics strong{font-size:38px;line-height:1.1;color:#fff}.badge-metrics small{font-size:18px;color:#b9c9de}.badge-metrics span{font-size:13px;color:#d3dfeb}.next-badge{display:flex;align-items:center;gap:30px;padding:25px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.17);border-radius:24px}.next-badge>svg{width:140px;height:140px;flex:none}.next-badge h2{color:#fff;margin:4px 0 10px}.next-badge p:not(.badge-kicker){color:#d3dfeb}.badge-reward{display:inline-block;border-radius:99px;padding:6px 12px;background:#e6f5d7;color:#285b12;font-weight:700;font-size:12px}.badge-section-title{margin:38px 0 20px}.badge-collection{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.badge-card{text-align:center;padding:25px 18px;min-width:0}.badge-card>svg{width:112px;height:112px;max-width:100%;margin:0 auto 12px}.badge-card h3{font-size:18px;line-height:1.35;margin:8px 0;overflow-wrap:anywhere}.badge-card p{font-size:13px;color:#526177}.badge-card .badge-kicker{color:#0b6e8c;font-size:10px}.badge-actions{display:grid;gap:14px;margin-top:18px;font-size:13px}.badge-actions form{margin:0}.badge-actions .btn{font-size:12px;padding:9px 12px}.badge-master{grid-column:span 2;display:flex;align-items:center;gap:24px;text-align:left;border:2px solid #0fc1f3;background:linear-gradient(135deg,#eff9ec,#e9f9ff)}.badge-master>svg{width:140px;height:140px;flex:none;margin:0}.state-expiring{border-color:#d9a329}.state-expiring .badge-kicker{color:#76500a}.badge-bottom{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:24px;margin-top:32px}.badge-points{width:100%;border-collapse:collapse;font-size:14px}.badge-points th,.badge-points td{text-align:left;padding:14px 0;border-bottom:1px solid #dce4ec}.badge-points td:last-child,.badge-points th:last-child{text-align:right}.certificate-points{font-weight:700}.badge-bottom .card>p{font-size:13px;color:#526177}.badge-podium{display:flex;justify-content:center;align-items:end;gap:12px;padding:24px 0}.podium-place{display:flex;flex-direction:column;text-align:center;align-items:center;min-width:0;flex:1;gap:8px;font-size:12px}.podium-1{order:2;padding-bottom:18px}.podium-2{order:1}.podium-3{order:3}.podium-avatar{display:grid;place-items:center;background:#eef3f7;border:2px solid #dce4ec;border-radius:50%;width:48px;height:48px;font-weight:700;font-size:16px}.podium-1 .podium-avatar{border-color:#0fc1f3;width:58px;height:58px}.badge-ranking-list{list-style:none;padding:0}.badge-ranking-list li{display:flex;align-items:center;gap:8px;padding:12px 4px;border-top:1px solid #dce4ec;font-size:13px}.badge-ranking-list li>span:first-child{flex:1;overflow-wrap:anywhere}.mini-badges{display:flex}.mini-badges svg{width:22px;height:22px}.badge-profile{display:flex;align-items:center;gap:28px;border-radius:28px 120px 28px 28px;margin-bottom:28px}.badge-avatar{width:84px;height:84px;display:grid;place-items:center;border:3px solid #0fc1f3;border-radius:50%;background:#fff;color:#0b152d;font-size:26px;flex:none}.badge-profile h1{font-size:28px;margin:0}.badge-profile p{color:#d3dfeb;margin:6px 0;overflow-wrap:anywhere}.badge-profile .earned-strip{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.earned-strip svg{width:44px;height:44px}.badge-profile>a{margin-left:auto;flex:none}.profile-certificate{border-top:1px solid #dce4ec;padding:16px 0}.profile-certificate p{font-size:13px}.path-grid .card-link{position:relative}.path-grid .card-link:has(.path-badge)>h2,.path-grid .card-link:has(.path-badge)>p:first-of-type{padding-right:80px}.path-badge{position:absolute;right:20px;top:24px;width:76px;height:76px}.path-badge svg{width:100%;height:100%}.path-grid progress::-webkit-progress-value{background:linear-gradient(90deg,#9ad65a,#0fc1f3)}.path-grid progress::-moz-progress-bar{background:linear-gradient(90deg,#9ad65a,#0fc1f3)}.award-moment{box-sizing:border-box;width:460px;max-width:calc(100% - 32px);padding:38px 32px;border:0;border-radius:28px;text-align:center;color:#0b152d;background:radial-gradient(ellipse at 50% 0%,#e4f9ff,white 65%)}.award-moment::backdrop{background:rgba(11,21,45,.55)}.award-close{position:absolute;right:16px;top:12px;background:none;border:0;font-size:28px;cursor:pointer;color:#526177}.award-badge svg{width:160px;height:160px}.award-moment h2{font-size:28px;margin:12px 0}.award-moment h3{font-size:20px}.award-moment p{line-height:1.5}.award-moment .btn{display:flex;justify-content:center;margin-top:12px;font-size:13px}.award-moment[open] .award-badge{animation:award-grow .9s ease-out both}.award-moment[open] .award-badge>svg>circle:first-of-type{animation:award-ring .9s ease-out both}.lesson-steps{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.lesson-steps a{border:1px solid #dce4ec;border-radius:30px;padding:9px 15px;color:#526177;background:#f0f4f7;font-size:13px;text-decoration:none}.lesson-steps a.active{background:#0b152d;color:#fff}.lesson-steps a.done{background:#e6f5d7;color:#285b12}.badge-proof{max-width:720px;margin:auto}.badge-rail{display:none}@keyframes award-grow{from{transform:scale(.9);opacity:.3}to{transform:scale(1);opacity:1}}@keyframes award-ring{from{stroke-dasharray:0 553}to{stroke-dasharray:553 553}}@media(min-width:1280px){.badge-rail{display:block;position:sticky;top:24px;background:#0b152d;border-radius:22px;color:#fff;padding:24px}.badge-rail svg{width:76px;height:76px}.badge-rail h3,.badge-rail p{color:#fff}}@media(max-width:1050px){.badge-collection{grid-template-columns:repeat(2,minmax(0,1fr))}.badge-bottom{grid-template-columns:1fr}.badge-profile{flex-wrap:wrap}.badge-profile>a{margin-left:0}}@media(max-width:600px){.badge-hero,.badge-profile{padding:25px 20px;border-top-right-radius:80px}.badge-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.badge-collection{grid-template-columns:1fr}.badge-master{grid-column:auto;flex-direction:column;text-align:center}.next-badge{padding:20px;gap:12px;flex-direction:column;align-items:start}.next-badge>svg{width:112px;height:112px}.badge-profile{gap:18px}.badge-profile h1{font-size:24px}.badge-profile>div:nth-child(2){min-width:0;width:100%}.badge-podium{gap:6px}.badge-points{font-size:12px}.badge-page .card{min-width:0}.award-moment{padding:30px 20px}.badge-hero .badge-reward{margin-top:12px}}@media(prefers-reduced-motion:reduce){.award-moment[open] .award-badge{animation:award-fade .15s linear}.award-moment[open] .award-badge>svg>circle:first-of-type{animation:none}@keyframes award-fade{from{opacity:0}to{opacity:1}}}

@media(min-width:1280px){.lesson:has(.badge-rail){grid-template-columns:180px minmax(0,1fr) 190px}.badge-rail{top:95px}.badge-rail p{font-size:13px}}.badge-hero :focus-visible,.badge-profile :focus-visible,.badge-rail :focus-visible{outline:3px solid #fff;outline-offset:4px}.lesson-steps a.done::before{content:"✓ ";font-weight:bold}.path-heading img.path-cover{display:block;width:100%;height:220px;max-height:240px;object-fit:cover;border-radius:20px;margin-top:24px}

.badge-hero,.badge-profile{background:radial-gradient(120% 140% at 85% 0%,#123a5c,#0b152d 55%)}.badge-metrics small{color:#0fc1f3}.badge-conditions{list-style:none;padding:0;color:#d3dfeb;font-size:14px;line-height:1.8}.badge-warning{display:inline-block;background:#fff4dc;color:#7a4f00!important;border-radius:99px;padding:5px 10px}.badge-master progress{width:100%;height:8px;margin-top:10px}

.badge-metrics strong{font-variant-numeric:tabular-nums}.admin-metrics strong{font-size:38px;line-height:1.15}
