:root{--ae-ink: #1c2541;--ae-muted: #566082;--ae-surface: #ffffff;--ae-paper: #f6f8fc;--ae-line: #dbe1ee;--ae-grid: rgba(51,70,168,0.07);--ae-blue: #3346a8;--ae-blue-dark: #27368a;--ae-blue-soft: #e8ecfa;--ae-green: #0f6e56;--ae-green-soft: #dff3ec;--ae-amber: #8a4b08;--ae-amber-soft: #fdf1dc;--ae-red: #a4261d;--ae-red-soft: #fbe7e4;--ae-radius: 12px;--ae-shadow: 0 10px 28px rgba(28,37,65,0.08);--ae-focus: 0 0 0 3px rgba(51,70,168,0.28);--ae-math: "Cambria Math",Cambria,"STIX Two Math",Georgia,serif;--ae-mono: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--primary: var(--ae-blue);--primary-dark: var(--ae-blue-dark);--border: var(--ae-line);--surface: var(--ae-surface);--shadow-soft: var(--ae-shadow);--surface-muted: var(--ae-paper);--text-main: var(--ae-ink);--text-muted: var(--ae-muted);}
.ae-wrap [hidden]{display: none !important;}
.ae-m{font-family: var(--ae-math);}
.ae-tool{background: var(--ae-surface);border: 1px solid var(--ae-line);border-radius: var(--ae-radius);box-shadow: var(--ae-shadow);padding: 20px;margin-bottom: 40px;color: var(--ae-ink);}
.ae-byline{display: flex;flex-wrap: wrap;justify-content: space-between;gap: 4px 16px;font-size: 0.85rem;color: var(--ae-muted);padding-bottom: 12px;margin-bottom: 16px;border-bottom: 1px solid var(--ae-line);}
.ae-byline a{color: var(--ae-blue);}
.ae-entry{background-color: var(--ae-paper);background-image: linear-gradient(var(--ae-grid) 1px,transparent 1px),linear-gradient(90deg,var(--ae-grid) 1px,transparent 1px);background-size: 22px 22px;border: 1px solid var(--ae-line);border-radius: var(--ae-radius);padding: 16px;}
.ae-entry-head{display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: 8px;margin-bottom: 10px;}
.ae-label{font-weight: 700;margin: 0;}
.ae-actions{display: flex;gap: 8px;}
.ae-btn{background: var(--ae-surface);color: var(--ae-ink);border: 1px solid var(--ae-line);border-radius: 8px;padding: 7px 14px;font-size: 0.9rem;font-weight: 600;cursor: pointer;min-height: 38px;}
.ae-btn:hover{border-color: var(--ae-blue);color: var(--ae-blue);}
.ae-btn-main{background: var(--ae-blue);border-color: var(--ae-blue);color: #fff;}
.ae-btn-main:hover{background: var(--ae-blue-dark);border-color: var(--ae-blue-dark);color: #fff;}
.ae-input{display: block;width: 100%;font-family: var(--ae-mono);font-size: 1.3rem;color: var(--ae-ink);background: var(--ae-surface);border: 2px solid var(--ae-line);border-radius: 10px;padding: 12px 14px;}
.ae-input:focus{outline: none;border-color: var(--ae-blue);box-shadow: var(--ae-focus);}
.ae-read{margin: 8px 2px 0;font-size: 0.9rem;color: var(--ae-muted);overflow-x: auto;}
.ae-read .ae-m{font-size: 1.1rem;color: var(--ae-ink);margin-left: 4px;}
.ae-keys{display: flex;flex-wrap: wrap;gap: 6px;margin-top: 12px;}
.ae-key{min-width: 44px;min-height: 40px;background: var(--ae-surface);border: 1px solid var(--ae-line);border-radius: 8px;font-family: var(--ae-math);font-size: 1.05rem;color: var(--ae-ink);cursor: pointer;}
.ae-key:hover{background: var(--ae-blue-soft);border-color: var(--ae-blue);}
.ae-try{display: flex;flex-wrap: wrap;align-items: center;gap: 6px;margin: 12px 0 0;font-size: 0.85rem;color: var(--ae-muted);}
.ae-chip{background: transparent;border: 1px dashed var(--ae-muted);border-radius: 999px;padding: 4px 11px;font-size: 0.83rem;color: var(--ae-ink);cursor: pointer;}
.ae-chip:hover{border-style: solid;border-color: var(--ae-blue);color: var(--ae-blue);}
.ae-btn:focus-visible,.ae-key:focus-visible,.ae-chip:focus-visible,.ae-copy:focus-visible,.ae-tab:focus-visible{outline: none;box-shadow: var(--ae-focus);}
.ae-msg{margin: 12px 0 0;padding: 10px 12px;background: var(--ae-red-soft);color: var(--ae-red);border-radius: 8px;font-size: 0.93rem;}
.ae-msg a{color: var(--ae-red);font-weight: 600;}
.ae-empty{margin-top: 16px;padding: 18px;border: 1px dashed var(--ae-line);border-radius: var(--ae-radius);color: var(--ae-muted);}
.ae-empty p{margin: 0;}
.ae-empty code,.ae-prose code{font-family: var(--ae-mono);font-size: 0.9em;background: var(--ae-blue-soft);color: var(--ae-blue-dark);padding: 1px 5px;border-radius: 4px;}
.ae-out{display: grid;grid-template-columns: minmax(0,1.1fr) minmax(0,1fr);gap: 20px;margin-top: 18px;}
.ae-kind{display: inline-block;margin: 0 0 8px;font-size: 0.8rem;font-weight: 700;letter-spacing: 0.02em;color: var(--ae-blue-dark);background: var(--ae-blue-soft);padding: 3px 10px;border-radius: 999px;}
.ae-row{display: grid;grid-template-columns: 84px minmax(0,1fr) auto;align-items: center;gap: 10px;padding: 12px 0;border-bottom: 1px solid var(--ae-line);}
.ae-row-k{font-size: 0.82rem;font-weight: 700;color: var(--ae-muted);}
.ae-row-v{font-size: 1.32rem;line-height: 1.5;overflow-x: auto;padding-bottom: 2px;}
.ae-soft{font-family: inherit;font-size: 0.95rem;color: var(--ae-muted);}
.ae-warn{font-size: 0.98rem;color: var(--ae-red);}
.ae-copy{background: transparent;border: 1px solid var(--ae-line);border-radius: 6px;padding: 3px 9px;min-height: 30px;font-size: 0.78rem;color: var(--ae-muted);cursor: pointer;}
.ae-copy:hover{color: var(--ae-blue);border-color: var(--ae-blue);}
.ae-frac{display: inline-flex;flex-direction: column;align-items: center;vertical-align: middle;line-height: 1.25;}
.ae-frac-top{padding: 0 6px 2px;border-bottom: 1.5px solid currentColor;}
.ae-frac-bot{padding: 2px 6px 0;}
.ae-restrict{margin: 12px 0 0;padding: 8px 12px;background: var(--ae-amber-soft);color: var(--ae-amber);border-radius: 8px;font-size: 0.93rem;font-weight: 600;}
.ae-vars-head{margin: 16px 0 6px;font-size: 0.82rem;font-weight: 700;color: var(--ae-muted);}
.ae-vars{display: flex;flex-wrap: wrap;gap: 8px;margin-bottom: 4px;}
.ae-var{display: inline-flex;align-items: center;gap: 6px;margin: 0;font-family: var(--ae-math);font-size: 1.1rem;}
.ae-var input{width: 92px;font-family: var(--ae-mono);font-size: 0.95rem;color: var(--ae-ink);border: 1px solid var(--ae-line);border-radius: 7px;padding: 6px 8px;min-height: 38px;}
.ae-var input:focus{outline: none;border-color: var(--ae-blue);box-shadow: var(--ae-focus);}
.ae-check{margin: 12px 0 0;padding: 8px 12px;background: var(--ae-green-soft);color: var(--ae-green);border-radius: 8px;font-size: 0.88rem;}
.ae-check.is-off{background: var(--ae-red-soft);color: var(--ae-red);}
.ae-anatomy{margin-top: 16px;overflow-x: auto;}
.ae-table{width: 100%;border-collapse: collapse;font-size: 0.93rem;}
.ae-table caption{caption-side: top;padding: 0 0 6px;font-size: 0.82rem;font-weight: 700;color: var(--ae-muted);}
.ae-table th{background: var(--ae-paper);text-align: left;font-weight: 700;padding: 8px 10px;border-bottom: 2px solid var(--ae-line);white-space: nowrap;}
.ae-table td{padding: 8px 10px;border-bottom: 1px solid var(--ae-line);vertical-align: top;}
.ae-work{min-width: 0;background: var(--ae-paper);border: 1px solid var(--ae-line);border-radius: var(--ae-radius);padding: 12px;}
.ae-tabs{display: flex;flex-wrap: wrap;gap: 4px;margin-bottom: 10px;}
.ae-tab{flex: 1 1 auto;background: transparent;border: 1px solid transparent;border-radius: 8px;padding: 7px 10px;min-height: 38px;font-size: 0.86rem;font-weight: 600;color: var(--ae-muted);cursor: pointer;}
.ae-tab:hover{color: var(--ae-blue);}
.ae-tab.is-on{background: var(--ae-surface);border-color: var(--ae-line);color: var(--ae-blue-dark);}
.ae-steps{list-style: none;counter-reset: ae;margin: 0;padding: 0;}
.ae-steps li{counter-increment: ae;position: relative;padding: 0 0 12px 32px;margin: 0;overflow-x: auto;}
.ae-steps li::before{content: counter(ae);position: absolute;left: 0;top: 1px;width: 22px;height: 22px;border-radius: 50%;background: var(--ae-blue);color: #fff;font-size: 0.74rem;font-weight: 700;display: flex;align-items: center;justify-content: center;}
.ae-steps li.ae-step-end::before{content: "=";background: var(--ae-green);}
.ae-step-t{display: block;font-size: 0.84rem;font-weight: 700;color: var(--ae-ink);}
.ae-step-m{display: block;font-family: var(--ae-math);font-size: 1.05rem;line-height: 1.6;margin-top: 2px;}
.ae-prose{color: var(--ae-ink);margin: 0 auto 32px;}
.ae-prose section{margin-bottom: 38px;}
.ae-prose h2{font-size: 1.5rem;font-weight: 700;margin-bottom: 12px;}
.ae-prose h3{font-size: 1rem;font-weight: 700;margin-bottom: 6px;}
.ae-prose p,.ae-prose li{line-height: 1.7;}
.ae-prose a{color: var(--ae-blue);}
.ae-sheet{background-color: var(--ae-paper);background-image: linear-gradient(var(--ae-grid) 1px,transparent 1px);background-size: 100% 28px;border-left: 4px solid var(--ae-blue);border-radius: 0 var(--ae-radius) var(--ae-radius) 0;padding: 20px 22px;}
.ae-sheet p:last-child{margin-bottom: 0;}
.ae-worked{padding-left: 22px;}
.ae-worked li{margin-bottom: 8px;}
.ae-scroll{overflow-x: auto;margin-bottom: 12px;}
.ae-scroll td:first-child{white-space: nowrap;}
.ae-note{font-size: 0.93rem;color: var(--ae-muted);}
.ae-slips{display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: 12px;}
.ae-slip{border: 1px solid var(--ae-line);border-top: 3px solid var(--ae-red);border-radius: 8px;padding: 12px 14px;background: var(--ae-surface);}
.ae-slip p{margin: 0;font-size: 0.95rem;}
.ae-limits li{margin-bottom: 8px;}
@media (max-width: 991.98px){.ae-out{grid-template-columns: minmax(0,1fr);}.ae-slips{grid-template-columns: minmax(0,1fr);}}
@media (max-width: 575.98px){.ae-tool{padding: 14px;}.ae-entry{padding: 12px;}.ae-input{font-size: 1.1rem;}.ae-row{grid-template-columns: minmax(0,1fr) auto;}.ae-row-k{grid-column: 1 / -1;}.ae-row-v{font-size: 1.18rem;}.ae-sheet{padding: 16px;}}