@import url('/style-button.css');
@import url('/native-speech-bubbles.css');
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-answer-submit:disabled{--action-face:#e3dfe6;--action-edge:#a599b7;--action-ink:#8b8392;opacity:1}
html[data-ui-theme=dark]:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-answer-submit:disabled{--action-face:#292c30;--action-edge:#42474d;--action-ink:#777d84}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-progress .daily-star.grey{opacity:.3!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-progress .daily-star:not(.grey){opacity:1!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=error] #review-progress{display:none!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout]:not([open]){display:none!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] :is(.daily-caption,.daily-outcome,#review-intro>p,#review-context,#review-feedback,#review-correction,#review-instruction,#review-answer,.daily-reward-meanings,.daily-retry-status){font-family:PixelUI,'Fusion Pixel','Yu Gothic',sans-serif!important}
/* Daily challenge. Stable tracks keep speech and changing answers out of layout sizing.
   Four-ID specificity only bridges the existing remaster cascade. */
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state]{
 --daily-bg:#faf3ff;--daily-panel:#fff9ee;--daily-line:#a599b7;--daily-ink:#352844;--daily-muted:#74677f;--daily-accent:#9475bf;--daily-radius:14px;--daily-keys:0px;
 box-sizing:border-box;position:fixed;inset:0;margin:auto;width:min(560px,100vw);height:min(820px,100dvh - 32px);max-height:100dvh;max-width:100vw;
 padding:24px 32px;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;overflow:hidden;
 border:3px solid var(--daily-line)!important;border-image:none!important;border-radius:20px;
 background:var(--daily-bg)!important;color:var(--daily-ink)!important;box-shadow:0 16px 64px #21182c26;
 font:400 16px/1.45 system-ui,sans-serif;
}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout]::backdrop{background:#22182f99;backdrop-filter:blur(4px)}
html[data-ui-theme=dark]:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout]{--daily-bg:#1b1d1f;--daily-panel:#292c30;--daily-line:#42474d;--daily-ink:#e8e9e7;--daily-muted:#b5afbf;--daily-accent:#be91ff}
html:not([data-ui-frames=rounded]):not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout]{--daily-radius:8px;border-radius:8px}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state]>*{min-width:0;min-height:0;grid-column:1;box-sizing:border-box}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] [hidden]{display:none!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .home-page-banner{display:none!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .dialog-top{grid-row:1;position:static;display:flex!important;align-items:center;justify-content:flex-start;min-height:0;height:auto;margin:0;padding:0;background:none!important;border:0;translate:none;pointer-events:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-heading{font:500 24px/1.2 PixelUI,sans-serif!important;letter-spacing:.5px;text-transform:uppercase!important;color:var(--daily-ink)!important;-webkit-text-fill-color:var(--daily-ink)!important;-webkit-text-stroke:0!important;text-shadow:none!important;margin:0}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] :is(.daily-caption,.daily-outcome,#review-context,#review-feedback,#review-correction,#review-instruction){margin:0;padding:0;border:0;outline:0;background:none;font:400 16px/1.45 system-ui,sans-serif;color:var(--daily-ink)!important;-webkit-text-stroke:0!important;text-shadow:none!important;text-align:center}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-caption{font-size:13px;color:var(--daily-muted)!important;justify-self:end;align-self:center;grid-row:1}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-outcome{font-weight:650!important;font-size:28px!important;letter-spacing:-.5px}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-progress{display:flex;justify-content:center;align-items:center;gap:12px;align-self:center;justify-self:center;margin:0;padding:0;translate:none;min-height:0}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-progress .daily-star{width:80px;height:80px;image-rendering:pixelated;object-fit:contain}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] button.style-button{display:flex;align-items:center;justify-content:center;gap:10px;box-sizing:border-box;width:100%;min-height:56px;height:56px;padding:10px 18px;margin:0!important;border:3px solid var(--action-edge)!important;border-image:none!important;border-radius:var(--daily-radius);background:var(--action-face)!important;color:var(--action-ink)!important;box-shadow:0 3px 0 var(--action-edge)!important;font:400 26px/1.1 UniversityActions,sans-serif;text-transform:uppercase;-webkit-text-stroke:0!important;text-shadow:none!important;translate:none;transform:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] button.style-button :is(span,svg){color:inherit!important;-webkit-text-fill-color:inherit!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] button.style-button:disabled{--action-face:var(--daily-panel);--action-edge:var(--daily-line);--action-ink:var(--daily-muted);opacity:.65}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] button.style-button:is(:active,.is-held):not(:disabled){transform:translateY(2px);box-shadow:0 1px var(--action-edge)!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] :is(button,input):focus-visible{outline:3px solid var(--daily-accent)!important;outline-offset:3px}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-later{--action-face:var(--daily-bg);--action-ink:var(--daily-ink);--action-edge:var(--daily-line);font-family:UniversityActions,sans-serif!important}
/* A single centered introduction, with no competing frames. */
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro]{grid-template-rows:36px minmax(0,1fr)}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro]>:is(.daily-caption,.daily-outcome,#review-progress,#review-context,.daily-question-stage,#review-feedback,.daily-keyboard-slot,.review-companion){display:none!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-intro{grid-row:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;margin:0;padding:16px 0 0;overflow:auto}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-intro-emblem{width:224px;aspect-ratio:1;flex:none;display:grid;place-items:center;font:500 112px/1 'Yu Gothic',sans-serif;color:var(--daily-ink)}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-intro-stars{display:flex;gap:12px;margin:0}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-intro-stars img{width:80px;height:80px;image-rendering:pixelated}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-intro>p{max-width:350px;font:400 20px/1.4 PixelUI,sans-serif;text-align:center;margin:0;padding:0;border:0;background:none;color:var(--daily-muted)!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-intro-actions{display:grid;gap:10px;width:100%;margin-top:12px}
/* Question: header / stars / task / card / speech / input / keyboard / action. */
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review]{--daily-keys:216px;padding-block:16px;grid-template-rows:32px 64px 24px minmax(80px,1fr) 0 48px var(--daily-keys) 56px;gap:8px}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] #review-progress .daily-star{width:64px;height:64px}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] .daily-outcome{display:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] #review-progress{grid-row:2}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] #review-instruction{grid-row:3;align-self:center;font-size:20px;font-weight:600}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] .daily-question-stage{grid-row:4}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] #review-answer-form,html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .review-answer-row{display:contents}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-answer-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-answer{grid-row:6;grid-column:1;box-sizing:border-box;width:100%;height:52px;min-width:0;max-width:none;margin:0;padding:10px 16px;border:2px solid var(--daily-line)!important;border-image:none!important;border-radius:var(--daily-radius);background:var(--daily-panel)!important;color:var(--daily-ink)!important;box-shadow:none;font:400 20px/1.2 system-ui,'Yu Gothic',sans-serif}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-answer-submit{grid-row:8;grid-column:1}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] .review-companion{grid-row:7;position:relative;inset:auto;translate:none;transform:none;align-self:center;justify-self:stretch;width:100%;height:52px;padding:0;margin:0;overflow:hidden;display:flex;align-items:center;justify-content:center;pointer-events:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-message{width:100%;max-height:52px;overflow:auto;margin:0;padding:4px 8px;border:0!important;border-image:none!important;border-radius:0;background:none!important;box-shadow:none!important;font:400 14px/1.45 system-ui,sans-serif;color:var(--daily-muted)!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .review-companion canvas{display:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] .daily-keyboard-slot{grid-row:7;align-self:end;display:flex;align-items:end;width:100%;height:var(--daily-keys);min-height:0!important;margin:0;pointer-events:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-keyboard-slot>.pixel-keyboard{pointer-events:auto}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review]:not([data-answered]) :is(#review-feedback,#review-correction){display:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review][data-answered=true]{--daily-keys:216px}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review][data-answered=true] :is(.daily-keyboard-slot,#review-instruction){display:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review][data-answered=true] #review-feedback{grid-row:3;align-self:center;font-size:20px;font-weight:650;width:100%;padding:0;margin:0;border:0!important;border-image:none!important;outline:0!important;background:none!important;box-shadow:none!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-feedback.good{color:#28765a!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-feedback.bad{color:#a13f58!important}
html[data-ui-theme=dark]:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-feedback.good{color:#59de98!important}
html[data-ui-theme=dark]:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-feedback.bad{color:#ff7383!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] #review-correction{grid-row:6;align-self:center;max-height:52px;overflow:auto;font:400 18px/1.4 system-ui,'Yu Gothic',sans-serif}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] #review-next{grid-row:8;align-self:end}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-feedback:empty{display:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-question-stage{display:contents}
/* Reward and result retain the native two-tap card behavior. */
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward]{grid-template-rows:32px 80px 32px minmax(0,1fr)}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward] #review-progress{grid-row:2}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward] .daily-outcome{display:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward] #review-context{grid-row:3;align-self:center;font-size:17px}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward] .daily-reveal{grid-row:4;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;margin:0;padding:0;min-height:0}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward] .review-companion{display:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-dex-link{font:24px/1 UniversityActions,sans-serif;text-transform:uppercase;text-decoration:none;text-align:center;padding:14px;margin:0;border-radius:var(--daily-radius)}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=loading]{grid-template-rows:36px 1fr}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=loading]::after{content:'Préparation du défi…';align-self:center;justify-self:center}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=loading]>:not(.dialog-top){display:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=error]{grid-template-rows:36px 1fr 56px}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=error] #review-feedback{grid-row:2;align-self:center}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=error] #review-next{grid-row:3}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=error]>:is(.daily-caption,.daily-outcome,.daily-keyboard-slot){display:none}
/* Result: score, explanation, available retry options, secondary close. */
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-feedback:empty{display:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-retry-actions{grid-row:7/9;align-self:start;justify-self:stretch;display:grid;gap:12px;width:100%;text-align:center}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-retry-actions button{width:100%;font-size:24px}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-retry-actions svg{width:26px;height:24px;flex:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] [data-daily-retry=star]{--action-face:#e6d7ff;--action-edge:#a18abf;--action-ink:#513777}
html:not(#daily-a#daily-b#daily-c#daily-d)[data-ui-theme=dark] body #review-dialog[data-daily-layout] [data-daily-retry=star]{--action-face:#be91ff;--action-edge:#42474d;--action-ink:#1b1d1f}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-retry-status{font:14px/1.4 PixelUI,sans-serif;color:var(--daily-muted)!important;min-height:20px}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-retry-ad{position:absolute;inset:0;z-index:30;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:24px;background:var(--daily-bg);color:var(--daily-ink);font:26px/1.3 PixelUI,sans-serif;text-align:center}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-retry-ad p{font-size:17px;color:var(--daily-muted)}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-retry-ad progress{width:min(260px,100%);height:10px;accent-color:#59de98}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout]{
 --daily-native-front:url('/assets/kanjimon-rectos-communs-2026-10-17/recto-clair-carre.png');
 --daily-reward-size:280px;
}
html:not(#daily-a#daily-b#daily-c#daily-d)[data-ui-theme=dark] body #review-dialog[data-daily-layout]{
 --daily-native-front:url('/assets/kanjimon-rectos-communs-2026-10-17/recto-sombre-carre.png');
}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-question-stage{display:contents}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] .daily-question-stage{
 display:flex;align-items:center;justify-content:center;grid-row:4;grid-column:1;container-type:size;
}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] #review-prompt{
 flex:none;align-self:center;box-sizing:border-box;translate:none!important;transform:none!important;
 width:min(100cqw,100cqh,280px);height:min(100cqw,100cqh,280px);min-height:0;
 border:0!important;outline:0!important;border-image:none!important;border-radius:0!important;box-shadow:none!important;
 background:var(--daily-native-front) center/100% 100% no-repeat!important;
 padding:12%;overflow:visible;image-rendering:pixelated;container-type:size;
 font-size:min(24cqh,24cqw,56px);color:#352844!important;
}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] #review-prompt[lang=ja]{padding:0;font:500 min(50cqh,50cqw,140px)/1 'Yu Gothic',Meiryo,sans-serif}
html:not(#daily-a#daily-b#daily-c#daily-d)[data-ui-theme=dark] body #review-dialog[data-daily-layout][data-state=review] #review-prompt{color:#fffdf5!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-intro-emblem{
 border:0!important;border-image:none!important;outline:none!important;box-shadow:none!important;border-radius:0!important;
 background:var(--daily-native-front) center/100% 100% no-repeat!important;image-rendering:pixelated;
}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward] .daily-mystery-card{
 position:relative;display:grid;place-items:center;box-sizing:border-box;
 width:var(--daily-reward-size);height:var(--daily-reward-size);padding:0;
 border:0!important;border-image:none!important;outline:0!important;border-radius:0!important;box-shadow:none!important;
 --daily-card-face:var(--daily-native-front);
 background:url('/assets/kanjimon-ruban-couleurs-2026-10-17/violet-dos-carre.png') center/100% 100% no-repeat!important;
 color:#352844!important;image-rendering:pixelated;font:500 calc(var(--daily-reward-size)*.5)/1 'Yu Gothic',Meiryo,sans-serif;
}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward] .daily-mystery-card[data-daily-back=gold]{background-image:url('/assets/kanjimon-ruban-couleurs-2026-10-17/or-dos-carre.png')!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward] .daily-mystery-card.is-revealed{background-image:var(--daily-native-front)!important}
html:not(#daily-a#daily-b#daily-c#daily-d)[data-ui-theme=dark] body #review-dialog[data-daily-layout][data-state=reward] .daily-mystery-card.is-revealed{color:#fffdf5!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-mystery-card::before,
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-mystery-card::after{content:none!important;display:none!important}
/* Both native faces are decoded before insertion. Theme changes select the
   already loaded image; the frame and creature share one reveal animation. */
html body #review-dialog .daily-mystery-card>.daily-reward-frame{position:absolute;inset:0;z-index:0;pointer-events:none}
html body #review-dialog .daily-reward-frame>img{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;image-rendering:pixelated;pointer-events:none}
html body #review-dialog .daily-reward-frame>[data-frame-theme=dark]{display:none}
html[data-ui-theme=dark] body #review-dialog .daily-reward-frame>[data-frame-theme=light]{display:none}
html[data-ui-theme=dark] body #review-dialog .daily-reward-frame>[data-frame-theme=dark]{display:block}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-mystery-card.is-revealed canvas{
 position:absolute;left:18%;top:18%;width:64%;height:64%;max-width:none;pointer-events:none;image-rendering:pixelated;
}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-creature-name{
 position:absolute;inset:auto auto 8% 50%;transform:translateX(-50%);width:max-content;min-height:calc(var(--daily-reward-size)/10);
 font:calc(var(--daily-reward-size)*.085)/1 UniversityActions,sans-serif;color:var(--daily-ink)!important;white-space:nowrap;
}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-creature-name span{color:inherit!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-creature-name .daily-creature-element{
 position:absolute;right:calc(100% + 6px);top:50%;transform:translateY(-50%);width:calc(var(--daily-reward-size)/10);height:calc(var(--daily-reward-size)/10);
}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-creature-family{display:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-reward-glyph{position:absolute;inset:0;display:grid;place-items:center;color:inherit!important;font:inherit;pointer-events:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-reward-meanings{position:absolute;inset:auto 12% 9%;max-height:15%;margin:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font:calc(var(--daily-reward-size)*.065)/1.1 UniversityActions,sans-serif;color:var(--daily-ink)!important;pointer-events:none}

/* Native cards, calm translations; no decorative fonts in learning content. */
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] .daily-question-stage{grid-row:4}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-reward-meanings{font:400 calc(var(--daily-reward-size)*.065)/1.2 system-ui,sans-serif}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-creature-name{font-family:UniversityActions,sans-serif}
@media(max-width:600px){
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state]{width:100vw;height:100dvh;padding:16px 20px;border:0!important;border-radius:0;box-shadow:none}
}
@media(max-height:740px) and (orientation:portrait){
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state]{padding:12px 16px;gap:8px;--daily-reward-size:224px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review]{--daily-keys:200px;grid-template-rows:30px 48px 22px minmax(50px,1fr) 0 44px var(--daily-keys) 44px;gap:4px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review][data-answered=true]{--daily-keys:200px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review].has-pixel-keyboard .review-companion{visibility:hidden}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] .review-companion{height:32px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-message{max-height:32px;font-size:13px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-heading{font-size:22px!important}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-caption{font-size:11px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-progress .daily-star{width:56px;height:56px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] #review-progress .daily-star{width:48px;height:48px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-answer{height:44px;font-size:18px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] button.style-button{min-height:44px;height:44px;font-size:24px;padding:6px 12px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-intro-emblem{width:168px;font-size:84px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-intro{gap:14px;padding:0}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-intro-stars img{width:64px;height:64px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-intro>p{font-size:18px;line-height:1.4}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-retry-actions{gap:10px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward]{grid-template-rows:30px 64px 44px minmax(0,1fr)}
}
@media(orientation:landscape) and (max-height:600px){
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state]{width:100vw;height:100dvh;padding:12px 24px;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:8px 32px;border:0!important;border-radius:0;--daily-reward-size:224px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review],html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review][data-answered=true]{grid-template-rows:32px 48px minmax(0,1fr) 44px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .dialog-top{grid-column:1;grid-row:1}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] .daily-caption{grid-row:1;grid-column:2}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] #review-progress{grid-row:2;grid-column:1}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-progress .daily-star{width:48px;height:48px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] .daily-question-stage{grid-column:1;grid-row:3/5}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] #review-instruction{grid-column:1;grid-row:1;display:none}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] #review-answer{grid-column:2;grid-row:2;height:44px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] .daily-keyboard-slot{grid-column:2;grid-row:3;height:100%}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] :is(#review-answer-submit,#review-next){grid-column:2;grid-row:4;height:44px;min-height:44px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] .review-companion{display:none}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review][data-answered=true] #review-feedback{grid-column:2;grid-row:2}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review][data-answered=true] #review-correction{grid-column:2;grid-row:3;max-height:100%}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro]{grid-template-columns:1fr;grid-template-rows:32px 1fr}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-intro{display:grid;grid-template-columns:1fr 1.2fr;grid-template-rows:1fr auto;gap:12px 32px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-intro-emblem{grid-column:1;grid-row:1;justify-self:center;width:168px;font-size:84px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-intro-stars{grid-column:1;grid-row:2;justify-self:center}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-intro-stars img{width:56px;height:56px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-intro>p{grid-column:2;grid-row:1}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-intro-actions{grid-column:2;grid-row:2;margin:0}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward]{grid-template-rows:32px 64px minmax(0,1fr)}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward] .daily-caption{grid-column:1;grid-row:3;align-self:start;justify-self:center}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward] #review-context{grid-column:1;grid-row:3;align-self:center}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward] .daily-reveal{grid-column:2;grid-row:1/4}
}

