/* SPDX-License-Identifier: AGPL-3.0-or-later
 * Commercial license available
 * © Concepts 1996–2026 Miroslav Šotek. All rights reserved.
 * © Code 2020–2026 Miroslav Šotek. All rights reserved.
 * ORCID: 0009-0009-3560-0851
 * Contact: www.anulum.li | protoscience@anulum.li
 * ANULUM — discovery styles */
@font-face{font-family:Public Sans;src:url('/assets/fonts/publicsans-ijwRs572Xtc6ZYQws9YVwnNGfJ4.woff2') format('woff2');font-display:swap}
:root{color-scheme:dark;--bg:#0c0e14;--panel:#151924;--text:#edf0f7;--muted:#acb5c9;--line:#343b4c;--accent:#b9a4ff;--mint:#91e3cc;--focus:#ffe3a1;--shadow:0 18px 60px #0003}
:root[data-theme=light]{color-scheme:light;--bg:#f7f6f2;--panel:#fff;--text:#1e2533;--muted:#505a6d;--line:#cbd0d9;--accent:#6540a9;--mint:#14644c;--focus:#713cb2;--shadow:0 18px 60px #24304b0c}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:'Public Sans',system-ui,sans-serif;line-height:1.65}a{color:var(--accent);text-underline-offset:.24em}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button,input,select,textarea{border:1px solid var(--line);border-radius:8px;color:var(--text);background:var(--panel);padding:.6rem .85rem}button:hover{border-color:var(--accent)}button:disabled{opacity:.6;cursor:not-allowed}input,select,textarea{max-width:100%}textarea{width:100%;min-height:130px;resize:vertical}input[type=range]{padding:0;width:100%;accent-color:var(--accent)}input[type=checkbox]{width:1.2em;height:1.2em;vertical-align:middle;accent-color:var(--accent)}:focus-visible{outline:3px solid var(--focus);outline-offset:4px}h1,h2,h3{line-height:1.16;letter-spacing:-.035em}h1{font-size:clamp(2.8rem,7vw,5.4rem);max-width:950px;margin:.7rem 0 1rem;font-weight:650}h2{font-size:1.5rem;margin:.5rem 0 .9rem}h3{font-size:1.12rem}p{max-width:76ch}small{font-size:.85rem;color:var(--muted)}[hidden]{display:none!important}code{font-size:.9em;overflow-wrap:anywhere}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--panel);padding:1rem;border:1px solid var(--line);border-radius:10px}blockquote{margin:0;border-left:3px solid var(--mint);padding:.8rem 1.2rem;background:var(--panel)}label{display:block;font-weight:600}fieldset{border:1px solid var(--line);border-radius:12px;padding:1rem;min-width:0}legend{padding:0 .5rem}hr{border:0;border-top:1px solid var(--line);margin:2rem 0}
.skip{position:absolute;top:-90px;left:10px;z-index:20;background:var(--panel);padding:1rem}.skip:focus{top:10px}.site-header{max-width:1440px;margin:auto;display:flex;gap:2rem;align-items:center;justify-content:space-between;padding:1.5rem 3vw;border-bottom:1px solid var(--line)}.wordmark{font-size:1.45rem;letter-spacing:.2em;color:var(--text);text-decoration:none;line-height:1.2;white-space:nowrap}.wordmark span{display:block;font-size:.51rem;letter-spacing:.12em;margin-top:.4rem}.site-header nav,.discovery-footer nav{display:flex;gap:.3rem 1.25rem;flex-wrap:wrap}.site-header nav a{font-size:.85rem;text-decoration:none;color:var(--muted);padding:.5rem 0}.site-header nav a[aria-current]{color:var(--accent);border-bottom:1px solid var(--accent)}.icon-button{font-size:1.2rem;padding:.3rem .65rem}main{max-width:1220px;margin:auto;padding:3.5rem 2rem 5rem}.eyebrow{font-size:.73rem;font-weight:650;letter-spacing:.13em;text-transform:uppercase;color:var(--mint)}.lead{font-size:1.16rem;color:var(--muted);max-width:70ch;margin-bottom:2.3rem}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:1rem}.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:1.5rem;min-width:0;box-shadow:var(--shadow)}.card h2 a,.card h3 a{color:var(--text);text-decoration:none}.card p{color:var(--muted)}.card a:hover{text-decoration:underline}.text-link{font-size:.92rem;font-weight:600}.toolbar{display:flex;align-items:end;gap:.8rem;flex-wrap:wrap;margin:1.4rem 0}.toolbar label{flex:1;min-width:min(100%,180px);font-size:.85rem}.toolbar input,.toolbar select{display:block;width:100%;margin-top:.4rem}.toolbar .grow{flex:3}.primary{background:var(--accent);color:var(--bg);border-color:var(--accent);font-weight:650;text-decoration:none;display:inline-block;border-radius:8px;padding:.65rem 1rem}.secondary{display:inline-block;padding:.65rem 1rem;border:1px solid var(--line);border-radius:8px;text-decoration:none}.actions{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin-top:1rem}.actions>*{min-width:0;max-width:100%}.actions input[type=file]{width:100%}.actions button,.actions a{font-size:.87rem}.tag{display:inline-block;border:1px solid var(--line);padding:.14rem .5rem;border-radius:20px;font-size:.75rem;color:var(--muted);margin-right:.35rem}.status{min-height:1.7em;color:var(--muted);font-size:.88rem}.error{color:#ffa7a7}:root[data-theme=light] .error{color:#a92132}.result{padding:1.4rem 0;border-bottom:1px solid var(--line)}.result h2{font-size:1.25rem}.result p{margin:.5rem 0}.result mark{background:#ac93e82e;color:inherit}.empty{padding:2rem;border:1px dashed var(--line);border-radius:12px}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.5rem}.stack>*+*{margin-top:1rem}.section-heading{margin-top:3rem;margin-bottom:1rem}.callout{border:1px solid var(--line);border-left:3px solid var(--mint);border-radius:8px;padding:1rem 1.25rem;margin:1.5rem 0;color:var(--muted)}.muted{color:var(--muted)}.wide{width:100%}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px}table{width:100%;border-collapse:collapse;font-size:.88rem}th,td{padding:.8rem 1rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{color:var(--mint)}.plot{width:100%;height:auto;max-height:360px;background:var(--bg);border:1px solid var(--line);border-radius:12px}.steps{padding-left:1.4rem}.steps li{padding:.8rem 0}.steps p{margin:.3rem 0}.step-card{margin-bottom:1rem}.progress{accent-color:var(--mint);width:100%;height:14px}.reading{max-width:780px}.reading p,.reading li{font-size:1.05rem;line-height:1.8}.reading h2{margin-top:2.5rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-grid label input,.form-grid label select{width:100%;margin-top:.4rem}.form-grid .full{grid-column:1/-1}.discovery-footer{padding:2.5rem max(2rem,calc((100vw - 1156px)/2));border-top:1px solid var(--line);color:var(--muted);font-size:.85rem}.discovery-footer nav a{color:var(--muted)}#notice:empty{display:none}#notice{position:fixed;bottom:1rem;left:50%;transform:translateX(-50%);z-index:100;background:var(--panel);border:1px solid var(--accent);border-radius:12px;padding:.8rem 1.2rem;max-width:calc(100vw - 2rem);box-shadow:var(--shadow)}.honeypot{position:absolute;left:-10000px}.atlas-node{fill:var(--panel);stroke:var(--accent);stroke-width:1.5}.atlas-edge{stroke:var(--muted);stroke-opacity:.5}.atlas-label{fill:var(--text);font-size:13px}.atlas-svg{width:100%;height:auto;min-height:260px}.experiment-frame{border:1px solid var(--line);border-radius:12px;width:100%;height:660px;background:var(--bg)}.subnav{display:flex;gap:.6rem;flex-wrap:wrap}.metric{font-size:2rem;font-weight:650;color:var(--mint)}.toc{border-left:2px solid var(--line);padding-left:1rem}.toc a{display:block;padding:.25rem 0}.glossary dt{font-size:1.2rem;font-weight:600;margin-top:1.6rem}.glossary dd{margin:.4rem 0 1rem;color:var(--muted)}
@media(max-width:760px){.site-header{gap:.8rem;flex-wrap:wrap;padding:1rem}.site-header nav{order:3;width:100%;gap:.3rem 1rem}.wordmark{font-size:1.2rem}main{padding:2.5rem 1rem 3rem}h1{font-size:2.8rem}.split,.form-grid{grid-template-columns:1fr}.lead{font-size:1rem}.card{padding:1.15rem}.discovery-footer{padding:2rem 1rem}.experiment-frame{height:740px}.toolbar{align-items:stretch}.toolbar>*{max-width:100%}}
@media(prefers-reduced-motion:no-preference){a,button{transition:background .15s,border-color .15s}.card:hover{border-color:var(--accent)}}
@media print{.site-header,.discovery-footer,.actions,#notice{display:none}body{background:#fff;color:#000}main{max-width:none;padding:0}.card{break-inside:avoid;box-shadow:none}.grid{display:block}.card{margin-bottom:1rem}}

.workbench-pair{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem}.workbench-pair>section{min-width:0}@media(min-width:1000px){.workbench-pair.comparing{grid-template-columns:repeat(2,minmax(0,1fr))}}

main a{overflow-wrap:anywhere}
