/* Shared light discovery theme. The original components retain their selectors and behavior. */
body.portal-theme {
  --bg:#f8f8ff; --panel:#fff; --panel2:#f5f3ff; --line:#e3dff2; --text:#080e38;
  --muted:#353854; --dim:#565975; --cyan:#5426e8; --gold:#5426e8; --radius:18px;
  background:linear-gradient(180deg,#fff 0,#faf9ff 600px,#fff 100%); color:var(--text);
}
.portal-theme *, .portal-theme *::before, .portal-theme *::after {box-sizing:border-box}
.portal-theme :where(button,input,select,textarea,a,summary):focus-visible {outline:3px solid #6237eb;outline-offset:3px}
.portal-theme .skip {background:#fff;color:var(--text)}
.portal-theme .shell {display:block}
.portal-theme .sidebar {display:none}
.portal-theme .topbar {height:72px;background:rgba(255,255,255,.97);border-color:#ddd2fa;color:var(--text);top:0}
.portal-theme .portal-top {gap:24px;padding-inline:clamp(20px,3.8vw,72px)}
.portal-logo {min-width:0;gap:10px;font-size:clamp(20px,2.2vw,32px);font-weight:850;letter-spacing:-.055em;white-space:nowrap;color:#080e38}
.portal-logo b {color:#5426e8}
.portal-logo svg {flex:none}
.portal-nav {gap:clamp(12px,1.55vw,28px);margin-inline:auto}
.portal-nav .nav-link,.portal-menu>summary {display:flex;align-items:center;gap:6px;min-height:44px;font-size:13px;font-weight:720;color:#080e38}
.portal-nav svg {width:17px;height:17px}
.portal-nav .nav-link.current {color:#5426e8}
.portal-nav .nav-link.current:after {bottom:0}
.portal-menu {position:relative}
.portal-menu summary {cursor:pointer;list-style:none}
.portal-menu summary::-webkit-details-marker {display:none}
.portal-menu nav {position:absolute;top:calc(100% + 10px);right:-14px;display:grid;min-width:260px;max-height:65vh;overflow:auto;background:#fff;border:1px solid #e4def5;border-radius:18px;box-shadow:0 14px 40px #20116e1c;padding:7px}
.portal-menu nav a {padding:9px 12px;border-radius:10px}
.portal-menu nav a:hover {background:#eee8ff;color:#5426e8}
.portal-theme .portal-top .header-end {gap:10px;margin-left:0}
.portal-search-link {display:grid;place-items:center;min-width:44px;min-height:44px;color:#080e38}
.portal-theme .mobile-toggle {color:#28177f;background:#eee8ff;min-height:44px;border:1px solid #e4d8ff;padding:7px 12px;border-radius:14px}
.portal-theme .mobile-cats {position:sticky;top:72px;z-index:39;max-height:65vh;overflow:auto;background:#fff;color:var(--text);padding:12px 20px;box-shadow:0 12px 28px #20116e1c}
.portal-theme .mobile-cats:not([hidden]) {display:flex;flex-wrap:wrap;gap:7px}
.portal-theme .mobile-cats a {min-height:44px;display:inline-flex;align-items:center;color:var(--text);border:1px solid var(--line);background:#f8f6ff;padding:5px 12px;border-radius:12px}
.portal-button {display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;min-width:44px;padding:7px 16px;background:#4b23d9;color:#fff;border:1px solid transparent;border-radius:999px;font-weight:740;line-height:1.2;font-size:13px;white-space:nowrap;text-decoration:none;transition:background .18s,box-shadow .18s}
.portal-button:hover {background:#3d15be;box-shadow:0 4px 16px #5426e84d}
.portal-button.secondary {background:#fff;color:#3815ae;border-color:#e5def6}
.portal-button:disabled {opacity:.63}
.portal-theme :where(input,select,textarea) {background:#fff;color:var(--text);border:1px solid #d5cce9;border-radius:12px}
.portal-theme select option {color:var(--text);background:#fff}
.portal-theme :where(input,textarea)::placeholder {color:#5f617e}
.portal-inline {color:#4b23d9;font-weight:730;display:inline-flex;align-items:center;min-height:44px}
.portal-inline:hover {text-decoration:underline}
.portal-theme .portal-main {max-width:none}
.portal-hero {background:radial-gradient(ellipse at 80% 0,#efe7ff 0,transparent 54%),linear-gradient(130deg,#fff 10%,#fff3ec 55%,#e7dfff);overflow:hidden;scroll-margin-top:72px}
.portal-hero-inner {max-width:1680px;margin:auto;min-height:360px;position:relative;isolation:isolate;display:flex;align-items:center;padding:25px clamp(20px,3.8vw,68px) 30px}
.portal-hero-copy {width:min(55%,750px);position:relative;z-index:1}
.portal-hero h1 {font-size:clamp(37px,4.45vw,78px);font-weight:850;letter-spacing:-.065em;line-height:.99}
.portal-hero h1 em {background:linear-gradient(90deg,#5c25ec,#a128d7 28%,#e53877 58%,#e75029 81%,#d86911);background-clip:text;color:transparent}
.portal-hero-copy>p {margin:14px 0 13px;font-size:clamp(16px,1.35vw,22px);line-height:1.32;font-weight:650;max-width:45ch;color:var(--text)}
.portal-hero-art {position:absolute;inset:0 0 0 auto;width:56%;height:100%;object-fit:cover;object-position:60% 58%;mask-image:linear-gradient(90deg,transparent 0,#000 22%);z-index:0}
.portal-search {margin-top:12px}
.portal-search-line {display:flex;gap:8px;align-items:center}
.portal-input {flex:1;display:flex;align-items:center;min-width:0;background:#fff;border:1px solid #e0dbee;border-radius:999px;box-shadow:0 2px 7px #27165f12;padding:0 12px;gap:9px}
.portal-input>svg {flex:none;width:20px;height:20px;color:#22174b}
.portal-theme .portal-input input {width:100%;min-height:44px;border:0;border-radius:999px;padding:8px 2px;background:none;color:var(--text)}
.portal-quick {display:flex;gap:8px;flex-wrap:wrap;margin-top:9px}
.portal-quick button,.portal-badge {border:1px solid #e5def5;border-radius:999px;background:#fff;color:#201953;font-weight:700}
.portal-quick button {min-height:44px;min-width:54px;padding:6px 13px;font-size:13px;box-shadow:0 2px 6px #2d146314}
.portal-quick button[aria-pressed=true] {background:#4b23d9;color:#fff}
.portal-content {max-width:1680px;margin:auto;padding:12px clamp(20px,3.8vw,68px) 28px}
.portal-block {margin:0 0 16px}
.portal-block>h2 {margin-bottom:8px}
.portal-block>h3 {margin:12px 0 5px}
.portal-section-head {display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}
.portal-section-head h2 {display:flex;align-items:center;gap:8px;font-size:clamp(20px,2vw,30px);font-weight:820}
.portal-section-head svg {width:25px;height:25px;flex:none}
.portal-section-head svg:has(path[d^="M12 22"]) {color:#c94e16}
.portal-categories {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:11px}
.portal-cat {min-height:61px;display:grid;grid-template-columns:auto 1fr;align-content:center;align-items:center;gap:0 10px;padding:8px 12px;background:#fff;border:1px solid #e7e3f2;border-radius:15px;box-shadow:0 2px 7px #2d14630c;font-weight:760;line-height:1.15;transition:transform .18s,box-shadow .18s}
.portal-cat svg {grid-row:span 2;color:#5426e8;width:28px;height:28px}
.portal-cat small {display:none;color:var(--muted);font-size:11px;font-weight:550;margin-top:3px}
.portal-cat:hover,.portal-cat:focus-visible,.discovery-card:hover {transform:translateY(-2px);box-shadow:0 7px 20px #3417841b}
.portal-cat:hover small,.portal-cat:focus-visible small {display:block}
.portal-category-more {text-align:right;margin-bottom:-10px}
.discovery-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.discovery-card {min-width:0;display:flex;flex-direction:column;padding:12px;border:1px solid #e7e3f2;border-radius:17px;background:#fff;box-shadow:0 2px 7px #2d14630e;transition:transform .18s,box-shadow .18s}
.discovery-card-top {display:flex;align-items:center;gap:11px;margin-bottom:7px}
.discovery-card h3 {font-size:clamp(16px,1.4vw,21px);font-weight:820;overflow-wrap:anywhere}
.discovery-card h3 a:hover {color:#5426e8}
.discovery-card p {font-size:13px;line-height:1.45;color:#353854}
.discovery-card-top p {margin:3px 0 5px;font-size:12px}
.discovery-card-foot {margin-top:auto;align-self:end;padding-top:6px}
.discovery-cover {width:68px;height:68px;flex:none;display:grid;place-items:center;border-radius:17px;color:#fff;background:linear-gradient(145deg,#5b37f0,#a743f8 67%,#f86999);box-shadow:inset 0 1px 2px #fff8,0 5px 13px #20116b23}
.discovery-cover svg {width:35px;height:35px;filter:drop-shadow(0 2px 2px #15093955)}
.cover-camera {background:linear-gradient(145deg,#be295f,#ec633b 55%,#f9ae32)}
.cover-chess {background:linear-gradient(145deg,#092b8a,#2869d9 60%,#33bded)}
.cover-puzzle {background:linear-gradient(145deg,#7223a2,#9724d6 60%,#c14bf3)}
.cover-mountain {background:linear-gradient(145deg,#8b2c53,#dc534c 60%,#ea7f2c)}
.cover-check {background:linear-gradient(145deg,#0b439f,#2866ea 60%,#4fbcfc)}
.cover-chat {background:linear-gradient(145deg,#253199,#3d69ec 60%,#667cfe)}
.cover-film {background:linear-gradient(145deg,#0b564f,#116665 55%,#2ca861)}
.portal-badge {font-size:10px;display:inline-block;margin-right:4px;padding:1px 6px;line-height:1.45;background:#f8f6ff}
.portal-genres {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.portal-genre {position:relative;isolation:isolate;min-height:122px;display:flex;align-items:center;justify-content:end;padding:12px 16px;overflow:hidden;border-radius:17px;background:#281b62;color:#fff}
.portal-genre::before {content:"";position:absolute;inset:0;z-index:-1;background-size:cover;background-position:center}
.genre-strategie::before {background-image:linear-gradient(90deg,transparent,#081343aa 48%,#081343ec),url('/genre-strategie.jpg')}
.genre-puzzle::before {background-image:linear-gradient(90deg,transparent,#360944aa 48%,#360944eb),url('/genre-puzzle.jpg')}
.genre-abenteuer::before {background-image:linear-gradient(90deg,transparent,#5b2308aa 48%,#5b2308ed),url('/genre-abenteuer.jpg')}
.portal-genre-copy {width:60%;min-width:0}
.portal-genre h3 {font-weight:820;font-size:clamp(20px,1.8vw,28px)}
.portal-genre p {color:#fff;line-height:1.35;margin:2px 0 6px}
.portal-genre .portal-button {min-height:44px}
.portal-solver,.portal-cta {background:linear-gradient(135deg,#f3edff,#eee8ff 52%,#e0dbff);border:1px solid #e5dcfb;border-radius:19px;padding:clamp(14px,2vw,24px)}
.portal-task-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:11px}
.portal-task-grid a {display:block;background:#fff;border:1px solid #dfd7f4;border-radius:11px;padding:9px 12px;font-weight:730;line-height:1.35}
.portal-task-grid a:hover {color:#5426e8;border-color:#754eef}
.portal-task-grid small {display:block;color:#5426e8}
.portal-cta {display:flex;gap:16px;align-items:center;justify-content:space-between;margin-top:15px}
.portal-cta>span {display:grid;place-items:center;flex:none;width:54px;height:54px;border-radius:50%;background:#fff8;color:#5426e8}
.portal-cta div {margin-right:auto}
.portal-cta h2 {font-size:clamp(22px,2.1vw,31px);font-weight:820}
.portal-related,.portal-actions {display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;margin-block:9px}
.portal-page {max-width:1360px;padding-block:24px 40px}
.portal-intro,.portal-detail-hero {background:linear-gradient(120deg,#fff,#f2edff);border:1px solid #e8e1f7;border-radius:22px;padding:clamp(17px,3vw,40px);margin:10px 0 20px}
.portal-intro h1,.portal-detail-hero h1 {font-size:clamp(34px,4.6vw,62px);font-weight:820}
.portal-intro p,.portal-detail-hero p {max-width:72ch;margin-top:7px}
.portal-detail-hero {display:flex;gap:18px;align-items:flex-start}
.portal-detail-hero .discovery-cover {width:100px;height:100px}
.portal-detail-hero .discovery-cover svg {width:52px;height:52px}
.portal-page .portal-block {margin-top:22px}
.portal-qa {display:grid;gap:7px;max-width:900px}
.portal-qa details {background:#fff;border:1px solid #e7e3f2;border-radius:12px;padding:0 12px}
.portal-qa summary {font-weight:740;cursor:pointer;min-height:44px;padding:8px 0}
.portal-qa p {padding-bottom:10px}
.portal-select {display:flex;align-items:center;gap:9px;margin-top:9px}
.portal-results {margin:10px 0 20px}
.portal-result-status:empty {display:none}
.portal-search-empty {padding:10px;background:#f8f5ff;border-radius:10px}
.portal-wizard {max-width:760px;background:#fff;border:1px solid #e7dff6;border-radius:20px;padding:clamp(14px,2.6vw,27px)}
.portal-wizard fieldset {border:0;padding:0;margin:0 0 12px;min-width:0}
.portal-wizard legend {font-size:20px;font-weight:800;margin-bottom:10px}
.portal-wizard fieldset>label:not(.wizard-consent) {display:grid;gap:4px;margin-bottom:10px;font-weight:700}
.portal-wizard :where(input:not([type=checkbox]),textarea,select) {font:inherit;padding:9px 12px;width:100%;min-height:44px}
.wizard-progress,.wizard-status {margin-bottom:8px;font-weight:700}
.wizard-checks {display:flex;flex-wrap:wrap;gap:5px 16px}
.wizard-checks>span {flex-basis:100%;font-weight:700}
.wizard-checks label,.wizard-consent {display:flex;align-items:center;gap:7px;min-height:44px}
.portal-wizard input[type=checkbox] {width:18px;height:18px;flex:none;accent-color:#5426e8}
.wizard-consent a {color:#4b23d9;text-decoration:underline}
.wizard-honeypot {position:absolute;left:-10000px}
.wizard-summary {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:7px 12px;overflow-wrap:anywhere}
.wizard-summary dd {margin:0}
.portal-legacy {margin-top:30px}
.portal-theme .portal-legacy .section {padding-inline:0}
.portal-theme :where(.page-intro,.section,.knowledge-card,.tool-card,.profile-content section,.profile-tabs,.catalog-icon,.intent-toggle,.intent-answer,.q-answer,.faq-list details,.international-card,.intl-tool-card,.intl-card,.intl-menu>div,.decision-card,.compare-picker,.comparison-tray,.mini-tool,.hero-search,.finder-section,.legal-content,.mobile-cats,.toast) {color:var(--text);border-color:var(--line)}
.portal-theme :is(.page-intro,.knowledge-card,.tool-card,.profile-content section,.profile-tabs,.intent-toggle,.intent-answer,.faq-list details,.decision-card,.compare-picker,.comparison-tray,.mini-tool,.hero-search,.intl-menu>div,.finder-card,.catalog-card,.intl-card,.toast) {background:#fff}
.portal-theme :is(.page-intro,.profile-hero,.q-hero,.intl-intro) {background:linear-gradient(115deg,#fff,#f0eaff)}
.portal-theme :is(.button.primary,.compare-add[aria-pressed=true]) {color:#fff;background:#4b23d9;border-color:#4b23d9}
.portal-theme :is(.button.secondary,.compare-add,.filter-row,.picker-item,.catalog-controls,.catalog-fact,.q-section,.q-detail,.q-disclosures details,.q-disclosures summary) {color:var(--text);background:#f7f4ff;border-color:#e5dff3}
.portal-theme :is(.brand-mark,.catalog-icon,.intl-tool-logo) {color:#352069;background:#f2ecff;border-color:#e3dcf5}
.portal-theme :is(.q-profile,.intl-page) {--q-bg:#faf8ff;--q-surface:#fff;--q-glass:#f7f3ff;--q-line:#e5dff3;--q-cyan:#5426e8;--q-violet:#5426e8;--q-text:#080e38;--q-muted:#373b59}
.portal-theme .q-profile {background:#fff}
.portal-theme :is(.q-answer dt,.eyebrow,.text-link,.source-link,.footer-logo) {color:#5426e8}
.portal-theme :is(footer,.intl-footer) {background:#f6f3ff;color:var(--text);border-color:var(--line)}
.portal-theme .intl-top .logo-symbol {color:#5426e8}
.portal-theme .footer-legal a {min-height:44px;display:inline-flex;align-items:center}
@media(max-width:1190px) {
  .portal-theme .portal-nav {display:none}
  .portal-theme .portal-top .header-end {margin-left:auto}
  .portal-theme .portal-top .mobile-toggle {display:inline-flex;align-items:center}
}
@media(max-width:920px) {
  .portal-categories {grid-template-columns:repeat(3,minmax(0,1fr))}
  .discovery-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .portal-hero-copy {width:58%}
}
@media(max-width:640px) {
  .portal-theme .topbar {height:64px}
  .portal-theme .portal-top {padding-inline:14px;gap:8px}
  .portal-logo {gap:5px}
  .portal-logo svg {width:32px;height:33px}
  .portal-theme .portal-top .header-end {gap:3px}
  .portal-theme .portal-top .portal-submit {display:none}
  .portal-theme .mobile-cats {top:64px}
  .portal-hero-inner {display:grid;align-items:start;min-height:0;padding:22px 16px 0}
  .portal-hero-copy {width:100%}
  .portal-hero h1 {font-size:clamp(35px,8vw,54px)}
  .portal-hero-copy>p {max-width:37ch}
  .portal-hero-art {position:relative;inset:auto;display:block;width:calc(100% + 32px);margin:3px -16px 0;height:180px;mask-image:linear-gradient(180deg,transparent 0,#000 24%);object-position:center 53%}
  .portal-content {padding-inline:14px}
  .portal-quick {flex-wrap:nowrap;overflow-x:auto;padding:2px 2px 3px}
  .portal-categories,.portal-task-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .portal-cat {min-height:54px;padding:7px}
  .portal-cat svg {width:24px;height:24px}
  .portal-genre-copy {width:62%}
  .portal-genres {grid-template-columns:1fr}
  .portal-cta {flex-wrap:wrap}
  .portal-cta div {flex:1 1 180px}
  .portal-cta .portal-button {margin-left:0}
  .portal-detail-hero {display:block}
  .portal-detail-hero .discovery-cover {margin-bottom:10px}
  .portal-page .portal-section-head {align-items:start}
}
@media(max-width:420px) {
  .discovery-grid {grid-template-columns:1fr}
  .portal-content .portal-section-head .portal-inline {font-size:12px}
  .portal-search-link {min-width:38px}
}
@media(prefers-reduced-motion:reduce) {
  html:has(.portal-theme) {scroll-behavior:auto}
  .portal-theme *, .portal-theme *::before, .portal-theme *::after {animation:none!important;transition:none!important}
}

.portal-theme .portal-top .lang-switch summary,
.portal-theme .portal-top .lang-switch nav {background:#f3eeff;color:#211451;border-color:#e3dbf8}