/* The keyboard occupies a permanent track; showing it only changes visibility. */
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review].has-pixel-keyboard:not([data-answered]) .review-companion{visibility:hidden}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-later{font-family:UniversityActions,sans-serif!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] .review-companion{height:min(120px,var(--daily-keys))}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-message{max-height:100%}

/* Use the authored Bubble Clean and the common character typography. Only
   the available speech area belongs to this screen; no speech tail here. */
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-message.native-speech-bubble::before{content:''!important;display:block!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] .review-companion{height:min(180px,var(--daily-keys))}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-message.native-speech-bubble{
 position:relative;box-sizing:border-box;width:100%;max-width:440px;max-height:100%;
 margin:0;padding:10px 14px 18px!important;overflow:visible;isolation:isolate;
 font:600 24px/1.2 'Fusion Pixel',Pixel,monospace!important;font-synthesis:weight;
 color:#191722!important;text-align:center;text-shadow:none!important;-webkit-text-stroke:0!important;
 border:0!important;border-image:none!important;border-radius:0!important;background:none!important;box-shadow:none!important;
 pointer-events:auto;
}
html[data-ui-theme=dark]:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-message.native-speech-bubble{color:#e6e6e6!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-message.native-speech-bubble>span[aria-hidden=true]{
 display:block;max-height:calc(min(180px,var(--daily-keys)) - 28px);overflow:auto;overscroll-behavior:contain;
}

