/* Democratia Nova – Mobile Gameplay Hotfix 2026-05-08
   Loaded last and mirrored in the runtime patch so old inline styles cannot win on phones. */
:root{
  --dn-mobile-gap:10px;
  --dn-mobile-radius:18px;
  --dn-mobile-safe-bottom:env(safe-area-inset-bottom,0px);
  --dn-mobile-safe-top:env(safe-area-inset-top,0px);
}
html{overflow-x:hidden;-webkit-text-size-adjust:100%;scroll-padding-top:86px;}
body{overflow-x:hidden;}
img,svg,video,canvas{max-width:100%;height:auto;}
button,.btn,.optionCard,.dnux-tab,.dnux-modeChoice{-webkit-tap-highlight-color:transparent;touch-action:manipulation;}
input,select,textarea,button{font:inherit;}

@media (max-width:760px){
  .wrap,.narrow{width:100%!important;max-width:100vw!important;padding:calc(12px + var(--dn-mobile-safe-top)) 12px calc(18px + var(--dn-mobile-safe-bottom))!important;}
  .nav{gap:10px!important;margin-bottom:12px!important;align-items:flex-start!important;}
  .brandWrap{gap:9px!important;min-width:0!important;}
  .brandIcon{width:42px!important;height:42px!important;border-radius:14px!important;font-size:17px!important;flex:0 0 auto!important;}
  .brand{font-size:13px!important;line-height:1.1!important;letter-spacing:.06em!important;}
  .brandSub{font-size:10px!important;line-height:1.25!important;}
  .navActions{width:100%!important;min-width:0!important;display:grid!important;gap:8px!important;}
  .navLinks{width:100%!important;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(112px,1fr))!important;gap:6px!important;overflow:visible!important;padding:0!important;}
  .navLinks::-webkit-scrollbar{display:none!important;}
  .navLinks a{min-width:0!important;width:100%!important;white-space:normal!important;text-align:center!important;padding:9px 10px!important;font-size:12px!important;border-radius:12px!important;line-height:1.15!important;}
  .modePicker{width:100%!important;display:grid!important;grid-template-columns:1fr 1fr!important;align-items:stretch!important;gap:8px!important;padding:10px!important;border-radius:16px!important;}
  .modePicker .small,.modePicker select{grid-column:1/-1!important;}
  .modePicker select{min-width:0!important;min-height:44px!important;font-size:16px!important;}
  .modePicker button{width:100%!important;min-height:42px!important;padding:8px 10px!important;font-size:12px!important;border-radius:12px!important;}
  h1{font-size:clamp(28px,9vw,42px)!important;line-height:1!important;}
  .hero,.box,.card,.panel,.priceCard,.resultCard,.status{border-radius:var(--dn-mobile-radius)!important;padding:14px!important;}
  .grid2,.grid3,.grid4,.grid6,.row,.metaGrid,.gameGrid,.pressureGrid,.heroStatRow,.kpis{grid-template-columns:1fr!important;gap:10px!important;}
  input:not([type="checkbox"]):not([type="radio"]),select,textarea{min-height:44px!important;font-size:16px!important;padding:11px 12px!important;border-radius:13px!important;}
  textarea{min-height:110px!important;}
  .cta{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;margin-top:12px!important;}
  .cta button,.cta .btn{width:100%!important;min-height:46px!important;}
}

body.dnux-game .hero{display:none!important;}
body.dnux-game .wrap{width:100%;max-width:min(100vw,1680px);}
body.dnux-game #dnuxGameShell{isolation:isolate;}
body.dnux-game .dnux-panel{min-width:0;}
body.dnux-game .dnux-panel > *,
body.dnux-game .dnux-grid > *,
body.dnux-game .dnux-analysisTop > *,
body.dnux-game .dnux-analysisGrid > *{min-width:0;}

