:root{--gw-green: #00A651;--gw-gray: #676767;--gw-green-dark: #008f44;--gw-bg: #f4f6f8;--input-border: #d1d5db;--input-radius: 6px;--input-padding: 8px 12px;--input-height: 38px;--input-font-size: .875rem;--input-focus-border: var(--gw-green);--input-focus-shadow: 0 0 0 3px rgba(0, 166, 81, .15);--input-disabled-bg: #f9fafb;--select-arrow: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' stroke='%236b7280' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--label-size: .875rem;--label-weight: 500;--label-color: #374151;--text-secondary: #6b7280;--text-muted: #9ca3af;--btn-color-base: var(--gw-green);--btn-color-text: #ffffff;--btn-color-hover: var(--gw-green-dark)}*,body{font-family:Ubuntu,sans-serif}body{background-color:var(--gw-bg);margin:0}.form-group{display:flex;flex-direction:column;gap:6px;margin:0;min-width:0}.form-group label{font-size:var(--label-size);font-weight:var(--label-weight);color:var(--label-color);display:block}input:not(:where([type=checkbox],[type=radio],[type=file],[type=range],[type=color],[type=submit],[type=button],[type=reset],[type=image])),select,textarea{min-height:var(--input-height);border:1px solid var(--input-border);background:#fff;border-radius:var(--input-radius);padding:var(--input-padding);font-size:var(--input-font-size);font-family:inherit;color:#111827;outline:none;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.form-group input:not([type=checkbox]):not([type=radio]),.form-group select,.form-group textarea{width:100%}select{appearance:none;-webkit-appearance:none;padding-right:2rem;background-image:var(--select-arrow);background-repeat:no-repeat;background-position:right .75rem center;cursor:pointer}select:disabled{cursor:not-allowed;opacity:.75}.gw-select--compact,.gw-input--compact{min-height:30px;padding:4px 8px;font-size:.8125rem}.gw-select--compact{padding-right:1.75rem;background-position:right .5rem center}input:focus,select:focus,textarea:focus{border-color:var(--input-focus-border);box-shadow:var(--input-focus-shadow)}input::placeholder,textarea::placeholder{color:#9ca3af}input:disabled,select:disabled,textarea:disabled{background:var(--input-disabled-bg);color:var(--text-muted);cursor:not-allowed}input[type=checkbox],input[type=radio]{width:18px;height:18px;accent-color:var(--gw-green);cursor:pointer;flex-shrink:0}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;font-weight:500;color:#111827}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--gw-green);cursor:pointer;flex-shrink:0}.gw-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-weight:500;padding:8px 16px;border-radius:6px;background-color:var(--btn-color-base);color:var(--btn-color-text);font-size:.875rem;line-height:1.25;min-height:36px;border:none;cursor:pointer;text-decoration:none;transition:background-color .15s,box-shadow .15s;white-space:nowrap;font-family:inherit}.gw-btn:hover:not(:disabled){background-color:var(--btn-color-hover)}.gw-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #00a6514d}.gw-btn.secondary{background-color:#f3f4f6;color:#374151;border:1px solid #e5e7eb}.gw-btn.secondary:hover:not(:disabled){background-color:#e5e7eb}.gw-btn.danger{background-color:#ef4444;color:#fff}.gw-btn.danger:hover:not(:disabled){background-color:#dc2626}.gw-btn.ghost{background-color:transparent;color:var(--gw-green);border:1px solid var(--gw-green)}.gw-btn.ghost:hover:not(:disabled){background-color:#00a6510f}.gw-btn.sm{padding:4px 10px;font-size:.8rem;min-height:28px}.gw-btn.icon-only{padding:0;min-width:36px;min-height:36px}.gw-btn:disabled{opacity:.5;cursor:not-allowed}.filter-header{display:flex;align-items:center;gap:8px;font-weight:600;margin-bottom:16px;font-size:1rem}.filter-row{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:6px;min-width:200px}.filter-group label{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.saved-filters-bar{background:var(--gw-bg);border:1px solid #e5e7eb;border-radius:8px;padding:14px 16px}.saved-filters-bar .filter-header{font-size:.85rem;color:var(--text-secondary);margin-bottom:12px}.saved-filters-bar .filter-row{gap:12px}.saved-filters-bar .filter-group{min-width:220px}.saved-filters-bar .filter-group label{font-size:.8rem;color:var(--text-muted)}.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:6px;border:1px solid #e5e7eb;background:#fff;font-size:.8rem;font-weight:500;color:#111827}.chip-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.popup-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:2000;padding:16px}.popup-window{width:min(520px,100%);border-radius:8px;background:#fff;box-shadow:0 20px 60px #00000026;overflow:hidden}.popup-body{padding:24px}.popup-actions{display:flex;justify-content:flex-end;gap:8px;padding:16px 24px;border-top:1px solid var(--divider-color, #e5e7eb)}.popup-close-button{background:none;border:none;font-size:1.4rem;color:#ffffffd9;cursor:pointer;line-height:1;padding:0 4px}.popup-close-button:hover{color:#fff}.navbar{border-bottom:3px solid var(--gw-green)}.brand-logo{font-size:1.45rem;font-weight:700;line-height:1}.brand-giro{color:var(--gw-gray)}.brand-web{color:var(--gw-green)}.brand-divider{color:#ccc;font-weight:300;margin:0 .25rem}.brand-subtitle{color:#999;font-size:.85rem;font-weight:400;vertical-align:middle}.btn-primary{background-color:var(--gw-green);border-color:var(--gw-green)}.btn-primary:hover,.btn-primary:focus,.btn-primary:disabled{background-color:var(--gw-green-dark);border-color:var(--gw-green-dark)}.card{border:none;border-radius:.6rem}.card-header-gw{background-color:var(--gw-green);color:#fff;font-weight:500;border-radius:.6rem .6rem 0 0!important;padding:.65rem 1rem}.table thead th{background-color:var(--gw-green);color:#fff;font-weight:500;white-space:nowrap;border-bottom:none;cursor:pointer;-webkit-user-select:none;user-select:none}.table thead th .sort-arrow{opacity:.7;margin-left:.25rem}.table-summary td{font-size:.92rem}.badge-new{background-color:#6f42c1;color:#fff}.badge-open{background-color:#0d6efd;color:#fff}.badge-solved{background-color:var(--gw-green);color:#fff}.badge-pending{background-color:#ffc107;color:#333}.badge-hold{background-color:#6c757d;color:#fff}.badge-closed{background-color:#adb5bd;color:#333}#loadingOverlay{position:fixed;inset:0;background:#ffffffe6;z-index:9999;display:flex;flex-direction:column;justify-content:center;align-items:center}.spinner-border{color:var(--gw-green);width:3.5rem;height:3.5rem}@keyframes spin-anim{to{transform:rotate(360deg)}}.spin{display:inline-block;animation:spin-anim 1.5s linear infinite}.stat-card{background:#fff;border-radius:.5rem;padding:1rem 1.25rem;box-shadow:0 1px 4px #00000014;text-align:center}.stat-card .stat-value{font-size:2rem;font-weight:700;color:var(--gw-green)}.stat-card .stat-label{font-size:.8rem;color:#888;text-transform:uppercase;letter-spacing:.04em}a.ticket-link{color:var(--gw-green);text-decoration:none;font-weight:500}a.ticket-link:hover{text-decoration:underline}.badge-outlier{background-color:#ffc7ce;color:#9c0006;font-weight:600;border:1px solid #f5a0aa}tr.outlier-row>td{background-color:#ffc7ce!important;color:#9c0006}.text-gw-green{color:var(--gw-green)!important}.login-card{width:100%;max-width:380px}.login-logo{font-size:1.6rem;font-weight:700}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh}