/* A card-only anchor: headings, badges and meanings cannot move its center. */
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward] .daily-caption{display:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward] .daily-reveal{position:absolute;inset:0;grid-area:auto;display:flex;align-items:center;justify-content:center;align-self:stretch;justify-self:stretch;width:auto;height:auto;max-height:none;margin:0!important;padding:0;pointer-events:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward] .daily-mystery-card{flex:none;margin:0;pointer-events:auto}
/* Exact large-card Nouveau skin from SUCCÈS / succes-gifts.css. */
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-mystery-card .dex-new-badge{position:absolute;z-index:2;top:-16px;bottom:auto;right:8%;padding:4px 8px;font:26px/1 PixelUI,sans-serif;color:#38654d!important;background:#d6efdb!important;border:2px solid #86ac92;border-image:none!important;border-radius:0;white-space:nowrap;pointer-events:none;text-transform:none;text-shadow:none!important;-webkit-text-stroke:0!important;box-shadow:none}
html[data-ui-theme=dark]:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-mystery-card .dex-new-badge{padding:6px 12px;border:2px solid #625a70;border-radius:12px;background:#303139!important;color:#d5b8ff!important}
@media(orientation:landscape) and (max-height:600px){
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward] .dialog-top{grid-column:1/-1;justify-content:center}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward] .daily-caption{display:none}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward] #review-context{position:absolute;top:48px;left:16px;right:16px;font-size:16px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward] #review-progress{position:absolute;bottom:12px;left:50%;transform:translateX(-50%)}
}

