.ttt-line-lens{margin:.75rem 0;border:2px solid #6366f1;border-radius:10px;background:#fff;font-size:.8rem}
.ttt-line-lens summary{min-height:44px;padding:.75rem;font-weight:800;cursor:pointer;color:#4338ca}
.ttt-line-lens summary:focus-visible,.ttt-line-lens select:focus-visible,.ttt-line-lens button:focus-visible{outline:3px solid #f59e0b;outline-offset:2px}
.lens-body{padding:0 .65rem .65rem}
.lens-body p{line-height:1.45;margin:0 0 .5rem}
.lens-body label{display:block;font-weight:700;margin-bottom:.25rem}
.lens-body select{display:block;width:100%;min-height:44px;max-width:100%;font:inherit;border:1px solid #6366f1;border-radius:6px;background:#fff;padding:.4rem;color:#1e293b}
.lens-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin:.5rem 0}
.lens-actions button{flex:1 1 100px;min-height:44px;padding:.4rem .5rem;font:700 .8rem/1.3 system-ui;border:2px solid #6366f1;border-radius:6px;background:#eef2ff;color:#312e81;cursor:pointer}
.lens-actions button:disabled{opacity:.5;cursor:default}
#lens-message{margin:.5rem 0;min-height:2.9em}
#lens-routes{display:grid;gap:.35rem}
.lens-route{min-height:44px;width:100%;padding:.5rem;text-align:left;white-space:normal;overflow-wrap:anywhere;font:600 .75rem/1.4 system-ui;border:1px solid #a5b4fc;border-radius:6px;background:#fff;color:#1e293b;cursor:pointer}
.lens-route[aria-pressed="true"]{border:2px solid #7c3aed;background:#f5f3ff}
.ttt-cell.lens-line{outline:3px dashed #7c3aed;outline-offset:-6px}
.ttt-cell[data-lens-step]::after{content:attr(data-lens-step);position:absolute;right:2px;bottom:2px;min-width:15px;padding:1px 2px;border-radius:3px;background:#5b21b6;color:#fff;font:700 10px/1.2 system-ui;pointer-events:none}
