@import "https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,600;12..96,700&family=Instrument+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";:root{--bg:#f5f7fa;--surface:#fff;--surface-subtle:#ebeff4;--surface-inverse:#14202b;--border:#dce3ea;--border-control:#808c99;--text:#14202b;--text-2:#4f5b67;--text-3:#66727f;--text-inverse:#f1f4f8;--primary:#01639a;--primary-hover:#014e7a;--primary-tint:#e3f0fb;--on-primary:#fff;--accent:#96c9ff;--accent-text:#0b5a8c;--on-accent:#14202b;--focus-ring:#01639a;--danger:#c0352a;--danger-hover:#a12a21;--on-danger:#fff;--sidebar-rail-bg:#e2ecf6;--sidebar-card:#fff;--sidebar-bg:#f1f6fb;--sidebar-hover:#e2ecf6;--sidebar-active:#01639a;--sidebar-active-text:#fff;--sidebar-node:#96c9ff;--sidebar-border:#d6e2ee;--sidebar-rail:#bed3e6;--sidebar-text:#14202b;--sidebar-text-2:#44576a;--sidebar-text-3:#5a6e82;--sidebar-accent:#01639a;--status-todo:#636058;--status-todo-bg:#efede8;--status-progress:#5b3fd9;--status-progress-bg:#eeeafe;--status-standby:#a3336d;--status-standby-bg:#f8e6ef;--status-review:#995a00;--status-review-bg:#fdf1dc;--status-testing:#2f6a8f;--status-testing-bg:#e2eef6;--status-done:#2b7a4b;--status-done-bg:#e3f3e8;--status-blocked:#c0352a;--status-blocked-bg:#fce7e4;--priority-low:#5d7083;--priority-medium:#8f6400;--priority-high:#b5490f;--priority-urgent:#b42318;--project-petrolio:#0d6e6a;--project-oliva:#2b7a4b;--project-muschio:#5e7d1e;--project-ambra:#9c5300;--project-arancio:#b5490f;--project-corallo:#c0352a;--project-ciclamino:#b0306a;--project-viola:#8a3fb0;--project-glicine:#5b3fd9;--project-cielo:#2f6a8f;--project-laguna:#1f7a8c;--project-tufo:#5e5a53;--shadow-sm:0 1px 2px #14202b0f;--shadow-md:0 4px 12px #14202b1a;--shadow-lg:0 16px 40px #14202b2e;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-12:48px;--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-full:999px;--control-sm:32px;--control-md:40px;--control-lg:44px;--sidebar-width:248px;--column-width:300px;--icon-md:20px;--font-display:"Bricolage Grotesque", "Instrument Sans", system-ui, sans-serif;--font-ui:"Instrument Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f141a;--surface:#161d25;--surface-subtle:#212a34;--surface-inverse:#f1f4f8;--border:#2e3945;--border-control:#6f7c8a;--text:#f1f4f8;--text-2:#a9b4c0;--text-3:#8794a2;--text-inverse:#14202b;--primary:#96c9ff;--primary-hover:#b9dcff;--primary-tint:#15283a;--on-primary:#0f141a;--accent:#96c9ff;--accent-text:#96c9ff;--on-accent:#0f141a;--focus-ring:#96c9ff;--danger:#ff8d7e;--danger-hover:#ffa99e;--on-danger:#0f141a;--sidebar-rail-bg:#0a0f14;--sidebar-card:#17212b;--sidebar-bg:#10171f;--sidebar-hover:#18232e;--sidebar-active:#1a4466;--sidebar-node:#96c9ff;--sidebar-border:#222e3a;--sidebar-rail:#2c3b4a;--sidebar-text:#f1f4f8;--sidebar-text-2:#a6bacd;--sidebar-text-3:#7f97ae;--sidebar-accent:#96c9ff;--status-todo:#b8b3a9;--status-todo-bg:#2c2925;--status-progress:#ab9dff;--status-progress-bg:#2a2547;--status-standby:#f08bc0;--status-standby-bg:#3a1c2b;--status-review:#f2b84b;--status-review-bg:#3a2c12;--status-testing:#8ec5e8;--status-testing-bg:#1b2c38;--status-done:#6ccb8f;--status-done-bg:#1d3326;--status-blocked:#ff8d7e;--status-blocked-bg:#3d1f1b;--priority-low:#9fb2c4;--priority-medium:#e8be52;--priority-high:#ff9a5c;--priority-urgent:#ff7b70;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 12px #00000080;--shadow-lg:0 16px 40px #0009}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f141a;--surface:#161d25;--surface-subtle:#212a34;--surface-inverse:#f1f4f8;--border:#2e3945;--border-control:#6f7c8a;--text:#f1f4f8;--text-2:#a9b4c0;--text-3:#8794a2;--text-inverse:#14202b;--primary:#96c9ff;--primary-hover:#b9dcff;--primary-tint:#15283a;--on-primary:#0f141a;--accent:#96c9ff;--accent-text:#96c9ff;--on-accent:#0f141a;--focus-ring:#96c9ff;--danger:#ff8d7e;--danger-hover:#ffa99e;--on-danger:#0f141a;--sidebar-rail-bg:#0a0f14;--sidebar-card:#17212b;--sidebar-bg:#10171f;--sidebar-hover:#18232e;--sidebar-active:#1a4466;--sidebar-node:#96c9ff;--sidebar-border:#222e3a;--sidebar-rail:#2c3b4a;--sidebar-text:#f1f4f8;--sidebar-text-2:#a6bacd;--sidebar-text-3:#7f97ae;--sidebar-accent:#96c9ff;--status-todo:#b8b3a9;--status-todo-bg:#2c2925;--status-progress:#ab9dff;--status-progress-bg:#2a2547;--status-standby:#f08bc0;--status-standby-bg:#3a1c2b;--status-review:#f2b84b;--status-review-bg:#3a2c12;--status-testing:#8ec5e8;--status-testing-bg:#1b2c38;--status-done:#6ccb8f;--status-done-bg:#1d3326;--status-blocked:#ff8d7e;--status-blocked-bg:#3d1f1b;--priority-low:#9fb2c4;--priority-medium:#e8be52;--priority-high:#ff9a5c;--priority-urgent:#ff7b70;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 12px #00000080;--shadow-lg:0 16px 40px #0009}}.mx-text-display{font-family:var(--font-display);letter-spacing:-.02em;font-size:40px;font-weight:700;line-height:44px}.mx-text-h1{font-family:var(--font-display);letter-spacing:-.01em;font-size:28px;font-weight:700;line-height:34px}.mx-text-h2{font-family:var(--font-display);font-size:20px;font-weight:600;line-height:28px}.mx-text-h3{font-family:var(--font-display);font-size:16px;font-weight:600;line-height:22px}.mx-text-body-lg{font-family:var(--font-ui);font-size:15px;font-weight:400;line-height:22px}.mx-text-body{font-family:var(--font-ui);font-size:14px;font-weight:400;line-height:20px}.mx-text-body-strong{font-family:var(--font-ui);font-size:14px;font-weight:600;line-height:20px}.mx-text-small{font-family:var(--font-ui);font-size:13px;font-weight:400;line-height:18px}.mx-text-label{font-family:var(--font-ui);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:600;line-height:16px}.mx-text-caption{font-family:var(--font-ui);font-size:12px;font-weight:500;line-height:16px}.mx-text-mono{font-family:var(--font-mono);font-size:13px;font-weight:500;line-height:18px}.mx-text-mono-sm{font-family:var(--font-mono);font-size:12px;font-weight:500;line-height:16px}.mx-icon{vertical-align:middle;flex:none;display:inline-block}:where(.mx-btn,.mx-iconbtn,.mx-input,.mx-select select,.mx-seg button,.mx-tab,.mx-nav-item,.mx-check input):focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.mx-btn{font:inherit;justify-content:center;align-items:center;gap:var(--space-2);height:var(--control-md);padding:0 var(--space-4);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;border:1px solid #0000;font-weight:600;text-decoration:none;transition:background-color .12s,border-color .12s;display:inline-flex}.mx-btn-sm{height:var(--control-sm);padding:0 var(--space-3);font-size:13px}.mx-btn-lg{height:var(--control-lg);padding:0 var(--space-5);font-size:15px}.mx-btn-primary{background:var(--primary);color:var(--on-primary)}.mx-btn-primary:hover{background:var(--primary-hover)}.mx-btn-secondary{background:var(--surface);color:var(--text);border-color:var(--border-control)}.mx-btn-secondary:hover{background:var(--surface-subtle)}.mx-btn-ghost{color:var(--text-2);background:0 0}.mx-btn-ghost:hover{background:var(--surface-subtle);color:var(--text)}.mx-btn-danger{background:var(--danger);color:var(--on-danger)}.mx-btn-danger:hover{background:var(--danger-hover)}.mx-btn:disabled{opacity:.45;cursor:not-allowed}.mx-iconbtn{font:inherit;min-width:var(--control-md);height:var(--control-md);padding:0 var(--space-2);border-radius:var(--radius-md);color:var(--text-2);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:2px;display:inline-flex;position:relative}.mx-iconbtn:hover{background:var(--surface-subtle);color:var(--text)}.mx-iconbtn[aria-pressed=true]{background:var(--primary-tint);color:var(--primary)}.mx-iconbtn-count{font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.mx-iconbtn-dot{border-radius:var(--radius-full);background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 2px var(--surface);position:absolute;top:8px;right:9px}.mx-viewswitch{border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border);gap:2px;padding:3px;display:inline-flex}.mx-viewswitch .mx-iconbtn{height:var(--control-sm);min-width:var(--control-sm);border-radius:var(--radius-sm)}.mx-field{flex-direction:column;gap:6px;min-width:0;display:flex}.mx-field-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);font-size:12px;font-weight:600;line-height:16px}.mx-field-hint{color:var(--text-3);font-size:13px;line-height:18px}.mx-field-error{color:var(--danger);font-size:13px;line-height:18px}.mx-input{font:inherit;box-sizing:border-box;height:var(--control-md);width:100%;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border-control);background:var(--surface);color:var(--text)}.mx-input::placeholder{color:var(--text-3)}.mx-input[aria-invalid=true]{border-color:var(--danger)}.mx-search{align-items:center;display:flex;position:relative}.mx-search .mx-icon{color:var(--text-3);pointer-events:none;position:absolute;left:12px}.mx-search .mx-input{padding-left:40px;padding-right:52px}.mx-kbd{font-family:var(--font-mono);color:var(--text-3);border:1px solid var(--border);border-radius:var(--radius-xs);padding:0 5px;font-size:12px;line-height:20px;position:absolute;right:10px}.mx-select{align-items:center;display:flex;position:relative}.mx-select select{font:inherit;appearance:none;box-sizing:border-box;width:100%;height:var(--control-md);padding:0 36px 0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border-control);background:var(--surface);color:var(--text);cursor:pointer}.mx-select.has-dot select{padding-left:32px}.mx-select-dot{border-radius:var(--radius-full);pointer-events:none;width:10px;height:10px;position:absolute;left:13px}.mx-select>.mx-icon{color:var(--text-2);pointer-events:none;position:absolute;right:12px}.mx-check{align-items:center;gap:var(--space-2);cursor:pointer;color:var(--text);display:inline-flex}.mx-check input{appearance:none;border-radius:var(--radius-sm);border:1.5px solid var(--border-control);background:var(--surface);cursor:pointer;flex:none;place-content:center;width:18px;height:18px;margin:0;display:grid}.mx-check input:checked{background:var(--primary);border-color:var(--primary)}.mx-check input:checked:after{content:"";border-left:2px solid var(--on-primary);border-bottom:2px solid var(--on-primary);width:9px;height:5px;transform:rotate(-45deg)translate(1px,-1px)}.mx-seg{border-radius:var(--radius-md);background:var(--surface-subtle);gap:2px;padding:3px;display:inline-flex}.mx-seg button{font:inherit;height:30px;padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--text-2);cursor:pointer;background:0 0;border:0;font-weight:500}.mx-seg button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm);font-weight:600}.mx-tabs{gap:var(--space-1);border-bottom:1px solid var(--border);display:flex;overflow-x:auto}.mx-tab{font:inherit;align-items:center;gap:var(--space-2);height:44px;padding:0 var(--space-3);color:var(--text-2);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;font-weight:500;display:inline-flex}.mx-tab:hover{color:var(--text)}.mx-tab[aria-selected=true]{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.mx-count{font-variant-numeric:tabular-nums;box-sizing:border-box;text-align:center;border-radius:var(--radius-full);background:var(--surface-subtle);min-width:18px;color:var(--text-2);padding:0 6px;font-size:12px;font-weight:600;line-height:18px}.mx-status{border-radius:var(--radius-full);white-space:nowrap;align-items:center;gap:6px;height:24px;padding:0 10px 0 8px;font-size:12px;font-weight:600;display:inline-flex}.mx-status-todo{color:var(--status-todo);background:var(--status-todo-bg)}.mx-status-progress{color:var(--status-progress);background:var(--status-progress-bg)}.mx-status-standby{color:var(--status-standby);background:var(--status-standby-bg)}.mx-status-review{color:var(--status-review);background:var(--status-review-bg)}.mx-status-testing{color:var(--status-testing);background:var(--status-testing-bg)}.mx-status-done{color:var(--status-done);background:var(--status-done-bg)}.mx-status-blocked{color:var(--status-blocked);background:var(--status-blocked-bg)}.mx-prio{white-space:nowrap;align-items:center;gap:4px;font-size:12px;font-weight:600;display:inline-flex}.mx-prio-chip{border-radius:var(--radius-sm);border:1px solid;height:22px;padding:0 8px 0 4px}.mx-prio-tag{border-radius:var(--radius-xs);background:color-mix(in srgb, currentColor 8%, transparent);gap:2px;padding:1px 6px 1px 3px;line-height:16px}.mx-prio-tag .mx-icon{width:14px;height:14px}.mx-prio-tag.mx-prio-icononly{padding:1px 2px}.mx-prio-low{color:var(--priority-low)}.mx-prio-medium{color:var(--priority-medium)}.mx-prio-high{color:var(--priority-high)}.mx-prio-urgent{color:var(--priority-urgent)}.mx-tag{border-radius:var(--radius-sm);background:var(--surface-subtle);height:22px;color:var(--text-2);white-space:nowrap;align-items:center;gap:6px;max-width:100%;padding:0 8px;font-size:12px;font-weight:500;display:inline-flex}.mx-dot{border-radius:var(--radius-full);flex:none;width:8px;height:8px}.mx-id{font-family:var(--font-mono);color:var(--text-2);font-size:12px;font-weight:500;line-height:16px}.mx-id-chip{border-radius:var(--radius-xs);border:1px solid var(--border);background:var(--surface);padding:2px 6px}.mx-avatar{border-radius:var(--radius-full);color:#fff;letter-spacing:.02em;background:var(--project-tufo);flex:none;place-items:center;font-weight:600;display:inline-grid;overflow:hidden}.mx-avatar img{object-fit:cover;width:100%;height:100%}.mx-sidebar{box-sizing:border-box;width:var(--sidebar-width);gap:var(--space-6);padding:var(--space-5) var(--space-3);background:var(--surface);border-right:1px solid var(--border);flex-direction:column;display:flex}.mx-sidebar-logo{padding:0 var(--space-3)}.mx-nav{flex-direction:column;gap:2px;display:flex}.mx-nav-title{padding:0 var(--space-3);letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);justify-content:space-between;align-items:center;margin-bottom:4px;font-size:12px;font-weight:600;line-height:16px;display:flex}.mx-nav-item{font:inherit;align-items:center;gap:var(--space-3);height:38px;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--text-2);text-align:left;cursor:pointer;background:0 0;border:0;font-weight:500;text-decoration:none;display:flex}.mx-nav-item:hover{background:var(--surface-subtle);color:var(--text)}.mx-nav-item[aria-current=page]{background:var(--primary-tint);color:var(--primary);font-weight:600}.mx-nav-item .mx-count{margin-left:auto}.mx-proj-icon{color:#fff;border-radius:8px;flex:none;place-items:center;width:26px;height:26px;display:inline-grid}.mx-sidebar-user{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3) 0;border-top:1px solid var(--border);margin-top:auto;display:flex}.mx-sidebar-user strong{font-size:14px;line-height:18px;display:block}.mx-sidebar-user span{color:var(--text-3);font-size:12px;line-height:16px;display:block}.mx-notif{gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--surface);border-bottom:1px solid var(--border);display:flex}.mx-notif[data-unread=true]{background:var(--primary-tint)}.mx-notif-icon{border-radius:var(--radius-md);background:var(--surface-subtle);width:32px;height:32px;color:var(--text-2);flex:none;place-items:center;display:inline-grid}.mx-notif-body{flex-direction:column;gap:4px;min-width:0;display:flex}.mx-notif-text{color:var(--text);margin:0;font-size:14px;line-height:20px}.mx-notif-meta{align-items:center;gap:var(--space-2);color:var(--text-3);font-size:12px;display:flex}.mx-notif-meta b{color:var(--text-2);font-weight:600}.mx-modal{box-sizing:border-box;border-radius:var(--radius-xl);background:var(--surface);width:100%;max-width:560px;box-shadow:var(--shadow-lg);border:1px solid var(--border);flex-direction:column;display:flex}.mx-modal-head{align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border);display:flex}.mx-modal-head h2{font-family:var(--font-display);flex:1;margin:0;font-size:20px;font-weight:600;line-height:28px}.mx-modal-body{gap:var(--space-4);padding:var(--space-6);flex-direction:column;display:flex}.mx-modal-foot{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--border);display:flex}.mx-empty{align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-6);text-align:center;border-radius:var(--radius-lg);border:1.5px dashed var(--border-control);color:var(--text-2);flex-direction:column;display:flex}.mx-empty .mx-icon{color:var(--text-3);margin-bottom:4px}.mx-empty strong{color:var(--text);font-size:15px;line-height:22px}.mx-empty p{margin:0 0 var(--space-2);max-width:36ch;font-size:14px;line-height:20px}.mx-toast{align-items:center;gap:var(--space-3);padding:12px var(--space-4);border-radius:var(--radius-md);background:var(--surface-inverse);color:var(--text-inverse);box-shadow:var(--shadow-md);font-size:14px;display:inline-flex}.mx-toast a,.mx-toast button{font:inherit;color:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.mx-toast-success .mx-icon{color:var(--status-done-bg)}.mx-toast-error .mx-icon{color:var(--status-blocked-bg)}.mx-toast-info .mx-icon{color:var(--primary-tint)}.mx-tag-text{text-overflow:ellipsis;overflow:hidden}.mx-empty-compact{padding:var(--space-5) var(--space-4);gap:4px}.mx-empty-compact strong{font-size:14px;line-height:20px}.mx-empty-compact p{font-size:13px;line-height:18px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--modal-overlay:#14202b52;--topbar-h:56px;--bottomnav-h:64px;--page-gutter:16px;--safe-bottom:env(safe-area-inset-bottom,0px);--ev-remote:#2f6a8f;--ev-remote-bg:#e2eef6;--ev-leave:#2b7a4b;--ev-leave-bg:#e3f3e8;--ev-reservation:#5b3fd9;--ev-reservation-bg:#eeeafe;--ev-birthday:#a3336d;--ev-birthday-bg:#f8e6ef;--ev-nameday:#995a00;--ev-nameday-bg:#fdf1dc;--ev-holiday:#c0352a;--ev-holiday-bg:#fce7e4;--ev-trasferta:#b5541e;--ev-trasferta-bg:#fbe6dc}:root[data-theme=dark]{--modal-overlay:#0009;--ev-remote:#8ec5e8;--ev-remote-bg:#1b2c38;--ev-leave:#6ccb8f;--ev-leave-bg:#1d3326;--ev-reservation:#ab9dff;--ev-reservation-bg:#2a2547;--ev-birthday:#f08bc0;--ev-birthday-bg:#3a1c2b;--ev-nameday:#f2b84b;--ev-nameday-bg:#3a2c12;--ev-holiday:#ff8d7e;--ev-holiday-bg:#3d1f1b;--ev-trasferta:#f2a26b;--ev-trasferta-bg:#3a2316}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--modal-overlay:#0009;--ev-remote:#8ec5e8;--ev-remote-bg:#1b2c38;--ev-leave:#6ccb8f;--ev-leave-bg:#1d3326;--ev-reservation:#ab9dff;--ev-reservation-bg:#2a2547;--ev-birthday:#f08bc0;--ev-birthday-bg:#3a1c2b;--ev-nameday:#f2b84b;--ev-nameday-bg:#3a2c12;--ev-holiday:#ff8d7e;--ev-holiday-bg:#3d1f1b;--ev-trasferta:#f2a26b;--ev-trasferta-bg:#3a2316}}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-ui);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100dvh;font-size:14px;line-height:20px}button{cursor:pointer;color:inherit;font-family:inherit}input,textarea,select{font-family:inherit;font-size:16px}@media (width>=640px){input,textarea,select{font-size:14px}}a{color:var(--primary)}img{max-width:100%}:where(a,button,input,select,textarea,[role=button],[tabindex]):focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:var(--border-control);border-radius:3px}h1,h2,h3{font-family:var(--font-display);color:var(--text)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.muted{color:var(--text-2)}.subtle{color:var(--text-3)}.mono{font-family:var(--font-mono)}.tabular{font-variant-numeric:tabular-nums}.truncate{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.row{align-items:center;gap:var(--space-2);min-width:0;display:flex}.row-wrap{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.stack{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.stack-lg{gap:var(--space-5);flex-direction:column;min-width:0;display:flex}.spacer{flex:1}.grid-2,.grid-3{gap:var(--space-4);grid-template-columns:1fr;display:grid}@container main (width>=640px){.grid-2,.grid-3{grid-template-columns:1fr 1fr}}@container main (width>=840px){.grid-3{grid-template-columns:repeat(3,1fr)}}.hide-mobile{display:none!important}@container main (width>=640px){.hide-mobile{display:revert!important}.hide-desktop{display:none!important}}:root{--rail-width:84px}.shell{flex-direction:column;min-height:100dvh;display:flex}.shell-main{flex-direction:column;flex:1;min-width:0;display:flex}#main{flex:1;min-width:0;container:main/inline-size}.shell-phone .shell-main{padding-bottom:calc(var(--bottomnav-h) + var(--safe-bottom))}.shell-rail,.shell-full{flex-direction:row}.topbar{z-index:30;align-items:center;gap:var(--space-2);height:var(--topbar-h);padding:0 var(--space-2) 0 var(--space-2);background:var(--surface);border-bottom:1px solid var(--border);display:flex;position:sticky;top:0}.topbar-title{min-width:0;font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:17px;font-weight:600;overflow:hidden}.topbar-logo{height:26px}.sidebar{gap:var(--space-5);height:100dvh;width:var(--sidebar-width);padding:var(--space-5) var(--space-3);background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex:none;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-head{justify-content:space-between;align-items:center;gap:var(--space-2);padding-left:var(--space-3);display:flex}.sidebar-logo img{height:30px;display:block}.nav-sub{padding-left:var(--space-3);border-left:1px solid var(--border);flex-direction:column;gap:2px;margin:2px 0 4px 22px;display:flex}.nav-sub .mx-nav-item{height:34px;font-size:13px}.sidebar-user{align-items:center;gap:var(--space-2);padding:var(--space-3) 0 0 var(--space-2);border-top:1px solid var(--border);min-width:0;margin-top:auto;display:flex}.sidebar-user-text{min-width:0;color:inherit;flex:1;text-decoration:none}.sidebar-user-text strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:18px;display:block;overflow:hidden}.sidebar-user-text span{color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:16px;display:block;overflow:hidden}.rail{z-index:40;height:100dvh;width:var(--rail-width);align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-1);background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex:none;display:flex;position:sticky;top:0;overflow:hidden auto}.rail-logo{place-items:center;width:44px;height:44px;display:grid}.rail-logo img{object-fit:contain;width:34px;height:34px}.rail-nav{flex-direction:column;gap:4px;width:100%;display:flex}.rail-item{font:inherit;width:100%;color:var(--text-2);text-align:center;cursor:pointer;border-radius:var(--radius-md);background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;padding:6px 2px;font-size:11px;font-weight:500;line-height:14px;text-decoration:none;display:flex;position:relative}.rail-item .rail-icon{border-radius:var(--radius-full);place-items:center;width:52px;height:32px;transition:background-color .12s;display:grid}.rail-item:hover .rail-icon{background:var(--surface-subtle);color:var(--text)}.rail-item[data-active=true]{color:var(--primary);font-weight:600}.rail-item[data-active=true] .rail-icon{background:var(--primary-tint)}.rail-item .rail-caret{color:var(--text-3);position:absolute;top:14px;right:6px}.rail-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:0 2px;overflow:hidden}.rail-bottom{align-items:center;gap:var(--space-2);flex-direction:column;margin-top:auto;display:flex}.rail-avatar{cursor:pointer;background:0 0;border:0;border-radius:50%;padding:2px;display:flex}.rail-avatar:hover{box-shadow:0 0 0 3px var(--surface-subtle)}.flyout{z-index:70;left:calc(var(--rail-width) + 8px);min-width:240px;max-width:min(320px, calc(100vw - var(--rail-width) - 24px));padding:var(--space-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:.12s pop-in;position:fixed}.flyout-title{padding:var(--space-2) var(--space-3) var(--space-1);letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);font-size:12px;font-weight:600}.flyout .mx-nav-item{width:100%}.flyout-user{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3) var(--space-3);border-bottom:1px solid var(--border);margin-bottom:var(--space-2);min-width:0;display:flex}.drawer-backdrop{z-index:60;background:var(--modal-overlay);animation:.15s fade-in;position:fixed;inset:0}.drawer{z-index:61;gap:var(--space-5);width:min(300px,86vw);padding:var(--space-4) var(--space-3) calc(var(--space-4) + var(--safe-bottom));background:var(--surface);box-shadow:var(--shadow-lg);flex-direction:column;animation:.2s slide-in-left;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.drawer-head{padding-left:var(--space-3);justify-content:space-between;align-items:center;display:flex}.drawer-head img{height:28px}.bottomnav{z-index:30;height:calc(var(--bottomnav-h) + var(--safe-bottom));padding-bottom:var(--safe-bottom);background:var(--surface);border-top:1px solid var(--border);grid-auto-columns:1fr;grid-auto-flow:column;display:grid;position:fixed;bottom:0;left:0;right:0}.bottomnav a{color:var(--text-2);flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:12px;font-weight:500;text-decoration:none;display:flex}.bottomnav a .bn-icon{border-radius:var(--radius-full);place-items:center;width:56px;height:30px;display:grid}.bottomnav a[aria-current=page]{color:var(--primary);font-weight:600}.bottomnav a[aria-current=page] .bn-icon{background:var(--primary-tint)}.page{width:100%;max-width:1320px;padding:var(--space-4) var(--page-gutter) var(--space-8);gap:var(--space-4);flex-direction:column;min-width:0;margin:0 auto;display:flex}@container main (width>=640px){.page{--page-gutter:24px;padding-top:var(--space-6);gap:var(--space-5)}}@container main (width>=1000px){.page{--page-gutter:32px}}.page-header{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.page-header-text{flex:220px;min-width:0}.page-header h1{letter-spacing:-.01em;font-size:22px;font-weight:700;line-height:28px}@container main (width>=640px){.page-header h1{font-size:28px;line-height:34px}}.page-header p{color:var(--text-2);margin-top:2px}.page-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.back-link{color:var(--text-2);align-items:center;gap:4px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--text)}.section-title{font-family:var(--font-display);font-size:16px;font-weight:600;line-height:22px}.toolbar{align-items:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.toolbar>.mx-search,.toolbar>.grow{flex:220px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);min-width:0}.card-pad{padding:var(--space-4)}@container main (width>=640px){.card-pad{padding:var(--space-5)}}.card-head{align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-4) 0;display:flex}.card-head h2,.card-head h3{flex:1;min-width:0;font-size:16px;font-weight:600;line-height:22px}.card-body{padding:var(--space-4)}.card-foot{justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);display:flex}.card-link{color:inherit;text-decoration:none;transition:border-color .12s;display:block}.card-link:hover{border-color:var(--border-control)}.stat{flex-direction:column;gap:2px;display:flex}.stat-value{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:26px;font-weight:700;line-height:32px}.stat-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);font-size:12px;font-weight:600}.list{flex-direction:column;display:flex}.list-item{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);min-width:0;color:inherit;text-decoration:none;display:flex}.list-item:last-child{border-bottom:0}a.list-item:hover,button.list-item:hover{background:var(--surface-subtle)}button.list-item{border:0;border-bottom:1px solid var(--border);text-align:left;width:100%;font:inherit;background:0 0}.list-item-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.list-item-title{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.list-item-sub{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.table-wrap{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:14px}.table th{text-align:left;padding:10px var(--space-3);letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);border-bottom:1px solid var(--border);white-space:nowrap;background:var(--surface);font-size:12px;font-weight:600}.table td{padding:10px var(--space-3);border-bottom:1px solid var(--border);vertical-align:middle}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover td{background:var(--surface-subtle)}.table .num{text-align:right;font-variant-numeric:tabular-nums}.badge{border-radius:var(--radius-full);white-space:nowrap;background:var(--surface-subtle);height:24px;color:var(--text-2);align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.badge-success{color:var(--status-done);background:var(--status-done-bg)}.badge-warning{color:var(--status-review);background:var(--status-review-bg)}.badge-danger{color:var(--status-blocked);background:var(--status-blocked-bg)}.badge-info{color:var(--status-testing);background:var(--status-testing-bg)}.badge-primary{color:var(--primary);background:var(--primary-tint)}.badge-violet{color:var(--status-progress);background:var(--status-progress-bg)}.form{gap:var(--space-4);flex-direction:column;display:flex}.form-actions{gap:var(--space-2);flex-direction:column-reverse;display:flex}.form-actions .mx-btn{width:100%}@container main (width>=640px){.form-actions{flex-direction:row;justify-content:flex-end}.form-actions .mx-btn{width:auto}}textarea.mx-input{height:auto;min-height:96px;padding:var(--space-2) var(--space-3);resize:vertical;line-height:20px}.mx-input:disabled,.mx-select select:disabled{background:var(--surface-subtle);color:var(--text-3);cursor:not-allowed}.check-list{gap:var(--space-2);flex-direction:column;display:flex}.check-list .mx-check{min-height:32px}.mx-check input:disabled{opacity:.5;cursor:not-allowed}.toggle{align-items:center;gap:var(--space-2);cursor:pointer;display:inline-flex;position:relative}.toggle input{appearance:none;background:var(--border-control);cursor:pointer;border-radius:999px;flex:none;width:36px;height:20px;margin:0;transition:background .15s;position:relative}.toggle input:after{content:"";background:var(--surface);border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px}.toggle input:checked{background:var(--primary)}.toggle input:checked:after{transform:translate(16px)}.chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{font:inherit;height:32px;padding:0 var(--space-3);border-radius:var(--radius-full);border:1px solid var(--border-control);background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;font-size:13px;font-weight:500;display:inline-flex}.chip:hover{background:var(--surface-subtle)}.chip[aria-pressed=true]{background:var(--primary-tint);border-color:var(--primary);color:var(--primary);font-weight:600}.chip:disabled{opacity:.45;cursor:not-allowed}.chip-remove{color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:inline-grid}.popover-anchor{position:relative}.popover{z-index:50;min-width:100%;max-width:min(360px,100vw - 32px);max-height:320px;padding:var(--space-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto}.popover-right{left:auto;right:0}.menu-item{font:inherit;align-items:center;gap:var(--space-2);width:100%;min-height:36px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.menu-item:hover{background:var(--surface-subtle)}.menu-item>.mx-check{flex:1;align-self:stretch;min-width:0}.menu-item.danger{color:var(--danger)}.select-trigger{font:inherit;align-items:center;gap:var(--space-2);width:100%;height:var(--control-md);padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border-control);background:var(--surface);color:var(--text);cursor:pointer;text-align:left;display:flex}.select-trigger>span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.select-trigger .placeholder{color:var(--text-3)}.modal-backdrop{z-index:80;background:var(--modal-overlay);justify-content:center;align-items:flex-end;animation:.15s fade-in;display:flex;position:fixed;inset:0}.modal-backdrop .mx-modal{border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-width:100%;max-height:92dvh;padding-bottom:var(--safe-bottom);border-bottom:0;animation:.2s slide-up}.modal-backdrop .mx-modal-head{padding:var(--space-4) var(--space-4) var(--space-3)}.modal-backdrop .mx-modal-body{padding:var(--space-4);overflow-y:auto;container:main/inline-size}.modal-backdrop .mx-modal-foot{padding:var(--space-3) var(--space-4);flex-wrap:wrap}@media (width<=639px){.modal-backdrop .mx-modal-foot .mx-btn{flex:1}}@media (width>=640px){.modal-backdrop{padding:var(--space-6);align-items:center}.modal-backdrop .mx-modal{border-radius:var(--radius-xl);border-bottom:1px solid var(--border);max-width:560px;max-height:88dvh;padding-bottom:0;animation:.15s pop-in}.modal-backdrop .mx-modal.modal-lg{max-width:760px}.modal-backdrop .mx-modal-head{padding:var(--space-5) var(--space-6)}.modal-backdrop .mx-modal-body{padding:var(--space-6)}.modal-backdrop .mx-modal-foot{padding:var(--space-4) var(--space-6)}}.toasts{z-index:100;left:var(--space-4);right:var(--space-4);bottom:calc(var(--bottomnav-h) + var(--safe-bottom) + var(--space-3));align-items:center;gap:var(--space-2);pointer-events:none;flex-direction:column;display:flex;position:fixed}.toasts .mx-toast{pointer-events:auto;max-width:480px;animation:.2s slide-up}@media (width>=640px){.toasts{left:auto;right:var(--space-6);bottom:var(--space-6);align-items:flex-end}}.spinner{border:2.5px solid var(--border);border-top-color:var(--primary);border-radius:50%;flex:none;width:22px;height:22px;animation:.7s linear infinite spin}.spinner-sm{border-width:2px;width:16px;height:16px}.loading-block{padding:var(--space-8);place-items:center;display:grid}.fullscreen-center{place-items:center;min-height:100dvh;display:grid}.skeleton{background:linear-gradient(90deg, var(--surface-subtle) 0%, var(--border) 50%, var(--surface-subtle) 100%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.2s infinite shimmer}.error-box{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--status-blocked-bg);color:var(--status-blocked);align-items:flex-start;display:flex}.info-box{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--primary-tint);color:var(--text);align-items:flex-start;display:flex}.warn-box{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--status-review-bg);color:var(--status-review);align-items:flex-start;display:flex}.pagination{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3);color:var(--text-2);font-size:13px;display:flex}.cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.cal-weekday{letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);text-align:center;padding:8px 4px;font-size:11px;font-weight:600}.cal-day{border-top:1px solid var(--border);border-left:1px solid var(--border);min-width:0;min-height:44px;padding:4px}.cal-day.is-other{background:var(--surface-subtle);color:var(--text-3)}.cal-day.is-weekend{background:color-mix(in srgb, var(--surface-subtle) 60%, transparent)}.cal-day-num{border-radius:var(--radius-full);font-variant-numeric:tabular-nums;place-items:center;min-width:24px;height:24px;padding:0 4px;font-size:12px;font-weight:600;display:inline-grid}.cal-day.is-today .cal-day-num{background:var(--primary);color:var(--on-primary)}.cal-day.is-holiday .cal-day-num{color:var(--ev-holiday)}.cal-event{border-radius:var(--radius-xs);white-space:nowrap;text-overflow:ellipsis;text-align:left;cursor:pointer;border:0;align-items:center;gap:4px;width:100%;min-width:0;height:20px;margin-top:2px;padding:0 6px;font-size:11px;font-weight:600;display:flex;overflow:hidden}.ev-remote{color:var(--ev-remote);background:var(--ev-remote-bg)}.ev-leave{color:var(--ev-leave);background:var(--ev-leave-bg)}.ev-trasferta{color:var(--ev-trasferta);background:var(--ev-trasferta-bg)}.ev-reservation{color:var(--ev-reservation);background:var(--ev-reservation-bg)}.ev-birthday{color:var(--ev-birthday);background:var(--ev-birthday-bg)}.ev-nameday{color:var(--ev-nameday);background:var(--ev-nameday-bg)}.ev-holiday{color:var(--ev-holiday);background:var(--ev-holiday-bg)}.ev-dot{background:currentColor;border-radius:50%;flex:none;width:8px;height:8px}.date-nav{align-items:center;gap:var(--space-1);display:flex}.date-nav-label{min-width:0;font-family:var(--font-display);text-transform:capitalize;padding:0 var(--space-2);white-space:nowrap;font-size:16px;font-weight:600}.login{background:var(--bg);grid-template-columns:1fr;min-height:100dvh;display:grid}.login-art{background:var(--primary) url(/img/login_header_desktop.png) center top / cover no-repeat;display:none}.login-panel{justify-content:center;gap:var(--space-6);width:100%;max-width:420px;padding:var(--space-8) var(--page-gutter);flex-direction:column;margin:0 auto;display:flex}.login-panel img.logo{align-self:flex-start;height:36px}.login-panel h1{font-size:28px;font-weight:700;line-height:34px}@media (width>=900px){.login{grid-template-columns:1fr 1fr}.login-art{display:block}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes pop-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}@keyframes slide-in-left{0%{transform:translate(-100%)}to{transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}a.mx-tab.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.img-dark,:root[data-theme=dark] .img-light{display:none}:root[data-theme=dark] .img-dark{display:revert}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .img-light{display:none}:root:not([data-theme=light]) .img-dark{display:revert}}
