:root{--paper:#f7f4ec;--surface:#fffef9;--ink:#171717;--muted:#6e675e;--line:#ded6c8;--orange:#e8783f;--orange2:#fff0e6;--blue:#397ebf;--blue2:#eaf4ff;--red:#c9534d;--red2:#fff0ee;--green:#5e8e3f;--purple:#8d62bd;--shadow:0 10px 28px rgba(48,40,30,.08);--r:18px;--side:270px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);font:15px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background-color:var(--paper);background-image:linear-gradient(rgba(190,181,164,.25) 1px,transparent 1px),linear-gradient(90deg,rgba(190,181,164,.25) 1px,transparent 1px);background-size:32px 32px}button,input{font:inherit}.app{min-height:100vh;display:grid;grid-template-columns:var(--side) 1fr}.sidebar{position:sticky;top:0;height:100vh;overflow:auto;padding:18px 14px;background:rgba(250,247,239,.96);border-right:1px solid var(--line);backdrop-filter:blur(16px);z-index:30}.brand{display:flex;gap:10px;align-items:center;padding:6px 6px 16px}.mark{width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,var(--orange),#f1a47a);display:grid;place-items:center;color:#fff;font-weight:900;box-shadow:0 7px 18px rgba(232,120,63,.25)}.brand strong{display:block;font-size:1.02rem}.brand small{color:var(--muted)}.side-label{margin:10px 8px 6px;color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.tabs{display:grid;gap:5px}.tab,.nav{border:0;background:transparent;text-align:left;cursor:pointer;border-radius:11px;padding:9px 10px;color:#4e4942}.tab{font-weight:800}.tab:hover,.tab.active,.nav:hover,.nav.active{background:#fff;box-shadow:0 3px 12px rgba(0,0,0,.035)}.nav{width:100%;display:grid;grid-template-columns:10px 1fr auto;gap:8px;align-items:center;font-size:.8rem}.dot{width:7px;height:7px;border-radius:99px;background:#c3b9aa}.nav.active .dot{background:var(--orange);box-shadow:0 0 0 4px var(--orange2)}.count{color:#948b80;font-size:.7rem}.main{min-width:0}.topbar{position:sticky;top:0;z-index:25;display:flex;gap:10px;align-items:center;padding:12px 22px;background:rgba(247,244,236,.91);border-bottom:1px solid rgba(210,202,188,.75);backdrop-filter:blur(16px)}.menu{display:none}.search{position:relative;max-width:780px;flex:1}.search input{width:100%;height:48px;border:1px solid #cbc2b5;background:#fff;border-radius:15px;padding:0 44px 0 44px;outline:none;box-shadow:0 3px 12px rgba(0,0,0,.035)}.search input:focus{border-color:var(--orange);box-shadow:0 0 0 4px rgba(232,120,63,.12)}.search:before{content:"⌕";position:absolute;left:15px;top:9px;font-size:22px;color:#837b71}.kbd{position:absolute;right:11px;top:12px;color:#8b8378;border:1px solid #ddd4c8;border-radius:7px;padding:2px 7px;font-size:.72rem;background:#faf8f4}.ghost{height:42px;border:1px solid var(--line);background:#fff;border-radius:12px;padding:0 12px;cursor:pointer;font-weight:800}.page{max-width:1460px;margin:auto;padding:22px 28px 80px}.hero,.section-head,.card,.panel,.notice{background:rgba(255,254,249,.97);border:1px solid var(--line);box-shadow:var(--shadow)}.hero{border-radius:24px;padding:26px 28px;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:0 auto 0 0;width:7px;background:linear-gradient(var(--orange),var(--purple),var(--blue),var(--green))}.eyebrow{color:var(--orange);font-size:.73rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.hero h1{font-size:clamp(1.9rem,3vw,3.3rem);letter-spacing:-.045em;line-height:1.02;margin:.3rem 0 .7rem}.hero p{max-width:880px;color:#4d4841;margin:.35rem 0}.stats,.filters{display:flex;gap:8px;flex-wrap:wrap}.stats{margin-top:15px}.pill,.chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 10px;font-size:.79rem}.chip{cursor:pointer;font-weight:800}.chip.active{background:#1f1e1b;color:#fff;border-color:#1f1e1b}.chip[data-level="fondamentale"].active{background:var(--orange);border-color:var(--orange)}.chip[data-level="geometria"].active{background:var(--blue);border-color:var(--blue)}.chip[data-level="errata"].active{background:var(--red);border-color:var(--red)}.quick{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.quick button{border:1px solid var(--line);border-top:4px solid var(--orange);background:rgba(255,254,249,.97);border-radius:16px;padding:13px;text-align:left;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.03)}.quick button:nth-child(2){border-top-color:var(--purple)}.quick button:nth-child(3){border-top-color:var(--blue)}.quick button:nth-child(4){border-top-color:var(--green)}.quick b{display:block}.quick span{font-size:.78rem;color:var(--muted)}.filters{align-items:center;margin:14px 0 18px}.result{margin-left:auto;color:var(--muted);font-size:.8rem}.section{margin:0 0 24px}.section-head{position:relative;border-radius:18px;padding:15px 17px;margin-bottom:10px}.section-head h2{font-size:1.2rem;margin:0;padding-right:75px}.section-head p{margin:.25rem 0 0;color:var(--muted);font-size:.86rem}.section-head .count{position:absolute;right:14px;top:14px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:4px 8px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card{border-radius:17px;padding:14px;position:relative;min-width:0;box-shadow:0 4px 16px rgba(0,0,0,.035);border-left:4px solid var(--orange)}.card[data-level="geometria"]{border-left-color:var(--blue)}.card[data-level="errata"]{border-left-color:var(--red)}.card.favorite{box-shadow:inset 0 0 0 1px #e8c878,0 6px 18px rgba(0,0,0,.04)}.card-top{display:flex;gap:8px;align-items:flex-start;justify-content:space-between}.card h3{font-size:1rem;line-height:1.25;margin:1px 0}.meta{display:flex;gap:5px;align-items:center}.mini{font-size:.66rem;border:1px solid var(--line);background:#fff;border-radius:999px;padding:3px 7px;color:#696158;white-space:nowrap}.fav{border:0;background:transparent;cursor:pointer;font-size:1.16rem;color:#9c8d78}.favorite .fav{color:#b88917}.formula{margin:11px 0 9px;background:#fff;border:1px solid #d9d1c4;border-radius:13px;padding:13px 40px 13px 10px;min-height:66px;display:grid;place-items:center;position:relative;overflow-x:auto;cursor:pointer}.formula:hover{border-color:var(--orange);background:#fff9f4}.page-tag{position:absolute;right:8px;top:8px;font:800 .65rem/1 system-ui;color:#8e8478;background:#f5f0e8;border-radius:99px;padding:4px 6px}.card p{font-size:.85rem;margin:.38rem 0;color:#49443e}.label{font-weight:850}.details{margin-top:7px;border-top:1px dashed #ded6ca}.details summary{cursor:pointer;color:#665f56;font-size:.77rem;font-weight:800;padding:7px 0 2px}.details div{font-size:.8rem;color:#5f5850;padding:3px 0}.actions{display:flex;gap:7px;margin-top:9px}.actions button{border:1px solid var(--line);background:#fff;border-radius:9px;padding:6px 9px;cursor:pointer;font-size:.74rem;font-weight:800}.actions button:hover{border-color:#bfb4a4}.actions .source{color:var(--blue)}.empty{display:none;text-align:center;padding:40px 15px;color:var(--muted)}.empty.show{display:block}.view[hidden]{display:none!important}.panel{border-radius:20px;padding:18px;margin-bottom:12px}.panel h2{margin:0 0 4px}.derivation{background:#fff;border:1px solid var(--line);border-radius:14px;margin:8px 0;overflow:hidden}.derivation summary{cursor:pointer;padding:12px 14px;font-weight:850;display:flex;justify-content:space-between;gap:10px}.derivation .inside{padding:0 14px 14px;color:#48423c}.derivation .inside p{margin:.5rem 0}.notice{border-radius:16px;padding:14px;margin:12px 0;border-left:4px solid var(--red)}.errata-row{display:grid;grid-template-columns:55px 220px 1fr;gap:10px;padding:10px 0;border-bottom:1px dashed var(--line)}.errata-row:last-child{border:0}.footer{color:var(--muted);font-size:.78rem;margin:24px 4px}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:#1e1d1a;color:#fff;padding:9px 13px;border-radius:10px;opacity:0;pointer-events:none;transition:.18s;z-index:80}.toast.show{opacity:1;transform:translate(-50%,0)}.mobile-nav{display:none}.backdrop{display:none}.pdf-off{color:var(--red)!important}mjx-container[jax="SVG"]{max-width:100%;margin:.2em 0!important}.formula mjx-container svg{max-width:none}@media(max-width:1050px){.grid{grid-template-columns:1fr}.quick{grid-template-columns:1fr 1fr}}@media(max-width:780px){:root{--side:284px}.app{display:block}.sidebar{position:fixed;left:-300px;top:0;width:var(--side);transition:.2s;box-shadow:12px 0 28px rgba(0,0,0,.13)}.sidebar.open{left:0}.menu{display:block;height:42px;width:42px;border:1px solid var(--line);border-radius:11px;background:#fff}.topbar{padding:10px 12px}.ghost{display:none}.page{padding:14px 12px 76px}.hero{padding:22px 18px}.quick{grid-template-columns:1fr 1fr}.kbd{display:none}.search input{padding-right:12px}.result{width:100%;margin-left:0}.mobile-nav{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;left:0;right:0;bottom:0;z-index:40;background:rgba(255,254,250,.97);border-top:1px solid var(--line);padding:7px 8px calc(7px + env(safe-area-inset-bottom))}.mobile-nav button{border:0;background:transparent;padding:9px 4px;font-size:.74rem;font-weight:850;color:#6e675e}.mobile-nav button.active{color:var(--orange)}.backdrop{position:fixed;inset:0;background:rgba(0,0,0,.25);z-index:29}.backdrop.show{display:block}.errata-row{grid-template-columns:45px 1fr}.errata-row div{grid-column:1/-1}}@media(max-width:480px){.quick{grid-template-columns:1fr}.formula{font-size:.92rem}.section-head h2{font-size:1.05rem}.card{padding:12px}}@media print{.sidebar,.topbar,.quick,.filters,.mobile-nav,.actions,.fav,.toast{display:none!important}.app{display:block}.page{max-width:none;padding:0}.hero,.card,.section-head,.panel{box-shadow:none}.grid{grid-template-columns:1fr 1fr}.card{break-inside:avoid}}
