.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#42bdd9,#4277d9);padding:20px}.login-box{background:#fff;padding:40px;border-radius:8px;box-shadow:0 10px 25px #0003;width:100%;max-width:400px}.login-box h1{text-align:center;color:#333;margin-bottom:30px;font-size:28px}.login-logo{max-width:200px;max-height:120px;margin:0 auto 28px;display:block;object-fit:contain}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#333;font-weight:600}.form-group input{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:16px;box-sizing:border-box;transition:border-color .3s}.form-group input:focus{outline:none;border-color:#42bdd9}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.login-button{width:100%;padding:12px;background:linear-gradient(135deg,#42bdd9,#4277d9);color:#fff;border:none;border-radius:4px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s}.login-button:hover:not(:disabled){transform:translateY(-2px)}.login-button:disabled{opacity:.7;cursor:not-allowed}.error-message{color:#d32f2f;margin-bottom:15px;padding:10px;background-color:#ffebee;border-radius:4px;font-size:14px}.credentials-hint{text-align:center;color:#999;font-size:12px;margin-top:20px}.up-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px;box-sizing:border-box}.up-modal{background:#fff;border-radius:12px;padding:36px 32px;max-width:380px;width:100%;text-align:center;box-shadow:0 8px 40px #00000040;display:flex;flex-direction:column;align-items:center;gap:12px}.up-icon{font-size:48px;line-height:1}.up-title{font-size:20px;font-weight:700;color:#111;margin:0}.up-version{font-size:13px;color:#17a2b8;font-weight:600;margin:0}.up-message{font-size:14px;color:#555;line-height:1.6;margin:4px 0 8px}.up-btn{background:#17a2b8;color:#fff;border:none;border-radius:8px;padding:14px 32px;font-size:15px;font-weight:700;letter-spacing:.04em;cursor:pointer;width:100%;transition:background .15s ease,transform .1s ease}.up-btn:hover{background:#138a9e}.up-btn:active{transform:scale(.97)}.no-page{display:flex;flex-direction:column;gap:24px;padding:20px}.val-header{background:#c8a420;padding:24px;border-radius:8px;text-align:center;margin-bottom:24px}.val-header--oro{background:#c8a420}.val-header h1{margin:0;font-size:28px;font-weight:700;color:#fff;letter-spacing:.05em}.no-section{background:#fff;border-radius:8px;border:1px solid #e1e0e0;padding:20px 24px}.no-section-title{color:#17a2b8;font-size:15px;font-weight:700;letter-spacing:.05em;margin:0 0 16px;padding-bottom:10px;border-bottom:1px solid #e1e0e0}.co-section{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #f1f1f1}.co-section:last-of-type{margin-bottom:0;padding-bottom:0;border-bottom:none}.co-form{display:flex;flex-direction:column;gap:20px}.no-form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-bottom:16px}.no-form-field{display:flex;flex-direction:column;gap:6px;min-width:0}.no-form-field label{font-size:13px;color:#666;font-weight:600;display:flex;align-items:center;gap:4px}.no-required{color:#dc3545;font-weight:700}.co-input,.co-select,.co-textarea{border:1.5px solid #ccc;border-radius:6px;padding:10px 12px;font-size:14px;color:#333;outline:none;width:100%;min-width:0;background:#fff;transition:border-color .15s ease}.co-input:focus,.co-select:focus,.co-textarea:focus{border-color:#17a2b8}.co-input:read-only{background:#f5f5f5;color:#666;cursor:not-allowed}.co-select{min-height:40px;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.co-textarea{resize:vertical;min-height:100px;font-family:inherit}.co-date-input{max-width:180px}.co-hint{font-size:12px;color:#6c757d;margin-top:2px}.co-photo-dropzone{min-height:220px;border:2px dashed #b9c7d3;border-radius:12px;background:linear-gradient(180deg,#f8fbfd,#f2f6f8);display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer;transition:border-color .15s ease,transform .15s ease}.co-photo-dropzone:hover{border-color:#17a2b8}.co-photo-dropzone--filled{padding:0}.co-photo-placeholder{display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center;text-align:center;color:#5b6b79;padding:24px}.co-photo-placeholder strong{color:#264653;font-size:16px}.co-photo-placeholder span{font-size:13px}.co-photo-input{display:none}.co-photo-preview{display:block;width:100%;max-height:360px;object-fit:contain;background:#fff}.co-orders-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.co-orders-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(320px,1fr);gap:20px}.co-orders-table-wrap,.co-order-card{background:#fff;border:1px solid #dde5ec;border-radius:12px;overflow:hidden}.co-orders-table{width:100%;border-collapse:collapse}.co-orders-table th,.co-orders-table td{padding:10px 12px;border-bottom:1px solid #eef2f6;text-align:left;vertical-align:top}.co-orders-table__row--selected{background:#f2fbfd}.co-orders-actions{display:flex;gap:6px;flex-wrap:wrap}.co-status-btn{border:1px solid #bfd6db;background:#fff;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700;cursor:pointer}.co-status-btn--active{background:#17a2b8;border-color:#17a2b8;color:#fff}.co-status-btn--danger{color:#b42318;border-color:#efb3ad}.co-order-number-input{width:84px;border:1px solid #ccd5df;border-radius:6px;padding:6px 8px}.co-orders-empty{text-align:center!important;color:#6c757d}.co-orders-side{display:flex;flex-direction:column;gap:16px}.co-order-card{padding:16px}.co-order-card h4{margin:0 0 12px;color:#284b63}.co-order-detail-grid{display:grid;gap:8px}.co-order-detail-full{display:block}.co-log-list{display:flex;flex-direction:column;gap:10px}.co-log-item{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border-radius:10px;background:#f8fafc;border:1px solid #e6edf3;font-size:13px}.co-input--error,.co-select.co-input--error{border-color:#dc3545!important}.co-error{font-size:12px;color:#dc3545;font-weight:500;margin-top:2px}.co-checkbox-field{display:flex;align-items:center;gap:10px;padding:12px;background:#f9f9f9;border-radius:6px;border:1px solid #e1e0e0}.co-checkbox{width:20px;height:20px;accent-color:#17a2b8;cursor:pointer}.co-checkbox-label{font-size:14px;font-weight:600;color:#333;cursor:pointer}.co-form-actions{display:flex;justify-content:flex-end;gap:16px;margin-top:24px;padding-top:24px;border-top:1px solid #e1e0e0}.co-btn-cancel{padding:14px 28px;background:#f4f6f8;color:#3c4853;border:1px solid #d4d7db;border-radius:8px;font-size:15px;font-weight:700;cursor:pointer;transition:all .15s ease}.co-btn-cancel:hover{background:#eceff2;border-color:#bfc6cd}.co-btn-submit{padding:14px 28px;background:#17a2b8;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:700;cursor:pointer;transition:background .15s ease;letter-spacing:.03em}.co-btn-submit:hover{background:#138a9e}@media (max-width: 1024px){.no-form-row{grid-template-columns:1fr;gap:16px}.co-orders-layout{grid-template-columns:1fr}}@media (max-width: 768px){.val-header h1{font-size:24px}.no-section{padding:16px}.co-form-actions{flex-direction:column}.co-btn-cancel,.co-btn-submit{width:100%}}@media (min-width: 1280px){.val-header h1{font-size:32px}}.co-sort-bar{display:flex;align-items:center;gap:8px;padding:10px 0;flex-wrap:wrap}.co-sort-bar__label{font-size:13px;font-weight:600;color:#666}.co-sort-btn{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:6px 12px;border:1px solid #d6dee6;border-radius:999px;background:linear-gradient(180deg,#fff,#f6f9fb);font-size:12px;font-weight:700;color:#425466;cursor:pointer;box-shadow:inset 0 1px #ffffffe6;transition:border-color .15s ease,background .15s ease,color .15s ease,box-shadow .15s ease}.co-sort-btn:hover{background:linear-gradient(180deg,#fff,#edf6f8);border-color:#7fb9c3;color:#234458;box-shadow:0 0 0 3px #17a2b814}.co-sort-btn--active{background:linear-gradient(180deg,#1aa7bc,#0f8ea1);border-color:#0f8ea1;color:#fff;box-shadow:0 6px 14px #0f8ea138}.co-sort-btn__arrow{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:999px;background:#ffffff2e;font-size:11px;line-height:1}.co-compact-table-wrap{background:#fff;border:1px solid #dde5ec;border-radius:12px;overflow-x:auto}.co-compact-table{width:100%;border-collapse:collapse;font-size:13px}.co-compact-table th{padding:10px 12px;border-bottom:2px solid #17a2b8;text-align:left;font-size:11px;font-weight:700;color:#666;letter-spacing:.05em;text-transform:uppercase;background:#f8fafc}.co-sortable-cell{cursor:pointer;transition:color .15s ease}.co-sortable-cell:hover{color:#17a2b8}.co-sortable-cell--active{color:#17a2b8;font-weight:700}.co-compact-table td{padding:8px 12px;border-bottom:1px solid #eef2f6;vertical-align:middle}.co-compact-actions-cell{min-width:180px}.co-actions-inline{display:flex;align-items:center;gap:10px}.co-status-chip{display:inline-flex;align-items:center;padding:6px 10px;border:1px solid #ccd5df;border-radius:999px;background:#fff;font-size:12px;font-weight:700;color:#3c4853;cursor:pointer}.co-status-chip--active{border-color:#17a2b8;background:#e9f9fc;color:#0b7285}.co-status-chip--ordered{border-color:#d8b34f;background:#fff8e2;color:#8a6116}.co-trash-btn{width:34px;height:34px;border:1px solid #efb3ad;border-radius:8px;background:#fff5f4;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:16px}.co-trash-btn:disabled,.co-status-chip:disabled{cursor:not-allowed;opacity:.6}.co-compact-tr{cursor:pointer;transition:background .15s ease}.co-compact-tr:hover{background:#f2fbfd}.co-compact-id{font-weight:700;color:#999;min-width:40px;text-align:right}.co-compact-negozio{font-size:11px;color:#666;max-width:120px}.co-compact-cliente{font-weight:600;max-width:140px}.co-compact-tipologia,.co-compact-karati,.co-compact-consegna{font-weight:700;color:#264653}.co-compact-consegna{font-size:12px}.co-compact-stato{font-size:11px;vertical-align:middle}.co-compact-stato-content{display:flex;align-items:center;flex-wrap:wrap;gap:4px;min-height:20px}.co-status-badge{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0;vertical-align:middle}.co-status-badge--richiesto{background:#f0c40f}.co-status-badge--ordinato{background:#d8b34f}.co-status-badge--evaso,.co-status-badge--reperito{background:#27ae60}.co-status-badge--non_trovato{background:#e74c3c}.co-status-badge--annullato{background:#95a5a6}.co-inline-date{color:#8a6116;font-weight:700}.co-compact-actions{display:flex;gap:4px;flex-wrap:wrap}.co-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;overflow:hidden}.co-modal-card{background:#fff;border-radius:16px;max-width:800px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #0000004d}.co-status-modal{width:min(420px,calc(100vw - 32px));max-height:calc(100vh - 40px);background:#fff;border-radius:12px;padding:20px;box-shadow:0 30px 60px #0000002e;overflow-y:auto}.co-status-modal h3{margin:0 0 8px;color:#264653}.co-status-modal p{margin:0 0 16px;color:#5b6b79}.co-status-modal-actions{display:flex;gap:12px;flex-wrap:wrap}.co-status-form{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.co-status-form-label{font-size:13px;font-weight:600;color:#4a5865}.co-status-form-input{max-width:180px}.co-status-choice-btn{padding:12px 16px;border:1px solid #ccd5df;border-radius:8px;background:#fff;font-weight:700;cursor:pointer}.co-status-choice-btn--danger{border-color:#efb3ad;background:#fff5f4;color:#b42318}.co-status-choice-btn--primary{border-color:#17a2b8;background:#e9f9fc;color:#0b7285}.co-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:#f8fafc;border-bottom:1px solid #e6edf3}.co-modal-header h2{margin:0;font-size:18px;color:#284b63}.co-modal-close{border:none;background:none;font-size:24px;color:#666;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .15s ease}.co-modal-close:hover{background:#eef2f6;color:#333}.co-modal-body{padding:24px;overflow-y:auto;flex:1}.co-detail-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:24px}.co-detail-block{background:#f8fafc;border-radius:10px;padding:16px;border:1px solid #e6edf3}.co-detail-block h3{margin:0 0 12px;font-size:14px;color:#17a2b8;padding-bottom:8px;border-bottom:1px solid #dde5ec}.co-detail-block dl{margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.co-detail-row{display:flex;justify-content:space-between;align-items:baseline;font-size:13px}.co-detail-row dt{font-weight:600;color:#666;flex-shrink:0}.co-detail-row dd{text-align:right;color:#333}.co-detail-value--highlight{font-weight:700;color:#17a2b8}.co-detail-block--admin{background:#fff9e6;border-color:#f1c40f}.co-detail-description{padding:16px;background:#f8fafc;border-radius:10px;border:1px solid #e6edf3;margin-bottom:16px;font-size:14px;line-height:1.6;white-space:pre-wrap}.co-detail-photo{padding:16px;background:#f8fafc;border-radius:10px;border:1px solid #e6edf3;text-align:center}.co-detail-photo img{max-width:100%;max-height:400px;object-fit:contain;border-radius:8px}.co-detail-meta{display:flex;flex-direction:column;gap:4px;font-size:11px;color:#666;padding:12px 0;border-top:1px solid #eef2f6;margin-top:16px}.co-detail-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.co-detail-log{margin-top:24px;padding-top:24px;border-top:1px solid #eef2f6}.co-detail-log h3{font-size:16px;color:#284b63;margin:0 0 12px}.co-float-save{position:fixed;bottom:24px;right:24px;z-index:1000}.co-float-save-buttons{display:flex;flex-direction:column;gap:12px;align-items:center}.co-btn-save-float,.co-btn-cancel-float{width:64px;height:64px;border-radius:50%;border:none;font-size:24px;cursor:pointer;box-shadow:0 4px 12px #0000004d;transition:transform .15s ease;display:flex;align-items:center;justify-content:center}.co-btn-save-float:hover:not(:disabled){transform:scale(1.05)}.co-btn-save-float{background:#28a745;color:#fff}.co-btn-save-float--loading{opacity:.6;cursor:not-allowed}.co-btn-cancel-float{width:48px;height:48px;background:#6c757d;color:#fff;font-size:20px}.co-btn-cancel-float:hover{transform:scale(1.05)}.co-compact-tr--pending{background:#fff8dc}.co-pending-badge{display:inline-block;width:8px;height:8px;background:#f1c40f;border-radius:50%;margin-left:4px;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.co-hint-pending{color:#f39c12;font-weight:600}.co-search-bar{margin:0 0 16px}.co-search-input{width:100%;max-width:420px;min-height:44px;padding:0 14px;border:1px solid #d6dee6;border-radius:12px;background:#fff;color:#16324f;font-size:14px}.co-search-input:focus{outline:none;border-color:#3d7ea6;box-shadow:0 0 0 3px #3d7ea624}.co-page{min-height:100vh;background:linear-gradient(135deg,#f1f7fa,#c3cfe2);padding-bottom:170px}.co-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:#fff;box-shadow:0 2px 6px #00000014;position:sticky;top:0;z-index:10}.co-btn-back{padding:8px 16px;background:none;border:1.5px solid #17a2b8;border-radius:6px;color:#17a2b8;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .15s}.co-btn-back:hover{background:#17a2b8;color:#fff}.co-title{margin:0;font-size:18px;font-weight:700;color:#333;text-align:center}.co-header-spacer{width:90px}.co-content{padding:20px;flex:1}.co-nav{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}.co-nav-btn{padding:10px 16px;border:1px solid #d2d8de;border-radius:8px;background:#fff;color:#284b63;font-weight:700;cursor:pointer}.co-nav-btn--active{background:#284b63;border-color:#284b63;color:#fff}@media (max-width: 600px){.co-title{font-size:15px}.co-header-spacer{width:70px}}*{margin:0;padding:0;box-sizing:border-box;-webkit-user-select:none;user-select:none}html,body,#root{width:100%;height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background-color:#f5f5f5}.app-shell{min-height:100%}.route-loading{min-height:100vh;display:grid;place-items:center;background:#f5f5f5;color:#333;font-size:16px;font-weight:600}button{font-family:inherit}input,textarea,select{font-family:inherit;-webkit-user-select:text;user-select:text}input::selection,textarea::selection{background:#17a2b82e}[contenteditable=true]{-webkit-user-select:text;user-select:text}@media print{body{background:#fff}.navigation-buttons,.logout-btn{display:none!important}}
