/* 1. lo stile della pagina iniziale (scrivania/inizio.html), copiato da costruisci_catalogo.py */
:root{--bg:#d3c7ab;--panel:#ddd3bb;--ink:#14171c;--muted:#3e4046;--muted2:#575a5f;--rule:#a79b7f;--grid:#c3b697;--soft:#c6b99b;--audio:#c4531a;--audio2:#e08a3c;--midi:#2d5cb0;--cv:#2a8558;--digitale:#0f7f8c;--clock:#8a4fb0;--alimentazione:#9a3b3b;--dubbio:#b26a00}
:root[data-theme="dark"]{--bg:#15171a;--panel:#1c1e22;--ink:#ecebe4;--muted:#b8bcc2;--muted2:#9a9fa6;--rule:#33363c;--grid:#2a2d33;--soft:#23262b;--audio:#f08a4b;--audio2:#f3a86d;--midi:#82a8f2;--cv:#5dc992;--digitale:#4fc3d0;--clock:#c08ee6;--alimentazione:#e07f7f;--dubbio:#f0b45a;color-scheme:dark}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--bg:#15171a;--panel:#1c1e22;--ink:#ecebe4;--muted:#b8bcc2;--muted2:#9a9fa6;--rule:#33363c;--grid:#2a2d33;--soft:#23262b;--audio:#f08a4b;--audio2:#f3a86d;--midi:#82a8f2;--cv:#5dc992;--digitale:#4fc3d0;--clock:#c08ee6;--alimentazione:#e07f7f;--dubbio:#f0b45a;color-scheme:dark}}
html{scroll-behavior:smooth}
@media (max-width:900px){.m-cinque{grid-template-columns:repeat(2,minmax(0,1fr))!important}.m-tre{grid-template-columns:1fr!important}.m-due{grid-template-columns:1fr!important}}

body{margin:0;background:var(--bg);color:var(--ink);font-family:"Archivo",system-ui,sans-serif}
a{color:var(--ink)}a:hover{color:var(--audio)}
.m-grid{background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:32px 32px}
.m-mono{font-family:"JetBrains Mono",ui-monospace,monospace}
.m-btn{display:inline-flex;align-items:center;gap:10px;height:52px;padding:0 24px;border:2px solid var(--ink);background:var(--ink);color:var(--bg);font:700 16px "Archivo",sans-serif;text-decoration:none}
.m-btn:hover{background:var(--audio);border-color:var(--audio);color:var(--panel)}
.m-btn.ghost{background:transparent;color:var(--ink)}
.m-btn.ghost:hover{background:var(--ink);color:var(--bg)}
.m-lingua select{height:44px;padding:0 10px;border:1.5px solid var(--ink);background:var(--panel);color:var(--ink);font:500 13px 'JetBrains Mono',monospace;cursor:pointer;border-radius:0}
.m-btn.avv{background:transparent;color:var(--muted2);border-style:dashed;border-color:var(--muted2)}.m-btn.avv:hover{background:transparent;color:var(--ink);border-color:var(--ink)}
.m-btn.off{background:transparent;color:var(--muted2);border-style:dashed;border-color:var(--muted2);pointer-events:none;cursor:default}
.m-nav a{text-decoration:none;font:500 15px "Archivo",sans-serif;padding:8px 2px;border-bottom:2px solid transparent}
.m-nav a:hover{border-bottom-color:var(--audio)}
.m-num{font:500 12px "JetBrains Mono",monospace;letter-spacing:.08em}
.m-sec{font:500 26px/1 "JetBrains Mono",monospace;letter-spacing:.04em}
.m-h2{margin:0;font:900 44px/1.02 "Archivo",sans-serif;letter-spacing:-.02em}
.m-p{margin:0;font:400 15px/1.55 "Archivo",sans-serif;color:var(--muted)}
.m-uso{border:1.5px solid var(--ink);background:var(--panel);padding:26px;display:flex;flex-direction:column;gap:12px;min-width:0;border-top-width:8px}
.m-uso h3{margin:0;font:900 28px/1.05 "Archivo",sans-serif;letter-spacing:-.02em}
.m-uso .sub{font:700 15px/1.4 "Archivo",sans-serif}
.m-tile{border:1.5px solid var(--ink);background:var(--panel);padding:14px;display:flex;flex-direction:column;gap:10px;min-width:0}
.m-tile .cap{font:500 11px "JetBrains Mono",monospace;color:var(--muted2);letter-spacing:.06em;text-transform:uppercase}
.m-tile .nm{font:700 16px "Archivo",sans-serif}
.m-row{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid var(--rule);font:400 15px "Archivo",sans-serif}
.m-row b{font-family:"JetBrains Mono",monospace;font-weight:500}
.m-step{border-top:3px solid var(--ink);padding-top:16px;display:flex;flex-direction:column;gap:8px;min-width:0}
.m-step b{font:700 18px "Archivo",sans-serif}
.m-step span{font:400 15px/1.5 "Archivo",sans-serif;color:var(--muted)}
.m-pr{position:relative;border:1.5px solid var(--ink);background:var(--panel);padding:26px;display:flex;flex-direction:column;gap:14px;min-width:0}
.m-pr .t{font:900 30px/1 "Archivo",sans-serif;letter-spacing:-.02em}
.m-pr .pz{font:500 14px "JetBrains Mono",monospace;color:var(--muted)}
.m-pr ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;font:400 14px/1.45 "Archivo",sans-serif}
.m-pr li{display:flex;gap:10px;align-items:flex-start}
.m-pr li::before{content:"";width:8px;height:8px;margin-top:6px;flex:none;background:var(--ink)}
.m-pr li.no{color:#8A8F96}.m-pr li.no::before{background:transparent;border:1.5px solid var(--rule);box-sizing:border-box}
.m-chip{display:inline-flex;align-items:center;height:30px;padding:0 12px;border:1.5px solid var(--ink);background:var(--panel);font:500 11.5px "JetBrains Mono",monospace;letter-spacing:.06em;text-transform:uppercase}
/* 20/10 (registrazione): chi è dentro vede la sua email nella testata, al posto di «Entra» */
.conto-home{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 14px;border:1.5px solid var(--ink);background:var(--panel);color:var(--ink);font:500 12px "JetBrains Mono",monospace;max-width:min(100%,280px);min-width:0;text-decoration:none;box-sizing:border-box}
.conto-home:hover{background:var(--soft);color:var(--ink)}
.conto-home i{width:8px;height:8px;border-radius:50%;background:#2a8558;flex:none}
.conto-home span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* 2. le regole del catalogo (scrivania/catalogo-web/stile.css) */
/* i colori dei segnali che la pagina iniziale non ha (computer, pedale, massa): gli stessi dell'editor (modello.html) */
:root{--computer:#5c6170;--pedale:#7a5c04;--massa:#4e4934}
:root[data-theme="dark"]{--computer:#a3a8b6;--pedale:#dcb84a;--massa:#b5ae8e}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--computer:#a3a8b6;--pedale:#dcb84a;--massa:#b5ae8e}}
.pagina{max-width:1440px;margin:0 auto;box-sizing:border-box;display:flex;flex-direction:column;min-width:0}
.testata{display:flex;flex-wrap:wrap;align-items:center;gap:24px;padding:22px 48px;border-bottom:2px solid var(--ink)}
.testata .marchio{display:flex;align-items:baseline;gap:12px;flex:1 1 300px;min-width:0}
.testata .marchio a{font:900 22px/1 "Archivo",sans-serif;letter-spacing:-.02em;text-decoration:none;color:var(--ink)}
.m-h1{margin:0;font:900 48px/1.02 "Archivo",sans-serif;letter-spacing:-.03em;overflow-wrap:anywhere}
.m-sec-t{margin:32px 0 12px;font:900 26px/1.05 "Archivo",sans-serif;letter-spacing:-.02em}
.intro{padding:56px 48px 28px;border-bottom:2px solid var(--ink);display:flex;flex-direction:column;gap:16px}
.filtri{padding:20px 48px;border-bottom:2px solid var(--ink);display:flex;flex-direction:column;gap:14px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 12px;border:1.5px solid var(--ink);background:var(--panel);color:var(--ink);font:500 12px "JetBrains Mono",monospace;letter-spacing:.04em;cursor:pointer;border-radius:0}
.chip b{font-weight:500;color:var(--muted2)}
.chip[aria-pressed="true"]{background:var(--ink);color:var(--bg)}.chip[aria-pressed="true"] b{color:var(--bg)}
.chip:hover{border-color:var(--audio)}
.cerca{display:flex;flex-wrap:wrap;gap:10px}
.cerca input,.cerca select{height:44px;padding:0 12px;border:1.5px solid var(--ink);background:var(--panel);color:var(--ink);font:500 14px "Archivo",sans-serif;border-radius:0;min-width:0;box-sizing:border-box;max-width:100%}
.cerca input{flex:1 1 240px}.cerca select{flex:0 1 260px}
.griglia{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px;padding:24px 48px 48px}
.tess{text-decoration:none;color:inherit}.tess:hover{border-color:var(--audio);color:inherit}
.mini{display:grid;place-items:center;background:#191c1e;border-radius:3px;padding:10px;min-height:110px;box-sizing:content-box}
.mini svg{display:block;width:100%;height:110px}
.tess .ct2{font:400 13px "Archivo",sans-serif;color:var(--muted)}
.tess .fuori{font:500 11px "JetBrains Mono",monospace;color:var(--dubbio);letter-spacing:.06em;text-transform:uppercase}
#vuoto{margin:0;padding:0 48px 48px;font:400 15px "Archivo",sans-serif;color:var(--muted)}
.briciole{font-size:12px;color:var(--muted2);letter-spacing:.04em;display:flex;flex-wrap:wrap;gap:8px;padding:14px 48px;border-bottom:1px solid var(--rule)}
.briciole a{color:inherit;text-decoration:none}.briciole a:hover{color:var(--audio)}
.scheda{padding:40px 48px 64px;display:flex;flex-direction:column;gap:8px;min-width:0}
.scheda .sopra{display:flex;flex-wrap:wrap;gap:40px;align-items:flex-start}
.scheda .testa{flex:1 1 400px;min-width:0;display:flex;flex-direction:column;gap:16px}
.scheda .disegno{flex:1 1 440px;min-width:0;margin:0;display:flex;flex-direction:column;gap:8px}
.tela{display:grid;place-items:center;background:#191c1e;border:1.5px solid var(--ink);border-radius:3px;padding:18px;min-height:200px;box-sizing:border-box}
.tela svg{display:block;width:100%;height:auto;max-height:520px}
.serve{margin:0;font:400 18px/1.5 "Archivo",sans-serif;color:var(--muted);max-width:70ch}
.azioni{display:flex;flex-wrap:wrap;gap:12px}
.car{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font:400 15px/1.5 "Archivo",sans-serif;max-width:80ch}
.car li{display:flex;gap:10px}.car li::before{content:"";width:8px;height:8px;margin-top:8px;flex:none;background:var(--ink)}
.tablebox{border:1.5px solid var(--ink);background:var(--panel);overflow:auto;max-width:100%}
.tablebox table{border-collapse:collapse;width:100%;font:400 14.5px/1.4 "Archivo",sans-serif}
.tablebox th{text-align:left;font:500 11px "JetBrains Mono",monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--muted2);padding:10px 12px;border-bottom:1.5px solid var(--ink)}
.tablebox td{padding:10px 12px;border-bottom:1px solid var(--rule);vertical-align:top}
.tablebox td.k{white-space:nowrap}.tablebox td small{display:block;color:var(--muted2);font-size:12px}
.tablebox td.n{max-width:46ch;color:var(--muted)}
.sw{display:inline-block;width:10px;height:10px;margin-right:8px;vertical-align:middle;border-radius:1px;flex:none}
.v{display:inline-block;font:500 11px "JetBrains Mono",monospace;letter-spacing:.04em;padding:2px 6px;border:1px solid;white-space:nowrap}
.v.ok{color:var(--cv);border-color:var(--cv)}.v.vi{color:var(--midi);border-color:var(--midi)}.v.du{color:var(--dubbio);border-color:var(--dubbio)}
.legenda{font:400 13px "Archivo",sans-serif;color:var(--muted2);margin:8px 0 0}
.plist{display:none}
.plist details{border:1.5px solid var(--ink);background:var(--panel);margin-bottom:-1.5px}
.plist summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;font:400 15px "Archivo",sans-serif;list-style:none}
.plist summary small{color:var(--muted2);font-size:12px}
.plist .pd{display:flex;flex-direction:column;gap:6px;padding:0 12px 12px 30px;font:400 14px/1.45 "Archivo",sans-serif;color:var(--muted)}
.perche{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px;font:400 15px/1.55 "Archivo",sans-serif;max-width:80ch}
.perche li{padding-left:18px;border-left:3px solid var(--ink)}.perche small{color:var(--muted2);font-size:12px}
.mappa{margin:10px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px;font:400 13px/1.5 "JetBrains Mono",monospace;color:var(--muted)}
.warn{border:1.5px solid var(--dubbio);border-left-width:8px;background:var(--panel);padding:14px 18px;display:flex;flex-direction:column;gap:8px;max-width:90ch;overflow-wrap:anywhere}
.warn p{margin:0;font:400 14.5px/1.5 "Archivo",sans-serif}
.warn.testa{border-color:var(--audio)}
.fonte{margin-top:32px;border:1.5px solid var(--ink);border-top-width:8px;background:var(--panel);padding:20px 24px;display:flex;flex-direction:column;gap:10px;max-width:90ch;overflow-wrap:anywhere}
.fonte .src{margin:0;font:400 15px/1.5 "Archivo",sans-serif}.fonte .piccolo{font-size:13px}
.pan figure{margin:14px 0 0}.pan img{display:block;width:100%;height:auto;border:1.5px solid var(--ink);background:#fff;box-sizing:border-box}
.pan figcaption{font:500 11px "JetBrains Mono",monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--muted2);margin-top:6px}
.piede{display:flex;flex-wrap:wrap;align-items:flex-end;gap:32px;padding:40px 48px;border-top:2px solid var(--ink)}
@media (max-width:900px){
  .testata,.intro,.filtri,.griglia,.briciole,.scheda,.piede{padding-left:16px;padding-right:16px}#vuoto{padding-left:16px;padding-right:16px}
  .m-h1{font-size:34px}.m-h2{font-size:32px}.intro{padding-top:36px}
  .tablebox{display:none}.plist{display:block}.tela svg{max-height:320px}
  .griglia{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.mini{min-height:80px}.mini svg{height:80px}
}
.legenda-fonti{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:2px}
.chips.sotto{padding-left:14px;border-left:3px solid var(--rule)}
.sc{margin:0;font-size:14px}.sc b{font-weight:700}