/* Completion: native typography and a single centered countdown. */
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] #review-prompt[data-countdown-ready=true]{white-space:normal;font-size:28px!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] {display:flex;flex-direction:column;gap:12px}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] .dialog-top{order:0;flex:none;min-height:32px}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] #review-progress{order:1;flex:none;margin-top:auto!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] #review-progress .daily-star{width:80px;height:80px}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] .daily-outcome{order:2;font:400 32px/1.2 PixelUI,sans-serif!important;letter-spacing:0}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] .daily-caption{order:3;align-self:center;font:400 20px/1.3 PixelUI,sans-serif!important;color:var(--daily-muted)!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] #review-feedback{order:4;flex:none;padding:0;border:0!important;border-image:none!important;border-radius:0;background:none!important;box-shadow:none!important;font:400 20px/1.3 PixelUI,sans-serif!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] #review-context{order:5;margin-top:28px;font:400 24px/1.2 PixelUI,sans-serif!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] #review-prompt{order:6;flex:none;align-self:center;display:block;width:100%;height:auto;min-height:0;max-width:none;padding:0;margin:0 0 auto!important;border:0!important;background:none!important;box-shadow:none!important;translate:none;transform:none;font:400 clamp(40px,11vw,64px)/1.15 PixelUI,sans-serif!important;letter-spacing:0;text-align:center;color:var(--daily-ink)!important;-webkit-text-stroke:0!important;text-shadow:none!important;white-space:nowrap}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] .daily-retry-actions{order:7;flex:none;align-self:stretch;margin:12px 0 auto}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] .daily-retry-status{font:400 18px/1.3 PixelUI,sans-serif!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] .daily-dex-link{order:8;flex:none;align-self:stretch;background:none!important;border:0!important;box-shadow:none!important;font:400 26px/1.1 UniversityActions,sans-serif!important;color:var(--daily-ink)!important;text-decoration:underline;text-underline-offset:5px}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] #review-next{order:9;flex:none;align-self:stretch;--action-face:var(--daily-bg);--action-ink:var(--daily-ink);--action-edge:var(--daily-line)}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] button.style-button{font:400 26px/1.1 UniversityActions,sans-serif!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] :is(.review-companion,#review-instruction,#review-correction){display:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete]:has(.daily-retry-actions:not([hidden])) :is(#review-context,#review-prompt){display:none}
@media(max-height:740px) and (orientation:portrait){
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] {gap:8px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] #review-progress .daily-star{width:64px;height:64px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] .daily-outcome{font-size:28px!important}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] #review-context{margin-top:16px;font-size:20px!important}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] #review-feedback{font-size:18px!important}
}
@media(orientation:landscape) and (max-height:600px){
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);grid-template-rows:32px 1fr 80px 38px 28px 1fr 44px;gap:8px 32px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] .dialog-top{grid-column:1/-1;grid-row:1}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] #review-progress{grid-column:1;grid-row:3;margin:0!important}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] .daily-outcome{grid-column:1;grid-row:4}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] .daily-caption{grid-column:1;grid-row:5}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] #review-feedback{grid-column:2;grid-row:2/4;align-self:end}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] #review-context{grid-column:2;grid-row:4;margin:0;font-size:20px!important;align-self:end}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] .daily-question-stage #review-prompt{grid-column:2;grid-row:5/7;align-self:start;margin:0!important;font-size:48px!important}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] .daily-retry-actions{grid-column:2;grid-row:4/7;align-self:center;margin:0}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] .daily-dex-link{grid-column:1;grid-row:7;padding:8px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] #review-next{grid-column:2;grid-row:7;height:44px;min-height:44px}
}

