:root{--wine-950:#3f1024;--wine-900:#4a1228;--wine-850:#531831;--wine-800:#5a1d34;--wine-700:#6d2340;--wine-600:#7c2a49;--wine-500:#8d3556;--cream:#faf6f0;--cream-2:#f4ede4;--card:#ffffff;--gold:#e7c64f;--gold-deep:#d9b53e;--ink:#241f22;--ink-2:#3a3236;--muted:#90858b;--muted-2:#a89ca2;--line:#ece4dd;--line-2:#e3d9d0;--pink-50:#fbeef2;--pink-100:#f7e0e8;--pink-200:#f1cdda;--green:#1f9d57;--green-600:#168a4a;--green-bg:#e7f6ee;--red:#df3b3b;--red-bg:#fce9e9;--amber:#c98a1a;--radius:14px;--radius-sm:10px;--shadow-sm:0 1px 2px rgba(45,20,30,.05), 0 1px 1px rgba(45,20,30,.04);--shadow-md:0 6px 22px -8px rgba(60,25,40,.18), 0 2px 6px rgba(60,25,40,.06);--shadow-lg:0 24px 60px -18px rgba(50,15,30,.34);--sans:"Hanken Grotesk", system-ui, sans-serif;--mono:"JetBrains Mono", ui-monospace, monospace}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--sans);background:var(--wine-900);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}#root{min-height:100vh}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}input,select,textarea{font-family:inherit}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#785a6438;border-radius:20px;border:3px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:#785a6466;background-clip:padding-box}.mono{font-family:var(--mono);font-feature-settings:"tnum" 1}.app{display:flex;min-height:100vh;background:var(--cream)}.main{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--cream);height:100vh;overflow:hidden}.sidebar{width:248px;flex-shrink:0;background:var(--wine-800);display:flex;flex-direction:column;color:#fff;position:sticky;top:0;height:100vh}.sb-brand{display:flex;align-items:center;gap:11px;padding:20px 18px 18px}.sb-logo{width:42px;height:42px;border-radius:11px;background:linear-gradient(150deg,var(--gold),var(--gold-deep));display:grid;place-items:center;font-weight:800;font-size:13px;color:#5a1d34;letter-spacing:.3px;flex-shrink:0;box-shadow:0 4px 12px -2px #0000004d}.sb-brand .t1{font-weight:700;font-size:21px;line-height:1.1;white-space:nowrap}.sb-brand .t2{font-size:17px;color:#ffffff80}.sb-nav{flex:1;overflow-y:auto;padding:6px 12px 12px}.sb-section{font-size:10.5px;font-weight:700;letter-spacing:.13em;color:#ffffff57;padding:16px 10px 7px;text-transform:uppercase}.sb-item{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:10px 12px;border-radius:10px;color:#ffffffbd;font-size:14px;font-weight:500;transition:background .14s,color .14s;margin-bottom:1px}.sb-item:hover{background:#ffffff0f;color:#fff}.sb-item.active{background:#ffffff1a;color:#fff;font-weight:600}.sb-item svg{width:19px;height:19px;flex-shrink:0;opacity:.9}.sb-user{display:flex;align-items:center;gap:11px;padding:14px 16px;border-top:1px solid rgba(255,255,255,.09)}.sb-ava{width:38px;height:38px;border-radius:50%;background:linear-gradient(150deg,var(--gold),var(--gold-deep));display:grid;place-items:center;color:#5a1d34;font-weight:700;font-size:13px;flex-shrink:0}.sb-user .u1{font-size:13.5px;font-weight:600}.sb-user .u2{font-size:11.5px;color:#ffffff80}.sb-logout{margin-left:auto;color:#ffffff8c;padding:6px;border-radius:8px}.sb-logout:hover{background:#ffffff14;color:#fff}.topbar{display:flex;align-items:center;gap:16px;padding:18px 30px;background:var(--cream);position:sticky;top:0;z-index:20}.tb-title{font-size:19px;font-weight:700;color:var(--ink);line-height:1.15;letter-spacing:-.01em}.tb-sub{font-size:13px;color:var(--muted);margin-top:2px}.tb-sub b{color:var(--amber);font-weight:600}.tb-right{margin-left:auto;display:flex;align-items:center;gap:10px}.aca-pill{display:flex;align-items:center;gap:9px;background:var(--card);border:1px solid var(--line-2);padding:10px 14px;border-radius:11px;font-size:13.5px;font-weight:600;color:var(--ink-2);box-shadow:var(--shadow-sm)}.aca-pill svg{width:16px;height:16px;color:var(--muted)}.aca-pill .chev{margin-left:2px}.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 17px;border-radius:11px;font-size:14px;font-weight:600;transition:.15s;white-space:nowrap}.btn svg{width:17px;height:17px}.btn-primary{background:var(--wine-700);color:#fff;box-shadow:0 4px 14px -4px #6d234080}.btn-primary:hover{background:var(--wine-600)}.btn-ghost{background:var(--card);color:var(--ink-2);border:1px solid var(--line-2);box-shadow:var(--shadow-sm)}.btn-ghost:hover{background:#fff;border-color:var(--line)}.btn-green{background:var(--green);color:#fff;box-shadow:0 4px 14px -4px #1f9d5780}.btn-green:hover{background:var(--green-600)}.btn-soft{background:var(--pink-50);color:var(--wine-700);border:1px solid var(--pink-100)}.btn-soft:hover{background:var(--pink-100)}.btn-lg{padding:13px 22px;font-size:15px}.btn-block{width:100%;justify-content:center}.content{flex:1;overflow-y:auto;padding:8px 30px 60px}.content.flush{padding:0}@media print{@page{size:A4 landscape;margin:8mm}html,body.printing,body.printing .app,body.printing .main,body.printing .content{height:auto!important;min-height:0!important;overflow:visible!important;display:block!important;position:static!important;padding:0!important;margin:0!important}body.printing .sidebar,body.printing .topbar,body.printing .no-print{display:none!important}body.printing *{visibility:hidden}body.printing .print-area,body.printing .print-area *{visibility:visible}body.printing .print-area{position:absolute;left:0;top:0;width:auto;zoom:var(--print-scale, 1)}body.printing .print-area,body.printing .print-area *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body.printing .grid-scroll{overflow:visible!important}}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:8px;font-size:12px;font-weight:600}.badge-type{width:20px;height:20px;border-radius:6px;display:grid;place-items:center;font-size:11px;font-weight:700;font-family:var(--mono);color:#fff;flex-shrink:0}.t-P{background:var(--wine-700)}.t-F{background:#2f6f4a}.t-R{background:#9a6312}.tag{padding:7px 14px;border-radius:999px;font-size:13px;font-weight:600;color:var(--ink-2);background:var(--card);border:1px solid var(--line-2);transition:.13s}.tag:hover{border-color:var(--wine-500)}.tag.on{background:var(--wine-800);color:#fff;border-color:var(--wine-800)}.tag.sm{padding:5px 12px;font-size:12.5px}.seg{display:inline-flex;background:var(--cream-2);border:1px solid var(--line-2);border-radius:11px;padding:3px}.seg button{padding:7px 15px;border-radius:8px;font-size:13.5px;font-weight:600;color:var(--muted)}.seg button.on{background:var(--card);color:var(--ink);box-shadow:var(--shadow-sm)}input.fld,select.fld,textarea.fld{width:100%;padding:11px 13px;border:1px solid var(--line-2);border-radius:10px;font-size:14px;color:var(--ink);background:var(--card);outline:none;transition:.14s}input.fld:focus,select.fld:focus,textarea.fld:focus{border-color:var(--wine-600);box-shadow:0 0 0 3px #6d23401a}.lbl{font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--muted);text-transform:uppercase;margin-bottom:7px;display:block}@keyframes fadeUp{0%{transform:translateY(7px)}to{transform:none}}.fade{animation:fadeUp .3s ease}@keyframes drawerIn{0%{transform:translate(30px)}to{transform:none}}@keyframes flashPulse{0%,to{box-shadow:0 0 0 2px var(--red)}50%{box-shadow:0 0 0 6px #df3b3b52}}.flashpulse{animation:flashPulse .9s ease 3}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin .9s linear infinite}body.menu-degradado .sidebar{background:linear-gradient(168deg,var(--wine-700),var(--wine-950) 78%)}body.menu-claro .sidebar{background:var(--cream-2);color:var(--ink);border-right:1px solid var(--line)}body.menu-claro .sb-brand .t1{color:var(--ink)}body.menu-claro .sb-brand .t2{color:var(--muted)}body.menu-claro .sb-section{color:var(--muted-2)}body.menu-claro .sb-item{color:var(--ink-2)}body.menu-claro .sb-item:hover{background:#0000000b;color:var(--ink)}body.menu-claro .sb-item.active{background:var(--pink-50);color:var(--wine-700)}body.menu-claro .sb-user{border-top-color:var(--line)}body.menu-claro .sb-user .u1{color:var(--ink)}body.menu-claro .sb-user .u2,body.menu-claro .sb-logout{color:var(--muted)}body.menu-claro .sb-logout:hover{background:#0000000f;color:var(--ink)}
