/* Molduras, botões e abertura compartilhados com a cozinha DIVAR. */
.module-opening { position: fixed; inset: 0; z-index: 10000; background: #2f1a50; color: #fffaf5; font-family: Nunito, system-ui, sans-serif; }
.module-opening[hidden] { display: none !important; }
.module-opening-cover { position: absolute; inset: 0; display: grid; align-content: end; justify-items: center; padding: 32px 24px max(28px, env(safe-area-inset-bottom)); background: linear-gradient(transparent 65%, #26143ade); }
.module-opening-cover > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; z-index: -1; }
.module-opening-cover h1 { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.module-opening.has-cover-title h1 { position: static; width: min(580px, 100%); height: auto; clip-path: none; padding: 22px; border: 3px solid #3f265e; border-radius: 20px; background: #fffaf5; color: #2f1a50; text-align: center; font-size: clamp(26px, 4vw, 44px); box-shadow: 0 6px #341c54; margin: 0 0 auto; }
.module-opening-actions { display: grid; gap: 12px; width: min(330px, 100%); }
.module-opening button, .divar-menu-button { min-height: 52px; padding: 12px 24px; border: 2px solid #ffe2f0; border-radius: 14px; background: linear-gradient(#df3989, #b52370); color: #fff; font: inherit; font-weight: 900; cursor: pointer; box-shadow: 0 5px #401e53; }
.module-opening button:focus-visible, .divar-menu-button:focus-visible { outline: 3px solid #ffe175; outline-offset: 4px; }
.module-opening .module-quiet { min-height: 44px; padding: 8px 18px; background: #342047dd; border-color: #b397c7; font-size: .85rem; }
.module-opening-credits { position: absolute; inset: 0; display: none; place-items: center; overflow: auto; padding: 24px; background: #08080c; }
.module-studio { display: grid; justify-items: center; gap: 10px; text-align: center; }
.module-studio img { width: 130px; height: 130px; object-fit: contain; border-radius: 20px; background: #fffaf5; padding: 8px; }
.module-studio p { font-size: .85rem; margin: 6px 0; color: #c6c5cc; }
.module-studio strong { font-size: 1.9rem; }
.module-studio span { color: #c6c5cc; margin-top: 20px; font-size: .8rem; }
.module-studio b { font-size: 1.4rem; }
.module-opening[data-opening-phase="credits"] .module-opening-cover { display: none; }
.module-opening[data-opening-phase="credits"] .module-opening-credits { display: grid; }
.module-opening[data-opening-phase="credits"] .module-studio { animation: module-credits-roll 2s ease-in-out both; }
.module-opening[data-credits-paused="true"] .module-studio { animation-play-state: paused; }
@keyframes module-credits-roll { 0% { opacity: 0; transform: translateY(24px); } 18%, 78% { opacity: 1; } 100% { opacity: 0; transform: translateY(-24px); } }
@media (prefers-reduced-motion: reduce) { .module-opening[data-opening-phase="credits"] .module-studio { animation: none; } }
.has-module-opening .mobile-landscape-prompt { display: none !important; }
.game-launch-menu { width: min(550px, 100%); margin: auto; padding: 0 26px 28px; border: 3px solid #472762; border-radius: 22px; background: linear-gradient(#fffaf5, #eee5f3); color: #321b50; box-shadow: 0 8px #341c5455; text-align: center; }
.game-launch-menu > header { margin: -14px -34px 22px; padding: 18px 24px; border: 3px solid #341c54; border-radius: 16px; background: linear-gradient(#634077, #42245e); box-shadow: 0 5px #2d1741; color: #fffaf5; }
.game-launch-menu h1 { font-size: clamp(1.7rem, 3vw, 2.6rem); margin: 0; color: inherit; }
.game-launch-menu header p { margin: 6px 0 0; font-size: .8rem; color: #e5ccf0; }
.game-launch-menu > p { margin: 14px 0 22px; font-size: .95rem; line-height: 1.5; }
.game-launch-menu .divar-menu-button { display: block; width: 100%; }
.game-launch-menu .match-menu-exit { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 22px; border-radius: 24px; font: inherit; text-decoration: none; color: #42245e; background: #ece3f2; border: 2px solid #ae90c1; margin-top: 18px; cursor: pointer; }
.quiz-menu-symbols, .dica-menu-symbols { display: flex; justify-content: center; gap: 12px; margin: 22px auto; }
.quiz-menu-symbols span, .dica-menu-symbols span { display: grid; place-items: center; width: 78px; height: 82px; border: 3px solid #4a285c; border-radius: 18px; background: #e64a93; color: #fff; box-shadow: 0 5px #45205d; font-size: 1.3rem; font-weight: 950; transform: rotate(-7deg); }
.quiz-menu-symbols span:last-child { background: #337faf; transform: rotate(7deg); }
.dica-menu-symbols span { width: 62px; height: 66px; font-size: 1.8rem; transform: none; }
.dica-menu-symbols span:nth-child(2) { background: #b78418; }
.dica-menu-symbols span:nth-child(3) { background: #347faf; }
.dica-menu-symbols span:nth-child(4) { background: #29836a; }
#gameCoverPanel.game-cover-panel, #discIntroPanel.disc-intro-panel { display: grid; grid-template-columns: minmax(0, 1fr); width: 100%; margin: 0; align-content: safe center; height: 100dvh; min-height: 0; padding: 90px 24px 34px; overflow: auto; }
.fake-game-stage:is([data-game-state="cover"], [data-game-state="disc-intro"]) > .mobile-landscape-prompt { display: none !important; }
.play-page.is-game-focused .fake-game-stage[data-game-state="cover"]::before { background: url('/assets/cozinha-divar-menu.webp') center / cover; }
.play-page.is-game-focused .fake-game-stage[data-game-state="cover"]::after { background: #3d245326; }
.play-page.is-game-focused .fake-game-stage:is([data-game-state="playing"], [data-game-state="result"])::before { background: linear-gradient(#3d245344, #3d245366), url('/assets/cozinha-divar-menu.webp') center / cover; }
.play-page.is-game-focused .fake-game-stage:is([data-game-state="disc-playing"], [data-game-state="disc-result"])::before { background: linear-gradient(#45295722, #45295744), url('/assets/scene-bg-plants-accessories.webp') center / cover; }
#discIntroPanel { background: url('/assets/scene-bg-plants-accessories.webp') center / cover; }
#discIntroPanel::before, #discIntroPanel::after { display: none; }
/* Pausa com as mesmas três ações grandes do jogo de amostras. */
#gameMenu.game-menu-popover { position: fixed; inset: 0; z-index: 30; display: grid; place-items: center; width: auto; max-height: none; padding: 80px 20px 24px; border: 0; border-radius: 0; background: #241635b8; box-shadow: none; overflow: auto; }
#gameMenu[hidden] { display: none !important; }
.game-pause-card { width: min(610px, 100%); padding: 24px; border: 3px solid #43245d; border-radius: 22px; background: #fffaf5; color: #321b50; box-shadow: 0 8px #2b1739; }
.game-pause-card > h2 { margin: -38px -34px 24px; padding: 18px; border: 3px solid #341c54; border-radius: 14px; background: #4a2b64; color: #fffaf5; text-align: center; font-size: 1.5rem; }
.game-pause-actions { display: flex; gap: 12px; flex-wrap: wrap; }
#gameMenu .game-pause-actions button { flex: 1 1 120px; display: grid; justify-items: center; gap: 12px; padding: 22px 10px 14px; min-height: 120px; border: 2px solid #43235c; border-radius: 14px; background: #c62778; color: #fff; font: inherit; font-weight: 900; box-shadow: 0 5px #472554; }
#gameMenu .game-pause-actions button:nth-child(2) { background: #7650a3; }
#gameMenu .game-pause-actions button:nth-child(3) { background: #347db1; }
.game-pause-actions i { font-style: normal; font-size: 2rem; line-height: 1; }
#gameMenu .game-pause-footer { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 16px; margin-top: 22px; }
#gameMenu .game-pause-footer > * { width: auto; min-height: 44px; padding: 10px 4px; background: none; border: 0; color: #4a2b64; font: inherit; font-size: .9rem; text-align: center; }
#gameMenu .game-menu-progress { display: grid; justify-items: center; text-align: center; background: none; border: 0; padding: 4px 0 16px; color: #5b4270; }
#gameMenu .game-menu-progress strong { color: #43235c; }
/* Loading compartilha acabamento; continua indicando somente trabalho real. */
body .unity-loading-screen, .demo-overlay, .learning-loading-screen { background: linear-gradient(#fffaf555, #fffaf577), url('/assets/cozinha-divar-menu.webp') center / cover; color: #321b50; }
body .unity-loading-screen h1, body .unity-loading-screen #unityHostStatus { color: #321b50; }
body .unity-loading-brand { filter: none; opacity: 1; }
body.unity-page[class] .unity-back-link { color: #43235c; background: #fffaf5; border: 2px solid #43235c; border-radius: 12px; text-decoration: none; }
.demo-card { border: 3px solid #43235c; border-radius: 20px; background: #fffaf5f5; padding: 24px; box-shadow: 0 6px #43235c66; }
.wash-page[data-wash-screen="content"] { background: linear-gradient(#ffffff12, #ffffff44), repeating-linear-gradient(90deg, transparent 0 118px, #82adc536 118px 121px), repeating-linear-gradient(0deg, #dbf0f5 0 118px, #82adc536 118px 121px); }
.wash-content.wash-module-menu { display: grid; grid-template-columns: minmax(0, 1fr); padding: 42px 24px 30px; align-content: safe center; border: 0; background: none; box-shadow: none; }
.wash-launch-menu { max-width: 550px; }
.wash-menu-hands { width: 175px; height: 175px; background: url('/assets/lavagem-v3/hands-rest.webp') 0 0 / 200% 200% no-repeat; margin: 0 auto; filter: drop-shadow(0 7px 3px #50306b26); }
.wash-launch-menu .wash-content-actions { display: grid; margin: 0; }
.wash-launch-menu .wash-content-actions a { border-color: #9576ad; background: #ede4f2; }
.wash-launch-menu .match-menu-exit { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; }
.wash-menu-reference { text-align: left; margin: 18px 0 0; color: #624772; font-size: .85rem; line-height: 1.5; }
.wash-menu-reference summary { padding: 12px 4px; min-height: 44px; text-align: center; cursor: pointer; }
.wash-launch-menu [data-wash-access] { color: #852b64; }
@media (max-width: 600px) and (orientation: portrait) {
  #gameCoverPanel.game-cover-panel, #discIntroPanel.disc-intro-panel { padding: 82px 22px 30px; }
  .game-launch-menu { padding: 0 18px 24px; }
  .game-launch-menu > header { margin-inline: -24px; }
  .game-pause-card { padding: 20px; }
  .game-pause-card > h2 { margin-inline: -26px; }
  .game-pause-actions { gap: 10px; }
  #gameMenu .game-pause-actions button { flex-basis: 85px; min-height: 100px; font-size: .8rem; }
  .wash-content.wash-module-menu { padding: 34px 14px; }
}
@media (max-height: 500px) and (orientation: landscape) { #gameCoverPanel.game-cover-panel, #discIntroPanel.disc-intro-panel { padding: 68px 20px 20px; } .game-launch-menu { width: min(560px, 100%); padding-bottom: 16px; } .game-launch-menu > header { padding: 10px; margin-bottom: 12px; } .quiz-menu-symbols, .dica-menu-symbols { margin-block: 12px; } .game-launch-menu > p { margin-block: 12px; } .module-studio img { width: 70px; height: 70px; } .module-studio { gap: 4px; } .module-studio span, .module-studio button { margin-top: 8px; } }
