.angles-figure{width:min(460px,100%);margin:0 auto 18px;padding:8px;border:1px solid #dedcff;border-radius:16px;background:#fbfbff}
.angles-figure .angle-figure{touch-action:manipulation}
.angles-caption{margin:4px 0 2px;text-align:center;font:650 16px Inter,sans-serif;color:#12208c}
.angles-hint{margin-bottom:18px}
.angles-steps{margin-bottom:6px}
.angles-step{margin:0 0 10px;font:750 16px Inter,sans-serif;color:#12208c}
.angles-steps .clock-choices{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}
.angles-exercise .clock-choice{font-size:17px;line-height:1.3;text-align:left}
.angles-measure-input{width:120px}
.angles-measure-input.is-correct{border-color:#16794a;background:#e4f6ec}
.angles-measure-input.is-wrong{border-color:#b3261e;background:#fdeceb}
.angles-proof{display:flex;flex-direction:column;gap:14px;margin-bottom:20px}
.angles-slots{display:flex;flex-direction:column;gap:10px}
.angles-slot{display:grid;grid-template-columns:118px minmax(0,1fr);gap:12px;align-items:start;min-height:74px;padding:12px;border:2px solid #cdccff;border-radius:16px;background:#fff;cursor:pointer}
.angles-slot>strong{padding-top:6px;font:800 17px Inter,sans-serif;color:#034cff}
.angles-slot.is-waiting{border-color:#034cff;background:#f3f6ff}
.angles-slot.is-doubt{outline:3px dashed #c77700;outline-offset:1px}
.angles-slot:focus-visible{outline:3px solid #0035da;outline-offset:2px}
.angles-slot.is-correct{border-color:#16794a;background:#e4f6ec;cursor:default}
.angles-slot.is-wrong{border-color:#c77700;background:#fff0ce;cursor:default}
.angles-slot-empty{display:block;padding-top:6px;font-size:14px;color:#505b99}
.angles-pool{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:10px;min-height:64px;padding:12px;border:2px dashed #cdccff;border-radius:16px;background:#f8f9ff}
.angles-pool:empty::before{content:'Toutes les étiquettes restantes sont des intrus.';align-self:center;font-size:14px;color:#505b99}
.angles-card{display:block;width:100%;padding:10px 14px;border:2px solid #cdccff;border-radius:12px;background:#fff;color:#101052;font:600 16px/1.45 Inter,sans-serif;text-align:left}
button.angles-card{cursor:pointer}
button.angles-card:hover:not(:disabled){border-color:#034cff}
button.angles-card[aria-pressed="true"]{border-color:#034cff;background:#034cff;color:#fff}
button.angles-card:disabled{cursor:default;opacity:.7}
.angles-card--placed{border-color:#e0ddff;background:#fbfbff}
.angles-model-title{font-weight:750!important;color:#101052!important}
.angles-model{margin:0 0 12px;padding:12px 16px;border-left:4px solid #034cff;border-radius:0 12px 12px 0;background:#fff}
.angles-model p:last-child{margin-bottom:0}
.angles-wait{height:6px;margin:4px 0 12px;border-radius:999px;background:#fff;overflow:hidden}
.angles-wait span{display:block;height:100%;border-radius:999px;background:#034cff;transform-origin:left;animation:angles-wait linear forwards}
@keyframes angles-wait{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.angles-exercise button.lesson-primary-button:disabled{background:#aab4e6;cursor:not-allowed;transform:none;box-shadow:none}
.angles-level--final{background:linear-gradient(120deg,#eafff3,#f6fffa);border-color:#8fd0ab}
.angles-level--final strong{color:#16794a}
.angles-write{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}
.angles-aids{display:flex;flex-wrap:wrap;gap:8px}
.angles-aid{min-height:42px;padding:6px 14px;border:2px solid #e4bd73;border-radius:999px;background:#fff0ce;color:#101052;font:650 15px Inter,sans-serif;cursor:pointer}
.angles-aid:hover:not(:disabled){background:#ffe3a3}
.angles-aid:disabled{opacity:.5;cursor:default}
.angles-write-row{display:grid;grid-template-columns:118px minmax(0,1fr);gap:12px;align-items:start;padding:12px;border:2px solid #cdccff;border-radius:16px;background:#fff}
.angles-write-row>strong{padding-top:8px;font:800 17px Inter,sans-serif;color:#034cff}
.angles-write-area{width:100%;min-height:84px;padding:10px 12px;border:2px solid #cdccff;border-radius:12px;font:600 17px/1.45 Inter,sans-serif;color:#101052;resize:vertical}
.angles-write-area:focus{outline:3px solid #0035da;outline-offset:2px}
.angles-write-area[readonly]{background:#f8f9ff}
.angles-write-row.is-doubt{outline:3px dashed #c77700;outline-offset:1px}
.angles-write-row.is-correct{border-color:#16794a;background:#e4f6ec}
.angles-write-row.is-wrong{border-color:#c77700;background:#fff0ce}
.clock-feedback.is-retry p+p{margin-top:8px}
.angles-voice{display:flex;flex-direction:column;gap:8px;margin:4px 0 14px;padding:14px;border:2px solid #cdccff;border-radius:14px;background:#fff}
.angles-voice-status{margin:0!important;font-weight:750;color:#12208c!important}
.angles-voice-start{align-self:flex-start}
.angles-meter{display:none;height:18px;border-radius:999px;background:#e7eeff;overflow:hidden}
.angles-voice.is-listening .angles-meter{display:block}
.angles-meter span{display:block;width:0;height:100%;border-radius:999px;background:linear-gradient(90deg,#2fb574,#ffb81f);transition:width .08s linear}
.angles-voice-progress{display:none;height:6px;border-radius:999px;background:#e7eeff;overflow:hidden}
.angles-voice.is-listening .angles-voice-progress{display:block}
.angles-voice-progress span{display:block;width:0;height:100%;background:#034cff}
.angles-voice.is-done{border-color:#16794a;background:#e4f6ec}
.angles-voice-note{margin:0!important;text-align:left;font-size:14px!important}
.angles-voice-skip{align-self:flex-start;padding:4px 0;border:0;background:none;color:#505b99;font:600 14px Inter,sans-serif;text-decoration:underline;cursor:pointer}
.angles-recap{margin:4px 0 14px;padding:14px;border:2px dashed #e4bd73;border-radius:14px;background:#fff}
.angles-rebuild{display:flex;flex-direction:column;gap:10px}
.angles-rebuild-line{min-height:54px;margin:0!important;padding:10px 14px;border:2px solid #cdccff;border-radius:12px;background:#fbfbff;font-weight:600}
.angles-rebuild-line.is-done{border-color:#16794a;background:#e4f6ec}
.angles-rebuild-note{min-height:1.4em;margin:0!important;text-align:left;color:#7a5200!important}
.angles-rebuild .angles-proof{margin-bottom:0}
.clock-stage .angles-review-title{margin:40px 0 18px}
.angles-review{margin:0 0 22px;padding:20px;border:1px solid #dedcff;border-radius:18px;background:#fff}
.angles-review h3{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 10px;font:750 18px Inter,sans-serif;color:#12208c}
.angles-review-prompt{margin:0 0 14px;font:650 18px/1.4 Inter,sans-serif;color:#101052}
.angles-review .clock-feedback{margin-top:10px}
@media(max-width:700px){
 .angles-slot,.angles-write-row{grid-template-columns:minmax(0,1fr);gap:4px}
 .angles-write-row>strong{padding-top:0}
 .angles-slot>strong{padding-top:0}
 .angles-card{font-size:15px}
 .angles-review{padding:14px}
}
.angles-recap .angles-pool:empty{display:none}
