.ellipse-method-controls {display:flex;gap:12px;margin-top:24px;pointer-events:auto;}
.ellipse-method-button {display:grid;place-items:center;width:38px;height:38px;min-height:38px;padding:0;border:1px solid rgba(185,174,158,.72);border-radius:12px;background:#efeae1;color:#222738;font-family:var(--plain);box-shadow:none;cursor:pointer;transition:background-color 180ms ease,border-color 180ms ease,color 180ms ease;}
.ellipse-method-button strong {font-size:13px;font-weight:400;line-height:1;}
.ellipse-method-button[aria-pressed="true"],.ellipse-method-button:hover {border-color:#53b7f9;background:#53b7f9;color:#fff;box-shadow:none;}
.ellipse-method-button:focus-visible {outline:2px solid #2698f2;outline-offset:3px;}
.ellipse-method-tooltip {position:fixed;z-index:1000;transform:translate(-50%,-100%);max-width:280px;white-space:normal;}
.ellipse-method-tooltip::first-letter {text-transform:lowercase;}
.has-ellipse-methods > .construction-lesson-player {display:flex;}
.ellipse-projection-teaching :is(path,circle) {pointer-events:none;stroke-linecap:round;stroke-linejoin:round;}
.projection-square {stroke:#92999e;stroke-width:1.1;}
.projection-diagonal {stroke:#92999e;stroke-width:1;opacity:.7;}
.projection-source-circle {stroke:#f2ad32;stroke-width:1.6;opacity:.76;}
.projection-horizon {stroke:#53b7f9;stroke-width:1;}
.projection-ray {stroke:#92999e;stroke-width:.7;opacity:.4;}
.projection-vp {fill:#222738;stroke:none;}
.projection-blue-guide {stroke:#2698f2;stroke-width:1;opacity:.65;}
.projection-point {fill:#2698f2;stroke:none;}
.projection-result {stroke:#222738;stroke-width:2.4;}
