diff --git a/frontend/textbooks/algebra_8.html b/frontend/textbooks/algebra_8.html index 997e680..25667a2 100644 --- a/frontend/textbooks/algebra_8.html +++ b/frontend/textbooks/algebra_8.html @@ -184,9 +184,11 @@ input,select,textarea{font-family:inherit} .dz{min-height:60px;padding:12px;border:2px dashed var(--border);border-radius:10px;background:var(--card);display:flex;flex-wrap:wrap;gap:6px;align-content:flex-start;transition:border-color .15s,background .15s} .dz.over{border-color:var(--pri);background:var(--pri-soft)} .dz-label{font-size:.78rem;font-weight:700;color:var(--muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.06em} -.drag-item{padding:6px 12px;background:linear-gradient(135deg,var(--acc),var(--acc2));color:#fff;border-radius:8px;font-weight:600;font-size:.88rem;cursor:grab;user-select:none;font-family:'JetBrains Mono',monospace;box-shadow:var(--sh)} +.drag-item{padding:6px 12px;background:linear-gradient(135deg,var(--acc),var(--acc2));color:#fff;border-radius:8px;font-weight:600;font-size:.88rem;cursor:grab;user-select:none;font-family:'JetBrains Mono',monospace;box-shadow:var(--sh);transition:transform .12s,box-shadow .12s} +.drag-item:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(3,169,244,.35)} .drag-item:active{cursor:grabbing} .drag-item.dragging{opacity:.5} +.drag-item.selected{outline:3px solid #FFD166;outline-offset:2px;box-shadow:0 0 0 6px rgba(255,209,102,.22),var(--sh)} /* NUMBER LINE */ .num-line{position:relative;height:60px;background:var(--card);border-radius:8px;margin:14px 0;border:1px solid var(--border)} @@ -452,9 +454,11 @@ input,select,textarea{font-family:inherit} /* Task 7: psel-card hover preview */ .psel-card{overflow:visible} /* restore border-radius clip for the active stripe via pseudo-element only on non-preview */ -.psel-card-preview{display:none;position:absolute;left:105%;top:0;width:200px;background:var(--card);border:1.5px solid var(--pri);border-radius:12px;padding:12px 14px;z-index:100;box-shadow:var(--sh2);pointer-events:none;animation:previewIn .18s ease} -@keyframes previewIn{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:none}} +.psel-card-preview{display:none;position:absolute;left:50%;top:calc(100% + 8px);transform:translateX(-50%);width:220px;max-width:90vw;background:var(--card);border:1.5px solid var(--pri);border-radius:12px;padding:12px 14px;z-index:200;box-shadow:var(--sh2);pointer-events:none;animation:previewIn .18s ease} +@keyframes previewIn{from{opacity:0;transform:translateX(-50%) translateY(-6px)}to{opacity:1;transform:translateX(-50%) translateY(0)}} .psel-card:hover .psel-card-preview{display:block} +/* стрелка-носик у превью, указывает на карточку */ +.psel-card-preview::before{content:'';position:absolute;top:-6px;left:50%;transform:translateX(-50%) rotate(45deg);width:10px;height:10px;background:var(--card);border-left:1.5px solid var(--pri);border-top:1.5px solid var(--pri)} .psel-preview-title{font-size:.72rem;font-weight:800;color:var(--pri2);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px} .psel-preview-topic{font-size:.78rem;color:var(--text);margin-bottom:2px;padding-left:8px;border-left:2px solid var(--sec-acc,var(--pri))} .psel-preview-bar{height:5px;background:rgba(233,30,99,.12);border-radius:3px;overflow:hidden;margin-top:8px} @@ -1674,7 +1678,7 @@ function buildP1(){ `)} - ${widget('«Существует или нет?»', 'DRAG', 'Перетащите выражения в правильный столбик. Подсказка: подкоренное число должно быть неотрицательным.', ` + ${widget('«Существует или нет?»', 'DRAG', 'Перетащите выражение в нужный столбик или кликните, чтобы выбрать → кликните по зоне. Подкоренное число должно быть неотрицательным.', `