article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display: block}
/*-- ALL --*/
*{box-sizing:border-box}
body{font-size:13px;font-family: 'Quicksand';background:#fff;color:#42484e;margin:0;height:100%;min-height:100%}
h1{font-size:20px;font-weight:400;color: #4c4e53}
h2{font-size:17px;font-weight:400;color: #4c4e53}
h3{font-size:15px;font-weight:400;}
h4{font-size:12px;font-weight:400;}
b, strong {font-weight: 600;}
a{text-decoration:none;color:#ff8a00}
a[href^="mailto:"]{text-decoration:none;color:#ff8a00}
.color_link{color: #ff8a00 !important;}
img{border:0 none}
button,select,input[type='radio'],input[type='checkbox']{cursor:pointer}
button:disabled{opacity:0.3;background: #cfcfcf;color: #545454}
input,select{border-radius:20px;-webkit-border-radius:20px;-moz-border-radius:20px;}
input,select,textarea{color: #3a3b3d;}
input:disabled{background:#eee}
input[readonly] {background: #fbfbff;border-radius: 8px;}
input[type='radio']{margin:13px 3px}
button{margin:0;padding:5px 15px;background: none;border: none}
textarea.textarea_form{display:block;width:100%;box-sizing:border-box;padding:6px 12px;font-size:14px;line-height:1.42857143;color:#555;background-color:#fff;border:1px solid #ccc;border-radius:20px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}
textarea.textarea_form_disabled{width: 100%;background: none;border: none;cursor: context-menu;box-sizing: border-box;resize: none}
::-webkit-input-placeholder { /* Chrome/Opera/Safari */color: #bdbdbd}
::-moz-placeholder { /* Firefox 19+ */color: #bdbdbd}
:-ms-input-placeholder { /* IE 10+ */color: #bdbdbd}
:-moz-placeholder { /* Firefox 18- */color: #bdbdbd}
td{padding: 5px 10px;}
tr:nth-child(odd) {background-color:#ffffff}
tr:nth-child(even) {background-color:#fbfbff}
hr{border: 0;border-top-color: currentcolor;border-top-style: none;border-top-width: 0px;border-bottom-color: currentcolor;border-bottom-style: none;border-bottom-width: 0px;border-top: 1px solid #ddd;border-bottom: 1px solid #fafafa}
td button{background: -webkit-linear-gradient(#FFF,#F9F9F9);background: -moz-linear-gradient(#FFF,#F9F9F9);background: linear-gradient(#FFF,#F9F9F9);padding: 7px;border-radius: 20px;width: 35px;border: 1px solid #c3c3c3;color: #4c4d5f;}
.hide{display:none !important}
.readonly{filter: grayscale(100%);background: #f7f7f7 !important;opacity: 0.7 !important;}
.fit-content{width:fit-content}
.flex{display: flex;gap:1rem}
.flex.mid{align-items: center;}
.flex-center{justify-content: center;}
.flex-end{justify-content: flex-end;}
.flex-space-between{justify-content: space-between;}
.flex-responsive{flex-direction: row;}
.flex-wrap{flex-wrap:wrap}
.flex.flex-acciones{gap:.4rem}
.flex.flex-acciones > div{width:auto}
.grid{display: grid;gap:1rem;margin-bottom: 20px;}
.grid-x2{grid-template-columns: repeat(2, 1fr)}
.grid-x3{grid-template-columns: repeat(3, 1fr)}
.grid-x4{grid-template-columns: repeat(4, 1fr)}
.separador{margin-top:18px}
.img_circle{border-radius: 100%;border: 2px solid #f0f0f0;object-fit: cover;aspect-ratio: 1 / 1;}
.no-margin{margin:0 !important}
.no-padding{padding:0 !important}
.padding{padding:10px !important}
.abs-r{right:8px}
.abs-b{bottom:8px}
.abs-t{top:8px}

/* DOTS LOADING */
span.mensaje-busqueda{display: block;text-align: center;margin-top: 10px;}
.loading-dots span {font-size: 16px;margin: 0 2px;font-weight: 600;animation: loading-animation 1.5s infinite;display: inline-block;}
.loading-dots span:nth-child(1) {animation-delay: 0s;}
.loading-dots span:nth-child(2) {animation-delay: 0.2s;}
.loading-dots span:nth-child(3) {animation-delay: 0.4s;}

@keyframes loading-animation {
	0% { opacity: 0.2; transform: translateY(0px); scale(0.5); }
	50% { opacity: 1; transform: translateY(-5px); scale(1.15); }
	100% { opacity: 0.2; transform: translateY(0px); scale(0.5); }
}

/* DESTACAR MEJOR */
.destacar-mejor {color: #f5c518;animation: pulse 1.2s infinite;}
.box-sugerencia {text-align: left;background: #fffcf8;border: 1px solid #fff0bb;border-radius: 10px;padding: 5px 6px;}
@keyframes pulse {
    0%   { transform: scale(1); }
    50%  { transform: scale(1.15); }
    100% { transform: scale(1); }
}

/* CATEGS Y SUB CATEGS --*/
ul.subcategs {margin: 5px 8px 0;}
ul.subcategs li {margin-bottom: 5px;}
ul.subcategs li a {padding: 5px;}

#error{color:#fff}
#error h1{color:#fff;font-size: 155pt;font-weight: 400;margin-bottom: 0px}
#error h2{color:#fff;font-size: 35pt;margin: 0}
#error p{font-size:14pt}
#error .btn{margin-bottom:40px}

.text_red{color: #df2525}
.text_gray{color: #818181}
.text_green{color: #618d0d}
.text_yellow{color: #efaf20}

.msg_store{display: block;width: 100%;font-size: 10pt;text-align: center;margin: 0 0 20px;padding: 20px 10px}
.msg_store.success{background: #d0e1af;border: 1px solid #78a720;color: #4d6a16}
.msg_store.success a{color: #000}
.msg_store.error{background: #e1afaf;border: 1px solid #a72020;color: #6a1616}

/*-- GLOBALES --*/
.floatLeft{float: left !important;}
.floatRight{float: right !important;}
.marginCenter{margin:0 auto !important}
.left{text-align:left !important}
.center{text-align:center !important}
.right{text-align:right !important}
.align-top{vertical-align:top !important}
.align-middle{vertical-align:middle !important}
.pointer{cursor:pointer !important}
.disabled{opacity:0.2}
.actived:hover{opacity:0.8;transition: 0.3s}
.rounded{border-radius:10px;-webkit-border-radius:10px;-moz-border-radius:10px}
.clear{clear:both}
.dashed_line{text-align: left;border-bottom: 1px solid #e9e9e9;letter-spacing: 0px;margin: 0 0 25px;}
.dashed_line > i{background: #d5d6e5;padding: 2px;width: 20px;height: 20px;border-radius: 100%;color: #fff;font-size: 13px;text-align: center;line-height: 20px;margin-right: 5px}
.solid_white_line{border-bottom:2px solid #fff}
.nomargin{margin:0}
.nopadding{padding:0}
.col-2{display: inline-block;width: 49.5%;}

.section_header{display: flex;padding: 0;border-bottom: none;margin-bottom:30px;justify-content: space-between;align-items: center;}
.section_header_title{margin: 0 16px 0 0;padding: 3px 0;font-size: 1.3rem;line-height: 1.3;font-weight: 400}
.section_header_title i {color: #afafc5;text-align: center;margin-right: 8px;}
.planner-actualizado{display:block;font-size:11.5px;color:#8a93a5;margin:2px 16px 0 0;white-space:nowrap;}
.planner-actualizado i{margin-right:4px;}
.section_header hr {-ms-grid-row-align: center;align-self: center;flex-grow: 1;height: 1px;margin: 10px 10px}
.section_header_menu{display: flex;flex-direction: row;align-items: center;gap: 0.5em;}
.section_header_menu span{cursor:pointer}
.section_header_menu img{max-width: 120px;}

.section_header_menu .panel-minibtns{margin:0}

/*-- INSTALL --*/
#install{display: flex;align-items:flex-start;justify-content:center;width: 45%;background: #fff;position: relative;overflow-y: auto;padding: 2% 5%;box-sizing: border-box;box-shadow: 7px 0 10px rgb(0 0 0 / 20%);z-index: 9;}

/*-- LOGIN --*/
body.home{background:none;background-color:#0a0a0a;width:100%;display:inherit;overflow:hidden}
.wrapper{width:100%;height: 100%}

/* ============================================
   LOGIN — Fondo fullscreen con rubro
   ============================================ */
.login-bg{position:fixed;inset:0;z-index:0;background-size:cover;background-position:center;background-repeat:no-repeat}
.login-bg-overlay{position:fixed;inset:0;z-index:1;background:linear-gradient(135deg,rgba(0,0,0,0.75) 0%,rgba(0,0,0,0.45) 40%,rgba(0,0,0,0.25) 100%)}

.wrapper_login{display:flex;width:100%;height:100vh;align-items:center;justify-content:space-between;padding:0 8%;position:relative;z-index:2;box-sizing:border-box}

/* Branding izquierdo */
.login-brand{flex:1;max-width:480px;padding-right:60px}
.login-brand-logo{margin-bottom:28px}
.login-brand-logo img{max-width:200px;max-height:120px;filter:drop-shadow(0 2px 12px rgba(0,0,0,0.4))}
.login-brand-tagline{font-size:2.2rem;font-weight:700;line-height:1.2;margin-bottom:14px;letter-spacing:-0.5px;color:#fff}
.login-brand-tagline span{background:linear-gradient(135deg,#ffae16,#ff5e00);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.login-brand-description{font-size:0.95rem;font-weight:400;color:rgba(255,255,255,0.65);line-height:1.6;max-width:380px}

/* Tarjeta login glass */
.login-card-wrapper{flex-shrink:0}
.login-card{width:400px;padding:44px 38px;background:rgba(255,255,255,0.08);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,0.12);border-radius:24px;box-shadow:0 8px 32px rgba(0,0,0,0.3),inset 0 1px 0 rgba(255,255,255,0.1);box-sizing:border-box}
.login-card-logo-mobile{display:none;text-align:center;margin-bottom:24px}
.login-card-logo-mobile img{max-width:180px;max-height:100px;filter:drop-shadow(0 2px 10px rgba(0,0,0,0.3))}
.login-card-title{font-size:1.5rem;font-weight:700;color:#fff;margin-bottom:4px}
.login-card-subtitle{font-size:0.85rem;color:rgba(255,255,255,0.45);margin-bottom:28px;font-weight:400}

/* Form login */
.form-signin{margin:0}
.form-group-login{position:relative;margin-bottom:18px}
.form-group-login label{display:block;font-size:0.72rem;font-weight:600;letter-spacing:0.8px;text-transform:uppercase;color:rgba(255,255,255,0.45);margin-bottom:7px}
.input-wrapper-login{position:relative}
.input-icon-login{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:rgba(255,255,255,0.3);pointer-events:none;transition:color 0.3s}
.input-login-glass{width:100%;padding:14px 16px 14px 48px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);border-radius:14px;color:#fff;font-family:'Quicksand',sans-serif;font-size:0.95rem;font-weight:500;outline:none;transition:0.4s cubic-bezier(0.4,0,0.2,1);box-sizing:border-box}
.input-login-glass:focus{background:rgba(255,255,255,0.1);border-color:#f08817;box-shadow:0 0 0 3px rgba(240,136,23,0.15)}
.input-login-glass:focus ~ .input-icon-login,
.input-login-glass:focus + .input-icon-login{color:#f08817}
.input-login-glass::placeholder{color:rgba(255,255,255,0.25);font-weight:400}
.input-login-glass:-webkit-autofill,
.input-login-glass:-webkit-autofill:hover,
.input-login-glass:-webkit-autofill:focus,
.input-login-glass:-webkit-autofill:active{-webkit-text-fill-color:#fff !important;caret-color:#fff;border:1px solid rgba(255,255,255,0.1) !important;-webkit-box-shadow:0 0 0 1000px rgba(255,255,255,0.06) inset !important;box-shadow:0 0 0 1000px rgba(255,255,255,0.06) inset !important;transition:background-color 9999s ease-out 0s}
.input-login-glass:-webkit-autofill:focus{border-color:#f08817 !important;-webkit-box-shadow:0 0 0 1000px rgba(255,255,255,0.1) inset,0 0 0 3px rgba(240,136,23,0.15) !important;box-shadow:0 0 0 1000px rgba(255,255,255,0.1) inset,0 0 0 3px rgba(240,136,23,0.15) !important}
.input-login-glass:-webkit-autofill + .input-icon-login,
.input-login-glass:-webkit-autofill ~ .input-icon-login{color:rgba(255,255,255,0.35)}
.input-login-glass:-webkit-autofill:focus + .input-icon-login,
.input-login-glass:-webkit-autofill:focus ~ .input-icon-login{color:#f08817}
.input-login-glass:-moz-autofill{box-shadow:0 0 0 1000px rgba(255,255,255,0.06) inset !important;-moz-text-fill-color:#fff !important;border:1px solid rgba(255,255,255,0.1) !important}

/* Toggle password */
.toggle-password-login{position:absolute;right:16px;top:50%;transform:translateY(-50%);background:none;border:none;color:rgba(255,255,255,0.3);cursor:pointer;font-size:1rem;padding:4px;transition:color 0.3s}
.toggle-password-login:hover{color:rgba(255,255,255,0.7)}

/* Options row */
.login-form-options{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}
.remember_device{display:flex;align-items:center;gap:0.5rem;font-size:0.78rem;cursor:pointer;color:rgba(255,255,255,0.45);font-weight:500}
.remember_device input[type="checkbox"]{appearance:none;-webkit-appearance:none;width:18px;height:18px;border:1.5px solid rgba(255,255,255,0.2);border-radius:5px;background:rgba(255,255,255,0.05);cursor:pointer;position:relative;transition:0.3s;flex-shrink:0}
.remember_device input[type="checkbox"]:checked{background:#f08817;border-color:#f08817}
.remember_device input[type="checkbox"]:checked::after{content:'';position:absolute;left:5px;top:2px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}

/* Button */
.btn_login{display:block;width:100%;padding:11px 15px;background:linear-gradient(135deg,#ffae16e8,#ff5e00d4);color:#fff;border:none;border-radius:14px;font-family:'Quicksand',sans-serif;font-size: 0.9rem;font-weight: 500;letter-spacing: 2px;cursor:pointer;transition:0.4s cubic-bezier(0.4,0,0.2,1);position:relative;overflow:hidden}
.btn_login::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent,rgba(255,255,255,0.15),transparent);transform:translateX(-100%);transition:transform 0.6s ease}
.btn_login:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(240,136,23,0.4)}
.btn_login:hover::before{transform:translateX(100%)}
.btn_login:active{transform:translateY(0)}

/* App buttons */
.login-app-buttons{text-align:center;margin-top:16px}
.login-app-buttons a{display:none;margin:4px}

/* Divider */
.login-card-divider{display:flex;align-items:center;margin:20px 0;gap:12px}
.login-card-divider hr{flex:1;border:none;height:1px;background:rgba(255,255,255,0.1)}
.login-card-divider span{font-size:0.68rem;color:rgba(255,255,255,0.25);font-weight:600;letter-spacing:1px;text-transform:uppercase}

/* Footer card */
.login-card-footer{text-align:center}
.login-card-footer img{opacity:0.5;transition:opacity 0.3s}
.login-card-footer img:hover{opacity:0.8}
.login-card-version{display:block;font-size:0.65rem;color:rgba(255,255,255,0.2);margin-top:4px}

/* Error msg override para login oscuro */
body.home span.msg_error{background:rgba(189,0,0,0.15);border-left:3px solid #ff4444;color:#ff8888;backdrop-filter:blur(10px);margin-bottom:20px}

/* ===== INSTALLER (install.php) ===== */
.install-wrapper{display:flex;width:100%;min-height:100vh;align-items:center;justify-content:center;position:relative;z-index:2;padding:40px 20px;box-sizing:border-box}
.install-card{width:100%;max-width:620px;padding:44px 42px;background:rgba(255,255,255,0.08);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,0.12);border-radius:24px;box-shadow:0 8px 32px rgba(0,0,0,0.3),inset 0 1px 0 rgba(255,255,255,0.1);box-sizing:border-box}
.install-card-logo{text-align:center;margin-bottom:28px}
.install-card-logo img{max-width:180px;filter:drop-shadow(0 2px 12px rgba(0,0,0,0.4))}

/* Stepper */
.install-stepper{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:36px;padding:0 10px}
.install-stepper-item{display:flex;align-items:center;gap:0}
.install-step-dot{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:0.8rem;font-weight:700;color:rgba(255,255,255,0.3);border:2px solid rgba(255,255,255,0.12);background:rgba(255,255,255,0.04);transition:all 0.4s cubic-bezier(0.4,0,0.2,1);cursor:pointer;flex-shrink:0}
.install-step-dot.active{color:#fff;border-color:#f08817;background:linear-gradient(135deg,#ffae16,#ff5e00);box-shadow:0 0 16px rgba(240,136,23,0.35)}
.install-step-dot.done{color:#fff;border-color:rgba(255,255,255,0.2);background:rgba(255,255,255,0.15)}
.install-step-dot.done svg{width:16px;height:16px}
.install-step-line{width:48px;height:2px;background:rgba(255,255,255,0.08);margin:0 6px;transition:background 0.4s}
.install-step-line.done{background:linear-gradient(90deg,#ffae16,#ff5e00)}
.install-step-label{display:block;font-size:0.6rem;color:rgba(255,255,255,0.3);text-align:center;margin-top:6px;font-weight:600;letter-spacing:0.5px;text-transform:uppercase;transition:color 0.3s}
.install-step-dot.active ~ .install-step-label,.install-step-dot.active + .install-step-label{color:rgba(255,255,255,0.7)}
.install-stepper-node{display:flex;flex-direction:column;align-items:center;gap:0}
.install-stepper-node .install-step-label{margin-top:8px}
.install-stepper-node.active .install-step-label{color:rgba(255,255,255,0.7)}
.install-stepper-node.done .install-step-label{color:rgba(255,255,255,0.45)}

/* Step panels */
.install-step-panel{display:none;animation:installFadeIn 0.45s ease}
.install-step-panel.active{display:block}
@keyframes installFadeIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

/* Section headers */
.install-section{margin-bottom:8px}
.install-section-title{font-size:1rem;font-weight:700;color:#fff;margin-bottom:4px;display:flex;align-items:center;gap:10px}
.install-section-title svg{color:#f08817;flex-shrink:0}
.install-section-title::after{content:'';flex:1;height:1px;background:rgba(255,255,255,0.08)}
.install-section-desc{font-size:0.8rem;color:rgba(255,255,255,0.4);margin-bottom:20px;line-height:1.5}

/* Form groups — installer */
.install-form-group{margin-bottom:16px}
.install-form-group label{display:block;font-size:0.7rem;font-weight:600;letter-spacing:0.7px;text-transform:uppercase;color:rgba(255,255,255,0.45);margin-bottom:6px}
.install-form-group label .req{color:#f08817}
.install-input{width:100%;padding:13px 16px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);border-radius:14px;color:#fff;font-family:'Quicksand',sans-serif;font-size:0.9rem;font-weight:500;outline:none;transition:0.4s cubic-bezier(0.4,0,0.2,1);box-sizing:border-box;-webkit-appearance:none;appearance:none}
.install-input:focus{background:rgba(255,255,255,0.1);border-color:#f08817;box-shadow:0 0 0 3px rgba(240,136,23,0.15)}
.install-input::placeholder{color:rgba(255,255,255,0.25);font-weight:400}
select.install-input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.4)' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px;cursor:pointer}
select.install-input option{background:#1a1a1a;color:#fff}
.install-input:-webkit-autofill,.install-input:-webkit-autofill:hover,.install-input:-webkit-autofill:focus{-webkit-text-fill-color:#fff !important;caret-color:#fff;-webkit-box-shadow:0 0 0 1000px rgba(255,255,255,0.06) inset !important;border:1px solid rgba(255,255,255,0.1) !important;transition:background-color 9999s ease-out 0s}

/* Two-column grid */
.install-row{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}

/* Buttons */
.install-btn-next{display:block;width:100%;padding:14px;background:linear-gradient(135deg,#ffae16,#ff5e00);color:#fff;border:none;border-radius:14px;font-family:'Quicksand',sans-serif;font-size:0.95rem;font-weight:700;letter-spacing:0.8px;cursor:pointer;transition:0.4s cubic-bezier(0.4,0,0.2,1);position:relative;overflow:hidden;margin-top:24px;text-transform:uppercase}
.install-btn-next::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent,rgba(255,255,255,0.15),transparent);transform:translateX(-100%);transition:transform 0.6s ease}
.install-btn-next:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(240,136,23,0.4)}
.install-btn-next:hover::before{transform:translateX(100%)}
.install-btn-back{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;background:rgba(255,255,255,0.06);color:rgba(255,255,255,0.5);border:1px solid rgba(255,255,255,0.1);border-radius:12px;font-family:'Quicksand',sans-serif;font-size:0.82rem;font-weight:600;cursor:pointer;transition:0.3s;margin-top:12px}
.install-btn-back:hover{background:rgba(255,255,255,0.1);color:rgba(255,255,255,0.8)}
.install-btn-back svg{width:16px;height:16px}
.install-btn-submit{display:block;width:100%;padding:16px;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border:none;border-radius:14px;font-family:'Quicksand',sans-serif;font-size:1rem;font-weight:700;letter-spacing:0.8px;cursor:pointer;transition:0.4s cubic-bezier(0.4,0,0.2,1);margin-top:24px;text-transform:uppercase;position:relative;overflow:hidden}
.install-btn-submit::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent,rgba(255,255,255,0.15),transparent);transform:translateX(-100%);transition:transform 0.6s ease}
.install-btn-submit:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(34,197,94,0.4)}
.install-btn-submit:hover::before{transform:translateX(100%)}
.install-nav{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap}

/* Welcome & Success screens */
.install-welcome{text-align:center;padding:20px 0}
.install-welcome h1{font-size:1.6rem;font-weight:700;color:#fff;margin-bottom:8px}
.install-welcome h2{font-size:0.95rem;font-weight:500;color:rgba(255,255,255,0.5);margin-bottom:24px}
.install-welcome p{font-size:0.85rem;color:rgba(255,255,255,0.4);line-height:1.6;text-align:left;margin-bottom:12px}
.install-welcome hr{border:none;height:1px;background:rgba(255,255,255,0.08);margin:20px 0}
.install-welcome .install-rocket{font-size:3rem;margin-bottom:16px;display:block}

.install-success{text-align:center;padding:30px 0}
.install-success h1{font-size:1.5rem;font-weight:700;color:#22c55e;margin-bottom:8px}
.install-success p{font-size:0.88rem;color:rgba(255,255,255,0.5);line-height:1.6;margin-bottom:16px}
.install-success hr{border:none;height:1px;background:rgba(255,255,255,0.08);margin:20px 0}
.install-success .install-btn-next{margin-top:16px}
.install-success .install-btn-next a{color:#fff;text-decoration:none;display:block}

/* Footer */
.install-footer{text-align:center;margin-top:32px}
.install-footer-divider{display:flex;align-items:center;margin-bottom:16px;gap:12px}
.install-footer-divider hr{flex:1;border:none;height:1px;background:rgba(255,255,255,0.1)}
.install-footer-divider span{font-size:0.68rem;color:rgba(255,255,255,0.25);font-weight:600;letter-spacing:1px;text-transform:uppercase}
.install-footer img{opacity:0.5;transition:opacity 0.3s}
.install-footer img:hover{opacity:0.8}
.install-footer-version{display:block;font-size:0.65rem;color:rgba(255,255,255,0.2);margin-top:4px}

/* Legacy compat */
.wrapper_seguimiento{padding: 2% 5%;background: #fff;width: 80%;margin: 5% auto;border-radius: 20px;border: 1px solid #b3b3b3}
.Sivo_Logo{margin-bottom: 5%}
.Sivo_Logo img{width: 90%;max-width: 350px}
.content_logo{background:linear-gradient(#FFF,#F9F9F9);width:100%;height:90px;border-bottom:1px solid #c0c0c0;z-index:10;position:fixed}
.form-login{text-align: left;margin:40px 0}
.form-login p{margin:2px 0}
.input-login{width:100%;margin-bottom:10px;display: flex}
span.ico_input {float:left;width: 45px;height: 45px;padding: 10px;background: #ffffff;box-sizing: border-box;border: 1px solid #ccc;color: #313131;border-radius: 5px}
span.box_input {float:right;width: 100%}
input.form-control{display:block;width:100%;height:50px;box-sizing:border-box;padding:6px 12px;font-size:12px;line-height:1.42857143;color:#555;background-color:#fff;border:1px solid #ccc;border-radius:20px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}
select.form-control{display:block;width:100%;height:50px;padding:6px 12px;font-size:12px;line-height:1.42857143;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:20px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}
.remember_device{display: flex;align-items: center;gap: 0.5rem;padding: 0 10px;font-size: 8pt;cursor: context-menu;}

.boton{width: 100%;margin: 0 0 20px 0;text-align: right}
.btn{display:inline-block;color:#fff;border-color:#444444;margin-bottom: 0;font-family: 'Quicksand';font-weight: 400;text-align: center;vertical-align: middle;margin:5px;padding: 5px 20px;cursor: pointer;background-image: none;border: 1px solid transparent;white-space: nowrap;font-size: 8.5pt;line-height: 1.5;border-radius: 30px;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;box-shadow: 3px 3px 3px #d8d8d8;text-transform: uppercase;transition: 0.3s}
.btn:hover{background-color:#3c3c3c;border-color:#4d4d4d;}
.btn a{color:#fff;display:block}
.btn a:hover{color:#eee}
.btn-icon{padding: 5px 8px;border-radius: 8px;border: 1px solid #f1f1f1;color: #f90}
.fullwidth{width:100%;margin: 5px 0;}

.btn-light {background: linear-gradient(#FFF, #F9F9F9);font-family: 'Quicksand';font-size: 9.5pt;text-align:center;color: #6b941d;padding: 10px 15px;border-radius: 20px;border: 1px solid #eee;font-weight: 600;letter-spacing: 0.5px;box-shadow: 3px 3px 3px #d8d8d8;cursor:pointer;transition: 0.3s;}
.btn-light:hover{transform: scale(1.01);letter-spacing: 1px;}

.btnsegundoplano{background:#fff !important;color:#E75F00 !important;border:2px solid #E75F00 !important}
.btnsegundoplano a{color:#E75F00 !important;}

.mini-btn{min-width:45px;background: linear-gradient(#FFF, #F9F9F9);cursor:pointer;border-radius: 10px;padding:10px 15px;border:1px solid #bdbdbd;transition: 0.3s;color: #272727;}
.mini-btn:hover{transform: scale(1.05)}
.mini-btn-icons{display:inline-block;background: -webkit-linear-gradient(#FFF,#F9F9F9);background: -moz-linear-gradient(#FFF,#F9F9F9);background: linear-gradient(#FFF,#F9F9F9);padding: 7px;border-radius: 20px;width: 35px;border: 1px solid #c3c3c3;cursor:pointer;}
.mini-btn-icons i:hover{transform: scale(1.3);transition: 0.3s}
.mini-btn-icons.disabled i{color:#eee}
.c_disabled{background-color:#d9d9d9 !important}
.c_standard{background-color:#3d3d3d !important}
.c_positivo{background-color:#618D0D !important}
.c_negativo{background-color:#EA2E2E !important}
.c_sugerencia{background-color:#ffbc00 !important}

span.msg_success{display: block;padding: 14px 18px;text-align: left;background: #e8f7e3;border-left: 4px solid #618d0d;color: #618d0d;border-radius: 10px;margin: 0 auto 20px;}
span.msg_warning{display: block;padding: 14px 18px;text-align: left;background: #fff8e1;border-left: 4px solid #ff9800;color: #e65100;border-radius: 10px;margin: 0 auto 20px;}
span.msg_error{display: block;padding: 14px 18px;text-align: left;background: #fff8e1;border-left: 4px solid #ffeaea;color: #bd0000;border-radius: 10px;margin: 0 auto 20px;}

.Sivo{position: absolute;padding: 10px;left: 50%;bottom: 20px;transform: translateX(-50%);text-align: center;width: 100%;box-sizing: border-box;}
.Sivo img{width: 80px;margin-bottom:5px}
.Sivo a.web{color:#fff;background:#ff8a00;border:1px solid #ff8a00;padding:3px 6px;border-radius:10px;font-weight:600;letter-spacing: 1px;transition: 0.3s}
.Sivo a.web:hover{color:#ff8a00;background:#fff;}
.Sivo_version{text-align: center;color:#b9b9b9;}
.Sivo_box{margin: 20px}
.Sivo_box img {width: 80px}

/*-- PRE CONFIGURACION --*/
#pre-configuracion{width: 100%;height:100%;padding: 20px;box-sizing: border-box;position: absolute;display: flex;align-items: center;flex-wrap: wrap;font-family: 'Raleway'}
.box_pre_configuracion{width: 30%;box-sizing: border-box;margin: 0 auto;background: #fff;border-top-left-radius: 25px;border-bottom-right-radius: 25px;border: 1px solid #ddd;padding: 20px 20px;text-align: center}
.box_pre_configuracion img.loading{width:100%;max-width:330px}
.box_pre_configuracion h1{text-align: center;font-weight:600}

/*-- PANEL --*/
.checkbox_inline{display: flex;align-items: center;width: fit-content;gap: 1rem;background: #ffffff;padding: 10px 10px;margin: 10px 2px;border-radius: 10px;border: 1px solid #eeeeee;}

/*-- PLAN STARTER --*/
.sales_bar {width: 100%;height: 40px;border-radius: 20px;background: #fbfbff;border: 1px solid #f1f1f1;line-height: 35px;padding: 2px;margin-bottom: 20px;position: relative;cursor: context-menu;}
.sales_progress {background: linear-gradient(270deg, #618d0d, #006683);border-radius: 20px;line-height: 33px;text-align: center;color: #fff;font-weight: 600;width: 0;height: 33px;transition: width 2s ease;position: relative;overflow: visible; /* Allow overflow to show text */}
.progress-text {transition: opacity 0.5s ease;display: inline-block;white-space: nowrap;position: relative;padding:0 10px;opacity: 0;}

/*-- CARGO --*/
#map_route{height:400px;z-index:1}

/*-- BT Y BOXES - COLORES --*/
.color1{background:linear-gradient(135deg,#de6900,#ab155e);}
.color2{background:linear-gradient(135deg,#f39a01,#ffb100);}
.color3{background:linear-gradient(135deg,#147b98,#0e64cd);}
.color4{background:linear-gradient(135deg,#9d230f,#4a2962);}
.color5{background:linear-gradient(135deg,#618D0D,#016a82);}

/*-- NIVELES CUENTA --*/
.box_cuentas{width: 100%;padding: 0 20px;transition: 0.3s;}
.box_cuentas:hover {transform: scale(1.02);}
.modulos-user li{margin-bottom: 5px;}
.modulos-user li i{font-size:8pt}

/*-- OTROS --*/
.ups{font-size:60px;text-align:center}
.mini_bar{background:#313131;border-color:#444444;border-bottom-left-radius:10px;border-bottom-right-radius:10px;padding:5px}
.mini_bar a{color:#fff}
.cuenta_activa{display:block;background:#8edd46;width:15px;height:15px;border-radius:15px;-webkit-border-radius:15px;-moz-border-radius:15px;border:1px solid #2ac903;margin:0 auto}
.cuenta_desactivada{display:block;background:#dd4646;width:15px;height:15px;border-radius:15px;-webkit-border-radius:15px;-moz-border-radius:15px;border:1px solid #cc1b1b;margin:0 auto}
.seccion{opacity: 0;transform: translateY(50px);transition: opacity 0.6s ease, transform 0.6s ease;position:relative;width:100%;display:block;background:#fff;text-align:center;margin-bottom:20px;padding: 20px 20px;border:1px solid #f1f1f1;border-radius: 20px;box-sizing: border-box;box-shadow: 5px 10px 12px #f7f7fb;}
.seccion > *:last-child {margin-bottom: 0;}
.header_bar_seccion{background: #f5f7fa;padding: 12px;border-radius: 6px;margin-bottom: 10px;font-size: 14px;display: flex;gap: 20px;flex-wrap: wrap;align-items: center;}
.header_bar_seccion button{background: -webkit-linear-gradient(#FFF, #F9F9F9);background: -moz-linear-gradient(#FFF,#F9F9F9);background: linear-gradient(#FFF, #F9F9F9);padding: 7px;border-radius: 20px;width: 35px;border: 1px solid #c3c3c3;color: #4c4d5f;font-size: 6pt;}
.separator{margin:40px 0;display: grid}
.del_box{background: #ea2e2e;width: 40px;height: 40px;line-height: 40px;font-weight: 600;color: #fff;position: absolute;right: 0;top: 0;border-bottom-left-radius: 20px;border-top-right-radius: 20px;z-index: 9;transition: 0.3s;cursor: pointer;}
.del_box:hover{font-size: 12pt;}
.seccion.visible {opacity: 1;transform: translateY(0);}
.ticket{display: flex;vertical-align: middle;align-items: center;gap:1rem;color:#505050 !important}
.ticket #sin_datos {margin: 0;width: 35%;}
.ticket small{color:#888888}
.ticket span.sin_resultados {width: 100%;}
.ticket .ticket-left{width:20%}
.ticket .ticket-middle{width:40%}
.ticket .ticket-middle p{margin:0}
.ticket .ticket-right{width:40%}
.ticket h3{font-size: 13pt;margin:0 0 5px 0;font-weight:600}
.title_seccion{display: flex;align-items: center;justify-content: space-between;gap: 1rem;margin-bottom: 20px;padding-bottom: 5px;border-bottom: 1px solid #e9e9e9;font-weight: 600;letter-spacing: 0.3px;text-transform:uppercase;color: #4c4e53;}
.title_seccion.left > div:nth-child(2) {display: flex;gap:0.5rem}
.seccion h1, .seccion h2, .seccion p{text-align: left}
.big_title{font-size: 18pt;color: #6b6b6b;font-weight: 500;margin-bottom: 10px}
.big_title span{font-weight: 800;color: #2d2d2d;}
.ul_no_list-style{list-style: none;padding: 0px}
.ul_no_list-style li{margin-bottom: 7px}
.li_inline_block{display:flex;align-items: center;gap: 0.5rem;}
span.sin_resultados{color:#c3c3c3}
span.sin_resultados a{background: #e84521;color: #fff;padding: 2px 5px;border-radius: 5px;font-size: 8pt;display: table-cell}
span.sin_resultados a:hover{opacity:0.8}
span.nom_product_list {/*text-transform: uppercase;*/}
span.extras_product_list {display:block;color:#555;margin: 5px 0;}
span.detalle{display: block;margin: 5px 0;width: fit-content;background: #f8f8f8;border-radius: 5px;padding: 0 5px;color: #4c4c4c;border: 1px solid #e0e0e0}
.grecaptcha-badge{z-index: 99}
.super_ico_title{font-size: 7pt;float: right;}
.contrato-detalle{height: 100%;max-height: 600px;overflow-y: scroll;margin-bottom:20px}
#ClientCard, #ClientCardTercero, #ProfessionalCard, #FieldCard, #CarCard, #ClientCard-Popup{position: relative; overflow: hidden;}
.ClientCard, .ClientCardTercero, .ProfessionalCard, .FieldCard, .CarCard, .ClientCard-Popup{position: relative; overflow: hidden;}
#ClientCard h3 small, #ClientCard-Popup h3 small{display: inline-block;background: #2792ef;font-size: 7pt;color: #fff;font-weight: 600;text-align: center;padding: 5px 10px;border-radius: 15px;letter-spacing: 0.5px;}
#ClientCard-Popup{max-width: 390px;}
.mini-card{max-width: 480px;}
.circle-card {width: 100%;height: 100%;position: absolute;background: #fbfbff;border: 1px solid #f1f1f1;border-radius: 400px;top: 0;left: -93%;z-index:-1}
.miniAdd{position: absolute;bottom: 10px;right: 10px;border: 1px solid #f1f1f1;border-radius: 20px;background: #618d0d;color: #fff;line-height: 1.5;transition: 0.3s;}
.miniAdd:hover{transform: scale(1.1);}
.mini-close{float: right;width: 20px;height: 20px;background: #ffbc00;line-height: 20px;color: #fff;border-radius: 20px;cursor:pointer}
.icon_status_produccion {line-height: 30px;margin-left: 7px;}
.icon_status_produccion.por_terminar i {color: #a28721;}
.icon_status_produccion.terminado i {color: #618d0d;}
.support-btn{display:inline-flex;align-items:center;gap:8px;background:#25d366;color:#fff !important;padding:10px 24px;border-radius:25px;text-decoration:none;font-weight:600;font-size:13px;transition:background 0.2s;}
.ficha_atencion{border-top: 4px solid #2792ef;border-bottom: 4px solid #2792ef;padding: 40px;}

/* VISUAL CARS */
#CarCard .road-path {opacity: 0.04;}
.select_carBox{transition:0.3s;cursor: pointer;}
.select_carBox:hover{transform: scale(1.03);}
.select_carBox .marca {position: absolute;width: 12%;right: 4%;top: 2%;}
.select_carBox .marca img {width: 100%;}
.box_perfil_car p b {color: #333a4d;}

.info-preview-cliente {display: flex;align-items: center;gap: 0.5rem;text-align: left;}
.cover-cliente, .mini-cover-cliente{background: #f9f9f9;color: #ddd;width: 100%;height: 100%;object-fit: cover;box-sizing: border-box;aspect-ratio: 1 / 1;border-radius: 50%;text-align: center;vertical-align: middle;font-weight: 600;font-size: 18pt;display: flex;justify-content: center;align-items: center;}
.cover-cliente{font-size: 120pt;}
.mini-cover-cliente {width: 40px;height: 40px;line-height: 40px; font-size: 12pt;}
.mini-cover-cliente img{width: 100%;height: 100%;object-fit: cover;box-sizing: border-box;margin-bottom: 5px;aspect-ratio: 1 / 1;border-radius: 100%;border-width: 5px;border-style: solid;border-color: rgb(241, 241, 241);border-image: initial;}
#list_products-cliente{display: grid;grid-template-columns: repeat(6, minmax(140px, 1fr));gap: 0.5rem;margin-bottom:30px}
#list_products-cliente .item-list_products{position:relative;box-sizing: border-box;vertical-align: top;padding: 5px;border-radius: 20px;box-shadow: 0px 1px 1px rgb(71 71 71 / 20%);border: 1px solid #efefef}
#list_products-cliente .item-list_products:hover{transform: scale(1.03);opacity:0.8;transition: 0.3s}

.icons_leyendas {display: flex;align-items: center;gap: 0.5rem;margin: 5px 0;}
.icons_leyendas i{background: #79a566;padding: 4px;border-radius: 5px;color: #fff;transition: 0.3s;cursor: help;}
.icons_leyendas i:hover{transform: scale(1.05);}

.locked {position: absolute;background: #ffffffc7;backdrop-filter: blur(2px);width: 100%;height: 100%;top:0;left:0;z-index:9;}
.msg_locked {position: relative;top: 50%;left: 50%;transform: translate(-50%, -50%);padding: 40px;font-size: 10pt;color: #636363;}
.msg_locked{text-align: center;}
.msg_locked i{font-size:28pt}

.extra-bottom-form{position:relative;padding:20px 0}
.extra-bottom-form div{position:absolute;right:10px;display: inline-flex;gap: 1rem;vertical-align: middle;align-items: center;font-weight: 600;}

span.ShowHide-DIV {background: linear-gradient(#fff, #f9f9f9);background: -webkit-linear-gradient(#fff, #f9f9f9);background: -moz-linear-gradient(#fff, #f9f9f9);;padding: 10px;margin: 10px;display: inline-block;border: 1px solid #ddd;border-radius: 50px;cursor: pointer;}

.foto_usuario{padding: 0 !important;}
.foto_usuario img{border-radius: 100%;width: 100%;height: 100%;object-fit: cover;box-sizing: border-box;aspect-ratio: 1 / 1;border:2px solid #eee;padding: 0;}
.info_ayuda{width: 40px;height: 55px;position: relative;top: -8px;color: #131313;text-align: center;font-size: 40px;float: right}
.mini_foto_perfil{width:40px;height:40px;border-radius:50%;margin:2px auto}
.check{text-align: center;margin-bottom: 10px;background: #D5EF8A;border-radius: 5px;font-weight: 600;padding: 10px;border: 1px solid #A7C747;color:#228401}
.warning{text-align: center;margin-bottom: 10px;background: #FFEE91;border-radius: 5px;font-weight: 600;padding: 10px;border: 1px solid #F5D841;color:#A30000}
.modulo-header{display: flex;align-items: center;justify-content: space-between;gap: 10px;}
.permiso-badge .badge{font-size: 11px;padding: 4px 8px;border-radius: 12px;white-space: nowrap;}
.badge-nativo{background: #e6f4ea;color: #1e7e34;font-weight: 600;}
.badge-override{background: #fff3cd;color: #856404;font-weight: 600;}
.badge-denegado{background: #f8d7da;color: #721c24;font-weight: 600;}

/* TEMPORAL HASTA TERMINAR EDICIÓN CSS DE ID A CLASS */
#popup{width: 100%;height: 100%;position: fixed;background: #ffffff6b;right: 0;top: 0;z-index:8}
#popup hr{border: 0;width: 70%;height: 1px;background-image: -webkit-linear-gradient(left, rgba(0,0,0,0), rgba(153, 153, 153, 0.69), rgba(0,0,0,0));background-image: -moz-linear-gradient(left, rgba(0,0,0,0), rgba(153, 153, 153, 0.69), rgba(0,0,0,0));background-image: -ms-linear-gradient(left, rgba(0,0,0,0), rgba(153, 153, 153, 0.69), rgba(0,0,0,0));background-image: -o-linear-gradient(left, rgba(0,0,0,0), rgba(153, 153, 153, 0.69), rgba(0,0,0,0));margin: 10px auto}
#mjs_popup img{display: block;width: 50%;margin: 0 auto;max-width: 450px;border-radius: 100px}
/* ----- FIN ----- */

/* CALENDARIO GRID */
.wrapper-calendario{padding: 20px;border: 1px solid #f1f1f1;border-radius: 20px;box-sizing: border-box;box-shadow: 5px 10px 12px #f7f7fb;}
.flex-detail_calendario{display: flex;gap: 1rem;}
.resumen_dia_calendario{width: 25%;}
.dia_calendario{margin-bottom: 20px;}
.box_day {background: #fff;width: 100%;border: 1px solid #eee;border-radius: 7px;text-align: center;}
.box_day span {display: block;padding: 5px;}
.box_day .mes {background: #2196f3;color: #fff;border-top-left-radius: 7px;border-top-right-radius: 7px;}
.box_day .num_dia {font-weight: 600;font-size: 18pt;}
.box_day .dia {border-top: 1px dashed #eeeeee;border-bottom-left-radius: 7px;border-bottom-right-radius: 7px;font-weight: 600;}
.transacciones_dia_calendario{}
.calendario {display: grid;width: 75%;grid-template-columns: repeat(7, 1fr);text-align: center;border: 1px solid #f1f1f1;border-radius: 10px;overflow-x: auto;}
.calendario > div {border: 1px solid #eee;}
.calendario .encabezado:first-child {border-top-left-radius: 10px;}
.calendario .encabezado:last-child {border-top-right-radius: 10px;}
.calendario .no-border{border: none;}
.calendario .dia {position:relative;padding: 20px 10px;letter-spacing: 0.5px;}
.calendario .dia .fecha {position:absolute;top:5px;right:10px;font-weight: 600;margin-bottom: 5px;color: #345875;}
.calendario .dia .venta {font-size: 14px;color: #6a941b;}
.calendario .dia.hoy {background: #f0f8ff;border: 2px solid #2196f3;}
.calendario .total-semana {border:none;grid-column: span 7; /* ocupa toda la fila */text-align: right;font-weight: 600;padding: 10px;background: #fbfbff;margin-bottom: 5px;color: #86a846;}
.calendario .encabezado {font-weight: 600;background: #f3f3f3;color: #838383;padding: 10px 4px;border: 1px solid #fff;}
.day.today {border: 1px dashed #c5c5c5;}

.popup{width: 100%;height: 100%;position: fixed;background: transparent;backdrop-filter:blur(3px);top: 0;left:0;z-index:99999}
.popup hr{border: 0;width: 70%;height: 1px;background-image: -webkit-linear-gradient(left, rgba(0,0,0,0), rgba(153, 153, 153, 0.69), rgba(0,0,0,0));background-image: -moz-linear-gradient(left, rgba(0,0,0,0), rgba(153, 153, 153, 0.69), rgba(0,0,0,0));background-image: -ms-linear-gradient(left, rgba(0,0,0,0), rgba(153, 153, 153, 0.69), rgba(0,0,0,0));background-image: -o-linear-gradient(left, rgba(0,0,0,0), rgba(153, 153, 153, 0.69), rgba(0,0,0,0));margin: 10px auto}
/*.mjs_popup{width: 100%;max-width: 30%;}*/
.mjs_popup > img{display: block;width: 50%;margin: 0 auto;max-width: 450px;border-radius: 100px}
.mjs_popup > p{text-align: center !important}
.mjs_popup.mini{max-width: 420px;}
.mjs_popup .btns-tickets{display: flex;align-items: center;justify-content: center;margin: 10px 0;}
.mjs_popup.width_medio {width: 35%;}
.popup_wrapper .content_error_popup, .popup_wrapper .content_success_popup, .popup_wrapper .content_warning_popup{transform: translate(-50%, -50%) !important}
.content_error_popup, .content_success_popup, .content_warning_popup {position: absolute;top: 50%;left: 50%;min-width:455px;max-height: 80%;overflow-y: auto;transform: translate(-50%, -50%);text-align: center;margin-left: auto;margin-right: auto;background: #fefdfd;padding: 1.5% 1.5%;border-radius: 25px;border: 1px solid #d9d9d9;box-shadow: 0px 10px 15px #c9c9c9;z-index: 2;}
.content_error, .content_success, .content_warning{display: table;margin: 0 auto;text-align: center;padding: 20px;border-radius: 20px}
.content_error hr, .content_success hr, .content_warning hr{border: 0;width: 70%;height: 1px;background-image: -webkit-linear-gradient(left, rgba(0,0,0,0), rgba(153, 153, 153, 0.69), rgba(0,0,0,0));background-image: -moz-linear-gradient(left, rgba(0,0,0,0), rgba(153, 153, 153, 0.69), rgba(0,0,0,0));background-image: -ms-linear-gradient(left, rgba(0,0,0,0), rgba(153, 153, 153, 0.69), rgba(0,0,0,0));background-image: -o-linear-gradient(left, rgba(0,0,0,0), rgba(153, 153, 153, 0.69), rgba(0,0,0,0));margin: 15px auto}
.fullwidth_popup{transform: translate(-50%, -50%) !important}

.content_error_popup::-webkit-scrollbar, .content_success_popup::-webkit-scrollbar, .content_warning_popup::-webkit-scrollbar{width: 8px;/* Tamaño del scroll en vertical */height: 5px;/* Tamaño del scroll en horizontal */}
/* Ponemos un color de fondo y redondeamos las esquinas del thumb */.content_error_popup::-webkit-scrollbar-thumb, .content_success_popup::-webkit-scrollbar-thumb, .content_warning_popup::-webkit-scrollbar-thumb {background: #999999;border-radius: 4px}
/* Cambiamos el fondo y agregamos una sombra cuando esté en hover */.content_error_popup::-webkit-scrollbar-thumb:hover, .content_success_popup::-webkit-scrollbar-thumb:hover, .content_warning_popup::-webkit-scrollbar-thumb:hover {background: #999999;box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.2)}
/* Cambiamos el fondo cuando esté en active */.content_error_popup::-webkit-scrollbar-thumb:active, .content_success_popup::-webkit-scrollbar-thumb:active, .content_warning_popup::-webkit-scrollbar-thumb:active {background-color: #6c6c6c}
/* Ponemos un color de fondo y redondeamos las esquinas del track */.content_error_popup::-webkit-scrollbar-track, .content_success_popup::-webkit-scrollbar-track, .content_warning_popup::-webkit-scrollbar-track {background: #fff;border-radius: 4px}
/* Cambiamos el fondo cuando esté en active o hover */.content_error_popup::-webkit-scrollbar-track:active, .content_success_popup::-webkit-scrollbar-track:active , .content_warning_popup::-webkit-scrollbar-track:active {background: #fff}
.mjs_popup.content_success_popup h2.dashed_line {font-size: 14pt;margin: 0 0 20px;}
.mini-content-popup{max-width: 420px;}
.top_info_flex {display: flex;align-items: center;justify-content: space-between;gap: 1rem;}

i#ico_error, i#ico_success, i#ico_warning{display:block;margin:0 auto}
i#ico_error:hover, i#ico_success:hover, i#ico_warning:hover{transform:none}
h1.titulo_error, h1.titulo_success, h1.titulo_warning{color: #fff;text-align:center;font-weight: 600;border-radius: 25px;margin-bottom: 5px;display: inline-block}
i#ico_error, h1.titulo_error{color: #ad4040}
i#ico_success, h1.titulo_success{color: #59ad40}
i#ico_warning, h1.titulo_warning{color: #ffbc00}

/* LOGROS SIVO */
.logro-label {font-size: 10pt;letter-spacing: 1.5px;color: #999;margin-bottom: 6px;}
h1.titulo_congrats {font-weight: 800;font-size: 22pt;font-family: 'Segoe UI', sans-serif;margin: 10px 0;position: relative;display: inline-block;color: #4c4e53;overflow: hidden;}
h1.titulo_congrats::after {content: '';position: absolute;top: 0;left: -120%;width: 120%;height: 100%;background: linear-gradient(120deg,transparent 30%,rgba(255,255,255,0.6),transparent 70%);animation: shineSweep 2.5s infinite;pointer-events: none;}
@keyframes shineSweep {
	0% { left: -120%; }
	100% { left: 120%; }
}
.popup_congrats p {font-size: 12pt;font-family: 'Segoe UI', sans-serif;color: #444;margin: 15px 0;}

.logros-panel {display: grid;grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));gap: 1.5rem;margin-bottom: 20px;padding: 20px 0;}
.logros-title{font-size: 28px;margin-bottom: 25px;font-weight: 600;}

/* CARD BASE */
.logro-card{
    position: relative;
    display: flex;
    gap: 18px;
    padding: 18px;
    border-radius: 14px;
    margin-bottom: 15px;
    background: linear-gradient(145deg,#111,#000000);
    border: 1px solid #2a2a2a;
    transition: 0.25s;
    overflow: hidden;
}

/* Hover suave */
.logro-card:hover{
    transform: translateY(-2px) scale(1.01);
    border-color: #444;
}

/* ===== 🏆 UNLOCKED ===== */
.logro-card.unlocked{
    background: linear-gradient(145deg,#331500,#222);
    border-color: #e6730f55;
    box-shadow: 0 0 18px rgba(230,115,15,0.25);
}

/* Glow visible solo unlocked */
.logro-card.unlocked .logro-glow{
    opacity: 1;
}

/* Icono full color */
.logro-card.unlocked .logro-icon img{
    filter: none;
    opacity: 1;
}

/* Textos vivos */
.logro-card.unlocked .logro-titulo{
    color: #ffffff;
}

.logro-card.unlocked .logro-mensaje{
    opacity: 0.9;
}

/* ===== 🔒 LOCKED (base apagada) ===== */
.logro-card.locked{
    background: linear-gradient(145deg,#0d0d0d,#161616);
    border: 1px solid #1f1f1f;
    box-shadow: none;
}

/* Glow oculto */
.logro-card.locked .logro-glow{
    opacity: 0;
}

/* Icono apagado */
.logro-card.locked .logro-icon img{
    filter: grayscale(45%);
    opacity: 0.6;
}

/* Título tenue */
.logro-card.locked .logro-titulo{
    color: #bfbfbf;
}

/* Mensaje más suave */
.logro-card.locked .logro-mensaje{
    color: #cfcfcf;
    opacity: 0.45;
}

/* ===== 🔥 LOCKED CON PROGRESO ===== */
.logro-card.locked.has-progress{
    border: 1px solid #333;
    background: linear-gradient(145deg,#131313,#1a1a1a);
}

/* Icono menos apagado */
.logro-card.locked.has-progress .logro-icon img{
    filter: grayscale(20%);
    opacity: 0.85;
}

/* Mensaje algo más visible */
.logro-card.locked.has-progress .logro-mensaje{
    opacity: 0.65;
    color: #f08817;
}

/* ===== Glow holográfico ===== */
.logro-glow{
    position:absolute;
    inset:0;
    background: radial-gradient(circle at top left, #e6730f22, transparent 40%);
    pointer-events:none;
    opacity: 0;
    transition: 0.3s;
}

/* ===== Icon ===== */
.logro-icon img{
    width: 72px;
    height: 72px;
    object-fit: contain;
    transition: 0.3s;
}

.logro-info{flex:1;}

.logro-titulo{
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 6px;
    color: #dfdfdf;
    font-family: 'Segoe UI', sans-serif;
}

.logro-mensaje{
    font-size: 13px;
    opacity: 0.75;
    margin-bottom: 10px;
    color: #f08817;
}

/* ===== Progress ===== */
.logro-progress-bar{
    height: 8px;
    background: #222;
    border-radius: 10px;
    overflow: hidden;
}

.logro-progress{
    height: 100%;
    background: linear-gradient(90deg,#e6730f,#ff9d2f);
    transition: width 0.4s ease;
}

.logro-progress-text{
    font-size: 12px;
    opacity: 0.6;
    margin-top: 4px;
    color: #878787;
}

.logro-fecha{
    font-size: 12px;
    color: #e6730f;
}

/* ===== 🔒 Iconito overlay opcional ===== */
.logro-card.locked::after{
    content: "🔒";
    position: absolute;
    top: 10px;
    right: 12px;
    font-size: 14px;
    opacity: 0.35;
}
/* FIN LOGROS SIVO */

.nav-pages, .nav-pages_off{margin: 1px;padding: 5px;border-radius: 5px;text-align: center;width: 20px;height: 20px;display: inline-block;border: 1px solid #eee;color: #fff}
.nav-pages{background: #ec9b12;transition: 0.3s}
.nav-pages:hover{opacity:0.8;transform: scale(1.2);}
.nav-pages_off{background: #bcbcbc}
h4.descto_global{background: #0e9aa0;color: #fff;padding: 0.5%;width: 100%;border-radius: 5px;text-align:center}
i.fas{transition: 0.3s}
i.fas:hover{transform: scale(1.3)}
.title_cotizacion{color:red}
.aprobado{background: #c1de9b;color: #0e600b}
.deshabilitado{background: #ffd1d1;color:#8f2828}
form.inline-botones{display:inline-block}
.label_pedido {display: flex;align-items: center;background: #fafaff;border: 1px dashed #bdbdbd;border-radius: 10px;width: fit-content;margin: 0 auto;}
.label_pedido .text-label{margin: 0;color: #616f97;padding: 2px 10px;text-align:center}
.label_pedido h1.num_orden {border-left: 1px solid #bdbdbd;color: #333333;font-weight: 600;letter-spacing: 1px;margin: 2px 0;padding: 5px 10px;}
.seccion-info{width:100%;margin: 0 auto 5% auto;display:block/*display: table*/}
.img_box{display:block;width: 100%;max-width: 500px;margin:0 auto;padding: 5%;box-sizing: border-box}
.img_box.large{max-width: 100%;padding: 0%;border-radius: 15px;}
span.pagado, span.pendiente_pago, span.pedido_retrasado{display: block;padding: 5px 10px;border-radius: 5px;color: #fff;margin: 0 auto}
span.pagado{background: #618d0d}
span.pendiente_pago{background: #b10b0b;cursor:help}
span.pedido_retrasado{background: #b10b0b}
.fa-exclamation-triangle{cursor:help}
.error_field{padding:0 0 0 10px;color:#f00}
.pages{text-align: right;margin: 20px 0}
.pages select{height: 40px;padding: 0 10px;}
.activa_mini-resumen{position: relative;display: flex;align-items: center;gap: 0.5rem;cursor:help}
.mini-resumen{position: absolute;top: 50%;width: 225px;text-align:left;background: #2792ef;margin-top: 10px;margin-left: -5px;padding: 5px;border: 1px solid #b3b3b3;color: #fff;font-size:7.5pt;letter-spacing: 0.2px;border-top-right-radius: 10px;border-bottom-left-radius: 10px;z-index:99}
.mini-resumen p{margin: 0 0 5px;font-weight: 600;letter-spacing: 1px;background: #fff;color: #2792ef;padding: 2px 5px;border-top-right-radius: 5px;}
.mini-resumen ul{padding-left: 15px;margin: 4%}
.mini-resumen hr{border-top: 1px solid #2b7cc3;border-bottom: 1px solid #4cacff;}
.boton_opciones{text-align:left;margin-bottom:10px}
.opciones{display: inline-block;background: linear-gradient(#fff, #f0f0f0);background: -webkit-linear-gradient(#fff, #f0f0f0);background: -moz-linear-gradient(#fff, #f0f0f0);border: 1px solid #E0E0E0;margin: 5px 10px 5px 0;padding: 10px;color: #323232;font-weight:600;text-align:center;border-radius: 5px;cursor: pointer}
.opciones:hover{background: #f9f9f9;color:#5a5a5a;transition: 0.3s}
i.dato_warning{color:red;margin: 0 3px}
.ico_standard, .ico_positivo, .ico_negativo, .ico_sugerencia{font-size: 12pt}
.ico_standard{color:#313131}
.ico_positivo{color:#618D0D}
.ico_negativo{color:#EA2E2E}
.ico_sugerencia{color:#ffbc00}
.super_ico_title i{position: absolute;right:3%;color: #f2f2f2}
.super_ico_title i.fas:hover{transform:none}
.box_parametros{display: flex;align-items: center;flex-direction: row;flex-wrap: wrap;gap: 0.5rem;margin:20px auto;}
.parametros{display: inline-flex;padding: 2px 5px;background: #fbfbff;border: 1px solid #d7d8df;border-radius: 5px;color:#686f89;line-height:25px}
.parametros img{width: 25px !important;}
.parametros i{font-size:8pt !important;cursor: pointer;transition: 0.3s;}
.parametros i:hover{font-size:10pt !important}
.parametrosLight{display: flex;align-items: center;width:100%;padding: 2px 5px;background: linear-gradient(#fff, #f9f9f9);background: -webkit-linear-gradient(#fff, #f9f9f9);background: -moz-linear-gradient(#fff, #f9f9f9);;border-radius: 10px;margin: 0 0 10px 0;color:#474747;line-height:25px;border: 1px solid #eee;}
.parametrosLight div:first-child{width:40%}
.parametrosLight div:nth-child(2){text-align: left;padding: 0 10px;}
.parametrosLight img {width: 50%;}
.parametrosLight i{font-size:8pt !important;cursor: pointer;transition: 0.3s;}
.parametrosLight i:hover{font-size:10pt !important}
.parametrosProfesional{display: flex;align-items: center;gap: 0.5rem;width:100%;padding: 10px 15px;background: linear-gradient(#fff, #f9f9f9);background: -webkit-linear-gradient(#fff, #f9f9f9);background: -moz-linear-gradient(#fff, #f9f9f9);;border-radius: 15px;margin: 0 0 10px 0;color:#474747;line-height:25px;border: 1px solid #eee;}
.parametrosProfesional div:first-child{width:5%;text-align: center;}
.parametrosProfesional div:nth-child(2){width:25%}
.parametrosProfesional div:nth-child(3){width:70%}
.parametrosProfesional img {width: 30% !important;border-radius: 50px;margin: 0 5px;vertical-align: middle;object-fit: cover;box-sizing: border-box;aspect-ratio: 1 / 1;}
.parametrosProfesional i{font-size:8pt !important;cursor: pointer;transition: 0.3s;}
.parametrosProfesional i:hover{font-size:10pt !important}
.parametrosProfesional div p{margin: 0;line-height: normal;}
.parametrosProfesional div p:first-child {font-size: 12pt;font-weight: 600;}
.sivo-servicio{position: relative;overflow: hidden;box-sizing: border-box;width: 100%;display: flex;align-items: center;min-height: 68px;margin: 0;padding: 10px 16px 10px 78px;background: linear-gradient(#fff, #f9f9f9);border: 1px solid #eee;border-radius: 15px;color: #474747;text-align: left;}
.sivo-servicio h4{margin: 0;font-size: 10pt;line-height: normal;}
.sivo-servicio p{margin: 0;color: #7a7a7a;line-height: normal;}
.sivo-servicio > img{position: absolute;left: -24px;top: 50%;transform: translateY(-50%);width: 88px;height: 88px;aspect-ratio: 1 / 1;border-radius: 50%;object-fit: cover;border: 1px solid #f1f1f1;}
.parametrosVehiculo{display: flex;align-items: center;gap: 0.5rem;width:100%;padding: 10px 15px;background: linear-gradient(#fff, #f9f9f9);background: -webkit-linear-gradient(#fff, #f9f9f9);background: -moz-linear-gradient(#fff, #f9f9f9);;border-radius: 15px;margin: 0 0 10px 0;color:#474747;line-height:25px;border: 1px solid #eee;}
.parametrosVehiculo div:first-child{width:5%;text-align: center;}
.parametrosVehiculo div:nth-child(2){width:25%}
.parametrosVehiculo div:nth-child(3){width:70%;text-align: left;}
.parametrosVehiculo img {width: 60% !important;border-radius: 50px;margin: 0 5px;vertical-align: middle;}
.parametrosVehiculo i{font-size:8pt !important;cursor: pointer;transition: 0.3s;}
.parametrosVehiculo i:hover{font-size:10pt !important}
.parametrosVehiculo div p{margin: 0;}
span.parametrosAnio {display: inline-block;background: #e3e3e3;padding: 5px 10px;border-radius: 15px;color: #292929;border: 1px solid #d3d3d3;margin: 2px 0;transition: 0.3s;}
span.parametrosAnio:hover{background: #eee;}
/*.parametrosVehiculo div p:first-child {font-size: 12pt;font-weight: 600;}*/
.box_parametros_vehiculos .vehiculo{width:100%;text-align: center;}
.encargado-ico{width: 25px;height: 25px;cursor: pointer;border-radius: 50%;display: inline-block;vertical-align:middle;text-align: center;line-height: 15px;border: 1px solid #cbcbcb;margin-right:5px;padding:0}
.encargado-ico img{margin:0;padding:0}
.print{right: 15%;position: absolute}
textarea.sesiones{width:100%;height:400px}
.parametrosVehiculoCliente{display: flex;align-items: center;gap: 0.5rem;width:100%;padding: 10px 15px;background: linear-gradient(#fff, #f9f9f9);background: -webkit-linear-gradient(#fff, #f9f9f9);background: -moz-linear-gradient(#fff, #f9f9f9);;border-radius: 15px;margin: 0 0 10px 0;color:#474747;line-height:25px;border: 1px solid #eee;}
.parametrosVehiculoCliente p{margin:0}

span.ingreso, span.egreso, span.monto_base{display: block;width: 100%;font-weight: 600;padding: 4px 5px;border-radius: 5px;text-align: center}
span.ingreso {background: #c1da92;color: #649306;}
span.egreso {background: #ffd1d1;color: #b15656;}
span.monto_base {background: #efefef;color: #bfbfbf;text-decoration: line-through;}
span.ingreso i, span.ingreso i{font-size:9pt}
span.label {background: #2792ef;color: #fff;font-weight: 600;padding: 2px 10px;border-radius: 10px;text-transform: uppercase;letter-spacing: 1px;font-size: 6pt;}
span.span-block{display: block;text-align: left;background: #f8f8f8;padding: 5px 10px;margin-bottom: 10px;border-radius: 10px;border: 1px solid #e0e0e0}

/* MENU BAR */
#showMenu{cursor:pointer}
.x-close{font-size:12pt;color:#292929;float:right;cursor:pointer}

/*-- LIST FLEX --*/
.grupo-header {display: flex;gap: 1rem;flex: 1;}

/*-- COL INLINE --*/
.seccion_inline_block{position:relative;display: inline-block;vertical-align: top;padding: 0.33%;border-radius: 10px;}
/*.seccion_inline_block > .seccion_inline_block {padding: 0;margin:0}*/
.col10{width:9.5% !important}.col15{width:14.5% !important}.col20{width:19.5% !important}.col25{width:24.5% !important}.col30{width:29.5% !important}.col33{width:32.5% !important}.col35{width:34.5% !important}.col40{width:39.5% !important}.col45{width:44.5% !important}.col50{width:49.5% !important}.col55{width:54.5% !important}.col60{width:59.5% !important}.col65{width:64.5% !important}.col70{width:69.5% !important}.col75{width:74.5% !important}.col80{width:79.5% !important}.col85{width:84.5% !important}.col90{width:89.5% !important}

/*-- HOMEWORKS --*/
.btn_homeworks{position: fixed;width: 35px;height: 45px;right: 0;top: 50%;padding: 10px;line-height: 25px;font-size: 20pt;background: -webkit-linear-gradient(#FFF,#F9F9F9);background: -moz-linear-gradient(#FFF,#F9F9F9);background: linear-gradient(#FFF,#F9F9F9);border-left: 1px solid #eee;border-top: 1px solid #eee;border-bottom: 1px solid #eee;border-top-left-radius: 10px;border-bottom-left-radius: 10px;cursor:pointer;z-index:9}
.box_homeworks{width: 15%;position: fixed;right: 0;top: 50%;margin-top:-175px;z-index:99}
.box_homeworks span.close {padding: 10px;background: -webkit-linear-gradient(#FFF,#F9F9F9);background: -moz-linear-gradient(#FFF,#F9F9F9);background: linear-gradient(#FFF,#F9F9F9);border-left: 1px solid #eee;border-top: 1px solid #eee;border-bottom: 1px solid #eee;border-top-left-radius: 10px;border-bottom-left-radius: 10px;position: absolute;margin-left: -27px;cursor:pointer}
.form_homeworks{padding: 10px 15px;background: -webkit-linear-gradient(#FFF,#F9F9F9);background: -moz-linear-gradient(#FFF,#F9F9F9);background: linear-gradient(#FFF,#F9F9F9);border-left: 1px solid #eee;border-top: 1px solid #eee;border-bottom: 1px solid #eee;border-bottom-left-radius: 10px}
.form_homeworks h2{font-size: 12pt;margin: 0}
.form_homeworks p{margin: 9px 0 0 0}
span.tareas_pendientes{position: absolute;background: #f00;color: #fff;width: 15px;height: 15px;font-size: 6pt;line-height: 15px;text-align: center;border-radius: 100%;font-weight: 600;right: 0px;top: 5px;z-index: 99}
textarea.info_homework{width: 100%;height: 45px;background: none;border: none;cursor: context-menu;color: #f90;box-sizing: border-box;resize: none}
.btn_inline{text-align:center}

.homeworks_list{background: #fff;border: 1px solid #f3f3f3;padding: 10px;border-radius: 20px;margin:0px 10px 30px 10px;box-shadow: 5px 10px 12px #f7f7fb;transition: 0.3s}
.homeworks_list:hover{background:#f9f9f9}
.homeworks_list .foto_usuario{width: 20%;margin-right: 10px}
.homeworks_list .foto_usuario, .homeworks_list p.responsable{display:inline-block;vertical-align:middle}
.homeworks_list .box_tarea{background: #e9f2fd;border: 1px dashed #d2ddeb;border-radius: 5px;padding: 10px;margin: 10px 0;}
.homeworks_list .box_tarea p i {color: #b4c2d3;margin: 0 5px 0 0;}
.homeworks_list p.responsable{width:60%}
.homeworks_list p.timer{text-align:center}
.homeworks_list p{margin: 0 0 4px}
.homeworks_list .simbologia{text-align: center}

/*-- SIMBOLOGIA --*/
.simbologia{margin:10px;font-size:10px}
.simbologia span{padding: 7px 10px;border-radius: 5px;margin: 5px;display: inline-flex}
.simbologia span.amarillo{background:#fcedc3;color:#9c7d11;border:1px solid #9c7d11}
.simbologia span.rojo{background:#ffd1d1;color:#b15656;border:1px solid #b15656}
.simbologia span.verde{background:#c1da92;color:#729929;border:1px solid #729929}
.simbologia span.gris{background:#e0e0e0;color:#4c4c4c;border:1px solid #4c4c5c}
.simbologia span.azul{background:#185082;color:#f6f6f6;border:1px solid #0f395f}

/*-- SIMBOLOGIA EN TABLE --*/
td div.simbologia {margin:0;text-align:center}

/*-- SIDEBAR --*/
#sidebar, .seccion_c-sidebar{display:inline-block;vertical-align:top;box-sizing: border-box}
#sidebar{width: 20%;}
#sidebar img{max-width: 100%;height: auto}
#sidebar h2{font-size: 11pt;text-align:center;font-weight: 600;margin: 0 0 25px 0}
#sidebar p{text-align:center}
.seccion_c-sidebar{width:79%;margin-bottom:20px;padding:0 1% 1% 0}
.box_sidebar{margin-bottom:20px}
.btn_sidebar{display: block;position:relative;width: 100%;overflow:hidden;background: -webkit-linear-gradient(#FFF,#F9F9F9);background: -moz-linear-gradient(#FFF,#F9F9F9);background: linear-gradient(#FFF,#F9F9F9);font-family: 'Quicksand';color: #3f3f3f;margin-bottom: 10px;padding: 20px;box-sizing: border-box;text-align: center;border-radius: 10px;border: 1px solid #e0e0e0;cursor: pointer}
.btn_sidebar:hover{background: linear-gradient(#f1f1f1, #ffffff);color: #1a1a1a;transition: 0.3s;}
.btn_sidebar i{position:absolute;left:0;top:50%;transform: translateY(-50%);font-size:38pt;color:#f3f3f3;}
.btn_sidebar:hover i{transform: scale(1.3);transition: 0.3s;color:#e9e9e9}
.btn_sidebar p{color:#3f3f3f;font-weight:600;text-align: center;margin: 0;z-index: 1;position: relative;}
.btn_sidebar p small{font-weight:400;}
.box_info_sidebar{position:relative;width:100%;min-height: 90px;color: #fff;margin-bottom: 20px;border-bottom-right-radius: 20px;border-top-left-radius: 20px;margin: 0 auto 10px auto;box-shadow: 5px 8px 5px #ececec}
.box_info_sidebar:last-child{margin-bottom:0}
.box_filtros{margin-bottom: 10%;padding:20px 10px}
ul.top_box li{background: #fff;margin-bottom: 10px;padding: 2%;border-radius:10px;border: 1px dashed #e0e0e0}
ul.top_box p.detalle_top{font-size:11px;margin:0;text-align:center}
ul.top_box button{background: -webkit-linear-gradient(#FFF, #F9F9F9);background: -moz-linear-gradient(#FFF, #F9F9F9);background: linear-gradient(#FFF, #F9F9F9);padding: 7px;border-radius: 20px;border: 1px solid #c3c3c3;width: 100%;color: #292929;margin-top: 5px;}
.top_foto, .top_nombre{display:inline-block;box-sizing:border-box;vertical-align:middle}
.top_foto{width:25%}
.top_nombre{width:72%;text-align:center;font-size:14pt}
span.stars_top{color:#ffbc00;position:relative}
.w_img{position: absolute;text-align: center;margin: 0 auto;font-size: 6pt;top: -10px;left: 0;width: 100%}
  
/* MAIN */
#main_box{width:100%;background:#fdfdfd;padding:0 0 133px 0;box-sizing:border-box}
#wrapper_content{position:relative;margin-left:var(--sidebar-width);margin-right:auto;padding:2%;box-sizing:border-box;min-height:100vh;max-width:2160px;transition:margin-left var(--sidebar-speed) cubic-bezier(0.4,0,0.2,1)}
.sidebar_menu.collapsed ~ #main_box #wrapper_content{margin-left:var(--sidebar-collapsed)}

/* =============================================
   NUEVO SIDEBAR UNIFICADO v2.0
   ============================================= */
:root{--sidebar-width:250px;--sidebar-collapsed:70px;--sidebar-bg:#f7f7f7;--sidebar-border:#e1e1e1;--sidebar-speed:0.3s;--sidebar-radius:10px}

.sidebar_menu{position:fixed;top:0;left:0;width:var(--sidebar-width);height:100vh;background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);display:flex;flex-direction:column;z-index:1000;transition:width var(--sidebar-speed) cubic-bezier(0.4,0,0.2,1);overflow:hidden;box-shadow:2px 0 8px rgba(0,0,0,0.04)}
.sidebar_menu.collapsed{width:var(--sidebar-collapsed)}

/* Sidebar Header */
.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 12px;border-bottom:1px solid var(--sidebar-border);flex-shrink:0;min-height:60px}
.sidebar-logo{display:flex;align-items:center;gap:10px;overflow:hidden;white-space:nowrap}
.sidebar-logo .logo-full{display:flex;align-items:center;overflow:hidden;line-height:0}
.sidebar-logo .logo-full a{display:block;line-height:0}
.sidebar-logo .logo-full img{max-height:32px;max-width:160px;display:block}
.sidebar-logo img.logo-icon{display:none}
.sidebar_menu.collapsed .sidebar-logo .logo-full{display:none}

.sidebar-toggle{background:none;border:none;color:#5f5f5f;font-size:16px;cursor:pointer;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:background var(--sidebar-speed),color var(--sidebar-speed);flex-shrink:0}
.sidebar-toggle:hover{background:#efefef;color:#ff8a00}
.sidebar_menu.collapsed .sidebar-toggle{margin:0 auto}

/* Sidebar Profile */
.sidebar-profile{padding:16px;text-align:center;border-bottom:1px solid var(--sidebar-border);flex-shrink:0;overflow:hidden;transition:padding var(--sidebar-speed)}
.sidebar-profile .foto_item img{width:80px;height:80px;border-radius:50%;border:2px solid #5f5f5f;object-fit:cover;transition:width var(--sidebar-speed),height var(--sidebar-speed)}
.sidebar-profile .foto_item img:hover{border-color:#ff8a00}
.sidebar-profile .profile-info{margin-top:8px;overflow:hidden;transition:opacity var(--sidebar-speed),max-height var(--sidebar-speed);max-height:80px}
.sidebar-profile h3{font-size:13px;font-weight:600;color:#3f3f3f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}
.sidebar-profile .role{font-size:11px;font-weight:600;color:#ff8a00;margin-top:2px}
.sidebar-profile .branch{font-size:10px;color:#999;margin-top:2px}
.sidebar_menu.collapsed .sidebar-profile{padding:12px 8px}
.sidebar_menu.collapsed .sidebar-profile .foto_item img{width:36px;height:36px}
.sidebar_menu.collapsed .sidebar-profile .profile-info{max-height:0;opacity:0;margin-top:0}

/* Sidebar Nav (scrollable) */
.sidebar-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:8px}
.sidebar-nav #options_account{margin:0;padding:0}
.sidebar-profile p{margin:0}
.sidebar-nav::-webkit-scrollbar{width:4px}
.sidebar-nav::-webkit-scrollbar-track{background:transparent}
.sidebar-nav::-webkit-scrollbar-thumb{background:#c0c0c0;border-radius:4px}
.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#999}

/* Direct link (Escritorio, etc.) */
.nav-link{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--sidebar-radius);color:#3f3f3f;font-size:13px;font-weight:500;transition:background var(--sidebar-speed),color var(--sidebar-speed);margin-bottom:4px;position:relative;white-space:nowrap;overflow:hidden}
.nav-link:hover{background:#efefef}
.nav-link.active{background:#fff;color:#ff8a00;box-shadow:inset 3px 0 0 #ff8a00}
.nav-link .nav-icon{width:20px;text-align:center;font-size:15px;color:#5f5f5f;flex-shrink:0;transition:color var(--sidebar-speed)}
.nav-icon img{width:18px;height:18px;object-fit:contain;vertical-align:middle;display:inline-block}
.nav-link.active .nav-icon{color:#ff8a00}
.nav-link .nav-label{transition:opacity var(--sidebar-speed)}
.sidebar_menu.collapsed .nav-link .nav-label{display:none}
.sidebar_menu.collapsed .nav-link{justify-content:center;padding:10px 0;gap:0}

/* Menu group (accordion) */
.menu-group{margin-bottom:2px;position:relative}
.menu-group ul{margin:0}
.menu-group-header{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--sidebar-radius);cursor:pointer;font-size:13px;font-weight:500;transition:background var(--sidebar-speed);white-space:nowrap;overflow:hidden;user-select:none}
.menu-group-header:hover{background:#efefef}
.menu-group-header .nav-icon{width:20px;text-align:center;font-size:15px;color:#5f5f5f;flex-shrink:0}
.menu-group-header .nav-label{flex:1;transition:opacity var(--sidebar-speed);color:#000}
.menu-group-header .nav-arrow{font-size:11px;color:#999;transition:transform var(--sidebar-speed),opacity var(--sidebar-speed);flex-shrink:0}
.menu-group.open .menu-group-header .nav-arrow{transform:rotate(180deg)}
.menu-group.open .menu-group-header{background:#efefef}
.sidebar_menu.collapsed .menu-group-header{justify-content:center;padding:10px 0;gap:0}
.sidebar_menu.collapsed .menu-group-header .nav-label{display:none}
.sidebar_menu.collapsed .menu-group-header .nav-arrow{display:none}

/* Sub-items */
.menu-group-items{max-height:0;overflow:hidden;transition:max-height 0.35s ease;list-style:none;padding:0;margin:0}
.menu-group.open .menu-group-items{max-height:600px}
.sidebar_menu.collapsed .menu-group-items{max-height:0 !important}
.menu-group-items > li,.menu-group-items > li{display:block;padding:8px 12px 8px 44px;font-size:12px;color:#5f5f5f;border-radius:6px;transition:background var(--sidebar-speed),color var(--sidebar-speed);cursor:pointer;white-space:nowrap}
.menu-group-items li a{color:#5f5f5f}
.menu-group-items li:hover, .menu-group-items li a:hover,.menu-group-items li span:hover{color:#ff8a00}
.menu-group-items li a.active{color:#ff8a00;font-weight:600}
.menu-sub-items{list-style:none;padding-left:10px}
.menu-sub-items li {padding: 8px 12px 8px 10px;}

/* Section labels */
.nav-section-label{padding:8px 12px 4px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:#999;overflow:hidden;white-space:nowrap;transition:opacity var(--sidebar-speed)}
.sidebar_menu.collapsed .nav-section-label{opacity:0}

/* Calendar inside sidebar */
.sidebar_menu.collapsed .wrapper-calendar{display:none}

/* Flyouts (generated by JS, appended to body) */
.menu-flyout{display:none;position:fixed;left:var(--sidebar-collapsed);background:#fff;border:1px solid var(--sidebar-border);border-radius:0 10px 10px 0;box-shadow:4px 4px 16px rgba(0,0,0,0.1);padding:8px 0;min-width:180px;z-index:1001;white-space:nowrap}
.menu-flyout .menu-group-items{max-height:none;overflow:visible;display:block}
.menu-flyout .menu-sub-items{display:block}
.menu-flyout.visible{display:block}
.menu-flyout .flyout-title{padding:8px 16px;font-size:12px;font-weight:700;color:#3f3f3f;border-bottom:1px solid #f0f0f0;margin-bottom:4px}
.menu-flyout li{list-style:none;border:none !important;padding:0 !important;margin:0 !important}
.menu-flyout li a,.menu-flyout li span{display:block;padding:7px 16px;font-size:12px;color:#5b5b5b;transition:background 0.2s,color 0.2s;cursor:pointer}
.menu-flyout li a:hover,.menu-flyout li span:hover{background:#f5f5f5;color:#ff8a00}

/* Tooltips (collapsed mode) */
.sidebar-tooltip{display:none;position:fixed;left:var(--sidebar-collapsed);background:#333;color:#fff;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;z-index:1001;white-space:nowrap;box-shadow:2px 2px 8px rgba(0,0,0,0.15)}
.sidebar-tooltip.visible{display:block}
.sidebar-tooltip::before{content:'';position:absolute;left:-5px;top:50%;transform:translateY(-50%);border:5px solid transparent;border-right-color:#333;border-left:none}

/* Sidebar Utilities — grid de botones compactos */
.sidebar-utilities{flex-shrink:0;border-top:1px solid var(--sidebar-border);padding:10px 12px;background:var(--sidebar-bg);display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
.utility-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;font-size:14px;color:#5f5f5f;background:#fff;border:1px solid #e8e8e8;transition:background var(--sidebar-speed),color var(--sidebar-speed),border-color var(--sidebar-speed),box-shadow var(--sidebar-speed);cursor:pointer;position:relative}
.utility-btn:hover{background:#fff;color:#ff8a00;border-color:#ff8a00;box-shadow:0 2px 6px rgba(255,138,0,0.12)}

/* Tareas badge */
.utility-btn #tareas_pendientes{position:absolute;top:-5px;right:-5px}
.utility-btn #tareas_pendientes span{background:#ff8a00;color:#fff;font-size:8px;font-weight:700;min-width:14px;height:14px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;padding:0 3px;line-height:1}

/* Sidebar Logout & legacy utility-item (used in logout) */
.utility-item{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:8px;font-size:12px;font-weight:500;color:#5f5f5f;transition:background var(--sidebar-speed),color var(--sidebar-speed);cursor:pointer;white-space:nowrap;overflow:hidden;position:relative}
.utility-item:hover{background:#efefef;color:#3f3f3f}
.utility-item.danger{color:#e74c3c}
.utility-item.danger:hover{background:#fef2f2;color:#e74c3c}
.utility-icon{width:20px;text-align:center;font-size:14px;flex-shrink:0;position:relative}
.utility-label{transition:opacity var(--sidebar-speed)}

/* Nav & Utility Tooltips */
.nav-tooltip,.utility-tooltip{display:none;position:fixed;left:var(--sidebar-collapsed);background:#333;color:#fff;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;z-index:1001;white-space:nowrap;box-shadow:2px 2px 8px rgba(0,0,0,0.15)}
.nav-tooltip.visible,.utility-tooltip.visible{display:block}
.nav-tooltip::before,.utility-tooltip::before{content:'';position:absolute;left:-5px;top:50%;transform:translateY(-50%);border:5px solid transparent;border-right-color:#333;border-left:none}

/* Sidebar Logout — siempre visible */
.sidebar-logout{flex-shrink:0;border-top:1px solid var(--sidebar-border);padding:8px}
.sidebar-logout .utility-item{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:8px;font-size:12px;font-weight:500;color:#e74c3c;transition:background var(--sidebar-speed);cursor:pointer;white-space:nowrap;overflow:hidden;position:relative}
.sidebar-logout .utility-item:hover{background:#fef2f2}
.sidebar_menu.collapsed .sidebar-logout .utility-item{justify-content:center;padding:8px 0;gap:0}
.sidebar_menu.collapsed .sidebar-logout .utility-label{display:none}

/* Sidebar Footer */
.sidebar-footer{padding:8px 16px;border-top:1px solid var(--sidebar-border);text-align:center;flex-shrink:0;overflow:hidden;transition:opacity var(--sidebar-speed)}
.sidebar-footer span{font-size:10px;color:#999;font-weight:500}
.sidebar_menu.collapsed .sidebar-footer{opacity:0;padding:4px;height:0;min-height:0}

/* Sidebar Overlay (mobile) */
.sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.4);z-index:999;opacity:0;transition:opacity var(--sidebar-speed)}
.sidebar-overlay.active{display:block;opacity:1}

/* Mobile Topbar */
.topbar-mobile{display:none;align-items:center;justify-content:space-between;padding:10px 16px;background:#fff;border-bottom:1px solid var(--sidebar-border);position:sticky;top:0;z-index:500}
.topbar-mobile .mobile-hamburger{background:none;border:none;font-size:20px;color:#3f3f3f;cursor:pointer;padding:4px 8px}
.topbar-mobile-logo{display:flex;align-items:center;justify-content:flex-end;flex:1;line-height:0}
.topbar-mobile-logo img{max-height:28px;display:block}
.topbar-mobile-logo a{display:block;line-height:0}


/* =============================================
   SIDEBAR RESPONSIVE
   ============================================= */
@media (max-width:1024px){
	.sidebar_menu:not(.mobile-open){width:var(--sidebar-collapsed)}
	.sidebar_menu:not(.mobile-open) .sidebar-logo .logo-full{display:none}
	.sidebar_menu:not(.mobile-open) .sidebar-toggle{margin:0 auto}
	.sidebar_menu:not(.mobile-open) .sidebar-profile{padding:12px 8px}
	.sidebar_menu:not(.mobile-open) .sidebar-profile .foto_item img{width:36px;height:36px}
	.sidebar_menu:not(.mobile-open) .sidebar-profile .profile-info{max-height:0;opacity:0;margin-top:0}
	.sidebar_menu:not(.mobile-open) .nav-link .nav-label{display:none}
	.sidebar_menu:not(.mobile-open) .nav-link{justify-content:center;padding:10px 0;gap:0}
	.sidebar_menu:not(.mobile-open) .menu-group-header{justify-content:center;padding:10px 0;gap:0}
	.sidebar_menu:not(.mobile-open) .menu-group-header .nav-label{display:none}
	.sidebar_menu:not(.mobile-open) .menu-group-header .nav-arrow{display:none}
	.sidebar_menu:not(.mobile-open) .menu-group-items{max-height:0 !important}
	.sidebar_menu:not(.mobile-open) .nav-section-label{opacity:0}
	.sidebar_menu:not(.mobile-open) .wrapper-calendar{display:none}
	.sidebar_menu:not(.mobile-open) .sidebar-logout .utility-item{justify-content:center;padding:8px 0;gap:0}
	.sidebar_menu:not(.mobile-open) .sidebar-logout .utility-label{display:none}
	.sidebar_menu:not(.mobile-open) .sidebar-footer{opacity:0;padding:4px;height:0;min-height:0}
	#wrapper_content{margin-left:var(--sidebar-collapsed) !important}
}

@media (max-width:768px){
	.sidebar_menu{transform:translateX(-100%);width:280px !important;z-index:2000}
	.sidebar_menu.mobile-open{transform:translateX(0)}
	.sidebar_menu.mobile-open .sidebar-toggle{margin:0 !important}
	.sidebar_menu.mobile-open .sidebar-logo .logo-full{display:flex !important}
	.sidebar_menu.mobile-open .sidebar-profile .foto_item img{width:60px !important;height:60px !important}
	.sidebar_menu.mobile-open .sidebar-profile .profile-info{max-height:80px !important;opacity:1 !important}
	.sidebar_menu.mobile-open .nav-link .nav-label{display:inline !important}
	.sidebar_menu.mobile-open .nav-link{justify-content:flex-start !important;padding:10px 12px !important;gap:12px !important}
	.sidebar_menu.mobile-open .menu-group-header{justify-content:flex-start !important;padding:10px 12px !important;gap:12px !important}
	.sidebar_menu.mobile-open .menu-group-header .nav-label{display:inline !important}
	.sidebar_menu.mobile-open .menu-group-header .nav-arrow{display:inline !important}
	.sidebar_menu.mobile-open .menu-group.open .menu-group-items{max-height:600px !important}
	.sidebar_menu.mobile-open .nav-section-label{opacity:1 !important}
	.sidebar_menu.mobile-open .sidebar-logout .utility-item{justify-content:flex-start !important;padding:8px 12px !important;gap:12px !important}
	.sidebar_menu.mobile-open .sidebar-logout .utility-label{display:inline !important}
	.sidebar_menu.mobile-open .sidebar-footer{opacity:1 !important;padding:8px 16px !important;height:auto !important}
	.topbar-mobile{display:flex}
	#wrapper_content{margin-left:0 !important}
}

/* FIN SIDEBAR UNIFICADO */

.info_panel{width:100%;margin-bottom:2%}
.box1_index{width:32%;float:left}
iframe.video_viral{width:100%;height:250px;margin:1% 0}
.info_ingresos{padding:1%;background: linear-gradient(#FFFFFF, #E8E8E8);background: -webkit-linear-gradient(#FFFFFF, #E8E8E8);background: -moz-linear-gradient(#FFFFFF, #E8E8E8);border: 1px solid #DDD;text-align:center;margin-bottom:10px}
.ingreso_mes_actual{font-size:32px;font-weight: 600;color:#268300}
.ingreso_mes_anterior{font-size:20px}

.img_prod_del_mes{border-radius: 100%;width: 80px;height: 80px;border: 5px solid #fbfbff;margin: 0 auto;margin-bottom: 20px}
.img_prod_del_mes img{border-radius:100%;width:100%}

/* LOADING */
#load_screen{position: fixed;width: 100%;height: 100%;top:0;left:0;background: #fdfdfd;z-index:999999999}
#loading{text-align: center;position: relative;top: 50%;margin-top:-220px}
#loading img.normal{max-width: 400px;border-radius: 100%;}
#loading img{border-radius: 30px;}
#loading img.ico{background: #fff;border-radius: 50%;border: 2px solid #c0c0c0;margin-bottom: 20px}
#loading h1{text-align: center; font-weight:900;font-size:3.5em;color:#f90;margin: 0 auto 10px auto}
#loading h3{margin: 0 auto 10px auto;color: #8a8a8a;text-transform: uppercase;letter-spacing: 1px}

/* MINI BTNS PANELES */
.panel-minibtns {display: inline-flex;vertical-align: bottom;align-items: center;margin: 0 10px 20px 10px;background: #fff;border: 1px solid #efefef;border-radius: 10px;padding: 8px;box-shadow: 3px 3px 10px #ededed;}
.panel-minibtns > div {width: 30px;height: 30px;text-align: center;line-height: 30px;cursor:pointer}
.panel-minibtns button{padding:0}
.panel-minibtns button:disabled{background:none}
.panel-minibtns i, .panel-minibtns a{font-size: 14pt;color:#f90}
.panel-minibtns i:hover{transform: scale(1.2);transition: 0.3s;color:#268300}
.minibtns-disabled i, .minibtns-disabled a{color:#ddd}

/* NOTIFICACIONES BOX SUPERIOR */
.mini_notif_resumen {display: flex;background: #fff;padding: 10px;border: 1px solid #eee;align-items: flex-start;gap: 1rem;text-align: left;}
.mini_notif_resumen:hover{background:#fbfbff}
.mini_notif_resumen .foto_usuario, .mini_notif_resumen .info_notif{display: inline-block;vertical-align:middle}
.mini_notif_resumen .foto_usuario{width:10%}
.mini_notif_resumen .info_notif{width:55%}
.mini_notif_resumen form button:after{color: #eee;border-radius: 10px;background: #181818}
.mini_notif_resumen p.actividad{color: #ff8a00}
.mini_notif_resumen p{margin: 0 0 4px}
.mini_notif_resumen form{display: inline-block}
.mini_notif_resumen form button{color: #181818;border-radius: 10px;background: #f9f9f9}
.mini_notif_resumen small{width:100%;display:block;padding:2px 0}

/*-- PRODUCCION DEL DÍA --*/
#produccionActual{}
.wrapper_produccion_actual {display: inline-block;width: 33%;box-sizing: border-box;vertical-align: top;text-align: center;padding: 10px}
.wrapper_produccion_actual h2{text-align:center}
/*.box-ListaPedidos > div {transition: 0.3s;}
.box-ListaPedidos > div:hover {transform: scale(1.02);}*/
/*.box-ListaPedidos{height: 100%;max-height: 350px;overflow-y: overlay;overflow-x: hidden;;padding: 0px 10px;}*/
/*.box-ListaPedidos::-webkit-scrollbar{width: 5px;height: 5px;}*/
/* Ponemos un color de fondo y redondeamos las esquinas del thumb */.box-ListaPedidos::-webkit-scrollbar-thumb {background: #bfbfbf;border-radius: 4px}
/* Cambiamos el fondo y agregamos una sombra cuando esté en hover */.box-ListaPedidos::-webkit-scrollbar-thumb:hover {background: #6e6e6e;box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.2)}
/* Cambiamos el fondo cuando esté en active */.box-ListaPedidos::-webkit-scrollbar-thumb:active {background-color: #999999}
/* Ponemos un color de fondo y redondeamos las esquinas del track */.box-ListaPedidos::-webkit-scrollbar-track {background: #ddd;border-radius: 4px}
/* Cambiamos el fondo cuando esté en active o hover */.box-ListaPedidos::-webkit-scrollbar-track:hover,.box-ListaPedidos::-webkit-scrollbar-track:active {background: #d4d4d4}
.box_produccion_actual{position: relative;background: -webkit-linear-gradient(#FFF,#F9F9F9);background: -moz-linear-gradient(#FFF,#F9F9F9);background: linear-gradient(#FFF,#F9F9F9);margin-bottom: 10px;border: 1px solid #ddd;border-top-left-radius: 12px;border-bottom-right-radius: 12px;color: #888888;width: 100%;text-align:left;box-shadow: 4px 5px 4px #f5f5f5;box-sizing:border-box}
.box_produccion_actual h2.empresa{font-size:11pt}
.box_produccion_actual p.solicitante{font-size:8pt}
.box_produccion_actual h2, .box_produccion_actual p{text-align:left;margin:0}
.box_produccion_actual .left_bar{display: inline-block;width: 2%;height: 100%;position: absolute;border-top-left-radius: 13px}
.box_produccion_actual .left, .box_produccion_actual .mid, .box_produccion_actual .right{position:relative;display:inline-block;vertical-align:middle;padding: 2% 2%;box-sizing:border-box;}
.box_produccion_actual .left{width:15%;border-right: 1px solid #e4e3e3;text-align: center !important}
.box_produccion_actual .mid{width:50%;border-right: 1px solid #e4e3e3}
.box_produccion_actual .right{width: 32%;text-align: center !important}
.box_produccion_actual button {background: -webkit-linear-gradient(#FFF, #F9F9F9);background: -moz-linear-gradient(#FFF, #F9F9F9);background: linear-gradient(#FFF, #F9F9F9);padding: 7px;border-radius: 20px;width: 35px;border: 1px solid #c3c3c3;}
.box_produccion_actual button i{font-size: 14pt;color: #4c4d5f;}
.bg_logo_clear{width: 100%;height: 100%;position: absolute;opacity: 0.02;background-size: contain !important;z-index: 0;filter: grayscale(1)}

/*-- FORMULARIO --*/
.input-form-light{width: 100%;border: 1px solid #ccc;background:#fff;border-radius: 20px;box-sizing: border-box;margin: 5px 0px;padding: 5px;position: relative}
.input-form-light:after{margin: 10px}
.input-form-light span{color:#757575;font-size: 8pt;background: #fff;position: absolute;top: -8px;left: 10px;padding: 0 10px;border-radius:5px;font-weight: 600;letter-spacing: 0.25px;}
.input-form-light .form-control-light{display: block;background:none;width: 100%;height: 45px;box-sizing: border-box;border: none;font-size: 12px;padding: 10px 10px}
.input-form-light .form-control-light:focus{outline: none !important}
.input-form-light .form-control-light:disabled{background: #f8f8f8;color: #858585;border-radius:20px}
.input-form-light .form-control-light[readonly]{background: #fafafa;color: #858585}
.input-form-light .helper_input {position: absolute;top: 20px;right: 15px;background: #fff;padding: 0 0 0 7px;}
.input-form-light .helper_input i{color:#d5d6e5}

.input-form-clear{width: 100%;border: none;background: #fff;border-radius: 5px;box-sizing: border-box}
.input-form-clear .form-control-clear{display: block;background:none;width: 100%;height: 45px;box-sizing: border-box;border: none;padding: 10px 10px}
.input-form-clear .form-control-clear:focus{outline: none !important}
.input-form-clear .form-control-clear:disabled{background: #f8f8f8;color: #858585;border-radius:20px}

.file-select{position: relative;display: inline-block;width:100%;height:34px;margin:0 0 10px 0;border-radius: 5px;}
.file-select:hover{opacity:0.8;transition: 0.3s}
.file-select::before{background: linear-gradient(#fff, #f0f0f0);background: -webkit-linear-gradient(#fff, #f0f0f0);background: -moz-linear-gradient(#fff,#f0f0f0);color: #1a1919;display: flex;justify-content: center;align-items: center;border: 1px solid #ccc;border-radius: 5px;content: 'Seleccionar Archivo';position: absolute;left: 0;right: 0;top: 0;bottom: 0;padding: 14px;cursor: pointer;}
.file-select input[type="file"] {opacity: 0;width: 200px;height: 38px;display: inline-block}

.img-select{position: relative;display: inline-block;width:100%;height:150px;margin:10px 0;border-radius: 5px;}
.img-select:hover{opacity:0.8;transition: 0.3s}
.img-select::before{background: linear-gradient(#fff, #f0f0f0);background: -webkit-linear-gradient(#fff, #f0f0f0);background: -moz-linear-gradient(#fff,#f0f0f0);color: #1a1919;display: flex;justify-content: center;align-items: center;border: 1px solid #ccc;border-radius: 5px;content: 'Tomar fotografía';position: absolute;left: 0;right: 0;top: 0;bottom: 0;padding: 14px;cursor: pointer;}
.img-select input[type="file"] {opacity: 0;width: 200px;height: 38px;display: inline-block}

.textarea_form-light{display:block;width:100%;box-sizing:border-box;padding:6px 12px;background-color:#fff;border:none;border-radius:20px;}
.textarea_form-light:focus{outline: 0}

.form-group{display:flex;margin:15px 0;align-items:center;gap:1rem;justify-content: space-between;}
.form-group label{float:left;width:28%;font-weight:600;text-align:right;padding:10px 10px 0 0;font-size:11px}
.top-flex {align-items: flex-start;}
.input-form{float:right;width:80%}
table.table_form{width:100%;margin-bottom:5%}
table.table_form td.campo{width:25%;text-align:right;font-size: 12px;font-weight: 600;padding: 0 10px 0 0}
textarea.infobox{width:100%;height:80px;border-radius:20px;border:1px solid #ccc;box-sizing:border-box;padding: 6px 12px}
.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control {cursor: not-allowed;background-color: #f5f5f5;opacity: 1}
.seccion_inline{display:inline-block;vertical-align:top;padding: 1%;box-sizing: border-box}
.box_detalle_cotizacion{width:70%}
.box_cotizacion{width:29%}
.box_informacion_preview{width:80%;max-width:1900px;margin:0 auto;position:relative;min-height: 100vh;}
td#separador{text-align:left;text-transform: uppercase;padding: 0 1%;font-weight: 600}
td.middle{vertical-align:middle !important}
td.top{vertical-align:top !important}
td.campo, th.campo{font-weight:600;padding:10px}
.up_btn{display: table;margin-bottom: 10px;width: 100%}
.up_btn label{float: left;font-weight: 600;text-align: right;padding: 10px 10px 0 0}
.toggle_editar {background: #fbfbff;border-radius: 20px;border: 1px solid #c6cbe5;padding: 5px 10px;width: max-content;margin: 0 0 15px auto;}
.toggle_editar label{cursor:pointer}

.footer_form{position: relative;width: 100%;height: auto;overflow: hidden;min-height: 285px;padding:20px 0;margin-bottom: 20px}
.footer_form-content{width: 45%;margin:0 0 20px auto;padding: 2%;background:#fff;border: 1px solid #f1f1f1;border-radius: 20px;box-sizing: border-box;box-shadow: 5px 10px 12px #f7f7fb;}
.footer_form-content h2{color: #808080}

h2.dashed_line > i, .title_seccion:first-child > div > i{background: #adaeb9;padding: 0px;width: 20px;height: 20px;border-radius: 100%;color: #fff;font-size: 13px;text-align: center;line-height: 20px;margin-right: 5px}

.form_estado_pedidos{width:100%;padding:2%;border: 1px solid #f1f1f1;border-radius: 15px;background: -webkit-linear-gradient(#FFF,#f3f3f3);background: -moz-linear-gradient(#FFF,#F9F9F9);background: linear-gradient(#FFF,#F9F9F9);box-sizing:border-box}
.img_mini_estado{margin-bottom:20px;text-align:center}
.img_mini_estado img{max-width: 100%;height: auto}

.box_agregar_cliente{background: #ffbc00;padding: 5px 10px;border-radius: 10px;box-sizing: border-box}

input.switch[type=checkbox]{height: 0;width: 0;visibility: hidden;display: none}
label.checkbox-label {cursor: pointer;text-indent: -9999px;width: 50px;height: 25px;background: grey;display: block;border-radius: 50px;position: relative;margin: 0 auto}
label.checkbox-label:after {content: '';position: absolute;top: 5px;left: 5px;width: 15px;height: 15px;background: #fff;border-radius: 10px;transition: 0.3s}
input:checked + label.checkbox-label {background: #618D0D}
input:checked + label.checkbox-label:after {left: calc(100% - 5px);transform: translateX(-100%)}
label.checkbox-label:active:after {width: 50px}

.box_perfil_cliente, .box_perfil_profesional, .box_perfil_cancha, .box_perfil_car{display: flex;align-items: center;gap:1rem}
.box_perfil_cliente div:first-child, .box_perfil_profesional div:first-child, .box_perfil_cancha div:first-child {width: 85%;margin: auto;}
.box_perfil_cliente div:nth-child(2), .box_perfil_profesional div:nth-child(2), .box_perfil_cancha div:nth-child(2) {width:100%}
.box_perfil_cliente .imgCliente, .box_perfil_profesional .imgProfesional, .box_perfil_cancha .imgCancha{padding: 0 10px}
.box_perfil_cliente .imgCliente img, .box_perfil_profesional .imgProfesional img, .box_perfil_cancha .imgCancha img{height: 100%;object-fit: cover;box-sizing: border-box;aspect-ratio: 1 / 1;border-radius: 50%;border: 5px solid #ddd;}

.box_perfil_car > div:first-child{width: 60%;}
.box_perfil_car #imgCar, .box_perfil_car .imgCar{width: 100%;}
.box_perfil_car #imgCar img, .box_perfil_car .imgCar img{height: 100%;object-fit: cover;box-sizing: border-box;}

/*-- ENTRADAS -- */
.footer-data_entradas {display: flex;align-items: center;justify-content: space-between;padding: 2px 15px;background: #fbfbff;border: 1px solid #ededed;border-radius: 20px;color: #252525;}

/*-- CLASIFICACIÓN CLIENTE --*/
.rating_cliente {width:100%;padding: 5px 15px;border-radius: 5px;font-weight: 600;color: white;display: inline-block;text-align: center;font-size: 7pt;letter-spacing: 1px;text-transform: uppercase;}
.rating_cliente i {font-size: 9pt !important;opacity: 0.6;}
.rating_cliente.premium {background: #f39a01}
.rating_cliente.recurrente {background: #818181}
.rating_cliente.ocasional {background: #b98b5d}
.rating_cliente.inactivo {background: #eee;color: #959595;}
.rating_cliente.error {background: linear-gradient(45deg, #DC3545, #C82333, #A71D2A);}

/*-- SIVO CARS --*/
#boxes_vehiculos{margin:20px 0}
.formVehiculoClientes{display:flex;width:100%;margin-bottom:20px;padding:12px;background:#fcfdff;border:1px solid #e6eaf0;border-radius:12px;flex-direction:column;align-items:stretch;gap:12px}
.formVehiculoClientes .vehiculoResumenWrap{width:100%}
.formVehiculoClientes .boxCar{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;background:#ffffff;border:1px solid #e8edf1;border-radius:10px}
.formVehiculoClientes .boxCar > div:first-child{flex:0 0 60px}
.formVehiculoClientes .boxCar > div:first-child img{width:60px;border-radius:8px}
.formVehiculoClientes .boxCar > div:nth-child(2){flex:1;min-width:0}
.formVehiculoClientes .boxCar > div:nth-child(2) p{margin:0;line-height:1.3}
.formVehiculoClientes .boxCar i{margin-left:auto}
.formVehiculoClientes .box_form{width:100%;padding:0}
.formVehiculoClientes .box_form > .form-group{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}
.formVehiculoClientes .box_form > .form-group + .form-group{margin-top:8px}
.formVehiculoClientes .box_form .input-form-light{width:100%}
@media (max-width: 1200px){
	.formVehiculoClientes .box_form > .form-group{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 780px){
	.formVehiculoClientes .box_form > .form-group{grid-template-columns:1fr}
}
#detail-car{position: relative;}
#img_vehiculo-taller {position:relative;height: 550px;}
#img_vehiculo-taller img{max-width: 55%;max-height: 745px;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);}
.box_informacion_preview #img_vehiculo-taller img{max-width: 65%;max-height: 745px;}
.ficha_vehiculo {min-width:240px;background: linear-gradient(220deg, #ffffffb8, #ebebebeb, #f7f7f7b8);color: #000000;border-radius: 20px;border: 1px solid #ebebeb;padding: 20px 40px;position: absolute;right: 5%;top: 50%;box-shadow: 5px 10px 12px #f7f7fb;transform: translateY(-50%);text-align: center;}
.ficha_vehiculo .road-path {bottom: 0;top: auto;}
.ficha_vehiculo > div{margin-bottom: 10px;}
.ficha_vehiculo > div span{display: block;background:#fff;padding:5px 15px;border-radius: 20px;}
.road-path{position: absolute;width: 50% !important;max-width: 200px !important;right:0;top:0;z-index: -1;content: url("https://app.mysivo.com/images/road-path.png");opacity: 0.1;}
.ficha_vehiculo .mini-btn{background: -webkit-linear-gradient(#717171, #252525);background: -moz-linear-gradient(#717171, #252525);background: linear-gradient(#717171, #252525);color:#fff;border-radius: 10px;transition: 0.3s;}
.ficha_vehiculo .mini-btn:hover{opacity:0.8}
.ficha_vehiculo div label{background: #fff;border-top-left-radius: 5px;border-top-right-radius: 5px;padding: 2px 10px;letter-spacing: 4px;font-size: 8pt;color: #373737;}
.multimedia_taller .items_gallery img{border-radius: 10px;}
.multimedia_taller video.video_taller{width:100%;border-radius: 10px}
.patente{background:#fff;width: max-content;font-size: 14pt;border-radius: 7px;padding: 5px 15px;border: 1px solid #000;letter-spacing: 1px;font-weight: 600;}
.mini-patente{width: max-content;background:#fff;font-size: 9pt;border-radius: 5px;padding: 3px 8px;border: 1px solid #000;letter-spacing: 1px;font-weight: 600;margin: 0 auto;}
.nota-ingreso {background:#fbfbff;border-radius: 10px;border: 1px solid #eee;padding: 20px;margin: 0 0 20px 0;}
span.parametrosLight.delete i {width: 20px;height: 20px;background: #ea2e2e;line-height: 20px;color: #fff;border-radius: 20px;}
.estado_inspeccion {width:100%;min-width:250px;margin: 15px 0;display: flex !important;padding: 0 !important}
.estado_inspeccion div {width: 100% !important;height: 30px;line-height: 30px;text-align: center;font-size: 7.5pt;border: 1px solid #ddd;color: #b3b3b3;font-weight: 600;letter-spacing: 1px;cursor:pointer;transition: 0.3s;}
.estado_inspeccion div:hover {transform: scale(1.1);}
.estado_inspeccion > div{width: 33.3333333333333333%;background: #fff;}
.estado_inspeccion .sin_estado{background:#fbfbff;border: 1px solid #e8edf1;border-radius: 20px;}
.estado_inspeccion .malo{border-top-left-radius: 10px; border-bottom-left-radius: 10px;}
.estado_inspeccion .malo.activo { background-color: red; color: white; }
.estado_inspeccion .regular.activo { background-color: orange; color: white; }
.estado_inspeccion .bueno.activo { background-color: green; color: white; }
.estado_inspeccion .bueno{border-top-right-radius: 10px; border-bottom-right-radius: 10px;}
.nota_inspeccion{font-size: 13pt;font-weight: 600;}
.nota_inspeccion.deficiente{color: #fd2828;}
.nota_inspeccion.aceptable{color: #fdb228;}
.nota_inspeccion.buen-estado{color: #618d0d;}
.nota_inspeccion.excelente{color: #2891fd;}
.leyenda-notas .nota_inspeccion{font-size: 10pt;}

.accion_tarea {display: flex;gap: 0.5rem;justify-content: center;flex-direction: row;}
.accion-btn {background: #fbfbff;border: 1px solid #e8edf1;padding: 6px 10px;border-radius: 8px;font-size: 0.75rem;cursor: pointer;transition: 0.2s ease;}
.accion-btn:hover {transform: translateY(-1px);}
.accion-btn.activo {border-color: #618D0D;background: #618D0D;color: white;}

/* ETAPAS PERSONALIZADAS */
.wrapper_etapas{margin-bottom: 20px;}
.etapas-container {display: flex;justify-content: center;font-family: sans-serif;margin: 20px 0;}
.etapa {position: relative;display: flex;align-items: center;justify-content: flex-start;padding: 20px 25px;width: 50%;color: #000;font-weight: 600;border-radius: 8px;}
.etapa.actual {clip-path: polygon(0 0, calc(100% - 20px) 0, 100% 50%, calc(100% - 20px) 100%, 0 100%);color: #000;position: relative;}
.etapa.siguiente {background-color: #eee;color: #999;clip-path: polygon(20px 0, 100% 0, 100% 100%, 20px 100%, 0 50%);}
.etapa .icono{font-size: 64pt;position: absolute;left: 0;opacity: 0.15;color: #d1d1d1;}
.etapa .numero {font-size: 80px;font-weight: 600;position: absolute;right: 20px;top: 50%;transform: translateY(-50%);opacity: 0.5;}
.etapa .texto {text-align:left;z-index: 1;}
.etapa .titulo {font-size: 14px;color: #ffffff7d;}
.etapa .nombre {font-size: 24px;margin-top: 5px;color: #ffffff;}
.etapa .descripcion {font-size: 11px;margin-top: 5px;}

/*-- PRECIOS LISTA INDEX PRODUCTOS --*/
span.label_porcent_discount{display: inline-flex;background: #2792ef;color: #fff;padding: 5px 10px;border-radius: 5px;margin-bottom:5px;}
span.precio_normal, span.precio_oferta{display:block;font-weight:600;font-size: 10pt;color:#618d0d;margin-bottom:5px;}
span.precio_normal-tachado{display:block;font-size: 9pt;color: #5e5e5e;text-decoration-line: line-through;}

/*-- DTE --*/
.logo_DTE{max-width: 150px;}
.btns-DTES {display: flex;align-items: flex-start;gap: 1rem;}
.box_select_DTE {transform: translateY(20px);transition: opacity 0.6s ease, transform 0.6s ease;position: relative;width: 100%;display: block;background: #fff;text-align: center;margin-bottom: 20px;padding: 20px 20px;border: 1px solid #f1f1f1;border-radius: 20px;box-sizing: border-box;box-shadow: 5px 10px 12px #f7f7fb;cursor:pointer;transition: 0.3s;}
.box_select_DTE:hover{transform: scale(1.05);letter-spacing: 1px;}
.box_select_DTE .cover_DTE {text-align: center;}
.box_select_DTE .cover_DTE img {max-width: 300px;}
.box_select_DTE p {font-size: 12pt;font-weight: 600;color: #6d6c6a;letter-spacing: 0.5px;}
.preview_Dte{height:800px}
.alerta_analisis_desactualizado{position: fixed;top: 40px;left: 50%;background: #9d230f;padding: 10px;border-bottom-left-radius: 10px;border-bottom-right-radius: 10px;color: #fff;width: 250px;text-align:center;font-size:12px;margin-left: -50px;z-index: 9;border-left: 1px solid #fff;border-right: 1px solid #fff;border-bottom: 1px solid #fff}
.datos_empresa{}
.datos_empresa h3{font-size:12pt;margin: 0 0 4px 0;}
.datos_empresa p{margin:2px 0}

/*-- AGREGAR PRODUCTO/FOTO --*/
#id_input_foto {width: 100%;margin:5% 0}
.box_inline_img, .box_inline_content{display: inline-block;box-sizing: border-box;vertical-align: top}
.box_inline_img{width: 20.5%;max-width:300px;margin: 0 1%;text-align:center}
.box_inline_img img{border-radius: 10px;width:100%;height:auto;}
.box_inline_content{width: 75%;margin: 0 1%}
.gallery{display: block;width: 100%}
.img-principal{position:relative;margin-bottom:20px}
.img-principal div.label_oferta{position: absolute;top: 0px;right: 0;background: #618d0d;width: 70px;height: 70px;line-height: 70px;color: #fff;font-weight: 600;letter-spacing: 1px;border: 1px dashed #fff;border-radius: 100%;}
.item-gallery{display: inline-block;vertical-align: top;width: 30%;padding: 1%;margin:1%;position:relative}
.item-gallery img{width:100%;border-radius: 10px}
.img-principal:hover{position: relative;overflow: hidden}
.img-principal img:hover{transform: scale(1.05);transition: 0.3s}
.btn-delete{position: absolute;right: 5px;top: 5px;cursor:pointer}
.description-overflow{overflow-y: auto;max-height: 400px;}
.description-overflow::-webkit-scrollbar{width: 5px;/* Tamaño del scroll en vertical */height: 5px;/* Tamaño del scroll en horizontal */}
/* Ponemos un color de fondo y redondeamos las esquinas del thumb */.description-overflow::-webkit-scrollbar-thumb {background: #6c6c6c;border-radius: 4px}
/* Cambiamos el fondo y agregamos una sombra cuando esté en hover */.description-overflow::-webkit-scrollbar-thumb:hover {background: #141414;box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.2)}
/* Cambiamos el fondo cuando esté en active */.description-overflow::-webkit-scrollbar-thumb:active {background-color: #999999}
/* Ponemos un color de fondo y redondeamos las esquinas del track */.description-overflow::-webkit-scrollbar-track {background: #ddd;border-radius: 4px}
/* Cambiamos el fondo cuando esté en active o hover */.description-overflow::-webkit-scrollbar-track:hover,.description-overflow::-webkit-scrollbar-track:active {background: #d4d4d4}

/*-- TAXS & VARIACIONES --*/
span.variations {display: inline-flex;align-items: center;gap: 12px;background: #fbfbff;padding: 10px 15px;border-radius: 20px;cursor: pointer;transition: 0.3s;}
span.variations:hover{transform: scale(1.05);background: #36475d;color: #fff;}
span.variations.block{width: 100%;}
span.variations > span:first-child {flex: 0 0 auto}
span.variations > span.left {flex: 1 1 auto;}
span.variations > span.right {flex: 0 0 auto;text-align: right;white-space: nowrap;}

/*-- VARIACIONES SIMPLES --*/
.variaciones_container img{max-width: 200px;border-radius: 10px;}

/*-- SIDEBAR PARA INPUTS --*/
.input-form_sidebar input, .input-form_sidebar select{margin-bottom:2%}

/*-- PRINTS E IFRAMES --*/
iframe.btn_print{border:none;vertical-align:middle}
.panel-minibtns iframe.btn_print{display:block;width:30px;height:30px}

/*-- BOX SEARCHPRO POPUP EN FORM DE VENTAS --*/
.item-tienda{background: #fbfbfb;padding: 5px 5px;/*border: 1px solid #e9e9e9*/}
.item-tienda:hover, .item_categ:hover{opacity:0.8;transition: 0.3s}
.item-tienda .foto-item img:hover, .item_categ .foto-item img:hover{transform: scale(1.2);transition: 0.3s}
.item-tienda a, .item_categ a{color:#131313}
.item-tienda .btn{font-size: 7pt;}
.item-tienda span.label_precio{font-size:10pt}
.foto-item{padding: 5px;box-sizing: border-box;margin: 5px 0;position: relative;overflow: hidden}
.foto-item img{width:100%;height: 100%;object-fit: cover;border-radius:5px;box-sizing: border-box;aspect-ratio: 1 / 1;transition: opacity 0.3s ease-in-out;}
.foto-item .label_oferta{position: absolute;top: 0px;left: 0;background: #2792ef;font-size: 10pt;color: #fff;font-weight: 600;text-align: center;padding: 5px 10px;}
.unit-item{display: inline-flex;width: 100%;justify-content: space-between;margin: 10px 0}
.info-item{padding:5px;text-align:left;background: #fff}
.info-item label{display: block;font-size: 7.5pt;color: #8f8f8f;margin-top: 5px;font-weight: 600;}
.info-item .stock{position: absolute;color: #1a8a8f;right: 10px;bottom: 10px;}
.title-item{font-size: 8.5pt;margin: 5px 0 0 0}
.id-item{line-break: anywhere}
.pack{text-align:right}
.item_categ{display: inline-block;width: 17.5%;box-sizing: border-box;vertical-align: top;margin:0 1% 2% 1%;background: #fbfbfb;border: 1px solid #e9e9e9}
.price-item{display: inline-block;vertical-align: middle}
.price-item{width: 75%}
span.label_precio{display: block;padding: 2px;color: #27a72b;font-size: 14pt;font-weight:600}

/*-- SEARCH ADVANCE --*/
.advance-search {position: relative;overflow: hidden;}
.advance-search img.road-path {width: 20%;max-width: 200px;opacity: 0.1;z-index: -1;}
.img_search img {max-width: 100%;max-height: 450px;}

/*-- ESTADOS --*/
.rst_negativo{color: red;font-weight:600}
.rst_sugerencia{color: #ffbc00;font-weight:600}
.rst_positivo{color: green;font-weight:600}

/*-- ESTADO PEDIDOS --*/
.listo{background: #c1da92;color: #0e600b}
.en_proceso{background: #fcedc3;color: #9c7d11}
.retrasado{background: #ffd1d1;color:#8f2828}

/* ESTADO PROCESOS ITEMS */
.sortable-placeholder {height: 50px;background: #f4f6fb;border: 2px dashed #c5cbe3;}
.sortable-procesos tr {cursor: move;}

/*-- UPLOAD VOUCHER PAGOS --*/
.custom-file-upload {display: inline-block;width: 100%;padding: 10px 15px;background-color: #618d0d;color: white;border-radius: 20px;cursor: pointer;text-align: center;font-size: 14px;box-shadow: 3px 3px 3px #d8d8d8;margin-bottom: 10px;transition: 0.3s;}
.custom-file-upload:hover {background-color: #3c3c3c;border-color: #4d4d4d;letter-spacing: 1px;}

/*-- AUTOCOMPLETE --*/
ul.ui-autocomplete{background: #fff;color:#181818;font-size:11px;border: 1px solid #eee;width: 100%;max-width: 360px;list-style: none;padding:0;margin-bottom:5%;border-radius:10px;z-index: 99999;}
li.ui-menu-item{margin-bottom: 0.2%;padding:5px 10px;cursor:pointer;border-bottom:1px solid #eee;transition: 0.3s;}
li.ui-menu-item:hover{background:#fafaff;transition: 0.3s}
div.ui-menu-item-wrapper{padding: 5px 10px}
.ui-helper-hidden-accessible{display:none}
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover {border: none !important;background: #fafaff !important;border-radius: 2px !important;transition: 0.3s;}
.ui-menu .ui-menu-item label {display: block;width: max-content;font-size:7.5pt;padding: 2px 5px;border-radius: 10px;margin: 2px 0;}
.ui-menu .ui-menu-item label.gray {background: #b5b5b5;}
.ui-menu .ui-menu-item label.green {background: #618d0d;color:#fff}
.ui-menu .ui-menu-item label.orange {background: #f39a01;}
.ui-menu .ui-menu-item label.blue {background: #2792ef;color:#fff}
li.ui-menu-item-agotado{opacity:0.55;cursor:not-allowed;background:#f7f7f7;}
li.ui-menu-item-agotado:hover{background:#f0f0f0;}

/*-- CUPONES --*/
.cupon-mini {background: #fff;width: max-content;padding: 10px 10px 10px 20px;border: 1px dashed #f39a01;border-top-right-radius: 5px;border-bottom-right-radius: 5px;}
.cupon-mini p{border-left: 1px dashed #f39a01;margin: 0;padding-left: 8px;font-weight: 600;}

/*-- ECOMMERCE THEMES --*/
.list_grid-themes{display: grid;grid-template-columns: repeat(4, minmax(90px, 1fr));gap: 1rem;}
.box_themes{min-height: 230px;background-size: cover;display: inline-block;vertical-align:top;position: relative;border:1px solid #ddd;border-radius:10px}
.box_themes .simbologia{float: right}
.bar_options_theme{position: absolute;bottom: 0;left: 0;background-color: rgba(0, 0, 0, 0.5);width: 100%;box-sizing: border-box;}
.bar_options_theme h2{color: white;padding: 10px;margin: 0}
.details_theme{display:none;background: #00000030;width:100%;height:100%;position:absolute;align-items: center;justify-content: center;}
.details_theme span{width: 50%;height: 30px;background: #181818;color: #fff;border: 1px solid #000;text-align: center;font-size: 14pt;margin: 0 auto;cursor:pointer;border-radius:5px}
.details_theme:hover{display:inline-flex;}
.theme-description{max-height: 400px;overflow-y: auto}

/*-- ECOMMERCE THEMES v2 (cards por rubro) --*/
.themes-section{margin-top:25px}
.theme-card{position:relative;border:1px solid #e9eaef;border-radius:8px;overflow:hidden;background:#fff;min-height:230px}
.theme-card__cover{display:block;width:100%;height:230px;object-fit:cover}
.theme-card__badges{position:absolute;top:10px;left:10px;display:flex;gap:6px;z-index:2}
.theme-card__badges span{font-size:8pt;font-weight:700;text-transform:uppercase;letter-spacing:.4px;padding:4px 9px;border-radius:20px;color:#fff}
.badge-activo{background:#2bb673}
.badge-nuevo{background:#ff9a47}
.theme-card__overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(24,24,24,.45);opacity:0;transition:.25s}
.theme-card:hover .theme-card__overlay{opacity:1}
.theme-card__actions{display:flex;flex-direction:column;gap:8px;width:70%}
.theme-card__actions .btn{width:100%;justify-content:center;margin:0}
.theme-card__actions form{margin:0}
.theme-card__name{position:absolute;bottom:0;left:0;width:100%;box-sizing:border-box;background:linear-gradient(transparent,rgba(0,0,0,.65));z-index:1}
.theme-card__name h2{color:#fff;padding:14px 12px 10px;margin:0;font-size:13pt}

/*-- BOTONES FORMAS DE PAGO --*/
.formas-pago-btns {display: grid;grid-template-columns: repeat(2, minmax(90px, 1fr));gap: 0.5rem;margin-bottom:25px}
.formas-pago-btns div {display: flex;align-items: center;width: 100%;height: 40px;background: #fafaff;border: 1px solid #e9eaef;color: #878995;border-radius: 10px;}
.formas-pago-btns div:hover {transform: scale(1.05);transition: 0.3s;}
.formas-pago-btns div.seleccionado {background: #7d8595;color: #fff;}
.formas-pago-btns div.seleccionado i {color: #fff;border-right: 1px solid #fff;}
.formas-pago-btns div i {width: 30%;color: #9f9f9f;border-right: 1px solid #b9b9b9;margin-right: 10px;}
.formas-pago-btns div span {width: 100%;text-align: left;}
.formas-pago-btns.preventa{font-size: 8pt;}

/*-- PREVENTA --*/
.lds-ellipsis {color: #618d0d}
.lds-ellipsis, .lds-ellipsis div {box-sizing: border-box;}
.lds-ellipsis {display: inline-block;position: relative;width: 80px;height: 80px;}
.lds-ellipsis div {position: absolute;top: 33.33333px;width: 13.33333px;height: 13.33333px;border-radius: 50%;background: currentColor;animation-timing-function: cubic-bezier(0, 1, 1, 0);}
.lds-ellipsis div:nth-child(1) {left: 8px;animation: lds-ellipsis1 0.6s infinite;}
.lds-ellipsis div:nth-child(2) {left: 8px;animation: lds-ellipsis2 0.6s infinite;}
.lds-ellipsis div:nth-child(3) {left: 32px;animation: lds-ellipsis2 0.6s infinite;}
.lds-ellipsis div:nth-child(4) {left: 56px;animation: lds-ellipsis3 0.6s infinite;}
@keyframes lds-ellipsis1 {
	0% {
		transform: scale(0);
	}
	100% {
		transform: scale(1);
	}
	}
	@keyframes lds-ellipsis3 {
	0% {
		transform: scale(1);
	}
	100% {
		transform: scale(0);
	}
	}
	@keyframes lds-ellipsis2 {
	0% {
		transform: translate(0, 0);
	}
	100% {
		transform: translate(24px, 0);
	}
}
.mini-item-list_pedido {text-align: left;width: 100%;display: flex;gap: 1rem;transition: 0.3s;align-items: center;}
.mini-item-list_pedido .mini-foto-prod {width: 25%;}
.mini-item-list_pedido .item-mid_pedido {width: 100%;}

/*-- VENDER EXPRESS --*/
span#cambiarVisual {width: 45px;height: 45px;line-height: 45px;text-align: center;padding: 4px;border-radius: 40px;border: 1px solid #ffffff;}
#list_products{display: grid;grid-template-columns: repeat(auto-fill, minmax(115px, 1fr));gap: 0.5rem;margin-bottom:30px}
#list_products .item-list_products{position:relative;box-sizing: border-box;vertical-align: top;padding: 5px;border-radius: 20px;box-shadow: 0px 1px 1px rgb(71 71 71 / 20%);border: 1px solid #efefef}
#list_products .item-list_products:hover{transform: scale(1.03);opacity:0.8;transition: 0.3s}
#list_products .item-list_products span.label_oferta{position: absolute;z-index: 1;}
#list_products .item-list_products span.label_precio{font-size: 9.5pt;color: #618d0d;margin: 5px 0;padding: 0;}
#list_products .item-list_products span.label_precio small{font-size: 6pt;color: #8f8f8f;}
#list_products .item-list_products span.codprov{font-size: 7pt;color: #8f8f8f;}
.sinStock {opacity: 0.4 !important;}
.sinStock img {filter: grayscale(100%);}
span.sin_stock {background: #d93b3b;padding: 2px 5px;font-size: 7pt;color: #fff;border-radius: 5px;margin: 5px 0;display: block;width: min-content;text-transform: uppercase;letter-spacing: 1px;}
span.a_pedido {background: #efaf20;padding: 2px 5px;font-size: 7pt;color: #fff;border-radius: 5px;margin: 5px 0;display: block;width: max-content;text-transform: uppercase;letter-spacing: 1px;}
span.mini-ico_produccion {position: absolute;top: 10px;right: 8px;min-width: 15px;background: #fff;color: #618d0d;text-align: center;border-radius: 15px;z-index: 1;}
span#generarVenta{height: 40px;line-height: 40px;padding: 0;font-size: 10pt;border-radius: 15px;letter-spacing: 0.5px;transition: 0.3s;}
span#generarVenta:hover{letter-spacing: 3px;}
span#mostrarDetalle {margin: 10px 0;display: inline-block;border: 2px solid #618d0d;padding: 10px;border-radius: 10px;transition:0.3s}
span#mostrarDetalle:hover{letter-spacing: 1px}
.parametrosVehiculoProductos{display: flex;align-items: center;gap: 0.5rem;width:100%;text-align:left;padding: 10px 15px;background: linear-gradient(#fff, #f9f9f9);background: -webkit-linear-gradient(#fff, #f9f9f9);background: -moz-linear-gradient(#fff, #f9f9f9);;border-radius: 15px;margin: 0 0 10px 0;color:#474747;line-height:25px;border: 1px solid #eee;}
.parametrosVehiculoProductos p{margin:0}

/*-- PANEL CÓDIGOS DE BARRA --*/
#list_products-barcodes{display: grid;grid-template-columns: repeat(2, 1fr);gap: 1rem;}
@media (min-width:600px){#list_products-barcodes{grid-template-columns: repeat(3, 1fr);}}
@media (min-width:900px){#list_products-barcodes{grid-template-columns: repeat(5, 1fr);}}
@media (min-width:1200px){#list_products-barcodes{grid-template-columns: repeat(6, 1fr);}}
@media (min-width:1600px){#list_products-barcodes{grid-template-columns: repeat(8, 1fr);}}
#list_products-barcodes .item-list_products{box-sizing: border-box;vertical-align: top;padding: 5px;border-radius: 20px;box-shadow: 0px 1px 1px rgb(71 71 71 / 20%);border: 1px solid #efefef;text-align: center;}
#list_products-barcodes .item-list_products:hover{transform: scale(1.03);opacity:0.8;transition: 0.3s}
#list_products-barcodes .item-list_products h5.title-item {margin-bottom: 15px;}
#list_products-barcodes .item-list_products img.barcode {width: 100%;}
#list_products-barcodes .item-list_products .btn-light {width: 100%;padding: 5px;}
#list_products-barcodes .item-list_products .btn-light i{font-size:9pt;}

/*-- COTIZACIONES --*/
.box_folio{width: 95%;background:#fff;box-shadow: 5px 7px 3px #f3f3f3;border: 5px solid #f00;margin:0 auto;margin-bottom:20px;padding: 20px;text-align: center;color: #f00;border-radius:5px;text-transform:uppercase}
.box_folio .rut{font-size: 14pt;}
.box_folio .folio{font-size: 16pt;font-family: system-ui;}
.box_folio .folio i{font-size: 13pt;}
.box_folio .adicional{font-size: 10pt;}
.box_folio .fecha{font-size: 8pt;color:#000;}
.seccion_multiform{display:inline-block;vertical-align:top;margin-bottom:2%}
.form_left{width:25%;padding:1%}
.form_right{width:74%;padding:1%}
.addBtn{width: 40px;height: 40px;margin: 20px auto;background: #618d0d;display: block;border-radius: 50px;line-height: 40px;font-size: 18px;text-align:center;color: #fff;border: 1px solid #567b0e;box-shadow: 3px 3px 3px #d8d8d8;cursor: pointer;transition: 0.3s}
.addBtn:hover{opacity:0.8;transform: scale(1.1);}
#seguimiento{margin-bottom: 2%}
#seguimiento img{margin-bottom: 20px}
table.seguimiento-info{width:100%;margin: 0 auto 40px auto}
table.seguimiento-info tr td{text-align:center;padding:0 0 20px 0;vertical-align: top;background: -webkit-linear-gradient(#FFF,#F9F9F9);background: -moz-linear-gradient(#FFF,#F9F9F9);background: linear-gradient(#FFF,#F9F9F9)}
td.border-left{border-left: 1px solid #e0e0e0}
td.border-right{border-right: 1px solid #e0e0e0}
td.border-bottom{border-bottom: 1px solid #e0e0e0}
h3.num_orden{color: #0d840b;margin: 2px 0;font-size: 12pt}
p.txt_num_orden{margin: 0;color: #404040;background: #fff;padding: 2px 5px;text-align:center}

/*-- PEDIDOS --*/
.info-pedido{margin: 0 0 20px;padding: 0 0 20px;border-bottom: 1px dashed #eee}
.info-pedido:last-child{border-bottom: none;padding-bottom:0}
.info-pedido > div{margin-bottom: 10px;}
.info-pedido.destacado {background: #fbfbff;border-radius: 10px;margin-bottom: 15px;}
.info-pedido p.txt_num_orden{margin: 0 0 10px 0;color: #6f6f6f;background: #fff;padding: 2px 5px;text-align:center}
.info-pedido img{width:100%;max-width: 160px;}
.info-pedido span {width: fit-content;margin: 0 auto !important;}
.info-pedido label{margin: 5px;}
.registro_pagos div {display: flex;gap: 0.5rem;position: relative;background: #fff;color: #0d840b;margin: 0 auto;margin-bottom: 5px;padding: 15px 15px;border: 1px solid #f1f1f1;border-radius: 20px;box-sizing: border-box;align-items: center;}
.registro_pagos div:hover{background:#fbfbff}
.registro_pagos div span {font-weight: 600;}
.registro_pagos div span:first-child{width: 20%;}
.registro_pagos div span:nth-child(2){width:50%}
.registro_pagos div span:nth-child(3){width:30%;font-size: 10pt;}
.registro_pagos div p{margin:0}
.registro_pagos div small{color:#7b7b7b}
.btn_icon{background: -webkit-linear-gradient(#FFF, #F9F9F9);background: -moz-linear-gradient(#FFF, #F9F9F9);background: linear-gradient(#FFF, #F9F9F9);color: #87aa45;padding: 7px;margin: 0 auto;border-radius: 20px;width: 35px;border: 1px solid #c3c3c3;font-size: 12pt;}
.btn_icon a{color: #87aa45;}
.item-list_pedido{text-align: left;width: 100%;display:flex;gap:1rem;justify-content:space-between;flex-wrap: wrap;transition: 0.3s}
.item-list_pedido:hover{transform: scale(1.01);}
.item-list_pedido button{background: -webkit-linear-gradient(#FFF, #F9F9F9);background: -moz-linear-gradient(#FFF, #F9F9F9);background: linear-gradient(#FFF, #F9F9F9);padding: 7px;border-radius: 20px;width: 35px;border: 1px solid #c3c3c3;}
.item-list_pedido button:disabled {opacity: 0.8;background: #cfcfcf;color: #545454;}
.item-list_pedido button i{font-size: 12pt;}
.item-list_pedido ul{padding: 0;font-size: 8pt;list-style:none}
.item-list_pedido ul li{background: #f9f9f9;padding: 5px;border-radius: 10px;border: 1px solid #d7d7d7;font-weight: 600;margin-bottom: 5px}
.item-list_pedido ul li:hover{transform: scale(1.03);transition: 0.3s}
.item-list_pedido ul li a {font-weight: 400;}
.item-list_pedido .mini-foto-prod{width: 100%;max-width: 80px;height: max-content;margin: 0 auto}
.item-list_pedido .item-mid_pedido{flex: 1;display: flex;flex-direction: row;gap: 20px;}
.item-list_pedido .item-mid_pedido > div {padding: 0 10px;}
.item-list_pedido .item-mid_pedido span.rojo, .item-list_pedido .item-mid_pedido span.amarillo, .item-list_pedido .item-mid_pedido span.verde {display: inline-block;margin: 8px 0;}
.item-list_pedido .item-mid_pedido small{margin:0;color: #7b7b7b;font-size: 7pt;}
.item-list_pedido .item-mid_pedido > div:first-child{width:40%}
.item-list_pedido .item-mid_pedido > div:nth-child(2){width:60%}
.item-list_pedido .item-mid_pedido div.fullwidth{width:100% !important}
.item-list_pedido .item-final_pedido{display: flex;min-width: 45%;justify-content: flex-end;}
.item-list_pedido .item-final_pedido > div {padding: 0 10px;vertical-align: top;}
.editItemlist {background: #ffb647;color: #fff;border-top-right-radius: 10px;border-bottom-right-radius: 10px;padding: 10px 10px !important;cursor:pointer}
.delItemlist {background: #e12323;color: #fff;border-top-right-radius: 10px;border-bottom-right-radius: 10px;padding: 10px 10px !important;cursor:pointer}
.obs_adicional_item-list {background: #fbfbff;border: 1px solid #eee;padding: 10px 15px;border-radius: 10px;margin-bottom: 15px;}
.boxes-precios-item-list_pedido{display: flex;height: max-content;align-items: flex-end;}
.boxes-precios-item-list_pedido > div {width: 100%;}
.precio-item-list_pedido{margin: 0 7px;color:green}
span.title_item-list_pedido{display: block;font-size: 7pt;color: #a7a7a7;font-weight: 600;text-transform: uppercase;letter-spacing: 3px;margin-bottom:5px}
p.ob{background: #f39a01;padding:6px 10px;display: table;color: #fff;border-radius: 5px;font-size: 11px;margin: 2% 0}
#seguimiento p.ob{display:block}
.progress_bar{width: 100%;background: #ddd;border-radius: 16px;padding:3px;margin-bottom: 5px;}
.progress_bar div{height: 20px;line-height: 20px;border-radius: 16px;padding: 0.01em 16px;}
.progress_actual{background: #618d0d;color: #fff;text-align: right;}
.progress_inactivo {background: #f5f5f5;color: #9d9d9d;text-align: left;border-radius: 20px;padding:0 20px}

/*-- ARCHIVOS --*/
.file-list{display:flex;flex-direction:column;gap:10px;margin-top:8px;}
.file-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 12px;border:1px solid rgba(0,0,0,.08);border-radius:12px;background:#fff;transition:.2s ease;}
.file-item:hover{transform:translateY(-2px);box-shadow:0 4px 14px rgba(0,0,0,.08);}
.file-thumb{width:46px;height:46px;border-radius:10px;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.04);}
.file-thumb img{width:100%;height:100%;object-fit:cover;}
.file-info{flex:1;min-width:0;text-align: left;}
.file-name{margin:0;font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.file-ext{opacity:.6;font-size:12px;}
.file-action{flex-shrink:0;}
.btn-ver{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border-radius:10px;background:#2d7df6;color:#fff !important;font-weight:600;text-decoration:none !important;transition:.2s ease;font-size:13px;}
.btn-ver:hover{background:#1f66d6;transform:scale(1.03);}
.file-empty{padding:12px;border-radius:10px;background:rgba(0,0,0,.03);text-align:center;font-size:14px;opacity:.7;}
.file-empty.error{background:rgba(255,0,0,.06);color:#b60000;}

/*-- ITEMLIST GENERAL --*/
.box-servicio{border-left: 12px solid #4c97ad}
.box-item{border-left: 12px solid #f39a01;}
.box-pieza{border-left: 12px solid #4dad4c;}

/*-- INFO SEARCH PRODUCTOS --*/
.item-list_info_producto{text-align: left;width: 100%;display:flex;justify-content:space-between;flex-wrap: nowrap;gap: 1rem;transition: 0.3s}
.item-list_info_producto:hover{transform: scale(1.01);}
.item-list_info_producto button{background: -webkit-linear-gradient(#FFF, #F9F9F9);background: -moz-linear-gradient(#FFF, #F9F9F9);background: linear-gradient(#FFF, #F9F9F9);padding: 7px;border-radius: 20px;width: 35px;border: 1px solid #c3c3c3;}
.item-list_info_producto button i{font-size: 12pt;color: #272727;}
.item-list_info_producto .item-info{position: relative;margin: 0 auto;width: 100%;max-width: 200px;height: max-content;}
.item-list_info_producto .item-info div:first-child {text-align: center;}
.item-list_info_producto .item-info img{width: auto;max-width: 100% !important;max-height: 100px;border-radius: 5px;margin-bottom: 10px;}
.item-list_info_producto .item-content{width:50%}
.item-list_info_producto .item-content .box_precios{display: flex;flex-wrap: nowrap;align-items: flex-start;gap: 2rem;justify-content: flex-end;margin: 20px 0 0;}
.item-list_info_producto .item-content .precio{margin-bottom: 10px;font-weight: 600;color:#618D0D;text-align: right;font-size: 12pt;}

/*-- BOXES INFORMATIVOS --*/
#content_box_info-home {display: grid;grid-template-columns: repeat(3, minmax(90px, 1fr));gap: 1rem;}
#content_box_info {display: grid;grid-template-columns: repeat(auto-fit, minmax(90px, 1fr));gap: 1rem;margin-bottom: 20px;padding: 20px 0;}
div.box{position: relative;min-height: 115px;border-radius: 18px;backdrop-filter: blur(14px);-webkit-backdrop-filter: blur(14px);border: 1px solid rgba(255, 255, 255, 0.15);overflow: hidden;transition: all .35s ease;color: #fff;}
div.box:hover{transform:translateY(-4px);box-shadow:0 12px 35px rgba(0,0,0,0.25),inset 0 1px 0 rgba(255,255,255,0.2);}
div.box::before{content:"";position:absolute;inset:0;border-radius:18px;padding:1px;background:linear-gradient(120deg,transparent,rgba(255,255,255,0.4),transparent);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite: xor;mask-composite: exclude;opacity:.2;}
div.box small{display: block;text-align: center;}
#content_box_info-home h2, #content_box_info h2{font-weight:600}
#content_box_info-home p, #content_box_info p{margin:5px 0 0 0}
.ico_box{width: 100%;height:100%;position: absolute;left: 0;padding:10px;box-sizing:border-box;opacity: 0.06;font-size: 45pt;z-index: 0}
.ico_box i:hover{transform:none}
.dato_box{width: 100%;padding: 5%;text-align:center;font-size: 9pt;transition: all .35s ease;}
.dato_box:hover{transform: translateY(-4px);}
.dato_box > .seccion{padding: 10px;margin-bottom: 0;}
.dato_box .mini-foto-prod{width: 100%;max-width: 80px;height: max-content;margin: 0 auto}
.dato_box p{text-align:center}
.dato_box button{background: -webkit-linear-gradient(#FFF, #F9F9F9);background: -moz-linear-gradient(#FFF, #F9F9F9);background: linear-gradient(#FFF, #F9F9F9);padding: 7px 10px;border-radius: 5px;border-bottom-left-radius: 20px;border-bottom-right-radius: 20px;border: 1px solid #c3c3c3;width: 100%;color:#292929;margin-top: 5px;transition: 0.3s;}
.dato_box button:hover{transform: scale(1.1);}
.dato_box.content-circle {position: relative;overflow: hidden;width:95%;padding: 0 !important;}
.dato_box.content-circle .seccion {padding: 40px 20px;}
.dato_box .icon-dato_box {position: absolute;top: 20px;right: 10%;font-size: 15px;}
.dato_box .icon-dato_box a{color:#618D0D}
.mini-top-circle {width: 100%;height: 100%;position: absolute;background: #f1f4ff;border-radius: 200px;z-index: 1;top: -90%;}
span.num_detalle{font-size:18pt;display: block;letter-spacing: 0.5px;}
span.mas_detalle{display:block;width:100%;padding:10px 16px;font-size:12px;background:rgba(255,255,255,0.08);border-top:1px solid rgba(255,255,255,0.15);backdrop-filter:blur(6px);transition:.25s;cursor:pointer}
span.mas_detalle:hover{background:rgba(255,255,255,0.15);}
#content_box_info-home div.box_costos, #content_box_info div.box_costos{display: inline-block;color: #fff;vertical-align: middle;width: 100%;box-sizing: border-box;height: 85px;position: relative;border-top-left-radius: 15px;border-bottom-right-radius: 15px;margin: 5px;box-shadow: 5px 8px 5px #ececec}

.content_box_info-light{display: grid;grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));gap: 1.5rem;margin-bottom: 20px;}
.content_box_info-light .box-light{position: relative;width: 100%;background: linear-gradient(#FFF, #F9F9F9);border: 1px solid #eee;text-align: left;color: #8d8d8d;padding: 10px 30px;border-top-left-radius: 20px;border-bottom-right-radius: 20px;overflow: hidden;transition: all .35s ease !important;cursor: default;}
.content_box_info-light .box-light:hover{transform: translateY(-4px);box-shadow: 0 6px 15px rgb(0 0 0 / 8%), inset 0 1px 0 rgba(255, 255, 255, 0.2);}
.content_box_info-light .box-light .ico_box-light {font-size: 18pt;color: #ff8a00;margin-bottom: 10px;}
.content_box_info-light .box-light span.num_detalle{font-size: 15pt;color: #3f578d;font-weight: 500;margin: 5px 0;}
.content_box_info-light .box-light p{margin:0;font-size: 8pt;}
.content_box_info-light .box-light .extra {position: absolute;top: 10%;right: 5%;cursor: pointer;color: #618d0d;}
.content_box_info-light .box-light .extra i{font-size:12pt}
.content_box_info-light.box-light-2 {grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));gap: 1rem;padding:0}

/*-- POPUP INFORMATIVOS --*/
#popup_wrapper{position: fixed;width: 100%;height: 100%;top: 0;left: 0;background: #4a4a4a7a/*ffffff7a*/;z-index:99}
#popup_box{background: #ffffff;width: 50%;max-height:80%;margin: 5% auto;padding: 10px 20px;box-sizing: border-box;overflow-y: auto;border-radius: 20px;border: 1px solid #d9d9d9;box-shadow: 2px 5px 10px #e5e5e5;}
#close{cursor:pointer}

/*-- POPUP INFORMATIVOS v2 --*/
.popup_wrapper{display:none;position: fixed;width: 100%;height: 100%;top: 0;left:0;background: transparent;backdrop-filter: blur(4px);z-index:9999}
.popup_box{position:relative;background: #ffffff;width: 65%;max-height: 85%;top: 50%;left: 50%;transform: translate(-50%, -50%);padding: 40px 30px;box-sizing: border-box;overflow-y: auto;border-radius: 20px;border: 1px solid #d9d9d9;box-shadow: 2px 5px 10px #e5e5e5;}
.popup_box h2{text-align:left}
.popup_wrapper hr, .popup_box hr{border: 0;width: 70%;height: 1px;background-image: -webkit-linear-gradient(left, rgba(0,0,0,0), rgba(153, 153, 153, 0.69), rgba(0,0,0,0));background-image: -moz-linear-gradient(left, rgba(0,0,0,0), rgba(153, 153, 153, 0.69), rgba(0,0,0,0));background-image: -ms-linear-gradient(left, rgba(0,0,0,0), rgba(153, 153, 153, 0.69), rgba(0,0,0,0));background-image: -o-linear-gradient(left, rgba(0,0,0,0), rgba(153, 153, 153, 0.69), rgba(0,0,0,0));margin: 15px auto}
.close_popup_box{position: absolute;top: 20px;right: 20px;width: 30px;height: 30px;line-height: 30px;text-align: center;color: #858585;cursor: pointer;font-weight: 600;transition: 0.3s;z-index: 9;}
.close_popup_box:hover{font-size:12pt}
.bgPopup{background: #0000000a;width: 100%;height: 100%;position: absolute;}

/*-- AVISOS STOCK --*/
.alertas_stock{display: block;width: 100%;height: 100%;max-height: 200px;padding: 10px;box-sizing: border-box;overflow-y: auto;margin-bottom:20px}
.alertas_stock span{display: block;margin: 5px 0;padding: 5px 5px;border-radius: 10px}
span.aviso_falta_stock_warning{background: #fff89e;color:#5f5507}
span.aviso_falta_stock_warning i{color:#dcbf28}
span.aviso_falta_stock_alert{background: #9d230f;color:#fff}
span.aviso_falta_stock_alert i{color:#5f0707}

.alertas_stock::-webkit-scrollbar{width: 5px;/* Tamaño del scroll en vertical */height: 5px;/* Tamaño del scroll en horizontal */}
/* Ponemos un color de fondo y redondeamos las esquinas del thumb */.alertas_stock::-webkit-scrollbar-thumb {background: #ccc;border-radius: 4px}
/* Cambiamos el fondo y agregamos una sombra cuando esté en hover */.alertas_stock::-webkit-scrollbar-thumb:hover {background: #b3b3b3;box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.2)}
/* Cambiamos el fondo cuando esté en active */.alertas_stock::-webkit-scrollbar-thumb:active {background-color: #999999}
/* Ponemos un color de fondo y redondeamos las esquinas del track */.alertas_stock::-webkit-scrollbar-track {background: #e1e1e1;border-radius: 4px}
/* Cambiamos el fondo cuando esté en active o hover */.alertas_stock::-webkit-scrollbar-track:hover,.alertas_stock::-webkit-scrollbar-track:active {background: #d4d4d4}

/*-- INFORMES (GRÁFICOS Y VARIOS) --*/
.box_table, .box_chart, .chart-info{display:inline-block;vertical-align:top;box-sizing:border-box}
.box_chart{width: 75%;}
/* ALTO DEL GRÁFICO AGENDADO VS COBRADO: corechart toma el tamaño del contenedor */
.chart-agenda{width: 100%;height: 430px;}
#chartContainer{background: #fdfdfd;padding: 2%;border: 1px solid #ddd;border-radius: 20px;}
.box_table{width: 75%}
.chart-info{width: 24%;padding:0 0 0 2%}
.boxdato_chart{margin-bottom: 10px;background: #fdfdfd;border: 1px solid  #ddd;border-top-left-radius: 10px;border-bottom-right-radius: 10px;padding: 10px 0;color:#888888;transition: 0.3s;}
.boxdato_chart:hover{transform: scale(1.05);background:#fbfbff}
.boxdato_chart p{text-align:center;font-size: 10pt;border-bottom: 1px solid  #ddd;margin:0 0 10px 0;padding:0 10px 5px 10px}
.num_dato_chart{font-size: 15pt;color:#008000}

/*-- PERFIL --*/
#perfil_usuario{padding-right:20px}
#perfil_usuario h1{float:left}
.foto_perfil_datos-user{position:relative;float:right;width:100px;height:100px}
.foto_perfil_datos-user img{width:100px;height:100px;border-radius:50%;border:4px solid #fff}
table.datos_usuario{background:#f6f6f6;width:100%;border-radius:10px;-webkit-border-radius:10px;-moz-border-radius:10px;margin-bottom:10px}
table.datos_usuario tr td{vertical-align:middle;padding:5px 10px}
td.campo{background:#fff;font-size:12px;}
td.dato_usuario{color:#414141}

.box_perfil_cuenta{padding: 10px;margin-bottom: 10px} 
.box_perfil_cuenta .foto{width: 50%;margin: 0 auto 10px auto}
.box_perfil_cuenta .nombre{text-align: center;font-size: 20pt}

/*-- ITEMS --*/
.foto_item, .foto_item_clasico{position:relative;text-align: center;margin: 0 auto;cursor: context-menu;}
.foto_item img{border-radius:100%;width:100%;height: 100%;object-fit: cover;border: 5px solid #f1f1f1;box-sizing: border-box;margin-bottom: 5px;aspect-ratio: 1 / 1;}
.foto_item_clasico img{width:100%;height: 100%;object-fit: cover;box-sizing: border-box;aspect-ratio: 1 / 1;border: 5px solid #fff;border-radius: 20px}
.foto_item_clasico div.label_oferta{position: absolute;top: 0px;right: 0;background: #618d0d;width: 70px;height: 70px;line-height: 70px;color: #fff;font-weight: 600;letter-spacing: 1px;padding:0;border: 2px solid #ffffffb3;border-radius: 100%;}
.product_rating {margin: 10px 0;}
.score_product {color: orange;font-size: 12pt;}
.score_product i{font-size:13pt}
.score_product i:hover {transform: scale(1.2);transition: 0.3s;}
.product_rating i {margin-right: 3px;color: #f90;}
.box_barcode{text-align:center;margin-bottom:20px}

/* ===========================================================================
   COMPONENTE ESTÁNDAR — Lista de checkboxes / radios (píldoras full-width)
   Reutilizable en CUALQUIER formulario del panel con múltiples checks/radios.
   Círculo con check verde SIVO. Sirve para checkbox y radio con el mismo markup.

   <div class="sivo-check-list">
     <label class="sivo-check">                (agregar .is-disabled si aplica)
       <input type="checkbox|radio" id="..." name="...">
       <span class="sivo-check-mark"></span>
       <span class="sivo-check-text">Etiqueta</span>
     </label>
   </div>
   =========================================================================== */
.sivo-check-list{display:flex;flex-direction:column;gap:8px;width:100%}
.sivo-check{position:relative;display:flex;align-items:center;gap:12px;width:100%;box-sizing:border-box;float:none;margin:0;padding:11px 16px;border:1px solid #e2e2e2;border-radius:30px;background:#fff;color:#474747;cursor:pointer;transition:.25s;user-select:none;font-weight:normal;text-align:left}
.sivo-check:hover{border-color:#618d0d;background:#fbfdf7}
.sivo-check input{position:absolute;opacity:0;width:0;height:0;margin:0}
.sivo-check-mark{position:relative;flex:0 0 auto;width:22px;height:22px;border:2px solid #cfcfcf;border-radius:50%;background:#fff;transition:.25s}
.sivo-check-mark:after{content:'';position:absolute;left:6px;top:2px;width:6px;height:11px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .2s}
.sivo-check input:checked ~ .sivo-check-mark{background:#618d0d;border-color:#618d0d}
.sivo-check input:checked ~ .sivo-check-mark:after{transform:rotate(45deg) scale(1)}
.sivo-check input:checked ~ .sivo-check-text{color:#3d5c07;font-weight:600}
.sivo-check input:focus-visible ~ .sivo-check-mark{box-shadow:0 0 0 3px rgba(97,141,13,.2)}
.sivo-check-text{flex:1 1 auto;font-size:10px;line-height:1.2;font-weight: 600;letter-spacing: 0.6px;}
/* Variante radio: punto central en vez de check */
.sivo-check input[type=radio]:checked ~ .sivo-check-mark:after{left:5px;top:5px;width:8px;height:8px;border:none;border-radius:50%;background:#fff;transform:scale(1)}
/* Deshabilitado (por clase .is-disabled o por atributo disabled en el input, ej. dependencias JS) */
.sivo-check.is-disabled{opacity:.55;cursor:not-allowed}
.sivo-check.is-disabled:hover{border-color:#e2e2e2;background:#fff}
.sivo-check:has(input:disabled){cursor:not-allowed}
.sivo-check input:disabled ~ .sivo-check-mark,.sivo-check input:disabled ~ .sivo-check-text{opacity:.55}

/* ETIQUETA DE PRODUCTO — Popup personalizable (vista previa en vivo) */
.etiqueta-preview-label,.etq-control-title{display:block;font-size:9pt;color:#8d8d8d;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}
.etq-lbl{width:100%;max-width:280px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;box-sizing:border-box;margin:0 auto;padding:2.5mm;border:1px dashed #cfcfcf;border-radius:6px;background:#fff;overflow:hidden}
.etq-row{width:100%;max-width:100%;text-align:center;line-height:1.15;overflow:hidden}
.etq-row-comercial{font-weight:bold;font-size:9pt;white-space:nowrap;text-overflow:ellipsis}
.etq-row-nombre{font-size:8pt;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.etq-row-precio{font-weight:bold;font-size:13pt}
.etq-row-barcode{flex:1 1 auto;min-height:0;display:flex;align-items:center;justify-content:center;width:100%}
.etq-row-barcode img.barcode{max-width:100%;max-height:100%;width:auto;height:auto;display:block;margin:0 auto}
/* Presets de tamaño — el preview conserva la PROPORCIÓN del preset a escala legible en pantalla.
   El tamaño real en mm vive en las clases de impresión (style-iframes.css); aquí se usa aspect-ratio. */
.etq-lbl.etq-40x20{aspect-ratio:40/20}
.etq-lbl.etq-50x25{aspect-ratio:50/25}
.etq-lbl.etq-50x30{aspect-ratio:50/30}
.etq-lbl.etq-60x40{aspect-ratio:60/40}
.etq-lbl.etq-100x50{aspect-ratio:100/50}
/* Preset joyería (dumbbell armazones 78x21): 3 zonas horizontales — panel barcode | cuello vacío | panel datos */
.etq-lbl.etq-joyeria-78x21{aspect-ratio:78/21;max-width:340px;flex-direction:row;align-items:stretch;gap:0;padding:1mm}
.etq-joya-izq{width:32%;display:flex;align-items:center;justify-content:center;padding:2px;box-sizing:border-box;overflow:hidden}
.etq-joya-izq img.barcode{max-width:100%;max-height:100%;width:auto;height:auto;display:block}
.etq-joya-cuello{width:36%;border-left:1px dashed #e3e3e3;border-right:1px dashed #e3e3e3}
.etq-joya-der{width:32%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:2px;box-sizing:border-box;overflow:hidden}
.etq-joya-row{width:100%;max-width:100%;text-align:center;line-height:1.1;overflow:hidden}
.etq-joya-comercial{font-weight:bold;font-size:6pt;white-space:nowrap;text-overflow:ellipsis}
.etq-joya-nombre{font-size:6pt;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.etq-joya-precio{font-weight:bold;font-size:8pt}
.etq-joya-codigo{font-size:6pt;white-space:nowrap;text-overflow:ellipsis}

/* ANÁLISIS PRODUCTO */
.boxes_analisis{display: grid;grid-template-columns: repeat(3, minmax(90px, 1fr));gap: 0.5rem;margin-bottom: 20px;padding: 20px 0;}
.boxes_analisis div{position: relative;width: 100%;background: linear-gradient(#FFF, #F9F9F9);border: 1px solid #eee;text-align: left;color: #8d8d8d;padding: 10px 30px;border-top-left-radius: 20px;border-bottom-right-radius: 20px;box-shadow: 5px 10px 12px #f7f7fb;overflow: hidden;transition: 0.3s;}
.boxes_analisis div:hover{transform: scale(1.01);}
.boxes_analisis div p{color:#181818}
.boxes_analisis div h3{font-size: 14pt;color:#0d840b}
.boxes_analisis .icon_bg {position: absolute;bottom: -5px;right: -5px;}
.boxes_analisis .icon_bg i {font-size: 50pt;opacity: 0.1;}
.boxes_analisis div:hover .icon_bg i{font-size: 60pt}

/* COMENTARIOS PRODUCTO — masonry (mismas reglas responsive en style-general.css para tienda) */
.wrapper_comments-product{display: block;width: 100%;box-sizing: border-box;column-count: 4;column-gap: 1.5rem;column-fill: balance;padding: 20px;margin-bottom: 20px;}
.wrapper_comments-product .box_comment-product{display: block;width: 100%;margin-bottom: 1.5rem;break-inside: avoid;page-break-inside: avoid;-webkit-column-break-inside: avoid;}
.box_comment-product {text-align: left;border: 1px solid #eee;border-radius: 10px;box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);overflow: hidden;transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;}
.box_comment-product:hover {transform: translateY(-5px);box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);}
.img_pic img {width: 100%;object-fit: cover;border-top-left-radius: 10px;border-top-right-radius: 10px;}
.button_comment {display: flex;align-items: flex-start;gap: 1rem;padding: 15px;}
.img_comment {flex-shrink: 0;width: 15%;min-width: 85px;}
.img_comment img {width: 100%;border-radius: 50%;border: 3px solid #ebebeb;}
.title_comment p {font-size: 14px;font-weight: 600;margin: 5px 0;color: #333;}
.comment_product p {font-size: 12px;color: #555;}
.sign_comment_product {font-size: 11px;color: #777;font-style: italic;margin-top: 10px;}
.product_comment {display: flex;align-items: center;gap: 1rem;padding: 15px;}
.pic_prod_comment {width: 15%;min-width: 50px;}
.pic_prod_comment img {width: 100%;border-radius: 50%;border: 2px solid #ebebeb;}
.info_prod_comment {font-size: 12px;color: #333;transition: color 0.3s;letter-spacing 0.3s;}
.info_prod_comment:hover {color: #007BFF;letter-spacing: 0.5px;}

/*-- VARIACIONES --*/
.variacion{border-left: 3px solid #ff9a47;border-top-left-radius: 21px;border-bottom-left-radius: 21px;margin-bottom: 20px;}
.top_bar_variacion {position: relative;background: linear-gradient(#FFF, #F9F9F9);border-top: 1px solid #eee;border-right: 1px solid #eee;border-bottom: 1px solid #eee;border-left: 5px solid var(--acento);text-align: left;padding: 0 20px;cursor: pointer;line-height: 45px;border-radius: 20px;margin-bottom:20px;}
.top_bar_variacion .classic_link{color: #0075ff;letter-spacing: 1px;margin-left: 10px;}
.top_bar_variacion .img_top_bar{width:40px;height:40px;border-radius:40px;border:2px solid #e5e5e5;margin-right: 15px;}
.top_bar_variacion .img_top_bar, .top_bar_variacion p{display: inline-block; vertical-align: middle;}
.top_bar_variacion .img_top_bar img{width:100%;height: 100%;border-radius:40px}
.top_bar_variacion .ico-desplegar{float: right;}
.top_bar_variacion p{margin:0;font-weight:600;}
.top_bar_variacion p i{color: #f90;}
.top_bar_variacion .status {display: inline-flex;line-height: normal;position: absolute;right: 50px;top: 50%;transform: translate(0, -50%);}

/*-- BOX Y REPORTES --*/
.box_reporte div {text-align: center;border-radius: 5px;border: 5px solid #dbdbdb;padding: 5px 20px;width: 100%;margin: 0 0 20px;}
.box_reporte div p {font-size: 12pt;color: #434343;margin: 10px 0 10px 0;}
.box_reporte div .titulo_box_reporte{font-size: 16pt;font-weight: 600;}

/*-- MENU SIDEBAR --*/
ul.menu-sidebar{list-style:none;padding: 0px;margin:0}
ul.menu-sidebar li {background: linear-gradient(#fff, #f9f9f9);background: -webkit-linear-gradient(#fff, #f9f9f9);background: -moz-linear-gradient(#fff, #f9f9f9);border: 1px solid #ddd;border-radius: 14px;padding: 12px 15px;margin: 0 0 5px;cursor:pointer}
ul.menu-sidebar li:hover {font-weight:600;transform: scale(1.01);transition: 0.3s}
ul.menu-sidebar li span{color:#181818}
ul.menu-sidebar li.selected-item{font-weight: 600;}
ul.menu-sidebar li i {color: #5f5f5f;margin-right: 5px;padding-right: 5px;border-right: 1px solid #bbb;width: 30px;text-align: center;}

/*-- EDITOR --*/
#editor{height: 450px;border-bottom-left-radius: 20px;border-bottom-right-radius: 20px;margin-bottom: 20px;}
.ql-toolbar.ql-snow{text-align: left;}
.ql-toolbar{border-top-left-radius: 20px;border-top-right-radius: 20px}

/*-- SEO ITEMS --*/
.demo_SEO-Google{background: #fbfbff;padding: 20px;text-align: left;border-radius: 10px;}
.demo_SEO-title{font-size: 14pt;color: blue;font-weight: 600;margin-bottom: 10px;}
.demo_SEO-meta{font-size: 10pt;color: #686868;margin-bottom: 10px;}
.demo_SEO-slug{color: green;font-weight: 600;}

/*-- SEO SCORE WIDGET --*/
.seo-score-widget{background:#fff;border-radius:14px;padding:20px;}
.seo-score-header{display:flex;align-items:center;gap:18px;margin-bottom:16px;}
.seo-score-gauge{position:relative;width:90px;height:90px;flex-shrink:0;}
.seo-score-gauge svg{transform:rotate(-90deg);width:90px;height:90px;}
.seo-score-gauge-bg{fill:none;stroke:#e0e0e0;stroke-width:8;}
.seo-score-gauge-fill{fill:none;stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset 0.6s ease, stroke 0.4s ease;}
.seo-score-gauge-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:22px;font-weight:700;line-height:1;}
.seo-score-gauge-sublabel{position:absolute;top:66%;left:50%;transform:translate(-50%,0);font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:0.5px;opacity:0.85;}
.seo-score-info{flex:1;text-align: left;}
.seo-score-info h3{margin:0 0 4px;font-size:15px;font-weight:700;}
.seo-score-info p{margin:0;font-size:12px;color:#666;line-height:1.4;}
.seo-score-label{display:inline-block;padding:3px 10px;border-radius:10px;font-size:11px;font-weight:600;margin-top:6px;}
.seo-score-green{color:#2e7d32;} .seo-score-green .seo-score-gauge-fill{stroke:#2e7d32;}
.seo-score-green .seo-score-label{background:#e8f5e9;color:#2e7d32;}
.seo-score-amber{color:#e65100;} .seo-score-amber .seo-score-gauge-fill{stroke:#e65100;}
.seo-score-amber .seo-score-label{background:#fff8e1;color:#e65100;}
.seo-score-red{color:#c62828;} .seo-score-red .seo-score-gauge-fill{stroke:#c62828;}
.seo-score-red .seo-score-label{background:#fdecea;color:#c62828;}
.seo-score-checklist{list-style:none;padding:0;margin:0;text-align: left;}
.seo-score-checklist li{display:flex;align-items:flex-start;gap:8px;padding:6px 0;border-bottom:1px solid #eee;font-size:12px;line-height:1.4;}
.seo-score-checklist li:last-child{border-bottom:none;}
.seo-score-checklist li i{margin-top:2px;font-size:13px;flex-shrink:0;}
.seo-score-checklist .seo-pass i{color:#2e7d32;}
.seo-score-checklist .seo-partial i{color:#e65100;}
.seo-score-checklist .seo-fail i{color:#c62828;}
.seo-score-checklist .seo-tip{display:block;font-size:11px;color:#888;margin-top:2px;}

/*-- ENCOMIENDAS --*/
#barcode-reader video{max-width: 100%;width: 100%;border-radius: 10px;}
#barcode-reader{max-width: 100%;position:relative;}
canvas{max-width: 100%;}
canvas.drawingBuffer{position:absolute;top:0;left:0;}

/*-- HEADER TABLE - DE BOTON Y BÚSQUEDA --*/
.header_table_content{display: flex;justify-content: space-between;color: #FFF;padding: 15px 10px;border-top-left-radius: 20px;border-top-right-radius: 20px;text-align: left;}
.box_opciones_superior, .search_box_superior{box-sizing:border-box;vertical-align: middle}
.box_opciones_superior{display: flex;align-items: center;}
.search_box_superior{display: flex;align-items: center;gap: 1rem;}
#search_fields{display: flex;padding:0;margin:0;align-items: center;justify-content: flex-end;gap: 0.2rem;}
#search_fields li{margin: 0 2px}

:root{--acento:#FF9A47;--acento-2:#ff7e1d;--texto:#525252;--texto-soft:#8a8a8a;--verde:#618d0d;--amarillo:#d49a00;--rojo:#e0533d;--glass-bg:rgba(255,255,255,.55);--glass-brd:rgba(255,255,255,.65);--glass-shadow:0 8px 30px rgb(60 80 120 / 8%);}
.header_table{padding: 10px 15px;text-align: left;text-transform: uppercase;}
.header_table > *{font-size:12px;margin: 0;font-weight: 600;letter-spacing: normal}
.header_table i {margin-right: 6px;color: #adaeb9;}
.form_header_table {position: absolute;margin-top: -33px;right: 0px;width: 100%;text-align: right}
.form_header_table .btn, .form_header_table .form-control_header-table {display:inline-block;vertical-align:middle}
.form_header_table .btn{box-shadow:none}
.form_header_table .form-control_header-table {width: auto}
input.form-control_header-table{display: block;width: 100%;box-sizing: border-box;padding: 6px 12px;font-size: 14px;line-height: 1.42857143;color: #555;background-color: #fff;border: 1px solid #ccc;border-radius: 4px;-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);box-shadow: inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s}
.wrapper_table{width:100%;background: var(--glass-bg);backdrop-filter: blur(16px);-webkit-backdrop-filter: blur(16px);border: 1px solid var(--glass-brd);border-radius: 24px;box-shadow: var(--glass-shadow);padding: 22px;margin-bottom: 30px;overflow-x:auto;-webkit-overflow-scrolling:touch;}
.wrapper_table table{margin-bottom:0}
.info_preview{width:100%;border-collapse: separate;border-spacing: 0 7px;background:#fff;border-bottom-left-radius: 15px;border-bottom-right-radius: 15px;margin-bottom:20px;text-align: left}
tbody.scrolled-y{overflow-y: scroll;height: 315px;display: block}
.info_preview tr{font-size:12px;width:100%;border-radius: 16px;box-sizing:border-box}
.info_preview tr.titulo_categ{background:#fff}
.info_preview tr.subtr{background: #fbefdc;}
.info_preview tr td {padding: 10px 10px;}
.info_preview tr td label:first-child{font-weight: 600}
.info_preview tr td h3 {color: #5f6179;}
.info_preview tr td h3 i {color: #d5d6e5;margin-right: 7px;border-right: 1px solid #eee;padding-right: 10px;}
.info_preview .marker:hover{background:#fafaff}
.info_preview a{color:#000}
.info_preview img {width: 100%;}
.info_preview #id_input_foto{margin: 10px 0}
.info_preview i.fa, .info_preview i.fas, .info_preview i.fa-regular{font-size: 12pt}
.info_preview button{transition: 0.3s;}
.info_preview button:hover{transform: scale(1.02);}
.info_preview.withoutTitle{border-radius: 15px;}
td#sin_datos{padding:35px;background:#fff}
div#sin_datos{text-align:center}
img#sin_datos{width:155px;display: block;margin: 10px auto}
.reporte tr td{vertical-align:top}
.atributo-tax-list{display: inline-block;background: #fdf1d6;padding: 5px 10px;border-radius: 10px;margin: 3px;}
.label_oferta{display:inline-block;background: #2792ef;font-size: 7pt;color: #fff;font-weight: 600;text-align: center;padding: 5px 10px;border-radius: 15px;letter-spacing: 0.5px;}
.info_preview .label_oferta {margin-bottom: 7px;}
.info_preview tr.pedido_atrasado td{background: #ffeded;}

.info_preview thead td, .info_preview thead th {font-size: 11px;font-weight: 700;letter-spacing: .5px;text-transform: uppercase;color: var(--texto-soft);}
.info_preview tbody td:first-child {border-left: 1px solid rgba(255, 255, 255, .6);border-radius: 16px 0 0 16px;}
.info_preview tbody td:last-child {border-right: 1px solid rgba(255, 255, 255, .6);border-radius: 0 16px 16px 0;}
.info_preview tbody tr:last-child td:first-child{border-bottom-left-radius: 12px;}
.info_preview tbody tr:last-child td:last-child {border-bottom-right-radius: 12px;}
.info_preview tbody tr {background: rgba(255, 255, 255, .5);box-shadow: 0 4px 14px rgba(60, 80, 120, .08);}

.historial_producto {border-left: 8px solid #c1da92;border-top-left-radius: 20px;border-bottom-left-radius: 20px;}

/*-- LIST ITEMS PREVIEW --*/
.items_pre_finalizacion{ margin:15px 0; text-align:left; }
.subtitulo_items{ font-size:14px; margin:10px 0; font-weight:700; }
.item_pre{display:flex; align-items:center; gap:1rem;margin-bottom: 10px;}
.item_pre_foto{ width:60px; height:60px; overflow:hidden; border-radius:8px; }
.item_pre_info{ flex:1; }
.item_pre_nombre{ display:block; font-size:13px; }
.item_pre_cod{ display:block; opacity:.7; }
.item_pre_qty{ min-width:80px; text-align:right;}
.item_pre_estado{ min-width:85px; text-align:center; }
.item_pre_estado i{ font-size:16px; margin-bottom:3px; display:block; }
.items_resumen{ margin-top:8px; font-size:13px; text-align:center; opacity:.85; }

/*-- LIST ITEMS --*/
.header_forms {display: flex;align-items: center;justify-content: space-between;padding: 0 5px 15px;margin-bottom:20px}
.header_forms > div:first-child{display: flex;gap: 1rem;vertical-align: middle;align-items: center;justify-content: center;font-weight: 600;}
.wrapper_headerbox{background: linear-gradient(#fff, #f9f9f9);background: -webkit-linear-gradient(#fff, #f9f9f9);background: -moz-linear-gradient(#fff, #f9f9f9);display: flex;margin: 15px 0;padding: 15px 10px;align-items: center;border: 1px solid #e0e0e0;font-weight: 600;box-shadow: 5px 10px 12px #f7f7fb;border-top-left-radius: 10px;border-bottom-right-radius: 10px}
.header_box{width:100%}

.itemlist-express {display: flex;background: #fff;border: 1px solid #eee;border-radius: 20px;text-align: left;align-items: center;padding: 15px 15px;margin-bottom: 10px;box-shadow: 2px 3px 2px #f7f7fb;}
.itemlist-express div:first-child{width:80%;max-width: 60px;position: relative;}
.itemlist-express div.price{font-weight: 600;text-align: right;color: #618d0d;}
.itemlist-express div.delete{width:50%;text-align: right;color: #b7b7b7;}
.itemlist-express .label_oferta {position: absolute;bottom: 0;left: 50%;transform: translate(-50%, 0);background: #2792ef;font-size: 7pt;color: #fff;font-weight: 600;text-align: center;padding: 2px 5px;}
.itemlist-express div:nth-child(3), .itemlist-express div:nth-child(4) {width: 50%;text-align: right;}
.itemlist-express div:last-child {width: 20%;}
.col_itemlist-express{width: 100%;}
.itemlist-express img {width: 100%;height: 45px;max-width: 45px;border: 1px solid #ddd;border-radius: 45px;}

.itemlist{display: flex;gap: 0.5rem;position:relative;background: #fff;text-align:left;padding: 10px;margin: 0 0 20px 0;border: 1px solid #e0e0e0;box-shadow: 5px 10px 12px #f7f7fb;border-top-left-radius: 15px;border-bottom-right-radius: 15px;overflow-x: auto}
.costobox{display: flex;gap: 1.5rem;position:relative;background: #fbfbff;text-align:left;padding: 10px;margin: 0 0 40px 0;border: 1px solid #e0e0e0;box-shadow: 5px 10px 12px #f7f7fb;overflow-x: auto}
.costobox span.title_itemlist {letter-spacing: 1px;font-size: 5.5pt;}
.puntolist{display: flex;gap: 0.5rem;position:relative;background: #fff;text-align:left;padding: 10px;margin: 0 0 20px 0;border: 1px solid #e0e0e0;box-shadow: 5px 10px 12px #f7f7fb;border-top-left-radius: 15px;border-bottom-right-radius: 15px;overflow-x: auto}
.piezalist{display: flex;gap: 1.5rem;position:relative;background: #fff;text-align:left;padding: 10px;margin: 0 0 20px 0;border: 1px solid #e0e0e0;box-shadow: 5px 10px 12px #f7f7fb;border-top-left-radius: 15px;border-bottom-right-radius: 15px;overflow-x: auto}
.col_itemlist{padding: 0px 5px;}
.col_itemlist > div {margin-bottom: 10px;}
.flex_itemlist{display: flex}
span.title_itemlist{font-size: 6pt;color: #8b8b9b;font-weight: 600;text-transform: uppercase;letter-spacing: 3px;margin-bottom: 5px;}
.col_itemlist .mini-foto-prod{width: 100%;max-width: 80px;height: max-content;margin: 0 auto}
.col_itemlist .infoextra{display:none}
.col_itemlist.delCol{display: inline-block;width: 25px;height: 25px;line-height: 25px;position: absolute;text-align: center;border-top-left-radius: 10px;border-bottom-left-radius: 10px;top:15px;right: 0;background: #9d230f;transition: 0.3s;cursor:pointer}
.col_itemlist.delCol:hover{background: #ea2e2e;}
.col_itemlist.delCol span{color: #fff;}
.col_itemlist.regCost {display: inline-block;width: 25px;height: 25px;line-height: 25px;position: absolute;text-align: center;border-top-left-radius: 10px;border-bottom-left-radius: 10px;top: 50px;right: 0;background: #ffcb0c;transition: 0.3s;cursor:pointer}
.col_itemlist.regCost:hover{background: #ffd849}
.col_itemlist.regCost span{color: #fff}
.col_itemlist.calcCost {display: inline-block;width: 25px;height: 25px;line-height: 25px;position: absolute;text-align: center;border-top-left-radius: 10px;border-bottom-left-radius: 10px;top: 85px;right: 0;background: #2f6f9f;transition: 0.3s;cursor:pointer}
.col_itemlist.calcCost:hover{background: #3e8bc4}
.col_itemlist.calcCost span{color: #fff}
.mini-foto-prod{position:relative;margin: 0 auto;width:100%;max-width:50px;height: max-content}
.mini-foto-prod img{width:100%;height: 100%;object-fit: cover;box-sizing: border-box;aspect-ratio: 1 / 1;border-radius: 10px;}
.mini-foto-prod .label_oferta{position: absolute;top: 0px;left: 0;background: #2792ef;font-size: 8pt;color: #fff;font-weight: 600;text-align: center;padding: 5px 10px;}
.form-itemlist-clear {display: block;width: 100%;height: 45px;box-sizing: border-box;padding: 6px 12px;font-size: 14px;line-height: 1.42857143;color: #555;background-color: #fff;border: none;border-radius: 0}
.form-itemlist-clear:active {border-radius: 10px;border: 1px solid #ddd;}
.form-itemlist-clear:focus {outline: none !important;}
.form-itemlist-clear:focus-visible {border-radius: 10px;border: 1px solid #ddd;}
/*.form-itemlist-clear[readonly]{background: #fafafa;color: #858585;cursor: not-allowed}*/
.form_baseline{border-bottom:1px solid #e0e0e0}
.infobox-clear{height:80px;border:none;border-radius:0;font-size:9pt}
.VenderExpress, .VenderProducto, .CotizarProducto, .VincularProducto{font-weight:600;font-size:9pt;border-left: 5px solid #f39a01}
.VenderExpress:focus-visible, .VenderProducto:focus-visible, .CotizarProducto:focus-visible, .VincularProducto:focus-visible{border-left: 5px solid #f39a01;}
.CotizarPuntoInspeccion{font-weight:600;font-size:9pt;border-left: 5px solid #4c97ad}
.CotizarPuntoInspeccion:focus-visible{border-left: 5px solid #4c97ad;}
.CotizarPieza{font-weight:600;font-size:9pt;border-left: 5px solid #4dad4c}
.CotizarPieza:focus-visible{border-left: 5px solid #4dad4c;}
.plan{font-weight:600;font-size:9pt;border-left: 5px solid #f39a01}
.plan:focus-visible {border-left: 5px solid #f39a01;}
.stock-realtime{margin: 0 0 10px 0}
.stock-realtime span {margin-bottom: 5px;border-bottom-left-radius: 20px !important;border-bottom-right-radius: 20px !important;letter-spacing: 1px;transition: 0.3s;cursor:pointer}
.stock-realtime span:hover{letter-spacing: 1.5px}
.info_span{margin: 10px 0 10px 0}
.info_span span {margin-bottom: 5px;border-bottom-left-radius: 20px !important;border-bottom-right-radius: 20px !important;letter-spacing: 1px;transition: 0.3s;cursor:pointer}
.info_span span:hover{letter-spacing: 1.5px}
.boxRangoPrecios{width: 100%;text-align: left;background: #2792ef;margin: 10px 0 10px 0;padding: 7px;border: 1px solid #b3b3b3;color: #fff;font-size: 7.5pt;border-top-right-radius: 10px;border-bottom-left-radius: 10px;}
.boxRangoPrecios > p {font-size: 7pt;margin: 5px 0 10px 5px;padding-bottom: 3px;border-bottom: 1px solid #fff;letter-spacing: 1px;}
.boxRangoPrecios ul{list-style: disc;padding-left: 15px;margin: 1%}
.boxRangoPrecios ul li{background: #2792ef;padding: 0px;border-radius: 0px;border: none;font-weight: 400;margin-bottom: 0px;}
.boxStockSucursales{width: 100%;text-align: left;background: #f1f1f1;margin: 10px 0 10px 0;padding: 7px;border: 1px solid #e7e7e7;color: #979797;font-size: 7.5pt;border-top-right-radius: 10px;border-bottom-left-radius: 10px;}
.boxStockSucursales > p {font-size: 7pt;margin: 5px 0 10px 5px;padding-bottom: 3px;border-bottom: 1px solid #fff;letter-spacing: 1px;}
.boxStockSucursales ul{list-style: disc;padding-left: 15px;margin: 1%}
.boxStockSucursales ul li{background: #f1f1f1;padding: 0px;border-radius: 0px;border: none;font-weight: 400;margin-bottom: 0px;}
.mini-calculadoraArea {background:#fbfbff;display: flex;align-items: center;gap: 0.5rem;padding: 10px 20px;border-radius:8px;border: 1px solid #e1e2e3;}
.mini-calculadoraArea span i {font-size: 14pt;color: #fff;background: #dddcdc;padding: 5px;border-radius: 5px;}
.mini-calculadoraArea input{border-radius: 10px;border: 1px solid #e1e2e3;font-size:8pt}
.itemlist .extras-list-item span {margin-bottom: 4px;border-bottom-left-radius: 20px;border-bottom-right-radius: 20px;font-size: 8pt;letter-spacing: 0.75px;cursor: help;}
.checkbox_itemlist{background: #fbfbff;border: 1px solid #ddddfb;color: #626393;border-radius: 20px;margin: 10px 0;padding: 10px 15px;}
.checkbox_itemlist label{display:inline-flex;gap: 0.5rem;border: 1px solid #e0e0e0;padding: 5px 15px 5px 10px;margin: 5px 2px;border-radius: 15px;background: #fff;cursor: pointer;}
.checkbox_itemlist label:hover{background:#fbfbff}
.btn-aplicaciones .btn{font-size: 8pt;}
.input-con-lupa {position: relative;display: inline-block;width: 100%;}
.input-con-lupa input {padding-left: 30px;width: 100%;box-sizing: border-box;margin-bottom: 5px;}
.lupa-icono {position: absolute;top: 23px;left: 14px;transform: translateY(-50%);color: #aaa;font-size: 14px;pointer-events: none;}
.nombre-doc-toggle {cursor: pointer;color: #7b7b9b;}
.nombre-doc-toggle:hover {color: #525252;}
.nombre-doc-toggle i {margin-right: 3px;}
input.nombre_doc {margin-bottom: 5px;}
.vincularProducto {text-align: left;}
.vincularProducto div:first-child {width: 20%;}
.box-codigos small{margin: 0;color: #7b7b7b;font-size: 6.5pt;letter-spacing: 0.5px;}

.boxOtrosCostos {margin: 0 0 10px 0;box-shadow: none;border-radius: 10px;}
.alerta-neto{background: #ffecec;color: #c00000;border: 1px solid #ffbcbc;padding: 5px 8px;border-radius: 5px;margin-top: 5px;font-size: 12px;}

.TotalCart{width: 100%;max-width: 500px;font-size: 12pt;text-align: right;margin: 30px 10px 20px auto !important;color: #1f600b;font-weight: 600;}
.TotalCart > div{display: flex;width:100%;flex-direction: row;justify-content: flex-end;line-height: 30px}
.TotalCart div:first-child{font-size:9pt;text-transform:uppercase}
.TotalCart div div:first-child {color: #818181;}
.valorCart{width: 50%;font-size: 13pt;border-bottom: 1px solid #e0e0e0;padding: 5px}
#total_carrito{position: fixed;bottom: 0;right: 11%;background: #618d0d;padding: 10px 20px;border-top-left-radius: 10px;border-top-right-radius: 10px;font-size: 12pt;font-weight: 600;color: #fff;letter-spacing: 1px;z-index: 10;}
#total_venta{position: fixed;bottom: 0;right: 4%;background: #618d0d;padding: 10px 20px;border-top-left-radius: 10px;border-top-right-radius: 10px;font-size: 12pt;font-weight: 600;color: #fff;letter-spacing: 1px;z-index: 10;}

/* PREVIEW DRAG AND PASTE */
.banner-upload{margin-bottom: 10px;}
.preview {position: relative;}
/* Preview fade */
.preview img {transition: opacity 0.25s ease, transform 0.25s ease;}
/* efecto mientras cambia */
.preview img.fading {opacity: 0;transform: scale(0.97);}
/* Drag visual */
.dropzone {cursor: pointer;position: relative;transition: all 0.2s ease;border: 1px dashed #a0a0ae;border-radius: 8px;padding: 4px;}
.dropzone.dragover {border: 2px dashed #4da3ff;background: rgba(77, 163, 255, 0.08);}
.dropzone.clipboard-ready {box-shadow: 0 0 0 3px rgba(77,163,255,0.25);}
.dropzone-hint {display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 8px;color: #9aa0a8;background: #f7f8fa;border-radius: 6px;padding: 28px 12px;min-height: 160px;text-align: center;}
.dropzone-hint i {font-size: 30px;opacity: .7;}
.dropzone-hint small {font-size: 12px;letter-spacing: .2px;}
.dropzone.has-file .dropzone-hint {display: none;}
.dropzone.has-file .paste-hint {display: none;}
.dropzone .preview img {max-width: 100%; height: auto; object-fit: contain;}
.preview .pdf-thumb {color: #c0392b;}
.paste-hint {position: absolute;bottom: 8px;right: 8px;background: #a1a1b3;color: white;padding: 4px 8px;border-radius: 6px;font-size: 12px;}
.delete-img-btn {position: absolute;bottom: 8px;right: 8px;background: #9d230f;color: white;padding: 4px 8px;border-radius: 6px;font-size: 12px;}
.delete-img-btn:hover {background:#fff;color: #9d230f;}
.delete-img-btn {transition: opacity 0.2s ease, transform 0.2s ease;}
.delete-img-btn[style*="block"] {opacity: 1;transform: scale(1);}

/*-- AGENDA --*/
.wrapper-calendar {background: -webkit-linear-gradient(#FFF, #F9F9F9);background: -moz-linear-gradient(#FFF, #F9F9F9);background: linear-gradient(#FFF, #c9c9c9);padding: 10px 0;border-radius: 10px;margin: 20px 0;}
.calendar-header {display: flex;align-items: center;width: 100%;max-width: 500px;margin-bottom: 7px;padding: 0 10px;}
.calendar-header button {width: 20px;padding: 3px;border: none;color: #1f1f1f;font-size: 7pt;cursor: pointer;border-radius: 20px;}
.calendar-header button:hover {background-color: #1f1f1f;color: #fff;}
.month-name {flex-grow: 1;font-size: 8pt;font-weight: 600;text-transform: uppercase;text-align: center;letter-spacing: 2px;}
.calendar-container {background: -webkit-linear-gradient(#FFF, #F9F9F9);background: -moz-linear-gradient(#FFF, #F9F9F9);background: linear-gradient(#FFF, #F9F9F9);display: grid;grid-template-columns: repeat(7, 1fr);gap: 1px;font-size: 7pt;padding: 10px;margin: 0 5px;border-radius: 10px;}
.day-name{font-weight: 600;text-align: center;margin-bottom: 5px;}
.day {padding: 4px;border-radius: 4px;text-align: center;cursor: pointer;}
.day:hover {background-color: #f0f0f0;}
.day.selected {background-color: #007bff;color: white;}

.top-info-planner {display: flex;justify-content: space-around;align-items: center;gap: 1rem;text-align: left;}
.top-info-planner div {display: flex;align-items: center;gap: 0.4rem;color: #757575;}
.top-info-planner div span {display: flex;align-items: center;gap: 0.4rem;color:#0e0e0e;font-weight: 600;}
.top-info-planner div span img{width:35px;height:35px;border-radius: 40px;}
.top-info-planner .form-group {margin: 0;}

#wrapper-planner{}
#planner .owl-carousel.owl-drag .owl-item{padding-bottom: 280px;}
#planner button{top: 20px;}
.dias_planner .dato_box {padding: 2%;}
.date_planner {display: flex;justify-content: space-between;align-items: center;padding: 10px;margin-bottom: 25px;}
.date_planner div h3 {font-size: 20pt;margin: 0;padding: 0;text-align: left;}
.date_planner div p {font-size: 14pt;margin: 0;text-align: left;}
.date_planner .num {position:relative;width: 56px;height: 56px;line-height: 56px;background: #e3e3e3;color: #fff;font-weight: 600;border-radius: 10px;font-size: 22pt;}
.date_planner .num i{position: absolute;right: -10px;top: -10px;color: #ffbc00;-webkit-text-stroke: 2px #F8F8F8;}
.profesional-section{text-align: center;background: #ffffff;position: relative;}
.profesional-section .foto_item{text-align: center;width: 20%;min-width: 80px;margin-bottom: 0;}
.profesional-section p{color:#232323;font-size:11pt;font-weight:600;margin: 0 0 15px 0;}
.profesional-section small{font-weight: 400;}
.taller-section{text-align: center;background: #ffffff;position: relative;margin-bottom:20px}
.taller-section .foto_item{text-align: center;width: 100%;height: 120px;border-top-left-radius: 20px;border-top-right-radius: 20px;margin-bottom: 10px;}
.taller-section .foto_item img{object-fit: cover;border-radius: 0px;box-sizing: border-box;aspect-ratio: 16 / 9;border: 0;border-top-left-radius: 15px;border-top-right-radius: 15px;}
.taller-section p {font-size: 10pt;font-weight: 600;margin: 0;padding: 5px 0;color: #ffffff;position: absolute;left: 0;bottom: 0;width: 100%;background: #0000005e;}
.taller-section small{font-weight: 400;}
.detail_planner {border-radius: 10px;}
.detail_planner .horarios{display: flex;position:relative}
.horarios .hora {padding: 10px;text-align: right;width: 20%;border-top: 1px solid #eee;font-weight: 600;}
.horarios .detalle {width: 80%;padding: 5px 10px;border-top: 1px solid #eee;}
.horarios .disponible{cursor:pointer;transition: 0.3s;}
.horarios .disponible:hover{background: #fafaff;border-radius: 10px;}
.menu_horario {padding: 5px 10px;text-align: left;background: #fff;border: 1px solid #f6f4ff;border-radius: 10px;box-shadow: 2px 4px 5px #e7eaf8;}
.menu_horario div{margin: 10px 0;cursor:pointer;transition: 0.3s;transform-origin: center left;}
.menu_horario div:hover{transform: scale(1.05);}
.menu_horario div i{margin-right: 10px;}
.nota{background: #b3d7b0;padding: 10px 20px;border-radius: 10px;color: #fff;font-size:8pt;font-weight: 600;letter-spacing: 0.3px;text-align: left;cursor:pointer}
.nota:hover{transform: scale(1.05);transition: 0.3s;}
.nota.global{border:1px solid #e4e7f1}
.nota.global.completado {background: #f0f9de !important;}
.nota .pagado {background: #408600;width: 25px;height: 25px;line-height: 25px;text-align: center;border-radius: 30px;color: #fff;float: right;margin-left: 5px;}
.nota ul{list-style: none;padding-left: 0;margin:0}
.nota ul li{margin-bottom:5px}
.nota ul li span{width: fit-content;}
.nota ul li:last-child{margin-bottom:0px}
.nota.horariosbloqueados{background: #fafaff;color: #bdbbc9;margin: 1px 0;}
.nota.horariosCerrados{background: #f0f2ff;color: #9188c5;margin: 1px 0;}
.nota .mini-patente {margin-bottom: 10px;background: #f9f9f9;color: #000000;}
.nota li i {width: 15px;text-align: center;}
.nota .ico_nota-general{background: #176d87;width: 25px;height: 25px;line-height: 25px;text-align: center;border-radius: 30px;color: #fff;float: right;}
.nota .ico_nota-general a{color:#fff}

/* PLANNER PROPORCIONAL — REJILLA FIJA + CAPA DE ATENCIONES */
/* --pg-slot-h = alto de un bloque agendable; --pg-slot-c = alto de uno no agendable (descanso, no
   disponible, agenda cerrada, bloqueado). Son los dos únicos valores a ajustar para cambiar la escala:
   el PHP entrega la posición de cada atención contada en bloques (--ev-tn/--ev-tc normales y compactos
   por encima) y el calc() los multiplica, así rejilla y atenciones nunca se desalinean. */
.pg-wrap{position: relative;--pg-slot-h: 92px;--pg-slot-c: 42px;}
.pg-rejilla .horarios{position: relative;height: var(--pg-slot-h);box-sizing: border-box;}
.pg-rejilla .horarios.compacto{height: var(--pg-slot-c);}
.pg-rejilla .horarios.compacto .hora{padding: 3px 10px;font-size: 8pt;}
.pg-rejilla .horarios.compacto .nota{padding: 3px 12px;font-size: 7.5pt;line-height: 18pt;}
.pg-rejilla .horarios .hora{padding: 5px 10px;box-sizing: border-box;font-size: 9pt;align-self: flex-start;}
.pg-rejilla .horarios .detalle{box-sizing: border-box;}
.pg-rejilla .menu_horario{position: absolute;left: 20%;right: 0;top: 4px;z-index: 8;}
.pg-rejilla .detalle.ocupado{background: repeating-linear-gradient(45deg, #fafaff, #fafaff 6px, #f2f0fb 6px, #f2f0fb 12px);border-radius: 10px;}
.pg-eventos{position: absolute;width: 78%;top: 0;bottom: 0;left: 20%;right: 30px;pointer-events: none;}
.pg-evento{position: absolute;top: calc(var(--ev-tn) * var(--pg-slot-h) + var(--ev-tc) * var(--pg-slot-c));height: calc(var(--ev-hn) * var(--pg-slot-h) + var(--ev-hc) * var(--pg-slot-c));min-height: var(--pg-slot-c);left: calc(var(--ev-col) / var(--ev-cols) * 100%);width: calc(100% / var(--ev-cols));padding: 4px 4px 4px 10px;box-sizing: border-box;pointer-events: auto;}
.pg-evento:hover, .pg-evento:focus-within{z-index: 6;}
.pg-evento > .nota{position: relative;height: 100%;overflow: hidden;padding: 8px 12px;box-sizing: border-box;}
.pg-evento > .nota:hover{transform: none;filter: brightness(0.96);}
.pg-evento.corta > .nota{padding: 4px 10px;font-size: 7.5pt;}
.pg-evento.corta > .nota ul li{margin-bottom: 0;}
.pg-evento.corta > .nota ul li:nth-child(n+4){display: none;}
.pg-badge{position: absolute;right: 6px;bottom: 4px;background: #FF9A47;color: #fff;border-radius: 20px;padding: 1px 8px;font-size: 7pt;font-weight: 600;letter-spacing: 0.3px;}
.pg-badge i{margin-right: 4px;}
.pg-resumen{padding: 5px 10px;margin-bottom: 5px;border-radius: 8px;background: #fff6ee;color: #b4671f;font-size: 8pt;font-weight: 600;text-align: left;}
.pg-resumen i{margin-right: 6px;}
.pg-conflictos{list-style: none;padding: 0;margin: 10px 0;text-align: left;}
.pg-conflictos li{padding: 8px 14px;margin-bottom: 6px;border-radius: 8px;background: #fff6ee;color: #b4671f;font-size: 9pt;font-weight: 600;}
.pg-conflictos li i{margin-right: 6px;}
.pg-hoy{display: flex;flex-direction: column;gap: 0.6rem;margin-bottom: 20px;}
.pg-hoy-item{display: flex;align-items: center;gap: 0.5rem;text-align: left;cursor: pointer;}
.pg-hoy-item strong{font-size: 9.5pt;color: #232323;}
.pg-hoy-item small{color: #7a7a7a;font-size: 8pt;}
.pg-hoy-item:hover strong{color: #005ea1;}
.pg-hoy-item .mini-cover-cliente{flex: 0 0 34px;width: 34px;height: 34px;line-height: 34px;font-size: 10pt;}
.pg-hoy-item > img{flex: 0 0 40px;width: 40px;height: 40px;box-sizing: border-box;padding: 3px;background: #f9f9f9;border: 1px solid #f1f1f1;border-radius: 8px;object-fit: contain;}

/* TARJETA DE PACIENTE DEL CARRUSEL (PANEL PRINCIPAL AGENDA) */
.card-paciente{position: relative;text-align: left;}
.card-paciente > .seccion{position: relative;padding: 15px;}
.card-paciente-minibtns{position: absolute;top: 10px;right: 10px;z-index: 2;}
.card-paciente-minibtns button{width: 28px;height: 28px;padding: 0;border: 1px solid #eee;border-radius: 8px;background: #f9f9f9;color: #7a7a7a;font-size: 9pt;cursor: pointer;transition: all .25s ease;}
.card-paciente-minibtns button:hover:not(:disabled){background: #fff6ee;border-color: #ffd9b3;color: #b4671f;}
.card-paciente-minibtns button:disabled{opacity: .35;cursor: not-allowed;}
.card-paciente .info-preview-cliente{margin-right: 34px;}
.card-paciente-estado{display: flex;align-items: center;justify-content: space-between;gap: 0.5rem;margin-top: 10px;}
.card-paciente-estado small{color: #9b9b9b;font-size: 7.5pt;white-space: nowrap;}
.card-paciente-detalle{margin: 0;color: #7a7a7a;font-size: 8.5pt;}
.card-paciente-detalle i{color: #ff8a00;margin-right: 3px;}
.card-paciente-detalle small{color: #9b9b9b;font-size: 8pt;}
.card-paciente-profesional, .card-paciente-cancha{display: flex;align-items: center;gap: 0.4rem;margin-top: 12px;padding-top: 10px;border-top: 1px dashed #eee;}
.card-paciente-profesional .mini-cover-cliente, .card-paciente-cancha .mini-cover-cliente{flex: 0 0 26px;width: 26px;height: 26px;line-height: 26px;font-size: 8pt;}
.card-paciente-profesional small, .card-paciente-cancha small{color: #7a7a7a;font-size: 8pt;}

@media screen and (max-width: 768px){
	.pg-eventos{right: 16px;}
	.pg-evento{padding: 1px 2px 1px 6px;}
	.pg-evento > .nota{padding: 6px 8px;font-size: 7.5pt;}
	.pg-evento > .nota ul li{margin-bottom: 2px;}
}

.box-responsables_taller {display: flex;gap: 0.5rem;align-items: flex-start;margin-top:15px !important;}
.box-responsables_taller h3 {font-weight: 600;font-size: 9pt;letter-spacing: 1px;color: #2e516f;font-family: system-ui;}
.box-responsables_taller span {margin: 0;}
.box-responsables_taller > div {width: 100%;padding: 0 10px;background: #fbfbff;border-radius: 8px;border: 1px solid #eee;padding: 15px 10px;}
.box-responsables_taller .grupo {display: flex;justify-content: space-between;gap: 1rem;align-items: center;padding: 0 10px;margin-bottom: 10px;}

/* GALERÍA MULTIMEDIA */
.items_registro_multimedia img{width: 100%;height: 100%;object-fit: cover;border-radius: 10px;box-sizing: border-box;aspect-ratio: 1 / 1;}

/* FICHA EXPRESS */
.options-reserva {position: absolute;right:-15px;top: 6px;max-width:320px;min-width:270px;padding: 20px;text-align: left;background: #fff;border: 1px solid #f6f4ff;border-radius: 10px;box-shadow: 2px 4px 5px #e7eaf8;z-index: 9;}
.options-reserva h4{margin:0}
.options-reserva p{text-align: left;}
.options-reserva p i {width: 14px;text-align: center;color: #58637d;}
.options-reserva div.acciones{display:flex;float: right;}
.options-reserva div.acciones div {cursor: pointer;padding: 5px;border-radius: 5px;margin: 2px;background: #fff;color: #878787;border:1px solid #eee}
.options-reserva div.acciones div:hover{background: #878787;color:#fff;border:1px solid #fff;transition: 0.3s;}
.options-reserva div.acciones div.desactivado {opacity: 0.4}
.options-reserva div.button-btns {display: flex;justify-content: space-between;gap: 0.5rem;}
.options-reserva div.button-btns button{font-size: 9pt;}
.options-reserva div.button-btns button:disabled{opacity: 0.4;}

/*-- SERVICIOS --*/
.steps-on {display: flex;justify-content: center;align-items: center;gap: 1rem;margin-bottom: 10px;}
.steps-on .step {padding: 5px 10px;border-radius: 5px;}
.steps-on .step.inprogress {background: #e3e3e3;color: #fff;border: 1px solid #d7d7d7;}
.steps-on .step.complete{background: #618d0d;color: #fff;border: 1px solid #416105;transition: all 0.5s ease;transform: scale(1.1)}
.steps-on .step.complete i{transition: all 0.5s ease;}
.backStep{cursor: pointer;}
.backStep:hover{transform: scale(1.1);transition: 0.3s;}

/*-- SEARCH ADVANCE --*/
.form-overSearch {display: flex;align-items: center;gap:1rem}
.form-overSearch > div {width: 100%;}
.form-overSearch > div:last-child {width: 20%;}

/*-- SEARCH --*/
ul#box_search li{margin-bottom: 10px}

/*-- SEARCH PRO BOX --*/
.SearchPro .AddCart, .SearchPro .NoCart{width:95%}

/*-- SIMBOLOGIA --*/
span.mini {font-size: 7pt !important;display: inline-block !important;border-radius: 20px !important;color: #fff !important;border: none !important;font-weight: 400 !important;padding: 2px 5px !important;margin: 0 5px !important;}
span.mini.verde{background: #618d0d;}
span.amarillo, span.rojo, span.verde, span.azul, span.gris, span.naranja, span.morado, span.turquesa, span.rosa, span.lima {display:inline-block;text-align: center;padding: 4px 12px;border-radius: 15px;font-weight: 500;text-transform: uppercase;letter-spacing: 1px;font-size: 6.5pt;}
span.amarillo{background:#fcedc3;color:#9c7d11;border:1px solid #9c7d11}
span.rojo{background:#fee2e2;color:#dc2626;border:1px solid #dc2626}
span.verde{background:#c1da92;color:#729929;border:1px solid #729929}
span.azul{background:#2792ef;color:#f6f6f6;border:1px solid #2d6ea7}
span.gris{background: #f1f1f1;color: #959595;border: 1px solid #d1d1d1;}
span.naranja{background:#ffe4b3;color:#b36a00;border:1px solid #b36a00}
span.morado{background:#e0c8f6;color:#6b3f9a;border:1px solid #6b3f9a}
span.turquesa{background:#a8e6e6;color:#1e7c7c;border:1px solid #1e7c7c}
span.rosa{background:#ffcce0;color:#b34d76;border:1px solid #b34d76}
span.lima{background:#e6f7a8;color:#7c9a1e;border:1px solid #7c9a1e}
span.btn.amarillo,span.btn.rojo,span.btn.verde{font-size: 13px;}
span.btn.amarillo:hover,span.btn.rojo:hover,span.btn.verde:hover{color:#fff}
.info_preview:has(span.amarillo:nth-of-type(2)) span.amarillo,
.info_preview:has(span.rojo:nth-of-type(2)) span.rojo,
.info_preview:has(span.verde:nth-of-type(2)) span.verde {
  margin-bottom: 7px;
}

td span.bgPersonalizado{width: 100%;}
span.bgPersonalizado{display:block;width: fit-content;text-align:center;padding: 5px 6px;border-radius: 5px;margin-right: 5px;font-size: 9px;color:#fff;letter-spacing: 1px;text-transform: uppercase;}

.seguimiento-info span.amarillo{padding: 2px 10px;border-radius: 5px;margin-right: 5px;display:block}
.seguimiento-info span.amarillo{background:#fcedc3;color:#9c7d11;border:1px solid #9c7d11}

/*-- SELECTOR CRISTALES --*/
.guia_medidas_lentes {display: grid;grid-template-columns: repeat(4, minmax(133px, 1fr));gap: 0.5rem;align-items: flex-end;width: 100%;padding: 20px;}
.guia_medidas_lentes > div {width: 100%;}
.guia_medidas_lentes > div img {width: 100%;}

.boxCristales {text-align: left;box-shadow: none;}
.seleccion-cristales-container {border-top: 2px solid #f0f0f0;margin-top: 15px;padding-top: 15px;width: 100%;}
.seleccion-cristales-container h4 {margin-bottom: 15px;font-size: 1.2em;color: #333;text-align: center;}

.tabla-cristales-invertida {width: 100%;border-collapse: separate;border-spacing: 0;font-size: 0.9em;margin-bottom: 15px;border: 1px solid #eee;border-radius: 12px;overflow: hidden;background: #fff;}
.tabla-cristales-invertida th, .tabla-cristales-invertida td {padding: 10px;text-align: center;border-right: 1px solid #fff;border-bottom: 1px solid #fff;}
.tabla-cristales-invertida tr td:last-child,.tabla-cristales-invertida tr th:last-child {border-right: none;}
.tabla-cristales-invertida tbody tr:last-child td {border-bottom: none;}
.tabla-cristales-invertida tbody td:first-child {text-align: left;font-weight: 500;}
.tabla-cristales-invertida thead th {background: linear-gradient(#fff, #f9f9f9);font-weight: 600;}
.tabla-cristales-invertida .fila-precios td {font-size: 1.1em;font-weight: 600;color: #0056b3;}
.tabla-cristales-invertida thead th:first-child, .tabla-cristales-invertida tbody tr td:first-child {font-weight: 600;text-align: left;}
label.radio-cat {background: #fff;padding: 0px 15px;border-radius: 10px;display: flex;align-items: center;cursor: pointer;}
.check-icon {color: #28a745;font-weight: 600;font-size: 1.4em;}
.extras-cristales {display: flex;align-items: center;justify-content: space-between;width: 100%;background: #fbfbff;border: 1px solid #d7d9f1;padding: 10px 20px;border-radius: 10px;box-sizing: border-box;gap: 2rem;margin-bottom: 15px;}
.extras-cristales > div:nth-child(1) {flex: 0 0 20%;text-align: center;}
.extras-cristales > div:nth-child(2) {width: 60%;text-align: left;}
.extras-cristales > div:nth-child(2) h4{margin: 0 0 15px}
.extras-cristales > div:nth-child(2) p{margin:0}
.extras-cristales > div:nth-child(3) {text-align: center;min-width: 150px;}
.extras-cristales img {width: 60%;height: auto;}

.comparar-cristales-toggle {cursor: pointer;padding: 8px 12px;margin: 12px 0 6px;display: inline-flex;align-items: center;gap: 8px;color: #FF9A47;font-weight: 600;}
.comparar-cristales-toggle:hover {text-decoration: underline;}
.comparar-cristales-wrapper {margin-top: 8px;}
.comparar-cristales-toggle.hidden, .comparar-cristales-wrapper.hidden {display: none;}
.boxCristalesComparar {opacity: 0.95;border-left: 3px dashed #FF9A47;padding-left: 12px;margin-top: 16px;}
.boxCristalesComparar .radio-cat-readonly {display: inline-block;padding: 4px 10px;font-weight: 600;}
.usar-tabla-comparar-wrap {margin: 10px 0 14px;text-align: right;}

/*-- SELECTOR CRISTALES · TARJETAS GLASS (carrusel) --*/
.boxCristales .cr-carousel {position: relative;display: flex;align-items: stretch;gap: 6px;margin-bottom: 16px;min-width: 0;}
.boxCristales .cr-cards-track {display: flex;gap: 16px;overflow-x: auto;scroll-snap-type: x mandatory;scroll-behavior: smooth;padding: 6px 4px 14px;flex: 1;min-width: 0;-webkit-overflow-scrolling: touch;}
.boxCristales .cr-cards-track::-webkit-scrollbar {height: 8px;}
.boxCristales .cr-cards-track::-webkit-scrollbar-thumb {background: rgba(150, 160, 180, .5);border-radius: 4px;}
.boxCristales .cr-cards-track::-webkit-scrollbar-track {background: transparent;}
.boxCristales .cr-carousel-nav {flex: 0 0 38px;align-self: center;width: 38px;height: 38px;border-radius: 50%;border: 1px solid rgba(225, 228, 238, .9);background: rgba(255, 255, 255, .8);-webkit-backdrop-filter: blur(8px);backdrop-filter: blur(8px);color: #525252;font-size: 14px;cursor: pointer;box-shadow: 0 4px 14px rgba(60, 80, 120, .14);transition: .16s;display: grid;place-items: center;}
.boxCristales .cr-carousel-nav:hover {background: linear-gradient(135deg, #FF9A47, #ff7e1d);color: #fff;border-color: transparent;box-shadow: 0 6px 16px rgba(255, 126, 29, .4);}
.boxCristales .cr-carousel-nav.hidden {display: none;}
.boxCristales .cr-card {position: relative;display: block;cursor: pointer;margin: 0;flex: 0 0 230px;width: 230px;scroll-snap-align: start;}
.boxCristales .cr-card input {position: absolute;opacity: 0;width: 0;height: 0;pointer-events: none;}
.boxCristales .cr-card-inner {position: relative;display: block;height: 100%;background: rgba(255, 255, 255, .72);-webkit-backdrop-filter: blur(14px);backdrop-filter: blur(14px);border: 1.5px solid rgba(225, 228, 238, .9);border-radius: 18px;padding: 18px 16px 14px;box-shadow: 0 6px 22px rgba(60, 80, 120, .10);transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;overflow: hidden;}
.boxCristales .cr-card-inner::before {content: "";position: absolute;inset: 0 0 auto 0;height: 5px;background: linear-gradient(90deg, var(--c1, #dfe4ee), var(--c2, #c6cedd));opacity: .95;}
.boxCristales .cr-card:hover .cr-card-inner {transform: translateY(-4px);box-shadow: 0 16px 32px rgba(60, 80, 120, .18);}
.boxCristales .cr-card input:checked + .cr-card-inner {border-color: #FF9A47;background: rgba(255, 251, 247, .92);box-shadow: 0 0 0 2px rgba(255, 154, 71, .55), 0 16px 34px rgba(255, 126, 29, .25);}
.boxCristales .cr-card input:focus-visible + .cr-card-inner {outline: 2px solid #ff7e1d;outline-offset: 2px;}
.boxCristales .cr-card-badge {position: absolute;top: 13px;right: 13px;width: 25px;height: 25px;border-radius: 50%;display: grid;place-items: center;font-size: 12px;color: #fff;background: rgba(150, 160, 180, .28);transition: .18s;}
.boxCristales .cr-card input:checked + .cr-card-inner .cr-card-badge {background: linear-gradient(135deg, #FF9A47, #ff7e1d);box-shadow: 0 4px 12px rgba(255, 126, 29, .45);}
.boxCristales .cr-card-nom {display: block;font-size: 17px;font-weight: 700;letter-spacing: -.3px;color: #525252;margin: 4px 0 2px;padding-right: 26px;}
.boxCristales .cr-card-precio {display: block;font-size: 22px;font-weight: 800;letter-spacing: -.5px;color: #525252;}
.boxCristales .cr-card-precio small {font-size: 11px;font-weight: 600;color: #8a8a8a;}
.boxCristales .cr-card-feat {list-style: none;margin: 13px 0 11px;padding: 0;display: flex;flex-direction: column;gap: 6px;}
.boxCristales .cr-card-feat li {display: flex;align-items: center;gap: 8px;font-size: 12px;color: #525252;}
.boxCristales .cr-card-feat li i {font-size: 9px;width: 16px;height: 16px;border-radius: 50%;display: grid;place-items: center;flex: 0 0 16px;}
.boxCristales .cr-card-feat li.on i {background: rgba(31, 170, 107, .16);color: #1faa6b;}
.boxCristales .cr-card-feat li.off {color: #b7bcc6;}
.boxCristales .cr-card-feat li.off i {background: rgba(160, 170, 185, .14);color: #c2c7d1;}
.boxCristales .cr-card-sw {display: flex;align-items: center;gap: 5px;flex-wrap: wrap;padding-top: 10px;border-top: 1px dashed rgba(150, 160, 180, .3);}
.boxCristales .cr-card-sw-lbl {font-size: 10px;color: #8a8a8a;text-transform: uppercase;letter-spacing: .4px;font-weight: 700;margin-right: 2px;}
.boxCristales .cr-card-swatch {width: 16px;height: 16px;border-radius: 50%;border: 2px solid #fff;box-shadow: 0 1px 4px rgba(0, 0, 0, .22);}
.boxCristales .cr-card-sw-none {font-size: 11px;color: #8a8a8a;}
.boxCristales .cr-card-readonly {cursor: default;}
.boxCristales .cr-card-readonly:hover .cr-card-inner {transform: none;box-shadow: 0 6px 22px rgba(60, 80, 120, .10);}

/*-- POPUP FULLSCREEN (reutilizable) + selector cristales a casi pantalla completa --*/
.content_success_popup.popup-fullscreen {width: 90%;max-width: 1400px;max-height: 92%;min-width: auto;padding: 22px 26px 0;box-sizing: border-box;}
.content_success_popup.popup-fullscreen .resumen-cristales {position: sticky;bottom: 0;margin: 10px -26px 0;padding: 14px 26px;background: rgba(255, 255, 255, .9);-webkit-backdrop-filter: blur(14px);backdrop-filter: blur(14px);border-top: 1px solid rgba(225, 228, 238, .9);z-index: 3;}

/*-- HEADER DEL SELECTOR (cr-head) · iso + título a la izquierda, select + comparar a la derecha --*/
.content_success_popup .cr-head {display: flex;align-items: center;gap: 14px;flex-wrap: wrap;margin-bottom: 18px;}
.content_success_popup .cr-head .cr-head-iso {flex: 0 0 48px;width: 48px;height: 48px;border-radius: 14px;display: grid;place-items: center;background: linear-gradient(135deg, #FF9A47, #ff7e1d);color: #fff;font-size: 21px;box-shadow: 0 6px 18px rgba(255, 126, 29, .4);}
.content_success_popup .cr-head .cr-head-titles {flex: 1;min-width: 150px;text-align: left;}
.content_success_popup .cr-head .cr-head-titles h1 {margin: 0;font-size: 23px;font-weight: 700;letter-spacing: -.5px;color: #525252;text-align: left;}
.content_success_popup .cr-head .cr-head-titles p {margin: 2px 0 0;font-size: 12.5px;color: #8a8a8a;}
.content_success_popup .cr-head .cr-head-controls {display: flex;align-items: center;gap: 10px;margin-left: auto;}
.content_success_popup .cr-head .cr-head-controls .cr-head-select {min-width: 200px;margin: 0;border-radius: 12px;border: 1px solid rgba(200, 205, 218, .9);background: rgba(255, 255, 255, .85);padding: 11px 14px;font-size: 13px;color: #525252;}
.content_success_popup .cr-head .cr-head-controls .select-tipo-lente {min-width: 240px;}
.content_success_popup .cr-head .comparar-cristales-toggle {margin: 0;padding: 0;width: 42px;height: 42px;border-radius: 12px;display: grid;place-items: center;background: rgba(255, 255, 255, .8);border: 1px solid rgba(200, 205, 218, .9);color: #ff7e1d;box-shadow: 0 4px 14px rgba(60, 80, 120, .12);transition: .16s;}
.content_success_popup .cr-head .comparar-cristales-toggle:hover {background: linear-gradient(135deg, #FF9A47, #ff7e1d);color: #fff;border-color: transparent;text-decoration: none;box-shadow: 0 6px 16px rgba(255, 126, 29, .4);}
/*-- IMG TEMPORAL AL CENTRO --*/
.tabla-cristales-container .img-temp {width: 100%;max-width: 300px;margin: 40px auto;display: block;opacity: 0.5;filter: grayscale(1);}

/*-- EXTRAS / TEÑIDO · estilo glass (sigue el juego visual de las tarjetas) --*/
.boxCristales .wrapper_extras-cristales {margin-top: 6px;}
.boxCristales .extras-cristales {background: rgba(255, 255, 255, .72);-webkit-backdrop-filter: blur(14px);backdrop-filter: blur(14px);border: 1.5px solid rgba(225, 228, 238, .9);border-radius: 16px;box-shadow: 0 6px 22px rgba(60, 80, 120, .10);padding: 14px 20px;gap: 1.5rem;transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease;}
.boxCristales .extras-cristales:hover {transform: translateY(-2px);box-shadow: 0 14px 30px rgba(60, 80, 120, .16);}
.boxCristales .extras-cristales:has(.extra-check:checked) {border-color: #FF9A47;background: rgba(255, 251, 247, .9);box-shadow: 0 0 0 2px rgba(255, 154, 71, .45), 0 14px 30px rgba(255, 126, 29, .18);}
.boxCristales .extras-cristales > div:nth-child(1) {flex: 0 0 64px;height: 64px;border-radius: 14px;background: rgba(241, 244, 250, .8);display: grid;place-items: center;overflow: hidden;}
.boxCristales .extras-cristales img {width: 70%;height: auto;}
.boxCristales .extras-cristales > div:nth-child(2) h4 {margin: 0 0 6px;font-size: 14px;font-weight: 700;color: #525252;}
.boxCristales .extras-cristales > div:nth-child(2) p {margin: 0;font-size: 11.5px;color: #8a8a8a;line-height: 1.4;}
.boxCristales .extras-cristales > div:nth-child(3) h4 {font-size: 15px;font-weight: 800;color: #525252;margin-top: 6px;}
.boxCristales .extras-cristales input:checked + label.checkbox-label {background: linear-gradient(135deg, #FF9A47, #ff7e1d);}
.boxCristales .item-tenido-cristal > div:nth-child(1) {background: linear-gradient(135deg, #f3ecff, #e4d7ff);}
.boxCristales .item-tenido-cristal .wrapper-colores-cristal {justify-content: flex-start;}

/*-- BLOQUE TOTAL · barra glass (scopeado SOLO a .resumen-cristales; .TotalCart/.valorCart son globales) --*/
.resumen-cristales {display: flex;align-items: center;flex-wrap: wrap;gap: 14px 22px;background: rgba(255, 255, 255, .72);-webkit-backdrop-filter: blur(14px);backdrop-filter: blur(14px);border: 1.5px solid rgba(225, 228, 238, .9);border-radius: 18px;box-shadow: 0 8px 26px rgba(60, 80, 120, .12);padding: 14px 22px;}
.resumen-cristales .TotalCart {width: auto;max-width: none;margin: 0 !important;color: #525252;font-weight: 600;text-align: left;display: flex;align-items: stretch;gap: 15px;flex: 1;}
.resumen-cristales .TotalCart h2 {display: none;}
.resumen-cristales .TotalCart > div {display: inline-flex;align-items: baseline;gap: 7px;width: auto;line-height: 1.2;justify-content: flex-start;}
.resumen-cristales .valorCart {width: max-content;border-bottom: none;padding: 0;font-size: 12.5px;color: #ff7e1d;}
.resumen-cristales .TotalCart > div .valorCart:first-child {color: #8a8a8a;font-size: 11px;text-transform: uppercase;letter-spacing: .4px;font-weight: 700;}
.resumen-cristales .TotalCart > div .valorCart:last-child {color: #525252;font-weight: 700;font-size: 14px;}
/*-- Miniatura del ítem (armazón / cristales) dentro de las filas de detalle --*/
.resumen-cristales .cr-item-nom {display: inline-flex;align-items: center;gap: 8px;}
.resumen-cristales .cr-item-foto {flex: 0 0 34px;width: 34px;height: 34px;border-radius: 9px;overflow: hidden;background: rgba(241, 244, 250, .8);}
.resumen-cristales .cr-item-foto img {width: 100%;height: 100%;object-fit: cover;display: block;}
.resumen-cristales .TotalCart > div:last-child {flex-direction: column;align-items: flex-start;gap: 0;padding-left: 16px;margin-left: 2px;border-left: 1px dashed rgba(150, 160, 180, .4);}
.resumen-cristales .TotalCart > div:last-child .valorCart:first-child {color: #8a8a8a;}
.resumen-cristales .TotalCart > div:last-child .valorCart:last-child {color: #ff7e1d;font-size: 25px;font-weight: 800;letter-spacing: -.5px;}
.resumen-cristales .btnBox {margin: 0 0 0 auto;display: flex;align-items: center;gap: 10px;flex-wrap: wrap;}
.resumen-cristales .btnBox .logo_sign {width: 38px;}
.resumen-cristales .btnBox .logo_sign img{width: 100%;}
.resumen-cristales .btnBox .btn {border-radius: 13px;padding: 12px 20px;font-weight: 700;}
.resumen-cristales .btnBox button.c_positivo {background: linear-gradient(135deg, #FF9A47, #ff7e1d);border-color: transparent;color: #fff;}
.resumen-cristales .btnBox button.c_positivo:hover {box-shadow: 0 12px 24px rgba(255, 126, 29, .5);}
/*-- Descuento marco / cristal (scopeado a .resumen-cristales) --*/
.resumen-cristales .TotalCart > div.cr-row-dto {display: flex;align-items: center;justify-content: space-between;gap: 8px;width: 100%;flex-wrap: wrap;padding: 5px 10px;border-radius: 16px;border: 1px solid #e9e9e9;}
.resumen-cristales .cr-desc {display: inline-flex;width: 100%;align-items: center;gap: 4px;margin-left: 4px;}
.resumen-cristales .cr-desc-input {width: 70px;padding: 6px 8px;border: 1px solid rgba(200, 205, 218, .9);border-radius: 9px;font-size: 12px;text-align: right;background: rgba(255, 255, 255, .85);color: #525252;}
.resumen-cristales .cr-desc-input:focus {outline: none;border-color: #FF9A47;}
.resumen-cristales .cr-desc-toggle {width: 28px;height: 28px;display: inline-flex;align-items: center;justify-content: center;border-radius: 9px;border: 1px solid rgba(200, 205, 218, .9);background: rgba(255, 255, 255, .85);color: #525252;font-weight: 800;font-size: 13px;cursor: pointer;user-select: none;}
.resumen-cristales .cr-desc-toggle:hover {border-color: #FF9A47;color: #ff7e1d;}
.resumen-cristales .cr-desc-neto {font-size: 12px;font-weight: 700;color: #1f600b;}
.resumen-cristales .cr-desc-neto:empty {display: none;}
/*-- Uso del lente + descripción adicional del ítem, apilados (scopeado a .resumen-cristales) --*/
.resumen-cristales .TotalCart > div.cr-uso-lente {display: flex;flex-direction: column;align-items: stretch;gap: 8px;width: auto;padding-right: 20px;border-right: 1px dashed rgba(150, 160, 180, .4);}
.resumen-cristales .cr-uso-lente .sivo-check-list {flex-direction: row;align-items: center;gap: 7px;width: auto;}
.resumen-cristales .obs-cristal {width: 100%;box-sizing: border-box;padding: 8px 10px;border: 1px solid rgba(200, 205, 218, .9);border-radius: 9px;font-size: 12.5px;background: rgba(255, 255, 255, .85);color: #525252;}
.resumen-cristales .obs-cristal:focus {outline: none;border-color: #FF9A47;}
/* Responsive del resumen: ver bloque "SELECTOR DE CRISTALES · RESPONSIVE" al final del archivo */

/*-- TOOLTIP --*/
.tooltip{position: relative;display: inline-block;/*border-bottom: 1px dotted black;*/}
/* Estilo visual en clase única: viaja con el nodo cuando el JS lo mueve a <body> (.sivo-floating) */
.tooltiptext{width: auto;background-color: #555;color: #fff;line-height: 12px;font-size:8pt;text-align: center;border-radius: 6px;padding: 5px 10px;transition: opacity 0.3s}
.tooltiptext::after{content: "";position: absolute;top: 100%;left: 50%;margin-left: -5px;border-width: 5px;border-style: solid;border-color: #555 transparent transparent transparent}
/* Posicionamiento y estado oculto: solo mientras vive dentro del .tooltip */
.tooltip .tooltiptext{visibility: hidden;position: absolute;z-index: 1;bottom: 125%;left: 50%;margin-left: -60px;opacity: 0}
.tooltip:hover .tooltiptext{visibility: visible;opacity: 1;transition: 0.3s}

/*-- GLOBES --*/
.globe-alerts {position: fixed;right: -15px;bottom: 2%;z-index: 9;transition: 0.3s;}
.globe-alerts .globe{position:relative;width: 45px;height: 45px;right:0;background: #f39a01;color: #fff;font-size: 14pt;text-align: center;padding: 10px;border-radius: 100%;margin-bottom: 15px;cursor:pointer;transition: transform 0.3s ease;}
.globe-alerts .globe:hover {transform: scale(1.1) translateX(-20px);}

/* NOVA */
.wrapper_full {background: #fff;width: 100%;height: 100%;position: absolute;padding: 20px;box-sizing: border-box}
.wrapper_full .logo{text-align:center;margin-bottom:50px}
.wrapper_full .logo img{width:60%;max-width:330px}
.wrapper_full .middle{margin-bottom:50px;text-align:center}
.wrapper_full .middle audio{display: none;margin: 10px auto}
.wrapper_full .footer{}

/* EXTERNOS */
.eapps-instagram-feed-posts-item-template-classic{border-radius: 20px}
.owl-nav{text-align: center;}
.owl-nav button:hover{transform: scale(1.1);transition: 0.3s;}
button.owl-prev {position: absolute;left: -20px;top: 50%;}
button.owl-next {position: absolute;right: -20px;top: 50%;}
.owl-carousel .owl-nav button.owl-next, .owl-carousel .owl-nav button.owl-prev{background: #9b9b9b !important;width: 30px;height: 30px;border-radius: 25px;line-height: 5px !important;color: #fff !important;margin: 0 5px;border: 2px solid #fff !important;}
/*.owl-carousel .owl-item img{height: 100%;object-fit: cover;box-sizing: border-box;aspect-ratio: 1 / 1}*/
.sl-wrapper .sl-image img {border-radius: 20px;}

/* LANDING PAGE */
body.BgLanding{background-image:url('/images/bg-landing.jpg');background-color: #eee;background-size: cover;background-attachment:fixed;width:100%;display: inherit;}
.BgLanding .form-registro{width: 60%;max-width: 1000px;margin: 0 auto;position: relative;background: transparent;backdrop-filter: blur(5px);border-radius: 20px;border: 1px solid #d3d3d3;padding: 20px 40px;}
.ico_social-circle{background: #4c4c4c;width: 50px;height: 50px;line-height: 25px;text-align: center;padding: 10px;border-radius: 100%;display: inline-block;color: #fff;margin: 0 5px;}
.ico_social-circle a{color:#fff}
.modern-footer{position: fixed;width: 50%;max-width: 1200px;left: 50%;bottom: 0;transform: translateX(-50%);z-index:-1}
.modern-footer img{max-width: 100%;max-height: 100%;}

/* SOCIAL BUTTONS */
.ico_social-minicircle{background: #232323;width: 45px;height: 45px;line-height: 22px;text-align: center;padding: 9px;border-radius: 100%;display: inline-block;color: #fff;margin: 0 10px;}
.ico_social-minicircle:hover{transition: 0.3s;transform: scale(1.1)}
.ico_social-minicircle a{color:#fff}

/* SOCIAL BUTTONS WEB LATERAL */
body.home .socials{display:none}
.socials{position: fixed;top: 50%;right: 0;z-index:10}
span.ico_social{display: block;background: #fff;margin-bottom: 10px;padding: 10px;border-top-left-radius: 10px;border-bottom-left-radius: 10px;border-top: 1px solid #d6d6d6;border-left: 1px solid #d6d6d6;border-bottom: 1px solid #d6d6d6;}
span.ico_social i{font-size:1.5em}
span.ico_social a{color:#000}
span.ico_social a:hover{color:#f90}

/* WSP ICON */
.wsp{position: fixed;right: 15px;bottom: 90px;z-index:9;text-align:right;}
.wsp span{display: block;background: #fff;border-radius: 20px;border: 1px solid #ddd;padding: 5px 10px;}
.wsp img{width: 50px;}
.wsp img:hover{opacity:0.8;transition: 0.3s}

/* MENSAJES DE ERRORES Y OTROS */
#big_msg{padding:20px;margin:40px 0}
.BgLanding #big_msg img {max-width: 100%;max-height: 165px;}
#big_msg img{max-width:600px}
#big_msg, #big_msg h1, #big_msg p{text-align:center}
#big_msg h1{font-size:42pt;margin: 20px}
#big_msg h2{font-size:28pt;margin: 20px}
#big_msg h3{font-size:16pt;margin: 20px}
.middle-big_msg{padding:80px 0}
.flex-big_msg{display: flex;gap: 2rem;width: 75%;position: absolute;top: 45%;left: 50%;transform: translate(-50%, -50%);}
.flex-big_msg > div:first-child {width: 40%;}
.flex-big_msg > div {width: 60%;}
.flex-big_msg h1{font-size: 38pt;}
.flex-big_msg p{font-size: 18pt;}
.flex-big_msg .btn{font-size: 11pt;}

/* SIVO PARTS & OTROS */
img.mini-logos{width: 50px;float: left;margin: 0 5px 0 0;padding: 0;}
img.mini-logos-notas{position: absolute;padding: 10%;top: 50%;left: 50%;transform: translate(-50%, -50%);z-index: 0;opacity: 0.1;}

/* APPS */
#instalarAndroid, #instalarIOS {display: none;}

/* ====================================== */
/* SELECTOR DE RECETAS OPTOMÉTRICAS       */
/* ====================================== */
.seccion-selector-receta{margin:5px 0}
#selector_receta_optica{display:flex;flex-direction:column;gap:6px}
.receta-item{display:block;position:relative;padding:10px 12px 10px 36px;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:border-color 0.2s, background 0.2s}
.receta-item:hover{border-color:#618d0d;background:#fafff0}
.receta-item-activa{border-color:#618d0d;background:#f5fbe6;box-shadow:0 0 0 1px #618d0d}
.receta-item input[type="radio"]{position:absolute;left:10px;top:14px;accent-color:#618d0d;margin:0}
.receta-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}
.receta-fecha{font-weight:600;font-size:0.9em;color:#333}
.receta-fecha i{margin-right:4px;color:#618d0d}
.receta-origen{display:block;font-size:0.75em;padding:2px 8px;border-radius:10px;font-weight:500}
.badge-atencion{background:#e3f2fd;color:#1565c0}
.badge-manual{background:#fff3e0;color:#e65100}
.receta-item-body{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.receta-ojo{display:flex;align-items:center;gap:4px;font-size:0.85em}
.receta-ojo-label{font-weight:700;color:#555;min-width:20px}
.receta-ojo-valor{color:#333;font-family:monospace}
.receta-extras{font-size:0.8em;color:#666;width:100%;text-align: left;}
.receta-sin{border-style:dashed}
.receta-sin{padding-top:8px;padding-bottom:8px}
.receta-sin .receta-item-header{margin-bottom:0}
.receta-sin input[type="radio"]{top:50%;transform:translateY(-50%)}
.receta-sin .receta-fecha{color:#888;font-weight:400}
.receta-sin .receta-fecha i{color:#bbb}

/* TUTORIALES */
.tut-wrap { display:flex; gap:16px; flex-wrap:wrap; }
.tut-left { flex: 1 1 420px; min-width: 320px; }
.tut-row { display:flex; gap:1rem; align-items:flex-start; padding:10px 0; border-bottom:1px solid #f0f0f0; cursor:pointer; }
.tut-row:last-child { border-bottom:0; }
.tut-thumb{width: 120px;height: 68px;border-radius: 10px;object-fit: cover;background:#eee;flex: 0 0 auto;}
.tut-row{ align-items:center; }
.tut-row:hover { background:#fafafa; }
.tut-row:hover .tut-thumb { transform: scale(1.01); }
.tut-thumb { transition: transform .12s ease; }
.tut-title { font-weight:700; margin:0; }
.tut-badge { display:inline-block; font-size:11px; padding:3px 8px; border-radius:999px; background:#f4f4f4; margin-right:6px; }
.tut-actions { display:flex; gap:8px; margin-top:10px; align-items:center; }
.tut-btn { padding:9px 12px; border:1px solid #ddd; border-radius:10px; background:#fff; cursor:pointer; }
.tut-btn:disabled { opacity:.5; cursor:not-allowed; }
.tut-muted { color:#777; font-size:13px; }
.tut-empty { padding:14px; color:#777; }

/* Modal simple */
.tut-modal {width:min(980px, 92vw);background:#fff;border-radius:14px;overflow:hidden;}
.tut-modal-head {display:flex; justify-content:space-between;align-items:center;padding:12px 14px 12px 0px; border-bottom:1px solid #eee;}
.tut-modal-title {font-weight:800; margin:0;font-size: 11pt;}
.tut-iframe-wrap {position:relative; padding-top:56.25%; background:#000;}
.tut-iframe-wrap iframe {position:absolute; inset:0; width:100%; height:100%; border:0;}

/* Vista previa de videos de redes sociales (panel configuración ecommerce) */
#previewVideoContent .videos-redes-wrapper {position:relative; width:100%; overflow:hidden; border-radius:8px; background:#000;}
#previewVideoContent .videos-redes-wrapper iframe {position:absolute; top:0; left:0; width:100%; height:100%; border:0;}
#previewVideoContent.video-youtube .videos-redes-wrapper {padding-bottom:56.25%;}
#previewVideoContent.video-instagram .videos-redes-wrapper {padding-bottom:130%;}
#previewVideoContent.video-tiktok .videos-redes-wrapper {padding-bottom:177%;}

/* Selector de estilo de visualización de videos redes sociales */
.estilo-videos-selector {display:flex; gap:14px; flex-wrap:wrap; margin-top:10px;}
.estilo-card {flex:1 1 180px; min-width:160px; padding:12px; border:2px solid #e0e0e0; border-radius:10px; background:#fafafa; cursor:pointer; transition:all .2s ease; text-align:center;}
.estilo-card:hover {border-color:#bbb; background:#fff;}
.estilo-card.active {border-color:#59ad40; background:#fff; box-shadow:0 0 0 3px rgba(89,173,64,.15);}
.estilo-card .estilo-label {margin:10px 0 0; line-height:1.35;}
.estilo-preview {position:relative; background:#eee; border-radius:6px; height:90px; padding:8px; overflow:hidden;}
.estilo-preview span {background:#ccc; display:block; border-radius:3px;}
.estilo-card.active .estilo-preview span,
.estilo-card.active .estilo-preview .estilo-player-main,
.estilo-card.active .estilo-preview i {background:#74ab19; color:#59ad40;}

.estilo-preview-grid {display:grid; grid-template-columns:repeat(3, 1fr); grid-template-rows:repeat(2, 1fr); gap:4px;}
.estilo-preview-player {display:flex; gap:6px;}
.estilo-preview-player .estilo-player-main {flex:0 0 60%; background:#ccc; border-radius:3px;}
.estilo-preview-player .estilo-player-list {flex:1; display:flex; flex-direction:column; gap:4px;}
.estilo-preview-player .estilo-player-list span {flex:1;}
.estilo-preview-carrusel {display:flex; align-items:center; gap:6px;}
.estilo-preview-carrusel span {flex:1; height:60px;}
.estilo-preview-carrusel i {color:#bbb; font-size:14px;}

/* SELECTOR DE PLATAFORMA — Videos redes sociales */
.plataforma-selector {display:flex;flex-direction: column;gap:14px; flex-wrap:wrap;}
.plataforma-btn {flex:1 1 60px; min-width:110px; padding:14px 10px; border:2px solid #e0e0e0; border-radius:10px; background:#fafafa; cursor:pointer; transition:all .2s ease; text-align:center;}
.plataforma-btn:hover {border-color:#bbb; background:#fff;}
.plataforma-btn .plataforma-label {margin:8px 0 0; line-height:1.35;}
.plataforma-btn.plat-youtube i {color:#FF0000;}
.plataforma-btn.plat-instagram i {background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888); -webkit-background-clip:text; background-clip:text; color:transparent;}
.plataforma-btn.plat-tiktok i {color:#010101;}
.plataforma-btn.plat-youtube.active {border-color:#FF0000; background:#fff5f5; box-shadow:0 0 0 3px rgba(255,0,0,.15);}
.plataforma-btn.plat-instagram.active {border-color:#ff9e7a; background:#fff5f8; box-shadow:0 0 0 3px rgba(220,39,67,.15);}
.plataforma-btn.plat-tiktok.active {border-color:#010101; background:#f7f7f7; box-shadow:0 0 0 3px rgba(1,1,1,.15);}

/* ICONOS */
	/* SUCCESS CHECK */
		.success-check{display: block;margin: 0 auto;width:60px;height:60px;border-radius:50%;border:4px solid #59ad40;position:relative;animation: pop .25s ease-out;}
		.success-check::before,.success-check::after{content:"";position:absolute;height:4px;background:#59ad40;border-radius:2px;transform-origin:left center;transform:scaleX(0);}
		/* linea corta */
		.success-check::before{width:18px; left:13px; top:27px;transform: rotate(45deg) scaleX(0);animation: draw .18s .12s ease-out forwards;}
		/* linea larga */
		.success-check::after{width:30px; left:23px; top:40px;transform: rotate(-55deg) scaleX(0);animation: draw .22s .22s ease-out forwards;}
		@keyframes draw {
			to { transform: rotate(var(--r,0deg)) scaleX(1); }
		}
		.success-check::before{ --r:45deg; }
		.success-check::after{ --r:-55deg; }

		@keyframes pop {
			from{transform:scale(.85);opacity:.4} to{transform:scale(1);opacity:1}
		}

	/* ERROR CROSS */
		.error-x{width:60px;height:60px;border-radius:50%;border:4px solid #e53935;position:relative;display:block;margin:0 auto;animation: pop .25s ease-out;}
		.error-x::before,.error-x::after{content:"";position:absolute;width:34px;height:4px;left:9px;top:25px;background:#e53935;border-radius:2px;transform-origin:center;transform: rotate(var(--r,0deg)) scaleX(0);animation: drawx .18s .12s ease-out forwards;}
		/* las dos líneas de la X */
		.error-x::before{ --r: 45deg; }
		.error-x::after { --r:-45deg; animation-delay:.22s; }

		@keyframes drawx{
			to { transform: rotate(var(--r,0deg)) scaleX(1); }
		}

		@keyframes pop{
			from{ transform:scale(.85); opacity:.4 }
			to{ transform:scale(1); opacity:1 }
		}

		/* opcional: accesibilidad */
		@media (prefers-reduced-motion: reduce){
			.error-x{animation:none}
			.error-x::before,.error-x::after{animation:none; transform: rotate(var(--r,0deg)) scaleX(1)}
		}

	/* WARNING */
		.warning-wrap{width:68px;height:68px;margin:0 auto;position:relative;animation: pop .25s ease-out;}
		.warning-tri{width:68px;height:68px;display:block;}
		.warning-tri path{fill:#f4b400; /* amarillo */}

		/* signo ! */
		.warning-line{position:absolute;left:50%;top:21px;width:4px;height:23px;background:#fff;border-radius:2px;transform:translateX(-50%) scaleY(0);transform-origin: top;animation: warnLine .18s .12s ease-out forwards;}
		.warning-dot{position:absolute;left:50%;top:48px;width:8px;height:8px;background:#fff;border-radius:50%;transform:translateX(-50%) scale(0);transform-origin:center;animation: warnDot .14s .24s ease-out forwards;}

		@keyframes warnLine{ to{ transform:translateX(-50%) scaleY(1); } }
		@keyframes warnDot { to{ transform:translateX(-50%) scale(1); } }

		@media (prefers-reduced-motion: reduce){
		.warning-wrap{animation:none}
		.warning-line{animation:none; transform:translateX(-50%) scaleY(1)}
		.warning-dot{animation:none; transform:translateX(-50%) scale(1)}
		}

/*------------------*/
/*-- MERCADOLIBRE --*/

	/* Utilidades de texto */
	.text-muted{color:#999}
	.text-success{color:#618D0D}
	.text-warning-ml{color:#f0ad4e}
	.text-danger{color:#f00}
	.text-link{color:#2d7dd2}
	.fw-semi600{font-weight:600}
	.fs-small{font-size:0.85em}

	/* Categoría: items de navegación */
	.ml_cat_item{padding:6px 10px;margin:3px 0;background:#fbfbff;border:1px solid #eee;border-radius:3px;cursor:pointer}
	.ml_cat_item:hover{background:#f0f0f0}
	.ml_cat_item .fa-folder{color:#FFE600}
	.ml_cat_item .fa-chevron-right{float:right;color:#ccc}
	.ml_cat_item .fa-tag{color:#999}
	.ml_cat_item[data-action="seleccionar"]{margin-left:15px}

	/* Categoría: sugerencias automáticas */
	.ml_cat_sugerencia{padding:8px;margin:5px 0;background:#fbfbff;border:1px solid #eee;border-radius:4px;cursor:pointer}
	.ml_cat_sugerencia:hover{background:#f0f0f0}
	.ml_cat_sugerencia .fa-tag{color:#FFE600}

	/* Alertas de cuenta ML */
	.ml_alerta_btn{margin-top:8px;display:inline-block}
	.ml_fila_tarifas_hide{display:none}

	/* Categoría seleccionada */
	.ml_cat_seleccionada{margin-top:10px;padding:10px;background:#fbfbff;border-radius:4px}

	/* Breadcrumb categorías */
	.ml_breadcrumb{font-size:0.85em;color:#2d7dd2;margin-bottom:8px}

	/* Resultado búsqueda producto */
	.ml_sel_producto{cursor:pointer}
	.ml_sel_producto:hover{background:#fbfbff}

	/* Imágenes ML */
	.ml_img_thumb{width:40px;height:40px;object-fit:cover;border-radius:4px}
	.ml_img_prod{width:70px;height:70px;object-fit:cover;border-radius:4px}
	.ml_img_detalle{max-width:200px;max-height:200px;object-fit:cover;border-radius:8px}
	.ml_img_tabla{width:50px;height:50px;object-fit:cover;border-radius:4px}

	/* Monto total pedido */
	.ml_total_monto{font-size:1.3em;font-weight:600}

	/* Debug JSON pedido */
	.ml_debug_summary{cursor:pointer;font-weight:600;padding:10px 0}
	.ml_json_debug{background:#1a1a1a;color:#eee;padding:15px;border-radius:5px;overflow-x:auto;font-size:0.8em;max-height:400px}

	/* Tabla vacía mensaje */
	.ml_empty_row{color:#999;padding:20px}

/*-- GUÍA / HELP CARDS (v3.9.98) --*/
.guide-container{max-width:820px;margin:0 auto;padding:10px 0}
.guide-header{background:linear-gradient(135deg,#1a1a2e 0%,#16213e 100%);color:#fff;padding:35px 30px;border-radius:12px;margin-bottom:25px}
.guide-header h1{font-size:21px;font-weight:600;margin-bottom:6px;color:#fff}
.guide-header p{font-size:13px;opacity:.8;margin:0}
.guide-header .guide-badge{display:inline-block;background:rgba(255,255,255,.15);padding:3px 12px;border-radius:20px;font-size:11px;margin-top:10px}
.guide-card{background:#fff;border-radius:10px;padding:28px;margin-bottom:18px;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.guide-card h2{font-size:16px;color:#1a1a2e;margin-bottom:14px;padding-bottom:9px;border-bottom:2px solid #eef1f6}
.guide-card h3{font-size:14px;color:#333;margin:16px 0 8px 0}
.guide-card p,.guide-card li{font-size:13px;color:#444;line-height:1.7}
.guide-card ul,.guide-card ol{padding-left:20px}
.guide-card li{margin-bottom:7px}
.guide-alert{padding:14px 18px;border-radius:8px;margin: 0 0 15px 0;text-align:left;font-size:13px;line-height:1.6}
.guide-alert-info{background:#e8f4fd;border-left:4px solid #2196F3;color:#1565c0}
.guide-alert-success{background:#e8f5e9;border-left:4px solid #4caf50;color:#2e7d32}
.guide-alert-warning{background:#fff8e1;border-left:4px solid #ff9800;color:#e65100}
.guide-alert-danger{background:#fdecea;border-left:4px solid #f44336;color:#c62828}
.guide-solution{background:#f8fafe;border:1px solid #e3ecf6;border-radius:8px;padding:18px 22px;margin:14px 0}
.guide-solution-number{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:#1a1a2e;color:#fff;border-radius:50%;font-size:13px;font-weight:600;margin-right:10px;flex-shrink:0}
.guide-solution-title{font-weight:600;color:#1a1a2e;font-size:14px;display:flex;align-items:center;margin-bottom:10px}
.guide-tag{display:inline-block;padding:2px 10px;border-radius:12px;font-size:11px;font-weight:600;margin-left:10px}
.guide-tag-ok{background:#e8f5e9;color:#2e7d32}
.guide-tag-pending{background:#fff8e1;color:#e65100}
.guide-tag-error{background:#fdecea;color:#c62828}
.guide-steps{counter-reset:gstep;padding-left:0;list-style:none}
.guide-steps li{position:relative;padding:7px 0 7px 34px;counter-increment:gstep}
.guide-steps li::before{content:counter(gstep);position:absolute;left:0;top:7px;width:23px;height:23px;background:#eef1f6;color:#555;border-radius:50%;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center}
.guide-status{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:6px;font-size:12px;font-weight:600}
.guide-status-ok{background:#e8f5e9;color:#2e7d32}
.guide-status-error{background:#fdecea;color:#c62828}
.guide-status-neutral{background:#f5f5f5;color:#888}
.guide-faq{border-top:1px solid #eee;padding-top:12px;margin-top:12px}
.guide-faq-q{font-weight:600;color:#1a1a2e;font-size:13px;margin-bottom:4px}
.guide-faq-a{font-size:13px;color:#555;margin-bottom:14px}
.guide-card code{background:#eef1f6;padding:1px 6px;border-radius:3px;font-family:'Consolas',monospace;font-size:12px}

/* SIN RESULTADOS */
.content-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#aaa;text-align:center;padding:30px;}
.content-empty.page-empty{min-height:60vh;}
.content-empty > i{font-size:50px;margin-bottom:15px;color:#ddd;}
.content-empty p{font-size:14px;max-width:300px;}

/*------------------*/
/*-- RESPONSIVE ! --*/

@media screen and (max-width: 1600px){
	.punto_inspeccion-list .item-final_pedido {padding: 0;margin-top: 10px;background: #fbfbff;border: 1px solid #eee;padding: 20px;border-radius: 10px;width: 100%;}
	.box_informacion_preview{width:100%}
	.mini-calculadoraArea{display: block;padding:10px}
	.mini-calculadoraArea span i {margin-bottom: 15px;}
	.mini-calculadoraArea input {border: 1px solid #eee;border-radius: 10px;margin-bottom: 10px;}
}

@media screen and (max-width: 1440px){
	.content_box_info-light .box-light span.num_detalle{font-size: 14pt;}
	span.num_detalle{font-size: 14pt;}
}

@media screen and (max-width: 1366px){
	body{font-size:9pt}
	h1{font-size:21px}
	h2{font-size:16px}
	h3{font-size:14px}
	h4{font-size:12px}
	.login-card{width:380px;padding:38px 32px}
	.install-card{max-width:560px;padding:36px 32px}
	.footer_form-content{width:50%}
	.box_notificacion{display:none}
	

	.input-form-light .form-control-light {height: 40px;}

	.btn {font-size: 8pt;}

	table.info_preview img{padding:0}
	table.info_preview tr{font-size: 8.5pt;}

	.content_box_info-light .box-light {padding:10px 15px;}
	.content_box_info-light .box-light .dato_box-light {font-size: 7.5pt;}
	.content_box_info-light .box-light span.num_detalle{font-size: 12pt;}
	span.num_detalle{font-size: 12pt;}

	#content_box_info-home p, #content_box_info p{font-size: 8pt;}
	.box_produccion_actual button i{font-size: 12pt;}
	.box_produccion_actual .simbologia{margin:0}

	h3.num_orden{font-size: 10pt}
	.panel-minibtns{padding: 5px;}
	.panel-minibtns i, .panel-minibtns a{font-size: 12pt;}

	section#seguimiento > img{max-width: 80%;}
	section#seguimiento .seccion_inline_block {width: 33% !important;}

	.parametrosLight{display: block;}
	.parametrosLight div:first-child{width: 100%;margin: 0 auto;}

	.content_error_popup, .content_success_popup, .content_warning_popup{left: 50%;}
	.popup_wrapper{left: 0;}
	.popup_box{width:75%;padding:20px;left: 50%;max-width: 65%;}

	input.form-control, select.form-control {font-size: 10px; height: 45px;border-radius: 10px;}

	.section_header_title{font-size: 1.2rem;line-height: 1.2}
	.seccion_c-sidebar{width:75%}
	#sidebar{width:24%}
	.top_nombre{font-size: 11pt;}
	.box_info_sidebar{width:100%;padding:5px 0}

	.formas-pago-btns {font-size: 8pt;}

	/* BOX INFO */
	div.box{min-height:115px;}
	.ico_box {font-size:14pt}

	.col-2{display: block;width: 100%;}
	.col-2:first-child{margin-bottom:10px}

	.box_chart {width: 100%;margin-bottom: 20px;}
	.chart-agenda{height: 340px;}
	.chart-info {width: 100%;display: grid;grid-template-columns: repeat(3, minmax(90px, 1fr));gap: 1rem;padding: 0;}

	.ticket h3{font-size:12pt}
	.num_dato_chart{font-size:13pt}
	.select_estados form {display: block;}
	.select_estados div:first-child {margin-bottom: 15px;}

	.precio-item-list_pedido{margin-bottom: 10px;}
	.item-list_pedido .item-final_pedido div {font-size: 9pt;}
	.item-list_pedido .item-final_pedido{width: 100%;text-align: right;padding: 10px;margin-top: 20px;border-radius: 10px;border: 1px solid #eee;background: #fbfbff;}
	.item-list_pedido .item-final_pedido{margin-top: 20px;padding: 10px 10px;}

	.itemlist-express div:first-child {display: none;}

	.wrapper_resumen_mes {display: grid;grid-template-columns: repeat(2, minmax(90px, 1fr));gap: 1rem;padding: 0;align-items: start;}
	.wrapper_resumen_mes > div{width:100% !important}

	#total_carrito{right: 5%}
	.TotalCart{font-size:11pt}
	.valorCart{font-size:11pt}

	#img_vehiculo-taller img {max-width: 80%;}
	.mjs_popup.width_medio {width:45%;}

	.box_inline_img{width: 20%;}
	.box_inline_content{width: 74%;}

	#list_products{grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));}

	ul.top_box.ul_no_list-style {padding: 0;}

	.section_header {margin-bottom: 10px;}

	.box_folio .rut{font-size: 10pt;}
	.box_folio .folio{font-size: 12pt;}
	.box_folio .adicional{font-size: 9pt;}
	.box_folio .fecha{font-size: 8pt;}

	.flex_itemlist{display:block}
	.flex_itemlist .col_itemlist{width: 100% !important;}

	.ficha_vehiculo {width: 25%;padding: 20px 25px;}
	
	.globe-alerts .globe {width: 35px;height: 35px;padding: 5px;}
	.globe-alerts .globe i {font-size: 12pt;}
}

@media screen and (max-width: 1200px){
	.content_login{padding: 20px 30px}
	
	span.ico_input{width: 35px;height: 35px;padding: 8px}
	.btn_panel_clasico{width: 90%;height: 25px;line-height: 25px;font-size: 10px}
	.usuarios_online{font-size: 8px;margin: 10px auto}
	.box_homeworks{width:20%}
	
	.seccion{padding:20px 10px}

	.content_box_info-light{grid-template-columns: repeat(4, minmax(90px, 1fr));gap:1rem}
	.content_box_info-light .box-light span.num_detalle{font-size: 14pt;}
	
	.box_produccion_actual button{padding:0}
	.box_produccion_actual .left{width:25%}
	.box_produccion_actual .mid{width: 73%;border-right: none}
	.box_produccion_actual .right{text-align:center;display: block;width: 100%;border-top: 1px dashed #e4e3e3;margin-top:5px;padding-top: 5px}
	.box_produccion_actual .right .simbologia{margin: 5px !important}

	span.num_detalle{font-size: 12pt}
	.dato_box{font-size:7pt}
	h3.num_orden{font-size:12pt}
	
	.seccion_inline_block .box_table, .box_chart, .chart-info{display:block;box-sizing:border-box;width: 100%;padding: 2%}
	.seccion_inline_block{width:49% !important}
	.ticket .seccion_inline_block{width:32% !important}
	.ticket .seccion_inline_block{width:32% !important;display:inline-block}

	.seccion_inline_block > .seccion_inline_block {width: 100% !important;}
	.seccion_inline_block > .seccion > .seccion_inline_block {width: 100% !important;}
	
	input.form-control{height: 45px;font-size: 11px}
	select.form-control{height: 45px;font-size: 11px}

	.header_table h2, .header_table h3{margin: 2px 0}
	td.campo {font-size:10px}
	td.info_preview img{margin: 0;width: 60px;height: 60px}
	span.pagado, span.pendiente_pago, span.pedido_retrasado{font-size:6pt}

	.seccion_c-sidebar{width:70%}
	#sidebar{width:29%}

	.box_datos_item{width:30%}
	.box_info_item{width:67%}
	
	.valorCart{width: 30%}
	.linestep{width: 38.9%}
	
	.form_left{width:30%}
	.form_right{width:69%}

	#total_carrito{right: 6%}
	
	.footer_form-content{width:50%;padding:2% 4%}
	
	.box_inline_img {width:100%}
	.box_inline_content {width: 100%;}

	.info_preview tr{font-size: 9pt}
	.info_preview img{margin: 4px 0;max-width: 100%;height: auto}
	#mini_notificacion{width:350px}
	.mini_notif_resumen .foto_usuario{width:40px;height:40px;margin-right:10px}
	.mini_notif_resumen .info_notif{width:70%}

	#list_products-cliente{grid-template-columns: repeat(3, minmax(100px, 1fr));}
}

@media screen and (max-width: 1024px){
	.login-brand{max-width:380px;padding-right:40px}
	.login-brand-tagline{font-size:1.8rem}
	.login-card{width:370px;padding:36px 30px}

	.content_box_info-light{grid-template-columns: repeat(3, minmax(90px, 1fr));gap:1rem}

	.item_ministeps{font-size:7pt}
	.linestep{width: 28.9%}
	.text_ministep{font-size:9pt}
	
	.TotalCart {margin: 20px 0;max-width: 100%;}
	.TotalCart div {display: block;width: 100%;}
	.TotalCart div div:first-child {border-bottom: none;text-align:left}

	h3.num_orden{font-size:11pt}

	.info_preview{position: relative;}

	#total_carrito{right: 10%}
}

@media screen and (max-width: 992px){
	.login-brand{display:none}
	.wrapper_login{justify-content:center}
	.login-card-logo-mobile{display:block}
	.box_table, .box_chart, .chart-info{display:block;width:100%;margin-bottom: 20px}
	.chart-info{padding:0}

	#content_box_info {grid-template-columns: repeat(3, minmax(90px, 1fr));}
	.content_box_info-light{grid-template-columns: repeat(3, minmax(90px, 1fr));gap:1rem}
	.content_box_info-light .box-light span.num_detalle{font-size: 12pt;}

	section#seguimiento > img{width: 90%;max-width: 100%;}
	section#seguimiento .seccion_inline_block {width: 100% !important;}
	section#seguimiento .seccion_inline_block .seccion {display: grid;grid-template-columns: repeat(3, minmax(90px, 1fr));gap: 1rem;align-items: start;padding-top: 50px;}
	section#seguimiento .seccion_inline_block .seccion .title_seccion {font-size: 9pt;border-top-right-radius: 10px;position: absolute;width: 100%;padding: 10px;}
	section#seguimiento .seccion_inline_block .seccion .info-pedido {display: block;border-bottom: none;padding:0}

	.flex-responsive{flex-direction: column;}
	.flex > div {width: 90%;}
	.grupo-header{flex-direction: row;align-items: center;}

	.box_datos_item{width: 37%}
	.box_info_item{width: 60%}
	.seccion_c-sidebar{width:100%}
	#sidebar{width:100%}
	h3.num_orden{font-size:10pt}
	
	.seccion_inline_block{display:block;width:100% !important}
	.form_left{width: 40%;}
	.form_right{width: 59%;}

	.form-group{width:100%;display:block}
	.form-group label{width:100%;display:block;text-align:center}
	.input-form{float: unset;width: 100%}
	.input-form-light{margin: 10px 0 20px 0;float: none}

	.mini-foto-prod img{width: 100%;height: auto;}
	.item-mid_pedido {flex: 1;display: flex;flex-direction: row;gap: 20px;}
	.item-list_pedido .item-mid_pedido div:first-child{width: 40%;}

	ul.menu-sidebar li{font-size:10pt;padding:15px 10px;margin-bottom:15px}
	
	.chart-info{width: 100%;display: grid;grid-template-columns: repeat(3, minmax(90px, 1fr));gap: 1rem;margin-bottom: 25px;}
	
	.wrapper_headerbox{display:none}
	.itemlist, .puntolist, .piezalist {display: block;margin-bottom: 35px}
	span.title_itemlist{display: inherit}
	.col_itemlist{width:100% !important;margin-bottom:10px}
	.col_itemlist:first-child{width: 100% !important}
	.col_itemlist:last-child{margin-bottom:0}
	.col_itemlist > div {margin-bottom:15px}
	.col_itemlist img{width: 100% !important}
	.col_itemlist .infoextra{display: block;font-weight: 600;text-align: center;font-size: 10px}
	.col_itemlist.delCol, .col_itemlist.regCost, .col_itemlist.calcCost {display: block;position: initial;height: 30px;border-radius: 5px;}
	.VenderExpress, .VenderProducto{text-align:center}

	.costobox{display:block;width:100%}

	#img_vehiculo-taller {height: auto;position: inherit;text-align: center;margin-bottom:20px;}
	#img_vehiculo-taller img {position: inherit;top: 0;left: 0;transform: none;max-width: 90%;}
	.ficha_vehiculo {position: initial;width: 65%;margin: 0 auto;transform: translateY(0);font-size: 1.4em;}
	.road-path{width: 45%;}

	.itemlist-express div:first-child {display: block;}

	/* COUNTER */
	.sivo_counter span{font-size:40px}

	/* PLANNER */
	.top-info-planner {display: block;}
	.top-info-planner > div {display: flex;align-items: center;gap: 0.4rem;padding: 5px;font-size: 10pt;}

	/* POPUPS */
	.mjs_popup.mini{transform: translate(-50%, -50%);width: 90%;}
}

@media screen and (max-width: 768px){
	body{font-size:11px}
	
	.box_pre_configuracion{width:100%;padding:10px 20px}
	.Sivo_Logo img{width: 70%}
	.boton{text-align:center}
	
	ul.menu_store{height:auto}

	#login_seccion{padding: 20px}
	.seccion_inline_block{display:block;width:100% !important}
	.seccion{border-radius:10px}
	.alerta_analisis_desactualizado{display:none}
	.info_preview{position: relative}
	.info_preview tr td.inline-grid{box-sizing:border-box}
	
	.section_header{display:block}
	.section_header_title{text-align: left;margin:0;padding-left:0}
	.section_header_menu{display:block;margin-bottom:2%}
	.section_header_menu img {display:none/*max-width: 60%;margin: 0 auto;*/}

	#content_box_info-home, #content_box_info{display:grid;grid-template-columns: repeat(2, minmax(90px, 1fr));gap: 1rem;}
	#content_box_info-home div.box_costos, #content_box_info div.box_costos{margin:0}
	div.box{padding:15px 0}

	.content_box_info-light{grid-template-columns: repeat(3, minmax(90px, 1fr));gap:1rem}

	.header_forms{display: block;}
	.header_forms div:first-child{margin-bottom:20px}

	.wrapper_resumen_mes{grid-template-columns: repeat(1, minmax(90px, 1fr));}
	
	td .ico_box, td .dato_box{display: block;width: 100%}
	td .ico_box i{font-size:11px}
	
	#mini_notificacion{width: 85%;right: 6%}
	.mini_notif_resumen .foto_usuario{width:40px;height:40px}
	.mini_notif_resumen .info_notif{width:75%}
	.mini_notif_resumen form button{padding: 2px 5px}

	#loading{padding:10px}
	#loading img{width:80%}
	#loading h3{font-size:8pt}
	
	.popup_box{width:90%;max-height: 90%;}

	.super_ico_title{display:none}
	
	.preview_Dte{height:400px}
	
	.box_homeworks{width: 80%}
	.btn_inline{display:block;width:100%}
	
	.wrapper_produccion_actual{width: 100%}
	
	.box_themes{width:100%;margin:20px 0}
	.theme-card{width:100%;margin:0}
	.wrapper_themes{width:90%;top:20%}
	.theme-description{max-height: 250px;}
	
	.ticket, .ticket span{text-align:center !important}
	.ticket .foto_usuario{width:50%;margin: 0 auto}
	.ticket h3{font-size: 16pt}
	.ticket span{display: block;margin:5px auto 5px auto;font-size: 16pt}
	span.stars_top{text-align:center}
	
	.form_left, .form_right{width:100%}
	.form-group{width:100%;display:block}
	.form-group label{width:100%;display:block;text-align:center}
	.input-form{float: unset;width: 100%}
	.input-form-light{margin: 10px 0 20px 0;float: none}
	
	.box_datos_item, .box_info_item{display: block;width:100%}
	.box_barcode img.barcode{width:90%}

	span#cambiarVisual {position: absolute;top: 0;right: 0;}
	
	span.amarillo, span.rojo, span.verde{margin:2px 0}
	
	.box_notificacion{width:68%}
	.box_notificacion .foto_usuario{display:none}
	.box_notificacion .info_notif{width:100%}
	.info_notif form button{padding: 2px 5px}
	
	.productos input.form-control, .insumos input.form-control{width:auto}
	.productos select.form-control, .insumos input.form-control{width:auto}
	.productos textarea, .insumos input.form-control{width:auto}
	#ResumenCotizacion input.form-control{width:auto}
	
	.box_inline_img, .box_inline_content{display: inline;box-sizing: border-box}
	.box_inline_img {width: 100%;margin: 1%;display: block;margin:0 auto}
	.box_inline_img img{width: 100%;height: auto}
	.box_inline_content{width: 100%;margin: 1%}
	.opciones{display: block}
	p.ob{width: 100%;display: block;text-align: center}
	.pages{text-align:center}

	.form-overSearch{display:block}
	
	.simbologia span{display:block;margin: 0 0 5px 0}

	.box_table, .box_chart, .chart-info{display:block;box-sizing:border-box;width: 100%;padding: 2%}
	
	td.border-left, td.border-right{border:none}
	
	.usuarios_online span {display: inline-block}
	.status_online {float: none}
	
	.box_informacion_preview{width:100%}
	.footer_form-content{width:100%;float:none}
	
	#popup{position:fixed;z-index:9}
	.popup hr{margin:5px auto}
	.content_error_popup, .content_success_popup, .content_warning_popup{width: 80%;left: 50%;transform: translate(-50%, -50%);padding:5% 4%}
	
	.seccion-info{display:block}
	.wrapper_seguimiento{width:100%;padding:40px;box-sizing: border-box;border-radius:0;border:none}
	#seguimiento img{width:100%}
	table.seguimiento-info tr td {box-sizing: border-box}
	
	.header_table_content {display: block;}
	.box_opciones_superior, .search_box_superior{display: block;width: 100%;text-align: center}
	.search_box_superior button {width: 100%;margin: 5px 0;}
	#search_fields{display: block;width: 100%;text-align: center;margin-bottom: 20px}
	#search_fields li{margin: 2px 0px;display: block}
	
	.select_estados form{display:block}
	.ficha_vehiculo{width:100%}
	
	#big_msg h2{font-size:20pt;margin: 20px}
	#big_msg h3{font-size:12pt;margin: 20px}
	#big_msg p{font-size:10pt;margin: 20px}
	.middle-big_msg{padding: 50px 0;}

	.mjs_popup.width_medio{width: 85%;}
	.parametrosLight div:nth-child(2){font-size: 12pt;text-align: center;}
	
	.Sivo img{width:50px}

	.accion_tarea{flex-direction: column;}
	.flex > div{width:100%}
	
	/* LANDING PAGE */
	.modern-footer{width: 100%}

	/* AGENDA */
	.top-info-planner > div {display: block;}
	.top-info-planner div span {display: block;margin-bottom: 20px;vertical-align: middle;font-size: 12pt;}
	.top-info-planner div span img{margin-right: 15px;}

	#orderBoxs{display:flex; flex-direction: column}
	.box_Order1{order:1}
	.box_Order2{order:2}
	.box_Order3{order:3}

	.registro_pagos div{flex-direction: column;}
	.registro_pagos div span:first-child{width: 100%;}
	.registro_pagos div span:nth-child(2){width:100%}
	.registro_pagos div span:nth-child(3){width:100%;}

	.guia_medidas_lentes {grid-template-columns: repeat(2, minmax(150px, 1fr))}

	.box-responsables_taller{flex-direction: column;}

	.boxes-precios-item-list_pedido {display: block;padding: 0;}
	.precio-item-list_pedido {padding: 5px 0 !important;margin: 0 0 5px 0;}
	.mini-foto-prod{max-width: 90%;}
}

@media screen and (max-width: 480px){
	body.home{background-color:#0a0a0a}
	.login-bg-overlay{background:linear-gradient(180deg,rgba(0,0,0,0.3) 0%,rgba(0,0,0,0.85) 60%,rgba(0,0,0,0.95) 100%)}
	.wrapper_login{align-items:flex-end;padding:0}
	.login-card-wrapper{width:100%}
	.login-card{width:100%;border-radius:24px 24px 0 0;padding:32px 24px 36px;background:rgba(20,20,20,0.85);border:none;border-top:1px solid rgba(255,255,255,0.08)}
	.login-card-logo-mobile{display:block}
	.install-wrapper{padding:20px 12px;align-items:flex-start}
	.install-card{padding:28px 20px;border-radius:20px;background:rgba(20,20,20,0.9)}
	.install-row{grid-template-columns:1fr}
	.install-stepper{gap:0;padding:0}
	.install-step-line{width:24px}
	.install-step-dot{width:30px;height:30px;font-size:0.7rem}
	.install-step-label{font-size:0.5rem}
	.ticket h3{font-size: 12pt}
	.ticket span{font-size:12pt}
	#content_box_info-home div.box, #content_box_info div.box{display:block;width:100%;height:100%}
	.content_error_popup, .content_success_popup, .content_warning_popup{min-width:auto;transform: translate(-50%, -50%)}
	.mjs_popup .btns-tickets{flex-direction: column;}

	.content_box_info-light{grid-template-columns: repeat(2, minmax(90px, 1fr));gap:1rem}
	span.num_detalle{font-size: 14pt}

	section#seguimiento .seccion_inline_block .seccion {display: block;padding: 0px;}
	section#seguimiento .seccion_inline_block .seccion .title_seccion {position: initial;margin-bottom: 20px;border-right: none;border-bottom-right-radius: none;}
	section#seguimiento .seccion_inline_block .seccion .info-pedido {margin-bottom: 20px;}
	section#seguimiento .seccion_inline_block .seccion .info-pedido div.registro_pagos div {width: 90%;}

	.item-list_pedido{display: block;width: 100% !important;padding: 10px;}
	.item-list_pedido > div{display: block !important;width: 100% !important;padding: 10px 0;}
	.item-list_pedido form.tooltip{width: 100%;}
	.item-list_pedido button{width:100%;margin:10px 0}
	.item-list_pedido .mini-foto-prod img{width: 50% !important;height: auto}
	.item-list_pedido .item-mid_pedido > div{padding: 10px 0px;width: 100% !important;}
	.item-list_pedido .item-final_pedido > div{padding: 10px 10px;}
	.boxes-precios-item-list_pedido{border-bottom: 2px solid #eee}
	.boxes-precios-item-list_pedido div span{display: initial;padding-right: 10px}
	.encargado-ico{width: 40px !important;height: 40px;}

	.popup_box {max-width: 100%;}

	.col_itemlist-express{padding: 0 0px}
	.item-list_pedido .mini-foto-prod img {width: 100% !important;}	
	#big_msg img{width:80%}

	.registro_pagos div {flex-direction: row;}

	.boxes_analisis {grid-template-columns: repeat(2, minmax(90px, 1fr));}
	.formas-pago-btns.preventa{margin:0}

	#list_products{grid-template-columns: repeat(auto-fill, minmax(85px, 1fr));}

	.item-list_info_producto{flex-direction: column;}
	.item-list_info_producto .item-info{max-width: 100%;text-align: center;}
	.item-list_info_producto .item-content{width: 100%;}
	.item-list_info_producto .item-content .box_precios{justify-content: center;}
	.item-list_info_producto .item-content .precio{text-align: center;}

	/* CALENDARIO */
	.flex-detail_calendario {display: block;}
	.resumen_dia_calendario, .calendario{width: 100%;}
	.calendario .encabezado{aspect-ratio: 16 / 4;}

	.box-responsables_taller .grupo {flex-direction: column;}

	.box_perfil_cliente, .box_perfil_profesional, .box_perfil_cancha, .box_perfil_car{flex-direction: column;}
	.miniAdd{width: 100%;display: block;position: inherit;}

	.wrapper_comments-product{column-count: 1;}

	.cimg-slider{aspect-ratio: 1/1;}
}

@media screen and (min-width: 768px) and (max-width: 991px) {
	.wrapper_comments-product{column-count: 3;}
}

/* ============================================ */
/* SIVO MATADEROS — Planner de Faenas           */
/* ============================================ */
.horario_lote_faena{cursor:pointer;transition:transform .15s ease, box-shadow .15s ease;}
.horario_lote_faena:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(0,0,0,.08);}
.lote_faena_titulo{font-weight:600;font-size:13px;color:#222;margin-bottom:4px;}
.lote_faena_meta{display:flex;flex-wrap:wrap;gap:6px 10px;font-size:11px;color:#555;align-items:center;margin-top:4px;}
.lote_faena_meta span{display:inline-flex;align-items:center;gap:4px;}
.lote_faena_meta i{font-size:11px;}
.flag_sag_pendiente{display:inline-block;padding:3px 9px;border-radius:12px;font-size:6.5pt;font-weight:500;letter-spacing:1px;text-transform:uppercase;background:#fcedc3;color:#9c7d11;border:1px solid #9c7d11;}
.flag_sag_ok{display:inline-block;padding:3px 9px;border-radius:12px;font-size:6.5pt;font-weight:500;letter-spacing:1px;text-transform:uppercase;background:#d4edda;color:#155724;border:1px solid #155724;}
.flag_sag_pendiente i, .flag_sag_ok i{margin-right:3px;}

/* ============================================================
   CARGO TERCEROS — Registro de entrega (bulto / lote)
   ============================================================ */
.paso_card{position:relative;border:1px solid #e3e7ee;border-radius:12px;padding:18px 18px 14px 60px;margin-bottom:14px;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.04);}
.paso_card .paso_num{position:absolute;top:18px;left:14px;width:34px;height:34px;border-radius:50%;background:#2c7be5;color:#fff;font-weight:700;font-size:1.1em;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px rgba(44,123,229,.4);}
.small_hint{font-size:.85em;color:#6b7280;margin-top:-4px;margin-bottom:10px;}

.ot_search_wrapper{position:relative;}
.ot_search_results{position:fixed;background:#fff;border:1px solid #ccc;border-top:none;max-height:260px;overflow-y:auto;z-index:99999;display:none;box-shadow:0 8px 20px rgba(0,0,0,.12);text-align:left;border-radius:0 0 8px 8px;}
.ot_search_results.active{display:block;}
.ot_search_item{padding:10px 14px;cursor:pointer;border-bottom:1px solid #eef1f6;font-size:.92em;}
.ot_search_item:hover, .ot_search_item:active{background:#f4f8ff;}
.ot_search_item small{color:#777;}
.ot_search_item .ot_pill{position:inherit;display:inline-block;background:#e8f3ff;color:#1f6feb;padding:1px 8px;border-radius:10px;font-size:.78em;margin-left:6px;font-weight:600;}
.ot_search_empty{padding:14px;color:#999;font-size:.88em;text-align:center;}

.foto_capture_box{position:relative;border:2px dashed #2c7be5;border-radius:12px;overflow:hidden;background:#f7faff;cursor:pointer;min-height:220px;display:flex;align-items:center;justify-content:center;margin-bottom:10px;}
.foto_capture_box img{width:100%;height:auto;display:block;max-height:360px;object-fit:contain;}
.foto_capture_box input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;}
.foto_capture_overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top, rgba(0,0,0,.65), rgba(0,0,0,0));color:#fff;padding:14px;text-align:center;font-weight:600;font-size:.95em;pointer-events:none;}
.foto_capture_overlay i{display:block;font-size:1.6em;margin-bottom:4px;}
.foto_capture_box.has_image{border-style:solid;background:#fff;border: 2px dashed #62bf77;}
.foto_capture_box.has_image .foto_capture_overlay{background:linear-gradient(to top, rgba(40,167,69,.85), rgba(40,167,69,0));}

.btn_xl{padding:16px 18px !important;font-size:1.05em !important;margin-top:8px;}

/* === CALCULADORA DE CORTES (SIVO PRINT) === */
.calc-cortes-popup{max-width:1000px;width:95%;}
.calc-cortes-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:1.5em;margin-top:1em;text-align:left;}
.calc-cortes-grid .form-group{display:grid;grid-template-columns:1fr 1fr;gap:0.8em;margin-bottom:0.6em;}
.calc-cortes-resultados{display:grid;grid-template-columns:repeat(4,1fr);gap:0.5em;margin-top:1em;}
.calc-cortes-box{background:#f4f6fa;border-radius:6px;padding:0.6em;text-align:center;font-size:0.78em;}
.calc-cortes-box b{display:block;color:#666;font-size:0.85em;margin-bottom:0.3em;text-transform:uppercase;}
.calc-cortes-box span{font-size:1.4em;font-weight:700;color:#2a5fbf;}
.calc-cortes-preview{background:#fafbfd;border:1px solid #e3e6ee;border-radius:8px;padding:1em;display:flex;flex-direction:column;align-items:center;}
.calc-cortes-preview b{display:block;margin-bottom:0.6em;text-transform:uppercase;font-size:0.85em;color:#444;}
#calc_preview_wrap{width:100%;max-width:380px;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;}
#calc_preview_svg{width:100%;height:100%;}
#calc_preview_legend{display:block;margin-top:0.6em;color:#666;font-size:0.75em;text-align:center;}
@media(max-width:900px){.calc-cortes-grid{grid-template-columns:1fr;}.calc-cortes-resultados{grid-template-columns:repeat(2,1fr);}}

/* === POWERED BY (genérico para fondo blanco) === */
.poweredby_box{display:flex;align-items:center;gap:0.8em;margin-top:1.5em;color:#888;font-size:0.75em;text-transform:uppercase;letter-spacing:0.1em;}
.poweredby_box hr{flex:1;border:none;border-top:1px solid #d8dde6;}
.poweredby_box span{white-space:nowrap;}
.poweredby_logo{text-align:center;margin-top:0.4em;}
.poweredby_logo img{opacity:0.85;}

/* === SUBPROCESOS DE PRODUCCIÓN (Fase 4) === */
/* Lista vertical de subprocesos de un item en el panel de producción */
.subprocs_panel_list{display:flex;flex-direction:column;gap:0.3em;align-items:stretch;text-align:left;font-size:0.82em;}
.subproc_item_status{display:flex;align-items:center;gap:0.4em;padding:5px 10px;border-radius:15px;line-height:1.3;}
.subproc_item_status i{flex-shrink:0;width:1em;text-align:center;}
.subproc_item_status small{color:#888;font-size:0.9em;}
.subproc_item_status .subproc_nombre{font-weight:600;}

.subproc_item_status.en_curso{background:#fff4d6;color:#8a6500;cursor: pointer;transition: 0.3s;}
.subproc_item_status.en_curso:hover{font-weight: 600;letter-spacing: 1px;}
.subproc_item_status.en_curso i{color:#d09a00;}

.subproc_item_status.pendiente{background:#f4f4f4;color:#9a9a9a;cursor:default}
.subproc_item_status.pendiente i{color:#bbb;}

.subproc_item_status.terminado{background:#e8f5d8;color:#4a7509;}
.subproc_item_status.terminado i{color:#618D0D;}
.subproc_item_status.terminado .subproc_nombre{text-decoration:line-through;text-decoration-color:#a5c56a;}

/* Botón compacto para marcar subproceso terminado */
.btn_mini{display:inline-flex;align-items:center;gap:0.4em;padding:0.35em 0.7em;border:none;border-radius:6px;font-size:0.85em;font-weight:600;cursor:pointer;transition:background 0.15s,transform 0.1s;}
.btn_mini i{font-size:0.9em;}
.btn_mini:hover{transform:translateY(-1px);}
.btn_mini:active{transform:translateY(0);}
.btn_mini.c_sugerencia{background:#f2a900;color:#fff;}
.btn_mini.c_sugerencia:hover{background:#d99300;}
.btn_mini.c_positivo{background:#618D0D;color:#fff;}
.btn_mini.c_positivo:hover{background:#4a7509;}

/* Sub-fila de subproceso en box_responsables del detalle_pedido */
.tr_subproc{background:#fafbff;}
.tr_subproc td{border-top:1px dashed #e3e6ee;}
.subproc_badge_orden{display:inline-block;min-width:2.5em;padding:0.2em 0.5em;background:#3c4670;color:#fff;border-radius:12px;font-size:0.75em;font-weight:700;letter-spacing:0.05em;}
.campo_label{color:#999;font-size:0.75em;text-transform:uppercase;letter-spacing:0.08em;}

/* === ASIGNACIÓN DE SUBPROCESOS EN PRODUCTO (Fase 1) === */
.subprocesos_asignacion_wrapper{display:flex;flex-direction:column;gap:1em;margin-top:1em;}
.subproceso_block{padding:0.8em 1em;background:#f8f9fc;border:1px solid #e3e6ee;border-radius:8px;}
.subproceso_block_title{display:flex;align-items:center;gap:0.6em;margin:0 0 1.2em 0;font-size:0.95em;color:#3c4670;border-bottom:1px dashed #d8dde6;padding-bottom:0.4em;}
.subproceso_badge_orden{display:inline-flex;align-items:center;justify-content:center;min-width:2em;height:2em;background:#3c4670;color:#fff;border-radius:50%;font-size:0.8em;font-weight:700;}
.subproceso_nombre{flex:1;font-weight:600;text-align: left;}
.subproceso_asignaciones{display:flex;flex-direction:column;gap:0.5em;}
.subproceso_asignaciones .form-group{margin:0;}
.form-control-light.rst_negativo{color:#b24b4b;font-style:italic;background:#fff5f5;border-color:#f2c8c8;}

/* Lista de responsables por sucursal en el detalle del producto */
.lista_subproc_asig{list-style:none;margin:0;padding:0;font-size:0.88em;}
.lista_subproc_asig li{padding:0.25em 0;border-bottom:1px dotted #eee;}
.lista_subproc_asig li:last-child{border-bottom:none;}

/* ======================================================================
   BÚSCADOR AVANZADO DE PRODUCTOS (searchProBox)
   Reemplaza el carrusel antiguo por grid de cards clickeables.
   ====================================================================== */
.popup_box_searchPRO{width:85%;max-width:1400px;max-height:90%;}
.searchPRO_header{position:sticky;top:-40px;background:#fff;z-index:5;padding-bottom:0.8em;margin-bottom:0.5em;}
.searchPRO_toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1em;margin-top:0.8em;}
.searchPRO_toolbar .form-group{flex:2 1 300px;margin:0;}
.searchPRO_count_label {display: flex;gap: 0.2rem;align-items: center;background: #f4f6fa;padding: 6px 12px;border-radius: 12px;border: 1px solid #e0e5ec;}
.searchPRO_count_label b{color:#2b6cb0;}

.searchPRO_results{padding:0.6em 0;}
.searchPRO_grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:14px;}

.searchPRO_card{position:relative;background:#fff;border:1px solid #fbfbfb;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:transform 0.2s,box-shadow 0.2s,border-color 0.2s;}
.searchPRO_card_clickable{cursor:pointer;}
.searchPRO_card_clickable:hover{transform:translateY(-3px);box-shadow:0 6px 18px rgba(0,0,0,0.08);border-color:#c5d0de;}
.searchPRO_card_disabled{opacity:0.55;cursor:not-allowed;}

.searchPRO_card_media{position:relative;background:#f6f7fa;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.searchPRO_card_media img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transition:transform 0.3s;}
.searchPRO_card_clickable:hover .searchPRO_card_media img{transform:scale(1.06);}

.searchPRO_card_badge{position:absolute;top:8px;padding:3px 8px;font-size:0.7em;font-weight:600;border-radius:8px;letter-spacing:0.2px;color:#fff;z-index:2;}
.searchPRO_badge_categ{left:8px;background:rgba(43,108,176,0.88);max-width:70%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.searchPRO_badge_oferta{right:8px;background:#618d0d;}

.searchPRO_card_body{padding:10px 12px 6px;flex:1;display:flex;flex-direction:column;gap:4px;}
.searchPRO_card_title{font-size:0.92em;font-weight:600;color:#2d3748;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em;}
.searchPRO_card_meta{display:flex;flex-wrap:wrap;gap:3px 8px;margin-top:2px;}
.searchPRO_card_cod{font-size:0.7em;color:#718096;background:#f0f3f7;padding:2px 6px;border-radius:6px;}

.searchPRO_card_stock{font-size:0.75em;padding:3px 8px;border-radius:8px;display:inline-flex;align-items:center;gap:5px;margin-top:4px;width:fit-content;}
.searchPRO_stock_ok{background:#e6f7ed;color:#2f855a;}
.searchPRO_stock_low{background:#fef5e0;color:#b7791f;}
.searchPRO_stock_out{background:#fde8e8;color:#c53030;}

.searchPRO_card_price{margin-top:auto;padding-top:6px;display:flex;flex-direction:column;gap:1px;}
.searchPRO_price_big{font-size:1.1em;font-weight:700;color:#1a365d;}
.searchPRO_card_price small{font-size:0.7em;color:#718096;}
.searchPRO_price_old{font-size:0.8em;color:#a0aec0;text-decoration:line-through;}

/* Responsive */
@media screen and (max-width: 900px){
	.popup_box_searchPRO{width:95%;}
	.searchPRO_grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;}
	.searchPRO_toolbar{align-items:stretch;}
	.searchPRO_toolbar_count{text-align:left;}
}
@media screen and (max-width: 500px){
	.searchPRO_grid{grid-template-columns:repeat(2,1fr);gap:8px;}
	.searchPRO_card_title{font-size:0.82em;min-height:2.4em;}
	.searchPRO_price_big{font-size:0.95em;}
}

/* ======================================================================
   VENTA EXPRESS — listado de productos (list_products_v2)
   Rediseño visual estilo searchPRO aplicado al box_sProductosExpress.
   Grid 6 columnas desktop (espacio reducido por sidebar del carrito).
   Preserva clases de comportamiento: AddCart, SelectOption_Cristales,
   SelectOption_Variable, sinStock y la estructura de datos_item.
   ====================================================================== */
#list_products.list_products_v2{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:30px;}

#list_products.list_products_v2 .item-list_products.expressCard{
	position:relative;background:#fff;border:1px solid #fbfbfb;border-radius:14px;overflow:hidden;
	display:flex;flex-direction:column;padding:0;box-shadow:0 1px 2px rgba(71,71,71,0.08);
	transition:transform 0.2s,box-shadow 0.2s,border-color 0.2s;
}
#list_products.list_products_v2 .item-list_products.expressCard:hover{
	transform:translateY(-3px);box-shadow:0 6px 18px rgba(0,0,0,0.08);border-color:#c5d0de;opacity:1;
}
#list_products.list_products_v2 .item-list_products.expressCard.sinStock{cursor:not-allowed;}
#list_products.list_products_v2 .item-list_products.expressCard.sinStock:hover{transform:none;box-shadow:0 1px 2px rgba(71,71,71,0.08);border-color:#e4e7ec;}

.expressCard_media{position:relative;background:#fff;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:2px solid #f6f7fa}
.expressCard_media .foto-item{width:100%;height:100%;display:flex;align-items:center;justify-content:center;}
.expressCard_media .foto-item .main-img{width:100%;height:100%;display:flex;align-items:center;justify-content:center;}
.expressCard_media .foto-item img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transition:transform 0.3s;}
.expressCard:hover .expressCard_media img{transform:scale(1.06);}

.expressCard_badge{position:absolute;top:6px;padding:2px 7px;font-size:0.65em;font-weight:600;border-radius:7px;letter-spacing:0.2px;color:#fff;z-index:2;line-height:1.3;}
.expressBadge_categ{left:6px;background:rgba(43,108,176,0.88);max-width:70%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.expressBadge_oferta{background: #2792ef;top: 6px;left: 10px;position: absolute;}
#list_products.list_products_v2 .item-list_products.expressCard span.label_oferta{position:absolute;top:6px;right:6px;left:auto;background:#e53e3e;color:#fff;padding:2px 7px;border-radius:7px;font-size:0.65em;font-weight:600;}

.expressCard_body{padding:8px 10px 10px;flex:1;display:flex;flex-direction:column;gap:3px;min-height:0;}
.expressCard_title{font-size:0.82em;font-weight:600;color:#2d3748;line-height:1.25;overflow:hidden;min-height:2.1em;}
.expressCard_meta{display:flex;flex-wrap:wrap;gap:2px 4px;margin-top:1px;}
.expressCard_cod{font-size:0.62em;color:#718096;background:#f0f3f7;padding:1px 5px;border-radius:5px;}

.expressCard_stock{font-size:0.68em;padding:2px 6px;border-radius:6px;display:inline-flex;align-items:center;gap:4px;margin-top:3px;width:fit-content;}
.expressStock_ok{background:#e6f7ed;color:#2f855a;}
.expressStock_low{background:#fef5e0;color:#b7791f;}
.expressStock_out{background:#fde8e8;color:#c53030;}

.expressCard_price{margin-top:auto;padding-top:4px;display:flex;flex-direction:column;gap:0;text-align: right;}
.expressCard_price small{font-size:0.6em;color:#718096;line-height:1;}
.expressCard_price_big{font-size:0.95em;font-weight:700;color:#1a365d;line-height:1.1;}
.expressCard_price_old{font-size:0.72em;color:#a0aec0;text-decoration:line-through;}
#list_products.list_products_v2 .item-list_products.expressCard span.label_precio{font-size:0.95em;font-weight:600;margin:0;display:inline;}

/* Overlay de acción al hover (indica qué hará el clic) */
.expressCard_overlay{position:absolute;inset:auto 0 0 0;background: linear-gradient(to top, rgb(233 233 233), rgb(255 255 255));color:#b1b1b1;padding:18px 8px 8px;font-size:0.72em;font-weight:600;text-transform: uppercase;text-align:center;opacity:0;transition:opacity 0.2s;pointer-events:none;z-index:3;}
.item-list_products.expressCard:hover .expressCard_overlay{opacity:1;}
.item-list_products.expressCard.sinStock .expressCard_overlay{background:linear-gradient(to top, rgba(120,50,50,0.92), rgba(120,50,50,0));}

/* Oculta chips de stock antiguos dentro del nuevo layout (los reemplaza expressCard_stock) */
#list_products.list_products_v2 .item-list_products.expressCard .stock.hide{display:none;}

/* Responsive — mantener 6 cols en desktop, reducir en pantallas chicas */
@media screen and (max-width: 1200px){
	#list_products.list_products_v2{grid-template-columns:repeat(5,minmax(0,1fr));}
}
@media screen and (max-width: 900px){
	#list_products.list_products_v2{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;}
	.expressCard_title{font-size:0.78em;}
}
@media screen and (max-width: 640px){
	#list_products.list_products_v2{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media screen and (max-width: 420px){
	#list_products.list_products_v2{grid-template-columns:repeat(2,minmax(0,1fr));}
	.expressCard_price_big{font-size:0.9em;}
}

/* =========================================== */
/* CRM Pipeline — Kanban board */
/* =========================================== */
.kanban-board{display:flex;gap:12px;overflow-y: hidden;overflow-x:auto;padding:10px 0 20px;align-items:flex-start;cursor:grab}
.kanban-board.kanban-dragging{cursor:grabbing;user-select:none;scroll-behavior:auto}
.kanban-board.kanban-dragging *{cursor:grabbing !important}
.kanban-board.kanban-dragging a{pointer-events:none}
.kanban-column{flex:0 0 280px;padding:10px;min-height:400px;max-height:75vh;display:flex;flex-direction:column}
.kanban-column-header{padding:8px 12px;border-top-left-radius: 12px;border-top-right-radius: 12px;color:#fff;font-weight:600;margin-bottom:10px;font-size:0.9em;display:flex;justify-content:space-between}
.kanban-items{flex:1;overflow-y:auto;min-height:100px}
.kanban-card{background:#fff;border:1px solid #ddd;border-radius:6px;padding:10px;margin-bottom:8px;cursor:grab;box-shadow:0 1px 2px rgba(0,0,0,0.05);transition:box-shadow 0.15s}
.kanban-card:hover{box-shadow:0 2px 6px rgba(0,0,0,0.1)}
.kanban-card.sortable-ghost{opacity:0.4;background:#e0f0ff}
.kanban-card.sortable-drag{cursor:grabbing;box-shadow:0 4px 12px rgba(0,0,0,0.2)}
.kanban-card-title{font-weight:600;font-size:0.95em;color:#333;margin-bottom:4px}
.kanban-card-sub{font-size:0.8em;color:#666;margin-bottom:6px}
.kanban-card-meta{display:flex;justify-content:space-between;align-items:center;font-size:0.75em;color:#888;margin-top:6px;padding-top:6px;border-top:1px dashed #e0e0e0}
.kanban-card a{color:inherit;text-decoration:none;display:block}
.kanban-card-score{font-weight:600;padding:2px 6px;border-radius:10px;color:#fff;font-size:0.7em}
.kanban-empty{color:#bbb;text-align:center;padding:20px 8px;font-size:0.85em;font-style:italic}
#kanban_feedback{position:fixed;bottom:20px;right:20px;padding:12px 20px;border-radius:6px;color:#fff;z-index:9999;display:none;font-weight:600;box-shadow:0 4px 12px rgba(0,0,0,0.2)}
#kanban_feedback.ok{background:#618D0D}
#kanban_feedback.err{background:#f00}

/* CRM Pipeline — Configuración (toggle inline edit) */
.crm-cfg-row-edit{background:#fafbff}
.crm-cfg-row-edit td{padding:10px !important}
.crm-cfg-color-chip{display:inline-block;width:40px;height:18px;border-radius:3px;border:1px solid #ccc;vertical-align:middle}

/* Módulo Descuentos por Producto / Categoría */
.descuento-estado-ico{font-size:1.5em}
.descuento-estado-vigente{color:#2e7d32}
.descuento-estado-programado{color:#e65100}
.descuento-estado-inactivo{color:#888}
.descuento-seleccion-ref{font-size:12px;color:#2e7d32;margin-top:6px;min-height:16px}
.descuento-form-block{margin-top:10px}

/* Score ICP del módulo CRM */
.score_icp_wrapper{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.score_icp_input{max-width:120px}
.score_icp_info{color:#888;font-size:16px;line-height:1;display:inline-block}
.score_icp_info:hover{color:#ff8a00}
.score_icp_guia{display:none;margin-top:10px;padding:12px 14px;background:#f7f9fc;border-left:3px solid #ff8a00;border-radius:3px;font-size:12px;color:#555}
.score_icp_guia.visible{display:block}
.score_icp_guia ul{margin:6px 0 6px 18px;padding:0}
.score_icp_guia li{margin-bottom:3px}
.score_icp_guia p{margin:6px 0 0;color:#777;font-style:italic}

/* ============================================================
 * CONFIGURACIÓN · sección Emails
 * Selectores prefijados con #emails para ganar especificidad
 * sobre `td button { width:35px }` del sistema.
 * ============================================================ */
#emails .emails-color-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
#emails .emails-hex-label{font-family:"SFMono-Regular",Consolas,monospace;font-size:13px;color:#1f2937;font-weight:600}

/* Botón restaurar color — solo ícono, redondo */
#emails .emails-color-row .emails-reset-btn{width:36px;height:36px;padding:0;border:1px solid #e5e7eb;background:#fff;border-radius:50%;cursor:pointer;color:#4a4a4a;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s}
#emails .emails-color-row .emails-reset-btn:hover{background:#f3f4f7;border-color:#9ca3af;color:#1f2937}

/* Swatches de colores preset */
#emails .emails-swatches{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
#emails .emails-swatches .swatch{width:24px;height:24px;border-radius:35px;border:2px solid rgba(17,24,39,0.12);cursor:pointer;padding:0;transition:transform .15s,border-color .15s,box-shadow .15s;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.25)}
#emails .emails-swatches .swatch:hover{transform:scale(1.1)}
#emails .emails-swatches .swatch.active{border-color:#1f2937;box-shadow:0 0 0 2px rgba(17,24,39,0.12)}

/* Toggle Desktop / Mobile — sobreescribe td button */
#emails .emails-device-toggle{display:inline-flex;background:#eef0f5;border-radius:8px;padding:3px}
#emails .emails-device-toggle .device-btn{width:auto;padding:6px 14px;border:0;background:transparent;color:#6b7280;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;transition:background .15s,color .15s,box-shadow .15s}
#emails .emails-device-toggle .device-btn.active{background:#fff;color:#111827;box-shadow:0 1px 3px rgba(0,0,0,0.08)}

/* Frame de previsualización */
#emails .emails-preview-wrap{margin-top:20px;padding:20px;background:#eef0f5;border-radius:12px;text-align:center;background-image:radial-gradient(rgba(17,24,39,0.05) 1px,transparent 1px);background-size:18px 18px}
#emails .emails-preview-frame{width:100%;max-width:777px;height:900px;border-radius:10px;background:#fff;overflow-x:hidden;transition:max-width .2s}

@media only screen and (max-width:768px){
	#emails .emails-preview-frame{height:720px}
}

/* ===== Análisis + Contabilidad — Fase 1 (2026-04-23) ===== */
/* Indicadores de crecimiento YoY/MoM */
.kpi-growth-up{color:#1b7a35;font-weight:600}
.kpi-growth-down{color:#b02a37;font-weight:600}
.kpi-growth-flat{color:#777}

/* Heatmap estacional de ventas */
.heatmap-ventas td.heatmap-empty{background:#f7f7f7;color:#bbb}
.heatmap-ventas td.heatmap-very-low{background:#e8f1fb;color:#333}
.heatmap-ventas td.heatmap-low{background:#c6dcf3;color:#333}
.heatmap-ventas td.heatmap-med{background:#94bce2;color:#fff}
.heatmap-ventas td.heatmap-high{background:#4a90c8;color:#fff}
.heatmap-ventas td.heatmap-very-high{background:#1b5a96;color:#fff;font-weight:600}
.heatmap-ventas tr.fila-promedio td{border-top:2px solid #999;font-style:italic}

/* Aging buckets (cartera vencida / cuentas por pagar) */
.aging-bucket-0-30{background:#f1fae3}
.aging-bucket-31-60{background:#fff8e1}
.aging-bucket-61-90{background:#ffe9d6}
.aging-bucket-91-180{background:#fdd8d6}
.aging-bucket-180-mas{background:#f9c4c1;font-weight:600}

/* Filtros de Libros SII */
.filtro-libro-sii{display:inline-block;margin-right:10px;vertical-align:top}
.libro-sii-descargable{cursor:pointer;transition:transform .15s ease, box-shadow .15s ease}
.libro-sii-descargable:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.08)}

/* ===== Premium Upgrade Lock — Fase 2 (2026-04-24) ===== */
.premium-upgrade-card{max-width:620px;margin:40px auto;padding:40px 32px;text-align:center;background:#fff;border:1px solid #f0e6d2;border-radius:14px;box-shadow:0 4px 18px rgba(255,154,71,.08)}
.premium-upgrade-card .premium-lock-icon{width:72px;height:72px;margin:0 auto 18px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,#ffb76b,#ff9a47);color:#fff;font-size:32px;box-shadow:0 4px 12px rgba(255,154,71,.3)}
.premium-upgrade-card .premium-titulo{font-size:22px;margin:0 0 8px;color:#333;font-weight:700}
.premium-upgrade-card .premium-descripcion{font-size:15px;color:#666;line-height:1.5;margin:0 0 22px}
.premium-upgrade-card .premium-beneficios{list-style:none;padding:0;margin:0 auto 26px;max-width:420px;text-align:left}
.premium-upgrade-card .premium-beneficios li{padding:6px 0;color:#444;font-size:14px}
.premium-upgrade-card .premium-beneficios li i{color:#1b7a35;margin-right:8px}
.premium-upgrade-card .premium-cta{display:flex;flex-direction:column;align-items:center;gap:14px}
.premium-upgrade-card .premium-plan-badge{display:inline-block;padding:5px 14px;background:#fff3e0;color:#b06b1a;border-radius:16px;font-size:12px;font-weight:600;letter-spacing:.3px;text-transform:uppercase}
.premium-upgrade-card .premium-upgrade-btn{padding:12px 28px;font-size:15px}

/* Ícono premium junto al label en el sidebar (se puede agregar a un <li> con clase .premium-feature) */
.menu-sidebar li.premium-feature span::after{content:'\f521';font-family:'Font Awesome 6 Free';font-weight:900;margin-left:6px;color:#ff9a47;font-size:11px;vertical-align:top}

/* ===== RFM Segmentos — Fase 2 (2026-04-24) ===== */
.rfm-badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:#fff}
.rfm-badge.rfm-seg-champions{background:#1b7a35}
.rfm-badge.rfm-seg-loyal{background:#2e86de}
.rfm-badge.rfm-seg-potential{background:#54a0ff}
.rfm-badge.rfm-seg-new{background:#48dbfb;color:#222}
.rfm-badge.rfm-seg-promising{background:#9b59b6}
.rfm-badge.rfm-seg-need_attention{background:#f39c12}
.rfm-badge.rfm-seg-at_risk{background:#e67e22}
.rfm-badge.rfm-seg-cant_lose{background:#c0392b}
.rfm-badge.rfm-seg-hibernating{background:#7f8c8d}
.rfm-badge.rfm-seg-lost{background:#34495e}

tr.rfm-seg-champions td{border-left:3px solid #1b7a35}
tr.rfm-seg-cant_lose td{border-left:3px solid #c0392b}
tr.rfm-seg-at_risk td{border-left:3px solid #e67e22}
tr.rfm-seg-lost td{border-left:3px solid #34495e}

/* === Badges Clientes Activos (tabla resumen planes) === */
.badge-clientes-activos{display:inline-block;min-width:2.2em;padding:.25em .6em;border-radius:1em;font-size:.95em;font-weight:600;line-height:1.2;text-decoration:none;transition:transform .15s ease, box-shadow .15s ease}
.badge-clientes-activos.badge-activos-on{background:#e6f4ea;color:#1b7a35;border:1px solid #b6e1c2}
.badge-clientes-activos.badge-activos-on:hover{transform:translateY(-1px);box-shadow:0 2px 6px rgba(27,122,53,.18)}
.badge-clientes-activos.badge-activos-off{background:#f1f3f5;color:#7d8a96;border:1px solid #dde2e7}

/* === Calendario glass facturación === */
.cal-fact{width:100%;overflow-x:auto;background:rgb(247 250 255);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.65);border-radius:20px;box-shadow:0 8px 30px rgba(60,80,120,.14);padding:18px;margin-bottom:30px}
.cal-fact-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.6em;min-width:40em}
.cal-fact-dow{text-align:center;font-size:.72em;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:#8a8a8a;padding:.3em 0}
.cal-fact-day{position: relative;display: flex;flex-direction: column;gap: .25em;min-height: 5.2em;border: 1px solid rgb(255 255 255);border-radius: 14px;background: rgb(255 255 255 / 58%);padding: .55em .6em;transition: transform .15s ease, box-shadow .15s ease;}
.cal-fact-day:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(60,80,120,.15)}
.cal-fact-empty{border:1px dashed rgba(150,160,180,.25);background:transparent}
.cal-fact-num{font-size:.82em;font-weight:700;color:#525252}
.cal-fact-badge{position:absolute;top:.5em;right:.55em;min-width:1.5em;height:1.5em;display:grid;place-items:center;padding:0 .4em;font-size:.72em;font-weight:700;color:#fff;background:linear-gradient(135deg,#ff9a47,#ff7e1d);border-radius:999px;box-shadow:0 3px 8px rgba(255,126,29,.4)}
.cal-fact-amt{font-size:.74em;font-weight:600;line-height:1.3;color:#525252}
.cal-fact-lvl1{background:rgba(255,154,71,.12)}
.cal-fact-lvl2{background:rgba(255,154,71,.22)}
.cal-fact-lvl3{background:rgba(255,154,71,.34)}
.cal-fact-lvl4{background:rgba(255,154,71,.48);border-color:rgba(255,126,29,.5)}

/* === Bloque renovación contrato === */
.renovacion-box{padding:1em;border:1px solid #e3e7eb;border-radius:.5em;background:#fbfcfd;margin-top:1em}
.renovacion-box h3{margin:0 0 .6em 0;font-size:1.05em}
.renovacion-box .renovacion-row{display:flex;flex-wrap:wrap;gap:.8em;align-items:center}
.renovacion-box .renovacion-row label{font-size:.9em;color:#5b6770}

/* === Botón emitir DTE inline en planilla === */
.btn-emitir-dte{display:inline-flex;align-items:center;gap:.3em;padding:.3em .7em;font-size:.85em;border-radius:.3em;background:#1b7a35;color:#fff;border:none;cursor:pointer}
.btn-emitir-dte:hover{background:#15622a}
.btn-emitir-dte[disabled]{background:#aaa;cursor:not-allowed}
.btn-editar-cuota{background:none;border:none;color:#2e86de;cursor:pointer;margin-left:.4em}
.btn-editar-cuota:hover{color:#1b6cb3}

/* === Traslados de inventario === */
.traslado-filter-checkbox{display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.traslado-search-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.traslado-search-row .traslado-search-col-tipo{width:10em}
.traslado-search-row .traslado-search-col-item{flex:1 1 22em;min-width:18em}
.traslado-search-row .traslado-search-col-cant{width:8em}
.traslado-grid-2col{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.traslado-grid-2col .traslado-col-span-2{grid-column:1 / span 2}
@media(max-width:900px){.traslado-grid-2col{grid-template-columns:1fr}.traslado-grid-2col .traslado-col-span-2{grid-column:auto}}
.traslado-input-cant{width:8em;text-align:center;margin:0 auto}
.traslado-col-18em{width:18em}
.traslado-mt-sm{margin-top:8px}
.traslado-ml-sm{margin-left:8px}
.traslado-badge-sm{font-size:9px}
/* Teñido de cristal — selector de colores circulares reutilizable */
.color-circle-swatch{display:inline-block;width:28px;height:28px;border-radius:100%;border:2px solid #e0e0e0;cursor:pointer;margin:3px;vertical-align:middle;transition:transform .15s ease,border-color .15s ease}
.color-circle-swatch:hover{transform:scale(1.08)}
.color-circle-swatch.selected{border-color:#FF9A47;box-shadow:0 0 0 2px #fff inset,0 0 0 3px #FF9A47}
.color-circle-swatch.mini{width:18px;height:18px;margin:1px;border: 1px solid #e0e0e0 !important;cursor:default}
.color-circle-swatch.readonly{cursor:default}
.color-circle-swatch.readonly:hover{transform:none}
.wrapper-colores-cristal{display:flex;flex-wrap:wrap;align-items: flex-start;gap:4px;justify-content: flex-end;padding:6px 0}
.color-circle-label{display:inline-flex;width: 35px;flex-direction:column;align-items:center;margin:4px 6px;font-size:11px;color:#555}
.color-circle-label .color-circle-swatch{margin:0 0 3px 0}
/* Stack visual de colores (informativo, no seleccionable) en la tabla de cristales */
.color-stack{display:inline-flex;align-items:center;padding:2px 6px}
.color-stack .color-circle-swatch.stacked{margin-left:-10px;border:2px solid #fff;box-shadow:0 0 1px rgba(0,0,0,.25);transition:transform .15s ease}
.color-stack .color-circle-swatch.stacked:first-child{margin-left:0}
.color-stack .color-circle-swatch.stacked:hover{transform:translateY(-2px);z-index:2}
/* "Natural" — círculo blanco con borde gris para distinguirlo del fondo del documento */
.color-circle-swatch.natural{border-color:#999;background-color:#fff !important}
/* Botón cuadrado con solo icono (toggle comparar inline) */
.btn-icon-square{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;border-radius:6px;cursor:pointer;flex-shrink:0;margin-left:8px;align-self:flex-end;margin-bottom:1px}

/* Currículum del profesional (HTML del editor Quill) — detalle de usuario */
.curriculum_profesional{line-height:1.6;text-align:left}
.curriculum_profesional p{margin:0 0 10px}
.curriculum_profesional ol, .curriculum_profesional ul{padding-left:22px;margin:0 0 10px}
.curriculum_profesional li{margin:2px 0}
.curriculum_profesional ol li{list-style-type:decimal}
.curriculum_profesional ul li, .curriculum_profesional li[data-list="bullet"]{list-style-type:disc}
.curriculum_profesional li[data-list="ordered"]{list-style-type:decimal}
.curriculum_profesional h1, .curriculum_profesional h2, .curriculum_profesional h3, .curriculum_profesional h4{margin:0 0 8px;line-height:1.3}
.curriculum_profesional a{color:#0066cc;text-decoration:underline}
.curriculum_profesional img{max-width:100%;height:auto}
.curriculum_profesional .ql-align-center{text-align:center}
.curriculum_profesional .ql-align-right{text-align:right}
.curriculum_profesional .ql-align-justify{text-align:justify}

/* =========================================================================
   BOTONES SIVO · estandarización global (reusa tokens :root, sin tocar PHP)
   Mismos nombres de clase y colores semánticos; solo forma/sombra/hover.
   ========================================================================= */
.btn{padding:9px 20px;border:none;border-radius:12px;box-shadow:0 4px 14px rgba(60,80,120,.14);font-weight:600;transition:.2s;}
.btn:hover{background-color:initial;border-color:transparent;transform:translateY(-2px);box-shadow:0 7px 18px rgba(60,80,120,.20);filter:brightness(1.04);}
.c_positivo{background:linear-gradient(135deg,#7ab51d,#618D0D);}
.c_sugerencia{background:linear-gradient(135deg,var(--acento),var(--acento-2));color:#fff;}
.c_negativo{background:linear-gradient(135deg,#ef6a55,#e0533d);}
.c_standard{background:linear-gradient(135deg,#5a6172,#3d4351);}
.c_disabled{background:#dfe3ea;color:#a7adba;box-shadow:none;cursor:not-allowed;}
.mini-btn{background:rgba(255,255,255,.7);border:1px solid var(--glass-brd);border-radius:11px;box-shadow:none;color:var(--texto);transition:.2s;}
.mini-btn:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(60,80,120,.16);}
.btn-light{background:rgba(255,255,255,.7);border:1px solid var(--glass-brd);border-radius:12px;box-shadow:none;color:#6b941d;}
.btn-light:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(60,80,120,.16);}

/* ====================== TRABAJOS / SERVICIOS EN TERRENO ====================== */
.st-campo-help{display:block;margin-top:4px;color:#8a93a6;font-size:12px;line-height:1.4;}
.st-slider{width:100%;vertical-align:middle;}
.st-slider-val{display:inline-block;margin-left:10px;min-width:38px;padding:2px 8px;border-radius:8px;background:#eef2f9;color:#3c5078;font-weight:600;font-size:13px;}

/* Fotografías del informe */
.st-fotos-wrap{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-start;margin-top:6px;}
.st-foto-thumb{position:relative;width:120px;}
.st-foto-thumb img{width:120px;height:120px;object-fit:cover;border-radius:10px;border:1px solid var(--glass-brd,#dfe5ef);}
.st-foto-del{margin-top:4px;}

/* Secciones repetibles */
.st-seccion-repetible{margin:18px 0;padding:14px;border:1px dashed #c7d0e0;border-radius:12px;background:rgba(238,242,249,.45);}
.st-seccion-bloques{display:block;}
.st-bloque-repeticion{margin:10px 0;padding:12px 14px;border:1px solid #e1e7f1;border-radius:10px;background:#fff;}
.st-bloque-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;}
.st-bloque-num{font-weight:700;color:#3c5078;}
.st-bloque-del{cursor:pointer;color:#c62828;font-size:15px;}
.st-bloque-del:hover{color:#e0533d;}

/* Editor de campos (builder): jerarquía sección → hijos */
.st-fila-seccion td{background:rgba(238,242,249,.6);}
.st-fila-hija td:first-child{text-align:center;color:#8a93a6;}
.st-fila-hija td:nth-child(2){padding-left:26px;}

/* Línea de estados (detalle) */
.st-timeline{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 20px;}
.st-step{flex:1 1 0;min-width:120px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;position:relative;}
.st-step-dot{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#e3e8f2;color:#8a93a6;font-weight:700;font-size:13px;}
.st-step-label{font-size:12px;color:#8a93a6;line-height:1.3;}
.st-step-done .st-step-dot{background:#cfe8d4;color:#2e7d32;}
.st-step-done .st-step-label{color:#2e7d32;}
.st-step-active .st-step-dot{background:#ff9a47;color:#fff;}
.st-step-active .st-step-label{color:#e65100;font-weight:600;}

/* Switch "Campo obligatorio" en fila (editor de campos) */
.st-switch-row{display:flex;align-items:center;gap:12px;margin:10px 0;}
.st-switch-row .checkbox-label{margin:0;flex:0 0 auto;}
.st-switch-text{color:#555;font-size:13px;}

/* Lista de campos arrastrable (drag & drop) */
.st-campo-item{margin:6px 0;}
.st-campo-item .wrapper_table{margin:0;}
.st-hijos-lista{margin:2px 0 8px 28px;border-left:2px dashed #d7deea;padding-left:8px;}
.st-campo-hijo{margin:4px 0;}
.handle-orden,.handle-orden-hijo{cursor:move;}
.ui-sortable-helper{box-shadow:0 6px 18px rgba(60,80,120,.18);}
.ui-sortable-placeholder{visibility:visible !important;background:#eef2f9;border:1px dashed #c7d0e0;border-radius:8px;}

/* Radio/checkbox/multiselect del informe: usan el componente .sivo-check y NO van dentro
   de .input-form-light, porque `.input-form-light span` (label flotante absoluto) pisaría
   .sivo-check-mark y .sivo-check-text. Contenedor propio con el mismo caption visual. */
.st-campo-grupo{width:100%;box-sizing:border-box;margin:5px 0 10px;}
.st-campo-titulo{display:block;margin:0 0 8px 14px;color:#757575;font-size:8pt;font-weight:600;letter-spacing:.25px;}
.st-campo-grupo .st-campo-help{margin-left:14px;}
/* .sivo-check es un <label> y dentro de .form-group hereda float:left/width:28%/text-align:right
   (y display:block en el media query móvil), que colapsa la píldora. Se restituye el componente. */
.st-campo .sivo-check,.st-fotos-wrap .sivo-check{float:none;display:flex;width:100%;padding:11px 16px;font-weight:normal;text-align:left;font-size:12px;}
.sivo-check-mini,.st-campo .sivo-check-mini,.st-fotos-wrap .sivo-check-mini{width:auto;padding:5px 12px;gap:8px;margin-top:4px;}
.sivo-check-mini .sivo-check-mark{width:16px;height:16px;}
.sivo-check-mini .sivo-check-mark:after{left:4px;top:1px;width:5px;height:9px;}
.sivo-check-mini .sivo-check-text{font-size:11px;}
.st-foto-del.sivo-check .sivo-check-text{color:#c62828;}

/* Minibtn deshabilitado (motivo para no cotizar): button:disabled lo deja casi invisible
   (opacity .3 + icono #ddd). Mostrar el icono atenuado pero legible. */
.st-min-disabled button:disabled{opacity:1;background:transparent;color:#b6bcc9;}
.st-min-disabled button:disabled i{color:#b6bcc9;}

/* Reinicio de datos (herramienta interna SIVO) */
.num_filas_area{flex:0 0 auto;font-size:.85em;color:#888;}

/* ============================================================
   RECETA ÓPTICA — Matriz de prescripción (.tabla_rx)
   Tablas Lejos/Cerca/Intermedia con inputs compactos por celda:
   filas OD/OI × Esfera | Cilindro | Eje | Prisma | Base | DP | H.
   Usada en la ficha de atención (optics) y en el popup de
   registro de receta en venta.
   ============================================================ */
.tabla_rx{width:100%;border-collapse:separate;border-spacing:4px;table-layout:fixed;}
.tabla_rx th{font-size:12px;font-weight:600;color:#6b7280;text-align:center;padding:2px 0;text-transform:uppercase;letter-spacing:.02em;}
.tabla_rx th:first-child,.tabla_rx td.rx_ojo{width:2.6em;}
.tabla_rx td{padding:0;text-align:center;vertical-align:middle;}
.tabla_rx td.rx_ojo{font-weight:700;color:#374151;background:#f3f4f6;border-radius:8px;font-size:13px;}
.tabla_rx input,.tabla_rx select{width:100%;box-sizing:border-box;padding:8px 6px;border:1px solid #d7deea;border-radius:8px;font-size:13px;text-align:center;background:#fff;color:#374151;}
.tabla_rx input:focus,.tabla_rx select:focus{outline:none;border-color:#8fa8d9;box-shadow:0 0 0 2px rgba(143,168,217,.25);}
.tabla_rx input::placeholder{color:#c3c9d6;font-size:12px;}
.tabla_rx select{appearance:auto;padding:8px 2px;}
fieldset:disabled .tabla_rx input,fieldset:disabled .tabla_rx select{background:#f5f6f8;color:#9aa1ad;}
.rx_toggle_intermedia{margin:6px 0 10px 0;}
.rx_toggle_intermedia .checkbox-label{font-size:13px;}
@media (max-width: 760px){
	.tabla_rx{border-spacing:2px;}
	.tabla_rx th{font-size:10px;}
	.tabla_rx input,.tabla_rx select{padding:6px 2px;font-size:12px;}
}

/* ORDEN DE COMPRA — POPUP INVENTARIO ASOCIADO AL PROVEEDOR */
.oc-asociado-row{cursor:pointer;transition:background .15s ease;}
.oc-asociado-row:hover{background:#f3f6fc;}
.oc-asociado-row .oc-asociado-add{background:none;border:0;cursor:pointer;color:#3b82f6;font-size:1.1em;}
.oc-asociado-row.oc-asociado-ya{opacity:.55;}
.oc-asociado-row.oc-asociado-ya .oc-asociado-add{color:#22c55e;}


/* SIVO OPTICS - ESTADO DE GESTION DEL CRISTAL EN EL PEDIDO */
.info_extra{background:#fbfbff;padding:10px 20px;border-radius:8px;border:1px solid #eee;}

/* PRODUCTOS VARIABLES — CHIPS DE ATRIBUTOS CON AUTOCOMPLETAR */
.tax-chips-wrap{position:relative;}
.taxonomias > div{border-left:5px solid var(--acento);}
.taxonomias h2 .tax-del{cursor:pointer;color:#d9534f;font-size:13px;margin-left:6px;opacity:.7;}
.taxonomias h2 .tax-del:hover{opacity:1;}
.seccion:has(.tax-sugerencias.visible){z-index:60;}
.tax-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px;}
.tax-chips:empty{margin-bottom:0;}
.tax-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:700;background:rgba(58,111,216,.14);color:#3a6fd8;}
.tax-chip .tax-chip-remove{cursor:pointer;opacity:.7;}
.tax-chip .tax-chip-remove:hover{opacity:1;}
.tax-chip-entrada{position:relative;max-width:420px;}
.tax-sugerencias{display:none;position:absolute;top:100%;left:0;right:0;z-index:50;max-height:220px;overflow-y:auto;background:#fff;border:1px solid rgba(90,110,150,.25);border-radius:8px;box-shadow:0 6px 18px rgba(0,0,0,.12);}
.tax-sugerencias.visible{display:block;}
.tax-sugerencia-item,.tax-sugerencia-crear{padding:8px 12px;font-size:12.5px;cursor:pointer;}
.tax-sugerencia-item:hover{background:rgba(58,111,216,.10);}
.tax-sugerencia-crear{color:var(--verde);font-weight:700;border-top:1px dashed rgba(90,110,150,.25);}
.tax-sugerencia-crear:hover{background:rgba(31,170,107,.10);}
.box-nueva-taxonomia{display:none;margin-top:8px;gap:8px;align-items:center;}
.box-nueva-taxonomia.visible{display:flex;animation:fadeInDown .4s;}

/* ============================================================
   CARGA DE IMÁGENES (productos/carga-imagenes)
   Página mobile-first: grilla de productos sin foto, captura de
   foto (reusa .foto_capture_box) y, opcional en Enterprise,
   mejora con NOVA IA con comparador antes/después.
   ============================================================ */
.cimg-hidden{display:none !important;}
.cimg-nota{font-size:12.5px;color:#7d8a96;margin:6px 0 12px;}
/* ANIMACIONES PROPIAS: fa-spin/fa-beat de FA6 quedan estáticos con prefers-reduced-motion */
@keyframes cimg-girar{100%{transform:rotate(360deg);}}
@keyframes cimg-latir{0%,100%{transform:scale(1);}50%{transform:scale(1.3);}}
.cimg-procesando{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:340px;color:#7d8a96;font-size:14.5px;text-align:center;}
.cimg-procesando i{font-size:48px;color:var(--acento);animation:cimg-girar 1.2s linear infinite;}
.cimg-procesando small{font-size:12px;color:#aab4bf;}
.cimg-producto-card{display:flex;align-items:center;gap:12px;margin-top:12px;padding:12px;border:1px solid #d7deea;border-radius:12px;background:#f7faff;}
.cimg-producto-card img{width:72px;height:72px;object-fit:contain;border-radius:8px;background:#fff;border:1px solid #e4e8ee;flex-shrink:0;}
.cimg-producto-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0;}
.cimg-producto-info span{font-weight:700;font-size:14px;color:#374151;}
.cimg-producto-info small{font-size:11.5px;color:#7d8a96;}
.cimg-slider{position:relative;max-width:100%;margin:0 auto 6px;aspect-ratio:16/7;border:1px solid #e4e8ee;border-radius:12px;overflow:hidden;background:#fff;cursor:ew-resize;touch-action:none;user-select:none;-webkit-user-select:none;}
.cimg-slider img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#fff;pointer-events:none;-webkit-user-drag:none;}
.cimg-slider #cimgImgDespues{clip-path:inset(0 0 0 50%);}
.cimg-slider-linea{position:absolute;top:0;bottom:0;left:50%;width:3px;margin-left:-1.5px;background:var(--acento);pointer-events:none;z-index:2;}
.cimg-slider-boton{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:38px;height:38px;border-radius:50%;background:var(--acento);color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;box-shadow:0 2px 8px rgba(0,0,0,.25);}
.cimg-slider-tag{position:absolute;top:10px;font-size:11px;font-weight:700;letter-spacing:.05em;padding:3px 10px;border-radius:20px;z-index:1;pointer-events:none;}
.cimg-slider-tag-antes{left:10px;background:rgba(55,65,81,.75);color:#fff;}
.cimg-slider-tag-despues{right:10px;background:#2e7d32;color:#fff;}
.cimg-actions{display:flex;flex-direction:column;gap:8px;}
.cimg-badge-ia{position:absolute;z-index:2;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:100%;background:var(--acento);color:#fff;font-size:17px;border:2px solid #ffffffb3;box-shadow:0 2px 8px rgba(0,0,0,.25);cursor:pointer;padding:0;transition:transform .15s ease;}
.cimg-badge-ia:hover{transform:scale(1.08);color:#fff;}
.cimg-badge-ia:disabled{opacity:.65;cursor:wait;}
.cimg-badge-ia i{animation:cimg-latir 1.5s ease-in-out infinite;}
.cimg-badge-ia i.fa-spinner{animation:cimg-girar 1.2s linear infinite;}
.foto_item_clasico a.cimg-badge-ia{top:8px;right:8px;}
.foto_item_clasico div.label_oferta ~ a.cimg-badge-ia{top:78px;}
.cimg-badge-ia-lock{background:#aab4bf;}
.cimg-badge-ia-lock i{animation:none;}
.cimg-editor-wrap{position:relative;}
.cimg-editor-wrap .cimg-badge-ia{right:14px;bottom:14px;}
/* GLOBO SIN IA (subir foto): el ícono de cámara no late */
.cimg-badge-ia i.fa-camera-retro{animation:none;}
/* GRILLA DE PRODUCTOS SIN FOTO (reusa #list_products del panel) */
#list_products .item-list_products.cimg-card{cursor:pointer;border:1px dashed #cbd5e1;text-align:center;overflow:hidden;}
#list_products .item-list_products.cimg-card:hover{border-color:var(--acento);opacity:1;}
.cimg-card .foto-item img{width:100%;aspect-ratio:1/1;object-fit:contain;background:#fff;border-radius:15px;}
.cimg-card .info-item{padding:4px 6px 6px;}
.cimg-card .info-item small{font-size:7.5pt;color:#8f8f8f;}
.cimg-card .info-item .title-item{font-size:9pt;line-height:1.25;margin:2px 0 0;color:#374151;}
.cimg-card-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:26px;color:#fff;background:rgba(55,65,81,.45);border-radius:20px;opacity:0;transition:opacity .2s ease;pointer-events:none;}
.cimg-card:hover .cimg-card-overlay{opacity:1;}
/* FILA DEL SWITCH "MEJORAR CON NOVA IA" */
.cimg-ia-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0;padding:12px 14px;border:1px solid #e4e8ee;border-radius:10px;background:#f7faff;}
.cimg-ia-label{font-size:13.5px;font-weight:700;color:#374151;flex:1;min-width:150px;}
.cimg-ia-label small{font-weight:400;color:#7d8a96;}
.cimg-ia-label i{color:var(--acento);margin-right:4px;}
.cimg-cupo{font-size:11.5px;font-weight:700;color:#2e7d32;background:#e8f5e9;padding:4px 12px;border-radius:20px;white-space:nowrap;}
.cimg-cupo-alto{color:#b26a00;background:#fff8e1;}
.cimg-teaser-ia{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0;}
@media (max-width:480px){
	.cimg-ia-row{flex-direction:column;align-items:flex-start;}
	.cimg-ia-label{min-width:100%;}
}

/* =========================================================================
   BOXES INFORMATIVOS v2 · Rediseño editorial con barra lateral
   Card blanca, barra vertical con el gradiente del color del indicador,
   número protagonista e icono en círculo outline tenue.
   Cubre las dos familias de markup del sistema, sin cambios de PHP:
     · div.box           → KPIs de #content_box_info-home / #content_box_info
                           y los sueltos (util-kpis, seccion_inline_block)
     · .box_info_sidebar → KPIs verticales del sidebar y de secciones
   Va al final del archivo para ganar la cascada a las media queries previas.
   ========================================================================= */
div.box.color1, .box_info_sidebar.color1{--c:#de6900;--c2:#ab155e;--c-rgb:222,105,0;}
div.box.color2, .box_info_sidebar.color2{--c:#f39a01;--c2:#ffb100;--c-rgb:243,154,1;}
div.box.color3, .box_info_sidebar.color3{--c:#147b98;--c2:#0e64cd;--c-rgb:20,123,152;}
div.box.color4, .box_info_sidebar.color4{--c:#9d230f;--c2:#4a2962;--c-rgb:157,35,15;}
div.box.color5, .box_info_sidebar.color5{--c:#618D0D;--c2:#016a82;--c-rgb:97,141,13;}

div.box, .box_info_sidebar{--c:#ff8a00;--c2:#de6900;--c-rgb:255,138,0;position:relative;min-height:115px;padding:0;border-radius:18px;background:#fff;border:1px solid #ececec;box-shadow:0 4px 14px rgba(60,80,120,.05);backdrop-filter:none;-webkit-backdrop-filter:none;overflow:hidden;transition:all .35s ease;color:var(--texto);display:flex;flex-direction:column;justify-content:center;width:auto;height:auto;cursor:default;}
div.box.padding{padding:0 !important;}
.box_info_sidebar{margin:0 auto 10px auto;}
.box_info_sidebar:last-child{margin-bottom:0;}
div.box > br, .box_info_sidebar > br{display:none;}
div.box::before, .box_info_sidebar::before{content:"";position:absolute;inset:auto;left:0;top:50%;transform:translateY(-50%);width:6px;height:58%;padding:0;border-radius:0 6px 6px 0;background:linear-gradient(180deg,var(--c),var(--c2));-webkit-mask:none;mask:none;opacity:1;transition:height .35s ease;}
div.box:hover, .box_info_sidebar:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(60,80,120,.10);}
div.box:hover::before, .box_info_sidebar:hover::before{height:80%;}

div.box > .ico_box, .box_info_sidebar > .ico_box{width:46px;height:46px;left:auto;right:16px;top:50%;transform:translateY(-50%);padding:0;opacity:1;z-index:0;border:1.5px solid rgba(var(--c-rgb),.22);border-radius:50%;display:grid;place-items:center;color:rgba(var(--c-rgb),.5);font-size:15px;}
div.box > .ico_box i, .box_info_sidebar > .ico_box i{font-size:15px;}

div.box > .dato_box{flex:1;width:100%;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;padding:16px 24px 10px;text-align:left;position:relative;z-index:1;}
.box_info_sidebar > .dato_box{display:block;flex:0 1 auto;width:100%;box-sizing:border-box;padding:16px 24px;text-align:left;position:relative;z-index:1;font-size:11px;color:var(--texto-soft);font-weight:500;line-height:1.4;}
div.box > .ico_box ~ .dato_box, .box_info_sidebar > .ico_box ~ .dato_box{padding-right:74px;}
div.box > .dato_box:hover, .box_info_sidebar > .dato_box:hover{transform:none;}
div.box > .dato_box p, .box_info_sidebar > .dato_box p, #sidebar .box_info_sidebar > .dato_box p{text-align:left;margin:5px 0 0 0;font-size:11px;color:var(--texto-soft);font-weight:500;line-height:1.4;}
div.box span.num_detalle, .box_info_sidebar span.num_detalle{font-family:'Roboto';font-size:13pt;font-weight:600;color:#3d3d3d;line-height:1.05;letter-spacing:0;overflow-wrap:anywhere;}

div.box > .dato_box small, .box_info_sidebar > .dato_box small{color:var(--texto-soft);font-size:11px;font-weight:500;padding:0;text-align:left;}
div.box > small, .box_info_sidebar > small{display:block;text-align:left;padding:0 74px 12px 24px;color:var(--texto-soft);font-size:9px;position:relative;z-index:1;}

div.box span.mas_detalle, .box_info_sidebar span.mas_detalle{width:100%;box-sizing:border-box;padding:0 24px 13px;font-size:11px;font-weight:600;color:var(--c);background:none;border:none;border-top:none;backdrop-filter:none;text-align:left;position:relative;z-index:1;}
div.box span.mas_detalle:hover, .box_info_sidebar span.mas_detalle:hover{background:none;color:var(--c2);}

@media screen and (max-width:1440px){
	div.box span.num_detalle, .box_info_sidebar span.num_detalle{font-size:18pt;}
}
@media screen and (max-width:1366px){
	div.box span.num_detalle, .box_info_sidebar span.num_detalle{font-size:15pt;}
	div.box > .ico_box, .box_info_sidebar > .ico_box{width:40px;height:40px;}
	div.box > .ico_box i, .box_info_sidebar > .ico_box i{font-size:13px;}
	div.box > .dato_box{padding:14px 20px 8px;}
	.box_info_sidebar > .dato_box{padding:14px 20px;}
	div.box > .ico_box ~ .dato_box, .box_info_sidebar > .ico_box ~ .dato_box{padding-right:62px;}
	div.box > small, .box_info_sidebar > small{padding:0 62px 10px 20px;}
	div.box span.mas_detalle, .box_info_sidebar span.mas_detalle{padding:0 20px 11px;}
}
@media screen and (max-width:700px){
	div.box span.num_detalle, .box_info_sidebar span.num_detalle{font-size:13pt;}
	div.box > .ico_box, .box_info_sidebar > .ico_box{width:34px;height:34px;right:12px;}
	div.box > .ico_box i, .box_info_sidebar > .ico_box i{font-size:12px;}
	div.box > .dato_box{padding:12px 18px 8px;}
	.box_info_sidebar > .dato_box{padding:12px 18px;font-size:10px;}
	div.box > .ico_box ~ .dato_box, .box_info_sidebar > .ico_box ~ .dato_box{padding-right:52px;}
	div.box > .dato_box p, .box_info_sidebar > .dato_box p{font-size:10px;}
	div.box > small, .box_info_sidebar > small{padding:0 52px 9px 18px;}
	div.box span.mas_detalle, .box_info_sidebar span.mas_detalle{padding:0 18px 10px;}
}

/* ================================================================
   ESCÁNER PATENTE NOVA IA (box_escanearPatente)
   ================================================================ */
#boxEscanearPatente video{width:100%;max-height:320px;border-radius:12px;background:#000;object-fit:cover;}
#boxEscanearPatente #btnCapturarPatente{width:100%;margin-top:10px;}
#boxEscanearPatente #fotoPatenteFallback{width:100%;margin-top:10px;}
#resultadoEscaneoPatente{margin-top:12px;}
#resultadoEscaneoPatente .btn{display:block;text-align:center;margin-top:8px;box-sizing:border-box;width:100%;}

/* ================================================================
   MERCADOPÚBLICO IA — Score de afinidad y popup de análisis
   El popup usa el componente estándar (.popup_wrapper/.popup_box) y
   la burbuja de NOVA vive en chatbot.css: aquí solo lo propio.
   ================================================================ */
.mp-score{width:48px;height:48px;display:block;margin:0 auto;border-radius:50%;line-height:44px;text-align:center;font-size:12.5pt;font-weight:700;border:2px solid transparent;box-sizing:border-box;}
.mp-score-vacio{background:#f3f4f6;color:#9ca3af;border-color:#e5e7eb;font-size:11pt;}
.mp-score-bajo{background:#fdecec;color:#d64545;border-color:#f4b8b8;}
.mp-score-medio{background:#fef1e2;color:#d98324;border-color:#f6cd97;}
.mp-score-bueno{background:#eef7dd;color:#7a9b2e;border-color:#cfe39a;}
.mp-score-alto{background:#e0f3e6;color:#2e9c58;border-color:#b3e0c3;}
.mp-nova-img{max-width:200px;width:100%;border-radius:15px;}

/* Barra de afinidad: el relleno toma su color de los modificadores .mp-score-* */
.mp-afinidad-titulo{font-size:9pt;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:#8a8a8a;margin-bottom:6px;}
.mp-afinidad{width:100%;height:34px;border-radius:20px;background:#f1f3f7;border:1px solid #e6e8ee;padding:3px;box-sizing:border-box;overflow:hidden;position:relative;}
.mp-afinidad-fill{height:26px;border-radius:20px;width:0;transition:width 1.2s ease;background:#c3c3c3;}
.mp-afinidad-fill.mp-score-bajo{background:#d64545;}
.mp-afinidad-fill.mp-score-medio{background:#d98324;}
.mp-afinidad-fill.mp-score-bueno{background:#7a9b2e;}
.mp-afinidad-fill.mp-score-alto{background:#2e9c58;}
.mp-afinidad-label{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:11pt;font-weight:700;color:#3d3d3d;text-shadow:0 1px 2px rgba(255,255,255,.6);}
/* El label es hermano del fill (va después): se colorea según el tramo para que no se pierda sobre el relleno */
.mp-afinidad-fill.mp-score-bajo ~ .mp-afinidad-label,
.mp-afinidad-fill.mp-score-medio ~ .mp-afinidad-label{color:#4c4e53;}
.mp-afinidad-fill.mp-score-bueno ~ .mp-afinidad-label,
.mp-afinidad-fill.mp-score-alto ~ .mp-afinidad-label{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.35);}
.mp-ul{margin:6px 0 6px 18px;list-style:disc;}

/* Badge de estado de la cotización (Sin cotizar / En borrador / Cotizado / Aprobado / Anulada) */
.mp-estado{display:inline-block;padding:2px 10px;border-radius:12px;font-size:8.5pt;font-weight:700;line-height:1.6;white-space:nowrap;border:1px solid transparent;}
.mp-estado-gris{background:#eef0f5;color:#6b7280;border-color:#dfe3ea;}
.mp-estado-amarillo{background:#fcedc3;color:#9c7d11;border-color:#e6cf8a;}
.mp-estado-azul{background:#e0edfb;color:#1d5c9e;border-color:#bcd8f5;}
.mp-estado-verde{background:#dcf0c6;color:#5c8a1f;border-color:#c1da92;}
.mp-estado-rojo{background:#fee2e2;color:#c62828;border-color:#f5b5b5;}

/* Documentos adjuntos de la licitación (MercadoPúblico) — tarjetas de descarga */
.mp-docs-grid{display:flex;flex-direction:column;gap:10px;margin-top:8px;}
.mp-doc{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid #e6e8ee;border-radius:10px;background:#fff;transition:box-shadow .18s ease,border-color .18s ease;}
.mp-doc:hover{box-shadow:0 3px 12px rgba(26,26,46,.08);border-color:#d3d8e4;}
.mp-doc-ico{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;background:#f1f3f7;color:#6b7280;}
.mp-doc-adm .mp-doc-ico{background:#e6effd;color:#1d4ed8;}
.mp-doc-tec .mp-doc-ico{background:#fef1e2;color:#d98324;}
.mp-doc-eco .mp-doc-ico{background:#e0f3e6;color:#2e9c58;}
.mp-doc-info{flex:1;min-width:0;}
.mp-doc-titulo{font-weight:600;color:#1a1a2e;font-size:13px;line-height:1.3;}
.mp-doc-sub{font-size:11px;color:#8a8a8a;margin-top:1px;}
.mp-doc-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 15px;border-radius:8px;background:#1a1a2e;color:#fff;font-size:12px;font-weight:600;text-decoration:none;white-space:nowrap;flex-shrink:0;transition:background .18s ease;}
.mp-doc-btn:hover{background:#33334d;color:#fff;}
.mp-doc-btn i{font-size:11px;}

/* ============================================================
   VINCULACIÓN MASIVA (variaciones / cristales) — selector de productos
   ============================================================ */
.vinc-modo-opcion{display:flex;align-items:center;gap:10px;cursor:pointer;padding:7px 4px;font-size:13px;}
.vinc-modo-opcion input{cursor:pointer;margin:0;}
.vinc-resultados{max-height:240px;overflow-y:auto;margin-bottom:6px;}
.vinc-producto-item{display:flex;align-items:center;gap:10px;width:100%;padding:7px 10px;margin:4px 0;border-radius:12px;cursor:pointer;background:#fdf1d6;transition:background .15s ease;}
.vinc-producto-item:hover{background:#f7e3b8;}
.vinc-producto-thumb{width:34px;height:34px;min-width:34px;border-radius:50%;object-fit:cover;background:#fff;border:1px solid rgba(90,110,150,.2);}
.vinc-producto-nombre{flex:1;font-size:12.5px;line-height:1.3;text-align: left}
.vinc-producto-item .vinc-quitar{cursor:pointer;opacity:.7;margin-left:auto;}
.vinc-producto-item .vinc-quitar:hover{opacity:1;}
/* Componente de taxonomías aislado del popup (espejo de las reglas de .taxonomias) */
.taxonomiasVinc > div{border-left:5px solid var(--acento);}
.taxonomiasVinc h2 .tax-del{cursor:pointer;color:#d9534f;font-size:13px;margin-left:6px;opacity:.7;}
.taxonomiasVinc h2 .tax-del:hover{opacity:1;}

/* ================================================================
   OJITO VER CONTRASEÑA (.btn_ver_pass) — componente central
   Antes duplicado inline en agregar/modificar usuarios. Requiere que
   el input lleve .has_ojito y viva dentro de .input-form-light
   (que ya es position:relative).
   ================================================================ */
.input-form-light .has_ojito{padding-right:42px}
.input-form-light .btn_ver_pass{position:absolute;top:50%;right:8px;left:auto;transform:translateY(-50%);background:transparent;border:0;margin:0;padding:6px 8px;cursor:pointer;color:#9aa0b5;line-height:1;font-size:11pt}
.input-form-light .btn_ver_pass:hover{color:#525252}

/* ================================================================
   HOVER BOXES FLOTANTES (.mini-resumen / .tooltiptext)
   .wrapper_table tiene overflow-x:auto + backdrop-filter, lo que
   recorta cualquier hijo absoluto que sobresalga. El JS mueve la
   caja a <body> y la posiciona con estas reglas.
   ================================================================ */
.sivo-floating{position:fixed !important;top:0;left:0;right:auto;bottom:auto;margin:0 !important;z-index:100000;pointer-events:none}
.mini-resumen.sivo-floating{display:block}
.tooltiptext.sivo-floating{visibility:visible;opacity:1}
.tooltiptext.sivo-floating.is-below::after{top:auto;bottom:100%;border-color:transparent transparent #555 transparent}

/* ================================================================
   VALIDACIÓN DE FORMULARIOS EN POPUP (.input-error)
   Resalta el campo que impide guardar. La validación corre en el
   navegador ANTES del envío, así el formulario no se re-renderiza
   y el usuario no pierde lo que escribió.
   ================================================================ */
.input-error,
.input-form-light .input-error{border:1px solid #f44336 !important;background:#fdecea !important;box-shadow:0 0 0 3px rgba(244,67,54,.12)}
.dropzone.input-error{border:2px dashed #f44336 !important;background:#fdecea !important}
.lista_validacion_receta{margin:8px 0 0 0;padding-left:20px}
.lista_validacion_receta li{list-style:disc;margin:2px 0}

/* ================================================================
   ÍTEMS CON MARGEN NEGATIVO (.itemlist-error)
   Resalta la fila del producto cuyo precio quedó bajo el costo, para
   encontrarla al saltar desde el resumen que aparece junto al botón.
   ================================================================ */
.itemlist-error{border:1px solid #f44336;background:#fdecea;border-radius:5px}
.margen-error-lista{margin:8px 0 10px 0;padding-left:20px}
.margen-error-lista li{list-style:disc;margin:2px 0}
.margen-error-lista a{text-decoration:underline;cursor:pointer}


/* ================================================================
   PRESCRIPCIÓN ÓPTICA EN MODO LECTURA (.rx_lectura)
   Conserva la grilla del popup de registro pero sin apariencia de
   campo editable. Se usa en pedidos, clientes y atenciones.
   ================================================================ */
.rx_lectura td.rx_valor{background:#fff;border:1px solid #eef1f6;border-radius:8px;padding:8px 6px;font-size:13px;color:#374151;text-align:center}
.rx_lectura .rx_vacio{color:#b6bdc9}
.autor_receta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:8px 0}
.autor_receta small{color:#6b7280}
.badge-externo{background:#ede7f6;color:#4527a0}
.badge-pendiente{background:#fff3cd;color:#856404;font-weight:600}
.badge-contacto{background:#e0f2fe;color:#075985;font-weight:600}
.receta-pendiente{border-color:#f0ad4e;background:#fffbf3}
.receta-pendiente.receta-item-activa{border-color:#e07d10;background:#fff5e1;box-shadow:0 0 0 1px #e07d10}
.receta-foto-resumen{display:flex;align-items:center;gap:6px;color:#856404;font-size:0.9em}
.receta-foto-resumen i{font-size:1.1em}

/* Evolución de Atención: tabla comparativa ancha (scroll dentro de .wrapper_table) */
.tabla_evolucion th,
.tabla_evolucion td{white-space:nowrap}
#chartEvolucionAtencion{height:320px;width:100%}
.evo-nota-grafico{color:#777;font-size:0.9em}

/* Aviso de receta pendiente de traspaso (popup, detalle de pedido y perfil de cliente) */
.aviso-receta-pendiente{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;background:#fff8e1;border:1px solid #f0ad4e;border-radius:8px;margin:10px 0}
.aviso-receta-pendiente .icono-warn{font-size:1.6em;color:#e07d10;flex-shrink:0;padding-top:2px}
.aviso-receta-pendiente .contenido-warn{flex:1}
.aviso-receta-pendiente .contenido-warn h4{color:#856404;margin:0 0 4px 0}
.aviso-receta-pendiente .contenido-warn strong{color:#856404}
.aviso-receta-pendiente .contenido-warn p{color:#7a6520;margin:0 0 10px 0}
.aviso-receta-pendiente .botones-receta-pendiente{display:flex;gap:8px;flex-wrap:wrap}
.thumb-receta-pendiente{flex-shrink:0;max-width:140px}
.thumb-receta-pendiente img{max-width:100%;max-height:140px;border:1px solid #ddd;border-radius:6px;cursor:pointer}
.thumb-receta-pendiente .pdf-badge{display:flex;align-items:center;justify-content:center;width:100px;height:100px;background:#f5f5f5;border:1px solid #ddd;border-radius:6px;color:#c00;font-size:2.6em;text-decoration:none}
.boton-ver-foto-original{margin-top:6px}

/* SIVO OPTICS — publicación de cristales en la tienda online */
.pub-buscador{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:6px}
.pub-buscador .form-group{flex:1;min-width:260px;margin:0}
.pub-resumen-lista{color:#6b7280;font-size:12.5px;white-space:nowrap;padding-bottom:10px}

#pub_lista_cristales{display:flex;flex-direction:column;gap:10px}
.pub-cristal-bloque{border:1px solid #e2e4ec;border-radius:12px;padding:0;overflow:hidden;background:#fff}
.pub-cristal-bloque[hidden]{display:none}
.pub-cristal-bloque.pub-publicado{border-color:#c8dfa2}
.pub-cristal-bloque.pub-incompleto{border-color:#e0b90a;background:#fffdf3}

.pub-cristal-head{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;user-select:none}
.pub-cristal-head:hover{background:#f9fafc}
.pub-cristal-chevron{color:#9aa0b5;font-size:12px;flex-shrink:0;transition:transform .18s ease}
.pub-cristal-bloque.pub-abierto .pub-cristal-chevron{transform:rotate(90deg)}
.pub-cristal-nombre{flex:1;min-width:0;font-size:14px;font-weight:600;color:#1d1d1d;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pub-cristal-nombre i{margin-right:6px;color:#9aa0b5}
.pub-cristal-clase{flex-shrink:0;padding:2px 9px;border-radius:999px;background:#f4f5f9;color:#6b7280;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em}
.pub-contador{flex-shrink:0;color:#6b7280;font-size:12px;font-weight:500;white-space:nowrap}
.pub-cristal-bloque.pub-publicado .pub-contador{color:#78a720;font-weight:600}
.pub-cristal-switch{display:flex;align-items:center;gap:7px;flex-shrink:0;margin:0;cursor:pointer;font-size:12.5px;color:#525252;white-space:nowrap}

.pub-cristal-detalle{padding:0 16px 16px 16px;border-top:1px dashed #e2e4ec}
.pub-cristal-detalle[hidden]{display:none}
.pub-celda-handle{width:2.5em}
.pub-sin-alias{color:#9aa0b5;font-style:italic}

/* Estado en el listado de Cristales */
.pub-estado{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;white-space:nowrap}
.pub-estado-on{color:#78a720}
.pub-estado-off{color:#9aa0b5}

@media (max-width:760px){
	.pub-cristal-head{flex-wrap:wrap;gap:8px}
	.pub-cristal-nombre{flex-basis:100%;white-space:normal}
	.pub-resumen-lista{padding-bottom:0}
}

/* PANEL DE CARGO — GRÁFICOS Y COLUMNAS DEL LISTADO */
.cargo_charts_grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1em}
.cargo_chart_box{min-width:0}
.cargo_chart_box h3{margin-bottom:0.5em}
.col_fecha_entrega{width:10em}
.col_acciones_cargo{width:5em}

@media (max-width:760px){
	.cargo_charts_grid{grid-template-columns:1fr}
}

/* LECTOR DE CÓDIGOS EN TERRENO (SIVOScanner) */
.sivo_scanner_box{display:none;margin:0.8em 0;border-radius:8px;overflow:hidden;background:#000}
.sivo_scanner_video{width:100%;max-height:60vh;display:block;object-fit:cover}
.sivo_scanner_file{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.sivo_scanner_fallback{display:none;margin:0.8em 0}
.bulto_ficha{margin:0.8em 0}
.bulto_ficha ul{list-style:none;margin:0;padding:0}
.bulto_ficha li{padding:0.35em 0;border-bottom:1px dashed rgba(128,128,128,0.3)}
.bulto_ficha li:last-child{border-bottom:0}

/* CARGA DE BULTOS A LA RUTA — chips y control del lector continuo */
.chip_ajeno{background:#fff8e1;border:1px solid #ff9800;color:#e65100}
.oculto_inicial{display:none}
.oculto_inicial.visible{display:block}

/* =========================================================================
   SELECTOR DE CRISTALES · RESPONSIVE (cadena SIVO 1024 / 768 / 480)
   Reemplaza los tres @media (max-width:560px) que tenía el componente.
   Se ubica al final del archivo por convención y como defensa de cascada
   frente a las reglas globales de popup, que NO se tocan porque afectan
   a todos los popups del sistema.
   ========================================================================= */

/* Caja predecible SOLO dentro del popup a pantalla completa (no global) */
.content_success_popup.popup-fullscreen,
.content_success_popup.popup-fullscreen > *{box-sizing:border-box}
.content_success_popup.popup-fullscreen .tabla-cristales-container{max-width:100%}

/* ---------- TABLET LANDSCAPE ---------- */
@media screen and (max-width:1024px){
	.content_success_popup.popup-fullscreen{width:94%;max-height:92%;padding:20px 20px 0}
	.content_success_popup.popup-fullscreen .resumen-cristales{margin:10px -20px 0;padding:14px 20px}

	/* Cabecera: los selects bajan a una fila propia y se reparten el ancho */
	.content_success_popup .cr-head{gap:12px;margin-bottom:14px}
	.content_success_popup .cr-head .cr-head-controls{margin-left:0;width:100%;flex-wrap:wrap}
	.content_success_popup .cr-head .cr-head-controls .cr-head-select{flex:1 1 200px;min-width:0}
	.content_success_popup .cr-head .cr-head-controls .select-tipo-lente{min-width:0}
	.content_success_popup .cr-head .comparar-cristales-toggle{flex:0 0 42px}

	/* Carrusel: tarjeta algo más angosta, se mantienen las flechas */
	.boxCristales .cr-card{flex-basis:210px;width:210px}

	/* Extras: la columna de texto deja de ser un 60% rígido */
	.boxCristales .extras-cristales{gap:1rem;padding:12px 16px}
	.boxCristales .extras-cristales > div:nth-child(2){width:auto;flex:1 1 auto;min-width:0}
	.boxCristales .extras-cristales > div:nth-child(3){min-width:130px}

	/* Resumen: el uso del lente toma una fila completa y los totales quedan debajo */
	.resumen-cristales{gap:12px 16px;padding:12px 16px}
	.resumen-cristales .TotalCart{flex-wrap:wrap;gap:12px}
	.resumen-cristales .TotalCart > div.cr-uso-lente{flex:1 1 100%;width:100%;padding:0 0 12px;border-right:none;border-bottom:1px dashed rgba(150,160,180,.4)}
	.resumen-cristales .TotalCart > div.cr-row-dto{flex:1 1 260px;width:auto}
	.resumen-cristales .TotalCart > div:last-child{flex:1 1 180px}
	.guia_medidas_lentes{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ---------- TABLET PORTRAIT ---------- */
@media screen and (max-width:768px){
	.content_success_popup.popup-fullscreen{width:94%;max-height:94%;padding:16px 14px 0}
	.content_success_popup.popup-fullscreen .resumen-cristales{margin:10px -14px 0;padding:12px 14px}

	.content_success_popup .cr-head{gap:10px;margin-bottom:12px}
	.content_success_popup .cr-head .cr-head-iso{flex:0 0 42px;width:42px;height:42px;font-size:18px;border-radius:12px}
	.content_success_popup .cr-head .cr-head-titles{flex:1 1 auto;min-width:0}
	.content_success_popup .cr-head .cr-head-titles h1{font-size:19px}
	.content_success_popup .cr-head .cr-head-titles p{font-size:11.5px}
	.content_success_popup .cr-head .cr-head-controls .cr-head-select{flex:1 1 100%;padding:10px 12px}

	/* Carrusel táctil: se ocultan las flechas y se navega con el dedo.
	   El JS solo togglea .hidden según overflow, así que no hay conflicto. */
	.boxCristales .cr-carousel{gap:0}
	.boxCristales .cr-carousel-nav{display:none}
	.boxCristales .cr-card{flex-basis:195px;width:195px}

	/* Extras: ícono + texto en una fila; precio y switch a lo ancho debajo */
	.boxCristales .extras-cristales{flex-wrap:wrap;gap:12px;padding:12px 14px}
	.boxCristales .extras-cristales > div:nth-child(1){flex:0 0 48px;height:48px;border-radius:12px}
	.boxCristales .extras-cristales > div:nth-child(2){flex:1 1 calc(100% - 60px);width:auto;min-width:0}
	.boxCristales .extras-cristales > div:nth-child(3){flex:1 1 100%;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px}
	.boxCristales .extras-cristales > div:nth-child(3) h4{margin:0}

	/* Resumen apilado en una sola columna */
	.resumen-cristales .TotalCart{flex-direction:column;align-items:stretch;flex:1 1 100%;width:100%;gap:12px}
	.resumen-cristales .TotalCart > div{width:100%}
	.resumen-cristales .TotalCart > div.cr-uso-lente{width:100%;padding:0 0 12px;border-right:none;border-bottom:1px dashed rgba(150,160,180,.4)}
	.resumen-cristales .cr-uso-lente .sivo-check-list{flex-wrap:wrap}
	.resumen-cristales .TotalCart > div:last-child{flex-direction:row;align-items:baseline;justify-content:space-between;gap:10px;margin-left:0;padding:8px 0 0;border-left:none;border-top:1px dashed rgba(150,160,180,.4)}
	.resumen-cristales .btnBox{margin-left:0;width:100%}
	.resumen-cristales .btnBox .btn{flex:1 1 auto;justify-content:center;text-align:center}
	.guia_medidas_lentes{gap:0.5rem;padding:12px}
}

/* ---------- MÓVIL ---------- */
@media screen and (max-width:480px){
	.content_success_popup.popup-fullscreen{width:96%;max-height:94%;padding:14px 12px 0}

	/* La barra de resumen deja de ser fija: con uso del lente + 2 filas de
	   descuento + total + 2 botones se comía más de la mitad del alto útil y
	   tapaba las tarjetas. Pasa a fluir al final del contenido del popup. */
	.content_success_popup.popup-fullscreen .resumen-cristales{position:static;margin:12px -12px 0;padding:14px 12px;border-radius:0;box-shadow:none}

	.content_success_popup .cr-head{margin-bottom:10px}
	.content_success_popup .cr-head .cr-head-titles h1{font-size:17px}
	.content_success_popup .cr-head .cr-head-titles p{display:none}

	/* Tarjeta ancha dejando ver un trozo de la siguiente para invitar al swipe */
	.boxCristales .cr-cards-track{gap:12px;padding:6px 2px 12px}
	.boxCristales .cr-card{flex-basis:78vw;width:78vw;max-width:260px}
	.boxCristales .cr-card-inner{padding:16px 14px 12px}

	/* Usos del lente: píldoras en dos columnas en vez de una fila que desborda */
	.resumen-cristales .cr-uso-lente .sivo-check-list{flex-direction:row;flex-wrap:wrap;gap:6px}
	.resumen-cristales .cr-uso-lente .sivo-check{flex:1 1 calc(50% - 6px);width:auto;padding:8px 12px;gap:8px}
	.resumen-cristales .cr-uso-lente .sivo-check-mark{width:18px;height:18px}
	.resumen-cristales .cr-uso-lente .sivo-check-text{font-size:11px}

	/* Filas de descuento: etiqueta + monto arriba, control de descuento abajo */
	.resumen-cristales .TotalCart > div.cr-row-dto{gap:6px}
	.resumen-cristales .cr-desc{margin-left:0}
	.resumen-cristales .cr-desc-input{flex:1 1 auto;width:auto}
	.resumen-cristales .TotalCart > div:last-child .valorCart:last-child{font-size:22px}
	.resumen-cristales .btnBox .btn{flex:1 1 100%;padding:12px 14px}

	.guia_medidas_lentes{grid-template-columns:1fr}
}
