@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(../fonts/sora-latin-ext-500-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(../fonts/sora-latin-500-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(../fonts/sora-latin-ext-600-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(../fonts/sora-latin-600-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(../fonts/sora-latin-ext-700-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(../fonts/sora-latin-700-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(../fonts/dm-sans-latin-ext-400-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(../fonts/dm-sans-latin-400-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(../fonts/dm-sans-latin-ext-500-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(../fonts/dm-sans-latin-500-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(../fonts/dm-sans-latin-ext-700-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(../fonts/dm-sans-latin-700-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
:root {
  --sfondo: #050f26;
  --sfondo-2: #0a1f4d;
  --vetro: rgba(255, 255, 255, 0.07);
  --vetro-forte: rgba(255, 255, 255, 0.11);
  --bordo: rgba(255, 255, 255, 0.14);
  --bordo-forte: rgba(140, 200, 255, 0.38);
  --testo: #eaf2ff;
  --testo-2: #cfe0fb;
  --tenue: #9fbbe6;
  --blu: #6fb6ff;
  --ciano: #5ee1ff;
  --ambra: #ffb547;
  --verde: #4ade80;
  --rosso: #ff7a7a;
  --link: #a9cdff;
  --raggio: 20px;
  --raggio-p: 12px;
  --ombra-blu: 0 10px 40px rgba(40, 120, 255, 0.3);
  --font-titoli: "Sora", system-ui, sans-serif;
  --font: "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
}
* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; }
html { background: #050f26; }
body {
  font-family: var(--font);
  font-size: 15px;
  line-height: 1.45;
  color: var(--testo);
  background: var(--sfondo);
  -webkit-font-smoothing: antialiased;
}
.sfondo { min-height: 100vh; position: relative; isolation: isolate; background: var(--sfondo); }
.sfondo::before {
  content: ""; position: fixed; top: 0; left: 0; right: 0; height: 130vh; height: calc(100lvh + 30vh); z-index: -1; pointer-events: none; transform: translateZ(0);
  background:
    radial-gradient(900px 600px at 85% -10%, rgba(64, 140, 255, 0.45), transparent 60%),
    radial-gradient(700px 500px at -5% 77%, rgba(40, 200, 255, 0.22), transparent 60%),
    linear-gradient(160deg, var(--sfondo-2) 0%, var(--sfondo) 70%);
}
a { color: var(--link); text-decoration: none; transition: color .15s; }
a:hover, a:focus-visible { color: #fff; text-decoration: none; }
a.freccia::after { content: " →"; transition: margin .15s; }
a.freccia:hover::after { margin-left: 3px; }
h1, h2, h3 { font-family: var(--font-titoli); font-weight: 600; margin: 0; }
h1 { font-size: 28px; }
h2 { font-size: 18px; }
h3 { font-size: 16px; }
code, .mono { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 13px; }
.tenue { color: var(--tenue); }
.piccolo { font-size: 13px; }
[hidden] { display: none !important; }
.vetro {
  background: var(--vetro);
  border: 1px solid var(--bordo);
  border-radius: var(--raggio);
  isolation: isolate;
}
.velo > .vetro, .sugg-app.vetro, .pannello-notifiche.vetro { -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); }
.pannello { padding: 20px; }
.pannello > * + * { margin-top: 14px; }
.evidenza { border-color: var(--bordo-forte); box-shadow: var(--ombra-blu); }
.logo-bagliore { filter: drop-shadow(0 0 10px rgba(90, 180, 255, 0.9)); }
.marchio { display: flex; align-items: center; gap: 10px; }
.marchio strong { display: block; font-family: var(--font-titoli); font-size: 19px; }
.marchio strong em { font-style: normal; color: #4ade80; }
.marchio span { display: block; font-size: 10px; color: var(--tenue); letter-spacing: 1.4px; text-transform: uppercase; white-space: nowrap; }
.marchio-grande strong { font-size: 24px; }
.marchio-grande span { font-size: 11px; }
.bottone {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 44px; padding: 0 18px;
  border: 1px solid var(--bordo); border-radius: var(--raggio-p);
  background: var(--vetro-forte); color: var(--testo);
  font: inherit; font-weight: 700; cursor: pointer;
  transition: background .15s, border-color .15s, box-shadow .15s, color .15s;
}
.bottone:hover { background: rgba(255, 255, 255, 0.16); color: #fff; }
.bottone.primario {
  border: 0; color: #04122e;
  background: linear-gradient(135deg, var(--blu), var(--ciano));
  box-shadow: 0 6px 24px rgba(80, 170, 255, 0.45);
}
.bottone.primario:hover { color: #04122e; box-shadow: 0 8px 30px rgba(80, 170, 255, 0.65); }
.bottone.avvertenza { border-color: rgba(255, 181, 71, 0.6); color: #ffcf85; background: rgba(255, 181, 71, 0.08); }
.bottone.pericolo { border-color: rgba(255, 122, 122, 0.6); color: #ffb3b3; background: rgba(255, 122, 122, 0.08); }
.bottone.piccolo { min-height: 36px; padding: 0 12px; font-size: 14px; }
.bottone[disabled] { opacity: .5; cursor: default; }
.bottone-icona { width: 44px; padding: 0; }
label { display: flex; flex-direction: column; gap: 6px; font-size: 14px; color: var(--testo-2); }
.campo {
  width: 100%; min-height: 44px; padding: 10px 12px;
  border: 1px solid var(--bordo); border-radius: var(--raggio-p);
  background: rgba(255, 255, 255, 0.06); color: var(--testo);
  font: inherit; outline: none;
  transition: border-color .15s, box-shadow .15s;
}
.campo:focus { border-color: var(--bordo-forte); box-shadow: 0 0 0 3px rgba(110, 180, 255, 0.2); }
select.campo option { background: #0a1f4d; color: var(--testo); }
select.campo optgroup { background: #0a1f4d; color: var(--ciano, #5ee1ff); font-style: normal; }
select.campo {
  -webkit-appearance: none; appearance: none; padding-right: 36px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23a9c4ee' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 12px center; background-size: 12px 8px;
}
select.campo:focus { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%237cc4ff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
select.campo::-ms-expand { display: none; }
:root { color-scheme: dark; }
textarea.campo { resize: vertical; }
.spunta { flex-direction: row; align-items: center; gap: 10px; }
.spunta input { width: 18px; height: 18px; accent-color: var(--ciano); }
.gruppo-campo { display: flex; flex-direction: column; gap: 6px; font-size: 14px; color: var(--testo-2); min-width: 0; }
.gruppo-campo > label { display: block; }
.campo-icona { position: relative; }
.campo-icona .campo { padding-right: 44px; }
.campo-icona.con-occhio .campo { padding-right: 80px; }
.campo-icona .esito {
  position: absolute; right: 12px; top: 50%; transform: translateY(-50%);
  width: 22px; height: 22px; border-radius: 50%; display: none;
  align-items: center; justify-content: center; font-size: 13px; font-weight: 700; pointer-events: none;
}
.campo-icona.con-occhio .esito { right: 50px; }
.campo-icona[data-stato="si"] .esito, .campo-icona[data-stato="no"] .esito { display: flex; }
.campo-icona[data-stato="si"] .esito { color: #04122e; background: var(--verde); box-shadow: 0 0 10px rgba(74, 222, 128, 0.6); }
.campo-icona[data-stato="si"] .esito::before { content: "✓"; }
.campo-icona[data-stato="no"] .esito { color: #2a0707; background: var(--rosso); box-shadow: 0 0 10px rgba(255, 122, 122, 0.55); }
.campo-icona[data-stato="no"] .esito::before { content: "✕"; }
.campo-icona[data-stato="si"] .campo { border-color: rgba(74, 222, 128, 0.55); }
.campo-icona[data-stato="no"] .campo { border-color: rgba(255, 122, 122, 0.6); }
.occhio {
  position: absolute; right: 2px; top: 50%; transform: translateY(-50%);
  width: 44px; height: 40px; border: 0; border-radius: 10px; background: transparent;
  color: var(--tenue); cursor: pointer; display: flex; align-items: center; justify-content: center; transition: color .15s;
}
.occhio:hover, .occhio[aria-pressed="true"] { color: #fff; }
.tel { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 8px; }
.tel select.campo { padding-left: 10px; padding-right: 26px; background-position: right 8px center; }
.requisiti-pw { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 4px 16px; font-size: 13px; color: var(--tenue); }
.requisiti-pw li::before { content: "•"; display: inline-block; width: 16px; font-weight: 700; }
.requisiti-pw li.ok { color: #c6f7d8; }
.requisiti-pw li.ok::before { content: "✓"; color: var(--verde); }
.requisiti-pw li.ko { color: #ffc9c9; }
.requisiti-pw li.ko::before { content: "✕"; color: var(--rosso); }
.griglia2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.griglia2 .intera { grid-column: 1 / -1; }
@media (max-width: 560px) { .griglia2 { grid-template-columns: 1fr; } }
.azioni { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.azioni.fine { justify-content: flex-end; }
.avviso { padding: 12px 16px; border-radius: var(--raggio-p); border: 1px solid var(--bordo); background: var(--vetro); }
.avviso.errore { border-color: rgba(255, 122, 122, 0.5); background: rgba(255, 122, 122, 0.12); color: #ffd6d6; }
.avviso.ok { border-color: rgba(74, 222, 128, 0.45); background: rgba(74, 222, 128, 0.1); color: #d6ffe6; }
.avviso.ambra { border-color: rgba(255, 181, 71, 0.5); background: rgba(255, 181, 71, 0.12); color: #ffe2b5; }
.pillola { display: inline-block; font-size: 13px; font-weight: 700; padding: 4px 11px; border-radius: 999px; white-space: nowrap; }
.p-blu { color: #bfe0ff; background: rgba(80, 150, 255, 0.22); }
.p-ciano { color: #04122e; background: var(--ciano); }
.p-verde { color: #d6ffe6; background: rgba(60, 200, 120, 0.22); }
.pillola.p-ambra, .p-ambra { color: #ffe3b3; background: rgba(255, 181, 71, 0.2); box-shadow: inset 0 0 0 1px rgba(255, 181, 71, 0.5); }
.p-grigio { color: var(--testo-2); background: rgba(255, 255, 255, 0.1); }
.p-rosso { color: #ffd6d6; background: rgba(255, 122, 122, 0.25); }
.install { max-width: 760px; margin: 0 auto; padding: 32px 16px 60px; display: flex; flex-direction: column; gap: 20px; }
.install h2 { margin-top: 22px; }
.requisiti { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 6px 16px; font-size: 14px; }
.requisiti li::before { content: "●"; margin-right: 8px; }
.requisiti li.si::before { color: var(--verde); }
.requisiti li.no::before { color: var(--ambra); }
.accesso { min-height: 100vh; min-height: 100dvh; box-sizing: border-box; display: flex; align-items: center; justify-content: center; padding: 24px 16px; }
.accesso .vetro { width: 100%; max-width: 400px; padding: 28px; display: flex; flex-direction: column; gap: 16px; box-shadow: var(--ombra-blu); }
.accesso .marchio { justify-content: center; margin-bottom: 6px; }
.guscio { min-height: 100vh; padding: 20px; display: flex; flex-wrap: wrap; gap: 20px; align-items: flex-start; }
.laterale { flex: 1 1 240px; max-width: 280px; padding: 22px 14px; display: flex; flex-direction: column; gap: 22px; position: sticky; top: 20px; }
.laterale .marchio { padding: 0 8px; }
.laterale .marchio span { font-size: 9.5px; letter-spacing: 0.6px; }
.menu { display: flex; flex-direction: column; gap: 2px; }
.menu a { display: flex; align-items: center; gap: 12px; min-height: 42px; padding: 0 12px; border-radius: var(--raggio-p); color: #c4d6f5; }
.menu a:hover { background: rgba(255, 255, 255, 0.06); color: #fff; }
.menu a.attivo { background: rgba(110, 180, 255, 0.18); color: #fff; box-shadow: inset 0 0 0 1px rgba(140, 200, 255, 0.35); }
.menu a .conta { margin-left: auto; font-size: 12px; font-weight: 700; background: var(--ambra); color: #2a1a00; border-radius: 999px; padding: 1px 8px; }
.menu a.futuro { opacity: .55; }
.menu svg, .icona { width: 20px; height: 20px; flex: none; stroke: currentColor; fill: none; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.chi { margin-top: auto; display: flex; align-items: center; gap: 10px; padding: 12px; border-radius: 14px; background: rgba(255, 255, 255, 0.05); }
.chi .avatar { width: 36px; height: 36px; border-radius: 50%; flex: none; display: flex; align-items: center; justify-content: center; font-weight: 700; color: #04122e; background: linear-gradient(135deg, #3d8bff, var(--ciano)); }
.chi div { display: flex; flex-direction: column; font-size: 13px; min-width: 0; }
.chi strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.contenuto { flex: 999 1 560px; min-width: 0; display: flex; flex-direction: column; gap: 20px; }
.testata { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 14px; }
.testata .sopra { color: var(--tenue); font-size: 14px; }
.kpi { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 16px; }
.kpi .vetro { padding: 18px 20px; display: flex; flex-direction: column; gap: 4px; }
.kpi .numero { font-family: var(--font-titoli); font-size: 34px; font-weight: 600; }
.kpi .etichetta { color: #a9c3ea; font-size: 14px; }
.colonne { display: flex; flex-wrap: wrap; gap: 20px; align-items: flex-start; }
.colonne > .larga { flex: 2 1 520px; min-width: 0; }
.colonne > .stretta { flex: 1 1 300px; min-width: 0; display: flex; flex-direction: column; gap: 20px; }
.titolo-blocco { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.elenco { display: flex; flex-direction: column; gap: 8px; }
.voce { padding: 12px 14px; border-radius: 14px; background: rgba(255, 255, 255, 0.04); display: flex; gap: 12px; align-items: center; }
.voce .ora { font-family: var(--font-titoli); font-weight: 600; width: 52px; flex: none; }
.voce .corpo { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.voce .corpo strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.voce .corpo span { font-size: 13px; color: var(--tenue); }
.punto { width: 10px; height: 10px; border-radius: 50%; flex: none; }
.vuoto { padding: 26px 14px; text-align: center; color: var(--tenue); border-radius: 14px; background: rgba(255, 255, 255, 0.03); }
.tabella-box { overflow-x: auto; }
table.tabella { width: 100%; border-collapse: separate; border-spacing: 0 6px; font-size: 14px; }
.tabella th { text-align: left; font-weight: 500; color: var(--tenue); padding: 4px 12px; white-space: nowrap; }
.tabella td { padding: 12px; background: rgba(255, 255, 255, 0.04); }
.tabella td:first-child { border-radius: 12px 0 0 12px; }
.tabella td:last-child { border-radius: 0 12px 12px 0; }
.tabella tr.spento td { opacity: .55; }
.permessi { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 16px; }
.permessi fieldset { border: 1px solid var(--bordo); border-radius: 14px; padding: 12px 14px; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.permessi legend { padding: 0 6px; font-weight: 700; color: var(--ciano); font-size: 13px; letter-spacing: 1px; text-transform: uppercase; }
.zona {
  border: 2px dashed rgba(140, 200, 255, 0.45); border-radius: 18px; padding: 36px 20px;
  display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center;
  background: rgba(110, 180, 255, 0.06); transition: background .15s, border-color .15s;
}
.zona.sopra { background: rgba(110, 180, 255, 0.16); border-color: var(--ciano); }
.zona .icona { width: 46px; height: 46px; stroke: #7cc4ff; filter: drop-shadow(0 0 12px rgba(90, 180, 255, 0.8)); }
.controlli { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 6px; font-size: 14px; }
.controlli li::before { content: "✓"; color: var(--verde); font-weight: 700; margin-right: 8px; }
.versione-grande { font-family: var(--font-titoli); font-size: 40px; font-weight: 600; text-shadow: 0 0 24px rgba(110, 180, 255, 0.6); }
.gh-novita { display: flex; flex-direction: column; gap: 10px; margin: 12px 0; max-height: 260px; overflow-y: auto; padding-right: 4px; }
.gh-novita > div { padding: 8px 12px; border-radius: 12px; background: rgba(255, 255, 255, 0.05); }
.gh-novita .piccolo { margin-top: 2px; }
.banner-anteprima {
  position: fixed; top: 8px; left: 50%; transform: translateX(-50%); z-index: 70;
  max-width: calc(100% - 24px); padding: 6px 14px; border-radius: 999px;
  font-size: 12px; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  color: #2a1a00; background: var(--ambra); box-shadow: 0 4px 18px rgba(255, 181, 71, 0.45); pointer-events: none;
}
body.in-anteprima { padding-top: 38px; }
.ricerca { position: relative; max-width: 560px; }
.campo-cerca { position: relative; }
.campo-cerca > .icona { position: absolute; left: 13px; top: 50%; transform: translateY(-50%); color: var(--tenue); pointer-events: none; }
.campo-cerca .campo { padding-left: 42px; }
.campo-cerca .campo::-webkit-search-cancel-button { filter: invert(1) opacity(.6); cursor: pointer; }
.suggerimenti {
  position: absolute; left: 0; right: 0; top: calc(100% + 6px); z-index: 30;
  max-height: 380px; overflow: auto; padding: 6px;
  background: rgba(12, 32, 74, 0.96); box-shadow: 0 18px 50px rgba(0, 0, 0, 0.5);
}
.sugg { display: flex; align-items: center; gap: 12px; padding: 9px 10px; border-radius: 12px; cursor: pointer; }
.sugg:hover, .sugg[aria-selected="true"] { background: rgba(110, 180, 255, 0.18); }
.sugg .avatar { width: 34px; height: 34px; flex: none; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 700; color: #04122e; background: linear-gradient(135deg, #3d8bff, var(--ciano)); }
.sugg .testi { display: flex; flex-direction: column; min-width: 0; }
.sugg .testi strong { font-size: 15px; }
.sugg .testi span { font-size: 13px; color: var(--tenue); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sugg-vuoto { padding: 12px; color: var(--tenue); text-align: center; }
mark { background: rgba(94, 225, 255, 0.28); color: #fff; border-radius: 4px; padding: 0 1px; }
.tabella tr.scelto td { background: rgba(110, 180, 255, 0.14); }
.tabella tr[hidden] { display: none; }
.azioni-riga { display: flex; justify-content: flex-end; align-items: center; gap: 8px; }
.bottone.piccolo.bottone-icona { width: 40px; padding: 0; }
.torna { display: inline-flex; align-items: center; gap: 4px; font-size: 14px; margin-bottom: 4px; }
.torna .icona { width: 16px; height: 16px; }
.anteprima-comandi { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; }
.anteprima-comandi .gruppo-campo { flex: 1 1 260px; }
.dispositivi { display: flex; flex-wrap: wrap; gap: 8px; }
.dispositivi .bottone[aria-pressed="true"] { background: rgba(110, 180, 255, 0.22); border-color: var(--bordo-forte); color: #fff; box-shadow: 0 0 18px rgba(80, 170, 255, 0.35); }
.misure { display: flex; align-items: center; gap: 6px; }
.misure .campo { width: 86px; text-align: center; }
.palco { display: flex; flex-direction: column; align-items: center; gap: 10px; }
.palco .etichetta-misure { font-size: 13px; color: var(--tenue); }
.palco:fullscreen { justify-content: center; background: var(--fondo, #061430); padding: 20px; overflow: auto; }
.cornice { position: relative; overflow: hidden; border-radius: 22px; border: 1px solid var(--bordo-forte); box-shadow: 0 20px 60px rgba(0, 0, 0, 0.45), 0 0 40px rgba(80, 170, 255, 0.18); background: var(--sfondo); }
.cornice iframe { position: absolute; top: 0; left: 0; border: 0; transform-origin: 0 0; background: var(--sfondo); }
.velo { position: fixed; inset: 0; background: rgba(2, 8, 22, 0.6); display: flex; align-items: center; justify-content: center; padding: 16px; z-index: 50; }
.velo > .vetro { width: 100%; max-width: 560px; max-height: calc(100vh - 32px); overflow: auto; background: rgba(12, 32, 74, 0.9); box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5); }
.pila-avvisi { position: fixed; right: 20px; bottom: 20px; z-index: 60; display: flex; flex-direction: column; gap: 8px; align-items: flex-end; max-width: min(360px, calc(100vw - 40px)); }
.notifica-volante { box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45); }
@media (max-width: 860px) {
  .guscio { padding: 12px; gap: 12px; }
  .chi { display: none; }
}
.zona-etichetta { display: inline-flex; align-items: center; gap: 7px; white-space: nowrap; margin-right: 6px; }
.barra-filtri { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.filtri-zona { display: flex; flex-wrap: wrap; gap: 8px; }
.chip-zona {
  display: inline-flex; align-items: center; gap: 8px; min-height: 36px; padding: 0 14px; border-radius: 999px;
  border: 1px solid var(--bordo); background: rgba(255, 255, 255, 0.05); color: var(--testo-2);
  font: inherit; font-size: 14px; font-weight: 700; cursor: pointer; transition: background .15s, border-color .15s, color .15s;
}
.chip-zona:hover { background: rgba(255, 255, 255, 0.11); color: #fff; }
.chip-zona[aria-pressed="true"] { background: rgba(110, 180, 255, 0.22); border-color: var(--bordo-forte); color: #fff; }
.conta-zona { font-weight: 500; color: var(--tenue); }
.segmenti { display: inline-flex; gap: 4px; padding: 4px; border-radius: 12px; background: rgba(255, 255, 255, 0.05); border: 1px solid var(--bordo); }
.segmenti label { flex-direction: row; gap: 0; color: var(--testo-2); }
.segmenti input { position: absolute; opacity: 0; pointer-events: none; }
.segmenti span { display: inline-flex; align-items: center; justify-content: center; min-height: 36px; padding: 0 14px; border-radius: 9px; font-weight: 700; font-size: 14px; cursor: pointer; }
.segmenti input:checked + span { background: rgba(110, 180, 255, 0.24); color: #fff; }
.segmenti input:focus-visible + span { outline: 2px solid var(--ciano); }
.giorni { display: flex; flex-wrap: wrap; gap: 6px; }
.giorno { width: 50px; height: 42px; border-radius: 10px; border: 1px solid var(--bordo); background: rgba(255, 255, 255, 0.04); color: #8fa7cc; font: inherit; font-weight: 700; font-size: 14px; cursor: pointer; }
.giorno[aria-pressed="true"] { background: rgba(110, 180, 255, 0.24); border-color: var(--bordo-forte); color: #fff; }
.colori { display: flex; flex-wrap: wrap; gap: 8px; }
.colore { flex-direction: row; }
.colore input { position: absolute; opacity: 0; }
.colore span { width: 30px; height: 30px; border-radius: 50%; display: block; cursor: pointer; border: 2px solid transparent; }
.colore input:checked + span { border-color: #fff; box-shadow: 0 0 12px rgba(255, 255, 255, 0.5); }
.colore input:focus-visible + span { outline: 2px solid var(--ciano); outline-offset: 2px; }
.griglia-indirizzo { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 1fr) minmax(0, 2fr) minmax(0, 0.8fr); gap: 12px; }
@media (max-width: 640px) { .griglia-indirizzo { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .griglia-indirizzo .ind-via, .griglia-indirizzo .ind-comune { grid-column: 1 / -1; } }
.dati { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 14px 18px; }
.dato { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.dato span { font-size: 12px; color: var(--tenue); }
.dato strong { font-weight: 500; font-size: 15px; overflow-wrap: anywhere; }
.blocco-immobile { border-radius: 16px; padding: 14px; background: rgba(255, 255, 255, 0.04); border: 1px solid transparent; display: flex; flex-direction: column; gap: 10px; }
.blocco-immobile.selezionato { border-color: rgba(140, 200, 255, 0.35); }
.corpo-imm { display: flex; flex-direction: column; min-width: 0; }
.riga-impianto { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 10px 12px; border-radius: 12px; background: rgba(255, 255, 255, 0.05); color: var(--testo); }
.riga-impianto:hover { background: rgba(110, 180, 255, 0.12); color: #fff; }
.riga-impianto.spento { opacity: .55; }
@media (max-width: 560px) { .riga-impianto { grid-template-columns: 1fr; } }
.cella-titolo { display: flex; flex-direction: column; min-width: 0; color: var(--testo); }
.cella-titolo span { font-size: 12px; color: var(--tenue); }
a.cella-titolo:hover strong { color: #fff; }
.tabella-clic tbody tr { cursor: pointer; }
.tabella-clic tbody tr:hover td { background: rgba(110, 180, 255, 0.1); }
.voce-link { color: var(--testo); }
.voce-link:hover { background: rgba(110, 180, 255, 0.12); color: #fff; }
.nota-accesso { padding: 10px 12px; border-radius: 12px; font-size: 14px; color: #ffe8c7; background: rgba(255, 181, 71, 0.1); border: 1px solid rgba(255, 181, 71, 0.35); white-space: pre-line; }
.mappa { height: 280px; border-radius: 14px; overflow: hidden; background: #0d2148; z-index: 0; }
.mappa-grande { height: min(620px, 70vh); }
.mappa-piccola { height: 180px; }
.mappa-scura .leaflet-tile-pane { filter: invert(100%) hue-rotate(185deg) brightness(92%) contrast(88%) saturate(70%); }
.mappa .leaflet-container, .mappa.leaflet-container { background: #0d2148; font: inherit; }
.pin-mappa { background: none; border: 0; }
.mappa .leaflet-popup-content-wrapper, .mappa .leaflet-popup-tip { background: rgba(12, 32, 74, 0.96); color: var(--testo); box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5); }
.mappa .leaflet-popup-content { font-size: 14px; line-height: 1.5; }
.mappa.leaflet-container .leaflet-control-attribution { background: rgba(5, 15, 38, 0.75); color: var(--tenue); }
.mappa.leaflet-container .leaflet-control-attribution a { color: var(--link); }
.mappa .leaflet-bar { border: 1px solid var(--bordo); box-shadow: 0 4px 14px rgba(0, 0, 0, 0.4); }
.mappa .leaflet-bar a { background: rgba(12, 32, 74, 0.92); color: var(--testo); border-bottom-color: var(--bordo); }
.mappa .leaflet-bar a:hover { background: rgba(30, 60, 120, 0.95); color: #fff; }
.icona-file { width: 38px; height: 38px; border-radius: 10px; flex: none; display: flex; align-items: center; justify-content: center; font-size: 10px; font-weight: 700; color: var(--link); background: rgba(110, 180, 255, 0.18); }
.voce a.corpo { color: var(--testo); }
.voce a.corpo:hover strong { color: #fff; }
.zona-piccola { padding: 20px; }
.zona-piccola .icona { width: 32px; height: 32px; }
.barra { height: 8px; border-radius: 99px; background: rgba(255, 255, 255, 0.1); overflow: hidden; margin-top: 6px; }
.barra > div { height: 100%; border-radius: 99px; background: linear-gradient(90deg, var(--blu), var(--ciano)); box-shadow: 0 0 12px rgba(94, 225, 255, 0.7); }
.riga-tipo { display: grid; grid-template-columns: minmax(0, 1fr) auto auto 40px; align-items: center; gap: 12px; }
.riga-tipo .campo[name="nome"] { width: 100%; min-width: 0; }
.riga-tipo .misure .campo { width: 64px; }
.riga-tipo .spunta { white-space: nowrap; }
.riga-tipo .misure { flex-direction: row; align-items: center; gap: 8px; }
.titolo-blocco .bottone { white-space: nowrap; }
@media (max-width: 560px) { .riga-tipo { grid-template-columns: minmax(0, 1fr) auto 40px; } .riga-tipo .campo[name="nome"] { grid-column: 1 / -1; } }
.campo.errore { border-color: rgba(255, 122, 122, 0.8); box-shadow: 0 0 0 3px rgba(255, 122, 122, 0.18); }
.testata.fissa { position: sticky; top: 0; z-index: 30; margin: -12px -16px 0; padding: 12px 16px; align-items: center; border-radius: 0 0 20px 20px; background: rgba(8, 28, 72, 0.78); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border-bottom: 1px solid rgba(255, 255, 255, 0.08); }
.testata.fissa .azioni { flex-wrap: wrap; justify-content: flex-end; }
.bottone .icona { width: 18px; height: 18px; }
.gruppo-campo > span { display: block; }
h3 { margin-top: 6px; }
.griglia3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
@media (max-width: 560px) { .griglia3 { grid-template-columns: 1fr; } }
.blocco-fgas { display: flex; flex-direction: column; gap: 10px; padding: 12px; border-radius: 14px; background: rgba(94, 225, 255, 0.06); border: 1px solid rgba(94, 225, 255, 0.25); }
.blocco-fgas .campo:disabled { opacity: .45; }
.esito-fgas { display: flex; flex-direction: column; gap: 8px; padding: 10px 12px; border-radius: 12px; background: rgba(4, 18, 46, 0.35); font-size: 14px; }
.esito-fgas p { margin: 0; line-height: 1.5; }
.esito-fgas .pillola { margin-right: 6px; }
.esito-fgas-tot { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 18px; }
.esito-fgas-tot strong { font-size: 16px; }
.scad-fgas { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; }
.scad-fgas .bottone { margin-left: auto; }
.blocco-fgas .riga-spunta { align-self: end; min-height: 46px; }
.blocco-fgas label.spunta:has(input:disabled) { cursor: default; }
.blocco-fgas input[type=checkbox]:disabled { opacity: .5; }
.riga-unita { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) 40px; gap: 8px; align-items: center; }
@media (max-width: 560px) { .riga-unita { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 40px; } .riga-unita [data-u="modello"] { display: none; } }
.elenco-piccolo { display: flex; flex-direction: column; gap: 4px; }
.riga-unita-vista { display: flex; justify-content: space-between; gap: 12px; padding: 8px 12px; border-radius: 10px; background: rgba(255, 255, 255, 0.04); font-size: 14px; }
.riga-unita-vista span { color: var(--tenue); text-align: right; }
.blocco-fgas-vista { display: flex; flex-direction: column; gap: 8px; padding: 12px; border-radius: 14px; background: rgba(94, 225, 255, 0.06); border: 1px solid rgba(94, 225, 255, 0.25); }
.apparecchio .dati { grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); }
.galleria { display: flex; flex-wrap: wrap; gap: 8px; }
.miniatura { width: 84px; height: 84px; border-radius: 12px; overflow: hidden; padding: 0; border: 1px solid var(--bordo); background: rgba(255, 255, 255, 0.05); cursor: pointer; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 2px; color: var(--tenue); font-size: 12px; font-weight: 700; }
.miniatura img { width: 100%; height: 100%; object-fit: cover; display: block; }
.miniatura:hover { border-color: var(--bordo-forte); color: #fff; }
.miniatura.aggiungi { border-style: dashed; border-color: rgba(140, 200, 255, 0.45); }
.miniatura.aggiungi .icona { width: 22px; height: 22px; }
.velo .vetro.velo-largo { max-width: 1000px; }
.lightbox { display: flex; align-items: center; justify-content: center; background: rgba(0, 0, 0, 0.35); border-radius: 14px; min-height: 240px; }
.lightbox img { max-width: 100%; max-height: calc(100vh - 220px); border-radius: 10px; display: block; }
html.con-velo { overflow: hidden; }
.velo .vetro.velo-form { max-width: 880px; padding: 0 22px; display: block; }
.velo .vetro.velo-form > form { display: flex; flex-direction: column; gap: 14px; }
.velo .vetro.velo-form > form > * + * { margin-top: 0; }
.testa-modale {
  position: sticky; top: 0; z-index: 3; margin: 0 -22px; padding: 18px 22px 12px;
  background: rgba(12, 32, 74, 0.97); border-bottom: 1px solid var(--bordo);
  display: flex; flex-direction: column; gap: 12px;
}
.velo-form form > .azioni.fine {
  position: sticky; bottom: 0; z-index: 3; margin: 0 -22px; padding: 12px 22px calc(12px + env(safe-area-inset-bottom));
  background: rgba(12, 32, 74, 0.97); border-top: 1px solid var(--bordo);
}
.velo-form form > [data-err] { position: sticky; bottom: 70px; z-index: 3; }
.velo-form form > :last-child { margin-bottom: 0; }
.schede-modale { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; margin: 0 -4px; padding: 0 4px; }
.schede-modale::-webkit-scrollbar { display: none; }
.scheda-tab {
  flex: none; min-height: 40px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--bordo);
  background: rgba(255, 255, 255, 0.05); color: var(--testo-2); font: inherit; font-size: 14px; font-weight: 700; cursor: pointer; white-space: nowrap;
}
.scheda-tab:hover { color: #fff; background: rgba(255, 255, 255, 0.1); }
.scheda-tab[aria-selected="true"] { background: rgba(110, 180, 255, 0.24); border-color: var(--bordo-forte); color: #fff; box-shadow: 0 0 16px rgba(80, 170, 255, 0.3); }
fieldset.pannello-tab, fieldset[data-tab] { border: 0; margin: 0; padding: 0; min-width: 0; display: flex; flex-direction: column; gap: 14px; }
.pannello-tab.tab-nascosta { display: none !important; }
.velo-form form { padding-bottom: 0; }
.velo-form .pannello-tab { padding-top: 4px; min-height: 120px; }
@media (max-width: 900px) {
  .velo { padding: calc(env(safe-area-inset-top) + 28px) calc(env(safe-area-inset-right) + 10px) calc(env(safe-area-inset-bottom) + 16px) calc(env(safe-area-inset-left) + 10px); align-items: stretch; }
  .velo > .vetro { max-height: 100%; }
  .velo:has(> .velo-form) { padding: 0; }
  .velo .vetro.velo-form { max-width: none; width: 100%; max-height: 100%; height: 100%; border-radius: 0; border: 0; }
  .testa-modale { padding-top: calc(28px + env(safe-area-inset-top)); }
}
@media (min-width: 901px) {
  .velo .vetro.velo-form { max-height: calc(100vh - 48px); }
  .velo-form .pannello-tab { min-height: 260px; }
}
.blocco-gruppo { border-radius: 18px; padding: 16px; display: flex; flex-direction: column; gap: 12px; background: linear-gradient(160deg, rgba(94, 225, 255, 0.07), rgba(255, 255, 255, 0.025)); border: 1px solid rgba(140, 200, 255, 0.22); }
.blocco-gruppo > .elenco { padding-left: 12px; border-left: 2px solid rgba(140, 200, 255, 0.25); }
.blocco-gruppo .blocco-immobile { background: rgba(255, 255, 255, 0.035); }
.sottotitolo-elenco { text-transform: uppercase; letter-spacing: 1.5px; margin-top: 4px; }
.link-tenue { color: inherit; text-decoration: none; }
.link-tenue:hover { color: var(--link); }
.scelta-apparecchi .voce { cursor: pointer; align-items: center; }
.scelta-apparecchi .voce .corpo span { display: block; }
.statistiche { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 14px; }
.statistiche .kpi { padding: 16px; border-radius: 16px; background: rgba(255, 255, 255, 0.05); display: flex; flex-direction: column; gap: 4px; }
.statistiche .kpi strong { font-family: var(--font-titoli); font-size: 28px; }
.barre { display: flex; flex-direction: column; gap: 8px; }
.barre .riga-barra { display: grid; grid-template-columns: minmax(90px, 160px) minmax(0, 1fr) 40px; align-items: center; gap: 10px; font-size: 14px; }
.barre .traccia { height: 8px; border-radius: 6px; background: rgba(255, 255, 255, 0.08); overflow: hidden; }
.barre .traccia div { height: 100%; border-radius: 6px; background: linear-gradient(90deg, var(--ciano), #4ade80); }
.tabella-catalogo { width: 100%; border-collapse: collapse; font-size: 14px; }
.tabella-catalogo th { text-align: left; font-weight: 500; color: var(--tenue); padding: 8px 10px; border-bottom: 1px solid rgba(255, 255, 255, 0.08); white-space: nowrap; }
.tabella-catalogo td { padding: 10px; border-bottom: 1px solid rgba(255, 255, 255, 0.05); }
.tabella-catalogo tbody tr { cursor: pointer; }
.tabella-catalogo tbody tr:hover { background: rgba(255, 255, 255, 0.04); }
.tabella-catalogo .num { text-align: right; white-space: nowrap; }
.scorri-x { overflow-x: auto; }
@media (max-width: 640px) { .tabella-catalogo .nascondi-tel { display: none; } }
.apparecchio.compatto { padding: 10px 14px; gap: 6px; }
.apparecchio.compatto .titolo-blocco { flex-wrap: wrap; row-gap: 8px; }
.autocompleta { position: relative; }
.autocompleta .campo { width: 100%; padding-right: 46px; }
.freccia-auto { position: absolute; right: 4px; top: 50%; transform: translateY(-50%); width: 40px; height: 40px; border: 0; background: none; color: var(--tenue); display: flex; align-items: center; justify-content: center; cursor: pointer; border-radius: 10px; }
.freccia-auto:hover { color: var(--testo); background: rgba(255, 255, 255, 0.06); }
.freccia-auto svg { width: 18px; height: 18px; }
.lista-auto { position: absolute; left: 0; right: 0; top: calc(100% + 6px); z-index: 60; max-height: 264px; overflow-y: auto; padding: 6px; border-radius: 14px; background: #0c2560; border: 1px solid rgba(140, 200, 255, 0.28); box-shadow: 0 18px 40px rgba(0, 0, 0, 0.45); display: flex; flex-direction: column; gap: 2px; }
.lista-auto[hidden] { display: none; }
.lista-auto button { text-align: left; padding: 11px 12px; min-height: 44px; border: 0; border-radius: 10px; background: none; color: var(--testo); font: inherit; font-size: 15px; cursor: pointer; }
.lista-auto button:hover, .lista-auto button.attivo { background: rgba(110, 180, 255, 0.18); }
.avviso.verde { border-color: rgba(74, 222, 128, 0.45); background: rgba(74, 222, 128, 0.1); color: #d6ffe4; }
.ag-barra { gap: 12px; }
.ag-riga { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between; }
.ag-nav { display: flex; align-items: center; gap: 10px; }
.ag-nav strong { font-family: var(--font-titoli); font-size: 18px; min-width: 0; }
.ag-gira svg { transform: scaleX(-1); }
.ag-chip-tec i, .ag-tec-nome i { display: inline-block; width: 10px; height: 10px; border-radius: 50%; margin-right: 6px; flex: none; }
.ag-chip-tec[aria-pressed="false"] { opacity: .45; }
.ag-chip-tec .tenue { margin-left: 6px; }
.ag-tec-nome { display: inline-flex; align-items: center; font-weight: 600; white-space: nowrap; }
.ag-legenda { display: flex; flex-wrap: wrap; gap: 14px; font-size: 12.5px; color: var(--tenue); }
.ag-legenda span { display: inline-flex; align-items: center; gap: 6px; }
.ag-legenda i { width: 9px; height: 9px; border-radius: 50%; }
.ag-legenda .ag-leg-dc { width: 16px; height: 10px; border-radius: 3px; background: repeating-linear-gradient(135deg, #3a4b72 0 3px, #5a6c94 3px 6px); }
.ag-corpo { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 20px; align-items: start; }
.ag-corpo-tecnici { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 20px; align-items: start; }
@media (max-width: 1180px) { .ag-corpo, .ag-corpo-tecnici { grid-template-columns: minmax(0, 1fr); } }
.ag-cal { overflow-x: auto; padding-top: 8px; }
.ag-griglia { display: grid; min-width: 560px; }
.ag-gg { padding: 8px 4px 10px; text-align: center; font-size: 13px; color: var(--tenue); border-bottom: 1px solid rgba(255, 255, 255, 0.08); position: sticky; top: 0; }
.ag-gg b { display: block; font-family: var(--font-titoli); font-size: 20px; color: #fff; }
.ag-gg.oggi b { color: var(--ciano); }
.ag-ore div { height: 52px; font-size: 11px; color: #7f97c0; text-align: right; padding-right: 8px; transform: translateY(-7px); }
.ag-col { position: relative; border-left: 1px solid rgba(255, 255, 255, 0.06); background: repeating-linear-gradient(to bottom, transparent 0, transparent 51px, rgba(255, 255, 255, 0.06) 51px, rgba(255, 255, 255, 0.06) 52px); cursor: copy; }
.ag-col.chiuso, .ag-fuori { background-color: rgba(0, 0, 0, 0.18); }
.ag-fuori { position: absolute; left: 0; right: 0; pointer-events: none; }
.ag-adesso { position: absolute; left: 0; right: 0; height: 2px; background: #ff7a7a; box-shadow: 0 0 8px #ff7a7a; pointer-events: none; z-index: 3; }
.ag-ev { position: absolute; z-index: 2; border: 0; text-align: left; font: inherit; cursor: pointer; border-radius: 10px; padding: 5px 7px; font-size: 12px; line-height: 1.3; overflow: hidden; background: color-mix(in srgb, var(--c) 22%, #0b1d48); border-left: 3px solid var(--c); color: #eaf2ff; display: flex; flex-direction: column; gap: 1px; }
.ag-ev:hover { filter: brightness(1.15); }
.ag-ev b { font-size: 12.5px; display: flex; align-items: center; gap: 2px; padding-right: 10px; }
.ag-ev span { color: #b9cbe9; }
.ag-ev.dc { background: repeating-linear-gradient(135deg, color-mix(in srgb, var(--c) 15%, #0b1d48) 0 8px, color-mix(in srgb, var(--c) 26%, #0b1d48) 8px 16px); }
.ag-ev.altra { box-shadow: inset 0 0 0 2px #ff7a7a; }
.ag-ev.fatto { opacity: .55; }
.ag-ev.assenza { background: repeating-linear-gradient(135deg, rgba(138, 155, 184, 0.14) 0 6px, rgba(138, 155, 184, 0.24) 6px 12px); border-left-color: #8a9bb8; z-index: 1; }
.ag-stato { position: absolute; top: 6px; right: 6px; width: 8px; height: 8px; border-radius: 50%; }
.ag-punto { display: inline-block; width: 8px; height: 8px; border-radius: 50%; margin-right: 2px; flex: none; }
.ag-dp { display: flex; flex-direction: column; gap: 8px; max-height: 640px; overflow-y: auto; }
.ag-dp-voce { text-align: left; font: inherit; color: inherit; cursor: pointer; padding: 10px 12px; border-radius: 14px; border: 0; background: rgba(255, 255, 255, 0.05); border-left: 3px solid var(--c); display: flex; flex-direction: column; gap: 3px; }
.ag-dp-voce:hover { background: rgba(255, 255, 255, 0.09); }
.ag-dp-voce strong { font-size: 14px; }
.ag-dp-voce span { font-size: 12.5px; color: #9fb6dc; }
.ag-dp-voce .riga { display: flex; justify-content: space-between; gap: 8px; }
.ag-dp-voce .rosso { color: #ff9b9b; font-weight: 600; }
.ag-mese { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 6px; }
.ag-mese-testa { text-align: center; font-size: 13px; color: var(--tenue); padding: 4px; }
.ag-mese-cella { min-height: 104px; text-align: left; font: inherit; color: inherit; border: 1px solid rgba(255, 255, 255, 0.06); background: rgba(255, 255, 255, 0.035); border-radius: 12px; padding: 6px; display: flex; flex-direction: column; gap: 3px; cursor: pointer; overflow: hidden; }
.ag-mese-cella:hover { background: rgba(255, 255, 255, 0.07); }
.ag-mese-cella.fuori { opacity: .45; }
.ag-mese-cella.oggi { border-color: var(--ciano); }
.ag-mese-num { font-family: var(--font-titoli); font-weight: 600; }
.ag-mese-ev { font-size: 11.5px; padding: 2px 6px; border-radius: 6px; background: color-mix(in srgb, var(--c) 22%, transparent); border-left: 2px solid var(--c); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ag-mese-ev.dc { background: repeating-linear-gradient(135deg, color-mix(in srgb, var(--c) 14%, transparent) 0 5px, color-mix(in srgb, var(--c) 26%, transparent) 5px 10px); }
.ag-mese-ass { font-size: 11px; color: var(--tenue); }
@media (max-width: 700px) { .ag-mese-cella { min-height: 70px; } .ag-mese-ev { font-size: 0; height: 6px; padding: 0; } }
.ag-mappa { height: 300px; }
.ag-num { width: 24px; height: 24px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 700; color: #04122f; flex: none; }
.ag-num.grande { width: 30px; height: 30px; font-size: 14px; box-shadow: 0 0 12px rgba(94, 225, 255, 0.6); border: 2px solid #04122f; }
.ag-tappa { text-align: left; font: inherit; color: inherit; cursor: pointer; border: 0; width: 100%; }
.ag-cerca { position: relative; }
.ag-scelta { background: rgba(94, 225, 255, 0.08); border: 1px solid rgba(94, 225, 255, 0.3); align-items: center; }
.ag-scelta .corpo span { display: block; }
.ag-riga-data { display: grid; grid-template-columns: 28px minmax(0, 1.3fr) minmax(0, 1fr) minmax(0, 1fr) 40px; gap: 10px; align-items: end; }
.ag-riga-data .ag-num { margin-bottom: 10px; }
@media (max-width: 560px) { .ag-riga-data { grid-template-columns: 28px minmax(0, 1fr) minmax(0, 1fr) 40px; } .ag-riga-data label:nth-of-type(3) { grid-column: 2 / 4; } }
.segmenti-a-capo { flex-wrap: wrap; }
.ag-assenza { position: absolute; left: 0; right: 0; z-index: 1; background: repeating-linear-gradient(135deg, rgba(138, 155, 184, 0.08) 0 6px, rgba(138, 155, 184, 0.18) 6px 12px); border-top: 2px solid var(--c); cursor: pointer; }
.ag-assenza span { position: sticky; top: 0; display: inline-flex; align-items: center; gap: 5px; margin: 4px; padding: 2px 8px; border-radius: 8px; font-size: 11.5px; font-weight: 600; background: rgba(6, 20, 50, 0.85); color: #c4d6f5; }
.ag-assenza span i { width: 8px; height: 8px; border-radius: 50%; }
.chi .campanella { margin-left: auto; position: relative; flex: none; }
.campanella .badge { position: absolute; top: -4px; right: -4px; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; background: #ff7a7a; color: #2a0505; font-size: 11px; font-weight: 700; display: flex; align-items: center; justify-content: center; }
.campanella .badge[hidden] { display: none; }
.voce-notifica { text-align: left; font: inherit; color: inherit; border: 0; width: 100%; cursor: pointer; }
.voce-notifica .punto { width: 8px; height: 8px; border-radius: 50%; background: transparent; flex: none; align-self: flex-start; margin-top: 7px; }
.voce-notifica.nuova .punto { background: var(--ciano); box-shadow: 0 0 8px var(--ciano); }
.voce-notifica .corpo span { display: block; }
.scelta-data { text-align: left; font: inherit; color: inherit; border: 1px solid rgba(140, 200, 255, 0.25); width: 100%; cursor: pointer; align-items: center; }
.scelta-data:hover { background: rgba(110, 180, 255, 0.12); }
.app-cliente { border: 1px solid rgba(255, 181, 71, 0.35); }
.link-app { text-align: center; align-self: center; }
.credenziale { font-family: ui-monospace, "SF Mono", Menlo, monospace; font-size: 18px; letter-spacing: .5px; color: var(--ciano); }
.sinc-voce { align-items: flex-start; }
.sinc-voce .corpo span { display: block; font-size: 13px; }
.sinc-voce .rosso { color: #ff9b9b; }
.sinc-voce input:disabled + .corpo { opacity: .5; }
.pallino { display: inline-block; width: 10px; height: 10px; border-radius: 50%; margin-right: 6px; vertical-align: middle; flex: none; }
.pallino.giallo { background: #ffc94d; box-shadow: 0 0 8px rgba(255, 201, 77, 0.8); }
.pallino.rosso { background: #ff6b6b; box-shadow: 0 0 8px rgba(255, 107, 107, 0.8); }
.avvisi-app { display: flex; flex-direction: column; gap: 8px; }
.avviso-app { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 12px; flex-wrap: wrap; }
.avviso-app.giallo { background: rgba(255, 201, 77, 0.12); border: 1px solid rgba(255, 201, 77, 0.45); }
.avviso-app.rosso { background: rgba(255, 107, 107, 0.13); border: 1px solid rgba(255, 107, 107, 0.55); }
.avviso-app .segnale { width: 26px; height: 26px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 800; color: #1a0d00; flex: none; }
.avviso-app.giallo .segnale { background: #ffc94d; }
.avviso-app.rosso .segnale { background: #ff6b6b; color: #2a0505; }
.avviso-app .corpo { flex: 1 1 200px; min-width: 0; display: flex; flex-direction: column; }
.avviso-app .corpo span { font-size: 12px; color: var(--tenue); }
.avvisi-chiusi summary { cursor: pointer; }
.avviso-chiuso { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--tenue); padding: 4px 0; }
.avviso-chiuso .bottone { margin-left: auto; }
.bottone-avviso { align-self: flex-start; }
.scelta-livello .pallino { margin-right: 6px; }
.miniature { display: flex; flex-wrap: wrap; gap: 8px; }
.miniatura.aggiungi { font-size: 24px; }
.testo-ambra { color: #ffe3b3; }
.testo-verde { color: #c9ffe0; }
.scadenze-cliente { border-color: var(--bordo-forte); }
.griglia-scad { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 14px; }
.blocco-scad { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.voce-scad { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; padding: 12px 14px; border-radius: 14px; background: rgba(255, 255, 255, 0.05); }
.voce-scad .corpo { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.data-scad { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; white-space: nowrap; }
.data-scad strong { font-family: var(--font-titoli); font-size: 18px; }
.nota-scad { margin: 0; padding: 10px 12px; border-radius: 12px; background: rgba(94, 225, 255, 0.08); border: 1px solid rgba(94, 225, 255, 0.25); color: #d9f6ff; }
.rich-cliente.urgente, .rich-staff.urgente { border-color: rgba(255, 122, 122, 0.5); }
.risposta-rich { display: flex; flex-direction: column; gap: 4px; padding: 10px 12px; border-radius: 12px; background: rgba(60, 200, 120, 0.1); border: 1px solid rgba(60, 200, 120, 0.3); }
.tipi-rich { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.tipo-rich { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; padding: 16px; min-height: 104px; border-radius: 16px; border: 1px solid var(--bordo); background: rgba(255, 255, 255, 0.05); color: var(--testo); font: inherit; text-align: left; cursor: pointer; }
.tipo-rich:hover { background: rgba(110, 180, 255, 0.14); border-color: var(--bordo-forte); }
.tipo-rich strong { font-size: 17px; }
.tipo-rich span { font-size: 13px; color: var(--tenue); }
.tipo-rich.urgenza { border-color: rgba(255, 122, 122, 0.5); }
.urgenze-cliente { display: flex; align-items: center; gap: 14px; border-color: rgba(255, 122, 122, 0.55); background: rgba(255, 90, 90, 0.12); color: #ffe1e1; }
.urgenze-cliente .icona { width: 30px; height: 30px; flex: none; }
.urgenze-cliente > span { display: flex; flex-direction: column; }
.numero-urgenze { font-family: var(--font-titoli); font-size: 22px; font-weight: 700; color: #fff; }
.urgenze-bottone { justify-content: flex-start; gap: 10px; border-color: rgba(255, 122, 122, 0.55); background: rgba(255, 90, 90, 0.14); color: #ffe1e1; }
details.pannello summary { cursor: pointer; }
details.pannello[open] summary { margin-bottom: 12px; }
@media (max-width: 520px) { .tipi-rich { grid-template-columns: 1fr; } .griglia-scad { grid-template-columns: 1fr; } }
.rich-voce.urgente { background: rgba(255, 90, 90, 0.1); border: 1px solid rgba(255, 122, 122, 0.4); }
.corpo.testo-libero strong, .corpo.testo-libero span { white-space: normal; overflow: visible; text-overflow: clip; }
.elenco-elimina { margin: 0; padding-left: 20px; display: flex; flex-direction: column; gap: 2px; }
.biglietto { --w: 240px; position: relative; width: var(--w); max-width: 100%; aspect-ratio: 85 / 55; flex: none; overflow: hidden;
  border-radius: calc(var(--w) * 0.055); display: flex; flex-direction: column; align-items: center; justify-content: center;
  background: linear-gradient(150deg, rgba(235, 247, 255, 0.9), rgba(200, 228, 255, 0.8) 55%, rgba(160, 205, 250, 0.74));
  border: 1px solid rgba(220, 240, 255, 0.6);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(94, 225, 255, 0.15), inset 0 1px 1px rgba(255, 255, 255, 0.8), inset 0 0 30px rgba(140, 200, 255, 0.2); }
.biglietto::before { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background: linear-gradient(115deg, transparent 0 25%, rgba(255, 255, 255, 0.7) 33%, rgba(255, 255, 255, 0) 42%, transparent 62%, rgba(255, 255, 255, 0.35) 68%, transparent 74%); }
.biglietto::after { content: ""; position: absolute; left: 6%; right: 6%; top: 0; height: 1px; z-index: 3; pointer-events: none;
  background: linear-gradient(90deg, transparent, #fff, transparent); box-shadow: 0 0 12px rgba(255, 255, 255, 0.8); }
.biglietto img { position: relative; z-index: 2; width: 80%; height: auto; display: block; filter: drop-shadow(0 2px 4px rgba(0, 30, 80, 0.2)); }
.biglietto .sott { position: relative; z-index: 2; margin-top: calc(var(--w) * 0.03); font-size: calc(var(--w) * 0.028); letter-spacing: calc(var(--w) * 0.011); color: #14213d; white-space: nowrap; text-transform: uppercase; font-weight: 600; }
.accesso .biglietto { --w: 300px; align-self: center; margin-bottom: 4px; }
.laterale .biglietto { --w: 240px; align-self: center; }
@media (max-width: 860px) { .laterale .biglietto { --w: 200px; } }
.tabella-listino td.num, .tabella-listino th.num { text-align: right; white-space: nowrap; }
.tabella-listino tr[data-voce] { cursor: pointer; }
.tabella-listino tr.spento { opacity: 0.55; }
.tabella-listino td.sposta { white-space: nowrap; width: 1%; }
.tabella-listino td.sposta .bottone { min-height: 30px; width: 30px; padding: 0; }
.riga-op { display: grid; grid-template-columns: minmax(0, 1fr) auto 36px 36px; gap: 8px; align-items: center; }
.riga-mis { display: grid; grid-template-columns: minmax(0, 1fr) 80px 110px 36px; gap: 8px; align-items: center; }
.riga-grat { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8px; align-items: center; }
@media (max-width: 560px) { .riga-op { grid-template-columns: minmax(0, 1fr) 36px 36px; } .riga-op .spunta { grid-column: 1 / -1; } .riga-mis { grid-template-columns: minmax(0, 1fr) 70px 36px; } .riga-mis select { grid-column: 1 / 3; } .riga-grat { grid-template-columns: 1fr; } }
.riquadro-effetti { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.riquadro-effetti div { display: flex; gap: 10px; align-items: center; padding: 10px 12px; border-radius: 12px; background: rgba(255, 255, 255, 0.05); font-size: 13px; color: var(--testo-2); }
.riquadro-effetti b { font-family: var(--font-titoli); font-size: 22px; color: #fff; }
.avviso-modifiche { border-color: rgba(255, 181, 71, 0.45); }
.prog-banner { border-color: rgba(255, 181, 71, 0.5); background: rgba(255, 181, 71, 0.1); }
.prog-banner.fuori { border-color: rgba(255, 122, 122, 0.5); background: rgba(255, 90, 90, 0.1); }
.voce-listino { display: flex; justify-content: space-between; gap: 12px; padding: 10px 12px; border-radius: 12px; background: rgba(255, 255, 255, 0.05); }
.voce-listino .corpo { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.voce-listino .prezzo { text-align: right; white-space: nowrap; font-family: var(--font-titoli); font-weight: 700; }
.cambio-su { color: #ffb4b4; }
.cambio-giu { color: #b9f5cf; }
@media (max-width: 640px) { .tabella-listino .nascondi-tel { display: none; } }
.tipo-rich:disabled { opacity: 0.4; cursor: not-allowed; }
.garanzia-app { display: flex; flex-direction: column; gap: 6px; margin-top: 6px; padding: 10px 12px; border-radius: 12px; background: rgba(60, 200, 120, 0.08); border: 1px solid rgba(60, 200, 120, 0.28); }
.garanzia-app.vicina { background: rgba(255, 181, 71, 0.08); border-color: rgba(255, 181, 71, 0.35); }
.garanzia-app.scaduta { background: rgba(255, 255, 255, 0.04); border-color: var(--bordo); color: var(--tenue); }
.barra-garanzia { height: 6px; border-radius: 4px; background: rgba(255, 255, 255, 0.1); overflow: hidden; }
.barra-garanzia span { display: block; height: 100%; border-radius: 4px; background: linear-gradient(90deg, #4ade80, #5ee1ff); }
.garanzia-app.vicina .barra-garanzia span { background: linear-gradient(90deg, #ffb547, #ff8f5a); }
.garanzia-app.scaduta .barra-garanzia span { background: rgba(255, 255, 255, 0.3); }
.testo-ok { color: #8ff0b8; }
.pillola-tocca { border: 0; font: inherit; font-size: 12px; cursor: pointer; align-self: flex-start; }
.filtri-doc { margin: 2px 0 6px; }
.filtri-doc span { min-height: 32px; padding: 0 10px; font-size: 13px; }
.riga-imp { cursor: pointer; padding: 8px 0; min-height: 56px; }
.riga-imp > span:last-child { display: flex; flex-direction: column; align-items: flex-end; gap: 2px; }
.riga-imp .icona { width: 16px; height: 16px; color: var(--tenue); }
.doc-cli { display: flex; gap: 12px; align-items: center; width: 100%; padding: 10px 12px; border: 0; border-radius: 12px; background: rgba(255, 255, 255, 0.05); color: var(--testo); font: inherit; text-align: left; cursor: pointer; }
.doc-cli .corpo { flex: 1; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.doc-cli .corpo span { font-size: 13px; color: var(--tenue); }
.doc-cli > .icona { flex: none; color: var(--ciano); }
.doc-cli[hidden] { display: none; }
.doc-cli:hover { background: rgba(110, 180, 255, 0.12); color: #fff; }
.griglia-imp-cli { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 14px; }
.carta-imp-cli { display: flex; flex-direction: column; gap: 6px; padding: 16px; border-radius: 16px; color: var(--testo); }
.carta-imp-cli:hover { background: rgba(110, 180, 255, 0.12); color: #fff; }
.riga-doc[hidden] { display: none; }
.tabella-conti td.num, .tabella-conti th.num, .tabella-conto td.num, .tabella-conto th.num { text-align: right; white-space: nowrap; }
.riga-cliccabile { cursor: pointer; }
.riga-cliccabile:hover td { background: rgba(110, 180, 255, 0.12); }
.nota-conto { display: block; max-width: 260px; margin: 4px 0 0 auto; padding: 4px 8px; border: 1px solid transparent; border-radius: 8px; background: none; color: var(--testo-2); font: inherit; font-size: 12.5px; text-align: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; cursor: pointer; box-shadow: none; }
.nota-conto:hover { border-color: var(--bordo); background: rgba(255, 255, 255, 0.05); }
.nota-conto.aperta { white-space: pre-line; overflow: visible; max-width: 320px; min-width: 230px; color: var(--testo, #fff); background: rgba(255, 207, 133, 0.1); border-color: rgba(255, 207, 133, 0.4); }
@media (max-width: 640px) { .tabella-conti .nascondi-tel { display: none; } }
.tabella-conto td { vertical-align: top; }
.tabella-conto .campo { min-height: 38px; padding: 6px 10px; }
.tabella-conto .campo-num { width: 86px; text-align: right; }
.tabella-conto .campo.manca { border-color: rgba(255, 181, 71, 0.8); background: rgba(255, 181, 71, 0.1); }
.tabella-conto tr.gratis td { background: rgba(60, 200, 120, 0.07); }
.riga-gratis { display: flex; flex-wrap: wrap; gap: 6px 10px; align-items: center; margin-top: 6px; }
.campo-piccolo { min-height: 32px !important; padding: 4px 8px !important; font-size: 13px; width: auto; flex: 1 1 140px; }
.totale-conto { margin-top: 6px; padding-top: 10px; border-top: 1px solid var(--bordo); font-size: 18px; }
.nota-garanzia { border-color: rgba(60, 200, 120, 0.4); }
.conto-cli { display: flex; flex-direction: column; gap: 8px; }
.conto-cli .riga-conto { display: flex; justify-content: space-between; gap: 12px; padding: 8px 0; border-top: 1px solid rgba(255, 255, 255, 0.07); }
.conto-cli .riga-conto > span:last-child { text-align: right; white-space: nowrap; }
.conto-cli .tot { font-family: var(--font-titoli); font-size: 20px; font-weight: 700; border-top: 1px solid var(--bordo); padding-top: 10px; }
.azioni-storico { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; justify-content: flex-end; }
.tabella-conto td:first-child { width: 100%; min-width: 220px; }
.tabella-conto td:first-child > .campo { width: 100%; }
.tabella-conto .campo-num { width: 78px; }
.colonne-conto > .larga { flex: 3 1 620px; }
.colonne-conto > .stretta { flex: 1 1 260px; }
.tabella-conto td { padding: 10px 8px; }
.tabella-conto th { padding: 4px 8px; }
.tabella-conto .campo-num { width: 70px; }
.tabella-conto td:first-child { min-width: 180px; }
.totale-conto { font-size: 17px; gap: 10px; }
.totale-conto strong:last-child { white-space: nowrap; }
.tabella-conto [data-c="prezzo_listino"] { width: 86px; }
.voce .pillola { flex: none; }
a.voce-agenda { color: var(--testo); }
a.voce-agenda:hover { background: rgba(110, 180, 255, 0.12); }
.voce-agenda .corpo span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.griglia-filtri { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 12px; }
.sep-filtri { width: 1px; align-self: stretch; background: var(--bordo); margin: 0 4px; }
.elenco-int { display: flex; flex-direction: column; gap: 8px; }
.riga-int { display: grid; grid-template-columns: auto 74px minmax(0, 1fr) minmax(150px, auto) auto; gap: 12px; align-items: center; padding: 10px 12px; border-radius: 14px; background: rgba(255, 255, 255, 0.04); }
.riga-int:not(:has(.scelta-int)) { grid-template-columns: 74px minmax(0, 1fr) minmax(150px, auto); }
.riga-int:hover { background: rgba(110, 180, 255, 0.09); }
.riga-int.annullato { background: rgba(255, 255, 255, 0.025); }
.riga-int.annullato .corpo-int strong { color: var(--testo-2); }
.quando-int, .corpo-int { display: flex; flex-direction: column; gap: 2px; color: var(--testo); min-width: 0; }
.corpo-int strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.motivo-int { font-size: 13px; color: #ffc9a8; }
.esito-int { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; text-align: right; }
.esito-int .icona { width: 14px; height: 14px; vertical-align: -2px; margin-right: 3px; }
.scelta-int input { width: 18px; height: 18px; }
.elimina-int { opacity: .6; }
.elimina-int:hover { opacity: 1; }
.tabella-int { font-size: 14px; }
.tabella-int th { padding: 4px 10px; }
.tabella-int td { padding: 10px; vertical-align: middle; }
.tabella-int tbody tr { cursor: pointer; }
.tabella-int tbody tr:hover td { background: rgba(110, 180, 255, 0.10); }
.tabella-int tr.annullato td { background: rgba(255, 255, 255, 0.025); color: var(--testo-2); }
.tabella-int td { color: var(--testo); }
.tabella-int td a { display: inline-flex; flex-direction: column; gap: 1px; color: var(--testo); }
.tabella-int td .tenue, .tabella-int td .motivo-int { display: block; margin-top: 2px; }
.tabella-int .col-data a strong { white-space: nowrap; }
.tabella-int .col-cli { min-width: 110px; }
.tabella-int .col-cli strong { font-weight: 600; }
.tabella-int .col-luogo span { display: block; }
.tabella-int .riga-tec { display: block; white-space: nowrap; }
.tabella-int .freccia { flex-direction: row; align-items: center; gap: 5px; white-space: nowrap; color: #9fd2ff; }
.tabella-int .freccia .icona { width: 15px; height: 15px; }
.tabella-int .col-conto { text-align: right; }
.tabella-int .col-conto a { align-items: flex-end; gap: 4px; }
.tabella-int .importo { font-weight: 600; white-space: nowrap; }
.tabella-int .pillola { white-space: nowrap; }
.tabella-int .col-sel, .tabella-int .col-x { width: 1%; }
.tabella-int .col-sel input { width: 18px; height: 18px; }
.elenco-int { display: none; }
@media (max-width: 900px) {
  .tab-int-larga { display: none; }
  .elenco-int { display: flex; }
}
@media (max-width: 700px) {
  .riga-int, .riga-int:not(:has(.scelta-int)) { grid-template-columns: auto minmax(0, 1fr) auto; grid-template-areas: "s q x" "s c c" "s e e"; }
  .riga-int:not(:has(.scelta-int)) { grid-template-areas: "q q q" "c c c" "e e e"; }
  .scelta-int { grid-area: s; align-self: start; }
  .quando-int { grid-area: q; flex-direction: row; gap: 8px; align-items: baseline; }
  .corpo-int { grid-area: c; }
  .esito-int { grid-area: e; flex-direction: row; flex-wrap: wrap; align-items: center; justify-content: flex-start; text-align: left; gap: 8px; }
  .elimina-int { grid-area: x; }
  .sep-filtri { display: none; }
}
@media (max-width: 700px) { .griglia-filtri { grid-template-columns: 1fr 1fr; gap: 10px; } }
.griglia-indirizzo { grid-template-columns: minmax(0, 2.6fr) minmax(0, 1.5fr) minmax(0, 1.7fr) minmax(0, 0.8fr); }
.griglia-indirizzo > label > span { display: block; }
@media (max-width: 640px) { .griglia-indirizzo { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .griglia-indirizzo .ind-via, .griglia-indirizzo .ind-comune { grid-column: 1 / -1; } .griglia-indirizzo .ind-prov { grid-column: 1 / 2; } }
.schede-modale { padding: 8px 6px 10px; margin: -8px -6px -10px; }
.scheda-tab[aria-selected="true"] { box-shadow: 0 0 10px rgba(80, 170, 255, 0.3); }
.pannello-interno { background: rgba(255, 255, 255, 0.04); border: 1px solid var(--bordo); border-radius: 18px; margin-top: 14px; }
.tabella-clic tr.riga-gestito td { background: rgba(255, 255, 255, 0.025); }
.tabella-clic tr.riga-gestito td:first-child { padding-left: 14px; }
a.cella-titolo:has(> .rientro) { flex-direction: row; align-items: center; gap: 10px; }
.rientro { flex: none; width: 18px; height: 22px; margin-left: 4px; border-left: 2px solid rgba(124, 196, 255, 0.45); border-bottom: 2px solid rgba(124, 196, 255, 0.45); border-bottom-left-radius: 8px; transform: translateY(-6px); }
.tabella-clic tr.riga-gestore td:first-child strong { color: #fff; }
.tabella-clic tr.riga-segue td { background: rgba(124, 196, 255, 0.08); box-shadow: inset 3px 0 0 rgba(124, 196, 255, 0.7); }
.tabella-clic tr.riga-segue td .cella-dentro > span { color: #9fd3ff; }
tr.riga-continua td { padding: 6px 14px 10px 40px; background: none !important; }
.link-continua { background: none; border: 0; padding: 4px 0; color: var(--ciano); font: inherit; font-size: 13px; cursor: pointer; text-decoration: none; }
.link-continua:hover { color: #fff; }
.elenco-gestiti { display: flex; flex-direction: column; gap: 12px; }
.gestito { display: flex; flex-direction: column; gap: 8px; padding: 14px; border-radius: 16px; background: rgba(255, 255, 255, 0.04); border: 1px solid var(--bordo); }
.gestito.spento { opacity: .6; }
.nome-gestito { display: flex; flex-direction: column; gap: 2px; color: var(--testo); min-width: 0; }
.nome-gestito strong { font-size: 16px; }
.nome-gestito:hover strong { color: #fff; }
.imm-gestito { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.imm-gestito .icona { width: 14px; height: 14px; vertical-align: -2px; margin-right: 4px; }
.cella-titolo span.cella-dentro { display: flex; flex-direction: column; min-width: 0; font-size: inherit; color: inherit; }
.cella-titolo span.cella-dentro > span { font-size: 12px; color: var(--tenue); }
.cella-titolo span.rientro { font-size: 0; }
.laterale.vetro { -webkit-backdrop-filter: none; backdrop-filter: none; background: linear-gradient(180deg, rgba(30, 58, 112, 0.62), rgba(18, 38, 82, 0.62)); isolation: isolate; }
.menu a:focus { outline: none; }
.menu a:focus-visible { outline: 2px solid var(--ciano); outline-offset: -2px; }
.zona-cli { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; }
.zona-cli .punto { width: 10px; height: 10px; border-radius: 50%; flex: none; margin-top: 5px; }
.zona-cli + .zona-cli { margin-top: 8px; }
.campo.da-modello { background: rgba(255, 255, 255, 0.02); color: var(--testo-2); border-style: dashed; cursor: not-allowed; }
.paginazione { display: flex; align-items: center; justify-content: space-between; gap: 10px 16px; flex-wrap: wrap; margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--bordo); }
.pag-bottoni { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.pag-num, .pag-freccia {
  min-width: 38px; height: 38px; padding: 0 10px; border-radius: 12px; border: 1px solid var(--bordo);
  background: var(--vetro); color: var(--testo-2); font: inherit; font-weight: 600; cursor: pointer; transition: color .15s, border-color .15s, background .15s;
}
.pag-freccia { font-size: 20px; line-height: 1; }
.pag-num:hover, .pag-freccia:hover:not(:disabled) { color: #fff; border-color: rgba(124, 196, 255, 0.55); }
.pag-num[aria-current="page"] { color: #04122e; background: linear-gradient(135deg, #8fd0ff, #5ad8ff); border-color: transparent; box-shadow: 0 0 14px rgba(90, 216, 255, 0.45); }
.pag-freccia:disabled { opacity: .35; cursor: default; }
.pag-salto { color: var(--tenue); padding: 0 2px; }
.pag-testo { display: none; color: var(--testo-2); font-size: 14px; padding: 0 6px; }
@media (max-width: 640px) {
  .paginazione { justify-content: center; }
  .pag-info { width: 100%; text-align: center; }
  .pag-num, .pag-salto { display: none; }
  .pag-testo { display: inline; }
  .pag-freccia { min-width: 48px; height: 44px; }
}
.paginazione.su { margin: 0 0 14px; padding: 0 0 14px; border-top: 0; border-bottom: 1px solid var(--bordo); }
.kpi .kpi-link { position: relative; color: inherit; text-decoration: none; cursor: pointer; transition: border-color .15s, transform .15s, box-shadow .15s; }
.kpi .kpi-link:hover, .kpi .kpi-link:focus-visible { border-color: rgba(124, 196, 255, 0.55); box-shadow: 0 0 18px rgba(90, 216, 255, 0.18); transform: translateY(-1px); outline: none; }
.kpi .kpi-vai { position: absolute; top: 16px; right: 18px; color: var(--tenue); font-size: 18px; transition: color .15s, transform .15s; }
.kpi .kpi-link .etichetta { padding-right: 22px; }
.kpi .kpi-link:hover .kpi-vai { color: #fff; transform: translateX(3px); }
.tabella-listino td.azioni-voce { width: 1%; white-space: nowrap; text-align: right; }
.tabella-listino td.azioni-voce .bottone { min-height: 30px; width: 30px; padding: 0; }
.gruppo-doc { display: flex; flex-direction: column; gap: 8px; }
.gruppo-doc + .gruppo-doc { margin-top: 16px; }
.zona-file { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; padding: 22px 16px; border: 1.5px dashed rgba(124, 196, 255, 0.45); border-radius: var(--raggio-p); background: rgba(124, 196, 255, 0.05); color: var(--testo-2); text-align: center; cursor: pointer; transition: border-color .15s, background .15s; }
.zona-file > span:first-of-type { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; color: #fff; }
.zona-file:hover, .zona-file.sopra { border-color: var(--ciano); background: rgba(90, 216, 255, 0.1); }
.gruppo-campo > label.zona-file { display: flex; }
.gruppo-doc .voce .corpo strong { white-space: normal; overflow: visible; text-overflow: clip; }
.pillola.pillola-mini { font-size: 11px; padding: 1px 8px; vertical-align: middle; }
.lista-auto > * { flex: none; }
.lista-auto button { line-height: 1.35; display: flex; flex-direction: column; align-items: flex-start; gap: 2px; }
.lista-auto button strong, .lista-auto button span { display: block; white-space: normal; overflow-wrap: anywhere; }
.suggerimenti > * { flex: none; }
.giorni-slot { display: flex; gap: 8px; overflow-x: auto; padding: 2px 2px 8px; scroll-snap-type: x proximity; -webkit-overflow-scrolling: touch; }
.giorno-slot { flex: none; scroll-snap-align: start; width: 64px; padding: 8px 4px; display: flex; flex-direction: column; align-items: center; gap: 1px; border-radius: 14px; border: 1px solid var(--bordo); background: var(--vetro); color: var(--testo-2); font: inherit; cursor: pointer; transition: border-color .15s, background .15s; }
.giorno-slot span { font-size: 12px; text-transform: uppercase; letter-spacing: .04em; }
.giorno-slot strong { font-size: 22px; line-height: 1.1; color: #fff; }
.giorno-slot[aria-selected="true"] { border-color: transparent; background: linear-gradient(135deg, #8fd0ff, #5ad8ff); color: #04122e; box-shadow: 0 0 14px rgba(90, 216, 255, 0.4); }
.giorno-slot[aria-selected="true"] strong { color: #04122e; }
.ore-slot { display: grid; grid-template-columns: repeat(auto-fill, minmax(118px, 1fr)); gap: 8px; }
.ora-slot span { font-weight: 400; opacity: .8; }
.ora-slot { min-height: 44px; border-radius: 12px; border: 1px solid var(--bordo); background: var(--vetro); color: var(--testo); font: inherit; font-weight: 600; font-size: 16px; cursor: pointer; transition: border-color .15s, background .15s; }
.ora-slot:hover { border-color: rgba(124, 196, 255, 0.55); }
.ora-slot[aria-pressed="true"] { border-color: transparent; background: linear-gradient(135deg, #8fd0ff, #5ad8ff); color: #04122e; box-shadow: 0 0 14px rgba(90, 216, 255, 0.4); }
.richiesta-orario { display: flex; flex-direction: column; gap: 2px; padding: 12px 14px; border-radius: 14px; border: 1px solid rgba(90, 216, 255, 0.45); background: rgba(90, 216, 255, 0.08); }
.richiesta-orario strong { font-size: 16px; }
.riquadro-slot { padding: 14px; border-radius: var(--raggio-p); border: 1px solid var(--bordo); background: rgba(255, 255, 255, 0.03); }
.griglia-slot { display: grid; grid-template-columns: 130px minmax(0, 1fr) minmax(0, 1fr); gap: 10px 12px; align-items: end; }
.griglia-slot .spunta { padding-bottom: 12px; font-weight: 600; color: var(--testo); }
.griglia-slot .campo:disabled { opacity: .45; }
@media (max-width: 560px) { .griglia-slot { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .griglia-slot .spunta { grid-column: 1 / -1; padding: 6px 0 0; } }
.anteprima-slot { display: flex; flex-direction: column; gap: 8px; margin-top: 6px; }
.titolo-anteprima { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; flex-wrap: wrap; }
.cal-slot { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
.cal-giorno { display: flex; flex-direction: column; gap: 10px; padding: 8px; border-radius: 12px; background: rgba(255, 255, 255, 0.04); border: 1px solid var(--bordo); min-width: 0; }
.cal-giorno.spento { opacity: .38; }
.cal-testa { text-align: center; font-weight: 700; font-size: 14px; display: flex; flex-direction: column; }
.cal-testa span { font-weight: 400; font-size: 11px; color: var(--tenue); }
.cal-fascia { display: flex; flex-direction: column; gap: 4px; }
.cal-blocco { min-height: 30px; padding: 4px 6px; border-radius: 9px; background: linear-gradient(160deg, rgba(143, 208, 255, 0.28), rgba(90, 216, 255, 0.14)); border: 1px solid rgba(90, 216, 255, 0.45); font-size: 13px; font-weight: 700; color: #e9f6ff; display: flex; flex-wrap: wrap; align-content: flex-start; column-gap: 2px; overflow: hidden; }
.cal-blocco span { font-weight: 400; color: #b9dcf5; }
@media (max-width: 560px) { .cal-slot { gap: 4px; } .cal-giorno { padding: 5px 3px; } .cal-blocco { height: auto !important; min-height: 0; font-size: 11px; padding: 4px; line-height: 1.25; } .cal-blocco span { display: block; width: 100%; } }
.cal-blocco span { white-space: nowrap; }
.ag-settimana-slot { display: flex; flex-direction: column; gap: 10px; }
.titolo-sett { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.titolo-sett strong { min-width: 150px; text-align: center; }
.griglia-sett { display: grid; grid-template-columns: repeat(var(--n), minmax(0, 1fr)); gap: 8px; }
.gs-giorno { display: flex; flex-direction: column; gap: 6px; padding: 8px; border-radius: 14px; background: rgba(255, 255, 255, 0.04); border: 1px solid var(--bordo); min-width: 0; }
.gs-giorno.fuori { background: repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.02) 0 8px, rgba(255, 255, 255, 0.05) 8px 16px); }
.gs-giorno.fuori .gs-slot:not([aria-pressed="true"]) { opacity: .55; }
.gs-giorno.passato { opacity: .4; }
.gs-testa { display: flex; flex-direction: column; align-items: center; line-height: 1.15; padding-bottom: 2px; }
.gs-testa span { font-size: 12px; text-transform: uppercase; letter-spacing: .05em; color: var(--tenue); }
.gs-testa strong { font-size: 20px; }
.gs-testa em { font-style: normal; font-size: 11px; color: #ffcf85; }
.gs-slot { position: relative; min-height: 40px; padding: 5px 6px; border-radius: 10px; border: 1px solid rgba(74, 222, 128, 0.5); background: rgba(74, 222, 128, 0.1); color: #d6ffe4; font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; column-gap: 2px; transition: background .15s, border-color .15s; }
.gs-slot span { font-weight: 400; opacity: .85; }
.gs-slot:hover:not(:disabled) { background: rgba(74, 222, 128, 0.2); }
.gs-slot.occupato { border-color: rgba(255, 122, 122, 0.4); background: rgba(255, 122, 122, 0.08); color: #ffc9c9; }
.gs-slot.occupato:hover:not(:disabled) { background: rgba(255, 122, 122, 0.16); }
.gs-slot:disabled { cursor: default; opacity: .45; }
.griglia-sett .gs-slot[aria-pressed="true"], .griglia-sett .gs-slot[aria-pressed="true"]:hover { border-color: transparent; background: linear-gradient(135deg, #8fd0ff, #5ad8ff); color: #04122e; box-shadow: 0 0 12px rgba(90, 216, 255, 0.45); opacity: 1; }
.gs-slot i { position: absolute; top: -7px; left: -7px; width: 20px; height: 20px; border-radius: 50%; background: #04122e; color: #5ad8ff; border: 1px solid #5ad8ff; font-style: normal; font-size: 11px; display: flex; align-items: center; justify-content: center; }
.ag-riga-data.attiva { outline: 1px solid rgba(90, 216, 255, 0.55); outline-offset: 4px; border-radius: 12px; }
@media (max-width: 640px) { .griglia-sett { gap: 4px; } .gs-giorno { padding: 5px 3px; } .gs-slot { font-size: 11px; padding: 4px 2px; min-height: 36px; } .gs-slot span { display: block; width: 100%; text-align: center; } }
.ag-slot-giorno { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: -4px 0 6px 44px; }
.ag-slot-giorno:empty { display: none; }
.slot-ag { min-height: 34px; padding: 4px 10px; border-radius: 10px; border: 1px solid rgba(74, 222, 128, 0.5); background: rgba(74, 222, 128, 0.1); color: #d6ffe4; font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
.slot-ag span { font-weight: 400; opacity: .85; }
.slot-ag.occupato { border-color: rgba(255, 122, 122, 0.4); background: rgba(255, 122, 122, 0.08); color: #ffc9c9; text-decoration: line-through; text-decoration-thickness: 1px; }
.slot-ag[aria-pressed="true"] { border-color: transparent; background: linear-gradient(135deg, #8fd0ff, #5ad8ff); color: #04122e; box-shadow: 0 0 12px rgba(90, 216, 255, 0.4); text-decoration: none; }
@media (max-width: 640px) { .ag-slot-giorno { margin-left: 0; } }
.scad-pianifica { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; vertical-align: middle; }
.pianifica { width: 32px; height: 32px; flex: none; display: inline-flex; align-items: center; justify-content: center; border-radius: 10px; border: 1px solid rgba(124, 196, 255, 0.4); background: rgba(124, 196, 255, 0.1); color: #bfe3ff; cursor: pointer; transition: color .15s, background .15s, border-color .15s; padding: 0; }
.pianifica .icona { width: 17px; height: 17px; }
.pianifica:hover, .pianifica:focus-visible { color: #04122e; background: linear-gradient(135deg, #8fd0ff, #5ad8ff); border-color: transparent; outline: none; }
.pianifica.pianificato { border-color: rgba(74, 222, 128, 0.55); background: rgba(74, 222, 128, 0.14); color: #8ff0b8; }
.pianifica.pianificato:hover, .pianifica.pianificato:focus-visible { background: rgba(74, 222, 128, 0.28); color: #d6ffe4; border-color: rgba(74, 222, 128, 0.8); }
.torna-su { position: fixed; right: 22px; bottom: 22px; z-index: 90; width: 50px; height: 50px; border-radius: 50%; border: 1px solid rgba(124, 196, 255, 0.45); background: rgba(12, 32, 74, 0.82); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); color: #cfe9ff; display: flex; align-items: center; justify-content: center; cursor: pointer; box-shadow: 0 10px 28px rgba(0, 0, 0, 0.45); transition: background .15s, color .15s, transform .15s; }
.torna-su[hidden] { display: none; }
.torna-su:hover, .torna-su:focus-visible { background: linear-gradient(135deg, #8fd0ff, #5ad8ff); color: #04122e; transform: translateY(-2px); outline: none; }
.torna-su .icona { width: 22px; height: 22px; }
@media (max-width: 640px) { .torna-su { right: 14px; bottom: 14px; width: 46px; height: 46px; } }
.colonna-destra { flex: 999 1 560px; min-width: 0; display: flex; flex-direction: column; gap: 14px; }
.colonna-destra > .contenuto { flex: none; width: 100%; }
.barra-alto { display: flex; justify-content: flex-end; align-items: center; gap: 10px; }
.barra-alto .campanella { position: relative; width: 46px; height: 46px; }
.chi-alto { display: inline-flex; align-items: center; gap: 10px; padding: 6px 14px 6px 6px; border-radius: 999px; border: 1px solid var(--bordo); background: rgba(255, 255, 255, 0.05); color: var(--testo); text-decoration: none; min-width: 0; max-width: 320px; transition: border-color .15s, background .15s; }
.chi-alto:hover, .chi-alto:focus-visible { border-color: rgba(124, 196, 255, 0.55); background: rgba(124, 196, 255, 0.1); outline: none; }
.chi-alto .avatar { width: 34px; height: 34px; border-radius: 50%; flex: none; display: flex; align-items: center; justify-content: center; font-weight: 700; color: #04122e; background: linear-gradient(135deg, #3d8bff, var(--ciano)); }
.chi-testo { display: flex; flex-direction: column; min-width: 0; font-size: 13px; line-height: 1.25; }
.chi-testo strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
@media (max-width: 560px) { .chi-testo .tenue { display: none; } .chi-alto { max-width: 220px; } }
.sotto-gruppo { display: flex; flex-direction: column; gap: 10px; } .sotto-gruppo + .sotto-gruppo { margin-top: 18px; }
.voce-rev .corpo { flex: 1 1 auto; min-width: 0; }
.voce-rev .azioni-rev { display: flex; gap: 6px; flex: none; align-items: center; }
@media (max-width: 760px) { .voce-rev { flex-wrap: wrap; row-gap: 8px; } .voce-rev .azioni-rev { width: 100%; justify-content: flex-end; } }
.voce-gestire .corpo { flex: 1 1 auto; min-width: 0; }
@media (max-width: 640px) {
  .voce-gestire { flex-wrap: wrap; row-gap: 8px; }
  .voce-gestire .corpo { flex: 1 1 calc(100% - 40px); }
  .voce-gestire .corpo strong { white-space: normal; overflow: visible; text-overflow: clip; }
  .voce-gestire .pillola { margin-left: 26px; }
}
.pagina-privacy { min-height: 100vh; padding: 32px 16px 48px; display: flex; justify-content: center; }
.testo-privacy { width: 100%; max-width: 820px; padding: 32px 36px; line-height: 1.6; color: var(--testo-2); }
.testo-privacy h1 { font-size: 26px; color: var(--testo); margin: 4px 0 14px; }
.testo-privacy h2 { font-size: 19px; color: var(--testo); margin: 30px 0 8px; scroll-margin-top: 16px; }
.testo-privacy h3 { font-size: 15px; font-family: var(--font); font-weight: 700; color: var(--testo); margin: 16px 0 2px; }
.testo-privacy p { margin: 6px 0; }
.testo-privacy h3 + p { margin-top: 2px; }
.testo-privacy ul { margin: 6px 0; padding-left: 20px; }
.testo-privacy li { margin: 4px 0; }
.testo-privacy p.base { color: var(--tenue); font-size: 14px; }
.testo-privacy blockquote { margin: 10px 0; padding: 12px 16px; border-left: 3px solid var(--ciano); background: rgba(255, 255, 255, 0.05); border-radius: var(--raggio-p); }
.testo-privacy .versione-privacy { margin-top: 26px; color: var(--tenue); }
.testo-privacy a { word-break: break-word; }
.etichetta-privacy { font-size: 12px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; color: var(--ciano); margin: 0; }
.indice-privacy { display: flex; flex-wrap: wrap; gap: 6px 14px; padding: 10px 0 4px; border-bottom: 1px solid var(--bordo); font-size: 14px; }
.piede-privacy { margin-top: 28px !important; }
@media (max-width: 640px) { .testo-privacy { padding: 22px 18px; } .testo-privacy h1 { font-size: 22px; } }
.presa-visione { min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 16px; }
.presa-visione > .vetro { width: 100%; max-width: 760px; display: flex; flex-direction: column; gap: 14px; padding: 24px; max-height: calc(100vh - 32px); }
.presa-visione h1 { font-size: 22px; margin: 0; }
.presa-visione .testo-privacy { padding: 4px 18px 4px 4px; overflow: auto; flex: 1 1 auto; min-height: 180px; max-width: none; background: none; border: 0; box-shadow: none; font-size: 15px; }
.presa-visione .testo-privacy h2 { font-size: 17px; margin-top: 22px; }
.presa-visione .azioni { display: flex; gap: 10px; justify-content: flex-end; flex-wrap: wrap; }
@media (max-width: 640px) { .presa-visione { padding: 0; } .presa-visione > .vetro { max-height: 100vh; min-height: 100vh; border-radius: 0; padding: 18px 14px; } .presa-visione .azioni .bottone { flex: 1 1 auto; } }
.banner-cookie { position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 80; max-width: 720px; margin: 0 auto; padding: 16px 48px 16px 18px; display: flex; flex-direction: column; gap: 10px; background: rgba(12, 32, 74, 0.94); border: 1px solid var(--bordo-forte); border-radius: var(--raggio); box-shadow: 0 16px 50px rgba(0, 0, 0, 0.5); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }
.banner-cookie strong { color: var(--testo); font-family: var(--font-titoli); font-weight: 600; }
.banner-cookie p { margin: 0; font-size: 14px; color: var(--testo-2); line-height: 1.5; }
.banner-cookie .azioni { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; justify-content: flex-end; }
.banner-cookie .chiudi-cookie { position: absolute; top: 8px; right: 8px; width: 36px; height: 36px; border: 0; background: none; color: var(--tenue); font-size: 22px; line-height: 1; cursor: pointer; border-radius: 10px; }
.banner-cookie .chiudi-cookie:hover { color: #fff; background: rgba(255, 255, 255, 0.08); }
.link-privacy { font-size: 13px; text-align: center; }
.voce-doc { flex-wrap: wrap; row-gap: 8px; }
.voce-doc .corpo { flex: 1 1 220px; }
.voce-doc .corpo strong { white-space: normal; overflow-wrap: anywhere; }
.voce-doc .doc-azioni { display: flex; align-items: center; gap: 10px; margin-left: auto; flex: none; }
html.con-velo .torna-su, body:has(.banner-cookie) .torna-su { display: none; }
.colonna-destra .contenuto { padding-bottom: 72px; }
@media (max-width: 640px) {
  .titolo-filtri { flex-direction: column; align-items: flex-start; }
  .titolo-filtri .filtri-zona { flex-direction: row; flex-wrap: wrap; justify-content: flex-start; }
}
.lettore-feed { display: flex; flex-direction: column; gap: 10px; }
.voce-feed { border-radius: 14px; background: rgba(255, 255, 255, 0.04); border: 1px solid var(--bordo); }
.voce-feed summary { cursor: pointer; padding: 12px 14px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px 12px; list-style: none; }
.voce-feed summary::-webkit-details-marker { display: none; }
.voce-feed[open] summary { border-bottom: 1px solid var(--bordo); }
.testo-feed { padding: 10px 14px 14px; font-size: 14px; color: var(--testo-2); line-height: 1.5; overflow-wrap: anywhere; }
.testo-feed table { border-collapse: collapse; width: 100%; }
.testo-feed td { padding: 4px 8px 4px 0; vertical-align: top; border-bottom: 1px solid rgba(255, 255, 255, 0.06); }
.testo-feed td:first-child { width: 38%; color: var(--tenue); }
.testo-feed h3 { font-size: 15px; margin: 16px 0 6px; color: var(--testo); }
.testo-feed h4 { font-size: 14px; margin: 14px 0 4px; color: var(--ciano); font-family: var(--font); }
.testo-feed ul { margin: 4px 0; padding-left: 4px; list-style: none; }
.testo-feed p { margin: 4px 0; }
.voce-annullato .voce-link-int { display: flex; align-items: center; gap: 12px; flex: 1 1 auto; min-width: 0; color: inherit; }
.voce-annullato .voce-link-int:hover strong { color: #fff; }
@media (max-width: 640px) {
  .voce-annullato .voce-link-int { flex: 1 1 100%; }
  .voce-annullato .pillola { margin-left: 26px; margin-right: auto; }
}
.rotella-caricamento { position: absolute; inset: 0; z-index: 3; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; background: rgba(4, 14, 36, 0.62); border-radius: inherit; color: #fff; pointer-events: all; cursor: progress; backdrop-filter: blur(2px); -webkit-backdrop-filter: blur(2px); }
.rotella-caricamento svg { width: 44px; height: 44px; max-width: 70%; max-height: 70%; transform: rotate(-90deg); }
.rotella-caricamento circle { fill: none; stroke-width: 4; }
.rotella-caricamento .rc-fondo { stroke: rgba(255, 255, 255, 0.18); }
.rotella-caricamento .rc-giro { stroke: var(--ciano); stroke-linecap: round; transition: stroke-dashoffset .2s; filter: drop-shadow(0 0 4px rgba(94, 225, 255, 0.7)); }
.rotella-caricamento .rc-testo { position: absolute; font-size: 12px; font-weight: 700; font-variant-numeric: tabular-nums; }
.rotella-caricamento .rc-etichetta { position: absolute; bottom: 6px; left: 4px; right: 4px; text-align: center; font-size: 11px; color: var(--testo-2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rotella-caricamento.in-attesa svg { animation: rc-gira 0.9s linear infinite; }
@keyframes rc-gira { from { transform: rotate(-90deg); } to { transform: rotate(270deg); } }
.rotella-caricamento.rotella-riga { position: static; inset: auto; flex-direction: row; gap: 8px; background: none; backdrop-filter: none; -webkit-backdrop-filter: none; justify-content: flex-start; }
.rotella-caricamento.rotella-riga svg { width: 30px; height: 30px; }
.rotella-caricamento.rotella-riga .rc-testo { position: static; }
.azioni-apparecchio { gap: 8px; padding-bottom: 12px; border-bottom: 1px solid var(--bordo); }
.sezione-foto { display: flex; flex-direction: column; gap: 8px; padding-top: 12px; border-top: 1px solid var(--bordo); }
.pr-testa { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; justify-content: space-between; margin-bottom: 14px; }
.pr-schede { display: inline-flex; gap: 4px; padding: 4px; border-radius: 14px; background: rgba(255, 255, 255, 0.06); border: 1px solid var(--bordo); }
.pr-schede button { border: 0; background: none; color: var(--tenue); font: inherit; font-weight: 700; padding: 8px 16px; border-radius: 10px; cursor: pointer; }
.pr-schede button[aria-selected="true"] { background: rgba(110, 180, 255, 0.22); color: #fff; }
.pr-utente { max-width: 320px; }
.pr-corpo { display: flex; flex-direction: column; gap: 16px; }
.pr-nav { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.pr-data { position: relative; display: inline-flex; align-items: center; font-size: 17px; cursor: pointer; padding: 0 4px; }
.pr-data input[type=date] { position: absolute; inset: 0; opacity: 0; cursor: pointer; width: 100%; }
.pr-stato { margin-left: auto; }
.pr-totali { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.pr-totali > div { padding: 12px 14px; border-radius: 14px; background: rgba(255, 255, 255, 0.05); border: 1px solid var(--bordo); display: flex; flex-direction: column; gap: 2px; }
.pr-totali span { font-size: 12px; color: var(--tenue); }
.pr-totali strong { font-family: var(--font-titoli); font-size: 22px; font-weight: 600; }
.pr-ambra { color: var(--ambra); }
@media (max-width: 640px) { .pr-totali { grid-template-columns: repeat(2, minmax(0, 1fr)); } .pr-stato { margin-left: 0; width: 100%; } }
.pr-striscia { display: flex; flex-direction: column; gap: 6px; }
.pr-barra { position: relative; height: 30px; border-radius: 10px; background: rgba(255, 255, 255, 0.05); border: 1px solid var(--bordo); overflow: hidden; }
.pr-orario { position: absolute; top: 0; bottom: 0; background: rgba(110, 180, 255, 0.07); border-left: 1px dashed rgba(140, 200, 255, 0.4); border-right: 1px dashed rgba(140, 200, 255, 0.4); }
.pr-seg { position: absolute; top: 4px; bottom: 4px; border-radius: 6px; }
.pr-lavoro, .pr-lavoro-c { }
.pr-seg.pr-lavoro, .pr-lavoro-c { background: linear-gradient(135deg, #6fb6ff, #5ee1ff); }
.pr-seg.pr-spostamento, .pr-spostamento-c { background: rgba(94, 225, 255, 0.35); }
.pr-seg.pr-pausa, .pr-pausa-c { background: repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.22) 0 4px, rgba(255, 255, 255, 0.06) 4px 8px); }
.pr-seg.pr-buco, .pr-buco-c { background: rgba(255, 122, 122, 0.22); border: 1px dashed rgba(255, 122, 122, 0.8); }
.pr-tacche { position: relative; height: 14px; font-size: 11px; color: var(--tenue); }
.pr-tacche span { position: absolute; transform: translateX(-50%); }
.pr-legenda { display: flex; flex-wrap: wrap; gap: 6px 14px; font-size: 12px; color: var(--tenue); }
.pr-legenda i { display: inline-block; width: 12px; height: 12px; border-radius: 4px; margin-right: 5px; vertical-align: -1px; }
.pr-ok-c { background: rgba(74, 222, 128, 0.5); } .pr-manca-c { background: rgba(255, 122, 122, 0.55); } .pr-extra-c { background: rgba(255, 181, 71, 0.55); }
.pr-pausa { align-self: flex-start; }
.pr-buchi { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.pr-buchi .etichetta-su { width: 100%; }
.pr-buco { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; padding: 10px 14px; border-radius: 12px; border: 1px dashed rgba(255, 122, 122, 0.8); background: rgba(255, 122, 122, 0.1); color: #ffd0d0; font: inherit; font-weight: 700; cursor: pointer; }
.pr-buco span { font-size: 12px; font-weight: 400; color: var(--tenue); }
.pr-buco:hover { background: rgba(255, 122, 122, 0.18); }
.pr-elenco { display: flex; flex-direction: column; gap: 8px; }
button.pr-lavoro, div.pr-lavoro { display: flex; align-items: center; gap: 12px; width: 100%; text-align: left; padding: 12px 14px; border-radius: 14px; border: 1px solid var(--bordo); background: rgba(255, 255, 255, 0.04); color: var(--testo); font: inherit; }
button.pr-lavoro { cursor: pointer; }
button.pr-lavoro:hover { border-color: var(--bordo-forte); }
.pr-previsto { border-style: dashed !important; opacity: .9; }
.pr-ore { font-family: var(--font-titoli); font-weight: 600; font-size: 14px; line-height: 1.3; width: 50px; flex: none; text-align: center; }
.pr-cosa { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.pr-cosa span { font-size: 13px; color: var(--tenue); }
.pr-etichette { display: flex; flex-wrap: wrap; gap: 4px; }
.pr-durata { flex: none; font-weight: 700; color: var(--testo-2); }
.pr-velo { z-index: 70; }
.pr-finestra { max-width: 560px; }
.pr-modulo { display: flex; flex-direction: column; gap: 14px; }
.pr-modulo h2 { margin: 0; }
.pr-dove { display: flex; flex-direction: column; gap: 10px; }
.pr-dove > div { display: flex; flex-direction: column; gap: 8px; }
.pr-risultati { display: flex; flex-direction: column; gap: 6px; max-height: 260px; overflow-y: auto; overflow-x: hidden; }
.pr-risultato { display: flex; flex-direction: column; gap: 2px; text-align: left; padding: 10px 12px; border-radius: 12px; border: 1px solid var(--bordo); background: rgba(255, 255, 255, 0.05); color: var(--testo); font: inherit; cursor: pointer; }
.pr-risultato span { font-size: 12px; color: var(--tenue); }
.pr-risultato:hover { border-color: var(--bordo-forte); }
.pr-scelto { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 12px; border-radius: 12px; background: rgba(110, 180, 255, 0.1); border: 1px solid var(--bordo-forte); }
.pr-scelto > div { display: flex; flex-direction: column; gap: 4px; min-width: 0; flex: 1; }
.pr-modulo .pr-libero { align-self: flex-start; padding: 0; font-size: 14px; }
.link-bottone { background: none; border: 0; font: inherit; color: var(--link); cursor: pointer; }
.link-bottone:hover { color: #fff; }
.pr-calendario { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 6px; }
.pr-gs { text-align: center; font-size: 12px; color: var(--tenue); font-weight: 700; }
.pr-giorno { position: relative; min-height: 62px; border-radius: 12px; border: 1px solid var(--bordo); background: rgba(255, 255, 255, 0.04); color: var(--testo); font: inherit; cursor: pointer; display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between; padding: 6px 8px; }
.pr-giorno.ok { background: rgba(74, 222, 128, 0.12); border-color: rgba(74, 222, 128, 0.45); }
.pr-giorno.manca { background: rgba(255, 122, 122, 0.12); border-color: rgba(255, 122, 122, 0.6); }
.pr-giorno.extra { background: rgba(255, 181, 71, 0.12); border-color: rgba(255, 181, 71, 0.5); }
.pr-giorno.riposo, .pr-giorno.futuro { opacity: .45; }
.pr-giorno:disabled { cursor: default; }
.pr-num { font-weight: 700; }
.pr-h { font-size: 12px; color: var(--testo-2); }
.pr-t { position: absolute; top: 6px; right: 8px; font-size: 11px; font-weight: 700; color: var(--ambra); }
@media (max-width: 480px) { .pr-giorno { min-height: 52px; padding: 4px 5px; } .pr-h { font-size: 10px; } }
.etichetta-su { font-size: 12px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; color: var(--ciano); }
.p-viola { background: rgba(167, 139, 250, 0.2); color: #d9ccff; border-color: rgba(167, 139, 250, 0.5); }
.pr-seg.pr-ferie, .pr-ferie-c { background: rgba(167, 139, 250, 0.55); }
.pr-seg.pr-permesso, .pr-permesso-c { background: rgba(111, 182, 255, 0.4); border: 1px solid rgba(111, 182, 255, 0.8); }
.pr-giorno.ferie { background: rgba(167, 139, 250, 0.14); border-color: rgba(167, 139, 250, 0.5); }
.pr-giust { display: flex; flex-wrap: wrap; gap: 8px; }
.pr-conta { display: inline-flex; min-width: 20px; height: 20px; padding: 0 6px; border-radius: 10px; background: var(--ambra); color: #2a1a00; font-size: 12px; align-items: center; justify-content: center; margin-left: 4px; }
.pr-richiesta { align-items: flex-start; flex-wrap: wrap; }
.pr-azioni-r { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-left: auto; }
.pr-schede { flex-wrap: wrap; }
.pr-barra { height: 40px; cursor: pointer; }
.pr-barra:hover { border-color: var(--bordo-forte); }
.pr-seg { pointer-events: none; }
.pr-suggerimento { width: 100%; color: var(--testo-2); }
.pr-durata { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
.pr-modifica { font-size: 12px; font-weight: 700; color: var(--link); white-space: nowrap; }
.pr-schede { flex-wrap: nowrap; max-width: 100%; overflow-x: auto; scrollbar-width: none; }
.pr-schede button { white-space: nowrap; }
@media (max-width: 480px) { .pr-schede button { padding: 8px 11px; font-size: 14px; } }
.p-rosa { background: rgba(244, 114, 182, 0.2); color: #ffd1ea; border-color: rgba(244, 114, 182, 0.5); }
.pr-seg.pr-malattia, .pr-malattia-c { background: rgba(244, 114, 182, 0.5); }
.pr-seg.pr-altro, .pr-altro-c { background: rgba(203, 213, 225, 0.35); border: 1px solid rgba(203, 213, 225, 0.7); }
.pr-giust-p { display: inline-flex; align-items: center; gap: 6px; }
.pr-togli { background: none; border: 0; padding: 0 2px; color: inherit; font: inherit; cursor: pointer; opacity: 0.75; }
.pr-togli:hover { opacity: 1; }
.pr-bottoni { display: flex; gap: 8px; flex-wrap: wrap; }
.pr-buco-assenza { border-color: rgba(244, 114, 182, 0.7); background: rgba(244, 114, 182, 0.08); color: #ffd1ea; }
.pr-buco-assenza:hover { background: rgba(244, 114, 182, 0.16); }
.pr-chiusura { display: flex; flex-direction: column; gap: 10px; margin-top: 6px; padding: 14px 16px; border-radius: var(--raggio-p); border: 1px solid var(--bordo); background: rgba(255, 255, 255, 0.04); }
.pr-chiusura-riga { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.pr-rosso { color: #ffb4b4; }
.pr-piede { margin-top: 14px; text-align: center; font-size: 13px; }
.pr-informativa { display: flex; flex-direction: column; gap: 10px; }
.pr-informativa h2 { margin: 0; }
.pr-informativa-testo.testo-privacy { max-width: none; padding: 4px 14px 4px 2px; max-height: 55vh; overflow: auto; font-size: 15px; }
.pr-informativa-testo.testo-privacy h2 { font-size: 17px; margin-top: 18px; }
.pr-finestra.pr-larga { max-width: 760px; }
.pr-h { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.campo.pr-bloccato { opacity: 0.6; cursor: not-allowed; }
.corr-extra { display: grid; grid-template-columns: minmax(0, 1fr) 84px 64px 40px; gap: 8px; align-items: center; padding: 10px; border: 1px solid var(--bordo); border-radius: var(--raggio-p); background: rgba(255, 255, 255, 0.03); margin-bottom: 8px; }
.corr-extra [data-xt] { grid-column: 1 / -1; }
.voce-rap { flex-wrap: wrap; align-items: flex-start; }
.voce-rap .corpo { flex: 1 1 260px; }
.voce-rap .corpo span { overflow-wrap: anywhere; }
.azioni-rap { display: flex; flex-wrap: wrap; gap: 8px; margin-left: auto; }
@media (max-width: 600px) { .azioni-rap { margin-left: 0; width: 100%; } }
.gruppo-doc { border: 1px solid var(--bordo); border-radius: var(--raggio-p); padding: 4px 12px; margin-top: 10px; background: rgba(255, 255, 255, 0.02); }
.gruppo-doc > summary { display: flex; justify-content: space-between; align-items: center; gap: 10px; cursor: pointer; list-style: none; padding: 10px 0; }
.gruppo-doc > summary::-webkit-details-marker { display: none; }
.gruppo-doc > summary::before { content: "›"; display: inline-block; margin-right: 8px; transition: transform .15s; color: var(--tenue); }
.gruppo-doc[open] > summary::before { transform: rotate(90deg); }
.gruppo-doc > summary > span:first-child { flex: 1; min-width: 0; }
.gruppo-doc > .elenco { padding-bottom: 10px; }
.velo { overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; }
.velo > .vetro { overscroll-behavior: contain; }
.voce-doc { padding: 10px 12px; }
.voce-doc a.icona-file { text-decoration: none; flex: none; }
.voce-doc a.icona-file:hover { background: rgba(110, 180, 255, 0.3); color: #fff; }
.voce-doc .corpo { color: var(--testo); background: none; border: 0; font: inherit; text-align: left; cursor: pointer; padding: 0; }
.voce-doc .corpo:hover strong { color: #fff; }
.voce-doc .corpo strong { white-space: normal; }
.voce-doc button.icona-file { border: 0; font: inherit; font-size: 10px; font-weight: 700; cursor: pointer; }
.barra-gal { display: flex; gap: 12px; align-items: center; margin-bottom: 16px; flex-wrap: wrap; }
.cerca-gal { position: relative; flex: 1; min-width: 220px; max-width: 560px; display: block; }
.cerca-gal .campo { padding-left: 42px; }
.cerca-gal > .icona { position: absolute; left: 13px; top: 50%; transform: translateY(-50%); color: var(--tenue); pointer-events: none; }
.schede-gal { display: flex; gap: 6px; flex-wrap: wrap; }
.gal { display: grid; grid-template-columns: 270px minmax(0, 1fr); gap: 20px; align-items: start; }
.albero-foto { padding: 12px; display: flex; flex-direction: column; gap: 2px; font-size: 14px; position: sticky; top: 16px; max-height: calc(100vh - 32px); overflow-y: auto; }
.albero-foto .t { display: flex; align-items: center; gap: 8px; padding: 7px 10px; border-radius: 10px; color: var(--testo); cursor: pointer; }
.albero-foto .t:hover { background: rgba(110, 180, 255, 0.10); }
.albero-foto .t.on { background: rgba(110, 180, 255, 0.20); color: #fff; }
.albero-foto .t .nm { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.albero-foto .t .n { color: var(--tenue); font-size: 12px; }
.albero-foto .l2 { padding-left: 30px; font-size: 13px; }
.albero-foto .car { width: 12px; color: var(--tenue); font-size: 11px; flex: none; }
.albero-foto .sez { font-size: 11px; letter-spacing: 1.2px; text-transform: uppercase; color: var(--ciano); font-weight: 700; padding: 8px 10px 4px; }
.corpo-gal { min-width: 0; }
.briciole { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; color: var(--tenue); font-size: 14px; margin-bottom: 8px; }
.briciole b { color: var(--testo); font-weight: 600; }
.briciole a { display: inline-flex; align-items: center; gap: 4px; color: var(--tenue); }
.briciole a:hover { color: var(--ciano); }
.briciole .icona { width: 16px; height: 16px; }
.strisce { display: flex; flex-direction: column; gap: 8px; }
.st { display: grid; grid-template-columns: 92px minmax(160px, 1fr) auto; gap: 16px; align-items: center; padding: 8px 12px; border-radius: 14px; background: rgba(255, 255, 255, 0.035); color: var(--testo); }
.st:hover { background: rgba(110, 180, 255, 0.10); }
.st .dt { display: flex; flex-direction: column; }
.st .dt b { font-size: 20px; line-height: 1.05; font-family: var(--font-titoli); font-weight: 600; white-space: nowrap; }
.st .dt span { font-size: 12px; color: var(--tenue); }
.st .tx { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.st .tx > b { font-size: 15px; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.st .tx > span { font-size: 12px; color: var(--tenue); display: flex; gap: 6px; align-items: center; flex-wrap: wrap; }
.st .tx > span b { color: var(--testo); font-weight: 600; }
.st .fila { display: flex; gap: 4px; }
.st .fila img { width: 64px; height: 48px; object-fit: cover; border-radius: 6px; display: block; background: rgba(255, 255, 255, 0.06); }
.st .fila .piu { width: 64px; height: 48px; border-radius: 6px; background: rgba(255, 255, 255, 0.08); display: grid; place-items: center; font-size: 13px; color: var(--tenue); font-weight: 600; }
.st .fila .piu.vuota { font-weight: 400; font-size: 12px; }
.anno-sep { font-size: 12px; letter-spacing: 1.2px; color: var(--ciano); font-weight: 700; padding: 10px 4px 2px; }
.etich { font-size: 11px; padding: 2px 8px; border-radius: 999px; background: rgba(255, 255, 255, 0.08); color: #cfe0ff; white-space: nowrap; }
.etich.cli { background: rgba(80, 220, 150, 0.16); color: #8ff0bf; }
.etich.link { background: rgba(94, 225, 255, 0.15); color: #9fe9ff; }
.etich.lav { background: rgba(110, 150, 255, 0.18); color: #b9ccff; }
.st-riga { display: block; }
.st.con-lav { position: relative; grid-template-columns: 92px minmax(0, 1fr) 170px 30px; gap: 8px 14px; padding: 10px 12px; }
.st.con-lav:hover { background: rgba(110, 180, 255, 0.10); }
.st-apri { position: absolute; inset: 0; border-radius: inherit; z-index: 0; }
.st.con-lav > .st-lav, .st.con-lav > .st-x { position: relative; z-index: 1; }
.st.con-lav > .fila { grid-column: 2 / -1; grid-row: 2; }
.st-lav { display: flex; flex-direction: column; gap: 1px; font-size: 13px; color: var(--testo); line-height: 1.25; align-items: flex-start; }
.st-lav > span { font-size: 11px; letter-spacing: 0.6px; text-transform: uppercase; color: var(--tenue); }
.st-lav b { font-weight: 600; white-space: nowrap; }
a.st-lav b::after { content: " →"; opacity: 0; transition: opacity 0.15s; }
a.st-lav:hover b { color: var(--ciano); }
a.st-lav:hover b::after { opacity: 1; }
.st-lav.tenue { color: var(--tenue); font-size: 12px; }
.st-genera { display: inline-flex; align-items: center; gap: 5px; padding: 5px 10px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, 0.14);
  background: transparent; color: var(--tenue); font: inherit; font-size: 12.5px; cursor: pointer; white-space: nowrap; }
.st-genera .icona { width: 14px; height: 14px; }
.st-genera:hover { color: var(--ciano); border-color: rgba(94, 225, 255, 0.45); background: rgba(94, 225, 255, 0.06); }
.st-x { width: 30px; height: 30px; display: grid; place-items: center; justify-self: center; border-radius: 50%; border: 0; background: transparent; color: #ff6b6b; cursor: pointer; }
.st-x .icona { width: 15px; height: 15px; stroke-width: 2.4; }
.st-x:hover { color: #ff8a8a; background: rgba(255, 90, 90, 0.14); }
.cestino-riga .st { opacity: 0.85; }
@media (max-width: 900px) {
  .st.con-lav { grid-template-columns: 64px minmax(0, 1fr) 30px; gap: 8px 10px; }
  .st.con-lav > .tx { grid-column: 2; grid-row: 1; }
  .st.con-lav > .st-x, .st.con-lav > .st-x-vuota { grid-column: 3; grid-row: 1; align-self: start; }
  .st.con-lav > .st-lav { grid-column: 1 / -1; grid-row: 2; flex-direction: row; gap: 6px; align-items: baseline; }
  .st.con-lav > .fila { grid-column: 1 / -1; grid-row: 3; }
  .st.con-lav > .fila img, .st.con-lav > .fila .piu { width: calc((100% - 20px) / 6); height: auto; aspect-ratio: 4 / 3; }
}
.sez-genera { display: flex; flex-direction: column; gap: 6px; padding: 12px; border-radius: 14px; background: rgba(110, 180, 255, 0.07); margin-bottom: 6px; }
.riga-simile { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 8px 10px; border-radius: 10px; background: rgba(255, 255, 255, 0.04); }
.riga-simile > span { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.elenco-saltate { margin: 0 0 12px; padding-left: 18px; display: flex; flex-direction: column; gap: 4px; }
.lista-abbina { display: flex; flex-direction: column; gap: 6px; max-height: 52vh; overflow: auto; margin: 10px 0; }
.lista-abbina .st { cursor: pointer; text-align: left; border: 0; font: inherit; width: 100%; }
.etich.man { background: rgba(255, 181, 71, 0.15); color: #ffd18a; }
.etich.avv { background: rgba(255, 130, 90, 0.16); color: #ffb79c; }
.sez-cli { margin-top: 18px; padding: 14px; border-radius: 18px; border: 1px dashed rgba(255, 181, 71, 0.45); background: rgba(255, 181, 71, 0.05); }
.sez-cli h4 { margin: 0 0 4px; font-size: 13px; letter-spacing: 1.2px; text-transform: uppercase; color: #ffd18a; }
.sez-cli p { margin: 0 0 10px; font-size: 12px; color: var(--tenue); }
.sotto-cart { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: 13px; color: var(--tenue); margin: -6px 0 14px; }
.sotto-cart b { color: var(--testo); }
.pannello-cartella { position: relative; }
.note-cartella { margin-bottom: 12px; }
.nota-int { display: flex; gap: 10px; justify-content: space-between; align-items: flex-start; padding: 8px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.08); }
.nota-int:last-of-type { border-bottom: 0; }
.carica-zona { display: block; border: 2px dashed rgba(140, 200, 255, 0.4); border-radius: 14px; padding: 14px; text-align: center; color: var(--tenue); font-size: 14px; background: rgba(110, 180, 255, 0.05); transition: background .15s, border-color .15s; }
.carica-zona.sopra { background: rgba(110, 180, 255, 0.16); border-color: var(--ciano); }
.carica-zona.grande { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 40px 20px; cursor: pointer; }
.carica-zona.grande .icona { width: 40px; height: 40px; stroke: #7cc4ff; }
.link-finto { color: var(--ciano); font-weight: 700; cursor: pointer; }
.coda { display: flex; flex-direction: column; gap: 6px; margin-top: 10px; font-size: 13px; }
.coda .r { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.coda .bar { flex: 1; min-width: 120px; height: 6px; border-radius: 3px; background: rgba(255, 255, 255, 0.1); overflow: hidden; }
.coda .bar i { display: block; height: 100%; background: linear-gradient(90deg, #3d8bff, var(--ciano)); transition: width .2s; }
.azioni-cart { display: flex; justify-content: flex-end; margin-top: 10px; }
.giorno-foto { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; margin: 16px 0 10px; }
.giorno-foto strong { font-size: 15px; }
.giorno-foto span { font-size: 13px; }
.griglia-foto { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px; }
.griglia-foto.mini { grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); gap: 6px; }
.ft { position: relative; aspect-ratio: 1; border-radius: 12px; overflow: hidden; outline: 3px solid transparent; outline-offset: -3px; cursor: pointer; background: rgba(255, 255, 255, 0.05); }
.ft img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .12s, border-radius .12s; }
.ft .sp { position: absolute; top: 7px; left: 7px; width: 24px; height: 24px; padding: 0; border-radius: 50%; border: 2px solid rgba(255, 255, 255, 0.9); background: rgba(0, 0, 0, 0.3); display: grid; place-items: center; cursor: pointer; opacity: 0; transition: opacity .12s; }
.ft:hover .sp, .ft.sel .sp, .griglia-foto.mini .sp { opacity: 1; }
@media (pointer: coarse) { .ft .sp { opacity: 1; } }
.ft.sel { outline-color: var(--ciano); }
.ft.sel img { transform: scale(.9); border-radius: 8px; }
.ft.sel .sp { background: var(--ciano); border-color: var(--ciano); }
.ft.sel .sp::after { content: "✓"; color: #04122e; font-weight: 800; font-size: 13px; }
.griglia-foto.mini .sp { width: 20px; height: 20px; top: 5px; left: 5px; }
.ft .tag { position: absolute; bottom: 6px; left: 6px; right: 6px; display: flex; gap: 4px; flex-wrap: wrap; pointer-events: none; }
.ft .tag span { display: inline-flex; align-items: center; gap: 3px; font-size: 10.5px; padding: 2px 7px; border-radius: 999px; background: rgba(4, 18, 46, 0.78); color: #dff; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ft .tag .icona { width: 11px; height: 11px; flex: none; }
.ft.gia { cursor: default; }
.ft.gia img { opacity: .45; }
.ft.gia .sp { display: none; }
.ft.gia::after { content: "già collegata"; position: absolute; left: 0; right: 0; bottom: 0; font-size: 10px; text-align: center; padding: 3px; background: rgba(4, 18, 46, 0.82); color: #8ff0bf; }
.barra-sel { position: sticky; bottom: 16px; z-index: 5; margin-top: 18px; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; padding: 10px 14px; border-radius: 16px; background: rgba(12, 32, 74, 0.95); border: 1px solid rgba(94, 225, 255, 0.35); box-shadow: 0 14px 40px rgba(0, 0, 0, 0.45); }
.barra-sel strong { margin-right: auto; }
.barra-sel[hidden] { display: none; }
.lb-portale .lightbox { position: relative; }
.lb-freccia { position: absolute; top: 50%; transform: translateY(-50%); width: 44px; height: 64px; border: 0; border-radius: 12px; background: rgba(4, 18, 46, 0.55); color: #fff; font-size: 30px; cursor: pointer; }
.lb-freccia:hover { background: rgba(4, 18, 46, 0.8); }
.lb-freccia.sx { left: 8px; } .lb-freccia.dx { right: 8px; }
.riga-op { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 12px 14px; border-radius: 14px; background: rgba(255, 255, 255, 0.04); cursor: pointer; }
.riga-op.col { flex-direction: column; align-items: stretch; cursor: default; }
.riga-op-testa { display: flex; align-items: center; justify-content: space-between; gap: 14px; cursor: pointer; }
.riga-op .tx { display: flex; flex-direction: column; gap: 2px; }
.riga-op .tx span { color: var(--tenue); font-size: 13px; }
.interr { position: relative; flex: none; width: 50px; height: 28px; }
.interr input { position: absolute; inset: 0; opacity: 0; margin: 0; cursor: pointer; }
.interr i { position: absolute; inset: 0; border-radius: 999px; background: rgba(255, 255, 255, 0.16); border: 1px solid rgba(255, 255, 255, 0.18); pointer-events: none; transition: background .2s; }
.interr i::after { content: ""; position: absolute; top: 2px; left: 3px; width: 22px; height: 22px; border-radius: 50%; background: #fff; transition: transform .2s; }
.interr input:checked + i { background: linear-gradient(135deg, #3d8bff, var(--ciano)); border-color: transparent; box-shadow: 0 0 12px rgba(94, 225, 255, 0.4); }
.interr input:checked + i::after { transform: translateX(21px); }
.interr input:disabled + i { opacity: .4; }
.link-box { display: flex; gap: 8px; }
.link-box .campo { flex: 1; font-family: ui-monospace, monospace; font-size: 13px; }
.riga-link { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.riga-link .campo { width: auto; }
.elenco-imp { display: flex; flex-direction: column; gap: 8px; }
.voce-imp { display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px; border-radius: 12px; background: rgba(255, 255, 255, 0.04); cursor: pointer; }
.voce-imp > span { display: flex; flex-direction: column; gap: 4px; flex: 1; }
.voce-imp input[type=radio] { margin-top: 4px; }
.foto-imp [data-pane] { max-height: 60vh; overflow-y: auto; }
.pagina-foto { max-width: 1200px; margin: 0 auto; padding: 24px 16px 40px; }
.testa-foto { display: flex; gap: 20px; align-items: center; margin-bottom: 18px; flex-wrap: wrap; }
.testa-foto h1 { margin: 2px 0 4px; font-size: 26px; }
.testa-foto p { margin: 0; }
.biglietto.logo-foto { --w: 190px; }
@media (max-width: 560px) { .biglietto.logo-foto { --w: 170px; } }
.barra-foto-pub { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.barra-foto-pub .spunta { margin-right: auto; }
.piede-foto { text-align: center; margin-top: 16px; }
.lb-foto { position: fixed; inset: 0; z-index: 90; background: rgba(2, 8, 22, 0.94); display: flex; align-items: center; justify-content: center; }
.lb-foto[hidden] { display: none; }
.lb-foto img { max-width: 94vw; max-height: 88vh; border-radius: 8px; }
.lb-foto button { position: absolute; border: 0; background: rgba(255, 255, 255, 0.1); color: #fff; border-radius: 12px; cursor: pointer; font-size: 28px; width: 48px; height: 60px; }
.lb-foto .lb-x { top: 14px; right: 14px; height: 48px; font-size: 20px; }
.lb-foto .lb-p { left: 12px; top: 50%; transform: translateY(-50%); }
.lb-foto .lb-s { right: 12px; top: 50%; transform: translateY(-50%); }
.lb-foto .lb-n { position: absolute; bottom: 14px; left: 50%; transform: translateX(-50%); color: #cfe0ff; font-size: 13px; }
@media (max-width: 900px) {
  .gal { grid-template-columns: 1fr; }
  .albero-foto { position: static; max-height: 240px; }
  .st { grid-template-columns: 70px minmax(0, 1fr); }
  .st .fila { grid-column: 1 / -1; }
  .st .fila img, .st .fila .piu { width: calc((100% - 16px) / 5); height: auto; aspect-ratio: 4 / 3; }
  .griglia-foto { grid-template-columns: repeat(auto-fill, minmax(100px, 1fr)); gap: 6px; }
  .barra-sel { bottom: 8px; }
}
.voce-foto-cli { display: flex; gap: 12px; align-items: center; width: 100%; text-align: left; font: inherit; color: var(--testo); background: rgba(255, 255, 255, 0.035); border: 0; border-radius: 12px; padding: 8px 10px; cursor: pointer; }
.voce-foto-cli:hover { background: rgba(110, 180, 255, 0.10); }
.voce-foto-cli .fila { display: flex; gap: 3px; flex: none; }
.voce-foto-cli .fila img { width: 48px; height: 36px; object-fit: cover; border-radius: 5px; }
.voce-foto-cli .corpo { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.voce-foto-cli .corpo span { font-size: 12px; color: var(--tenue); }
.filtri-foto { padding: 14px; display: flex; flex-direction: column; gap: 6px; position: sticky; top: 16px; max-height: calc(100vh - 32px); overflow-y: auto; }
.filtri-foto .cerca-gal { max-width: none; min-width: 0; }
.filtri-foto .sez { font-size: 11px; letter-spacing: 1.2px; text-transform: uppercase; color: var(--ciano); font-weight: 700; padding: 10px 2px 2px; }
.filtri-foto .periodo { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.filtri-foto .periodo label { display: flex; flex-direction: column; gap: 4px; font-size: 12px; color: var(--tenue); }
.chip-filtri { display: flex; flex-wrap: wrap; gap: 6px; }
.sugg-campo { position: relative; }
.sugg-elenco { position: absolute; left: 0; right: 0; top: calc(100% + 4px); z-index: 20; padding: 6px; border-radius: 12px; background: rgba(12, 32, 74, 0.98); border: 1px solid rgba(140, 200, 255, 0.25); box-shadow: 0 14px 40px rgba(0, 0, 0, 0.5); display: flex; flex-direction: column; gap: 2px; max-height: 320px; overflow-y: auto; }
.sugg-elenco button { display: flex; flex-direction: column; gap: 1px; text-align: left; padding: 7px 10px; border: 0; border-radius: 9px; background: none; color: var(--testo); font: inherit; font-size: 14px; cursor: pointer; }
.sugg-elenco button:hover { background: rgba(110, 180, 255, 0.16); }
.sugg-elenco button span { font-size: 12px; color: var(--tenue); }
.scelta-filtro { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 8px 8px 8px 12px; border-radius: 12px; background: rgba(110, 180, 255, 0.18); border: 1px solid rgba(94, 225, 255, 0.35); font-size: 14px; }
.scelta-filtro span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.scelta-filtro button { flex: none; width: 26px; height: 26px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, 0.12); color: #fff; cursor: pointer; }
.testa-elenco { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 8px; min-height: 40px; }
.mese-sep { font-size: 12px; letter-spacing: 1px; text-transform: uppercase; color: var(--ciano); font-weight: 700; padding: 12px 4px 2px; }
.mese-sep:first-child { padding-top: 0; }
.paginazione { display: flex; gap: 6px; justify-content: center; align-items: center; flex-wrap: wrap; margin-top: 16px; }
.paginazione .bottone { min-width: 40px; justify-content: center; }
#f-lista.in-carica { opacity: .55; transition: opacity .15s; }
@media (max-width: 900px) { .filtri-foto { position: static; max-height: none; } }
label.riga-op, label.riga-op-testa, label.voce-imp { flex-direction: row; }
label.riga-op { align-items: center; }
button.link-finto { background: none; border: 0; padding: 0; font: inherit; }
.sel-a-richiesta .ft .sp { display: none; }
.sel-a-richiesta.in-selezione .ft .sp { display: grid; opacity: 1; pointer-events: none; }
.barra-sel .spento { opacity: .4; pointer-events: none; }
.azioni-cart { gap: 8px; }
.barra-foto-pub #conta { margin-right: auto; }
@media (max-width: 700px) {
  .barra-sel { gap: 6px; padding: 8px 10px; }
  .barra-sel strong { flex-basis: 100%; font-size: 14px; }
  .barra-sel .bottone { flex: 1 1 auto; min-height: 38px; padding: 0 10px; font-size: 14px; justify-content: center; }
  .barra-sel .bottone .icona { display: none; }
}
.gruppi-lav { margin-bottom: 12px; }
.tipo-lav { display: inline-block; font-weight: 700; }
.tl-spandimento { --tl: #5ee1ff; }
.tl-cantiere { --tl: #ffb547; }
.tl-installazione { --tl: #b99bff; }
.tipo-lav[class*="tl-"] { color: var(--tl); }
.tabella-int td .tipo-lav + .tenue { display: block; }
.riga-lav .corpo-int .piccolo { display: block; }
.scelta-nuovo { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; }
.voce-nuovo { display: flex; flex-direction: column; gap: 4px; text-align: left; padding: 14px; border-radius: 14px; border: 1px solid rgba(255, 255, 255, 0.12); background: rgba(255, 255, 255, 0.05); color: inherit; font: inherit; cursor: pointer; }
.voce-nuovo:hover { background: rgba(110, 180, 255, 0.12); border-color: rgba(110, 180, 255, 0.4); }
.voce-nuovo strong { font-size: 16px; }
.scheda-lavoro { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 16px; align-items: start; }
.col-lavoro { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.col-lavoro > .pannello { margin: 0; }
@media (max-width: 900px) { .scheda-lavoro { grid-template-columns: 1fr; } }
.dati-lavoro { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 8px 14px; margin: 12px 0 4px; }
.dati-lavoro dt { color: var(--tenue); font-size: 14px; }
.dati-lavoro dd { margin: 0; }
.dati-lavoro .blocco { display: block; margin-top: 4px; }
.sotto-tit { font-size: 13px; text-transform: uppercase; letter-spacing: .05em; color: #8fc1ff; margin: 18px 0 6px; }
.testo-lungo { white-space: pre-line; margin: 0; }
.anteprime-lavoro { display: grid; grid-template-columns: repeat(auto-fill, minmax(84px, 1fr)); gap: 6px; margin: 10px 0; }
.anteprime-lavoro img, .anteprime-lavoro .piu-foto { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 10px; display: flex; align-items: center; justify-content: center; background: rgba(255, 255, 255, 0.06); font-weight: 700; color: inherit; }
.stato-link { display: flex; flex-direction: column; gap: 3px; padding: 10px 12px; border-radius: 12px; background: rgba(255, 181, 71, 0.1); box-shadow: inset 0 0 0 1px rgba(255, 181, 71, 0.35); margin-top: 8px; }
.stato-link.attivo { background: rgba(74, 222, 128, 0.1); box-shadow: inset 0 0 0 1px rgba(74, 222, 128, 0.4); }
.squadra-lavoro { display: flex; flex-direction: column; gap: 6px; margin-top: 10px; }
.persona-lavoro { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 12px; background: rgba(255, 255, 255, 0.04); }
.persona-lavoro > span:first-child { display: flex; flex-direction: column; }
.ore-lavoro { font-weight: 700; white-space: nowrap; }
.totale-lavoro { display: flex; justify-content: space-between; margin-top: 10px; padding: 10px 12px; border-radius: 12px; background: rgba(80, 150, 255, 0.16); }
.giorni-lavoro { display: flex; flex-direction: column; }
.giorno-lavoro { display: grid; grid-template-columns: 110px minmax(0, 1fr) auto; gap: 10px; padding: 8px 2px; border-bottom: 1px solid rgba(255, 255, 255, 0.07); align-items: baseline; }
.gl-chi { display: flex; flex-wrap: wrap; gap: 2px 12px; }
.gl-data { color: var(--tenue); font-size: 14px; }
.modulo-lavoro { display: flex; flex-direction: column; gap: 14px; max-width: 860px; }
.modulo-lavoro .griglia3 { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px; align-items: end; }
.modulo-lavoro .griglia2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.modulo-lavoro .griglia2:empty { display: none; }
@media (max-width: 700px) { .modulo-lavoro .griglia3, .modulo-lavoro .griglia2 { grid-template-columns: 1fr; } }
label.spunta.riga-agenda { flex-direction: row; align-items: center; gap: 8px; padding-bottom: 12px; }
.campo-cliente { display: flex; flex-direction: column; gap: 6px; }
.squadra-scelta { border: 0; padding: 0; margin: 0; }
.squadra-scelta legend { padding: 0; margin-bottom: 8px; }
.chips-squadra { display: flex; flex-wrap: wrap; gap: 8px; }
label.chip-persona { flex-direction: row; cursor: pointer; }
.chip-persona input { position: absolute; opacity: 0; pointer-events: none; }
.chip-persona span { display: inline-flex; align-items: center; gap: 6px; padding: 7px 13px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, 0.16); background: rgba(255, 255, 255, 0.04); }
.chip-persona span i { width: 9px; height: 9px; border-radius: 50%; }
.chip-persona input:checked + span { background: rgba(80, 150, 255, 0.28); border-color: rgba(120, 180, 255, 0.7); }
.chip-persona input:focus-visible + span { outline: 2px solid #8fc1ff; }
.chip-persona.fissa span { opacity: .8; cursor: default; }
.ag-ore-lav { font-size: 11px; color: var(--tenue); padding: 6px 2px; text-align: right; border-bottom: 1px solid rgba(255, 255, 255, 0.08); }
.ag-cella-lav { display: flex; flex-direction: column; gap: 3px; padding: 4px 3px; border-bottom: 1px solid rgba(255, 255, 255, 0.08); border-left: 1px solid rgba(255, 255, 255, 0.05); min-width: 0; }
.ag-lav { display: block; font-size: 11.5px; line-height: 1.3; padding: 3px 6px; border-radius: 7px; color: #eaf3ff; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; border: 1px dashed var(--tl); background: color-mix(in srgb, var(--tl) 10%, transparent); }
.ag-lav.fatto { border-style: solid; background: color-mix(in srgb, var(--tl) 24%, transparent); }
.ag-lav.chiuso { opacity: .6; }
.ag-lav b { color: var(--tl); font-weight: 700; }
.ag-mese-lav { display: block; font-size: 11px; padding: 1px 5px; border-radius: 5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: #eaf3ff; background: color-mix(in srgb, var(--tl) 22%, transparent); border-left: 3px solid var(--tl); }
.modulo-lavoro .segmenti { align-self: flex-start; flex-wrap: wrap; }
.gruppo-menu { display: flex; flex-direction: column; gap: 2px; margin-top: 10px; }
.titolo-gruppo { font-size: 11px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: #8fb4e6; padding: 6px 12px 4px; }
.titolo-gruppo.sep { padding: 0; height: 1px; margin: 4px 12px 6px; background: rgba(255, 255, 255, 0.1); }
.fondo-menu { margin-top: 14px; padding-top: 10px; border-top: 1px solid rgba(255, 255, 255, 0.1); }
.b-menu, .marchio-alto, .chiudi-menu, .velo-menu { display: none; }
@media (min-width: 861px) {
  .laterale { max-height: calc(100vh - 40px); overflow-y: auto; scrollbar-width: thin; }
}
@media (max-width: 860px) {
  .guscio { display: block; }
  .laterale { position: fixed; top: 0; left: 0; bottom: 0; z-index: 70; width: min(300px, 86vw); max-width: none; border-radius: 0 22px 22px 0; padding: 16px 12px 24px; gap: 14px; overflow-y: auto; overscroll-behavior: contain;
    transform: translateX(-104%); transition: transform .22s ease; visibility: hidden; background: linear-gradient(180deg, #13305f, #0b2048) !important; }
  .menu-aperto .laterale { transform: none; visibility: visible; box-shadow: 12px 0 40px rgba(0, 0, 0, 0.5); }
  .laterale .biglietto { --w: 170px; }
  .velo-menu { display: block; position: fixed; inset: 0; z-index: 65; background: rgba(2, 8, 22, 0.55); opacity: 0; pointer-events: none; transition: opacity .2s; }
  .menu-aperto .velo-menu { opacity: 1; pointer-events: auto; }
  .menu-aperto { overflow: hidden; }
  .chiudi-menu { display: inline-flex; position: absolute; top: 10px; right: 10px; width: 38px; height: 38px; z-index: 1; }
  .menu a { min-height: 44px; }
  .barra-alto { justify-content: flex-start; position: sticky; top: 0; z-index: 30; margin: -12px -12px 0; padding: 10px 12px; background: rgba(8, 22, 52, 0.88); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); border-bottom: 1px solid rgba(255, 255, 255, 0.07); }
  .b-menu { display: inline-flex; width: 46px; height: 46px; flex: none; }
  .marchio-alto { display: block; margin-right: auto; }
  .marchio-alto .biglietto { --w: 78px; box-shadow: 0 6px 16px rgba(0, 0, 0, 0.35), inset 0 1px 1px rgba(255, 255, 255, 0.8); }
  .marchio-alto .biglietto img { width: 82%; }
  .barra-alto .chi-testo { display: none; }
  .chi-alto { padding: 6px; }
}
.consegna-lavoro { display: flex; flex-direction: column; gap: 8px; margin-top: 8px; }
.stato-consegna { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; font-size: 14px; color: var(--tenue); }
.stato-consegna li::before { content: "○"; margin-right: 8px; }
.stato-consegna li.si { color: var(--testo); }
.stato-consegna li.si::before { content: "✓"; color: #4ade80; }
.consegna-lavoro .link-app { align-self: flex-start; background: none; border: 0; color: #8fc1ff; cursor: pointer; padding: 0; font: inherit; font-size: 13px; }
button.titolo-gruppo { display: flex; align-items: center; gap: 8px; width: 100%; background: none; border: 0; font: inherit; font-size: 11px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: #8fb4e6; padding: 8px 12px 4px; cursor: pointer; border-radius: 8px; text-align: left; }
button.titolo-gruppo:hover { color: #fff; }
button.titolo-gruppo:focus-visible { outline: 2px solid var(--ciano); outline-offset: -2px; }
button.titolo-gruppo .icona { width: 15px; height: 15px; margin-left: auto; transition: transform .18s; }
.gruppo-menu.chiuso button.titolo-gruppo .icona { transform: rotate(-90deg); }
.gruppo-menu.chiuso .voci-gruppo { display: none; }
.voci-gruppo { display: flex; flex-direction: column; gap: 2px; }
button.titolo-gruppo .conta { margin-left: 6px; font-size: 11px; font-weight: 700; background: var(--ambra); color: #2a1a00; border-radius: 999px; padding: 0 7px; letter-spacing: 0; }
.barra-alto .cerca-alto { position: relative; flex: 1 1 auto; max-width: 460px; margin-right: auto; display: flex; align-items: center; }
.cerca-alto > .icona { position: absolute; left: 14px; width: 18px; height: 18px; color: var(--tenue); pointer-events: none; }
.cerca-alto .campo { width: 100%; padding-left: 42px; padding-right: 40px; min-height: 46px; border-radius: 999px; }
.tasto-cerca { position: absolute; right: 14px; font: 600 12px/1 inherit; color: var(--tenue); border: 1px solid var(--bordo); border-radius: 6px; padding: 3px 7px; pointer-events: none; }
.cerca-alto .campo:focus ~ .tasto-cerca { display: none; }
.cerca-ris { position: absolute; top: calc(100% + 8px); left: 0; right: 0; z-index: 80; max-height: min(70vh, 560px); overflow-y: auto; padding: 8px; background: rgba(12, 32, 74, 0.97); box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5); border-radius: 18px; }
.cerca-gruppo { font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #8fb4e6; padding: 10px 10px 4px; }
.cerca-gruppo { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.cerca-tutti-testa { background: none; border: 0; padding: 2px 4px; color: var(--ciano); font: inherit; font-size: 12px; font-weight: 600; letter-spacing: 0; text-transform: none; cursor: pointer; text-decoration: none; }
.cerca-tutti-testa:hover { color: #fff; }
.cerca-voce { display: flex; gap: 12px; align-items: center; width: 100%; text-align: left; background: none; border: 0; color: var(--testo); font: inherit; padding: 9px 10px; border-radius: 12px; cursor: pointer; }
.cerca-voce > span { display: flex; flex-direction: column; min-width: 0; }
.cerca-voce strong, .cerca-voce .tenue { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cerca-tutti strong { color: var(--ciano); }
.cerca-voce .icona { color: #8fc1ff; }
.cerca-voce:hover, .cerca-voce.attiva { background: rgba(110, 180, 255, 0.16); }
.cerca-vuoto { padding: 14px 10px; }
.b-cerca { display: none; }
.voce-lav-pan .corpo span:last-child { font-size: 12px; }
.voce-lav-pan .pillole-col { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; flex: none; }
.voce-avviso { box-shadow: inset 3px 0 0 #ff7a7a; }
.ore-pan { font-weight: 700; white-space: nowrap; }
@media (max-width: 860px) {
  .barra-alto .cerca-alto { display: none; }
  .b-cerca { display: inline-flex; width: 46px; height: 46px; flex: none; }
  .barra-alto.cerca-aperta .cerca-alto { display: flex; position: absolute; left: 12px; right: 12px; top: 10px; max-width: none; margin: 0; z-index: 5; }
  .barra-alto.cerca-aperta .cerca-alto .campo { background: #0f2a58; }
  .tasto-cerca { display: none; }
}
.pr-cli-lav { display: flex; flex-direction: column; gap: 4px; }
.pr-ris-lav { border-left: 3px solid var(--tl, #8fc1ff); margin-left: 10px; }
.pr-lav-testa { display: flex; justify-content: space-between; gap: 8px; font-size: 12px; }
.pr-lav-testa b { color: var(--tl, #8fc1ff); }
.pr-risultato.pr-apri-nuovo { border-style: dashed; color: #8fc1ff; font-weight: 700; }
.pr-apri { display: flex; flex-direction: column; gap: 8px; padding: 12px; border-radius: 12px; border: 1px solid var(--bordo-forte); background: rgba(110, 180, 255, 0.08); }
.pr-apri { min-width: 0; max-width: 100%; box-sizing: border-box; }
.pr-apri .segmenti { display: flex; flex-wrap: wrap; align-self: stretch; min-width: 0; }
.pr-apri .segmenti label { flex: 1 1 96px; min-width: 0; }
.pr-risultati:has(.pr-apri) { max-height: none; overflow: visible; }
.pr-apri .segmenti span { width: 100%; padding: 0 8px; font-size: 13.5px; }
.pr-apri .campo { width: 100%; min-width: 0; }
.pr-apri .azioni { flex-wrap: wrap; justify-content: flex-end; }
.da-verificare { display: flex; gap: 10px; align-items: center; justify-content: space-between; margin-top: 10px; flex-wrap: wrap; }
.giorni-avviso { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 12px; }
.giorni-avviso label { padding: 12px; border-radius: 14px; background: rgba(255, 255, 255, 0.04); gap: 8px; }
.campo-giorni { display: flex; align-items: center; gap: 8px; }
.campo-giorni .campo { width: 96px; }
.tabella-rap tbody tr[data-app]:not([data-app='']) { cursor: pointer; } .tabella-rap td .tenue.piccolo { display: block; }
.pr-ris-lav.pr-lav-chiuso { opacity: .75; border-left-style: dashed; }
.tl-manutenzione { --tl: #7cc4ff; }
.tl-intervento { --tl: #ff9a7a; }
.tabella-int td .tipo-lav + .tenue, .tabella-rap td .tipo-lav ~ .tenue { display: block; }
.tabella-rap .blocco-lav { display: block; margin-top: 2px; }
.tabella-rap tbody tr[data-lav] { cursor: pointer; }
.ore-lavoro { display: flex; flex-direction: column; align-items: flex-end; }
.ore-divise { margin-top: 6px; }
.giorno-lavoro strong { display: flex; flex-direction: column; align-items: flex-end; }
.modulo-lavoro .griglia3 { align-items: end; }
.modulo-lavoro .griglia3 > label { justify-content: flex-end; }
label.spunta.riga-agenda { min-height: 46px; padding-bottom: 0; align-self: end; margin-bottom: 0; }
label.spunta.riga-agenda[data-agenda] { align-self: start; justify-content: flex-start; min-height: 0; margin: 4px 0; }
.etich-facolt { display: inline; font-weight: 400; }
label:has(> .etich-facolt) { display: grid; grid-template-columns: auto 1fr; column-gap: 6px; align-items: baseline; }
label:has(> .etich-facolt) > .campo { grid-column: 1 / -1; }
.scelta-ente { display: grid; grid-template-columns: auto auto 1fr; gap: 10px 14px; align-items: center; padding: 12px 14px; border-radius: 14px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.12); }
.scelta-ente[hidden] { display: none; }
.scelta-ente .etich-ente { font-weight: 600; font-size: .9rem; }
.scelta-ente .segmenti { align-self: center; }
.scelta-ente .campo-ente { display: flex; flex-direction: row; align-items: center; gap: 8px; margin: 0; }
.scelta-ente .campo-ente[hidden], .scelta-ente .campo-ente [hidden] { display: none; }
.scelta-ente .campo-ente .campo { flex: 1; min-width: 160px; }
.scelta-ente .nota-ente { grid-column: 3; margin-top: -4px; }
@media (max-width: 700px) { .scelta-ente .nota-ente { grid-column: 1; } }
.elenco-enti { display: flex; flex-direction: column; gap: 8px; }
.riga-ente { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 12px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); }
.riga-ente.spento { opacity: .55; }
.riga-ente .corpo { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.riga-ente .corpo span { color: var(--tenue, #9fb3d6); font-size: .85rem; }
.riga-ente .azioni { gap: 6px; flex-wrap: nowrap; }
@media (max-width: 700px) { .scelta-ente { grid-template-columns: 1fr; } }
.ente-rigo { display: block; font-size: .8rem; color: var(--blu, #1d5fbf); }
a.ag-ev.ag-ev-lav { text-decoration: none; background: color-mix(in srgb, var(--tl) 16%, #0b1d48); border-left: 3px solid var(--tl); outline: 1px dashed color-mix(in srgb, var(--tl) 60%, transparent); outline-offset: -1px; }
a.ag-ev.ag-ev-lav b { color: var(--tl); }
.ag-mese-ev.ag-mese-ev-lav { border-left-color: var(--tl); }
.elenco-punti { margin: 0; padding-left: 18px; display: flex; flex-direction: column; gap: 4px; }
.carica-file { display: flex; align-items: center; gap: 12px; flex-direction: row; flex-wrap: wrap; cursor: pointer; }
.carica-file input[type=file] { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.esito-import { display: flex; flex-direction: column; gap: 12px; padding: 14px; border-radius: 14px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.1); }
.esito-import.fatto { border-color: color-mix(in srgb, var(--verde, #4ade80) 50%, transparent); }
.esito-import h3 { margin: 0; }
.kpi-import { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.kpi-import div { padding: 10px 12px; border-radius: 12px; background: rgba(255,255,255,.05); display: flex; flex-direction: column; gap: 2px; }
.kpi-import b { font-size: 1.5rem; }
.kpi-import span { font-size: .8rem; color: var(--tenue, #9fb3d6); }
@media (max-width: 700px) { .kpi-import { grid-template-columns: 1fr 1fr; } }
.barra-avanz { height: 8px; border-radius: 6px; background: rgba(255,255,255,.08); overflow: hidden; }
.barra-avanz i { display: block; height: 100%; background: var(--ciano, #5ee1ff); transition: width .4s; }
.azioni-colonna { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.azioni-colonna > * { align-self: flex-start; text-align: left; }
.pos-griglia { display: grid; grid-template-columns: minmax(300px, 400px) 1fr; gap: 20px; align-items: start; }
@media (max-width: 1000px) { .pos-griglia { grid-template-columns: 1fr; } }
.pos-elenco { display: flex; flex-direction: column; gap: 12px; position: sticky; top: 16px; max-height: calc(100vh - 140px); }
.elenco-pos { display: flex; flex-direction: column; gap: 6px; overflow-y: auto; min-height: 120px; }
.riga-pos { display: flex; flex-direction: column; align-items: flex-start; gap: 3px; text-align: left; padding: 10px 12px; border-radius: 12px; border: 1px solid rgba(255,255,255,.08); background: rgba(255,255,255,.04); color: inherit; font: inherit; cursor: pointer; }
.riga-pos:hover { background: rgba(255,255,255,.08); }
.riga-pos.selezionata { border-color: var(--ciano, #5ee1ff); background: color-mix(in srgb, var(--ciano, #5ee1ff) 12%, transparent); }
.riga-pos span:not(.pillola) { color: var(--tenue, #9fb3d6); font-size: .88rem; }
.chips-filtro { display: flex; gap: 6px; flex-wrap: wrap; }
.chips-filtro .chip { border: 1px solid rgba(255,255,255,.14); background: rgba(255,255,255,.05); color: inherit; font: inherit; font-size: .85rem; padding: 6px 12px; border-radius: 999px; cursor: pointer; }
.chips-filtro .chip.attivo { background: color-mix(in srgb, var(--ciano, #5ee1ff) 22%, transparent); border-color: var(--ciano, #5ee1ff); }
.pos-dettaglio { display: flex; flex-direction: column; gap: 14px; }
.pos-form { display: grid; grid-template-columns: 2fr 90px 1.3fr 70px; gap: 10px; align-items: end; }
.pos-form .pos-intera { grid-column: 1 / -1; }
@media (max-width: 700px) { .pos-form { grid-template-columns: 1fr 1fr; } .pos-form .pos-via, .pos-form .pos-comune { grid-column: 1 / -1; } }
.mappa.mappa-pos { height: 420px; }
.ris-pos { display: flex; flex-direction: column; gap: 6px; }
.voce-ris { display: flex; align-items: center; gap: 8px; text-align: left; padding: 8px 12px; border-radius: 10px; border: 1px solid rgba(255,255,255,.1); background: rgba(255,255,255,.04); color: inherit; font: inherit; font-size: .9rem; cursor: pointer; }
.voce-ris.scelta { border-color: var(--verde, #4ade80); background: color-mix(in srgb, var(--verde, #4ade80) 12%, transparent); }
.voce-ris svg { flex: none; width: 16px; height: 16px; }
#c-risultati.in-caricamento { opacity: .55; transition: opacity .15s; }
.colonne-maiusc { display: grid; grid-template-columns: 1fr 1.3fr; gap: 20px; align-items: start; }
@media (max-width: 1100px) { .colonne-maiusc { grid-template-columns: 1fr; } }
.elenco-maiusc { display: flex; flex-direction: column; gap: 8px; }
.riga-maiusc { display: flex; flex-direction: row; align-items: center; gap: 12px; padding: 8px 12px; border-radius: 12px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); cursor: pointer; }
.riga-maiusc:has(input[type=checkbox]:checked) { border-color: color-mix(in srgb, var(--ciano, #5ee1ff) 60%, transparent); background: color-mix(in srgb, var(--ciano, #5ee1ff) 8%, transparent); }
.riga-maiusc .m-dati { flex: 1; display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 0; min-width: 0; }
.riga-maiusc .m-dati .campo { flex-basis: 100%; margin-top: 6px; }
.riga-maiusc input[type=checkbox] { width: 18px; height: 18px; flex: none; }
.enti-riga { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 4px; }
.enti-riga i { font-style: normal; font-size: .75rem; padding: 1px 8px; border-radius: 999px; background: rgba(111,182,255,.14); border: 1px solid rgba(111,182,255,.3); color: #cfe3ff; white-space: nowrap; }
.enti-riga i.altri { background: transparent; color: var(--tenue, #9fb3d6); }
.enti-riga i.trovato { background: rgba(90, 216, 255, 0.28); border-color: var(--ciano); color: #fff; }
.scelta-ente .campo-ente { flex-direction: column; align-items: stretch; grid-column: 1 / -1; gap: 8px; }
.chips-enti { display: flex; flex-wrap: wrap; gap: 6px; }
.chip-ente { display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px; border-radius: 999px; border: 1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.05); cursor: pointer; font-size: .9rem; flex-direction: row; }
.chip-ente input { width: 15px; height: 15px; margin: 0; }
.chip-ente:has(input:checked), .chip-ente.nuovo { border-color: var(--ciano, #5ee1ff); background: color-mix(in srgb, var(--ciano, #5ee1ff) 14%, transparent); }
.chip-ente small { margin-left: 6px; color: var(--tenue, #9fb3d6); font-size: .75rem; }
.chip-ente button { border: 0; background: none; color: inherit; cursor: pointer; padding: 0 2px; font-size: .8rem; }
.nuovo-ente { display: flex; gap: 8px; align-items: center; }
.nuovo-ente .campo { flex: 1; }
.gruppo-imp-ind { display: flex; flex-direction: column; gap: 8px; padding: 10px 0; border-top: 1px solid rgba(255,255,255,.08); }
.gruppo-imp-ind:first-child { border-top: 0; padding-top: 0; }
.testa-ind { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 10px; }
.testa-ind > .icona { width: 16px; height: 16px; flex: none; opacity: .8; }
.testa-ind .azioni-ind { margin-left: auto; display: flex; gap: 12px; flex-wrap: wrap; }
.testo-rosso { color: var(--rosso, #ff7a7a) !important; }
.segno-esito { width: 60px; height: 60px; border-radius: 50%; margin: 0 auto; display: flex; align-items: center; justify-content: center; font-size: 30px; }
.segno-esito.ok { background: rgba(60, 200, 120, 0.2); color: #8ff0b8; }
.schede-nomi { margin-bottom: -4px; flex-wrap: wrap; overflow: visible; }
.riga-stato { display: flex; justify-content: space-between; gap: 12px; padding: 6px 0; border-bottom: 1px solid var(--bordo); }
.riga-stato:last-child { border-bottom: 0; }
.conta-tab { display: inline-block; min-width: 22px; margin-left: 6px; padding: 1px 7px; border-radius: 999px; background: rgba(255, 181, 71, 0.22); color: #ffd79a; font-size: 12px; text-align: center; }
.conta-tab.zero { background: rgba(74, 222, 128, 0.16); color: #9ff0bd; }
@media (max-width: 600px) { .schede-nomi { flex-wrap: nowrap; overflow-x: auto; } }
.tabella-mail td .tenue.piccolo { display: block; }
.tabella-mail .col-mail { word-break: break-all; max-width: 280px; }
.tabella-mail td { vertical-align: top; }
.tabella-rap td .pillola { display: inline-block; margin-top: 4px; }
.schema-vivo { display: block; width: 100%; height: min(78vh, 760px); min-height: 480px; border: 0; border-radius: 14px; background: #050f26; }
.riga-iscriviti { display: flex; align-items: center; justify-content: center; gap: 10px; flex-wrap: wrap; padding-top: 12px; border-top: 1px solid rgba(255, 255, 255, 0.08); }
.accesso [data-email-nota] { margin-top: -8px; }
.accesso [data-email-nota] .link-bottone { padding: 0; font-size: inherit; color: var(--ciano); }
.accesso .spunta a { color: var(--ciano); text-decoration: none; }
.sezione-note { margin: 4px 0 -4px; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--ciano); }
.riga-acc { display: block; line-height: 1.5; }
.combo-campo { position: relative; }
.combo-campo .campo { padding-right: 40px; }
.combo-x { position: absolute; right: 8px; top: 50%; transform: translateY(-50%); width: 28px; height: 28px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, 0.08); color: var(--testo); cursor: pointer; }
.combo-campo .sugg-elenco button.attivo { background: rgba(110, 180, 255, 0.2); }
.consensi-acc { display: flex; flex-direction: column; gap: 3px; padding: 10px 12px; border-radius: 12px; background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.08); margin-bottom: 4px; }
.consensi-acc b { color: #d6ffe6; font-weight: 600; }
.spunte-gaia { display: flex; flex-direction: column; gap: 6px; max-height: 220px; overflow: auto; padding: 4px 2px; }
.gaia-cornice { display: block; width: 100%; height: calc(100vh - 60px); min-height: 640px; border: 0; border-radius: 18px; background: transparent; }
@media (max-width: 900px) { .gaia-cornice { height: calc(100vh - 90px); } }
.gaia-cornice.gaia-auto { min-height: 0; border-radius: 0; }
.pallino-agg { display: inline-block; width: 9px; height: 9px; margin-left: 8px; border-radius: 50%; background: #ffb547; box-shadow: 0 0 0 3px rgba(255,181,71,.25), 0 0 10px rgba(255,181,71,.6); vertical-align: middle; }
.pallino-agg[hidden] { display: none; }
.azioni-foto-lav { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
a.ag-ev.ag-ev-lav.ore-vere { outline-style: solid; }
.anagrafica-conto .riga-anag { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding: 5px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.06); font-size: 13px; }
.anagrafica-conto .riga-anag:last-child { border-bottom: 0; }
.iva-conto { display: grid; gap: 8px; margin-bottom: 12px; padding-bottom: 12px; border-bottom: 1px solid rgba(255, 255, 255, 0.08); }
.anagrafica-conto .riga-anag > span:first-child { flex: none; }
.valore-copia { background: none; border: 0; padding: 0; font: inherit; color: var(--testo); text-align: right; cursor: copy; word-break: break-word; }
.valore-copia:hover { color: var(--ciano); }
.pr-squadra { display: flex; flex-direction: column; gap: 8px; padding: 10px 12px; border-radius: 14px; background: rgba(110, 180, 255, 0.07); }
.ente-rigo .ente-tel { display: block; }
.ente-rigo a, .enti-riga i a { display: inline !important; white-space: nowrap; color: var(--testo); }
.enti-riga i { white-space: normal; }
.fa-extra { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-top: 8px; }
.captcha { display: flex; justify-content: center; min-height: 66px; }
.captcha[hidden] { display: none; }
.captcha-riquadro { width: 100%; height: 80px; border: 0; background: transparent; color-scheme: normal; }
.pr-modo { display: grid; grid-template-columns: 1fr 1fr; }
.pr-modo span { width: 100%; }
.pr-bottoni-giorno { flex-wrap: nowrap; }
.pr-bottoni-giorno .bottone { flex: 1 1 0; }
.pr-modulo .pr-indietro { width: auto; margin: 0 auto 0 0; text-align: left; justify-content: flex-start; }
.pr-indietro { align-self: flex-start; display: inline-flex; align-items: center; gap: 4px; font-size: 15px; font-weight: 600; color: var(--link); padding: 2px 0; }
.pr-indietro:hover { color: #fff; }
.due-per-due { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.due-per-due .bottone { position: relative; white-space: nowrap; padding-left: 6px; padding-right: 6px; }
.due-per-due .largo { grid-column: 1 / -1; }
.pallino-mat { position: absolute; top: 7px; right: 9px; width: 9px; height: 9px; border-radius: 50%; background: var(--ambra); box-shadow: 0 0 0 2px rgba(5, 15, 38, 0.6); }
form.mat-agg.mat-agg { display: grid !important; grid-template-columns: minmax(0, 1fr) 80px 48px; gap: 6px; flex-direction: initial; }
form.mat-agg .campo, form.mat-agg .bottone { width: auto; margin: 0; }
.mat-agg .campo { min-width: 0; }
.mat-agg .bottone { padding: 0; font-size: 22px; }
.mat-sugg { max-height: min(52vh, 420px); overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; margin-top: 6px; border-radius: 14px; background: #10203f; border: 1px solid var(--bordo-forte); box-shadow: 0 10px 26px rgba(0, 0, 0, 0.4); }
.mat-sugg[hidden] { display: none; }
.mat-sugg button { display: flex; width: 100%; justify-content: space-between; align-items: center; gap: 10px; padding: 11px 14px; border: 0; border-bottom: 1px solid rgba(255, 255, 255, 0.07); background: none; color: var(--testo); font: inherit; font-size: 15px; text-align: left; cursor: pointer; }
.mat-sugg button:last-child { border-bottom: 0; }
.mat-sugg button:hover { background: rgba(110, 180, 255, 0.1); }
.mat-sugg b { color: var(--ciano); font-weight: 600; }
.mat-usato { display: inline-block; width: 10px; height: 10px; border-radius: 50%; background: var(--verde, #3ddc84); box-shadow: 0 0 8px rgba(61, 220, 132, 0.6); margin-left: 8px; vertical-align: middle; }
.mat-sugg em { display: inline-flex; align-items: center; font-style: normal; color: var(--tenue); font-size: 12.5px; white-space: nowrap; }
.mat-sez { display: block; font-size: 12px; letter-spacing: 1.4px; text-transform: uppercase; color: var(--ciano); font-weight: 700; margin: 16px 0 8px; }
.mat-cat { display: flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 700; color: var(--testo-2); margin: 10px 0 6px 2px; }
.mat-cat::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #6cc4ff; }
.mat-cat-elettrico::before { background: #ffd34d; }
.mat-cat-altro::before { background: #9aa8c4; }
.mat-cat-attrezzatura::before { background: #ffb547; }
.mat-cat-attrezzatura + .mat-gruppo.con-titolo .mat-attr { display: none; }
.mat-sez-riga { display: flex; align-items: center; justify-content: space-between; }
.mat-lente { width: 36px; height: 36px; border-radius: 50%; border: 1px solid rgba(140, 200, 255, 0.35); background: rgba(110, 180, 255, 0.08); color: var(--ciano); display: grid; place-items: center; cursor: pointer; }
.mat-lente:hover { background: rgba(110, 180, 255, 0.2); }
.mat-lente svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; }
.mat-velo { position: fixed; inset: 0; z-index: 2000; background: rgba(2, 8, 24, 0.66); backdrop-filter: blur(4px); display: grid; place-items: center; padding: 16px; }
.mat-popup { width: min(600px, 100%); max-height: min(80vh, 720px); display: flex; flex-direction: column; border-radius: 20px; background: #10203f; border: 1px solid var(--bordo-forte); box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5); overflow: hidden; }
.mat-popup-testa, .mat-popup-piede { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 14px 18px; flex: 0 0 auto; }
.mat-popup-testa { border-bottom: 1px solid rgba(255, 255, 255, 0.08); font-size: 18px; }
.mat-popup-piede { border-top: 1px solid rgba(255, 255, 255, 0.08); }
.mat-popup-corpo { overflow-y: auto; padding: 6px 18px; flex: 1 1 auto; overscroll-behavior: contain; }
.mat-crono { display: grid; grid-template-columns: 96px 1fr; gap: 10px; padding: 9px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.07); font-size: 14px; }
.mat-crono:last-child { border-bottom: 0; }
.mat-crono.preso span:last-child { color: #8ff0bf; }
.mat-crono.tolto span:last-child { color: #ff9a9a; }
.mat-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.mat-chip { padding: 7px 12px; border-radius: 999px; border: 1px dashed rgba(140, 200, 255, 0.45); background: transparent; color: var(--testo-2); font: inherit; font-size: 13.5px; font-weight: 600; cursor: pointer; }
.mat-chip:hover { color: var(--ciano); border-color: var(--ciano); }
.mat-voce { display: grid; grid-template-columns: 30px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 10px 12px; border-radius: 14px; background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.08); margin-bottom: 6px; }
.mat-ck { width: 26px; height: 26px; border-radius: 7px; border: 2px solid rgba(160, 200, 255, 0.55); background: transparent; display: grid; place-items: center; color: #04122e; font-weight: 900; font-size: 15px; cursor: pointer; padding: 0; }
.mat-ck-vuoto { border-style: dashed; opacity: 0.4; }
.mat-voce.presa .mat-ck { background: var(--verde); border-color: var(--verde); }
.mat-testo { min-width: 0; }
.mat-testo b { display: block; font-weight: 600; font-size: 15.5px; overflow-wrap: anywhere; }
.mat-voce.presa .mat-testo b { color: var(--testo-2); }
.mat-voce.tolta { opacity: 0.6; }
.mat-voce.tolta .mat-testo b { text-decoration: line-through; }
.mat-chi { display: block; font-size: 12px; color: var(--tenue); }
.mat-qta { font-size: 13px; color: var(--testo-2); background: rgba(255, 255, 255, 0.08); border-radius: 999px; padding: 1px 9px; margin-right: 2px; font-weight: 600; white-space: nowrap; }
button.mat-qta { border: 0; font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; }
button.mat-qta:hover { background: rgba(110, 200, 255, 0.22); color: #fff; }
.mat-qta-vuota { color: var(--tenue) !important; background: transparent !important; border: 1px dashed rgba(255, 255, 255, 0.25) !important; font-weight: 500 !important; }
form.mat-qmod.mat-qmod { display: inline-flex !important; flex-direction: row !important; flex-wrap: nowrap; align-items: center; gap: 6px; vertical-align: middle; margin: 0 6px 0 0; padding: 0; background: none; border: 0; box-shadow: none; }
.mat-qmod.mat-qmod .campo { width: 76px !important; flex: 0 0 auto; padding: 4px 8px; min-height: 0; font-size: 15px; }
.mat-qmod.mat-qmod .bottone { width: auto; flex: 0 0 auto; min-height: 0; padding: 4px 10px; }
.mat-attr { font-size: 11px; color: #ffd18a; background: rgba(255, 181, 71, 0.15); border-radius: 999px; padding: 1px 8px; margin-left: 4px; font-weight: 600; white-space: nowrap; }
.mat-tocco .mat-voce { grid-template-columns: 30px minmax(0, 1fr); background: #17284b; }
.mat-tocco .mat-voce:has([data-rimetti]) { grid-template-columns: 30px minmax(0, 1fr) auto; }
.mat-scorri { position: relative; border-radius: 14px; overflow: hidden; margin-bottom: 6px; }
.mat-scorri .mat-voce { position: relative; z-index: 1; margin-bottom: 0; background: #17284b; touch-action: pan-y; }
.mat-dietro { position: absolute; inset: 0 0 0 auto; width: 92px; border: 0; border-radius: 0 14px 14px 0; background: #d94848; color: #fff; font: inherit; font-weight: 700; font-size: 15px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; cursor: pointer; }
.mat-dietro span { font-size: 13px; }
.mat-x { width: 32px; height: 32px; border-radius: 50%; border: 0; background: transparent; color: #ff6b6b; font-size: 17px; cursor: pointer; }
.mat-x:hover { background: rgba(255, 90, 90, 0.14); }
.mat-vuoto { margin: 0 0 6px; }
.mat-toast { position: sticky; bottom: 12px; margin-top: 12px; padding: 12px 14px; border-radius: 14px; background: #10203f; border: 1px solid var(--bordo-forte); display: flex; justify-content: space-between; align-items: center; gap: 10px; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5); z-index: 2; }
.mat-toast[hidden] { display: none; }
.mat-toast .link-bottone { color: var(--ciano); font-weight: 700; }
.mat-registro { margin-top: 14px; font-size: 13.5px; }
.mat-registro summary { cursor: pointer; color: var(--ciano); font-weight: 700; font-size: 12px; letter-spacing: 1.4px; text-transform: uppercase; }
.mat-registro div { display: grid; grid-template-columns: 92px 1fr; gap: 8px; padding: 6px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.07); }
.mat-registro .preso span:last-child { color: #8ff0bf; }
.mat-registro .tolto span:last-child { color: #ff9a9a; }
.tab-mat { display: flex; flex-direction: column; gap: 12px; }
.tab-mat-nuovo { display: grid; grid-template-columns: minmax(0, 1fr) 170px 130px auto auto; gap: 10px; align-items: center; padding: 12px; border-radius: 14px; background: rgba(110, 180, 255, 0.07); border: 1px dashed rgba(140, 200, 255, 0.35); }
.tab-mat-importa { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; }
.tab-mat-importa a { color: var(--ciano); text-decoration: none; }
.tab-mat-importa a:hover { color: #fff; }
.imp-mat { display: flex; flex-direction: column; gap: 12px; max-height: min(82vh, 760px); }
.imp-mat h2 { margin: 0; }
.imp-mat h3 { margin: 12px 0 6px; font-size: 14px; color: var(--testo-2); }
.imp-conti { display: flex; flex-wrap: wrap; gap: 8px; }
.imp-conti span { padding: 6px 12px; border-radius: 999px; font-size: 14px; background: rgba(255, 255, 255, 0.06); }
.imp-conti .imp-nuovi { background: rgba(74, 222, 128, 0.14); color: #b9f5cf; }
.imp-conti .imp-doppi { background: rgba(255, 181, 71, 0.14); color: #ffd18a; }
.imp-conti .imp-err { background: rgba(255, 90, 90, 0.14); color: #ffb0b0; }
.imp-corpo { overflow-y: auto; flex: 1 1 auto; min-height: 0; padding-right: 4px; }
.imp-elenco div { display: grid; grid-template-columns: 70px 1fr; gap: 10px; padding: 6px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.06); font-size: 14px; }
.tab-mat-filtri { display: grid; grid-template-columns: minmax(0, 1fr) 210px; gap: 10px; }
.tab-mat-massa { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; padding: 0 4px; }
.tab-mat-applica { display: inline-flex; gap: 8px; align-items: center; }
.tab-mat-applica .campo { width: 190px; }
.tab-mat-riga .tm-unisci { display: inline-flex; align-items: center; gap: 4px; }
.tm-sel, .tab-mat-massa input[type=checkbox] { width: 20px; height: 20px; accent-color: var(--ciano); }
.tm-cat select:disabled { opacity: 0.55; }
.tab-mat-righe { display: flex; flex-direction: column; gap: 6px; }
.tab-mat-testa, .tab-mat-riga { display: grid; grid-template-columns: 24px minmax(0, 1fr) 170px 130px 46px 120px 130px auto; gap: 10px; align-items: center; }
.tab-mat-testa { font-size: 12px; color: var(--tenue); padding: 0 4px; }
@media (max-width: 760px) {
  .tab-mat-nuovo { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .tab-mat-nuovo [name=nome] { grid-column: 1 / -1; } .tab-mat-nuovo .bottone { grid-column: 1 / -1; }
  .tab-mat-filtri { grid-template-columns: 1fr; }
  .tab-mat-applica { width: 100%; } .tab-mat-applica .campo { flex: 1; width: auto; }
  .tab-mat-testa { display: none; }
  .tab-mat-riga { grid-template-columns: 24px minmax(0, 1fr) minmax(0, 1fr); grid-template-areas: "sel nome nome" ". cat unita" ". attr sugg" ". usi unisci"; padding: 10px 0 12px; border-bottom: 1px solid rgba(255, 255, 255, 0.08); }
  .tab-mat-riga .tm-sel { grid-area: sel; } .tab-mat-riga .tm-nome { grid-area: nome; } .tab-mat-riga .tm-cat { grid-area: cat; } .tab-mat-riga .tm-unita { grid-area: unita; } .tab-mat-riga .tm-usi { grid-area: usi; }
  .tab-mat-riga .tm-attr { grid-area: attr; } .tab-mat-riga .tm-sugg { grid-area: sugg; justify-self: end; } .tab-mat-riga .tm-unisci { grid-area: unisci; justify-self: end; }
}
.doc-allegati { margin: -2px 0 4px 26px; padding-left: 12px; border-left: 2px solid rgba(120, 190, 255, 0.35); display: flex; flex-direction: column; gap: 6px; }
.doc-allegati .voce-doc { padding-top: 6px; padding-bottom: 6px; }
.doc-allegati .icona-file { transform: scale(0.85); }
.referente-dt { display: flex; flex-direction: column; gap: 4px; padding: 12px 14px; border-radius: 14px; background: rgba(94, 225, 255, 0.08); border: 1px solid rgba(94, 225, 255, 0.3); margin-bottom: 6px; }
.referente-dt strong { font-size: 18px; }
.rich-quando { display: flex; flex-direction: column; gap: 2px; margin-top: 10px; padding: 12px 16px; border-radius: 14px; background: rgba(74, 222, 128, 0.1); border: 1px solid rgba(74, 222, 128, 0.38); }
.rich-quando-et { font-size: 12px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: #86efac; }
.rich-quando strong { font-size: 22px; line-height: 1.25; color: #fff; }
.rich-quando-ora { font-size: 20px; font-weight: 700; color: #bff7d2; }
.rich-quando.attesa { background: rgba(255, 181, 71, 0.1); border-color: rgba(255, 181, 71, 0.42); }
.rich-quando.attesa .rich-quando-et { color: #ffcf8a; }
.rich-quando.attesa .rich-quando-ora { color: #ffe2b0; }
.elenco-doc-lav { display: flex; flex-direction: column; gap: 6px; }
.doc-lav { display: flex; align-items: center; gap: 8px; }
.doc-lav .corpo { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; color: inherit; }
.doc-lav .corpo strong { overflow-wrap: anywhere; }
.doc-lav-carica { display: inline-flex; flex-direction: row; align-items: center; gap: 6px; }
.x-doc { flex: none; width: 34px; height: 34px; border-radius: 10px; border: 1px solid rgba(255, 122, 122, 0.5); background: rgba(255, 122, 122, 0.08); color: #ffb3b3; font-size: 20px; line-height: 1; cursor: pointer; }
.pagina-lavoro-pub > section, .lav-pub-griglia { margin-bottom: 14px; }
.pagina-lavoro-pub h2 { margin: 0 0 6px; font-size: 19px; }
.lav-pub-griglia { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 14px; }
.lav-pub-griglia > section { margin: 0; }
.lav-pub-enti { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 4px; }
.lav-pub-file { display: flex; flex-direction: column; gap: 8px; margin-top: 8px; }
.lav-pub-doc { display: flex; align-items: center; gap: 8px; padding: 10px 12px; border-radius: 12px; background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.08); }
.lav-pub-doc .corpo { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.lav-pub-doc .corpo strong { overflow-wrap: anywhere; }
.pagina-lavoro-pub .ft { cursor: zoom-in; }
.lb-foto .lb-scarica { position: absolute; bottom: 14px; right: 14px; }
@media (max-width: 560px) { .lav-pub-griglia { grid-template-columns: minmax(0, 1fr); } .lav-pub-doc { flex-wrap: wrap; } .lav-pub-doc .corpo { flex-basis: 100%; } }
.pagina-lavoro-pub .dati-lavoro dd { min-width: 0; overflow-wrap: anywhere; }
@media (max-width: 560px) { .pagina-lavoro-pub .dati-lavoro { grid-template-columns: 96px minmax(0, 1fr); } }
.ft .segno-video, .segno-video-pub { position: absolute; top: 6px; right: 6px; padding: 2px 8px; border-radius: 999px; background: rgba(4, 18, 46, 0.82); color: #fff; font-size: 12px; font-weight: 600; pointer-events: none; }
.lightbox video { max-width: 100%; max-height: calc(100vh - 220px); border-radius: 10px; display: block; background: #000; }
.lb-foto video { max-width: 94vw; max-height: 80vh; border-radius: 8px; background: #000; }
.notifica-volante, .coda-rap { background: #0c204a; backdrop-filter: none; -webkit-backdrop-filter: none; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5); }
.notifica-volante.ambra, .coda-rap.ambra { background: #2e2c22; }
.notifica-volante.errore, .coda-rap.errore { background: #3a1f28; }
.notifica-volante.ok, .coda-rap.ok, .notifica-volante.verde { background: #10362f; }
.chip-lavori { margin-bottom: 12px; gap: 8px; }
.chip-lavori .chip-zona { padding: 8px 14px; font-size: 14px; }
.chip-lavori .chip-cestino { display: inline-flex; align-items: center; gap: 6px; margin-left: auto; color: inherit; }
.chip-lavori .chip-cestino .icona { width: 15px; height: 15px; }
input[type=file] { cursor: pointer; }
input[type=file]::file-selector-button { font: inherit; font-size: 14px; font-weight: 600; color: #e8f1ff; background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.18); border-radius: 10px; padding: 6px 14px; margin-right: 12px; cursor: pointer; transition: background .15s, border-color .15s; }
input[type=file]::file-selector-button:hover { background: rgba(110, 180, 255, 0.18); border-color: rgba(124, 196, 255, 0.6); }
input[type=file]::-webkit-file-upload-button { font: inherit; font-size: 14px; font-weight: 600; color: #e8f1ff; background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.18); border-radius: 10px; padding: 6px 14px; margin-right: 12px; cursor: pointer; }
input[type=number]::-webkit-inner-spin-button { -webkit-appearance: none; appearance: none; opacity: 1; width: 14px; height: 22px; margin: 0 -2px 0 6px; cursor: pointer;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='16' viewBox='0 0 10 16'%3E%3Cpath d='M1.5 6l3.5-3.5L8.5 6M1.5 10l3.5 3.5L8.5 10' fill='none' stroke='%239fb3c8' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / 10px 16px; }
input[type=number]:hover::-webkit-inner-spin-button, input[type=number]:focus::-webkit-inner-spin-button { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='16' viewBox='0 0 10 16'%3E%3Cpath d='M1.5 6l3.5-3.5L8.5 6M1.5 10l3.5 3.5L8.5 10' fill='none' stroke='%237cc4ff' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
input[type=number]::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
