/* Soportech Tickets — technological visual system */
:root{
  --ink:#0b1b33;--muted:#62718a;--line:#dce7f4;--paper:#f3f7fc;--white:#fff;
  --lime:#0878ed;--lime-dark:#005fc8;--blue:#0878ed;--cyan:#20c8f7;
  --orange:#f59e0b;--red:#ef4444;--purple:#7657e8;
  --shadow:0 12px 34px rgba(13,54,105,.08);--glow:0 0 0 3px rgba(8,120,237,.14)
}
*{scrollbar-width:thin;scrollbar-color:#b7cae1 transparent}
body{background:
  radial-gradient(circle at 82% 5%,rgba(32,200,247,.09),transparent 25rem),
  linear-gradient(135deg,#f7faff 0%,#eef4fb 100%);min-height:100vh}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.25;background-image:linear-gradient(rgba(22,111,202,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(22,111,202,.035) 1px,transparent 1px);background-size:34px 34px}
.app-shell{position:relative}
.sidebar{width:260px;padding:24px 17px 18px;background:
  radial-gradient(circle at 25% 0,rgba(19,135,255,.24),transparent 17rem),
  linear-gradient(180deg,#071a35 0%,#061226 100%);border-right:1px solid rgba(87,177,255,.17);box-shadow:14px 0 50px rgba(4,19,42,.13)}
.brand{padding:3px 9px 27px;gap:11px;border-bottom:1px solid rgba(133,195,255,.13);margin-bottom:19px}
.brand-logo-wrap{width:47px;height:47px;border-radius:13px;border:1px solid rgba(80,177,255,.34);box-shadow:0 7px 24px rgba(0,119,255,.22)}
.brand strong{font-size:19px;letter-spacing:-.4px}.brand small{color:#47b9ff;letter-spacing:3px;font-weight:700}
.sidebar nav{gap:6px}.nav-item{position:relative;overflow:hidden;padding:12px 14px;color:#91a7c2;border:1px solid transparent;border-radius:10px;transition:.2s ease}
.nav-item span{color:#6baee9;filter:drop-shadow(0 0 5px rgba(43,159,255,.3))}
.nav-item:hover{background:rgba(32,132,233,.1);color:#dcefff;border-color:rgba(80,174,255,.12);transform:translateX(2px)}
.nav-item.active{background:linear-gradient(90deg,rgba(10,117,232,.31),rgba(11,91,184,.14));color:#fff;border-color:rgba(72,170,255,.25);box-shadow:inset 0 0 20px rgba(15,126,241,.08)}
.nav-item.active:before{height:29px;background:linear-gradient(#37dbff,#0878ed);box-shadow:0 0 12px #1baaf4}
.nav-item b{background:rgba(23,145,255,.19);color:#9dd9ff;border:1px solid rgba(63,171,255,.2)}
.sidebar-help{background:linear-gradient(135deg,rgba(17,87,158,.26),rgba(8,38,76,.45));border-color:rgba(88,176,255,.2);box-shadow:inset 0 1px rgba(255,255,255,.04)}
.sidebar-help small{color:#8fa7c3}.sidebar-help button{background:rgba(18,124,226,.2);border:1px solid rgba(70,173,255,.24);color:#cbeaff;cursor:pointer}
.profile-mini{border-top:1px solid rgba(133,195,255,.12);margin-top:14px}.avatar{background:linear-gradient(135deg,#0878ed,#26c6f6);color:white;box-shadow:0 4px 14px rgba(0,119,238,.22)}
main{margin-left:260px}.topbar{height:76px;background:rgba(255,255,255,.82);border-bottom:1px solid rgba(173,197,225,.55);backdrop-filter:blur(18px);padding:0 38px;position:sticky;top:0;z-index:4;box-shadow:0 5px 22px rgba(25,69,116,.035)}
.search{background:#f4f8fc;border:1px solid #dce7f4;border-radius:12px;padding:9px 13px;transition:.2s}.search:focus-within{background:white;border-color:#76b9fb;box-shadow:var(--glow)}.search span{color:#1687ef}.search input{background:transparent;color:var(--ink)}
.icon-btn{border-color:#d8e5f3;border-radius:10px;color:#286394;box-shadow:0 3px 9px rgba(27,75,123,.04)}
.role-select select{border-color:#d8e5f3;border-radius:10px;color:#185a98;box-shadow:0 3px 9px rgba(27,75,123,.04)}
.view{padding:38px 40px}.page-heading{margin-bottom:26px}.page-heading h1{font-size:29px;letter-spacing:-.8px;color:#091c36}.page-heading p{color:#6a7990}.eyebrow{color:#0878ed!important;letter-spacing:1.8px!important}
.primary{position:relative;overflow:hidden;background:linear-gradient(135deg,#0878ed,#0062cb);color:white;border:1px solid rgba(0,78,170,.3);border-radius:10px;box-shadow:0 8px 20px rgba(8,120,237,.2);transition:.2s}
.primary:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.2),transparent 75%);transform:translateX(-120%);transition:.5s}.primary:hover{background:linear-gradient(135deg,#168cf8,#066bcf);transform:translateY(-1px);box-shadow:0 10px 25px rgba(8,120,237,.27)}.primary:hover:after{transform:translateX(120%)}
.panel,.stat,.asset-card,.client-card,.maintenance-card,.inventory-summary>div,.maintenance-summary>div,.profile-stats>div{border-color:rgba(184,207,232,.72);background:rgba(255,255,255,.91);box-shadow:var(--shadow);backdrop-filter:blur(7px)}
.stat{border-radius:15px;padding:19px}.stat:before{width:4px}.stat:after{content:"";position:absolute;width:80px;height:80px;border-radius:50%;right:-34px;top:-37px;background:color-mix(in srgb,var(--stat-color) 9%,transparent)}.stat-top i{border-radius:9px}.stat strong{font-size:27px;color:#0a2342}
.panel{border-radius:15px;overflow:hidden}.panel-head{padding:19px 21px;background:linear-gradient(180deg,rgba(248,251,255,.9),rgba(255,255,255,.7))}.panel h2{color:#0c2849}.link{color:#0878ed}.ticket-row{padding:15px 21px}.ticket-row:hover{background:#f3f9ff}.status.asignado{color:#0878ed}
.timeline i.green{background:#e7f9f1}.timeline i.blue{background:#e6f3ff;color:#0878ed}.timeline i.purple{background:#f0ecff}
.quick-grid button{border-color:#d8e6f4;border-radius:13px;box-shadow:0 7px 20px rgba(18,65,115,.05);transition:.2s}.quick-grid button:hover{border-color:#80bdf5;transform:translateY(-2px);box-shadow:0 12px 26px rgba(8,88,171,.1)}.quick-grid i{background:linear-gradient(135deg,#e3f2ff,#d9f8ff);color:#0878ed}
.filters input,.filters select{border-color:#d5e3f1;border-radius:10px;box-shadow:0 3px 9px rgba(27,75,123,.025);outline:0}.filters input:focus,.filters select:focus{border-color:#76b9fb;box-shadow:var(--glow)}
th{background:#f5f9fd;color:#56708c;letter-spacing:.8px}tbody tr{transition:.15s}tbody tr:hover{background:#f4f9ff}td{border-color:#e4edf6}.row-action{background:#eaf4fe;color:#1769aa}
.inventory-summary>div,.maintenance-summary>div,.profile-stats>div{border-radius:13px}.inventory-summary span,.maintenance-summary span{background:linear-gradient(135deg,#e2f2ff,#dcf9ff);color:#0878ed}.inventory-summary b,.maintenance-summary b,.profile-stats b{color:#0c2849}
.asset-card,.client-card,.maintenance-card{border-radius:15px;transition:.2s}.asset-card:hover,.client-card:hover,.maintenance-card:hover{border-color:#8bc5f8;transform:translateY(-3px);box-shadow:0 17px 36px rgba(8,88,171,.12)}.asset-icon{background:linear-gradient(135deg,#e2f2ff,#d8f7ff);color:#0878ed}.client-avatar{background:linear-gradient(135deg,#082c58,#0878ed);color:#fff;box-shadow:0 6px 18px rgba(8,120,237,.22)}
.badge{border-radius:20px}.badge.baja{background:#e8f5ff;color:#1773b9}.status:before{box-shadow:0 0 0 3px currentColor;transform:scale(.48)}
dialog{border:1px solid rgba(167,200,233,.65);border-radius:18px;box-shadow:0 30px 90px rgba(5,31,65,.3);background:rgba(255,255,255,.98)}dialog::backdrop{background:rgba(3,18,39,.68);backdrop-filter:blur(7px)}.modal-head{border-bottom:1px solid #e5eef7;padding-bottom:16px}.close{background:#eaf3fc;color:#34678f;cursor:pointer}.form-grid label{color:#38526d}.form-grid input,.form-grid select,.form-grid textarea{border-color:#d4e2f0;border-radius:10px;outline:0;background:#fbfdff}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{background:white;border-color:#6eb6f7;box-shadow:var(--glow)}.secondary{border-color:#d4e2f0;border-radius:10px;color:#345979}.toast{background:#071d38;border-left-color:#22bdf2;box-shadow:0 13px 34px rgba(3,29,63,.24)}
.role-pill.admin{background:#e2f2ff;color:#0968bc}.secure-access span{background:#e3f3ff;color:#0878ed}.forgot{color:#0878ed}
.login-screen{background:radial-gradient(circle at 18% 12%,rgba(19,141,255,.27),transparent 26rem),linear-gradient(145deg,#06152c,#08284f);position:fixed;overflow:hidden}.login-screen:before,.login-screen:after{content:"";position:absolute;border:1px solid rgba(59,172,255,.13);border-radius:50%;pointer-events:none}.login-screen:before{width:530px;height:530px;left:-170px;bottom:-270px}.login-screen:after{width:380px;height:380px;right:-140px;top:-190px}.login-brand,.login-card{position:relative;z-index:1}.login-brand img{border-radius:20px;box-shadow:0 25px 75px rgba(0,9,27,.4)}.login-brand p{color:#91b6d8}.login-card{border:1px solid rgba(134,199,255,.35);border-radius:21px;box-shadow:0 30px 90px rgba(0,10,28,.42)}.login-card input:focus{border-color:#64b2f8;box-shadow:var(--glow)}
.temporary-password-field button,.edit-client,.edit-user,.view-user{border-color:#b9d8f3;background:#edf7ff;color:#1268ad}
@media(max-width:1050px){.sidebar{width:235px}main{margin-left:235px}.view{padding:32px 28px}.topbar{padding-inline:28px}}
@media(max-width:760px){.sidebar{width:270px;box-shadow:20px 0 60px rgba(2,18,38,.35)}main{margin-left:0}.topbar{height:67px;padding:0 16px}.view{padding:25px 16px}.page-heading h1{font-size:25px}.page-heading{flex-direction:column;align-items:stretch}.page-heading>.primary{width:100%}.search{width:calc(100vw - 125px)}.top-actions .icon-btn:first-child{display:none}.panel,.stat,.asset-card,.client-card,.maintenance-card{border-radius:13px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.primary:after{display:none}}
