.angle-lab{margin:26px 0;padding:24px;border:1px solid #aabfb0;border-radius:20px;background:#eef3e9;min-width:0}.angle-lab h3{font-size:26px;line-height:1.25}.angle-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0}.angle-controls label{font-size:16px;font-weight:700;min-width:0}.angle-range{display:flex;align-items:center;gap:12px}.angle-controls input[type=range]{width:100%;min-width:0;min-height:48px;accent-color:#176756}.angle-controls output{font-size:24px;min-width:4ch;font-variant-numeric:tabular-nums}.angle-controls select{display:block;width:100%;min-height:48px;padding:10px;background:#fffdf7;color:#203e37;font:inherit;border:1px solid #8eaa9b;border-radius:9px}.angle-controls .angle-check{display:flex;align-items:center;gap:12px;min-height:48px}.angle-check input{width:25px;height:25px;accent-color:#176756}.angle-visual{min-width:0}.angle-diagram{display:block;width:100%;height:auto;max-height:620px;border:1px solid #c9d6c4;border-radius:18px;background:#fffdf6;overflow:hidden}.angle-diagram text{font:23px system-ui,sans-serif;fill:#203e37;stroke:none;paint-order:stroke;stroke-width:0}.angle-diagram .angle-point{font-size:26px;font-weight:750}.angle-diagram .angle-symbol{font-size:32px;font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:700;text-anchor:middle;paint-order:stroke;stroke:#fffdf6;stroke-width:5px;stroke-linejoin:round}.angle-diagram .angle-scale{font-size:19px;text-anchor:middle;fill:#526a60}.angle-diagram .angle-condition{font-size:24px;font-weight:750}.angle-diagram .angle-cover-word{font-size:36px;font-weight:750}.angle-diagram .angle-line,.angle-diagram .angle-ray,.angle-diagram .angle-square{fill:none;stroke:#203e37;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round}.angle-diagram .angle-ray.base{stroke:#176756;stroke-width:5}.angle-diagram .angle-ray.moving,.angle-diagram .transversal{stroke:#ae5b2a;stroke-width:4}.angle-diagram .angle-tick{stroke:#a6b9ac;stroke-width:1.5;fill:none}.angle-diagram .angle-sector{fill:#dce6da;stroke:#829d88;stroke-width:1.5}.angle-diagram .angle-sector.selected{fill:#f7d888;stroke:#95702b;stroke-width:2}.angle-diagram .angle-parallel-mark{font-size:42px;font-weight:900;fill:#176756}.angle-diagram [data-angle-drag]{cursor:grab;touch-action:none}.angle-diagram [data-angle-drag]:active{cursor:grabbing}.angle-result{font-size:21px!important;line-height:1.5;padding:18px;border-left:5px solid #196951;border-radius:10px;background:#dcecdc;font-weight:750}.angle-explanation{font-size:16px!important}.angle-presets,.angle-tools,.angle-trainer-options{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.angle-presets button,.angle-trainer-options button{min-height:46px;min-width:54px;font:inherit;background:#fffdf6;border:1px solid #a8b9a7;border-radius:9px;color:#23473c;padding:9px 13px}.angle-help{padding:16px;border:1px solid #b6cbb8;background:#fffdf6;border-radius:12px}.angle-help summary{font-weight:750;cursor:pointer;min-height:30px}.angle-help li{margin:12px 0;line-height:1.6}.angle-tools button{min-height:46px}.angle-notes li{margin:12px 0;font-size:15px}.angle-letter-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:20px 0}.angle-letter-grid button{min-height:85px;border:1px solid #a0b79f;border-radius:10px;background:#fffdf6;color:#244b3e;display:flex;flex-direction:column;align-items:center;justify-content:center;font:15px system-ui;gap:4px;padding:9px 3px}.angle-letter-grid button span{font:35px Georgia,serif}.angle-letter-grid button[aria-pressed=true]{background:#ffde95;border:2px solid #77612f}.angle-trainer{margin:20px 0;padding:19px;background:#fffdf6;border-radius:14px;border:1px solid #bed0b9}.angle-trainer [data-angle-letter-question]{font-size:24px}.angle-lab :focus-visible{outline:3px solid #70479c;outline-offset:3px}.card-art:has(.angle-diagram){padding:0;background:#fffdf6}.card-art .angle-diagram{border:0;border-radius:0;max-height:none;height:100%;width:100%}@media(max-width:760px){.angle-lab{padding:15px;margin:20px 0}.angle-lab h3{font-size:23px}.angle-controls{grid-template-columns:1fr;gap:13px}.angle-controls label{font-size:16px}.angle-letter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.angle-result{font-size:19px!important;padding:14px}.angle-diagram text{font-size:25px}.angle-diagram .angle-scale{font-size:22px}.angle-diagram .angle-symbol{font-size:35px}.angle-tools{flex-direction:column}.angle-tools button{width:100%}}@media(min-width:1550px){.angle-controls label,.angle-explanation{font-size:19px!important}.angle-result{font-size:24px!important}.angle-diagram{max-height:760px}}@media print{.angle-controls,.angle-tools,.angle-presets,.angle-trainer{display:none}.angle-lab{break-inside:avoid}}
.angle-diagram .angle-object-name{font-size:25px;font-weight:650}@media(max-width:760px){.angle-diagram .angle-object-name{font-size:34px}.angle-diagram .angle-point{font-size:38px}.angle-diagram .angle-symbol{font-size:42px}.angle-diagram .angle-scale{font-size:29px}.angle-visual{margin-inline:-8px}.angle-visual .angle-diagram{max-width:none}.angle-diagram .angle-condition{font-size:30px}}
.angle-lab .angle-letter-grid{grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}