@media (max-width:899px){
  html body.dnux-game.dnux-game{min-height:var(--dnux-vh,100dvh)!important;overflow-x:hidden!important;}
  html body.dnux-game.dnux-game .wrap.wrap{max-width:100vw!important;padding:calc(8px + var(--dn-mobile-safe-top)) 10px calc(16px + var(--dn-mobile-safe-bottom))!important;display:grid!important;gap:8px!important;}
  html body.dnux-game.dnux-game .nav.nav{position:relative!important;top:auto!important;z-index:auto!important;margin:0 0 8px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;}
  html body.dnux-game.dnux-game .navActions.navActions{width:100%!important;min-width:0!important;display:grid!important;gap:8px!important;}
  html body.dnux-game.dnux-game .navLinks.navLinks{width:100%!important;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(112px,1fr))!important;overflow:visible!important;gap:6px!important;padding:0!important;scrollbar-width:none!important;}
  html body.dnux-game.dnux-game .navLinks.navLinks a{min-width:0!important;width:100%!important;white-space:normal!important;text-align:center!important;padding:8px 10px!important;font-size:12px!important;line-height:1.15!important;}
  html body.dnux-game.dnux-game .modePicker.modePicker{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;width:100%!important;min-width:0!important;padding:9px!important;border-radius:16px!important;}
  html body.dnux-game.dnux-game .modePicker.modePicker .small,
  html body.dnux-game.dnux-game .modePicker.modePicker select{grid-column:1/-1!important;}
  html body.dnux-game.dnux-game .modePicker.modePicker select{font-size:16px!important;min-height:44px!important;}
  html body.dnux-game.dnux-game .modePicker.modePicker button{min-height:42px!important;width:100%!important;font-size:12px!important;padding:8px!important;}

  html body.dnux-game.dnux-game #dnuxGameShell#dnuxGameShell{margin:0!important;gap:10px!important;display:grid!important;}
  html body.dnux-game.dnux-game .dnux-summary.dnux-summary{grid-template-columns:1fr!important;grid-template-areas:'top' 'message' 'objective'!important;gap:9px!important;padding:12px!important;border-radius:18px!important;}
  html body.dnux-game.dnux-game .dnux-summaryTop.dnux-summaryTop{display:grid!important;gap:10px!important;}
  html body.dnux-game.dnux-game .dnux-summaryMain.dnux-summaryMain{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:10px!important;align-items:center!important;}
  html body.dnux-game.dnux-game .dnux-flag.dnux-flag{width:38px!important;height:38px!important;border-radius:13px!important;font-size:21px!important;}
  html body.dnux-game.dnux-game .dnux-eyebrow.dnux-eyebrow{font-size:10px!important;}
  html body.dnux-game.dnux-game .dnux-title.dnux-title{font-size:clamp(20px,6vw,26px)!important;line-height:1.05!important;}
  html body.dnux-game.dnux-game .dnux-sub.dnux-sub{font-size:12px!important;line-height:1.35!important;max-width:none!important;}
  html body.dnux-game.dnux-game .dnux-chipRow.dnux-chipRow{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;align-items:stretch!important;}
  html body.dnux-game.dnux-game .dnux-chip.dnux-chip{min-width:0!important;width:100%!important;padding:7px 8px!important;border-radius:12px!important;font-size:11px!important;line-height:1.25!important;justify-content:flex-start!important;overflow-wrap:anywhere!important;}
  html body.dnux-game.dnux-game .dnux-helpBtn.dnux-helpBtn{grid-column:1/-1!important;width:100%!important;min-height:40px!important;font-size:12px!important;}
  html body.dnux-game.dnux-game .dnux-message.dnux-message,
  html body.dnux-game.dnux-game .dnux-objective.dnux-objective{padding:10px!important;border-radius:14px!important;font-size:12px!important;line-height:1.38!important;}
  html body.dnux-game.dnux-game .dnux-liveDock.dnux-liveDock{display:none!important;}

  html body.dnux-game.dnux-game .dnux-tabbar.dnux-tabbar,html body.dnux-game.dnux-game .dnux-tabStatus.dnux-tabStatus{display:none!important;}
  html body.dnux-game.dnux-game .dnux-tab.dnux-tab{min-height:48px!important;padding:8px 8px 16px!important;font-size:12px!important;line-height:1.15!important;border-radius:12px!important;}
  html body.dnux-game.dnux-game .dnux-tabStatus.dnux-tabStatus{width:100%!important;margin:0!important;padding:8px 10px!important;border-radius:13px!important;font-size:11px!important;}
  html body.dnux-game.dnux-game .dnux-tabStatusValue.dnux-tabStatusValue{font-size:11px!important;white-space:normal!important;}

  html body.dnux-game.dnux-game .dnux-flowCard.dnux-flowCard{padding:11px!important;border-radius:16px!important;gap:8px!important;}
  html body.dnux-game.dnux-game .dnux-flowTop.dnux-flowTop{display:grid!important;gap:4px!important;}
  html body.dnux-game.dnux-game .dnux-flowTitle h2{font-size:17px!important;line-height:1.12!important;margin:0!important;}
  html body.dnux-game.dnux-game .dnux-flowTitle p{font-size:12px!important;line-height:1.35!important;margin:0!important;}
  html body.dnux-game.dnux-game .dnux-flowEta.dnux-flowEta{display:none!important;}
  html body.dnux-game.dnux-game .dnux-flowRail.dnux-flowRail{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;}
  html body.dnux-game.dnux-game .dnux-flowStep.dnux-flowStep{display:grid!important;grid-template-columns:1fr!important;gap:5px!important;padding:8px 6px!important;border-radius:13px!important;min-height:0!important;}
  html body.dnux-game.dnux-game .dnux-flowNumber.dnux-flowNumber{width:28px!important;height:28px!important;margin:auto!important;font-size:12px!important;}
  html body.dnux-game.dnux-game .dnux-flowCopy strong{display:block!important;text-align:center!important;font-size:11px!important;line-height:1.15!important;margin:0!important;}
  html body.dnux-game.dnux-game .dnux-flowCopy span{display:none!important;}

  html body.dnux-game.dnux-game .dnux-grid.dnux-grid,
  html body.dnux-game.dnux-game .dnux-analysisTop.dnux-analysisTop,
  html body.dnux-game.dnux-game .dnux-analysisGrid.dnux-analysisGrid{grid-template-columns:1fr!important;gap:10px!important;}
  html body.dnux-game.dnux-game .box.stack{gap:10px!important;}
  html body.dnux-game.dnux-game .dnux-stageCard.dnux-stageCard,
  html body.dnux-game.dnux-game .dnux-decisionComposer.dnux-decisionComposer,
  html body.dnux-game.dnux-game .dnux-mapCard.dnux-mapCard,
  html body.dnux-game.dnux-game .dnux-roundLoopCard.dnux-roundLoopCard,
  html body.dnux-game.dnux-game .dnux-headlineCard.dnux-headlineCard,
  html body.dnux-game.dnux-game .dnux-storyCard.dnux-storyCard,
  html body.dnux-game.dnux-game .dnux-analysisTop > *,
  html body.dnux-game.dnux-game .dnux-analysisGrid > *{padding:12px!important;border-radius:16px!important;gap:10px!important;}
  html body.dnux-game.dnux-game .dnux-cardIntro.dnux-cardIntro{padding:9px 10px!important;border-radius:13px!important;gap:4px!important;margin:0!important;}
  html body.dnux-game.dnux-game .dnux-cardIntro h2,
  html body.dnux-game.dnux-game .dnux-cardIntro h3{font-size:15px!important;line-height:1.15!important;}
  html body.dnux-game.dnux-game .dnux-cardIntro p{font-size:11.5px!important;line-height:1.32!important;}
  html body.dnux-game.dnux-game .dnux-stageHead.dnux-stageHead{grid-template-columns:auto minmax(0,1fr)!important;gap:9px!important;}
  html body.dnux-game.dnux-game .dnux-stageNo.dnux-stageNo{width:32px!important;height:32px!important;border-radius:11px!important;font-size:12px!important;}
  html body.dnux-game.dnux-game .dnux-stageCopy h3{font-size:16px!important;}
  html body.dnux-game.dnux-game .dnux-stageCopy p,
  html body.dnux-game.dnux-game .dnux-fieldHint.dnux-fieldHint,
  html body.dnux-game.dnux-game .dnux-secondaryInfo.dnux-secondaryInfo{font-size:12px!important;line-height:1.35!important;}
  html body.dnux-game.dnux-game .row.row{grid-template-columns:1fr!important;gap:8px!important;}
  html body.dnux-game.dnux-game label{font-size:12px!important;margin-bottom:5px!important;}
  html body.dnux-game.dnux-game select,
  html body.dnux-game.dnux-game input,
  html body.dnux-game.dnux-game textarea,
  html body.dnux-game.dnux-game .dnux-listInput.dnux-listInput{font-size:16px!important;min-height:44px!important;padding:10px 11px!important;border-radius:12px!important;}
  html body.dnux-game.dnux-game textarea#actionText{min-height:96px!important;max-height:180px!important;}

  html body.dnux-game.dnux-game .actionsRow.actionsRow{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow:visible!important;scroll-snap-type:none!important;gap:8px!important;padding-bottom:0!important;}
  html body.dnux-game.dnux-game .optionCard.optionCard{min-width:0!important;min-height:auto!important;padding:10px!important;border-radius:13px!important;scroll-snap-align:none!important;}
  html body.dnux-game.dnux-game .letter.letter{min-width:28px!important;padding:3px 8px!important;font-size:11px!important;margin-bottom:6px!important;}
  html body.dnux-game.dnux-game .optionTitle.optionTitle{font-size:13px!important;line-height:1.16!important;}
  html body.dnux-game.dnux-game .optionText.optionText{font-size:11px!important;line-height:1.28!important;margin-top:5px!important;}
  html body.dnux-game.dnux-game .optionMeta.optionMeta{padding-top:6px!important;gap:5px!important;}
  html body.dnux-game.dnux-game .mini.mini{font-size:10px!important;padding:4px 6px!important;}
  html body.dnux-game.dnux-game .dnux-optionHeader.dnux-optionHeader{display:grid!important;gap:8px!important;}
  html body.dnux-game.dnux-game .dnux-optionHeader h3{font-size:16px!important;}
  html body.dnux-game.dnux-game .dnux-choicePreview.dnux-choicePreview{padding:10px!important;border-radius:13px!important;font-size:12px!important;line-height:1.35!important;}
  html body.dnux-game.dnux-game .dnux-controlDeck.dnux-controlDeck{gap:10px!important;}
  html body.dnux-game.dnux-game .dnux-launchPrimary button,
  html body.dnux-game.dnux-game .dnux-launchPrimary .btn,
  html body.dnux-game.dnux-game .dnux-nextRoundBtn.dnux-nextRoundBtn{width:100%!important;min-height:52px!important;font-size:15px!important;padding:10px 12px!important;border-radius:14px!important;}
  html body.dnux-game.dnux-game .dnux-secondaryActions.dnux-secondaryActions{grid-template-columns:1fr!important;gap:8px!important;}
  html body.dnux-game.dnux-game .dnux-secondaryActions button,
  html body.dnux-game.dnux-game .dnux-secondaryActions .btn{width:100%!important;min-height:44px!important;font-size:13px!important;}
  html body.dnux-game.dnux-game .cta.cta{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;position:static!important;background:none!important;padding:0!important;margin:0!important;}
  html body.dnux-game.dnux-game .status.status{font-size:12px!important;line-height:1.35!important;padding:10px!important;border-radius:13px!important;}

  html body.dnux-game.dnux-game #metricGrid#metricGrid,
  html body.dnux-game.dnux-game #pressureGrid#pressureGrid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
  html body.dnux-game.dnux-game .kpi.kpi,
  html body.dnux-game.dnux-game .pressureCard.pressureCard,
  html body.dnux-game.dnux-game .timelineItem.timelineItem,
  html body.dnux-game.dnux-game .resultCard.resultCard,
  html body.dnux-game.dnux-game .dnux-regionWeightCard.dnux-regionWeightCard,
  html body.dnux-game.dnux-game .dnux-headlineItem.dnux-headlineItem,
  html body.dnux-game.dnux-game .dnux-reactionLine.dnux-reactionLine{padding:10px!important;border-radius:13px!important;}
  html body.dnux-game.dnux-game .kpiLabel.kpiLabel{font-size:10px!important;letter-spacing:.05em!important;}
  html body.dnux-game.dnux-game .kpiValue.kpiValue{font-size:clamp(17px,6vw,23px)!important;line-height:1.08!important;}
  html body.dnux-game.dnux-game .kpiHint,
  html body.dnux-game.dnux-game .small,
  html body.dnux-game.dnux-game .note,
  html body.dnux-game.dnux-game .resultBody,
  html body.dnux-game.dnux-game .timelineItem{font-size:11.5px!important;line-height:1.35!important;}
  html body.dnux-game.dnux-game .dnux-regionWeightBoard.dnux-regionWeightBoard{grid-template-columns:1fr!important;gap:8px!important;}
  html body.dnux-game.dnux-game .dnux-regionWeightSummary,
  html body.dnux-game.dnux-game .dnux-regionWeightNotice,
  html body.dnux-game.dnux-game .dnux-regionWeightEmpty{padding:10px!important;border-radius:13px!important;font-size:12px!important;line-height:1.35!important;}

  #dnuxGuideOverlay .dnux-guideCard{left:10px!important;right:10px!important;bottom:calc(10px + var(--dn-mobile-safe-bottom))!important;width:auto!important;max-height:calc(100dvh - 20px - var(--dn-mobile-safe-top))!important;overflow:auto!important;padding:14px!important;border-radius:18px!important;z-index:12002!important;}
  #dnuxGuideOverlay .dnux-guideTitle{font-size:21px!important;}
  #dnuxGuideOverlay .dnux-guideBody{font-size:14px!important;line-height:1.5!important;}
  #dnuxGuideOverlay .dnux-guideActions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;}
  #dnuxGuideOverlay .dnux-guidePrimary{grid-column:1/-1!important;}
  #dnuxLoadingOverlay .dnux-loadingCard{width:calc(100vw - 24px)!important;padding:16px!important;border-radius:20px!important;}
}

