:root{color:#0f172a;background:#f8fafc;font-family:Arial,sans-serif}*{box-sizing:border-box}body{margin:0}button{color:#fff;cursor:pointer;background:#1769d2;border:0;border-radius:10px;padding:11px 15px;font-weight:700}button.secondary{color:#1e293b;background:#e2e8f0}.danger{color:#b91c1c;background:#fee2e2}.success{background:#059669}.large{padding:18px 25px;font-size:18px}header{color:#fff;background:#112b55;align-items:center;gap:14px;padding:16px 22px;display:flex}header img{object-fit:contain;background:#fff;border-radius:8px;width:170px;height:70px;padding:5px}header span{font-weight:800}.home,.form{max-width:1100px;margin:auto;padding:24px 16px 100px}.home h1{margin-bottom:5px;font-size:34px}.cards{gap:12px;display:grid}.card{color:#0f172a;text-align:left;background:#fff;border:1px solid #cbd5e1;flex-direction:column;gap:5px;display:flex}.empty{color:#64748b;background:#fff;border:1px dashed #cbd5e1;border-radius:14px;padding:30px}.topbar,.toolbar{z-index:5;background:#fff;border-bottom:1px solid #cbd5e1;align-items:center;gap:15px;padding:12px 16px;display:flex;position:sticky;top:0}.toolbar{justify-content:flex-end}.form section{background:#fff;border:1px solid #e2e8f0;border-radius:16px;margin-bottom:14px;padding:18px}.form h2{color:#112b55;margin-top:0}label{color:#475569;flex-direction:column;gap:6px;font-size:12px;font-weight:700;display:flex}input,select,textarea{width:100%;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:10px}.grid2,.grid4{gap:12px;display:grid}.grid2{grid-template-columns:repeat(2,1fr)}.grid4{grid-template-columns:repeat(4,1fr)}.row{gap:8px;margin-bottom:8px;display:flex}.chips{flex-wrap:wrap;gap:8px;display:flex}.chips button{color:#334155;background:#e2e8f0;border-radius:999px}.chips button.active{color:#fff;background:#1769d2}.day{background:#f8fafc;border:1px solid #cbd5e1;border-radius:14px;margin-bottom:12px;padding:14px}.day-title{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.material{margin:10px 0}.upload{color:#1d4ed8;text-align:center;cursor:pointer;background:#eff6ff;border:2px dashed #93c5fd;border-radius:12px;padding:25px}.photo-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px;display:grid}.photo-grid img{object-fit:cover;border-radius:10px;width:100%;height:160px}.photo{position:relative}.photo button{position:absolute;top:5px;right:5px}canvas{touch-action:none;background:#fff;border:2px dashed #cbd5e1;border-radius:12px;width:100%;height:150px}.buttons{margin-top:8px}.ok{color:#047857;font-weight:700}.bottom{background:#fff;border-top:1px solid #cbd5e1;justify-content:center;gap:10px;padding:12px;display:flex;position:fixed;bottom:0;left:0;right:0}.preview-wrap{padding-bottom:30px}#report{background:#fff;max-width:1050px;margin:20px auto;padding:35px;box-shadow:0 3px 20px #0002}.report-head{border-bottom:4px solid #112b55;justify-content:space-between;gap:20px;padding-bottom:14px;display:flex}.report-head img{object-fit:contain;object-position:left;background:#fff;width:220px;height:85px}.meta{text-align:right;flex-direction:column;gap:4px;display:flex}#report h2{color:#112b55;margin:22px 0 8px;font-size:17px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{color:#fff;background:#112b55}th,td{text-align:left;vertical-align:top;border:1px solid #cbd5e1;padding:8px}.summary{background:#eff6ff;border-radius:12px;padding:14px}.summary-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.summary-grid div{flex-direction:column;gap:4px;display:flex}.summary-grid span{color:#2563eb;text-transform:uppercase;font-size:10px}.text-box{white-space:pre-wrap;border:1px solid #cbd5e1;border-radius:10px;min-height:80px;padding:14px}.signature img{object-fit:contain;object-position:left;max-width:100%;height:100px}.signature-empty{color:#64748b;border:2px dashed #cbd5e1;height:80px;padding:12px}.company-data{text-align:right;flex-direction:column;justify-content:center;align-items:flex-end;gap:4px;font-size:13px;line-height:1.35;display:flex}.company-data b{color:#112b55;margin-bottom:2px;font-size:16px;font-weight:800}.customer-data{background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;grid-template-columns:repeat(4,1fr);gap:0;margin-top:14px;margin-bottom:18px;display:grid;overflow:hidden}.customer-data>div{border-right:1px solid #cbd5e1;flex-direction:column;gap:4px;padding:11px 14px;display:flex}.customer-data>div:last-child{border-right:0}.customer-data span{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:700}.customer-data b{color:#0f172a;font-size:12px;line-height:1.3}.report-head{border-bottom:4px solid #112b55;justify-content:space-between;align-items:center;gap:30px;padding-bottom:14px;display:flex}.report-head>div:first-child{flex-direction:column;align-items:flex-start;display:flex}.report-head img{object-fit:contain;object-position:left center;width:220px;height:85px}.report-head h1{color:#112b55;margin:5px 0 0}.archive-tools{align-items:center;gap:12px;margin:15px 0;display:flex}.archive-tools input{flex:1;min-width:260px}.archive-filters{gap:6px;display:flex}.archive-filters button{color:#334155;background:#e2e8f0;padding:9px 14px}.archive-filters button.active{color:#fff;background:#1769d2}.archive-table{background:#fff;border:1px solid #cbd5e1;border-radius:12px;overflow:hidden}.archive-header,.archive-row{grid-template-columns:minmax(95px,.8fr) minmax(150px,1.5fr) minmax(130px,1.2fr) minmax(130px,1.2fr) minmax(170px,1.6fr) minmax(90px,.7fr);align-items:center;gap:12px;display:grid}.archive-header{color:#fff;text-transform:uppercase;background:#112b55;padding:11px 14px;font-size:11px;font-weight:800}.archive-row{color:#0f172a;text-align:left;background:#fff;border-bottom:1px solid #e2e8f0;border-radius:0;width:100%;padding:13px 14px}.archive-row:last-child{border-bottom:0}.archive-row:hover{background:#f8fafc}.archive-row span{overflow-wrap:anywhere;min-width:0}.archive-row .status{text-transform:uppercase;border-radius:999px;width:fit-content;padding:5px 9px;font-size:11px;font-weight:800;display:inline-block}.archive-row .status.chiuso{color:#166534;background:#dcfce7}.archive-row .status.bozza{color:#92400e;background:#fef3c7}@media (width<=760px){.grid2,.grid4,.summary-grid{grid-template-columns:1fr}.photo-grid{grid-template-columns:repeat(2,1fr)}#report{margin:0;padding:16px}.report-head{flex-direction:column}.meta{text-align:left}.customer-data{grid-template-columns:1fr 1fr}.customer-data>div{border-bottom:1px solid #cbd5e1}.company-data{text-align:left;align-items:flex-start}.archive-actions{border-top:1px solid #e2e8f0;grid-column:1/-1;justify-content:flex-end;margin-top:2px;padding-top:10px}.archive-actions button{flex:1;min-height:40px}}@media print{@page{size:A4 portrait;margin:10mm}html,body{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#fff!important;margin:0!important;padding:0!important}.no-print,.topbar,.bottom,.toolbar{display:none!important}.preview-wrap{background:#fff!important;margin:0!important;padding:0!important}#report{width:100%!important;max-width:none!important;box-shadow:none!important;color:#0f172a!important;background:#fff!important;margin:0!important;padding:0!important}.report-head{border-bottom:4px solid #112b55!important;justify-content:space-between!important;gap:20px!important;padding-bottom:14px!important;display:flex!important}.report-head img{object-fit:contain!important;object-position:left!important;width:220px!important;height:85px!important}.report-head h1{color:#112b55!important}.meta{text-align:right!important;flex-direction:column!important;display:flex!important}#report h2{color:#112b55!important}table{border-collapse:collapse!important;width:100%!important;font-size:10px!important}th{color:#fff!important;background:#112b55!important}th,td{text-align:left!important;vertical-align:top!important;border:1px solid #cbd5e1!important;padding:6px!important}.summary{background:#eff6ff!important;border-radius:12px!important;padding:14px!important}.summary-grid{grid-template-columns:repeat(4,1fr)!important;gap:10px!important;display:grid!important}.photo-grid{grid-template-columns:repeat(3,1fr)!important;gap:10px!important;display:grid!important}.photo-grid img{object-fit:cover!important;width:100%!important;height:120px!important}.text-box{white-space:pre-wrap!important;border:1px solid #cbd5e1!important;border-radius:10px!important;padding:14px!important}.signature img{object-fit:contain!important;object-position:left!important;max-width:100%!important;height:100px!important}section{break-inside:avoid;page-break-inside:avoid}.archive-tools{flex-direction:column;align-items:stretch}.archive-tools input{min-width:0}.archive-filters{width:100%}.archive-filters button{flex:1}.archive-header{display:none}.archive-table{background:0 0;border:0;overflow:visible}.archive-row{border:1px solid #cbd5e1;border-radius:12px;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px;padding:14px;display:grid;box-shadow:0 1px 3px #00000010}.archive-row span{flex-direction:column;gap:3px;display:flex}.archive-row span:before{content:attr(data-label);color:#64748b;text-transform:uppercase;font-size:9px;font-weight:800}.archive-row .status{display:flex}}.close-overlay{z-index:1000;background:#0f172aa6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.close-dialog{background:#fff;border-radius:16px;width:100%;max-width:460px;padding:24px;box-shadow:0 20px 60px #0f172a59}.close-dialog h2{color:#112b55;margin:0 0 8px}.close-dialog p{color:#64748b;margin:0 0 18px;line-height:1.45}.close-dialog select{min-height:46px;margin-top:5px;font-size:15px}.close-actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.close-actions button{min-width:140px}.close-actions button:disabled{cursor:not-allowed;opacity:.45}@media (width<=760px){.close-overlay{align-items:flex-end;padding:0}.close-dialog{border-radius:18px 18px 0 0;max-width:none;padding:22px 18px}.close-actions{grid-template-columns:1fr 1fr;display:grid}.close-actions button{min-width:0}}.topbar-title{flex:1;justify-content:space-between;align-items:center;gap:18px;display:flex}.autosave-status{color:#047857;white-space:nowrap;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:700}@media (width<=760px){.topbar-title{flex-direction:column;align-items:flex-start;gap:4px}.autosave-status{padding:3px 7px;font-size:9px}}.archive-header,.archive-row{grid-template-columns:minmax(95px,.8fr) minmax(150px,1.5fr) minmax(130px,1.2fr) minmax(130px,1.2fr) minmax(170px,1.6fr) minmax(110px,.8fr) minmax(145px,.9fr)}.archive-actions{align-items:center;gap:6px;flex-direction:row!important;display:flex!important}.archive-actions:before{display:none!important}.archive-actions button{white-space:nowrap;padding:7px 10px;font-size:11px}.archive-open{color:#334155;background:#e2e8f0}.archive-delete{color:#b91c1c;background:#fee2e2}.machine-history{max-width:1100px}.machine-history>.secondary{margin-bottom:18px}.machine-history-head{background:#fff;border:1px solid #cbd5e1;border-radius:14px;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:22px;padding:20px;display:flex}.machine-history-head small{color:#64748b;letter-spacing:.08em;font-size:11px;font-weight:800}.machine-history-head h1{color:#112b55;margin:5px 0 0;font-size:28px}.machine-info{grid-template-columns:repeat(3,minmax(130px,1fr));gap:12px;display:grid}.machine-info>div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:4px;min-width:130px;padding:11px 14px;display:flex}.machine-info span{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:9px;font-weight:800}.machine-info b{color:#0f172a;font-size:13px}.machine-history-list{background:#fff;border:1px solid #cbd5e1;border-radius:12px;overflow:hidden}.machine-history-header,.machine-history-row{grid-template-columns:minmax(105px,.8fr) minmax(170px,1.5fr) minmax(220px,1.8fr) minmax(150px,1fr) minmax(150px,.8fr);align-items:center;gap:12px;display:grid}.machine-history-header{color:#fff;text-transform:uppercase;background:#112b55;padding:11px 14px;font-size:10px;font-weight:800}.machine-history-row{border-bottom:1px solid #e2e8f0;padding:14px;font-size:12px}.machine-history-row:last-child{border-bottom:0}.machine-history-row:hover{background:#f8fafc}.machine-history-row span{overflow-wrap:anywhere;min-width:0}.machine-history-row button{width:100%;padding:8px 10px;font-size:11px}.machine-history-row .status{text-transform:uppercase;border-radius:999px;width:fit-content;padding:6px 9px;font-size:10px;font-weight:800;display:inline-flex}.machine-history-row .status.aperto{color:#92400e;background:#fef3c7}.machine-history-row .status.da_fatturare{color:#166534;background:#dcfce7}.machine-history-row .status.garanzia{color:#1e40af;background:#dbeafe}.machine-history-row .status.montaggio_collaudo{color:#6d28d9;background:#ede9fe}@media (width<=760px){.machine-history{padding-top:15px}.machine-history-head{flex-direction:column;align-items:stretch;gap:16px;padding:16px}.machine-history-head h1{overflow-wrap:anywhere;font-size:22px}.machine-info{grid-template-columns:1fr}.machine-info>div{min-width:0}.machine-history-list{background:0 0;border:0;overflow:visible}.machine-history-header{display:none}.machine-history-row{background:#fff;border:1px solid #cbd5e1;border-radius:12px;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;padding:14px;display:grid;box-shadow:0 1px 3px #00000010}.machine-history-row span{flex-direction:column;gap:3px;display:flex}.machine-history-row span:before{content:attr(data-label);color:#64748b;text-transform:uppercase;font-size:9px;font-weight:800}.machine-history-row .status:before{display:none}.machine-history-row span:last-child{grid-column:1/-1}.machine-history-row button{min-height:42px;margin-top:3px}}.closed-badge{color:#334155;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:999px;align-items:center;padding:8px 12px;font-size:11px;font-weight:800;display:inline-flex}.unlock-button{color:#fff;background:#7c3aed}.unlock-button:hover{background:#6d28d9}@media (width<=760px){.toolbar{flex-wrap:wrap}.closed-badge{justify-content:center;width:100%}.toolbar button{flex:1}}.machine-year-summary{margin:22px 0}.machine-year-summary h2{color:#112b55;margin:0 0 10px;font-size:18px}.year-table{background:#fff;border:1px solid #cbd5e1;border-radius:12px;overflow:hidden}.year-header,.year-row{grid-template-columns:minmax(65px,.6fr) minmax(75px,.7fr) minmax(95px,.9fr) minmax(85px,.8fr) minmax(115px,1fr) minmax(70px,.7fr) minmax(110px,1fr) minmax(110px,1fr) minmax(90px,.8fr);align-items:center;gap:8px;display:grid}.year-header{color:#fff;text-transform:uppercase;background:#112b55;padding:11px 14px;font-size:10px;font-weight:800}.year-row{color:#0f172a;border-bottom:1px solid #e2e8f0;padding:13px 14px}.year-row:last-child{border-bottom:0}.year-row:hover{background:#f8fafc}.year-row span{min-width:0}.year-row span:first-child b{color:#112b55;font-size:15px}@media (width<=760px){.machine-year-summary{margin:18px 0}.year-table{background:0 0;border:0;overflow:visible}.year-header{display:none}.year-row{background:#fff;border:1px solid #cbd5e1;border-radius:12px;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:10px;padding:14px;display:grid;box-shadow:0 1px 3px #00000010}.year-row span{flex-direction:column;gap:3px;display:flex}.year-row span:before{content:attr(data-label);color:#64748b;text-transform:uppercase;font-size:9px;font-weight:800}.year-row span:first-child{grid-column:1/-1}.year-row span:first-child b{font-size:20px}}.service-dashboard{background:#fff;border:1px solid #cbd5e1;border-radius:16px;margin:26px 0;padding:20px}.dashboard-title{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.dashboard-title small{color:#64748b;letter-spacing:.08em;font-size:10px;font-weight:800}.dashboard-title h2{color:#112b55;margin:3px 0 0}.dashboard-title>b{color:#1d4ed8;background:#eff6ff;border-radius:999px;padding:7px 12px}.dashboard-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.dashboard-card{color:#0f172a;text-align:left;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;justify-content:space-between;align-items:flex-start;min-height:105px;padding:16px;display:flex}button.dashboard-card{cursor:pointer}button.dashboard-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000012}.dashboard-card span{color:#64748b;font-size:11px;font-weight:700}.dashboard-card strong{color:#112b55;margin-top:12px;font-size:25px}.dashboard-open{border-top:4px solid #f59e0b}.dashboard-billing{border-top:4px solid #16a34a}.dashboard-warranty{border-top:4px solid #2563eb}.dashboard-install{border-top:4px solid #7c3aed}.dashboard-hours,.dashboard-travel,.dashboard-km{border-top:4px solid #112b55}@media (width<=760px){.service-dashboard{margin:20px 0;padding:14px}.dashboard-grid{grid-template-columns:1fr 1fr;gap:9px}.dashboard-card{min-height:92px;padding:12px}.dashboard-card strong{font-size:20px}.dashboard-title{align-items:flex-end}}@media (width<=420px){.dashboard-grid{grid-template-columns:1fr}.dashboard-card{min-height:80px}}.dashboard-year{color:#64748b;flex-direction:row;align-items:center;gap:8px;font-size:11px;font-weight:800;display:flex}.dashboard-year select{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;width:auto;min-width:90px;padding:7px 30px 7px 10px;font-size:13px;font-weight:800}.dashboard-selectors{justify-content:flex-end;align-items:center;gap:12px;display:flex}.dashboard-technician,.dashboard-year{color:#64748b;flex-direction:row;align-items:center;gap:7px;font-size:11px;font-weight:800;display:flex}.dashboard-technician select,.dashboard-year select{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;width:auto;min-width:110px;padding:7px 10px;font-size:12px;font-weight:700}.dashboard-technician select{min-width:190px}@media (width<=760px){.dashboard-title{flex-direction:column;align-items:stretch;gap:12px}.dashboard-selectors{flex-wrap:wrap;justify-content:flex-start}.dashboard-technician,.dashboard-year{flex-direction:column;flex:1;align-items:stretch}.dashboard-technician select,.dashboard-year select{width:100%;min-width:0}}.dashboard-customer{color:#64748b;flex-direction:row;align-items:center;gap:7px;font-size:11px;font-weight:800;display:flex}.dashboard-customer select{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;width:auto;min-width:190px;padding:7px 10px;font-size:12px;font-weight:700}@media (width<=760px){.dashboard-customer{flex-direction:column;flex:1;align-items:stretch}.dashboard-customer select{width:100%;min-width:0}}.dashboard-serial{color:#64748b;flex-direction:row;align-items:center;gap:7px;font-size:11px;font-weight:800;display:flex}.dashboard-serial select{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;width:auto;min-width:180px;padding:7px 10px;font-size:12px;font-weight:700}@media (width<=760px){.dashboard-serial{flex-direction:column;flex:1;align-items:stretch}.dashboard-serial select{width:100%;min-width:0}}.dashboard-reset{color:#334155;white-space:nowrap;background:#e2e8f0;border:1px solid #cbd5e1;padding:7px 11px}.dashboard-reset:hover{background:#cbd5e1}@media (width<=760px){.dashboard-reset{width:100%}}.dashboard-total{background:#f1f5f9;border-top:4px solid #112b55}.dashboard-total strong{color:#112b55}.report-followups{break-inside:avoid}.report-followup-list{gap:9px;display:grid}.report-followup{background:#f8fafc;border:1px solid #e2e8f0;border-left:4px solid #f59e0b;border-radius:9px;padding:11px 13px}.report-followup.priority-alta{border-left-color:#dc2626}.report-followup.priority-media{border-left-color:#f59e0b}.report-followup.priority-bassa{border-left-color:#16a34a}.report-followup-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.report-followup-head>b{color:#475569;font-size:10px}.report-followup-head>span{font-size:11px;font-weight:700}.report-followup p{white-space:pre-wrap;margin:8px 0 4px}.report-followup small{color:#64748b}.followup-status{border-radius:999px;margin-left:auto;padding:4px 8px;font-size:9px!important}.followup-status.aperta{color:#92400e;background:#fef3c7}.followup-status.completata{color:#166534;background:#dcfce7}@media print{.report-followup{break-inside:avoid}.report-followup.priority-alta{border-left:4px solid #dc2626!important}.report-followup.priority-media{border-left:4px solid #f59e0b!important}.report-followup.priority-bassa{border-left:4px solid #16a34a!important}}.machine-followups{margin:22px 0}.machine-followups-title{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.machine-followups-title small{color:#64748b;letter-spacing:.08em;font-size:10px;font-weight:800}.machine-followups-title h2{color:#112b55;margin:3px 0 0}.machine-followups-title>strong{color:#92400e;background:#fef3c7;border:1px solid #fde68a;border-radius:999px;justify-content:center;align-items:center;min-width:42px;height:42px;padding:0 10px;font-size:18px;display:flex}.machine-followups-empty{color:#64748b;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;padding:20px}.machine-followups-list{gap:10px;display:grid}.machine-followup{background:#fff;border:1px solid #e2e8f0;border-left:5px solid #f59e0b;border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:8px 16px;padding:14px 16px;display:grid}.machine-followup.priority-alta{border-left-color:#dc2626}.machine-followup.priority-media{border-left-color:#f59e0b}.machine-followup.priority-bassa{border-left-color:#16a34a}.machine-followup-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.machine-followup p{color:#334155;white-space:pre-wrap;grid-column:1;margin:3px 0}.machine-followup-meta{color:#64748b;flex-wrap:wrap;grid-column:1;gap:12px;font-size:10px;display:flex}.machine-followup>button{grid-area:1/2/4;min-width:135px}.priority-badge{text-transform:uppercase;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:800}.priority-badge.alta{color:#b91c1c;background:#fee2e2}.priority-badge.media{color:#92400e;background:#fef3c7}.priority-badge.bassa{color:#166534;background:#dcfce7}@media (width<=760px){.machine-followup{padding:14px;display:block}.machine-followup p{margin:10px 0}.machine-followup-meta{flex-direction:column;gap:4px;margin-bottom:12px;display:flex}.machine-followup>button{width:100%;min-height:42px}}.dashboard-followups{background:#fff7ed;border-top:4px solid #dc2626}.dashboard-followups span{color:#9a3412}.dashboard-followups strong{color:#b91c1c}.dashboard-followup-high{background:#fef2f2;border-top:4px solid #dc2626}.dashboard-followup-high span,.dashboard-followup-high strong{color:#b91c1c}.dashboard-followup-overdue{background:#fff1f2;border-top:4px solid #991b1b}.dashboard-followup-overdue span{color:#991b1b}.dashboard-followup-overdue strong{color:#7f1d1d}.dashboard-followup-week{background:#fffbeb;border-top:4px solid #f59e0b}.dashboard-followup-week span{color:#92400e}.dashboard-followup-week strong{color:#b45309}.followups-operational-list{gap:16px;margin-top:18px;display:grid}.followup-operational-card{background:#fff;border:1px solid #e2e8f0;border-left:5px solid #f59e0b;border-radius:14px;padding:18px;box-shadow:0 2px 8px #0f172a0f}.followup-operational-card.priority-alta{border-left-color:#dc2626}.followup-operational-card.priority-media{border-left-color:#f59e0b}.followup-operational-card.priority-bassa{border-left-color:#16a34a}.followup-operational-title{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.followup-operational-card h3{color:#112b55;margin:5px 0 10px;font-size:19px}.followup-description{color:#334155;white-space:pre-wrap;margin:0 0 16px;line-height:1.5}.followup-operational-data{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;grid-template-columns:repeat(5,1fr);gap:0;margin:15px 0;display:grid;overflow:hidden}.followup-operational-data>div{border-right:1px solid #e2e8f0;flex-direction:column;gap:4px;padding:11px 12px;display:flex}.followup-operational-data>div:last-child{border-right:0}.followup-operational-data span{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:9px;font-weight:800}.followup-operational-data b{color:#0f172a;overflow-wrap:anywhere;font-size:12px}.followup-overdue{color:#b91c1c;text-transform:uppercase;background:#fee2e2;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:900}.followup-complete{color:#fff;background:#059669;margin-left:8px}@media (width<=760px){.followup-operational-card{padding:14px}.followup-operational-data{grid-template-columns:1fr 1fr}.followup-operational-data>div{border-bottom:1px solid #e2e8f0;border-right:0}.followup-operational-data>div:last-child{border-bottom:0;grid-column:1/-1}.followup-operational-card>button{width:100%;min-height:43px;margin:5px 0 0}.followup-complete{margin-left:0}}.day-technicians{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;margin-bottom:14px;padding:13px}.day-technicians-label{color:#1e40af;text-transform:uppercase;margin-bottom:9px;font-size:11px;font-weight:800;display:block}.day-technicians-grid{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.day-technician{cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;flex-direction:row;align-items:center;gap:8px;padding:8px 10px;display:flex}.day-technician input{width:auto;margin:0}.day-technician span{color:#334155;font-size:12px;font-weight:600}.day-technician.selected{background:#dbeafe;border-color:#3b82f6}.day-technician.selected span{color:#1e40af}@media (width<=760px){.day-technicians-grid{grid-template-columns:1fr 1fr}}@media (width<=420px){.day-technicians-grid{grid-template-columns:1fr}}.dashboard-ordinary{background:#f0f9ff;border-top:4px solid #0284c7}.dashboard-ordinary span{color:#0369a1}.dashboard-ordinary strong{color:#075985}.dashboard-overtime{background:#fff7ed;border-top:4px solid #ea580c}.dashboard-overtime span{color:#c2410c}.dashboard-overtime strong{color:#9a3412}.dashboard-actions{justify-content:flex-end;margin:0 0 14px;display:flex}.statistics-button{color:#fff;background:#112b55;padding:10px 16px}.statistics-button:hover{background:#1e4074}@media (width<=760px){.statistics-button{width:100%}}.statistics-page{max-width:1200px}.statistics-head{margin:20px 0}.statistics-head small{color:#64748b;letter-spacing:.08em;font-size:10px;font-weight:800}.statistics-head h1{color:#112b55;margin:4px 0}.statistics-head p{color:#64748b;margin:0}.statistics-filters{background:#fff;border:1px solid #cbd5e1;border-radius:14px;grid-template-columns:120px minmax(200px,1fr) minmax(190px,1fr) auto;align-items:end;gap:12px;margin-bottom:20px;padding:16px;display:grid}.statistics-reset{min-height:40px}.statistics-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px;display:grid}.statistics-card{background:#fff;border:1px solid #e2e8f0;border-top:4px solid #112b55;border-radius:12px;flex-direction:column;justify-content:space-between;min-height:105px;padding:16px;display:flex}.statistics-card span{color:#64748b;font-size:11px;font-weight:700}.statistics-card strong{color:#112b55;margin-top:12px;font-size:24px}.statistics-card.ordinary{background:#f0f9ff;border-top-color:#0284c7}.statistics-card.ordinary strong{color:#075985}.statistics-card.overtime{background:#fff7ed;border-top-color:#ea580c}.statistics-card.overtime strong{color:#9a3412}.statistics-year-section{margin:25px 0}.statistics-year-section h2{color:#112b55;margin-bottom:10px}.statistics-year-table{background:#fff;border:1px solid #cbd5e1;border-radius:12px;overflow:hidden}.statistics-year-header,.statistics-year-row{grid-template-columns:minmax(70px,.6fr) minmax(90px,.7fr) minmax(130px,1fr) minmax(140px,1fr) minmax(125px,1fr) minmax(125px,1fr) minmax(110px,.8fr);align-items:center;gap:10px;display:grid}.statistics-year-header{color:#fff;text-transform:uppercase;background:#112b55;padding:11px 14px;font-size:10px;font-weight:800}.statistics-year-row{border-bottom:1px solid #e2e8f0;padding:13px 14px;font-size:12px}.statistics-year-row:last-child{border-bottom:0}.statistics-year-row:hover{background:#f8fafc}.statistics-year-row span{min-width:0}.statistics-year-row span:first-child b{color:#112b55;font-size:15px}.statistics-check{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;justify-content:space-between;align-items:center;gap:20px;padding:14px 16px;display:flex}.statistics-check span{text-transform:uppercase;font-size:11px;font-weight:800}@media (width<=760px){.statistics-filters{grid-template-columns:1fr}.statistics-grid{grid-template-columns:1fr 1fr}.statistics-year-table{background:0 0;border:0;overflow:visible}.statistics-year-header{display:none}.statistics-year-row{background:#fff;border:1px solid #cbd5e1;border-radius:12px;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;padding:14px;display:grid;box-shadow:0 1px 3px #0000000f}.statistics-year-row span{flex-direction:column;gap:3px;display:flex}.statistics-year-row span:before{content:attr(data-label);color:#64748b;text-transform:uppercase;font-size:9px;font-weight:800}.statistics-year-row span:first-child{grid-column:1/-1}.statistics-year-row span:first-child b{font-size:20px}.statistics-check{flex-direction:column;align-items:flex-start}}@media (width<=420px){.statistics-grid{grid-template-columns:1fr}}.statistics-chart-section{background:#fff;border:1px solid #cbd5e1;border-radius:14px;margin:26px 0;padding:20px}.statistics-chart-title{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:20px;display:flex}.statistics-chart-title small{color:#64748b;letter-spacing:.08em;font-size:10px;font-weight:800}.statistics-chart-title h2{color:#112b55;margin:4px 0 0}.statistics-chart-legend{gap:14px;font-size:11px;font-weight:700;display:flex}.statistics-chart-legend span{align-items:center;gap:6px;display:flex}.legend-ordinary:before,.legend-overtime:before{content:"";border-radius:3px;width:12px;height:12px}.legend-ordinary:before{background:#0284c7}.legend-overtime:before{background:#ea580c}.statistics-chart{gap:18px;display:grid}.statistics-chart-year{border-bottom:1px solid #e2e8f0;grid-template-columns:70px 1fr;gap:15px;padding-bottom:17px;display:grid}.statistics-chart-year:last-child{border-bottom:0;padding-bottom:0}.statistics-chart-year-label{align-items:center;display:flex}.statistics-chart-year-label strong{color:#112b55;font-size:17px}.statistics-chart-bars{gap:9px;display:grid}.statistics-chart-line{grid-template-columns:95px minmax(120px,1fr) 105px;align-items:center;gap:10px;display:grid}.statistics-chart-line>span{color:#64748b;font-size:10px;font-weight:700}.statistics-chart-line>b{color:#334155;white-space:nowrap;text-align:right;font-size:11px}.statistics-chart-track{background:#f1f5f9;border-radius:999px;height:18px;position:relative;overflow:hidden}.statistics-chart-bar{border-radius:999px;min-width:2px;height:100%;transition:width .25s}.statistics-chart-bar.ordinary{background:#0284c7}.statistics-chart-bar.overtime{background:#ea580c}@media (width<=760px){.statistics-chart-section{padding:15px}.statistics-chart-title{flex-direction:column;align-items:flex-start}.statistics-chart-year{grid-template-columns:1fr;gap:8px}.statistics-chart-year-label strong{font-size:19px}.statistics-chart-line{grid-template-columns:80px 1fr;gap:7px}.statistics-chart-line>b{text-align:left;color:#475569;grid-column:2;font-size:10px}.statistics-chart-track{height:16px}}.legend-work:before,.legend-travel:before{content:"";border-radius:3px;width:12px;height:12px}.legend-work:before{background:#16a34a}.legend-travel:before{background:#7c3aed}.statistics-chart-bar.work{background:#16a34a}.statistics-chart-bar.travel{background:#7c3aed}.legend-km:before{content:"";background:#475569;border-radius:3px;width:12px;height:12px}.statistics-chart-bar.km{background:#475569}.auth-loading,.login-page{background:#f1f5f9;justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.auth-loading{color:#112b55;font-weight:700}.login-card{background:#fff;border:1px solid #cbd5e1;border-radius:18px;width:100%;max-width:420px;padding:32px;box-shadow:0 15px 40px #0f172a1f}.login-logo{width:210px;max-width:80%;height:auto;margin:0 auto 20px;display:block}.login-card h1{color:#112b55;text-align:center;margin:0 0 6px;font-size:24px}.login-card>p{color:#64748b;text-align:center;margin:0 0 24px}.login-card form{gap:15px;display:grid}.login-card label{color:#334155;flex-direction:column;gap:5px;font-size:12px;font-weight:700;display:flex}.login-card input{min-height:44px}.login-button{width:100%;min-height:46px;margin-top:5px}.login-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:10px 12px;font-size:12px}@media (width<=480px){.login-page{padding:12px}.login-card{padding:24px 18px}}.home-main-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.calendar-button{color:#fff;background:#0f766e}.calendar-button:hover{background:#115e59}@media (width<=760px){.home-main-actions{grid-template-columns:1fr;display:grid}.home-main-actions button{width:100%}}.schedule-overlay{z-index:1200;background:#0f172ab3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0;overflow-y:auto}.schedule-dialog{background:#fff;border-radius:16px;width:100%;max-width:900px;max-height:calc(100vh - 40px);padding:24px;overflow-y:auto;box-shadow:0 20px 60px #0f172a59}.schedule-dialog-head{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.schedule-dialog-head small{color:#64748b;letter-spacing:.08em;font-size:10px;font-weight:800}.schedule-dialog-head h2{color:#112b55;margin:4px 0 0}.schedule-technicians{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;margin:18px 0;padding:14px}.schedule-technicians>span{color:#1e40af;text-transform:uppercase;margin-bottom:10px;font-size:11px;font-weight:800;display:block}.schedule-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.schedule-actions button{min-width:160px}@media (width<=760px){.schedule-overlay{align-items:flex-end;padding:0}.schedule-dialog{border-radius:18px 18px 0 0;max-height:95vh;padding:20px 16px}.schedule-dialog-head{align-items:center}.schedule-actions{grid-template-columns:1fr 1fr;display:grid}.schedule-actions button{min-width:0}}.calendar-event-actions{align-items:center;gap:10px;margin-top:14px;display:flex}.calendar-event-actions button{min-width:170px}.calendar-in-progress{color:#9a3412;text-transform:uppercase;background:#ffedd5;border:1px solid #fed7aa;border-radius:999px;align-items:center;padding:7px 10px;font-size:10px;font-weight:800;display:inline-flex}@media (width<=760px){.calendar-event-actions{grid-template-columns:1fr;display:grid}.calendar-event-actions button{width:100%;min-width:0;min-height:42px}}.calendar-view-selector{background:#e2e8f0;border-radius:10px;gap:5px;margin:18px 0 12px;padding:4px;display:inline-flex}.calendar-view-selector button{color:#475569;background:0 0;border:0;border-radius:7px;padding:8px 16px;font-size:12px;font-weight:700}.calendar-view-selector button.active{color:#fff;background:#112b55;box-shadow:0 1px 3px #0f172a2e}@media (width<=760px){.calendar-view-selector{grid-template-columns:repeat(3,1fr);width:100%;display:grid}.calendar-view-selector button{width:100%}}.calendar-month{margin-top:18px}.calendar-month-head{grid-template-columns:auto 1fr auto;align-items:center;gap:15px;margin-bottom:15px;display:grid}.calendar-month-head h2{color:#112b55;text-align:center;margin:0;font-size:19px}.calendar-month-weekdays{color:#fff;background:#112b55;border-radius:9px;grid-template-columns:repeat(7,1fr);margin-bottom:5px;display:grid}.calendar-month-weekdays span{text-align:center;text-transform:uppercase;padding:9px 5px;font-size:10px;font-weight:800}.calendar-month-grid{grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.calendar-month-day{color:#0f172a;text-align:left;background:#fff;border:1px solid #dbe2ea;border-radius:9px;flex-direction:column;align-items:flex-start;min-height:105px;padding:9px;display:flex;position:relative}.calendar-month-day:hover{background:#f8fafc;border-color:#94a3b8}.calendar-month-day.outside{opacity:.38;background:#f8fafc}.calendar-month-day.today{background:#f0fdfa;border:2px solid #0f766e}.calendar-month-number{font-size:13px;font-weight:800}.calendar-month-day.today .calendar-month-number{color:#0f766e}.calendar-month-count{color:#fff;background:#112b55;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 6px;font-size:10px;display:flex;position:absolute;top:7px;right:7px}.calendar-month-statuses{flex-wrap:wrap;gap:4px;margin:14px 0 5px;display:flex}.month-status-dot{border-radius:50%;width:8px;height:8px}.month-status-dot.programmato{background:#2563eb}.month-status-dot.in_corso{background:#f59e0b}.month-status-dot.completato{background:#16a34a}.month-status-dot.annullato{background:#64748b}.calendar-month-day small{color:#64748b;margin-top:auto;font-size:9px;font-weight:700}@media (width<=760px){.calendar-month-head{grid-template-columns:1fr 1fr}.calendar-month-head h2{grid-area:1/1/auto/-1;margin-bottom:5px}.calendar-month-head button{grid-row:2;font-size:10px}.calendar-month-weekdays span{padding:7px 2px;font-size:8px}.calendar-month-grid{gap:2px}.calendar-month-day{border-radius:5px;min-height:72px;padding:5px}.calendar-month-number{font-size:11px}.calendar-month-count{min-width:17px;height:17px;padding:0 4px;font-size:8px;top:3px;right:3px}.calendar-month-statuses{gap:2px;margin-top:9px}.month-status-dot{width:6px;height:6px}.calendar-month-day small{display:none}}.upcoming-service{margin:26px 0}.upcoming-service-head{justify-content:space-between;align-items:flex-end;gap:15px;margin-bottom:10px;display:flex}.upcoming-service-head small{color:#64748b;letter-spacing:.08em;font-size:10px;font-weight:800}.upcoming-service-head h2{color:#112b55;margin:3px 0 0}.upcoming-service-list{gap:8px;display:grid}.upcoming-service-item{color:#0f172a;text-align:left;background:#fff;border:1px solid #e2e8f0;border-radius:11px;grid-template-columns:95px 1fr auto;align-items:center;gap:15px;width:100%;padding:12px 14px;display:grid}.upcoming-service-item:hover{background:#f8fafc;border-color:#94a3b8}.upcoming-service-date{flex-direction:column;gap:2px;display:flex}.upcoming-service-date strong{color:#112b55;font-size:14px}.upcoming-service-date span{color:#0f766e;font-size:13px;font-weight:800}.upcoming-service-main{flex-direction:column;gap:3px;min-width:0;display:flex}.upcoming-service-main b{color:#112b55;font-size:13px}.upcoming-service-main span{color:#475569;font-size:11px}.upcoming-service-main small{color:#64748b;font-size:10px}@media (width<=760px){.upcoming-service-head{flex-direction:column;align-items:stretch}.upcoming-service-head button{width:100%}.upcoming-service-item{grid-template-columns:72px 1fr;gap:10px}.upcoming-service-item>.calendar-status{grid-column:1/-1;width:fit-content}}.sync-tools{background:#f8fafc;border:1px solid #cbd5e1;border-radius:12px;justify-content:space-between;align-items:center;gap:20px;margin:20px 0;padding:16px;display:flex}.sync-tools small{color:#64748b;letter-spacing:.08em;font-size:9px;font-weight:800}.sync-tools h2{color:#112b55;margin:3px 0;font-size:16px}.sync-tools p{color:#64748b;margin:0;font-size:11px}.sync-tools button{min-width:210px}@media (width<=760px){.sync-tools{flex-direction:column;align-items:stretch}.sync-tools button{width:100%;min-width:0}}.calendar-week-agenda{gap:14px;margin-top:18px;display:grid}.calendar-week-agenda-day{background:#fff;border:1px solid #dbe2ea;border-radius:12px;overflow:hidden}.calendar-week-agenda-day.today{border:2px solid #0f766e}.calendar-week-agenda-head{color:#112b55;text-align:left;background:#f8fafc;border:0;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;width:100%;padding:11px 15px;display:flex}.calendar-week-agenda-head strong{text-transform:capitalize;font-size:13px}.calendar-week-agenda-head>span{color:#475569;background:#e2e8f0;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:800}.calendar-week-agenda-day.today .calendar-week-agenda-head{background:#f0fdfa}.calendar-week-agenda-day.today .calendar-week-agenda-head strong{color:#0f766e}.calendar-week-agenda-events{display:grid}.calendar-week-agenda-event{color:#0f172a;text-align:left;background:#fff;border-top:0;border-bottom:1px solid #e2e8f0;border-left:4px solid #2563eb;border-right:0;grid-template-columns:75px minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;padding:13px 15px;display:grid}.calendar-week-agenda-event:last-child{border-bottom:0}.calendar-week-agenda-event:hover{background:#f8fafc}.calendar-week-agenda-event.in_corso{border-left-color:#f59e0b}.calendar-week-agenda-event.completato{border-left-color:#16a34a}.calendar-week-agenda-event.annullato{opacity:.65;border-left-color:#64748b}.calendar-week-agenda-time{color:#112b55;font-size:16px;font-weight:800}.calendar-week-agenda-main{flex-direction:column;gap:3px;min-width:0;display:flex}.calendar-week-agenda-main strong{color:#112b55;font-size:13px}.calendar-week-agenda-main span{color:#475569;font-size:11px}.calendar-week-agenda-main small{color:#64748b;font-size:10px}.calendar-week-agenda-empty{color:#94a3b8;padding:10px 15px;font-size:11px;font-style:italic}@media (width<=760px){.calendar-week-head{grid-template-columns:1fr 1fr;gap:8px;display:grid}.calendar-week-head>strong{text-align:center;grid-area:1/1/auto/-1}.calendar-week-head button{grid-row:2;font-size:10px}.calendar-week-agenda-event{grid-template-columns:55px 1fr;gap:9px;padding:11px}.calendar-week-agenda-event>.calendar-status{grid-column:2;justify-self:start;margin-top:3px}.calendar-week-agenda-time{font-size:14px}}.calendar-agenda{gap:10px;margin-top:18px;display:grid}.calendar-event{background:#fff;border:1px solid #dbe2ea;border-left:5px solid #2563eb;border-radius:12px;grid-template-columns:85px minmax(0,1fr);gap:0;display:grid;overflow:hidden;box-shadow:0 1px 3px #0f172a0d}.calendar-event:has(.calendar-status.in_corso){border-left-color:#f59e0b}.calendar-event:has(.calendar-status.completato){border-left-color:#16a34a}.calendar-event:has(.calendar-status.annullato){opacity:.7;border-left-color:#64748b}.calendar-time{color:#112b55;background:#f8fafc;border-right:1px solid #e2e8f0;justify-content:center;align-items:flex-start;padding:17px 10px;font-size:18px;font-weight:900;display:flex}.calendar-event-main{min-width:0;padding:14px 16px}.calendar-event-title{justify-content:space-between;align-items:center;gap:15px;margin-bottom:10px;display:flex}.calendar-event-title h3{color:#112b55;margin:0;font-size:16px;font-weight:800}.calendar-event-data{background:#f8fafc;border:1px solid #e2e8f0;border-radius:9px;grid-template-columns:minmax(130px,.8fr) minmax(150px,.9fr) minmax(220px,1.5fr);gap:0;margin:8px 0 12px;display:grid;overflow:hidden}.calendar-event-data>div{border-right:1px solid #e2e8f0;flex-direction:column;gap:3px;padding:9px 11px;display:flex}.calendar-event-data>div:last-child{border-right:0}.calendar-event-data span{color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-size:8px;font-weight:800}.calendar-event-data b{color:#334155;overflow-wrap:anywhere;font-size:11px}.calendar-event-main>p{color:#475569;background:#f8fafc;border-radius:8px;margin:10px 0 12px;padding:9px 11px;font-size:11px;line-height:1.45}.calendar-event-actions{border-top:1px solid #e2e8f0;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding-top:12px;display:flex}.calendar-event-actions button{min-width:0;padding:8px 13px;font-size:10px}@media (width<=760px){.calendar-agenda{gap:12px}.calendar-event{grid-template-columns:1fr}.calendar-time{border-bottom:1px solid #e2e8f0;border-right:0;justify-content:flex-start;padding:9px 13px;font-size:17px}.calendar-event-main{padding:12px}.calendar-event-title{align-items:flex-start}.calendar-event-title h3{font-size:15px}.calendar-event-data{grid-template-columns:1fr 1fr}.calendar-event-data>div{border-bottom:1px solid #e2e8f0;border-right:0}.calendar-event-data>div:nth-child(3){border-bottom:0;grid-column:1/-1}.calendar-event-actions{grid-template-columns:1fr;display:grid}.calendar-event-actions button{width:100%;min-height:42px;margin:0}.calendar-in-progress{width:fit-content}}.calendar-day-navigation{background:#fff;border:1px solid #dbe2ea;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;margin:18px 0 12px;padding:12px 14px;display:grid}.calendar-day-title{flex-direction:column;align-items:center;gap:4px;display:flex}.calendar-day-title strong{color:#112b55;text-align:center;text-transform:capitalize;font-size:16px;font-weight:800}.calendar-day-title span{color:#475569;text-transform:uppercase;background:#e2e8f0;border-radius:999px;padding:4px 9px;font-size:9px;font-weight:800}@media (width<=760px){.calendar-day-navigation{grid-template-columns:1fr 1fr;gap:8px}.calendar-day-title{grid-area:1/1/auto/-1;margin-bottom:3px}.calendar-day-title strong{font-size:15px}.calendar-day-navigation>button:first-child{grid-area:2/1}.calendar-day-navigation>button:last-child{grid-area:2/2}.calendar-day-navigation button{min-height:40px;padding:7px 8px;font-size:9px}}.calendar-view-selector .calendar-today-button{color:#fff;background:#0f766e;margin-left:8px;font-weight:800}.calendar-view-selector .calendar-today-button:hover{background:#115e59}@media (width<=760px){.calendar-view-selector .calendar-today-button{grid-column:1/-1;width:100%;margin:4px 0 0}}.invoice-confirm-button{color:#fff;background:#b45309}.invoice-confirm-button:hover{background:#92400e}.invoice-completed-badge{color:#166534;letter-spacing:.04em;background:#dcfce7;border:1px solid #86efac;border-radius:999px;justify-content:center;align-items:center;padding:7px 11px;font-size:10px;font-weight:900;display:inline-flex}.invoice-dialog{gap:14px;display:grid}.invoice-dialog label{color:#334155;flex-direction:column;gap:5px;font-size:12px;font-weight:700;display:flex}.invoice-dialog input{min-height:42px}@media (width<=760px){.invoice-confirm-button,.invoice-completed-badge{justify-content:center;width:100%}}.dashboard-invoiced{background:#f0fdf4;border-top:4px solid #16a34a}.dashboard-invoiced span{color:#166534}.dashboard-invoiced strong{color:#15803d}
