@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:100 700;font-display:block;src:url(./material-symbols-outlined-Bn5lkljl.woff2)format("woff2")}.material-symbols-outlined{letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"liga";direction:ltr;font-family:Material Symbols Outlined;font-size:24px;font-style:normal;font-weight:400;line-height:1;display:inline-block}:root{--color-primary:#001e5e;--color-primary-dark:#001442;--color-accent:#0069d9;--color-online:#25d366;--color-danger:#d32f2f;--color-success:#388e3c;--color-warning:#f57c00;--color-info:#0288d1;--color-bg:#f0f2f5;--color-surface:#fff;--color-text:#111b21;--color-text-secondary:#667781;--color-border:#e0e0e0;--color-chat-bg:#e9eef6;--color-bubble-out:#d4e6ff;--color-bubble-in:#fff;--color-read:#53bdeb;--radius:8px;--shadow:0 2px 8px #0000001f;--sidebar-width:360px;--header-height:60px}@media (prefers-color-scheme:dark){:root{--color-bg:#111b21;--color-surface:#202c33;--color-text:#e9edef;--color-text-secondary:#8696a0;--color-border:#2a3942;--color-chat-bg:#0b141a;--color-bubble-out:#0b3b80;--color-bubble-in:#202c33}}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}html{-webkit-text-size-adjust:100%;overscroll-behavior:none;touch-action:manipulation}body{color:var(--color-text);background:var(--color-bg);overscroll-behavior:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;width:100%;font-family:Segoe UI,system-ui,-apple-system,Roboto,sans-serif;font-size:14px;position:fixed;inset:0;overflow:hidden}@media (pointer:coarse){input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]),textarea,select{font-size:16px!important}}button{font:inherit;color:inherit;cursor:pointer}input,textarea{font:inherit;color:inherit}ul{margin:0;padding:0;list-style:none}h1,h2,h3{margin:0}.muted{color:var(--color-text-secondary);font-size:13px}.center{text-align:center}.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stack{flex-direction:column;gap:12px;display:flex}.material-symbols-outlined{vertical-align:middle;-webkit-user-select:none;user-select:none;font-size:22px;line-height:1}.icon-filled{font-variation-settings:"FILL" 1}.splash{height:100%;color:var(--color-text-secondary);place-items:center;display:grid}.btn{border-radius:var(--radius);border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:8px 16px;font-weight:500;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-navy);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-navy-dark)}.btn-secondary{border-color:var(--color-border);color:var(--color-text);background:0 0}.btn-danger{background:var(--color-danger);color:#fff}.btn-block{width:100%}.btn-icon{width:36px;height:36px;color:var(--color-text-secondary);background:0 0;border:none;border-radius:50%;flex-shrink:0;place-items:center;display:inline-grid}.btn-icon:hover{background:#7f7f7f26}.btn-icon.danger{color:var(--color-danger)}.btn-send{background:var(--color-navy);color:#fff;border:none;border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.btn-send:disabled{opacity:.5;cursor:not-allowed}:focus-visible{outline:2px solid var(--color-info);outline-offset:2px}.field{text-align:left;flex-direction:column;gap:4px;display:flex}.field>span{font-size:13px;font-weight:500}.field input,.field textarea,.search-input{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:100%;padding:9px 12px}.field input:focus,.field textarea:focus,.search-input:focus{outline:2px solid var(--color-accent);outline-offset:-1px}.check{align-items:center;gap:8px;display:flex}.input-prefix{align-items:stretch;display:flex}.input-prefix>span{border:1px solid var(--color-border);border-radius:var(--radius) 0 0 var(--radius);background:var(--color-bg);border-right:none;place-items:center;padding:0 12px;display:grid}.input-prefix input{border-radius:0 var(--radius) var(--radius) 0}.alert{border-radius:var(--radius);text-align:left;align-items:center;gap:8px;padding:10px 12px;display:flex}.alert-danger{color:#b71c1c;background:#fdecea}.badge{background:var(--color-bg);color:var(--color-text-secondary);border-radius:10px;margin-left:6px;padding:1px 8px;font-size:11px;display:inline-block}.login-page{background:linear-gradient(160deg,#001e5e,#0077f2);place-items:center;height:100%;padding:16px;display:grid}.login-card{background:var(--color-surface);width:min(100%,380px);box-shadow:var(--shadow);text-align:center;border-radius:12px;flex-direction:column;gap:14px;padding:28px 24px;display:flex}.login-logo{background:var(--color-primary);color:#fff;border-radius:50%;place-items:center;width:64px;height:64px;margin:0 auto;display:grid}.login-logo .material-symbols-outlined{font-size:34px}.app{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);background:var(--color-surface);max-width:1600px;height:100%;margin:0 auto;display:grid}.sidebar{border-right:1px solid var(--color-border);flex-direction:column;min-width:0;min-height:0;display:flex}.sidebar-header{height:var(--header-height);background:var(--color-bg);flex-shrink:0;align-items:center;gap:10px;padding:0 12px;display:flex}.sidebar-user{flex:1;min-width:0}.sidebar-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.sidebar-search{border-radius:var(--radius);background:var(--color-bg);color:var(--color-text-secondary);align-items:center;gap:8px;margin:8px 12px;padding:0 12px;display:flex}.sidebar-search input{background:0 0;border:none;outline:none;flex:1;padding:9px 0}.sidebar-list{flex:1;min-height:0;overflow-y:auto}.avatar{flex-shrink:0;display:inline-block;position:relative}.avatar img,.avatar-department{object-fit:cover;color:#fff;border-radius:50%;place-items:center;width:100%;height:100%;display:grid}.avatar-initials{background:var(--color-accent);color:#fff;border-radius:50%;place-items:center;width:100%;height:100%;font-size:.85em;font-weight:600;display:grid}.avatar-sm{width:36px;height:36px}.avatar-md{width:44px;height:44px}.avatar-lg{width:64px;height:64px}.presence-dot{background:var(--color-online);border:2px solid var(--color-surface);border-radius:50%;width:12px;height:12px;position:absolute;bottom:0;right:0}.conversation-item{border:none;border-bottom:1px solid var(--color-border);text-align:left;background:0 0;align-items:center;gap:12px;width:100%;padding:10px 14px;display:flex}.conversation-item:hover{background:var(--color-bg)}.conversation-item.active{background:#128c7e24}.conversation-body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.conversation-row{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.conversation-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.conversation-time{color:var(--color-text-secondary);flex-shrink:0;font-size:12px}.conversation-preview{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.conversation-preview.typing{color:var(--color-accent);font-style:italic}.unread-badge{background:var(--color-brand-blue);color:#fff;text-align:center;border-radius:10px;flex-shrink:0;min-width:20px;padding:1px 6px;font-size:12px;font-weight:600}.empty-list{text-align:center;color:var(--color-text-secondary);padding:40px 16px}.empty-list .material-symbols-outlined{font-size:44px}.menu-anchor{position:relative}.menu{z-index:30;border-radius:var(--radius);background:var(--color-surface);min-width:160px;box-shadow:var(--shadow);padding:4px 0;position:absolute;top:100%;right:0}.menu-item{text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:9px 14px;display:flex}.menu-item:hover{background:var(--color-bg)}.menu-item.danger{color:var(--color-danger)}.chat-pane{background:var(--color-chat-bg);flex-direction:column;min-width:0;min-height:0;display:flex}.chat-pane.empty{color:var(--color-text-secondary);background:var(--color-bg);justify-content:center;align-items:center;gap:6px}.chat-pane.empty .material-symbols-outlined{color:var(--color-accent);font-size:72px}.chat-header{height:var(--header-height);background:var(--color-bg);border-bottom:1px solid var(--color-border);flex-shrink:0;align-items:center;gap:12px;padding:0 14px;display:flex}.chat-title{min-width:0}.chat-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.chat-status{color:var(--color-text-secondary);font-size:12px}.chat-status.online,.chat-status.typing{color:var(--color-accent)}.chat-status.typing{font-style:italic}.back-button{display:none}.messages{flex-direction:column;flex:1;gap:4px;min-height:0;padding:12px 6%;display:flex;overflow-y:auto}.messages-placeholder{background:var(--color-surface);color:var(--color-text-secondary);border-radius:12px;margin:auto;padding:6px 14px}.day-separator{justify-content:center;margin:10px 0 6px;display:flex}.day-separator span{background:var(--color-surface);color:var(--color-text-secondary);border-radius:10px;padding:4px 12px;font-size:12px;box-shadow:0 1px 1px #00000014}.message{display:flex}.message.sent{justify-content:flex-end}.bubble{border-radius:var(--radius);background:var(--color-bubble-in);max-width:min(75%,560px);padding:6px 10px 4px;position:relative;box-shadow:0 1px 1px #00000021}.message.sent .bubble{background:var(--color-bubble-out)}.bubble:hover .message-menu .btn-icon,.message-menu .btn-icon[aria-expanded=true]{opacity:1}.message-menu{position:absolute;top:0;right:0}.message-menu .btn-icon{opacity:0;background:inherit;width:26px;height:26px}.message-sender{color:var(--color-accent);font-size:12px;font-weight:600}.message-text{white-space:pre-wrap;overflow-wrap:anywhere}.message-meta{color:var(--color-text-secondary);justify-content:flex-end;align-items:center;gap:3px;margin-top:2px;font-size:11px;display:flex}.message-meta .material-symbols-outlined{font-size:16px}.message-status.sent,.message-status.delivered{color:var(--color-text-secondary)}.message-status.read{color:var(--color-read)}.message-deleted{border-radius:var(--radius);color:var(--color-text-secondary);background:var(--color-bubble-in);align-items:center;gap:6px;padding:6px 10px;display:flex}.message-image{border-radius:6px;max-width:100%;max-height:320px;display:block}.message-attachment{color:inherit;background:#7f7f7f1f;border-radius:6px;align-items:center;gap:10px;margin-bottom:4px;padding:8px;text-decoration:none;display:flex}.message-attachment-info{flex-direction:column;min-width:0;display:flex}.message-attachment-name{overflow-wrap:anywhere;font-weight:500}.message-attachment-size{color:var(--color-text-secondary);font-size:12px}.catalog-card{background:#7f7f7f1f;border-radius:6px;width:min(100%,280px);overflow:hidden}.catalog-card img{object-fit:cover;width:100%;height:150px;display:block}.catalog-card-body{padding:8px 10px}.catalog-card-id{color:var(--color-text-secondary);font-size:11px}.catalog-card-title{font-weight:600}.catalog-card-price{color:var(--color-accent);font-weight:600}.catalog-card-specs{color:var(--color-text-secondary);gap:10px;font-size:12px;display:flex}.catalog-card-specs .material-symbols-outlined{font-size:14px}.catalog-card-link{border-top:1px solid var(--color-border);color:var(--color-accent);justify-content:center;align-items:center;gap:6px;padding:8px;text-decoration:none;display:flex}button.catalog-card-link{border:0;border-top:1px solid var(--color-border);width:100%;font:inherit;cursor:pointer;background:0 0}.composer-wrap{background:var(--color-bg);flex-shrink:0}.composer{align-items:flex-end;gap:8px;padding:10px 12px;display:flex}.composer-field{flex:1;min-width:0;position:relative}.composer-field textarea{resize:none;background:var(--color-surface);border:none;border-radius:20px;outline:none;width:100%;max-height:100px;padding:10px 14px;line-height:1.35}.file-preview{border-top:1px solid var(--color-border);align-items:center;gap:10px;padding:8px 14px;display:flex}.file-preview img{object-fit:cover;border-radius:4px;width:40px;height:40px}.file-preview-info{flex-direction:column;flex:1;min-width:0;display:flex}.file-preview-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.quick-popup{background:var(--color-surface);max-height:260px;box-shadow:var(--shadow);z-index:20;border-radius:10px;position:absolute;bottom:calc(100% + 8px);left:0;right:0;overflow-y:auto}.quick-item,.quick-manage{text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:8px 14px;display:flex}.quick-item.active,.quick-item:hover{background:var(--color-bg)}.quick-key{color:var(--color-accent);flex-shrink:0;align-items:center;gap:4px;font-weight:600;display:inline-flex}.quick-key .material-symbols-outlined{font-size:14px}.quick-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-text-secondary);flex:1;overflow:hidden}.quick-manage{border-top:1px solid var(--color-border);color:var(--color-text-secondary);font-size:12px}.quick-empty{color:var(--color-text-secondary);padding:10px 14px}.quick-list{border:1px solid var(--color-border);border-radius:var(--radius);max-height:220px;margin-bottom:14px;overflow-y:auto}.quick-row{border-bottom:1px solid var(--color-border);align-items:center;gap:8px;padding:8px 12px;display:flex}.quick-row:last-child{border-bottom:none}.quick-row-body{flex:1;min-width:0}.modal{background:var(--color-surface);width:min(92vw,480px);color:var(--color-text);border:none;border-radius:12px;padding:0;box-shadow:0 8px 32px #0000004d}.modal::backdrop{background:#00000073}.modal-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.modal-header h2{font-size:17px}.modal-body{max-height:70vh;padding:16px;overflow-y:auto}.modal-footer,.modal-actions{justify-content:flex-end;gap:8px;display:flex}.modal-footer{border-top:1px solid var(--color-border);padding:12px 16px}.picker{margin-top:12px}.picker h3{text-transform:uppercase;letter-spacing:.4px;color:var(--color-text-secondary);margin:10px 0 4px;font-size:12px}.picker-item{border-radius:var(--radius);text-align:left;background:0 0;border:none;align-items:center;gap:12px;width:100%;padding:8px 6px;display:flex}.picker-item:hover{background:var(--color-bg)}.picker-text{flex-direction:column;display:flex}.toasts{z-index:100;flex-direction:column;gap:8px;max-width:calc(100vw - 32px);display:flex;position:fixed;bottom:16px;right:16px}.toast{border-radius:var(--radius);background:var(--color-surface);box-shadow:var(--shadow);border-left:4px solid var(--color-success);align-items:center;gap:10px;padding:10px 8px 10px 14px;display:flex}.toast-danger{border-left-color:var(--color-danger)}.toast-warning{border-left-color:var(--color-warning)}.toast-info{border-left-color:var(--color-info)}@media (width<=760px){.app{grid-template-columns:minmax(0,1fr)}.app[data-view=list] .chat-pane,.app[data-view=chat] .sidebar{display:none}.back-button{display:inline-grid}.messages{padding:12px 10px}.bubble{max-width:88%}}.app[data-panel=agenda],.app[data-panel=scadenze],.app[data-panel=pinned],.app[data-panel=documents],.app[data-panel=catalog],.app[data-panel=tasks]{grid-template-columns:var(--sidebar-width) 1fr var(--panel-width)}:root{--panel-width:400px}.side-panel{background:var(--color-surface);border-left:1px solid var(--color-border);flex-direction:column;min-height:0;display:flex}.side-panel-header{height:var(--header-height);background:var(--color-primary);color:#fff;flex-shrink:0;align-items:center;gap:10px;padding:0 12px 0 16px;display:flex}.side-panel-header h2{flex:1;font-size:16px}.side-panel-header .btn-icon{color:#fff}.side-panel-toolbar{border-bottom:1px solid var(--color-border);flex-shrink:0;align-items:center;gap:12px;padding:10px 14px;display:flex}.side-panel-toolbar select{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);flex:1;min-width:0;padding:7px 10px}.side-panel-body{flex:1;min-height:0;overflow-y:auto}.side-panel-footer{border-top:1px solid var(--color-border);flex-shrink:0;padding:12px 14px}.icon-badge{background:var(--color-primary);color:#fff;text-align:center;border-radius:8px;min-width:16px;padding:0 4px;font-size:10px;font-weight:700;line-height:16px;position:absolute;top:0;right:0}.icon-badge.danger{background:var(--color-danger)}.badge-anchor{position:relative}.btn-icon.active{color:var(--color-accent);background:#128c7e2e}.btn-icon.ok{color:var(--color-success)}.text-danger{color:var(--color-danger)}.agenda-day{z-index:1;background:var(--color-bg);color:var(--color-text-secondary);letter-spacing:.3px;text-transform:uppercase;margin:0;padding:6px 16px;font-size:12px;font-weight:600;position:sticky;top:0}.agenda-item,.deadline-item{border-bottom:1px solid var(--color-border);border-left:4px solid var(--color-text-secondary);gap:10px;padding:10px 12px 10px 14px;display:flex}.agenda-item.kind-prova_guida{border-left-color:#0077f2}.agenda-item.kind-consegna{border-left-color:#2e7d32}.agenda-item.kind-ritiro{border-left-color:#ef6c00}.agenda-item.kind-valutazione{border-left-color:#6a1b9a}.agenda-item.closed,.deadline-item.closed{opacity:.55}.agenda-item.overdue,.deadline-item.overdue{background:#f57c001a}.agenda-time{min-width:48px;font-weight:600}.agenda-time small{color:var(--color-text-secondary);font-size:11px;font-weight:400;display:block}.agenda-body,.deadline-body{flex:1;min-width:0}.agenda-title,.deadline-title{overflow-wrap:anywhere;font-weight:600}.agenda-line,.deadline-description{color:var(--color-text-secondary);overflow-wrap:anywhere;font-size:13px}.agenda-line .material-symbols-outlined,.agenda-title .material-symbols-outlined,.agenda-meta .material-symbols-outlined,.deadline-meta .material-symbols-outlined{vertical-align:-3px;font-size:16px}.agenda-note{font-style:italic}.agenda-meta,.deadline-meta{color:var(--color-text-secondary);flex-wrap:wrap;align-items:center;gap:4px 12px;margin-top:4px;font-size:12px;display:flex}.agenda-actions{flex-wrap:wrap;flex-shrink:0;place-content:flex-start flex-end;gap:2px;width:80px;display:flex}.agenda-actions .btn-icon{width:30px;height:30px}.agenda-actions .material-symbols-outlined{font-size:18px}.status-badge{background:var(--color-bg);color:var(--color-text);border-radius:10px;padding:1px 8px}.status-programmato{color:#0a5a2a;background:#d9fdd3}.status-completato{color:#0d47a1;background:#e3f2fd}.status-annullato,.status-no_show{color:#b71c1c;background:#ffebee}.deadline-item{border-left-width:0}.deadline-priority{flex-shrink:0;align-self:stretch;width:5px;margin:-10px 0 -10px -14px}.form-row{flex-wrap:wrap;gap:12px;display:flex}.form-row>.grow{flex:160px;min-width:0}.field select{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:100%;padding:9px 12px}.modal:has(.form-row){width:min(94vw,640px)}@media (width<=1100px){.app[data-panel=agenda],.app[data-panel=scadenze],.app[data-panel=pinned],.app[data-panel=documents],.app[data-panel=catalog],.app[data-panel=tasks]{grid-template-columns:var(--sidebar-width) 1fr}.side-panel{z-index:40;width:min(100vw,420px);position:fixed;top:0;bottom:0;right:0;box-shadow:-4px 0 16px #00000040}}@media (width<=760px){.app[data-panel=agenda],.app[data-panel=scadenze],.app[data-panel=pinned],.app[data-panel=documents],.app[data-panel=catalog],.app[data-panel=tasks]{grid-template-columns:minmax(0,1fr)}.side-panel{width:100vw}.agenda-actions{width:64px}}.app[data-panel=tasks]{grid-template-columns:var(--sidebar-width) 1fr 460px}.side-panel-toolbar{flex-wrap:wrap}.side-panel-toolbar select{flex:140px}.avatar-xs{width:22px;height:22px;font-size:10px}.task-item{border-bottom:1px solid var(--color-border);gap:8px;padding:10px 12px 10px 0;display:flex}.task-item.closed{opacity:.6}.task-item.overdue{background:#f57c001a}.task-urgency{flex-shrink:0;width:5px;margin:-10px 0}.task-main{flex:1;min-width:0}.task-open{text-align:left;background:0 0;border:none;flex-direction:column;gap:4px;width:100%;padding:0 0 0 8px;display:flex}.task-title-row{align-items:center;gap:6px;display:flex}.task-title{overflow-wrap:anywhere;flex:1;min-width:0;font-weight:600}.task-status{color:#fff;white-space:nowrap;border-radius:10px;padding:1px 8px;font-size:11px}.task-details,.task-last,.task-footer{color:var(--color-text-secondary);flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:12px;display:flex}.task-details .material-symbols-outlined,.task-due .material-symbols-outlined{vertical-align:-3px;font-size:15px}.task-progress{background:var(--color-bg);border-radius:3px;flex:80px;min-width:60px;height:5px;display:block;overflow:hidden}.task-progress>span{height:100%;transition:width .25s;display:block}.task-progress.large{height:8px}.task-percent{color:var(--color-text);font-size:12px;font-weight:600}.task-people{align-items:center;display:inline-flex}.task-people .avatar{margin-left:-6px}.task-people .avatar:first-child{margin-left:0}.task-more{margin-left:4px}.task-detail{flex-direction:column;gap:14px;display:flex}.task-badges{flex-wrap:wrap;gap:6px;display:flex}.info-grid{grid-template-columns:max-content 1fr;gap:6px 14px;margin:0;display:grid}.info-grid dt{color:var(--color-text-secondary)}.info-grid dd{overflow-wrap:anywhere;margin:0;font-weight:600}.info-grid .material-symbols-outlined{vertical-align:-4px;font-size:18px}.task-activity p,.task-detail p{overflow-wrap:anywhere;margin:4px 0 0}.people-list{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}.people-list li{align-items:center;gap:8px;display:flex}.task-progress-head{justify-content:space-between;margin-bottom:4px;display:flex}.steps li{align-items:flex-start;gap:6px;padding:4px 0;display:flex}.steps .step-body{flex-direction:column;padding-top:6px;display:flex}.steps li.done .step-title{color:var(--color-text-secondary);text-decoration:line-through}.step-check{color:var(--color-text-secondary)}.steps li.done .step-check{color:var(--color-success)}.task-reminder{border-top:1px solid var(--color-border);padding-top:12px}.task-reminder .form-row{margin-top:8px}fieldset{border:1px solid var(--color-border);border-radius:var(--radius);min-width:0;margin:0;padding:10px 12px}legend{padding:0 6px;font-size:13px;font-weight:500}.template-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;display:grid}.template-card{border:2px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);text-align:center;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;display:flex}.template-card.selected{border-color:var(--color-accent);background:#128c7e1a}.steps-preview{color:var(--color-text-secondary);margin:10px 0 0;padding-left:22px;font-size:13px}.recipients ul{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:4px 12px;max-height:140px;display:grid;overflow-y:auto}.quick-dates{gap:6px;margin-top:6px;display:flex}.btn-chip{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;padding:2px 10px;font-size:12px}.custom-steps{flex-direction:column;gap:8px;display:flex}.custom-steps .form-row{flex-wrap:nowrap;align-items:center}.custom-steps input{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);padding:8px 10px}.field label,.field>label{font-size:13px;font-weight:500}.field input[type=date]{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:100%;padding:9px 12px}@media (width<=1100px){.side-panel.wide{width:min(100vw,480px)}.app[data-panel=tasks]{grid-template-columns:var(--sidebar-width) minmax(0, 1fr)}}@media (width<=760px){.app[data-panel=tasks]{grid-template-columns:minmax(0,1fr)}.side-panel.wide{width:100vw}}.sidebar-header{gap:4px}.sidebar-header .avatar{margin-right:6px}.sidebar-user .muted{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-header .btn-icon{width:34px;height:34px}.alert-warning{color:#8a4b00;background:#fff4e5}.invite-card{width:min(100%,440px);max-height:calc(100vh - 32px);overflow-y:auto}.invite-share{flex-wrap:wrap;align-items:flex-start;gap:16px;margin:12px 0;display:flex}.qr-box{border:1px solid var(--color-border);border-radius:var(--radius);background:#fff;place-items:center;width:236px;height:236px;padding:8px;display:grid}.invite-link{flex-direction:column;flex:220px;gap:10px;min-width:0;display:flex}.invite-link input{font-family:ui-monospace,Consolas,monospace;font-size:12px}.invite-heading{margin:18px 0 6px;font-size:14px}.invite-list{border:1px solid var(--color-border);border-radius:var(--radius);max-height:220px;overflow-y:auto}.invite-row{border-bottom:1px solid var(--color-border);align-items:center;gap:8px;padding:8px 12px;display:flex}.invite-row:last-child{border-bottom:none}.invite-row.status-scaduto,.invite-row.status-revocato{opacity:.6}.invite-row-body{overflow-wrap:anywhere;flex:1;min-width:0}.invite-row .status-badge{margin-left:8px}.invite-attivo{color:#0a5a2a;background:#d9fdd3}.invite-usato{color:#0d47a1;background:#e3f2fd}.invite-scaduto,.invite-revocato{color:#b71c1c;background:#ffebee}a.btn{text-decoration:none}.menu-item{white-space:nowrap}.chat-search{background:var(--color-surface);border-bottom:1px solid var(--color-border);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:6px 14px;display:flex}.chat-search input{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);flex:1;min-width:140px;padding:7px 10px}.chat-search-count{min-width:80px;color:var(--color-text-secondary);text-align:center;font-size:12px}.chat-search-hint{flex-basis:100%;font-size:12px}.chat-search-toggle{margin-left:auto}.load-older{background:var(--color-surface);color:var(--color-accent);border:none;border-radius:14px;align-self:center;margin:4px 0 10px;padding:5px 14px;font-size:12px;box-shadow:0 1px 1px #0000001a}.load-older:disabled{opacity:.6;cursor:wait}.message mark{color:#1a1a1a;background:#ffe66d;border-radius:2px;padding:0 1px}.message.search-match .bubble{outline:2px solid #ffc1078c}.message.search-active .bubble{outline:3px solid var(--color-info);animation:1.2s ease-out flash}@keyframes flash{0%{box-shadow:0 0 0 8px #0288d159}to{box-shadow:0 1px 1px #00000021}}.message-pin{color:var(--color-info);font-size:14px}.message-menu .menu{min-width:190px}.message.sent .message-menu .menu,.message.received .message-menu{right:0}@media (hover:none){.message-menu .btn-icon{opacity:.6}}.pinned-item{border-bottom:1px solid var(--color-border);align-items:flex-start;gap:4px;padding:8px 12px 8px 0;display:flex}.pinned-open{text-align:left;background:0 0;border:none;flex-direction:column;flex:1;gap:2px;min-width:0;padding:2px 0 2px 16px;display:flex}.pinned-open:hover{background:var(--color-bg)}.pinned-head{justify-content:space-between;gap:8px;display:flex}.pinned-chat{color:var(--color-accent);font-weight:600}.pinned-chat .material-symbols-outlined{vertical-align:-3px;font-size:16px}.pinned-sender{color:var(--color-text-secondary);font-size:12px}.pinned-text{overflow-wrap:anywhere;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.profile-head{align-items:center;gap:16px;display:flex}.profile-head-body{flex-direction:column;align-items:flex-start;gap:4px;min-width:0;display:flex}.fieldset{border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column;gap:10px;margin:0;padding:12px;display:flex}.fieldset legend{padding:0 6px;font-weight:600}.permission-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;display:grid}.tabs{border-bottom:1px solid var(--color-border);scrollbar-width:none;gap:4px;margin-bottom:12px;display:flex;overflow-x:auto}.tab{white-space:nowrap;color:var(--color-text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;flex:none;padding:8px 16px}.tab.active{border-bottom-color:var(--color-accent);color:var(--color-text);font-weight:600}.admin-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.admin-row{border-bottom:1px solid var(--color-border);align-items:center;gap:12px;padding:8px 0;display:flex}.admin-row:last-child{border-bottom:0}.admin-row.is-disabled .admin-row-body{opacity:.6}.admin-row-body{flex:1;min-width:0}.admin-row-body .status-badge,.admin-row-body .badge{margin-left:6px}.color-dot{border-radius:50%;flex-shrink:0;width:28px;height:28px}.back-link{align-self:flex-start}.doc-list{margin:0;padding:0;list-style:none}.doc-count{margin:0;padding:8px 14px 0}.doc-row{border-bottom:1px solid var(--color-border);align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.doc-icon{border-radius:var(--radius);background:var(--color-primary);color:#fff;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.doc-body{flex:1;min-width:0}.doc-title{overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:4px 6px;display:flex}.doc-title .badge{margin-left:0}.doc-title .badge .material-symbols-outlined{vertical-align:-3px;font-size:14px}.doc-meta{font-size:13px}.doc-tags{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.doc-tags .badge{margin-left:0}.doc-actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;max-width:76px;display:flex}.doc-more{width:calc(100% - 28px);margin:12px 14px}.doc-pick{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.segmented{gap:6px;display:flex}.segment{border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:4px;padding:8px 6px;font-size:14px;display:flex;position:relative}.segment.active{border-color:var(--color-accent);background:var(--color-bg);color:var(--color-accent);font-weight:600}.segment input{opacity:0;pointer-events:none;position:absolute}.row-actions{flex-shrink:0;align-items:flex-start;display:flex}.swipe-wrap{padding:0;list-style:none;position:relative;overflow:hidden}.swipe-tray{display:flex;position:absolute;top:0;bottom:0;right:0}.swipe-action{color:#fff;width:76px;font:inherit;text-align:center;cursor:pointer;background:#546e7a;border:0;flex-direction:column;flex:0 0 76px;justify-content:center;align-items:center;gap:4px;padding:4px;font-size:12px;line-height:1.2;display:flex}.swipe-action .material-symbols-outlined{font-size:26px}.swipe-action.ok{background:#2e7d32}.swipe-action.danger{background:#d32f2f}.swipe-action:disabled{opacity:.5}.swipe-slide{touch-action:pan-y;transition:transform .2s;position:relative}:where(.swipe-slide){background-color:var(--color-surface)}.swipe-slide.dragging{transition:none}.swipe-slide.closed{opacity:1}.swipe-slide.closed>*{opacity:.55}.swipe-slide.overdue{background:linear-gradient(#f57c001a, #f57c001a), var(--color-surface)}@media (prefers-reduced-motion:reduce){.swipe-slide{transition:none}}@media (width<=760px){.modal.modal-full{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;box-shadow:none;border-radius:0;margin:0}.modal.modal-full[open]{flex-direction:column;display:flex}.modal-full .modal-content{flex-direction:column;flex:1;min-height:0;display:flex}.modal-full .modal-header{flex-shrink:0}.modal-full .modal-body{flex:1;min-height:0;max-height:none;padding-bottom:0;overflow-y:auto}.modal-full .modal-body>form{min-height:100%}.modal-full .modal-actions{padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--color-border);background:var(--color-surface);margin:auto -16px 0;position:sticky;bottom:0}.modal-full .modal-actions .btn{flex:1}}.avatar-button{cursor:pointer;background:0 0;border:0;border-radius:50%;flex-shrink:0;padding:0;display:grid}@media (width<=480px){.sidebar-user{display:none}.avatar-button{margin-right:auto}}:root{--color-navy:#001e5e;--color-navy-dark:#001442;--color-brand-blue:#0077f2}@media (prefers-color-scheme:dark){:root{--color-navy:#1d4fa3;--color-navy-dark:#163e82}}.modal-full .modal-header{background:var(--color-navy);border-bottom-color:var(--color-navy);color:#fff}.modal-full .modal-header .btn-icon{color:#fff}.modal-full .modal-header .btn-icon:hover{background:#ffffff26}.modal.modal-full{overflow:hidden}.modal-full .modal-header{border-radius:12px 12px 0 0}@media (width<=760px){.modal-full .modal-header{border-radius:0}}.swipe-wrap>.swipe-slide{border-bottom:1px solid var(--color-border)}.swipe-wrap:last-child>.swipe-slide{border-bottom:0}.brand{margin:0 auto;display:block}.brand img{width:min(100%,260px);height:auto;margin:0 auto;display:block}.brand-custom img{object-fit:contain;width:min(100%,300px);max-height:100px}@media (prefers-color-scheme:dark){.brand-custom{background:#fff;border-radius:10px;padding:6px 10px}}.logo-preview{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;flex-direction:column;align-items:center;gap:10px;padding:24px 16px;display:flex}.logo-frame{border:1px solid var(--color-border);background-color:#fff;background-image:linear-gradient(45deg,#e3e6ea 25%,#0000 25% 75%,#e3e6ea 75%),linear-gradient(45deg,#e3e6ea 25%,#0000 25% 75%,#e3e6ea 75%);background-position:0 0,8px 8px;background-size:16px 16px;border-radius:8px;overflow:hidden}.logo-frame canvas{aspect-ratio:3;cursor:grab;touch-action:none;width:100%;display:block}.logo-frame canvas:active{cursor:grabbing}.logo-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.logo-zoom{flex:160px;align-items:center;gap:8px;display:flex}.logo-zoom input{flex:1;min-width:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.conversation-section{background:var(--color-bg);color:var(--color-text-secondary);letter-spacing:.04em;text-transform:uppercase;padding:10px 16px 6px;font-size:12px;font-weight:600}.catalog-icon,.preset-icon{border-radius:var(--radius);background:var(--color-primary);color:#fff;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.catalog-status{overflow-wrap:anywhere;font-size:13px}.catalog-status.ok{color:var(--color-success)}.catalog-status.danger{color:var(--color-danger)}.catalog-status.muted{color:var(--color-text-secondary)}.catalog-active{align-self:flex-end;padding-bottom:10px}.preset-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;display:grid}.preset-card{border:2px solid var(--color-border);border-radius:var(--radius);cursor:pointer;align-items:center;gap:12px;padding:10px 12px;display:flex;position:relative}.preset-card.active{border-color:var(--color-accent);background:var(--color-bg)}.preset-card input{opacity:0;pointer-events:none;position:absolute}.preset-text{flex-direction:column;min-width:0;font-size:14px;display:flex}.preset-text .muted{font-size:12px}.advanced{padding:8px 0}.advanced summary{cursor:pointer;font-weight:600}.code-input{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:100%;color:var(--color-text);padding:8px 10px;font-family:ui-monospace,Consolas,monospace;font-size:12px}.token-note{align-items:center;gap:4px;margin:0;font-size:13px;display:flex}.sync-result{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);padding:12px}.sync-result p{margin:0 0 6px}.table-scroll{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table th,.data-table td{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top;padding:6px 8px}.error-list{color:var(--color-danger);margin:6px 0 0;padding-left:18px;font-size:13px}.sync-log{flex-direction:column;gap:6px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.sync-log li{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.sync-badge-ok{color:#0a5a2a;background:#d9fdd3}.sync-badge-prova{color:#0d47a1;background:#e3f2fd}.sync-badge-errore{color:#b71c1c;background:#ffebee}.example-feeds{border:1px dashed var(--color-border);border-radius:var(--radius);padding:10px}.catalog-tabs{gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.catalog-tab{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font:inherit;cursor:pointer;border-radius:16px;flex-shrink:0;align-items:center;gap:4px;padding:6px 12px;font-size:14px;display:inline-flex}.catalog-tab .material-symbols-outlined{font-size:18px}.catalog-tab.active{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.catalog-controls{align-items:center;gap:8px;display:flex}.catalog-controls select{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);min-width:0;color:var(--color-text);flex:1;padding:8px 10px}.catalog-controls .btn.active{border-color:var(--color-accent);color:var(--color-accent)}.state-chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);font:inherit;cursor:pointer;border-radius:14px;padding:4px 12px;font-size:13px}.chip.active{border-color:var(--color-accent);background:var(--color-accent);color:#fff}.catalog-filters{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);flex-direction:column;gap:10px;padding:10px;display:flex}.catalog-count{justify-content:space-between;align-items:center;margin:0;padding:8px 14px 0;display:flex}.link-button{color:var(--color-accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px}.product-list{margin:0;padding:0;list-style:none}.product-row{content-visibility:auto;contain-intrinsic-size:auto 104px}.product-open{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;gap:12px;padding:10px 14px;display:flex}.product-row.sold .product-open{opacity:.55;filter:grayscale(.7)}.product-image{border-radius:var(--radius);background:var(--color-bg);flex-shrink:0;width:88px;height:66px;display:block;overflow:hidden}.product-image img{object-fit:cover;width:100%;height:100%;display:block}.product-image.placeholder{color:var(--color-text-secondary);place-items:center;display:grid}.product-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.product-title{overflow-wrap:anywhere;font-weight:600}.product-subtitle{overflow-wrap:anywhere;font-size:13px}.product-chips{flex-wrap:wrap;gap:4px;display:flex}.product-chips .badge{margin-left:0}.product-footer{flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.product-price{color:var(--color-primary);font-weight:700}.product-price.big{font-size:22px}.product-price-2{color:var(--color-text-secondary);font-size:13px}.struck{text-decoration:line-through}.product-state-in_arrivo{color:#8a4b00;background:#fff4e5}.product-state-venduto{color:#455a64;background:#eceff1}.product-state-disponibile{color:#0a5a2a;background:#d9fdd3}.product-actions{flex-shrink:0;align-items:flex-start;padding:8px 8px 0 0;display:flex}.product-hero{aspect-ratio:16/10;width:100%;height:auto;max-height:320px}.product-thumbs{gap:6px;margin-top:6px;display:flex;overflow-x:auto}.product-thumb{border-radius:var(--radius);cursor:pointer;background:0 0;border:2px solid #0000;flex-shrink:0;padding:0}.product-thumb.active{border-color:var(--color-accent)}.product-thumb .product-image{width:64px;height:48px}.product-prices{flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin:4px 0;display:flex}.product-prices small{color:var(--color-text-secondary);text-transform:uppercase;font-size:11px;font-weight:400;display:block}.quantity-stepper{gap:6px;display:flex}.quantity-stepper input{text-align:center;width:100%;min-width:0}.product-attributes{grid-template-columns:max-content 1fr;gap:6px 14px;margin:0;display:grid}.product-attribute{display:contents}.product-attributes dt{color:var(--color-text-secondary)}.product-attributes dd{overflow-wrap:anywhere;margin:0}.console{background:var(--color-bg);height:100%;overflow-y:auto}.console-header{z-index:5;background:var(--color-navy);color:#fff;align-items:center;gap:12px;padding:10px 16px;display:flex;position:sticky;top:0}.console-header strong{flex:1}.console-main{flex-direction:column;gap:12px;max-width:920px;margin:0 auto;padding:16px;display:flex}.console-title{text-align:center;margin:0;font-size:20px}.console-message{text-align:center;padding:32px}.log-warning td{background:#fff4e5}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;display:grid}.form-grid .field-wide{grid-column:1/-1}@media (width<=600px){.form-grid{grid-template-columns:minmax(0,1fr)}}.catalog-admin-actions{flex-wrap:wrap;gap:8px;display:flex}.catalog-admin-actions .btn{flex:140px}.health-row{align-items:flex-start;gap:12px}.health-ok{color:#1b5e20;background:#e8f5e9}.health-avviso{color:#8a4b00;background:#fff3e0}.health-critico{color:#b71c1c;background:#ffebee}.product-card{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:min(280px,100%);color:var(--color-text);flex-direction:column;margin-bottom:4px;display:flex;overflow:hidden}.product-card.closed .product-card-photo img,.product-card.closed .product-card-photo .product-image{opacity:.55;filter:grayscale(.6)}.product-card-photo{position:relative}.product-card-photo .product-image{aspect-ratio:16/10;justify-content:center;align-items:center;width:100%;height:auto;display:flex}.product-card-photo img{object-fit:cover;width:100%;height:100%}.product-card-state{color:#fff;letter-spacing:.02em;text-transform:uppercase;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700;position:absolute;top:8px;left:8px}.product-card-state.venduto,.product-card-state.gone{background:var(--color-danger)}.product-card-state.in_arrivo{background:var(--color-warning)}.product-card-body{flex-direction:column;gap:4px;padding:8px 10px;display:flex}.product-card-title{font-weight:700}.product-card-subtitle,.product-card-meta{color:var(--color-text-secondary);font-size:12px}.product-card-chips{flex-wrap:wrap;gap:4px;display:flex}.product-card-prices{flex-wrap:wrap;align-items:baseline;gap:2px 10px;display:flex}.product-card-price{color:var(--color-primary);font-size:17px;font-weight:700}.product-card-price-2.struck{color:var(--color-text-secondary);text-decoration:line-through}.install-hint{background:var(--color-bubble-out);border-bottom:1px solid var(--color-border);color:var(--color-text);align-items:center;gap:10px;padding:10px 12px;display:flex}.install-hint p{flex:1;margin:0;font-size:13px;line-height:1.35}.pinned-count{border-bottom:1px solid var(--color-border);margin:0;padding:8px 14px;font-size:12px}.doc-open{text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:flex-start;gap:12px;min-width:0;padding:0;display:flex}.doc-viewer{flex-direction:column;gap:12px;min-height:0;display:flex}.doc-preview{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);place-items:center;min-height:200px;max-height:60vh;display:grid;overflow:auto}.doc-preview img{object-fit:contain;max-width:100%;max-height:60vh}.doc-preview iframe{border:0;width:100%;height:60vh}.doc-preview pre{white-space:pre-wrap;word-break:break-word;align-self:start;width:100%;margin:0;padding:12px;font-size:13px}.doc-viewer-actions{flex-wrap:wrap}.template-steps{border:1px solid var(--color-border);border-radius:var(--radius);margin:0;padding:12px}.template-steps legend{padding:0 6px;font-weight:600}.template-step{align-items:flex-start;gap:8px;display:flex}.template-step>.grow{flex:1 1 0;min-width:0}.template-step-number{background:var(--color-primary);color:#fff;text-align:center;border-radius:50%;flex-shrink:0;width:24px;height:24px;margin-top:6px;font-size:12px;line-height:24px}.template-step-actions{flex-shrink:0;display:flex}.template-step input{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:100%;padding:9px 12px}.template-step input:focus{outline:2px solid var(--color-accent);outline-offset:-1px}