@media (max-width:370px){
  html body.dnux-game.dnux-game .dnux-chipRow.dnux-chipRow,
  html body.dnux-game.dnux-game .actionsRow.actionsRow,
  html body.dnux-game.dnux-game #metricGrid#metricGrid,
  html body.dnux-game.dnux-game #pressureGrid#pressureGrid{grid-template-columns:1fr!important;}
  html body.dnux-game.dnux-game .dnux-flowRail.dnux-flowRail{grid-template-columns:1fr!important;}
}

@media (min-width:900px) and (max-width:1179px){
  html body.dnux-game.dnux-game .dnux-grid.dnux-grid,
  html body.dnux-game.dnux-game .dnux-analysisTop.dnux-analysisTop,
  html body.dnux-game.dnux-game .dnux-analysisGrid.dnux-analysisGrid{grid-template-columns:1fr!important;}
  html body.dnux-game.dnux-game .actionsRow.actionsRow{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  html body.dnux-game.dnux-game .dnux-liveDock.dnux-liveDock{display:block!important;}
}


/* Mobile language switch: no fixed overlay while playing */
@media (max-width:760px){
  #dnLanguageDock{
    position:static!important;
    right:auto!important;
    bottom:auto!important;
    z-index:auto!important;
    width:auto!important;
    margin:12px 12px calc(12px + var(--dn-mobile-safe-bottom))!important;
    display:flex!important;
    justify-content:center!important;
    font-family:Arial,sans-serif!important;
  }
  #dnLanguageToggle{
    width:100%!important;
    max-width:380px!important;
    min-height:42px!important;
    justify-content:center!important;
    padding:10px 12px!important;
    border-radius:999px!important;
    font-size:14px!important;
  }
  #dnLanguagePanel{
    position:fixed!important;
    left:10px!important;
    right:10px!important;
    bottom:calc(10px + var(--dn-mobile-safe-bottom))!important;
    width:auto!important;
    max-height:calc(100dvh - 20px - var(--dn-mobile-safe-top))!important;
    overflow:auto!important;
    z-index:10050!important;
    border-radius:18px!important;
  }
  .dn-language-toast{
    left:10px!important;
    right:10px!important;
    bottom:calc(64px + var(--dn-mobile-safe-bottom))!important;
    max-width:none!important;
    z-index:10060!important;
  }
}