/* Shared anchors from welcome through completion. The intro card uses the
   exact exercise grid and size container, so starting only changes its face. */
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state]{padding-block:16px;gap:8px;--daily-keys:216px;--daily-tracks:32px 64px 24px minmax(80px,1fr) 0 48px var(--daily-keys) 56px}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .dialog-top{justify-content:center;grid-column:1/-1;min-height:32px}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] #review-heading{text-align:center}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro],html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review]{grid-template-rows:var(--daily-tracks)}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro] #review-intro{display:contents}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro] #review-intro>p{display:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro] .daily-intro-card-stage{display:flex;align-items:center;justify-content:center;grid-row:4;grid-column:1;container-type:size;min-height:0;min-width:0}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro] .daily-intro-emblem{box-sizing:border-box;width:min(100cqw,100cqh,280px);height:min(100cqw,100cqh,280px);margin:0;padding:0;background:url('/assets/kanjimon-ruban-couleurs-2026-10-17/violet-dos-carre.png') center/100% 100% no-repeat!important}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro] .daily-intro-actions{grid-row:7/9;grid-column:1;align-self:end;margin:0;gap:12px}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state] #review-progress,html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro] .daily-intro-stars{grid-column:1/-1;grid-row:2;position:static;inset:auto;transform:none;translate:none;margin:0!important;align-self:center;justify-self:center;gap:12px;height:64px}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state] #review-progress .daily-star,html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro] .daily-intro-stars img{width:64px;height:64px}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] .daily-outcome{margin-top:auto}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward]{grid-template-rows:32px 64px 32px minmax(0,1fr)}
@media(max-height:740px) and (orientation:portrait){
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state]{padding-block:12px;gap:4px;--daily-keys:200px;--daily-tracks:30px 48px 22px minmax(50px,1fr) 0 44px var(--daily-keys) 44px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state] .dialog-top{min-height:30px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state] #review-progress,html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro] .daily-intro-stars{height:48px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state] #review-progress .daily-star,html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro] .daily-intro-stars img{width:48px;height:48px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward]{grid-template-rows:30px 48px 32px minmax(0,1fr)}
}
@media(orientation:landscape) and (max-height:600px){
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state]{padding-block:12px;--daily-tracks:32px 48px minmax(0,1fr) 44px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro]{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro] .daily-intro-card-stage{grid-row:3/5;grid-column:1}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro] .daily-intro-actions{grid-column:2;grid-row:3/5;align-self:center}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state] #review-progress,html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro] .daily-intro-stars{height:48px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state] #review-progress .daily-star,html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro] .daily-intro-stars img{width:48px;height:48px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete]{grid-template-rows:32px 48px 1fr 38px 28px 1fr 44px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] .daily-outcome{margin:0}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward]{grid-template-rows:32px 48px minmax(0,1fr)}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward]{--daily-reward-size:168px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=reward] #review-context{top:auto;bottom:12px}
}

