.cahiero-dinos-app{--blue:#1f5fbf;--lightBlue:#edf4ff;--yellow:#f2c94c;--text:#21405d;--soft:#6f88a4;--border:#d6e4fb; font-family: inherit; color:var(--text); background:#fff; border:1px solid #e7eef9; border-radius:28px; padding:26px; box-shadow:0 10px 32px rgba(28,81,146,.08);}
.cahiero-dinos-app *{box-sizing:border-box}
.cd-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:22px}
.cd-kicker{margin:0 0 6px;font-size:13px;color:var(--blue);font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.cd-header h2{margin:0;font-size:40px;line-height:1.05;color:var(--blue)}
.cd-subtitle{margin:8px 0 0;color:var(--soft);max-width:700px;font-size:18px}
.cd-badges{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.cd-badges span{background:var(--lightBlue);color:var(--blue);padding:8px 12px;border-radius:999px;font-size:13px;font-weight:700}
.cd-progress-wrap{margin-bottom:22px}
.cd-progress-top{display:flex;justify-content:space-between;font-size:14px;font-weight:700;color:var(--soft);margin-bottom:8px}
.cd-progress-bar{height:12px;background:#edf2fa;border-radius:999px;overflow:hidden}
.cd-progress-fill{height:100%;width:16.666%;background:linear-gradient(90deg,var(--yellow),#ffdb76);border-radius:999px;transition:width .3s ease}
.cd-main-card{display:grid;grid-template-columns:minmax(260px,420px) 1fr;gap:24px;align-items:stretch}
.cd-illustration-panel{background:linear-gradient(180deg,#f8fbff,#eef5ff);border:1px solid var(--border);border-radius:24px;padding:18px;display:flex;align-items:center;justify-content:center;min-height:350px}
.cd-illustration{width:100%;max-width:380px;aspect-ratio:1/0.8;background-size:contain;background-repeat:no-repeat;background-position:center}
.cd-game-panel{background:#fff;border:1px solid var(--border);border-radius:24px;padding:20px}
.cd-instructions{background:#fbfdff;border:1px dashed var(--border);border-radius:18px;padding:14px 16px;margin-bottom:18px}
.cd-step{margin:4px 0;color:var(--text);font-weight:600}
.cd-section{margin-bottom:20px}
.cd-section h3{margin:0 0 12px;font-size:22px;color:var(--blue)}
.cd-name-options,.cd-diet-options{display:flex;gap:12px;flex-wrap:wrap}
.cd-option,.cd-diet-item{border:none;background:var(--lightBlue);color:var(--blue);padding:14px 16px;border-radius:16px;font-weight:700;font-size:16px;cursor:pointer;transition:.2s transform,.2s box-shadow,.2s background;box-shadow:0 4px 10px rgba(31,95,191,.08)}
.cd-option:hover,.cd-diet-item:hover{transform:translateY(-1px)}
.cd-option.is-correct{background:#dbf5dd;color:#216b30}
.cd-option.is-wrong{background:#ffe2e2;color:#9b2b2b}
.cd-diet-item{min-width:140px;text-align:center}
.cd-diet-item[draggable=true]{cursor:grab}
.cd-dropzone{margin-top:14px;min-height:86px;border:2px dashed #bfd4f5;border-radius:18px;background:#f9fbff;display:flex;align-items:center;justify-content:center;text-align:center;padding:12px;color:var(--soft);font-weight:700}
.cd-dropzone.is-over{background:#eef5ff;border-color:var(--blue)}
.cd-dropzone.is-correct{background:#dbf5dd;border-color:#7fcf87;color:#216b30}
.cd-dropzone.is-wrong{background:#ffe9e9;border-color:#f0a8a8;color:#9b2b2b}
.cd-message{min-height:32px;font-size:17px;font-weight:700;margin:4px 0 10px}
.cd-fact{min-height:44px;background:#fff8df;border:1px solid #f4e4a9;border-radius:16px;padding:12px 14px;color:#7a6323;display:none}
.cd-fact.is-visible{display:block}
.cd-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.cd-btn{border:none;border-radius:14px;padding:12px 16px;font-size:15px;font-weight:700;cursor:pointer}
.cd-btn-primary{background:var(--blue);color:#fff}
.cd-btn-secondary{background:#eef4ff;color:var(--blue)}
.cd-final{padding:24px 8px;text-align:center}
.cd-final h3{font-size:30px;color:var(--blue);margin:0 0 10px}
.cd-final p{font-size:18px;color:var(--soft)}
@media (max-width: 860px){.cd-main-card{grid-template-columns:1fr}.cd-header{flex-direction:column}.cd-badges{justify-content:flex-start}.cd-header h2{font-size:34px}.cd-subtitle{font-size:16px}}

/* Version 1.1 - coloured dinosaurs, diet icons, progress and feedback */
.cahiero-dinos-app .cd-illustration{background:none;aspect-ratio:4/3;max-width:100%;display:flex;align-items:center;justify-content:center}
.cahiero-dinos-app .cd-dino-img{display:block;width:100%;height:auto;max-height:380px;object-fit:contain;border-radius:18px}
.cahiero-dinos-app .cd-diet-item{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:60px;white-space:nowrap}
.cahiero-dinos-app .cd-diet-icon{font-size:25px;line-height:1}
.cahiero-dinos-app .cd-diet-item:disabled:not(.is-correct):not(.is-wrong){opacity:.55;cursor:not-allowed}
.cahiero-dinos-app button.is-wrong,.cahiero-dinos-app button.is-wrong:disabled{background:#fce4e4!important;border:2px solid #e7a5a5!important;color:#a53a3a!important;box-shadow:none!important;transform:none!important;opacity:1!important}
.cahiero-dinos-app button.is-correct,.cahiero-dinos-app button.is-correct:disabled{background:#dff3e4!important;border:2px solid #75be8a!important;color:#22643b!important;opacity:1!important}
.cahiero-dinos-app .cd-option,.cahiero-dinos-app .cd-diet-item{border:2px solid transparent;transition:background-color .2s ease,color .2s ease,border-color .2s ease}
.cahiero-dinos-app .cd-message-wrong{color:#a53a3a}
.cahiero-dinos-app .cd-message-good{color:#24763f}
.cahiero-dinos-app .cd-success-count{display:block;margin-top:8px;text-align:right;color:var(--blue);font-size:13px;font-weight:700}
.cahiero-dinos-app .cd-progress-fill{background:#40b873}
.cahiero-dinos-app .cd-progress-wrap{padding:12px 16px;border-radius:16px;background:#f0f6ff;border:1px solid #dce8fb}
.cahiero-dinos-app .cd-progress-bar{height:14px;background:#dce8fa}
@media(max-width:600px){.cahiero-dinos-app{padding:15px}.cahiero-dinos-app .cd-name-options,.cahiero-dinos-app .cd-diet-options{display:grid;grid-template-columns:1fr}.cahiero-dinos-app .cd-diet-item{width:100%}}

/* Cahiero Dino Quiz v1.2 - bigger visual identity and French audio controls */
.cahiero-dinos-app [hidden]{display:none!important}
.cahiero-dinos-app .cd-illustration-panel{padding:8px;min-height:320px}
.cahiero-dinos-app .cd-illustration{aspect-ratio: 5 / 4;max-width:100%}
.cahiero-dinos-app .cd-dino-img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:center}
.cahiero-dinos-app .cd-name-options{display:flex;flex-wrap:wrap;gap:10px}
.cahiero-dinos-app .cd-name-group{display:inline-flex;align-items:stretch;max-width:100%;border:1px solid #d6e4fb;background:#edf4ff;border-radius:15px;overflow:hidden}
.cahiero-dinos-app .cd-name-group .cd-option{box-shadow:none;border-radius:0;background:transparent;max-width:100%;text-transform:uppercase;line-height:1.3}
.cahiero-dinos-app .cd-speak-btn{border:0;border-right:1px solid #c9daf6;background:#e1edff;padding:10px 13px;font-size:19px;cursor:pointer;min-width:48px;color:#1f5fbf}
.cahiero-dinos-app .cd-speak-btn:hover,.cahiero-dinos-app .cd-speak-btn:focus-visible{background:#cde0ff;outline:2px solid #1f5fbf;outline-offset:-2px}
.cahiero-dinos-app .cd-name-group .cd-option.is-correct{border-radius:0}
.cahiero-dinos-app .cd-voice-status{font-size:14px;min-height:20px;color:#1f5fbf;margin-top:4px;font-weight:600}
.cahiero-dinos-app .cd-diet-item:disabled:not(.is-correct):not(.is-wrong){opacity:.65}
@media(max-width:600px){.cahiero-dinos-app .cd-name-options{display:flex;flex-direction:column}.cahiero-dinos-app .cd-name-group{width:100%}.cahiero-dinos-app .cd-name-group .cd-option{flex:1;text-align:left}.cahiero-dinos-app .cd-illustration-panel{min-height:240px}}

/* Full-colour dinosaur species illustrations */
.cd-illustration-panel{min-height:390px;background:#fffdf7;padding:10px;}
.cd-illustration{width:100%;min-height:360px;display:flex;align-items:center;justify-content:center;}
.cd-dino-img{display:block;width:100%;max-width:560px;height:auto;max-height:440px;object-fit:contain;border-radius:18px;}
@media(max-width:860px){.cd-illustration-panel{min-height:280px}.cd-illustration{min-height:250px}.cd-dino-img{max-height:360px}}