/* Karrieremodus mobile */
body.dn-mobile-career{overflow-x:hidden;}
@media (max-width:760px){
  body.dn-mobile-career .wrap{width:100%!important;max-width:100vw!important;padding:calc(12px + var(--dn-mobile-safe-top)) 12px calc(18px + var(--dn-mobile-safe-bottom))!important;}
  body.dn-mobile-career .nav{gap:10px!important;margin-bottom:12px!important;}
  body.dn-mobile-career .navActions{width:100%!important;display:grid!important;gap:8px!important;}
  body.dn-mobile-career .navLinks{width:100%!important;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(112px,1fr))!important;overflow:visible!important;gap:6px!important;padding:0!important;scrollbar-width:none!important;}
  body.dn-mobile-career .navLinks::-webkit-scrollbar{display:none!important;}
  body.dn-mobile-career .navLinks a{min-width:0!important;width:100%!important;white-space:normal!important;text-align:center!important;font-size:12px!important;padding:8px 10px!important;line-height:1.15!important;}
  body.dn-mobile-career .hero,
  body.dn-mobile-career .box,
  body.dn-mobile-career .card,
  body.dn-mobile-career .panel,
  body.dn-mobile-career .status,
  body.dn-mobile-career .infoStrip{padding:14px!important;border-radius:18px!important;}
  body.dn-mobile-career .grid2,
  body.dn-mobile-career .grid3,
  body.dn-mobile-career .dualCols,
  body.dn-mobile-career .row,
  body.dn-mobile-career .liveGrid,
  body.dn-mobile-career .regionBoard{grid-template-columns:1fr!important;gap:10px!important;}
  body.dn-mobile-career .kpiGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
  body.dn-mobile-career .optionRow{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
  body.dn-mobile-career .optionCard{min-height:auto!important;padding:10px!important;border-radius:13px!important;}
  body.dn-mobile-career .optionTitle{font-size:13px!important;line-height:1.18!important;}
  body.dn-mobile-career .optionText{font-size:11px!important;line-height:1.3!important;}
  body.dn-mobile-career .letter{min-width:28px!important;padding:3px 8px!important;font-size:11px!important;margin-bottom:6px!important;}
  body.dn-mobile-career input,
  body.dn-mobile-career select,
  body.dn-mobile-career textarea{font-size:16px!important;min-height:44px!important;padding:10px 11px!important;border-radius:12px!important;}
  body.dn-mobile-career .cta{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;}
  body.dn-mobile-career .cta button,
  body.dn-mobile-career .cta .btn{width:100%!important;min-height:46px!important;}
  body.dn-mobile-career .kpi{padding:10px!important;border-radius:13px!important;}
  body.dn-mobile-career .kpiValue{font-size:clamp(18px,6vw,24px)!important;line-height:1.1!important;}
}
@media (max-width:370px){
  body.dn-mobile-career .kpiGrid,
  body.dn-mobile-career .optionRow{grid-template-columns:1fr!important;}
}

@media (max-width: 760px){
  body.dnux-game .dnux-reactionActor{align-items:flex-start!important;gap:6px!important;}
  body.dnux-game .dnux-reactionLine em{font-size:10px!important;padding:4px 6px!important;}
}