/* Keep the enlarged star band's space in completion's flow as well. */
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete]::before{content:'';display:block;position:static;order:1;flex:0 0 var(--daily-result-clearance,128px);width:100%;height:var(--daily-result-clearance,128px);background:none;border:0;box-shadow:none;pointer-events:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete] .daily-outcome{flex:none;margin:0!important}
@media(orientation:landscape) and (max-height:600px){
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=complete]::before{display:none}
}
/* Geometry-only probe: mirrors the fixed question tracks without taking space. */
/* The tutorial keeps its card at the viewport centre, while its stars use the
   shared measured band. Centre the announcement in the actual gap between
   those two anchors rather than in the old reward grid's third row. */
@media (orientation:portrait), (min-height:601px){
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-reward-flow=legacy][data-state=reward]:not([data-revealed=true]) #review-context{
  position:absolute;grid-area:auto;left:20px;right:20px;bottom:auto;margin:0;
  top:calc((var(--daily-star-top,56px) + var(--daily-star-size,128px) + 50% - var(--daily-reward-size,280px)/2)/2);
  transform:translateY(-50%);
 }
}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] #review-prompt,html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro] .daily-intro-emblem{width:min(100cqw,calc(100cqh - 12px),280px);height:min(100cqw,calc(100cqh - 12px),280px)}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-anchor-probe{position:absolute;inset:0;grid-area:auto;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:var(--daily-tracks);gap:8px;padding:inherit;box-sizing:border-box;visibility:hidden;pointer-events:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-anchor-probe>div{grid-row:4;grid-column:1;display:flex;align-items:center;justify-content:center;container-type:size;min-width:0;min-height:0}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-anchor-probe>div>div{width:min(100cqw,calc(100cqh - 12px),280px);height:min(100cqw,calc(100cqh - 12px),280px)}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state] #review-progress,html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro] .daily-intro-stars{position:absolute;grid-area:auto;top:var(--daily-star-top,56px);left:var(--daily-star-left,50%);right:auto;bottom:auto;transform:translateX(-50%);height:var(--daily-star-size,128px);width:max-content;gap:0;pointer-events:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state] #review-progress .daily-star,html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro] .daily-intro-stars img{width:var(--daily-star-size,128px);height:var(--daily-star-size,128px);flex:none}
html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review]:not([data-answered]) #review-instruction{position:absolute;grid-area:auto;left:20px;right:20px;top:var(--daily-instruction-top);display:block;font:400 24px/20px UniversityActions,sans-serif!important;text-transform:uppercase;margin:0;padding:0;pointer-events:none}
@media(max-height:740px) and (orientation:portrait){
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-anchor-probe{gap:4px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] #review-prompt,html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=intro] .daily-intro-emblem,html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-anchor-probe>div>div{width:min(100cqw,calc(100cqh - 28px),280px);height:min(100cqw,calc(100cqh - 28px),280px)}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review]:not([data-answered]) #review-instruction{font-size:16px}
}
@media(orientation:landscape) and (max-height:600px){
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-anchor-probe{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:8px 32px}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-anchor-probe>div{grid-row:3/5}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review]:not([data-answered]) #review-instruction{left:calc(45.4545% + 12px);right:24px;font-size:16px}
}

