*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f4f7fb;--panel:#fbfcfe;--card:#fff;--border:#e6ebf2;--text:#0f172a;--muted:#64748b;--green:#16a34a;--green-soft:#dcfce7;--red:#dc2626;--red-soft:#fee2e2;--blue:#2563eb;--blue-soft:#dbeafe;--shadow:0 1px 2px #0f172a0a, 0 10px 30px #0f172a0f;--radius-sm:12px;--radius-md:20px;--transition:.18s ease}html,body,#root{width:100%;height:100%}body{background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,sans-serif;overflow-x:hidden}.app{grid-template-columns:360px 1fr 320px;width:100vw;height:100vh;display:grid;overflow:hidden}.sidebar{background:var(--panel);border-right:1px solid var(--border);padding:24px;overflow-y:auto}.sidebar:last-child{border-right:none;border-left:1px solid var(--border)}.main{grid-template-rows:1fr 1fr;gap:22px;padding:24px;display:grid;overflow-y:auto}.panel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow);padding:24px;overflow-y:auto}h1{letter-spacing:-1px;margin-bottom:14px;font-size:32px;font-weight:800}h2{color:var(--text);margin-bottom:18px;font-size:22px;font-weight:700}h3{margin-bottom:10px;font-size:15px;font-weight:700}p{color:var(--muted)}label{color:var(--muted);margin-bottom:8px;font-size:13px;font-weight:600;display:block}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow);padding:18px;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-3px);box-shadow:0 8px 20px #0f172a14,0 20px 40px #0f172a1a}input,select,textarea{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);background:#fff;outline:none;padding:12px 14px;font-size:14px;transition:border .2s,box-shadow .2s}input:focus,select:focus,textarea:focus{border-color:#2563eb59;box-shadow:0 0 0 4px #2563eb1a}textarea{resize:vertical;min-height:100px}.readonlyField{pointer-events:none;opacity:.75;background:#f8fafc}.readonlyText{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--muted);background:#f8fafc;padding:12px 14px;font-size:14px}.group{margin-bottom:18px}.divGroup{align-items:flex-end;gap:18px;display:flex}.groupMini{flex:1}button{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:12px 16px;font-size:14px;font-weight:700;transition:transform .15s,opacity .15s,background .2s;display:flex;box-shadow:0 4px 12px #2563eb26}button:hover{background:#1d4ed8;transform:translateY(-1px)}button:active{transform:scale(.98)}button:disabled{opacity:.4;cursor:not-allowed}.botonForm{width:180px;margin:20px auto 0}.ticketItem{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:16px;margin-bottom:14px;padding:16px;transition:transform .18s,box-shadow .18s,border-color .18s;box-shadow:0 1px 2px #0f172a0a}.ticketItem:hover{border-color:#dbeafe;transform:translateY(-2px);box-shadow:0 8px 20px #0f172a14}.ticketTitle{color:var(--text);margin-bottom:10px;font-size:15px;font-weight:700}.ticketMeta{color:var(--muted);justify-content:space-between;gap:10px;margin-top:6px;font-size:12px;display:flex}.ticketDetail{flex-direction:column;height:100%;display:flex}.ticketDetail__input{gap:10px;margin-bottom:20px;display:flex}.ticketDetail__input input{flex:1}.ticketDetail__comments{flex-direction:column;gap:12px;display:flex}.ticketDetail__comment{border:1px solid var(--border);background:#fff;border-radius:16px;padding:14px;box-shadow:0 1px 2px #0f172a0a}.ticketDetail__comment p{color:var(--text);overflow-wrap:anywhere;margin-bottom:10px}.ticketDetail__comment small{color:var(--muted);font-size:12px}.ticketDetail__files{flex-direction:column;gap:6px;margin-bottom:8px;display:flex}.customFileButton{width:48px}.fileButton{color:var(--blue);box-shadow:none;background:0 0;border:none;justify-content:flex-start;padding:0;font-size:13px}.fileButton:hover{background:0 0;text-decoration:underline}.fileName{color:var(--muted);align-items:center;font-size:13px;display:flex}.actionsContainer{flex-direction:column;gap:12px;display:flex}.actionBtn{color:var(--text);border:1px solid var(--border);background:#fff;box-shadow:0 1px 2px #0f172a0a}.actionBtn:hover{background:#f8fafc}.actionBtn.primary{background:var(--blue);color:#fff;border:none}.actionBtn.primary:hover{background:#1d4ed8}.modalOverlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:999;background:#0f172a59;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modalContent{border:1px solid var(--border);background:#fff;border-radius:24px;flex-direction:column;gap:14px;width:420px;padding:28px;display:flex;box-shadow:0 20px 50px #0f172a2e}.loginContainer{background:var(--bg);flex-direction:column;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex}.loginContainer input{width:320px;margin-bottom:14px}.invisible{display:none!important}.muted{color:var(--muted)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-thumb{background:#d7dee8;border-radius:999px}::-webkit-scrollbar-track{background:0 0}@media (width<=1300px){.app{grid-template-columns:300px 1fr 280px}}@media (width<=1100px){.app{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid var(--border)}.sidebar:last-child{border-left:none}.main{grid-template-rows:auto auto}}@media (width<=768px){.main,.sidebar,.panel{padding:18px}.divGroup,.ticketDetail__input{flex-direction:column}.botonForm{width:100%}}.filtersContainer{flex-direction:column;gap:12px;margin-bottom:20px;display:flex}.ticketTop{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px;display:flex}.ticketBottom{justify-content:space-between;align-items:center;margin-top:16px;display:flex}.ticketUser{color:var(--muted);margin-top:4px;font-size:12px}.ticketDescription{color:var(--muted);font-size:13px;line-height:1.5}.ticketDate{color:var(--muted);font-size:12px}.status,.badge,.priority{border-radius:999px;width:fit-content;padding:7px 12px;font-size:11px;font-weight:700}.status.pending,.badge.pending{background:var(--blue-soft);color:var(--blue)}.status.progress,.badge.progress{color:#d97706;background:#fef3c7}.status.closed,.badge.closed{background:var(--green-soft);color:var(--green)}.priority.high{background:var(--red-soft);color:var(--red)}.priority.medium{color:#d97706;background:#fef3c7}.priority.low{background:var(--green-soft);color:var(--green)}.sectionHeader{margin-bottom:20px}.descripcionField{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;min-height:42px;color:var(--text);cursor:pointer;transition:var(--transition);background:#f8fafc;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.descripcionField:hover{border-color:var(--primary);background:#f8fafc;box-shadow:0 0 0 2px #f8fafc}.descripcionFieldReadonly{color:var(--muted)}.descripcionFieldReadonly:hover{border-color:var(--primary)}.descripcionFieldText{white-space:nowrap;text-overflow:ellipsis;text-align:left;flex:1;overflow:hidden}.descripcionFieldAction{color:var(--primary);flex-shrink:0;font-size:11px;font-weight:700}.descripcionModalOverlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:999999;background:#f8fafc;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.descripcionModalContent{background:var(--panel);border:solid 1px var(--border);border-radius:var(--radius-md);width:min(800px,95vw);max-height:90vh;box-shadow:var(--shadow-md);flex-direction:column;display:flex;overflow:hidden}.descripcionModalHeader{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;padding:18px 20px;display:flex}.descripcionModalHeader h2{margin:0}.descripcionModalSubtitle{color:var(--muted);margin-top:5px}.descripcionModalClose{border:solid 1px var(--border);width:38px;height:38px;color:var(--muted);background:0 0;justify-content:center;align-items:center;padding:0;font-size:26px;display:flex}.descripcionModalClose:hover{color:var(--primary);background:#f8fafc}.descripcionTextarea{resize:vertical;border:solid 1px var(--border);border-radius:var(--radius-sm);width:calc(100% - 40px);min-height:330px;color:var(--text);transition:var(--transition);background:#f8fafc;outline:none;margin:20px;padding:15px;font-family:inherit;font-size:14px;line-height:1.6}.descripcionTextarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #f8fafc}.descripcionTextarea[readonly]{color:var(--muted);cursor:default;background:#f8fafc}.descripcionModalFooter{border-top:solid 1px var(--border);justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.descripcionCounter{color:var(--muted);font-size:11px}.descripcionModalActions{gap:10px;display:flex}.descripcionCancelButton{background:var(--card);color:var(--text)}.descripcionCancelButton:hover{background:var(--border)}.descripcionModalOverlay{animation:.18s fadeModal}.descripcionModalContent{animation:.18s zoomModal}@keyframes fadeModal{0%{opacity:0}to{opacity:1}}@keyframes zoomModal{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (width<=768px){.descripcionModalContent{width:96vw;max-height:95vh}.descripcionTextarea{width:calc(100% - 20px);min-height:250px;margin:10px}.descripcionModalFooter{flex-direction:column;align-items:stretch;gap:15px}.descripcionModalActions{width:100%}.descripcionModalActions button{flex:1}}
