@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap";
:root{--repsa-red:#d73133;--repsa-red-hover:#b9282a;--repsa-red-soft:#fdecec;--repsa-red-ink:#7a1c1d;--repsa-lime:#a5c639;--repsa-lime-soft:#f1f6dd;--ink-900:#0f1216;--ink-800:#1b1f25;--ink-700:#2b323b;--ink-600:#4a525d;--ink-500:#6b7480;--ink-400:#95a0ac;--ink-300:#c3cad2;--ink-200:#e3e7eb;--ink-100:#f1f3f5;--ink-50:#f7f8f9;--paper:#fff;--ok:#1e8a5b;--ok-soft:#e1f3ea;--warn:#b45309;--warn-soft:#fdf1d8;--danger:var(--repsa-red);--danger-soft:var(--repsa-red-soft);--info:#1d6fb8;--info-soft:#e0eef9;--radius-sm:6px;--radius:10px;--radius-lg:14px;--radius-xl:20px;--density:1;--row-h:calc(44px * var(--density));--pad-card:calc(20px * var(--density));--gap-2:calc(8px * var(--density));--gap-3:calc(12px * var(--density));--gap-4:calc(16px * var(--density));--gap-6:calc(24px * var(--density));--sb-w:248px;--sb-w-collapsed:68px;--topbar-h:60px;--font-body:"Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--shadow-1:0 1px 2px #0f12160a, 0 1px 1px #0f121608;--shadow-2:0 4px 14px #0f12160f, 0 1px 3px #0f12160a;--shadow-pop:0 18px 40px -12px #0f12162e, 0 2px 6px #0f12160f}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-body);color:var(--ink-900);background:var(--ink-50);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11", "ss01";font-size:14px;line-height:1.45}button{font-family:inherit}a{color:inherit;text-decoration:none}.app-shell{grid-template-columns:var(--sb-w) 1fr;min-height:100vh;transition:grid-template-columns .25s;display:grid}.app-shell.collapsed{grid-template-columns:var(--sb-w-collapsed) 1fr}.sidebar{background:var(--ink-900);color:#fff;border-right:1px solid #ffffff0a;flex-direction:column;height:100vh;display:flex;position:sticky;top:0}.sb-brand{min-height:var(--topbar-h);border-bottom:1px solid #ffffff0f;align-items:center;gap:10px;padding:18px 18px 14px;display:flex}.sb-brand-mark{background:linear-gradient(135deg, var(--repsa-red) 0%, #ec4f50 100%);color:#fff;letter-spacing:-.5px;border-radius:8px;flex:none;place-items:center;width:32px;height:32px;font-size:14px;font-weight:800;display:grid;box-shadow:inset 0 -2px #0000002e}.sb-brand-text{flex-direction:column;line-height:1.1;display:flex;overflow:hidden}.sb-brand-text strong{letter-spacing:.2px;font-size:14px;font-weight:700}.sb-brand-text span{color:var(--ink-400);text-transform:uppercase;letter-spacing:1.2px;font-size:10.5px;font-weight:600}.collapsed .sb-brand-text{display:none}.sb-section{text-transform:uppercase;letter-spacing:1.3px;color:var(--ink-400);padding:14px 12px 6px;font-size:10.5px;font-weight:700}.collapsed .sb-section{color:#0000;border-top:1px solid #ffffff0f;height:18px;margin:6px 14px 0;padding:10px 0 0}.sb-nav{flex:1;padding:4px 10px;overflow-y:auto}.sb-nav::-webkit-scrollbar{width:0}.sb-item{color:#d6dadf;cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:12px;margin-bottom:2px;padding:9px 12px;font-size:13.5px;font-weight:500;transition:background .15s,color .15s;display:flex;position:relative;overflow:hidden}.sb-item:hover{color:#fff;background:#ffffff0d}.sb-item.active{color:#fff;background:#d7313329}.sb-item.active:before{content:"";background:var(--repsa-red);border-radius:0 3px 3px 0;width:3px;position:absolute;top:8px;bottom:8px;left:0}.sb-item .ic{opacity:.85;flex:none}.sb-item.active .ic{opacity:1}.collapsed .sb-item{justify-content:center;padding:9px}.collapsed .sb-item span:not(.badge){display:none}.sb-item .badge{color:var(--ink-300);background:#ffffff14;border-radius:99px;margin-left:auto;padding:2px 7px;font-size:10.5px;font-weight:600}.sb-item.active .badge{color:#fff;background:#ffffff24}.sb-bottom{border-top:1px solid #ffffff0f;align-items:center;gap:10px;padding:12px;display:flex}.sb-avatar{color:#fff;background:linear-gradient(135deg,#4a525d,#2b323b);border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-size:12px;font-weight:600;display:grid}.sb-user{flex-direction:column;flex:1;line-height:1.2;display:flex;overflow:hidden}.sb-user strong{color:#fff;font-size:13px;font-weight:600}.sb-user span{color:var(--ink-400);font-size:11px}.collapsed .sb-user,.collapsed .sb-bottom-action{display:none}.sb-bottom-action{color:var(--ink-300);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px}.sb-bottom-action:hover{color:#fff;background:#ffffff14}.main{flex-direction:column;min-width:0;display:flex}.topbar{height:var(--topbar-h);background:var(--paper);border-bottom:1px solid var(--ink-200);z-index:10;align-items:center;gap:16px;padding:0 24px;display:flex;position:sticky;top:0}.top-toggle{width:32px;height:32px;color:var(--ink-600);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.top-toggle:hover{background:var(--ink-100);color:var(--ink-900)}.crumbs{color:var(--ink-500);white-space:nowrap;flex-shrink:0;align-items:center;gap:6px;min-width:0;font-size:13px;font-weight:500;display:flex}.crumbs>*{flex-shrink:0}.crumbs strong{color:var(--ink-900);font-weight:600}.crumbs .sep{color:var(--ink-300)}.top-search{flex:1;min-width:0;max-width:420px;position:relative}.top-search input{background:var(--ink-50);border:1px solid var(--ink-200);width:100%;height:36px;color:var(--ink-900);border-radius:8px;outline:none;padding:0 12px 0 38px;font-family:inherit;font-size:13px;transition:border-color .15s,background .15s}.top-search input::placeholder{color:var(--ink-400)}.top-search input:focus{border-color:var(--ink-300);box-shadow:0 0 0 3px var(--ink-100);background:#fff}.top-search .ic{color:var(--ink-400);position:absolute;top:10px;left:12px}.top-search kbd{color:var(--ink-500);background:var(--paper);border:1px solid var(--ink-200);border-radius:4px;padding:2px 5px;font-family:inherit;font-size:10.5px;font-weight:600;position:absolute;top:8px;right:10px}.top-actions{align-items:center;gap:6px;margin-left:auto;display:flex}.icon-btn{vertical-align:middle;width:36px;height:36px;color:var(--ink-600);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;place-items:center;transition:background .15s;display:inline-grid;position:relative}.icon-btn:hover{background:var(--ink-100);color:var(--ink-900)}.icon-btn .dot{background:var(--repsa-red);border:2px solid var(--paper);border-radius:50%;width:7px;height:7px;position:absolute;top:7px;right:8px}.content{width:100%;max-width:1440px;margin:0 auto;padding:28px 32px 64px}.content.tight{max-width:1100px}.page-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:22px;display:flex}.page-head h1{letter-spacing:-.3px;color:var(--ink-900);margin:0 0 4px;font-size:24px;font-weight:700}.page-head p{color:var(--ink-500);margin:0;font-size:13.5px}.page-actions{flex-wrap:wrap;gap:8px;display:flex}.btn{background:var(--ink-100);height:36px;color:var(--ink-900);cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:8px;align-items:center;gap:7px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:600;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.btn:hover{background:var(--ink-200)}.btn--primary{background:var(--repsa-red);color:#fff}.btn--primary:hover{background:var(--repsa-red-hover)}.btn--ghost{color:var(--ink-700);border-color:var(--ink-200);background:0 0}.btn--ghost:hover{background:var(--ink-50);color:var(--ink-900)}.btn--danger{color:var(--repsa-red);border-color:var(--ink-200);background:0 0}.btn--danger:hover{background:var(--repsa-red-soft);border-color:var(--repsa-red)}.btn--sm{height:30px;padding:0 10px;font-size:12.5px}.btn--lg{height:42px;padding:0 18px;font-size:14px}.card{background:var(--paper);border:1px solid var(--ink-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-1)}.card-pad{padding:var(--pad-card)}.card-head{border-bottom:1px solid var(--ink-200);align-items:center;gap:12px;padding:16px 20px;display:flex}.card-head h3{color:var(--ink-900);margin:0;font-size:14px;font-weight:600}.card-head .spacer{flex:1}.badge{white-space:nowrap;border:1px solid #0000;border-radius:99px;align-items:center;gap:5px;height:22px;padding:0 8px;font-size:11.5px;font-weight:600;display:inline-flex}.badge--ok{background:var(--ok-soft);color:var(--ok)}.badge--warn{background:var(--warn-soft);color:var(--warn)}.badge--danger{background:var(--danger-soft);color:var(--repsa-red-ink)}.badge--info{background:var(--info-soft);color:var(--info)}.badge--neutral{background:var(--ink-100);color:var(--ink-700)}.badge--lime{background:var(--repsa-lime-soft);color:#5b6f1f}.badge .dot{background:currentColor;border-radius:50%;width:6px;height:6px}.table-wrap{background:var(--paper);border:1px solid var(--ink-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);overflow:hidden}.table{border-collapse:collapse;width:100%;font-size:13px}.table th{text-align:left;color:var(--ink-500);text-transform:uppercase;letter-spacing:.5px;background:var(--ink-50);border-bottom:1px solid var(--ink-200);padding:12px 16px;font-size:11.5px;font-weight:600}.table td{border-bottom:1px solid var(--ink-100);color:var(--ink-800);vertical-align:middle;height:var(--row-h);padding:12px 16px}.table tr:last-child td{border-bottom:0}.table tbody tr{transition:background .12s}.table tbody tr:hover{background:var(--ink-50)}.table tbody tr.is-canceled td{color:var(--ink-400);text-decoration:line-through;text-decoration-thickness:1px}.table td.num{font-variant-numeric:tabular-nums}.table td .strong{color:var(--ink-900);font-weight:600}.table td .muted{color:var(--ink-500);font-size:12px}.table .row-actions{opacity:0;justify-content:flex-end;gap:2px;transition:opacity .15s;display:flex}.table tbody tr:hover .row-actions{opacity:1}.table .row-actions .icon-btn{width:30px;height:30px}.table .row-actions--show{opacity:1}.table th input[type=checkbox],.table td input[type=checkbox]{vertical-align:middle;margin:0}.table td .badge{vertical-align:middle}.toolbar{background:var(--paper);border:1px solid var(--ink-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;padding:12px;display:flex}.toolbar .input-wrap{flex:1;min-width:220px;position:relative}.toolbar input.input,.toolbar select.input{border:1px solid var(--ink-200);width:100%;height:36px;color:var(--ink-900);background:#fff;border-radius:8px;outline:none;padding:0 12px;font-family:inherit;font-size:13px}.toolbar .input-wrap.with-ic input{padding-left:36px}.toolbar .input-wrap.with-ic .ic{color:var(--ink-400);position:absolute;top:10px;left:12px}.toolbar .chip{background:var(--ink-100);height:32px;color:var(--ink-700);cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:99px;align-items:center;gap:5px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.toolbar .chip:hover{background:var(--ink-200)}.toolbar .chip.active{background:var(--repsa-red-soft);color:var(--repsa-red-ink);border-color:#d7313340}.toolbar .chip .count{text-align:center;background:#0000000d;border-radius:99px;min-width:18px;padding:0 6px;font-size:10.5px}.toolbar .chip.active .count{background:#d731332e}.segmented{background:var(--ink-100);border-radius:9px;gap:2px;padding:3px;display:inline-flex}.segmented button{height:30px;color:var(--ink-600);cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:6px;padding:0 14px;font-family:inherit;font-size:12.5px;font-weight:600;display:inline-flex}.segmented button.on{color:var(--ink-900);box-shadow:var(--shadow-1);background:#fff}.kpi-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px;display:grid}@media (max-width:980px){.kpi-grid{grid-template-columns:repeat(2,1fr)}}.kpi{background:var(--paper);border:1px solid var(--ink-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);padding:18px 20px;position:relative;overflow:hidden}.kpi-label{color:var(--ink-500);text-transform:uppercase;letter-spacing:.6px;align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.kpi-label .ic{color:var(--ink-400)}.kpi-value{letter-spacing:-.6px;color:var(--ink-900);font-variant-numeric:tabular-nums;margin-top:12px;font-size:30px;font-weight:700;line-height:1}.kpi-delta{color:var(--ink-500);align-items:center;gap:4px;margin-top:10px;font-size:12px;display:flex}.kpi-delta .up{color:var(--ok);font-weight:600}.kpi-delta .down{color:var(--repsa-red);font-weight:600}.kpi-spark{opacity:.85;width:90px;height:36px;position:absolute;bottom:12px;right:12px}.split{gap:16px;display:grid}.split-2-1{grid-template-columns:2fr 1fr}.split-1-2{grid-template-columns:1fr 2fr}.split-3-2{grid-template-columns:3fr 2fr}@media (max-width:980px){.split-2-1,.split-1-2,.split-3-2{grid-template-columns:1fr}}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--ink-700);font-size:12px;font-weight:600}.field label .req{color:var(--repsa-red);margin-left:2px}.field .help{color:var(--ink-500);font-size:11.5px}.field input.input,.field select.input,.field textarea.input{border:1px solid var(--ink-200);height:38px;color:var(--ink-900);background:#fff;border-radius:8px;outline:none;padding:0 12px;font-family:inherit;font-size:13px;transition:border-color .15s,box-shadow .15s}.field textarea.input{resize:vertical;height:90px;padding:10px 12px}.field input.input:focus,.field select.input:focus,.field textarea.input:focus{border-color:var(--ink-400);box-shadow:0 0 0 3px var(--ink-100)}.field-row{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.field-row.three{grid-template-columns:repeat(3,1fr)}.placeholder-img{background:var(--ink-100);color:var(--ink-400);border-radius:6px;place-items:center;font-size:10.5px;font-weight:600;display:grid}.tabs{border-bottom:1px solid var(--ink-200);gap:4px;margin-bottom:18px;display:flex}.tabs button{color:var(--ink-500);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:10px 14px;font-family:inherit;font-size:13px;font-weight:600;display:inline-flex}.tabs button:hover{color:var(--ink-900)}.tabs button.on{color:var(--repsa-red);border-color:var(--repsa-red)}.tabs .tab-count{background:var(--ink-100);color:var(--ink-600);border-radius:99px;padding:1px 7px;font-size:11px}.tabs button.on .tab-count{background:var(--repsa-red-soft);color:var(--repsa-red-ink)}.timeline{flex-direction:column;gap:0;display:flex;position:relative}.timeline:before{content:"";background:var(--ink-200);width:2px;position:absolute;top:6px;bottom:6px;left:17px}.tl-item{grid-template-columns:36px 1fr;align-items:flex-start;gap:14px;padding:4px 0;display:grid;position:relative}.tl-dot{background:var(--paper);border:2px solid var(--ink-200);width:36px;height:36px;color:var(--ink-500);z-index:1;border-radius:50%;flex:none;place-items:center;display:grid;position:relative}.tl-item.active .tl-dot{border-color:var(--repsa-red);color:var(--repsa-red);background:var(--repsa-red-soft)}.tl-item.done .tl-dot{background:var(--ok);border-color:var(--ok);color:#fff}.tl-card{background:var(--paper);border:1px solid var(--ink-200);border-radius:var(--radius);box-shadow:var(--shadow-1);margin-bottom:12px;padding:14px 16px}.tl-card-head{align-items:center;gap:10px;margin-bottom:6px;display:flex}.tl-card-head .type{color:var(--ink-900);font-size:13px;font-weight:700}.tl-card-head .when{color:var(--ink-500);font-variant-numeric:tabular-nums;font-size:12px}.tl-card-head .spacer{flex:1}.tl-card-meta{color:var(--ink-700);grid-template-columns:repeat(2,1fr);gap:6px 18px;margin-top:8px;font-size:12.5px;display:grid}.tl-card-meta .lbl{color:var(--ink-500);font-weight:500}.tl-card-actions{gap:6px;margin-top:10px;display:flex}.pagination{border-top:1px solid var(--ink-200);color:var(--ink-500);background:var(--paper);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 10px;padding:12px 16px;font-size:12.5px;display:flex}.pagination .ctrls{align-items:center;gap:4px;display:flex}.pag-btn{background:var(--paper);border:1px solid var(--ink-200);width:30px;height:30px;color:var(--ink-700);cursor:pointer;border-radius:6px;place-items:center;font-family:inherit;font-size:12px;font-weight:600;display:grid}.pag-btn:hover{background:var(--ink-50)}.pag-btn.on{background:var(--ink-900);color:#fff;border-color:var(--ink-900)}.pagination-info strong{color:var(--ink-700);font-weight:600}.pagination-ctrls{align-items:center;gap:var(--gap-4);display:flex}.pagination-size{color:var(--ink-500);align-items:center;gap:8px;display:inline-flex}.pagination-size select{border:1px solid var(--ink-200);height:32px;color:var(--ink-900);background:var(--paper);cursor:pointer;border-radius:8px;outline:none;padding:0 28px 0 10px;font-family:inherit;font-size:13px;transition:border-color .15s,box-shadow .15s}.pagination-size select:focus{border-color:var(--ink-300);box-shadow:0 0 0 3px var(--ink-100)}.pagination-nav{align-items:center;gap:6px;display:inline-flex}.pagination-page{color:var(--ink-600);text-align:center;min-width:54px;font-size:13px}.pagination-nav .icon-btn:disabled{opacity:.4;cursor:not-allowed}.detail-head{background:var(--paper);border:1px solid var(--ink-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin-bottom:18px;padding:18px 22px;display:grid}.detail-head .id{letter-spacing:-.5px;font-size:24px;font-weight:700}.detail-head .id .pfx{color:var(--ink-400);margin-right:6px;font-weight:500}.detail-head .meta{color:var(--ink-600);flex-wrap:wrap;gap:22px;font-size:12.5px;display:flex}.detail-head .meta .k{color:var(--ink-500);margin-right:6px;font-weight:500}.detail-head .meta .v{color:var(--ink-900);font-weight:600}.detail-head .actions{gap:8px;display:flex}.login-shell{background:var(--ink-50);grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.login-art{background:linear-gradient(140deg, var(--ink-900) 0%, #1c1f24 60%, #2a1213 100%);color:#fff;flex-direction:column;justify-content:space-between;padding:56px;display:flex;position:relative;overflow:hidden}.login-art:before{content:"";pointer-events:none;background:radial-gradient(circle at 80% 20%,#d7313340,#0000 50%),radial-gradient(circle at 20% 80%,#a5c6391a,#0000 50%);position:absolute;inset:0}.login-art h2{letter-spacing:-.6px;margin:0 0 10px;font-size:38px;font-weight:700;line-height:1.1;position:relative}.login-art h2 em{background:linear-gradient(90deg, var(--repsa-red) 0%, #ec4f50 100%);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:normal}.login-art p{color:var(--ink-300);max-width:380px;font-size:14px;line-height:1.5;position:relative}.login-form-wrap{place-items:center;padding:40px;display:grid}.login-card{width:100%;max-width:380px}.login-card h1{letter-spacing:-.4px;margin:0 0 6px;font-size:24px;font-weight:700}.login-card .sub{color:var(--ink-500);margin:0 0 28px;font-size:13.5px}.flex{display:flex}.flex-col{flex-direction:column;display:flex}.items-center{align-items:center}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.muted{color:var(--ink-500)}.text-sm{font-size:12.5px}.text-xs{font-size:11.5px}.fw-6{font-weight:600}.fw-7{font-weight:700}.avatar{background:var(--ink-100);width:30px;height:30px;color:var(--ink-700);border-radius:50%;flex:none;place-items:center;font-size:11.5px;font-weight:600;display:inline-grid}.avatar.lime{background:var(--repsa-lime-soft);color:#5b6f1f}.avatar.red{background:var(--repsa-red-soft);color:var(--repsa-red-ink)}.avatar.info{background:var(--info-soft);color:var(--info)}.avatar.warn{background:var(--warn-soft);color:var(--warn)}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}@keyframes modalIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes drawerIn{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:60;background:#0f121673;justify-content:center;align-items:center;animation:.15s overlayIn;display:flex;position:fixed;inset:0}.overlay.right{justify-content:flex-end;align-items:stretch}.modal{background:var(--paper);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);flex-direction:column;width:480px;max-width:calc(100vw - 32px);max-height:calc(100vh - 48px);animation:.18s modalIn;display:flex}.modal.lg{width:640px}.drawer-panel{background:var(--paper);width:520px;max-width:calc(100vw - 24px);height:100%;box-shadow:var(--shadow-pop);flex-direction:column;animation:.2s drawerIn;display:flex}.modal-head{border-bottom:1px solid var(--ink-200);align-items:center;gap:10px;padding:16px 20px;display:flex}.modal-head h3{flex:1;margin:0;font-size:15px;font-weight:700}.modal-head .sub{color:var(--ink-500);margin-top:2px;font-size:12px}.modal-body{gap:var(--gap-4);flex-direction:column;flex:1;padding:20px;display:flex;overflow-y:auto}.modal-foot{border-top:1px solid var(--ink-200);justify-content:flex-end;gap:8px;padding:14px 20px;display:flex}.modal-foot .left{margin-right:auto}.gallery{gap:var(--gap-3);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.gallery-item{border:1px solid var(--ink-200);border-radius:var(--radius);background:var(--ink-50);aspect-ratio:4/3;position:relative;overflow:hidden}.gallery-item img,.gallery-item video{object-fit:cover;width:100%;height:100%;display:block}.gallery-item .gi-actions{opacity:0;gap:4px;transition:opacity .15s;display:flex;position:absolute;top:6px;right:6px}.gallery-item:hover .gi-actions{opacity:1}.gallery-item .gi-actions .icon-btn{border:1px solid var(--ink-200);background:#ffffffeb}.gallery-item .gi-file{height:100%;color:var(--ink-500);text-align:center;word-break:break-all;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:12px;text-decoration:none;display:flex}.upload-box{border:1.5px dashed var(--ink-300);border-radius:var(--radius);color:var(--ink-500);cursor:pointer;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:18px;font-size:12.5px;transition:border-color .15s,background .15s;display:flex}.upload-box:hover{border-color:var(--repsa-red);background:var(--repsa-red-soft);color:var(--repsa-red-ink)}.check-row{color:var(--ink-700);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.check-row input{accent-color:var(--repsa-red);width:15px;height:15px}.bulk-bar{background:var(--ink-900);color:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-2);align-items:center;gap:10px;margin-bottom:14px;padding:10px 14px;animation:.18s modalIn;display:flex}.bulk-bar .count{background:var(--repsa-red);border-radius:99px;padding:2px 10px;font-size:12px;font-weight:700}.bulk-bar .btn--ghost{color:#fff;background:0 0;border-color:#ffffff40}.bulk-bar .btn--ghost:hover{background:#ffffff1a}.bulk-bar .icon-btn{color:#fff}.bulk-bar .icon-btn:hover{color:#fff;background:#ffffff1f}.search-select{position:relative}.search-select input.input{width:100%;padding-right:32px}.search-select .ss-caret,.search-select .ss-clear{color:var(--ink-400);place-items:center;display:grid;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.search-select .ss-clear{cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px}.search-select .ss-clear:hover{color:var(--ink-700);background:var(--ink-100)}.search-select .ss-menu{z-index:70;border:1px solid var(--ink-200);border-radius:var(--radius);box-shadow:var(--shadow-pop);background:#fff;max-height:220px;padding:4px;position:fixed;overflow-y:auto}.search-select .ss-item{text-align:left;cursor:pointer;width:100%;color:var(--ink-900);background:0 0;border:0;border-radius:6px;padding:8px 10px;font-family:inherit;font-size:13px;display:block}.search-select .ss-item:hover{background:var(--ink-100)}.search-select .ss-item.on{background:var(--repsa-red-soft);color:var(--repsa-red-ink);font-weight:600}.search-select .ss-empty{color:var(--ink-500);padding:10px;font-size:12.5px}.dealer-split{grid-template-columns:300px 1fr;align-items:start}@media (max-width:980px){.dealer-split{grid-template-columns:1fr}}.master-search{border-bottom:1px solid var(--ink-200);padding:10px 12px;position:relative}.master-search .ic{color:var(--ink-400);position:absolute;top:20px;left:23px}.master-search input{background:var(--ink-50);border:1px solid var(--ink-200);width:100%;height:34px;color:var(--ink-900);border-radius:8px;outline:none;padding:0 10px 0 36px;font-family:inherit;font-size:13px;transition:border-color .15s,background .15s}.master-search input::placeholder{color:var(--ink-400)}.master-search input:focus{border-color:var(--ink-300);box-shadow:0 0 0 3px var(--ink-100);background:#fff}.master-item{cursor:pointer;border-bottom:1px solid var(--ink-100);align-items:center;gap:10px;padding:11px 14px;transition:background .12s;display:flex;position:relative}.master-item:last-child{border-bottom:0}.master-item:hover{background:var(--ink-50)}.master-item.on{background:var(--repsa-red-soft)}.master-item.on:before{content:"";background:var(--repsa-red);border-radius:0 3px 3px 0;width:3px;position:absolute;top:6px;bottom:6px;left:0}.master-item .mi-actions{opacity:0;gap:2px;transition:opacity .15s;display:flex}.master-item:hover .mi-actions{opacity:1}.master-item .mi-actions .icon-btn{width:28px;height:28px}.branch-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;display:grid}.branch-card{background:var(--paper);border:1px solid var(--ink-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);flex-direction:column;padding:16px;display:flex}.occ-track{background:var(--ink-100);border-radius:99px;height:6px;overflow:hidden}.occ-fill{border-radius:99px;height:100%;transition:width .3s}.add-card{border:1.5px dashed var(--ink-300);border-radius:var(--radius-lg);cursor:pointer;color:var(--ink-500);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:150px;font-family:inherit;font-size:13px;font-weight:600;transition:border-color .15s,color .15s,background .15s;display:flex}.add-card:hover{border-color:var(--repsa-red);color:var(--repsa-red);background:var(--repsa-red-soft)}.vin{letter-spacing:.2px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;font-weight:600}.empty-state{color:var(--ink-500);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:44px 20px;display:flex}.empty-state .es-ic{background:var(--ink-100);width:44px;height:44px;color:var(--ink-400);border-radius:12px;place-items:center;display:grid}.empty-state strong{color:var(--ink-700);font-size:13.5px}.empty-state span{max-width:320px;font-size:12.5px}.kpi.clickable{cursor:pointer;transition:border-color .15s,box-shadow .15s}.kpi.clickable:hover{border-color:var(--ink-300);box-shadow:var(--shadow-2)}.kpi.clickable.on{border-color:var(--repsa-red);box-shadow:0 0 0 3px var(--repsa-red-soft)}.expander{width:22px;height:22px;color:var(--ink-400);flex:none;place-items:center;transition:transform .15s;display:inline-grid}.expander.open{color:var(--ink-700);transform:rotate(90deg)}.table tbody tr.row-open td{background:var(--ink-50);border-bottom:0}.table tbody tr.row-expand:hover{background:0 0}.table tbody tr.row-expand>td{background:var(--ink-50);height:auto;padding:0 16px 16px}.item-list{background:var(--paper);border:1px solid var(--ink-200);border-radius:var(--radius);overflow:hidden}.item-row{border-bottom:1px solid var(--ink-100);align-items:center;gap:10px;min-height:40px;padding:8px 8px 8px 14px;font-size:13px;display:flex}.item-row:last-of-type{border-bottom:0}.item-row:hover{background:var(--ink-50)}.item-row .ir-text{flex:1;min-width:0;font-weight:500}.item-row.off .ir-text{color:var(--ink-400)}.item-row .ir-actions{opacity:0;gap:2px;transition:opacity .15s;display:flex}.item-row:hover .ir-actions{opacity:1}.item-row .ir-actions .icon-btn{width:28px;height:28px}.item-add{border-top:1px dashed var(--ink-200);background:var(--ink-50);align-items:center;gap:8px;padding:8px;display:flex}.item-add input{border:1px solid var(--ink-200);height:32px;color:var(--ink-900);background:#fff;border-radius:7px;outline:none;flex:1;padding:0 10px;font-family:inherit;font-size:13px}.item-add input:focus{border-color:var(--ink-300);box-shadow:0 0 0 3px var(--ink-100)}.template-box{border:1px solid var(--ink-200);border-radius:var(--radius);background:var(--ink-50,#fafbfc);flex-direction:column;gap:10px;padding:12px;display:flex}.template-box img{border:1px solid var(--ink-200);border-radius:6px;width:100%}.template-box .tpl-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.template-box .tpl-note{color:var(--ink-500);font-size:11.5px}