/* Same keyboard height and side gutters as the University. The freed space
   belongs to the card and the help bubble, not extra gaps between keys. */
@media (any-pointer:coarse) and (orientation:portrait) and (max-width:600px){
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state]{
  --daily-keys:var(--learning-keyboard-height,clamp(182px,29dvh,310px));
  --daily-tracks:28px 40px 20px minmax(52px,1fr) 0 44px var(--daily-keys) 48px;
  padding: max(10px,env(safe-area-inset-top,0px)) 4px max(10px,env(safe-area-inset-bottom,0px));
  gap:4px;
 }
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review][data-answered=true]{--daily-keys:var(--learning-keyboard-height,clamp(182px,29dvh,310px))}
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout] .daily-anchor-probe{gap:4px}
}
/* Very short portrait screens may scroll the exercise instead of crushing keys. */
@media(orientation:landscape) and (max-height:600px){
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state=review] .daily-keyboard-slot{
  height:var(--learning-keyboard-height,clamp(164px,51dvh,218px));align-self:end;
 }
}
@media (any-pointer:coarse) and (orientation:portrait) and (max-width:600px) and (max-height:640px){
 html:not(#daily-a#daily-b#daily-c#daily-d) body #review-dialog[data-daily-layout][data-state]{overflow-y:auto;overscroll-behavior:contain}
}
