@import "https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700;900&family=Montserrat:wght@500;600;700;800&family=Poppins:wght@400;500;600;700&display=swap";:root{--font-display:"Montserrat", system-ui, -apple-system, sans-serif;--font-sans:"Lato", system-ui, -apple-system, sans-serif;--font-ui:"Poppins", "Montserrat", system-ui, sans-serif;--bg-base:0 0% 96.5%;--bg-card:0 0% 100%;--bg-input:0 0% 100%;--border-color:0 0% 92.5%;--primary:0 68% 63.5%;--primary-glow:0 68% 63.5% / .15;--accent:0 68% 63.5%;--status-new:190 90% 40%;--status-open:142 70% 38%;--status-stalled:37 95% 42%;--status-resolved:262 80% 50%;--status-rejected:350 80% 45%;--priority-low:142 70% 38%;--priority-medium:37 95% 42%;--priority-high:25 95% 45%;--priority-critical:350 80% 45%;--text-primary:0 0% 14%;--text-secondary:0 0% 47.5%;--text-muted:0 0% 60.8%;--text:hsl(var(--text-primary));--text-on-dark:#fff;--text-on-dark-soft:#b5b5b5;--text-on-brand:#fff;--surface:hsl(var(--bg-card));--border:hsl(var(--border-color));--transition-fast:.14s ease;--transition-normal:.22s ease;--brand:#e26262;--brand-hover:#d94e4e;--brand-strong:#c93b3b;--brand-soft:#fde8e8;--accent-deep:#bb1820;--ink:#1c1c1c;--ink-2:#2a2a2a;--ink-line:#2f2f2f;--radius:3px;--radius-lg:6px;--shadow-xs:0 1px 2px #2424240a;--shadow-sm:0 2px 6px #2424240f;--shadow-md:0 10px 30px -12px #2424242e;--shadow-lg:0 18px 60px -22px #1c1c1c59}*{box-sizing:border-box;margin:0;padding:0}body{background-color:hsl(var(--bg-base));color:hsl(var(--text-primary));font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:hsl(var(--bg-base))}::-webkit-scrollbar-thumb{background:hsl(var(--border-color));border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--brand-hover)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text);font-weight:700;line-height:1.25}a{color:var(--brand);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--brand-hover)}.auth-shell{background:radial-gradient(circle at 15% 25%, #e2626214, transparent 40%), radial-gradient(circle at 85% 80%, #1c1c1c0d, transparent 45%), hsl(var(--bg-base));grid-template-columns:minmax(0,1fr) minmax(320px,480px) minmax(0,1fr);align-items:center;min-height:100dvh;padding:2rem;display:grid;position:relative}.auth-shell:before{content:"";background:var(--ink);z-index:0;height:96px;position:fixed;top:0;left:0;right:0}.auth-brand{z-index:1;position:fixed;top:1.4rem;left:2rem}.brand-link{color:inherit;align-items:center;gap:.85rem;text-decoration:none;display:inline-flex}.brand-logo{object-fit:contain;flex:none;width:auto;height:52px;display:block}.brand-divider{background:#ffffff38;flex:none;width:1px;height:28px;display:inline-block}.brand-tag{font-family:var(--font-ui);letter-spacing:.18em;text-transform:uppercase;color:var(--text-on-dark-soft);white-space:nowrap;font-size:.72rem;font-weight:600}.glass-panel{background:hsl(var(--bg-card));border:1px solid hsl(var(--border-color));border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.card{z-index:1;grid-column:2;width:100%;position:relative}@media (width<=720px){.auth-shell{flex-direction:column;grid-template-columns:1fr;justify-content:flex-start;align-items:center;padding:120px 1.5rem 2rem;display:flex}.auth-shell:before{height:80px}.auth-brand{top:1rem;left:1.5rem}}.btn{font-family:var(--font-ui);border-radius:var(--radius);cursor:pointer;transition:all var(--transition-fast);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background:var(--brand);color:#fff;box-shadow:0 1px #0000000a}.btn-primary:hover{background:var(--brand-hover);border-color:var(--brand-hover);transform:translateY(-1px)}.btn-primary:active{background:var(--brand-strong);border-color:var(--brand-strong)}.btn-secondary{color:hsl(var(--text-primary));border:1px solid hsl(var(--border-color));background:0 0}.btn-secondary:hover{background:var(--brand);color:#fff;border-color:var(--brand);transform:translateY(-1px)}.btn-icon{border-radius:var(--radius);color:hsl(var(--text-secondary));background:0 0;border:1px solid #0000;padding:8px}.btn-icon:hover{background:hsl(var(--border-color));color:hsl(var(--text-primary))}.badge{text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;font-weight:700;font-family:var(--font-ui);border-radius:9999px;align-items:center;padding:4px 10px;display:inline-flex}.badge-new{background:hsla(var(--status-new) / .12);color:hsl(var(--status-new));border:1px solid hsla(var(--status-new) / .2)}.badge-open{background:hsla(var(--status-open) / .12);color:hsl(var(--status-open));border:1px solid hsla(var(--status-open) / .2)}.badge-stalled{background:hsla(var(--status-stalled) / .12);color:hsl(var(--status-stalled));border:1px solid hsla(var(--status-stalled) / .2)}.badge-resolved{background:hsla(var(--status-resolved) / .12);color:hsl(var(--status-resolved));border:1px solid hsla(var(--status-resolved) / .2)}.badge-rejected{background:hsla(var(--status-rejected) / .12);color:hsl(var(--status-rejected));border:1px solid hsla(var(--status-rejected) / .2)}.badge-p-low{background:hsla(var(--priority-low) / .08);color:hsl(var(--priority-low))}.badge-p-medium{background:hsla(var(--priority-medium) / .08);color:hsl(var(--priority-medium))}.badge-p-high{background:hsla(var(--priority-high) / .08);color:hsl(var(--priority-high))}.badge-p-critical{background:hsla(var(--priority-critical) / .08);color:hsl(var(--priority-critical));animation:2s infinite pulse}@keyframes pulse{0%{opacity:1}50%{opacity:.65}to{opacity:1}}.form-group{flex-direction:column;gap:8px;margin-bottom:20px;display:flex}.form-group label{font-family:var(--font-ui);color:hsl(var(--text-primary));font-size:.82rem;font-weight:600}.form-input,.form-select,.form-textarea{background:hsl(var(--bg-input));border:1px solid hsl(var(--border-color));color:hsl(var(--text-primary));border-radius:var(--radius);font-family:var(--font-sans);transition:all var(--transition-fast);box-sizing:border-box;outline:none;width:100%;padding:10px 14px;font-size:.92rem}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.topbar{background:var(--ink);border-bottom:1px solid var(--ink-line);justify-content:space-between;align-items:center;min-height:80px;padding:.75rem 2rem;display:flex}.account{align-items:center;gap:1rem;display:flex}.account-avatar{object-fit:cover;background:var(--brand);width:38px;height:38px;color:var(--text-on-brand);font-family:var(--font-ui);border-radius:50%;place-items:center;font-size:.95rem;font-weight:700;display:grid}.account-info{flex-direction:column;min-width:0;line-height:1.35;display:flex}.account-name{font-family:var(--font-ui);color:var(--text-on-dark);white-space:nowrap;font-size:.85rem;font-weight:600}.account-email{font-family:var(--font-ui);letter-spacing:.04em;color:var(--text-on-dark-soft);white-space:nowrap;text-transform:uppercase;font-size:.7rem}.topbar .btn-secondary{color:var(--text-on-dark);border-color:#ffffff38}.topbar .btn-secondary:hover{background:var(--brand);border-color:var(--brand);color:#fff}@media (width<=720px){.topbar{min-height:68px;padding:.65rem 1rem}.brand-logo{height:44px}.brand-divider,.brand-tag,.account-info{display:none}.account{gap:.5rem}.topbar .btn{padding:6px 12px;font-size:.78rem}}.ticket-table-container{border-radius:var(--radius-lg);border:1px solid hsl(var(--border-color));background:hsl(var(--bg-card));box-shadow:var(--shadow-sm);overflow-x:auto}.ticket-table{border-collapse:collapse;text-align:left;width:100%}.ticket-table th{font-family:var(--font-ui);color:hsl(var(--text-primary));border-bottom:1px solid hsl(var(--border-color));text-transform:uppercase;letter-spacing:.08em;background:#fbfbfb;padding:14px 16px;font-size:.78rem;font-weight:600}.ticket-table td{border-bottom:1px solid hsl(var(--border-color));color:hsl(var(--text-primary));vertical-align:middle;padding:14px 16px;font-size:.88rem}.ticket-table tr:last-child td{border-bottom:none}.ticket-table tr{transition:background var(--transition-fast)}.ticket-table tbody tr:hover{cursor:pointer;background:#fbfbfb}.ticket-detail-grid{grid-template-columns:1fr 340px;gap:24px;display:grid}@media (width<=900px){.ticket-detail-grid{grid-template-columns:1fr}}.timeline{flex-direction:column;gap:16px;margin-bottom:30px;display:flex}.timeline-item{border-radius:var(--radius-lg);border:1px solid hsl(var(--border-color));box-shadow:var(--shadow-xs);background:#fff;flex-direction:column;gap:6px;padding:16px;display:flex}.timeline-item.internal{background:var(--brand-soft);border-color:#e2626240}.timeline-item.system{border-color:hsl(var(--border-color));background:#fcfcfc;font-style:italic}.timeline-header{color:hsl(var(--text-secondary));justify-content:space-between;align-items:center;font-size:.78rem;display:flex}.timeline-author{color:hsl(var(--text-primary));font-weight:700;font-family:var(--font-ui)}.timeline-body{white-space:pre-wrap;word-break:break-word;font-size:.92rem;line-height:1.5}.app-layout{flex-direction:column;min-height:100vh;display:flex}.app-header{background:var(--ink);border-bottom:1px solid var(--ink-line);z-index:100;min-height:80px;box-shadow:var(--shadow-sm);border-radius:0;justify-content:space-between;align-items:center;margin-bottom:24px;padding:.75rem 2rem;display:flex;position:sticky;top:0}.header-logo{font-family:var(--font-ui);cursor:pointer;color:var(--text-on-dark);align-items:center;gap:.85rem;font-size:1.2rem;font-weight:700;display:flex}.header-logo img{object-fit:contain;width:auto;height:52px}.header-logo .brand-tag{color:var(--text-on-dark-soft)}.header-logo .brand-divider{background:#ffffff38}.header-actions{align-items:center;gap:16px;display:flex}.header-user{border-radius:var(--radius);color:var(--text-on-dark);font-size:.85rem;font-family:var(--font-ui);background:#ffffff14;border:1px solid #ffffff0f;align-items:center;gap:8px;padding:8px 14px;font-weight:500;display:flex}.app-main-content{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:0 24px 40px}.sync-log-banner{border-radius:var(--radius-lg);background:var(--brand-soft);border:1px solid #e2626240;margin-bottom:20px;padding:16px}.sync-log-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.sync-log-header h4{color:var(--brand)}.sync-log-list{font-family:var(--font-sans);flex-direction:column;gap:4px;max-height:150px;padding:6px;font-size:.85rem;list-style:none;display:flex;overflow-y:auto}.queue-layout{grid-template-columns:280px 1fr;gap:24px;display:grid}@media (width<=850px){.queue-layout{grid-template-columns:1fr}}.filter-sidebar{background:hsl(var(--bg-card));border:1px solid hsl(var(--border-color));border-radius:var(--radius-lg);height:fit-content;box-shadow:var(--shadow-xs);flex-direction:column;gap:16px;padding:20px;display:flex}.sidebar-section-title{font-family:var(--font-ui);border-bottom:1px solid hsl(var(--border-color));text-transform:uppercase;letter-spacing:.08em;color:hsl(var(--text-primary));align-items:center;gap:8px;margin-bottom:8px;padding-bottom:10px;font-size:.82rem;font-weight:700;display:flex}.sidebar-filter-group{flex-direction:column;gap:6px;display:flex}.sidebar-filter-group label{text-transform:uppercase;letter-spacing:.08em;color:hsl(var(--text-secondary));font-size:.72rem;font-weight:700;font-family:var(--font-ui)}.queue-main{flex-direction:column;gap:16px;display:flex}.queue-header-controls{justify-content:space-between;align-items:center;gap:16px;display:flex}.search-box{width:320px}.queue-stats{color:hsl(var(--text-secondary));font-size:.85rem;font-weight:500}.table-message{text-align:center;color:hsl(var(--text-secondary));padding:40px}.ticket-id-cell{font-family:var(--font-ui);color:var(--brand);font-weight:700}.ticket-title-wrapper{align-items:center;gap:10px;display:flex}.ticket-title-text{color:hsl(var(--text-primary));font-weight:600}.itil-type-label{font-size:.75rem;font-weight:700;font-family:var(--font-ui);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:6px;display:inline-flex}.itil-type-label.incident{color:#f97316}.itil-type-label.request{color:#1d4ed8}.detail-back-bar{align-items:center;gap:20px;margin-bottom:20px;display:flex}.detail-title-info{flex-direction:column;display:flex}.detail-title-info h3{font-size:1.4rem;font-weight:700}.email-value{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:inline-block;overflow:hidden}.comment-form{border-radius:var(--radius-lg);border:1px solid hsl(var(--border-color));background:hsl(var(--bg-card));box-shadow:var(--shadow-sm);margin-top:20px;overflow:hidden}.comment-form-tabs{border-bottom:1px solid hsl(var(--border-color));background:#fbfbfb;display:flex}.comment-form-tabs .tab{color:hsl(var(--text-secondary));font-family:var(--font-ui);cursor:pointer;transition:var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:.82rem;font-weight:600;display:flex}.comment-form-tabs .tab.active{color:var(--brand);border-bottom-color:var(--brand);background:#fff}.comment-form-tabs .tab-internal.active{color:#f59e0b;border-bottom-color:#f59e0b}.comment-form-body{flex-direction:column;gap:16px;padding:16px;display:flex}.comment-form-actions{justify-content:flex-end;display:flex}.internal-indicator{color:#f59e0b;text-transform:uppercase;letter-spacing:.05em;background:#f59e0b26;border-radius:4px;align-items:center;gap:4px;margin-left:10px;padding:2px 6px;font-size:.65rem;font-weight:800;display:inline-flex}.detail-meta-sidebar{background:hsl(var(--bg-card));border:1px solid hsl(var(--border-color));border-radius:var(--radius-lg);height:fit-content;box-shadow:var(--shadow-xs);flex-direction:column;gap:16px;padding:20px;display:flex}.meta-item{flex-direction:column;gap:4px;display:flex}.meta-label{text-transform:uppercase;letter-spacing:.08em;color:hsl(var(--text-secondary));font-size:.72rem;font-weight:700;font-family:var(--font-ui)}.meta-value{color:hsl(var(--text-primary));font-size:.9rem;font-weight:600}.meta-divider{background:hsl(var(--border-color));height:1px;margin:8px 0}.clients-grid{grid-template-columns:400px 1fr;gap:24px;display:grid}@media (width<=800px){.clients-grid{grid-template-columns:1fr}}.client-form-container,.client-list-container{background:hsl(var(--bg-card));border:1px solid hsl(var(--border-color));border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:24px}.client-form-container h4,.client-list-container h4{margin-bottom:16px;font-size:1.1rem;font-weight:700}.client-cards{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin-top:10px;display:grid}.client-card{border:1px solid hsl(var(--border-color));border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);background:#fbfbfb;flex-direction:column;gap:12px;padding:16px;display:flex}.client-card-header{font-weight:700;font-family:var(--font-ui);align-items:center;gap:8px;display:flex}.client-domains-list{flex-wrap:wrap;gap:6px;display:flex}.domain-pill{background:var(--brand-soft);color:var(--brand);border-radius:var(--radius);font-size:.72rem;font-family:var(--font-ui);border:1px solid #e2626233;padding:2px 6px;font-weight:500}.w-full{width:100%}.font-mono{font-family:SFMono-Regular,Consolas,Monaco,monospace}.btn-disabled{opacity:.5;cursor:not-allowed}.animate-spin{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.text-teal{color:#0d9488!important}.ticket-table th:nth-child(2),.ticket-table td:nth-child(2){text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.ticket-table th:nth-child(3),.ticket-table td:nth-child(3){text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.ticket-table th:nth-child(4),.ticket-table td:nth-child(4){text-overflow:ellipsis;white-space:nowrap;max-width:320px;overflow:hidden}@media (width<=600px){.queue-header-controls{flex-direction:column;align-items:stretch;gap:12px}.search-box{width:100%!important}.queue-stats{text-align:right}.comment-form-tabs{flex-direction:column}.comment-form-tabs .tab{border-bottom:2px solid #0000;border-right:none}.detail-back-bar{flex-direction:column;align-items:flex-start;gap:12px}}
